├── .gitignore ├── .sv.style ├── LICENSE ├── Makefile ├── README.md ├── docs ├── imgs │ ├── SoC.png │ ├── nagi.jpeg │ ├── nagicore-5-stages.drawio.png │ └── nagicore-dual.dual.drawio.png └── nagicore.drawio ├── nscscc ├── async.v ├── ram_wrapper.v ├── thinpad_top.v └── uart_wrapper.sv └── src └── main ├── resources └── sv │ ├── DPIC_PERF_BRU.sv │ ├── DPIC_PERF_BUFF.sv │ ├── DPIC_PERF_CACHE.sv │ ├── DPIC_PERF_PIPE.sv │ ├── DPIC_RAM_1CYC.sv │ ├── DPIC_RAM_2CYC.sv │ ├── DPIC_TRACE_MEM.sv │ ├── DPIC_TYPES_DEFINE.sv │ ├── DPIC_UPDATE_GPR.sv │ ├── DPIC_UPDATE_GPR2.sv │ ├── DPIC_UPDATE_PC.sv │ ├── DPIC_UPDATE_PC2.sv │ └── axi_cdc │ ├── axi_cdc.v │ ├── axi_cdc_rd.v │ └── axi_cdc_wr.v └── scala └── nagicore ├── Main.scala ├── bus ├── AXI4.scala └── RAM.scala ├── loongarch ├── ISA.scala ├── nscscc2024 │ ├── Config.scala │ ├── Core.scala │ ├── CtrlFlags.scala │ ├── Decoder.scala │ └── stages │ │ ├── EX.scala │ │ ├── ID.scala │ │ ├── IF.scala │ │ ├── MEM.scala │ │ └── PREIF.scala └── nscscc2024Dual │ ├── Config.scala │ ├── Core.scala │ ├── CtrlFlags.scala │ ├── Decoder.scala │ └── stages │ ├── EX.scala │ ├── ID.scala │ ├── IF.scala │ ├── IS.scala │ ├── MEM.scala │ └── PREIF.scala ├── unit ├── ALU.scala ├── BPU.scala ├── BRU.scala ├── DIVU.scala ├── DPIC.scala ├── GPR.scala ├── InstrsBuff.scala ├── MIAU.scala ├── MULU.scala ├── RingBuff.scala ├── cache │ ├── Cache.scala │ ├── CacheMini.scala │ ├── CachePiped.scala │ ├── CacheType.scala │ ├── CacheWT.scala │ └── UnCache.scala └── ip │ └── Xiangshan │ ├── ArrayMulDataModule.scala │ └── CSA.scala └── utils ├── Flags.scala └── utils.scala /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/.gitignore -------------------------------------------------------------------------------- /.sv.style: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/.sv.style -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/README.md -------------------------------------------------------------------------------- /docs/imgs/SoC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/docs/imgs/SoC.png -------------------------------------------------------------------------------- /docs/imgs/nagi.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/docs/imgs/nagi.jpeg -------------------------------------------------------------------------------- /docs/imgs/nagicore-5-stages.drawio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/docs/imgs/nagicore-5-stages.drawio.png -------------------------------------------------------------------------------- /docs/imgs/nagicore-dual.dual.drawio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/docs/imgs/nagicore-dual.dual.drawio.png -------------------------------------------------------------------------------- /docs/nagicore.drawio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/docs/nagicore.drawio -------------------------------------------------------------------------------- /nscscc/async.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/nscscc/async.v -------------------------------------------------------------------------------- /nscscc/ram_wrapper.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/nscscc/ram_wrapper.v -------------------------------------------------------------------------------- /nscscc/thinpad_top.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/nscscc/thinpad_top.v -------------------------------------------------------------------------------- /nscscc/uart_wrapper.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/nscscc/uart_wrapper.sv -------------------------------------------------------------------------------- /src/main/resources/sv/DPIC_PERF_BRU.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/DPIC_PERF_BRU.sv -------------------------------------------------------------------------------- /src/main/resources/sv/DPIC_PERF_BUFF.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/DPIC_PERF_BUFF.sv -------------------------------------------------------------------------------- /src/main/resources/sv/DPIC_PERF_CACHE.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/DPIC_PERF_CACHE.sv -------------------------------------------------------------------------------- /src/main/resources/sv/DPIC_PERF_PIPE.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/DPIC_PERF_PIPE.sv -------------------------------------------------------------------------------- /src/main/resources/sv/DPIC_RAM_1CYC.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/DPIC_RAM_1CYC.sv -------------------------------------------------------------------------------- /src/main/resources/sv/DPIC_RAM_2CYC.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/DPIC_RAM_2CYC.sv -------------------------------------------------------------------------------- /src/main/resources/sv/DPIC_TRACE_MEM.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/DPIC_TRACE_MEM.sv -------------------------------------------------------------------------------- /src/main/resources/sv/DPIC_TYPES_DEFINE.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/DPIC_TYPES_DEFINE.sv -------------------------------------------------------------------------------- /src/main/resources/sv/DPIC_UPDATE_GPR.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/DPIC_UPDATE_GPR.sv -------------------------------------------------------------------------------- /src/main/resources/sv/DPIC_UPDATE_GPR2.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/DPIC_UPDATE_GPR2.sv -------------------------------------------------------------------------------- /src/main/resources/sv/DPIC_UPDATE_PC.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/DPIC_UPDATE_PC.sv -------------------------------------------------------------------------------- /src/main/resources/sv/DPIC_UPDATE_PC2.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/DPIC_UPDATE_PC2.sv -------------------------------------------------------------------------------- /src/main/resources/sv/axi_cdc/axi_cdc.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/axi_cdc/axi_cdc.v -------------------------------------------------------------------------------- /src/main/resources/sv/axi_cdc/axi_cdc_rd.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/axi_cdc/axi_cdc_rd.v -------------------------------------------------------------------------------- /src/main/resources/sv/axi_cdc/axi_cdc_wr.v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/resources/sv/axi_cdc/axi_cdc_wr.v -------------------------------------------------------------------------------- /src/main/scala/nagicore/Main.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/Main.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/bus/AXI4.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/bus/AXI4.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/bus/RAM.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/bus/RAM.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/ISA.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/ISA.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024/Config.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024/Config.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024/Core.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024/Core.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024/CtrlFlags.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024/CtrlFlags.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024/Decoder.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024/Decoder.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024/stages/EX.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024/stages/EX.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024/stages/ID.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024/stages/ID.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024/stages/IF.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024/stages/IF.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024/stages/MEM.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024/stages/MEM.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024/stages/PREIF.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024/stages/PREIF.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024Dual/Config.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024Dual/Config.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024Dual/Core.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024Dual/Core.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024Dual/CtrlFlags.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024Dual/CtrlFlags.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024Dual/Decoder.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024Dual/Decoder.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024Dual/stages/EX.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024Dual/stages/EX.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024Dual/stages/ID.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024Dual/stages/ID.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024Dual/stages/IF.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024Dual/stages/IF.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024Dual/stages/IS.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024Dual/stages/IS.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024Dual/stages/MEM.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024Dual/stages/MEM.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/loongarch/nscscc2024Dual/stages/PREIF.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/loongarch/nscscc2024Dual/stages/PREIF.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/ALU.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/ALU.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/BPU.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/BPU.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/BRU.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/BRU.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/DIVU.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/DIVU.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/DPIC.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/DPIC.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/GPR.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/GPR.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/InstrsBuff.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/InstrsBuff.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/MIAU.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/MIAU.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/MULU.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/MULU.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/RingBuff.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/RingBuff.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/cache/Cache.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/cache/Cache.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/cache/CacheMini.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/cache/CacheMini.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/cache/CachePiped.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/cache/CachePiped.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/cache/CacheType.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/cache/CacheType.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/cache/CacheWT.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/cache/CacheWT.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/cache/UnCache.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/cache/UnCache.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/ip/Xiangshan/ArrayMulDataModule.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/ip/Xiangshan/ArrayMulDataModule.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/unit/ip/Xiangshan/CSA.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/unit/ip/Xiangshan/CSA.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/utils/Flags.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/utils/Flags.scala -------------------------------------------------------------------------------- /src/main/scala/nagicore/utils/utils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrAMS/NagiCore/HEAD/src/main/scala/nagicore/utils/utils.scala --------------------------------------------------------------------------------