Forum Discussion

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

Timing contraint on top module and sub-module design.

Hi,

I've just started learning to time constraint my design, so i have a few questions i would like to clarify.

1) Do i need to redo the time constraint on the I/O port of my sub-module if I've already done it in the top module design?

2) I know i need to do time contraint on the I/O (port) of my design, but do i need to do time constraint for path (wire) in between 2 components ?

Thanks.

regards,

Michael

3 Replies

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

    io means pins and not ports of submodules.

    Timing at submodule level for ports is irrelevant and a burden that should not be allowed.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    How about my design in my submodule and sub-sub module? you mean i don't need time constraint for my submodule and sub-sequence submodule?

    I am confussed, could you elaborate?
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    In a classic integration all submodules lose boundaries and the compiler views all the units as one single program. io then is known as those top level ports that connect to fpga pins.

    When designing submodules there is really no need for io timing because the pins are decided only at top level. However for very serious work(and most designers don't do this) you need to add temporary registers to inputs so that you model the connecting input module at integration. Remember timing tools only check paths between registers plus io (pins) if you tell it the data/clk relation.

    For submodule level io is never needed and I usually cut these paths but may add temporary registers to inputs.

    If your submodule passes timing then it will be refitted at top level and may or may not behave in similar way when standalone. But it must at least pass timing well when standalone.