WO2023155480A1 - Integrated circuit and test method for integrated circuit - Google Patents

Integrated circuit and test method for integrated circuit Download PDF

Info

Publication number
WO2023155480A1
WO2023155480A1 PCT/CN2022/128643 CN2022128643W WO2023155480A1 WO 2023155480 A1 WO2023155480 A1 WO 2023155480A1 CN 2022128643 W CN2022128643 W CN 2022128643W WO 2023155480 A1 WO2023155480 A1 WO 2023155480A1
Authority
WO
WIPO (PCT)
Prior art keywords
test
option
memory
read
integrated circuit
Prior art date
Application number
PCT/CN2022/128643
Other languages
French (fr)
Chinese (zh)
Inventor
崔昌明
张志方
黄俊林
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2023155480A1 publication Critical patent/WO2023155480A1/en

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/2832Specific tests of electronic circuits not provided for elsewhere
    • G01R31/2834Automated test systems [ATE]; using microprocessors or computers
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present application relates to the technical field of semiconductors, in particular to an integrated circuit and a testing method for the integrated circuit.
  • Built-in self-test means that the circuit has a self-test function that generates test vectors by itself and checks the test results by itself.
  • BIST is realized by building test-related functional circuits into the circuit.
  • BIST is also used in more and more integrated circuits, and the vast majority of integrated circuits use a built-in BIST controller in the integrated circuit to control the module to be tested in the integrated circuit. test.
  • the BIST controller is usually mounted under the test access port (TAP) controller, and the TAP controller receives the test configuration sequence, which includes multiple test options, and the TAP controller
  • TAP test access port
  • the multiple test options are transmitted to the BIST controller, so that the BIST controller controls the module to be tested in the integrated circuit to perform self-test according to the multiple test options.
  • the joint test action group (joint test action group, JTAG) pin in the integrated circuit is turned on, and the integrated circuit automatic test machine (automatic test equipment, ATE) can be connected to the JTAG pin , so that the ATE transmits the generated test configuration sequence to the TAP controller through the JTAG pin, and at this time, the ATE can modify one or more test options in the test configuration sequence according to the current test requirement.
  • the JTAG pins in the integrated circuit are generally closed.
  • the processor in the integrated circuit can then be used to transmit the test configuration sequence to the TAP controller when the integrated circuit is powered on and operating normally.
  • test configuration sequence preset in the read-only memory (ROM) is transmitted to the TAP controller.
  • the test configuration sequence preset in the read-only memory ROM cannot be changed, so that the integrated circuit needs to be tested after power-on, and when the processor in the integrated circuit is not running normally, it cannot be tested according to the actual situation.
  • the test requirement modifies one or more test options in the sequence of test configurations retrieved from the read-only memory ROM.
  • the embodiment of the present application provides an integrated circuit and an integrated circuit testing method, so that the integrated circuit needs to be tested after it is powered on, and when the processor in the integrated circuit is not running normally at this time, it can be tested according to the actual testing requirements Modify one or more test options in a sequence of test configurations retrieved from read-only memory.
  • the embodiment of the present application provides an integrated circuit, including: a read-only memory, an output circuit, and at least one programmable memory; the read-only memory is used to store a first test configuration sequence, and the first test configuration sequence includes a plurality of a test value of a test option; at least one programmable memory for storing a programmed value of a target test option of the plurality of test options; an output circuit configured to read a first test configuration sequence after power-up; the output circuit is also configured by configured to read programmed values of the target test options; the output circuit is further configured to generate a second sequence of test configurations based on the first sequence of test configurations and the programmed values of the target test options.
  • the output circuit reads the first test configuration sequence stored in the read-only memory after power-on, there are multiple test options in the first test configuration sequence, and the output circuit also reads at least one programmable memory
  • the programming value of the target test option stored in since the target test option is the test option that needs to be modified in the first test configuration sequence, after the output circuit obtains the programming value of the first test configuration sequence and the target test sequence, the output circuit can be based on The first test configuration sequence and the programming value of the target test option generate the second test configuration sequence, then when the output circuit sends the second test configuration sequence to the test equipment, the test equipment can perform the test on the module to be tested according to the second test configuration sequence Test, so that the integrated circuit needs to be tested after power-on, and at this time, when the processor in the integrated circuit is not running normally, one of the test configuration sequences obtained from the read-only memory can be modified according to the actual test requirements or multiple test options.
  • At least one programmable memory includes a first storage area and a second storage area, the first storage area is used to store the position of the target test option in the read-only memory, and the second storage area is used to store the programming of the target test option value; the output circuit is also configured to read the location of the target test option in the read-only memory; the output circuit is specifically configured to be based on the first test configuration sequence, the location of the target test option in the read-only memory, and the target test option The programmed value of generates the second test configuration sequence.
  • At least one programmable memory includes two storage areas, the first storage area in the two storage areas stores the position of the target test option in the read-only memory, and the second storage area is used to store the target test option
  • the programming value of the target test option then after the integrated circuit is powered on, the output circuit can read the position of the target test option in the read-only memory from the first storage area, and can also read the programming value of the target test option from the second storage area , since the target test option is the test option that needs to be modified in the first test configuration sequence, the output circuit can specify which test options in the first test configuration sequence need to be modified according to the position of the target test option in the read-only memory, and output The circuit generates a second sequence of test configurations based on the first sequence of test configurations, the location of the target test option in the read-only memory, and the programmed value of the target test option.
  • the output circuit includes a flipper and a selector; the flipper is specifically configured to generate an enable signal according to the position of the target test option in the read-only memory and other positions; wherein the enable signal is in the read-only memory of the target test option The location in the memory is in the first state, the enable signal is in the second state at other locations, and the other locations include the locations in the read-only memory of test options other than the target test option in the first configuration sequence; the selector, Used to obtain the programming value of the target test option in the second storage area when the enable signal is in the first state, and obtain the test values of other test options when the enable signal is in the second state, according to the programming value of the target test option and The test values of the other test options generate a second sequence of test configurations.
  • the flipper In this optional mode, the flipper generates an enable signal according to the position of the target test option in the programmable memory in the read-only memory, and the first state in the enable signal represents the position of the target test option in the read-only memory, The second state of the enable signal indicates the positions of other test options in the read-only memory except the target test option among the plurality of test options, so that the selector can accurately obtain the programming of the target test option according to the different states of the enable signal value and test values of other test options except the target test option, thereby generating a second test configuration sequence.
  • the at least one programmable memory includes a first programmable memory and a second programmable memory; the first programmable memory provides a first storage area, and the second programmable memory provides a second storage area.
  • the programming value of the target test option and the position of the target test option in the read-only memory can be stored in different programmable memories to expand the storage space, so that the integrated circuit can test more targets. Test options are modified.
  • the multiple test options include: a list of modules to be tested, a test intensity parameter, and a test configuration.
  • the target test option includes one or more of the following: a list of modules to be tested, a test intensity parameter, and a test configuration.
  • a method for testing an integrated circuit includes: a read-only memory, an output circuit, and at least one programmable memory; the read-only memory is used to store a first test configuration sequence, and the first test configuration sequence includes multiple The test value of a test option; at least one programmable memory is used to store the programming value of the target test option in the plurality of test options; the test method of the integrated circuit includes: reading the first test configuration sequence after power-on; reading the target Programmed values of test options; generating a second sequence of test configurations based on the first sequence of test configurations and the programmed values of target test options.
  • At least one programmable memory includes a first storage area and a second storage area, the first storage area is used to store the position of the target test option in the read-only memory, and the second storage area is used to store the programming of the target test option value;
  • the test method of the integrated circuit also includes: reading the position of the target test option in the read-only memory; then generating the second test configuration sequence according to the programming value of the first test configuration sequence and the target test option specifically includes: according to the first test The configuration sequence, the location of the target test option in the read-only memory, and the programmed value of the target test option generate a second test configuration sequence.
  • the second test configuration sequence is generated according to the first test configuration sequence, the position of the target test option in the read-only memory, and the programming value of the target test option, specifically including: according to the position of the target test option in the read-only memory and Generate enable signals at other locations; wherein the enable signals are in a first state at locations in the read-only memory of the target test option, and the enable signals are in a second state at other locations, including those in the first configuration sequence except for the target The location of other test options other than the test option in the read-only memory; when the enable signal is in the first state, obtain the programming value of the target test option in the second storage area, and obtain other test options when the enable signal is in the second state Test values for options; generating a second sequence of test configurations based on the programmed values of the target test options and the test values of the other test options.
  • the multiple test options include: a list of modules to be tested, a test intensity parameter, and a test configuration.
  • the target test option includes one or more of the following: a list of modules to be tested, a test intensity parameter, and a test configuration.
  • an electronic device including a printed circuit board and the integrated circuit according to any one of the above-mentioned first aspect disposed on the printed circuit board.
  • a computer-readable storage medium including computer instructions.
  • the computer instructions When the computer instructions are run on an electronic device, the electronic device is made to execute the method described in any one of the above-mentioned second aspects.
  • a computer program product is provided.
  • the computer program product is run on an electronic device, the electronic device is made to execute the method described in any one of the above-mentioned second aspects.
  • the technical effect brought about by any possible implementation manner of the second aspect to the fifth aspect may refer to the technical effect brought about by any one of the different implementation manners of the above-mentioned first aspect, which will not be repeated here.
  • FIG. 1 is a schematic structural diagram of an integrated circuit provided in Embodiment 1 of the present application.
  • FIG. 2 is a schematic structural diagram of an integrated circuit provided in Embodiment 2 of the present application.
  • FIG. 3 is a schematic structural diagram of the BIST provided in Embodiment 2 of the present application.
  • FIG. 4 is a schematic structural diagram of an integrated circuit provided in Embodiment 3 of the present application.
  • FIG. 5 is another schematic structural diagram of the integrated circuit provided in Embodiment 3 of the present application.
  • FIG. 6 is another structural schematic diagram of the integrated circuit provided in Embodiment 3 of the present application.
  • FIG. 7 is a schematic structural diagram of an integrated circuit provided in Embodiment 4 of the present application.
  • FIG. 8 is a schematic structural diagram of an integrated circuit provided in Embodiment 5 of the present application.
  • FIG. 9 is a schematic flowchart of a testing method for an integrated circuit provided in Embodiment 6 of the present application.
  • At least one (unit) of a, b or c can represent: a, b, c, a and b, a and c, b and c or a, b and c, wherein a, b and c can be It can be single or multiple.
  • words such as "first" and "second” do not limit the quantity and order.
  • JTAG joint test action group
  • TAP Test Access Port
  • Built-in self-test means that the circuit has a self-test function that generates test vectors by itself and checks the test results by itself.
  • BIST is realized by building test-related functional circuits into the circuit.
  • BIST is also used in more and more integrated circuits, and the vast majority of integrated circuits use a built-in BIST controller in the integrated circuit to control the module to be tested in the integrated circuit. test.
  • the embodiment of the present application provides the structural representation of integrated circuit 100, and this integrated circuit 100 comprises processor 101, read-only memory (read-only memory, ROM) 102, test equipment 103 and module 104 to be tested .
  • the processor 101 is configured to generate a test configuration sequence
  • the test configuration sequence is stored in the read-only memory 102
  • the above-mentioned test configuration sequence includes a plurality of test options.
  • the test device 103 can receive the test configuration sequence in the processor 101 or receive the test configuration sequence stored in the read-only memory 102, so that the test device 103 treats it according to the test configuration sequence Test module 104 for testing.
  • Fig. 2 provides the schematic structural diagram of the principle of integrated circuit 200, and in this integrated circuit 200, comprise JTAG pin 201, processor 202, read-only memory (read-only memory, ROM) 203, selector 204, TAP controller 205 and BIST controller 206, wherein, JTAG pin 201, processor 202 and ROM 203 are all connected to selector 204, and selector 204 is also connected to TAP controller 205, and TAP controller 205 is connected to the BIST controller 206 .
  • JTAG pin 201, processor 202 and ROM 203 are all connected to selector 204, and selector 204 is also connected to TAP controller 205, and TAP controller 205 is connected to the BIST controller 206 .
  • the BIST controller 206 includes a BIST controller 206a, a BIST controller 206b, and a BIST controller 206c, and each BIST controller includes a logic built in self test (logic built in self test, LBIST) 2061 and/or memory built-in Self-test (memory build in self test, MBIST) 2062.
  • the JTAG pin 201 includes a test data input (test data input, TDI) pin, a test mode selection (test mode selection input, TMS) pin, a test clock input (test clock input, TCK) pin and a test data output (test data output, TDO) pins, these four pins are mandatory pins stipulated in the IEEE1149.1 standard. Wherein, the JTAG pin 201 can also transmit the test configuration sequence.
  • the selector 204 and the TAP controller 205 constitute the testing device 103
  • each MBIST or LBIST in the BIST controller 206 constitutes the module under test 104 .
  • BIST controllers there may be more or fewer BIST controllers in the integrated circuit shown in FIG.
  • Other functional circuits may be included, and the embodiment of the present application does not limit the number of BIST controllers 206 and the functional circuits included in the BIST controller.
  • the selector 204 can select any one of the JTAG pin 201 , the processor 202 or the ROM 203 to transmit the test configuration sequence conforming to the IEEE 1149.1 standard to the TAP controller 205 .
  • an integrated circuit automatic tester (automatic test equipment, ATE) is generally connected to the JTAG pin 201.
  • the selector 204 selects the JTAG pin 201 to transmit the information generated by ATE that complies with IEEE
  • the 1149.1 standard test configuration sequence is sent to the TAP controller, the test configuration sequence includes multiple test options, and the TAP controller transmits the multiple test options to the BIST controller, so that the BIST controller performs self-test according to the multiple test options.
  • the above test configuration sequence also includes the TDI control signal transmitted by the ATE to the TDI pin, the TMS control signal transmitted by the ATE to the TMS pin, and the TCK control signal transmitted by the ATE to the TCK pin.
  • the control signal, the TMS control signal and the TCK control signal are transmitted to the TAP controller 205 so that the TAP control sequence realizes the access to the internal registers of the integrated circuit.
  • the TAP controller connects a selected register between the TDI pin and the TDO pin, and then is driven by the TCK control signal, and transmits the TDI control signal through the TDI pin.
  • the TDI control signal includes the register that needs to be written to the selected The data in one of the registers is used to write the data that needs to be written into the selected register to the selected register, or to read the data in the selected register through the TDO pin .
  • the registers inside the integrated circuit include an instruction register (instruction register, IR) and a data register (data register, DR), and the TMS control signal transmitted by the ATE is kept at a high level and the transmission of the TCK control signal includes at least 5 strobe pulses (A strobe pulse is that the TCK control signal first changes to a high level and then changes to a low level).
  • a strobe pulse is that the TCK control signal first changes to a high level and then changes to a low level.
  • the TAP controller 205 is in the test logic reset state (test logic reset), and then the TAP controller 205 drives according to the rising edge of the TCK control signal.
  • the TAP controller can select the instruction register, write data to the instruction register, read the data in the instruction register, select the data register, and write data to the data register. Write data, read data in the data register and other different functions. It should be noted that, for specific functions that can be realized by switching among the 16 states of the TAP controller, reference may be made to the function description of the existing TAP controller, which will not be repeated here.
  • the ATE transmits the test configuration sequence conforming to the IEEE 1149.1 standard through the JTAG pin 201 and also includes the TRST transmitted to the TRST pin. control signal, and the TAP controller 205 is in a test logic reset state when the TRST control signal is at a high level.
  • TRST test reset input
  • the data registers also include some user-defined data registers (user defined data registers), and the TAP controller 205 can access the user-defined data registers by switching between the above 16 states.
  • selector 204 selects the test configuration sequence that conforms to IEEE 1149.1 standard that JTAG pin 201 transmission ATE generates to TAP controller, and this test configuration sequence also includes a plurality of test options, TAP controller 205 The access to the user-defined registers inside the integrated circuit is realized through the switching of the above 16 states.
  • the TAP controller transmits a plurality of test options through the TDI pin, writes the plurality of test options into different user-defined registers, and then, the TAP controller 205 controls the user-defined data registers to realize user-defined
  • the test options written in the definition register are transmitted to the BIST controller 206, so that the BIST controller performs self-test according to a plurality of test options.
  • test vector generation module 301 includes a linear feedback shift register (linear feedback shift register, LFSR), the test vector generation module 301 can generate test vectors according to the test options, and transmit the generated test vectors to the circuit under test 302.
  • LFSR linear feedback shift register
  • the test vector may be a signal controlling a logic function circuit module in an integrated circuit; in MBIST2062, the test vector may be stored information stored in a memory of the integrated circuit.
  • the circuit under test 302 generates an output value according to the test vector.
  • the circuit under test 302 can be any logic function circuit module in an integrated circuit; in MBIST2062, the circuit under test 302 can specifically be an integrated circuit any of the memory.
  • the output response analysis module 303 includes a multi-input signature register (multiple-input signature register, MISR), and the multi-input signature register MISR obtains an output value from the circuit under test 302, and generates a compressed output vector, which is called a feature , and the output response analysis module 303 compares this characteristic with a known characteristic obtained from a module under test without failure, determines the correctness of the circuit under test 302 according to the comparison result, and generates a test result.
  • MISR multi-input signature register
  • the test result generated by the output response analysis module 303 is transmitted to the BIST controller 206, and the BIST controller 206 is also connected to the user-defined register in the integrated circuit, then the ATE can control the TAP controller 205 so that the user-defined register connected to the BIST controller 206 acquires the test result generated by the output response analysis module 303 in the BIST controller 206, and transmits the test result to the ATE through the TDO pin.
  • the multiple test options in the test configuration sequence transmitted by the ATE to the TAP controller 205 include a list of modules to be tested, a test intensity, and a test configuration.
  • the ATE can modify one or more test options in the test configuration sequence according to actual test requirements, so as to make the self-test of the BIST controller 206 more flexible.
  • the ATE is connected to the JTAG pin 201, and the selector 204 selects the JTAG pin 201 to transmit the test configuration sequence generated by the ATE and conforming to the IEEE 1149.1 standard to the TAP controller.
  • the test configuration sequence Including multiple test options, the BIST controller performs self-test according to multiple test options. It should be noted that after the integrated circuit is manufactured, the JTAG pin 201 in the integrated circuit will be closed, the purpose of which is to prevent the integrated circuit from being maliciously damaged during the application process.
  • the selector 204 can select the test configuration sequence generated by the processor 202 and transmit the IEEE 1149.1 standard to the TAP controller 205, the test configuration sequence Including multiple test options, the BIST controller performs self-test according to multiple test options. Moreover, the processor 202 may modify one or more test options in the test configuration sequence according to actual test requirements, so as to make the self-test of the BIST controller 206 more flexible.
  • processor 202 may be a central processing unit (central processing unit, CPU), a general-purpose processor, a network processor (network processor, NP), a digital signal processor (digital signal processing, DSP), a microprocessor , microcontroller, programmable logic device (programmable logic device, PLD), or any combination of them.
  • the processor 202 may also be any other device with processing functions, such as a circuit, device or software module, and the embodiment of the present application does not specifically limit the specific form of the processor.
  • the selector 204 can select the read-only memory 203 to transmit the test configuration sequence conforming to the IEEE 1149.1 standard to the TAP controller 205, the test configuration sequence includes a plurality of test options, and the BIST controller performs self-test according to the plurality of test options, usually,
  • the test configuration sequence in accordance with the IEEE 1149.1 standard will be preset in the read-only memory 203, and the storage locations of multiple test options in the preset test configuration sequence in the read-only memory 203 will also be stored.
  • test configuration sequence preset in the read-only memory 203 cannot be changed, so that the integrated circuit needs to be tested after being powered on.
  • the test requirement modifies one or more test options in the sequence of test configurations retrieved from the read-only memory ROM.
  • the self-test performed when the integrated circuit is first powered on is also called power-on built-in self-test (power-on BIST).
  • the embodiment of the present application provides an integrated circuit, as shown in FIG.
  • the first test configuration sequence includes the test value of a plurality of test options; the programmable memory 402 is used to store the programming value of the target test option; the output circuit 403 is configured to read the first test configuration sequence; the output circuit 403 is further configured to read the programmed value of the target test option; the output circuit 403 is further configured to generate a second test configuration sequence according to the first test configuration sequence and the programmed value of the target test option.
  • the first test configuration sequence stored in the read-only memory 401 is a test configuration sequence that is preset in the read-only memory 401 and conforms to the IEEE 1149.1 standard when the integrated circuit 400 is produced and manufactured, and the production of the integrated circuit 400
  • the description will show in detail the storage locations and test values of multiple test options in the test configuration sequence preset in the ROM 401 .
  • the multiple test options include: a list of modules to be tested, test intensity and test configuration, the list of modules to be tested is used to indicate which modules to be tested need to be tested, and the test intensity includes: test coverage, test vector number and test time etc., wherein, the test coverage rate indicates the percentage of the module to be tested that can be tested, for example, the test target coverage is 100%, which means that all the modules to be tested are tested, the number of test vectors indicates the test data, and the test time indicates how long it takes to complete the test;
  • the test configuration includes: linear feedback shift register LFSR seed, open clock domain, multi-input feature register MISR comparison value, and test algorithm, etc., where the linear feedback shift register LFSR seed represents the initial value of the linear feedback shift register, and the clock domain is opened Indicates that the test is started when the clock signal is on the rising or falling edge.
  • the comparison value of the multi-input characteristic register MISR represents the characteristic value obtained in the module under test without failure.
  • the test algorithm includes March algorithm and Checkerboard algorithm. Wherein, the test value is specifically used to limit the content or scope of the corresponding test option.
  • the test option may be a list of modules to be tested, and the test value may be the identification of LBIST or MBIST; for another example, the test option may be a test time, and the test value may be a specific time range.
  • the target test option is the test option that needs to be changed.
  • the target test option includes: the list of modules to be tested, the test intensity and the test configuration.
  • the programmable memory 402 is used to store the programming values of the target test options among the plurality of test options. Among them, the programming value is specifically used to limit the content or scope of the corresponding test option change. For example, the test option is the test time, and the test value is 5 seconds, then the programming value can be 10 seconds, which means that the current test time is changed from 5 seconds to 10 seconds.
  • the programmable memory 402 includes one or more of the following memories: programmable read-only memory (programmable read-only memory, PROM), electrically rewritable read-only memory (electrically alterable read only memory, EAROM), erasable programmable Read-only memory (erasable programmable read only memory, EPROM), electrically erasable programmable read-only memory (Electrically erasable programmable read only memory, EEPROM), one time programmable read-only memory (OTPROM) and electronic fuse (electric-fuse, EFUSE).
  • PROM programmable read-only memory
  • PROM electrically rewritable read-only memory
  • EAROM electrically alterable read only memory
  • EPROM erasable programmable Read-only memory
  • EEPROM Electrically erasable programmable read-only memory
  • OTPROM one time programmable read-only memory
  • OTPROM electronic fuse
  • the output circuit 403 is configured to read the first test configuration sequence after power-on; the output circuit 403 is also configured to read the programming value of the target test option; the output circuit 403 is also configured to read the first test configuration sequence according to the first test configuration sequence; and the programmed values of the target test options generate a second sequence of test configurations.
  • the output circuit 403 can transmit the second test configuration sequence to the device under test through a standard interface, and then the device under test is tested according to the second test configuration sequence The module is tested.
  • the output circuit 403 may transmit the second test configuration sequence to the test device 404 , so that the test device 404 tests the module to be tested 405 according to the second test configuration sequence.
  • the output circuit reads the first test configuration sequence stored in the read-only memory after power-on, the first test configuration sequence includes a plurality of test options, and the output circuit also reads the first test configuration sequence stored in at least one programmable memory
  • the programming value of the stored target test option since the target test option is the test option that needs to be modified in the first test configuration sequence, after the output circuit obtains the first test configuration sequence and the programming value of the target test option, the output circuit can be used according to the first test configuration sequence.
  • test configuration sequence and the programming value of the target test option generate a second test configuration sequence, then when the output circuit sends the second test configuration sequence to the test equipment, the test equipment can test the module to be tested according to the second test configuration sequence , so that the integrated circuit needs to be tested after power-on, and at this time, when the processor in the integrated circuit is not running normally, one or Multiple testing options.
  • the programmable memory 402 may include a first storage area and a second storage area, the first storage area is used to store the position of the target test option in the read-only memory, and the second storage area is used to store the programming of the target test option value; then the output circuit 403 is also configured to read the position of the target test option in the read-only memory 401; the output circuit 403 is specifically configured as according to the first test configuration sequence, the position of the target test option in the read-only memory 401 The programmed values of the location and target test options generate a second sequence of test configurations.
  • the target test option can be found according to the content recorded in the production manual of the integrated circuit 400.
  • the position and the test value in the read memory 401 then, store the position of the target test option in the read-only memory 401 in the first storage area of the programmable memory 402, store the target test in the second storage area of the programmable memory 402
  • the programmatic value of the option when it is necessary to change the test value of one or more test options in the multiple test options stored in the read-only memory 401 according to different test requirements, the target test option can be found according to the content recorded in the production manual of the integrated circuit 400.
  • the position and the test value in the read memory 401 then, store the position of the target test option in the read-only memory 401 in the first storage area of the programmable memory 402, store the target test in the second storage area of the programmable memory 402
  • the programmatic value of the option when it is necessary to change the test value of one or more test options in the multiple test options stored in the read-only memory 401 according to different test
  • only one programmable memory 402 may be provided, and the storage space of the programmable memory 402 is divided into a first storage area and a second storage area, and stored in the first storage area The location of the target test option in the read-only memory 401, and the programming value of the target test option is stored in the second storage area.
  • the programmable memory 402 in the integrated circuit 400 Including a first programmable memory 4021 and a second programmable memory 4022, the first programmable memory 4021 provides a first storage area, and stores the position of the target test option in the read-only memory 401 in the first programmable memory 4021;
  • the second programmable memory 4022 provides a second storage area, and the programmed values of the target test options are stored in the second programmable memory 4022 .
  • the first storage area is provided by multiple programmable memories
  • the second storage area is provided by multiple programmable memories
  • the first storage area stores the target
  • the second storage area stores the programming value of the target test option.
  • the embodiments of the present application do not limit the number of programmable memories.
  • the output circuit 403 is also configured to read the position of the target test option in the read-only memory 401; the output circuit 403 is specifically configured to read the position of the target test option in the read-only memory 401 according to the first test configuration sequence. and the programmed values of the target test options generate a second sequence of test configurations.
  • the output circuit 403 can read the location of the target test option in the read-only memory from the first storage area, or read the programming value of the target test option from the second storage area, Since the target test option is the test option that needs to be modified in the first test configuration sequence, the output circuit 403 can specify which test options in the first test configuration sequence need to be modified according to the position of the target test option in the read-only memory 401, and The output circuit 403 generates a second test configuration sequence according to the first test configuration sequence, the location of the target test option in the ROM, and the programmed value of the target test option.
  • the output circuit 403 includes a flipper 4031 and a selector 4032; the flipper 4031 is specifically configured to generate an enable signal according to the position of the target test option in the read-only memory 401 and other positions; Wherein the enable signal is in a first state at the position of the target test option in the read-only memory, and the enable signal is in a second state at other positions, the other positions including other test options in the first configuration sequence except the target test option Position in read-only memory 401; selector 4032, used to obtain the programming value of the target test option in the second storage area when the enable signal is in the first state, and obtain other tests when the enable signal is in the second state Test values for the options, generating a second sequence of test configurations based on the programmed values of the target test options and the test values of the other test options.
  • the embodiment of the present application provides a schematic structural diagram of the integrated circuit 400 , the first programmable memory 4021 provides a first storage area, and the second programmable memory 4022 provides a second storage area.
  • the order of bits in the read-only memory 401 and the second programmable memory 4022 in FIG. 7 is from right to left, starting from 1 each time
  • the order of increasing by 1 is sorted
  • the order of storage addresses of the first programmable memory 4021 in FIG. 7 is sorted from right to left, starting from 1 and increasing by 1 each time.
  • 24-bit binary data are stored in the read-only memory 401, which are respectively "010101000111001101110010", each bit of binary data is 1 bit, and the 24-bit binary data is the first test configuration sequence.
  • Multiple test options are included in the first test configuration sequence, as shown in the figure, the 3rd bit to the 6th bit in the 24-bit binary data is the test value "0101" of the first test option, in the 24-bit binary data
  • the 11th to 13th bits are the test value "110" of the second test option, and the 19th to 23rd bits in the 24-bit binary data are the test value "11001" of the third test option, except the above
  • other bits can be other test configuration sequences, or TDI control signals, TMS control signals, and TCK control signals, etc.
  • the test options that need to be modified among the multiple test options are The first test option, the second test option and the third test option are the target test options. Then it is necessary to first find the position of the target test option in the production specification of the integrated circuit 400 , and then store the position of the target test option in the ROM 401 in the first programmable memory 4021 .
  • each 8-bit binary number in the first programmable memory 4021 is regarded as a storage address (8' as shown in FIG. 7 represents 8-bit binary data), and the storage value of each storage address is the The decimal number converted from 8-bit binary data (d2 as shown in FIG. 7 represents the decimal number 2). Referring to Fig. 7, the first programmable memory 4021 in Fig.
  • the binary data stored in the first storage address is "00000010", which represents the decimal number 2, because in the read-only memory In 401, the test value "01" in the first two bits does not need to be modified;
  • the binary data stored in the second storage address is "00000100", which represents the decimal number 4, because in the read-only memory 401,
  • the 3rd bit to the 6th bit are the test value "0101" of the first test option, and the test value of the first test option needs to be modified;
  • the binary data stored in the third storage address is "00000100", which means Decimal number 4, because in the read-only memory 401, the test value "0001” from the 7th bit to the 10th bit does not need to be modified;
  • the binary data stored in the fourth storage address is "00000011", which means Decimal number 3, because in the read-only memory 401, the 11th bit to the 13th bit is the test value "110" of the second test option, and the test value of the second test option needs to be modified;
  • the first to fourth bits store the programming value "1101" of the first test option
  • the fifth to seventh bits store the programming value of the second test option
  • the 8th bit to the 12th bit store the programming value "01010” of the third test option.
  • the stored value of the storage address respectively represents "the number of bits that need to be modified in the read-only memory 401, the number of bits that do not need to be modified in the read-only memory 401, and the number of bits that do not need to be modified in the read-only memory 401, respectively.
  • the number of bits in 401 that needs to be modified, the number of bits in the read-only memory 401 that do not need to be modified stores the position of the target test option in the read-only memory 401.
  • Programmed values for the target test options are stored in the second programmable memory.
  • the flipper 4031 in the output circuit 403 generates an enable signal according to the position of the target test option in the ROM, and the high level state of the enable signal (that is, the above-mentioned The first state) corresponds to the number of bits that need to be modified in the read-only memory 401, that is, the position of the target test option in the read-only memory 401, and the bit length of the high level is equal to the number of bits that need to be modified; enable
  • the low-level state of the signal (that is, the above-mentioned second state) corresponds to the number of bits that do not need to be modified in the read-only memory, that is, the positions of other test options in the read-only memory 401 except the target test option, and The bit length of the low level is equal to the number of bits that need not be modified.
  • the enable signal shown in Figure 7 is a low level with a length of 2 bits, a high level with a length of 4 bits, a low level with a length of 4 bits, and a high level with a length of 3 bits.
  • the selector 4032 in the output circuit 403 when the enable signal is low level, obtains the test values of other test options except the target test option in the first test configuration sequence equal to the bit length of the low level.
  • the enable signal is at a high level, the programming value of the target test option in the second programmable memory 4022 whose bit length is equal to the high level is acquired.
  • a second sequence of test configurations is generated based on the programmed values of the target test option and the test values of the other test options than the target test option.
  • the selector 4032 obtains the value of the first bit to the second bit in the read-only memory 401 as a test value "01", and then When the enable signal is a high level with a length of 4 bits, the selector 4032 obtains the value from the first bit to the fourth bit in the second programmable memory 4022 as a programming value "1101", and when the enable signal is 4 When the low level of the bit length, the selector 4032 obtains the value of the 7th bit to the 10th bit in the read-only memory 401 as a test value "0001", when the enable signal is a high level of 3 bit length level, the selector 4032 obtains the value of the 4th bit to the 6th bit in the second programmable memory 4022 as a programming value "010", and when the enable signal is a low level with a length of 5 bits, select The selector 4032 obtains the value of the 14th bit to the 18th bit in the read-
  • the selector 4032 When the enable signal is a high level with a length of 5 bits, the selector 4032 obtains the second programmable The value of the 8th bit to the 12th bit in the memory 4022 is used as a programming value "01010"; The bit value is used as a test value "0", and the second test configuration sequence "011101000110101101010100" is sequentially generated. It also proves that the read-only memory 401 transmits 1-bit binary data to the selector 4032 within each bit length of the enable signal, and the second programmable memory 4022 transmits 1-bit binary data to the selector 4032 during a high-level bit length of the enable signal. 1-bit binary data is transmitted to the selector 4032.
  • the flipper 4031 can flip the stored value of the even-numbered storage address in the first programmable memory 4021 according to flipping the stored value of the odd-numbered storage address in the first programmable memory 4021 to a low level.
  • the enable signal is generated according to the rule of high level, and the bit length of the low level/high level of the enable signal is equal to the storage value of the corresponding storage address in the first programmable memory 4021 .
  • the storage value of each storage address in the first programmable memory 4021 is the decimal number corresponding to the binary number stored in the current storage address.
  • each 8-bit binary number in the first programmable memory 4021 is regarded as a storage address. When the 8-bit binary number is all 1, it is "11111111", and the corresponding decimal number is 255.
  • the flipper 4031 can flip the stored value of the even-numbered storage address in the first programmable memory 4021 according to flipping the stored value of the odd-numbered storage address in the first programmable memory 4021 to a low level.
  • the enable signal is generated according to the rule of high level, and the bit length of the low level/high level of the enable signal is equal to the storage value of the corresponding storage address in the first programmable memory 4021 .
  • the storage value of each storage address in the first programmable memory 4021 is the decimal number corresponding to the binary number stored in the current storage address.
  • the read-only memory 401 a total of 1000 bits are included, and the test value of the 1st bit to the 550th bit does not need to be modified, and the test value of the 551st bit to the 790th bit needs to be modified.
  • the test values from the 791st bit to the 1000th bit do not need to be modified, which means that the first programmable memory 4021 needs to store decimal numbers 550, 240, 210.
  • Each 8-bit binary number in the first programmable memory 4021 is regarded as a storage address. When the 8-bit binary number is all 1, it is "11111111", and the corresponding decimal number is 255.
  • FIG. 7 is an example in which each storage address in the first programmable memory 4021 contains 8 bits.
  • the bits contained in each storage address of the first programmable memory 4021 The number may be any positive integer number of bits, which is not limited in the embodiment of the present application.
  • the flipper 4031 can flip the odd-numbered decimal number transmitted from the first programmable memory 4021 to the flipper 4031 to a low level, and transfer the first programmable memory 4021 to the even-numbered decimal number of the flipper 4031.
  • the enable signal is generated according to the rule that the number is flipped to a high level, and the bit length of the low level/high level of the enable signal is equal to the decimal number transmitted from the corresponding first programmable memory 4021 to the flipper 4031 .
  • a total of 1000 bits are included, and the test value of the 1st bit to the 500th bit does not need to be modified, and the test value of the 501st bit to the 754th bit needs to be modified.
  • the test values from the 755th bit to the 1000th bit do not need to be modified, which means that the first programmable memory 4021 needs to store decimal numbers 500, 254, 246.
  • every 8 binary digits in the first programmable memory 4021 is regarded as a storage address, and the maximum decimal number that can be stored in a storage address in the first programmable memory 4021 is 254, for example, the first programmable
  • the binary number stored in the nth storage address of the programming memory 4021 is "11111111"
  • the binary numbers stored in the nth storage address are all "1"
  • the upper 7 binary numbers are "1" to indicate that the binary number stored in the nth storage address is "1".
  • the binary number stored in n storage addresses is actually "11111110", which corresponds to the decimal number 254, and the lower 1-bit binary number is "1", which means that the current nth storage address is continuous with the n+1th storage address.
  • the binary number stored in the n+1 storage address is "00101010", corresponding to the decimal number 42, and the first programmable memory 4021 adds the decimal number stored in the nth storage address to the decimal number stored in the n+1th storage address, That is, 254+42, the decimal number 296 is transmitted to the flipper 4031 .
  • the binary number stored in the first storage address is "11111111” corresponding to the decimal number 254, and the second storage address The stored binary number is "11110110” corresponding to the decimal number 246.
  • the first programmable memory 4021 transmits the decimal number 254+246, that is, 500, to the flipper 4031 , so that the flipper 4031 flips the decimal number 500 into a low level with a length of 500 bits, indicating that the 500 bits do not need to be modified;
  • the binary number stored in the third storage address is "11111110” corresponding to the decimal number 254,
  • the first programmable memory 4021 transmits the decimal number 254 to the flipper 4031, so that the flipper 4031 flips the decimal number 254 into a high level with a length of 254 bits, indicating that 254 bits need to be modified;
  • the fourth storage The binary number stored in the address is "11110110" corresponding to the decimal number 246, and the first programmable memory 4021 transmits the decimal number 246 to the flipper 4031, so that the flipper 4031 flips the decimal number 246 into a low level with a length of 246 bits ,
  • the flipper 4031 in the output circuit 403 when the integrated circuit 400 is powered on, the flipper 4031 in the output circuit 403 generates an enable signal according to the location of the target test option in the read-only memory, or the enable signal can be in a low-level state Corresponding to the number of bits that need to be modified in the read-only memory 401, that is, the position of the target test option in the read-only memory 401, and the bit length of the low level is equal to the number of bits that need to be modified; the high level of the enable signal
  • the level state corresponds to the number of bits that do not need to be modified in the read-only memory, that is, the positions of other test options in the read-only memory 401 except the target test option, and the bit length of the high level is equal to the number of bits that need not be modified.
  • the selector 4032 in the output circuit 403 when the enable signal is high level, obtains the test values of other test options except the target test option in the first test configuration sequence equal to the bit length of the high level.
  • the enable signal is at low level, the programming value of the target test option in the second programmable memory 4022 whose bit length is equal to the low level is acquired.
  • a second sequence of test configurations is generated based on the programmed values of the target test option and the test values of the other test options than the target test option.
  • the embodiment of the present application provides a schematic structural diagram of an integrated circuit 800.
  • the integrated circuit 800 needs to be tested after power-on, but the The processor 802 is not running normally, and the JTAG pin 801 in the integrated circuit 800 is also closed, then, the selector 803 can select the second test configuration sequence in accordance with the IEEE 1149.1 standard transmitted by the selector 4032 to the TAP controller 804 , wherein, the flipper 4031 generates an enable signal according to the position of the target test option in the read-only memory 401, and the high level state of the enable signal corresponds to the number of bits to be modified in the read-only memory 401, that is, The target test option is at the position in the read-only memory 401, and the bit length of the high level is equal to the number of bits that need to be modified; the low-level state of the enable signal corresponds to the number of bits that do not need to be modified in the read-only memory , that is, the positions of other test options
  • the first test configuration sequence is stored in the read-only memory 401, the first test configuration sequence includes the test values of a plurality of test options, and the read-only memory 401 is in each bit length of the enable signal (no matter it is a high level The bit length is also a low level bit length) to transmit 1-bit binary data to the selector 4032 .
  • the second programmable memory 4022 stores the programming value of the target test option, and the second programmable memory 4022 transmits 1-bit binary data to the selector 4032 within a high level bit length of the enable signal.
  • the selector 4032 obtains the test values of other test options except the target test option in the first test configuration sequence equal to the bit length of the low level when the enable signal is at a low level, and when the enable signal is at a high level , acquire the programming value of the target test option in the second programmable memory 4022 whose bit length is equal to that of the high level.
  • the TAP controller 804 selects a user-defined data register in the integrated circuit according to the TMS control signal and the TCK control signal, and transmits multiple test options through the TDI pin , write a plurality of test options into the selected user-defined registers, then, the TAP controller 804 transmits the test options written in the user-defined registers to the BIST controller 805 according to the TMS control signal and the TCK control signal, and then Causes the BIST controller 805 to perform a self-test according to a number of test options.
  • the ATE can be connected to the JTAG pin 801, and the selector 804 selects the JTAG pin 801 to transmit the test configuration sequence generated by the ATE and conforming to the IEEE 1149.1 standard to the TAP.
  • the test configuration sequence includes a TDI control signal, a TMS control signal, a TCK control signal and a plurality of test options, wherein the TAP controller 804 selects a user-defined data register in the integrated circuit according to the TMS control signal and the TCK control signal , and transmit multiple test options through the TDI pin, and write multiple test options into the selected user-defined register, and then, the TAP controller 804 writes the user-defined register according to the TMS control signal and the TCK control signal
  • the test options are transmitted to the BIST controller 805, so that the BIST controller 805 performs a self-test according to the plurality of test options. It should be noted that after the integrated circuit is manufactured, the JTAG pin 801 in the integrated circuit will be closed, the purpose of which is to prevent the integrated circuit from being maliciously damaged during the application process.
  • the selector 803 can select the processor 802 to transmit the test configuration sequence generated by the processor 802 to the TAP controller 804 in accordance with the IEEE 1149.1 standard, the test configuration sequence Including TDI control signal, TMS control signal, TCK control signal and multiple test options, wherein, the TAP controller 804 selects the user-defined data register in the integrated circuit according to the TMS control signal and the TCK control signal, and transmits multiple data registers through the TDI pin.
  • test option multiple test options are written into the selected user-defined register, and then, the TAP controller 804 transmits the test option written in the user-defined register to the BIST controller according to the TMS control signal and the TCK control signal 805, further enabling the BIST controller 805 to perform a self-test according to multiple test options.
  • an embodiment of the present application provides a method for testing an integrated circuit, wherein the integrated circuit includes: a read-only memory, an output circuit, and at least one programmable memory; the read-only memory is used to store the first test configuration sequence , the first test configuration sequence includes test values of a plurality of test options; at least one programmable memory is used to store the programmed values of the target test options.
  • the testing method of this integrated circuit comprises:
  • the second test configuration sequence may be transmitted to the test equipment, so that the test equipment performs a test on the module to be tested according to the second test configuration sequence.
  • At least one programmable memory includes a first storage area and a second storage area, the first storage area is used to store the position of the target test option in the read-only memory, and the second storage area is used to store the programming value of the target test option;
  • the method for testing an integrated circuit further includes reading the location of the target test option in the ROM before step 903 .
  • step 903 specifically includes: generating a second test configuration sequence according to the first test configuration sequence, the location of the target test option in the ROM, and the programming value of the target test option.
  • the output circuit in the integrated circuit includes a flipper and a selector, then the above step 903 specifically includes:
  • the enable signal is in a first state at the position of the target test option in the read-only memory, and the enable signal is in a second state at other positions, the other positions including other test options in the first configuration sequence except the target test option location in read-only memory.
  • the multiple test options include: a list of modules to be tested, test intensity and test configuration, the list of modules to be tested is used to indicate which modules to be tested need to be tested, and the test intensity includes: test coverage, test vector number and test time etc., wherein, the test coverage rate indicates the percentage of the module to be tested that can be tested, for example, the test target coverage is 100%, which means that all the modules to be tested are tested, the number of test vectors indicates the test data, and the test time indicates how long it takes to complete the test;
  • the test configuration includes: linear feedback shift register LFSR seed, open clock domain, multi-input feature register MISR comparison value, and test algorithm, etc., where the linear feedback shift register LFSR seed represents the initial value of the linear feedback shift register, and the clock domain is opened Indicates that the test is started when the clock signal is on the rising or falling edge.
  • the comparison value of the multi-input characteristic register MISR represents the characteristic value obtained in the module under test without failure.
  • the test algorithm includes "March algorithm, Checkerboard algorithm.
  • the target test option is multiple One or more of the test options that need to be modified.
  • the target test options include one or more of the following: list of modules to be tested, test intensity parameters, and test configuration.
  • the embodiment of the present application provides an electronic device, the electronic device includes a printed circuit board (printed circuit board, PCB) and an integrated circuit arranged on the PCB, the integrated circuit can be any one of the aforementioned integrated circuit, the electronic device includes, for example, a mobile phone, a tablet computer, a personal digital assistant (personal digital assistant, PDA), a vehicle-mounted computer, and the like.
  • the embodiment of the present application does not specifically limit the specific form of the electronic device.
  • the integrated circuit in the electronic device can execute the above-mentioned integrated circuit testing method.
  • the embodiment of the present application also provides a computer-readable storage medium, the computer-readable storage medium stores computer program code, and when the electronic device executes the computer program code, the electronic device executes the integrated circuit testing method in the above-mentioned embodiments.
  • the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the software product is stored in a storage medium Among them, several instructions are included to make a device (which may be a single-chip microcomputer, a chip, etc.) or a processor (processor) execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage medium includes: various media that can store program codes such as U disk, mobile hard disk, read only memory (ROM), random access memory (random access memory, RAM), magnetic disk or optical disk.
  • Embodiments of the present application also provide a computer program product, which, when running on an electronic device, causes the electronic device to execute the above-mentioned related steps, so as to implement the method for testing an integrated circuit in the above-mentioned embodiment.
  • the disclosed devices and methods may be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components can be Incorporation or may be integrated into another device, or some features may be omitted, or not implemented.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
  • the unit described as a separate component may or may not be physically separated, and the component displayed as a unit may be one physical unit or multiple physical units, that is, it may be located in one place, or may be distributed to multiple different places . Part or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
  • the integrated unit is realized in the form of a software function unit and sold or used as an independent product, it can be stored in a readable storage medium.
  • the above content is only the specific implementation of the application, but the scope of protection of the application is not limited thereto.
  • anyone familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the application, and should covered within the scope of protection of this application. Therefore, the protection scope of the present application should be determined by the protection scope of the claims.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

An integrated circuit and a test method for an integrated circuit, which relate to the technical field of semiconductors. An integrated circuit needs to be tested after the integrated circuit is powered on, and at said time, when a processor in the integrated circuit is not running normally, one or a plurality of test options in a test configuration sequence obtained from a read-only memory (401) may be modified according to the actual test requirements. The integrated circuit comprises the read-only memory (401), an output circuit (403), and at least one programmable memory (402). The read-only memory (401) stores a first test configuration sequence, and the first test configuration sequence comprises test values of the plurality of test options. The at least one programmable memory (402) stores a programming value of a target test option among the plurality of test options. The output circuit (403) is configured to read the first test configuration sequence after being powered on (901). The output circuit (403) is further configured to read the programming value of the target test option (902). The output circuit (403) is further configured to generate a second test configuration sequence according to the first test configuration sequence and the programming value of the target test option (903).

Description

集成电路及集成电路的测试方法Integrated circuits and test methods for integrated circuits
本申请要求于2022年02月15日提交国家知识产权局、申请号为202210138952.4、申请名称为“集成电路及集成电路的测试方法”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of a Chinese patent application filed with the State Intellectual Property Office on February 15, 2022, with application number 202210138952.4, and application title "Integrated Circuits and Testing Methods for Integrated Circuits", the entire contents of which are incorporated herein by reference. Applying.
技术领域technical field
本申请涉及半导体技术领域,尤其是涉及一种集成电路及集成电路的测试方法。The present application relates to the technical field of semiconductors, in particular to an integrated circuit and a testing method for the integrated circuit.
背景技术Background technique
内建自测试(build in self test,BIST)是指电路有自行生成测试向量,并自行检查测试结果的自测试功能,通常是通过在电路中内置与测试相关的功能电路来实现BIST。随着半导体产业的迅速发展,越来越多的集成电路中也使用BIST,并且,绝大多数的集成电路是通过在集成电路中内置BIST控制器以实现控制集成电路中的待测模块进行自测试。Built-in self-test (build in self test, BIST) means that the circuit has a self-test function that generates test vectors by itself and checks the test results by itself. Usually, BIST is realized by building test-related functional circuits into the circuit. With the rapid development of the semiconductor industry, BIST is also used in more and more integrated circuits, and the vast majority of integrated circuits use a built-in BIST controller in the integrated circuit to control the module to be tested in the integrated circuit. test.
在集成电路的设计中,BIST控制器通常会挂载到测试访问端口(test access port,TAP)控制器下,TAP控制器接收测试配置序列,测试配置序列中包括多个测试选项,TAP控制器将多个测试选项传输至BIST控制器,以使得BIST控制器根据多个测试选项控制集成电路中的待测模块进行自测试。示例性的,在集成电路生产过程中,集成电路中的联合测试工作组(joint test action group,JTAG)管脚开启,可以将集成电路自动测试机(automatic test equipment,ATE)连接至JTAG管脚,以使得ATE将生成的测试配置序列通过JTAG管脚传输至TAP控制器,此时,ATE可以根据当前的测试需求修改测试配置序列中的一个或多个测试选项。在集成电路生产制造完成以后,为了确保集成电路的安全,一般会将集成电路中的JTAG管脚封闭。那么在集成电路通电并正常运行时,可以使用集成电路中的处理器传输测试配置序列至TAP控制器。如果该集成电路在上电后需要进行测试,然而此时的集成电路中的处理器还未正常运行,并且该集成电路中的JTAG管脚也被封闭,那么只能通过将集成电路中的只读存储器(read-only memory,ROM)中预置的测试配置序列传输至TAP控制器。但是,只读存储器ROM中预置的测试配置序列是不能更改的,使得该集成电路在上电后需要进行测试,而此时的集成电路中的处理器还未正常运行时,不能根据实际的测试需求修改从只读存储器ROM中获取的测试配置序列中的一个或多个测试选项。In the design of integrated circuits, the BIST controller is usually mounted under the test access port (TAP) controller, and the TAP controller receives the test configuration sequence, which includes multiple test options, and the TAP controller The multiple test options are transmitted to the BIST controller, so that the BIST controller controls the module to be tested in the integrated circuit to perform self-test according to the multiple test options. Exemplarily, during the production process of the integrated circuit, the joint test action group (joint test action group, JTAG) pin in the integrated circuit is turned on, and the integrated circuit automatic test machine (automatic test equipment, ATE) can be connected to the JTAG pin , so that the ATE transmits the generated test configuration sequence to the TAP controller through the JTAG pin, and at this time, the ATE can modify one or more test options in the test configuration sequence according to the current test requirement. After the integrated circuit is manufactured, in order to ensure the safety of the integrated circuit, the JTAG pins in the integrated circuit are generally closed. The processor in the integrated circuit can then be used to transmit the test configuration sequence to the TAP controller when the integrated circuit is powered on and operating normally. If the integrated circuit needs to be tested after it is powered on, but the processor in the integrated circuit is not running normally at this time, and the JTAG pins in the integrated circuit are also closed, then only The test configuration sequence preset in the read-only memory (ROM) is transmitted to the TAP controller. However, the test configuration sequence preset in the read-only memory ROM cannot be changed, so that the integrated circuit needs to be tested after power-on, and when the processor in the integrated circuit is not running normally, it cannot be tested according to the actual situation. The test requirement modifies one or more test options in the sequence of test configurations retrieved from the read-only memory ROM.
发明内容Contents of the invention
本申请实施例提供一种集成电路及集成电路的测试方法,使得该集成电路在上电后需要进行测试,而此时的集成电路中的处理器还未正常运行时,可以根据实际的测试需求修改从只读存储器中获取的测试配置序列中的一个或多个测试选项。The embodiment of the present application provides an integrated circuit and an integrated circuit testing method, so that the integrated circuit needs to be tested after it is powered on, and when the processor in the integrated circuit is not running normally at this time, it can be tested according to the actual testing requirements Modify one or more test options in a sequence of test configurations retrieved from read-only memory.
为达到上述目的,本申请实施例采用如下技术方案:In order to achieve the above purpose, the embodiment of the present application adopts the following technical solutions:
第一方面,本申请实施例提供了一种集成电路,包括:只读存储器、输出电路以及至少一个可编程存储器;只读存储器用于存储第一测试配置序列,第一测试配置序列包括多个测试选项的测试值;至少一个可编程存储器用于存储多个测试选项中的目标测试选项的编程值;输出电路,被配置为在上电后读取第一测试配置序列;输出电 路,还被配置为读取目标测试选项的编程值;输出电路,还被配置为根据第一测试配置序列以及目标测试选项的编程值生成第二测试配置序列。在上述的集成电路中,输出电路在上电后读取只读存储器中存储的第一测试配置序列,第一测试配置序列中有多个测试选项,并且输出电路也读取至少一个可编程存储器中存储的目标测试选项的编程值,由于目标测试选项就是第一测试配置序列中需要修改的测试选项,在输出电路获取到第一测试配置序列以及目标测试序列的编程值以后,输出电路可以根据第一测试配置序列以及目标测试选项的编程值,生成第二测试配置序列,那么在输出电路将第二测试配置序列发送至测试设备时,测试设备即可根据第二测试配置序列对待测模块进行测试,使得该集成电路在上电后需要进行测试,而此时的集成电路中的处理器还未正常运行时,可以根据实际的测试需求修改从只读存储器中获取的测试配置序列中的一个或多个测试选项。In the first aspect, the embodiment of the present application provides an integrated circuit, including: a read-only memory, an output circuit, and at least one programmable memory; the read-only memory is used to store a first test configuration sequence, and the first test configuration sequence includes a plurality of a test value of a test option; at least one programmable memory for storing a programmed value of a target test option of the plurality of test options; an output circuit configured to read a first test configuration sequence after power-up; the output circuit is also configured by configured to read programmed values of the target test options; the output circuit is further configured to generate a second sequence of test configurations based on the first sequence of test configurations and the programmed values of the target test options. In the above integrated circuit, the output circuit reads the first test configuration sequence stored in the read-only memory after power-on, there are multiple test options in the first test configuration sequence, and the output circuit also reads at least one programmable memory The programming value of the target test option stored in , since the target test option is the test option that needs to be modified in the first test configuration sequence, after the output circuit obtains the programming value of the first test configuration sequence and the target test sequence, the output circuit can be based on The first test configuration sequence and the programming value of the target test option generate the second test configuration sequence, then when the output circuit sends the second test configuration sequence to the test equipment, the test equipment can perform the test on the module to be tested according to the second test configuration sequence Test, so that the integrated circuit needs to be tested after power-on, and at this time, when the processor in the integrated circuit is not running normally, one of the test configuration sequences obtained from the read-only memory can be modified according to the actual test requirements or multiple test options.
可选的,至少一个可编程存储器包括第一存储区域和第二存储区域,第一存储区域用于存储目标测试选项在只读存储器中的位置,第二存储区域用于存储目标测试选项的编程值;输出电路,还被配置为读取目标测试选项在只读存储器中的位置;输出电路,具体被配置为根据第一测试配置序列、目标测试选项在只读存储器中的位置以及目标测试选项的编程值生成第二测试配置序列。在该可选方案中,至少一个可编程存储器包括两个存储区域,两个存储区域中的第一存储区域存储目标测试选项在只读存储器中的位置,第二存储区域用于存储目标测试选项的编程值,那么在集成电路上电后,输出电路可以从第一存储区域中读取目标测试选项在只读存储器中的位置,也可以从第二存储区域中读取目标测试选项的编程值,由于目标测试选项就是第一测试配置序列中需要修改的测试选项,那么输出电路可以根据目标测试选项在只读存储器中的位置明确第一测试配置序列中的哪些测试选项需要被修改,并且输出电路根据第一测试配置序列、目标测试选项在只读存储器中的位置以及目标测试选项的编程值生成第二测试配置序列。Optionally, at least one programmable memory includes a first storage area and a second storage area, the first storage area is used to store the position of the target test option in the read-only memory, and the second storage area is used to store the programming of the target test option value; the output circuit is also configured to read the location of the target test option in the read-only memory; the output circuit is specifically configured to be based on the first test configuration sequence, the location of the target test option in the read-only memory, and the target test option The programmed value of generates the second test configuration sequence. In this optional solution, at least one programmable memory includes two storage areas, the first storage area in the two storage areas stores the position of the target test option in the read-only memory, and the second storage area is used to store the target test option The programming value of the target test option, then after the integrated circuit is powered on, the output circuit can read the position of the target test option in the read-only memory from the first storage area, and can also read the programming value of the target test option from the second storage area , since the target test option is the test option that needs to be modified in the first test configuration sequence, the output circuit can specify which test options in the first test configuration sequence need to be modified according to the position of the target test option in the read-only memory, and output The circuit generates a second sequence of test configurations based on the first sequence of test configurations, the location of the target test option in the read-only memory, and the programmed value of the target test option.
可选的,输出电路包括翻转器和选择器;翻转器,具体被配置为根据目标测试选项在只读存储器中的位置和其他位置生成使能信号;其中使能信号在目标测试选项在只读存储器中的位置处为第一状态,使能信号在其他位置处为第二状态,其他位置包括第一配置序列中除目标测试选项以外的其他测试选项在只读存储器中的位置;选择器,用于在使能信号为第一状态时获取第二存储区域中的目标测试选项的编程值,在使能信号为第二状态时获取其他测试选项的测试值,根据目标测试选项的编程值以及其他测试选项的测试值生成第二测试配置序列。在该可选方式中,翻转器根据可编程存储器中的目标测试选项在只读存储器中的位置生成使能信号,使能信号中的第一状态表示目标测试选项在只读存储器中的位置,使能信号的第二状态表示多个测试选项中除目标测试选项以外的其他测试选项在只读存储器中的位置,以使得选择器可以根据使能信号的不同状态准确获取到目标测试选项的编程值以及除目标测试选项外的其他测试选项的测试值,进而生成第二测试配置序列。Optionally, the output circuit includes a flipper and a selector; the flipper is specifically configured to generate an enable signal according to the position of the target test option in the read-only memory and other positions; wherein the enable signal is in the read-only memory of the target test option The location in the memory is in the first state, the enable signal is in the second state at other locations, and the other locations include the locations in the read-only memory of test options other than the target test option in the first configuration sequence; the selector, Used to obtain the programming value of the target test option in the second storage area when the enable signal is in the first state, and obtain the test values of other test options when the enable signal is in the second state, according to the programming value of the target test option and The test values of the other test options generate a second sequence of test configurations. In this optional mode, the flipper generates an enable signal according to the position of the target test option in the programmable memory in the read-only memory, and the first state in the enable signal represents the position of the target test option in the read-only memory, The second state of the enable signal indicates the positions of other test options in the read-only memory except the target test option among the plurality of test options, so that the selector can accurately obtain the programming of the target test option according to the different states of the enable signal value and test values of other test options except the target test option, thereby generating a second test configuration sequence.
可选的,至少一个可编程存储器包括第一可编程存储器和第二可编程存储器;第一可编程存储器提供第一存储区域,第二可编程存储器提供第二存储区域。在该可选方式中,可以将目标测试选项的编程值与目标测试选项在只读存储器中的位置存储在 不同的可编程存储器中,以扩大存储空间,使得该集成电路可以对更多的目标测试选项进行修改。Optionally, the at least one programmable memory includes a first programmable memory and a second programmable memory; the first programmable memory provides a first storage area, and the second programmable memory provides a second storage area. In this optional mode, the programming value of the target test option and the position of the target test option in the read-only memory can be stored in different programmable memories to expand the storage space, so that the integrated circuit can test more targets. Test options are modified.
可选的,多个测试选项包括:待测模块列表,测试强度参数以及测试配置。Optionally, the multiple test options include: a list of modules to be tested, a test intensity parameter, and a test configuration.
可选的,目标测试选项包括以下一项或多项:待测模块列表,测试强度参数以及测试配置。Optionally, the target test option includes one or more of the following: a list of modules to be tested, a test intensity parameter, and a test configuration.
第二方面,提供了一种集成电路的测试方法,集成电路包括:只读存储器、输出电路以及至少一个可编程存储器;只读存储器用于存储第一测试配置序列,第一测试配置序列包括多个测试选项的测试值;至少一个可编程存储器用于存储多个测试选项中的目标测试选项的编程值;集成电路的测试方法包括:在上电后读取第一测试配置序列;读取目标测试选项的编程值;根据第一测试配置序列以及目标测试选项的编程值生成第二测试配置序列。In a second aspect, a method for testing an integrated circuit is provided. The integrated circuit includes: a read-only memory, an output circuit, and at least one programmable memory; the read-only memory is used to store a first test configuration sequence, and the first test configuration sequence includes multiple The test value of a test option; at least one programmable memory is used to store the programming value of the target test option in the plurality of test options; the test method of the integrated circuit includes: reading the first test configuration sequence after power-on; reading the target Programmed values of test options; generating a second sequence of test configurations based on the first sequence of test configurations and the programmed values of target test options.
可选的,至少一个可编程存储器包括第一存储区域和第二存储区域,第一存储区域用于存储目标测试选项在只读存储器中的位置,第二存储区域用于存储目标测试选项的编程值;集成电路的测试方法还包括:读取目标测试选项在只读存储器中的位置;则根据第一测试配置序列以及目标测试选项的编程值生成第二测试配置序列具体包括:根据第一测试配置序列、目标测试选项在只读存储器中的位置以及目标测试选项的编程值生成第二测试配置序列。Optionally, at least one programmable memory includes a first storage area and a second storage area, the first storage area is used to store the position of the target test option in the read-only memory, and the second storage area is used to store the programming of the target test option value; the test method of the integrated circuit also includes: reading the position of the target test option in the read-only memory; then generating the second test configuration sequence according to the programming value of the first test configuration sequence and the target test option specifically includes: according to the first test The configuration sequence, the location of the target test option in the read-only memory, and the programmed value of the target test option generate a second test configuration sequence.
可选的,根据第一测试配置序列、目标测试选项在只读存储器中的位置以及目标测试选项的编程值生成第二测试配置序列,具体包括:根据目标测试选项在只读存储器中的位置和其他位置生成使能信号;其中使能信号在目标测试选项在只读存储器中的位置处为第一状态,使能信号在其他位置处为第二状态,其他位置包括第一配置序列中除目标测试选项以外的其他测试选项在只读存储器中的位置;在使能信号为第一状态时获取第二存储区域中的目标测试选项的编程值,在使能信号为第二状态时获取其他测试选项的测试值;根据目标测试选项的编程值以及其他测试选项的测试值生成第二测试配置序列。Optionally, the second test configuration sequence is generated according to the first test configuration sequence, the position of the target test option in the read-only memory, and the programming value of the target test option, specifically including: according to the position of the target test option in the read-only memory and Generate enable signals at other locations; wherein the enable signals are in a first state at locations in the read-only memory of the target test option, and the enable signals are in a second state at other locations, including those in the first configuration sequence except for the target The location of other test options other than the test option in the read-only memory; when the enable signal is in the first state, obtain the programming value of the target test option in the second storage area, and obtain other test options when the enable signal is in the second state Test values for options; generating a second sequence of test configurations based on the programmed values of the target test options and the test values of the other test options.
可选的,多个测试选项包括:待测模块列表,测试强度参数以及测试配置。Optionally, the multiple test options include: a list of modules to be tested, a test intensity parameter, and a test configuration.
可选的,目标测试选项包括以下一项或多项:待测模块列表,测试强度参数以及测试配置。Optionally, the target test option includes one or more of the following: a list of modules to be tested, a test intensity parameter, and a test configuration.
第三方面,提供了一种电子设备,包括印刷电路板以及设置于印刷电路板上的如上述第一方面任一项所述的集成电路。In a third aspect, an electronic device is provided, including a printed circuit board and the integrated circuit according to any one of the above-mentioned first aspect disposed on the printed circuit board.
第四方面,提供了一种计算机可读存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行上述第二方面任一项所述的方法。In a fourth aspect, there is provided a computer-readable storage medium, including computer instructions. When the computer instructions are run on an electronic device, the electronic device is made to execute the method described in any one of the above-mentioned second aspects.
第五方面,提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述第二方面任一项所述的方法。In a fifth aspect, a computer program product is provided. When the computer program product is run on an electronic device, the electronic device is made to execute the method described in any one of the above-mentioned second aspects.
其中,第二方面至第五方面中任一种可能实现方式中所带来的技术效果可参见上述第一方面任一项不同的实现方式所带来的技术效果,此处不再赘述。Wherein, the technical effect brought about by any possible implementation manner of the second aspect to the fifth aspect may refer to the technical effect brought about by any one of the different implementation manners of the above-mentioned first aspect, which will not be repeated here.
附图说明Description of drawings
图1为本申请的实施例一提供的集成电路的结构示意图;FIG. 1 is a schematic structural diagram of an integrated circuit provided in Embodiment 1 of the present application;
图2为本申请的实施例二提供的集成电路的结构示意图;FIG. 2 is a schematic structural diagram of an integrated circuit provided in Embodiment 2 of the present application;
图3为本申请的实施例二提供的BIST的结构示意图;FIG. 3 is a schematic structural diagram of the BIST provided in Embodiment 2 of the present application;
图4为本申请的实施例三提供的集成电路的一种结构示意图;FIG. 4 is a schematic structural diagram of an integrated circuit provided in Embodiment 3 of the present application;
图5为本申请的实施例三提供的集成电路的另一种结构示意图;FIG. 5 is another schematic structural diagram of the integrated circuit provided in Embodiment 3 of the present application;
图6为本申请的实施例三提供的集成电路的再一种结构示意图;FIG. 6 is another structural schematic diagram of the integrated circuit provided in Embodiment 3 of the present application;
图7为本申请的实施例四提供的集成电路的结构示意图;FIG. 7 is a schematic structural diagram of an integrated circuit provided in Embodiment 4 of the present application;
图8为本申请的实施例五提供的集成电路的结构示意图;FIG. 8 is a schematic structural diagram of an integrated circuit provided in Embodiment 5 of the present application;
图9为本申请的实施例六提供的集成电路的测试方法的流程示意图。FIG. 9 is a schematic flowchart of a testing method for an integrated circuit provided in Embodiment 6 of the present application.
具体实施方式Detailed ways
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。The following will describe the technical solutions in the embodiments of the application with reference to the drawings in the embodiments of the application. Apparently, the described embodiments are only some of the embodiments of the application, not all of them.
除非另有定义,否则本文所用的所有科技术语都具有与本领域普通技术人员公知的含义相同的含义。在本申请中,“至少一个(层)”是指一个(层)或者多个(层),“多个(层)”是指两个(层)或两个(层)以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,a和b,a和c,b和c或a、b和c,其中a、b和c可以是单个,也可以是多个。另外,在本申请的实施例中,“第一”、“第二”等字样并不对数量和次序进行限定。Unless otherwise defined, all technical and scientific terms used herein have the same meanings as commonly understood by one of ordinary skill in the art. In this application, "at least one (layer)" means one (layer) or multiple (layers), and "multiple (layers)" means two (layers) or more than two (layers). "And/or" describes the association relationship of associated objects, indicating that there may be three types of relationships, for example, A and/or B, which can mean: A exists alone, A and B exist at the same time, and B exists alone, where A, B can be singular or plural. The character "/" generally indicates that the contextual objects are an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (unit) of a, b or c can represent: a, b, c, a and b, a and c, b and c or a, b and c, wherein a, b and c can be It can be single or multiple. In addition, in the embodiments of the present application, words such as "first" and "second" do not limit the quantity and order.
此外,本申请中,“上”、“下”等方位术语是相对于附图中的部件示意置放的方位来定义的,应当理解到,这些方向性术语是相对的概念,它们用于相对于的描述和澄清,其可以根据附图中部件所放置的方位的变化而相应地发生变化。In addition, in this application, directional terms such as "upper" and "lower" are defined relative to the schematic placement of components in the drawings. It should be understood that these directional terms are relative concepts, and they are used for relative For descriptions and clarifications, it may vary accordingly according to changes in the orientation of parts placed in the drawings.
需要说明的是,本申请中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。It should be noted that, in this application, words such as "exemplary" or "for example" are used as examples, illustrations or illustrations. Any embodiment or design described herein as "exemplary" or "for example" is not to be construed as preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "such as" is intended to present related concepts in a concrete manner.
以下对本申请的实施例中的技术术语说明如下:The technical term in the embodiment of the application is explained as follows below:
联合测试工作组(joint test action group,JTAG)是一种国际标准测试协议(与IEEE 1149.1标准兼容),主要用于集成电路内部测试。其基本工作原理是:在集成电路内部定义一个测试访问端口(Test Access Port,TAP)控制器,通过与JTAG调试器传输符合IEEE1149.1标准的测试配置序列至TAP控制器,TAP控制器根据测试配置序列可以实现对集成电路内部的寄存器的访问,例如向集成电路内部的寄存器写入数据或读取集成电路内部的寄存器中的数据,并且JTAG调试器还可以根据写入到集成电路内部的寄存器的数据和/或读取到的集成电路内部的存储器的数据,对集成电路的功能进行测试和调试。The joint test action group (JTAG) is an international standard test protocol (compatible with the IEEE 1149.1 standard), which is mainly used for internal testing of integrated circuits. Its basic working principle is: define a test access port (Test Access Port, TAP) controller inside the integrated circuit, transmit the test configuration sequence conforming to the IEEE1149.1 standard to the TAP controller through the JTAG debugger, and the TAP controller according to the test The configuration sequence can realize the access to the registers inside the integrated circuit, such as writing data to or reading the data in the registers inside the integrated circuit, and the JTAG debugger can also write to the registers inside the integrated circuit The data of the integrated circuit and/or the read data of the internal memory of the integrated circuit are used to test and debug the functions of the integrated circuit.
内建自测试(build in self test,BIST)是指电路有自行生成测试向量,并自行检查测试结果的自测试功能,通常是通过在电路中内置与测试相关的功能电路来实现BIST。随着半导体产业的迅速发展,越来越多的集成电路中也使用BIST,并且,绝 大多数的集成电路是通过在集成电路中内置BIST控制器以实现控制集成电路中的待测模块进行自测试。Built-in self-test (build in self test, BIST) means that the circuit has a self-test function that generates test vectors by itself and checks the test results by itself. Usually, BIST is realized by building test-related functional circuits into the circuit. With the rapid development of the semiconductor industry, BIST is also used in more and more integrated circuits, and the vast majority of integrated circuits use a built-in BIST controller in the integrated circuit to control the module to be tested in the integrated circuit. test.
参照图1所示,本申请的实施例提供了集成电路100的结构示意图,该集成电路100包括处理器101、只读存储器(read-only memory,ROM)102、测试设备103以及待测模块104。其中,处理器101用于生成测试配置序列,只读存储器102中存储有测试配置序列,上述的测试配置序列包括多个测试选项。在集成电路100中的待测模块需要进行自测试时,测试设备103可以接收处理器101中的测试配置序列或者接收只读存储器102中存储的测试配置序列,以便测试设备103根据测试配置序列对待测模块104进行测试。With reference to shown in Figure 1, the embodiment of the present application provides the structural representation of integrated circuit 100, and this integrated circuit 100 comprises processor 101, read-only memory (read-only memory, ROM) 102, test equipment 103 and module 104 to be tested . Wherein, the processor 101 is configured to generate a test configuration sequence, the test configuration sequence is stored in the read-only memory 102, and the above-mentioned test configuration sequence includes a plurality of test options. When the module to be tested in the integrated circuit 100 needs to perform a self-test, the test device 103 can receive the test configuration sequence in the processor 101 or receive the test configuration sequence stored in the read-only memory 102, so that the test device 103 treats it according to the test configuration sequence Test module 104 for testing.
参照图2所示,图2提供了集成电路200的原理结构示意图,在该集成电路200中,包括JTAG管脚201、处理器202、只读存储器(read-only memory,ROM)203、选择器204、TAP控制器205以及BIST控制器206,其中,JTAG管脚201、处理器202以及只读存储器203都连接至选择器204,选择器204还连接至TAP控制器205,TAP控制器205连接至BIST控制器206。其中,BIST控制器206包括BIST控制器206a、BIST控制器206b以及BIST控制器206c,每一个BIST控制器中包含逻辑内建自测试(logic built in self test,LBIST)2061和/或存储器内建自测试(memory build in self test,MBIST)2062。JTAG管脚201包括测试数据输入(test data input,TDI)管脚、测试模式选择(test mode selection input,TMS)管脚、测试时钟输入(test clock input,TCK)管脚以及测试数据输出(test data output,TDO)管脚,这四个管脚是IEEE1149.1标准规定的必选管脚。其中,JTAG管脚201也可以传输测试配置序列。With reference to shown in Fig. 2, Fig. 2 provides the schematic structural diagram of the principle of integrated circuit 200, and in this integrated circuit 200, comprise JTAG pin 201, processor 202, read-only memory (read-only memory, ROM) 203, selector 204, TAP controller 205 and BIST controller 206, wherein, JTAG pin 201, processor 202 and ROM 203 are all connected to selector 204, and selector 204 is also connected to TAP controller 205, and TAP controller 205 is connected to the BIST controller 206 . Wherein, the BIST controller 206 includes a BIST controller 206a, a BIST controller 206b, and a BIST controller 206c, and each BIST controller includes a logic built in self test (logic built in self test, LBIST) 2061 and/or memory built-in Self-test (memory build in self test, MBIST) 2062. The JTAG pin 201 includes a test data input (test data input, TDI) pin, a test mode selection (test mode selection input, TMS) pin, a test clock input (test clock input, TCK) pin and a test data output (test data output, TDO) pins, these four pins are mandatory pins stipulated in the IEEE1149.1 standard. Wherein, the JTAG pin 201 can also transmit the test configuration sequence.
示例性的,选择器204以及TAP控制器205构成测试设备103,BIST控制器206中的每一个MBIST或LBIST构成待测模块104。Exemplarily, the selector 204 and the TAP controller 205 constitute the testing device 103 , and each MBIST or LBIST in the BIST controller 206 constitutes the module under test 104 .
示例性的,图2所示的集成电路中可以有更多或更少的BIST控制器,每一个BIST控制器中可以只包括LBIST2061,也可以只包括MBIST2062,还可以包括LBIST2061以及MBIST2062,或者还可以包括其他的功能电路,本申请的实施例对BIST控制器206的个数以及BIST控制器中包括的功能电路不做限定。Exemplarily, there may be more or fewer BIST controllers in the integrated circuit shown in FIG. Other functional circuits may be included, and the embodiment of the present application does not limit the number of BIST controllers 206 and the functional circuits included in the BIST controller.
在集成电路100处于不同的状态时,选择器204可以选中JTAG管脚201、处理器202或者只读存储器203中的任一个传输符合IEEE 1149.1标准的测试配置序列至TAP控制器205。When the integrated circuit 100 is in different states, the selector 204 can select any one of the JTAG pin 201 , the processor 202 or the ROM 203 to transmit the test configuration sequence conforming to the IEEE 1149.1 standard to the TAP controller 205 .
具体的,在集成电路生产制造的最后一步,一般会将集成电路自动测试机(automatic test equipment,ATE)连接至JTAG管脚201,此时选择器204选中JTAG管脚201传输ATE生成的符合IEEE 1149.1标准的测试配置序列至TAP控制器,测试配置序列中包括多个测试选项,TAP控制器将多个测试选项传输至BIST控制器,以使得BIST控制器根据多个测试选项进行自测试。Specifically, in the final step of integrated circuit manufacturing, an integrated circuit automatic tester (automatic test equipment, ATE) is generally connected to the JTAG pin 201. At this time, the selector 204 selects the JTAG pin 201 to transmit the information generated by ATE that complies with IEEE The 1149.1 standard test configuration sequence is sent to the TAP controller, the test configuration sequence includes multiple test options, and the TAP controller transmits the multiple test options to the BIST controller, so that the BIST controller performs self-test according to the multiple test options.
示例性的,上述的测试配置序列中还包括ATE传输至TDI管脚的TDI控制信号,ATE传输至TMS管脚的TMS控制信号,以及ATE传输至TCK管脚的TCK控制信号,ATE通过将TDI控制信号、TMS控制信号以及TCK控制信号传输至TAP控制器205,使得TAP控制序列实现对集成电路内部的寄存器的访问。其中,TAP控制器是将选定的一个 寄存器连接到TDI管脚和TDO管脚之间,然后由TCK控制信号驱动,通过TDI管脚传输TDI控制信号,TDI控制信号包括需要写入到选定的一个寄存器中的数据,以实现将需要写入到选定的一个寄存器中的数据写入至选定的这个寄存器中,或者实现将选定的一个寄存器中的数据通过TDO管脚读取出来。Exemplarily, the above test configuration sequence also includes the TDI control signal transmitted by the ATE to the TDI pin, the TMS control signal transmitted by the ATE to the TMS pin, and the TCK control signal transmitted by the ATE to the TCK pin. The control signal, the TMS control signal and the TCK control signal are transmitted to the TAP controller 205 so that the TAP control sequence realizes the access to the internal registers of the integrated circuit. Among them, the TAP controller connects a selected register between the TDI pin and the TDO pin, and then is driven by the TCK control signal, and transmits the TDI control signal through the TDI pin. The TDI control signal includes the register that needs to be written to the selected The data in one of the registers is used to write the data that needs to be written into the selected register to the selected register, or to read the data in the selected register through the TDO pin .
具体的,集成电路内部的寄存器包括指令寄存器(instruction register,IR)以及数据寄存器(data register,DR),在ATE传输的TMS控制信号保持高电平并且传输TCK控制信号包括至少5个选通脉冲(一个选通脉冲是TCK控制信号先变高电平再变低电平)后,TAP控制器205处于测试逻辑复位状态(test logic reset),然后TAP控制器205根据TCK控制信号的上升沿驱动状态的转移,根据TMS控制信号选择下一次转换的状态,可以进入运行测试空闲状态(Run-Test-Idle)、选择数据寄存器扫描状态(Select-DR-Scan)、捕获数据寄存器状态(Capture-DR)、移位数据寄存器状态(Shift-DR)、退出数据寄存器状态1(Exit1-DR)、暂停数据寄存器状态(Pause-DR)、退出数据寄存器状态2(Exit2-DR)、更新数据寄存器状态(Update-DR)、选择指令寄存器扫描状态(Select-IR-Scan)、捕获指令寄存器状态(Capture-IR)、移位指令寄存器状态(Shift-IR)、退出指令寄存器状态1(Exit1-IR)、退出指令寄存器状态1(Exit1-IR)、退出指令寄存器状态2(Exit2-IR)、更新指令寄存器状态(Update-IR)中的任一个。并且在上述的16个状态之间的进行切换时,TAP控制器即可实现选定指令寄存器,向指令寄存器中写入数据,读取指令寄存器中的数据,选定数据寄存器,向数据寄存器中写入数据,读取数据寄存器中的数据等不同的功能。需要说明的是,TAP控制器的16个状态之间的切换具体可以实现的功能可以参考现有的TAP控制器的功能描述,在此不赘述。Specifically, the registers inside the integrated circuit include an instruction register (instruction register, IR) and a data register (data register, DR), and the TMS control signal transmitted by the ATE is kept at a high level and the transmission of the TCK control signal includes at least 5 strobe pulses (A strobe pulse is that the TCK control signal first changes to a high level and then changes to a low level). After that, the TAP controller 205 is in the test logic reset state (test logic reset), and then the TAP controller 205 drives according to the rising edge of the TCK control signal. State transfer, select the state of the next conversion according to the TMS control signal, you can enter the running test idle state (Run-Test-Idle), select the data register scan state (Select-DR-Scan), capture the data register state (Capture-DR ), Shift Data Register Status (Shift-DR), Exit Data Register Status 1 (Exit1-DR), Pause Data Register Status (Pause-DR), Exit Data Register Status 2 (Exit2-DR), Update Data Register Status ( Update-DR), select instruction register scan status (Select-IR-Scan), capture instruction register status (Capture-IR), shift instruction register status (Shift-IR), exit instruction register status 1 (Exit1-IR), Any one of Exit Instruction Register State 1 (Exit1-IR), Exit Instruction Register State 2 (Exit2-IR), and Update Instruction Register State (Update-IR). And when switching between the above 16 states, the TAP controller can select the instruction register, write data to the instruction register, read the data in the instruction register, select the data register, and write data to the data register. Write data, read data in the data register and other different functions. It should be noted that, for specific functions that can be realized by switching among the 16 states of the TAP controller, reference may be made to the function description of the existing TAP controller, which will not be repeated here.
示例性的,在JTAG管脚201中包括测试复位(test reset input,TRST)管脚时,则ATE通过JTAG管脚201传输的符合IEEE 1149.1标准的测试配置序列还包括传输至TRST管脚的TRST控制信号,并且TAP控制器205在TRST控制信号为高电平时处于测试逻辑复位状态。Exemplarily, when the JTAG pin 201 includes a test reset (test reset input, TRST) pin, the ATE transmits the test configuration sequence conforming to the IEEE 1149.1 standard through the JTAG pin 201 and also includes the TRST transmitted to the TRST pin. control signal, and the TAP controller 205 is in a test logic reset state when the TRST control signal is at a high level.
另外,在集成电路中,数据寄存器还包括一些用户自定义数据寄存器(user defined data register),TAP控制器205可以利用上述的16个状态之间的切换访问用户自定义数据寄存器。示例性的,参照图2所示,选择器204选中JTAG管脚201传输ATE生成的符合IEEE 1149.1标准的测试配置序列至TAP控制器,该测试配置序列还包括多个测试选项,TAP控制器205通过上述的16个状态的切换实现对集成电路内部的用户自定义寄存器的访问。其中,TAP控制器通过TDI管脚传输多个测试选项,将多个测试选项写入至不同的用户自定义寄存器中,然后,TAP控制器205控制该用户自定义数据寄存器,以实现将用户自定义寄存器中写入的测试选项传输至BIST控制器206,进而使得BIST控制器根据多个测试选项进行自测试。In addition, in the integrated circuit, the data registers also include some user-defined data registers (user defined data registers), and the TAP controller 205 can access the user-defined data registers by switching between the above 16 states. Exemplary, with reference to shown in Figure 2, selector 204 selects the test configuration sequence that conforms to IEEE 1149.1 standard that JTAG pin 201 transmission ATE generates to TAP controller, and this test configuration sequence also includes a plurality of test options, TAP controller 205 The access to the user-defined registers inside the integrated circuit is realized through the switching of the above 16 states. Wherein, the TAP controller transmits a plurality of test options through the TDI pin, writes the plurality of test options into different user-defined registers, and then, the TAP controller 205 controls the user-defined data registers to realize user-defined The test options written in the definition register are transmitted to the BIST controller 206, so that the BIST controller performs self-test according to a plurality of test options.
参照图3所示的BIST的结构示意图,其中,无论是逻辑内建自测试(logic built in self test,LBIST)2061,还是存储器内建自测试(memory build in self test,MBIST)2062,其中都包含测试向量生成模块301、被测电路302以及输出响应分析模块303,并且,测试向量生成模块301连接至被测电路302,被测电路302连接至输出响应分析模块303。其中,测试向量生成模块301包括线性反馈移位寄存器(linear  feedback shift register,LFSR),测试向量生成模块301可以根据测试选项生成测试向量,将生成的测试向量传输至被测电路302。示例性的,在LBIST2061中,该测试向量可以是控制集成电路中的逻辑功能电路模块的信号;在MBIST2062中,该测试向量可以是往集成电路的存储器中存储的存储信息。被测电路302根据测试向量生成输出值,示例性的,在LBIST2061中,该被测电路302可以是集成电路中的任何逻辑功能电路模块;在MBIST2062中,该被测电路302具体可以是集成电路中的任一个存储器。输出响应分析模块303包括多输入特征寄存器(multiple-input signature register,MISR),多输入特征寄存器MISR从被测电路302中获取输出值,并生成一个压缩的输出向量,该输出向量被称为特征,并且输出响应分析模块303将这个特征与一个已知的从无故障待测模块中得到的特征进行对比,根据对比结果确定被测电路302的正确性,生成测试结果。Referring to the schematic structural diagram of BIST shown in FIG. 3, whether it is logic built in self test (logic built in self test, LBIST) 2061 or memory built in self test (memory build in self test, MBIST) 2062, wherein both It includes a test vector generation module 301 , a circuit under test 302 and an output response analysis module 303 , and the test vector generation module 301 is connected to the circuit under test 302 , and the circuit under test 302 is connected to the output response analysis module 303 . Wherein, the test vector generation module 301 includes a linear feedback shift register (linear feedback shift register, LFSR), the test vector generation module 301 can generate test vectors according to the test options, and transmit the generated test vectors to the circuit under test 302. Exemplarily, in LBIST2061, the test vector may be a signal controlling a logic function circuit module in an integrated circuit; in MBIST2062, the test vector may be stored information stored in a memory of the integrated circuit. The circuit under test 302 generates an output value according to the test vector. Exemplarily, in LBIST2061, the circuit under test 302 can be any logic function circuit module in an integrated circuit; in MBIST2062, the circuit under test 302 can specifically be an integrated circuit any of the memory. The output response analysis module 303 includes a multi-input signature register (multiple-input signature register, MISR), and the multi-input signature register MISR obtains an output value from the circuit under test 302, and generates a compressed output vector, which is called a feature , and the output response analysis module 303 compares this characteristic with a known characteristic obtained from a module under test without failure, determines the correctness of the circuit under test 302 according to the comparison result, and generates a test result.
示例性的,在集成电路200中,输出响应分析模块303生成的测试结果传输至BIST控制器206,BIST控制器206还连接至集成电路中的用户自定义寄存器,则ATE可以通过控制TAP控制器205以使得与BIST控制器206连接的用户自定义寄存器获取BIST控制器206中的输出响应分析模块303生成的测试结果,并且将测试结果通过TDO管脚传输至ATE。Exemplarily, in the integrated circuit 200, the test result generated by the output response analysis module 303 is transmitted to the BIST controller 206, and the BIST controller 206 is also connected to the user-defined register in the integrated circuit, then the ATE can control the TAP controller 205 so that the user-defined register connected to the BIST controller 206 acquires the test result generated by the output response analysis module 303 in the BIST controller 206, and transmits the test result to the ATE through the TDO pin.
通常,ATE传输至TAP控制器205的测试配置序列中的多个测试选项包括待测模块列表、测试强度以及测试配置等内容。并且,ATE可以根据实际的测试需求修改测试配置序列中的一个或多个测试选项,以使得BIST控制器206的自测试更加灵活。Usually, the multiple test options in the test configuration sequence transmitted by the ATE to the TAP controller 205 include a list of modules to be tested, a test intensity, and a test configuration. Moreover, the ATE can modify one or more test options in the test configuration sequence according to actual test requirements, so as to make the self-test of the BIST controller 206 more flexible.
以上说明了在集成电路生产制造的最后一步,将ATE连接至JTAG管脚201,选择器204选中JTAG管脚201传输ATE生成的符合IEEE 1149.1标准的测试配置序列至TAP控制器,该测试配置序列包括多个测试选项,BIST控制器根据多个测试选项进行自测试。需要说明的是,在集成电路生产制造完成以后,集成电路中的JTAG管脚201会被封闭,其目的是为了避免集成电路在应用过程中受到恶意破坏。The above has explained the last step in integrated circuit manufacturing, the ATE is connected to the JTAG pin 201, and the selector 204 selects the JTAG pin 201 to transmit the test configuration sequence generated by the ATE and conforming to the IEEE 1149.1 standard to the TAP controller. The test configuration sequence Including multiple test options, the BIST controller performs self-test according to multiple test options. It should be noted that after the integrated circuit is manufactured, the JTAG pin 201 in the integrated circuit will be closed, the purpose of which is to prevent the integrated circuit from being maliciously damaged during the application process.
参照图2所示,如果集成电路200通电并正常运行时,此时选择器204可以选中处理器202传输处理器202生成的符合IEEE 1149.1标准的测试配置序列至TAP控制器205,该测试配置序列包括多个测试选项,BIST控制器根据多个测试选项进行自测试。并且,处理器202可以根据实际的测试需求修改测试配置序列中的一个或多个测试选项,以使得BIST控制器206的自测试更加灵活。Referring to Fig. 2, if the integrated circuit 200 is powered on and operates normally, the selector 204 can select the test configuration sequence generated by the processor 202 and transmit the IEEE 1149.1 standard to the TAP controller 205, the test configuration sequence Including multiple test options, the BIST controller performs self-test according to multiple test options. Moreover, the processor 202 may modify one or more test options in the test configuration sequence according to actual test requirements, so as to make the self-test of the BIST controller 206 more flexible.
示例性的,上述的处理器202可以是中央处理器(central processing unit,CPU)、通用处理器网络处理器(network processor,NP)、数字信号处理器(digital signal processing,DSP)、微处理器、微控制器、可编程逻辑器件(programmable logic device,PLD)或它们的任意组合。处理器202还可以是其它任意具有处理功能的装置,如电路、器件或软件模块,本申请实施例对处理器的具体形式不做特殊限制。Exemplary, the above-mentioned processor 202 may be a central processing unit (central processing unit, CPU), a general-purpose processor, a network processor (network processor, NP), a digital signal processor (digital signal processing, DSP), a microprocessor , microcontroller, programmable logic device (programmable logic device, PLD), or any combination of them. The processor 202 may also be any other device with processing functions, such as a circuit, device or software module, and the embodiment of the present application does not specifically limit the specific form of the processor.
参照图2所示,如果集成电路200在上电后需要进行测试,但是此时的集成电路200中的处理器202还未正常运行,并且该集成电路200中的JTAG管脚201也被封闭,那么,选择器204可以选中只读存储器203传输符合IEEE 1149.1标准的测试配置序列至TAP控制器205,该测试配置序列包括多个测试选项,BIST控制器根据多个测试选项进行自测试,通常,在集成电路生产制造完成时,会在只读存储器203中预置的 符合IEEE 1149.1标准的测试配置序列,还会将只读存储器203中预置的测试配置序列中的多个测试选项的存储位置和测试值在集成电路的生产说明书中详细示出。但是,只读存储器203中预置的测试配置序列是不能更改的,使得该集成电路在上电后需要进行测试,而此时的集成电路中的处理器还未正常运行时,不能根据实际的测试需求修改从只读存储器ROM中获取的测试配置序列中的一个或多个测试选项。Referring to FIG. 2, if the integrated circuit 200 needs to be tested after being powered on, but the processor 202 in the integrated circuit 200 is not running normally, and the JTAG pin 201 in the integrated circuit 200 is also closed, Then, the selector 204 can select the read-only memory 203 to transmit the test configuration sequence conforming to the IEEE 1149.1 standard to the TAP controller 205, the test configuration sequence includes a plurality of test options, and the BIST controller performs self-test according to the plurality of test options, usually, When the integrated circuit production is completed, the test configuration sequence in accordance with the IEEE 1149.1 standard will be preset in the read-only memory 203, and the storage locations of multiple test options in the preset test configuration sequence in the read-only memory 203 will also be stored. and test values are shown in detail in the manufacturing specification of the integrated circuit. However, the test configuration sequence preset in the read-only memory 203 cannot be changed, so that the integrated circuit needs to be tested after being powered on. The test requirement modifies one or more test options in the sequence of test configurations retrieved from the read-only memory ROM.
其中,集成电路刚上电时进行的自测试也被称为上电内建自测试(power-on BIST)。Among them, the self-test performed when the integrated circuit is first powered on is also called power-on built-in self-test (power-on BIST).
为了解决集成电路在上电后需要进行测试,而此时的集成电路中的处理器还未正常运行,不能根据实际的测试需求修改从只读存储器ROM获取的测试配置序列中的一个或多个测试选项的问题,本申请的实施例提供了一种集成电路,参照图4所示,该集成电路400包括:只读存储器401、输出电路403以及一个可编程存储器402;只读存储器401用于存储第一测试配置序列,第一测试配置序列包括多个测试选项的测试值;可编程存储器402用于存储目标测试选项的编程值;输出电路403,被配置为在上电后读取第一测试配置序列;输出电路403,还被配置为读取目标测试选项的编程值;输出电路403,还被配置为根据第一测试配置序列以及目标测试选项的编程值生成第二测试配置序列。In order to solve the problem that the integrated circuit needs to be tested after power-on, and the processor in the integrated circuit is not running normally at this time, one or more of the test configuration sequences obtained from the read-only memory ROM cannot be modified according to the actual test requirements For the problem of test options, the embodiment of the present application provides an integrated circuit, as shown in FIG. Store the first test configuration sequence, the first test configuration sequence includes the test value of a plurality of test options; the programmable memory 402 is used to store the programming value of the target test option; the output circuit 403 is configured to read the first test configuration sequence; the output circuit 403 is further configured to read the programmed value of the target test option; the output circuit 403 is further configured to generate a second test configuration sequence according to the first test configuration sequence and the programmed value of the target test option.
示例性的,只读存储器401中存储的第一测试配置序列,是集成电路400生产制造完成时,在只读存储器401中预置的符合IEEE 1149.1标准的测试配置序列,并且集成电路400的生产说明书会将详细示出只读存储器401中预置的测试配置序列中的多个测试选项的存储位置和测试值。其中,该多个测试选项包括:待测模块列表,测试强度以及测试配置,待测模块列表用于指示需要对那些待测模块进行测试,测试强度包括:测试覆盖率,测试向量数以及测试时间等,其中,测试覆盖率表示能测试到的待测模块的百分比,例如测试目标覆盖为100%表示将待测模块全部测试,测试向量数表示测试的数据,测试时间表示多长时间完成测试;测试配置包括:线性反馈移位寄存器LFSR种子、开启时钟域、多输入特征寄存器MISR比对值以及测试算法等,其中线性反馈移位寄存器LFSR种子表示线性反馈移位寄存器的初始值,开启时钟域表示在时钟信号处于上升沿或是下降沿是开启测试,多输入特征寄存器MISR比对值表示无故障待测模块中得到的特征值,测试算法包括March算法,Checkerboard算法。其中,测试值具体用来限定相应的测试选项的内容或范围。例如,测试选项可以是待测模块列表,测试值可以为LBIST或MBIST的标识;又例如测试选项可以是测试时间,则测试值为具体的时间范围。Exemplarily, the first test configuration sequence stored in the read-only memory 401 is a test configuration sequence that is preset in the read-only memory 401 and conforms to the IEEE 1149.1 standard when the integrated circuit 400 is produced and manufactured, and the production of the integrated circuit 400 The description will show in detail the storage locations and test values of multiple test options in the test configuration sequence preset in the ROM 401 . Wherein, the multiple test options include: a list of modules to be tested, test intensity and test configuration, the list of modules to be tested is used to indicate which modules to be tested need to be tested, and the test intensity includes: test coverage, test vector number and test time etc., wherein, the test coverage rate indicates the percentage of the module to be tested that can be tested, for example, the test target coverage is 100%, which means that all the modules to be tested are tested, the number of test vectors indicates the test data, and the test time indicates how long it takes to complete the test; The test configuration includes: linear feedback shift register LFSR seed, open clock domain, multi-input feature register MISR comparison value, and test algorithm, etc., where the linear feedback shift register LFSR seed represents the initial value of the linear feedback shift register, and the clock domain is opened Indicates that the test is started when the clock signal is on the rising or falling edge. The comparison value of the multi-input characteristic register MISR represents the characteristic value obtained in the module under test without failure. The test algorithm includes March algorithm and Checkerboard algorithm. Wherein, the test value is specifically used to limit the content or scope of the corresponding test option. For example, the test option may be a list of modules to be tested, and the test value may be the identification of LBIST or MBIST; for another example, the test option may be a test time, and the test value may be a specific time range.
示例性的,在集成电路400的安全等级、上电启动时间要求、应用场景、测试功耗等因素发生改变时,可以根据不同的测试需求更改只读存储器401中存储的多个测试选项中的一个或多个测试选项的测试值,目标测试选项就是需要更改的测试选项,目标测试选项包括:待测模块列表,测试强度以及测试配置。可编程存储器402用于存储多个测试选项中的目标测试选项的编程值。其中,编程值具体用来限定相应的测试选项更改为的内容或范围,例如测试选项是测试时间,测试值为5秒,那么编程值可以是10秒,表示当前的测试时间由5秒更改为10秒。Exemplarily, when factors such as the security level of the integrated circuit 400, power-on time requirements, application scenarios, and test power consumption change, one of the multiple test options stored in the read-only memory 401 can be changed according to different test requirements. The test value of one or more test options. The target test option is the test option that needs to be changed. The target test option includes: the list of modules to be tested, the test intensity and the test configuration. The programmable memory 402 is used to store the programming values of the target test options among the plurality of test options. Among them, the programming value is specifically used to limit the content or scope of the corresponding test option change. For example, the test option is the test time, and the test value is 5 seconds, then the programming value can be 10 seconds, which means that the current test time is changed from 5 seconds to 10 seconds.
需要说明的是,目标测试选项可以是一个也可以是多个,本申请的实施例对此不做限定。其中,可编程存储器402包括以下一种或多种存储器:可编程只读存储器 (programmable read-only memory,PROM)、电可改写只读存储器(electrically alterable read only memory,EAROM)、可擦可编程只读存储器(erasable programmable read only memory,EPROM)、电可擦可编程只读存储器(Electrically erasable programmable read only memory,EEPROM)、一次编程只读存储器(one time programmable read only memory,OTPROM)以及电子保险丝(electric-fuse,EFUSE)。It should be noted that there may be one or more target test options, which is not limited in this embodiment of the present application. Wherein, the programmable memory 402 includes one or more of the following memories: programmable read-only memory (programmable read-only memory, PROM), electrically rewritable read-only memory (electrically alterable read only memory, EAROM), erasable programmable Read-only memory (erasable programmable read only memory, EPROM), electrically erasable programmable read-only memory (Electrically erasable programmable read only memory, EEPROM), one time programmable read-only memory (OTPROM) and electronic fuse (electric-fuse, EFUSE).
输出电路403,被配置为在上电后读取第一测试配置序列;输出电路403,还被配置为读取目标测试选项的编程值;输出电路403,还被配置为根据第一测试配置序列以及目标测试选项的编程值生成第二测试配置序列。The output circuit 403 is configured to read the first test configuration sequence after power-on; the output circuit 403 is also configured to read the programming value of the target test option; the output circuit 403 is also configured to read the first test configuration sequence according to the first test configuration sequence; and the programmed values of the target test options generate a second sequence of test configurations.
示例性的,在集成电路400中不包括测试设备和待测模块时,输出电路403可以将第二测试配置序列通过标准接口传输至待测设备,而后待测设备根据第二测试配置序列对待测模块进行测试。Exemplarily, when the integrated circuit 400 does not include a test device and a module under test, the output circuit 403 can transmit the second test configuration sequence to the device under test through a standard interface, and then the device under test is tested according to the second test configuration sequence The module is tested.
在集成电路400中包括测试设备404以及待测模块405,那么输出电路403可以将第二测试配置序列传输至测试设备404,以使得测试设备404根据第二测试配置序列对待测模块405进行测试。If the integrated circuit 400 includes a test device 404 and a module to be tested 405 , the output circuit 403 may transmit the second test configuration sequence to the test device 404 , so that the test device 404 tests the module to be tested 405 according to the second test configuration sequence.
在上述的集成电路中,输出电路在上电后读取只读存储器中存储的第一测试配置序列,第一测试配置序列包括多个测试选项,并且输出电路也读取至少一个可编程存储器中存储的目标测试选项的编程值,由于目标测试选项就是第一测试配置序列中需要修改的测试选项,在输出电路获取到第一测试配置序列以及目标测试选项的编程值以后,输出电路可以根据第一测试配置序列以及目标测试选项的编程值,生成第二测试配置序列,那么在输出电路将第二测试配置序列发送至测试设备时,测试设备即可根据第二测试配置序列对待测模块进行测试,使得该集成电路在上电后需要进行测试,而此时的集成电路中的处理器还未正常运行时,可以根据实际的测试需求修改从只读存储器中获取的测试配置序列中的一个或多个测试选项。In the above-mentioned integrated circuit, the output circuit reads the first test configuration sequence stored in the read-only memory after power-on, the first test configuration sequence includes a plurality of test options, and the output circuit also reads the first test configuration sequence stored in at least one programmable memory The programming value of the stored target test option, since the target test option is the test option that needs to be modified in the first test configuration sequence, after the output circuit obtains the first test configuration sequence and the programming value of the target test option, the output circuit can be used according to the first test configuration sequence. A test configuration sequence and the programming value of the target test option generate a second test configuration sequence, then when the output circuit sends the second test configuration sequence to the test equipment, the test equipment can test the module to be tested according to the second test configuration sequence , so that the integrated circuit needs to be tested after power-on, and at this time, when the processor in the integrated circuit is not running normally, one or Multiple testing options.
示例性的,可编程存储器402可以包括第一存储区域和第二存储区域,第一存储区域用于存储目标测试选项在只读存储器中的位置,第二存储区域用于存储目标测试选项的编程值;则输出电路403,还被配置为读取目标测试选项在只读存储器401中的位置;输出电路403,具体被配置为根据第一测试配置序列、目标测试选项在只读存储器401中的位置以及目标测试选项的编程值生成第二测试配置序列。Exemplarily, the programmable memory 402 may include a first storage area and a second storage area, the first storage area is used to store the position of the target test option in the read-only memory, and the second storage area is used to store the programming of the target test option value; then the output circuit 403 is also configured to read the position of the target test option in the read-only memory 401; the output circuit 403 is specifically configured as according to the first test configuration sequence, the position of the target test option in the read-only memory 401 The programmed values of the location and target test options generate a second sequence of test configurations.
其中,在需要根据不同的测试需求更改只读存储器401中存储的多个测试选项中的一个或多个测试选项的测试值,可以根据集成电路400的生产说明书记录的内容查找目标测试选项在只读存储器401中的位置以及测试值,然后,在可编程存储器402的第一存储区域中存储目标测试选项在只读存储器401中的位置,在可编程存储器402的第二存储区域中存储目标测试选项的编程值。Among them, when it is necessary to change the test value of one or more test options in the multiple test options stored in the read-only memory 401 according to different test requirements, the target test option can be found according to the content recorded in the production manual of the integrated circuit 400. The position and the test value in the read memory 401, then, store the position of the target test option in the read-only memory 401 in the first storage area of the programmable memory 402, store the target test in the second storage area of the programmable memory 402 The programmatic value of the option.
示例性的,当目标测试选项的数量比较少时,可以只设置一个可编程存储器402,将该可编程存储器402的存储空间分为第一存储区域和第二存储区域,在第一存储区域中存储目标测试选项在只读存储器401中的位置,在第二存储区域中存储目标测试选项的编程值。Exemplarily, when the number of target test options is relatively small, only one programmable memory 402 may be provided, and the storage space of the programmable memory 402 is divided into a first storage area and a second storage area, and stored in the first storage area The location of the target test option in the read-only memory 401, and the programming value of the target test option is stored in the second storage area.
示例性的,当目标测试选项的数量比较多时,可以设置两个可编程存储器,分别是第一可编程存储器和第二可编程存储器,参照图5所示,集成电路400中的可编程 存储器402包括第一可编程存储器4021和第二可编程存储器4022,第一可编程存储器4021提供第一存储区域,并且在第一可编程存储器4021中存储目标测试选项在只读存储器401中的位置;第二可编程存储器4022提供第二存储区域,在第二可编程存储器4022中存储目标测试选项的编程值。Exemplarily, when the number of target test options is relatively large, two programmable memories can be set, which are respectively the first programmable memory and the second programmable memory. Referring to FIG. 5 , the programmable memory 402 in the integrated circuit 400 Including a first programmable memory 4021 and a second programmable memory 4022, the first programmable memory 4021 provides a first storage area, and stores the position of the target test option in the read-only memory 401 in the first programmable memory 4021; The second programmable memory 4022 provides a second storage area, and the programmed values of the target test options are stored in the second programmable memory 4022 .
当然在目标测试选项的数量更多时,可以设置更多的可编程存储器,第一存储区域由多个可编程存储器提供,第二存储区域由多个可编程存储器提供,第一存储区域存储目标测试选项在只读存储器401中的位置,第二存储区域存储目标测试选项的编程值。本申请的实施例对可编程存储器的数量不做限定。Of course, when the number of target test options is more, more programmable memories can be set, the first storage area is provided by multiple programmable memories, the second storage area is provided by multiple programmable memories, and the first storage area stores the target The location of the test option in the ROM 401, the second storage area stores the programming value of the target test option. The embodiments of the present application do not limit the number of programmable memories.
那么,输出电路403,还被配置为读取目标测试选项在只读存储器401中的位置;输出电路403,具体被配置为根据第一测试配置序列、目标测试选项在只读存储器401中的位置以及目标测试选项的编程值生成第二测试配置序列。具体的,集成电路400上电后,输出电路403可以从第一存储区域中读取目标测试选项在只读存储器中的位置,也可以从第二存储区域中读取目标测试选项的编程值,由于目标测试选项就是第一测试配置序列中需要修改的测试选项,那么输出电路403可以根据目标测试选项在只读存储器401中的位置明确第一测试配置序列中的哪些测试选项需要被修改,并且输出电路403根据第一测试配置序列、目标测试选项在只读存储器中的位置以及目标测试选项的编程值生成第二测试配置序列。Then, the output circuit 403 is also configured to read the position of the target test option in the read-only memory 401; the output circuit 403 is specifically configured to read the position of the target test option in the read-only memory 401 according to the first test configuration sequence. and the programmed values of the target test options generate a second sequence of test configurations. Specifically, after the integrated circuit 400 is powered on, the output circuit 403 can read the location of the target test option in the read-only memory from the first storage area, or read the programming value of the target test option from the second storage area, Since the target test option is the test option that needs to be modified in the first test configuration sequence, the output circuit 403 can specify which test options in the first test configuration sequence need to be modified according to the position of the target test option in the read-only memory 401, and The output circuit 403 generates a second test configuration sequence according to the first test configuration sequence, the location of the target test option in the ROM, and the programmed value of the target test option.
示例性的,参照图6所示,输出电路403包括翻转器4031和选择器4032;翻转器4031,具体被配置为根据目标测试选项在只读存储器401中的位置和其他位置生成使能信号;其中使能信号在目标测试选项在只读存储器中的位置处为第一状态,使能信号在其他位置处为第二状态,其他位置包括第一配置序列中除目标测试选项以外的其他测试选项在只读存储器401中的位置;选择器4032,用于在使能信号为第一状态时获取第二存储区域中的目标测试选项的编程值,在使能信号为第二状态时获取其他测试选项的测试值,根据目标测试选项的编程值以及其他测试选项的测试值生成第二测试配置序列。Exemplarily, as shown in FIG. 6 , the output circuit 403 includes a flipper 4031 and a selector 4032; the flipper 4031 is specifically configured to generate an enable signal according to the position of the target test option in the read-only memory 401 and other positions; Wherein the enable signal is in a first state at the position of the target test option in the read-only memory, and the enable signal is in a second state at other positions, the other positions including other test options in the first configuration sequence except the target test option Position in read-only memory 401; selector 4032, used to obtain the programming value of the target test option in the second storage area when the enable signal is in the first state, and obtain other tests when the enable signal is in the second state Test values for the options, generating a second sequence of test configurations based on the programmed values of the target test options and the test values of the other test options.
示例性的,参照图7所示,本申请的实施例提供了集成电路400中的具体结构示意图,第一可编程存储器4021提供第一存储区域,第二可编程存储器4022提供第二存储区域。需要说明的是,依据图7所摆放的方向,图7中的只读存储器401以及第二可编程存储器4022中的比特位数的次序是按照从右至左的方向,从1开始每次增大1的顺序进行排序的,图7中的第一可编程存储器4021的存储地址的次序是按照从右至左的方向,从1开始每次增大1的顺序进行排序的。其中,只读存储器401中存储有24位二进制数据,分别是“010101000111001101110010”,每一位二进制数据为1比特(bit),该24位二进制数据就是第一测试配置序列。第一测试配置序列中包括多个测试选项,如图所示,该24位二进制数据中第3比特位至第6比特位是第一测试选项的测试值“0101”,该24位二进制数据中第11比特位至第13比特位是第二测试选项的测试值“110”,该24位二进制数据中第19比特位至第23比特位是第三测试选项的测试值“11001”,除上述3个测试选项的编程值以外,其他的比特位可以是其他的测试配置序列,也可以是TDI控制信号、TMS控制信号以及TCK控制信号等,其中,多个测试选项中需要修改的测试选项为第一测试选项、第二测试选项以及第三测 试选项,该三个测试选项就是目标测试选项。那么需要先在集成电路400的生产说明书中找到目标测试选项的位置,然后在第一可编程存储器4021中存储目标测试选项在只读存储器401中的位置。示例性的,第一可编程存储器4021中的每8位二进制位数被当做一个存储地址(如图7所示的8’即代表8位二进制数据),并且每一个存储地址的存储值为该8位二进制数据转换的十进制数字(如图7所示的d2就表示十进制数字2)。参照图7所示,图7中的第一可编程存储器4021中包括7个存储地址,并且第一个存储地址存储的二进制数据为“00000010”,表示的是十进制数字2,因为在只读存储器401中,前两个比特位中的测试值“01”是不需要修改的;第二个存储地址存储的二进制数据为“00000100”,表示的是十进制数字4,因为在只读存储器401中,第3比特位至第6比特位是第一测试选项的测试值“0101”,该第一测试选项的测试值需要被修改;第三个存储地址存储的二进制数据为“00000100”,表示的是十进制数字4,因为在只读存储器401中,第7比特位至第10比特位的测试值“0001”是不需要修改的;第四个存储地址存储的二进制数据为“00000011”,表示的是十进制数字3,因为在只读存储器401中,第11比特位至第13比特位是第二测试选项的测试值“110”,该第二测试选项的测试值需要被修改;第五个存储地址存储的二进制数据为“00000101”,表示的是十进制数字5,因为在只读存储器401中,第14比特位至第18比特位的测试值“01101”是不需要修改的;第六个存储地址存储的二进制数据为“00000101”,表示的是十进制数字5,因为在只读存储器401中,第19比特位至第23比特位是第三测试选项的测试值“11001”,该第三测试选项的测试值需要被修改;第七个存储地址存储的二进制数据为“00000001”,表示的是十进制数字1,因为在只读存储器401中,第24比特位的测试值“0”是不需要修改的。Exemplarily, referring to FIG. 7 , the embodiment of the present application provides a schematic structural diagram of the integrated circuit 400 , the first programmable memory 4021 provides a first storage area, and the second programmable memory 4022 provides a second storage area. It should be noted that, according to the direction shown in FIG. 7 , the order of bits in the read-only memory 401 and the second programmable memory 4022 in FIG. 7 is from right to left, starting from 1 each time The order of increasing by 1 is sorted, and the order of storage addresses of the first programmable memory 4021 in FIG. 7 is sorted from right to left, starting from 1 and increasing by 1 each time. Wherein, 24-bit binary data are stored in the read-only memory 401, which are respectively "010101000111001101110010", each bit of binary data is 1 bit, and the 24-bit binary data is the first test configuration sequence. Multiple test options are included in the first test configuration sequence, as shown in the figure, the 3rd bit to the 6th bit in the 24-bit binary data is the test value "0101" of the first test option, in the 24-bit binary data The 11th to 13th bits are the test value "110" of the second test option, and the 19th to 23rd bits in the 24-bit binary data are the test value "11001" of the third test option, except the above In addition to the programming values of the three test options, other bits can be other test configuration sequences, or TDI control signals, TMS control signals, and TCK control signals, etc. Among them, the test options that need to be modified among the multiple test options are The first test option, the second test option and the third test option are the target test options. Then it is necessary to first find the position of the target test option in the production specification of the integrated circuit 400 , and then store the position of the target test option in the ROM 401 in the first programmable memory 4021 . Exemplarily, each 8-bit binary number in the first programmable memory 4021 is regarded as a storage address (8' as shown in FIG. 7 represents 8-bit binary data), and the storage value of each storage address is the The decimal number converted from 8-bit binary data (d2 as shown in FIG. 7 represents the decimal number 2). Referring to Fig. 7, the first programmable memory 4021 in Fig. 7 includes 7 storage addresses, and the binary data stored in the first storage address is "00000010", which represents the decimal number 2, because in the read-only memory In 401, the test value "01" in the first two bits does not need to be modified; the binary data stored in the second storage address is "00000100", which represents the decimal number 4, because in the read-only memory 401, The 3rd bit to the 6th bit are the test value "0101" of the first test option, and the test value of the first test option needs to be modified; the binary data stored in the third storage address is "00000100", which means Decimal number 4, because in the read-only memory 401, the test value "0001" from the 7th bit to the 10th bit does not need to be modified; the binary data stored in the fourth storage address is "00000011", which means Decimal number 3, because in the read-only memory 401, the 11th bit to the 13th bit is the test value "110" of the second test option, and the test value of the second test option needs to be modified; the fifth storage address The stored binary data is "00000101", representing a decimal number 5, because in the read-only memory 401, the test value "01101" from the 14th bit to the 18th bit does not need to be modified; the sixth storage address The stored binary data is "00000101", representing a decimal number 5, because in the read-only memory 401, the 19th bit to the 23rd bit are the test value "11001" of the third test option, the third test option The test value needs to be modified; the binary data stored in the seventh storage address is "00000001", which represents the decimal number 1, because in the read-only memory 401, the test value "0" of the 24th bit does not need to be modified of.
在第二可编程存储器4022中,第1比特位至第4比特位存储的是第一测试选项的编程值“1101”,第5比特位至第7比特位存储的是第二测试选项的编程值“010”,第8比特位至第12比特位存储的是第三测试选项的编程值“01010”。In the second programmable memory 4022, the first to fourth bits store the programming value "1101" of the first test option, and the fifth to seventh bits store the programming value of the second test option The value "010", the 8th bit to the 12th bit store the programming value "01010" of the third test option.
也就表示,在第一可编程存储器4021中,存储地址的存储值依次分别代表“只读存储器401中需要修改的比特位数,只读存储器401中不需要修改的比特位数,只读存储器401中需要修改的比特位数,只读存储器401中不需要修改的比特位数…”的规律,存储目标测试选项在只读存储器401中的位置。第二可编程存储器中存储目标测试选项的编程值。That is to say, in the first programmable memory 4021, the stored value of the storage address respectively represents "the number of bits that need to be modified in the read-only memory 401, the number of bits that do not need to be modified in the read-only memory 401, and the number of bits that do not need to be modified in the read-only memory 401, respectively. The number of bits in 401 that needs to be modified, the number of bits in the read-only memory 401 that do not need to be modified..." stores the position of the target test option in the read-only memory 401. Programmed values for the target test options are stored in the second programmable memory.
然后,在集成电路400上电时,输出电路403中的翻转器4031,根据目标测试选项在只读存储器中的位置,生成使能信号,该使能信号的高电平状态(也就是上述的第一状态)对应于只读存储器401中需要修改的比特位数,也就是目标测试选项在只读存储器401中的位置,并且高电平的比特位长度等于需要修改的比特位数;使能信号的低电平状态(也就是上述的第二状态)对应于只读存储器中不需要修改的比特位数,也就是除目标测试选项以外的其他测试选项在只读存储器401中的位置,并且低电平的比特位长度等于需要不修改的比特位数。具体的,图7所示的使能信号为2个比特位长度的低电平,4个比特位长度的高电平,4个比特位长度的低电平,3个比特位长度的高电平,5个比特位长度的低电平,5个比特位长度的高电平,1个比特位长度的低电平。Then, when the integrated circuit 400 is powered on, the flipper 4031 in the output circuit 403 generates an enable signal according to the position of the target test option in the ROM, and the high level state of the enable signal (that is, the above-mentioned The first state) corresponds to the number of bits that need to be modified in the read-only memory 401, that is, the position of the target test option in the read-only memory 401, and the bit length of the high level is equal to the number of bits that need to be modified; enable The low-level state of the signal (that is, the above-mentioned second state) corresponds to the number of bits that do not need to be modified in the read-only memory, that is, the positions of other test options in the read-only memory 401 except the target test option, and The bit length of the low level is equal to the number of bits that need not be modified. Specifically, the enable signal shown in Figure 7 is a low level with a length of 2 bits, a high level with a length of 4 bits, a low level with a length of 4 bits, and a high level with a length of 3 bits. Flat, 5-bit low level, 5-bit high level, 1-bit low level.
然后输出电路403中的选择器4032,在使能信号为低电平时,获取与低电平的比特位长度相等的第一测试配置序列中除目标测试选项外的其他测试选项的测试值,在使能信号为高电平时,获取与高电平的比特位长度相等的第二可编程存储器4022中的目标测试选项的编程值。根据目标测试选项的编程值以及除目标测试选项外的其他测试选项的测试值生成第二测试配置序列。也就是说,在使能信号为2个比特位长度的低电平时,选择器4032获取只读存储器401中的第1比特位至第2比特位的值作为一个测试值“01”,在使能信号为4个比特位长度的高电平时,选择器4032获取第二可编程存储器4022中的第1比特位至第4比特位的值作为一个编程值“1101”,在使能信号为4个比特位长度的低电平时,选择器4032获取只读存储器401中的第7比特位至第10比特位的值作为一个测试值“0001”,在使能信号为3个比特位长度的高电平时,选择器4032获取第二可编程存储器4022中的第4比特位至第6比特位的值作为一个编程值“010”,在使能信号为5个比特位长度的低电平时,选择器4032获取只读存储器401中第14比特位至第18比特位的值作为一个测试值“01101”,在使能信号为5个比特位长度的高电平时,选择器4032获取第二可编程存储器4022中的第8比特位至第12比特位的值作为一个编程值“01010”;在使能信号为1个比特位长度的低电平时,选择器4032获取只读存储器401中的第24比特位的值作为一个测试值“0”,依次生成第二测试配置序列“011101000110101101010100”。也就证明只读存储器401是在使能信号的每一个比特位长度内将1位二进制数据传输至选择器4032,而第二可编程存储器4022是在使能信号的一个高电平比特位长度内将1位二进制数据传输至选择器4032。Then the selector 4032 in the output circuit 403, when the enable signal is low level, obtains the test values of other test options except the target test option in the first test configuration sequence equal to the bit length of the low level. When the enable signal is at a high level, the programming value of the target test option in the second programmable memory 4022 whose bit length is equal to the high level is acquired. A second sequence of test configurations is generated based on the programmed values of the target test option and the test values of the other test options than the target test option. That is to say, when the enable signal is a low level with a length of 2 bits, the selector 4032 obtains the value of the first bit to the second bit in the read-only memory 401 as a test value "01", and then When the enable signal is a high level with a length of 4 bits, the selector 4032 obtains the value from the first bit to the fourth bit in the second programmable memory 4022 as a programming value "1101", and when the enable signal is 4 When the low level of the bit length, the selector 4032 obtains the value of the 7th bit to the 10th bit in the read-only memory 401 as a test value "0001", when the enable signal is a high level of 3 bit length level, the selector 4032 obtains the value of the 4th bit to the 6th bit in the second programmable memory 4022 as a programming value "010", and when the enable signal is a low level with a length of 5 bits, select The selector 4032 obtains the value of the 14th bit to the 18th bit in the read-only memory 401 as a test value "01101". When the enable signal is a high level with a length of 5 bits, the selector 4032 obtains the second programmable The value of the 8th bit to the 12th bit in the memory 4022 is used as a programming value "01010"; The bit value is used as a test value "0", and the second test configuration sequence "011101000110101101010100" is sequentially generated. It also proves that the read-only memory 401 transmits 1-bit binary data to the selector 4032 within each bit length of the enable signal, and the second programmable memory 4022 transmits 1-bit binary data to the selector 4032 during a high-level bit length of the enable signal. 1-bit binary data is transmitted to the selector 4032.
示例性的,翻转器4031可以按照将第一可编程存储器4021中的第奇数个存储地址的存储值翻转为低电平,将第一可编程存储器4021中的第偶数个存储地址的存储值翻转为高电平的规律生成使能信号,并且使能信号的低电平/高电平的比特位长度也就等于与之对应的第一可编程存储器4021中的存储地址的存储值。其中,第一可编程存储器4021中的每一个存储地址的存储值是当前存储地址存储的二进制数字对应的十进制数字。例如,只读存储器401中,总共包括1000个比特位,并且第1比特位至第5比特位的测试值是不需要修改,第6比特位至第996比特位的测试值是需要修改的,第997比特位至第1000比特位的测试值是不需要修改,那么也就表示,第一可编程存储器4021中需要存储十进制数字5,991,4。第一可编程存储器4021中的每8位二进制位数被当做一个存储地址,8位二进制数字全为1时是“11111111”,其对应的十进制数字为255,需要修改的比特位数为991大于255,并且,3*255<991<=4*255,因此,在第一可编程存储器中,第一个存储地址存储的二进制数字为“00000101”对应十进制数字5,是不需要修改的比特位数;第二个存储地址存储的二进制数字为“11111111”对应十进制数字255,是需要修改的比特位数;第三个存储地址存储的二进制数字为“00000000”对应十进制数字0,是不需要修改的比特位数;第四个存储地址存储的二进制数字为“11111111”对应十进制数字255,是需要修改的比特位数;第五个存储地址存储的二进制数字为“00000000”对应十进制数字0,是不需要修改的比特位数;第六个存储地址存储的二进制数字为“11111111”对应十进制数字255,是需要修改的比特位数;第七个存储地址存储的二进制数字为“00000000”对 应十进制数字0,是不需要修改的比特位数;第八个存储地址存储的二进制数字为“11100010”对应十进制数字226是需要修改的比特位数;第九个存储地址存储的二进制数字为“00000100”对应十进制数字4,是不需要修改的比特位数。以此实现在第一可编程存储器3021中存储目标测试选项在只读存储器401中的位置。Exemplarily, the flipper 4031 can flip the stored value of the even-numbered storage address in the first programmable memory 4021 according to flipping the stored value of the odd-numbered storage address in the first programmable memory 4021 to a low level. The enable signal is generated according to the rule of high level, and the bit length of the low level/high level of the enable signal is equal to the storage value of the corresponding storage address in the first programmable memory 4021 . Wherein, the storage value of each storage address in the first programmable memory 4021 is the decimal number corresponding to the binary number stored in the current storage address. For example, in the read-only memory 401, a total of 1000 bits are included, and the test value of the 1st bit to the 5th bit does not need to be modified, and the test value of the 6th bit to the 996th bit needs to be modified. The test values from the 997th bit to the 1000th bit do not need to be modified, which means that the decimal number 5,991,4 needs to be stored in the first programmable memory 4021 . Each 8-bit binary number in the first programmable memory 4021 is regarded as a storage address. When the 8-bit binary number is all 1, it is "11111111", and the corresponding decimal number is 255. The number of bits to be modified is 991 greater than 255, and, 3*255<991<=4*255, therefore, in the first programmable memory, the binary number stored in the first storage address is "00000101" corresponding to the decimal number 5, which is a bit that does not need to be modified number; the binary number stored in the second storage address is "11111111" corresponding to the decimal number 255, which is the number of bits to be modified; the binary number stored in the third storage address is "00000000" corresponding to the decimal number 0, which does not need to be modified the number of bits; the binary number stored in the fourth storage address is "11111111" corresponding to the decimal number 255, which is the number of bits to be modified; the binary number stored in the fifth storage address is "00000000" corresponding to the decimal number 0, which is The number of bits that do not need to be modified; the binary number stored in the sixth storage address is "11111111" corresponding to the decimal number 255, which is the number of bits that need to be modified; the binary number stored in the seventh storage address is "00000000" corresponding to the decimal number 0, is the number of bits that do not need to be modified; the binary number stored in the eighth storage address is "11100010" corresponding to the decimal number 226 is the number of bits that need to be modified; the binary number stored in the ninth storage address is "00000100" corresponding The decimal number 4 is the number of bits that do not need to be modified. In this way, the location of the target test option in the read-only memory 401 is stored in the first programmable memory 3021 .
示例性的,翻转器4031可以按照将第一可编程存储器4021中的第奇数个存储地址的存储值翻转为低电平,将第一可编程存储器4021中的第偶数个存储地址的存储值翻转为高电平的规律生成使能信号,并且使能信号的低电平/高电平的比特位长度也就等于与之对应的第一可编程存储器4021中的存储地址的存储值。其中,第一可编程存储器4021中的每一个存储地址的存储值是当前存储地址存储的二进制数字对应的十进制数字。例如,只读存储器401中,总共包括1000个比特位,并且第1比特位至第550比特位的测试值是不需要修改,第551比特位至第790比特位的测试值是需要修改的,第791比特位至第1000比特位的测试值是不需要修改,那么也就表示,第一可编程存储器4021中需要存储十进制数字550,240,210。第一可编程存储器4021中的每8位二进制位数被当做一个存储地址,8位二进制数字全为1时是“11111111”,其对应的十进制数字为255,需要修改的比特位数为991大于255,并且,2*255<991<=3*255,因此,在第一可编程存储器中,第一个存储地址存储的二进制数字为“11111111”对应十进制数字255,是不需要修改的比特位数;第二个存储地址存储的二进制数字为“00000000”对应十进制数字0,是需要修改的比特位数;第三个存储地址存储的二进制数字为“11111111”对应十进制数字255,是不需要修改的比特位数;第四个存储地址存储的二进制数字为“00000000”对应十进制数字0,是需要修改的比特位数;第五个存储地址存储的二进制数字为“00101000”对应十进制数字40,是不需要修改的比特位数;第六个存储地址存储的二进制数字为“11110000”对应十进制数字240,是需要修改的比特位数;第七个存储地址存储的二进制数字为“11010010”对应十进制数字210,是不需要修改的比特位数。以此实现在第一可编程存储器3021中存储目标测试选项在只读存储器401中的位置。Exemplarily, the flipper 4031 can flip the stored value of the even-numbered storage address in the first programmable memory 4021 according to flipping the stored value of the odd-numbered storage address in the first programmable memory 4021 to a low level. The enable signal is generated according to the rule of high level, and the bit length of the low level/high level of the enable signal is equal to the storage value of the corresponding storage address in the first programmable memory 4021 . Wherein, the storage value of each storage address in the first programmable memory 4021 is the decimal number corresponding to the binary number stored in the current storage address. For example, in the read-only memory 401, a total of 1000 bits are included, and the test value of the 1st bit to the 550th bit does not need to be modified, and the test value of the 551st bit to the 790th bit needs to be modified. The test values from the 791st bit to the 1000th bit do not need to be modified, which means that the first programmable memory 4021 needs to store decimal numbers 550, 240, 210. Each 8-bit binary number in the first programmable memory 4021 is regarded as a storage address. When the 8-bit binary number is all 1, it is "11111111", and the corresponding decimal number is 255. The number of bits to be modified is 991 greater than 255, and, 2*255<991<=3*255, therefore, in the first programmable memory, the binary number stored in the first storage address is "11111111" corresponding to the decimal number 255, which is a bit that does not need to be modified number; the binary number stored in the second storage address is "00000000" corresponding to the decimal number 0, which is the number of bits to be modified; the binary number stored in the third storage address is "11111111" corresponding to the decimal number 255, which does not need to be modified the number of bits; the binary number stored in the fourth storage address is "00000000" corresponding to the decimal number 0, which is the number of bits to be modified; the binary number stored in the fifth storage address is "00101000" corresponding to the decimal number 40, which is The number of bits that do not need to be modified; the binary number stored in the sixth storage address is "11110000" corresponding to the decimal number 240, which is the number of bits that need to be modified; the binary number stored in the seventh storage address is "11010010" corresponding to the decimal number 210, is the number of bits that do not need to be modified. In this way, the location of the target test option in the read-only memory 401 is stored in the first programmable memory 3021 .
需要说明的是,图7是以第一可编程存储器4021中的每一个存储地址都包含8bit为例进行说明的,在实际的应用中,第一可编程存储器4021的每一个存储地址包含的比特数可以是任何正整数个比特位,本申请的实施例对比不做限定。It should be noted that, FIG. 7 is an example in which each storage address in the first programmable memory 4021 contains 8 bits. In practical applications, the bits contained in each storage address of the first programmable memory 4021 The number may be any positive integer number of bits, which is not limited in the embodiment of the present application.
示例性的,翻转器4031可以按照将第一可编程存储器4021传输至翻转器4031的第奇数个十进制数字翻转为低电平,将第一可编程存储器4021传输至翻转器4031的第偶数个十进制数字翻转为高电平的规律生成使能信号,并且使能信号的低电平/高电平的比特位长度也就等于对应的第一可编程存储器4021传输至翻转器4031的十进制数字。例如,只读存储器401中,总共包括1000个比特位,并且第1比特位至第500比特位的测试值是不需要修改,第501比特位至第754比特位的测试值是需要修改的,第755比特位至第1000比特位的测试值是不需要修改,那么也就表示,第一可编程存储器4021中需要存储十进制数字500,254,246。其中,第一可编程存储器4021中的每8位二进制位数被当做一个存储地址,并且,第一可编程存储器4021中的一个存储地址所能存储的最大十进制数字为254,例如,第一可编程存储器4021的第n个存储地址存储的二进制数字为“11111111”时,也就表示第n个存储地址存储的二进 制数字全为“1”,其中,高7位二进制数字是“1”表示第n个存储地址存储的二进制数字实际是“11111110”,对应十进制数字254,低1位二进制数字是“1”表示当前的第n个存储地址与第n+1个存储地址是连续的,在第n+1个存储地址存储的二进制数字为“00101010”,对应十进制数字42,第一可编程存储器4021将第n个存储地址存储的十进制数字加上第n+1个存储地址存储的十进制数字,也就是254+42,将十进制数字296传输至翻转器4031。Exemplarily, the flipper 4031 can flip the odd-numbered decimal number transmitted from the first programmable memory 4021 to the flipper 4031 to a low level, and transfer the first programmable memory 4021 to the even-numbered decimal number of the flipper 4031. The enable signal is generated according to the rule that the number is flipped to a high level, and the bit length of the low level/high level of the enable signal is equal to the decimal number transmitted from the corresponding first programmable memory 4021 to the flipper 4031 . For example, in the read-only memory 401, a total of 1000 bits are included, and the test value of the 1st bit to the 500th bit does not need to be modified, and the test value of the 501st bit to the 754th bit needs to be modified. The test values from the 755th bit to the 1000th bit do not need to be modified, which means that the first programmable memory 4021 needs to store decimal numbers 500, 254, 246. Wherein, every 8 binary digits in the first programmable memory 4021 is regarded as a storage address, and the maximum decimal number that can be stored in a storage address in the first programmable memory 4021 is 254, for example, the first programmable When the binary number stored in the nth storage address of the programming memory 4021 is "11111111", it means that the binary numbers stored in the nth storage address are all "1", and the upper 7 binary numbers are "1" to indicate that the binary number stored in the nth storage address is "1". The binary number stored in n storage addresses is actually "11111110", which corresponds to the decimal number 254, and the lower 1-bit binary number is "1", which means that the current nth storage address is continuous with the n+1th storage address. The binary number stored in the n+1 storage address is "00101010", corresponding to the decimal number 42, and the first programmable memory 4021 adds the decimal number stored in the nth storage address to the decimal number stored in the n+1th storage address, That is, 254+42, the decimal number 296 is transmitted to the flipper 4031 .
在第一可编程存储器4021中需要存储十进制数字500,254,246时,在第一可编程存储器中,第一个存储地址存储的二进制数字为“11111111”对应十进制数字254,第二个存储地址存储的二进制数字为“11110110”对应十进制数字246,由于第一个存储地址存储的二进制数字为“11111111”,因此第一可编程存储器4021将十进制数字254+246,也就是500传输至翻转器4031,以使得翻转器4031将十进制数字500翻转为500个比特位长度的低电平,表示500个比特位数不需要修改;第三个存储地址存储的二进制数字为“11111110”对应十进制数字254,第一可编程存储器4021将十进制数字254传输至翻转器4031,以使得翻转器4031将十进制数字254翻转为254个比特位长度的高电平,表示254个比特位数需要修改;第四个存储地址存储的二进制数字为“11110110”对应十进制数字246,第一可编程存储器4021将十进制数字246传输至翻转器4031,以使得翻转器4031将十进制数字246翻转为246个比特位长度的低电平,表示246个比特位数不需要修改。示例性的,在集成电路400上电时,输出电路403中的翻转器4031,根据目标测试选项在只读存储器中的位置,生成使能信号,也可以是该使能信号的低电平状态对应于只读存储器401中需要修改的比特位数,也就是目标测试选项在只读存储器401中的位置处,并且低电平的比特位长度等于需要修改的比特位数;使能信号的高电平状态对应于只读存储器中不需要修改的比特位数,也就是除目标测试选项以外的其他测试选项在只读存储器401中的位置,并且高电平的比特位长度等于需要不修改的比特位数。然后输出电路403中的选择器4032,在使能信号为高电平时,获取与高电平的比特位长度相等的第一测试配置序列中除目标测试选项外的其他测试选项的测试值,在使能信号为低电平时,获取与低电平的比特位长度相等的第二可编程存储器4022中的目标测试选项的编程值。根据目标测试选项的编程值以及除目标测试选项外的其他测试选项的测试值生成第二测试配置序列。When the decimal number 500, 254, 246 needs to be stored in the first programmable memory 4021, in the first programmable memory, the binary number stored in the first storage address is "11111111" corresponding to the decimal number 254, and the second storage address The stored binary number is "11110110" corresponding to the decimal number 246. Since the binary number stored at the first storage address is "11111111", the first programmable memory 4021 transmits the decimal number 254+246, that is, 500, to the flipper 4031 , so that the flipper 4031 flips the decimal number 500 into a low level with a length of 500 bits, indicating that the 500 bits do not need to be modified; the binary number stored in the third storage address is "11111110" corresponding to the decimal number 254, The first programmable memory 4021 transmits the decimal number 254 to the flipper 4031, so that the flipper 4031 flips the decimal number 254 into a high level with a length of 254 bits, indicating that 254 bits need to be modified; the fourth storage The binary number stored in the address is "11110110" corresponding to the decimal number 246, and the first programmable memory 4021 transmits the decimal number 246 to the flipper 4031, so that the flipper 4031 flips the decimal number 246 into a low level with a length of 246 bits , indicating that 246 bits do not need to be modified. Exemplarily, when the integrated circuit 400 is powered on, the flipper 4031 in the output circuit 403 generates an enable signal according to the location of the target test option in the read-only memory, or the enable signal can be in a low-level state Corresponding to the number of bits that need to be modified in the read-only memory 401, that is, the position of the target test option in the read-only memory 401, and the bit length of the low level is equal to the number of bits that need to be modified; the high level of the enable signal The level state corresponds to the number of bits that do not need to be modified in the read-only memory, that is, the positions of other test options in the read-only memory 401 except the target test option, and the bit length of the high level is equal to the number of bits that need not be modified. number of bits. Then the selector 4032 in the output circuit 403, when the enable signal is high level, obtains the test values of other test options except the target test option in the first test configuration sequence equal to the bit length of the high level. When the enable signal is at low level, the programming value of the target test option in the second programmable memory 4022 whose bit length is equal to the low level is acquired. A second sequence of test configurations is generated based on the programmed values of the target test option and the test values of the other test options than the target test option.
示例性的,参照图8所示,本申请的实施例提供了集成电路800的原理结构示意图,在图8中,集成电路800在上电后需要进行测试,但是此时的集成电路800中的处理器802还未正常运行,并且该集成电路800中的JTAG管脚801也被封闭,那么,选择器803可以选中选择器4032传输的符合IEEE 1149.1标准的第二测试配置序列至TAP控制器804,其中,翻转器4031,根据目标测试选项在只读存储器401中的位置,生成使能信号,该使能信号的高电平状态对应于只读存储器401中需要修改的比特位数,也就是目标测试选项在只读存储器401中的位置处,并且高电平的比特位长度等于需要修改的比特位数;使能信号的低电平状态对应于只读存储器中不需要修改的比特位数,也就是除目标测试选项以外的其他测试选项在只读存储器401中的位置,并且低电平的比特位长度等于需要不修改的比特位数。只读存储器401中存储第一测试配置序列,第一测试配置序列包括多个测试选项的测试值,只读存储器401是在使能 信号的每一个比特位长度内(无论是1个高电平比特位长度还是一个低电平比特位长度)将1位二进制数据传输至选择器4032。第二可编程存储器4022存储目标测试选项的编程值,并且第二可编程存储器4022是在使能信号的一个高电平比特位长度内将1位二进制数据传输至选择器4032。选择器4032在使能信号为低电平时,获取与低电平的比特位长度相等的第一测试配置序列中除目标测试选项外的其他测试选项的测试值,在使能信号为高电平时,获取与高电平的比特位长度相等的第二可编程存储器4022中的目标测试选项的编程值。并且根据目标测试选项的编程值以及除目标测试选项外的其他测试选项的测试值生成第二测试配置序列,将第二测试配置序列传输至TAP控制器804,其中第二测试配置序列包括TDI控制信号、TMS控制信号、TCK控制信号以及多个测试选项,其中,TAP控制器804根据TMS控制信号以及TCK控制信号选中集成电路中的用户自定义数据寄存器,并且通过TDI管脚传输多个测试选项,将多个测试选项写入至选中的用户自定义寄存器中,然后,TAP控制器804根据TMS控制信号以及TCK控制信号将用户自定义寄存器中写入的测试选项传输至BIST控制器805,进而使得BIST控制器805根据多个测试选项进行自测试。Exemplarily, referring to FIG. 8 , the embodiment of the present application provides a schematic structural diagram of an integrated circuit 800. In FIG. 8, the integrated circuit 800 needs to be tested after power-on, but the The processor 802 is not running normally, and the JTAG pin 801 in the integrated circuit 800 is also closed, then, the selector 803 can select the second test configuration sequence in accordance with the IEEE 1149.1 standard transmitted by the selector 4032 to the TAP controller 804 , wherein, the flipper 4031 generates an enable signal according to the position of the target test option in the read-only memory 401, and the high level state of the enable signal corresponds to the number of bits to be modified in the read-only memory 401, that is, The target test option is at the position in the read-only memory 401, and the bit length of the high level is equal to the number of bits that need to be modified; the low-level state of the enable signal corresponds to the number of bits that do not need to be modified in the read-only memory , that is, the positions of other test options except the target test option in the read-only memory 401, and the bit length of the low level is equal to the number of bits that need not be modified. The first test configuration sequence is stored in the read-only memory 401, the first test configuration sequence includes the test values of a plurality of test options, and the read-only memory 401 is in each bit length of the enable signal (no matter it is a high level The bit length is also a low level bit length) to transmit 1-bit binary data to the selector 4032 . The second programmable memory 4022 stores the programming value of the target test option, and the second programmable memory 4022 transmits 1-bit binary data to the selector 4032 within a high level bit length of the enable signal. The selector 4032 obtains the test values of other test options except the target test option in the first test configuration sequence equal to the bit length of the low level when the enable signal is at a low level, and when the enable signal is at a high level , acquire the programming value of the target test option in the second programmable memory 4022 whose bit length is equal to that of the high level. And generate a second test configuration sequence according to the programming value of the target test option and the test values of other test options except the target test option, and transmit the second test configuration sequence to the TAP controller 804, wherein the second test configuration sequence includes TDI control signal, a TMS control signal, a TCK control signal, and multiple test options, wherein the TAP controller 804 selects a user-defined data register in the integrated circuit according to the TMS control signal and the TCK control signal, and transmits multiple test options through the TDI pin , write a plurality of test options into the selected user-defined registers, then, the TAP controller 804 transmits the test options written in the user-defined registers to the BIST controller 805 according to the TMS control signal and the TCK control signal, and then Causes the BIST controller 805 to perform a self-test according to a number of test options.
并且,在图8所示的集成电路800生产制造的最后一步,可以将ATE连接至JTAG管脚801,选择器804则选中JTAG管脚801传输ATE生成的符合IEEE 1149.1标准的测试配置序列至TAP控制器804,该测试配置序列包括TDI控制信号、TMS控制信号、TCK控制信号以及多个测试选项,其中,TAP控制器804根据TMS控制信号以及TCK控制信号选中集成电路中的用户自定义数据寄存器,并且通过TDI管脚传输多个测试选项,将多个测试选项写入至选中的用户自定义寄存器中,然后,TAP控制器804根据TMS控制信号以及TCK控制信号将用户自定义寄存器中写入的测试选项传输至BIST控制器805,进而使得BIST控制器805根据多个测试选项进行自测试。需要说明的是,在集成电路生产制造完成以后,集成电路中的JTAG管脚801会被封闭,其目的是为了避免集成电路在应用过程中受到恶意破坏。In addition, in the last step of manufacturing the integrated circuit 800 shown in FIG. 8 , the ATE can be connected to the JTAG pin 801, and the selector 804 selects the JTAG pin 801 to transmit the test configuration sequence generated by the ATE and conforming to the IEEE 1149.1 standard to the TAP. A controller 804, the test configuration sequence includes a TDI control signal, a TMS control signal, a TCK control signal and a plurality of test options, wherein the TAP controller 804 selects a user-defined data register in the integrated circuit according to the TMS control signal and the TCK control signal , and transmit multiple test options through the TDI pin, and write multiple test options into the selected user-defined register, and then, the TAP controller 804 writes the user-defined register according to the TMS control signal and the TCK control signal The test options are transmitted to the BIST controller 805, so that the BIST controller 805 performs a self-test according to the plurality of test options. It should be noted that after the integrated circuit is manufactured, the JTAG pin 801 in the integrated circuit will be closed, the purpose of which is to prevent the integrated circuit from being maliciously damaged during the application process.
参照图8所示,如果集成电路800通电并正常运行时,此时选择器803可以选中处理器802传输处理器802生成的符合IEEE 1149.1标准的测试配置序列至TAP控制器804,该测试配置序列包括TDI控制信号、TMS控制信号、TCK控制信号以及多个测试选项,其中,TAP控制器804根据TMS控制信号以及TCK控制信号选中集成电路中的用户自定义数据寄存器,并且通过TDI管脚传输多个测试选项,将多个测试选项写入至选中的用户自定义寄存器中,然后,TAP控制器804根据TMS控制信号以及TCK控制信号将用户自定义寄存器中写入的测试选项传输至BIST控制器805,进而使得BIST控制器805根据多个测试选项进行自测试。Referring to Fig. 8, if the integrated circuit 800 is powered on and operates normally, the selector 803 can select the processor 802 to transmit the test configuration sequence generated by the processor 802 to the TAP controller 804 in accordance with the IEEE 1149.1 standard, the test configuration sequence Including TDI control signal, TMS control signal, TCK control signal and multiple test options, wherein, the TAP controller 804 selects the user-defined data register in the integrated circuit according to the TMS control signal and the TCK control signal, and transmits multiple data registers through the TDI pin. A test option, multiple test options are written into the selected user-defined register, and then, the TAP controller 804 transmits the test option written in the user-defined register to the BIST controller according to the TMS control signal and the TCK control signal 805, further enabling the BIST controller 805 to perform a self-test according to multiple test options.
示例性的,本申请的实施例提供了一种集成电路的测试方法,其中,该集成电路包括:只读存储器、输出电路以及至少一个可编程存储器;只读存储器用于存储第一测试配置序列,第一测试配置序列包括多个测试选项的测试值;至少一个可编程存储器用于存储目标测试选项的编程值。参照图9所示,该集成电路的测试方法包括:Exemplarily, an embodiment of the present application provides a method for testing an integrated circuit, wherein the integrated circuit includes: a read-only memory, an output circuit, and at least one programmable memory; the read-only memory is used to store the first test configuration sequence , the first test configuration sequence includes test values of a plurality of test options; at least one programmable memory is used to store the programmed values of the target test options. With reference to shown in Figure 9, the testing method of this integrated circuit comprises:
901、在上电后读取第一测试配置序列。901. Read a first test configuration sequence after power-on.
902、读取目标测试选项的编程值。902. Read the programming value of the target test option.
903、根据第一测试配置序列以及目标测试选项的编程值生成第二测试配置序列。903. Generate a second test configuration sequence according to the first test configuration sequence and the programming value of the target test option.
通常,在步骤903之后,可以将第二测试配置序列传输至测试设备,以使得测试设备根据第二测试配置序列对待测模块进行测试。Usually, after step 903, the second test configuration sequence may be transmitted to the test equipment, so that the test equipment performs a test on the module to be tested according to the second test configuration sequence.
其中,至少一个可编程存储器包括第一存储区域和第二存储区域,第一存储区域用于存储目标测试选项在只读存储器中的位置,第二存储区域用于存储目标测试选项的编程值;集成电路的测试方法还包括在步骤903之前读取目标测试选项在只读存储器中的位置。Wherein, at least one programmable memory includes a first storage area and a second storage area, the first storage area is used to store the position of the target test option in the read-only memory, and the second storage area is used to store the programming value of the target test option; The method for testing an integrated circuit further includes reading the location of the target test option in the ROM before step 903 .
则步骤903具体包括:根据第一测试配置序列、目标测试选项在只读存储器中的位置以及目标测试选项的编程值生成第二测试配置序列。Then step 903 specifically includes: generating a second test configuration sequence according to the first test configuration sequence, the location of the target test option in the ROM, and the programming value of the target test option.
其中,集成电路中的输出电路包括翻转器和选择器,则上述步骤903具体包括:Wherein, the output circuit in the integrated circuit includes a flipper and a selector, then the above step 903 specifically includes:
9031、根据目标测试选项在只读存储器中的位置和其他位置生成使能信号。9031. Generate an enable signal according to the position in the read-only memory and other positions of the target test option.
其中使能信号在目标测试选项在只读存储器中的位置处为第一状态,使能信号在其他位置处为第二状态,其他位置包括第一配置序列中除目标测试选项以外的其他测试选项在只读存储器中的位置。Wherein the enable signal is in a first state at the position of the target test option in the read-only memory, and the enable signal is in a second state at other positions, the other positions including other test options in the first configuration sequence except the target test option location in read-only memory.
9032、在使能信号为第一状态时获取第二存储区域中的目标测试选项的编程值,在使能信号为第二状态时获取其他测试选项的测试值。9032. Acquire the programming value of the target test option in the second storage area when the enabling signal is in the first state, and acquire the test values of other test options when the enabling signal is in the second state.
9033、根据目标测试选项的编程值以及其他测试选项的测试值生成第二测试配置序列。9033. Generate a second test configuration sequence according to the programmed value of the target test option and the test values of other test options.
其中,该多个测试选项包括:待测模块列表,测试强度以及测试配置,待测模块列表用于指示需要对那些待测模块进行测试,测试强度包括:测试覆盖率,测试向量数以及测试时间等,其中,测试覆盖率表示能测试到的待测模块的百分比,例如测试目标覆盖为100%表示将待测模块全部测试,测试向量数表示测试的数据,测试时间表示多长时间完成测试;测试配置包括:线性反馈移位寄存器LFSR种子、开启时钟域、多输入特征寄存器MISR比对值以及测试算法等,其中线性反馈移位寄存器LFSR种子表示线性反馈移位寄存器的初始值,开启时钟域表示在时钟信号处于上升沿或是下降沿是开启测试,多输入特征寄存器MISR比对值表示无故障待测模块中得到的特征值,测试算法包括“March算法,Checkerboard算法。目标测试选项是多个测试选项中的一个或多个需要修改的测试选项。目标测试选项包括以下一项或多项:待测模块列表,测试强度参数以及测试配置。Wherein, the multiple test options include: a list of modules to be tested, test intensity and test configuration, the list of modules to be tested is used to indicate which modules to be tested need to be tested, and the test intensity includes: test coverage, test vector number and test time etc., wherein, the test coverage rate indicates the percentage of the module to be tested that can be tested, for example, the test target coverage is 100%, which means that all the modules to be tested are tested, the number of test vectors indicates the test data, and the test time indicates how long it takes to complete the test; The test configuration includes: linear feedback shift register LFSR seed, open clock domain, multi-input feature register MISR comparison value, and test algorithm, etc., where the linear feedback shift register LFSR seed represents the initial value of the linear feedback shift register, and the clock domain is opened Indicates that the test is started when the clock signal is on the rising or falling edge. The comparison value of the multi-input characteristic register MISR represents the characteristic value obtained in the module under test without failure. The test algorithm includes "March algorithm, Checkerboard algorithm. The target test option is multiple One or more of the test options that need to be modified. The target test options include one or more of the following: list of modules to be tested, test intensity parameters, and test configuration.
示例性的,本申请的实施例提供了一种电子设备,该电子设备包括印刷电路板(printed circuit board,PCB)以及设置于所述PCB上的集成电路,该集成电路可以是前述任一个集成电路,该电子设备包括例如手机、平板电脑、个人数字助理(personal digital assistant,PDA)、车载电脑等。本申请实施例对电子设备的具体形式不做特殊限制。并且在该电子设备上电后,该电子设备中的集成电路即可执行上述的集成电路的测试方法。Exemplary, the embodiment of the present application provides an electronic device, the electronic device includes a printed circuit board (printed circuit board, PCB) and an integrated circuit arranged on the PCB, the integrated circuit can be any one of the aforementioned integrated circuit, the electronic device includes, for example, a mobile phone, a tablet computer, a personal digital assistant (personal digital assistant, PDA), a vehicle-mounted computer, and the like. The embodiment of the present application does not specifically limit the specific form of the electronic device. And after the electronic device is powered on, the integrated circuit in the electronic device can execute the above-mentioned integrated circuit testing method.
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序代码,当电子设备执行该计算机程序代码时,电子设备执行上述实施例中的集成电路测试方法。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机, 芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。The embodiment of the present application also provides a computer-readable storage medium, the computer-readable storage medium stores computer program code, and when the electronic device executes the computer program code, the electronic device executes the integrated circuit testing method in the above-mentioned embodiments. Based on this understanding, the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the software product is stored in a storage medium Among them, several instructions are included to make a device (which may be a single-chip microcomputer, a chip, etc.) or a processor (processor) execute all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage medium includes: various media that can store program codes such as U disk, mobile hard disk, read only memory (ROM), random access memory (random access memory, RAM), magnetic disk or optical disk.
本申请的实施例还提供了一种计算机程序产品,当该计算机程序产品在电子设备上运行时,使得电子设备执行上述相关步骤,以实现上述实施例中集成电路的测试方法。Embodiments of the present application also provide a computer program product, which, when running on an electronic device, causes the electronic device to execute the above-mentioned related steps, so as to implement the method for testing an integrated circuit in the above-mentioned embodiment.
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in this application, it should be understood that the disclosed devices and methods may be implemented in other ways. For example, the device embodiments described above are only illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be Incorporation or may be integrated into another device, or some features may be omitted, or not implemented. In another point, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The unit described as a separate component may or may not be physically separated, and the component displayed as a unit may be one physical unit or multiple physical units, that is, it may be located in one place, or may be distributed to multiple different places . Part or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。If the integrated unit is realized in the form of a software function unit and sold or used as an independent product, it can be stored in a readable storage medium. The above content is only the specific implementation of the application, but the scope of protection of the application is not limited thereto. Anyone familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the application, and should covered within the scope of protection of this application. Therefore, the protection scope of the present application should be determined by the protection scope of the claims.
尽管结合具体特征及其实施例对本发明进行了描述,显而易见的,在不脱离本发明的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本发明的示例性说明,且视为已覆盖本发明范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。Although the invention has been described in conjunction with specific features and embodiments thereof, it will be apparent that various modifications and combinations can be made therein without departing from the spirit and scope of the invention. Accordingly, the specification and drawings are merely illustrative of the invention as defined by the appended claims and are deemed to cover any and all modifications, variations, combinations or equivalents within the scope of the invention. Obviously, those skilled in the art can make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalent technologies, the present invention also intends to include these modifications and variations.

Claims (14)

  1. 一种集成电路,其特征在于,包括:只读存储器、输出电路以及至少一个可编程存储器;An integrated circuit, characterized by comprising: a read-only memory, an output circuit, and at least one programmable memory;
    所述只读存储器用于存储第一测试配置序列,所述第一测试配置序列包括多个测试选项的测试值;The read-only memory is used to store a first test configuration sequence, and the first test configuration sequence includes test values of a plurality of test options;
    所述至少一个可编程存储器用于存储所述多个测试选项中的目标测试选项的编程值;said at least one programmable memory for storing a programmed value of a target test option of said plurality of test options;
    所述输出电路,被配置为在上电后读取所述第一测试配置序列;The output circuit is configured to read the first test configuration sequence after power-on;
    所述输出电路,还被配置为读取所述目标测试选项的编程值;the output circuit is further configured to read a programmed value of the target test option;
    所述输出电路,还被配置为根据所述第一测试配置序列以及所述目标测试选项的编程值生成第二测试配置序列。The output circuit is further configured to generate a second test configuration sequence according to the first test configuration sequence and the programmed value of the target test option.
  2. 根据权利要求1所述的集成电路,其特征在于,所述至少一个可编程存储器包括第一存储区域和第二存储区域,所述第一存储区域用于存储所述目标测试选项在所述只读存储器中的位置,所述第二存储区域用于存储所述目标测试选项的编程值;The integrated circuit according to claim 1, wherein said at least one programmable memory comprises a first storage area and a second storage area, said first storage area is used to store said target test option in said only reading a location in memory, the second storage area for storing a programmed value for the target test option;
    所述输出电路,还被配置为读取所述目标测试选项在所述只读存储器中的位置;The output circuit is further configured to read the location of the target test option in the read-only memory;
    所述输出电路,具体被配置为根据所述第一测试配置序列、所述目标测试选项在所述只读存储器中的位置以及所述目标测试选项的编程值生成第二测试配置序列。The output circuit is specifically configured to generate a second test configuration sequence according to the first test configuration sequence, the location of the target test option in the ROM, and the programmed value of the target test option.
  3. 根据权利要求2所述的集成电路,其特征在于,The integrated circuit of claim 2, wherein
    所述输出电路包括翻转器和选择器;The output circuit includes a flipper and a selector;
    所述翻转器,具体被配置为根据所述目标测试选项在所述只读存储器中的位置和其他位置生成使能信号;其中所述使能信号在所述目标测试选项在所述只读存储器中的位置处为第一状态,所述使能信号在其他位置处为第二状态,所述其他位置包括所述第一配置序列中除所述目标测试选项以外的其他测试选项在所述只读存储器中的位置;The flipper is specifically configured to generate an enable signal according to the location of the target test option in the read-only memory and other locations; wherein the enable signal is in the target test option in the read-only memory The position in the position is the first state, the enable signal is in the second state at other positions, and the other positions include other test options in the first configuration sequence except the target test option in the only Read the location in memory;
    所述选择器,用于在所述使能信号为第一状态时获取所述第二存储区域中的所述目标测试选项的编程值,在所述使能信号为第二状态时获取所述其他测试选项的测试值,根据所述目标测试选项的编程值以及所述其他测试选项的测试值生成第二测试配置序列。The selector is configured to obtain the programming value of the target test option in the second storage area when the enabling signal is in the first state, and obtain the programming value of the target test option in the second storage area when the enabling signal is in the second state. Test values of other test options, generating a second test configuration sequence according to the programmed values of the target test options and the test values of the other test options.
  4. 根据权利要求2所述的集成电路,其特征在于,The integrated circuit of claim 2, wherein
    所述至少一个可编程存储器包括第一可编程存储器和第二可编程存储器;the at least one programmable memory includes a first programmable memory and a second programmable memory;
    所述第一可编程存储器提供所述第一存储区域,所述第二可编程存储器提供所述第二存储区域。The first programmable memory provides the first storage area, and the second programmable memory provides the second storage area.
  5. 根据权利要求1-4任一项所述的集成电路,其特征在于,The integrated circuit according to any one of claims 1-4, characterized in that,
    所述多个测试选项包括:待测模块列表,测试强度参数以及测试配置。The multiple test options include: a list of modules to be tested, test intensity parameters and test configurations.
  6. 根据权利要求1-4任一项所述的集成电路,其特征在于,The integrated circuit according to any one of claims 1-4, characterized in that,
    所述目标测试选项包括以下一项或多项:待测模块列表,测试强度参数以及测试配置。The target test options include one or more of the following: a list of modules to be tested, a test intensity parameter, and a test configuration.
  7. 一种集成电路的测试方法,其特征在于,所述集成电路包括:只读存储器、输出电路以及至少一个可编程存储器;A method for testing an integrated circuit, characterized in that the integrated circuit includes: a read-only memory, an output circuit, and at least one programmable memory;
    所述只读存储器用于存储第一测试配置序列,所述第一测试配置序列包括多个测试选项的测试值;The read-only memory is used to store a first test configuration sequence, and the first test configuration sequence includes test values of a plurality of test options;
    所述至少一个可编程存储器用于存储所述多个测试选项中的目标测试选项的编程值;said at least one programmable memory for storing a programmed value of a target test option of said plurality of test options;
    所述集成电路的测试方法包括:The testing method of described integrated circuit comprises:
    在上电后读取所述第一测试配置序列;reading the first test configuration sequence after power-up;
    读取所述目标测试选项的编程值;read the programmed value of the target test option;
    根据所述第一测试配置序列以及所述目标测试选项的编程值生成第二测试配置序列。A second sequence of test configurations is generated based on the first sequence of test configurations and the programmed values of the target test options.
  8. 根据权利要求7所述的集成电路的测试方法,其特征在于,所述至少一个可编程存储器包括第一存储区域和第二存储区域,所述第一存储区域用于存储所述目标测试选项在所述只读存储器中的位置,所述第二存储区域用于存储所述目标测试选项的编程值;The method for testing an integrated circuit according to claim 7, wherein the at least one programmable memory includes a first storage area and a second storage area, and the first storage area is used to store the target test option in the location in the read-only memory, the second storage area is used to store the programming value of the target test option;
    所述集成电路的测试方法还包括:The test method of the integrated circuit also includes:
    读取所述目标测试选项在所述只读存储器中的位置;reading the location of the target test option in the read-only memory;
    则根据所述第一测试配置序列以及所述目标测试选项的编程值生成第二测试配置序列具体包括:根据所述第一测试配置序列、所述目标测试选项在所述只读存储器中的位置以及所述目标测试选项的编程值生成第二测试配置序列。Then generating a second test configuration sequence according to the first test configuration sequence and the programming value of the target test option specifically includes: according to the first test configuration sequence, the position of the target test option in the read-only memory and the programmed values of the target test options generate a second sequence of test configurations.
  9. 根据权利要求8所述的集成电路的测试方法,其特征在于,The method for testing an integrated circuit according to claim 8, wherein:
    所述根据所述第一测试配置序列、所述目标测试选项在所述只读存储器中的位置以及所述目标测试选项的编程值生成第二测试配置序列,具体包括:The generating a second test configuration sequence according to the first test configuration sequence, the position of the target test option in the ROM, and the programming value of the target test option specifically includes:
    根据所述目标测试选项在所述只读存储器中的位置和其他位置生成使能信号;其中所述使能信号在所述目标测试选项在所述只读存储器中的位置处为第一状态,所述使能信号在其他位置处为第二状态,所述其他位置包括所述第一配置序列中除所述目标测试选项以外的其他测试选项在所述只读存储器中的位置;generating an enable signal based on the location of the target test option in the ROM and other locations; wherein the enable signal is in a first state at the location of the target test option in the ROM, The enable signal is in a second state at other locations, the other locations including locations in the read-only memory of test options other than the target test option in the first configuration sequence;
    在所述使能信号为第一状态时获取所述第二存储区域中的所述目标测试选项的编程值,在所述使能信号为第二状态时获取所述其他测试选项的测试值;Acquire the programming value of the target test option in the second storage area when the enabling signal is in the first state, and acquire the test value of the other test option when the enabling signal is in the second state;
    根据所述目标测试选项的编程值以及所述其他测试选项的测试值生成第二测试配置序列。A second sequence of test configurations is generated based on the programmed value of the target test option and the test value of the other test option.
  10. 根据权利要求7-9任一项所述的集成电路的测试方法,其特征在于,The method for testing an integrated circuit according to any one of claims 7-9, wherein:
    所述多个测试选项包括:待测模块列表,测试强度参数以及测试配置。The multiple test options include: a list of modules to be tested, a test intensity parameter and a test configuration.
  11. 根据权利要求7-9任一项所述的集成电路的测试方法,其特征在于,The method for testing an integrated circuit according to any one of claims 7-9, wherein:
    所述目标测试选项包括以下一项或多项:待测模块列表,测试强度参数以及测试配置。The target test options include one or more of the following: a list of modules to be tested, a test intensity parameter, and a test configuration.
  12. 一种电子设备,其特征在于,包括印刷电路板以及设置于所述印刷电路板上的如权利要求1-6任一项所述的集成电路。An electronic device, characterized by comprising a printed circuit board and the integrated circuit according to any one of claims 1-6 arranged on the printed circuit board.
  13. 一种计算机可读存储介质,其特征在于,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行上述权利要求7-11中的任一项所述的方法。A computer-readable storage medium is characterized by comprising computer instructions, and when the computer instructions are run on the electronic device, the electronic device is made to execute the method described in any one of claims 7-11.
  14. 一种计算机程序产品,其特征在于,当计算机程序产品在电子设备上运行时, 使得电子设备执行上述权利要求7-11中的任一项所述的方法。A computer program product, characterized in that, when the computer program product is run on the electronic device, the electronic device is made to execute the method described in any one of claims 7-11.
PCT/CN2022/128643 2022-02-15 2022-10-31 Integrated circuit and test method for integrated circuit WO2023155480A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210138952.4 2022-02-15
CN202210138952.4A CN116643140A (en) 2022-02-15 2022-02-15 Integrated circuit and testing method thereof

Publications (1)

Publication Number Publication Date
WO2023155480A1 true WO2023155480A1 (en) 2023-08-24

Family

ID=87577451

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/128643 WO2023155480A1 (en) 2022-02-15 2022-10-31 Integrated circuit and test method for integrated circuit

Country Status (2)

Country Link
CN (1) CN116643140A (en)
WO (1) WO2023155480A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117805596B (en) * 2024-02-29 2024-04-26 牛芯半导体(深圳)有限公司 Method, device, electronic equipment and storage medium for testing chip

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002251230A (en) * 2001-02-22 2002-09-06 Nec Gumma Ltd Power source on/off sequence controller
JP2002352600A (en) * 2001-05-25 2002-12-06 Matsushita Electric Ind Co Ltd Semiconductor memory, its test jig, and test method
US20030033558A1 (en) * 2001-08-07 2003-02-13 Parvathala Praveen K. Tool for generating a re-generative functional test
US6536034B1 (en) * 1997-06-13 2003-03-18 Bull Cp8 Method for modifying code sequences and related device
US20040034823A1 (en) * 2002-08-13 2004-02-19 Lsi Logic Corporation Embedded sequence checking
US20080250291A1 (en) * 2007-04-09 2008-10-09 Advantest Corporation Test apparatus and electronic device
US20090024899A1 (en) * 2007-07-16 2009-01-22 Robert Alan Reid System and Method for Providing Data Integrity in a Non-Volatile Memory System
WO2014067483A1 (en) * 2012-11-01 2014-05-08 Huawei Technologies Co., Ltd. Technique to operate memory in functional mode under lbist test
US20140237263A1 (en) * 2013-02-19 2014-08-21 Kabushiki Kaisha Toshiba Nonvolatile semiconductor memory device and memory system using the same
US20190033954A1 (en) * 2017-07-28 2019-01-31 Rohm Co., Ltd. Sequence controller and electronic device
WO2021247074A1 (en) * 2020-06-04 2021-12-09 Futurewei Technologies, Inc. Resumable instruction generation

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6536034B1 (en) * 1997-06-13 2003-03-18 Bull Cp8 Method for modifying code sequences and related device
JP2002251230A (en) * 2001-02-22 2002-09-06 Nec Gumma Ltd Power source on/off sequence controller
JP2002352600A (en) * 2001-05-25 2002-12-06 Matsushita Electric Ind Co Ltd Semiconductor memory, its test jig, and test method
US20030033558A1 (en) * 2001-08-07 2003-02-13 Parvathala Praveen K. Tool for generating a re-generative functional test
US20040034823A1 (en) * 2002-08-13 2004-02-19 Lsi Logic Corporation Embedded sequence checking
US20080250291A1 (en) * 2007-04-09 2008-10-09 Advantest Corporation Test apparatus and electronic device
US20090024899A1 (en) * 2007-07-16 2009-01-22 Robert Alan Reid System and Method for Providing Data Integrity in a Non-Volatile Memory System
WO2014067483A1 (en) * 2012-11-01 2014-05-08 Huawei Technologies Co., Ltd. Technique to operate memory in functional mode under lbist test
US20140237263A1 (en) * 2013-02-19 2014-08-21 Kabushiki Kaisha Toshiba Nonvolatile semiconductor memory device and memory system using the same
US20190033954A1 (en) * 2017-07-28 2019-01-31 Rohm Co., Ltd. Sequence controller and electronic device
WO2021247074A1 (en) * 2020-06-04 2021-12-09 Futurewei Technologies, Inc. Resumable instruction generation

Also Published As

Publication number Publication date
CN116643140A (en) 2023-08-25

Similar Documents

Publication Publication Date Title
US6594802B1 (en) Method and apparatus for providing optimized access to circuits for debug, programming, and test
US5781560A (en) System testing device and method using JTAG circuit for testing high-package density printed circuit boards
US6826101B2 (en) Semiconductor device and method for testing the same
US7437645B2 (en) Test circuit for semiconductor device
JP3287539B2 (en) Processing system with test mechanism
US11199579B2 (en) Test access port with address and command capability
US20080072111A1 (en) Method for performing a test case with a LBIST engine on an integrated circuit, integrated circuit and method for specifying an integrated circuit
WO2023155480A1 (en) Integrated circuit and test method for integrated circuit
US7447962B2 (en) JTAG interface using existing I/O bus
US7088627B1 (en) Column redundancy scheme for non-volatile flash memory using JTAG input protocol
JP3357534B2 (en) Processing system with test mechanism
US20030172333A1 (en) Built-in self test parallel JTAG serial chain architecture for reduced test vector size
US11809740B1 (en) Fast and flexible RAM reader and writer
EP4216222A1 (en) Methods and devices for flexible ram loading for test operation
KR20070060855A (en) Integrated circuit device for test

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22926784

Country of ref document: EP

Kind code of ref document: A1