IP CORE DESIGN SUPPORTING USER-ADDED SCAN REGISTER OPTION
An integrated circuit carries an intellectual property core. The intellectual property core includes a test access port 39 with test data input leads 15, test data output leads 13, control leads 17 and an external register present, ERP lead 37. A scan register 25 encompasses the intellectual property core and ERP lead 37 carries a signal indicating the presence of the scan register.
Latest Texas Instruments Incorporated Patents:
- BAW RESONATOR BASED OSCILLATOR
- Calibration of a surround view camera system
- Processor micro-architecture for compute, save or restore multiple registers, devices, systems, methods and processes of manufacture
- Radar system implementing segmented chirps and phase compensation for object movement
- Electrostatic discharge protection circuit
This application is a divisional of application Ser. No. 13/969,079, filed Aug. 16, 2013, now U.S. Pat. No. 8,745,456, granted Jun. 3, 2014;
Which was a divisional of application Ser. No. 13/765,251, filed Feb. 12, 2013, now U.S. Pat. No. 8,539,295, granted Sep. 17, 2013;
Which was a divisional of application Ser. No. 13/486,138, filed Jun. 1, 2012, now U.S. Pat. No. 8,402,331, granted Mar. 19, 2013;
Which was a divisional of application Ser. No. 13/238,564, filed Sep. 21, 2011, now U.S. Pat. No. 8,214,705, granted Jul. 3, 2012;
Which was a divisional of application Ser. No. 12/889,091, filed Sep. 23, 2010, now U.S. Pat. No. 8,046,649, granted Oct. 25, 2011;
Which was a divisional of application Ser. No. 12/575,893, filed Oct. 8, 2009, now U.S. Pat. No. 7,827,453, granted Nov. 2, 2010;
Which was a divisional of application Ser. No. 12/203,475, filed Sep. 3, 2008, now U.S. Pat. No. 7,620,867, granted Nov. 17, 2009;
Which was a divisional of application Ser. No. 11/380,965, filed May 1, 2006, now U.S. Pat. No. 7,441,170, granted Oct. 21, 2008;
Which was a divisional of application Ser. No. 10/705,648, filed Nov. 10, 2003, now U.S. Pat. No. 7,065,692, granted Jun. 20, 2006;
Which was a divisional of application Ser. No. 09/812,220, filed Mar. 19, 2001, now U.S. Pat. No. 6,658,615, granted Dec. 2, 2003;
Which was a divisional of application Ser. No. 09/107,105, filed Jun. 30, 1998, now U.S. Pat. No. 6,223,315, granted Apr. 24, 2001;
Which claims priority from Provisional Application No. 60/051,377, filed Jun. 30, 1997.
FIELD OF THE DISCLOSUREThe disclosure relates generally to testing of integrated circuits having embedded cores and, more particularly, to a core design that efficiently supports a user-added scan register option.
BACKGROUND OF THE DISCLOSURERapid design and deployment of high complexity integrated circuits (IC) can be achieved by reuse of preexisting intellectual property (IP) cores, such as digital signal processors, microcontrollers, processors, I/O peripherals, and memory. Such IP cores are discussed in “Blocking in a System on a Chip”, by Hunt and Rowson, published in the November 1996 edition of IEEE Spectrum and incorporated herein by reference. Marketing of IP cores, as a way to expedite the fabrication of highly complex system chips, changes the way the cores are designed for testability. Typically, most IP cores were first designed as stand alone ICs to be used on a circuit board. With today's advanced IC fabrication technology, it is possible to migrate what was once a circuit board of plural ICs into a single IC comprising plural cores embedded therein. Thus a transition from IC to embedded IP core is a technology trend.
Many of the same testing problems currently seen in circuit boards designed with multiple ICs will be seen in ICs designed with multiple cores.
The use of IC resident testability standard, IEEE Std 1149.1, incorporated herein by reference, has proven to be effective in resolving most test problems related to testing ICs and the interconnections between ICs at the circuit board level. This standard should be effective in resolving problems related to testing cores and the interconnections between cores at the IC level as well.
In normal mode, the IC operates normally to internally process and externally communicate signals to other ICs via the transparent boundary scan register. In a first test mode, the functional circuitry of the IC is disabled and the boundary scan register is accessed and controlled, via TAP signal lines at 13, 15 and 17, to communicate external test signals between ICs to verify their interconnectivity. This external interconnect test mode is invoked by scanning an 1149.1 Extest instruction into the instruction register of the TAP 11. In another test mode, the IC's functional circuitry may be functionally disabled but configured to be testable via scan access (from the TAP) to one or more of the test data registers. Instructions scanned into the instruction register of the TAP are used to connect the TAP up to a selected test data register(s), i.e. the boundary scan register and/or internal test data registers, so that serial test data can be input and output to the register to effectuate a given test or other type of operation. For example; when the Extest instruction is loaded into the instruction register, the TAP selects and connects up to the boundary scan register via its serial input 15, serial output 13, and control signals 17. Once connected, the TAP responds to the external test port signal pins of the IC to output control to the boundary scan register to communicate test data to the boundary scan register to execute interconnect testing. Similarly, other instructions can be loaded that allow the TAP to select and connect up to other test data registers so that other types of operations such as; internal scan testing, built in self test triggering (1149.1 Runbist instruction), or IC serial bypassing (1149.1 Bypass instruction), can be performed.
While the complete 1149.1 architecture of
If an IP core provider does not implement the boundary scan register due to performance considerations, and if the core itself cannot be modified by the user (i.e. a hard core), then the IP core user will have to add a TAP and boundary scan register around the IP core if the user wishes to achieve interconnect testing via boundary scan. Surrounding an IP core with a TAP and boundary scan register for the purpose of isolating the IP core and performing interconnect testing between the IP core and other IP cores is a known prior art technique and is illustrated in
Within the broken-line box of
It is therefore desirable to permit the user to add boundary scan to an IP core without the overhead associated with adding a separate TAP to control boundary scan.
The disclosure permits reuse of the IP core's TAP to access a user-added boundary scan register.
Example
Example
In addition to providing the additional external signals mentioned above, the IP core provider must design the instruction register of the TAP 39 to include all required 1149.1 instructions that are used by TAP 11 (see
During a conventional Extest instruction, the conventional TAP 11 (see
During a conventional Sample/Preload instruction, the conventional TAP 11 enables the operation of the IP core, connects the boundary scan register to the IC's TDI and TDO pins, and controls the boundary scan register to be transparent, while functional signals flowing through the boundary scan register are captured and shifted out for inspection.
During a conventional Bypass instruction, the conventional TAP 11 enables the operation of the IP core, connects the internal Bypass register (an 1149.1 defined single bit test data register) to the IC's TDI and TDO pins, and controls the boundary scan register to be transparent.
During a conventional Intest instruction, the conventional TAP 11 adapts the IP core for testing, connects the boundary scan register to the IC's TDI and TDO pins, and controls the boundary scan register to perform testing on the IP core.
During a conventional HighZ instruction, the conventional TAP 11 inhibits the operation of the IP core, connects the internal Bypass register to the IC's TDI and TDO pins, and controls the boundary scan register outputs to the high impedance state.
During a conventional Clamp instruction, the conventional TAP 11 inhibits the operation of the IP core, connects the internal Bypass register to the IC's TDI and TDO pins, and controls the boundary scan register to a predetermined static input/output condition.
During a conventional Runbist instruction, the conventional TAP 11 adapts the IP core for BIST testing, connects to the IC's TDI and TDO pins a specified internal test data register that will be used to access the pass/fail status of the BIST operation, and controls the boundary scan register to a predetermined static input/output condition.
During a conventional IDcode instruction, the conventional TAP 11 enables the operation of the IP core, connects the internal IDcode register (an 1149.1 specified 32-bit register for outputting vendor identification and other information) to the IC's TDI and TDO pins, and controls the boundary scan register to be transparent.
During a conventional Usercode instruction, the conventional TAP 11 enables the operation of the IP core, connects the internal Usercode register (an 1149.1 specified register for outputting additional vendor information) to the IC's TDI and TDO pins, and controls the boundary scan register to be transparent.
With an IP core that provides the signals and instructions as described above, a user of the IP core need only design a boundary scan register around the IP core and connect the core-provided signal lines 13, 15 and 17 to the user-added boundary scan register to achieve full 1149.1 test capability, including boundary scan test capability. This approach is good for the IP core provider in that, while it supports full 1149.1 test capability, it does not require the IP core provider to degrade performance by providing a boundary scan register in the IP core itself. The approach is good for the user of the IP core in that it allows the user (e.g. an ASIC manufacturer) to decide whether to add the boundary scan register and the attendant performance consequences. Also the ease of upgrading to full 1149.1 boundary scan testing by simply making connections between the IP core's TAP and a user-added boundary scan register is a bonus for IC synthesis tool providers since the process can be advantageously automated to push button placement and routing.
In example
When a user decides to connect a boundary scan register to an IP core TAP having the external signal connections 13, 15 and 17 shown in
During instruction scan operations, the ERP signal is captured and shifted out of the CSU register, along with other status inputs. By examining the ERP signal scanned from the CSU register, it is possible to determine whether or not the user added a boundary scan register to the IP core (for example ERP high=added, ERP low=not added). So the ERP input to the instruction CSU register allows a user of the IC (e.g. a system designer) to determine the presence or absence of a user-added boundary scan register.
If the ERP is set high, indicating the presence of a user-added boundary scan register, the decode section responds conventionally to 1149.1 instructions that access and/or control the boundary scan register. On the other hand, if the ERP is set low, indicating the absence of a user-added boundary scan register, the decode section will preferably cause all 1149.1 instructions that normally access and/or control the boundary scan register to default to being Bypass instructions. This would mean that Extest, Intest, Sample/Preload, HighZ, and Clamp instructions all default to the Bypass instruction when ERP is low. Defaulting to the Bypass instruction is preferred because that is the default instruction that 1149.1 conventionally uses for unknown/undefined instructions scanned into the instruction register.
Example
The user-added scan register(s) at 60 are located in the IC physically outside of the core's boundary, that is, external relative to the core. The general purpose scan register 60 can be any scan register that does not perform boundary scan functions relative to the core boundary of
Although exemplary embodiments of the present disclosure are described above, this description does not limit the scope of the disclosure, which can be practiced in a variety of embodiments.
Claims
1. An integrated circuit comprising:
- a. an intellectual property core free of any boundary scan register; and
- b. a test access port formed in the core, the test access port including test port interface signal leads and additional test input, test output and test control signal leads.
2. The integrated circuit of claim 1 in which the additional test signal leads include an external register present signal lead.
3. The integrated circuit of claim 1 including a scan register formed on the integrated circuit outside of the core, the scan register being connected to the test access port through the additional test input, test output and control signal leads.
4. The integrated circuit of claim 3 in which the scan register is a boundary scan register and the additional test signal leads include an external register present lead connected to indicate the presence of the boundary scan register.
5. The integrated circuit of claim 3 in which the scan register is a boundary scan register.
6. The integrated circuit of claim 3 wherein the scan register is a general purpose scan register.
7. The integrated circuit of claim 3 in which the additional test signal leads include an external register present lead connected to indicate the presence of a connected scan register.
8. The integrated circuit of claim 3 including electrically programmable circuits, the scan register being connected to the electrically programmable circuits for programming the electrically programmable circuits.
9. The integrated circuit of claim 1 in which the test access port includes a capture-shift-update register, a decode section and an external register present lead connected to both the capture-shift-update register and the decode section.
10. The integrated circuit of claim 1 in which the test port interface signal leads include a test data input signal lead, a test clock signal lead, a test mode select signal lead, a test reset signal lead and a test data output signal lead and the additional test input, test output and test control signal leads include a serial data output signal lead, a serial data input signal lead, a control signal lead and an external register present signal lead.
11. A process of executing boundary scan instructions at a test access port comprising:
- a. sensing that the external register present signal is in a logical condition indicating the absence of a user-added boundary scan register; and
- b. causing all boundary scan instructions to default to a bypass instruction.
12. The process of claim 11 in which the causing includes causing at least one of extest, intest, sample/preload, highz and clamp instructions to default to the bypass instruction.
13. A process of determining the presence of a user-added scan register comprising:
- a. capturing a logical state of an external register present signal in a shift register;
- b. shifting the contents of the shift register out of the shift register; and
- c. examining the logical state of the external register present signal in the contents of the shift register shifted out of the shift register.
14. The process of claim 12 including capturing other status signals in the shift register.
Type: Application
Filed: May 19, 2014
Publication Date: Sep 11, 2014
Applicant: Texas Instruments Incorporated (Dallas, TX)
Inventor: Lee D. Whetsel (Parker, TX)
Application Number: 14/281,189