DE3013064C2 - Schaltungsanordnung zur Übertragung von Bitgruppen zwischen einer von mehreren peripheren Einheiten und einem Pufferspeicher - Google Patents
Schaltungsanordnung zur Übertragung von Bitgruppen zwischen einer von mehreren peripheren Einheiten und einem PufferspeicherInfo
- Publication number
- DE3013064C2 DE3013064C2 DE3013064A DE3013064A DE3013064C2 DE 3013064 C2 DE3013064 C2 DE 3013064C2 DE 3013064 A DE3013064 A DE 3013064A DE 3013064 A DE3013064 A DE 3013064A DE 3013064 C2 DE3013064 C2 DE 3013064C2
- Authority
- DE
- Germany
- Prior art keywords
- address
- memory
- buffer memory
- signal
- circuit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
- G06F7/78—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor
- G06F7/785—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using a RAM
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/18—Handling requests for interconnection or transfer for access to memory bus based on priority control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Image Input (AREA)
- Storage Device Security (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
Die Erfindung betrifft eine Schaltungsanordnung zur Übertragung von Bitgruppen zwischen einer von
mehreren auswählbaren peripheren Einheiten und einem Pufferspeicher, dessen Plätze der Reihe nach von
einem Adressenspeicher aus adressierbar sind, der mit einem Taktgeber und einer Schrittschaltung derart
zusammenwirkt, daß die dem Pufferspeicher zugeleitete Adresse schrittweise um eine Einheit vergrößerbar ist.
Derartige Pufferspeicher halten die zwischen den Bestandteilen oder Subsystemen einer Rechenanlage zu
übertragenden Paten vorübergehend fest, wenn diese zwischen den Subsystemen oder peripneren Schaltungseinheiten und einer zentralen Rechenanlage oder
zwischen sonstigen Elementen des Systems übermittelt werden.
Zu dem Pufferspeicher der Rechenanlage erhalten die peripheren Geräte und Subsysteme in typischer Weise
nach einem von zwei Verfahren ihren Zugriff. Beim ersten Verfahren ruft eine zentrale datenverarbeitende
ίο Einrichtung regelmäßig die peripheren Geräte und/
oder Subsysteme im Ablauf ihrer Bearbeitungsfunktion ab, um zu bestimmen, ob von ihnen ein Zugriff begehrt
wird. Im positiven Falle wird jene Anforderung als Unterbrechung behandelt und wenn nicht Unterbrechuagen
von höherem Vorrang vorliegen, zweigt oder springt die datenverarbeitende Einrichtung in der
Befehlsfolge zu einer besonderen Stelle hin ab, an der die Speicheradresse der für die Bedienung der
Anforderung gewünschten Routine angeordnet ist oder erzeugt wird. Das Abrufen bietet den Vorteil eines sehr
einfachen Aufbaus der peripheren Geräte, da die logischen Schaltungen in der zentralen datenverarbeitenden
Einrichtung größtenteils verbleiben. Dagegen hat das Abrufen den Nachteil einer Verzögerung
während der Bearbeitung einer Anforderung aus einem peripheren Gerät da das letztere erst angewählt
werden und dann sogar auf seine Bedienung warten muß.
Die Nachteile dieses Verfahrens sucht man bei einer Schaltungsanordnung zur Steuerung der Datenübertragung
zwischen dem Hauptspeicher und zahlreichen peripheren Geräten nach der deutschen Patentschrift
18 01 619 mit Hilfe eines Pufferspeichers zu umgehen, in dem die zu übertragenden Daten zwischengespeichert
werden. Wenn die Ein-/Ausgabe beginnen soll, gibt die zentrale Recheneinheit ein Signal an diese Schaltungsanordnung
ab, die daraufhin, wenn sie frei ist an einer bestimmten Adresse auf den Hauptspeicher zugreift, wo
in codierter Form die Nummer eines, der peripheren Geräte mit weiteren Signalen abgelegt ist die für die
Übertragung zwischen dem betreffenden peripheren Gerät und dem Hauptspeicher benötigt werden. Im
einzelnen umfaßt das hierbei vom Hauptspeicher in ein Pufferregister ausgegebene Wort außer der genannten
Nummer des peripheren Gerätes einen Befehlscode, der die Übertragungsrichtung der Daten, also das Einschreiben
oder Auslesen oder andere Vorgänge vorschreibt ein die Anzahl der zu übertragenden Wörter angebendes
Feld und eine Basisadresse eines im Hauptspeicher
so zu belegenden oder zu entleerenden Speicherfeldes. Außer den soeben genannten Feldern sind im
Puffjrregister weitere Felder vorgesehen, nämlich ein Adressenfeld, von dem aus der Hauptspeicher adressiert
werden kann, ein Wortzählfeld, von dem die der Übertragung unterzogenen Datenwörter gezählt werden,
und ein Zeichenzählfeld, das die Anzahl der Plätze angibt, um die das aus dem Hauptspeicher empfangene
Wort innerhalb des Pufferregisters verschoben wird. Mit diesem Pufferregister arbeitet der bereits genannte
6Q Pufferspeicher zusammen, der 4 bis 8 Wörter von derselben Länge wie das Pufferregister aufnehmen
kann; dabei übersteigt die Anzahl der peripheren Geräte die Anzahl der zwischenzuspeichernden Wörter
erheblich, da normalerweise nicht gleichzeitig mit sämtlichen peripheren Geräten Verbindungen hergestellt
werden sollen. Zur Ein-/Ausgabe der Wörter in den bzw. aus dem Pufferspeicher, die stets über das
Pufferregister vonstatten geht, ist ihm ein Markierungs-
speicher zugeordnet, yon dem die WortplStze des
Pufferspeichei-s adressiert werden. Jede Zeile dieses
Markierungsspeichers ist dafür vorgesehen, eine einzige
Adresse eines bezeichneten perjpheren Gerätes zu
speichern, die während des Einleitungszyklus von der zentralen Recheneinheit eingesetzt wird, wobei nur die
oberste Zeile zur Aufnahme einer neuen Adresse freibleibt
Um Daten an einem bestimmten Wortplatz des Pufferspeichers einschreiben oder auslesen zu können,
wird die dem bezeichneten peripheren Gerät entsprechende Adresse in ein Schlüsselregister eingespeist, die
dann von diesem aus mit allen Adressen des Markierungsspeichers verglichen wird. Im Falle der
Übereinstimmung wird der zugehörige Wortplatz im Pufferspeicher für den Schreib- oder Lesevorgang
angewählt Somit kann jeder Wortplatz des Pufferspeichers mii Hilfe des Markierungsspeichers einem
peripheren Gerät zugeordnet werden, wenn der Ein-/Ausgabevorgang zwischen dem bestimmten peripheren
Gerät und dem Hauptspeicher eingeleitet wird. Zwischen dem Schlüsselregister und den peripheren
Geräten ist eine Dringlichkeits-Bestimmungsmatrix
angeordnet die aus jedem peripheren Gerät ein Anzeigesignal empfangen kann, wenn es für einen
Zugriff auf den Pufferspeicher bereit ist Unter den gleichzeitig je ein Anzeigesignal abgebenden peripheren
Geräten wird von der Dringlichkeits-Bestimmungsmatrix dasjenige bestimmt dem die höchste Priorität
zugeteilt ist von dem nämlich normalerweise der größte Datenfluß zu erwarten ist Zu diesem ermittelten
peripheren Gerät wird ein entsprechendes Signal rückübertragen, das außerdem in eine Code-Bestimmungsschaltung
eingegeben wird, von der die Adresse des peripheren Gerätes aufgestellt und zum Schlüsseiregister
übertragen wird, das mit der höchsten Priorität für einen Zugriff auf den Pufferspeicher bereitsteht.
Bei dieser bekannten Schaltungsanordnung wird eine Auswahl von nur wenigen, nämlich 4 bis 8 peripheren
Geräten infolge der ziemlich geringen Wortkapazität des Pufferspeichers vorweggenommen. Diese Vorwegnahme
erfolgt dabei vom Hauptspeicher aus, da er die Belegung des Pufferspeichers bewirkt während die
peripheren Geräte von sich aus nur passiv anzeigen können, ob sie an der Datenübertragung teilnehmen
können oder nicht und zusätzlich ein ;r Auswahl nach
ihrem Vorrang unterliegen. Falls zufällig unter einer gewissen Anzahl peripherer Geräte, die zur Datenübertragung
bereitstehen, von den im Pufferspeicher gerade aus dem Hauptspeicher aufgenommenen Wörtern
keines ein zu dieser Anzahl peripherer Geräte gehörendes Gerät bezeichnet, war der Pufferspeicher
vergeblich belegt worden, und sein Inhalt muß gelöscht und erneuert werden. Infolgedessen lassen sich Wartezeiten
auf seiten dar peripheren Geräte nicht völlig ausschließen, was für die Anwendung des ersten
Verfahrens typisch ist.
Das zweite Verfahren, um zu einem Pufferspeicher zugreifen zu können, ist ein direkter Zugriff, bei dem die
peripheren Geräte und/oder Subsysteme die zentrale eo datenverarbeitende Einrichtung unterbrechen, ohne auf
ihren Anruf warten zu müssen. Somit sind die dem Anwählverfahren zugeordneten Wartezeiten ausgeschaltet,
aber es müssen kompliziertere logische Schaltungen in die peripheren Geräte eingebaut
werden, damit diese erfahren, was der Pufferspeicher wünscht, (ob also Daten ir :hn eingeschrieben oder aus
ihm ausgelesen werden sollen,) und wo sich die Adresse oder der Plate im Pufferspeicher befindet, an dem der
Vorgang stattfinden soll.
Aus der deutschen Auslegeschrift 15 49 532 ist ein Unterbrechungs-Djrektorschaltwerk für eine Datenverarbeitungsanlage
mit mehreren Rechenanlagen und mehreren peripheren Geräten bekannt Zum Betrieb einer derartigen Datenverarbeitungsanlage sind jeweils
mehrere periphere Geräte, zu einem Satz vereinigt, an
einem gemeinsamen Leitwerk angeschlossen, und insgesamt m Leitwerke werden von dem Direktorschaltwerk
bedient Das einzelne Leitwerk überwacht alle aus den ihm zugeordneten peripheren Geräten
kommenden Anforderungssignale. Eine weitere Funktion der Leitwerke besteht darin, Steuerwörter an die
peripheren Geräte zu richten. Mit ihrer Hilfe wird außerdem die Form der aus einem Speicher ausgegebenen
Datensignale an diejenige angepaßt die von dem speziellen peripheren Gerät benutzbar ist Jedes
Leitwerk verfügt schließlich über ein Unterbrechungs-Vorrangregister
aus mehreren bistabilen Stufen, in dem der größte Unterbrechungsvorrang i« codierter Form
festgehalten wird, der einem der am Leitwerk
angeschlossenen peripheren Geräte zugeteilt ist Somit bewertet eine im Leitwerk enthaltene Abtastschaltung
die Anforderungssignale aus den zugeordneten peripheren Geriiien und stellt einen passenden Code auf, der
den größten Unterbrechungsvorrang unter den zur Unterbrechung auffordernden peripheren Geräten des
betreffenden Satzes festlegt Dieser Code wird im Vorrangregister des betreffenden Leitwerkes abgespeichert
und mit diesen Registern der m Leitwerke steht ein gemeinsamer Leitwerkwähler in Verbindung, der
wiederum eine Abtastschaltung enthält von der der den größten Unterbrechungsvorrang angebende Code ermittelt
und in ein entsprechendes Register des Leitwerkwählers übernommen wird. Zugleich ermittelt
der Leitwerkzähler dasjenige der m Leitwerke, das das den größten Unterbrechungsvorrang angebenden Code
liefernde Leitwerk ist und legt auf eine von m parallelen Leitungen ein Signal zur Anzeige, welches der m
Leitwerke mit .dem größten Unterbrechungsvorrang eine Rechenanlage zur Unterbrechung ihres Programmes
auffordert Diese m parallelen Leitungen. laufen in einen Leitwerkverschlüsseier hinein, der aus dein Signal
auf der einen erregten Leitung unter den m Leitungen einen das betreffende Leitwerk angebenden Code aus
vier Bits aufstellt, der zu den η Rechenanlagen des Datenverarbeitungssystems als Information übertragen
wird, welches der m Leitwerke gerade mit dem größten Vorrang zur Unterbrechung auffordert. Auf Grund
dieser codierten Information kann eine der η Rechenanlagen, deren Programm eine Unterbrechung erlaubt, an
das mit größtem Vorrang auffordernde Leitwerk ein Aniiahinesignal zurückgeben. Hierauf setzt zwischen
diesem Leitwerk und der Rechenanlage ein Nachrichtenaustausch über ein zwischengeschaltetes Speichersystem
ein, falls das Leitwerk beim Empfang des Annahmesignals seine ursprüngliche Aufforderung zur
Unterbrechung mit größtem Vorrang noch aufrechterhalten sollte.
Bei dieser bekannten Datenverarbeitungsanlage suchen die Leitwerke nicht direkt um eins Datenübertragung
zum zwischengeschalteten Speichersystem nach, sondern das mit dem höchsten Unterbrechungsvorrang
auffordernde L eitwerk muß warten, bis es •■'on
der einen freiwerdenden Rechenanlage unter den η Rechenanlagen das Annahmesignal empfängt, das die
Bereitschaft dieser Rechenanlage zu einem Informa-
' tionsaustausch über das zwischengeschaltete Speichersystem
nach einer Unterbrechung ihres laufenden Programms anzeigt.
Aus der deutschen Offenlegungsschrift 15 24 512 ist
eine Schaltungsanordnung zum Vorführen von alphanumerischen Zeichen auf dem Schirm einer Kathodenstrahlröhre
bekannt, bei der die vorzuführenden Zeichen in Form von Bitgruppen innerhalb eines als
Pufferspeicher wirksamen Hauptspeichers festgehalten werden. Dieser Hauptspeicher kann mit den codierten
Zeichen, also den Bitgruppen über eine Tastatur ähnlich der einer Schreibmaschine, über eine Anordnung von
Schaltern oder über eine Rechenmaschine belegt werden, die sich in bezug auf den Hauptspeicher als
periphere Einheiten betrachten lassen Um bei einer solchen Belegung beispielsweise von der Schalteranordnung
auf die Rechenmaschine, also von einer peripheren Einheit zur anderen umzuschalten, sind an der Tastatur
zusätzliche Steuerlasten vorgesehen, die vom Bedienenden
betätigt werden. Folglich ist es in das Ermessen des Bedienenden gestellt, welche der peripheren Einheiten
er als diejenige betrachtet, die vorrangig die Zeichen in ihrer codierten Form in den Hauptspeicher einbringen
oder aus ihm abrufen soll. Darüber hinaus ist es bekannt, die einzelnen Plätze des Hauptspeichers von dem Inhalt
eines S-Registers, also eines Speichers aus zu adressieren.
Um in schneller Folge alle im Hauptspeicher abgelegten Zeichen zu adressieren und auf dem Schirm
einer Kathodenstrahlröhre sichtbar zu machen, liegt das S-Register mit einem Ä-Register und einen^ M- oder
X- Register in einem geschlossenen Flußkreis, in dem unter der Steuerung des Taktgebers und spezieller
Steuertasten und von diesen bewirkten Steuersignalen die Adress- des Hauptspeichers vom Λ-Register
jedesmal um Eins vergrößert wird, wenn sie das /?-Register durchläuft.
Der Erfindung liegt die Aufgabe zugrunde, eine Schaltungsanordnung zur Verbindung des als Pufferspeicher
wirksamen Hauptspeichers mit einer von mehreren peripheren Einheiten anzugeben, die mit dem
größten Vorrang den Zugang zum Hauptspeicher anfordert und diesen zum gegenseitigen Austausch von
Informationssignalen erhält.
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß auf von zumindest zwei peripheren Einheiten
gleichzeitig ausgegebene Anforderungssignale hin mehrere die mit der höchsten Priorität anfordernde Einheit
bezeichnende Identifizierungssignale dem Adressenspeicher zur Adressierung eines seiner Plätze zuführbar
sind, und daß dem Pufferspeicher gemeinsam mit den von diesem Piaf. ausgegebenen, sich schrittweise
vergrößernden Adressen ein Schreib- oder Lesesignal aus der mit der höchsten Priorität anfordernden Einheit
zur Anzeige der Ein- oder Ausgabe der jeweiligen Bitgruppe zuführbar ist
Somit werden in dem Pufferspeicher die Daten aus den peripheren Geräten oder Subsystemen eingespeichert,
oder die Daten werden aus diesem Pufferspeicher zu den peripheren Geräten oder Subsystemen hin
ausgelesen, sobald dem Pufferspeicher aus der peripheren Einheit, die vom höchstem Vorrang den Zugang
anforderte, das Lese- oder Schreibsignal zugeleitet wird Von den Plätzen des Pufferspeichers, die durch die aus
dem Adressenspeicher empfangene Adresse festgelegt werden, werden dann die Daten ausgelesen, oder sie
werden an diesen Plätzen eingeschrieben. Der Adressenspeicher weist mindestens so viele Plätze auf, wie
unterschiedliche periphere Geräte oder Subsysteme vorhanden sind. Die Adressen des Pufferspeichers, die
im Adressenspeicher verweilen, werden einzeln in Abhängigkeit von den Identifizierungssignalen aus ihm
ausgelesen, die aus dem Prioritäts-Codierer empfangen werden, der für jedes unterschiedliche periphere Gerät
oder Subsystem mehrere dieses angebende Identifizierungssignale erzeugt. Wenn die Daten von einem der
peripheren Geräte dem Pufferspeicher zugeleitet oder aus diesem empfangen werden sollen, liefert das
periphere Gerät ein Anforderungssignal an den Prioritäts-Codierer, der entsprechende Identifizierungssignale zur Angabe des peziellen peripheren Gerätes
ausgibt. Diese Ider.tifizierungssignale gelangen zum
Adressenspeicher, wodurch dem Pufferspeicher eine Adresse zugeführt wird, die sich an dem Platz des
Adressenspeichers befindet, der dem anfordernden peripheren Gerät zugeteilt ist. Außerdem führt das
periphere Gerät dem Pufferspeicher ein Lese- oder Schreibsignal zu, wodurch Daten an dessen Platz
ausgelesen oder eingeschrieben werden, der durch die Adresse festgelegt ist, die aus dem Adressenspeicher
empfangen wurde.
Der Pufferspeicher ist für einen zufallsverteilten Zugriff ausgebildet, in dem die Speicherelemente in
Zeilen und Spalten angeordnet sind, die zu ihrer Auswahl hintereinander angewählt werden. Ein Teil der
Adresse des Pufferspeichers, die im Adressenspeicher untergebracht ist, bezeichnet die gewünschte Zeile und
ein weiterer Teil die gewünschte Spalte der zur Datenein-/Ausgabe vorgesehenen Speicherelemente.
Zur Schaltungsanordnung gehört eine Wahllogik, die den Adressenspeicher unterrichtet, daß der erste Teil
der Adresse dem Pufferspeicher zugeleitet werden soll, und den Pufferspeicher informiert, daß dieser Teil die
Zeile des gewünschten Platzes festlegt. In ähnlicher Weise wird der Adressenspeicher angewiesen, den
zweiten Teil einer Adresse dem Pufferspeicher zuzuführen, und dem Pufferspeicher mitgeteilt, daß dieser
zweite Teil die Spalte festlegt. Auf Grund dieser doppelten Signalgabe kann jeder Platz des Pufferspeichers
identifiziert werden.
Ein Ausführungsbeispiel der Erfindung ist in der Zeichnung dargestellt und wird im folgenden näher
erläutert. Es zeigt
F i g. 1 ein allgemeines Blockschaltbild eines datenverarbeitenden
Systems, in der der Pufferspeicher angewendet wird, und
Fig.2 die Schaltungsanordnung für den Pufferspeicher.
Im Blockschaltbild der Fig. 1 enthält eine datenverarbeitende
Anlage 102 eine Steuerung (z. B. in Porm eines Mikroprozessors) 104, ein Tastenfeld 108 zur
Eingabe der Daten, einen Pufferspeicher 112, z<."ei
periphere mit Disketten arbeitende Geräte 116 und 120, ein Steuenings-Zwischenglied 124, einen Anzeigespeicher
128 und eine Kathodenstrahlröhre 132 als Anzeigegerät Sie kann als Einheit in einem mit einer
Tischfläche versehenen Gehäuse oder Rahmen untergebracht sein. Die vom Bedienenden am Tastenfeld 108
eingegebenen Daten werden von der Steuerung 104 ausgewertet, indem sie als Steuersignale (zum Auslesen
von Daten aus dem peripheren Gerät 116 oder 120) dienen oder in diesem Gerät auf einer biegsamen
Diskette eingeschrieben werden oder über das Steuerungs-Zwischenglied
124 zu einem anderen Subsystem laufen oder nach ihrer Unterbringung im Anzeigespei- _
eher 128 auf der Kathodenstrahlröhre 132 zur Schau
gestellt werden. '*■
Um die Arbeit der Anlage 102 zu steuern, nutzt die Steuerung 104 die bekannte Technologie der Mikroprozessoren
mit einem nur dem Auslesen dienenden Speicher aus und erzeugt die verschiedenen Steuersignale
z. B. zur Behandlung einer Unterbrechung und zur Führung eines Datenflusses. Bei all diesen Tätigkeiten
spielt der Pufferspeicher 112 eine wesentliche Rolle, insofern als durch ihn die meisten Daten hindurchgeschleust
und/oder in ihm vorübergehend festgehalten werden. Die Schaltungsanordnung für den Pufferspeicher
kann vorzugsweise in der Anlage nach der F i g. 1 angewendet werden.
Die Schaltungsanordnung gemäß der F i g. 2 kann in verschiedenen Anlagen wie der der Fig. 1 benutzt
werden, vorausgesetzt, daß eine gewisse Art einer Steuerung 104 oder eines Rechners die Arbeitsvorgänge
im Pufferspeicher einleitet. Auch enthält eine derartige Anlage mehrere periphere Geräte 208 bis 216 oder
C,U««fO»AmA A\t* ιιλβ 7a«» 4t. 7Αί* Α..Γ *4a« D.. / f ah« ~'· —U _..
k/uwi;jiwlltb, WlW IWII bVIS CU CV.lt ULfI UtJlI I UI IV. I jpt IS-IIX-I
zur Ausgabe oder Eingabe von Daten zugreifen müssen.
In der Schaltungsanordnung gemäß der Erfindung befindet sich ein Pufferspeicher 220 mit zufallsverteiltem
Zugriff, in dem zur Unterbringung der Daten die Speicherelemente in Zeilen und Spalten angeordnet
sind. Der Platz, an dem die Information eingeschrieben oder aus dem sie ausgelesen werden soll, wird durch
eine über eine Sammelleitung 224 empfangene Adresse festgelegt. Für einen beliebigen Platz wird eine
zweiteilige Adresse übertragen, wobei vom ersten Teil die Zeile und vom zweiten Teü die Spalte festgelegt
werder. Ein über eine Leitung 228 übermitteltes RAS-Signal zeigt dem Pufferspeicher 220 an, daß der
über die Sammelleitung 224 aufgenommene Teil der Adresse die gewünschte Zeile festlegt, und ein über eine
Leitung 232 zugeführtes CAS-Signal gibt dem Pufferspeicher 220 bekannt, daß der auf der Sammelleitung
224 erscheinende Teil der Adresse die gewünschte Spalte mitteilt. Durch ein auf einer Leitung 236
auftretenden R/W-Signal wird der Pufferspeicher 220
unterrichtet, daß die Daten aus dem bzw. in den Platz ausgelesen bzw. eingeschrieben werden sollen, der
durch die im Pufferspeicher aufgenommene Adresse bestimmt ist
Die Plätze eines Adressenspeichers 240 sind je einem anderen peripheren Gerät 208 bis 216 zugeordnet.
(Tatsächlich sind jedoch zwei Plätze, nämlich einer für die Zeilenadresse und ein weiterer für die Spaltenadresse
des Pufferspeichers jedem peripheren Gerät zugeordnet, die als ein Platz betrachtet seien, der eine
zweiteilige Adresse festhält) Die Adressen des Pufferspeichers 220, die entweder von der Steuerung 204 oder
einer Schrittschaltung 268 über eine Auswahlschaltung 272 herankommen, werden im Adressenspeicher 240
untergebracht damit die Plätze festgelegt werden können, aus denen die Daten ausgelesen oder in den
Pufferspeicher 220 eingeschrieben werden sollen. In Abhängigkeit von über Leitungen 242 und 244
herangebrachten Signalen, die den Platz im Adressenspeicher 240 festlegen, wird die Adresse über die
Sammelleitung 224 dem Pufferspeicher 220 zugeführt Der Adressenspeicher 240 kann dabei als Schaltungschip ausgebildet sein.
Die dem Adressenspeicher 240 über die Leitung 242 zugeleiteten Signale kommen über eine Auswahlschaltung
252 mit Signalspeicher entweder aus der Steuerung 104 oder aus einem Priorhäts-Codierer 248 heran, der
ans den peripheren Geräten 208 bis 216 Anforderungssignale empfängt und Identifizierungssignale zur Anga
be des anfordenden peripheren Gerätes erzeugt. Diese Identifizierungssignale laufen durch die Auswahlschaltung
252 sowohl zum Adressenspeicher 240 als auch zum anfordernden Gerät zurück. Eigentlich wird die
Identität des a fordernden peripheren Gerätes zur Bestimmung des Platzes im Adressenspeicher 240
benutzt, der dem peripheren Gerät zugeordnet ist, und aus dem die Adresse dem Pufferspeicher 220 zugeführt
werden soll.
ίο Die Funktion des Prioritäts-Codierers 248 ist der des
Prioritäts-Codierers ähnlich, der in der Patentanmeldung P 30 13 070.2-53 beschrieben ist. Insbesondere
bestimmt der Prioritäts-Codierer 248 aus den Anforderungen der peripheren Geräte 208 bis 216 dasjenige mit
der höchsten Priorität und erzeugt ein dieses Gerät identifizierendes Signal, also das passende Identifizierungssignal.
Beim Empfang dieses Identifizierungssignals führt das periphere Gciäi ein Lese- oder Schreibsignai dem
Pufferspeicher 220 zu, um ihn zu unterrichten, daß aus ihm Daten ausgelesen oder in ihn eingeschrieben
werden sollen, wobei die Datenübertragung zwischen dem Pufferspeicher und dem speziellen Gerät in einer
Sammelschiene 256 erfolgt.
Die Anordnung der F i g. 2 weist ferner eine Wahllogik für die Zeilen und Spalten auf, die dem
Adressenspeicher 240 mitteilt, wann die Teile der Adresse des Pufferspeichers 220 diesem zugeleitet
werden sollen, damit die Zeile und Spalte des gewünschten Matzes im Pufferspeicher identifiziert
werden. Von einem Taktgenerator 264 werden schließlich die Taktsignale an die verschiedenen Elemente des
Systems abgegeben.
Die Adressen des Pufferspeichers 220 werden anfänglich von der Steuerung 104 über die Auswahlschaltung 272 und den Adressenspeicher 240 an den Pufferspeicher 220 herangeführt. Nachdem eine Adresse in ihn eingetreten ist, wird sie von der Schrittschaltung 268 um einen vorgegebenen Betrag vergrößert, und diese vergrößerte Adresse des Pufferspeichers wird in einer Sammelleitung 241 zum Adressenspeicher 240 zurückgeleitet um den nächsten Platz im Pufferspeicher festzulegen, aus dem Daten ausgelesen oder in den Daten eingespeist werden sollen. Auf diese Weise werden aufeinanderfolgende Plätze des Pufferspeichers adressiert Die Schrittschaltung 268 kann ein üblicher Addierer sein, der eine feststehende Größe zur aufgenommenen Adresse hinzuzählt
Die Adressen des Pufferspeichers 220 werden anfänglich von der Steuerung 104 über die Auswahlschaltung 272 und den Adressenspeicher 240 an den Pufferspeicher 220 herangeführt. Nachdem eine Adresse in ihn eingetreten ist, wird sie von der Schrittschaltung 268 um einen vorgegebenen Betrag vergrößert, und diese vergrößerte Adresse des Pufferspeichers wird in einer Sammelleitung 241 zum Adressenspeicher 240 zurückgeleitet um den nächsten Platz im Pufferspeicher festzulegen, aus dem Daten ausgelesen oder in den Daten eingespeist werden sollen. Auf diese Weise werden aufeinanderfolgende Plätze des Pufferspeichers adressiert Die Schrittschaltung 268 kann ein üblicher Addierer sein, der eine feststehende Größe zur aufgenommenen Adresse hinzuzählt
Nun sei die Arbeitsweise der Schaltungsanordnung
so gemäß der F i g. 2 im einzelnen erläutert.
Entsprechend Befehlen, die von einem Bedienenden in das System durch Tastenbetätigung eingegeben
werden, wird von der Steuerung 104 der Zugriff eines
peripheren Gerätes oder Subsystems auf den Pufferspeicher 220 eingeleitet
Die Steuerung 104 bestimmt, daß ein spezielles
peripheres Gerät zum Pufferspeicher Zugang haben soll, und liefert über die Auswahlschaltung 272 und die
Sammelleitung 241 dem Adressenspeicher 240 die Adresse des Pufferspeichers, in die Daten eingelesen
oder aus der sie abgegriffen werden sollen. Außerdem führt die Steuerung 104 Ober die Auswahlschaltung 252
mit dem Signalspeicher dem Adressenspeicher 240 ein Identifizierungssignal zu, um den Platz im Adressenspeieher
festzulegen, an dem die Adresse des Pufferspeichers gespeichert wird. Dieser Platz ist natürlich dem
speziellen peripheren Gerät zugeteilt, das vom Identifizierungssignal
angegeben wird; es umfaßt ein Wort mit
einer Anzahl Bits, die durch die Zahl der zu identifizierenden peripheren Geräte festgelegt ist.
Zusätzlich zu seiner Einspeisung in den Adressenspeicher 240 gelangt das Identifizierungssignal auch in alle
peripheren Geräte 208 bis 216, damit dem identifizierten Gerät mitgeteilt wird, daß es die Daten dem
Pufferspeicher entweder zuführen oder entnehmen soll. Die Steuerung unterrichtet über eine Sammelschiene
276 das identifizierte periphere Gerät, was es tun, also ob es die Daten einschreiben oder aus dem Pufferspeicher
aufnehmen soll. Beim Empfang seines Identifizierungssignals und des Signals zur Angabe des Schreiboder
Lesevorganges leitet das gewählte periphere Gerät ein Anforderungssignal zum Prioritäts-Codierer
248, obgleich zu diesem Zeitpunkt a'ich noch Anforderungen
aus anderen peripheren Geräten vorliegen können.
Der Prioritäts-Codierer 248 bestimmt das periphere Gerät mit der höciisici'i Priorität und erzeugt ein
Identifizierungssignal, das zur Angabe dieses Gerätes dann der Auswahlschaltung 252 mit Signalspeicher
zugeführt wird. (Das letztere ist von der Steuerung 104 in einen solchen Zustand gebracht worden, daß das vom
Prioritäts-Codierer 248 erzeugte Identifizierungssignal an den Signalspeicher durchgegeben wird.)
Der Taktgenerator 264 empfängt dann aus dem Prioritäts-Codierer 248 über eine Leitung 265 ein Signal,
um die Entnahme der Daten oder ihre Speicherung einzuleiten. Der Taktgenerator 264 schaltet die
Auswahlschaltung 252 mit dem Signalspeicher, damit das aufbewahrte Identifizierungssignal in den Adressenspeicher
240 und das gewählte periphere Gerät ausgegeben wird, das dann das entsprechende Leseoder
Schreibsignal dem Pufferspeicher 220 zuleitet und das (dem Prioritäts-Codierer 248 zugeführte) Anforderungssignal
löscht Der Taktgenerator 264 unterrichtet auch die Wahllogik 260, die dem Adressenspeicher 240
anzeigt, daß der erste Teil der Adresse des Pufferspeichers, der an dem Platz des Adressenspeichers
aufbewahrt wird, der dem gewählten peripheren Gerät zugeteilt ist, (und vom Identifizierungssignal in der
Leitung 242 festgelegt ist), dem Pufferspeicher 220 zugeleitet werden soll. Die Wahllogik 260 bringt auch
das RAS-Signal auf der Leitung 228 an den Pufferspeicher heran, um anzuzeigen, daß der Teil der auf der
Sammelleitung 224 empfangenen Adresse die Zeile des gewünschten Platzes im Pufferspeicher angibt. In
Abhängigkeit von einem anderen Signal aus dem Taktgenerator 264 teilt die Wahllogik 260 dem
Adressenspeicher 240 mit, daß der letzte Teil der Adresse des Pufferspeichers 220 diesem zugeführt
werden soll, und die Wahllogik 260 bringt auch das CAS-Signal über die Leitung 232 an den Pufferspeicher
220 zur Anzeige heran, daß dieser Teil der dann erscheinenden Adresse die Spalte des gewünschten
Platzes im Pufferspeicher betrifft, der hiernach das auf der Leitung 236 herankommende R/W-Signal prüft;
ίο entweder speichert er dann die auf der Sammelschiene
256 vorhandenen und über die Auswahlschaltung 274 aus dem gewählten peripheren Gerät kommenden
Daten (in der Gegenwart eines Schreibsignals) oder legt die Daten (in Gegenwart eines Lesesignals) auf die
Sammelschiene 256. Im letzteren Fall teilt der Taktgenerator 264 dem gewählten peripheren Gerät
mit, daß es die Daten aus der Sammelschiene 256 empfangen soll.
Nach dsm Lesen oder SchT'hpn eines jeden
Datenpostens führt das gewählte periphere Gerät ein weiteres Anforderungssignal dem Prioritäts-Codierer
248 zu, damit weitere Daten übertragen werden. Das Verfahren zur Bearbeitung der Anforderung wiederholt
sich dann mit der folgenden Ausnahme: Nach der Einspeisung der anfänglichen Adresse des Pufferspeichers
in den Adressenspeicher 240 werden die nachfolgenden Adressen (für einen speziellen Datenblock)
aus der Schrittschaltung 268 erhalten, die einfach die zuletzt zugeleitete Adresse des Pufferspeichers um
einen festen Betrag vergrößert und sie über die Auswahlschaltung 272 zum Adressenspeicher zurückbringt.
Nachdem alle gewünschten Daten dem Pufferspeicher zugeleitet oder aus ihm aufgenommen sind,
gibt das gewählte periphere Gerät eine Anforderung
zur Unterbrechung an die Steuerung 104 ab, um sie zu unterrichten, daß die gewünschten Daten vom bzw. zum
Pufferspeicher übertragen worden sind.
In der erläuterten Weise ist eine einfache und doch wirkungsvolle Schaltungsanordnung zum Zugriff auf
einen Pufferspeicher angegeben, in der spezifische Schaltungen für einige Elemente der F i g. 2 angewendet
werden. Die Auswahlschaltungen 272 und 274 können handelsübliche Datenselektoren mit drei Leitungen sein,
die unter der Wirkung der Steuerung 104 stehen. Die
Auswahlschaltung 252 kann ein ähnlicher Wähler mit einem Signalspeicher von einer gewissen Speicherkapazität
sein.
Hierzu 2 Blatt Zeichnungen
Claims (4)
1. Schaltungsanordnung zur Übertragung von
Bitgruppen zwischen einer von mehreren auswahlbaren peripheren Einheiten und einem Pufferspeicher,
dessen Plätze der Reihe nach von einem Adressenspeicher aus adressierbar sind, der mit
einem Taktgeber und einer Schrittschaltung derart zusammenwirkt, daß die dem Pufferspeicher zugeleitete
Adresse schrittweise um eine Einheit vergrößerbar ist, dadurch gekennzeichnet,
daß auf von zumindest zwei peripheren Einheiten (208—216) gleichzeitig ausgegebene Anforderungssignale hin mehrere die mit der höchsten Priorität
anfordernde Einheit (208,... oder 216) bezeichnende Identifizierungssignale dem Adressenspeicher (240)
zur Adressierung eines seiner Plätze zufflhrbar sind,
und daß dem Pufferspeicher (220) gemeinsam mit den von diesem Platz ausgegebenen, sich schrittweise
vergrößercxJen Adressen ein Schreib- oder
Lesesignal (R/W) aus der mit der höchsten Priorität anfordernden Einheit (208,... oder 216) zur Anzeige
der Ein- oder Ausgabe der jeweiligen Bitgruppe zuführbar ist
2. Schaltungsanordnung nach dem Anspruch 1, dadurch gekennzeichnet, daß zwischen der Schrittschaltung
(268) und dem Adressenspeicher (240) eine Auswahlschaltung (272) angeschlossen ist, von der
wahlweise die vergrößerte Adresse oder aus einer Steuerung (104) eine neue Adresse an einen Platz
des Adressenspeichers (240) einführbar ist, der von
aus der Steuerung (104J könnenden Identifizierungssignalen
festgelegt ist
3. Schaltungsanordnung nach d*-n Ansprüchen 1
und 2, dadurch gekennzeichnet daß zwischen dem Prioritäts-Codierer (248) und dem Adressenspeicher
(240) eine Auswahlschaltung (252) mit Signalspeicher angeschlossen ist in dem wahlweise die
Identifizierungssignale aus dem Prioritäts-Codierer (248) oder aus der Steuerung (104) vorübergehend
festhaltbar sind.
4. Schaltungsanordnung nach dem Anspruch 1 mit einem Pufferspeicher, dessen Plätze in einer Matrix
aus Zeilen und Spalten angeordnet sind, dadurch gekennzeichnet, daß dem Pufferspeicher (220) aus
einer Wahllogik (260), von der Zeilen- und Spaltenwahlsignale dem Adressenspeicher (240)
zuführbar sind, das Zeilenwahlsignal über eine Leitung (228) und das Spaltenwahlsignal über eine
Leitung (232) zuführbar sind, und daß die eine von jeweils zwei Adressen gemeinsam mit dem Zeilenwahlsignal
und die andere Adresse gemeinsam mit dem Spaltenwahlsignal dem Pufferspeicher (220)
zuführbar sind.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US06/029,305 US4334287A (en) | 1979-04-12 | 1979-04-12 | Buffer memory arrangement |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE3013064A1 DE3013064A1 (de) | 1980-11-06 |
| DE3013064C2 true DE3013064C2 (de) | 1983-05-11 |
Family
ID=21848350
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE3013064A Expired DE3013064C2 (de) | 1979-04-12 | 1980-04-03 | Schaltungsanordnung zur Übertragung von Bitgruppen zwischen einer von mehreren peripheren Einheiten und einem Pufferspeicher |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US4334287A (de) |
| JP (1) | JPS6012183Y2 (de) |
| DE (1) | DE3013064C2 (de) |
Families Citing this family (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS56125139A (en) | 1980-02-04 | 1981-10-01 | Nippon Telegr & Teleph Corp <Ntt> | Communication controller of parallel processing |
| US4377853A (en) * | 1980-09-09 | 1983-03-22 | Burroughs Corporation | Peripheral controller with segmented memory buffer for interfacing 80 column card reader with host computer |
| JPS58154054A (ja) * | 1982-03-10 | 1983-09-13 | Hitachi Ltd | 外部記憶装置制御用回路 |
| US4621335A (en) * | 1983-05-31 | 1986-11-04 | Allied Corporation | Real time recall feature for an engine data processor system |
| JPS60205760A (ja) * | 1984-03-30 | 1985-10-17 | Fuji Xerox Co Ltd | メモリ制御装置 |
| GB2194658B (en) * | 1985-08-02 | 1989-08-16 | Ant Nachrichtentech | Transfer circuit and transfer process for the transfer of co-efficients |
| US4949301A (en) * | 1986-03-06 | 1990-08-14 | Advanced Micro Devices, Inc. | Improved pointer FIFO controller for converting a standard RAM into a simulated dual FIFO by controlling the RAM's address inputs |
| US5133062A (en) * | 1986-03-06 | 1992-07-21 | Advanced Micro Devices, Inc. | RAM buffer controller for providing simulated first-in-first-out (FIFO) buffers in a random access memory |
| US5276812A (en) * | 1987-01-29 | 1994-01-04 | Kabushiki Kaisha Toshiba | Address multiplexing apparatus |
| US5007012A (en) * | 1988-09-09 | 1991-04-09 | Advanced Micro Devices, Inc. | Fly-by data transfer system |
| DE19504488C1 (de) * | 1995-02-10 | 1996-06-20 | Siemens Ag | Verfahren zur Initialisierung von peripheren Einrichtungen durch eine programmgesteuerte Zentraleinrichttung eines Kommunikationssystems |
| TW523759B (en) * | 2001-08-03 | 2003-03-11 | Umax Data Systems Inc | Circuit architecture with extended general purpose input/output pin |
| US7003628B1 (en) * | 2002-12-27 | 2006-02-21 | Unisys Corporation | Buffered transfer of data blocks between memory and processors independent of the order of allocation of locations in the buffer |
| US7913003B2 (en) * | 2006-02-24 | 2011-03-22 | Intel Corporation | Reclaim algorithm for fast edits in a nonvolatile file system |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3466645A (en) * | 1965-03-01 | 1969-09-09 | Sperry Rand Corp | Digital data crt display system |
| US3421150A (en) * | 1966-08-26 | 1969-01-07 | Sperry Rand Corp | Multiprocessor interrupt directory |
| US3526878A (en) * | 1967-03-27 | 1970-09-01 | Burroughs Corp | Digital computer system |
| GB1191560A (en) * | 1968-10-04 | 1970-05-13 | Burroughs Corp | Input/Output Control for a Digital Computing System. |
| US3704453A (en) * | 1971-02-23 | 1972-11-28 | Ibm | Catenated files |
| US3895360A (en) * | 1974-01-29 | 1975-07-15 | Westinghouse Electric Corp | Block oriented random access memory |
| US3949380A (en) * | 1974-04-22 | 1976-04-06 | Honeywell Information Systems, Inc. | Peripheral device reassignment control technique |
| US4149244A (en) * | 1976-06-07 | 1979-04-10 | Amdahl Corporation | Data processing system including a program-executing secondary system controlling a program-executing primary system |
| US4092715A (en) * | 1976-09-22 | 1978-05-30 | Honeywell Information Systems Inc. | Input-output unit having extended addressing capability |
| US4065810A (en) * | 1977-01-26 | 1977-12-27 | International Business Machines Corporation | Data transfer system |
| US4110830A (en) * | 1977-07-05 | 1978-08-29 | International Business Machines Corporation | Channel storage adapter |
-
1979
- 1979-04-12 US US06/029,305 patent/US4334287A/en not_active Expired - Lifetime
-
1980
- 1980-04-03 DE DE3013064A patent/DE3013064C2/de not_active Expired
- 1980-04-11 JP JP1980049254U patent/JPS6012183Y2/ja not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| US4334287A (en) | 1982-06-08 |
| JPS55149898U (de) | 1980-10-28 |
| JPS6012183Y2 (ja) | 1985-04-20 |
| DE3013064A1 (de) | 1980-11-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0115609B1 (de) | Schaltungsanordnung zur Adressierung der Speicher mehrerer datenverarbeitender Einrichtungen in einem Mehrprozesssorsystem | |
| DE3588009T2 (de) | Vorrichtung und Verfahren zum Rekonfigurieren eines Speichers in einer Datenverarbeitungsanordnung. | |
| DE3300263C2 (de) | ||
| DE2645535C2 (de) | ||
| DE3013064C2 (de) | Schaltungsanordnung zur Übertragung von Bitgruppen zwischen einer von mehreren peripheren Einheiten und einem Pufferspeicher | |
| DE2635592A1 (de) | Multiprozessor-abrufsystem | |
| DE2154106A1 (de) | Arbeitsspeicherwerk | |
| DE1499182B2 (de) | Datenspeichersystem | |
| DE1424732A1 (de) | Elektronische Ziffernrechenmaschine | |
| DE2410491A1 (de) | Datenverarbeitungsanlage | |
| DE3642324A1 (de) | Multiprozessoranlage mit prozessor-zugriffssteuerung | |
| DE3327379A1 (de) | Einrichtung und verfahren zum umordnen von datensaetzen | |
| DE1774052B1 (de) | Rechner | |
| DE3046912C2 (de) | Schaltungsanordnung zum selektiven Löschen von Cachespeichern in einer Multiprozessor-Datenverarbeitungsanlage | |
| EP0062141B1 (de) | Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem | |
| DE2758829A1 (de) | Multiprozessor-datenverarbeitungssystem | |
| DE69533630T2 (de) | Verfahren und Vorrichtung zur Schnittstellenbildung mit RAM-Speicher | |
| DE3043012A1 (de) | Einrichtung zum unabhaengigen betrieb mehrerer untereinheiten in einem informationsverarbeitungssystem durch verschiedene benutzer | |
| DE2142374C2 (de) | Schaltungsanordnung zur Auswahl und ggfs. erfolgenden Modifizierung von Datenzeichen | |
| DE1774053B2 (de) | Uebertragungssystem fuer digitale daten | |
| DE2847737C2 (de) | Schaltung zur Umsetzung virtueller Adressen in eine reelle Adresse von größerer Länge | |
| DE2502920A1 (de) | Steueranordnung fuer den betrieb eines datenendgeraetes | |
| DE2343501B2 (de) | Steuerschaltung für zumindest eine Rechenanlage mit mehreren für die Durchführung von EuWAusgabe-Programmen bestimmten Registern | |
| DE2161213B2 (de) | Verfahren und Steuereinheit zum Übertragen von Datenwortblöcken | |
| DE1549428B2 (de) | Steuergeraet zum vermitteln von daten in einer datenverarbeitungsanlage |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| OAP | Request for examination filed | ||
| OD | Request for examination | ||
| 8126 | Change of the secondary classification |
Ipc: ENTFAELLT |
|
| 8181 | Inventor (new situation) |
Free format text: WIEDEMAN, GREGORY BOYD, SANDY, UHTAH, US MARSH, PHILLIP WADE, GRANGER, UTAH, US |
|
| D2 | Grant after examination | ||
| 8364 | No opposition during term of opposition | ||
| 8339 | Ceased/non-payment of the annual fee | ||
| 8327 | Change in the person/name/address of the patent owner |
Owner name: UNISYS CORP. (N.D.GES.D.STAATES DELAWARE), BLUE BE |
|
| 8328 | Change in the person/name/address of the agent |
Free format text: EISENFUEHR, G., DIPL.-ING. SPEISER, D., DIPL.-ING. RABUS, W., DR.-ING. BRUEGGE, J., DIPL.-ING., 2800 BREMEN MAIWALD, W., DIPL.-CHEM.DR., PAT.-ANWAELTE, 8000 MUENCHEN |