US20150063045A1 - Device and method to perform a parallel memory test - Google Patents
Device and method to perform a parallel memory test Download PDFInfo
- Publication number
- US20150063045A1 US20150063045A1 US14/376,263 US201214376263A US2015063045A1 US 20150063045 A1 US20150063045 A1 US 20150063045A1 US 201214376263 A US201214376263 A US 201214376263A US 2015063045 A1 US2015063045 A1 US 2015063045A1
- Authority
- US
- United States
- Prior art keywords
- module
- modules
- memory
- output data
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims description 49
- 238000000034 method Methods 0.000 title claims description 33
- 239000004065 semiconductor Substances 0.000 claims abstract description 26
- 238000013524 data verification Methods 0.000 claims description 6
- 238000010998 test method Methods 0.000 claims description 3
- 238000012795 verification Methods 0.000 claims description 2
- 239000013256 coordination polymer Substances 0.000 description 18
- MJEMIOXXNCZZFK-UHFFFAOYSA-N ethylone Chemical compound CCNC(C)C(=O)C1=CC=C2OCOC2=C1 MJEMIOXXNCZZFK-UHFFFAOYSA-N 0.000 description 16
- 230000004044 response Effects 0.000 description 14
- 101100464782 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) CMP2 gene Proteins 0.000 description 7
- 101100464779 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) CNA1 gene Proteins 0.000 description 5
- 238000013507 mapping Methods 0.000 description 4
- PIGFYZPCRLYGLF-UHFFFAOYSA-N Aluminum nitride Chemical compound [Al]#N PIGFYZPCRLYGLF-UHFFFAOYSA-N 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
- G11C29/26—Accessing multiple arrays
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/14—Implementation of control logic, e.g. test mode decoders
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/48—Arrangements in static stores specially adapted for testing by means external to the store, e.g. using direct memory access [DMA] or using auxiliary access paths
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
- G11C29/26—Accessing multiple arrays
- G11C2029/2602—Concurrent test
Definitions
- the present invention relates to a semiconductor device comprising a plurality of memory modules, and configured to perform a parallel test of writing and reading data in the memory modules.
- the present invention also relates to a method of performing such a parallel test.
- a semiconductor device After fabrication, a semiconductor device is usually subjected to a test process comprising write/read/erase cycles of test data, such as all 0's, then all 1's, then alternating 0's and 1's, in memory cells of a memory module in order to identify faulty cells and modules.
- test data such as all 0's, then all 1's, then alternating 0's and 1's
- the device comprises a plurality of memory modules
- a serial test of one module after the other can be quite lengthy, depending on the number of cycles to be carried out, the number of modules, and the number of memory cells in the modules. Parallel testing of several modules at the same time has therefore been developed to speed up the test process.
- FIG. 1 shows a semiconductor device DV comprising a plurality of memory modules and configured to perform a parallel test along the lines of the teaching of U.S. Pat. No. 5,982,684.
- the device DV comprises a total of N memory modules MEMi, i being the module reference from 0 to N ⁇ 1, thus MEM 0 , MEM 1 , MEM 2 . . . MEM N-1 .
- the device DV further comprises write circuitry WCT and read circuitry RCT coupled to each module, a module decoder MDEC, an address bus AB, a data bus DB, an input data memory IDM, an output data multiplexor ODM, a first comparator CMP1, and a second comparator CMP2.
- Each memory module MEMi receives on input an address AD from the address bus AB, input data ID from the data bus DB, and a corresponding select signal SLi from the module decoder MDEC.
- the module decoder MDEC receives on input a parallel signal PS and a module signal MS, and supplies on output the select signals SLi (here SL 0 , SL 1 , SL 2 . . . SL N-1 ).
- Each memory module supplies output data ODi (here OD 0 , OD 1 , OD 2 , OD N-1 ) to the first comparator CMP1.
- Comparator CMP1 comprises a total of N ⁇ 1 first-level comparators CP i:i+1 (here CP 0:1 , CP 1:2 . . . CP 2:N-1 ), and one second-level comparator CP.
- Each first-level comparator receives the output data ODi on input from two consecutive memory modules, and supplies on output a comparison signal to the second-level comparator CP, which in turn supplies a first equal signal EQ 1 .
- the input data memory IDM is coupled to the data bus DB, receives and stores the input data ID, and supplies on output the input data ID to the second comparator CMP2.
- the output data multiplexor ODM is coupled to the N memory modules, transferring the output data ODi from one of the memory modules to the comparator CMP2 on output. Comparator CMP2 thus receives the input data ID from memory IDM and the output data ODi from the multiplexor ODM, and supplies on output a second equal signal EQ 2 .
- a parallel write is performed by setting the parallel signal PS to 1 (logic high value).
- the module decoder MDEC selects all N modules MEM 0 . . . MEM N-1 by means of select signals SL 0 . . . SL N-1 .
- the input data ID present on the data bus DB is written at the same address AD of all modules, and is also stored in the input data memory IDM.
- a parallel read is then performed by setting the signal PS to 1, or by keeping it at 1 if the parallel read is performed immediately after the write.
- the data stored in the memory cells indicated by the address AD of each module are read and supplied as output data ODi to the first comparator CMP1.
- Comparator CMP1 compares the output data from all the modules, and sets the first equal signal EQ 1 to 1 if the data are the same.
- the output data multiplexor ODM receives the output data ODi supplied by one of the memory modules MEMi, and transfers it to the second comparator CMP2.
- Comparator CMP2 compares the output data supplied by the multiplexor ODM with the input data ID supplied by the input data memory IDM, and sets the second equal signal EQ 2 to 1 if the input data ID and the output data ODi are the same.
- equal signals EQ 1 , EQ 2 are configured to indicate whether all the memory modules have the same data and whether the output data is correct.
- Embodiments of the invention relate to a semiconductor device comprising N memory modules, N being greater than or equal to three, each module comprising an array of memory cells arranged in rows and columns, a write circuit coupled to each module and configured to write data in the memory cells, a read circuit coupled to each module and configured to supply output data from the memory cells, a module selection circuit configured to individually select one memory module in a regular operation mode, and to collectively select two or more of the modules in a parallel mode, and a comparator circuit coupled to the N modules and configured to compare, in the parallel mode, the output data supplied by the N modules.
- the N memory modules comprise one module designated as the reference module and N ⁇ 1 modules designated as auxiliary modules, the comparator circuit is configured to compare the output data supplied by each auxiliary module with the output data supplied by the reference module, and the semiconductor device is configured to supply the output data from the reference module to a data verification means.
- the device further comprises a circuit configured to perform a cyclical redundancy check on the output data supplied by the reference module, and to supply a result to the data verification means.
- the verification means is built-in self test circuit coupled to the module selection circuit, the comparator circuit, and to the reference module.
- the comparator circuit further comprises means to enable and disable a comparison of output data supplied by an auxiliary module with the output data supplied by the reference module, depending on the status of a module select signal.
- At least two of the memory modules comprise different numbers of rows of memory cells, and the memory module comprising the greatest number of rows is designated as the reference array.
- the module selection circuit is configured to receive on input a parallel signal and an address signal, supply on output N module select signals, one signal per module, and deselect one or more select signals regardless of the parallel signal being set in a high logic state.
- Embodiments of the invention also relate to a method of testing N memory modules in parallel, N being greater than or equal to three, comprising the steps of writing an input data at an address in each of the memory modules, reading the data at the address of the modules to obtain output data, determining whether the output data from the modules are identical.
- the method further comprises the steps of designating one of the modules as the reference module and the N ⁇ 1 other modules as auxiliary modules, comparing the output data from each of the auxiliary modules being tested with the output data from the reference module, and supplying the output data from the reference module to a data verification means.
- the method comprises the steps of determining the largest memory module, and designating the largest memory module as the reference module.
- the method further comprises, during a parallel operation, the step of selecting a subset of at least two of the N memory modules according to an address belonging to a test space common to the subset of modules.
- FIG. 1 shows a conventional semiconductor device configured to perform parallel testing
- FIG. 2 shows a semiconductor device configured to perform parallel testing according to an embodiment of the invention
- FIG. 3 shows a portion of a semiconductor device configured to perform parallel testing according to another embodiment of the invention
- FIGS. 4A and 4B respectively show system address mapping and physical address mapping of memory modules
- FIG. 5 is a flowchart of a module selection process according to one embodiment of the invention.
- FIG. 6 is an output data comparator according to one embodiment of the invention.
- Embodiments of the invention relate to a semiconductor device comprising a plurality of memory modules and configured to perform a parallel testing of the memory modules, wherein one memory module is designated as a reference module and the other memory modules are designated as auxiliary modules.
- FIG. 2 shows a semiconductor device DV1 according to one embodiment of the invention.
- the device DV1 comprises a total of N memory modules MEMi, N being equal to at least three and i being the module reference number from 0 to N ⁇ 1, thus MEM 0 , MEM 1 , MEM 2 . . . MEM N-1 .
- Each memory module comprises an array of memory cells arranged in rows and columns.
- Module MEM 0 is designated as the reference module, and the N ⁇ 1 other modules MEM 1 . . . MEM N-1 are designated as the auxiliary modules.
- the semiconductor device DV1 further comprises write circuitry WCT and read circuitry RCT coupled to each module, a module decoder MDEC, an address bus AB, a data bus DB, and an output data comparator circuit CMP.
- Each memory module MEMi receives on input an address AD from the address bus AB, input data ID from the data bus DB, and a corresponding select signal SLi (SL 0 , SL 1 , SL 2 . . . SL N-1 ) from the module decoder MDEC.
- the module decoder MDEC receives on input a parallel signal PS and a module signal MS, and supplies on output the select signals SLi accordingly.
- Each memory module MEMi supplies output data ODi (here OD 0 , OD 1 , OD 2 . . . OD N-1 ) to the comparator CMP and to the data bus DB (connection of the output data to the bus not shown in FIG. 2 ) for regular operation of the semiconductor device.
- the comparator CMP comprises a total of N ⁇ 1 first-level comparators CP 0:1 , CP 0:2 . . . CP 0:N-1 , and one second-level comparator CP.
- the first-level comparators CP 0:1 , CP 0:2 . . . CP 0:N-1 each receive on one input the output data OD 0 from the reference memory module MEM 0 and on another input the output data OD 1 , OD 2 . . . OD N-1 from an auxiliary memory module MEM 1 , MEM 2 . . . MEM N-1 respectively.
- the comparators CP 0:1 , CP 0:2 . . . CP 0:N-1 each supply on output a comparison signal CS 1 , CS 2 . . . CS N-1 to the second-level comparator CP.
- the comparator CP supplies on output an equal signal EQ.
- the semiconductor device DV1 is further coupled to an automated test equipment ATE.
- the equipment ATE may be external to the device, such as a probe card and tester, or may be a built-in self-test circuit “BIST”.
- the equipment ATE receives on input the output data OD 0 supplied by the reference memory module MEM0 and the equal signal EQ supplied by the comparator CMP, and supplies on output the module signal MS, the parallel signal PS, the address AD, the test input data ID to the module decoder MDEC, the address bus AB, the data bus DB, and the write and read circuitry WCT, RCT.
- a control circuit may also be supplied through which the module decoder MDEC, address bus AB, data bus DB, and the write/read circuitry WCT, RCT are coupled to the automated test equipment ATE, and also controlling these elements during normal operation.
- a parallel write is performed by setting the parallel signal PS to 1 (logic high value).
- the module decoder MDEC selects all N modules MEM 0 . . . MEM N-1 by means of select signals SL 0 . . . SL N-1 .
- the input data ID on the data bus DB is written at the same address AD of all modules.
- a parallel read is then performed by setting (or keeping) the parallel signal to 1.
- the data stored in the memory cells indicated by the address AD of each module are read and supplied as output data ODi to the comparator CMP.
- Comparator CMP compares the output data from each of the auxiliary modules with the output data from the reference module.
- the equal signal EQ is set to 1 if the output data OD 1 . . . OD N-1 from all the auxiliary modules are equal to the output data OD 0 from the reference module. Meanwhile, the output data OD 0 from the reference module MEM0 is supplied to the automated test equipment ATE, which verifies the correctness of the output data.
- FIG. 3 shows a portion of a semiconductor device DV2 capable of performing parallel testing according to another embodiment of the invention.
- Device DV2 differs from device DV1 shown in FIG. 2 only in that a demultiplexor DMX is provided in the path of the output data OD 0 between the output of reference module MEM 0 and the equipment ATE.
- the demultiplexor DMX is controlled by a cyclical redundancy calculation enable signal CRS, supplied by the automated test equipment ATE or by a control circuit.
- Signal CRS directs the output data OD 0 either to a cyclical redundancy circuit CRC or directly to the automated test equipment ATE.
- the cyclical redundancy circuit CRC performs error checking before sending a cyclic redundancy result CRR to the automated equipment ATE. This embodiment is preferred when a serial output of the string of data OD 0 on a single port of the device is undesired, due to time constraints.
- the semiconductor device may comprise modules of different sizes, for example to optimize the layout of a large memory of an integrated circuit upon a semiconductor substrate.
- FIGS. 4A , 4 B respectively show a system address SA mapping and a physical address PA mapping of three memory modules MEM0′, MEM1′, MEM2′ of unequal sizes.
- the largest memory module, here module MEM0′ is designated as the reference module.
- the other memory modules MEM1′, MEM2′ are designated as the auxiliary modules.
- they are referenced in decreasing size, such that module MEM0′ is larger than module MEM1′, which is larger than module MEM2′.
- the memory modules MEM0′, MEM1′, MEM2′ are perceived by the device as being a continuous memory space, comprising a system start address SSA and a system end address SEA.
- Each module MEM0′, MEM1′, MEM2′ has a system end address SE0, SE1, SE2 respectively.
- test spaces TS0, TS01, TS012 of the physical modules are defined.
- Test space TS012 comprises the physical addresses common to all memory modules MEM0′, MEM1′, MEM2′
- test space TS01 comprises the physical addresses common to the memory modules MEM0′, MEM1′
- test space TS0 comprises the physical addresses unique to memory module MEM0′.
- the write and read of the test space TS0 is done individually for module MEM0′ since module MEM0′ was designated as the reference module, i.e. that having the greatest number of rows.
- the memory addresses are given in decimal format, but any known format for addressing memory space may be used.
- the semiconductor device comprises a total of 2000 memory cells, module MEM0′ comprising 1000 memory cells, module MEM1′ comprising 750 memory cells, and module MEM2′ comprising 250 memory cells.
- a total of 2000 addresses are allocated to the memory modules, from 000 to 1999.
- FIG. 5 is a flow chart of a memory module selection process for memory modules of unequal sizes, according to one embodiment, with the numerical values provided above in relation to FIGS. 4A and 4B .
- module MEM0′ was designated as the reference module, the addressing of its physical address space is used for parallel testing.
- the selection process comprises steps S 0 to S 13 .
- step S 0 the system address SA corresponding to the memory cells to be selected for write, read, or erase is sent on the address bus AB to the module decoder MDEC. The process then simultaneously proceeds to steps S 1 , S 4 , S 9 .
- step S 1 the module decoder determines whether address SA is less than or equal to the system end address SE0, thus SA ⁇ SE0 [SA ⁇ 999]. If the response is yes, the process proceeds to step S 2 in which a module MEM0′ select signal SL 0 ′ is set to 1 (logic high). If the response at step S 1 is no, the process proceeds to step S 3 in which the select signal SL 0 ′ is set to 0 (logic low).
- step S 4 the module decoder determines whether the system address SA is greater than the system end address SE0 and less than or equal to the system end address SE1, thus SE0 ⁇ SA ⁇ SE1 [999 ⁇ SA ⁇ 1749]. If the response is yes, the process proceeds to step S 5 in which a module MEM1′ select signal SL 1 ′ is set to 1. If the response at step S 4 is no, the process proceeds to step S 6 . In step S 6 , the physical address PA is determined, and it is determined whether the physical address is less than or equal to the physical end address PE1, thus PA ⁇ PE1 [PA ⁇ 749]. If the response is no, the process proceeds to step S 7 in which the select signal SL 1 ′ is set to 0.
- step S 6 determines whether the parallel signal PS is set to 1 (i.e. activated). If the response is yes, then the process goes to step S 5 in which the module MEM1′ select signal SL 1 ′ is set to 1. Otherwise, if the response at step S 6 is no, the process goes to step S 7 , and the select signal SL 1 ′ is set to 0.
- step S 9 the module decoder determines whether the system address SA is greater than the system end address SE1 and less than or equal to the system end address SE2, thus SE1 ⁇ SA ⁇ SE2 [1749 ⁇ SA ⁇ 1999]. If the response is yes, the process proceeds to step S 10 in which a module MEM2′ select signal SL 2 ′ is set to 1. If the response at step S 9 is no, the process proceeds to step S 11 . In step S 11 , the physical address PA is determined, and it is determined whether the physical address is less than or equal to the physical end address PE2, thus PA ⁇ PE2 [PA ⁇ 249]. If the response is no, the process proceeds to step S 12 in which the select signal SL 2 ′ is set to 0.
- step S 11 the process proceeds to step S 13 in which it is determined whether the parallel signal PS is set to 1. If the response is yes, then the process goes to step S 10 in which the select signal SL 2 ′ is set to 1. Otherwise, if the response at step S 13 is no, the process goes to step S 12 , and the module MEM2′ select signal SL 2 ′ is set to 0.
- the corresponding select signal is set to 1, regardless of the state of the parallel signal PS. If however the system address SA does not fall within the designated system range for an auxiliary module MEM1′, MEM2′, then the physical address PA is determined. If neither the system address SA nor the physical address PA fall within the designated system/physical ranges, the select signal is set to 0, regardless of the state of the parallel signal.
- the select signal is set to 1, selecting the module for a parallel operation along with the reference module MEM0′.
- the select signal is set to 0.
- FIG. 6 shows a comparator circuit CMP′ according to one embodiment.
- the comparator circuit CMP′ is suited for use with a semiconductor device comprising either memory modules of equal size, as shown in FIG. 2 , or comprising memory modules of unequal sizes, as shown in FIG. 4B .
- Comparator CMP′ receives on input the output data OD 0 . . . OD N-1 from each memory module and the select signals SL 1 . . . SL N-1 from the module decoder MDEC, and supplies on output a not equal signal NQ.
- the comparator CMP′ comprises a total of N ⁇ 1 first-level ‘exclusive or’ ‘XOR’ logic gates XG 1 , XG 2 . . . XG N-1 , a total of N ⁇ 1 AND logic gates AG 1 , AG 2 . . . AG N-1 , and one OR gate OG.
- Each XOR gate XG 1 . . . XG N-1 receives on one input the output data OD 0 from the reference memory module and on one input the output data OD 1 . . . OD N-1 respectively from one auxiliary memory module, and supplies on output a respective comparison signal CS 1 . . . CS N-1 .
- AG N-1 receives on one input the comparison signal CS 1 . . . CS N-1 from its corresponding XOR gate and on one input the corresponding select signal SL 1 . . . SL N-1 , and supplies on output an enabled comparison signal ECSi (ECS 1 , ECS 2 . . . ECS N-1 ) respectively.
- the OR gate OG receives on input the enabled comparison signals ECS 1 . . . ECS N-1 from each of the AND gates AG 1 . . . AG N-1 respectively and supplies on output the not equal signal NQ.
- the comparison signal CSi supplied by an XOR gate XG i is set to 1 if the output data from the auxiliary module does not match the output data from the reference module.
- the output of the AND gate AGi will therefore be set to 1 if both the output data are different and the auxiliary module is selected for parallel read.
- the enabled comparison signal ECSi is set to logic 0, which therefore has no effect on the evaluation of the output data from the other modules.
- the enabled comparison signal ECSi is also set to logic 0, which also has no effect on the evaluation of the output data from the other modules. For example, in the case of parallel testing of memory modules of different sizes or if one of the modules is corrupt, its select signal is set to 0 so as to not affect the not equal result supplied by the comparator CMP′.
- a parallel write is performed by setting the parallel signal PS to logic 1 (logic high value).
- the test input data ID is applied on the data bus DB and is presented to all the modules, but is only written in the modules selected by the module decoder MDEC.
- the module decoder MDEC selects modules MEM0′, MEM1′, MEM2′ by means of select signals SL 0 ′, SL 1 ′, SL 2 ′.
- the input data ID on the data bus DB is written at the same address AD of all modules.
- test space TS012 As the address increases, the data is written in the test space TS012 until the physical end address PE2 is reached, at which point the module decoder sets the select signal SL 2 ′ to 0, deselecting the module MEM2′. The process continues, writing data in the test space TS01, and setting select signal SL 1 ′ to 0 once the physical end address PE1 is reached. Finally, test space TS0 is written individually.
- a parallel read is then performed by setting (or keeping) the parallel signal to 1.
- the addresses of the physical space of module MEM0′ are cycled through, with the module decoder MDEC setting the select signals SLi to 0 once their physical ranges are no longer included.
- the data stored in the memory cells indicated by the address AD of each module are read and supplied as output data ODi to the comparator CMP′.
- the setting of the select signals to 0 by the module decoder also affects the comparison of the output data by the comparison circuit CMP′.
- the AND gates have their outputs set to 0, preventing any interference of the unequal memory sizes on the data comparison, that is to say, to prevent a false result of the not equal signal NQ.
- module decoder MDEC address bus AB, data bus DB, write circuit WCT, and read circuit RCT may be used to perform normal memory operations of writing, reading, and erasing of memory cells in the memory modules.
- the comparison circuit CMP and parallel signal PS may be disabled, or have their values ignored.
- the module selection process as set forth in relation to FIG. 5 and/or the comparison circuit CMP′ shown in FIG. 6 may be implemented with memory modules of equal sizes. For example, it may be desired to perform a parallel test on only a subset of the memory modules, in which case, the corresponding select signals are set to 1 as needed, enabling the modules and the comparison on output.
- the method of testing a semiconductor device according to the invention is susceptible of various implementation variations.
- the testing method as described above may be performed either before the semiconductor wafer is diced (singulated) into individual chips, or else performed on each individual chip after dicing.
- the memory modules may be located on separate supports, such as on separate semiconductor chips.
- the process may first determine whether the select signal SL 0 is to be set to 1, then whether signals SL 1 , SL 2 are to be set to 1 depending on the state of the parallel signal PS.
- the module selection process may first determine the state of the parallel signal, and then determine which module(s) is (are) to be selected, depending on the physical and system addresses. Individual selection of two or more non-continuous system memory modules out of the N available modules may also be provided, for example to compare the output data from modules MEM0′ and MEM2′ without comparing the output data from module MEM1′.
- the module decoder may further supply an address AD to all of the memory modules, along with the select signal SLi, in which case the memory modules are not linked to an address bus.
- signals and values may be reversed, for example “not equal” instead of “equal” signals, etc. depending upon the logic and logic gates employed.
- a semiconductor device according to the invention is susceptible of being integrated in portable devices, such as mobile phones, music players, etc., as well as any other device that may have multiple memory modules.
Landscapes
- Tests Of Electronic Circuits (AREA)
Abstract
Description
- The present invention relates to a semiconductor device comprising a plurality of memory modules, and configured to perform a parallel test of writing and reading data in the memory modules. The present invention also relates to a method of performing such a parallel test.
- After fabrication, a semiconductor device is usually subjected to a test process comprising write/read/erase cycles of test data, such as all 0's, then all 1's, then alternating 0's and 1's, in memory cells of a memory module in order to identify faulty cells and modules. Nevertheless, when the device comprises a plurality of memory modules, a serial test of one module after the other can be quite lengthy, depending on the number of cycles to be carried out, the number of modules, and the number of memory cells in the modules. Parallel testing of several modules at the same time has therefore been developed to speed up the test process.
-
FIG. 1 shows a semiconductor device DV comprising a plurality of memory modules and configured to perform a parallel test along the lines of the teaching of U.S. Pat. No. 5,982,684. The device DV comprises a total of N memory modules MEMi, i being the module reference from 0 to N−1, thus MEM0, MEM1, MEM2 . . . MEMN-1. The device DV further comprises write circuitry WCT and read circuitry RCT coupled to each module, a module decoder MDEC, an address bus AB, a data bus DB, an input data memory IDM, an output data multiplexor ODM, a first comparator CMP1, and a second comparator CMP2. - Each memory module MEMi receives on input an address AD from the address bus AB, input data ID from the data bus DB, and a corresponding select signal SLi from the module decoder MDEC. The module decoder MDEC receives on input a parallel signal PS and a module signal MS, and supplies on output the select signals SLi (here SL0, SL1, SL2 . . . SLN-1). Each memory module supplies output data ODi (here OD0, OD1, OD2, ODN-1) to the first comparator CMP1.
- Comparator CMP1 comprises a total of N−1 first-level comparators CPi:i+1 (here CP0:1, CP1:2 . . . CP2:N-1), and one second-level comparator CP. Each first-level comparator receives the output data ODi on input from two consecutive memory modules, and supplies on output a comparison signal to the second-level comparator CP, which in turn supplies a first equal signal EQ1.
- The input data memory IDM is coupled to the data bus DB, receives and stores the input data ID, and supplies on output the input data ID to the second comparator CMP2. The output data multiplexor ODM is coupled to the N memory modules, transferring the output data ODi from one of the memory modules to the comparator CMP2 on output. Comparator CMP2 thus receives the input data ID from memory IDM and the output data ODi from the multiplexor ODM, and supplies on output a second equal signal EQ2.
- During a parallel test mode, a parallel write is performed by setting the parallel signal PS to 1 (logic high value). The module decoder MDEC selects all N modules MEM0 . . . MEMN-1 by means of select signals SL0 . . . SLN-1. The input data ID present on the data bus DB is written at the same address AD of all modules, and is also stored in the input data memory IDM. A parallel read is then performed by setting the signal PS to 1, or by keeping it at 1 if the parallel read is performed immediately after the write. The data stored in the memory cells indicated by the address AD of each module are read and supplied as output data ODi to the first comparator CMP1. Comparator CMP1 compares the output data from all the modules, and sets the first equal signal EQ1 to 1 if the data are the same.
- Meanwhile, the output data multiplexor ODM receives the output data ODi supplied by one of the memory modules MEMi, and transfers it to the second comparator CMP2. Comparator CMP2 compares the output data supplied by the multiplexor ODM with the input data ID supplied by the input data memory IDM, and sets the second equal signal EQ2 to 1 if the input data ID and the output data ODi are the same. Thus, equal signals EQ1, EQ2 are configured to indicate whether all the memory modules have the same data and whether the output data is correct.
- Nevertheless, such a process allows only a limited amount of test data to be verified at a time, depending on the size of the input data memory IDM. Additionally, certain elements such as the input data memory IDM, the output data multiplexor ODM, and second comparator CMP2 are required only for the parallel test phase, and are unnecessary for the normal operation.
- It may therefore be desired to provide a semiconductor device configured to perform a parallel test with fewer constraints.
- Embodiments of the invention relate to a semiconductor device comprising N memory modules, N being greater than or equal to three, each module comprising an array of memory cells arranged in rows and columns, a write circuit coupled to each module and configured to write data in the memory cells, a read circuit coupled to each module and configured to supply output data from the memory cells, a module selection circuit configured to individually select one memory module in a regular operation mode, and to collectively select two or more of the modules in a parallel mode, and a comparator circuit coupled to the N modules and configured to compare, in the parallel mode, the output data supplied by the N modules. The N memory modules comprise one module designated as the reference module and N−1 modules designated as auxiliary modules, the comparator circuit is configured to compare the output data supplied by each auxiliary module with the output data supplied by the reference module, and the semiconductor device is configured to supply the output data from the reference module to a data verification means.
- According to one embodiment, the device further comprises a circuit configured to perform a cyclical redundancy check on the output data supplied by the reference module, and to supply a result to the data verification means.
- According to one embodiment, the verification means is built-in self test circuit coupled to the module selection circuit, the comparator circuit, and to the reference module.
- According to one embodiment, the comparator circuit further comprises means to enable and disable a comparison of output data supplied by an auxiliary module with the output data supplied by the reference module, depending on the status of a module select signal.
- According to one embodiment, at least two of the memory modules comprise different numbers of rows of memory cells, and the memory module comprising the greatest number of rows is designated as the reference array.
- According to one embodiment, the module selection circuit is configured to receive on input a parallel signal and an address signal, supply on output N module select signals, one signal per module, and deselect one or more select signals regardless of the parallel signal being set in a high logic state.
- Embodiments of the invention also relate to a method of testing N memory modules in parallel, N being greater than or equal to three, comprising the steps of writing an input data at an address in each of the memory modules, reading the data at the address of the modules to obtain output data, determining whether the output data from the modules are identical. The method further comprises the steps of designating one of the modules as the reference module and the N−1 other modules as auxiliary modules, comparing the output data from each of the auxiliary modules being tested with the output data from the reference module, and supplying the output data from the reference module to a data verification means.
- According to one embodiment, the method comprises the steps of determining the largest memory module, and designating the largest memory module as the reference module.
- According to one embodiment, the method further comprises, during a parallel operation, the step of selecting a subset of at least two of the N memory modules according to an address belonging to a test space common to the subset of modules.
- Embodiments of the present invention will now be described in connection with, but not limited to, the appended drawings in which:
-
FIG. 1 , previously described, shows a conventional semiconductor device configured to perform parallel testing, -
FIG. 2 shows a semiconductor device configured to perform parallel testing according to an embodiment of the invention, -
FIG. 3 shows a portion of a semiconductor device configured to perform parallel testing according to another embodiment of the invention, -
FIGS. 4A and 4B respectively show system address mapping and physical address mapping of memory modules, -
FIG. 5 is a flowchart of a module selection process according to one embodiment of the invention, and -
FIG. 6 is an output data comparator according to one embodiment of the invention. - Embodiments of the invention relate to a semiconductor device comprising a plurality of memory modules and configured to perform a parallel testing of the memory modules, wherein one memory module is designated as a reference module and the other memory modules are designated as auxiliary modules.
-
FIG. 2 shows a semiconductor device DV1 according to one embodiment of the invention. The device DV1 comprises a total of N memory modules MEMi, N being equal to at least three and i being the module reference number from 0 to N−1, thus MEM0, MEM1, MEM2 . . . MEMN-1. Each memory module comprises an array of memory cells arranged in rows and columns. Module MEM0 is designated as the reference module, and the N−1 other modules MEM1 . . . MEMN-1 are designated as the auxiliary modules. The semiconductor device DV1 further comprises write circuitry WCT and read circuitry RCT coupled to each module, a module decoder MDEC, an address bus AB, a data bus DB, and an output data comparator circuit CMP. - Each memory module MEMi receives on input an address AD from the address bus AB, input data ID from the data bus DB, and a corresponding select signal SLi (SL0, SL1, SL2 . . . SLN-1) from the module decoder MDEC. The module decoder MDEC receives on input a parallel signal PS and a module signal MS, and supplies on output the select signals SLi accordingly. Each memory module MEMi supplies output data ODi (here OD0, OD1, OD2 . . . ODN-1) to the comparator CMP and to the data bus DB (connection of the output data to the bus not shown in
FIG. 2 ) for regular operation of the semiconductor device. - The comparator CMP comprises a total of N−1 first-level comparators CP0:1, CP0:2 . . . CP0:N-1, and one second-level comparator CP. The first-level comparators CP0:1, CP0:2 . . . CP0:N-1 each receive on one input the output data OD0 from the reference memory module MEM0 and on another input the output data OD1, OD2 . . . ODN-1 from an auxiliary memory module MEM1, MEM2 . . . MEMN-1 respectively. The comparators CP0:1, CP0:2 . . . CP0:N-1 each supply on output a comparison signal CS1, CS2 . . . CSN-1 to the second-level comparator CP. In turn, the comparator CP supplies on output an equal signal EQ.
- The semiconductor device DV1 is further coupled to an automated test equipment ATE. The equipment ATE may be external to the device, such as a probe card and tester, or may be a built-in self-test circuit “BIST”. In one embodiment, the equipment ATE receives on input the output data OD0 supplied by the reference memory module MEM0 and the equal signal EQ supplied by the comparator CMP, and supplies on output the module signal MS, the parallel signal PS, the address AD, the test input data ID to the module decoder MDEC, the address bus AB, the data bus DB, and the write and read circuitry WCT, RCT.
- A control circuit may also be supplied through which the module decoder MDEC, address bus AB, data bus DB, and the write/read circuitry WCT, RCT are coupled to the automated test equipment ATE, and also controlling these elements during normal operation.
- During a parallel test mode, a parallel write is performed by setting the parallel signal PS to 1 (logic high value). The module decoder MDEC selects all N modules MEM0 . . . MEMN-1 by means of select signals SL0 . . . SLN-1. The input data ID on the data bus DB is written at the same address AD of all modules. A parallel read is then performed by setting (or keeping) the parallel signal to 1. The data stored in the memory cells indicated by the address AD of each module are read and supplied as output data ODi to the comparator CMP.
- Comparator CMP compares the output data from each of the auxiliary modules with the output data from the reference module. The equal signal EQ is set to 1 if the output data OD1 . . . ODN-1 from all the auxiliary modules are equal to the output data OD0 from the reference module. Meanwhile, the output data OD0 from the reference module MEM0 is supplied to the automated test equipment ATE, which verifies the correctness of the output data.
-
FIG. 3 shows a portion of a semiconductor device DV2 capable of performing parallel testing according to another embodiment of the invention. Device DV2 differs from device DV1 shown inFIG. 2 only in that a demultiplexor DMX is provided in the path of the output data OD0 between the output of reference module MEM0 and the equipment ATE. The demultiplexor DMX is controlled by a cyclical redundancy calculation enable signal CRS, supplied by the automated test equipment ATE or by a control circuit. Signal CRS directs the output data OD0 either to a cyclical redundancy circuit CRC or directly to the automated test equipment ATE. The cyclical redundancy circuit CRC performs error checking before sending a cyclic redundancy result CRR to the automated equipment ATE. This embodiment is preferred when a serial output of the string of data OD0 on a single port of the device is undesired, due to time constraints. - Conventionally, parallel testing of multiple memory modules has been limited to modules of the same size. Nevertheless, the semiconductor device may comprise modules of different sizes, for example to optimize the layout of a large memory of an integrated circuit upon a semiconductor substrate.
-
FIGS. 4A , 4B respectively show a system address SA mapping and a physical address PA mapping of three memory modules MEM0′, MEM1′, MEM2′ of unequal sizes. The largest memory module, here module MEM0′, is designated as the reference module. The other memory modules MEM1′, MEM2′ are designated as the auxiliary modules. Preferably but not essentially, they are referenced in decreasing size, such that module MEM0′ is larger than module MEM1′, which is larger than module MEM2′. - As shown in the system view in
FIG. 4A , the memory modules MEM0′, MEM1′, MEM2′ are perceived by the device as being a continuous memory space, comprising a system start address SSA and a system end address SEA. Each module MEM0′, MEM1′, MEM2′ has a system end address SE0, SE1, SE2 respectively. - As shown in the physical view in
FIG. 4B , the memory modules MEM0′, MEM1′, MEM2′ are physically non-continuous, and may be physically separated from each other. Each module MEM0′, MEM1′, MEM2′ has a physical end address PE0, PE1, PE2 respectively, and a same physical start address PSA. Furthermore, test spaces TS0, TS01, TS012 of the physical modules are defined. Test space TS012 comprises the physical addresses common to all memory modules MEM0′, MEM1′, MEM2′, test space TS01 comprises the physical addresses common to the memory modules MEM0′, MEM1′, and test space TS0 comprises the physical addresses unique to memory module MEM0′. The write and read of the test space TS0 is done individually for module MEM0′ since module MEM0′ was designated as the reference module, i.e. that having the greatest number of rows. - In the following, for ease of explanation, the memory addresses are given in decimal format, but any known format for addressing memory space may be used. As a numerical example, it is assumed that the semiconductor device comprises a total of 2000 memory cells, module MEM0′ comprising 1000 memory cells, module MEM1′ comprising 750 memory cells, and module MEM2′ comprising 250 memory cells. A total of 2000 addresses are allocated to the memory modules, from 000 to 1999. Memory module MEM0′ has a system address range from system start address SSA=000 to address SE0=999, module MEM1′ has a system address range from address 1000 to address SE1=1749, and module MEM2′ has a system address range from address 1750 to address SEA=SE2=1999.
- Memory module MEM0′ has a physical address range from the physical start address PSA=000 to address PE0=999, module MEM1′ has a physical address range from address PSA=000 to address PE1=749, and module MEM2′ has a physical address range from address PSA=000 to address PE2=249. Test space TS012 comprises the physical addresses from address PSA=000 to PE2=249 (common to all memory modules), test space TS01 comprises the addresses from 250 to PE1=749 (common to memory modules MEM0′, MEM1′ only), and test space TS0 comprises the addresses from 750 to PEA=PE0=999 (unique to memory module MEM0′).
-
FIG. 5 is a flow chart of a memory module selection process for memory modules of unequal sizes, according to one embodiment, with the numerical values provided above in relation toFIGS. 4A and 4B . As module MEM0′ was designated as the reference module, the addressing of its physical address space is used for parallel testing. - The selection process comprises steps S0 to S13.
- In step S0, the system address SA corresponding to the memory cells to be selected for write, read, or erase is sent on the address bus AB to the module decoder MDEC. The process then simultaneously proceeds to steps S1, S4, S9.
- In step S1, the module decoder determines whether address SA is less than or equal to the system end address SE0, thus SA≦SE0 [SA≦999]. If the response is yes, the process proceeds to step S2 in which a module MEM0′ select signal SL0′ is set to 1 (logic high). If the response at step S1 is no, the process proceeds to step S3 in which the select signal SL0′ is set to 0 (logic low).
- In step S4, the module decoder determines whether the system address SA is greater than the system end address SE0 and less than or equal to the system end address SE1, thus SE0<SA≦SE1 [999<SA≦1749]. If the response is yes, the process proceeds to step S5 in which a module MEM1′ select signal SL1′ is set to 1. If the response at step S4 is no, the process proceeds to step S6. In step S6, the physical address PA is determined, and it is determined whether the physical address is less than or equal to the physical end address PE1, thus PA≦PE1 [PA≦749]. If the response is no, the process proceeds to step S7 in which the select signal SL1′ is set to 0. Otherwise, if the response at step S6 is yes, the process proceeds to step S8 in which it is determined whether the parallel signal PS is set to 1 (i.e. activated). If the response is yes, then the process goes to step S5 in which the module MEM1′ select signal SL1′ is set to 1. Otherwise, if the response at step S6 is no, the process goes to step S7, and the select signal SL1′ is set to 0.
- Likewise, in step S9, the module decoder determines whether the system address SA is greater than the system end address SE1 and less than or equal to the system end address SE2, thus SE1<SA≦SE2 [1749<SA≦1999]. If the response is yes, the process proceeds to step S10 in which a module MEM2′ select signal SL2′ is set to 1. If the response at step S9 is no, the process proceeds to step S11. In step S11, the physical address PA is determined, and it is determined whether the physical address is less than or equal to the physical end address PE2, thus PA≦PE2 [PA≦249]. If the response is no, the process proceeds to step S12 in which the select signal SL2′ is set to 0. Otherwise, if the response at step S11 is yes, the process proceeds to step S13 in which it is determined whether the parallel signal PS is set to 1. If the response is yes, then the process goes to step S10 in which the select signal SL2′ is set to 1. Otherwise, if the response at step S13 is no, the process goes to step S12, and the module MEM2′ select signal SL2′ is set to 0.
- In summary, if the system address SA falls within the designated system range for any memory module MEM0′, MEM1′, MEM2′, then the corresponding select signal is set to 1, regardless of the state of the parallel signal PS. If however the system address SA does not fall within the designated system range for an auxiliary module MEM1′, MEM2′, then the physical address PA is determined. If neither the system address SA nor the physical address PA fall within the designated system/physical ranges, the select signal is set to 0, regardless of the state of the parallel signal.
- If however the physical address PA falls within the designated physical range for the auxiliary memory module MEM1′, MEM2′ and the parallel signal is set to 1, then the select signal is set to 1, selecting the module for a parallel operation along with the reference module MEM0′. On the other hand, if the physical address falls within the range designated for an auxiliary memory module MEM1′, MEM2′ but the parallel signal PS is set to 0, then the select signal is set to 0.
- system address SA=700, parallel signal PS=0. Signal SL0′ is set to 1, and signals SL1′, SL2′ are set to 0.
- system address SA=500, parallel signal PS=1. Signals SL0′, SL1′ are set to 1, and signal SL2′ is set to 0.
- system address SA=200, parallel signal PS=1. Signals SL0′, SL1′, SL2′ are set to 1.
-
FIG. 6 shows a comparator circuit CMP′ according to one embodiment. The comparator circuit CMP′ is suited for use with a semiconductor device comprising either memory modules of equal size, as shown inFIG. 2 , or comprising memory modules of unequal sizes, as shown inFIG. 4B . Comparator CMP′ receives on input the output data OD0 . . . ODN-1 from each memory module and the select signals SL1 . . . SLN-1 from the module decoder MDEC, and supplies on output a not equal signal NQ. - The comparator CMP′comprises a total of N−1 first-level ‘exclusive or’ ‘XOR’ logic gates XG1, XG2 . . . XGN-1, a total of N−1 AND logic gates AG1, AG2 . . . AGN-1, and one OR gate OG. Each XOR gate XG1 . . . XGN-1 receives on one input the output data OD0 from the reference memory module and on one input the output data OD1 . . . ODN-1 respectively from one auxiliary memory module, and supplies on output a respective comparison signal CS1 . . . CSN-1. Each AND logic gate AG1 . . . AGN-1 receives on one input the comparison signal CS1 . . . CSN-1 from its corresponding XOR gate and on one input the corresponding select signal SL1 . . . SLN-1, and supplies on output an enabled comparison signal ECSi (ECS1, ECS2 . . . ECSN-1) respectively. Finally, the OR gate OG receives on input the enabled comparison signals ECS1 . . . ECSN-1 from each of the AND gates AG1 . . . AGN-1 respectively and supplies on output the not equal signal NQ.
- In operation, the comparison signal CSi supplied by an XOR gate XGi is set to 1 if the output data from the auxiliary module does not match the output data from the reference module. The output of the AND gate AGi will therefore be set to 1 if both the output data are different and the auxiliary module is selected for parallel read. If however the output data are the same (logic 0), the enabled comparison signal ECSi is set to
logic 0, which therefore has no effect on the evaluation of the output data from the other modules. Moreover, if the data are not the same (logic 1) yet the select signal is set tologic 0, the enabled comparison signal ECSi is also set tologic 0, which also has no effect on the evaluation of the output data from the other modules. For example, in the case of parallel testing of memory modules of different sizes or if one of the modules is corrupt, its select signal is set to 0 so as to not affect the not equal result supplied by the comparator CMP′. - During a parallel test mode of uneven memory module sizes, a parallel write is performed by setting the parallel signal PS to logic 1 (logic high value). The test input data ID is applied on the data bus DB and is presented to all the modules, but is only written in the modules selected by the module decoder MDEC. The addressing of the memory space thus begins, based on the physical space of module MEM0′, starting at physical start address PSA=000. The module decoder MDEC selects modules MEM0′, MEM1′, MEM2′ by means of select signals SL0′, SL1′, SL2′. The input data ID on the data bus DB is written at the same address AD of all modules. As the address increases, the data is written in the test space TS012 until the physical end address PE2 is reached, at which point the module decoder sets the select signal SL2′ to 0, deselecting the module MEM2′. The process continues, writing data in the test space TS01, and setting select signal SL1′ to 0 once the physical end address PE1 is reached. Finally, test space TS0 is written individually.
- A parallel read is then performed by setting (or keeping) the parallel signal to 1. As before, the addresses of the physical space of module MEM0′ are cycled through, with the module decoder MDEC setting the select signals SLi to 0 once their physical ranges are no longer included. The data stored in the memory cells indicated by the address AD of each module are read and supplied as output data ODi to the comparator CMP′. The setting of the select signals to 0 by the module decoder also affects the comparison of the output data by the comparison circuit CMP′. The AND gates have their outputs set to 0, preventing any interference of the unequal memory sizes on the data comparison, that is to say, to prevent a false result of the not equal signal NQ.
- The skilled person will understand that the module decoder MDEC, address bus AB, data bus DB, write circuit WCT, and read circuit RCT may be used to perform normal memory operations of writing, reading, and erasing of memory cells in the memory modules. During a normal operation, the comparison circuit CMP and parallel signal PS may be disabled, or have their values ignored.
- Furthermore, the module selection process as set forth in relation to
FIG. 5 and/or the comparison circuit CMP′ shown inFIG. 6 may be implemented with memory modules of equal sizes. For example, it may be desired to perform a parallel test on only a subset of the memory modules, in which case, the corresponding select signals are set to 1 as needed, enabling the modules and the comparison on output. - It will further be understood by the skilled person that the method of testing a semiconductor device according to the invention is susceptible of various implementation variations. For example, the testing method as described above may be performed either before the semiconductor wafer is diced (singulated) into individual chips, or else performed on each individual chip after dicing.
- Other physical implementations may also be envisaged. For example, the memory modules may be located on separate supports, such as on separate semiconductor chips.
- Furthermore, it will be understood by the skilled person that other methods of module decoding other than that shown in
FIG. 5 may be provided. For example, instead of simultaneous steps S1, S4, S9, the process may first determine whether the select signal SL0 is to be set to 1, then whether signals SL1, SL2 are to be set to 1 depending on the state of the parallel signal PS. Alternatively, the module selection process may first determine the state of the parallel signal, and then determine which module(s) is (are) to be selected, depending on the physical and system addresses. Individual selection of two or more non-continuous system memory modules out of the N available modules may also be provided, for example to compare the output data from modules MEM0′ and MEM2′ without comparing the output data from module MEM1′. - Rather than de-selecting a memory module, its output may be masked, filtered, or otherwise disregarded. The module decoder may further supply an address AD to all of the memory modules, along with the select signal SLi, in which case the memory modules are not linked to an address bus.
- Finally, the signals and values may be reversed, for example “not equal” instead of “equal” signals, etc. depending upon the logic and logic gates employed.
- A semiconductor device according to the invention is susceptible of being integrated in portable devices, such as mobile phones, music players, etc., as well as any other device that may have multiple memory modules.
Claims (9)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1201755.4 | 2012-02-01 | ||
GB1201755.4A GB2498980A (en) | 2012-02-01 | 2012-02-01 | Device and method to perform a parallel memory test |
PCT/EP2012/073966 WO2013113426A1 (en) | 2012-02-01 | 2012-11-29 | Device and method to perform a parallel memory test |
Publications (2)
Publication Number | Publication Date |
---|---|
US20150063045A1 true US20150063045A1 (en) | 2015-03-05 |
US9202594B2 US9202594B2 (en) | 2015-12-01 |
Family
ID=45876481
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/376,263 Expired - Fee Related US9202594B2 (en) | 2012-02-01 | 2012-11-29 | Device and method to perform a parallel memory test |
Country Status (7)
Country | Link |
---|---|
US (1) | US9202594B2 (en) |
EP (1) | EP2810281B1 (en) |
JP (1) | JP2015509257A (en) |
KR (1) | KR20140117516A (en) |
CN (1) | CN104094357B (en) |
GB (1) | GB2498980A (en) |
WO (1) | WO2013113426A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190187930A1 (en) * | 2017-12-20 | 2019-06-20 | International Business Machines Corporation | Three-dimensional stacked memory access optimization |
US12014788B2 (en) | 2022-04-29 | 2024-06-18 | Changxin Memory Technologies, Inc. | Memory array detection circuit and detection method, and memory |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105302688B (en) * | 2015-09-18 | 2018-03-16 | 许继集团有限公司 | A kind of parallel bus self checking method and system |
US20170125125A1 (en) * | 2015-10-30 | 2017-05-04 | Texas Instruments Incorporated | Area-efficient parallel test data path for embedded memories |
CN106370992A (en) * | 2016-08-17 | 2017-02-01 | 上海华岭集成电路技术股份有限公司 | UID write-in system and method for semiconductor chip tests |
US10157151B2 (en) * | 2016-10-19 | 2018-12-18 | Stmicroelectronics S.R.L. | System and method of determining memory access time |
CN117012256A (en) * | 2022-04-29 | 2023-11-07 | 长鑫存储技术有限公司 | Detection circuit of memory array, detection method of detection circuit and memory |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080151659A1 (en) * | 2006-12-25 | 2008-06-26 | Elpida Memory Inc. | Semiconductor memory device |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2780354B2 (en) * | 1989-07-04 | 1998-07-30 | 富士通株式会社 | Semiconductor memory device |
US5982684A (en) * | 1998-05-28 | 1999-11-09 | Intel Corporation | Parallel access testing of a memory array |
JP2000322329A (en) * | 1999-05-11 | 2000-11-24 | Mitsubishi Electric Corp | Semiconductor integrated circuit device |
US6357027B1 (en) * | 1999-05-17 | 2002-03-12 | Infineon Technologies Ag | On chip data comparator with variable data and compare result compression |
JP2001135096A (en) * | 1999-11-02 | 2001-05-18 | Kawasaki Steel Corp | Test method for ram |
JP4495308B2 (en) * | 2000-06-14 | 2010-07-07 | 株式会社アドバンテスト | Semiconductor device testing method and semiconductor device testing equipment |
DE10124923B4 (en) * | 2001-05-21 | 2014-02-06 | Qimonda Ag | Test method for testing a data memory and data memory with integrated test data compression circuit |
EP1369878A1 (en) * | 2002-06-04 | 2003-12-10 | Infineon Technologies AG | System for testing a group of functionally independent memories and for replacing failing memory words |
JP3970716B2 (en) * | 2002-08-05 | 2007-09-05 | 松下電器産業株式会社 | Semiconductor memory device and inspection method thereof |
JP4229715B2 (en) * | 2003-01-29 | 2009-02-25 | Necエレクトロニクス株式会社 | Test circuit and semiconductor device |
US7392442B2 (en) * | 2003-03-20 | 2008-06-24 | Qualcomm Incorporated | Built-in self-test (BIST) architecture having distributed interpretation and generalized command protocol |
JP4051008B2 (en) * | 2003-07-15 | 2008-02-20 | 松下電器産業株式会社 | Semiconductor device |
DE102004010783A1 (en) * | 2004-03-05 | 2005-09-29 | Infineon Technologies Ag | Method and circuit arrangement for testing electrical components |
KR100624576B1 (en) * | 2004-06-11 | 2006-09-19 | 삼성전자주식회사 | Method of testing memory module having a hub and a hub of memory module for testing the same |
JP2006120241A (en) * | 2004-10-21 | 2006-05-11 | Toshiba Corp | Semiconductor device |
US7152192B2 (en) * | 2005-01-20 | 2006-12-19 | Hewlett-Packard Development Company, L.P. | System and method of testing a plurality of memory blocks of an integrated circuit in parallel |
KR100885912B1 (en) * | 2007-01-23 | 2009-02-26 | 삼성전자주식회사 | Data verify method and semiconductor memory device selectively verifying data based on the value of data written in the memory cell |
JP2008269692A (en) * | 2007-04-19 | 2008-11-06 | Matsushita Electric Ind Co Ltd | Semiconductor device and its inspecting method |
-
2012
- 2012-02-01 GB GB1201755.4A patent/GB2498980A/en not_active Withdrawn
- 2012-11-29 EP EP12805627.2A patent/EP2810281B1/en active Active
- 2012-11-29 WO PCT/EP2012/073966 patent/WO2013113426A1/en active Application Filing
- 2012-11-29 US US14/376,263 patent/US9202594B2/en not_active Expired - Fee Related
- 2012-11-29 JP JP2014555102A patent/JP2015509257A/en active Pending
- 2012-11-29 KR KR1020147022269A patent/KR20140117516A/en not_active Application Discontinuation
- 2012-11-29 CN CN201280068807.8A patent/CN104094357B/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080151659A1 (en) * | 2006-12-25 | 2008-06-26 | Elpida Memory Inc. | Semiconductor memory device |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190187930A1 (en) * | 2017-12-20 | 2019-06-20 | International Business Machines Corporation | Three-dimensional stacked memory access optimization |
US10528288B2 (en) * | 2017-12-20 | 2020-01-07 | International Business Machines Corporation | Three-dimensional stacked memory access optimization |
US12014788B2 (en) | 2022-04-29 | 2024-06-18 | Changxin Memory Technologies, Inc. | Memory array detection circuit and detection method, and memory |
Also Published As
Publication number | Publication date |
---|---|
US9202594B2 (en) | 2015-12-01 |
WO2013113426A1 (en) | 2013-08-08 |
KR20140117516A (en) | 2014-10-07 |
JP2015509257A (en) | 2015-03-26 |
CN104094357A (en) | 2014-10-08 |
EP2810281B1 (en) | 2019-03-20 |
GB201201755D0 (en) | 2012-03-14 |
CN104094357B (en) | 2017-03-29 |
EP2810281A1 (en) | 2014-12-10 |
GB2498980A (en) | 2013-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9202594B2 (en) | Device and method to perform a parallel memory test | |
US7814380B2 (en) | Built-in self test (BIST) architecture having distributed interpretation and generalized command protocol | |
US8201037B2 (en) | Semiconductor integrated circuit and method for controlling semiconductor integrated circuit | |
US20040199843A1 (en) | Tiered built-in self-test (BIST) architecture for testing distributed memory modules | |
US8977915B2 (en) | pBIST engine with reduced SRAM testing bus width | |
US20130070545A1 (en) | Semiconductor integrated circuit | |
EP4053841A1 (en) | Memory system with redundant operation | |
US8593886B2 (en) | Semiconductor system including semiconductor device | |
US20080222460A1 (en) | Memory test circuit | |
US9183952B2 (en) | Apparatuses and methods for compressing data received over multiple memory accesses | |
US8341477B2 (en) | Test board having a plurality of test modules and a test system having the same | |
US7552368B2 (en) | Systems and methods for simultaneously testing semiconductor memory devices | |
US12001305B2 (en) | Resource allocation for a memory built-in self-test | |
US20020184557A1 (en) | System and method for memory segment relocation | |
US8930783B2 (en) | pBIST read only memory image compression | |
JP4874391B2 (en) | Test equipment | |
US20080151659A1 (en) | Semiconductor memory device | |
US20160216331A1 (en) | Semiconductor integrated circuit | |
US11984180B2 (en) | Enabling or disabling on-die error-correcting code for a memory built-in self-test | |
US11894085B2 (en) | Memory section selection for a memory built-in self-test | |
US11929134B2 (en) | Indicating a status of a memory built-in self-test | |
US20240069764A1 (en) | Single-bit error indication for a memory built-in self-test | |
RANI et al. | Configurable Programmable BIST for Memory | |
JPS6158035A (en) | Pattern detector | |
JP2010117974A (en) | Test method and test device for address bus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INSIDE SECURE, FRANCE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HICKEY, GRAEME;KINCAID, STUART;REEL/FRAME:033572/0725 Effective date: 20140725 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: WISEKEY SEMICONDUCTORS, FRANCE Free format text: CHANGE OF NAME;ASSIGNOR:VAULT-IC FRANCE;REEL/FRAME:042140/0915 Effective date: 20161122 Owner name: VAULT-IC FRANCE, FRANCE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INSIDE SECURE;REEL/FRAME:042328/0457 Effective date: 20160920 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20231201 |