Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
14 years ago

A question about the block memory

I used 82% of the total block memory bits. However, Quartus cannot place all RAM cells in design. The FPGA device which I am using is EP3SL150. Please tell me, what is the problem? How to successfully place all RAM cells?

6 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    It sounds like you are not using the M9Ks effeciently.

    Each memory is either 9k bits (355 of them) or 144K (16 of them) Any bits or memory space that cannot be mapped will then be wasted.

    Please read up on the memory architecture. M9Ks only has these configurations

    1 bit x 8K addresses

    2 x 4k

    4 x 2k

    8 or 9 x 1k

    16 or 18 x 512

    32 or 36 x 256

    Any other configurations have to map to one of these, so an 8 bit dword would lose you 1k memory bits (as memories have a 9 bit input word).
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Thank you.

    In fact, I need a memory which has 32768 words. Each word is 128-bit. In order to sufficiently use the M9K and M144K. I use 4 32-bit 32768-word memory to replace the 128-bit memory. It cannot work. In my case, would you like to tell me how many bits I should set for the memory?
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    that should fit ok inside the M144Ks

    how are you instandiating the Ram? did you use megawizard?
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Yes, I used the Megawizard to generate the RAM. I tried to used the M9K by 36*3+18+2=128-bit. However, it also cannot work. M144K blocks only have 2,359,296 bits. I need 128*32768=4,194,304 bits.

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    For M9Ks you will need more rams that is available. You would need 16 M9Ks (at 8 bits ) x 32 rams per memory. That is 512 M9Ks, just for one 32kx128 bit ram.

    Basically, you need more ram that is available. Why do you need so much ram? why cant you ujse external ram?
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I am working on designing a system chip which is based on memory. The external memory takes much more time than the in-chip memory block if it works well.

    Thanks for your kind rely.