KR20000003933A - Method and device for testing internal memory in memory chip - Google Patents
Method and device for testing internal memory in memory chip Download PDFInfo
- Publication number
- KR20000003933A KR20000003933A KR1019980025241A KR19980025241A KR20000003933A KR 20000003933 A KR20000003933 A KR 20000003933A KR 1019980025241 A KR1019980025241 A KR 1019980025241A KR 19980025241 A KR19980025241 A KR 19980025241A KR 20000003933 A KR20000003933 A KR 20000003933A
- Authority
- KR
- South Korea
- Prior art keywords
- internal memory
- test
- data
- register
- scan
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
- G11C29/30—Accessing single arrays
- G11C29/32—Serial access; Scan testing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
- G11C29/30—Accessing single arrays
- G11C2029/3202—Scan chain
Landscapes
- Tests Of Electronic Circuits (AREA)
Abstract
Description
본 발명은 반도체 칩 설계시 반드시 거쳐야하는 기능 검증에 관한 것으로서, 특히 칩에 내장된 내부 메모리를 테스트하기 위한 방법 및 장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to functional verification that must be passed in semiconductor chip design, and more particularly, to a method and apparatus for testing an internal memory embedded in a chip.
최근 설계되는 칩의 대부분은 내부에 메모리를 포함하여 이루어지며, 이때 이러한 내부 메모리에 대한 정확한 테스트를 필요로 한다. 이를 위해 종래에는, 테스트를 위한 테스트 패드(PAD)(어드레스, 데이터 및 제어 신호)를 따로 할당하여 외부에서 직접 제어하였다. 그러나, 이러한 종래 기술은 패드를 따로 둠으로써 전체 패드 개수를 늘리고, 이에 따른 비용 증가 및 패키징(packaging) 등의 문제를 일으킨다.Most of the recently designed chips include an internal memory, which requires accurate testing of the internal memory. To this end, conventionally, a test pad (PAD) (address, data and control signal) for a test was separately assigned and controlled directly from the outside. However, such a prior art increases the total number of pads by keeping the pads separate, thereby causing problems such as cost increase and packaging.
내부 메모리 테스트를 위한 종래의 또다른 방법은, 별도의 테스트 패드를 두지 않고, 일반 패드를 공용으로 사용하면서 멀티플렉서(Multiplexor) 로직을 통해 내부 메모리를 테스트하는 것으로, 이러한 방법은 제어가 복잡하고, 멀티플렉서 및 제어 로직으로 인한 전체 수행 속도의 저하, 레이아웃(layout) 시 배선 면적의 증가 등의 문제를 일으킨다.Another conventional method for testing the internal memory is to test the internal memory through multiplexor logic without using a separate test pad and using common pads in common, which is complicated to control and multiplexer And a decrease in the overall execution speed due to the control logic and an increase in the wiring area in the layout.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 바운더리 스캔(boundary scan)을 이용하여 내부 메모리의 테스트를 효율적으로 수행하는 메모리 내장 칩에서의 내부 메모리 테스트 방법 및 장치를 제공하는데 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and an object of the present invention is to provide a method and an apparatus for testing an internal memory in a memory embedded chip that efficiently performs an internal memory test using a boundary scan. have.
도 1은 표준인 BS1149.1을 구현하는 칩 아키텍처를 도시한 블록도.1 is a block diagram illustrating a chip architecture implementing the standard BS1149.1.
도 2는 표준인 BS 테스트 회로부의 내부 블록도.2 is an internal block diagram of a standard BS test circuit.
도 3은 내부 메모리를 제어하기 위해 사용자 테스트 데이터 레지스터에 정의하는 본 발명에 따른 제어 레지스터를 개념적으로 도시한 도면.3 conceptually illustrates a control register in accordance with the present invention that defines a user test data register to control an internal memory;
도 4a는 본 발명에 따른 컨트롤부의 내부 구성도.Figure 4a is an internal configuration diagram of the control unit according to the present invention.
도 4b는 본 발명에 따른 데이터부의 내부 구성도.4b is an internal configuration diagram of a data unit according to the present invention;
도 5a는 본 발명에 따른 상기 도 4a의 컨트롤부를 구성하는 셀의 내부 구성도.Figure 5a is an internal configuration of the cell constituting the control unit of Figure 4a in accordance with the present invention.
도 5b는 본 발명에 따른 상기 도 4b의 데이터부를 구성하는 셀의 내부 구성도.5B is a diagram illustrating an internal configuration of a cell constituting the data unit of FIG. 4B according to the present invention.
도 6은 본 발명에 따른 탭 컨트롤러의 스테이트 머신도.6 is a state machine diagram of a tap controller in accordance with the present invention.
도 7은 본 발명에 따른 내부 메모리 블록도.7 is an internal memory block diagram in accordance with the present invention.
* 도면의 주요 부분에 대한 설명* Description of the main parts of the drawing
10 - 22 : 입출력 패드 23 - 35 : 바운더리 스캔 셀10-22: input / output pad 23-35: boundary scan cell
40 : 응용 로직부40: application logic section
50 : 바운더리 스캔 테스트 회로부50: boundary scan test circuit
100 : 바운더리 스캔 레지스터 110 : 디바이스 식별 레지스터100: boundary scan register 110: device identification register
120 : 사용자 테스트 데이터 레지스터 130 : 바이패스 레지스터120: user test data register 130: bypass register
140 : 테스트 데이터 레지스터들 150 : 명령어 레지스터140: test data registers 150: instruction register
160 : 탭 컨트롤러 170 : 디코딩 로직160: tap controller 170: decoding logic
180,190 : 멀티플렉서180,190: Multiplexer
상기 목적을 달성하기 위한 본 발명은 내부 메모리 블록을 포함하며, 바운더리 스캔 IEEE 1149.1 표준을 지원하는 반도체 칩에서의 상기 내부 메모리 블록을 테스트하는 장치에 있어서, 상기 내부 메모리 블록의 테스트를 위한 명령어를 추가하고, 사용자 테스트 데이터 레지스터에 상기 내부 메모리 블록을 테스트하기 위한 제어 신호 및 데이터를 저장하는 제어 레지스터를 더 포함하여 이루어진다.The present invention for achieving the above object includes an internal memory block, the apparatus for testing the internal memory block in a semiconductor chip that supports a boundary scan IEEE 1149.1 standard, the instructions for testing the internal memory block is added And a control register for storing control signals and data for testing the internal memory block in a user test data register.
또한, 내부 메모리 블록, 및 바운더리 스캔 IEEE 1149.1 표준을 지원하며 탭 컨트롤러, 상기 내부 메모리 블록을 테스트 하기 위해 제어 신호 및 데이터를 저장하도록 사용자 테스트 데이터 레지스터에 정의된 제어 레지스터를 포함하는 바운더리 테스트 회로부를 포함하여 이루어지는 반도체 칩에서의 상기 내부 메모리 블록을 테스트하는 방법에 있어서, 상기 바운더리 테스트 회로부의 초기화를 위해 리셋 상태로 만드는 제1 단계; 상기 탭 컨트롤러의 Run-test/Idle 상태로 이동하는 제2 단계; 상기 탭 컨트롤러의 Select-DR-Scan 상태로 이동하는 제3 단계; 상기 바운더리 테스트 회로부의 명령어 레지스터에 상기 내부 메모리를 테스트하는 명령어를 라이트한 후 Run-test/Idle 상태로 이동하는 제4 단계; 상기 탭 컨트롤러의 Select-DR-Scan 상태로 이동하는 제5 단계; 상기 내부 메모리 테스트를 위해 상기 내부 메모리에 라이트할 수 있는 데이터 및 제어 신호를 상기 제어 레지스터에 라이트한 후 Run-test/Idle 상태로 이동하여 상기 내부 메모리 라이트 동작을 수행하는 제6 단계; 상기 탭 컨트롤러의 Select-DR-Scan 상태로 이동하는 제7 단계; 상기 내부 메모리를 리드할 수 있는 정보를 상기 제어 레지스터에 라이트한 후 Run-test/Idle 상태로 이동하여 상기 내부 메모리 리드 동작을 수행하는 제8 단계; 상기 탭 컨트롤러의 Select-DR-Scan 상태로 이동하는 제9 단계; 상기 리드한 상기 내부 메모리의 데이터를 스캔 체인을 이용하여 읽어내어 비교하고, 동시에 다음 항목의 상기 내부 메모리를 리드/라이트할 수 있는 정보를 상기 제어 레지스터에 쓴 후 Run-test/Idle 상태로 이동하여 다음 항목의 상기 내부 메모리 리드/라이트를 수행하는 제10 단계; 상기 탭 컨트롤러의 Select-DR-Scan 상태로 이동하는 제11 단계; 및 원하는 메모리 테스트가 끝난 후 상기 명령어 레지스터에 다음번 수행할 명령어를 라이트하거나 또는 바운더리 스캔 동작을 끝내고 그 다음 Run-test/Idle 상태로 이동하는 제12 단계를 포함하여 이루어진다.It also includes a boundary test circuitry that supports an internal memory block and a boundary scan IEEE 1149.1 standard and includes a tap controller, a control register defined in a user test data register to store control signals and data for testing the internal memory block. A method for testing the internal memory block in a semiconductor chip, comprising: a first step of bringing a boundary test circuit into a reset state for initialization; A second step of moving to the Run-test / Idle state of the tap controller; Moving to the Select-DR-Scan state of the tap controller; A fourth step of writing a command for testing the internal memory in an instruction register of the boundary test circuit unit and then moving to a run-test / Idle state; A fifth step of moving to the Select-DR-Scan state of the tap controller; A sixth step of writing data and control signals that can be written to the internal memory to the control register for the internal memory test, and then moving to a run-test / Idle state to perform the internal memory write operation; A seventh step of moving to the Select-DR-Scan state of the tap controller; An eighth step of writing the information capable of reading the internal memory to the control register and moving to a run-test / Idle state to perform the internal memory read operation; A ninth step of moving to the Select-DR-Scan state of the tap controller; Read and compare the read data of the internal memory by using a scan chain, and at the same time, write information to read / write the internal memory of the next item in the control register and then move to the Run-test / Idle state. A tenth step of performing the internal memory read / write of a next item; An eleventh step of moving to the Select-DR-Scan state of the tap controller; And a twelfth step of writing a command to be executed next in the command register after the desired memory test is finished or ending a boundary scan operation and then moving to a next run-test / Idle state.
이하, 첨부된 도면을 참조하여 본 발명을 상세히 살펴본다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
최근 반도체 칩 설계에 있어, 폴트 커버리지(fault coverage)를 올리기 위해 스캔 체인(scan chain)을 삽입하여 제어성(controllability) 및 관측성(observability)을 높이고, 보드(board) 상의 테스트를 용이하게 하기 위해 칩 내부에 보드 테스트를 도와줄 수 있는 로직을 추가하여 설계하는데, 이러한 로직에 대한 표준(standard)이 JTAG Boundary Scan and IEEE(Institute of Electrical and Electronic Engineers) 1149.1(이하 BS 1149.1)로 정의되어 있다.In recent semiconductor chip designs, a scan chain is inserted to increase fault coverage to increase controllability and observability, and to facilitate testing on board. Designed by adding logic to help test the board inside the chip, the standard for this logic is defined as JTAG Boundary Scan and Institute of Electrical and Electronic Engineers (IEEE) 1149.1 (hereafter BS 1149.1).
도 1은 BS1149.1을 구현하는 칩 아키텍처(architecture)이다. 칩의 입출력을 담당하는 입/출력 패드(10 내지 22)와, 바운더리 스캔을 위해 테스트 데이터 입력 신호(Test Data In, 이하 TDI라 함)를 입력받기 위한 패드, 바운더리 스캔을 위해 테스트 모드 선택 신호(Test Mode Select, 이하 TMS라 함)를 입력받기 위한 패드, 바운더리 스캔을 위해 테스트 클럭 신호(Test Clock, 이하 TCK라 함)를 입력받기 위한 패드, 바운더리 스캔을 위해 테스트 리셋 신호(Test Reset, 이하 TRST라 함)를 입력받기 위한 패드, 바운더리 스캔을 위해 테스트 데이터 출력 신호(Test Data Out, 이하 TDO라 함)를 출력하기 위한 패드, 입/출력 패드에 각각 연결되는 다수개의 바운더리 스캔 셀(23 내지 35), 각각의 바운더리 스캔 셀 및 TDI 패드와 연결되어 해당 칩의 기능을 수행하는 응용 로직부(40) 및, TDI, TMS, TCK, TRST 및 응용 로직부(40)를 통해 출력되는 신호를 입력받아 TDO 신호를 출력함으로써 응용 로직부(40)의 테스트를 담당하는 BS 테스트 회로부(50)로 이루어진다. 다수개의 바운더리 스캔 셀(23 내지 35)이 체인 방식으로, 즉 처음의 바운더리 스캔 셀(23)은 TDI 패드에 연결되고, 나머지 바운더리 스캔 셀은 각각 그전 스캔 셀에 직렬로 연결되어 마지막 바운더리 스캔 셀(35)이 BS 테스트 회로부(50)에 연결된다.1 is a chip architecture implementing BS1149.1. Input / output pads 10 to 22 in charge of input / output of the chip, pads for receiving test data input signals (Test Data In, hereinafter referred to as TDI) for boundary scan, and test mode selection signals for boundary scan ( Pad to receive Test Mode Select, hereinafter referred to as TMS, Pad to receive test clock signal (Test Clock, hereinafter referred to as TCK) for boundary scan, and Test Reset signal (Test Reset, hereinafter referred to as TRST) for boundary scan A plurality of boundary scan cells (23 to 35) respectively connected to a pad for receiving an input, a pad for outputting a test data output signal (Test Data Out, hereinafter referred to as TDO) for a boundary scan, and an input / output pad. ), The application logic unit 40 connected to each boundary scan cell and the TDI pad to perform the function of the corresponding chip, and the signals output through the TDI, TMS, TCK, TRST and the application logic unit 40 are received.By outputting the TDO signal is made of the BS test circuit section 50 in charge of the test of the application logic section (40). The plurality of boundary scan cells 23 to 35 are chained, that is, the first boundary scan cell 23 is connected to the TDI pad, and the remaining boundary scan cells are each connected in series to the previous scan cell so that the last boundary scan cell ( 35 is connected to the BS test circuit section 50.
본 발명은 도 1에 도시된 바와 같은 BS1149.1 아키텍처를 이용하여 칩 내부에 있는 메모리를 테스트하는 것으로서, 이를 위해 BS 1149.1에서 제안하고 있는 표준 명령어 이외에 내부 메모리를 테스트하기 위한 새로운 명령어 및 BS 테스트 회로부(50) 내에 메모리를 리드(read) 및 라이트(write)하기 위한 레지스터를 필요로 한다.The present invention is to test the memory in the chip using the BS1149.1 architecture as shown in Figure 1, for this purpose a new instruction and BS test circuit for testing the internal memory in addition to the standard instructions proposed by BS 1149.1 There is a need for a register within 50 to read and write memory.
도 2는 BS 테스트 회로부의 내부 블록도로서, TDI 신호를 각각 입력받는 바운더리 스캔 레지스터(boundary scan register, 100), 디바이스 식별 레지스터(device identification register, 110), 사용자 테스트 데이터 레지스터(user test data register, 120) 및 바이패스 레지스터(bypass register, 130)로 구성된 테스트 데이터 레지스터(140), TDI 신호를 입력받고, 테스트 명령어를 저장하는 명령어 레지스터(150), TCK, TMS, TRST 신호에 응답하여 테스트 데이터 레지스터(140)의 클럭 신호 및 제어 신호와 명령어 레지스터(150)의 클럭 신호 및 제어 신호를 출력하는 탭 컨트롤러(TAP, Test Access Port, 160), 명령어 레지스터(150)로부터의 명령어를 입력받아 디코딩한 후 테스트 데이터 레지스터(140)를 구성하는 각 레지스터로 출력하는 디코딩 로직(170), 디코딩 결과에 응답하여 테스트 데이터 레지스터를 구성하는 각 레지스터로부터 출력되는 신호 중 하나를 선택하여 출력하는 제1 멀티플렉서(180), 탭 컨트롤러(160)로부터 출력되는 선택 신호(Select)에 응답하여 제1 멀티플렉서(180)로부터의 출력 신호와 명령어 레지스터로부터의 출력 신호 중 하나를 선택하여 출력하는 제2 멀티플렉서(190) 및 제2 멀티플렉서로부터의 출력 신호를 탭 컨트롤러(160)로부터 출력되는 인에이블(Enable) 신호에 응답하여 TDO로 출력하는 삼중 버퍼(200)로 이루어진다. 이러한 구성의 BS 테스트 회로부에 대한 구체적인 동작 설명은 표준으로서 널리 알려져 있기에 여기서는 상세한 설명을 생략한다.FIG. 2 is an internal block diagram of a BS test circuit unit, and includes a boundary scan register 100, a device identification register 110, and a user test data register, each receiving a TDI signal. A test data register 140 including a 120 and a bypass register 130, a command register 150 for receiving a TDI signal and storing a test command, and a test data register in response to the TCK, TMS, and TRST signals. After receiving a command from the tap controller (TAP, Test Access Port, 160) and the command register 150 that outputs the clock signal and the control signal of the 140 and the clock signal and the control signal of the command register 150, Decoding logic 170 for outputting to each register constituting the test data register 140, the test data register in response to the decoding result The output signal and the command from the first multiplexer 180 in response to the first multiplexer 180 and the select signal output from the tap controller 160. Triple buffer for outputting the second multiplexer 190 and one of the output signals from the register and the output signal from the second multiplexer to the TDO in response to the enable signal output from the tap controller 160. It consists of 200. The detailed description of the operation of the BS test circuit unit having such a configuration is well known as a standard, and thus the detailed description thereof is omitted here.
여기서 사용자 테스트 데이터 레지스터(120)는 사용자가 사용 편의에 따라 정의할 수 있는 레지스터로서, 여기에 본 발명의 내부 메모리 테스트를 위해 필요한 레지스터를 정의하여 내부 메모리에 대해 리드/라이트 동작을 수행한다.Here, the user test data register 120 is a register that can be defined by a user according to convenience of use, and defines a register necessary for the internal memory test of the present invention to perform a read / write operation on the internal memory.
도 3은 내부 메모리를 제어하기 위해 사용자 테스트 데이터 레지스터에 정의하는 본 발명의 제어 레지스터를 개념적으로 도시한 것으로서, 테스트할 내부 메모리를 4웨이(way) 연관 사상 캐쉬(set associative cache)라 가정하여 도시한 것이다. SI(scan input)을 입력받아 내부 메모리로 다수개의 제어 신호를 출력하는 컨트롤부(300) 및 컨트롤부(300)와 직렬로 연결되며, 내부 메모리로부터 리드한 정보를 입력받아 SO로 출력하는 데이터부(310)로 이루어진다. 이때, SI는 TDI신호이고, SO는 도 2의 제1 멀티플렉서(180) 및 제2 멀티플렉서(190)를 통해 TDO로 출력되는 신호이다.FIG. 3 conceptually illustrates a control register of the present invention defined in a user test data register for controlling an internal memory, assuming that the internal memory to be tested is a set associative cache. It is. It is connected in series with the control unit 300 and the control unit 300 that receives a scan input (SI) and outputs a plurality of control signals to the internal memory, and receives the data read from the internal memory and outputs it to the SO It consists of 310. In this case, SI is a TDI signal, and SO is a signal output to the TDO through the first multiplexer 180 and the second multiplexer 190 of FIG. 2.
내부 메모리 테스트를 위해 사용자 테스트 데이터 레지스터에 정의한 본 발명의 레지스터 구성을 전술한 바와 같이 컨트롤부(300)를 데이터부(310) 앞에 연결함으로써 내부 메모리를 테스트하는 데 사용되는 스캔 사이클(scan cycle)을 줄일 수 있다. 즉, 먼저 TDI를 통해 입력되는 제어 신호 및 데이터를 스캔 체인을 통해 제어 레지스터에 저장하는 데, 이때 레지스터의 끝까지 스캔 사이클을 수행할 필요없이 컨트롤부까지만 스캔 사이클을 수행하고, 그 다음에 내부 메모리 리드를 수행한 후 메모리 데이터 부분을 리드할 때에 데이터부만큼만 스캔 사이클을 수행하면 되기 때문에 스캔 사이클을 줄일 수 있게 된다. 도 4a 내지 도 4b에 컨트롤부와 데이터부 각각의 내부 구성이 도시되어 있다.As described above, the register configuration of the present invention defined in the user test data register for the internal memory test is connected to the control unit 300 in front of the data unit 310 to scan the scan cycle used to test the internal memory. Can be reduced. That is, first, control signals and data input through the TDI are stored in the control register through the scan chain, in which only the control cycle is performed without performing the scan cycle until the end of the register, and then the internal memory read. When the memory data portion is read after the operation, the scan cycle can be reduced by only the data portion. 4A to 4B show internal configurations of the control unit and the data unit, respectively.
도 4a는 컨트롤부의 내부 구성을 도시한 것으로서, 캐쉬의 페이지(page) 크기를 4K 바이트로 가정할 경우 내부 메모리에 라이트하기 위한 메모리 데이터를 저장하는 64비트의 데이터 필드(field), 내부 메모리의 태그 어드레스(tag address, 20비트)와 인덱스 어드레스(index address, 7비트)를 저장하는 태그 & 인덱스 필드, 라이트 동작을 위한 엘알유(LRU, Least Recently Used, 3비트) 필드, 라이트 동작을 위한 스테이트(state) 비트를 저장하는 스테이트 필드(2비트), 4개의 웨이 중 하나를 선택하기 위한 웨이 선택 비트를 저장하는 웨이 필드(2비트), 라인(line) 단위로 리드 시 비트수가 많으므로 그 중에 일부를 선택하여 여러번 리드함으로써 라인을 리드하기 위한 워드(word) 필드(2비트), 제어 모드 선택 비트를 저장하는 제어 모드 선택 필드(2비트) 및 테스트 리드/라이트 동작을 인에이블하는 인에이블 신호를 저장하는 테스트 인에이블 필드로 이루어진다. 2비트의 제어 모드 선택 비트는 "0"일 경우 동작 없음을, "1"일 경우 테스트 라이트를, "10"일 경우 테스트 리드를, "11"일 경우 캐쉬 메모리 플러시(flush)를 각각 나타낸다.FIG. 4A illustrates an internal configuration of a control unit. When a cache page size is assumed to be 4K bytes, a 64-bit data field for storing memory data for writing to internal memory, and a tag of an internal memory. Tag & Index field for storing address (tag address, 20 bit) and index address (7 bit), LRU (Last Recently Used, 3 bit) field for write operation, State for write operation State field (2 bits) that stores bits, Way field (2 bits) that stores way selection bits for selecting one of four ways, and some of them because there are many bits per line Word field (2 bits) for reading the line by selecting and reading multiple times, control mode selection field (2 bits) for storing the control mode selection bits, and test read / write operation Made of an enable signal for enabling a test enable field for storing. The 2-bit control mode selection bit indicates no operation when "0", a test write when "1", a test read when "10", and a cache memory flush when "11".
도 4b는 데이터부의 내부 구성을 도시한 것으로서, 내부 메모리로부터 리드한 데이터를 저장하는 64비트의 데이터 필드, 내부 메모리로부터 리드한 태그 어드레스(20비트)를 저장하는 태그 필드, 내부 메모리로부터 리드한 엘알유 비트를 저장하는 엘알유(3비트) 필드, 내부 메모리로부터 리드한 스테이트 비트를 저장하는 스테이트 필드(2비트)로 이루어진다.Fig. 4B shows the internal configuration of the data portion, which is a 64-bit data field for storing data read from the internal memory, a tag field for storing a tag address (20 bit) read from the internal memory, and an eld read from the internal memory. An ELU (3-bit) field for storing the ALU bits and a state field (2 bits) for storing the state bits read from the internal memory.
다음으로, 본 발명의 제어 레지스터는 편의상 컨트롤부 및 데이터부 각각 다른 구조의 셀들로 이루어진다. 도 5a는 컨트롤부를 구성하는 셀을 도시한 것으로서, shiftDR에 응답하여 TDI를 통해 입력되는 SI 신호와 피드백된 SO 신호 중 하나를 선택하여 출력하는 멀티플렉서(500), 멀티플렉서(500)로부터 출력되는 신호를 clockDR의 상승 에지(rising edge)에서 입력받아 SO 신호로 출력하는 제1 플립플롭(DFF, 510), 및 RESETb 신호에 응답하여 리셋(reset) 동작을 수행하며, 제1 플립플롭(510)으로부터 출력되는 SO 신호를 updateDR의 상승 에지에서 입력받아 제어 신호(도 4a의 데이터를 제외한 다수개의 제어 신호)로 저장하는 제2 플립플롭(DFF, 520)으로 이루어진다.Next, the control register of the present invention consists of cells of different structures, respectively, for convenience of control and data. FIG. 5A illustrates a cell constituting the control unit, and in response to shiftDR, a signal output from the multiplexer 500 and the multiplexer 500 which selects and outputs one of an SI signal and a feedback SO signal input through TDI. A reset operation is performed in response to the first flip-flops (DFF, 510) and the RESETb signal, which are received at the rising edge of the clockDR and output as an SO signal, and are output from the first flip-flop (510). A second flip-flop (DFF, 520) receives the SO signal from the rising edge of updateDR and stores it as a control signal (a plurality of control signals except for the data of FIG. 4A).
도 5b는 데이터부를 구성하는 셀을 도시한 것으로서, shiftDR에 응답하여 TDI를 통해 입력되는 SI 신호와 내부 메모리에서 리드한 데이터(Test read) 중 하나를 선택하여 출력하는 멀티플렉서(530), 멀티플렉서(530)로부터 출력되는 신호를 clockDR의 상승 에지에서 입력받아 SO 신호로 출력하는 제1 플립플롭(DFF, 540)으로 이루어진다.FIG. 5B illustrates a cell constituting a data unit. The multiplexer 530 and the multiplexer 530 which select and output one of an SI signal input through TDI and data read from an internal memory in response to shiftDR. ) Is a first flip-flop (DFF, 540) which receives the signal output from the Rx at the rising edge of the clockDR and outputs the SO signal.
여기서, shiftDR(shift data register), clockDR(clock data register), updateDR(update data register) 및 RESETb는 전술한 도 2의 TCK, TMS, TRST 신호에 응답하여 테스트 데이터 레지스터(140)의 클럭 신호 및 제어 신호와 명령어 레지스터(150)의 클럭 신호 및 제어 신호를 출력하는 탭 컨트롤러에서 생성되어 출력되는 신호들로, 탭 컨트롤러의 구체 회로는 표준으로서 널리 알려져 있기에 상세한 설명을 생략한다.Here, shiftDR (shift data register), clockDR (clock data register), updateDR (update data register) and RESETb are clock signals and control of the test data register 140 in response to the TCK, TMS and TRST signals of FIG. Signals and signals generated and output by the tap controller for outputting the clock signal and the control signal of the instruction register 150, the specific circuit of the tap controller is well known as a standard, so a detailed description thereof will be omitted.
도 5a의 컨트롤부를 구성하는 셀은 내부 메모리를 제어하는 제어 신호를 저장하고 있고, 도 5b의 데이터부를 구성하는 셀은 내부 메모리로부터 리드한 데이터를 저장하고 있다. 즉, 외부에서 표준으로 제공되는 5개의 신호(TCK, TMS, TRST, TDI, TDO)를 이용하여 제어 레지스터의 컨트롤부를 순차적으로 라이트한 다음 내부 메모리를 리드하거나 라이트한다. 리드 시 내부 메모리의 내용을 제어 레지스터의 데이터부에 로드한 다음 순차적으로 리드한다. 이때, 탭 컨트롤러를 위한 스테이트 머신(state machine)을 사용하는데, 이 스테이트 머신은 외부 제어 신호(TRST, TMS, TCK)에 의해 제어된다. 도 6에 탭 컨트롤러를 위한 상세한 스테이트 머신이 도시되어 있다. 여기서, 각 스테이트에 대한 상세한 설명은 표준으로서 널리 알려져 있기에 생략하고, 도 6의 탭 컨트롤러 스테이트 머신을 참조하여, 내부 메모리를 테스트하기 위한 절차는 바운더리 테스트 회로부(도 1의 50)를 초기화하기 위해 리셋 상태로 만드는 제1 단계, 탭 컨트롤러의 Run-test/Idle 상태로 이동하는 제2 단계, 탭 컨트롤러의 Select-DR-Scan 상태로 이동하는 제3 단계, 바운더리 테스트 회로부의 명령어 레지스터(도 2의 150)에 내부 메모리를 테스트하는 명령어를 라이트한 후 Run-test/Idle 상태로 이동하는 제4 단계, 탭 컨트롤러의 Select-DR-Scan 상태로 이동하는 제5 단계, 내부 메모리 테스트를 위해 내부 메모리에 라이트할 수 있는 데이터 및 제어 신호를 사용자 테스트 데이터 레지스터(제어 레지스터, 도2의 120)에 라이트한 후 Run-test/Idle 상태로 이동하여 내부 메모리 라이트 동작을 수행하는 제6 단계, 탭 컨트롤러의 Select-DR-Scan 상태로 이동하는 제7 단계, 내부 메모리를 리드할 수 있는 정보를 사용자 테스트 데이터 레지스터(제어 레지스터)에 라이트한 후 Run-test/Idle 상태로 이동하여 내부 메모리 리드 동작을 수행하는 제8 단계, 탭 컨트롤러의 Select-DR-Scan 상태로 이동하는 제9 단계, 리드한 내부 메모리의 데이터를 스캔 체인을 이용하여 읽어내어 비교하고, 동시에 다음 항목의 내부 메모리를 리드/라이트할 수 있는 정보를 내부 제어 레지스터에 쓴 후 Run-test/Idle 상태로 이동하여 다음 항목의 내부 메모리 리드/라이트를 수행하는 제10 단계, 탭 컨트롤러의 Select-DR-Scan 상태로 이동하는 제11 단계 및 원하는 메모리 테스트가 끝난 후 바운더리 테스트 회로부의 명령어 레지스터(도 2의 150)에 다음번 수행할 명령어를 라이트하거나 또는 바운더리 스캔 동작을 끝내고 그 다음 Run-test/Idle 상태로 이동하는 제12 단계로 이루어진다.The cells constituting the control unit of FIG. 5A store control signals for controlling the internal memory, and the cells constituting the data unit of FIG. 5B store data read from the internal memory. That is, by using five signals (TCK, TMS, TRST, TDI, TDO) provided as an external standard, the control unit of the control register is sequentially written, and then the internal memory is read or written. At the time of reading, the contents of the internal memory are loaded into the data portion of the control register and then read sequentially. At this time, a state machine for the tap controller is used, which is controlled by external control signals TRST, TMS, and TCK. 6 shows a detailed state machine for the tap controller. Here, a detailed description of each state is omitted since it is widely known as a standard, and with reference to the tap controller state machine of FIG. 6, the procedure for testing the internal memory is reset to initialize the boundary test circuit unit (50 in FIG. 1). The first step to make the state, the second step to go to the Run-test / Idle state of the tap controller, the third step to go to the Select-DR-Scan state of the tap controller, the instruction register of the boundary test circuit (150 in FIG. 2) Write the command to test the internal memory and move to the Run-test / Idle state, the fifth step to the Select-DR-Scan state of the tap controller, and write to the internal memory for the internal memory test. Data and control signals can be written to the user test data register (control register, 120 in Fig. 2) and then moved to the Run-test / Idle state. The sixth step of performing the memory write operation, the seventh step of moving to the Select-DR-Scan state of the tap controller, the run-test after writing the information to read the internal memory to the user test data register (control register) In the eighth step of moving to the / Idle state to perform the internal memory read operation, the ninth step of moving to the Select-DR-Scan state of the tap controller, and reading and comparing the data of the read-in internal memory using a scan chain, At the same time, after writing information that can read / write the internal memory of the next item to the internal control register, it moves to the Run-test / Idle state to perform the internal memory read / write of the next item. Command to be next executed in the instruction register (150 in FIG. 2) of the boundary test circuit part after the eleventh step of moving to the DR-Scan state and the desired memory test is finished. Light, or to end the boundary-scan operation then comprises a step 12 to move to the Run-test / Idle state.
전술한 바와 같은 바운더리 스캔을 이용하여 칩 내부의 메모리를 테스트하기 위해 내부 메모리 블록은 도 7에 도시된 바와 같이 제어 레지스터에서 오는 제어 신호를 선택하기 위한 멀티플렉서가 추가되어 구성된다. 즉, 메모리 테스트 동작이 아닌 일반적인 메모리 노말(normal) 동작에서의 노말 메모리 제어 신호, 노말 어드레스, 노말 데이터와 내부 메모리 테스트 동작에서 사용자 테스트 데이터 레지스터로부터 입력되는 바운더리 스캔 제어 신호, 바운더리 스캔 어드레스, 바운더리 스캔 데이터 중 선택하여 내부 메모리 블록으로 보내는 선택 수단이 추가된다.In order to test the memory inside the chip using the boundary scan as described above, the internal memory block is configured by adding a multiplexer for selecting a control signal coming from the control register as shown in FIG. 7. That is, the normal memory control signal, the normal address, the normal data and the boundary scan control signal, the boundary scan address, and the boundary scan input from the user test data register in the normal data and the internal memory test operation instead of the memory test operation. Selection means for selecting from the data and sending it to the internal memory block is added.
본 발명의 기술 사상은 상기 바람직한 실시예에 따라 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며, 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술 분야의 통상의 전문가라면 본 발명의 기술 사상의 범위 내에서 다양한 실시예가 가능함을 이해할 수 있을 것이다.Although the technical spirit of the present invention has been described in detail according to the above-described preferred embodiment, it should be noted that the above-described embodiment is for the purpose of description and not of limitation. In addition, those skilled in the art will understand that various embodiments are possible within the scope of the technical idea of the present invention.
상기와 같이 이루어지는 본 발명은 바운더리 스캔을 이용하여 칩 내부의 메모리를 테스트함으로써 별도의 패드가 필요없고, 제어 또한 간단하여 내부 메모리의 효율적인 테스트가 가능하다.According to the present invention as described above, by using a boundary scan to test the memory inside the chip, a separate pad is not required, and the control is simple, so that efficient testing of the internal memory is possible.
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019980025241A KR100318445B1 (en) | 1998-06-30 | 1998-06-30 | Device and method for testing internal memory in semiconductor chip |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019980025241A KR100318445B1 (en) | 1998-06-30 | 1998-06-30 | Device and method for testing internal memory in semiconductor chip |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20000003933A true KR20000003933A (en) | 2000-01-25 |
KR100318445B1 KR100318445B1 (en) | 2002-02-19 |
Family
ID=19541727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019980025241A KR100318445B1 (en) | 1998-06-30 | 1998-06-30 | Device and method for testing internal memory in semiconductor chip |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100318445B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100491052B1 (en) * | 2002-11-27 | 2005-05-24 | 한국전자통신연구원 | Testing circuit for SoC and method of testing the SoC |
KR100515863B1 (en) * | 2001-09-28 | 2005-09-21 | 가부시끼가이샤 도시바 | Semiconductor integrated circuit |
US9576620B2 (en) | 2014-11-17 | 2017-02-21 | SK Hynix Inc. | Semiconductor apparatus and operating method thereof |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110071254A (en) | 2009-12-21 | 2011-06-29 | 삼성전자주식회사 | Test apparatus for system-on-chip and system-on-chip having the same |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS55128168A (en) * | 1979-03-28 | 1980-10-03 | Fujitsu Ltd | Testing method of memory in chip |
JP2513904B2 (en) * | 1990-06-12 | 1996-07-10 | 株式会社東芝 | Testability circuit |
US5029133A (en) * | 1990-08-30 | 1991-07-02 | Hewlett-Packard Company | VLSI chip having improved test access |
-
1998
- 1998-06-30 KR KR1019980025241A patent/KR100318445B1/en not_active IP Right Cessation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100515863B1 (en) * | 2001-09-28 | 2005-09-21 | 가부시끼가이샤 도시바 | Semiconductor integrated circuit |
KR100491052B1 (en) * | 2002-11-27 | 2005-05-24 | 한국전자통신연구원 | Testing circuit for SoC and method of testing the SoC |
US9576620B2 (en) | 2014-11-17 | 2017-02-21 | SK Hynix Inc. | Semiconductor apparatus and operating method thereof |
Also Published As
Publication number | Publication date |
---|---|
KR100318445B1 (en) | 2002-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100240662B1 (en) | Test apparatus for dram by jtag | |
US8140924B2 (en) | Selectively accessing test access ports in a multiple test access port environment | |
EP1651971B1 (en) | Test standard interfaces and architectures | |
US5768289A (en) | Dynamically controlling the number of boundary-scan cells in a boundary-scan path | |
US20040128596A1 (en) | Method and apparatus for testing embedded cores | |
KR100303618B1 (en) | Fully testable chip with self-timed memory array | |
TW411393B (en) | Boundary scan test apparatus for integrated circuits | |
US8621304B2 (en) | Built-in self-test system and method for an integrated circuit | |
US7447962B2 (en) | JTAG interface using existing I/O bus | |
US7284172B2 (en) | Access method for embedded JTAG TAP controller instruction registers | |
JP5610506B2 (en) | Asynchronous communication device using JTAG test data register | |
US10151794B2 (en) | Sleek serial interface for a wrapper boundary register (device and method) | |
US20060176745A1 (en) | Compilable memory structure and test methodology for both asic and foundry test environments | |
KR100318445B1 (en) | Device and method for testing internal memory in semiconductor chip | |
US6341092B1 (en) | Designing memory for testability to support scan capability in an asic design | |
JP5623035B2 (en) | Apparatus and method for extending the IEEE 1149.1 Joint Test Action Group standard to communicate with functional circuits of an integrated circuit | |
US20030172333A1 (en) | Built-in self test parallel JTAG serial chain architecture for reduced test vector size | |
JP5832535B2 (en) | Improved at-speed test access port operation | |
US11809740B1 (en) | Fast and flexible RAM reader and writer | |
US20030149926A1 (en) | Single scan chain in hierarchiacally bisted designs | |
KR20070060855A (en) | Integrated circuit device for test |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20051118 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |