KR940001273B1 - 버스사이클을 제어하는 방법 및 마이크로컴퓨터 - Google Patents

버스사이클을 제어하는 방법 및 마이크로컴퓨터 Download PDF

Info

Publication number
KR940001273B1
KR940001273B1 KR1019910000376A KR910000376A KR940001273B1 KR 940001273 B1 KR940001273 B1 KR 940001273B1 KR 1019910000376 A KR1019910000376 A KR 1019910000376A KR 910000376 A KR910000376 A KR 910000376A KR 940001273 B1 KR940001273 B1 KR 940001273B1
Authority
KR
South Korea
Prior art keywords
wait
microprocessor
signal
standby
request signal
Prior art date
Application number
KR1019910000376A
Other languages
English (en)
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 후지쓰 가부시끼가이샤
Application granted granted Critical
Publication of KR940001273B1 publication Critical patent/KR940001273B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • 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/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline, look ahead using instruction pipelines
    • G06F9/3869Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking

Abstract

내용 없음.

Description

버스사이클을 제어하는 방법 및 마이크로컴퓨터
제1a도,1b도 및 1c도는 본 발명의 원리를 설명하는 회로도.
제2도 및 3도는 각각 본 발명의 제1실시예에 따른 마이크로컴퓨터의 회로도 및 그 버스사이클 방법을 설명하는 타이밍도.
제4도는 본 발명의 제2실시예에 따른 버스사이클 제어방법을 설명하는 마이크로컴퓨터 회로도.
제5도 및 6도는 각각 본 발명의 제3실시예에 따른 마이크로컴퓨터의 회로도 및 버스사이클 제어방법을 설명하는 타이밍도.
제7도는 본 발명의 제4실시예에 따른 마이크로컴퓨터를 보여주며 버스사이클을 설명하는 회로도.
본 발명은 버스사이클을 제어하는 방법 및 마이크로컴퓨터에 관한 것으로서, 상세하게는 버스사이클의 개량된 대기제어를 사용하는 버스사이클 제어방법 및 마이크로컴퓨터에 관한 것이다.
마이크로컴퓨터 분야의 최근 진전에 따라 개량된 기능에 대한 욕구는 필연적으로 증가해 왔다. CPU(마이크로프로세서)를 증가시킴으로서 특수기능을 수행하는 각종의 전용 LSI 즉, 주변장치(칩)가 개발되어 왔다. 주변장치를 제어하는 마이크로프로세서는 그의 속도가 저속의 주변장치의 속도와 대응하기 위해서는 프로세서 버스사이클에 삽입된 대기상태를 갖는 것이 필요하다.
저속의 주변장치에 대처하기 위해, 종래의 마이크로컴퓨터는 자체 마이크로프로세서의 대기요구 입력단자로부터 입력신호를 소정의 사이클로 샘플링하였다. 샘플신호가 대기명령 또는 지시를 나타내면, 하나의 대기상태가 현행 버스사이클에 삽입된다. 만약 대기상태로 샘플링된 대기요구 입력신호가 대기명령을 나타내면, 하나의 대기상태는 다음 버스사이클에 삽입된다. 이 과정을 반복함으로써, 다수의 대기상태가 버스사이클에 삽입된다.
그러나, 상기 종래의 마이크로컴퓨터에서, 대기요구의 어드레스를 선택하는 어드레스 디코딩회로를 제외하고, 마이크로컴퓨터로부터 분리된 외부회로가 대기요구의 개시로부터 그것의 해제까지 시간을 제어하여야 한다. 따라서, 불완전하게 설계된 다수의 외부회로로 인해 구성이 더욱 복잡해진다. 이러한 것을 방지하기 위해서는 설계비용의 증가는 필수적이다.
외부회로는 대기요구의 개시부터 해제까지의 시간제어동안 다수의 대기상태로 계수하는 카운터가 필요하고, 대기상태의 소정수와 비례하는 시간주기를 반드시 측정해야 한다. 또한 카운터는 대기요구의 개시에서 초기화되어야 한다. 마이크로프로세서의 버스사이클과 비례하는 카운트-업 또는 카운트-다운이 실행되고, 카운터가 소정의 값에 이르렀을때, 대기요구종료를 나타내는 신호가 마이크로프로세서로 출력되는 것이 필요하다. 또한, 대기요구/해제신호가 마이크로프로세서에 의해 요구되는 타이밍에서 마이크로프로세서로 출력되어야 한다. 이것은 외부회로의 구성을 더욱 복잡하게 하므로 비용이 증가하게 한다. 마이크로프로세서에 의해 규정되는 대기요구/해제타이밍이 더욱 복잡하게 될 때, 외부회로의 설계는 더욱 실패하게 된다.
일부 마이크로프로세서는 소위 자동대기 제어기능을 가진다. 저속의 주변장치에 대처하기 위해, 프로그램 가능하게 설정된 대기어드레스 설정레지스터, 대응하는 수의 대기상태 설정레지스터, 마이크로프로세서로부터 출력된 어드레스가 대기 어드레스 설정레지스터에 설정되었는지, 여부를 비교판단하는 상기 어드레스 판단회로, 및 어드레스가 대기로 판단되었을 때 대응하는 수의 대기상태 설정레지스터에 구비된 대기상태의 수와 동일한 수의 대기상태를 현행 버스사이클에 삽입하는 제어회로를 사용함으로써 대기요구 입력단자를 필요로 하지 않고 자동적으로 버스사이클 대기를 상기 마이크로프로세서가 실행한다.
그러나, 상기 마이크로프로세서는 상기 각 레지스터, 판단회로 및 제어회로를 포함해야 한다. 따라서, 극히 큰 회로가 마이크로프로세서의 대기제어용으로 요구될때 문제가 있다. 따라서, 만약 마이크로프로세서의 대기제어가 이런식으로 구성되면, 마이크로프로세서는 반드시 칩-선택신호를 출력해야하므로, 마이크로프로세서는 매우 많은 수의 회로 및 단자를 보유해야하는 단점이 있다. 이것은 마이크로프로세서가 칩-선택신호를 출력하지 않는한, 많은 경우에 있어 외부회로는 한개의 칩-선택신호를 발생시킬 필요가 있고 대기 어드레스 판단회로와 거의 동일한 칩-선택신호-발생회로에 외부회로가 장착되어야 하기 때문이다.
따라서, 자동 대기제어기능이 부가된 마이크로프로세서라도 상기 문제를 해결할 수 없다.
본 발명의 목적은 마이크로프로세서의 내부회로 또는 대기제어에 필요한 외부회로중 어느 하나의 크기를 크게 증가시키지 않고 마이크로컴퓨터의 대기제어를 자동으로 할 수 있는 버스사이클 제어방법 및 마이크로컴퓨터를 저렴하게 제공하는 것이다.
상기 목적을 달성하기 위해, 본 발명의 버스사이클 제어방법 및 마이크로컴퓨터를 다음과 같이 구성한다.
청구범위 제1항에 따른 본 발명에 있어서, 마이크로프로세서는 소정의 버스사이클로 처리하는 통상적인 동작을 실행한다. 마이크로프로세서 외부에 배열된 대기요구신호 작성장치로부터 입력된 대기요구 신호의 대기 트리거상태가 검출될 때, 다음의 대기요구신호의 입력레벨에 관계없이 마이크로프로세서 및 주변장치가 억세스되는 주기동안, 마이크로프로세서의 버스사이클은 소정의 상태수에 대응하는 주기동안 대기된다. 이 주기가 경과한 후, 대기가 해제되고, 버스사이클이 본래대로 되므로, 대기요구 신호의 대기트리거상태가 다시 검출가능해진다.
청구범위 제2항에 따른 본 발명의 소정의 버스사이클의 실행동작 및 마이크로프로세서로 억세스가능한 주변장치를 위한 마이크로프로세서를 포함한다. 마이크로프로세서의 버스사이클로 대기를 발생시키는 마이크로컴퓨터의 주변장치로 마이크로프로세서가 억세스할 때, 동작을 제어처리하고 주변장치로 억세스 신호를 발생시키는 주제어부 대기를 발생시키는 상태수를 프로그램 가능하게 설정하는 상태수 설정장치 및 대기요구신호에 응하여 대기명령신호를 발생시키는 대기명령신호 발생장치를 포함하도록 마이크로프로세서가 구성된다. 대기요구신호 작성수단은 마이크로프로세서의 외부에 구비된다. 마이크로프로세서가 대기요구신호 각성수단의 대기트리거상태를 검출할때, 주제어부의 버스사이클은 대기명령신호 발생수단으로부터 대기요구신호를 출력함으로서 상태수 설정수단에 의해 설정된 상태수에 대응하는 주기동안 대기를 발생시킨다. 이 대기주기동안, 마이크로프로세서 및 주변장치가 억세스된다. 이 주기가 경과한 후, 대기요구신호의 대기트리거상태의 검출이 다시 가능해진다.
청구범위 제3항에 따른 본 발명은 다수의 상태수 설정수단, 대기명령신호 발생수단 및 대기요구신호 작성수단을 포함한다. 대기요구신호 작성수단은 대기 명령신호발생장치에 대응하는 결과를 출력하고, 각 대기요구신호의 OR논리곱을 주제어부로 출력한다.
청구범위 제4항에 따른 본 발명에 있어서, 마이크로프로세서는 소정의 버스사이클로 처리되는 통상적인 동작을 실행한다. 마이크로프로세서의 일부에 배열된 주변장치가 억세스될 때, 어드레스로 칩이 주변장치를 선택하는 신호는 통상대기신호로 사용된다. 마이크로프로세서가 주변장치로 칩선택신호를 출력할때, 어드레스선택기는 그것을 대기요구신호로써 검출한다. 대기요구신호가 검출될 때, 마이크로프로세서의 버스사이클은 소정의 상태수에 대응하는 주기동안 대기를 발생시킨다. 이 대기주기동안, 마이크로프로세서와 주변장치간의 억세스가 실행된다. 일정주기가 경과한 후에, 대기는 해제되고 본래의 버스사이클로 복귀된다.
청구범위 제5항에 따른 본 발명은 소정의 버스사이클로 동작을 처리하는 마이크로프로세서 및 마이크로프로세서로 억세스가능한 주변장치를 포함한다. 주변장치가 억세스될 때, 마이크로컴퓨터가 그의 버스사이클로 대기를 발생시키는 마이크로프로세서는 동작을 처리하고 주변장치로의 억세스 제어신호를 발생하는 주제어부, 대기를 발생시키는 상태수를 프로그램가능하게 설정하는 상태수 설정수단, 및 대기요구 신호와 대응하는 대기명령신호를 발생시키는 대기명령신호 발생수단을 구비한다. 마이크로프로세서 외부에 배열된 주변장치가 억세스될 때, 어드레스에 의해 칩이 주변장치를 선택하는 신호는 통상 대기요구신호로 사용된다. 주제어부가 칩선택신호를 주변장치로 출력할 때, 마이크로프로세서 외부에 구비된 어드레스 선택기는 이 신호를 대기요구신호로 검출한다. 대기요구신호가 검출될 때, 대기명령신호 발생수단은 대기명령신호를 주제어부로 출력하고 주제어부의 버스사이클로 상태수 설정수단에 의해 설정된 상태수에 대응하는 주기동안 대기를 발생시킨다. 이 주기동안, 주제어부 및 주변장치가 억세스된다.
청구범위 제6항에 따른 본 발명은 다수의 주변장치, 상태수 설정수단, 대기명령신호 발생수단 및 어드레스 선택기를 포함한다. 어드레스 선택기는 각각의 다수의 주변장치에 대응하는 주제어부로부터 출력된 칩-선택신호를 요구신호로써 개별적으로 검출하고 대응 대기명령신호 발생수단에 그 결과를 출력하고, 각 대기명령신호 발생수단의 "OR" 논리곱을 얻으므로써 대기명령을 주제어부에 출력한다.
청구범위 제7항에 따른 발명에서, 다수의 주변장치가 동시에 주제어부에 대기요구를 발생시킬 때, 관련상태수 설정수단에서 대기상태의 최대수를 가진 주변장치로부터의 대기요구가 우선적으로 선택된다.
본 발명에서, 주제어부가 그 주변장치에 억세스를 요구하면, 대기요구신호의 트리거 상태로써 검출되며(즉, 주변장치의 칩-선택신호는 대기요구신호로써 흔히 이용될 수 있으며) 대기명령신호 발생장치에 보내진다. 그러면, 대기명령 신호발생장치는 대기명령신호를 주제어부에 출력하여 주제어부의 버스사이클은 상태수 설정장치에 의하여 설정된 상태수에 대응하는 시간동안 대기하게 한다. 이 시간동안, 주제어부와 그 주변장치가 억세스된다. 이 시간이 경과된 후, 대기는 해제되고 원래의 버스사이클이 복귀된다.
그러므로, 대기요구신호를 발생하는 메카니즘은 간단히 예를들면, 어드레스 디코더에 의하여 배열될 수 있으며 대기요구/해제에 대한 타이밍이 불필요하게 된다. 그 결과, 마이크로프로세서의 자동대기제어가 실현되는데, 대기제어에 필요한 외부회로와 마이크로프로세서의 내부회로 모두가 매우 간단히 된다.
제1a, 1b 및 1c도는 본 발명의 원리를 설명하는 회로도이다.
제1a도는 본 발명의 제1원리를 설명한다. 제1a도에서, (101)은 주제어부 (102), 다수의 대기상태수 설정장치(103) 및 대기명령신호 발생장치(104)로 구성되는 마이크로프로세서이다. 대기요구신호 작성장치(105)는 마이크로프로세서(101) 외부에 설치된다. 예를들면, 마이크로프로세서(101)는 1개 칩 LSI로 구성된다.
여기에서, 마이크로프로세서는 그 내부가 LSI로 구성된 것을 말한다. 마이크로컴퓨터는 LSI로 구성되는 내부회로와 주변회로로 구성되는데, 이 2회로를 합하여 일반적으로 마이크로컴퓨터 시스템으로 언급된다. 후에 기술될 다른 실시예는 후에 유사하게 기술하기로 한다.
주제어부(102)는 마이크로프로세서(101)의 핵심부와 균등하며 PLA,ALU 및 랜덤로직과 같은 것으로 구성된다. 이것은 필요한 동작을 실행하여 버스제어신호, 입력/출력 데이타, 출력어드레스, 및 어드레스 스토로브 신호를 주변장치에 출력한다. 버스제어신호는 R/W신호 등을 포함하는데, 예를들면, 그 라인수는 x, y 및 z이다.
대기명령신호 발생장치(104)는 소정시간에 대기명령신호를 주제어부(102)에 입력한다. 대기명령신호가 대기명령을 지시하는 동안, 주제어부(102)는 전류버스사이클에서 대기상태를 삽입하고 버스제어신호, 입력/출력데이타 및 출력어드레스와 같은 출력상태를 확장하는 버스제어기능을 가진다.
다수의 대기상태 설정장치(103) 및 대기명령신호 발생장치(104)는 주제어부 (102)의 동작클록과 동기하여 동작한다. 다수의 대기상태 설정장치(103)(레지스터와 같은것)는 대기수가 주제어부(102)로부터 레지스터 기입순서에 따라서 기입되는 대기수를 프로그램가능하게 설정할 수 있다.
대기명령신호 발생장치(104)는 마이크로프로세서(101)의 외부로부터 입력된 대기요구신호를 수신하고, 대기요구신호의 대기요구트리거를 검출하는 회로이다. 이것은 소정의 타이밍에서 대기요구신호를 샘플한다. 샘플링결과가 대기요구를 지시하는 신호를 보여주면, 대기명령신호 발생장치(104)는 주제어부(102)의 버스 사이클이 대기상태의 수에 따라서 얼마동안 대기하게 하여 대기명령신호를 주제어부 (102)에 보내는 대기명령신호를 발생한다.
대기명령신호 발생장치(104)는 신호가 대기요구를 지시하면 대기요구신호의 대기시작을 지시하는 특정신호(가령 상승에지 또는 하강에지)를 검출하고 주제어부 (102)의 버스사이클은 다수의 대기상태에 의하여 대기하게 하는 대기명령 신호를 발생하는 회로일 수 있다.
대기요구신호 작성장치(105)는 대기요구신호를 출력한다. 주제어부(102)가 주변장치에 억세스요구를 할때, 대기요구신호 작성장치(105)는 대기요구신호의 트리거상태로써 억세스요구를 검출하고, 대기요구신호를 발생하고 이것을 대기명령신호 발생장치(104)에 송신한다.
상기 구성으로, 마이크로프로세서(101)는 소정의 버스사이클에서 동작을 처리한다. 마이크로프로세서(101)가 그 주변장치를 억세스하는 억세스요구를 출력한 이후 소정 시간이 경과한 후, 대기명령신호 발생장치(104)는 대기요구신호를 샘플하거나 대기요구신호의 동기요구개시(가령 에지)를 검출한다. 검출된 신호가 대기요구를 지시하면, 대기명령신호발생장치(104)는 소정의 타이밍에서 주제어부(102)가 대기명령신호(대기를 트리거하는 신호)를 동작하도록 하여 대기명령을 하는 동시에 어떠한 대기상태에 하나씩 대기명령신호 발생장치(104)의 카운터를 카운트해 낸다. 이 시간동안에, 버스사이클은 대기를 야기하고 마이크로프로세서(101)는 그 저속주변장치를 억세스한다.
마이크로프로세서(101)의 동자클록은 억세스출력 후 소정시간을 결정하기 때문에 소정시간이 상기와 같이 경과된다. 그리하여 마이크로프로세서(101)로부터 출력어드레스는 종료되고 대기요구신호 작성장치(105)는 소정 주기동안 대기요구신호를 안정하게 출력할 수 있다.
카운터가 대기상태수에 도달하면, 대기명령신호 발생장치(104)는 대기명령신호(대기를 해제하는 신호)를 약화시켜서 주제어부(102)의 대기를 해제한다. 대기명령신호 발생장치(104)는 주제어부(102)가 대기하는 동안 대기요구신호를 샘플할 필요가 없다.
한편, 대기요구신호 작성장치(105)는 마이크로프로세서(101)의 대기요구입력단자(도시되지 않음)에 대기요구신호를 출력한다. 예를들면, 이 어드레스를 선택하여 이 신호를 발생하여 마이크로프로세서(101)의 출력어드레스로부터 대기한다. 이러한 경우, 대기요구신호 작성장치(105)는 소정 타이밍에서 어드레스를 선택할 필요가 없다. 이것은 다른 곳으로부터 제어신호를 수신하여 대기요구신호를 발생하는 처리정보로써 이용될 수 있다.
결과적으로, 상기 설명한 바와같이, 주제어부(102)가 대기요구를 수신한 후 마이크로프로세서(101)는 버스사이클이 자동적으로 다수의 대기상태설정장치(103)에 설정된 대기상태수에 대응하는 시간동안 대기하에 하며, 대기요구신호를 발생하는 외부회로는 마이크로프로세서(101)로부터 출력된 어드레스로부터 대기하도록 어드레스를 선택하는 일반 어드레스 디코딩회로를 형성할 수 있다.
따라서, 대기요구 또는 완료타이밍은 더이상 필요하지 않으며, 마이크로프로세서(101)의 대기제어에 대한 외부회로와 마이크로프로세서(101)의 내부회로의 모든 회로를 간략히 할 수 있어서, 저렴한 가격으로 자동대기제어를 하는 마이크로프로세서를 실현할 수 있다.
제1b도는 본 발명의 제2원리를 설명한다. 다수의 주변장치(6)가 구비도고 대기요구신호 작성장치(105)는 대기요구신호로써 주변장치(6)중 하나로부터 칩선택신호를 수신하고 대기요구신호의 대기요구트리거를 검출한다는 점에서 제1a도와 다르다.
RAM, ROM, 통신 LSI 또는 영상제어 LSI와 같은 주변장치(6)는 마이크로프로세서(101)보다 느린 동작 속도를 가지며, 칩-선택신호(CS)는 한 칩을 선택한다. 대기요구신호 작성장치(105)는 주제어부(102)로부터의 신호(출력어드레스같은)를 선택하여 주변장치(6)의 하나로 신호를 선택한다. 본 실시예에서, 칩-선택신호는 대기요구신호로서 공통으로 사용된다. 대기요구신호 작성장치(105)는 대기요구신호로서 대기상태수 설정장치(103)에 칩선택신호를 출력한다. 이에 따라, 마이크로프로세서(101)가 주변장치(6)를 억세스하는 신호를 출력할때 대기요구신호 작성장치 (105)는 대기요구 신호로서 마이크로프로세서(101)의 대기요구입력단자(도면에 도시되지 않음)에 선택결과 신호를 출력하고 대기하도록 주변장치(6)의 하나를 선택한다. 이렇게, 칩-선택신호는 적당한 주변장치(6)를 선택한다. 이런식으로, 칩-선택신호는 대기요구 혹은 해제의 타이밍에 대한 필요를 제거하는데 사용되어, 대기제어용 외부회로와 내부회로 양쪽을 간소화하고 저가의 자동대기제어를 하는 마이크로프로세서를 구현한다.
제1c도는 본 발명의 제3원리를 설명한다. 어드레스선택기(5)가 대기요구신호작성장치(105) 대신에 제공된다는 점에서 제1b도와 다르다. 이 실시예에서, 어드레스 선택기(5)는 주변장치(6)의 하나에 칩-선택신호를 출력하고 주제어부(102)로부터 어드레스를 출력한다. 어드레스 선택기(5)는 역시 대기요구신호로서 대기상태의 수 설정장치(103)에 칩-선택신호를 역시 출력한다.
이에따라, 어드레스 선택기(5)는 마이크로프로세서(101)가 주변장치(6)를 억세스하는 출력어드레스를 출력할지 어떨지를 판정하고 대기시키는 어드레스를 선택하고 대기요구신호로서 마이크로프로세서(101)의 대기요구입력단자(도시안됨)로 선택결과신호를 출력한다. 이렇게, 대기요구신호를 발생하는 외부회로는 마이크로프로세서(101)로부터 출력된 어드레스에서 대기시키는 어드레스를 선택하는 일반 어드레스 디코드회로로 구성될 수 있다. 그 결과, 대기요구 혹은 종료는 더 이상 필요하지 않아서 마이크로프로세서(101)의 대기제어용 외부회로와 마이크로프로세서 (101)의 내부회로 양쪽을 단순화하고 저가의 자동대기제어를 하는 마이크로프로세서를 구현한다.
바람직한 실시예의 더 구체적인 기술이 도면을 참고로 다음과 같이 예시된다.
[제1실시예]
제2도와 3도는 본 발명에 따른 마이크로컴퓨터와 그의 버스사이클 제어방법의 제1실시예를 나타낸다.
제2도의 회로에서 11은 마이크로프로세서, 12는 주제어부, 13은 대기상태수설정 레지스터(대기상태수설정장치와 동일), 14는 대기명령신호발생부(대기명령신호 발생장치와 동일), 15는 어드레스 선택기회로, 및 16은 주변장치이다.
마이크로프로세서(11)는 주제어부(12), 대기상태수설정레지스터(13) 및 대기명령신호발생부(14)를 포함한다.
주제어부(12)는 클록(TL)의 하강에지에서 대기명령신호를 샘플하고 샘플링결과가 "1"을 지시할때 1개 대기상태만큼 버스사이클을 연장하는 버스제어기능을 갖는다(이 실시예는 1가 상태가 1개 버스사이클 주기와 같다는 것을 가정한다). 주제어부(12)는 한개 버스사이클로서 1개 위상의 클록(TFP)dmf 처리하고 클록(TFP)의 상승에지에서 어드레스(A0,A1 및 A2); 데이타(D0,D1 및 D2); 및 데이타판독신호 (RD), 데이타기입신호(WR), 어드레스 스트로브신호(ADS) 같은 버스제어신호를 출력한다. 주제어부(12)는 마이크로프로세서(11)가 리세트될때 리세트신호(RESET)가 "0"인 것을 출력하고 리세트가 해제된 후 리세트신호(RESET)가 "1"인 것을 출력한다.
대기상태수 설정레지스터(13)는 주제어부(12) 혹은 외부로부터 대기상태수를 설정한다. 리세트가 해제된후 그것은 모든 초기치를 "0"으로 세트한다. 이 실시예에서, 모든 초기치가 "0"이라면 아무것도 대기하지 않는다.
대기명령신호발생부(14)는 대기요구래치회로(21), 2진 카운터회로(22), 대기상태수 비교회로(23) 및 AND게이트(24)를 포함한다.
리세트(RX)의 입력레벨이 "1"이고 래치인에이블신호(ENX)의 입력레벨이 "0"일때 대기 요구래치회로(21)는 클록(TL)의 상승에지에서 단자(D)로부터 공급된 대기요구신호를 래치하고, 출력(WAIT)으로부터 주제어부(12)에 래치결과를 출력한다. 래치인에이블신호(ENX)의 입력레벨이 "1"일때 대기요구래치회로(21)는 래치되지 않지만 그전에 래치된 값을 유지한다.
리세트(RX)의 입력레벨이 "0"일때 대기요구래치회로(21)는 RX 입력타이밍(더하기 경과게이트시간)에서 "0"을 출력한다. 리세트(RX)의 입력레벨이 "1"이고 카운트인에이블신호(EN)의 입력레벨이 "0"일때 카운터회로(22)는 클록(TL)의 하강에지에서 카운트업 출력(Q1,Q0)을 출력한다. 리세트(RX)의 입력레벨이 "0"일때 카운트회로(22)는 RX입력타이밍(더하기 rud과 게이트시간)에서 "0"을 출력한다. 카운트 인에이블신호(EN)의 입력레벨이 "0"일때 카운터회로(22)는 카운트되지 않지만 전에 래치된 값을 유지한다.
대기상태수 비교회로(23)는 클록(TFP)의 상승 혹은 하강에지에서 대기상태수 설정 레지스터(13)로부터 신호(WS0)와 C0 및 WS1과 C1을 비교한다. 만약 두쌍이 일치한다면 대기상태수 비교회로(23)는 출력(QX)을 "0"로 세트하고 그것을 AND게이트 (24)에 출력한다. 만약 두쌍이 일치않는다면 대기상태수 비교회로(23)는 출력(QX)을 "1"로 세트하고 그것을 AND게이트(24)에 출력한다. 출력이 (QX)이 "0"일때 AND게이트(24)는 대기요구래치회로(21)에 신호(RESET)를 보낸다.
어드레스선택기회로(15)는 마이크로프로세서(11)로부터 출력된 어드레스 (A0,A1,A2)중 어느것을 선택한다. 본 실시예에서, 어드레스 선택기회로 (15)는 A0,A1,A2가 모두 "1"일때 "1"을 출력하는 "AND" 게이트를 구성한다.
본 구성에 따른 실제동작은 타이밍도인 제3도를 참고하여 설명된다.
마이크로프로세서가 리세트된 후 대기상태수 비교회로(23)와 대기상태수 레지스터(13)의 초기값이 모두 "0"이기 때문에 대기상태수 비교회로(23)로부터 출력 (QX)는 "0"이 되고 대기요구래치회로(21)와 카운터회로(2)는 리세트된다. 그러기 때문에, 마이크로프로세서(11)가 리세트된 후 "0B"외 다른 값이 대기상태수 설정레지스터(13)에 설정될 때까지 대기상태수 비교회로(23)의 출력(QX)dms "0"으로 남고 각 회로는 리세트를 유지한다. 이렇게, 마이크로프로세서(11)에 대한 대기명령신호는 비활성(대기해제) 신호가 된다.
마이크로프로세서(11)의 리세트 해제후 만약 "11B"가 대기상태수 레지스터 (13)에 세트된다면 카운터회로(22)로부터의 입력값 "0B"(C1,C0)은 대기상태수 비교회로(23)에서 대기상태수설정레지스터(13)로부터의 입력치 "11B"(WS1,WS0)와 일치하지 않는다. 이렇게, 대기상태수 레지스터(13)는 클록(TFP)의 상승 혹은 하락에지시간 비교결과로서 "1"을 출력한다. 결과적으로, 대기요구래치회로(21)는 카운터회로 (22)의 리세팅이 종료되고(RX입력은 "1"로 세트), 대기요구래치회로(21)는 소정시간에서 대기요구를 래치할 수 있고 카운터회로(22)는 카운트-업 동작을 실행할 수 있게 된다.
만약 어드레스신호가 동시에 마이크로프로세서(11)로부터 주변장치(16)로 출력된다면, 어드레스선택기회로(15)에 의해 대기요구신호로서 그것은 검출된다. 즉, 오직 주제어부(12)로부터 출력된 어드레스(A0,A1,A2)가 "111B"일때 어드레스선택기회로(15)는 "1"을 출력하고 마이크로프로세서(11)의 대기요구를 한다. 여기서, 대기요구신호의 출력레벨은 래치하는 중에 종료되는 것으로 가정되고, 이것은 클록 (TL)의 상승에지에서 대기요구 래치회로(21)가 대기요구신호를 래치하기 때문이다. 다시말하면, 주제어부(12)로부터 출력되는 어드레스(A0,A1,A2)는 (예컨대, 게이트지연과 배선용량때문에 신호전달지연을 위한 시간을 허락하기 위하여) 클록(TL)의 상승보다 훨씬 앞에서 종료되도록 가정한다.
따라서, 대기요구래치회로(21)는 클록(TL)의 상승에지의 타이밍에서 대기요구신호 "1"를 래치하여 이것을 대기명령신호로써 주제어부(12)로 출력한다.
래치신호가 "1"이 되므로, 주제어부(12)는 클록(TL)의 하강에서 대기명령신호를 래치하고 다음 버스사이클에서 하나의 대기상태를 삽입한다. 대기명령신호는 또한 카운트 인에이블신호(EN)로서 카운터회로(22)에 삽입된다. 카운터회로(22)는 대기명령신호가 "1"이 될때 클록의 하강타이밍에서 카운트업되며, 그 출력은 "0B"에서 "1B"로 변화한다.
다수의 대기상태비교회로(23)는 클록(TFP)의 상승 또는 하강타이밍에서 입력치 "11B"(WS1,WS0)를 가지는 카운터회로(22)로부터 입력치 "1B"(C1,C0)를 비교한다. 그러나, 불일치때문에, 출력(QX)은 "1"로 유지되며, 대기요구래치회로(21)는 주제어부(12) 대기명령신호"1"(대기요구)를 계속해서 출력한다.
그리고나서, 카운터회로(22)가 클록(TL)의 하강에지의 타이밍에서 카운트업될때까지, 대기요구래치회로(21)는 주제어부(12)로 대기명령신호를 출력하고, 그들의 출력(Q1 과 Q0)은 "0B"로부터 "1B"와 "10B"를 통해 "11B"로 변화하며 끝으로 다수의 대기상태치 "11B"와 매치하여 다수의 대기상태비교회로(23)는 비교하는 결과로서 "0"(일치)를 출력한다. 그후에, 대기요구래치회로(21)및 카운터회로(22)는 다수의 대기상태비교회로(23)가 "0"(일치)를 출력할 때 리세트되므로(RX 입력이 "0"이 됨), 대기명령신호는 "0"이 되며 주제어부(12)는 중단되어, 다음 버스사이클로부터 대기상태를 삽입한다.
요약하면, 어드레스선택회로(15)에서 선택된 칩-선택신호는 버스사이클로 삽입되도록 다수의 대기상태설정레지스터(13)에 의해서 설정되는 수의 대기상태를 인에이블한다. 그러므로, 앞에서 기술된 바와같이, 마이크로프로세서(101)의 대기제어를 위해 필요한 외부회로와 마이크로프로세서(101)의 내부회로는 단순화될 수 있고, 따라서 저가의 자동대기제어를 가지는 마이크로프로세서를 실현시킨다.
[제2실시예]
제4도는 본 발명의 제2실시예를 도시하는 회로도이며, 여기서 다수의(n개의) 주변장치(16a 내지 16n)와 그들의 대응 어드레스선택회로(15a 내지 15n)가 제공된다. 어드레스선택회로(15a 내지 15n)는 대기요구신호(1 내지 n)로서 주변장치(16a 내지 16n)에 대응하는 주제어부(32)로부터 출력되는 칩-선택신호를 검출하며, 대응하는 대기명령회로(33a 내지 33n)에 그 결과를 출력한다. 어드레스선택회로(15a 내지 15n)는 칩-선택신호를 대응하는 주변장치(16a 내지 16n)로 출력한다.
대기명령회로(33a 내지 33n)(다수의 대기상태 설정장치와 동일함)와 대기명령신호발생수단 각각은 다수의 대기상태 설정레지스터, 하나의 대기요구래치회로, 하나의 카운터 회로 및 다수의 대기상태비교회로로 구성한다. "OR"게이트(34)는 "OR"논리에 의해서, 대기명령회로(33a 내지 33n)로부터 출력된 모든 신호를 합한다.
따라서, 다수의 대기요구가 마이크로프로세서(31)에서 동시에 발생될 때, 대응하는 수의 대기상태 설정레지스터사이의 대기상태중 최대치를 가진 하나가 우선 선택된다. 명백히, 이러한 실시예는 제1실시예의 그것과 유사한 효과를 얻는다.
[제3실시예]
제5도 및 제6도는 본 발명의 제3실시예를 설명한다.
제5도는 이것의 회로도이다. 이것은 제1실시예와 다르며 여기서 대기요구 시작신호 검출회로(43)는 대기요구래치회로와 대치되며 어드레스선택회로(45)는 변화되어 마이크로프로세서(41)로부터 출력된 ADS신호(어드레스 기억신호)의 하강에지의 타이밍과 동기되어 대기요구신호를 출력한다. 42는 주제어부이며, 44는 대기명령신호발생부이다.
제6도는 타이밍도이다. 대기요구시작신호 검출회로(43)는 대기요구의 "0"에서 "1"로의 변화를 검출하는 넓게 공지된 상승에지 검출회로이다(대기요구신호가 "1"에서 "0"으로 변할 경우에, 이것은 하강에지 검출회로로 될 수 있다). 리세트신호(RX)의 입력레벨이 "1"이고 에지검출 인에이블신호(ENX)의 레벨이 "0"일때, 대기요구개시신호의 상승에지검출이 시작된다. 상승에지가 실제로 검출될 때, 대기요구시작신호 검출회로(43)는 "1"(대기용)을 출력한다. 에지검출 인에이블신호가 "1"이 될때, 대기요구 개시신호의 상승에지검출은 시작되지 않으며 에지검출의 최하치는 유지된다. 그동안, 리세트신호(RX)의 입력레벨이 "0"이 될때, 대기요구 시작신호 검출회로(43)는 RX입력타임이에서 "0"을 출력한다.
대기요구시작신호 검출회로(43)가 에지검출회로이므로, 어드레스선택회로 (45)는 마이크로프로세서로 대기 요구시작신호를 출력하는 것이 필요하다. 제1실시예에서와 같이, 이 신호는 대기요구신호가 불확정기간을 가지고 있지 않는다. 그러므로, 어드레스 선택회로(45)는 마이크로프로세서(41)가 종료된 어드레스 출력을 확실히 하는 것을 지시하는 어드레스 저장신호(ADS)와 동기하는 대기요구신호를 출력한다.
따라서, 대기가 신호의 에지에서 마이크로프로세서에 대해서 요구된다할지라도 본 실시예는 이전의 실시예의 그것과 유사한 효과를 갖춘 자동대기제어를 가지는 마이크로프로세서를 실현시킨다.
[제4실시예]
제7도는 본 발명의 제4실시예의 회로도이며, 여기서 다수(n개)의 주변장치 (16a 내지 16n) 및 이들의 대응 어드레스선택회로(55a 내지 55n)가 제2실시예에서와 같이 제공된다. 어드레스선택회로(55a 내지 55n)는 제2실시예에서 도시된 어드레스 선택회로(15a 내지 15n)와 다르며, 여기서 어드레스 선택회로는 변화하여 마이크로프로세서(51)에서 주변장치(16a 내지 16n)로 출력되는 어드레스 저장신호 (ADS)의 하강에지의 타이밍과 동기하는 칩-선택신호를 출력한다. 52는 주제어부이다.
마이크로프로세서(51)로 대기를 요구하는 신호가 에지이며 다수의 주변장치 (16a 내지 16n)가 있다 할지라도, 본 실시예는 이전의 실시예들의 그것과 유사한 효과를 실현시킨다.
본 발명은 주제어부의 외부에서 제공된 어드레스 선택기로부터 전송된 대기요구신호의 수신시 대기명령신호를 발생한다. 다양한 회로가 소정의 대기사이클을 실행하기에 필요한 주제어부에 제공될 때, 의사의 칩-선택신호는 대기신호를 발생하는 주변회로장치를 인에이블하는 그의 주변회로장치로 제공되게 한다. 이러한 경우에, 의사 칩선택신호를 수신하는 주변회로장치는 정상적인 동작을 실행하지만 주제어부는 주변회로장치로부터 전송되는 데이타를 이용하지 못한다. 그러므로, 의사대기신호는 소프트웨어 프로그램을 사용함으로써 발생할 수 있으며 이때 주제어부는 소프트카운터의 사용없이 대기신호를 발생할 수 있다.
대기요구 입력단으로부터 대기요구신호가 대기트리거 조건내에 있을때만 마이크로프로세서는 대기제어를 시작한다. 그러므로, 자동대기제어를 실행하는데 있어서, 본 발명은 종래의 자동대기제어를 가지고 실행되는 마이크로프로세서와 비교하여 매우 단순화된 회로를 인에이블한다. 또한, 외부회로에 의해 발생된 칩-선택신호는 마이크로프로세서 대기요구신호로써 그대로 사용될 수 있으므로, 마이크로프로세서에 버스사이클 대기를 요구하거나 해제하는 복잡한 타이밍은 더이상 필요치 않다. 따라서, 외부회로는 매우 단순해질 수 있다.
그결과, 상기 실시예는 저가의 자동대기제어를 가지는 마이크로프로세서를 실현한다.

