This project implements a 3-bit Mod-6 synchronous counter.
clk
).uo_out[2:0]
. Higher bits (uo_out[7:3]
) are tied to 0.ui_in
and uio_in
are unused in this design.rst_n
is an active-low asynchronous reset. When asserted low, the counter resets to 0 immediately.uio_out
and uio_oe
are tied to 0 since no bidirectional functionality is used.You can test the design using either:
Cocotb simulation:
test_project.py
testbench.uo_out[2:0]
waveform in GTKWave or another waveform viewer.Verilog simulation:
tb.v
testbench.tb.vcd
) for visualization in GTKWave.This project does not require any external hardware. It is purely digital and designed to run on-chip in the Tiny Tapeout framework.
# | Input | Output | Bidirectional |
---|---|---|---|
0 | Counter Bit 0 (LSB) | ||
1 | Counter Bit 1 | ||
2 | Counter Bit 2 (MSB) | ||
3 | |||
4 | |||
5 | |||
6 | |||
7 |