DEVICE FOR THE MICROPROGRAMMED CONTROL OF INFORMATION TRANSFER, AND METHOD FOR ITS OPERATION

Abstract: 1. Circuit arrangement in a DMA controller having a plurality of independent data transmission channels for autonomous data transmission between a plurality of data sources and data sinks, characterized in that a microprogram, which can be stored in a memory, acts on a data handling unit (DHU), in which each data transmission channel is assigned a data assembly register (DARi) for the temporary storage of data bits or control information, and in that the data handling unit (DHU) contains means which, after microprogrammed initialization, execute a channel-specific processing of the data transmission of all data transmission channels.

Description: Vorrichtung zur Mikroprogramm-Steuerung eines Informe- tionstransfers und Verfahren zu ihrem Betrieb. Die Erfindung betrifft eine Vorrichtung zur Mikropro gramm-tauerung des Informationstransfers nach dem Oberbegriff des Anspruchs 1 und ein Verfahren zu ihrem Betrieb. Beispielsweise besitzt der integrierte Hochleistungs DMA-Controller ADMA (aÅavanced direct memory access) vier voneinander unabhängige Kanäle, welche den Datentransier zwischen Medien (Speicher, Peripherie-Geräte) oder allgemeiner gesprochen zwischen Datenquellen und Datensenken bewerkstelligen. Die Hauptsteuerung der Kanäle übernehmen Mikroprogamme, die innerhalb des elektronischen Bausteines in einem Mikrobefehlsspeicher ROM gespeichert sind. Die Mikroprogramme zerfallen in zwei Hauptgruppen : Organisationsprogramme, welche beim Starten des Kanals oder bei Rettung von Befehlen oder von Daten die benötigte Steuerinformation aus den im Organisationsspeicher abgelegten Kommandoblöcken auslesen und nach einem Datentransfer im Organisationsspeicher wieder Steuerinforins- tionen, z.B. Status-Informationen, ablegen, sowie interne Verwaltung vornehmen. Die Organisationsprogramme (ORG-Programme) steuern also den Control-Transfer. DMA-Programme, welche den eigentlichen Datentransfer durchführen, Die Organisationsprogramme bestehen aus ORG-Mikrobefeh- len. Der von ORG-Mikrobefehlen gesteuerte Control Transfer ist vergleichsweise einfach und wird ausschlieBlich von ORG-Mikrobefehlen selbst gesteuert. Dafür werden etwa 80 Mikrobefenle benötigt. Im Unterschied zum Control-Transfer durch ORG-Programme ist der DMA-Transfer wesentlich komplexer, bedingt durch eine Vielzahl von zu berücksichtigenden Parametern wie physikalische und logische Bus-Breiten von Datenquelle und Datensenke, Zählrichtung und Zählart der Pointeradressen, gerade oder ungerade Pointeradressen, durchzu- führende Adressbegradigung (ALIGN) zur Reduzierung der 3us-Ubeftragungen und so weiter. Wurde man alle diese DMA-Fälle ebenso rein mikroprogrammiert wie den Control Transfer steuern, so wären für alle diese DMA-Fälle einige hundert Mikrobefehle vonnöten. Dies kostet Platz im Mikrobefehlsspeicher ROM und damit auch Lesezeit. Der vorliegenden Erfindung liegt die Aufgabe zugrunde, eine Vorrichtung der eingangs genannten Art anzugeben, bei der wenig Platz im Mikrobefehlsspeicher ROM und kurze Lesezeiten benötigt werden, und die eine hohe Transferrate und eine kurze Reaktionszeit auf Transfer Anforderungen ermöglicht. Diese Aufgabe wird erfindungsgemäss durch eine Vorrich- tung nach dem Anspruch 1 gelöst. Ausgestaltungen und Vorteile der Erfindung sind in den Unteransprüchen, der Beschreibung und der Zeichnung dargestellt. Ein Ausführungsbeispiel der Erfindung wird im folgenden anhand der Zeichnung näher erläutert. Fig.1 zeigt ein Blockschaltbild eines erfindungsgemässen Ausführungsbeispiels. Fig.2 erläutert die Hauptsteuerung durch Mikrobefehle und die Mittel zur hardwaremässigen Teil steuerung. Fig.3 zeigen das Schaltbild einer erfindungsgemässen und 4 Datenhandhabungseinheit. Fig. 5 zeigen zu der Datenhandhabungseinheit nach Fig. 3 und 6 und 4 gehörige Wahrheitstabellen. Fig.1 zeigt ein Blockschaltbild für ein Ausführungsbei- spiel nach der Erfindung. Beispielsweise besitzt der integrierte, mikropogrammierte Hochleist-DMA-Controller ADMA vier voneinander unabhängige Kanäle, die den Datentransfer zwischen Quellen (SRC) und Senken (DST) autonom ermöglichen. Als SRC und DST können Speicher und Periepherie-Geräte in jeder Konfiguration, mit Bus Breiten von 8 bzw. 16 Bit in jeder Kombination bearbeitet werden. Die Instruktionen an den Baustein ADMA, wie Adresse von Datenquelle (SRC-Adresse)', Adresse von Datensenke (DST-Adresse)J Anzahl der zu transferierenden Bytes (Bytecount) und DM-Transfermodus, werden von einem Kom- munikationsspeicherbereich (Organisationsspeicher) in einem 'memory control'-Block (Kommandoblock) nach einem Kanal-Start vom ADMA selbständig über einen internen Bus IB in seine internen Adressregister, Zählerregister und Kommandoregister PR, CR, transferiert. Nach diesen sogenannten 'SETUP' eines selektierten Kanals beginnt der eigentliche DMA-Transfer. Da in ADMA vier gleichwertige DMA-Kanäle realisiert sind und da diese vier Kanäle im Pipeline-Verfahren praktisch gleichzeitig arbeiten können, ist es möglich, Über die im Transfermodus vorgegebenen Prioritätsvorgaben die Abarbeitung des DMA-Transfer-Blocks eines niederprioren Kanals durch eine Anforderung eines höherprioren Kanals ohne Zeitverlust zu unterbrechen. Da der ADMA nur eine Befehlsabarbeitungseinheit besitzt, werden die internen Zustände bezüglich Mikroprogramm-Fortschritt und Datentransfer-Fortschritt im ADMA für jeden Kanal selektiv gespeichert und verwaltet. Zur Optimierung der DMA-Transfergeschwindigkeit und zur Minimierung der Bus-Belastung im DMA-Transferfall dient ein Align-Detektor ALIGN, welcher bei seiner Aktivierung dafür sorgt, dass anstelle einer Worttransferquantität zunächst nur ein einziger Byte-Transfer durchgeführt wird, damit die weiteren Transfers innerhalb des somit begonnenen DMA-Transfer-Blocks wieder wortweise weitergeführt werden können. Der Align-Detektor ALIGN entdeckt also einen möglichen Begradigungsfall des DMA-Transfers und leitet in einem sol'chen Fall einen solchen Begradigungs- fall des DER-Transfers ein. Der Begradigungsfell tritt ein bei bestimmten Konstellationen von SRC- und DST-Bus- Typen, niederwertigsten SRC- und DST-Pointeradress-Bits und bei positiven Datenaba rbe itungsrichiungen, Gleichfalls zur Optimierung der DMA-Transfergeschwindig- keit und zur Minimierung der Bus-Belastung ist eine sogennante 'assembly/disassembly'-Funktion realisiert, welche es ermöglicht, unterschiedliche SRC- und DST-Bus Breiten übertragungstechnisch auszugleichen. So können beispielsweise bei einem 8 Bit SRC-Bus zwei Bytes hintereinander gelesen werden, damit dann auf einmal ein ganzes Wort (= 2 Bytes) auf einem 16 Bit DST-Bus abgearbeitet werden können ('assembly'). Umgekehrt kann bei einem Wort-Lasezugriff auf einem 16 Bit SRC-Bus dieses von der Datenquelle gelesene ganze Wort in 2 Bytes aufgespalten und sodann in 2 Byte-Schreibzugriffen auf einen 8 Bit DST-Bus ausgegeben werden ('disassembly'). SRC- und DST-Daten-Blöcke können im ADMA in beliebigen String-Ri chtungen (vorwärts und rückwärts) abgearbeitet werden. Dies ist wichtig beim Rückwärts-Lesen von Bandgeräten. Die SRC- und DST-String-Richtungen können beim ADMA auch unterschiedlich sein. Der ADMA unterstützt bei physikalIschen Bus-Breiten von 16 Bit neben dem logischen Datentyp 'Wort' auch den log4- schen Datentyp 'Byte', was eine Beschleunigung des Datentransfers ermöglicht. Weitere ADMA-Features sind1verify?, 'mismatch' und 'byte compare' und 'word compare' Optionen unabhängig von SRCund DST-Bus-Konstellationen, unabhängig von Begradigungsfällen, unabhängig von logischen Datentypen Byte/Wort, unabhängig von Daten-String-Abarbeitungsrichtungen von SRC- und DST-Blöcken und unabhängig von einer ttranslatet- Option. Der integrierte Hochleistungs-DMA-Controller ADMA besitzt vier voneinander unabhängige Kanäle. Die Hauptsteuerung der Kanäle übernehmen dabei Mikroprogramme. Die Folge der Mikrobefehle wird von einem Sequenzer SQ gesteuert. Auf gabe eines bestimnten Zeitzustands-Parameters (T-State) ist es, mit der Phase PHIi das Mikroprogramm-Instruktionsregister MPIRi des priorisierten Kanales i, i = 0,1,2,3 im ADMA zu selektIeren und den dort enthaltenen Mikrobefehl MB in einen Mikrobefehls-Zwischenspeicher MLATCH zu trans ferieren. Der Mikrobefehls-Zwischenspeicher MLATCH enthält auf Dauer eines Mikrobefehls das zur Abarbeitung eines Bus-Zyklus oder zur Abarbeitung einer internen organisatorischen Adressrechnung notwendige aktuelle Mikrowort. Eine Vielzahl der Hardware-Einheiten des ADMA erhält seine Instruktonen direkt vom Mikrobefehls-Zwischenspeicher MLATCH. Der Sequenzer SQ wird über Steuer- und Testeingange SE, über Adresseingänge ADDR und über Signale aus dem internen Register CR gesteuert. Der Sequenzer SQ stellt eine Mikrobefehls-Folgeadresse bereit, die aus dem Mikro befehlsspeiciier ROM den jeweils folgenden Mikrobefehl 3 kanalspezifisch für einen selektierten kanal ausliest. Aus dem internen ADMA-Pointerregister-Satz PR wird eine 24 Bit Pointer-Adresse ausgelesen, und sowohl als ein Cne- rand zu einem Addierer ADD als auch als eine externe Adresse EA zu einem Adress-Puffer bei einer Bus-Schnittftel- leneinheit BIU ransferiert. Diese 24 Bit Pointer-Adresse EA diens u.a. als externe Adresse EA für eine externe Lesebzw. Schreiboperation. Der zweite Operand für eine Adress- Pointer-Addition im Addierer ADD wird in Abhängigkeit des Mikrobefehltyps aus dem Mikrowort im Zwischenspeicher MLATCH über die Leitung OT bei einem ORG-'OFFSETt oder mittels einer autonomen 'OFFSET'-Logik OC Innerhalb einer Detenhandhabungseinheit DHU über die Leitung DO an Eingänge des Multiplexers MUX2 abgegeben. Welcher Eingang am Multiplexer MUX2 zur Einschleusung des zweiten Operan- den in den Addierer ADD nun zum Zuge kommt, wird über die sen Multiplexer MUX2 festgelegt. Das Ergebnis der im Addierer ADD durchgeführten Addition wird bei Gültigkeit des momentan bearbeiteten Mikrobe fehls MB in den 24 Bit Pointerregister-Satz PR unter einer im Mikrowort vorgegebenen Adresse zurückgeschrie- ben. Bei Mikrobefehlen MB, die den externen Datentransfer betreffen, wird im Gegensatz zu internen Organisations Mikrobefehlen zusätzlich fUr den Fall, dass der Status für den Beginn einer externen Lese- bzw. Schreibopera- tion auf den externen Bus ausgegeben werden kann, ein kanalspezifischer Bytecounter dekrementiert, sowie das kanalspezifische Datenassemblyregister DARi, i = 0, 1, 2, 3, der autonomen Datenhandhabungseinheit DHU mit einem Clock-Puls bzw. Lese-Signal beaufschlagt. Aus Gründen der optimalen Ausnutzung des im internen Mikrobefehlsspeichers ROM gespeicherten Mikrobeiehls wurde die Datenhandhabungseinheit DHU definiert, die es ermöglicht, unabhängig von der Bus-Breite, beispielsweise 8 Bit oder 16 Bit, des an den ADMA angeschlossenen Organisationsspeichers, in dem das Kanalprogramm des ADltA gespeichert ist, und unabhängig davon, ob die 'command pointer'-Adresse gerade oder ungerade ist, mit nur einem einzigen Satz sogenannter 'SETUP'-Mikrobefehle die gesamten organisatorischen Transfers zum Laden der ADMA-Register CR, PR vom Speicher, der günstigerweise einen Eonmando-Block aufweist, zu erreichen. Die Datenhandhabungseinheit DHtJ weist eine 'OFFSET'-Steue- rung OC und eine Ausführungs-Steuerung EC neben den Data assembly-Registern DARi auf. Diese Steuerungen OC, EC betreffen sowohl Informationsaustausch mit externen Informationsquellen als auch mit externen Informationssenken. Das im Zwischenspeicher MLATCH gespeicherte Mikrowort liefert Steuersignale SE zur Steuerung des Sequenzers SQ und steuert Mittel PIP zum Pipelining von Daten, steuert den Bytecounter und liefert Informationen für die Adresspointer-Steuerung und für die Sequenzer Steuerung-und liefert Informationen für die Steuerung des externen Schreibzugriffes Mit einer Anordnung nach Fig.1 kann jede Pointeradresse inkrementiert, dekrementiert oder auch konstantgehalten werden. Mit einer Anordnung nach Fig.1 können beliebige physikalische Bus-Breiten und logische Bus-Breiten je wells miteinander kombiniert werden. Inwieweit die Ausführungs-Steuerung EC der Datenhandha bungseinhelt DHU über einen Multiplexer MUX1 auf die Ausführungssteuerung AS des ADMA Einfluss nahmen darf, wird von dem im Zwischenspeicher MLATCH enthaltener Mikro- wort gesteuert. Fig.2 erläutert die Hauptsteuerung durch Mikrobefehle MB und die hardwaremässige Teilsteuerung durch die Datenhandhabungseinheit DHU. Die Mikrobefehle MB bestehen aus vier Hauptfeldern: Se-quenz-Steuerung SC, welche für die Folgeadress-Bereit- stellung sorgt. Daten/Spezial-Steuerung DSC: Dieses Feld enthält u.s. die Adresse DREG des zu beschreibenden/lesenden ADMA-Regi- sters PR, sowie Informationen über die durchzuführende Aktion (Lesen/RD, Schreiben/WR) und die zu transferiende Menge (Wort oder Byte/WORD). Bei sogenannten internen Befehlen (RD = 0 und WR = 0) führen diese Befehle keinen externen Bus-Zyklus durch, sondern nehmen interne Verwaltung vor. Bei solchen internen Befehlen enthält das DREG Feld Steuerinformationen. Adress-Steuerung AC: Die Adress-Steuerung AC enthält die Adresse ARE des Pointerregisters PR, welches die für den Informationstransfer benötigte externe Adresse EA enthält. Ferner enthält die Adress-Steuerung AC die Adresse AREG2 des Pointerregisters PR, in das die modifizierte Pointer-Adresse zurückgeschrieben werden soll. Ferner enthält die Adress-Steuerung AC die Steuerung der Adress Modifikation durch den Addierer ADD über die beiden Bits ADMUXCTRL und ADMUXC/O. Befehlstyp-Steuerung ITC: Die Befehlstyp-Steuerung ITC enthält.Angeben über den Befehlstyp. wie z.B. ORG/DER oder SRC/DST. Der Informatnonstransfer wird von einer gemischten Hard ware-Firmwnre-Steuerung durchgeführt. Die A. Teile der übernehmen dabei Mikrobefehle MB vom Typ DMA. Teile der Detenmenge (WO wie die Angabe über die zu transferierende Datenmenge (WORD) bzw. die Information über die involvierten Bytes (DARHINV, DARLINV) eines Satzes von Data-Assembly (Stutz)-Registern DARi sowie die 2) und die Steue für die Pointeradress-MOdification (# 0, 1, 2) und die Steuerung eines 'swappers' in der Hardware-Einrichtung, nä 3IU werden von einer speziellen Hardware-Einrichtung, nämlich der Datenhandhabungseinheit ndet durchgeführt. Die Datenhand habungseinheit DW) verwendet spezielle Datenregister, ndm- lich die vorgenannten Data-Assembly-Register DARi, für die Zwischenspeicherung von Datenbytes. Zusätzlich ver waltet die Datenhandhabungseinheit DHU noch einige Steuer Flip-Flops, wie z.B. den Data-Assembly-Register-Füllstand oder den Data-Assembly-Register-Pointer, die für die Eintrags-/Austrags-Folge der Daten in bezug auf die Datenhandhabungseinheit DHU von Bedeutung sind Schliesslich stellt die Datenhandhabungseinheit DHU Informationen für eine 'match'- und 'verify'-Einheit bereit, welche Datenvergleiche vornimmt. Durch diese gemischte Steuerung des Informationstrans- fers ist es möglich, die gesamten Anforderungen des Infor- mationstransfers mit nur fünf Mikroprogrammen mit insgesamt etwa 15 Mikrobefehlen MB zu erfüllen. Die gesamten Probleme beim Informationstransfer könnten im Prinzip mit einer rein mikroprograammierten Steuerung gelöst werden, was jedoch in Anbetracht cer Vielzahl von Zombinetionen der Einfluss-Parameter (über 350 Komainatio- nen sind möglich3 mit grossem Aufwand verbunden wäre. Die Erfüllung dieser vielfältig verschiedenen Informations- transfer-Aufgaben ist daher einer speziellen autonomen Hardware-Einrichtung, eben der Datenhandhabungseinheit DEU, übertragen, welche mit der Mikroprogramm-Steuerung beim Informationstransfer zusammenarbeitet. Nur so ist es möglich, mit ca. 15 Mikrobefehlen MB den gesamten Amforae- rungen des Datentransfers zu genügen, bei voller Unterbrechbarkeit der DMA-Kanäle untereinander, ohne Zeitverlust bei Unterbrechung eines Kanals durch einen anderen. Die Datenhandhabungseinheit DEU steuert nach mikroprogrammierter Initialisierung selbständig die kanalspezifische, optimale Abarbeitung der gesamten DMA-Transfer- Blöcke aller vier Kanäle. Der Modus dieser Abarbeitung wird durch die im 'SETUP' in den Kommando-Registern CR abgelegten, kanalspezifischen vier Steuerparameter-Sätzen bestimmt. Die Datenhandhebungseinheit DHU besteht aus einer Hardware-Steuerung EC, OC, welche von kanalspezili- schen Registern zur Zwischenspeicherung der Informatsonen, den vier Data-Assembly-Registern DARi, unterstützt wird. Die Data-Assembly-Register DARi werden speziell für Assembly/Disassembly-Fälle benötigt, aber auch fr eine Zwischenspeicherung von Steuerinformationen, wie der Information über einen Byte-'OFFSET' beim 'translate'-Fall oder über einen Wort-'OFFSET'für die Ausführung eines relativen Sprunges bei Befehlskettung. Schliesslich stellen die Data-Assembly-Register DARi die Basis für die 'match'- und 'verify'-Steuerung dar. Die Datenhandhebungseinheit DHU führt für einen gerade selektierten Kanal folgende Aktivitäten durch: Ermittlung der Zugriffsquantität Byte oder Wort bei Schrei- ben bzw. Lesen auf dem externen Bus, Aktivierung der kanalspezifischen Data-Assembly-Register DARi-Hälften in oezug auf Schreib- bzw. Lese-Ozeravionen, Steuerung der internen Daten-Busse D Inklusive eines Ein gangs- bzw. Ausgangs-'swappers', der in der Bus-Schnittstelleneinheit BIU enthalten ist, Steuerung der notwendigen Aktionen für 'compare'-, 'mismatch'- und 'verify'-Operationen, Verwaltung der vier Data-Assembly-Register DARi bezüglich DARi-Füllstand (DARFST), Lage des ersten transferierten Bytes in einer Wortquantität (FIRSTDARBYTE), Auftreten eines Begradigungsfalles (DAR?), Verwaltung von kanalspezifischen Signalen SEHLTOGGLE und DBHLTOGGLE zur DARi-Eintrags- und DARi-Austrags-Steue- rung, Lieferung eines 'OFFSET'-Wertes DO im Zweierkomplement, der zum SRC- bzw. DST-Adresspointer nach jedem SRC- bzw. DST-DMA-Zugriff addiert wird, um eine blockweise Abarbeitung der Informationsstrings zu gewahrleisten. Die Fig.3 und 4 zeigen das Schaltbild einer erfindungs- gemässen Datenhandhabungseinheft DHU. In folgenden werden zunächst die verwendeten Steuersignale erklärt: SPW (source physical bus width) gibt die physikalische Bus-Breite an, mit der bei Source-Fetches gearbeitet werden muss. SPW = SYSBUS (CCR) bei Systemspace-Zugriff- fen (SRCM/IO = 1). SPW = RESBUS (CCR) bei Residentspace Zugriffen (SRCM/TO = O). Die Polarität von SPW ist 0 bei einem 8 Bit-Bus und ist 1 bei einem 16 Bit-Bus. DPW (destination physical bus width) gibt die physikali- sche Bus-Breite en, mit der bei Destination-Operationen gearbeitet werden muss. DPW = SYSBUS (CCR) bei Systemspace-Zugriffen (DSTM/IO = 1). DPW = RESBUS (CCR) BEI Residentspace- zugriffen (DSTM/IO = 0). Die Polarität von DPW ist 0 bei einem 8 Bit-Bus und ist 1 bei einem 16 Bit-Bus. SLW (source logical bus width) gibt die logische und maximale Zugriffsquantität auf dem Datenquellen-Bus, SLW ist bei Zugriffsquantität Byte = 0 und bei Zugriffsquan- tität Wort = 1. SLW wird gebildet aus dem SRCW/B-Bit des Kanal-Steuerregisters (CCR) innerhalb des internen Regi sters CR, wird jedoch gleich O getetet unabhängig von SRCW/B, wenn SPW nur 8 Bit ist. Die physikalische Bus Breite SPW schränkt die logische Bus-Breite SLW ein. Durch die Angabe SRCW/B ist implizit auch ein Datentyp vorgegeben und damit eine breitensabhängige Interpretation der Adresse. SLW = O, wenn die Adresse eine Byteadresse ist. SLW = 1., wenn die Adresse eine Wortadresse ist, wobei Adresse auf das niederwertige 3yte des Wortes zeigt; das höherwertige Byte dieses Wortes wird immer durch die inkrementierte Adresse des niederwertigen Bytes engesprochen. Das gilt auch zur aie Abarbeitung von Strings in Rückwärtsrichtung (Autoddekrement). DLW (destination logical bus width) gibt die logische und maximale Zugriffsquantität auf dem Datensenken-Bus an. DLW = 0 bei einer maximalen Zugriffsquantität Byte und DLW = 1 bei einer maximalen Zugriffsquantität Wort. DLW wird gebildet aus dem DSTW/B-Bit das Kanal-Steuerregi sters CCR, wird jedoch C gesetzt unabhängig von DSTW/3, wenn die physikalische Bus-Breite zur Datensenke (DPW) nur 8 Bit ist. Die physikalische 3us-3reite DPW schränkt die logische Bus-Breite DLW ein. SEW (source effective bus width) bzw. DEW (destination effective bus width) geben die effektive Zugriffsquantität auf dem zugehörigen Informations-Bus an. SEW bzw. DEW = 0 bedeuten Zugriffsquantität 3yte und SEW bzw. DEW = 1 bedeuten Zugriffsquantität Wort. SEW wird im Normalfall bestimmt aus dem Minimum von SPW und SLW. In drei Sonderfällen wird SEW fest auf 0 gelegt, z.B. im TRANSLATE- Fall (TRA- = 1), im BYTE MUX MODE-Fall (BMM = 1) und im Falle der Abarbeitung des letzten Bytes eines Strings, also wenn BYTECOUNT = 1 (BC = 1) ist. DEW wird im Normalfall bestimmt aus dem Minimum von DPW und DLW. In zwei Sonderfällen wird DEW fest auf 0 gelegt: In BPTE MUX MODE-Fall (BMM = 1) und im Falle der Abarbeitung des letzten Bytes eines Strings, also wenn BYTECOUNT = 1 (BC = 1) ist. SED (source effective direction) bzw. DED (destination effective direction) geben die effektive Source- bzw. Destination-String-Abarbeitungsrichtung des DMA-Blocks an. Die SED bzw. DED hängen ab von den Kommando-Bits SRCINC, SRCDEC, DSTINC, DSTDEC des Kanal-Steuerregisters (CCR), wobei folgender Zusammenhang zwischen den Sourcebzw. Destination-Pointermodifikationen und SED bzw DED besteht: Solange die Source-Pointermodifikation, die durch SRCINC und SRCDEC repräsentiert wird, ein Inkrementieren oder ein Dekrementieren angibt, gibt auch SED unabghängig von der Destination-Pointermodifikation, die durch DSTINC und DSTDEC repräsentiert wird, ein Inkremeftieren (SED = 1) bzw. ein Dekrementieren (SED = O) an. Nur wenn die Source Pointermodifikation keine Ä:nderung angibt, gibt SED ein Inkrementieren bzw. ein Dekrementieren an, sobald die Destination-Pointermodifikation ein Inkrementieren bzw. ein Dekrementieren angibt. Geben sowohl die Source.Pointer- modifikation als auch die Destination-Pointermodifikation keine Änderung an, so gibt SED ein Inkrementieren an. DED gibt unabhängig von der Source-Pointermodifikation ein Inkrementieren (DsD = 1) bzw. ein Dekrementieren (DED - 0) an, sobald die Destination-Pointermodifikation ein Inkrementieren bzw. Dekrementieren angibt. Gibt die Destination-Pointermodifikation keine derurg an, so gibt DED ein Inkrementieren bzw. ein Dekementieren an, sobald die Source-Pointermodifikation ein Inkrementieren bzw. Dekrementieren angibt. Geben sowohl die Destination Pointermodifikation als auch die Source-Pointermodifika- tion keine Änderung an, so gibt DED ein Inkrementieren an. Die Signale SRCADLSB bzw. DSTADLSB entsprechen dem niederwertigsten Bit des Source-Datenpointerregisters (SPR) bzw. des Destination-Datenpointerregisters (DPR). Durch die beiden gerade genannten Signale wird bei Byte-Transfers mit Bus-Konfigurationen von 16 Bit die Auswahl der relevanten Bus-Hälfte gesteuert, da in diesem Falle der Bus-Transfer alternativ auf beiden Bus-Hälften abgewik kelt we-den kann. Bei 8 Bit Bus-Konfigurationen findet der Transfer stets auf der niederwertigen Bus-Hälfte statt, unabhängig von den beiden gerade genannten Signalen SRCADLSB und DSTADLSB. Ist eines dieser beiden gerade genannten Signale gesetzt, so wird die höherwertige Bus-Hälfte des jeweils zugehörigen Busses ausgewählt bei einer logischen Bus-Breite von 8 Bit bzw. es wird in einem ersten Bus-Zyklus die höherwertige Bus-Hälfte und in einem zweiten Bus-Zyklus die niederwertige Bus-Hälfte bei einer logischen Bus-Breite von 15 Bit ausgewählt. DARFST (Data Assembly Register Füllstand) : Der DAR-Füllstand gibt die Anzahl der im Data-Assembly-Register DARi zwischengespeicherten (assetnblerten) Bytes wieder. Der DAR-Füllstand wird sowohl von Source- als auch vom Destination-PLA-Zyklus modifiziet und in den kanalspezifischen PLA INSTRUCTION REGISTER'n verwaltet. Der Source-Zyklus erhöht den Füllstand um 2 beim Auslesen eines Wortes und um 1 beim AUslesen eines Bytes, der Destination-Zyklus erniedrigt den Füllstand um 2 bei Wort-Operationen und um 1 bei Byte-Operationen. Aus Vereinfachungsgründen wurde der Füllstand mit Hilfe eines 1 Bit-TOGGLE's realisiert, der sowohl in Source- als auch in Destination Zyklen bei Wortquantitäten un/verändert bleibt, jedoch bei einer Bytequantität seinen Wert invertiert. Der DARFST wird rückgesetzt bei jedem Eintritt in den DATA TRANSFER BLOCK. DARFSTIN: DARFST-Signal am Eingang eines Source- bzw. Destination-Zyklus. DARFSTOUT: DARFST-Signal nach Ausführung eines Sourcebzw. Destination-Zyklus. FIRSTDARBYTE: Kennzeichnet die Lage des als ersten ins DATA ASSEMBLY REGISTER (DARi) eingetragenen Bytes bei "Aufsammeln" von 2 Bettes zur Bildung eines Wortes oder kennzeichnet die Lage des Bytes im DARi bei Eintragen von nur einem einzigen Byte bei byteweisen SRC/DST-Trans- fer-Fällen. Das gerade genannte Signal wird nur im Source-Zyklus verändert. Das gerade besprochene Byte deutet auf das niederwertige Byte, wenn entweder SEW = 16 Bit oder SEW = 8 Bit ist und zugleich SED ein Inkrementieren angibt. FIRSTDARBYTE deutet auf das höherwertige Byte, wenn SEW = 8 Bit ist und SED ein Dekremen- tieren angibt. Die Polarität des FIRSTDARBYTE ist 0, wenn das niederwertige Byte gekennzeichnet werden soll. Wenn ein Wort im DARi durch Aufsammeln von zwei Bytes mit zwei Bus-Zyklen gebildet werden soll, so wird das Signal FIRSTDARBYTE mit dem Eintrag des ersten 3ytes dieses Wortes ins DARi festgelegt und bleibt gespeichert bis zu einem erneuten Eintrag eIne ersten Sytes eines weiteren Wortes ins DARi. Die Information FIRSDARBYTE wird benötigt für die Austrags-Steuerung aus dem DARi in einem Destination-Zyklus. Nach jedem Eintritt in einen DATA TRANSFER BLOCK wird FIRST DAR B7TE rückgesetzt. FIRST DAR BYTE IN ist das FIRST DAR BYTE-Signal vor Ausführung eines Source-Zyklus. FIRST DAR BYTE OUT ist das FIRST DAR BYTE-Signal nach Ausführung eines Source-Zyklus. ALIGN: Dieses Signal wird benötigt zur Signalisierung der Erkennung eines Begradigungsfalles. Ein Begradigungsfall liegt dann vor, wenn zur Optimisierung der DMA-Trans- fergeschwindigkeit bei bestimmten Konstellationen von SRC/DST-Bus-Breiten, SRCADLSB, DSTADLSB, SRC- bzw. DST Zählrichtungen ein Byte transferiert wird (von SRC nach DST), damit denn alle weiteren Transfer - zumindest auf einer Seite (SRC oder DST) - wortweise, und damit erheblich schneller, stattfinden können. Begradigt wird in folgenden Fällen: SEW = = 16 Bit, SRCADLSB = 1, SED = Inkrement, DEW = 16 Bit DSTADLSB = 1, DED = Inkrement: SRC undDST sind begradig- bar. Der Transfer findet nach Begradigung sowohl auf SRG- als auch auf DST-Seite wortweise statt. SEW = 16 Bit, SRCADLSB = 1, SED = Inkrement, DvW = 8 Bit, DSTADLSB ohne Einfluss, DED entweder gleicn Inkrement oder gleich ' no modify': SRC ist begradigbar. Der Transfer findet nach Begradigung auf der SRC-Seite wortweise statt. Auf der DST-Seite wird nach wie vor byteweise abgearbeitet. SEW = 8 Bit, SRCADLSB ohne Einfluss, SED entweder gleich Inkrement oder gleich tno modify', DEW = 16 Bit, DSTADLSB = 1, DED = Inkrement: DST ist begradigbar. Der Transfer findet nach Begradigung auf der DST-Seite wortweise statt. Auf der SRC-Seite wird nach wie vor byteweise abgearbeitet. Alle diese Fälle führen zur Aktivierung des Signals ELIGN, welches die Begradigung einleitet, in dem zunächst nur ein Byte von SRC nach DST transferiert wird. DARP (DATA ASSEMBLY REGISTER POINTER): Dieses Signal wird benötigt als Merker für den Begradigungsfell, da das Erkennungssignal für den Begradigungsfell (ALIGN) nach Über tragung des ersten Bytes verschwindet. DARP wird gesetzt beim Holen des ersten SEC-Bytes für eine Begradigung und bleibt unverändert bei allen folgenden Byte/Wort-Transfer- vorgängen. Der DARP modifiziert, wenn er gesetzt ist, unter Berücksichtigung des DARFSTIN den Eintrag der Daten ins DATA ASSEMBLY REGISTER, signalisiert dem Destination Zyklus die Art des Eintrags eines Wortes im DARi und übernimmt damit teilweise die Aufgabe des FIRST DAR BETE. Der DARP wird rückgesetzt mit jeden Eintritt in einen neuen DATA TRANSFER BLOCK. Folgende Gesetzmässigkeit gilt bei der Eintrags-Steuerung ins DARi, wenn DARP = 1 gesetzt ist: ist die Transferquantität (WORD PLA) = 15 Bit und ist DARFSTIN = O, so wird das niederwertlge Byte nach DARH und das höherwertige Byte nach DARL eingetragen. Ist die Transferquantität = 8 Bit und DARFSTIN = O, so wird das Byte nach DARH eingetragen. st die Transferquanti- tät = 8 Bit und ist DARFSTIN = 1, so wird das Dyte nach DARL eingetragen. DARPIN ist das Signal DARP am Eingang der SRC- bzw. PLA bzw. DST-PLA. DARPOUT ist das Signal DARP am Ausgang der SRC-PLA. SBHLTOGGLE (source byte high/low toggle) wird benötigt für DARi-Eintragssteuerung im SRC-Zyklus, sowie zur Freigabe des 'match'-Zustands bei Wortmatches. Dieses Signal wechselt bei jedem SRC-Zyklus, mit dem ein einziges Byte geholt wurde, seinen Zustand. Dieses Signal bleibt also unverändert bei wortweisen SRC-Zyklen und bei allen DST Zyklen. Ist dieses Signal gesetzt, so modifiziert es unter Berücksichtigung weiterer Parameter, wie Eingangs füllstand (DARFSTIN) und DARP den Eintrag eines zu holenden Bytes ins DARi. Ist dieses Signal zu Beginn eines SRC-Zyklus gesetzt, so wird nach dem Holen des zweiten Bytes zum normalen Bytematch der im vorherigen ersten Byte-Holzyklus gebildete Matchmerker zur Bildung eines Wortmatch (falls enabled) herangezogen. Dieses Signal wird rückgesetzt m't jedem Eintritt in einen neuen DATA TRANSFER BLOCK: DBHLTIGGLE (destination byte high/low toggle): Dieses Signal wird benötigt für DARi-Austragungssteuerung Im DST Zyklus und modifiziert hier unter Berücksichtigung weite- rer Parameter wie Eingangsfüllstand (DARFSTIN) und DARP das Auslesen von Bytes aus dem DARi. Dieses Signal wechselt mit jedem byteweisen Schreiben in einem DST-Zyklus seinen Zustand. Dieses Signal bleibt also unverändert bei wcrtweisen Sc'rreiben Im DST-Zyklus und in allen SRC Zyklen. Dieses Signal wird rückgesetzt mit jedem Eintritt in einen neuen DATA TRANSFER BLOCK. XFERSWAP (DMA TRANSFER SWAP): Dieses Signal dient dazu, die Kommunikation zwischen dem DARi (über den internen Bus D) und dem externen Bus im Falle von DMA-Transfer-Zyklen zu steuern. im Felle eines gesetzten Signals DMAWRITE wird das Signal IFERSWAP direkt dazu verwendet, dass ein DATA OUTPUT SWAPPER an der externen Bus-Schnittstelleneinheit BIU gesteuert wird, der den internen Datenbus D bytewelse gespiegelt auf den externen Datenbus schaltet. Im Falle eines Signals DMAREAD wird das Signal 3zERSWAuD in einer Pipeline-Kette (PIP1, PIP3) verzögert, un bei Ankommen des Lese-Detums über einen DATA INPUT SWAPPER in der Bus-Schnittstelleneinheit BIU die Möglichkeit des byteweise gespiegelten Einlesens des externen Datenbusses auf den internen Datenbus D gewährleisten zu können. Die Polarität von XFERSWAP ist O, wenn die Bus-Hälften nicht gespiegelt werden sollen. BYTEMUXMODE (8 Bit Multiplex Modus): Dieses Signal ist gesetzt, wenn Kanal 3 als Byte-Multiplex-Kanal konfiguriert ist, und wenn die effektive Bus-Breite (SEW ocer DE 8 Bit beträgt. DARHIN7 (DAR BYTE HIGH INVOLVED) und DARLINV (DAR BYTE LOW INVOLVED): Information über die in einem DMA-Source- bzw. DMA-Destination-Zyklus verwendeten DARi-Teile. Ob die DARi-Registerteile während DMA-Zyklen beschrieben oder gelesen werden, hängt ab vom zugehörigen Mikrobefehls- Bit (RD, WR, ORG, DARWE, SRC), sowie von maschineninter nen Sperrsignalen wie SPLIT1, SPLIT2 und einer Zeitbedingung für Lesen bzw. Schreiben in bezug auf das DARi. WORDPLASRC: Ausgangssignal aus der Datenhandhabungseinheiten DHU gibt die Zugriffsquantität (Wort oder Byte) auf den externen Bus im Falle eines SRC-Zyklus. Ein SRC Wortzugriffswunsch liegt vor, wenn die effektive SRC Bus-Breite 16 Bit ist und kein ALIGN-fall erkannt wird. WORDPLADST: Augangssignal aus der Datenhandhebungseinheit DHU gibt die Zugriffsquantität (Wort oder Byte) auf dem externen Bus an im Falle eines DST-Zyklus. in DST Wortzugriffswunsch liegt vor, wenn die effektive Destination-BusBreite DEW = 16 Bit ist und der DAR-Füllstand gleich 2 Bit ist (DARFSTIN = O). WORDPLA: Dieses Ausgangssignal gibt die gewünschte Zugriffsquantität (Byte oder Wort) als Steuersignal an die Bus-Schnittstelleneinheit BIU an. Dieses Signal setzt sich zusammen aus WORDPLASRC im Falle eines Source-Zyklus (SRCML = 1) bzw. aus WORDPLADST im Falle eines Destina tion-Zyklus. DMA OFFSET 2...0: Diese Ausgangssignale werden benötigt während DMA-SRC- und während DMA-DST-Zyklen zur Modifikation des gerade verwendeten SRC-Daten-Pointers bzw. DST-Daten-Pointers, da diese Pointer nach einem DMA-Zyklus automatisch um die Zugriffsquantität (Byte/Wort) inkrementiert bzw. dekrementiert werden können. Diese Signale werden im Zweierkomplement ermittelt und direkt zum Addierer ADD geleitet, wo eine 'SIGN EXTENSION' auf 24 Bit vor- genommen wird. Es sind dann folgende OFFSETs OF möglich: +2 : Inkrement für Wortquantität +1 : Inkrement für Bytequantität bzw. für Wortquanti tät mit Endebehandlung O : keine Veränderung für Wort-/Bytequantität. -1 : Dekrement für Bytequantität -2 : Dekrement für Wortquantität Die Generierung des DMA OFFSET's OF wird gesteuert durch die INC/DEC-Bits des Kanal-Steuerregisters CCR in Abhängigkeit der Zugriffsquantität (WORDPLA) und des Bytecounts (C = 3) für die rndebehandlung. SRCPLAIR 3 ... 0 CP, DSTPLAIR 3 ... 0 CP (PLA INSTRUCTION REGISTER CLOCKS): Die vier Register PLAIR 3 ... 0 bilden den Status der vier DMA-Kanäle zu jedem Zeitpunkt ab. diese Registersind sowohl Instruutionsregister für die PLA als auch Ergebnisregister nach dem Durchlauf der jeweiligen PLA. Da zu einem bestimmten Zeitpunkt nur ein durch die Prioritätslogik PRIOi freigegebener DMA-Kanal die Ablauf Steuerung AS und die Abarbeitungseinheiten des ADMA fur sich beanspruchen darf wird auch in der Datenhandhabungs- einheit DEU der kanalspezifische Parameter-Satz (gemultiplext von vier Kanälen) an die SRC- und DST-PLA geschaltet. Nach dem SRC- bzw. DST-PLA-Durchlauf werden abhängig vom Mikrowort (SRC-Bit, ORG-Bit) und abhängig vom Maschinenmodus TRANSLATE, sowie abhängig von internen Freigabesignalen wie STATUS ENABLE und BIUSPLIT-Q die Ausgänge der jeweiligen PLA in des kanalspezifische Register PLAIRi zurückgeschrieben. De im SRC-PLA-Durchlauf der Parameter DBHLTOGGLE nicht verändert werden soll, übernimmt das Register PLAIRi bei AKtivierung des SRCPLAIRCP nur die Parameter FIRST DAR BYTE, DARFST, DARP und SBHLTOGGLE. Bei Aktivierung des DSTPLAIRCP werden nur die Paramanter DBHLTOGGLE und DÄR?ST Ins Register PL.AT-Ri übernommen. PLAIR 3 ... 0 RES (PLA INSTRUCTION REGISTER RESET): Diese vier Signale veranlassen bei Eintritt eirs spezi- fischen DATA-Kanals in einen neuen DATA TRANSFER BLOCK das RESET für dessen PLA INSTRUCTION REGISTER PLAIRi. Dabei werden folgende Signale 9 auf eine logische 0 esetzt: DBHLTOGGLE, FIRST DAR BYTE, DARFST, DARP, SBHLTOGGLE. Zurückgesetzt wird mikroprogramm-gesteuert mit einer bestimmten Codierung im MAPCTR-Feld des Mikrobefehls MB, nämlich der Bedigung TRANSFER MAPEN. WECCR 3 ... 0: Diese Schreibclocks der Kanal-Steuerregister CCR werden aktiviert beim 'SETUP', wenn das Kanal- kommando vom ADMA-Kommando-Block selbständig ins Kanal Steuerregister CCR geschrieben worden ist. WIDBUS 00-Q ... 07-Q: Diese Signale gehören zu einem lokalen Datenbus zum Beschreiben der statischen PLA-Parameter-Flip-Flops mit den im Kanal-Steuerregister CCR enthaltenen Parametern. Die Fig.3 und 4 zeigen das Schaltbild einer erfindungs- gemässen Datenhandhabungseinheit DHU. Die Fig. 3 ist in zwei Teilfiguren 3a und 3b aufgeteilt. Wenn die rig.3b rechts neben die Fi-g.3a bündig angelegt wird, ergibt sich die Gesamtfigur 3. Wenn die Fig. 3b rechts neben die Fig.4a bündig angelegt wird, ergibt sich die Gesamtfigur 4. Zusammen mit den oben gegebenen Erklärungen für die Signale und zusammen mit den in den Fig. 5 und 5 angegebenen Wahr - heitatabellen für diese Signale sind die Fig.3 und 4 selbsterklärend. Eine PLA (programmable logic array) kann bei Kenntnis des Lehrbuchs von C. tEAD und L. Conway, "Introduction to VLSI Systems", Addition-Wesley, insbesondere dem Kapitel 3.10 "The Programmable Logic Array" bei vorgegebenen Eingangssignalen und vorgegebenen Ausgangssignalen dieser PLA in einfacher Weise konstruiert werden. Fig.5 zeigt die Wahrheitstabelle für die SRC PLA,und zwar in der linken Hälfte die Eingangsparameter von links nach rechts angeordnet SPW, SEW, SRCADLSB, SED, DARFSTIN, DARPIN, SBHLTOGGLEIN, ALIGN. In der rechten Hälfte von Fig.5 sind die Ausgangsparameter der SRCPLA angegeben, und zwar in der Reihenfolge von links nach rechts WORDPLASRC, DARHINV, DARLINV, XFERSWAP, DARFSTOUT, DARPOUT, FIRSTDARBYTE, DPW, DEW, DEE, DSTADLSB, SEW. In der rechten Hälfte von Fig. 6 zeigt die Wahrheitstabelle für die DSTPLA. In der linken Hälfte von Fig.6 sind die Eingangsparameter für DSTPLA angegeben, und zwar in der gleichen Folge von links nach rechts DBHLTOGGLEIN, DARPIN, DARFSTIN, FIRSTDARBYTE, DPW, DEW, DEE, DSTADLSB, SEW. In der rechten Hälfte von Fig.6 sind die Ausgangsparameter für DSTPLA angegeben, und zwar in der Reihenfolge der Spalten von links nach rechts WORDPLADST, DARHINV, DARLINV, XFERSWAP, DBH/LTOGGLEOUT, DARFSTOUT. In den Fig.5 und 6 entspricht eine 1 der logischen 1 des in der jeweilige Spalte enthaltenen Parameters, eine O entspricht der logischen 0 des in der jeweiligen Spalte ent- haltenen Parameters und ein x bedeutet, dass die Polarität des betreffenden Eingangsparameters in der entsprechenden Zeile für die Augangsparameter-Konstellation der entsprechenden Zeile ohne Bedeutung ist. In Fig. 2 sind die 38 Bits engegeben, die im MLATCH aus dem Mikrobefehl MB und von einer Priorisierungseinheit PRIOi herkommen. Ausserdem ist in Fig. 2 das Prinzip-Schaltbild für eine DMA-Steuerung DC der Detenhandhabungseinhei DHU angegeben. Die Steuerung DC erhalt neun statische Parameter von den Kanal-Steuerregistern CCR über die PLA-Register PLAIF?. Fünf Parameter werden in einer 'feedback'-Schaltung dynamisch in die jeweilige SRC-DST PLA eingekoppelt. Ausserdem stellt die Steuerung DC die drei Bits für das DMA-OFFSET OF zur Verfügung. Die fünf dynamischen Parameter-Bits für FEEDBACK tragen zur Steuerung der Pipeline-Ausführungssteuerung PIP1 bei.

Claims: Patentansprüche 1. Vorrichtung zur Mikroprogrammsteuerung eines Informationstransfers, g e k e n n z e i c h n e t durch Mittel (SQ, ROM, SE, ADDR, MPIRi, i=0, 1, 2, 3, MLATCH) zur Hauptsteuerung durch Mikrobefehle (MB) und durch Mittel (DHU) zur hardwaremässigen Teilsteuerung. 2. Vorrichtung nach Anspruch 1, g e k e n n z e i c h n e t durch Mittel (DARi) zur Zwischenspeicherung von zu transferierenden Informationsbytes. 3. Vorrichtung nach Anspruch 1 oder 2, g e k e n n z e i c k n e t durch Mittel (EC) zur statischen Speicherung von Angaben (ALIGN, SPW, SEW, SED, SRCADLSB, DPW, DEW, DED, DSTADLSB) über die zu transferierende Information 4. Vorrichtung nach Anspruch 2 oder 3, g e k e n n - z e i c h n e t durch Mittel (EC) zur dynamischen Speicherung von Angaben (SBF'LTOCGL, DBHLTOGGLE, DARP, DARFST, FIRSTDARBYTE) über die Mittel (DARi) zur Zwischenspeicherung von zu transferierenden Informationsbytes. 5. Vorrichtung nach einem der Ansprüche 1 bis 4, g e kennze i c h r e t durch Mittel (OC) zur Offsetbildung für eine Adressmodifikation bei Datenquellenbzw. Datensenkenadressen und für die Steuerung eines Swappers. 6. Vorrichtung nach einem der Ansprüche 1 bis 5, g e k e n n z e i c h n e i durch Mittel (WORD) zur An- gabe über die zu transferierende Informationsmenge. 7. Vorrichtung nach einem der Ansprüche 1 bis 6, g e k e n n z e i c h n e t durch Mittel (DARHINV, DARLINV) zur Angabe über die involvierten Bytes eines Satzes von Daten-assembly-Registern. (DARi). 8. Vorrichtung nach einem der Ansprüche 1 bis 7, g e k e n n z e i c h n e t durch Mittel (DARFST) zur An- gabe über den Füllstand bei Daten-Assembly-Registern (DARi). 9. Vorrichtung nach einem der Ansprüche 1 bis 8, g e k e n n z e i c h n e t durch Mittel (DARP) zum Merken eines vorliegenden Begradigungsfalles. 10. Vorrichtung nach einem der Ansprüche 1 bis 9, g e k e n n z e i c h n e t durch Mittel (FIRSTDARBYTE) zur Angabe der Lage des ersten transferierten Bytes In einer Wortquantität. 11. Vorrichtung nach einem der Ansprüche 1 bis 1C, g e k e n n z e l c L n e t durch Mittel (AL1GN) zur Signale lisierung der Erkennung eines Begradigungsfalles. 12. Vorrichtung nach einem der Ansprüche 1 bis 11, g e k e n n z e i c h n e t durch Mittel (SBHLTOGGLE, einem Daten-Assembly-Register (DARi). 13. Vorrichtung nach einem der Ansprüche 1 bis 12, g e k e n r z e i c h n e t durch Mittel (SPW, DPW) zur Angabe physikalischer Bus-Breiten. 14. Vorrichtung nach einem der Ansprüche 1 bis 13, g e k e n n z e i c h n e t durch Mittel (SEW, DEW) zur Angabe von effektiven Zugriffsquantitäten auf einem Transferbus. 15. Vorrichtung nach einem der Ansprüche 1 bis 14, g e k e n n z e 1 c b n e t durch Mittel (SED, DED) zur Angabe einer effektiven Stringabarbeitungsrichtung. -6. Vorrichtung nach einem der Ansprüche 1 bis 15, g e k e n n z e i c h n e t durch Mittel (SRCADLSB, DSTADLSE) zur Auswahl einer relevanten Transferbushälfte bei Buskonfigurationen von 16 bit. 17. Vorrichtung nach einem der Ansprüche 1 bis 16, g e & e n n z e 1 c hn e t durch Mittel (XFERSWAP) zum byteweisen Spiegeln eines internen Daten-Busses (D) auf einem externen Datenbus. 18. Vorrichtung nach einem der Ansprüche 1 bis 17, g e k e @ n 7 e i c h n e t durch Mittel (DO, ADD, MUX) zur Datenadressmodifikation. 19. Vorrichtung nach einem der Ansprüche 1 bis 18, g e k e z n z e i z n n e t durch Adresspointerregister (PR). 20. Verfahren zum Betrieb einer Vorrichtung nach einem der Ansprüche 1 bis 19, dadurch g e k e n n z e i ch e e t 4 dass Daten-ssembly-Register (DARi) Steueronen zwischenspeichern. 21. Verfahren zum Betrieb einer Vorrichtung nach einem der Ansp-üche 1 bis 20, dadurch g e k e n n z e i c h net, dass Daten-Assembly-Register (DARi) die Basis fü eine Match-Steuerung (MC) und für eine Verify Steuerun (VC) darstellen. 22. Verfahren zum Betrieb einer Vorrichtung nach einem der Ansprüche 1 bis 21, dadurch gekennzeich n e t , dass eine Datenhandhabungseinheit (DHU) die Zugriffsquantität Byte/Wort bei einem Informationstrans- fer auf einen externen Bus ermittelt. 23. Verfahren zum Betrieb einer Vorrichtung nach einem der Ansprüche 1 bis 22, dadurch g e k e n n z e i c h n e t , dass eine Datenhandhabungseinheit (DHU) Daten Assembly-Register (DRi)-Hälften in Bezug auf Transfer operationen aktiviert. 24. Verfahren zum Betrieb einer Vorrichtung nach einem der Ansprüche 1 bis 23, dadurch gek e n n z e i c h n e t , dass eine Datenhandhabungseinheit (DHU) interne Datenbusse (D) inklusive eines Swappers in der Bus schnitt- stelleneinheit (BIU) steuert. 25. Verfahren zum Betrieb einer Vorrichtung nach einem der Ansprüche 1 bis 24, dadurch g e k e n n z e i c h n e ç , dass eine Datenbehandlungseinheit (DHU) die notwendigen Aktionen für Compare-, Mismatcn- und Verify-Operationen steuert. 26. Verfahren zum Betrieb einer Vorrichtung nach einem der Ansprüche 1 bis 25, dadurch g e k e n n z e i c h n e t , dass eine Datenhandhabungseinheit (DHU) Steuerparameter (DARFST, FIRSTDARBYTE, DARF) von Daten-Assembly Registern (DARi) verwaltet. 27. Verfahren zum Betrieb einer Vorrichtung nach einem der Ansprüche 1 bis 26, dadurch g e k e n n z e i c h n e t , dass eine Datenhandhabungseinheit (DHU) einen Offset-Wert (DO) liefert, der zu einem Adresspointer nach jedem DM4-Zugriff addiert wird.

Inventors: SCHONBERGER, FRANZ, DIPL.-ING., STADLMEIER, HANS, DIPL.-ING., Schönberger, Franz, Dipl.-Ing.
Applicants: SIEMENS AKTIENGESELLSCHAFT
Application year: 1983
Main classification: G06F13
IPC codes: G06F9, G06F13