DE2902477A1 - Datenverarbeitungsanordnung - Google Patents
DatenverarbeitungsanordnungInfo
- Publication number
- DE2902477A1 DE2902477A1 DE19792902477 DE2902477A DE2902477A1 DE 2902477 A1 DE2902477 A1 DE 2902477A1 DE 19792902477 DE19792902477 DE 19792902477 DE 2902477 A DE2902477 A DE 2902477A DE 2902477 A1 DE2902477 A1 DE 2902477A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- memory
- unit
- address
- transmission
- 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.)
- Ceased
Links
- 238000012545 processing Methods 0.000 title claims description 20
- 230000015654 memory Effects 0.000 claims description 136
- 238000012546 transfer Methods 0.000 claims description 95
- 230000005540 biological transmission Effects 0.000 claims description 72
- 238000013519 translation Methods 0.000 claims description 5
- 238000001514 detection method Methods 0.000 claims 4
- 230000001419 dependent effect Effects 0.000 claims 1
- 230000009365 direct transmission Effects 0.000 claims 1
- 238000000034 method Methods 0.000 description 17
- 238000012360 testing method Methods 0.000 description 15
- 239000000872 buffer Substances 0.000 description 14
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 4
- 208000004592 Hirschsprung disease Diseases 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000012022 requirements testing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 208000035399 susceptibility to 7 hirschsprung disease Diseases 0.000 description 1
- 210000002435 tendon Anatomy 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
-
- 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/10—Program control for peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1081—Address translation for peripheral access to main memory, e.g. direct memory access [DMA]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Bus Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Communication Control (AREA)
- Information Transfer Systems (AREA)
- Debugging And Monitoring (AREA)
Description
Datenverarbeitungsanordnung
Die Erfindung bezieht sich auf eine Datenverarbeitungsanordnung und insbesondere auf eine Datenverarbeitungs^·
anordnung zur Erzielung sehr schneller Datenübertragungen aus Eingabe/Ausgabe-Einheiten zum und vom Hauptspeicher
des Systems.
In Datenverarbeitungsanordnungen, in denen Datenblöcke
zwischen Eingabe/Ausgabe-Einheiten (E/A-Einheiten) und dem Hauptspeicher der Anordnung übertragen werden
müssen, erfolgt diese Datenübertragung normalerweise über einen entsprechenden Bus» der üblicherweise als E/ADatenbus
bezeichnet wirdi dabei ist es erforderlich, daß die Zentraleinheit (CPU ) der Anordnung ihren Betrieb
909830/0823
unterbricht, damit entsprechende Register im Prozessor für die Anwendung bei der Datenübertragungsoperation
verfügbar gemacht werden.Außerdem werden die eigenen internen SpeicherSteuersignale der Zentraleinheit
zur Steuerung der Übertragung zum oder vom Speicher über die Zentraleinheit benötigt. Für jedes Datenwort
aus dem zu übertragenden Datenwortblock muß das Steuerwerk der Zentraleinheit eine Adresse von der E/AEinheit
beispielsweise zur Zentraleinheit übertragen, wobei diese Adresse dann entweder als absolute Adresse
für den Zugriff auf den Speicher benutzt wird oder einer Speicherzuordnungs- und Speicherschutzeinheit (MAP-Einheit)
der Zentraleinheit zuführt, die die logischen Adressen, die der Eingabelogik zugeführt werden, in
absolute Adressen für den Zugriff auf den Speicher übersetzt, in den oder aus dem Daten übertragen werden
sollen. Die Zentraleinheit muß dann auch die eigentlichen
Datenwörter in ihren Registern für die entsprechende Übertragung in den Speicher oder aus dem Speicher
über den Speicher-Bus der Datenverarbeitungsanordnung behandeln. Für jedes zu übertragende Datenwort muß die
Zentraleinheit eine Adresse und ein Datenwort behandeln. Das Behandeln der Adresse in den CPU-Registern und in
der MAP-Einheit nimmt normalerweise eine ziemlich lange Zeitperiode in Anspruch, und die gesamte Übertragungszykluszeit kann In manchen Systemen bis zu 1,5 bis
2 us betragen. Während dieser Zeitperiode kann die Zentraleinheit keine anderen Operationen ausführen,
die die Register benötigen, die dabei angewendet werden, so daß ihr Ausnutzungswirkungsgrad niedrig ist. Bei
solchen üblichen Datenkanal-Übertragungsoperationen können die E/A-Einheiten genügend langsam arbeiten,
/09830/0823
so daß die Verwendung irgendeiner anderen Einrichtung als
des langsamen Standard-Datenkanals keinen echten Vorteil ergibt. Wenn jedoch mit hoher Geschwindigkeit arbeitende
E/A-Einheiten beteiligt sind, ist es erwünscht, die unnötig langen Zeitperioden für die Adressen-und Datenverarbeitung
zu vermeiden, damit die Unterbrechung des CPU-Betriebs auf ein Minimum herabgesetzt wird.
Nach der Erfindung können mit hoher Geschwindigkeit arbeitende E/A-Einheiten Daten direkt über einen zweiten Speicheranschluß,
der von dem von der Zentraleinheit benutzten Speicheranschluß verschieden ist, in den Hauptspeicher
der Datenverarbeitungsanordnung übertragen. Eine Schnellkanal-Steuerlogik ermöglicht solche Datenübertragungen
ohne Verwendung interner Register der Zentraleinheit und ohne Verwendung der Speichersteuersignale der
Zentraleinheit. Die Datenübertragung umgeht die Zentraleinheit und ermöglicht eine direkte Verbindung mit dem
Hauptspeicher. Ein solcher Schnellkanal wird hauptsächlich für schnelle Hochleistungseinheiten benutzt, die für
diesen Zweck mit geeigneten Schnittstellen ausgestattet sind. Tatsächlich multiplexiert ein solcher Schnellkanal
die Übertragungen von Datengruppen aus mehreren verschiedenen E/A-Einheiten; er kann auch als "Gruppenmultiplexkanal"
bezeichnet werden, obgleich in der nachfolgenden Beschreibung der Ausdruck "Schnellkanal" allgemein
angewendet wird.
Da der Schnellkanal seinen eigenen Speicheranschluß und nicht den von der Zentraleinheit benutzten Speicheranschluß
benutzt, werden die erforderlichen Steuersignale
909830/0823
für diese Benutzung in der internen Steuerlogik des Schnellkanals erzeugt, und es wird eine entsprechende
Entscheidung angewendet, um zu gewährleisten, daß der Speicher nur von einer Gruppe von Speichersteuersignalen
gesteuert wird, die aus einer Kombination der Speichersteuersignale aus der Zentraleinheit und.der Speichersteuersignale
aus dem Schnellkanal abgeleitet ist. Zu diesem Zweck wird auch eine geeignete Speicheranschluß-Steuerlogik
benutzt. Der Schnellkanal macht auch von seiner eigenen Speicherverwaltungs-oder
Speicherzuordnungs- und Speicherschutzeinheit (MAP-Einheit) Gebrauch, und die übertragung vollständiger
Datenwortblöcke kann so vorgesehen werden, daß nur eine einzige Adresse benötigt wird, nämlich die Adresse
für das erste Datenwort im Datenwortblock. Sobald die Anfangsadresse von der SchnellkanalrSteuerlogik zugeordnet
worden ist, kann der Schnellkanal nachfolgende Adressen für jedes der Datenwörter nacheinander liefern, die dann
hintereinander in den oder aus dem Speicher übertragen werden. Die einzige andere Information, die noch benötigt
wird, ist die Länge des Datenwortblocks, die in geeigneter Weise überwacht wird, so daß bei der Übertragung des
letzten Datenworts bezüglich der letzten nacheinander zugeordneten Adresse der Schnellkanal weiß, daß die
Datenübertragung des gesamten Datenwortblocks beendet ist. Der Schnellkanal erzeugt im wesentlichen den gleichen Typ
von Speichersteuersignalen wie die Zentraleinheit, und es ist eine weitere Logikeinheit vorgesehen, die die
Überlappung des Speicherzugriffs in einem größeren Ausmaß erlaubt,als es normalerweise in der Zentraleinheit
vorgesehen ist. Beispielsweise ist der Schnellkanal so
909830/0823
ausgebildet, daß drei Speicherzugriffsoperationen überlappt werden, was im Gegensatz zum Normalfall
der Überlappung von zwei Speicherzugriffen steht, die in einigen Zentraleinheiten verfügbar sind.
Ein solcher Uberlappungs- oder Pipeline-Betrieb beim Speicherzugriff wird mit einer geeigneten Verschachtelung
der Speichermodule für einen Lesezugriff sbetrieb angewendet. Während eines Schreib-Zugriffsbetriebs
sind die Schreiboperationen ausreichend schnell , so daß eine solche Dreifachüberlappung nicht
erforderlich istj das Überlappungsmerkmal ist hauptsächlich
für die Anwendung in dem Fall bestimmt, wenn Datenblockübertragungen während eines ausschließlichen
Lesebetriebs erfolgen sollen.
Der nach der Erfindung angewendete Schnellkanal ist so ausgebildet, daß er zum Laden von Adressen Tabellen
in die Sehnellkanal-MAP-Einheit und zum Übertragen
seiner Datenwortblöcke vom gleichen Datenweg Gebrauch macht. Außerdem ist der Schnellkanal so ausgebildet,
daß seine im Hauptspeicher gespeicherten MAP-Tabellen
in geeigneter Weise in die MAP-Einheit geladen werden
können, indem eine entsprechende Identifizierung der zu benutzenden MAP-Tabellen und ihre Speicherplätze
im Hauptspeicher vorgesehen wird, wobei der Schnellkanal lediglich einen Zugriff auf diese MAP-Tabelleninformation
ausübt und seine eigene MAP-Einheit aus dem Hauptspeicher unter Verwendung eines eigenen
Speicheranschlusses lädt, so daß programmierte E/ABefehle aus der Zentraleinheit für das Laden der
MAP-Einheit nicht erforderlich sind.
909830/0823
Die Erfindung wird nun an Hand der Zeichnung beispielshalber erläutert. Es zeigen:
Fig.1 ein Blockschaltbild des gesamten Schnellkanals
der erfindungsgemäßen Datenverarbeitungsanordnung,
Fig.2 und 3 genauere Blockschaltbilder von Teilen des
Schnellkanals von Fig.1,
Fig.4 eine schematische Darstellung zur Veranschaulichung
der Betriebsarten mit logischen Adressen und absoluten Adressen, wie sie im Schnellkanal nach den Figuren
bis 3 angewendet werden,
Fig.5 und 6 Zeitdiagramme verschiedener Situationen, in
denen Daten in den oder aus dem Speicher übertragen werden,
Fig.7 bis 12 Schaltbilder logischer Schaltungen, die
in der Schnellkanal-Steuerlogik von Fig.1 benutzt werden, und
Fig.13 und 14 Flußdiagramme zur Verdeutlichung der Arbeitsweise
des Schnellkanals nach den Figuren 1 bis 3.
In Fig.1 ist ein Gesamtblockschaltbild des Schnellkanals dargestellt, während die Figuren 2 und 3 entsprechende
Teile genauer zeigen. Wie zu erkennen ist, benutzt der Schnellkanal zwei Bus-Systeme zur externen Verbindung
mit dem Kanal, nämlich ein erstes Bus-System, das als Schnellkanal-Bus-System 10 angegeben ist, und ein zweites
909830/0823
2302477
Bus-System, das als Datenprozessor-Bus-System 22 angegeben ist. In der hier zu beschreibenden Ausführungsform ist
der Schnellkanal so ausgebildet, daß mehrere E/AEinheiten über das Schnellkanal-Bus-System 10 angeschlossen
werden. Die E/A-Einheiten können so ausgebildet sein, daß sie entsprechend gewählte Prioritäten
aufweisen, damit einander widersprechende Ubertragungsanforderungen
gelöst werden können. In einer bevorzugten Ausführungsform können die Prioritäten beispielsweise
durch eine fest verdrahtete Logik so vorgesehen werden, daß Einheiten mit kleineren Kanalzugriffszeitanforderungen
die höheren Prioritäten gemäß bekannten Prioritätsbehandlungsverfahren haben. Wenn die Schnellkanal-steuerlogik
eine Übertragungsanforderung empfängt, nimmt der Kanal ein Kanalsteuer- und Kanaladressenwort an und überträgt
den geforderten Datenwortblock. Der Schnellkanal enthält ein Pufferregister mit der Kapazität für ein Datenwort,
und er verzögert anschliessend die Datenwortübertragungen, wenn dieses Pufferregister voll ist und der Schnellkanal-Speicheranschluß gerade nicht verfügbar ist«
Gemäß einem speziellen Ausführungsbeispiel der Erfindung beträgt die maximale Datenausgabegeschwindigkeit zum
Speicher, (d.h. im Lesebetrieb, bei dem Daten aus einer E/A-Einheit gelesen und in den Speicher geschrieben
werden, 10 M Bytes pro Sekunde, d.h. 200 ns/Wort).
Während des Schreibbetriebs, d.h» beim Lesen von Daten
aus dem Speicher und Zuführung der Daten zu einer E/AEinheit t beträgt'die mittlere maximale Dateneingabegeschwindigkeit
6,67 M-Bytes pro Sekunde. Die Übertragungs-
909830/0823
geschwindigkeit im Schreibbetrieb kann auf 10 M-Bytes
pro Sekunde erhöht werden, wenn Uberlappungsverfahren
angewendet werden, wie unten noch erläutert wird.
In den Figuren 1 bis 3 enthält der Schnellkanal eine Kanalsteuerlogik 12A und eine Speichersteuerlogik 12B,
die in nachfolgenden Figuren noch genau erläutert sind. Die Kanalsteuerlogik steht mit dem Schnellkanal-Bus-System
10 für den Empfang und das Aussenden entsprechender Anforderunge- und Steuersignale in Verbindung. Die Speichersteuerlogik
steht mit der Kanalsteuerlogik 12A und der Speichersteuerlogik der Zentraleinheit CPU in Verbindung,
damit die dem Datenprozessor-Bus-System 22 zugeführten absoluten Speichersteuersignale erzeugt werden.
Die Kanalsteuerlogik 12A leitet die Tätigkeiten des Schnellkanals ; sie ist um ein mikroprogrammiertes Steuerwerk
organisiert, das die Prozesse taktet und fortschaltet, die Datenübertragungen zu den externen E/A-Einheiten
oder MAP-Datenübertragungen zum Schnellkanal unterhalten. Diese Steuerlogik leitet den Schnellkanal so, daß eine
neue Adresse und eine Wortzahl geladen werden, daß die Wortzahl verringert wird, daß die Adresse weitergeschaltet
wird und daß der Datenwortblock übertragen wird. Außerdem steuert die Steuerlogik das Laden und
das Umspeichern des Inhalts der MAP-Einheit,und sie
gibt die MAP-Adreseenübersetzung zum Umsetzen logischer Adressen in absolute Adressen frei. Die Speichersteuereinheit
12B wird dazu benutzt, die Speicheranschlüsse zu steuern und den Betrieb der Speicherdaten-Treibereinheit
und des Pufferregisters bezüglich der beiden
909830/0823
Anschlüsse (die hier als Anschlüsse A0 und A1 angegeben sind) aufrechtzuerhalten; wahlweise kann diese Speichersteuereinheit
auf der Schnellkanalkarte selbst oder an irgendeiner anderen Stelle im gesamten Verarbeitungssystem
angebracht werden»
Die während einer Datenübertragung durch den Schnellkanal auftretenden Tätigkeiten laufen völlig synchron
ab, und ein entsprechender Schnellkanal-Taktgeber bewirkt die Weiterschaltung der Datenübertragungen
durch den Kanal und die Zeitsteuerung der Tätigkeiten, die auf dem Schnellkanal-Bus-System 10 stattfinden.
Die in Fig.1 oben allgemein dargestellteDatenübertragungslogik
19, die in Fig.2 genauer wiedergegeben ist, sorgt für die entsprechenden Datenwege für Speicherdaten zu
den und von den externen E/A-Einheiten und für Adressenwege zu den Schnellkanal-HAP-Registern 17 und zum Hauptspeicher.
Die Datenübertragungslogik enthält ein Datenausgaberegister 11, ein Dateneingaberegister 13, einen
Eingabemultiplexer 14 und einen Paritätsgenerator 15. Der Schnellkanal puffert die Speicherausgangsdaten,
(die in Fig.1 und in Fig.2 mit BMEMß-15 bezeichnet ist)
im puffer 16, berechnet das Datenparitätsbit und speichert die Daten und das Paritätsbit im Datenausgaberegister 11,
das die Daten HSC OUT ß-15 und das Paritätsbit MEM PAR
abgibt. Die Daten und das Paritätsbit aus dem Datenausgaberegister
11 werden über Bus-Treiber 11A bei jedem SYN CLOCK -Zyklus zur aktiven Schnittstelle übertragen,
so daß die Daten und das Paritätsbit vom Datenausgaberegister 11 also an den Schnellkanal-Bus 10 geliefert
werden.
909830/0823
2302477
Die in den Schnellkanal eingegebenen Daten (HSC 015)
werden zusammen mit einem Paritätsbit (HSC DPAR) dem Dateneingaberegister 13 zugeführt, das diese
Daten (HSCIN015 und HSC IN PAR) bei jedem SYN CLOCK-Zyklus
liefert. Dieee Datenwörter werden zum Speicher über den Eingabemultiplexer 14 und eine Treibereinheit
zum Datenprozessor-Bus 22 übertragen. Diese Daten werden nicht nur zum Speicher, sondern über die vom Puffer
gebildete Datenschleife während der Übertragung zum Speicher auch wieder in den Paritätsgenerator 15
zurückübertragen. Der Paritätsgenerator meldet daraufhin einen Datenfehler (DATA ERR), wenn die berechneten und
gespeicherten Paritätsbiis entsprechend herkömmlicher
.Paritätsprüfungsverfahren nicht übereinstimmen.
Die Datenübertragungen zwischen dem Speicher und den MAP-Registern der MAP-Einheit 17 laufen im wesentlichen
in der gleichen Weise ab. Das Datenausgaberegister empfängt über den Puffer 16 MAP-Daten aus dem Speicher
zur Übertragung in die MAP-Re gis te r unter Verwendung des gleichen Datenwegs wie die aus dem Speicher zur
Zuführung zum Schnellkanal-Bus 10 gelesenen Daten, während dieMAP-Daten in der MAP-Einheit 17 von der
Treibereinheit 18 über einen internen Bus 27 und den Eingabemultiplexer 14 wieder in den Speicher zurückübertragen
werden. Bei der übertragung von MAP-Daten sind keine Paritätsprüfungen erforderlich.
Die im Mittelteil von Fig.1 und in den Figuren 2 und
dargestellte Adressierungslogik empfängt Adressen von den Schnittstellen der Einheiten am Sehnellkanal-Bus
909830/0823
oder aus Registern im Schnellkanal selbst; äiese
Adressen sind als 21-Bit-Adressen mit den Bits CBk ß-2 ,
XCA ß2 und CA 1 bis 15 angegeben. Der Schnellkanal adressiert dann absolute Speicherplätze^ über
einen Absolutadressen-Bus 21, der die absolute Adresse
dem Datenprozessorbus 22 und dann dem Speicher über die Adressentreibereinheit 23 zuführt; die Bits der
absoluten Adresse sind mit BANK ß-2, XPA β -2 und
PA 1-Ί5 angegeben. Das Anfangadressenwort eines zu
übertragenden Datenblocks wird in einem Adreseenzählerregister 24 gespeichert, dessen Ausgangssignal als ein
Signal mit den Bits PBK Jö-2, XÄDDRP'-^ und ÄÜDuT-T?
angegeben sind. Ein Adressenparitätsgenerator 25 prüft die Parität des von der Schnittstelle empfangenen
Adressenworts (das als Paritätsbit IiSC APAR angegeben ist), und er liefert eine entsprechende Paritätsfehleranzeige
(ADDR ERROR) wenn das berechnete Adressenparitätsbit und das gespeicherte Adressenparitätsbit
nicht übereinstimmen.
Die höherwertigen Bits der Adresse aus dem Adressenzählerregister 24 (PBK β-έ, ΤΕΠϋ^Γψ^ und
geben die gewünschte Seitenadresse an» Wenn die Operation der MAP-Register der MAP-Einheit 17 nicht angewendet
werden soll, wird die MAP-Einheit durch Zuführung des Signals ENAB RAM zum Pufferregister 26 unwirksam gemacht,,
wobei dieseOperation die Freigabe der MAP-Einheit 17 verhindert und die gewünschte Seitenadresse über den
Puffer 26 und die internen Busse 27» 28, und 29 direkt in den Speicher eingibt (die absoluten Seitenadressenbits
sind als BK ß-2, ΧΡΉΤ1Ρ2" und PiTT^RJ angegeben).
909830/0-8 23
Yienn die Zuordnungs funktion benutzt werden soll, wird
MAP-Einheit 17 freigegeben (wobei dieser MAP-Einheit 17
das Signal ENB RAM zugeführt wird), so daß die logische Seitenadresse der MAP-Einheit über den internen Bus
20 zugeführt wird, woraufhin die zuvor geladenen MAP-Register veranlaßt werden, die logische Seitenadresse
in die absolute Seitenadresse für die Zuführung zum Bus
21 und zum Bus 22 über die internen Busse 27, 28, 29
und zur Treibereinheit 23 übersetzt wird. Unabhängig
davon, ob die Seitenadresse direkt aus dem Adressenzählerregister 24 oder aus den MAP-Registern geliefert
werden, werden die niedrigerwertigen Adressenbits (die Bits ADDR b-15 ) direkt dem Absolutadressen-Bus 21
zugeführt, damit Adressenwörter innerhalb der ausgewählten Seiten gebildet werden, die von den Seitenadressen angegeben
sind.
Wenn die MAP-Register zur Übersetzung logiseher Seitenadressen in absolute Seitenadressen benutzt werden sollen,
muß die angewendete Software Befehle zur Identifizierung einer MAP-Register-Anfangsadresse und eine Start-Speicheradresse
vor einem MAP-Ladevorgang (d.h. einer MAP-Datenübertragung) angeben. Eine entsprechende E/A-Steuerlogik
decodiert die Befehle entsprechend der Software und leitet die decodierten Informationen zu einer Gruppe von Zählern 31,
32, 33 und 34. Zwei der Zähler, nämlich die Zähler 31 und 33, geben die Speicheradresse für den Zugriff auf die Daten
für die MAP-Datenübertragung über den Multiplexer 43 und das Pufferregister 44 an. Ein dritter Zähler 32 liefert
die Adresse, zu der die MAP-Daten innerhalb des MAP-Registers übertragen werden sollen. Ein vierter Zähler 34 wird im
Zusammenhang mit der Wortzähllogik benutzt, wie unten noch genauer erläutert wird.
909830/0823
Die in Fig.1 unten und in Fig.3 allgemein dargestellte
Wortzähllogik empfängt eine Wortzahl (d.h. eine Darstellung
der Gesamtzahl der Wörter, die in dem Datenwortblock übertragen werden sollen) von den Schnittstellen der Einheiten
am Schnellkanal-Bus 10 oder aus dem Zählerregister 34 im Schnellkanal selbst, wobei die Bits der Wortzahl mit
WCNT 1-7 angegeben sind. Die Wortzähllogik zählt die Anzahl der Wörter für die Datenübertragung, was
bedeutet, daß der Stand eines AufwärtsZählers 36 mit jedem übertragenen Wort erhöht wird, und daß dieser Zähler
schließlich die Beendigung der Operation durch Abgabe eines Signals LSAT ADDä anzeigt, wenn das letzte Wort übertragen
worden ist.
Für einen MAP-Datenübertragungsbefehl muß eine entsprechende
Software ebenfalls eine Wortzahl liefern. Die E/A-Steuerlogik 42 decodiert die Wortzahl des MAP-Datenübertragungsbefehls
undJeitet die Information über den Datenprozessor-Bus
22 und das Pufferregister 37 zum Aufwärtszähler Der Aufwärtszähler 34 wird im Takt mit dem Wortzähler
fortgeschaltet, und er zeigt Mehrfach-MAP-Registerübertragungen durch ein entsprechendes Signal SET MULTI an.
Eine zusätzliche Logik in der E/A-Steuerlogik 42 liefert zur Anzeige derRichtung der MAP-Ubertragung ein Kennzeichensignal,
d.h. ein Signal zur Kennzeichnung einer MAP-Ladeoperation oder einer MAP-Umspeicheroperation;
die Lieferung dieses Kennzeichensignals erfolgt über ein E/A-Kennzeichenregister 38 und über Treiber 39.
Ferner liefert die zusätzliche Logik über ein Fehlerkennzeichenregister
HO und über Treiber 41 eine Anzeige darüber, ob während einer Datenübertragung ein Fehler
aufgetreten ist.
Bei dem in den Figuren 1 bis 3 dargestellten Schnellkanal
werden zwei Adressierungsarten angewendet. Die erste Adressierungsart ist eine absolute (oder direkte)
Adressierungsart, bei der die Adresse benutzt wird, die
909830/0823
von der Schnellkanal-Schnittstelle zum Auffinden der Adresse des ersten Worts (d.h. des Beginns) eines
Speicherdatenblocks angegeben wird, der übertragen werden soll. Im Verlauf der Datenübertragung schaltet
die Schnittstelle die absolute Adresse fort, damit nachfolgende Speicherplätze erfaßt werden.
Die zweite Adressierungsart ist eine logische,(d.h. eine gelistete) Adressierungsart, bei der eine Tabellenleseprozedur
in den MAP-Registern durchgeführt wird, damit die logische Seitenadresse, die von der aktiven
Schnellkanal-Schnittstelle angegeben wird, in eine absolute Seitenadresse übersetzt wird. Die Schnellkanal-Steuereinheit
definiert die höherwertigen Bits einer Speicheradresse (PBK 0-2, ADDR 1-5) als die
Seitenadresse und die niederwertigen Bits (ADDR 6-15) als die Wortadresse in der ausgewählten Seite wie
oben erläutert wurde.In einem bevorzugten Ausführungsbeispiel kann Jede Seitenadresse eine Gruppe aufeinanderfolgender
Speicherplätze enthalten (im hier beschriebenen Ausführungsbeispiel können 1024 aufeinanderfolgende
Speicherplätze vorhanden sein). Die zugeordnete Wortadresse gibt einen einzelnen Speicherplatz innerhalb
einer bestimmten ausgewählten Seite an. Während eines Betriebs mit logischer Adressierung gibt die logische
Seitenadresse eine Registereintragung in den MAP-Registern an, und der Inhalt dieses Registers übersetzt dann die logiscshe Seitenadresse so, daß die
absolute Seitenadresse erzeugt wird, die daraufhin mit der logischen Wortadresse (APDR b-15) zur Bildung
einer absoluten Adresse vereinigt wird, die dem Speicher über Treiber 23 am Absolutadressen-Bus 21 zugeführt wird.
Im Verlauf der Datenübertragung schaltet die Schnittstelle die logische Adresse fort, damit aufeinanderfolgende
Speicherplätze erfaßt werden.
909830/0823
Wenn während des sequentiellen Adressenverfolgungsprozesses
die Schnittstelle der jeweiligen Einheit die-logische Seitenadresse
fortschaltet, legen die MAP-Register eine neue absolute Seitenadresse für den Zugriff auf einen anderen
Block aus Speicherplätzen fest. In Fig.4 sind die Adressenformate für das Kanaladressenwort und die Absolutadressenwörter
angegeben, wie sie bei den absoluten und logischen Adressierungsarten benutzt werden. Demgemäß kann das
Kanaladressenwort direkt als Absolutadressenwort geliefert werden, wie es in Fig.4. links dargestellt ist, oder es kann
als logisches Adressenwort geliefert und entsprechend von den MAP-Registern zur Erzielung des Absolutadressenworts
übersetzt werden, wie in Fig.4 rechts dargestellt ist.
In dem in den Figuren 1 bis 3 dargestellten bevorzugten Ausführungsbeispiel legt der Schnallkanalbus 10 insgesamt
14 Signale an die Schnittstellen der Kanaleinheiten«. Diese Signale sind das iaktsynchronisierungssignal STfOIEÖUK,
die Übertragungsanforderungssignale RSCTTlJZP7, die
Ütertragungssteuersignale RlIlDT, MTI, TEUfCTSURSR und
DA^A ERROR , die Kanalsteuersignale WCNT φ-7 , HSC ENB PAR, HFSC MAP und StT9 die Adressen
signal UBK φ-2, XCA p-2, CIT^T5 und BSc~~ÄFSR sowie
die Datensignale HSC p-15 und "HSC DPAlL
Das Taktsignal SYN CLOCK synchronisiert alle Tätigkeiten auf dem Schnellkanal-Bus 10. Die fallende Flankswird
zum Abtasten des gesamten Informationsflusses zwischen dem Schnellkanal und den Kanalschnittstellen benutzt.
Tie Periodendauer des Taktelgnals STfTcXOCK ändert sich„
wobei die minimale Periodendauer in einer bevorzugten Ausführung 200 ns beträgt,, was einer maximalen Datenübertragungsfrequenz
von 5 MHz entspricht. Die Periodendauer kann verlängert werden«, wenn der Schnellkanal verzögert
wird, während er auf einen Speicherzyklus wartet.
Jede Kanalschnittstelle weist ihre eigene Anforderungsleitung zur Auslösung von Datenübertragungen auf, wobei die
entsprechenden Signale als die Schnellkanal-Übertragungsanforderungssignale HSCR ß-7 bezeichnet sind. Jedem Übertragungsanforderungssignal
ist eine Priorität zugeordnet, wobei das Signal HSCR7 die höchste Priorität und das
Signal HSCR 0 die niedrigste Priorität hat. Die Anforderungsleitungen
sind in der bevorzugten Ausführungs-, form parallel zu allen Schnittstellen geführt, so daß
jede Schnittstelle feststellen kann, ob eine andere Schnittstelle eine Anforderung abgibt. Konkurrierende
Anforderungen von Schnittstellen nach einem Speicherzugriff werden von den Schnellkanal-Schnittstellen
entsprechend gelöst, und in einer bevorzugten Ausführungsform ist eine dieser Lösungen so ausgeführt
worden, daß jeder Schnittstelle ein eindeutiges Anforderungssignal zugewiesen wird (wobei diese Zuweisung
im Zeitpunkt der Systemzusammenstellung erfolgt). Der Schnellkanal überwacht alle Anforderungsleitungen, Jedoch
bestimmt nur eine Schnittstelle selbst, ob sie die Anforderung mit der höchsten Priorität abgibt; die Schnittstelle,
die eine solche Anforderung mit höchster Priorität abgibt, gibt dann ein Adressen- und Kanalsteuerwort
ab und überträgt den Datenblock.
Die Übertragungssteuersignale enthalten die Signale READY, DTTS, ADDR ERROR und DATA ERROR. Der Schnellkanal
nimmt nur dann Übertragungsanforderungen an, wenn er bereit ist, sie auch zu verarbeiten; eine
Übertragungsanforderung, die aufgetreten ist, bevor der Schnellkanal bereit ist, wird verzögert, bis
der Schnellkanal das Signal READY wirksam macht. Sobald das Signal REEDY wirksam gemacht ist,- legt
die Schnittstelle, die die Anforderung mit der höchsten Priorität abgibt, ein Adressen- und ein Kanalsteuerwort
im Zeitpunkt der Flanke des ersten Taktsignals SYN CLOCK im Anschluß an die READY-Anzeige an den Bus an.
Wenn die Übertragungsrichtung zum Speicher vorliegt, wird das Signal RfiAUY am Beginn der Übertragung des
909830/0823
letzten Worts im Block erneut wirksam gemacht. Wenn die Übertragungsrichtung aus dem Speicher vorliegt, wird
das Signal READY am Beginn der Übertragung des vorletzten Worts im Block erneut wirksam gemacht. Dieser
Vorgang erlaubt eine Überlappung zwischen der Übertragung der Kanalsteuerinformation und der Übertragung
von Daten.
Während der eigentlichen Datenübertragung macht der Schnellkanal das Signal DATA wirksam. Datenworübertragungen
finden im Zeitpunkt der Taktsignalflanken statt, wenn das Signal DATA wirksam ist. Der Schnellkanal
kann das Taktsignal um kurze Zeitperioden während des Datenaustausche verzögern, wenn der Speicher nicht
bereit ist, damit Überlauf/Unterlauf-Bedingungen innerhalb
des Schnellkanals verhindert werden.
Der Schnellkanal prüft auch auf ungerade Parität der Adressen-und Dateneingangswörter, wenn die Parität
freigegeben ist. Der Datenkanal informiert dann die Schnittstellen über Adressenparitätsfehler (ADDR ERROR)
und Datenparitätsfehler (DATA ERROR), damit die aktive Schnittstelle korrigierend eingreifen kann. Wenn der
Schnellkanal ein Adressenparitätsfehlersignal zur Wirkung bringt, wird die Datenübertragung abgebrochen,
und der Schnellkanal macht im Verlauf des folgenden Zyklus das Signal READY wirksam.
Weitere KanalSteuersignale, die von den Einheiten empfangen
werden, sind die Signale HSC DATA IN, WCNT ß-7, rise ENB FAR, HSC MAP und ETT.
Das Schnellkanal-Dateneingabesignal HSC DATA IJM gibt die
Richtung der anschliessenden Datenübertragung an (d.h. eine Eingabeübertragung zum Schreiben von Daten in den
Speicher oder eine Ausgabeübertragung zum Lesen von Daten aus dem Speicher); das Wortzahlsignal WCNT 0-7
909830/0823
gibt die Anzahl der Datenwörter des Datenblocks an, die übertragen werden sollen. Die Schnittstelle kann
Paritätsprüfungen am Adressendatenwort freigeben, indem das Schnellkanal-Paritätsfreigabesignal HSC ENB PAR
geliefert wird,und sie kann dem Schnellkanal ermöglichen, eine MAP-Adressenübersetzung (HSC MaP) zu erlauben.
Das Erweiterungssignal EXT wird für andere Zwecke in der hier dargestellten bevorzugten Ausführungsform
in Reserve bereitgehalten,(wobei hier keine solchen anderen Zwecke vorgesehen sind )·
Das Adressensignal (CBK ß-2, XCA ψ -2, CA 1-15 und
HSC APAR) gib't eine 21-Bit-Anfangsadresse für eine Datenübertragung an, und bei freigegebener Parität
setzt die Schnittstelle der Einheit das Adressenparitätsbit (HSC APAR) am Adressen-Bus beispielsweise auf
eine ungerade Parität (ungerade Parität bedeutet dabei, daß die Summe aller Bits mit dem Wert "1" im Adressenwort
einschließlich des Paritätsbits ungerade ist). Das Adressenzählerregister 24 im Schnellkanal hält die
Anfangsadresse fest und schaltet dann mit dem Fortgang der Datenübertragung weiter. Der Zähler kann
absolute Adressen erzeugen, oder die MAP-Register können e4'3 Übersetzung logischer Adressen in absolute
Adressen durchführen, wie oben erläutert wurde.Die Datensignale (HSC (3-15 und HSC DPAR) übertragen 16-Bit-Datenwörterjbei
freigegebener Parität wird das Paritätsbit (HSC DPAR) so eingestellt, daß auf dem Daten-Bus
eine ungerade Parität aufrechterhalten wird.
Die Schnellkanalsteuerung wird mit einer entsprechenden Firmware ausgeführt, wie unten noch genauer erläutert wird,
Die Mikroco'degruppen sind in einem Festspeicher (ROM)
909830/0823
gespeichert. In einer bevorzugten Ausführungsform werden
32 Steuerwörter benutzt, die ,jeweils 19 Bits in einem
Mikroprogramm-Adressenraum enthalten. Es sind acht Mikroprogramm-Adressenräume vorhanden, von denen Jeder
eine Betriebsart definiert. Die Lage jedes Mikroprogramm-Adressenraums in den Festspeichern und die ausgeführten
Funktionen sind in der nachfolgenden Tabelle angegeben.
Adresse
000 037
Betriebsart
Standarddatenübertragung MAP, Laden, Umspeiehern
040 077
2-Schritt-Diagnosebetrieb
100 137
Externe Datenübertragung MAP, Laden, Umspeichern
140 177
2-Schritt-Diagnosebetrieb
200 237
Erweiterte Datenübertragung
240 277
Erweiterte Datenübertragung
300 337
Erweiterte Datenübertragung
340 377
Erweiterte Datenübertragung
909830/0823
Der erste Mikroprogrammraum gibt die oben erörterten Standardoperationen an, was bedeutet, daß in diesem
Betrieb Datenübertragungen zu den MAP -Registern (MAP LOAD/DUMP) und Standarddatenübertragungen
an den Schnellkanal-Schnittstellen (STANDARD DATA TRANSFER) mit der normalen Datenübertragungsgeschwindigkeit
(6,67 M-Bytes/s bei der Ausgabe und 10 M-Bytes/s bei der Eingabe) aufrechterhalten werden.
Die zweiten und vierten Mikroprogrammräume definieren Diagnosebetriebsarten, die keinen Teil der Erfindung
bilden und deshalb hier nicht näher erläutert werden müssen. Diese Betriebsarten können beispielsweise zur
Verfügung gestellt werden, damit ein Diagnoseprogrammierer die Schnellkanal-Datenübertragungswege prüfen
kann, die während einer normalen MAP LOAD/DUMP-Folge nicht in Tätigkeit sind. Der dritte Mikroprogrammraum
ist für einen Speicherlesebetrieb mit Dreifachüberlappung bis zu 10 M-Bytes/s reserviert. Speicherschreib-
und MAP-Operationen sind die gleichen wie im
Standardbetrieb. Die letzten vier Räume sind in dem hier beschriebenen, bevorzugten Ausführungsbeispiel
für spätere Anwendungen reserviert, die keinen Teil der Erfindung bilden und deshalb hier nicht näher
beschrieben werden müssen.
Beispiele über den Verlauf der Signale SYW (JLüÜk, TO3UE5T,
RKADY, und DATA an den Schnellkanal/Steuer-Schnittstellen sind in den Figuren 5 und 6 für verschiedene Dateneingabe-
und Datenausgabefälle dargestellt.
909830/0823
In Fig.5 ist der Fall einer einzelnen Anforderung zur
Übertragung eines einzigen Worts in den Speicher angegeben, wobei die entsprechenden Beziehungen zwischen den
Signalen gezeigt sind(an Hand der Signale A in Fig.5). Es sind auch andere Falle mit Übertragungsvorgängen
beim Lesen eines einzigen Worts im Speicher (Signal B),mit Mehrwortübertragungen
(Signal C) und Mehrfachanlorderungen (Signale D, E und F) angegeben. Ähnliche Situationen sind für den
Fall der Datenausgabe in Fig.6 dargestellt.
In den Fig.1 bis 3 sind ein Gesamtblockschaltbild des Daten-Schnellkanals
(Fig.Ό und genauere Darstellungen der darin enthaltenen Blöcke (Fig.2 und 3) dargestellt;
die genauen Logikdiagramme werden an Hand der Fig.7 bis 16 beschrieben.
In den Figuren 7 bis 12 sind Logikdiagramme für die Schnellkanal-Steuer- und Schnellkanaltakt-Logik
12 dargestellt. Ein Schnellkanal-Anforderungssignal (HSCRji-7) aus einer der acht Schnittstellen (siehe
Fig.2) wird der Logik 50 (Fig.7) zusammen mit dem Signal REQ TEST zugeführt, damit bestimmt wird, ob
eine Datenübertragung verlangt wird, und es wird zusammen mit einem Signal MAP TEST zugeführt, damit
bestimmt wird, ob eine MAP-Übertragung verlangtwird. Die Logik 50 sorgt für eine Kombination aus RM-Adressensignalen
(RADß-3), die programmierbaren Festspeichern 51 (Fig.8) zum Starten einer Datenübertragung zugeführt
werden, wenn ein Schnellkanal-Speichersteuersignal (HSCMC1) vorhanden ist und das Letztadressensignal
(LAST ADDR) aus einem vorherigen Übertragungsvorgang
909830/0823
nf.
wirksam gemacht ist, das Ende der Übertragung anzeigt. Gleichzeitig wird von der Logik 52 (Fig.11) das Signal
READY an die Schnittstelle (Fig.2) geliefert.
Der Empfang des Signals READY durch die Schnittstelle ermöglicht dann der die Anforderung abgebenden Einheit
ihre Adresseninformation entweder für eine Speicherleseoperation oder eine Speicherschreiboperation zu liefern.
Für den Fall einer Schreiboperation liefert die Einheit das Signal HSC DATA IN (siehe Fig.2). Das Signal HSCMAP
zeigt an, ob die logische oder die absolute Adressierungsart angewendet werden soll. Wenn Daten zum oder vom
Speicher übertragen werden sollen, werden die entsprechende Speicheradresse und die Anzahl der zu übertragenden
Datenwörter von der Schnittstelle geliefert. Wenn die Parität der Adresse und der Daten geprüft werden soll,
liefert die Daten-Einheit auch das Signal HSC ENAB PAR.
Die Logik 55 mit den Abschnitten 55A bis 55D reagiert
auf die Ausgangssignale der programmierbaren Festspeicher 51 und liefert die verschiedenen angegebenen Steuersignale
für die interne Anwendung im Schnellkanal zum Betrieb der ve.schiedenen, im Zusammenhang mit den Figuren 1 bis
3 erläuterten Einheiten. Wenn der Kanal für die eigentliche Datenübertragung bereit ist, wird das Datensignal
an der Logik 55C wirksam gemacht, und bei jedem Taktsignal wird ein Datenwort übertragen, bis der gesamte
Block aus Datenwörtern übertragen worden ist; in diesem Fall wird dann durch das Letzadressensignal am Ausgang
des Aufwärtszählers 36 (Fig.3) die weitere Wirksammachung
des Signals DATA verhindert, so daß der Datenschnellkanal in einen Zustand für nachfolgende Datenübertragungen als
909830/0823
Antwort auf ein neues Anforderungssignal versetzt wird.
Das an der Logik 58 von Hg.9 angegebene Systemtaktsignal
SYS CLK wird zur Erzeugung des Signals SYN CLK und des Signals HSC CLK benutzt. Die übrige Logik des
Schnellkanals, die die verschiedenen Treiber, Puffer, Datenregister, Paritätsgeneratoren, Multiplexer und
die MAP-Regibter enthält, repräsentiert dem Fachmann
bekannte Logikstrukturen, die hier nicht näher erläutert werden müssen. Sobald die gesamten Datenweg- und Adressenweg-Strukturen
der Figuren 1 bis 4 und die Steuerlogik der Einheit 12 gemäß den Figuren 7 bis 12 bekannt sind,
liegen der Aufbau und der Betrieb des Gesamtsystems im Bereich des fachmännischen Könnens.
Zum weiteren Verständnis der Arbeitsweise des Schnellkanals trägt die Betrachtung der in den Figuren 13 und 14 dargestellten
Flußdiagramme bei. Das Flußdiagramm in Fig.13 zeigt die bei einer Datenübertragung angewendeten Schritte,
und das Flußdiagramm von Fig.14 zeigt die bei einer MAP-Übertragung
angewendeten Schritte.
Wenn der Schnellkanal für die Annahme einer Anforderung eingestellt ist,(d.h. sich im RESET-Zustand befindet),
dann macht er gemäß Fig.13 das Signal READY wirksam, und prüft, ob die Datenübertragungsanforderung von einer
Schnittstelle einer Einheit kommt. Wenn derzeit gerade keine Datenanforderung vorliegt, prüft der Schnellkanal
dann, ob eine MAP-Übertragung verlangt worden ist. Wenn
dies der Fall war, führt der Schnellkanal die unten im Zusammenhang mit Fig.14 erläuterten Schritte durch. Wenn
gerade keine MAP-Übertragungsanforderung vorliegt, verbleibt
909830/0823
der Schnellkanal im RESET-Zustand und durchläuft erneut
den gleichen Prozeß.
Wenn der Datenübertragungsanforderungstest (REQ TEST) zeigt, daß eine Einheit eine Datenübertragung verlangt,
beginnt der Schnellkanal die Übertragungsoperation und lädt die Steuer information atßder Einheit, die für eine
solche Datenübertragung benötigt wird. In diesem Zustand beendet der Schnellkanal die Wirksammachung des Signals
READY. Entsprechend der Schnellkanal-Bus-Vereinbarung meldet dieser Vorgang der Schnellkanal-Schnittstelle,
daß sie mit der nächsten SYNCLK-Flanke ein Kommandowort aussendet. Das Kommandowort besteht aus der logischen
oder absoluten Anfangsspeicheradresse, der Wortzahl, der Übertragungsrichtung und Angaben darüber, ob ein Mapping-Vorgang
oder eine Paritätsprüfung angewendet werden soll.
Der Schnellkanal startet dann den Speicher. Wenn eine Leseübertragungsoperation angezeigt wird, wird die Wirksammachung
des Signals DATA vorübergehend gesperrt, bis der Zugriff auf den Anfangsspeicherplatz, an dem
der LeseVorgang stattfinden soll, erfolgt ist. Außerdem
muß das Signal READY gesperrt werden, so daß keine andere Einheit während der DatenUbertragungsoperation einen Zugriff
auf den Schnellkanal ausüben kann, wenn die Datenübertragung nicht nur das Schreiten eines einzigen Worts umfaßt. Eine
solche einzelne Schreiboperation läuft genügend schnell ab, so daß das Signal READY nicht gesperrt werden muß, da eine
solche einzige Schreiboperation beendet ist, wenn eine anschließend eine Anforderung abgebende Einheit zur
Durchführung ihrer Datenübertragung bereit ist.
909830/0823
Wenn ein Adressenparitätsfehler festgestellt wird, muß das System wieder zurückgestellt werden, damit die die
Anforderung abgebende Einheit die erforderliche Fehlerkorrektur durchführen kann, bevor sie erneut eine Datenübertragung
verlangt.
Die Speicher werden gestartet und mit Überlappung entweder gelesen oder geschrieben, bis alle Wörter des
Blocks übertragen sind. Im Mikrocode werden für Übertragungsvorgänge
zum Lesen eines Worts, zum Schreiben eines Worts, zum Lesen mehrerer Wörter und zum Schreiben mehrerer
Wörter verschiedene Wege eingeschlagen. Wenn beim übertragen eines Datenblocks eine weitere Anforderrung
(von einer anderen Schnittstelle) auftritt, arbeitet der Mikrocode so, daß die Übertragung des Kommandoworts
für die zweite Anforderung das Ende der Übertragung der Daten für die erste Anforderung überlappt.
Wenn die Übertragung eine Übertragung zum Schreiben mehrerer Wörter sein soll, sorgt der Schnellkanal nach Fig.13
für ein mehrfaches Schreiben aufeinanderfolgender Datenwörter innerhalb eines Datenblocks in den Speicher, bis
die Wortzahl den Wert 1 erreicht, d.h. das vorletzte Wort übertragen worden ist. Der Schnellkanal führt
dann einen Anforderungstest durch, um festzxistellen,
ob eine andere Einheit gerade eine Übertragungsanforderung abgibt. Ist dies der Fall, kann die kombinierte
Operation als Simultanoperation (back-t®-back-Operation) bezeichnet werden. Ist dies nicht der Fall, schreibt das
System das letzte Wort (als handle es sich um eine einzige Schreiboperation), und es führt dann erneut die notwendigen
Anforderungstest-und MAP-Testoperationen durch, damit bestimmt
wird, ob irgendeine anschliessende Anforderung vorliegt.
909830/0823
Ist dies nicht der Fall, geht das System in den Ruhezustand (EESET-Zustand) über und beginnt erneut mit
dem Prozeß.
Wenn eine Simultan-Schreiboperation verlangt wird, schreibt der Schnellkanal das letzte Wort der ersten
Anforderung und empfängt wieder gleichzeitig die notwendige Steuerinformation für die nachfolgende Datenblock-Schreibübertragung.
Anschliessend startet der Schnellkanal sofort die erste Speicheradresse für die nächste Schreibübertragung und empfängt das erste
Datenwort von der Schnittstelle. Wenn die Datenübertragung eine Mehrwort-Leseübertragung sein soll, liest
der Schnellkanal aufeinanderfolgende Wörter des Datenblocks, auf den ein Zugriff im Speicher ausgeübt worden
ist, bis die Wortzahl den Wert O erreicht, d.h. alle
Wörter aus dem Speicher erfaßt worden sind. Der Schnellkanal führt dann einen weiteren Anforderungstest durch,
um festzustellen, ob eine andere Einheit die Durchführung einer Simultanübertragung wünscht; falls dies zutrifft,
lädt der Schnellkanal die notwendigen Steuerinformationen für diese nachfolgende Übertragung und fährt mit der Durchführung
dJ3ser Übertragung fort. Wenn keine Anforderung nach einer Simultanübertragung vorliegt, macht der Schnellkanal
erneut das Signal READY wirksam und durchläuft die Anforderungs- und MAP-Testvorgänge wie vorher.
Wenn die Leseanforderung einem einzigen, im Speicher zu lesenden Wort gilt, liest der Schnellkanal dieses einzige
Wort und macht dann erneut sein Signal READY wirksam; wie zuvor führt er einen Anforderungstest aus, um festzustellen,
ob eine SimiaiLtanÜbertragung erforderlich ist
oder nicht.
909830/0823
Wenn ein MAP-Übertragungstest zeigt, daß die Zentraleinheit
eine MAP-Ubertragung verlangt hat, startet der
Schnellkanal die MAP-Übertragungsoperation, wie in Fig.14
angegeben ist. Zunächst wird die Adresse im Speicher, an der sich die gewünschten MAP-Daten befinden, in das Adressenzählerregister
24 über die Register 31 und 33, den Multiplexer 43 und den Puffer 44 geladen (siehe Fig.3).
Die MAP-Übertragungswortzahl wird ebenfalls über das
Register 34 und den Treiber 35 in das Wortzahlregister 36 geladen. Das Signal READY wird wirksam gemacht, und
ein Datenübertragungsanforderungstest wird durchgeführt, damit bestimmt wird, ob eine Datenübertragung verlangt
wird.
Wenn dann eine Datenübertragung verlangt wird, wird die MAP-Übertragungsoperation verschoben, und die Datenübertragung
beginnt,Die Datenadresse wird in das Register
geladen und überschreibt die darin befindliche MAP-Datenadresse. Das Wortzahlregister 36 wird ebenfalls über-,
schrieben.
Während die Register 31 und 33 die MAP-Datenadresse enthält und das Register 34 die V/ortzahl enthält,
wird die Datenübertragung ausgeführt (Fig.13). Der Inhalt dieser Register wird nicht modifiziert (fortgeschaltet),
bis ein MAP-Wort tatsächlich übertragen wird. Wenn keine Datenübertragung verlangt wird, wird
die Übertragung der MAP-Daten fortgesetzt.
Der Speicher wird gestartet, und die Adresse der MAP-Daten wird über den Treiber 23 und den Adressen-Bus
des Bus-Systems 22 in den Speicher eingegeben. Die
909830/0823
Adresse des MAP-Register, in das die MAP-Daten geladen
werden sollen, wird dann nach der Gültigmachung des
Signals INC über das Register 32, den Multiplexer 43 und den Puffer 44 in das Adressenregister 24 geladen.
Der Schnellkanal ist dann für die MAP-Ubertragung bereit;
er stellt fest, ob die Übertragung vom Speicher in die MAP-Register (eine MAP-Ladeoperation) oder aus dem MAP~
Register in den Speicher (eine MAP-Umspeicheroperation) stattfinden soll.
Wenn eine Leseoperation (Mehrfachladeoperation) erforderlich ist, wird der laufende Speicherplatz im Speicher
gelesen, und die Speicherdaten werden über das Bus-System 22 und den Puffer 16 aus dem Speicher in das
HSC OUT-Register 11 getaktet und mit dem gleichen Takt wird der Speicherplatz der von der MAP-Adresse angegebenen
Daten in das Adressenregister 24 getaktet.Die im HSC OUT-Register
vorhandenen MAP-Daten werden dann in das MAP-Register an der im Adressenregister 24 vorhandenen MAP-Adresse
geladen, und die nächste Speicheradresse wird für das Laden in das Adressenregister 24 eingestellt.
Das Signal READY wird erneut wirksam gemacht, und ein Datenübertragungsanforderungstest wird durchgeführt,
damit bestimmt wird, ob eine Datenübertragung verlangt wird. Wenn eine Datenübertragung verlangt wird,wird sie
wie zuvor ausgeführt (Fig.13).
Wenn keine Datenübertragung verlangt wird, wird die übertragung
von MAP-Daten in die MAP-Registereinheit wie zuvor fortgesetzt (wobei der Datenanforderungstest
909830/0823
nach jeder aufeinanderfolgenden Übertragung von MAP-Daten durchgeführt wird), bis das letzte Wort der
MAP- Ladeoperation durch die Anwesenheit des Signals LAST ADDR angezeigt wird, wobei an diesem Zeitpunkt
das letzte Wort der MAP-Daten beim letzten Ladevorgang in die MAP-Registereinheit übertragen wird, wie dargestellt
wurde. Das Signal READY wird wirksam gemacht, und es wird erneut ein Datenanforderungstest ausgeführt.
Wenn eine Datenübertragung verlangt wird, wird ein MAP-Ladevorgang als beendet angezeigt(CLR MAP), und die Datenübertragung
wird mit dem Laden der ersten Adresse des zu übertragenden Datenblocks begonnen; die Datenübertragung
läuft so ab, wie in Fig.13 angegeben ist.
Wenn keine Datenübertragung verlangt wird, wird der MAP-Ladevorgang
als beendet angezeigt (CLR MAP), das Signal READY wird wirksam gemacht und ein neuer Anforderungsl
test wird durchgeführt; das System kehrt zur Startoperation START (Fig.13) zurück, wenn eine Übertragung
verlangt wird, während sie zur Rückstelloperation RESET zurückkehrt, wenn keine Übertragung verlangt wird
(Fig.13).
Die Schreiboperationen (oder MAP-Umspeicheroperationen) und zwar sowohl Mehrfachumspeicheroperationen als auch
Letztumspeicheroperationen, gleichen im wesentlichen den
Leseoperationen oder (MAP-Ladeoperationen); s±e ergeben entsprechende Datenübertragungsanforderungstests sowohl
während des Mehrfachumspeicherprozesses als auch während des Letztumspeicherprozesses, wie dargestellt ist.
909830/0823
e e r s e
Claims (12)
- Patentanwälte 7 Q Π 7 Δ 7 7Dipl -Ing. Dipt -Chem. Dipl -liitj.E. Prinz - Dr. G. Hauser - G. Leiser& r η κ b f? ι g e r s t r ;i s s e 198 München 60Unser Zeichen; D 720 19.Januar 1979DATA GENERAL CORPORATIONRoute S
Westboro, Massachusetts, V.St.A.PatentansprücheDatenverarbeitungsanordnung mit einer Zentraleinheit und einem Speicher, dadurch gekennzeichnet, daß getrennt von der Zentraleinheit eine Übertragungskanaleinrichtung für einen direkten Zugriff durch außerhalb der Zentraleinheit befindliche Eingabe/Ausgabe-Einheiten zu dem Speicher vorgesehen ist, wobei diese Übertragungskanaleinrichtung folgende Baueinheiten enthält:eine Speicherzuordnungseinheit zum Übersetzen logischer Adressen aus einer ausgewählten Eingabe/Ausgabe-Einheit in absolute Adressen für den Speicher,eine Übertragungseinheit zur Erzielung einer direkten Übertragung eines Datenworts oder eines Datenwortblocks zwischen einer ausgewählten Eingabe/Ausgabe-Einheit und dem Speicher und zur Erzielung einer direkten Übertragung von Speicherzuordnungsdaten zwischen der Speicherzuordnungseinheit und dem Speicher,909830/0823eine Adressenübertragungseinheit zum Übertragen von Adressen von der ausgewählten Eingabe/Ausgabe-Einheit zu dem Speicher undeine Steuereinheit, die abhängig von einer Anforderung nach einer Datenübertragung von einer ausgewählten Eingabe/Ausgäbe-Einheit und abhängig von Eingangssignalen von der Eingabe/Ausgabe-Einheit, die die Datenübertragungsrichtung kennzeichnen und Angaben, ob die Datenübertragung eine Speicheradressenübersetzung durch die Speicherzuordnungseinheit erfordert, die übertragung der Adressen, der Datenwörter und der Speicherzuordnungsdaten steuert. - 2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Übertragungseinheit für die Datenwörter eine Einrichtung enthält, die in Abhängigkeit von die Anzahl der zu übertragenden Datenwörter kennzeichnenden Daten die Datenwörter bei ihrer sequentiellen Übertragung zwischen den Eingabe/itusgabe-Einheiten und dem Speicher zählt und ein Signal abgibt, wenn das letzte Datenwort übertragen worden ist.
- 3. Anordnung nach Anspruch 2, gekennzeichnet durch eine Fehlerfeststellungseinheit, die feststellt, ob ein Datenwortfehler aufgetreten ist und die Datenwort-Übertragung anhält, bis der Fehler korrigiert worden ist.
- 4. Anordnung nach Anspruch 3, gekennzeichnet durch eine weitere Fehlerfeststellungseinheit zur Feststellung eines Adressenfehlers und zum Anhalten der übertragung909830/0823von Datenwörtern, bis der Fehler korrigiert worden ist.
- 5. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Datenübertragungseinheit und die Speicherzuordnungseinheit gemeinsame Datenübertragungswege in der Übertragungskanaleinrichtung enthalten, die die Datenwörter und die Speicherzuordnungsdaten übertragen können.
- 6. Anordnung nach Anspruch 5» gekennzeichnet durch eine Multiplexiereinheit zum fllultiplexierten übertragen der Datenwörter und der SpeicherZuordnungsdaten aus der Übertragungskanaleinrichtung in den Speicher.
- 7. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Adressenübertragungseinheit eine Adressenregistervorrichtung enthält, die während der übertragung von Speicherzuordnungsdaten in die Speicherzuordnungseinheit abhängig von ersten Adressen, die die Speicherplätze im Speicher entsprechend den Speicherzuordnungsdaten identifizieren, und abhängig von zweiten Adressen, die die Speicherplätze in der Speicherzuordnungseinheit identifizieren, an denen die Speicherzuordnungsdaten untergebracht werden sollen, arbeitet.
- 8. Anordnung nach Anspruch 6, dadurch gekennzeichnet, daßdie Adressenübertragungseinheit außerdem eine Multiplexiereinheit zum multiplexierten Übertragen der ersten und zweiten Adressen in die Adressenregistervorrichtung enthält.909830/0823
- 9. Anordnung nach Anspruch 8, dadurch gekennzeichnet, daß die Adressenzählvorrichtung angibt, wann die letzten Speicherzuordnungsdaten in die Speicherzuordnungseinheit übertragen worden sind.
- 10. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daßdie Adressen eine Seitenadresseninformation, und eine Wortadresseninformation enthalten, daß die Adressenübertragungseinheit einen ersten Übertragungsweg für die direkte Übertragung der Wortadresseninformation in den Speicher enthält und daß die Adressenübertragungseinheit außerdem einen zweiten Übertragungsweg enthält, mit dessen Hilfe die Seitenadresseninformation wahlweise direkt in den Speicher oder zur Übersetzung in die absolute Seitenadresse zur anschliessenden direkten Übertragung in den Speicher in die Speicherzuordungseinheit übertragen werden kann.
- 11. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Steuereinheit eine Vorrichtung zur Abgabe eines Bereitschaftssignals an die ausgewählte Eingabe/Ausgäbe-Einheit enthält, das anzeigt, wenn die Übertragungskanaleinrichtung für die Datenübertragung bereit ist, und daß eine Vorrichtung zur Abgabe eines Datensignals vorgesehen ist, das die Übertragung eines oder mehrerer Datenwörter erlaubt.
- 12. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Steuereinheit außerdem eine Vorrichtung enthält, die abhängig von einem Paritätsfreigabesignal aus der Eingabe/ Ausgabe-Einheit die Feststellung von Fehlern in den Adressen und in den Datenwörtern steuert.909830/0823
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US87169078A | 1978-01-23 | 1978-01-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2902477A1 true DE2902477A1 (de) | 1979-07-26 |
Family
ID=25357925
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19792902477 Ceased DE2902477A1 (de) | 1978-01-23 | 1979-01-23 | Datenverarbeitungsanordnung |
Country Status (12)
Country | Link |
---|---|
JP (1) | JPS54121032A (de) |
AU (1) | AU526317B2 (de) |
BR (1) | BR7900407A (de) |
CA (1) | CA1128213A (de) |
CH (1) | CH641581A5 (de) |
DE (1) | DE2902477A1 (de) |
DK (1) | DK157954C (de) |
FR (1) | FR2415336B1 (de) |
GB (1) | GB2013006B (de) |
IT (1) | IT1110622B (de) |
NL (1) | NL7900439A (de) |
SE (1) | SE444996B (de) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4459677A (en) * | 1980-04-11 | 1984-07-10 | Ampex Corporation | VIQ Computer graphics system |
US4476527A (en) * | 1981-12-10 | 1984-10-09 | Data General Corporation | Synchronous data bus with automatically variable data rate |
GB2138182B (en) * | 1983-04-14 | 1986-09-24 | Standard Telephones Cables Ltd | Digital processor |
US4607365A (en) * | 1983-11-14 | 1986-08-19 | Tandem Computers Incorporated | Fault-tolerant communications controller system |
US4847750A (en) * | 1986-02-13 | 1989-07-11 | Intelligent Instrumentation, Inc. | Peripheral DMA controller for data acquisition system |
JP2570847B2 (ja) * | 1989-02-08 | 1997-01-16 | 日本電気株式会社 | データ転送方式 |
CN108241516B (zh) * | 2018-02-09 | 2021-06-18 | 深圳科立讯通信有限公司 | 嵌入式系统程序加载方法、装置、计算机设备和存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3673576A (en) * | 1970-07-13 | 1972-06-27 | Eg & G Inc | Programmable computer-peripheral interface |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1447297A (en) * | 1972-12-06 | 1976-08-25 | Amdahl Corp | Data processing system |
US3976977A (en) * | 1975-03-26 | 1976-08-24 | Honeywell Information Systems, Inc. | Processor for input-output processing system |
JPS522231A (en) * | 1975-06-24 | 1977-01-08 | Hitachi Ltd | Information processing apparatus |
JPS5272543A (en) * | 1975-12-15 | 1977-06-17 | Hitachi Ltd | Channel equipment of having address converting function |
US4055851A (en) * | 1976-02-13 | 1977-10-25 | Digital Equipment Corporation | Memory module with means for generating a control signal that inhibits a subsequent overlapped memory cycle during a reading operation portion of a reading memory cycle |
-
1979
- 1979-01-04 DK DK003979A patent/DK157954C/da not_active IP Right Cessation
- 1979-01-08 SE SE7900138A patent/SE444996B/sv not_active IP Right Cessation
- 1979-01-09 AU AU43227/79A patent/AU526317B2/en not_active Ceased
- 1979-01-19 NL NL7900439A patent/NL7900439A/xx not_active Application Discontinuation
- 1979-01-22 GB GB792152A patent/GB2013006B/en not_active Expired
- 1979-01-22 BR BR7900407A patent/BR7900407A/pt unknown
- 1979-01-22 FR FR7901557A patent/FR2415336B1/fr not_active Expired
- 1979-01-23 CA CA320,119A patent/CA1128213A/en not_active Expired
- 1979-01-23 IT IT19549/79A patent/IT1110622B/it active
- 1979-01-23 CH CH67379A patent/CH641581A5/de not_active IP Right Cessation
- 1979-01-23 JP JP648579A patent/JPS54121032A/ja active Granted
- 1979-01-23 DE DE19792902477 patent/DE2902477A1/de not_active Ceased
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3673576A (en) * | 1970-07-13 | 1972-06-27 | Eg & G Inc | Programmable computer-peripheral interface |
Non-Patent Citations (1)
Title |
---|
BASS, J.E., A Peripheral-Oriented Microcomputer System, Nachdruck der S. 860-873 der Proceedings of the IEEE, Vol. 64, Juni 1976, S. 122-135 * |
Also Published As
Publication number | Publication date |
---|---|
AU4322779A (en) | 1979-08-02 |
DK157954B (da) | 1990-03-05 |
IT1110622B (it) | 1985-12-23 |
GB2013006A (en) | 1979-08-01 |
IT7919549A0 (it) | 1979-01-23 |
FR2415336A1 (fr) | 1979-08-17 |
AU526317B2 (en) | 1983-01-06 |
CA1128213A (en) | 1982-07-20 |
NL7900439A (nl) | 1979-07-25 |
CH641581A5 (de) | 1984-02-29 |
GB2013006B (en) | 1982-08-25 |
JPS6259821B2 (de) | 1987-12-12 |
SE7900138L (sv) | 1979-07-24 |
SE444996B (sv) | 1986-05-20 |
JPS54121032A (en) | 1979-09-19 |
DK3979A (da) | 1979-07-24 |
FR2415336B1 (fr) | 1987-04-24 |
DK157954C (da) | 1990-08-13 |
BR7900407A (pt) | 1979-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0013737B1 (de) | Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem | |
DE3151745C2 (de) | ||
EP0163096B1 (de) | Einrichtung zur Rettung eines Rechnerzustandes | |
DE2617408B2 (de) | Speichermodul für ein Datenverarbeitungsgerät mit Speicherhierarchie | |
EP0228559A1 (de) | Fehlertolerante Mehrrechneranordnung | |
WO2005073865A2 (de) | Vorrichtung zur datenübertragung zwischen speichern | |
DE2441754A1 (de) | Prozessor-datenuebertragungssteueranordnung sowie verfahren zur steuerung der datenuebertragung eines prozessors | |
DE2054830C3 (de) | Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge | |
DE2944419A1 (de) | Digitalrechnersystem | |
EP0134831A1 (de) | Einrichtung im Befehlswerk eines Fliessbandprozessors zur Befehlsunterbrechung und -wiederholung | |
DE19722803A1 (de) | Schaltung zur Verschiebung von Daten zwischen entfernten Speichern und ein diese Schaltung enthaltender Rechner | |
DE19900251B4 (de) | Vorrichtung und Verfahren zum Steuern eines vielseitigen USB-Endpunktkanals | |
DE2530599C2 (de) | Verfahren und Schaltungsanordnung zur Steuerung von Ein-/Ausgabe-Geräten | |
DE2902477A1 (de) | Datenverarbeitungsanordnung | |
DE3650782T2 (de) | Anordnung von Cachespeicherverwaltungseinheiten | |
EP0409330B1 (de) | Schaltungsanordnung zum Steuern des Zugriffs auf einen Speicher | |
DE2749884C2 (de) | ||
EP1308846B1 (de) | Datenübertragungseinrichtung | |
DE10132313A1 (de) | Programmgesteuerte Einheit | |
DE3200042A1 (de) | Datenverarbeitungsanlage mit cache-speicher | |
DE2629311C2 (de) | ||
EP0036148A1 (de) | Hybrid-Assoziativspeicher | |
EP0010625B1 (de) | Hierarchisches Speichersystem | |
EP2728477A1 (de) | Verfahren und Logikschaltung zum Kopieren von Daten, Speichervorrichtung und Datenverarbeitungsvorrichtung | |
DE10361496B4 (de) | Anordnung mit einer Speichereinrichtung und einer programmgesteuerten Einheit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8128 | New person/name/address of the agent |
Representative=s name: PRINZ, E., DIPL.-ING. LEISER, G., DIPL.-ING., PAT. |
|
8125 | Change of the main classification |
Ipc: G06F 13/28 |
|
8131 | Rejection |