Potential L1 dcache issues
Created by: zarubaf
I have a memory test program that goes wrong as soon as the range is increased to 64K bytes (this is in a large behavioural memory). I have racked my brains and cannot think of a reason unless it is to do with L1-cache misbehaviour.
cd tmp/riscv-tests
git remote remove origin
git remote add origin https://github.com/jrrk/riscv-tests.git
git fetch
git checkout -b ariane_memtester
cd build
make
cd ../../..
xxx@xxx:/local/scratch/jrrk2/ariane-isatest$ obj_dir/Variane_wrapped tmp/riscv-tests/build/benchmarks/memtester.riscv
Bare metal DRAM test
memtester version 4.3.0 (64-bit)
Copyright (C) 2001-2012 Charles Cazabon.
Licensed under the GNU General Public License version 2 (only).
test range is 0x800134f0 to 0x800234ef
Loop 1/1:
ok 3 3 2 2 1 1 0 0
Random Value: FAILURE: 0x7ffecaaf != 0xfff99a4c at offset 0x60.
p1 = 0x80013550, p2 = 0x8001b550
xxx@xxx:/local/scratch/jrrk2/ariane-isatest$ git status
On branch master
nothing to commit, working directory clean
xxx@xxx:/local/scratch/jrrk2/ariane-isatest$
(This output takes about 10 minutes to appear on my workstation)
I hope you can reproduce the above. If you succeed it in fixing it some strange things will happen perhaps when byte writing is tested because your ram model does not support this mode.