Patent ID: 7277345

Claim:
A method of refreshing rows of memory cells in a dynamic random access memory in which at least one memory cell in some of the rows may be unable to retain data bits during refresh, the method comprising: writing predetermined bits to the memory cells in a row of memory cells; refreshing the memory cells in the row during a refresh cycle; reading data bits from the memory cells in the row after the memory cells have been refreshed during the refresh cycle; determining if any of the read data bits differ from the corresponding data bits written to the memory cells in the row; if any of the read data bits differ from the corresponding data bits written to the memory cells in the row, refreshing the row of memory cells at a refresh rate that is faster than the rate that other rows of memory cells are refreshed, the refreshing of the row of memory cells at a refresh rate that is faster than the rate at which other rows of memory cells are refreshed comprising: recording a subset of bits of an address of each row in which any of the read data bits differ from the corresponding data bits written to the memory cells in the row, the subset containing bits of the row address less at least the most significant bit of the row address; generating refresh row addresses for each of the rows during a refresh cycle by generating periodically incrementing binary numbers used as respective refresh row addresses; refreshing each of the rows of memory cells as row addresses for the rows are generated; comparing each of the recorded subsets of bits with corresponding bits of each refresh row address as each refresh row address is generated; in the event of a match, refreshing the row of memory cells corresponding to the row address from which the matching subset of bits were obtained; and halting the incrementing of the binary numbers in the event one of the recorded subsets of bits matches corresponding bits of a refresh row address until after the row of memory cells corresponding to the row address from which the matching subset of bits were obtained has been refreshed.