DE4133594A1 - Digital data communications with direct memory access - using new DMA controller for efficient, effective and reliable communications in avionics systems - Google Patents
Digital data communications with direct memory access - using new DMA controller for efficient, effective and reliable communications in avionics systemsInfo
- Publication number
- DE4133594A1 DE4133594A1 DE19914133594 DE4133594A DE4133594A1 DE 4133594 A1 DE4133594 A1 DE 4133594A1 DE 19914133594 DE19914133594 DE 19914133594 DE 4133594 A DE4133594 A DE 4133594A DE 4133594 A1 DE4133594 A1 DE 4133594A1
- Authority
- DE
- Germany
- Prior art keywords
- processor
- data
- dma
- dma controller
- word
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/32—Handling requests for interconnection or transfer for access to input/output bus using combination of interrupt and burst mode transfer
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
- Bus Control (AREA)
Abstract
Description
Die vorliegende Erfindung betrifft ein digitales Informa tionsübertragungssystem (DITS) und insbesondere ein Ver fahren und eine Einrichtung für die digitale Datenüber tragung zwischen Elementen eines Luftfahrtelektroniksy stems unter Verwendung eines direkten Speicherzugriffs.The present invention relates to digital information tion transmission system (DITS) and in particular a Ver drive and a facility for digital data transfer transfer between elements of an aviation electronics system stems using direct memory access.
Für die Übertragung von digitalen Daten zwischen Elemen ten eines Luftfahrtelektroniksystems werden verschiedene Anordnungen verwendet. Typische solche Anordnungen erfül len die Standards, die in der ARINC-Spezifikation 429-11 mit dem Titel "Mark 33 Digital Information Transfer Sy stem (DITS)", veröffentlicht am 29. August 1988 von Aero nautical Radio Inc., festgesetzt wurden. Die ARINC-Spezi fikation 429 erleichtert die Kompatibilität zwischen Sy stemschnittstellen von Systemen, die von mehreren ver schiedenen Herstellern gefertigt werden. Durch die ARINC- Spezifikation 429 werden vordefinierte allgemeine digi tale Datenwortformate und Kodierungsbeispiele geschaffen. In dem ARINC-429-Datensystem wird für den Hochgeschwin digkeitsbetrieb eine Bitrate von 100 Kilobits pro Sekunde ± 1% und eine ausgewählte Bitrate für den Niedergeschwin digkeitsbetrieb im Bereich zwischen 12,0 und 14,5 Kilo bits pro Sekunde definiert. Auch die ausgewählte Nieder geschwindigkeitsrate sollte im Bereich von ± 1% gehalten werden.For the transmission of digital data between elements aviation electronics systems are different Arrangements used. Fulfill typical such arrangements len the standards, which are in the ARINC specification 429-11 entitled "Mark 33 Digital Information Transfer Sy stem (DITS) ", published August 29, 1988 by Aero nautical Radio Inc. The ARINC spec fication 429 facilitates compatibility between sy system interfaces of systems used by several ver different manufacturers. Through the ARINC Specification 429 are predefined general digi tal data word formats and coding examples created. In the ARINC-429 data system is used for the high speed a bit rate of 100 kilobits per second ± 1% and a selected bit rate for the low speed Operation in the range between 12.0 and 14.5 kg bits defined per second. Also the selected Nieder speed rate should be kept in the range of ± 1% will.
Aus US 42 80 221-A ist ein digitales Datenkommunikations system bekannt, das eine Datenquelle, eine Quellen schnittstelle und einen digitalen Datenbus für die Über tragung von kodierten Informationen von der Datenquelle an einen oder mehrere Empfänger, die jeweils eine Emp fängerschnittstelle aufweisen, enthält. Die Quellen schnittstelle kann so angepaßt werden, daß sie die An stiegs- und Abfallzeiten der Signale auf dem Datenbus für eine Mehrzahl von verschiedenen Frequenzen steuert. Die Quellenschnittstelle und die Empfängerschnittstelle kön nen sowohl mit einer hohen Datenrate von 100 Kilobits pro Sekunde als auch mit einer niedrigen Datenrate von 12 bis 14,5 Kilobits pro Sekunde arbeiten.From US 42 80 221-A is a digital data communication known system that is a data source, a sources interface and a digital data bus for the over carrying coded information from the data source to one or more recipients, each with an Emp have catcher interface, contains. The sources Interface can be adjusted so that the An Rise and fall times of the signals on the data bus for controls a plurality of different frequencies. The Source interface and the receiver interface can with a high data rate of 100 kilobits per Second as well with a low data rate of 12 to 14.5 kilobits per second.
Aus US 42 98 959-A ist ein DITS-Empfänger bekannt, mit dem für einen Signalprozessor ein direkter Speicherzu griff (DMA) geschaffen werden kann. Der DITS-Empfänger speichert die Daten, die er über eine Mehrzahl von Ein gangskanälen asynchron empfängt, in der empfangenen Rei henfolge direkt in einem Schreib-Lese-Speicher (RAM) für DITS-Daten. Das erste Byte ID des Datenwort-Informations feldes, das die Datenquelle identifiziert, wird als Adressenzeiger verwendet, der die Stelle im RAM defi niert, an der die nachfolgenden Signalbits des Datenwor tes gespeichert werden. Ein gemeinsames Abtastnetzwerk tastet die über jeden der Eingangskanäle empfangenen Da ten so ab, daß sich Abtastwerte mit einer Dauer, die ge ringer als diejenige einer Bitzelle ist, ergeben. Das Ab tastnetzwerk schafft wenigstens einen Abtastwert, in des sen jeweiliger Signalgeschwindigkeitsperiode sowohl Hoch geschwindigkeits- als auch Niedergeschwindigkeitssignale enthalten sind. Die abgetasteten Daten werden einer Mul tiplexoperation unterzogen, dabei in einen seriellen Da tenstrom umgewandelt und entweder an ein Adressenregister für das erste Byte oder direkt an das Daten-RAM geleitet.From US 42 98 959-A a DITS receiver is known with direct memory for a signal processor handle (DMA) can be created. The DITS receiver stores the data it stores over a plurality of ones receiving channels asynchronously, in the received Rei order directly in a random access memory (RAM) for DITS data. The first byte ID of the data word information field that identifies the data source is called Address pointer used that defi the position in RAM on which the subsequent signal bits of the data word be saved. A common scanning network scans the Da received over each of the input channels so that samples with a duration of ge is less than that of a bit cell. The Ab tactile network creates at least one sample in which respective signal speed period both high speed as well as low speed signals are included. The sampled data is a Mul undergone tiplex operation, thereby in a serial Da tenstrom converted and either to an address register for the first byte or directly to the data RAM.
Aus US 46 46 324-A ist ein Sender eines digitalen Infor mationsübertragungssystems bekannt, mit dem serielle Wör ter von vorgegebener Länge mit ausgewählten Geschwindig keiten gesendet werden, um über eine Mehrzahl von paral lelen Kanälen ausgegeben zu werden. Der digitale Sender ist so beschaffen, daß er Testdaten für eine Flugparame ter-Simulation von einer Datenbank an den DITS-Empfänger der US 42 98 959-A liefern kann. Die Wörter, die für die serielle Übertragung über die parallelen Ausgangskanäle gewählt werden, werden nacheinander wiederholt in einen Multiplexer eingegeben, der die ausgewählten Bits aus diesen Wörtern mit festen und variabel einstellbaren Ge schwindigkeiten an eine Schieberegister- und Signalspei cherkombination für die Übertragung der Ausgabe beför dert. Die aus US 42 98 959-A und US 46 46 324-A bekannten Systeme sind für Rundfunkdaten geeignet, die aus 32-Bit- Wörtern bestehen und die in periodischen Abständen gesen det werden und im allgemeinen den Instrumentenstatus und diskrete Signale enthalten. From US 46 46 324-A is a transmitter of a digital information mation transmission system known with the serial word ter of a given length with selected speed sent to a plurality of parals lel channels to be output. The digital transmitter is designed to provide test data for a flight parameter ter simulation from a database to the DITS receiver the US 42 98 959-A can deliver. The words for the serial transmission over the parallel output channels are selected, are repeated in succession in one The multiplexer entered the selected bits these words with fixed and variably adjustable Ge speeds to a shift register and signal memory combination for transferring the output different. The known from US 42 98 959-A and US 46 46 324-A Systems are suitable for broadcast data consisting of 32-bit Words exist and are spoken periodically and generally the instrument status and contain discrete signals.
Das herkömmliche ARINC-429-Dateidaten-Übertragungsproto koll verwendet eine Abruf-ARINC-429-Schnittstellenlogik, d. h. eine über eine Unterbrechung aktivierte ARINC-429- Schnittstellenlogik, die für einen gemeinsamen Eingabe /Ausgabe-Prozessor (E/A-Prozessor) des Systems eine er hebliche zusätzliche Verarbeitungszeit erfordert. In der über eine Unterbrechung aktivierten Anordnung wird der E/A-Prozessor bei jedem Datenwort der Übertragung unter brochen. Bei jeder Unterbrechung wird ein erheblicher zu sätzlicher Verarbeitungsbedarf erzeugt, was für den E/A- Prozessor eine große Belastung darstellt. Für die Abruf- Schnittstellenlogik, in der ein kontinuierlicher "Quit tungsbetrieb" zwischen zwei Endgeräten die konstante Prü fung des Status eines Schnittstellen-Sende-Empfängers er fordert, ist sogar noch mehr zusätzlicher Verarbei tungsbedarf notwendig. Aufgrund der Abarbeitung der Da teiübertragungen werden wichtige Aufgaben des E/A-Prozes sors angehalten. Die Häufigkeit und die Dauer solcher Un terbrechungen sind insbesondere in einem Datenverwal tungseinheit-System (DMU-System) problematisch.The conventional ARINC-429 file data transfer prototype koll uses polling ARINC 429 interface logic, d. H. an interrupt activated ARINC-429- Interface logic for common input / System one output processor (I / O processor) considerable additional processing time required. In the the arrangement is activated via an interruption I / O processor with every data word of the transmission under broken. With each interruption, a significant one becomes generates additional processing requirements, which for the I / O Processor is a huge burden. For on-demand Interface logic in which a continuous "Quit operation "between two devices the constant test the status of an interface transceiver calls for even more additional processing necessary. Due to the processing of the Da Part transfers become important tasks of the I / O process sors stopped. The frequency and duration of such Un Breaks are particularly in a data manager unit system (DMU system) problematic.
Es ist daher eine Aufgabe der vorliegenden Erfindung, eine neue und verbesserte Steuereinrichtung für direkten Speicherzugriff (DMA) und ein Verfahren, mit dem eine ef fektive, effiziente und zuverlässige Datenübertragung möglich ist, zu schaffen.It is therefore an object of the present invention a new and improved control device for direct Memory Access (DMA) and a method by which an ef fective, efficient and reliable data transmission is possible to create.
Es ist eine weitere Aufgabe der vorliegenden Erfindung, eine DMA-Steuereinrichtung und ein DMA-Verfahren für ein digitales Informationsübertragungssystem zu schaffen, mit denen ein ARINC-429-Dateidaten-Übertragungsprotokoll im wesentlichen unabhängig von einem Eingabe-/Ausgabe-Pro zessor (E/A-Prozessor) implementiert werden kann. It is another object of the present invention a DMA controller and a DMA method for a to create digital information transmission system with which an ARINC-429 file data transfer protocol in essentially independent of an input / output pro processor (I / O processor) can be implemented.
Es ist eine weitere Aufgabe der vorliegenden Erfindung, ein System und ein Verfahren für eine ARINC-429-Empfän gersteuerung zu schaffen, mit denen die Nachteile ent sprechender Systeme und Verfahren des Standes der Technik beseitigt werden können.It is another object of the present invention a system and method for an ARINC-429 receiver to create control with which the disadvantages ent speaking systems and methods of the prior art can be eliminated.
Diese Aufgaben werden erfindungsgemäß durch eine DMA- Steuereinrichtung und ein Verfahren zur digitalen Daten übertragung in einem digitalen Informationsübertragungs system mit einem Eingabe-/Ausgabe-Prozessor gelöst. Zunächst wird vom E/A-Prozessor ein Startbefehlswort identifiziert. Aufgrund des identifizierten Startbefehl worts wird eine Steuereinrichtung für direkten Speicher zugriff (DMA) initialisiert und vom E/A-Prozessor akti viert. Nach der Übertragung sämtlicher Zwischendatenwör ter des Datensatzes wird von der DMA-Steuerung eine Un terbrechung erzeugt und in den E/A-Prozessor eingegeben. Aufgrund der empfangenen Unterbrechung während der Daten empfangsoperation führt der E/A-Prozessor eine abschlie ßende Fehlerprüfungs-Routine aus. Dadurch kann der E/A- Prozessor andere Aufgaben abarbeiten, während die DMA- Steuereinrichtung die einzelnen Datensätze überträgt, wo bei der E/A-Prozessor nach dem Empfang oder der Übertra gung eines jeden vollständigen Datensatzes unterbrochen wird.According to the invention, these tasks are performed by a DMA Control device and a method for digital data transmission in a digital information transmission system solved with an input / output processor. First, the I / O processor issues a start command word identified. Because of the identified start command words becomes a controller for direct storage Access (DMA) initialized and activated by the I / O processor fourth. After the transfer of all intermediate data words ter of the data record is a Un Break created and entered into the I / O processor. Due to the interruption received during the data receive operation, the I / O processor completes eating error checking routine. This allows the I / O Processor do other tasks while the DMA Control device transfers the individual records where at the I / O processor after receipt or transfer interrupted each complete data record becomes.
Weitere Aufgaben, Merkmale und Vorteile der Erfindung sind in den Unteransprüchen, die sich auf besondere Aus führungsformen der vorliegenden Erfindung beziehen, ange geben.Other objects, features and advantages of the invention are in the subclaims that relate to special aus relate to embodiments of the present invention give.
Die Erfindung wird im folgenden anhand einer bevorzugten Ausführungsform mit Bezug auf die Zeichnungen näher er läutert; es zeigen: The invention is based on a preferred Embodiment with reference to the drawings he closer purifies; show it:
Fig. 1 ein Blockschaltbild eines erfindungsgemäßen digi talen ARINC-429-Informationsübertragungssystems, das für die Dateiübertragung auf DMA-Basis ver wendet wird; Fig. 1 is a block diagram of a digital ARINC-429 information transmission system according to the invention, which is used for file transfer based on DMA ver;
Fig. 2 ein detailliertes Blockschaltbild der Anordnung einer Datenverwaltungseinheit (DMU) des erfin dungsgemaßen digitalen ARINC-429-Informations übertragungssystems von Fig. 1; FIG. 2 shows a detailed block diagram of the arrangement of a data management unit (DMU) of the digital ARINC-429 information transmission system according to the invention from FIG. 1;
Fig. 3 ein Flußdiagramm zur Erläuterung der logischen Schritte, die vom Eingabe-/Ausgabe-Prozessor des erfindungsgemäßen digitalen ARINC-429-Informa tionsübertragungssystems von Fig. 1 beim Empfang einer Datei ausgeführt werden; und Fig. 3 is a flowchart for explaining the logical steps which are carried out by the input / output processor of the digital ARINC-429 information transmission system according to the invention from Fig. 1 when a file is received; and
Fig. 4 ein Flußdiagramm zur Erläuterung der logischen Schritte, die vom Eingabe-/Ausgabe-Prozessor des erfindungsgemäßen digitalen ARINC-429-Informa tionsübertragungssystems von Fig. 1 beim Senden einer Datei ausgeführt werden. Fig. 4 is a flow chart for explaining the logical steps which are carried out by the input / output processor of the digital ARINC-429 information transmission system according to the invention from Fig. 1 when sending a file.
In Fig. 1 ist ein Blockschaltbild eines allgemein mit dem Bezugszeichen 10 bezeichneten digitalen ARINC-429-Infor mationsübertragungssystems gezeigt, das einen erfindungs gemäßen Aufbau besitzt. Das ARINC-429-System 10 umfaßt als primäre Bestandteile einen ARINC-429-Sende-Empfänger 12, ein Datenverwaltungseinheit-Untersystem 14 (DMU-Un tersystem), das mit dem Sende-Empfänger 12 funktional ge koppelt ist, einen Speicher 16 wie etwa einen statischen Schreib-Lese-Speicher (SRAM) zum Speichern von Daten- und Statusinformationen und einen Datenbus 18 für die bidi rektionale Kommunikation zwischen dem Sende-Empfänger 12, dem DMU-Untersystem 14 und dem SRAM 16. Das DMU-Untersy stem 14 enthält einen Eingabe-/Ausgabe-Prozessor (E/A- Prozessor) 20, eine Unterbrechungs-Steuereinrichtung 22, eine Steuereinrichtung 24 für direkten Speicherzugriff (DMA-Steuereinrichtung), eine DMA-Steuerlogik 26, eine Fehlerhandhabungslogik 28 und den damit verbundenen ARINC-429-Sende-Empfänger 12. Die primäre Funktion des DMU-Untersystems 14 umfaßt die Sammlung und die Überwa chung verschiedener Daten, die im Flugzeug erzeugt wer den. Die Architektur des DMU-Untersystems 14 basiert auf der Verwendung einer Mehrzahl von Verarbeitungselementen, die auf einem einzigen Systembus resident sind und mit dem E/A-Prozessor 20 kommunizieren. Der E/A-Prozessor 20 verwendet serielle Datenverbindungsleitungen gemäß ARINC- 429-Standard an andere Flugzeugsysteme wie etwa das ge zeigte Eingabe-/Ausgabe-Element 30.In Fig. 1, a block diagram of a generally designated by the reference numeral 10 ARINC-429 information transmission system is shown, which has a structure according to the Invention. The ARINC-429 system 10 comprises, as primary components, an ARINC-429 transceiver 12 , a data management subsystem 14 (DMU subsystem) which is functionally coupled to the transceiver 12 , a memory 16 such as a static random access memory (SRAM) for storing data and status information and a data bus 18 for bidirectional communication between the transceiver 12 , the DMU subsystem 14 and the SRAM 16 . The DMU subsystem 14 includes an input / output processor (I / O processor) 20 , an interrupt controller 22 , a direct memory access controller 24 (DMA controller), a DMA control logic 26 , and an error handling logic 28 and the associated ARINC-429 transceiver 12 . The primary function of the DMU subsystem 14 includes the collection and monitoring of various data generated on the aircraft. The architecture of the DMU subsystem 14 is based on the use of a plurality of processing elements that are resident on a single system bus and communicate with the I / O processor 20 . The I / O processor 20 uses ARINC 429 standard serial data links to other aircraft systems such as the input / output element 30 shown .
Das vom ARINC-429-Standard definierte Format für die di gitale Dateidatenübertragung wird in Datensätze unter teilt. Jeder Datensatz enthält 1 bis 126 Zwischendaten wörter, die einem den Daten vorhergehenden Anfangswort folgen. Jeder Datensatz der Datei wird folgendermaßen un ter Verwendung des ARINC-429-Dateidaten-Übertragungspro tokolls aufeinanderfolgend übertragen: Ein Sender, der die an einen Empfänger zu sendenden Daten besitzt, sendet auf einem Bus, der ihn mit diesem Empfänger verbindet, eine Anforderung zum Senden (RTS) des Anfangswortes. Der Empfänger antwortet auf einem für den entgegengesetzten Datenfluß vorgesehenen, getrennten Bus mit einer Sendebe reit-Rückmeldung (CTS). Dann sendet der Sender das den Daten vorhergehende Anfangswort. Das den Daten vorherge hende Anfangswort vermittelt dem Empfänger die Anzahl der bei der folgenden Datensatzübertragung gesendeten Zwi schendatenwörter. Nach den Anfangsbefehl- und Anfangsant wortwörtern zwischen dem Sender und dem Empfänger wird die Datensatzübertragung durch die Übertragung der Zwi schendatenwörter fortgesetzt, gefolgt von einem Fehler prüfungs-Abschlußwort. Der Empfänger verarbeitet das Feh lerprüfungs-Abschlußwort und beendet in dem Fall, in dem keine Fehler auftreten, den Übertragungsvorgang, indem er an den Sender ein Wort bezüglich des ordnungsgemäßen Da tenempfangs (ACK) sendet. Wenn andererseits Fehler aufge treten sind, sendet der Empfänger an den Sender ein Wort bezüglich des nicht ordnungsgemäßen Datenempfangs (NAK). Die ACK- oder NAK-Bestätigung vom Empfänger wird inner halb eines vorgegebenen Zeitintervalls von etwa 50 Milli sekunden nach dem Fehlerprüfungs-Abschlußwort erwartet.The format defined by the ARINC-429 standard for the di gital file data transfer is under records Splits. Each record contains 1 to 126 intermediate dates words, the initial word preceding the data consequences. Each record in the file is as follows Using the ARINC-429 file data transfer pro tokolls transmitted consecutively: a station that which has data to be sent to a recipient on a bus that connects it to this receiver, a request to send (RTS) the initial word. The Recipient replies to one for the opposite Data flow provided, separate bus with a Sendebe riding feedback (CTS). Then the transmitter sends that Data previous start word. That preceded the data The beginning word conveys the number of intermediate sent in the following data record transfer data words. After the start command and start ant words between the sender and the receiver the data record transfer by the transfer of the Zwi human data words continued, followed by an error Exam final. The recipient processes the mistake Exam final and ends in the case where No errors occur during the transfer process a word to the broadcaster regarding the proper Da transmission (ACK). On the other hand, if mistakes are made the receiver sends a word to the sender regarding incorrect data reception (NAK). The ACK or NAK confirmation from the recipient becomes internal half a predetermined time interval of about 50 milli seconds after the error check completion word expected.
Erfindungsgemäß werden bei Verwendung des ARINC-429-Da teidaten-Übertragungsprotokolls die Verarbeitungsanforde rungen für den E/A-Prozessor 20 für große Datendateien, die zwischen dem DMU-Untersystem und anderen Flugzeugsy stemen wie etwa der auf einer Plattenspeichereinrichtung basierenden Speichereinheit 30 übertragen werden, mini miert. Das herkömmliche Abrufprotokoll oder mittels Un terbrechung aktivierte Protokoll zwischen dem E/A-Prozes sor 20 und dem ARINC-429-Sende-Empfänger 12 wird während der Übertragung der Anfangsbefehlswörter und Anfangsant wortwörter vor der Übertragung der Zwischendatenwörter eines Datensatzes verwendet. Nachdem ein vordefiniertes Befehlswort wie etwa das den Daten vorhergehende Anfangs wort gesendet worden ist, gibt der E/A-Prozessor 20 die DMA-Steuereinrichtung 24 frei, damit sie die Übertragung des Datensatzes betreibt. Jedes der Datenwörter wird se quentiell übertragen, wobei die DMA-Steuereinrichtung 20 die Datensatzübertragung unabhängig vom E/A-Prozessor 20 ausführt. Nach Abschluß der Datensatzübertragung liefert die DMA-Steuereinrichtung 24 an den E/A-Prozessor 20 über die Unterbrechungs-Steuereinrichtung 22 eine Unterbre chung. Dann führt der E/A-Prozessor 20 die abschließenden Fehlerprüfungsschritte, die die Übertragung vervollstän digen, aus. Sowohl das Senden als auch der Empfang der Daten wird von der DMA-Steuereinrichtung 24 ausgeführt.According to the invention, when using the ARINC-429 data transfer protocol, the processing requirements for the I / O processor 20 for large data files that are transferred between the DMU subsystem and other aircraft systems such as the storage unit 30 based on a disk storage device, minimized. The conventional polling protocol or interrupt activated protocol between the I / O processor 20 and the ARINC 429 transceiver 12 is used during the transmission of the initial command words and initial response words prior to the transmission of the intermediate data words of a record. After a predefined command word, such as the initial word preceding the data, has been sent, the I / O processor 20 enables the DMA controller 24 to operate to transfer the data set. Each of the data words is transferred quentiell se, wherein the DMA controller 20 performs the data transmission irrespective of the E / O processor 20th Upon completion of the data set transfer, the DMA controller 24 provides an interrupt to the I / O processor 20 via the interrupt controller 22 . Then the I / O processor 20 performs the final error checking steps that complete the transfer. Both the sending and the receiving of the data is carried out by the DMA controller 24 .
Für den Sende-Empfänger 12 kann ein herkömmlicher ARINC- 429-Sende-Empfänger auf einem integrierten Schal tungschip, der einen Sender und wenigstens einen Empfän ger enthält, verwendet werden. Der ARINC-429-Sende-Emp fänger 12 im DMU-Untersystem 14 stellt für den E/A-Pro zessor 20 einen einzigen 8-Bit-Schreib-/Lesekanal bereit. Da ein vollständiges ARINC-429-Wort eine Länge von 32 Bits besitzt, aktiviert die DMA-Steuerlogik 26 für jede Übertragung eines 32-Bit-ARINC-429-Datenwortes vier 8-Bit-DMA-Vorgänge. Die erforderliche DMA-Steuerlogik 26 kann hinsichtlich ihrer Komplexität auf einen Sende-Emp fänger mit einem 16-Bit-Kanal reduziert oder durch die Verwendung eines Sende-Empfängers mit einem 32-Bit-Kanal beseitigt werden. In die DMA-Steuerlogik 26 und in die Unterbrechungs-Steuereinrichtung 22 wird über die mit RCVR HIT bezeichnete Leitung ein Empfänger-Logiksignal eingegeben, das einem logischen "ODER" der Datenübertra gungsblock-Bereitschaftsbits sämtlicher Empfänger des Sende-Empfängers 12 entspricht. Ein Sender-Logiksignal, das falsch zurückkehrt, wenn das erste Byte des nächsten Datenübertragungsblocks in ein FIFO-Register des Sende- Empfängers 12 geladen wird, wird über die XMIT-MT be zeichnete Datenleitung in die DMA-Steuerlogik 26 und in die Unterbrechungs-Steuereinrichtung 22 eingegeben. Über eine mit DMA REQ(S) bezeichnete Leitung werden Datenüber tragungsanforderungen von der DMA-Steuerlogik 26 in die DMA-Steuereinrichtung 24 eingegeben. For the transceiver 12 , a conventional ARINC-429 transceiver on an integrated circuit chip that includes a transmitter and at least one receiver can be used. The ARINC-429 transceiver 12 in the DMU subsystem 14 provides the I / O processor 20 with a single 8-bit read / write channel. Because a complete ARINC-429 word is 32 bits in length, the DMA control logic 26 enables four 8-bit DMA operations for each transfer of a 32-bit ARINC-429 data word. The required DMA control logic 26 can be reduced in complexity to a transceiver with a 16-bit channel or eliminated by using a transceiver with a 32-bit channel. In the DMA control logic 26 and in the interrupt control device 22 , a receiver logic signal is input via the line labeled RCVR HIT, which corresponds to a logical "OR" of the data transmission block ready bits of all receivers of the transceiver 12 . A transmitter logic signal that returns incorrectly when the first byte of the next frame is loaded into a FIFO register of transceiver 12 is sent to the DMA control logic 26 and the interrupt controller via the XMIT-MT designated data line 22 entered. Data transfer requests from the DMA control logic 26 are input to the DMA controller 24 via a line labeled DMA REQ (S).
Von der Fehlerhandhabungslogik 28 wird in Verbindung mit der DMA-Steuerlogik 26 eine Fehlerprüfung ausgeführt. Von der Fehlerhandhabungslogik 28 wird eine Fehlerbedingung dann identifiziert, wenn die Anzahl der übertragenen Zwi schendatenwörter geringer als eine von dem den Daten vor hergehenden Anfangswort fehlerhaft angegebene Anzahl ist. Dann erzeugt die Fehlerhandhabungslogik 28 eine Unterbre chung, um einen nicht programmierten Stopp der DMA- Steuereinrichtung 24 zu vermeiden, während der E/A-Pro zessor 20 andere Aufgaben ausführt. Die DMA-Steuerlogik 26 stellt über die gestrichelt dargestellte und mit SSM VALID bezeichnete Leitung ein Steuersignal für die Feh lerhandhabungslogik 28 bereit, mit dem dieser die SSM- Bits auf dem Datenbus 18 abtasten kann. Die Fehlerhandha bungslogik 28 überwacht die SSM-Datenbits 30 und 31 der Vorzeichen-/Status-Matrix, die so gesetzt sind, das ein Datenwort eindeutig identifiziert werden kann: wenn sie etwa auf (01) gesetzt sind, werden sie aus den Befehls- /Antwort-Anfangswörtern identifiziert, während ein Daten wort aus dem Fehlerprüfungs-Abschlußwort identifiziert wird, wenn sie auf (10) gesetzt sind. Wenn im weiteren Verlauf der DMA-Datenübertragung SSM-Datenbits keinen vordefinierten Wert wie etwa einen niedrigen Logikpegel (00) besitzen, wird von der Fehlerhandhabungslogik 28 eine Fehlerunterbrechung erzeugt. Die erzeugte Fehlerun terbrechung wird über eine mit ERROR INT bezeichnete Lei tung über die Unterbrechungs-Steuereinrichtung 22 in den E/A-Prozessor 20 eingegeben. Vom E/A-Prozessor 20 wird über eine mit ERROR NAK bezeichnete Leitung in die Feh lerhandhabungslogik 28 ein Fehlerbestätigungssignal ein gegeben. Andernfalls kann der E/A-Prozessor 20 sämtliche herkömmlichen Fehlerprüfungen für den empfangenen Daten satz ausführen. Error handling logic 28 performs an error check in conjunction with DMA control logic 26 . An error condition is identified by the error handling logic 28 when the number of intermediate data words transmitted is less than a number incorrectly specified from the initial word preceding the data. Error handling logic 28 then generates an interrupt to avoid an unprogrammed stop of DMA controller 24 while I / O processor 20 is performing other tasks. The DMA control logic 26 provides a control signal for the error handling logic 28 via the line shown in dashed lines and identified by SSM VALID, with which it can scan the SSM bits on the data bus 18 . The error handling logic 28 monitors the SSM data bits 30 and 31 of the sign / status matrix, which are set in such a way that a data word can be uniquely identified: if they are set to (01), for example, they are extracted from the command / Answer initial words are identified while a data word is identified from the error check completion word when set to (10). If SSM data bits do not have a predefined value, such as a low logic level (00), in the further course of the DMA data transmission, the error handling logic 28 generates an error interruption. The error interruption generated is input to the I / O processor 20 via a line designated ERROR INT via the interrupt control device 22 . From the I / O processor 20 , an error confirmation signal is entered into the error handling logic 28 via a line designated ERROR NAK. Otherwise, I / O processor 20 can perform all of the conventional error checks for the received data set.
In Fig. 2 ist eine Anordnung dargestellt, in der zwei Plattenspeichereinheiten 30 mit dem DMU-Untersystem 14 über eine Schnittstelle verbunden sind. Zwei Sätze von differentiellen ARINC-429-Signalleitungen, die mit MDDU IN, PDL IN und MDDU OUT, PDL OUT bezeichnet sind, schaf fen eine bidirektionale Datenübertragung über den ARINC- 429-Sende-Empfänger 12 des DMU-Untersystems 14. Der sta tische Schreib-Lese-Speicher SRAM 16 enthält einen zuge ordneten Sende-XMIT-Datenpuffer und einen Empfänger-RCVR- Datenpuffer zum Puffern sequentieller Datenwörter in emp fangenen oder gesendeten Datensätzen. Von der DMA-Steuer einrichtung 24 werden über eine mit 429-XCVR-RD/WR/CS-SI GNALE bezeichnete Leitung ARINC-429-Lese-, ARINC-429- Schreib- und ARINC-429-Steuersignale über eine Standard- Bussteuerlogik 31 in den Sende-Empfänger 12 eingegeben. FIG. 2 shows an arrangement in which two disk storage units 30 are connected to the DMU subsystem 14 via an interface. Two sets of differential ARINC-429 signal lines, designated MDDU IN, PDL IN and MDDU OUT, PDL OUT, provide bidirectional data transmission via the ARINC-429 transceiver 12 of the DMU subsystem 14 . The static random access memory SRAM 16 contains an assigned transmit XMIT data buffer and a receiver RCVR data buffer for buffering sequential data words in received or transmitted data records. From the DMA control device 24 , ARINC-429 read, ARINC-429 write and ARINC-429 control signals are transmitted via a standard bus control logic 31 via a line designated 429-XCVR-RD / WR / CS-SI GNALE entered in the transceiver 12 .
Wie in Fig. 2 gezeigt, können für die DMA-Steuereinrich tung 24 verschiedene kommerziell erhältliche Mikroprozes soren mit Standardleistungen wie etwa ein hochintegrier ter 80C186-16-Bit-Mikroprozessor, der von der Intel Cor poration von Santa Clara, Kalifornien hergestellt und verkauft wird, verwendet werden. Die integrierten Merk male des 80C186-Mikroprozessors enthalten zwei unabhän gige Hochgeschwindigkeitskanäle 0 und 1 für direkten Speicherzugriff (DMA), eine programmierbare Unterbre chungs-Steuereinrichtung, drei programmierbare 16-Bit- Zeitgeber, eine Busschnittstelleneinheit, einen program mierbaren Speicher und eine periphere Chipauswahllogik mit programmierbaren Steuerregistern. Während ein einzel ner DMA-Kanal entweder für den Empfang oder für das Sen den von Datenfunktionen der DMA-Steuereinrichtung 24 pro grammiert werden kann, wird einer der DMA-Kanäle 0 oder 1 der 80C186-DMA-Steuereinrichtung 24 vorteilhaft für den Empfang programmiert, während der jeweils andere Kanal für die Aussendung von Daten programmiert wird. Die DMA- Kanäle 0 oder 1 ermöglichen einen vollständigen Duplexbe trieb. Jeder der DMA-Kanäle 0 und 1 enthält eine Mehrzahl von Registern, die mit QUELLENADRESSE, BESTIMMUNGS ADRESSE, ÜBERTRAGUNGSZÄHLSTAND und STEUERREGISTER be zeichnet werden und mit den Bezugszeichen 36 bzw. 38 ver sehen sind.As shown in FIG. 2, the DMA controller can support 24 various commercially available microprocessors with standard features, such as a highly integrated 80C186 16-bit microprocessor manufactured and sold by the Intel Corporation of Santa Clara, California , be used. The integrated features of the 80C186 microprocessor include two independent high-speed channels 0 and 1 for direct memory access (DMA), a programmable interrupt control device, three programmable 16-bit timers, a bus interface unit, a programmable memory and peripheral chip selection logic programmable control registers. While a single DMA channel can be programmed either for reception or for the transmission of data functions of the DMA control device 24 , one of the DMA channels 0 or 1 of the 80C186 DMA control device 24 is advantageously programmed for reception, while the other channel is being programmed to send data. DMA channels 0 or 1 enable full duplex operation. Each of the DMA channels 0 and 1 contains a plurality of registers, which are denoted with SOURCE ADDRESS, DESTINATION ADDRESS, TRANSMISSION COUNT and CONTROL REGISTER and are provided with the reference symbols 36 and 38, respectively.
Eine Fehlerschutzlogik EPLD 39 enthält eine Steuerwort- Erkennungslogik 40, die feststellt, daß die Anzahl der empfangenen Datenwörter geringer als die im ÜBERTRAGUNGS ZÄHLSTAND-Register des DMA-Steuerregisters 36 program mierte Anzahl ist. Die Steuerwort-Erkennungslogik 40 überwacht die SSM-Datenbits 30 und 31 der Vorzeichen /Status-Matrix, die das Datenwort in den Befehls /Antwort-Anfangswörtern und dem Fehlerprüfungs-Abschluß wort eindeutig identifizieren. Wenn im weiteren Verlauf der DMA-Datensatzübertragung die SSM-Datenbits nicht den vordefinierten niedrigen Logikwert (00) besitzen, wird von der Steuerwort-Erkennungslogik 40 eine Fehlerunter brechung erzeugt. Die erzeugte Fehlerunterbrechung wird über die Unterbrechungs-Steuereinrichtung 22 über eine mit RECORD ERROR bezeichnete Leitung in den E/A-Prozessor 20 eingegeben.Error protection logic EPLD 39 includes control word detection logic 40 which determines that the number of data words received is less than the number programmed in the TRANSMISSION COUNT register of the DMA control register 36 . The control word recognition logic 40 monitors the SSM data bits 30 and 31 of the sign / status matrix, which uniquely identify the data word in the command / response initial words and the error check completion word. If the SSM data bits do not have the predefined low logic value (00) in the further course of the DMA data record transmission, an error interruption is generated by the control word recognition logic 40 . The generated interrupt is entered into the I / O processor 20 through the interrupt controller 22 over a line labeled RECORD ERROR.
Ein ARINC-429-Auslesezähler 42 und ein ARINC-429-Einlese zähler 44 führen die Funktion der in Fig. 1 gezeigten DMA-Steuerlogik 26 aus, um für jede vom ARINC-429-Sende- Empfänger 12 ausgeführte 32-Bit-ARINC-429-Datenwortüber tragung vier 8-Bit-DMA-Transaktionen zu ermöglichen. Der ARINC-429-Auslesezähler 42 kann für die Steuerwort-Erken nungslogik 40 ein Signal bereitstellen, mit dem die SSM- Bits 30 und 31 des letzten Bytes einer jeden Datenwort übertragung abgetastet werden. An ARINC 429 readout counter 42 and an ARINC 429 versing counter 44 perform the function shown in FIG. 1, DMA control logic 26 out to 12 executed for each of the ARINC 429 transceivers 32-bit ARINC 429 data word transfer to enable four 8-bit DMA transactions. The ARINC 429 readout counter 42 can provide a signal for the control word recognition logic 40 with which the SSM bits 30 and 31 of the last byte of each data word transmission are sampled.
Über eine mit ANY RCVR HIT bezeichnete Leitung wird in die EPLD 39 ein Empfänger-Logiksignal eingegeben, das ei nem logischen "ODER" der Datenübertragungsblock-Bereit schaftsbits sämtlicher Empfänger im Sende-Empfänger 12 entspricht. Die einzelnen Datenübertragungsblock-Bereit schaftsbits von jedem der zwei Empfänger des Sende-Empfän gers 12 werden über ein Paar von Leitungen, die mit MDDU HIT und PDL HIT bezeichnet werden, in die Unterbrechungs- Steuereinrichtung 22 eingegeben. Ein Sender-Ausgangssi gnal, das seinen Logikpegel ändert, wenn das erste Byte des nächsten Datenübertragungsblocks in ein FIFO-Register des Sende-Empfängers 12 geladen wird, wird über eine mit XMIT EMPTY bezeichnete Leitung in die EPLD 39 und in die Unterbrechungs-Steuereinrichtung 22 eingegeben. Über eine mit DMA-RQ0 bzw. DMA-RQ1 bezeichnete Leitung werden vom Byte-Auslesezähler 42 bzw. vom Byte-Einlesezähler 44 Da tenübertragungsanforderungen in die DMA-Steuereinrichtung 24 eingegeben.Via a line labeled ANY RCVR HIT, a receiver logic signal is input into the EPLD 39 , which corresponds to a logical "OR" of the frame ready bits of all receivers in the transceiver 12 . The individual frame providing schaftsbits of each of the two receivers of the broadcast receptions and seminars gers 12 are inputted through a pair of lines which are designated MDDU HIT and PDL HIT, in the interrupt control means 22nd A transmitter output signal, which changes its logic level when the first byte of the next frame is loaded into a FIFO register of the transceiver 12 , is sent to the EPLD 39 and the interrupt controller 22 via a line labeled XMIT EMPTY entered. Via a line designated DMA-RQ 0 or DMA-RQ 1 , data transfer requests are entered into the DMA control device 24 by the byte readout counter 42 and byte read-in counter 44, respectively.
Wenn der ARINC-429-Sende-Empfänger 12 des DMU-Untersy stems 14 zum Senden einer Datei verwendet werden soll, wird der DMA-Kanal 1 der DMA-Steuereinrichtung 14 vom E/A-Prozessor 20 initialisiert, um vom Speicher 16 an den Sende-Empfänger 12 Daten zu verschieben. Die Initialisie rung des Kanals 1 der DMA-Steuereinrichtung 24 umfaßt das Setzen des DMA-Registers 38. Der DMA-Quellenzeiger wird auf die Adresse des ersten Datensatzes im Speicher 16 ge setzt, während der Bestimmungszeiger auf den ARINC-429- Sende-Empfänger 12 gesetzt wird. In einem geeigneten DMA- Steuereinrichtungsregister (ÜBERTRAGUNGSZÄHLSTAND) wird die Größe des Datensatzes gesetzt und am Ende des Daten satzes ein Prüfsummenwort angeordnet, das nach der Über tragung der Datensatzwörter übertragen wird. Dann beginnt die Übertragung des Datendatei-Datensatzes mit der Sper rung der DMA-Steuereinrichtung 24 und der Freigabe der Sender- und Empfängerunterbrechungen des E/A-Prozessors 20. Dann werden die Befehls-/Antwort-Anfangswörter wie etwa RTS und CTS und die den Daten vorhergehenden Wörter ausgesendet. Anschließend wird die Unterbrechung des E/A- Prozessors 20 vom Sender 12 gesperrt und eine Unterbre chung von der DMA-Steuereinrichtung 24 aktiviert. An schließend wird der DMA-Datenübertragungsprozeß akti viert, damit er synchron zum Sender des Sende-Empfängers 12 mit der DMA-Steuereinrichtung 24 ausgeführt werden kann. Wenn der Sender-XMIT-Puffer des Sende-Empfängers 12 leer ist, wird von der DMA-Steuereinrichtung 24 das näch ste 32-Bit-Wort an den Sender XMIT-Puffer übertragen, um ausgegeben zu werden. Im Verlauf dieser DMA-Datensatz übertragung ist der E/A-Prozessor 20 frei für die Ausfüh rung anderer Aufgaben. Wenn die DMA-Datensatzübertragung abgeschlossen ist, unterbricht die DMA-Steuereinrichtung 24 den E/A-Prozessor 20, der anschließend die richtige ACK/NAK-Antwort vom Empfänger innerhalb von etwa 50 Mil lisekunden verifiziert. Dieser Prozeß wird solange wie derholt, bis die Datendateiübertragung abgeschlossen ist. Wenn die ARINC-429-Empfängerunterbrechung während der ge samten Übertragung erhalten bleibt, kann der E/A-Prozes sor 20 jegliche Fehlermeldung vom Empfänger wie etwa die abschließende ACK/NAK-Meldung nach jedem Datensatz auffangen.If the ARINC-429 transceiver 12 of the DMU Untersy stems 14 is to be used to send a file, the DMA channel 1, the DMA controller 14 from the I / O processor 20 is initialized to the the memory 16 to Transceiver 12 to move data. The initialization of channel 1 of the DMA control device 24 comprises the setting of the DMA register 38 . The DMA source pointer is set to the address of the first record in memory 16 , while the destination pointer is set to the ARINC-429 transceiver 12 . The size of the data record is set in a suitable DMA control device register (TRANSMISSION COUNT) and a checksum word is arranged at the end of the data record and is transmitted after the transfer of the data record words. Then the transmission of the data file record begins with the blocking of the DMA controller 24 and the release of the transmitter and receiver interruptions of the I / O processor 20 . Then the command / response initial words such as RTS and CTS and the words preceding the data are sent out. Then the interruption of the I / O processor 20 is blocked by the transmitter 12 and an interruption is activated by the DMA control device 24 . The DMA data transfer process is then activated so that it can be carried out in synchronism with the transmitter of the transceiver 12 with the DMA controller 24 . When the transmitter XMIT buffer of the transceiver 12 is empty, the next 32-bit word is transmitted from the DMA controller 24 to the transmitter XMIT buffer to be output. In the course of this DMA data record transfer, the I / O processor 20 is free to carry out other tasks. When the DMA record transfer is complete, the DMA controller 24 interrupts the I / O processor 20 , which then verifies the correct ACK / NAK response from the receiver within about 50 milliseconds. This process is repeated until the data file transfer is complete. If the ARINC-429 receiver interrupt persists throughout transmission, the I / O processor 20 can intercept any error messages from the receiver, such as the final ACK / NAK message after each record.
Wenn der ARINC-429-Sende-Empfänger 12 des DMU-Untersy stems 14 für den Empfang einer Datei verwendet wird, wird der DMA-Kanal 0 der DMA-Steuereinrichtung 24 vom E/A-Pro zessor initialisiert, um Daten vom Sende-Empfänger 12 zum Speicher 16 zu bewegen. Hierin ist das Setzen des Regi sters 36 einschließlich des Setzens des DMA-Quellenzei gers auf den Sende-Empfänger 12 und des Setzens des Be stimmungszeigers auf den Speicher 16 enthalten. Die Da tensatzgröße wird in einem geeigneten DMA-Steuereinrich tungsregister gesetzt, nachdem diese Information in dem den Daten vorhergehenden Anfangswort empfangen worden ist. Der Empfang des Dateidatensatzes beginnt mit dem RTS-Wort vom Sender des Sende-Empfängers 12. Zunächst wird die DMA-Steuereinrichtung 24 gesperrt, während Sen der- und Empfängerunterbrechungen aktiviert werden. Unter Verwendung dieser Unterbrechungsschnittstelle mit dem Sende-Empfänger 12 werden die anfänglichen Befehls /Antwort-Transaktionen wie etwa RTS/CTS-Anfangswörter und den Daten vorhergehende Anfangswörter gehandhabt. An schließend wird die Unterbrechung des E/A-Prozessors 20 vom Empfänger des Sende-Empfängers 12 gesperrt und eine Unterbrechung von der DMA-Steuereinrichtung 24 aktiviert. Dann wird der DMA-Datenübertragungsprozeß freigegeben, um von der mit dem Empfänger des Sende-Empfängers 12 syn chronisierten DMA-Steuereinrichtung 24 fortgesetzt zu werden. Wenn beispielsweise der Empfänger-RCVR-Puffer des Sende-Empfängers 12 voll ist, wird das 32-Bit-Wort mit tels eines direkten Speicherzugriffs von der DMA-Steuer einrichtung 24 in den SRAM-Speicher 16 übertragen.If the ARINC transceiver 429 12 of the DMU Untersy stems 14 is used for receiving a file, the DMA channel 0 of the DMA controller 24 initializes the I / O-Pro cessor to data from the transceiver 12 to move to memory 16 . This includes setting the register 36 including setting the DMA source pointer to the transceiver 12 and setting the determination pointer to the memory 16 . The data set size is set in a suitable DMA controller register after this information has been received in the initial word preceding the data. The reception of the file data record begins with the RTS word from the transmitter of the transceiver 12 . First, the DMA controller 24 is locked while transmitter and receiver interrupts are activated. Using this interrupt interface with transceiver 12 , the initial command / response transactions, such as RTS / CTS initial words and initial data preceding the data, are handled. At closing, the interruption of the I / O processor 20 is blocked by the receiver of the transceiver 12 and an interruption is activated by the DMA controller 24 . Then the DMA data transfer process is enabled to continue by the DMA controller 24 synchronized with the transceiver 12 receiver. For example, if the receiver RCVR buffer of the transceiver 12 is full, the 32-bit word is transferred to the SRAM memory 16 by means of a direct memory access from the DMA controller 24 .
Während der Empfangsfunktion werden die SSM-Bits von der Fehlerschutzlogik 39 abgetastet, um festzustellen, ob un ter Verwendung des DMA ein Nicht-Datenwort empfangen wor den ist. Wenn die ursprünglich von der Dateiquelle be reitgestellte und im DMA-Empfangswortzähler 42 program mierte Wortanzahl nicht mit der tatsächlichen Anzahl der empfangenen Wörter übereinstimmt oder wenn ein unerwarte tes Datensatzendwort (Nicht-Datenwort) empfangen wird, wird ein Fehler festgestellt. Es wird darauf hingewiesen, daß diese Fehlerfunktion nur dann anwendbar ist, wenn die DMA-Steuereinrichtung 24 eine Datei empfängt. Die Feh lererfassung beim Senden einer Datei wird durch die Über wachung des ARINC-429-Empfängers überwacht. Falls das Empfangsgerät in den gesendeten Daten einen Fehler fest stellt, wird für diesen Datensatz ein Fehler NAK zurück geschickt.During the receive function, the SSM bits are sampled by the error protection logic 39 to determine whether a non-data word has been received using the DMA. When the originally be from file source riding asked and in the receive DMA word counter 42 program-optimized word count does not coincide with the actual number of words received or when a unerwarte tes Datensatzendwort is (non-data word) is received, an error is detected. It should be noted that this error function is only applicable when the DMA controller 24 receives a file. The error detection when sending a file is monitored by the ARINC-429 receiver. If the receiving device detects an error in the transmitted data, an error NAK is sent back for this data record.
Im weiteren Verlauf der DMA-Datensatzübertragung ist der E/A-Prozessor 20 frei, um andere Aufgaben auszuführen. Wenn die DMA-Datensatzübertragung abgeschlossen ist, un terbricht die DMA-Steuereinrichtung 24 den E/A-Prozessor 20. Dann speichert der E/A-Prozessor 20 das Unterbre chungsprotokoll bezüglich des Empfängers des Sende-Emp fängers 12 um und führt die abschließende Fehlerprüfungs- Routine aus. Anschließend sendet oder empfängt der E/A- Prozessor 20 die richtige ACK/NAK-Antwort innerhalb von etwa 50 Millisekunden. Dieser Prozeß wird für jeden Da tensatz wiederholt, bis die Dateiübertragung abgeschlos sen ist.As the DMA record transfer continues, the I / O processor 20 is free to perform other tasks. When the DMA record transfer is complete, the DMA controller 24 interrupts the I / O processor 20 . Then the I / O processor 20 rewrites the interrupt log relating to the receiver of the transceiver 12 and executes the final error checking routine. I / O processor 20 then sends or receives the correct ACK / NAK response within about 50 milliseconds. This process is repeated for each data set until the file transfer is complete.
In Fig. 3 ist ein Flußdiagramm gezeigt, das der Erläute rung der vom E/A-Prozessor 20 für eine Dateiempfangsfunk tion ausgeführten logischen Schritte dient. Die aufeinan derfolgenden Schritte beginnen wie gezeigt bei einem Block 300 mit einem vom E/A-Prozessor 20 empfangenen Startbefehlswort, das im Block 302 identifiziert wird. Dann wird die DMA-Steuereinrichtung 24 im Block 304 vom E/A-Prozessor 20 aufgrund eines identifizierten Startbe fehlswortes im Block 302 initialisiert und aktiviert. Wenn dann der E/A-Prozessor 20 wie im Block 306 gezeigt eine Fehlerunterbrechung empfängt, wird von diesem ein Fehler-NAK gesendet, wie durch den Block 308 angezeigt ist. Wenn andererseits im Block 306 der E/A-Prozessors 20 keine Fehlerunterbrechung empfängt, wird von der DMA- Steuereinrichtung 24 in den E/A-Prozessor 20 eine voll ständige Datensatzunterbrechung eingegeben, gefolgt von der Übertragung sämtlicher Zwischendaten des vollständi gen Datensatzes, wie durch den Block 310 gezeigt ist. Dann führt der E/A-Prozessor 20 aufgrund der im Block 310 empfangenen vollständigen Datensatzunterbrechung eine ab schließende Fehlerprüfungs-Routine aus, wie durch einen Block 312 angezeigt ist. Schließlich wird im Block 314 eine ACK- oder NAK-Meldung entsprechend der besonderen Operationen für die Datendateiübertragung an den E/A-Pro zessor 20 gesendet.In Fig. 3, a flowchart is shown, which serves to explain the logic steps performed by the I / O processor 20 for a file reception function. The subsequent steps begin, as shown, at block 300 with a start command word received from I / O processor 20 and identified at block 302 . Then, in block 304 , the DMA controller 24 is initialized and activated by the I / O processor 20 based on an identified start command word in block 302 . Then, when the I / O processor 20 receives an error interrupt as shown in block 306 , an error NAK is sent by it, as indicated by block 308 . On the other hand, if at block 306 the I / O processor 20 does not receive an error interrupt, the DMA controller 24 inputs a complete record interrupt to the I / O processor 20 , followed by the transfer of all intermediate data of the complete record as by block 310 is shown. Then, the I / O processor 20 executes a final error checking routine based on the complete record interruption received in block 310 , as indicated by block 312 . Finally, in block 314, an ACK or NAK message corresponding to the particular data file transfer operations is sent to the I / O processor 20 .
In Fig. 4 ist ein Flußdiagramm gezeigt, das der Erläute rung der vom E/A-Prozessor 20 für eine Datensendefunktion ausgeführten logischen Schritte dient. Die aufeinander folgenden Schritte beginnen im Block 400 mit einem vom E/A-Prozessor 20 empfangenen Sendebereit-Befehlswort, das im Block 402 identifiziert wird. Die DMA-Steuereinrich tung 24 wird initialisiert und aktiviert, woraufhin auf grund des im Block 402 identifizierten Sendebereit-Be fehlswortes vom E/A-Prozessor 20 ein Startbefehl und ein Datensatz übertragen werden, wie durch den Block 404 an gezeigt ist. Wenn anschließend vom E/A-Prozessor 20 im Block 406 eine unerwartete Unterbrechung empfangen wird, wird im Block 408 vom E/A-Prozessor 20 eine Fehlerverar beitungsroutine ausgeführt. Dann kehren die aufeinander folgenden Operationen zum Block 402 zurück, um den Daten satz erneut zu übertragen. Wenn andererseits im Block 406 vom E/A-Prozessor 20 keine unerwartete Unterbrechung emp fangen wird, wird vom E/A-Prozessor 20 eine vollständige Datensatzunterbrechung von der DMA-Steuereinrichtung 24 identifiziert, woraufhin sämtliche Zwischendatenwörter des vollständigen Datensatzes übertragen werden, wie durch den Block 410 angezeigt. Dann verifiziert der E/A- Prozessor 20 aufgrund der im Block 410 gesendeten voll ständigen Datensatzunterbrechung im Block 412 eine ACK- Meldung. Wenn innerhalb eines vordefinierten Zeitinter valls von etwa 50 Millisekunden keine ACK-Meldung empfan gen wird, kehren die aufeinanderfolgenden Operationen zum Block 402 zurück, um den Datensatz erneut zu übertragen. Andererseits wird aufgrund einer im Block 412 verifizier ten ACK-Meldung die DMA-Steuereinrichtung 24 auf den nächsten Datensatz gesetzt. Anschließend werden die auf einanderfolgenden Schritte für die Übertragung des näch sten Datensatzes wiederholt, in dem zum Block 402 zurück gekehrt wird. FIG. 4 shows a flow chart which serves to explain the logic steps carried out by the I / O processor 20 for a data transmission function. The successive steps begin in block 400 with a ready-to-send command word received from I / O processor 20 that is identified in block 402 . The DMA control device 24 is initialized and activated, whereupon, based on the ready-to-send command word identified in block 402 , a start command and a data record are transmitted by the I / O processor 20 , as shown by block 404 . If an unexpected interrupt is subsequently received by the I / O processor 20 in block 406 , an error processing routine is executed in block 408 by the I / O processor 20 . Then the successive operations return to block 402 to retransmit the record. On the other hand, if, in block 406, the I / O processor 20 does not receive an unexpected interrupt, the I / O processor 20 will identify a complete data record interruption from the DMA controller 24 , whereupon all intermediate data words of the complete data set will be transmitted, as by the Block 410 is displayed. Then, the I / O processor 20 verifies an ACK message in block 412 based on the full record break sent in block 410 . If no ACK message is received within a predefined time interval of approximately 50 milliseconds, the sequential operations return to block 402 to retransmit the record. On the other hand, on the basis of an ACK message verified in block 412, the DMA control device 24 is set to the next data record. Subsequently, the successive steps for the transmission of the next data record are repeated by returning to block 402 .
Obwohl die Erfindung mit Bezug auf Einzelheiten der er läuterten Ausführungsform beschrieben worden ist, ist nicht beabsichtigt, daß diese Einzelheiten den Umfang der Erfindung, der durch die Patentansprüche festgelegt wird, begrenzen.Although the invention has been described with respect to the details of it refined embodiment has been described it is not intended that these details limit the scope of the Invention, which is defined by the claims, limit.
Claims (17)
des Identifizierens eines Startbefehlswortes durch den E/A-Prozessor (20);
des Initialisierens und Aktivierens einer Steuer einrichtung für direkten Speicherzugriff (DMA-Steuerein richtung) (24) durch den E/A-Prozessor (20) aufgrund des identifizierten Startbefehlswortes;
des Empfangens einer von der DMA-Steuereinrich tung (24) erzeugten Unterbrechung durch den E/A-Prozessor (20); und
des Ausführens einer abschließenden Fehlerprü fungs-Routine aufgrund der empfangenen Unterbrechung durch den E/A-Prozessor (20).1. A method for digital data transmission in a digital information transmission system (DITS) with an input / output processor (I / O processor) ( 20 ), characterized by the steps
the I / O processor ( 20 ) identifying a start command word;
initializing and activating a direct memory access controller (DMA controller) ( 24 ) by the I / O processor ( 20 ) based on the identified start command word;
the I / O processor ( 20 ) receiving an interrupt generated by the DMA controller ( 24 ); and
executing a final error checking routine based on the received interrupt from the I / O processor ( 20 ).
jedes der aufeinanderfolgend übertragenen Zwi schendatenwörter 32 Bits enthält und
für jedes der aufeinanderfolgend übertragenen Zwischendatenwörter vier 8-Bit-Bytes sequentiell übertra gen werden.3. The method according to claim 2, characterized in that
each of the successively transmitted intermediate data words contains 32 bits and
four 8-bit bytes are transmitted sequentially for each of the successively transmitted intermediate data words.
ein Datensatz eine vorgegebene Anzahl von Zwi schendatenwörtern enthält und
die Unterbrechung von der DMA-Steuereinrichtung (24) aufgrund einer Übertragung des Datensatzes erzeugt wird.4. The method according to claim 2, characterized in that
a data record contains a predetermined number of intermediate data words and
the interruption is generated by the DMA control device ( 24 ) due to a transfer of the data record.
eine Datendatei eine Mehrzahl von Datensätzen enthält und
die genannten Schritte nacheinander für jeden der Mehrzahl der Datensätze ausgeführt werden.5. The method according to claim 4, characterized in that
a data file contains a plurality of data records and
the steps mentioned are carried out successively for each of the plurality of data records.
die Bits einer vorgegebenen Vorzeichen-/Status- Matrix (SSM) abgetastet werden und
die Schritte des Erzeugens eines Fehlersignals aufgrund eines vorgegebenen Abtastwertes der abgetasteten SSM-Bits und des Eingebens des erzeugten Fehlersignals in den E/A-Prozessor (20) vorgesehen sind.7. The method according to claim 6, characterized in that
the bits of a given sign / status matrix (SSM) are scanned and
the steps of generating an error signal based on a predetermined sample value of the sampled SSM bits and entering the generated error signal into the I / O processor ( 20 ) are provided.
jedes der sequentiell übertragenen Zwischendaten wörter 32 Bits enthält,
für jedes der sequentiell übertragenen Zwischen datenwörter vier 8-Bit-Bytes sequentiell übertragen wer den und
die SSM-Bits aufgrund eines vorgegebenen 8-Bit- Bytes der vier übertragenen 8-Bit-Bytes abgetastet wer den.8. The method according to claim 7, characterized in that
each of the sequentially transmitted intermediate data words contains 32 bits,
for each of the sequentially transmitted intermediate data words, four 8-bit bytes are sequentially transmitted and
the SSM bits are sampled based on a predetermined 8-bit byte of the four transmitted 8-bit bytes.
Identifizieren der Anzahl der Zwischendatenwör ter, und
Setzen eines Wertes, der der identifizierten An zahl von Zwischendatenwörtern entspricht, in einem Über tragungszählregister (42). 10. The method according to claim 1, characterized in that the step of initializing the DMA control device ( 24 ) by the I / O processor ( 20 ) based on the identified start command word contains the following steps:
Identify the number of intermediate data words, and
Set a value corresponding to the identified number of intermediate data words in a transfer count register ( 42 ).
des Setzens einer Datenquellenadresse;
des Setzens einer Datenbestimmungsadresse; und
des Aktivierens der DMA-Steuereinrichtung (24).11. The method according to claim 10, characterized by the steps
setting a data source address;
setting a data destination address; and
activating the DMA controller ( 24 ).
eine Steuereinrichtung (24) für direkten Speicherzugriff (DMA-Steuereinrichtung) (24); und
ein Eingabe-/Ausgabe-Prozessor (E/A-Prozessor) (20), der mit der DMA-Steuereinrichtung (24) verbunden ist, vorgesehen sind,
der E/A-Prozessor (20) eine Einrichtung für die Identifizierung eines von ihm empfangenen Startbefehls wortes und eine Einrichtung, die auf das identifizierte Startbefehlswort anspricht, um die DMA-Steuereinrichtung (24) zu initialisieren, umfaßt;
die DMA-Steuereinrichtung (24) eine Einrichtung, die auf die Initialisierung durch den E/A-Prozessor (20) anspricht, um einen eine vorgegebene Anzahl von Zwischen datenwörtern enthaltenden Datensatz zu übertragen, und eine Einrichtung zum Erzeugen einer Unterbrechung und zum Eingeben der Unterbrechung in den E/A-Prozessor (20) um faßt; und
der E/A-Prozessor (20) eine Einrichtung (28) um faßt, mit der aufgrund der empfangenen Unterbrechung be züglich des übertragenen Datensatzes eine abschließende Fehlerprüfungs-Routine ausgeführt wird.12. Device for digital data transmission in egg nem digital information transmission system (DITS), characterized in that
direct memory access control means ( 24 ) ( 24 ); and
an input / output processor (I / O processor) ( 20 ), which is connected to the DMA control device ( 24 ), is provided,
the I / O processor ( 20 ) includes means for identifying a start command word received from it and means responsive to the identified start command word to initialize the DMA controller ( 24 );
the DMA controller ( 24 ) means responsive to initialization by the I / O processor ( 20 ) to transfer a record containing a predetermined number of intermediate data words, and means for generating an interrupt and for inputting the Interruption in the I / O processor ( 20 ) summarizes; and
the I / O processor ( 20 ) comprises a device ( 28 ) with which a final error checking routine is carried out due to the received interruption with respect to the transmitted data record.
von der Fehlerhandhabungs-Logikeinrichtung (28) Bits einer vorgegebenen Vorzeichen-/Status-Matrix (SSM) abgetastet werden und
eine Einrichtung zur Erzeugung eines Fehlersi gnals aufgrund eines vorgegebenen Abtastwertes der abge tasteten SSM-Bits und eine Einrichtung für die Eingabe eines erzeugten Fehlersignals in den E/A-Prozessor (20) vorgesehen sind.14. The device according to claim 13, characterized in that
bits of a predetermined sign / status matrix (SSM) are sampled by the error handling logic device ( 28 ) and
means for generating an error signal based on a predetermined sample value of the sampled SSM bits and means for inputting a generated error signal into the I / O processor ( 20 ) are provided.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US59589890A | 1990-10-11 | 1990-10-11 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE4133594A1 true DE4133594A1 (en) | 1992-04-23 |
Family
ID=24385162
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19914133594 Ceased DE4133594A1 (en) | 1990-10-11 | 1991-10-10 | Digital data communications with direct memory access - using new DMA controller for efficient, effective and reliable communications in avionics systems |
Country Status (2)
Country | Link |
---|---|
DE (1) | DE4133594A1 (en) |
FR (1) | FR2667961A1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4010311A1 (en) * | 1989-03-30 | 1990-10-04 | Mitsubishi Electric Corp | Data processor with interrupt control - allows interruption of central processing unit in response to direct memory access command |
-
1991
- 1991-10-10 DE DE19914133594 patent/DE4133594A1/en not_active Ceased
- 1991-10-10 FR FR9112482A patent/FR2667961A1/en not_active Withdrawn
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4010311A1 (en) * | 1989-03-30 | 1990-10-04 | Mitsubishi Electric Corp | Data processor with interrupt control - allows interruption of central processing unit in response to direct memory access command |
Also Published As
Publication number | Publication date |
---|---|
FR2667961A1 (en) | 1992-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE68928381T2 (en) | Device for data transmission between a central processor and remove peripheral devices | |
DE3855630T2 (en) | Hybrid transmission link adapter with input / output and data transmission technology | |
DE3280451T2 (en) | Process for initializing a data processing system. | |
DE19900245B4 (en) | Apparatus and method for sending data from a USB endpoint to a USB host | |
DE3687355T2 (en) | UNIVERSAL PROTOCOL DATA RECEIVER. | |
DE69326429T2 (en) | NETWORK INTERFACE WITH INDEPENDENT BUFFER MANAGEMENT | |
DE3725343C2 (en) | Multipurpose duct control system | |
DE69131477T2 (en) | Network adapter | |
DE19900290B4 (en) | A method of operating a universal serial bus device and universal serial bus device | |
DE4307449C2 (en) | Method and circuit for resynchronizing a synchronous serial interface | |
DE69803852T2 (en) | DOS USER PROGRAM SUPPORT FOR A MODEM WITHOUT CONTROL | |
DE69613056T2 (en) | Interface device between a computer of redundant architecture and a means of communication | |
DE19900345A9 (en) | Universal serial bus endpoint interface | |
DE19900345A1 (en) | Universal serial bus endpoint interface | |
DE69330399T2 (en) | HDLC receiver | |
DE69917624T2 (en) | AUTOMATIC RATE DETECTION FOR ASYNCHRONOUS SERIAL COMMUNICATION | |
DE2801611A1 (en) | PROCEDURE AND ARRANGEMENT FOR ADDRESSING AND STORING DATA IN MEMORIES WITH OPTIONAL ACCESS | |
DE69617547T2 (en) | Method and device for coordinating data transmission between hardware and software | |
DE69321637T2 (en) | Device and method for data transmission between buses of different widths | |
DE19900251B4 (en) | Apparatus and method for controlling a versatile USB endpoint channel | |
DE60015939T2 (en) | METHOD AND CIRCUIT FOR RECEIVING TWO ENDED DATA | |
DE4133594A1 (en) | Digital data communications with direct memory access - using new DMA controller for efficient, effective and reliable communications in avionics systems | |
DE69031533T2 (en) | Data transmission method and device | |
DE2423195A1 (en) | MAINTENANCE DEVICE | |
DE3433944A1 (en) | ENDOSCOPIC DEVICE |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8131 | Rejection |