f6ba248871
Merge pull request 'main' ( #1 ) from Github_Repos/cvw:main into main
...
Reviewed-on: #1
2023-05-10 17:18:17 +00:00
David Harris
d4d9fa1ff6
wally installation improvements: latest main branch of riscv-arch-test, updated install script
2023-05-10 08:23:55 -07:00
David Harris
4b0b7f0aaf
Update README.md
2023-05-09 10:58:45 -07:00
Ross Thompson
69acd43263
Merge pull request #292 from davidharrishmc/dev
...
Added packages requested for gcc
2023-05-09 12:41:06 -05:00
David Harris
be7bc4c9ea
Added packages requested for gcc
2023-05-09 10:30:02 -07:00
David Harris
988ae68c94
Merge pull request #291 from kjprime/main
...
Add comments tlbGBL and minor optimization
2023-05-06 09:11:34 -07:00
Kevin Thomas
968c228fcc
Comment tlbGBL more discriptively
...
Reduce redundant instructions
2023-05-04 19:13:47 -05:00
Ross Thompson
6b4ca64483
Merge pull request #290 from davidharrishmc/dev
...
Fixed IROM coverage issues in IFU
2023-05-01 10:49:27 -05:00
David Harris
34880771af
Fixed IROM coverage issues in IFU
2023-05-01 08:32:52 -07:00
Ross Thompson
adbd5beff1
Merge pull request #289 from davidharrishmc/dev
...
Fixed redundant check of SupportedFmt on fmv
2023-05-01 10:30:33 -05:00
David Harris
c1786bfec8
IMMU exclude non word-sized accesses
2023-05-01 08:14:19 -07:00
David Harris
bfa35d727b
Fixed redundant check of SupportedFmt on fmv that caused coverage problem on fctrl
2023-04-29 05:58:40 -07:00
Ross Thompson
5f52d441cb
Merge pull request #287 from koooo142857/main
...
pmppriority module
2023-04-28 10:29:45 -05:00
Ross Thompson
a4d0a9d33e
Merge pull request #288 from davidharrishmc/dev
...
Coverage improvements
2023-04-28 10:28:28 -05:00
David Harris
d5c350c597
Merged coverage exclusions for PMP
2023-04-28 08:04:25 -07:00
David Harris
ca5a71bbe5
PMA Checker coverage
2023-04-28 07:53:59 -07:00
David Harris
22e4f82a99
Commenting
2023-04-28 07:52:08 -07:00
David Harris
2b9b2f21df
Merge branch 'main' into main
2023-04-28 07:51:32 -07:00
Kevin Wan
3569998cb9
fixed tests.vh test lines
2023-04-28 07:47:59 -07:00
David Harris
f6f43e826a
Removed clear from TLBLRU because there is no need to flush LRU state and it causes coverage issues
2023-04-28 07:03:46 -07:00
David Harris
a556ea54e3
Ignore IF_vectors
2023-04-28 06:20:12 -07:00
David Harris
20631d171e
Merge pull request #284 from liamchalk00/main
...
Pmpadrdecs test cases changing AdrMode to 2 or 3
2023-04-28 06:15:58 -07:00
Liam Chalk
8ef9e77e00
Merge branch 'main' into main
2023-04-27 21:49:01 -07:00
Kevin Wan
c0cbd0fd2a
added tests for pmppriority module
2023-04-27 16:12:43 -07:00
David Harris
8370ca6f69
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-04-27 14:33:59 -07:00
David Harris
da8c6f8266
Merge pull request #285 from Noah-G-L/main
...
complete camline coverage on IFU and LSU
2023-04-27 14:33:11 -07:00
David Harris
c04f636952
Update tlbASID.S
...
fixed comment about restoring ASID to 0
2023-04-27 14:32:57 -07:00
Noah Limpert
26cb639f89
complete camline coverage on IFU and LSU
2023-04-27 14:26:10 -07:00
David Harris
e962e95e53
CSR code cleanup
2023-04-27 14:12:57 -07:00
David Harris
e519eaa33f
Renamed byteUnit to byteop
2023-04-27 14:10:46 -07:00
Liam
6803347a49
Pmpadrdecs test cases changing AdrMode to 2 or 3
...
Setting AdrMode to 2 or 3 for pmpadrdecs[0-4] writing values to pmpcfg0 to change AdrMode to 2 or 3
Also exclusion for pmpadrdecs[0] coverage case for PAgePMPAdrIn being hardwired to 1 in pmpadrdec.sv
2023-04-27 12:23:35 -07:00
David Harris
e69ebc45c0
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-04-27 07:30:07 -07:00
David Harris
e43de9c194
Merge pull request #282 from ross144/main
...
Arty A7 board support, ImperasDV linux boot, CVW_v0.9 tag
2023-04-27 07:23:10 -07:00
David Harris
4f6c493d5f
Merge pull request #279 from ACWright256/main
...
Excluded and added coverage for WFI test case.
2023-04-27 07:19:02 -07:00
Alexa Wright
667c54c129
Merge branch 'openhwgroup:main' into main
2023-04-26 16:26:30 -07:00
Alexa Wright
79031e3de0
Added better comment for the exclusion in privdec.sv
2023-04-26 16:25:55 -07:00
David Harris
7c1a4e5e32
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-04-26 15:40:11 -07:00
David Harris
0ad5165795
Merge pull request #283 from SydRiley/main
...
Resolving unpackinput coverage issue with BadNaNBox, and increasing ifu and lsu coverage% through exclusions
2023-04-26 15:40:01 -07:00
Sydeny
a40cc17dc7
For ifu and lsu exclusions added missing row numbers
2023-04-26 15:30:22 -07:00
Ross Thompson
e72fa0c081
Modified the imperas linux scripts so they run without reporting hundreds of gigabytes of data.
2023-04-26 17:29:57 -05:00
Ross Thompson
b20440e189
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-04-26 17:27:52 -05:00
Sydeny
efcb59ee35
Exclusion in the ifu and lsu to increase coverage, added missing row numbers
2023-04-26 15:26:39 -07:00
Sydeny
25b69a47a1
Excluding untoggled signals in ifu and lsu, ifu coverage from 83.68% to 84.06% and lsu from 93.45% to 93.58%
2023-04-26 14:37:55 -07:00
Sydeny
4595c22fe1
Addressing Redundant logic around BadNanBox, fpu coverage from 96.61% to 96.77%
2023-04-26 14:35:43 -07:00
David Harris
d71d84b386
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-04-26 05:53:42 -07:00
David Harris
42c9003cd2
Merge pull request #280 from AlecVercruysse/coverage5
...
100% D$ coverage
2023-04-26 05:52:58 -07:00
Sydeny
069ca0ec29
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
2023-04-26 03:00:25 -07:00
Sydeny
f5258d3b22
added comments to exclusions
2023-04-26 03:00:13 -07:00
Alec Vercruysse
6299c0ef0b
Cacheway Exclude FlushStage=1 when SetValidWay=1
...
We determined that this case is not hit even for i$, so this
case is also excluded separately for i$. It could be a better
idea to remove the ~FlushStage check completely (if we're sure).
My reasoning for this one is written as a comment in the exclusion
script: since a pipeline stall is asserted by the cache in the fetch
stage (which happens before going into the WRITE_LINE state and
asserting SetValidWay), there seems to be no way to trigger
a FlushStage (FlushW for D$) while the stallM is active.
2023-04-25 20:30:46 -07:00
David Harris
99438d57ba
Merge pull request #278 from liamchalk00/main
...
pmpaddr0 and pmpaddr2 test cases
2023-04-25 20:16:11 -07:00
Alexa Wright
55a74fd315
Excluded and added coverage for WFI test case.
2023-04-25 17:06:57 -07:00
Alec Vercruysse
2f49ee18fe
Cacheway exclude SelFlush=0 while FlushWay=0 in FlushWayEn assign
...
FlushWay is always 1 for one way, but by default it is only 1 for
way 0.
The logic that advances FlushWay to ways 1, 2, and 3 only does so
on a subset of conditions that SelFlush is high (in cachefsm), so
this is unreachable for cachways 1-3.
2023-04-25 17:02:53 -07:00
Alec Vercruysse
9f417ee93d
extend invalidatecache d$ exclusion to statement coverage
2023-04-25 17:00:13 -07:00
Liam
309a56b8f8
pmpaddr0 and pmpaddr2 test cases
...
Writing 0x00170000 and 0x17000000 to pmpaddr0 and pmpaddr2.
Increased IFU coverage from 83.53% to 83.68% and LSU coverage from 93.29% to 93.45%.
2023-04-25 15:37:04 -07:00
Ross Thompson
86de36b6ce
FPGA makefile update.
2023-04-25 16:24:26 -05:00
David Harris
03448aa691
Commented about Sstvecd trap vector alignment
2023-04-24 12:20:33 -07:00
David Harris
8bf9329815
Added M suffix in atomic
2023-04-24 12:19:56 -07:00
David Harris
1278e231ff
Merge pull request #275 from dherreravicioso/main
...
Excluded coverage for impossible cases in wficountreg and status.MPRV
2023-04-24 12:18:55 -07:00
Diego Herrera Vicioso
c681789296
Excluded coverage for impossible cases in wficountreg and status.MPRV
2023-04-24 02:06:53 -07:00
Ross Thompson
994a43a3fa
Merge pull request #272 from davidharrishmc/dev
...
fdivsqrt coverage and fix bug of not trapping on access to odd-numbered pmpcfg
2023-04-23 12:22:14 -05:00
David Harris
1d532dfcfc
Fault on writes to odd-numbered PMPCFG in RV64
2023-04-22 15:32:39 -07:00
David Harris
a5b80bc440
Removed unproven fdivsqrt exclusion
2023-04-22 15:27:05 -07:00
David Harris
8be5ed9b67
Attempted to cause interrupt during fdivsqrt. Fixed enabling fpu in fpu.S. Fdivsqrt exclusions for coverage.
2023-04-22 12:22:45 -07:00
David Harris
0871bbe8f2
Fixted syntax error in exclusion. Arbitrarily picked -e 1; fix if this isn't right
2023-04-22 10:07:48 -07:00
David Harris
87aff3dcc7
test plan update
2023-04-22 09:38:14 -07:00
David Harris
0c459e5edd
Merge pull request #270 from liamchalk00/main
...
pmpcfg test cases
2023-04-22 08:41:11 -07:00
Liam
2ed9384238
pmpcfg test cases
...
Increased IFU coverage from 83.37% to 83.53% and LSU coverage from 93.14% to 93.28%.
2023-04-21 20:43:37 -07:00
Ross Thompson
884c3c22d5
Merge pull request #266 from davidharrishmc/dev
...
FDivSqrt cleanup
2023-04-21 20:23:23 -05:00
Ross Thompson
f872be6fc3
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-04-21 12:46:22 -05:00
Ross Thompson
d513956bb9
Updated fpga Makefile to work with both the Arty and VCU platforms.
2023-04-21 11:08:35 -05:00
David Harris
e11212598f
fdivsqrt cleanup
2023-04-20 17:35:01 -07:00
David Harris
f9ca280e01
continued cleanup
2023-04-20 16:48:23 -07:00
David Harris
ea7c50e0ee
Reordered fdivsqrtpreproc to follow logic
2023-04-20 16:38:47 -07:00
David Harris
ca0269c094
Started fdivsqrtpreproc flow organization
2023-04-20 16:25:19 -07:00
David Harris
c431278fe6
Fmv h/q comments in controller
2023-04-20 16:24:58 -07:00
David Harris
b8c2062698
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-04-20 16:07:37 -07:00
David Harris
94d1533264
Merge pull request #256 from cturek/main
...
Simplifying fds to follow diagram
2023-04-20 16:07:22 -07:00
David Harris
0fddad2fd4
Merge pull request #265 from Noah-G-L/main
...
Add Coverage for TLB, MP, Global, ASID and Match
2023-04-20 16:06:09 -07:00
Noah Limpert
cf150a2ea9
Add in a test that makes match 3 = 0 for all tlb lines
2023-04-20 14:50:06 -07:00
Noah Limpert
73cca666bf
Commiting changes to add coverage to ASID, Global, Megapage size checks.
2023-04-20 14:38:13 -07:00
David Harris
870c15c4f5
Update README.md
2023-04-20 14:15:34 -07:00
David Harris
5f14dfe748
Update README.md
2023-04-20 14:09:32 -07:00
Ross Thompson
ffa686a605
Merge pull request #264 from davidharrishmc/dev
...
Added -fp flag to run arch64d/f tests in coverage
2023-04-20 09:26:16 -05:00
David Harris
9fac2b6e57
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-04-19 14:50:09 -07:00
David Harris
24e60c232d
Merge pull request #262 from SydRiley/main
...
removed comments for fixed bugs in fpu, increased coverage in fpu, ifu, and lsu: fpu from 93.51% to 93.62%, ifu from 78.56% to 78.75%, lsu from 88.96% to 88.98%
2023-04-19 14:49:50 -07:00
Sydeny
039a06ec95
clarifying comments in exclusions
2023-04-19 14:47:34 -07:00
Sydeny
b76ed145e6
removed comments for fixed bugs in fpu, increased coverage: fpu from 93.51% to 93.62%, ifu from 78.56% to 78.75%, lsu from 88.96% to 88.98%
2023-04-19 13:30:12 -07:00
David Harris
a3f3967f59
Added -fp flag to run arch64d/f tests in coverage
2023-04-19 13:07:07 -07:00
David Harris
a4cc3c6b3e
Merge pull request #261 from liamchalk00/main
...
Add pmpcfg test cases increasing IFU coverage
2023-04-19 12:37:19 -07:00
Liam
2684a81754
Add pmpcfg test cases increasing IFU coverage
2023-04-19 11:58:22 -07:00
Ross Thompson
a6903ac5f3
Yeah We boot linux on the arty a7!
2023-04-19 11:17:33 -05:00
Ross Thompson
c463bd8cdd
Fixed the reset for Arty A7 and now partially boots. Copies flash card to dram.
...
but the data is wrong.
2023-04-19 10:35:18 -05:00
David Harris
68295bd750
Update tests.vh
...
Missing comma from merge
2023-04-19 06:23:05 -07:00
David Harris
5ac756b685
Merge pull request #259 from AlecVercruysse/coverage4
...
D$ Coverage
2023-04-19 06:17:01 -07:00
David Harris
79dbfae4af
Merge branch 'main' into coverage4
2023-04-19 06:16:07 -07:00
David Harris
c36d3cb32b
Merge pull request #258 from liamchalk00/main
...
Add test cases for pmpcfg.S
2023-04-19 04:52:59 -07:00
David Harris
59d153ace0
Merge branch 'main' into main
2023-04-19 04:50:12 -07:00
David Harris
2beb32e6b9
Merge pull request #257 from koooo142857/main
...
PMPCFG_ARRAY_REGW cases
2023-04-19 04:47:12 -07:00
David Harris
a13feb5d0b
Merge branch 'main' into main
2023-04-19 04:46:51 -07:00
David Harris
f4a949c28c
Merge pull request #255 from kjprime/main
...
Add PR#252 test file to coverage
2023-04-19 04:43:25 -07:00
Alec Vercruysse
7ba2bfd4b6
CacheFSM logic simplification for AMO operations
...
Ran this by Ross.
2023-04-19 01:34:01 -07:00
Alec Vercruysse
b52512b1ae
D$ scope-specific coverage exclusions (I$ logic that never fires)
...
The InvalidateCache signal in the D$ is for I$ only, which
causes some coverage issues that need exclusion.
Another manual exclusion is due to the fact that D$ writeback, flush,
write_line, or flush_writeback states can't be cancelled by a flush,
so those transistions are excluded.
There is some other small stuff to review (logic simplification,
or an exclusion pragma if removing the redundent logic would
make it harder to understand the code, as is the case in the
FlushAdrCntEn assign statement, in my opinion).
2023-04-19 01:34:01 -07:00
Alec Vercruysse
3de03abd9d
add D$ test case to trigger a FlushStage while SetDirtyWay=1
...
This hits some conditional coverage in each cacheway.
A cache store hit happens at the same time as a StoreAmoMisalignedFault.
2023-04-19 01:34:01 -07:00
Alec Vercruysse
cd9feb0260
Cover CacheWay edge case: CacheDataMem we=1 while ce=0.
...
This test basically triggers an i$ miss during a d$ (hit) store
operation. It requires some tricky timing (e.g. a flushD right
before the relevant store). I use a script to generate the test.
2023-04-19 01:34:01 -07:00
Alec Vercruysse
e3593800d9
fix unhit exclusion in fdivsqrtfsm
2023-04-19 01:34:01 -07:00
Liam
2a4bc01944
Update tests.vh
2023-04-18 23:15:47 -07:00
Liam
777028e43b
Add test cases for pmpcfg.S
2023-04-18 23:06:52 -07:00
Kevin Wan
fe51108740
a
2023-04-18 22:09:50 -07:00
Kevin Wan
fed7681695
Merge branch 'main' of https://github.com/koooo142857/cvw into main
2023-04-18 21:55:06 -07:00
koooo142857
ea39b53c97
Merge branch 'openhwgroup:main' into main
2023-04-18 21:53:46 -07:00
Kevin Wan
20a0803f46
Completely covers all PMPCFG_ARRAY_REGW cases
2023-04-18 21:50:48 -07:00
Kevin Wan
3ef81f4e6a
PMPCFG_ARRAY_REGW cases
2023-04-18 18:43:50 -07:00
Cedar Turek
30bd1e2a33
created fdivsqrtcycles, moved cycles calculation from FSM to preproc
2023-04-18 16:14:45 -07:00
Kevin Thomas
385564fe4c
Add PR#252 test file to coverage
2023-04-18 17:57:56 -05:00
Ross Thompson
d783456746
Found the first issue. the axi clock converter was stuck in reset because the polarity was reversed.
2023-04-18 17:45:41 -05:00
Cedar Turek
871d495ca1
gave integer bits to D instead of adding manually everywhere
2023-04-18 15:41:04 -07:00
Cedar Turek
054c8d638c
moved D flop to preproc
2023-04-18 15:14:17 -07:00
Ross Thompson
bb4ebd9b61
More debug stuff.
2023-04-18 16:00:10 -05:00
Ross Thompson
667524efcb
Added more signals to debugger in hopes I can figure out why the mig is not responding.
2023-04-18 15:51:52 -05:00
Ross Thompson
2df6c6cb0f
It's almost working.
2023-04-18 14:24:59 -05:00
David Harris
d5e2fefe2c
Merge pull request #252 from mcook26/main
...
Increase of TLB coverage in IFU
2023-04-18 05:49:18 -07:00
Miles Cook
5cfd0577d1
Increase of TLB coverage in IFU
2023-04-17 18:35:03 -07:00
Ross Thompson
ac95087042
Improved constraints and set ddr3 voltage to correct 1.35V. This voltage is only for synthesis. However I'm concerned because the gui did not let me select 1.35V.
2023-04-17 20:05:59 -05:00
Ross Thompson
dd7f5310e4
Fixed timing constraint issue.
2023-04-17 19:53:43 -05:00
Ross Thompson
00c61fc5b3
Found the DDR3 memory is not ready when issuing the first store.
2023-04-17 19:33:13 -05:00
Ross Thompson
8bebc56b56
Finally we are building the fpga and can view the ila. we are getting out of reset, but we are stuck at PCM = 10b8.
2023-04-17 18:39:25 -05:00
Ross Thompson
8377ff8c51
Dang. Looks like the reset button on the arty a7 is actually resetn. I wish they'd named it that way.
2023-04-17 16:37:18 -05:00
Sydeny
f0ff1a4447
increasing lsu coverage by excluding the pmachecher/adrdecs/clintdec or uncoreram signal SizeValid becauseany size is valid so signal is always 1
2023-04-17 14:19:48 -07:00
Ross Thompson
96781e0b2a
Yay! We now have a functional ila and the uart connection on the pc side works. However the CPU is stuck in reset. Not really sure what's going on there.
2023-04-17 16:00:02 -05:00
Sydeny
4748fa0f6b
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
2023-04-17 13:51:16 -07:00
Ross Thompson
fad0366d26
Adding in the ILA to the arty a7.
2023-04-17 14:54:10 -05:00
David Harris
bdd5f5e611
Merge pull request #251 from masonadams25/main
...
Removed redundent expression to increase coverage
2023-04-17 12:37:27 -07:00
Ross Thompson
981fcc6f4a
Merge pull request #249 from davidharrishmc/dev
...
DV Test Plan, fdivsqrt, merged exclusions
2023-04-17 14:32:37 -05:00
Mason Adams
4468086e06
Removed redundent expression to increase coverage
2023-04-17 14:13:26 -05:00
David Harris
d327ed494a
Started DV Test Plan
2023-04-17 10:18:06 -07:00
David Harris
b00b8ba366
merged coverage exclusions
2023-04-17 10:17:48 -07:00
Ross Thompson
0be81fdfc8
Lowered arty a7 clock frequency to 15Mhz to meet timing. can probalby go faster.
2023-04-17 12:16:31 -05:00
Ross Thompson
a7a362f82e
Finally got the arty a7 to build.
2023-04-17 11:54:22 -05:00
Ross Thompson
9070b4adf5
OMG. the ddr3 has it's own mmcm (pll) which had incorreclty specified the input clock period as 3000 ps rather than 6000 ps so the pll was running at twice the speed. I speed the whole weekend on this. :(
2023-04-17 11:10:19 -05:00
David Harris
171fc0ee7f
Merge pull request #248 from dherreravicioso/main
...
Added test coverage for reads to HPM counters and coverage exclusions
2023-04-16 18:18:31 -07:00
Ross Thompson
5da5b76449
Fixed more issues with arty a7 constarints.
2023-04-16 13:25:02 -05:00
Diego Herrera Vicioso
34dd481f93
Added test coverage for reads to HPM counters and added exclusions for impossible cases in rv64gc
2023-04-15 23:13:39 -07:00
Ross Thompson
d2272c0620
Found and fixed the major architecture issue with the mig 7 used in the arty a7 board.
...
mig 7 is completely different from the ddr4 mig in that the internal pll does not general the required clocks. An external mmcm is required to general two inputs clocks and the required user clock.
2023-04-15 11:13:28 -05:00
Sydeny
af51b6f16c
trimming comments on fctrl bug fixes
2023-04-15 00:48:32 -07:00
Ross Thompson
a77d403e4c
Merge pull request #233 from AlecVercruysse/coverage3
...
Full I$ coverage
2023-04-14 22:15:11 -05:00
Alec Vercruysse
862d1e0116
replace instances of code duplication for i$ exclusions w/commands
2023-04-14 17:10:39 -07:00
Ross Thompson
c9445384d7
Realized we need a separate mmcm when using the mig 7 for ddr3 rather than the ddr4 mig. Go figure.
2023-04-14 18:02:16 -05:00
Ross Thompson
29146ac839
Merge pull request #247 from AlecVercruysse/code_quality
...
Code Quality
2023-04-14 16:46:39 -05:00
Limnanthes Serafini
5952a4b0a3
Final small fix
2023-04-14 14:15:52 -07:00
Limnanthes Serafini
e20f00a520
Merge branch 'code_quality' of https://github.com/AlecVercruysse/cvw into code_quality
2023-04-14 14:14:40 -07:00
Limnanthes Serafini
34aedc4f79
indent fix
2023-04-14 14:14:34 -07:00
Limnanthes Serafini
1b8e9cd9ac
Merge branch 'openhwgroup:main' into code_quality
2023-04-14 14:13:15 -07:00
David Harris
afd2cc9c91
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-04-14 12:57:26 -07:00
Ross Thompson
1a77bd7554
Merge pull request #245 from Dygore/main
...
Added Multiple tests to increase FPU Coverage
2023-04-14 14:51:28 -05:00
Dylan
8ee76174d7
Merge branch 'openhwgroup:main' into main
2023-04-14 14:41:26 -05:00
Dygore
92a0827d80
Added multiple tests to increase FPU coverage
2023-04-14 14:41:05 -05:00
Ross Thompson
b5799c896e
Finally fixed the ddr3 mig script to work correclty.
2023-04-14 11:41:51 -05:00
David Harris
f77fee605f
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-04-14 04:16:11 -07:00
David Harris
e8d630d069
Merge pull request #244 from Dygore/main
...
Added tests for full coverage of the FPU result sign module
2023-04-14 04:02:29 -07:00
Dylan
4c91bb3b76
Merge branch 'openhwgroup:main' into main
2023-04-14 00:36:57 -05:00
Dygore
23dbca3991
Added tests for full coverage of the FPU result sign module
2023-04-14 00:36:12 -05:00
Limnanthes Serafini
95223bf11c
More cleanup
2023-04-13 21:34:50 -07:00
Limnanthes Serafini
28dd41291a
More cleanup
2023-04-13 21:02:30 -07:00
Limnanthes Serafini
94b686fcf6
More changes
2023-04-13 21:02:15 -07:00
Limnanthes Serafini
5d12afa671
Some cleanup
2023-04-13 21:01:57 -07:00
Limnanthes Serafini
4ec28ef32d
Merge branch 'openhwgroup:main' into code_quality
2023-04-13 19:59:58 -07:00
Limnanthes Serafini
6fddc591b5
Finished up testbench reformatting
2023-04-13 19:18:26 -07:00
Limnanthes Serafini
99cd913d75
Further indents
2023-04-13 19:07:43 -07:00
Limnanthes Serafini
0862688168
testbench code visual improvements
2023-04-13 19:06:09 -07:00
David Harris
cfca584bc7
Merged coverage-exclusions
2023-04-13 18:15:23 -07:00
David Harris
fe083e1edc
Merge pull request #243 from Noah-G-L/main
...
Pull Request to add tlbKP.S - Fill in cache lines
2023-04-13 18:13:04 -07:00
Noah Limpert
30ed9c2b69
add back K. Box and M. Cook Lsu test
2023-04-13 17:50:18 -07:00
Noah Limpert
187c5b07c7
make pull request more clean
2023-04-13 17:44:09 -07:00
Noah Limpert
c76de00d60
Revert "instantiate 5 4KiB arrays, aim to thrash all 4 ways"
...
This reverts commit 0fea40282a
.
2023-04-13 17:40:39 -07:00
David Harris
2e568877b0
fdivsqrtfsm coverage attempt to waive a state
2023-04-13 17:40:14 -07:00
Noah Limpert
4ab27b4f12
Revert "Test File for Pull Request, Attempt to fill all four ways"
...
This reverts commit f770243689
.
2023-04-13 17:28:37 -07:00
David Harris
b378001213
Merge pull request #237 from SydRiley/main
...
fctrl coverage at 100% after removing redundancies from conditionals
2023-04-13 17:10:46 -07:00
David Harris
1c9c94563d
Merge pull request #242 from AlecVercruysse/cachesim
...
InvalDelayed warning fix; Miscellaneous typo and indent cleanup
2023-04-13 17:07:47 -07:00
Noah Limpert
bcbbcd5a30
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
2023-04-13 17:00:48 -07:00
Limnanthes Serafini
38349e6a4f
Merge branch 'cachesim' of https://github.com/AlecVercruysse/cvw into cachesim
2023-04-13 17:00:43 -07:00
Limnanthes Serafini
51f6561476
A couple indents->spaces
2023-04-13 17:00:41 -07:00
Noah Limpert
419377a8f8
git did not seem to add tests.vh, trying again
2023-04-13 16:59:10 -07:00
Limnanthes Serafini
1125bad9cb
Merge branch 'openhwgroup:main' into cachesim
2023-04-13 16:54:35 -07:00
Limnanthes Serafini
e33721fbe4
Merge branch 'cachesim' of https://github.com/AlecVercruysse/cvw into cachesim
2023-04-13 16:54:16 -07:00
Limnanthes Serafini
c427b4c896
Misc typo and indent fixing.
2023-04-13 16:54:15 -07:00
Limnanthes Serafini
ecce9b0ce1
Fix of InvalDelayed warning
2023-04-13 16:53:36 -07:00
David Harris
8db317133c
Starting fdivsqrt cleanup
2023-04-13 16:53:33 -07:00
Sydeny
1dab409bae
Updating changes to fctrl.sv to reach 100% coverage. Excluding un-used sources of instructions for the ifu.
2023-04-13 16:27:53 -07:00
Ross Thompson
679dc7d73b
Progress on arty a7 board.
2023-04-13 17:57:12 -05:00
David Harris
56686e9475
Merge pull request #241 from Dygore/main
...
Added a test for denormalized FP numbers
2023-04-13 15:31:50 -07:00
Noah Limpert
98420e45ac
update tests.vh, add tlbKP to load all lines of tlb
2023-04-13 15:13:55 -07:00
Dygore
3d5c128470
Added a test for denormalized FP numbers
2023-04-13 16:39:27 -05:00
Noah Limpert
3a06ec7094
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
...
pull in changes to trap handler so that permissions should change correctly
2023-04-13 12:34:27 -07:00
David Harris
892d6a4bcd
Merge pull request #239 from ACWright256/main
...
Fixed exception handling to handle ecalls properly
2023-04-13 09:32:56 -07:00
Alexa Wright
f8a8c43307
Fixed exception handling to handle ecalls properly
2023-04-13 09:23:32 -07:00
Sydeny
6f308e85ed
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
2023-04-12 16:20:50 -07:00
Alec Vercruysse
a52eb01407
Merge branch 'main' into coverage3
2023-04-12 16:00:15 -07:00
Alec Vercruysse
92cd0cb6ab
track GetLinenum.do (tcl procedure to find line numbers to exclude)
2023-04-12 15:58:38 -07:00
Alec Vercruysse
a3d9e11b0f
cachefsm exclude icache logic without code reuse
2023-04-12 15:57:45 -07:00
Ross Thompson
29e68a82b2
Merge pull request #236 from stineje/main
...
Modification to testfloat.do
2023-04-12 17:40:04 -05:00
James E. Stine
4503ad4c87
Add simple example based on original C program built by David Harris for OSU who want to see easy way to convert FP numbers
2023-04-12 17:20:11 -05:00
Alec Vercruysse
800f0245f3
Cachefsm gate LRUWriteEn with ~FlushStage
2023-04-12 13:32:36 -07:00
Sydeny
e2520c8a27
fctrl coverage at 100% after removing redundancies from conditional statements
2023-04-12 13:07:30 -07:00
James E. Stine
dee4d49e42
Modification to testfloat.do to accept argument for nowave or by default none
2023-04-12 14:49:40 -05:00
Ross Thompson
f54868f19d
Merge pull request #229 from davidharrishmc/dev
...
Turned on SVADU_SUPPORTED in rv32/64gc wally-config and in imperas.ic…
2023-04-12 12:21:03 -05:00
Alec Vercruysse
e303d99d5b
Merge branch 'main' into coverage3
2023-04-12 09:34:09 -07:00
David Harris
44023e7ee7
Removed unnecessary start term from initialization muxes to simplify and improve coverage
2023-04-12 03:34:01 -07:00
David Harris
a433b8a1c1
Merge pull request #234 from AlecVercruysse/cachesim
...
CacheSim: Logger improvements, performance logging, sim wrapper
2023-04-12 03:14:03 -07:00
Limnanthes Serafini
e6269b364f
Minor comments.
2023-04-12 02:57:42 -07:00
David Harris
3b6e397172
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-04-12 02:57:33 -07:00
Limnanthes Serafini
978b475269
Added performance and distribution to sim and wrapper. Added colors too!
2023-04-12 02:54:05 -07:00
David Harris
28c02a7e6a
Fixed fdivsqrt to avoid going from done to busy without going through idle first
2023-04-12 02:48:40 -07:00
David Harris
c5e3b5c68d
Swapped in svadu mmu tests
2023-04-12 02:06:52 -07:00
Limnanthes Serafini
e0d27ff5a0
Merge branch 'openhwgroup:main' into cachesim
2023-04-12 01:34:45 -07:00
Alec Vercruysse
d60e3aaf53
only assign ClearDirtyWay for read-write caches
2023-04-12 01:15:35 -07:00
Alec Vercruysse
729f81a0df
refactor cachefsm to get full coverage
...
I had to exclude i$ states in coverage-exclusions-rv64gc.do,
but it's referred to by scope, which should be pretty robust
2023-04-12 01:15:35 -07:00
Alec Vercruysse
1ce2ab5daa
Coverage and readability improvements to LRUUpdate logic
...
The genvar stuff was switched to readable names to make it easier
to understand for the first time. In the LRUUpdate logic for loop,
a special case was added for simpler logic in the case of the root
node, to hit coverage.
2023-04-12 01:15:35 -07:00
Alec Vercruysse
214abc7006
Make AdrSelMux and CacheBusAdrMux mux2 if READ_ONLY_CACHE
...
Some address options are only used in the D$ case.
2023-04-12 01:15:35 -07:00
Alec Vercruysse
6dce58125b
Remove FlushStage Logic from CacheLRU
...
For coverage.
LRUWriteEn is gated by FlushStage in cache.sv,
so removing the signal completely avoids future confusion.
Update cache.sv to reflect cacheLRU edit.
2023-04-12 01:15:35 -07:00
Alec Vercruysse
3fc6bb0c40
Exclude (FlushStage & SetValidWay) condition for RO caches
...
Spent a long time trying to find a way to see if this condition was
possible, only to become relativly convinced that it isn't.
Basically, since RO cache writes only happen after a long period of
stall for the bus access, there's no way a flushD can be active
at the same time as a RO cache write. TrapM causes a FlushD, but
interrupts are gated by the "commited" logic and the exception
pipeline stalls.
I feel like its worth keeping the logic to be safe
so I've chosen to exclude it rather than explicitely remove it.
2023-04-12 01:15:35 -07:00
Ross Thompson
2f6ed64e26
Merge pull request #232 from stineje/main
...
Mod testing for TestFloat
2023-04-11 23:22:59 -05:00
James Stine
5d1ad53bc7
Add feature in testfloat.do to elect wave or nowave
2023-04-11 22:35:04 -05:00
James Stine
f5201da676
Update testbench-fp to run TestFloat for all FP operations
2023-04-11 22:16:20 -05:00
Limnanthes Serafini
11a5b23bb8
Logger significantly improved.
2023-04-11 19:29:51 -07:00
Limnanthes Serafini
fdb81e44c9
Minor logic cleanup (will elaborate in PR)
2023-04-11 19:29:39 -07:00
Limnanthes Serafini
3f7f3d6a42
Wrapper for running CacheSim on the rv64gc suites
2023-04-11 19:29:05 -07:00
Limnanthes Serafini
b6ecd15eff
Cleanup + success message added to CacheSim
2023-04-11 19:28:28 -07:00
David Harris
953518bcba
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-04-11 19:08:09 -07:00
David Harris
32daa34680
Merge pull request #231 from kipmacsaigoren/priv-tests
...
Priv tests Updates for SVADU, and SAIL
2023-04-11 19:07:13 -07:00
Kip Macsai-Goren
9f30414e97
restored original virt mem tests when svadu is not supported
2023-04-11 18:47:08 -07:00
Kip Macsai-Goren
7d9ebf56ed
renamed virt mem tests to include svadu
2023-04-11 18:46:37 -07:00
Kip Macsai-Goren
cf50d04a21
removed unnecessary 'deadbeef's at the end of reference outputs
2023-04-11 18:32:04 -07:00
Kip Macsai-Goren
b839de4451
Modified virt mem tests to do correct r/w when svadu is enabled
2023-04-11 18:08:30 -07:00
Kip Macsai-Goren
599ebc572e
enabled SVADU for rv32/64gc
2023-04-11 17:42:26 -07:00
Kip Macsai-Goren
c179d76542
Removed Trap outputs from writes covered by SVADU
2023-04-11 17:41:57 -07:00
Kip Macsai-Goren
41ef59ddfe
Removed Sail from virt mem tests due to sail not recognizing SVADU
2023-04-11 17:41:31 -07:00
Kip Macsai-Goren
4bf2a7e15b
Added sail simulation to priv tests that support it
2023-04-11 13:26:59 -07:00
Ross Thompson
1861ca8c86
Fixed more bugs in the ila debug constraints.
2023-04-11 14:32:53 -05:00
Ross Thompson
0a43c43b0a
Merge branch 'main' of github.com:ross144/cvw
2023-04-11 14:31:08 -05:00
Ross Thompson
b015e736a0
Updated to help debut Jacob's crossbar woes.
2023-04-11 14:22:42 -05:00
Ross Thompson
c7104bebd3
Fixed sum bugs with arty a7 ila script.
2023-04-11 10:00:06 -05:00
David Harris
4797f6ca5e
Merge pull request #230 from ACWright256/main
...
Excluded coverage for misaligned instructions
2023-04-11 05:21:09 -07:00
Alexa Wright
34fd402f23
Excluded coverage for misaligned instructions
2023-04-10 23:18:25 -07:00
Noah Limpert
a7ec77239f
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
2023-04-10 19:01:32 -07:00
Ross Thompson
6123efd5b2
Updates for arty a7.
2023-04-10 17:02:19 -05:00
Ross Thompson
2abd164d03
Fixed syntax errors in arty7 top level.
2023-04-10 16:08:40 -05:00
Ross Thompson
81fb076e9e
Added more support for Arty A7 board.
2023-04-10 16:01:17 -05:00
Ross Thompson
d2d528cf3c
Finally building ddr3 xilinx ip from script.
2023-04-10 14:36:33 -05:00
Ross Thompson
5aa614858f
Started putting together the arty a7 board package files.
2023-04-10 13:15:55 -05:00
David Harris
baef1249e7
Turned on SVADU_SUPPORTED in rv32/64gc wally-config and in imperas.ic. ImperasDV is happy with these privileged tests now
2023-04-10 07:05:06 -07:00
David Harris
a819a24b83
Merge pull request #226 from SydRiley/main
...
Increased coverage for the fpu by adding directed tests to toggle signals
2023-04-09 21:52:11 -07:00
David Harris
df96732683
Merge pull request #223 from ross144/main
...
Solves issue 172
2023-04-09 20:30:26 -07:00
David Harris
2e97aa46db
Merge pull request #224 from kbox13/my-single-change
...
Create new PMP tests
2023-04-09 20:29:03 -07:00
Kevin Box
f74bb8b38e
Create new pmp tests
...
configures all pmpcfg registers in each different address range.
2023-04-09 16:29:57 -07:00
Noah Limpert
06a138e6d9
3rd attempt to resolve conflict in lsu.S file
2023-04-09 15:52:18 -07:00
Sydeny
ff405a49a5
Increasing coverage for the fpu by adding directed tests to toggle signals
2023-04-09 13:33:12 -07:00
Ross Thompson
d67ee33896
Updated wally figure again to increase resolution.
2023-04-09 12:26:15 -05:00
Ross Thompson
f6c84b1e8d
Updated wally top level figure to fix issue 172.
2023-04-09 12:20:43 -05:00
Ross Thompson
132016f131
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
2023-04-09 12:19:44 -05:00
David Harris
11cadb3f8f
Merge pull request #222 from kjprime/main
...
Remove unnecessary check from compressed instruction decode
2023-04-09 04:56:21 -07:00
David Harris
c8cd2ffc77
Merge pull request #221 from dherreravicioso/main
...
Added test coverage for Privilege Unit in CSRs
2023-04-09 04:54:36 -07:00
Kevin Thomas
640310cf94
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-04-08 22:56:20 -05:00
Diego Herrera Vicioso
76d5c3e500
Added test coverage for floating point registers, some PMP addresses, as well as MTVAL and MCAUSE CSRs.
2023-04-08 16:40:36 -07:00
Ross Thompson
e79119e2fd
Merge pull request #220 from davidharrishmc/dev
...
Obscure coverage fixes
2023-04-08 10:27:31 -05:00
David Harris
d27779f4c0
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-04-07 21:57:18 -07:00
David Harris
4a2f641348
Waived coverage on BTB memory with byte write enables tied high
2023-04-07 21:56:49 -07:00
David Harris
495f2ed274
Improved RAS predictor coverage by eliminating unreachable StallM term
2023-04-07 21:37:12 -07:00
Ross Thompson
a36a8ef6f5
Merge pull request #219 from davidharrishmc/dev
...
Spill logic coverage and fdivsqrt cleanup
2023-04-07 23:30:52 -05:00
David Harris
5119222c2f
Commented WFI non-flush in writeback stage of hazard unit
2023-04-07 21:27:13 -07:00
David Harris
a9b7bd101e
Added vm64check tests to cover IMMU vm64
2023-04-07 21:14:52 -07:00
David Harris
25f394ce97
Fixed csrwrites.S to agree with ImperasDV. Now coverage tests pass iter-elf
2023-04-07 21:11:01 -07:00
David Harris
5c6d9f87a0
Fixed priv.S to initialize stimecmp and agree with ImperasDV
2023-04-07 20:44:01 -07:00
David Harris
7ad8d7f774
Bug fix: MTIME & MTIMEH registers are unimplemented and should fault when accessed
2023-04-07 20:43:28 -07:00
David Harris
8b4016582b
Fixed WALLY-init-lib to return correctly even from traps from compressed instructions
2023-04-07 20:24:33 -07:00
David Harris
982ade31c5
Fixed enabling machine timer interrupt
2023-04-06 22:18:33 -07:00
David Harris
c9887cb182
vm64 tests
2023-04-06 21:42:47 -07:00
David Harris
c24e81c57f
Division cleanup
2023-04-06 21:42:34 -07:00
David Harris
ce931d1fc5
Simplified integer division preprocessing in fdivsqrt
2023-04-06 16:43:28 -07:00
David Harris
f810ad3cec
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-04-06 14:07:59 -07:00
David Harris
1569bfbb98
Removed redundant stall signal to get spill coverage
2023-04-06 14:07:50 -07:00
Ross Thompson
87a1d12c3b
Merge branch 'main' of github.com:ross144/cvw
2023-04-06 15:33:24 -05:00
Ross Thompson
b57566e632
Added Jacob's ILA script.
2023-04-06 15:32:36 -05:00
Ross Thompson
fe922c8fac
Fixed syntax error.
2023-04-06 15:10:55 -05:00
Ross Thompson
270b3371f1
Added note about strange vivado behavior not inferring block ram.
2023-04-06 15:09:35 -05:00
Ross Thompson
d121364997
Similifed the no byte write enabled version of the sram model.
2023-04-06 14:18:41 -05:00
Kevin Thomas
1931859c45
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-04-06 12:38:41 -05:00
David Harris
fddbd79209
Update dvtestplan.md
2023-04-06 09:29:47 -07:00
David Harris
6431e358ca
Create dvtestplan.md
2023-04-06 09:23:09 -07:00
David Harris
4448c238c4
Merge pull request #214 from eroom1966/main
...
Add in configuration for B extension
2023-04-06 09:08:20 -07:00
Lee Moore
a20528e43c
Merge branch 'openhwgroup:main' into main
2023-04-06 16:31:49 +01:00
eroom1966
430763a1d1
add support into configuration for Zb(a,b,c,s)
2023-04-06 16:30:14 +01:00
David Harris
2a3711546f
Merge pull request #213 from eroom1966/main
...
fix break to simulation testbench
2023-04-06 06:54:59 -07:00
eroom1966
319a1b9161
fix break to simulation testbench
2023-04-06 14:45:41 +01:00
David Harris
52dcd63d1e
Merge pull request #211 from ross144/main
...
Fixes the issue introduced by the fix for issue 203
2023-04-05 21:50:32 -07:00
Ross Thompson
1478115faf
Fixed wally64/32priv test hangup.
...
The fix for the issue 203 had a lingering bug which did not suppress a bus access if the hptw short circuits on a pma/p fault.
2023-04-05 23:13:45 -05:00
Kevin Thomas
5d71960385
Merge branch 'main' of https://github.com/kjprime/cvw
2023-04-05 17:44:54 -05:00
Kevin Thomas
0b317c4823
Merge branch 'openhwgroup:main' into main
2023-04-05 17:44:47 -05:00
Kevin Thomas
e70a081924
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-04-05 17:43:43 -05:00
Ross Thompson
f2c26ff886
Merge pull request #206 from AlecVercruysse/coverage2
...
i$ coverage improvements
2023-04-05 17:29:35 -05:00
David Harris
b3cf1b45fa
Merge pull request #210 from SydRiley/main
...
Starting to extend fpu conditional coverage, reformatting ifu test cases.
2023-04-05 14:56:16 -07:00
Alec Vercruysse
2a3d9f8c89
Update ram1p1rwe (ce & we) coverage exlusion explanation
2023-04-05 14:54:58 -07:00
Sydeny
d264d3274c
Starting to extend fpu conditional coverage, reformating ifu test cases
2023-04-05 14:10:15 -07:00
Kevin Thomas
29dec429a0
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-04-05 15:33:10 -05:00
Kevin Thomas
c4a9bb4269
Formating white space
2023-04-05 15:30:55 -05:00
David Harris
7963bfdbe5
Merge pull request #205 from kbox13/my-single-change
...
Increase LSU Coverage
2023-04-05 13:16:04 -07:00
Kevin Thomas
7345927cb1
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-04-05 15:04:12 -05:00
David Harris
af58afd054
Merge pull request #208 from ross144/main
...
Fixes Issue 203
2023-04-05 13:03:30 -07:00
Ross Thompson
90c2156164
Merge pull request #207 from AlecVercruysse/cachesim
...
Cache Simulator
2023-04-05 14:59:52 -05:00
Ross Thompson
d1ac175e27
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-04-05 14:55:12 -05:00
Limnanthes Serafini
5bae4801bb
*.out removal
2023-04-05 12:50:26 -07:00
Limnanthes Serafini
69eecac989
*.out removal
2023-04-05 12:50:10 -07:00
Limnanthes Serafini
6f53531e26
*.out removal
2023-04-05 12:49:57 -07:00
Alec Vercruysse
61e19c2ddf
Make CacheWay flush and dirty logic dependent on !READ_ONLY_CACHE
...
To increase coverage. Read-only caches do not have flushes since
they do not have dirty bits.
2023-04-05 11:48:18 -07:00
Alec Vercruysse
d3a988c96c
make Cache Flush Logic dependent on !READ_ONLY_CACHE
...
read-only caches do not have flush logic since they do not have to
deal with dirty bits.
2023-04-05 11:48:18 -07:00
Alec Vercruysse
247af17b6b
remove ClearValid from cache
...
The cachefsm hardwired ClearValid logic to zero.
This signal might've been added to potentially add extra functionality
later. Unless that functionality is added, however, it negatively
impacts coverage. If the goal is to maximize coverage, this signal
should be removed and only added when it becomes necessary.
2023-04-05 11:48:18 -07:00
Alec Vercruysse
3867142f10
change i$ cachetagmem from ram1p1rwbe -> ram1p1rwe
...
the byte write-enables were always tied high, so we can use
RAM without byte-enable to increase coverage.
2023-04-05 11:48:18 -07:00
Alec Vercruysse
4993b1b426
turn off ce coverage for ram1p1rwe
...
According to the textbook, the cache memory chip enable,
`CacheEn`, is only lowered by the cachefsm with it is in the ready
state and a pipeline stall is asserted.
For read only caches, cache writes only occur in the state_write_line
state. So there is no way that a write would happen while the chip
enable is low.
Removing the chip-enable check from this memory to increase coverage
would be a bad idea since if anyone else uses this ram, the behaviour
would be differently than expected. Instead, I opted to turn off
coverage for this statement. Since this ram, which does not have a
byte enable, is used exclusively by read-only caches right now, this
should not mistakenly exclude coverage for other cases, such as D$.
2023-04-05 11:48:18 -07:00
Alec Vercruysse
277f507e9a
add ram1p1rwe for read-only cache ways (remove byte-enable)
...
- increases coverage
2023-04-05 11:48:18 -07:00
Alec Vercruysse
c0206cfcb3
fix typo in cachway setValid input comment
2023-04-05 11:48:18 -07:00
Alec Vercruysse
270200bc1c
put cacheLRU coverage explanation on another line
...
the `: explanation` syntax was not working
2023-04-05 11:48:18 -07:00
Alec Vercruysse
c41f4d2e7b
Exclude CacheLRU log2 function from coverage
2023-04-05 11:48:18 -07:00
Ross Thompson
7c2512446c
Progress on bug 203.
2023-04-05 13:20:04 -05:00
Kevin Box
c43ee180d3
Add sfence.vma
2023-04-05 10:34:30 -07:00
Kevin Box
490cebe36b
Revert "Add sfence.vma and arch64d/f tests to increase coverage in the LSU"
...
This reverts commit 90b5d279fd
.
2023-04-05 10:32:25 -07:00
Kevin Box
0517c6b2be
remove testing changes
2023-04-05 10:27:34 -07:00
Kevin Box
2c1a0c19dc
remove testing change
2023-04-05 10:27:11 -07:00
Kevin Box
90b5d279fd
Add sfence.vma and arch64d/f tests to increase coverage in the LSU
2023-04-05 10:18:41 -07:00
Limnanthes Serafini
7de772dcfe
Merge remote-tracking branch 'upstream/main' into cachesim
2023-04-05 09:53:05 -07:00
Kevin Thomas
5e5842893b
Minor change with the IFU in the decompress module, in the compressed instruction truth table.
...
The truth table is already fully covered, removed redundant last case checking
2023-04-05 10:27:52 -05:00
David Harris
7373cbb3ff
Merge pull request #201 from ross144/main
...
Improved d/i cache loggers
2023-04-05 06:40:14 -07:00
Limnanthes Serafini
98a56dcd66
Further comments and attribution.
2023-04-05 02:46:31 -07:00
Limnanthes Serafini
c42d798ff4
Commenting, attribution for sim, minor log changes
2023-04-05 02:43:02 -07:00
Limnanthes Serafini
47a8cf3993
Outfiles for the failing tests.
2023-04-05 02:42:09 -07:00
Limnanthes Serafini
6abd4ee1b7
Changed logging enables, debug mode in sim.
2023-04-04 23:49:35 -07:00
Limnanthes Serafini
8f3413f0d5
CacheSim edits, tests. I/D$ logging, Lim's version
2023-04-04 21:12:35 -07:00
Noah Limpert
77bd9824c5
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
2023-04-04 20:22:00 -07:00
Limnanthes Serafini
243246e49f
Merge branch 'openhwgroup:main' into cachesim
2023-04-04 13:15:56 -07:00
Ross Thompson
5b188f239b
Fixed the d cache logger.
2023-04-04 14:19:19 -05:00
Ross Thompson
b1a805d1f6
Improved d/i cache logger.
2023-04-04 13:38:32 -05:00
Ross Thompson
23ad9f79f0
Merge pull request #199 from davidharrishmc/dev
...
Fixed WFI to commit when an interrupt occurs
2023-04-04 11:34:24 -05:00
David Harris
b7b1f2443f
Fixed WFI to commit when an interrupt occurs
2023-04-04 09:32:26 -07:00
David Harris
11230f01ae
Merge pull request #198 from eroom1966/main
...
add support for Sstc
2023-04-04 09:23:38 -07:00
eroom1966
b9ef99530a
add support for Sstc
2023-04-04 17:20:00 +01:00
Ross Thompson
c21a5aaaf7
Merge pull request #194 from davidharrishmc/dev
...
Bit manipulation support in ImperasDV. Test improvements.
2023-04-04 09:13:27 -05:00
David Harris
2466594067
Merge pull request #196 from kipmacsaigoren/zbc_optimize
...
bitmanip: simplify zbc input mux
2023-04-04 06:27:47 -07:00
Kevin Kim
d7deed1690
Merge branch 'openhwgroup:main' into zbc_optimize
2023-04-03 23:45:49 -07:00
Kevin Kim
ce8a401a84
reduced mux3 to mux2 for input signal to clmul
2023-04-03 22:53:46 -07:00
Noah Limpert
f770243689
Test File for Pull Request, Attempt to fill all four ways
2023-04-03 21:54:27 -07:00
David Harris
57ee9f3a5a
Merged priv.S edits
2023-04-03 18:07:14 -07:00
David Harris
77f071dc14
Updated imperas.ic to enable B extension
2023-04-03 17:55:30 -07:00
David Harris
23bf8e0375
Merge pull request #190 from SydRiley/main
...
expanded ifu coverage including 4 added directed tests and 1 exclusion, expanded fpu coverage including 6 directed tests and 2 multiline exclusions
2023-04-03 17:48:47 -07:00
David Harris
43a13ff102
Merge pull request #193 from ACWright256/main
...
Hardware performance counterer registers test coverage
2023-04-03 17:47:06 -07:00
Alexa Wright
803fee5903
Merge branch 'openhwgroup:main' into main
2023-04-03 14:30:54 -07:00
Limnanthes Serafini
37f4443012
Merge branch 'openhwgroup:main' into cachesim
2023-04-03 14:10:43 -07:00
Limnanthes Serafini
a1ce7fe321
Moved simulator into bin, added pLRU clearing
2023-04-03 14:10:27 -07:00
Sydeny
8cfd221444
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
2023-04-03 13:41:55 -07:00
Ross Thompson
91803dc684
Merge pull request #178 from AlecVercruysse/coverage
...
Improve I$ coverage by simplifying logic
2023-04-03 14:22:46 -05:00
David Harris
af8f1ab786
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-04-03 06:13:16 -07:00
David Harris
0799072556
Merge pull request #189 from kipmacsaigoren/bitmanip_cleanup
...
Bitmanip: Removed Comparator Flag to ALU
2023-04-03 06:04:58 -07:00
Sydeny
7e5e9d928e
Manual merge for fctrl.sv, fpu.S, and ifu.S files
2023-04-03 01:55:23 -07:00
Sydeny
58eed1bba2
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
2023-04-03 01:54:27 -07:00
Sydney Riley
440e41bb3e
expanded ifu coverage including 4 added directed tests and 1 exclusion, expanded fpu coverage including 6 directed tests and 2 multiline exclusions.
2023-04-02 23:51:34 -07:00
Kevin Kim
03bf8f373f
Merge branch 'bitmanip_cleanup' of https://github.com/kipmacsaigoren/cvw into bitmanip_cleanup
2023-04-02 21:14:35 -07:00
Kevin Kim
5e7bbeddd1
removed comparator flag to ALU
2023-04-02 21:14:31 -07:00
Kevin Kim
f35b287e66
signal renaming on bitmanip alu and alu
2023-04-02 18:42:41 -07:00
David Harris
d4b7da34de
Merge pull request #177 from amaiuolo/main
...
Integrated tv generation for IFdivsqrt
2023-04-02 18:29:38 -07:00
Kevin Kim
9a4fa6ce96
changed signal names on clmul and zbc to match book
2023-04-02 18:28:09 -07:00
David Harris
fc158fd6e5
Merge pull request #187 from stineje/main
...
Update one bug in testfloat - still have to fix fpdiv but others shou…
2023-04-02 18:27:39 -07:00
James Stine
e3f3f14216
Update one bug in testfloat - still have to fix fpdiv but others should now all work
2023-04-02 18:16:23 -05:00
Alexa Wright
3815b7117b
Added tests for writing and reading to HPMCOUNTERM csrs
2023-04-01 16:02:23 -07:00
David Harris
800fdeb7ad
Added SSTC support to imperas.ic and wallyTracer. Fixes many of the privileged tests
2023-03-31 10:54:03 -07:00
David Harris
a8661d139b
regression cleanup; unable to run buildroot coverage because of different config file
2023-03-31 09:59:38 -07:00
David Harris
0ccfdde30e
Regression update
2023-03-31 09:15:15 -07:00
David Harris
e5653ff351
Merged privileged test
2023-03-31 08:37:16 -07:00
David Harris
03b4f6660c
Coverage improvement: ieu, hazard, priv
2023-03-31 08:34:34 -07:00
David Harris
b95730e3a1
Coverage improvements in ieu, hazard units
2023-03-31 08:33:46 -07:00
David Harris
820e3513c7
Privilege test improvements
2023-03-31 08:32:02 -07:00
David Harris
37d289cf44
Merge pull request #180 from infinitymdm/main
...
Remove some fpu/fctrl test cases from coverage statistics
2023-03-31 08:31:08 -07:00
Marcus Mellor
984d4b9918
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-03-31 10:29:10 -05:00
Mike Thompson
a28a457099
Merge pull request #179 from davidharrishmc/dev
...
Fixed broken regression: privileged tests and build root
2023-03-31 10:56:27 -04:00
Marcus Mellor
c7ec42eaab
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-03-31 09:54:02 -05:00
Marcus Mellor
913cdecb65
Address comments in openhwgroup/cvw#180
2023-03-31 09:51:33 -05:00
David Harris
1cd98027de
Merge pull request #182 from dherreravicioso/main
...
Added test cases to write to CSRs
2023-03-31 06:32:12 -07:00
Diego Herrera Vicioso
2b73c1d033
Merge branch 'openhwgroup:main' into main
2023-03-31 00:35:02 -07:00
Diego Herrera Vicioso
680f05b2d0
Merge pull request #1 from dherreravicioso/AW_DH_privunit
...
Added test coverage cases for writing to CSRs
2023-03-31 00:34:21 -07:00
David Harris
e8deed7811
Merge pull request #181 from kipmacsaigoren/bitmanip_cleanup
...
Bitmanip cleanup
2023-03-30 19:23:54 -07:00
Kevin Kim
97181e063b
only pass in relevant comparator flag to ALU
2023-03-30 19:15:33 -07:00
Kevin Kim
bd1ac13f5f
Merge branch 'bitmanip_cleanup' of https://github.com/kipmacsaigoren/cvw into bitmanip_cleanup
2023-03-30 19:04:41 -07:00
Kevin Kim
b43e4d8d0d
Merge branch 'openhwgroup:main' into bitmanip_cleanup
2023-03-30 19:04:36 -07:00
Marcus Mellor
d8bbb4286e
Add comments to fpu.S indicating which lines of src/fpu/fctrl.sv are covered
2023-03-30 20:01:11 -05:00
Marcus Mellor
64f15d48de
Disable coverage for branches tested in fpu.s
2023-03-30 19:44:55 -05:00
David Harris
77d5f1c81b
Refactored InstrValidNotFlushed into CSR Write signals
2023-03-30 17:06:09 -07:00
David Harris
25cd1cc432
Started factoring out InstrValidNotFlushed from CSRs
2023-03-30 14:56:19 -07:00
David Harris
a4ae1b9cbb
fctrl updated and buildroot working again
2023-03-30 13:17:15 -07:00
David Harris
fc01f45c80
fctrl continued cleanup
2023-03-30 13:07:39 -07:00
David Harris
e68e473da9
fctrl continued cleanup
2023-03-30 13:05:56 -07:00
David Harris
b07c71ea41
Started to clean up fctrl
2023-03-30 12:57:14 -07:00
Alec Vercruysse
132074523f
Make entire cache write path conditional on READ_ONLY_CACHE
2023-03-30 10:32:40 -07:00
David Harris
3cb71125d1
Merge pull request #176 from kipmacsaigoren/priv-tests
...
Fixed regression after cause CSR fix
2023-03-30 07:02:47 -07:00
Alessandro Maiuolo
3990417d70
integrated tv generation for IFdivsqrt
2023-03-29 20:57:26 -07:00
Kip Macsai-Goren
94f03b0d78
unnecessary comments cleanup
2023-03-29 19:32:57 -07:00
Kip Macsai-Goren
dded6a640e
Merge branch 'priv-tests' of github.com:kipmacsaigoren/cvw into priv-tests
2023-03-29 16:31:35 -07:00
Kip Macsai-Goren
7881c245a2
ported medelg fixes to 32 bit tests. Requires a make allclean
2023-03-29 16:31:28 -07:00
kipmacsaigoren
aec27965af
Merge branch 'openhwgroup:main' into priv-tests
2023-03-29 15:34:47 -07:00
David Harris
f5c66b4464
Merge pull request #175 from SydRiley/main
...
Starting IFU coverage expansion
2023-03-29 15:29:16 -07:00
Sydney Riley
6c1f9de8c2
Manual merge in the coverage64gc
2023-03-29 15:25:27 -07:00
Kip Macsai-Goren
414cd26a9d
updated tests to reflect non-writeable bits of deleg
2023-03-29 15:24:00 -07:00
Sydney Riley
287df517b9
Corrected authorship for IFU.S tests file
2023-03-29 15:20:46 -07:00
Sydney Riley
ede13491ef
Starting IFU tests including c.fld compressed instruction
2023-03-29 15:15:47 -07:00
Kip Macsai-Goren
da905b4eb9
Resolved ImperasDV receiving incorrect cause values
2023-03-29 15:04:56 -07:00
Noah Limpert
0fea40282a
instantiate 5 4KiB arrays, aim to thrash all 4 ways
2023-03-29 13:08:33 -07:00
Noah Limpert
0e08c4393d
access of 4KiB spaced mem locations, aim to fill + evict a line of all 4 ways
2023-03-29 13:07:34 -07:00
Alec Vercruysse
dac011c1d2
icache coverage improvements by simplifying logic
2023-03-29 13:04:00 -07:00
Ross Thompson
289b1ac3f6
Merge pull request #173 from davidharrishmc/dev
...
Test improvements including FPU coverage
2023-03-29 13:00:25 -05:00
David Harris
de2a0da9e9
Reduced number of bits in mcause and medeleg registers
2023-03-29 07:02:09 -07:00
David Harris
96e3c3bea8
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-29 06:19:10 -07:00
David Harris
e858d8a2ff
Merge pull request #171 from AlecVercruysse/fix_152
...
add check for legal funct3 for IW instructions
2023-03-29 06:18:31 -07:00
David Harris
0e02378532
Turned on FS bit in fpu.S coverage test
2023-03-29 06:10:05 -07:00
Limnanthes Serafini
cfb58a32b4
Log file cleanup
2023-03-29 04:12:10 -07:00
Limnanthes Serafini
959a96a9fe
Log file cleanup
2023-03-29 04:11:54 -07:00
Limnanthes Serafini
a9d59c2196
Log file cleanup
2023-03-29 04:11:43 -07:00
Limnanthes Serafini
0216b1d412
Git issues, repushing
2023-03-29 04:10:47 -07:00
Limnanthes Serafini
9049945b21
A first pass at the Cache simulator.
2023-03-29 04:03:55 -07:00
Diego Herrera Vicioso
4fa2959e56
Added test coverage cases for writing to STVAL, SCAUSE, SEPC, and STIMECMP CSRs.
2023-03-28 22:48:17 -07:00
David Harris
4c41589329
Turned off hpm counters
2023-03-28 21:28:56 -07:00
David Harris
043e4fe5f4
Simplified fctrl
2023-03-28 21:13:48 -07:00
David Harris
7132271a83
Started adding fpu fctrl tests
2023-03-28 21:13:25 -07:00
Alec Vercruysse
bfb4f0d6eb
add check for legal funct3 for IW instructions
2023-03-28 15:59:48 -07:00
David Harris
77affa7ccd
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-28 14:33:18 -07:00
David Harris
cac9d31696
Merge pull request #170 from ross144/main
...
Fixed issue 148 and problems with i/d cache address loggers.
2023-03-28 14:32:54 -07:00
Ross Thompson
73e6972f0b
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-03-28 16:31:50 -05:00
Ross Thompson
b4338a5a50
Modified the testbench to not use the loggers for unsupported configurations.
2023-03-28 16:27:54 -05:00
David Harris
5e352bf72e
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-28 14:27:08 -07:00
Ross Thompson
6b58cb8d65
Merge branch 'main' of github.com:ross144/cvw
2023-03-28 16:22:26 -05:00
Ross Thompson
34dd2850e0
Disable loggers by default.
2023-03-28 16:20:45 -05:00
Ross Thompson
cef75cfe06
Now reports if there is a hit or miss.
2023-03-28 16:20:14 -05:00
Ross Thompson
a48049f6fe
Restored performance counter reports.
2023-03-28 16:15:05 -05:00
Ross Thompson
7cc8d4f20c
Now have logging of i/d cache addresses, but the performance counter reports are x's.
2023-03-28 16:09:54 -05:00
Ross Thompson
f2edf0ff86
Merge branch 'main' of github.com:ross144/cvw
2023-03-28 14:47:16 -05:00
Ross Thompson
69f6b291c6
Possible fix for issue 148.
...
I found the problem. We use a Committed(F/M) signal to indicate the IFU or LSU has an ongoing cache or bus transaction and should not be interrupted. At the time of the mret, the IFU is fetching uncacheable invalid instructions asserting CommittedF. As the IFU finishes the request it unstalls the pipeline but continues to assert CommittedF. (This is not necessary for the IFU). In the same cycle the LSU d cache misses. Because CommittedF is blocking the interrupt the d cache submits a cache line fetch to the EBU.
I am thinking out loud here. At it's core the Committed(F/M) ensure memory operations are atomic and caches don't get into inconsistent states. Once the memory operation is completed the LSU/IFU removes the stall but continues to hold Committed(F/M) because the memory operation has completed and it would be wrong to allow an interrupt to occur with a completed load/store. However this is not true of the IFU. If we lower CommittedF once the operation is complete then this problem is solved. The interrupt won't be masked and the LSU will flush the d cache miss.
This requires a minor change in the cachebusfsm and cachefsm. I will report back after I've confirmed this works.
2023-03-28 14:47:08 -05:00
Kevin Kim
adabb7c236
comment formatting
2023-03-28 11:40:19 -07:00
Kevin Kim
4c9670a082
Merge branch 'openhwgroup:main' into bitmanip_cleanup
2023-03-28 11:31:18 -07:00
David Harris
f0cab709f2
Added support (untested) for half and quad conversions
2023-03-28 10:53:06 -07:00
David Harris
40311c4f62
fixed fp->fp conversions
2023-03-28 10:35:41 -07:00
David Harris
e5955c5dd8
support more fp -> fp conversions
2023-03-28 10:28:01 -07:00
David Harris
fd2d08f501
Fixed fmv decoder
2023-03-28 10:21:33 -07:00
Ross Thompson
d55b0c8c1f
Merge pull request #169 from davidharrishmc/dev
...
PMP Fix to issue 132
2023-03-28 11:49:00 -05:00
David Harris
82ae3a74e2
Fixed bitrot in testfloat tests
2023-03-28 09:35:19 -07:00
David Harris
20d8c2476e
Moved rv32 peripheral tests using TEST-LIB to wally32priv because rv32imc doesn't support PMP
2023-03-28 09:08:48 -07:00
David Harris
aa31b45d88
Fixed RV32 tests after PMP fix
2023-03-28 08:35:23 -07:00
David Harris
39d3bf8e8a
Fixed PMP issue 132. Updated tests to initialize PMP before using. Needs to remake tests
2023-03-28 06:58:17 -07:00
David Harris
01113320f4
Set PMP to allow all user/supervisor accesses in WALLY-init-lib
2023-03-28 06:46:11 -07:00
David Harris
f12fd30117
Merge pull request #168 from AlecVercruysse/makecoverage
...
Add tests/coverage/ tests as a target to sim/Makefile
2023-03-28 05:23:04 -07:00
David Harris
8093f55e34
Merge pull request #167 from ross144/main
...
Added clarificaiton to buildroot linux testvector generation
2023-03-28 05:21:44 -07:00
David Harris
20ebf7e536
CSRS privileged coverage test
2023-03-28 04:37:56 -07:00
Ross Thompson
108ad671cf
Now reports i cache and d cache memory accesses.
2023-03-27 23:44:50 -05:00
Ross Thompson
ba2b022653
Merge pull request #166 from magpyed/patch-1
...
Fixing order of local repo commands in README
2023-03-27 22:41:20 -05:00
Ross Thompson
5844ba8e71
Merge branch 'main' of github.com:ross144/cvw
2023-03-27 18:37:07 -05:00
Ross Thompson
510a0bb3ba
First stab at the i cache logger.
2023-03-27 18:36:51 -05:00
Ross Thompson
498a17deda
Added some additional details about the buildroot install.
2023-03-27 18:06:20 -05:00
Alec Vercruysse
a0aac6b15c
add tests/coverage/ tests as a target to sim/Makefile
2023-03-27 14:02:30 -07:00
Limnanthes Serafini
dd503c22ea
Fixing order of local repo commands in README
2023-03-27 13:35:48 -07:00
David Harris
2ad5547aa5
Merge pull request #163 from ross144/main
...
updated GPIO signal names to match book.
2023-03-27 12:47:00 -07:00
Ross Thompson
4e2131066d
Added buildroot instructions back to readme. moved these instructions to the docs directory.
2023-03-27 14:45:55 -05:00
Ross Thompson
8504774a11
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-03-27 11:55:19 -05:00
Ross Thompson
3f1bf7bece
Merge pull request #165 from davidharrishmc/dev
...
Imperas linux merge
2023-03-27 11:54:30 -05:00
David Harris
edaa306240
Removed unnecessary monitor
2023-03-27 09:52:38 -07:00
Ross Thompson
88c572d9bb
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-03-27 10:22:48 -05:00
David Harris
86ab90d715
Commented out setting RISCV in run-imperas-linux.sh
2023-03-27 06:34:45 -07:00
David Harris
f80abb9a75
Merge pull request #164 from eroom1966/add-linux
...
Add linux
2023-03-27 06:26:41 -07:00
eroom1966
e65cbc6636
update to allow running of ImperasDV with linux boot
...
optimize performance of the tracer
2023-03-27 09:46:16 +01:00
Lee Moore
39ac6be103
Merge branch 'openhwgroup:main' into add-linux
2023-03-27 09:44:13 +01:00
Kevin Kim
f3edbcea15
removed unnecessary signal indices
2023-03-26 20:06:55 -07:00
Kevin Kim
b4d6021b3b
removed unneccesary input signal from zbb
2023-03-26 19:39:49 -07:00
Ross Thompson
c8baffba7c
Started constrains file for arty a7 fpga.
2023-03-24 20:38:13 -05:00
Ross Thompson
3fc0c4b34e
Modified plic and uart to remove async reset. This removes vivado critical warning.
2023-03-24 20:37:48 -05:00
Ross Thompson
c10d98b1c8
Updated fpga constraints to remove critical warning.
2023-03-24 19:09:36 -05:00
Ross Thompson
78ab9f59af
Updated GPIO signal names to reflect book.
2023-03-24 18:55:43 -05:00
Ross Thompson
1f37e6dcea
Renamed controllerinputstage to controllerinput to match book.
2023-03-24 17:57:02 -05:00
Ross Thompson
fef025cb91
Merge pull request #162 from davidharrishmc/dev
...
Merging spaces
2023-03-24 17:49:26 -05:00
David Harris
0dc6f9b991
Merged ross's spacing fixes
2023-03-24 15:47:26 -07:00
David Harris
46e0841011
Merge pull request #159 from ross144/main
...
Renamed signal to match book
2023-03-24 15:34:59 -07:00
Ross Thompson
730f3ac84e
Fixed all tap/space issue in RTL.
2023-03-24 17:32:25 -05:00
Ross Thompson
0511c73e22
Replaced tabs -> spaces cache.
2023-03-24 15:15:38 -05:00
Ross Thompson
1ff15c3882
Updated EBU to replace tabs with spaces.
2023-03-24 15:01:38 -05:00
David Harris
271f21d5d6
Merge pull request #161 from kipmacsaigoren/bitmanip_muxchange
...
Bit Manipulation Mux Changes
2023-03-24 11:56:59 -07:00
Kevin Kim
278a31c16b
Merge branch 'openhwgroup:main' into bitmanip_muxchange
2023-03-24 11:54:50 -07:00
Kevin Kim
eb8fe3ed17
Zero/Sign extend mux in Shifter, Zero extend mux in Bitmanip alu
2023-03-24 11:52:51 -07:00
David Harris
e294bfb357
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-24 11:41:07 -07:00
David Harris
63b1a48d8a
Merge pull request #160 from kipmacsaigoren/priv-tests
...
Fixed mideleg issue in privileged tests
2023-03-24 11:40:35 -07:00
Kip Macsai-Goren
b856698ce2
Revert "added premilinary boundary ccrossing cases"
...
This reverts commit 3ce82f93c0
.
2023-03-24 11:27:41 -07:00
Kip Macsai-Goren
60b2d77c28
added working tests back into regression
2023-03-24 11:22:39 -07:00
Kip Macsai-Goren
e949d3dc4b
ported fixes to 32 bit tests
2023-03-24 11:22:39 -07:00
Kip Macsai-Goren
f0027aef23
replaced inerrupt tests with allowed versions
2023-03-24 11:22:39 -07:00
Kip Macsai-Goren
3c6b856068
Added cause_s_soft_from_m_interrupt
2023-03-24 11:22:39 -07:00
Kip Macsai-Goren
3ce82f93c0
added premilinary boundary ccrossing cases
2023-03-24 11:22:39 -07:00
David Harris
a5e569245b
Shifter capitalization
2023-03-24 09:01:07 -07:00
Ross Thompson
2956c11dbc
Renamed ebu signal.
2023-03-24 10:51:04 -05:00
Ross Thompson
6eae7dda14
Merge pull request #157 from davidharrishmc/dev
...
Merged branch fix
2023-03-24 10:49:45 -05:00
David Harris
9f1c1958a6
Query about CondExtA
2023-03-24 08:35:33 -07:00
David Harris
34e0b3bc61
Shifter sign simplification and capitalization
2023-03-24 08:27:30 -07:00
David Harris
25a1ea7d23
FPU detect illegal instructions
2023-03-24 08:12:32 -07:00
David Harris
59f948d47c
Start of EBU coverage tests
2023-03-24 08:12:02 -07:00
David Harris
5dfaf931e3
Avoid printing junk when running regression
2023-03-24 08:11:15 -07:00
David Harris
d04f4cedf6
ALUControl Elimination
2023-03-24 08:10:48 -07:00
David Harris
ac0b669518
Merged ALUOp into ALUControl to simplify ALU mux
2023-03-24 07:28:42 -07:00
David Harris
9ffac8315b
Simplified rotate source to shifter
2023-03-24 06:49:26 -07:00
David Harris
c6561fffd4
BMU simplifications
2023-03-24 06:18:06 -07:00
David Harris
e67b077a3e
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-24 05:59:48 -07:00
David Harris
9b2c170c03
Merge pull request #158 from kipmacsaigoren/bitmanip-alu
...
Modularize Bit Manipulation Specific ALU Changes
2023-03-24 05:57:55 -07:00
Kevin Kim
3ec4b23ff5
minor formatting
2023-03-23 22:28:21 -07:00
Kevin Kim
f07397df76
comments
2023-03-23 22:22:25 -07:00
Kevin Kim
125cb0ce44
removed redundant signals
...
-fixed some comments too
2023-03-23 22:20:37 -07:00
Kevin Kim
969b2723ef
bitmanip alu submodule passes lint and regression
2023-03-23 21:56:03 -07:00
Kevin Kim
e2a5c87b73
more progress. Failing regression
2023-03-23 20:42:49 -07:00
Kevin Kim
1eb04d9747
Merge branch 'openhwgroup:main' into bitmanip-alu
2023-03-23 19:53:50 -07:00
David Harris
dc156cc09c
Removed unnecessary XZero from fdivsqrt
2023-03-23 17:25:59 -07:00
David Harris
83e13cef46
100% IEU coverage
2023-03-23 17:25:27 -07:00
David Harris
b0620db374
Tool change docs
2023-03-23 17:24:58 -07:00
David Harris
7e947023c1
Merged BMU
2023-03-23 17:24:40 -07:00
Ross Thompson
2eb52d9cfa
Merge pull request #156 from kipmacsaigoren/rori-rv32-bug-fix
...
bit manipulation rori rv32 bug
2023-03-23 18:43:54 -05:00
Kevin Kim
f9fc30e1cb
fixed rori rv32 bug
2023-03-23 16:06:46 -07:00
Kevin Kim
7b1567829c
more progress on bitmanip alu modularization
2023-03-23 16:02:38 -07:00
David Harris
f8ad1b3db8
Improved IEU and bitmanip test coverage
2023-03-23 14:24:41 -07:00
Kevin Kim
e5be0bd2fd
started bitmanip alu modularization
2023-03-23 14:02:28 -07:00
Ross Thompson
bfa6b0f700
Merge pull request #155 from davidharrishmc/dev
...
Dev
2023-03-23 13:25:23 -05:00
David Harris
99c471ccfe
Added csrwrites.S test case for privileged tests
2023-03-23 10:55:32 -07:00
David Harris
36274d48ee
Removed 130 nm library and cli from README
2023-03-23 09:39:03 -07:00
David Harris
b360ac5715
Increased NumThreads to 0
2023-03-23 09:36:50 -07:00
David Harris
82b24c6ca9
install docs
2023-03-23 09:33:56 -07:00
David Harris
f4588dd9ac
installation script update
2023-03-23 09:31:17 -07:00
David Harris
af55524d97
Coverage improvements
2023-03-23 09:06:05 -07:00
David Harris
b5238b6c8d
README updates
2023-03-23 09:05:37 -07:00
David Harris
097ae2c071
README improvement
2023-03-23 08:49:20 -07:00
David Harris
5ef19b9c3a
README merge
2023-03-23 08:45:12 -07:00
David Harris
ecdf665854
README/tool installation merge
2023-03-23 08:42:40 -07:00
David Harris
a7e00e4386
Merge pull request #154 from stineje/main
...
Modify README and scripts
2023-03-23 08:40:57 -07:00
James Stine
eb0b6860bb
Update more information inside Wally install script
2023-03-23 09:20:35 -05:00
James Stine
74cd37f5dd
Update README by removing install instructions since script is now available
2023-03-23 09:13:40 -05:00
David Harris
3fb9d1fcd0
Merged bit manip
2023-03-23 06:55:29 -07:00
David Harris
b9ebfa3eb3
Merge pull request #110 from kipmacsaigoren/bit-manip
...
Added support for bit manipulation extension
2023-03-23 06:38:28 -07:00
David Harris
9dd2bafd6d
Added new tests from class
2023-03-23 06:38:00 -07:00
David Harris
5cfe28ec9c
Updated README for upstream repo
2023-03-23 06:37:48 -07:00
Kevin Kim
5d8402b20b
Merge branch 'openhwgroup:main' into bit-manip
2023-03-23 05:19:25 -07:00
Ross Thompson
0e2f3594de
Merge pull request #153 from davidharrishmc/main
...
Updating install instructions
2023-03-22 23:06:02 -05:00
kipmacsaigoren
87752c137e
Merge branch 'openhwgroup:main' into bit-manip
2023-03-22 17:16:35 -07:00
David Harris
76c2617239
Updating install instructions
2023-03-22 16:11:59 -07:00
David Harris
07f8b26557
Update README.md
2023-03-22 15:51:08 -07:00
Kip Macsai-Goren
9980e0153b
restored arch 64 bit manip tests
2023-03-22 15:45:54 -07:00
Kevin Kim
99ec5ecf27
Merge branch 'openhwgroup:main' into bit-manip
2023-03-22 15:38:11 -07:00
Ross Thompson
964a14feaf
Merge pull request #151 from stineje/main
...
Change order of coverage and all in sim directory - order causing iss…
2023-03-22 16:25:02 -05:00
James Stine
fee7abbbd9
Change order of coverage and all in sim directory - order causing issue with compilation process of regression tests
2023-03-22 16:23:27 -05:00
Kip Macsai-Goren
ea87a6b856
fixed sim-wally-batch
2023-03-22 14:16:07 -07:00
Kip Macsai-Goren
fb415c3f92
Merge branch 'bit-manip' of github.com:kipmacsaigoren/cvw into bit-manip
2023-03-22 14:11:58 -07:00
Kip Macsai-Goren
1bf08d6d89
restored Imperas test names
2023-03-22 14:11:42 -07:00
Kip Macsai-Goren
1232f3a6c5
restored sim-wally-batch to existing tests
2023-03-22 13:32:24 -07:00
kipmacsaigoren
e49e587eb5
Merge branch 'openhwgroup:main' into bit-manip
2023-03-22 13:25:06 -07:00
Kip Macsai-Goren
a62b92e2ef
Removed unused ISA string from spike YAML
2023-03-22 13:23:52 -07:00
Ross Thompson
4959507c6b
Merge pull request #150 from davidharrishmc/dev
...
Project improvements
2023-03-22 15:22:26 -05:00
David Harris
c1adc09da0
Added coverage tests to regression coverage
2023-03-22 13:00:10 -07:00
David Harris
c7aa602b01
Makefile improvements
2023-03-22 11:17:17 -07:00
Kevin Kim
bfaf646ed2
Merge branch 'bit-manip' of https://github.com/kipmacsaigoren/cvw into bit-manip
2023-03-22 10:34:19 -07:00
Kevin Kim
cd50018087
remove outdated
2023-03-22 10:34:17 -07:00
Kevin Kim
605f41cd55
Merge branch 'openhwgroup:main' into bit-manip
2023-03-22 10:33:15 -07:00
Kevin Kim
b3fbdba7f3
updated header comments to indicate chapter 15
2023-03-22 10:31:21 -07:00
Kevin Kim
c197a040c8
remove helper python script
2023-03-22 10:27:59 -07:00
Kevin Kim
b9b8023674
formatting
2023-03-22 10:26:04 -07:00
Kevin Kim
bc2bbc0529
min/max mux optimize
2023-03-22 10:25:54 -07:00
Kevin Kim
80a490888a
formatting
2023-03-22 10:14:12 -07:00
eroom1966
1c3c8be148
support linux
2023-03-22 17:10:32 +00:00
Ross Thompson
67f896637f
Merge pull request #149 from davidharrishmc/dev
...
Fix issue 145 about PMP upper bits
2023-03-22 11:13:43 -05:00
David Harris
c4c7f5378e
Select original compressed or uncompressed instruction for MTVAL on illegal instruction fault
2023-03-22 06:29:30 -07:00
David Harris
32c54db595
Fix Issue #142 : SCOUNTEREN powers up at 1 instead of 0
2023-03-22 04:41:57 -07:00
David Harris
dd517cdf00
Building infrastructure for coverage directed tests
2023-03-22 04:37:13 -07:00
David Harris
f33e3479cf
Testbench improvements for coverage reporting and running Imperas suite to raise test coverage
2023-03-22 04:34:49 -07:00
David Harris
77fb1b57f4
Fix Issue 145
2023-03-22 04:33:14 -07:00
Kevin Kim
2e149f9a31
Merge branch 'main' of https://github.com/openhwgroup/cvw into bit-manip
2023-03-21 11:20:05 -07:00
Ross Thompson
7e01f6d3e1
Merge pull request #146 from davidharrishmc/dev
...
Many fixes
2023-03-21 11:33:47 -05:00
David Harris
c91fa8e69e
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-21 06:58:29 -07:00
David Harris
3f47f4d665
Removed toggle coverage and generate recursive coverage report
2023-03-21 06:58:23 -07:00
David Harris
ba13add417
Added badinstr test file
2023-03-21 06:57:03 -07:00
David Harris
3fac9d98a2
Merge pull request #147 from stineje/main
...
Add correction for regression on Sail due to bug in recent release. …
2023-03-21 06:44:46 -07:00
James Stine
e60b49952e
Add correction for regression on Sail due to bug in recent release. This hash is known to work (verified by Stine/Thompson). May remove later if Sail ever gets fixed
2023-03-21 08:36:30 -05:00
David Harris
34457f68ec
Commented out failing tests related to sip and sie
2023-03-21 05:51:43 -07:00
David Harris
376bbcc71d
Renamed intdivrestoring to div
2023-03-21 05:51:02 -07:00
David Harris
0fd385e5de
Renamed intdivrestoring to div
2023-03-20 16:22:06 -07:00
David Harris
67072b89e9
Update LICENSE to Soldered
2023-03-20 16:05:36 -07:00
Kevin Kim
73fbc21aab
formatting
2023-03-20 14:25:05 -07:00
Kevin Kim
37b73ea42e
more structural mux changes
2023-03-20 14:23:54 -07:00
Kevin Kim
7a6d1ab393
added bitmanip 64 tests to updated regression script
...
+ alu structural mux changes
2023-03-20 14:19:39 -07:00
Kevin Kim
728be29ce3
formatting
2023-03-20 13:09:49 -07:00
Kevin Kim
07a43e1935
Merge branch 'main' of https://github.com/openhwgroup/cvw into bit-manip
2023-03-20 13:06:10 -07:00
David Harris
0ecde4ab4f
formatting cleanup
2023-03-20 12:45:10 -07:00
David Harris
6cc341a464
Merge pull request #144 from ross144/main
...
Fixed bug in tool chain install script
2023-03-20 10:40:44 -07:00
Ross Thompson
50a78fb674
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-03-20 11:52:18 -05:00
Ross Thompson
69d9bde358
Fixed bug in the tool chain install script.
2023-03-20 11:52:10 -05:00
Kevin Kim
9e5360e31f
format + min/max structural mux
2023-03-20 09:37:57 -07:00
David Harris
471305bda0
Eliminate transitions to FLUSH and WRITEBACK in cachefsm for READ_ONLY_CACHE
2023-03-19 10:41:47 -07:00
David Harris
ab095de4b5
Ignore more log files left from ImperasDV
2023-03-19 10:26:53 -07:00
David Harris
8f3397df01
Renamed coverage-exclusions-rv64gc
2023-03-19 10:26:09 -07:00
David Harris
835381a122
Removed flq from LLEN=64
2023-03-19 10:25:04 -07:00
David Harris
563f243de3
Improved coverage reporting
2023-03-19 10:24:35 -07:00
David Harris
02e7e7d011
Added comments about PMP checker fixes when test cases will be ready to initialize PMP before entering user mode
2023-03-19 05:46:34 -07:00
David Harris
031cc6967a
Fix Issue #120 about SIE/SIP being 0 unless MIDELEG bits are set. However, this fix breaks the wally32/64priv tests in regression.
2023-03-18 10:10:58 -07:00
David Harris
70e4c71f41
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-18 09:24:37 -07:00
David Harris
08ce265420
Replaced FenceM with InvalidateICacheM for event counting of fence.i
2023-03-18 09:24:31 -07:00
Mike Thompson
70d5b267ec
Merge pull request #140 from ross144/main
...
Added notes on linux image generation
2023-03-17 09:16:14 -04:00
Ross Thompson
e8d149df5e
Merge branch 'main' of github.com:ross144/cvw into main
2023-03-17 00:48:04 -05:00
Ross Thompson
b5fa5bb47a
Added notes on how to run QEMU to generate linux image.
2023-03-17 00:47:52 -05:00
Mike Thompson
112967142c
Merge pull request #139 from ross144/main
...
Updates for book
2023-03-14 15:44:59 -04:00
Ross Thompson
407b3c488d
Book updates.
2023-03-14 13:09:50 -05:00
Ross Thompson
8d1a7154c2
Merge pull request #138 from eroom1966/main
...
Fix MISA RO and UART addresses
2023-03-13 23:32:56 -05:00
Ross Thompson
a27051b8a8
Updated NextAdr to NextSet.
2023-03-13 14:54:13 -05:00
Ross Thompson
cb019f9aed
Updated CAdr to CacheSet.
2023-03-13 14:53:00 -05:00
Ross Thompson
c18a626abe
More accurate c model gshare results.
2023-03-13 13:54:04 -05:00
Ross Thompson
ef2c5ce6a7
On our way to finish the C reference data collection.
2023-03-13 13:32:09 -05:00
Ross Thompson
77fe3c5546
Merge branch 'main' of github.com:ross144/cvw into main
2023-03-13 13:30:49 -05:00
Ross Thompson
c57e2a2140
Added reference data.
2023-03-13 13:30:43 -05:00
Ross Thompson
2d49c4582c
Modified branch logger to indicate when the warmup period is done.
...
The branch-predictor-simulator also changed to support this.
2023-03-13 13:26:27 -05:00
eroom1966
0d260accb4
Fix MISA RO and UART addresses
...
It appears on inspection that the MISA register is read only in Wally
In which case this has now also been set in the ImperasDV representation
Also the Addresss for the UART R/W privileges are corrected
2023-03-13 11:07:19 +00:00
Ross Thompson
0441e3b736
Created script to batch processes all the embench branch outcomes into C model branch prediction rate.
2023-03-12 23:15:44 -05:00
Ross Thompson
755b1bfe53
Renamed script to parse branch.log
2023-03-12 22:40:59 -05:00
Ross Thompson
ae42150519
Added script to separate branch.log into separate logs for each benchmark.
2023-03-12 17:58:36 -05:00
Ross Thompson
568d0031d2
Modified the branch log to include markers for the start and end of tests with exclusion of warmup period.
2023-03-12 17:15:56 -05:00
Ross Thompson
ede9d49ce4
Changes BTA to BPBTA.
2023-03-12 14:36:46 -05:00
Ross Thompson
e233b63752
Replaced DCACHE parameter with READ_ONLY_CACHE as the name was confusing in chapter 10.
2023-03-12 13:21:22 -05:00
Kevin Kim
bc9cd4a26e
more checks in bitmanip decode
2023-03-10 17:17:24 -08:00
Kevin Kim
869c7283e8
formatting
2023-03-10 14:32:01 -08:00
Kevin Kim
827cf567e6
removed redundant convinvb signal
2023-03-10 14:18:24 -08:00
Kevin Kim
a5841c6fb2
removed redundant condinvb mux
2023-03-10 14:17:38 -08:00
Ross Thompson
23f6d58247
Merge pull request #137 from davidharrishmc/dev
...
Fixes to wally-batch for coverage
2023-03-10 15:36:24 -06:00
David Harris
a1ffff57ba
Fixes to wally-batch for coverage
2023-03-10 13:33:32 -08:00
Ross Thompson
501bec511c
Merge pull request #136 from davidharrishmc/dev
...
Bug fix in wally-regression
2023-03-10 15:11:25 -06:00
David Harris
8107f585c8
Fixed crash with wrong number of arguments for coverage in regression-wally
2023-03-10 13:10:28 -08:00
David Harris
ed22433916
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-10 12:47:30 -08:00
David Harris
2db97d20fa
Removed unneeded echo from setup
2023-03-10 12:08:24 -08:00
David Harris
2527930409
Merge pull request #135 from eroom1966/main
...
Enhancements to support the PMA ranges
2023-03-10 06:13:33 -08:00
eroom1966
8e657c335e
Enhancements to support the PMA ranges
2023-03-10 14:09:22 +00:00
David Harris
c44a3ac8a6
Merge pull request #134 from ross144/main
...
Updated testbench to report performance coutners for coremark.
2023-03-09 16:09:03 -08:00
David Harris
a3691cc5f7
Modified regression and wally-batch.do to support -coverage
2023-03-09 15:59:57 -08:00
David Harris
06b99035d4
Modified setup to add Imperas/scripts/cvw to path
2023-03-09 15:59:28 -08:00
David Harris
2614448218
Simplified SLT and SLTU code in ALU
2023-03-09 15:14:52 -08:00
Kevin Kim
6a429c671d
Merge branch 'openhwgroup:main' into bit-manip
2023-03-09 12:45:41 -08:00
Kevin Kim
6ee15c6e2c
more comprehensive illegal b instr. check
2023-03-09 12:44:51 -08:00
Kevin Kim
5853854f52
fixed bmu bug
...
- accidentally deleted count instruction decode
2023-03-09 12:35:42 -08:00
Ross Thompson
fa8a550e12
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-03-09 13:29:38 -06:00
Kevin Kim
ba13f6794e
Merge branch 'bit-manip' of https://github.com/kipmacsaigoren/cvw into bit-manip
2023-03-08 16:22:47 -08:00
Kevin Kim
2175702f6d
cleaner bmu decode logic
2023-03-08 16:22:43 -08:00
Ross Thompson
6d2d7d181e
Updated testbench to record coremark performance counters.
...
Added comment about mtval probably not being correct for compressed instructions.
2023-03-08 17:11:27 -06:00
David Harris
9a6514f20d
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-08 10:37:28 -08:00
David Harris
6c14d30dd7
Merge pull request #133 from eroom1966/main
...
Add support for setting PMP registers + Async DV
2023-03-08 05:17:45 -08:00
eroom1966
68f3e31547
Add support for setting PMP registers
...
Add support for async DV
2023-03-08 12:44:53 +00:00
kipmacsaigoren
10e0935207
Merge branch 'openhwgroup:main' into bit-manip
2023-03-07 21:29:03 -08:00
David Harris
ec0873ff16
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-07 14:49:23 -08:00
David Harris
bbcb9c7354
Merge pull request #127 from kipmacsaigoren/priv-tests
...
Added full testing support for S time interrupts
2023-03-07 14:49:12 -08:00
Kevin Kim
d3a1b82458
Merge pull request #3 from kipmacsaigoren/illegal_specific
...
More specific decoding for base instructions
2023-03-07 14:08:14 -08:00
Kevin Kim
f2090d25c4
Merge branch 'bit-manip' into illegal_specific
2023-03-07 14:07:59 -08:00
Kevin Kim
8eb4eb2100
Merge branch 'openhwgroup:main' into illegal_specific
2023-03-07 14:06:22 -08:00
Kevin Kim
20af58cdd4
alu formatting
2023-03-07 14:01:47 -08:00
Kevin Kim
b33b0afc77
specifc instruction handling for B's
...
- Added BALUSrcBD, BaseALUSrcB for distinguishing between base instruction I/IW and Bitmanip instruction I/IW
2023-03-07 13:58:08 -08:00
kipmacsaigoren
01f78835cb
Merge branch 'openhwgroup:main' into priv-tests
2023-03-07 13:46:55 -08:00
Kip Macsai-Goren
1ceaaad592
Merge remote-tracking branch 'upstream/main' into bit-manip
2023-03-07 13:45:04 -08:00
Kip Macsai-Goren
47bbe72d1f
Merge branch 'bit-manip' of github.com:kipmacsaigoren/cvw into bit-manip
2023-03-07 13:44:51 -08:00
Kip Macsai-Goren
34c0f86d37
Merge branch 'main' of github.com:kipmacsaigoren/cvw into bit-manip
2023-03-07 13:44:19 -08:00
Kevin Kim
3b874b964f
Merge remote-tracking branch 'origin' into illegal_specific
2023-03-07 11:30:36 -08:00
Kevin Kim
dc456415c1
formatting
2023-03-07 10:57:52 -08:00
Kevin Kim
7ec33ca094
shifter sign generation logic optimize
2023-03-07 10:57:06 -08:00
David Harris
91f2b39a45
Merge pull request #130 from ross144/main
...
change signal names to match book.
2023-03-07 09:38:35 -08:00
Ross Thompson
fc9081b64c
Added Yujun Lin's branch predictor simulator. This is a C baseline module for common branch predictor algorithms.
2023-03-07 10:49:59 -06:00
David Harris
b041606bb1
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-07 06:31:44 -08:00
David Harris
dce6d33531
editorconfig to specify tabs/spaces. Fixed some tabs. Turn off coverage to speed up simulation
2023-03-07 06:31:40 -08:00
Kevin Kim
7651d41c90
reverted backing to working version
2023-03-07 00:29:58 -08:00
Kevin Kim
8c20d67659
reverted to working version
2023-03-07 00:28:07 -08:00
Ross Thompson
17f80285ca
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-03-06 22:29:27 -06:00
Ross Thompson
5528df8630
Merge pull request #129 from davidharrishmc/dev
...
Further illegal instruction detection
2023-03-06 22:29:11 -06:00
Ross Thompson
b8dca927f2
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-03-06 18:39:15 -06:00
Ross Thompson
4b539de184
Renamed signals to be consistent with textbook.
2023-03-06 18:29:31 -06:00
Ross Thompson
6fc157e628
Renamed PCFSpill to PCSpillF.
2023-03-06 17:50:57 -06:00
Ross Thompson
e831efddaf
Renamed InstrFirstHalf to InstrFirstHalfF.
2023-03-06 17:48:57 -06:00
Ross Thompson
82ada79b11
Renamed ebuarbfsm to ebufsmarb to match figures.
2023-03-06 17:47:55 -06:00
David Harris
4fd461e520
Fixed bug about rv64 shifts only using 6 bits of funct7
2023-03-06 13:10:51 -08:00
David Harris
94dd39795e
Simplified decoder default to illegal instruction
2023-03-06 11:21:11 -08:00
David Harris
08f1ed8e53
More detailed decoding of load/store/branch/jump
2023-03-06 11:15:48 -08:00
Ross Thompson
fe163bbab3
Updated fpga ila script.
2023-03-06 13:14:48 -06:00
Ross Thompson
633eaf90c8
Merge pull request #128 from davidharrishmc/dev
...
Detecting illegal instructions with controller
2023-03-06 13:10:31 -06:00
David Harris
583b8ed91e
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-06 11:02:48 -08:00
David Harris
a01e0bd318
Improved decoding illegal instructions in controller
2023-03-06 11:02:42 -08:00
Kevin Kim
4a31ab1bc3
structural changes in cnt.sv
2023-03-06 06:44:15 -08:00
Kevin Kim
45697f050d
formatting
2023-03-06 06:20:25 -08:00
Kevin Kim
c38a5d9151
formatting
...
- reverted back to ALUResult signal in alu.sv
2023-03-06 06:19:01 -08:00
Kevin Kim
474b69967a
formatted files
2023-03-06 05:52:08 -08:00
Kevin Kim
288c7ad48c
updated license header
2023-03-06 05:41:53 -08:00
Kevin Kim
cec1e89c78
bug fix
2023-03-05 15:20:48 -08:00
Kevin Kim
19beed7866
extend unit structural mux
2023-03-05 15:09:02 -08:00
Kevin Kim
7531bf1fd6
zbb result select mux structural
2023-03-05 14:57:30 -08:00
Kevin Kim
3656d42ac0
zbc input mux structural
2023-03-05 14:26:31 -08:00
Kevin Kim
869e812aa8
revA signals to cnt, zbb
2023-03-05 14:26:24 -08:00
Kevin Kim
0e6ea0ee60
ALU changes
...
- added PreShiftAmt signal for shadd
- condinvB now muxes from B instead of mask
2023-03-05 14:06:24 -08:00
Kevin Kim
3d5ee8d964
bug in bctrl
...
- deleted the min/minu decoding for some reason.
2023-03-04 23:56:33 -08:00
Kevin Kim
6ead150cb1
BSelect from OH encoding to Binary
2023-03-04 23:19:31 -08:00
Kevin Kim
4b1ee5a196
alu pre-shift
...
-changed ALU pre shift logic to use a 2 bit shifter instead of mux
2023-03-04 23:07:06 -08:00
Kevin Kim
b0f152de28
added python script
...
-I've been using this python script to make quick changes to the bitmanip controller
2023-03-04 22:54:32 -08:00
Kevin Kim
499c3c5c30
Merge branch 'bit-manip' of https://github.com/kipmacsaigoren/cvw into bit-manip
2023-03-04 22:44:09 -08:00
Kevin Kim
6295178073
removed rotate signal in datapath and instead packed into the new BALUControl Signal
...
- BALUControl contains Rotate, Mask, PreShift signals to select from the respective generation muxes in the ALU
2023-03-04 22:44:03 -08:00
Ross Thompson
22367e4c20
Working batch mode branch prediction simulations.
2023-03-04 17:59:16 -06:00
Kip Macsai-Goren
5c3f5fe8c6
added in the CSR name for stimecmp(h)
2023-03-04 15:53:03 -08:00
Kip Macsai-Goren
4fa78a02b7
removed changes to counteren from stimecmp tests
2023-03-04 15:46:57 -08:00
Kip Macsai-Goren
98ec8d7213
added S time compare to gc configs
2023-03-04 15:46:26 -08:00
Ross Thompson
00baa06234
Mostly working bpred launch script.
2023-03-04 17:20:45 -06:00
Ross Thompson
9c4a69bb0e
Partial automation of branch predictor embenching.
2023-03-04 17:10:58 -06:00
Kip Macsai-Goren
0ba1a59a70
added reset values to stime and stimecmp registers
2023-03-04 15:06:15 -08:00
Kip Macsai-Goren
da9627708e
Added correct causing and handling of S time interrupts to test suite.
2023-03-04 15:04:17 -08:00
Kip Macsai-Goren
e76e7120c0
Merge remote-tracking branch 'upstream/main' into bit-manip
2023-03-04 14:43:12 -08:00
Ross Thompson
f13017a927
Updated parsing script.
2023-03-04 13:45:15 -06:00
Kevin Kim
b6dd855395
zbc result mux is now structural
2023-03-04 09:22:21 -08:00
Kevin Kim
6e52113208
Rotate signal now gets generated in bmu ctrl
2023-03-03 22:57:49 -08:00
Kevin Kim
18ab538a5e
license comments
2023-03-03 21:52:34 -08:00
Kevin Kim
efce306aab
removed redundant signals in controller
2023-03-03 21:52:25 -08:00
Kevin Kim
448e950eba
b controller generates comparison signed flag and controller branch signed logic updated accordingly
2023-03-03 17:12:29 -08:00
David Harris
e300c13466
Removed unneeded diagnostic print
2023-03-03 16:46:16 -08:00
Ross Thompson
dea5aae01e
Merge pull request #126 from davidharrishmc/dev
...
ImperasDV setup
2023-03-03 18:01:32 -06:00
David Harris
39c871ee0c
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-03 15:54:42 -08:00
David Harris
2c0e9b38ce
Setup ImperasDV if available
2023-03-03 15:54:35 -08:00
Ross Thompson
7599b563a6
Removed debugging code.
2023-03-03 17:52:00 -06:00
Ross Thompson
cab6b9dfc8
Fixed a bunch of odd bugs with the test bench preventing correct measurement of performance counters.
2023-03-03 17:49:44 -06:00
David Harris
015104f0ed
Merge pull request #125 from ross144/main
...
Modified Performance Counter Data Collection
2023-03-03 13:12:35 -08:00
Ross Thompson
daaea6064d
Oups included the wave file in the wally-batch.do script.
2023-03-03 15:10:07 -06:00
Ross Thompson
2d0512936b
Fixed batch mode regression test to work with hpmc loggic.
...
Added logic to exclude the embench warmups from preformance counters.
2023-03-03 14:59:20 -06:00
Kevin Kim
0bb75132c6
sltD signal debug. Passes regression
2023-03-03 12:44:33 -08:00
Kevin Kim
d24f74dc4b
sltD logic optimize
2023-03-03 12:35:40 -08:00
Ross Thompson
1c381b0546
Setup the testbench to exclude the warmup from performance counter reports.
2023-03-03 13:10:01 -06:00
Kip Macsai-Goren
9b4b0c7901
Merge branch 'bit-manip' of github.com:kipmacsaigoren/cvw into bit-manip
2023-03-03 09:56:51 -08:00
Kip Macsai-Goren
46379b6768
Merge branch 'main' of github.com:kipmacsaigoren/cvw into bit-manip
2023-03-03 09:56:34 -08:00
Kevin Kim
7270607b22
Merge pull request #2 from kipmacsaigoren/bctrlmigrate
...
bctrl migration started
2023-03-03 09:56:25 -08:00
Kevin Kim
66b15b9163
Merge branch 'bctrlmigrate' of https://github.com/kipmacsaigoren/cvw into bctrlmigrate
2023-03-03 09:54:08 -08:00
Kevin Kim
0dee48fa5c
Merge branch 'openhwgroup:main' into bctrlmigrate
2023-03-03 09:53:59 -08:00
Kip Macsai-Goren
48b10f96e9
Merge remote-tracking branch 'upstream/main' into main
2023-03-03 09:48:13 -08:00
Kip Macsai-Goren
1e2c81ccca
Merge branch 'bit-manip' of github.com:kipmacsaigoren/cvw into bit-manip
2023-03-03 09:39:52 -08:00
Kip Macsai-Goren
5fe8b08253
Merge remote-tracking branch 'upstream/main' into bit-manip
2023-03-03 09:36:44 -08:00
Kevin Kim
77c9114bcc
removed outdated b-signals in controller
2023-03-03 08:45:42 -08:00
Ross Thompson
f6e97cf516
Added performance new counter prints to testbench.
2023-03-03 10:42:52 -06:00
Kevin Kim
2b9a6aba91
comments to bctrl
2023-03-03 08:41:47 -08:00
Kevin Kim
11f165d1bb
migrated B-subarith logic into b controller
2023-03-03 08:40:29 -08:00
Kevin Kim
b5a5f364e1
began subarith configurability optimization in controller
2023-03-03 08:27:11 -08:00
David Harris
17adba5fd5
Merge pull request #124 from ross144/main
...
Added additional performance counters. Ch 5 is update todate with these changes.
2023-03-03 06:15:49 -08:00
Ross Thompson
baab2cd1f0
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-03-03 00:22:27 -06:00
Ross Thompson
7dd8fa16c1
Renamed BTB misprediction to BTA.
2023-03-03 00:18:34 -06:00
Ross Thompson
bdab2c8506
Added divide cycle counter.
2023-03-02 23:59:52 -06:00
Ross Thompson
4b501f6e03
Added the i and d cache cycle counters.
2023-03-02 23:54:56 -06:00
Ross Thompson
b19d51b6a2
Added fence counter.
2023-03-02 23:29:20 -06:00
Ross Thompson
3dbfa96aef
Added csr write counter, sfence vma counter, interrupt counter, and exception counter.
2023-03-02 23:21:29 -06:00
Ross Thompson
cf4d8e6bd0
Added store stall to performance counters.
2023-03-02 23:10:54 -06:00
Ross Thompson
e257ec96ac
Reordered performance counters and added space for new ones.
2023-03-02 23:04:31 -06:00
Ross Thompson
983e30dcb1
Fixed bug in performance counter script.
2023-03-02 22:32:13 -06:00
Ross Thompson
9bac643db2
Added support for branch target buffer stats.
2023-03-02 22:16:30 -06:00
David Harris
d51d93a3a8
Refactored Floating point division special case detection to avoid spurious trigger on Y for sqrt)
2023-03-02 20:00:47 -08:00
Kevin Kim
f4b8968e12
bug fix, more elegant logic changes in controller
2023-03-02 16:00:56 -08:00
Kevin Kim
2a0c59d5a7
formatting
2023-03-02 15:28:43 -08:00
Kevin Kim
d0c486df54
removed main instruction decoder dependence on bmu controller
2023-03-02 15:28:33 -08:00
Kevin Kim
11a977ffe3
added bitmanip illegal instruction signal
2023-03-02 15:09:55 -08:00
Kevin Kim
b52208b539
zbc comments
2023-03-02 13:52:00 -08:00
Kevin Kim
2d7d143f6d
formatted bmu decoder
2023-03-02 13:45:15 -08:00
Kevin Kim
1b222f91be
moved ALUControlD into configurable block
2023-03-02 12:17:03 -08:00
Kevin Kim
1e1ecaafb1
moved SubArith and RegWriteE into configurable block
2023-03-02 12:15:57 -08:00
Kevin Kim
7dd4a2e975
added BRegWriteE signal
2023-03-02 12:15:22 -08:00
Kevin Kim
d40f3b2a1c
rename shifternew to shifter
2023-03-02 11:45:32 -08:00
Kevin Kim
905373d53b
zbc input select mux optimize
2023-03-02 11:43:05 -08:00
Kevin Kim
2bfbf051a5
zbc select mux optimization
2023-03-02 11:40:29 -08:00
Kevin Kim
44d40afca8
fixed controller lint, changed byte unit mux select name and input width
2023-03-02 11:36:12 -08:00
Kevin Kim
96995c5593
removed redundant zbs
2023-03-02 11:22:09 -08:00
Ross Thompson
4b6a40857d
Merge pull request #123 from eroom1966/main
...
fix the memory map privileges in the REF model view
2023-03-02 09:27:35 -06:00
eroom1966
1169567219
fix the memory map privileges in the REF model view
2023-03-02 15:25:27 +00:00
Ross Thompson
3d1ffac7d7
Cleaned up branch predictor performance counters.
2023-03-01 17:05:42 -06:00
David Harris
c761fb1054
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-03-01 11:18:05 -08:00
David Harris
e78591093e
Renamed I/D TLBMissOrDAFault to TLBMissOrUpdateDA for consistency with UpdateDA
2023-03-01 11:18:00 -08:00
David Harris
367f058048
Merge pull request #121 from ross144/main
...
Branch predictor cleanup. Chapter 10 now matches the hardware
2023-03-01 09:57:59 -08:00
Ross Thompson
a61f8bc4cf
Set bp to use instruction class prediction by default.
2023-03-01 11:52:42 -06:00
Ross Thompson
e8744684cd
Branch predictor cleanup.
...
I think Ch 10 is now done except for BTB performance analysis and the section on running benchmarks and collecting data.
2023-03-01 11:24:24 -06:00
Ross Thompson
08a1153ae9
More btb cleanup.
2023-03-01 10:47:00 -06:00
Ross Thompson
dd2433f7ff
Minor fix to btb.
2023-03-01 10:45:40 -06:00
Ross Thompson
e13ba72c61
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-03-01 10:04:13 -06:00
Ross Thompson
64b8b0ea21
Merge pull request #119 from eroom1966/main
...
update ImperasDV testbench for memory privileges
2023-03-01 09:50:00 -06:00
Ross Thompson
8fe750148e
Merge pull request #118 from davidharrishmc/dev
...
Pulled to latest commit of riscv-arch-test
2023-03-01 09:49:19 -06:00
eroom1966
72b92e8c0d
update testbench for memory privileges
...
also update configuration to define value of mimpid
2023-03-01 15:37:11 +00:00
Ross Thompson
2773048bd4
Name cleanup.
2023-02-28 17:48:58 -06:00
David Harris
bd6a1dcf40
Pulled to latest commit of riscv-arch-test
2023-02-28 15:03:59 -08:00
Kip Macsai-Goren
9e52ede0cd
Merge remote-tracking branch 'upstream/main' into bit-manip
2023-02-28 14:41:51 -08:00
Kip Macsai-Goren
2cab4a2f0a
Merge remote-tracking branch 'origin' into bit-manip
2023-02-28 14:39:57 -08:00
Ross Thompson
87013ccaf0
Found the performance bug with the branch predictor btb power saving update.
2023-02-28 15:57:34 -06:00
Ross Thompson
8af61c0cc0
Name changes to reflect diagrams.
2023-02-28 15:37:25 -06:00
Ross Thompson
a823d8d021
Undid the btb update as it reduces performance.
2023-02-28 15:21:56 -06:00
Kevin Kim
036cad71c6
bitmanip decoder spits out regwrite, w64, and aluop signals [NEEDS DEBUG]
2023-02-28 12:09:35 -08:00
Kevin Kim
6835a635cc
added BRegWrite, BW64, BALUOp signals to bctrl and controller
...
-TODO: Main decode in bmuctrl must assert these 3 signals
2023-02-28 11:54:10 -08:00
Kevin Kim
82059fba67
changed shifter source select signal name
2023-02-28 11:41:40 -08:00
Kevin Kim
30ef1ac9e3
rename result back to ALUResult in ALU
2023-02-28 07:27:34 -08:00
Ross Thompson
3261f31e88
This icpred and btb changes are causing a performance issue.
2023-02-27 20:00:50 -06:00
Ross Thompson
69e8358639
Modified the BTB to save power by not updating when the prediction is unchanged.
2023-02-27 17:37:29 -06:00
Ross Thompson
44361f0a34
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-27 09:48:03 -06:00
Ross Thompson
1f10092f8f
Merge pull request #117 from davidharrishmc/dev
...
ZMMUL support and MMU cleanup
2023-02-27 09:46:40 -06:00
David Harris
5c8fee127b
Added support for ZMMUL
2023-02-27 07:29:53 -08:00
Ross Thompson
a81cc883e9
Signal name changes.
2023-02-27 00:39:19 -06:00
David Harris
0d3d499940
hptw typo fix
2023-02-26 19:38:34 -08:00
Ross Thompson
447f6b1443
Branch predictor cleanup.
2023-02-26 21:28:36 -06:00
David Harris
907fbfec38
Simplified Access fault logic in HPTW
2023-02-26 18:50:37 -08:00
David Harris
fa5be45dcd
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-26 18:35:14 -08:00
David Harris
d3f5708ded
StoreAmo faults are generated instead of load faults on AMO operations
2023-02-26 18:35:10 -08:00
Ross Thompson
3804626166
Create module for instruction class prediction and decoding.
2023-02-26 20:20:30 -06:00
Ross Thompson
86f611577f
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
2023-02-26 19:58:24 -06:00
David Harris
d2fd34efe6
Renamed DAPageFault to UpdateDA
2023-02-26 17:51:45 -08:00
David Harris
246deeda82
renamed UpperBitsUnequalPageFault to UpperBitsUnequal
2023-02-26 17:32:34 -08:00
David Harris
099267ffce
moved tlb to subdirectory
2023-02-26 17:31:03 -08:00
David Harris
a9e884acc8
Moved TLB into subdirectory of MMU
2023-02-26 17:28:05 -08:00
Ross Thompson
52faec7922
Merge pull request #116 from davidharrishmc/dev
...
Removed unneeded TLBFlush from TLBMiss logic
2023-02-26 12:07:41 -06:00
Ross Thompson
bb276da6eb
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
2023-02-26 12:06:06 -06:00
David Harris
ab178d0956
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-26 10:04:47 -08:00
David Harris
2ad62ea31f
Removed unneeded TLBFlush from TLBMiss
2023-02-26 10:04:16 -08:00
Ross Thompson
f411e63dc8
Merge pull request #115 from davidharrishmc/dev
...
Fixed SSTC being unusable in M-MODE without Status.TM. Disable STIME…
2023-02-26 12:02:54 -06:00
David Harris
2203c05724
Access faults are geted by ~TLBMiss rather than ~(Translate & ~TLBHit)
2023-02-26 09:58:34 -08:00
David Harris
4579a9d0c2
Renamed HPTW_WRITES_SUPPORTED to SVADU_SUPPORTED
2023-02-26 09:38:32 -08:00
David Harris
e3e5100f8d
Renamed DAPageFault to HPTWDAPageFault in hptw to avoid name conflict with DAPageFault from tlbcontrol
2023-02-26 07:12:43 -08:00
David Harris
d50658addf
Fixed missing assign when SSTC is not supported
2023-02-26 07:12:13 -08:00
David Harris
27acb90217
Fixed SSTC being unusable in M-MODE without Status.TM. Disable STIMECMP registers when SSTC_SUPPORTED = 0
2023-02-26 06:30:43 -08:00
Ross Thompson
7500bb75c6
PHT was enabled using the wrong ~flush and ~stall.
2023-02-24 22:57:32 -06:00
Ross Thompson
63b9f9ca3d
gshare cleanup.
2023-02-24 22:55:51 -06:00
Ross Thompson
eb8d6f016f
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-24 19:57:18 -06:00
Ross Thompson
ed7ab402ad
More signal renames.
2023-02-24 19:56:55 -06:00
Ross Thompson
e549bec060
Renamed signals to match new figures.
2023-02-24 19:51:47 -06:00
Kevin Kim
c7050ada78
removed old shifter
2023-02-24 17:33:47 -08:00
Kevin Kim
9d119d1312
Merge pull request #1 from kipmacsaigoren/kkim_alu_new
...
removed sign-extension muxes in shifter
2023-02-24 17:31:36 -08:00
Ross Thompson
6ff524d843
Renamed signals to match figure 10.18.
2023-02-24 19:22:14 -06:00
Kevin Kim
b3180d7307
removed now-redundant zero-extend mux in alu
2023-02-24 17:14:12 -08:00
Kevin Kim
0fe1d3b9f3
took sign extension out of shifter
2023-02-24 17:09:56 -08:00
David Harris
db5aa5a0fd
Merge pull request #114 from ross144/main
...
Fix the branch predictor's gshare and btb critical path issue
2023-02-24 16:55:34 -08:00
Ross Thompson
ea71fd09f5
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-24 18:50:35 -06:00
Ross Thompson
4058a49985
Possible fix to btb performance issue.
2023-02-24 18:36:41 -06:00
Ross Thompson
5c52827f51
Cleanup.
2023-02-24 18:20:42 -06:00
Ross Thompson
d030d323fd
Completed critical path gshare fix.
2023-02-24 18:02:00 -06:00
Ross Thompson
c2021927ce
Prep to fix gshare critical path.
2023-02-24 17:54:48 -06:00
Ross Thompson
4ffaa75c2a
Modified btb forwarding logic to reduce critical path.
2023-02-24 17:47:43 -06:00
Kevin Kim
a856c5de96
optimized mux to shifter, passes rv32/64i
2023-02-24 12:09:34 -08:00
Kip Macsai-Goren
1ad1c4735d
Merge remote-tracking branch 'upstream/main' into bit-manip
2023-02-24 09:28:24 -08:00
Kip Macsai-Goren
a139ef077d
Merge branch 'main' of github.com:kipmacsaigoren/cvw into bit-manip
2023-02-24 09:27:51 -08:00
Ross Thompson
ccabc63b85
Merge pull request #113 from davidharrishmc/dev
...
Change default tech to sky90 for synth
2023-02-24 09:59:08 -06:00
David Harris
60752fe51c
Fixed special cases of address decoder and documented better
2023-02-24 07:52:46 -08:00
Kevin Kim
f0cf7c2c6a
small optimization to condzext select
2023-02-23 21:57:28 -08:00
Ross Thompson
5243d1e1d4
Improved branch predictor graph generation.
2023-02-23 20:44:47 -06:00
David Harris
1c4734c736
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-23 18:23:27 -08:00
David Harris
1bed1c1869
Switched to sky90 for default synthesis
2023-02-23 14:19:10 -08:00
Ross Thompson
6e8791a0a5
Major cleanup of bp.
2023-02-23 16:19:03 -06:00
Ross Thompson
d880720b7e
Partial replacement of InstrClassX with {JalX, RetX, JumpX, and BranchX}.
2023-02-23 15:55:34 -06:00
Kip Macsai-Goren
ad633fddbd
Merge branch 'main' of github.com:kipmacsaigoren/cvw into bit-manip
2023-02-23 13:34:54 -08:00
Kip Macsai-Goren
003ad0618d
Merge remote-tracking branch 'upstream/main' into main
2023-02-23 13:33:45 -08:00
David Harris
b7d22f1926
Merge pull request #112 from ross144/main
...
Branch predictor updates to reflect figures
2023-02-23 13:29:53 -08:00
Kip Macsai-Goren
ea7eb2ce8d
.Merge branch 'bit-manip' of github.com:kipmacsaigoren/cvw into bit-manip
2023-02-23 13:29:22 -08:00
Ross Thompson
5504a55955
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-23 15:21:09 -06:00
Ross Thompson
83bf573cf5
Merge branch 'main' of github.com:ross144/cvw
2023-02-23 15:20:58 -06:00
Ross Thompson
500764f97b
Branch predictor cleanup.
2023-02-23 15:15:14 -06:00
Ross Thompson
70f7f59332
Moved more branch predictor logic into the performance counter block.
2023-02-23 15:14:56 -06:00
Ross Thompson
2fff070b1d
Moved more branch predictor logic into the performance counter block.
2023-02-23 14:46:30 -06:00
Ross Thompson
195343c84f
Added if generate around bp logic only used with performance counters.
2023-02-23 14:39:31 -06:00
Ross Thompson
ed91fc5ce3
Renamed PCPredX to BTAX.
2023-02-23 14:33:32 -06:00
Kip Macsai-Goren
73895f7a8a
Merge remote-tracking branch 'upstream/main' into bit-manip
2023-02-23 11:56:14 -08:00
Kip Macsai-Goren
c57246d547
Merge remote-tracking branch 'upstream/main' into main
2023-02-23 11:55:53 -08:00
David Harris
569186af1f
Merge pull request #111 from stineje/main
...
Slight tweak to .synopsys for OSU setup
2023-02-23 06:23:06 -08:00
James Stine
0f2bf2934e
Slight tweak to .synopsys for OSU setup
2023-02-23 07:52:40 -06:00
Kip Macsai-Goren
c64723fd5a
removed comment out on stop in testbench
2023-02-22 20:47:14 -08:00
Kip Macsai-Goren
4e0ada0582
removed bit manipulation from rv[xlen]_i. tests still pass
2023-02-22 20:42:52 -08:00
Kip Macsai-Goren
b658329118
Cleaned up consolidated arch_b tests from tests.vh
2023-02-22 20:35:01 -08:00
Kip Macsai-Goren
f8f89e692e
Fixed lint errors on zero and pop count. All of regression passes
2023-02-22 20:25:51 -08:00
Kip Macsai-Goren
57b7f66be5
added bit manipulation tests to regression
2023-02-22 20:18:05 -08:00
Kip Macsai-Goren
a61b1dca23
added 32 bit tests for bit manipulation
2023-02-22 20:17:52 -08:00
Ross Thompson
f0d32a745a
updates to bp result parsing script.
2023-02-22 22:08:00 -06:00
Kip Macsai-Goren
82611ba889
Manual attempt to merge with upstream changes
2023-02-22 19:42:30 -08:00
Kip Macsai-Goren
21eaa0b989
Merge remote-tracking branch 'upstream/main' into main
2023-02-22 15:47:54 -08:00
Ross Thompson
4a9dbe4680
Updated branch predictor results processing script.
2023-02-22 16:11:52 -06:00
Ross Thompson
1af7b8051e
Fixed bug in basic gshare.
2023-02-22 12:54:46 -06:00
David Harris
24ab8d3ea5
Merge pull request #109 from ross144/main
...
Swapped string to integer parameter.
2023-02-22 10:19:49 -08:00
Ross Thompson
6d604f7af5
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-22 09:15:41 -06:00
Ross Thompson
1f5326a0c3
Merge pull request #108 from eroom1966/main
...
add support for idv package
2023-02-22 09:13:36 -06:00
Ross Thompson
fd5b940839
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-22 09:11:57 -06:00
Ross Thompson
5ecbc830cf
Oups. Turns out dc_shell does not like string parameters.
...
Switched gshare to use an integer parameter to select between gshare and global.
2023-02-22 09:11:46 -06:00
eroom1966
baf93a1f0e
add support for idv package
2023-02-22 13:27:01 +00:00
Kip Macsai-Goren
3b50909ab2
added extra commands to make dut run work with spike for bit manip tests
2023-02-21 15:26:47 -08:00
Kip Macsai-Goren
66833f15f2
Merge remote-tracking branch 'upstream/main' into main
2023-02-21 14:48:41 -08:00
Ross Thompson
642f268d72
Merge pull request #107 from davidharrishmc/dev
...
Bug fixes
2023-02-21 13:55:55 -06:00
Kevin Kim
bb252acfbe
added individual zb tests in tests.vh and testbench
...
- also minor alu/controller configurability changes
2023-02-21 11:52:05 -08:00
David Harris
bc4410e686
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-21 09:58:18 -08:00
David Harris
8df7768d32
Fixed Issue #65 fmv sign selection. Sign needs to come from most significant bit of raw X source without doing NaN Box fixes first.
2023-02-21 09:57:57 -08:00
David Harris
5ce476241b
Debug test case updates
2023-02-21 09:33:36 -08:00
David Harris
0b9fd8a4b3
Fixed Issue #106 : fld rasies load access fault instead of illegal instruction. The IEU controller had considered all fp loads and stores to be legal regardless of whether the FPU is enabled or the type is supported. Merged illegal instruction detection from both units into the Decode stage, saving two bits of pipeline register as well.
2023-02-21 09:32:17 -08:00
Kevin Kim
73833d5576
removed incompatible rv32 tests out of arch32b tests list
2023-02-20 18:05:37 -08:00
David Harris
a774cce05d
Merge pull request #105 from ross144/main
...
Fixes to branch target buffer
2023-02-20 17:07:26 -08:00
Ross Thompson
fd5c12431e
Fixed typo in the global branch predictor.
2023-02-20 18:48:02 -06:00
Ross Thompson
d2e06d9ef0
Cleanup branch predictor files.
2023-02-20 18:45:45 -06:00
Ross Thompson
a14c71bd95
Renamed branch predictors and consolidated global and gshare predictors.
2023-02-20 18:42:37 -06:00
Ross Thompson
68e39eeb66
Fixed another bug in the btb.
2023-02-20 17:54:22 -06:00
Ross Thompson
11ecc2a5d4
Merge pull request #104 from davidharrishmc/dev
...
Yet another try
2023-02-20 17:07:40 -06:00
Ross Thompson
5187c78184
Fixed forwarding bug in the BTB.
2023-02-20 17:03:45 -06:00
Kevin Kim
d863f77996
added arch32b tests (giving errors in sim however)
2023-02-20 14:39:34 -08:00
Ross Thompson
d887124837
Found a bug where the d and i cache misses were not recorded in the performance counters.
2023-02-20 16:00:29 -06:00
Ross Thompson
1982c66b72
Simiplified BTB.
2023-02-20 15:39:42 -06:00
David Harris
bdcd867c11
Removed test code that broke LSU
2023-02-20 12:42:46 -08:00
David Harris
c6c21463d9
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-20 11:28:15 -08:00
David Harris
081a817925
Merge pull request #98 from ross144/main
...
New gshare implementation
2023-02-20 11:27:47 -08:00
David Harris
fc87425f67
touched extractArea.pl
2023-02-20 11:18:31 -08:00
David Harris
535c7e156f
touched extractArea to test commit issue
2023-02-20 11:04:33 -08:00
Ross Thompson
09bbf5712e
Merge pull request #101 from MikeOpenHWGroup/contrib
...
Initial Contributing doc
2023-02-20 12:54:56 -06:00
Ross Thompson
6c7412ba3c
Merge pull request #99 from stineje/main
...
Add setup.csh for C shell users at OSU
2023-02-20 12:54:31 -06:00
David Harris
00daa8aca0
Turned off SSTC_SUPPORTED in buildroot and fpga
2023-02-20 10:37:10 -08:00
David Harris
04bb2e6746
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-20 10:16:53 -08:00
David Harris
023ba68088
Extraction script updates to match new reports names
2023-02-20 10:16:45 -08:00
Mike Thompson
403473b79d
Add SPDX header to CONTRIBUTING
2023-02-20 12:11:40 -05:00
Mike Thompson
e02f31ec04
Initial Contributing doc
2023-02-20 12:05:00 -05:00
Ross Thompson
a6b85b8e9f
Merge pull request #100 from davidharrishmc/dev
...
Synthesis improvements
2023-02-20 10:12:49 -06:00
David Harris
df9950483e
Removed unused and incomplete ROM macro instantations
2023-02-20 05:59:57 -08:00
David Harris
da6064e07f
Fixed critical range to 50 ps and improved reporting in synthesis
2023-02-20 05:33:33 -08:00
David Harris
a59526fc8e
Fixed IROM size parameters
2023-02-20 05:32:43 -08:00
David Harris
f8a510d5af
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-20 04:02:08 -08:00
David Harris
1d3b41e0fb
New expression for BTB_SIZE to avoid error during sky90 synthesis
2023-02-20 04:02:00 -08:00
David Harris
bd8497a665
Update setup.csh
2023-02-20 03:30:08 -08:00
James Stine
f896367946
Add setup.csh for C shell users at OSU
2023-02-19 23:53:50 -06:00
Ross Thompson
2d417c33a4
Simplified BTB by removing the valid bit. the instruction class provides the equivalent information.
2023-02-19 23:53:20 -06:00
Ross Thompson
100e100835
reset branch predictor after each test.
2023-02-19 23:48:37 -06:00
Ross Thompson
0d79c0cebe
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-19 22:54:27 -06:00
Ross Thompson
b32093b33b
Simplified branch predictor.
2023-02-19 22:49:48 -06:00
Ross Thompson
ea95565306
Merge pull request #97 from davidharrishmc/dev
...
Synthesis improvements
2023-02-19 22:23:08 -06:00
David Harris
0ac9c9e62a
Added BTB_SIZE parameter independent of BPRED_SIIZE
2023-02-19 20:13:50 -08:00
David Harris
c5090cd867
Added noAtomic feature to swweep
2023-02-19 20:05:39 -08:00
David Harris
bf5f776501
Reduced rv32imc int divider to 2 copies to avoid it being on the critical path
2023-02-19 19:59:30 -08:00
David Harris
5b197f4f9d
Parameterized btb to depend on BPRED_SIZE
2023-02-19 19:59:07 -08:00
Kip Macsai-Goren
8d0a600b96
Merge remote-tracking branch 'upstream/main' into main
2023-02-19 16:37:18 -08:00
David Harris
06872e3822
Adjusted DTIM to always be 512B independent of XLEN
2023-02-19 16:14:38 -08:00
David Harris
5b8d1e4134
PMP checker size check to avoid spurious warnings
2023-02-19 16:08:23 -08:00
David Harris
342791081a
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-19 15:32:40 -08:00
David Harris
ce97aa7e63
Removed orig feature from featuresweep to avoid redundancy with configsweep
2023-02-19 15:32:32 -08:00
David Harris
636b096026
Run extractArea at end of extractSummary
2023-02-19 15:31:33 -08:00
David Harris
ac21bed64d
Moved conditional instantiation outside pmpchecker
2023-02-19 15:31:00 -08:00
David Harris
53875a9bbd
New extractArea script to generate area tables
2023-02-19 15:29:41 -08:00
Ross Thompson
537dea156d
Merge pull request #96 from davidharrishmc/dev
...
Synthesis
2023-02-19 09:22:00 -06:00
David Harris
7d031fcae0
Disabled W64M register for RV32
2023-02-19 07:03:31 -08:00
David Harris
bfc9a462d5
Removed TOPO flag for synthesis; implied by tsmc28psyn
2023-02-19 07:00:16 -08:00
David Harris
6d405ad69b
Fixed RAM instantiations
2023-02-19 06:31:41 -08:00
David Harris
2ed29792e5
Removed redundant compare in setup file
2023-02-19 06:31:26 -08:00
David Harris
5e5dfe732d
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-19 05:49:35 -08:00
David Harris
fe0a893182
Renamed section 12.3 to 8.3 in MMU test definitions
2023-02-19 05:46:46 -08:00
Ross Thompson
9ee48637dc
Possibly much better branch predictor implemention.
...
The complexity is significantly reduced.
2023-02-19 00:17:37 -06:00
Kevin Kim
2069d92f9e
B DONE (for now)
...
- datapath passes along comparator flag to alu
- controllers and zbb handle min/max instructions
2023-02-18 22:12:55 -08:00
Ross Thompson
d44cb1febb
Minor fix.
2023-02-18 23:55:46 -06:00
Ross Thompson
b3be4c621f
Merge pull request #95 from stineje/main
...
Update MW reference to recognize memories properly
2023-02-18 23:36:37 -06:00
James Stine
c7720da3af
Update MW reference to recognize memories properly
2023-02-18 23:30:10 -06:00
Kevin Kim
888f4318bc
controlleres and zbb handle byte instructions
2023-02-18 21:06:55 -08:00
Kevin Kim
27581f8d28
alu and controllers handle andn, orn, xnor
2023-02-18 20:57:07 -08:00
Ross Thompson
43112dbc73
Merge pull request #94 from stineje/main
...
Change mistake on linking within .synopsys file
2023-02-18 22:52:38 -06:00
Kevin Kim
ba968ed95e
added logic to handle sign/zero extend instructions
2023-02-18 20:32:40 -08:00
Kevin Kim
5c563bef43
fixed ctlzw bug in count unit
2023-02-18 20:12:30 -08:00
Kevin Kim
6d60268240
zbb handles count instructions
2023-02-18 20:12:17 -08:00
Kevin Kim
9760f0ccfd
fixed bmuctrl decode bug
2023-02-18 20:11:50 -08:00
Kevin Kim
84ddb6fb54
updated comments in bmuctrl
2023-02-18 19:57:10 -08:00
Kevin Kim
bec2905ee5
rotate instructions now handled in ZBB unit
2023-02-18 19:56:54 -08:00
Kevin Kim
e47cc222a6
removed redundant decode logic in bmuctrl
2023-02-18 19:50:36 -08:00
Kevin Kim
9203b0cc2f
began ZBB integration into ieu
2023-02-18 19:44:14 -08:00
James Stine
20880c26a4
Change mistake on linking within .synopsys file
2023-02-18 19:41:49 -06:00
Kevin Kim
7780cbd47a
bmuctrl handles roriw
2023-02-18 16:26:16 -08:00
Kip Macsai-Goren
883a6ca005
merge upstream synth changes
2023-02-18 14:35:19 -08:00
Ross Thompson
6f2a2891a5
Merge pull request #93 from davidharrishmc/dev
...
NaN handling
2023-02-18 11:40:19 -06:00
David Harris
0eda753dc4
Removed unused PredInstrClassE register from bpred
2023-02-18 05:59:25 -08:00
David Harris
0f4226a950
Removed unused weq0M register fron fdivsqrtpostproc
2023-02-18 05:57:39 -08:00
David Harris
c5f87d7e41
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-18 05:34:51 -08:00
David Harris
66e5c60fb4
Fixed issue #57 of sign selection for improperly NaN-boxed number
2023-02-18 05:34:40 -08:00
David Harris
5986931fdc
Fixed unpacking of illegal NaN box. Fixed issue #56 of sign injection NaN
2023-02-18 05:25:38 -08:00
Ross Thompson
980ed12c33
Merge pull request #91 from davidharrishmc/dev
...
Synthesis updates
2023-02-18 00:54:56 -06:00
Kevin Kim
92c0d3a4ed
configured shifter in alu
2023-02-17 21:58:49 -08:00
Kevin Kim
182b27dfc8
shifter bug fix
...
- roli not passing unless I keep the MSB (instead of inverting) of truncated offset
2023-02-17 21:58:26 -08:00
Kevin Kim
c353378da8
controller supports some rotates
2023-02-17 21:57:34 -08:00
Kevin Kim
4a52b57002
bmuctrl supports some rotates
2023-02-17 21:57:19 -08:00
David Harris
dc19f8a8ec
Created PostBox signal to NaN-box malformed NaNs of excess length. Fixes Issue #55
2023-02-17 20:51:43 -08:00
David Harris
98135f424e
Fixed warnings when compiling wallyTracer
2023-02-17 20:50:43 -08:00
Kevin Kim
50ec6baa07
added zero extend, pre-shift mux to ALU
2023-02-17 20:15:12 -08:00
Kevin Kim
e2d90a9422
more elegant ZBA logic in controller
2023-02-17 20:14:47 -08:00
Kevin Kim
cd92d6e5d1
bmuctrl handles .uw instructions
2023-02-17 20:14:13 -08:00
David Harris
6c58048eb4
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-17 19:44:13 -08:00
David Harris
a194740562
Fixed RAM bugs and refactored with read taking place after clock edge rather than before.
2023-02-17 19:14:38 -08:00
David Harris
9f3c051f8d
Listed more Python files for installation
2023-02-17 19:13:52 -08:00
David Harris
4bfff6a4eb
Turned off default USE_SRAM in Makefile
2023-02-17 17:37:05 -08:00
Kevin Kim
750882455f
controller supports ZBA instructions
2023-02-17 16:44:16 -08:00
Kevin Kim
fcae58fcc7
removed Funct7 in Execute Stage
2023-02-17 16:12:09 -08:00
Ross Thompson
00ca715019
Merge pull request #84 from davidharrishmc/dev
...
SSTC
2023-02-17 17:40:01 -06:00
David Harris
9275bfb839
Memory synthesis updates
2023-02-17 15:33:49 -08:00
David Harris
2060683770
Continue fixing memory macros for synthesis
2023-02-17 15:15:37 -08:00
Ross Thompson
0cacfbd322
Renamed globalhistory predictor.
2023-02-17 16:08:34 -06:00
Ross Thompson
2f1bebfd57
Fixed global history predictor.
2023-02-17 16:05:48 -06:00
Ross Thompson
a95be0b567
More updates.
2023-02-17 15:53:49 -06:00
Ross Thompson
df4a27a2e3
Updated global history predictor.
2023-02-17 15:53:15 -06:00
David Harris
3523318acb
Synthesis with memories
2023-02-17 13:51:05 -08:00
Ross Thompson
0d271130b9
Fixed a branch predictor performance issue.
2023-02-17 15:37:03 -06:00
Kevin Kim
9bf11471aa
bmuctrl checks for illegal zbs-style instructions
2023-02-17 12:54:08 -08:00
Kevin Kim
0bab3bec3d
bctrl bug fix
...
- bctrl decodes shift immediate instructions properly
2023-02-17 11:16:29 -08:00
Kevin Kim
bb79b57cc1
alu bug fix
...
- condmaskb piped in correctly instead of b
2023-02-17 11:02:07 -08:00
David Harris
d06285ce16
sweep debugging
2023-02-17 11:00:00 -08:00
David Harris
0b2a552781
Fixed TLU corners
2023-02-17 10:59:31 -08:00
David Harris
1f9d425eab
Fixing loads and wire loading for physical synthesis. Also put Milkyway library in each run directory so they don't conflict across runs
2023-02-17 10:52:17 -08:00
David Harris
41fbe32489
fixed various sweep options to not run an extra job
2023-02-17 10:35:39 -08:00
Kip Macsai-Goren
02bc03af42
fixed makefile for 32 bit arch tests, restored original make for all others
2023-02-17 09:57:56 -08:00
Kip Macsai-Goren
70027a55b4
:Merge branch 'main' of github.com:kipmacsaigoren/cvw into main
2023-02-17 09:52:11 -08:00
Kip Macsai-Goren
b943470049
Modified arch64 tests to remove floating point and double tests from hanging make
2023-02-17 09:51:55 -08:00
Kevin Kim
a522ece3d3
Merge branch 'main' of https://github.com/kipmacsaigoren/cvw into main
2023-02-17 09:51:53 -08:00
Kevin Kim
ee3a520a1f
alu looks at BSelect, added BSelect one hot signal
2023-02-17 09:51:49 -08:00
Kip Macsai-Goren
873dd718f1
merge with new changes to upstream
2023-02-17 09:36:58 -08:00
Ross Thompson
5d5e4580d4
Merge branch 'main' of github.com:ross144/cvw
2023-02-17 10:58:16 -06:00
Ross Thompson
a325adf1be
Fixed bug with branch predictor.
2023-02-17 10:57:50 -06:00
Kevin Kim
890c54bc0b
added alu changes to previous commit
2023-02-17 08:22:13 -08:00
Kevin Kim
ec2421ead4
added BSelect Signal
...
- BSelect [3:0] is a one hot encoding of if it's a ZBA_ZBB_ZBC_ZBS instruction
2023-02-17 08:21:55 -08:00
Kevin Kim
81cb00aaee
comments
2023-02-17 07:53:14 -08:00
Kevin Kim
505f3bf42f
comments
2023-02-17 07:52:54 -08:00
Kevin Kim
256d362e0d
comment formatting
2023-02-17 07:51:28 -08:00
Kevin Kim
9ab8183e80
alu handles ALU select instead of funct3
2023-02-17 07:51:10 -08:00
Kevin Kim
9128ac5409
added BMU controll
2023-02-17 07:50:59 -08:00
Kevin Kim
25c0811d3d
Added ALUSelect signal into datapath, ieu, controller
2023-02-17 07:50:45 -08:00
David Harris
0da32a41f6
moved riscvassertons to its own file, added proper license headers to testbench support files
2023-02-16 19:40:27 -08:00
David Harris
c3cc2f98d6
Reverted lab3 changes in dev branch
2023-02-16 18:10:05 -08:00
David Harris
5fef9de80e
Merge branch 'lab3_2023' of https://github.com/openhwgroup/cvw into dev
2023-02-16 17:57:51 -08:00
David Harris
0b569e3ed4
Update testbench.sv
2023-02-16 17:55:46 -08:00
David Harris
631008f06a
Update testbench.sv
2023-02-16 17:54:27 -08:00
David Harris
532abb5b95
Update datapath.sv
2023-02-16 17:53:31 -08:00
David Harris
6527257305
Update controller.sv
2023-02-16 17:52:44 -08:00
David Harris
685d3ff568
Update alu.sv
2023-02-16 17:52:25 -08:00
David Harris
076d1b50c6
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-16 13:58:03 -08:00
Ross Thompson
a6915a385a
Merge pull request #88 from stineje/main
...
fix typo - remove extra p at end of script
2023-02-16 15:53:39 -06:00
James Stine
8d94273a7a
fix typo - remove extra p at end of script
2023-02-16 15:50:31 -06:00
Ross Thompson
a176325506
Merge pull request #87 from stineje/main
...
Update bug in Makefile
2023-02-16 15:25:43 -06:00
James Stine
c8307dffc1
Update bug in Makefile
2023-02-16 15:16:32 -06:00
Ross Thompson
3b7531b208
Merge pull request #86 from stineje/main
...
Get rid of extra CR/LF in .synopsys_dc.setup file
2023-02-16 15:13:48 -06:00
James Stine
fedbc1a43b
Get rid of extra CR/LF in .synopsys_dc.setup file
2023-02-16 15:01:52 -06:00
David Harris
1e428303ab
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-16 11:55:28 -08:00
David Harris
b458bfb422
corrections to DC setup
2023-02-16 11:55:23 -08:00
David Harris
ba6eef1118
Merge pull request #85 from stineje/main
...
Fix bugs in scripts for synthesis and tsmc28 psyn
2023-02-16 11:54:21 -08:00
James Stine
004f8a970e
Fix bugs in scripts for synthesis and tsmc28 psyn
2023-02-16 13:38:26 -06:00
Ross Thompson
c8324b055b
dc shell setup.
2023-02-16 11:06:53 -06:00
Ross Thompson
27f6552315
keep this commit off of cvw.
2023-02-16 11:05:24 -06:00
David Harris
4e4208926c
Fix DC setup typos
2023-02-16 08:25:23 -08:00
David Harris
677bfcd511
Added check that SSTC_SUPPORTED is viable
2023-02-16 07:37:44 -08:00
David Harris
d83c61cafc
Added SSTC support for supervisor timer compare, but presently disable support. Reenable for rv32gc and rv64gc after tests pass.
2023-02-16 07:37:12 -08:00
David Harris
dd825f4918
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-16 06:44:08 -08:00
David Harris
a65b82b533
Merge pull request #83 from stineje/main
...
Update topo psyn stuff
2023-02-16 06:34:59 -08:00
James Stine
64826a1ec9
Update topo psyn stuff
2023-02-16 08:07:17 -06:00
Kevin Kim
465aad372a
added comments to zbc units
2023-02-15 17:42:32 -08:00
Kevin Kim
aad4d13603
zbc configurability and select mux
2023-02-15 17:39:37 -08:00
Kevin Kim
068ddc3e0d
controller forwards funct7
...
- started the bmu controll register
2023-02-15 17:38:12 -08:00
Kevin Kim
6ac54a180e
zbc and carry-less multiply work properly
2023-02-15 17:37:09 -08:00
Ross Thompson
4954f9df95
Merge pull request #82 from stineje/main
...
Update if-then-else for ram items
2023-02-15 18:16:44 -06:00
James Stine
744991bd5a
Update if-then-else for ram items
2023-02-15 18:12:12 -06:00
David Harris
e0e8af4612
Merge pull request #80 from ross144/main
...
Branch predictor acuracy fixes caused by last two weeks optimazations"
2023-02-15 09:39:26 -08:00
Kevin Kim
cf8392cbd8
continued ZBC integration into ALU
2023-02-15 09:35:07 -08:00
Ross Thompson
69472b8145
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-15 11:29:39 -06:00
Ross Thompson
9c6ca3601a
Merge branch 'main' of github.com:ross144/cvw
2023-02-15 11:28:50 -06:00
Ross Thompson
3aa26808fb
Merge pull request #79 from eroom1966/add-coverage
...
add files to support coverage
2023-02-15 11:18:25 -06:00
Kevin Kim
5426dd6184
added ALUResult Signal
2023-02-15 09:13:10 -08:00
David Harris
ffbe15fba6
Ignore new tests from lab
2023-02-15 06:43:00 -08:00
David Harris
4414173e7a
Debug test case update
2023-02-15 06:42:38 -08:00
David Harris
c1d4b0eb14
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-15 06:39:17 -08:00
David Harris
736ff6614a
Commented config mode of synthesis makefile
2023-02-15 06:39:10 -08:00
eroom1966
0ac99d2233
add files to support coverage
2023-02-15 11:13:50 +00:00
Kevin Kim
9cec59ea2c
controller passes funct7 from decode to execute
2023-02-14 16:06:10 -08:00
Kevin Kim
70f2dd701c
git
2023-02-14 16:03:26 -08:00
Kevin Kim
9728e00dfd
Merge branch 'tmp' into main
2023-02-14 13:12:57 -08:00
Kevin Kim
85c2ed8d34
removed unncessary stuff
2023-02-14 13:07:03 -08:00
Kevin Kim
8e371864e4
reverted back to I tests working
2023-02-14 13:06:31 -08:00
Ross Thompson
61d4040184
Merge pull request #77 from kevindkim723/patch-1
...
fixed typo in LZC
2023-02-14 13:20:55 -06:00
Kevin Kim
405bbcc6a4
added critical rsync command to python script and builds I-ext tests
...
-rsync copies the stuff from riscof_work to work/riscv-arch-test
-
2023-02-14 10:40:29 -08:00
Kevin Kim
fd46e0080c
added ALU result select mux for B instructions
2023-02-13 17:38:00 -08:00
Kevin Kim
84ca2cab9c
controller handles bclr
2023-02-13 16:57:05 -08:00
Ross Thompson
094b307724
Merge branch 'main' of github.com:ross144/cvw
2023-02-13 18:54:07 -06:00
Ross Thompson
9c9acc0055
Updated gshare (no speculation) to have better performance.
2023-02-13 18:52:52 -06:00
Kevin Kim
29abec2409
Shadd instructions pass tests
2023-02-13 16:36:17 -08:00
Ross Thompson
33d2bf84f8
More fixeds to global history.
2023-02-13 18:08:51 -06:00
Ross Thompson
a579bbcdd1
Fixed global history predictor.
2023-02-13 18:08:13 -06:00
Ross Thompson
bbc6095260
Updated global history predictor.
2023-02-13 18:07:32 -06:00
Ross Thompson
9f25b53b36
Fixed bug in basic gshare implementation. Should be a better comparison to the speculative versions now.
2023-02-13 17:57:05 -06:00
Ross Thompson
b298a8afc5
Created copy of gshare. I think there may be a simpler implementation.
2023-02-13 17:29:51 -06:00
Ross Thompson
a80dbd3aec
Further branch predictor improvements.
2023-02-13 17:23:56 -06:00
Ross Thompson
717cba270c
Partial improvement.
2023-02-13 17:10:24 -06:00
Ross Thompson
f4af38a004
Hacked commit. Fixes the gshare bugs introduced last week.
...
Need to recover the good changes in the next commit.
2023-02-13 16:14:17 -06:00
Kevin Kim
27223a05e2
ALU lint fixes
2023-02-13 14:01:51 -08:00
Kevin Kim
29d03dbfc7
ALU configurability changes
...
-stuff that was ZBA supported was in ZBB so I changed that
2023-02-13 14:00:06 -08:00
Kevin Kim
12911440d0
edited controller so that add.uw passes tests
2023-02-13 13:49:46 -08:00
Kevin Kim
7eb41058c7
alu add.uw needs w64 to be false
2023-02-13 13:49:35 -08:00
Ross Thompson
8968639aff
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-13 11:58:02 -06:00
Ross Thompson
1d74663f42
Partial fix for gshare bugs from the last two weeks.
2023-02-13 11:57:25 -06:00
Ross Thompson
58749a8c57
Removed another bit from btb class.
2023-02-12 11:33:43 -06:00
Kevin Kim
31787c456b
simulation runs-- clmul doesn't pass lint with xor tree
2023-02-11 21:22:33 -08:00
Kevin Kim
5f08322e99
lint fixes
2023-02-11 21:13:10 -08:00
Kevin Kim
6a7fe6352e
zbb, zbs, cnt lint fixes
2023-02-11 20:41:52 -08:00
Kevin Kim
61b46e0639
fixed byte unit lints
2023-02-11 20:25:34 -08:00
Kevin Kim
fb99bdab82
fixed lints in cnt
2023-02-11 20:22:42 -08:00
Kevin Kim
c59dfc1e30
fixed typo in LZC
2023-02-11 19:59:03 -08:00
Kevin Kim
38087be3b7
popcnt passes lint
2023-02-11 19:19:38 -08:00
Kevin Kim
76bc1b5999
clmul passes lint
2023-02-11 19:16:13 -08:00
Kevin Kim
d7c540d047
edited rv64i convig to support bit manipulation
2023-02-11 12:14:00 -08:00
Kevin Kim
6d4f1dd928
updated python script to generate bash file
2023-02-11 11:08:11 -08:00
Kevin Kim
8d28839d72
changed python file to use WALLY env variable
2023-02-11 00:30:56 +00:00
Ross Thompson
1e0667db1d
More simplifications to the BP.
2023-02-10 17:09:35 -06:00
Ross Thompson
9c4da7381f
Experimental branch prediction optimization.
2023-02-10 15:45:56 -06:00
Kip Macsai-Goren
a7237baa87
fixed small errors to get regression to run with bit manip supported.
2023-02-10 10:37:06 -08:00
Kip Macsai-Goren
f9d934e5ae
Added necessary files to make bit make and run bit manipulation tests as part of regression
2023-02-10 10:35:19 -08:00
Kip Macsai-Goren
f91d74896a
Merge remote-tracking branch 'upstream/main' into main
2023-02-10 10:01:14 -08:00
David Harris
005ca7ae98
Merge pull request #76 from ross144/main
...
Simplified branch predictor
2023-02-10 09:00:44 -08:00
Ross Thompson
9c2e0de672
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-10 10:38:39 -06:00
Ross Thompson
c229f0064e
Modified branch predictor to use InstrValidE and InstrValidD rather than the more complex InstrClassE | WrongClassE logic.
2023-02-10 10:33:10 -06:00
Ross Thompson
c90727a25f
Added new features to branch predictor analysis script.
2023-02-10 09:07:06 -06:00
Ross Thompson
282ffd1313
RAS and RAS documentation now consistent.
2023-02-10 09:06:51 -06:00
David Harris
799bf20a6b
Merge pull request #75 from davidharrishmc/dev
...
E154 lab 2
2023-02-09 18:28:56 -08:00
David Harris
8ad5f2b181
Added RVTEST_CASE to testgen header
2023-02-09 18:25:24 -08:00
David Harris
51a792431f
Moved test generators
2023-02-09 18:24:48 -08:00
David Harris
a152bf94bb
Merge pull request #74 from davidharrishmc/dev
...
E154 lab 2 changes
2023-02-09 18:15:42 -08:00
David Harris
f2c7a489b2
Test gen header
2023-02-09 18:14:26 -08:00
Ross Thompson
faf7cd8c8a
Updated globalhistory predictor.
2023-02-09 14:48:02 -06:00
Ross Thompson
2b27842d64
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-09 14:28:20 -06:00
Kevin Kim
726722bec2
Include Funct7 in execute
...
- Modifed datapath to support funct7 in execute
- Modified controller to pass on Funct7
- all lints pass
2023-02-09 19:18:54 +00:00
Kevin Kim
847a4145f1
added W64 zbb input signal in alu
2023-02-09 19:07:22 +00:00
Kevin Kim
e4bfa4c548
modified zbb to account for cnt module change
2023-02-09 16:45:37 +00:00
Kevin Kim
ce9dca8aec
modified cnt for zbb to mux inputs
2023-02-09 16:45:22 +00:00
Ross Thompson
938e06d784
Merge branch 'main' of github.com:ross144/cvw
2023-02-08 18:25:16 -06:00
Ross Thompson
996bb289d3
Simplified branch predictor.
2023-02-08 18:24:38 -06:00
David Harris
7383fbd144
Removed unnecessary --enable-multilib from gcc build commands because --with-multilib-generator implies it
2023-02-08 13:02:21 -08:00
Kevin Kim
95ff9e91c5
moved files into bmu folder
2023-02-08 13:57:09 +00:00
Kip Macsai-Goren
0dad7bf114
Merge remote-tracking branch 'upstream/main' into main
2023-02-07 23:28:50 -08:00
David Harris
5bf709d7c3
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-07 16:49:58 -08:00
David Harris
bcd90bdb4e
Paths changed in latest GCC
2023-02-07 16:49:50 -08:00
David Harris
33fe29f262
Merge pull request #73 from mmasserfrye/main
...
corrected feature (elimination) sweep, changed default freqs, plotting
2023-02-07 16:44:20 -08:00
David Harris
b22a025db4
Merge pull request #72 from ross144/main
...
Fixed a preformance bug in the branch predictor.
2023-02-07 16:43:29 -08:00
David Harris
32e38a7d95
Update README.md
...
gcc seems to have changed its path to executables
2023-02-07 16:35:44 -08:00
Ross Thompson
920bd40822
fpga constraints updates
2023-02-07 15:22:14 -06:00
Madeleine Masser-Frye
3d232139be
Merge branch 'openhwgroup:main' into main
2023-02-07 23:20:41 +02:00
Madeleine Masser-Frye
36cef9fff2
changed default freqs for synth sweeps
...
updated plotting to not overlap labels
2023-02-07 21:18:39 +00:00
Ross Thompson
c8085fead4
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-07 14:37:51 -06:00
Madeleine Masser-Frye
ed7e2e4ace
for feature sweep
...
now adding feature modifications on top of each other
2023-02-07 20:07:43 +00:00
Ross Thompson
7263fab4b1
Branch predictor cleanup.
2023-02-07 14:01:59 -06:00
David Harris
195e7c1a9c
Moved STATUS_FS_INT write to if statement to properly prioritize
2023-02-07 06:55:42 -08:00
David Harris
0712fa8f67
Disabled STATUS_FS at reset, fixing issue #71
2023-02-07 06:31:14 -08:00
Kip Macsai-Goren
7198592afc
fixed merge conflicts with removal of pipelined folder
2023-02-06 18:04:28 -08:00
David Harris
93637fd9cb
debug simulating, produing discrepancy
2023-02-06 16:47:56 -08:00
David Harris
d8b1ff7220
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-06 15:39:18 -08:00
David Harris
bb39570576
Fixed floating point crash in debug.S
2023-02-06 15:38:57 -08:00
David Harris
8b10d6ef4a
Merge pull request #69 from ross144/main
...
Fixed spilled instruction fetch ITLB miss interlock with load miss.
2023-02-06 15:37:02 -08:00
Ross Thompson
54a128491e
Fixed Bug 66.
...
If a load missed at the same time as a spilled instruction fetch with an ITLB miss in the second cache line, the HPTW did not wait for the load miss to finish.
2023-02-06 17:32:28 -06:00
David Harris
a09125cc36
Merge pull request #68 from ross144/main
...
Found a minor bug in hptw. hptw fsm had unreachable state.
2023-02-06 14:51:38 -08:00
Ross Thompson
a33c579e4b
Removed unreachable if branch in hptw next state logic.
2023-02-06 16:42:07 -06:00
Ross Thompson
0fa89ed844
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-06 16:35:20 -06:00
Ross Thompson
ccc9f31c75
Updated imperas git repo to use a different hash.
2023-02-06 16:35:03 -06:00
Ross Thompson
e3a971ce38
Merge branch 'main' of github.com:ross144/cvw
2023-02-06 16:34:28 -06:00
Kevin Kim
e24ee03355
modified shifter to configure for Zbb and handle rotates
...
- alu handles rotates
2023-02-06 17:55:37 +00:00
David Harris
136779563c
Merge pull request #67 from eroom1966/main
...
Add RVVI Address size to configure MMU operations
2023-02-06 08:01:28 -08:00
eroom1966
3910e90b54
remove dead code for ignoring fflags/fcsr
2023-02-06 15:53:29 +00:00
eroom1966
8705df1136
remove leading space
2023-02-06 14:01:05 +00:00
eroom1966
02b4f9c304
remerge changes
2023-02-06 13:43:12 +00:00
Kevin Kim
95c91e4661
zbb handles sign
2023-02-05 16:50:13 +00:00
Kevin Kim
2edcb9d842
began sign/zero extend
2023-02-05 16:37:32 +00:00
David Harris
71a0479b72
Merge pull request #63 from davidharrishmc/dev
...
Cleanup
2023-02-04 20:15:12 -08:00
David Harris
ff02bcf49f
changed USE_SRAM to modify wally-config rather than wally-shared
2023-02-04 20:13:24 -08:00
David Harris
103781923e
Parenthesized reduction operators to avoid DC lint
2023-02-04 18:49:47 -08:00
David Harris
54eafe6b9e
Removed redundant USE_SRAM from wally-shared.vh (already in wally-config.vh)
2023-02-04 18:49:25 -08:00
David Harris
7ce4f0da2d
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-04 18:32:31 -08:00
David Harris
5f294f47da
Merge pull request #64 from mmasserfrye/main
...
Now modifying dtim and irom even when USESRAM=1
2023-02-04 18:11:39 -08:00
Kevin Kim
25d9d52994
modularized byte instruction handling into byte.sv; passes lint
2023-02-05 01:04:39 +00:00
Kevin Kim
b40b1fab52
modularized count into cnt.sv; passes lint
2023-02-05 00:48:26 +00:00
Kevin Kim
0758a272f5
zbb handles popcnt and passes lint
2023-02-05 00:11:24 +00:00
Kevin Kim
5200ed3d2e
added population count in generic modules
2023-02-05 00:11:12 +00:00
Madeleine Masser-Frye
31530c85cb
Now modifying dtim and irom even when USESRAM=1
2023-02-05 00:02:50 +00:00
Kevin Kim
049f2e1e87
Started count instructions
2023-02-04 20:01:41 +00:00
David Harris
683c5b79c6
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-04 09:59:44 -08:00
David Harris
aba8b9a64b
More progress on debug.S, but it crashes in Spike
2023-02-04 09:59:22 -08:00
Ross Thompson
9c5c041122
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-04 11:28:26 -06:00
Ross Thompson
9b7a35e848
Updates to imperas test bench.
2023-02-04 11:28:23 -06:00
David Harris
1bb5599806
Developing debug test
2023-02-04 08:31:47 -08:00
David Harris
8e9183962d
Fixed license on testbench files
2023-02-04 08:19:20 -08:00
David Harris
0f7ea52f9b
Started making debug testcase
2023-02-04 08:18:55 -08:00
David Harris
88ef0503fd
Renamed wally-piplined.do to wally.do
2023-02-04 04:38:41 -08:00
David Harris
20a03808a1
Merge pull request #62 from davidharrishmc/dev
...
../synthDC/Makefile
2023-02-04 04:29:56 -08:00
David Harris
3f22b62601
Added license headers
2023-02-04 04:29:27 -08:00
David Harris
6b3d056713
../synthDC/Makefile
2023-02-04 04:19:09 -08:00
David Harris
e2061abda9
Merge pull request #53 from davidharrishmc/dev
...
Removed pipelined hierarchy and renamed regression to sim
2023-02-04 04:15:02 -08:00
David Harris
b13087e706
Fixed merge issues on synthDC PR
2023-02-04 04:13:40 -08:00
David Harris
e0915acad9
Improved illegal NaN-box detection and formatted fsgninj
2023-02-04 03:42:20 -08:00
David Harris
363b7f56a5
Merge pull request #61 from mmasserfrye/main
...
USE_SRAM parameter, makefile config cleaning
2023-02-04 03:28:44 -08:00
Madeleine Masser-Frye
7b0da71297
finishing the job of the last commit
2023-02-04 10:24:01 +00:00
Madeleine Masser-Frye
d9e1323e57
added use sram parameter, cleaned up config writing, added single synth functionality to wallySynth
2023-02-04 09:50:36 +00:00
David Harris
d4a7679926
Merge pull request #60 from ross144/main
...
Optimized PCLink logic.
2023-02-03 16:42:27 -08:00
Ross Thompson
c4a9354c13
Replaced PCLinkX registers with a +2/4 adder in the execution stage.
...
David and I estimate this is lower hardware cost.
2023-02-03 18:19:47 -06:00
Ross Thompson
6dcce8389a
Change CurrPtr to Ptr in RAS.
2023-02-03 17:40:20 -06:00
Kevin Kim
c694bde104
Merge branch 'main' of https://github.com/kipmacsaigoren/cvw
2023-02-03 18:39:26 +00:00
Kevin Kim
8c9107ffa4
arch32ba includes the 32i_m tests instead of 64
2023-02-03 17:40:02 +00:00
Kip Macsai-Goren
1096a4e2a5
Merge remote-tracking branch 'upstream/main' into main
2023-02-03 09:31:06 -08:00
David Harris
ed02d5a077
Removed redundant line from synthesis makefile
2023-02-03 08:36:51 -08:00
David Harris
d7ae05ae8e
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-03 08:36:11 -08:00
David Harris
398992db3b
Updated division radix test script with paths, but script is out of date for files it manipulates
2023-02-03 08:36:03 -08:00
Kevin Kim
c7ce9242cb
Merge branch 'main' of https://github.com/kipmacsaigoren/cvw
2023-02-03 16:00:36 +00:00
Kevin Kim
ac9e672e3e
ALU changes (ZBB)
...
- handles inverted operand instructions
- handles shift-and-add instructions
2023-02-03 16:00:32 +00:00
David Harris
02bdaf858c
Merge pull request #54 from ross144/main
...
Fixed issue #50 , itlb and dcache flush interlock
2023-02-03 06:30:30 -08:00
Ross Thompson
370931c1cd
Fixed bug #49 .
...
FFLAGS was updated while the pipeline was stalled.
Also I found serveral performance counters which had similar issues.
2023-02-03 00:39:26 -06:00
Ross Thompson
a4907b5d29
Lee Moore found another bug using imperas.
...
An ITLB miss concurrent with a d cache flush did not interlock.
The LSU should suppress the d cache flush until the hptw fills the missing tlb entry.
2023-02-02 23:52:21 -06:00
Kevin Kim
cb6e80a62b
Merge branch 'openhwgroup:main' into main
2023-02-02 21:41:55 -08:00
Kevin Kim
dd4f8c0712
Started Zbb
...
-Performs byte instructions (orc.b, rev8 (32/64))
2023-02-03 05:40:38 +00:00
Kevin Kim
ea98fdd7e4
zbs minor lint fix
2023-02-03 05:31:50 +00:00
Kevin Kim
441282f383
zbc initial done; passes lint.
...
clmul logic changes have not verified yet
2023-02-03 04:48:23 +00:00
David Harris
a9226e6f73
Removed lab1matrix solutions
2023-02-02 19:40:41 -08:00
Kevin Kim
34eb33a5e7
added bit reverse module, passes lint
2023-02-02 23:10:57 +00:00
David Harris
aae035226f
Merged with memories
2023-02-02 14:50:46 -08:00
David Harris
8078cafa27
Renamed regression to sim
2023-02-02 14:48:23 -08:00
David Harris
99d179dd3e
Removed pipelined level of hierarchy
2023-02-02 14:14:11 -08:00
David Harris
be618a0c34
Update README.md
2023-02-02 12:59:28 -08:00
Kevin Kim
1b6aca189d
started zbc
2023-02-02 20:11:11 +00:00
Kevin Kim
d498d2b2ff
zbs passes lint
2023-02-02 20:04:38 +00:00
James E. Stine
2a87495642
Merge pull request #52 from stineje/main
...
Forgot 1p ram for rv32gc : cache data 64x128 and cache tags 64x22
2023-02-02 13:55:17 -06:00
James Stine
bfa69ea2b3
Forgot 1p ram for rv32gc : cache data 64x128 and cache tags 64x22
2023-02-02 13:54:25 -06:00
Kevin Kim
c1ec17a7a6
clmul finished initial hdl; passes lint
2023-02-02 19:49:14 +00:00
David Harris
4c50166e56
Merge pull request #51 from stineje/main
...
Modify generic/mem for rv32gc ram2
2023-02-02 11:41:32 -08:00
James Stine
b66177fd87
Modify generic/mem for rv32gc ram2
2023-02-02 13:28:18 -06:00
Kevin Kim
655f5bbc5e
continued clmul unit
2023-02-02 18:54:33 +00:00
David Harris
551594e021
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-02-02 10:28:40 -08:00
Kevin Kim
bdd12bfec6
started clmul
2023-02-02 16:40:58 +00:00
David Harris
bc0ca38b2f
Merge pull request #48 from ross144/main
...
Fixed bug #47 , ecall and ebreak don't commit
2023-02-02 06:58:07 -08:00
Ross Thompson
091aadff0e
Merge branch 'main' of github.com:ross144/cvw
2023-02-02 08:52:48 -06:00
Ross Thompson
230888db8b
Fixed bug #47 discovered by Lee Moore.
...
ECALL and EBREAK do not commit their results.
2023-02-02 08:52:06 -06:00
Ross Thompson
d62a72a76f
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
2023-02-02 08:48:19 -06:00
Kip Macsai-Goren
0a6787026b
Merge remote-tracking branch 'upstream/main' into main
2023-02-01 21:31:57 -08:00
Kip Macsai-Goren
26e8b85111
added beginning of a ZBS instruction module to the ALU. Control signals still needed
2023-02-01 21:31:25 -08:00
Ross Thompson
a8afdf1741
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-01 19:24:10 -06:00
David Harris
93f57402df
Removed O2 from fir Makefile to be consistent with lab.
2023-02-01 15:43:52 -08:00
David Harris
c214a9e8fc
Merge pull request #45 from stineje/main
...
Update ram2 and other memories and associated wrappers
2023-02-01 15:06:30 -08:00
James Stine
6ce80b6b8a
Update ram2 and other memories and associated wrappers
2023-02-01 17:03:48 -06:00
Ross Thompson
0035579553
Minor branch predictor bug fix.
2023-02-01 10:59:38 -06:00
Ross Thompson
2a5b6408f2
Removed unused signal.
2023-02-01 10:27:58 -06:00
David Harris
129380db0b
Fixed typo in DC setup for memories
2023-02-01 05:49:30 -08:00
David Harris
c9b56f9acc
Only add memory libraries when targeting 28nm
2023-02-01 05:06:56 -08:00
David Harris
73b29e1f71
Merge pull request #36 from davidharrishmc/dev
...
RV32imc configuration
2023-02-01 04:44:36 -08:00
David Harris
0280942563
Fixed merge conflict to get synthesis working again
2023-02-01 04:43:57 -08:00
David Harris
838bb21077
Merge pull request #43 from mmasserfrye/main
...
ram size, bpred size, memories *SYNTH NOT FUNCTIONAL*
2023-02-01 04:13:37 -08:00
Ross Thompson
c3e3afe398
Minor change to btb.
2023-02-01 00:24:54 -06:00
Madeleine Masser-Frye
ad6d7eb5e2
added memories (not tested)
2023-02-01 06:08:27 +00:00
Ross Thompson
a9624b1413
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-02-01 00:01:14 -06:00
Madeleine Masser-Frye
c78adbb8e7
increased bpred size to (2^) 5
2023-02-01 05:51:31 +00:00
Madeleine Masser-Frye
02a1432c46
updated synth makefile to change all relevant
...
ram ranges to 1FF
2023-02-01 05:40:35 +00:00
Madeleine Masser-Frye
a8ed39ecbe
Merge branch 'main' of https://github.com/mmasserfrye/cvw
2023-02-01 05:23:04 +00:00
Ross Thompson
8a6eaa23cc
Minor optimization to btb.
2023-01-31 22:03:51 -06:00
David Harris
c666015c56
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-01-31 14:40:19 -08:00
David Harris
9270285f3a
Removed student solution to fir
2023-01-31 14:40:12 -08:00
David Harris
8d242d47dd
Merge pull request #42 from ross144/main
...
Scripts to run imperas
2023-01-31 14:31:10 -08:00
Ross Thompson
81b280576f
Updates to RAS.
2023-01-31 15:17:32 -06:00
Ross Thompson
fc2e3fed91
Simplified RAS.
2023-01-31 14:54:05 -06:00
Ross Thompson
a89f9dc92c
RAS file name was spelled wrong.
2023-01-31 14:35:05 -06:00
Ross Thompson
92fc532b82
Created scripts to install imperas and run a single test using imperas.
2023-01-31 13:51:05 -06:00
David Harris
ce98083ffd
Merge pull request #41 from ross144/main
...
Merged imperas branch into main. Remove old branch when pull request accepted.
2023-01-31 11:35:50 -08:00
Ross Thompson
d821105697
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-01-31 13:04:41 -06:00
Ross Thompson
c9c4f63c18
Fixed remaining bugs in the imperas merge.
2023-01-31 13:04:26 -06:00
Ross Thompson
026071e247
Merge branch 'imperas'
2023-01-31 12:46:22 -06:00
Ross Thompson
5a770f148c
Minor bug fix in gshare.
2023-01-31 10:45:32 -06:00
Ross Thompson
ad0a0f0d51
Renamed signals in RAS.
2023-01-31 10:44:11 -06:00
David Harris
e96ba254eb
Removed output delay in synthesis
2023-01-31 04:37:23 -08:00
Ross Thompson
0e3c77bed3
Found small bug in gshare.
2023-01-31 00:17:49 -06:00
Ross Thompson
939095615f
Fixed parameterization in testbench.
2023-01-31 00:11:01 -06:00
Ross Thompson
8feac6d242
Parameterized testbench branch predictor preload.
2023-01-31 00:08:11 -06:00
Ross Thompson
238c4d14a9
More branch predictor cleanup.
2023-01-30 23:55:52 -06:00
Ross Thompson
80f50f10d3
Improved signal names.
2023-01-30 23:51:04 -06:00
Ross Thompson
a15889e0aa
Major cleanup of branch predictor.
2023-01-30 23:37:34 -06:00
Ross Thompson
42828e6ec4
Simplified gshare.
2023-01-30 19:27:18 -06:00
Ross Thompson
4cbefd9834
Minor gshare optimization.
2023-01-30 18:13:12 -06:00
David Harris
1121ff0fa7
Restored top-level modules without import statements
2023-01-30 12:54:40 -08:00
David Harris
4a4be04530
Moved out version of wally using package because synthesis isn't working yet
2023-01-30 12:48:52 -08:00
David Harris
a2f66313ea
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-01-30 11:00:51 -08:00
David Harris
f15e7ce380
Updated Questa to 2022.4_2.
2023-01-30 11:00:41 -08:00
Madeleine Masser-Frye
5625996f44
Merged conflicts in fixing synthesis config/hdl writing ( #40 )
...
* Fixed writing config files for synth sweeps
* cleaned up comments
* Fixed copying hdl subdirectories and referencing the correct config files for modified features
* improved readability for synth scripts
* cleans run directory post run and leaves copy of wally-config
2023-01-30 20:54:19 +02:00
Madeleine Masser-Frye
03c13b6034
Merge branch 'main' of https://github.com/mmasserfrye/cvw
2023-01-30 18:51:05 +00:00
David Harris
d38f4a040c
Merge pull request #38 from ross144/main
...
Imperas found bug with hptw
2023-01-30 10:10:41 -08:00
Ross Thompson
cc48cdc97b
Imperas found a real bug in virtual memory.
...
If the instruction address spilled across two pages and the second page misses the TLB,
the HPTW received a tlb miss at the address of the first page rather than the second.
After the walk the TLB was updated with the PTE from the first page at the address of the
second page.
Example bug
Instruction PCF = 0x2ffe
First page in 0x2ffe and second page in 0x3000.
The second page misses the TLB and generates HPTW request at 0x2ffe rather than 0x3000.
TLB is updated with PTE from 0x2ffe at 0x3000.
2023-01-30 11:47:51 -06:00
Ross Thompson
f667843ce9
Merge branch 'main' of github.com:ross144/cvw
2023-01-29 22:39:53 -06:00
Ross Thompson
6040a45698
optimized branch predictor by removing unnecessary registers.
2023-01-29 22:39:37 -06:00
Ross Thompson
50ea630d31
Merge branch 'main' of https://github.com/openhwgroup/cvw into main
2023-01-29 22:19:10 -06:00
David Harris
173c6b635c
Moved WALLY-status-fp-enabled tests from a to priv suites
2023-01-29 17:19:53 -08:00
David Harris
e7883775f3
Moved shared constants into per-processor config and removed wally-constants
2023-01-29 15:55:37 -08:00
Ross Thompson
392716a608
Updated global history branch predictcor with the gshare improvements.
2023-01-29 16:26:44 -06:00
David Harris
234860d4e5
Merged PR#37 branch predictor
2023-01-29 14:25:28 -08:00
David Harris
9d44c59a38
Removed unused TESTSBP parameter
2023-01-29 14:19:24 -08:00
David Harris
d7c5f4089f
Merge pull request #37 from ross144/main
...
Major update to branch predictor
2023-01-29 14:18:31 -08:00
Ross Thompson
a9a7054e2f
Merge branch 'main' of https://github.com/openhwgroup/cvw
...
This merges the branch predictor improvements into the main repo.
2023-01-29 15:24:20 -06:00
Ross Thompson
d6ae1156d0
gshare cleanup.
2023-01-29 15:07:45 -06:00
Ross Thompson
ef874f3409
Gshare cleanup.
2023-01-29 15:06:35 -06:00
Ross Thompson
74b4f78099
Found bug in gshare.
2023-01-29 15:03:25 -06:00
Ross Thompson
1a418d9fe2
Updated benchmark parsing script.
2023-01-29 14:17:45 -06:00
David Harris
ec675f01a7
Missing files related to rv32imc config
2023-01-29 11:40:08 -08:00
David Harris
d1afc2f14a
Fixed configuration of ram to use macro when depth is corret
2023-01-29 11:35:17 -08:00
David Harris
be2dc6a774
Removed unused wally-harvard.do script
2023-01-29 11:34:35 -08:00
David Harris
5d2a48d5d8
Converted rv32ic to rv32imc
2023-01-29 11:33:54 -08:00
David Harris
5c83c6fb02
Merge pull request #34 from stineje/main
...
Update Appendix D + wrapped memories
2023-01-29 07:10:35 -08:00
Ross Thompson
e1fd5925b0
Fixed typo in testbench branch logger.
2023-01-29 01:00:52 -06:00
Ross Thompson
f62fbedbe8
Fixed another bug with the branch logger.
2023-01-29 00:59:59 -06:00
Ross Thompson
8e73f6b467
Fixed bug in the branch logger.
2023-01-29 00:58:50 -06:00
Ross Thompson
65a31381da
Updated testbench for branch logger.
2023-01-29 00:56:11 -06:00
Ross Thompson
1044c290c2
Fixed bug with the btb's valid bit not beind held on a stall.
2023-01-29 00:49:23 -06:00
Ross Thompson
f93eaeef8e
Fixed another bug with the speculative gshare with instruction class prediction.
2023-01-29 00:33:40 -06:00
James E. Stine
c05ccc88d4
Merge pull request #33 from davidharrishmc/dev
...
Dev
2023-01-28 23:22:27 -06:00
David Harris
99d12a5ef0
Removed unused BPRED file referenes from fpga config
2023-01-28 20:22:36 -08:00
David Harris
481cb8bad0
Renamed BPTYPE to BPRED_TYPE
2023-01-28 20:06:12 -08:00
David Harris
94daedeed6
Renamed DCACHE to DCACHE_SUPPORTED and ICACHE to ICACHE_SUPPORTED
2023-01-28 18:52:00 -08:00
David Harris
e4e7e827d6
Renamed BUS to BUS_SUPPORTED
2023-01-28 18:35:53 -08:00
David Harris
8b34f5ac98
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-01-28 18:18:53 -08:00
David Harris
5a8cbc65a7
Merge pull request #35 from kipmacsaigoren/main
...
Updated test library to fix test dependence on BP status
2023-01-28 18:18:34 -08:00
David Harris
a0b4e7fb24
Config cleanup and renamed BPRED_ENABLED to BPRED_SUPPORTED
2023-01-28 18:17:42 -08:00
David Harris
33143e5958
Fixed typo in ram2p1r1wbe_1024x69 and renamed for consistency
2023-01-28 18:07:33 -08:00
David Harris
1bb1fc7604
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-01-28 17:55:08 -08:00
James Stine
704542d813
Update Appendix D + wrapped memories
2023-01-28 19:46:43 -06:00
James Stine
a1d892703c
Modified changes as follows
...
* Add docs directory for Docker including Dockerfile
* Change to synthesis script to include fpu stuff
* Add wrappers for IP (may need some cleanup but will cleanup shortly)
2023-01-28 19:33:00 -06:00
Kip Macsai-Goren
95b26c49b9
Fixed regression test dependance on bp status by adding handling of UART tx empty interrupts.
2023-01-28 17:29:35 -08:00
Ross Thompson
f6aafd6bad
Fixed bug with the new csr.
2023-01-28 17:56:56 -06:00
Ross Thompson
6371d91b37
Added another performance counter to track overall branch miss-predictions.
2023-01-28 17:50:46 -06:00
Ross Thompson
57deb68fb3
Found an issue where the btb was not forwarding the valid bit!
2023-01-28 17:00:50 -06:00
Ross Thompson
6d9c463893
Possible workign instruction class prediction repair.
2023-01-28 16:42:19 -06:00
Ross Thompson
8a277f6b75
Possible fix for speculative gshare.
2023-01-28 16:14:19 -06:00
David Harris
08124b917f
Comment cleanup in subcachelineread
2023-01-28 11:00:05 -08:00
David Harris
0f5df3340f
removed unused memory model
2023-01-28 10:58:36 -08:00
David Harris
f9cfa7cdc2
Updated cvw to be consistent with configs
2023-01-28 10:58:02 -08:00
David Harris
9eb1938d41
Removed DEISGN_COMPILER configuration paramter
2023-01-28 10:51:39 -08:00
David Harris
0e53c4427e
Added libppa.pl to characterize liberty files
2023-01-28 10:22:59 -08:00
Madeleine Masser-Frye
55fa29397e
cleans run directory post run and leaves copy of wally-config
2023-01-28 01:59:08 +00:00
Madeleine Masser-Frye
2ca764e16a
improved readability for synth scripts
2023-01-28 01:51:34 +00:00
Madeleine Masser-Frye
878bb0d365
Fixed copying hdl subdirectories and referencing the correct config files for modified features
2023-01-28 01:00:29 +00:00
David Harris
6603cd9e09
Removed unneeded lint directive from core
2023-01-27 15:48:30 -08:00
David Harris
eaab1bfad4
Use CVW configuration in top-level
2023-01-27 15:47:36 -08:00
David Harris
3fea392875
Removed unused BMU, added CVW configuration
2023-01-27 15:47:15 -08:00
David Harris
ef83309ea9
Added missing PLIC_GPIO_ID to two config files
2023-01-27 15:23:32 -08:00
David Harris
d78f8d76cc
Fixed license header for config files to SolderPad
2023-01-27 15:17:17 -08:00
Ross Thompson
6d75e3c22b
Clarified gshare bp.
2023-01-27 16:40:20 -06:00
David Harris
3906e706fd
Removed integer from localparams
2023-01-27 14:40:06 -08:00
David Harris
5a81a26c9e
Removed int/integer from parameters)
2023-01-27 14:27:04 -08:00
Ross Thompson
857004c3a3
Removed pessimistic x propagation issue for wally32priv test in the branch predictor.
2023-01-27 15:28:31 -06:00
Ross Thompson
c1ae7c068e
Found issue with branch predictor.
2023-01-27 13:13:55 -06:00
David Harris
4b196736a5
Renamed ram2p1rw1be to match modeule name
2023-01-27 09:54:50 -08:00
David Harris
468d4b4afe
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-01-27 09:51:55 -08:00
Ross Thompson
a212960352
Very hacky. But I think gshare is now correct with respect to repair on instruction class miss prediction.
2023-01-27 11:34:45 -06:00
David Harris
99f967b6f6
Modified testgen to not produce reference outputs
2023-01-27 07:25:40 -08:00
David Harris
71d1c8fc68
Removed unused WALLY test references
2023-01-27 07:25:04 -08:00
David Harris
ae7d23380a
Removed unused reference files
2023-01-27 07:21:55 -08:00
David Harris
4fe790bc17
Merge pull request #32 from davidharrishmc/dev
...
Dev
2023-01-27 06:16:36 -08:00
David Harris
7839fe2402
Removed f tests from rv32e
2023-01-27 06:15:20 -08:00
David Harris
b2c8c37077
Update riscof makefile to use rv32gc config
2023-01-27 05:57:58 -08:00
David Harris
237e3a620f
Removed suggestion about make allclean
2023-01-27 05:57:05 -08:00
David Harris
8362e7466f
Renamed spike_rv32imc_isa.yaml to rv32gc to reflect cases tested
2023-01-27 05:56:49 -08:00
David Harris
767cfdc8a5
Fixed typo in bpred preventing compiling
2023-01-27 05:55:53 -08:00
David Harris
c2139eba93
renamed brpred to bpred
2023-01-27 05:55:31 -08:00
David Harris
453f9e47c4
Merge pull request #30 from davidharrishmc/dev
...
cleanup
2023-01-26 15:00:23 -08:00
David Harris
52626d78d5
Removed old link to imperas-riscv-tests
2023-01-26 14:53:25 -08:00
David Harris
947713f1f3
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-01-26 14:52:25 -08:00
David Harris
14be6fdbd9
Added DWARF symbols for QEMU simulation
2023-01-26 14:51:39 -08:00
Ross Thompson
4fa2dcc2a5
Changed the performance counters to track different data.
...
Now rather than tracking jump(r) we track jump(r) and taken branches.
2023-01-26 13:21:28 -06:00
Ross Thompson
6025bbc9ae
Fixed another bug with the compressed instruction class decode.
2023-01-26 12:19:33 -06:00
Ross Thompson
a8d5ba1ea4
Fixed compressed branch class decode.
2023-01-26 11:07:47 -06:00
Ross Thompson
3577220625
Improved no class prediction mode.
2023-01-26 10:54:43 -06:00
Ross Thompson
19a964325a
Modified the RAS to correctly repair itself.
2023-01-25 23:33:03 -06:00
Madeleine Masser-Frye
9c8b1be6e5
Fixed config file writing for synthesis ( #29 )
...
* Fixed writing config files for synth sweeps
* cleaned up comments
2023-01-26 06:58:15 +02:00
Madeleine Masser-Frye
33bf0b5a56
cleaned up comments
2023-01-26 04:53:43 +00:00
Madeleine Masser-Frye
e7458c2061
Fixed writing config files for synth sweeps
2023-01-26 04:50:14 +00:00
Ross Thompson
3dc441ff8c
Intermediate commit. Passes regression tests, but RAS is not correct.
2023-01-25 19:39:18 -06:00
Ross Thompson
63617b56cf
Fixed typos.
2023-01-25 18:51:09 -06:00
Ross Thompson
3b4d49a358
RAS is now compliant with our header and documentation guide.
2023-01-25 17:18:07 -06:00
Ross Thompson
5da1aeeef1
Improved RAS again.
2023-01-25 17:10:52 -06:00
Ross Thompson
2f0e40402b
Improved RAS.
2023-01-25 17:06:25 -06:00
Mike Thompson
b7ed53e030
Merge pull request #28 from ross144/main
...
Consolidated SRAMs and removed unused versions
2023-01-25 23:58:03 +01:00
Ross Thompson
724ae13cc2
More branch predictor improvements.
2023-01-25 16:03:02 -06:00
Ross Thompson
fd1f7d4d34
Cleaned up branch predictor.
2023-01-25 15:29:55 -06:00
Ross Thompson
56a24d02e8
Fixed subtle bug in btb.
2023-01-25 15:16:53 -06:00
Ross Thompson
16142eca59
Added logic to forward btb prediction results.
2023-01-25 13:02:20 -06:00
Ross Thompson
4550966678
More btb cleanup.
2023-01-25 12:14:18 -06:00
Ross Thompson
fa0939c252
Updated gitflow.
2023-01-25 12:09:02 -06:00
Ross Thompson
40b4811d2b
Found minor bug in gshare.
2023-01-25 12:08:54 -06:00
Ross Thompson
afdcfeb93b
BTB cleanup.
2023-01-25 12:05:13 -06:00
Ross Thompson
7e1363bfad
Optomized gshare.
2023-01-25 11:41:16 -06:00
Ross Thompson
b931110f2d
Renamed file missed from last commit.
2023-01-25 10:17:43 -06:00
Ross Thompson
ad6f7041b4
Fixed wrong header on optgshare.sv. Somehow it still had the old MIT license.
...
Renamed ram2p1rwbefix.sv to ram2p1rwbe.sv
2023-01-25 10:14:30 -06:00
David Harris
cbf45152fd
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-01-25 06:03:02 -08:00
Ross Thompson
5434d355c1
Merge branch 'main' of https://github.com/openhwgroup/cvw
2023-01-24 17:33:14 -06:00
Ross Thompson
56369f7641
Removed old versions of gshare.
2023-01-24 17:26:54 -06:00
Ross Thompson
1acbdaeca6
Removed the old two port ram and replaced it with the fixed version.
...
The fixed version is renamed to ram2p1r1wb.sv
2023-01-24 17:25:16 -06:00
Ross Thompson
1170dc7250
Moved and ranamed btb to btb.sv
...
Fixed btb to use the fixed port 2 sram.
2023-01-24 17:19:51 -06:00
Mike Thompson
0bce9563e9
Merge pull request #27 from ross144/main
...
Reduced complexity of the git fork flow documentation.
2023-01-24 23:18:25 +01:00
Ross Thompson
7d1109fc24
Partial BTB cleanup.
2023-01-24 16:12:35 -06:00
Ross Thompson
2157970adf
Moved branch predictor files into separate sub-directory.
2023-01-24 16:00:27 -06:00
Ross Thompson
271fa27d1e
Updated git flow documentation.
2023-01-24 13:24:44 -06:00
David Harris
490ca23c87
Merge remote-tracking branch 'upstream/main' into dev
2023-01-24 09:40:07 -08:00
David Harris
4b62d0e464
Merge pull request #26 from ross144/main
...
Clarified the git fork work flow.
2023-01-24 09:34:52 -08:00
Ross Thompson
97ad92e63b
Merge remote-tracking branch 'upstream/main'
2023-01-24 11:28:59 -06:00
Ross Thompson
853dbdfef9
Clarified the git fork work flow.
2023-01-24 11:28:41 -06:00
David Harris
f28b0e5c1a
bpred input spacing cleanup
2023-01-24 06:14:31 -08:00
David Harris
5233117568
bpred tab cleanup
2023-01-24 05:42:34 -08:00
David Harris
1ca3e43637
Merge pull request #25 from ross144/main
...
Moved ebufsmarb into its own module.
2023-01-24 04:45:51 -08:00
Ross Thompson
5494ee2159
Moved ebufsmarb into its own module.
2023-01-23 23:10:10 -06:00
Ross Thompson
a4d5ccc4d6
Added comments about needing move ebufsm into a new module.
2023-01-23 22:03:49 -06:00
David Harris
38e7357b9d
Merge pull request #24 from ross144/main
...
Added comments to serveral files to cleanup code.
2023-01-23 16:57:56 -08:00
David Harris
040661167c
Update README.md
2023-01-23 16:39:47 -08:00
Ross Thompson
1396d40f77
Merge branch 'main' of github.com:ross144/cvw
2023-01-23 18:07:36 -06:00
Ross Thompson
e2869925ac
Updated gitflow instructions.
2023-01-23 18:05:07 -06:00
Ross Thompson
81138547f4
Updated gitflow instructions.
2023-01-23 17:51:46 -06:00
Ross Thompson
e6e4c7957c
Merge remote-tracking branch 'upstream/main'
2023-01-23 17:49:52 -06:00
Ross Thompson
1439ff02c7
Added comments to lrsc module.
2023-01-23 17:49:47 -06:00
Ross Thompson
e9f435bbda
Oups fixed bug from the last commit.
2023-01-23 17:38:30 -06:00
David Harris
21a65fc7c4
Merge pull request #23 from stineje/main
...
This adds the Dockerfile for those who might be interested in buildin…
2023-01-23 15:32:21 -08:00
James Stine
b0f6582d26
This adds the Dockerfile for those who might be interested in building a docker container for Wally
2023-01-23 17:29:58 -06:00
David Harris
223f95cd32
Merge pull request #22 from ross144/main
...
Added file descripting the fork/pull request workflow.
2023-01-23 15:29:38 -08:00
Ross Thompson
af6899472d
Another round of cleanup in the LSU.
2023-01-23 17:27:39 -06:00
David Harris
15f33f70ce
Update README.md
2023-01-23 15:25:26 -08:00
Ross Thompson
a60a1756a4
Added file to describe instructions on basic git fork work flow commands.
2023-01-23 15:46:11 -06:00
Ross Thompson
ea6c8dbc9c
Merge remote-tracking branch 'upstream/main'
2023-01-23 15:35:16 -06:00
Ross Thompson
8cfe365c86
Added details about github cli to README.
2023-01-23 15:30:22 -06:00
Mike Thompson
0ce5318156
Merge pull request #21 from ross144/main
...
Test merge request via github cli. Please accept.
2023-01-23 22:29:58 +01:00
Ross Thompson
0f365dec20
Added github cli (gh) to install script.
2023-01-23 15:17:12 -06:00
Ross Thompson
8a4637bd31
Merge remote-tracking branch 'upstream/main'
2023-01-23 14:37:01 -06:00
David Harris
0a3c978d3c
installation instructions
2023-01-23 12:30:23 -08:00
David Harris
dbcdfe24d7
Added sudo to sysadmin install directions
2023-01-23 12:24:11 -08:00
David Harris
1fb3a47c4b
installation instructions
2023-01-23 12:14:56 -08:00
David Harris
095643a740
installation instructions
2023-01-23 12:13:49 -08:00
David Harris
51069d00aa
installation instructions
2023-01-23 12:13:26 -08:00
David Harris
4289c9eb50
installation instructions
2023-01-23 12:12:14 -08:00
David Harris
8259a36da9
Merge pull request #20 from davidharrishmc/dev
...
Dev
2023-01-23 12:06:57 -08:00
David Harris
fc6cf1f198
formatting
2023-01-23 10:54:06 -08:00
Ross Thompson
0530d3fca3
Test commit. please merge.
2023-01-23 12:53:31 -06:00
David Harris
30d7e7c5b2
Merge branch 'main' of https://github.com/openhwgroup/cvw into dev
2023-01-23 10:51:43 -08:00
David Harris
2d7f39672a
Repo cleanup
2023-01-23 10:37:33 -08:00
David Harris
e437e5e2a4
Merge pull request #19 from davidharrishmc/dev
...
Readme changes
2023-01-23 05:09:08 -08:00
David Harris
28e9ead9e8
Updated README
2023-01-23 05:06:27 -08:00
David Harris
58a973ec97
Refactored setup QUESTA and SNPS paths, and removed troublesome bit manipulation test cases
2023-01-23 05:00:11 -08:00
David Harris
79d041a135
Switched to fork new cvw repo
2023-01-23 04:15:31 -08:00
Mike Thompson
93633b294d
Merge pull request #18 from ross144/main
...
Addex SPDX header to scripts
2023-01-22 21:03:39 +01:00
Ross Thompson
e9a861031f
Merge branch 'openhwgroup:main' into main
2023-01-22 13:05:20 -06:00
Ross Thompson
1b6d5cbbc9
Added SPDX header to scripts.
2023-01-22 13:04:31 -06:00
Mike Thompson
4969aaa55d
Merge pull request #16 from ross144/main
...
Readme and installation instruction improvements
2023-01-22 19:59:11 +01:00
Ross Thompson
19966033f1
Added SPDX header to install script.
2023-01-22 12:53:23 -06:00
Ross Thompson
5b705039a6
Added block diagram to readme.
2023-01-21 22:47:47 -06:00
Ross Thompson
a4e822fb69
More changes to the readme formatting.
2023-01-21 22:22:39 -06:00
Ross Thompson
4c4f71c27c
Readme formatting.
2023-01-21 22:20:53 -06:00
Ross Thompson
3df5f477c7
Merge Install script into the README.md
2023-01-21 22:16:47 -06:00
Ross Thompson
cb41b921b7
Found minor bug in install script.
2023-01-21 22:14:58 -06:00
Ross Thompson
285cbfe530
Defaults to 1 job compiles.
2023-01-21 22:00:26 -06:00
Ross Thompson
6ae2f23280
Updated install readme.
2023-01-21 21:50:24 -06:00
Ross Thompson
5c799fa578
Added argument to install script for alternate install directory.
2023-01-21 21:31:47 -06:00
Ross Thompson
365a6e9f7a
Added check for the odd Ubuntu 22.04 python2/3 issue.
2023-01-21 21:29:37 -06:00
Ross Thompson
f82e7474d9
More improvements to the tool install script.
2023-01-21 21:23:23 -06:00
Ross Thompson
b460b780aa
Working toolchain install script for ubuntu.
2023-01-21 20:52:58 -06:00
Ross Thompson
70005c4c48
fixes to installer script
2023-01-21 18:00:14 -06:00
Ross Thompson
59b770ad15
fixes to install script.
2023-01-21 17:32:44 -06:00
Ross Thompson
a748cc1acb
Updates to tool install script
2023-01-21 17:24:21 -06:00
Ross Thompson
b28895b662
Created a tool chain install script for ubuntu 22.04.
2023-01-21 14:03:30 -06:00
Mike Thompson
1fed4b16cc
Merge pull request #15 from ross144/main
...
Updates to FPGA synthesis flow and removal of debug markers
2023-01-21 10:31:21 -05:00
Ross Thompson
64eaaa670c
More fixes for the debug2.xdc constraints.
2023-01-20 20:48:19 -06:00
Ross Thompson
6f0b184677
Merge remote-tracking branch 'upstream/main'
2023-01-20 20:30:44 -06:00
Ross Thompson
ee4c78c7fa
More fixes to fpga ila debugger.
2023-01-20 20:28:21 -06:00
Ross Thompson
3effeb42c3
Fixed fpga constraints.
2023-01-20 20:18:04 -06:00
Ross Thompson
442de3f5b7
Updated fpga constraints.
2023-01-20 20:16:33 -06:00
Ross Thompson
a4822c9f54
Added license and comments to new script.
2023-01-20 19:50:33 -06:00
Ross Thompson
b709c224ab
Updated ignore to exclude copied files.
2023-01-20 19:47:33 -06:00
Ross Thompson
e06237ad92
Removed mark_debug vivado directive from source code.
...
Created script to add mark_debug directive to source code based on a file which contains locations and signal which need them for the FPGA debugger.
Files output to temporary directory.
2023-01-20 19:43:18 -06:00
Ross Thompson
626bcd8608
Removed mark_debug from all source code.
2023-01-20 18:47:36 -06:00
davidharrishmc
06661d1d16
Merge pull request #14 from ross144/main
...
Test commit.
2023-01-20 15:31:25 -08:00
Ross Thompson
9d8fed1d35
Test commit.
2023-01-20 17:27:09 -06:00
David Harris
45218863af
test
2023-01-20 15:23:38 -08:00
David Harris
3d13683c07
Continued framework for B instructions
2023-01-20 14:27:13 -08:00
David Harris
a968ae2f66
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2023-01-20 14:19:10 -08:00
David Harris
e87c2b2724
Started adding bit manipulation unit
2023-01-20 14:19:07 -08:00
Ross Thompson
b25b93df11
Repaired fpga debugger.
2023-01-20 15:26:52 -06:00
Ross Thompson
0123776037
Updated figure cache references.
2023-01-20 15:01:54 -06:00
Ross Thompson
3e1a54e80a
Removed SDC from repo due to copy right issue.
...
Modified fpga build flow to reference it outside the repo.
2023-01-20 14:57:06 -06:00
Ross Thompson
2e9b5f9ae4
Formatting.
2023-01-20 13:13:05 -06:00
Ross Thompson
bcadbd7104
Formatting.
2023-01-20 13:09:42 -06:00
Ross Thompson
ecceea177a
Formatting.
2023-01-20 13:05:10 -06:00
Ross Thompson
3d202ed2fd
Reformatting cachefsm.
2023-01-20 12:49:55 -06:00
Ross Thompson
d3df8e062e
Formatting.
2023-01-20 12:41:57 -06:00
Ross Thompson
1ecf4e4cc9
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2023-01-20 12:37:12 -06:00
Ross Thompson
74ab386735
More cleanup and formatting.
2023-01-20 12:34:40 -06:00
David Harris
26cb45e240
renamed comparator module
2023-01-20 10:13:47 -08:00
David Harris
64080ac098
Updated HMC Synopysys license manager
2023-01-20 10:13:20 -08:00
Ross Thompson
340e1797ea
More cleanup and formatting.
2023-01-20 12:09:21 -06:00
Ross Thompson
c5169a3e39
Formatting.
2023-01-20 11:51:10 -06:00
Ross Thompson
5b5a615e4a
Integrated the missing zifence tests into the regression test.
2023-01-20 10:34:49 -06:00
Ross Thompson
29f45d6203
Imperas found a bug with the Fence.I instruction.
...
If a fence.i directly followed a store miss, the d$ would release Stall during the cache line write.
Then transition to ReadHold. This cause the d$ flush to go high while in ReadHold. The solution is
to ensure the cache continues to assert Stall while in WriteLine state.
There was a second issue also. The D$ flush asserted FlushD which flushed the I$ invalidate.
Finally the third issue was CacheEn from the FSM needs to be asserted on an InvalidateCache.
2023-01-20 10:17:21 -06:00
Ross Thompson
2cca457f14
Imperas found a bug with the Fence.I instruction.
...
If a fence.i directly followed a store miss, the d$ would release Stall during the cache line write.
Then transition to ReadHold. This cause the d$ flush to go high while in ReadHold. The solution is
to ensure the cache continues to assert Stall while in WriteLine state.
There was a second issue also. The D$ flush asserted FlushD which flushed the I$ invalidate.
Finally the third issue was CacheEn from the FSM needs to be asserted on an InvalidateCache.
2023-01-20 09:41:18 -06:00
Ross Thompson
ce7d92f2dc
Merge branch 'imperas' of github.com:davidharrishmc/riscv-wally into imperas
2023-01-20 08:38:08 -06:00
Lee Moore
5de1801100
Merge pull request #13 from eroom1966/imperas
...
Merge pull request #5 from davidharrishmc/imperas
2023-01-20 14:34:38 +00:00
Lee Moore
bc0497687c
Merge pull request #5 from davidharrishmc/imperas
...
Merge pull request #12 from eroom1966/imperas
2023-01-20 14:33:21 +00:00
Lee Moore
97619eee87
Merge pull request #12 from eroom1966/imperas
...
Imperas
2023-01-20 14:32:57 +00:00
Lee Moore
9dd771933b
Merge pull request #4 from davidharrishmc/imperas
...
Merge pull request #11 from eroom1966/imperas
2023-01-20 14:32:21 +00:00
eroom1966
9fe515c78e
Merge branch 'imperas' of https://github.com/eroom1966/riscv-wally into imperas
2023-01-20 14:31:17 +00:00
Ross Thompson
da4eec7e0e
Improved comment.
2023-01-19 17:41:57 -06:00
Ross Thompson
117ff8163b
ram uses always rather than always_ff due to modelsim issue.
2023-01-19 17:41:15 -06:00
Ross Thompson
23ab178192
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2023-01-19 17:28:53 -06:00
Ross Thompson
928e06d4fa
Added comment about needed changes in BTB.
2023-01-19 17:28:00 -06:00
Ross Thompson
50fdb7cae9
Rough draft of Install guide.
2023-01-19 17:27:45 -06:00
David Harris
569a016efa
Removed study versions from comparator
2023-01-19 15:13:35 -08:00
David Harris
0488723db9
Moved unused study files to studies directory
2023-01-19 15:13:11 -08:00
David Harris
9df5fdbd89
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2023-01-19 14:47:54 -08:00
David Harris
25b607566c
RAM declaration cleanup:
2023-01-19 14:47:51 -08:00
Ross Thompson
b027921902
Formatting.
2023-01-19 15:06:37 -06:00
Ross Thompson
ea96c2375f
Formatting.
2023-01-19 14:18:46 -06:00
Ross Thompson
e380fd71ff
Formatting and name changes.
2023-01-19 14:16:29 -06:00
Lee Moore
74610d0aa8
Merge pull request #11 from eroom1966/imperas
...
Imperas
2023-01-19 14:56:44 +00:00
Lee Moore
81d6517732
Merge branch 'davidharrishmc:imperas' into imperas
2023-01-19 14:56:18 +00:00
eroom1966
d9d5b99218
update
2023-01-19 13:29:46 +00:00
eroom1966
a34a1e6238
correct the HASH
2023-01-19 10:41:11 +00:00
Lee Moore
165975d853
Merge pull request #10 from eroom1966/imperas
...
Imperas
2023-01-19 10:28:27 +00:00
Lee Moore
ec84ce98ab
Merge pull request #3 from davidharrishmc/imperas
...
Imperas
2023-01-19 10:27:52 +00:00
eroom1966
b53cb9eb20
customer commands
2023-01-19 10:20:55 +00:00
Ross Thompson
47fdff6488
Formatting.
2023-01-18 19:26:20 -06:00
Ross Thompson
49daa736b1
Formatting spillsupport.
2023-01-18 19:25:54 -06:00
Ross Thompson
cd2f7c6208
Formatting.
2023-01-18 19:11:30 -06:00
Ross Thompson
7289fa8d44
Reduced complexity of spill logic by ensuring the irom outputs offset instrutions on a spill.
2023-01-18 19:10:34 -06:00
Ross Thompson
026d09b79b
More IROM cleanup.
2023-01-18 18:47:02 -06:00
Ross Thompson
19e4d0f7cd
Cleanup dtim and irom.
2023-01-18 18:44:30 -06:00
Ross Thompson
997dda11a8
Added comments to decompress.sv. May want to consider additional documentation.
2023-01-18 18:26:51 -06:00
Ross Thompson
fb234d506d
Formatted subword* and bytemask.
2023-01-18 18:20:22 -06:00
Ross Thompson
469efa61af
Formatting.
2023-01-18 18:17:48 -06:00
Ross Thompson
cbf46f417a
Formatting.
2023-01-18 18:16:56 -06:00
Ross Thompson
22eee73a45
Formatting.
2023-01-18 18:16:20 -06:00
Ross Thompson
2048edb7a0
Renamed signals in amoalu.
2023-01-18 18:13:18 -06:00
Ross Thompson
40c0e67930
Formatting.
2023-01-18 18:05:11 -06:00
Ross Thompson
2622f5dfb8
Formatting.
2023-01-18 17:56:47 -06:00
Ross Thompson
a6b14eb9ee
Formatting.
2023-01-18 17:49:19 -06:00
Ross Thompson
0b244e289c
Formating.
2023-01-18 17:30:08 -06:00
Ross Thompson
affca27ec4
Formatting
2023-01-18 17:14:37 -06:00
Ross Thompson
58a07399a2
Formatting
2023-01-18 17:03:45 -06:00
Ross Thompson
fc5424fa62
Formatting
2023-01-18 16:58:03 -06:00
Ross Thompson
607c64e0ee
Formating.
2023-01-18 16:52:46 -06:00
Ross Thompson
c34acab1d7
Formating.
2023-01-18 16:47:40 -06:00
Ross Thompson
3fc11f506f
Merge branch 'imperas' of github.com:davidharrishmc/riscv-wally into imperas
2023-01-18 16:04:02 -06:00
Ross Thompson
e900914d3a
Modified to clone imperas via git rather than https.
2023-01-18 15:49:42 -06:00
David Harris
915987c524
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2023-01-18 13:07:03 -08:00
David Harris
331ef80d0f
removed fma directory, improved plic comments
2023-01-18 13:06:54 -08:00
Lee Moore
ac935b1040
Merge pull request #9 from eroom1966/imperas
...
Partial fix for misaligned LD/ST
2023-01-18 17:12:19 +00:00
eroom1966
7c0cad148d
Partial fix for misaligned LD/ST
2023-01-18 17:11:39 +00:00
Lee Moore
3f04892cde
Merge pull request #8 from eroom1966/imperas
...
changes made with Ross
2023-01-18 16:48:22 +00:00
eroom1966
2e4e5f9c61
changes made with Ross
2023-01-18 16:46:48 +00:00
ross144
1d868eb31e
Merge pull request #7 from eroom1966/imperas
...
Imperas
2023-01-18 09:27:39 -06:00
sarah-harris
789fc0e493
Minor fixes in datapath.sv and ieu.sv (comments, putting signals in correct grouping)
2023-01-18 07:26:08 -08:00
eroom1966
a5a5b7a408
add im flags for compressed disass
2023-01-18 13:37:28 +00:00
eroom1966
df4419dea2
remove volatile for FFLAGS and FCSR
2023-01-18 13:33:57 +00:00
eroom1966
c18942bd0b
refer to correct path
2023-01-18 13:26:07 +00:00
eroom1966
eb67abdcda
ignore external
2023-01-18 13:22:32 +00:00
eroom1966
538940e269
update for private copy of Imperas
2023-01-18 13:19:14 +00:00
Lee Moore
ab996cb370
Merge pull request #2 from davidharrishmc/imperas
...
Imperas
2023-01-18 09:14:07 +00:00
Ross Thompson
a929e53576
More comments added to abhfsm.
2023-01-17 22:58:06 -06:00
Ross Thompson
4bfabc4136
formating ahbinterface.
2023-01-17 22:54:42 -06:00
Ross Thompson
4b47598138
Moved amoalu to lsu.
2023-01-17 22:45:46 -06:00
Ross Thompson
8f4f17a4c8
Added commenets and formating to abhcachefsm and abhcacheinterface.
2023-01-17 22:22:23 -06:00
Ross Thompson
f146a01344
Cleaned up ahbcacheinterface.
2023-01-17 22:13:56 -06:00
Ross Thompson
d6c80d937c
Formatting progress.
2023-01-17 22:10:31 -06:00
Ross Thompson
c75a164f46
Added comments to dtim and ahbcacheinterface.
2023-01-17 21:56:55 -06:00
Ross Thompson
97661a023a
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2023-01-17 21:54:55 -06:00
Ross Thompson
b30c13a188
Fixed the rvvi CSR write enable not synchronized with a valid instruction in the Writeback stage.
2023-01-17 18:24:46 -06:00
Ross Thompson
aa942feedc
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2023-01-17 15:44:44 -06:00
David Harris
c73bea83cd
Clean up warnings from Questa
2023-01-17 13:43:39 -08:00
Ross Thompson
caff6e788c
Somehow the imperas files spilled into the main branch.
2023-01-17 15:39:34 -06:00
Ross Thompson
c6e366b86e
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2023-01-17 14:50:45 -06:00
ross144
9b62047f4b
Merge pull request #2 from eroom1966/imperas
...
Imperas
2023-01-17 14:50:05 -06:00
David Harris
555fee94fa
IEU comment cleanup
2023-01-17 10:51:44 -08:00
David Harris
77766a6dac
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2023-01-17 06:47:06 -08:00
David Harris
c8d77d785c
IEU signal comment cleanup
2023-01-17 06:47:02 -08:00
sarah-harris
4e9a7a6403
Changing signal name to ImmExtD/E to match figures
...
Changing signal name:
ExtImmD/E -> ImmExtD/E
to match figures.
2023-01-17 06:33:58 -08:00
David Harris
15866cb11d
pipelined/src/ieu/ieu.sv
2023-01-17 06:08:26 -08:00
sarah-harris
cb153d74d9
IEU cleanup
...
IEU cleanup
2023-01-17 06:02:26 -08:00
eroom1966
8caa93ce4d
refactor all rvvi into single initial block
2023-01-17 13:01:01 +00:00
eroom1966
f4e7e54abe
Code refactor and addition of rvvi interface
2023-01-17 12:47:38 +00:00
Lee Moore
aea9cc1a75
Merge pull request #1 from davidharrishmc/imperas
...
Imperas
2023-01-17 09:23:41 +00:00
Ross Thompson
c65becbae5
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2023-01-16 14:03:05 -06:00
Ross Thompson
7c4eaa1ca6
Found a potential issue with mstatush when XLEN = 64.
2023-01-16 13:57:28 -06:00
Ross Thompson
fabe13bdce
Fixed issue with rvvi tracer so it reports call csr changes, not just instrutions which write the CSRs.
2023-01-16 13:35:06 -06:00
davidharrishmc
e1b0d43ff1
Update README.md
2023-01-16 07:29:39 -08:00
David Harris
f93b7cfda7
Removed Imperas tests from regression
2023-01-16 07:01:07 -08:00
David Harris
12e12e464a
Makefile and setup cleanup
2023-01-15 20:27:12 -08:00
David Harris
7f68a55b8c
Clean up tabs
2023-01-15 18:23:09 -08:00
Ross Thompson
8a0e38fd92
Fixed bug with gshare repair from branch class miss prediction.
2023-01-15 14:39:48 -06:00
David Harris
56dac4be7d
cache cleanup
2023-01-14 19:43:29 -08:00
David Harris
08fca1c517
ebu cleanup
2023-01-14 19:29:45 -08:00
David Harris
a6d8511a2e
ebu cleanup
2023-01-14 19:19:34 -08:00
David Harris
91afe5522b
generic cleanup
2023-01-14 19:02:38 -08:00
David Harris
9c79078be1
generic cleanup
2023-01-14 18:56:46 -08:00
David Harris
93b0286934
mmu cleanup
2023-01-14 18:27:53 -08:00
David Harris
9d51abc2e1
mmu cleanup
2023-01-14 18:20:47 -08:00
David Harris
ee1b4fe221
mmu cleanup
2023-01-14 18:14:38 -08:00
David Harris
7c5548a39c
mmu cleanup
2023-01-14 17:49:10 -08:00
David Harris
939bf3f148
mmu cleanup
2023-01-14 17:35:21 -08:00
David Harris
697a8d8f50
uncore cleanup
2023-01-14 17:21:07 -08:00
David Harris
a4c753635e
uncore cleanup
2023-01-14 17:09:11 -08:00
David Harris
a2b455d7b5
uncore cleanup
2023-01-14 17:07:36 -08:00
David Harris
f16267ddbc
uncore cleanup
2023-01-14 17:00:58 -08:00
David Harris
1ec42b9d50
sdc cleanup
2023-01-14 16:49:44 -08:00
David Harris
3ad4ae352c
uncore cleanup
2023-01-14 06:15:35 -08:00
David Harris
0c91505f41
Wallypipeliendcore/soc cleanup
2023-01-14 05:57:50 -08:00
David Harris
10f76dd7e6
csr & wally cleanup
2023-01-13 22:25:19 -08:00
David Harris
efe7e88258
csr cleanup
2023-01-13 22:12:06 -08:00
David Harris
90e7aa2d50
csr cleanup
2023-01-13 21:29:03 -08:00
David Harris
9526479782
csr cleanup
2023-01-13 21:25:55 -08:00
David Harris
c9c174de49
csr cleanup
2023-01-13 21:09:29 -08:00
David Harris
be236d9438
csr cleanup
2023-01-13 21:00:06 -08:00
David Harris
50415a0a12
csr cleanup
2023-01-13 20:55:21 -08:00
David Harris
25d8566694
csr comments
2023-01-13 20:49:34 -08:00
David Harris
543d9d379b
trap comments
2023-01-13 19:50:44 -08:00
David Harris
b613722617
trap comments
2023-01-13 19:44:38 -08:00
David Harris
74d3e0aa40
privileged comments
2023-01-13 17:57:38 -08:00
Ross Thompson
4c78bcade8
Possible improvement to gshare.
2023-01-13 18:50:01 -06:00
Ross Thompson
76a9e7d963
Merge branch 'rastemp'
2023-01-13 18:09:50 -06:00
Ross Thompson
886e4e2935
Partial fix to RAS prediction accurracy.
2023-01-13 18:05:47 -06:00
Ross Thompson
4aa2b5737f
Signal renames for ras.
2023-01-13 15:56:10 -06:00
Ross Thompson
0e215ac3c6
Removed 1 bit from instruction classification.
2023-01-13 15:19:53 -06:00
Ross Thompson
de7f3b14fc
More branch predictor cleanup.
...
Found small bug. The decode stage was using the predicted instruction class rather than the decoded instruction class.
2023-01-13 12:57:18 -06:00
Ross Thompson
cf608ee45f
Possible optimization of gshare.
...
I don't believe the Writeback stage ghr is needed.
2023-01-13 12:39:29 -06:00
Ross Thompson
ea7c447218
Possible minor enhancement to gshare.
2023-01-13 12:32:39 -06:00
Ross Thompson
55169fa9b0
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2023-01-13 10:26:07 -06:00
Ross Thompson
395b7a5b32
Nearly complete RVVI tracer.
...
Missing PMP registers and performance counters other than MCYCLE and MINSTRET.
2023-01-12 18:43:39 -06:00
Ross Thompson
ef4c684336
Added supervisor mode registers to tracer.
2023-01-12 17:04:41 -06:00
Ross Thompson
9917be817c
Added M CSRs to the CSRArray.
2023-01-12 16:51:51 -06:00
Ross Thompson
a68773eba1
added machine csr to logger.
2023-01-12 16:35:19 -06:00
Ross Thompson
2e622c9860
Added support to print the gprs.
2023-01-12 16:09:30 -06:00
Ross Thompson
4733b787f8
rvvi trace is coming alone nicely.
2023-01-12 14:46:31 -06:00
Ross Thompson
3cc37e3f12
Completely stripped down imperas simulation.
...
run with
vsim -c -do "do wally-pipelined-imperas.do rv64gc"
2023-01-12 12:48:38 -06:00
Ross Thompson
2f2f3d6da5
Stripped out all signature checking.
...
Removed multiple tests loop.
Only runs 1 test now.
2023-01-12 12:45:44 -06:00
Ross Thompson
5ad0bacf5b
Created separate imperas testbench.
...
Resolved logger issue with the duplicated instructions after commit.
2023-01-12 12:07:07 -06:00
Ross Thompson
94f24d3f58
Added instruction logger.
2023-01-12 10:09:34 -06:00
David Harris
fdcb1f08ce
Privileged unit formatting
2023-01-12 07:41:30 -08:00
David Harris
e58879f2d0
restructured code for lint error related to CORRSHIFTSZ
2023-01-12 07:34:37 -08:00
David Harris
93233fbb45
Restructured negateintres to avoid lint error, but one still shows on shiftcorrection
2023-01-12 07:28:52 -08:00
David Harris
1ad6ac1393
MDU comment cleanup
2023-01-12 07:15:14 -08:00
David Harris
768c1bc703
Header comments
2023-01-12 04:35:44 -08:00
Ross Thompson
b96a53df0a
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2023-01-11 23:02:14 -06:00
Katherine Parry
77a982c977
cleaned up all FPU files except for division
2023-01-11 22:02:30 -06:00
David Harris
67d474995e
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2023-01-11 19:48:37 -08:00
David Harris
bfd47ff7f5
Removed unused wallypipelinedsocwrapper
2023-01-11 19:48:34 -08:00
Ross Thompson
e0867b1840
Completed review of LSU.
2023-01-11 19:06:03 -06:00
Ross Thompson
aba1df9abf
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2023-01-11 18:52:49 -06:00
Ross Thompson
318ceba34d
Improved LSU formating.
2023-01-11 18:52:46 -06:00
sarah-harris
796a189451
privilege unit -> privileged unit in ifu.sv
...
privilege unit -> privileged unit in ifu.sv
2023-01-11 16:33:08 -08:00
Ross Thompson
ad22a9ea02
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2023-01-11 17:26:11 -06:00
sarah-harris
203cc164d9
Added Sarah.Harris@unlv.edu to alu.sv
...
Added Sarah.Harris@unlv.edu to alu.sv
2023-01-11 15:20:41 -08:00
Ross Thompson
b60e9730a7
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2023-01-11 17:15:49 -06:00
David Harris
8c6ddcc15b
changed name to CORE-V-WALLY
2023-01-11 15:15:08 -08:00
Ross Thompson
bccef3b39c
Updated header for LSU.
2023-01-11 17:15:07 -06:00
David Harris
9a057ef5cd
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2023-01-11 15:13:58 -08:00
Ross Thompson
a8931e0211
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2023-01-11 17:09:23 -06:00
Katherine Parry
4556839960
fixed typo bug in fpu
2023-01-11 17:07:02 -06:00
Ross Thompson
6999b4562e
Updated branch predictor.
2023-01-11 17:00:45 -06:00
David Harris
3ea4dd4898
Changed Wally to CORE-V Wally
2023-01-11 14:03:44 -08:00
David Harris
99ff78b902
FPU cleanup
2023-01-11 12:27:00 -08:00
David Harris
4ff2627a50
fpu cleanup
2023-01-11 12:18:06 -08:00
David Harris
d1bfdddd8c
Rename FP and FPU to F in signal names
2023-01-11 11:46:36 -08:00
David Harris
15026f61f7
FPU comments
2023-01-11 11:31:28 -08:00
David Harris
654abcde61
Replaced MDUE with IntDivE in FDIVSQRT
2023-01-11 11:06:37 -08:00
Ross Thompson
1df9c5f13e
Optimized gshare.
2023-01-10 18:12:48 -06:00
David Harris
f6987fab8c
Switched to XZeroE from NumerZeroE in square root preprocessor
2023-01-10 12:37:49 -08:00
David Harris
739c2c8322
Changed MIT license to Solderpad License
2023-01-10 11:35:20 -08:00
David Harris
446b5fa83f
Division constant cleanup
2023-01-10 11:14:59 -08:00
David Harris
4a34007b49
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2023-01-09 13:04:37 -08:00
David Harris
b2ec52c94d
Changed DIVN from NF+3 to NF+2, cleanup
2023-01-09 13:04:34 -08:00
Ross Thompson
f330d877ac
Added folded gshare predictor with k=16 and depth=10.
2023-01-09 14:41:03 -06:00
David Harris
48f31d4b24
Divider constant cleanup, made CORRSHIFTSZ consistent
2023-01-09 12:34:19 -08:00
Ross Thompson
302a2e0116
Added better branch predictor to fpga config.
2023-01-09 13:46:30 -06:00
Ross Thompson
ca55bd8444
Fixed branch predictor.
2023-01-09 13:45:49 -06:00
Ross Thompson
6a616617d1
Restored to default configuration.
2023-01-09 00:21:45 -06:00
Ross Thompson
816006ac1b
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2023-01-09 00:18:11 -06:00
Ross Thompson
6326e6984c
Might have actually solved the gshare bug.
2023-01-09 00:11:25 -06:00
Ross Thompson
6cbce9672d
Possibly working speculative global history.
2023-01-08 23:46:53 -06:00
Ross Thompson
0eda4b1ab3
core part of global history works now. forwarding is still broken.
2023-01-08 23:35:02 -06:00
David Harris
d7e420e350
Cache code cleanup
2023-01-07 15:49:18 -08:00
David Harris
dc12291ee3
Cache code cleanup
2023-01-07 15:46:23 -08:00
David Harris
057183bcc9
Cache code cleanup
2023-01-07 15:44:44 -08:00
David Harris
0a25f18a07
Cache code cleanup
2023-01-07 15:42:08 -08:00
David Harris
0ad707f1a5
Cache code cleanup
2023-01-07 15:39:13 -08:00
Ross Thompson
bf08c57ab0
Added branch outcome logger to testbench
2023-01-07 13:16:57 -06:00
Ross Thompson
475becb414
Removed unused rv64BP config.
2023-01-07 12:17:40 -06:00
David Harris
f541a277a8
Remove unused CACHE_ENABLED parameter
2023-01-07 09:57:24 -08:00
David Harris
33c910f952
Remove unused signals
2023-01-07 06:26:29 -08:00
David Harris
dc526c92bd
Removed unused signals
2023-01-07 06:06:54 -08:00
David Harris
01525399cc
Removed unused signals; added check for atomic in pmachecker
2023-01-07 05:59:56 -08:00
David Harris
21b9f50851
Remove conditional from inside decompress module
2023-01-07 05:51:47 -08:00
David Harris
8506f120e1
Remove unused signals
2023-01-07 05:46:22 -08:00
David Harris
44352ced64
Branch logic simplification and remove unused signals
2023-01-07 05:42:34 -08:00
David Harris
d8f0425467
vclean working; started removing unused signals
2023-01-07 05:34:58 -08:00
David Harris
f4cb652a00
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2023-01-07 04:49:40 -08:00
David Harris
dfddca3ed3
Started vclean script to clean Verilog
2023-01-07 04:49:38 -08:00
David Harris
2188ff879b
code cleanup
2023-01-07 04:49:25 -08:00
Ross Thompson
c1c4024b4b
Fancy plot for branch predictor.
2023-01-06 18:04:49 -06:00
Ross Thompson
f119b492bb
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2023-01-06 15:18:13 -06:00
Ross Thompson
7223d1e05c
Added python script to post process performance counter metrics.
2023-01-06 15:15:54 -06:00
Katherine Parry
1bcb1725f5
renamed alot of signals in fpu
2023-01-06 10:35:23 -06:00
David Harris
c260354817
Removed unused UARCH configuration entries
2023-01-06 05:11:14 -08:00
Ross Thompson
01d4e942d0
Added more missing files.
2023-01-06 00:12:08 -06:00
Ross Thompson
8a5916ce66
Addd missing file.
2023-01-06 00:09:18 -06:00
Ross Thompson
09bb733088
Added code to print out performance counters at end of each test.
2023-01-05 18:00:11 -06:00
Ross Thompson
78e441fb38
More branch predictor cleanup.
2023-01-05 17:19:27 -06:00
Ross Thompson
65dd86b726
Keep around the old gshare.
2023-01-05 15:55:46 -06:00
Ross Thompson
2224679694
Added speculative gshare.
2023-01-05 14:18:00 -06:00
Ross Thompson
9d03109f34
Officially added global history with speculation to types of branch predictors.
2023-01-05 14:04:09 -06:00
Ross Thompson
0737efc86c
More branch predictor cleanup.
2023-01-05 13:36:51 -06:00
Ross Thompson
808c106504
Two bit predictor cleanup.
2023-01-05 13:27:22 -06:00
Ross Thompson
14ebf2360d
Simplified gshare.
2023-01-04 23:51:09 -06:00
Ross Thompson
0eceeeeeaa
Simiplified global history branch predictor.
2023-01-04 23:41:55 -06:00
davidharrishmc
4a2ed0142f
Update decompress.sv
...
typo
2023-01-04 17:01:26 -08:00
Katherine Parry
970318f881
forgot the normshift module
2023-01-04 10:48:19 -06:00
Katherine Parry
95a1ddd636
some commenting fixes, converter optimizations, and moves normshift into postproc
2023-01-03 15:55:30 -06:00
David Harris
43f45c62a6
Made Q4.k interface to fgen2/4 consistent
2023-01-01 15:06:32 -08:00
David Harris
3d5acc7c2a
Simplified intdiv selection logic to muxes
2023-01-01 14:04:37 -08:00
David Harris
f8af51e07b
Handle special case Int Div/Rem of |A| < |B| in a single cycle
2023-01-01 13:54:01 -08:00
David Harris
f567577ede
Fixed radix 2 k = 1 lint
2022-12-31 07:01:50 -08:00
David Harris
c1689b54bb
Fixed backward mux in fdivsqrtstage2
2022-12-31 06:55:20 -08:00
David Harris
7c7d40ad63
Broken commit starting to address radix 2 issues
2022-12-31 06:19:15 -08:00
David Harris
50af122909
Moved shared config so wally-shared only has values a user would alter
2022-12-31 05:51:42 -08:00
David Harris
3ac62c74c2
fdivsqrt post processing cleanup
2022-12-31 05:45:15 -08:00
David Harris
99b244c8c4
fdivsqrt post processing major simplification
2022-12-31 05:42:51 -08:00
David Harris
f587933fb5
fdivsqrt post processing simplification
2022-12-31 05:37:48 -08:00
David Harris
5edc925dff
fdivsqrt post processing simplification
2022-12-31 05:36:09 -08:00
David Harris
6832b9d9f6
config file, comment, postproc cleanup
2022-12-31 05:20:56 -08:00
Cedar Turek
0836d4d4f0
removed unnecessary values from shared config. unbroke division
2022-12-30 21:26:55 -08:00
Cedar Turek
e994f26d6d
simplified initU and UM logic, separated radix2/4 logic
2022-12-30 18:57:07 -08:00
Cedar Turek
fb9a0c797f
various formatting fixes and comments
2022-12-30 18:41:40 -08:00
Cedar Turek
286e43807a
added mux to intdiv result
2022-12-30 18:06:35 -08:00
Cedar Turek
ae447e42df
removed unnecessary mdue gating
2022-12-30 17:53:06 -08:00
Cedar Turek
ba90d868db
took out broken muxes
2022-12-30 15:13:52 -08:00
Cedar Turek
545a3ff363
various cleanup
2022-12-30 14:31:23 -08:00
Cedar Turek
3170130c94
Code cleanup
2022-12-30 14:13:33 -08:00
Ross Thompson
9d5213b71e
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2022-12-30 15:04:54 -06:00
Ross Thompson
a538d4316f
Cleanup spill logic.
2022-12-30 14:59:51 -06:00
Ross Thompson
fdd7b68501
Signal renames for PC*NextF and SelSpillNextF.
2022-12-30 14:21:20 -06:00
Cedar Turek
158e23b5a5
commented complicated step/right shift calc
2022-12-30 12:03:10 -08:00
Cedar Turek
eef1d4dd66
comment cleaning
2022-12-30 11:11:34 -08:00
Cedar Turek
7e5cafeda3
Described internal signals of fdivsqrt top
2022-12-30 11:01:02 -08:00
Cedar Turek
8cb4a7a69a
Commented fdivsqrt module
2022-12-30 10:52:25 -08:00
Ross Thompson
ed536dd142
Removed da page fault from spill logic.
2022-12-30 12:51:56 -06:00
Cedar Turek
3115df9380
Begin commenting divsqrt
2022-12-30 10:43:02 -08:00
Ross Thompson
80a135f101
Spill only occurs on 32-bit instructions.
2022-12-30 12:41:25 -06:00
Katherine Parry
aca6f0d4e6
removed ethe second bit from fma alignment shift
2022-12-30 12:07:44 -06:00
Ross Thompson
b1f68a1d85
Modified IROM to return the correct offset when unaligned.
2022-12-30 11:48:40 -06:00
Katherine Parry
3adb8efb2b
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-12-30 11:02:04 -06:00
Ross Thompson
6cf5a99b5d
Updated constraints to remove DivBusyE.
2022-12-30 10:51:35 -06:00
Katherine Parry
5844a596a3
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-12-30 09:56:35 -06:00
David Harris
58218dbdd1
continued simplifying integer division special cases
2022-12-30 07:40:28 -08:00
David Harris
bd16fd79d4
started simplifying integer division special cases
2022-12-30 07:34:26 -08:00
David Harris
30dc45c764
removed duplicate quotient mux
2022-12-30 07:17:38 -08:00
David Harris
61230c967c
simplified sign handling mux
2022-12-30 07:10:47 -08:00
David Harris
ba976d66e4
Radix 4 divsqrt
2022-12-30 07:01:44 -08:00
David Harris
3c475455d9
Clean up sqrt preproc
2022-12-30 07:00:48 -08:00
David Harris
4fb8396867
Clean up sqrt initialization mux
2022-12-30 06:55:20 -08:00
David Harris
dba3ffe767
Reduced size of preproc right shift
2022-12-30 06:47:40 -08:00
David Harris
0e9bd5dab5
fdivsqrtpreproc shift simplification
2022-12-30 06:45:51 -08:00
David Harris
e9b314f902
fdiv cleanup, reduce number of rv32f fma_b15 tests being run to speed up regression
2022-12-30 06:40:25 -08:00
David Harris
ef37070eee
Fixed register timing failure on SpecialCaseM in fdivsqrt
2022-12-29 21:09:23 -08:00
Ross Thompson
872ff619e3
Fixed problems with changes to ram2p.
2022-12-29 17:13:48 -06:00
Ross Thompson
c725b5534a
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2022-12-29 17:07:53 -06:00
Ross Thompson
654b10894c
Re-enabled the branch predictor in rv64gc.
2022-12-29 17:07:50 -06:00
Katherine Parry
90eb4fc1f1
minor optimizations and renaming
2022-12-29 15:54:17 -06:00
Katherine Parry
89e8df084a
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-12-29 12:37:51 -06:00
David Harris
776f4714af
Clean up names and comments in divsqrt
2022-12-29 08:02:44 -08:00
David Harris
6664cb9db4
Factored out hardware unique to RV64 and to IDIV
2022-12-29 07:36:26 -08:00
Katherine Parry
1b4fa38510
one bitt removed from inital lignment shift
2022-12-28 17:46:53 -06:00
Alessandro Maiuolo
7c19665dea
added script in pipelined folder to run regressions with all radix/copies configurations
2022-12-28 07:32:35 -08:00
David Harris
7780b44973
fdivsqrtfsm conditional on IDIV (fixed typo)
2022-12-27 22:16:48 -08:00
David Harris
5ee44b7405
fdivsqrtfsm conditional on IDIV
2022-12-27 22:15:45 -08:00
David Harris
db933aa7e2
fdivsqrtfsm conditional on IDIV
2022-12-27 22:14:09 -08:00
Cedar Turek
ef360f0539
idiv passing radix 2, four copies
2022-12-27 22:11:18 -08:00
Cedar Turek
4ed2c6255c
idiv passing radix 2, four copies
2022-12-27 22:10:48 -08:00
David Harris
9964fc9ebe
Moved IDIV in fdivsqrtfms into generate block
2022-12-27 22:04:50 -08:00
David Harris
a832605658
Moved IDIV for postproc into generate block
2022-12-27 22:02:14 -08:00
David Harris
d59878a886
Moved IDIV_ON_FP into conditional block in fdivsqrtpreproc
2022-12-27 21:53:00 -08:00
Cedar Turek
a559abe554
Fixed cycles for multiple iterations. 2-copies radix 2 passing regression.
2022-12-27 21:34:27 -08:00
David Harris
665b545fd0
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-12-27 21:30:13 -08:00
David Harris
87abed6722
cleanup
2022-12-27 21:29:36 -08:00
David Harris
6cf73cdaee
Fixed floating Sqrt signal when floating point is disabled, causing REMU tohang during buildroot around 3.2M
2022-12-27 21:24:38 -08:00
David Harris
c08811357c
Renamed muldiv to mdu
2022-12-27 19:57:10 -08:00
Ross Thompson
a129e27502
signal name changes in ram2p.
2022-12-27 15:07:01 -06:00
Ross Thompson
66b2fbd836
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2022-12-27 15:06:25 -06:00
Ross Thompson
3f4b3a4159
Added about moving decompressed config generate.
2022-12-27 15:04:55 -06:00
David Harris
dfc0b5d1ad
Removed MDUE from unnecessary places in fdivsqrt
2022-12-27 10:42:40 -08:00
David Harris
4850d058b2
fdiv typo
2022-12-27 10:30:42 -08:00
David Harris
acc9498ae2
Made SqrtE only true on square root so gating with ~MDUE can be removed)
2022-12-27 10:27:07 -08:00
David Harris
e34b8139af
Check for non-negative W in int sign handling
2022-12-27 06:35:17 -08:00
Cedar Turek
f48b7d7ef9
fpu idiv working on all configs with 1 copy of radix 2!
2022-12-26 23:18:28 -08:00
Cedar Turek
0b14aa852d
fpu passing idiv tests on rv32gc 1 copy of radix 2!
2022-12-26 21:47:56 -08:00
Cedar Turek
bebaf08bed
took out otfc swap. updated postprocessing quotient/remainder logic for int div.
2022-12-26 21:03:56 -08:00
David Harris
c326a274ac
Fixed early termination for square root
2022-12-26 08:54:57 -08:00
David Harris
2de66e9eef
Moved fdivsqrtexpcalc to its own file
2022-12-26 08:45:43 -08:00
David Harris
a7204c9012
Removed unused DivSE from FPU
2022-12-26 07:29:19 -08:00
David Harris
fb0b2d4227
Moved floating-point tests earlier in Wally config
2022-12-25 22:31:20 -08:00
David Harris
cd47a7d781
testcount.pl script to count number of tests in each instruction
2022-12-25 22:28:58 -08:00
David Harris
7e77a39d32
Restored missing floating point load/store tests
2022-12-25 22:28:14 -08:00
David Harris
d627512d2b
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-12-25 20:12:55 -08:00
Ross Thompson
4f436dc7f0
Added missing assignment for no branch predictor mode.
2022-12-24 17:08:29 -06:00
David Harris
0cc2b0fcd2
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-12-24 12:24:38 -08:00
Ross Thompson
ded8f05602
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2022-12-24 14:24:25 -06:00
Ross Thompson
0d6ce1d459
Fixed bug with the performance counters not updating.
2022-12-24 14:24:17 -06:00
Ross Thompson
967d892088
Updated fpga constraints.
2022-12-24 10:21:16 -06:00
David Harris
10af4e4353
ALU cleanup
2022-12-24 07:18:35 -08:00
Alessandro Maiuolo
6740624f2d
added finish message to setup
2022-12-23 22:53:39 -08:00
cturek
cc6f219bdd
Added A Sign register. Fixed postprocessing logic for postinc and rem calculation.
2022-12-24 06:46:52 +00:00
Ross Thompson
b0d6c9616e
Minor optimizations.
2022-12-23 20:11:36 -06:00
Ross Thompson
6e9d1eb180
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-12-23 19:51:23 -06:00
Katherine Parry
4b50ffac91
reworked negitive sticky bit handeling in fma
2022-12-23 17:01:34 -06:00
Ross Thompson
6f9e21d61b
Improved comment.
2022-12-23 15:13:15 -06:00
Ross Thompson
a2de53aeeb
Reverted to naming IFUStallD to IFUStallF and LSUStallW to LSUStallM. These are generated in the F and M stage.
...
Generate WFIStallM in the privileged unit rather than generate in hazard.
Cleaned up the hazard cause logic to be consistent across all causes.
2022-12-23 15:10:37 -06:00
Ross Thompson
fe9361de34
Removed XEnE, YEnE, and ZEnE from forward logic.
...
Cleanup comments.
2022-12-23 14:27:03 -06:00
Ross Thompson
af9afafdae
Cleanup floating point hazard logic.
2022-12-23 14:21:47 -06:00
Ross Thompson
b4c7998ded
DON'T USE. First commit in attempt to move fpustall detection into the decode stage.
2022-12-23 12:47:18 -06:00
Ross Thompson
f6f66cb79e
Removed ZForwardEnE and replaced with ZEnE.
...
Similar for YForwardEnE.
2022-12-23 12:27:51 -06:00
Ross Thompson
ca67e5588d
Removed unnecessary stall when MatchDE was driven 1 by RdE == 0.
2022-12-23 11:45:42 -06:00
David Harris
f038494760
Commented out fdiv early termination - broke fsqrt test
2022-12-23 00:58:55 -08:00
David Harris
e061bacc9d
Fixed early termination on fdivsqrt
2022-12-23 00:53:55 -08:00
David Harris
0505f1fd37
Moved InstrValidNotFLushed to csr including InstrValidM
2022-12-23 00:27:44 -08:00
David Harris
3b1fe78bdc
Removed unused StallW from CSRs
2022-12-23 00:21:36 -08:00
David Harris
9e21358d75
Removed unused signals from FPU
2022-12-23 00:18:39 -08:00
David Harris
0a7ed944a5
Revert to 98b824
2022-12-22 23:58:14 -08:00
David Harris
56312cd0a6
Clean up unused FPU signals
2022-12-22 23:53:09 -08:00
David Harris
4d509f94ec
FDIV merge
2022-12-22 23:03:03 -08:00
David Harris
2d72bed1f4
Removed unused signals in FPU and CSR
2022-12-22 22:59:05 -08:00
Ross Thompson
98b824c4c4
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-12-22 22:51:33 -06:00
Ross Thompson
2cc4d66ded
Renamed IFU and LSU stalls.
2022-12-22 21:56:33 -06:00
Ross Thompson
03021765a6
The LSU is properly using FlushW rather than TrapM.
2022-12-22 21:47:34 -06:00
Ross Thompson
3b791b768a
Success we've replaced TrapM with FlushD in the IFU.
2022-12-22 21:36:49 -06:00
Ross Thompson
e0e92952c3
Partial cleanup for BP.
2022-12-22 20:33:38 -06:00
Ross Thompson
206bc7daa6
Closing in on icache flushed by FlushD rather than TrapM.
2022-12-22 20:19:09 -06:00
Ross Thompson
b1475df5e1
Wavefile updates.
2022-12-22 19:45:02 -06:00
Kip Macsai-Goren
ffae1c5ee6
added fs=00 to status fp enabled test
2022-12-22 15:15:53 -08:00
Kip Macsai-Goren
a768d70093
Added status.tvm bit test that passes make and regression
2022-12-22 14:43:22 -08:00
Kip Macsai-Goren
7aadf50f26
updated trap handler alignemnts to 64 bytes in priv tests
2022-12-22 14:23:04 -08:00
Ross Thompson
41fe876e7a
First pass at resolving ifu flush on trap rather than FlushD.
2022-12-22 15:53:06 -06:00
David Harris
d4bedca1bf
Code cleanup
2022-12-22 10:04:50 -08:00
cturek
ccbad67497
Added negative-result int diviison support in U and UM registers. 13 tests pass!
2022-12-22 16:25:37 +00:00
cturek
1b7ed72ece
Moved swap from qslc to otfc
2022-12-22 15:44:50 +00:00
cturek
3574bedb08
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-12-22 05:45:00 +00:00
cturek
80ca75e216
Added ForwardedSrcAM to postprocessor. Now passing 8 tests on rv32gc.
2022-12-22 05:44:55 +00:00
David Harris
c42967f5c6
XMerge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-12-21 20:39:38 -08:00
Ross Thompson
c8c73f47d2
CacheEn enables reading or writing the cache memory arrays. This is only disabled if we have a stall while in the ready state and we don't have a cache miss. This is a cache hit, but we are stalled.
2022-12-21 22:13:05 -06:00
cturek
0b4d81bd4a
worked out some bugs with int div cycles
2022-12-22 02:22:01 +00:00
cturek
c3fdc0ab23
Renamed signals to E and M stages, forwarded preprocessed n to fsm
2022-12-22 00:43:27 +00:00
Ross Thompson
84f8d9953f
Updated cache fsm names to match book.
2022-12-21 16:49:53 -06:00
Ross Thompson
d72cf65809
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2022-12-21 16:13:09 -06:00
Ross Thompson
e7a44d8975
Changed GatedStallF to GatedStallD.
2022-12-21 16:12:55 -06:00
David Harris
d0a3e939e3
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-12-21 14:12:25 -08:00
David Harris
8bc753a291
Added assertion about atomics needing caches
2022-12-21 13:57:28 -08:00
Ross Thompson
e5f7e68d31
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2022-12-21 14:57:19 -06:00
Ross Thompson
b7224cc5ba
Updated fpga constraints.
2022-12-21 14:50:01 -06:00
cturek
0c30ecf86d
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-12-21 20:41:38 +00:00
David Harris
6d46261350
comment cleanup
2022-12-21 12:39:09 -08:00
David Harris
c7f3aae084
Only delegated bits of SIP are readable
2022-12-21 12:32:49 -08:00
cturek
ab71962dc0
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-12-21 19:35:57 +00:00
cturek
c479b9f112
fixed normshift calculations
2022-12-21 19:35:47 +00:00
David Harris
5ef3a1d371
git push
...
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-12-21 11:31:27 -08:00
David Harris
e327d70cdc
Removed unused FPU signals
2022-12-21 11:31:22 -08:00
Ross Thompson
c3b43b2fac
Waiting on fix for wally64periph uart test.
...
would like to remove vectored interrupt adder.
2022-12-21 13:16:09 -06:00
Ross Thompson
0b4186f1e8
Vectored interrupts now require 64 byte alignment.
...
Eliminates adder.
2022-12-21 12:05:49 -06:00
Ross Thompson
91f948a91c
The optimzied PC+2/4 logic still hanges on wally32priv.
2022-12-21 09:19:34 -06:00
Ross Thompson
6858b7568c
Renamed PCPlusUpperF to PCPlus4F.
2022-12-21 09:18:30 -06:00
Ross Thompson
3d95aa3423
Added timeout check to testbench.
...
A watchdog checks the value of PCW. If it does not change within 1M cycles immediately stop simulation and report an error.
2022-12-21 09:18:00 -06:00
Ross Thompson
ac94b55e74
Fixed minor bug in PLIC. reading interrupt source 0 should not return x. it should provide produce 0.
...
Switched to even simplier PC+2/4 logic.
2022-12-21 09:00:09 -06:00
Ross Thompson
a02b40cf02
Changes to wave file.
2022-12-21 08:41:47 -06:00
Ross Thompson
fe723af1af
Comments about PC+2/4.
2022-12-21 08:35:43 -06:00
David Harris
5d91b3044f
Clean up vecgtored interrupts
2022-12-20 16:53:09 -08:00
David Harris
dd0a02f0c8
Converted tvecmux to structural
2022-12-20 16:24:04 -08:00
Ross Thompson
f860440361
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2022-12-20 18:09:37 -06:00
Ross Thompson
80be2e7be5
privileged pc mux cleanup.
2022-12-20 18:05:44 -06:00
Ross Thompson
97593e8a6f
Moved privileged pc logic into privileged unit.
2022-12-20 17:55:45 -06:00
David Harris
8f640f050f
IFU mux for CSRWriteFenceM conditional on ZICSR/ZIFENCEI
2022-12-20 15:38:30 -08:00
Ross Thompson
35ad49502f
Implement FENCE.I as NOP when ZIFENCEI is not supported.
2022-12-20 17:34:11 -06:00
Ross Thompson
0dc09ac22d
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2022-12-20 17:11:35 -06:00
Ross Thompson
65cbff9283
Changed long names of vectored pcm signals.
2022-12-20 17:01:20 -06:00
David Harris
f3e9950317
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-12-20 14:43:33 -08:00
David Harris
e7702e48b7
FPU remove unused signals
2022-12-20 14:43:30 -08:00
Ross Thompson
6f543d01b7
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2022-12-20 16:36:44 -06:00
Ross Thompson
8029b12f2a
Renumbered bits for PCPlusUpper.
2022-12-20 16:33:49 -06:00
David Harris
caef1a6997
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-12-20 11:23:53 -08:00
David Harris
f0ef5caf32
Memory cleanup
2022-12-20 11:22:26 -08:00
Ross Thompson
c4901450c4
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2022-12-20 12:58:59 -06:00
Ross Thompson
684d260005
Reorganized IFU PCNextF logic.
2022-12-20 12:58:54 -06:00
David Harris
03c700d91c
Restored rv32d arch test after new push
2022-12-20 10:56:33 -08:00
David Harris
e74d47bcb4
Renamed renamed sram to ram
2022-12-20 08:36:45 -08:00
David Harris
16f3c25cb7
sram1p1rw cleanup
2022-12-20 02:57:51 -08:00
David Harris
08234cb1c7
Remoed unused bram modules
2022-12-20 02:40:45 -08:00
David Harris
2c46f22be5
Renamed SRAM2P1R1W to lower case
2022-12-20 02:09:55 -08:00
David Harris
54e856c4f5
Renamed SRAM2P1R1W to lower case
2022-12-20 02:09:36 -08:00
David Harris
caf457106a
Replaced || and && with single ops
2022-12-20 01:33:35 -08:00
Ross Thompson
dedc08bd42
several options for pcnextf on fence.i
2022-12-19 23:33:12 -06:00
Ross Thompson
2df18cc758
More bp/ifu pcmux cleanup.
2022-12-19 23:16:58 -06:00
Ross Thompson
565585b35a
Moved more muxes inside bp.
2022-12-19 22:51:55 -06:00
Ross Thompson
d8ee0ea59d
Begin cleanup of ifu. partial move of pc muxes inside bp.
2022-12-19 22:46:11 -06:00
David Harris
e4579f3e9b
Removed CSR support from rv32i
2022-12-19 16:15:12 -08:00
David Harris
9fea16fd20
Simplified InstrRawD register
2022-12-19 15:18:42 -08:00
David Harris
a4da3f30e1
Explained hazard causes
2022-12-19 09:41:41 -08:00
David Harris
67763dbeec
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-12-19 09:09:57 -08:00
David Harris
3172dfd6a9
Properly decode fcvtint to prevent unnecessary stalls
2022-12-19 09:09:48 -08:00
Ross Thompson
159eda85f0
Renamed FStallD to FPUStallD.
2022-12-19 09:28:45 -06:00
Alessandro Maiuolo
5a82898649
Added NumZeroE, AZeroM, and BZeroM
2022-12-18 20:02:40 -08:00
Alessandro Maiuolo
2989782fe6
fixed LOGRK. FIxed Xs in WC and WS from muxes reliant on SqrtE. note not linting on 4 copies radix 4 because IntBits only 7 bits wide (need 8)
2022-12-18 19:04:36 -08:00
Ross Thompson
6561b8d102
Added files to gitignore.
2022-12-18 18:53:37 -06:00
Ross Thompson
4f56e6ff5d
I think I finally fixed a long hidden bug in the replacement policy. The figures in the textbook are correct. There was small bug in the rtl.
2022-12-18 18:30:35 -06:00
Ross Thompson
b4229c01ca
Have a basic cache test to fill all ways and sets.
2022-12-18 17:20:30 -06:00
Ross Thompson
376b01fcb8
Attempted to make a cache test.
2022-12-18 17:15:08 -06:00
Ross Thompson
ebdac1a9d0
Updated tests for fpga and BP.
2022-12-18 16:24:26 -06:00
Ross Thompson
e326c9972c
Updated vcu118 piniout.
2022-12-18 14:00:10 -06:00
Ross Thompson
73fd3fe040
Finally fixed the lru bug. It was actually a flush bug all along. At the end of flush writeback FlushAdr is incremented so clearly the dirty bit then clears the wrong set. Must either take an additional cycle to clear dirty and then change the address or clear the dirty bit before the cache bus acknowledgment. Changed it to clear at begining of that line's writeback before actually writting back.
2022-12-17 23:47:49 -06:00
Ross Thompson
cdeccd78e6
At long last found the subtle bug in the LRU.
...
Since the LRU memory is two ports, 1 read and 1 write, a write in cycle 1 to address x should not
forward data to a read from address y in cycle 2.
A read form address x in cycle 2 would still require forwarding.
2022-12-17 10:03:08 -06:00
Ross Thompson
ade06f3780
Fixed a bug with the new cache flush changes.
2022-12-16 19:28:32 -06:00
Ross Thompson
7d04675073
Cleanup comments.
2022-12-16 17:08:35 -06:00
Ross Thompson
89a30e7e37
Further cleanfsm cleanup.
2022-12-16 16:37:45 -06:00
Ross Thompson
9ebea891e2
More cachefsm cache flush cleanup.
2022-12-16 16:32:21 -06:00
Ross Thompson
731fbfc851
Oups found a bug with the new flush cache states.
2022-12-16 16:22:40 -06:00
Ross Thompson
41c636ecfa
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2022-12-16 15:37:03 -06:00
Ross Thompson
b462554896
Cleanup of cache flush fsm enhancement.
2022-12-16 15:36:53 -06:00
Ross Thompson
dacba855da
Rough draft of cache flush fsm enhancement.
2022-12-16 15:28:22 -06:00
cturek
4b8cbd9fa0
Added integer support for initC
2022-12-16 19:02:11 +00:00
Ross Thompson
bc907f3e2f
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2022-12-16 12:52:22 -06:00
Ross Thompson
e425ecac96
Fixed regression-wally to correct remove and mkdir wkdir.
2022-12-16 12:51:21 -06:00
cturek
06c58f310d
Added mux for integer special case, renamed signals to match pipelined stage
2022-12-16 18:43:49 +00:00
David Harris
378c40002f
Clean up interrupt masking by Commit
2022-12-16 08:27:39 -08:00
David Harris
7989f449ad
Disabled starting FPU divider when IDIV_ON_FPU = 0
2022-12-16 06:35:29 -08:00
cturek
d7571bb9b1
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-12-16 03:41:39 +00:00
Ross Thompson
9eac190468
Updated fpga constraints
2022-12-15 16:45:55 -06:00
David Harris
b7abc0037e
Use FlushE to reset integer divider FSM
2022-12-15 11:00:54 -08:00
David Harris
4365c99b52
Refactored stalls and flushes, including FDIV flush with FlushE
2022-12-15 10:56:18 -08:00
David Harris
5b040b7935
Regression delete wkdir files to prevent spurious failures
2022-12-15 10:24:58 -08:00
David Harris
2457448e29
Renamed DIV_BITSPERCYCLE to IDIV_BITSPERCYCLE
2022-12-15 08:23:34 -08:00
Ross Thompson
fa19a111c6
Hazard cleanup.
2022-12-15 10:05:17 -06:00
Ross Thompson
e774dd2db9
Reworked the hazards to eliminate StallFCause. Flush and CSRWrites now flush F,D,E stages and set the correct PCNextF in the M stage.
2022-12-15 09:53:35 -06:00
Ross Thompson
b02550b05c
Merge branch 'main' into hazards
2022-12-15 08:44:59 -06:00
David Harris
33aca5d35e
Added IDIV_ON_FPU flag to control whether integer division uses FPU
2022-12-15 06:37:55 -08:00
David Harris
5f637ef4a7
Use FPU divider for integer division when F is supported
2022-12-14 17:03:13 -08:00
cturek
8829e627eb
Fixed BZero and initU/initUM muxes
2022-12-14 16:44:46 +00:00
Ross Thompson
09dcb56217
Signal renames to reflect figures.
2022-12-14 09:49:15 -06:00
Ross Thompson
a3ec829b80
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-12-14 09:34:34 -06:00
Ross Thompson
6da7849d27
Reduced complexity of linebytemask.
2022-12-14 09:34:29 -06:00
cturek
ed59736a4b
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-12-14 15:13:44 +00:00
Ross Thompson
1ba1bed0b0
Broken dont' use.
2022-12-11 23:24:01 -06:00
Ross Thompson
0716aedbd5
Removed unused flushf.
2022-12-11 16:28:11 -06:00
Ross Thompson
115e9e7bb3
Renamed CPUBusy to GatedStallF in IFU.
2022-12-11 15:54:19 -06:00
Ross Thompson
ffc5bce0b6
Renamed CPUBusy in LSU.
2022-12-11 15:52:51 -06:00
Ross Thompson
c50a2bd8bf
Changed CPUBusy to Stall in ebu modules.
2022-12-11 15:51:35 -06:00
Ross Thompson
3ddf509f28
Renamed CPUBusy to Stall in cache.
2022-12-11 15:49:34 -06:00
Ross Thompson
4aadd87679
Moved CPUBusy out of HPTW.
2022-12-11 15:48:00 -06:00
cturek
f57211bb49
Fixed D sizing issues across fdivsqrt. Fixed preproc to accept either int or float inputs
2022-12-10 21:56:35 +00:00
Ross Thompson
d15cf5c65c
Added comments about why it is not possible to use FlushWay and VictimWay directly.
2022-12-09 17:07:35 -06:00
Ross Thompson
1463e9b1d4
Finished merge of kip and ross's ifu fix.
2022-12-09 16:52:22 -06:00
Ross Thompson
6f01ea12e8
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-12-09 16:42:16 -06:00
Ross Thompson
38adcb5b17
Minor simplification of cacheway way selection muxes.
2022-12-09 16:42:05 -06:00
Kip Macsai-Goren
f486a763d9
Addded fix for 32 bit periph test and added test to regression
2022-12-06 09:56:08 -08:00
Ross Thompson
033f844d09
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-12-06 10:38:14 -06:00
Ross Thompson
9ee2d84c7c
Fixed bug Kip found.
...
The no cache and no bus versions lacked assignment of CacheCommittedF in the IFU.
2022-12-06 10:37:45 -06:00
Kip Macsai-Goren
2dfa426e10
added passing GPIO test to 64 bit tests
2022-12-05 21:31:00 -08:00
Kip Macsai-Goren
c6c0ef05db
commented out periph test from wally32 periph so rv32ic doesn't hang
2022-12-05 20:23:16 -08:00
Kip Macsai-Goren
1d268fded4
added corrrect scr read out of uart to periph test
2022-12-05 20:16:02 -08:00
Kip Macsai-Goren
ae32e2a9ee
added passing tests to regression
2022-12-05 20:16:02 -08:00
Kip Macsai-Goren
7411d50a78
added all 32 bit tests to 64 bit periph tests except gpio
2022-12-05 20:16:02 -08:00
Kip Macsai-Goren
badc684f07
added copies of 64 bit tests to 32 bit periph and priv tests
2022-12-05 20:16:02 -08:00
Kip Macsai-Goren
282d06b45f
added -01 to all WALLY tests
2022-12-05 20:16:02 -08:00
Ross Thompson
9806babe9e
Renamed SelBusBuffer to SelFetchBuffer.
2022-12-05 17:51:13 -06:00
Ross Thompson
0fdbfb87eb
Removed commented code.
2022-12-05 17:21:56 -06:00
Ross Thompson
85366a287b
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-12-05 17:20:12 -06:00
Ross Thompson
bcb927d172
Renamed VictimTag to just Tag. Tag is used for both the victim and flush tags.
2022-12-05 17:19:51 -06:00
rachanaerra
4f042b0adb
updated constraints file
2022-12-05 15:05:21 -06:00
Ross Thompson
2bcaacb179
Cache signal renames.
2022-12-04 16:09:09 -06:00
Ross Thompson
b84b709182
Optimized way selection logic.
2022-12-04 12:30:56 -06:00
Ross Thompson
74d5ccc2b1
Found possible optimization as the way selection is shared in cache, cacheway, and cachelru.
2022-12-04 01:20:51 -06:00
Ross Thompson
62e495c739
Moved selectedway mux into cacheway. It makes way more sense there.
2022-12-04 01:15:47 -06:00
Ross Thompson
e1ac736d43
Rename LineByteMux to FetchbufferbyteSel.
2022-12-04 01:00:04 -06:00
Ross Thompson
128b3d20e7
Updated riscv arch test removed misaligned1.
2022-12-04 00:18:10 +00:00
Ross Thompson
de99663b97
Revert "Changed weird D sizing. Better names in preproc. Finalized Int/Float input to divider."
...
This reverts commit 70b89e5214
.
2022-12-04 00:01:58 +00:00
Ross Thompson
b7d004b261
Removed old flow directory.
2022-12-03 10:28:39 -06:00
Ross Thompson
ec8ae6e3a8
removed imperas-riscv-tests-deleteme
2022-12-03 00:18:42 +00:00
Ross Thompson
d969ae35e5
removed unusedsrc directory as it was large 384MB!
2022-12-02 17:37:06 -06:00
Ross Thompson
9d960dec65
Removed design ware mult.
2022-12-02 16:51:12 -06:00
cturek
70b89e5214
Changed weird D sizing. Better names in preproc. Finalized Int/Float input to divider.
2022-12-02 21:44:29 +00:00
cturek
1f32603c30
Added flops to preproc
2022-12-02 20:31:08 +00:00
David Harris
9395414df3
Renamed FPUStallD to FCvtIntStallD
2022-12-02 11:55:23 -08:00
David Harris
d64cd715f9
Renamed DivStartE to IFDivStartE
2022-12-02 11:30:49 -08:00
David Harris
9c1b7e53e4
FPU divider working with execute stage stall
2022-12-02 11:11:53 -08:00
David Harris
01028e7088
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-12-02 04:28:50 -08:00
David Harris
4c6003d9e2
update test list
2022-12-02 04:28:47 -08:00
Ross Thompson
33e4361de5
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-12-01 22:36:07 -06:00
David Harris
8afc054e74
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-12-01 16:27:36 -08:00
David Harris
ed39099405
reorder tests
2022-12-01 16:27:33 -08:00
Ross Thompson
1d9b5badee
Properly flush cacheLRU.
2022-12-01 17:32:58 -06:00
David Harris
f64c0589fe
FPU test list
2022-12-01 10:18:36 -08:00
Ross Thompson
da92cdccd0
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-12-01 11:47:54 -06:00
Ross Thompson
cb310bfb1d
Removed unused port on cacheway.
2022-12-01 11:47:48 -06:00
David Harris
558f0b655e
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-12-01 08:15:51 -08:00
David Harris
4e5f62a5c1
code cleanup
2022-12-01 08:15:48 -08:00
Ross Thompson
b0b16acaf5
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-30 17:19:04 -06:00
David Harris
aa26a97b36
signal sufixes in integer division
2022-11-30 15:15:37 -08:00
Ross Thompson
f9ffcf377b
Reverted the IROM/DTIM address range modelsim assignment.
2022-11-30 17:13:33 -06:00
Ross Thompson
bfd238a4fc
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-30 13:30:37 -06:00
Ross Thompson
813b2963fb
More optimization.
2022-11-30 11:26:48 -06:00
Ross Thompson
da7b13ba0a
Removed reset on dirty cache bits.
2022-11-30 11:04:37 -06:00
Ross Thompson
5e5cca6ae1
Turns out the merge of dirty and tag bits is complicated by the need to have byte write enables rather than bit write enables. Putting on hold for now.
2022-11-30 11:01:25 -06:00
Ross Thompson
ac3e02692b
Preparing to merge dirty and tag srams.
2022-11-30 10:40:48 -06:00
Ross Thompson
8692ccbafb
Intermediate commit. Replaced flip flop dirty bit array with sram.
2022-11-30 00:08:31 -06:00
cturek
e28a6901a9
div tests in sim-wally
2022-11-30 02:32:04 +00:00
Ross Thompson
e3577781b0
Optimization of cacheway.
2022-11-29 18:30:47 -06:00
Ross Thompson
1e2180ef98
Updated HPTW to route access faults generated by the HPTW to the original access type either instruction access fault, load access fault or store access fault.
2022-11-29 17:19:31 -06:00
Ross Thompson
5e550fe5e6
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-29 14:57:38 -06:00
Ross Thompson
9e4166407b
Fixed a bug with the replacement policy. It was updating the wrong set on load hits.
2022-11-29 14:51:09 -06:00
Ross Thompson
179d321683
Cleaned up the wavefile and added logic to linearly populate the LRU before all ways are filled.
2022-11-29 14:09:48 -06:00
Kip Macsai-Goren
66fcb2bffe
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-29 10:43:44 -08:00
Kip Macsai-Goren
26b4147f40
added failing satp invalid tests to regression
2022-11-29 10:43:38 -08:00
Ross Thompson
34bff09721
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-29 11:52:35 -06:00
Ross Thompson
ed54959378
Renamed signals in the cache.
2022-11-29 10:52:40 -06:00
Kip Macsai-Goren
af00eadec2
added tests for invalid address being written to satp. Not passing regression
2022-11-27 13:22:35 -08:00
Ross Thompson
4e52755c9f
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-22 18:07:32 -06:00
cturek
7140642c93
Almost done with Int division
2022-11-22 22:22:59 +00:00
cturek
3fbccbf119
Updated testbench/wave for fdivsqrt new start signals
2022-11-22 22:22:26 +00:00
Ross Thompson
1736983557
Cleanup cacheLRU.
2022-11-22 14:59:01 -06:00
Ross Thompson
2ae7b555be
File name change for cachereplacement policy to cacheLRU
2022-11-20 22:35:02 -06:00
Ross Thompson
84679c0062
Signal name changes for LRU.
2022-11-20 22:31:36 -06:00
Ross Thompson
55335d1db6
Updated top level fpga file.
2022-11-18 11:10:45 -06:00
Ross Thompson
840517a582
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-17 17:45:59 -06:00
Ross Thompson
736a30afac
Missing a file. Last commit will fail.
2022-11-17 17:45:41 -06:00
Ross Thompson
4fbda554ee
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-17 17:38:52 -06:00
Ross Thompson
a1f39a8186
Finally have the correct replacement policy implementation.
2022-11-17 17:36:37 -06:00
Ross Thompson
8692bafd04
Updated fpga wave configuration.
2022-11-16 15:57:19 -06:00
Ross Thompson
b108e0a594
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-16 15:39:17 -06:00
Ross Thompson
ac0f6ddb7b
I found the issue with the cache changes. FlushW is not asserted for all TrapM. Ecall and Ebreak don't flush the W stage. However the ifu's bus controllable must disable the BusRW for all traps.
2022-11-16 15:38:37 -06:00
Ross Thompson
9b2236b2a0
Progress on the cache replacement policy implementation.
2022-11-16 15:35:34 -06:00
Ross Thompson
d1ce84d172
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-16 12:44:06 -06:00
Ross Thompson
cf964e30fb
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-16 12:42:29 -06:00
Ross Thompson
5f7b0b8a9b
Oups found a bug with my cache changes. I took TrapM out of the logic path for selecting the cache's address CAdr (previously RAdr) to improve the critical path. This is fine for the dcache because both the E and M stages are flushed. However for the ICache only F is flushed. PCNextF is valid and points to XTVEC so the cache must take NextAdr rather than PAdr as CAdr.
2022-11-16 12:36:58 -06:00
David Harris
bc3b783543
comment cleanup
2022-11-16 10:23:20 -08:00
David Harris
ddba68605e
Renamed DivBusy to FDivBusyE in FPU
2022-11-16 10:13:27 -08:00
David Harris
e008d663f4
Moved DivStartE to fdivsqrtfsm
2022-11-16 10:00:07 -08:00
Ross Thompson
900a326a23
Created improved cache replacement policy implementation. This version is generic and works for any number of ways. Not fully tested and is currently commented out.
2022-11-16 11:15:34 -06:00
Ross Thompson
3fbacc2339
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-15 14:49:32 -06:00
cturek
6fe35ee0e3
Attempt to fix FPGA synth errors
2022-11-15 20:34:28 +00:00
cturek
1c49d4a1c2
Fixed lint errors in postprocessing
2022-11-15 20:31:23 +00:00
Ross Thompson
3de5144ae4
Updated vcu118 constraints to run cpu at 38.43Mhz.
2022-11-15 10:19:38 -06:00
Ross Thompson
4b5ec21ef4
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-15 10:18:56 -06:00
Ross Thompson
ec6517fadd
Fixed a bug with the hptw configuration not correctly avoiding UPDATE_PTE state.
2022-11-14 16:02:20 -06:00
Ross Thompson
f03d5d3ac8
Renamed Flush to FlushStage in the cache.
2022-11-14 14:11:05 -06:00
Ross Thompson
1bf838fa6b
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-14 13:48:56 -06:00
David Harris
895ee3d773
Removed comment about nonexistent possible bug
2022-11-14 09:56:33 -08:00
David Harris
cae3e00751
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-14 09:52:24 -08:00
David Harris
79d416537a
Removed comment about nonexistent possible bug
2022-11-14 09:52:21 -08:00
Ross Thompson
1a00e7bbee
Changed names of cache signals.
2022-11-13 21:36:12 -06:00
Ross Thompson
5800dfde60
Updated wave file.
2022-11-13 21:34:45 -06:00
cturek
0b2c8b9d46
Added majority of combinational logic
2022-11-14 00:06:38 +00:00
cturek
74f58b5d89
Added Quotient/Remainder calcs to normal termination
2022-11-13 23:44:34 +00:00
cturek
b3bfdbad18
Added flops for n and m, added B=0 signal
2022-11-13 23:02:43 +00:00
cturek
9c70ab917c
Added A<B signal to fdivsqrt, started postprocessing merge
2022-11-13 22:40:26 +00:00
Ross Thompson
a27b81ef90
Changed IMWriteDataM to IHWriteDataM.
2022-11-13 12:27:48 -06:00
Ross Thompson
3ac6514856
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
...
hazard was not a straight forward merge. I changed the way the LSU and IFU generate IFUStallF and LSUStallM. They need to be suppressed by TrapM now.
2022-11-13 12:25:22 -06:00
David Harris
0ce3cc393a
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-13 04:23:26 -08:00
David Harris
157f816cd3
HPTW cleanup
2022-11-13 04:23:23 -08:00
David Harris
0502b8ea4d
Comments about division hazards
2022-11-13 04:17:37 -08:00
Ross Thompson
b812549f38
Bumped DDR4 clock speed up from 832Mhz (1666 MT/s) to 1200 Mhz (2400 MT/s).
...
Increased CPU clock speed from 30 Mhz to 35 Mhz.
2022-11-11 15:33:03 -06:00
Ross Thompson
90697ef888
Moved all remaining bus logic from the LSU into ahbcacheinterface.
2022-11-11 14:30:32 -06:00
cturek
ff410cd849
Added integer step counter to fsm
2022-11-11 00:23:25 +00:00
Ross Thompson
c2e3bad3f5
Fixed name change in hptw.
2022-11-10 16:13:31 -06:00
Ross Thompson
7311eca5ff
Wavefile update.
2022-11-10 15:48:06 -06:00
Ross Thompson
64b818c49a
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-10 15:46:25 -06:00
Ross Thompson
31d5eabd77
Renamed Word to Beat for ahbcacheinterface.
2022-11-09 17:52:50 -06:00
Ross Thompson
3653d6b3ed
Renamed CACHE_EVICT to CACHE_WRITEBACK.
2022-11-09 17:43:06 -06:00
Ross Thompson
ebfee753ca
Updates to fpga constraints.
2022-11-09 13:52:36 -06:00
cturek
d5c5450f8d
Reoredered tests for arch32m
2022-11-09 18:42:00 +00:00
cturek
e7c25f9562
Fixed asign and bsign
2022-11-09 18:41:26 +00:00
Ross Thompson
42c0a10d07
Removed TrapM from the LSU and IFU. TrapM is replaced with FlushW for both. (Don't like this for the IFU).
...
FlushW prevents writting the cache, dtim, and bus state. FlushW still gates HTRANS.
FlushW does not impact the mealy outputs of the cache and bus FSMs and hazard is updated to
not stall W if we get a trap.
2022-11-07 15:50:55 -06:00
David Harris
9b20bf341e
Moved lsuvirtmem muxes into hptw
2022-11-07 11:13:34 -08:00
Ross Thompson
fd1ef82310
Fixed bug with fpga makefile.
2022-11-07 09:20:05 -06:00
Ross Thompson
922513c22f
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-07 09:10:51 -06:00
Kip Macsai-Goren
6fdd603ba1
added potential fix to overrun error and fifo interrupt error. test passes
2022-11-06 22:01:02 -08:00
cturek
b137a95a35
propagated otfc swap to Rad2 and 4 qslc
2022-11-06 23:32:38 +00:00
Ross Thompson
8d57e488c8
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-06 17:22:25 -06:00
cturek
1e927df1a0
Added conditional OTFC swap for simplified int postprocessing
2022-11-06 23:09:09 +00:00
cturek
56b7bb3590
Finished Int Preprocessinggit add ../src/fpu/fdivsqrt/fdivsqrtpreproc.sv
2022-11-06 22:40:21 +00:00
cturek
ee048325cb
Added n and rightshiftx
2022-11-06 22:31:48 +00:00
cturek
67f2cb0595
p calculation
2022-11-06 22:24:21 +00:00
cturek
7567f388c2
Changed lzc names, started int/fp size merge in preproc
2022-11-06 22:21:35 +00:00
cturek
333da5c945
Added n, p, and m signals between fdivsqrt submodules. Added w64 and mdue to divsqrt testbench.
2022-11-06 22:08:18 +00:00
cturek
b893d9249d
Added new macros for int div preprocessing, added p, n, and rightshiftx logic
2022-11-06 21:53:48 +00:00
Kip Macsai-Goren
b42fc7ec6d
fixed fifo timout handling. error now in data ready interrupt
2022-11-05 13:34:24 -07:00
David Harris
c78643f4e4
Reorder embench tests to prevent crash
2022-11-04 15:21:51 -07:00
David Harris
e57083a0ef
HPTW cleanup
2022-11-04 15:21:09 -07:00
Ross Thompson
977ad1c33c
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-04 13:30:08 -05:00
Kip Macsai-Goren
23268d22e5
fixed broken instructions so make works.
2022-11-03 23:06:20 +00:00
Ross Thompson
24689d6937
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-03 17:48:35 -05:00
Ross Thompson
24cb36c38d
Updated to put dtb into the rodata segment for our linker script.
2022-11-03 17:48:20 -05:00
cturek
39bf6a456e
renamed remOp to RemOp
2022-11-03 22:37:25 +00:00
Ross Thompson
041ab8e401
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-11-03 17:36:04 -05:00
Ross Thompson
34cfc01d1c
Potentially a valid zero stage boot loader based on cva6.
2022-11-03 17:35:57 -05:00
cturek
890b26466f
Added rem/div operation to postprocessor
2022-11-02 17:49:40 +00:00
Ross Thompson
98d4929c57
Reduced complexity of logic supressing cache operations.
2022-11-01 15:23:24 -05:00
cturek
2a45787b37
Added buffered signals for int/fp
2022-10-28 21:47:24 +00:00
Ross Thompson
f81d1e15b6
More outline for uart timeout interrupt.
2022-10-28 13:53:56 -05:00
Ross Thompson
372b9890ef
Untested change to uart test for outline of how to handle rx fifo timeout.
2022-10-28 13:31:16 -05:00
cturek
2ae0a9bb5d
Config Cleanup
2022-10-27 22:38:56 +00:00
Ross Thompson
03f68a4cf5
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-10-26 14:48:50 -05:00
Ross Thompson
36d9a00471
Fixed the uart transmit fifo overrun bug.
2022-10-26 14:48:09 -05:00
cturek
51fc4de0e1
small signal cleanup
2022-10-26 18:42:49 +00:00
cturek
544c142c4f
abs for int inputs
2022-10-26 16:18:05 +00:00
cturek
e401d12889
Added signed division to fdivsqrt
2022-10-26 16:13:41 +00:00
cturek
a8a89f8dfc
unbroke DIVb
2022-10-26 16:11:51 +00:00
cturek
8475de128b
Config cleanup
2022-10-25 21:04:09 +00:00
Jacob Pease
ec0cede2f2
Added PLIC signals for debugging on FPGA.
2022-10-25 13:57:09 -05:00
cturek
94daa961b3
Started Integer Preprocessing
2022-10-25 17:48:43 +00:00
Kip Macsai-Goren
d4dd2dcc08
Added test for UART FIFO timeout. Does not pass regression
2022-10-25 05:35:56 +00:00
Kip Macsai-Goren
8afec35db4
added additional cache stats to coremark postprocess script
2022-10-25 02:56:25 +00:00
Kip Macsai-Goren
41f9b14f69
added I cache stats to coremark output
2022-10-25 02:55:32 +00:00
Ross Thompson
2e60edaedd
Added new device trees for vcu118 and vcu108 boards.
2022-10-24 17:45:10 -05:00
Ross Thompson
1510c2d92f
Setup to run with both the vcu108 and vcu118 boards. Set the parameters in the Makefile.
2022-10-24 15:38:39 -05:00
Ross Thompson
ae01c8e824
Forget to include updated xdc file.
2022-10-24 13:51:21 -05:00
Ross Thompson
cc605a1966
Bit width error.
2022-10-24 13:48:47 -05:00
Ross Thompson
857023f5de
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-10-24 10:12:39 -05:00
Ross Thompson
270a83352f
Found a way to remove the interlock fsm. Dramatically reducing the complexity of virtual memory and page table walks.
2022-10-23 13:46:50 -05:00
Ross Thompson
54bd1fb806
Small cleanup of interlockfsm.
2022-10-22 16:29:51 -05:00
Ross Thompson
ae7a71c0f4
Created one off test to replicate the floating point forwarding hazard bug.
2022-10-22 16:29:12 -05:00
Ross Thompson
f9a04c13df
comment updates.
2022-10-22 16:28:44 -05:00
Ross Thompson
78586c5a7a
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-10-22 16:27:30 -05:00
Ross Thompson
611ea6882d
Changed FDivBusyE to stall the whole pipeline. Any instruction in the Executation which depended on the output of an instruction in the writeback stage would be lost if the back end of the pipelined advanced. The solution is to stall the whole pipeline.
2022-10-22 16:27:20 -05:00
Jacob Pease
1f207bcafb
Extended rxfifotimeout count to actually be 4 characters long.
2022-10-20 17:35:49 -05:00
Ross Thompson
d68bdfbade
Updated the device tree to use 30Mhz instead of 10Mhz for the cpu timebase.
2022-10-20 15:05:39 -05:00
Ross Thompson
a45e612008
Updated debug2.xdc for interlock fsm changes.
2022-10-19 17:34:47 -05:00
Ross Thompson
e5cae3bfa0
Moving interlockfsm changes to a temporary branch.
...
reduced complexity of cache mux controls.
2022-10-19 15:08:23 -05:00
Ross Thompson
5ad3ee6b54
Broken don't use this state.
2022-10-19 14:31:22 -05:00
Ross Thompson
de1e569ee9
Noted possible bug with endianness during hptw.
...
Minor complexity reduction in interlockfsm. I think there is a lot of room to simplify.
2022-10-19 12:20:19 -05:00
Ross Thompson
a58179b1d6
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-10-19 10:42:31 -05:00
Ross Thompson
49a85c7f50
Sort of solved the bit width warning for dtim, irom ranges.
2022-10-19 10:42:19 -05:00
Ross Thompson
61f7bad739
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-10-18 15:06:09 -05:00
Ross Thompson
962ba5e4b8
Updated uart settings and fpga wave config.
2022-10-18 15:05:33 -05:00
Ross Thompson
a7ae593a68
Possible fix for interrupt during a floating point divide.
2022-10-18 15:04:21 -05:00
Ross Thompson
2c80c2b35f
Merged cacheable with seluncachedadr.
2022-10-17 13:29:21 -05:00
David Harris
6ab6467777
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-10-14 17:33:36 -07:00
David Harris
1428081742
Removed unused FPU waves
2022-10-14 17:33:32 -07:00
amaiuolo
a0712d1456
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-10-13 22:36:57 +00:00
amaiuolo
000117fcd4
added amaiuolo@hmc.edu
2022-10-13 22:36:52 +00:00
Ross Thompson
47915421c2
Fixed uncached read bug introduced by yesterday's changes.
2022-10-13 11:11:36 -05:00
Ross Thompson
fccaad7f3f
Fixed LSU to correctly handle the difference between LLEN and AHBW.
2022-10-12 12:06:15 -05:00
Ross Thompson
12a6a9f83b
Actually fixed the bus width issue coming out of the cache.
...
The root cause is the ahb bus width can be different from LLEN.
If we switch the d-cache to outputing LLEN and on LLEN intervals, subword read needs to operate on LLEN as well.
Then the cache always outputs LLEN data which may need to be muxed down into 2 or more subwords if ABHW is smaller than LLEN.
2022-10-12 11:33:10 -05:00
Kip Macsai-Goren
f711eb0bcf
quick fix to endianness wapping 64 bit reads in 32 bit confgs
2022-10-11 23:08:02 +00:00
Ross Thompson
b2f71b8255
Modified LSU to support DTIM without CSRs.
2022-10-11 14:05:20 -05:00
Ross Thompson
a5c15fd801
Fixed first problem with the rv64i IROM.
2022-10-11 11:35:40 -05:00
Ross Thompson
403daecc8e
Modified the do scripts to change the DTIM_RANGE and IROM_RANGE to large values from the defaults.
...
The defaults are used for synthesis.
rv64i and rv32i: DTIM 2KiB, IROM 2KiB
rv32ic: DTIM 4KiB, IROM 16KiB
Regression tests require 8MiB or larger so modelsim overrides.
2022-10-11 10:47:13 -05:00
David Harris
36c0e1d4e9
Removed imperas tests from rv32i/rv64i because the configs lack privileged support expected in the tests. Also cleaned up comment in LSU
2022-10-10 10:22:12 -07:00
David Harris
e4c5754b3a
Made simple RV64 configuration be RV64i. Eliminated rv64ic and rv64fp. Fixed some bugs related to new width
2022-10-10 09:10:55 -07:00
David Harris
a5a922d048
Removed unnecessary configuration conditions from subwordread sign extension/NaN boxing
2022-10-10 07:12:37 -07:00
David Harris
849d6d4297
Changed SNPS license server
2022-10-10 06:59:11 -07:00
Ross Thompson
1bc5f88e4a
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-10-09 16:46:51 -05:00
Ross Thompson
b52f593ecb
Reorganized the configs.
2022-10-09 16:46:48 -05:00
David Harris
6092ca757a
New fdivsqrtqsel4cmp module based on comparators rather than table lookup
2022-10-09 04:47:44 -07:00
David Harris
dceb6f9034
Moved shift into divsqrt stage and cleaned up comments
2022-10-09 04:45:45 -07:00
David Harris
55e4911cf0
fdivsqrt code cleanup
2022-10-09 03:37:27 -07:00
Ross Thompson
382ccf74a5
Cleaned up the new muxes to select between IROM/ICACHE/BUS and DTIM/DCACHE/BUS.
2022-10-05 15:46:53 -05:00
Ross Thompson
62951ec653
Fixed wally32e.
2022-10-05 15:37:01 -05:00
Ross Thompson
2144343c4a
Name clarifications.
2022-10-05 15:36:56 -05:00
Ross Thompson
2e578eb8d8
Fixed bug with combined dtim+bus.
2022-10-05 15:16:01 -05:00
Ross Thompson
b52ab91028
Possibly have working dtim + bus config.
2022-10-05 15:08:20 -05:00
Ross Thompson
8d01cf32fc
Updated wavefile.
2022-10-05 14:55:40 -05:00
Ross Thompson
a0c5833d6d
Fixed bug in EBU.
2022-10-05 14:51:12 -05:00
Ross Thompson
68aa1434b4
Modified the LSU and IFU to allow concurrent DTIM/DCACHE+BUS and IROM/ICACHE+BUS.
...
Don't use this commit as the rv32i tests are not passing.
2022-10-05 14:51:02 -05:00
Ross Thompson
20546857e6
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-10-05 14:03:44 -05:00
David Harris
f318daa605
Changed RV32i config to use DTIM and bus. Don't use this commit - it will break rv32i tests.
2022-10-05 11:46:52 -07:00
Ross Thompson
e6b36d0c02
Optimized the ebu's beat counting.
2022-10-05 10:58:23 -05:00
Ross Thompson
9e2cfadd7d
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-10-04 17:39:26 -05:00
Ross Thompson
c21c71d53d
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-10-04 17:39:14 -05:00
Ross Thompson
3f59ea6b6d
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-10-04 17:38:49 -05:00
Ross Thompson
92d7be645b
Reordered the eviction and fetch in cache so it follows a more logical order.
2022-10-04 17:36:07 -05:00
Ross Thompson
8f18bb9243
Updated constraints file to work with alternate uart.
2022-10-04 17:35:44 -05:00
Ross Thompson
52e8e0f5ef
Modified cache lru to not have the delayed write.
2022-10-04 15:14:58 -05:00
Kip Macsai-Goren
d5cd67cf09
fixed endianness mstatush problem, passes make, not regression
2022-10-04 17:37:39 +00:00
Kip Macsai-Goren
2bbcec680f
addded renamed file
2022-10-04 17:37:05 +00:00
Kip Macsai-Goren
c4441eb0fa
Merge branch 'main' of github.com:davidharrishmc/riscv-wally
2022-10-04 17:33:54 +00:00
Kip Macsai-Goren
175e824a61
Renamed endianswap to match module name
2022-10-04 17:33:49 +00:00
Ross Thompson
56cc04316c
Fixed a very subtle bug in the trap handler. It was possible to select the wrong cause if an interrupt was pending, but it was supressed by Committed and another exception triggered.
2022-10-02 16:21:21 -05:00
Ross Thompson
02ed8fc301
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-10-01 15:01:22 -05:00
Ross Thompson
bc94f4aef1
Disable IFU bus access on TrapM.
2022-10-01 14:54:16 -05:00
Ross Thompson
e6db1c5cf8
Added logic to not implement the save/restore muxes for LSU in the EBU's controller input stage.
2022-09-29 18:37:34 -05:00
David Harris
fc4146f409
Adding start signals for integer divider to fdivsqrt
2022-09-29 16:30:25 -07:00
Ross Thompson
47e936cab3
Renamed signals in EBU.
2022-09-29 18:29:38 -05:00
cturek
c72e2e5d49
Added integer inputs and flags to divsqrt
2022-09-29 23:08:27 +00:00
Ross Thompson
f9c4b32bd5
Simplification to EBU.
2022-09-29 18:06:34 -05:00
Ross Thompson
146ff6ff6a
Fixed HTRANS not changing after accepting HREADY. This exposed a bug in uncore.
2022-09-29 11:54:03 -05:00
Ross Thompson
638e506d0b
Hmm. the icache and ifu didn't have a CommittedF signals going back to the privileged unit. They probably should. If an interrupt occurred during the middle of an instruction fetch icache miss I think it would corrupt the icache.
2022-09-28 17:39:51 -05:00
Ross Thompson
87485ed237
Possible fix for ifu/lsu arbiration issue.
2022-09-27 17:24:35 -05:00
Ross Thompson
afc6934249
Possible fix to the bus cache interaction.
2022-09-27 11:34:33 -05:00
Ross Thompson
dfe6bdd06d
Found a hidden bug in the cache to bus fsm interlock.
2022-09-26 17:41:30 -05:00
Ross Thompson
f24b0feeed
renamed ahbmulticontroller to ebu.
2022-09-26 14:37:18 -05:00
Ross Thompson
fd47cf05c3
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-26 12:49:16 -05:00
Ross Thompson
fd2a8e621a
Yesterday David and I found what is likely a bug in our AHB implementation. HTRANS was getting reset to 2 rather than 0 at the end of a burst transaction. This is fixed.
2022-09-26 12:48:26 -05:00
Kip Macsai-Goren
0d2fcaeab1
added xlen and endianness test edits. xlen passes but endinanness still won't make
2022-09-26 05:03:19 +00:00
Kip Macsai-Goren
4fa8b10315
added simple post processing script to give branch miss proportion in coremark log
2022-09-26 04:51:04 +00:00
David Harris
b5d2bbe7ca
changed always_ff to always in sram1p1rw to fix testbench complaint
2022-09-25 19:56:40 -07:00
Ross Thompson
dcc00ef4b3
Renamed RW signals through the caches, bus interfaces, and IFU/LSU.
...
CPU to $ is called LSURWM or IFURWF.
CPU to Bus is called BusRW
$ to Bus is called CacheBusRW.
2022-09-23 11:46:53 -05:00
Ross Thompson
6a6686a34b
Removed the write first sram model.
2022-09-22 16:12:08 -05:00
Ross Thompson
8a6ca027c2
The valid and dirty bits match the SRAM implementation now.
2022-09-22 16:09:09 -05:00
Ross Thompson
29087812e1
Solved the sram write first / read first issue. Works correctly with read first now.
2022-09-22 14:16:26 -05:00
Ross Thompson
f74d21e063
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-21 18:24:06 -05:00
Ross Thompson
cd5b8be78f
Cleaned up the IFU and LSU around dtim and irom address calculation.
2022-09-21 18:23:56 -05:00
David Harris
cfa83fdd98
For radix 4 division, fixed initial C and then could remove unexplained shift from divshiftcalc
2022-09-21 13:30:35 -07:00
David Harris
fce927810a
Fixed testbench-fp to support all again
2022-09-21 13:19:48 -07:00
David Harris
f08d5b23d5
Eliminated store after store stall when no cache; simplified divshiftcalc logic.
2022-09-21 13:02:34 -07:00
Ross Thompson
f83d640068
Updated IROMAdr logic.
2022-09-21 12:42:43 -05:00
Ross Thompson
0294ca0469
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-21 12:36:52 -05:00
Ross Thompson
cdc80c1f28
Moved other SRAMs to generic/mem.
2022-09-21 12:36:03 -05:00
David Harris
3b0714b059
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-21 10:35:11 -07:00
David Harris
1c8581dd6d
Simplified shipping in divshiftcalc; enhanced testbench-fp to be able to run all 32-bit tests generated by sqrttest
2022-09-21 10:35:08 -07:00
Ross Thompson
427db1f55f
Renamed brom1p1r to rom1p1r.
...
removed used file bram2p1r1w.sv.
2022-09-21 12:31:20 -05:00
Ross Thompson
234cf7510e
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-21 12:20:12 -05:00
Ross Thompson
91fcca9d17
Merged together bram1p1rw with sram1p1rw as sram1p1rw.
...
Fixed a major issue with the real SRAM implemenation.
2022-09-21 12:20:00 -05:00
Ross Thompson
d6fa8d51d7
Modified sram1p1rw to support 3 different implementation styles.
...
SRAM, Read first, and Write first.
2022-09-21 11:26:00 -05:00
David Harris
f87e15388a
commented SpecialCase
2022-09-21 05:02:08 -07:00
David Harris
b21e36a788
Added SpecialCaseReg to hold SpecialCase for fdivsqrtpostproc
2022-09-21 04:55:43 -07:00
David Harris
437fd52bf6
Gated sticky bit in fdiv with SpecialCase
2022-09-20 20:05:00 -07:00
David Harris
cf5c513221
Restored radix 2 to pass regression
2022-09-20 19:30:16 -07:00
David Harris
9c8edb9cb6
renamed u to udigit to avoid conflict with U
2022-09-20 19:29:23 -07:00
cturek
e8f2715a81
Fixed R4 Sqrt overshifting
2022-09-21 00:05:36 +00:00
cturek
49a1259cf9
Fixed fgen4
2022-09-20 20:00:01 +00:00
Ross Thompson
c73fae8a96
Merge branch 'tempMain' into main
2022-09-20 13:57:38 -05:00
Ross Thompson
1c2e47e137
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-20 11:56:53 -05:00
Ross Thompson
b2f4d4aaa7
Added chip enables to sram.
2022-09-20 10:49:14 -05:00
David Harris
33af1f97f7
Define LOGNORMSHIFTSZ
2022-09-20 08:31:57 -07:00
Ross Thompson
7470bf7c7c
Added comment.
2022-09-20 09:49:53 -05:00
Ross Thompson
ea6b687f7c
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-20 09:47:16 -05:00
David Harris
811f498f63
renamed q to u for unified digit selection
2022-09-20 04:35:14 -07:00
David Harris
705a2bd97b
Removed D2 and D2b from radix2 stage
2022-09-20 04:20:38 -07:00
David Harris
c77ec2aa9c
Simplified UM initialization
2022-09-20 04:18:12 -07:00
David Harris
956011b40b
fdivsqrtfgen4 comments
2022-09-20 04:13:21 -07:00
David Harris
8d1408a9d6
Moved fpu modules into subdirectories
2022-09-20 04:12:05 -07:00
David Harris
0af8151c2a
Partitioned fdivsqrt into one module per file and added file names to opening comments
2022-09-20 03:57:57 -07:00
David Harris
5b13140078
Simplified fdivsqrtpostproc QmM logic
2022-09-20 03:30:18 -07:00
David Harris
8647de5ee4
make QmM size b+1 indpenedent of radix
2022-09-20 03:25:09 -07:00
David Harris
31c3b62774
clean up divshiftcalc
2022-09-20 03:19:50 -07:00
David Harris
7177745111
clean up divshiftcalc
2022-09-20 03:17:29 -07:00
David Harris
b48bbc4294
clean up divshiftcalc
2022-09-20 03:13:11 -07:00
David Harris
010c88816b
clean up divshiftcalc
2022-09-20 03:08:25 -07:00
David Harris
712f1d8d3a
Cleaning up divshiftcalc LOGNORMSHIFTSZ
2022-09-20 02:35:01 -07:00
Jacob Pease
c797aee62c
Fixed rxfifotimeout restarting for every new character, even when already high.
2022-09-19 18:00:30 -05:00
cturek
85b3e9bfe6
Radix 4 sqrt passing first two tests
2022-09-19 21:26:32 +00:00
Ross Thompson
6a1b909a3f
Fixed up IFU ahb interface names and widths.
2022-09-19 10:54:22 -05:00
David Harris
1e6bd26bb6
Removed EarlyTermShift from fdiv
2022-09-19 08:44:23 -07:00
David Harris
a36747fda0
Finished unified divsqrt otfc and fgen name changes
2022-09-19 08:30:59 -07:00
David Harris
34bd82e4a3
fdivsqrtiter simplification
2022-09-19 01:08:01 -07:00
David Harris
b19c37eb0f
Reduced number of cycles needed for division
2022-09-19 01:02:04 -07:00
David Harris
7826cf0bcb
Cleaned up otfc4
2022-09-19 00:58:20 -07:00
David Harris
6bab8f0e3f
OTFC simplification
2022-09-19 00:51:56 -07:00
David Harris
362056f53d
Removed unused otfc for Q
2022-09-19 00:43:27 -07:00
David Harris
32028c437c
fdiv cleanup
2022-09-19 00:32:34 -07:00
David Harris
b7b082482f
Division working again for radix 2 with unified OTFC
2022-09-19 00:30:30 -07:00
David Harris
91194a9c3e
Unified on-the-fly conversion working for radix 2; broke radix-4 division
2022-09-19 00:04:00 -07:00
David Harris
9fb3382ec3
Added 2 bits to C to initialize properly
2022-09-18 22:44:22 -07:00
David Harris
33933dd6b0
Added 2 bits to C to initialize properly
2022-09-18 22:42:35 -07:00
David Harris
24aa410984
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-18 21:27:36 -07:00
David Harris
198a134304
FP testbench
2022-09-18 21:27:21 -07:00
David Harris
1187187a5c
Divide testfloat starts with half-precision tests
2022-09-18 06:46:47 -07:00
Ross Thompson
6250a65ede
added new constraints for fpga.
2022-09-17 22:20:06 -05:00
Ross Thompson
0fb45cffa1
Removed NonIROM and NonDTIM select signals from IFU and LSU.
2022-09-17 22:01:03 -05:00
Ross Thompson
cc1ba84637
Found the ahb burst bug.
...
We had instruction fetches fixed HSIZE = 2 (4 bytes) for all requests. It should be HSIZE = 3 (8 bytes) for cache fetches and 4 for uncached reads. The reason this worked for non burst is the DDR4 memory controller returns the full double word even for 4 byte reads. In burst mode the second beat ending up pointing to the next 4 bytes rather than the next 8 bytes.
2022-09-17 20:30:01 -05:00
Kip Macsai-Goren
3f4c825a1a
added mstatus uxl, sxl bit tests (not tested in regression yet)
2022-09-18 00:11:29 +00:00
Kip Macsai-Goren
dda3b2d383
ported endianness tests to 32 bits (not tested in regression yet)
2022-09-18 00:10:29 +00:00
Kip Macsai-Goren
99596fac84
Fixed typos in existing endianness test
2022-09-18 00:09:52 +00:00
Kip Macsai-Goren
657e19df08
added full coverage of subword loads and stores to endianness test
2022-09-17 23:14:38 +00:00
David Harris
f65d941561
Reduced number of cycles required for lower-precision sqrt
2022-09-17 09:55:34 -07:00
David Harris
54ad15d595
Starting to adust number of cycles for division/sqrt
2022-09-17 05:58:59 -07:00
cturek
f07d4b3481
Fixed j1 to align with new C reg
2022-09-16 02:15:48 +00:00
Kip Macsai-Goren
a4fc5d3476
Created initial endianness tests
2022-09-16 01:06:26 +00:00
David Harris
a7b5a0419a
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-15 12:49:21 -07:00
David Harris
aa1f3ca2be
renamed endianswap
2022-09-15 12:49:18 -07:00
Ross Thompson
4c8ae8b421
Fixed subword read to work with bigendian.
2022-09-15 14:08:04 -05:00
David Harris
877cc63063
FDIVSQRT cleanup
2022-09-15 09:10:57 -07:00
Ross Thompson
db56a326c9
renamed multimanager to multicontroller.
2022-09-14 14:03:37 -05:00
Ross Thompson
a536829824
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-14 13:59:22 -05:00
cturek
5b35473339
Added shift for radix 4 sqrt
2022-09-14 17:34:24 +00:00
cturek
9757d8ce3e
Moved X-1 to preproc
2022-09-14 17:26:56 +00:00
cturek
0f5b38a6f0
Delete srt
2022-09-14 17:02:42 +00:00
cturek
8378d6b871
removed unnecessary XZero from wsmux
2022-09-14 16:59:52 +00:00
David Harris
4038c4faa9
ZMerge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-14 09:42:17 -07:00
Ross Thompson
2ae62c2869
pipelining of fetch into evict AHB requests.
2022-09-13 17:51:55 -05:00
Ross Thompson
40e7d2648f
Renamed signals in the LSU.
2022-09-13 11:47:39 -05:00
David Harris
2babf1fd7a
Removed unused signals
2022-09-12 11:35:35 -07:00
David Harris
f45bb25618
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-08 16:05:58 -07:00
David Harris
1688d544b9
Moved C to shift before rather than after using in an iteration
2022-09-08 16:05:53 -07:00
David Harris
1c3064af08
divsqrt comment cleanup
2022-09-08 15:40:42 -07:00
Ross Thompson
33ef158ff4
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-08 17:15:46 -05:00
David Harris
e0a9b19008
CSA-based completion detection
2022-09-08 14:58:08 -07:00
Ross Thompson
f5e8021707
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-08 15:55:30 -05:00
Ross Thompson
8618045bf2
Optimization. Able to remove hptw address muxes from the E stage.
2022-09-08 15:51:18 -05:00
David Harris
6b21a9c4c7
ZMerge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-08 11:38:08 -07:00
David Harris
22455f7743
embench cleaned up
2022-09-08 11:38:01 -07:00
Ross Thompson
d12ceb46b0
Oups the ahbinterface.sv was accidentally named abhinterface.sv.
2022-09-08 13:21:37 -05:00
Ross Thompson
fbea27bd69
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-07 16:36:51 -05:00
Ross Thompson
ae4a55471d
Oups fixed order of ending swap with mux between cache and fetch buffer.
2022-09-07 16:29:47 -05:00
David Harris
f628622ea0
Factored out aplusbeq0 unit
2022-09-07 11:36:35 -07:00
David Harris
c2f81e309b
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-07 11:11:39 -07:00
David Harris
b0cf73d19c
Running 16-bit square root cases first in testfloat
2022-09-07 11:11:35 -07:00
Ross Thompson
fd4b382ec6
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-09-07 12:26:50 -05:00
David Harris
e01b03e9b2
Run 16-bit fsqrt tests first
2022-09-07 10:26:09 -07:00
Ross Thompson
54c55b57cb
Named change for ahb tests to be less annoying.
2022-09-07 12:24:41 -05:00
David Harris
d91b4de348
Preprocessing cleanup
2022-09-07 10:21:27 -07:00
Ross Thompson
6581490f9c
Modified regression tests to add some ahb configurations.
2022-09-07 12:03:58 -05:00
David Harris
29f015810b
Added rv32i config for regression of wally32periph
2022-09-07 09:37:59 -07:00
Ross Thompson
d07c44bcf6
Merge branch 'multimanager' into main
2022-09-07 10:54:27 -05:00
David Harris
29f41c6792
Continued simplifying fdivsqrt postprocessing
2022-09-07 07:02:22 -07:00
David Harris
461b9d370d
Continued simplifying fdivsqrt postprocessing
2022-09-07 07:00:13 -07:00
David Harris
825d3169d9
Moving postprocessing into postproc block
2022-09-07 06:42:37 -07:00
David Harris
f40c6b0ec4
fdivsqrtfsm cleanup
2022-09-07 06:32:07 -07:00
David Harris
a0abe48ad2
fdivsqrtfsm cleanup
2022-09-07 06:27:01 -07:00
David Harris
8438546d52
Fixed regression for divsqrt radix2
2022-09-07 06:12:23 -07:00
Ross Thompson
6685b0563e
James found a bug in synchronizer. Was not actually back to back flip flops.
2022-09-06 15:06:54 -05:00
Ross Thompson
99e3f55637
Added logic to make burst optional.
2022-09-06 09:21:21 -05:00
Ross Thompson
fcf72bb6ba
Added generate around the longer latency version of the ram_ahb.sv
2022-09-06 09:21:03 -05:00
Ross Thompson
20842b38b9
Names changes.
2022-09-05 20:49:35 -05:00
Ross Thompson
4e7a52a7a7
Cleaned up hacks to ram.
2022-09-04 14:52:40 -05:00
Ross Thompson
9d5a7281b8
Modified ram_ahb to work with different latencies.
2022-09-04 14:46:15 -05:00
Ross Thompson
7ae58c6654
Progress towards fixing the select HREADY muxing in uncore.
2022-09-04 13:07:49 -05:00
Ross Thompson
26bfaddb25
Disabled AHB burst mode, which discovered a bug.
...
Multimanger bug in how back to back requests were arbitrated.
2022-09-03 22:31:41 -05:00
Ross Thompson
bd37a5c6dc
Fixed fpga debug constraints.
2022-09-03 17:36:29 -05:00
cturek
e709ad4145
Old changes to old files
2022-09-03 22:09:55 +00:00
Ross Thompson
3e540a3ca3
Possible fix to AHB burst eviction bug. If HREADY went low during a burst seq the next data phase would only last 1 cycle.
2022-09-02 19:58:41 -05:00
Ross Thompson
4115087b30
Renamed state in buscachefsm to match AHB phases.
2022-09-02 17:17:40 -05:00
Ross Thompson
472fb5e888
Renamed states in busfsm to match AHB phases and book names.
2022-09-02 17:12:36 -05:00
Ross Thompson
15a2fbdd33
Possible fix for AHB trailing ~HREADY bug.
2022-09-02 16:58:35 -05:00
Ross Thompson
851ad4417d
Merge branch 'multimanager' of github.com:davidharrishmc/riscv-wally into multimanager
2022-09-02 16:31:07 -05:00
Ross Thompson
c7055a3ee2
update to fpga wave.
2022-09-02 15:54:54 -05:00
Ross Thompson
2aa5886769
Fixed brom1p1r.sv to have fpga preload.
2022-09-02 15:49:50 -05:00
Ross Thompson
722e1a029e
Merge branch 'multimanager' of github.com:davidharrishmc/riscv-wally into multimanager
2022-09-02 13:54:48 -05:00
Ross Thompson
559e093ab5
Fixed up FPGA constraints.
...
Added back in the fpga boot rom preload.
2022-09-02 13:54:35 -05:00
David Harris
648a3aae09
Initial radix 4 square root debuggin
2022-09-01 16:57:57 -07:00
Ross Thompson
83c427c5b5
clean up subword write.
2022-09-01 17:55:19 -05:00
David Harris
247ce70348
Fixed lint errors in square root and improved waveforms in testfloat
2022-09-01 15:49:13 -07:00
Ross Thompson
5b4e744972
marked possible improvement to ahb bus fsms.
2022-08-31 23:57:08 -05:00
David Harris
8fad5073cd
fdiv debug
2022-08-31 14:26:31 -07:00
Ross Thompson
5c8631fd16
Reduced busfsm to 3 states!
2022-08-31 16:11:59 -05:00
Ross Thompson
1cd7d8dbfe
Simplified.
2022-08-31 15:40:56 -05:00
Ross Thompson
2b528dc8be
more renaming.
2022-08-31 14:52:06 -05:00
Ross Thompson
ab4c75cbf5
More renaming.
2022-08-31 14:49:08 -05:00
Ross Thompson
6e85f850a4
Moved files.
...
Encapsulated ahbinterface.
2022-08-31 14:45:01 -05:00
Ross Thompson
fcd1465de1
Renamed AHBCachebusdp to abhcacheinterface.
2022-08-31 14:12:19 -05:00
Ross Thompson
d6d1c5d66d
Moved files around.
2022-08-31 14:08:06 -05:00
Ross Thompson
6912656aab
Merge branch 'multimanager' into main
2022-08-31 13:10:22 -05:00
Ross Thompson
39c2cad9af
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-31 13:10:04 -05:00
David Harris
e64f41f199
Checking in radix 4 square root with qsel, fgen, softc, but not working
2022-08-31 10:54:50 -07:00
Ross Thompson
08d0c1cc83
Major cleanup of multimanager.
2022-08-31 12:40:25 -05:00
Ross Thompson
352f7443c2
Cleanup multimanager.
2022-08-31 12:04:44 -05:00
Ross Thompson
d06c64094b
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-31 11:38:29 -05:00
Ross Thompson
1e752c1268
cleanup of multimanager.
2022-08-31 11:38:06 -05:00
Ross Thompson
1663f571ed
More Cleanup.
2022-08-31 11:21:02 -05:00
Ross Thompson
68e54977fe
More cleanup.
2022-08-31 11:12:38 -05:00
Ross Thompson
0b41ed63f1
More simplifications.
2022-08-31 10:45:16 -05:00
Ross Thompson
ddd9c507fe
Trade off. Added additional state to bus fsm separating STATE_CACHE_ACCESS into STATE_CACHE_FETCH and STATE_CACHE_EVICT. This allows removing CacheRWDelay. Saves a bit of logic but fsm is more complex. Also the fsm outputs are simplier.
2022-08-31 10:36:30 -05:00
Ross Thompson
6122c03e39
Removed unused old versions of the bus controllers.
2022-08-31 09:51:54 -05:00
Ross Thompson
1c248e5164
Removed old signals.
2022-08-31 09:50:39 -05:00
DTowersM
dedfadbb14
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-08-31 00:18:04 +00:00
DTowersM
f9cbc9cf8e
fixed qrduino keyerror in embench test
2022-08-31 00:17:58 +00:00
Ross Thompson
5b8f888e21
Maybe fixed it?
2022-08-30 18:08:34 -05:00
Ross Thompson
ccb3e9e24e
Updates to wave file.
2022-08-30 17:34:36 -05:00
Ross Thompson
96793d15c0
more progress.
2022-08-30 17:32:32 -05:00
Ross Thompson
2d6a6c6e44
Temporary commit.
2022-08-30 15:40:42 -05:00
Ross Thompson
63a824cca1
More progress.
2022-08-30 15:27:19 -05:00
Ross Thompson
a532eb61ba
Progress.
2022-08-30 14:17:00 -05:00
David Harris
5956fbdd62
Fixed checking termination in testfloat testbench
2022-08-30 10:55:21 -07:00
Ross Thompson
c8a5d61cbb
new cache bus fsm not working but lints.
...
Forgot a few files in the last commit.
2022-08-30 10:58:07 -05:00
Ross Thompson
5eb1fff27d
Have a rough working multi manager!
2022-08-29 17:11:27 -05:00
Ross Thompson
4f40bd07c3
Modified rv32e configuration to use a true ahb bus interface in the lsu and ifu.
2022-08-29 17:04:53 -05:00
David Harris
cb54e95285
commented out lines to have divider work again
2022-08-29 13:01:32 -07:00
David Harris
758b177067
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-29 12:01:13 -07:00
David Harris
7b0e43bc10
Initial FDIVSQRT simplification working
2022-08-29 12:01:09 -07:00
Ross Thompson
4d7b905806
Part way through the updated bus fsm for direct AHB in lsu/ifu + multi-manager.
2022-08-29 13:01:24 -05:00
Ross Thompson
40cf4a9ea9
Typo.
2022-08-29 11:40:35 -05:00
Ross Thompson
1c9aed2e7e
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-29 11:38:37 -05:00
Ross Thompson
9a7c7e8398
Added comments about planned changes.
2022-08-29 09:48:00 -05:00
David Harris
16cde5f87e
Simplify FSM
2022-08-29 04:32:27 -07:00
David Harris
6961e499dc
Renamed special case
2022-08-29 04:29:58 -07:00
David Harris
81ec1ac858
Separated out radix 2 and radix 4 stages into different modules
2022-08-29 04:26:14 -07:00
David Harris
b4cb9a678a
renamed srt to fdivsqrt
2022-08-29 04:04:05 -07:00
Ross Thompson
35d0b759d1
Removed ignore request from busfsm.
2022-08-28 21:12:27 -05:00
Ross Thompson
dd00474956
Created two new pma regions for dtim and irom.
2022-08-28 13:50:50 -05:00
Ross Thompson
e3e1f29428
Reordered the adrdecs.
2022-08-28 13:38:57 -05:00
Ross Thompson
99e0e5c817
Possible fix.
2022-08-28 13:10:47 -05:00
Ross Thompson
5e77b1bd2b
Partial fix to bus + dtim.
2022-08-27 23:44:17 -05:00
David Harris
35d0a951d2
Preliminary work to make DTIM and Bus compatible. Not yet working because accesses to bus are causing illegal address faults on the bus.
2022-08-27 20:31:09 -07:00
David Harris
3959902c5b
Adding decoding for dtim. Added rv32ic_wally32periph test, which should hang until decoder overrides bus
2022-08-27 05:31:56 -07:00
David Harris
e526fea68a
fixed wally-config
2022-08-26 22:13:10 -07:00
David Harris
bd6f2444cd
Fixed address decoder hanging buildroot
2022-08-26 22:01:25 -07:00
David Harris
bf2c20cd17
Fixed DTIM/IROM_BASE number of bits in buildroot/fpga configs
2022-08-26 21:29:26 -07:00
David Harris
76006825b3
Set bit width of DMEM/IROM_SUPPORTED and fixed address decoding
2022-08-26 21:18:18 -07:00
David Harris
921a49921b
Set correct size of IROM/DTIM and allow FLEN>XLEN with DTIM
2022-08-26 21:05:20 -07:00
David Harris
460a95f99b
Added IROM and DTIM decoding to adrdecs
2022-08-26 20:45:43 -07:00
David Harris
6409548c8b
Replaced DTIM and IROM with DTIM_SUPPORTED, IROM_SUPPORTED, and base and range for each
2022-08-26 20:26:12 -07:00
David Harris
906f6f2990
Renamed DMEM to DTIM and added checks about compatibility of DTIM/IROM and virtmem
2022-08-26 20:12:03 -07:00
David Harris
841eae58ca
Fixed endian swapping on bus only
2022-08-26 19:58:04 -07:00
David Harris
af2e71046e
Fixed rv32e LSU and IFU issues
2022-08-25 20:02:38 -07:00
David Harris
8cbdbb1c38
lsu simplification
2022-08-25 18:52:42 -07:00
David Harris
d507bb3d70
busfsm simplified
2022-08-25 18:36:53 -07:00
David Harris
dc52f55aa6
Removed unused signals
2022-08-25 18:34:39 -07:00
David Harris
50826c0b61
Removed unused signals
2022-08-25 18:30:46 -07:00
David Harris
7cbca2dd22
Removed UncachedBusRead and UncachedBusWrite
2022-08-25 18:24:39 -07:00
David Harris
845807a329
Restored ahbtranstype
2022-08-25 18:22:26 -07:00
David Harris
4ab678ed48
Removed ahbtranstype
2022-08-25 18:21:45 -07:00
David Harris
f405a191af
Removed WordCountFlag
2022-08-25 18:21:18 -07:00
David Harris
db7698202d
Removed UncachedAccess
2022-08-25 18:20:52 -07:00
David Harris
7801ed48b3
Removed UncachedRW
2022-08-25 18:19:41 -07:00
David Harris
bb4ae908db
Removed CacheBusAck
2022-08-25 18:17:34 -07:00
David Harris
85b5587678
Removed SelUncachedAdr
2022-08-25 18:15:59 -07:00
David Harris
555083b0c3
Removed Cache_Enabled
2022-08-25 18:13:34 -07:00
David Harris
b982db5bd5
Removed STATE_BUS_FETCH and STATE_BUS_WRITE
2022-08-25 18:12:09 -07:00
David Harris
de9ec7cc2e
Removed CacheFetchLine and CacheWriteLine
2022-08-25 18:10:15 -07:00
David Harris
fb5ddc476c
Removed CountEn
2022-08-25 18:05:44 -07:00
David Harris
7eae6765df
Removed wordcount
2022-08-25 18:04:49 -07:00
David Harris
73419f0d41
Added buscachefsm for system with bus and cache
2022-08-25 18:01:01 -07:00
David Harris
0b918d6916
Separated busdp for cache from simpler logic for no cache
2022-08-25 17:54:04 -07:00
David Harris
5c1934208a
Simplified swbytemask
2022-08-25 17:32:16 -07:00
David Harris
352bf88ac0
FIxed wallypipelinedsoc merge conflict
2022-08-25 15:36:47 -07:00
David Harris
b96942e84c
Removed delayed AHB signals from top level
2022-08-25 15:34:14 -07:00
Ross Thompson
109bcd470e
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-25 16:01:02 -05:00
Ross Thompson
e70c90d351
Finally resolved the issues with the rv32ic and rv64ic configurations.
2022-08-25 16:00:55 -05:00
Ross Thompson
ad3e632119
Almost fixed issues with irom and dtim address selection.
2022-08-25 15:52:25 -05:00
David Harris
6222e15946
Extended HADDR to PA_BITS
2022-08-25 13:11:36 -07:00
Ross Thompson
32f86b1b6b
Still not working with rv32ic.
2022-08-25 15:03:54 -05:00
David Harris
f782fe9367
Fixed brom name
2022-08-25 12:48:00 -07:00
Ross Thompson
bbf668e460
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-25 14:45:02 -05:00
David Harris
5b3c68fe74
ahblite cleanup
2022-08-25 12:44:25 -07:00
Ross Thompson
4ad7ccc7f7
Possible fixes for earily messup of rv32ic and rv64ic configs.
2022-08-25 14:42:08 -05:00
Ross Thompson
502eb0f5d1
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-25 14:40:52 -05:00
David Harris
d7be94fab2
Cleaned up SelBusWord
2022-08-25 11:18:13 -07:00
David Harris
7a129af9ad
Removed M sufix from busdp signals
2022-08-25 11:13:01 -07:00
David Harris
84ba62a04c
Renamed LSUFunct3M to Funct3 in busdp
2022-08-25 11:08:12 -07:00
David Harris
78618f5fc0
Renaming LSU signals from busdp
2022-08-25 11:05:10 -07:00
David Harris
cd02c894df
renamed BusBuffer to FetchBuffer
2022-08-25 10:44:39 -07:00
David Harris
5dc4fb757a
Continued busdp/ebu simplification
2022-08-25 10:20:02 -07:00
David Harris
24ce72f0a2
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-25 09:52:49 -07:00
David Harris
89860588b8
Renamed AHB signals coming out of LSU to LSH_<AHBNAME>
2022-08-25 09:52:08 -07:00
Ross Thompson
bd9401179d
BROKEN. Don't use this commit.
...
Issue running cacheless with bus.
2022-08-25 11:02:46 -05:00
Ross Thompson
5cc4f1f1cd
Added generate around uncore.
2022-08-25 10:35:24 -05:00
Ross Thompson
1e1646da90
Added generate around ebu.
2022-08-25 09:24:13 -05:00
Ross Thompson
72b886ec8f
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-25 09:03:34 -05:00
Ross Thompson
bc0edc7bdf
Updated ila signals.
...
Improve fpga wave config.
added back in the fpga preload.
2022-08-25 09:03:29 -05:00
David Harris
4ecdbb308a
Renamed DCache to Cache in busdp/busfsm signal interface
2022-08-25 06:21:22 -07:00
David Harris
b9dc8d9e33
Cleanup typos
2022-08-25 04:32:19 -07:00
David Harris
cb2c0fe027
Minor name cleanups
2022-08-25 04:28:25 -07:00
David Harris
a3828420c0
Replaced dtim with rom-based IROM in IFU. Moved cache control signals out of DTIM and IROM
2022-08-25 04:06:27 -07:00
David Harris
fe3147806d
removed simpleram and modified dtim to use bram1p1rw
2022-08-25 03:39:57 -07:00
David Harris
b3a13a01f8
Stripped write capaibilty out of rom_ahb
2022-08-24 17:23:08 -07:00
David Harris
e6077f1f16
Added ROM module and moved memories into generic/mem
2022-08-24 17:03:22 -07:00
David Harris
1ef0c7c2be
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-24 16:30:28 -07:00
David Harris
9d5468887e
Ram cleanup
2022-08-24 16:30:25 -07:00
Ross Thompson
22e989ac7b
No longer need wally-pipelined-fpga.do.
2022-08-24 18:10:45 -05:00
Ross Thompson
b650d7e05a
Renamed RAM to UNCORE_RAM.
2022-08-24 18:09:07 -05:00
Ross Thompson
c636387613
Merged testbench-fpga into testbench.
...
Modified SDC to simplify LimitTimers. LimitTimers needs to be 0 for implmementation and 1 for simulation.
2022-08-24 17:52:25 -05:00
Ross Thompson
07b2858890
added SD card and external ram to common testbench.
2022-08-24 13:27:18 -05:00
Ross Thompson
012559169b
Fixed lint errors with bram wrapper.
2022-08-24 13:19:23 -05:00
Ross Thompson
c6927d2ace
Modified the lsu/ifu memory configurations.
2022-08-24 12:35:15 -05:00
David Harris
e2138d8d0f
bram synthesis test
2022-08-23 19:34:45 -07:00
David Harris
b8cc06a434
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-08-24 00:09:20 +00:00
David Harris
a1311c06ef
Rolled back synth scripts to fff91ae commit before Madeleine's modifications to write config files; the modified version is failing right away with trouble copying configs
2022-08-24 00:09:16 +00:00
Ross Thompson
31d0ad4e38
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-23 18:57:43 -05:00
Ross Thompson
0c52c7f69c
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-23 18:52:15 -05:00
Ross Thompson
ee3d968da0
Found small bug in busfsm which was issuing 1 extra memory read after each cache line fetch. Does not appear to have translated to an extra read out of ahblite.
2022-08-23 18:51:11 -05:00
David Harris
8d48ff4e63
Fixed FPU-IEU forwarding stall
2022-08-23 14:14:41 -07:00
David Harris
8b2e368805
Only stall FPU to IEU on convert instructions with dependencies
2022-08-23 12:57:18 -07:00
David Harris
113258a0d0
Cleaned up fcvt selection control to IEU and FPUIllegalInst signals
2022-08-23 12:17:19 -07:00
David Harris
69be6d0873
Simplify IEU-FP datapath
2022-08-23 11:16:36 -07:00
David Harris
746842107b
Improved illegal instruction checking in FPU
2022-08-23 11:08:02 -07:00
David Harris
27cca2e3fd
Fixed LSU typos
2022-08-23 10:23:08 -07:00
David Harris
46f30d3dbe
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-23 10:14:59 -07:00
David Harris
13831aa3d3
typo in srtfsm
2022-08-23 10:14:54 -07:00
Katherine Parry
f9aa94f87b
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-08-23 16:36:32 +00:00
Katherine Parry
72a54ef621
renamed rounding bits to L,G,R,S and fixed lint warning
2022-08-23 16:36:20 +00:00
Ross Thompson
1f74528792
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-23 11:15:04 -05:00
Ross Thompson
7080fe7788
Reversed order of supported sized in adrdecs.
2022-08-23 11:14:53 -05:00
Ross Thompson
b0606a1699
Replaced FPU data replicaiton on WriteData bus with 0 extention.
2022-08-23 10:46:03 -05:00
Ross Thompson
b9fadc11c3
Replaced LSU data replication with 0 extention.
2022-08-23 10:43:47 -05:00
Ross Thompson
cd0da2e3b3
Updated the names of the *WriteDataM inside the LSU to more meaningful names.
...
Moved the FWriteDataMux so that the bus and dtim both get fpu stores.
Modified the PMA to disallow double sized reads when XLEN=32.
2022-08-23 10:34:39 -05:00
David Harris
9e3d13ca52
Q depends on D
2022-08-23 08:29:59 -07:00
David Harris
7c91ed38a3
LSU minor edits
2022-08-23 07:35:47 -07:00
David Harris
b795cf4731
Updated testbench assertions.
2022-08-23 07:23:24 -07:00
David Harris
a9a5285ba8
Named HTRANS states in busfsm
2022-08-22 13:56:46 -07:00
David Harris
24a05c35d9
Renamed signals for LSU - FPU interface
2022-08-22 13:47:56 -07:00
David Harris
13d863a810
renamed GrantData to LSUGrant
2022-08-22 13:47:19 -07:00
David Harris
34eece10b8
Finished FPU-LSU interface cleanup
2022-08-22 13:43:04 -07:00
David Harris
7151befd04
Removed FStore2 and simplified HPTW
2022-08-22 13:29:54 -07:00
David Harris
bf54c1c868
Simplified FPU-LSU interface to skip IEU
2022-08-22 13:29:20 -07:00
David Harris
fffad8b314
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-22 13:28:54 -07:00
David Harris
2170203847
Simplified FPU-LSU interface to skip IEU
2022-08-22 13:28:51 -07:00
Katherine Parry
a1f0c6c598
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-08-22 17:16:25 +00:00
Katherine Parry
1accb92745
sqrt passes - lint warnings remain
2022-08-22 17:16:12 +00:00
David Harris
564281b8c1
Removed 2-cycle FPU-IEU latency stall
2022-08-22 16:14:15 +00:00
David Harris
1404d1c248
moved CSA to generic
2022-08-22 08:41:23 +00:00
David Harris
a8870b70b2
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-08-22 08:28:31 +00:00
David Harris
b91f33372e
Commented out unused comparators
2022-08-22 08:28:28 +00:00
Ross Thompson
36a3d7cc18
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-21 16:08:59 -05:00
Ross Thompson
88d34d0f56
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-21 16:03:11 -05:00
Ross Thompson
21526957cf
Updated fpga test bench.
...
Solved read delay cache bug. Introduced during cache optimizations.
2022-08-21 15:59:54 -05:00
Ross Thompson
92c3cdc27d
Hmm. Found a bug with the cache's changes from the summer. Cannot return data to CPU at the same time as a write to cache's SRAM and also start another memory operation.
2022-08-21 15:28:29 -05:00
Ross Thompson
a049f456e8
Removed logic from Verilog wrapper.
2022-08-21 14:07:43 -05:00
Ross Thompson
dad6770fc3
Updated fpga testbench.
2022-08-21 14:07:26 -05:00
Katherine Parry
617dc02d01
fixed -1 issue in division
2022-08-20 00:53:45 +00:00
Ross Thompson
96d6218078
Possible reduction of ignorerequest.
2022-08-19 18:07:44 -05:00
Ross Thompson
76f8c991a2
Updated fpga debugger to latest RTL version.
2022-08-19 17:13:36 -05:00
Ross Thompson
5d5042cd49
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-19 16:39:28 -05:00
Ross Thompson
5301444a61
Changed signal names.
2022-08-17 16:12:04 -05:00
Ross Thompson
970a90dd72
Better name for LSUBusWriteCrit. Changed to SelLSUBusWord.
2022-08-17 16:09:20 -05:00
Ross Thompson
c3bd396bdb
Removed old code from interlockfsm.
2022-08-17 12:52:56 -05:00
Katherine Parry
0f077012c3
sqrt tests in regression uncommented and pass
2022-08-07 23:38:10 +00:00
Katherine Parry
8eeca3319c
radix-2 1 copy passes testfloat
2022-08-06 22:54:05 +00:00
Katherine Parry
8f1d8669b0
fixed fsw problem and removed 2 bit shift from shift correction
2022-08-03 22:16:51 +00:00
David Harris
8b8f045491
Completed PLIC-S tests. Regression working. This completes peripheral tests.
2022-08-03 09:33:56 -07:00
David Harris
62252c2167
Debugging plic-s test
2022-08-03 13:21:09 +00:00
David Harris
6ee8036ae7
plic-s debug
2022-08-03 12:33:09 +00:00
David Harris
cfa3ee4ef4
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-08-03 03:48:11 +00:00
David Harris
e3ea86f984
Started plic-s tests
2022-08-03 03:48:08 +00:00
Madeleine Masser-Frye
658f2626f4
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-08-02 16:25:25 +00:00
David Harris
b13cdf79b3
FMA cleanup
2022-08-02 07:42:32 -07:00
David Harris
baeafc4fd2
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-02 07:34:12 -07:00
David Harris
d3e39763b6
Moved InvA to sign block; simplified fmaexpadd coding
2022-08-02 07:34:09 -07:00
Madeleine Masser-Frye
f39631bdf4
changed synthesis to write modified config files in output directory
2022-08-02 12:19:14 +00:00
Madeleine Masser-Frye
48690e6339
edited indentation
2022-08-02 10:23:04 +00:00
Ross Thompson
acd920ae2f
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-01 22:09:11 -05:00
Ross Thompson
f7e64fcd69
Fixed fstore2 in cache?
2022-08-01 22:04:44 -05:00
David Harris
0482bf4fc0
merged lza back into main
2022-08-01 19:45:21 -07:00
David Harris
0b95ca129c
Fixed fmaadd to work with new LZA
2022-08-01 19:40:55 -07:00
Ross Thompson
b8356c7449
Replaced swbytemask with swbytemaskword (1 liner). Credit to David Harris.
2022-08-01 21:12:25 -05:00
Ross Thompson
171cf7413b
Replaced LOGWPL with LOGBWPL (Bus words per line) and LOGCWPL (cache words per line). Replaced with wordlen/8 bytemask.
2022-08-01 21:08:14 -05:00
Ross Thompson
5d9dab6149
pulled swbbytemask out of subword write.
2022-08-01 20:48:45 -05:00
David Harris
8b44037f58
Parameterized fmalza
2022-08-01 16:18:02 -07:00
David Harris
6e78b46761
Completed LZA simplificaiton
2022-08-01 16:13:16 -07:00
David Harris
76021769a7
lza cleanup
2022-08-01 16:01:02 -07:00
David Harris
47d204f4a2
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-08-01 15:47:58 -07:00
David Harris
c8d4f3a542
lza cleanup
2022-08-01 15:47:03 -07:00
David Harris
c531df9c4e
lza cleanup
2022-08-01 15:43:48 -07:00
David Harris
5468a90cf3
lza cleanup
2022-08-01 15:40:12 -07:00
David Harris
4953ccf273
lza cleanup
2022-08-01 15:37:09 -07:00
Katherine Parry
66eca28ccd
regression passes fpu tests
2022-08-01 19:56:25 +00:00
Katherine Parry
9672f5451a
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-08-01 19:55:50 +00:00
David Harris
31215277ee
more lza cleanup
2022-08-01 12:34:00 -07:00
David Harris
48500c642c
LZA cleanup
2022-08-01 12:30:42 -07:00
David Harris
87e6402af6
LZA refactoring switched to Pp1, Gm1, Km1
2022-08-01 12:20:23 -07:00
David Harris
5012b96120
LZA refactoring
2022-08-01 11:36:21 -07:00
Katherine Parry
75f39e0c5b
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-08-01 18:35:07 +00:00
David Harris
231f52c1fd
fmalza edits to match textbook
2022-08-01 18:23:39 +00:00
David Harris
e3b970d3ff
Partitioned fma into separate files
2022-08-01 18:07:38 +00:00
Ross Thompson
01359dbc4b
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-07-31 12:48:51 -05:00
Katherine Parry
de03954946
re-added FStore2 in Cache
2022-07-29 22:54:49 +00:00
David Harris
d2de84a456
Added parity and stop bit tests to UART
2022-07-28 04:35:51 +00:00
David Harris
763a6d7340
Fixed UART reference output
2022-07-27 22:16:38 +00:00
David Harris
f61f0645fe
Finished UART test
2022-07-27 04:06:59 +00:00
David Harris
da275e3c26
Increased timeout threshold to avoid timeout building riscof tests on slow machine
2022-07-27 04:05:21 +00:00
slmnemo
a32698811d
Updated reference file for UART test
2022-07-26 09:39:31 -07:00
slmnemo
8141530f10
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-07-26 09:15:20 -07:00
slmnemo
528dfd9170
Committing changes made to UART test
2022-07-26 09:14:40 -07:00
David Harris
ae4ea00ff0
fixed testbench merge comflict
2022-07-26 06:21:46 -07:00
David Harris
449c80b5f7
More work toward riscof tests
2022-07-26 06:19:13 -07:00
David Harris
094aacdf6f
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-25 23:29:08 +00:00
David Harris
ccf8ccfa24
Added rv32f tests to RV64gc
2022-07-25 23:29:05 +00:00
David Harris
539174f6f6
Tests making successfully except for rv32gc_arch32f, which has FLEN=64 and tries using fld/fsd
2022-07-25 16:23:10 -07:00
David Harris
55ab81e37b
More riscof makefile tuning
2022-07-25 21:15:56 +00:00
David Harris
6b172723bd
Cleaning up Makefiles for riscof to run each set of tests individually and eliminate warnings
2022-07-25 20:50:38 +00:00
David Harris
29c9e25888
Fixed synthesis by removing wally-config.vh at level above hdl directory
2022-07-25 01:50:38 +00:00
Ross Thompson
f1bd2524b7
Don't use this commit yet. Untested.
2022-07-24 15:40:52 -05:00
Ross Thompson
334008630f
Overlapped read fetch line end with eviction write line start. I'm a bit concerned this is not well tested.
2022-07-24 01:20:29 -05:00
Ross Thompson
856ac24686
Removed replay from the config files.
2022-07-24 00:34:11 -05:00
Ross Thompson
e12e6c3acd
Added more i-cache signals to wave file.
2022-07-24 00:24:13 -05:00
Ross Thompson
458bfbf6f6
Merged evict dirty clear with flush write back.
2022-07-24 00:22:43 -05:00
Ross Thompson
70032bf8f4
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-07-23 08:41:59 -05:00
Ross Thompson
5cd6c8069d
signal name cleanup.
2022-07-22 23:36:27 -05:00
Ross Thompson
7d026e02f2
cache cleanup after removing replay on cpubusy.
2022-07-22 23:30:25 -05:00
Ross Thompson
706bc819e1
cache fsm cleanup after removal of replay.
2022-07-22 23:25:09 -05:00
Ross Thompson
0f586c9ed3
Possible improvement to cache which removes the cpu_busy states.
2022-07-22 23:20:37 -05:00
Katherine Parry
bd336f18b3
merged radix-2 sqrt into divider - doesnt work yet
2022-07-23 00:41:18 +00:00
slmnemo
5b71ceac5c
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-07-22 17:13:38 -07:00
slmnemo
0bfc3fda1b
Fixed UART FIFO bugs and added FIFO tests
2022-07-22 17:13:19 -07:00
Daniel Torres
b726b05d61
fixed wally rv32e tests, updated regression makefile to new testflow
2022-07-22 17:09:46 -07:00
Daniel Torres
640c9562d3
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-07-22 15:35:25 -07:00
Daniel Torres
e02c67ed5e
fixed 32priv tests, now passing
2022-07-22 15:35:20 -07:00
Katherine Parry
ee7932c804
divider sizes reworked to match book
2022-07-22 22:02:04 +00:00
Daniel Torres
d95b266d49
changes to test.vh for compatability
2022-07-22 15:00:48 -07:00
Daniel Torres
2bbfd67082
added changes to stvec of reference signatures, modified some tests to copy over reference file instead of running on sail
2022-07-22 14:58:55 -07:00
slmnemo
44c30ec082
fixed error in tests.vh
2022-07-22 14:55:55 -07:00
slmnemo
170601af0b
Added UART test to peripheral test
2022-07-22 14:55:34 -07:00
slmnemo
840c40a7ab
UART updates and PMA fix
2022-07-22 14:49:03 -07:00
Daniel Torres
fbe3a1af12
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-07-22 13:52:19 -07:00
Daniel Torres
261b9aa5a1
commented out embench test that should be commented out
2022-07-22 13:52:13 -07:00
slmnemo
49329b3f42
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-07-22 12:36:06 -07:00
slmnemo
6d8988f71f
Added test comments to reference output
2022-07-22 12:35:59 -07:00
slmnemo
0d98ff74b4
Added PLIC test to regression
2022-07-22 12:35:37 -07:00
Daniel Torres
5d7171f6f8
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-07-22 11:16:09 -07:00
Daniel Torres
526f70e772
commiting current changes to riscof wally tests
2022-07-22 11:14:04 -07:00
cturek
338f44dfc8
Square root negative exponent handling
2022-07-22 16:45:19 +00:00
slmnemo
12c92a05ff
Added new PLIC and UART tests
2022-07-22 07:12:55 -07:00
slmnemo
49565f944c
Added PLIC and UART tests and new functions to the test library
2022-07-22 07:10:39 -07:00
David Harris
07c946bb04
Reset MSR on read
2022-07-22 04:29:27 +00:00
Daniel Torres
28c61a2191
changed gitignore, updated version of arch tests on main build
2022-07-21 21:10:15 -07:00
Daniel Torres
f1578936b8
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-07-21 20:59:01 -07:00
Daniel Torres
bd918d37ba
added support for new version of riscof and arch tests, now supports tests that can be compiled for both rv32 and rv64
2022-07-21 20:58:58 -07:00
slmnemo
99dcff80c9
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-07-21 20:35:52 -07:00
slmnemo
bfa500234d
Fixed UART bug related to parity and MSR/LSR
2022-07-21 20:35:46 -07:00
cturek
c170a8d9b6
Changed testbench to operate on two inputs and one output, changed all test generators, changed srt module to return only one output and take in Mod as a signal to compute integer remainder
2022-07-22 01:27:08 +00:00
cturek
abe1ff906e
Renamed variables, moved output handling to postprocessor, added remainder handling
2022-07-21 20:45:08 +00:00
Daniel Torres
a17361870f
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-07-21 12:50:04 -07:00
Daniel Torres
d44ec059d0
made makefile more specific, just incase future additions
2022-07-21 12:50:02 -07:00
Daniel Torres
6e9b4f4075
removed ugly /ref/Ref from tests.vh, added back d_fsd-align-01.S and d_fld-align-01.S tests to tests.vh, updated makefile to fix the riscof issues and fix fld fsd tests, updated testbench.sv for comptability with changes
2022-07-21 12:47:51 -07:00
Katherine Parry
e330a840b0
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-21 19:38:15 +00:00
Katherine Parry
270216dd02
radix-4 division integrated into srt - not tested
2022-07-21 19:38:06 +00:00
cturek
ddc237f6bc
Division working too
2022-07-21 17:59:10 +00:00
cturek
9c694b887e
Updated Radix2 Sqrt to follow new algorithm
2022-07-21 17:36:21 +00:00
Daniel Torres
dad913cb82
fixed gitmodules
2022-07-21 10:15:13 -07:00
Daniel Torres
f33c6c9455
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-07-21 10:14:20 -07:00
Daniel Torres
e9aedfdc53
changed the default branch of embench
2022-07-21 10:14:05 -07:00
Katherine Parry
67c99d3d1a
added input enables and improved forwarding
2022-07-21 01:20:06 +00:00
Katherine Parry
e8c9830b88
turn off 2 word store durring non-fp instructions
2022-07-20 21:57:23 +00:00
Ross Thompson
9868e685a4
Minor cleanup of cache.
2022-07-19 23:04:23 -05:00
Ross Thompson
6c8ac7851e
Reverted to fetched the demand cache line first then doing the eviction. This is important because of an optimization in the replacement policy. The replacement policy updates the LRU 1 cycle late and reads the LRU 1 cycle late for critical path timing. This means doing the eviction first requires an initial 1 cycle delay but this delay has to be applied to all misses because we don't know if an eviction is required. Since reading the demand line first is logically ok so long as it is not written to the sram until after the eviction.
2022-07-19 22:42:25 -05:00
Katherine Parry
fb890d621d
moved ctrl signal registers into fctrl, also a lot of code cleaning
2022-07-20 02:27:39 +00:00
cturek
d7e90a7086
divsqrt working for floating point
2022-07-20 02:04:20 +00:00
cturek
f75d1c2eef
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-20 02:00:50 +00:00
cturek
8e66b81821
New radix-2 algorithm implemented and working
2022-07-20 02:00:43 +00:00
David Harris
9d125addfa
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-20 01:49:36 +00:00
David Harris
4c740e1494
Reordered embench Makefile to run size tests first
2022-07-20 01:49:33 +00:00
cturek
db39a05abc
small changes
2022-07-20 01:36:25 +00:00
Katherine Parry
531829f7c8
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-19 23:44:41 +00:00
Katherine Parry
afcddf7035
oprimized zeros and replaced complex ?: with always_comb
2022-07-19 23:44:37 +00:00
Daniel Torres
7632ce9ee9
embench no longer launches run automatiacally, need to use make run
2022-07-19 15:16:12 -07:00
Daniel Torres
d33d0d22bd
commented out embench 2.0 tests
2022-07-19 13:36:18 -07:00
Daniel Torres
2c2c8d4d9b
made changes to makefile, now builds fastest version (RV64im) by default. Also removed redundent CFLAG funroll-all-loops (was duplicated)
2022-07-19 13:17:02 -07:00
slmnemo
77f7b179ee
fixed GPIO test by adding a new function to clear PLIC interrupts
2022-07-19 08:59:16 -07:00
Ross Thompson
ffda64587c
Merged together the cache speed updates with the cache sram changes. The fstore2 changes still need to be added.
2022-07-18 23:37:18 -05:00
David Harris
38fac8e05c
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-19 02:58:13 +00:00
David Harris
8caab918ec
Removed duplicate -march from CoreMark makefile
2022-07-19 02:58:07 +00:00
Katherine Parry
4c2afbbc4f
moved Se into execute stage
2022-07-19 01:10:10 +00:00
Katherine Parry
a590728350
reworked fmashiftcalc to match book
2022-07-19 00:04:24 +00:00
David Harris
6ec2a5db4a
Coremark cleanup
2022-07-18 16:48:13 -07:00
David Harris
59eb11b73a
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-18 23:11:12 +00:00
David Harris
ab08826b6a
Cleaned up Coremark makefile
2022-07-18 23:10:22 +00:00
Katherine Parry
86f0327f79
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-18 20:49:01 +00:00
Katherine Parry
e599f82b29
moved Ss to execute stage
2022-07-18 20:48:56 +00:00
Daniel Torres
a190bc4471
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-07-18 13:30:50 -07:00
Daniel Torres
877d0b7364
added additional changes to coremark to support rv32
2022-07-18 13:30:35 -07:00
Daniel Torres
c65aa54a1e
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-07-18 12:13:48 -07:00
Daniel Torres
3f5a5e1093
added the sail change to spike to let it all run normally
2022-07-18 12:13:15 -07:00
Katherine Parry
921debf930
removed underflow from inexactct calculation
2022-07-18 17:51:18 +00:00
Katherine Parry
ea7b32a50b
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-18 17:31:29 +00:00
Katherine Parry
5bb1478859
renamed signals in ocde to match book
2022-07-18 17:31:17 +00:00
David Harris
f4c1c867d0
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-18 10:19:20 +00:00
Ross Thompson
a88543275f
Added degree of freedom to cache/sram. The sram width in bits is no longer defined by XLEN, but instead a separate parameter. This is decoupled from LINELEN, XLEN, and WORDLEN.
2022-07-17 21:05:31 -05:00
Ross Thompson
3670c47141
Updated cache sram's to use 1 sram for all words in a way. Still needs to modified to support subdivision by max physical sram width.
2022-07-17 16:20:04 -05:00
James Stine
2753699fb2
Add back extractSummary mkdir plots
2022-07-17 13:00:44 -05:00
David Harris
7c744f0053
Rewrote convert shift calculation with always for ease of reading
2022-07-17 16:40:58 +00:00
James Stine
3815f19763
Add import os in extractSummary.py
2022-07-17 11:06:30 -05:00
David Harris
7f8ee1e5f4
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-17 01:40:03 +00:00
David Harris
2a965cf634
Don't delete hdl directory at end of run
2022-07-17 01:39:57 +00:00
David Harris
6e1d4ec4ed
restored intPending logic to be sticky for PLIC
2022-07-16 17:43:31 -07:00
Katherine Parry
a4cd157f00
forgot some files
2022-07-15 21:42:45 +00:00
Katherine Parry
e498d87c5c
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-15 20:17:08 +00:00
Katherine Parry
e251022269
merged floating-point radix-2 divider with radix-4
2022-07-15 20:16:59 +00:00
cturek
ec9536f983
Square root radix 2 working, does not work with division
2022-07-14 22:52:09 +00:00
cturek
9f18f6a203
Square root
2022-07-14 21:19:45 +00:00
cturek
38bbd19abf
Six tests passing and a bunch of sizizing issues fixed
2022-07-14 19:38:27 +00:00
Katherine Parry
a0e9e93d4f
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-14 18:16:13 +00:00
Katherine Parry
b069cfbec2
fixed error in divsqrt
2022-07-14 18:16:00 +00:00
cturek
f49c2a969f
S and SM are updating but are not correct yet
2022-07-14 00:39:30 +00:00
Katherine Parry
8506d2be4c
fixed uncommented line in makefile
2022-07-14 00:01:07 +00:00
Katherine Parry
e5a8ac2a44
renamed a file to fit diagram
2022-07-13 23:44:54 +00:00
cturek
7629173b15
DIVLEN and counter updated for sqrt computation and rounding
2022-07-13 22:42:39 +00:00
Katherine Parry
7e163e22a3
some code cleanup
2022-07-13 15:28:22 -07:00
Katherine Parry
77ea4e47cb
removed minus 1 case in rounding
2022-07-13 15:01:38 -07:00
cturek
d57fb6f98a
radix 4 files removed from srt and divlen modified for sqrt
2022-07-13 19:46:48 +00:00
cturek
9b7e63f482
Lint error fixed and added comments to preprocessing
2022-07-13 19:34:04 +00:00
cturek
81f396f885
Testbench accepts standard test vector files
2022-07-13 18:30:18 +00:00
cturek
11bb3f0a3e
Test generation files in common format
2022-07-13 18:11:13 +00:00
cturek
110b762b55
Finalized sqrt, ready for debugging
2022-07-13 17:56:23 +00:00
cturek
31db938e7e
Added adder input selection to on the fly converter
2022-07-13 17:47:27 +00:00
cturek
bb7e73abf0
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-13 17:36:56 +00:00
Katherine Parry
26e39dd325
removed the +1 in the cvt
2022-07-13 09:41:35 -07:00
Katherine Parry
e05b2a07d2
removed warnings and took a mux out of the critical path
2022-07-12 18:32:17 -07:00
cturek
5c9f011561
little fix
2022-07-12 23:04:33 +00:00
cturek
ed9106128f
Square root implemented
2022-07-12 22:45:54 +00:00
Katherine Parry
452b017f9a
found the bug in the store modification
2022-07-12 22:42:19 +00:00
Katherine Parry
2ada8a8bc1
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-12 22:37:20 +00:00
cturek
9d4acc9ddb
C register and other various fixes
2022-07-12 22:18:56 +00:00
cturek
3483b92480
On the fly conversion for square root
2022-07-12 02:21:38 +00:00
Katherine Parry
5c0ecfa433
forgot a file
2022-07-11 18:31:51 -07:00
Katherine Parry
7815b81716
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-07-11 18:30:29 -07:00
Katherine Parry
b728e5054d
variable interations implemented in radix-4 divider
2022-07-11 18:30:21 -07:00
DTowersM
191c7a2ee3
added some preliminary support for coremark XLEN=32, made sure rv64 not impacted
2022-07-11 21:13:09 +00:00
DTowersM
a310ef4ded
switched coremark to 10 iterations
2022-07-11 17:20:38 +00:00
David Harris
2bc8ff555b
added comment about checking SRAM size
2022-07-10 12:48:51 +00:00
David Harris
9cb675b2e4
added comment about RAMs in cacheway
2022-07-10 12:47:34 +00:00
David Harris
ad92d0876e
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-10 03:18:30 +00:00
Madeleine Masser-Frye
0dc3c9462b
improved command line synth functionality
2022-07-09 04:51:23 +00:00
Madeleine Masser-Frye
b196b6b504
explanations and modifications for general ppa use
2022-07-09 03:24:47 +00:00
Madeleine Masser-Frye
19db618b7f
syntheses now write alib in their own directories
2022-07-09 02:40:41 +00:00
Katherine Parry
ca4fe08fd9
renamed FLoad2 to FStore2
2022-07-09 00:26:45 +00:00
Katherine Parry
cd53ae67d9
moved fpu ieu write data mux to lsu
2022-07-08 23:56:57 +00:00
Madeleine Masser-Frye
853a3a5df1
remove outdated scripts
2022-07-08 22:52:53 +00:00
Madeleine Masser-Frye
8dbb45519e
tweaks to run synth without error
2022-07-08 22:52:10 +00:00
Madeleine Masser-Frye
a84aa36530
cleaned up old commands and commented
2022-07-08 22:39:53 +00:00
Madeleine Masser-Frye
79b93e776e
condensed cleanup, changed bpred_size to 4, moved synth hdl into own directory
2022-07-08 22:29:18 +00:00
Madeleine Masser-Frye
8432c6331c
told dc to look in synth directory for hdl and WORK
2022-07-08 22:16:34 +00:00
David Harris
64dd4f1644
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-08 22:00:53 +00:00
David Harris
8c9f483133
CoreMark makefile and printing improvements
2022-07-08 22:00:50 +00:00
cturek
2dc074ea93
F Selection
2022-07-08 21:53:52 +00:00
DTowersM
3e19500fc8
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into HEAD
2022-07-08 21:25:58 +00:00
DTowersM
f36b31a78b
added PORT_CFLAGS and some WIP 32bit support
2022-07-08 21:25:52 +00:00
Madeleine Masser-Frye
27ec022df9
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-08 20:42:04 +00:00
Madeleine Masser-Frye
56f002b707
made parallel synthesis in python command line based
2022-07-08 20:41:59 +00:00
Katherine Parry
3476579e02
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-07-08 12:30:50 -07:00
Katherine Parry
9ef45f36fd
renamed signals in cvt and prostproc
2022-07-08 12:30:43 -07:00
James Stine
c5dfefe669
Update SRAM to /proj/wally
2022-07-08 08:09:55 -05:00
slmnemo
43549b10fb
Fixed error in gpio test
2022-07-08 02:27:16 -07:00
David Harris
d10ad0e883
Removed testbench code that ignores mismatch on zero signatures
2022-07-08 09:17:31 +00:00
David Harris
c72e4d43d2
erge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-08 09:09:07 +00:00
David Harris
381f3298d8
Moved HWSTRB to ahblite, factored out of peripherals. Moved old AHB peripherals to unusedsrc
2022-07-08 09:09:02 +00:00
David Harris
1ce0975366
Adjusting byte writes to RAM
2022-07-08 08:45:21 +00:00
David Harris
3f9e662201
Removed subwordwrite mention in cache because sww is needed to replicate data across byte enables
2022-07-08 08:44:37 +00:00
David Harris
9b6d9666c5
Removed unused swbytemask from CLINT
2022-07-08 08:43:24 +00:00
Madeleine Masser-Frye
023b31a4d2
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-08 08:02:19 +00:00
Madeleine Masser-Frye
8f0f626140
made wally synth flow shell based
2022-07-08 08:02:11 +00:00
Madeleine Masser-Frye
8e6aa12b2b
restore flatten
2022-07-08 08:01:10 +00:00
David Harris
76ab5e7993
makefile
2022-07-07 16:43:03 -07:00
David Harris
10ebcd1f95
CoreMark makefile tuning
2022-07-07 16:42:30 -07:00
Katherine Parry
905b7ffc84
moved unsused division code again
2022-07-07 16:41:26 -07:00
cturek
b7e590ebb0
Sqrt exponents
2022-07-07 23:34:56 +00:00
Katherine Parry
5751d86f69
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-07-07 16:29:44 -07:00
Katherine Parry
2bbde827e6
Revert "moved old divsqrt to unusedsrc"
...
This reverts commit c9f5ae12ea
.
2022-07-07 16:29:17 -07:00
DTowersM
5a68ff9afb
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into HEAD
2022-07-07 23:11:35 +00:00
DTowersM
d55833e4f3
new slim benchmarks/coremark directory now works on addins/coremark repo, removed old riscv-coremark directory
2022-07-07 23:11:02 +00:00
Katherine Parry
c9f5ae12ea
moved old divsqrt to unusedsrc
2022-07-07 16:09:56 -07:00
Katherine Parry
41c16be012
srt divider merged into fpu
2022-07-07 16:01:33 -07:00
cturek
b41a6f069b
Seventeen Square Root Tests
2022-07-07 22:48:46 +00:00
David Harris
96a75d7749
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-07 22:00:59 +00:00
Katherine Parry
08769e35ae
modified wally shared
2022-07-07 21:59:43 +00:00
David Harris
2f342c430e
fixing port errors
2022-07-07 21:57:10 +00:00
Katherine Parry
0b40f38f02
added load and store test
2022-07-07 21:48:51 +00:00
cturek
89e17b6f3c
Preprocessing for square root
2022-07-07 21:23:30 +00:00
David Harris
88e3233935
Preliminary SRAM integration
2022-07-07 19:56:20 +00:00
Madeleine Masser-Frye
3135e1202e
plot tuning, fo4 axis
2022-07-07 16:44:02 +00:00
David Harris
7ab747dc43
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-07 15:57:50 +00:00
Madeleine Masser-Frye
528c24a02f
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-07 15:52:05 +00:00
Madeleine Masser-Frye
2f28cbf909
updated synth flow to prevent runs from writing over each other's configs
2022-07-07 15:52:01 +00:00
David Harris
b7462ed6ed
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-07 15:51:33 +00:00
Madeleine Masser-Frye
8b92713cbd
set input delay when flop-driven, added run clock
2022-07-07 15:50:34 +00:00
slmnemo
c5fd98ba99
sim-buildroot-batch now runs wally-pipelined-batch
...
with option buildroot buildroot-no-trace to boot linux from step 0
2022-07-06 18:06:43 -07:00
David Harris
6a030fc2a3
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-06 23:44:47 +00:00
DTowersM
47a990d9f1
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into HEAD
2022-07-06 23:44:27 +00:00
DTowersM
1e8ccf3449
added changes to the testbench and benchmarks/coremark to support running the addins directory without the fpu
2022-07-06 23:43:57 +00:00
David Harris
08ae2db080
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-06 23:43:05 +00:00
Ross Thompson
bd46cf76a9
Fixed an issue with direct map cache's nextway logic.
...
Also found a small error in the replacement policy.
2022-07-06 18:34:30 -05:00
Madeleine Masser-Frye
cb33d2289b
fixed width mismatch for rv64 ieuadrM and readdatawordM
2022-07-06 22:39:35 +00:00
David Harris
149301db32
Removed Sky130 libraries
2022-07-06 13:50:11 +00:00
David Harris
9ef38145d7
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-06 13:26:26 +00:00
David Harris
a599084b88
PLIC and UART passing tests on APB
2022-07-06 13:26:14 +00:00
slmnemo
f8059e9e40
Resolved conflicts between different gpio files
2022-07-05 18:38:52 -07:00
slmnemo
b3cd9de9e8
Fixed discrepancies between GPIO tests and book and removed extra unused code from CLINT tests.
2022-07-05 18:21:17 -07:00
Madeleine Masser-Frye
846f12aa2e
new priority onehot module for better area/time
2022-07-06 00:08:59 +00:00
Madeleine Masser-Frye
01e6d69a67
took first match out of pmpadrdec
2022-07-06 00:02:01 +00:00
Madeleine Masser-Frye
50e9b6ac53
fixed concatenation syntax
2022-07-05 22:36:54 +00:00
Madeleine Masser-Frye
ca65ca2877
organized ppa files into ppa directory
2022-07-05 22:28:25 +00:00
cturek
e7ac99a683
Radix 2 Integer division working (without signs or remainder)
2022-07-05 21:34:49 +00:00
David Harris
d73645944f
APB CLINT passing regression
2022-07-05 15:51:35 +00:00
David Harris
d033659beb
Modified uncore to use AHB bridge to GPIO
2022-07-05 05:02:21 +00:00
David Harris
e7fe7ad0c8
AHB bridge for gpio
2022-07-05 05:01:59 +00:00
David Harris
4723ff559c
Added reference to Schmookler01 for LOA
2022-07-05 05:01:12 +00:00
David Harris
aa3dc8bfe1
Added comments to PLIC about likely bug
2022-07-05 05:00:29 +00:00
David Harris
4c48d71e4b
removed delay in ahblite
2022-07-05 04:59:28 +00:00
David Harris
0232593e88
Fixed typos in gpio test comments
2022-07-05 04:57:42 +00:00
David Harris
dab87811e9
Removed sig4 spurious message from testbench
2022-07-05 03:27:14 +00:00
David Harris
2b3038edf8
Added check to halt testbench on failing to find file
2022-07-05 02:28:59 +00:00
Katherine Parry
7a139e0d71
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-07-03 21:41:13 -07:00
Katherine Parry
010a05f583
added missing files
2022-07-03 21:40:47 -07:00
David Harris
37ae414ff2
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-04 03:21:08 +00:00
David Harris
c830a0baf8
fixed tininess detection in TestFloat examples, merged change in WALLY-TEST-LIB
2022-07-04 03:21:04 +00:00
Katherine Parry
1b4584e825
Renaming signals to match chapter
2022-07-03 12:26:22 -07:00
David Harris
bde1c5eb1b
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-07-02 19:37:14 +00:00
David Harris
52dbc9f8be
FMA ZAligned name
2022-07-02 19:35:13 +00:00
slmnemo
8cc051915d
Fixed make error
2022-07-01 16:28:29 -07:00
Katherine Parry
575b73fa8c
some prostprocessing cleanup
2022-07-01 14:55:46 -07:00
slmnemo
67fd3be9d4
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-06-29 13:40:15 -07:00
slmnemo
11956d0661
./regression-wally -buildroot or ./regression-wally -all now builds Linux from instruction 0 instead of trying to reach instruction 246000000
2022-06-29 13:40:11 -07:00
Daniel Torres
a384a6465b
reverted tests.vh to work on existing flow, added commented out paths to new riscof tests once that build has finished
2022-06-29 12:32:30 -07:00
Daniel Torres
50b9b4557c
added changes to testbench, tests and riscof for additional riscof compatability
2022-06-29 12:23:40 -07:00
Katherine Parry
6baded9121
added rv32 double precision stores - untested
2022-06-28 21:33:31 +00:00
Katherine Parry
478a2e2a4b
removed an adder out of early termination
2022-06-28 18:01:11 +00:00
Madeleine Masser-Frye
cbf1a59d1b
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-28 06:42:41 +00:00
slmnemo
5ef1266d76
Added termination line to CLINT test
2022-06-27 20:16:29 -07:00
slmnemo
448c9fdbb9
Add CLINT tests from book
2022-06-27 20:09:58 -07:00
Madeleine Masser-Frye
f6d38a5558
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-28 02:28:30 +00:00
Madeleine Masser-Frye
aa253748fc
update wally synth analysis
2022-06-28 02:28:13 +00:00
Madeleine Masser-Frye
f458deaf00
make clean rm extra files
2022-06-28 02:23:29 +00:00
slmnemo
ee8349e832
will this work in git
2022-06-27 18:59:44 -07:00
slmnemo
283647cf5e
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-06-27 18:56:40 -07:00
slmnemo
ddf757078b
Added reset read testcodes to GPIO
2022-06-27 18:56:35 -07:00
Katherine Parry
a3e46348c7
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-28 00:16:36 +00:00
Katherine Parry
f2d05911ca
very basic early termination passes testfloat 64-bit tests
2022-06-28 00:16:22 +00:00
cturek
3a40c68549
Updated radix 2 divider to work with integers and floats in new structure. Integers still might not work.
2022-06-27 23:55:21 +00:00
cturek
54938c7abf
Added int tests
2022-06-27 21:44:06 +00:00
Katherine Parry
f25bb4a384
radix-4 early termination working for special cases - not working completely
2022-06-27 20:43:55 +00:00
Katherine Parry
2d5d1f4e8f
radix-4 divider passing all double precision testfloat tests
2022-06-27 17:04:51 +00:00
Katherine Parry
06f7f9b147
fixed commented out error and removed killprod from result selection
2022-06-25 01:42:23 +00:00
Katherine Parry
d16ae7c305
passing regression again
2022-06-25 00:31:32 +00:00
Katherine Parry
913a381442
commented out error - also some divider bugs fixed
2022-06-25 00:04:53 +00:00
Katherine Parry
c1b4e7fd2c
modified result select to account for x/inf
2022-06-24 21:23:15 +00:00
Katherine Parry
a65c0eb679
radix 4 division denormal result handeling
2022-06-24 21:02:50 +00:00
Katherine Parry
2929422614
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-24 19:42:00 +00:00
Katherine Parry
d058ec6329
added denormal input handeling - radix 4
2022-06-24 19:41:40 +00:00
Madeleine Masser-Frye
9685a37a5f
organizing synth scripts
2022-06-24 06:43:44 +00:00
Madeleine Masser-Frye
528ac7f7f2
wally config, freq, and path sweep synth automation
2022-06-24 06:30:57 +00:00
Madeleine Masser-Frye
2f90292e10
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-24 01:15:16 +00:00
Madeleine Masser-Frye
6488d6c915
fixed plot naming and axes
2022-06-24 01:14:53 +00:00
Katherine Parry
45e918b02f
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-24 01:09:53 +00:00
Katherine Parry
fc75fc633f
division by zero added
2022-06-24 01:09:44 +00:00
Madeleine Masser-Frye
563212ba4f
added flop as default driver and load
2022-06-24 00:51:09 +00:00
Madeleine Masser-Frye
c45fc8ecf9
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-24 00:23:53 +00:00
Madeleine Masser-Frye
d8c7122a75
ignore folder of PPA synth runs
2022-06-24 00:22:57 +00:00
Madeleine Masser-Frye
69a54ba54e
wally synthesis analysis
2022-06-24 00:21:39 +00:00
slmnemo
51426ab71a
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-06-23 16:51:51 -07:00
slmnemo
7c019ea074
Removed references to initialization files
2022-06-23 16:50:27 -07:00
David Harris
178f4efbab
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-23 23:16:45 +00:00
David Harris
dc5f80a3ca
Default value of Drive in Makefile
2022-06-23 23:16:43 +00:00
Katherine Parry
86cdbd90e6
forgot a file
2022-06-23 23:01:30 +00:00
Katherine Parry
97ded2cdd9
div debug - accounted for 1 bit normalization in exponent calculation
2022-06-23 22:59:43 +00:00
Katherine Parry
d17596353b
lint warning fix
2022-06-23 22:37:44 +00:00
Katherine Parry
b54d84195f
added radix-4 0/d handling
2022-06-23 22:36:19 +00:00
slmnemo
53b2487ead
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-06-23 14:39:59 -07:00
slmnemo
ded2631567
Removed big64.txt reference, fixing a warning
2022-06-23 14:39:53 -07:00
Katherine Parry
5133b08161
generate qsel4 in verilog
2022-06-23 21:38:04 +00:00
slmnemo
a77fb485db
Added wally32periph to regression
2022-06-23 14:37:18 -07:00
David Harris
2c4b86c703
Fixed typo in clint
2022-06-23 21:27:46 +00:00
David Harris
ceddc99ac9
Reset mtimecmp in clint
2022-06-23 21:20:55 +00:00
slmnemo
4c8f5fbd89
Fixed error in GPIO signature
2022-06-23 14:12:28 -07:00
David Harris
66b148b76e
GPIO tests
2022-06-23 21:06:11 +00:00
slmnemo
3d794742e9
Updating new GPIO tests
2022-06-23 13:22:00 -07:00
slmnemo
95b22244ad
Fixed wally-periph, regression is now working
2022-06-23 13:08:15 -07:00
James Stine
79bf543ba9
Update
2022-06-23 11:59:05 -05:00
James Stine
001e8e077d
Add sqrt qlsc table generator
2022-06-23 11:46:44 -05:00
Katherine Parry
49067792dc
fixt lint error
2022-06-23 16:11:50 +00:00
Katherine Parry
4a6dee5926
Testfloat running division - not passing
2022-06-23 00:07:34 +00:00
slmnemo
3e2afdf53b
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-06-21 16:10:25 -07:00
slmnemo
10b6ff39a8
changed order of makefiles and fixed warnings when running makes
2022-06-21 16:10:18 -07:00
David Harris
2577b5c3a4
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-21 22:56:02 +00:00
David Harris
3d5645d683
Trimmed lint-wally
2022-06-21 22:56:01 +00:00
slmnemo
d291387b81
added individual makes for arch and wally tests as well as memfiles to Makefile. run using make archtests/wallytests/memfiles
2022-06-21 15:54:24 -07:00
Katherine Parry
e9f5778e2a
using memread for quotent select
2022-06-21 15:49:52 -07:00
Katherine Parry
c41391e228
removed rv64fp from lint
2022-06-21 15:48:47 -07:00
David Harris
8537b883d1
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-21 22:45:28 +00:00
Daniel Torres
cf56a0d76a
fixed issue where the unused spike elf files were being used to find objdump files that didn't exist causing makefile-memfile to fail prematurely
2022-06-21 15:39:04 -07:00
Madeleine Masser-Frye
a1d4da7f07
cleaning house
2022-06-21 20:34:01 +00:00
Madeleine Masser-Frye
0161683945
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-21 20:31:06 +00:00
Madeleine Masser-Frye
fe31ee92e8
switched comparator to dc flip version
2022-06-21 20:30:33 +00:00
James Stine
493d3b1ac0
Add hex output in bad but okay way
2022-06-21 15:07:24 -05:00
James Stine
8e177b02e4
Add MATLAB scripts for PD plot
2022-06-21 10:14:53 -05:00
slmnemo
2b2760f5bd
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-06-21 02:16:26 -07:00
slmnemo
2b2ddbcc5e
Added rudimentary GPIO test according to testplans in chapter 15
2022-06-21 02:16:21 -07:00
Katherine Parry
edc15d6ef9
made fixes to radix-2 divider testbench - divider doesn't pass
2022-06-20 23:01:53 +00:00
Katherine Parry
5d5f79eb8f
radix-4 divider passing tests
2022-06-20 22:56:08 +00:00
Katherine Parry
254ebf478e
added fld in rv32 - needs testing
2022-06-20 22:53:13 +00:00
James Stine
1108268557
Update C program for r=4 division by recurrence to match Table in EL
2022-06-20 11:32:40 -05:00
Daniel Torres
e79134428e
graph generator now generates 4 graphs, with space for 4 more
2022-06-17 21:28:28 -07:00
Daniel Torres
d077199608
embench and testbench now support running both O2 and Os build variations without overwriting one another
2022-06-17 21:15:42 -07:00
Daniel Torres
11b4cf9ea3
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-17 20:53:19 -07:00
Daniel Torres
1ef5ed8005
arch tests now run on spike and sail and compare signatures during build
2022-06-17 20:53:15 -07:00
Madeleine Masser-Frye
30891550f5
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
...
removing runArchive and plots directories from synthDC history
2022-06-18 00:13:30 +00:00
Madeleine Masser-Frye
27139a8bd6
Create test2
2022-06-17 23:22:04 +00:00
Daniel Torres
9a2e7bcd64
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-17 15:50:10 -07:00
Daniel Torres
dcdd3702c3
removed old code from makefile, simplified code in testbench
2022-06-17 15:13:38 -07:00
Daniel Torres
3a5c02b44a
arch bug fixes and testbench changes
2022-06-17 15:07:16 -07:00
Madeleine Masser-Frye
ab7c936788
remove run deletion with wally synthesis
2022-06-17 19:45:38 +00:00
Madeleine Masser-Frye
a89e689520
error calculation function, fixed energy units
2022-06-17 19:36:32 +00:00
Madeleine Masser-Frye
12b76e4fe2
latest synths and synth script
2022-06-17 19:34:58 +00:00
David Harris
7e4988c2de
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-17 15:45:24 +00:00
Daniel Torres
aa05dd7636
added new work files to gitignore
2022-06-16 18:06:25 -07:00
Daniel Torres
311427532c
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-16 18:05:18 -07:00
Daniel Torres
cf55b7edc0
added files needed for arch to build
2022-06-16 18:05:06 -07:00
Katherine Parry
8425f8838d
hopefully fixed lint error
2022-06-17 00:14:39 +00:00
Katherine Parry
93906b9457
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-15 22:58:42 +00:00
Katherine Parry
e121dcd4af
postprocess out of fpu critical path
2022-06-15 22:58:33 +00:00
Madeleine Masser-Frye
c2493168b6
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-15 18:30:27 +00:00
Madeleine Masser-Frye
76e30ed8ab
cleanup, plots for paper
2022-06-15 18:28:36 +00:00
Madeleine Masser-Frye
d23d5d12f2
fresh set of syntheses
2022-06-15 18:26:16 +00:00
James Stine
d69a8f4077
Add back SV for integer division to use 8-bit CPA in qslc
2022-06-15 11:46:39 -05:00
James Stine
535a9a04ee
Add r=4 C code
2022-06-15 11:44:09 -05:00
Katherine Parry
11b252a735
some synth fpu optimizations
2022-06-14 23:58:39 +00:00
David Harris
ecd733942a
Removed testbench.sv.bak
2022-06-14 22:04:38 +00:00
DTowersM
a0d6f948b8
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-14 17:08:48 +00:00
DTowersM
2023a2af2c
fixed a typo in makefile
2022-06-14 17:08:39 +00:00
Katherine Parry
998876ce49
removed false critical path from fpu
2022-06-14 16:50:46 +00:00
Katherine Parry
566001e07b
fixed acciedental critical path in FPU
2022-06-14 00:02:38 +00:00
DTowersM
919c1818a8
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-13 23:34:35 +00:00
DTowersM
3d8cf0c0a7
fixed typo in git ignore
2022-06-13 23:34:27 +00:00
DTowersM
8178a6732b
added back the .git ignore and .git modules for the coremark directory, also added graphGen to the main repo
2022-06-13 23:33:10 +00:00
DTowersM
1f4d56ba32
added back working coremark in benchmarks/riscv64-bcoremarkdirectory, experimental simplifications are in benchmarkscoremark/ but this doesn't currently work (some type of c bug)
2022-06-13 23:23:57 +00:00
Katherine Parry
31fd8772cf
postprocessing unit created and passing all tests
2022-06-13 22:47:51 +00:00
David Harris
8ea484a343
Cleanup on RAM module
2022-06-13 19:37:43 +00:00
David Harris
b7a7ca6eac
Typo in gpio reset
2022-06-13 19:37:05 +00:00
slmnemo
eb41185a70
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-06-13 12:30:33 -07:00
David Harris
be65e8f862
Removed SRT testvectors from repo
2022-06-13 19:27:33 +00:00
slmnemo
915b8e2adb
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-06-13 12:27:23 -07:00
slmnemo
7b704f8db0
Merge branch 'cacheburstmode' into main.
...
Cache burst mode is now working! It also uses the new RAM.
2022-06-13 12:26:18 -07:00
slmnemo
98c07ce2c0
Added more comments
2022-06-13 12:26:08 -07:00
David Harris
ccd16210bc
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-13 19:26:07 +00:00
David Harris
e9ef9a5cb8
Fixed XOR logic in GPIO
2022-06-13 19:26:03 +00:00
slmnemo
3d715a098c
Added comment about name of LSUBusInit/Lock signal
2022-06-13 10:56:02 -07:00
slmnemo
cadd62e49f
Removed irrelevant comments in ahblite and made it more clear when to use certain transmission signals
2022-06-10 20:43:56 -07:00
slmnemo
beb4317e68
Added comments to signals added so the bus is easier to analyze
2022-06-10 20:30:04 -07:00
slmnemo
b7357efc6b
Fixed failed regression state by only enabling counting when doing cached operations
2022-06-10 20:00:09 -07:00
slmnemo
63ed390c90
Fixed error where CntReset would be high one cycle too long, adding a cycle of delay. Broke wally64priv by failing trap-sret-01.
2022-06-10 19:10:01 -07:00
Madeleine Masser-Frye
422bd2043f
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-10 21:11:47 +00:00
Madeleine Masser-Frye
6cf37feb8d
equation table, plot adjustments
2022-06-10 21:11:39 +00:00
Madeleine Masser-Frye
7cdf9cd4d3
added 'd' suffix to muxes for data-critical synths
2022-06-10 21:11:05 +00:00
DTowersM
4bbe5eeecd
simplified coremark
2022-06-10 19:15:17 +00:00
DTowersM
13c1cf12b2
added some comments to help debuggers in the future
2022-06-10 01:44:52 +00:00
slmnemo
dc11066ff2
Passed Regression: Seems to work perfectly fine
2022-06-09 18:21:13 -07:00
slmnemo
ec7cdee0f3
Merge branch 'main' into cacheburstmode
2022-06-09 17:51:03 -07:00
slmnemo
5a6eae214a
?
2022-06-09 17:50:47 -07:00
DTowersM
9e2d80764d
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-10 00:38:07 +00:00
DTowersM
dd34f25ffd
changed DCACHE_LINELENINBITS and ICACHE_LINELENINBITS to 512, had to modigy the wfi test to increase timee before interupt to mantain compatability
2022-06-10 00:37:53 +00:00
slmnemo
3e8d3bae88
Changes made on 9th Jun
2022-06-09 17:33:51 -07:00
slmnemo
4ff105f18c
Fixed lint error
2022-06-09 17:22:04 -07:00
David Harris
c836f37a08
New RAM for further testing
2022-06-09 23:50:43 +00:00
stineje
470c0552f8
Update integer division for r4 and qslc_r4a2.c
2022-06-09 16:45:13 -05:00
David Harris
dd4fa7c682
qslc_r4a2 generator
2022-06-09 17:26:47 +00:00
slmnemo
0d04751c77
Fixed error when doing uncached accesses where HTRANS was always 2
2022-06-08 18:58:07 -07:00
slmnemo
81d373c7ab
Fixed error related to bus being unable to complete a line write after a memory read followed by an idle and cachewrite request.
2022-06-08 17:34:02 -07:00
Madeleine Masser-Frye
0e64494e46
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-09 00:08:15 +00:00
Madeleine Masser-Frye
5522adc922
restored functionality of makeCoefTable()
2022-06-09 00:07:51 +00:00
Madeleine Masser-Frye
a58a756076
added one bit muxes for data critical synths
2022-06-09 00:06:12 +00:00
Madeleine Masser-Frye
310f55b6b7
added false path for data critical muxes
2022-06-09 00:05:38 +00:00
slmnemo
11924bdd9b
Fixed error where MEMREAD would go into INSTRREAD even when no INSTRREAD was pending
2022-06-08 15:59:15 -07:00
slmnemo
e17ee3073e
Fixed ifu displaying LSU bus state in wave.do
2022-06-08 15:30:32 -07:00
slmnemo
315c2f0669
Working version: Fixed error where Word count would always increment even without AHB to bus ACK
2022-06-08 15:29:32 -07:00
slmnemo
054cf5f7b0
Reworked AHB fsm to support one cycle latency read and writes, renamed key signals to better reflect their use, and fixed HTRANS errors
2022-06-08 15:03:15 -07:00
DTowersM
2064f1798a
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-08 17:27:23 +00:00
DTowersM
eda8bb732b
Added my name to the makefile
2022-06-08 17:27:16 +00:00
DTowersM
6402b2dec4
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-08 16:28:18 +00:00
DTowersM
6944996329
added #1 delays to Stalls and Flushes in hazard unit
2022-06-08 16:28:09 +00:00
slmnemo
284e0395a0
Merge branch 'main' into cacheburstmode
2022-06-08 02:21:33 +00:00
slmnemo
2d76953d42
Added lock signal to ensure AHB speaks with the right bus
2022-06-08 02:19:21 +00:00
David Harris
5240bd1c90
Modified RAM for single-cycle latency
2022-06-08 02:06:00 +00:00
David Harris
3c8eafc8ee
Cleaned bram interface
2022-06-08 01:39:44 +00:00
David Harris
9e5ab4d378
Added ahbapbbridge and cleaning RAM
2022-06-08 01:31:34 +00:00
DTowersM
a190342b8a
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-07 23:58:58 +00:00
DTowersM
02a424d65b
modified testbench.sv- now works with coremark
2022-06-07 23:58:50 +00:00
DTowersM
e324db71b4
cleaned up the <begin_signature> code, now works for code bases larger than 0x10000000
2022-06-07 23:27:54 +00:00
slmnemo
6d36150c3d
Fixed off-by-one error in busdp capture
2022-06-07 19:36:39 +00:00
Madeleine Masser-Frye
c46fbf2260
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-07 18:31:54 +00:00
Madeleine Masser-Frye
659449256a
fixed importing of area-optimized synths, overlayed them on PPA plots, accounted for mux outliers, fixed flop adjustments
2022-06-07 18:31:49 +00:00
slmnemo
73e0c1c07f
Reworked bus to handle burst interfacing
2022-06-07 11:22:53 +00:00
DTowersM
df330961b8
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-07 06:03:19 +00:00
DTowersM
590cf243bb
added support for 64 bit rv tests
2022-06-07 06:02:23 +00:00
DTowersM
3e30a4ad22
simplified makefile. Now can call modelsim to run embench runs. Additionally added spike builds to be able to run the embench tests on spike. typing make now builds all necessary files and starts the simulator on the embench
2022-06-06 22:39:22 +00:00
Katherine Parry
cfcaddf8aa
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-06 16:06:54 +00:00
Katherine Parry
8fa0fc4229
fma synth warnings and errors removed
2022-06-06 16:06:04 +00:00
Ross Thompson
882f174553
Modified debugger for updated rtl.
2022-06-04 14:39:55 -05:00
slmnemo
7f70655113
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-06-03 18:56:29 -07:00
slmnemo
3fe78c9084
Fixed recurrent issue with testbench where it would never stop
2022-06-03 18:56:24 -07:00
cturek
afdfe770fc
Added integer division in srt, parametrized everything to work with integers and floating points, parametrized testbench.
2022-06-04 00:14:10 +00:00
Madeleine Masser-Frye
411243f335
added area, leakage, energy, adjustment by adder width (N/32)
2022-06-03 23:51:34 +00:00
Madeleine Masser-Frye
8c84d5fdc7
added combined process regression line
2022-06-03 22:53:03 +00:00
Madeleine Masser-Frye
55f3c479e6
removing plots and archived runs from repo
2022-06-03 22:15:51 +00:00
DTowersM
caaf56cbf7
testbench now reads begin_signature addr from .objdump.addr instead of from tests.vh
2022-06-03 22:07:14 +00:00
Madeleine Masser-Frye
865126e636
stop tracking runArchive and ppa plots
2022-06-03 22:03:26 +00:00
Madeleine Masser-Frye
b5b29ea705
plots and synth runs
2022-06-03 21:23:04 +00:00
Madeleine Masser-Frye
1bf1a6d3a5
update
2022-06-03 21:17:50 +00:00
Madeleine Masser-Frye
56a053fc3d
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-03 21:08:49 +00:00
Madeleine Masser-Frye
31e9d0a41a
added muxes and inv, fixed priority encoder
2022-06-03 21:03:13 +00:00
Katherine Parry
fd980fe9d6
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-03 15:34:27 +00:00
Katherine Parry
6b39b8c702
fixed compilation errors
2022-06-03 15:34:17 +00:00
slmnemo
9d1dfbdb50
Changed NO_SPOOFING from 0 to 1 in buildroot-no-trace to better facilitate wally booting linux without following QEMU's trace
2022-06-03 04:55:14 -07:00
Katherine Parry
8420b1e87c
removed some debuging code accedentally pushed
2022-06-02 22:45:19 +00:00
Katherine Parry
6a4502e987
added rv64fpquad
2022-06-02 22:10:00 +00:00
Katherine Parry
cd8b2a2b98
added config rv64fpquad
2022-06-02 22:09:11 +00:00
David Harris
c74fec7fa6
renamed sim-fp to sim-testfloat
2022-06-02 15:05:29 -07:00
Katherine Parry
21f7d16005
added create all vectores file
2022-06-02 21:56:47 +00:00
Katherine Parry
03280c0f9c
added createallvectors
2022-06-02 21:56:05 +00:00
David Harris
0195178a79
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-02 20:50:56 +00:00
Katherine Parry
f573f9d17b
removed fp vectors
2022-06-02 20:50:32 +00:00
David Harris
4c702fa03c
Reverted fp testcase ignore
2022-06-02 20:50:23 +00:00
David Harris
bb30c90eeb
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-02 20:48:34 +00:00
David Harris
ed7d6d4c28
mulAdd tests in gitignore
2022-06-02 20:48:14 +00:00
Katherine Parry
94867e3b14
added testvectors fp
2022-06-02 20:48:10 +00:00
slmnemo
c8515001a2
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-06-02 12:54:08 -07:00
Katherine Parry
9a09ee3a35
fpu paramaterized - except fdivsqrt
2022-06-02 19:50:28 +00:00
slmnemo
88454aa2ab
Revert "parametrized linux testbench's DEBUG_TRACE and added parameters to relevant calls of the linux testbench in wally-pipelined.do"
...
This reverts commit 89c7438424
.
2022-06-02 12:45:21 -07:00
slmnemo
ad9e85beb9
Revert "Fixed buildroot by adding a second ."
...
This reverts commit 8b27c1884e
.
2022-06-02 12:43:59 -07:00
slmnemo
65b8d0c32a
Revert "Added parameter to keep tracking on for buildroot and buildroot-checkpoint in regression.py"
...
This reverts commit e33ca59d46
.
2022-06-02 12:41:01 -07:00
slmnemo
0d650b2880
Revert "Added parameters for DEBUG_TRACE to buildroot, buildroot-checkpoint, and buildroot-notrace"
...
This reverts commit e4024eb503
.
2022-06-02 12:40:46 -07:00
David Harris
1d8bc2dc1b
Added stalls for pending SFENCE.VMA and FENCE.I in hazard unit
2022-06-02 09:37:59 -07:00
David Harris
154410a37f
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-02 15:48:36 +00:00
David Harris
faa15b1f8d
Cleaned up comments in controller
2022-06-02 15:48:33 +00:00
David Harris
197b588193
Cleaned up test cases in testbench
2022-06-02 08:44:28 -07:00
David Harris
c7ec9282fe
Provided sfencevmaM to hazard unit and renamed TLBFlush signals to sfencevma going into LSU/IFU. Preparing for SFENCE.VMA to flush the pipeline, but that is not yet working.
2022-06-02 14:18:55 +00:00
slmnemo
c16c5beef5
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-06-02 02:52:03 +00:00
slmnemo
65961223f8
Updated Linux testbench to use new force/unforce method for Branch predictor init and removed related .txt files
2022-06-02 02:51:51 +00:00
Katherine Parry
e42afbfb30
paramerterized some small fma units
2022-06-01 23:34:29 +00:00
Madeleine Masser-Frye
30f4a7e37b
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-06-01 21:02:55 +00:00
Madeleine Masser-Frye
bed4fad7b2
fixed errors in synth.out by switching ( to {
2022-06-01 21:02:49 +00:00
DTowersM
215f69a2ab
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-06-01 21:00:51 +00:00
DTowersM
d28b4cf602
added support for embench post processing to testbench.sv
2022-06-01 21:00:44 +00:00
DTowersM
ee7070c5b6
some changes to further support vsim on embench
2022-06-01 17:19:19 +00:00
Katherine Parry
dd19e55b8f
unpacker optimizations
2022-06-01 16:52:21 +00:00
slmnemo
446ad498aa
Fixed double assignment on LSUBurstType
2022-06-01 01:04:49 +00:00
cturek
949f53695d
Fixed typos
2022-06-01 00:07:36 +00:00
slmnemo
cf05fec9c7
Added signals to change HTRANS to the correct signal based on schematic as well as a way to tell if we are not on the first access
2022-05-31 16:33:05 -07:00
slmnemo
a86c4d5ff3
Merge branch 'cacheburstmode' of github.com:davidharrishmc/riscv-wally into cacheburstmode
2022-05-31 15:57:55 -07:00
slmnemo
9ad1a42886
Redid the FSM to prepare for burst mode implementation
2022-05-31 15:57:42 -07:00
David Harris
475a84491e
Unpackinput cleanup
2022-05-31 22:31:21 +00:00
David Harris
f9533fea1a
Removed normalized output from unpack and simplified interface
2022-05-31 21:32:31 +00:00
David Harris
0d0a9cba66
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-31 21:12:45 +00:00
David Harris
aa7b0616e4
../src/privileged/csrc.sv
2022-05-31 21:12:17 +00:00
DTowersM
8903af3764
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-31 20:13:41 +00:00
DTowersM
525f6a6069
added testbench.sv support for embench tests, test output still WIP
2022-05-31 20:13:32 +00:00
DTowersM
0de54a01bf
removed delapidated signals SIE_REGW SIP_REGW TimerIntM SwIntM
2022-05-31 20:10:56 +00:00
DTowersM
95df88ae70
added embench tests to tests.vh
2022-05-31 20:08:04 +00:00
DTowersM
ae12cca980
dummy start trigger and stop trigger support for make file
2022-05-31 20:05:51 +00:00
Katherine Parry
f6ac33ce8a
reorginized unpackinput signals
2022-05-31 17:40:34 +00:00
Katherine Parry
4ed7933aa3
added unpackinput.sv
2022-05-31 16:18:50 +00:00
David Harris
1e1555891f
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-31 14:58:18 +00:00
David Harris
788fe406b5
Moved delegation logic from privmode to trap to simplify interface
2022-05-31 14:58:11 +00:00
Madeleine Masser-Frye
887090dbae
plots saved to synthDC/plots instead of shown
2022-05-30 19:56:47 +00:00
Madeleine Masser-Frye
8506d98bec
added optimized area plotting
2022-05-30 18:54:02 +00:00
David Harris
0cfe9e3373
Removed unused fp add and convert modules
2022-05-29 23:07:56 +00:00
Katherine Parry
950a17bef5
fixed lint error
2022-05-28 10:20:13 -07:00
slmnemo
4a8d0be32c
Reverted commit 60e3d7d81b
2022-05-28 04:00:01 -07:00
slmnemo
f18989e801
Revert Commit 6c61840045
2022-05-28 03:35:17 -07:00
slmnemo
60e3d7d81b
Changed NO_IE_MTIME_CHECKPOINT so it uses the new parameter name
2022-05-28 03:16:55 -07:00
slmnemo
6c61840045
Deparametrized Linux testbench and removed mentions of parameters in wally-pipelined.do
2022-05-28 03:14:49 -07:00
slmnemo
f78fa3b9b9
Reverted incorrect Ack
2022-05-28 10:06:26 +00:00
David Harris
b04e9ac1f6
fixed merge conflicts
2022-05-28 09:44:55 +00:00
David Harris
4237bb7abd
Added comments to some files, added a+b = 0 detector to comparator.sv
2022-05-28 09:41:48 +00:00
Madeleine Masser-Frye
ab0b0a0da4
fixed normalization vertical axes, added TechSpecs type
2022-05-28 04:57:18 +00:00
Katherine Parry
9c58c63864
removed unused signal from FMA
2022-05-27 16:47:56 -07:00
Katherine Parry
06d4c05b3d
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-27 14:37:34 -07:00
Katherine Parry
a0ff98042c
unpacker adds 1 to denorm expoents
2022-05-27 14:37:10 -07:00
Madeleine Masser-Frye
d8815a7f12
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-05-27 20:59:27 +00:00
Madeleine Masser-Frye
7447f9fbf4
plotting updates, normalization
2022-05-27 20:59:23 +00:00
Katherine Parry
95b506c5e0
some optimizations in unpacker
2022-05-27 11:36:04 -07:00
Katherine Parry
1be91753fe
moved lzc to generic and small optimizations on fcvt
2022-05-27 09:04:02 -07:00
Katherine Parry
c6d79cd718
Removed guard bit from fma rounding
2022-05-27 08:23:46 -07:00
slmnemo
bc17f883d4
changed ahb FSM and caught potential bug in ack/wordcountthreshold when on last word
2022-05-26 18:41:27 -07:00
DTowersM
c371ddf420
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-26 23:36:49 +00:00
DTowersM
8299d79928
embench addition: added options to create .elf, .objdump, .memfile, .addr and .lab files from the executible in the embench build directory
2022-05-26 23:36:38 +00:00
slmnemo
847c7930c4
added LSUBurstDone signal to signal when a burst has finished
2022-05-26 16:29:13 -07:00
cturek
5a0889016c
fixed sizing issues in expcalc
2022-05-26 22:35:17 +00:00
Madeleine Masser-Frye
254e3d06a0
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-05-26 22:24:43 +00:00
Madeleine Masser-Frye
fb430ebff5
added square delay area plot
2022-05-26 22:24:39 +00:00
cturek
3301d7c52a
Implemented on-the-fly conversion for unsigned numbers
2022-05-26 22:20:43 +00:00
Madeleine Masser-Frye
19a759d405
fixed synth scraping, best delay plotting
2022-05-26 20:51:00 +00:00
Katherine Parry
3c04f1bdec
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-26 20:48:30 +00:00
Katherine Parry
9d281b2604
fcvt.sv paramaterized
2022-05-26 20:48:22 +00:00
slmnemo
80fc716cd7
Added signal to monitor HBURST and comments for each burst in busdp
2022-05-26 13:35:49 -07:00
DTowersM
6f0b5753ee
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-26 19:05:21 +00:00
DTowersM
7ffef6ccfa
fixed indent spacing (cosmetic change)
2022-05-26 19:04:21 +00:00
cturek
4a4f153eef
Set up the divider for on-the-fly conversion
2022-05-26 16:45:28 +00:00
slmnemo
08430a1e85
added burst size signals to the IFU, EBU, LSU, and busdp
2022-05-25 18:02:50 -07:00
slmnemo
e8d97f0826
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-05-25 17:41:04 -07:00
slmnemo
a2300f063d
added a todo to riscv-wally so that long buildroot looks for a successful boot rather than a specific instruction
2022-05-25 17:40:57 -07:00
slmnemo
d1421b88ad
Added line to testbench to prevent annoying burst sizes
2022-05-25 17:29:45 -07:00
slmnemo
cebf93cf9c
idk lol it says this has an unadded change
2022-05-25 17:17:49 -07:00
DTowersM
de60b15cfe
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-26 00:12:46 +00:00
slmnemo
012cb7439d
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-05-25 17:11:03 -07:00
slmnemo
b5476204da
see commit 9042cc3c
2022-05-25 17:10:59 -07:00
Katherine Parry
f3b28b988b
added fcvt.sv
2022-05-26 00:10:51 +00:00
DTowersM
a1cda79cd5
Merge branch 'embench' into main
...
embench contained the working makefiles for embench and is being merged into main as it working and done
2022-05-26 00:10:50 +00:00
DTowersM
3f7eddbc89
working makefile for embench and removed testbench-f64
2022-05-26 00:08:18 +00:00
slmnemo
8422095a33
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-05-25 17:03:26 -07:00
slmnemo
4e5505f301
added logic to prevent cache line length from exceeding the max size of a burst.
2022-05-25 17:03:15 -07:00
cturek
c9845b96f4
Renamed variables for readability
2022-05-26 00:01:51 +00:00
cturek
51debfa186
Fixed exponent verification, added sign module and added sign tests
2022-05-25 23:36:21 +00:00
Katherine Parry
f35450207f
single and double conversions pass all tests
2022-05-25 23:02:02 +00:00
Madeleine Masser-Frye
5311c0c9eb
major revisions to ppaAnalyze
...
synths as namedtuples, plotting pulls from csv, support for multiple techs
2022-05-25 20:37:54 +00:00
Madeleine Masser-Frye
81a869c921
ppaAnalyze: docstrings and tsmc28 plotting
2022-05-25 13:52:20 +00:00
Madeleine Masser-Frye
dd4997bd1b
added support for tsmc28, fixed ff modules/analysis for timing
2022-05-25 06:44:22 +00:00
slmnemo
0398aa02a0
fixed a comment spelling typo
2022-05-23 19:24:28 -07:00
Katherine Parry
576fe4ec24
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-23 23:11:41 +00:00
Katherine Parry
e5d2dfe94b
added exponents to srt divider
2022-05-23 23:07:27 +00:00
David Harris
d78451e39c
Checked in qst2.c from James
2022-05-23 20:26:05 +00:00
Ross Thompson
b70baed214
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-05-22 23:54:33 -05:00
Ross Thompson
e2cf941a23
Possible plic fix?
2022-05-22 23:47:01 -05:00
Madeleine Masser-Frye
d91fd44ea5
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-22 23:23:39 +00:00
Madeleine Masser-Frye
dbe4b4bafa
added widths for csa in ppa
2022-05-22 23:23:02 +00:00
Ross Thompson
bcb4ebf888
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-05-22 10:55:33 -05:00
Ross Thompson
c4f1a0362b
Fixed receive fifo ITNR bug.
2022-05-22 10:55:28 -05:00
Ross Thompson
92a2ad02db
Added more debug signals to uart.
2022-05-21 19:47:40 -05:00
Ross Thompson
099b0464dd
Added more plic debugging signals.
2022-05-21 14:04:08 -05:00
Ross Thompson
3c30751470
Updated the fpga constraints.
2022-05-21 13:32:03 -05:00
Madeleine Masser-Frye
39a3bf5cdc
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally
2022-05-21 09:53:31 +00:00
Madeleine Masser-Frye
b832a21b73
ppa updates
...
added widths to modules, automated frequency sweep synthesis, added slack violation color coding to plots
2022-05-21 09:53:26 +00:00
slmnemo
e3a7e3e2f3
changes suggested by ben, hopefully fixing buildroot (which is now not running)
2022-05-20 18:42:38 -07:00
Katherine Parry
5d34db85b2
Fixed unpacker bug LT EQ LE pass testfloat
2022-05-20 17:19:50 +00:00
Madeleine Masser-Frye
8015b6af17
fixed dynamic energy units
2022-05-20 01:59:19 +00:00
slmnemo
0afac6904e
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-05-19 18:31:56 -07:00
slmnemo
af0300c3d7
added documentation for ahblite burst types to ahblite.sv
2022-05-19 18:31:46 -07:00
slmnemo
11e703c8c0
fixed lint autofailing due to no log being produced in regression-wally
2022-05-19 18:30:59 -07:00
slmnemo
79c28d34dc
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-05-19 17:51:45 -07:00
slmnemo
e4024eb503
Added parameters for DEBUG_TRACE to buildroot, buildroot-checkpoint, and buildroot-notrace
2022-05-19 17:51:26 -07:00
slmnemo
e33ca59d46
Added parameter to keep tracking on for buildroot and buildroot-checkpoint in regression.py
2022-05-19 17:50:48 -07:00
slmnemo
8b27c1884e
Fixed buildroot by adding a second .
2022-05-19 17:49:32 -07:00
slmnemo
89c7438424
parametrized linux testbench's DEBUG_TRACE and added parameters to relevant calls of the linux testbench in wally-pipelined.do
2022-05-19 16:21:38 -07:00
Katherine Parry
ab1f088672
fixed lint warning
2022-05-19 20:34:06 +00:00
Katherine Parry
6f2d8c24ad
Bug fixed in unpacker and sub/add/mul tests pass TestFloat
2022-05-19 20:31:23 +00:00
mmasserfrye
bab7335bee
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-19 20:24:57 +00:00
mmasserfrye
d34f4a7c3c
updated synth plotting and regression
2022-05-19 20:24:47 +00:00
Katherine Parry
738bbf6479
Added fp tests - doesnpass yet
2022-05-19 16:32:30 +00:00
slmnemo
c96f07ad75
added instructions to slack notifier
2022-05-18 16:50:31 -07:00
mmasserfrye
84422f3859
added support for plotting and fitting power
2022-05-18 17:01:55 +00:00
mmasserfrye
f8722f04f9
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-18 16:10:36 +00:00
mmasserfrye
12c42cd507
adapted shifter in ppa.sv for widths beside 32 and 64
...
modified plotting and regression in ppaAnalyze.py
2022-05-18 16:08:40 +00:00
Ross Thompson
b853c4ba47
Updated fpga debugger.
2022-05-17 23:04:01 -05:00
slmnemo
23d6791b22
simplified make-tests.sh to run the current makefile in regression
2022-05-17 17:29:34 -07:00
slmnemo
82e68f2170
Revert "same as last breaking commit, testing if the bisect works to output a breaking commit."
...
This reverts commit dcb485ec61
.
gottem
2022-05-17 17:26:33 -07:00
slmnemo
dcb485ec61
same as last breaking commit, testing if the bisect works to output a breaking commit.
2022-05-17 17:22:09 -07:00
slmnemo
b7d036f3d0
Revert "broke it again but this time it doesn't compile due to a missing semicolon on Rs1D."
...
This reverts commit f970cc3ea9
.
fixed it
2022-05-17 17:05:11 -07:00
slmnemo
f970cc3ea9
broke it again but this time it doesn't compile due to a missing semicolon on Rs1D.
2022-05-17 17:03:16 -07:00
slmnemo
589bd0ca34
Revert "Intentionally broke wally by setting datapath Rs1D to use bits 18:14 instead of 19:15 to test regression"
...
This reverts commit 4908f77cf9
.
unbroke wally
2022-05-17 16:57:29 -07:00
slmnemo
357d77d332
Revert "Revert "Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main""
...
This reverts commit 0e3099743c
.
reverted the wrong commit
2022-05-17 16:57:00 -07:00
slmnemo
0e3099743c
Revert "Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main"
...
This reverts commit 1c5a3de6d5
, reversing
changes made to 1ff47888a7
.
undid things
2022-05-17 16:54:29 -07:00
slmnemo
4908f77cf9
Intentionally broke wally by setting datapath Rs1D to use bits 18:14 instead of 19:15 to test regression
2022-05-17 16:33:09 -07:00
slmnemo
1c5a3de6d5
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
...
Added empty directory '/wkdir' to /pipelined/regression to avoid tests failing out of box due to the missing directory
2022-05-17 20:32:53 +00:00
slmnemo
1ff47888a7
added wkdir in regression so regression runs out of box (assuming the old version of arch tests)
2022-05-17 20:32:38 +00:00
David Harris
8df9e1aad6
comments about activity factor in synthesis
2022-05-17 19:26:17 +00:00
mmasserfrye
5c22bec023
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-17 18:30:23 +00:00
mmasserfrye
dd0489b8ce
broke up ppa analysis and synthesis
2022-05-17 18:29:38 +00:00
David Harris
a2280dadfd
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-17 15:09:52 +00:00
David Harris
49f25bd03d
Restored srt to working without exponent unit
2022-05-17 15:09:48 +00:00
mmasserfrye
2254a8218d
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-17 01:11:58 +00:00
mmasserfrye
d34a942eb2
added 8 and 128 bit versions, adjusted alu
2022-05-17 01:11:43 +00:00
mmasserfrye
ac44da549f
added plotting
2022-05-17 01:10:31 +00:00
slmnemo
e4f0f55530
Updated testbench to initialize using force and releases storing zero in all memory locations in branch predictor. Fixed arch64i bug related to failing bge due to an incorrect signature.
2022-05-17 01:04:13 +00:00
slmnemo
7656e3031c
quit
2022-05-17 01:03:09 +00:00
David Harris
8851ddd905
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-17 00:07:09 +00:00
David Harris
1bcbdcf57d
removed exptestgen
2022-05-17 00:06:44 +00:00
David Harris
ea3e7006d9
Cleaned up unpacker changes in srt and lint errors
2022-05-17 00:06:14 +00:00
slmnemo
8c8a7daec2
Fixed grammar on two comments in bpred.sv
2022-05-16 22:41:18 +00:00
mmasserfrye
68a70ed8ff
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
...
resolved merge conflict
2022-05-16 15:42:59 +00:00
mmasserfrye
b82520237c
tuning modules for ppa
2022-05-16 15:39:15 +00:00
David Harris
c1dc854d74
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-12 23:47:25 +00:00
David Harris
48e89485dd
Cause simplification
2022-05-12 23:47:21 +00:00
David Harris
9651ced9bb
Cause simplification
2022-05-12 23:39:10 +00:00
David Harris
2f283d9654
Cause simplification
2022-05-12 23:37:40 +00:00
David Harris
f5f1870077
Cause simplification
2022-05-12 23:33:35 +00:00
David Harris
5b7cccbc4b
Cause simplification
2022-05-12 23:33:22 +00:00
David Harris
581d841653
Cause simplification
2022-05-12 23:29:35 +00:00
David Harris
2a3f545e0c
Cause simplification
2022-05-12 23:27:02 +00:00
Kip Macsai-Goren
40a401c66c
Added missing DEADBEEFs to this test as well
2022-05-12 22:31:26 +00:00
Kip Macsai-Goren
94cb6caec6
Fixed priv test reference outputs to have the right number of "DEADBEEF"s (1024)
2022-05-12 22:30:14 +00:00
David Harris
c2b9fc0d8e
trap/csr cleanup
2022-05-12 22:26:21 +00:00
David Harris
292d1f33da
More trap/csr simplification
2022-05-12 22:06:03 +00:00
David Harris
662fffa830
More trap/csr simplification
2022-05-12 22:04:20 +00:00
David Harris
16b86c199c
More trap/csr simplification
2022-05-12 22:00:23 +00:00
David Harris
5f358a37c6
More trap/csr simplification
2022-05-12 21:55:50 +00:00
David Harris
21ac969c7d
Simplifying trap/csr interface
2022-05-12 21:50:15 +00:00
David Harris
072c464dc1
Simplified MTVAL logic
2022-05-12 21:36:13 +00:00
David Harris
14f9f41d2d
Partitioned privileged pipeline registers into module
2022-05-12 20:45:45 +00:00
David Harris
78448c7053
privileged cleanup
2022-05-12 20:21:33 +00:00
mmasserfrye
31f372e7b3
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-12 20:20:40 +00:00
mmasserfrye
a10b8e47af
cleaned lint for ppa.sv
2022-05-12 20:20:05 +00:00
David Harris
dd61afb7dc
Formatting cleanup
2022-05-12 18:37:47 +00:00
mmasserfrye
01685b982c
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-12 18:08:20 +00:00
mmasserfrye
b089ee26ee
renamed madzscript, modified ppa.sv alu and shifter
2022-05-12 18:05:02 +00:00
David Harris
fde8375fbd
Moved Breakpoint and Ecall fault logic into privdec
2022-05-12 16:45:53 +00:00
David Harris
2ceed15bd5
Moved TLB Flush logic into privdec
2022-05-12 16:41:52 +00:00
David Harris
1e5d94bbab
Moved WFI timeout into privdec
2022-05-12 16:22:39 +00:00
David Harris
39ceb3a550
Partitioned privilege mode fsm into new module
2022-05-12 16:16:42 +00:00
David Harris
e81e530f68
More signal cleanup
2022-05-12 15:39:44 +00:00
David Harris
ce24c080d5
More unused signal cleanup
2022-05-12 15:26:08 +00:00
David Harris
5670f77de2
More unused signal cleanup
2022-05-12 15:21:09 +00:00
David Harris
4edf9b6355
More unused signal cleanup
2022-05-12 15:15:30 +00:00
David Harris
1aa3e65bae
Removed more unused signals, simplified csri state
2022-05-12 15:10:10 +00:00
David Harris
e2e63ca9a8
Clean up unused signals
2022-05-12 14:49:58 +00:00
David Harris
f17501ed8c
Removing unused signals
2022-05-12 14:36:15 +00:00
David Harris
545d46acb9
Simplifed mstatus.TSR handling
2022-05-12 14:09:52 +00:00
David Harris
d353cef432
Removed unused ch5 assembly example
2022-05-12 14:05:27 +00:00
David Harris
1e7401daa0
Fixed typo in csrm
2022-05-12 06:55:39 -07:00
mmasserfrye
999754801c
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-12 07:24:04 +00:00
mmasserfrye
6cba6a92ba
filled in ppa.sv, madzscript.py now synthesizes in parallel in puts results in csv
2022-05-12 07:22:06 +00:00
David Harris
aa452b2f38
Moved some privileged tests to be simulated.
2022-05-12 04:45:41 +00:00
David Harris
9999f69922
Added MCONFIGPTR CSR hardwired to 0
2022-05-12 04:31:45 +00:00
David Harris
b2c921ee7b
Added examples/asm/trap trap handler example
2022-05-12 04:31:00 +00:00
David Harris
9dd378098f
merged ppa.sv
2022-05-11 18:14:16 +00:00
David Harris
1f761c4e06
PPA script progress
2022-05-11 18:11:51 +00:00
mmasserfrye
552a55d631
ed
...
modified ppa.sv
2022-05-11 16:22:12 +00:00
mmasserfrye
6fad0dc8ed
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-11 16:16:23 +00:00
mmasserfrye
68da2f5fa1
modified ppa.sv to match module name and added madzscript
2022-05-11 16:13:01 +00:00
David Harris
8166fd772e
Added M prefix for MTimerInt and MSwInt to distinguish from future supervisor SwInt
2022-05-11 15:08:33 +00:00
David Harris
137b411bea
Removed M suffix from interrupts because they are generated asynchronously to pipeline
2022-05-11 14:41:55 +00:00
David Harris
490902a655
Updated PPA experiment
2022-05-10 23:09:42 +00:00
David Harris
bb24aebebd
Initial PPA study
2022-05-10 20:48:47 +00:00
Ross Thompson
f206dc7adb
Updated debugger constraints.
2022-05-09 10:19:25 -05:00
David Harris
04fd22aeb0
endian swapper
2022-05-08 06:51:50 +00:00
David Harris
4f1b0fdc64
Preliminary support for big endian modes. Regression passes but no big endian tests written yet.
2022-05-08 06:46:35 +00:00
David Harris
1a5bfcf078
Fixed bug in delegated interrupts not being taken
2022-05-08 04:50:27 +00:00
David Harris
a516f89f22
WFI terminates when an interrupt is pending even if interrupts are globally disabled
2022-05-08 04:30:46 +00:00
David Harris
412d4656ed
Zero'd wfiM when ZICSR not supported to fix hang in E tests
2022-05-05 15:32:13 +00:00
David Harris
7f42ff06d2
SFENCE.VMA should be illegal in user mode
2022-05-05 15:15:02 +00:00
David Harris
f436e93fc5
SFENCE.VMA should be illegal in user mode
2022-05-05 14:59:52 +00:00
David Harris
9b7aab122e
wally32priv and wally64priv now passing WALLY-status-tw. Fixed privileged.sv to produce the correct EPC on timeouts
2022-05-05 14:37:21 +00:00
David Harris
1a7599ce94
Changed WFI to stall pipeline in memory stage
2022-05-05 02:03:44 +00:00
Kip Macsai-Goren
7249879a74
clarified some trap causing functions to use zzero register rather than li [reg] 0x0. Also updated signatures' tvals
2022-05-04 23:01:23 +00:00
Kip Macsai-Goren
99423993a9
added explicit clears to mstatus.mie
2022-05-04 23:00:17 +00:00
Kip Macsai-Goren
536df2b8ad
Updated test libraries to reflect variable name changes
2022-05-04 21:39:36 +00:00
Kip Macsai-Goren
35e619ae74
renamed test_loop_setup to run_test_loop
2022-05-04 21:39:09 +00:00
Kip Macsai-Goren
26dfe36c16
renamed debug to extended signature
2022-05-04 21:38:37 +00:00
Kip Macsai-Goren
b155effe66
put privileged tests back into rv32/64gc
2022-05-04 21:20:25 +00:00
Kip Macsai-Goren
895a4f4832
updated makefrag and tests.vh to reflect removed tests, new names
2022-05-04 21:20:25 +00:00
Kip Macsai-Goren
a9a434fced
removed fp-diabled test and leftover mimpid test
2022-05-04 21:20:25 +00:00
Kip Macsai-Goren
f36fdf940d
removed instruction misaligned tests from trap tests, signatures
2022-05-04 21:20:25 +00:00
Kip Macsai-Goren
badbe0840f
renamed all tests to have lower-case titles except for WALLY
2022-05-04 21:20:25 +00:00
David Harris
8a43d6099b
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-05-03 18:32:04 +00:00
David Harris
4b91fddc0a
Illegal instruction fault when running FPU instruction with STATUS_FS = 0
2022-05-03 18:32:01 +00:00
David Harris
3efbd2565a
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-05-03 08:53:35 -07:00
David Harris
20bbe43a23
clean up sram1p1rw; still doesn't work on Modelsim 2022.1
2022-05-03 08:31:54 -07:00
David Harris
1166c40059
FPU generates illegal instruction if MSTATUS.FS = 00
2022-05-03 11:56:31 +00:00
David Harris
bcd8728b3e
Switched to behavioral comparator for best PPA
2022-05-03 11:00:39 +00:00
David Harris
b4a422f771
Comparator experiments
2022-05-03 10:54:30 +00:00
David Harris
057524b840
Formatting cache.sv
2022-05-03 10:53:20 +00:00
David Harris
9e50c3440d
sram1p1rw extra bits are complaining on Tera and VLSI; roll back to two always blocks to fix on Tera
2022-05-03 03:50:41 -07:00
David Harris
0df73d203b
Rewriting sram1p1rw to combine CacheData into a single always_ff. Extra bits are still giving warning on VLSI that don't make sense.
2022-05-03 03:45:41 -07:00
David Harris
9e47fca2b7
Changed loop variable in CLINT because of error only seen on VLSI
2022-05-03 10:10:28 +00:00
Kip Macsai-Goren
64ba550493
general test cleanup of comments and old files
2022-04-29 19:55:29 +00:00
Kip Macsai-Goren
36f5624255
re-renamed status-mie-s to status-sie
2022-04-29 19:55:13 +00:00
Kip Macsai-Goren
75e90f193e
added missing SIE test
2022-04-29 19:54:29 +00:00
Kip Macsai-Goren
407cdfbab7
renamed registers in test library to RISC-V ABI name rater than x2, etc..
2022-04-29 18:52:42 +00:00
Kip Macsai-Goren
c0b56bfd27
renamed PIE-stack tests to status-mie for clarity
2022-04-29 18:30:39 +00:00
Kip Macsai-Goren
c47ec36bc7
removed old unused tests from wally arch tests
2022-04-28 18:14:08 +00:00
Kip Macsai-Goren
2f17edb5f4
added missing output for sret
2022-04-28 18:14:08 +00:00
Kip Macsai-Goren
746fcfde30
set WFI timeout to after 16 bits of counting for all configs
2022-04-28 18:14:08 +00:00
Kip Macsai-Goren
aedf0341af
added 32 bit versions of new tests. all but timeout wait pass regression
2022-04-28 18:14:07 +00:00
Skylar Litz
64a537c59b
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-27 10:50:19 -07:00
Skylar Litz
f2b6842edb
fix AttemptedInstructionCount from ground zero
2022-04-27 10:45:40 -07:00
David Harris
55d25a1a89
Ignore intermediate files in synthesis sweeps
2022-04-27 13:12:04 +00:00
David Harris
515270a8cf
Added torture.tv test vectors
2022-04-27 13:08:36 +00:00
David Harris
cce0a421be
Checked in torture.tv
2022-04-27 13:06:24 +00:00
David Harris
9d82232c14
Cleaned up canonical NaNs and removed denorm outputs in baby_torture.tv
2022-04-26 19:41:30 +00:00
Kip Macsai-Goren
4b00531d77
fixed incorrect configs in regression
2022-04-25 19:28:47 +00:00
Kip Macsai-Goren
d741faf7f3
added missing output on final test terminating ecall
2022-04-25 19:18:38 +00:00
Kip Macsai-Goren
74b103fae4
added working tests to test list, updated regression for new configs
2022-04-25 19:18:15 +00:00
Kip Macsai-Goren
33875b20b5
fixed initial value, timing on fs bits changing after floating point instruction
2022-04-25 19:17:29 +00:00
Kip Macsai-Goren
1c3e6b98e4
split status.fp tests into fp enabled/disabled
2022-04-25 19:16:15 +00:00
Kip Macsai-Goren
2e0f45eab4
removed atomic, floating point from privileged tests configs
2022-04-25 19:13:15 +00:00
Kip Macsai-Goren
01f8bdfafc
added new tests to tests.vh, comented out until they pass regression
2022-04-25 18:22:44 +00:00
Kip Macsai-Goren
36e82e8613
added WFI and mstatus fp, tw bit tests
2022-04-25 18:21:56 +00:00
Kip Macsai-Goren
e0a1a54678
added floating point instructions to privileged tests
2022-04-25 17:47:10 +00:00
Kip Macsai-Goren
992cedbc52
Lowered WFI timeout wait time for privileged configs
2022-04-25 17:47:10 +00:00
Kip Macsai-Goren
42eb771521
comment cleanup
2022-04-25 17:47:10 +00:00
Shreya Sanghai
975005dbfa
automate synth
2022-04-25 16:03:32 +00:00
bbracker
ce56e2dd73
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-25 08:01:39 -07:00
David Harris
0957b7040d
Restored MPRV behavior per spec
2022-04-25 14:52:18 +00:00
David Harris
1a8369b02b
Added dummy mstatus byte endianness fields tied to 0, mstatush register, removed UIE and UPIE depricated fields
2022-04-25 14:49:00 +00:00
bbracker
6f63b88c60
upgrade Buildroot Makefile to also copy over vmlinux
2022-04-25 07:36:59 -07:00
David Harris
142636173e
Added MTINST hardwired to 0, and added timeout of U-mode WFI
2022-04-24 20:00:02 +00:00
David Harris
28e8aa4f97
Fixed InstrMisalignedFaultM mtval
2022-04-24 17:31:30 +00:00
David Harris
ffecdda6e6
Improved priority order and mtval of traps to match spec
2022-04-24 17:24:45 +00:00
David Harris
04b0579b89
Extended sim time to fully boot Linux. Added comments to hazard unit
2022-04-24 13:51:00 +00:00
Kip Macsai-Goren
08d4c29724
Removed test cases irrelevant to this implementation, added explanatory comments.
2022-04-22 23:06:52 +00:00
Kip Macsai-Goren
abfbbaccba
Added testing for every bit field in MIE, rather than just one
2022-04-22 23:05:54 +00:00
Kip Macsai-Goren
7630a0be42
fixed timeouts on GPIO test by enabling pins as inputs as well as outputs.
2022-04-22 22:46:11 +00:00
Kip Macsai-Goren
bd87af478a
Changed mtval for instruction misaligned fault to get address from ieuAdrM (Jal/branch target address)
2022-04-22 22:46:11 +00:00
bbracker
cd70175e5a
less hardcoded paths in Makefile
2022-04-21 20:42:02 -07:00
bbracker
9eec1a83a6
deprecate unused LINUX_FIX_READ macro
2022-04-21 19:14:47 -07:00
bbracker
9c1e398bb5
change how tristate I/O is spoofed in GPIO loopback test
2022-04-21 10:31:16 -07:00
Ross Thompson
e56b9f18d5
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-21 09:52:42 -05:00
Ross Thompson
a86274a1e0
Modified wally-pipelined.do for no trace linux sim.
2022-04-21 09:52:33 -05:00
David Harris
6793533676
Removed FP vectors Readme
2022-04-21 04:55:27 +00:00
David Harris
1e19cf9f14
Simplified profile for UART boot; added warnings on UART Rx errors
2022-04-21 04:54:45 +00:00
Kip Macsai-Goren
25d0f6305a
added new tests to tests.vh
2022-04-20 17:34:40 +00:00
Kip Macsai-Goren
53f6b5fada
added 32 bit tests to makefrag
2022-04-20 17:33:56 +00:00
Kip Macsai-Goren
0a6e1d108f
updated 32 bit test lib to mirror 64 bit one in interrupt handling, trap stacks
2022-04-20 17:33:40 +00:00
Kip Macsai-Goren
fe14b9f188
Added 32 bit privilege tests that work but for one bug
2022-04-20 17:32:29 +00:00
Kip Macsai-Goren
8e72ace5ac
fixed rv32ia to support clint and GPIO for priv tests
2022-04-20 17:31:34 +00:00
Kip Macsai-Goren
7ed0c7b8b6
Updated 32 bit PMA tests to reflect new clint rules
2022-04-20 17:31:08 +00:00
Kip Macsai-Goren
5f78999424
added some explanatory comments
2022-04-20 06:48:01 +00:00
Kip Macsai-Goren
5cb5ba0c8c
Added interrupt time loop support, fixed external interrupts, fixed delegated ecallhandler
2022-04-20 06:48:01 +00:00
Kip Macsai-Goren
324d3fcea5
added working general trap tests to regression
2022-04-20 06:48:01 +00:00
Ross Thompson
b94927d8a6
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-19 14:09:50 -05:00
David Harris
c57b9e6703
Added baby torture tests
2022-04-19 15:13:06 +00:00
David Harris
eaa0d44980
Fixed WFI decoding in IFU
2022-04-18 19:02:08 +00:00
David Harris
b4028899fe
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-04-18 17:59:56 +00:00
David Harris
ba578b21d8
Removed extra fields from fp vectors
2022-04-18 17:59:48 +00:00
Kip Macsai-Goren
ced763beb6
Added GPIO loopback to let outputs cause interrupts
2022-04-18 07:22:49 +00:00
Kip Macsai-Goren
121cc627f6
Added working trap test to regression, fixed hanfling of some interrupts
2022-04-18 07:22:16 +00:00
Shreya Sanghai
1f229c5387
automate synth
2022-04-18 04:21:03 +00:00
Shreya Sanghai
9538338d8e
added frequency configs for makefile
2022-04-18 04:21:03 +00:00
Shreya Sanghai
6f0085201b
replaced k with bpred size
2022-04-18 04:21:03 +00:00
Shreya Sanghai
a8b3cc8cf9
added bpred size to wally config
2022-04-18 04:21:03 +00:00
David Harris
22842816a8
LSU name cleanup
2022-04-18 03:18:38 +00:00
Ross Thompson
61dbf13a69
Fixed bug I introduced by csrc cleanup and changes to ILA.
2022-04-17 21:45:46 -05:00
David Harris
e04febdb57
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-04-18 01:30:11 +00:00
David Harris
c07b9d1722
Renamed FinalAMOWriteDataM to AMOWriteDataM
2022-04-18 01:30:03 +00:00
David Harris
6504017044
Run 4M instructions in buildroot test to get through kernel & VirtMem startup
2022-04-18 01:29:38 +00:00
Ross Thompson
a5d4e39e7d
Added back the instret counter to ILA.
2022-04-17 18:44:07 -05:00
Ross Thompson
0bcfd9d666
Added another GPR to debugger.
2022-04-17 18:12:05 -05:00
Ross Thompson
3add26be64
fixed no forcing bug in linux testbench.
2022-04-17 17:49:51 -05:00
David Harris
d8b4c985cd
Remvoed bytemask anding from FinalWriteDataM in subwordwrite
2022-04-17 22:33:25 +00:00
David Harris
6bb4cd1bca
Prefix comparator cleanup
2022-04-17 21:53:11 +00:00
David Harris
5bb521635e
Experiments with prefix comparator; minor fixes in WFI and testbench warnings
2022-04-17 21:43:12 +00:00
Kip Macsai-Goren
ecacd5d36b
removed broken test from makefrag
2022-04-17 21:25:56 +00:00
Kip Macsai-Goren
331efcedc4
added new tests to makefrag and tests.vh
2022-04-17 21:00:36 +00:00
Kip Macsai-Goren
1a9c312700
added more comprehensive vectoring, interrupt causing and handing
2022-04-17 20:57:12 +00:00
Kip Macsai-Goren
1af47c9d25
Added the rest of the tests lited in Chapter 5 test plan
2022-04-17 20:57:12 +00:00
Ross Thompson
5a6ad32688
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-17 15:23:46 -05:00
Ross Thompson
7135364d1a
Increased uart baud rate to 230400.
...
Added uart signals to debugger.
2022-04-17 15:23:39 -05:00
David Harris
b4902a6ff9
First implementation of WFI timeout wait
2022-04-17 17:20:35 +00:00
David Harris
6769f0cb43
Added comments in fcvt
2022-04-17 16:53:10 +00:00
David Harris
d71940d96d
Simplified SLT logic
2022-04-17 16:49:51 +00:00
Ross Thompson
55c667b60d
Commented output power analysis to speed simulation.
2022-04-16 15:32:59 -05:00
Ross Thompson
b3153bc71e
Updated wally to point to riscv-arch-test tag 2.7.3
2022-04-16 15:32:43 -05:00
Ross Thompson
881695582b
commented out wally-scratch test as it hangs during compile.
2022-04-16 15:09:17 -05:00
Ross Thompson
f8bdb6db49
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-16 14:59:03 -05:00
Ross Thompson
bfc68bef69
Fixed possible bugs in LRSC.
2022-04-16 14:45:31 -05:00
James E. Stine
be917cdee6
Update mkdir in run_all.sh to guarantee no errors
2022-04-14 22:23:23 -05:00
David Harris
0932d4df46
Added WFI support to IFU to keep it in the pipeline
2022-04-14 17:26:17 +00:00
David Harris
c3bca40e05
Added WFI to the testbench instruction name decoder
2022-04-14 17:12:11 +00:00
David Harris
6e16922aae
WFI should set EPC to PC+4
2022-04-14 17:05:22 +00:00
bbracker
0e183be3e5
fix testbench timing bug where interrupt forcing didn't happen soon enough because it was waiting on StallM
2022-04-14 09:23:21 -07:00
bbracker
489ce4269a
fix ReadDataM forcing
2022-04-13 15:32:00 -07:00
bbracker
20c82b6f1a
parsePlicState.py bugfix
2022-04-13 13:04:43 -07:00
Ross Thompson
65573f07b7
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-13 13:39:47 -05:00
bbracker
c697c17b05
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-13 05:35:56 -07:00
bbracker
016e960401
change interrupt spoofing to happen at negative clock edges
2022-04-13 04:31:23 -07:00
bbracker
3465d8cd32
improve testbench-linux.sv to correctly load in PLIC IntEnable checkpoint and to handle edge case where interrupt is caused by enabling interrupts in SSTATUS
2022-04-13 03:37:53 -07:00
bbracker
0d4ec9b3f9
fix bugs in PLIC checkpoint state parsing
2022-04-13 01:59:21 -07:00
bbracker
1bb5e1f35b
whoops fix address for PLIC int enables in checkpoint generation
2022-04-13 01:36:09 -07:00
bbracker
67ef47b25b
whoops forgot to update AttemptedInstructionCount in interrupt spoofing
2022-04-13 00:49:37 -07:00
bbracker
6c3d274970
change testbench-linux to by default use attempted instruction count for warning/error messages
2022-04-12 21:22:08 -07:00
Ross Thompson
2eb2263e94
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-12 19:38:04 -05:00
Ross Thompson
adb4e30c45
Missed the force on uart for no tracking.
2022-04-12 19:37:44 -05:00
Ross Thompson
d087deef65
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-12 17:56:48 -05:00
Ross Thompson
22f2e88553
UART and clock speed changes to support 30Mhz.
2022-04-12 17:56:36 -05:00
Ross Thompson
396f697d2f
Hacky fix to prevent ITLBMissF and TrapM bug.
2022-04-12 17:56:23 -05:00
Ross Thompson
70e207e010
Found the complex TrapM giving back the wrong instruction bug.
...
As I was reviewing the busfsm I found a typo.
assign UnCachedLSUBusRead = (BusCurrState == STATE_BUS_READY & UnCachedAccess & LSURWM[1] & IgnoreRequest) |
(BusCurrState == STATE_BUS_UNCACHED_READ);
It should be
assign UnCachedLSUBusRead = (BusCurrState == STATE_BUS_READY & UnCachedAccess & LSURWM[1] & ~IgnoreRequest) |
(BusCurrState == STATE_BUS_UNCACHED_READ);
There is a ~ missing before IgnoreRequest. I restarted the FPGA and had it trigger on the specific faulting event. Sure enough the bus makes an IFUBusRead, which UncachedLSUBusRead feeds into. The specific instruction in the fetch stage had an ITLBMiss with a physical address in an unmapped area which is interpreted as an uncached operation. IgnoreRequest is is high if there is a TrapM | ITLBMissF. Without the & ~IgnoreRequest the invalid address translation makes the request.
2022-04-11 13:07:52 -05:00
Ross Thompson
56bea58a3c
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-10 13:41:27 -05:00
Ross Thompson
fc5eac6820
Modified the linux test bench to take a new parameter which can run simulation from 470M out to login prompt. This shouldn't break the regression test or checkpointing.
2022-04-10 13:27:54 -05:00
bbracker
c0c5733a1d
upgrade testbench interrupt forcing such that first m_timer interrupt now successfully spoofs
2022-04-08 13:45:27 -07:00
bbracker
23406d0926
small signs of life on new interrupt spoofing
2022-04-08 12:32:30 -07:00
bbracker
a09360f207
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-07 19:43:27 -07:00
bbracker
54c5f7f607
deprecate remove_dup.awk in favor of expanding parseGDBtoTrace.py to internally remove duplicates; this way the instruction counts in traps.txt are hopefully now in sync with the line numbers of all.txt
2022-04-07 19:43:22 -07:00
Ross Thompson
9685365d2e
Added signals to ila.
2022-04-07 21:09:50 -05:00
Ross Thompson
6702e2c735
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-07 16:56:56 -05:00
Ross Thompson
de868ef3a2
Possible fix for trap concurent with xret. Fixes the priority so trap has higher priority than either sret or mret. Previous code had priority to xret in the trap logic and privilege logic, but not the csrsr logic. This caused partial execution of the instruction.
2022-04-07 16:56:28 -05:00
Ross Thompson
22279a29ab
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-07 16:29:48 -05:00
Ross Thompson
54de15752e
Added sp to ila.
2022-04-07 16:29:41 -05:00
Ross Thompson
1614996941
Fixed typo in tests.vh
2022-04-07 16:28:28 -05:00
Katherine Parry
3224512812
re-adding an empty 'vectors' folder
2022-04-07 17:44:08 +00:00
Katherine Parry
72e4ab8361
cleaned floating point 'vectors' folder
2022-04-07 17:31:08 +00:00
Katherine Parry
74e0db04ac
fixed errors and warnings in rv32e
2022-04-07 17:21:20 +00:00
bbracker
008089b470
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-07 08:37:44 -07:00
bbracker
0a0956fad0
fix parseQEMUtoGDB.py to pass on interrupt messages correctly
2022-04-07 04:47:15 -07:00
kaveh Pezeshki
49aae4b2e9
using -S for busybox objdump to provide source code snippets
2022-04-06 23:06:49 +00:00
bbracker
0f394ba18b
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-06 07:50:57 -07:00
bbracker
0a8ce0593a
filter traps list down to just interrupts
2022-04-06 07:49:44 -07:00
bbracker
ea0471dcc7
change RAM size in genInitMem.sh
2022-04-06 07:49:04 -07:00
Kip Macsai-Goren
c3a6b88acc
updated test signature locations
2022-04-06 07:28:38 +00:00
Kip Macsai-Goren
590b86147b
Updated trap handler to check interrupt vectoring before handling them and to use the mscratch instead of sp for a stack.
2022-04-06 07:13:51 +00:00
Kip Macsai-Goren
3268f27f7a
Updated PMA tests to comply with all width writes and reads to CLINT
2022-04-06 07:13:51 +00:00
Kip Macsai-Goren
fbcb0c0bd8
Added missing ZFH macro to new configs
2022-04-06 07:13:51 +00:00
David Harris
7f462a6168
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-04-05 23:23:47 +00:00
David Harris
23da303ad3
Added bootmem source ccode
2022-04-05 23:22:53 +00:00
Ross Thompson
900939581e
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-05 15:42:07 -05:00
Ross Thompson
5faa88acd5
Increazed fpga clock speed to 35Mhz.
...
linux boot is much faster.
2022-04-05 15:09:49 -05:00
David Harris
171b943254
Removed outdated sample testfloat calls
2022-04-04 17:23:39 +00:00
Katherine Parry
c3d07b2c46
generating all testfloat vectors
2022-04-04 17:17:12 +00:00
Ross Thompson
91e99f0d34
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-04 10:56:10 -05:00
Ross Thompson
077beb18dd
Constraint changes for 40Mhz wally.
2022-04-04 10:50:48 -05:00
Ross Thompson
b77201143f
Updated the bootloader to use the flash card divider. This will allow wally to run at a faster speed than flash.
2022-04-04 10:38:37 -05:00
Ross Thompson
400b5f7632
Fixed the SDC clock divider so it actually can work during reset. This will enable the fpga to operate at a faster clock while the SDC is < 10Mhz.
2022-04-04 09:57:26 -05:00
Ross Thompson
38160fe6ea
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-03 17:56:55 -05:00
Ross Thompson
3ebb7f1057
fpga simulation works again.
2022-04-03 17:31:07 -05:00
Ross Thompson
c4aadff487
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-03 17:30:47 -05:00
David Harris
fb95767da0
Fixed bug with CSRRS/CSRRC for MIP/SIP
2022-04-03 20:18:25 +00:00
Ross Thompson
3db60a1cc1
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-02 16:39:54 -05:00
Ross Thompson
2376d66ec2
Added more ILA signals.
2022-04-02 16:39:45 -05:00
Ross Thompson
35e8c6bb9c
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-02 16:35:59 -05:00
Kip Macsai-Goren
ba7f976f92
small bug fixes to 64 bit library
2022-04-02 19:17:34 +00:00
Kip Macsai-Goren
7412979b71
added unfinished tests to 32 bit library
2022-04-02 19:15:07 +00:00
Kip Macsai-Goren
c056e0dc5f
updated 32 bit tests to be in line with 64 bit test library
2022-04-02 19:14:12 +00:00
Kip Macsai-Goren
25984d1643
removed compressed instructions from privileged tests
2022-04-02 19:12:44 +00:00
Kip Macsai-Goren
37c755e6ce
added RV64IA config to have a config without compressed instructions
2022-04-02 18:24:08 +00:00
Ross Thompson
691f1a6b0d
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-01 17:18:25 -05:00
Ross Thompson
51dfa16f59
Updated the fpga test bench.
2022-04-01 17:14:47 -05:00
Ross Thompson
48c49802b2
Fixed linting issues.
2022-04-01 15:20:45 -05:00
Ross Thompson
301f20052b
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-04-01 12:50:34 -05:00
Ross Thompson
19a8df9739
Added wave config
...
added new signals to ILA.
2022-04-01 12:44:14 -05:00
David Harris
61e1758a69
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-04-01 16:49:18 +00:00
David Harris
c6960ede37
Changed Linux disassembly to -S to preserve source code lines
2022-04-01 16:49:13 +00:00
bbracker
9d26bfe71d
expand WALLY-PERIPH test to use SEIP on PLIC context 1
2022-03-31 18:02:06 -07:00
bbracker
e09079d8b4
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-31 17:54:43 -07:00
bbracker
55df8bc3f7
fix lingering overrun error bug
2022-03-31 17:54:32 -07:00
Ross Thompson
48c862d536
Added PLIC to ILA.
2022-03-31 16:44:49 -05:00
Ross Thompson
da93d14050
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-31 16:30:55 -05:00
Ross Thompson
b5cdf035fc
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-31 15:50:04 -05:00
Ross Thompson
ade4a4cd5e
Notes on what to change in ram.sv.
2022-03-31 15:48:15 -05:00
bbracker
bdb3417656
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-31 13:46:32 -07:00
bbracker
0f7e995055
simplify plic logic
2022-03-31 13:46:24 -07:00
David Harris
c7043e4d63
Added SystemVerilog flag to fma.do so that fma16 compiles properly
2022-03-31 17:00:38 +00:00
Ross Thompson
88c5cdc873
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-31 11:39:41 -05:00
Ross Thompson
bf9683f0d2
Forced to go back to hard coded preload.
2022-03-31 11:39:37 -05:00
Ross Thompson
54001222cf
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-31 11:38:55 -05:00
Ross Thompson
285fc6fd4d
Modified clint to support all byte write sizes.
2022-03-31 11:31:52 -05:00
David Harris
dd3af17b3f
Added synthesis script for fma16
2022-03-31 00:51:33 +00:00
David Harris
3457c6e512
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-03-30 23:06:36 +00:00
Ross Thompson
84a478c053
Updated constraints file.
2022-03-30 17:48:44 -05:00
Ross Thompson
471f204c48
Added bootrom.txt.
2022-03-30 17:29:48 -05:00
Ross Thompson
baf4d8875e
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-30 17:28:30 -05:00
bbracker
69a0f6e00b
big interrupts refactor
2022-03-30 13:22:41 -07:00
Ross Thompson
0a5b500aca
Changed sram1p1rw to have the same type of bytewrite enables as bram.
2022-03-30 11:38:25 -05:00
David Harris
9b1f85d353
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-03-30 16:26:27 +00:00
David Harris
08fad856e3
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-03-30 16:13:42 +00:00
Ross Thompson
e4f4e1bd43
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-30 11:09:44 -05:00
Ross Thompson
f52ab01362
Partial cleanup of memories.
2022-03-30 11:09:21 -05:00
Ross Thompson
839bede656
Converted over to the blockram/sram memories. Now I just need to cleanup. But before the cleanup I wan to make sure the FPGA synthesizes with these changes and actually keeps the preload.
2022-03-30 11:04:15 -05:00
Ross Thompson
997c1b87fe
rv32gc and rv64gc now use the updated ram3.sv (will rename to ram.sv) which uses a vivado block ram compatible memory. Still need to update simpleram.sv to use this block ram compatible memory.
2022-03-29 23:48:19 -05:00
Ross Thompson
66e9380cfb
Partial fix to allow byte write enables with fpga and still get a preload to work.
2022-03-29 19:12:29 -05:00
Kip Macsai-Goren
d031c003ba
fixed arch bge test signature output location after update
2022-03-29 20:45:18 +00:00
David Harris
03fa9084bc
Updated synthesis to look at fma16.v, other scripts to use fma16.v instead of fma16.sv
2022-03-29 19:16:41 +00:00
David Harris
c4f2c6b110
fpu compare simplification, minor cleanup
2022-03-29 17:11:28 +00:00
Kip Macsai-Goren
56a0542405
made machine timer bit of IP registers unwriteable so it can only change when the interrupt actually changes
2022-03-29 02:26:42 +00:00
Kip Macsai-Goren
a6d90a25c2
fixed signature location of the new periph with no compressed instructions
2022-03-29 02:15:17 +00:00
bbracker
8ea25e591b
fix typo that Madeleine found
2022-03-28 15:39:29 -07:00
Ross Thompson
c88541cf6b
test.
2022-03-28 17:04:58 -05:00
bbracker
b88eaf250d
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-28 13:41:14 -07:00
bbracker
a5c32898a0
checkpointSweep is bash-specific, so add shebang to make it so
2022-03-28 13:40:50 -07:00
Kip Macsai-Goren
709f8e6e0d
fixed double multiplication on vectored interrupts
2022-03-28 19:12:31 +00:00
Kip Macsai-Goren
eb337fd3e1
added test config that doesn't use compressed instructions for privileged tests
2022-03-28 19:12:31 +00:00
Ross Thompson
09ff5c2c45
Updated debug2.xdc ila constraints to match rtl.
2022-03-28 10:52:26 -05:00
Ross Thompson
668eb828d6
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-28 10:23:25 -05:00
Ross Thompson
5f88536730
Temporary change of plic uart id to 10.
2022-03-28 10:23:20 -05:00
bbracker
501dc7cd68
fix genCheckpoint.sh binary memory dump
2022-03-27 20:54:59 -07:00
bbracker
9b5bbd29b4
change genCheckpoint.sh to only log 128MB of RAM
2022-03-27 19:16:39 -07:00
bbracker
4e1b50e50c
fix parseGDBtoTrace.py to expect the CSRs that QEMU actually prints out
2022-03-27 19:05:44 -07:00
bbracker
800bc85519
refactored buildroot configuration
2022-03-27 15:13:03 -07:00
bbracker
0eeb6cc5b5
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-27 15:11:42 -07:00
bbracker
8d5c231a13
change devicetree to expect only 128MB of RAM
2022-03-27 15:11:36 -07:00
Skylar Litz
f91fb7a388
add AtemptedInstructionCount signal
2022-03-26 21:28:57 +00:00
Skylar Litz
62a330c290
update to match new filesystem organization
2022-03-26 21:28:32 +00:00
Kip Macsai-Goren
7ae1d14191
added basic trap tests that do not pass regression yet. updated signature adresses
2022-03-25 22:57:41 +00:00
Ross Thompson
61c714ebe6
I think this version of csri matches what is required in the spec. ExtIntS should not be written into the SEIP register bit.
2022-03-25 13:10:31 -05:00
Ross Thompson
4ba0d1d662
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-25 11:01:01 -05:00
Ross Thompson
fe896bff8e
Found a way to remove a bus input into MMU. PAdr can be made into VAdr by selecting the faulting virtual address when writing the DTLB.
2022-03-24 23:47:28 -05:00
bbracker
6f6663cd67
fix multiple-context PLIC checkpoint generation
2022-03-25 01:02:22 +00:00
bbracker
d33de3ef6b
tabs vs spaces disagreement
2022-03-24 17:11:41 -07:00
bbracker
4b376e2834
1st attempt at multiple channel PLIC
2022-03-24 17:08:10 -07:00
Ross Thompson
71aad2d213
Moved WriteDataM register into LSU.
2022-03-23 14:17:59 -05:00
Ross Thompson
8f74fd2a50
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-23 14:10:38 -05:00
Katherine Parry
7cf994526a
fixed typo in unpack.sv
2022-03-23 18:26:59 +00:00
Ross Thompson
af435ab591
Another change required for forcing to work correctly with MIE/MIP and SIE/SIP.
2022-03-23 10:26:17 -05:00
Ross Thompson
aa60b57fb3
Cleanup in testbench-linux.sv.
2022-03-22 22:34:38 -05:00
Ross Thompson
33b9b5423d
reverted temporary change to configs.
2022-03-22 22:31:34 -05:00
Katherine Parry
fcd23a006e
fixed lint error in fpudivsqrtrecur.sv
2022-03-23 03:24:41 +00:00
Ross Thompson
849707f161
Switched csri IP_REGW to use assignements rather than always_comb as this is incompatible with forcing.
2022-03-22 22:04:06 -05:00
Ross Thompson
c233ef9768
Reverted change to configuration which caused issue with lint.
2022-03-22 21:44:08 -05:00
Ross Thompson
b2487f4b72
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-22 21:28:50 -05:00
Ross Thompson
4ca9458534
added SIP, SIE, and SSTATUS to checkpoints. Can't seem to get the linux testbench to force SIP.
2022-03-22 21:28:34 -05:00
Katherine Parry
23adb2dd03
unpack.sv cleanup
2022-03-23 01:53:37 +00:00
Ross Thompson
e6b42cb10f
Added spoof of uart addresses +0x2 and +0x6.
2022-03-22 16:52:27 -05:00
Ross Thompson
ca8fb45367
Added comment about needed fix to misaligned fault.
2022-03-22 16:52:07 -05:00
Katherine Parry
e3d01c875b
FMA parameterized and FMA testbench reworked
2022-03-19 19:39:03 +00:00
Ross Thompson
ee4b38dce3
dtim writes are supressed on non cacheable operation.
2022-03-12 00:46:11 -06:00
Ross Thompson
86cc758354
cleanup of ram.sv
2022-03-11 18:09:22 -06:00
Ross Thompson
d43e868e5f
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-11 15:42:10 -06:00
Ross Thompson
7a25d577ba
Added new asserts to testbench.
2022-03-11 15:41:53 -06:00
Ross Thompson
67ff8f27f4
Can now support the following memory and bus configurations.
...
1. dtim/irom only
2. bus only
3. dtim/irom + bus
4. caches + bus
2022-03-11 15:18:56 -06:00
Ross Thompson
9dce2a0679
Towards allowing dtim + bus.
2022-03-11 14:58:21 -06:00
Kip Macsai-Goren
9d0a9f0747
added preliminary files for trap/priv tests. These DO NOT pass make yet because if interrrupt handling problems
2022-03-11 20:00:54 +00:00
Kip Macsai-Goren
026354f09f
removed compressed instructions from gcc make for privilege tests
2022-03-11 19:09:40 +00:00
Kip Macsai-Goren
88897da30b
Added interrupt support (not exiting correctly yet), macros for causing traps.
2022-03-11 19:09:16 +00:00
Ross Thompson
6e24a807f6
mild cleanup.
2022-03-11 13:05:47 -06:00
Ross Thompson
b7a680ec2a
Moved subcachelineread inside the cache. There is some ugliness to still resolve.
2022-03-11 12:44:04 -06:00
Ross Thompson
a18f06c20b
Moved subcacheline read inside the cache.
2022-03-11 11:03:36 -06:00
Ross Thompson
52cc852600
removed unused parameter.
2022-03-11 10:43:54 -06:00
Ross Thompson
7f0c5cc847
atomic cleanup.
2022-03-10 18:56:37 -06:00
Ross Thompson
257015a2df
Name changes.
2022-03-10 18:50:03 -06:00
Ross Thompson
6d914def08
Name cleanup.
2022-03-10 18:44:50 -06:00
Ross Thompson
63b1ea88c9
Signal name cleanup.
2022-03-10 18:26:58 -06:00
Ross Thompson
654c4d1148
simplified uncore's name for HWDATA.
2022-03-10 18:17:44 -06:00
Ross Thompson
1aa87c9f3a
Moved subwordwrite to lsu directory.
2022-03-10 18:15:25 -06:00
Ross Thompson
d0cf41dbe4
Simplified byte write enable logic.
2022-03-10 18:13:35 -06:00
Ross Thompson
396c97fc36
Byte write enables are passing all configs now.
2022-03-10 17:26:32 -06:00
Ross Thompson
d8e71e8e35
Progress on the path to getting all configs working with byte write enables.
2022-03-10 17:02:52 -06:00
Ross Thompson
67ef46ea92
Partially working byte write enables. Works for cache, but not dtim or bus only.
2022-03-10 16:11:39 -06:00
Ross Thompson
7a129c75cd
Added byte write enables to cache SRAMs.
2022-03-10 15:48:31 -06:00
David Harris
bc2b757952
bit write update
2022-03-09 19:09:20 +00:00
David Harris
27f09ffb33
Refactored SRAM bit write enable
2022-03-09 17:49:28 +00:00
David Harris
89e0830883
Updated testbench to read expected flags
2022-03-09 13:58:17 +00:00
Ross Thompson
95bb4cc8a8
Minor cleanup to interlockfsm.
2022-03-08 23:38:58 -06:00
Ross Thompson
9b113149b6
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-08 18:05:35 -06:00
Ross Thompson
0310fe858f
Comments.
2022-03-08 18:05:25 -06:00
Ross Thompson
75e93baaee
Marked signals for name changes.
2022-03-08 17:41:02 -06:00
David Harris
00908132e6
Added more test cases and rounding modes to fma test generator
2022-03-08 23:29:29 +00:00
David Harris
8fa6a85af2
fixed setup.sh merge conflict
2022-03-08 23:21:06 +00:00
David Harris
c8f2dce026
fma16_testgen.c test cases
2022-03-08 23:18:18 +00:00
Ross Thompson
3ec32d7ce8
Removed unused signal.
2022-03-08 16:58:26 -06:00
Ross Thompson
d78ba777a4
Added parameter to spillsupport.
2022-03-08 16:38:48 -06:00
Ross Thompson
7b96b3f73c
Moved cacheable signal into cache.
2022-03-08 16:34:02 -06:00
bbracker
099fc34c10
change genTrace to dump UART output to file so we can see how far parsing got
2022-03-08 09:52:17 -08:00
bbracker
742e8d98cd
fix up PLIC and UART checkpointing
2022-03-07 23:48:47 -08:00
bbracker
bfaf496473
change UART state saving to temporarily modify LCR so that DLAB=0 when reading addresses 0 and 1 so that we get RBR and IER instead of divisor latch registers
2022-03-07 22:12:08 -08:00
bbracker
92e1583db5
change testbench-linux.sv to use new shared location of disassembly files
2022-03-07 20:04:08 -08:00
bbracker
097301635a
change checkpoint generation to integrate GDB scripting more cleanly and save UART and PLIC state
2022-03-07 17:59:49 -08:00
bbracker
409dd48706
modify debug.sh to not rely on external GDB script
2022-03-07 11:56:04 -08:00
bbracker
4bf95714eb
add debug.sh
2022-03-07 19:52:19 +00:00
Shreya Sanghai
c15517d334
removed reminant changes
2022-03-07 17:36:05 +00:00
Shreya Sanghai
a218a3d9fa
undid changes to synth script
2022-03-07 17:32:08 +00:00
Shreya Sanghai
94a57fb6eb
modified synth script to take config from outputdir
2022-03-07 17:12:43 +00:00
Shreya Sanghai
bc049e8042
updated makefile to speed up synth
2022-03-07 00:09:18 +00:00
Shreya Sanghai
a68c1c8cb1
modified makefile
2022-03-07 00:09:18 +00:00
bbracker
483aad2a05
update checkpointSweep in accordance to having removed trace parsing feature
2022-03-06 14:55:51 -08:00
bbracker
bea2faeda6
remove vestigial silencePipe mechanism
2022-03-06 14:54:35 -08:00
bbracker
11e9bbf3e4
needed to initialize checkpoint directory
2022-03-06 14:51:25 -08:00
bbracker
d007208aa9
no longer use cythonization on python parser scripts because its a little complicated and has marginal benefit
2022-03-06 14:40:26 -08:00
bbracker
f64b7776ed
give genCheckpoint the same de-sudo'ing treatement
2022-03-06 14:37:12 -08:00
bbracker
7182ec228f
better to use $tvDir variable rather than abs path
2022-03-06 14:33:53 -08:00
bbracker
8f2e67984f
replace sudo's with suggestions in genRecording.sh
2022-03-06 14:31:55 -08:00
bbracker
e57b5208dc
replace sudo's in genTrace.sh with suggested commands
2022-03-06 14:24:50 -08:00
bbracker
91f327e109
small bugfix to suggested sudo commands for linux testvectors
2022-03-06 14:16:23 -08:00
bbracker
742b9d884d
remove checkpoint trace generation since that requires qemu hacking and because we are able to generate the whole trace on VLSI
2022-03-06 14:04:30 -08:00
bbracker
bb90644fb2
add path to Modelsim on vlsi
2022-03-06 13:55:19 -08:00
bbracker
e3f735cc1a
recommend sudo commands without automatically executing them in genInitMem.sh
2022-03-06 13:30:19 -08:00
bbracker
efee8d3a22
change from clang to gcc when compiling testvector-generation executables
2022-03-06 13:18:53 -08:00
bbracker
b1120069a0
generate $WALLY in a way that works for bash and zsh
2022-03-06 13:12:20 -08:00
bbracker
70ddc98d19
Revert "fix "dirname: missing operand" bug from setup.sh"
...
This reverts commit 60cbd1c9c1
.
2022-03-06 12:48:53 -08:00
David Harris
64d4cad288
Restored setup.sh to use . Working for David. Not sure what is happening for Ben - are you on Bash?
2022-03-06 13:39:53 +00:00
David Harris
db3b253ac1
Fixed merge of fpcalc
2022-03-06 13:32:13 +00:00
David Harris
7391c6d338
Checked in fma16_template.v
2022-03-06 13:29:35 +00:00
bbracker
1fc7856c36
add extractFunctionRadix step to buildroot Makefile
2022-03-05 19:02:07 -08:00
bbracker
4eb46785fc
change genInitMem.sh to check for sufficient directory privileges rather than invoke sudo
2022-03-05 18:04:00 -08:00
bbracker
891ec82d81
remove linux-testgen dir because it is now completely obsolete
2022-03-05 17:26:30 -08:00
bbracker
60cbd1c9c1
fix "dirname: missing operand" bug from setup.sh
2022-03-05 17:21:34 -08:00
David Harris
e6133f3d83
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-03-04 07:21:22 -08:00
David Harris
bffd417567
Cleaned up printing and warnings in fpcalc.c
2022-03-04 07:21:18 -08:00
David Harris
cba6f10c19
Prettied up softfloat_demo
2022-03-04 05:16:20 +00:00
David Harris
99a0e2d73d
Adjusted scripts to use
2022-03-04 05:09:02 +00:00
David Harris
c13517f0ce
Defined WALLY in setup as pointer to repository
2022-03-03 21:00:07 -08:00
David Harris
e4d18f1808
removed more old 64priv tests
2022-03-04 03:57:19 +00:00
bbracker
41c75dc89d
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-03-04 00:12:00 +00:00
bbracker
c3e59ae2df
comment out nonfunctioning CSR-PERMISSIONS-M test
2022-03-04 00:11:55 +00:00
David Harris
a50f1a4424
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-03-04 00:07:34 +00:00
David Harris
2cea3349ad
LSU/Cache code review notes
2022-03-04 00:07:31 +00:00
bbracker
d645666fe7
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-03-04 00:06:27 +00:00
bbracker
79ff8d3c80
remove imperas32p tests
2022-03-04 00:06:18 +00:00
David Harris
db7d3cfc0e
Updated Makefile to reflect new Linux and Imperas situation. Updated setup to include Synopsys license file.
2022-03-03 11:28:22 -08:00
David Harris
6431ad4a8b
Fixed fma files to stop breaking synthesis. Changed Makefiles to skip Imperas
2022-03-03 15:38:08 +00:00
David Harris
f76e396255
erge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-03-02 23:47:16 +00:00
David Harris
8e83aaeced
fma file fixes
2022-03-02 23:47:01 +00:00
bbracker
87aad1d953
fix peripheral test and add it to regression
2022-03-02 23:44:39 +00:00
bbracker
11423d1d17
but apparently QEMU doesn't show UXL in SSTATUS
2022-03-02 22:44:19 +00:00
bbracker
6d7bc928af
update SXL UXL bits in MSTATUS to match new QEMU trace
2022-03-02 22:15:57 +00:00
bbracker
e9e827c83e
add CSRs to waveview
2022-03-02 18:31:10 +00:00
bbracker
4fe35aadf2
add rv32a tests to regression
2022-03-02 17:54:55 +00:00
bbracker
7d7a4fefb3
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-03-02 17:46:40 +00:00
bbracker
1bb73dad7d
change main.config so that buildroot expects linux.config and busybox.config to be at $RISCV/buildroot
2022-03-02 17:46:33 +00:00
David Harris
6413f71541
removed imperas-riscv-tests
2022-03-02 17:28:55 +00:00
David Harris
c543fedc60
removed imperas-riscv-tests
2022-03-02 17:28:20 +00:00
bbracker
b6031bb15f
fix buildroot checkpointing and add it back to regression
2022-03-02 16:00:19 +00:00
bbracker
29179c6787
add LRSC test and add wally64a to regression
2022-03-02 07:09:37 +00:00
bbracker
e3ae7fabc7
fix AMO test
2022-03-02 05:41:20 +00:00
David Harris
0ecfff7e3a
FMA project ready to start
2022-03-01 20:58:08 +00:00
David Harris
0693f76676
Fixed march compiling privileged tests to support AMO tests.
2022-03-01 18:02:45 +00:00
bbracker
eaa0fa8e3f
checkpoint sweep script -- not sure if this deserves to be on the repo in the long run, but it is helpful
2022-03-01 03:48:31 +00:00
bbracker
3eb229cda5
copy over truncated trace into checkpoint if not freshly generating a trace
2022-03-01 03:38:48 +00:00
bbracker
d2fa5fa645
buildroot graphical sim bugfix
2022-03-01 03:24:23 +00:00
bbracker
da4d7de2bd
add option to not generate a trace when making checkpoints
2022-03-01 03:13:01 +00:00
bbracker
a8e8cfb838
switch linux-testbench infrastructure over to new linux testvectors at /opt/riscv
2022-03-01 03:11:43 +00:00
bbracker
a048dbb86b
remove old testvector-generation folder
2022-03-01 01:46:26 +00:00
bbracker
00ae804b6c
script for dumping out QEMU ram and bootrom state at ground 0
2022-03-01 01:45:09 +00:00
bbracker
eb26bf69ca
typo fix to checkpoint generator
2022-03-01 00:51:54 +00:00
bbracker
f63c3264c2
tentatively add WALLY-AMO test to arch test infrastructure
2022-03-01 00:40:11 +00:00
bbracker
d8ddda760b
deprecate imperas64p tests and move them over to the privilege configuration of wally-riscv-arch-test
2022-03-01 00:37:46 +00:00
bbracker
ce2fe16243
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-02-28 23:00:07 +00:00
bbracker
7af81d93ec
greatly improve trace-generating checkpoint process with QEMU hack
2022-02-28 23:00:00 +00:00
bbracker
3f5ae216b5
change pipe silencer to redirect to stderr so that we can see if QEMU is at least still alive
2022-02-28 22:55:23 +00:00
David Harris
329fea9329
Renamed unpacking unit to unpack and renamed WriteDataW to ResultW in IEU datapath
2022-02-28 20:50:51 +00:00
David Harris
e2abc79f1d
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-02-28 20:34:35 +00:00
David Harris
5faf52ae87
fpcalc Makefile
2022-02-28 20:34:33 +00:00
David Harris
2ea93c4ac3
adrdecs comments
2022-02-28 20:33:41 +00:00
James E. Stine
eba4eda245
Minor tweak of output of fpcalc - can be reversed with commented out code
2022-02-28 14:10:22 -06:00
Kip Macsai-Goren
f14acac1bf
Changed PMA tests to only allow native length accesses to CLINT
2022-02-28 19:22:44 +00:00
Kip Macsai-Goren
0715c62de5
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-02-28 19:14:18 +00:00
David Harris
908349cbde
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-02-28 19:13:54 +00:00
David Harris
2de31a15da
Modified address decoder for native access to CLINT
2022-02-28 19:13:14 +00:00
Shreya Sanghai
6a1f1e2496
changed filename
2022-02-28 17:33:15 +00:00
Shreya Sanghai
06c2744ac1
Copied previous cofig file instead of orig
2022-02-28 17:32:08 +00:00
Shreya Sanghai
db38b69f83
Makefile for running multiple synthesis
2022-02-28 17:15:43 +00:00
Shreya Sanghai
5b30fb7328
added make allsynth
2022-02-28 17:15:43 +00:00
David Harris
3a43450ac9
hptw cleanup for synthesis
2022-02-28 05:54:34 +00:00
David Harris
9b4d6427f4
Corrected printing doubles
2022-02-28 04:28:07 +00:00
David Harris
9ca4942994
ZMerge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-02-28 04:15:23 +00:00
David Harris
0cc09ed918
Enhanced printing intermediate results in fpcalc.c
2022-02-28 04:15:20 +00:00
Kip Macsai-Goren
6f701a16b3
added snippet to ignore comments in .diff files as well
2022-02-27 23:29:46 +00:00
Kip Macsai-Goren
369e799ce3
added minor sections to MMU tests that had been missing, global bits still need to be checked
2022-02-27 23:28:44 +00:00
David Harris
50f5607799
New softfloat_calc program
2022-02-27 20:35:01 +00:00
David Harris
f4be78ecc3
Created softfloat_demo showcasing how to do math with SoftFloat
2022-02-27 18:17:21 +00:00
David Harris
dbd73e8cfd
Moved regression work directories to regression/wkdir to reduce clutter
2022-02-27 17:35:09 +00:00
David Harris
3675a813c6
Linking against riscv-isa-sim SoftFloat library for RISC-V NaN behavior
2022-02-27 17:23:33 +00:00
David Harris
62d62f9a9e
Moved FMA back into source tree to facilitate synthesis
2022-02-27 15:41:41 +00:00
David Harris
5b15e552c6
Temporarily removed tests/imperas-riscv-tests from Makefile because of license issue
2022-02-27 15:12:10 +00:00
David Harris
c35a071203
Moved fma directory
2022-02-27 14:20:15 +00:00
David Harris
283a25e1a7
fma simulation infrastructure
2022-02-27 04:36:43 +00:00
David Harris
40bc380073
fma passing multiply vectors
2022-02-27 04:36:01 +00:00
James E. Stine
06564b802e
Update FP vector scripts for testing 754
2022-02-26 14:17:41 -06:00
James E. Stine
c73363cfd7
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-02-26 14:10:54 -06:00
James E. Stine
85b5d92f3f
Update Makefile for SoftFloat-3e
2022-02-26 14:10:27 -06:00
David Harris
f29cc4b33f
simplified fma Makefile
2022-02-26 19:55:42 +00:00
David Harris
b2db58e982
Made softfloat.a a symlink
2022-02-26 19:53:04 +00:00
David Harris
a9f9cfa5b6
Added start of fma
2022-02-26 19:51:19 +00:00
James E. Stine
e295785b45
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-02-26 13:20:59 -06:00
James E. Stine
896fc0be0e
Update sample SoftFloat programs
2022-02-26 13:20:50 -06:00
David Harris
ff674b695c
Moved Softfloat / TestFloat
2022-02-26 19:17:32 +00:00
James E. Stine
860eca356e
Delete unused FP vector scripts
2022-02-26 13:02:57 -06:00
Kip Macsai-Goren
2da39c7052
allowed for vectored and unvectored interrupts in trap handlers
2022-02-25 23:57:45 +00:00
Kip Macsai-Goren
ac03a95aeb
added support for trap handlers in in multiple pivilege modes
2022-02-25 23:57:45 +00:00
bbracker
2ef97b9841
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-02-25 23:51:48 +00:00
bbracker
8518fd44a5
revived checkpointing and hacked it up to generate a trace starting at the checkpoint
2022-02-25 23:51:40 +00:00
bbracker
8eb7ab0dca
parser rename
2022-02-25 20:05:10 +00:00
David Harris
b3eefec427
Removed tests/imperas-riscv-tests/riscv-target/risdcvOVPsimPlus/device/rv64i-perip to stop makefile issues compiling Imperas tests. Still need to port other imperas-riscv-tests
2022-02-25 18:17:05 +00:00
kaveh Pezeshki
4e20df64e2
Updated busybox disassembly
2022-02-24 04:49:04 +00:00
kaveh Pezeshki
09a1519dce
removed verbose cpio and excluded /dev/console
2022-02-24 00:08:10 +00:00
David Harris
5d7d40a4c7
Linux disassembly makefile
2022-02-24 00:05:23 +00:00
Ross Thompson
730fdb029a
Fixed bug with DAPageFault being wrong when HPTW writes not supported.
2022-02-23 10:54:34 -06:00
Ross Thompson
6f53f7943f
More spillsupport more structual.
2022-02-23 10:27:14 -06:00
Ross Thompson
19ec874641
Fixed bug with spill support and Instruction DA Page Faults.
2022-02-23 10:16:12 -06:00
Ross Thompson
15f6871a8d
Added generates to pcnextf muxes for privileged and caches.
2022-02-22 22:45:00 -06:00
Ross Thompson
834b308ed6
Fixed "bug" with wally-pipelined.do
2022-02-22 22:19:25 -06:00
Ross Thompson
59f04f2518
Minor busdp cleanup.
2022-02-22 17:28:26 -06:00
Ross Thompson
ea29291024
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-02-22 14:45:53 -06:00
Ross Thompson
971dd494f6
Clarified interlockfsm.
2022-02-22 11:31:28 -06:00
bbracker
2322e66f9f
fix lint bugs in PLIC and UART
2022-02-22 05:04:18 +00:00
bbracker
ac114e1c6d
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-02-22 04:27:50 +00:00
bbracker
202bd2f8f8
change UART PLIC IRQ mapping from 4 to 10 to match virt model; move WALLY-PERIPH tests to wally arch tests
2022-02-22 03:46:08 +00:00
bbracker
c26526c9f3
change RX side of UART to aslo be LSB-first
2022-02-22 03:34:08 +00:00
Ross Thompson
1ab2e7590b
Added some clearity to lsuvirtmem.sv.
2022-02-21 17:20:58 -06:00
Ross Thompson
8a280f211f
Annotated IFU for mux changes.
2022-02-21 17:20:34 -06:00
Ross Thompson
ace743ae91
Changed HPTWRead/HPTWWrite to be HPTWRW to be similar to MemRW.
2022-02-21 16:54:38 -06:00
Ross Thompson
414e73edd9
Cleaned up names in lsuvirtmem.
2022-02-21 16:44:30 -06:00
bbracker
356993df7c
new trace generation method
2022-02-21 20:30:39 +00:00
Ross Thompson
3ba70b74d6
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-02-21 12:46:22 -06:00
Ross Thompson
456a54166a
Minor cleanup of lsu.
2022-02-21 12:46:06 -06:00
ushakya22
5f916d17d2
Moved order of reading a, b, and result from test vectors file so that result
...
matches up with inputs a and b
2022-02-21 17:28:11 +00:00
ushakya22
3abc2c0592
- created new testbench file instead of having it at the bottom of the srt file
...
- uses unpacker to parse 64 bit floating point numbers
- updated testbench to read from new testvectors generated by exptestbench
Notes:
MEM_WIDTH updated to be 64*3
Input numbers and output result is 64 bit number
MEM_SIZE set to 60000
2022-02-21 16:24:50 +00:00
ushakya22
1ea3e8120a
- Created exponent divsion module
...
- top module includes exponent module now
Notes:
- may be a better implementation of the exponent module rather than
having what I believe are two adders currently
2022-02-21 16:13:30 +00:00
ushakya22
3d5b407755
Changed Makefile to compile exptestgen instead of testgen
2022-02-21 16:08:45 +00:00
ushakya22
ec3fa45f86
reverted srt_standford back to original file pre modifications by Udeema
2022-02-21 16:08:09 +00:00
ushakya22
ed452aff5f
verilator lint for srt
2022-02-21 16:05:43 +00:00
ushakya22
a3a572fe5f
Created test vector generation file for exponent and mantissa division
2022-02-21 16:04:41 +00:00
Ross Thompson
5d9ad011d2
Moved mux into lsuvirtmem.
2022-02-21 09:31:29 -06:00
Ross Thompson
8af055c78e
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-02-21 09:06:09 -06:00
Kip Macsai-Goren
adb9134c64
removed macro-only file. no longer used
2022-02-21 07:15:00 +00:00
Kip Macsai-Goren
4a17b2e4ed
made sure program isn't passing the testwith a false posistive
2022-02-21 07:14:42 +00:00
Kip Macsai-Goren
04892c5d38
added scratch register tests for 64 and 32 bits
2022-02-21 07:03:12 +00:00
Kip Macsai-Goren
d852e8a5c1
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-02-21 00:34:54 +00:00
kaveh Pezeshki
c4ad200ea7
added Makefile for automated disassembly generation
2022-02-20 09:08:38 +00:00
Ross Thompson
a60332b455
Minor changes to LSU.
2022-02-19 14:38:17 -06:00
David Harris
4e194b2576
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-02-18 23:08:47 +00:00
David Harris
a88302f0d7
Removed problematic warning about reaching default state in HPTW
2022-02-18 23:08:40 +00:00
Kip Macsai-Goren
324efa7d42
added 32 bit pma tests to regression even though they've been working fo a while
2022-02-18 19:43:24 +00:00
Kip Macsai-Goren
dcb5d0f6a9
Added misa test for both 32 and 64 bits
2022-02-18 19:41:50 +00:00
Kip Macsai-Goren
f38fc7bb73
Merge branch 'main' of https://github.com/davidharrishmc/riscv-wally into main
2022-02-18 19:07:40 +00:00
Ross Thompson
e273850340
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-02-17 17:50:28 -06:00
Ross Thompson
0bd533473c
New config option to enable hptw writes to PTE in memory to update Access and Dirty bits.
2022-02-17 17:19:41 -06:00
Ross Thompson
a7b774e453
Accidentally cleared dirty bit when setting access bit in hptw.
2022-02-17 16:20:20 -06:00
Ross Thompson
7dffcba182
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-02-17 14:49:37 -06:00
Ross Thompson
d152733a17
Rough implementation passing regression test with hptw atomic writes to memory.
2022-02-17 14:46:11 -06:00
David Harris
3036de316a
Started make allsynth to try many experiments
2022-02-17 17:57:02 +00:00
Ross Thompson
4cfb601dc8
Fixed a bunch of the virtual memory changes. Now supports atomic update of PTE in memory concurrent with TLB.
2022-02-17 10:04:18 -06:00
Ross Thompson
565ca4e4a3
Broken state. address translation not working after changes to hptw to support atomic updates to PT.
2022-02-16 23:37:36 -06:00
Ross Thompson
460b37b21a
Added additional suppresses to vsim command incase buildroot files are missing.
2022-02-16 17:05:54 -06:00
Ross Thompson
beac362364
Moved a few muxes around after sww changes.
2022-02-16 15:43:03 -06:00
Ross Thompson
6a2bcfcd01
cleanup of signal names.
2022-02-16 15:29:08 -06:00
Ross Thompson
84edb8b5d5
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-02-16 15:22:35 -06:00
Ross Thompson
bd7343b791
Modified lsu and uncore so only 1 sww is present. The sww is in the LSU if there is a cache or dtim. uncore.sv contains the sww if there is no local memory in the LSU. This is necessary as the subword write needs the read data to be valid and that read data is not aviable in the correct cycle in the LSU if there is no dtim or cache. Muxing could be done to provide the correct read data, but it adds muxes to the critical path.
2022-02-16 15:22:19 -06:00
Ross Thompson
a64839d999
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-02-16 09:48:16 -06:00
Ross Thompson
6076f90bbc
Cache mods to be consistant with diagrams.
2022-02-14 12:40:51 -06:00
Ross Thompson
d00d66409d
Merge branch 'main' of github.com:davidharrishmc/riscv-wally into main
2022-02-11 14:00:13 -06:00
Ross Thompson
5394e79ad7
Fixed ila's config.
2022-02-11 13:58:45 -06:00