DE3851210T2 - Datenbussteuerung von ROM-Einheiten in einer Informationsverarbeitungsanordnung. - Google Patents
Datenbussteuerung von ROM-Einheiten in einer Informationsverarbeitungsanordnung.Info
- Publication number
- DE3851210T2 DE3851210T2 DE3851210T DE3851210T DE3851210T2 DE 3851210 T2 DE3851210 T2 DE 3851210T2 DE 3851210 T DE3851210 T DE 3851210T DE 3851210 T DE3851210 T DE 3851210T DE 3851210 T2 DE3851210 T2 DE 3851210T2
- Authority
- DE
- Germany
- Prior art keywords
- bus
- data
- rom
- storage unit
- output
- 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 - Fee Related
Links
- 230000010365 information processing Effects 0.000 title description 3
- 230000015654 memory Effects 0.000 claims description 23
- 238000012545 processing Methods 0.000 claims description 15
- 239000000872 buffer Substances 0.000 claims description 14
- 238000013480 data collection Methods 0.000 claims description 5
- 230000003213 activating effect Effects 0.000 claims 2
- 230000004044 response Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- 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/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0615—Address space extension
- G06F12/0623—Address space extension for memory modules
-
- 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/0215—Addressing or allocation; Relocation with look ahead addressing means
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
- Memory System (AREA)
Description
- Die Erfindung bezieht sich auf ein Datenverarbeitungssystem mit einer Speichereinheit zur Speicherung von Datenelementen;
- - einem ersten Bus, der an den genannten Speicher angeschlossen ist;
- - Auswahlmitteln zur Lieferung von Code-Wörtern an die genannte Speichereinheit über den genannten ersten Bus zur Auswahl eines bestimmten Datenelements, einem zweiten Bus, mit dem genannten Speicher verbunden, zur Lieferung eines Freigabesignals, das die genannten Code-Wörter freigibt.
- Die Erfindung bezieht sich auch auf eine Speichereinheit für ein solches System.
- Diese Erfindung bezieht sich insbesondere auf ein Informationsverarbeitungssystem, das Festwert-Speichereinheiten (ROM) enthält.
- ROMs sind nichtflüchtige Speicher, die oft in Informationsverarbeitungssystemen benutzt werden. In solchen Systemen sind die ROM- Speicher auf die Ausführung verschiedener Funktionen ausgelegt, einschließlich Datenkonvertierung, Tabellennachschlagen usw.
- ROM-Einheiten können auf eine beliebige Standardweise programmiert werden. So können solche Einheiten beispielsweise maskenprogrammierte ROMs sein, kundenprogrammierbare ROMs (z. B. Schmelzverbindungen), UV-löschbare EPROMs oder elektrisch veränderbare EAROMs.
- Hierzu wurden ROMS mit anderen Komponenten eines Verarbeitungssystems auf verschiedene Weise verbunden. Normalerweise sind die ROMs in dem System sowohl mit Adreß- als auch mit Datenbussen verbunden. In einer solchen Anordnung bilden die ROMs einen Teil des Programmspeichers des Systems und führen in der Praxis häufig eine erhebliche Menge an Instruktions-Ballast mit. Zudem bewirkt eine solche Anordnung der ROMs eine Fragmentierung des Programmplatzes und erfordert normalerweise, daß eine gegebene Menge von Informationen in einem relativ großen Teil des ROM gespeichert wird.
- Demzufolge haben sich nach dem Stand der Technik sachkundige Personen um einen anderen Weg zur Einbindung von ROMs in ein Verarbeitungssystem bemüht. Insbesondere hatten diese Bemühungen zur Aufgabe, den Platz des ROM, der zur Speicherung einer gegebenen Informationsmenge benötigt wird, zu verringern und gleichzeitig die Organisation des Programmplatzes in dem System zu verbessern und Jen Instruktions-Ballast bei Zugriff und Lesen von ROMs zu verringern. Es wurde erkannt, daß diese Bemühungen, sollten sie erfolgreich sein, die Kosten verringern und die Betriebsart von Verarbeitungssystemen, die ROMs beinhalten, erweitern könnten.
- Ein Beispiel für ein nach der Einleitung bekanntes System wird in der Europäischen Patentanmeldung Nr. 0 057 515 beschrieben. Dieses bekannte System bezieht sich auf die Schnittstellenbildung mit E/A-Geräten, die einen Speicher enthalten können, der Dateneingabe erfordert. Diese Veröffentlichung bezieht sich nicht auf internen Speicher zur Verwendung durch das Datenverarbeitungssystem. Weiterhin verwendet es ein einzelnes Code-Wort, um die Adresse eines Datenelements innerhalb des Speichers des E/A-Geräts bereitzustellen. Hierdurch ergibt sich das Problem, daß der adressierbare Speicherplatz durch die Größe der Daten, also durch die Größe des ersten Busses, begrenzt wird.
- Aus EDN (Electric Design News) 32 (1987), 30. April, Nr. 9, Seite 189-198 ist ein ROM bekannt, das eine Adresse in aufeinanderfolgenden Zyklen erhält, und zwar über einen Datenbus und über einen Adreßbus. Nach diesem Schema benötigt das ROM aber immer noch Verbindungen mit einem Adreßbus und belegt einen Teil des Adreßraums.
- Nach der EDN-Veröffentlichung kann der erste Zyklus ausgelassen werden, wenn der Teil der in diesem Zyklus übermittelten Adresse den gleichen Wert hat, wie für eine vorherige Adresse. Wenn dieser Wert anders ist, müssen alle Zyklen wiederholt werden.
- Es ist Aufgabe der Erfindung, ein Datenverarbeitungssystem bereitzustellen, in dem die Adressierung und das Lesen der Speichereinheit erfolgt, ohne einen Adreßbus zu benötigen, und innerhalb dessen der Auslesezyklus komprimiert wird.
- Das erfindungsgemäße Datenverarbeitungssystem ist dadurch gekennzeichnet, daß die Speichereinheit Ausgabemittel zum Anlegen des bestimmten Datenelements an den ersten Bus während eines Ausgabezyklus umfaßt, daß der zweite Bus für die Lieferung eines Ausgabe-Freigabesignals angeordnet ist und nachfolgende Auswahl-Freigabesignale, die nachfolgende Zyklen freigeben, und dadurch, daß die Auswahlmittel für die Lieferung von Code-Wörtern an die Speichereinheit in einer Folge der Auswahlzyklen angeordnet sind, wobei das Code-Wort in einem Zyklus eine Datensammlung aufzeigt, die eine Unterteilung einer anderen, durch ein Code-Wort in einem anderen Zyklus gekennzeichneten Datensammlung ist; die Speichereinheit umfaßt eine Mehrzahl von Latches, die einerseits an den ersten Bus und an den zweiten Bus gekoppelt sind und andererseits über einen Adreß-Decoder an den Speicher, und zwar jeweils zur Speicherung des Code-Wortes, das während eines betreffenden Auswahlzyklus unter Steuerung der Freigabesignale geliefert wurde, wobei ein Informationsinhalt jedes Latches unabhängig von den übrigen Latches veränderbar ist, und wobei der Informationsinhalt in jedem Latch so lange gehalten wird, bis ein darauffolgendes, an den ersten Bus angelegtes Code-Wort in diesem Latch gespeichert wird, und wobei die Latches zur Aktivierung des genannten Adreß-Decoders angeordnet sind, um das bestimmte Datenelement unter Steuerung der in den Latches gespeicherten Code-Wörter auszuwählen.
- Weil die Latches unabhängig voneinander veränderbar sind, können diejenigen Zyklen, in denen ein alter Wert eines Adreßteils übergeben wird, übersprungen werden, ungeachtet der Tatsache, ob dies der erste oder ein anderer späterer Zyklus ist, wodurch sich die Komprimierung des gesamten Auslesezyklus ergibt.
- Erfindungsgemaß wird die Auswahl eines bestimmten ROM in einem Array von ROMs und einer darin befindlichen bestimmten Seite erreicht, indem ein erstes Steuersignal und ein erstes Datenwort an den Datenbus angelegt werden. Dieses erste Datenwort dient daher als die Adresse der ausgewählten Seite in dem gewählten ROM. Dann wird ein bestimmtes Byte der ausgewählten Seite ausgewählt, indem ein zweites Steuersignal und ein zweites Datenwort an den Datenbus angelegt werden. Dieses zweite Datenwort dient als Adresse des ausgewählten Bytes. Anschließend wird in Antwort auf ein drittes Steuersignal das ausgewählte Byte aus dem ausgewählten ROM ausgelesen und an den Datenbus angelegt.
- Im speziellen werden in einer erläuternden Ausführungsform der Erfindung des Patentanmelders Informationen in einem Verarbeitungssystem in einem nach Seite und Wort organisierten ROM in 2J Seiten mit 2J Bytes pro Seite gespeichert, wobei J eine positive ganze Zahl ist. Während eines ersten Betriebszyklus des Systems werden J Bits an den mit dem ROM verbundenen Datenbus angelegt, um eine von den 2J Seiten auszuwählen. Während eines zweiten Zyklus werden J Bits an den Datenbus angelegt, um eines der 2J Bytes in der ausgewählten Seite auszuwählen. Während eines dritten Zyklus wird das ausgewählte Byte an den Datenbus angelegt. Nacheinander werden das erste, zweite und dritte Steuersignal an den mit dem ROM verbundenen Steuerbus übergeben, um den ersten, zweiten bzw. dritten Zyklus freizugeben.
- Gemäß einem anderen Merkmal dieser Erfindung bleibt der Informationsinhalt der an den Datenbus angelegten ersten und zweiten Datenwörter in der den ROMs zugehörigen Schaltung gespeichert, bis nachfolgend entsprechende Datenwörter vom Prozessor an den Datenbus angelegt werden. Auf diese Weise erleichtert die Erfindung den Zugriff auf Datenbytes an derselben Adresse auf mehreren Seiten des vorher ausgewählten ROM oder auf Seiten anderer, nachfolgend ausgewählter ROMs. Weiterhin erleichtert das System auch den Zugriff auf Datenbytes an mehreren Adressen des vorher ausgewählten ROM und der vorher ausgewählten Seite.
- Ein vollstandiges Verständnis der vorliegenden Erfindung und der vorausgehenden Ausführungen und sonstiger daraus resultierender Merkmale und Vorteile kann durch Betrachtung der folgenden detaillierten Beschreibung in Verbindung mit der beiliegenden Einzelzeichnung erlangt werden. Die Zeichnung ist eine schematische Darstellung eines bestimmten erläuternden Systems, das die Grundsätze der Erfindung des Patentanmelders beinhaltet.
- Das in der Zeichnung dargestellte, bestimmte erläuternde System umfaßt einen herkömmlichen Mikroprozessor 10 mit einem Datenbus 12 und einem daran angeschlossenen Steuerbus 14. Der Datenbus 12 ist auf die parallele Übertragung von J Bits ausgelegt. Wie in der Zeichnung gezeigt, sind die Busse 12 und 14 an mehrere ROMs samt zugehöriger Schaltung angeschlossen.
- Mit Hilfe von Datenwörtern, die vom Prozessor 10 an den Bus 12 angelegt werden, und unter der Steuerung von Signalen, die vom Prozessor 10 an den Bus 14 angelegt werden, wird jeweils ein bestimmtes Byte aus den ROMs ausgelesen und an den Datenbus 12 angelegt. Diese Betriebsart wird im folgenden näher beschrieben.
- Jedes aus den ROMs ausgelesene Byte umfaßt bis zu J Bits, die parallel an den Datenbus 12 angelegt werden. Zur Veranschaulichung werden die aus den ROMs ausgelesenen Bits von dem Bus 12 zum Mikroprozessor 10 übertragen. Falls gewünscht, können diese ausgelesenen Bits auch an andere zugehörige Nutzungsgeräte (nicht gezeigt) übertragen werden, wie schematisch durch den mit Bus 12 verbundenen Abzweig 13 gezeigt.
- Die hier angegebene Menge J ist eine positive ganze Zahl. Zum Beispiel ist der in der Praxis verwendete Mindestwert von J normalerweise 4 und der Höchstwert normalerweise 16. Aber in einigen Fällen von praktischer Bedeutung kann J einen so kleinen Wert wie 2 annehmen. In anderen solchen Fällen kann J größer als 16 sein.
- Zur Veranschaulichung sind die in der Zeichnung gezeigten Daten- und Steuerbusse 12 und 14 von der Art, die für die Übertragung von Informationen zwischen einem Prozessor und Ein-/Ausgabe-Geräten (E/A-Geräten) verwendet werden. Mit Hilfe des Busses 12 werden nur Daten (keine Adreßinformationen) normalerweise an ein ausgewähltes E/A-Gerät gesendet (geschrieben) oder von diesem empfangen (gelesen). In einer solchen Anordnung wird die Auswahl eines bestimmten Geräts durch Signale ermittelt, die an den Steuerbus 14 angelegt werden. Weiterhin erfolgt die Initiierung der Schreib- und Leseoperationen für ein ausgewähltes E/A-Gerät ebenfalls unter Steuerung von Signalen, die an den Bus 14 angelegt werden.
- Gemäß der Erfindung des Patentanmelders ist jede der hier beschriebenen ROM-Baugruppen mit ROM-Einheit und zugehöriger Schaltung so konstruiert, um mit Daten- und Steuerbussen der oben genannten allgemeinen Art verbunden zu werden und damit kompatibel zu sein. Daher weisen die mit diesen Bussen verbundenen ROM- Baugruppen eine starke Ähnlichkeit mit den zuvor genannten E/A-Geräten auf, in die Daten geschrieben und aus denen Daten ausgelesen werden. Aufgrund dieser Ähnlichkeit werden die hier beschriebenen und in der Zeichnung gezeigten bestimmten, erläuternden ROM-Baugruppen als ein sogenanntes E/A-ROM bezeichnet.
- Ein gemäß der Erfindung des Patentanmelders aufgebautes System umfaßt eine oder mehrere ROM-Baugruppen, von denen jede ein seitenweise organisiertes ROM und zugehörige Schaltung umfaßt. In der Zeichnung stellt der durch den in Strichlinien dargestellte Bereich 16 eine solche Baugruppe dar. Weiterhin wird das bestimmte gezeigte veranschaulichende System so dargestellt, daß es N-1 zusätzliche Baugruppen enthält. Jede dieser zusätzlichen Baugruppen ist im wesentlichen mit der Baugruppe 16 gleich. Zwei dieser zusätzlichen Baugruppen, mit 18 und 20 bezeichnet, werden in der Zeichnung gezeigt. Wie gezeigt, ist jede dieser Baugruppen 16, 18 . . . 20 angeschlossen, um Daten und Steuersignale von den Bussen 12 und 14 zu empfangen und, in Antwort darauf, anschließend ausgewählte Datenbytes an den Bus 12 anzulegen.
- Die einzelnen ROMs, die das System des Patentanmelders enthält, sind von herkömmlicher Bauart. Diese können nach einem beliebigen Standardweg programmiert werden, um darin Informationen zum Zwecke von Datenkonvertierung, Tabellennachschlagen usw. zu speichern.
- Jedes der im System des Patentanmelders enthaltenen ROMs ist seitenweise organisiert. Erfindungsgemäß können im System insgesamt bis zu 2J Seiten enthalten sein. Alle 2J Seiten könnten in einer einzelnen ROM-Baugruppe enthalten sein, aber in dem in der Zeichnung gezeigten bestimmten erläuternden System sind die 2J Seiten so ausgelegt, daß sie gleichmäßig über N Baugruppen verteilt sind. So enthält jede ROM-Baugruppe, wie z. B. die Baugruppe 16, ein ROM mit 2M Seiten. Umgekehrt ist jede ROM-Seite in dem dargestellten erläuternden System in der Lage, 2J Bytes zu speichern, von denen jedes bis zu J Bits enthalten kann.
- Die ROM-Baugruppe 16 wird in der Zeichnung mit ROM 22 gezeigt. ROM 22 umfaßt 2M Seiten, von denen jede 2J Bytes enthält.
- Hier wird im Zusammenhang mit einem bestimmten erläuternden Beispiel angenommen, daß J den Wert 8 hat. Daher umfaßt jedes Datenwort, das vom Mikroprozessor 10 an den Bus 12 angelegt oder von den dargestellten ROM- Baugruppen an den Mikroprozessor 10 übertragen wird, 8 Bits parallel.
- Weiterhin wird hier im Zusammenhang mit dem Beispiel angenommen, daß M den Wert 3 hat. Daher enthält das ROM in jeder der Baugruppen, so wie der Baugruppe 16, 2M oder 8 von den 2J oder 256 Seiten, die das System enthalten kann. In diesem Fall hätte die Gesamtzahl N von ROM-Baugruppen in dem dargestellten System den Wert 32.
- Gemäß der Erfindung des Patentanmelders kann der Wert von M hier eine beliebige ganze Zahl zwischen 1 und J sein. Wenn M gleich 1 und J gleich 8 ist, würden Informationen in 2J-M oder 128 ROMs gespeichert, von denen jedes 2M oder 2 Seiten hat. Wenn M gleich 8 ist, würden Informationen in einem einzelnen ROM mit 256 Seiten gespeichert.
- Die dem seitenweise organisierten ROM 22 zugehörige Schaltung in der Baugruppe 16 enthält einen (J-M)-Bit-Adreßkomparator 24. In dem hier besprochenen bestimmten erläuternden Beispiel ist die Menge J-M gleich 5. Der Komparator 24 und die in den anderen 31 E/A-ROMs enthaltenen gleichen Komparatoren sind jeweils so ausgelegt, daß sie auf eine einzelne von 25 oder 32 5-Bit-Adreßsegmenten reagieren, die auf dem Datenbus 12 während eines ersten Zyklus erscheinen, in dem eines der E/A- ROMs ausgewählt wird. (Mit Ausnahme dieses Unterschieds in den Adreßkomparatoren ist die jedem ROM zugehörige Schaltung gleich). Die anderen 3 Bits jedes 8-Bit- Datenwortes, die zunächst auf dem Bus 12 erscheinen, werden an ein M- oder 3-Bit- Adreß-Latch 26 angelegt. Das Latch 26 dient zur Auswahl einer bestimmten der 2M oder 8 Seiten, die in jedem der 32 ROMs beinhaltet sind, einschließlich ROM 22.
- Genauer gesagt wird während eines ersten Auswahlzyklus ein SELECT- Signal vom Mikroprozessor 10 über den Steuerbus 14 an den (J-M)-Bit- Adreßkomparator und an das M-Bit-Adreß-Latch angelegt, das in jedem der N E/A- ROMs enthalten ist. Gleichzeitig wird ein 8-Bit-Datenwort, das vom Mikroprozessor 10 an den Bus 12 angelegt wird, auch an jedes E/A-ROM angelegt. In Verbindung mit dem SELECT-Signal dienen fünf dieser 8-Datenbits dazu, einen einzelnen der 32 Adreßkomparatoren in den E/A kOMs auszuwählen oder zu aktivieren. Die anderen drei Datenbits dienen in Verbindung mit dem SELECT-Signal dazu, die Ausgabe des in jedem E/A-ROM enthaltenen 3-Bit-Adreß-Latch zu verriegeln.
- Es wird vorausgesetzt, daß die an den Datenbus 12 angelegte 5-Bit- Adresse der Adresse entspricht die zuvor nur dem Komparator 24 in dem E/A-ROM 16 zugewiesen wurde. In Antwort auf diese Adresse und auf ein SELECT-Signal legt der Komparator 24 ein Signal an das Zuordnungs-Latch 28 an, um es zu veranlassen, ein ENABLE-Signal an die Ausgangsleitung 30 zu geben. Auf diese Weise wird nur E/A-ROM 16 für ein nachfolgendes Auslesen der darin befindlichen Daten ausgewählt.
- Diese bestimmte Seite, aus der im ROM gespeicherte Daten auszulesen sind, wird durch die Ausgabe von dem Adreß-Latch 26 angegeben. Diese Ausgabe wird an einen herkömmlichen Adreß-Decoder 32 angelegt. In Antwort darauf wählt der Decoder 32 eine bestimmte von den im ROM 22 befindlichen 8 Seiten aus.
- Nachfolgend wird ein bestimmtes der 256 in der ausgewählten Seite in ROM 22 gespeicherten Bytes zum Auslesen angegeben. Dies erfolgt durch Anlegen eines zweiten 8-Bit-Datenwortes von Mikroprozessor 10 an den Bus 12, während gleichzeitig ein WRITE-Signal an den Steuerbus 14 angelegt wird. Diese Signale aktivieren das 8-Bit-Adreß-Latch, das in jedem der 32 E/A-ROMs enthalten ist. In Antwort darauf legen die Ausgaben dieses Latches ein 8-Bit-Wort an den entsprechenden, in jedem E/A-ROM enthaltenen Adreß-Decoder an. So legt das 8-Bit- Adreß-Latch 34 in E/A-ROM 16 ein 8-Bit-Wort an den Adreß-Decoder 32 an. Als Ergebnis wird ein bestimmtes der 256 Bytes auf der zuvor angegebenen Seite zum Auslesen ausgewählt.
- In jedem der 32 E/A-ROMs werden die 8 Bits des ausgewählten Byte aus dem ROM ausgelesen und parallel an die 8 Eingänge der jeweiligen J-Bit- Datenausgabepuffer angelegt. Ein solcher Puffer, mit der Bezugszahl 36 bezeichnet, wird in der Zeichnung gezeigt.
- Nach Anliegen eines READ-Signals wird nur der Ausgabepuffer in dem vorher ausgewählten E/A-ROM freigegeben, um ein ausgewähltes Byte von ROM-Daten zum Datenbus 12 zu übertragen. Wenn also ein READ-Signal von Steuerbus 14 an den Ausgabepuffer 36 im ausgewählten E/A-ROM 16 angelegt wird, und während das ENABLE-Signal ebenfalls an den Puffer 36 angelegt wird, wird das ausgewählte Byte aus dem Puffer an den Datenbus 12 übertragen.
- Vorteilhafterweise verbleiben alle Adreß-Latches in dem hier beschriebenen System in ihrem vorherigen verriegelten Zustand, bis eine abweichende Menge von Steuer- und Datenbits nachfolgend hieran angelegt wird. In dem den genannten, bestimmten erläuternden Beispiel bleiben die Ausgänge des 3-Bit-Adreß- Latches 26 und des 8-Bit-Adreß-Latches 34 fest, bis eine abweichende Menge von SELECT- und 3-Bit-Datensignalen an das Latch 26 angelegt wird, und eine abweichende Menge von WRITE- und 8-Bit-Datensignalen an das Latch 34 angelegt wird.
- Gleichfalls verbleiben alle Zuordnungs-Latches in dem System vorteilhafterweise in ihren jeweiligen verriegelten oder nicht verriegelten Zuständen, bis nachfolgende Signale daran aus ihren jeweiligen zugeordneten Adreßkomparatoren angelegt werden. So gibt zum Beispiel das Zuordnungs-Latch 28 nach Verriegelung weiter ein ENABLE-Signal an seine Ausgangsleitung 30, bis der Komparator 24 ein Ausgangssignal gibt, das anzeigt, daß in einem nachfolgenden Auswahlzyklus ein anderes E/A-ROM als die Baugruppe 16 zum Lesen ausgewählt wird.
- Die oben beschriebene Betriebsart der in jedem E/A-ROM enthaltenen Latches ist die Grundlage für die Erleichterung des Zugriffs auf die E/A-ROMs unter bestimmten Bedingungen. So soll beispielsweise angenommen werden, daß das E/A- ROM 16 und Seite 5 davon während des zuvor beschriebenen Auswahlzyklus zum Auslesen ausgewählt wurden. Weiterhin soll angenommen werden, daß Byte 131 auf Seite 5 anschließend während des Schreibzyklus ausgewählt wird und dann während des Lesezyklus ausgelesen wird. Jetzt soll angenommen werden, daß ein oder mehrere zusätzliche Bytes auf Seite 5 der Einheit 22 in E/A-ROM 16 anschließend ausgelesen werden sollen. So wird beispielsweise angenommen, daß Byte 37 auf Seite 5 jetzt aus ROM 22 ausgelesen wird. Da das Zuordnungs-Latch 28 bereits ein ENABLE-Signal an dessen Ausgangsleitung 30 gibt und der Ausgang von Adreß-Latch 26 bereits Seite 5 angibt, ist ein weiterer Auswahlzyklus nicht erforderlich. Um das Auslesen von Byte 37 auf Seite 5 zu beginnen, kann daher der Mikroprozessor 10 den normalen Auswahlzyklus überspringen und sofort zu einem Schreibzyklus springen. Vorteilhafterweise kann das Überspringen des Auswahlzyklus auch für ein unmittelbar folgendes Auslesen von zusätzlichen Bytes auf der vorher ausgewählten Seite 5 des vorher ausgewählten E/A-ROM 16 erfolgen.
- Um eine zusätzliche Fähigkeit des beschriebenen Systems zu veranschaulichen, soll angenommen werden, daß E/A-ROM 16, Seite 5 und Byte 37 auf Seite 5 erst ganz kürzlich zum Auslesen ausgewählt worden sind. Weiterhin soll angenommen werden, daß in einem nächst folgenden Auslesezyklus Byte 37 auf einer anderen Seite als Seite 5 von ROM 22 zum Auslesen auszuwählen ist. Solch ein Zyklus würde damit beginnen, daß Mikroprozessor 10 an den Bus 12 ein neues 8-Bit-Wort anlegt. Die 5 dieser an den Adreßkomparator 24 angelegten Bits würden die gleichen wie in dem vorher angenommenen Zyklus bleiben. Als Ergebnis würde das Zuordnungs-Latch 28 nicht zurückgesetzt werden, und das vorher erzeugte ENABLE- Signal würde weiterhin auf dessen Ausgangsleitung 30 gegeben. Die anderen 3 Bits des neuen 8-Bit-Wortes würden aber den Ausgang von Latch 26 auf eine neue Seitenadresse setzen. Im Gegenzug würde diese neue Adresse von Decoder 32 so übersetzt werden, daß auf eine andere Seite als Seite 5 in ROM 22 gezeigt wird. So soll beispielsweise angenommen werden, daß diese von Latch 26 bezeichnete neue Adresse die von Seite 7 ist.
- Wie zuvor angenommen, stellt die 8-Bit-Ausgabe von Latch 34 in E/A- ROM 16 bereits die Adresse von Byte 37 dar. Daher kann im gesamten Auslesezyklus, in dem Byte 37 auf Seite 7 ausgelesen werden soll, der normale Schreibzyklus übersprungen werden, in dem das Latch 34 aufgebaut wird, um auf ein bestimmtes Byte zu zeigen. Mit anderen Worten kann unter diesen bestimmten Umständen dem normalen Auswahlzyklus ohne einen zwischenliegenden Schreibzyklus sofort ein standardmäßiger Auslesezyklus folgen.
- Vorteilhafterweise kann das zuvor beschriebene Überspringen des Schreibzyklus auch so gesteuert werden, daß es auftritt, wenn Auslesen derselben, vorher ausgewählten Byte-Nummer auf einer beliebigen Seite in einem beliebigen E/A- ROM gewünscht wird, bei dem es sich nicht um das vorher ausgewählte E/A-ROM 16 handelt. Dies ist der Fall, weil der Ausgang von dem 8-Bit-Adreß-Latch in jedem der E/A-ROMs bereits auf die Darstellung von Byte 37 eingestellt ist.
- So würde beispielsweise ein nächster Auslesezyklus, der zum Auslesen von Byte 37 auf Seite 2 von E/A-ROM Nr. 2 dienen soll, einen ersten Auswahlzyklus beinhalten, in dem der Adreßkomparator in E/A-ROM 18 gewählt würde. (Gleichzeitig würde das Nichtauswählen des Komparators 24 im vorher ausgewählten E/A-ROM 16 ein Rücksetzen von Zuordnungs-Latch 28 bewirken und das ENABLE-Signal von dessen Ausgangsleitung 30 wegnehmen.) Auch würde während des Auswahlzyklus eine der Seiten in dem ROM in Baugruppe 18 ausgewählt werden. Aber dann kann der normale Schreibzyklus übersprungen werden, weil der 8-Bit-Adreßkomparator in E/A-ROM 18 bereits zur Darstellung von Byte 37 eingestellt ist. Im normalen Auslesezyklus würde anschließend Byte 37 auf Seite 2 von E/A-ROM 18 an den Datenbus 12 über einen freigegebenen Datenausgabepuffer in der Baugruppe 18 angelegt werden.
- Somit kann, wie oben beschrieben, die Standardbetriebsart des beschriebenen Systems auf günstige Weise unter bestimmten angegebenen Bedingungen modifiziert werden. Wie in den bestimmten Beispielen oben ausgeführt, ergibt sich aus diesen Modifikationen eine vorteilhafte Komprimierung des normalen Auslesezyklus des Systems. In einer Beispielreihe kann der Auswahlanteil des gesamten Auslesezyklus übersprungen werden. In der anderen Beispielreihe kann der Schreibanteil des gesamten Auslesezyklus übersprungen werden.
- Gemäß der Erfindung des Patentanmelders wird nur ein normalerweise zur Datenübertragung verwendeter Datenbus mit ROM verbunden. Es wird kein separater Adreßbus eingesetzt. Die an den Datenbus angelegten Wörter können ein Auslesen entsprechender vorher angegebener, im ROM gespeicherter Wörter wirksam erreichen. Auf diese Weise wird eine direkte und wirksame Konvertierung oder Umsetzung zwischen angewandten Datenwörtern und ausgelesenen Wörtern bewirkt.
- In dem hier beschriebenen bestimmten erläuternden System, in dem 8-Bit- Wörter an den Datenbus 12 und SELECT-, WRITE- und READ-Signale an den Steuerbus 14 angelegt werden, ist es offensichtlich, daß eine relativ große Menge von ROM-Informationen wirksam durch eine relativ einfache Busstruktur gesteuert wird. Beispielsweise kann eine Busstruktur mit nur 13 Leitungen (8 Datenleitungen, 3 Steuerleitungen sowie Spannungs- und Erdungsleitungen) jeweils jederzeit auf 65.536 8- Bit-Bytes an Informationen zugreifen, die in seitenweise organisierten ROM gespeichert sind. Weiterhin belegen die ROM-Informationen selbst keinen Programmplatz. Und es wurde festgestellt, daß das zuvor beschriebene Zugreifen und Auslesen von Informationen aus den ROMs in dem hier beschriebenen System eine wirksame Betriebsart ist, die einen relativ geringen Instruktions-Ballast beeinhaltet.
- Zeichnungsinschrift
- von oben nach unten, von links nach rechts
- LINES = LEITUNGEN
- 24) (J-M)-BIT-ADRESS-KOMPARATOR
- 28) ZUORDNUNGS-LATCH
- SELECT = AUSWÄHLEN
- PAGE = SEITE
- 34) J-BIT ADDRESS LATCH = J-BIT-ADRESS-LATCH
- 32) ADDRESS DECODER = ADRESS-DECODER
- ENABLE = FREIGEBEN
- WRITE = SCHREIBEN
- DATA BUS = DATENBUS
- CONTROL BUS = STEUERBUS
- 36) J-BIT DATA OUTPUT BUFFER = J-BIT-DATENAUSGABEPUFFER
- I/A ROM NO. 2 = ROM NR. 2
- I/A ROM NO. 1 = ROM NR. 1
- READ = LESEN
Claims (7)
1. Datenverarbeitungssystem mit
- einer Speichereinheit (16, 18, 20) zur Speicherung von Datenelementen;
- einem ersten Bus (12), der an die genannte Speichereinheit (16, 18, 20)
angeschlossen ist;
- Auswahlmitteln zur Lieferung von Code-Wörtern an die genannte
Speichereinheit (16, 18, 20) über den genannten ersten Bus zur Auswahl eines
bestimmten Datenelements,
- einem zweiten Bus (14), mit der genannten Speichereinheit (16, 18, 20)
verbunden, zur Lieferung eines Freigabesignals, das die genannten Code-Wörter
freigibt,
dadurch gekennzeichnet, daß die Speichereinheit (16, 18, 20) Ausgabemittel (36) zum
Anlegen des bestimmten Datenelements an den ersten Bus (12) während eines
Ausgabezyklus umfaßt, daß der zweite Bus (14) für die Lieferung eines Ausgabe-
Freigabesignals angeordnet ist und nachfolgende Auswahl-Freigabesignale, die
nachfolgende Zyklen freigeben, und dadurch, daß die Auswahlmittel für die Lieferung
von Code-Wörtern an die Speichereinheit (16, 18, 20) in einer Folge der Auswahlzyklen
angeordnet sind, wobei das Code-Wort in einem Zyklus eine Datensammlung
bezeichnet, die eine Unterteilung einer anderen, durch ein Code-Wort in einem anderen
Zyklus bezeichneten Datensammlung ist; die Speichereinheit (16, 18, 20) umfaßt eine
Mehrzahl von Latches (26, 34), die einerseits an den ersten Bus (12) und an den
zweiten Bus (14) gekoppelt sind und andererseits über einen Adreß-Decoder (32) an den
Speicher, und zwar jeweils zur Speicherung des Code-Wortes, das während eines
entsprechenden der Auswahlzyklen unter Steuerung der Freigabesignale geliefert wurde,
wobei ein Informationsinhalt jedes Latch (34, 26) unabhängig von den übrigen Latches
veränderbar ist, und wobei der Informationsinhalt in jedem Latch (26, 34) so lange
gehalten wird, bis ein darauffolgendes, an den ersten Bus (12) angelegtes Code-Wort in
diesem Latch (34, 26) gespeichert wird, und wobei die Latches (34, 26) zur Aktivierung
des genannten Adreß-Decoders (32) angeordnet sind, um das bestimmte Datenelement
unter Steuerung der in den Latches (34, 26) gespeicherten Code-Wörter auszuwählen.
2. Datenverarbeitungssystem nach Anspruch 1, wobei das Ausgabemittel
einen Ausgabepuffer (36) umfaßt, der zwischen dem Speicher und dem ersten Bus (12)
bereitgestellt wird, um unter Steuerung des genannten Ausgabesignals das genannte
bestimmte Datenelement an den ersten Bus (12) zu übertragen.
3. Datenverarbeitungssystem nach Anspruch 2 mit einer Mehrzahl von
Speichereinheiten (16, 18, 20), wobei jeder Speichereinheit einer aus der genannten
Mehrzahl von Latches (26, 34), ein genannter Adreß-Decoder (32) und ein genannter
Ausgabepuffer (36) zugeordnet sind.
4. Ein Datenverarbeitungssystem nach Anspruch 3, wobei für jede
Speichereinheit (16, 18, 20) ein Adreßkomparator (28) bereitgestellt ist, der auf einen
Teil eines bestimmten Code-Wortes antwortet, um unter Steuerung eines dem
Auswahlzyklus zugeordneten Freigabesignals mit dem genannten Code-Wort die
zugehörige Speichereinheit (16, 18, 20) auszuwählen, wobei ein Rest des genannten
bestimmten Code-Worts eine Datensammlung innerhalb genannter Speicherheinheit (16,
18, 20) bezeichnet.
5. Ein Datenverarbeitungssystem nach Anspruch 4, wobei ein Zuordnungs-
Latch (28) zwischen jedem Adreßkomparator (24) und dem zugeordneten Ausgabepuffer
(36) bereitgestellt ist, um bei Auswahl der zugeordneten Speichereinheit (16, 18, 20)
den Ausgabepuffer (36) zu aktivieren, wobei jeder Ausgabepuffer (36) das
Ausgabefreigabesignal vom genannten zweiten Bus (14) erhält.
6. Datenverarbeitungssystem nach einem der vorausgehenden Anspruche,
wobei ein Mikroprozessor (10) an den ersten Bus (12) und an den zweiten Bus (14)
gekoppelt ist, um die Code-Wörter und die Freigabesignale an die genannten Busse (12,
14) zu liefern.
7. Speichereinheit zur Verwendung in einer Datenverarbeitungsanordnung
nach Anspruch 1 bis 6 mit einer Mehrzahl von Latches (26, 34), die einerseits mit dem
ersten Bus (12) und mit dem zweiten Bus (14) verbunden sind und andererseits über
einen Adreß-Decoder (32) mit dem Speicher (22), und zwar zur Speicherung der Code-
Wörter, die während der Auswahlzyklen unter Steuerung der Freigabesignale geliefert
werden, und zur Aktivierung genannten Adreß-Decoders (32), um das bestimmte
Datenelement unter Steuerung der in den Latches (26, 34) gespeicherten Code-Wörter
auszuwählen, wobei die Speichereinheit Ausgabemittel (36) zum Anlegen des
bestimmten Datenelements an den ersten Bus (12) während eines Ausgabezyklus umfaßt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/136,249 US4905137A (en) | 1987-12-18 | 1987-12-18 | Data bus control of ROM units in information processing system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3851210D1 DE3851210D1 (de) | 1994-09-29 |
DE3851210T2 true DE3851210T2 (de) | 1995-03-02 |
Family
ID=22472017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3851210T Expired - Fee Related DE3851210T2 (de) | 1987-12-18 | 1988-12-13 | Datenbussteuerung von ROM-Einheiten in einer Informationsverarbeitungsanordnung. |
Country Status (4)
Country | Link |
---|---|
US (1) | US4905137A (de) |
EP (1) | EP0321044B1 (de) |
JP (1) | JPH01281544A (de) |
DE (1) | DE3851210T2 (de) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5243701A (en) * | 1987-09-17 | 1993-09-07 | Mitsubishi Denki Kabushiki Kaisha | Method of and system for processing data having bit length variable with modes of operation |
EP1542130B1 (de) | 2003-12-12 | 2007-04-11 | STMicroelectronics S.A. | Serieller Speicher mit Mitteln zur Integration eines erweiterten Speicherfeldes |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4158227A (en) * | 1977-10-12 | 1979-06-12 | Bunker Ramo Corporation | Paged memory mapping with elimination of recurrent decoding |
JPS5525106A (en) * | 1978-08-09 | 1980-02-22 | Toshiba Corp | Main memory control system |
US4315308A (en) * | 1978-12-21 | 1982-02-09 | Intel Corporation | Interface between a microprocessor chip and peripheral subsystems |
US4325120A (en) * | 1978-12-21 | 1982-04-13 | Intel Corporation | Data processing system |
US4495571A (en) * | 1979-01-31 | 1985-01-22 | Honeywell Information Systems Inc. | Data processing system having synchronous bus wait/retry cycle |
US4306298A (en) * | 1979-10-09 | 1981-12-15 | Texas Instruments Incorporated | Memory system for microprocessor with multiplexed address/data bus |
JPS56153574A (en) * | 1980-04-28 | 1981-11-27 | Ricoh Co Ltd | Memory device |
DE3016952C2 (de) * | 1980-05-02 | 1984-04-26 | Standard Elektrik Lorenz Ag, 7000 Stuttgart | Schaltungsanordnung zum Erweitern des Adressbereichs eines rechnergesteuerten Vermittlungssystems |
JPS578980A (en) * | 1980-06-18 | 1982-01-18 | Hitachi Ltd | Memory device |
US4381542A (en) * | 1980-10-20 | 1983-04-26 | Digital Equipment Corporation | System for interrupt arbitration |
GB2092341B (en) * | 1981-02-02 | 1984-09-12 | Picker Int Ltd | Computer peripheral selection |
US4407016A (en) * | 1981-02-18 | 1983-09-27 | Intel Corporation | Microprocessor providing an interface between a peripheral subsystem and an object-oriented data processor |
US4368515A (en) * | 1981-05-07 | 1983-01-11 | Atari, Inc. | Bank switchable memory system |
JPS59188890A (ja) * | 1983-04-11 | 1984-10-26 | Hitachi Ltd | 半導体集積回路におけるコントロ−ル回路 |
US4675808A (en) * | 1983-08-08 | 1987-06-23 | American Telephone And Telegraph Company At&T Bell Laboratories | Multiplexed-address interface for addressing memories of various sizes |
JPS60205644A (ja) * | 1984-03-29 | 1985-10-17 | Ascii Corp | メモリアドレス拡張方式 |
JPS62250581A (ja) * | 1986-04-23 | 1987-10-31 | Hitachi Ltd | 半導体集積回路装置 |
-
1987
- 1987-12-18 US US07/136,249 patent/US4905137A/en not_active Expired - Fee Related
-
1988
- 1988-12-13 DE DE3851210T patent/DE3851210T2/de not_active Expired - Fee Related
- 1988-12-13 EP EP88202847A patent/EP0321044B1/de not_active Expired - Lifetime
- 1988-12-15 JP JP63317566A patent/JPH01281544A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
EP0321044B1 (de) | 1994-08-24 |
DE3851210D1 (de) | 1994-09-29 |
EP0321044A3 (en) | 1990-08-08 |
EP0321044A2 (de) | 1989-06-21 |
US4905137A (en) | 1990-02-27 |
JPH01281544A (ja) | 1989-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2753063C3 (de) | ||
DE2231146C3 (de) | Datenverarbeitungsanlage mit virtueller Adressierung | |
DE2260353C2 (de) | Schaltungsanordnung für die Adressenumsetzung in einer Datenverarbeitungsanlage | |
DE2725395C3 (de) | Einrichtung zur Echtzeittransformation von m in Zeilen angeordneten Wörtern der Bitlänge n in n in Spalten angeordneten Wörter der Bitlänge n | |
DE3586260T2 (de) | Mikroprozessorsystem. | |
DE3909896C2 (de) | ||
DE2154106A1 (de) | Arbeitsspeicherwerk | |
DE1966633B2 (de) | Datenverarbeitungsanlage mit überlappter Arbeitswelse bei Verwendung eines Haupt- und Pufferspeichers | |
DE4022885C2 (de) | Verfahren zum Verschieben von Speicherbereichen und Hierarchie-Speichersystem | |
DE2617408A1 (de) | Datenverarbeitungsgeraet | |
DE3438869A1 (de) | Computersystem mit adressumwandlung | |
DE2523414A1 (de) | Hierarchische speicheranordnung | |
DE2055784A1 (de) | Datenverarbeitungssystem | |
DE3011552A1 (de) | Datenverarbeitungsanlage mit einem hauptspeicher sowie wenigsten einem datenprozessor mit zugeordnetem adressenumformer | |
DE68923433T2 (de) | Einrichtung und Methode um Festwertspeicher in einem Rechnerspeicherbereich anzuordnen. | |
DE2054830C3 (de) | Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge | |
DE4019135A1 (de) | Serieller speicher auf ram-basis mit parallelem voraus-lesen | |
DE2939411C2 (de) | Datenverarbeitungsanlage mit virtueller Speicheradressierung | |
DE3015875A1 (de) | Speicherzugriffssystem und verfahren fuer einen zugriff zu einem digitalen speichersystem | |
DE2717658A1 (de) | Anordnung zur ansteuerung eines mikroprogrammspeichers | |
DE2353635C2 (de) | Vorrichtung zur Datenverarbeitung | |
DE3128729A1 (de) | Halbleiter-speichersystem | |
DE2422732A1 (de) | Hierarchische speicheranordnung | |
DE68925376T2 (de) | In Direktabbildung und in Bankabbildung wirksamer Informationsprozessor und Verfahren zum Schalten der Abbildungsschemas | |
DE1922304A1 (de) | Datenspeichersteuergeraet |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8327 | Change in the person/name/address of the patent owner |
Owner name: PHILIPS ELECTRONICS N.V., EINDHOVEN, NL |
|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: KONINKLIJKE PHILIPS ELECTRONICS N.V., EINDHOVEN, N |
|
8339 | Ceased/non-payment of the annual fee |