#
5bb56d4d |
| 12-Feb-2023 |
ZhangZifei <[email protected]> |
Merge remote-tracking branch 'origin/master' into rf-after-issue
|
#
50c287a7 |
| 08-Feb-2023 |
William Wang <[email protected]> |
Merge pull request #1883 from OpenXiangShan/merge-l1-pf-master
sms,ldu,dcache: prefetch to l1 framework & new load flow arb
|
#
fdc9c785 |
| 07-Feb-2023 |
ZhangZifei <[email protected]> |
Merge remote-tracking branch 'origin/master' into rf-after-issue
|
#
e0374b1c |
| 05-Feb-2023 |
Haoyuan Feng <[email protected]> |
MMU: Add Fake L1 TLB (#1888)
|
#
023fa468 |
| 30-Jan-2023 |
William Wang <[email protected]> |
ldu: do not override ldflow when ld replay
TODO: ldflow from prefetch to be added to ldflow select logic
|
#
289fc2f9 |
| 08-Sep-2022 |
LinJiawei <[email protected]> |
Added sms prefetcher
|
#
2a4383dc |
| 08-Jan-2023 |
ZhangZifei <[email protected]> |
Merge remote-tracking branch 'origin/master' into rf-after-issue
|
#
144422dc |
| 04-Jan-2023 |
Maxpicca-Li <[email protected]> |
dcache: setup way predictor framework (#1857)
This commit sets up a basic dcache way predictor framework and a dummy predictor.
A Way Predictor Unit (WPU) module has been added to dcache. Dcache da
dcache: setup way predictor framework (#1857)
This commit sets up a basic dcache way predictor framework and a dummy predictor.
A Way Predictor Unit (WPU) module has been added to dcache. Dcache data SRAMs
have been reorganized for that.
The dummy predictor is disabled by default.
Besides, dcache bank conflict check has been optimized. It may cause timing problems,
to be fixed in the future.
* ideal wpu
* BankedDataArray: change architecture to reduce bank_conflict
* BankedDataArray: add db analysis
* Merge: the rest
* BankedDataArray: change the logic of rrl_bank_conflict, but let the number of rw_bank_conflict up
* Load Logic: changed to be as expected
reading data will be delayed by one cycle to make selection
writing data will be also delayed by one cycle to do write operation
* fix: ecc check error
* update the gitignore
* WPU: add regular wpu and change the replay mechanism
* WPU: fix refill fail bug, but a new addiw fail bug appears
* WPU: temporarily turn off to PR
* WPU: tfix all bug
* loadqueue: fix the initialization of replayCarry
* bankeddataarray: fix the bug
* DCacheWrapper: fix bug
* ready-to-run: correct the version
* WayPredictor: comments clean
* BankedDataArray: fix ecc_bank bug
* Parameter: set the enable signal of wpu
show more ...
|
#
b6c99e8e |
| 29-Dec-2022 |
ZhangZifei <[email protected]> |
Merge remote-tracking branch 'origin/master' into rf-after-issue
|
#
35d1557a |
| 23-Dec-2022 |
Ziyue Zhang <[email protected]> |
Difftest: add vec regs
|
#
73faecdc |
| 22-Dec-2022 |
Xuan Hu <[email protected]> |
RegFile: add vector regfile
|
#
5afdf73c |
| 21-Dec-2022 |
Haoyuan Feng <[email protected]> |
MMU: Add ChiselDB and Fake PTW (#1858)
* L2TLB: Fix a bug of Prefetcher
* MMU: Add ChiselDB
* MMU: Add Fake PTW
* MMU: Fix ChiselDB for dual core
|
#
deb6421e |
| 14-Dec-2022 |
Haojin Tang <[email protected]> |
vector rename: support vector register rename
|
#
6d729271 |
| 14-Dec-2022 |
ZhangZifei <[email protected]> |
Merge branch 'rf-after-issue' of https://github.com/OpenXiangShan/XiangShan into rf-after-issue
|
#
0ba52110 |
| 08-Dec-2022 |
Ziyue Zhang <[email protected]> |
CSR: support vcsr
|
#
cea88ff8 |
| 11-Dec-2022 |
William Wang <[email protected]> |
vlsu: define vlsu io (#1853)
|
#
37225120 |
| 07-Dec-2022 |
sfencevma <[email protected]> |
Uncache: optimize write operation (#1844)
This commit adds an uncache write buffer to accelerate uncache write
For uncacheable address range, now we use atomic bit in PMA to indicate
uncache wri
Uncache: optimize write operation (#1844)
This commit adds an uncache write buffer to accelerate uncache write
For uncacheable address range, now we use atomic bit in PMA to indicate
uncache write in this range should not use uncache write buffer.
Note that XiangShan does not support atomic insts in uncacheable address range.
* uncache: optimize write operation
* pma: add atomic config
* uncache: assign hartId
* remove some pma atomic
* extend peripheral id width
Co-authored-by: Lyn <[email protected]>
show more ...
|
#
a760aeb0 |
| 02-Dec-2022 |
happy-lx <[email protected]> |
Replay all load instructions from LQ (#1838)
This intermediate architecture replays all load instructions from LQ.
An independent load replay queue will be added later.
Performance loss caused b
Replay all load instructions from LQ (#1838)
This intermediate architecture replays all load instructions from LQ.
An independent load replay queue will be added later.
Performance loss caused by changing of load replay sequences will be
analyzed in the future.
* memblock: load queue based replay
* replay load from load queue rather than RS
* use counters to delay replay logic
* memblock: refactor priority
* lsq-replay has higher priority than try pointchasing
* RS: remove load store rs's feedback port
* ld-replay: a new path for fast replay
* when fast replay needed, wire it to loadqueue and it will be selected
this cycle and replay to load pipline s0 in next cycle
* memblock: refactor load S0
* move all the select logic from lsq to load S0
* split a tlbReplayDelayCycleCtrl out of loadqueue to speed up
generating emu
* loadqueue: parameterize replay
show more ...
|
#
5da19fb3 |
| 22-Nov-2022 |
William Wang <[email protected]> |
Merge pull request #1831 from OpenXiangShan/nanhu-lsu-timing-to-master
Rebase nanhu lsu timing opt to master
|
#
0a992150 |
| 06-Aug-2022 |
William Wang <[email protected]> |
std: add an extra pipe stage for std (#1704)
|
#
eb163ef0 |
| 17-Nov-2022 |
Haojin Tang <[email protected]> |
top-down: introduce top-down counters and scripts (#1803)
* top-down: add initial top-down features
* rob600: enlarge queue/buffer size
* :art: After git pull
* :sparkles: Add BranchResteer
top-down: introduce top-down counters and scripts (#1803)
* top-down: add initial top-down features
* rob600: enlarge queue/buffer size
* :art: After git pull
* :sparkles: Add BranchResteers->CtrlBlock
* :sparkles: Cg BranchResteers after pending
* :sparkles: Add robflush_bubble & ldReplay_bubble
* :ambulance: Fix loadReplay->loadReplay.valid
* :art: Dlt printf
* :sparkles: Add stage2_redirect_cycles->CtrlBlock
* :saprkles: CtrlBlock:Add s2Redirect_when_pending
* :sparkles: ID:Add ifu2id_allNO_cycle
* :sparkles: Add ifu2ibuffer_validCnt
* :sparkles: Add ibuffer_IDWidth_hvButNotFull
* :sparkles: Fix ifu2ibuffer_validCnt
* :ambulance: Fix ibuffer_IDWidth_hvButNotFull
* :sparkles: Fix ifu2ibuffer_validCnt->stop
* feat(buggy): parameterize load/store pipeline, etc.
* fix: use LoadPipelineWidth rather than LoadQueueSize
* fix: parameterize `rdataPtrExtNext`
* fix(SBuffer): fix idx update logic
* fix(Sbuffer): use `&&` to generate flushMask instead of `||`
* fix(atomic): parameterize atomic logic in `MemBlock`
* fix(StoreQueue): update allow enque requirement
* chore: update comments, requirements and assertions
* chore: refactor some Mux to meet original logic
* feat: reduce `LsMaxRsDeq` to 2 and delete it
* feat: support one load/store pipeline
* feat: parameterize `EnsbufferWidth`
* chore: resharp codes for better generated name
* top-down: add initial top-down features
* rob600: enlarge queue/buffer size
* top-down: add l1, l2, l3 and ddr loads bound perf counters
* top-down: dig into l1d loads bound
* top-down: move memory related counters to `Scheduler`
* top-down: add 2 Ldus and 2 Stus
* top-down: v1.0
* huancun: bump HuanCun to a version with top-down
* chore: restore parameters and update `build.sc`
* top-down: use ExcitingUtils instead of BoringUtils
* top-down: add switch of top-down counters
* top-down: add top-down scripts
* difftest: enlarge stuck limit cycles again
Co-authored-by: gaozeyu <[email protected]>
show more ...
|
#
c5e28a9a |
| 21-Sep-2022 |
Lingrui98 <[email protected]> |
bpu: remove minimal pred and old ubtb
|
#
11d0c81d |
| 31-Aug-2022 |
Lingrui98 <[email protected]> |
bpu: implement fully-associated micro ftb to replace current ubtb
|
#
c2d1ec7d |
| 16-Aug-2022 |
Lingrui98 <[email protected]> |
bpu: refactor prediction i/o bundles
|
#
06082082 |
| 18-Jul-2022 |
Lemover <[email protected]> |
dtlb: change volume from s128f8 to s64f16 (#1662)
DTLB volume configuration:
old: normal page 128 direct-asso + super page 8 full-asso
new: normal page 64 direct-asso + super page 16 full-asso
Be
dtlb: change volume from s128f8 to s64f16 (#1662)
DTLB volume configuration:
old: normal page 128 direct-asso + super page 8 full-asso
new: normal page 64 direct-asso + super page 16 full-asso
Better timing and better driver now.
For Spec06,some specs increase slightly, while some others decrease slightly.
show more ...
|