ECE5505 Digital Test and Verification Notes Part II

This blog serves as the 2nd and last part for the class ECE5505 Digital Test and Verification.

D Flip Flop

Delay/Data flip flop: The flip flop remains in its current state until its receives a signal like clock that switches it to opposite state. The clock single required for the synchronous version of D flip flops but not for the asynchronous one.

ClockQ(n)D(n)Q(n+1)state
\uparrow\, \gg 0000hold
011reset
100reset
111hold
\overline{PR}\overline{CLR}CLKDQ\overline{Q}
01XX10
10XX01
00XXXX
11\uparrow110
11\uparrow001
110X
https://www.instructables.com/D-Flip-Flop-With-Preset-and-Clear/
Iterative Logic array
StepTime FrameProcedureoptimization
101️⃣ PI=PI+FF
2️⃣ PO=PO+FF
3️⃣ PODEM for PIs
reduce flip flop state vars
2\geqslant 11️⃣Propagate to actual PO
2️⃣ frame by frame
3️⃣ TG for frames \geqslant 1backwards
🛑states could be unjustifiable, find alternative
4️⃣Additional constraints on TF0
reduce propagate frame nums
delete illegal/unreachable states
3-1✴️input seq with FF states (x) to justify TF0
1️⃣ justify FF states at time frame 0
🛑states could be unjustifiable, find alternative
Deterministic Sequential ATPG

Sequential circuit with Drivability in addition to observability, controllability, drivability means drive to D or -D from g with respect to controllability.

S-Graph: vertices are FFs, edges, if acylic(not going back to itself), faulty state is always initializable, d_{seq}, num of FFs on the longest path in s-graph, non-FF fault in acyclic circuit has at most d_{seq}+1 vectors.

D algorithm – Combinational ATPG in DFT (VLSI)

extened backward implication

Extended Backward Implication1

forward implication: if all input values are known or one is controlling value, the output can be determined.

backward implication: calculate input implication by the output value.

if output=1, implicates all gate inputs are 1, add implications of setting these inputs to 1.

if ouput=0, implicates at least one of the input is 0, need to add implications of setting each of these inputs to 0 and then union to make sure at least one of inputs is 0. It is trying to constrain the implication than to conclude in case where implication to one input is 0 and implication to another input is 1. Perhaps this is because implication of only input to 0 cannot guarantee the output to be 0. Implications needs to be propagated through gates like deductive fault simulation.

\begin{aligned}
\underbrace{\text{FIRE}}_{\substack{\text{Fault Independent}\\ \text{REdundency Identification}}}&= 
        \underbrace{\{\text{S}_{a=0}\} \cap \{\text{S}_{a=1}\}}_{\substack{\color{blue}{\text{Faults that are untestable}}}}  & \\[4ex]
&=\{\underbrace{\overline{\text{EXCT}_{a=0}}}_{\substack{\text{unexcitable faults}\\\text{when } a=0}}\cup\underbrace{\overline{\text{PROP}_{a=0}}}_{\substack{\text{unpropagatable faults}\\\text{when } a=0}}\}\cap
\{\underbrace{\overline{\text{EXCT}_{a=1}}}_{\substack{\text{unexcitable faults}\\\text{when } a=1}}\cup\underbrace{\overline{\text{PROP}_{a=1}}}_{\substack{\text{unpropagatable faults}\\\text{when } a=1}}\}
\end{aligned}

Delay Path Fault

Gate TypeFault TypeNon-RobustRobust
AND\uparrow\color{gray}{01}\cdot \color{red}{x1}: \color{blue}{01}/\color{brown}{00}\color{gray}{01}\cdot \color{red}{x1}: \color{blue}{01}/\color{brown}{00}
AND\downarrow\color{gray}{10}\cdot\color{red}{x1}: \color{blue}{x0}/\color{brown}{x1}\color{gray}{10}\cdot\color{red}{11}: \color{blue}{10}/\color{brown}{11}
OR\uparrow\color{gray}{01}+\color{red}{x0}:\color{blue}{x1}/\color{brown}{x0}\color{gray}{01}+\color{red}{00}:\color{blue}{01}/\color{brown}{00}
OR\downarrow\color{gray}{10}+\color{red}{x0}:\color{blue}{10}/\color{brown}{11}\color{gray}{10}+\color{red}{x0}:\color{blue}{10}/\color{brown}{11}
equations means edge operation sequence:fault free/delayed faulty
  1. Zhao, J-K., Elizabeth M. Rudnick, and Janak H. Patel. “Static logic implication with application to redundancy identification.” In Proceedings. 15th IEEE VLSI Test Symposium (Cat. No. 97TB100125), pp. 288-293. IEEE, 1997.📁[]

Posted

in

by

Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

🧭