KR20000076351A - Integrated circuit and method for testing the same - Google Patents

Integrated circuit and method for testing the same Download PDF

Info

Publication number
KR20000076351A
KR20000076351A KR1019997008452A KR19997008452A KR20000076351A KR 20000076351 A KR20000076351 A KR 20000076351A KR 1019997008452 A KR1019997008452 A KR 1019997008452A KR 19997008452 A KR19997008452 A KR 19997008452A KR 20000076351 A KR20000076351 A KR 20000076351A
Authority
KR
South Korea
Prior art keywords
test
rom
cpu
user
integrated circuit
Prior art date
Application number
KR1019997008452A
Other languages
Korean (ko)
Inventor
위르겐 놀레스
한스-하인리히 피만
Original Assignee
칼 하인쯔 호르닝어
지멘스 악티엔게젤샤프트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 칼 하인쯔 호르닝어, 지멘스 악티엔게젤샤프트 filed Critical 칼 하인쯔 호르닝어
Publication of KR20000076351A publication Critical patent/KR20000076351A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Microcomputers (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

본 발명은 CPU 및 사용자-ROM을 갖는 집적 회로에 관한 것으로, 상기 회로는 어드레스 범위가 사용자-ROM-어드레스 범위 내부에 있는 테스트-ROM, CPU-외부 RAM 및 스위칭 수단을 포함하는 것을 특징으로 하며, 상기 스위칭 수단은 다만 사용자-ROM에 대한 액세스 혹은 테스트-ROM에 대한 액세스만을 가능하게 하고 다만 사용자-ROM에 대한 액세스만을 허용하는 상태로 비가역적으로 변위될 수 있다.The present invention relates to an integrated circuit having a CPU and a user-ROM, wherein the circuit comprises a test-ROM, a CPU-external RAM and a switching means whose address range is within the user-ROM-address range, The switching means can be irreversibly displaced to only allow access to the user-ROM or access to the test-ROM and only allow access to the user-ROM.

Description

집적 회로 및 상기 회로의 테스트 방법 {INTEGRATED CIRCUIT AND METHOD FOR TESTING THE SAME}INTEGRATED CIRCUIT AND METHOD FOR TESTING THE SAME}

전화 카드 또는 진료 카드와 같은 제 1 칩 카드 세대는 실제로 다만 메모리 기능만을 실행할 수 있었다. 나중에 수의 비교 또는 의사 랜덤수(pseudo random number)의 형성과 같은 비교적 간단한 논리 기능이 부가되었다. 부분적으로 상당한 값이 저장되거나 또는 특히 신뢰할만한 데이터가 저장되는 은행 업무에서와 같이 안전과 관련된 분야에서는, 칩 카드의 사용이 증가함에 따라 복잡한 안전 기능, 암호화 기능 및/또는 확인 기능을 실행할 수 있는 마이크로 프로세서의 사용이 증가하고 있다. 상당한 비용을 요구하는 암호 작성(및 해독) 방법의 사용도 점차 증가하고 있다.First chip card generations such as phone cards or medical cards could actually only perform memory functions. Later, relatively simple logic functions such as comparison of numbers or formation of pseudo random numbers were added. In safety-related areas, such as in banking operations where some significant values are stored or particularly in the case of reliable data, micro-capable of performing complex safety functions, encryption functions and / or verification functions as the use of chip cards increases. The use of processors is increasing. The use of cryptography (and decryption) methods, which require significant costs, is also increasing.

근래의 칩 카드내에 포함된 반도체 칩은 비용이 많이 들고 복잡한 회로들을 포함하며, 이 회로들은 일반적으로 CPU, ROM, EEPROM (혹은 EPROM) 그리고 UART와 같은 부분적으로 추가의 모듈, 또는 공동 프로세서 및 상기 소자들을 연결시키는 버스와 함께 형성된다. CPU에는 대부분 스태틱 RAM으로서 형성된 적어도 하나의 RAM이 할당된다. 스태틱 RAM이 상당한 공간을 필요로 하기 때문에, 이 램은 대부분 크기가 매우 작고 다만 1 KByte 보다 적은 메모리 용량을 갖는다. 그밖에 칩 카드 제품의 특징으로서는, 이 제품이 외부 세계에 대한 직렬 인터페이스를 다만 1개 내지 2개만 가짐으로써 데이터 전송이 매우 느리게 이루어진다는 점이다. 내부에서는 8비트에 의한 병렬 처리가 이루어지기 때문에, CPU에 대한 어큐뮬레이터를 이용하여 소프트웨어 방식으로 제어되는 직렬/병렬 변환이 필요하고, 그럼으로써 상기 변환도 또한 매우 느리게 진행된다. 그러나 정상의 데이터 전송은 ISO-규정에 의해 규정되어 있고 다만 초당 소수 KBit로만 이루어지기 때문에, 이것은 정상 작동을 위해서, 말하자면 사용자가 예컨대 재충전 가능한 현금 거래인으로서 규정에 맞게 사용하도록 하기 위한 작동을 위해서는 아무런 문제가 없다.Semiconductor chips included in modern chip cards include expensive and complex circuits, which are generally partly additional modules, such as CPUs, ROMs, EEPROMs (or EPROMs) and UARTs, or coprocessors and devices. It is formed with a bus connecting them. The CPU is allocated at least one RAM, which is formed mostly as static RAM. Since static RAM requires significant space, most of these RAMs are very small and have less than 1 KByte of memory. Another feature of chip card products is that they have only one or two serial interfaces to the outside world, making data transfer very slow. Since 8-bit parallel processing is performed internally, serial / parallel conversion, which is controlled in a software manner using an accumulator to the CPU, is required, so that the conversion is also very slow. However, since normal data transfer is specified by ISO regulations and only consists of a few kilobytes per second, this is not necessary for normal operation, i.e. for operation to ensure that the user uses it in compliance, for example as a rechargeable cash trader. No problem.

