Forum Discussion

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

help:why the ram can't be placed

hi:

I use ep3c120 ,I only use the memory 2815K bit,

Total memory bits 2,815,268 / 3,981,312 ( 71 % )

Embedded Multiplier 9-bit elements 350 / 576 ( 61 % )

Total PLLs 2 / 4 ( 50 % )

Error: Can't place all RAM cells in design

Info: Selected device has 390 memory locations of type M9K. The current design requires 401 memory locations of type M9K to successfully fit.

Info: Memory usage required for the design in the current device: 103% M9K memory block locations required

I use the ram type is "auto", I think it can auto combine two memory as a M9K ,but it not .

how can I do?

6 Replies

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

    It looks like you're not using the memories efficiently. Combining can only be done in certain conditions like 2 memories sharing the same address and write enable busses.

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

    how to use memories efficiently.

    If you means the analysis or sythesis setting?
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    No.

    M9Ks can store a max of 9K bits, in different configurations (8k x 1bit, 4k x2bit, 2k x 4bit etc, 1k x 8/9 bit). So, for example, if you had a 1k memory with data words at 7bits, you would lose the use of the other 2 bits, ie- wasted memory, and you are only using about 75% of the memory, with 25% unusable. Nothing else can share this space, unless you have an extra two bits that are stored in another memory that shares the same addresses and write enables.

    So its down to your design that is causing the problem.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    thank you!

    but I read some ,it said:"the M9k can auto combine the memory".for example ,if use two dual_ram(4K X 1bit and 4k X 1bit),it can be used a M9k;

    the same to (2K X 1bit ,2k X 1bit ,3k X 1bit and 2k X 1bit)4 memory.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    not all memories can be combined. There is a problem with your design.

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

    yes,it must be error

    the project is altera and apical demo,apcial netlist use the memory most,but I wouldn't be to repair it .I only can do add some ,setting quartus and repair nios