DE3835297A1 - Adressenbus-steuereinrichtung - Google Patents
Adressenbus-steuereinrichtungInfo
- Publication number
- DE3835297A1 DE3835297A1 DE3835297A DE3835297A DE3835297A1 DE 3835297 A1 DE3835297 A1 DE 3835297A1 DE 3835297 A DE3835297 A DE 3835297A DE 3835297 A DE3835297 A DE 3835297A DE 3835297 A1 DE3835297 A1 DE 3835297A1
- Authority
- DE
- Germany
- Prior art keywords
- bus
- address
- address data
- data
- access
- 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/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4009—Coupling between buses with data restructuring
- G06F13/4018—Coupling between buses with data restructuring with data-width conversion
Description
Die Erfindung betrifft die Steuerung von Bussen in Datenverarbeitungssystemen,
insbesondere eine Adressenbus-
Steuereinrichtung, die den Zugriff auf Einheiten erleichtert,
welche Adreßdaten verschiedener Breite oder Länge
benutzen.
In einem einen Mikroprozessor als Zentraleinheit verwendenden
Datenverarbeitungssystem wird häufig ein Mehrfachbussystem
verwendet, das einen den Mikroprozessor und
einen Speicher verbindenden Bus (Speicherbus), einen die
Eingabe/Ausgabe-Einheit verbindenden Bus (Systembus) und
zwischen diesen Bussen angeordnete Treibergates oder
Treiberpuffer aufweist. Zum Beispiel ist aus JP 60-2 35 268-A
ein System bekannt, das einen mit der CPU verbundenen internen
Bus und einen mit externen Eingabe/Ausgabe-Einheiten
verbundenen externen Bus und diese Busse verbindende
Adressenbus-Puffer und Datenbus-Puffer enthält. Beide
Busse weisen dieselbe Adressenbusbreite, d. h. dieselbe
Anzahl von über den Adressenbus übertragenen Adressenbits
auf. Das höchstwertige Bit der von der CPU auf den internen
Bus ausgegebenen Adressendaten zeigt an, auf welchen
Bus zugegriffen werden soll. Zum Setzen von Banken sind
Adressenschalter oder Adressenregister vorgesehen, die
ein das höchstwertige Adressenbit, das als Information
für die Buswahl verwendet wird, ersetzendes Adressenbit
auf den externen Bus des Adressenbusses ausgeben, wodurch
der von den Bussen aus zugreifbare Adressenraum erweitert
wird.
Mit der Zunahme der Wortlänge des Mikroprozessors und der
Verbesserung seiner Leistung wird die Breite (Anzahl der
Bits) der Adreßdaten, d. h. die Größe des verarbeiteten
Adreßraumes, erweitert. Seit kurzem steht ein Mikroprozessor
zur Verfügung, der 32-Bit-Adressen und einen Adreßraum von
4 GB zu verarbeiten in der Lage ist. Ein solcher erweiterter
Adreßraum ist für gewöhnliche Eingabe/Ausgabe-Einheiten
zu groß. Daraus ergibt sich der Wunsch nach einer Verkleinerung
der Adressenbusbreite des Systembusses, mit dem
die Eingabe/Ausgabe-Einheiten verbunden sind, so daß die
Adressenbusbreite des Systembusses kleiner ist als die
Adressenbusbreite des Speicherbusses, mit dem die CPU und
der Speicher verbunden sind; die verkleinerte Adressenbusbreite
des Systembusses kann beispielsweise 28 Bits (256 MB)
betragen.
Unter den mit dem Systembus verbundenen Eingabe/Ausgabe-
Einheiten gibt es solche, die für herkömmliche Mikroprozessoren
mit verschieden großen Adreßräumen entwickelt worden
sind, so daß auch solche Eingabe/Ausgabe-Einheiten zu berücksichtigen
sind, die Adressendaten mit noch kleinerer
Breite als die obenerwähnte reduzierte Adressenbusbreite
des Systembusses verwenden.
In einem System, in dem solche, unterschiedliche Adressendatenbreiten
verwendende Einheiten mit zwei Bussen, die
wiederum Adressenbusse von unterschiedlicher Breite besitzen,
verbunden werden, entsteht das Problem der Fehlanpassung
der Adressendatenbreiten. Im allgemeinen ist es nicht
mehr möglich, bei einer Fehlanpassung zwischen den Adressendatenbreiten
eine richtige Adressierung vorzunehmen.
Wenn die Adressenbusbreite eines Busses größer ist als
die Adressendatenbreite einer mit diesem Bus verbundenen
Einheit, so kann möglicherweise ein Register vorgesehen
werden, das Adressenbits liefert, um den Unterschied auszugleichen,
wodurch eine Fehlanpassung zwischen den
Adressendatenbreiten von Einheiten, die mit einem einzelnen
Bus verbunden sind und verschiedene Adressendatenbreiten
verwenden, kompensiert wird. In einem System, in dem
solche Einheiten mit zwei Bussen mit verschiedenen Adressendatenbreiten
verbunden sind, z. B. mit dem Speicherbus
und mit dem Systembus, entsteht jedoch das zusätzliche
Problem einer Fehlanpassung zwischen den Adressenbusbreiten
dieser Busse. Deswegen wird es schwierig, die Steuerung
des DMA (direkter Speicherzugriff) von irgendeiner
mit irgendeinem Bus verbundenen Einheit zu irgendeiner
anderen mit irgendeinem Bus verbundenen Einheit effektiv
auszuführen. Insbesondere besteht die Forderung, einer
Einheit, die mit dem eine kleinere Adressenbusbreite aufweisenden
Systembus verbunden ist und Adressendaten mit
noch kleinerer Breite als die Adressenbusbreite des Systembusses
verwendet, eine dynamische und schnelle Wahl irgendeiner
der entweder mit dem Systembus oder mit dem Speicherbus
verbundenen Einheiten, also der Zieleinheiten des DMA,
zu ermöglichen.
Es ist daher die Aufgabe der Erfindung, eine Adressenbus-
Steuereinrichtung zu schaffen, die den Zugriff zwischen
Einheiten, die unterschiedliche Adressendatenbreiten verwenden
und mit Bussen unterschiedlicher Adressenbusbreiten
verbunden sind, effektiv steuern kann.
Es ist eine weitere Aufgabe der Erfindung, eine Adressenbus-
Steuereinrichtung zu schaffen, bei der eine mit einem
der beiden Busse, der die kleinere Adressenbusbreite besitzt,
verbundene Einheit, die Adressendaten mit noch
kleinerer Breite als die Adressenbusbreite jenes Busses
verwendet, dynamisch und schnell eine der Einheiten wählen
kann, die entweder mit demselben Bus oder mit dem anderen,
die größere Adressenbusbreite besitzenden Bus verbunden sind.
Diese Aufgabe wird erfindungsgemäß gelöst durch eine
Adressenbus-Steuereinrichtung, die so ausgebildet ist, daß
sie erste Adressendaten zur Kompensation einer Fehlanpassung
zwischen der Adressenbusbreite eines ersten Busses
(z. B. eines Speicherbusses) und der Adressendatenbreite
einer mit einem zweiten Bus (z. B. einem Systembus) verbundenen
Zugriffseinheit liefert, wobei die Adressenbusbreite
des zweiten Busses kleiner ist als diejenige des ersten
Busses. Die ersten Adressendaten werden auf einen ersten
Bus gegeben, wenn die den Bus identifizierende Information
aus der Zugriffseinheit den ersten Bus identifiziert.
Die erfindungsgemäße Adressenbus-Steuereinrichtung ist
ferner so ausgebildet, daß sie im Fall, daß die Adressendatenbreite
der Zugriffseinheit noch kleiner ist als die
Adressenbusbreite des zweiten Busses, zweite Adressendaten
zur Kompensation einer Fehlanpassung zwischen der Adressenbusbreite
des zweiten Busses und der Adressenbusbreite der
Zugriffseinheit liefert. Die zweiten Adressendaten werden
auf den zweiten Bus gegeben, wenn die den Bus identifizierende
Information den zweiten Bus identifiziert.
In einem System, das eine Mehrzahl von Zugriffseinheiten
mit unterschiedlichen Adressendatenbreiten aufweist, wird
die Adressendatenbreite derjenigen Einheit, die einen Zugriffsbefehl
ausgegeben hat, gemäß dem Zugriffbefehlssignal
bestimmt, woraufhin in Abhängigkeit von dieser Bestimmung
eine geeignete Kompensation der Fehlanpassung zwischen
den Adressendatenbreiten vorgenommen wird.
Folglich wird die DMA-Operation zwischen Einheiten, die
unterschiedliche Adressendatenbreiten verwenden und mit
dem ersten Bus und dem zweiten Bus, die unterschiedliche
Adressenbusbreiten aufweisen, verbunden sind, effektiv gesteuert.
Daher ist es möglich, eine leistungsstarke Zusammenarbeit
beispielsweise zwischen einem neuen Prozessor
mit erweitertem Adreßraum und herkömmlichen Eingabe/Ausgabe-
Einheiten mit kleineren Adreßräumen als diesen
leicht zu realisieren.
Die Erfindung wird im folgenden anhand von Ausführungsbeispielen
unter Bezug auf die Zeichnungen näher erläutert;
es zeigt
Fig. 1 das Blockschaltbild eines Datenverarbeitungssystems,
das eine erste Ausführungsform der Erfindung enthält,
Fig. 2 den Logikschaltplan der Bus-Steuerschaltung der
ersten Ausführungsform von Fig. 1,
Fig. 3 das Blockschaltbild eines Datenverarbeitungssystems,
das eine zweite Ausführungsform der Erfindung enthält,
Fig. 4 teilweise in Form eines Logikschaltplanes und teilweise
in Form eines Blockschaltbildes die Bus-
Steuerschaltung der zweiten Ausführungsform der
Erfindung von Fig. 3,
Fig. 5 den Logikschaltplan der Adressendatenadditionsschaltung
von Fig. 4,
Fig. 6 bis 8 schematisch die von den ersten und zweiten
Ausführungsformen der Erfindung durchgeführte
Adressendatenverarbeitung und
Fig. 9 eine die Umsetzung der Systembus-Adreßraum erläuternde
Darstellung.
Fig. 1 zeigt ein Datenverarbeitungssystem mit einer Ausführungsform
der Erfindung. Eine CPU 1 und ein Speicher 2,
die beide für 32-Bit-Adressen ausgelegt sind, sind mit
einem Speicherbus 4 verbunden, der ebenfalls für 32-Bit-
Adressen ausgelegt ist und der über eine Bus-Steuerschaltung
3 mit einem Systembus 5 gekoppelt ist, welcher für
28-Bit-Adressen ausgelegt ist. Der Systembus 5 weist
einen niederwertigen Adressenbus 6 für die niederwertigen
23 Bits der 28-Bit-Adresse und einen höherwertigen Adressenbus
7 für die restlichen höherwertigen 5 Bits auf. Sowohl
mit dem niederwertigen Adressenbus 6 als auch mit
dem höherwertigen Adressenbus 7 ist eine Slave-Einheit 9
(eine Eingabe/Ausgabe-Einheit, die keine Zugriffbefehlsfunktion
besitzt), die eine 28-Bit-Adresse verwendet,
verbunden. Eine Master-Einheit 10 (eine Eingabe/Ausgabe-
Einheit, die eine Zugriffbefehlsfunktion besitzt), die
eine 24-Bit-Adresse verwendet, ist nur mit dem niederwertigen
Adressenbus 6 verbunden. Die Master-Einheit 10
gibt die niederwertigen 23 Bits der 24-Bit-Adressendaten
auf den niederwertigen Adressenbus 6 und das höchstwertige
Bit als Laufwegsteuersignal 8 auf die Bus-Steuerschaltung
3.
In der Fig. 2 sind Einzelheiten der Bus-Steuerschaltung 3
von Fig. 1 gezeigt. Das Laufwegsteuersignal 8 von der
Master-Einheit 10 wird direkt an einen ersten Eingang
eines (negativen) UND-Gatters 13 und über ein NICHT-Gatter
15 an einen ersten Eingang eines (negativen) UND-Gatters
14 geliefert. Die zweiten Eingänge der UND-Gatter 13 und
14 empfangen ein Freigabesignal 11, das im aktivierten
Zustand den logischen Wert "0" annimmt. Die Ausgabe des
UND-Gatters 13 gibt ein Treibergate 18 frei, um darüber
den Inhalt einer Flip-Flop-Gruppe 16 auf den Speicherbus
4 auszugeben. Die Ausgabe des UND-Gatters 14 gibt ein
Treibergate 19 frei, um darüber den Inhalt einer Flip-Flop-
Gruppe 17 auf den höherwertigen Adressenbus 7 des Systembusses
5 auszugeben. Die Ausgabe des UND-Gatters 13 gibt
außerdem ein Treibergate 20 frei, um damit Daten des niederwertigen
Adressenbusses 6 des Systembusses 5 in den
entsprechenden Teil des Speicherbusses 4 zu übertragen.
Die Flip-Flop-Gruppe 16 speichert 9 Bit breite komplementäre
Adressendaten, die zu den vom Systembus 5 zum Speicherbus
4 übertragenen Adressendaten addiert werden; die
Flip-Flop-Gruppe 17 speichert 5 Bit breite komplementäre
Adressendaten, die auf den höherwertigen Adressenbus 7
ausgegeben werden, um die Adressendaten des niederwertigen
Adressenbusses 6 zu komplementieren. Die Inhalt dieser
Flip-Flop-Gruppen werden von der CPU 1 während der
DMA-Initialisierung über die mit einem Datenbus der CPU 1
verbundene Signalleitung 12 auf gewünschte Werte gesetzt.
Zunächst wird die DMA-Operation der Master-Einheit 10 auf
den Speicher 2 beschrieben. In der Fig. 6 ist schematisch
die Adressendatenverarbeitung in diesem Fall gezeigt. Die
von der Master-Einheit 10 ausgegebenen 24-Bit-Adressendaten
80 sind aus den Bits M 0 bis M 23 zusammengesetzt.
Deren höchstwertiges Bit M 23 wird als Laufwegsteuersignal
8 verwendet; es wird auf die logische "0" gesetzt, wenn
der Zugriff auf den Speicher 2 angefordert ist. Die Daten
81 in der Flip-Flop-Gruppe 16 sind aus den Bits MF 0 bis
MF 8 zusammengesetzt und identifizieren eine vorbestimmte
Fläche im Adreßraum des Adressenbusses 6. Diese Daten
werden zu den Bits M 0 bis M 22 auf dem niederwertigen
Adressenbus 6 addiert, wodurch 32-Bit-Adressendaten 82,
die aus den Bits MA 0 bis MA 31 zusammengesetzt sind, geschaffen
und auf dem Speicherbus 4 übertragen werden.
Nun wird auf die Fig. 1, 2 und 6 gemeinsam Bezug genommen:
Wenn das Laufsteuersignal 8 (M 23) der Master-Einheit 10
logisch "0" ist, dann gibt das Freigabesignal 11, indem es
das UND-Gatter 13 passiert, das Treibergate 18 frei, wodurch
die Übertragung der neun Bits MF 0 bis MF 8 der Flip-
Flop-Gruppe 16 auf die höherwertigen 9-Bit-Positionen des
Speicherbusses 4 ermöglicht wird. Das Freigabesignal 11 gibt,
wenn es das UND-Gatter 13 passiert, außerdem das Treibergate
20 frei und ermöglicht dadurch die Übertragung der
23 auf dem niederwertigen Adressenbus 6 befindlichen Bits
M 0 bis M 22 auf die niederwertigen 23-Bit-Positionen des
Speicherbusses 4. Auf diese Weise kann die Master-Einheit
10 bei Verwendung der 24-Bit-Adresse die Adressierung des
Speichers 2 über den für 32-Bit-Adressen (MA 0 bis MA 31)
ausgelegten Speicherbus 4 vornehmen und dabei die Datenübertragung
durch den DMA bewirken.
Jetzt wird die DMA-Operation von der Master-Einheit 10
zur Slave- Einheit 9 beschrieben. Fig. 7 zeigt schematisch
die Adressendatenverarbeitung für diesen Fall. Wenn ein
Zugriff auf die Slave-Einheit 9 gefordert ist, so wird
das höchstwertige Bit M 23 der von der Master-Einheit 10
ausgegebenen 24-Bit-Adressendaten 80 auf die logische "1"
gesetzt. Die Daten 83 in der Flip-Flop-Gruppe 17 sind aus
den Bits SF 0 bis SF 4 zusammengesetzt und identifizieren
eine vorbestimmte Fläche im Adreßraum des Systembusses 5.
Diese Daten werden auf den höherwertigen Adressenbus 7
ausgegeben und mit den Bits M 0 bis M 22 auf dem niederwertigen
Adressenbus 6 gekoppelt, wodurch die aus den Bits
SA 0 bis SA 27 zusammengesetzten 28-Bit-Adressendaten 84
geschaffen werden.
Nun wird auf die Fig. 1, 2 und 7 insgesamt Bezug genommen:
Wenn das Laufwegsteuersignal 8 (M 23) der Master-Einheit 10
logisch "1" ist, so passiert das Freigabesignal 11 das
UND-Gatter 14, um das Treibergate 19 freizugeben und dabei
die Ausgabe der fünf Bits SF 0 bis SF 4 in der Flip-Flop-
Gruppe 17 auf den höherwertigen Adressenbus 7 zu ermöglichen.
Auf diese Weise kann die Master-Einheit 10 bei Verwendung
einer 24-Bit-Adresse die Adressierung der Slave-
Einheit 9 über den für 28-Bit-Adressen (SA 0 bis SA 27) ausgelegten
Systembus 5 vornehmen und dabei die Datenübertragung
durch den DMA bewirken.
Fig. 3 zeigt ein Datenverarbeitungssystem mit einer weiteren
Ausführungsform der Erfindung, welche eine verallgemeinerte
Version der oben beschriebenen Ausführungsform ist.
Eine CPU 31 und ein Speicher 32, die 32-Bit-Adressen verwenden,
sind mit einem Speicherbus 38 für 32-Bit-Adressen
verbunden. Der Speicherbus 38 ist über eine Bus-Steuerschaltung
33 mit einem Systembus 39 für 28-Bit-Adressen
gekoppelt. Der Systembus 39 weist einen höherwertigen
Adressenbus 40 für die höherwertigen fünf Bits der 28-Bit-
Adresse und einen niederwertigen Adressenbus 41 für die
restlichen 23 Bits auf. Eine Master-Einheit 34 und eine
Slave-Einheit 36, die beide 28-Bit-Adressen verwenden,
sind sowohl mit dem höherwertigen Adressenbus 40 als auch
mit dem niederwertigen Adressenbus 41 verbunden, während
eine Master-Einheit 35 und eine Slave-Einheit 37, die
beide 24-Bit-Adressen verwenden, nur mit dem niederwertigen
Adressenbus 41 verbunden sind.
Die Master-Einheit 35 überträgt die niederwertigen 23 Bits
der 24-Bit-Adressendaten über den niederwertigen Adressenbus
41 und gibt das höchstwertige Bit als Laufwegsteuersignal
45 an die Bus-Steuerschaltung 33 und als das höchstwertige
Adressenbit über die Signalleitung 41 a an die
Slave-Einheit 37. Die Master-Einheit 34 gibt ebenfalls
das 24ste Bit der Adressendaten an den höherwertigen
Adressenbus 40 und über die Signalleitung 41 a an die
Slave-Einheit 37. Die DMA-Befehl-Signalleitungen 42, die
zur Bus-Steuerschaltung 33 führen, dienen zur Übertragung
eines DMA-Befehlssignals 43 mit einer 28-Bit-Adresse,
das eine DMA-Forderung aus der Master-Einheit 34 mit 28-
Bit-Adressen anzeigt, und eines DMA-Befehlssignals 44
mit 24-Bit-Adressen, das eine DMA-Forderung aus der
Master-Einheit 35 mit 24-Bit-Adressen anzeigt. Die Zugriffsteuerleitungen
46, die aus der Bus-Steuerschaltung
33 herausführen, dienen zur Übertragung eines Zugriffsteuersignals
47 mit 28-Bit-Adressen an die Slave-Einheit
36 und eines Zugriffsteuersignals 48 mit 24-Bit-Adressen
an die Slave-Einheit 37.
In Fig. 4 sind Einzelheiten der Bus-Steuerschaltung 33 von
Fig. 3 gezeigt. Eine Zugriffbefehl-Verarbeitungsschaltung
49 empfängt die Ausgabe eines Decoders 51, welcher feststellt,
ob die Adressendaten auf dem Speicherbus 38 die
mit dem Systembus 39 verbundenen Slave-Einheiten 36 oder
37 identifizieren, das DMA-Befehlssignal 43 mit 28-Bit-
Adressen und das DMA-Befehlssignal 44 mit 24-Bit-Adressen
und erzeugt ein DMA-Zulassungssignal 52, ein DMA-Befehlssteuersignal
53 und ein Zugrifflaufwegsteuersignal 54.
Das DMA-Befehlssteuersignal 53 steuert eine Wähleinrichtung
55, indem es die Ausgabe eines Flip-Flops 56 oder
eines Flip-Flops 57 wählt. Das Flip-Flop 56 zeigt eine Anforderung
aus der Master-Einheit 34 mit 28-Bit-Adressen an,
das Flip-Flop 57 zeigt eine Anforderung aus der Master-
Einheit mit 24-Bit-Adressen an. Folglich gibt die Ausgabe
70 der Wähleinrichtung 55 die Adressendatenbreite derjenigen
Master-Einheit an, deren DMA-Anforderung angenommen
wird. Die Zustände dieser Flip-Flops werden durch eine
CPU 31 über eine Datenleitung 58 gesetzt. Das DMA-Zulassungssignal
52 und die Ausgabe 70 der Wähleinrichtung 55 werden
an eine Adressendaten-Additionsschaltung 50 geliefert.
Das Zugrifflaufwegsteuersignal 54 wird über ein Zeitsteuerungsanpassungs-
Flip-Flop 59 an die ersten Eingänge der
UND-Gatter 60 und 62 geliefert. Der zweite Eingang des
UND-Gatters 60 wird über ein NICHT-Gatter 61 mit der Ausgabe
eines Decoders 63 versorgt, während der zweite Eingang
des UND-Gatters 62 direkt mit der Ausgabe des Decoders
63 versorgt wird. Der Decoder 63 stellt fest, daß
die Adressendaten des höherwertigen Adressenbusses 40 des
Systembusses 39 die Slave-Einheit 37 mit 24-Bit-Adressen
identifizieren. Das UND-Gatter 60 erzeugt das Zugriffsteuersignal
47 mit 28-Bit-Adressen, während das UND-Gatter
62 das Zugriffsteuersignal 48 mit 24-Bit-Adressen erzeugt.
Wenn dem Zugrifflaufwegsteuersignal 54 erlaubt wird, ein
Sperrgatter 64 zu passieren, so gibt es Treibergates 67
bis 69 frei. Wenn das Treibergate 69 freigegeben ist, so
überträgt es erste bis 23ste Adressenbits auf dem Speicherbus
38 zum niederwertigen Adressenbus 41 des Systembusses
39; wenn das Treibergate 68 freigegeben ist, so überträgt
es 24ste bis 28ste Adressenbits auf dem Speicherbus 38
zum höherwertigen Adressenbus 40; wenn das Treibergate 67
freigegeben ist, so überträgt es das 24ste Adressenbit
(a 23) an die Signalleitung 41 a. Wenn jedoch das DMA-Zulassungssignal
52 logisch "1" ist, dann wird die Freigabe
dieser Treibergates gesperrt.
Die Adressendatenadditionsschaltung 50 ist ebenfalls mit
dem Speicherbus 38 und dem höherwertigen Adressenbus 40
verbunden. Außerdem empfängt sie das Laufwegsteuersignal
45 aus der Master-Einheit 35 mit 24-Bit-Adressen. Wie im
folgenden im einzelnen beschrieben wird, gibt die Adressendatenadditionsschaltung
50 komplementäre Adressenbits auf
den Speicherbus 38 oder den höherwertigen Adressenbus 40
des Systembusses und erzeugt ein Freigabesignal 66, wenn
sie die komplementären Bits auf den Speicherbus 38 ausgibt.
Das Freigabesignal 66 gibt das Treibergate 65 frei
und ermöglicht so die Übertragung der Adressendaten auf
dem niederwertigen Adressenbus 41 des Systembusses auf
die entsprechenden Positionen des Speicherbusses 38.
In Fig. 5 sind Einzelheiten der Adressendatenadditionsschaltung
50 gezeigt. Das DMA-Zulassungssignal 52 aus der
Zugriffbefehl-Verarbeitungsschaltung 49 wird an erste Eingänge
der NAND-Gatter 71 und 72 gegeben. Die Ausgabe einer
Wähleinrichtung 74 wird über ein NICHT-Gatter 73 an den
zweiten Eingang des NAND-Gatters 71 und direkt an den
zweiten Eingang des NAND-Gatters 72 gegeben. Das Adressendatenbreitensignal
70 der Wähleinrichtung 55 in Fig. 4
wird einerseits an den dritten Eingang des NAND-Gatters 72
gegeben, andererseits steuert es die Wähleinrichtung 74.
Die Wähleinrichtung 74 wählt das Laufwegsteuersignal 45
der Master-Einheit 35 mit 24-Bit-Adressen oder die Ausgabe
eines Decoders 75. Der Decoder 75 stellt fest, daß
die Adressendaten auf dem höherwertigen Adressenbus 40
des Systembusses einen DMA-Fensterraum des Speicherbusses
38, also den für den DMA auf den Speicher 32 reservierten
Adressenbereich, identifiziert.
Die Ausgabe des NAND-Gatters 71 gibt ein Treibergate 78
frei, so daß die Inhalte einer Flip-Flop-Gruppe 76 über
den Speicherbus 38 übertragen werden, während die Ausgabe
des NAND-Gatters 72 ein Treibergate 79 freigibt, so daß
die Inhalte einer Flip-Flop-Gruppe 77 über den höherwertigen
Adressenbus 40 des Systembusses übertragen werden.
Die Ausgabe des NAND-Gatters 71 wird außerdem als das
obenerwähnte Freigabesignal 66 ausgegeben. Die Flip-Flop-
Gruppe 76 speichert die 9 Bit breiten komplementären
Adressendaten, die zu den vom Systembus 39 zum Speicherbus
38 übertragenen Adressendaten addiert werden, während
die Flip-Flop-Gruppe 77 die 5 Bit breiten komplementären
Adressendaten speichert, die für die Komplementierung
der Adressendaten auf dem niederwertigen Adressenbus 41
des Systembusses auf den höherwertigen Adressenbus 40
ausgegeben werden. Die Inhalte dieser Flip-Flop-Gruppen
werden durch die CPU während der DMA-Initialisierung
über die Signalleitung 58 auf die gewünschten Werte gesetzt.
Nun werden die Operationen der in den Fig. 3 bis 5 gezeigten
Einrichtung beschrieben. Zunächst wird der Fall beschrieben,
in dem die CPU 31 auf die Slave-Einheiten 36
und 37 zugreift.
Zunächst wird auf Fig. 3 Bezug genommen: Die 32-Bit-
Adressen verwendende CPU 31 gibt 32-Bit-Adressendaten auf
den Speicherbus 38. Daraufhin stellt die Bus-Steuerschaltung
33 mittels der unten beschriebenen Adressenbus-Steueroperation
einen Zugrifflaufweg an die Slave-Einheit 36
mit 28-Bit-Adressen oder an die Slave-Einheit 37 mit 24-
Bit-Adressen her.
Nun wird aufdie Fig. 4 Bezug genommen: Der Decoder 51 decodiert
die von der CPU 31 auf den Speicherbus 38 ausgegebenen
32-Bit-Adressendaten und gibt, wenn die decodierte
Adresse die Slave-Einheit 36 oder 37 identifiziert, die
decodierte Ausgabe, die diese Tatsache anzeigt, an die
Zugriffbefehl-Verarbeitungsschaltung 49 aus. Die Zugriffbefehl-
Verarbeitungsschaltung 49 untersucht, ob an den
DMA-Befehl-Signalleitungen 42 gegenwärtig ein DMA-Befehlssignal
anliegt odr nicht, akzeptiert den Zugriffbefehl
aus der CPU 31, wenn kein DMA-Befehlssignal anliegt, und
erzeugt lediglich das Zugrifflaufwegsteuersignal 54. Da
das DMA-Zulassungssignal 52 nicht erzeugt wird, wird das
Zugrifflaufwegsteuersignal 54 über das Sperrgatter 64 an
die Treibergates 67, 68 und 69 geliefert, wo es diese
Treibergates freigibt. Dabei überträgt das Treibergate 68
die 24sten bis 28sten Bits der Adressendaten auf dem
Speicherbus 38 an den höherwertigen Adressenbus 40 des
Systembusses 39. Das Treibergate 69 überträgt das erste
bis 23ste Bit der Adressendaten auf dem Speicherbus 38
an den niederwertigen Adressenbus 41 des Systembusses 39.
Ferner überträgt das Treibergate 67 das 24ste Bit der
Adressendaten auf dem Speicherbus 38 an die Signalleitung
41 a, um die Slave-Einheit 37 mit 24-Bit-Adressen mit dem
höchstwertigen Adressenbit zu versorgen. Die 5-Bit-
Adressendatenausgabe des Treibergates 68 an den höherwertigen
Adressenbus 40 wird durch den Decoder 63 decodiert.
Der Decoder 63 decodiert die Adressendaten auf dem höherwertigen
Adressenbus 40 und gibt, wenn er sie mit der
Slave-Einheit 37 mit 24-Bit-Adressen identifiziert, als
Signal eine logische "1" aus.
Inzwischen wird das Zugrifflaufwegsteuersignal 54 an das
Flip-Flop 59 geschickt und von diesem gespeichert, so daß
für die Treibergates 67, 68 und 69 eine Rüstzeit geschaffen
wird, um die Adressendaten auf den Systembus auszugeben;
danach wird das Signal 54 an die UND-Gatter 60 und 62
geschickt. Wenn die Ausgabe des Decoders 63 eine logische
"1" ist, so passiert die Ausgabe des Flip-Flops 59 das
UND-Gatter 62 und wird als das 24-Bit-Adressen-Zugriffsteuersignal
48 für die Wahl der Slave-Einheit 37 mit 24-
Bit-Adressen ausgegeben. Wenn andererseits die Ausgabe
des Decoders 63 eine logische "0" ist, so wird die Ausgabe
des NICHT-Gatters 61 "1", folglich passiert die Ausgabe
des Flip-Flops 59 das UND-Gatter 60 und wird als das 28-
Bit-Adressen-Zugriffsteuersignal 47 für die Wahl der Slave-
Einheit 36 mit 28-Bit-Adressen ausgegeben.
Auf diese Weise analysiert die Bus-Steuerschaltung 33 die
von der CPU 31 ausgegebenen Adressendaten und überträgt
über die Treibergates 67 bis 69 den notwendigen Teil der
Adressendaten auf dem Speicherbus 38 an den Systembus 39
und gibt ferner ein Zugriffsteuersignal an die Einheit,
für die ein Zugriff angefordert ist. Somit ist die mit
einem 32-Bit-Adressen-Speicherbus 38 verbundene CPU 31
bei Verwendung von 32-Bit-Adressen in der Lage, auf die
Slave-Einheit 36 mit 28-Bit-Adressen oder auf die Slave-
Einheit 37 mit 24-Bit-Adressen zuzugreifen.
Nun wird die Adressenbus-Steueroperation für den DMA
auf eine mit dem Systembus 39 verbundene Master-Einheit
35 mit 24-Bit-Adressen beschrieben. Die Steueroperation
ist in diesem Fall im Grunde die gleiche wie diejenige
der in den Fig. 1 und 2 gezeigten Einrichtung, so daß
die Erläuterungen in den Fig. 6 und 7 ebenso auf diesen
Fall anwendbar sind.
Zunächst wird der Fall eines DMA auf den mit dem Speicherbus
38 verbundenen Speicher 32 beschrieben. Hierbei wird
auf Fig. 3 Bezug genommen: Wenn der DMA auf den Speicher
32 erforderlich ist, so gibt die Master-Einheit 35 mit
24-Bit-Adressen das 24-Bit-Adressen-DMA-Befehlssignal 44
an die Bus-Steuerschaltung 33, die niederwertigen 23 Bits
(M 0 bis M 22: die Adressendaten 80 in Fig. 6) an den niederwertigen
Adressenbus 41 und das höchstwertige Bit
(M 23: die Adressendaten 80 in Fig. 6) der Adressendaten
als Laufwegsteuersignal 45 an die Bus-Steuerschaltung 33
aus. Das Bit M 23 wird auf logisch "0" gesetzt, wenn der
DMA an den Speicher 32 gefordert wird. Nun wird auf Fig. 4
Bezug genommen: Aufgrund des Empfangs des 24-Bit-Adressen-
DMA-Befehlssignals 44 erzeugt die Zugriffbefehl-Verarbeitungsschaltung
49 dann, wenn kein weiterer Zugriffbefehl
vorliegt, das DMA-Zulassungssignal 52, das DMA-Befehlssteuersignal
53 und das Zugrifflaufwegsteuersignal 54.
Das DMA-Befehlssteuersignal 53 wird eine logische "1",
wenn das 28-Bit-Adressen-DMA-Befehlssignal 43 festgestellt
wird, und eine logische "0", wenn das 24-Bit-Adressen-DMA-
Befehlssignal 44 festgestellt wird. Da im vorliegenden
Fall das 24-Bit-Adressen-DMA-Befehlssignal 44 festgestellt
wird, wird das Signal mit einer logischen "0" als DMA-
Befehlssteuersignal 53 an die Wähleinrichtung 55 geliefert.
In Reaktion auf dieses Signal einer logischen "0" wählt
die Wähleinrichtung 55 die Ausgabe des vorher von der CPU
31 auf logisch "1" gesetzten Flip-Flops 57. Folglich wird
das Adressendatenbreitensignal 70, das von der Wähleinrichtung
55 an die Adressendaten-Additionsschaltung 50
geschickt wird, logisch "1", wobei gleichzeitig angezeigt
wird, daß die Adressendatenbreite der den DMA-Befehl ausgebenden
Master-Einheit 24 Bits beträgt.
Nun wird auf Fig. 5 Bezug genommen: In der Adressendaten-
Additionsschaltung 50 wird das Adressendatenbreitensignal
70 mit der logischen "1" an die Wähleinrichtung 74 und
das NAND-Gatter 72 geliefert. Die Wähleinrichtung 74 wählt
in Reaktion auf das Signal der logischen "1" die Seite, an
der das Laufwegsteuersignal 45 anliegt. Wenn die Master-
Einheit 35 auf das DMA-Fenster des Speicherbusses 38 zugreift,
so ist der logische Wert des Laufwegsteuersignals
45, wie oben beschrieben, "0". Die logische "0" des Laufwegsteuersignals
45 wird durch das NICHT-Gatter 73 in eine
logische "1" umgewandelt und an das NAND-Gatter 71 geliefert.
Das NAND-Gatter 71, das mit dem DMA-Zulassungssignal
52 versorgt wird, spricht auf das Signal der logischen "1"
vom NICHT-Gatter 73 an und gibt das Freigabesignal 66 aus;
außerdem gibt es das Treibergate 78 frei. Das Ergebnis
ist, daß die vorher von der CPU 31 in der Flip-Flop-Gruppe
76 gespeicherten 9-Bit-Adressendaten (MF 0 bis MF 8: die
komplementären Adressendaten 81 in Fig. 6) an die 24sten
bis 32sten Bitpositionen des Speicherbusses 38 ausgegeben
werden, wo sie zu den höherwertigen neun Bits (MA 23 bis
MA 31: die Adressendaten 82 in Fig. 6) der Adressendaten
auf dem Speicherbus 38 werden.
Inzwischen gibt das Freigabesignal 66 das Treibergate 65
frei, wodurch die 23-Bit-Adressendaten (M 0 bis M 22: die
Adressendaten 80 in Fig. 6) auf dem niederwertigen
Adressenbus 41 auf die erste bis 23ste Bitposition auf
dem Speicherbus 38 übertragen werden und somit zu den
niederwertigen 23 Bits (MA 0 bis MA 22: die Adressendaten
82 in Fig. 6) der Adressendaten auf dem Speicherbus 38
werden. Somit werden auf dem Speicherbus 38 32 Bit breite
Adressendaten (MA 0 bis MA 31: die Adressendaten 82 in
Fig. 6) gebildet.
Auf diese Weise koppelt die Bus-Steuerschaltung 33 in
Reaktion auf das Laufwegsteuersignal 45, d. h., das höchstwertige
Bit M 23 der 24-Bit-Adressen der Master-Einheit 35
mit 24-Bit-Adressen, die 23-Bit-Adressendaten M 0 bis M 22
auf dem niederwertigen Adressenbus 41 mit den vorher in
der Flip-Flop-Gruppe 76 gespeicherten komplementären
9-Bit-Adresendaten MF 0 bis MF 8 und bildet dadurch die
32-Bit-Adressendaten MA 0 bis MA 31, die für die Durchführung
des DMA über den 32-Bit-Adressenspeicherbus 38 erforderlich
sind; damit wird die Datenübertragung durch
den DMA zwischen der Master-Einheit 35 und dem Speicher
32 ermöglicht.
Nun wird die Adressenbus-Steueroperation für den DMA von
der Master-Einheit 35 mit 24-Bit-Adressen an die mit dem
Systembus 39 verbunde Slave-Einheit 36 mit 28-Bit-
Adressen beschrieben. Hierbei wird auf die Fig. 3 Bezug
genommen: Wenn die Durchführung des DMA auf die mit dem
Systembus 39 verbundene Slave-Einheit 36 mit 28-Bit-
Adressen erforderlich ist, so gibt die Master-Einheit 35
mit 24-Bit-Adressen ein DMA-Befehlssignal 44 an die Bus-
Steuerschaltung 33, die niederwertigen 23 Bits (M 0 bis
M 22: Fig. 6) der Adressendaten auf den niederwertigen
Adressenbus 41 und das höchstwertige Bit (M 23: Fig. 6)
als Laufwegsteuersignal 45 an die Bus-Steuerschaltung 33
aus. Hierbei ist jedoch das Bit M 23 auf logisch "1" gesetzt,
um den DMA an die mit dem Systembus 39 verbundene
Slave-Einheit zu erzielen.
Jetzt wird auf die Fig. 4 und 5 Bezug genommen: In der
Bus-Steuerschaltung 33 erzeugt die Zugriffbefehl-Verarbeitungsschaltung
49 wie beim DMA auf den Speicher 32 das
DMA-Zulassungssignal 52, das DMA-Befehlssteuersignal 53
und das Zugrifflaufwegsteuersignal 54. Die Adressendaten-
Additionsschaltung 50 empfängt das DMA-Zulassungssignal
52 mit logisch "1" und das Adressendatenbreitensignal 70
mit logisch "1". Das in diesem Fall von der Wähleinrichtung
74 gewählte Laufwegsteuersignal 45 hat den logischen
Wert "1". Folglich wird die Ausgabe des NICHT-Gatters 73
eine logische "0", weshalb das NAND-Gatter 71 kein Freigabesignal
erzeugt. Jedoch empfängt das NAND-Gatter 72
das Adressendatenbreitensignal 70 mit der logischen "1",
das DMA-Zulassungssignal 52 mit der logischen "1" und
das Laufwegsteuersignal 45 mit der logischen "1" und gibt
das Treibergate 79 frei. Das Ergebnis ist, daß die vorher
von der CPU 31 in der Flip-Flop-Gruppe 77 gespeicherten
komplementären 5-Bit-Adressendaten (SF 0 bis SF 4: Fig. 7)
auf den höherwertigen Adressenbus 40 ausgegeben werden.
Diese fünf Adressenbits werden mit den 23-Bit-Adressendaten
(M 0 bis M 22: Fig. 7) auf dem niederwertigen Adressenbus
41 gekoppelt, wodurch 28-Bit-Adressendaten (SA 0 bis
SA 27) gebildet werden.
Der Decoder 63 decodiert die somit auf dem höherwertigen
Adressenbus 40 ausgegebenen Adressendaten und erzeugt ein
Signal mit einer logischen "0", weil die decodierten
Adressendaten nicht die Slave-Einheit mit 24-Bit-Adressen
identifizieren. Daher empfängt das UND-Gatter 60 als Eingabe
vom NICHT-Gatter 61 das Signal einer logischen "1",
woraufhin es aufgrund des Empfangs des Zugrifflaufwegsteuersignal
54 vom Flip-Flop 59 das 28-Bit-Adressenzugriffsteuersignal
47 erzeugt.
Somit kann die Master-Einheit 35 mit 24-Bit-Adressen die
Adressierung des Adreßraumes der Slave-Einheit 36 mit
28-Bit-Adressen durchführen, wobei die DMA-Datenübertragung
zwischen diesen Einheiten bewirkt wird.
Im Falle eines DMA von der Master-Einheit 35 mit 24-Bit-
Adressen auf die Slave-Einheit 37 mit 24-Bit-Adressen
werden die Inhalte der Flip-Flop-Gruppe 77 (SF 0 bis SF 4:
Fig. 7) auf diejenigen Werte gesetzt, die die Fläche im
Adreßraum des Systembusses identifizieren, die der
Slave-Einheit 37 mit 24-Bit-Adressen zugeordnet ist. Mit
Ausnahme der Operationen des Decoders 63 und der UND-
Gatter 60 und 62 sind die Operationen der Bus-Steuerschaltung
33 dieselben wie die beim DMA auf die Slave-
Einheit 36 mit 28-Bit-Adressen. Im jetzt beschriebenen
Fall des DMA auf die Slave-Einheit 37 mit 24-Bit-Adressen
decodiert der Decoder 63 die Adressendaten auf dem höherwertigen
Adressenbus 40, die die Slave-Einheit 37 mit 24-
Bit-Adressen identifizieren, und erzeugt als Ausgang eine
logische "1". Wenn das UND-Gatter 62 vom Flip-Flop 59 das
Zugrifflaufwegsteuersignal 54 empfängt, so erzeugt es
folglich das 24-Bit-Adressen-Zugriffsteuersignal 48. Das
24ste Adressenbit wird direkt von der Master-Einheit 35
mit 24-Bit-Adressen über die Signalleitung 41 a an die
Slave-Einheit 37 mit 24-Bit-Adressen ausgegeben.
Nun wird die Adressenbus-Steueroperation für den DMA von
der Master-Einheit 34 mit 28-Bit-Adressen an den mit dem
Speicherbus 38 verbundenen Speicher 32 beschrieben. In
der Fig. 8 ist für diesen Fall die Adressendatenverarbeitung
gezeigt. Die von der Master-Einheit 34 mit 28-Bit-
Adressen ausgegebenen 28-Bit-Adressendaten 85 sind aus
den Bits M 0 bis M 27 zusammengesetzt. Deren höherwertige
fünf Bits, M 23 bis M 27, werden alle auf logisch "0" gesetzt,
wenn ein Zugriff auf den Speicher 32 angefordert
wird. Die Daten 86 in der Flip-Flop-Gruppe 76 sind aus
den Bits MF′ 0 bis MF′ 8 zusammengesetzt und identifizieren
eine vorbestimmte Fläche im Adreßraum des Speicherbusses
38. Diese Daten werden zu den Bits M 0 bis M 22 auf
dem niederwertigen Adressenbus 41 addiert, wodurch 32-
Bit-Adressendaten 82, die aus den Bits MA 0 bis MA 31 bestehen,
ausgebildet werden.
Jetzt wird wieder auf Fig. 3 Bezug genommen: Die Master-
Einheit 34 mit 28-Bit-Adressen gibt das 28-Bit-Adressen-
DMA-Befehlssignal 43 an die Bus-Steuerschaltung 33 und
die 28-Bit-Adressendaten (M 0 bis M 27: Fig. 8) auf den
Systembus 39. Genauer gibt sie die höherwertigen 5-Bit-
Adressendaten (M 23 bis M 27) auf den höherwertigen Adressenbus
40 und die niederwertigen 23-Bit-Adressendaten
(M 0 bis M 22) auf den niederwertigen Adressenbus 41.
Nun wird aufdie Fig. 4 Bezug genommen: In der Bus-Steuerschaltung
33 empfängt die Zugriffbefehl-Verarbeitungsschaltung
49 das 28-Bit-Adressen-DMA-Befehlssignal 43 und
erzeugt, falls kein weiterer Zugriffbefehl vorliegt, das
DMA-Zulassungssignal 42, das DMA-Befehlssteuersignal 53
und das Zugrifflaufwegsteuersignal 54. Das DMA-Befehlssteuersignal
53 wird, wie oben beschrieben, ein Signal
mit einer logischen "1", wenn das 28-Bit-Adressen-DMA-
Befehlssignal 43 festgestellt wird. Folglich wird die
Wähleinrichtung 55 mit dem Signal einer logischen "1"
versorgt und wählt die Ausgabe des Flip-Flops 56, das
vorher durch die CPU 31 auf logisch "0" gesetzt worden
ist. Dadurch wird das Signal einer logischen "0", das anzeigt,
daß die Adressendaten der den DMA-Befehl ausgebenden
Master-Einheit 28 Bit breit sind, über die Wähleinrichtung
55 als Adressendatenbreitensignal 70 an die
Adressendaten-Additionsschaltung 50 geliefert.
Nun wird auf die Fig. 5 Bezug genommen: In der Adressendaten-
Additionsschaltung 50 wird das Adressendatenbreitensignal
70 mit logisch "0" an die Wähleinrichtung 74
und an das NAND-Gatter 72 geliefert. Der Selektor 74 wählt
in Reaktion auf das Signal der logischen "0" das Signal
des Decoders 75. Der Decoder 75 decodiert die Adressendaten
auf dem höherwertigen Adressenbus 40 und gibt ein
Signal einer logischen "0" aus, wenn jedes Bit der Adressendaten
(M 23 bis M 27) logisch "0" ist. Dieses "0"-Logiksignal
vom Decoder 75 wird über die Wähleinrichtung 74
und das NICHT-Gatter 73 an das NAND-Gatter 71 geliefert.
Wenn das NAND-Gatter 71 vom NICHT-Gatter 73 das "1"-Logiksignal
empfängt, so gibt es, da es mit dem DMA-Zulassungssignal
52 versorgt worden ist, das Freigabesignal 66 aus,
während es gleichzeitig das Treibergate 78 freigibt. Dadurch
werden die vorher in der Flip-Flop-Gruppe 76 gespeicherten
Adressendaten (MF′ 0 bis MF′ 8: Fig. 8) als höherwertige
9-Bit-Adressendaten (MA 23 bis MA 31) des Speicherbusses
38 auf den Speicherbus 38 ausgegeben. In der Zwischenzeit
gibt das Freigabesignal 66 das Treibergate 65
(Fig. 4) frei und ermöglicht dadurch die Übertragung der
niederwertigen 23-Bit-Adressendaten (M 0 bis M 22) der 28-
Bit-Adresse auf dem niederwertigen Adressenbus 41 von der
Master-Einheit 34 als niederwertige 23-Bit-Adressendaten
(MA 0 bis MA 22) zum Speicherbus 38. Dabei werden, wie in
Fig. 8 gezeigt ist, 32-Bit-Adressendaten 82 (MA 0 bis MA 31),
die den 28-Bit-Adressendaten 85 (M 0 bis M 22, M 23 bis M 27)
der Master-Einheit 34 mit 28-Bit-Adressen entsprechen, auf
dem Speicherbus 38 gebildet. Daher ist die Master-Einheit
34, die 28-Bit-Adressen verwendet, in der Lage, die
Adressierung des 32-Bit-Adressen verwendenden Speichers
32 durchzuführen und dabei die Datenübertragung durch den
DMA zwischen der Master-Einheit 234 und dem Speicher 32 zu
ermöglichen.
Jetzt werden die Adressenbus-Steuerungsoperationen für
den DMA von der Master-Einheit 34 mit 28-Bit-Adressen
auf die Slave-Einheit 36 mit 28-Bit-Adressen oder auf
die Slave-Einheit 37 mit 24-Bit-Adressen, die mit dem
Systembus 39 verbunden sind, beschrieben. In diesen
Fällen wird die Flip-Flop-Gruppe 77 nicht verwendet.
Zunächst wird auf Fig. 3 Bezug genommen: Wenn der DMA an
die mit dem Systembus 39 verbundene Slave-Einheit angefordert
wird, so gibt die Master-Einheit 34 mit 28-Bit-
Adressen 28-Bit-Adressendaten auf den höherwertigen
Adressenbus 40 und den niederwertigen Adressenbus 41.
Ferner wird das 24ste Adressenbit über die Signalleitung
41 a direkt an die Slave-Einheit 37 mit 24-Bit-Adressen
geschickt. Die auf den höherwertigen Adressenbus 40 ausgegebenen
Adressendaten werden auf einen Wert gesetzt,
der diejenige Fläche im 28-Bit-Adreßraum identifiziert,
welche entweder der Slave-Einheit 36 mit 28-Bit-Adressen
oder der Slave-Einheit 37 mit 24-Bit-Adressen, also den
Zieleinheiten des DMA, zugeordnet ist. Die Master-Einheit
34 mit 28-Bit-Adressen schickt an die Bus-Steuerschaltung
33 außerdem das 28-Bit-Adressen-Befehlssignal 43.
Jetzt wird wieder auf die Fig. 4 und 5 Bezug genommen:
Die Zugriffbefehl-Verarbeitungsschaltung 49 erzeugt das
DMA-Zulassungssignal 52, das DMA-Befehlssteuersignal 53
und das Zugrifflaufwegsteuersignal 54. Auf die gleiche
Weise wie im Fall des DMA auf den Speicher 32 gibt die
Wähleinrichtung 55 das Adressendatenbreitensignal 70 mit
der logischen "0" an die Adressendaten-Additionsschaltung
50. In der Adressendaten-Additionsschaltung 50 wählt die
Wähleinrichtung 74 in Reaktion auf das Adressendatenbreitensignal
70 mit der logischen "0" die Ausgabe des Decoders
75. Jetzt ist jedoch die Ausgabe der Wähleinrichtung
75 eine logische "1", unabhängig davon, auf welche Slave-
Einheit der DMA zielt. Dies hat den Grund, daß die
Adressendaten auf dem höherwertigen Adressenbus 40 nicht
den DMA-Fensterraum des Speicherbusses 38 anzeigen. Folglich
erzeugt das NAND-Gatter 71 kein Freigabesignal. Da
das Adressendatenbreitensignal 70 logisch "0" ist, erzeugt
auch das NAND-Gatter 72 kein Freigabesignal. Das
Ergebnis ist, daß keine der Flip-Flop-Gruppen 76 und 77
Adressendaten ausgeben. Der Decoder 63 decodiert die
Adressendaten auf dem höherwertigen Adressenbus 40 und
erzeugt, wenn die Slave-Einheit 37 mit 24-Bit-Adressen
identifiziert wird, eine logische "1"; wenn diese Slave-
Einheit 37 nicht identifiziert wird, so erzeugt der Decoder
63 eine logische "0". Wenn die Slave-Einheit 37 mit
24-Bit-Adressen identifiziert wird, gibt folglich das
UND-Gatter 62 das 24-Bit-Adressen-Zugriffsteuersignal 48
an die Slave-Einheit 37 mit 24-Bit-Adressen aus, falls
die Identifizierung nicht stattfindet, so gibt das UND-
Gatter 60 das 28-Bit-Adressen-Zugriffsteuersignal 47 an
die Slave-Einheit 36 mit 28-Bit-Adressen aus.
Aus der vorangehenden Beschreibung wird deutlich, daß die
Bus-Steuerschaltung 33 Fehlanpassungen zwischen den
Adressendatenbreiten der mit dem Speicherbus 38 und dem
Systembus 39 mit unterschiedlichen Adressenbusbreiten
verbundenen Einheiten 31, 32, 34 bis 37 mit unterschiedlichen
Adressendatenbreiten dynamisch kompensiert, wodurch
eine Datenübertragung zwischen diesen Einheiten
erreicht wird.
Nun wird die Zuweisung der Adreßräume und das Setzen der
Adressendaten in den Flip-Flop-Gruppen 76 und 77 beschrieben.
In Fig. 9 ist das Beispiel einer Umsetzung bzw.
Korrespondenz eines 32-Bit-Adreßraumes des Speicherbusses
38, eines 28-Bit-Adreßraumes des Systembusses
39 und des 24-Bit-Adreßraumes der 24-Bit-Adresseneinheiten
35 und 37 gezeigt. Die Fläche der 256 MB von der
maximalen Adresse X"FFFF FFFF" (hexadezimal) bis
X"F000 0000" im 32-Bit-(4 GB-)Adreßraum des Speicherbusses
38 wird in den 28-Bit-Adreßraum des Systembusses
39 umgesetzt. Der Bereich von 8 MB von der kleinsten
Adresse X"F000 0000" bis X"F07F FFFF" dieser Fläche wird
dem für den DMA von der Master-Einheit 34 mit 28-Bit-
Adressen oder von der Master-Einheit 35 mit 24-Bit-Adressen
auf den Speicher 32 verwendeten Speicherbus-DMA-
Fensterraum zugeordnet. Der restliche Bereich (Adressen
X"F080 0000" bis X"FFFF FFFF") wird als Systembusraum
für den Zugriff auf die mit dem Systembus 39 verbundenen
Slave-Einheiten 36 und 37 verwendet. Genauer wird die
Fläche von 8 MB von der Adresse X"FF80 0000" bis zur
Adresse X"FFFF FFFF" auf eine Fläche von 8 MB abgebildet,
die mit der höchsten Adresse der 24-Bit-(16 MB-)Adreßraumes
der 24-Bit-Adresseneinheiten 35 und 37 endet;
diese 8 MB-Fläche wird für den Zugriff auf die Slave-
Einheit 37 mit 24-Bit-Adressen verwendet. Die verbleibende
8 MB-Fläche im 24-Bit-Adreßraum wird auf den vorhin
genannten Speicherbus-DMA-Fensterraum abgebildet und
für den DMA von der Master-Einheit 35 mit 24-Bit-Adressen
auf den Speicher 32 verwendet.
Gemäß dieser Umsetzung haben die 9-Bit-Adressendaten MF 8
bis MF 0 (Fig. 6) und MF′ 8 bis MF′ 0 (Fig. 8), die von der
Flip-Flop-Gruppe 76 geliefert werden, wenn die Master-
Einheit 34 mit 28-Bit-Adressen und die Master-Einheit 35
mit 24-Bit-Adressen auf den Speicherbus-DMA-Fensterraum
zugreifen, beide den Wert "111100000". Genauso haben die
5-Bit-Adressendaten SF 4 bis SF 0 (Fig. 7), die von der
Flip-Flop-Gruppe 77 geliefert werden, den Wert "11111",
wenn die Master-Einheit 35 mit 24-Bit-Adressen auf die
Slave-Einheit 37 mit 24-Bit-Adressen zugreift; wenn die
Master-Einheit 35 mit 24-Bit-Adressen jedoch auf die
Slave-Einheit 36 mit 28-Bit-Adressen zugreift, so können
diese 5-Bit-Adressendaten jedes beliebige Bit-Muster,
das verschieden von "11111" und "00000" ist, annehmen.
Das Bit-Muster der von der Flip-Flop-Gruppe 76 gelieferten
9-Bit-Adressendaten ändert sich, wenn sich die Zuordnung
des Speicherbus-DMA-Fensterraumes ändert. Außerdem
kann der Speicherbus-DMA-Fensterraum für die Master-Einheit
34 mit 28-Bit-Adressen verschieden sein von demjenigen
für die Master-Einheit 35 mit 24-Bit-Adressen.
Die von der Flip-Flop-Gruppe 76 in diesem Fall gelieferten
Adressendaten ändern sich in Abhängigkeit davon,
welche der Mastereinheiten den DMA-Befehl an den Speicher
32 ausgegeben hat.
Wenn die Aufgabe allein darin besteht, Fehlanpassungen
zwischen den Adressendatenbreiten zu kompensieren, so
ist die Addition von Adressenbits in einer Anzahl, die
dem Unterschied der Adressendatenbreiten entspricht, ausreichend.
Beispielsweise ist für den DMA der Master-Einheit
34 mit 28-Bit-Adressen auf den Speicher 32 die Addition
von vier Bits ausreichend, für den DMA der Master-
Einheit 35 mit 24-Bit-Adressen auf den Speicher 32 ist
die Addition von acht Bits ausreichend. In den oben beschriebenen
Ausführungsformen liefern die Flip-Flop-
Gruppen 16, 17, 76 und 77 jedoch zusätzlich Daten, die
den Bus identifizierenden Teil (M 23 in Fig. 6 und Fig. 7,
M 23 bis M 27 in Fig. 8) der ursprünglichen Adressendaten
ersetzen. Dies erlaubt eine viel freiere Abbildung zwischen
den Adreßräumen, woraus sich für die Adressierung
ein hoher Grad von Flexibilität ergibt.
Damit DMA-Operationen in einer Mehrzahl gleichzeitig
durchgeführt werden können, können mehrere Flip-Flop-
Gruppen 16, 17, 76 oder 77 vorgesehen werden. Wenn beispielsweise
zwei Flip-Flop-Gruppen 77 vorgesehen werden,
so können auf der Grundlage eines Zeitmultiplexbetriebes
zwei parallele DMA-Operationen von einer ersten und
einer zweiten Master-Einheit mit 24-Bit-Adressen auf
eine erste bzw. eine zweite Slave-Einheit mit 28-Bit-
Adressen durchgeführt werden.
Claims (11)
1. Datenverarbeitungssystem mit einem ersten Bus (4; 38),
mit einem zweiten Bus (5; 39), dessen Adressenbusbreite
kleiner ist als diejenige des ersten Busses, mit
einem Prozessor (1; 31) und einem Speicher (2; 32),
die mit dem ersten Bus verbunden sind, und mit einer
Mehrzahl von mit dem zweiten Bus verbundenen Eingabe/
Ausgabe-Einheiten (9, 10; 34 bis 37), wobei wenigstens
eine der Mehrzahl der Eingabe/Ausgabe-Einheiten eine
Zugriffeinheit (10; 34, 35) für den Zugriff auf eine
weitere Einheit ist und diese Zugriffseinheit Adressendaten
mit einer Breite, die nicht größer ist als diejenige
des Adressenbusses des zweiten Busses, verwendet,
gekennzeichnet durch
eine Adressenbus-Steuereinrichtung (3; 33), die mit dem ersten und dem zweiten Bus verbunden ist, um die Adressendatenübertragung zwischen dem ersten und dem zweiten Bus zu steuern, wobei die Adressenbus-Steuereinrichtung
eine Signalempfangseinrichtung (8; 45, 75) zum Empfang einer Busidentifikationsinformation von der Zugriffeinheit, um den mit der Zieleinheit des Zugriffs verbundenen Bus zu identifizieren, und
eine erste Adressendaten-Versorgungseinrichtung (13, 16, 18; 71, 76, 78), die mit dem ersten Bus und der Signalempfangseinrichtung verbunden ist, um den ersten Bus mit ersten Adressendaten zu versorgen, wenn die Busidentifikationsinformation den ersten Bus identifiziert, damit eine Fehlanpassung zwischen der Adressendatenbreite der Zugriffeinheit und der Adressendatenbreite des ersten Busses kompensiert wird,
aufweist.
eine Adressenbus-Steuereinrichtung (3; 33), die mit dem ersten und dem zweiten Bus verbunden ist, um die Adressendatenübertragung zwischen dem ersten und dem zweiten Bus zu steuern, wobei die Adressenbus-Steuereinrichtung
eine Signalempfangseinrichtung (8; 45, 75) zum Empfang einer Busidentifikationsinformation von der Zugriffeinheit, um den mit der Zieleinheit des Zugriffs verbundenen Bus zu identifizieren, und
eine erste Adressendaten-Versorgungseinrichtung (13, 16, 18; 71, 76, 78), die mit dem ersten Bus und der Signalempfangseinrichtung verbunden ist, um den ersten Bus mit ersten Adressendaten zu versorgen, wenn die Busidentifikationsinformation den ersten Bus identifiziert, damit eine Fehlanpassung zwischen der Adressendatenbreite der Zugriffeinheit und der Adressendatenbreite des ersten Busses kompensiert wird,
aufweist.
2. Datenverarbeitungssystem gemäß Anspruch 1,
dadurch gekennzeichnet,
daß die Adressendatenbreite der Zugriffeinheit (10; 35)
kleiner ist als die Adressenbusbreite des zweiten
Busses und daß die Adressenbus-Steuereinrichtung (3;
33) eine zweite Adressendaten-Versorgungseinrichtung
(14, 17, 19; 72, 77, 79), die mit dem zweiten Bus und
der Signalempfangseinrichtung (8; 45, 75) verbunden
ist, um den zweiten Bus mit zweiten Adressendaten zu
versorgen, wenn die Busidentifikationsinformation den
zweiten Bus identifiziert, damit eine Fehlanpassung
zwischen der Adressendatenbreite der Zugriffeinheit
und der Adressendatenbreite des zweiten Busses kompensiert
wird, aufweist.
3. Datenverarbeitungssystem gemäß Anspruch 2,
dadurch gekennzeichnet,
daß die Busidentifikationsinformation aus einem Teil
der Adressendaten von der Zugriffeinheit besteht und
daß die ersten und zweiten Adressendaten jeweils Daten
enthalten, die die Busidentifikationsinformation in
den Adressendaten ersetzen.
4. Datenverarbeitungssystem gemäß Anspruch 3,
dadurch gekennzeichnet,
daß der zweite Bus einen ersten Adressenbus (6; 41)
und einen zweiten Adressenbus (7; 40) aufweist, daß
die Zugriffeinheit die Adressendaten ohne Busidentifikationsinformation
auf den ersten Adressenbus gibt,
daß die zweite Adressendaten-Versorgungseinrichtung
die zweiten Adressendaten auf den zweiten Adressenbus
gibt und daß die Adressenbus-Steuereinrichtung eine
mit dem ersten Bus, dem ersten Adressenbus und der
Signalempfangseinrichtung verbundene Einrichtung (20,
65) aufweist, um die Adressendaten auf dem ersten
Adressenbus auf den entsprechenden Teil des ersten
Busses zu übertragen, wenn die Busidentifikationsinformation
den ersten Bus identifiziert.
5. Datenverarbeitungssystem gemäß Anspruch 2,
dadurch gekennzeichnet,
daß die ersten und zweiten Adressendaten-Versorgungseinrichtungen
(16, 17; 76, 77) zum Speichern erster
bzw. zweiter Adressendaten, die vom Prozessor (1; 31)
geliefert werden, erste bzw. zweite Speichereinrichtungen
aufweisen.
6. Datenverarbeitungssystem mit einem ersten Bus (38),
mit einem zweiten Bus (39), dessen Adressenbreite kleiner
ist als diejenige des ersten Busses, mit einem Prozessor
(31) und einem Speicher (32), die mit dem ersten
Bus verbunden sind, und mit einer Mehrzahl von mit dem
zweiten Bus verbundenen Eingabe/Ausgabe-Einheiten (34-
37), wobei die Mehrzahl der Eingabe/Ausgabe-Einheiten
eine Mehrzahl von Zugriffeinheiten (34, 35) für den
Zugriff auf eine weitere Einheit aufweisen und diese
Mehrzahl von Zugriffeinheiten Adressendaten mit unterschiedlicher
Breite verwenden,
gekennzeichnet durch
eine Adressenbus-Steuereinrichtung (33), die mit dem ersten und dem zweiten Bus verbunden ist, um die Datenübertragung zwischen dem ersten und dem zweiten Bus zu steuern, wobei die Adressenbus-Steuereinrichtung
eine Signalerzeugungseinrichtung (49, 55-57) zum Empfang eines von jeder der Zugriffeinheiten ausgegebenen Zugriffbefehlssignals und zur Erzeugung eines Adressendatenbreitensignals (70), das die Adressendatenbreite der das Zugriffbefehlssignal ausgebenden Einheit angibt,
eine Signalempfangseinrichtung (45, 74, 75) zum Empfang einer Busidentifikationsinformation von der das Zugriffbefehlssignal ausgebenden Einheit, das den Bus, der mit der Zugriffzieleinheit verbunden ist, identifiziert,
Speichereinrichtungen (76, 77) zum Speichern erster Adressendaten, um eine Fehlanpassung zwischen der Adressendatenbreite der das Zugriffbefehlssignal ausgebenden Einheit und der Adressenbusbreite des ersten Busses und zum Speichern zweiter Adressendaten zur Kompensation einer Fehlanpassung zwischen der Adressendatenbreite der das Zugriffbefehlssignal ausgebenden Einheit und der Adressenbusbreite des zweiten Busses, und
eine Adressendaten-Additionseinrichtung (50, 71, 78, 72, 79), die mit den ersten und zweiten Bussen, mit der Signalerzeugungseinrichtung, mit der Signalempfangseinrichtung und mit den Speichereinrichtungen verbunden ist, um die ersten Adressendaten auf den ersten Bus auszugeben, wenn die Busidentifikationsinformation den ersten Bus identifiziert, und um die zweiten Adressendaten auf den zweiten Bus auszugeben, wenn die Busidentifikationsinformation den zweiten Bus identifiziert und gleichzeitig das Adressendatenbreitensignal anzeigt, das eine Datenbreite kleiner ist als die Adressenbusbreite des zweiten Busses.
eine Adressenbus-Steuereinrichtung (33), die mit dem ersten und dem zweiten Bus verbunden ist, um die Datenübertragung zwischen dem ersten und dem zweiten Bus zu steuern, wobei die Adressenbus-Steuereinrichtung
eine Signalerzeugungseinrichtung (49, 55-57) zum Empfang eines von jeder der Zugriffeinheiten ausgegebenen Zugriffbefehlssignals und zur Erzeugung eines Adressendatenbreitensignals (70), das die Adressendatenbreite der das Zugriffbefehlssignal ausgebenden Einheit angibt,
eine Signalempfangseinrichtung (45, 74, 75) zum Empfang einer Busidentifikationsinformation von der das Zugriffbefehlssignal ausgebenden Einheit, das den Bus, der mit der Zugriffzieleinheit verbunden ist, identifiziert,
Speichereinrichtungen (76, 77) zum Speichern erster Adressendaten, um eine Fehlanpassung zwischen der Adressendatenbreite der das Zugriffbefehlssignal ausgebenden Einheit und der Adressenbusbreite des ersten Busses und zum Speichern zweiter Adressendaten zur Kompensation einer Fehlanpassung zwischen der Adressendatenbreite der das Zugriffbefehlssignal ausgebenden Einheit und der Adressenbusbreite des zweiten Busses, und
eine Adressendaten-Additionseinrichtung (50, 71, 78, 72, 79), die mit den ersten und zweiten Bussen, mit der Signalerzeugungseinrichtung, mit der Signalempfangseinrichtung und mit den Speichereinrichtungen verbunden ist, um die ersten Adressendaten auf den ersten Bus auszugeben, wenn die Busidentifikationsinformation den ersten Bus identifiziert, und um die zweiten Adressendaten auf den zweiten Bus auszugeben, wenn die Busidentifikationsinformation den zweiten Bus identifiziert und gleichzeitig das Adressendatenbreitensignal anzeigt, das eine Datenbreite kleiner ist als die Adressenbusbreite des zweiten Busses.
7. Datenverarbeitungssystem gemäß Anspruch 6,
dadurch gekennzeichnet,
daß die Busidentifikationsinformation ein Teil der
Adressendaten einer jeden der Zugriffseinheiten ist
und daß die ersten und zweiten Adressendaten jeweils
Daten enthalten, die die Busidentifikationsinformation
in diesen Adressendaten ersetzen.
8. Datenverarbeitungssystem gemäß Anspruch 7,
dadurch gekennzeichnet,
daß die Mehrzahl der Zugriffeinheiten eine erste Zugriffeinheit
(34), die Adressendaten mit derselben
Breite wie die Adressenbusbreite des zweiten Busses
verwendet und eine zweite Zugriffeinheit (35), die
Adressendaten von kleinerer Breite als diejenige des
zweiten Busses verwendet, aufweisen, daß der zweite
Bus einen ersten Adressenbus (41) und einen zweiten
Adressenbus (40) aufweist, daß die zweite Zugriffeinheit
die Adressendaten mit Ausnahme der Busidentifikationsinformation
auf den ersten Adressenbus ausgibt,
daß die Adressendaten-Additionseinrichtung die zweiten
Adressendaten auf den zweiten Adressenbus ausgibt und
daß die Adressenbus-Steuereinrichtung eine mit dem
ersten Bus, mit dem ersten Adressenbus und mit der
Signalempfangseinrichtung verbundene Einrichtung (65)
aufweist, um die Adressendaten auf dem ersten Adressenbus
auf den entsprechenden Teil des ersten Busses auszugeben,
wenn die Busidentifikationsinformation den
ersten Bus identifiziert.
9. Datenverarbeitungssystem gemäß Anspruch 8,
dadurch gekennzeichnet,
daß die Signalempfangseinrichtung von der ersten Zugriffeinheit
über den zweiten Bus die Busidentifikationsinformation
empfängt.
10. Datenverarbeitungssystem gemäß Anspruch 6,
gekennzeichnet durch
eine Einrichtung (63), die mit dem zweiten Bus verbunden
ist und die darauf befindlichen Adressendaten decodiert,
um die Adressendatenbreite der Zielzugriffeinheit
zu bestimmen, und eine Einrichtung (60-62)
zur Ausgabe eines Zugriffsteuersignals an diejenigen
Eingabe/Ausgabe-Einheiten, mit Ausnahme der Zugriffeinheiten,
die die bestimmte Adressendatenbreite aufweisen.
11. Datenverarbeitungssystem gemäß Anspruch 6,
dadurch gekennzeichnet,
daß die ersten und zweiten Adressendaten von dem Prozessor
an die Speichereinrichtungen geliefert werden.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62259585A JP2612715B2 (ja) | 1987-10-16 | 1987-10-16 | アドレスバス制御装置 |
JP63041753A JP2706082B2 (ja) | 1988-02-24 | 1988-02-24 | アドレスバス制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3835297A1 true DE3835297A1 (de) | 1989-05-18 |
DE3835297C2 DE3835297C2 (de) | 1995-06-08 |
Family
ID=26381404
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3835297A Expired - Fee Related DE3835297C2 (de) | 1987-10-16 | 1988-10-17 | Datenverarbeitungssystem mit einer Adressenbus-Steuereinrichtung |
Country Status (4)
Country | Link |
---|---|
US (1) | US5148539A (de) |
KR (1) | KR910005998B1 (de) |
DE (1) | DE3835297C2 (de) |
GB (1) | GB2211326B (de) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0398145A (ja) * | 1989-09-11 | 1991-04-23 | Hitachi Ltd | マイクロプロセッサ |
US5396599A (en) * | 1990-01-16 | 1995-03-07 | Nec Electronics, Inc. | Computer system with a bus controller |
EP0444711A3 (en) * | 1990-03-02 | 1994-07-20 | Fujitsu Ltd | Bus control system in a multi-processor system |
JPH0484253A (ja) * | 1990-07-26 | 1992-03-17 | Mitsubishi Electric Corp | バス幅制御回路 |
US5255374A (en) * | 1992-01-02 | 1993-10-19 | International Business Machines Corporation | Bus interface logic for computer system having dual bus architecture |
US5301281A (en) * | 1991-06-26 | 1994-04-05 | Ast Research, Inc. | Method and apparatus for expanding a backplane interconnecting bus in a multiprocessor computer system without additional byte select signals |
JP2744154B2 (ja) * | 1991-10-24 | 1998-04-28 | 株式会社東芝 | バスシステム |
JP2836321B2 (ja) * | 1991-11-05 | 1998-12-14 | 三菱電機株式会社 | データ処理装置 |
JPH07504773A (ja) * | 1992-03-18 | 1995-05-25 | セイコーエプソン株式会社 | マルチ幅のメモリ・サブシステムをサポートするためのシステム並びに方法 |
JP3608804B2 (ja) * | 1993-05-14 | 2005-01-12 | 株式会社ソニー・コンピュータエンタテインメント | バス制御装置 |
US5561817A (en) * | 1993-08-16 | 1996-10-01 | Thermo King Corporation | Method of securely controlling direct memory access (DMA) of a shared memory by a DMA device on an expansion board |
US5590378A (en) * | 1994-04-25 | 1996-12-31 | Compaq Computer Corporation | Apparatus for aligning and padding data on transfers between devices of different data widths and organizations |
US5623697A (en) * | 1994-11-30 | 1997-04-22 | International Business Machines Corporation | Bridge between two buses of a computer system with a direct memory access controller having a high address extension and a high count extension |
US5649125A (en) * | 1995-10-30 | 1997-07-15 | Motorola, Inc. | Method and apparatus for address extension across a multiplexed communication bus |
US5845098A (en) * | 1996-06-24 | 1998-12-01 | Motorola Inc. | Address lines load reduction |
US6671765B1 (en) * | 1999-11-22 | 2003-12-30 | Texas Instruments Incorporated | Architecture enabling code overlay using a dedicated endpoint |
US7895381B2 (en) * | 2009-02-16 | 2011-02-22 | Himax Media Solutions, Inc. | Data accessing system |
JP5441219B2 (ja) * | 2009-06-26 | 2014-03-12 | ルネサスエレクトロニクス株式会社 | 半導体装置及びシリアルインタフェース回路 |
JP2018137547A (ja) * | 2017-02-20 | 2018-08-30 | 株式会社東芝 | 情報処理装置及び画像形成装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2921419A1 (de) * | 1978-05-30 | 1979-12-13 | Intel Corp | Schaltungsanordnung und verfahren zur uebertragung digitaler information zwischen wenigstens einer ersten und einer zweiten sammelleitung |
DE3545474A1 (de) * | 1985-02-14 | 1986-08-14 | DSO "ISOT", Sofia/Sofija | Einrichtung zum verbinden von 8- und 16-stelligen moduln mit einem 16-stelligen mikroprozessorsystem |
EP0189638B1 (de) * | 1984-12-10 | 1990-05-23 | Ing. C. Olivetti & C., S.p.A. | Busbreite-Anpassungsgerät |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4296464A (en) * | 1977-03-03 | 1981-10-20 | Honeywell Inc. | Process control system with local microprocessor control means |
JPS5464933A (en) * | 1977-11-01 | 1979-05-25 | Panafacom Ltd | Main storage extension system |
JPS5454536A (en) * | 1977-10-08 | 1979-04-28 | Fujitsu Ltd | Data processor |
US4205373A (en) * | 1978-05-22 | 1980-05-27 | Ncr Corporation | System and method for accessing memory connected to different bus and requesting subsystem |
US4296469A (en) * | 1978-11-17 | 1981-10-20 | Motorola, Inc. | Execution unit for data processor using segmented bus structure |
US4315308A (en) * | 1978-12-21 | 1982-02-09 | Intel Corporation | Interface between a microprocessor chip and peripheral subsystems |
US4309754A (en) * | 1979-07-30 | 1982-01-05 | International Business Machines Corp. | Data interface mechanism for interfacing bit-parallel data buses of different bit width |
JPS5779551A (en) * | 1980-11-06 | 1982-05-18 | Nec Corp | Information transfer device |
US4393501A (en) * | 1981-02-26 | 1983-07-12 | General Electric Company | Line protocol for communication system |
US4471458A (en) * | 1981-06-18 | 1984-09-11 | Allied Corporation | Computer interface |
US4608631A (en) * | 1982-09-03 | 1986-08-26 | Sequoia Systems, Inc. | Modular computer system |
US4598359A (en) * | 1983-04-01 | 1986-07-01 | Honeywell Information Systems Inc. | Apparatus for forward or reverse reading of multiple variable length operands |
KR900007564B1 (ko) * | 1984-06-26 | 1990-10-15 | 모토로라 인코포레이티드 | 동적 버스를 갖는 데이터 처리기 |
JPS61139866A (ja) * | 1984-12-11 | 1986-06-27 | Toshiba Corp | マイクロプロセツサ |
JP2609220B2 (ja) * | 1985-03-15 | 1997-05-14 | ソニー株式会社 | マルチ・プロセツサ・システム |
US4683534A (en) * | 1985-06-17 | 1987-07-28 | Motorola, Inc. | Method and apparatus for interfacing buses of different sizes |
JPH071496B2 (ja) * | 1985-11-05 | 1995-01-11 | ソニー株式会社 | 制御方法及び制御装置 |
US4831514A (en) * | 1986-02-14 | 1989-05-16 | Dso "Izot" | Method and device for connecting a 16-bit microprocessor to 8-bit modules |
US5014186A (en) * | 1986-08-01 | 1991-05-07 | International Business Machines Corporation | Data-processing system having a packet transfer type input/output system |
US4965723A (en) * | 1987-10-23 | 1990-10-23 | Digital Equipment Corporation | Bus data path control scheme |
JPH01136144A (ja) * | 1987-11-21 | 1989-05-29 | Sekisui Chem Co Ltd | 光及び熱硬化性組成物 |
US4996469A (en) * | 1990-03-16 | 1991-02-26 | Allen-Bradley Company, Inc. | Electric motor controller with bypass contactor |
-
1988
- 1988-10-14 GB GB8824168A patent/GB2211326B/en not_active Expired - Lifetime
- 1988-10-15 KR KR1019880013468A patent/KR910005998B1/ko not_active IP Right Cessation
- 1988-10-17 DE DE3835297A patent/DE3835297C2/de not_active Expired - Fee Related
-
1991
- 1991-06-04 US US07/711,254 patent/US5148539A/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2921419A1 (de) * | 1978-05-30 | 1979-12-13 | Intel Corp | Schaltungsanordnung und verfahren zur uebertragung digitaler information zwischen wenigstens einer ersten und einer zweiten sammelleitung |
EP0189638B1 (de) * | 1984-12-10 | 1990-05-23 | Ing. C. Olivetti & C., S.p.A. | Busbreite-Anpassungsgerät |
DE3545474A1 (de) * | 1985-02-14 | 1986-08-14 | DSO "ISOT", Sofia/Sofija | Einrichtung zum verbinden von 8- und 16-stelligen moduln mit einem 16-stelligen mikroprozessorsystem |
Non-Patent Citations (1)
Title |
---|
IBM Techn. Dis. bull, Vol. 29, No. 10, March 1987, S. 4579-4580 * |
Also Published As
Publication number | Publication date |
---|---|
GB8824168D0 (en) | 1988-11-23 |
KR890007173A (ko) | 1989-06-19 |
KR910005998B1 (ko) | 1991-08-09 |
DE3835297C2 (de) | 1995-06-08 |
GB2211326B (en) | 1991-12-11 |
GB2211326A (en) | 1989-06-28 |
US5148539A (en) | 1992-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3835297A1 (de) | Adressenbus-steuereinrichtung | |
DE2717503C2 (de) | Mehrprozessor-Mikrorechnersystem | |
DE2260353C2 (de) | Schaltungsanordnung für die Adressenumsetzung in einer Datenverarbeitungsanlage | |
DE2227882C2 (de) | Virtuelle Speicheranordnung | |
DE3224034C2 (de) | ||
DE2807476C2 (de) | Speichereinrichtung mit mehreren virtuellen Adreßräumen | |
DE2354521C2 (de) | Verfahren und Einrichtung zum gleichzeitigen Zugriff zu verschiedenen Speichermoduln | |
DE2847216C2 (de) | Datenverarbeitungsanlage mit Mehrprogrammbetrieb | |
DE2637054C3 (de) | Steuervorrichtung für einen Pufferspeicher | |
DE3438869A1 (de) | Computersystem mit adressumwandlung | |
EP0013737A1 (de) | Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem | |
EP0600112A1 (de) | Datenverarbeitungsanlage mit virtueller Speicheradressierung und schlüsselgesteuertem Speicherzugriff | |
DE1774296B2 (de) | Restruktuierbare Steuereinheit für elektronische Digitalrechner | |
EP0006164A1 (de) | Multiprozessorsystem mit gemeinsam benutzbaren Speichern | |
DE2718551C3 (de) | Adressenumsetzer | |
DE1237812B (de) | Datenverarbeitungsgeraet mit mehreren Speichern | |
DE2311503A1 (de) | Datenverarbeitungsanlage mit mehreren zentraleinheiten | |
DE19628039B4 (de) | Speicheradressen-Steuerschaltung | |
DE3105115C2 (de) | ||
DE2749884C2 (de) | ||
EP0265636A1 (de) | Multiprozessor mit mehreren mit Cache-Speichern ausgerüsteten Prozessoren und einem gemeinsamen Speicher | |
CH495584A (de) | Datenverarbeitungsanlage | |
DE2235883B2 (de) | Datenverarbeitungseinrichtung | |
DE1499286B2 (de) | Datenbearbeitungsanlage | |
DE2824557C2 (de) | Anordnung in Mikroprozessoren für den Aufbau von Multiprozessor-Systemen |
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 |