#
3dfb64bd |
| 25-Nov-2024 |
Zehao Liu <[email protected]> |
fix(HPM): fix PTW perfevent print error, organize the code format of some perfevents (#3890)
`getperfevent` retrieves both the `name` and `value` fields, whereas
`getperf` only retrieves the `value
fix(HPM): fix PTW perfevent print error, organize the code format of some perfevents (#3890)
`getperfevent` retrieves both the `name` and `value` fields, whereas
`getperf` only retrieves the `value` port. The original implementation
caused all perf event information for PTW to be printed as
`perfEventsPTW`, making them indistinguishable.
show more ...
|
#
d1e473c9 |
| 30-May-2024 |
xiaofeibao <[email protected]> |
Rename: fix debug_v0_rat debug_vl_rat connection
|
#
368cbcec |
| 28-May-2024 |
xiaofeibao <[email protected]> |
Rename: v0 vl split
|
#
4eebf274 |
| 25-Apr-2024 |
sinsanction <[email protected]> |
Rename: split fp and vec FreeList
|
#
780712aa |
| 19-Mar-2024 |
xiaofeibao-xjtu <[email protected]> |
backend: new rob 8 banks read and 8 commit width
|
#
5f8b6c9e |
| 07-Mar-2024 |
sinceforYy <[email protected]> |
Backend: add clock gating to valid singal
|
#
4b0d80d8 |
| 11-Oct-2023 |
Xuan Hu <[email protected]> |
Merge upstream/master into tmp-backend-merge-master
|
#
8891a219 |
| 08-Oct-2023 |
Yinan Xu <[email protected]> |
Bump rocket-chip (#2353)
|
#
e986c5de |
| 18-Sep-2023 |
Xuan Hu <[email protected]> |
backend,perf: add more PMC
|
#
c61abc0c |
| 06-Aug-2023 |
Xuan Hu <[email protected]> |
merge master into new-backend
Todo: fix error
|
#
fa7f2c26 |
| 20-Jul-2023 |
Tang Haojin <[email protected]> |
CtrlBlock: implement rename snapshot (#2191)
* CtrlBlock: new ME method for better timing and area
* ctrlblock: implement snapshot recovery
* rename: enlarge distance between snapshots
* sn
CtrlBlock: implement rename snapshot (#2191)
* CtrlBlock: new ME method for better timing and area
* ctrlblock: implement snapshot recovery
* rename: enlarge distance between snapshots
* snapshot: add rename snapshot switch
* CtrlBlock: add snapshotGen API
* snapshot: optimize timing
* snapshot: put snapshot logic in a module
show more ...
|
#
dcf3a679 |
| 12-Jul-2023 |
Tang Haojin <[email protected]> |
CtrlBlock: new ME method for better timing and area (#2161)
new move elimination method:
1. get old_pdest from arch-rat when commit;
2. get ready-for-free from comparing old-pdest with arch-rat
CtrlBlock: new ME method for better timing and area (#2161)
new move elimination method:
1. get old_pdest from arch-rat when commit;
2. get ready-for-free from comparing old-pdest with arch-rat after commit;
show more ...
|
#
d91483a6 |
| 28-Apr-2023 |
fdy <[email protected]> |
add vset support
Co-authored-by: zhanglyGit <[email protected]> Co-authored-by: Xuan Hu <[email protected]>
|
#
b6c99e8e |
| 29-Dec-2022 |
ZhangZifei <[email protected]> |
Merge remote-tracking branch 'origin/master' into rf-after-issue
|
#
3c02ee8f |
| 25-Dec-2022 |
wakafa <[email protected]> |
Separate Utility submodule from XiangShan (#1861)
* misc: add utility submodule
* misc: adjust to new utility framework
* bump utility: revert resetgen
* bump huancun
|
#
4bc8d977 |
| 25-Dec-2022 |
ZhangZifei <[email protected]> |
rename: fix bug of freelist number cause by mixed v/f reg
|
#
ccfddc82 |
| 01-Nov-2022 |
Haojin Tang <[email protected]> |
rename: Re-rename instead of walking back after redirect (#1768)
* freelist & refcounter: implement arch states
* walk: restore and walk again when redirecting
* ROB: optimize invalidation of
rename: Re-rename instead of walking back after redirect (#1768)
* freelist & refcounter: implement arch states
* walk: restore and walk again when redirecting
* ROB: optimize invalidation of `valid`
show more ...
|
#
66b2c4a4 |
| 12-Jul-2022 |
Yinan Xu <[email protected]> |
ctrl: optimize freelist timing (#1633)
* rat: map all arch registers to zero when init
* freelist: fix stepBack width
* freelist: fix timing of free offset
|
#
5ef86c38 |
| 25-Jun-2022 |
Yinan Xu <[email protected]> |
freelist: optimize timing of read and writing (#1593)
This commit optimizes the timing of freelist by changing the updating
function of headPtr and tailPtr.
We maintains an one-hot representatio
freelist: optimize timing of read and writing (#1593)
This commit optimizes the timing of freelist by changing the updating
function of headPtr and tailPtr.
We maintains an one-hot representation of headPtr and further uses it to
read the free registers from the list, which should be better than the
previous implementation where headPtr is used to indexed into the queue.
The update of tailPtr and the freelist is delayed by one cycle to
optimize the timing. Because freelist allocates new registers in the
next cycle iff there are more than RenameWidth free registers in this
cycle. The freed registers in this cycle will never be used in the next
cycle. Thus, we can delay the updating of queue data to the next cycle.
We also move the update of tailPtr to the next cycle, since PopCount
takes a long timing and we move the last adder to the next cycle. Now
the adder works parallely with PopCount. That is, the updating of
tailPtr is pipelined.
show more ...
|
#
1ca0e4f3 |
| 10-Dec-2021 |
Yinan Xu <[email protected]> |
core: refactor hardware performance counters (#1335)
This commit optimizes the coding style and timing for hardware
performance counters.
By default, performance counters are RegNext(RegNext(_)).
|
#
459d1cae |
| 26-Nov-2021 |
Yinan Xu <[email protected]> |
refCounter: optimize timing for freeRegs (#1255)
This commit changes how isFreed is calculated. Instead of using
refCounter in the next, we compute it at this cycle and RegNext it.
|
#
cd365d4c |
| 23-Oct-2021 |
rvcoresjw <[email protected]> |
add performance counters at core and hauncun (#1156)
* Add perf counters
* add reg from hpm counter source
* add print perfcounter enable
|
#
70224bf6 |
| 16-Oct-2021 |
Yinan Xu <[email protected]> |
rename: support full-featured move elimination (#1123)
This commit optimizes the move elimination implementation.
Reference counting for every physical register is recorded. Originally
0-31 regi
rename: support full-featured move elimination (#1123)
This commit optimizes the move elimination implementation.
Reference counting for every physical register is recorded. Originally
0-31 registers have counters of ones. Every time the physical register
is allocated or deallocated, the counter is increased or decreased by
one. When the counter becomes zero from a non-zero value, the register
is freed and released to freelist.
show more ...
|
#
f4b2089a |
| 16-Oct-2021 |
Yinan Xu <[email protected]> |
core: use redirect ports for flush (#1121)
This commit removes flush IO for every module. Flush now re-uses
redirect ports to flush the instructions.
|
#
2824417d |
| 23-Aug-2021 |
YikeZhou <[email protected]> |
rename: [refactoring] remove useless file + comment added
|