Comparing flat ATPG and hierarchical tests
Ron Press, Mentor Graphics
EDN (August 19, 2013)
Hierarchical test is a methodology that lets you perform most of the DFT work at the block level instead of at the flattened top level of the design. It is not a new approach. In fact, I’ve seen hierarchical DFT methodologies for over 15 years. What is new is the amount of automation available for making blocks independently testable and the very useful ability to directly retarget the patterns from the block to the top level.
Traditional flat ATPG is simple because the automatic test pattern generation session is only performed on the single, final, netlist. Flat ATPG implies that the design is complete and the ATPG session is performed on the entire design at the same time as one “flat” view. However, for designs that are too big to perform flat ATPG, test engineers often turned to hierarchical DFT to manage compute resources and runtimes. The basic hierarchical DFT methodology involves designing cores with scan wrappers so that they can be tested independent of their context in the top-level design.
Then at the top level, the block is accessed in a test mode that routes all IC test ports to the block scan channels for ATPG and testing. This not only helps with compute resource memory but also improves the run time, since the blocks not being tested can be omitted from the design view used for ATPG of the block under test. In addition, hierarchical test lets you take into consideration the variations of pattern types, pattern counts, etc. between blocks.
Even hierarchical DFT without much automation support can give you over two times improvement in test application time. But now, newer automation capabilities have improved hierarchical test significantly, and make it an attractive option for many designs. New DFT tools can create graybox models of the blocks, which act as very small block images that can be used for top-level test rules checking and for interconnect test between the blocks.
![]() |
E-mail This Article | ![]() |
![]() |
Printer-Friendly Page |
|
Related Articles
- Reduce ATPG Simulation Failure Debug Time by Understanding and Editing SPF
- Creating SoC Integration Tests with Portable Stimulus and UVM Register Models
- Smart Tracking of SoC Verification Progress Using Synopsys' Hierarchical Verification Plan (HVP)
- Faster and Fewer Patterns with Breakthrough ATPG to the Rescue
- ATPG Challenges at Lower Technology Nodes
New Articles
- Why RISC-V is a viable option for safety-critical applications
- Dimensioning in 3D space: Object Volumetric Measurement by Leveraging Depth Camera-based Reconstruction on NVIDIA Edge devices
- What is JESD204B? Quick summary of the standard
- Post-Quantum Cryptography - Securing Semiconductors in a Post-Quantum World
- Analysis and Summary on Clock Generator Circuits and PLL Design
Most Popular
- System Verilog Assertions Simplified
- Enhancing VLSI Design Efficiency: Tackling Congestion and Shorts with Practical Approaches and PnR Tool (ICC2)
- System Verilog Macro: A Powerful Feature for Design Verification Projects
- Method for Booting ARM Based Multi-Core SoCs
- An Outline of the Semiconductor Chip Design Flow