DE4018481A1 - Mikroprozessor hold- und lock-schaltung - Google Patents

Mikroprozessor hold- und lock-schaltung

Info

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
Application number
DE4018481A
Other languages
English (en)
Other versions
DE4018481C2 (de
Inventor
Ralph Murray Begun
Patrick Maurice Bland
Mark Edward Dean
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE4018481A1 publication Critical patent/DE4018481A1/de
Application granted granted Critical
Publication of DE4018481C2 publication Critical patent/DE4018481C2/de
Granted 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • G06F13/285Halt processor DMA
    • 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/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling 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)
  • Multi Processors (AREA)
  • Debugging And Monitoring (AREA)
  • Microcomputers (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)
Symboldefinitionen
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.
Tabelle 1-B Signaldefinitionen
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.
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.
DE4018481A 1989-06-19 1990-06-09 Mikroprozessor hold- und lock-schaltung Granted DE4018481A1 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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
PL164259B1 (pl) 1994-07-29
EP0404413A2 (de) 1990-12-27
DE4018481C2 (de) 1991-08-08
JPH0330045A (ja) 1991-02-08
EP0404413B1 (de) 1997-05-14
BR9002876A (pt) 1991-08-20
RU2067314C1 (ru) 1996-09-27
PE8691A1 (es) 1991-03-22
HUT57923A (en) 1991-12-30
EP0404413A3 (de) 1992-04-01
US5170481A (en) 1992-12-08
CS304290A2 (en) 1991-11-12
PL285685A1 (en) 1991-03-11
DE69030688D1 (de) 1997-06-19
DE69030688T2 (de) 1997-11-13
JPH0664562B2 (ja) 1994-08-22

Similar Documents

Publication Publication Date Title
DE4018481C2 (de)
DE19580707C2 (de) PCI-ZU-ISA-Interrupt-Protokoll-Konverter und -Auswahlmechanismus
DE3914265C2 (de)
DE2856483C2 (de)
DE3909948C2 (de)
DE69834739T2 (de) Ausgleichen von daten die zwischen verschiedenen leitern fliessen die auf unterschiedlichen frequenzen operieren
DE69825915T2 (de) Verfahren und vorrichtung zur umschaltung zwischen quellen-synchron-takt/- und gemeinsam-takt-datenübertragungs-modi in einem mehragent-übertragungs-system
DE3810231C2 (de)
DE602004012563T2 (de) Mehrfädiges DMA
DE3704056A1 (de) Peripherer dma-controller fuer datenerfassungssysteme
DE19983506B3 (de) Verfahren zum Betreiben eines zeitlich gemultiplexten Adress- und Datenbusses in einem Computersystem und Busschnittstelle hierfür
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
DE4035837A1 (de) Bus-hauptschnittstellenschaltung mit transparenter unterbrechung einer datenuebertragungsoperation
DE602004010399T2 (de) Neuadressierbare virtuelle dma-steuer und statusregister
DE19900251B4 (de) Vorrichtung und Verfahren zum Steuern eines vielseitigen USB-Endpunktkanals
DE3911721C2 (de)
DE102014103347A1 (de) Bedingte Verkettungsglieder für Direct-Memory-Access-Controller
DE4328909C2 (de) Informationsverarbeitungssystem, Informationsprozessor in einem Informationsverarbeitungssystem und Interrupt-Controller in einem Informationsverarbeitungssystem
DE10061770B4 (de) Zugriffsregelung für Steuerchipsätzen bei Bustransaktion
DE102009001898A1 (de) Schaltungsanordnungen und Verfahren zur Steuerung eines Datenaustauschs in einer Schaltungsanordnung
DE10056152B4 (de) Verfahren zur Durchführung von Busarbitration zwischen Steuerchips eines Chipsatzes mit preemptiver Fähigkeit
DE69729598T2 (de) Verfahren und Vorrichtung zur Adressenparitätsprüfung für mehrfache überlappende Addressbereiche auf einem gemeinsamen Bus
DE10306285A1 (de) Mikrocomputersystem

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