US20080256405A1 - Compilable memory structure and test methodology for both asic and foundry test environments - Google Patents

Compilable memory structure and test methodology for both asic and foundry test environments Download PDF

Info

Publication number
US20080256405A1
US20080256405A1 US12/143,007 US14300708A US2008256405A1 US 20080256405 A1 US20080256405 A1 US 20080256405A1 US 14300708 A US14300708 A US 14300708A US 2008256405 A1 US2008256405 A1 US 2008256405A1
Authority
US
United States
Prior art keywords
test
logic
memory
connection
memory structure
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.)
Abandoned
Application number
US12/143,007
Inventor
Steven M. Eustis
James A. Monzel
Steven F. Oakland
Michael R. Ouellette
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GlobalFoundries Inc
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to US12/143,007 priority Critical patent/US20080256405A1/en
Publication of US20080256405A1 publication Critical patent/US20080256405A1/en
Assigned to GLOBALFOUNDRIES U.S. 2 LLC reassignment GLOBALFOUNDRIES U.S. 2 LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: INTERNATIONAL BUSINESS MACHINES CORPORATION
Assigned to GLOBALFOUNDRIES INC. reassignment GLOBALFOUNDRIES INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: GLOBALFOUNDRIES U.S. 2 LLC, GLOBALFOUNDRIES U.S. INC.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/48Arrangements 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/1201Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details comprising I/O circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/30Accessing single arrays
    • G11C2029/3202Scan chain

