Forum Discussion
Altera_Forum
Honored Contributor
21 years agoAccessing FPGA RAM section
Dear all, how is it possible to tell the linker to place variables in a RAM that is in the FPGA? I have the following problem: I got a design with 12k RAM on FPGA and in my software projec...
Altera_Forum
Honored Contributor
21 years agoHi nathan,
Check your linker script file -- it probably isn't assigning the int_ram section to a memory region. You need something like the followingint_ram : { *(int_ram) } > int_ram > UINT8 gc_buffer[8][1536] __attribute__ ((section ("int_ram"))); > > This places the variable into the RAM. This instructs the compiler to put the variable into a section named "int_ram", it does not place the variable into a memory region. The linker then uses "int_ram" as an input section. If you don't explicitly specify an output section in your script, the linker will create an output section of the same name. Then, if the output section is not assigned to a specific region, the linker will attempt to match attributes to locate the output section in an appropriate memory region. In your case, it's being located to the same memory region as .text & the two address spaces overlap -- so you should also see a linker warning indicating that section int_ram isn't assigned to a memory region. Regards, --Scott