FPGA makes simple FIFO

Posted on Apr 15, 2012

The circuit in Figure 1 is an FPGA-based, synchronous FIFO that uses the same clock for read and write operations. The circuit can generate FIFO-occupancy flags with a minimum of logic. The boxed area in Figure 1 shows a more conventional occupancy meter. The circuit is implemented in a demultiplexer that writes data in the FIFO when the data arrives and reads data according to FIFO occupancy. The circuit uses a Xilinx Spartan (XC4000 equivalent) FPGA. The method uses three main blocks: a 16-bit dual-port RAM macro, read- and write-address counters, and the flag processor.

In this design, the FIFO is 4 bits deep but can be as great as 16 bits deep using the RAM16X1D macro. Read and write counters can take the form of any cyclic counter, a conventional binary counter, a Gray-code counter, or a linear-feedback shift register.

Leave Comment

characters left:

New Circuits



Popular Circuits

Serial Programmer for AVR microprocessors
76MHz to 119MHz Fm transmitter
Low-Battery Indicator
ne555 police siren circuit
24hr clock using logic ics
High Resolution Digital Weigh-scale Design Using Z8 Encore! ?® Microcontrollers
Make a singing MSP430 microcontroller
Gag Circuits
Small Stepper Motor
F007 stable sine wave oscillator circuit diagram
Four output configuration output 5V LM2641 3A 3.3V 4A 12V 0.3A and 5V 0.025A