Solving the DFT Logic Breakdown in Functional Engineering Change Orders
In traditional semiconductor design flows, performing a functional ECO often risks breaking Design for Test (DFT) structures. Standard automatic ECO tools frequently struggle because they lack a holistic understanding of DFT logic due to the DFT constraint in functional ECO.
For instance, in the following design, three registers are added and driven by 'clk', but the DFT tool added a clock multiplexer that switches between functional clock 'clk' and test clock 'test_clk'.
DFT tool inserted a MUX clock in the DFT netlist:
When DFT constraints are applied to a traditional automatic ECO tool, the tool might connect new flip-flops to the functional clock 'clk' instead of the MUX clock 'mux_clk', since they are logically equivalent under those constraints. This results in DFT DRC failures for the new flops and breaks the scan chain.
However, AI-Enabled ECO is fully aware of the DFT logic without needing explicit DFT constraints. Like a human engineer, the AI understands the CLOCK MUX architecture and the literal meaning of signals like test_mode and test_clock.
| Feature | Naive ECO Tool | AI-Enabled ECO Tool |
|---|---|---|
| Connectivity | Blindly connects to 'clk' net. | Selects controllable 'mux_clk' net. |
| DFT Constraint | Requires manual input/constraints. | Intuitively understands DFT logic. |
| Scan Chain | Broken/Uncontrollable. | Integrity Preserved. |
The advantage of GOF AI-enabled approach lies in its ability to "converse" between AI and GOF schematic engine. By tracing drivers and understanding the logic function of cells (e.g., recognizing a CLKMX2X4 as a clock MUX), the AI determines the correct insertion point to maintain controllability.
Y = ((S0*B)+((!S0)*A)); (Where S0 is test_mode)Based on the analysis, the AI generates a complete, DFT-aware ECO solution. It ensures all new registers (aen_d, cen_d, and ac_an_d) are driven by the mux_clk clock, which is the MUX output of functional and test clocks.