Altera_Forum
Honored Contributor
17 years agoSource Latency Definition
I have been carefully reviewing the TimeQuest Timing Analyzer documentation (as found in chapter 7 of the Quartus II Handbook Version 9.0 Volume 3: Verification). One concept that I thought I had begun to grasp is source latency as associated with creating a clock. But now I'm not so sure.
The impression I initially came away with is that "source latency" is external to the FPGA chip while "network latency" is internal to the FPGA chip. The model I had in mind was of an external clock source driving a global buffer device pin (or "port" in SDC language) of the FGPA device. Source latency would then be the external board trace delay from the clock source to this port. Network latency would then be any internal delay from this port to clock pins of internal registers. This seems to mesh with the following excerpt from the handbook: clock latencythere are two forms of clock latency: source and network. source latency is the
propagation delay from the origin of the clock to the clock definition point (for
example, a clock port). network latency is the propagation delay from a clock
definition point to a register’s clock pin. the total latency (or clock propagation delay)
at a register’s clock pin is the sum of the source and network latencies in the clock
path. But jump now to the first case of confusion for me, namely the description of the set_input_delay command option -reference_pin <target>. Here the text reads: specifies a pin or port in the design from which to determine source and network
latencies. this is useful to specify input delays relative to an output port fed by a
clock. Can someone help me to translate that excerpt? How can one even conceive of input delays relative to an output port? What does that mean? Another source of confusion on this subject is found just below the description of the create_generated_clock command. The text reads: source latencies are based on clock network delays from the master clock (not
necessarily the master pin). you can use the set_clock_latency -source
command to override source latency. Based on clock network delays? That is confusing because "source" and "network" delays are seemingly independent based on the definition I cited earlier in this post. I thought source delays were external to the device. I have been groping with this for too long. Any hints? Many thanks!