DFT, of course stands for Design for Test
DFD then ought to stand for Design for Debug, good guess.
DFT is the ability to catch a failure in the chip during testing, were it to manifest itself on the chip. DFD is the ability to ID the root cause of the failure, once the failure has manifested itself. DFD is very important for deep submicron (DSM) designs because of vast variety of faults contained in DSM designs, that are not adequately covered by stuck-at-fault model, which is still the mainstay of the Test world.
For example, there’s nothing that can model a voltage sensitivity, whereby a part doesn’t work at some extremes of the operating voltage. Let’s talk about memory BIST (MBIST). Ability to BIST the memory arrays, and deal with all issues related to testing memories, is called DFT. If anyone wants more details on that, you can contact me separately.
Now let’s say that your MBIST is out and working on the actual chips in full swing, and 1 fine morning, some parts from some wafer from some lot decides to fails at low voltage. Your manager and some lean/mean six sigma black belts are kicking your rear end. What will you do now. The answer …….
Run like Hell.
Of course, i am just kidding. In this case. you need to be able to do the following:
- sanity check: shmoo, repeat and confirm the fail on multiple parts
- secure a part, confirm it fails at low volt and pass at high volt
- program MBIST to stop on 1st fail
- confirm that this new setting fails at low and pass at high voltage
- Then instruct mbist engine to print out fail memory block, address, data
- go to your design schematics, trace back the data path and the control signals to the previous scan cell/IO boundary.
- Work with the logic and circuit design teams to look at driver strengths, cell sizing, timing and possible cross-talk issues. Also consider sense-amp voltage sensitivities
- you may also need to do spice simulation.
In this whole process, the ability to execute steps #3, #4 is called DFD. If you are a fabless startup, and if tester timing/cost is an issue, you probably need to be able to cook the whole debug enchilada on lab stations, preferably through JTAG. Such an ability is also part of DFD.
By the way, if you can’t even do step #3, call me. CHeers,