Commit Graph

218 Commits

Author SHA1 Message Date
a6decda220 added working paging small kernel 2026-03-29 17:59:39 +01:00
4cea0232d4 pushed comparitive benchmark Toooba 2026-03-20 13:37:31 +00:00
dd3336a2e0 added test for adding pages 2026-01-06 14:55:05 +00:00
28abd5de95 test traces and log file for TLB check 2025-12-23 09:34:06 +00:00
Jonathan Woodruff
86c1c65261 Revert "Give commit redirect priority over branch/execute redirect."
This reverts commit 7bc17965b6.
2025-07-03 11:46:43 +01:00
Jonathan Woodruff
7bc17965b6 Give commit redirect priority over branch/execute redirect. 2025-05-20 16:34:45 +01:00
Franz Fuchs
6ebe612ff8 Fix Toooba to use addresses instead of offsets (#32)
* Fixed the Decoding of (C)JAL

* Use CSR addresses instead of offsets

* Fixed offsets correctly

* Fixed all offsets I could spot

* Fix use of modifyOffset function

* Corrected brAddrCalc function

* Preliminary fix for ddc offsetting

* Use setAddr instead of incOffset for DDC

* Deleted unnecessarily added lines in ALU pipeline

* Deleted white space

* Switched off verbosity for ALU pipeline

* Removed unnecessary print import
2025-02-05 11:06:07 +00:00
Peter Rugg
af8432d3f3 Return Abstract Command Error on unsupported CSRs 2024-09-16 18:45:19 +01:00
Jonathan Woodruff
e0eefbcfd0 Be a little more careful with outstanding requests. 2024-03-18 09:10:55 +00:00
gameboo
561683343d Add a mean to configure starting PC dynamically at start of simulation 2023-07-13 15:34:08 +01:00
Jonathan Woodruff
3ebf537f71 Tidy up tracing options, including using RVFI when building for bluesim
(which I'm sure we had meant to be doing?).
2023-06-23 13:09:38 +00:00
Jonathan Woodruff
410be14a25 Merge remote-tracking branch 'karlis/CHERI' into ks980-prefetch 2023-05-23 17:34:19 +00:00
Jonathan Woodruff
f476990c65 Merge branch 'CHERI' into ks980-prefetch 2023-05-17 15:32:40 +00:00
Karlis Susters
3098b8afba Other code cleanup 2023-05-10 23:59:35 +01:00
Peter Rugg
ece8955595 Prevent reads to addresses with outstanding writes
Untested
2023-02-28 23:02:44 +00:00
Karlis Susters
2c9428d1f3 Prepared repo for building on FPGA 2023-02-13 21:52:50 +00:00
Karlis Susters
347107b733 Prefetcher implementation in both L1 and LL and data logging 2023-02-13 11:59:26 +00:00
Jonathan Woodruff
06a9221bb1 Changes for GFE hardware build with 512-bit bus. 2022-11-23 13:29:46 +00:00
Jonathan Woodruff
5f69c657c1 Use IDs in cache miss transactions to allow reordering. 2022-11-23 10:11:31 +00:00
Alexandre Joannou
98e15acb3d Bump BlueStuff + use _Periph versions of parameters where needed 2022-11-18 12:07:24 +00:00
Jonathan Woodruff
4af4b647b1 Merge branch 'CHERI' into jdw57-512axi 2022-11-14 14:51:54 +00:00
Peter Rugg
e120b3427d Merge branch 'LoadTagsImprove' into CHERI 2022-11-14 13:28:44 +00:00
Jonathan Woodruff
ddf4afaf71 Changes to build with a 512-bit main data bus (with all other busses
still 64-bits).
Also, the top-level SoC_Top exposes a 64-bit bus still, so hopefully the
GFE configuration is unchanged.
This passes the isa_tests.
2022-11-11 17:52:32 +00:00
Jonathan Woodruff
066289f8aa Work in progress.
Wd_Data is moved to 512 bits, and LLC_AXI4_Adapter is updated.
Lots of build errors now; a few have been resolved.
2022-11-10 13:51:12 +00:00
Alexandre Joannou
02ba37bf6a Report the actual running state to the debug module 2022-09-08 13:20:35 +00:00
Alexandre Joannou
a0d471e4f8 Attempt to make toHost setiing behave in src_Testbench
Made the proc start method non-blocking on mmio platform and wired in a new way
to set the tohost addr using a control and status request, and bumpped
WindCoreInterface accordingly
2022-09-06 10:42:34 +00:00
gameboo
6b51139c9a Update ack 2022-08-15 16:18:23 +00:00
Alexandre Joannou
e4bdbfc98a Bump BlueStuff + add outter subordinate trafic as master to internal bus 2022-08-15 16:18:23 +00:00
Peter Rugg
6d4644ce73 Add tag-only state to MESI and interface with tagOnlyReq of tag controller 2022-03-31 02:07:01 +01:00
Jonathan Woodruff
6d7f95571f Merge remote-tracking branch 'origin/CHERI' into jdw57_prediction 2022-03-25 13:06:22 +00:00
Peter Rugg
d0c1d97a2a Print RVFI packets in RVFI_DII also 2022-03-15 10:04:18 +00:00
Peter Rugg
a6b39b58a1 Clean up prints 2022-03-11 10:24:39 +00:00
Peter Rugg
a6976c0071 Fix RVFI-only build 2022-03-09 22:18:08 +00:00
Jonathan Woodruff
75d1afe8b4 Only push to RAS when the linking instruction is non-speculative.
That is, don't push in Decode, push from the training structure coming
from Execute, which is delayed until the instruction that issued it is
non-speculative.
2022-02-18 13:22:02 +00:00
Jonathan Woodruff
4961d321b9 Merge branch 'CHERI' into jdw57_prediction 2022-02-16 10:10:00 +00:00
Jonathan Woodruff
01132d165a Enable tracing of physical addresses for RVFI (if PADDR_RVFI is
defined).
This is done by adding a vector of padder lookup interfaces to the load
store queue.
This should help with targeted memory translation debugging, and also
with compatability with the current Sail RVFI implemenation which is
probably incorrect with respect to the RVFI spec which calls for virtual
addresses in the maddr field.
2022-02-01 09:10:48 +00:00
Jonathan Woodruff
ad5d5aca0d Also pause branch execution when there is a pending wrong speculation. 2022-01-31 12:36:17 +00:00
Jonathan Woodruff
4fbb7b5648 A version that seems to actually run.
The buffer in GlobalSpecUpdate has to be a SpecFifo.
2022-01-31 12:09:38 +00:00
Jonathan Woodruff
54d1a204f0 Don't decode redirected streams until they are non-speculative. 2021-12-17 16:29:14 +00:00
Jonathan Woodruff
3322d1d3d7 Revert "An attempt at wiring up the specUpdate interface for the Btb."
This reverts commit 022df36199.
2021-12-16 12:10:50 +00:00
Jonathan Woodruff
022df36199 An attempt at wiring up the specUpdate interface for the Btb. 2021-12-15 18:40:58 +00:00
Jonathan Woodruff
4e0da006e8 Make non-speculative training optional.
Removing non-speculative training actually improves performance in
CoreMark.  While it's "safer", I guess this isn't required for BSC.
2021-11-24 17:11:36 +00:00
Jonathan Woodruff
7b472d4d3c Reduce area overhead by using an unguarded specfifo that does not have
to be worst-case-sized, but can drop elements if it is full.
2021-11-16 13:53:34 +00:00
Jonathan Woodruff
618dea1225 Feed head of RAS through to execute with training info to reset the head
on a misprediction.
2021-11-16 11:00:04 +00:00
Jonathan Woodruff
54c0ccadf0 Only train from branches that have all previous branches resolved. 2021-11-12 17:55:04 +00:00
gameboo
9657339d87 "fix" non PERFORMANCE_MONITORING build 2021-09-29 18:09:06 +01:00
Franz Fuchs
87977461a6 Merge branch 'CHERI' of github.com:CTSRD-CHERI/Toooba into CHERI 2021-09-29 14:23:20 +01:00
Franz Fuchs
cf8bfdc4a8 Merge branch 'faf28_hpm_consistency' into CHERI 2021-09-29 14:04:08 +01:00
Franz Fuchs
db9b5c7f54 re-integrated TagController 2021-09-24 11:39:23 +01:00
Peter Rugg
8ef44b0a6c Workaround single step wedges by not waiting for flush before halting 2021-09-24 10:33:58 +00:00