Definitions

  • the present invention relates generally to integrated circuit devices, and, more particularly, to a compilable memory structure and test methodology for both application specific integrated circuit (ASIC) and foundry test environments.
  • ASIC application specific integrated circuit
  • the various storage elements have been designed so as to have two modes of operation. In a first mode of operation, the storage elements are set in a “functional” mode such that the integrated circuit performs its normal operational tasks. In a second or “shift” mode, data is shifted through the storage elements and out through an output pin of the integrated circuit for diagnostic analysis.
  • LSSD level sensitive scan design
  • latches are used in pairs, wherein each has a normal data input, data output and clock for system operation.
  • the storage element is a level sensitive latch that is controlled by the system clock.
  • the two latches form a master/slave pair with one scan input, one scan output, and non-overlapping scan clocks A and B that are held low during system operation but cause the scan data to be latched when pulsed high during scan.
  • multiplexed flip-flop or “muxed” flop
  • ASIC application specific integrated circuit
  • a method of implementing a compilable memory structure configured for supporting multiple test methodologies includes configuring a first plurality of multiplexers for selectively coupling at least one data input path and at least one address path between an external customer connection and a corresponding internal memory connection associated therewith.
  • a second multiplexer is configured for selectively coupling an input of a test latch between a functional memory array connection and a memory logic connection, the memory logic connection coupled to the at least one data input path, with an output of the test latch defining a data out customer connection.
  • Flush logic is further configured to direct data from the memory logic connection to the data out customer connection during a test of logic associated with a customer chip, thereby facilitating observation of the memory logic connection at the customer chip, wherein test elements of the memory structure comprise a scan architecture of a first type, and test elements of the customer chip comprise a scan architecture of a second type.
  • a method for implementing a plurality of test methodologies for a memory structure includes setting a first test configuration in the memory structure in accordance with a first test methodology corresponding to a first scan architecture, setting a second test configuration in the memory structure in accordance with a second test methodology corresponding to a second scan architecture; and setting a third test configuration in the memory structure in accordance with a third test methodology corresponding to a built-in self test (BIST) and repair mode of the memory structure.
  • BIST built-in self test
  • FIG. 1 is a schematic diagram of a logic portion of an ASIC, such as an SRAM, configured in accordance with an embodiment of the invention
  • FIG. 2 is a truth table illustrating the selection of values for the control signals corresponding to the various test and functional modes of the dual architecture memory system
  • FIG. 3 is a flow diagram illustrating a method for implementing multiple test methodologies for a memory device, in accordance with a further embodiment of the invention.
  • an ASIC memory device e.g., SRAM
  • ASIC and foundry environments i.e., first scan architecture and second scan architecture environments.
  • an ASIC memory device is configured to include foundry-only observable pins that are connected in a manner so as to be harmless in an ASIC test environment.
  • the memory device also includes observable ASIC-only pins that are held harmless in a foundry test environment.
  • the memory logic includes a data out (DO) portion 102 , a data in (DI) portion 104 , a bit enable (BE) portion 106 , and an address path portion 108 .
  • DO data out
  • DI data in
  • BE bit enable
  • address path portion 108 an address path portion 108 .
  • bit enable (BE) portion 106 and address path portion 108 are a series of multiplexers 110 that are used for selective switching between a normal “customer” access path and a local memory domain access path. Multiplexers 110 are controlled by the test signal labeled TESTM 1 .
  • the local domain input/output paths are associated with scan elements of a first architecture (e.g., LSSD), while the customer input/output paths represent a foundry domain having scan elements of a second architecture (e.g., muxed flop scan).
  • a first architecture e.g., LSSD
  • a second architecture e.g., muxed flop scan
  • the memory 100 of FIG. 1 further includes flush logic 112 and a pair of observation outputs (ADDROBS) and DO (customer) so as to enable the customer to test the wiring to and from the memory in a foundry environment.
  • Another multiplexer 114 controlled by test signal TESTM 3 , allows the output of NAND gate 116 (associated with the data input and bit enable signals) to be observed at DO.
  • TESTM 3 By buffering an output of NAND gate 118 , it will be appreciated that toggling the customer address path 108 by setting TESTM 1 to low also causes the ADDROBS pin to toggle, thus providing an observation point for the customer logic domain.
  • a similar circuit may be included for providing an observation point for the system clock signal Array_C.
  • the flush logic 112 enables an existing data output pin DO to serve as an observation output during foundry logic testing. More specifically, the flush logic 112 is used in conjunction with the memory system clock signal (Array_C) to selectively flush various signals such as clocks, addresses, data-in, bit-enable, and read/write input signals to the observation or data-out pin DO. In such an operational mode, the memory cells are not accessed. This enables a customer in a foundry test environment to test the wiring to and from the memory structure. In addition, the present configuration further allows for the operation of a memory/BIST combination so as to test the internal SRAM robustness and thus make any redundancy corrections that are needed. Moreover, the structure is also made compatible with an ASIC design by grounding the L 1 FLUSH pin to allow the memory system clock signal to operate as usual.
  • FIG. 2 is a truth table illustrating the selection of values for the TESTM 1 , TESTM 3 and L 1 FLUSH control signals corresponding to the various test and functional modes of the memory system. For example, if TESTM 1 is low, then the customer data paths (address, input, bit enable, output) are in put in communication with the associated memory logic devices. As such, the memory system may be operated in either a normal (functional mode) or in a test mode of the customer (foundry) logic, depending on the value of TESTM 3 and L 1 FLUSH.
  • TESTM 3 is set to “0” to allow memory array data to pass through to output pin DO, while L 1 FLUSH is also set to “0” to allow the flush logic 112 to pulse the array system clock signal to the master latch L 1 .
  • TESTM 3 is set to “1” to direct the NANDed customer input and bit enable signals to be observed at the customer DO pin.
  • L 1 FLUSH is set to 1, causing the output of flush logic 112 (i.e., the input system clock signal of LSSD latch L 1 ) to remain high and thus flushing the foundry logic test data through to DO.
  • the memory system may be operated in an external test mode of the memory BIST logic, or a BIST and repair mode, depending on the value of TESTM 3 . If TESTM 3 is set to “1”, the NANDed ASIC input and bit enable signals of the memory are internally observed at L 1 . Conversely, if I TESTM 3 is set to “0”, a BIST and repair mode is activated.
  • FIG. 3 is a flow diagram illustrating a method 300 for implementing multiple test methodologies for a memory device, in accordance with a further embodiment of the invention.
  • the method 300 may be utilized in conjunction with the modified memory structure 100 shown in FIG. 1 .
  • the method 300 is designed to provide 100% testability of logic around an ASIC device, such as an SRAM using LSSD scan elements, while the “foundry” chip logic domain uses a different test methodology (such as mux-scan) with respect to the BIST logic domain around the memory.
  • LSSD and mux-scan architectures are used in the exemplary embodiments, it will be appreciated the principles herein are also generally applicable to systems having a scan architecture of a first type and a scan architecture of a second type.
  • the method 300 implements four general testing sub-procedures 302 , 304 , 306 , 308 , covering the ASIC (LSSD) logic test patterns, the foundry (mux-scan) logic test patterns, BIST and memory repair test patterns, and other miscellaneous test, respectively.
  • the ASIC logic test domain contains the memory and the LSSD self-test logic. All other foundry logic is considered to be outside of the ASIC logic test domain boundary.
  • the ASIC input boundary is defined at the self-test input muxes 110 controlled by TESTM 1 ( FIG. 1 ), while the ASIC output boundary is defined at the observation outputs of the memory (e.g., ADDROBS, DO, and a clock observation point).
  • the method 300 begins with probing the first chip in the sample.
  • the control signal TESTM 3 is set to “1” to prevent “x” states within the memory array from being accessed during the ASIC logic test, as shown at block 310 .
  • the control signal TESTM 1 is set to “1” to prevent “x” states within the memory array from being accessed during the ASIC logic test, as shown at block 310 .
  • by setting and holding control signal TESTM 1 1
  • only the ASIC BIST logic paths are propagated through the self-test input mux and, in the case of the STADDR path, through the NAND gate 118 .
  • An LSSD latch (not shown in FIG. 1 ) observes the data coming out of NAND gate 118 .
  • TESTM 1 does however show the LSSD latch L 1 , L 2 , that observes the data coming from NAND gate 116 corresponding to the data in and bit enable signals. Because TESTM 1 is set to “1”, the value of the L 1 FLUSH signal is not relevant for the ASIC logic test mode.
  • the ASIC logic patterns are run and the results are observed, as shown in block 314 . If at decision block 316 , the chip passes the ASIC logic testing, the method proceeds to sub-process 304 . Otherwise, the chip is deemed “bad” at block 318 , a new chip is selected at block 320 . The new chip is then subjected to testing, beginning with ASIC logic subroutine 302 .
  • method 300 proceeds to block 322 of foundry logic sub-process 304 .
  • the signal TESTM 1 is reset and held to “0” and TESTM 3 is set and held to “1” while the foundry logic test patterns are run.
  • the L 1 FLUSH signal is now set and held to “1” so as to hold the DO L 1 latch(es) in a “flush” state, thereby allowing the output of the DI and bit enable (BE) NAND gate 116 to be observed at the DO pin by the foundry logic through the use of a mux-scan latch added outside the ASIC domain.
  • the DI and BE are signals that are driven to the memory by foundry latches, it is desirable to observe these signals into foundry latches as well.
  • the TESTM 1 input muxes 110 are observed through the ADDROBS pin and clock observation pin (not shown in FIG. 1 ) into an external foundry latch (not shown in FIG. 1 ), for the purpose of insuring that the foundry ADDR and CLK signals in fact arrived at the memory boundary.
  • decision block 326 determines whether the initial chip has passed the foundry logic test. If so, the method 300 then proceeds to the BIST and Repair sub-procedure 306 , which is implemented to enable a foundry customer to obtain improved memory yields. On the other hand, if the initial chip does not also pass the foundry logic test, then the chip is deemed “bad” (block 318 ), a new chip is selected (block 320 ) and testing is started over again beginning with the ASIC logic test subroutine 302 .
  • the signal TESTM 1 is again set to “1” while TEST M 3 is set to “0”, thus isolating the output of the DI and bit enable (BE) NAND gate 116 from the DO pin. Again, since TESTM 1 is “1”, the state of L 1 FLUSH is considered as a “don't care” state.
  • decision block 332 determines whether the chip passed this portion of the testing. If not, the chip is deemed “bad” (block 318 ), a new chip is selected (block 320 ) and testing is started over again beginning with the ASIC logic test subroutine 302 .
  • the method 300 finally proceeds to sub-process 308 for other testing, as shown in block 334 . If these final tests are passed (decision block 336 ), the chip is deemed “good” at block 338 , and a new chip is selected (block 320 ) and testing is started over again beginning with the ASIC logic test subroutine 302 . If the final tests are not passed, the chip is deemed “bad” (block 318 ), a new chip is selected (block 320 ) and testing is started over again beginning with the ASIC logic test subroutine 302 .

