next up previous contents index

[ENGN3213 Home]

Hazards

A glitch  is an unwanted short duration pulse. Such pulses can cause circuit malfunction, and so they are hazards.  

In combinational circuits, hazards are not so critical, but in sequential circuits glitches can initiate unwanted actions.

The following two types of hazards commonly occur in combinational circuits:

Hazards are caused by asymmetries in signal paths with different propagation delays.

As an example of a static hazard, consider the combinational logic circuit of Figure 32 for a function F.


  
Figure 32: Circuit with static hazard.
\begin{figure}
\begin{center}
\epsfig{file=images/diglogimg20.eps}\end{center}\end{figure}

The K-map is shown in Figure 33.


  
Figure 33: K-map for F.
\begin{figure}
\begin{center}
\epsfig{file=images/diglogimg21.eps}\end{center}\end{figure}

Now $F=X\overline{Y} + YZ$. Let's set X=Z=1. Then we have $F= 1\cdot \overline{Y} + Y \cdot 1 = 1$, for any value of Y ideally. Now consider a transition for Y from 1 to 0 - this will produce a glitch in F, because there will be a short time during which a=b=0 (these should be complementary). This is illustrated in Figure 34.


  
Figure 34: Static hazard.
\begin{figure}
\begin{center}
\epsfig{file=images/shazgl1.eps}\newline
\epsfig{file=images/shazgl2.eps}\end{center}\end{figure}

This hazard can be removed with the aid of a hazard cover.   This is achieved by doing an extra loop in the K-map which overlaps the existing loops in Figure 33; this is shown in Figure 35.

  
Figure 35: K-map for F with hazard cover.
\begin{figure}
\begin{center}
\epsfig{file=images/diglogimg22.eps}\end{center}\end{figure}

Algebraically, we are expressing F in the non-minimal form

\begin{displaymath}F=X\overline{Y} + YZ + XZ
\end{displaymath}

where XZ is the extra term corresponding to the hazard cover. This term is redundant logically, but has the effect of removing the glitch.


next up previous contents index

[ENGN3213 Home]

ANU Engineering - ENGN3213