• J
    SoC: insert more buffers into mmio path (#1329) · be340b14
    Jiawei Lin 提交于
    * SoC: add axi4spliter
    
    * pmp: add apply method to reduce loc
    
    * pma: add PMA used in axi4's spliter
    
    * Fix package import
    
    * pma: re-write tl-pma, put tl-pma into AXI4Spliter
    
    * pma: add memory mapped pma
    
    * soc: rm dma port, rm axi4spliter, mv mmpma out of spliter
    
    * csr: clear mstatus.mprv when mstatus.mpp != ModeM at xret
    
    * csr: fix write mask for mstatus, mepc and sepc
    
    This commit fixes the write mask for mstatus, mepc and sepc.
    
    According to the RISC-V instruction manual, for RV64 systems,
    the SXL and UXL fields are WARL fields that control the value of
    XLEN for S-mode and U-mode, respectively. For RV64 systems, if
    S-mode is not supported, then SXL is hardwired to zero. For RV64
    systems, if U-mode is not supported, then UXL is hardwired to zero.
    
    Besides, mepc[0] and sepc[0] should be hardwired to zero.
    
    * wb,load: delay load fp for one cycle
    
    * csr: add mconfigptr, but hardwire to 0 now
    
    * bump huancun
    
    * csr: add *BE to mstatusStruct which are hardwired to 0
    
    * Remove unused files
    
    * csr: fix bug of xret clear mprv
    
    * bump difftest
    
    * ci: add unit test, xret clear mstatus.mprv when xpp is not M
    
    * bump ready-to-run
    
    * mem,atomics: delay exception info for one cycle
    
    * SoC: insert more buffers into mmio path
    
    * SoC: insert buffer between l3_xbar and l3_banked_xbar
    
    * Optimze l3->ddr path
    
    * Bump huancun
    Co-authored-by: NZhangZifei <zhangzifei20z@ict.ac.cn>
    Co-authored-by: NYinan Xu <xuyinan@ict.ac.cn>
    Co-authored-by: Nwangkaifan <wangkaifan@ict.ac.cn>
    be340b14
SoC.scala 9.8 KB