Best Design Practices For DFT - EDN
Best Design Practices For DFT - EDN
Advertisement
< https://www.edn.com/>
Ad
Affordable 3D Design Software
1. Introduction
SoC sub-components (IPs) generally come from various sources – internal and external – and
with that it has become necessary that designers ensure the RTL is testable. If the RTL has
testability issues, test coverage goals can’t be met and the RTL needs to be modified, which
https://www.edn.com/best-design-practices-for-dft/ Page 1 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
means several iterations of synthesis, verification, and Automatic Test Pattern Generation
(ATPG).
Here we will discuss the basic design practices to ensure proper testability.
Advertisement
2. Clock Control
Advertisement
PARTNER CONTENT
https://www.edn.com/best-design-practices-for-dft/ Page 2 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
For all internally generated clocks a bypass should be provided. In case there is a requirement of
this clock, say we need PLL clock for at-speed testing, then a clock control logic should be added
on them.
Here the clock is generated by the output of a flop, since this generated clock is not directly
controllable by the ATPG tool, we need to add clock control logic.
It must be ensured that test clock frequency is always greater than or equal to the functional clock
frequency, so that we never end up under-testing a logic.
When clock is used as data in a design, then it must always be ensured that we use test mode
signal to gate this data path (i.e., clock to the data cone). Otherwise a race condition may result
that produces an inaccurate simulation results.
https://www.edn.com/best-design-practices-for-dft/ Page 3 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
3. Un-clocked latches
Static Timing Analysis (STA) team closes timing only on those sequential elements which are
clocked. If the enable/clock of the latch comes from the output of a flop, STA team doesn’t check
it for timing, which may lead to erroneous latching of the data. It will be caught either in simulation
or on silicon. This can be prevented if the enable of the latch is a valid clock (gated or ungated).
ATPG tools while generating patterns works on a zero delay type simulation model. Data is
sampled just before the clock edge, so from tool’s perspective, the output is always high during
pattern generation in this case.
https://www.edn.com/best-design-practices-for-dft/ Page 4 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
In simulation, due to skew in design between the data and clock we can have two scenarios, data
coming either early or late and in both such cases we will start getting fails.
https://www.edn.com/best-design-practices-for-dft/ Page 5 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
4. Reset Control
As discussed previously, clock and reset of a flop must be fully controllable. To achieve this, a
multiplexer is placed in the reset path as shown below. The first input of the multiplexer is the
functional reset as before. The second input is the DFT (test) controlled RESET and the select
line (test mode) is used by DFT to switch to the controlled reset in test mode.
The select signal (Reset Override) is not timed by the timing team, so any random skew in this
signal must not affect the state of any of the flops. If two or more such switching logics are
cascaded as shown, this may result in a glitch to the RESET pin of the flop which will corrupt its
state.
https://www.edn.com/best-design-practices-for-dft/ Page 6 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
Due to zero delay in ATPG, the select line M1 & M2 will toggle at the same time so the reset RST
is always high.
Due to interconnect delay, M2 makes a late transition than M1 resulting in a glitch at reset
resetting the flop.
https://www.edn.com/best-design-practices-for-dft/ Page 7 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
In order to solve the problem, only a single multiplexer should be used in the reset path.
As mentioned above, a multiplexer is added before the reset of a flop. During synthesis, this
multiplexer may be converted to complex gates (AOI – AND OR INVERT) as shown in figure 9(a).
https://www.edn.com/best-design-practices-for-dft/ Page 8 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
This scenario may result in a glitch at the reset of the flop leading to the false output.
To prevent the glitch, this multiplexer should be preserved using pragma in RTL so that the logic
is synthesized as a glitch-free multiplexer instead of any random AOI combination working as a
multiplexer.
A combinational logic (for example 2-input AND gate or a 2-input OR gate) having both its inputs
driven from same source with one being inverted will maintain the same constant output value
regardless of the state of the driving node, but the output will probably contain a glitch when the
driving node changes state.
Figure 10: Two input AND gate with common input sources
6. Combinational Loops
https://www.edn.com/best-design-practices-for-dft/ Page 9 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
When the output of a combination logic is fed back to one of its input, a combination loop is
formed. ATPG tool simulates the design assuming zero delay in combinational elements which
may result in undetermined output for one or more input combinations.
As shown above, the input combination (A, B, C) = (1, 0, 0) will create oscillations in the circuit.
To prevent this, the tool breaks the loop and models it as a TIEX block in the feedback path which
results in coverage loss. Therefore such loops should be avoided.
7. Analog Blocks
Special handling is required for all analog blocks during testing when working with ATPG tools.
Many analog blocks can have embedded digital logic and we should ensure that all this logic is
testable. The digital inputs/outputs of the analog block interface needs to fully controllable and
observable. At the same time analog inputs/outputs should be wrapped or safe-stated. There can
be requirements based on test cases to keep analog portion of the block in a low power state
(power down or sleep), along with its analog outputs either in high impedance state or driving a
constant value, so special care needs to be taken care in such cases via safe stating of the block.
SOC has voltage and temperature detection circuits built in them, to generate interrupts in case
either goes beyond the defined specification. During testing these signals need to be disabled or
masked, since there are multiple tests like Very Low Voltage (VLV) Test, High Voltage Stress Test,
etc., which will start showing fails if these interrupt signals are not masked.
https://www.edn.com/best-design-practices-for-dft/ Page 10 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
9. Conclusion
It is very important to make our designs DFT-friendly. The simple practices above can save much
design time, effort, and frustration. Hence, it is recommended that designers ensure that all of the
above design practices are followed.
Also see :
https://www.edn.com/best-design-practices-for-dft/ Page 11 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
LEAVE A REPLY
P R E V I O U S P O S T < H T T P S : / / W W W. E D N . C O M / H O W- P R E VA L E N T- A R E - A U TO M O T I V E -
S E N S O R - FA I L U R E S / >
N E X T P O S T < H T T P S : / / W W W. E D N . C O M / C I N E M A R T I N - TO - J O I N - N V I D I A - 2 X -
R E A LT I M E - 4 K - H E V C - H - 2 6 5 - E N C O D E R - W I T H - 1 0 0 X - FA S T E R - C O N V E R S I O N S / >
PARTNER CONTENT
https://www.edn.com/best-design-practices-for-dft/ Page 13 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
Ad
Advertisement
Recent Posts
https://www.edn.com/best-design-practices-for-dft/ Page 14 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
Archives
Select Month
Categories
Select Category
https://www.edn.com/best-design-practices-for-dft/ Page 15 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
PODCAST
13:01
Leveraging Safety
Processor Expertise to
Develop RISC-V Based
Automotive
Implementations
Search …
SEARCH
Recent Comments
bdipert on SLA batteries: More system form factors and lithium-based successors <
https://www.edn.com/best-design-practices-for-dft/ Page 16 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
https://www.edn.com/sla-batteries-more-system-form-factors-and-lithium-based-
successors/#comment-31961>
WSWoodward on Synthesize precision Dpot resistances that aren’t in the catalog <
https://www.edn.com/synthesize-precision-dpot-resistances-that-arent-in-the-catalog/#comment-
31960>
David Bell on Synthesize precision Dpot resistances that aren’t in the catalog <
https://www.edn.com/synthesize-precision-dpot-resistances-that-arent-in-the-catalog/#comment-
31959>
https://www.edn.com/best-design-practices-for-dft/ Page 17 of 18
Best design practices for DFT - EDN 9/8/24, 6:09 PM
A!ordable 3D
Design So"ware
ZW3D - ZWSOFT
Open
Advertisement
https://www.edn.com/best-design-practices-for-dft/ Page 18 of 18