Patent ID: 7568139

Claim:
A method for determining a position of a blockage, B, in a scan chain, M, of N scan cells, wherein B is a number ranging from zero through N, wherein zero represents no blockage at all, and one is the first cell shifted out in a scan chain and N is the last cell shifted out in a scan chain, the method comprising the steps of: annotating a record for each scan cell with at least one of Z no fails, V all fails, T for toggling and S for stuck; determining that a scan chain is blocked if the last cell in the scan chain is annotated S, determining that a scan chain is not blocked if every cell in the scan chain is at least one of Z, V, and T, in which case B is set to zero, computing B as a number of consecutive cells from the first scan cell in a chain annotated at least one of Z, V, and T until encountering an initial scan cell annotated S; wherein a scan cell record for a scan cell is annotated to be toggling T if, in a plurality of test patterns shifted out of the scan chain, i) a number of low failures for the scan cell is less than a number of low strobes loaded into the scan cell for the test patterns, and ii) a number of high failures for the scan cell is less than a number of high strobes loaded into the scan cell for the test patterns, wherein the scan cell record is annotated to be stuck S if the number of low strobes is greater than zero and the number of low failures is equal to the number of low strobes and the number of high failures is equal to zero, wherein the scan cell record is annotated to be stuck S if the number of high strobes is greater than zero and the number of high failures is equal to the number of low strobes and the number of low failures is equal to zero, wherein the scan cell record is annotated to be zero Z if there are no failures, and wherein the scan cell record is annotated to be V if every strobe results in a failure.