Forum Discussion

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

Pin seen as a clock in TimeQuest but is not a Clock

I have been getting an error Node: GND was determined to be a clock but was found without an associated clock assignment.

The pin has nothing to do with a clock, and I do not see how TimeQuest figured it to be a clock. Is there a way to force TimeQuest to not think it is a clock?

I have tried to inject a frequency that would benefit my design, but I kept getting setup and hold violations.

Any and all help is welcome. Let me know if you need more details.

17 Replies

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

    I31out0 is your clock and is a feedback output from comb logic involving GND. I think this has fooled TQ.

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

    Thus you have actually a timing path (from Q output of your registers through the xor logic and back into register clock port. I think it is more appropriate to declare generated clock as you are dealing with gated clock. The best way to see examples at TQ resource centre.

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

    An alternative safer way is to clock both registers on clk then use I31_out0 as clock enable

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

    Thanks, I'll look into that. I have never dealt with generated clocks before so I guess I have a lot of research to do.

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

    Notice that even with generated clock you are likely to have serious timing violations due to the very long comb path. As I said a clock enable approach is best in your design if it is ok functionally and even then you may have to face the challenge e.g by adding more pipeline registers.

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

    Connect master clock to all registers. connect I31_out0 to the enable port of those registers which you have clocked by I31_out0. That way the enable is synchronised to master clock. The only concern then is that enable may be very much delayed. Try it first and let us see.