Proper way to add/initialize RAM in FPGA project?
Hi all,
I'm trying to figure out the proper way to add memory to an ARM Cortex processor project.
The goal here is to be able to toss in a few NOP instructions into memory, have the Cortex run those commands, and track the logic to make sure everything is working as it should be. I've tried to look up some manuals/tutorials but they're either very vague or seem to be outdated.
What I've done so far is access the IP catalog, create a .qip for a SDRAM controller, and added that to my project. The issue is that the project no longer fits into my DE10 Lite which makes sense as I just barely had enough pins for the processor itself and now the RAM module asks for dozens more.
Basically, I'd like to know if this is the best and/or only way to use the built-in FPGA ram or if there's any alternatives I can look at. I have the option of trying to further trim non-essential signals from the processor but want to know if there are other options before going that route.
Thanks in advance for any help/advice!
P.S. I'm a student still so please forgive any ignorance.
Yes, an IP block that instantiates the ALTSYNCRAM single port RAM module should work.
This will build an INTERNAL FPGA memory using the device block RAM.
You can initialize it with a .mif file when you instantiate the module.
If you are trying to use EXTERNAL memory (like SDRAM, or SRAM) that cannot be initialized thru this means.