Patent ID: 9128822
Filing Date: 2015-09-08
Classification: G06F

Abstract:
1. A method of performing a continuous page read operation on a NAND flash memory chip having a NAND flash memory array and a page buffer comprising a data register and a cache register, comprising: maintaining a look up table register on-chip with the NAND flash memory array, the look up table register storing one or more logical bad block addresses and one or more physical replacement block addresses corresponding to the logical bad block addresses; outputting data from a plurality of portions of the cache register, in succession and during each clock cycle of a continuously running clock, the data register being organized in a plurality of portions corresponding to the portions of the cache register; establishing a logical page address for accessing the NAND flash memory array, the logical page address comprising a logical block address portion; searching within the logical bad block addresses of the look up table register for a match between one of the logical bad block addresses and the logical block address portion; while outputting data from a first one of the cache register portions, transferring data to a second one of the cache register portions different than the first cache register portion from the corresponding portion of the data register; while outputting data from the first cache register portion and after the transferring step, performing an error-correction code (ECC) computation on the second cache register portion; while outputting data from the first cache register portion and after the transferring step, reading a page of data from the NAND flash memory array into the data register using the logical page address when the match is absent from the searching step, and using one of the physical replacement block addresses which corresponds to the one of the logical bad block addresses that matches the logical block address portion when the match is present in the searching step; and while outputting data from the second cache register portion, transferring data to one of the cache register portions other than the second cache register portion from the corresponding portion of the data register and performing an error-correction code (ECC) computation thereon; wherein the establishing step comprises incrementing the logical page address by one page, further comprising repeating the outputting step, the establishing step, the searching step, the transferring step, the performing step, the reading step, and the transferring and performing step across a block boundary.