chisel-book
Digital Design with Chisel
File Explorer
Download Latest Version (.zip)- test.yml
- package.scala
- ChiselScalatestTester.scala
- DecoupledDriver.scala
- package.scala
- README.md
- Logic.scala
- LogicHardware.scala
- LogicTester.scala
- Register.scala
- RegisterTester.scala
- build.sbt
- alu.graffle
- alu.pdf
- arbiter-box.graffle
- arbiter-box.pdf
- arbiter.graffle
- arbiter.pdf
- bus-on-chip.graffle
- bus-on-chip.pdf
- bus.graffle
- bus.pdf
- bus_ack.tex
- bus_pipe_ack.tex
- cc_by_sa.pdf
- comparator.graffle
- comparator.pdf
- components-adder.graffle
- components-adder.pdf
- components-counter.graffle
- components-counter.pdf
- components-register.graffle
- components-register.pdf
- components.graffle
- components.pdf
- counter.graffle
- counter.pdf
- debounce.graffle
- debounce.pdf
- decoder.graffle
- decoder.pdf
- encoder.graffle
- encoder.pdf
- event-counter.graffle
- event-counter.pdf
- fifo.graffle
- fifo.pdf
- flasher.graffle
- flasher.pdf
- flasher2.graffle
- flasher2.pdf
- flow.graffle
- flow.pdf
- fsm-rising.graffle
- fsm-rising.pdf
- fsm.graffle
- fsm.pdf
- leros-datapath.graffle
- leros-datapath.pdf
- lipsi.pdf
- logic.graffle
- logic.pdf
- majority.graffle
- majority.pdf
- Makefile
- mealy.graffle
- mealy.pdf
- memory-forwarding.graffle
- memory-forwarding.pdf
- memory.graffle
- memory.pdf
- mux-chain.graffle
- mux-chain.pdf
- mux.graffle
- mux.pdf
- popcnt-data.graffle
- popcnt-data.pdf
- popcnt-fsmd.graffle
- popcnt-fsmd.pdf
- popcnt-states.graffle
- popcnt-states.pdf
- priority-encoder.graffle
- priority-encoder.pdf
- pwm.graffle
- pwm.pdf
- ready_valid1.tex
- ready_valid2.tex
- ready_valid3.tex
- readyvalid.graffle
- readyvalid.pdf
- reg_en_wave.tex
- reg_wave.tex
- register-enable.graffle
- register-enable.pdf
- register-reset-0.graffle
- register-reset-0.pdf
- register-reset.graffle
- register-reset.pdf
- register.graffle
- register.pdf
- rising.tex
- shiftreg-paraload.graffle
- shiftreg-paraload.pdf
- shiftreg-paraout.graffle
- shiftreg-paraout.pdf
- shiftregister.graffle
- shiftregister.pdf
- state-diag-mealy.graffle
- state-diag-mealy.pdf
- state-diag-moore.graffle
- state-diag-moore.pdf
- state-diag-rising-moore.graffle
- state-diag-rising-moore.pdf
- synchronizer.graffle
- synchronizer.pdf
- tick_count_wave.tex
- tick_wave.tex
- timer.graffle
- timer.pdf
- uart_wave.tex
- vec-mux.graffle
- vec-mux.pdf
- vec-reg.graffle
- vec-reg.pdf
- wildcat.graffle
- wildcat.pdf
- wishbone.tex
- wishbone_sync.tex
- checkref.scala
- gencode.scala
- keywords.scala
- chisel.tex
- slides_common.tex
- 01_intro.tex
- 02_basic.tex
- 03_sequential.tex
- 04_testing.tex
- 04a_verilog.tex
- 06_fsm.tex
- 07_fsmd.tex
- 08_refactor.tex
- 09_commfsm.tex
- 10_vending.tex
- 11_interface.tex
- 12_exam.tex
- 12_verfy.tex
- 13_outro.tex
- binary-watch.jpg
- CandiesVendingMachine1952.jpg
- course_www.md
- doslides.sh
- dowww.sh
- forms2020.png
- gen.sc
- README.md
- xx_unused.tex
- AdaptiveOFLOCA.drawio
- AdaptiveOFLOCA.pdf
- AdaptiveRadix2Multiplier.drawio
- AdaptiveRadix2Multiplier.pdf
- ALUMRRG2.drawio
- ALUMRRG2.pdf
- AxC_energy_50p.drawio
- AxC_energy_50p.pdf
- CGRA.drawio
- CGRA.pdf
- cgra_adl.drawio
- cgra_adl.pdf
- CGRAgen_flow_red.drawio
- CGRAgen_flow_red.pdf
- DFG_powers.pdf
- diverse_clean.drawio
- diverse_clean.pdf
- diverse_prohibited.drawio
- diverse_prohibited.pdf
- diverse_reconf.drawio
- diverse_reconf.pdf
- functional_first.drawio
- functional_first.pdf
- Handshaking.drawio
- Handshaking.pdf
- hist_aofloca.pdf
- hist_axppa.pdf
- hist_gear.pdf
- hist_lsesa1.pdf
- HWGen.drawio
- HWGen.pdf
- immutability_rules.drawio
- immutability_rules.pdf
- Inexact_arith.pdf
- Inexact_arith_binary.drawio
- media.drawio
- media.pdf
- neural-network.drawio
- neural-network.pdf
- package_scala.drawio
- package_scala.pdf
- PE_ADRES_v3.drawio
- PE_ADRES_v3.pdf
- PE_CMA_v2.drawio
- PE_CMA_v2.pdf
- PE_HyCUBE_v3.drawio
- PE_HyCUBE_v3.pdf
- PE_RF-CGRA_v2.drawio
- PE_RF-CGRA_v2.pdf
- port_maps.drawio
- port_maps.pdf
- port_record.drawio
- port_record.pdf
- Predication.drawio
- Predication.pdf
- prio-list.drawio
- prio-list.png
- RegMRRG1.drawio
- RegMRRG1.pdf
- RegMRRG2.drawio
- RegMRRG2.pdf
- signal.drawio
- signal.pdf
- systolic node.png
- 00_prepare.tex
- 01_scala.tex
- 02_chisel.tex
- 03_simp_gen.tex
- 05_generators.tex
- 06_testing_and_ci.tex
- 07_co_sim.tex
- 08_formal.tex
- 10_mixed.tex
- 11_chisel_in_rsch.tex
- agile_hw.tex
- Makefile
- chisel-10min.tex
- chisel-30min.tex
- features.tex
- generation.tex
- JavaBCD.png
- lipsi.jpg
- Makefile
- program.tex
- slides-link.png
- template.tex
- unit1.tex
- unit2.tex
- unit3.tex
- unit4.tex
- init.hex
- PathBlackBoxAdder.v
- ResourceBlackBoxAdder.v
- fifo.scala
- shared.scala
- util.scala
- AluAccu.scala
- DataMem.scala
- Decode.scala
- InstrMem.scala
- Leros.scala
- LerosBase.scala
- pack.scala
- PipeCon.scala
- uart.scala
- basic.scala
- connections.scala
- Csr.scala
- Functions.scala
- InstructionROM.scala
- ScratchPadMem.scala
- StandardFive.scala
- SynthTopFmax.scala
- ThreeCats.scala
- Wildcat.scala
- WildFour.scala
- defines.scala
- Util.scala
- Adders.scala
- arbiter.scala
- ArbiterTree.scala
- ArbiterTreeExperiements.scala
- Assert.scala
- BcdTable.scala
- BlackBoxes.scala
- BubbleFifo.scala
- BundleVec.scala
- ClockDomains.scala
- Combinational.scala
- Comparator.scala
- components.scala
- Config.scala
- Convert.scala
- CountBool.scala
- Counter.scala
- Debounce.scala
- drawing.scala
- EncDec.scala
- FileReader.scala
- Flasher.scala
- formal.scala
- functional.scala
- GenHardware.scala
- Hello.scala
- HelloScala.scala
- interconnect.scala
- Logic.scala
- memory.scala
- MultiClockMemory.scala
- NocRouter.scala
- ParamAdder.scala
- ParamFunc.scala
- play.sc
- PopulationCount.scala
- PrintfCnt.scala
- Pwm.scala
- ReadyValidBuffer.scala
- RegisterFile.scala
- Registers.scala
- RisingFsm.scala
- RisingMooreFsm.scala
- ScalaGen.scala
- Sequential.scala
- ShiftRegister.scala
- SimpleFsm.scala
- SimpleScala.scala
- Snippets.scala
- SyncReset.scala
- Ticker.scala
- Timer.scala
- UIntVsU.scala
- usepack.scala
- basic.vhdl
- Makefile
- FifoTest.scala
- AluAccuTest.scala
- BasicTest.scala
- AddersTest.scala
- ArbiterTest.scala
- ArbiterTreeTest.scala
- AssertTest.scala
- BcdTableTest.scala
- BlackBoxesTest.scala
- BoringTest.scala
- BubbleFifoTest.scala
- BundleVecTest.scala
- ClockDomainsTest.scala
- CombinationalTest.scala
- ComparatorTest.scala
- ComponentTest.scala
- ConvertTest.scala
- CountBoolTest.scala
- CounterDeviceTest.scala
- CounterTest.scala
- DebounceTest.scala
- DrawingTest.scala
- EncDecTest.scala
- ExampleTest.scala
- FileReaderTest.scala
- FlasherTest.scala
- FormalTest.scala
- FsmTest.scala
- FunctionalMinTester.scala
- FunctionalTest.scala
- GenHardwareTest.scala
- InterconnectTest.scala
- LogicTest.scala
- MemoryTest.scala
- MultiClockMemoryTester.scala
- ParamFuncTest.scala
- ParamRouterTest.scala
- PopulationCountTest.scala
- PrintfCntTest.scala
- PwmTest.scala
- ReadyValidBufferTest.scala
- RegisterFileTest.scala
- RegisterTest.scala
- ScalaGenTest.scala
- SequentialTest.scala
- ShiftRegisterTest.scala
- Snippets.scala
- SyncResetTest.scala
- TagTest.scala
- testing.scala
- TickerTest.scala
- TimerTest.scala
- WaveformTest.scala
- arc2019.tex
- date2019.tex
- date2020.tex
- date2021.tex
- date2023.tex
- esweek2019.tex
- esweek2020.tex
- esweek2021.tex
- esweek2023.tex
- fpga2023.tex
- fpl2018.tex
- fpl2019.tex
- fpl2020.tex
- fpl2021.tex
- fpl2026.md
- build.sbt
- chisel-book.tex
- chisel-cover.pdf
- chisel.bib
- cover-small-chinese.jpg
- cover-small-jp.jpg
- cover-small-vi.jpg
- cover-small.jpg
- data.txt
- Makefile
- README.md
- writing.jpg
# Installation Guide
1. Get the code
git clone https://github.com/schoeberl/chisel-book
Downloads the entire project code from GitHub to your computer.
cd chisel-book
Moves into the project folder you just downloaded.
2. Make
Medium RecommendedPrerequisites
- Git Needed to download the project code from GitHub.
- Make Usually pre-installed on Linux/macOS. On Windows, install separately (e.g. via MSYS2 or WSL).
make
Compiles the code based on the generated build configuration to produce an executable.
If it finishes without errors, it worked. Try running the generated executable directly.
Pulled directly from this repo's README.
// repository documentation
Was this content helpful?
(0 ratings)
