DE3587948T2 - Mikroprozessorsystem. - Google Patents
Mikroprozessorsystem.Info
- Publication number
- DE3587948T2 DE3587948T2 DE3587948T DE3587948T DE3587948T2 DE 3587948 T2 DE3587948 T2 DE 3587948T2 DE 3587948 T DE3587948 T DE 3587948T DE 3587948 T DE3587948 T DE 3587948T DE 3587948 T2 DE3587948 T2 DE 3587948T2
- Authority
- DE
- Germany
- Prior art keywords
- address
- memory
- microprocessor
- data
- instruction
- 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 - Lifetime
Links
- 230000015654 memory Effects 0.000 claims description 100
- 230000004044 response Effects 0.000 claims description 15
- 230000002457 bidirectional effect Effects 0.000 claims description 7
- 238000000034 method Methods 0.000 claims description 5
- 230000008878 coupling Effects 0.000 claims description 4
- 238000010168 coupling process Methods 0.000 claims description 4
- 238000005859 coupling reaction Methods 0.000 claims description 4
- 230000003213 activating effect Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000002401 inhibitory effect Effects 0.000 claims description 2
- 230000003111 delayed effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 13
- 230000002093 peripheral effect Effects 0.000 description 4
- 101150067286 STS1 gene Proteins 0.000 description 3
- 101100028967 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) PDR5 gene Proteins 0.000 description 3
- 101150027289 Ubash3b gene Proteins 0.000 description 3
- 102100040338 Ubiquitin-associated and SH3 domain-containing protein B Human genes 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000001208 nuclear magnetic resonance pulse sequence Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/41—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/413—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
- G11C11/417—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the field-effect type
- G11C11/419—Read-write [R-W] circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4009—Coupling between buses with data restructuring
- G06F13/4018—Coupling between buses with data restructuring with data-width conversion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Bus Control (AREA)
Description
- Die vorliegende Erfindung betrifft ein Mikroprozessorsystem, welches durch die Kopplung eines Speichers und/ oder E/A-Geräts mit einem n/2 Bit breiten Datenbus an einen Mikroprozessor mit einem n Bit breiten Datenbus konfiguriert ist.
- Der Fortschritt in der Halbleitertechnologie der letzten Jahre hat die Schaffung eines Hochleistungs-Computersystems durch eine Kombination eines Mikroprozessors und seiner peripheren Steuer-LSI's (DMA-Controller etc.) in dem Ausmaß ermöglicht, daß Computersysteme problemlos konstruiert werden können. Da außerdem die 8-Bit-Mikroprozessoren allmählich durch 16- und 23-Bit-Mikroprozessoren ersetzt werden, ist die Leistungsfähigkeit der Mikroprozessoren gesteigert worden. Die meisten der derzeit verfügbaren peripheren Steuer-LSI's werden jedoch auf einer 8-Bit-Basis betrieben. Steuert beispielsweise ein 16-Bit-Mikroprozessor einen peripheren Steuer-LSI mit einem 8 Bit breiten Datenbus, so werden zwei Byte-Übergabeanweisungen anstelle von einer Wortübergabeanweisung verwendet. Auf diese Weise muß ein Programmierer ein Programm unter Berücksichtigung von Kombinationen aus der Systemarchitektur und der aus führbaren Anweisungen (1-/2-/4-Byte-Zugriffsanweisungen oder dergl.) erstellen. Da eine Wortübergabeanweisung in dem 8 Bit breiten peripheren Steuer-LSI nicht verwendet werden kann, muß die für 16-Bit-Mikroprozessoren vorhandene Software neu geschrieben werden, so daß eine 16-Bit-Wortanweisung durch zwei Byte-Übergabeanweisungen ersetzt wird.
- Nachfolgend wird der Stand der Technik beschrieben. Die Fig. 1 ist ein Blockschema eines herkömmlichen Mikroprozessorsystems. Das System umfaßt einen Mikroprozessor (uCPU 8086) 1, einen Bus-Controller (BUS CTRLR) 2, einen Signalspeicher (LATCH) 3, einen Bus-Sender/Empfänger 4, einen Speicher und/oder ein E/A-Gerät (MEMORY AND/OR I/O) (im folgenden als Speicher bezeichnet) 5 mit einem 16 Bit breiten Datenbus und einen Systembus 6. Der Mikroprozessor 1 umfaßt beispielsweise einen von der Intel Corp., USA, verfügbaren Mikroprozessor 8086. Der Mikroprozessor 1 empfängt einen Takt CLK und sendet Statusdaten STS1 an den Controller 2. Mit Erhalt des Datums STS1 liefert der Controller 2 ein Lese-/Schreibsteuersignal STS an den Speicher 5 o.a. Der Mikroprozessor 1 ist über einen Adreßdatenbus ADR/DAT mit dem Signalspeicher 3 und dem Sender/Empfänger 4 verbunden. Der Mikroprozessor 1 liefert ein Adreßsignal an den Signalspeicher 3 und ein Datensignal an den Sender/Empfänger 4. Der Signalspeicher 3 empfängt das Adreßsignal vom Mikroprozessor und liefert eine Adresse ADDR an den Speicher 5. Der Sender/Empfänger 4 ist über einen Datenbus DATA und den Bus 6 mit dem Speicher 5 verbunden und übergibt Daten von dem oder an den Speicher 5. Der Controller 2 liefert ein Signal ALE an den Signalspeicher 3 und ein Signal BDCTL an den Sender/Empfänger 4. Das Signal ALE steuert einen Speichertakt der Adresse, und das Signal BDCTL steuert den Eingang/Ausgang des Senders/Empfängers 4.
- Nunmehr wird die Funktionsweise des Mikroprozessorsystems beschrieben. Die Fig. 2A bis 2E sind Zeitdiagramme zur Verdeutlichung einer Lesezyklus-Wortübergabeanweisung, beginnend ab einer geradzahligen Adresse in der Schaltung der Fig. 1. Der Maschinenzyklus besteht im wesentlichen aus Takten (CLK) T1, T2; T3 und T4, wie aus der Fig. 2A ersichtlich. In dem mit der geradzahligen Adresse beginnenden Lesezyklus generiert der Mikroprozessor 1 die Adresse und das Statusdatum als Reaktion auf den Takt T1, wie in der Fig. 2B gezeigt. Der Controller 2 liefert das Signal ALE an den Signalspeicher 3 als Reaktion auf das Statusdatum, wie in der Fig. 2D gezeigt. Der Controller 2 liefert das Signal STS an den Speicher 5, wie in der Fig. 2C gezeigt. Der Signalspeicher 3 speichert die Adresse als Reaktion auf das vom Controller 2 generierte Signal ALE. Ein 16 Bit breites Datum wird aus dem Speicher 5 auf den Bus DATA ausgelesen, und der Sender/Empfänger 4 sendet das in der Fig. 2B dargestellte 16 Bit breite Datum mittels dem in der Fig. 2E dargestellten Steuersignal BCTL vom Bus-Controller 2 auf den Bus ADR/DAT.
- Der Mikroprozessor 1 ruft das Datum an der abfallenden Flanke des Taktes T3 ab. Die Wortübergabeanweisung des ab einer ungeradzahligen Adresse beginnenden Lesezyklus enthält zwei Zugriffszyklen. Der Datenabruf erfolgt auf die gleiche Weise wie in dem ab einer geradzahligen Adresse beginnenden Lesezyklus. Im ersten Zugriffszyklus wird jedoch das der geradzahligen Startadresse entsprechende Datum als der höchstwertige Teil des 16 Bit-Datums abgerufen. Die Adresse wird dann aktualisiert, und in dem zweiten Zugriffszyklus wird das der ungeradzahligen Startadresse entsprechende Datum als der niedrigstwertige Teil abgerufen. Auf diese Weise wird das 16 Bit-Datum durch den Mikroprozessor 1 abgerufen.
- Die obige Operation kann auf die gleiche Weise wie in der Wortübergabeanweisung des Schreibzyklus erfolgen. Wie aus der obigen Beschreibung deutlich wird, hat das dem Stand der Technik entsprechende Mikroprozessorsystem eine 16 Byte-Bereichsgrenze. Obwohl eine Adresse ein 1-Byte-Datum hat, hat die Adresse als Ziel einen Speicher mit einem im wesentlichen 16 Bit breiten Datenbus. Aus diesem Grund ist die Mikroprozessorsystemkonfiguration nicht flexibel, was zu unkomfortabler Handhabung führt (nähere Informationen hierzu siehe MEMORY ORGANIZATION OF MICROPROCESSOR AND PERIPHERALS HANDBOOK, 1983, veröffentlicht von Intel Corp.).
- Die dem Stand der Technik zugehörige Veröffentlichung E.D.N. Electrical design news, Bd. 29, Nr. 16, vom 9. August 1984, S. 199 bis 206, beschreibt ein Verfahren zur automatischen Wandlung einer Wortübergabeanweisung in zwei 1/2-Wortübergabeanweisungen in einem Mikroprozessorsystem, welches durch die Kopplung eines Speichers und/oder E/A- Geräts mit einem n/2 Bit breiten Datenbus an einen Mikroprozessor mit einem n Bit breiten Datenbus konfiguriert ist. Dieses Verfahren umfaßt die folgenden Schritte:
- (a) Extrahieren eine Lese-/Schreibsteuersignals für den Speicher und/oder das E/A-Gerät aus den vom Mikroprozessor generierten Statusdaten, wenn der Mikroprozessor die Wortübergabeanweisung ausführt, Liefern des Lese-/Schreibsteuersignals zusammen mit einer Adresse an den Speicher und/oder das E/A-Gerät, Setzen eines Buswandlers für die Verbindung eines mit dem Speicher und/oder dem E/A-Gerät gekoppelten Datenbusses mit einem n Bit breiten Datenbus und Starten eines ersten Zugriffszyklus; und
- (b) Veranlassen des Mikroprozessors, die Generierung des Lese-/Schreibsteuersignals zu sperren, um die Wortübergabeanweisung abzuschließen. Des weiteren wird in einem ersten Schritt ein erster Zugriffszyklus auf den Speicher und/oder das E/A-Gerät ausgeführt, wobei der erste Schritt folgendes umfaßt:
- einen Schritt zur Bestimmung, daß die vom Mikroprozessor ausgeführte Anweisung eine Wortübergabeanweisung für den Speicher und/oder das E/A-Gerät ist;
- einen Schritt zum Setzen des Mikroprozessors in einen Wartestatus, bevor der ersten Zugriffszyklus abgeschlossen ist und wenn bestimmt wird, daß es sich bei der Anweisung um eine Wortübergabeanweisung für den Speicher und/oder das E/A-Gerät handelt; und
- einen Schritt zum Sperren der Generierung des Lese-/ Schreibsteuersignals, um den ersten Zugriffszyklus zu beenden. Danach wird die Adresse aktualisiert, indem 1 zur Adresse addiert wird, während das Lese-/Schreibsteuersignal deaktiviert ist, die aktualisierte Adresse wird an den Speicher und/oder das E/A-Gerät geliefert und das Lese-/ Schreibsteuersignal wird wieder aktiviert, um den zweiten Zugriffszyklus zu starten. Schließlich wird ein zweiter Zugriffszyklus auf den Speicher und/oder das E/A-Gerät ausgeführt, wobei der Wartestatus des Mikroprozessors während des zweiten Zugriffszyklus aufgehoben ist.
- Während das obige E.D.N.-Dokument einen geradzahligen Lese- und Schreibzyklus beschreibt, in dem das niedere Byte zuerst übergeben, die Adresse durch Addieren von 1 aktualisiert und dann das höhere Byte übergeben wird, beschreibt die dem Stand der Technik zugehörige Veröffentlichung COM- PUTER DESIGN, Bd. 24, Nr. 1, Januar 1985, S. 187-1994, 196, 198, Littleton, Massachusetts, USA, M.S. YOUNG et al.: "Mixing data paths expands options in system design" einen ungeradzahligen Lese- und Schreibzyklus, in dem das höhere Byte zuerst übergeben wird.
- Es ist eine Aufgabe der vorliegenden Erfindung, ein Mikroprozessorsystem und ein Verfahren bereitzustellen, welche in der Lage sind, eine Wortübergabeanweisung automatisch in zwei Byte-Übergabeanweisungen zu wandeln.
- Zur Lösung dieser Aufgabe stellt die vorliegende Erfindung ein Mikroprozessorsystem und ein Verfahren bereit, wie in den Ansprüchen 1 bzw. 11 definiert.
- Entsprechend dem Mikroprozessorsystem der vorliegenden Erfindung braucht ein Software-Programmierer die Wort- und die Byte-Übergabeanweisung nicht selektiv entsprechend der Datenbusbreite des Speichers und/oder des E/A-Geräts zu verwenden. Mit anderen Worten, der Programmierer kann stets Wortübergabeanweisungen verwenden.
- Diese Erfindung wird anhand der nachstehenden detaillierten Beschreibung in Zusammenhang mit den beiliegenden Zeichnungen erläutert; es zeigen:
- Fig. 1 ein Blockschema eines dem Stand der Technik entsprechenden Mikroprozessorsystems;
- Fig. 2A bis 2E Impulsdiagramme zur Erläuterung des ab einer geradzahligen Adresse im System der Fig. 1 beginnenden Lesezyklus, wobei die Fig. 2A einen Takt CLK, die Fig. 2B einen Status des Adreßdatenbusses ADR/DAT, die Fig. 2C das von einem Bus-Controller 2 generierte Lese-/Schreibsteuersignal STS, die Fig. 2D ein vom Controller 2 generiertes Adreßzwischenspeicher- Steuersignal ALE und die Fig. 2E ein vom Controller 2 generiertes Signal BDCTL zur Steuerung des Senders/Empfängers 4 zeigt;
- Fig. 3 ein Blockschema eines Mikroprozessorsystems entsprechend einer Ausführungsform der vorliegenden Erfindung;
- Fig. 4 ein detailliertes Blockschema eines Lese-/ Schreib-Controllers in dem in der Fig. 3 dargestellten System;
- Fig. 5 ein detailliertes Blockschema eines Detektors in dem in der Fig. 3 dargestellten System;
- Fig. 6 ein detailliertes Blockschema eines Zählers in dem in der Fig. 3 dargestellten System;
- Fig. 7 ein detailliertes Blockschema eines Adreßsignalspeicher-Zählers in dem in der Fig. 3 dargestellten System;
- Fig. 8 ein detailliertes Blockschema eines Buswandlers in dem in der Fig. 3 dargestellten System;
- Fig. 9A bis 9T, Fig. 10A bis 10T und Fig. 11A bis 11T Impulsdiagramme zur Erläuterung der Wortübergabeanweisungen der Lese-, Schreib- und Lesezyklen, die ab geradzahligen, geradzahligen bzw. ungeradzahligen Adressen beginnen, in einem Mikroprozessorsystem, welches durch die Verbindung eines Speichers und/oder E/A-Geräts mit einem 8 Bit breiten Datenbus und eines 16 Bit-Mikroprozessors konfiguriert ist, wobei die Fig. 9A, 10A und 11A die Takte CLK, die Fig. 9B, 10B und 11B die von einem Mikroprozessor generierten Statusdaten STS , die Fig. 9C, 10C und 11C Signale COMEN/DIS zur Steuerung der Generierung des Lese-/Schreibsteuersignals, die Fig. 9D, 10D und 11D Ausgänge STS des Lese-/ Schreibsteuersignals, die Fig. 9E, 10E und 11E Zustände eines Adreßdatenbusses ADR/DAT 15-0, die Fig. 9F, 10F und 11F die Zustände eines Adreßbusses ADDR 19-1, die Fig. 9G, 10G und 11G die Zustände eines Adreßbit ADDR0, die Fig. 9H, 10H und 11H Signale WAIT zur Steuerung der Wartezustände des Mikroprozessors, die Fig. 9I, 10I und 11I Signale RESE zum Rücksetzen des Takt-Controllers, die Fig. 9J, 10J und 11J die Zustände eines Datenbusses DATA 7-0, die Fig. 9K, 10K und 11K die Zustände eines Datenbusses DATA 15-8, die Fig. 9L und 10L die Ausgänge eines Signalspeichers 74, die Fig. 11L dagegen einen Ausgang eines Signalspeichers 72, die Fig. 9M, 10M und 11M Signale BD1DIR zur Bestimmung der Ausgangsrichtung eines bidirektionalen Bustreibers 71, die Fig. 9N, 10N und 11N Signale BD1EN zum Sperren der Ausgangsgenerierung des Treibers 71, die Fig. 9O, 10O und 110 Signale BD2DIR zur Bestimmung der Ausgangsrichtung eines bidirektionalen Bustreibers 73, die Fig. 9P, 10P und 11P Signale BD2EN zur Aktivierung oder Deaktivierung der Ausgangsgenerierung des Treibers 73, die Fig. 9Q, 10Q und 11Q Signale BD3DIR zur Bestimmung der Ausgangsrichtung eines bidirektionalen Bustreibers 75, die Fig. 9R, 10R und 11R Signale BD3EN zur Aktivierung oder Deaktivierung der Ausgangsgenerierung des Treibers 75, die Fig. 9S und 10S Signale LT1CNT zur Steuerung der Zwischenspeichertakte des Signalspeichers 74, die Fig. 11S dagegen ein Signal LT2CNT zur Steuerung eines Zwischenspeichertaktes des Signalspeichers 72 und die Fig. 9T und 10T Signale LT1EN zur Steuerung der Generierung von im Signalspeicher 74 zwischengespeicherten Daten, die Fig. 11T dagegen ein Signal LT2EN zur Steuerung der Generierung von im Signalspeicher 72 zwischengespeicherten Daten zeigen; und
- Fig. 12 ein Blockschema einer Modifikation des Adreß- Signalspeicher-Zählers der Fig. 3,.
- Die vorliegende Erfindung wird nunmehr unter Bezugnahme auf eine bevorzugte Ausführungsform detailliert beschrieben.
- Die Fig. 3 ist ein Blockschema eines Mikroprozessorsystems, welches durch Verbinden eines Speichers oder E/A-Geräts 17 mit einem 8 Bit breiten Datenbus und eines 16 Bit-Mikroprozessors 11 konfiguriert ist.
- Zunächst wird die Architektur des Systems unter Bezugnahme auf die Fig. 3 beschrieben. Das Mikroprozessorsystem umfaßt den Mikroprozessor 11, einen Lese-/Schreib-Controller 12, einen Adreßsignalspeicher-Zähler 13, einen Taktgenerator 14, einen Buswandler 15, einen 16 Bit-Speicher oder ein E/A-Gerät 17, einen 8 Bit-Speicher oder ein E/A-Gerät 17 und einen Systembus 18. Der Taktgenerator 14 umfaßt des weiteren einen Detektor 19, einen Zähler 20 und einen Taktgeber-Controller 21. Der Mikroprozessor 11 empfängt vom Controller 21 einen Takt CLK und ein Wartesteuersignal WAIT und liefert ein Statusdatum STS an den Controller 12 und eine Adresse ADR 19-0 an den Zähler 13. Der Controller 12 umfaßt einen Decodierer 31, einen Impulsgeber 32, einen Signalspeicher 33 und ein Gatter 34, wie aus der Fig. 4 ersichtlich ist. Der Decodierer 31 decodiert das vom Mikroprozessor 11 gelieferte Statusdatum STS und liefert das decodierte Datum an den Impulsgeber 32 und den Signalspeicher 33. Der Impulsgeber 32 liefert bei Vorliegen des Taktes CLK ein Adreßzwischenspeicher-Steuersignal ALE an den Zähler 13. Der Signalspeicher 33 speichert als Reaktion auf den Takt CLK die Ausgänge vom Decodierer 33, und die zwischengespeicherten Daten werden an das Gatter 34 gelegt.
- Das Gatter 34 liefert ein Lese-/Schreibsteuersignal STS welches den Lese- oder Schreibmodus des Speichers oder des E/A-Geräts repräsentiert, an den Detektor 19 und den Controller 21 und wird vom Steuersignal COMEN/DIS des später zu beschreibenden Controllers 21 gesteuert. Das Gatter 34 liefert außerdem das Lese-/Schreibsteuersignal STS über den Bus 18 an die Speicher und/oder E/A-Geräte 16 und 17.
- Der Adreßsignalspeicher-Zähler 13 umfaßt einen Signalspeicher 61 und einen Zähler 62, wie in der Fig. 7 dargestellt. Der Signalspeicher 61 speichert die Adresse ADR 19-0 vom Mikroprozessor 11 als Reaktion auf das Signal ALE vom Controller 12. Die Adresse ADR 19-0 wird an den Zähler 62 und den Detektor 19 geliefert. Das niedrigstwertige Bit ADR 0 der Adresse wird an den Controller 21 geliefert. Der Zähler 62 empfängt den Ausgang des Signalspeichers 61 als einen voreingestellten Wert und wird als Reaktion auf ein auf logisch "1" liegendes Signal vom Controller 21 hochgezählt. Das aktualisierte Adreßdatum wird vom Zähler 62 über einen Bus ADDR 19-0 und den Bus 18 an die Speicher und/oder E/A- Geräte 16 und 17 geliefert. Der Detektor 19 umfaßt einen Decodierer 41 und Gatter 42 und 43, wie in der Fig. 5 dargestellt. Der Decodierer 41 decodiert das vom Zähler 13 generierte Adreßdatum ADR 19-0 und liefert das decodierte Ergebnis an das Gatter 43. Das Gatter 42 berechnet das NAND-Produkt der Lese-/Schreibsteuersignale STS als Ausgänge des Controllers 12 und legt das NAND-Signal an das Gatter 43. Das Gatter 43 berechnet außerdem das NAND- Produkt der Eingänge. Wird bestimmt, daß es sich bei einer vom Mikroprozessor 11 ausgeführten Anweisung um eine Wortübergabeanweisung für den 8 Bit-Speicher und/oder das E/A- Gerät 17 handelt, so liefert das Gatter 43 ein Erkennungssignal DET an den Zähler 20 und den Controller 21. Der Zähler 20 umfaßt einen Zähler 51, eine Verzögerungseinrichtung 52 und einen Impulsgeber 53, wie in der Fig. 6 dargestellt. Der Zähler 51 zählt das Ausgangssignal DET vom Detektor 19.
- Wenn der Zählwert des Zählers 51 "2" erreicht hat, d. h. bei Start des zweiten Zugriffszyklus, liefert der Zähler 51 ein Signal CYC an den Controller 21 und die Verzögerungseinrichtung 52. Die Verzögerungseinrichtung 52 empfängt den Ausgang des Zählers 52 und das Taktsignal CLK.
- Nach Ablauf einer vorgegebenen Zeitspanne liefert die Verzögerungseinrichtung 52 ein Signal an den Impulsgeber 53. Der Impulsgeber 53 liefert ein Signal RESE an den Controller 21, um diesen rückzusetzen. Wie aus der Fig. 3 ersichtlich ist, tauscht der Mikroprozessor 11 über einen Datenbus DAT Daten mit dem Wandler 15 aus. Wie aus der Fig. 8 ersichtlich ist, umfaßt der Wandler 15 die bidirektionalen Bustreiber 71, 73 und 75 sowie die Signalspeicher 72 und 74. Ein aus dem Treiber 71 und dem Signalspeicher 72 bestehender Satz und ein anderer aus dem Treiber 73 und dem Signalspeicher 74 bestehender Satz sind zwischen den Datenbussen DAT 15-8 und DATA 15-8 sowie zwischen den Datenbussen DAT 7-0 und DATA 7-0 parallel geschaltet. In diesem Fall sind die Signalspeicher 72 und 74 so geschaltet, daß sie Daten an den Mikroprozessor 11 liefern. Der Treiber 75 ist so angeordnet, daß er den Bus DATA 15-0 mit dem Bus DATA 7-0 koppelt. Der Wandler 15 empfängt vom Controller 21 die Steuersignale BD1EN und BD1DIR für den Treiber 71, die Steuersignale BD2EN und BD2DIR für den Treiber 73, die Steuersignale BD3EN und BD3DIR für den Treiber 75, die Steuersignale LT2CNT und LT2EN für den Signalspeicher 72 und die Steuersignale LT1CNT und LT1EN für den Signalspeicher 74. Die Speicher und/oder E/A-Geräte 16 und 17 empfangen das Signal STS und eine Adresse ADDR. Der Datenbus DATA 15-0 ist mit dem 16 Bit-Speicher und/oder dem E/A- Gerät 16, und der Datenbus DATA 7-0 ist mit dem 8 Bit-Speicher und/oder dem E/A-Gerät 17 gekoppelt. Der Speicher und/ oder das E/A-Gerät 17 ist mit einer zuvor zugewiesenen Adresse gekoppelt.
- Die Funktionsweise des Mikroprozessorsystems dieser Ausführungsform wird nunmehr unter Bezugnahme auf die Impulsdiagramme der Fig. 9A bis 11T beschrieben. Zuerst wird ein ab einer geradzahligen Adresse beginnender Lesezyklus unter Bezugnahme auf die Fig. 9A bis 9T beschrieben. Das Taktsignal CLK besteht im wesentlichen aus Taktimpulsen T1, T2, T3 und T4. Wird der Mikroprozessor 11 im Wartezustand gehalten, so wird das Taktsignal CLK durch TW gebildet. Führt der Mikroprozessor 11 die Wortübergabeanweisung aus, so - liefert er den Status STS an den Controller 12, wie in der Fig. 9B dargestellt. Der Mikroprozessor 11 liefert außerdem die Adresse an den Adreßsignalspeicher-Zähler 11, wie in der Fig. 9E dargestellt. Der Zähler 13 speichert die Adresse als Reaktion auf ein Zwischenspeicher-Steuersignal ALE vom Lese-/Schreib-Controller 12, wie in den Fig. 9F und 9G dargestellt. Wie aus der Fig. 9C ersichtlich ist, generiert der Controller 12 das Signal STS, da das Signal COM EN/ DIS zum Deaktivieren eines Lese-/Schreibsteuersignals zu diesem Zeitpunkt nicht vom Controller 21 generiert wird, wie in der Fig. 9D dargestellt. Gleichzeitig generiert der Controller 12 die Bussteuersignale BD1EN, BD1DIR, BD2EN, BD2DIR, BD3EN, BD3DIR, LT1CNT und LT1EN so, als wäre die Anweisung eine Leseanweisung für den 16 Bit-Speicher und oder das E/A-Gerät 16, wie in den Fig. 9M bis 9T dargestellt. Unter diesen Signalen handelt es sich bei den Signalen BD1EN; BD2EN, BD3EN und LT1EN um Signale zur Aktivierung/Deaktivierung des Ausgangs. Die Signale BD1DIR, BD2DIR und BD3DIR sind Ausgangsrichtungs-Steuersignale. Liegt eines der Signale BD1DIR, BD2DIR und BD3DIR auf einem hohen Pegel, so wird das Signal von Richtung A nach B ausgegeben, wie in der Fig. 8 dargestellt. Das Signal wird jedoch von Richtung B nach A ausgegeben, wenn das Signal BD1DIR, BD2DIR oder BD3DIR auf einem niedrigen Pegel liegt. Das Signal LT1CNT ist ein Signalspeicher-Taktsteuersignal.
- Die Treiber 71 und 73 haben die Funktion, Daten von den Speichern und/oder E/A-Geräten 16 und 17 an den Mikroprozessor 11 zu liefern. Erkennt jedoch der Detektor 19 entsprechend dem Lese-/Schreibsteuersignal und der Adresse, daß es sich bei der Anweisung um eine Anweisung für den 8 Bit-Speicher und/oder das E/A-Gerät 17 handelt, so liefert der Detektor 19 das Signal DET an den Controller 21. Der Controller 21 liefert dann das Signal WAIT an den Mikroprozessor 11, wie in der Fig. 9H gezeigt, um diesen in den Wartezustand zu versetzen. Wie in der Fig. 9E gezeigt, wird das Datum vom Speicher und/oder E/A-Gerät 17 auf den Bus DAT 7-0 gelegt. Der Mikroprozessor 11 ruft jedoch keine Daten ab. Wie aus der Fig. 9S ersichtlich ist, liefert der Controller 21 das Signal LT1CNT an den Signalspeicher 74, so daß das Datum auf dem Bus vom Signalspeicher 74 zwischengespeichert wird. Gleichzeitig liefert der Controller 21 das Signal BD2EN an den Treiber 73, um den Datenausgang zu deaktivieren, wie aus der Fig. 9P ersichtlich ist. Wie die Fig. 9C zeigt, liefert der Controller 21 das Signal COM EN/DIS an den Controller 12, um die Generierung des Signals STS zu deaktivieren. Als Ergebnis wird, wie in der Fig. 9D gezeigt, das Signal STS deaktiviert. Der Controller 21 liefert ein auf logisch "1" liegendes Signal an den Zähler 62. Der Zähler 62 schickt die aktualisierte Adresse an den Adreßbus ADDR. Wie in der Fig. 9T gezeigt, liefert der Controller 21 das Signal LT1EN an den Signalspeicher 74. Der Signalspeicher 74 legt das Datum auf den Datenbus DAT 7-0, wie in der Fig. 9L dargestellt. Der Controller 21 liefert das Signal COM EN/DIS an den Controller 12, um die Generierung des Lese-/Schreibsteuersignals STS zu aktivieren. Wie in der Fig. 9D gezeigt, wird das Signal STS erneut aktiviert, so daß der zweite Zugriffszyklus gestartet werden kann. Der Treiber 75 liefert das vom Speicher und/ oder E/A-Gerät 17 ausgelesene Datum als Reaktion auf das vom Controller 21 gelieferte Signal BD3EN (Fig. 9R) über den Bus DATA 7-0 an den Bus DATA 15-8, wie in den Fig. 9J und 9K gezeigt. Wie aus den Fig. 9M und 9N ersichtlich ist, legt der Treiber 71 als Reaktion auf das Signal BD1EN vom Controller 21 das Datum von Bus DATA 15-8 auf den Bus DAT 15-8. Wie die Fig. 9E zeigt, erscheint das 16 Bit-Datum auf dem Bus DAT 15-0. In diesem Fall generiert der Controller 21 das Signal WAIT, wie in der Fig. 9H gezeigt, so daß der Wartezustand des Mikroprozessors 11 aufgehoben wird. Der Mikroprozessor 11 ruft das 16 Bit-Datum ab und sperrt die
- Generierung des Datums STS , wie in der Fig. 9B gezeigt. Als Ergebnis wird, wie in der Fig. 9D gezeigt, das Signal STS ebenfalls deaktiviert. Der Impulsgeber 53 liefert das Signal RESE an den Controller 21, wie aus der Fig. 9I ersichtlich. Der Controller 21 setzt die Signale BD1EN, BD3EN, BD3DIR, LT1CNT und LT1EN zurück, wie in den Fig. 9N, 9R, 9S bzw. 9T dargestellt. Anschließend setzt der Controller 21 die Signale BD1DIR, BD2DIR und BD3DIR zurück (Fig. 9M, 9O und 9Q). Auf dieses Weise wird die Umwandlungsoperation abgeschlossen. In einem ab einer geradzahligen Adresse beginnenden Lesezyklus wird der Signalspeicher 72 deaktiviert gehalten.
- Nunmehr wird unter Bezugnahme auf die Fig. 10A bis 10T ein ab einer geradzahligen Adresse beginnender Schreibzyklus beschrieben. In diesem Fall sind das Taktsignal CLK, das Datum STS, das Steuersignal COM EN/DIS, das Lese-/ Schreibsteuersignal STS, das Steuersignal WAIT für den Mikroprozessor 11, das Rücksetzsignal RESE und das Signal mit dem Pegel logisch "1" identisch mit den Signalen des ab der geradzahligen Adresse beginnenden Lesezyklus. Hauptsächlich werden die zu dem Wandler 15 gehörigen Signale in der nachfolgenden Beschreibung betrachtet. In dem ersten Zugriffszyklus -liefern die Treiber 71 und 73 16 Bit-Daten an den Speicher und/oder das E/A-Gerät 16, wie in den Fig. 10M, 10N, 10O und 10P dargestellt. Da der Treiber 75 deaktiviert ist (Fig. 10R), liefert der Treiber 73 Daten vom Bus DAT 7-0 an-den Bus DATA 7-0, wie in der Fig. 10J gezeigt. Diese Daten werden über den Bus DATA 7-0 an den Speicher und/oder das E/A-Gerät 17 geliefert. Im zweiten Zugriffszyklus wird der Treiber 71 im aktivierten Zustand gehalten, wie aus den Fig. 10M und 10N ersichtlich ist. Der Treiber 73 wird jedoch im deaktivierten Zustand gehalten (Fig. 10P). Statt dessen ist der Treiber 75 aktiviert, wie in der Fig. 10R dargestellt. Aus diesem Grund wird der höchstwertige Teil des vom Mikroprozessor 11 generierten 16 Bit-Datums von den Treibern 71 und 75 über den Bus DATA 7-0 an den Speicher und/oder das E/A-Gerät 17 geliefert, wie in der Fig. 10J dargestellt. Im Schreibzyklus werden die Signalspeicher 72 und 74 im deaktivierten Zustand gehalten. Auf diese Weise wird der Schreibzyklus mit der geradzahligen Adresse ausgeführt.
- Nunmehr wird ein mit einer ungeradzahligen Adresse beginnender Lesezyklus beschrieben. In diesem Fall sind das Taktsignal CLK, das Datum STS1, das Steuersignal COM EN/ DIS, das Lese-/Schreibsteuersignal STS, das Steuersignal WAIT für den Mikroprozessor 11, das Rücksetzsignal RESE und das Signal mit dem Pegel logisch "1" identisch mit den Signalen des mit der geradzahligen Adresse beginnenden Lesezyklus. Die zu dem Wandler 15 gehörigen Signale werden in der nachstehenden Beschreibung betrachtet. Die Treiber 71 und 73 haben die Funktion, das 16 Bit-Datum vom Speicher und/oder E/A-Gerät 16 an den Mikroprozessor 11 zu liefern, wie in den Fig. 11M, 11N, 11O und 11P dargestellt. Wird in diesem Fall bestimmt, daß es sich bei der Anweisung um einen- mit einer ungeradzahligen Adresse beginnenden Lesezyklus handelt, so wird der Wandler 15 im aktivierten Zustand gehalten, wie in den Fig. 11Q und 11R dargestellt. Im ersten Zugriffszyklus wird das vom Speicher und/oder E/A-Gerät 17 ausgelesene und auf dem Bus DATA 7-0 erscheinende Datum (Fig. 11J) auf den Bus DATA 15-8 gelegt, wie in der Fig. 11K gezeigt. Die Treiber 71 und 73 übergeben das Datum vom Bus DATA 15-0 an den Bus DAT 15-0, wie in der Fig. 11E dargestellt. Der Mikroprozessor 11 wird, wie in der Fig. 11H gezeigt, im Wartezustand gehalten und ruft das Datum nicht ab. Der Controller 21 liefert das Signal LT2CNT an den Signalspeicher 72 (Fig. 11S), so daß das Datum vom Signalspeicher 72 zwischengespeichert wird. Der Controller 21 liefert die Signale BD1EN und BD3EN an die Treiber 71 und 75 (Fig. 11N und 11R), um die Generierung von Daten zu sperren, und das Signal LT2EN an den Signalspeicher 72, wie in der Fig. 11T gezeigt. Als Ergebnis legt der Signalspeicher 72 das Datum auf den Bus DAT 15-8, wie in der Fig. 11L dargestellt. Im zweiten Zugriffszyklus legt der Treiber 73 das vom Speicher und/oder E/A- Gerät 17 ausgelesene Datum auf den Bus DAT 7-0, wie in der Fig. 11K gezeigt. Deshalb erscheint, wie die Fig. 11E zeigt, das 16 Bit-Datum auf dem Bus DAT 15-0. Der Wartezustand des Mikroprozessors wird als Reaktion auf das Signal WAIT vom Controller 21 aufgehoben, wie in der Fig. 11H gezeigt, und der Mikroprozessor 11 ruft das 16 Bit-Datum ab. Auf diese Weise wird der mit der ungeradzahligen Adresse beginnende Lesezyklus abgeschlossen. In dem mit der ungeradzahligen Adresse beginnenden Lesezyklus wird der Signalspeicher 74 im deaktivierten Zustand gehalten.
- Der Ausgang CYC vom Zähler 20 kann entfallen, wenn der Controller 21 eine sequentielle Operation ausführt. Wird-für den Speicher und/oder das E/A-Gerät 16 mit dem 16 Bit breiten Datenbus eine Lese-/Schreib-Wortübergabeanweisung ausgeführt, so erfolgt die Operation entsprechend der in den Fig. 2A bis 2E dargestellten Impulsfolgen.
- Der Betriebsmodus dies Mikroprozessors wird nunmehr für den Fall beschrieben, in dem die ab der geradzahligen Adresse beginnende Wortübergabeanweisung ausgeführt und automatisch in zwei Byte-Übergabeanweisungen gewandelt wird. In diesem Fall umfaßt der Mikroprozessor 11 eine von Intel Corp. Verfügbaren 8086. Der Signalspeicher 72 im Wandler 51 kann entfallen. Ein Abschnitt zur Steuerung des Signalspeichers 72 im Controller 21 kann ebenfalls entfallen. Der Adreßsignalspeicher-Zähler 13 kann vereinfacht werden, wie in der Fig. 12 gezeigt. Der Zähler 13 umfaßt einen Signalspeicher 81 und ein Gatter 82. Der Signalspeicher 81 speichert die Adresse vom Mikroprozessor 11 und liefert das niedrigstwertige Bit davon an den Controller 21 und das Gatter 82. Die übrigen Bits der Adresse werden vom Signalspeicher 81 auf einen Adreßbus ADDR 19-1 gelegt. Das Gatter 91 berechnet ein logisches OR des Ausgangs vom Signalspeicher 81 und dem Pegel logisch "1" vom Controller 21 und generiert die Summe als das niedrigstwertige Bit des Adreßdatums. Alle Bits des Adreßsignals erscheinen auf dem Adreßbus ADDR und werden an die Speicher und/oder E/A-Geräte 16 und 16 geliefert. Die Impulsübersichten dieses Mikroprozessorsystems sind identisch mit denjenigen der mit einer geradzahligen Adresse beginnenden Wortübergabeanweisung (Fig. 9A bis 10T)
- Die vorliegende Erfindung wird durch ein Mikroprozessorsystem verwirklicht, welches durch Kopplung eines 8 Bit- Speichers und/oder E/A-Geräts mit einem 16 Bit-Mikroprozessor konfiguriert ist. Werden jedoch die Adreß- und Datenbusse des Mikroprozessorsystems erweitert, so kann ein 16 Bit-Speicher und/oder E/A-Gerät mit einem 32 Bit-Mikroprozessor oder ein 32 Bit-Speicher und/oder E/A-Gerät mit einem 64 Bit-Mikroprozessor gekoppelt werden.
Claims (11)
1. Mikroprozessorsystem zur Wandlung einer
Übergabeanweisung für ein Wort in eine Übergabeanweisung für
1/2 Wort, welches folgendes umfaßt:
einen Mikroprozessor mit einem n Bit breiten Datenbus
(11);
einen Speicher und/oder ein E/A-Gerät mit einem n/2
Bit breiten Datenbus (17);
eine Lese-/Schreibsteuerungseinrichtung (12) zur
Lieferung eines aus den Statusdaten des Mikroprozessors
(11) abgeleiteten Lese-/Schreibsteuersignals an den
Speicher und/oder an das E/A-Gerät (17);
eine Adreßsignalspeicher-Zählereinrichtung (13) zum
Holen einer Adresse aus dem Mikroprozessor (11) und
zur Lieferung, der Adresse an den Speicher und/oder
das E/A-Gerät (17);
eine Taktgeneratoreinrichtung (14) zur Generierung
von Steuersignalen mit einem Status zum Zugriff auf
einen n Bit breiten Speicher oder ein E/A-Gerät (16);
und
eine Buswandlereinrichtung (15) zum Setzen eines
Busses in einen Status für den Zugriff auf den
Speicher oder das E/A-Gerät (16) mit dem n Bit breiten
Datenbus als Reaktion auf die Steuersignale;
wobei die Lese-/Schreibsteuerungseinrichtung (12) des
weiteren eine Schaltungseinrichtung zur Ausführung
der beiden Zugriffszyklen umfaßt, indem das Lese-/
Schreibsteuersignal durch ein Steuersignal aktiviert/
deaktiviert wird;
wobei die Adreßsignalspeicher-Zählereinrichtung (13)
des weiteren eine Schaltungseinrichtung zur Lieferung
der zwischengespeicherten Adresse an die
Taktgeneratoreinrichtung (14), zur Aktualisierung der
Adreßdaten als Reaktion auf das Steuersignal von der
Taktgeneratoreinrichtung (14), während das
Lese-/Schreibsteuersignal deaktiviert ist, und zur Lieferung einer
aktualisierten Adresse an den Speicher und/oder das
E/A-Gerät (17) enthält;
wobei die Buswandlereinrichtung (15) des weiteren
eine auf die Steuersignale ansprechende und so
arbeitende Schaltungseinrichtung enthält, daß das n Bit
breite Datum des Mikroprozessors (11) in zwei n/2 Bit
breite Daten geteilt wird, und die Daten durch die
beiden Zugriffszyklen entsprechend der Adresse, auf
die die Einschreibanweisung zugreift, an den Speicher
und/oder die E/A-Einheit (17) ausgegeben werden, so
daß sie mit dem n/2 Bit breiten Datum aus der
Zugriffsadresse in dem Speicher und/oder dem E/A-Gerät
(17) durch die Anweisung, ein n Bit breites Datum zu
bilden, kombiniert und im Lesezyklus an den
Mikroprozessor (11) ausgegeben werden; und
wobei die Taktgeneratoreinrichtung (14) des weiteren
eine Schaltungseinrichtung zur Lieferung von
Steuersignalen an den Mikroprozessor (11), die Lese-/
Schreibsteuerungseinrichtung (12), die
Adreßsignalspeicher-Zählereinrichtung (13) und die
Buswandlereinrichtung (15), um die Wandlung einer
Wortübergabeanweisung in zwei 1/2-Wort-Übergabeanweisungen zu
gestatten; und eine Einrichtung zur Erkennung, daß es
sich bei der Anweisung um die Wortübergabeanweisung
für den Speicher und/oder das E/A-Gerät handelt,
enthält;
dadurch gekennzeichnet, daß
die Detektoreinrichtung des weiteren erkennt, ob die
Startadresse, auf die die Anweisung zugreift, eine
gerad- oder ungeradzahlige Adresse ist;
wobei die Buswandlereinrichtung (15) als Reaktion auf
Steuersignale in einem ersten Zugriffszyklus so
arbeitet, daß dann, wenn die Anweisung als eine
Wortübergabeanweisung eines Lesezyklus erkannt wird und
ab der geradzahligen Adresse beginnt, das Datum von
dem Speicher und/oder dem E/A-Gerät (17) als der
niedrigstwertige Teil des n Bit breiten Datums
zwischengespeichert wird, während in dem Fall, in dem
die Wortübergabeanweisung des Lesezyklus ab der
ungeradzahligen Adresse beginnt, das Datum von dem
Speicher und/oder dem E/A-Gerät (17) als der
höchstwertige Teil des n Bit breiten Datums
zwischengespeichert wird, so daß dann, wenn die Anweisung als eine
Wortübergabeanweisung eines Schreibzyklus erkannt
wird und ab der geradzahligen Adresse beginnt, der
niedrigstwertige Teil des vom Mikroprozessor (11)
generierten n Bit breiten Datums an den Speicher
und/oder das E/A-Gerät (17) geliefert wird, und in
dem Fall, in dem die Wortübergabeanweisung des
Schreibzyklus ab der ungeradzahligen Adresse beginnt,
der höchstwertige Teil an den Speicher und/oder das
E/A-Gerät (17) geliefert wird; und die
Buswandlereinrichtung (15) in einem zweiten Zugriffszyklus so
arbeitet, daß dann, wenn die Anweisung als
Wortübergabeanweisung eines Lesezyklus erkannt wird und ab
der geradzahligen Adresse beginnt, das Datum von dem
Speicher und/oder dem E/A-Gerät (17) als der
höchstwertige Teil des n Bit breiten Datums und zusammen
mit dem Datum des ersten Zugriffszyklus an den
Mikroprozessor (11) geliefert wird, und in dem Fall, in
dem die Wortübergabeanweisung des Lesezyklus ab der
ungeradzahligen Adresse beginnt, das Datum von dem
Speicher und/oder dem E/A-Gerät (17) als der
niedrigstwertige Teil des n Bit breiten Datums und
zusammen mit dem Daten des ersten Zugriffszyklus an den
Mikroprozessor (11) geliefert wird, so daß dann, wenn
die Anweisung als Wortübergabeanweisung des
Schreibzyklus erkannt wird und ab der geradzahligen Adresse
beginnt, der höchstwertige Teil des n Bit breiten
Datums von dem Mikroprozessor (11) an den Speicher
und/oder das E/A-Gerät (17) geliefert wird, und in
dem Fall, in dem die Wortübergabeanweisung des
Schreibzyklus ab der ungeradzahligen Adresse beginnt,
der niedrigstwertige Teil des n Bit breiten Datums an
den Speicher und/oder das E/A-Gerät (17) geliefert
wird.
2. Mikroprozessorsystem gemäß Anspruch 1, dadurch
gekennzeichnet, daß die
Lese-/Schreibsteuerungseinrichtung (12) des weiteren eine Schaltungseinrichtung zur
Lieferung eines Steuersignals zur Zwischenspeicherung
einer Adresse des Mikroprozessors (1) in der
Adreßsignal-Zählereinrichtung (13) umfaßt.
3. Mikroprozessorsystem gemäß Anspruch 2, dadurch
gekennzeichnet, daß die
Lese-/Schreibsteuerungseinrichtung (12) einen Decodierer, einen Signalspeicher,
eine Gateschaltung und einen Impulsgeber umfaßt,
wobei der Decodierer zur Decodierung der vom
Mikroprozessor (11) generierten Statusdaten arbeitet, der
Impulsgeber als Reaktion auf einen Ausgang des
Decodierers ein Zwischenspeicherungstaktsteuersignal an die
Adreßsignalspeicher-Zählereinrichtung (13) liefert,
der Signalspeicher den Ausgang des Decodierers
zwischenspeichert, die Gateschaltung zur Steuerung der
Generierung des Lese-/Schreibsteuersignals durch eine
logische Operation eines Ausgangs des Signalspeichers
und eine Ausgangs der Taktgeneratoreinrichtung (14)
arbeitet, und ein Ausgang der Gateschaltung an die
Taktgeneratoreinrichtung (14) und den Speicher und/
oder das E/A-Gerät (17) geliefert wird.
4. Mikroprozessorsystem gemäß Anspruch 1, dadurch
gekennzeichnet, daß die
Adreßsignalspeicher-Zählereinrichtung (13) eine Signalspeicher- und eine
Zählerschaltung umfaßt, wobei der Signalspeicher als
Reaktion auf das Steuersignal von der
Lese-/Schreibsteuerungseinrichtung (12) aktiviert wird, um die Adresse
von dem Mikroprozessor zwischenzuspeichern und um die
Adresse als einen voreingestellten Wert an die
Zählerschaltung und an den Taktgenerator zu liefern, um
zu erkennen, daß die Anweisung eine
Wortübergabeanweisung für den Speicher und/oder das E/A-Gerät (17)
ist und dann, ob die Startadresse, auf welche die
Anweisung zugreift, eine gerad- oder ungeradzahlige
Adresse ist, und wobei die Zählerschaltung aktiviert
wird, um die Adresse aus dem Signalspeicher als einen
voreingestellten Wert an den Speicher und/oder das
E/A-Gerät (17) zu liefern, die Adresse als Reaktion
auf das Signal von der Taktgeneratoreinrichtung (14)
zu inkrementieren, während das
Lese-/Schreibsteuersignal deaktiviert ist, und um eine aktualisierte
Adresse an den Speicher und/oder das E/A-Gerät (17)
zu liefern.
5. Mikroprozessorsystem gemäß Anspruch 1, dadurch
gekennzeichnet, daß die
Adreßsignalspeicher-Zählereinrichtung
(13) einen Signalspeicher und ein OR-Gate
umfaßt, wenn das System durch Kopplung des Speichers
und/oder des E/A-Geräts (17) mit einem 8 Bit breitem
Datenbus an einen 16-Bit-Mikroprozessor (11)
konfiguriert ist, in welchem nur die mit der geradzahligen
Adresse beginnende Wortübergabeanweisung in zwei
Byte-Übergabeanweisungen zu wandeln ist, wobei der
Signalspeicher aktiviert wird, um das vom
Mikroprozessor (11) generierte Adreßdatum zwischenzuspeichern
und das Adreßdatum an die Taktgeneratoreinrichtung
(14) zu liefern, und wobei das OR-Gate aktiviert
wird, um eine logische Summe aus dem
niedrigstwertigen Bit vom Signalspeicher und einem
Adressenaktualisierungssignal von der Taktgeneratoreinrichtung (14)
zu bilden, und um das resultierende Signal als
Adreßdatum zusammen mit den restlichen Bits der Adresse an
den Speicher und/oder das E/A-Gerät (17) zu liefern.
6. Mikroprozessorsystem gemäß Anspruch 1, dadurch
gekennzeichnet, daß die Buswandlereinrichtung (15) den
Datenbus in den höchst- und den niedrigstwertigen
Teil teilt und bidirektionale Bustreiber koppelt, um
die höchst- oder niedrigstwertigen Teile der mit dem
Mikroprozessor (11) und einem n-Bit-Speicher und/oder
E/A-Gerät (16) gekoppelten Datenbusse zu verbinden,
wobei die bidirektionalen Bustreiber parallel zu
Signal speichern zur Lieferung der Daten aus dem
Speicher und/oder dem E/A-Gerät (17) an den
Mikroprozessor
(11) geschaltet sind und zusätzliche Bustreiber
so geschaltet sind, daß sie die höchst- und
niedrigstwertigen Teile der mit dem n-Bit-Speicher und/
oder dem E/A-Gerät (16) verbundenen Datenbusse
koppeln.
7. Mikroprozessorsystem gemäß Anspruch 1, dadurch
gekennzeichnet, daß dann, wenn der Speicher und/oder
das E/A-Gerät (17) mit einem 8 Bit breitem Datenbus
mit einem 16-Bit-Mikroprozessor gekoppelt und nur die
mit der geradzahligen Adresse beginnende
Wortübergabeanweisung in zwei Byte-Übergabeanweisungen zu
wandeln ist, die Buswandlereinrichtung (15) den
Datenbus in den höchst- und den niedrigstwertigen
Teil teilt und bidirektionale Bustreiber koppelt, um
die höchst- oder niedrigstwertigen Teile der mit dem
Mikroprozessor (11) und dem n-Bit-Speicher und/oder
dem E/A-Gerät (16) gekuppelten Datenbusse zu
verbinden.
8. Mikroprozessorsystem gemäß Anspruch 1, dadurch
gekennzeichnet, daß die Taktgeneratoreinrichtung (14)
folgendes umfaßt:
eine Detektoreinrichtung (19) zur Bestimmung, daß die
Anweisung die Wortübergabeanweisung für den Speicher
und/oder das E/A-Gerät ist und zwei Zugriffszyklen
erfordert;
eine Wartesteuerungseinrichtung (11) zur Generierung
des den Mikroprozessor während des ersten
Zugriffszyklus in den Wartezustand versetzenden Steuersignals
und zur Aufhebung des Wartezustands des
Mikroprozessors während des zweiten Zugriffszyklus, wenn
bestimmt wird, daß es sich bei der Anweisung um die
Wortübergabeanweisung für den Speicher und/oder das
E/A-Gerät (17) handelt;
eine Zählereinrichtung (20) zur Zählung der Anzahl
von Malen, in denen die Generierung des Lese-/
Schreibsteuersignals gestattet ist, und zum
Rücksetzen einer internen Schaltung, wenn der zweite
Zugriffszyklus abgeschlossen ist; und
eine Taktgebersteuerungseinrichtung (21) zur
Lieferung des Signals zur Steuerung der Generierung des
Lese-/Schreibsteuersignals an die
Lese-/Schreibsteuerungseinrichtung (12), des
Adreßaktualisierungssignals an die Adreßsignalspeicher-Zählereinrichtung
(13) und der Signale zur Steuerung der Wandlung an
die Buswandlereinrichtung (15).
9. Mikroprozessorsystem gemäß Anspruch 8, dadurch
gekennzeichnet, daß die Detektoreinrichtung (19) einen
Decodierer und eine Gateschaltung umfaßt, wobei der
Decodierer so arbeitet, daß er die von der
Adreßsignalspeicher-Zählereinrichtung generierte Adresse
decodiert, und die Gateschaltung eine logische
Operation der Ausgänge der
Lese-/Schreibsteuerungseinrichtung
vornimmt, und ein Ausgang von der
Gateschaltung und ein Ausgang vom Decodierer einer weiteren
logischen Operation unterworfen werden, um zu
bestimmen, daß die Anweisung die Wortübergabeanweisung für
den Speicher und/oder das E/A-Gerät ist, wobei der
resultierende Ausgang der logischen Operation an die
Zählereinrichtung (29) und die
Taktgebersteuerungseinrichtung (21) geliefert wird.
10. Mikroprozessorsystem gemäß Anspruch 8, dadurch
gekennzeichnet, daß die Zählereinrichtung (20) einen
Zähler, eine Verzögerungsschaltung und einem
Impulsgeber umfaßt, wobei der Zähler so arbeitet, daß er
die von der Lese-/Schreibsteuerungseinrichtung (12)
generierten Lese-/Schreibsteuersignale zählt und der
Verzögerungsschaltung signalisiert, wenn der
diesbezügliche Zählwert 2 erreicht, wobei die
Verzögerungsschaltung einen um eine vorgegebene Zeitspanne
verzögerten Ausgang an den Impulsgeber absetzt und der
Impulsgeber einen Impuls an die die
Taktgebersteuerungseinrichtung (21) absetzt, welche dann
rückgesetzt wird.
11. Verfahren zur automatischen Wandlung einer
Wortübergabeanweisung in zwei 1/2-Wortübergabeanweisungen in
einem Mikroprozessorsystem, welches durch die
Verbindung eines Speichers und/oder eines E/A-Geräts mit
einem n/2 Bit breiten Datenbus mit einem
Mikroprozessor
mit einem n Bit breiten Datenbus konfiguriert
ist, welches umfaßt:
einen Schritt zum Extrahieren eine
Lese-/Schreibsteuersignals für den Speicher und/oder das E/A-Gerät
(17) aus den vom Mikroprozessor (11) generierten
Statusdaten, wenn der Mikroprozessor (11) die
Wortübergabeanweisung ausführt, zum Liefern des Lese-/
Schreibsteuersignals zusammen mit einer Adresse an
den Speicher und/oder das E/A-Gerät (17), zum Setzen
eines Buswandlers (15) für die Verbindung eines mit
dem Speicher und/oder dem E/A-Gerät (17) gekoppelten
Datenbusses mit einem mit dem Mikroprozessor (11)
gekoppelten Datenbus in einen Status für den Zugriff
auf einen Speicher und/oder ein E/A-Gerät (16) mit
einem n Bit breiten Datenbus, und zum Starten eines
ersten Zugriffszyklus; und
einen Schritt zum Veranlassen des Mikroprozessors
(11), die Generierung des Lese-/Schreibsteuersignals
zu sperren, um die Wortübergabeanweisung
abzuschließen; wobei:
ein erster Schritt zur Ausführung des ersten
Zugriffszyklus auf den Speicher und/oder das E/A-Gerät
(17);
ein zweiter Schritt zur Aktualisierung der Adresse
und zur Lieferung der aktualisierten Adresse an den
Speicher und/oder das E/A-Gerät (17); und
ein dritter Schritt zur Ausführung des zweiten
Zugriffszyklus auf den Speicher und/oder das E/A-Gerät
(17) vorgesehen sind, und
(a) der erste Schritt folgendes umfaßt:
einen Schritt zur Bestimmung, daß die vom
Mikroprozessor (11) ausgeführte Anweisung eine
Wortübergabeanweisung für den Speicher und/oder das E/A-Gerät
(17) und daß eine Startadresse, auf die zugegriffen
wird, eine gerad- oder eine ungeradzahlige Adresse
ist;
einen Schritt zum Setzen des Mikroprozessors (11) in
einen Wartestatus, bevor der ersten Zugriffszyklus
abgeschlossen ist und wenn bestimmt wird, daß es sich
bei der Anweisung um eine Wortübergabeanweisung für
den Speicher und/oder das E/A-Gerät (17) ist;
einen Schritt zum Zwischenspeichern als den
niedrigstwertigen Teil des n Bit breiten Datums des vom
Speicher und/oder dem E/A-Gerät (17) gelieferten
Datums, wenn die Anweisung mit der geradzahligen
Adresse beginnt, und als den höchstwertigen Teil,
wenn die Anweisung mit der ungeradzahligen Adresse in
einem Lesezyklus für die Wortübergabeanweisung
beginnt, zum Liefern des niedrigstwertigen Teils des n
Bit breiten Datums vom Mikroprozessor (11) an den
Speicher und/oder das E/A-Gerät (17), wenn die
Anweisung mit der geradzahligen Adresse in einem
Schreibzyklus für die Wortübergabeanweisung beginnt;
und zum Liefern des höchstwertigen Teils des n Bit
breiten Datums vom Mikroprozessor (11) an den
Speicher und/oder das E/A-Gerät (17), wenn die Anweisung
mit der ungeradzahligen Adresse in einem
Schreibzyklus für die Wortübergabeanweisung beginnt; und
einen Schritt zum Sperren der Generierung des Lese-/
Schreibsteuersignals, um den ersten Zugriffszyklus zu
beenden;
(b) der zweite Schritt folgendes umfaßt:
einen Schritt zur Aktualisierung, indem 1 zu der
Adresse addiert wird, während das
Lese-/Schreibsteuersignal deaktiviert ist;
einen Schritt zur Lieferung der aktualisierten
Adresse an den Speicher und/oder das E/A-Gerät (17); und
einen Schritt zur Freigabe des
Lese-/Schreibsteuersignals, um den zweiten Zugriffszyklus zu starten,
und
(c) der dritte Schritt folgendes umfaßt:
einen Schritt zum Liefern als den höchstwertigen
Teil des vom Speicher und/oder dem E/A-Gerät (17)
gelieferten n Bit breiten Datums an den
Mikroprozessor (11), wenn die Anweisung mit der geradzahligen
Adresse beginnt, und als den niedrigstwertigen Teil
an den Mikroprozessor (11), wenn die Anweisung mit
der ungeradzahligen Adresse in einem Lesezyklus für
die Wortübergabeanweisung beginnt, wobei der höchst-
oder niedrigstwertige Teil zusammen mit dem im ersten
Zugriffszyklus zwischengespeicherten Datum an den
Mikroprozessor (11) geliefert wird, und zum Liefern
des höchstwertigen Teils des n Bit breiten Datums vom
Mikroprozessor (11) an den Speicher und/oder das E/A-
Gerät (17), wenn die Anweisung mit der geradzahligen
Adresse beginnt, und des niedrigstwertigen Teils an
den Speicher und/oder das E/A-Gerät (17), wenn die
Anweisung mit der ungeradzahligen Adresse im
Schreibzyklus für die Wortübergabeanweisung beginnt;
einen Schritt zum Aufheben des Wartestatus des
Mikroprozessors (11) während des zweiten Zugriffszyklus;
und
einen Schritt zum Veranlassen des Mikroprozessors
(11), das n Bit breite Datum zu holen, wenn es sich
bei der Anweisung um die Wortübergabeanweisung des
Lesezyklus handelt, oder zum Liefern des n Bit
breiten Datums an den Speicher und das E/A-Gerät (17),
wenn es sich bei der Anweisung um die
Wortübergabeanweisung des Schreibzyklus handelt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60016777A JPS61175845A (ja) | 1985-01-31 | 1985-01-31 | マイクロプロセツサシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3587948D1 DE3587948D1 (de) | 1995-01-12 |
DE3587948T2 true DE3587948T2 (de) | 1995-04-20 |
Family
ID=11925626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3587948T Expired - Lifetime DE3587948T2 (de) | 1985-01-31 | 1985-09-30 | Mikroprozessorsystem. |
Country Status (6)
Country | Link |
---|---|
US (1) | US4860198A (de) |
EP (1) | EP0189523B1 (de) |
JP (1) | JPS61175845A (de) |
KR (1) | KR900004006B1 (de) |
CN (1) | CN1004729B (de) |
DE (1) | DE3587948T2 (de) |
Families Citing this family (75)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6226561A (ja) * | 1985-07-26 | 1987-02-04 | Toshiba Corp | パ−ソナルコンピユ−タ |
BG45007A1 (de) * | 1987-03-19 | 1989-03-15 | Khristo A Turlakov | |
US5280589A (en) * | 1987-07-30 | 1994-01-18 | Kabushiki Kaisha Toshiba | Memory access control system for use with a relatively small size data processing system |
US5587962A (en) * | 1987-12-23 | 1996-12-24 | Texas Instruments Incorporated | Memory circuit accommodating both serial and random access including an alternate address buffer register |
US5093807A (en) | 1987-12-23 | 1992-03-03 | Texas Instruments Incorporated | Video frame storage system |
US5230067A (en) * | 1988-05-11 | 1993-07-20 | Digital Equipment Corporation | Bus control circuit for latching and maintaining data independently of timing event on the bus until new data is driven onto |
JPH0235553A (ja) * | 1988-07-25 | 1990-02-06 | Tokyo Electron Ltd | 回路モジュール |
US5440749A (en) * | 1989-08-03 | 1995-08-08 | Nanotronics Corporation | High performance, low cost microprocessor architecture |
US5319769A (en) * | 1989-09-11 | 1994-06-07 | Sharp Kabushiki Kaisha | Memory access circuit for handling data pockets including data having misaligned addresses and different widths |
US5995443A (en) * | 1990-04-18 | 1999-11-30 | Rambus Inc. | Synchronous memory device |
IL96808A (en) * | 1990-04-18 | 1996-03-31 | Rambus Inc | Introductory / Origin Circuit Agreed Using High-Performance Brokerage |
US6751696B2 (en) | 1990-04-18 | 2004-06-15 | Rambus Inc. | Memory device having a programmable register |
US5243703A (en) * | 1990-04-18 | 1993-09-07 | Rambus, Inc. | Apparatus for synchronously generating clock signals in a data processing system |
US5388227A (en) * | 1990-08-14 | 1995-02-07 | Nexgen Microsystems | Transparent data bus sizing |
JPH04157550A (ja) * | 1990-10-22 | 1992-05-29 | Toshiba Corp | パーソナルコンピュータシステム |
US5537624A (en) * | 1991-02-12 | 1996-07-16 | The United States Of America As Represented By The Secretary Of The Navy | Data repacking circuit having toggle buffer for transferring digital data from P1Q1 bus width to P2Q2 bus width |
JP2719052B2 (ja) * | 1991-02-21 | 1998-02-25 | 三菱電機株式会社 | マイクロコンピュータ |
WO1992021088A1 (en) * | 1991-05-17 | 1992-11-26 | Eastman Kodak Company | Novel electrical bus structure |
EP0518488A1 (de) * | 1991-06-12 | 1992-12-16 | Advanced Micro Devices, Inc. | Busschnittstelle und Verarbeitungssystem |
US5355391A (en) * | 1992-03-06 | 1994-10-11 | Rambus, Inc. | High speed bus system |
DE4345604B3 (de) * | 1992-03-06 | 2012-07-12 | Rambus Inc. | Vorrichtung zur Kommunikation mit einem DRAM |
USRE39879E1 (en) * | 1992-03-06 | 2007-10-09 | Rambus, Inc. | Method of transferring data by transmitting lower order and upper order memory address bits in separate words with respective op codes and start information |
JPH07506921A (ja) * | 1992-03-06 | 1995-07-27 | ランバス・インコーポレーテッド | コンピュータ・システムにおける主記憶装置のアクセス時間とキャッシュ・メモリのサイズを最小限にするためのキャッシュへの先取り |
DE4391003B4 (de) * | 1992-03-06 | 2005-12-22 | Rambus Inc., Los Altos | Hochgeschwindigkeitsbussystem |
US5715407A (en) * | 1992-03-06 | 1998-02-03 | Rambus, Inc. | Process and apparatus for collision detection on a parallel bus by monitoring a first line of the bus during even bus cycles for indications of overlapping packets |
WO1993019424A1 (en) * | 1992-03-18 | 1993-09-30 | Seiko Epson Corporation | System and method for supporting a multiple width memory subsystem |
US5254883A (en) * | 1992-04-22 | 1993-10-19 | Rambus, Inc. | Electrical current source circuitry for a bus |
EP0568329A1 (de) * | 1992-05-01 | 1993-11-03 | Advanced Micro Devices, Inc. | Peripheriespeicherpuffergerät und Verfahren, das dieses benutzt |
US5485490A (en) * | 1992-05-28 | 1996-01-16 | Rambus, Inc. | Method and circuitry for clock synchronization |
USRE38482E1 (en) * | 1992-05-28 | 2004-03-30 | Rambus Inc. | Delay stage circuitry for a ring oscillator |
US5268639A (en) * | 1992-06-05 | 1993-12-07 | Rambus, Inc. | Testing timing parameters of high speed integrated circuit devices |
DE4239461A1 (de) * | 1992-11-24 | 1994-05-26 | Siemens Ag | Anordnung zur Übertragung von Daten über einen Bus |
JP3608804B2 (ja) * | 1993-05-14 | 2005-01-12 | 株式会社ソニー・コンピュータエンタテインメント | バス制御装置 |
US5793990A (en) * | 1993-06-11 | 1998-08-11 | Vlsi Technology, Inc. | Multiplex address/data bus with multiplex system controller and method therefor |
FR2707118B1 (fr) * | 1993-06-30 | 1995-10-06 | Sgs Thomson Microelectronics | Système à processeur, notamment de traitement d'image, comprenant un bus mémoire de taille variable. |
JPH07152721A (ja) * | 1993-11-29 | 1995-06-16 | Mitsubishi Electric Corp | マイクロコンピュータ |
US5835960A (en) * | 1994-01-07 | 1998-11-10 | Cirrus Logic, Inc. | Apparatus and method for interfacing a peripheral device having a ROM BIOS to a PCI bus |
JP3000977U (ja) * | 1994-02-10 | 1994-08-16 | 株式会社メルコ | 入出力インタフェース装置 |
TW321744B (de) * | 1994-04-01 | 1997-12-01 | Ibm | |
EP0755540B1 (de) * | 1994-04-13 | 2003-04-09 | Ericsson Inc. | Effiziente adressierung von grossen speichern |
JP2704113B2 (ja) * | 1994-04-26 | 1998-01-26 | 日本電気アイシーマイコンシステム株式会社 | データ処理装置 |
US5535345A (en) * | 1994-05-12 | 1996-07-09 | Intel Corporation | Method and apparatus for sequencing misaligned external bus transactions in which the order of completion of corresponding split transaction requests is guaranteed |
US5559969A (en) * | 1994-08-09 | 1996-09-24 | Unisys Corporation | Method and apparatus for efficiently interfacing variable width data streams to a fixed width memory |
US5652847A (en) * | 1995-12-15 | 1997-07-29 | Padwekar; Kiran A. | Circuit and system for multiplexing data and a portion of an address on a bus |
US5805843A (en) * | 1996-02-01 | 1998-09-08 | Qualcomm Incorporated | Microprocessor bus interface unit for interfacing an N-bit microprocessor bus to an M-bit memory device |
US6009487A (en) * | 1996-05-31 | 1999-12-28 | Rambus Inc. | Method and apparatus for setting a current of an output driver for the high speed bus |
US5864822A (en) | 1996-06-25 | 1999-01-26 | Baker, Iii; Bernard R. | Benefits tracking and correlation system for use with third-party enabling organization |
JPH1078934A (ja) * | 1996-07-01 | 1998-03-24 | Sun Microsyst Inc | パケット切替えコンピュータ・システムのマルチサイズ・バス結合システム |
US6523080B1 (en) | 1996-07-10 | 2003-02-18 | International Business Machines Corporation | Shared bus non-sequential data ordering method and apparatus |
JPH10116247A (ja) * | 1996-10-15 | 1998-05-06 | Nec Corp | マイクロコンピュータ |
US5822766A (en) * | 1997-01-09 | 1998-10-13 | Unisys Corporation | Main memory interface for high speed data transfer |
US5970253A (en) * | 1997-01-09 | 1999-10-19 | Unisys Corporation | Priority logic for selecting and stacking data |
US6094075A (en) * | 1997-08-29 | 2000-07-25 | Rambus Incorporated | Current control technique |
US6870419B1 (en) * | 1997-08-29 | 2005-03-22 | Rambus Inc. | Memory system including a memory device having a controlled output driver characteristic |
EP1048109B1 (de) * | 1997-08-29 | 2009-04-22 | Rambus Inc. | Stromsteuerungstechnik |
DE69829988T2 (de) * | 1997-10-16 | 2005-09-29 | Buffalo Inc., Nagoya | Bus-umformungs-adapter |
JPH11134246A (ja) * | 1997-10-31 | 1999-05-21 | Brother Ind Ltd | データ処理システム及びデータ処理システムにおける記憶装置からのデータ入力方法 |
JPH11134245A (ja) * | 1997-10-31 | 1999-05-21 | Brother Ind Ltd | データ処理システム |
US6321282B1 (en) | 1999-10-19 | 2001-11-20 | Rambus Inc. | Apparatus and method for topography dependent signaling |
US6646953B1 (en) | 2000-07-06 | 2003-11-11 | Rambus Inc. | Single-clock, strobeless signaling system |
US7051130B1 (en) | 1999-10-19 | 2006-05-23 | Rambus Inc. | Integrated circuit device that stores a value representative of a drive strength setting |
US7079775B2 (en) | 2001-02-05 | 2006-07-18 | Finisar Corporation | Integrated memory mapped controller circuit for fiber optics transceiver |
US6806728B2 (en) * | 2001-08-15 | 2004-10-19 | Rambus, Inc. | Circuit and method for interfacing to a bus channel |
KR100449721B1 (ko) * | 2002-05-20 | 2004-09-22 | 삼성전자주식회사 | 서로 다른 데이터 버스 폭을 갖는 장치들을 위한인터페이스 및 이를 이용한 데이터 전송방법 |
US6970985B2 (en) | 2002-07-09 | 2005-11-29 | Bluerisc Inc. | Statically speculative memory accessing |
US7119549B2 (en) * | 2003-02-25 | 2006-10-10 | Rambus Inc. | Output calibrator with dynamic precision |
US20050114850A1 (en) | 2003-10-29 | 2005-05-26 | Saurabh Chheda | Energy-focused re-compilation of executables and hardware mechanisms based on compiler-architecture interaction and compiler-inserted control |
US7996671B2 (en) | 2003-11-17 | 2011-08-09 | Bluerisc Inc. | Security of program executables and microprocessors based on compiler-architecture interaction |
US8607209B2 (en) | 2004-02-04 | 2013-12-10 | Bluerisc Inc. | Energy-focused compiler-assisted branch prediction |
JP4158935B2 (ja) * | 2005-09-12 | 2008-10-01 | シャープ株式会社 | メモリカード用入出力装置及びその制御方法 |
US20080126766A1 (en) | 2006-11-03 | 2008-05-29 | Saurabh Chheda | Securing microprocessors against information leakage and physical tampering |
US20080154379A1 (en) * | 2006-12-22 | 2008-06-26 | Musculoskeletal Transplant Foundation | Interbody fusion hybrid graft |
TWI425354B (zh) | 2007-10-16 | 2014-02-01 | Mstar Semiconductor Inc | 資料存取系統及方法 |
CN101419599B (zh) * | 2007-10-25 | 2013-03-13 | 晨星半导体股份有限公司 | 数据存取系统与方法 |
US20110019760A1 (en) * | 2009-07-21 | 2011-01-27 | Rambus Inc. | Methods and Systems for Reducing Supply and Termination Noise |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5438724A (en) * | 1977-09-02 | 1979-03-23 | Hitachi Ltd | Display unit |
US4213177A (en) * | 1978-04-24 | 1980-07-15 | Texas Instruments Incorporated | Eight bit standard connector bus for sixteen bit microcomputer using mirrored memory boards |
US4447878A (en) * | 1978-05-30 | 1984-05-08 | Intel Corporation | Apparatus and method for providing byte and word compatible information transfers |
GB2021823B (en) * | 1978-05-30 | 1983-04-27 | Intel Corp | Data transfer system |
JPS55135076A (en) * | 1979-03-31 | 1980-10-21 | Tokyo Shibaura Electric Co | Device for displaying position of cage of elevator |
US4286321A (en) * | 1979-06-18 | 1981-08-25 | International Business Machines Corporation | Common bus communication system in which the width of the address field is greater than the number of lines on the bus |
US4371928A (en) * | 1980-04-15 | 1983-02-01 | Honeywell Information Systems Inc. | Interface for controlling information transfers between main data processing systems units and a central subsystem |
US4554627A (en) * | 1980-04-25 | 1985-11-19 | Data General Corporation | Data processing system having a unique micro-sequencing system |
JPS5779551A (en) * | 1980-11-06 | 1982-05-18 | Nec Corp | Information transfer device |
US4534011A (en) * | 1982-02-02 | 1985-08-06 | International Business Machines Corporation | Peripheral attachment interface for I/O controller having cycle steal and off-line modes |
US4580213A (en) * | 1982-07-07 | 1986-04-01 | Motorola, Inc. | Microprocessor capable of automatically performing multiple bus cycles |
US4716527A (en) * | 1984-12-10 | 1987-12-29 | Ing. C. Olivetti | Bus converter |
-
1985
- 1985-01-31 JP JP60016777A patent/JPS61175845A/ja active Pending
- 1985-06-12 KR KR1019850004135A patent/KR900004006B1/ko not_active IP Right Cessation
- 1985-09-28 CN CN85107221.6A patent/CN1004729B/zh not_active Expired
- 1985-09-30 EP EP85112374A patent/EP0189523B1/de not_active Expired - Lifetime
- 1985-09-30 DE DE3587948T patent/DE3587948T2/de not_active Expired - Lifetime
-
1988
- 1988-05-17 US US07/196,752 patent/US4860198A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE3587948D1 (de) | 1995-01-12 |
EP0189523A2 (de) | 1986-08-06 |
KR900004006B1 (ko) | 1990-06-07 |
CN85107221A (zh) | 1986-07-30 |
EP0189523A3 (en) | 1988-08-24 |
CN1004729B (zh) | 1989-07-05 |
US4860198A (en) | 1989-08-22 |
KR860006061A (ko) | 1986-08-18 |
JPS61175845A (ja) | 1986-08-07 |
EP0189523B1 (de) | 1994-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3587948T2 (de) | Mikroprozessorsystem. | |
DE69906156T2 (de) | Mikroprozessorvorrichtung mit programmierbaren wartezuständen | |
DE3685876T2 (de) | Meister-sklave-mikroprozessorsystem mit einem virtuellen speicher. | |
DE69227664T2 (de) | Hardwarekonfiguriertes Betriebssystemkern für einen Multitaskprozessor | |
DE68923944T2 (de) | RAM mit doppelten Ein/Ausgängen. | |
DE19723065B4 (de) | Halbleitereinrichtung und Computersystem | |
DE4035405C2 (de) | ||
DE69325774T2 (de) | Programmierbare Externspeichersteuerungseinrichtung | |
DE69130554T2 (de) | Registerschaltung zum Kopieren des Inhalts eines Registers in ein anderes Register | |
DE69319763T2 (de) | Verfahren und Gerät zur Durchführung eines Busarbitrierungsprotokolls in einem Datenverarbeitungssystem | |
DE3752017T2 (de) | Mikrorechner mit Zugriffsfähigkeit auf einen internen Speicher mit gewünschter variabler Zugriffszeit | |
DE2755897C2 (de) | ||
DE3876780T2 (de) | Mikrorechner mit eingebauter chipauswahl und programmierbarer busdehnung. | |
DE2856483C2 (de) | ||
DE69327703T2 (de) | Mikroprozessor mit Busbreite-Wechselfunktion | |
DE3689488T2 (de) | Speicheranordnung mit vereinfachtem und schnellem Daten-Cachespeicher. | |
DE69710515T2 (de) | Verfahren und Vorrichtung zur Bestimmung von Wartezuständen auf einer Zyklusbasis in einem Datenverarbeitungssystem | |
DE69026479T2 (de) | Datenprozessor mit Wartezustandsteuerungseinheit | |
DE69523395T2 (de) | Datenprozessor mit gesteuertem Stoss-Speicherzugriff und Vorrichtung dafür | |
DE69808132T2 (de) | Verfahren und system zu verarbeitung von befehlen in nach dem fliessbandprinzip arbeitenden speicheranlagen | |
DE2953861C2 (de) | ||
DE2115993A1 (de) | Datenverarbeitungssystem | |
DE2744531A1 (de) | Elektronische datenverarbeitungsanlage | |
DE69423077T2 (de) | Steuerungsvorrichtungen für nichtflüchtige Speicheranordnungen | |
DE3854369T2 (de) | Zentralprozessoreinheit für digitale datenverarbeitungsanordnung mit cache-speicherverwaltungsvorrichtung. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |