Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
Announcements
Need Forum Guidance? Click here

Search our FPGA Knowledge Articles here.
19319 Discussions

Register vs Memory FPGA Cyclone V

Altera_Forum
Honored Contributor II
1,173 Views

Hi all,  

I am still confusing between the registers (Array) and memory(Megafunction Altera Memory). What is the differences between them? Why are they different (I thought they are same)?
0 Kudos
3 Replies
Altera_Forum
Honored Contributor II
265 Views

A register is single bit storage. It's part of the ALMs (adaptive logic modules) that make up the fabric of the FPGA. Carry chains between adjacent ALMs allow for the easy construction of shift registers. Registers use standard register control signals: synchronous or asynchronous reset, clock enable, etc. 

 

Memory blocks are 2 dimensional storage arrays. They are addressable. They can be set up as single or dual port RAMs. 

 

You can certainly set up registers as a memory array. However, using the dedicated memory blocks is more resource efficient and provides more memory specific options that can give you better performance. 

 

I'd recommend reading the appropriate sections of the device handbook for the device you are targeting that discusses these resources to get more details. 

 

https://www.altera.com/content/dam/altera-www/global/en_us/pdfs/literature/hb/cyclone-v/cv_5v2.pdf
Altera_Forum
Honored Contributor II
265 Views

 

--- Quote Start ---  

A register is single bit storage. It's part of the ALMs (adaptive logic modules) that make up the fabric of the FPGA. Carry chains between adjacent ALMs allow for the easy construction of shift registers. Registers use standard register control signals: synchronous or asynchronous reset, clock enable, etc. 

 

Memory blocks are 2 dimensional storage arrays. They are addressable. They can be set up as single or dual port RAMs. 

 

You can certainly set up registers as a memory array. However, using the dedicated memory blocks is more resource efficient and provides more memory specific options that can give you better performance. 

 

I'd recommend reading the appropriate sections of the device handbook for the device you are targeting that discusses these resources to get more details. 

 

https://www.altera.com/content/dam/altera-www/global/en_us/pdfs/literature/hb/cyclone-v/cv_5v2.pdf 

--- Quote End ---  

 

 

How about's built memory? Is 2-Port RAM is built memory of Cyclone V? Between SDRAM and 2-Port RAM, which is better?
Altera_Forum
Honored Contributor II
265 Views

The memory blocks are dedicated resources in the FPGA fabric. External SDRAM has much higher memory capacity, but requires you to set up a controller and interface. Again, check the device handbook and the external memory interface handbook for details: 

 

https://www.altera.com/support/literature/lit-external-memory-interface.html
Reply