METHOD FOR THE CONTROL OF DATA TRANSFER BETWEEN A DATA TRANSMITTER AND A DATA RECEIVER ON A BUS, USING A CONTROL UNIT WHICH IS CONNECTED TO THE BUS

Abstract: 1. Method for controlling the data transfer between a data transmitter and a data receiver on a bus using a control unit which is connected to the bus and which, in dependence on a channel program containing transfer commands and control commands, controls the data transfer between the data transmitter and the data receiver in such a manner that, enabled by a transfer command contained in a channel command, the data are transferred into a buffer store of the control unit in a first cycle and from the buffer store to the data receiver in a second cycle and in which the associated transfer command in each case contains a mode coding for the treatment of the data transmitter address and the data receiver address, characterized in that, for implementing an exclusive data transfer from the data transmitter to the control unit (DMA), the transfer command (CCW) contains such a mode coding (Modus) for the data receiver address (DE) that the control unit only enables the data transmission between the data transmitter and the buffer store (DAR) of the control unit and/or that, for implementing an exclusive data transfer from the control unit (DMA) to the data receiver, the transfer command (CCW) contains such a mode coding (Modus) for the data transmitter address (SO) that the control unit only enables the data transmission between the buffer store (DAR) of the control unit and the data receiver.

Description: Verfahren zum Steuern des Datentransfers zwischen einem Datensender und einem Datenempfänger über einen Bus mit Hilfe einer am Bus angeschlossenen Steuereinrichtung Die Erfindung bezieht sich auf ein Verfahren zum Steuern des Datentransfers zwischen einem Datensender und einem Datenempfänger über einen Bus mit Hilfe einer am Bus angeschlossenen Steuereinrichtung, die in Abhängigkeit eines Transferbefehle und Steuerbefehle enthaltenden KanalDrogramms den Datentransfer zwischen dem Datensender und dem Datenempfänger derart steuert, dass veranlasst durc1Lj einen Transferbefehl in einem ersten Zyklus die Daten in einen Pufferspeicher der Steuereinrichtung und in einem zweiten Zyklus aus dem Pufferspeicher zum Datenempfänger übertragen werden und bei dem der zugeordnete Transferbefehl jeweils eine Moduscodierung für die Behandlung der Daten sendeEdresse und der Datenempfängeradresse enthält. In Mikrocomputersystemen ist es oft erforderlich > -Daten zwischen einem Datensender, z.B. einem Speicher, und einem Datenempfänger, z.8. einem peripheren Gerät, zu über- tragen. Die Steuerung dieses Datentransfers zwischen dem Speicher und dem peripheren Gerät erfolgt durch den Mikroprozessor , Dazu sind der Mikroprozessor ¯ der Speicher und die Deripheren Geräte an einen Bus angeschlossen, in dem ein Adressbus, ein Datenbus und ein Steuerbus zusammengefasst sind. Die Steuerung des Datentransfers zwischen dem Datensender und dem Datenempfänger wird in Abhängigkeit eines Kanalprogramms, in dem Transferbefehle und Steuer befehle enthalten sind, mit Hilfe einer am Bus angeschlossenen Steuereinrichtung durchgefihrt. Ein Kanalbefehl, mit dem ein Datentransfer durchgeführt wird, enthält gewöhnlich das Kanalbefehiswort, welches die auszuführende Operation beschreibt und verschiedene Para.eter, wie z.B. die Anzahl der zu übertragenden Bytes, der Adresse des Datensenders und die Adresse des Datenempfängers. Mehrere solche Kanalbefehle können durch sog. Befehlskettung zu einem Kanalprogramm verbunden werden. Neben den Kanalbefehlen, die den eigentlichen Datentransfer steuern, gibt es noch Steuerbefehle, durch die organisatorische Aufgaben erfüllt werden. Um den Mikropro#.#ssor von den Datentransfers zu entlasten, ist es bekannt, an den Bus eine sog. DMA Steuerung anzuschliessen, die zum grossen Teil selbstständig den Datentransfer zwischen dem Datensender und dem Datenempfänger steuert. Mikrocomputersysteme mit DMA Steuerung sind z.B. in ¯Elektronik Praxis" Nr. 9, Sept. 1982, S. 131 - 134 beschrieben. Bei solchen DMA Steuerungen kann der Datentransfer in zwei Zyklen durchgeführt werden. In einem ersten Zyklus werden die Daten vom Datensender in einen Pufferspeicher der Steuereinrichtung übertragen, in einem zweiten Zyklus werden dann die Daten vom Pufferspeicher der Steuereinrichtung zum Datenempfänger übertragen. Durch die Zwischen spei herung der Daten in der Steuereinrichtung, z.B. der DMA Steuerung, ist es möglich, die Daten in der Steuer einr chtung zu überprüfen und mit Vergleichsdaten zu vergleichen. Der Datentransfer in zwei Zyklen ist aber dann ungünstig, wenn Daten aus dem Datensender lediglich in die Steuereinrichtung bzw. Daten aus der Steuereinrichtung lediglich in Getn Datenempfänger übertragen werden sollen. Solche Oper-tionen treten sehr häufig auf, z.B. wenn das Gerät zust#ndsregister eines peripheren Gerätes gelesen werden sol oder ein Lesebefehi in ein Gerätebefehisregister eincesthrieben werden soll usw.. Bei derartigen Onera- tionen wird ebenfalls ein Datentransfer durchgeführt, dieser Datentransfer dient jedoch Steuerzwecken. Zur Übertragung von Daten lediglich vom Datensender zur Steuereinrichtung bzw. von der Steuereinrichtung zum Datenempfänger können ebenfalls die oben angeführten Transferbefehle verwendet werden. Dann aber müsste beim Lesen eines Registers im Datenempfänger im Datensender eine Speicherzelle angegeben werden, obwohl das Datum lediglich in der Steuereinrichtung benötigt wird, der Datenempfänger keine Verwendung für das Datum hat. Die der Erfindung zugrundeliegende Aufgabe besteht darin, ein Verfahren zum Steuern des Datentransfers zwischen einem Datensender und einem Datenempfänger über einen Bus mit Hilfe einer am Bus angeschlossenen Steuereinrichtung derart zu modifizieren, dass die für die Datenübertragung zwischen Datensender und Datenempfänger vorhandenen Transfer- befehle auch für die Übertragung von Daten von Datensender zur Steuereinrichtung bzw. Steuereinrichtung zum Datenempfänger verwendet werden können, ohne dass der unnötige zweite Zyklus der Datenübertragung erforderlich ist. Diese Aufgabe wird bei einem Verfahren der eingangs angegebenen Art dadurch gelöst, dass zur Realisierung eines ausschliess lichen #atentra-nsfers vom Datensender zur Steuereinrich tung der Transferbefehl eine derartige Moduscodierung für die Datenempfängeradresse enthält, dass die Steuereinrich tung nur die Datenübertragung zwischen dem Datensender und dem Pufferspeicher der Steuereinrichtung veranlasst. Weiterhin wird die Aufgabe bei einem Verfahren der ein gangs angegebenen Art dadurch gelöst, dass zur Realisierung eines ausschliesslichen Datentransfers von der Steuerein richtung zum Datenempfänger der Transferbefehl eine der artige Moduscodierung für die Datensendcradresso enthält, dass die Steuereinrichtung nur die Datenübertragung zwi schen dem Pufferspeicher der Steuereinrichtung und dem Datenempfänger veranlasst. Wenn der Kanalbefehl einen Transferbefehl, die Datensende. adresse, die Datenempfängeradresse und die Anzahl der zu übertragenden Daten enthält, ist es zweckmässig, die Daten sendeadresse durch das zu übertragende Datum zu ersetzen, das dann zum Datenempfänger übertragen wird. Vorteilhaft ist es, wenn die Steuereinrichtung eine DMA Steuerung ist, die einen durch einen Sequencer adressierten Mikroprogrammspeicher zur Aufnahme der den Kanalbefehlen zugeordneten Mikroprogramme, eine Adresseneinheit zur Auf r nahme der Datenempfänger-und Datensendeadressen, eine Da- tenstufe mit dem Pufferspeicher, eine Steuerregisterstufe und einen Datenzähler enthält. Dann kann der Kanalbefehl in ein in der Steuerregisterstufe enthalten#s Kanalbefehls- register eingespeichert werden, das mit dem Sequencer verbunden ist, der ein dem Kanalbefehl zugeordnetes Mikroprogramm im Mikroprogrammspeicher adressiert. Durch die Mikrobefehle wird die Adresseneinheit derart gesteuert, dass diese die Adresse des zu übertragenden Datums im Datensender über den Bus zum Datensender schickt, der daraufhin das Datum zur Daten stufe und zwar in den Pufferspeicher über= trägt. Entsprechend erfolgt auch die übertragung der Daten von der Steuereinrichtung zum Datenempfänger. Andere Weiterbildungen der Erfindung ergeben sich aus den Unteransprüchen. Anhand eines Ausführungsbeispiels, das in den Figuren dargestellt ist, wird die Erfindung weiter erläutert. Es zeigen Figur 1 ein Blockschaltbild eines Mikrocomputersystems, Figur 2 den Aufbau der Steuereinrichtung als DMA Steuerung, Figur 3 den Aufbau eines Kanalbefehls, Figur 4 den Aufbau eines Kanalbefehis, wenn die Datenüber tragung lediglich zwischen der Steuereinrichtung und einem Datenempfänger erfolgen soll. Das in Figur 1 dargestellte Mikrocomputersystem besteht aus einem Mikroprozessor MP, z.B. einem IAPX 80286 von Intel, einem peripheren Gerät PG, einem Speicher MM und einer Steuereinrichtung DMA. Diese Einheiten sind alle miteinander über einen Bus BU, in dem ein Adressbus AB, ein Datenbus DB und ein Steuerbus SB zusammengefasst sind, verbunden. Wenn ein Datentransfer zwischen dem Datensender, z.B. den Speicher MM, und dem Datenempfänger, z.B. dem peripheren Gerät PG, durchgeführt werden soll, gibt der Mikroprozessor MC einen Kanal-Startbefehl an die Steuereinrichtung DMA ab. Anschliessend übernimmt die Steuereinrichtung DMA die Steuerung des Datentransfers zwischen dem Speicher MM und dem peripheren Gerät PG, wobei die Bus-Zuteilung über die HOLD/ HLDA-Sequens vom MC gesteuert wird. Der Mikroprozessor MC ist damit vom Datentransfer entlastet und kann andere Aufgaben ausführen. Wenn der Datentransfer zwischen dem Datensender und dem Datenempfänger beendet ist, gibt die Steuereinrichtung DMA eine Unterbrechungsanforderung IT an den Mikroprozessor MC ab und informiert diesen von der Beendigung des Datentransfers. Der Datentransfer vom Datensender zum Datenempfänger erfolgt in Abhängigkeit eines Kanalprogramms, der Transfer befehle zur Steuerung des Datentransfers und Steuerbefehle zur Ausführung von organisatorischen Operationen enthält. Die Kanalprogramme sind z.B. im Speicher MM gespeichert und werden vom Mikroprozessor MC dort hinterlegt. Der Auf bau eines derartigen Kanalbefehls zeigt Figur 3. Der Kanal befehl besteht aus dem Kanalbefehlswort CCW, der Datensen deradresse SA, der Datenempfängeradresse DA, der Anzahl der zu übertragenden Bytes BY und dem Kanalstatuswort CSW. Das Kanalbefehlswort CCW enthält verschiedene Bestandteile. Im ersten Bestandteil DY ist angegeben, ob ein Transferbefehl oder ein Steuerbefehl ausgeführt wird. In einem zweiten Bestandteil wird der Operationscode OP angegeben, in einem dritten Bestandteil DE sind Angaben enthalten, wie die Datenempfängeradresse zu modifizieren ist (Modus), ob jeweils ein Byte oder ein Datenwort übertragen wird und in welcher Richtung die Datenübertragung erfolgen soll. Der Bestandteil SO gibt an, wie die Datensenderadresse zu modifizieren ist, ob jeweils Bytes oder Datenworte zu übertragen sind und welche Richtung die Datenübertragung nimmt. Mit Hilfe des Kanalbefehls kann somit die Steuereinrichtung feststellen, ob ein Transferbefehl durchgeführt werden soll und wenn ja, welche Adresse der Datensender hat und welche Adresse der Datenempfänger hat. Ausserdem kann die Steuereinrichtung die Anzahl der zu übertragenden Bytes feststellen, ob jeweils ein Wort oder ein Byte zu über tragen ist und ob die Datenübertragung vom Speicher zum peripheren Gerät oder vom peripheren Gerät zum Speicher erfolgen soll. Mit Hilfe der Modusinformation kann die Steuereinrichtung feststellen, ob die Adresse des Datenempfängers bzw. Datensenders nach Ausführung des Transfers unverändert bleibt oder inkrementiert oder dekrementiers werden muss. Wie bereits oben beschrieben worden ist, erfolgt der Datentransfer zwischen dem Datensender und dem Datenempfänger in zwei Zyklen. Im ersten Zyklus werden die Daten vom Datensender ineinen Pufferspeicher der Steuereinrichtung übertragen, im zweiten Zyklus werden die Daten vom Pufferspeicher der Steuerelnrichvung DMA zum Datenempfänger übertragen. Soll jedoch nur eine Datenübertragung zwischen dem Datensender und der Steuereinrichtung erfolgen, dann kann der zweite Zyklus wegfallen. Um dies zu erreichen, wird der Kanalbefehl verändert. Der Modusteil des Bestandteils DE des Kanalbefehiswortes wird mit einer bestimmten Codierung versehen, z.B. 11, während der Modusteil des Bestandteils SO des Kanalbefehlswortes seine normale Bedeutung behält. Im Kanalbefehl wird weiterhin die Adresse SA des Datensenders angegeben, während die Adresse DA des Datenempfängers keine Bedeutung mehr hat untegelaâ en werden kann. Wenn der Bestandteil DE des Kanalbefehlswortes CCW die angegebene Codierung hat, dann führt die Steuereinrichtung DMA nur den ersten Zyklus des Datentransfers durch, unterdrückt dagegen den zweiten Zyklus. Die Steuereinrichtung DMA kann dann das im Pufferspeicher enthaltene Datum überprüfen und auswerten. Soll dagegen nur eine Datenübertragung zwischen der Steuer einrichtung DMA und dem Datenempfänger erfolgen, dann wird der Kanalbefehl entsprechend Figur 4 geändert. Nun erhält der Bestandteil SO des Kanalbefehlswortes CCW die angegebene Moduscodierung, während der Bestandteil DE die üb liche Form beibehält Weiterhin ist im Kanalbefehl die Adresse DA des Datenempfängers angegeben, während die Adresse SA des Datensender: durch ein wählbares Datenwort ersetzt wird. Dieses Datenwort wird dann von der Steuereinrichtung DMA zum Datenempfänger übertragen. Auch hier wird die Datenübertragung nur in einem Zyklus durchgeführt der andere Zyklus wird unterdrückt. Wenn mit Hilfe eines Kanalbefehls nur ein Datum übertra gen werden soll, dann kann der Inhalt des Kanalbefehls- teils BY auf 1 gesetzt werden oder ganz weggelassen wer den. Es ist jedoch auch möglich, mehrmals einen derart modifizierten Datentransfer in einem Zyklus durchzuführen, dann muss der Inhalt des Bestandteils BY des Kanalbefehis einen entsprechenden Wert haben. Damit ist es z.B. möglich, auf einem peripheren Datenträger, z.B. einem Magnetband, eine bestimmte Anzahl von Bytes zu löschen oder mit einem bestimmten Byte/Wortmuster zu überschrei en. In diesem Falle müsste der Bestandteil SO des Kanalbefehlswortes CCW die Moduscodierung 11 haben. Das zu übertragende Muster wäre im Bestandteil SA des Befehiswortes anzugeben. Entsprechend ist es möglich, auf einem peripheren Datenträger, z.B. einem Magnetband, einen Datenblock bestimmter Länge zu überspringen. Dazu müsste der Bestandteil BY des Kanalbefehls einen entsprechenden Wert enthalten und der Bestandteil DE des Kanalbefehlswortes CCW die Moduscodierung 11 haben. Die Adresse des Magnetbandes wäre als Adresse SA des Datensenders anzugeben. Aus Figur 2 ergibt sich der Aufbau einer Steuereinrichtung, die als DMA Steuerung realisiert ist. Die DMA Steuerung enthält einen Sequencer SE bekannten Aufbaus (vgl. oben angegebene Literaturstelle) aus einem Bedingungsmultiplexer CC, einem Befehlsdecoder MAP,einem ersten Multiplexer MUX1, einem MikrobafzhisadressreGister MA,einem Befehlsaddierer AD1 und einem zweiten Multiplexer MUX2. An den Sequencer'SE ist ein Mikroprogrammspeicher MPS angeschlossen, in dem die den Kanalbefehlen zugeordneten Mikroprogramme gespeichert sind. Wenn ein Kanalbefehl ausgeführt werden soll, dann wird durch den Befehlsdecoder MAP das im Mikroprogrammspeicher MPS zugeordnete Mikroprogramm adressiert und vom Mikroprogrammspeicher. MPS die entsprechenden Mikrobefehle abgegeben. Diese Mikrobe-rehle werden in ein Mikrobefehlsregi- ster MBR eingespeichert, von dem dann die Steuersignale zu den übrigen Einheiten der Steuereinrichtung abgegeben werden. Das Zusammenwirken von Sequencer SE, Mikroprogrammspeicher MPS und Mikrobefehlsregister MBR ist bekannt und kann z.B. der oben angegebenen Literatursteile entnommen werden Das Mikrobefehisregister MBR ist direkt oder über einen internen Adress- und Steuerbus IA mit einer Adresseneinheit AU verbunden, in dem die Adresse des auszuführenden Kanalbefehis eingespeichert ist, und in dem die Adresse des Kanalbefehis entsprechend den Angaben im Kanalbefehiswort CCW modifiziert wird. Dazu enthält die Adresseneinheit AU ein Adressenregister ADR zur Aufnahme der Adresse des Kanalbefehls, einen Addierer AD zur Berechnung der neuen Adresse des Kanalbefehls und einen Pufferspeicher#S1 zur Zwischenspeicherung der Adresse, bevor diese auf den Adressbus AB gegeben wird. Zur Berechnung der neuen Adresse des Kanalbefehiswortes im Addierer AD kann diesem über einen Multiplexer MUX3 eine entsprechende Grösse zugeführt werden. Diese kann aus dem Mikrobefehisregister MBR entnommen werden, oder durch ein Register RG1 eingestellt werden. Die DMA Steuerung enthält weiterhin eine Datenstufe DU, in der der Pufferspeicher DAR enthalten ist. Die Datenstufe DU ist mit dem Datenbus DB verbunden, und zwar mit einem Zwischenspeicher PS2. Zwischen dem Zwischenspeicher PS2 und dem Eingang des PUfferspeichers DAR ist ein Eingangs register EPS, zwischen dem Ausgang des Pufferspeichers DAR und dem Zwischenspeicher PS2 ein Ausgangsregister APS ange ordnet. Der Pufferspeicher DAR ist weiterhin mit dem in ternen Bus IA für die Adressen und Steuersignale und einem internen Bus ID für die Daten verbunden. Weiterhin ist ein Schalter S1 in der Datenstufe DU angeordnet, mit dem die vom Mikroprozessor MC kommenden Adressen von der Adressen einheit AU auf den internen Adressbus IA durchgeschaltet werden können (zum Adressieren eines internen Registers). Die Anzahl der zu übertragenden Bytes pro Datentransfer wird mit Hilfe eines Bytezählers BZ festgelegt, der an die internen Busse ID und IA angeschlossen ist. Schliesslich sind noch Kontrollregister CR vorgesehen. Dazu gehören das Kanalstatusregister CSR, das Befehlsregister GCR und insbesondere das Kanalbefehlsregister CCR. Diese Steuerregister CR sind insbesondere mit dem Sequencer SE verbunden und zwar in der in Figur 2 angegebenen Weise. Weitere Einheiten der DMA Steuerung sind zur Erläuterung des erfindungsgemässen Verfahrens nicht erforderlich. Dazu gehören z.B. ein Taktgenerator TG und eine Anpassungaschaltung A'QS, die die Verbindung zum Mikroorozessor MC herstellt. Weiterhin kann eine Prioritätsschaltung PR vorgesehen sein, die bei Vorliegen von Bedienungsanforderungen von mehreren Datensender., oder Datenempfängern diejenige Einheit mit der höchsten Priorität auswählt. Mit Hilfe einer Schaltungsanordnung ITS zur Erzeugung einer Unterbrechungsanforderung IT kann dem Mikroprozessor MC mitgeteilt werden, wenn das Kanalprogramm von der DMA Steuerung beendet worden ist. Im folgenden soll kurz erläutert werden, wie die DMA Steuerung arbeitet. Der Mikroprozessor MC lädt zunächst die Kanalprogramme in den Speicher MM. Ausserdem lädt er das Adressenregister ADR mit der Adresse des ersten zu bearbeitenden Kanalbefehls im Kanalprogramm und das Befehisregister GCR mit dem Startbefehl. Anschliessend übernimmt die DMA Steuerung die weitere Abarbeitung des Kanalprogramms. Aus dem Befehlsregister GCR, das mit dem Sequencer SE verbunden ist, wird über den Befehlsdecoder MAP das zur Befehlseinleitung erforderliche Mikroprogramm im Mikroprogrammspeicher MPS adressiert. Mit Hilfe der zugeordneten Mikrobefehle, die in das Mikrobefehlsregister MBR übertragen werden, wird der erste Kanal,befehl in das Kanalbefehisregister CCR übertragen. Daraus ergibt sich, ob der Kanalbefehl ein Transferbefehl ist, wie er in Figur 3 dargestellt ist. Ist dies der Fall, dann stellt der Sequencer SE, der mit dem Kanalbefehlsregister CCR verbunden ist, fest, ob die Moduscodierung im Bestandteil DE bzw. SO des Kanalbefehiswortes CCW binär 11 ist oder nicht. Weiterhin veranlasst der Sequencer SE durch Ansteuerung der entsprechenden Mikroprogramme im Mikroprogrammspeicher MPS, dass der Bytezähler BZ mit der Anzahl der zu übertragenden Bytes geladen wird, und dass in das Adressenregister ADR die Adresse des Datensenders bzw. die Adresse des Datenempfängers geladen wird. Die entsprechenden Adressen sind im:=Kanalbefehl (Figur 3) enthalten. Stellt der Sequencer SE durch Auswertung des Kanalbefehis fest, dass z.B. ein Kanalbefehl entsprechend Figur 4 vorliegt, dann adressiert er das zugeordnete Mikroprogramm im Mikroprogrammspeicher MPS, durch das veranlasst wird, dass der Inhalt SA des Kanalbefehls vom Pufferspeicher DAR über das Register APS und den Zwischenspeicher PS2 zum Datenbus DB übertragen wird. Aus dem Inhalt des Bytezählers BZ kann entnommen werden, ob dieser Vorgang einmal oder mehrmals durchgeführt werden muss. Stellt dagegen der Sequencer SE fest, dass im Kanalbefehiswort CCW der Modusteil des Befehisteils DE binär 11 ist, dann adressiert er das Mikroprogramm im Mikroprogrammspeicher MPS, das die Datenübertragung vom Datensender zum Puf ferspeicher DAR veranlasst,d3egen die weitere Übertragung zum Datenempfänger unterdrückt. Auch hier kann die Über tr,agung mehrmals erfolgen, gemäss dem Inhalt des Bytezählers BZ. Zum Abschluss der Datenübertragung wird das Kanalstatus register CSR entsprechend der Abschlussursache gesetzt und der Inhalt des Kanalstatusregisters CSR in den Speicher MM und zwar in den Bestandteil CSW des Kanalbefehis übertra gen. Die Arbeitsweise des Sequençers SE kann der oben angegebenen Literaturstell entnommen werden. Die Startadresse des Mikroprogramms im Mikroprogrammspeicher MPS wird jeweils durch den Befehlsdecoder MAP aus dem Kanalbefehl im Kanalbefehlsregister CCR oder aus dem Startbefehl im Befehlsregister GCR entnommen. Die weiteren Adressen der Mikrobefehle werden mit Hilfe des Addierers DR ermittelt oder aus dem vorhergehenden Mikrobefehl über das Mikrobefehls- register MBR gewonnen. Wenn der Bytezähler BZ auf 0 herabgezählt hat, dann wird der Sequencer SE, der mit dem Bytezahler BZ verbunden ist, informiert und der Sequencer SE beendet die Bearbeitung des dem Kanalbefehl im Kanalbe fehlsregister CCR zugeordneten Mikroprogramms. 6 Patentansprüche 4 Figuren