Claims (9)

  1. 소정의 버스사이클을 갖는 마이크로프로세서와, 그 마이크로프로세서의 일부로서 상기 마이크로프로세서에 동작적으로 접속되는 적어도 하나의 주변 장치가 되는 대기요구신호 수신수단과, 상기 마이크로프로세서에 접속되는 대기요구신호 작성수단을 구비하여 마이크로컴퓨터를 제어하는 버스사이클 제어방법에 있어서, 상기 대기요구신호 작성수단으로부터 입력되는 대기요구신호가 상기 대기요구신호수신수단에 의해 검출될때 상기 마이크로프로세서에 기억되는 소정의 대기 주기를 위한 상기 마이크로프로세서의 상기 버스 사이클을 중단하는 단계와; 상기 대기 주기동안에 상기 대기요구신호수신수단에 대하여 소정의 추가된 입력에 관계없이 상기 버스 사이클의 중단을 유지하는 단계와; 상기 소정의 대기동안에 상기 마이크로프로세서에 의하여 상기 주변장치에 인가되는 신호를 보류하는 단계와; 상기 소정의 대기주기가 경과된 후, 마이크로프로세서가 원래의 버스사이클로 복귀되도록 상기 버스 사이클을 중단해제하는 단계와; 대기요구신호를 검출하도록 상기 대기요구신호수신 수단을 다시 인에이블하는 단계를 포함한 것을 특징으로 하는 마이크로컴퓨터의 버스 사이클 제어방법.
  2. 소정의 버스사이클로 동작을 처리하는 마이크로프로세서와; 상기 마이크로프로세서에 의해 억세스 가능하게 접속되는 주변장치를 포함하며; 상기 마이크로프로세서는, 동작을 처리하고 상기 주변장치에 억세스 제어신호를 발생하는 주제어부; 레지스터 기입신호를 발생하는 수단; 상기 주제어부에 접속되어, 상기 억세스 제어신호에 대응하는 레지스터 기입신호를 수신하며 대기주기를 위해 대기상태수를 프로그램가능하게 설정하여 대기상태수 신호를 발생하는 상태수 설정수단과; 상기 상태수 설정수단에 접속되어 상기 상태수 신호를 수신하며, 상기 마이크로프로세서에 외부적으로 접속되어 대기요구신호 작성원으로부터의 대기요구신호에 응하여 상기 대기 상태수 신호에 대응하는 대기명령 신호를 발생하는 대기명령신호 발생수단을 포함하며, 상기 주요제어부는 상기 대기상태수와 상기 대기명령신호에 대응하는 주기를 위해 대기하도록 마이크로프로세서 버스 사이클을 발생하는 수단을 포함하고, 상기 마이크로프로세서는 상기 대기 주기동안에 상기 주변장치중 하나에 인가되는 신호를 보류하는 수단을 포함하여 상기 소정의 상태수 신호에 대응하는 상기 주기의 경과시간을 결정하는 것을 특징으로 하는 마이크로컴퓨터.
  3. 제2항에 있어서, 상기 마이크로컴퓨터는 상기 대기명령신호 발생수단으로부터 출력되는 대기명령신호의 논리합을 "OR" 논리로서 출력하며, 상기 마이크로컴퓨터는 다수의 상기 상태수 설정수단, 대기명령 신호발생수단 및 대기요구신호 작성수단을 포함하며, 상기 대기요구작성수단은 대응하는 대기명령신호 발생수단에 그 결과를 출력하는 것을 특징으로 하는 마이크로컴퓨터.
  4. 제2항에 있어서, 상기 마이크로컴퓨터는 상기 대기명령신호 발생수단으로부터 출력된 대기명령신호의 논리합을 "OR"논리로서 출력하며, 상기 마이크로컴퓨터는 다수의 상기 주변장치, 상태수 설정수단, 대기명령신호 발생수단 및 어드레스 선택기를 포함하며, 상기 어드레스 선택기는 대기요구신호로서 상기 다수의 주변 장치와 대응하는 주제어부로부터 출력된 각각의 칩선택신호를 검출하여, 그 결과를 대응하는 대기명령 신호발생수단으로 출력하는 것을 특징으로 하는 마이크로컴퓨터.
  5. 제4항에 있어서, 상기 마이크로컴퓨터는 다수의 주변장치가 상기 주제어부로의 대기요구를 동시에 발생시킬때 상태수 설정수단에 제공된 대기상태중 가장 큰 수를 갖는 주변장치로부터의 대기요구를 우선 선택하는 것을 특징으로 하는 마이크로컴퓨터.
  6. 소정의 버스 사이클로 보통의 계산동작을 처리하는 마이크로프로세서와, 상기 마이크로프로세서의 외부에 제공되며 접속되는 주변장치와, 상기 마이크로프로세서에 접속되어 대기요구신호로서의 어드레스에 의해 상기 주변장치를 칩-선택하는 신호를 제공하는 수단을 구비한 마이크로컴퓨터를 제어하는 버스사이클 제어방법에 있어서, 상기 마이크로프로세서로부터 상기 주변장치로 출력된 칩-선택 신호를 대기요구신호로서 제공하는 단계와; 소정길이의 시간이 마이크로프로세서에 기억되도록 상기 대기요구신호가 검출될때 마이크로프로세서에서 소정길이의 시간에 대응하는 주기를 위해 상기 마이크로프로세서에서 상기 버스 사이클을 중단하는 단계와; 상기 마이크로프로세서에 의해서 상기 대기주기동안에 상기 주변장치에 인가되는 신호를 보류하는 단계와; 상기 소정의 상태수에 대응하는 상기 주기가 경과된 후 마이크로프로세서가 원래의 버스 사이클로 복귀하도록 상기 단위 요구신호를 해제하는 단계를 포함한 것을 특징으로 하는 마이크로컴퓨터의 버스 사이클 제어방법.
  7. 소정의 버스사이클에서 동작을 처리하는 마이크로프로세서 및 마이크로프로세서에 의하여 억세스 가능한 주변장치를 포함하는데, 상기 마이크로프로세서는 동작을 처리하여 억세스 제어신호를 그의 주변장치로 발신하는 주제어부와, 대기기간에 대한 상태수를 프로그램 가능하게 설정하는 상태수 설정수단과, 대기 요구 신호에 대응하는 대기명령신호를 발생하는 수단을 포함하며, 상기 마이크로프로세서의 외부에 제공되는 대기요구신호로서 상기 주제어부로부터 주변장치로 출력되는 칩선택신호를 검출하는 어드레스 선택기를 포함하며, 상기 마이크로프로세서는 상기 대기요구신호의 검출시에 상기 대기명령신호 발생수단으로부터 대기명령신호를 출력함으로써 상기 상태수 설정수단에 의해 제공되는 상태수에 대응하는 기간을 위해 대기하도록 상기 주제어부에서의 버스사이클을 발생하는 수단과, 상기 대기기간동안 상기 주변장치를 억세스하는 수단을 더욱 포함한 것을 특징으로 하는 마이크로컴퓨터.
  8. 버스를 통하여 프로그램을 읽고 동작을 실행하는 주제어부와; 대기명령신호 발생수단이 각각의 주변장치에 대응하여 형성된 각각의 대기요구신호를 수신할 때 상태수에 따라 주제어부의 버스의 점유를 유지하는 대기명령신호 발생수단와; 주제어부의 억세스에 의하여 사전 설정된 대기수를 기억하며 대기수를 상기 대기명령신호 발생수단으로 제공하는 상태수 설정수단을 포함하는 것을 특징으로 하는 마이크로컴퓨터.
  9. 제8항에 있어서, 상기 주제어부, 상기 대기명령신호발생수단 및 상기 상태수설정수단이 LSI칩에 제공되는 것을 특징으로 하는 마이크로컴퓨터.
