Mode:
Duration:
1
Coding works best on desktop or with an external keyboard.
Coding works best on desktop or with an external keyboard.
A simple 2-bit synchronous counter using Chisel.
import chisel3._
class Counter2Bit extends Module {
val io = IO(new Bundle {
val count = Output(UInt(2.W))
})
val cnt = RegInit(0.U(2.W))
cnt := cnt + 1.U
io.count := cnt
}
object Counter2Bit extends App {
chisel3.Driver.execute(args, () => new Counter2Bit)
}Chisel (Constructing Hardware in a Scala Embedded Language) is a hardware description language embedded in Scala. It provides a modern, object-oriented approach to designing digital circuits and generating synthesizable Verilog for FPGAs and ASICs.
Origin & Creator
Developed at UC Berkeley by the Berkeley Architecture Research group to modernize hardware design with high-level programming abstractions, leveraging Scala’s features.
Industrial Note
Essential for hardware architects and FPGA/ASIC designers who want reusable, parameterizable, and maintainable RTL generators, reducing manual Verilog coding and improving design productivity.