Claims: Patentansprüche 1. Verfahren zum Steuern des Datentransfers zwischen einem Datensender und einem Datenempfänger über einen Bus mit Hilfe einer am Bus angeschlossenen Steuereinrichtung, die in Abhängigkeit eines Transferbefehle und Steuerbefehle enthaltenden Kanalprogramms den Datentransfer zwischen dem Datensender und dem Datenempfänger derart steuert, dass veranlasst durch einen Transferbefehl in einem ersten Zyklus die Daten in einen Pufferspeicher der Steuereinrichtung und in einem zweiten Zyklus aus dem Pufferspeicher zum Datenempfänger übertragen werden und bei dem der zugeordnete Transferbefehl jeweils eine Moduscodierung für die Behandlung der Datensenderadresse und der Datenempfänger- adresse enthält, dadurch g e k e n n z e i c h n e t dass zur Realisierung eines ausschliesslichen Datentransfers vom Datensender zur Steuereinrichtung (DMA) der Transferbefehl (CCW) eine derartige Moduscodierung (Modus) für die Datenempfängeradresse (DE) enthält, dass die Steuereinrichtung nur die Datenübertragung zwischen dem Datensender und dem Pufferspeicher (DAR) der Steuereinrichtung veranlasst. 2. Verfahren zum Steuern des Datentransfers zwischen einem Datensender und einem Datenempfänger über einer. Bus mit Hilfe einer am Bus angeschlossenen Steuereinrichtung, die in Abhängigkeit eines Transferbefehle und Steuerbefehle enthaltenden Kanalprogramms den Datentransfer zwischen dep Datensender und dem Datenempfänger derart steuert, dass veranlasst durch einen Transferbefehl in einem ersten Zyklus die Daten in einen Pufferspeicher der Steuereinrichtung und in einem zweiten Zyklus aus dem Pufferspeicher zum Datenempfänger übertragen werden, und bei dem der zugeordnete Transferbefehl jeweils eine Moduscodierung für die Behandlung der Datensenderadresse und der Datenempfängeradresse enthält, dadurch g e k e n n z e i ch n e ; ; dass zur Realisierung eines ausschliesslichen Datentrans fers von der Steuereinrichtung (DMA) zum Datenempfänger der Transferbefehl (CCW) eine derartige Moduscodierung (Modus) für die Datensenderadresse (SO) enthält, dass die Steuereinrichtung nur die Datenübertragung zwischen dem Pufferspeicher (DAR) der Steuereinrichtung und dem Datenempfänger veranlasst. 3. Verfahren nach Anspruch 2, dadurch g e k e n n z e i c h n e t , dass bei einem den Transferbefehl, die Datensenderadresse, die Datenempfängeradresse und die Anzahl der zu übertragenden Daten enthaltenden Kanalbefehl die Datensenderadresse (SA) durch das zu übertragende Datum ersetzt ist. 4. Verfahren nach Anspruch 1, dadurch g e k e n n z e i c h n e t , dass bei einem den Transferbefehl, die Datensenderadresse, die Datenempfingeradresse und die Anzahl der zu übertragenden Daten enthaltenden Kanalbefehl die Datenempfängeradresse (DA) von der Steuereinrichtung unterdrückt wird. 5. Steuereinrichtung zur Durchführung des Verfahrens nach Anspruch 1 oder 4 , dadurch g e k e n n z e i c h n e t dass eine DMA-Steuerung vorgesehen ist, die einen durch einen Sequencer (SE) adressierten Mikroprogrammspeicher (MPS) zur Aufnahme der den Kanalbefehlen zugeordneten Mikroprogramme, eine Adresseneinheit (AU) zur Aufnahme der Datenempfänger -und Datenseneadressen sowie derKanalbefehlsadresse, eine Datenstufe (DU) mit dem Pufferspeicher (DAR), eine Steuerregisterstufe (CR) und einen Bytezähler (BZ) enthält, dass der Kanalbefehl in ein in der Steuerregisterstufe enthaltendes Ka nalbefehlsregister (CCR) eingespeichert wird, dass dermit dem Kanalbefehisregister (CCR) verbundene Sequencer (SE) - das dem Kanalbefehl zugeordnete Mikroprogramm im Mikroprogrammspeicher (MPS) adressiert, der die zugeordneten Mikrobefehle abgibt, dass die Adresseneinheit (AU) in Abhängigkeit der Mikrobefehle die Adresse des zu übertragenden Datums im Datensender über den Bus (BU) zum Datensender schickt, der das Datum in den Pufferspeicher (DAR) in der Datenstufe (DU) überträgt. 6. Steuereinrichtung zur Durchführung des Verfahrens nach Anspruch 2 oder 3, dadurch g e k e n n z e i c h n e t dass eine DMA Steuerung vorgesehen ist, die einen durch einen Sequencer (SE) adressierten Mikroprogrammspeicher (MPS) zur Aufnahme der den Kanalbefehlen zugeordneten Mikroprogramme, eine Adresseneinheit (AU) zur Aufnahme der Datenempfänger-und Datensendeadressen, eine Datenstufe (DU) mit dem Pufferspeicher (DAR), eine Steuerregisterstufe (CR) und einen Bytezähler(BZ) enthält, dass der Kanalbefehl in einem in der Steuerregisterstufe (CR) enthaltenen Kanalbefehlsregister (CCR) gespeichert ist, dass der mit dem Kanalbefehlsregister verbundene Sequencer (SE) das dem Kanalbefehl zugeordnete Mikroprogramm im Mikroprogramm speicher (MPS) adressiert, der die zugeordneten Mikrobefehle abgibt, dass die Adresseneinheit (AU) in Abhängigkeit der Mikrobefehle die Adresse des Datenempfängers über den Bus (BU) überträgt, zu dem das Datum übertragen werden soll, und dass zugeordnete Datum aus dem Pufferspeicher (DAR) auf den Datenbus (DB) ausgibt.

Inventors: BONING, WERNER, ING. GRAD., Böning, Werner, Ing. grad.
Applicants: SIEMENS AKTIENGESELLSCHAFT BERLIN UND MUNCHEN
Application year: 1983
Main classification: G06F13
IPC codes: G06F13