DE69737179T2 - Datenprozessorsynchronisation mit externem Bus - Google Patents

Datenprozessorsynchronisation mit externem Bus Download PDF

Info

Publication number
DE69737179T2
DE69737179T2 DE69737179T DE69737179T DE69737179T2 DE 69737179 T2 DE69737179 T2 DE 69737179T2 DE 69737179 T DE69737179 T DE 69737179T DE 69737179 T DE69737179 T DE 69737179T DE 69737179 T2 DE69737179 T2 DE 69737179T2
Authority
DE
Germany
Prior art keywords
signal
data
data processing
clock signal
external
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Lifetime
Application number
DE69737179T
Other languages
English (en)
Other versions
DE69737179D1 (de
Inventor
Miki Wakayama-shi Urano
Keizo Hirakata-shi Sumida
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Application granted granted Critical
Publication of DE69737179D1 publication Critical patent/DE69737179D1/de
Publication of DE69737179T2 publication Critical patent/DE69737179T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

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
    • G06F13/4217Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol

Description

  • Hintergrund der Erfindung
  • Diese Erfindung bezieht sich auf einen Datenprozessor für die Bearbeitung von Daten in Synchronisation mit einem internen Taktsignal, das eine höhere Frequenz aufweist als ein angewendetes externes Taktsignal, und für die Durchführung einer Datenübertragung mit einer externen Vorrichtung in Synchronisation mit dem externen Taktsignal. Ein solcher Prozessor wird durch US-A-5 485 602 offengelegt.
  • In dem Fall, in dem eine langsame externe Vorrichtung, wie ein Speicher und ein Coprozessor mit einem Datenprozessor gekoppelt sind, der darin eine schnelle zentrale Verarbeitungseinheit (CPU) enthält, wird eine Taktgenerierungsschaltung in dem Datenprozessor angeordnet, um aus dem externen Taktsignal ein internes Taktsignal zu generieren, das eine Frequenz aufweist, die ein ganzzahliges Vielfaches der Frequenz des externen Taktsignals ist. Die CPU führt die Datenverarbeitung in Synchronisation mit dem internen Taktsignal aus und gibt in Synchronisation mit dem internen Taktsignal eine Datenübertragungsanforderung aus; die Datenübertragung zwischen der CPU und der externen Vorrichtung muss jedoch mit dem externen Taktsignal synchronisiert werden.
  • Externe Vorrichtungen weisen ihre jeweiligen systemeigenen Einrichtezeiten auf. Zum Beispiel wird erst dann dieser Datenübertragung gestattet, tatsächlich zu beginnen, bis eine bestimmte Zeitspanne vergangen ist, die die Einrichtezeit einer externen Vorrichtung übersteigt, nachdem ein Adresssignal, das auf die externe Vorrichtung angewendet wird, ermittelt wurde.
  • Es gab Forderungen nach einem schnellen Datenprozessor, der die Einrichtezeit verschiedener externer Vorrichtungen gewährleisten kann, und der eine Datenübertragung mit einer externen Vorrichtung in Synchronisation mit einem externen Taktsignal verwirklichen kann. Solche Forderungen wurden jedoch noch nicht erfüllt.
  • Übersicht über die Erfindung
  • Dementsprechend ist es ein Ziel der vorliegenden Erfindung eine Technologie bereitzustellen, die Veränderungen bei der Einrichtezeit der externen Vorrichtung in einem Datenprozessor für die Bearbeitung von Daten in Synchronisation mit einem internen Taktsignal, das eine höhere Frequenz aufweist als ein angewendetes externes Taktsignal und für die Durchführung einer Datenübertragung mit einer externen Vorrichtung in Synchronisation mit dem externen Taktsignal, flexibel behandelt.
  • Um das Ziel zu erreichen, stellt die vorliegende Erfindung einen verbesserten Datenprozessor bereit, der einem Startsignal ermöglicht aus einer Vielzahl von Teilperioden, die als ein Ergebnis aus einer Teilung einer Zyklusperiode eines externen Taktsignals durch eine Zyklusperiode eines internen Taktsignals resultieren, eine beliebige Teilperiode auszuwählen.
  • Die vorliegende Erfindung wird in einem Datenprozessor verkörpert, der den folgenden Aufbau verwendet. Der Datenprozessor umfasst (a) eine Taktgenerierungsschaltung, um aus einem externen Taktsignal ein internes Taktsignal zu generieren, das eine Frequenz aufweist, die ein ganzzahliges Vielfaches der Frequenz des externen Taktsignals ist, (b) eine Verarbeitungseinrichtung für das Verarbeiten von Daten in Synchronisation mit dem internen Taktsignal, (c) eine Bus-Schnittstelle für das Steuern der Datenübertragung zwischen der Verarbeitungseinrichtung und der externen Vorrichtung, (d) eine Startsignal-Generierungsschaltung für das Generieren eines Startsignals, das aus einer Vielzahl von Teilperioden, die als ein Ergebnis aus einer Teilung einer Zyklusperiode des externen Taktsignals resultieren und jeweils eine Länge haben, die äquivalent zu einer Zyklusperiode des internen Taktsignals ist, eine Teilperiode an einer Position auswählt, die der Einrichtezeit der externen Vorrichtung entspricht und (e) eine Zustandsteuerschaltung zum Steuern eines internen Zustands des Datenprozessors, so dass der Datenprozessor einen Übergang zu einem Zustand der Übertragung vornehmen kann, sobald die Zustandsteuerschaltung das Startsignal empfängt, nachdem sie ein Übertragungs-Anforderungssignal empfangen hat, das von der Verarbeitungseinrichtung in Synchronisation mit dem internen Taktsignal ausgegeben wird. Eine Funktion der Bus-Schnittstelle besteht darin, ein Adresssignal, das zusammen mit dem Übertragungs-Anforderungssignal von der Verarbeitungseinrichtung ausgegeben wird, zu der externen Vorrichtung zu leiten, und eine Funktion besteht ferner darin, das Adresssignal, das der externen Vorrichtung zugeführt wird, aufrechtzuerhalten, bis Datenübertragung zwischen der Verarbeitungseinrichtung und der externen Vorrichtung in dem Übertragungszustand in Synchronisation mit dem externen Taktsignal beginnt.
  • Als ein Ergebnis einer solchen Anordnung wird es möglich, die Zeit des Datenübertragungsbeginns gemäß einer Einrichtezeit einer externen Vorrichtung zu verändern, wodurch die Einrichtezeit verschiedener externer Vorrichtungen gewährleistet werden kann und eine Datenübertragung in Synchronisation mit dem externen Taktsignal verwirklicht werden kann.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Blockdiagramm, das ein Beispiel des Aufbaus eines Datenprozessors nach der vorliegenden Erfindung darstellt.
  • 2 ist ein Blockdiagramm, das den internen Aufbau einer Bus-Schnittstelle von 1 darstellt.
  • 3 ist ein Blockdiagramm, das den internen Aufbau einer Startsignal-Generierungsschaltung von 1 darstellt.
  • 4 ist ein Blockdiagramm, das den internen Aufbau einer Zustandsteuerschaltung von 1 darstellt.
  • 5 ist ein Zustandübergangsdiagramm des Datenprozessors von 1.
  • 6 zeigt ein erstes Arbeitsablauf-Zeitdiagramm des Datenprozessors von 1, während ein Verzeichnis von 3 auf einen Wert 1 festgelegt ist.
  • 7 zeigt ein zweites Arbeitsablauf-Zeitdiagramm des Datenprozessors von 1, während das Verzeichnis von 3 auf einen Wert 1 festgelegt ist.
  • 8 zeigt ein drittes Arbeitsablauf-Zeitdiagramm des Datenprozessors von 1, während das Verzeichnis von 3 auf einen Wert 1 festgelegt ist.
  • 9 zeigt ein viertes Arbeitsablauf-Zeitdiagramm des Datenprozessors von 1, während das Verzeichnis von 3 auf einen Wert 1 festgelegt ist.
  • 10 zeigt ein erstes Arbeitsablauf-Zeitdiagramm des Datenprozessors von 1, während das Verzeichnis von 3 auf einen Wert 3 festgelegt ist.
  • 11 zeigt ein zweites Arbeitsablauf-Zeitdiagramm des Datenprozessors von 1, während das Verzeichnis von 3 auf einen Wert 3 festgelegt ist.
  • 12 zeigt ein drittes Arbeitsablauf-Zeitdiagramm des Datenprozessors von 1, während das Verzeichnis von 3 auf einen Wert 3 festgelegt ist.
  • 13 zeigt ein viertes Arbeitsablauf-Zeitdiagramm des Datenprozessors von 1, während das Verzeichnis von 3 auf einen Wert 3 festgelegt ist.
  • 14 stellt in Blockform eine Veränderung der Startsignal-Generierungsschaltung von 3 dar.
  • Ausführliche Beschreibung der Erfindung
  • Zunächst auf 1 bezogen, wird ein Datenprozessor nach der vorliegenden Erfindung gezeigt. Der Datenprozessor 1 von 1 ist eine Datenverarbeitungsvorrichtung, die eine Datenübertragung mit einer externen Vorrichtung 2, die eine spezifische Einrichtezeit aufweist, in Synchronisation mit einem externen Taktsignal ECLK durchführen kann. Der Datenprozessor 1 weist eine Taktgenerierungsschaltung 11, eine CPU (Verarbeitungseinrichtung) 12 und einen Datenübertragungs-Controller 13 auf. Die Taktgenerierungsschaltung 11 wird durch einen bekannten PLL (Phasenregelkreis) ausgebildet, um ein internes Taktsignal ICLK zu generieren, das eine Frequenz aufweist, die viermal höher ist, als die von SIGNAL ICLK. Die CPU 12 führt eine Datenverarbeitung durch, die einem Befehl INSTR entspricht, der sequentiell von einem eingebauten ROM (Lesespeicher) und in Synchronisation mit dem SIGNAL ICLK zugeführt wird. Zu dem Zeitpunkt, bei dem ein Übertragungsanforderungssignal REQ von der CPU 12 empfangen wird, steuert der Datenübertragungs-Controller 13 die Datenübertragung zwischen der CPU 12 und der externen Vorrichtung 2 in Synchronisation mit SIGNAL ECLK. Der Datenübertragungs-Controller 13 weist eine Bus- Schnittstelle 20, eine Startsignal-Generierungsschaltung 30 und eine Zustandsteuerschaltung 40 auf. Zwischen der CPU 12 und der Bus-Schnittstelle 20 sind ein Adressbus 14, ein Datenbus 15 und ein Steuerbus 16 angeordnet. Zwischen der Bus-Schnittstelle 20 und der externen Vorrichtung 2 sind ein Adressbus 17, ein Datenbus 18 und ein Steuerbus 19 angeordnet. Wenn die externe Vorrichtung 2 ein Speicher ist, dann werden die Daten über die Datenbusse 15 und 18 übertragen. Wenn die externe Vorrichtung 2 andererseits ein Coprozessor ist, dann werden die Befehle (und Daten) über dessen Datenbusse übertragen. Die Bus-Schnittstelle 20 steuert die Datenübertragung zwischen der CPU 12 und der externen Vorrichtung 2, mit anderen Worten, eine solche Datenübertragung wird durch die Bus-Schnittstelle 20 gesteuert, um in Synchronisation mit der ansteigenden Flanke von SIGNAL ECLK zu beginnen. Die Startsignal-Generierungsschaltung 30 ist eine Schaltung für das Generieren eines Startsignals START, die aus vier Teilperioden, als ein Ergebnis einer gleichen Aufteilung einer Zyklusperiode von SIGNAL ECLK, eine Teilperiode an einer Position auswählt, die der Einrichtezeit der externen Vorrichtung 2 entspricht. Das Auswählen einer Teilperiode wird basierend auf einem Sollwertsignal SET durchgeführt, das von der CPU 12 der Startsignal-Generierungsschaltung 30 zugeführt wird. Die Zustandsteuerschaltung 40 steuert den internen Zustand des Datenprozessors 1 in Synchronisation mit SIGNAL ICLK, damit der Datenprozessor 1 einen Zustandübergang zu dem Zustand der Übertragung vornimmt, bei dem die Zustandsteuerschaltung 40 SIGNAL START empfängt, nachdem sie SIGNAL REQ empfangen hat, das in Synchronisation mit SIGNAL ICLK von der CPU 12 ausgegeben wurde. Die Zustandsteuerschaltung 40 sendet ein Steuersignal CONTR zu der Bus-Schnittstelle 20.
  • 2 zeigt einen internen Aufbau der Bus-Schnittstelle 20. Die Bus-Schnittstelle 20 weist ein Adressverzeichnis 21, ein Eingabedaten-Verzeichnis 22, einen Buspuffer mit drei Zuständen 23, ein Ausgabedaten-Verzeichnis 24, einen weiteren Buspuffer mit drei Zuständen 25, eine Übertragungssteuersignal-Generierungsschaltung 26 und ein Übertragungssteuersignal-Verzeichnis 27 auf. Das Adressverzeichnis 21 enthält ein Adresssignal ADRS, das von der CPU 12 über den Adressbus 14 zugeführt wird, und liefert SIGNAL ADRS über den Adressbus 17 zu der externen Vorrichtung 2. Das Eingabedaten-Verzeichnis 22 enthält ein Datensignal, das von der externen Vorrichtung 2 über den Datenbus 18 zugeführt wird. Das in dem Eingabedaten-Verzeichnis 22 enthaltene Datensignal wird über einen Buspuffer 23 und den Datenbus 15 auf die CPU 12 angewendet. Das Ausgabedaten-Verzeichnis 24 ent hält ein Adresssignal, das von der CPU 12 über den Datenbus 15 zugeführt wird. Das in dem Ausgabedaten-Verzeichnis 24 enthaltene Datensignal wird über einen Buspuffer 25 und den Datenbus 18 auf die externe Vorrichtung 2 angewendet. Die Übertragungssteuersignal-Generierungsschaltung 26 ist über den Steuerbus 16 mit der CPU 12 gekoppelt, empfängt SIGNAL CONTR, das von der Zustandsteuerschaltung 40 zugeführt wird, und SIGNAL ECLK und generiert ein Übertragungssteuersignal, während sie die Richtung steuert, in der die Daten übertragen werden. Wenn die externe Vorrichtung 2 ein Chip-Auswahlsignal benötigt, werden teilweise Signale in dem Adressbus 14 für das Generieren eines Chip-Auswahlsignals verwendet. Das Übertragungssteuersignal-Verzeichnis 27 enthält das generierte Übertragungssteuersignal. Das in dem Übertragungssteuersignal-Verzeichnis 27 enthaltene Signal wird über den Steuerbus 19 der externen Vorrichtung 2 zugeführt. Die Bus-Schnittstelle 20 von 2 hat die Funktion, SIGNAL ADRS, das gemeinsam mit SIGNAL REQ von der CPU 12 ausgegeben wird, der externen Vorrichtung 2 zuzuführen, und sie hat ferner die Funktion, SIGNAL ADRS in dem Adressverzeichnis 21 zu halten, bis die Datenübertragung zwischen der CPU 12 und der externen Vorrichtung 2 in Synchronisation mit der ansteigenden Flanke von SIGNAL ECLK in dem Übertragungszustand beginnt.
  • 3 stellt einen internen Aufbau der Startsignal-Generierungsschaltung 30 dar. Die Startsignal-Generierungsschaltung 30 weist eine Flankenermittlungsschaltung 33, einen Aufwärtszähler 34, ein Verzeichnis 35 und eine Vergleichsschaltung 36 auf. Die Flankenermittlungsschaltung 33 wird zur Ermittlung des Vorhandenseins einer ansteigenden Flanke von SIGNAL ECLK durch ein D-Flipflop 31 und ein AND-Gate 32 ausgebildet. Der Aufwärtszähler 34 wird zu dem Zeitpunkt auf Null zurückgestellt, bei dem das Vorhandensein einer ansteigenden Flanke von SIGNAL ECLK ermittelt wird, und danach zählt er aufwärts oder zählt in ansteigender Ordnung die Anzahl der Impulse von SIGNAL ICLK. Das Verzeichnis 35 speichert SIGNAL SET, das es von der CPU 12 empfangen hat. Die Vergleichsschaltung 36 führt dann einen Vergleich zwischen einem Zählwertsignal COUNT des Aufwärtszählers 34 und einem SIGNAL SET durch, das in dem Verzeichnis 35 gespeichert ist. Die Flankenermittlungsschaltung 33 generiert ein Flankenermittlungssignal EDGE, das nur für eine Teilperiode HOCH gehalten wird, die einer Zyklusperiode von SIGNAL ICLK ab dem Zeitpunkt der SIGNAL ECLK-Anstiege entspricht. Dieses SIGNAL EDGE wird auf einen Nullstellanschluss des Aufwärtszählers 34 angewendet, und der Aufwärtszähler 34 beginnt mit dem Zählen der Anzahl ansteigender Flanken von SIGNAL ICLK. Dementsprechend Zählen der Anzahl ansteigender Flanken von SIGNAL ICLK. Dementsprechend stellt SIGNAL COUNT 0, 1, 2 oder 3 dar. Die Vergleichsschaltung 36 stellt SIGNAL START, sobald SIGNAL COUNT und SIGNAL SET, die in dem Verzeichnis 35 gespeichert sind, zustimmen. Sie kann so aufgebaut sein, dass SIGNAL SET von den externen Anschlussstiften 37 des Datenprozessors 1 direkt auf die Vergleichsschaltung 36 angewendet wird.
  • 4 zeigt einen internen Aufbau der Zustandsteuerschaltung 40. Die Zustandsteuerschaltung 40 weist eine Zustandgenerierungsschaltung 41, ein Zustandverzeichnis 42 und einen Datenzähler 43 auf. Das Zustandverzeichnis 42 speichert ein Zustandsignal STATE, das anzeigt, ob ein Anforderungswartezustand S0, ein Startwartezustand S1 und ein Übertragungszustand S2 der aktuelle interne Zustand des Datenprozessors 1 ist. Der Datenzähler 43 zählt die Anzahl der übertragenen Datenelemente, um für das Beenden der Datenübertragung eine Stoppsignal STOP zu generieren. Das Zustandverzeichnis 42 und der Datenzähler 43 werden in Synchronisation mit der ansteigenden Flanke SIGNAL ICLK aktualisiert. Basierend auf SIGNAL STATE, das in dem Zustandverzeichnis 42 gespeichert wird, SIGNAL REQ, das von der CPU 12 ausgegeben wird, SIGNAL START, das in der in der Startsignal-Generierungsschaltung 30 generiert wird, und SIGNAL STOP, das in dem Datenzähler 43 generiert wird, aktualisiert die Zustandgenerierungsschaltung 41 das Zustandverzeichnis 42. Ferner aktualisiert die Zustandgenerierungsschaltung 41 SIGNAL CONTR, das der Bus-Schnittstelle 20 zugeführt wird.
  • 5 zeigt, wie der Datenprozessor 1 seinen internen Zustand verändert. Der Datenprozessor 1 bleibt in dem Anforderungswartezustand S0 bis die CPU 12 SIGNAL REQ sendet. Sobald die Zustandgenerierungsschaltung 41 SIGNAL REQ empfängt, nimmt der Datenprozessor 1 einen Übergang von dem Anforderungswartezustand S0 zu dem Startwartezustand S1 vor. Der Datenprozessor 1 bleibt dann in dem Startwartezustand S1 bis SIGNAL START generiert wird. Sobald die Zustandgenerierungsschaltung 41 SIGNAL START empfängt, nimmt der Datenprozessor 1 einen Übergang von dem Startwartezustand S1 zu dem Übertragungszustand S2 vor. Der Datenprozessor 1 bleibt dann in dem Übertragungszustand S2 bis der Datenzähler 43 SIGNAL STOP generiert. Sobald die Zustandgenerierungsschaltung 41 SIGNAL STOP empfängt, nimmt der Datenprozessor 1 einen Übergang von dem Übertragungszustand S2 zurück zu dem Anforderungswartezustand S0 vor.
  • Vor der Datenübertragung sendet die CPU 12 SIGNAL SET an die Startsignal-Generierungsschaltung 30, um SIGNAL START zu ermöglichen, eine Teilperiode an einer Position auszuwählen, die der Einrichtezeit der externen Vorrichtung 2 entspricht. Konkret, wenn eine Zyklusperiode von SIGNAL ICLK gleich T ist, und die Einrichtezeit der externen Vorrichtung 2 gleich Ts ist, dann gilt: SET = 0 für Ts = 4T, SET = 1 für Ts = 3T, SET = 2 für Ts = 2T und SET = 3 für Ts = 1. Die CPU 12 kann SIGNAL REQ in einer Beliebigen der vier Teilperioden ausgeben, die aus der gleichen Aufteilung einer Zyklusperiode von SIGNAL ECLK resultieren.
  • 6 zeigt eine Arbeitsablaufzeit des Datenprozessors 1 während SET = 1 (Ts = 3T) ist und während SIGNAL REQ in der Teilperiode T0 ausgegeben wird. Teilperioden werden jeweils dargestellt durch T0, T1, T2, T3, T4, T5, T6, T7 und T8. Bezüglich 6 wird dann SIGNAL START in den Teilperioden T1 und T5 generiert, da SET = 1 ist. Der interne Zustand nimmt zu dem Zeitpunkt bei dem die Teilperiode T1 beginnt, einen Übergang von dem Anforderungswartezustand S0 zu dem Startwartezustand S1 vor, und nimmt dann zu dem Zeitpunkt bei dem die Teilperiode T2 beginnt, einen weiteren Übergang von dem Startwartezustand S1 zu dem Übertragungszustand S2 vor. Ab dem Zeitpunkt, bei dem SIGNAL ECLK nachfolgend ansteigt, das heißt, ab dem Zeitpunkt, bei dem die Teilperiode T4 beginnt, beginnt die eigentliche Datenübertragung zwischen der CPU 12 und der externen Vorrichtung 2. Wenn eine Zeitspanne von einer Teilperiode, in der SIGNAL REQ ausgegeben wird, zu einer Weiteren, in der die eigentliche Datenübertragung beginnt, als Zugriffsverzug definiert wird, beträgt der Zugriffsverzug in diesem Fall 3T. Da SIGNAL ADRS zu dem Zeitpunkt bestimmt wird, bei dem die Teilperiode T1 beginnt, gewährleistet das eine Einrichtezeit von 3T für die externe Vorrichtung 2.
  • 7 zeigt eine Arbeitsablaufzeit des Datenprozessors 1 während SET = 1 (Ts = 3T) ist und während SIGNAL REQ in der Teilperiode T1 ausgegeben wird. Bezüglich 7 wird dann SIGNAL START in den Teilperioden T1 und T5 generiert, da SET = 1 ist. Der interne Zustand nimmt zu dem Zeitpunkt bei dem die Teilperiode T2 beginnt, einen Übergang von dem Anforderungswartezustand S0 zu dem Startwartezustand S1 vor, und nimmt dann zu dem Zeitpunkt bei dem die Teilperiode T6 beginnt, einen weiteren Übergang von dem Startwartezustand S1 zu dem Übertragungszustand S2 vor. Ab dem Zeitpunkt, bei dem SIGNAL ECLK nachfolgend ansteigt, das heißt, ab dem Zeitpunkt, bei dem die Teilperiode T8 beginnt, beginnt die eigentliche Datenübertragung zwischen der CPU 12 und der exter nen Vorrichtung 2. Der Zugriffsverzug beträgt in diesem Fall 6T. Da SIGNAL ADRS zu dem Zeitpunkt bestimmt wird, bei dem die Teilperiode T2 beginnt, gewährleistet das eine Einrichtezeit von 3T für die externe Vorrichtung 2. Wenn die eigentliche Datenübertragung zwischen der CPU 12 und der externen Vorrichtung 2 zu dem Zeitpunkt beginnt, bei dem die Teilperiode T4 beginnt, dann ist es erforderlich auf die Tatsache zu achten, dass eine Einrichtezeit von 3T für die externe Vorrichtung 2 nicht gewährleistet ist.
  • 8 zeigt eine Arbeitsablaufzeit des Datenprozessors 1 während SET = 1 (Ts = 3T) ist und während SIGNAL REQ in der Teilperiode T2 ausgegeben wird. Bezüglich 8 wird dann SIGNAL START in den Teilperioden T1 und T5 generiert, da SET = 1 ist. Der interne Zustand nimmt zu dem Zeitpunkt bei dem die Teilperiode T3 beginnt, einen Übergang von dem Anforderungswartezustand S0 zu dem Startwartezustand S1 vor, und nimmt dann zu dem Zeitpunkt bei dem die Teilperiode T6 beginnt, einen weiteren Übergang von dem Startwartezustand S1 zu dem Übertragungszustand S2 vor. Ab dem Zeitpunkt, bei dem SIGNAL ECLK nachfolgend ansteigt, das heißt, ab dem Zeitpunkt, bei dem die Teilperiode T8 beginnt, beginnt die eigentliche Datenübertragung zwischen der CPU 12 und der externen Vorrichtung 2. Der Zugriffsverzug beträgt in diesem Fall 5T. Da SIGNAL ADRS zu dem Zeitpunkt bestimmt wird, bei dem die Teilperiode T3 beginnt, gewährleistet das eine Einrichtezeit von 3T für die externe Vorrichtung 2.
  • 9 zeigt eine Arbeitsablaufzeit des Datenprozessors 1 während SET = 1 (Ts = 3T) ist und während SIGNAL REQ in der Teilperiode T3 ausgegeben wird. Bezüglich 9 wird dann SIGNAL START in den Teilperioden T1 und T5 generiert, da SET = 1 ist. Der interne Zustand nimmt zu dem Zeitpunkt bei dem die Teilperiode T4 beginnt, einen Übergang von dem Anforderungswartezustand S0 zu dem Startwartezustand S1 vor, und nimmt dann zu dem Zeitpunkt bei dem die Teilperiode T6 beginnt, einen weiteren Übergang von dem Startwartezustand S1 zu dem Übertragungszustand S2 vor. Ab dem Zeitpunkt, bei dem SIGNAL ECLK nachfolgend ansteigt, das heißt, ab dem Zeitpunkt, bei dem die Teilperiode T8 beginnt, beginnt die eigentliche Datenübertragung zwischen der CPU 12 und der externen Vorrichtung 2. Der Zugriffsverzug beträgt in diesem Fall 4T. Da SIGNAL ADRS zu dem Zeitpunkt bestimmt wird, bei dem die Teilperiode T4 beginnt, gewährleistet das eine Einrichtezeit von 3T für die externe Vorrichtung 2.
  • 10 zeigt eine Arbeitsablaufzeit des Datenprozessors 1 während SET = 3 (Ts = 1T) ist und während SIGNAL REQ in der Teilperiode T0 ausgegeben wird. Bezüglich 10 wird dann SIGNAL START in den Teilperioden T3 und T7 generiert, da SET = 3 ist. Der interne Zustand nimmt zu dem Zeitpunkt bei dem die Teilperiode T1 beginnt, einen Übergang von dem Anforderungswartezustand S0 zu dem Startwartezustand S1 vor, und nimmt dann zu dem Zeitpunkt bei dem die Teilperiode T4 beginnt, einen weiteren Übergang von dem Startwartezustand S1 zu dem Übertragungszustand S2 vor. Ab dem Zeitpunkt, bei dem SIGNAL ECLK ansteigt, das heißt, ab dem Zeitpunkt, bei dem die Teilperiode T4 beginnt, beginnt die eigentliche Datenübertragung zwischen der CPU 12 und der externen Vorrichtung 2. Der Zugriffsverzug beträgt in diesem Fall 3T. Da SIGNAL ADRS zu dem Zeitpunkt bestimmt wird, bei dem die Teilperiode T1 beginnt, gewährleistet das eine Einrichtezeit von 1T für die externe Vorrichtung 2.
  • 11 zeigt eine Arbeitsablaufzeit des Datenprozessors 1 während SET = 3 (Ts = 1T) ist und während SIGNAL REQ in der Teilperiode T1 ausgegeben wird. Bezüglich 11 wird dann SIGNAL START in den Teilperioden T3 und T7 generiert, da SET = 3 ist. Der interne Zustand nimmt zu dem Zeitpunkt bei dem die Teilperiode T2 beginnt, einen Übergang von dem Anforderungswartezustand S0 zu dem Startwartezustand S1 vor, und nimmt dann zu dem Zeitpunkt bei dem die Teilperiode T4 beginnt, einen weiteren Übergang von dem Startwartezustand S1 zu dem Übertragungszustand S2 vor. Ab dem Zeitpunkt, bei dem SIGNAL ECLK ansteigt, das heißt, ab dem Zeitpunkt, bei dem die Teilperiode T4 beginnt, beginnt die eigentliche Datenübertragung zwischen der CPU 12 und der externen Vorrichtung 2. Der Zugriffsverzug beträgt in diesem Fall 2T. Da SIGNAL ADRS zu dem Zeitpunkt bestimmt wird, bei dem die Teilperiode T2 beginnt, gewährleistet das eine Einrichtezeit von 1T für die externe Vorrichtung 2.
  • 12 zeigt eine Arbeitsablaufzeit des Datenprozessors 1 während SET = 3 (Ts = 1T) ist und während SIGNAL REQ in der Teilperiode T2 ausgegeben wird. Bezüglich 12 wird dann SIGNAL START in den Teilperioden T3 und T7 generiert, da SET = 3 ist. Der interne Zustand nimmt zu dem Zeitpunkt bei dem die Teilperiode T3 beginnt, einen Übergang von dem Anforderungswartezustand S0 zu dem Startwartezustand S1 vor, und nimmt dann zu einem Zeitpunkt bei dem die Teilperiode T4 beginnt, einen weiteren Übergang von dem Startwartezustand S1 zu dem Übertragungszustand S2 vor. Ab dem Zeitpunkt, bei dem SIGNAL ECLK ansteigt, das heißt, ab dem Zeitpunkt, bei dem die Teilperiode T4 beginnt, beginnt die eigentliche Datenübertragung zwischen der CPU 12 und der externen Vorrichtung 2. Der Zugriffsverzug beträgt in diesem Fall 1T. Da SIGNAL ADRS zu dem Zeitpunkt bestimmt wird, bei dem die Teilperiode T3 beginnt, gewährleistet das eine Einrichtezeit von 1T für die externe Vorrichtung 2.
  • 13 zeigt eine Arbeitsablaufzeit des Datenprozessors 1 während SET = 3 (Ts = 1T) ist und während SIGNAL REQ in der Teilperiode T3 ausgegeben wird. Bezüglich 13 wird dann SIGNAL START in den Teilperioden T3 und T7 generiert, da SET = 3 ist. Der interne Zustand nimmt zu einem Zeitpunkt bei dem die Teilperiode T4 beginnt, einen Übergang von dem Anforderungswartezustand S0 zu dem Startwartezustand S1 vor, und nimmt dann zu einem Zeitpunkt bei dem die Teilperiode T8 beginnt, einen weiteren Übergang von dem Startwartezustand S1 zu dem Übertragungszustand S2 vor. Ab dem Zeitpunkt, bei dem SIGNAL ECLK ansteigt, das heißt, ab dem Zeitpunkt, bei dem die Teilperiode T8 beginnt, beginnt die eigentliche Datenübertragung zwischen der CPU 12 und der externen Vorrichtung 2. Der Zugriffsverzug beträgt in diesem Fall 4T. Da SIGNAL ADRS zu dem Zeitpunkt bestimmt wird, bei dem die Teilperiode T4 beginnt, gewährleistet das eine Einrichtezeit von 1T für die externe Vorrichtung 2.
  • Wie oben beschrieben, beginnt der Datenprozessor 1 in dem Fall, in dem SET = 1 entsprechend zu Ts = 3T festgelegt wird, die eigentliche Datenübertragung zu dem Zeitpunkt durchzuführen, bei dem SIGNAL ECLK nachfolgend ansteigt, wenn zu dem Zeitpunkt, bei dem SIGNAL REQ ausgegeben wird, eine Zeit von mehr als 3T bis zu dem Augenblick verbleibt, bei dem SIGNAL ECLK dem nächsten Anstieg ausgesetzt wird (siehe 6 bis 9). Wenn eine solche Zeit unter 3T fällt, wartet der Datenprozessor 1 bis SIGNAL ECLK dem übernächsten Anstieg ausgesetzt wurde und beginnt dann mit der eigentlichen Datenübertragung. Andererseits beginnt in dem Fall, in dem SET = 3 entsprechend zu Ts = 1T festgelegt wird, der Datenprozessor 1 die eigentliche Datenübertragung zu dem Zeitpunkt durchzuführen, bei dem SIGNAL ECLK nachfolgend ansteigt, wenn zu dem Zeitpunkt, bei dem SIGNAL REQ ausgegeben wird, eine Zeit von mehr als 1T bis zu dem Augenblick verbleibt, bei dem SIGNAL ECLK dem nächsten Anstieg ausgesetzt wird (siehe 10 bis 13). Wenn eine solche Zeit unter 1T fällt, wartet der Datenprozessor 1 bis SIGNAL ECLK dem übernächsten Anstieg ausgesetzt wurde und beginnt dann mit der eigentlichen Datenübertragung. Mit anderen Worten, durch den oben beschriebenen Datenprozessor 1 der vorliegenden Erfindung wird es möglich, den Zeitpunkt zu verändern, bei dem die Datenübertragung gemäß der Einrichtezeit (Ts) der externen Vorrichtung 2 beginnt. Dementsprechend kann die Einrichtezeit verschiedener externer Vorrichtungen gewährleistet werden, und die Datenübertragung kann in Synchronisation mit SIGNAL ECLK ausgeführt werden.
  • 14 zeigt eine Modifikation der Startsignal-Generierungsschaltung 30. Die Schaltung 30 von 14 weist eine Flankenermittlungsschaltung 33, einen Abwärtszähler 38 und ein Verzeichnis 35 auf. Die Flankenermittlungsschaltung 33 wird zur Ermittlung des Vorhandenseins einer ansteigenden Flanke von SIGNAL ECLK durch ein D-Flipflop 31 und ein AND-Gate 32 ausgebildet. Der Abwärtszähler 38 zählt abwärts oder zählt in absteigender Ordnung die Anzahl der Impulse von SIGNAL ICLK, nachdem ein Anfangswertsignal zu dem Zeitpunkt geladen wird, bei dem das Vorhandensein einer ansteigenden Flanke von SIGNAL ECLK ermittelt wurde, und generiert SIGNAL START sobald der Zählwert des Abwärtszählers 38 Null erreicht. Das Verzeichnis 35 speichert SIGNAL SET, das von der CPU 12 als ein Anfangswertsignal zugeführt wird, um auf den Abwärtszähler 38 angewendet zu werden. Der Abwärtszähler 38 weist einen Lastanschluss auf, bei dem SIGNAL EDGE angewendet wird und einen Datenanschluss, bei dem SIGNAL SET (Anfangswert), der in dem Verzeichnis 35 gespeichert ist, angewendet wird. Der Aufbau von 14 ermöglicht es, SIGNAL START zu generieren, das, als ein Ergebnis der gleichen Aufteilung einer Zyklusperiode von SIGNAL ECLK, eine Beliebige aus vier Teilperioden auswählt, ohne dass Vergleichschaltungen bereitgestellt werden. Er kann so aufgebaut sein, dass SIGNAL SET von externen Anschlussstiften 37 des Datenprozessors 1 direkt auf den Abwärtszähler 38 angewendet wird.
  • In der obigen Beschreibung ist die Frequenz von SIGNAL ICLK viermal höher als die von SIGNAL ECLK. Es kann jedoch ein beliebiges Frequenz-Multiplikationsverhältnis von SIGNAL ECLK zu SIGNAL ICLK verwendet werden. Zusätzlich ist eine Handshake-Steuerung zwischen der CPU 12 und der externen Vorrichtung 2 möglich.

Claims (12)

  1. Datenverarbeitungsvorrichtung zum Durchführen von Datenübertragung mit einer externen Einrichtung, die eine spezielle Setup-Zeit hat, synchron zu einem externen Taktsignal, das zugeführt wird, wobei die Datenverarbeitungsvorrichtung umfasst: eine Takterzeugungsschaltung zum Erzeugen eines internen Taktsignals mit einer Frequenz, die ein ganzzahliges Vielfaches der des externen Taktsignals ist, aus dem externen Taktsignal; eine Verarbeitungseinrichtung zum Verarbeiten von Daten synchron zu dem internen Taktsignal; eine Bus-Schnittstelle zum Steuern von Datenübertragung zwischen der Verarbeitungseinrichtung und der externen Vorrichtung; eine Startsignal-Erzeugungsschaltung zum Erzeugen eines Startsignals, die aus einer Vielzahl von Teilperioden, die aus Teilung einer Zyklusperiode des externen Taktsignals resultieren und jeweils eine Länge haben, die äquivalent zu einer Zyklusperiode des internen Taktsignals ist, eine Teilperiode an einer entsprechenden Position zu der Setup-Zeit der externen Vorrichtung auswählt; und eine Statussteuerschaltung zum Steuern eines internen Status der Datenverarbeitungsvorrichtung, so dass die Datenverarbeitungsvorrichtung einen Übergang zu einem Status der Übertragung vollziehen kann, wenn die Statussteuerschaltung das Startsignal empfängt, nachdem sie ein Übertragungs-Anforderungssignal empfangen hat, das von der Verarbeitungseinrichtung synchron zu dem externen Taktsignal ausgegeben wird; wobei eine Funktion der Bus-Schnittstelle darin besteht, ein Adresssignal, das zusammen mit dem Übertragungs-Anforderungssignal von der Verarbeitungseinrichtung ausgegeben wird, zu der externen Vorrichtung zu leiten, und eine Funktion derselben des Weiteren darin besteht, das Adresssignal, das der externen Vorrich tung zugeführt wird, zu halten, bis Datenübertragung zwischen der Verarbeitungseinrichtung und der externen Vorrichtung in dem Übertragungszustand synchron zu dem externen Taktsignal beginnt.
  2. Datenverarbeitungsvorrichtung nach Anspruch 1, wobei die Startsignal-Erzeugungsschaltung enthält: eine Flankenerfassungsschaltung zum Erfassen des Vorhandenseins einer Flanke des externen Taktsignals; einen Aufwärtszähler zum Aufwärtszählen der Anzahl von Impulsen des internen Taktsignals, nachdem der Aufwärtszähler zu der Zeit gelöscht wurde, zu der das Vorhandensein einer Flanke des externen Taktsignals erfasst wird; und eine Vergleichsschaltung zum Empfangen eines Sollwertes und zum Anstellen eines Vergleichs zwischen einem Zählwert des Aufwärtszählers und dem Sollwert, um das Startsignal zu erzeugen, wenn die Werte übereinstimmen.
  3. Datenverarbeitungsvorrichtung nach Anspruch 2, die des Weiteren ein Register zum Speichern eines zugeführten Sollwertes zum Weiterleiten zu der Vergleichsschaltung umfasst.
  4. Datenverarbeitungsvorrichtung nach Anspruch 3, wobei das Register einen Sollwert speichert, der von der Verarbeitungseinrichtung zugeführt wird.
  5. Datenverarbeitungsvorrichtung nach Anspruch 2, die des Weiteren einen externen Stift umfasst, an dem ein von außerhalb der Datenverarbeitungsvorrichtung empfangener Sollwert der Vergleichsschaltung zugeführt wird.
  6. Datenverarbeitungsvorrichtung nach Anspruch 1, wobei die Startsignal-Erzeugungsschaltung enthält: eine Flankenerfassungsschaltung zum Erfassen des Vorhandenseins einer Flanke des externen Taktsignals; und einen Abwärtszähler zum Abwärtszählen der Anzahl von Impulsen des internen Taktsignals, nachdem ein Anfangswert zu der Zeit in den Abwärtszähler geladen wurde, zu der das Vorhandensein einer Flanke des externen Taktsignals erfasst wird, und zum Erzeugen des Startsignals, wenn der Abwärtszähler Null erreicht.
  7. Datenverarbeitungsvorrichtung nach Anspruch 6, die des Weiteren ein Register zum Speichern eines zugeführten Anfangswertes zum Weiterleiten zu dem Abwärtszähler umfasst.
  8. Datenverarbeitungsvorrichtung nach Anspruch 7, wobei das Register einen von der Verarbeitungseinrichtung zugeführten Anfangswert speichert.
  9. Datenverarbeitungsvorrichtung nach Anspruch 6, die des Weiteren einen externen Stift umfasst, an dem ein von außerhalb der Datenverarbeitungsvorrichtung empfangener Anfangswert dem Abwärtszähler zugeführt wird.
  10. Datenverarbeitungsvorrichtung nach Anspruch 1, wobei die Bus-Schnittstelle enthält: ein Adressregister zum Halten eines der externen Vorrichtung zuzuführenden Adresssignals; ein Eingangsdatenregister zum Halten eines von der externen Vorrichtung zugeführten Datensignals; und ein Ausgangsdatenregister zum Halten eines der externen Vorrichtung zuzuführenden Datensignals.
  11. Datenverarbeitungsvorrichtung nach Anspruch 1, wobei die Statussteuerschaltung enthält: ein Statusregister zum Speichern eines Statussignals, das den aktuellen internen Status der Datenverarbeitungsvorrichtung anzeigt; und eine Statuserzeugungsschaltung zum Erzeugen eines neuen Statussignals zum Aktualisieren des Statusregisters auf Basis des in dem Statusregister gespeicherten Statussignals, des Übertragungs-Anforderungssignals und des Startsignals.
  12. Datenverarbeitungsvorrichtung nach Anspruch 11, die des Weiteren einen Datenzähler zum Zuführen eines Stoppsignals zu der Statuserzeugungsschaltung zum Beenden der Datenübertragung umfasst.
DE69737179T 1996-10-29 1997-10-23 Datenprozessorsynchronisation mit externem Bus Expired - Lifetime DE69737179T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP28635696 1996-10-29
JP28635696 1996-10-29

Publications (2)

Publication Number Publication Date
DE69737179D1 DE69737179D1 (de) 2007-02-15
DE69737179T2 true DE69737179T2 (de) 2007-04-19

Family

ID=17703326

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69737179T Expired - Lifetime DE69737179T2 (de) 1996-10-29 1997-10-23 Datenprozessorsynchronisation mit externem Bus

Country Status (3)

Country Link
US (1) US5940599A (de)
EP (1) EP0840237B1 (de)
DE (1) DE69737179T2 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6052754A (en) * 1998-05-14 2000-04-18 Vlsi Technology, Inc. Centrally controlled interface scheme for promoting design reusable circuit blocks
US6651199B1 (en) * 2000-06-22 2003-11-18 Xilinx, Inc. In-system programmable flash memory device with trigger circuit for generating limited duration program instruction
FR2839827B1 (fr) * 2002-05-14 2005-07-15 St Microelectronics Sa Circuit de detection de depart, circuit de detection d'arret, et circuit de detection de donnees transmises selon le protocole iic
FR2870368B1 (fr) 2004-01-27 2006-12-15 Atmel Corp Procede et dispositif pour piloter de multiples peripheriques avec des frequences d'horloge differentes dans un circuit integre
WO2006121437A1 (en) * 2005-05-10 2006-11-16 Telairity Semiconductor, Inc. Method and apparatus for clock synchronization between a processor and external devices
US20060259807A1 (en) * 2005-05-10 2006-11-16 Telairity Semiconductor, Inc. Method and apparatus for clock synchronization between a processor and external devices

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0285951A (ja) * 1988-06-08 1990-03-27 Nec Corp 入出力バス・サイクル制御方式
US5291070A (en) * 1991-01-28 1994-03-01 Advanced Micro Devices, Inc. Microprocessor synchronous timing system
US5272729A (en) * 1991-09-20 1993-12-21 International Business Machines Corporation Clock signal latency elimination network
JP2770656B2 (ja) * 1992-05-11 1998-07-02 ヤマハ株式会社 集積回路装置
US5811998A (en) * 1993-01-28 1998-09-22 Digital Equipment Corporation State machine phase lock loop
US5422914A (en) * 1993-09-07 1995-06-06 Motorola, Inc. System and method for synchronizing data communications between two devices operating at different clock frequencies
US5485602A (en) * 1993-12-27 1996-01-16 Motorola, Inc. Integrated circuit having a control signal for identifying coinciding active edges of two clock signals

Also Published As

Publication number Publication date
US5940599A (en) 1999-08-17
EP0840237A1 (de) 1998-05-06
DE69737179D1 (de) 2007-02-15
EP0840237B1 (de) 2007-01-03

Similar Documents

Publication Publication Date Title
DE3248215C2 (de)
DE69530041T2 (de) Halbleiterspeicher mit Synchronisationssteuerung zum Empfang von Daten in einem Ziel-Halbleiterspeichermodul
DE19580707C2 (de) PCI-ZU-ISA-Interrupt-Protokoll-Konverter und -Auswahlmechanismus
DE3834227C2 (de)
DE60002571T2 (de) Elastische schnittstelleanornung und verfahren dafür
DE60017775T2 (de) Architektur und system von einem generischen und seriellen port
DE10235739B4 (de) Register, das auf einem Speichermodul montiert ist sowie Verwendung eines Registers in einem Speichermodul
DE4018505C2 (de)
DE69819648T2 (de) Zweitorpuffer
DE3732798A1 (de) Datenverarbeitungssystem mit ueberlappendem zugriff auf einen globalen speicher durch eine quelle mit hoher prioritaet
EP0107026A1 (de) Speicherprogrammierbare Steuerung
DE3400723C2 (de)
DE2755616A1 (de) Asymmetrischer multiprozessor
DE10393657T5 (de) Verfahren und Vorrichtung zur Datenabfrage
DE112020004065T5 (de) Komplexe Daisy-Chain-Befehle
DE69233345T2 (de) Ein-Chip-Mikrocomputer mit zwei Zeitgeberfunktionsarten
DE19957594B4 (de) Verfahren zum Synchronisieren von threads eines Computerprogramms
DE69737179T2 (de) Datenprozessorsynchronisation mit externem Bus
DE2722775C2 (de)
DE2911909A1 (de) Verfahren und geraet zur digitalen datenverarbeitung, insbesondere von digitalen audiosignalen
DE69432693T2 (de) Schnitstelle zwischen unsynchronisierten Geräten
DE2165730A1 (de) Rechensystem
DE10060991A1 (de) Verbesserter Dreiphasen-Pulsweitenmodulation-Wellenformerzeuger
DE10110567B4 (de) Datenverarbeitungssystem mit einstellbaren Takten für unterteilte synchrone Schnittstellen
DE69910172T2 (de) Schaltkreis mit pseudo-mehrport-speicher

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: PANASONIC CORP., KADOMA, OSAKA, JP