Commit 79845b7
L2cache (#1)
* feat: Integrate L2 cache support and enhance memory management
- Added L2 cache module (l2_cache_top_v2.sv) for improved memory performance with non-blocking write-back capabilities.
- Updated memory arbiter and CPU modules to accommodate L2 cache interactions and downstream stall handling.
- Enhanced fetch and execution stages to manage flush cycles and stall conditions effectively.
- Refactored memory request handling to support uncached transactions and store buffer management.
- Modified parameter definitions in ceres_param.sv to include L2 cache configurations and derived parameters.
- Updated build scripts to include new L2 cache source files and configurations.
* refactor: Update CPU and memory modules for improved pipeline handling and introduce store buffer
- Renamed `pipe2_drained_q` to `pipe2_frozen` in the CPU module for clarity in stall handling.
- Removed redundant logic for tracking pipe2 drainage, simplifying the pipeline control flow.
- Enhanced memory module with a new store buffer implementation to manage store transactions and forwarding.
- Updated `ceres_param.sv` to define parameters for the store buffer, including depth and pointer width.
- Improved memory request handling to accommodate new store buffer functionality and maintain pipeline integrity.
* refactor: Standardize signal declarations in CPU and memory modules
- Introduced `logic` type for various signals in the CPU, memory, and cache modules to enhance clarity and consistency.
- Replaced `wire` declarations with `logic` for signals such as `fi_start`, `fi_has_dirty`, and `dcache_busy` to improve readability and maintainability.
- Updated assignments for these signals to ensure proper functionality within the modules.
- Enhanced overall code structure by ensuring uniformity in signal types across the design.
* refactor: Replace l2_cache_top_v2 with nbmbmp_l2_cache and remove legacy files
- Replaced the existing L2 cache module (l2_cache_top_v2.sv) with a new implementation (nbmbmp_l2_cache.sv) that supports non-blocking write-back capabilities.
- Deleted the old l2_cache.sv file to eliminate redundancy and streamline the codebase.
- Updated the CPU module to instantiate the new nbmbmp_l2_cache, ensuring compatibility with the revised memory architecture.
- Made minor adjustments to parameter definitions in ceres_param.sv to reflect the new cache structure.
* refactor: Transition from CERES to Level RISC-V across project files
- Updated project references from CERES to Level RISC-V in various files, including documentation, makefiles, and configuration scripts.
- Modified .gitignore to track new Level RISC-V specific directories and files.
- Adjusted svlint configuration to reflect the new project name.
- Enhanced README and mkdocs.yml for consistent branding and updated documentation links.
- Refactored OpenLane scripts to align with the Level RISC-V design structure.
- Removed obsolete files related to the CERES project to streamline the codebase.
* refactor: Update makefile and documentation for SIM_FAST integration
- Renamed FAST_SIM to SIM_FAST in the makefile for consistency and clarity.
- Updated related documentation and examples to reflect the new SIM_FAST variable.
- Added mkdocs_hooks.py to manage the generation of the test results dashboard.
- Enhanced .gitignore to exclude generated dashboard files and updated README with dashboard usage instructions.
- Introduced new dashboard preview images for improved documentation.
---------
Co-authored-by: Kerim Turak <kerimturak@hotmail.com>1 parent e59adf7 commit 79845b7
423 files changed
Lines changed: 20791 additions & 26772 deletions
File tree
- .github
- workflows
- asic/openlane
- designs
- ceres_wrapper
- macros/sky130_sram_1kbyte_1rw1r_32x256_8
- level_wrapper
- macros/sky130_sram_1kbyte_1rw1r_32x256_8
- docs
- core
- mmu
- pmp_pma
- stage01_fetch
- stage02_decode
- stage03_execute
- stage04_memory
- stage05_writeback
- env
- include
- periph
- pkg
- ram
- script
- sim
- subrepo
- tracer
- util
- wrapper
- env
- coremark
- ceresv
- levelv
- minimal
- spike-pk
- dhrystone
- embench
- imperas
- riscv-arch-test/level
- riscv-dv
- riscv-formal
- riscv-test/level
- torture
- rtl
- core
- bus
- mmu
- pmp_pma
- stage01_fetch
- stage02_decode
- stage03_execute
- mul_div
- stage04_memory
- stage05_writeback
- include
- periph
- dma
- gpio
- i2c
- plic
- pwm
- spi
- timer
- uart
- vga
- wdt
- pkg
- ram
- tracer
- wrapper
- script
- config
- tests
- makefiles
- config
- lint
- sim
- synth
- test
- tools
- python
- fpga
- makefile
- scripts
- shell
- deprecated
- test_file
- sim
- do
- tb
- memory_arbiter
- mmu
- dcache
- icache
- stage01_fetch
- align_buffer
- branch_prediction
- test/custom
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| |||
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | | - | |
| 37 | + | |
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
| |||
50 | 50 | | |
51 | 51 | | |
52 | 52 | | |
53 | | - | |
| 53 | + | |
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
| |||
62 | 62 | | |
63 | 63 | | |
64 | 64 | | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
71 | | - | |
| 65 | + | |
72 | 66 | | |
73 | 67 | | |
74 | 68 | | |
| |||
105 | 99 | | |
106 | 100 | | |
107 | 101 | | |
108 | | - | |
| 102 | + | |
109 | 103 | | |
110 | 104 | | |
111 | 105 | | |
112 | 106 | | |
113 | 107 | | |
114 | 108 | | |
115 | | - | |
| 109 | + | |
116 | 110 | | |
117 | 111 | | |
118 | 112 | | |
| |||
168 | 162 | | |
169 | 163 | | |
170 | 164 | | |
171 | | - | |
| 165 | + | |
172 | 166 | | |
173 | 167 | | |
174 | 168 | | |
| |||
230 | 224 | | |
231 | 225 | | |
232 | 226 | | |
233 | | - | |
| 227 | + | |
234 | 228 | | |
235 | 229 | | |
236 | 230 | | |
| |||
242 | 236 | | |
243 | 237 | | |
244 | 238 | | |
245 | | - | |
246 | 239 | | |
247 | 240 | | |
248 | | - | |
249 | | - | |
| 241 | + | |
250 | 242 | | |
251 | | - | |
252 | 243 | | |
253 | 244 | | |
254 | 245 | | |
| |||
270 | 261 | | |
271 | 262 | | |
272 | 263 | | |
273 | | - | |
274 | | - | |
| 264 | + | |
| 265 | + | |
275 | 266 | | |
276 | 267 | | |
277 | 268 | | |
| |||
330 | 321 | | |
331 | 322 | | |
332 | 323 | | |
333 | | - | |
| 324 | + | |
334 | 325 | | |
335 | 326 | | |
336 | 327 | | |
| |||
355 | 346 | | |
356 | 347 | | |
357 | 348 | | |
358 | | - | |
| 349 | + | |
359 | 350 | | |
360 | 351 | | |
361 | 352 | | |
| |||
429 | 420 | | |
430 | 421 | | |
431 | 422 | | |
432 | | - | |
433 | | - | |
| 423 | + | |
| 424 | + | |
434 | 425 | | |
435 | 426 | | |
436 | 427 | | |
437 | 428 | | |
438 | 429 | | |
439 | 430 | | |
440 | | - | |
| 431 | + | |
441 | 432 | | |
442 | 433 | | |
443 | 434 | | |
| |||
479 | 470 | | |
480 | 471 | | |
481 | 472 | | |
482 | | - | |
| 473 | + | |
483 | 474 | | |
484 | 475 | | |
485 | 476 | | |
| |||
488 | 479 | | |
489 | 480 | | |
490 | 481 | | |
491 | | - | |
492 | | - | |
| 482 | + | |
| 483 | + | |
493 | 484 | | |
494 | 485 | | |
495 | | - | |
496 | | - | |
497 | | - | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
498 | 489 | | |
499 | 490 | | |
500 | 491 | | |
501 | 492 | | |
502 | 493 | | |
503 | | - | |
| 494 | + | |
504 | 495 | | |
505 | 496 | | |
506 | 497 | | |
507 | 498 | | |
508 | 499 | | |
509 | 500 | | |
510 | | - | |
| 501 | + | |
511 | 502 | | |
512 | 503 | | |
513 | 504 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
| 2 | + | |
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
8 | | - | |
| 8 | + | |
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
| |||
345 | 345 | | |
346 | 346 | | |
347 | 347 | | |
348 | | - | |
| 348 | + | |
349 | 349 | | |
350 | 350 | | |
351 | 351 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
| 17 | + | |
| 18 | + | |
17 | 19 | | |
18 | 20 | | |
19 | 21 | | |
20 | | - | |
| 22 | + | |
21 | 23 | | |
22 | | - | |
23 | | - | |
| 24 | + | |
| 25 | + | |
24 | 26 | | |
25 | 27 | | |
26 | 28 | | |
27 | 29 | | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
| 2 | + | |
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| |||
0 commit comments