xilinx core generator

Jul 14, 2008 3 Replies

Hello,



Im new to Xilinx core generator tool and have a very fundamental question. I want to generate a single port RAM with an enable signal for the READ operation and the WRITE operation.



The write operation works fine. For the read operation, I want to see the output only when a read_enable signal is asserted. I used the "ENA pin" but when asserted I dont see the required output. When I choose the option "Always enabled", it works fine and I see the previous output always. But I want the output only when the read_enable signal is asserted.



Can this be done? Thanks for your help.


--Vandana


If your memory is generated with block RAM, the ENA pin is actually common to read and write for the single port RAM. So writing will update the data outputs unless you have specified a RAM with output registers and a separate register enable. Also, the output from the block ram will always update on the cycle after the ENA pin is asserted. If you want asynchronous readout, you need to use distributed memory instead.

Regards, Gabor

Thanks, I realised the ENA pin is common to Read/Write and Reset.

If you use the block RAMs as read-before-write, you will not see the update until read-with-enable (or multiple, sequential write enables.)

For this, you do not need to use CoreGen; you can just instantiate the library directly, and apply the appropriate attributes. See the appropriate Xilinx library document.

JTW

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required