Abstract

A method of implementing a compilable memory structure configured for supporting multiple test methodologies includes configuring a first plurality of multiplexers for selectively coupling at least one data input path and at least one address path between an external customer connection and a corresponding internal memory connection associated therewith. A second multiplexer is configured for selectively coupling an input of a test latch between a functional memory array connection and a memory logic connection, the memory logic connection coupled to the at least one data input path, with an output of the test latch defining a data out customer connection. Flush logic is configured to direct data from the memory logic connection to the data out customer connection during a test of logic associated with a customer chip, facilitating observation of the memory logic connection at the customer chip.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This non-provisional U.S. patent application is a Continuation of pending U.S. patent application Ser. No. 10/906,147, which was filed Feb. 4, 2004, and is assigned to the present assignee.
  • BACKGROUND
  • The present invention relates generally to integrated circuit devices, and, more particularly, to a compilable memory structure and test methodology for both application specific integrated circuit (ASIC) and foundry test environments.
  • As the packing density of integrated circuit chip devices has increased greatly in recent years, various schemes have been devised for providing increased testability of the devices. For example, if it is desired to operate an integrated circuit from a known initial state, it is often necessary to be able to input states into the various latches and flip-flops from an external data pin. It is further useful to be able to test the integrated circuit by shifting a test vector comprised of a sequence of bits through a chain of latches and/or flip-flops to ensure the integrated circuit is functioning properly. To this end, the various storage elements have been designed so as to have two modes of operation. In a first mode of operation, the storage elements are set in a “functional” mode such that the integrated circuit performs its normal operational tasks. In a second or “shift” mode, data is shifted through the storage elements and out through an output pin of the integrated circuit for diagnostic analysis.
  • One particularly effective testing scheme employs a level sensitive scan design (LSSD) in which separate system and scan clocks are used to distinguish between normal and test modes. In particular, latches are used in pairs, wherein each has a normal data input, data output and clock for system operation. In the functional mode, the storage element is a level sensitive latch that is controlled by the system clock. In the shift mode, the two latches form a master/slave pair with one scan input, one scan output, and non-overlapping scan clocks A and B that are held low during system operation but cause the scan data to be latched when pulsed high during scan.
  • On the other hand, a more common methodology for creating storage elements having two modes of operation is known as the multiplexed flip-flop (or “muxed” flop) design, in which the addition of a multiplexer to each flip flop's data input allows operation in either the normal mode or the shift mode. The output of each flip-flop goes to the normal functional logic as well as to the scan input of the next multiplexer in the scan path. Essentially, the input multiplexers are used to isolate each scan node. The muxed flop design is the most widely used type of scan element for foundry chip designs, whereas an LSSD design has been used for certain application specific integrated circuit (ASIC) chips.
  • In the past, separate embedded memory designs have been used for ASIC chips and for foundry chip designs. However, in order to save both development time and costs, it would be desirable to be able to have a single embedded memory that is capable of being tested in both environments. Unfortunately, however, conventional memory circuit designs do not allow for the simultaneous testing of logic that includes both LSSD scan elements and muxed flop scan elements. For example, a node in an LSSD scan chain is not observable by a muxed flop scan element. As such, automated test patterns cannot presently be applied to a “dual scan architecture” device in a manner that would provide complete testability of the logic.
  • SUMMARY
  • In an exemplary embodiment, a method of implementing a compilable memory structure configured for supporting multiple test methodologies includes configuring a first plurality of multiplexers for selectively coupling at least one data input path and at least one address path between an external customer connection and a corresponding internal memory connection associated therewith. A second multiplexer is configured for selectively coupling an input of a test latch between a functional memory array connection and a memory logic connection, the memory logic connection coupled to the at least one data input path, with an output of the test latch defining a data out customer connection. Flush logic is further configured to direct data from the memory logic connection to the data out customer connection during a test of logic associated with a customer chip, thereby facilitating observation of the memory logic connection at the customer chip, wherein test elements of the memory structure comprise a scan architecture of a first type, and test elements of the customer chip comprise a scan architecture of a second type.
  • In another embodiment, a method for implementing a plurality of test methodologies for a memory structure includes setting a first test configuration in the memory structure in accordance with a first test methodology corresponding to a first scan architecture, setting a second test configuration in the memory structure in accordance with a second test methodology corresponding to a second scan architecture; and setting a third test configuration in the memory structure in accordance with a third test methodology corresponding to a built-in self test (BIST) and repair mode of the memory structure.
  • BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
  • Referring to the exemplary drawings wherein like elements are numbered alike in the several Figures:
  • FIG. 1 is a schematic diagram of a logic portion of an ASIC, such as an SRAM, configured in accordance with an embodiment of the invention;
  • FIG. 2 is a truth table illustrating the selection of values for the control signals corresponding to the various test and functional modes of the dual architecture memory system; and
  • FIG. 3 is a flow diagram illustrating a method for implementing multiple test methodologies for a memory device, in accordance with a further embodiment of the invention.
  • DETAILED DESCRIPTION
  • Disclosed herein is embedded memory device (e.g., SRAM) that may be tested and used in both ASIC and foundry environments (i.e., first scan architecture and second scan architecture environments). Briefly stated, an ASIC memory device is configured to include foundry-only observable pins that are connected in a manner so as to be harmless in an ASIC test environment. Conversely, the memory device also includes observable ASIC-only pins that are held harmless in a foundry test environment.
  • Referring initially to FIG. 1, there is shown a schematic diagram of a logic portion of an ASIC, such as an SRAM 100 for example, configured in accordance with an embodiment of the invention. As is generally illustrated, the memory logic includes a data out (DO) portion 102, a data in (DI) portion 104, a bit enable (BE) portion 106, and an address path portion 108. Included within the data in (DI) portion 104, bit enable (BE) portion 106 and address path portion 108 are a series of multiplexers 110 that are used for selective switching between a normal “customer” access path and a local memory domain access path. Multiplexers 110 are controlled by the test signal labeled TESTM1. In the embodiment illustrated, the local domain input/output paths are associated with scan elements of a first architecture (e.g., LSSD), while the customer input/output paths represent a foundry domain having scan elements of a second architecture (e.g., muxed flop scan).
  • Because existing memory designs have not heretofore provided the capability of complete testability of logic around different testing domains, the memory 100 of FIG. 1 further includes flush logic 112 and a pair of observation outputs (ADDROBS) and DO (customer) so as to enable the customer to test the wiring to and from the memory in a foundry environment. Another multiplexer 114, controlled by test signal TESTM3, allows the output of NAND gate 116 (associated with the data input and bit enable signals) to be observed at DO. By buffering an output of NAND gate 118, it will be appreciated that toggling the customer address path 108 by setting TESTM1 to low also causes the ADDROBS pin to toggle, thus providing an observation point for the customer logic domain. Although not specifically shown in FIG. 1, a similar circuit may be included for providing an observation point for the system clock signal Array_C.
  • Whereas the memory address observation output ADDROBS represents an additional output pin to the customer, the flush logic 112 enables an existing data output pin DO to serve as an observation output during foundry logic testing. More specifically, the flush logic 112 is used in conjunction with the memory system clock signal (Array_C) to selectively flush various signals such as clocks, addresses, data-in, bit-enable, and read/write input signals to the observation or data-out pin DO. In such an operational mode, the memory cells are not accessed. This enables a customer in a foundry test environment to test the wiring to and from the memory structure. In addition, the present configuration further allows for the operation of a memory/BIST combination so as to test the internal SRAM robustness and thus make any redundancy corrections that are needed. Moreover, the structure is also made compatible with an ASIC design by grounding the L1FLUSH pin to allow the memory system clock signal to operate as usual.
  • FIG. 2 is a truth table illustrating the selection of values for the TESTM1, TESTM3 and L1FLUSH control signals corresponding to the various test and functional modes of the memory system. For example, if TESTM1 is low, then the customer data paths (address, input, bit enable, output) are in put in communication with the associated memory logic devices. As such, the memory system may be operated in either a normal (functional mode) or in a test mode of the customer (foundry) logic, depending on the value of TESTM3 and L1FLUSH. For a functional mode, TESTM3 is set to “0” to allow memory array data to pass through to output pin DO, while L1FLUSH is also set to “0” to allow the flush logic 112 to pulse the array system clock signal to the master latch L1.
  • To test the foundry logic, TESTM3 is set to “1” to direct the NANDed customer input and bit enable signals to be observed at the customer DO pin. Furthermore, L1FLUSH is set to 1, causing the output of flush logic 112 (i.e., the input system clock signal of LSSD latch L1) to remain high and thus flushing the foundry logic test data through to DO.
  • On the other hand, when TESTM1 is high, then the internal memory data paths are in put in communication with the memory BIST logic devices. As such, the memory system may be operated in an external test mode of the memory BIST logic, or a BIST and repair mode, depending on the value of TESTM3. If TESTM3 is set to “1”, the NANDed ASIC input and bit enable signals of the memory are internally observed at L1. Conversely, if I TESTM3 is set to “0”, a BIST and repair mode is activated. It will be noted that, regardless of the value of TESTM3, the value of L1FLUSH is considered as a “don't care” state, since a high value of TESTM1 renders the top input of the OR gate of the flush logic low. Thus, a pulse on the system clock signal Array_C is unaffected by the value of L1FLUSH when TESTM1 is high.
  • Finally, FIG. 3 is a flow diagram illustrating a method 300 for implementing multiple test methodologies for a memory device, in accordance with a further embodiment of the invention. In the embodiment illustrated, the method 300 may be utilized in conjunction with the modified memory structure 100 shown in FIG. 1. Again, the method 300 is designed to provide 100% testability of logic around an ASIC device, such as an SRAM using LSSD scan elements, while the “foundry” chip logic domain uses a different test methodology (such as mux-scan) with respect to the BIST logic domain around the memory. Again, although LSSD and mux-scan architectures are used in the exemplary embodiments, it will be appreciated the principles herein are also generally applicable to systems having a scan architecture of a first type and a scan architecture of a second type.
  • As shown in FIG. 3, the method 300 implements four general testing sub-procedures 302, 304, 306, 308, covering the ASIC (LSSD) logic test patterns, the foundry (mux-scan) logic test patterns, BIST and memory repair test patterns, and other miscellaneous test, respectively. In the example illustrated, the ASIC logic test domain contains the memory and the LSSD self-test logic. All other foundry logic is considered to be outside of the ASIC logic test domain boundary. Moreover, the ASIC input boundary is defined at the self-test input muxes 110 controlled by TESTM1 (FIG. 1), while the ASIC output boundary is defined at the observation outputs of the memory (e.g., ADDROBS, DO, and a clock observation point).
  • The method 300 begins with probing the first chip in the sample. In the ASIC logic testing sub-procedure 302, the control signal TESTM3 is set to “1” to prevent “x” states within the memory array from being accessed during the ASIC logic test, as shown at block 310. Then, as shown in block 312, by setting and holding control signal TESTM1=1, only the ASIC BIST logic paths are propagated through the self-test input mux and, in the case of the STADDR path, through the NAND gate 118. An LSSD latch (not shown in FIG. 1) observes the data coming out of NAND gate 118. FIG. 1 does however show the LSSD latch L1, L2, that observes the data coming from NAND gate 116 corresponding to the data in and bit enable signals. Because TESTM1 is set to “1”, the value of the L1FLUSH signal is not relevant for the ASIC logic test mode.
  • Once the multiplexer signals are set, the ASIC logic patterns are run and the results are observed, as shown in block 314. If at decision block 316, the chip passes the ASIC logic testing, the method proceeds to sub-process 304. Otherwise, the chip is deemed “bad” at block 318, a new chip is selected at block 320. The new chip is then subjected to testing, beginning with ASIC logic subroutine 302.
  • Assuming, however, that the initial chip passes the ASIC logic subroutine 302, method 300 proceeds to block 322 of foundry logic sub-process 304. The signal TESTM1 is reset and held to “0” and TESTM3 is set and held to “1” while the foundry logic test patterns are run. In this case, the L1FLUSH signal is now set and held to “1” so as to hold the DO L1 latch(es) in a “flush” state, thereby allowing the output of the DI and bit enable (BE) NAND gate 116 to be observed at the DO pin by the foundry logic through the use of a mux-scan latch added outside the ASIC domain. Since the DI and BE are signals that are driven to the memory by foundry latches, it is desirable to observe these signals into foundry latches as well. The TESTM1 input muxes 110 are observed through the ADDROBS pin and clock observation pin (not shown in FIG. 1) into an external foundry latch (not shown in FIG. 1), for the purpose of insuring that the foundry ADDR and CLK signals in fact arrived at the memory boundary.
  • After the foundry logic test patterns are run at block 324, decision block 326 determines whether the initial chip has passed the foundry logic test. If so, the method 300 then proceeds to the BIST and Repair sub-procedure 306, which is implemented to enable a foundry customer to obtain improved memory yields. On the other hand, if the initial chip does not also pass the foundry logic test, then the chip is deemed “bad” (block 318), a new chip is selected (block 320) and testing is started over again beginning with the ASIC logic test subroutine 302.
  • In the BIST and Repair sub-procedure 306, the signal TESTM1 is again set to “1” while TEST M3 is set to “0”, thus isolating the output of the DI and bit enable (BE) NAND gate 116 from the DO pin. Again, since TESTM1 is “1”, the state of L1FLUSH is considered as a “don't care” state. After the BIST and Repair Memory test patterns are run at block 330, decision block 332 determines whether the chip passed this portion of the testing. If not, the chip is deemed “bad” (block 318), a new chip is selected (block 320) and testing is started over again beginning with the ASIC logic test subroutine 302. However, if this third type of testing is successful, the method 300 finally proceeds to sub-process 308 for other testing, as shown in block 334. If these final tests are passed (decision block 336), the chip is deemed “good” at block 338, and a new chip is selected (block 320) and testing is started over again beginning with the ASIC logic test subroutine 302. If the final tests are not passed, the chip is deemed “bad” (block 318), a new chip is selected (block 320) and testing is started over again beginning with the ASIC logic test subroutine 302.
  • As will be appreciated, through the used of the above described apparatus and test methodology, complete logic test coverage of the self-test interface (having two distinct test methodologies merged together) may be achieved, in addition to memory yield improvement through the use of redundancy in the memory. The organization of the memory may vary across the spectrum, where each individual array may be contained in one large corral, or each memory may exist in its own corral, with multiple corrals on the chip.
  • While the invention has been described with reference to a preferred embodiment or embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from the essential scope thereof. Therefore, it is intended that the invention not be limited to the particular embodiment disclosed as the best mode contemplated for carrying out this invention, but that the invention will include all embodiments falling within the scope of the appended claims.

Claims (13)

1. A method of implementing a compilable memory structure configured for supporting multiple test methodologies, the method comprising:
configuring a first plurality of multiplexers for selectively coupling at least one data input path and at least one address path between an external customer connection and a corresponding internal memory connection associated therewith;
configuring a second multiplexer for selectively coupling an input of a test latch between a functional memory array connection and a memory logic test connection, said memory logic test connection coupled to said at least one data input path with an output of said test latch defining a data out customer connection; and
configuring flush logic to direct data from said memory logic connection to said data out customer connection during a test of logic associated with a customer chip, thereby facilitating observation of said memory logic connection at said customer chip;
wherein test elements of the memory structure comprise a scan architecture of a first type and test elements of said customer chip comprise a scan architecture of a second type.
2. The method of claim 1, wherein said scan architecture of a first type further comprises a level sensitive scan design (LSSD), and scan architecture of a second type further comprises a muxed-flop design.
3. The method of claim 1, further comprising configuring at least one external observation pin for said customer chip, said at least one external observation pin coupled to one or more of: said at least one address path of the memory structure, and a system clock path of the memory structure.
4. The method of claim 1, further comprising:
applying a first control signal to said first plurality of multiplexers, said first control signal comprising one of a first state and a second state;
said first state corresponding to one of: a functional mode of the memory structure, and a test mode of said logic associated with said customer chip; and
said second state corresponding to one of: a test mode of logic associated with the memory structure, and a built-in self test (BIST) and repair mode of the memory structure.
5. The method of claim 4, further comprising:
applying a second control signal to said second multiplexer, said second control signal comprising one of a first state and a second state;
said first state corresponding to one of: said functional mode of the memory structure, and said BIST and repair mode of the memory structure; and
said second state corresponding to one of: said test mode of said logic associated with said customer chip, and said test mode of logic associated with the memory structure.
6. The method of claim 5, further comprising applying a flush logic control signal to said flush logic, wherein:
said flush logic control signal is set to a first state in said functional mode of the memory structure;
said flush logic control signal is set to a second state in said test mode of said logic associated with said customer chip; and
said flush logic control signal is considered to be in a don't care state in said test mode of logic associated with the memory structure and in said BIST and repair mode of the memory structure.
7. A method for implementing a plurality of test methodologies for a memory structure, the method comprising:
setting a first test configuration in the memory structure in accordance with a first test methodology corresponding to a first scan architecture;
setting a second test configuration in the memory structure in accordance with a second test methodology corresponding to a second scan architecture; and
setting a third test configuration in the memory structure in accordance with a third test methodology corresponding to a built-in self test (BIST) and repair mode of the memory structure.
8. The method of claim 7, wherein said setting a first test configuration in the memory structure further comprises:
applying a first control signal so as to cause a first plurality of multiplexers to couple at least one data input path and at least one address path to a corresponding internal memory connection associated therewith;
applying a second control signal so as to cause a second multiplexer to couple an input of a test latch to a memory logic connection, said memory logic connection coupled to said at least one data input path, with an output of said test latch defining a data out customer connection.
9. The method of claim 8, wherein said setting a second test configuration in the memory structure further comprises:
applying said first control signal so as to cause said first plurality of multiplexers to couple said at least one data input path and said at least one address path to an external customer connection;
applying a second control signal so as to cause said second multiplexer to maintain said input of said test latch coupled to said memory logic connection; and
applying a flush logic signal so as to cause flush logic to direct data from said memory logic connection to said data out customer connection, thereby facilitating observation of said memory logic connection at said customer chip.
10. The method of claim 9, further comprising configuring at least one external observation pin for said customer chip, said at least one external observation pin coupled to one or more of: said at least one address path of the memory structure, and a system clock path of the memory structure.
11. The method of claim 9, wherein said setting a third test configuration in the memory structure further comprises:
applying said first control signal so as to cause said first plurality of multiplexers to couple said at least one data input path and said at least one address path to said internal memory connection; and
applying said second control signal so as to cause said second multiplexer to couple said input of said test latch to a functional memory array connection.
12. The method of claim 9, further comprising permitting said flush logic control signal to be in a don't care state in said first and said third test configurations.
13. The method of claim 7, wherein said first scan architecture comprises a level sensitive scan design (LSSD), and said second scan architecture further comprises a muxed-flop design.
US12/143,007 2005-02-04 2008-06-20 Compilable memory structure and test methodology for both asic and foundry test environments Abandoned US20080256405A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/143,007 US20080256405A1 (en) 2005-02-04 2008-06-20 Compilable memory structure and test methodology for both asic and foundry test environments

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/906,147 US7404125B2 (en) 2005-02-04 2005-02-04 Compilable memory structure and test methodology for both ASIC and foundry test environments
US12/143,007 US20080256405A1 (en) 2005-02-04 2008-06-20 Compilable memory structure and test methodology for both asic and foundry test environments

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US10/906,147 Continuation US7404125B2 (en) 2005-02-04 2005-02-04 Compilable memory structure and test methodology for both ASIC and foundry test environments

