Forum Discussion

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

Design won't fit in device

Hi,

I'm trying to get a design to fit in a Stratix III EP3SL340H1152CS device. I get an error saying that the fitter requires 13555 LABs to implement but device only contains 13520 LABs.

I was told that they way the software works is that if the device is more than, say, ~85% full, then the fitter will fail even though it could actually place and route it. There's some sort of threshold where the fitter would just stop. Is there something like this in operation?

Thanks

MT

18 Replies

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

    Thanks for the info.

    From what I can see in the report, block memory is being used. However, no DSP blocks are being used.

    I don't know much about the design at this stage as I've added some logic to it at a very low level, so, I'm finding my way round it too. I don't know what this 'partition_fitter_preservation_level' refers to. I would like to try it completely flattened with no incremental synthesis or anything like that. Right now, I just want it to fit.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    Some settings:

    1. physical_synthesis_map_logic_to_memory_for_area = on

    2. physical_synthesis_combo_logic_for_area = on

    3. fmax is set to 125MHz

    4. mux_restructure = on

    5. allow_any_ram_size_for_recognition = on

    6. allow_any_rom_size_for_recognition = on

    7. allow_any_shift_register_size_for_recognition = on

    8. auto_packed_registers_stratixii = minimise area

    9. fitter_effort = standard fit

    10. router_effort_multuplier = 2.0

    11. router_timing_optimization_level = maximum

    12. partition_fitter_preservation_level = placement and routing

    13. smart_recompile = on

    15. stratixii_optimisation_technique = area

    It takes several hours just to get to the fitter stage.

    Regards

    MT

    --- Quote End ---

    Hi,

    are you using design partitions in your Quartus project ? If, yes try a run where you remove all design partitions. Another reason could be memory description which are not recognized or could not implemented in the memory of the FPGA. So have look to the to the compilation report : Analysis & Synthesis -> Resource Uitlization by Entity

    Are memory and DSP blocks (e.g.) used etc......
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Some settings:

    1. physical_synthesis_map_logic_to_memory_for_area = on

    2. physical_synthesis_combo_logic_for_area = on

    3. fmax is set to 125MHz

    4. mux_restructure = on

    5. allow_any_ram_size_for_recognition = on

    6. allow_any_rom_size_for_recognition = on

    7. allow_any_shift_register_size_for_recognition = on

    8. auto_packed_registers_stratixii = minimise area

    9. fitter_effort = standard fit

    10. router_effort_multuplier = 2.0

    11. router_timing_optimization_level = maximum

    12. partition_fitter_preservation_level = placement and routing

    13. smart_recompile = on

    15. stratixii_optimisation_technique = area

    It takes several hours just to get to the fitter stage.

    Regards

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

    --- Quote Start ---

    Hi,

    Your resource problem is the logic, not memory blocks as indicated by the error message(LABs).

    The notion of 85% or so is sort of rule of thumb for fmax. The fitter doesn't follow this rule. It will fit as long as there is resource until 100% if necessary.

    Kaz

    --- Quote End ---

    What settings are using ? E.g. optimize for speed or physical synthesis ....
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Hi,

    Your resource problem is the logic, not memory blocks as indicated by the error message(LABs).

    The notion of 85% or so is sort of rule of thumb for fmax. The fitter doesn't follow this rule. It will fit as long as there is resource until 100% if necessary.

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

    OK, sometimes the design occupies 20% and place and route fail, because there are resources such as memory cells or DSP are used by design!

    then tchek that the report gives the fitter to see the resources are fully utilized.

    good luck

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

    Thanks for the reply.

    I think the design started out not using memory but then memory was used to cut down the size of some very large fifo's. I was curious about the how the fitter may see things i.e. if it doesn't see, say, 20% of the device empty, it won't attempt to fit.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    hi,

    the problem may be a memory problem, if you used a lot of memory space.

    good luck