09-22-2016 11:50 AM
I am new to using Vivado and am working on a design that will require a FIFO (specifically 2Kx18) and am wondering where to start. I did notice that there are templates for FIFOs but they are very generic and seem to have wider busses than what I require so the questions there would be on how to hook these up. The other option is generating a FIFO through the FIFO generator under the IP catalog. What is the general practice, if there is one?
Thanks in advance,
09-22-2016 01:12 PM
Your two choices are using the FIFO generator or hand instantiating the FIFO36E1. Both are effectively the same thing in terms of resources and functionality.
The FIFO generator is easier to use in a simple project mode - you just launch the IP catalog, configure it, and then it is part of your project.
Hand instantiating the FIFO36E1 is (in some ways) cleaner - the hand instantiation is all you need (there is no IP files, and no targets to generate...) But, since the FIFO36E1 can be configured for a whole bunch of configurations (from 512x72 to 32kx1) it can be a bit confusing to set all the parameters and connect all the inputs correctly...
In the end, it comes down to a personal choice...
09-23-2016 12:07 AM
09-23-2016 04:55 AM
Thanks to both for the replies. If I was to use the generic set up would I just edit the template, for example remove the unwanted bits on the data and address busses, or just keep the template the same and do not use the unwanted bits?