그러나 기술된 복잡한 집적 회로는 충분한 품질로 고객에게 인도되어야 하기 때문에, 결과적으로 폭넓은 테스트가 필수적이다.However, the complex integrated circuits described must be delivered to customers with sufficient quality, and consequently extensive testing is essential.

상기와 같은 제품의 테스트는 자기 테스트-소프트웨어에 의해 실행된다. 그렇기 때문에 칩 카드 제품은 ROM으로서 실행되는 테스트 메모리를 포함한다. 상기 테스트 메모리는 자기 테스트-소프트웨어를 포함하며, 이 소프트웨어에 의해서 파워-온-리셋 후에 칩의 여러 부분들이 테스트될 수 있다. 자기 테스트-소프트웨어는 테스트 벡터를 통해 호출되는 상이한 테스트 루틴으로 이루어진다. 이 테스트 벡터는 IO-포트를 통해 입력된다. 테스트 메모리의 크기는 제한되어 있고 상이한 제품 내부에서는 변동되기 때문에, 상기 메모리는 일반적으로 모든 테스트 루틴을 포함할 수는 없다. 그렇기 때문에 나머지 테스트 루틴은 EEPROM 내부로 재충전되어 그곳으로부터 실행되어야 한다. 이를 위해서는, 고유의 테스트와 비교해서 훨씬 더 오랫동안 지속되는 다수의 프로그래밍 과정 및 소거 과정이 필요하다.Testing of such products is carried out by magnetic test-software. As such, the chip card product includes test memory that is executed as a ROM. The test memory includes magnetic test-software, whereby various parts of the chip can be tested after a power-on-reset. Magnetic test-software consists of different test routines that are called via test vectors. This test vector is input through the IO-port. Because the size of the test memory is limited and varies within different products, the memory generally cannot contain all test routines. As such, the rest of the test routine must be reloaded into the EEPROM and executed from there. This requires a large number of programming and erasing processes that last much longer than native tests.

ROM으로 실행된 테스트 메모리는 반도체-칩상에 존재하는 ROM의 구성 부품이며, 상기 ROM은 또한 작동 장치와 같은 사용자 프로그램, 및 EEPROM-기록 프로그램 및 소거 프로그램과 같이 자주 사용되는 서브 프로그램을 포함한다. 테스트 메모리 영역이 ROM의 어드레스 공간의 일부분을 요구함으로써, 결과적으로 테스트가 실행된 후에 ROM의 어드레스 영역에 대한 액세스를 정해진 조치에 의해서 저지하려고 하는 경우에도, 상기 어드레스 영역에서는 오류적인 또는 의도적인 및 악용적인 절약이 가능해진다.The test memory executed by the ROM is a component part of the ROM present on the semiconductor chip, and the ROM also includes a user program such as an operating device, and a frequently used subprogram such as an EEPROM-write program and an erase program. Error or intentional and exploitation in the address area, even if the test memory area requires a portion of the address space of the ROM, consequently attempting to deny access to the address area of the ROM by a prescribed measure after the test is executed. Savings are possible.

지금까지의 실현은, 한편으로는 지나치게 느리기 때문에 결과적으로 테스트가 지나치게 길게 지속되며, 다른 한편으로는 테스트 후에도 테스트 루틴에 대한 액세스를 가능하게 할 수 있다는 단점을 갖는데, 그 이유는 상기 테스트 루틴이 ROM 내부에 거의 고정적으로 설치되어 있거나 혹은 EEPROM내에서 가능한 방식으로 비휘발성으로 칩상에 남겨질 수 있기 때문이다.To date, the realization has the disadvantage that on the one hand it is too slow and consequently the test lasts too long and on the other hand it is possible to enable access to the test routine even after the test, because the test routine is a ROM Either it is fixed almost internally or can be left on the chip in a non-volatile manner in a way that is possible within the EEPROM.

