DE4018481A1 - Mikroprozessor hold- und lock-schaltung - Google Patents
Mikroprozessor hold- und lock-schaltungInfo
- Publication number
- DE4018481A1 DE4018481A1 DE4018481A DE4018481A DE4018481A1 DE 4018481 A1 DE4018481 A1 DE 4018481A1 DE 4018481 A DE4018481 A DE 4018481A DE 4018481 A DE4018481 A DE 4018481A DE 4018481 A1 DE4018481 A1 DE 4018481A1
- Authority
- DE
- Germany
- Prior art keywords
- bus
- cpu
- hold
- active
- microprocessor
- 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.)
- Granted
Links
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/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
- G06F13/285—Halt processor DMA
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Debugging And Monitoring (AREA)
- Microcomputers (AREA)
- Multi Processors (AREA)
Description
Die vorliegende Erfindung bezieht sich auf Computer
schaltungen und insbesondere auf eine logische Schal
tung, mittels derer ein Mikroprozessor nach einem
Hold-Anforderungssignal in den Hold-Zustand versetzt
und für eine bestimmte Mindestzeitspanne bezüglich des
lokalen Bus der Zentraleinheit (CPU) verriegelt
(locked) wird.
Die Intel-Familie der Mikroprozessoren einschließlich
der 80286, 80386 und 80486 unterhalten eine gemeinsame
Schnittstelle, um anderen Vorrichtungen Zugriff zum
lokalen CPU-Bus zu ermöglichen. Diese anderen Vorrich
tungen sind im typischen Fall andere Prozessoren wie
Steuereinheiten eines Speichers mit direktem Zugriff
(DMA), welche Zugriff zum lokalen CPU-Bus nehmen
müssen.
Der Intel-Mikroprozessor hat einen HOLD-Eingangsstift
zur Aufnahme einer "Hold-Anforderung" von der Zugriff
zum CPU-Bus verlangenden Vorrichtung. Der Prozessor
reagiert auf diese Anforderung durch Freigabe oder
"Verlassen" des lokalen CPU-Bus, so daß die jeweilige
Vorrichtung vorübergehend die Steuerung des Bus
erlangt. Bei der Freigabe des Bus aktiviert der
Mikroprozessor seinen HOLDA ("Hold Bestätigungs")-Stift
und informiert die anfordernde Vorrichtung über die
Freigabe des Bus. Der Mikroprozessor spricht nicht
sofort auf das Auftreten einer Hold-Anforderung am
HOLD-Stift an, sondern wartet auf das Ende des jeweiligen
lokalen Buszyklus oder eines "atomischen" Transfers
(ein atomischer Transfer ist die Übertragung einer
bestimmten Anzahl von Codebytes). Der HOLDA-Stift
verbleibt im aktiven Zustand, bis die anfordernde
Vorrichtung die Hold-Anforderung vom HOLD-Stift
entfernt. Wird HOLD inaktiv, so deaktiviert der
Mikroprozessor HOLDA und übernimmt wieder die
Steuerung des CPU-Bus.
Auf diese Weise kann die Steuerung des lokalen Bus von
der jeweiligen Vorrichtung erst dann vorgenommen
werden, wenn der Mikroprozessor den laufenden Buszyklus
oder atomischen Transfer ausgeführt hat. Diese Zeitspanne
zwischen der Hold-Anforderung und dem Zeitpunkt, zu
welchem der Mikroprozessor die Freigabe des Bus
bestätigt, ist als Hold-Warte- oder -Schwebezustand
bekannt.
Im typischen Fall tritt der längste Hold-Warte- oder
-Schwebezustand dann ein, wenn die Hold-Anforderung zu
Beginn eines atomischen Transfers erscheint. In der
früheren Generation der Intel-Prozessoren umfaßten
die atomischen Transfers lediglich 2 oder 4 Bytes, und
der Hold-Warte- oder -Schwebezustand stellte kein
Problem dar.
Der 80486-Prozessor behandelt jedoch alle Speicherauslese
vorgänge (Code-Vorabrufe) als atomische Transfers mit
16 Bytes. Führt der Prozessor einen Code von einer
Acht-(8-)Bitvorrichtung auf dem verlängerten CPU-Bus
aus, so kann sich ein Warte- oder Schwebezustand in der
Größenordnung von acht (8) Mikrosekunden ergeben (16
Bytes×0,5 Mikrosekunden/Bytes = 8 Mikrosekunden).
Dies verursacht ein Problem in Personal-Computern, bei
denen ein Hold-Warte- oder -Schwebezustand in der
Größenordnung von 8 Mikrosekunden Fehler, wie z. B.
Diskettenüberläufe, aufgrund der langen Zeitspanne
verursacht, während der die jeweilige Vorrichtung auf
den Zugriff zum lokalen CPU-Bus warten muß.
Die unten beschriebene Erfindung ist daher eine
externe (in bezug auf den Prozessor) logische Schaltung
zur Anwendung in einem Intel 80486 oder ähnlichen
Mikroprozessor, mittels derer der Hold-Warte- oder
-Schwebezustand der internen HOLD/HOLDA-Schaltung des
80486-Prozessors verkürzt wird. Die Erfindung verwendet
eine programmierbare Array-(Anordnungs-)Logik (PAL)
zum Bestimmen des jeweiligen Zustands des Mikroprozessors
durch Kontrollieren der E/A-Stifte des Prozessors, und
die PAL erzeugt nach einer Hold-Anforderung ein Signal
(BCKOFF), welches den Mikroprozessor in einen sofortigen
Hold-Zustand versetzt. Die PAL erzeugt außerdem ein
Hold-Bestätigungssignal.
Die Erfindung sieht außerdem ein "Busverriegelungs"-Merkmal
vor, das den Mikroprozessor im aktiven Zustand bezüglich
des lokalen CPU-Bus während einer bestimmten Mindestzeit
"verriegelt". Dieses Busverriegelungsmerkmal stellt
den ausreichenden Zugriff der CPU zum lokalen CPU-Bus
sicher.
Fig. 1 ist ein Blockdiagramm eines Computersystems
mit der Mikroprozessor-Hold und Lock-Schaltung
der vorliegenden Erfindung.
Fig. 2 ist ein schematisches Diagramm der
Mikroprozessor-Hold- und Lock-Schaltung gemäß
der vorliegenden Erfindung.
Tabelle 1-A ist eine Liste logischer Gleichungen,
welche die von der PAL der vorliegenden
Erfindung ausgeführten Funktionen
definieren.
Tabelle 1-B ist eine Liste von Signaldefinitionen.
Die in Klammern angegebenen Signalnamen
sind die äquivalenten Intel-Signalnamen
gemäß der 80486-Definitionen.
Fig. 1 ist ein Blockdiagramm eines die vorliegende
Erfindung enthaltenden Computersystems. In dieser
Figur enthält das Computersystem 100 einen Prozessor
102, bevorzugt einen Intel-80486-Mikroprozessor. Ein
CPU-Bus 104 umfaßt einen Adressenbus, einen Datenbus
und einen Steuerbus, die zwischen dem Prozessor 102
und einem Puffer 106 geschaltet sind. Das System 100
enthält außerdem einen Systembus 108 zwischen Puffer
106 und einem Puffer 110. Der Systembus 108 enthält
auch einen Adressenbus, einen Datenbus und einen
Steuerbus.
Das System 100 hat eine bekannte Bussteuer- und
Zeitgeberschaltung 112, die mit den Adressen-, Daten-
und Steuerbussen des Systembus 108 verbunden ist. Der
Systembus 108 ist über eine bekannte Zwischenspeicher-
Dekodiereinrichtung 114 mit einem Eingangs/Ausgangs-
(E/A-)Bus 116 verbunden, der ebenfalls einen Adressenbus,
einen Datenbus und einen Steuerbus enthält. Der
E/A-Bus 116 ist mit mehreren planaren E/A-Vorrichtungen
verbunden (nur die erste 118 und die "nte" 120
E/A-Vorrichtung sind in Fig. 1 dargestellt). Diese
E/A-Vorrichtungen können RS232-Adapter, Druckeradapter,
Disketteadapter, Unterbrechungssteuerungen,
Festwertspeicher (ROMs) oder andere bekannte
E/A-Vorrichtungen sein.
Ein bekannter Mikrokanalbus 122 mit Adressen-, Daten-
und Steuerbussen ist über Puffer 110 mit dem Systembus
108 verbunden. Die Architektur des Mikrokanalbus wird
ausführlicher in dem IBM PS/2 Mod. 80 Technical Reference
Manual beschrieben. Gemäß der Mikrokanalarchitektur
ist eine Zentralzuteilungssteuereinrichtung (CACP) 124
mit dem Mikrokanalbus 122 und der Bussteuer- und Zeitgeber
schaltung 112 verbunden, um den Zuteilungsmechanismus
des Mikrokanalmehrfachbusses zu überwachen. Die Verbindung
der Zentralzuteilungssteuereinrichtung mit der
Bussteuer- und Zeitgeberschaltung 112 stellt einen
Teil des Mikrokanalbus 122 dar.
Mehrere Mikrokanalbuchsen 126 sind mit dem Mikrokanalbus
122 zur Aufnahme von Adapterkarten wie Speicherkarten,
Videokarten, Kommunikationskarten usw. verbunden. Eine
oder mehrere Buchsen 128 für Festplatten/Floppy Disks
sind mit dem Mikrokanalbus 122 verbunden, um ein
Anschließen einer Festplatte oder Floppy Disk (nicht
dargestellt) an den Bus 122 zu erleichtern. Eine
bekannte Steuereinheit 130 eines Speichers mit direktem
Zugriff (DMA) ist mit den Adressen-, Daten- und Steuerbussen
des Systembus 108 verbunden, damit Endgeräte wie
Festplattentreiber, Floppy Disk-Treiber und jede Art
von Zusatzvorrichtungen für Mikrokanal-DMAs direkten
Zugriff zum Speicher 134 haben können und so das
direkte Einbeziehen von Prozessor 102 in Datenüber
tragungen zwischen solchen Endgeräten und dem Speicher
verhindern. Eine bekannte Speichersteuerschaltung 132
und ein zugeordneter Speicher 134 sind ebenso mit dem
Systembus 108 verbunden, wie in Fig. 1 gezeigt.
Eine bekannte PAL-Schaltung 136 ist zwischen Mikroprozessor
102, lokalem CPU-Bus 104, einer planaren E/A-Vorrichtung
(e. g. 118), der Bussteuer- und Zeitgeberschaltung 112
und der Zentralzuteilungssteuereinrichtung 124 geschaltet.
Die in der PAL 136 programmierten Funktionen sind im
Detail in Tabelle 1-A aufgeführt, während die
Signaldefinitionen in Tabelle 1-B beschrieben sind.
Der "Hold-Anforderungs"-Signalausgang der Zentral
zuteilungssteuereinrichtung 124, der zuvor mit dem
HOLD-Eingang des Mikroprozessors in dem Computersystem
nach dem Stande der Technik verbunden war, ist nunmehr
mit PAL 136 verbunden und in den Figuren mit "HLDREQ"
bezeichnet. Der HOLD-Eingang des Mikroprozessors 102
ist in der vorliegenden Erfindung nicht abgeschlossen
(oder genauer, er wurde in den inaktiven Zustand
versetzt). An seiner Stelle erzeugt PAL 136 ein
"Backoff"-Signal BCKOFF, das mit dem BOFF-Eingang des
Mikroprozessors 102 verbunden ist. Wird der BOFF-Stift
des Mikroprozessors 102 aktiviert, gibt der 80486-
Prozessor die Steuerung des jeweiligen CPU-Bus sofort
frei, unabhängig von dem Zustand des laufenden
Prozessorbuszyklus. Es wird darauf hingewiesen, daß
die Funktion des BOFF-Eingangs des Prozessors sich von
der des HOLD-Eingangs unterscheidet. Wird der HOLD-Eingang
aktiv, wie in dem System nach dem Stande der Technik,
und führt der Prozessor zu diesem Zeitpunkt einen
atomischen Transferzyklus aus, so wartet der Prozessor
mit dem Freigeben des Bus, bis dieser atomische
Transfer ausgeführt ist.
Auf ähnliche Weise ist der "Hold-Bestätigung" (oder
spezieller HOLDA-)Ausgang des Mikroprozessors 102, der
zuvor mit der Zentralzuteilungssteuereinrichtung 124
in dem Computersystem nach dem Stand der Technik
verbunden war, in der vorliegenden Erfindung nicht
abgeschlossen. An seiner Stelle erzeugt PAL 136 ein
HLDACK-Signal, welches zur Zentralzuteilungssteuerein
richtung 124 und der Bussteuer- und Zeitgeberschaltung
112 zurückgeschaltet ist.
Eine Busverriegelungszähler/Zeitgeberschaltung 138 ist
mit der PAL 136 verbunden. Das Busverriegelungssignal
gibt eine Mindestzeitspanne an, während der eine
Prozessor, der sich nicht im Ruhezustand befindet, an
den lokalen CPU-Bus angeschlossen ist.
Weitere Einzelheiten der Verbindung zwischen PAL 136
und der Busverriegelungszähler/Zeitgeberschaltung 138
mit dem Computersystem 100 sind in dem schematischen
Diagramm der Fig. 2 dargestellt. In dieser Figur ist
die Busverriegelungszähler/Zeitgeberschaltung 138
bevorzugt eine integrierte 74F393-Zählschaltung,
obgleich andere bekannte Zählschaltungen ebenso
verwendet werden können. Der Takteingang (nur erste
Sektion) der Zähler/Zeitgeberschaltung 138 ist mit dem
CPU-Taktgeber verbunden. Ist LOCKBUS inaktiv (High),
so werden die Zähler frei gehalten und sind daher
wirksam deaktiviert. Ist LOCKBUS aktiv (Low), so sind
die Zähler aktiviert, und das TOC-Signal wird 64
CPU-Taktperioden später High. (TOC kann auch mit
anderen Ausgängen der Zähler/Zeitgeberschaltung 138
verbunden sein; ist es z. B. mit dem QB-Ausgang der
zweiten Hälfte der Zähler/Zeitgeberschaltung
verbunden, so ist TOC 32 CPU-Taktperioden nach
Aktivierung von LOCKBUS High.)
In Tabelle 1-A ergibt eine Prüfung der Gleichung für
LOCKBUS, daß, wenn LOCKEN High ist, die erste Gruppe
aus drei Termini LOCKBUS aktiv (Low) macht, und zwar
unmittelbar, nachdem HLDREQ inaktiv (Low) wird (wenn
HLDREQ inaktiv Low wird, bleibt BCKOFF direkt
anschließend immer noch aktiv Low). Die zweite Gruppe
aus drei Termini hält LOCKBUS aktiv (Low), bis entweder
eine bestimmte Zeitspanne vorüber ist (z. B. TOC wird
High), oder bis die CPU während zwei aufeinander
folgender Takteinheiten (d. h. IDLE wird Low) im
Ruhezustand war.
Der LOCKBUS-Terminus wird dann in der BCKOFF-Gleichung
verwendet, um zu verhindern, daß ein Prozessor-Hold-Zustand
eintritt, solange LOCKBUS aktiv bleibt. Eine rasche
Prüfung der Gleichung für BCKOFF zeigt, daß der
LOCKBUS-Terminus in jeder der ersten drei Termini-Gruppen
erscheint. BCKOFF kann jedoch nur aktiv (Low) werden,
wenn alle Bedingungen in jeder der ersten drei
Termini-Gruppen erfüllt sind (die vierte Terminusgruppe
macht BCKOFF nur wieder inaktiv, wenn HLDREQ inaktiv
wird). Folglich kann BCKOFF nicht aktiv (Low) werden,
solange LOCKBUS aktiv (Low) ist.
Solange LOCKBUS daher aktiv (Low) ist, steuert der
Prozessor 102 den Bus, oder mit anderen Worten, der
Prozessor ist an den Bus angeschlossen bzw. mit dem
Bus "verriegelt".
Bei der BCKOFF-Gleichung macht die erste Gruppe aus
sieben Termini BCKOFF aktiv (Low) am Ende jedes nicht
pufferbaren Buszyklus. Diese Termini-Gruppe ist daher
für das Trennen der obengenannten langsamen atomischen
Transfers aus 16 Bytes verantwortlich (da diese
langsamen Transfers von einem nicht pufferbaren
Speicher sind). Diese Termini-Gruppe macht auch BCKOFF
aktiv am Ende der normalen E/A-Buszyklen. Da diese
erste Termini-Gruppe auf das Ende des laufenden
Buszyklus wartet (bei dieser ersten Termini-Gruppe muß
CPURDY aktiv Low sein, um BCKOFF aktiv zu machen),
hält sie einzelne Bustransfers als atomische Einheiten
aufrecht.
Die zweite Gruppe aus sieben Termini in der
BCKOFF-Gleichung mach BCKOFF aktiv (Low) am Ende
pufferbarer Buszyklen. In dem bevorzugten
Ausführungsbeispiel muß ein pufferbarer Speicher mit
Datenbreiten von 32 Bits definiert werden. Es ist
daher sicher, daß diese Transfers nur vier (4) externe
Buszyklen bis zum Abschluß brauchen, oder ca. zwei
Mikrosekunden (4 Transfers×0,5 Mikrosekunden/Transfers
= 2 Mikrosekunden).
Die dritte Termini-Gruppe in der BCKOFF-Gleichung
macht BCKOFF aktiv, wenn der CPU-Bus zu diesem
Zeitpunkt inaktiv ist. Die vierte Termini-Gruppe hält
BCKOFF aktiv, bis HLDREQ wieder inaktiv geworden ist.
In der Gleichung für HLDACK (Hold Bestätigen) macht
die erste Gruppe aus drei Termini HLDACK aktiv (High),
und zwar eine Taktperiode, nachdem BCKOFF aktiv (Low)
geworden ist, und die zweite Gruppe aus zwei Termini
hält HLDACK aktiv, bis HLDREQ wieder inaktiv geworden
ist.
PAL-Gleichungen | |
!BCKOFF := | |
(BCKOFF & HLDREQ & !BUSCYC & CACHABLE & !CPURDY & CPULOCK & LOCKBUS) or (BCKOFF & HLDREQ & !CACHABLE & !BRSTLAST & !BRSTRDY & CPULOCK & LOCKBUS) or (BCKOFF & HLDREQ & BUSCYC & ADSTS & CPULOCK & LOCKBUS) or (!BCKOFF & HLDREQ) | |
HLDACK := | (!BCKOFF & HLDREQ & !HLDACK) or (HLDACK & HLDREQ) |
!LOCKBUS := | (!HLDREQ & !BCKOFF & LOCKEN) or (!LOCKBUS & !TOC & IDLE) |
!IDLESAMP := | (IDLESAMP & ADSTS & BUSCYC & !LOCKBUS & TIC & !TICDLY) or (IDLESAMP & ADSTS & BUSCYC & !LOCKBUS & !TIC & TICDLY) or (!IDLESAMP & ADSTS & BUSCYC & !LOCKBUS) |
!IDLE := | (!IDLESAMP & ADSTS & BUSCYC & !LOCKBUS & TIC & !TICDLY) or (!IDLESAMP & ADSTS & BUSCYC & !LOCKBUS & !TIC & TICDLY) |
!TICDLY := | !TIC |
!BUSCYC := | (!ADSTS & !RESET & BCKOFF) or (!BUSCYC & CPURDY & BRSTRDY & !RESET) or (!BUSCYC & CPURDY & BRSTLAST & !RESET) |
!CACHABLE := | (!BUSCYC & !W/R & M/IO & !PCD & !KEN & !RESET & CPULOCK & CACHABLE) or (!CACHABLE & CPURDY & BRSTRDY & !KEN & !RESET) or (!CACHABLE & CPURDY & BRSTLAST & !KEN & !RESET) |
!CPURDY = | !BUSCYCDLY & !BUSRDY & CACHABLE & !BUSCYC |
!BRSTRDY = | !BUSCYCDLY & BUSRDY & !CACHABLE |
!BUSCYCDLY := | !BUSCYC |
!KEN = | KENA & !ENCACHE & !BUSCYC |
!KENA = | (M/IO & !A31 & !A26 & !A25 & !A24 & !A23 & !A22 & !A21 & !A20 & A19 & !A18 & A17) or (M/IO & !A31 & !A26 & !A25 & !A24 & !A23 & !A22 & !A21 & !A20 & A19 & A18 & !A17) or (M/IO & A31) or (M/IO & !ROMEN & !A31 & !A26 & !A25 & !A24 & !A23 & !A22 & !A21 & !A20 & A19 & A18 & A17) or (!M/IO) or (M/IO & !A31 & !A26 & !A25 & !A24 & A23 & CENO) |
Für die unten aufgeführten Symbole gelten in
Beschreibung und Ansprüchen folgende Definitionen:
Symbol | |
Definition | |
! | |
logisches NICHT, d. h. logische Inversion | |
& | logisches UND |
or | logisches ODER |
:= | "synchrone Gleichung". Dieses Symbol zeigt an, daß der Terminus auf der linken Seite der Gleichung auf eine Flanke des CPU-Taktes getaktet ist. Mit anderen Worten: während einer gegebenen CPU-Taktperiode ist der logische Zustand des Terminus auf der linken Seite der Gleichung gleich dem Ausdruck auf der rechten Seite der Gleichung, wenn die Termini im rechten Ausdruck an (oder genauer unmittelbar vor) der Taktflanke am Anfang der Taktperiode ausgewertet werden. |
= | "asynchrone Gleichung". Dieses Symbol zeigt seine bekannte Bedeutung an, d. h., daß der Terminus auf der linken Seite der Gleichung gleich dem Ausdruck auf der rechten Seite der Gleichung ist. Es wird keine Taktgebung angezeigt. |
Eine Definition in Klammern am Beginn eines Absatzes
ist eine Definition eines Intel-Prozessorstifts und
zeigt an, daß das entsprechende Signal mit diesem
Prozessorstift verbunden ist (Signal ADSTS z. B. ist
mit dem Prozessorstift ADS verbunden).
ADSTS | |
(ADS) "Adressenstatus". Aktiv Low. Dieser CPU-Ausgang zeigt an, daß die Adressen- und Buszyklusdefinitions- (z. B. W/R, M/IO etc.-)Signale gültig sind. | |
Axx | (Axx) "Adresse xx". CPU-Adressenzeilennummer "xx". |
BCKOFF | (BOFF) Aktiv Low. Dieser PAL-Ausgang/CPU-Eingang aktiviert die CPU zum unmittelbaren Freigeben der Bussteuerung, d. h. zum "Verlassen" des Bus. |
BRSTLAST | (BLAST) "Burst Last". Aktiv Low. Dieser CPU-Ausgang zeigt an, daß der Mehrfach(Burst)-Buszyklus (mehrere Zyklen andauernder Datentransfer) abgeschlossen ist, wenn der nächste BRSTRDY-Eingang aktiv ist. |
BRSTRDY | (BRDY) "Burst Ready". Aktiv Low. Dieser PAL-Ausgang/CPU-Eingang zeigt an, daß das externe System gültige Daten nach Eingang einer Leseanforderung in den Bus gestellt oder Daten vom Bus nach Eingang einer Schreibanforderung von der CPU akzeptiert hat. Dieses Signal erfüllt während eines Mehrfachzyklus dieselbe Funktion wie CPURDY während eines Nichtmehrfachzyklus. |
BUSCYC | "Buszyklus". Aktiv Low. Dieses Signal wird von der PAL für eigene interne Zwecke erzeugt. BUSCYC zeigt an, daß die CPU zu diesem Zeitpunkt einen externen Buszyklus ausführt. |
BUSCYCDLY | Das um eine CPU-Taktperiode verzögerte BUSCYC-Signal. |
BUSRDY | Dieser PAL-Eingang vom externen System zeigt an, daß gültige Daten nach Eingang einer Leseanforderung in den Bus gestellt oder Daten nach Eingang einer Schreibanforderung akzeptiert wurden. BUSRDY unterscheidet nicht zwischen Mehrfach- bzw. Nichtmehrfachdatentransfers. BUSRDY ist im typischen Fall eine der Steuerleitungen des CPU-Bus. |
CACHABLE | Aktiv Low. CACHABLE wird von der PAL für eigene interne Zwecke erzeugt und zeigt an, daß ein pufferbarer Speicherlesezyklus zu diesem Zeitpunkt von der CPU ausgeführt wird. |
CENO | Dieser PAL-Eingang von einer planaren E/A-Vorrichtung gibt das Puffern von Adressenpositionen in der Größenordnung von 8 bis 16 Megabytes frei, wenn aktiv (Low). |
CPULOCK | (LOCK) Aktiv LOW. Dieser CPU-Ausgang zeigt an, daß die CPU einen Lese-Modifizierungs-Schreibzyklus ausführt und der Bus von der CPU nicht freizugeben ist, wenn CPULOCK aktiv ist. |
CPURDY | (RDY) "CPU Bereit". Aktiv Low. Dieser PAL-Ausgang/CPU-Eingang zeigt an, daß das externe System gültige Daten nach Eingang einer Leseanforderung in den Bus gestellt hat, oder daß das externe System nach Eingang einer Schreibanforderung von der CPU Daten vom Bus akzeptiert hat. Dieses Signal führt während eines Nichtmehrfachzyklus dieselbe Funktion aus wie BRSTRDY während eines Mehrfachzyklus. |
ENCACHE | Dieser PAL-Eingang von einer planaren E/A-Vorrichtung sperrt bedingungslos das Puffern bei High. |
HLDACK | "Hold-Bestätigen". Aktiv High. Dieser PAL-Ausgang zeigt externen Systemen an, daß die CPU den Bus freigegeben hat. |
HLDREQ | "Hold-Anforderung". Aktiv High. Dieses PAL-Eingangssignal wird durch ein externes System (z. B. einen anderen Busmaster) aktiviert, wenn dieses externe System die Freigabe der Steuerung des Bus durch die CPU benötigt. |
IDLE | Aktiv Low. Dieses Signal wird von der PAL intern verwendet und ist aktiv, wenn sich die CPU während zwei aufeinanderfolgenden Ruhezustandsprüfungen im Ruhezustand befunden hat. |
IDLESAMP | "Ruhezustand Prüfen". Aktiv Low. Die PAL prüft den Status der CPU an den Vorder- und Hinterflanken des TIC. Ist die CPU im Ruhezustand und bezüglich des Bus gesperrt, so wird IDLESAMP aktiviert. |
KEN | (KEN) "Pufferfreigabe". Aktiv Low. Ist dieser PAL-Ausgang/CPU-Eingang aktiv und kann der laufende CPU-Zyklus gepuffert werden, so wird der laufende Zyklus in einen Puffer-Füllzyklus umgewandelt. |
KENA | "Alternierende Pufferfreigabe". Teil des KEN-Signals. |
LOCKBUS | Aktiv Low. Dieses Signal wird von der PAL und dem Busverriegelungszähler/Zeitgeber erzeugt. Ist die CPU nicht im Ruhezustand, so gibt LOCKBUS eine Mindestzeitspanne an, während der die CPU an den Bus angeschlossen bzw. mit diesem verriegelt ist. |
LOCKEN | "Busverriegelungsfreigabe". Dieses PAL-Eingangssignal kommt von einer externen planaren E/A-Vorrichtung, die programmgesteuert betrieben werden kann. Wenn aktiv (High), gibt dieses Signal die Busverriegelungsfunktion frei. |
M/IO | "Speicher/Eingang-Ausgang". Dieses Buszyklus-Definitionssignal ist ein CPU-Ausgang, der bei High einen Speicherzyklus und bei Low einen Eingangs/Ausgangs-Zyklus anzeigt. |
PCD | (PCD) "Seitenpuffer Sperren". Aktiv High. Dieser CPU-Ausgang zeigt an, daß die laufende Adresse nicht intern pufferbar ist. |
RESET | Aktiv High. Dieser CPU-Eingang zwingt die CPU, die Programmausführung an einer bestimmten Adresse und in einem bekannten Status aufzunehmen. |
ROMEN | Dieser PAL-Eingang von einer planaren E/A-Vorrichtung aktiviert das Puffern von ROM-Adressen innerhalb der Spanne von E0000-FFFFF, wenn aktiv (High). |
TIC | Busverriegelungszähler/Zeitgeber-Ausgangssignal, das jedesmal dann freigegeben wird, wenn LOCKBUS aktiv (Low) ist. Seine Frequenz ist gleich der CPU-Taktfrequenz geteilt durch 16. |
TICDLY | "TIC Verzögert". Das TIC-Signal verzögert um eine CPU-Taktperiode. |
TOC | Dieser Ausgang des Busverriegelungszählers/Zeitgebers wird für eine bestimmte Anzahl von Taktzyklen (z. B. 32 oder 64) nach Freigabe des Busverriegelungszählers High. Dieses Signal wird verwendet, um das Busverriegelungsmerkmal zeitlich zu steuern. |
W/R | (W/R) "Schreiben/Lesen". Dieses Buszyklus-Definitionssignal ist ein CPU-Ausgang, der bei Hoch einen Schreibzyklus und bei Low einen Lesezyklus anzeigt. |
Claims (3)
1. Logische Schaltung für einen Mikroprozessor,
welche folgendes in Kombination enthält:
einen Hold-Ausgang und einen Hold-Anforderungseingang;
und eine Busverriegelung, um den Ausgang während einer bestimmten Zeitspanne inaktiv zu halten, und zwar nach Eingang einer Veränderung des logischen Status der Hold-Anforderung vom aktiven in den inaktiven Zustand.
einen Hold-Ausgang und einen Hold-Anforderungseingang;
und eine Busverriegelung, um den Ausgang während einer bestimmten Zeitspanne inaktiv zu halten, und zwar nach Eingang einer Veränderung des logischen Status der Hold-Anforderung vom aktiven in den inaktiven Zustand.
2. Logische Schaltung nach Anspruch 1, bei welcher
die Busverriegelung den Ausgang nur dann während
einer bestimmten Zeitspanne inaktiv hält, wenn
sich der Mikroprozessor nicht im Ruhezustand
befindet.
3. Logische Schaltung nach Anspruch 1 oder 2,
weiterhin folgendes umfassend:
einen Backoff-Ausgang, um den Mikroprozessor in einen Hold-Status zu bringen.
einen Backoff-Ausgang, um den Mikroprozessor in einen Hold-Status zu bringen.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/367,828 US5170481A (en) | 1989-06-19 | 1989-06-19 | Microprocessor hold and lock circuitry |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4018481A1 true DE4018481A1 (de) | 1990-12-20 |
DE4018481C2 DE4018481C2 (de) | 1991-08-08 |
Family
ID=23448790
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4018481A Granted DE4018481A1 (de) | 1989-06-19 | 1990-06-09 | Mikroprozessor hold- und lock-schaltung |
DE69030688T Expired - Fee Related DE69030688T2 (de) | 1989-06-19 | 1990-06-11 | Halte- und Verriegelungsschaltung für Mikroprozessor |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69030688T Expired - Fee Related DE69030688T2 (de) | 1989-06-19 | 1990-06-11 | Halte- und Verriegelungsschaltung für Mikroprozessor |
Country Status (10)
Country | Link |
---|---|
US (1) | US5170481A (de) |
EP (1) | EP0404413B1 (de) |
JP (1) | JPH0664562B2 (de) |
BR (1) | BR9002876A (de) |
CS (1) | CS304290A2 (de) |
DE (2) | DE4018481A1 (de) |
HU (1) | HUT57923A (de) |
PE (1) | PE8691A1 (de) |
PL (1) | PL164259B1 (de) |
RU (1) | RU2067314C1 (de) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IT1241318B (it) * | 1990-11-19 | 1994-01-10 | Olivetti & Co Spa | Dispositivo di indirizzamento di memoria |
JPH04271453A (ja) * | 1991-02-27 | 1992-09-28 | Toshiba Corp | 複合電子計算機 |
TW234178B (de) * | 1991-05-28 | 1994-11-11 | Ibm | |
CA2067599A1 (en) * | 1991-06-10 | 1992-12-11 | Bruce Alan Smith | Personal computer with riser connector for alternate master |
US5325535A (en) * | 1991-06-21 | 1994-06-28 | Compaq Computer Corp. | Lock signal extension and interruption apparatus |
US5430860A (en) * | 1991-09-17 | 1995-07-04 | International Business Machines Inc. | Mechanism for efficiently releasing memory lock, after allowing completion of current atomic sequence |
EP0537899B1 (de) * | 1991-09-27 | 1999-12-15 | Sun Microsystems, Inc. | Verklemmungserkennung und Maskierung enthaltende Busarbitrierungsarchitektur |
US5239631A (en) * | 1991-10-15 | 1993-08-24 | International Business Machines Corporation | Cpu bus allocation control |
US5473761A (en) * | 1991-12-17 | 1995-12-05 | Dell Usa, L.P. | Controller for receiving transfer requests for noncontiguous sectors and reading those sectors as a continuous block by interspersing no operation requests between transfer requests |
US5577214A (en) * | 1992-05-18 | 1996-11-19 | Opti, Inc. | Programmable hold delay |
JPH0660015A (ja) * | 1992-06-08 | 1994-03-04 | Mitsubishi Electric Corp | 情報処理装置 |
US5553310A (en) * | 1992-10-02 | 1996-09-03 | Compaq Computer Corporation | Split transactions and pipelined arbitration of microprocessors in multiprocessing computer systems |
US5553248A (en) * | 1992-10-02 | 1996-09-03 | Compaq Computer Corporation | System for awarding the highest priority to a microprocessor releasing a system bus after aborting a locked cycle upon detecting a locked retry signal |
US5426740A (en) * | 1994-01-14 | 1995-06-20 | Ast Research, Inc. | Signaling protocol for concurrent bus access in a multiprocessor system |
US5533204A (en) * | 1994-04-18 | 1996-07-02 | Compaq Computer Corporation | Split transaction protocol for the peripheral component interconnect bus |
US5758170A (en) * | 1995-03-20 | 1998-05-26 | Dell Usa, L.P. | System for preventing corruption during CPU reset |
US5892954A (en) * | 1995-07-07 | 1999-04-06 | Sun Microsystems, Inc. | Method and apparatus for refreshing file locks to minimize conflicting accesses to data files |
JPH10134008A (ja) * | 1996-11-05 | 1998-05-22 | Mitsubishi Electric Corp | 半導体装置およびコンピュータシステム |
US6633938B1 (en) * | 2000-10-06 | 2003-10-14 | Broadcom Corporation | Independent reset of arbiters and agents to allow for delayed agent reset |
KR100767335B1 (ko) * | 2006-12-13 | 2007-10-17 | 이노필터 주식회사 | 도로 매립형 발광표지장치 |
US9043401B2 (en) * | 2009-10-08 | 2015-05-26 | Ebay Inc. | Systems and methods to process a request received at an application program interface |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4729090A (en) * | 1983-07-13 | 1988-03-01 | Nec Corporation | DMA system employing plural bus request and grant signals for improving bus data transfer speed |
US4807112A (en) * | 1984-10-11 | 1989-02-21 | Nec Corporation | Microcomputer with a bus accessible from an external apparatus |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4547849A (en) * | 1981-12-09 | 1985-10-15 | Glenn Louie | Interface between a microprocessor and a coprocessor |
US4719567A (en) * | 1982-04-29 | 1988-01-12 | Motorola, Inc. | Method and apparatus for limiting bus utilization |
US4611297A (en) * | 1983-08-18 | 1986-09-09 | Pitney Bowes Inc. | Bus grant circuit |
US4779089A (en) * | 1985-11-27 | 1988-10-18 | Tektronix, Inc. | Bus arbitration controller |
US4787032A (en) * | 1986-09-08 | 1988-11-22 | Compaq Computer Corporation | Priority arbitration circuit for processor access |
US4987529A (en) * | 1988-08-11 | 1991-01-22 | Ast Research, Inc. | Shared memory bus system for arbitrating access control among contending memory refresh circuits, peripheral controllers, and bus masters |
-
1989
- 1989-06-19 US US07/367,828 patent/US5170481A/en not_active Expired - Fee Related
-
1990
- 1990-06-09 DE DE4018481A patent/DE4018481A1/de active Granted
- 1990-06-11 DE DE69030688T patent/DE69030688T2/de not_active Expired - Fee Related
- 1990-06-11 EP EP90306342A patent/EP0404413B1/de not_active Expired - Lifetime
- 1990-06-18 HU HU903891A patent/HUT57923A/hu unknown
- 1990-06-18 RU SU904830111A patent/RU2067314C1/ru active
- 1990-06-18 PE PE1990170912A patent/PE8691A1/es unknown
- 1990-06-18 BR BR909002876A patent/BR9002876A/pt not_active Application Discontinuation
- 1990-06-19 CS CS903042A patent/CS304290A2/cs unknown
- 1990-06-19 JP JP2158857A patent/JPH0664562B2/ja not_active Expired - Lifetime
- 1990-06-19 PL PL90285685A patent/PL164259B1/pl unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4729090A (en) * | 1983-07-13 | 1988-03-01 | Nec Corporation | DMA system employing plural bus request and grant signals for improving bus data transfer speed |
US4807112A (en) * | 1984-10-11 | 1989-02-21 | Nec Corporation | Microcomputer with a bus accessible from an external apparatus |
Also Published As
Publication number | Publication date |
---|---|
HU903891D0 (en) | 1990-11-28 |
EP0404413A3 (de) | 1992-04-01 |
US5170481A (en) | 1992-12-08 |
PE8691A1 (es) | 1991-03-22 |
PL164259B1 (pl) | 1994-07-29 |
JPH0664562B2 (ja) | 1994-08-22 |
HUT57923A (en) | 1991-12-30 |
DE69030688T2 (de) | 1997-11-13 |
CS304290A2 (en) | 1991-11-12 |
DE4018481C2 (de) | 1991-08-08 |
DE69030688D1 (de) | 1997-06-19 |
JPH0330045A (ja) | 1991-02-08 |
RU2067314C1 (ru) | 1996-09-27 |
PL285685A1 (en) | 1991-03-11 |
EP0404413B1 (de) | 1997-05-14 |
BR9002876A (pt) | 1991-08-20 |
EP0404413A2 (de) | 1990-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4018481C2 (de) | ||
DE69032481T2 (de) | Buszugriff für Digitalrechnersystem | |
DE68922784T2 (de) | Mehrfachbus-Mikrorechnersystem mit Busarbitrierung. | |
DE19580707C2 (de) | PCI-ZU-ISA-Interrupt-Protokoll-Konverter und -Auswahlmechanismus | |
DE3914265C2 (de) | ||
DE69021594T2 (de) | Hochgeschwindigkeitsdatenübertragung auf einem Rechnersystembus. | |
DE69906156T2 (de) | Mikroprozessorvorrichtung mit programmierbaren wartezuständen | |
DE69834739T2 (de) | Ausgleichen von daten die zwischen verschiedenen leitern fliessen die auf unterschiedlichen frequenzen operieren | |
EP0929041B1 (de) | Verfahren und Anordnung zum Betreiben eines Bussystems | |
DE69018100T2 (de) | Datenübertragung über Busadressleitungen. | |
DE69825915T2 (de) | Verfahren und vorrichtung zur umschaltung zwischen quellen-synchron-takt/- und gemeinsam-takt-datenübertragungs-modi in einem mehragent-übertragungs-system | |
DE69219848T2 (de) | Verfahren zur Behandlung von Datenübertragungen in einen Computersystem mit einem Zweibusbau | |
DE8804104U1 (de) | Digitalrechner mit programmierbarer DMA-Steuerung | |
DE68920929T2 (de) | Zeitgeberkanal mit mehreren Zeitgeberreferenzmerkmalen. | |
DE69127771T2 (de) | Datenübertragungssteuerungsvorrichtung | |
DE3732798A1 (de) | Datenverarbeitungssystem mit ueberlappendem zugriff auf einen globalen speicher durch eine quelle mit hoher prioritaet | |
DE3049774C2 (de) | ||
DE60026068T2 (de) | System für externe transaktionen mit dynamischen prioritäten | |
DE60036923T2 (de) | Dram-auffrischungsüberwachung und taktgenaue verteilte busarbitrierung in einer multiprozessorumgebung | |
DE69119147T2 (de) | Erweiterungskarte mit mehreren Geschwindigkeiten | |
DE4328909C2 (de) | Informationsverarbeitungssystem, Informationsprozessor in einem Informationsverarbeitungssystem und Interrupt-Controller in einem Informationsverarbeitungssystem | |
DE10061770B4 (de) | Zugriffsregelung für Steuerchipsätzen bei Bustransaktion | |
DE10056152B4 (de) | Verfahren zur Durchführung von Busarbitration zwischen Steuerchips eines Chipsatzes mit preemptiver Fähigkeit | |
DE3850212T2 (de) | Vielfach-CPU-System mit gemeinschaftlichem Speicher. | |
DE69026336T2 (de) | Bevorrechtigungsschaltung für ein Rechnersystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |