KR940001273B1 - 버스사이클을 제어하는 방법 및 마이크로컴퓨터 - Google Patents
버스사이클을 제어하는 방법 및 마이크로컴퓨터 Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4208—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline, look ahead using instruction pipelines
- G06F9/3869—Implementation 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)
- 소정의 버스사이클을 갖는 마이크로프로세서와, 그 마이크로프로세서의 일부로서 상기 마이크로프로세서에 동작적으로 접속되는 적어도 하나의 주변 장치가 되는 대기요구신호 수신수단과, 상기 마이크로프로세서에 접속되는 대기요구신호 작성수단을 구비하여 마이크로컴퓨터를 제어하는 버스사이클 제어방법에 있어서, 상기 대기요구신호 작성수단으로부터 입력되는 대기요구신호가 상기 대기요구신호수신수단에 의해 검출될때 상기 마이크로프로세서에 기억되는 소정의 대기 주기를 위한 상기 마이크로프로세서의 상기 버스 사이클을 중단하는 단계와; 상기 대기 주기동안에 상기 대기요구신호수신수단에 대하여 소정의 추가된 입력에 관계없이 상기 버스 사이클의 중단을 유지하는 단계와; 상기 소정의 대기동안에 상기 마이크로프로세서에 의하여 상기 주변장치에 인가되는 신호를 보류하는 단계와; 상기 소정의 대기주기가 경과된 후, 마이크로프로세서가 원래의 버스사이클로 복귀되도록 상기 버스 사이클을 중단해제하는 단계와; 대기요구신호를 검출하도록 상기 대기요구신호수신 수단을 다시 인에이블하는 단계를 포함한 것을 특징으로 하는 마이크로컴퓨터의 버스 사이클 제어방법.
- 소정의 버스사이클로 동작을 처리하는 마이크로프로세서와; 상기 마이크로프로세서에 의해 억세스 가능하게 접속되는 주변장치를 포함하며; 상기 마이크로프로세서는, 동작을 처리하고 상기 주변장치에 억세스 제어신호를 발생하는 주제어부; 레지스터 기입신호를 발생하는 수단; 상기 주제어부에 접속되어, 상기 억세스 제어신호에 대응하는 레지스터 기입신호를 수신하며 대기주기를 위해 대기상태수를 프로그램가능하게 설정하여 대기상태수 신호를 발생하는 상태수 설정수단과; 상기 상태수 설정수단에 접속되어 상기 상태수 신호를 수신하며, 상기 마이크로프로세서에 외부적으로 접속되어 대기요구신호 작성원으로부터의 대기요구신호에 응하여 상기 대기 상태수 신호에 대응하는 대기명령 신호를 발생하는 대기명령신호 발생수단을 포함하며, 상기 주요제어부는 상기 대기상태수와 상기 대기명령신호에 대응하는 주기를 위해 대기하도록 마이크로프로세서 버스 사이클을 발생하는 수단을 포함하고, 상기 마이크로프로세서는 상기 대기 주기동안에 상기 주변장치중 하나에 인가되는 신호를 보류하는 수단을 포함하여 상기 소정의 상태수 신호에 대응하는 상기 주기의 경과시간을 결정하는 것을 특징으로 하는 마이크로컴퓨터.
- 제2항에 있어서, 상기 마이크로컴퓨터는 상기 대기명령신호 발생수단으로부터 출력되는 대기명령신호의 논리합을 "OR" 논리로서 출력하며, 상기 마이크로컴퓨터는 다수의 상기 상태수 설정수단, 대기명령 신호발생수단 및 대기요구신호 작성수단을 포함하며, 상기 대기요구작성수단은 대응하는 대기명령신호 발생수단에 그 결과를 출력하는 것을 특징으로 하는 마이크로컴퓨터.
- 제2항에 있어서, 상기 마이크로컴퓨터는 상기 대기명령신호 발생수단으로부터 출력된 대기명령신호의 논리합을 "OR"논리로서 출력하며, 상기 마이크로컴퓨터는 다수의 상기 주변장치, 상태수 설정수단, 대기명령신호 발생수단 및 어드레스 선택기를 포함하며, 상기 어드레스 선택기는 대기요구신호로서 상기 다수의 주변 장치와 대응하는 주제어부로부터 출력된 각각의 칩선택신호를 검출하여, 그 결과를 대응하는 대기명령 신호발생수단으로 출력하는 것을 특징으로 하는 마이크로컴퓨터.
- 제4항에 있어서, 상기 마이크로컴퓨터는 다수의 주변장치가 상기 주제어부로의 대기요구를 동시에 발생시킬때 상태수 설정수단에 제공된 대기상태중 가장 큰 수를 갖는 주변장치로부터의 대기요구를 우선 선택하는 것을 특징으로 하는 마이크로컴퓨터.
- 소정의 버스 사이클로 보통의 계산동작을 처리하는 마이크로프로세서와, 상기 마이크로프로세서의 외부에 제공되며 접속되는 주변장치와, 상기 마이크로프로세서에 접속되어 대기요구신호로서의 어드레스에 의해 상기 주변장치를 칩-선택하는 신호를 제공하는 수단을 구비한 마이크로컴퓨터를 제어하는 버스사이클 제어방법에 있어서, 상기 마이크로프로세서로부터 상기 주변장치로 출력된 칩-선택 신호를 대기요구신호로서 제공하는 단계와; 소정길이의 시간이 마이크로프로세서에 기억되도록 상기 대기요구신호가 검출될때 마이크로프로세서에서 소정길이의 시간에 대응하는 주기를 위해 상기 마이크로프로세서에서 상기 버스 사이클을 중단하는 단계와; 상기 마이크로프로세서에 의해서 상기 대기주기동안에 상기 주변장치에 인가되는 신호를 보류하는 단계와; 상기 소정의 상태수에 대응하는 상기 주기가 경과된 후 마이크로프로세서가 원래의 버스 사이클로 복귀하도록 상기 단위 요구신호를 해제하는 단계를 포함한 것을 특징으로 하는 마이크로컴퓨터의 버스 사이클 제어방법.
- 소정의 버스사이클에서 동작을 처리하는 마이크로프로세서 및 마이크로프로세서에 의하여 억세스 가능한 주변장치를 포함하는데, 상기 마이크로프로세서는 동작을 처리하여 억세스 제어신호를 그의 주변장치로 발신하는 주제어부와, 대기기간에 대한 상태수를 프로그램 가능하게 설정하는 상태수 설정수단과, 대기 요구 신호에 대응하는 대기명령신호를 발생하는 수단을 포함하며, 상기 마이크로프로세서의 외부에 제공되는 대기요구신호로서 상기 주제어부로부터 주변장치로 출력되는 칩선택신호를 검출하는 어드레스 선택기를 포함하며, 상기 마이크로프로세서는 상기 대기요구신호의 검출시에 상기 대기명령신호 발생수단으로부터 대기명령신호를 출력함으로써 상기 상태수 설정수단에 의해 제공되는 상태수에 대응하는 기간을 위해 대기하도록 상기 주제어부에서의 버스사이클을 발생하는 수단과, 상기 대기기간동안 상기 주변장치를 억세스하는 수단을 더욱 포함한 것을 특징으로 하는 마이크로컴퓨터.
- 버스를 통하여 프로그램을 읽고 동작을 실행하는 주제어부와; 대기명령신호 발생수단이 각각의 주변장치에 대응하여 형성된 각각의 대기요구신호를 수신할 때 상태수에 따라 주제어부의 버스의 점유를 유지하는 대기명령신호 발생수단와; 주제어부의 억세스에 의하여 사전 설정된 대기수를 기억하며 대기수를 상기 대기명령신호 발생수단으로 제공하는 상태수 설정수단을 포함하는 것을 특징으로 하는 마이크로컴퓨터.
- 제8항에 있어서, 상기 주제어부, 상기 대기명령신호발생수단 및 상기 상태수설정수단이 LSI칩에 제공되는 것을 특징으로 하는 마이크로컴퓨터.
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)
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)
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 |
-
1990
- 1990-01-12 JP JP2005342A patent/JPH03210649A/ja active Pending
-
1991
- 1991-01-11 EP EP19910100328 patent/EP0437276A3/en not_active Withdrawn
- 1991-01-12 KR KR1019910000376A patent/KR940001273B1/ko not_active IP Right Cessation
-
1993
- 1993-12-17 US US08/168,392 patent/US5581745A/en not_active Expired - Fee Related
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 |