본 발명은 CPU, 사용자-ROM 및 상기 소자들을 연결시키는 버스를 포함하는 집적 회로 및 상기 회로의 테스트 방법에 관한 것이다.The present invention relates to an integrated circuit comprising a CPU, a user-ROM and a bus connecting the elements and a test method of the circuit.

도 1은 본 발명에 따른 집적 회로의 블록 회로도이며,1 is a block circuit diagram of an integrated circuit according to the present invention,

도 2는 본 발명의 바람직한 실시예의 상세한 회로도이다.2 is a detailed circuit diagram of a preferred embodiment of the present invention.

본 발명의 목적은, 신속한 테스트를 가능하게 하고 악용에 대한 보호 정도를 높여줄 수 있는 회로 장치를 제공하는 것이다.It is an object of the present invention to provide a circuit arrangement that can enable rapid testing and increase the degree of protection against abuse.

상기 목적은, 적어도 하나의 CPU, 사용자-ROM, 테스트-ROM 및 CPU-내부 RAM을 포함하는 집적 회로에 의해서 달성된다. 이 경우 테스트-ROM의 어드레스 공간은 사용자-ROM의 어드레스 공간 내부에 있으며, 이 때 본 발명에 따른 방법에서는 다만 사용자-ROM 혹은 테스트-ROM에 대한 액세스만을 가능하게 하는 스위칭 수단이 제공된다. 바람직한 실시예에서 스위칭 수단은, 다만 사용자-ROM에 대한 액세스만을 허용하는 상태로 비가역적으로 변위될 수 있다. 이와 같은 방식으로 테스트 단계의 종료 후에는, 테스트-ROM의 이전의 어드레스 공간이 더이상 점유되지 않으면서 테스트-ROM이 차단될 수 있다. 그에 따라, 차단된 메모리 영역이 배치될 수 있는 사용되는 어드레스 영역내에는 빈 공간이 존재하지 않게 되어 공격자가 이곳을 이용할 수 없게 된다.This object is achieved by an integrated circuit comprising at least one CPU, a user-ROM, a test-ROM and a CPU-internal RAM. In this case, the address space of the test-ROM is inside the address space of the user-ROM, and in this case, the method according to the present invention is provided with a switching means enabling only access to the user-ROM or the test-ROM. In a preferred embodiment the switching means can be irreversibly displaced with only allowing access to the user-ROM. In this way, after the end of the test phase, the test-ROM may be blocked while the previous address space of the test-ROM is no longer occupied. As a result, there is no empty space in the used address area where the blocked memory area can be placed, and the attacker cannot use it.

본 발명의 개선예에서 테스트-ROM 내부에는 다만 테스트를 스타트하기 위해 절대적으로 필요한 테스트 개시 프로그램만이 존재한다. 그에 따라 고유의 테스트 루틴은 CPU-외부의 추가 RAM, 소위 X-RAM 내부로 기록 입력된 다음에 그곳으로부터 실행된다.In a refinement of the invention there are only test start programs which are absolutely necessary to start a test inside the test-ROM. Thus, the unique test routine is written into the additional RAM outside the CPU, so-called X-RAM, and then executed there.

본 발명에 따른 제조 방법은 청구항 7에서 설명된다. 다만 X-RAM내에서만 테스트 루틴을 저장하는 것은, 테스트 후에 공급 전압의 차단에 의해서 테스트 루틴이 소거될 수 있다는 장점을 가지며, 그 이유는 X-RAM이 휘발성이기 때문이다.The manufacturing method according to the invention is described in claim 7. However, storing the test routine only in the X-RAM has the advantage that the test routine can be erased by blocking the supply voltage after the test, because the X-RAM is volatile.

칩 카드에 적용하는 경우에는 일반적으로 다만 직렬의 입력 포트/출력 포트만 사용되는데, 그 이유는 그곳에는 다만 외부 세계와의 통신을 위한 제한된 개수의 콘택만이 제공되기 때문이다. 직렬/병렬 변환 또는 병렬/직렬 변환은 CPU에 의해 제어되는 어큐뮬레이터가 담당한다. 이와 같은 변환은 소프트웨어 방식으로 제어되며 그에 상응하게 느리다. 따라서 본 발명의 개선예에서는 활성 가능한 및 활성 불가능한 시프트 레지스터가 제공되는데, 이 레지스터는 입력 포트/출력 포트를 추가로 내부 버스와 연결시킨다. 그에 따라 테스트 루틴은 훨씬 더 신속하게 X-RAM 내부로 기록 입력된다.When applied to a chip card, only serial input ports / output ports are generally used, since only a limited number of contacts are provided there for communication with the outside world. Serial / parallel conversion or parallel / serial conversion is handled by an accumulator controlled by the CPU. This conversion is software controlled and correspondingly slow. Thus an improvement of the present invention provides an enable and disable shift register, which further connects the input port / output port with an internal bus. As a result, the test routine is written into the X-RAM much faster.

본 발명의 추가 실시예에서 상기 시프트 레지스터는, 테스트 동안 나타나는 모니터링용 신호를 외부로 테스트 장치 내부로 이송하는 데 이용된다. 그럼으로써 테스트가 더 안전하고 더 신속하게 이루어질 수 있다. 이 경우에는 상기 신호를 전송 전에 암호화하는 것이 바람직한데, 이와 같은 암호화는 바람직한 방식으로 시프트 레지스터를 예컨대 XOR-게이트에 의해 선형 또는 비선형으로 백-커플링함으로써 이루어질 수 있다. 그러나 다른 게이트 기능들도 가능하다.In a further embodiment of the invention, the shift register is used to transfer the monitoring signal appearing during the test to the inside of the test apparatus. This makes testing safer and faster. In this case, it is desirable to encrypt the signal before transmission, which encryption can be done in a preferred manner by back-coupling the shift register, eg linearly or nonlinearly, by means of an XOR-gate. However, other gate functions are possible.

본 발명은 도면을 참조하는 실시예를 참고로하여 하기에서 자세히 설명된다.The invention is described in detail below with reference to the embodiments with reference to the drawings.

도 1에 따라 CPU는 그것에 속하는 RAM, 추가의 X-RAM 및 비휘발성 EEPROM과 함께 버스를 통해 서로 결합된다. 직렬 입력 포트/출력 포트(I/O)는 버스를 통해 직렬/병렬-변환을 위해서도 이용되는 CPU내에 포함된 (도시되지 않은) 어큐뮬레이터와 연결된다. 주로 사용자 소프트웨어가 포함되어 있는 ROM 및 테스트-ROM은 멀티플렉서일 수 있는 스위칭 수단(MUX)을 통해 마찬가지로 버스와 연결된다. 스위칭 수단(MUX)은 예를 들어 CPU에 의해 제어되는 입력 포트/출력 포트(I/O)를 통해 트리거링될 수 있으며, 이러한 동작은 화살표(St)로 지시된다.According to FIG. 1, the CPUs are coupled to each other via a bus with RAMs, additional X-RAMs and non-volatile EEPROMs belonging to it. The serial input port / output port (I / O) is connected via the bus to an accumulator (not shown) contained within the CPU that is also used for serial / parallel-to-transformation. ROMs and test-ROMs containing mainly user software are likewise connected to the bus via a switching means (MUX), which can be a multiplexer. The switching means MUX may for example be triggered via an input port / output port I / O controlled by the CPU, this operation being indicated by an arrow St.

본 발명에 따른 방법에서 스위칭 수단(MUX)을 통해서는 언제나 다만 ROM 또는 테스트-ROM만 버스와 연결되어 어드레싱될 수 있다. ROM을 어드레싱할 수 있는 어드레스는 테스트-ROM을 어드레싱할 수 있는 어드레스와 적어도 부분적으로 동일하다. 따라서, 어드레스를 참조하는 것만으로는 ROM 또는 테스트-ROM이 어드레싱되었는지의 여부를 검출할 수가 없다.In the method according to the invention, only the ROM or the test-ROM can be addressed in connection with the bus at any time via the switching means (MUX). The address addressable to the ROM is at least partially identical to the address addressable to the test-ROM. Therefore, only referring to the address cannot detect whether the ROM or the test-ROM is addressed.

버스가 스위칭 수단(MUX)을 통해 ROM과 비가역적으로 연결될 수 있음으로써, 결과적으로 테스트 단계가 종료된 후에는 테스트-ROM이 버스로부터 완전히 분리될 수 있게 된다.The bus can be irreversibly connected to the ROM via the switching means MUX, so that the test-ROM can be completely disconnected from the bus after the test phase has ended.

