Design and implementation of a High efficiency UART model using VHDL and PicoBlaze on Xilinx FPGA platforms
الكلمات المفتاحية:
VHDL، PicoBlaze، UART، Embedded Systems، Xilinx، FPGAالملخص
Digital design using the Hardware Description Language (VHDL) is a fundamental approach in developing embedded systems, as it enables the construction of highly efficient circuits that can be implemented on FPGA platforms. The importance of this research lies in exploring the integration between the PicoBlaze processor and Xilinx software for designing a high-efficiency UART unit, thereby enhancing data transmission performance while minimizing resource utilization in modern digital systems.
The research problem stems from the limited applied studies that address the effective integration of the PicoBlaze architecture with VHDL-based UART units, particularly in terms of achieving efficient data processing and transmission with low resource consumption. This gap highlights the need for a practical model that demonstrates the feasibility of such integration.
In this study, the methodology involved designing a UART unit using VHDL and integrating it with the PicoBlaze processor through the Xilinx ISE environment. The main objective was to perform an addition operation on the digits of the student’s identification number (SID) and transmit the result via UART in hexadecimal format, thereby validating the efficiency of hardware–software co-design.
The results confirmed the successful implementation, as the seven digits were correctly summed and the output transmitted through UART. Simulation outcomes further demonstrated functional accuracy and efficient resource utilization. The study concludes that combining PicoBlaze with VHDL provides a high-efficiency framework for signal processing and embedded system control, with potential for future extensions such as multi-channel support and flow control enhancements.
المراجع
1. Hardware UART core (VHDL) that implements precise baud generation, oversampled receiver (configurable oversample rate), start/stop/parity support, and optional digital filtering (programmable running-sum or majority voting).[20].
2. Asynchronous TX and RX FIFOs (depth sized for worst-case PicoBlaze latency and expected bursts). Use block RAM or distributed RAM depending on size and device family to save LUTs.
3. Flow control and DMA-style bursting: Add simple hardware signals to notify PicoBlaze of FIFO fill levels and allow block transfers (PicoBlaze reads/writes bursts from the FIFO via port-mapped IO).
4. PicoBlaze firmware for higher-level parsing, protocol handling, error recovery, and optional command interface (console). Keep timing-critical tasks in hardware to avoid dropped bytes. Use PicoBlaze UART macros if suitable. [20].
5. Verification: Build testbench with variable jitter/noise models, exercise multiple baud rates and channel error injection. Target both functional and timing closure in the chosen Xilinx toolchain (Vivado for modern FPGAs). [20].
References
[1] Albahit Journal of Applied Sciences. (2025). Design and implementation of a high efficiency UART model using VHDL and PicoBlaze on Xilinx FPGA platforms. Albahit Journal of Applied Sciences, 5(1), 1–11.
[2] Ashenden, P. J. (2002). The designer’s guide to VHDL (2nd ed.). Morgan Kaufmann Publishers.
[3] Brown, S., & Vranesic, Z. (2004). Fundamentals of digital logic with VHDL design (2nd ed.). McGraw-Hill.
[4] Clemente, J. A. (2014). Introduction to VHDL programming (M. Sánchez-Élez, Trans.). Retrieved November 13, 2014.
[5] GCC. (n.d.). GNU Compiler Collection (GCC). http://gcc.gnu.org
[6] GHDL. (n.d.). Open-source VHDL simulator GHDL. http://ghdl.free.fr
[7] Mano, M. M., & Kime, C. (2000). Logic and computer design fundamentals. Prentice Hall.
[8] Perry, D. (1998). VHDL (3rd ed.). McGraw-Hill.
[9] PicoBlaze UART & KCPSM6 User Guide/Macros. (n.d.). UART macros and PicoBlaze integration notes. Retrieved from viterbi-web.usc.edu, eng.auburn.edu
[10] Qualis Design Corporation. (n.d.). VHDL reference cards. http://www.vhdl.org/rassp/vhdl/guidelines/vhdlqrc.pdf
[11] Qualis Design Corporation. (n.d.). 1164 VHDL reference guidelines. http://www.vhdl.org/rassp/vhdl/guidelines/1164qrc.pdf
[12] ResearchGate. (n.d.). Academic articles on efficient UART architectures. Retrieved from https://www.researchgate.net
[13] Roth, C. H. (1997). Digital systems design using VHDL. ITP Nelson.
[14] Skahill, K. (1996). VHDL for programmable logic. Addison Wesley.
[15] Wikipedia. (n.d.). VHDL. In Wikipedia. http://en.wikipedia.org/wiki/VHDL
[16] Xilinx. (n.d.). ISE Design Suite. http://www.xilinx.com/tools/designtools.htm
Yalamanchili, S