KR1019910000376A 1990-01-12 1991-01-12 버스사이클을 제어하는 방법 및 마이크로컴퓨터 KR940001273B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP5342 1990-01-12
JP2005342A JPH03210649A (ja) 1990-01-12 1990-01-12 マイクロコンピュータおよびそのバスサイクル制御方法

Publications (1)

Publication Number Publication Date
KR940001273B1 true KR940001273B1 (ko) 1994-02-18

Family

ID=11608549

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019910000376A KR940001273B1 (ko) 1990-01-12 1991-01-12 버스사이클을 제어하는 방법 및 마이크로컴퓨터

Country Status (4)

Country Link
US (1) US5581745A (ko)
EP (1) EP0437276A3 (ko)
JP (1) JPH03210649A (ko)
KR (1) KR940001273B1 (ko)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0601715A1 (en) * 1992-12-11 1994-06-15 National Semiconductor Corporation Bus of CPU core optimized for accessing on-chip memory devices
US5845310A (en) * 1993-12-15 1998-12-01 Hewlett-Packard Co. System and methods for performing cache latency diagnostics in scalable parallel processing architectures including calculating CPU idle time and counting number of cache misses
JP2770743B2 (ja) * 1994-07-15 1998-07-02 日本電気株式会社 ウエイト制御方式
US5960180A (en) * 1994-09-07 1999-09-28 Adaptec, Inc. Host adapter integrated circuit having autoaccess pause
US5623648A (en) * 1995-08-30 1997-04-22 National Semiconductor Corporation Controller for initiating insertion of wait states on a signal bus
US5826092A (en) * 1995-09-15 1998-10-20 Gateway 2000, Inc. Method and apparatus for performance optimization in power-managed computer systems
US5854944A (en) * 1996-05-09 1998-12-29 Motorola, Inc. Method and apparatus for determining wait states on a per cycle basis in a data processing system
EP0901070A4 (en) * 1997-02-27 2001-09-12 Mitsubishi Electric Corp DATA PROCESSOR
US6119189A (en) * 1997-09-24 2000-09-12 Intel Corporation Bus master transactions on a low pin count bus
US6157970A (en) * 1997-09-24 2000-12-05 Intel Corporation Direct memory access system using time-multiplexing for transferring address, data, and control and a separate control line for serially transmitting encoded DMA channel number
US5991841A (en) * 1997-09-24 1999-11-23 Intel Corporation Memory transactions on a low pin count bus
US6000029A (en) 1997-11-03 1999-12-07 Motorola, Inc. Method and apparatus for affecting subsequent instruction processing in a data processor
US6237059B1 (en) 1997-11-26 2001-05-22 Compaq Computer Corporation Method for estimating statistics of properties of memory system interactions among contexts in a computer system
US6332178B1 (en) 1997-11-26 2001-12-18 Compaq Computer Corporation Method for estimating statistics of properties of memory system transactions
US6549930B1 (en) 1997-11-26 2003-04-15 Compaq Computer Corporation Method for scheduling threads in a multithreaded processor
US6374367B1 (en) 1997-11-26 2002-04-16 Compaq Computer Corporation Apparatus and method for monitoring a computer system to guide optimization
US6237073B1 (en) * 1997-11-26 2001-05-22 Compaq Computer Corporation Method for providing virtual memory to physical memory page mapping in a computer operating system that randomly samples state information
US6195748B1 (en) 1997-11-26 2001-02-27 Compaq Computer Corporation Apparatus for sampling instruction execution information in a processor pipeline
US6163840A (en) * 1997-11-26 2000-12-19 Compaq Computer Corporation Method and apparatus for sampling multiple potentially concurrent instructions in a processor pipeline
US6442585B1 (en) 1997-11-26 2002-08-27 Compaq Computer Corporation Method for scheduling contexts based on statistics of memory system interactions in a computer system
US6175814B1 (en) 1997-11-26 2001-01-16 Compaq Computer Corporation Apparatus for determining the instantaneous average number of instructions processed
US6032211A (en) * 1998-06-17 2000-02-29 Advanced Micro Devices, Inc. Method of mode control in a bus optimized for personal computer data traffic
US6748442B1 (en) 1998-12-21 2004-06-08 Advanced Micro Devices, Inc. Method and apparatus for using a control signal on a packet based communication link
JP4030216B2 (ja) * 1999-03-09 2008-01-09 インターナショナル・ビジネス・マシーンズ・コーポレーション マイクロプロセッサとマイクロプロセッサを含むシステム及びマイクロプロセッサのバスサイクル制御方法
US6356987B1 (en) * 1999-03-10 2002-03-12 Atmel Corporation Microprocessing device having programmable wait states
JP2002091905A (ja) * 2000-09-20 2002-03-29 Mitsubishi Electric Corp 半導体装置およびアクセスウェイト数変更プログラムを記録したコンピュータ読み取り可能な記録媒体
US6662285B1 (en) * 2001-01-09 2003-12-09 Xilinx, Inc. User configurable memory system having local and global memory blocks
US6605962B2 (en) 2001-05-06 2003-08-12 Altera Corporation PLD architecture for flexible placement of IP function blocks
US7076595B1 (en) 2001-05-18 2006-07-11 Xilinx, Inc. Programmable logic device including programmable interface core and central processing unit
JP2002366253A (ja) * 2001-06-05 2002-12-20 Fujitsu Ltd クロックモジュレーション回路を有する半導体集積回路
US20030020082A1 (en) * 2001-07-25 2003-01-30 Motorola, Inc. Structure and method for fabricating semiconductor structures and devices for optical switching
US6781407B2 (en) 2002-01-09 2004-08-24 Xilinx, Inc. FPGA and embedded circuitry initialization and processing
US6798239B2 (en) * 2001-09-28 2004-09-28 Xilinx, Inc. Programmable gate array having interconnecting logic to support embedded fixed logic circuitry
US7420392B2 (en) * 2001-09-28 2008-09-02 Xilinx, Inc. Programmable gate array and embedded circuitry initialization and processing
US6954873B2 (en) * 2001-11-06 2005-10-11 Infineon Technologies Aktiengesellschaft Implementation of wait-states
US6996758B1 (en) 2001-11-16 2006-02-07 Xilinx, Inc. Apparatus for testing an interconnecting logic fabric
US6983405B1 (en) 2001-11-16 2006-01-03 Xilinx, Inc., Method and apparatus for testing circuitry embedded within a field programmable gate array
US6886092B1 (en) 2001-11-19 2005-04-26 Xilinx, Inc. Custom code processing in PGA by providing instructions from fixed logic processor portion to programmable dedicated processor portion
US6820248B1 (en) 2002-02-14 2004-11-16 Xilinx, Inc. Method and apparatus for routing interconnects to devices with dissimilar pitches
US6976160B1 (en) 2002-02-22 2005-12-13 Xilinx, Inc. Method and system for controlling default values of flip-flops in PGA/ASIC-based designs
US6754882B1 (en) * 2002-02-22 2004-06-22 Xilinx, Inc. Method and system for creating a customized support package for an FPGA-based system-on-chip (SoC)
US6934922B1 (en) 2002-02-27 2005-08-23 Xilinx, Inc. Timing performance analysis
US7007121B1 (en) 2002-02-27 2006-02-28 Xilinx, Inc. Method and apparatus for synchronized buses
US6839874B1 (en) 2002-02-28 2005-01-04 Xilinx, Inc. Method and apparatus for testing an embedded device
US7111217B1 (en) 2002-02-28 2006-09-19 Xilinx, Inc. Method and system for flexibly nesting JTAG TAP controllers for FPGA-based system-on-chip (SoC)
US7187709B1 (en) 2002-03-01 2007-03-06 Xilinx, Inc. High speed configurable transceiver architecture
US7111220B1 (en) 2002-03-01 2006-09-19 Xilinx, Inc. Network physical layer with embedded multi-standard CRC generator
US7088767B1 (en) 2002-03-01 2006-08-08 Xilinx, Inc. Method and apparatus for operating a transceiver in different data rates
US6961919B1 (en) 2002-03-04 2005-11-01 Xilinx, Inc. Method of designing integrated circuit having both configurable and fixed logic circuitry
US6973405B1 (en) 2002-05-22 2005-12-06 Xilinx, Inc. Programmable interactive verification agent
US6772405B1 (en) 2002-06-13 2004-08-03 Xilinx, Inc. Insertable block tile for interconnecting to a device embedded in an integrated circuit
US7085973B1 (en) 2002-07-09 2006-08-01 Xilinx, Inc. Testing address lines of a memory controller
US7099426B1 (en) 2002-09-03 2006-08-29 Xilinx, Inc. Flexible channel bonding and clock correction operations on a multi-block data path
US7092865B1 (en) 2002-09-10 2006-08-15 Xilinx, Inc. Method and apparatus for timing modeling
US7421014B2 (en) * 2003-09-11 2008-09-02 Xilinx, Inc. Channel bonding of a plurality of multi-gigabit transceivers
US7761632B2 (en) 2007-04-27 2010-07-20 Atmel Corporation Serialization of data for communication with slave in multi-chip bus implementation
US7814250B2 (en) * 2007-04-27 2010-10-12 Atmel Corporation Serialization of data for multi-chip bus implementation
US7743186B2 (en) * 2007-04-27 2010-06-22 Atmel Corporation Serialization of data for communication with different-protocol slave in multi-chip bus implementation
US7769933B2 (en) * 2007-04-27 2010-08-03 Atmel Corporation Serialization of data for communication with master in multi-chip bus implementation
JP5103663B2 (ja) * 2007-09-27 2012-12-19 ルネサスエレクトロニクス株式会社 メモリ制御装置

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4050096A (en) * 1974-10-30 1977-09-20 Motorola, Inc. Pulse expanding system for microprocessor systems with slow memory
US3964054A (en) * 1975-06-23 1976-06-15 International Business Machines Corporation Hierarchy response priority adjustment mechanism
US4153941A (en) * 1976-11-11 1979-05-08 Kearney & Trecker Corporation Timing circuit and method for controlling the operation of cyclical devices
US4282572A (en) * 1979-01-15 1981-08-04 Ncr Corporation Multiprocessor memory access system
US4488217A (en) * 1979-03-12 1984-12-11 Digital Equipment Corporation Data processing system with lock-unlock instruction facility
US4271468A (en) * 1979-11-06 1981-06-02 International Business Machines Corp. Multiprocessor mechanism for handling channel interrupts
US4507732A (en) * 1981-10-05 1985-03-26 Burroughs Corporation I/O subsystem using slow devices
US4509120A (en) * 1982-09-30 1985-04-02 Bell Telephone Laboratories, Inc. Variable cycle-time microcomputer
IT1193650B (it) * 1983-01-31 1988-07-21 Honeywell Inf Systems Apparato di interruzione ad affidabilita' accresciuta
US4620278A (en) * 1983-08-29 1986-10-28 Sperry Corporation Distributed bus arbitration according each bus user the ability to inhibit all new requests to arbitrate the bus, or to cancel its own pending request, and according the highest priority user the ability to stop the bus
US4692895A (en) * 1983-12-23 1987-09-08 American Telephone And Telegraph Company, At&T Bell Laboratories Microprocessor peripheral access control circuit
JPH0792782B2 (ja) * 1985-09-30 1995-10-09 富士通株式会社 処理実行システム
JPS62191961A (ja) * 1986-02-19 1987-08-22 Seiko Epson Corp 情報処理装置
US4835728A (en) * 1986-08-13 1989-05-30 Amdahl Corporation Deterministic clock control apparatus for a data processing system
US5125088A (en) * 1986-09-08 1992-06-23 Compaq Computer Corporation Computer system speed control at continuous processor speed
JPS63116262A (ja) * 1986-11-05 1988-05-20 Toshiba Corp デ−タ処理装置
JPS63132365A (ja) * 1986-11-22 1988-06-04 Nec Corp バス調停制御方式
US5151986A (en) * 1987-08-27 1992-09-29 Motorola, Inc. Microcomputer with on-board chip selects and programmable bus stretching
US5150467A (en) * 1987-09-04 1992-09-22 Digital Equipment Corporation Method and apparatus for suspending and restarting a bus cycle
US5155812A (en) * 1989-05-04 1992-10-13 Texas Instruments Incorporated Devices and method for generating and using systems, software waitstates on address boundaries in data processing
GB8808353D0 (en) * 1988-04-09 1988-05-11 Int Computers Ltd Data processing system
US5175829A (en) * 1988-10-25 1992-12-29 Hewlett-Packard Company Method and apparatus for bus lock during atomic computer operations
US5047921A (en) * 1989-01-31 1991-09-10 International Business Machines Corporation Asynchronous microprocessor random access memory arbitration controller
JPH02235156A (ja) * 1989-03-08 1990-09-18 Canon Inc 情報処理装置
US5185865A (en) * 1989-08-04 1993-02-09 Apple Computer, Inc. System for simulating block transfer with slave module incapable of block transfer by locking bus for multiple individual transfers