테스트-ROM내에는 바람직하게 테스트를 스타트하기 위해 필요한 단 하나의 테스트 개시 프로그램이 저장된다. 이 프로그램은 파워-온-리셋 후에 호출되기 때문에, 테스트 루틴은 외부로부터 X-RAM 내부로 채워져서 그곳으로부터 실행될 수 있다. 테스트 루틴을 X-RAM 내부에 기록하는 것은, 이 과정이 한편으로는 훨씬 더 신속하게 진행되고 다른 한편으로는 다만 휘발성이기 때문에 결과적으로 X-RAM 내부에 있는 테스트 루틴이 예를 들어 배전 전압의 차단에 의해 신속하게 재차 소거될 수 있다는 장점을 갖는다. 테스트 종료 후에 스위칭 수단(MUX)은, 버스를 통한 테스트-ROM에 대한 액세스를 불가능하게 하는 상태로 비가역적으로 변위된다.The test-ROM preferably stores only one test initiation program needed to start the test. Since this program is called after a power-on-reset, the test routine can be filled from the outside into the X-RAM and run from there. Writing test routines into the X-RAM is a much faster process on the one hand and volatile on the other hand, so that the test routines inside the X-RAM are interrupted, for example, in the distribution voltage. Can be quickly erased again. After the end of the test the switching means MUX is irreversibly displaced in a state that disables access to the test-ROM via the bus.

도 2는 본 발명에 따른 집적 회로의 바람직한 개선예를 좀더 자세하게 보여준다. 입력 포트/출력 포트(I/O)는 이미 언급한 바와 같이 어드레스 디코더를 거쳐 SFR(Special Function Register)-어드레스에 의해서 버스를 통해 버스에 병렬 접속된 CPU에 의해서 어드레싱될 수 있다. 입력 포트/출력 포트(I/O)가 SFR-어드레스를 통해 트리거링되면, 입력 및 출력되는 데이터는 버스를 통해 CPU로 또는 CPU로부터 이송된다. CPU내에서는, 어큐뮬레이터에 의해 프로그램 제어되어 입력 또는 출력되는 데이터의 직렬/병렬 변환 또는 병렬/직렬 변환이 이루어질 수 있다.2 shows in more detail a preferred refinement of the integrated circuit according to the invention. The input port / output port (I / O), as already mentioned, can be addressed by a CPU connected in parallel to the bus via a bus by means of a special function register (SFR) -address via an address decoder. When an input port / output port (I / O) is triggered through the SFR-address, the input and output data is transferred over the bus to or from the CPU. In the CPU, serial / parallel conversion or parallel / serial conversion of data input and output by program control by the accumulator may be performed.

본 발명에 따른 방법에서는 상기 전송 경로에 대해 병렬로 시프트 레지스터(SR)가 접속되며, 이 레지스터에 의해 테스트 단계 동안 신속한 직렬/병렬 변환 또는 병렬/직렬 변환이 이루어질 수 있다. 시프트 레지스터(SR)는 CPU에 의해 마찬가지로 SFR-어드레스를 통해 응답되고 판독된다. 이 목적을 위해 상응하는 어드레스 디코더(SFR)가 시프트 레지스터(SR)에 제공된다. 시프트 레지스터는 상기 SFR-어드레스를 통해 CPU에 의해서 또한 활성화되고 비활성화될 수 있다.In the method according to the invention, a shift register SR is connected in parallel to the transmission path, by which a rapid serial / parallel conversion or parallel / serial conversion can be made during the test phase. The shift register SR is likewise responded and read through the SFR-address by the CPU. For this purpose a corresponding address decoder SFR is provided to the shift register SR. The shift register can also be activated and deactivated by the CPU via the SFR-address.

그럼으로써, 변환될 워드가 시프트 레지스터(SR) 내부로 언제 기록 입력되는지가 검출될 수 있으며, 정보를 시프트 레지스터(SR) 내부로 기록 입력시키며 클럭(C1)을 계수하여 각각 워드에 따라 신호를 CPU로 송출하는 계수기(Z)가 제공되며, 상기 CPU는 X-RAM 내부로의 기록 입력을 제어한다.Thus, when the word to be converted is written into the shift register SR can be detected, the information is written into the shift register SR, the clock C1 is counted, and a signal is generated according to each word of the CPU. Counter Z is provided, and the CPU controls write input into the X-RAM.

CPU는 집적 회로내에서 통상적으로 8비트로 병렬 처리될 수 있기 때문에, 원칙적으로는 8비트 길이의 시프트 레지스터로 충분하다. 데이터 흐름을 동기화하기 위해서는 소수의 스타트 비트로 충분해야 한다. 각각 계수기(Z)에 의해 계수된 8클럭 후에는, 시프트 레지스터(SR)의 내용이 병렬로 버스에 제공됨으로써, 기록 입력시에 직렬/병렬 변환이 이루어진다.Since a CPU can typically be parallelized in 8 bits in an integrated circuit, an 8 bit long shift register is sufficient in principle. A few start bits should be sufficient to synchronize the data flow. After 8 clocks respectively counted by the counter Z, the contents of the shift register SR are provided to the bus in parallel, thereby performing serial / parallel conversion at the time of write input.

