Patent ID: 7440319

Claim:
A non-volatile storage system, comprising: a plurality of non-volatile storage elements, said plurality of non-volatile storage elements include original data non-volatile storage elements and redundant non-volatile storage elements; one or more voltage generating circuits in communication with said plurality of non-volatile storage elements, said one or more voltage generating circuits provide verification voltages to said plurality of non-volatile storage elements during a common programming process for said plurality of non-volatile storage elements; a plurality of sensing circuits in communication with said plurality of non-volatile storage elements, said sensing circuits sense conditions of said plurality of non-volatile storage elements; a plurality of data processing circuits in communication with said sensing circuits; and a control circuit in communication with said one or more voltage generating circuits and said data processing circuits, said data processing circuits provide an indication to said control circuit as to whether said plurality of non-volatile storage elements have been properly programmed, said control circuit determines whether overlapping groups of said plurality of non-volatile storage elements each have less than a threshold number of non-volatile storage elements that are not properly programmed during said common programming process for said plurality of non-volatile storage elements, said groups are overlapping because each group includes non-volatile storage elements from another group, said control circuit calculates sums of non-volatile storage elements that have not been properly programmed for groups of said non-volatile storage elements, said sums each includes a number of original data non-volatile storage elements that have not been properly programmed for a respective group and a number of redundant non-volatile storage elements that have not been properly programmed, said control circuit compares each sum to a limit.