Tuesday, November 25, 2025
View ProjectThis digital logic design project features a fully synthesizable Universal Asynchronous Receiver-Transmitter (UART) module written in SystemVerilog. Engineered to serve as a foundational building block for larger System-on-a-Chip (SoC) architectures, this module provides a standard, byte-oriented serial communication interface.
The design strictly adheres to a standard 8-N-1 frame format (1 Start Bit, 8 Data Bits, No Parity, 1 Stop Bit) and features full-duplex communication, allowing for simultaneous data transmission and reception. It is fully parameterized, allowing the baud rate to be dynamically generated from any system clock frequency.
Technical Implementation & Architecture The architecture was developed using a clean, highly modular approach in AMD Vivado, ensuring seamless synthesis for Field-Programmable Gate Arrays (FPGAs), specifically targeting the Digilent Nexys A7-100T.
The top-level wrapper (uart_top.sv) instantiates three distinct core components:
Loopback With basic behavioral simulation successfully verified, the project is currently advancing into professional-grade Design Verification (DV). Future milestones include building a comprehensive verification environment utilizing the Universal Verification Methodology (UVM) to perform constrained-random testing, functional coverage analysis, and scoreboard validation.
Concurrently, the module is being prepared for physical hardware synthesis on the Nexys A7-100T. This phase involves creating a top-level wrapper to interface the UART's I/O ports directly with the board's onboard USB-UART bridge for physical loopback testing via a PC serial terminal.