그러나 또한 판독 입력될 각각의 바이트 전에 스타트 비트를 송출하는 것도 가능하기 때문에, 퍼스널 컴퓨터를 테스터로서 사용하는 것이 간략화된다. 그렇게 되면 9비트 길이의 시프트 레지스터가 필요하다. 그밖에 데이터 전송율은 더 작을 것이다.However, since it is also possible to send a start bit before each byte to be read in and input, using a personal computer as a tester is simplified. This requires a 9-bit long shift register. Otherwise the data rate will be smaller.

본 발명은 원칙적으로 CPU에 의해 처리될 수 있는 워드 폭이 임의인 경우에는 특히 16비트-중앙 유닛 및 32비트-중앙 유닛에도 적용될 수 있다. 그 경우에는 시프트 레지스터가 다만 상응하는 길이를 가져야 한다.The invention can in principle also be applied to 16-bit central units and 32-bit central units, in particular in the case where the word width that can be processed by the CPU is arbitrary. In that case, the shift register should just have a corresponding length.

테스트의 가능한 진행은 하기와 같이 진행된다: 먼저, 데이터 전송의 시작을 지시하기 위하여 테스터가 논리 "0"을 송신한다. 그에 의해, 각각 8클럭 후에 1 바이트가 수집될 수 있다는 사실을 지시하는 계수기(Z)가 릴리스된다. CPU는 이것을 특수한 신호에 의해서 경험할 수 있지만, 상기 시간격을 소프트 웨어에 의해서 세팅하는 것은 가급적 정확하게 가능하다. 그전에, CPU가 전송의 시작을 기다리면서 대기하는 장소인 대기 루프내에서 X-RAM의 어드레스 계수기가 그것의 처음으로 세팅된다. 전송 후에는 먼저 테스트 루틴이 호출되고, 그 다음에 CPU가 재차 수신-대기 루프내로 점프된다.The possible progression of the test proceeds as follows: First, the tester sends a logic "0" to indicate the start of data transfer. Thereby, the counter Z is released indicating that one byte can be collected after eight clocks each. The CPU can experience this with a special signal, but it is possible to set the time interval by software as accurately as possible. Before that, the address counter of the X-RAM is set to its beginning in a wait loop, where the CPU waits for the start of the transfer. After the transfer, the test routine is called first, and then the CPU jumps back into the receive-wait loop.

2가지 전송 사이의 휴지기 동안에는 계수기(Z)를 계속해서 작동시키는 것이 가능하다. 그럼으로써 내부 신호는 8클럭 동안 예컨대 XOR과 같은 임의의 기능을 통해서 시프트 레지스터(SR)의 내용을 갖는 시스템 클럭(C1)과 결합되어(수집 단계) 다음 8클럭 동안 송출된다(송출 단계). 이와 같은 결합은 시프트 레지스터(SR)로부터 XOR-게이트까지 이중 화살표로 지시된다. 실제로 시프트 레지스터(SR)의 출력 신호는 XOR을 통해 상기 레지스터의 입력에 백-커플링된다. XOR은 암호화의 목적으로 CPU에 의해 제어되어 스위칭-온 및 스위치-오프될 수 있다. 이것은 화살표(Pf)로 지시된다. 각각의 수집 단계마다 이 과정은 스타트 비트에 의해서 중단될 수 있기 때문에, 결과적으로 새로운 데이터 흐름이 수신될 수 있다. 수집 단계 동안 시프트 레지스터(SR)의 내용과 내부 신호의 연결은 2가지 이유를 갖는다. 한편으로는 그에 의해서 수집 단계에서 연결되는 모든 8개의 값이 그것의 정확성에 대해 체크될 수 있으며; 다른 한편으로는 그에 의해서 오리지널 신호가 외부 세계로 계속 전달되지 않게 됨으로써 잠재적인 공격자를 위한 상기 정보의 악용이 불가능해진다.It is possible to continue operating the counter Z during the rest period between the two transmissions. Thereby the internal signal is combined with the system clock C1 having the contents of the shift register SR for eight clocks, for example, through an arbitrary function such as XOR (collecting step) and sent out for the next eight clocks (sending step). This combination is indicated by a double arrow from the shift register SR to the XOR-gate. In practice, the output signal of the shift register SR is back-coupled to the input of the register via XOR. XOR can be controlled by the CPU and switched on and off for encryption purposes. This is indicated by the arrow Pf. For each acquisition step this process can be interrupted by the start bit, so that a new data flow can be received as a result. The connection of the contents of the shift register SR and the internal signal during the acquisition phase has two reasons. On the one hand all eight values linked by the collection stage can thereby be checked for its accuracy; On the other hand, the original signal is no longer transmitted to the outside world, making it impossible to exploit the information for potential attackers.

이와 같은 바람직한 개선예는 테스트의 만족감을 높여주며, 관찰된 내부 신호에서 결함이 인식될 수 있는 경우에는 결함있는 칩을 보다 일찍 인식하도록 해준다.This preferred refinement improves the satisfaction of the test and allows earlier recognition of the defective chip if a defect can be recognized in the observed internal signal.

