Forum Discussion

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

timing constraint for clock mux and how to set output delay

Hi all,

I have to constrain the output pins of my design by using "set_output_delay."

The reference clock for those outputs pins comes from a clock mux.

I've check the following link to know how to constrain the input clocks of a clock mux.

http://www.altera.com/support/examples/timequest/exm-tq-clock-mux.html

However, I don't know how to constrain the clock coming from the mux.

Could anyone please teach me how to do that?

The attached picture (following pic) depicts my design.

https://www.alteraforum.com/forum/attachment.php?attachmentid=7583

12 Replies

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

    Hi Ryan,

    I have clkctrl automatically included behind the clock mux by Quartus II in a Cyclone II design. When I do "create_generated_clock" to constrain 2 clocks go through the clock mux, do I need to do another "creat_generated_clock" after the Mux0~clkctrl?

    Example,

    at the Mux0 output pin:

    create_generated_clock -name muxed0_clk-a -source [get_pins {mux39x3:inst102|mux0~0|combout}] -master_clock muxed0~0_clk-a [get_pins {mux39x3:inst102|mux0|combout}]

    create_generated_clock -name muxed0_clk-b -source [get_pins {mux39x3:inst102|mux0~0|combout}] -master_clock muxed0~0_clk-b [get_pins {mux39x3:inst102|mux0|combout}] -add

    at the Mux0~clkctrl output pin:

    create_generated_clock -name clkctrl_clk-a -source [get_pins {inst102|mux0~clkctrl|inclk[0]}] -master_clock muxed0_clk-a [get_pins {inst102|mux0~clkctrl|outclk}]

    create_generated_clock -name clkctrl_clk-b -source [get_pins {inst102|mux0~clkctrl|inclk[0]}] -master_clock muxed0_clk-b [get_pins {inst102|mux0~clkctrl|outclk}] -add

    Please see the attached screen shot ( technology map viewer)

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

    No, you only need one of those generated clocks. It doesn't matter either, but I do the first one since it's name is independent of the global being inserted.