KR101116956B1 - System on Chip capable of Testing based on Test Access Mechanism - Google Patents
System on Chip capable of Testing based on Test Access Mechanism Download PDFInfo
- Publication number
- KR101116956B1 KR101116956B1 KR1020090081215A KR20090081215A KR101116956B1 KR 101116956 B1 KR101116956 B1 KR 101116956B1 KR 1020090081215 A KR1020090081215 A KR 1020090081215A KR 20090081215 A KR20090081215 A KR 20090081215A KR 101116956 B1 KR101116956 B1 KR 101116956B1
- Authority
- KR
- South Korea
- Prior art keywords
- core
- test
- scan
- control signal
- sub
- Prior art date
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 206
- 230000007246 mechanism Effects 0.000 title claims abstract description 8
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims abstract description 12
- 238000000034 method Methods 0.000 claims description 17
- 238000010998 test method Methods 0.000 abstract description 19
- 230000008901 benefit Effects 0.000 abstract description 4
- 230000009467 reduction Effects 0.000 description 9
- 230000008859 change Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000013461 design Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- IJOOHPMOJXWVHK-UHFFFAOYSA-N chlorotrimethylsilane Chemical compound C[Si](C)(C)Cl IJOOHPMOJXWVHK-UHFFFAOYSA-N 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 239000004065 semiconductor Substances 0.000 description 5
- 238000002474 experimental method Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000011990 functional testing Methods 0.000 description 3
- 230000015654 memory Effects 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 229920001690 polydopamine Polymers 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31724—Test controller, e.g. BIST state machine
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318555—Control logic
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
본 발명은 TAM 기반 테스트가 가능한 시스템 온 칩 및 이의 테스트 방법을 개시한다. 본 발명은 복수의 코어를 포함하는 시스템 온 칩에 있어서, 적어도 하나의 코어에 연결되며, 칩 외부로부터 테스트 데이터를 입력 받아 상기 연결된 코어에 전달하는 복수의 서브-TAM(Test Access Mechanism); 상기 복수의 서브-TAM 각각에 대해 독립적으로 제공되는 m(m은 2이상의 자연수)개의 스캔 제어 신호선; 및 상기 스캔 제어 신호선에 m 비트의 스캔 제어 신호를 인가하는 스캔 제어 신호 생성 모듈을 포함한다. 본 발명에 따르면, 병렬 코어 스캔 테스트에서 전체 테스트 시간을 단축시킬 수 있는 장점이 있다.The present invention discloses a system on a chip capable of TAM based testing and a test method thereof. The present invention provides a system on a chip including a plurality of cores, comprising: a plurality of sub-TAMs (test access mechanisms) connected to at least one core and receiving test data from outside the chip and transferring the test data to the connected cores; M (m is two or more natural numbers) scan control signal lines provided independently for each of the plurality of sub-TAMs; And a scan control signal generation module for applying an m-bit scan control signal to the scan control signal line. According to the present invention, there is an advantage that can shorten the overall test time in the parallel core scan test.
TAM, 스캔 제어 신호, 병렬 코어, SoC, 전용, 코어 셀렉터 TAM, Scan Control Signal, Parallel Core, SoC, Dedicated, Core Selector
Description
본 발명은 TAM 기반 테스트가 가능한 시스템 온 칩 및 이의 테스트 방법에 관한 것으로서, 보다 상세하게는 복수의 코어에 대한 테스트 시간을 단축시킬 수 있는 시스템 온 칩 및 이의 테스트 방법에 관한 것이다.The present invention relates to a system-on-chip capable of TAM-based testing and a test method thereof, and more particularly, to a system-on-chip and a test method thereof that can shorten the test time for a plurality of cores.
휴대폰을 비롯한 PDA, 디지털 TV, 스마트폰 등 각종 디지털 정보기기들이 인터넷 접속이나 컴퓨팅 기능을 원활하게 구현하기 위해서는 마이크로프로세서, 네트워크 칩, 메모리 등의 많은 반도체 칩들을 필요로 한다. 또한, 점차 복합 다양화되는 경향에 따라, 정보기기의 부품들 간의 융합은 더욱 진전될 것으로 전망된다. 따라서, 정보기기 안에는 보다 많은 반도체 칩이 필요하게 될 것이다.Various digital information devices such as mobile phones, PDAs, digital TVs, and smart phones require many semiconductor chips such as microprocessors, network chips, and memories in order to implement Internet access and computing functions smoothly. In addition, with the trend toward more and more complex diversification, convergence between components of information equipment is expected to be further developed. Therefore, more semiconductor chips will be needed in information equipment.
이처럼 각종 부품을 하나의 반도체 칩에 집적시킴으로써 향후 반도체뿐만 아니라 개별 부품을 모두 원칩화하기 위한 기술로 등장한 것이 시스템 온 칩(System on Chip: 이하 SoC) 기술이다. SoC는 마이크로프로세서와 DSP(Digital Signal Processor), 메모리, 베이스밴드 칩 등을 하나의 칩 안에 집적시켜 칩 자체가 하나의 시스템으로 기능할 수 있도록 한 것이다. 예를 들면, 최근 인텔이 발표한 GSM/GPRS 통합칩 솔루션은 베이스밴드 칩과 DSP, 애플리케이션 구동용 마이크로프로세서, 플래시 메모리를 하나로 통합한 것이다. 통합칩 솔루션에 따라 개별 칩들에 의한 구성에 비해 저렴한 가격과 크기의 축소 및 연장된 배터리 수명 등의 기능을 제공한다.By integrating various components into one semiconductor chip, System on Chip (SoC) technology has emerged as a technology for one-chip not only semiconductor but also individual components in the future. SoCs integrate microprocessors, digital signal processors (DSPs), memory, and baseband chips into a single chip, allowing the chip to function as a system. For example, Intel's recently announced GSM / GPRS integrated chip solution combines a baseband chip, a DSP, a microprocessor to drive applications, and flash memory. The integrated chip solution offers features such as reduced cost, reduced size and extended battery life compared to the configuration of individual chips.
이 같은 장점 때문에 휴대폰뿐 아니라 PDA, 휴대용 미디어 단말기, 홈 네트워크 서버 등 앞으로 수요가 크게 늘어나 각종 디지털 기기에서 SoC의 채택은 더욱 확대될 것으로 예상되고 있다.Due to these advantages, SoC is expected to be further adopted in various digital devices due to a great demand in the future, such as mobile phones, PDAs, portable media terminals, and home network servers.
반도체 공정기술의 발전으로 고품질의 IP 코어 생산은 가능하게 되었지만, SoC내부에서 이러한 코어들을 테스트하기 위해서는 점점 더 긴 시간이 요구되고 있다. 결과적으로 고가의 테스트 비용이 초래되고 있다. Advances in semiconductor processing have made it possible to produce high quality IP cores, but more and more time is required to test these cores inside the SoC. As a result, expensive test costs are incurred.
이는 초미세 공정으로 인해 노이즈, 신호 지연, 그리고 간섭 등의 문제가 더욱 중요시됨에 따라 기존의 고장 모델과 이에 연관된 테스트 패턴 생성 툴이 적합하지 않게 되기 때문이다. This is because the ultra-fine process places more emphasis on noise, signal delay, and interference, making traditional failure models and associated test pattern generation tools inadequate.
IP 사용자 계층 간의 테스트를 위한 정보의 원활하지 않은 소통은 SoC의 테스트를 어렵게 한다. 또한, SoC를 테스트하는 데 발생하는 어려움은 칩의 입출력에서 코어의 입출력으로의 테스트에 필요한 접점을 얻기가 용이하지 않다는 점에 있다. 하나의 칩에 여러 개의 코어가 내장된 경우 각각의 코어에 대해서 테스트 용도의 핀을 부여하는 것은 불가능하다. 따라서, 최소한의 핀으로 칩의 각 부분에 존재하는 코어들에 대해서 테스트에 필요한 제어 및 관측이 효과적으로 이루어질 수 있어야 한다.Inadequate communication of information for testing between IP user layers makes the SoC difficult to test. In addition, the difficulty in testing the SoC is that it is not easy to obtain a contact point necessary for testing the input and output of the chip to the input and output of the core. If several cores are embedded in a chip, it is impossible to assign a test pin to each core. Therefore, the control and observation necessary for the test on cores present in each part of the chip with a minimum number of pins can be effectively made.
SoC 테스트를 수행하기 위해서, SoC 내부에는 코어 테스트 래퍼(Core Test Wrapper) 및 TAM(Test Access Mechanism)이 필요하다. 코어 테스트 래퍼는 SoC 내부의 코어와 TAM 사이의 인터페이스 역할을 한다. 그리고 TAM은 칩 외부로부터 테스트 데이터를 입력 받아 코어 테스트 래퍼에 전달해 주는 역할을 한다.In order to perform SoC tests, a core test wrapper and a test access mechanism (TAM) are required inside the SoC. The core test wrapper acts as an interface between the core inside the SoC and the TAM. The TAM takes test data from the outside of the chip and delivers it to the core test wrapper.
한편, 종래에는 TAM 기반 테스트에 있어 순차적(serial) 테스트 및 병렬 코어 스캔 테스트 방식이 존재한다. Meanwhile, in the conventional TAM-based test, there are a serial test and a parallel core scan test method.
순차적 테스트의 경우 도 1에 도시된 바와 같이, SoC 내부의 코어 특성과는 무관하게 테스트 대상 코어에 전체 TAM을 모두 할당하며, 복수의 코어(A 내지 E)에 대한 테스트가 순차적으로 진행된다. In the case of the sequential test, as shown in FIG. 1, all TAMs are allocated to the core to be tested regardless of core characteristics inside the SoC, and the test for the plurality of cores A to E is performed sequentially.
이러한 순차적 테스트의 경우, 각 코어마다 필요 이상의 TAM폭을 사용하는 경우가 발생하므로 TAM의 낭비를 초래하며, 하나의 코어에 대한 테스트가 종료된 후에 다음 코어의 테스트가 진행되기 때문에 테스트 시간이 길어지는 문제점이 있다. In this sequential test, each core uses a larger TAM width than necessary, causing waste of TAM, and the test time is long because the test of the next core proceeds after the test for one core is finished. There is a problem.
이러한 문제점을 해소하기 위해 병렬 코어 스캔 테스트 방식이 제안된다.To solve this problem, a parallel core scan test method is proposed.
도 2에 도시된 바와 같이, 병렬 코어 스캔 테스트의 경우에는 순차 테스트와는 달리 테스트 구조 최적화에 의한 스케줄링 결과에 의하여 각 코어에 적절한 TAM폭 할당하므로, 즉 전체 TAM을 복수의 서브-TAM으로 분할하기 때문에 효율적으로 TAM을 사용할 수 있다. As shown in FIG. 2, in the case of the parallel core scan test, unlike the sequential test, an appropriate TAM width is allocated to each core by scheduling results by optimizing the test structure, that is, dividing the entire TAM into a plurality of sub-TAMs. Therefore, TAM can be used efficiently.
일반적으로 각 코어마다 플립플롭 개수만큼 시프트 인(shift in) 되고, 업데이트(update)와 캡쳐(capture)를 위해 스캔 제어 신호를 0으로 떨어뜨려야 하므로, 이때 시프트 중인 다른 코어들이 정지되어야 한다. 이 후에 다시 스캔 제어 신호가 1로 바뀌고 업데이트된 값이 시프트 아웃(shift out)된다.In general, each core is shifted in by the number of flip-flops, and the scan control signal must be dropped to zero for update and capture, and thus, other cores in the shift must be stopped. After this again the scan control signal changes to 1 and the updated value is shifted out.
종래의 병렬 코어 스캔 테스트 방식에 따르면, 복수의 서브-TAM이 하나의 스캔 제어 신호선(Scan Enable)을 공유하기 때문에 병렬 코어 스캔 테스트가 이루어진다 하더라도 상기와 같이, 특정 코어에서 업데이트 및 캡쳐가 이루어지는 경우에는 테스트가 진행 중인 다른 코어에 대해서도 테스트 정지가 이루어진다. According to the conventional parallel core scan test method, since a plurality of sub-TAMs share one scan control signal line (Scan Enable), even if the parallel core scan test is performed, as described above, when the update and capture are performed on a specific core A test stop is made for the other cores in the test.
따라서 종래의 병렬 코어 스캔 테스트 방식에 있어서, 업데이트 및 캡쳐로 인해 SoC 전체의 테스트 과정에서 코어의 개수에 각 코어의 테스트 패턴 수를 곱한 만큼 그리고 코어의 변경 횟수만큼 테스트 정지가 이루어진다. Therefore, in the conventional parallel core scan test method, the test stop is performed by the number of cores multiplied by the number of test patterns of each core and the number of change of cores during the entire SoC test process due to the update and capture.
근래에 SoC 내에 매우 많은 수의 코어가 배치되는 상황에서, 상기와 같이 빈번한 테스트 정지가 요구되는 경우에는 전체 테스트 시간이 상당히 길어지는 문제점이 있다.In recent years, when a large number of cores are disposed in the SoC, when the frequent test stops are required as described above, the entire test time becomes considerably longer.
본 발명은 상기한 바와 같은 종래기술의 문제점을 해결하기 위해, 테스트 시간을 단축할 수 있는 TAM 기반 테스트가 가능한 시스템 온 칩 및 이의 테스트 방법을 제안하고자 한다.The present invention, in order to solve the problems of the prior art as described above, proposes a system-on-chip capable of TAM-based testing and its test method that can reduce the test time.
상기한 목적을 달성하기 위해, 본 발명의 바람직한 일 실시예에 따르면, 복수의 코어를 포함하는 시스템 온 칩에 있어서, 적어도 하나의 코어에 연결되며, 칩 외부로부터 테스트 데이터를 입력 받아 상기 연결된 코어에 전달하는 복수의 서브-TAM(Test Access Mechanism); 상기 복수의 서브-TAM 각각에 대해 독립적으로 제공되는 m(m은 2이상의 자연수)개의 스캔 제어 신호선; 및 상기 스캔 제어 신호선에 m 비트의 스캔 제어 신호를 인가하는 스캔 제어 신호 생성 모듈을 포함하는 시스템 온 칩이 제공된다. In order to achieve the above object, according to a preferred embodiment of the present invention, in a system on a chip including a plurality of cores, is connected to at least one core, receives test data from the outside of the chip to the connected core Delivering a plurality of sub-TAMs (Test Access Mechanism); M (m is two or more natural numbers) scan control signal lines provided independently for each of the plurality of sub-TAMs; And a scan control signal generation module for applying an m-bit scan control signal to the scan control signal line.
본 발명의 다른 측면에 따르면, 복수의 코어를 포함하는 시스템 온 칩에 있어서, 적어도 하나의 코어에 연결되며, 칩 외부로부터 테스트 데이터를 입력 받아 상기 연결된 코어에 전달하는 복수의 서브-TAM; 상기 복수의 서브-TAM이 공유하는 스캔 제어 신호선; 상기 스캔 제어 신호선에 스캔 제어 신호를 인가하는 스캔 제어 신호 생성 모듈; 및 상기 복수의 서브-TAM에 의해 동시에 테스트 되는 코어에 테스트 대상임을 알리기 위한 코어 셀렉트 신호를 출력하는 코어 셀렉터를 포함하되, 상기 코어 셀렉터는 TIC 모듈에 연결된 어드레스 버스로부터 코어 어드레스 신호를 수신하여 셀렉트 제어 신호를 출력하는 어드레스 디코더를 포함하며 상기 어드레스 디코더는 테스트 대상이 되는 코어의 어드레스가 변경되는 경우에 하이 신호를 출력하는 시스템 온 칩이 제공된다. According to another aspect of the present invention, a system on a chip comprising a plurality of cores, comprising: a plurality of sub-TAMs connected to at least one core and receiving test data from outside the chip and transferring the test data to the connected cores; A scan control signal line shared by the plurality of sub-TAMs; A scan control signal generation module for applying a scan control signal to the scan control signal line; And a core selector for outputting a core select signal for informing a core to be simultaneously tested by the plurality of sub-TAMs, wherein the core selector receives a core address signal from an address bus connected to a TIC module to select control. And an address decoder for outputting a signal, wherein the address decoder is provided with a system on chip for outputting a high signal when an address of a core to be tested is changed.
본 발명의 또 다른 측면에 따르면, 복수의 코어 및 적어도 하나의 코어에 연결되며 칩 외부로부터 테스트 데이터를 입력 받아 상기 연결된 코어에 전달하는 복수의 서브-TAM(Test Access Mechanism)을 포함하는 시스템 온 칩을 병렬 코어 스캔 테스트하는 방법으로서, 상기 복수의 서브-TAM 각각에 대해 독립적으로 제공되는 m(m은 2이상의 자연수)개의 스캔 제어 신호선을 제공하는 단계; 외부의 기능 입력 핀을 이용하여 m 비트(여기서, m은 2이상의 자연수)의 스캔 제어 신호를 생성하는 단계; 및 상기 m 비트의 스캔 제어 신호 각각을 개별 스캔 제어 신호선을 통해 각 서브-TAM에 연결된 적어도 하나의 코어에 인가하는 단계를 포함하는 병렬 코어 스캔 테스트 방법이 제공된다.According to another aspect of the present invention, a system on a chip connected to a plurality of cores and at least one core and including a plurality of sub-TAMs (Test Access Mechanism) for receiving test data from outside the chip and transferring the test data to the connected cores. A method for parallel core scan testing, comprising: providing m (m is a natural number of two or more) scan control signal lines provided independently for each of the plurality of sub-TAMs; Generating a scan control signal of m bits (where m is a natural number of two or more) using an external function input pin; And applying each of the m-bit scan control signals to at least one core connected to each sub-TAM through separate scan control signal lines.
본 발명에 따르면, 테스트 구조 최적화 스케줄링에 의해 분할된 각 서브-TAM에 대해 전용 스캔 제어 신호를 사용함으로써 SoC 내의 여러 서브-TAM에 연결된 코어를 독립적으로 테스트할 수 있는 장점이 있다. According to the present invention, by using a dedicated scan control signal for each sub-TAM partitioned by test structure optimization scheduling, there is an advantage in that cores connected to various sub-TAMs in the SoC can be independently tested.
또한 본 발명에 따르면, 전용 스캔 제어 신호를 통해 각 서브-TAM에 연결된 코어의 테스트 정지에 대해 다른 서브-TAM에 연결된 코어가 영향을 받지 않도록 하여 SoC 전체 테스트 시간을 단축시킬 수 있는 장점이 있다.In addition, according to the present invention, there is an advantage that the total test time of the SoC can be shortened by preventing the core connected to another sub-TAM from being affected by the test stop of the core connected to each sub-TAM through a dedicated scan control signal.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. Like reference numerals are used for like elements in describing each drawing.
이하, 본 발명의 바람직한 실시예를 첨부한 도면들을 참조하여 상세히 설명하기로 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면 번호에 상관없이 동일한 수단에 대해서는 동일한 참조 번호를 사용하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In order to facilitate a thorough understanding of the present invention, the same reference numerals are used for the same means regardless of the number of the drawings.
도 3은 본 발명의 바람직한 일 실시예에 따른 테스트 구조를 도시한 도면이다. 3 is a diagram illustrating a test structure according to an exemplary embodiment of the present invention.
도 3에 도시된 바와 같이, 본 발명에 따른 SoC는 복수의 코어 및 상기한 코어들을 테스트하기 위한 복수의 서브-TAM을 포함한다. As shown in FIG. 3, the SoC according to the present invention includes a plurality of cores and a plurality of sub-TAMs for testing the cores.
하기에서 복수의 서브-TAM 및 스캔 제어 신호에 의한 테스트는 복수의 서브-TAM에 의해 동일 시간에 복수의 코어가 테스트된다는 점에서 병렬 코어 스캔 테스트로 정의된다. The test with a plurality of sub-TAM and scan control signals is defined below as a parallel core scan test in that a plurality of cores are tested at the same time by the plurality of sub-TAM.
각 서브-TAM(Test Access Mechanism)은 테스트 데이터의 전송 경로로 사용되는 것으로서, 적어도 하나의 코어에 연결되며, 칩 외부로부터 테스트 데이터를 입 력 받아 상기 연결된 코어에 전달한다. Each sub-TAM (Test Access Mechanism) is used as a transmission path for test data, and is connected to at least one core, and receives test data from outside the chip and transfers the test data to the connected core.
도 3은 5개의 코어(A 내지 E)가 제공되며, 제1 서브-TAM(Sub-TAM1)이 코어C 및 코어D에, 제2 서브-TAM(Sub-TAM2)이 코어B 및 코어E에, 그리고 제3 서브-TAM(Sub-TAM3)이 코어A에 연결되며, 각각 TAM폭이 제1 서브-TAM에 17비트, 제2 서브-TAM에 9비트, 제3 서브-TAM에 6비트가 할당된 것을 예로 도시한 것이다. 3 shows five cores A through E, the first sub-TAM (Sub-TAM1) to Core C and Core D, the second sub-TAM (Sub-TAM2) to Core B and Core E And a third sub-TAM (Sub-TAM3) is connected to Core A, and the TAM width is 17 bits in the first sub-TAM, 9 bits in the second sub-TAM, and 6 bits in the third sub-TAM, respectively. The assignment is shown as an example.
하기에서는 3개의 서브-TAM이 제공되는 것을 중심으로 본 발명을 설명할 것이나, 이는 설명의 편의를 위한 것일 뿐 다양한 개수의 서브-TAM이 제공될 수 있다는 점은 당업자에게 있어 자명할 것이다. In the following description, the present invention will be mainly described based on the provision of three sub-TAM. However, it will be apparent to those skilled in the art that various sub-TAMs can be provided for convenience of description only.
여기서, SoC에 포함된 복수의 코어를 테스트하기 위한 서브-TAM의 개수 및 서브-TAM 폭은 다양한 테스트 스케줄링에 따라 결정될 수 있으며, 각 코어의 스캔 체인 개수, 최대 스캔 체인 길이, 입출력 핀 수/종류 및 테스트 패턴의 수에 따라 결정될 수 있다. Here, the number of sub-TAMs and sub-TAM widths for testing a plurality of cores included in the SoC may be determined according to various test scheduling, and the number of scan chains, the maximum scan chain length, the number of input / output pins / type of each core And the number of test patterns.
본 발명의 바람직한 일 실시예에 따르면, 복수의 서브-TAM에 대해 전용 스캔 제어 신호선이 제공된다. According to one preferred embodiment of the present invention, dedicated scan control signal lines are provided for the plurality of sub-TAMs.
각 코어의 테스트에 있어서, 스캔 제어 신호 즉, 스캔 인에이블(Scan Enable: SE) 신호에 따라 각 코어의 스캔 체인에 연결되어 시프트, 업데이트 및 캡쳐 과정이 수행된다. In the test of each core, shift, update, and capture processes are performed by being connected to the scan chain of each core according to a scan control signal, that is, a scan enable signal.
도 3에서는 3개의 서브-TAM이 제공됨에 따라 3개의 전용 스캔 제어 신호선(SE1 내지 SE3)이 도시된다. 3, three dedicated scan control signal lines SE1 to SE3 are shown as three sub-TAMs are provided.
본 발명에 따르면, 각 서브-TAM 별로 독립된 전용 스캔 제어 신호선, SE1, SE2, SE3를 두고 각 서브-TAM에 연결된 코어들은 이를 공유하는 구조를 사용한다. 이에 따라 어떤 서브-TAM 상의 코어에 대한 스캔 제어가 다른 서브-TAM에서 테스트를 수행 중이던 코어의 테스트를 정지시키는 경우가 없으므로 전체 테스트 시간이 단축될 수 있다. According to the present invention, cores connected to each sub-TAM with independent dedicated scan control signal lines SE1, SE2, and SE3 for each sub-TAM use a shared structure. Accordingly, since the scan control for the core on one sub-TAM does not stop the test of the core that is performing the test in another sub-TAM, the overall test time can be shortened.
도 4는 본 발명에 따른 병렬 코어 스캔 테스트 방식과 종래의 병렬 코어 스캔 테스트 방식에서의 테스트 시간 단축 효과를 설명하기 위한 도면이다. 4 is a view for explaining the test time reduction effect in the parallel core scan test method and the conventional parallel core scan test method according to the present invention.
도 4는 각 코어에 대해 단일 테스트 패턴이 적용되는 경우의 예를 도시한 것이며, 가장 긴 테스트 시간이 요구되는 코어A에 대한 테스트 정지 시간을 도시한다. 4 shows an example where a single test pattern is applied for each core, and shows the test down time for Core A where the longest test time is required.
도 4a에 도시된 바와 같이, 종래와 같이 단일 스캔 제어 신호선이 사용되는 경우에는 5개의 코어에 대해 데이터의 업데이트 및 캡쳐를 위해 각각 5번의 테스트 정지가 발생하며, 또한 테스트될 코어가 변경되는 경우, 예를 들어, 제1 서브-TAM에 연결된 코어C에서 코어D로 변경되는 경우, 그리고 제2 서브-TAM에 연결된 코어B에서 코어E로 변경되는 경우에 각각 테스트 정지가 발생하여 가장 긴 테스트 시간을 갖는 코어A에 대해 총 7번의 테스트 정지가 이루어진다. As shown in FIG. 4A, when a single scan control signal line is used as in the prior art, five test stops occur for update and capture of data for five cores, and when the core to be tested is changed, For example, when a change is made from core C connected to a first sub-TAM to core D, and a change from core B connected to a second sub-TAM to core E, a test stop occurs, respectively, to provide the longest test time. A total of seven test stops are made for core A with it.
그러나, 도 4b에 도시된 바와 같이, 각 서브-TAM에 대해 전용 스캔 제어 신호선을 제공하는 경우에는 코어A를 중심으로 살펴볼 때, 단지 코어 내부에서의 업데이트 및 캡쳐를 위한 경우에만 1번의 테스트 정지가 요구된다. However, as shown in FIG. 4B, when providing a dedicated scan control signal line for each sub-TAM, when looking around the core A, only one test stop is made for update and capture inside the core. Required.
이처럼 코어A의 테스트 중에 나머지 코어에서의 테스트 과정 또는 코어의 변경에 따른 테스트 정지가 이루어지지 않아 본 발명에 따르면 전체 SoC 테스트 시간 을 단축시킬 수 있다. As described above, since the test stop on the remaining cores or the change of the cores is not stopped during the core A test, the total SoC test time can be shortened according to the present invention.
한편, 본 발명에 따른 각 서브-TAM에 대해 독립적으로 제공되는 스캔 제어 신호를 위해 별도의 외부 핀을 요구하지 않으며, 기존의 SoC에 포함된 기능 입력 핀을 이용한다. Meanwhile, a separate external pin is not required for a scan control signal provided independently for each sub-TAM according to the present invention, and a function input pin included in an existing SoC is used.
도 5는 본 발명에 따른 스캔 제어 신호 생성 모듈의 구조를 도시한 도면으로서, 도 5는 표준 AMBA(Advanced Microcontroller Bus Architecture)에서의 스캔 제어 신호 생성 모듈을 도시한 것이다. 5 is a diagram illustrating a structure of a scan control signal generation module according to the present invention, and FIG. 5 illustrates a scan control signal generation module in a standard AMBA (Advanced Microcontroller Bus Architecture).
도 5에 도시된 바와 같이, 본 발명에 따른 스캔 제어 신호 생성 모듈은 테스트 시에 사용되지 않는 기능 입력 핀(Functional Input)을 스캔 제어 신호로 사용한다. As shown in FIG. 5, the scan control signal generation module according to the present invention uses a functional input pin (Functional Input) which is not used in a test, as a scan control signal.
본 발명에 따른 스캔 제어 신호 생성 모듈은 스캔 테스트 모드 시, TIC(Test Interface Controller) 모듈(500)의 컨트롤 신호(Control Signal)과 스캔 제어 신호(Scan Enable) 중 하나를 선택하는 먹스(502)를 포함한다. 여기서 먹스(502)는 WIR(Wrapper Instruction Register) 디코더의 제어 신호에 따른 스캔 테스트 모드(ScanTestMode) 신호를 통해 컨트롤 신호 및 스캔 제어 신호 중 하나를 스캔 제어 신호선을 통해 코어 측으로 인가한다. The scan control signal generation module according to the present invention selects a
본 발명에 따르면, 스캔 제어 신호 생성 모듈은 m 비트(여기서 m은 2 이상의 자연수)의 스캔 제어 신호를 생성하며, 도 3과 같이 3개의 스캔 제어 신호선이 제공되는 경우, m은 3일 수 있다. According to the present invention, the scan control signal generation module generates a scan control signal of m bits (where m is a natural number of 2 or more), and m may be 3 when three scan control signal lines are provided as shown in FIG. 3.
한편, 본 발명에 따른 SoC에는 동시에 테스트 될 코어에 테스트 대상임을 알 리기 위한 코어 셀렉트 신호를 발생시키기 위한 코어 셀렉터(Core Selector)가 제공된다. On the other hand, the SoC according to the present invention is provided with a core selector (Core Selector) for generating a core select signal for indicating that the test target to the core to be tested at the same time.
도 6은 본 발명에 따른 코어 셀렉터의 구성을 도시한 도면으로서, 도 6 역시 표준 AMBA에서의 코어 셀렉터 구조를 도시한 도면이다. 6 is a view showing the configuration of the core selector according to the present invention, Figure 6 is also a diagram showing the core selector structure in the standard AMBA.
도 6에 도시된 바와 같이, 본 발명에 따른 코어 셀렉터는 어드레스 디코더(600), 하나 이상의 논리 게이트(602,604) 및 레지스터(606)를 포함하는 테스트 모드 코어 셀렉터(Test Mode Core Selector, 608, 이하 'TMCS'라 함) 및 먹스(610)를 포함할 수 있다. As shown in FIG. 6, a core selector in accordance with the present invention includes a test mode core selector 608 (hereinafter, referred to as “description”) including an
어드레스 디코더(600)는 TIC 모듈(500)에 연결된 어드레스 버스(HADDR: AMBA address bus)로부터 현재 테스트 대상이 되는 코어에 대한 어드레스 정보를 수신하며, 수신된 어드레스 정보에 따라 TMCS(608)로 코어 셀렉트 제어 신호(EN_TMCS)를 인가한다. The
본 발명에 따르면, 어드레스 디코더(600)는 수신된 어드레스 정보가 이전과 달라지는 경우, 즉 테스트 대상이 되는 코어가 변경되는 경우에만 코어 셀렉트 제어 신호를 하이 신호(1)로 출력할 수 있다. According to the present invention, the
TMCS(608)의 어드레스 디코더 출력 측에는 AND(논리곱) 게이트(602)가 배치되며, AND 게이트(602)는 클럭 신호(HCLK)와 코어 셀렉트 제어 신호와의 논리곱을 통해 코어 어드레스가 변경된 경우에만 하이 신호를 인가하게 된다. An AND (logical)
한편, TMCS(608)의 레지스터(604)는 코어의 개수에 상응하는 비트 수(Cn)를 가지며, 상기한 AND 게이트(602)로부터 하이 신호가 인가되는 경우에 레지스터 정 보를 업데이트 한다. On the other hand, the
여기서, 레지스터 정보는 현재 테스트 대상이 되는 코어를 식별할 수 있는 정보이다. Here, the register information is information for identifying a core currently being tested.
이때, 레지스터 정보의 업데이트는 상기한 어드레스 디코더(600)의 코어 셀렉트 제어 신호 및 TIC 모듈(500)에 연결된 라이트(Write) 데이터 버스(HWDATA)를 통해 인가되는 비트(32) 중 적어도 일부(Cn 비트)를 이용하여 이루어질 수 있다. In this case, the update of the register information may include at least a part of the core select control signal of the
예를 들어, 도 3과 같이 5개의 코어가 SoC에 포함되는 경우, 레지스터(604)는 5 비트로 구성될 수 있으며, 도 4b의 코어A 내지 코어E에 대해 t1 시점에서는 11100, t2 시점에서는 11010, t3 시점에서는 10011로 업데이트될 수 있다. For example, when five cores are included in the SoC as shown in FIG. 3, the
이처럼 코어의 변경에 따라 레지스터 정보가 업데이트되는 경우, 먹스(610)는 TMCS(608) 내부의 OR 게이트(606)를 통한 신호에 따라 코어 셀렉트 신호(HSELx)를 코어 측으로 인가한다. When the register information is updated according to the change of the core as described above, the
도 7은 본 발명에 따른 AMBA 기반 SoC 상의 병렬 코어 스캔 테스트를 위한 전체 제어 구조를 도시한 도면이다. 7 is a diagram illustrating an overall control structure for parallel core scan test on AMBA based SoC according to the present invention.
본 발명에 따른 TIC 모듈(500)은 테스트 경로 분리 용이하게 하기 위해서 ARM 사에서 제시한 TIC 모듈을 사용한다.The
그리고, 기능 테스트와 스캔 테스트를 구분하기 위해서 스캔 테스트 모드(ScanTestMode) 핀(700)이 추가된다.In addition, a scan test mode (ScanTestMode)
여기서, 스캔 테스트 모드 핀(700)에 "0"이 인가된 경우에 기능 테스트가 수행되고, 스캔 테스트 모드 핀(700)에 "1"이 인가된 경우에 스캔 테스트를 수행하기 위한 스캔 테스트 모드가 수행되는 것으로 한다.Here, a function test is performed when "0" is applied to the scan
이하에서, 스캔 테스트 모드 핀(700)에 "0"이 인가된 경우인 기능 테스트 모드 시의 각각의 구성들의 동작에 대해서 살펴본 후, 스캔 테스트 모드 핀(700)에 "1"이 인가된 경우인 스캔 테스트 모드 시의 각각의 구성들의 동작에 대해서 살펴보기로 한다.Hereinafter, the operation of the respective components in the function test mode in which "0" is applied to the scan
먼저, 기능 테스트 모드 수행 상태인 경우, TIC 모듈(500)은 TBUS를 통해 입력 받은 어드레스 및 데이터를 AHB의 HADDR과 HWDATA를 통해 테스트 대상 코어(도시하지 않음)로 전송하고, 테스트 대상 코어로부터의 스캔 출력을 리드(read) 하기 위해 TicRead 신호를 발생하여 OR 게이트(702)에 인가한다.First, in the function test mode execution state, the
EBI(External Bus Interface) 모듈(706)은 OR 게이트(702)를 통해 인가된 TicRead 신호에 따라 테스트 대상 코어로부터 HRDATA를 리드하여 TBUS를 통해 테스트 결과를 출력한다.The external bus interface (EBI)
한편, 기능 테스트 모드 수행 상태에서, 스캔 테스트 모드(ScanTestMode) 핀(700)에 "1"이 인가되면 스캔 테스트 모드 수행상태로 전환된다.On the other hand, in the function test mode execution state, when "1" is applied to the scan test mode (ScanTestMode)
스캔 테스트 모드 수행상태로 전환된 후, TIC 모듈(500)은 외부로부터 스캔 입력 데이터를 TBUS를 통해 인가 받아 테스트 대상 코어로 전송하고, TicRead 신호를 발생하여 OR 게이트(702)로 제공한다.After switching to the scan test mode execution state, the
OR 게이트(702)는 스캔 테스트 모드 핀(700)을 통해 "1"이 인가된 상태에서 TIC 모듈(500)에서 제공된 TicRead 신호가 입력되면 OR 논리연산을 통해 TicRead 신호를 EBI 모듈(706)에 제공한다.The OR
EBI 모듈(706)은 OR 게이트(702)로부터 제공된 TicRead 신호에 따라 테스트 대상 코어로부터 스캔 출력 데이터를 AHB의 HRDATA를 통해 수신하여 출력데이터(EBIDATAOUT)와 출력 어드레스(EBIADDROUT)를 먹스(704)에 제공한다.The
먹스(704)는 스캔 테스트 모드 핀(700)을 통해 "1"이 인가된 상태, 즉 스캔 테스트 모드 상태이면, 출력 데이터(EBIDATAOUT)의 스캔 출력 값을 EBIEXTADDROUT로 전송하며, 반면에 "0"이 인가된 상태, 즉 기능 테스트 모드 상태인 경우에 출력 어드레스(EBIADDROUT) 값을 EBIEXTADDROUT로 전송하게 된다.The
살펴본 바와 같이, TIC 모듈(500)과 EBI 모듈(706)은 OR 게이트(702)와 먹스(MUX)(704)를 사용하여 스캔 테스트 모드(ScanTestMode)시, 즉 스캔 테스트모드 핀(700)에 "1"이 인가된 경우에 테스트 대상 코어로부터 출력된 데이터인 HRDATA -> 출력데이터(EBIDATAOUT) -> 외부 출력 어드레스(EBIEXTADDROUT)의 경로를 유지한다.As noted, the
그 결과, TIC 모듈(500)은 테스트 입력 경로로 사용되며, EBI 모듈(706)은 테스트 출력 경로만으로 사용됨을 알 수 있다.As a result, it can be seen that the
따라서, 스캔 입력 수행 시 스캔 출력이 자동적으로 수행되므로 스캔 출력을 위한 리드 트랜잭션(Read Transaction) 없이 스캔 입력과 스캔 출력의 병행처리가 가능하게 된다.Therefore, since the scan output is automatically performed when the scan input is performed, parallel processing of the scan input and the scan output is possible without a read transaction for the scan output.
또한, 도 7에 도시된 바와 같이, AMBA 버스의 기능적 테스트를 위해 사용되는 TIC 모듈(500)을 코어 셀렉트 신호를 위해 재사용하기 때문에 병렬 코어 스캔 테스트를 위한 추가 로직이 구비되지 않아도 된다. In addition, as shown in FIG. 7, the
하기에서는 본 발명에 따른 테스트 방식에서의 테스트 시간 단축 효과를 설명한다. Hereinafter, the test time reduction effect in the test method according to the present invention will be described.
병렬 코어 스캔 테스트 시 단일 스캔 제어 신호를 사용하는 경우, 서브-TAM 별로 전용 스캔 제어 신호를 사용한 경우보다 테스트 시간이 어느 정도 증가하는지 [표 1]에 나타내었다. In the case of using a single scan control signal in the parallel core scan test, the test time increases compared to the case in which a dedicated scan control signal is used for each sub-TAM.
[표 1] 단일 스캔 제어 신호 및 서브-TAM 별 독립된 스캔 제어 신호 사용에 의한 병렬 코어 스캔 테스트 시간 비교 [Table 1] Comparison of parallel core scan test time by using single scan control signal and independent scan control signal for each sub-TAM
SoC
SoC
SE 수
SE number
스트 시간
Forest time
2cycle 정지
2cycle stop
테스트 시간 비교를 위해서 ITC'02벤치마크 회로(E.J. Marinissen, V. Iyerngar, and K. Charkrabarty, ITC'02 SOC Test Benchmarks.,For comparison of test times, see ITC'02 Benchmark Circuit (E.J. Marinissen, V. Iyerngar, and K. Charkrabarty, ITC'02 SOC Test Benchmarks.,
http://itc02socbenchm.pratt.duke.edu/)를 대상으로 전체 TAM의 폭은 32비트로 가정하여 SoC 상의 테스트 대상 코어 및 사용 가능한 TAM 폭의 정보를 기반으로, 서브-TAM의 개수, 서브-TAM 별 할당할 코어들 및 코어의 테스트 순서를 결정하 는 테스트 스케줄링을 해주는 기존의 TR-ARCHITECT(민필재, 송재훈, 이현빈, 박성주, “AMBA 기반 SoC 테스트를 위한 접근 메커니즘 설계”, 대한전자공학회 논문지, Vol.43, No.10, Oct. 2006.)를 적용하였으며, 결과를 바탕으로 Sub-TAM별 전용 스캔 제어 신호를 사용하는 구조와 단일 스캔 제어 신호를 공유하는 구조로 나누어 병렬 코어 스캔 테스트 시간을 구하였다.The total TAM width is assumed to be 32 bits for http://itc02socbenchm.pratt.duke.edu/), based on the information of the cores to be tested and the available TAM width on the SoC, the number of sub-TAMs, sub-TAM Existing TR-ARCHITECT (Min Pil Jae, Jae Hoon Song, Hyun Bin Lee, and Sung Joo Park, “Design of Access Mechanism for AMBA-based SoC Tests”), The Korean Institute of Electronics Engineers, Vol.43, No.10, Oct. 2006.), and based on the results, parallel core scan test time is divided into a structure using a dedicated scan control signal for each sub-TAM and a structure sharing a single scan control signal. Obtained.
이때 단일 스캔 제어 신호를 사용하는 경우에는 코어 스캔 캡쳐 수행을 하지 않는 코어 테스트의 정지에 필요한 clock cycle을 2로 가정하였다. [표 1]에 나오는 SE 수는 대상 SoC에 대하여 TR-ARCHITECT를 적용한 결과에 따라 정해진 수치이다. Sub-TAM별로 전용 스캔 제어 신호를 사용한 경우에는 동시에 테스트 되고 있는 서로 다른 Sub-TAM상의 코어 간에 영향을 주지 않아서 최소의 테스트 시간을 얻게 된다. 반면에 단일 스캔 제어 신호를 사용하는 경우에는 하나의 코어의 테스트가 동시에 테스트 되고 있는 다른 Sub-TAM 상의 코어 테스트에 영향을 주어 [표 1]처럼 테스트 시간이 증가하는 것을 알 수 있다. In this case, when using a single scan control signal, it is assumed that the clock cycle required to stop a core test that does not perform core scan capture is 2. The number of SE in Table 1 is determined according to the result of applying TR-ARCHITECT on the target SoC. If a dedicated scan control signal is used for each sub-TAM, the minimum test time is obtained because there is no influence between cores on different sub-TAMs being tested at the same time. On the other hand, when a single scan control signal is used, the test time of one core affects the core test on the other sub-TAM being tested at the same time, and thus the test time increases as shown in [Table 1].
본 발명의 적용 예로 AMBA 기반 SoC를 구성하고, AMBA 기반 SoC의 병렬 코어 스캔 테스트 설계 기술을 이용하여 병렬 코어 스캔 테스트 수행시의 테스트 시간 감소 효과를 알아보기 위해 기존 AMBA 기반 SoC의 순차 테스트를 사용한 방법과 비교 분석하였다. As an application example of the present invention, a method using an sequential test of an existing AMBA-based SoC to construct an AMBA-based SoC and to examine the test time reduction effect when performing a parallel core scan test using the parallel core scan test design technique of the AMBA-based SoC And analyzed.
실험 대상은 ITC'02테스트 벤치마크 회로를 대상으로 이루어 졌으며, 버스의 폭 Wmax를 16에서 64까지 변화 시키며 순차 테스트와 병렬 코어 스캔 테스트로 나 누어 실험하였다. 순차 테스트는 AMBA 버스를 TAM으로 사용하며 테스트 대상 코어를 주어진 TAM 폭 모두를 할당하여 하나씩 순차적으로 테스트한다. The test subjects consisted of the ITC'02 test benchmark circuit, which was divided into sequential test and parallel core scan test by varying the bus width Wmax from 16 to 64. Sequential tests use the AMBA bus as the TAM and test the cores under test one by one, allocating all of the given TAM widths.
병렬 코어 스캔 테스트 코어의 경우에는 테스트 스케줄링 과정에 TAM 체인 분할과정이 포함되어 있기 때문에 공정한 비교를 위하여 순차 테스트의 대상 코어에도 TAM 체인 분할을 수행하였다. In the case of parallel core scan test cores, the TAM chain segmentation process is included in the test scheduling process. Therefore, the TAM chain segmentation is performed on the target cores of the sequential test for fair comparison.
병렬코어 테스트 설계 기술의 테스트 시간을 구하기 위해서는 변형된 TR-ARCHITECT를 적용하여 구한다. The test time of the parallel core test design technique is obtained by applying the modified TR-ARCHITECT.
[표 2]와 [표 3]에서는 ITC'02 테스트 벤치마크 회로에 대한 순차 테스트와 병렬 코어 스캔 테스트 시간을 비교하고 있다. Tables 2 and 3 compare the sequential and parallel core scan test times for the ITC'02 test benchmark circuit.
[표 2] 벤치마크회로(스캔체인이 고정인 경우)에 대한 테스트 시간 비교 [Table 2] Test time comparison for benchmark circuit (when scan chain is fixed)
d695
p22810
p34392
p93791
u226
d281
h953
g1023
g1023
f2126
q12710
t512505
a586710
[표 3] 벤치마크회로(스캔체인이 변경 가능한 경우)에 대한 테스트 시간 비교 [Table 3] Comparison of test times for benchmark circuits (when scan chain is changeable)
d695
p22810
p34392
p93791
u226
d281
h953
g1023
g1023
f2126
q12710
t512505
a586710
테스트 시간의 단위는 clock cycle이며, 보다 정확한 감소 효과를 알아보기 위하여 코어의 스캔 체인이 고정되어 있어 변경이 불가능한 경우와 변경이 가능한 경우로 나누어 실험하였다. ITC'02테스트 벤치마크 회로는 코어의 스캔 체인이 고정 되어있다고 가정하고 있다. 하지만 플립플롭 개수에 대한 정보가 있기 때문에 코어의 스캔 체인이 변경 가능한 경우에 대해서도 실험이 가능하다. [표 2]와 [표 3]의 결과를 보면 버스의 폭이 증가 할수록 병렬 코어 스캔 테스트시간의 감소 효과가 큼을 알 수 있다. 순차 테스트의 경우 코어 특성에 상관없이 전체 버스 폭을 할당하게 되고 버스 폭이 커질수록 병렬 코어 스캔 테스트 방식에 비하여 비효율적이 된다. 또한 [표 2]와 [표 3]를 비교해 보면 스캔 체인 변경이 가능한 경우에 비하여 스캔체인이 고정인 경우가 테스트 감소 효과가 더 큼을 알 수 있다. 일반적으로 대부분의 코어들은 하드 IP형태이고 스캔체인의 변경이 불가능하기 때문에 본 발명이 더 효과적으로 테스트 시간을 감소시킬 수 있음을 알 수 있다. The unit of test time is clock cycle, and in order to find out more accurate reduction effect, the experiment was divided into the case where the change is impossible and the case where the change is possible because the scan chain of the core is fixed. The ITC'02 test benchmark circuit assumes that the scan chain of the core is fixed. However, because there is information about the number of flip-flops, it is possible to experiment even when the scan chain of the core can be changed. The results of Tables 2 and 3 show that the parallel bus width test time decreases as the bus width increases. For sequential tests, the total bus width is allocated regardless of the core characteristics, and the larger the bus width, the less efficient it is compared to the parallel core scan test method. Also, comparing [Table 2] and [Table 3], it can be seen that the test reduction effect is larger when the scan chain is fixed than when the scan chain can be changed. In general, since most cores are in hard IP form and the scan chain cannot be changed, it can be seen that the present invention can reduce test time more effectively.
[표 4]는 실제 AMBA 기반의 SoC 회로를 바탕으로 테스트 시간과 면적을 기존의 순차 테스트 방식과 비교한 결과이다. Table 4 shows the results of comparing the test time and area with the conventional sequential test method based on the actual AMBA-based SoC circuit.
[표 4] 테스트 대상 코어들의 특성 [Table 4] Characteristics of Test Cores
(# NAND gates)Total area
(# NAND gates)
PO#
PO
DFF#
DFF
AHB
AHB
APB
APB
실험을 위한 AMBA 기반 시스템의 구조는 도 8과 같으며 SoC의 코어 특성은 [표 4]에 나타내었다. 테스트 벡터는 상업용 자동 테스트 패턴 생성(ATPG)툴을 사용하여 생성하였으며, RTL코드는 0.25㎛ 공정 라이브러리를 사용하여 합성하였다. 세 번째와 네 번째 열은 각 코어의 면적을 게이트 수로 나타내었다(2개의 입력을 가지는 NAND 게이트 기준). 열 5,6,7은 각각 PIs, POs, D-flipflop의 수이며 테스트 벡터의 수, fault coverage에 대한 정보는 열 8,9에 나열하였다. 실험은 테스트 벤치마크 회로와 같은 방식으로 이루어졌으며, 스캔 체인 변경이 자유로운 경우에 속한다. The structure of the AMBA-based system for the experiment is shown in FIG. 8 and the core characteristics of the SoC are shown in [Table 4]. Test vectors were generated using a commercial automated test pattern generation (ATPG) tool, and RTL codes were synthesized using a 0.25 μm process library. The third and fourth columns represent the area of each core in number of gates (based on NAND gates with two inputs).
실험 결과는 [표 5]에 나타내었으며, 앞에서와 마찬가지로 전체 TAM 폭이 증가할수록 높은 테스트 시간 감소율을 보이고 있다. The experimental results are shown in [Table 5], and as in the previous case, as the total TAM width increases, the test time decrease rate is high.
[표 5] 실제 AMBA 기반 SoC의 테스트 시간 비교 [Table 5] Test time comparison of actual AMBA based SoC
실제 SoC 회로
병렬 코어 스캔 테스트 설계를 이용하여 테스트하는 경우에는 기존의 순차 테스트 방식에 비하여 테스트 시간은 감소하지만 병렬 코어 스캔 테스트를 위한 추가 설계로 인하여 면적이 증가하게 된다. Testing with a parallel core scan test design reduces test time compared to traditional sequential test methods, but increases the area due to additional designs for parallel core scan test designs.
순차 테스트 방식은 표준 래퍼 대신 테스트 하니스(Harness)를 이용하여 코어를 테스트하기 때문에 객관적인 면적 비교를 위하여 우선 래퍼 부분만 [표 6]에 비교하였다. Since the sequential test method tests the core using a test harness instead of the standard wrapper, only the wrapper portion is first compared to [Table 6] for an objective area comparison.
[표 6] 실제 AMBA 기반 SoC의 테스트 면적 비교 Table 6 Comparison of test areas of real AMBA based SoCs
AHB
AHB
APB
APB
면적은 2입력 NAND 게이트 수로 나타내고 있다. 여기서 사용한 순차테스트 방식에서는 코어의 출력에 테스트 하니스를 연결하지 않는 반면에 본 발명에서는 입력과 출력 모두에 표준 래퍼를 연결하고 있기 때문에 표준 래퍼의 면적이 크게 나왔다. 래퍼를 제외하고 순차테스트 방식과 면적을 비교하는 경우에는 224개의 게이트가 증가한다. 이를 통하여 본 발명 AMBA 기반의 병렬 코어 스캔 테스트 설계 기술은 기존의 방법에 비하여 적은 면적 증가로 높은 테스트 시간 감소 효과를 낼 수 있음을 알 수 있다. The area is represented by the number of two input NAND gates. In the sequential test method used here, the test harness is not connected to the output of the core, whereas in the present invention, since the standard wrapper is connected to both the input and the output, the area of the standard wrapper is large. Except for the wrapper, 224 gates are increased when comparing the area with the sequential test method. Through this, it can be seen that the AMBA-based parallel core scan test design technology of the present invention can reduce the test time with a small area increase compared to the conventional method.
상기한 본 발명의 바람직한 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대해 통상의 지식을 가진 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.Preferred embodiments of the present invention described above are disclosed for purposes of illustration, and those skilled in the art will be able to make various modifications, changes, and additions within the spirit and scope of the present invention. Additions should be considered to be within the scope of the following claims.
도 1은 종래기술에 따른 순차적 테스트를 위한 TAM 구조 및 테스트 시간을 도시한 도면. 1 illustrates a TAM structure and test time for sequential testing according to the prior art.
도 2는 종래기술에 따른 병렬 코어 스캔 테스트를 위한 TAM 구조를 도시한 도면. 2 illustrates a TAM structure for a parallel core scan test according to the prior art.
도 3은 본 발명의 바람직한 일 실시예에 따른 테스트 구조를 도시한 도면.3 illustrates a test structure in accordance with one preferred embodiment of the present invention.
도 4는 본 발명에 따른 병렬 코어 스캔 테스트 방식과 종래의 병렬 코어 스캔 테스트 방식에서의 테스트 시간 단축 효과를 설명하기 위한 도면.4 is a view for explaining the test time reduction effect in a parallel core scan test method and a conventional parallel core scan test method according to the present invention.
도 5는 본 발명에 따른 스캔 제어 신호 생성 모듈의 구조를 도시한 도면.5 is a diagram illustrating the structure of a scan control signal generation module according to the present invention;
도 6은 본 발명에 따른 코어 셀렉터의 구성을 도시한 도면.6 is a diagram showing the configuration of a core selector according to the present invention;
도 7은 본 발명에 따른 AMBA 기반 SoC 상의 병렬 코어 스캔 테스트를 위한 전체 제어 구조를 도시한 도면.7 illustrates the overall control structure for parallel core scan test on AMBA based SoC in accordance with the present invention.
도 8은 본 발명이 적용된 AMBA 기반 시스템 온 칩의 구성을 도시한 도면. 8 is a diagram illustrating a configuration of an AMBA-based system on chip to which the present invention is applied.
Claims (12)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090081215A KR101116956B1 (en) | 2009-08-31 | 2009-08-31 | System on Chip capable of Testing based on Test Access Mechanism |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090081215A KR101116956B1 (en) | 2009-08-31 | 2009-08-31 | System on Chip capable of Testing based on Test Access Mechanism |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110023374A KR20110023374A (en) | 2011-03-08 |
KR101116956B1 true KR101116956B1 (en) | 2012-03-14 |
Family
ID=43931497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090081215A KR101116956B1 (en) | 2009-08-31 | 2009-08-31 | System on Chip capable of Testing based on Test Access Mechanism |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101116956B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230061154A (en) | 2021-10-28 | 2023-05-08 | 연세대학교 산학협력단 | Division scheduling-based test scheduling method and apparatus for test time reduction |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR930006094B1 (en) * | 1989-02-07 | 1993-07-07 | 가부시키가이샤 도시바 | Circuit for testability |
KR20000074594A (en) * | 1999-05-24 | 2000-12-15 | 윤종용 | Apparatus for collecting and analyzing particles in semiconductor manufacturing process |
US7519884B2 (en) | 2006-06-16 | 2009-04-14 | Texas Instruments Incorporated | TAM controller for plural test access mechanisms |
-
2009
- 2009-08-31 KR KR1020090081215A patent/KR101116956B1/en not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR930006094B1 (en) * | 1989-02-07 | 1993-07-07 | 가부시키가이샤 도시바 | Circuit for testability |
KR20000074594A (en) * | 1999-05-24 | 2000-12-15 | 윤종용 | Apparatus for collecting and analyzing particles in semiconductor manufacturing process |
US7519884B2 (en) | 2006-06-16 | 2009-04-14 | Texas Instruments Incorporated | TAM controller for plural test access mechanisms |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230061154A (en) | 2021-10-28 | 2023-05-08 | 연세대학교 산학협력단 | Division scheduling-based test scheduling method and apparatus for test time reduction |
KR102664020B1 (en) | 2021-10-28 | 2024-05-08 | 연세대학교 산학협력단 | Division scheduling-based test scheduling method and apparatus for test time reduction |
Also Published As
Publication number | Publication date |
---|---|
KR20110023374A (en) | 2011-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100488232B1 (en) | A method for testing integrated memory using an integrated dma controller | |
Bai et al. | Self-test methodology for at-speed test of crosstalk in chip interconnects | |
CN103744009B (en) | A kind of serial transmission chip detecting method, system and integrated chip | |
US6968467B2 (en) | Decentralized power management system for integrated circuit using local power management units that generate control signals based on common data | |
US8136001B2 (en) | Technique for initializing data and instructions for core functional pattern generation in multi-core processor | |
CN108062267B (en) | A configurable register file self-test method and generating device | |
US10481990B2 (en) | Apparatuses and methods for a multiple master capable debug interface | |
KR100789749B1 (en) | System-on-chip test device | |
JP2000133000A (en) | Memory hybrid logic lsi | |
CN101329385A (en) | Regulation test system and method of on-chip system as well as on-chip system | |
US20060156104A1 (en) | Wrapper testing circuits and method thereof for system-on-a-chip | |
CN106816178A (en) | A kind of Design of Built-in Self-Test method of polylith in-line memory on single-chip | |
JPH07200654A (en) | Integrated circuit and its constructing method for specific purpose | |
US7308631B2 (en) | Wrapper serial scan chain functional segmentation | |
US8423843B2 (en) | Method and system thereof for optimization of power consumption of scan chains of an integrated circuit for test | |
JP2007524088A (en) | Inspection architecture and method | |
US6973631B2 (en) | Scan insertion with bypass login in an IC design | |
KR101116956B1 (en) | System on Chip capable of Testing based on Test Access Mechanism | |
CN1462979A (en) | Loading method of Flash chip and JTAG controller | |
JP2002100738A (en) | Semiconductor ic and method of automatic inserting test facilitating circuit | |
Kim et al. | On-chip network based embedded core testing | |
KR102038414B1 (en) | Test device and operating method thereof | |
JP4181317B2 (en) | Integrated circuit power management system | |
US6785857B1 (en) | Fixed-logic signal generated in an integrated circuit for testing a function macro integrated in an integrated circuit | |
US20170184665A1 (en) | Dynamically configurable shared scan clock channel architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20090831 |
|
PA0201 | Request for examination | ||
PG1501 | Laying open of application | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20110323 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20111221 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20120208 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20120208 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
FPAY | Annual fee payment |
Payment date: 20160118 Year of fee payment: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20160118 Start annual number: 5 End annual number: 5 |
|
LAPS | Lapse due to unpaid annual fee | ||
PC1903 | Unpaid annual fee |
Termination category: Default of registration fee Termination date: 20171119 |