KR940011041B1 - 마이크로컴퓨터 - Google Patents

마이크로컴퓨터 Download PDF

Info

Publication number
KR940011041B1
KR940011041B1 KR1019920009126A KR920009126A KR940011041B1 KR 940011041 B1 KR940011041 B1 KR 940011041B1 KR 1019920009126 A KR1019920009126 A KR 1019920009126A KR 920009126 A KR920009126 A KR 920009126A KR 940011041 B1 KR940011041 B1 KR 940011041B1
Authority
KR
South Korea
Prior art keywords
microcomputer
register
data
outside
serial interface
Prior art date
Application number
KR1019920009126A
Other languages
English (en)
Other versions
KR920022098A (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 KR920022098A publication Critical patent/KR920022098A/ko
Application granted granted Critical
Publication of KR940011041B1 publication Critical patent/KR940011041B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • 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/3656Software debugging using additional hardware using a specific debug interface

Abstract

내용 없음.

Description

마이크로컴퓨터
제 1 도는 종래의 마이크로컴퓨터의 블럭도.
제 2 도는 본 발명에 따른 마이크로컴퓨터의 제 1 실시예의 블럭도.
제 3 도는 제 2 도에 도시된 마이크로컴퓨터에 사용된 시리얼 인터페이스의 프로토콜을 도시하는 개략도.
제 4 도는 본 발명에 따른 마이크로컴퓨터의 제 2 실시예의 블럭도.
제 5 도는 제 4 도에 도시된 마이크로컴퓨터에 사용된 시리얼 인터페이스의 프로토콜을 도시하는 개략도.
* 도면의 주요부분에 대한 부호의 설명
100 : 마이크로컴퓨터 101 : 어드레스 버퍼
102 : 데이타 버퍼 103 : 어드레스 버스
104 : 데이타 버스 105 : ALU
106 : 레지스터 107 : 레지스터 어드레스 버스
108 : 내부 데이타 버스 110 : 비교기
111 : 레지스터 어드레스 설정 레지스터
140 : 데이타 보유 레지스터 150 : 명령 레지스터
151 : 레지스터 어드레스 발생 회로 200 : 메모리
300 : 시리얼 인터페이스 303 : 채널 선택기
400 : 인터벌 타이머
본 발명의 마이크로컴퓨터에 관한 것이며, 더 측정하게는 외부로부터 마이크로컴퓨터의 내부 자원을 모니터하는 기능을 갖는 마이크로컴퓨터에 관한 것이다.
제 1 도에 마이크로컴퓨터(100)과, 어드레스 버스(103) 및 데이타 버스(104)를 통해 접속된 메모리(200)이 도시되어 있다. CPU를 갖는 마이크로컴퓨터(100)은 연산-논리 유니트 ALU(105), 다수의 레지스터를 포함하는 레지스터(106), 명령 레지스터(150), 레지스터 어드레스 발생 회로(151), 어드레스 버퍼(101) 및 데이타 버퍼(102)로 구성되어 있고, 상술한 부재들을 접속하기 위한 내부 데이타 버스(108), 레지스터 어드레스 버스(107) 등과 같은 것을 더 포함한다.
통상적으로, 마이크로컴퓨터는 또한 임시 레지스터, 마이크로프로그램 ROM, 주변 회로들 및 다른 다양한 랜덤 논리회로들을 포함하고, 필요하면 ROM, RAM 등과 같은 것을 더 포함한다. 이 경우, 이 하드웨어들은 그렇게 중요하지 않기 때문에 간략하게 하기 위해 설명은 생략될 수 있다.
마이크로컴퓨터는 레지스터간 전송 명령, 레지스터간 연산 명령, 메모리간 및 레지스터간 전송 명령, 연산 명령, 분지(branch) 명령등과 같은 내부 저장된 다양한 명령들을 갖는다. 전형적인 명령들의 동작이 다음에 간단히 설명된다.
레지스터간 연산 명령에서, 명령 레지스터(150)에 저장된 레지스터 지정 정보로부터 선택된 대상 레지스터 어드레스가 레지스터 어드레스 발생 회로(151)에 의해 레지스터 어드레스 버스(107)에 출력된다. 대상 레지스터 어드레스는 레지스터(106)으로부터 판독되고, ALU(105)에서 선정된 동작을 수행한 후 내부 데이타 버스(108)을 통해 레지스터(106) 안에 있는 선정된 레지스터에 재기입된다.
레지스터간 전송 명령의 경우, 선정된 메모리 어드레스가 명령 레지스터(150)에 저장된 메모리 어드레스 정보로부터 형성되고[보통, 메모리 어드레스는 ALU(105)를 사용하여 덧셈과 같은 동작에 의해 형성된다. 그러나, 이는 본 발명과 직접적인 연관이 없기 때문에 상세한 설명은 생략될 수 있다], 형성된 메모리 어드레스는 내부 데이타 버스(106)을 통해 어드레스 버퍼(101)에 저장된다. 이 메모리 어드레스는 어드레스 버스(103)을 통해 외부 메모리(200)으로 출력된다. 메모리(200)으로부터 판독된 데이타는 데이타 버스(104)를 통해 데이타 버퍼(102)에 저장된다. 다음에, 데이타가 레지스터에 재기입될 때, 명령 레지스터(150)에 저장된 레지스터 지정 정보로부터 선택된 목적 레지스터 어드레스는 레지스터 어드레스 발생 회로(151)에 의해 레지스터 어드레스 버스(107)로 출력되고, 동시에 데이타 버퍼(102)의 내용은 내부 데이타 버스(108)을 통해 레지스터(106) 안에 있는 선정된 레지스터에 저장된다.
비록 두개의 전형적인 명령들의 동작이 간단하게 설명되었지만, 주의해야 할 점은 명령 실행동안 연산되어야 할 데이타가 마이크로컴퓨터(100)의 외부로 출력될 것인지의 여부이다. 레지스터와 메모리(200) 사이의 동작의 경우, 메모리(200)에 있는 어드레스는 어드레스 버스(103)으로 출력되고, 메모리(200)의 내용은 데이타 버스(104)로 출력된다. 따라서, 마이크로컴퓨터(100)의 밖에 있는 어드레스 버스(103)과 데이타 버스(104)를 모니터함으로써 (보통, 판독 또는 기입 스트로브 신호도 종종 모니터되지만, 그 상세한 설명은 생략된다), 어드레스와 데이타는 마이크로컴퓨터(100)의 동작을 방해하지 않고서 검출될 수 있기 때문에, 실행 상태가 마이크로컴퓨터(100)의 외부로부터 관찰될 수 있다.
한편, 마이크로컴퓨터(100)의 레지스터들 사이의 동작의 경우, 상술된 것처럼 정보는 마이크로컴퓨터(100) 내부에 있는 내부 데이타 버스(108)과 레지스터 어드레스 버스(107)로만 출력되기 때문에, 마이크로컴퓨터(100) 내에서 어떤 처리가 수행되고 있는지 마이크로컴퓨터(100)의 외부에서 알 수가 없다.
상술된 것처럼, 레지스터를 동작시키는 명령의 경우 또는 마이크로컴퓨터(100) 안에 있는 자원의 동작, 즉 예를 들면 설명이 생략되었지만 마이크로컴퓨터(100) 안에 RAM이 있을 때 이 내부 RAM의 동작의 경우, 정보는 외부로 출력되지 않는다.
마이크로컴퓨터의 프로그램 개발시, 이와 같은 종류의 폐쇄된 정보를 참조해야 할 필요가 많다. 이것을 알기 위해서는 마이크로컴퓨터의 실행이 일단 정지되고, 마이크로컴퓨터의 외부에서 필요한 정보를 얻기 위해 내부 자원의 정보를 외부로 출력하기 위한 명령이 실행된다.
그러나, 마이크로컴퓨터를 사용하여 기계를 제어하는 응용의 경우, 마이크로컴퓨터의 실행이 일단 정지될때 제어되는 기계의 런어웨이(runaway) 또는 오동작을 야기시킬 가능성이 있다. 더욱이, 마이크로컴퓨터의 동작이 정지될 때, 개발과 실행시에 프로그램의 실행 기간의 차가 발생하고, 실시간으로 개발하는 것이 불가능해진다. 따라서, 이와 같은 응용의 실행시, 마이크로컴퓨터 내에 폐쇄된 자원의 정보를 얻는 수단은 존재하지 않기 때문에, 프로그램 개발이 매우 어렵다.
따라서, 본 발명의 목적은 마이크로컴퓨터의 동작을 방해하지 않고 마이크로컴퓨터의 실행을 중지시키지 않으면서 마이크로컴퓨터 안에 폐쇄된 내부 자원을 외부에서 모니터할 수 있는 마이크로컴퓨터를 제공하는 것이다.
본 발명의 한 특징에 따르면, 마이크로컴퓨터 내에 폐쇄되고 미리 지정된 내부 자원의 내용을 선정된 타이밍에 받아들이는 보유 수단과, 이 보유 수단의 내용을 마이크로컴퓨터의 외부로 선정된 타이밍에 출력하는 출력 수단을 포함하고, 이 출력 수단은 마이크로컴퓨터에 의해 실행되는 동작을 방해하지 않고 보유 수단의 내용을 마이크로컴퓨터외 외부로 출력하는, 단일 반도체 기판 상에 CPU와 다수의 내부 자원들을 포함하는 마이크로컴퓨터가 제공된다.
상기 보유 수단을 다수의 제 2 보유 수단을 포함할 수 있고, 다수의 제 2 보유 수단들 중 어느것인지 식별하는 식별 수단을 더 포함한다.
내부 자원은 다수의 레지스터들을 포함할 수 있다.
마이크로컴퓨터는 다수의 레지스터의 어드레스를 미리 설정하기 위한 다수의 레지스터 어드레스 설정 수단과, 레지스터 어드레스 설정 수단에 저장된 레지스터 어드레스를 마이크로컴퓨터 안에 있는 레지스터들을 어드레스하기 위하여 어드레스 버스 상에 흐르는 레지스터 어드레스들과 비교하기 위한 다수의 비교 수단을 포함할 수 있고, 제 2 보유 수단은 비교 수단과 일치하는 타이밍과 동기하여 마이크로컴퓨터 안에 있는 데이타 버스에 흐르는 데이타를 받아들인다.
출력 수단은 시리얼 인터페이스를 포함할 수 있다. 시리얼 인터페이스가 출력 모드에서 선정된 수의 제 2 보유 수단의 내용을 마이크로컴퓨터의 외부로 출력한 후, 시리얼 인터페이스는 입력 모드로 절환되어서, 내부 자원들을 마이크로컴퓨터의 외부로부터 식별하기 위해 식별 데이타를 입력시킨다.
시리얼 인터페이스는 클럭 신호에 동기하여 제 2 보유 수단의 내용을 마이크로컴퓨터의 외부로 출력시킬수 있고, 내부 자원들을 마이크로컴퓨터의 외부로부터 식별하기 위해 식별 데이타를 입력시킨다.
내부 자원들을 식별하기 위한 식별 데이타는 각각이 레지스터 어드레스 설정 수단, 비교 수단, 및 제 2 보유 수단에 의해 형성되는 다수의 그룹을 나타내기 위한 채널 번호와 레지스터 어드레스들을 포함하고, 시리얼 인터페이스는 입력 모드에서 채널 번호들과 레지스터 어드레스들을 입력시킨다.
식별 수단은 채널 번호들로 레지스터 어드레스 설정 수단을 선택하기 위한 채널 선택기일 수 있다. 마이크로컴퓨터는 또한 인터페이스를 기동하기 위한 (interval) 타이머를 포함할 수 있다.
마이크로컴퓨터는 비교 수단으로부터 입력된 일치 신호에 의해 설정된 기동요구 플립플롭 회로 수단과, 입력 모드의 기동 요구를 입력하기 위한 입력 포트 수단을 더 포함할 수 있고, 시리얼 인터페이스는 기동 요구 플립플롭 회로 수단으로부터 입력된 기동 요구에 따라 데이타를 출력하고, 입력 포트 수단으로부터 입력된 기동 요구에 따라 식별 데이타를 입력한다.
본 발명의 목적, 특징 및 장점들은 첨부된 도면에 대한 다음의 상세한 설명으로 명백해질 것이다.
이제 도면들을 참조하여 본 발명에 따른 마이크로컴퓨터의 설명이 상세하게 주어질 것이다. 도면에서 유사한 참조 부호들은 전 도면에 걸쳐 유사하거나 대응하는 부분을 나타내기 때문에 그에 대한 반복되는 설명은 간단하게 하기 위해 생략될 수 있다.
본 발명에 따른 마이크로컴퓨터의 제 1 실시예가 제 2 도 및 제 3 도와 관련하여 설명될 것이다.
제 2 도에 본 발명에 따른 마이크로컴퓨터의 제 1 실시예가 도시되어 있다. 제 2 도에 도시된 것처럼, 마이크로컴퓨터(100)과 메모리(200)이 어드레스 버스(103)과 데이타 버스(104)에 의해 서로 접속되어 있다. CPU를 갖는 마이크로컴퓨터(100)는 ALU(105), 다수의 레지스터들을 포함하는 레지스터(106), 어드레스 버퍼(101) 및 데이타 버퍼(102)를 포함하고, 상술된 부재들을 접속시키기 위한 내부 데이타 버스(108), 레지스터 어드레스 버스(107) 등과 같은 것을 더 포함한다.
더욱이, 종래의 마이크로컴퓨터와 같이, 마이크로컴퓨터는 또한 임시 레지스터, 마이크로프로그램 ROM, 주변 회로들 및 다른 랜덤 논리회로들을 포함하고 필요하면 ROM, RAM과 같은 것을 더 포함한다. 이 경우, 이 하드웨어들은 그렇게 중요하지는 않기 때문에 간단하게 하기 위하여 그 설명은 생략될 수 있다. 더욱이, 비록 명령 레지스터와 레지스터 어드레스 발생 회로가 종래의 마이크로컴퓨터에 제공된다고 할지라도, 마이크로컴퓨터(100)은 또한 종래의 마이크로컴퓨터의 것과 동일한 구조와 기능을 갖는 명령 레지스터와 레지스터 어드레스 발생 회로를 포함하기 때문에 이 부재들의 설명과 제 2 도에서의 도시는 간단하게 하기 위해 생략될 수 있다.
이 실시예에서, 마이크로컴퓨터(100)은 비교기(110 및 120), 레지스터 어드레스 설정 레지스터(111 및 121), 데이타 보유 레지스터(130 및 140), 인터벌 타이머(40), 시리얼 인터페이스(300), 버스 중재기(302) 및 채널 선택기(303)을 더 포함한다. 일치 신호(112)는 비교기(110)으로부터 데이타 보유 레지스터(140)으로 출력되고, 유사하게 일치 신호(122)는 비교기(120)으로부터 데이타 보유 레지스터(130)으로 출력된다. 시리얼 인터페이스(300)은 버스 절환 신호(301)을 제어한다 시리얼 인터페이스(300)은 시리얼 버스(310)과 시리얼 클럭 신호선(311)을 통해 마이크로컴퓨터(100)의 외부에 위치된 장치(도시되지 않음)로 접속된다. 마이크로컴퓨터는 단일 반도체 기판 상에 CPU와 다수의 내부 자원들을 포함한다.
이 경우, 비교기(110), 레지스터 어드레스 설정 레지스터(111) 및 데이타 보유 레지스터(140)은 지금부터 채널 0으로서 하나의 그룹으로 취급된다. 유사하게, 비교기(120), 레지스터 어드레스 설정 레지스터(121) 및 데이타 보유 레지스터(130)은 지금부터 채널 1로서 다른 그룹으로 취급된다.
이 실시예에서, 시리얼 인터페이스(300)은 선정된 기간에 마이크로컴퓨터(100) 안에 있는 인터벌 타이머(400)으로부터 기동 요구 신호를 수신하여, 시리얼 버스(310)을 통해 시리얼 클럭 신호선(311)에 동기하여 일련의 시리얼 데이타의 입출력을 실행한다 1회의 기동에서 시리얼 송수신의 단위는 1프레임이라고 불리우고, 1프레임의 구조는 제 3 도에 도시되어 있다.
1 프레임은 전반부 출력 모드와 후반부 입력 모드로 구성되어 있다. 전반부에서, 시리얼 인터페이스(300)은 채널 0과 채널 1의 데이타를 출력한다. 채널 0이 선택될 때, 데이타 보유 레지스터(140)의 내용이 출력되고, 채널 1이 선택될 때 데이타 보유 레지스터(130)의 내용이 출력된다.
양 채널의 정보가 출력된 후, 시리얼 인터페이스(300)은 입력 모드로 절환되고, 후반부에서 새로운 어드레스 정보가 마이크로컴퓨터(100)으로부터 시리얼 인터페이스(300)으로 입력된다. 어드레스 설정 정보는 채널 번호와 레지스터 어드레스로 구성되어 있다. 채널 번호는 이 실시예에서 단지 채널 0과 1이 사용되기 때문에 채널 0과 1은 각각 0과 1에 대응한다. 레지스터 어드레스는 마이크로컴퓨터(100) 안에 있는 다수의 레지스터들중 모니터되는 단 하나의 레지스터에 대응하는 어드레스이다.
상술된 프로토콜에서 데이타의 송수신을 위해 인터벌 타이머(400)으로부터 기동 요구 신호에 의한 최초 기동시에, 마이크로컴퓨터(100)의 외부로부터의 레지스터 어드레스의 설정이 아직 수행되지 않았기 때문에 출력 데이타는 더미 데이타이다.
최초 수신된 정보가 채널 정보이기 때문에, 어드레스 설정 데이타를 수신한 시리얼 인터페이스(300)은 이 채널 정보를 채널 선택기(303)으로 전송한다. 예를 들면, 채널 0 지정에서 채널 선택기(303)은 레지스터 어드레스 설정 레지스터(111)을 선택한다. 그리고 나서, 레지스터 어드레스가 수신될 때 시리얼 인터페이스(300)은 버스 절환 신호(301)을 기동시켜서, 데이타 버스를 시리얼 인터페이스 쪽으로부터 레지스터 어드레스 설정 레지스터(111 또는 121)에 접속되도록 하고, 레지스터 어드레스를 출력한다. 레지스터 어드레스 설정 레지스터(111)이 채널 0 지정에서 선택되기 때문에, 레지스터 어드레스는 레지스터 어드레스 설정 레지스터(111)에 저장된다. 유사하게, 채널 1 지정에서 레지스터 어드레스 설정 레지스터(121)이 선택되고 레지스터 어드레스는 그 안에 저장된다.
마이크로컴퓨터(100)의 실행에서, 마이크로컴퓨터(100) 안에 레지스터(106)에 액세스할 때마다 대상 레지스터의 어드레스 레지스터 어드레스 버스(107)로 출력된다. 비교기(110)은 항상 레지스터 어드레스 버스(107)로 출력된 레지스터 어드레스를 레지스터 어드레스 설정 레지스터(111)의 내용과 비교하여, 두 값이 상호 일치할 때 비교기(110)은 일치 신호(112)를 데이타 보유 레지스터(140)에 출력한다. 레지스터 어드레스가 레지스터 어드레스 버스(107)로 출력될 때 레지스터로의 기입 처리의 경우 기입 데이타는 내부 데이타 버스(108)로 출력되기 때문에, 내부 데이타 버스(108)상의 기입 데이타는 일치 신호(112)의 타이밍에 데이타 보유 레지스터(140)에서 구해진다.
채널 1의 경우, 내부 데이타 버스(108)상의 기입 데이타는 상술된 채널 0과 동일한 방식으로 일치 신호(122)의 타이밍에 데이타 보유 레지스터(130)에서 구해진다.
시리얼 인터페이스(300)이 인터벌 타이머(400)으로부터 출력된 기동 신호에 의해 기동될 때, 시리얼 인터페이스(300)은 버스 절환 신호(301)을 불활성화하여, 데이타 보유 레지스터(130 및 140)을 시리얼 인터페이스(300)과 접속하도록 버스 중재기(302)를 절환한다.
그리고 나서, 채널 0의 레지스터 데이타는 데이타 보유 레지스터로부터 판독되어 시리얼 클럭 신호선(311) 상의 시리얼 클럭과 동기하여 시리얼 버스(310)을 통해 마이크로컴퓨터(100)의 외부로 출력된다. 다음에, 채널 1의 레지스터 데이타는 데이타 보유 레지스터(130)으로부터 판독되며, 시리얼 클럭 신호선(311)상의 시리얼 클럭과 동기하여 시리얼 버스(310)을 통해 마이크로컴퓨터(100)의 외부로 출력된다.
채널 0과 1의 레지스터 데이타의 출력이 완료될 때, 시리얼 인터페이스(300)은 시리얼 버스(310)을 입력 모드 절환하여, 마이크로컴퓨터(100)의 외부로부터 새로운 레지스터 데이타 설정 입력을 대기한다.
본 실시예에서, 비록 단지 두 채널 0과 1의 경우만이 설명되었지만, 쉽게 이해할 수 있는 것은 채널 선택기(303)과 하드웨어를 부가함으로써 용이하게 채널 수를 증가시킬 수 있다는 것이다.
본 발명에 따른 마이크로컴퓨터의 제 2 실시예가 제 4 도 및 제 5 도를 참조하여 설명될 것이다.
제 4 도에 본 발명에 따른 마이크로컴퓨터의 제 2 실시예가 도시되어 있는데, 이는 제 1 실시예의 마이크로컴퓨터 내의 인터벌 타이머(400)이 생략되는 반면에 일치 신호(112)에 의해 설정된 기동 요구 F/F(플립플롭 회로)(113), 일치 신호(122)에 의해 설정된 기동 요구 F/F(123), 및 마이크로컴퓨터의 외부로부터 시리얼 인터페이스(300)으로 입력되는 기동 요구 신호를 수신하기 위한 입력 포트(312)가 추가로 제공되는 것을 제외하고는 제 2 도에 도시된 제 1 실시예와 동일한 구조를 갖는다.
본 실시예에서, 시리얼 인터페이스(300)은 기동 요구 F/F(113)과 기동 요구 F/F(123)으로부터 출력된 시리얼 데이타의 기동을 수신하여, 시리얼 클럭 신호선(311)상의 시리얼 클럭과 동기하여 시리얼 버스(310)을 통해 일련의 시리얼 데이타를 마이크로컴퓨터(100)의 외부로 출력한다. 본 실시예에서 사용된 입출력 프로토콜의 구조는 제 5 도에 도시된다.
이 경우, 상술된 제 1 실시예와는 다른 프레임의 개념은 없다. 시리얼 인터페이스(300)이 기동 요구 F/F(113 또는 123)에 의해 기동될 때 시리얼 인터페이스(300)은 출력 모드에서 동작한다. 시리얼 인터페이스(300)이 입력 포트(312)를 통해 기동 요구 입력에 의해 기동될 때, 시리얼 인터페이스(300)은 입력 모드에서 동작한다.
출력 모드에서, 채널 데이타는 채널 0을 나타내는 식별 데이타 및 채널 0에서 데이타 보유 레지스터(140)의 내용 또는 채널 1을 나타내는 식별 데이타 및 채널 1에서 데이타 보유 레지스터(130)의 내용으로 이루어져 있다.
입력 모드의 기동 요구가 입력 포트(312)를 통해 시리얼 인터페이스(300)에 주어질 때, 새로운 어드레스 설정 정보는 제 1 실시예와 같이 채널 번호와 레지스터 어드레스로 이루어진다.
어드레스 설정 정보를 수신한 시리얼 인터페이스(300)의 동작은 제 1 실시예와 같은 방식으로 수행된다.
마이크로컴퓨터(100)의 실행시, 데이타 보유 레지스터(130 및 140)에 레지스터 데이타를 받아들이는 것은 제 1 실시예와 같은 방식으로 수행된다. 시리얼 인터페이스(300)이 일치 신호(112 또는 122)의 출력 타이밍에 설정된 기동 요구 F/F(113 또는 123)에 의해 기동될 때, 시리얼 인터페이스(300)은 데이타 보유 레지스터(130 및 140)을 시리얼 인터페이스(300)에 접속시키도록 버스 중재기(302)를 절환하기 위해 버스 스위칭 신호(301)을 불활성으로 만든다.
그리고 나서, 기동 요구 F/F(113)이 활성일 때, 채널 0의 레지스터 데이타는 데이타 보유 레지스터(140)으로부터 판독되어, 시리얼 클럭 신호선(311) 상의 시리얼 클럭과 동기하여 시리얼 버스(310)을 통해 마이크로컴퓨터(100)의 외부로 출력된다. 출력이 완료된 후, 기동 요구 F/F(113)은 리세트된다.
더욱이, 기동 요구 F/F(123)이 활성일 때, 채널 1의 레지스터 데이타는 데이타 보유 레지스터(130)으로부터 판독되어, 시리얼 클럭 신호선(311) 상의 시리얼 클럭과 동기하여 시리얼 버스(310)을 통해 마이크로컴퓨터(100)의 외부로 출력된다. 출력이 완료된 후, 기동 요구 F/F(123)은 리세트된다.
상술된 것처럼, 비록 내부 자원으로서 레지스터를 갖고 입출력 인터페이스로서 시리얼 인터페이스를 사용하는 마이크로컴퓨터가 설명되었지만, 내부 자원으로서 RAM, ROM, 주변 하드웨어 또는 그 등가물을 갖고 입출력 인터페이스로서 패러렐 버스 또는 그 등가물을 사용하는 마이크로컴퓨터도 상술된 것과 같은 방식으로 수행될 수 있다. 이에 더하여, 비록 시리얼 인터페이스가 클럭 동기형으로 설명되었지만 UART 포맷과 같은 다른 프로토콜을 사용하여 상술된 것과 같은 방식으로 수행될 수도 있다.
상술된 것처럼 마이크로컴퓨터(100)내의 레지스터의 어드레스는 마이크로컴퓨터(100)의 외부로부터 미리 결정되고, 레지스터 어드레스 버스(107) 상으로 출력된 레지스터 어드레스와 일치하는 타이밍에 내부 데이타 버스(108) 상의 데이타가 받아들여져서, 시리얼 인터페이스(300)을 통해 마이크로컴퓨터(100)의 외부로 출력된다. 따라서, 마이크로컴퓨터(100) 내의 폐쇄된 자원의 정보는 마이크로컴퓨터(100)의 동작을 방해하지 않고 그 외부로 출력될 수 있다.
상술된 방법을 사용함으로써, 마이크로컴퓨터를 사용하여 기계를 제어하는 응용의 경우, 마이크로컴퓨터 내에 폐쇄된 자원의 정보는 마이크로컴퓨터의 실행을 중지시키지 않고 구할 수 있고, 따라서 제어되는 기계의 런어웨이 또는 오동작을 피할 수 있다. 더욱이, 마이크로컴퓨터의 실행이 중지되지 않기 때문에 실행 시간과 같이 실시간으로 개발하는 것이 가능하다.
더욱이, 마이크로컴퓨터 내의 내부 자원으로서 RAM, ROM, 주변 회로 또는 그 등가물을 사용하고 입출력 인터페이스로서 패러렐 버스 또는 그 등가물을 사용함으로써 본 발명에 따라 얻어진 것과 동일한 효과와 장점들이 얻어진다
본 발명이 특정한 실시예들을 참조하여 설명되었지만, 본 발명은 그 실시예들에 의해서가 아니라 첨부된 특허 청구의 범위에 의해서만 제한된다. 본 분야의 기술에 숙련된 자들은 본 발명의 범위 및 원리를 벗어나지 않고도 상기 실시예들을 수정 또는 변경할 수 있다.

Claims (15)

  1. 단일 반도체 기판 상에 CPU와 다수의 내부 자원을 포함하는 마이크로컴퓨터에 있어서, 미리 지정되고 마이크로컴퓨터 내에 폐쇄되어 있는 내부 자원의 내용을 선정된 타이밍에서 받아들이기 위한 보유 수단, 및 상기 보유 수단의 내용을 마이크로컴퓨터의 외부로 지정된 타이밍에 출력하기 위한 출력 수단을 포함하고, 상기 출력 수단이 상기 마이크로컴퓨터에 의해 반드시 실행되어야 하는 동작을 방해하지 않고 상기 보유 수단의 내용을 상기 마이크로컴퓨터의 외부로 출력시키는 것을 특징으로 하는 마이크로컴퓨터.
  2. 제 1 항에 있어서, 상기 보유 수단이 다수의 제 2 보유 수단을 포함하고, 상기 다수의 제 2 보유 수단을 식별하기 위한 식별 수단을 더 포함하는 것을 특징으로 하는 마이크로컴퓨터.
  3. 제 2 항에 있어서 상기 내부 자원이 다수의 레지스터를 포함하는 것을 특징으로 하는 마이크로컴퓨터.
  4. 제 3 항에 있어서, 상기 다수의 레지스터들의 어드레스를 미리 설정하기 위한 다수의 레지스터 어드레스 설정 수단, 및 마이크로컴퓨터 내의 레지스터들을 어드레스하기 위해 레지스터 어드레스 설정 레지스터에 저장된 레지스터 어드레스들과 어드레스 버스 상에 흐르고 있는 레지스터 어드레스들을 비교하기 위한 다수의 비교 수단을 포함하고, 상기 제 2보유 수단이 상기 비교 수단의 일치 타이밍과 동기하여 마이크로컴퓨터 내의 데이타 버스 상에 흐르는 데이타를 받아들이는 것을 특징으로 하는 마이크로컴퓨터.
  5. 제 1 항에 있어서, 상기 출력 수단이 시리얼 인터페이스를 포함하는 것을 특징으로 하는 마이크로컴퓨터.
  6. 제 4 항에 있어서, 상기 출력 수단이 시리얼 인터페이스를 포함하는 것을 특징으로 하는 마이크로컴퓨터.
  7. 제 5 항에 있어서, 시리얼 인터페이스가 출력 모드에서 상기 제 2 유지 수단의 지정된 수의 내용을 마이크로컴퓨터의 외부를 출력시킨 후, 입출력 모드로 전환되어 마이크로컴퓨터의 외부로부터 상기 내부 자원들을 식별하기 위하여 식별 데이타를 입력시키는 것을 특징으로 하는 마이크로컴퓨터.
  8. 제 6 항에 있어서, 시리얼 인터페이스가 출력 모드에서 상기 제 2 유지 수단의 지정된 수의 내용을 마이크로컴퓨터의 외부로 출력시킨 후, 입출력 모드로 절환되어 마이크로컴퓨터의 외부로부터 상기 내부 자원들을 식별하기 위하여 식별 데이타를 입력시키는 것을 특징으로 하는 마이크로컴퓨터.
  9. 제 7 항에 있어서, 상기 시리얼 인터페이스가 클럭 신호에 동기하여 상기 제 2 유지 수단의 내용을 마이크로컴퓨터의 외부로 출력하고, 상기 내부 자원들을 마이크로컴퓨터의 외부로부터 식별하기 위하여 식별 데이타를 입력하는 것을 특징으로 하는 마이크로컴퓨터.
  10. 제 8 항에 있어서, 상기 시리얼 인터페이스가 클럭 신호에 동기하여 상기 제 2 유지 수단의 내용을 마이크로컴퓨터의 외부로 출력하고, 상기 내부 자원들을 마이크로컴퓨터의 외부로부터 식별하기 위하여 식별 데이타를 입력하는 것을 특징으로 하는 마이크로컴퓨터.
  11. 제 8 항에 있어서, 상기 내부 자원들을 식별하기 위한 상기 식별 데이타가 각각 레지스터 어드레스 설정 수단, 비교 수단 및 제 2 유지 수단으로 구성되는 다수의 그룹들을 나타내는 채널 번호들과 레지스터 어드레스들을 포함하고, 상기 시리얼 인터페이스가 입력 모드에서 상기 채널 번호들과 레지스터 어드레스들을 입력하는 것을 특징으로 하는 마이크로컴퓨터.
  12. 제 11 항에 있어서, 상기 식별 수단이 채널 번호들에 의해 상기 레지스터 어드레스 설정 수단을 선택하기 위한 채널 선택기인 것을 특징으로 하는 마이크로컴퓨터.
  13. 제 5 항에 있어서, 상기 인터페이스를 기동하기 위한 인터벌 타이머를 더 포함하는 것을 특징으로 하는 마이크로컴퓨터.
  14. 제 6 항에 있어서, 상기 시리얼 인터페이스를 기동하기 위한 인터벌 타이머를 더 포함하는 것을 특징으로 하는 마이크로컴퓨터.
  15. 제 6 항에 있어서, 상기 비교 수단으로부터 입력된 일치 신호에 의해 설정된 기동 요구 플립플롭 회로수단 및 입력 모드의 기동 요구를 입력하기 위한 입력 포트 수단을 더 포함하고, 상기 시리얼 인터페이스가 상기 기동 요구 플립플롭 회로 수단으로부터 입력된 기동 요구에 따라 데이타를 출력하고, 상기 입력 포트 수단으로부터 입력된 기동 요구에 따라 식별 데이타를 입력하는 것을 특징으로 하는 마이크로컴퓨터.
KR1019920009126A 1991-05-29 1992-05-28 마이크로컴퓨터 KR940011041B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP91-124249 1991-05-29
JP3124249A JPH04350737A (ja) 1991-05-29 1991-05-29 マイクロコンピュータ

Publications (2)

Publication Number Publication Date
KR920022098A KR920022098A (ko) 1992-12-19
KR940011041B1 true KR940011041B1 (ko) 1994-11-22

Family

ID=14880664

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019920009126A KR940011041B1 (ko) 1991-05-29 1992-05-28 마이크로컴퓨터

Country Status (3)

Country Link
US (1) US5872961A (ko)
JP (1) JPH04350737A (ko)
KR (1) KR940011041B1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05334459A (ja) * 1992-05-28 1993-12-17 Nec Corp マイクロコンピュータ
JP2669300B2 (ja) * 1993-06-11 1997-10-27 日本電気株式会社 プログラムトレース回路およびプログラムトレース方法
JP3542463B2 (ja) 1997-07-29 2004-07-14 Necエレクトロニクス株式会社 集積回路装置、その動作制御方法
JP3731980B2 (ja) * 1997-08-20 2006-01-05 富士通株式会社 コンピュータネットワークシステム及び携帯型コンピュータ
JP3796111B2 (ja) 2000-11-10 2006-07-12 株式会社ルネサステクノロジ データプロセッサ
US7576734B2 (en) * 2001-10-30 2009-08-18 Semiconductor Energy Laboratory Co., Ltd. Signal line driving circuit, light emitting device, and method for driving the same
JP4242741B2 (ja) * 2003-09-19 2009-03-25 パナソニック株式会社 デバッグ用信号処理回路
US11782813B2 (en) * 2021-12-17 2023-10-10 Intel Corporation Methods and apparatus to determine refined context for software bug detection and correction

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS532296B2 (ko) * 1973-03-19 1978-01-26
US4403282A (en) * 1978-01-23 1983-09-06 Data General Corporation Data processing system using a high speed data channel for providing direct memory access for block data transfers
JPS57203161A (en) * 1981-06-08 1982-12-13 Toshiba Corp One-chip microcomputer
US4447876A (en) * 1981-07-30 1984-05-08 Tektronix, Inc. Emulator control sequencer
US4868784A (en) * 1982-02-22 1989-09-19 Texas Instruments Incorporated Microcomputer with a multi-channel serial port having a single port address
US4649476A (en) * 1983-10-31 1987-03-10 Motorola, Inc. Microcomputer having an internal address mapper
JPH0816891B2 (ja) * 1985-10-01 1996-02-21 株式会社日立製作所 チヤネルシステム
JPS62138948A (ja) * 1985-12-13 1987-06-22 Hitachi Ltd デ−タ転送装置
US5070477A (en) * 1987-04-13 1991-12-03 Unisys Coporation Port adapter system including a controller for switching channels upon encountering a wait period of data transfer
JPS6428747A (en) * 1987-07-24 1989-01-31 Nec Corp Microprocessor
CA1301346C (en) * 1988-02-29 1992-05-19 John Malec Passive data collection system for market research data
EP0369470B1 (en) * 1988-11-17 1993-02-24 Nec Corporation Data processing apparatus for producing in sequence pulses having variable width at output ports
JPH0344781A (ja) * 1989-07-12 1991-02-26 Fujitsu Ltd 大規模集積回路
US5206933A (en) * 1990-03-15 1993-04-27 International Business Machines Corporation Data link controller with channels selectively allocatable to hyper channels and hyper channel data funneled through reference logical channels
US5276810A (en) * 1990-06-27 1994-01-04 Victor Company Of Japan, Ltd. Information item selection apparatus producing multi-channel output signals
US5241630A (en) * 1990-11-13 1993-08-31 Compaq Computer Corp. Device controller with a separate command path between a host and the device and a separate data path including a first in, first out memory between the host and the device
US5454092A (en) * 1991-02-04 1995-09-26 Motorola, Inc. Microcomputer having an improved internal address mapping apparatus
JP3067253B2 (ja) * 1991-04-26 2000-07-17 日本電気株式会社 データ処理装置
JPH05334459A (ja) * 1992-05-28 1993-12-17 Nec Corp マイクロコンピュータ

Also Published As

Publication number Publication date
US5872961A (en) 1999-02-16
KR920022098A (ko) 1992-12-19
JPH04350737A (ja) 1992-12-04

Similar Documents

Publication Publication Date Title
US4613935A (en) Method and apparatus for pipe line processing with a single arithmetic logic unit
KR920006279B1 (ko) 1개 또는 다수개의 프로그램을 다수개의 연산부에서 실행가능한 프로셋서
US4870562A (en) Microcomputer capable of accessing internal memory at a desired variable access time
US4949241A (en) Microcomputer system including a master processor and a slave processor synchronized by three control lines
EP0025087B1 (en) Pipeline control apparatus for generating instructions in a digital computer
US4443848A (en) Two-level priority circuit
US4027291A (en) Access control unit
JPS62214464A (ja) データ処理システム
US5193159A (en) Microprocessor system
KR940011041B1 (ko) 마이크로컴퓨터
JPH0332816B2 (ko)
KR940011594B1 (ko) 공유 제어 기억부를 가진 멀티프로세서 제어기 및 그 동기화 방법
US4253142A (en) Method and apparatus for speeding up the determination of a microinstruction address in a data processing system
US5586336A (en) Microcomputer capable of monitoring internal resources from external
JPS6326907B2 (ko)
KR100681427B1 (ko) 다중 프로세서 시스템을 위한 리셋 회로
JPS6175436A (ja) マイクロプログラム制御装置
JPS63155330A (ja) マイクロプログラム制御装置
US5123093A (en) Operational processor for performing a memory access and an operational process in parallel
JPS62113239A (ja) マイクロ命令生成方式
JPH0365751A (ja) 多重プロセッサシステム
JPH0792902A (ja) プログラマブルコントローラ
JPH05281290A (ja) 記憶回路を共用するicテスタのデータ転送回路
JPS62296236A (ja) マイクロプロセツサの割り込み処理装置
JPS6148188B2 (ko)

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20011114

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee