History log of /XiangShan/src/main/scala/xiangshan/frontend/IFU.scala (Results 101 – 125 of 434)
Revision Date Author Comments
# 1d011975 21-Jan-2022 JinYue <[email protected]>

IFU <opt>: delete oversize logic


# 56788a33 18-Jan-2022 JinYue <[email protected]>

Frontend <timing>: add additional PMP checker


# 0bca1ccb 14-Jan-2022 JinYue <[email protected]>

IFU <timing>: f2_data select signal optimization


# 856013d6 17-Jan-2022 Steve Gou <[email protected]>

Merge pull request #1428 from OpenXiangShan/ftq-timing

add one cycle on ifu/backend redirect


# 3908fff2 12-Jan-2022 Jay <[email protected]>

IFU <bug-fix>: raise page-fault when crossPage (#1421)


# 9fb49cf3 11-Jan-2022 JinYue <[email protected]>

Merge branch 'bpu-timing-2' into frontend-final


# 0d756c48 07-Jan-2022 JinYue <[email protected]>

IFU <bug-fix>: add f1_valid for from_bpu_f1_flush


# b37bce8e 06-Jan-2022 JinYue <[email protected]>

ICache <timing>: separate Code and Data


# 37483030 06-Jan-2022 JinYue <[email protected]>

IFU: <timing> f0_flush only flush control registers


# cb4f77ce 31-Dec-2021 Lingrui98 <[email protected]>

bpu: timing optimizations

* move statisical corrector to stage 3
* add recover path in stage 3 for ras in case stage 2 falsely push or pop
* let stage 2 has the highest physical priority in bpu
* le

bpu: timing optimizations

* move statisical corrector to stage 3
* add recover path in stage 3 for ras in case stage 2 falsely push or pop
* let stage 2 has the highest physical priority in bpu
* left ras broken for the next commit to fix

show more ...


# 5cf832d9 31-Dec-2021 Lingrui98 <[email protected]>

Merge remote-tracking branch 'origin/master' into bpu-timing


# a108d429 30-Dec-2021 Jay <[email protected]>

IPrefetch: add prefetch address merge and counter (#1404)

* fix performance counter in ICacheMainpipe

* IPrefetch: add prefetch address merge and counter


# ee175d78 29-Dec-2021 Jay <[email protected]>

IFU: fix fetching RVC instructions from mmio space bug (#1407)

* IFU: fix mmio RVC bug

* IFU: add resend address check for mmio

When a mmio fetch an RVI instruction which cross 64 bits,
IFU

IFU: fix fetching RVC instructions from mmio space bug (#1407)

* IFU: fix mmio RVC bug

* IFU: add resend address check for mmio

When a mmio fetch an RVI instruction which cross 64 bits,
IFU must send paddr + 2.U to fetch the higher 16 bits.
But the paddr + 2.U is not checked by TLB or PMP. This may cause
some unexpected fetch stuck problem.

show more ...


# cb4b23c0 23-Dec-2021 Lingrui98 <[email protected]>

Merge remote-tracking branch 'origin/master' into bpu-timing


# 58dbdfc2 20-Dec-2021 Jay <[email protected]>

ICache: raise AF exception when parity wrong or L2 send corrupt (#1376)

* ICache: raise access fault when L2 send corrupt

* ICache: add ECC error connection

* chores: add comments and code cle

ICache: raise AF exception when parity wrong or L2 send corrupt (#1376)

* ICache: raise access fault when L2 send corrupt

* ICache: add ECC error connection

* chores: add comments and code clean-up

* ICache: raise AF when Meta/Data Parity wrong

* Update Frontend.scala

show more ...


# b37e4b45 16-Dec-2021 Lingrui98 <[email protected]>

ubtb: refactor prediction mechanism(temp commit)


# a1351e5d 16-Dec-2021 Jay <[email protected]>

Fix false hit bug after IFU timing optimization (#1367)

* fix invalidTakenFault use wrong seqTarget

* IFU: fix oversize bug

* ctrl: mark all flushes as level.flush for frontend

This commit

Fix false hit bug after IFU timing optimization (#1367)

* fix invalidTakenFault use wrong seqTarget

* IFU: fix oversize bug

* ctrl: mark all flushes as level.flush for frontend

This commit changes how flushes behave for frontend.

When ROB commits an instruction with a flush, we notify the frontend
of the flush without the commit.

Flushes to frontend may be delayed by some cycles and commit before
flush causes errors. Thus, we make all flush reasons to behave the
same as exceptions for frontend, that is, RedirectLevel.flush.

* IFU: exclude lastTaken situation when judging beyond fetch

Co-authored-by: Yinan Xu <[email protected]>

show more ...


# 64db0884 16-Dec-2021 Lingrui98 <[email protected]>

Merge remote-tracking branch 'origin/change-fallThrough' into ubtb-refactor


# 6ce52296 15-Dec-2021 JinYue <[email protected]>

FetchRequestBundle: signal rename

- target -> nextStartAddr
- nextlineStart = cachelineAlign(startAddr) + 64


# c49b0e7f 14-Dec-2021 Lingrui98 <[email protected]>

Merge remote-tracking branch 'origin/change-fallThrough' into ubtb-refactor


# 34a88126 14-Dec-2021 JinYue <[email protected]>

IFU: delete fallThrough address


# 2a3050c2 14-Dec-2021 Jay <[email protected]>

Optimize IFU and PreDecode timing (#1347)

* ICache: add ReplacePipe for Probe & Release

* remove ProbeUnit

* Probe & Release enter ReplacePipe

* fix bugs when running Linux on MinimalConfi

Optimize IFU and PreDecode timing (#1347)

* ICache: add ReplacePipe for Probe & Release

* remove ProbeUnit

* Probe & Release enter ReplacePipe

* fix bugs when running Linux on MinimalConfig

* TODO: set conflict for ReplacePipe

* ICache: fix ReplacePipe invalid write bug

* chores: code clean up

* IFU: optimize timing

* PreDecode: separate into 2 module for timing optimization

* IBuffer: add enqEnable to replace valid for timing

* IFU/ITLB: optimize timing

* IFU: calculate cut_ptr in f1

* TLB: send req in f1 and wait resp in f2

* ICacheMainPipe: add tlb miss logic in s0

* Optimize IFU timing

* IFU: fix lastHalfRVI bug

* IFU: fix performance bug

* IFU: optimize MMIO commit timing

* IFU: optmize trigger timing and add frontendTrigger

* fix compile error

* IFU: fix mmio stuck bug

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(_)).


# 3e52bed1 08-Dec-2021 Lingrui98 <[email protected]>

bpu: remove stage 3


# c0b2b8e9 08-Dec-2021 rvcoresjw <[email protected]>

update f2_mmio update logic (#1325)


12345678910>>...18