Publications (1)

Publication Number Publication Date
US20080256405A1 true US20080256405A1 (en) 2008-10-16

Family

ID=36779768

Family Applications (2)

Application Number Title Priority Date Filing Date
US10/906,147 Active 2026-10-20 US7404125B2 (en) 2005-02-04 2005-02-04 Compilable memory structure and test methodology for both ASIC and foundry test environments
US12/143,007 Abandoned US20080256405A1 (en) 2005-02-04 2008-06-20 Compilable memory structure and test methodology for both asic and foundry test environments

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US10/906,147 Active 2026-10-20 US7404125B2 (en) 2005-02-04 2005-02-04 Compilable memory structure and test methodology for both ASIC and foundry test environments

Country Status (1)

Country Link
US (2) US7404125B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140229778A1 (en) * 2013-02-14 2014-08-14 Lsi Corporation At-speed scan testing of interface functional logic of an embedded memory or other circuit core

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7574642B2 (en) * 2005-04-07 2009-08-11 International Business Machines Corporation Multiple uses for BIST test latches
US8552765B2 (en) 2011-01-07 2013-10-08 Stmicroelectronics International N.V. Adaptive multi-stage slack borrowing for high performance error resilient computing
US8423844B2 (en) 2011-01-11 2013-04-16 International Business Machines Corporation Dense register array for enabling scan out observation of both L1 and L2 latches
CN111856258B (en) * 2020-07-24 2023-05-09 北京百度网讯科技有限公司 Method, device, storage medium and corresponding chip for testing chip

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5598120A (en) * 1993-06-07 1997-01-28 Vlsi Technology, Inc. Dual latch clocked LSSD and method
US5719879A (en) * 1995-12-21 1998-02-17 International Business Machines Corporation Scan-bypass architecture without additional external latches
US5920830A (en) * 1997-07-09 1999-07-06 General Electric Company Methods and apparatus for generating test vectors and validating ASIC designs
US5946472A (en) * 1996-10-31 1999-08-31 International Business Machines Corporation Apparatus and method for performing behavioral modeling in hardware emulation and simulation environments
US6028983A (en) * 1996-09-19 2000-02-22 International Business Machines Corporation Apparatus and methods for testing a microprocessor chip using dedicated scan strings
US6195775B1 (en) * 1998-09-02 2001-02-27 International Business Machines Corporation Boundary scan latch configuration for generalized scan designs
US20030074618A1 (en) * 2001-10-12 2003-04-17 Dorsey Michael C. Dual mode ASIC BIST controller
US20070118780A1 (en) * 1998-02-18 2007-05-24 Texas Instruments Incorporated Hierarchical access of test access ports in embedded core integrated circuits
US20080059855A1 (en) * 1996-08-30 2008-03-06 Texas Instruments Incorporated Selectively accessing test access ports in a multiple test access port environment
US7380187B2 (en) * 2003-12-29 2008-05-27 Stmicroelectronics Pvt. Ltd. Boundary scan tester for logic devices

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0578858A1 (en) 1992-07-17 1994-01-19 International Business Machines Corporation AC interconnect test of integrated circuit chips
US6185710B1 (en) * 1998-03-30 2001-02-06 International Business Machines Corporation High-performance IEEE1149.1-compliant boundary scan cell
US6385749B1 (en) * 1999-04-01 2002-05-07 Koninklijke Philips Electronics N.V. (Kpenv) Method and arrangement for controlling multiple test access port control modules
US6567943B1 (en) * 2000-04-07 2003-05-20 International Business Machines Corporation D flip-flop structure with flush path for high-speed boundary scan applications
US6701476B2 (en) * 2001-05-29 2004-03-02 Motorola, Inc. Test access mechanism for supporting a configurable built-in self-test circuit and method thereof
US7272764B2 (en) * 2004-11-04 2007-09-18 International Business Machines Corporation Method, system, and program product for boundary I/O testing employing a logic built-in self-test of an integrated circuit
US7272761B2 (en) * 2004-11-04 2007-09-18 International Business Machines Corporation Method, system, and program product for controlling test data of a logic built-in self-test of an integrated circuit

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5598120A (en) * 1993-06-07 1997-01-28 Vlsi Technology, Inc. Dual latch clocked LSSD and method
US5719879A (en) * 1995-12-21 1998-02-17 International Business Machines Corporation Scan-bypass architecture without additional external latches
US5925143A (en) * 1995-12-21 1999-07-20 International Business Machines Corporation Scan-bypass architecture without additional external latches
US20080059855A1 (en) * 1996-08-30 2008-03-06 Texas Instruments Incorporated Selectively accessing test access ports in a multiple test access port environment
US6028983A (en) * 1996-09-19 2000-02-22 International Business Machines Corporation Apparatus and methods for testing a microprocessor chip using dedicated scan strings
US5946472A (en) * 1996-10-31 1999-08-31 International Business Machines Corporation Apparatus and method for performing behavioral modeling in hardware emulation and simulation environments
US5920830A (en) * 1997-07-09 1999-07-06 General Electric Company Methods and apparatus for generating test vectors and validating ASIC designs
US20070118780A1 (en) * 1998-02-18 2007-05-24 Texas Instruments Incorporated Hierarchical access of test access ports in embedded core integrated circuits
US6195775B1 (en) * 1998-09-02 2001-02-27 International Business Machines Corporation Boundary scan latch configuration for generalized scan designs
US20030074618A1 (en) * 2001-10-12 2003-04-17 Dorsey Michael C. Dual mode ASIC BIST controller
US7380187B2 (en) * 2003-12-29 2008-05-27 Stmicroelectronics Pvt. Ltd. Boundary scan tester for logic devices

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140229778A1 (en) * 2013-02-14 2014-08-14 Lsi Corporation At-speed scan testing of interface functional logic of an embedded memory or other circuit core
US8924801B2 (en) * 2013-02-14 2014-12-30 Lsi Corporation At-speed scan testing of interface functional logic of an embedded memory or other circuit core

