1. 14 1月, 2022 2 次提交
  2. 13 1月, 2022 3 次提交
  3. 09 1月, 2022 2 次提交
  4. 08 1月, 2022 2 次提交
  5. 07 1月, 2022 10 次提交
  6. 06 1月, 2022 1 次提交
  7. 05 1月, 2022 1 次提交
    • L
      Debug mode: various bug fixes (#1412) · d7dd1af1
      Li Qianruo 提交于
      * Reduce trigger hit wires that goes into exceptiongen
      * Fix frontend triggers rewriting hit wire
      * Retrieved some accidentally dropped changes in branch dm-debug (mainly fixes to debug mode)
      * Fix dmode in tdata1
      * Fix ebreaks not causing exception in debug mode
      * Fix dcsr field bugs
      * Fix faulty distributed tEnable
      * Fix store triggers not using vaddr
      * Fix store trigger rewriting hit vector
      * Initialize distributed tdata registers in MemBlock and Frontend to zero
      * Fix load trigger select bit in mcontrol
      * Fix singlestep bit valid in debug mode
      * Mask all interrupts in debug mode
      d7dd1af1
  8. 04 1月, 2022 1 次提交
  9. 01 1月, 2022 4 次提交
  10. 30 12月, 2021 5 次提交
  11. 29 12月, 2021 4 次提交
    • J
      ICache: add parity check enable and prefetch enable control registers (#1406) · ecccf78f
      Jay 提交于
      * Add Prefetch and Parity enable register for ICache
      
      * Add ICache parity enable control for pipe
      ecccf78f
    • J
      IFU: fix fetching RVC instructions from mmio space bug (#1407) · ee175d78
      Jay 提交于
      * 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.
      ee175d78
    • L
      c7f0997b
    • Y
      dispatch: block enq when previous instructions have exception (#1400) · 3a6db8a3
      Yinan Xu 提交于
      This commit adds blocking logic for instructions when they enter
      dispatch queues. If previous instructions have exceptions, any
      following instructions should be enter dispatch queue.
      
      Consider the following case. If uop(0) has an exception and is a load.
      If uop(1) does not have an exception and is a load as well. Then the
      allocation logic in dispatch queue will allocate an entry for both
      uop(0) and uop(1). However, uop(0) will not set enq.valid and leave
      the entry in dispatch queue empty. uop(1) will be allocated in dpq.
      In dispatch queue, pointers are updated according to the real number
      of instruction enqueue, which is one. While the second is actually
      allocated. This causes errors.
      3a6db8a3
  12. 28 12月, 2021 1 次提交
    • W
      mem: refactor l1 error implementation (#1391) · 9ef181f4
      William Wang 提交于
      * dcache: add source info in L1CacheErrorInfo
      
      * ICache: fix valid signal and add source/opType
      
      * dcache: fix bug in ecc error
      
      * mem,csr: send full L1CacheErrorInfo to CSR
      
      * icache: provide cache error info for CSR
      
      * dcache: force resp hit if tag ecc error happens
      
      * mem: reorg l1 cache error report path
      
      Now dcache tag error will force trigger a hit
      
      * dcache: fix readline ecc check error
      
      * dcache: mainpipe will not be influenced by tag error
      
      * dcache: fix data ecc check error
      
      * dcache: if coh state is Nothing, do not raise error
      Co-authored-by: Nzhanglinjuan <zhanglinjuan20s@ict.ac.cn>
      Co-authored-by: NJinYue <jinyue20s@ict.ac.cn>
      9ef181f4
  13. 27 12月, 2021 2 次提交
  14. 26 12月, 2021 2 次提交