VHDL designers are generally not spoiled with Verification IP (VIP). In fact, if you are using any sort of verification IP at all, then most likely it was developed in-house with the company you are working for. And most likely, such verification IP is a collection of BFM (Bus Functional Model) procedures which lacks any advanced features of a modern verification framework. Continue reading
In this post, I will show you how to:
- Design an ultra-compact FIFO based on SRL32 shift-register LUTs
- Create a wrapper file, adapting the SRL32 FIFO to be used as an AXI4-Stream FIFO
- Import the AXI4-Stream FIFO into the Vivado IP Integrator library Continue reading
For many, advanced verification is synonymous to using SVA (SystemVerilog Assertions) and UVM (Universal Verification Methodology). Unfortunately, simulation tools supporting SVA are very expensive and quite out of reach for most FPGA developers. For developers using VHDL as their design language, it would also mean having to learn yet another language. Fortunately, low-cost VHDL alternatives exist. In fact, they may even be free. Continue reading
Within an FPGA design team, developers may have many ideas on how data should be transferred between IP blocks. IP may be developed in-house, by consultants, by the FPGA vendors, or IP may be purchased from 3rd party vendors. Unfortunately, there is no single standard for interfacing between such IP, and a tremendous amount of time is generally being wasted by developers constantly inventing new interfaces, and by others trying to understand them and adapt to them.
In this article, I will explain the basics of how FPGA IP should be interconnected, and then suggest a standard that may be used by all FPGA designers for most designs. Continue reading