
SIRI UART SOC is a simple UART receiver System-on-Chip designed in Verilog for Tiny Tapeout.
The design receives serial UART data through the input pin and converts it into parallel data output. After successful reception of data bits, a done signal is generated.
The UART receiver continuously samples serial data from ui_in[0].
Each clock cycle:
uio_out[0].The received data appears on uo_out[6:0].
| Pin | Description |
|---|---|
ui_in[0] |
UART RX Serial Input |
clk |
System Clock |
rst_n |
Active Low Reset |
| Pin | Description |
|---|---|
uo_out[6:0] |
Received UART Data |
uo_out[7] |
Unused |
uio_out[0] |
Data Ready / Done Signal |
When rst_n = 0:
Apply reset:
rst_n = 0rst_n = 1Send serial data through ui_in[0]
After 7 received bits:
uo_out[6:0]uio_out[0] goes HIGH for one clock cycleThe project includes a Verilog testbench located in the test directory.
Simulation verifies:
This project is designed for the Tiny Tapeout open-source ASIC flow.
More information:
| # | Input | Output | Bidirectional |
|---|---|---|---|
| 0 | data_in_0 | verified | |
| 1 | data_in_1 | status_led | |
| 2 | data_in_2 | ||
| 3 | data_in_3 | ||
| 4 | signature_bit_0 | ||
| 5 | signature_bit_1 | ||
| 6 | signature_bit_2 | ||
| 7 | signature_bit_3 |