Fix Snitch Cache Configuration, Update Memory Map, and Improve Simulation Support #82
+122
−7
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request updates the Chimera SoC to fix the instruction cache configuration of the Snitch cluster, increase the memory island size, remap the HyperBus, and enable aliasing in the L1 TCDM of the Snitch clusters. Additionally, it provides support for a fast virtual UART in RTL simulations, introduces a useful waveform configuration, and synchronizes the cluster clock with the SoC clock in the test bench. Finally, I added some helpful comments to enhance the understanding of the configuration values.
Memory Island Size
HyperBus Address
0x5000_0000; however, we usually use0x8000_0000for the DRAM.0x8000_0000.HyperBus Configuration
IsClockODelayedparameter in the HyperBus wrapper was set to zero, resulting in no delay line in the TX path; however, this can be problematic at higher frequencies.Snitch Cluster Instruction Cache Configuration
Snitch Cluster TCDM Aliasing
0x1800_0000by default.