├── .gitignore ├── LICENSE ├── README.md ├── checks.cfg ├── complete.sby ├── complete.sv ├── disasm.py ├── equiv.sh ├── equiv.ys ├── examples ├── .gitignore ├── Makefile ├── blinky.c ├── echo.c ├── hello.c ├── icebreaker.lds └── start.s ├── icicle ├── __init__.py ├── adder.py ├── alu.py ├── boards │ ├── __init__.py │ ├── ecp5_5g_evn.py │ ├── ice40_hx8k_b_evn.py │ └── icebreaker.py ├── branch.py ├── cli.py ├── control.py ├── cpu.py ├── decode.py ├── execute.py ├── fetch.py ├── imm.py ├── loadstore.py ├── logic.py ├── mem.py ├── pcgen.py ├── pipeline.py ├── pipeline_regs.py ├── regs.py ├── riscv.py ├── rvfi.py ├── shift.py ├── soc │ ├── __init__.py │ ├── bram.py │ ├── flash.py │ ├── gpio.py │ ├── ice40_spram.py │ ├── soc.py │ └── uart.py ├── test │ ├── __init__.py │ ├── test_adder.py │ ├── test_alu.py │ ├── test_branch.py │ ├── test_control.py │ ├── test_decode.py │ ├── test_imm.py │ ├── test_loadstore.py │ ├── test_logic.py │ ├── test_pcgen.py │ ├── test_pipeline.py │ ├── test_regs.py │ ├── test_shift.py │ ├── test_wdata.py │ └── test_writeback.py ├── wdata.py └── writeback.py ├── rvfi_wrapper.sv ├── setup.cfg └── setup.py /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/README.md -------------------------------------------------------------------------------- /checks.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/checks.cfg -------------------------------------------------------------------------------- /complete.sby: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/complete.sby -------------------------------------------------------------------------------- /complete.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/complete.sv -------------------------------------------------------------------------------- /disasm.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/disasm.py -------------------------------------------------------------------------------- /equiv.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/equiv.sh -------------------------------------------------------------------------------- /equiv.ys: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/equiv.ys -------------------------------------------------------------------------------- /examples/.gitignore: -------------------------------------------------------------------------------- 1 | /blinky 2 | /echo 3 | /hello 4 | -------------------------------------------------------------------------------- /examples/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/examples/Makefile -------------------------------------------------------------------------------- /examples/blinky.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/examples/blinky.c -------------------------------------------------------------------------------- /examples/echo.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/examples/echo.c -------------------------------------------------------------------------------- /examples/hello.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/examples/hello.c -------------------------------------------------------------------------------- /examples/icebreaker.lds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/examples/icebreaker.lds -------------------------------------------------------------------------------- /examples/start.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/examples/start.s -------------------------------------------------------------------------------- /icicle/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icicle/adder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/adder.py -------------------------------------------------------------------------------- /icicle/alu.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/alu.py -------------------------------------------------------------------------------- /icicle/boards/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icicle/boards/ecp5_5g_evn.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/boards/ecp5_5g_evn.py -------------------------------------------------------------------------------- /icicle/boards/ice40_hx8k_b_evn.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/boards/ice40_hx8k_b_evn.py -------------------------------------------------------------------------------- /icicle/boards/icebreaker.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/boards/icebreaker.py -------------------------------------------------------------------------------- /icicle/branch.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/branch.py -------------------------------------------------------------------------------- /icicle/cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/cli.py -------------------------------------------------------------------------------- /icicle/control.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/control.py -------------------------------------------------------------------------------- /icicle/cpu.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/cpu.py -------------------------------------------------------------------------------- /icicle/decode.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/decode.py -------------------------------------------------------------------------------- /icicle/execute.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/execute.py -------------------------------------------------------------------------------- /icicle/fetch.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/fetch.py -------------------------------------------------------------------------------- /icicle/imm.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/imm.py -------------------------------------------------------------------------------- /icicle/loadstore.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/loadstore.py -------------------------------------------------------------------------------- /icicle/logic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/logic.py -------------------------------------------------------------------------------- /icicle/mem.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/mem.py -------------------------------------------------------------------------------- /icicle/pcgen.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/pcgen.py -------------------------------------------------------------------------------- /icicle/pipeline.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/pipeline.py -------------------------------------------------------------------------------- /icicle/pipeline_regs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/pipeline_regs.py -------------------------------------------------------------------------------- /icicle/regs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/regs.py -------------------------------------------------------------------------------- /icicle/riscv.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/riscv.py -------------------------------------------------------------------------------- /icicle/rvfi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/rvfi.py -------------------------------------------------------------------------------- /icicle/shift.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/shift.py -------------------------------------------------------------------------------- /icicle/soc/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icicle/soc/bram.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/soc/bram.py -------------------------------------------------------------------------------- /icicle/soc/flash.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/soc/flash.py -------------------------------------------------------------------------------- /icicle/soc/gpio.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/soc/gpio.py -------------------------------------------------------------------------------- /icicle/soc/ice40_spram.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/soc/ice40_spram.py -------------------------------------------------------------------------------- /icicle/soc/soc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/soc/soc.py -------------------------------------------------------------------------------- /icicle/soc/uart.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/soc/uart.py -------------------------------------------------------------------------------- /icicle/test/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icicle/test/test_adder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_adder.py -------------------------------------------------------------------------------- /icicle/test/test_alu.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_alu.py -------------------------------------------------------------------------------- /icicle/test/test_branch.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_branch.py -------------------------------------------------------------------------------- /icicle/test/test_control.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_control.py -------------------------------------------------------------------------------- /icicle/test/test_decode.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_decode.py -------------------------------------------------------------------------------- /icicle/test/test_imm.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_imm.py -------------------------------------------------------------------------------- /icicle/test/test_loadstore.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_loadstore.py -------------------------------------------------------------------------------- /icicle/test/test_logic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_logic.py -------------------------------------------------------------------------------- /icicle/test/test_pcgen.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_pcgen.py -------------------------------------------------------------------------------- /icicle/test/test_pipeline.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_pipeline.py -------------------------------------------------------------------------------- /icicle/test/test_regs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_regs.py -------------------------------------------------------------------------------- /icicle/test/test_shift.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_shift.py -------------------------------------------------------------------------------- /icicle/test/test_wdata.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_wdata.py -------------------------------------------------------------------------------- /icicle/test/test_writeback.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/test/test_writeback.py -------------------------------------------------------------------------------- /icicle/wdata.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/wdata.py -------------------------------------------------------------------------------- /icicle/writeback.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/icicle/writeback.py -------------------------------------------------------------------------------- /rvfi_wrapper.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/rvfi_wrapper.sv -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/setup.cfg -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/grahamedgecombe/icicle/HEAD/setup.py --------------------------------------------------------------------------------