Claims (8)

CPU, 사용자-ROM 및 상기 소자들을 연결시키는 버스를 포함하는 집적 회로에 있어서,An integrated circuit comprising a CPU, a user-ROM and a bus connecting the elements, 마찬가지로 버스와 연결되고 어드레스 공간이 사용자-ROM-어드레스 공간 내부에 있는 테스트-ROM, 버스와 연결된 CPU-외부 RAM(XRAM) 및 다만 사용자-ROM 혹은 테스트-ROM에 대한 액세스만을 가능하게 하는 스위칭 수단(MUX)을 포함하는 것을 특징으로 하는 집적 회로.Similarly, a test-ROM connected to the bus and whose address space is inside the user-ROM address space, a CPU-external RAM (XRAM) connected to the bus, and a switching means that only allow access to the user-ROM or test-ROM ( MUX). CPU, 사용자-ROM 및 상기 소자들을 연결시키는 버스를 포함하며, 집적 회로에 대한 액세스가 다만 적어도 하나의 직렬 입력 포트/출력 포트(I/O)를 통해서만 가능해지며, 입력되는 데이터의 내부 직렬/병렬 변환 및 출력되는 데이터의 병렬/직렬 변환이 CPU에 의해 프로그램 제어되어 이루어지도록 구성된 집적 회로에 있어서,It includes a CPU, a user-ROM, and a bus that connects the devices, and access to an integrated circuit is only possible through at least one serial input port / output port (I / O), and internal serial / parallel of the input data. In an integrated circuit configured to perform program-controlled parallel / serial conversion of data to be converted and outputted by the CPU, 마찬가지로 버스와 연결되고 어드레스 공간이 사용자-ROM-어드레스 공간 내부에 있는 테스트-ROM, CPU-외부 RAM(XRAM) 및 다만 사용자-ROM 또는 테스트-ROM에 대한 액세스만을 가능하게 하는 스위칭 수단(MUX)을 포함하는 것을 특징으로 하는 집적 회로.Similarly, a test-ROM, a CPU-external RAM (XRAM), which is connected to the bus and whose address space is inside the user-ROM-address space, and a switching means (MUX) which only allows access to the user-ROM or test-ROM Integrated circuit comprising a. 제 1항 또는 제 2항에 있어서,The method according to claim 1 or 2, 상기 스위칭 수단(MUX)이 다만 사용자-ROM에 대한 액세스만을 허용하는 상태로 비가역적으로 변위될 수 있는 것을 특징으로 하는 집적 회로.And said switching means (MUX) can be irreversibly displaced with only allowing access to the user-ROM. 제 2항 또는 제 3항에 있어서,The method of claim 2 or 3, 직렬/병렬 변환하기 위한 직렬 입력 포트/츨력 포트(I/O)가 활성 가능한 및 비활성 가능한 시프트 레지스터(SR)를 통해 내부 버스와 추가로 연결될 수 있는 것을 특징으로 하는 집적 회로.An integrated circuit, characterized in that a serial input port / output port (I / O) for serial / parallel conversion can be further connected to an internal bus via an enable and disable shift register (SR). 제 4항에 있어서,The method of claim 4, wherein 시프트 레지스터(SR)의 비활성화가 비가역적으로 실행될 수 있는 것을 특징으로 하는 집적 회로.And the deactivation of the shift register SR can be performed irreversibly. 제 4항에 있어서,The method of claim 4, wherein 상기 시프트 레지스터(SR)가 논리 게이트(XOR)를 통해 백-커플링되는 것을 특징으로 하는 집적 회로.The shift register (SR) is back-coupled through a logic gate (XOR). CPU, 테스트-ROM 및 CPU-외부 RAM을 포함하는 집적 회로를 테스트하기 위한 방법으로서, 상기 방법이A method for testing an integrated circuit comprising a CPU, a test-ROM, and a CPU-external RAM, the method comprising - 파워-온-리셋 후에 테스트-ROM내에 설정된 테스트 개시 프로그램을 작동시키는 단계,Operating a test start program set in the test-ROM after a power-on-reset, - 상기 테스트 개시 프로그램에 의해 제어되어 테스트 루틴을 RAM 내부에 채우고 그곳으로부터 CPU에 의해서 실행하는 단계, 및Controlled by the test initiation program to fill test routines into RAM and to execute there from the CPU, and - 테스트 종료 후에 RAM내에 있는 테스트 루틴을 소거하고, 테스트-ROM내에 설정된 테스트 개시 프로그램의 실행을 비가역적으로 저지하는 단계를 포함하는, 집적 회로의 테스트 방법.-Erasing the test routine in the RAM after the end of the test and irreversibly inhibiting the execution of the test start program set in the test-ROM. 제 7항에 있어서,The method of claim 7, wherein 테스트 루틴을 직렬 입력 포트/출력 포트(I/O) 및 접속 가능한 직렬/병렬-변환기를 통해 RAM 내부에 기록 입력하는 것을 특징으로 하는 방법.And writing test routines into RAM through serial input port / output port (I / O) and connectable serial / parallel-converter.
KR1019997008452A 1997-03-19 1998-03-02 Integrated circuit and method for testing the same KR20000076351A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19711478.4 1997-03-19
DE19711478A DE19711478A1 (en) 1997-03-19 1997-03-19 Integrated circuit and method for testing the integrated circuit

