Memory apparatus and testing method thereof
AssigneeRealtek Semiconductor Corp.
InventorsJih-Nung Lee, Shuo-Fen Kuo, Chi-Feng Wu
Life of this patent
Estimating the term…
Abstract
A memory apparatus and a related testing method are provided in the present invention. The memory apparatus includes a memory and a testing module. The testing module includes an error recording unit for recording corresponding addresses of bit errors occurred in the memory. The testing module determines whether the memory has multi-bit error according to the addresses recorded in the error recording unit. The memory is an ECC memory.
Claims13
A memory apparatus, comprising:
- an error correction code (ECC) memory, comprising:
- a plurality of data storage blocks, each data storage block having a corresponding address and storing a plurality of data bits;
- a plurality of parity bit storage blocks, each parity bit storage block storing a plurality of parity bits;
- and
- an error correction code (ECC) logic circuit for correcting the data bits stored in the data storage blocks according to the parity bits;
- a testing module, coupled to the memory, the testing module comprising:
- a test pattern generator, for generating a test pattern to the memory;
- at least one testing unit, comprising:
- a first judgment circuit, for reading a first data bit and a second data bit of the memory, and for determining whether the first data bit and the second data bit have an error according to the test pattern, wherein the first data bit corresponds to a first address in the memory and the second data bit corresponds to a second address in the memory;
- an error recording unit, coupled to the first judgment circuit, for recording the first address when the first data bit has the error;
- a second judgment circuit, coupled to the error recording unit, for comparing the second address in the memory with the first address recorded in the error recording unit so as to determine whether the memory has multi-bit error;
- and
- a counter for counting a number of addresses corresponding to errors of the error recording unit so as to determine an error tolerance;
- wherein the testing module determines whether the memory has multi-bit error when the ECC logic circuit is disabled
- wherein the testing module performs a first test according to the plurality of data bits and the plurality of parity bits when the ECC logic circuit is enabled, and
- wherein the testing module performs a second test according to only the plurality of data bits when the ECC logic circuit is disabled.
A testing method for testing an error correction code (ECC) memory, the ECC memory comprising a plurality of data storage blocks and an ECC logic circuit for correcting the data bits stored in the data storage blocks, each data storage block having a corresponding address and storing a plurality of data bits, a plurality of parity bit storage blocks each storing a plurality of parity bits, the testing method comprising:
- performing a first test according to the plurality of data bits and the plurality of parity bits when the ECC logic circuit is enabled and generating a first testing result;
- performing a second test according to only the plurality of data bits when the ECC logic circuit is disabled and generating a second testing result, wherein performing the second test comprises:
- generating a test pattern to the ECC memory;
- reading a first data bit and a second data bit of the memory;
- determining whether the first data bit and the second data bit have an error according to the test pattern, wherein the first data bit is stored into a first address in the memory and the second data bit is stored into a second address in the memory;
- when the first data bit has the error, recording the first address into an error recording unit;
- comparing the second address in the memory with the first address recorded in the error recording unit, so as to determine whether the memory has multi-bit error;
- and
- counting a number of addresses corresponding to errors of the error recording unit so as to determine an error tolerance;
- and
- determining whether the ECC memory passes testing based on at least one of the first testing result and the second testing result.
A method for testing a memory comprising an error correction code (ECC) logic circuit for correcting data bits stored in the memory, a memory further comprising a plurality of parity bits, the method comprising:
- performing a first test according to the plurality of data bits and the plurality of parity bits when the ECC logic circuit is enabled and generating a first testing result;
- performing a second test according to only the plurality of data bits when the ECC logic circuit is disabled and generating a second testing result, wherein performing the second test comprises:
- generating a test pattern for a memory comprising a plurality of data storage blocks, wherein each data storage block has a corresponding address;
- reading a first data bit and a second data bit from the memory;
- determining whether an error exists corresponding to the first bit data and the second bit data based on the test pattern, wherein the first data bit is stored at a first address in the memory and the second data bit is stored at a second address in the memory;
- responsive to determination of an error corresponding to the first data bit, recording the first address into an error recording unit, the error recording unit including a plurality of valid bit fields for indicating validity of corresponding address fields and bit fields;
- comparing the second address in the memory with the first address recorded in the error recording unit to determine whether the memory has a multi-bit error;
- and
- determining that a memory test failure has occurred based on a counted number of addresses corresponding to errors of the error recording unit exceeding an error tolerance;
- determining whether the memory passes testing based on at least one of the first testing result and the second testing result.
Dependencies are inferred from the claim text.