Also Published As

Publication number Publication date
US20060176745A1 (en) 2006-08-10
US7404125B2 (en) 2008-07-22

Similar Documents

Publication Publication Date Title
US5867507A (en) Testable programmable gate array and associated LSSD/deterministic test methodology
US6101457A (en) Test access port
US5870410A (en) Diagnostic interface system for programmable logic system development
US7225379B2 (en) Circuit and method for testing semiconductor device
US4833676A (en) Interleaved method and circuitry for testing for stuck open faults
US5568437A (en) Built-in self test for integrated circuits having read/write memory
KR100303618B1 (en) Fully testable chip with self-timed memory array
US8780648B2 (en) Latch based memory device
US6219288B1 (en) Memory having user programmable AC timings
US5719879A (en) Scan-bypass architecture without additional external latches
US5761215A (en) Scan based path delay testing of integrated circuits containing embedded memory elements
JP4294159B2 (en) Semiconductor integrated circuit device
US5768289A (en) Dynamically controlling the number of boundary-scan cells in a boundary-scan path
US6223313B1 (en) Method and apparatus for controlling and observing data in a logic block-based asic
US5970005A (en) Testing structure and method for high density PLDs which have flexible logic built-in blocks
KR20010089236A (en) Semiconductor integrated circuit device and manufacturing method the same
US9666302B1 (en) System and method for memory scan design-for-test
US5640402A (en) Fast flush load of LSSD SRL chains
US6611932B2 (en) Method and apparatus for controlling and observing data in a logic block-based ASIC
US20140006887A1 (en) On-Chip Probe Circuit for Detecting Faults in an FPGA
US20080256405A1 (en) Compilable memory structure and test methodology for both asic and foundry test environments
US4742293A (en) Pseudo-memory circuit for testing for stuck open faults
US7779316B2 (en) Method of testing memory array at operational speed using scan
US20040097093A1 (en) Test circuit for semiconductor device
JP2004303287A (en) Semiconductor integrated circuit device

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE

AS Assignment

Owner name: GLOBALFOUNDRIES U.S. 2 LLC, NEW YORK

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INTERNATIONAL BUSINESS MACHINES CORPORATION;REEL/FRAME:036550/0001

Effective date: 20150629

AS Assignment

Owner name: GLOBALFOUNDRIES INC., CAYMAN ISLANDS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GLOBALFOUNDRIES U.S. 2 LLC;GLOBALFOUNDRIES U.S. INC.;REEL/FRAME:036779/0001

Effective date: 20150910