Go Back   Velocity Reviews > Newsgroups > VHDL
User Name
Password
Register FAQ Members List Calendar Today's Posts


Reply

VHDL - Input Delay and Hold Time

 
Thread Tools Search this Thread
Old 01-16-2004, 09:35 AM   #1
Anand P Paralkar
 
Posts: n/a
Default Input Delay and Hold Time

Hi,

I was looking up the man pages for the synthesis directive
set_input_delay (in Synopsys DC).

The man page says:

Specifies the path delay. The
delay_value must be in units consistent
with the technology library used during
optimization. The delay_value represents
the amount of time the signal is
available after a clock edge. This
usually represents a combinational path
delay from the clock pin of a register.

If input delay is "the amount of time the signal is available after a
clock edge", then:

1. Is "input delay" different from "hold time"?

2. If these are two different parameters, what exactly is the
difference?

Thanks,
Anand

  Reply With Quote
Old 01-16-2004, 12:08 PM   #2
David Jones
 
Posts: n/a
Default Re: Input Delay and Hold Time

In article <>,
Anand P Paralkar <> wrote:
>If input delay is "the amount of time the signal is available after a
>clock edge", then:
>
> 1. Is "input delay" different from "hold time"?
>
> 2. If these are two different parameters, what exactly is the
> difference?


Consider two blocks A and B. An output FOO from A is an input to B.

You are synthesizing block B. You have no control over block A.

The specs for block A state that signal FOO is valid 2.3 ns after
the rising edge of the clock.

When Synopsys does its timing analysis, it needs to know that any
path starting from FOO has already experienced 2.3 ns of delay
from the clock. The set_input_delay statement conveys this
information.

Hold time is different. You usually don't specify this (it
is specified in the cell library, and Synopsys will conform
to the hold time of the devices it chooses).

  Reply With Quote
Old 01-16-2004, 03:49 PM   #3
Richard Iachetta
 
Posts: n/a
Default Re: Input Delay and Hold Time

In article <>, says...
> Hi,
>
> I was looking up the man pages for the synthesis directive
> set_input_delay (in Synopsys DC).
>
> The man page says:
>
> Specifies the path delay. The
> delay_value must be in units consistent
> with the technology library used during
> optimization. The delay_value represents
> the amount of time the signal is
> available after a clock edge. This
> usually represents a combinational path
> delay from the clock pin of a register.
>
> If input delay is "the amount of time the signal is available after a
> clock edge", then:
>
> 1. Is "input delay" different from "hold time"?
>
> 2. If these are two different parameters, what exactly is the
> difference?


Input delay tells DC how long after the clock before an input becomes valid.
Hold time is the amount of time after the clock the value of a signal (usually
an output) does not change.

--
Rich Iachetta
  Reply With Quote
Old 01-17-2004, 02:54 AM   #4
j
 
Posts: n/a
Default Re: Input Delay and Hold Time

Watch the hold times on the input to CHIP. If no PLL to cancel insertion
delay, this will bite you, if not taken into account.

"Richard Iachetta" <> wrote in message
news: .com...
> In article <>, says...
> > Hi,
> >
> > I was looking up the man pages for the synthesis directive
> > set_input_delay (in Synopsys DC).
> >
> > The man page says:
> >
> > Specifies the path delay. The
> > delay_value must be in units consistent
> > with the technology library used during
> > optimization. The delay_value represents
> > the amount of time the signal is
> > available after a clock edge. This
> > usually represents a combinational path
> > delay from the clock pin of a register.
> >
> > If input delay is "the amount of time the signal is available after a
> > clock edge", then:
> >
> > 1. Is "input delay" different from "hold time"?
> >
> > 2. If these are two different parameters, what exactly is the
> > difference?

>
> Input delay tells DC how long after the clock before an input becomes

valid.
> Hold time is the amount of time after the clock the value of a signal

(usually
> an output) does not change.
>
> --
> Rich Iachetta



  Reply With Quote
Old 01-20-2004, 02:59 PM   #5
Alexander Gnusin
 
Posts: n/a
Default Re: Input Delay and Hold Time

> Specifies the path delay. The
> delay_value must be in units consistent
> with the technology library used during
> optimization. The delay_value represents
> the amount of time the signal is
> available after a clock edge. This
> usually represents a combinational path
> delay from the clock pin of a register.
>
> If input delay is "the amount of time the signal is available after a
> clock edge", then:
>
> 1. Is "input delay" different from "hold time"?



Minimum Timing path between 2 FFs is : 1-st FF hold time +
interconnect delay + 2-nd FF setup time.
Minimum Timing path between 2 sequential networks is : 1-st network
output delay + interconnect delay + 2-nd network (clock period - input
delay).

The following picture illustrates it:

--- -----
N1 | | N2
| |
--- -----
Interconnect d
<---|<------------>|----->
---------------------------------
1-st network 2-nd network
output delay (clk period -input delay)
(network "hold") (network "setup")

Synopsys defines input delay to be opposite to network's "setup time".
Assuming that we have 1 clock period for timing path between 2
networks,
input delay is defined as "external to setup" timing, i.e. clock
period - "network setup"


Giving 0 delay for network interconnect, your statement becomes almost
true:

Input delay of network N2 equals to Output delay ("hold") of the
network N1.

2 reasons make your statement "almost true":
1. In reality interconnect delay > 0
2. We are speaking about setup and hold times of 2 different networks.


Regards,
Alexander Gnusin
  Reply With Quote
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off




SEO by vBSEO 3.3.2 ©2009, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47