Increase data transfer throughput by enabling dynamic JTAG test mode entry and sharing of all JTAG pins
09772376 · 2017-09-26
Assignee
Inventors
Cpc classification
G01R31/31926
PHYSICS
G01R31/3172
PHYSICS
G01R31/31723
PHYSICS
International classification
Abstract
An integrated circuit with functional circuitry and testing circuitry, the testing circuitry having a state machine operable in a plurality of different states. The integrated circuit also has a pin for receiving a signal, wherein the state machine is operable to transition between states in response to a change in level of the signal. Circuitry couples the signal of the pin, in a first level, to the state machine in a first time period for causing the state machine to enter a predetermined state, and circuitry maintains the signal in the first level to the state machine in a second time period for maintaining the state machine in the predetermined state. Also during the second time period, circuitry couples data received at the pin to a destination circuit other than the state machine, wherein the destination circuit is operable to perform plural successive scan tests using data from the pin without a power on reset of the functional circuitry.
Claims
1. An integrated circuit, comprising: functional circuitry; testing circuitry, comprising a state machine operable in a plurality of different states; a pin for receiving a signal, wherein the state machine is operable to transition between states in response to a change in level of the signal; circuitry for coupling the signal, in a first level, from the pin to the state machine in a first time period for causing the state machine to enter a predetermined state; circuitry for maintaining the signal in the first level to the state machine in a second time period for maintaining the state machine in the predetermined state; and circuitry for coupling data received at the pin, during the second time period, to a destination circuit other than the state machine, wherein the destination circuit is operable to perform plural successive scan tests using data from the pin without a power on reset of the functional circuitry.
2. The integrated circuit of claim 1 wherein the pin for receiving a signal comprises a pin for receiving a JTAG TMS pin.
3. The integrated circuit of claim 1 wherein the pin for receiving a signal comprises a pin for receiving a JTAG TRST pin.
4. The integrated circuit of claim 1 wherein, during the second time period, the data at the pin comprises test data.
5. The integrated circuit of claim 4 and further comprising a scan chain comprising a plurality of registers, wherein each register in the plurality of registers is connected to a respective pin on the integrated circuit, and wherein during the second time period the destination comprises testing circuitry other than the scan chain.
6. The integrated circuit of claim 1 wherein each scan in the plural successive scan tests is selected from a group consisting of PBIST, DC Parametric Tests, Flash Test, eFuse Test, and Boundary Scan Test.
7. The integrated circuit of claim 1 wherein the circuitry for coupling the signal and the circuitry for maintaining the signal are responsive to a scan enable signal.
8. The integrated circuit of claim 1 wherein the circuitry for coupling the signal and the circuitry for maintaining the signal are responsive to Channel Mask Load Enable signal.
9. The integrated circuit of claim 1 wherein the circuitry for coupling the signal and the circuitry for maintaining the signal are responsive to a scan enable signal and to a Channel Mask Load Enable signal.
10. The integrated circuit of claim 1 wherein the pin comprises one pin in a total number of pins for the integrated circuit not exceeding 8 pins.
11. The integrated circuit of claim 1 wherein the pin comprises one pin in a total number of pins for the integrated circuit not exceeding 16 pins.
12. The integrated circuit of claim 1 wherein the pin comprises one pin in a total number of pins for the integrated circuit not exceeding 32 pins.
13. The integrated circuit of claim 1 wherein the pin comprises a first pin, and further comprising a second pin for receiving a JTAG signal, the second pin shared between JTAG signaling and test data.
14. The integrated circuit of claim 1 wherein the pin comprises a first pin, and further comprising a plurality of additional pins, wherein each pin in the plurality of pins is for receiving a respective JTAG signal and is shared between JTAG signaling and test data.
15. The integrated circuit of claim 1 wherein the state machine comprises a JTAG state machine.
16. A method of operating an integrated circuit comprising functional circuitry and testing circuitry, the testing circuitry comprising a state machine operable in a plurality of different states, the method comprising: receiving a signal at a pin, wherein the state machine is operable to transition between states in response to a change in level of the signal; coupling the signal, in a first level, from the pin to the state machine in a first time period for causing the state machine to enter a predetermined state; maintaining the signal in the first level to the state machine in a second time period for maintaining the state machine in the predetermined state; and coupling data received at the pin, during the second time period, to a destination circuit other than the state machine, wherein the destination circuit is operable to perform plural successive scan tests using data from the pin without a power on reset of the functional circuitry.
17. The method of claim 16 wherein the pin comprises a pin for receiving a JTAG TMS pin.
18. The method of claim 16 wherein the pin comprises a pin for receiving a JTAG TRST pin.
19. The method of claim 16 wherein, during the second time period, the data at the pin comprises test data.
20. The method of claim 16 wherein the step of coupling the signal and the step of maintaining the signal are responsive to at least one of a scan enable signal and to a Channel Mask Load Enable signal.
Description
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING
(1)
(2)
(3)
(4)
(5)
(6)
DETAILED DESCRIPTION OF EMBODIMENTS
(7)
(8)
(9) IC 100 also includes a scan circuit 122. Scan circuit 122 represents additional circuitry embedded in the IC for testing beyond the boundary testing available via the scan chain register consisting of cells C.sub.5 through C.sub.15. For example, scan circuit 122 may include one or more additional scan chains, where each such chain comprises a number of cells (e.g., flip flops) into which data may be shifted, with such data then executed via functional circuitry 114 (including logic, memories, or other functions therein), and then the result stored back into respective cells and shifted out, either onboard of IC 100 or externally, for analysis as to whether the result represents proper operation of the tested functional circuitry. Further in this regard, scan circuit 122 may include decompression circuitry for decompressing input test data (sometimes referred to as test vectors) and then writing the decompressed input test data to a scan chain, and likewise compression circuitry for compressing output test data that results in each scan chain after the test execution cycle(s), where the compressed data is then output for analysis. Other on-board testing circuitry also may be included by one skilled in the art in scan circuit 122. In any event, however, and of note with respect to the preferred embodiment, scan circuit 122 may receive inputs that correspond to one or both of the JTAG TMS and TRST signals, that is, test data may be provided for such scan testing via either or both of pins P.sub.1 and P.sub.2. Further in this regard, IC 100 also includes a pin share circuit 124, which is connected to pins P.sub.1 and P.sub.2, for receiving the JTAG TMS and TRST signals, respectively. As further detailed below, pin share circuit 124 can pass through either or both of the TMS and TRST signals to scan circuit 122, thereby allowing those signals during certain periods to provide test data for scan testing, while at the same time scan circuit 122 also provides JTAG counterpart signals, shown as TMS' and TRST′, to TAP controller 112, which are received and processed in lieu of the actual TMS and TRST signals, that is, the states of these TMS' and TRST′ counterpart signals provide JTAG compliance (e.g., with IEEE 1194.1) as received by the JTAG state machine, while at the same time the JTAG TMS and TRST pins may input test data to scan circuit 120. Lastly, note that various other of the pins on IC 100 also may provide test data to scan circuit 120 as is known in the art, but such connections are neither shown nor detailed so as to simplify and focus the discussion to preferred embodiment aspects relating to the TMS and TRST signals, and the pins corresponding to those signals.
(10)
(11) The operation of pin share circuit 124 of
(12) In step 210, a TMS signal of 0 configures the type of scan mode, that is, from the known JTAG state machine, an update of the Data/Instruction register with a value of TMS=0 configures the FSM to the run test idle state of the scan mode. Also during step 210, ATPG mode is asserted.
(13) Step 214 represents a preferred embodiment additional step that, as will be shown, facilitates the use of the TMS pin (e.g., pin P.sub.2 in
(14) In step 216, having been reached because ScanEn=1, pin share circuit 124 of
(15) Method 200 is shown to continue from step 216 to step 218. Recall that step 216 during this time is connecting the tied value of logical 0 to TAP controller FSM 112.sub.FSM and thereby maintaining it in the Run-Test/Idle state, while at the same time in step 218 this separate tied value thereby releases the TMS input at pin P.sub.2 to be free for some other purpose, as it is then not needed to communicate the logical 0 to the state machine; in a preferred embodiment, therefore, during this release period the TMS input at pin P.sub.2 is provided to another destination other than the FSM, and preferably is usable to provide scan test data for IC 100. In this regard and again looking to
(16) Step 220 determines whether a different test mode is desired. For example, various test modes that could apply to the determination in step 220 (and step 208) include PBIST, DC Parametric Tests, Flash Test, eFuse Test, Boundary Scan Test, and others known to or ascertainable by one skilled in the art. If a different test mode is not desired, method 200 continues to an end step 222, thereby terminating the method flow. If, to the contrary, a different test mode is desired, then method 200 continues from step 220 to step 224.
(17) Step 224 returns ScanEn back to a value of 0, where recall earlier that ScanEn was equal to a value of 1 as of step 214, which advanced the flow to other steps preceding step 224. Returning to
(18) Following step 224, method 200 returns to step 208, where the function of that step repeats as described above. Note, therefore, that with a first pass through steps 210 through 224, a first scan type test may be performed, using the TMS pin (P.sub.2) for transferring additional test data, and then the flow may return again to step 208 for a second or other subsequent pass through those steps, in which case the TMS pin (P.sub.2) again may be used for transferring additional test data. For each set of steps consisting of a pass through steps 210 through 224, therefore, additional test data bandwidth is facilitated using the TMS pin, and also of important note that each successive scan type test may be used in this manner without requiring a PoR of IC 100. In contrast, the prior art, where it was desirous to dual share a TMS pin for FMS control and scan test data, requires such a PoR, thereby disrupting the provision of power and/or a clocking signal to certain functional parts of the integrated circuit and increasing overall test time. The preferred embodiments, therefore, instead allow a dynamic return of the TMS pin to its FSM control functionality, without requiring a reboot or other PoR event of the integrated circuit.
(19) Completing method 200, recall in step 208 that if a scan type test mode is not desired, method 200 continues to step 212, where non-scan test mode can occur, such as memory test (through PBIST), DMLED, I/O, EFUSE, etc. Thus, step 212 configures the non-scan test mode according to the test to be achieved, and step 226 then performs that test. Thereafter, step 228 operates in the same manner as step 220, that is, it determines whether a different test mode is desired in which case method 200 returns to step 208 or, if not, then method 200 concludes at step 222.
(20) Also completing the operation of
(21) An alternative preferred embodiment further enhances the preceding by extending it to an architecture that implements Channel Mask Load Enable (CLME), such as in a Cadence scan architecture where the CMLE also controls the TAP FSM. Such an approach is shown in
(22) The operation of pin share circuit 124 of
(23) Recall that
(24) More specifically describing the preceding, when ATPG mode is set (i.e., ATPG=1), either the ScanEn or CMLE mode may be set, in which case the related multiplexer 134′ will provide a directly tied value of 1 as the TRST signal (shown as TRST′) to FSM 112.sub.FSM. Thus, where ATPG=1 and CMLE=1, then ScanEn=0 and multiplexer 138 connects a relatively high voltage (e.g., V.sub.CC), corresponding to a digital value of one, from input 138′.sub.1 to input 134′.sub.0, and multiplexer 134′ passes that value to input 132′.sub.1 of multiplexer 132′, which connects the high voltage (i.e., one) to FSM 112.sub.FSM, thereby not resetting the FSM. At the same time, multiplexer 140 connects the TRST data at its input 140.sub.1 to input 136.sub.0 of multiplexer 136, and that multiplexer 136 passes that data through to scan circuit 122. Or, where ATPG=1 and ScanEn=1, then CMLE=0 and multiplexer 134′ connects a relatively high voltage from input 134′.sub.1 to input 132′.sub.1 of multiplexer 132′, which connects the high voltage (i.e., one) to FSM 112.sub.FSM, thereby not resetting the FSM. At the same time, multiplexer 136 connects the TRST data at its input 136.sub.1 to scan circuit 122. Given the preceding, therefore, for either ScanEn or CMLE enabled, the FSM is not reset while the TRST pin is able to provide additional test data.
(25) Given the preceding, the preferred embodiments provide improvements in data throughput for data scan of ICs and printed circuit boards (PCBs). Specifically, the preferred embodiment IC allows the sharing of either of the TMS or TRST JTAG pins, which may be combined with other approaches to natively share various (or all) of the JTAG pins to receive either JTAG signals or test data for increasing throughput. With additional pins over and above a case where fewer of such pins are available, better test time reduction is possible. Indeed, for stuck-at or TFT testing (transitional fault testing/at-speed testing), by increasing the number of scan inputs and outputs from 8 to 9, test time saving may be realized in the range of 31% to 38%. Moreover, while the preferred embodiments have been described in connection with scan operation, alternative preferred embodiments may be implemented using the present inventive teachings to permit either the TMS or TRST pins to provide other data, such as for direct memory load executed dump (DMLED) where time consuming firmware download can be highly accelerated given an additional pin(s) for such downloading. The preferred embodiment benefits may be achieved, for example, with a relatively minimal change in design overhead (e.g., by adding a few multiplexers), with no compromise on observability or controllability of data, and without interfering with internal test architecture. Still further, testing is improved without a required change to vendor testing tools and permits debugging at any stage. Moreover, while various aspects have been described, substitutions, modifications or alterations can be made to the descriptions set forth above without departing from the inventive scope. For example, the preferred embodiments are not limited to scan, but can be used during functional operation as well, such as during functional data transfer along with JTAG interface (e.g., SPI transfer, etc.). Still other examples will be ascertainable by one skilled in the art and are not intended as limiting to the inventive scope, which instead is defined by the following claims.