summaryrefslogtreecommitdiff
path: root/hdl/top.sv
diff options
context:
space:
mode:
authorJulian Blake Kongslie2022-06-05 15:34:23 -0700
committerJulian Blake Kongslie2022-06-05 15:42:26 -0700
commit9ce65b7d3573d92e1d98a13b58a5d5763ba073c5 (patch)
tree7486552ff9428dcb76e22593f445a657b121f443 /hdl/top.sv
parentSMC micro. (diff)
downloadmultipdp8-9ce65b7d3573d92e1d98a13b58a5d5763ba073c5.tar.xz
Working L1 cache.
Diffstat (limited to '')
-rw-r--r--hdl/top.sv51
1 files changed, 45 insertions, 6 deletions
diff --git a/hdl/top.sv b/hdl/top.sv
index 03a2331..26006be 100644
--- a/hdl/top.sv
+++ b/hdl/top.sv
@@ -470,6 +470,45 @@ module top
470 bit rx_valid; 470 bit rx_valid;
471 uart_byte_t rx_data; 471 uart_byte_t rx_data;
472 472
473 bit cache_command_ready;
474 bit cache_command_valid;
475 pdp_command_t cache_command_data;
476
477 bit cache_response_ready;
478 bit cache_response_valid;
479 pdp_read_response_t cache_response_data;
480
481`ifdef NO_L1_CACHE
482 assign cache_command_ready = pdp_command_ready[i];
483 assign pdp_command_valid[i] = cache_command_valid;
484 assign pdp_command_data[i] = cache_command_data;
485
486 assign pdp_response_ready[i] = cache_response_ready;
487 assign cache_response_valid = pdp_response_valid[i];
488 assign cache_response_data = pdp_response_data[i];
489`else
490 mem_cache cache
491 ( .clock(internal_clock)
492 , .reset(internal_reset)
493
494 , .core_command_ready(cache_command_ready)
495 , .core_command_valid(cache_command_valid)
496 , .core_command_data(cache_command_data)
497
498 , .ram_command_ready(pdp_command_ready[i])
499 , .ram_command_valid(pdp_command_valid[i])
500 , .ram_command_data(pdp_command_data[i])
501
502 , .ram_response_ready(pdp_response_ready[i])
503 , .ram_response_valid(pdp_response_valid[i])
504 , .ram_response_data(pdp_response_data[i])
505
506 , .core_response_ready(cache_response_ready)
507 , .core_response_valid(cache_response_valid)
508 , .core_response_data(cache_response_data)
509 );
510`endif
511
473 core cpu 512 core cpu
474 ( .clk(internal_clock) 513 ( .clk(internal_clock)
475 , .reset(internal_reset) 514 , .reset(internal_reset)
@@ -482,13 +521,13 @@ module top
482 , .uart_rx_valid(rx_valid) 521 , .uart_rx_valid(rx_valid)
483 , .uart_rx_data(rx_data) 522 , .uart_rx_data(rx_data)
484 523
485 , .mem_command_ready(pdp_command_ready[i]) 524 , .mem_command_ready(cache_command_ready)
486 , .mem_command_valid(pdp_command_valid[i]) 525 , .mem_command_valid(cache_command_valid)
487 , .mem_command(pdp_command_data[i]) 526 , .mem_command(cache_command_data)
488 527
489 , .mem_read_ready(pdp_response_ready[i]) 528 , .mem_read_ready(cache_response_ready)
490 , .mem_read_valid(pdp_response_valid[i]) 529 , .mem_read_valid(cache_response_valid)
491 , .mem_read(pdp_response_data[i]) 530 , .mem_read(cache_response_data)
492 531
493 , .switch_df(0) 532 , .switch_df(0)
494 , .switch_if(0) 533 , .switch_if(0)