-
Notifications
You must be signed in to change notification settings - Fork 147
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
Cache Failing #75
Comments
Thanks for the report Can you give some details of how to reproduce? Are you using a completely custom setup or mor1kx-generic with fusesoc? Can you provide the test program we can try to use to reproduce? |
Hi, Thanks for replying. I think I changed configuration in mor1kx.v in this way: parameter OPTION_OPERAND_WIDTH = 32,
We are simulating it on other platform instead of FuseSOC with compiled MiBench. |
Thanks, I'll have a try. Btw these are the settings I use in my tests. Which version of mor1kx are you using. Do you have a link to your mibench setup? My settings...
I see you have disabled dmmu. Also, I noticed a strange issue with caches recently when all 32 pic pins were not connected. Can you confirm? |
Hello, I think I was able to reproduce the issue, I am getting some failures after disabling IMMU/DMMU, but keeping CACHE's enabled. I'll look to see what the issue is. |
BTW, under mibench there are many tests, which test are you running? |
I did some additional investigation and testing, I found an issue in my test suite but not in the mor1kx. I cannot reproduce. I'll keep trying, but it would be helpful to get the code you are running to reproduce this. |
Appreciate your replying. The platform we are using is CEP (https://github.com/mit-ll/CEP). I am not sure if you have any participation in that project. In the last two weeks, we were trying to figure out where the error occurs. Since you have told me that it works well on FuseSOC, I think there might be something wrong with its memory design. We might move to FuseSOC in our next step. We got our code from http://vhosts.eecs.umich.edu/mibench/ FILE1 = basicmath_small.c rad2deg.c cubic.c isqrt.c all: basicmath_small basicmath_large basicmath_small: ${FILE1} Makefile
basicmath_large: ${FILE2} Makefile clean: Thank you. |
Hello, I have never heard of CEP, this looks like a neat project. I'll be happy to help if you have any issues there. I may try to run the tests there to see if I can find anything. I notice it uses an AXI bus instead of wishbone, which might be an issue. Also, it looks like its version of mor1kx (via submodule) is a bit old.
Thanks, with those details I can confirm I am not seeing issues when run under fusesoc.
|
Hi,
When I was trying to simulate mor1kx with modelsim, the execution flow always somehow "halted" after around 4700 instructions executed if I enabled DCache and ICache in mor1kx.v. The cache works for around 2000 instructions but halted after that. I haven't made any modification to anything else except mor1kx.v. Do I need to make any configuration to make it work properly or it should not be enabled.
Thanks.
The text was updated successfully, but these errors were encountered: