DE69229657T2 - Co-Prozessor unterstützende Architektur für einen Prozessor, der keine Zusatzprozessorfähigkeit hat - Google Patents
Co-Prozessor unterstützende Architektur für einen Prozessor, der keine Zusatzprozessorfähigkeit hatInfo
- Publication number
- DE69229657T2 DE69229657T2 DE69229657T DE69229657T DE69229657T2 DE 69229657 T2 DE69229657 T2 DE 69229657T2 DE 69229657 T DE69229657 T DE 69229657T DE 69229657 T DE69229657 T DE 69229657T DE 69229657 T2 DE69229657 T2 DE 69229657T2
- Authority
- DE
- Germany
- Prior art keywords
- processor
- data
- address
- memory
- dma
- 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
- 238000000034 method Methods 0.000 claims description 9
- 238000012544 monitoring process Methods 0.000 claims 4
- 238000012806 monitoring device Methods 0.000 claims 3
- 230000004913 activation Effects 0.000 claims 2
- 229910003460 diamond Inorganic materials 0.000 description 11
- 239000010432 diamond Substances 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 238000013515 script Methods 0.000 description 5
- 230000003213 activating effect Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
- G06F9/3879—Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set
- G06F9/3881—Arrangements for communication of instructions and data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30167—Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30185—Instruction operation extension or modification according to one or more bits in the instruction, e.g. prefix, sub-opcode
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Multi Processors (AREA)
- Advance Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
- Die vorliegende Erfindung bezieht sich auf die Anpassung eines Prozessors, der ursprünglich keine Parallelverarbeitung in einem Parallelverarbeitungssystem unterstützt.
- Bei vielen Verarbeitungsanwendungen werden Co-Prozessoren verwendet, um einen Hauptprozessor zu ergänzen. Co-Prozessoren können einen besonderen Vorteil besitzen, wenn ein Hauptprozessor entweder einen zu speziellen Zweck oder ein zu allgemeinen Zweck besitzt, um effizient einige Aufgaben durchzuführen, die bei einer Prozessoranwendung erforderlich sind.
- Allgemein hat bei Anwendungen, bei denen Co-Prozessoren verwendet werden, der Co-Prozessor eine mit dem Hauptprozessor sehr eng gekoppelte Schnittstelle. Diese Schnittstelle befindet sich vorzugsweise auf der Ebene des Hardwarezyklusses des Hauptprozessors und des Co-Prozessors. Die enge Kopplung einer derartigen Schnittstelle ermöglicht eine sehr effiziente Zusammenarbeit zwischen den Prozessoren. Alternativ kann der Hauptprozessor loser mit dem Co-Prozessor, z. B. unter Verwendung von Prozessorunterbrechungen oder Abfragefolgen, gekoppelt sein, um den Betrieb des Co-Prozessors mit dem Hauptprozessor zu synchronisieren.
- Obwohl das Parallelverarbeiten unter vielen Umständen vorteilhaft sein kann, unterstützen ungünstigerweise nicht alle Hauptprozessoren das Parallelverarbeiten. Beispielsweise kann ein 53C710-SCSI-I/O-Prozessor, der von der NCR-Corporation mit der Geschäftsadresse 1635 Aeroplaza Drive, Colorado Springs, Colorado 80916, erhältlich ist, bei einer Ein gangs/Ausgangs-(I/O-)Vorrichtung verwendet werden, die einen Erweiterte-Industriestandardarchitektur-(Extended-Industry-Standard-Architecture-(EISA-))I/O-Bus mit einem SCSI-Tor schnittstellenmäßig verbindet. Die EISA-Spezifikation ist durch die BCPR-Services, Inc. mit der Geschäftsadresse 1400L Street Northwest, Washington, D.C. 20005, erhältlich. Obwohl der NCR-53C710-SCSI-I/O-Prozessor angepaßt ist, um schnittstellenmäßig mit Informationen verbunden zu sein, die über ein SCSI-Tor kommuniziert werden, unterstützt derselbe ursprünglich keinen Co-Prozessor. Trotzdem ist ein derartiger Co-Prozessor wünschenswert, um direkte Speicherzugriffs-(DMA-)Transaktionen unter Verwendung von Hauptbustransaktionen über einen EISA-I/O-Bus effizient durchzuführen.
- Multiplizierer und mathematische Co-Prozessoren wurden mit Prozessoren schnittstellenmäßig verbunden, die nicht spezifisch entworfen sind, um dieselben zu unterstützen. Beispielsweise beschreiben Davies und Fung in "Interfacing a hardware multiplier to a general-purpose microprocessor" (Microprocessors and Microsystems, Bd. 1, Nr. 7, Oktober 1977, Seiten 425-431) das schnittstellenmäßige Verbinden eines Hardwaremultiplizierers als eine einfache speichertabellierte Peripherie mit einem Allgemeinzweckmikroprozessor. Ferner beschreiben die Autoren Hastings u. a. in dem Artikel "Minimum Chip-count Number Cruncher Uses Bipolar Co-Processor" (8080 Wescon Conference Record, Bd. 25, Nr. 3/1, September 1981, Seiten 1-8) eine Technik, um einen mathematischen Co-Prozessor mit einem Prozessor schnittstellenmäßig zu verbinden, wobei der Prozessor Co-Prozessoraktivitäten durch Schreiben eines Befehls zu der speichertabellierten Position des Co-Prozessors einleitet. Der Co- Prozessor liest anschließend Daten von dem Datenbus parallel dazu, daß der Prozessor Parameter liest jedoch ignoriert, die durch den Co-Prozessor benötigt werden; und schließlich liest der Prozessor das Resultat aus der speichertabellierten Position des Co-Prozessors.
- Die vorliegende Erfindung ist durch die Ansprüche definiert. Gemäß dem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung ist ein Verfahren dargestellt, mit dem ein Co-Prozessor in Verbindung mit einem Hauptprozessor arbeiten kann, der ursprünglich nicht das Parallelverarbeiten unterstützt. Bei einem Speicher, der Befehle für den Hauptprozessor liefert, sind Parameter zur Verwendung durch den Co-Prozessor innerhalb der Befehle eingefügt. Dies wird durch Plazieren der Parameter in den Feldern, die durch den Hauptprozessor nicht verwendet werden, durchgeführt, beispielsweise in den nicht verwendeten Feldern von NOP-Befehlen. Wenn der Hauptprozessor auf den Speicher zugreift, werden die Adressen, die durch den Hauptprozessor erzeugt werden, durch den Co- Prozessor überwacht. Wenn der Co-Prozessor eine vorbestimmte Kombination innerhalb einer Adresse erfaßt, die durch den Hauptprozessor erzeugt ist, greift der Co-Prozessor auf die Daten zu, die von dem Speicher zu dem Hauptprozessor gesendet wurden. Der Co-Prozessor extrahiert dann die Parameter, die innerhalb der nicht verwendeten Felder der zugegriffenen Daten eingefügt sind. Unterschiedliche vorbestimmte Kombinationen von Adressen, die durch den Prozessor erzeugt werden, können verwendet werden, um unterschiedliche Folgen von Parametern und/oder unterschiedliche Positionen von nicht verwendeten Feldern innerhalb eines Befehls, der verwendet wird, um die Parameter zu speichern, anzuzeigen.
- Bei dem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung ist der Hauptprozessor ausgerichtet, um nicht verwendete Adreßleitungen zu aktivieren, um anzuzeigen, wenn Parameter zu dem Co-Prozessor weitergeleitet werden. Der Co-Prozessor überwacht diese nicht verwendeten Adreßleitungen. Nachdem dieselben aktiviert sind, kann der Co-Prozessor die eingefügten Parameter extrahieren und dieselben in Register laden, die verwendet werden, um die DMA-Übertragung zu beschreiben und zu steuern.
- Die vorliegende Erfindung kann von speziellem Interesse bei einer Schnittstellenkarte sein, bei der der Hauptprozessor auf das Kommunizieren mit einem Datentor an der vorderen Ebene der Schnittstellenkarte konzentriert ist. Der Co-Prozessor kann durch Abfangen von Parametern für eine DMA-Übertragung eingerichtet werden und dann DMA-Transaktionen über einen I/O-Bus auf eine Art und Weise durchführen, die für den Hauptprozessor durchsichtig ist.
- Fig. 1 zeigt eine Hostzentralverarbeitungseinheit (Host- CPU), einen Hostspeicher und mehrere Eingangs/Ausgangs-(I/O-)Vorrichtungen, die mit einem I/O-Bus verbunden sind.
- Fig. 2 zeigt ein Blockdiagramm einer I/O-Vorrichtung gemäß dem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung.
- Fig. 3 zeigt ein Blockdiagramm eines DMA-Co-Prozessors gemäß dem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung.
- Fig. 4 zeigt Register innerhalb des DMA-Co-Prozessors, der in Fig. 3 gezeigt ist, gemäß dem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung.
- Fig. 5 zeigt ein Blockdiagramm einer Zustandsmaschine innerhalb des DMA-Co-Prozessors, der in Fig. 3 gezeigt ist, gemäß dem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung.
- Fig. 6 zeigt ein Zustandsdiagramm für die Zustandsmaschine, die in Fig. 5 gezeigt ist, gemäß dem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung.
- Fig. 1 zeigt ein Blockdiagramm eines Eingangs/Ausgangs- (I/O-)Systems, bei dem eine Host-CPU 1, ein Hostspeicher 2, eine I/O-Vorrichtung 3, eine I/O-Vorrichtung 4 und eine I/O-Vorrichtung 5 mit einem I/O-Bus 6 verbunden sind. Die Host-CPU 1 und der Hostspeicher 2 können beispielsweise Teil eines Personalcomputersystems sein, wie z. B. dieselben, die von der Hewlett-Packard Company mit der Geschäftsadresse 3000 Hanover Street, Palo Alto, California 94304, erhältlich sind. Der I/O-Bus arbeitet beispielsweise gemäß der EISA. Die I/O-Vorrichtung 3, die I/O-Vorrichtung 4 und die I/O- Vorrichtung 5 sind beispielsweise Schnittstellenkarten, die mit einem Hostcomputer wechselwirken, der die Host-CPU 1 und den Hostspeicher 2 umfaßt.
- Fig. 2 zeigt ein Blockdiagramm einer I/O-Vorrichtung 3. In einer vorderen Ebene 19 der I/O-Vorrichtung 3 kommuniziert der Prozessor 14 durch eine Torschnittstelle 16 mit einem SCSI-Tor 17. Der Prozessor 14 ist beispielsweise ein 53C710-SCSI-I/O-Prozessor, der von der NCR-Corporation erhältlich ist. In einer hinteren Ebene 18 speichert ein lokaler Speicher 10 sowohl Daten als auch Befehlsskripten. Die Befehlsskripten werden durch den Prozessor 14 als Verarbeitungsbefehle verwendet. Der Prozessor 14 steuert den Datenfluß zwischen dem lokalen Speicher 10 und dem SCSI-Tor 17 durch die Torschnittstelle 16. Der Prozessor 14 kommuniziert mit dem lokalen Speicher 10 unter Verwendung eines Datenbusses 12 und eines Adreßbusses 13.
- Ein DMA-Co-Prozessor 11 wird verwendet, um die DMA-Übertragungen zwischen dem lokalen Speicher 10 und einem EISA-Bus 6 einzurichten. Da der Prozessor 14 nicht ursprünglich das Parallelverarbeiten unterstützt, "schnüffelt" der DMA-Co- Prozessor in Adressen und Daten, die von dem lokalen Speicher 10 zu dem Prozessor 14 übertragen werden. Beispielsweise enthält der Adreßbus 32 Adreßleitungen, auf die als A0 bis A31 Bezug genommen werden kann. Der lokale Speicher 10 erfordert jedoch allgemein lediglich 16 Bits für jede Adresse. Daher werden die Adreßleitungen A16 bis A31 durch den Prozessor 14 nicht verwendet, wenn auf den lokalen Speicher 10 zugegriffen wird. Bei dem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung werden drei dieser nicht verwendeten Adreßleitungen, die Adreßleitungen A17 bis A19, verwendet, um dem DMA-Co-Prozessor zu signalisieren, eine spezifizierte Folge zu beginnen, um Parameter für eine DMA- Übertragung zu sammeln. Diese Parameter sind in nicht verwendeten Feldern der Befehle eingebracht, beispielsweise in nicht verwendeten Feldern der NOP-Befehle, die von dem lokalen Speicher 10 zu dem Prozessor 14 auf dem Datenbus 12 weitergeleitet werden. Das Aktivieren von unterschiedlichen Kombinationen von Adreßleitungen A17 bis A19 zeigt unterschiedliche Folgen von Parametern an, die von den Befehlen extrahiert werden sollen. Ferner kann das Aktivieren von unterschiedlichen Kombinationen von Adreßleitungen A17 bis A19 unterschiedliche Positionen von nicht verwendeten Feldern innerhalb von Befehlen anzeigen, in denen Parameter gespeichert sind.
- Fig. 3 zeigt ein Blockdiagramm eines DMA-Co-Prozessors 11. Ein Befehlsadreßdecodierer 21 decodiert Werte in den Leitungen A17 bis A19 des Adreßbusses 13 und erzeugt Steuersignale 29, die durch eine Zustandsmaschine 22 verwendet werden. Aus den Steuersignalen 29 erzeugt die Zustandsvorrichtung 22 Steuersignale 26. Die Steuersignale 26 werden verwendet, um ein Register aus den DMA-Registern 23 auszuwählen, um Daten zu empfangen, die von dem Datenbus 12 geschnüffelt werden. Die geschnüffelten Daten stammen von den nicht verwendeten Feldern der Daten, die von den Befehlen übertragen werden, die von dem lokalen Speicher 10 zu dem Prozessor 14 gesendet werden. Ansprechend auf eine spezielle Kombination der Steuersignale 26, die aktiviert sind, wird ein Wert in dem Datenbus 12 in das ausgewählte DMA-Register 23 geladen. Sobald eine DMA-Transaktion durch Werte eingerichtet ist, die in die DMA-Register 23 geladen sind, überwacht eine DMA-Steuerung 24 eine DMA-Übertragung zwischen dem lokalen Speicher 10 und dem Bus 6. Die DMA-Übertragung wird vollständig unabhängig von dem Prozessor 14 durchgeführt.
- Fig. 4 zeigt Register innerhalb des DMA-Registers 23. Ein unteres Schreib-EISA-Basisadreß-(WEBAL-)Register 41 wird verwendet, um die 16 Bits niedriger Ordnung einer Adresse innerhalb des Hostspeichers 2 zu speichern. Ein oberes Schreib-EISA-Basisadreß-(WEBAU-)Register 42 wird verwendet, um die 16 Bits höherer Ordnung der Adresse innerhalb des Hostspeichers 2 zu speichern. Zusammen ergeben WEBAL und WEBAU eine Hostadresse innerhalb des Hostspeichers 2. Für eine DMA-Schreib-Transaktion, bei der Daten von dem Hostspeicher 2 zu der I/O-Vorrichtung 3 fließen, ist die Hostadresse die Startadresse für die Daten, die gesendet werden sollen. Für eine DMA-Lese-Transaktion, bei der die Daten von der I/O-Vorrichtung 3 zu dem Hostspeicher 2 fließen, ist die Hostadresse die Adresse des ersten Worts, in das Daten übertragen werden.
- Ein Schreib-RAM-Basisadreß-(WRBA-)Register 43 wird verwendet, um eine Adresse innerhalb des lokalen Speichers 10 zu speichern. Für eine DMA-Schreib-Transaktion, bei der Daten von dem Hostspeicher 2 zu der I/O-Vorrichtung 3 fließen, ist WRBA die Adresse des ersten Worts, in das Daten übertragen werden. Für eine DMA-Lese-Transaktion, bei der Daten von der I/O-Vorrichtung 3 zu dem Hostspeicher 2 fließen, ist das WRBA die Startadresse für die Daten, die gesendet werden sollen. Ein Schreib-DMA-Zählwert-(WDC-)Register 44 wird verwendet, um einen Wortzählwert für die DMA-Übertragung zu verwenden. Ein Schreib-Steuer-(WC-)Register 45 wird als ein Steuerregister für die DMA-Steuerung 24 verwendet. Sobald ein Startbit und ein Aussperrbit innerhalb des WC- Registers 45 eingestellt sind, sperrt die DMA-Steuerung 24 den Prozessor 14 davon aus, Daten von dem Datenbus 12 zu verwenden, und dieselbe überwacht eine DMA-Übertragung über den Bus 6 gemäß den EISA-Spezifikationen.
- Fig. 5 zeigt Eingangssignale und Ausgangssignale von der Zustandsmaschine 22. Die Steuersignale 29 sind ein Schnüffell-Eingangssignal 31, ein Schnüffel2-Eingangssignal 32, ein Schnüffel3-Eingangssignal 33 und ein Qualifizierender- Steuerparameter-(STERM-)Eingangssignal 34 umfassend gezeigt. Das Schnüffell-Eingangssignal 31 wird aktiviert, wenn Werte in alle Register, das WEBAL-Register 41, das WEBAU-Register 42, das WRBA-Register 43, das WDC-Register 44 und das WC-Register 45, geladen werden sollen. Das Schnüffel2-Eingangssignal 32 wird aktiviert, wenn Werte in das WRBA-Register 43, das WDC-Register 44 und das WC-Register 45 geladen werden sollen. Das Schnüffel3-Eingangssignal 33 wird aktiviert, wenn Werte in lediglich das WC-Register 45 geladen werden sollen.
- Das STERM-Eingangssignal 34 wird, nachdem die Adreßleitung A19 aktiviert ist, aktiviert. Der Befehls/Adreß-Decodierer 21 aktiviert das Schnüffell-Eingangssignal 31, wenn die Adreßleitung A19 aktiviert ist, die Adreßleitung A17 aktiviert ist, und die Adreßleitung A18 nicht aktiviert ist. Der Befehls/Adreß-Decodierer 21 aktiviert das Schnüffel2-Eingangssignal 32, wenn die Adreßleitung A19 aktiviert ist, die Adreßleitung A17 nicht aktiviert ist, und die Adreßleitung A18 aktiviert ist. Der Befehls/Adreß-Decodierer 21 aktiviert das Schnüffel3-Eingangssignal 33, wenn die Adreßleitung A19 aktiviert ist, die Adreßleitung A17 aktiviert ist, und die Adreßleitung A18 aktiviert ist. Wie in Fig. 5 sichtbar, umfassen die Steuersignale 26 ein WEBAL-Signal 36, ein WEBAU- Signal 37, ein WRBA-Signal 38, ein WDC-Signal 39 und ein WC-Signal 40.
- Fig. 6 zeigt ein Zustandsdiagramm für die Zustandsmaschine 22. In einem Anfangszustand 50 sind keine Ausgangssignale der Zustandsvorrichtung 22 aktiviert. Von dem Ausgangszustand 50 kann sich die Zustandsmaschine 22 in einen von drei neuen Zuständen bewegen oder in dem Anfangszustand verbleiben. Wenn eine Adresse in der Adreßleitung 13 plaziert ist, wird schließlich das STERM-Eingangssignal 34 aktiviert (was durch eine Ereignisraute 61 dargestellt ist) und das Schnüffell-Eingangssignal 31 wird aktiviert (was durch eine Ereignisraute 62 dargestellt ist). Dann wird ein WEBAL-Zustand 51 eingegeben. Wenn das STERM-Eingangssignal 34 aktiviert ist, ist das Schnüffell-Eingangssignal 31 nicht aktiviert, und das Schnüffel2-Eingangssignal 32 ist aktiviert (was durch eine Ereignisraute 65 dargestellt ist) und ein WRBA-Zustand 53 wird betreten. Wenn das STERM-Eingangssignal 34 aktiviert ist, das Schnüffell-Eingangssignal 31 nicht aktiviert ist, das Schnüffel2-Eingangssignal 32 nicht aktiviert ist, und das Schnüffel3-Eingangssignal 33 aktiviert ist (was durch die Ereignisraute 65 dargestellt ist), wird ein WC-Zustand 55 betreten. Ansonsten verbleibt die Zustandsmaschine 22 in dem Anfangszustand 50.
- In dem WEBAL-Zustand 51 aktiviert die Zustandsmaschine 22 das WEBAL-Signal 36. Dies bewirkt, daß die DMA-Register 23 die 16 Bits niedriger Ordnung eines Datenworts in den Datenleitungen 12 in das WEBAL-Register 41 laden. Von dem WEBAL- Zustand 51 bewegt sich die Zustandsmaschine 22 in einen WE- BAU-Zustand 52, wenn eine neue Adresse in den Adreßleitungen 13 plaziert ist, was dazu führt, daß das STERM-Eingangssignal 34 aktiviert ist (was durch eine Ereignisraute 63 dargestellt ist).
- In dem WEBAU-Zustand 52 aktiviert die Zustandsmaschine 22 das WEBAU-Signal 37. Dies bewirkt, daß die DMA-Register 23 die 16 Bits niedriger Ordnung eines Datenworts in den Datenleitungen 12 in die WEBAU-Register 42 laden. Von dem WEBAU- Zustand 52 bewegt sich die Zustandsmaschine 22 in den WRBA- Zustand 53, wenn eine neue Adresse in den Adreßleitungen 13 plaziert ist, was dazu führt, daß das STERM-Eingangssignal 34 aktiviert ist (was durch eine Ereignisraute 64 dargestellt ist).
- In dem WRBA-Zustand 53 aktiviert die Zustandsmaschine 22 das WRBA-Signal 38. Dies bewirkt, daß die DMA-Register 23 die 16 Bits niedriger Ordnung eines Datenworts in den Datenleitun gen 12 in das WRBA-Register 43 laden. Von dem WRBA-Zustand 53 bewegt sich die Zustandsmaschine 22 in einen WDC-Zustand 54, wenn eine neue Adresse in den Adreßleitungen 13 plaziert ist, was dazu führt, daß das STERM-Eingangssignal 34 aktiviert ist (was durch eine Ereignisraute 66 dargestellt ist).
- In dem WDC-Zustand 54 aktiviert die Zustandsmaschine 22 ein WDC-Signal 39. Dies bewirkt, daß die DMA-Register 23 die 16 Bits niedriger Ordnung eines Datenworts in den Datenleitungen 12 in das WDC-Register 44 laden. Von dem WDC-Zustand 54 bewegt sich die Zustandsmaschine 22 in den WC-Zustand 55, wenn eine neue Adresse in den Adreßleitungen 13 plaziert ist, was dazu führt, daß das STERM-Eingangssignal 34 aktiviert ist (was durch eine Ereignisraute 67 dargestellt ist).
- In dem WC-Zustand 55 aktiviert die Zustandsmaschine 22 ein WC-Signal 40. Dies bewirkt, daß die DMA-Register 23 die 16 Bits niedriger Ordnung eines Datenworts in den Datenleitungen 12 in das WC-Register 45 laden. Die Zustandsmaschine 22 verbleibt in dem WC-Zustand 55 solange, wie das Schnüffell-Eingangssignal 31 aktiviert verbleibt (was durch eine Ereignisraute 69 dargestellt ist), das Schnüffel2-Eingangssignal 32 aktiviert verbleibt (was durch eine Ereignisraute 70 dargestellt ist), oder das Schnüffel3-Eingangssignal 33 aktiviert verbleibt (was durch eine Ereignisraute 71 dargestellt ist). Andernfalls kehrt die Zustandsmaschine 22 in den Anfangszustand 50 zurück.
- Ein Beispielprogramm, das in Tabelle 1 gezeigt ist, richtet eine DMA-Übertragung ein und startet dieselbe. Das Programm ist als ein Skript von Befehlen in dem lokalen Speicher 10 gespeichert. Sowie der Prozessor 14 das Skript unter Verwendung der Adreßleitungen 13 und der Datenleitungen 12 liest, erschnüffelt der DMA-Co-Prozessor 11 nicht verwendete Werte in den Adreßleitungen 13 und den Datenleitungen 12, um die DMA-Übertragung einzurichten. Eine einzige Adresse in den Adreßleitungen 13 wird verwendet, um auf die 32-Bit-Worte von dem Speicher 14 zuzugreifen. Für Zwecke des Schnüf felns, das durch den DMA-Co-Prozessor 11 durchgeführt wird, ist jeder Zugriff jedes der zwei 32-Bit-Worte ein getrennter Zugriff in den Datenleitungen 12 und den Adreßleitungen 13. Die Zahlen innerhalb der Tabelle 1 sind hexadezimal. Tabelle 1
- Wie in Tabelle 1 gezeigt, enthält die Speicherposition 0000 0100 in dem lokalen Speicher 10 einen Befehl für den Prozessor 14. Wenn der Prozessor 14 diese Adresse aktiviert, empfängt der Prozessor 14 zwei 32-Bit-Datenworte über die Datenleitungen 12. Die ersten 16 Bits der ersten 32-Bit-Datenworte enthalten einen Operationscode, der anzeigt, daß ein Makro aufgerufen wird. Das zweite 32-Bit-Datenwort (000A 0400) zeigt die Adresse des ersten Befehls des Makros an. Der Prozessor 14 springt dann zu dieser Adresse, um das Ausführen des Skriptes fortzufahren.
- Der Prozessor 14 plaziert die empfangene Adresse (000A 0400) in den Adreßleitungen 13. Da lediglich die 16 Bits niedriger Ordnung der Adreßleitungen 13 durch den lokalen Speicher 10 verwendet werden, ist die tatsächliche Adresse, auf die zugegriffen wird (0000 0400). Der Befehls/Adreßdecodierer 21 innerhalb des DMA-Co-Prozessors 11 erfaßt jedoch, daß die Adreßleitung A17 aktiviert ist und die Adreßleitung A19 aktiviert ist. Der Befehls/Adreßdecodierer 21 aktiviert daher das Schnüffell-Eingangssignal 31 und das STERM-Eingangssignal 34. Der Prozessor 14 decodiert den Operationscode in den ersten 16 Bits des ersten Datenworts als einen Leer- (NOP-)Befehl. Der Prozessor 14 ignoriert daher den Rest des ersten Datenworts und des zweiten Datenworts. Der DMA-Co- Prozessor 11 plaziert jedoch die 16 Bits niedriger Ordnung von Daten in dem ersten Datenwort (1230) in dem WEBAL-Register 41 und plaziert die 16 Bits niedriger Ordnung von Daten in dem zweiten Datenwort (00EE) in dem WEBAU-Register 42.
- Nach dem Empfangen der zwei Datenwörter bei der Adresse (0000 0400) inkrementiert der Prozessor 14 seine Programmzähler auf (000A 0408). Der Prozessor 14 plaziert die neue Adresse (000A 0408) in den Adreßleitungen 13. Da lediglich die 16 Bits niedriger Ordnung der Adreßleitungen 13 durch den lokalen Speicher 10 verwendet werden, ist die tatsächliche Adresse, auf die innerhalb des lokalen Speichers 10 zugegriffen wird, (0000 0408). Der Befehls/Adreßdecodierer 21 innerhalb des DMA-Co-Prozessors 11 erfaßt wiederum, daß die Adreßleitung A17 aktiviert ist, und daß die Adreßleitung A19 aktiviert ist. Der Befehls/Adreßdecodierer 21 aktiviert daher das Schnüffell-Eingangssignal 31 und das STERM-Eingangssignal 34. Der Prozessor 14 decodiert den Operationscode in den ersten 16 Bits des ersten Datenworts als ein NOP. Der Prozessor 14 ignoriert daher den Rest des ersten Datenworts und des zweiten Datenworts. Der DMA-Co-Prozessor 11 plaziert jedoch die 16 Bits niedriger Ordnung von Daten in dem ersten Datenwort (03C0) in dem WRBA-Register 43 und plaziert die 16 Bits niedriger Ordnung von Daten in dem zweiten Datenwort (0200) in dem WDC-Register 44.
- Nach dem Empfangen der zwei Datenworte bei der Adresse (0000 0408) inkrementiert der Prozessor wiederum seinen Programmzähler auf (000A 0410). Der Prozessor 14 plaziert die neue Adresse (000A 0410) in den Adreßleitungen 13. Da lediglich die 16 Bits niedriger Ordnung der Adreßleitungen 13 durch den lokalen Speicher 10 verwendet werden, ist die tatsächliche Adresse, auf die in dem lokalen Speicher 10 zugegriffen wird, (0000 0410). Der Befehls/Adreßdecodierer 21 innerhalb des DMA-Co-Prozessors 11 erfaßt wiederum, daß die Adreßleitung A17 und die Adreßleitung A19 aktiviert sind. Der Befehls/Adreßdecodierer 21 aktiviert daher das Schnüffell-Eingangssignal 31 und das STERM-Eingangssignal 34. Der Prozessor 14 decodiert den Operationscode in den ersten 16 Bits des ersten Datenworts als einen Rücksprung. Der Prozessor 14 ignoriert daher den Rest des ersten Datenworts und des zweiten Datenworts. Der DMA-Co-Prozessor 11 plaziert jedoch die 16 Bits niedriger Ordnung von Daten in dem ersten Datenwort (4001) in dem WC-Register 45. Die Einstellbits teilen der DMA-Steuerung 24 mit, den Prozessor 14 von der Verwendung der Adreßleitungen 13 und Datenleitungen 12 auszusperren und die DMA-Transaktion durchzuführen, die durch die Werte angezeigt wird, die in die DMA-Register 23 geladen sind.
- Die DMA-Steuerung 24 beendet dann die DMA-Transaktion. Bei der Beendigung der DMA-Transaktion gibt die DMA-Steuerung die Adreßleitungen 13 und die Datenleitungen 12 frei, so daß auf dieselben wiederum durch den Prozessor 14 zugegriffen werden kann.
- Die vorhergehende Erörterung offenbart und beschreibt lediglich beispielhafte Verfahren und Ausführungsbeispiele der vorliegenden Erfindung. Die Offenbarung der vorliegenden Erfindung soll lediglich den Schutzbereich der Erfindung darstellen, jedoch nicht definieren, der in den folgenden Ansprüchen dargelegt ist.
Claims (10)
1. Ein Verfahren zum Erhalten von Parametern für einen
Co-Prozessor (11) aus Daten, auf die durch einen
Hauptprozessor (14) zugegriffen wird, von einem
Speicher (10), der mit dem Hauptprozessor
schnittstellenmäßig verbunden ist, wobei der Co-Prozessor einen
Zugriff auf eine oder mehrere Datenleitungen (12)
aufweist, die durch den Speicher (10) gesteuert werden,
und wobei das Verfahren durch folgende Schritte
gekennzeichnet ist:
(a) Überwachen von Adressen, die durch den
Hauptprozessor (14) erzeugt werden, durch den
Co-Prozessor (11);
(b) beim Erfassen einer vorbestimmten Kombination
innerhalb einer Adresse, die durch den
Hauptprozessor (14) erzeugt wird, wobei mindestens ein
Abschnitt der Adresse eine Position in dem
Speicher (10) auswählt, Zugreifen auf einen Parameter
innerhalb eines Abschnitts von Daten von dem
Speicher (10), die derart durch den
Hauptprozessor (14) adressiert werden, durch den
Co-Prozessor (11), wobei der Co-Prozessor den Abschnitt
von Daten von einer oder mehreren Datenleitungen
(12) liest, die durch den Speicher (10) gesteuert
werden, wobei der Abschnitt der Daten durch den
Hauptprozessor (14) nicht verwendet wird.
2. Ein Verfahren gemäß Anspruch 1, das ferner dadurch
gekennzeichnet ist, daß die vorbestimmte Kombination
eine Aktivierung mindestens einer Speicheradreßleitung
ist, die nicht benötigt wird, um Daten innerhalb des
Speichers (10) zu adressieren.
3. Ein Verfahren gemäß Anspruch 1 oder 2, das ferner
dadurch gekennzeichnet ist, daß in dem Schritt (b) die
Daten, die durch die Adresse adressiert werden, ein
Befehl zur Ausführung durch den Hauptprozessor (14)
sind, und dadurch gekennzeichnet ist, daß der
Abschnitt der Daten, der durch den Hauptprozessor (14)
nicht verwendet wird, in einem nicht verwendeten Feld
des Befehls enthalten ist.
4. Ein Verfahren gemäß Anspruch 1, 2 oder 3, das ferner
dadurch gekennzeichnet ist, daß der Co-Prozessor (11)
verwendet wird, um einen DMA zwischen einer
Schnittstellenkarte (3) und einem Hostcomputer (1)
durchzuführen, wobei die Parameter eine DMA-Transaktion
beschreiben, und wobei die Parameter durch den
Co-Prozessor (11) in DMA-Register (41-45) geladen werden.
5. Ein Verfahren gemäß einem beliebigen der
vorhergehenden Ansprüche, das ferner dadurch gekennzeichnet ist,
daß unterschiedliche vorbestimmte Kombinationen
innerhalb einer Adresse unterschiedliche Folgen von
Parametern anzeigen, auf die der Co-Prozessor zugreifen
kann.
6. Ein Co-Prozessor (11), der Parameter aus Daten, auf
die durch einen Hauptprozessor (14) zugegriffen wird,
von einem Speicher (10) erhält, der mit dem
Hauptprozessor schnittstellenmäßig verbunden ist, wobei der
Co-Prozessor einen Zugriff auf eine oder mehrere
Datenleitungen (12) aufweist, die durch den Speicher
(10) gesteuert werden, und wobei der Co-Prozessor (11)
durch folgende Merkmale gekennzeichnet ist:
(a) eine Überwachungseinrichtung (21) zum Überwachen
von Adressen, die durch den Hauptprozessor (14)
erzeugt werden;
(b) eine Zugriffseinrichtung (22, 23), die mit der
Überwachungseinrichtung (21) gekoppelt ist, zum,
wenn die Überwachungseinrichtung (21) eine
vorbestimmte Kombination innerhalb einer Adresse
erfaßt, die durch den Hauptprozessor (14) erzeugt
wird, wobei mindestens ein Abschnitt der Adresse
eine Position in dem Speicher (10) auswählt,
Zugreifen auf einen Parameter innerhalb eines
Abschnitts von Daten von dem Speicher (10), der
derart durch den Hauptprozessor (14) adressiert
wird, wobei der Co-Prozessor (11) den Abschnitt
von Daten von einer oder mehreren Datenleitungen
(12) liest, die durch den Speicher (10) gesteuert
werden, wobei der Abschnitt der Daten durch den
Hauptprozessor (14) nicht verwendet wird.
7. Ein Co-Prozessor (11) gemäß Anspruch 6, der ferner
dadurch gekennzeichnet ist, daß die vorbestimmte
Kombination eine Aktivierung mindestens einer
Speicheradreßleitung ist, die nicht benötigt wird, um Daten
innerhalb des Speichers (10) zu adressieren.
8. Ein Co-Prozessor (11) gemäß Anspruch 6 oder 7, der
ferner dadurch gekennzeichnet ist, daß der
Co-Prozessor (11) zusätzlich eine DMA-Steuerung (24) aufweist,
die DMA-Transaktionen zwischen dem Speicher (10) und
einem Hostcomputer (1) überwacht, und der dadurch
gekennzeichnet ist, daß die Parameter eine
DMA-Transaktion beschreiben, die durch die DMA-Steuerung (24)
durchgeführt werden soll.
9. Ein Co-Prozessor (11) gemäß Anspruch 8, der ferner
dadurch gekennzeichnet ist, daß die
Zugriffseinrichtung (22, 23) folgende Merkmale aufweist:
eine Zustandsmaschine (22), die mit der
Überwachungseinrichtung (21) gekoppelt ist, wobei die
Zustandsmaschine (22) Eingangssignale von der
Überwachungsein
richtung (21) empfängt; und DMA-Register (41-45),
die mit der DMA-Steuerung (24) und der
Zustandsmaschine (22) gekoppelt sind, wobei die Zustandsmaschine
(22) Steuersignale zum Laden der Parameter in die
DMA-Register (41-45) erzeugt.
10. Ein Co-Prozessor (11) gemäß Anspruch 6, 7, 8 oder 9,
der ferner dadurch gekennzeichnet ist, daß
unterschiedliche vorbestimmte Kombinationen innerhalb einer
Adresse unterschiedliche Folgen von Parametern
anzeigen, auf die der Co-Prozessor zugreifen kann.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US71744891A | 1991-06-19 | 1991-06-19 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69229657D1 DE69229657D1 (de) | 1999-09-02 |
DE69229657T2 true DE69229657T2 (de) | 1999-12-02 |
Family
ID=24882076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69229657T Expired - Fee Related DE69229657T2 (de) | 1991-06-19 | 1992-06-12 | Co-Prozessor unterstützende Architektur für einen Prozessor, der keine Zusatzprozessorfähigkeit hat |
Country Status (4)
Country | Link |
---|---|
US (1) | US5485624A (de) |
EP (1) | EP0519348B1 (de) |
JP (1) | JP3301781B2 (de) |
DE (1) | DE69229657T2 (de) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5598579A (en) * | 1994-04-25 | 1997-01-28 | Compaq Computer Corporation | System fpr transferring data between two buses using control registers writable by host processor connected to system bus and local processor coupled to local bus |
US5732279A (en) * | 1994-11-10 | 1998-03-24 | Brooktree Corporation | System and method for command processing or emulation in a computer system using interrupts, such as emulation of DMA commands using burst mode data transfer for sound or the like |
US5590377A (en) * | 1995-06-07 | 1996-12-31 | Ast Research, Inc. | Automatic control of distributed DMAs in a PCI bus system supporting dual ISA buses |
US5706514A (en) * | 1996-03-04 | 1998-01-06 | Compaq Computer Corporation | Distributed execution of mode mismatched commands in multiprocessor computer systems |
US6185634B1 (en) * | 1996-09-27 | 2001-02-06 | Emc Corporation | Address triggered DMA controller with an indicative signal including circuitry for calculating a new trigger address value based on the sum of the current trigger address and the descriptor register data with a trigger address register |
US6226738B1 (en) | 1997-08-01 | 2001-05-01 | Micron Technology, Inc. | Split embedded DRAM processor |
US6760833B1 (en) | 1997-08-01 | 2004-07-06 | Micron Technology, Inc. | Split embedded DRAM processor |
US8489861B2 (en) * | 1997-12-23 | 2013-07-16 | Round Rock Research, Llc | Split embedded DRAM processor |
US6026478A (en) * | 1997-08-01 | 2000-02-15 | Micron Technology, Inc. | Split embedded DRAM processor |
US6658552B1 (en) * | 1998-10-23 | 2003-12-02 | Micron Technology, Inc. | Processing system with separate general purpose execution unit and data string manipulation unit |
US6701405B1 (en) * | 1999-10-01 | 2004-03-02 | Hitachi, Ltd. | DMA handshake protocol |
US6792513B2 (en) * | 1999-12-29 | 2004-09-14 | The Johns Hopkins University | System, method, and computer program product for high speed backplane messaging |
AU2001257323A1 (en) * | 2000-04-27 | 2001-11-07 | Sun Microsystems, Inc. | Method and apparatus to improve context switch times in a computing system |
US6829697B1 (en) * | 2000-09-06 | 2004-12-07 | International Business Machines Corporation | Multiple logical interfaces to a shared coprocessor resource |
US8335855B2 (en) * | 2001-09-19 | 2012-12-18 | Jpmorgan Chase Bank, N.A. | System and method for portal infrastructure tracking |
EP1278120A1 (de) * | 2001-07-18 | 2003-01-22 | Infineon Technologies AG | Controller und Verfahren zum Ansteuern einer zentralen Verarbeitungseinheit für eine Speicheradressierung |
US6745315B2 (en) * | 2001-08-14 | 2004-06-01 | Motorola Inc. | Generation of address pattern through employment of one or more parameters to store information at parts of storage that are employable with multiprocessing |
US7228401B2 (en) * | 2001-11-13 | 2007-06-05 | Freescale Semiconductor, Inc. | Interfacing a processor to a coprocessor in which the processor selectively broadcasts to or selectively alters an execution mode of the coprocessor |
JP4224430B2 (ja) * | 2003-07-07 | 2009-02-12 | 株式会社ルネサステクノロジ | 情報処理装置 |
US20050038946A1 (en) * | 2003-08-12 | 2005-02-17 | Tadpole Computer, Inc. | System and method using a high speed interface in a system having co-processors |
JP2005202767A (ja) * | 2004-01-16 | 2005-07-28 | Toshiba Corp | プロセッサシステム、dma制御回路、dma制御方法、dmaコントローラの制御方法、画像処理方法および画像処理回路 |
US7937557B2 (en) | 2004-03-16 | 2011-05-03 | Vns Portfolio Llc | System and method for intercommunication between computers in an array |
US8090916B2 (en) * | 2004-06-29 | 2012-01-03 | Macronix International Co., Ltd. | In-circuit programming architecture with processor and delegable flash controller |
US7406559B2 (en) * | 2004-08-23 | 2008-07-29 | Macronix International Co., Ltd. | In-circuit programming architecture with processor, delegable flash controller, and code generator |
US20060155974A1 (en) * | 2005-01-07 | 2006-07-13 | Moyer William C | Data processing system having flexible instruction capability and selection mechanism |
US7904695B2 (en) * | 2006-02-16 | 2011-03-08 | Vns Portfolio Llc | Asynchronous power saving computer |
US7934075B2 (en) * | 2006-02-16 | 2011-04-26 | Vns Portfolio Llc | Method and apparatus for monitoring inputs to an asyncrhonous, homogenous, reconfigurable computer array |
US7617383B2 (en) * | 2006-02-16 | 2009-11-10 | Vns Portfolio Llc | Circular register arrays of a computer |
US7966481B2 (en) | 2006-02-16 | 2011-06-21 | Vns Portfolio Llc | Computer system and method for executing port communications without interrupting the receiving computer |
US7904615B2 (en) | 2006-02-16 | 2011-03-08 | Vns Portfolio Llc | Asynchronous computer communication |
US7925862B2 (en) * | 2006-06-27 | 2011-04-12 | Freescale Semiconductor, Inc. | Coprocessor forwarding load and store instructions with displacement to main processor for cache coherent execution when program counter value falls within predetermined ranges |
US7805590B2 (en) * | 2006-06-27 | 2010-09-28 | Freescale Semiconductor, Inc. | Coprocessor receiving target address to process a function and to send data transfer instructions to main processor for execution to preserve cache coherence |
KR100781340B1 (ko) * | 2006-09-18 | 2007-11-30 | 삼성전자주식회사 | 사용자 정의 확장 연산을 처리하는 연산 시스템 및 방법 |
US7689402B2 (en) * | 2006-11-17 | 2010-03-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for retrieving application-specific code using memory access capabilities of a host processor |
US7555637B2 (en) * | 2007-04-27 | 2009-06-30 | Vns Portfolio Llc | Multi-port read/write operations based on register bits set for indicating select ports and transfer directions |
US8122229B2 (en) * | 2007-09-12 | 2012-02-21 | Convey Computer | Dispatch mechanism for dispatching instructions from a host processor to a co-processor |
US8667254B1 (en) * | 2008-05-15 | 2014-03-04 | Xilinx, Inc. | Method and apparatus for processing data in an embedded system |
US20100023730A1 (en) * | 2008-07-24 | 2010-01-28 | Vns Portfolio Llc | Circular Register Arrays of a Computer |
EP2525286A1 (de) * | 2011-05-17 | 2012-11-21 | Nxp B.V. | Koprozessorschnittstelle |
EP4080354A1 (de) * | 2021-04-23 | 2022-10-26 | Nxp B.V. | Prozessor und befehlssatz |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4371932A (en) * | 1979-07-30 | 1983-02-01 | International Business Machines Corp. | I/O Controller for transferring data between a host processor and multiple I/O units |
AU556521B2 (en) * | 1981-06-11 | 1986-11-06 | Data General Corporation | Arithmetic unit |
US5021991A (en) * | 1983-04-18 | 1991-06-04 | Motorola, Inc. | Coprocessor instruction format |
US5165027A (en) * | 1986-01-24 | 1992-11-17 | Intel Corporation | Microprocessor breakpoint apparatus |
US4672570A (en) * | 1986-09-05 | 1987-06-09 | The United States Of America As Represented By The Secretary Of The Air Force | Network interface module and method |
GB2197506A (en) * | 1986-10-27 | 1988-05-18 | Burr Brown Ltd | Providing and handling break points in a software monitor |
JPH0786870B2 (ja) * | 1988-04-15 | 1995-09-20 | 株式会社日立製作所 | コプロセツサのデータ転送制御方法およびその回路 |
US5280613A (en) * | 1990-06-25 | 1994-01-18 | Hewlett-Packard Company | ANDF installer using the HPcode-Plus compiler intermediate language |
-
1992
- 1992-06-12 EP EP92109938A patent/EP0519348B1/de not_active Expired - Lifetime
- 1992-06-12 DE DE69229657T patent/DE69229657T2/de not_active Expired - Fee Related
- 1992-06-18 JP JP15837792A patent/JP3301781B2/ja not_active Expired - Fee Related
-
1994
- 1994-07-01 US US08/269,970 patent/US5485624A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP3301781B2 (ja) | 2002-07-15 |
EP0519348A3 (de) | 1994-05-04 |
EP0519348B1 (de) | 1999-07-28 |
US5485624A (en) | 1996-01-16 |
DE69229657D1 (de) | 1999-09-02 |
EP0519348A2 (de) | 1992-12-23 |
JPH05233287A (ja) | 1993-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69229657T2 (de) | Co-Prozessor unterstützende Architektur für einen Prozessor, der keine Zusatzprozessorfähigkeit hat | |
DE69505717T2 (de) | Verfahren und Vorrichtung zur Feststellung und Durchführung von kreuzweisen Unterprogrammanrufen | |
DE69129565T2 (de) | Hochleistungsfähiger Emulator mit Pipelining | |
DE69901176T2 (de) | Rechnersystem mit einem emulationscoprozessor und verfahren zur emulation eines anwendungsprogramms | |
DE19882696B4 (de) | Speichertransaktionen auf einem Bus geringer Leitungsanzahl | |
DE69810064T2 (de) | Verfahren und Anordnung zur Veränderung der Durchführung eines Nachfolgebefehls in einem Dataprozessor | |
DE69621493T2 (de) | Hardwareunterstützung zur schnellen Emulation von nicht-implementierten Befehlen | |
DE3786967T2 (de) | Protokoll zum Ungültigerklären eines Cachespeichers für ein digitales Datenverarbeitungssystem. | |
DE69031547T2 (de) | Befehlsausgabe für ein Rechnersystem | |
DE69032783T2 (de) | CPU-Bussteuerschaltung | |
DE4329336C2 (de) | Einrichtung und Verfahren zur Identifizierung eines Computer-Mikroprozessors | |
DE69630126T2 (de) | Historische zustandinformation verwendendes entscheidungsprotokoll für zugriff auf ein geteiltes speichergebiet | |
DE69620062T2 (de) | Datenzugriffimplementierung von Gerätetreiberschnittstelle | |
DE60008088T2 (de) | Mehrprozessorsystem Prüfungsschaltung | |
DE69801156T2 (de) | Mikroprozessorbetriebene anordnung mit cache-speicher zum aufnehmen von software-leistungsprofildaten | |
DE69636861T2 (de) | Mikroprozessor mit Lade-/Speicheroperation zu/von mehreren Registern | |
DE68903693T2 (de) | Einrichtung zur datenverarbeitung. | |
DE69512485T2 (de) | Fehlerbeseitigungs- und Systemverwaltungsunterbrechung | |
DE68923829T2 (de) | Startsteuerung von logischen Systemen in einem Datenverarbeitungssystem mit logischer Prozessormöglichkeit. | |
EP0224639A1 (de) | Verfahren zum Kontrollieren eines Speicherzugriffs auf einer Chipkarte und Anordnung zur Durchführung des Verfahrens | |
DE112005003216T5 (de) | System und Verfahren für Steuerregister, auf die über private Rechenoperationen zugegriffen wird | |
DE68924507T2 (de) | Verfahren und Gerät zur Markierung von Emulationsanalysezuständen. | |
DE10120867B4 (de) | Computersystem, Verfahren zum Betrieb eines Computersystems, sowie Maschinenlesbare Speichervorrichtung | |
DE3421737A1 (de) | Vorrichtung zur erfassung von operandenueberlappungen | |
DE19782017B4 (de) | Verfahren und Computersystem zur Durchführung einer Burst-Leseoperation eines Bus-Masters aus einem Systemspeicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: HEWLETT-PACKARD CO. (N.D.GES.D.STAATES DELAWARE), |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE |
|
8339 | Ceased/non-payment of the annual fee |