KR100399068B1 - 마이크로 컨트롤러 유닛의 효율적인 테스트 방법 - Google Patents

마이크로 컨트롤러 유닛의 효율적인 테스트 방법 Download PDF

Info

Publication number
KR100399068B1
KR100399068B1 KR10-2001-0022417A KR20010022417A KR100399068B1 KR 100399068 B1 KR100399068 B1 KR 100399068B1 KR 20010022417 A KR20010022417 A KR 20010022417A KR 100399068 B1 KR100399068 B1 KR 100399068B1
Authority
KR
South Korea
Prior art keywords
input
address
patching
output port
command
Prior art date
Application number
KR10-2001-0022417A
Other languages
English (en)
Other versions
KR20020082691A (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 주식회사 하이닉스반도체
Priority to KR10-2001-0022417A priority Critical patent/KR100399068B1/ko
Publication of KR20020082691A publication Critical patent/KR20020082691A/ko
Application granted granted Critical
Publication of KR100399068B1 publication Critical patent/KR100399068B1/ko

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
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • 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
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30047Prefetch instructions; cache control instructions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

본 발명은 마이크로 컨트롤러 유닛의 테스트 시간을 감소시키는 방법에 관한것으로 이를 위해 본 발명은 한번의 명령어를 패치하기 위한 상위어드레스 및 하위 어드레스를 상기 명령어가 입출력되는 하나의 입출력 포트를 이용하여 출력하고, 하나의 머신사이클 내에서 인접한 어드레스에 대응하는 명령어를 패치하여 실행하는 마이크로 컨트롤러 유닛을 테스트 하는 방법에 있어서, 이전단계에 출력된 어드레스에 의해 제1 명령어 셋을 상기 입출력 포트를 이용하여 패치하는 제1 단계; 제2 명령어를 패치하기 위한 하위 어드레스를 상기 입출력 포트를 이용하여 외부로 전송하는 제2 단계; 상기 제1 명령어에 의해 실행된 결과를 상기 입출력 포트를 이용하여 외부 메모리로 출력하는 제3 단계; 상기 제2 단계에서 지정된 제2 명령어를 상기 입출력 포트를 이용하여 패치하는 제4 단계; 제3 명령어를 패치하기 위한 상위 어드레스를 외부 메모리로 전송하는 제5 단계; 및 상기 제2 명령어의 실행된 결과를 상기 입출력 포트로 출력하는 제6 단계를 포함하며 상기 제1 단계 내지 제6단계가 하나의 머신사이클을 이루는 마이크로 컨트롤러 유닛의 테스트 방법을 제공한다.

Description

마이크로 컨트롤러 유닛의 효율적인 테스트 방법{Effective test method of Micro controller unit}
본 발명은 마이크로 컨트롤러 유닛의 테스트 방법에 관한 것으로, 특히 마이크로 컨트롤서 유닛의 테스트 시간을 감소시키는 방법에 관한것이다.
일반적으로, 마이크로 컨트롤러 유닛(MCU)은 제품 개발이 끝난후에 테스트 하는 과정에서 많은 시간이 소요되어, 상기 마이크로 컨트롤러 유닛(MCU)가 개발이 완료되어 상용화 되었을때의 가격의 약 10 퍼센트를 차지하게 된다.
마이크로 컨트롤러 유닛(MCU)의 테스트 과정은, 마이크로 컨트롤러 유닛(MCU)를 생산하기 전에 컴퓨터 프로그램을 통하여 시뮬레이션을 하고 이때 입력신호에 응답하는 출력값을 저장하여 두었다가 실제 마이크로 컨트롤러 유닛(MCU)의 동작을 검증하는 자료로서 활용하며, 상기 시뮬레이션되어 실제 마이크로 컨트롤러 유닛(MCU)가 생산되었을때 검증자료로 사용되는 자료들은 테스트 벡터(Test vector)라 한다.
도 1 내지 도 3을 참조하여 종래의 마이크로 컨트롤러 유닛(MCU)테스트 방법의 문제점을 살펴보도록 한다.
도 1은 일반적인 마이크로 컨트롤러 유닛(예컨데 80C52)의 타이밍 다이어그램을 나타낸 것이다.
마이크로 컨트롤러 유닛(MCU)는 하나의 명령어 셋(instruction set)를 메모리에서 읽고 처리하는데 12 클럭이 필요하고, 상기 12 클럭은 명령어 셋을 처리하는 과정에 따라 크게 6단계(S1 단계 내지 S6 단계)로 나누어진다.
도 2는 종래의 마이크로 컨트롤러 유닛(예컨데 80C52)의 테스트 과정을 각 단계별로 도시한 것으로 마이크로 컨트롤러 유닛(MCU)를 테스트 하기 위해서는 외부 메모리에서 범용 포트를 통하여 마이크로 컨트롤러 유닛(MCU)내부로 명령어 셋(Instruction set)을 전송하고 마이크로 컨트롤러 유닛(MCU)의 명령어 셋 처리결과가 시뮬레이션 결과(테스트 벡터)와 일치하는 지를 살펴보아야 하므로, 범용 포트 0 와 범용 포트 2를 사용하여 명령어 셋(Instruction set)을 마이크로 컨트롤러 유닛(MCU)로 전송한후 올바른 응답을 하는지를 관찰하여야 한다.
여기서, 마이크로 컨트롤러 유닛(예컨데 80C52)은 최대 64Kbyte 크기의 메모리와 데이터를 상호 전송할수 있는데, 64Kbyte의 메모리를 지정하기 위하여 16비트 크기의 어드레스를 발생하여야 하고, 따라서 8비트 단위로 되어있는 포트 0와 포트 2를 사용하여 16비트를 구성하여 메모리를 지정할 수 있는데, 포트 2로는 상위 어드레스를 나타내고, 포트 0는 하위 어드레스를 나타낸다.
도 2를 참조하여 각각의 단계별로 테스트 과정중에서 명령어 셋(Instruction set)의 처리순서를 살펴보면 다음과 같다.
먼저, S1 단계에서는 이전의 단계에서 요구되는 명령어 셋을 처리하는 구간으로, 이전단계의 명령에 따라 명령어 셋(INS0)을 외부 메모리에서 포트 0를 통하여 패치(Fetch)하여 처리한다.
다음으로, S2 단계에서는 현재의 첫번째 명령어 셋(INS1)을 패치하기 위하여 어드레스를 발생하는 구간으로, 어드레스의 상위 비트는 포트 2를 통하여 상위 어드레스 PCH1(Programming counter high1)로 출력되고, 하위 비트는 포트 0를 통하여 하위 어드레스 PCL1(Programming counter low1)로 출력된다.
여기서 S2 내지 S4 단계에서 포트 2에서 PCH1이 계속 출력되는데 비하여, 포트 0는 S2 단계에서만 출력되는데, 포트 0는 마이크로 컨트롤러 유닛(예컨데 80C52)의 외부 메모리 운용에 있어서 포트 0는 메모리와 마이크로 컨트롤러 유닛(MCU)사이에 래치(Latch)를 두어 구성되므로 S2 단계에서 포트 0를 통하여 하위 어드레스(PCL1)를 한번만 출력하면 되기 때문이다.
다음으로, S3 단계는 마이크로 컨트롤러 유닛(MCU)가 상기 S2 단계에서 지정된 어드레스에 응답하는 외부 메모리의 명령어 셋(Instruction set)을 읽어가는 단계이고, S4 단계는 포트 0를 통하여 입력된 명령어 셋(INS1)을 패치하는 단계이며 패치된 명령어 셋(INS1)은 마이크로 컨트롤러 유닛(MCU)내부 회로에 의하여 해석되고 실행된다.
S5 단계는, 다음 단계(현재의 6 단계 이후의 단계)에서 패치될 외부 메모리의 어드레스를 출력하는 단계로, 포트 2를 통하여 상위 8비트의 어드레스를 출력하고 포트 0를 통하여 하위 8비트의 어드레스를 출력한다.
S6 단계는 다음 단계(현재의 6 단계 이후의 단계)에서 패치될 외부 메모리의 명령어 셋(Instruction set)을 포트 0를 통하여 입력받는 단계가 된다.
도 3은 입력포트와 출력포트의 갯수가 제한된 마이크로 컨트롤러 유닛(AS-MCU:Application specific MCU)의 테스트 과정중에서 명령어 셋(Instruction set)의 처리과정을 나타낸다.
입출력 포트의 갯수가 제한된 마이크로 컨트롤러 유닛(이하 "AS-MCU"라 한다)의 경우에는 대체로 포트의 갯수가 하나이며, 하나의 포트(이하 "포트 X"라 한다)를 사용하여 외부 메모리와 데이터를 상호 전송하고, 테스트를 하여야 한다.
도 3을 참조하면, S1 단계에서는 이전의 단계에서 요구되는 명령어 셋을 처리하는 구간으로, 이전단계의 명령에 따라 명령어 셋(INS0)을 외부 메모리에서 포트 X를 통하여 패치(FETCH)하여 처리한다.
다음으로, S2 단계에서는 S2 단계를 두개로 나눈 P1과 P2구간에서 상위 어드레스(PCH1)과 하위 어드레스(PCL1)를 각각 포트 X로 전송한다.
이때, S2 단계에서 하나의 포트를 통하여 두개의 어드레스 신호(PCL1, PCH1)를 포트 X에 전송하여야 하므로 AS-MCU는 내부적으로 상위 어드레스와 하위 어드레스의 어드레스를 외부 메모리로 전송하기 위하여 빈번한 스위칭 오퍼레이션을 하게 되므로, 테스트 시간이 증가하게 된다.
다음으로 S3 단계는, S2 단계에서 지정한 어드레스에 따라 포트 X를 통하여 외부 메모리의 명령어 셋(INS1)을 전송받는 단계이며, S4 단계는 상기 S3 단계에서 전송된 명령어 셋(INS1)을 패치하는 단계가 된다.
다음으로 S5 단계는 다음 단계(현재의 6 단계 이후의 단계)에서 패치될 외부 메모리의 명령어 셋(Instruction set)이 있는 어드레스를 포트 X를 통하여 전송하는 단계가 된다.
여기서, AS-MCU는 하나의 포트를 사용하므로, S5 단계를 둘로 나누어 P1 단계에서는 다음단계의 상위 어드레스(PCH2)를 전송하고 P2 단계에서는 다음단계의 하위 어드레스(PCL2)를 전송한다.
마지막으로 6 단계에서는, 상기 5 단계에서 지정한 어드레스에 따라서 외부 메모리의 명령어 셋(Instruction set)을 포트 X를 통하여 전송받는 단계가 된다.
상기한 바와 같이 종래의 AS-MCU는 입출력 포트의 갯수가 적기 때문에 하나의 포트를 가지고 상위 어드레스와 하위 어드레스를 포트 X를 통하여 출력하고, 명령어 셋(Instruction set)의 입출력까지 담당하게 되므로 80C52 마이크로 컨트롤러 유닛(MCU)에 비하여 빈번한 어드레스 스위칭 동작이 발생하게 된다.
또한, S2 단계와 S4 단계에서는 하나의 단계를 둘로 나누어 상위 어드레스와 하위 어드레스를 포트 X로 출력해야 하므로 마이크로 컨트롤러 유닛(MCU) 내부에서 포트 X로 전송되는 어드레스에 대하여, 상위 어드레스와 하위 어드레스를 하나의 단계(S2 또는 S5단계)에서 스위칭하여 포트 X로 전송할수 있도록 해야하며, 이는 곧 상기 AS-MCU를 개발하는 단계에서 AS-MCU의 전반적인 동작특성을 테스트 하는 시간이 증가하는것을 의미한다.
본 발명은 상기와 같은 종래의 AS-MCU 테스트에 소요되는 시간을 줄이기 위하여 안출된 것으로, 외부 메모리로 어드레스를 전송하는 방법을 개선함으로서 AS-MCU의 테스트 시간을 감소시키는 방법을 제공하는데 그 목적이 있다.
도 1은 종래의 마이크로 프로세서 유닛 80C52의 명령어 셋 처리 타이밍 다이어그램.
도 2는 종래의 마이크로 프로세서 유닛 80C52의 명령어 셋 처리를 테스트하는 단계를 나타낸 도면.
도 3은 종래의 마이크로 프로세서 유닛(AS-MCU)의 명령어 셋 처리를 테스트하는 단계를 나타낸 도면.
도 4는 본 발명에 따른 마이크로 프로세서 유닛(AS-MCU)의 명령어 셋 처리를 테스트하는 단계를 나타낸 도면.
도 5는 본 발명에 따른 다른 마이크로 프로세서 유닛(AS-MCU)의 명령어 셋 처리를 테스트 하는 단계를 나타낸 도면.
상기와 같은 종래의 문제점을 해결하기 위하여, 본 발명은 한번의 명령어를 패치하기 위한 상위어드레스 및 하위 어드레스를 상기 명령어가 입출력되는 하나의 입출력 포트를 이용하여 출력하고, 하나의 머신사이클 내에서는 인접한 어드레스에 대응하는 명령어를 패치하여 실행하는 마이크로 컨트롤러 유닛을 테스트 하는 방법에 있어서, 이전단계에 출력된 어드레스에 의해 제1 명령어 셋을 상기 입출력 포트를 이용하여 패치하는 제1 단계; 제2 명령어를 패치하기 위한 하위 어드레스를 상기 입출력 포트를 이용하여 외부로 전송하는 제2 단계; 상기 제1 명령어에 의해 실행된 결과를 상기 입출력 포트를 이용하여 외부 메모리로 출력하는 제3 단계; 상기 제2 단계에서 지정된 제2 명령어를 상기 입출력 포트를 이용하여 패치하는 제4 단계; 제3 명령어를 패치하기 위한 상위 어드레스를 외부 메모리로 전송하는 제5 단계; 및 상기 제2 명령어의 실행된 결과를 상기 입출력 포트로 출력하는 제6 단계를 포함하며 상기 제1 단계 내지 제6단계가 하나의 머신사이클을 이루는 마이크로 컨트롤러 유닛의 테스트 방법을 제공한다.
또한 본 발명은 한번의 명령어를 패치하기 위한 상위어드레스 및 하위 어드레스를 상기 명령어가 입출력되는 하나의 입출력 포트를 이용하여 출력하고, 하나의 머신사이클 내에서는 인접한 어드레스에 대응하는 명령어를 패치하여 실행하는 마이크로 컨트롤러 유닛을 테스트 하는 방법에 있어서, 이전단계에 출력된 어드레스에 의해 제1 명령어 셋을 상기 입출력 포트를 이용하여 패치하는 제1 단계; 제2 명령어를 패치하기 위한 상위 어드레스를 상기 입출력 포트를 이용하여 외부로 전송하는 제2 단계; 상기 제1 명령어에 의해 실행된 결과를 상기 입출력 포트를 이용하여 외부 메모리로 출력하는 제3 단계; 상기 제2 단계에서 지정된 제2 명령어를 상기 입출력 포트를 이용하여 패치하는 제4 단계; 제3 명령어를 패치하기 위한 하위 어드레스를 외부 메모리로 전송하는 제5 단계; 및 상기 제2 명령어의 실행된 결과를 상기 입출력 포트로 출력하는 제6 단계를 포함하며 상기 제1 단계 내지 제6단계가 하나의 머신사이클을 이루는 마이크로 컨트롤러 유닛의 테스트 방법을 제공한다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 가장 바람직한 실시예를 첨부된 도면을 참조하여 설명하기로 한다.
도 4는 본 발명의 바람직한 실시예에 따른 마이크로 컨트롤러 유닛의 테스트 방법을 나타낸다.
도 4를 참조하여 본 발명에 따른 효율적인 마이크로 컨트롤러 유닛의 테스트 방법의 일실시예에 대하여 각 단계별로 상세히 설명하도록 한다.
마이크로 컨트롤러 유닛의 명령어 셋 수행은 12 클럭 동안에 하나의 명령어 셋을 처리할수 있으며, 상기 12클럭은 명령어 셋을 처리하는 과정에 따라 크게 6단계(S1 단계 내지 S6 단계)로 나누어진다.
먼저, S1 단계는 이전의 단계에서 요청한 명령어 셋을 패치하는 구간이다.
마이크로 컨트롤러 유닛의 명령어 셋 패치는 상기 6단계 중에서 2번(S1 단계와 S4 단계) 발생하는데, S1 단계는 이전 단계에서 마이크로 컨트롤러 유닛이 외부 메모리로 전송한 어드레스에 의하여 외부 메모리에서 전송된 명령어 셋(Instruction set)을 패치하는 단계이고, S4 단계는 첫번째 명령어 셋(INS1)를 패치하는 단계가 된다.
S2 단계는 외부 메모리에 존재하는 상기 첫번째 명령어 셋(INS1)을 패치하기 위하여 외부 메모리로 어드레스를 전송하는 단계가 된다.
여기서, 상기 S2 단계를 두개로 나누어 P1 과 P2구간에서 모두 하위 어드레스를 전송하고 있음을 볼수있다.
마이크로 컨트롤러 유닛의 어드레스를 생성하는 프로그래밍 카운터(Programming counter)는 상기 6개의 단계중에서 명령어 셋을 패치하는 S4단계에서 어드레스값을 하나씩 증가시키는 구조로 되어있다.
따라서, S2 단계에서 첫번째 명령어 셋(INS1)를 패치하기 위한 어드레스 PCL1과 두번째 명령어 셋을 패치하기 위한 어드레스 PCL2는 다음과 같은 관계식을 만족한다.
PCL2 = PCL1 + 1
따라서, S2 단계에서 두개로 나누어진 P1과 P2구간에 첫번째 명령어 셋(INS1)를 패치하기 위한 하위 어드레스인 PCL1을 셋팅하여도, S4 단계에서 마이크로 컨트롤러 유닛의 내부에 존재하는 프로그래밍 카운터(PC)가 하위 어드레스를 1 증가 시키므로 S5 단계에서 두번째 명령어 셋 패치를 위한 하위 어드레스값은 PCL2의 값과 같아지게 된다.
다음으로, 프로그램 카운터가 하위 어드레스를 중심으로 하나씩 증가하므로 상위 어드레스(PCH2)는 첫번째 명령어 셋(INS1)의 상위 어드레스값과 두번째 명령어 셋의 상위 어드레스(PCH2)값이 같으므로, S5단계에서는 S5 단계를 둘로 나눈 P1과 P2구간에 동일한 값을 셋팅하여도 된다.
다음으로, S3 단계에서는 이전의 단계에서 패치된 명령어 셋(INS0)의 실행된 결과를 입출력 포트로 출력하는 단계가 된다.
따라서, 입출력 포트로 출력된 명령어 셋(INS0)의 실행결과를 외부에서 테스트 목적으로 검사해 볼수 있게된다.
마지막으로, S6 단계에서는 첫번째 명령어 셋이 실행된 결과를 입출력 포트로 전송하고, 실행된 결과값을 검증하는 단계가 된다.
상기 6 단계는, 마이크로 컨트롤러 유닛에서 입출력 포트로 전송된 데이터의 값이 패치된 명령어 셋에 따른 올바른 결과값인지를 마이크로 컨트롤러 유닛 내부적으로 검증하게 된다.
상기한 입출력 포트가 하나인 AS-MCU를 프로그래밍 카운터(PC)의 특징을 이용하여 S2 단계와 S5 단계에서 각각 첫번째 명령어 셋(INS1)의 하위 어드레스와 두번째 명령어 셋의 상위 어드레스를 셋팅함으로서 S2 단계와 S5 단계에서 마이크로 컨트롤러 유닛은 상기한 종래의 테스트 방법과는 달리 상위 어드레스와 하위 어드레스를 하나의 단계(S2 또는 S5단계) 내에서 스위칭하여 외부 메모리로 전송하지 않아도 된다.
이는 곧 마이크로 컨트롤러 유닛의 명령어 셋 수행이 원활해 짐을 의미하며, 따라서 마이크로 컨트롤러 유닛을 개발한후 테스트하는데 소요되는 시간이 감소하게 된다.
또한 본 발명의 다른 마이크로 컨트롤러 유닛의 테스트 방법을 도 5를 참조하여 상세히 설명하면, S2 단계에서는 첫번째 명령어 셋(INS1)를 패치하기 위한 상위 어드레스(PCH1)을 셋팅하고, S4 단계에서는 두번째 명령어 셋을 셋팅하기 위한 하위 어드레스(PCL2)를 셋팅하는 방법이 된다.
먼저, S1 단계에서 이전 단계에서 요청한 명령어 셋을 처리한 후에 하위 어드레스(PCL)값이 1 증가하므로 현재의 단계에서 처리해야 하는 첫번째 명령어 셋(INS1)의 하위 어드레스(PCL1)는 셋팅하지 않아도 되며, 따라서 S2 단계에서는 상위 어드레스(PCH1)만을 셋팅하여도 첫번째 명령어 셋(INS1)를 패치하는 어드레스를 생성할수 있게 된다.
다음으로, S3 단계에서는 이전의 단계에서 패치된 명령어 셋(INS0)의 실행된 결과를 입출력 포트로 출력하는 단계가 된다.
따라서, 입출력 포트로 출력된 명령어 셋(INS0)의 실행결과를 외부에서 테스트 목적으로 검사해 볼수 있게된다.
다음으로, S4 단계에서는 입출력 포트를 통하여 전송된 첫번째 메모리를 패치한후 하위 어드레스(PCL1)값을 1 증가시킨다.
다음으로, S5 단계에서는 두번째 명령어 셋에 해당하는 하위 어드레스(PCL2)를 셋팅한다.
프로그래밍 카운터(PC)는 하위 어드레스를 중심으로 1씩 증가하므로 S2 단계에서 셋팅된 상위 어드레스(PCH1)를 그대로 사용하여도 된다.
마지막으로, S6 단계에서는 첫번째 명령어 셋이 실행된 결과를 입출력 포트로 전송하고, 실행된 결과값을 검증하는 단계가 된다.
상기 6 단계는, 마이크로 컨트롤러 유닛에서 입출력 포트로 전송된 데이터의 값이 패치된 명령어 셋에 따른 올바른 결과값인지를 마이크로 컨트롤러 유닛 내부적으로 검증하게 된다.
상기한 바와 같이, S2 단계를 PCH1으로 셋팅하고 S5 단계를 PCL2로 셋팅하는어드레스 셋팅 방법또한 입출력 포트가 하나인 AS-MCU의 내부적인 스위칭 동작을 감소시켜 테스트 시간을 감소시킬수 있음을 알수 있다.
본 발명의 기술 사상은 상기 바람직한 실시예에 따라 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술 분야의 통상의 전문가라면 본 발명의 기술 사상의 범위내에서 다양한 실시예가 가능함을 이해할 수 있을 것이다.
상기한 바와 같이 본 발명은, 입출력 포트가 제한되는 마이크로 컨트롤러 유닛을 개발한뒤 테스트 하는 시간을 감소시킬수 있으며, 이는 곧 상용화되는 마이크로 컨트롤러 유닛의 생산단가를 낮출수 있게 된다.

Claims (2)

  1. 한번의 명령어를 패치하기 위한 상위어드레스 및 하위 어드레스를 상기 명령어가 입출력되는 하나의 입출력 포트를 이용하여 출력하고, 하나의 머신사이클 내에서는 인접한 어드레스에 대응하는 명령어를 패치하여 실행하는 마이크로 컨트롤러 유닛을 테스트 하는 방법에 있어서,
    이전단계에 출력된 어드레스에 의해 제1 명령어 셋을 상기 입출력 포트를 이용하여 패치하는 제1 단계;
    제2 명령어를 패치하기 위한 하위 어드레스를 상기 입출력 포트를 이용하여 외부로 전송하는 제2 단계;
    상기 제1 명령어에 의해 실행된 결과를 상기 입출력 포트를 이용하여 외부 메모리로 출력하는 제3 단계;
    상기 제2 단계에서 지정된 제2 명령어를 상기 입출력 포트를 이용하여 패치하는 제4 단계;
    제3 명령어를 패치하기 위한 상위 어드레스를 외부 메모리로 전송하는 제5 단계; 및
    상기 제2 명령어의 실행된 결과를 상기 입출력 포트로 출력하는 제6 단계
    를 포함하며 상기 제1 단계 내지 제6단계가 하나의 머신사이클을 이루는 마이크로 컨트롤러 유닛의 테스트 방법.
  2. 한번의 명령어를 패치하기 위한 상위어드레스 및 하위 어드레스를 상기 명령어가 입출력되는 하나의 입출력 포트를 이용하여 출력하고, 하나의 머신사이클 내에서는 인접한 어드레스에 대응하는 명령어를 패치하여 실행하는 마이크로 컨트롤러 유닛을 테스트 하는 방법에 있어서,
    이전단계에 출력된 어드레스에 의해 제1 명령어 셋을 상기 입출력 포트를 이용하여 패치하는 제1 단계;
    제2 명령어를 패치하기 위한 상위 어드레스를 상기 입출력 포트를 이용하여 외부로 전송하는 제2 단계;
    상기 제1 명령어에 의해 실행된 결과를 상기 입출력 포트를 이용하여 외부 메모리로 출력하는 제3 단계;
    상기 제2 단계에서 지정된 제2 명령어를 상기 입출력 포트를 이용하여 패치하는 제4 단계;
    제3 명령어를 패치하기 위한 하위 어드레스를 외부 메모리로 전송하는 제5 단계; 및
    상기 제2 명령어의 실행된 결과를 상기 입출력 포트로 출력하는 제6 단계
    를 포함하며 상기 제1 단계 내지 제6단계가 하나의 머신사이클을 이루는 마이크로 컨트롤러 유닛의 테스트 방법.
KR10-2001-0022417A 2001-04-25 2001-04-25 마이크로 컨트롤러 유닛의 효율적인 테스트 방법 KR100399068B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0022417A KR100399068B1 (ko) 2001-04-25 2001-04-25 마이크로 컨트롤러 유닛의 효율적인 테스트 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0022417A KR100399068B1 (ko) 2001-04-25 2001-04-25 마이크로 컨트롤러 유닛의 효율적인 테스트 방법

Publications (2)

Publication Number Publication Date
KR20020082691A KR20020082691A (ko) 2002-10-31
KR100399068B1 true KR100399068B1 (ko) 2003-09-26

Family

ID=27702548

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0022417A KR100399068B1 (ko) 2001-04-25 2001-04-25 마이크로 컨트롤러 유닛의 효율적인 테스트 방법

Country Status (1)

Country Link
KR (1) KR100399068B1 (ko)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0962533A (ja) * 1995-08-30 1997-03-07 Nec Corp シングルチップマイクロプロセッサのテスト回路
US5809327A (en) * 1997-03-27 1998-09-15 Atmel Corporation Eight-bit microcontroller having a risc architecture
KR0179919B1 (ko) * 1996-05-13 1999-05-15 문정환 내장 테스트 프로그램을 이용한 엠씨유의 테스트 방법
KR20000027054A (ko) * 1998-10-26 2000-05-15 윤종용 마이크로 컨트롤러 및 그의 진단 검사 방법
KR20000029365A (ko) * 1998-10-29 2000-05-25 어드밴테스트 코포레이션 마이크로프로세서의 테스팅을 위한 회로 구조물 및 그테스트 방법
KR20000046804A (ko) * 1998-12-31 2000-07-25 김영환 데이터 크기를 가변할 수 있는 임베디드 엠씨유
KR100318315B1 (ko) * 1998-10-19 2002-04-22 박종섭 원칩마이크로컴퓨터

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0962533A (ja) * 1995-08-30 1997-03-07 Nec Corp シングルチップマイクロプロセッサのテスト回路
KR0179919B1 (ko) * 1996-05-13 1999-05-15 문정환 내장 테스트 프로그램을 이용한 엠씨유의 테스트 방법
US5809327A (en) * 1997-03-27 1998-09-15 Atmel Corporation Eight-bit microcontroller having a risc architecture
KR100318315B1 (ko) * 1998-10-19 2002-04-22 박종섭 원칩마이크로컴퓨터
KR20000027054A (ko) * 1998-10-26 2000-05-15 윤종용 마이크로 컨트롤러 및 그의 진단 검사 방법
KR20000029365A (ko) * 1998-10-29 2000-05-25 어드밴테스트 코포레이션 마이크로프로세서의 테스팅을 위한 회로 구조물 및 그테스트 방법
KR20000046804A (ko) * 1998-12-31 2000-07-25 김영환 데이터 크기를 가변할 수 있는 임베디드 엠씨유

Also Published As

Publication number Publication date
KR20020082691A (ko) 2002-10-31

Similar Documents

Publication Publication Date Title
US6915416B2 (en) Apparatus and method for microcontroller debugging
US6839869B2 (en) Trace control circuit for tracing CPU operation in real time
JP2005070949A (ja) プログラム処理装置
KR100399068B1 (ko) 마이크로 컨트롤러 유닛의 효율적인 테스트 방법
JP2005070950A (ja) プログラム処理装置
US5963725A (en) Simulation system and method for microcomputer program
US20050033938A1 (en) Network processing system, core language processor and method of executing a sequence of instructions in a stored program
JP2806075B2 (ja) マイクロコンピュータ
JP2000347899A (ja) マイクロコンピュータ
KR20080013528A (ko) 통합 프로토타이핑 방법
US7159057B2 (en) Evaluation chip
KR20010052868A (ko) 에뮬레이터 시스템에서 사용자 메모리를 업데이트하기위한 방법 및 시스템
TWI683202B (zh) 數位波形訊號產生裝置
US20020007263A1 (en) Apparatus for supporting microprocessor development system
JP2777133B2 (ja) 中央演算処理装置
KR100427029B1 (ko) 집적회로의 설계 검증 방법
JP2000250779A (ja) プログラマブルコントローラ
US7003543B2 (en) Sticky z bit
JPH10133717A (ja) シーケンサ用シミュレータ
JPH086810A (ja) 論理回路シミュレーション装置
JPH01112429A (ja) マイクロコンピュータ
JPS5949609A (ja) 模擬実行機能を備えたプログラマブル・コントロ−ラ
JPH01166222A (ja) プログラムコントローラの演算回路構成
JPS62109136A (ja) 論理回路シミユレ−シヨン方法
JPH036705A (ja) シーケンスコントローラ

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
LAPS Lapse due to unpaid annual fee