Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] AXI bus trouble with write-back cache #2006

Open
1 task done
nlthales opened this issue Apr 5, 2024 · 5 comments
Open
1 task done

[BUG] AXI bus trouble with write-back cache #2006

nlthales opened this issue Apr 5, 2024 · 5 comments
Labels
notCV32A65X It is not an CV32A65X issue Type:Bug For bugs in the RTL, Documentation, Verification environment or Tool and Build system

Comments

@nlthales
Copy link

nlthales commented Apr 5, 2024

Is there an existing CVA6 bug for this?

  • I have searched the existing bug issues

Bug Description

Hi,
I got a SoC project using CVA6 cores, which is running well with its default configuration - cache in write-through mode (config_pkg::WT). I gave a try in write-back mode but without any success. Looking at the AXI bus, I can see some difference while doing the first write access, in an uncachable memory area. Discrepencies are shown hereafter:
axi_cva6_wt_vs_wb
The AXI subsystem acknowledges the access in both situations, but in WB the access seems lost and does not result in an actual access to the target peripheral.

@nlthales nlthales added the Type:Bug For bugs in the RTL, Documentation, Verification environment or Tool and Build system label Apr 5, 2024
@jquevremont
Copy link
Contributor

Hi @niwis. I guess the WB cache is used at ETH. Do you think someone can look at this?

@JeanRochCoulon JeanRochCoulon added the notCV32A65X It is not an CV32A65X issue label Apr 6, 2024
@niwis
Copy link
Contributor

niwis commented May 15, 2024

Hello @nlthales, the differences in the AXI IDs should not have any functional implications (as long as they are consistent). Regarding the write strobe alignment, which XLEN are you using for CVA6? Afaik the WB cache has only been tested with 64-bit so far.

@nlthales
Copy link
Author

Hello @nlthales, the differences in the AXI IDs should not have any functional implications (as long as they are consistent). Regarding the write strobe alignment, which XLEN are you using for CVA6? Afaik the WB cache has only been tested with 64-bit so far.

hello, thanks for your feedback. I do confirm that I use 32-bit configuration.

@niwis
Copy link
Contributor

niwis commented May 15, 2024

There are some known incomatibilities of the WB cache and 32-bit XLEN (this is probably one of them). I think @cyprienh is tackling them. One point to start would be to port the modular cache testbench to 32-bit and fix any issues that arise.

@cyprienh
Copy link
Contributor

Hi, I have indeed been working on adapting the WB cache for 32-bit ! I will try adapting the testbench to check that my changes do not break anything else and cover all the use-cases. If it all works, I will submit my changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
notCV32A65X It is not an CV32A65X issue Type:Bug For bugs in the RTL, Documentation, Verification environment or Tool and Build system
Projects
None yet
Development

No branches or pull requests

5 participants