Open navigation menu
Close suggestions
Search
Search
en
Change Language
Upload
Sign in
Sign in
Download free for days
0 ratings
0% found this document useful (0 votes)
38 views
15 pages
IEEE Hazard Paper
Uploaded by
gbikorno
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content,
claim it here
.
Available Formats
Download as PDF or read online on Scribd
Download now
Download
Save IEEE Hazard Paper For Later
Download
Save
Save IEEE Hazard Paper For Later
0%
0% found this document useful, undefined
0%
, undefined
Embed
Share
Print
Report
0 ratings
0% found this document useful (0 votes)
38 views
15 pages
IEEE Hazard Paper
Uploaded by
gbikorno
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content,
claim it here
.
Available Formats
Download as PDF or read online on Scribd
Download now
Download
Save IEEE Hazard Paper For Later
Carousel Previous
Carousel Next
Download
Save
Save IEEE Hazard Paper For Later
0%
0% found this document useful, undefined
0%
, undefined
Embed
Share
Print
Report
Download now
Download
You are on page 1
/ 15
Search
Fullscreen
Hazards, Critical Races, and Metastability Stephen H. Unger, Fellow, JEEE Absiract—The various mode of falure of asynchronous se qventat loge ciecults due te timing problems are considered. ‘Fie are hazards, erlcal races and_ metastable state Tt i shown that thee l' mechanioes common to all Torms of hazards inate metartabie sates A similar mechanism, with added com ‘leations, tx shown to characterize critical race Means for de- Fenting various types ef hazards ad eral roees through the use cTomided delay constrains are ltroduced. A. method Is de- Seria for determining trom ow table siunons in whi tnetartable states may be entered. A circuit technique ls presented {Br extending = previousty knows technique for defeating metas ity problems in sified system Ts sewn thatthe use of Simulation for verifying the correcines of s circa with #0 Index Terms—Asynchronvus, critical race, delay dynamic hazards, esental Aazards, inertial delays, pare teinys Sequentia logis ming problems, ing seelaton 1. etRopUuCTION COMBINATIONAL logic circuits can operate correctly in the tease that theic steady state outputs are correct, while generating spurious pulses, often termed glitches, when the input siaes change. If, depending on the values of relative delays along varioes paths, such behavior is possible, then We say that there sre combinational hazards inthe design. A baz= ard is manffesed, in the operation of a physical instance of fuch a clout, if glitch actually occurs. A particalar cicult with hazards may consistently manifest them, or occasionally the hazards may be manifested (depending peshaps on variable factors such as temperature or power supply voltages that can ‘cause delay magnitudes to fuctuate), oF the delays may be 30 ‘elated that, forthe inpat state changes that oceur in practice, the hazards are never manifested. In some situnions these transients are of no consequence, as is the ease for some cir cuits embedded in synchronous systems. But offen they can lead to significant malfunctions, for example where the combi- national logic generates signals controling intemal variables ‘of sequential ciuit, in which case the transient errors may be ‘converied into steady-state errors. ‘Combinational hazards are classified as either static or dy- namic, depending upon whether the output is specified to remain ‘constant after the input change, or fo change, respectively. A State I-hazard is one where te output bot: before and after the {input change is euppored to remain constant at | and a negative going pulse may be generated. Stale O-hazards are unalogously defined where te ouput is supposed to remain constant at O. A ‘dynamic hazard is one Where a gllich may appear prior © an ‘utp change from 0 to | or from | 100, His well known [6], (26] that combinational logic functions can always be realized with circuits that have no hazards for siagle-input-ehange (SIC) operntion. Stated in another way. ‘combinational hazards for SIC operation can always be elimi ‘ated. When more than one input may be changed simulkane~ ‘ously, ie, for multiple-nput-change (MIC) operation, certain bhazards, called fancrion hazards, are inevitable {6} I there is hazard in a circuit thar is not a function hazard (ie. the fime= tion can be realized without this hazard), thea itis a character ‘stl ofthe logic design, and is refered to asa fogic hazard "Where tf not possible oF not desirable 10 eliminate haz~ and by means of logic design, it may be possible to defer it, that isto prevert it from being manifested. This can be done by ensuring that the delays along certain critical paths are not 0 relaied as to cause the glitches to oceur. Another way 10 deal with hazards is to allow them to be manifested, but to filter them out tough the use of inertial delays of sufficient rmagnitade to suppress the glitzbes. Coping with them in this ‘way is usually considered to be a last resort since may be costly and may significantly slow down clrcuit operation, ‘in many cases, defeating hazards is not feasible because it ray necessiate guaranteeing that the delays along two (oF ‘more) different paths be constrained to differ by no tore than ‘some very small amount. This is generally not achievable, On ‘constraints bounded below by the maximum delay along another path. In some cases, particularly where only certain input changes are ‘possible, one-sided constrains may be sufficient. (Other types of timing malfunctions are endemic to sequen- tial eirouls Ifa sequential function is realized by a circuit with more than one intemal variable, and if, for certain situations, fan intemal state change entails the simultaneous change of ‘more than one state variable, then this Is ealled a race condi tion, IF the stable state ultimately reached depends on the out- ome of the ace, then itis refered to a8 a critical race. Gen rally we would consider critical races as being design defects, ince iti difficalt to control path delays £0 as 10 ensure par fieular outcomes of races. It is always possible to eliminate cntical races by appropriate choices of state assignments “Fixing” races by meant of one-sided constraint, on path der lay values, is sometimes an acceptable option. ‘Another class of timing problems in sequential circuits art those arising from situations where, if cireuit delays are suck that an internal state change resulting from an input change & perceived somewhere in the cicuit as having occured befort fhe precipitating input change, then the system generates mf oo18-s3400ss04000 19WOR: HAZARDS, CRITICAL RACES, AND METASTAMILITY ‘usput glitch or goes to the wrong intemal staté. When such ‘behavior is inherent inthe function being realized, we say that the function has ar essential hazard If the resulting walfunc- jon is an output glitch, then it isa transient essential hazard. If the system might wind u problem is designated as steady state essential hazard. Both ‘delay constrains. In particular, delays in the intemal variable tranches (j-branches) will always do the job [25 ‘Nocmally, we expect that, except during very brief, ‘bounded, time intervals, each of the intemal variables of 3 sequential circuit has one of te valucs (usually designated as (or 1). However, under certain conditions, any nontrivial se-
1, and is negative if the first change is 1 —» 0.) The width of the pulse is the time interval between the changes. If his interval is short, we would say we have here a short pulse. In any real circuit, there exists ‘atime vate such that ithe width of short ple is below that ‘value, the pulse will defiaizely be ignored, due to the inertial [properties of real systems, Ifthe width is increased from this ‘vale, the pulse is marginally recognized, inthe sense that it ‘may or may not have an effect at differnt gate inputs. Finally, if the pulse wideh exceeds some larger vale, then it will definitely be recognized by the circuit. A pulse whose wid is im the marginal range, is referred to as a runt pulse. (Pulse ample js also at factor here. Runthood is in general a prop- ‘ery of both width and amplitude, the basic idea being that runt pulse is a pulse whose existence is marpinal) As is shown late, runt pulses are related to metastability. All of these timing problems are particularly important in Lunclocked, or slftimed, systems where, especially on control ‘ices, all wanstions, at any time, may be considered signif- ‘cant. in such systems, even those termed “delay insensitive,” it {s necessary to pay atenton to delays along certain paths. This {is because, even in the absence of essential hazards (discussed. below), a circuit module must indicate to its environment when {tis ready for input changes. Such signals are meaningless if| there ae arbitrarily large delays on certain internal paths. Re lated 10 this isthe concept of isochronic forks, diseussed by Manin [14], and by Brzozowski [5]. OF course, where un- clocked systems use "delay bundling” (see for example the ‘ork of Sutherland (24]) attention must be paid to delay val- us in virtually all paths. Hence, the methods presented i this paper for coping with various timing problems by controling ‘lative delays along ceriin circuit paths does not constitte the inteduetion ofan otherwise unecessary typeof constraint ‘on the design of such systems "Bea ‘An objective of this paper ist show how a particular cit- cit festire, namely the possibility of » gate receiving cone: ‘iciory signals simultaneously on diffrent inputs, is common to al ofthe Uming problems mentioned above, It ale stows thatthe various problems may be uosly viewed tom difer ent vanuage points: boolean logic expression, Kamaugh maps, flow tables, and logic circuit diagrams. Tht is Helpful in en- haveing our understanding ofthe mechanisms involved, deat fing problem trnations, and devising means to eliminate ‘defeat problems. Techuijees are prsescd for defeting any dynamic hazard and many critical races with one-sided delay consains.A simple procedate is described for determining by inepection ofa flow table is panicular input ransition can lead to metasabiliy. A variation on a previously known eeult technique for fikering out the effects of maetactabliy i pre= ‘seated which caa cope with ¢ broader class of problems. I is Shown that timing simulators cannot be reid! upon to tt for the presence of timing problems, Finally, tis demonstrated that replacing pare delays with inertial delays ea, under or= tain eicustances, actually intedce timing problems aot previously prose “The systems discussed here are assumed to be constricted ‘of AND, OR. and INVERTER gute. Extensions ofthe resus to cover systems, including NAND and NOR gates are sirightforvard. Delays with given upper and lower bounds, ‘te misociated with all wires. (Gate delays may be absorbed in the delays of wines a the outputs) In orr to rp the dl ‘casions, it f asmmed that each dey is pure, and thatthe ‘delays fr rising an fling signals are the same Ie snot diff cal to extend the reset models with mixed pure and iner- til delays and wit cfferent delay values depending upon the direction of a value change. Where multipe-inut-eaanges (QdICs) re cscasse, it ssumed tht all ofthe put vari ables involved change simultanenusly. Variations from simule taney can easly be taken ino seount by delays inthe wires Weeding rom the tputs 'A basic ureducton to asynchronous sequent circuits con- sistent wits the approach taken in this poper isi (28) , and a tmore detailed treatment of hazards and eral races can be {ound in (26). The origins of the theory of combirationa baz ards ace mainly in 8], (13), (6](mulipleinpet change state ‘uazard) (26), (1, 2] (muipe-inpu change dynsmic bazar) “The basic work on critical races and state ssigament fee of them isin (7h (121, [25]. More recent approaches t some of thee problems ar in (11), 18}, Methods for evading the pro lean by using locally gencmied clock pulses were itoded in [5]. 27]. A more sophisicated approsch i (17). The origi tte basi Meas pertaining to metasabily are in 4] (9), (19), {22, (13} More recent work en this topic sin (10), (20) ‘Static and dynamie combinational hazards ae treated inthe next two sections. In Sections [V and V two types of essential Inner re shown tobe acrciated with sequent fansions that carmot be eliminated, but which can te defeted. They are Shown to be tclned to sinc combinational tua. Ia So ‘ion V1 i it shown that sequential dynamic hazards also exitbut that these are not inherent in the functions. Metastability treated in Sestion VIL, where iis shown that situations where it ‘can be initiated by either runt pulse inputs or the intemal genere- tion of ran pues following multiple input changes can easily be Ientifed fom the flow ‘able point of view. It is also shown, there that the effects of metastabiliy can be prevented ftom reaching outputs by a circuit filer. Citeal races are examined fiom a crcl as well as flow table point of view in Section VII “The resemblance, with a twist, between critical races and essea~ tial hazards is pointed out, and a technique for using one-sided ‘elay constraints that goes beyond “ficing” races is presented that allows the we of some state assignments with erical races. {A consequence ofthe technique for defeating dynamic hazards is ‘hown 19 Section IX to provide a counterexample to the idea that if-a circuit works properly with some delay clemeat assigned ther of two specifi values then it will also work forall inter- mediate values Finally, its shown in Section X that pure delays fre not always more toublesome than inertial delays with re- spectto timing problems. IL. STATIC COMBINATIONAL HAZARDS Assume we restrict ourselves for the moment to logic cir- cuits composed only of AND, OR and INVERTER gates. tis noe difficult to show tha the basie model for static hazard gen tration is the configuration shovin in Fig. 1a, for t-hazards, ‘vith the dual shown in Fig. 1b, for O-tzards. (Note that & NANDegate could replace the OR-gate, and that « NOR-gate could replace the AND-gate.) et x = Tz (a) Vasa () o-nazard Fig. 1 Bae mode rst aad, In the case of a I-hazard, for example, ifthe delay through the lower paih to the OR-gate (Fig. 1a) were sufficiently long relative to the delay through the inverter in a particular physi~ ‘al circuit, then no hazard would be manifested for a change of | Strom I fo 0. But then, fora change of X from 0 to I the haz~ ard would defintely be manifested. The hazard would aot be manifested for either change if the delays are so related that the opposite changing signals arrive almost simultaneously. An intermediate situation would be if the time interval between the signal arivals is marginal, in which case a runt pulse might be produced. This point will be refered to again later in the dis- ‘cussion of metastable states. EXAMPLE I. Consider the logic function specified in the “t-vatiable Karnaugh map shown as Fig. 2. A sumof- produets (SOP) expression for this function is: Z=AB+Ac+BC+BCD “This can be factored to yield: Z=(AsB(A+C)+8C0 o @ {EEE TRANSACTIONS ON COMPUTERS, VOL At, NO. 5 JUNE i998 Fig 2. Karsagh map of ction “The circuit shown as Fig. 3 comesponds to this expression. o——, J * [ 8 ¥ Fig 3. Reaavon offi. 2 fnction Examining the circuit inthe light of the preceding discussion, rote that, from the A-inpxt, thee are two paths 10 AND-gale-T, ‘one with one inverter, and the other with no inverers. Both paths Se sensitized when B = D and C = 0. Thus, under these con- ‘Grains, when A changes, there is a O-hazard at the ouput of gate7, However, ifD = 1, this ourpur doesnot propagate tothe Sulput Z, since Z will be held at | by the I-input from gate-6. Bur if D'~ 0, the ouput of Z is same as that of gate-7: that is there can be negative glitch atthe circuit output. Ths, we have fs O-hazard when A changes while B = C~D~0. ‘An essentially equivalent process can be carried out on (2), ‘whieh mirrors the eicuit. Observing the appearance of both A ind A in the expression, we attempt to fix the other variables to as 10 reduce the expression to AA. This can be done by fering B= 0 to convert the fist parenthesized subexpression TOA, and then, setting C~0 conver the second parenthesized Subexpression to. A. All that remains is to set D = 0 thereby ‘eliminating the BCD tem. "A third way to arrive atthe same result is a bit different ‘Mutiiply out the product in (2), a hazard-preserving operation, ‘and do rot eliminate the resulting AA term (that would nor be Inazard-preserving). The result is: Z=AB+AC+BC+AA+BCD ° Setting B= C = D= 0 reduces (3) to AA again revealing the Ochazard. "Now consider variable B. There are two paths from B eo ‘verging at final OR-gate-f, one path with « single inverter on it and the other with no inverters. Both paths are sensitized if A= 0, €=0, and D = |. This corresponds to a L-hazard atthe ‘utput. The same conclusion can be reached from (2) by not {ng that setting A = C = O and D~ I reduces that expression 10UNGER HAZARDS, CRITICAL RACES, ANO METASTAMLITY BoB. A diferent way wo se his, usng (3), 6 note thatthe consensus term, betveen AB and BCD. namely ACD, is inssing fom the expression. Thus, within the cube defined by ACD there isa hazardous warsiton. Finally, an examination ofthe K-map of Fig.2 shows that none ofthe chosen sububes covers the transition under discussion (the mising cube is of course ACD), confirming again tha thee i a I-bazard for transitions between 0001 and O1O1. The hazard canbe clin nated by adding to the circuit a path that corresponds to Koo. ‘Note thatthe same techniques use to identify the azar could be used on the O-tazid, by complementing the map, xpressions, and crcuit (Complementing the cea would tmean swapping AND-gaes and ORpates and complementing All inputs) There ia aso a Ichazard for wasiions between 1001 and 101. I can be detected using the same techniques AMustrate for the |-zard between 0001 and O10 ‘Consider next a multiple inp change. Suppose that with A and B both fixed a 0, Cand D are both changed from 0 to | Paths from (ith one inverter) and from D (with no invert x) converge at AND-zal-6, With B set at 0, we have the nditions fora postive glitch atthe ouput of gate-6. With ‘A= B™0, the output of gate i 0, which forces the ouput of tite and hence the lower input to gate‘ to be 0, so thatthe lth ill be propagated to the output Z. This we have an [MIC hazard for transitions between 0000 ad 0011, Note that, ‘with A™ B= 0, @) reduces to CD. This term (coresponding to.an AND-gas) has ts two inpas changing in oppo ec: tions when C and D both change inthe same direction. An ‘amination ofthis transition on the K-map of Fig. 2, shows tat, between the initial and inal states ofthis transition, both of which are O-poins of the function, tere isa minima-length ath that passes through the point 0001, where Z'= 1. Thi is the condition fora fiction O-bazard. “There is no way to eliminate the function hazard. xt, a8 roted above, it can be handled in ane of two ways. One is Simply to place an inertial delay clement a the out of gues or gave. IF its magnitude exceeds that ofthe maximum pos- sible width ofthe glitch, which isthe maximum difrence in the delays along the two ertical paths, then the apurious pulse will be filtered out. Suppose that instead of this approach, hich delays the ciruit ouput, we atemps to defeat the haz- ard, Leto prevent the lich from being generated. This might te dene by ensuring that, forthe 0900 — 0011 wanson, the signal rom C, which would fold the gate cust a0, aves before the signal from D. which would tum om the ouput of ‘:me-6. This could be done by inserting a suficently large ‘ela clement (pure o inertia) inthe path fom D to gate, But now observe what would happen forthe inverse transition, ‘ie, 0011 ~» 0000. Again, the effect ofthe C-chunge would reach gate-6 before the elect ofthe D-change. The resus thatthe ouput of inverter? goes to | before the signal fom D toes to O 0 that dh hazard efntely manifested. Tas this fppreach is useful only where the input sequences are re ‘ited so that such inverse pis of tensions donot occur. for sone ectnotoges ther may be « way and this praia Suppos tthe curt engl ees ‘ends wih lave ideo tou change fv hem Ot (Certs lnverer ouput fal uch) we tig mock Tongro repo tan +0 chugs nC esti nen pet ae ow). This indeed connoponta te Wa Dan NMOS lever. biteenes te ope ae ee ah ‘ho prodicesinlareftess) Then the ey tthe ph fom to exe, for sgl ung bah dton, eo Srin’"»bebeteen feo dl ales fer te ph foe then tay be posnbl ode! the haa for oh ant Noes. Ths apronehy which ena wo-ied Gly con ‘si, apple ald ae asad II, DYNAMIC COMBINATIONAL HAZARDS For input changes that cause the output of an OR-gate 10 change from 0 to 1, dynamic hazard can be generated a (as opposed to being propagated to) the output ofthis eae, only if | postive glitch occurs atone of its inputs and then torminates before the arival st another input to the OR-gate of a signal changing monotonically from 0 10 |. Such a sitution is de- Picted in Fig. 41 gy and gy, and m are simultaneously turned on, tien complementary input changes occur at the inputs 10 the AND-gate, which, as shown in Fig-1b, i the basic mecht- nist for producing @ glitch atthe output of the AND-gate (the signal labelled G). Note thet, turns on the glteh and gp turns G off. The I-hazard is manifested if the offect of gis felt at the AND-gute before the effect of a» The monotonically in- czeasing signal is m. Thus, if she signal fom m arives st the OR-gace afer. the G signal at the input t the OR-gate has zone on and then off, we would have a spurious pulse at Z receding the steady-state change of Z from 0 0 1 [aes eh Fig A Base eda for dais hares Assume now that there is =. MIC involving m, and gy ‘The dynamic hazard would be manifested ifthe pth delays in the circuit ae such as to cause evens to occur inthe ondee specified above. Thai, ithe order ofthe tree input changes vas peccived at the the inputs to the OR-gate as having been Bs (required to produce a gltch a G), and then ‘twill now be shown tat, uli the ease of static hazards, al dyramie hazards (both loge and funtion hzarés) can be defeated for changes In book diets, by one-sided delay consirains (There me actually two different sts of constrains that can be used in each case.) Suppose that the path delays fiom go, gs, and m tothe OR-gate inputs are respectively do. 4, and dy. Then there are two ways to defeat the dynamic ha ard forthe case where Z isto change from 0 10 1 (i forthe ‘MIC in which all tree inputs go on), One way Isto prevent the glitch at G from occuring. This can be done by making‘dy > dh. The second way is to make the glitch overlap the fuming on of m (ie, foreing the effect of the m going on to be fet while the glitch is sil on). This will occur if o> da "Now consider the reverse transition, Le, where all three input variables are switched off. Now the generation of the glitch at G is prevented if da > d), which constitutes one constraint for de- feating the dynamic hazard. The dynamic hazard can also be ‘defeated by allowing the G glich, but overlapping it with the m- Signal (Le, by ensuring thatthe effect of m going off is delayed luni the effect of go going ofT is perceived by the OR-gate). This Is achieved by imposing the constraint da > do. "Now observe thet if dy > diy dy es do > dy and dp > dy) then the dynamic hazard Is defeated for transitions in both di rections. The same is true If dy «ye “The simplest example of such a hazard is illusirated in Fig. 5,8 SIC dynamic hazard. Here all sree of the basic inputs are derived from the single input-variable X. Corresponding to this circuit is the logic expression: Z= XX4X, The first X ‘symbol corresponds to gj, the second X to go the product XX 10 G, and the third X to m. The branch delays are denoted 25 = (Gvhich includes the faverer delay), b, ¢, and d. The dynamic hazards for changes of X in elther direction are both defeated by the constraints 8 +d >> +4, anda + d> c, or altematively byatd
1 MIC dynamic logic hazard for the ‘transition 1101 > 1011, Le, forthe inpat state change BLCT when A= D~ 1. For this situation, m = C, G)=8, 9) = C, G=BC (the output of gate 6). The hazard and the reverse, ‘hazard can both be defeated by constraining the fp path delay to either exceed or be less than the delays in the gy and m ‘paths. For example, we could require the delays in the path from C through gates 2 and 6 to the input of gate $ (this i the ‘ path) to exceed the delays in the path from C through gates Sand 7 to the input of gate 8 (his isthe m path) and the delays in the path from B through gates 1 and 6 to the input of gate 8 (Qhis is the g path). Alternatively, we could alter the above ‘constraints by replacing the phrase “to exceed” by the phrase be less than” ‘The circuit (not shown) corresponding to Z = ABC-+ AEC ittustrtes a dynamic function hazard for inpat changes be- ‘yween 000 and 111. The G signal is generated atthe output of, the ABC gate, and the m signal is generated at the output of the ABC gate, Both A and B produce go signals, C produces the only g signal, and A, B, and C all convibute to m. If we delay the paths from both A and B to the ABC gate by an mount larger than the other delays, then, during the (000 > 11 transition, tat gate wl ot tuo the gitch uni ‘er the m signal has timed on Z, which defeats the hzard for that transition Forth revere transition, the ABC. gate will not see the A and & signals go on until after it sees the C sig- ‘al poof. so tht no giteh is produced, therby defesting the reverse hazard a wel “A similar argument shows that minimizing the delays fom ‘A ind through te ABC. tale the inpot ofthe final OR- {ll als defeat both hazards. Asa practical attr, when this route fs chosen, the action taken would be t erase the ‘sles in cher or both of the other elvan: path. fac, he fen seacgy might be to choose the solution that extals the leat contin terms of delay peding. “The above discussion easly extended to cover circuits termiamting in AND-gates by simply using doalsrgumeats, OF Course NAND and NOR yates are alo inclaed in tho discus Sions of AND and OR yates respectively (Oe UU are imply compleersed). Tr some cases there ry te several OR-gate pats at which CG-signale may appear, and perhaps several inp at hich signals appear, Sufficient conditions for defeating the dy ‘Humic hazards such cass are eal specified by, for exan- Pie, constraining dy valves for all the Osigals to exceed alld ales und all dy values, Weaker sts of consrants may be found in sine exten by more carefil analyses taking into a¢- ‘count various glitch overaps “The renal ere extendhble in a straghtorward manner to cases here the delays for rising aod fling signals ar ifer- Sat and it makes no difference whether the crea delys ae ure or inertial In a pariculer circuit wih several distinctly {iterendymamie hazards there may be contradictions among the delay constants required wo defeat certain subsets ofthese aca “The importance of the above result follows fom the fact ‘ht, in many case involving MIC operation, it has. been show, by Bredeson (2), tat rat all dynamic logic bazards ea, bochminated. Thais for some furctos, wtile any particular ‘Snanic hazard can be eliminated by 8 redealan ofthe logic ‘ents the new sire will have some other MIC hazard in face the funtion dovribed in Fig. 2 and realized by the creat ofFig 3 u an cxample of ach 4 fonction. This isan example in which thee ar a numberof potental namic fgic hazards in the fincton. Its possible t elimiate some, but not all (without introducing static logic hazards) by logic design using Bredeson's method: and then to defeat the est by the method ‘iscribed above. tis not clear whether this can be dove forall finetions, In prctcal cases fi import to nderstand that, {hc to inpu Constraint, transitions corresponding to many of the MIC havards may never soeur, so that some hazards need tot be daft with tal. This fase treated, for the potnt of View of eliminding (as opposed to defeating) hazards in sage logis cre, by Nowik and Dill (18) IV. SequenniaL CincurTs: "TRANSIENT ESSENTIAL HAZARDS ‘Consider next those hazards that are inherent to sequentialOH: HAZARDS, CRITICAL RACES. AND METASTAMEATY cireuts. To begin with, let us examine those hazards that are {herent i certain sequential functions. That i, they cannot be ciminated, although they can be defeated by suitably con- seraining relative delays along cersain paths. The subsequent ‘iacussion is restricted fo single output-change (SOC-no out- put signal is specified to change more than once as a result of a Single change in any input signal) soquential functions and ‘operations are assumed to be SIC. ‘An example of such a hazard is embedded in the sequential function described by the flow table of Fig. 68. With the given ‘encoding ofthe rows in terms ofthe single intemal variable y, itis simple to obtain the K-maps of Fig. 6b for ¥ and Z. From thee the logic expressions below are easily generated: YaAy+8, Z=ABy ‘The detailed logic circuit diagram corresponding 10 the above expressions is shown in Fig. Ge. Clearly there are no ‘ritical races or combination logic hazards (for SIC operation). ay ERE, (Rat ea Aa 8.BO, Fle 5. Trnsentesentaharac Blut now consider carefully (referring to Fig 6a) what might hhappen when B is turned on with the system initially in the state I-10. According to the flow table specification, the frst ‘event is state change 10 I-11, corresponding to a lateral move {in the flow table to the frst row of the {column The ourpit ‘remains at 0, Since the next-state entry is 2, the next specified event is a change in the internal state 10 row2, which brings the system to state 2-11, a stable state. Note that in all threo of the states involved in this transition, the output, Z, is specified toremain fixed at 0, In terms of a general block diagram that represents any cir- cuit realizing the function, the above process begins with a ‘change at the B-input, which propagates through the logic block to the Z- and’ Y-terminals (in general, several Y- variables might be involved). Next, the change in the Y- variable(s) causes a change in the corresponding y-varisble(s) at the input end of the logic. The subsequent y-change(s) then ‘propagate through the logic again to the Z- and Y-terminals. ‘Suppose that, due to a relatively long delay in the path from ‘the Brinput fo the Z-output, the signal from the y-terminal reaches the Z-terminal before the signal from B. Then it would ‘appear at the Z-terminal as though the intemal state change had occured defor the inpat change that pecptte it. From the poit of view ofthe flow table iti a ugh the vere transition oceared before the horizontal tanstion, Les that the sequen of states was 110, 2-10, 21. But this i te ‘ay things lok fom the 2-terminel, th out would change tol fora brit itera dorng the transition, conespondng the difference in arval times at Z of dhe signals fren 8 and fiom y. This consites x spurious pole, or glitch a2. The osibilty of such a muifunction i referred to as a onsiont ‘stertia scord Inthe cient example, the hazard woul be ‘anifexed ifthe oral path delay (see Fig. 6¢) from B to the inpat ofthe AND-anc vi the inverter exceeds the delay in the path fom B Yo the input ofthe ANDyate via the OR-gate “This ope of hazard is mentioned in (26, but fot tented detail Before analyzing this situation farther, formal dtii- ton of transient exeatial harard x prevented below Fit define 2, a the opt for the total ste rs, Le, the sinte vo rows, colummc If isan inp variable, and ifthe sable sn resched afer a single change X withthe sate nally in stable sate oe f= and Hf the able sate reched afer second change in X is foe, and Par (e might be equal or) then a romsont essen hazard xint Zin ) = 240, €) 2 20). Ths ie equvalent to say ing tnt a tronsion essential hazard exc if for some sable States, and for sme input variable X, the ostput ZI species to remain unchanged when X changes once with the sytem inially in's, bu Z is specified to change if X fe changed 8 second tine "No change in the state assignment ofthe logic design can climinate the possibilty ofa malfaetion if the path delays are such ast reverse the apparent ordering of the input and inter- nal state changes as seen at the Z-terminal. But simply inser- ‘ng a sufficiently lage delay between the Y and y terminals oes defeat te hazard by ensuring tat no such mispereption ‘an occur anywhere inthe circu. "Now lt us examine the situation more closely em the eit- cuit point of view (Fig. 6, which is arranged to clarify the Subsequent discussion). Focusing onthe par of the circuit that fenerates 2, note that there are two path fom B to the inpuss Of the rightmost ANDegate. One path includes aa inverter and the other does not I we fx A a | (which isis value inthe scenario under consideration), and fb the lower input to the ‘ORegate—which comes from y—at 0 (which i might very well tbe during all but the very end of the scenario) then the circuit reduces to tha of Fig. 64. This is precisely the model forthe ‘atc I-hazard shown in Fig. 26. (Ofcourse ifthe ature ofthe fransient essential hazard was 10 produce negative glitch, then the dual cc, Fig La, fora sate O-hazard would apply) “The problem is also evident from an examination of the ex- pression for Z.(.e.. ABy). The A variable is fixed at 1, reduc- ing the expression t By, in which the B-term goes on while the yaerm goes oft ‘From the point of view of the K-map description of the Zefunetion Fig. 6), what "3 that a transition is ing from the point 100 49 T11. For this MIC transition, there ist function O-hazard. Bven though there is only a single input change 1 the overall sequential circu, the intemal stePrat. ie transition introduces a second variable change, namely y. It is waneiinetdence that the combinational hazard is a fenction RE_Ard, since. as the previous arguments have shown, the order Tr which the variables change determines whether or not a pulse is produced, which is in accordance with the definition fa function hazard, YV. SEQUENTIAL CiRcUTTS: [STEADY-STATE ESSENTIAL HAZARDS 'A mechanism very similar to that described in the previous section is responsible for a related type of hazard that can bring a circuit to the wrong stable state after certain transitions ‘The problem is illustrated in Fig. 7. A very simple sequential functon is specified by the flow table in Fig. 7a, where a ice fee state assignment is shown. Using this essignment, K-maps for Y, and Yq are produced in Fig, 7b (the output Z is not {ator in this situation). Logic expressions are: — GBH °— 6 ‘spate Fig. 7. Rxamle of teay-suteesental ard |A cireuit realization in standard form is shown in Fig. 7c ‘There are no race conditions (therefore no critical races) and all logic expressions are free of hazards for SIC operation. ‘Consider now what might happen when X is tumed on with the system initially in total state 1-0. According to the flow fable, the total state should change from 1-0 t0 1-1 (an unstable Sate}, and then the internal-stare should change, bringing the Syotem to 2-1. That is, following the input-state change, there ia an internal-state change. With the given state assignment, following the X-change, ¥2 should change. But suppose now that at the Yiterminal the X-change’ is perceived as having, ‘ocurred first. Then the system would appear to be ia state 2-0, Where ¥; is supposed to change to 1. The result would be & pulse at the Y,-terminal, which could cause the system to end tp in state 3-1, the wrong stable state. ‘The lopic circuit has been drawn in Fig. 7e to clarify the ‘imation. From this diagram, itis clear that there are two paths from Xt Y;_ One of these is through the inverer and the ‘AND-gate, while the other is through the Y> OR-gate and the ANDegate. With ys Inidally 0, the lower OR-gate acts 25 = ‘tire, and we have again the situation of complementary inputs being fed to an AND-gate, the concition for generating & tran- sient |-pulse. The situation is very similar to that shown in Fig 64 for the tamsient escential hazard, except that in this ‘case the glitch Is fed to the feedback circuit generating Y, instead of directly to the output. Thus, the glitch affects 1 just the output, but also the internal stabie state. Looking at the Capression for Yy. the problem clearly reveals itself With ¥, = 0, we have ¥; = Xyg, s0 that. when X and y, both go on. the components of the AND-expression change in opposite rections, thus opening the way for a spurious pulse to be generated fom the circuit point of view, the mechanisms for static combinational hazards and for both transient and steady-state Grsential hazards are the same: Signals changing in opposite ‘irections reach inputs ofa gate at abou! he same time. "This problem is inherent in the sequential function being realized. Such 2 steady-state essential hazard exists for any tamition in a SOC sequential function involving a change if fone input variable X if, stating in some siable state, a single Change in X is specified to bring the system to a different stax bie sate than the one specified after three changes of X. Ithas been shown {26] that there is no way to eliminate steady-state CSSential hazards by manipulating the state assignment or the ircat logie. The only colttion is to defeat the hazard by con trolling the relative delays along the critical paths. As is thi ‘cave of transient essenfial hazards, this can always be accom plished by a delay between the Y and y nodes of thy vevariable() that are supposed to change in the course of th Yramition. This ensures that the precipitating input change wil be perceived everywhere as having occurred before any resul ing internal variable changes. VIL. SeQueNTIAL CIRCUITS: DYNAMIC HAZARDS ‘Consider next the flow table of Fig. 8, There are no esser tial hazards in the function described. Its a simple mater | etive hazard-free SOP expressions for the internal varia ‘and for the output. These are: Y=ABc+Ay, Z= ABy+AGy. Fig. Flow able with rt astgnment hing Seqpetl Syma has ‘There are three paths from C10 Z: A diceet path with « inverter, corresponding to the Cin the ACy term of thy expression, and two uninverted paths through Y, bth throt fhe C in the ABC term of the Y expression, and then via ttppearances of y in each of the two terms of the Z express! ‘These constitute a dynamic hazard, since they are all sensit| wih AB | andy initially 0. The transition involved is ‘one starting in state 1-110 of the flow table, with C chant ffom 0 10 1 Ifthe path to the y-input fo the ANDrgate ret ing AGy has the shortest delay of the three paths, then Z 1no CRITICAL RACES, AND METASTARILITY. wo ine vent events that the change in C tums off the Gin erm ben Z goes ofT again, and remains off until the nets through 10 tum on Z via the ABY term, What shat uring. on C turns on Y., but the change i Se a int by the ACY AND-pne, which sees the sys- 3 sip and therefore goes on, This same gate then sees seo Shoe, thereby perceiving the system to be in 2-111, ae C
Vo + Va, then either there will be no metastablity or the MSS will have terminated, and P will quickly become 1 and Q will become 0. Transistor-n will be tamed on, allowing Ve to fall 1o the diode threshold voltage ss Ve, falls to 0, If metastability does occur, then while it lasts, [Vp = Vol will remain below the threshold values of both p and n, so that both transistors will remain cut off, leav- ‘ng Vi essentially constant at its initial value. A similar analy- 1 can be made of the situation where, i the initial state, P= | ‘and Q=0. Thus, as long as we do not allow the input sate A ~ B= |, this cireuit should eperate propery, preventing the con- ‘sequences of metastability from reaching the output Z. Note that care must be taken in specifying the electrical parameters, of the filter elements. It appears to be feasible to specify di- ‘odes on CMOS chips although this does not seem to be 8 ‘common practice. In any event, connecting the gate terminal of fan NMOS transistor to the drain terminal produces the anode ‘of a satisfactory diode, where the cathode is the source termi- nal. (A similar arrangement can of course be made with a PMOS transistor.) The operation of this filter, using such di- ‘des, has been verified by means of « SPICE simulation ‘An example of the application ofthis approach is the design of a D-latch, shown in Fig. 10. Even ifthe setup or hold time constraints for this latch are violated, which might lead to me ‘astability, no spurious output signals will occur at the ‘Q-ourput. The only effect of getting into a MSS is a delay st the output of uncertain duration. This does not solve the prob- lem for synchronous systems, but it does essentially defang rmetastability for selftimed systems, pe possible to 2 0F all asyn- | hoa Lpof ig. 1, Daten eh MSS ae VII. CRITICAL RACES ‘Consider the flow table of Fig. 11 (outputs are not shown as they play no role inthis discussion) 1f, starting in state 1-00, B ‘is tured on, then both state variables become unstable, 1, both Yi and Y; change (in this cate to 1), If), changes firs, then the state becomes 4-01. Since this is a stable state, the excitation for Y; reverts 10 0. Ifthe delay in the ys-branch i Inertial, then the ys-change is aborted and the system remains in 4-01, Ifthe delay i that branch is pure, then, eventually yz does change. But then, since Y; was 0 during the time that the system was in 401, ys revers later to 0, and s0 we have oseil- latory behavior between states 3.01 and 401. Iti also possi ble for a runt pulse to be generated, which might take the sys= tem into a metastable state. All of these outcomes must be fe= garded as faulty behav “The situation is characterized as a race condition, since sev= eral y-variables are simultaneously changing, values. It is a critical race, because the outcome is dependent on which yevariable “wins the race,” ie, changes fist As was just shown, ify; wins, then malfunctioning results. If ys wins, then the system goes to state 2-01, where the excitations on both Ys remain unchanged at 1, so that the correct final destination, state 3.01, will be reached. Ifthe race ends in a draw, then the system goes direcily to the correct final state Fig 11. Pow able wit ste assignment istraing critical ces, Clearly this is an undesirable situation. ‘There: are many ‘ways to generate state assignments for the flow table that are free of critical races [26]. Since these may entail an increase in ‘circuit complexity, we might first explore the possibilities of defeating the critical race for the given assignment. Several ‘approaches are possible. First, we might impose a one-sided delay constraint, requiring thatthe delays in the y,-branch ex- ‘ceed those in the ybranch so as to ensure that the system takes the path through 2-01, which leeds to the correct stable state. Or, we could change the next-state entry in 1-01 fom 3 to 2, so thatthe logie circuitry is altered to take the system to 2-01 First. This makes the transition a two-step process. The penalty is some slowdown in operation since there is now no ‘overlap of the time it takes to change the two state variables: they change in strictly sequential order. Because the problem for the transition discussed above is solvable by either of the two methods outlined above, without changing the state as- sigament, such a critical race is said to be removable. As is shown nest, not al critical races can be handled so easily. ‘Still referring to Fig. 11, suppose that, again starting in state 1-00, A is tuned on instead of B. Then, once more, both yovariables become unstable. We have another race condition, land it is ceruinly critical, since, if yy wins, the situation is,a Identical to the one considered previously: the system may fail nove of three ways. But nov, even ify» wins the mace, the Situation is essentially the same, since the Intermediate site is 2410, another rable sate. Only if both y-variables change ‘multancously would the system go te 3-10, the specified final ‘Sate. Neither of the solutions suggested for the previous « ample are applicable. This ertical race is not removable. Of ‘course, the overall problem is solvable, namely by changing the state assignment 10 one that is free of critieal races, but in this ease it would be necessary to use three state variables tig interesting to consider these situations from m circuit point of view, Logie expressions corresponding to the given State assignment are: yo AB+Ay) +BY +ABs, Ys By, + Bye + ABV + AB: For the removable critical race transition, where A is fixed at 0, these reduce to: Yi=B, Ye =¥2 +BY During this process, while Y> is a function of yy. Ys is inde- pendent of yz. The corresponding reduced circuit is shown in Fig. 12. (Delay elements are shown between each Y.signal ‘and the corresponding y-signal. These do not necessarily rep resent actual elements, but may simply designate inherent ‘iring delays.) Observe that y, changing 10 1 blocks ys from changing to 1. Delaying the change of ys sufficiently gives y; time to change and “lock up” the change via the feedback path ‘through the OR-gate ‘Note the resemblance to the corresponding circuit for steady-state essential hazard (Fig. 7d). In both circuits there fre two paths from the input variable to an AND-gate, one direct and uncomplemented, and the other, through ‘Yavariable and complemented. The output of the AND-gate feeds a second state variable. tn the essential hazard case, mal- functioning occurs (Le., the hazard is manifested) if pulse is teneraied at the output of the AND-gate. In the removable Critical race ease, the absence of a sufficiently long pulse at che ‘output of the AND-gate causes malfunetioning, since the sec- fond y-variable is supposed to be turned on and siay on. As indicated above, by making the delay between Y, and y, suf- ficiently long, an adequate I-pulse can be produced by the [AND-gate thereby ensuring correct operation. In both cases, if the logic controlling the second state variable reacts to the change in the first y-variable before reacting to the input Change that caused that change, then improper behavior results (spurious y-change in the case ofthe essential hazard, and a failure to change in the case of the critical race). Delaying the ‘change in the first y-variable by a sufficiently large amount is ths a remedy in beth eases. “The situation is a bit more complex with respect to nonre- ‘movable critical races. For the second critical race discussed above, B remains fixed at O and A changes from 0 to 1. The logic expressions are reducible 1: AY HAT: = Als +¥e) Yo=ve+AVs ae * ope {*] 4 ep Fig. 12, Redwed crest fr aremovable ctl ae seuion “The corresponding reduced circuit is shown in Fig. 13. Here ‘we sce that, as in the case of Fig. 12, there isan inverted and an Iminverted path ftom the input A to AND-gate-S in the circuit generating Y, the former path passing through ys. But there is ‘hse feedback from y; tothe ekcuit generating Y, and there are ‘hwo paths from A to AND-gate-1 inthe Y, eieuit! one direct and uncomplemented, the other complemented via ys Pea mae Thy 3. Rediced crcl for anonremovable rial ce itoation. As in the previous case, yy changing to | blocks ys ftom ‘changing 10 1. But now, the converse is also true, ie, yo chang ingto | blocks y,ffom changing to |. Therefore delaying the Y\ change, which solved the problem for the removable critical ‘ce, will not work here because it dove not solve the converse ‘problems; once 3 goes on, it prevents y; from turing on. However, this analysis does point to a solution. What mat- ‘ters is not when each of the y-signals actually changes. but ‘when the circuit generating the other y sees che effect of the Change, Thus, ifthe news of the y, change is ‘ror reeching the ¥, eireut until ys has already changed and thet ‘change has been locked up, and, conversely, ifthe news of the Ys change ix prevented ftom reaching the y; circuit until the Yi-shange has already been locked up, then correct operation ‘ll be ensured, The key is 10 delay not the generation of the Y-signals, but the propagation of those signals to the other ¥- Signal involved in the race, No effort need be made to fix" the race, only to delay the reporting of the results to specific points. In the current example (referring to the logic expres ions for Y; and ¥3) a delayed version of ¥, can be used 10 [produce the Yq term in the ¥y expression, and a delayed ver~ sion of y, woul be used to preduce the J, term in the Ys ex pression. Specifically, in teams of the circuit . ys will become Stable at the correct value if the delay in the path from A. through AND-gate-1, delay-2 to the input of OR-gate-3 is less than the delay in the path ffom A through AND-gate-5, OR- gate-s, delay-7, INVERTERS, to the input of OR-gate-3. Let- ting & represent the delay in branch i, and assuming wiring delays are included with the associated gate delays, this leads,tothe constrain: dh da < ds dy 4s dy oF > (di 49 + (4s dd oy {in a similar manner, ys is guaranteed to stabilize at the specified value if the delay from A on the path through gste-5, ‘gate-6, and delay-7 to the input of gate-6 is less than the delay from A through gate-1, delay-2, INVERTER-4, and gate-3 10 the input of gate-6. This generates: det det dy
y= 41) + (yd) o (Note that the cancelling out of the ds terms would not occur if ‘we were distinguishing between the delays in transmitting sig- ‘al changes of opposite polarities.) The right hand sides of (4) and (5) specify how much we must delay the y> signal to Ys fand the y; signal to Y, respectively. Clearly there is no con flict between these constrains, as dy appears only in (5) and dy appears only in (4) Returning to the flow matrix (Fig. 11) the process can be ‘©camined ffom another viewpoint. Starting ia state 1-10, both Y,and Y; change to 1. Ify, changes fist, the danger is that Y; ‘will see that change, fe, s8e the system in 4-10, Since Y; = 0 {in 4-10, the change in ysis thereby blocked. But, if ¥»s2¢3 the ‘Ys change occur frst, it sees the system in 2-10, where Y>~ |, 430 that there is no problem. Similarly, if ¥, sces the transition as going from I-10 to 4-10 (ie, if it sees y; change first, it {too will continue « stay at the correct valve and the overall ‘operation will be as specified, Unfortunately, this method does not work: for all critical race situations. The flow table in Fig. 14 is a medified version Of the Fig. 1| table im thatthe next-state entry in state 2-01 is 4 instead of 3. Now there are two critical races inthe O1 column: fom 1 19 3 and from 2 to 4. Consider the first of these, where y, and y2 are both supposed to change from 0 to 1. The technique pre= sented above fails because in boch of the intermediate states, ‘Yan 0. We could however defeat this race by delaying the ¥; and Yo signals to Y (with respect to the y1 and ys signals) in the reduced expression forthe O1-column shown below: Wat Ye=Wetyye But for the race from 2 to 4, different constraints are re= ‘quired, namely that the y, and Ye signals be delayed. It does ‘ot appear possible to defeat both races simultaneously with ‘one-sided delay constrains. The above results can be generalized to races involving ‘more than two variables. A careful inspection of the flow ma- trix is necessary (0 determine if delaying the propagation of ‘signals (0 circuits generating other y-signals will ensure cor- ‘ect excitations forall transitions. This will always be the case {or flow table columns with only one unstable sate, regardless ‘of how many y-variables are contestants in the race, IX. SIMULATION AND TIMING PROBLEMS Suppose a circuit has been designed that is believed to be free of the kinds of problems addressed here. Before proceed: ing to the fabrication stage, itis generally considered wise ‘verify this by carrying out a series Of tests with «simulltor that ean deal with timing as well as logic. This would be done by repeatedly applying to the simulated system a set of tests cal~ enlated to check out its behavior in a reasonably thorough ‘manner. Ifthe circuit is not too complex, the test set might be designed to cause the execution of each transition in the flow table describing the desired circuit behavior. Each repetition of the test sot would be carried oxt with a different combination ‘of values for the delays in the various branches, Its generally assumed that upper and lower bounds are available for the ‘delays in each branch. How should the delay configurations be ‘chosen for each run through the test set? ‘Clearly, since each branch delay lies somewhere ina con tinuous range, it isnot even theoretically possible to text forall possible delay values in even one of the circuit branches. An approach that seems plausible is to try all combinations of ‘branch delays in which either the maximum or minimum delay is assigned fo each branch. For a large circuit this would be a formidable task, since, if there are branches, the test set ‘would have to be applied 2" times. (If we allow both pure and Inertial delays in our model for each branch or allow different ‘delay values depending on whether the branch outpat is ine creasing or decreasing, then the exponent would have 1 be lied by 2 oF 4, compounding the problem significantly.) Itis ebvious that this approach would be feasible only for cle- ‘cuits of modest size. But the situation is even worse than it ‘ould appear from this analysis. At first it might seem as though if citeut worked property when, with all other delays fixed, d, the delay in branch i were 44, of du, then it would slso work properly for any other value fd between dy and dy. Thus ifthe above described series of tests were actualy carried out, we could be sure thatthe circuit ‘would have no timing problems as Jong as the branch delay vvalues were confined to the given ranges (and, of course, as- suming that our general model was realistic). But consider now the result presented in Seetion II] above with respect to dj- namic hazards. It was shown that a dynamic hazard (of any subclass) could be defeated if the delays along a particular path, py ether exceeded the delays in each of two other paths, ‘rand ps, or was exceeded by the delays in each of these other ‘wo paths. Suppose now that the branch | is in py and that, ‘when ds in the neighborhood of its maximum value, the total ‘delay in py exceeds the delays in both p> and p,, and tha, when ‘is in the neighborhood of its minimam value, the total delay inp) is less than the delays in both p: and pp. Then the circuit ‘would work properly with dy at either its maximum or mini=mum valve, but the dymamic hazard would be manifested for mam range of vale of contained within the bounds defined Sy sand dy that satisfied neither requirement. Thu, it isnot {ficient to simulate using only maximam and minimum val- tes of branch delays. “An important consequence of this results that, while simat- lacion may be a useful tool for cheeking out circuits, we cannot rely om i 10 expose all timing problems. Iti necessary to un- ‘derstand the various cases of ming falures and to take ex- plicit steps to elimina, defeat, or cope with all hazards, erii- al races or metastable state conditions, For each transition Sssoeinted with a problem condition, itis necessary to iemtify various ertcal paths and to ensure thatthe total delays along ‘hove paths are propery related to one another. X. PURE AND INERTIAL DELAYS. 1 i assumed here that all signals are strictly binary, ie. 2-yalued. A pure delay does nothing more 1 x signal than de- {ay itby the magnitade ofthe delay. It does not alter the wave form. An ideal inertial delay of magnitude D does not respond to any input change of duration less than D, and its response is layed by D. Ths a inertial delay element suppresses posi tive or negative pulses whose widths ae Jess than D, and oth- ‘cowise behaves inthe same way as a pure delay. Neither tye Of delay can be realized physically in an exact manner. Even for close approximations fo Ideal inertial delays, rouble occurs ‘with pulses whose widths are elose to the value of D. The Out- puts in sch eases may be runt pulses. Assume forthe purposes ‘f our present discussion, that sch pulses do not occur. fm the preceding material dealing with the generation of altches associated with hazards of various types, the simplest ‘Esumption about the cieult delays is that they are pure. however, we assume that sme or all ofthe delays are inertial then, while the mecianism for glitch generation would not be changed, there would be situations in which glitches would be filtered out by inertial delays in subsequent stages of fie. ‘One might be tempted to infer fom this that replacing pare lays with inertial delays can only eliminate malfumetions due te hazards, never easing additional manifenations of hazards “This inference sot valid. “The difficulty i that sieuations can exist in which glitches ‘can cancel out ther glitches, If am inertia delay fiters outa flitch that cancels another glitch, the result can be an output iMunetion or a runition to an incorrect intemal state. Such a ‘Situation is hatrated in Fig. 1S. "Assure delays: y= 9, da~ 7, y= 5, da~ ts ds ™ 5, 1-16 the delays ae all put, ther, following a change of X fom 0 t0 1 lat 0, Ohazard fe manifested at the output ofthe AND-gate Staring at t= | and ending at t= 5. Tati, a pals of with 4 “tppears atthe point pin the circuit at ~ 1, It is delayed by branch delay dy 30 that ft bonis at t= 6 a the Jowest input 10 the OR-gate. If the signal q were fixed at 0, then a t-hazard \would be manifested at point, dhe outpat ofthe OR-gat in the form of a negative pulse of width 2 beginning att = 7, Observe fhow hat the L-pulse at q overlaps the O-pulse completely, 30 the the signal att remains fied tI s does the circuit ovtpat 2. ;b—* he Fi 15. eampe emt crete ‘Thus all the delays ae pure, no hazard is manifested atthe circuit output. ‘But now suppose that dy, the branch delay between p and, is changed from a pure £o an inertial delay (with the sume ‘magnitude, ramely 5). Then the glitch produced by the com flicking inpats tothe AND-gate, which is of width 4, is Htered fou by dy The q-input tothe OR-gate remains fixed at 0, and So the |-bazard produced by the OR-gate is manifested at a8 {2 O-puls of width 2. I is tansmited to Z with a delay of one ‘nit of time. "Thus, changing a pure delay inthe circit to an inertial de- lay introduces an ouspat plich that was not previously preset. (Rote tht the result would have been the same if al! of the elays were made inertial) It follows then that, for an overall ‘eat, changing pure delays to inertial delays may somtimes Ineroduce faulty skgals not previously generated. XL. CONCLUSIONS ‘Timing problems in logic ciceuits are generally caused by diferent inpat signals to-2 gate changing in oppesite
You might also like
Sdic 2marks (Q & A) (Unit 3)
PDF
No ratings yet
Sdic 2marks (Q & A) (Unit 3)
2 pages
Analysis and Design of Asynchronous Sequential Circuits
PDF
No ratings yet
Analysis and Design of Asynchronous Sequential Circuits
30 pages
Analysis and Design of Asynchronous Sequential Circuits
PDF
No ratings yet
Analysis and Design of Asynchronous Sequential Circuits
31 pages
Kohavi
PDF
No ratings yet
Kohavi
31 pages
DE Unit 4 Notes
PDF
No ratings yet
DE Unit 4 Notes
13 pages
unit 4 dld
PDF
No ratings yet
unit 4 dld
27 pages
04 Design in Hazard States PDF
PDF
No ratings yet
04 Design in Hazard States PDF
43 pages
Glitch and Harzard in Digital Circuit
PDF
No ratings yet
Glitch and Harzard in Digital Circuit
6 pages
Lecture Material DSD PDF
PDF
No ratings yet
Lecture Material DSD PDF
171 pages
Propagation Delay
PDF
No ratings yet
Propagation Delay
11 pages
Ee6301 DLC Eee Iiist Au Unit IV
PDF
No ratings yet
Ee6301 DLC Eee Iiist Au Unit IV
15 pages
Hazard and Glitches
PDF
No ratings yet
Hazard and Glitches
22 pages
Asynchronous Sequential Circuits
PDF
No ratings yet
Asynchronous Sequential Circuits
35 pages
Chapter Hazard
PDF
No ratings yet
Chapter Hazard
44 pages
Thermodynamics. Short Formulas
PDF
No ratings yet
Thermodynamics. Short Formulas
16 pages
Lecture #31 Flip-Flops, Clocks, Timing: - Last Lecture: - This Lecture
PDF
No ratings yet
Lecture #31 Flip-Flops, Clocks, Timing: - Last Lecture: - This Lecture
35 pages
Unit2 Topic7 Hazards
PDF
No ratings yet
Unit2 Topic7 Hazards
13 pages
timing issues in digital circuits
PDF
No ratings yet
timing issues in digital circuits
105 pages
Unit 4 Asynchronous Sequential Notes
PDF
No ratings yet
Unit 4 Asynchronous Sequential Notes
29 pages
18eet43 Digital Logic Circuits: P.Karthikeyan
PDF
No ratings yet
18eet43 Digital Logic Circuits: P.Karthikeyan
15 pages
Hazards in Combinational Circuits
PDF
No ratings yet
Hazards in Combinational Circuits
8 pages
Asynchronous Circuit
PDF
No ratings yet
Asynchronous Circuit
33 pages
Hazards in Combinational Logic
PDF
No ratings yet
Hazards in Combinational Logic
6 pages
Steady-State Behavior of Combinational Logic Circuits. That Is, They Predict A Circuit's Output As A
PDF
No ratings yet
Steady-State Behavior of Combinational Logic Circuits. That Is, They Predict A Circuit's Output As A
2 pages
DD Lecture 35 - 37
PDF
No ratings yet
DD Lecture 35 - 37
7 pages
Static 1 Hazard
PDF
No ratings yet
Static 1 Hazard
3 pages
Notes For Digital 3
PDF
No ratings yet
Notes For Digital 3
1 page
Solution DE Assignment 4
PDF
No ratings yet
Solution DE Assignment 4
5 pages
Unit Iv
PDF
No ratings yet
Unit Iv
66 pages
Lecture 52
PDF
No ratings yet
Lecture 52
11 pages
Module 2 - Combinational Logic Circuit Design
PDF
No ratings yet
Module 2 - Combinational Logic Circuit Design
124 pages
Unit 2
PDF
No ratings yet
Unit 2
88 pages
### What Is A Race Condition in Digital Design?
PDF
No ratings yet
### What Is A Race Condition in Digital Design?
5 pages
Ec 1201digital Electronics
PDF
No ratings yet
Ec 1201digital Electronics
13 pages
Asl in VHDL Impppppp
PDF
No ratings yet
Asl in VHDL Impppppp
11 pages
2.sequential Circuits
PDF
No ratings yet
2.sequential Circuits
170 pages
09 A Synchronous
PDF
No ratings yet
09 A Synchronous
18 pages
Async
PDF
No ratings yet
Async
63 pages
Asynchronous Sequential Logic - State Changes Occur
PDF
No ratings yet
Asynchronous Sequential Logic - State Changes Occur
14 pages
Hazards in Digital Logic and Switching
PDF
No ratings yet
Hazards in Digital Logic and Switching
18 pages
DPSD Unit 4 2marks
PDF
No ratings yet
DPSD Unit 4 2marks
4 pages
Slide Group2 - Power Consumption in CMOS Logic Gates
PDF
No ratings yet
Slide Group2 - Power Consumption in CMOS Logic Gates
19 pages
Unit 4
PDF
No ratings yet
Unit 4
4 pages
ceg3155Assignment4Solutions
PDF
No ratings yet
ceg3155Assignment4Solutions
12 pages
Timing+Hazard
PDF
No ratings yet
Timing+Hazard
5 pages
Fault-Tolerant Computing: Dealing With High-Level Impairments
PDF
No ratings yet
Fault-Tolerant Computing: Dealing With High-Level Impairments
19 pages
Hazards in Combinational Logic Circuits
PDF
No ratings yet
Hazards in Combinational Logic Circuits
6 pages
Lecture 6
PDF
No ratings yet
Lecture 6
22 pages
Ec 1201digital Electronics
PDF
No ratings yet
Ec 1201digital Electronics
58 pages
Esc201: Introducton To Electronics: Sequental Circuits
PDF
No ratings yet
Esc201: Introducton To Electronics: Sequental Circuits
34 pages
(Original PDF) Engineering System Design 2 (Custom Edition) (2e) download
PDF
100% (2)
(Original PDF) Engineering System Design 2 (Custom Edition) (2e) download
47 pages
Asynchronous Sequential Circuit Notes
PDF
67% (3)
Asynchronous Sequential Circuit Notes
15 pages
EECS 150 - Components and Design Techniques For Digital Systems
PDF
No ratings yet
EECS 150 - Components and Design Techniques For Digital Systems
41 pages
Sequential Synthesis: Combinational Logic
PDF
No ratings yet
Sequential Synthesis: Combinational Logic
35 pages
Supplement 4 - Asynchronous Sequential Circuit Concepts: ECE/Comp. Sci. 352 - Digital System Fundamentals
PDF
No ratings yet
Supplement 4 - Asynchronous Sequential Circuit Concepts: ECE/Comp. Sci. 352 - Digital System Fundamentals
18 pages
Topic 8: Sequential Circuits: Readings
PDF
No ratings yet
Topic 8: Sequential Circuits: Readings
5 pages
Glitches and Hazards[1][1]
PDF
No ratings yet
Glitches and Hazards[1][1]
6 pages
1-2 MATH (Habib Sir) (By Himel)
PDF
No ratings yet
1-2 MATH (Habib Sir) (By Himel)
23 pages
Saheb Bibi Golam by Bimal Mitra
PDF
No ratings yet
Saheb Bibi Golam by Bimal Mitra
435 pages
,GHKJHKJHL
PDF
No ratings yet
,GHKJHKJHL
63 pages
Mathematical Reasoning
PDF
No ratings yet
Mathematical Reasoning
33 pages
Number Theory - Applications
PDF
No ratings yet
Number Theory - Applications
126 pages
1-2 MATH (Mottalib Sir) (By Himel)
PDF
No ratings yet
1-2 MATH (Mottalib Sir) (By Himel)
47 pages
Trees
PDF
No ratings yet
Trees
10 pages
SR FF
PDF
No ratings yet
SR FF
6 pages
Recursive Definitions
PDF
No ratings yet
Recursive Definitions
18 pages
Lab 09 - RTTI, EH, NS
PDF
No ratings yet
Lab 09 - RTTI, EH, NS
15 pages
Lab 07
PDF
No ratings yet
Lab 07
7 pages
CSE 1203 Introduction To Sequential Circuits and FF
PDF
No ratings yet
CSE 1203 Introduction To Sequential Circuits and FF
27 pages
CSE 1203 Sequential Circuits (FFS)
PDF
No ratings yet
CSE 1203 Sequential Circuits (FFS)
35 pages
Lab 06
PDF
No ratings yet
Lab 06
6 pages
Universal NAND
PDF
No ratings yet
Universal NAND
16 pages
CSE 1203 Latches and FFs
PDF
No ratings yet
CSE 1203 Latches and FFs
32 pages
Universal NOR
PDF
No ratings yet
Universal NOR
17 pages
Chapter 31 35
PDF
No ratings yet
Chapter 31 35
100 pages
CSE 1203 State Reduction and Assignment
PDF
No ratings yet
CSE 1203 State Reduction and Assignment
41 pages
CSE 1203 Seq Design Example
PDF
No ratings yet
CSE 1203 Seq Design Example
39 pages
CSE 1203 Counters and Registers
PDF
No ratings yet
CSE 1203 Counters and Registers
33 pages
Student Solutions Manual For Elementary Differential Equations An
PDF
67% (3)
Student Solutions Manual For Elementary Differential Equations An
289 pages
Coordinate Geometry 3D-Bell
PDF
No ratings yet
Coordinate Geometry 3D-Bell
424 pages