Techniques for testing embedded cores in multi-core integrated circuit designs
First Claim
1. A circuit for facilitating the testing of an integrated circuit that is comprised of multiple circuit blocks, each of the circuit blocks including a test access port, the circuit comprising:
- a demultiplexer connected to a chip-level test input signal, said demultiplexer having a plurality of outputs connected to said circuit blocks;
a multiplexer connected to a chip-level test output signal, said multiplexer having a plurality of inputs received from said circuit blocks; and
a select register connected to said demultiplexer and to said multiplexer, said select register routing the input of said demultiplexer to the output of said demultiplexer and the input of said multiplexer to the output of said multiplexer according to a plurality of bits loaded into the select register.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for testing an integrated circuit including one or more circuit blocks, each containing an internal core, and a test access port connected to a set of boundary-scan cells includes a select register for receiving and holding the address of a circuit block to be accessed. One or more demultiplexers provide an interface between input test access port signals and the various individual circuit blocks, and one or more multiplexers provide an interface between the various individual circuit blocks and the output test access port signals. The address bits read into the select register act as the select signal(s) for the one or more demultiplexers and multiplexers, causing input test access port signals to be selectively routed to the circuit block having the appropriate address and causing output signals to be selected from the same circuit block as the output test access port signals.
96 Citations
29 Claims
-
1. A circuit for facilitating the testing of an integrated circuit that is comprised of multiple circuit blocks, each of the circuit blocks including a test access port, the circuit comprising:
-
a demultiplexer connected to a chip-level test input signal, said demultiplexer having a plurality of outputs connected to said circuit blocks;
a multiplexer connected to a chip-level test output signal, said multiplexer having a plurality of inputs received from said circuit blocks; and
a select register connected to said demultiplexer and to said multiplexer, said select register routing the input of said demultiplexer to the output of said demultiplexer and the input of said multiplexer to the output of said multiplexer according to a plurality of bits loaded into the select register. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An integrated circuit having multiple embedded cores, each of the embedded cores including a test access port, the integrated circuit further comprising:
-
a demultiplexer connected to a chip-level test input signal, said demultiplexer having a plurality of outputs, each of said outputs connected to the test access port of one of the embedded cores;
a multiplexer connected to a chip-level test output signal, said multiplexer having a plurality of inputs, each of said inputs connected to the test access port of one of the embedded cores; and
a select register connected to said demultiplexer and to said multiplexer, said select register routing the input of said demultiplexer to the output of said demultiplexer and the input of said multiplexer to the output of said multiplexer according to a plurality of bits loaded into the select register such that the selected output and the selected input are connected to the same embedded core. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. An integrated circuit having multiple embedded cores, each of the embedded cores including a test access port the integrated circuit further comprising:
-
a demultiplexer having outputs connected to the test access ports of a first group of embedded cores;
a top-level demultiplexer connected to a chip-level test input signal, said demultiplexer having a plurality of top-level demultiplexer outputs connected to the test access port of a second group of embedded cores distinct from said first group of embedded cores and to an input of said demultiplexer;
a multiplexer having inputs received from the test access ports of said first group of embedded cores;
a top-level multiplexer connected to a chip-level test output signal, said top-level multiplexer having a plurality of top-level multiplexer inputs connected to the test access ports said second group of embedded cores and to an output of said multiplexer;
a first select register connected to said demultiplexer and to said multiplexer, said first select register routing the input of said demultiplexer to the output of said demultiplexer and the input of said multiplexer to the output of said multiplexer such that the selected output and the selected input are connected to the same embedded core; and
a second select register connected to said top-level demultiplexer and to said top-level multiplexer, said second select register routing the input of top-level demultiplexer to the output of said top-level demultiplexer and the input of said top-level multiplexer to the output of said top-level multiplexer such that the selected top-level demultiplexer output and the selected top-level multiplexer input are connected either to the same embedded core or to said demultiplexer and multiplexer, respectively. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23)
a second demultiplexer having outputs connected to the test access ports of a third group of embedded cores;
a second multiplexer having inputs received from the test access ports of said third group of embedded cores; and
a third select register connected to said second demultiplexer and to said second multiplexer, said third select register routing the input of said second demultiplexer to the output of said second demultiplexer and the input of said second multiplexer to the output of said second multiplexer such that the selected output and the selected input are connected to the same embedded core in said third group of embedded cores;
wherein one of said top-level demultiplexer outputs is connected to said second demultiplexer, one of said top-level multiplexer inputs is received from said second multiplexer, and wherein said second select register selects the top-level demultiplexer output of said top-level demultiplexer and the top-level multiplexer input of said to level multiplexer such that the selected top-level demultiplexer output and the selected top-level multiplexer input are connected either to the same embedded core, to said demultiplexer and multiplexer, respectively, or to said second demultiplexer and said second multiplexer, respectively.
-
-
17. The integrated circuit of claim 15, wherein said first select register comprises a first serial shift register, and wherein said second select register comprises a second serial shift register.
-
18. The integrated circuit of claim 15, wherein said chip-level test input signal comprises a master test clock input signal, and wherein said chip-level test output signal comprises a test data output signal.
-
19. The integrated circuit of claim 18, further comprising a test data input signal connected to the test access port of each of said embedded cores.
-
20. The integrated circuit of claim 19, wherein the test access port of each of the embedded cores is compliant with IEEE Standard 1149.1.
-
21. The integrated circuit of claim 19, wherein said second select register receives as an input a chip-level test address input signal, said test address input signal comprising address bits corresponding to unique addresses assigned to the embedded cores.
-
22. The integrated circuit of claim 21, wherein an output of said second select register is connected as an input to said first select register.
-
23. The integrated circuit of claim 21, wherein said second select register further receives as an input a test address clock signal for clocking in said address bits into the second select register.
-
24. A method of testing circuit blocks embedded within an integrated circuit, the method comprising the steps of:
-
loading address data bits corresponding to a selected circuit block into at least one select register;
receiving at least one test input data signal for a selected circuit block, based on the address bits of said at least one select register;
demultiplexing the at least one test input data signal;
sending the at least one demultiplexed test input data signal to the selected circuit block based on the address bits of the at least one select register;
receiving test result signals from the circuit blocks; and
multiplexing the test result signals based upon the address bits of the at least one select register. - View Dependent Claims (25, 26, 27, 28, 29)
-
Specification