Publications (1)

Publication Number Publication Date
KR20000076351A true KR20000076351A (en) 2000-12-26

Family

ID=7823916

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019997008452A KR20000076351A (en) 1997-03-19 1998-03-02 Integrated circuit and method for testing the same

Country Status (7)

Country Link
EP (1) EP0968436A2 (en)
JP (1) JP2001527669A (en)
KR (1) KR20000076351A (en)
CN (1) CN1251183A (en)
BR (1) BR9808381A (en)
DE (1) DE19711478A1 (en)
WO (1) WO1998041880A2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3198997B2 (en) * 1997-08-28 2001-08-13 日本電気株式会社 Microcomputer and burn-in test method thereof
EP0992809A1 (en) 1998-09-28 2000-04-12 Siemens Aktiengesellschaft Circuit with deactivatable scan path
DE10101234A1 (en) * 2001-01-11 2002-07-18 Giesecke & Devrient Gmbh Testing non-volatile memory involves producing test pattern, write access to memory with test pattern, read access to acquire test result and comparison with test pattern for agreement
US7325181B2 (en) 2003-02-24 2008-01-29 Stmicroelectronics S.A. Method and device for selecting the operating mode of an integrated circuit
CN1829127B (en) * 2006-04-20 2011-06-29 北京星河亮点通信软件有限责任公司 Method for building communication terminal test instrumentation control platform based on microkernel
CN102592683B (en) * 2012-02-23 2014-12-10 苏州华芯微电子股份有限公司 Method for entering chip test mode and related device
CN103021471B (en) * 2012-12-24 2016-08-03 上海新储集成电路有限公司 A kind of memorizer and storage method thereof

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0758502B2 (en) * 1988-06-30 1995-06-21 三菱電機株式会社 IC card
JP3125070B2 (en) * 1990-12-14 2001-01-15 三菱電機株式会社 IC card
JPH06236447A (en) * 1993-02-09 1994-08-23 Mitsubishi Electric Corp Microcomputer for ic card

Also Published As

Publication number Publication date
CN1251183A (en) 2000-04-19
WO1998041880A3 (en) 1999-01-14
JP2001527669A (en) 2001-12-25
BR9808381A (en) 2000-05-23
DE19711478A1 (en) 1998-10-01
EP0968436A2 (en) 2000-01-05
WO1998041880A2 (en) 1998-09-24

Similar Documents

Publication Publication Date Title
US5495593A (en) Microcontroller device having remotely programmable EPROM and method for programming
JPH04264643A (en) Integrated circuit having improved access safety device
US5742616A (en) System and method testing computer memories
US7730545B2 (en) Test access control for secure integrated circuits
US7117352B1 (en) Debug port disable mechanism
KR910007037B1 (en) Smart card and method of loading application program an it
JPS6270993A (en) Portable data carrier for storing and processing data
US20030014643A1 (en) Electronic apparatus and debug authorization method
JP2006505022A (en) Integrated circuit security and method
KR19980071365A (en) Memory access control circuit
KR20010072036A (en) Integrated circuit comprising a self-test device for executing a self-test of the integrated circuit
US6349397B1 (en) Signal processing apparatus having non-volatile memory and programming method of the non-volatile memory
JP2000122931A (en) Digital integrated circuit
US6499092B1 (en) Method and apparatus for performing access censorship in a data processing system
US5159183A (en) Ic card
US7447916B2 (en) Blocking of the operation of an integrated circuit
US7036002B1 (en) System and method for using multiple working memories to improve microprocessor security
US5841786A (en) Testing of memory content
KR20000076351A (en) Integrated circuit and method for testing the same
US5062075A (en) Microcomputer having security memory using test and destruction routines
KR0139494B1 (en) Smart card data communication device and method
KR20020082799A (en) Single-chip microcomputer with dynamic burn-in test function and dynamic burn-in testing method therefor
US20080028263A1 (en) Apparatus and method for protection of JTAG scan chains in a microprocessor
US7020730B2 (en) Method for operating a microprocessor configuration and microprocessor configuration
US7340575B2 (en) Method and a circuit for controlling access to the content of a memory integrated with a microprocessor

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid