1. 10 7月, 2021 1 次提交
  2. 04 6月, 2021 1 次提交
  3. 19 4月, 2021 1 次提交
    • J
      Refactor parameters, SimTop and difftest (#753) · 2225d46e
      Jiawei Lin 提交于
      * difftest: use DPI-C to refactor difftest
      
      In this commit, difftest is refactored with DPI-C calls.
      There're a few reasons:
      (1) From Verilator's manual, DPI-C calls should be more efficient than accessing from dut_ptr.
      (2) DPI-C is cross-platform (Verilator, VCS, ...)
      (3) difftest APIs are splited from emu.cpp to possibly support more backend platforms
      (NEMU, Spike, ...)
      
      The performance at this commit is quite slower than the original emu.
      Performance issues will be fixed later.
      
      * [WIP] SimTop: try to use 'XSTop' as soc
      
      * CircularQueuePtr: ues F-bounded polymorphis instead implict helper
      
      * Refactor parameters & Clean up code
      
      * difftest: support basic difftest
      
      * Support diffetst in new sim top
      
      * Difftest; convert recode fmt to ieee754 when comparing fp regs
      
      * Difftest: pass sign-ext pc to dpic functions && fix exception pc
      
      * Debug: add int/exc inst wb to debug queue
      
      * Difftest: pass sign-ext pc to dpic functions && fix exception pc
      
      * Difftest: fix naive commit num limit
      Co-authored-by: NYinan Xu <xuyinan1997@gmail.com>
      Co-authored-by: NWilliam Wang <zeweiwang@outlook.com>
      2225d46e
  4. 25 3月, 2021 1 次提交
    • A
      Refactor XSPerf, now we have three XSPerf Functions. · 408a32b7
      Allen 提交于
      XSPerfAccumulate: sum up performance values.
      XSPerfHistogram: count the occurrence of performance values, split them
      into bins, so that we can estimate their distribution.
      XSPerfMax: get max of performance values.
      408a32b7
  5. 10 3月, 2021 1 次提交
  6. 06 3月, 2021 1 次提交
    • S
      IFU: add performance counters (#649) · 56695d82
      Steve Gou 提交于
      * core: enable sc
      
      * sc: calculate sum again on update
      
      * sc: clean ups
      
      * sc: add some debug info
      
      * sc, tage, bim: fix wrbypass logic, add wrbypass for SC
      
      * sc: restrict threshold update conditions and prevent overflow problem
      
      * sc: use seperative thresholds for each bank
      
      * sc: update debug info
      
      * sc: use adaptive threshold algorithm from the original O-GEHL
      
      * tage, bim, sc: optimize wrbypass logic
      
      * sc: initialize threshold to 60
      
      * loop: remove unuseful RegNext on redirect
      
      * ifu: add perf counters
      
      * Perf: Add loopPredictor perf counters
      
      * sc: fix perf logics
      Co-authored-by: Njinyue110 <jinyue161@mails.ucas.ac.cn>
      Co-authored-by: Nzoujr <18870680299@163.com>
      56695d82
  7. 05 3月, 2021 1 次提交
    • S
      BPU: enable TAGE-SC (#646) · 49c07871
      Steve Gou 提交于
      * core: enable sc
      
      * sc: calculate sum again on update
      
      * sc: clean ups
      
      * sc: add some debug info
      
      * sc, tage, bim: fix wrbypass logic, add wrbypass for SC
      
      * sc: restrict threshold update conditions and prevent overflow problem
      
      * sc: use seperative thresholds for each bank
      
      * sc: update debug info
      
      * sc: use adaptive threshold algorithm from the original O-GEHL
      
      * tage, bim, sc: optimize wrbypass logic
      
      * sc: initialize threshold to 60
      
      * loop: remove unuseful RegNext on redirect
      49c07871
  8. 04 3月, 2021 1 次提交
    • J
      Fix uncache (#635) · 377b636c
      Jay 提交于
      * Replacement: change state in way method.
      
      * State change is also needed when miss occurs, otherwise we will choose
      a way that has been just refilled into cache as the victim.
      
      * Optimize ctrlblock timing (#620)
      
      * CtrlBlock: delay exception flush for 1 cycle
      
      * CtrlBlock: delay load replay for 1 cycle
      
      * roq: delay wb from exu for one clock cycle to meet timing
      
      * CtrlBlock: fix pipeline bug between decode and rename
      Co-authored-by: NYinan Xu <xuyinan1997@gmail.com>
      
      * L1plusCache: use plru replacement policy.
      
      * ICache: fix mmio bugs
      
      1. MMIO cut helper uses packet align logic
      2. still send req to uncache when flush
      
      * ICache: change packet from mmio
      
      use packet align as the mem
      
      * IntrUncache: fix state bug
      
      state will change into s_invalid and get stuck
      
      * fix Registers that not being initiated
      377b636c
  9. 03 3月, 2021 1 次提交
  10. 26 2月, 2021 1 次提交
  11. 19 2月, 2021 2 次提交
  12. 17 2月, 2021 4 次提交
  13. 02 2月, 2021 1 次提交
  14. 29 1月, 2021 1 次提交
  15. 24 1月, 2021 1 次提交
  16. 23 1月, 2021 1 次提交
  17. 22 1月, 2021 1 次提交
  18. 20 1月, 2021 2 次提交
  19. 16 1月, 2021 1 次提交
  20. 07 1月, 2021 3 次提交
  21. 06 1月, 2021 1 次提交
  22. 05 1月, 2021 1 次提交
  23. 04 1月, 2021 1 次提交
  24. 30 12月, 2020 1 次提交
  25. 19 12月, 2020 3 次提交
  26. 18 12月, 2020 1 次提交
  27. 15 12月, 2020 2 次提交
  28. 13 12月, 2020 1 次提交
  29. 07 12月, 2020 1 次提交
  30. 03 12月, 2020 1 次提交