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 Pufferspeicher

Info

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
Application number
DE3013064A
Other languages
English (en)
Other versions
DE3013064A1 (de
Inventor
Philip Wade Granger Utah Marsh
Gregory Boyd Sandy Uhtah Wiedeman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Unisys Corp
Original Assignee
Sperry Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sperry Corp filed Critical Sperry Corp
Publication of DE3013064A1 publication Critical patent/DE3013064A1/de
Application granted granted Critical
Publication of DE3013064C2 publication Critical patent/DE3013064C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/76Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
    • G06F7/78Arrangements 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/785Arrangements 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/18Handling 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
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)

Patentansprüche:
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.
DE3013064A 1979-04-12 1980-04-03 Schaltungsanordnung zur Übertragung von Bitgruppen zwischen einer von mehreren peripheren Einheiten und einem Pufferspeicher Expired DE3013064C2 (de)

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)

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

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

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