Also Published As

Publication number Publication date
EP0437276A3 (en) 1993-01-27
US5581745A (en) 1996-12-03
EP0437276A2 (en) 1991-07-17
JPH03210649A (ja) 1991-09-13

Similar Documents

Publication Publication Date Title
KR940001273B1 (ko) 버스사이클을 제어하는 방법 및 마이크로컴퓨터
KR940011670B1 (ko) 인터럽트 컨트롤러
EP0166272B1 (en) Processor bus access
US4967398A (en) Read/write random access memory with data prefetch
US4788640A (en) Priority logic system
US4630041A (en) Enhanced reliability interrupt control apparatus
JPS6030983B2 (ja) 周辺装置制御ユニツト
EP0166431B1 (en) An information processing apparatus having an instruction prefetch circuit
US6085261A (en) Method and apparatus for burst protocol in a data processing system
US5544333A (en) System for assigning and identifying devices on bus within predetermined period of time without requiring host to do the assignment
JP3705453B2 (ja) データ処理システム
US6006288A (en) Method and apparatus for adaptable burst chip select in a data processing system
JPH05181789A (ja) ディジタル回路
JPH08171504A (ja) エミュレ−ション装置
JP2990800B2 (ja) 割込み処理装置
JP3093374B2 (ja) 割り込みコントローラ
JP3077807B2 (ja) マイクロコンピュータシステム
US5875482A (en) Method and apparatus for programmable chip select negation in a data processing system
JPH0512185A (ja) バーストサイクルデータ読み出しのためのアドレス予測および検証回路
JPS621059A (ja) マルチ・マイクロプロセツサシステムにおける共有メモリアクセス法
JPH09167117A (ja) マイクロコンピュータおよびこれを用いたリアルタイムシステム
KR0120414Y1 (ko) 에지 트리거 lsi 제어장치
JP2962773B2 (ja) メモリアクセス競合制御回路
JPH0991246A (ja) バス制御装置及びその方法
KR19980059782A (ko) 프로세서의 메모리 다중 액세스 회로

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 19980213

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee