Вы находитесь на странице: 1из 2

6/17/2017 setuptimeholdtime

setup timehold time


highball 20101204 10

Q
Can any body tell me
1 What causesHOLDVIOLATIONSin DESIGN.
2 How it effects DESIGN.
3 What changes need to be done to make DESIGN work.

A1A synchronous design uses FF devices. A FF device needs its data to be valid
before and after rising clock edge. The time before edge is called setup time
and the one after edge is called hold time. While the former may be overcome
by having a faster device, temperature or power supply restrictions the latter can not.
In FPGA devices always use dedicated clock pins. Some FPGA devices allow the
insertion of delay at an input pad to eliminate hold time requirement.
Note that FPGA vendors usually do not specify minimum clock to output
delay of an outgoing FF device. So if your design is driven by an FPGA
and you need positive > 0holdtime you might face a problem.

More info, VHDL and VERILOG code as well as simulation utilities canbe found at
http://bknpk.noip.biz/

A21 What causesHOLDVIOLATIONSin DESIGN.


Simply, data should beholdfor some time holdtime after the edge of the clock. So, if the data changes with
theholdtime might cause violation. In general,holdtime will be fixed during backend work during PNR while
buildingclock tree. If u r a frontend designer, concentrate on fixingsetuptimeviolationsrather thanholdviolations.

2 How it effects DESIGN.


If a chip is done with somesetupviolationsit can work by reducing the frequency.
If achip is done withholdviolations, JUST DUMP the chip. This is how it effects at the end of the day.Holdvilations needs
to be fixed.

3 What changes need to be done to make DESIGN work.


PNR tools will route and place the cells in such a way that no timingviolationswill occur. Ifstill u faceholdviolations, u

http://www.voidcn.com/blog/highball/article/p1674085.html 1/2
6/17/2017 setuptimeholdtime

can manully work on it to fix. Manually place the cells to avoidholdviolations, or in the worst case, u can keep some
buffers in the datapath to avoidholdviolationsbut be suresetuptiming is not effected.

>you said "If a chip is done with hold violations, JUST DUMP the chip. "
>why can't reducing the frequency to settle the hold violation as setup violation ?
>could you explain it clearer ?

Equation for Setup Time


Tclk > Tclktoq + Tlogic + Tsetup + Tskew + Tjitter
Equation for Hold Time
Tclktoq + Tlogic Tskew > Thold

Note that Hold Time equation is independent of clk frequencyi.e Time period Tclk
key things to note from above equations
a once the silicon comes back , if u have setup time problem , u can
increase the clock period Tclk to fix it , whereas if u have hold
time problem , its a more serious problem and u will need a new
metal fix tapeout . But u can still test the current chip using Low supply voltage,
or High temperature or SS corner part that decrease hold time violation> Hi koggestone,
> It is nice information. Could you please give us more information on
> " u will need a new metal fix tapeout . But u can still test the current chip using
> Low supply voltage, or High temperature or SS corner part that decrease hold time >violation"
what i meant was , when u have hold time violation , u dont need to throw away chip and wait for 3 months for fixed chip to
come back. in the meanwhile , by playing with voltage and temperature , u can do other functional tests on the chip . since
normally hold time simulation are done at " FF corner , high voltage, low temperature " which is the pessimistic case for hold
time , by decreasing voltage , using high temperature, and a SS corner chip , we may be lucky enough to find a part that
works , to do other functional tests to catch any other bugs before next tapeout.

highball , setup timehold time,


delayoutputbugstoolsinput

http://www.voidcn.com/blog/highball/article/p1674085.html 2/2

Вам также может понравиться