Valid total parts number may be less than the total parts tested
Closed this issue · 6 comments
Hi Noonchen,
First of all, thanks for developing such tool and I just came across it and used it to view some STDF files.
I noticed that the final yield number is based on the (total parts failed)/(total parts tested), it's not necessary the case. The wafer factory may tell us that how many parts on each wafer are actually valid. In another software that I use, it is actually reporting the correct valid total parts which in turn have the actual yield rate.
I am unsure which fields in the STDF file indicate such information. I am wondering if you are interested to provide a fix.
Regards,
Wilson
@wilson-zgq Thanks for raising up this issue.
I do notice that some dies/DUTs in a STDF file may have been tested multiple times, and the statistics might contains duplicated entries.
However, there are two questions must be cleared before we can calculate the correct yield:
- How to tell wether the test data refer to a single DUT/die?
- What is the common sense in the industry to deal with the DUTs/dies that have multiple results?
I might have some clues for The 1st question, I may use the Part_ID or XY_Coord to check if it's a 'retest' dut/die.
But as for the 2nd question, not all the users have the same opinion. For instance, if a die tested twice and the results are Fail and Pass, should we ignore the Fail and treat it as Pass?
That's the reason why I'm calculating the yield in a most simple way.
I have created a poll for this issue https://github.com/noonchen/STDF-Viewer/discussions/102
@noonchen Thanks for looking into this. Unfortunately I don't have enough experience with STDF to answer the questions you have. I've only involved in reviewing some STDF files recently.
Some observations I had comparing other STDF viewer software
- Total dies tested on a wafer is not necessarily total 'valid' dies, the rest invalid dies probably mean that they are already defects during fabrication. e.g. if there are 1000 dies on a wafer, maybe only 950 are valid dies. Some other softwares were able to detect such information. So the "50 defects" should be excluded from the yield number. I found they label such dies as "superseded", I am not sure what that means.
- Out of the 950 dies, if 50 failed CP tests, then the total yield is 900/950 = 94.7%, I think currently your SW is reporting 900/1000 = 90%.
- For retest, it should only be done on previously failed dies (I think). If the die passed, then it should be treated as "pass".
I may be able to look at more STDF files in the future and can provide more information of what I found.
@wilson-zgq Thanks so much for the info! I can make some progress out of it.
Superseded means previous data should be ignored and replaced by the current data, and this happens when one die is tested multiple times, aka, the duplicate data, not "defects".
In V4.0.0
(still in dev), STDF-Viewer can detect superseded duts or dies, and those does not use in yield calculation.
For instance, total 10 duts, 5 pass, 2 failed, 3 superseded, the yield = 5 / (5 + 2) = 71.4%
fixed in v4.0.0 branch, closing