KR100285976B1 - 에뮬레이션장치 - Google Patents

에뮬레이션장치 Download PDF

Info

Publication number
KR100285976B1
KR100285976B1 KR1019950052200A KR19950052200A KR100285976B1 KR 100285976 B1 KR100285976 B1 KR 100285976B1 KR 1019950052200 A KR1019950052200 A KR 1019950052200A KR 19950052200 A KR19950052200 A KR 19950052200A KR 100285976 B1 KR100285976 B1 KR 100285976B1
Authority
KR
South Korea
Prior art keywords
address
data
signal
brake
access condition
Prior art date
Application number
KR1019950052200A
Other languages
English (en)
Other versions
KR960025210A (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 KR960025210A publication Critical patent/KR960025210A/ko
Application granted granted Critical
Publication of KR100285976B1 publication Critical patent/KR100285976B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • G06F11/3652Software debugging using additional hardware in-circuit-emulation [ICE] arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • 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/3005Arrangements for executing specific machine instructions to perform operations for flow control

Landscapes

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

Abstract

액세스 조건 일치 검출 회로는 액세스 조건 저장 레지스터(44)에 저장된 어드레스가 어드레스버스(29)에 출력된것을 검출한다.
카운터(46)는 소정수의 검출신호를 카운트할 때, AND회로(36)에 브레이크 포인트 신호를 입력한다.
한편, 브레이크 어드레스 저장 레지스터(34)에 저장된 어드레스가 어드레스버스(29)에 출력되는것을 검출한다.
상기 브레이크 포인트 신호가 AND회로(36)에 입력될 때, 이 검출신호는 인터럽 션 요구 신호로서 AND회로(36)로 부터 출력된다.
그러한 구조는 마이크로컴퓨터의 에뮬레이트 동작에 있어서, 복잡한 어드레스 일치 조건하에 프로그램의 인터럽션 제어를 확실히 행하는 에뮬레이션 장치를 설치한다.

Description

에뮬레이션 장치
제1도는 종래의 에뮬레이션 장치를 나타낸 회로구성도.
제2도는 본 실시예 1에 따른 에뮬레이션 장치를 나타낸 회로구성도.
제3도는 제2도의 에뮬레이션 장치의 각부 동작을 나타낸 타이밍챠트.
제4도는 본 실시예 3에 따른 에뮬레이션 장치를 나타낸 회로구성도.
제5도는 제4도의 에뮬레이션 장치의 각부 동작을 나타낸 타이밍 챠트.
제6도는 본 실시예 4에 따른 에뮬레이션 장치를 나타낸 회로구성도.
제7도는 본 실시예 5에 따른 에뮬레이션 장치를 나타낸 회로구성도.
본 발명은 싱글칩 마이크로컴퓨터의 소프트웨어를 개발하기 위한 에뮬레이트 동작을 수행하는 에뮬레이션장치에 관한것이고, 특히, 에뮬레이트동작의 타이밍에서 마이크로컴퓨터에 의해 실행된 프로그램의 인터럽션을 제어하는 에뮬레이션 장치에 관한 것이다.
마이크로컴퓨터에 있어서, 이 마이크로컴퓨터에 저장된 리드온리메모리(이후 ROM으로 함)에 기록되어 있는 프로그램코드를 수정함으로써 프로그램내의 에러(이후 bugs로 함)를 제거하도록 에뮬레이션동작이 요구된다.
이 에뮬레이트 동작에 있어서, 실제로 마이크로컴퓨터에 저장되어 있는 프로그램은 에뮬레이트 대상의 프로그램으로서 마이크로컴퓨터의 외부로 부터 순차로 주어진 후, 에뮬레이트되어야 하는 프로그램이 마이크로컴퓨터에 의해 실행된다.
필요에 의해, 프로그램의 동작이 마이크로컴퓨터내의 상태를 모니터하기 위해 정지될 때, 대신, 에뮬레이트 프로그램은 인터럽션 처리로서 실행됨으로 마이크로컴퓨터에 저장되어야 하는 프로그램을 개발한다.
예컨데, 제1도는 에뮬레이트동작을 실행하는 종래의 에뮬레이션장치를 나타낸 회로구성도이다.
이 도면에 있어서, 참조부호 1은 싱클칩으로 되어 있는 마이크로컴퓨터를 나타내고, 2는 마이크로컴퓨터(1)전체의 동작을 제어하는 중앙처리장치(이후 CPU로 함), 3은 프로그램동작을 정지시키기 위한 인터럽션요구를 관리하는 인터럽션제어회로, 4는 명령실행시의 참조데이타, 처리데이타 및 명령코드를 기억하는 랜덤액세스메모리이다.
또한, 마이크로컴퓨터(1)는 CPU(2), IPU(3) 및 RAM(4)뿐만 아니라 각종 기능 회로와 그 기능을 위한 레지스터를 포함한다.
참조부호 5는 CPU내에 내장되고, 각 기능회로를 지정하는 어드레스신호를 발생하는 프로그램카운터, 6은 CPU(2)에 내장되고, CPU(2)의 동작상태를 나타내는 상태신호를 발생하는 상태신호발생회로이다.
참조부호 7은 마이크로컴퓨터(1)의 에뮬레이트동작을 제어하는 에뮬레이터를 나타낸다.
에뮬레이터(7)는 마이크로컴퓨터(1)에 에뮬레이트되어야 하는 프로그램을 주고, 이 프로그램이 실행된 마이크로컴퓨터(1)의 상태를 추적하고 모니터한다.
이 에뮬레이터(7)에 있어서, 참조부호 8은 에뮬레이트되어야 하는 프로그램를 저장하고 마이크로컴퓨터(1)에 출력하는 프로그램메모리를 나타내고; 9는 이 에뮬레이트되어야 하는 프로그램을 실행하는 마이크로컴퓨터(1)의 실행시 퀀스를 추적하는 추적메모리, 10은 에뮬레이트되어야 하는 프로그램에 의해 인터럽션이 실행되어 있는지 어떤지 조건을 결정하는 조건결정회로이다.
또한, 참조부호 11은 어드레스버스를 나타내고; 12는 CPU(2), IPU(3) 및 ROM(4)등의 각 기능회로와 에뮬레이터(7)와의 사이에 데이타를 교환하는 데이타버스; 13은 상태신호발생회로(6)로 부터의 상태신호의 출력신호선; 14는 에뮬레이터동작시에 소프트웨어 인터럽션 명령인 브레이크명령을 CPU(2)에서 브레이크명령을 디코드해서 발생된 소프트웨어 브레이크 신호(이후, S. BRK로 함); 15는 S. BRK(14)를 받아 CPU(2)를 제어하는 실행되어 있는 프로그램(이후 실행프로그램으로 함)을 정지시키고, 그후 이 실행프로그램과 다른 에뮬레이트프로그램의 실행을 요구하는 브레이크 인터럽션 신호(이후 BRK로 함)이다.
다음에, 제 1 도에 나타난바와 같이 에뮬레이션장치의 동작을 설명한다.
에뮬레이트되어야 하는 프로그램은 미리 프로그램 메모리(8)에 기록된다.
이 CPU(2)의 프로그램카운터(5)를 사용함으로써 어드레스버스(11)에 에뮬레이트되어야 하는 이 프로그램내의 명령코드"Xn"를 지정하는 어드레스"n"를 출력한다.
프로그램메모리(8)는 어드레스 "n" 와 상태신호발생회로(6)로 부터 공급된 상태신호를 수신하고, 데이타버스(12)를 통해서 마이크로컴퓨터(1)에 명령코드 "Xn"를 출력한다.
CPU(2)는 이 명령코드를 디코드해서 명령을 실행한다.
한편, 어드레스버스(11), 상태신호선(13) 및 데이타버스(12)상의 신호는 동시에 조건결정회로(10)에 입력된다.
이 조건결정회로(10)는 미리 브레이크조건으로서 소정의 에뮬레이션 어드레스를 기억한다.
어드레스버스(11)상의 신호, 상태신호선(13) 및 데이타버스(12)의 각 데이타가 조건결정회로(10)에 저장된 에뮬레이션 어드레스에 대응해서 일치할때, 조건결정회로(10)는 프로그램메모리(8)에 브레이크 포인트 신호를 출력한다. 명령코드 "Xn"가 실행되기 직전에 에뮬레이션되어야 하는 프로그램을 정지시키고, 대신 에뮬레이트프로그램을 시동시키는 경우를 설명한다.
명령코드 "Xn"를 지정하는 어드레스 "n"는 브레이크조건으로서 미리 조건결정회로(10)에 기억된다.
어드레스버스(11)내의 어드레스신호가 그 저장된 어드레스 "n"와 일치할 때, 조건결정회로(10)는 브레이크 포인트 신호를 출력한다.
이 브레이크 포인트신호에 응답해서, 프로그램메모리(8)은 명령코드 "Xn"를 출력하는 대신에 브레이크명령코드를 출력하고, 데이타버스(12)를 통해 브레이크명령코드를 마이크로컴퓨터(1)에 전송한다.
CPU(2)는 이 브레이크명령코드를 디코드해서 S. BRK 신호(4)를 발생한다.
이 신호(14)는 ICU(3)에 입력된다.
이 ICU(3)는 CPU(2)가 상기 브레이크명령코드에 대응하는 인터럽션 요구 벡터에 응답해서 벡터 어드레스를 발생시키도록 BRK신호를 출력하고, 프로그램 카운터(5)에 소정의 벡터 어드레스를 기록시킨다.
이 벡터 어드레스는 브레이크 인터럽션 서브루틴으로서 프로그램 메모리(8)에 미리 저장된 에뮬레이트 프로그램( 또한 모니터 프로그램이라고도 함)을 기동한다.
이 에뮬레이트 프로그램에 의해, 이 명령코드 "Xn"의 실행직전의 마이크로컴퓨터(1)에 내장된 각 레지스터(도면에 나타나지 않음)와 RAM(4)의 내용은 추적 메모리에 합병된다.
이 합병된 내용은 모니터되어서, 에뮬레이트 동작이 실현된다.
상기 종래의 에뮬레이션 장치에 따라, 어드레스신호(11)는 에뮬레이터(7)중의 조건결정회로(10)와 프로그램 메모리(8)에 동시에 입력된다.
이 프로그램 메모리(8)에 있어서, 명령 코드 "Xn"를 브레이크명령코드로 교체하는 동작에 시간을 필요로 한다.
이와같이, 비록 조건결정회로(10)로 부터 발생된 브레이크 포인트 신호가 프로그램메모리(8)에 입력되더라도, 브레이크명령코드는 프로그램 메모리(8)로 부터 측시 출력되지 않는다.
그 결과, 명령 코드 "Xn"가 바람직스럽지 않게 출력된 후에 브레이크 명령 코드가 출력되어도 된다.
따라서, 명령코드 "Xn"가 마이크로컴퓨터(1)에서 실행됨으로 소망의 브레이크 포인트에서 인터럽션 제어하는것이 실행될 수 없는 문제점이 있다.
비록, 잘못하여 브레이크 명령 코드가 전송되기 전에 명령 코드 "Xn"가 컴퓨터(1)에 전송되더라도, 명령 코드 "Xn"가 CPU(2)에서 실행되기 전에 인터럽션 제어가 실행될 수 있을 경우, 이때에 브레이크 명령 코드가 CPU(2)에 전송되는한 문제점은 없다.
그러나, 그 사양으로서 10 MHz이상인 최대 동작 주파수의 동작 클럭에 응답 해서 동작된 마이크로컴퓨터에서는 마이크로컴퓨터와 에뮬레이터 사이의 배선의 배선용량에 의해 지연된 브레이크 명령 코드가 마이크로컴퓨터로 입력된다.
그래서, 인터럽션 코드"Xn"를 실행한 후, 빈번히 인터럽션 처리가 수행된다.
특히, 단일 어드레스에서의 에뮬레이트 동작과는 다른 에뮬레이션되어야 하는 프로그램내에 서브루틴 프로그램이 복수회 실행되는 경우, 복잡한 브레이크 조건하에서 마이크로컴퓨터의 내부상태를 확인하는것이 요구된다.
예컨데, 브레이크조건으로 어드레스 신호와 상기의 어드레스 "n"가 복수회일치하는 것을 요구하면, 조건판전회로(10)내에 복수회 일치하는것을 카운트하는 카운터를 설치하는 것이 필요한다.
그 결과, 이 카운트 동작의 지연에 의해 브레이크포인트 신호가 바람직스럽지 않은 타이밍에서 출력되기 때문에 브레이크 명령 코드가 더 지연되는 문제점이 일어난다.
본 발명은 상기 문제점을 해결하고, 고주파수에서 동작된 마이크로컴퓨터의 에뮬레이트동작에서도 상기 설명된바와 같이 어드레스에서 복수의 일치를 검출함으로써 프로그램 브레이크가 실행되는 경우, 브레이크 포인트에서 정확한 인터럽션 제어를 실현할 수 있는 에뮬레이션장치를 제공하는것이 목적이다.
본 발명의 제1관점에 따른 마이크로컴퓨터와 에뮬레이터로 설치된 에뮬레이션장치는 어드레스 신호를 출력해서 프로그램을 실행하는 중앙처리수단; 브레이크조건을 지시하는 브레이크 어드레스를 저장하고 어드레스신호가 브레이크 신호와 일치할 경우, 일치 검출 신호를 출력하는 브레이크 조건 일치 검출 수단; 일치검출신호가 유효한지 무효한지 결정하는 브레이크허가결정수단; 이 브레이크허가 결정수단이 일치검출신호가 유효한지 판단할 때, 이 일치검출신호를 수신하고 프로그램의 실행처리를 정지하기 위해서 중앙처리수단을 제어하는 브레이크제어수단을 구비하는 마이크로컴퓨터와, 브레이크 조건에 액세스하기 위한 액세스 조건 어드레스를 저장하고, 어드레스신호를 모니터해서 액세스 조건 어드레스와 어드레스 신호의 일치를 검출할때, 브레이크허가 검출수단에 브레이크허가신호를 출력하는 액세스 조건 결정수단; 브레이크허가신호가 브레이크허가결정수단에 입력될때, 일치검출신호가 유효인지 판단하는 브레이크허가결정수단을 구비하는 에뮬레이터로 설치되어 있다.
액세스조건결정수단은 어드레스신호가 액세스조건어드레스와 복수회 일치할때 브레이크허가신호를 바람직하게 출력한다.
상기 액세스조건결정수단은 액세스조건어드레스를 저장하는 액세스 조건 저장레지스터, 어드레스신호가 액세스조건어드레스와 일치할때 조건일치신호를 출력하는 조건일치결정회로, 조건일치신호가 복수회 카운트될때 브레이크허가신호를 출력하는 카운터를 구비한다.
본 제 2관점에 따른 에뮬레이션장치의 에뮬레이터는 브레이크조건을 액세스하는 제 1 액세스조건어드레스를 저장하고, 어드레스신호를 모니터하고, 제 1 액세스조건어드레스와 어드레스신호를 일치하는것이 검출될때 제 1 일치 신호를 출력하는 제 1 액세스조건결정수단과, 브레이크조건을 액세스하는 제 2 액세스조건어드레스를 저장하고, 어드레스신호를 모니터하고, 제 2 액세스 조건어드레스와 어드레스신호를 일치하는것이 검출될때 제 2 일치신호를 출력하는 제 2 액세스조건결정수단과, 제 1, 제 2 일치신호가 검출될때, 브레이크허가신호를 출력하는 논리회로를 구비하고, 브레이크허가결정수단에 브레이크허가신호가 입력될때, 일치검출신호가 유효인가를 결정하는 브레이크 허가결정수단을 포함한다.
상기 제 1, 제 2액세스조건결정수단은 어드레스신호가 제 1, 제 2 액세스조건어드레스중의 적어도 하나가 복수회 일치한 것을 바람직하게 검출한다.
바람직하게, 제 1, 제 2 관점의 에뮬레이션장치에서의 브레이크어드레스는 프로그램에서의 명령코드를 지시하는 어드레스이고, 브레이크허가결정수단이 일치검출신호가 유효인가 아닌가를 결정할때, 브레이크제어수단은 이 명령코드를 실행하지 않도록 중앙처리수단을 제어한다.
제 1, 제 2 관점의 에뮬레이션장치에서의 브레이크어드레스는 데이타 판독 또는 데이터 기록의 장소를 지정하는 어드레스이고, 브레이크허가결정수단이 일치검출신호가 유효인가를 결정하고, 브레이크어드레스에 의해 지정된 장소에 데이타 판독 또는 데이타 기록 될 때, 브레이크제어수단은 중앙처리장치의 처리를 정지한다.
바람직하게, 제 1, 제 2관점의 상기 에뮬레이션장치에서의 브레이크조건일치 검출수단은 브레이크조건을 지시하는 브레이크 어드레스와 데이타값을 저장하고, 브레이크어드레스와 어드레스신호가 일치하고 데이타값과 데이타신호가 일치할때, 브레이크 어드레스 조건 검출 수단은 일치검출신호를 출력하는 일치검출신호를 출력하고, 브레이크 허가 결정수단은 일치 검출 신호가 유효인가를 결정하고, 브레이크어드레스에 의해 지정된 장소에 이 데이타값의 판독 또는 기록될 때, 브레이크제어수단은 중앙처리수단의 처리를 중지한다.
제 1, 제 2관점의 에뮬레이션장치에서의 액세스조건어드레스는 프로그램에서의 명령코드를 지정하는 어드레스이고 제 2, 제3 어드레스는 데이타판독 또는 데이타기록의 장소를 지정하는 어드레스이다.
제 1, 제 2관점의 에뮬레이션장치에서의 액세스조건결정수단은 제 2 데이타값을 저장하는 데이타저장수단을 가지고, 어드레스신호가 제 2 데이타값이 판독 또는 기록 되는 장소를 지정하는 액세스조건어드레스와 일치하고, 데이타를 전송하는 데이타버스에 출력된 데이타신호가 제 2 데이타값과 일치하는 것을 검출한다.
그래서, 구성된 제 1 관점의 에뮬레이션장치는 중앙처리수단이 액세스조건어드레스를 출력하고, 그후 그곳으로 부터 출력된 어드레스신호가 브레이크신호와 일치한 경우에, 인터럽션이 실행된다. 브레이크조건으로서 브레이크어드레스와 일치하는 것은 마이크로컴퓨터측상에 검출되는 반면, 브레이크조건을 액세스하는 액세스 조건 어드레스와 일치하는것은 에뮬레이터측상에서 검출된다.
브레이크허가결정수단에서 액세스조건어드레스의 일치검출신호를 브레이크허가신호로서 인식함으로써 브레이크어드레스의 일치검출신호가 유효인가를 결정해서 인터럽션제어를 한다.
그래서, 브레이크어드레스의 일치검출신호는 마이크로컴퓨터내에서 생성되고, 이 일치검출신호는 브레이크요구신호로서 지연없이 프로그램의 인터럽션을 실행시킨다.
액세스조건결정수단은 액세스신호가 액세스조건어드레스와 복수회 일치할때 브레이크포인트신호를 출력하므로, 액세스조건어드레스와 동일한 어드레스 신호가 중앙처리수단으로 부터 소정 복수회 출력할 때 인터럽션 실행되고, 그후 브레이크어드레스는 출력된다.
이 때에, 브레이크어드레스의 일치검출신호가 마이크로컴퓨터내에서 생성되고, 이 일치검출신호는 그 브레이크요구신호로서 지연없이 프로그램의 인터럽션을 실행시킨다.
제 2관점의 에뮬레이터는 어드레스신호가 제 1 액세스조건어드레스와 일치한 것이 검출될때 제 1 일치신호를 출력하는 제 1 액세스조건결정수단; 어드레스신호가 제 2 액세스조건어드레스와 일치한것이 검출될때 제 2 일치신호를 출력하는 제 2 액세스조건결정수단; 제 1, 제 2 일치신호가 검출될때 브레이크허가결정수단에 브레이크허가신호를 출력하는 논리회로를 구비하고, 제 1, 제 2 액세스조건어드레스과 동일의 어드레스신호가 중앙처리 수단으로부터 출력될 때 인터럽션이 실행되고, 그후 어드레스신호와 브레이크 어드레스는 일치한다.
이 때에, 제 1 일치검출신호는 마이크로컴퓨터내에서 생성되고, 이 일치검출 신호는 브레이크요구신호로서 지연없이 프로그램의 인터럽션을 허가한다.
본 발명의 또 다른 목적과 효과는 이하의 상세한 설명으로 부터 명확하게 된다.
본 명세서에 기재된 실시예는 예시적인 것이고 한정적인 것이 아니다.
발명의 범위는 첨부 청구범위에 의해 나타내고 있고 그들의 청구범위의 의미중에 들어있는 전부 변형되는 본원 발명에 포함되는 것이다.
[실시예 1]
본 발명의 일실시예를 설명한다.
제 2 도는 이 실시예에서의 에뮬레이션 시간에서 구성된 에뮬레이션장치의 회로도이다.
이 도면에 있어서, 참조부호 20는 에뮬레이트 대상된 프로그램을 저장하는 마이크로컴퓨터를 나타내고, 40은 마이크로컴퓨터(2)의 에뮬레이션을 실행하고 제어하는 에뮬레이터이다.
마이크로컴퓨터(20)는 에뮬레이션장치를 구성하게 각종 신호선을 통해 에뮬레이터(40)와 접속된다.
이 마이크로컴퓨터(20)에 있어서, 참조부호(21)는 연산동작을 실행하기 위한 마이크로컴퓨터의 동작을 제어하는 중앙처리장치(이하, CPU)를 나타내고, 22는 CPU(21)에서 실행된 프로그램의 흐름을 제어하는 것 이외에 CPU(21)의 특별한 처리 또는 적시의 처리를 위한 요구를 수신하고, CPU(21)를 제어하는 인터럽션제어장치(이하, ICU); 23은 참조데이타, 처리데이타 및 명령코드을 저장하는 랜덤액세스메모리(이후 RAM)이다.
또한, 마이크로컴퓨터(20)는 각종 기능회로와 그 기능을 위한 레지스터를 포함한다.
ICP(22)는 소정의 신호에 응답하여 CPU(21)에 브레이크 인터럽션 신호(이하, BRK 신호)를 생성시키는 브레이크 인터럽션 신호발생회로(24)를 가진다.
CPU(21)는 브레이크 인터럽션 신호발생회로(24)에 의해 요구된 인터럽션 요구요인에 응답하여 벡터어드레스를 생성하는 인터럽션 벡터 발생회로(26), 프로그램을 실행하는 각 기능회로를 지정하는 어드레스를 생성하는 프로그램 카운터(27), CPU(21)의 동작상태에 나타내는 상태신호를 생성하는 상태신호 생성회로(28)를 구비한다.
참조부호 29는 프로그램카운터로 부터 출력된 어드레스신호를 운반하는 어드레스버스를 나타내고, 30은 CPU(21)등의 에뮬레이터(40)와 각종 기능회로와의 사이에 데이타를 교체하는 데이타버스, 31은 CPU(21)가 데이타를 판독하는 상태를 나타내는 판독신호(이하, RD), 32는 CPU(21)가 데이타를 기록하는 상태를 나타내는 기록신호(이하, WR)이다.
이들 SYNC(32), RD(32) 및 WR(33)은 상태 신호를 구성하고, 상태신호발생회로(28)로부터 출력된다.
참조부호 34는 마이크로컴퓨터(20)에 내장되고, 브레이크조건인 브레이크어드레스를 저항하는 브레이크 어드레스 저장 레지스터를 나타내고, 35는 마이크로컴퓨터(20)에 내장되고, 브레이크어드레스저장레지스터(34)에 저장된 브레이크 어드레스와 어드레스버스(29)상의 어드레스신호를 비교해서 일치를 검출하는 브레이크 어드레스 일치검출회로, 36은 브레이크어드레스일치검출회로(34)로 부터의 출력과 에뮬레이터(40)로 부터의 출력의 논리적을 출력하는 AND회로이고, 이 AND회로는 에뮬레이터(40)로 부터의 신호에 근거해 브레이크 어드레스 일치검출회로(35)의 출력이 유효 또는 무효인지 결정하는 브레이크결정회로를 구성한다.
참조부호 37는 소프트웨어에 의해 생성된 브레이크명령신호(이하, S. BRK)와 AND회로(36)의 출력과의 논리합을 출력하는 OR 회로를 나타내고, 이 OR 회로는 브레이크명령요구신호를 출력하는 브레이크 인터럽션 요구회로를 구성한다.
한편, 에뮬레이터(40)에 있어서, 참조부호 41은 마이크로컴퓨터(20)에서 에뮬레이트 대상된(이후, 에뮬레이트되어야 하는 프로그램) 프로그램을 저장하는 프로그램메모리를 나타내고, 42는 에뮬레이트되어야 하는 프로그램에 의해 동작된 마이크로컴퓨터(20)의 실행시퀀스를 추적하는 추적메모리이다.
추적메모리(40)는 실행프로그램의 동작을 확인하게 마이크로컴퓨터(20)로 부터의 어드레스버스(29)의 어드레스신호, 데이터버스(30)의 데이타, SYNC신호선(31)의 신호, RD신호선(32), WR신호선(33)를 추적한다.
또한, 참조부호 43은 브레이크조건 검출기구의 일부로서, 브레이크액세스저장레지스터(34)에 저장된 브레이크조건(이후, 액세스조건)을 액세스하는 조건을 검출하는 액세스조건검출회로를 나타낸다.
이 액세스조건결정회로(43)는 액세스조건으로서 액세스를 지정하는 액세스조건어드레스를 저장하는 액세스조건저장레지스터(44), 일치를 검출하게 마이크로컴퓨터(20)로 부터 출력된 어드레스신호(AD)와 저장된 액세스조건어드레스를 비교하는 액세스조건일치검출회로(45), 오버플로우를 검출하게 액세스 조건 일치 검출 회로(45)로 부터의 일치검출신호를 카운트하는 액세스포인트 패스카운트(46)로 구성된다.
액세스 포인트 패스 카운트(46)로 부터의 출력은 마이크로컴퓨터(20)에서 실행된 프로그램의 브레이크 포인트의 액세스를 최종적으로 결정하는 브레이크허가신호로서 마이크로컴퓨터(20)측의 AND회로(브레이크결정회로)(36)에 입력된다.
참조부호(47a-47e)는 브레이크 허가 신호를 입력하는것에 의해 각각 어드레스버스(29), SYNC신호선(31), RD신호선(32), WR신호선(33) 및 데이터버스(30)로 부터 추적메모리로 입력의 접속 또는 차단을 제어하는 스위치를 나타낸다.
또한, SYNC신호선(31), RD신호선(32) 및 WR신호선(33)은 동일의 참조부호(3, 32, 33)에 의해 각각 나타난다.
다음에, 제 2 도에 나타난 에뮬레이션장치의 동작은 제 3 도의 타이밍챠트를 참조해 설명한다.
비록, 제 2 도에는 나타나지 않았지만, 마이크로컴퓨터(20)와 에뮬레이터(4)는 제3 도에 나타난바와 같이 동작클럭에 응답해서 동작한다.
에뮬레이션되어야 하는 프로그램에 따라 서브루틴프로그램을 복수회 실행하는 경우을 설명한다; 브레이크 인터럽션이 서브루틴 프로그램내의 명령코드 "Xn"를 지정하는 어드레스 "n"가 N회 출력된 후나, 다음 어드레스 "n"이 출력되기 전에 실행되어 그 명령코드 "Xn"가 수행된다.
여기서, "n"은 임의의 정수이고, 어드레스의 번지를 나타낸다.
또한, "N"은 임의의 정수이다.
에뮬레이션동작을 실행하기 전에, 브레이크 어드레스 저장 레지스터(34) 및 액세스 조건 저장 레지스터(43)에는 각 브레이크조건, 및 액세스조건으로서 어드레스"n"를 지시하는 신호가 저장된다.
액세스 포인트 패스 카운터(46)의 오버플로우 카운트 수는 N으로 설정된다.
마이크로컴퓨터(20)에 의해 실행되고 에뮬레이트되어야 하는 프로그램이 미리 프로그램메모리(41)에 기록된다.
이 액세스 포인트 패스 카운터(46)는 최초 "L"로 설정되고, 모든 스위치 (47a-47e)는 off(차단)상태로 된다.
먼저, CPU(21)에서의 프로그램 카운터(27)은 어드레스 버스(29)에 어드레스 신호를 순차 출력한다.
프로그램 메모리(41)는 어드레스에 의해 지정되고 에뮬레이트되어야 하는 프로그램의 명령코드를 데이타버스(30)을 경유해서 CPU(21)로 출력한다.
CPU(21)는 이 명령코드를 디코드하고 명령을 실행해서 에뮬레이트 동작을 실행한다.
서브루틴에서의 명령 코드"Xn"는 에뮬레이션되어야 하는 프로그램에서 복수회 실행되고, 제 3 도에 나타난바와 같이 어드레스버스(29)에 복수회 어드레스 "n"가 출력된다.
제 3 도를 참조해서, 마이크로컴퓨터(20)의 동작 클럭에 따라 프로그램 카운터에 의해 어드레스가 순차 출력된다.
(N-1)번째의 어드레스 "n"를 출력중에, 어드레스조건일치회로(45)는 일치검출신호를 출력하도록 액세스조건저장레지스터에 저장된 어드레스 "n"와 (N-1)번째의 어드레스 "n"와의 사이에 일치하는것을 검출한다.
비록, 도면에는 나타나지 않았지만, 어드레스 "n"는 이미 "(N-2)"회 출력되었고, 따라서, 일치검출신호가 매번 출력된다.
액세스 포인트 패스 카운터(46)의 출력은 (N-1)번째의 어드레스"n"의 출력시점에서 "L"상태로 존재한다.
상태신호발생회로(28)는 CPU(2)가 명령코드의 폐치동작인것을 나타내는 SYNC신호(31)를 출력한다.
프로그램 메모리(41)는 SYNC신호(31)에 동기로 어드레스 "n" 를 수신하도록 구성된다.
상태신호발생회로(28)는 CPU(2)가 데이타의 판독 동작인것을 나타내는 RD신호(32)를 출력한다.
RD신호(32)를 수신중에, 프로그램 메모리(41)는 CPU(2)에 명령코드 "Xn"를 출력한다.
실행되는 CPU(2)에 의해 명령코드"Xn"가 판독된다.
다른 명령코드에 관해서도 유사한 동작이 실행된다.
그후, N번째 어드레스"n"이 출력될 때, 마찬가지로 액세스조건일치검출회로(45)가 일치검출신호를 출력한다.
액세스 포인트 패스 카운터(46)는 어드레스 일치에 응답해서 N번째 일치검출신호를 검출하고, 이 일치검출회로의 하강과 동기해서 "L"에서 "H"로 그 출력을 변화시킨다.
그후, (N+1)번째의 어드레스"n"에 관한 일치검출회로가 출력될 때, 오버플로우가 인식되어 "H"상태가 유지된다.
이 "H"상태는 브레이크허가신호로서 AND회로(36)와 스위치(47a-47b)에 입력된다.
마찬가지로, 브레이크 어드레스 저장 레지스터(34) 또한 어드레스"n"를 저장한다.
브레이크 어드레스 일치 검출 회로(35)는 어드레스버스(29)에 출력된 어드레스신호와 이 어드레스"n"를 비교한다.
그들이 서로 일치할 때, 회로(35)는 일치 검출신호를 출력한다.
예컨데, 제 3 도에 나타난바와 같이, 브레이크 어드레스 일치 검출 회로(35)로 부터의 일치검출신호는 액세스 조건 일치 검출 회로(45)로 부터의 것과 동일의 타이밍에서 출력된다.
브레이크 어드레스 조건 검출 회로(35)의 출력은 브레이크 검출 회로인 AND 회로(36)에 입력된다.
그래서, 액세스 포인트 패스 카운터(46)의 출력이 "H"상태에 있을 때만, 브레이크 어드레스 일치 검출 회로(35)의 일치 검출 신호가 OR회로(37)로 인가된다.
브레이크 어드레스 저장 레지스터(34)가 (N+1)번째의 어드레스"n"에 대하여 일치검출신호를 출력할 때, 액세스 포인트 패스 카운터(46)가 "H"상태로 있으면서, 일치검출신호가 AND회로(36)로 부터 출력된다.
즉, 브레이크결정회로(AND 회로(36))는 먼저, (N+1)번째의 어드레스"n"의 일치 검출에 대해서 유효인지를 결정해서, OR회로(37)에 그 일치 검출 신호를 입력한다.
OR회로(37)의 다른 입력은 소프트웨어 브레이크 신호(S. BRK신호)(38)이다.
신호(38)은 프로그램 메모리(41)에 기록된 브레이크명령코드를 CPU(2)에서 디코드함으로써 생성된 브레이크 인터럽션 요구 신호이다.
그러나, 이 실시예에 있어서는, "L"상태로 있도록 S.BRK신호(38)가 발생되지 않는것으로 가정한다.
이와같이, 어드레스"n"에 관해 (N+1)번째의 일치검출신호가 그대로 OR회로 (37)로부터 인 것과 같이 브레이크 인터럽션 요구 신호로서 ICU(22)에 입력된다.
브레이크 인터럽션 생성 회로(24)는 브레이크 인터럽션 요구 신호로서 입력된 일치 검출 신호에 근거해 브레이크 인터럽션 신호를 생성한다.
이 브레이크 인터럽션 신호가 CPU(21)에 입력될 때, CPU(21)는 인터럽션 동작을 개시한다.
CPU(21)는 어드레스"n"에 응답해서 데이타버스(30)에 출력된 명령코드"Xn"를 합병하지 않거나 비록 합병하더라도, 그 실행이 중지되도록 제어한다.
CPU(21)에 내장된 인터럽션 벡터 발생 회로(26)는 브레이크 인터럽션신호에 대응하는 인터럽션 요구 팩터에 응답해서 벡터 어드레스를 발생하고 그것을 프로그램 카운터(27)로 출력한다.
프로그램 카운터(27)는 이 벡터 어드레스를 입력하는것과 어드레스"n"의 다음의 어드레스 신호인 어드레스"(n+1)"를 출력하지 않으나, 모니터되는 추적메모리(42)로 마이크로컴퓨터의 동작내용을 합병하기 위한 모니터 프로그램의 명령코드를 지정하는 어드레스"m"를 출력한다.
한편, 에뮬레이터(40)에 있어서, 액세스 포인트 패스 카운터(46)로 부터의 "H"상태의 브레이크 허가 신호를 수신중에, 스위치(47a-47e)의 OFF상태는 ON상태로 전환되어서, 어드레스 버스(29), 데이타 버스(30), SYNC신호선(31), RD신호선(32) 및 WR신호선(33)으로 부터의 데이타와 신호가 추적메모리(42)로 합병된다.
프로그램 메모리(41)는 그안에 모니터 프로그램을 기억한다.
이 모니터 프로그램은 CPU(2)의 인터럽션 처리로서 어드레스"m"을 합병함으로써 개시된다.
이 모니터 프로그램을 실행함으로써, 실행중지시의 에뮬레이트되어야 하는 프로그램의 실행상태, 예컨데, 마이크로컴퓨터(20)내의 각 레지스터의 데이타 및 RAM(23)이 데이타는 스위치(47a-47e)를 경유해서 추적 메모리(42)에 기록된다.
상기 설명된바와 같이, 서브루틴내의 명령코드"Xn"가 복수회 실행되고, 예컨데 (N+1)번째의 명령코드"Xn"의 실행 직전에서 브레이크가 행해진 경우, 브레이크 조건에 대응하는 액세스조건이 어드레스"n"이 N회 출력된 것이다. 즉 에뮬레이터에서, 마이크로컴퓨터동작이 이 액세스조건을 추적한 후에, 마이크로컴퓨터 그스스로 브레이크조건인 어드레스 "n"의 일치를 검출한다.
이 실시예에 따르면, 명령 코드가 복수회 실행된 후에 프로그램 브레이크 동작을 행한 경우, 브레이크동작(즉, 마이크로컴퓨터 동작이 액세스 조건을 추적한다.)을 결정하는 브레이크조건에 대하여 일치를 검출하는 장치로 마이크로컴퓨터가 설치되지만, 에뮬레이터는 브레이크조건을 액세스하게 액세스 조건에 대하여 일치를 검출하는 장치로 설치된다.
그 최종적인 브레이크 포인트가 마이크로컴퓨터에서만 검출됨으로, 복수의 일치 검출 신호를 카운트하는 카운터를 마이크로컴퓨터에 설치하는것이 필요하지 않다.
브레이크 조건과 일치중에 실행 프로그램의 브레이크 요구 신호를 CPU(21)로 발생할수 있다.
또한, 브레이크 요구 신호가 마이크로컴퓨터내부에서 발생됨으로, 종래의 문제점, 즉, 마이크로컴퓨터와 에뮬레이터 사이의 배선용량에 의해 인터럽션요구 신호의 전송이 지연되어 ICU(22)에 전송되는 것은 기본적으로 제거된다.
따라서, 소정의 브레이크 포인트에서 인터럽션이 확실히 행해진다.
특히, 최근 마이크로컴퓨터는 10MHz이상의 고주파수의 클럭에 응답해서 동작 하는 것이 요구된다.
이 고동작주파수의 마이크로컴퓨터에서도 에뮬레이션시에 인터럽션 처리를 안정하게 행할 수 있다.
또한, 마이크로컴퓨터측상에 최종적인 브레이크 조건에 대하여 일치를 검출하는 장치가 설치되어, 마이크로컴퓨터에 탑재되는 회로면적을 보다 적게 할 수 있다.
그래서, 마이크로컴퓨터가 실제로 사용되는 때, 소형화를 기할 수 있다.
이 실시예에 있어서, 스위치(47a-47e)는 어드레스 버스(29), 데이타 버스(30), SYNC신호선(31), RD신호선(32) 및 WR신호선(33)에서 추적메모리(42)로 입력된 데이타 및 신호를 제어한다.
그러나, 신호가 항상 입력되고 상기 신호선의 상태가 각 입력클럭단위에서 저장될 수 있도록 이들 스위치를 제거할 수 있어서, 에뮬레이트되어야 하는 프로그램의 실행 시퀀스가 실현된다.
또한, 이 실시예에서 이러한 하드웨어의 구성에서 비록 인터럽션 처리를 행하더라도, 미리 에뮬레이트되어야 하는 프로그램에 브레이크 명령 코드를 삽입함으로써 그리고, CPU(20)가 이 브레이크명령코드를 디코드함으로써 발생된 인터럽션요구신호를 제 2 도에 나타난 신호선(38)에 입력함으로써 하드웨어와 소프트웨어 모두에서 인터럽션처리를 실행해도 된다.
[실시예 2]
실시예 1에 있어서, 액세스 조건 저장 레지스터(44)에는 브레이크 어드레스 저장 레지스터(34)와 동일의 어드레스를 보유한다.
그러나, 이것에 한정되지 않는다.
레지스터는 에뮬레이션 프로그램의 브레이크가 행해진 조건에 따라 임의의 어드레스를 저정한다.
예컨데, 만약 명령코드 "z"를 지정하는 어드레스 "a"가 액세스 조건 저장 레지스터(44)에 저장되면, 명령코드"Xn"를 지정하는 어드레스"n"는 실시예 1과 같이 브레이크 어드레스 저장 레지스터(34)에 저장되고, 명령코드"z"를 N회 실행한 후, 명령코드"Xn"를 실행하기 직전에 브레이크를 행한다.
[실시예 3]
제 4 도에 나타난바와 같이, 액세스 조건 일치 회로(45)에 어드레스 버스(29)뿐만 아니라 에뮬레이터(40)에 입력된 데이타 버스(30), SYNC신호선(31), RD신호선(32), WR신호선(33)도 입력된다.
이 경우에 있어서, 액세스 조건 일치 회로(45)는 적용에 따른 이들 신호를 사용해서 액세스 조건 저장 레지스터(44)내의 브레이크조건을 액세스하기 위한 액세스조건을 설정 할수 있다.
예컨데, 어드레스번지"A"에 데이타"z"를 기록한 후, 피실행 명령코드"Xn"의 실행 직전에 브레이크하는 경우를 설명한다.
명령코드"Xn"를 지정하는 어드레스"n"는 브레이크 어드레스 저장 레지스터(34)에 저장되나, 어드레스"A", WR신호 및 데이타"z"는 액세스조건 저장 레지스터(44)에 저장된다.
액세스 포인트 패스 카운터(46)는 하나의 일치 검출 신호로 오버플로우를 야기 하도록 구성된다.
제 5 도의 타이밍챠트를 참조해서, 어드레스"A"는 어드레스버스(29)로 주어지고, CPU(2)에 의해 실행된 결과, 데이타"z"는 데이터버스로 주어진다.
상태신호발생회로(28)는 WR신호를 출력한다.
데이타"z" 가 어드레스번지"A"에 기록될 때, 어드레스 조건 일치 검출 회로(45)는 어드레스"A"와 데이타"z"와의 일치에 응답해서 일치검출신호를 출력한다.
그것을 수신중에, 액세스 포인트 패스 카운터(46)는 "H"상태로 된다.
이 "H"상태는 AND회로(36)에 입력된다.
그후, 브레이크 일치 검출 회로(34)에서 AND회로(36)로 전송된 일치 검출신호가 유효한가를 결정한다.
이 일치검출신호는 인터럽션 요구 신호로서 AND회로(36)로 부터 출력된다.
이후의 동작은 실시예 1과 동일하다.
또한, 만약 어드레스와 WR신호가 액세스 조건 저장 레지스터(44)에 저장되면, 임의 데이타가 어드레스에 의해 지정된 수로 기록될 때, 브레이크 허가 신호가 출력된다.
또한, 어드레스 및 데이타뿐만 아니라 SYNC신호 및 RD신호도 액세스 조건 저장 레지스터(44)에 저장될 수 있다.
예컨데, 만약 어드레스 및 RD신호가 저장되면, "어드레스에 의해 지정된 장소로 부터 어느 데이타 판독"하라는 액세스 조건으로서 설정될 수 있다.
[실시예 4]
제 6 도는 이 실시예의 에뮬레이션 장치를 나타내는 회로구성도이다.
참조부호 43는 제 1 액세스 조건 결정 회로를 나타내고, 47은 제 2 액세스 조건 결정회로이다.
양회로(43, 47)는 실시예 3의 액세스 조건 결정 회로로서 동일의 구조를 가진다.
참조부호 48는 브레이크 허가 신호를 생성하게 액세스 조건 결정회로(43, 47)로 부터 검출신호를 수신하는 논리회로를 나타낸다.
다른 참조부호는 실시예 3에서와 같은 동일의 부분을 나타낸다.
제 1, 제 2액세스 조건 결정 회로(43, 47)은 더 복잡한 액세스 조건을 허락한다.
예컨데, 제 2 액세스 조건 결정회로(47)는 어드레스"m"를 M회 검출했을시 검출신호를 출력하도록 설정되면서, 제 1 액세스 조건 결정 회로(43)는 어드레스"n"를 N회 검출했을시 검출신호를 출력하도록 설정된다.
논리 회로(48)는 AND회로에 의해 구성됨으로, 마이크로컴퓨터(20)의 실행상태는 어드레스"n"를 N회 출력하고, 또한 어드레스"m"를 M회 출력하는 것을 만족한 시점에서 논리회로(48)가 브레이크 허가 신호를 출력한다.
이 브레이크 허가 신호는 마이크로컴퓨터(20)에서 브레이크 조건과 일치가 유효한가를 결정하는 허가신호로서 AND회로(36)로 주어진다.
다른 동작은 실시예 1과 동일하다.
어드레스가 브레이크 조건이고, 그 어드레스가 브레이크 어드레스 저장 레지스터(34)에 저장되어야 하는 것을 주시해서, 최종 브레이크 포인트를 지시한다.
이것은 상기 어드레스"n"와 어드레스"m"에 제한되지 않는다.
또한, 논리회로(48)는 AND회로이외도 제 1, 제 2 액세스 조건 결정회로(43)로부터 각각의 검출신호를 선택적으로 브레이크 포인트로서 출력하도록 구성되어도 된다.
또한, 실시예 3에서 나타난바와 같이, 액세스 조건 저장 레지스터(44)은 어드레스뿐만 아니라 명령실행의 결과 데이타등, 데이타 버스(30), SYNC신호(31), RD신호(32) 및 WR신호(33)상의 데이타 및 신호도 그안에 저장하므로서, 더 복잡한 액세스조건하에서도 확실한 브레이크동작이 가능하다.
액세스 조건에 따르면 실시예와 동일구성의 복수의 액세스 조건 결정 수단이 복수회 설치되어도 된다.
[실시예 5]
제 7 도는 실시예의 에뮬레이션장치를 나타내는 회로구성도이다.
이 도면에 있어서, 참조부호 51는 브레이크조건으로서 어드레스이외의 데이타신호를 저장하는 브레이크 조건 저장 레지스터를 나타낸다.
실행 결과 데이타, SYNC신호, RD신호, WR신호등은 데이타 버스를 경유해서 저장된다.
참조부호 53는 브레이크 조건 저장 레지스터(51)에 저장된 내용과 각종 신호(52)를 비교함으로서 일치하는 것을 검출하는 브레이크 조건 일치 검출 회로를 나타낸다.
다른 참조부호는 실시예 1-4와 동일의 구성과 동작의 부분을 나타낸다.
AND회로(36)는 에뮬레이터(48)에서 브레이크 어드레스 일치 검출 회로(35), 브레이크 조건 일치 검출 회로(53) 및 에뮬레이터(48)의 논리 회로로 부터의 출력의 논리적을 출력한다.
실시예에 있어서, 어드레스이외의 소망의 조건은 최종적인 브레이크조건으로서 설정될 수 있다.
(1) 어드레스"A"는 브레이크 어드레스 저장 레지스터(34)에 저장되지만, RD신호는 브레이크 조건 저장 레지스터(51)에 저장된다.
최종 브레이크 조건으로서 어드레스 번지 "A"로 부터의 판독시에 인터럽션 처리가 행해진다.
(2) 어드레스"A"는 브레이크 어드레스 저장 레지스터(34)에 저장되지만, RD 신호 및 데이타"z"는 브레이크 조건 저장 레지스터(51)에 저장된다.
최종적인 브레이크 조건으로서 어드레스 번지"A"로 부터 데이타"z"가 판독된시에 인터럽션 처리가 행해진다.
(3) 어드레스"A"는 브레이크 어드레스 저장 레지스터(34)에 저장되지만, WR 신호는 브레이크 조건 저장 레지스터(51)에 저장된다.
최종적인 브레이크 조건으로서 어드레스 번지"A"로의 기록시에 인터럽션 처리가 행해진다.
(4) 어드레스"A"는 브레이크 어드레스 저장 레지스터(34)에 저장되지만, WR신호 및 데이타"Z"는 브레이크 조건 저장 레지스터(51)에 저장된다.
최종적인 브레이크 조건으로서 어드레스"A"로 데이타"z"가 기록된시에 인터럽션처리가 행해진다.
(5) 어드레스"A" 및 SYNC신호는 브레이크 어드레스 레지스터(32)에 저장된다.
어드레스"A"에 명령코드를 페치할때에 인터럽션 처리가 행해진다.
이것은 소망하지 않는 타이밍에서 명령을 페치한 경우의 디버그 처리에 사용된다.
그래서, 에뮬레이트 동작에 따라, 데이타의 판독, 데이타의 기록, 명령의 페치등을 개별적으로 사용함으로서 임의의 필요한 브레이크 조건이 설정될 수 있다.
동시에, 에뮬레이트 장치는 마이크로컴퓨터내에 간단한 하드웨어 회로로 구성 될 수 있다.
상기 설명된 바와 같이, 제 1 관점의 에뮬레이션 장치에 따르면, 에뮬레이션 측에서 어드레스신호가 브레이크 조건에 액세스하기 위한 액세스 조건 어드레스와 일치한것이 검출되고, 이 검출신호는 브레이크 허가 신호로서 마이크로컴퓨터측의 브레이크 허가 결정 수단에 입력된다.
마이크로컴퓨터측에서, 어드레스신호가 브레이크조건인 브레이크 어드레스와 일치한 것을 검출하고, 브레이크 허가 결정 수단이 에뮬레이터로 부터 브레이크허가신호를 수신할 때, 브레이크 어드레스의 일치검출신호를 유효인가를 판단해서 인터럽션요구신호로서 출력해서, 중앙처리수단에 인터럽션 제어를 허가한다.
따라서, 동일의 어드레스 신호가 액세스 조건 어드레스로서 출력된후에 어드레스 신호와 브레이크 어드레스가 일치할 때 인터럽션 처리가 행해진다.
또한, 마이크로컴퓨터에서, 브레이크 어드레스의 일치검출신호가 생성된 직후에, 인터럽션 요구 신호로서 지연하는것 없이 인터럽션 처리가 행해진다.
소정의 프로그램 실행의 포인트에서 인터럽션 처리를 확실히 행할수있다는 효과가 얻어진다.
특히, 고주파수에서 동작된 마이크로컴퓨터에서도, 소정의 프로그램의 포인트에서 에뮬레이션시에 인터럽션 처리가 확실히 행해진다.
어드레스신호가 액세스 조건 어드레스와 복수회 일치할 때, 액세스 조건 결정 수단은 브레이크 포인트 신호를 출력함으로, 액세스 조건 어드레스로서 동일의 어드레스 신호가 소정의 복수회 출력된 후에 어드레스신호가 브레이크 어드레스와 일치한 시점에서 인터렵션이 행해진다.
이 경우에, 마이크로컴퓨터내에서, 브레이크 어드레스의 일치 검출신호가 발생된 직후에, 인터렵션 요구 신호로서 지연하는것 없이 인터럽션 처리가 행해진다.
소정의 프로그램 실행의 포인트에서 인터럽션 처리를 확실히 행할수있다는 효과가 얻어진다.
제 2관점의 에뮬레이터는 중앙처리수단으로 부터의 어드레스신호가 제 1 액세스 조건 어드레스와 일치한 것을 검출할 때, 제 1 일치신호를 출력하고, 어드레스신호가 제 2 액세스조건어드레스와 일치한것을 검출할때, 제 2 일치 신호를 출력하고, 이 제 1 , 제 2 일치신호를 검출할 때, 브레이크 허가 신호를 브레이크허가결정수단에 출력하는것과 같이 구성된다.
이와같이, 브레이크 어드레스를 허가하는 복수의 액세스 조건 어드레스가 설정될 수 있다.
이 최종적인 브레이크 포인트를 액세스하기는 비록 조건이 복잡하더라도, 소정의 포인트에서 인터럽션 처리를 확실히 행할수있다는 효과가 얻어진다.
일례로, 제 1, 제 2관점에 있어서, 브레이크 어드레스는 프로그램에서의 명령코드를 나타내는 어드레스이고, 브레이크 허가 결정 수단이 일치검출신호를 유효인지 판단할때, 중앙처리수단이 명령코드를 실행시키지 않는것과 같이 브레이크제어수단이 중앙처리수단을 제어한다.
그래서, 이것은 소망의 명령코드에 의해 브레이크가 행해지는 에뮬레이크동작을 허락한다.
다른 예로서, 제 1, 제 2관점에 있어서, 브레이크 어드레스는 데이타 판독 또는 데이타 기록으로 부터의 장소를 지정하는 어드레스이고, 브레이크 허가 결정 수단이 일치 검출 신호가 유효인가를 판단하고, 브레이크 제어수단은 이 브레이크 어드레스에 의해 지정된 장소에 데이타 판독 또는 데이터 기록이 될 때, 브레이크 제어수단은 중앙처리수단의 처리를 중단한다.
그래서, 이것은 소망의 어드레스 번지에서 데이타 판독 또는 데이타 기록시의 브레이크가 행해지는 에뮬레이크동작을 허락한다.
또한, 제 1, 제 2관점에 있어서, 브레이크 조건 일치 결정 수단은 브레이크 어드레스 및 제 1 데이타값을 저장하고; 어드레스신호가 상기 브레이크 어드레스와 일치하고, 또한 데이타를 운반하는 데이타버스에 출력된 데이타신호가 제 1 데이타값과 일치할 때, 브레이크 어드레스 조건 결정 수단으로 일치검출신호를 출력하고, 브레이크허가결정수단이 일치검출신호가 유효인지 판단하고, 브레이크 어드레스에 의해 지정된 장소에 제 1 데이타값의 판독 또는 기록할 때, 브레이크 제어 수단은 중앙처리수단의 처리를 중단한다.
이와같이, 이것은 소망의 어드레스번지에 소망의 데이타가 판독 또는 기록시에 브레이크기 행해지는 에뮬레이트동작을 허락한다.
또한, 제 1, 제 2 관점에 있어서, 액세스 조건 어드레스는 프로그램내의 명령코드를 지정하는 어드레스이다.
그래서, 에뮬레이션 장치는 소망의 명령코드를 실행한 후에 브레이크동작이 실행되는것과 같이 용이하게 설정될 수 있다.
또한, 제 1 , 제 2 관점에 있어서, 액세스 조건 어드레스는 데이타 판독 또는 데이타기록으로부터의 장소를 지정하는 어드레스이다.
그래서, 에뮬레이션 장치는 소망의 어드레스번지에 데이타판독 또는 데이타 기록을 실행한 후에 브레이크 동작이 행해지는것과 같이 용이하게 설정된다.
또한, 제 1, 제 2 관점에 있어서, 액세스 조건 결정 수단은 제 2 데이타값을 저장하는 데이타저장수단을 구비하고, 어드레스 신호가 제 2 데이타값을 판독 또는 기록 장소를 지정하는 액세스 조건 어드레스와 일치하며 데이타를 운반하는 데이타버스에 출력된 데이타 신호가 제 2 데이타값과 일치하는것을 검출한다.
이와같이, 에뮬레이션장치는 소망의 어드레스번지에 소망의 데이타값이 판독 또는 기록된 후에 브레이크동작이 실행되는것과 같이 용이하게 설정될 수 있다.

Claims (53)

  1. 마이크로컴퓨터와, 상기 마이크로컴퓨터의 에뮬레이트 동작을 제어하는 에뮬레이터를 설치하고, 상기 마이크로컴퓨터에 의해 실행되는 프로그램의 인터럽션 제어를 행하는 에뮬레이션장치에 있어서, 상기 마이크로컴퓨터는 상기 프로그램을 실행하기 위한 어드레스 신호를 출력하는 중앙처리수단과, 브레이크 조건을 지시하는 브레이크 어드레스를 저장하고, 상기 어드레스 신호가 상기 브레이크 어드레스에 일치할 때, 일치검출신호를 출력하는 브레이크 조건 일치 검출 수단과, 상기 일치 검출 신호의 유효 또는 무효를 결정하는 브레이크 허가 결정 수단과, 상기 브레이크 허가 결정 수단이 상기 일치 검출신호를 유효인가를 결정할 때, 상기 일치검출신호를 입력해서 상기 프로그램의 실행과 처리를 정지하도록 상기 중앙처리수단을 제어하는 브레이크 제어 수단을 구비하고, 상기 에뮬에이터는 상기 브레이크조건에 액세스하기 위한 액세스 조건 어드레스를 저장하고, 상기 어드레스 신호를 모니터해서, 어드레스 신호가 상기 액세스 조건 어드레스와 일치한것을 검출할 때, 상기 브레이크 허가 결정 수단에 브레이크 허가신호를 출력하는 액세스 조건 결정 수단을 구비하고, 상기 브레이크 허가 결정수단수단은 상기 브레이크 허가 결정 수단에 상기 브레이크 허가 신호가 입력될 때, 상기 일치 검출신호가 유효인가를 결정하도록한것을 특징으로하는 에뮬레이션 장치.
  2. 제1항에 있어서, 상기 액세스 조건 결정 수단은 어드레스신호가 상기 액세스 조건 어드레스와 복수회 일치할 때, 브레이크 허가 신호를 출력하는 에뮬레이션 장치.
  3. 제2항에 있어서, 상기 액세스 조건 결정 수단은 상기 액세스 조건 어드레스를 저장하는 액세스 조건 저장 레지스터와, 어드레스신호가 액세스 조건 어드레스와 일치할 때 조건 일치 신호를 출력하는 조건 일치 검출 회로와, 상기 조건 일치 신호는 복수회 계수될 때 브레이크 허가 신호를 출력하는 카운터를 구비한 에뮬레이션 장치.
  4. 제1항에 있어서, 상기 브레이크 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스이고, 상기 브레이크 허가 결정 수단이 상기 일치 검출 신호가 유효인가를 결정할 때, 상기 브레이크 제어 수단은 상기 중앙처리수단이 명령코드를 실행시키지 않도록 상기 중앙처리수단을 제어하는 에뮬레이션장치.
  5. 제2항에 있어서, 상기 브레이크 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스이고, 상기 브레이크허가 결정 수단이 상기 일치 검출 신호가 유효인가를 판단할 때, 상기 브레이크 제어 수단은 상기 중앙처리수단이 명령코드를 실행시키지 않도록 상기 중앙처리수단을 제어하는 에뮬레이션장치.
  6. 제3항에 있어서, 상기 브레이크 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스이고, 상기 브레이크허가 결정 수단이 상기 일치 검출 신호가 유효인가를 판단할 때, 상기 브레이크 제어 수단은 상기 중앙처리수단이 명령코드를 실행시키지 않도록 상기 중앙처리수단을 제어하는 에뮬레이션장치.
  7. 제1항에 있어서, 상기 브레이크 어드레스는 데이타 판독 또는 데이타 기록의 장소를 지정하는 어드레스이고, 상기 브레이크허가 결정 수단이 상기 일치 검출 신호가 유효인가를 결정하고, 상기 브레이크 어드레스에 의해 지정된 장소에 데이타 판독 또는 데이타 기록이 될 때, 상기 브레이크 제어수단은 중앙처리수단의 처리를 정지하는 에뮬레이션장치.
  8. 제2항에 있어서, 상기 브레이크 어드레스는 데이타 판독 또는 데이타 기록의 장소를 지정하는 어드레스이고, 상기 브레이크허가 결정 수단이 상기 일치 검출 신호가 유효인가를 결정하고, 상기 브레이크 어드레스에 의해 지정된 장소에 데이타 판독 또는 데이타 기록이 될 때, 상기 브레이크 제어수단은 중앙처리수단의 처리를 정지하는 에뮬레이션장치.
  9. 제3항에 있어서, 상기 브레이크 어드레스는 데이타 판독 또는 데이타 기록의 장소를 지정하는 어드레스이고, 상기 브레이크허가 결정 수단이 상기 일치 검출 신호가 유효인가를 결정하고, 상기 브레이크 어드레스에 의해 지정된 장소에 데이타 판독 또는 데이타 기록이 될 때, 상기 브레이크 제어수단은 중앙처리수단의 처리를 정지하는 에뮬레이션장치.
  10. 제1항에 있어서, 상기 브레이크 조건 일치 검출 수단은 상기 브레이크 어드레스 및 제 1 데이타값을 저장하고, 어드레스신호가 상기 브레이크 어드레스와 일치하고, 데이타를 전송하는 데이타버스에 출력된 데이타신호가 상기 제 1 데이타값과 일치할 때, 상기 브레이크 어드레스 조건 결정 수단은 상기 일치 검출신호를 출력하고, 상기 브레이크 허가 결정 수단은 상기 일치 검출 신호를 유효인가를 결정하고, 상기 브레이크 어드레스에 의해 지정된 장소에 데이타 판독 또는 데이타 기록이 될 때, 상기 브레이크 제어 수단은 중앙처리수단의 처리를 정지하는 에뮬레이션장치.
  11. 제2항에 있어서, 상기 브레이크 조건 일치 검출 수단은 상기 브레이크 어드레스와 제 1 데이타값을 저장하고, 어드레스신호가 상기 브레이크 어드레스와 일치하고, 데이타를 전송하는 데이타버스에 출력된 데이타신호가 상기 제 1 데이타값과 일치할 때, 상기 브레이크 어드레스 조건 결정 수단은 상기 일치 검출신호를 출력하고, 상기 브레이크 허가 결정 수단이 상기 일치 검출신호를 유효한가를 결정하고, 상기 브레이크 어드레스에 의해 지정된 장소에 데이타 판독 또는 데이타 기록이 될 때, 상기 브레이크 제어수단은 중앙처리수단의 처리를 정지하는 에뮬레이션장치.
  12. 제3항에 있어서, 상기 브레이크 조건 일치 검출 수단은 브레이크 어드레스와 제 1 데이타값을 저장하고, 어드레스신호가 상기 브레이크 어드레스와 일치하고, 데이타를 전송하는 데이타버스에 출력된 데이타신호가 상기 제 1 데이타값과 일치할 때, 상기 브레이크 어드레스 조건 결정 수단은 상기 일치 검출신호를 출력하고, 상기 브레이크허가 결정 수단이 상기 일치 검출신호를 유효인가를 결정하고, 상기 브레이크 어드레스에 의해 지정된 장소에 데이타 판독 또는 데이타 기록이 될 때, 상기 브레이크 제어수단은 중앙처리수단의 처리를 정지하는 에뮬레이션장치.
  13. 제1항에 있어서, 상기 액세스 조건 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스인 에뮬레이션 장치.
  14. 제2항에 있어서, 상기 액세스 조건 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스인 에뮬레이션 장치.
  15. 제3항에 있어서, 상기 액세스 조건 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스인 에뮬레이션 장치.
  16. 제1항에 있어서, 상기 액세스 조건 어드레스는 데이타 판독 또는 데이타 기록 장소를 지정하는 어드레스인 에뮬레이션 장치.
  17. 제2항에 있어서, 상기 액세스 조건 어드레스는 데이타 판독 또는 데이타 기록 장소를 지정하는 어드레스인 에뮬레이션 장치.
  18. 제3항에 있어서, 상기 액세스 조건 어드레스는 데이타 판독 또는 데이타 기록 장소를 지정하는 어드레스인 에뮬레이션 장치.
  19. 제1항에 있어서, 상기 액세스 조건 결정 수단은 제 2 데이타값을 저장하는 데이타 저장 수단을 가지고, 어드레스신호가 제 2 데이타값의 판독 또는 제 2 데이타값의 기록 장소를 지정하는 상기 액세스 조건 어드레스와 일치하고, 데이타를 전송하는 데이타 버스에 출력된 데이타신호가 제 2 데이타 값과 일치하는것을 검출하는 에뮬레이션 장치.
  20. 제2항에 있어서, 상기 액세스 조건 결정 수단은 제 2 데이타값을 저장하는 데이타 저장 수단을 가지고, 어드레스신호가 제 2 데이타값의 판독 또는 제 2 데이타값의 기록 장소를 지정하는 상기 액세스 조건 어드레스와 일치하고, 데이타를 전송하는 데이타 버스에 출력된 데이타신호가 제 2 데이타 값과 일치하는것을 검출하는 에뮬레이션 장치.
  21. 제3항에 있어서, 상기 액세스 조건 결정 수단은 제 2 데이타값을 저장하는 데이타 저장 수단을 가지고, 어드레스신호가 제 2 데이타값의 판독 또는 제 2 데이타값의 기록의 장소를 지정하는 상기 액세스 조건 어드레스와 일치하고, 데이타를 전송하는 데이타 버스에 출력된 데이타신호가 제 2 데이타 값과 일치하는것을 검출하는 에뮬레이션 장치.
  22. 마이크로컴퓨터와, 상기 마이크로컴퓨터의 에뮬레이트 동작을 제어하는 에뮬레이터를 설치하고, 상기 마이크로컴퓨터에 의해 실행된 프로그램의 인터럽션을 제어하는 에뮬레이션 장치에 있어서, 상기 마이크로컴퓨터는 어드레스 신호를 출력해서 상기 프로그램을 실행하는 처리를 행하는 중앙처리수단과, 브레이크 조건을 지시하는 브레이크 어드레스를 저장하고, 어드레스 신호가 상기 브레이크 어드레스와 일치할 때, 일치검출신호를 출력하는 브레이크 조건 일치 검출 수단과, 상기 일치 검출신호의 유효 또는 무효를 판단하는 브레이크 허가 결정 수단과, 상기 브레이크 허가 결정 수단이 상기 일치 검출신호를 유효인가를 결정하고, 상기 일치 검출신호를 입력해서 상기 프로그램의 실행과 처리를 정지하도록 상기 중앙처리수단을 제어하는 브레이크 제어수단을 구비하고, 상기 에뮬레이터는 브레이크조건을 액세스하는 제 1 액세스 조건 어드레스를 저장하고, 상기 어드레스신호를 모니터해서, 어드레스 신호가 상기 제 1 액세스 조건 어드레스와 일치한것을 검출할 때, 제 1 일치 신호를 출력하는 제 1 액세스 조건 결정 수단과, 상기 브레이크 조건을 액세스하게 제 2 액세스 조건 어드레스를 저장하고, 상기 어드레스 신호를 모니터해서, 어드레스 신호가 제 2 액세스조건 어드레스와 일치한것을 검출할 때, 제 2 일치 신호를 출력하는 제 2 액세스 조건 결정수단과, 상기 제 1, 제 2 일치 신호가 검출될 때, 브레이크 허가 신호를 출력하는 논리회로를 구비하고, 상기 브레이크 허가 결정 수단은 상기 브레이크 허가 신호가 상기 브레이크 허가 결정 수단에 입력될 때, 상기 일치 검출 신호를 유효인지 판단하는 에뮬레이션 장치.
  23. 제22항에 있어서, 상기 제 1, 제 2 액세스 조건 결정 수단은 어드레스신호가 적어도 하나의 제 1, 제 2 액세스 조건 어드레스와 복수회 일치한것을 검출하는 에뮬레이션 장치.
  24. 제22항에 있어서, 상기 브레이크 어드레스는 상기 프로그램내의 명령코드를 나타내는 어드레스이고, 상기 브레이크허가 결정 수단이 상기 일치 검출신호가 유효인가를 결정할 때, 상기 브레이크 제어수단은 상기 중앙처리수단이 명령코드를 실행시키지 않도록 중앙처리수단을 제어하는 에뮬레이션장치.
  25. 제23항에 있어서, 상기 브레이크 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스이고, 상기 브레이크허가 결정 수단이 상기 일치 검출신호가 유효인가를 결정할 때, 상기 브레이크 제어 수단은 상기 중앙처리수단이 명령코드를 실행시키지 않도록 중앙처리수단을 제어하는 에뮬레이션장치.
  26. 제22항에 있어서, 상기 브레이크 어드레스는 데이타 판독 또는 데이타 기록 장소를 지정하는 어드레스이고, 상기 브레이크허가 결정 수단이 상기 일치 검출신호가 유효인가 결정하고, 상기 브레이크 어드레스에 의해 지정된 장소에 데이타 판독 또는 데이타 기록이 될 때, 상기 브레이크 제어수단은 상기 중앙처리수단의 처리를 정지하는 에뮬레이션장치.
  27. 제23항에 있어서, 상기 브레이크 어드레스는 데이타 판독 또는 데이타 기록의 장소를 지정하는 어드레스이고, 상기 브레이크허가 결정 수단이 상기 일치 검출 신호가 유효인가 결정하고, 상기 브레이크 어드레스에 의해 지정된 장소에 데이타 판독 또는 데이타 기록이 될 때, 상기 브레이크 제어 수단은 상기 중앙처리수단의 처리를 정지하는 에뮬레이션장치.
  28. 제22항에 있어서, 상기 브레이크 조건 일치 검출 수단은 상기 브레이크 어드레스 및 제 1 데이타값을 저장하고, 어드레스신호가 상기 브레이크 어드레스와 일치하고, 데이타를 전송하는 데이타버스에 출력된 데이타신호가 상기 제 1 데이타값과 일치할 때, 상기 브레이크 어드레스 조건 결정 수단은 상기 일치 검출신호를 출력하고, 상기 브레이크 허가 결정 수단이 상기 제 1 데이터 값이 유효인가 결정하고, 상기 제 1 데이터 값이 상기 브레이크 어드레스에 의해 지정된 장소에 판독 또는 기록이 될 때, 상기 브레이크 제어수단은 중앙처리수단의 처리를 정지하는 에뮬레이션장치.
  29. 제23항에 있어서, 상기 브레이크 조건 일치 검출 수단은 상기 브레이크 어드레스 및 제 1 데이타값을 저장하고, 어드레스신호가 상기 브레이크 어드레스와 일치하고, 데이타를 전송하는 데이타버스에 출력된 데이타신호가 상기 제 1 데이타값과 일치할 때, 상기 브레이크 어드레스 조건 결정 수단은 상기 일치 검출신호를 출력하고, 상기 브레이크 허가 결정 수단이 상기 일치 검출신호가 유효인가를 결정하고, 제 1 데이터 값이 상기 브레이크 어드레스에 의해 지정된 장소에 판독 또는 기록이 될 때, 상기 브레이크 제어수단은 중앙처리수단의 처리를 정지하는 에뮬레이션장치.
  30. 제22항에 있어서, 상기 액세스 조건 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스인 에뮬레이션 장치.
  31. 제23항에 있어서, 상기 액세스 조건 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스인 에뮬레이션 장치.
  32. 제24항에 있어서, 상기 액세스 조건 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스인 에뮬레이션 장치.
  33. 제25항에 있어서, 상기 액세스 조건 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스인 에뮬레이션 장치.
  34. 제26항에 있어서, 상기 액세스 조건 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스인 에뮬레이션 장치.
  35. 제27항에 있어서, 상기 액세스 조건 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스인 에뮬레이션 장치.
  36. 제28항에 있어서, 상기 액세스 조건 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스인 에뮬레이션 장치.
  37. 제29항에 있어서, 상기 액세스 조건 어드레스는 상기 프로그램내의 명령코드를 지정하는 어드레스인 에뮬레이션 장치.
  38. 제22항에 있어서, 상기 액세스 조건 어드레스는 데이타 판독 또는 데이타 기록의 장소를 지정하는 어드레스인 에뮬레이션 장치.
  39. 제23항에 있어서, 상기 액세스 조건 어드레스는 데이타 판독 또는 데이타 기록의 장소를 지정하는 어드레스인 에뮬레이션 장치.
  40. 제24항에 있어서, 상기 액세스 조건 어드레스는 데이타 판독 또는 데이타 기록의 장소를 지정하는 어드레스인 에뮬레이션 장치.
  41. 제25항에 있어서, 상기 액세스 조건 어드레스는 데이타 판독 또는 데이타 기록의 장소를 지정하는 어드레스인 에뮬레이션 장치.
  42. 제26항에 있어서, 상기 액세스 조건 어드레스는 데이타 판독 또는 데이타 기록의 장소를 지정하는 어드레스인 에뮬레이션 장치.
  43. 제27항에 있어서, 상기 액세스 조건 어드레스는 데이타 판독 또는 데이타 기록의 장소를 지정하는 어드레스인 에뮬레이션 장치.
  44. 제28항에 있어서, 상기 액세스 조건 어드레스는 데이타 판독 또는 데이타 기록의 장소를 지정하는 어드레스인 에뮬레이션 장치.
  45. 제29항에 있어서, 상기 액세스 조건 어드레스는 데이타 판독 또는 데이타 기록의 장소를 지정하는 어드레스인 에뮬레이션 장치.
  46. 제22항에 있어서, 상기 액세스 조건 결정 수단은 제 2 데이타값을 저장하는 데이타 저장 수단을 가지고, 어드레스신호가 제 2 데이타값을 판독 또는 기록의 장소를 지정하는 상기 액세스 조건 어드레스와 일치하고, 데이타를 전송하는 데이타 버스에 출력된 데이타신호가 제 2 데이타 값과 일치하는 것을 검출하는 에뮬레이션 장치.
  47. 제23항에 있어서, 상기 액세스 조건 결정 수단은 제 2 데이타값을 저장하는 데이타 저장 수단을 가지고, 어드레스신호가 제 2 데이타값을 판독 또는 기록의 장소를 지정하는 상기 액세스 조건 어드레스와 일치하고, 데이타를 전송하는 데이타 버스에 출력된 데이타신호가 제 2 데이타 값과 일치하는 것을 검출하는 에뮬레이션 장치.
  48. 제24항에 있어서, 상기 액세스 조건 결정 수단은 제 2 데이타값을 저장하는 데이타 저장 수단을 가지고, 어드레스신호가 제 2 데이타값을 판독 또는 기록의 장소를 지정하는 상기 액세스 조건 어드레스와 일치하고, 데이타를 전송하는 데이타 버스에 출력된 데이타신호가 제 2 데이타 값과 일치하는 것을 검출하는 에뮬레이션 장치.
  49. 제25항에 있어서, 상기 액세스 조건 결정 수단은 제 2 데이타값을 저장하는 데이타 저장 수단을 가지고, 어드레스신호가 제 2 데이타값을 판독 또는 기록의 장소를 지정하는 상기 액세스 조건 어드레스와 일치하고, 데이타를 전송하는 데이타 버스에 출력된 데이타신호가 제 2 데이타 값과 일치하는 것을 검출하는 에뮬레이션 장치.
  50. 제26항에 있어서, 상기 액세스 조건 결정 수단은 제 2 데이타값을 저장하는 데이타 저장 수단을 가지고, 어드레스신호가 제 2 데이타값을 판독 또는 기록의 장소를 지정하는 상기 액세스 조건 어드레스와 일치하고, 데이타를 전송하는 데이타 버스에 출력된 데이타신호가 제 2 데이타 값과 일치하는 것을 검출하는 에뮬레이션 장치.
  51. 제27항에 있어서, 상기 액세스 조건 결정 수단은 제 2 데이타값을 저장하는 데이타 저장 수단을 가지고, 어드레스신호가 제 2 데이타값을 판독 또는 기록의 장소를 지정하는 상기 액세스 조건 어드레스와 일치하고, 데이타를 전송하는 데이타 버스에 출력된 데이타신호가 제 2 데이타 값과 일치하는 것을 검출하는 에뮬레이션 장치.
  52. 제28항에 있어서, 상기 액세스 조건 결정 수단은 제 2 데이타값을 저장하는 데이타 저장수단을 가지고, 어드레스신호가 제 2 데이타값을 판독 또는 기록의 장소를 지정하는 상기 액세스 조건 어드레스와 일치하고, 데이타를 전송하는 데이타 버스에 출력된 데이타신호가 제 2 데이타 값과 일치하는 것을 검출하는 에뮬레이션 장치.
  53. 제29항에 있어서, 상기 액세스 조건 결정 수단은 제 2 데이타값을 저장하는 데이타 저장 수단을 가지고, 어드레스신호가 제 2 데이타값을 판독 또는 기록의 장소를 지정하는 상기 액세스 조건 어드레스와 일치하고, 데이타를 전송하는 데이타 버스에 출력된 데이타신호가 제 2 데이타 값과 일치하는 것을 검출하는 에뮬레이션 장치.
KR1019950052200A 1994-12-19 1995-12-19 에뮬레이션장치 KR100285976B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP94-314767 1994-12-19
JP6314767A JPH08171504A (ja) 1994-12-19 1994-12-19 エミュレ−ション装置

Publications (2)

Publication Number Publication Date
KR960025210A KR960025210A (ko) 1996-07-20
KR100285976B1 true KR100285976B1 (ko) 2001-04-16

Family

ID=18057348

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950052200A KR100285976B1 (ko) 1994-12-19 1995-12-19 에뮬레이션장치

Country Status (3)

Country Link
US (1) US5761482A (ko)
JP (1) JPH08171504A (ko)
KR (1) KR100285976B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10214201A (ja) * 1997-01-29 1998-08-11 Mitsubishi Electric Corp マイクロコンピュータ
JP3872196B2 (ja) * 1998-01-09 2007-01-24 株式会社ルネサステクノロジ マイクロコンピュータ
JP3946393B2 (ja) * 1999-10-19 2007-07-18 株式会社東芝 階層構造をもつ並列計算機
WO2001069378A2 (en) * 2000-03-10 2001-09-20 Arc International Plc Method and apparatus for enhancing the performance of a pipelined data processor
JP4847734B2 (ja) * 2005-10-31 2011-12-28 ルネサスエレクトロニクス株式会社 半導体集積回路装置、それのデバッグシステム及びデバッグ方法。
WO2008099931A1 (ja) * 2007-02-15 2008-08-21 Fujitsu Ten Limited マイクロコンピュータの模擬装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4674089A (en) * 1985-04-16 1987-06-16 Intel Corporation In-circuit emulator
JPH0727471B2 (ja) * 1985-08-01 1995-03-29 日本電気株式会社 マイクロコンピュータ開発装置
US4875186A (en) * 1986-02-28 1989-10-17 Prime Computer, Inc. Peripheral emulation apparatus
EP0306644B1 (en) * 1987-07-06 1997-11-12 Hitachi, Ltd. Data processor having a break function
JPH04229337A (ja) * 1990-12-27 1992-08-18 Hitachi Ltd エミュレータ
US5321828A (en) * 1991-06-07 1994-06-14 Step Engineering High speed microcomputer in-circuit emulator
US5539901A (en) * 1993-09-30 1996-07-23 Intel Corporation Method and apparatus for system management mode support for in-circuit emulators

Also Published As

Publication number Publication date
KR960025210A (ko) 1996-07-20
JPH08171504A (ja) 1996-07-02
US5761482A (en) 1998-06-02

Similar Documents

Publication Publication Date Title
US6959367B2 (en) System having read-modify-write unit
RU2137182C1 (ru) Выполнение инструкции обработки данных
CA2549540C (en) A task management control apparatus and method
US5987585A (en) One-chip microprocessor with error detection on the chip
KR20020079163A (ko) 데이터의 천이 상태에 따른 디버깅 장치 및 방법
US7376820B2 (en) Information processing unit, and exception processing method for specific application-purpose operation instruction
US20050028036A1 (en) Program debug apparatus, program debug method and program
JP3397230B2 (ja) デバッグシステム
KR100285976B1 (ko) 에뮬레이션장치
US6505309B1 (en) Processing unit and method of debugging the processing unit
EP0638864B1 (en) Development support system for microcomputer with internal cache
EP0530816A2 (en) Microprocessor with cache memory and trace analyzer therefor
US4945472A (en) Data processor with I/O area detection
US5564014A (en) Apparatus/method for error detecting and retrying individual operands of an instruction
EP0687974B1 (en) Data processor having shared terminal for monitoring internal and external memory events
JPH11316695A (ja) ス―パ―スカラ―マイクロプロセッサ―の停止点インタ―ラプト発生装置
US5182754A (en) Microprocessor having improved functional redundancy monitor mode arrangement
EP0525672A2 (en) Microprocessor with program tracing
JP2002229811A (ja) 論理分割システムの制御方法
KR950001057B1 (ko) 마이크로 프로세서(micro processor)
JP2002108647A (ja) トレースメモリを内蔵した半導体装置及びプロセッサ開発支援装置
CA2619742C (en) An input/output control apparatus for performing high reliability computations
JPH07152598A (ja) インサーキット・エミュレータ
JP2859048B2 (ja) マイクロコンピュータ
JP3019336B2 (ja) マイクロプロセッサ開発支援装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 19990630

Effective date: 20000831

S901 Examination by remand of revocation
GRNO Decision to grant (after opposition)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050103

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee