DE69710780T2 - Unabhängige, entfernte ein-/ausgabesteuervorrichtung - Google Patents

Unabhängige, entfernte ein-/ausgabesteuervorrichtung

Info

Publication number
DE69710780T2
DE69710780T2 DE69710780T DE69710780T DE69710780T2 DE 69710780 T2 DE69710780 T2 DE 69710780T2 DE 69710780 T DE69710780 T DE 69710780T DE 69710780 T DE69710780 T DE 69710780T DE 69710780 T2 DE69710780 T2 DE 69710780T2
Authority
DE
Germany
Prior art keywords
input
phase
output controller
controller according
period
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69710780T
Other languages
English (en)
Other versions
DE69710780D1 (de
Inventor
Olivier-Thomson-Csf S.C.P.I. Le Borgne
Christian-Thomson-Csf S.C.P.I. Pitot
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thales Avionics SAS
Original Assignee
Thales Avionics SAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Thales Avionics SAS filed Critical Thales Avionics SAS
Application granted granted Critical
Publication of DE69710780D1 publication Critical patent/DE69710780D1/de
Publication of DE69710780T2 publication Critical patent/DE69710780T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Transfer Systems (AREA)
  • Control By Computers (AREA)
  • Selective Calling Equipment (AREA)
  • Debugging And Monitoring (AREA)
  • Programmable Controllers (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf einen Eingangs/Ausgangs- Controller, der mit der Zentraleinheit eines mit verschiedenen elektronischen Peripheriegeräten kommunizierenden Rechners zusammenarbeiten soll. Dieser Eingangs/Ausgangs-Controller kann insbesondere in der Luft- und Raumfahrtelektronik verwendet werden.
  • Gegenwärtig befinden sich in den Luftfahrzeugen mehrere Rechner, die jeweils eine einzige Anwendung steuern. Unter Anwendung wird beispielsweise der Autopilot, das Bodennähe-Erfassungssystem, das System zum Schutz gegen das Überziehen usw. verstanden.
  • In jedem Rechner ist die Zentraleinheit mit den zur betreffenden Anwendung gehörenden elektronischen Peripheriegeräten über einen parallelen Bus verbunden. Diese Verbindung über einen parallelen Bus ermöglicht ein Übertragen der Informationen mit hohem Durchsatz, jedoch erfordert sie eine große Anzahl von Anschlußstiften.
  • Eine solche Verbindung bringt eine gewisse Unsicherheit mit sich, da dann, wenn ein Fehler auftritt, alle Daten, die über diese Verbindung verkehren, verloren sind. Da jede Anwendung unabhängig von den anderen behandelt wird, ist diese Unsicherheit tolerierbar.
  • Mit der schnellen Entwicklung der Geschwindigkeit und der Kapazität der Prozessoren und im Hinblick auf eine Kostensenkung ist denkbar, daß lediglich eine Zentraleinheit mehrere Anwendungen steuert, jedoch bringt dies eine neue Gefahr der Ausbreitung von Fehlern unter den Anwendungen mit sich, was zur Verstärkung der Unsicherheit auf der Ebene der einzelnen Anwendungen führt.
  • Die europäische Patentanmeldung EP 0 694 842 beschreibt ein Sicherungsverfahren für den Ablauf linearer Sequenzen von Befehlen, die durch einen Prozessor ausgeführt werden, was einen Schutz vor einer Ausbreitung von Fehlern auf verschiedene durch dieselbe Zentraleinheit behandelte Anwendungen ermöglicht, indem die Möglichkeit geboten wird, die korrekte Adressierung beim Lesen eines die in Sequenzen auszuführenden Befehle speichernden Speichers zu überprüfen.
  • Die vorliegende Erfindung hat das Ziel, der Ausbreitung von Fehlern auf verschiedene durch dieselbe Zentraleinheit behandelte Anwendungen entgegenzuwirken, indem auf der Ebene der Eingänge/Ausgänge des Rechners, die die Schnittstelle zwischen der Zentraleinheit des Rechners und verschiedenen, von den durch die Zentraleinheit behandelten Anwendungen benutzten elektronischen Peripheriegeräten außerhalb des Rechners bilden, eingegriffen wird.
  • Sie hat einen Eingangs/Ausgangs-Controller zum Gegenstand, wie er in Anspruch 1 definiert ist.
  • Dieser Eingangs/Ausgangs-Controller ist autonom und kann mit allen Typen von Zentraleinheit und elektronischen Peripheriegeräten arbeiten.
  • Ein oder mehrere Befehlstypen, die vom Speicher ankommen, können als Pseudobefehle qualifiziert werden, die aus Listen analoger Werte gebildet sind, die im Speicher gespeichert sind, wobei die verschiedenen Typen Listen von Werten unterschiedlicher Art entsprechen.
  • Bestimmte, sich von den Pseudobefehlen unterscheidende Befehle, die vom Speicher ankommen, können Sequenzen bilden, die nach einem Synchronisationsbefehl ausgeführt werden.
  • Die Ablaufsteuerungsvorrichtung kann gleiche Zeitschlitze für die aufeinanderfolgende Verarbeitung jedes der Befehlstypen zuweisen und anschließend ein Zeitintervall ohne Verarbeitung, das eventuell null ist, belegen, bevor die Verarbeitung erneut begonnen wird. Jeder Befehlstyp wird mit der gleichen Frequenz verarbeitet.
  • Eine verfeinerte Sequentialisierung, die eine Verarbeitung mit für verschiedene Befehlstypen geeigneten Frequenzen ermöglicht, kann in Betracht gezogen werden. Eine solche Sequentialisierung entspricht den Bedürfnissen, denen in einer Luft- und Raumfahrtelektronikanwendung begegnet wird, weitaus besser.
  • Die Ablaufsteuerungsvorrichtung kann der Verarbeitung von Befehlen entsprechend ihrem Typ gleiche Zeitschlitze zuweisen, wobei jedem Befehlstyp eine Auftrittsperiode zugeordnet ist, wobei der erste verarbeitete Befehlstyp die kleinste Periode besitzt, wobei diese Periode Referenzperiode genannt wird, und eine Referenzphase besitzt, während die anderen Befehlstypen eine Phasenbeschränkung in bezug auf die Referenzphase besitzen, wobei diese anderen Befehlstypen mit einem Rang verarbeitet werden, der von der zunehmenden Größe ihrer Phasenbeschränkung abhängt, wobei ihre Periode ein Vielfaches der Referenzperiode ist.
  • Es ist einfacher, für die Referenzphase nach Konvention den Wert null zu wählen.
  • Die Referenzperiode kann ein Vielfaches einer Dauer, einer sogenannten Basisperiode, sein, die der Zugriffszeit auf einem Befehl im Speicher entspricht.
  • Es ist vorteilhaft, die Phasenbeschränkung des zweiten verarbeiteten Befehlstyps durch ein Phaseninkrement in bezug auf die Referenzphase und jene der Befehlstypen höheren Rangs durch ein Phaseninkrement in bezug auf die Phasenbeschränkung des verarbeiteten Befehlstyps des vorhergehenden Rangs auszudrücken.
  • Eine Ablaufsteuerungsvorrichtung, die das Verarbeiten der verschiedenen Befehlstypen mit verschiedenen Frequenzen ermöglicht, kann umfassen:
  • - eine Vorrichtung die eine sogenannte momentane Phase anhand eines Basistakts, dessen Periode der Zugriffszeit auf einen Befehl im Speicher entspricht, liefert,
  • - einen ersten Teiler des Basistakts, der zusätzlich zu dem Basistakt den Wert der Referenzperiode empfängt und Impulse erzeugt, die die Referenzperiode und die Referenzphase besitzen;
  • - eine Gesamtheit aus Vorteiler und Teiler, die jeweils einem der anderen zu verarbeitenden Befehlstypen zugeordnet ist und den Basistakt und die Referenzperiode empfängt,
  • wobei jeder Vorteiler den Wert der Referenzperiode und ein Startsignal, das sich aus dem Vergleich zwischen der Phasenbeschränkung des zugeordneten Befehlstyps und der momentanen Phase ergibt, empfängt und für den Teiler derselben Gesamtheit, zu der er gehört, ein Periodensignal erzeugt, das gleich der Referenzperiode ist und eine Phase hat, die der Phasenbeschränkung des zugeordneten Befehlstyps entspricht,
  • wobei jeder Teiler Impulse erzeugt, die die Periode und die Phasenbeschränkung des zugeordneten Befehlstyps besitzen.
  • Die Vorrichtung, die die momentane Phase liefert, kann durch einen Zähler mit Sättigung verwirklicht sein, der den Basistakt empfängt.
  • Der Zähler mit Sättigung kann entweder dann auf null zurückgesetzt werden, wenn der Eingangs/Ausgangs-Controller neu gestartet wird, oder dann, wenn von einer Rücksetzvorrichtung ein Signal geliefert wird.
  • Jedem Vorteiler kann ein Komparator zugeordnet sein, der an ihn das Startsignal liefert, wobei jeder Komparator die momentane Phase und die Phasenbeschränkung in bezug auf die Referenzphase des zugeordneten Befehlstyps empfängt.
  • Der erste Komparator empfängt direkt den Wert des Inkrements der Phase des zweiten Befehlstyps in bezug auf die Referenzphase, während den anderen Komparatoren jeweils ein Addierer zugeordnet ist, wobei jeder Addierer die Phasenbeschränkung in bezug auf die Referenzphase des zugeordneten Befehlstyps liefert und die Phasenbeschränkung des verarbeiteten Befehlstyps mit dem vorhergehenden Rang und den Wert des Phaseninkrements in bezug auf diese Beschränkung empfängt.
  • Ein von einem Pseudobefehl verschiedener Befehl kann vom Typ ARINC 429 sein und zweiunddreißig Bits enthalten, worunter sich ein Code mit höchstens acht Bits und ein Parameter mit höchstens einundzwanzig Bits befinden.
  • Die Werte der Auftrittsperioden und der Phasenbeschränkungen der verschiedenen Befehlstypen können in dem Parameter eines oder mehrerer Ladebefehle codiert sein.
  • Der erfindungsgemäße Eingangs/Ausgangs-Controller kann eine Codeanalysevorrichtung enthalten, die die Befehlscodes decodiert.
  • Ein Pseudobefehl wird unter der Steuerung eines Aktivierungsbefehls ausgeführt. Er enthält in zweiunddreißig Bits eine Liste analoger Wert; die entweder in Form von Inkrementen oder in Form von Absolutwerten codiert sind.
  • Der Eingangs/Ausgangs-Controller kann Fernsteuerungsmittel für Pseudobefehle enthalten, die die Aktivierungsbefehle empfangen, die die Codes der Aktivierungsbefehle halten und die bei einem Zugriff auf den Speicher mit einem Zugriffszeiger geladen werden. Die Codeanalysevorrichtung empfängt die Pseudobefehle und die Codes der Aktivierungsbefehle der Fernsteuerungsmittel der Pseudobefehle.
  • Wenn zur Entnahme eines Befehls mehrere Zugriffe auf den Speicher erforderlich sind, sollte der Eingangs/Ausgangs-Controller Steuerungsmittel für den Speicher enthalten, die einen Pufferblock besitzen, der durch die Ablaufsteuerungsvorrichtung ferngesteuert wird. Der Pufferblock kann außerdem durch die Fernsteuerungsmittel der Pseudobefehle ferngesteuert werden.
  • Die Steuerungsmittel für den Speicher können ebenfalls eine Ablaufsteuerungsvorrichtung zum Fernladen des Speichers anhand von der Zentraleinheit empfangener Befehle enthalten.
  • Vorteilhafterweise kann der Eingangs/Ausgangs-Controller bei der Erfassung oder der Erzeugung mit den elektronischen Peripheriegeräten über mehrere bidirektionale Schnittstellenpfade kommunizieren, die insbesondere als paralleler Bus, als Verbindung, die Boolesche Ausdrücke transportiert, als serielle Verbindung oder als Verbindung mit optischem Codierer konfiguriert werden können, wozu der Eingangs/Ausgangs-Controller wenigstens eine Schnittstellenvorrichtung enthalten kann, die mit den elektronischen Peripheriegeräten über wenigstens einen dieser bidirektionalen Schnittstellenpfade verbunden ist. Diese Schnittstellenvorrichtung entspricht voll und ganz dem Standard.
  • Ebenso kann eine Schnittstellenvorrichtung mit der Zentraleinheit vorgesehen sein, die mit dieser über Eingangs- und Ausgangsleitungen verbunden ist.
  • Die Erfindung wird verständlicher und weitere Merkmale und Vorteile werden deutlich beim Lesen der Beschreibung der durch die beigefügten Figuren veranschaulichten Ausführungsbeispiele, wobei die Figuren zeigen:
  • - Fig. 1 wenigstens einen erfindungsgemäßen Eingangs/Ausgangs- Controller in seinem Kontext;
  • - Fig. 2 die Struktur eines erfindungsgemäßen Eingangs/Ausgangs-Controllers;
  • - Fig. 3 eine Ablaufsteuerungsvorrichtung, die zur Verarbeitung der verschiedenen Befehlstypen mit geeigneten Frequenzen geeignet ist.
  • Fig. 1 zeigt sehr schematisch einen ersten erfindungsgemäßen Eingangs/Ausgangs-Controller CO in seiner Umgebung. In diesem Beispiel ist er zur Arbeit in einer Luft- und Raumfahrtelektronikanwendung vorgesehen.
  • Dieser Eingangs/Ausgangs-Controller CO ist dazu bestimmt, mit einer Zentraleinheit UC eines (nicht gezeigten) Rechners zusammenzuarbeiten, der mit elektronischen Peripheriegeräten EQ kommuniziert. In der Luft- und Raumfahrtelektronikanwendung sind diese elektronischen Peripheriegeräte EQ Sensoren oder Aktoren. Der Eingangs/Ausgangs-Controller CO empfängt Befehle eines ersten Typs von der Zentraleinheit UC über eine serielle Eingangsleitung Isse und sendet Informationen an die Zentraleinheit UC über wenigstens eine serielle Ausgangsleitung Iss. In dem beschriebenen Beispiel werden vorzugsweise zwei serielle Ausgangsleitungen Iss1, Iss2 verwendet. Es ist möglich, vorzusehen, daß die eine der seriellen Ausgangsleitungen, Iss1, über den Eingangs/Ausgangs-Controller CO nur Informationen sendet, die von den elektronischen Peripheriegeräten EQ ankommen, und daß die andere, Iss2, über den Eingangs/Ausgangs-Controller CO Informationen senden kann, die sowohl von den elektronischen Peripheriegeräten EQ als auch von anderen Vorrichtungen ankommen, wie später zu sehen sein wird. Optional können mehrere erfindungsgemäße Eingangs/Ausgangs-Controller mit derselben Zentraleinheit UC über dieselbe serielle Eingangsleitung Ise verbunden sein. In Fig. 1 ist ein zweiter Eingangs/Ausgangs-Controller CO gestrichelt gezeigt. Dieser zweite Eingangs/Ausgangs-Controller CO ist mit der Zentraleinheit UC über wenigstens eine Ausgangsleitung ISS' verbunden.
  • Jeder Eingangs/Ausgangs-Controller CO, CO ist dazu bestimmt, mit einem als PROM, PROM' entsprechend bezeichneten Speicher außerhalb der Zentraleinheit UC zusammenzuarbeiten. Sie empfangen von dem zugeordeneten Speicher PROM, PROM' Befehle eines oder mehrerer Typen.
  • Die folgende Beschreibung ist für den Eingangs/Ausgangs-Controller CO erstellt, wobei die anderen ähnlich wären. Der Eingangs/Ausgangs-Controller CO ist dazu bestimmt, bei der Erfassung oder Erzeugung von Informationen mit den elektronischen Peripheriegeräten EQ zu kommunizieren. Zwischen dem Eingangs/Ausgangs-Controller CO und den elektronischen Peripheriegeräten EQ sind mehrere bidirektionale Verbindungen oder Schnittstellenpfade VP1, VP2, VP3, VP4 vorgesehen. Diese Schnittstellenpfade VP1, VP2, VP3, VP4 können durch Befehle, die vom Eingangs/Ausgangs-Controller CO empfangen werden, insbesondere als paralleler Bus, als Verbindung, die Boolesche Ausdrücke transportiert, als serielle Verbindung oder auch als Verbindung mit optischem Codierer konfiguriert werden und eingangsseitig und ausgangsseitig arbeiten. In dem in Fig. 1 gezeigten Beispiel wird angenommen, daß zu einem gegebenen Zeitpunkt der erste Pfad VP1 als eingangsseitiger paralleler Bus konfiguriert ist, der zweite Pfad VP2 als ausgangsseitige Verbindung konfiguriert ist, die Boolesche Ausdrücke transportiert, der dritte Pfad VP3 als ausgangsseitige serielle Verbindung konfiguriert ist und der vierte Pfad VP4 als eingangsseitige Verbindung mit optischem Codierer konfiguriert ist.
  • Fig. 2 zeigt die verschiedenen Funktionen eines erfindungsgemäßen Eingangs/Ausgangs-Controllers im einzelnen.
  • Der Eingangs/Ausgangs-Controller CO enthält wenigstens eine Schnittstellenvorrichtung DI mit den elektronischen Peripheriegeräten EQ. Diese Schnittstellenvorrichtung DI ist mit den elektronischen Peripheriegeräten EQ über wenigstens einen Schnittstellenpfad VP1, VP2, VP3, VP4 verbunden. In der Luft- und Raumfahrtelektronikanwendung des beschriebenen Beispiels sind vier identische standardisierte seriell-parallele Schnittstellenvorrichtungen DI ausreichend, um mit allen vorhandenen elektronischen Peripheriegeräten EQ zu kommunizieren. Weitere Details der Schnittstellenvorrichtung DI sind weiter unten angegeben.
  • Der Eingangs/Ausgangs-Controller CO enthält eine Schnittstellenvorrichtung DIP, die über eine Eingangsleitung Ise und über Ausgangsleitungen Iss1, Iss2 mit der Zentraleinheit UC verbunden ist.
  • Der Eingangs/Ausgangs-Controller CO ist dazu bestimmt, einerseits von der Zentraleinheit UC und andererseits vom Speicher PROM Befehle zu empfangen und zu verarbeiten, d. h. in einer Codeanalysevorrichtung DAC zu decodieren, und an geeignete Organe, d. h. an die elektronischen Peripheriegeräte EQ oder an die Zentraleinheit UC weiterzuleiten. Der Eingangs/Ausgangs-Controller CO verarbeitet die Befehle alternativ entsprechend ihrem Typ und enthält dazu eine Ablaufsteuerungsvorrichtung SEQ. Ihr Betrieb wird weiter unten beschrieben.
  • Ein oder mehrere Befehlstypen, die vom Speicher PROM ankommen, können als Pseudobefehle qualifiziert werden. Ein Pseudobefehl besteht aus einer Liste analoger Werte, die im Speicher PROM gespeichert sind. Diese Pseudobefehle werden unter der Steuerung eines Aktivierungsbefehls und bis zu einem Deaktivierungsbefehl ausgewertet.
  • In der Luft- und Raumfahrtelektronikanwendung können diese Listen analoger Werte einer zur Erregung eines Sensors zu sendenden Wellenform oder einem Tonsignal, beispielsweise einem zur Warnung der Besatzung ertönen zu lassenden Alarm, entsprechen. Die verschiedenen Typen entsprechen Listen von Werten unterschiedlicher Art. Im beschriebenen Beispiel wird angenommen, daß zwei verschiedene Befehlstypen in Form von Listen analoger Werte vom Speicher PROM ankommen können. Im Zuge der Beschreibung umfaßt der Begriff "Befehl", wenn er ohne besondere Angabe verwendet wird, auch Pseudobefehle.
  • Bestimmte von Pseudobefehlen verschiedene Befehle, die vom Speicher PROM ankommen, können nach einem Synchronisationsbefehl als Sequenz ausgeführt werden.
  • Ein von einem Pseudobefehl verschiedener Befehl ist einem ARINC-429- Wort mit 32 Bits nachgebildet. Er enthält einen Code mit höchstens 8 Bits (Bits 0 bis 7), der die auszuführende Aktion angibt, wobei die Bits 8 und 9 zur Sicherheit dienen. Eine Datenerfassungsaktion der elektronischen Peripheriegeräte EQ für eine Zentraleinheit UC ist mit fünf Bits (Bits 0 bis 4) codiert. Diese Bits geben die Art der Erfassung an. Das Bit 5 gibt Auskunft über die serielle Ausgangsleitung Iss1 oder Iss2, die zur Zentraleinheit UC zu benutzen ist, während die Bits 6 und 7 Auskunft über die betreffende Schnittstellenvorrichtung DI und den betreffenden Schnittstellenpfad geben.
  • Ebenso ist eine Datenerzeugungsaktion für ein elektronisches Peripheriegerät EQ mit 6 Bits (Bits 0 bis 5) codiert. Diese Bits gegeben die Art der Datenerzeugung an. Die Bits 6 und 7 geben Auskunft über die betreffende Schnittstellenvorrichtung DI und den betreffenden Schnittstellenpfad.
  • Die Bits 8 und 9 eines Befehls, der von der Zentraleinheit UC ankommt, identifizieren den Ziel-Eingangs/Ausgangs-Controller CO, CO, da es mehrere davon geben kann.
  • Wenn der Befehl darin besteht, einen Datenwert an die Zentraleinheit UC zu senden, enthält der Code ein Etikett, das dem zu sendenden Datenwert vorausgehen muß. Wenn der Befehl darin besteht, einen Datenwert von einem elektronischen Peripheriegeräte EQ an die Zentraleinheit UC zu senden, identifizieren die Bits 8 und 9 den Sender.
  • Ein Befehl enthält außerdem einen Parameter mit höchstens 21 Bits (Bits 10 bis 30), wobei dieser Parameter eine Basisadresse im Speicher PROM, beispielsweise für Befehle zum Fernladen des Speichers PROM, Synchronisations- oder Aktivierungsbefehle, einen Programmierungsdatenwert, um beispielsweise die Sequentialisierung zu programmieren, einen an die elektronischen Peripheriegeräte EQ oder an die Zentraleinheit UC zu übertragenden Wert oder per Vorgabe, wenn kein weiterer Parameter erforderlich ist, eine Dauer repräsentieren kann. Wenn der Parameter weniger als 21 Bits enthält, entsprechen die codierten Daten jenen mit den niedrigsten Wertigkeiten (Bit 10 und nachfolgende Bits). Das Bit 31 ist ein Paritätsbit, wobei die Parität eines Befehls ungerade ist.
  • Bestimmte Befehle können 16 Bits des Parameters zur Codierung der Daten und die fünf nachfolgenden Bits zur Steuerung verwenden. Diese Befehle werden vorzugsweise verwendet, um die Schnittstellenvorrichtung DI, mit der die elektronischen Peripheriegeräte EQ verbunden sind, fernzusteuern.
  • Die Befehle, die vom Speicher PROM ankommen, können nur bestimmte Codes wie jene, die dem Löschen, dem Fernladen und dem Auslesen des Speicher PROM entsprechen, verwenden. Diese Codes sind zur ausschließlichen Verwendung durch die Zentraleinheit UC.
  • Ein Aktivierungsbefehl enthält als Code die auszuführende Aktion, was dem Empfänger der Analogwerte entsprechen kann, und als Parameter die Anfangszieladresse der Sequenz von Analogwerten vor ihrer Entnahme aus dem Speicher PROM.
  • Der Eingangs/Ausgangs-Controller CO enthält außerdem Fernsteuerungsmittel SP für Pseudobefehle. Diese Fernsteuerungsmittel SP empfangen von der Codeanalysevorrichtung DAC die Aktivierungs- und Deaktivierungsbefehle. Sie halten den Code der Aktivierungsbefehle und übernehmen den Zugriff auf den Speicher PROM über einen Zugriffszeiger POIN und das Senden des Pseudobefehls und des Codes an die Codeanalysevorrichtung DAC.
  • Der Zugriffszeiger POIN dient andererseits für den Zugriff auf den Speicher PROM nach einem Synchronisationsbefehl, der als Parameter die Anfangszieladresse des ersten Befehls der auszuführenden Sequenz enthält, oder für das Erzeugen der standardisierten Werte, die in den Sequenzen zum Löschen und Programmieren des Speichers PROM dienen.
  • Aneinandergereiht können die Bits 8 der vom Speicher PROM ankommenden Befehle in einer Sequenz die momentane Adresse des Zeigers für den Zugriff auf den PROM gemäß dem unter der Nr. 2 723 222 veröffentlichten und auf den Namen der Anmelderin lautenden französischen Patent codieren. Das Bit 9 identifiziert den Eingabepunkt einer im Speicher PROM gespeicherten Sequenz.
  • Die aus dem Speicher ausgelesenen Pseudobefehle können in Abhängigkeit von der Dynamik und der Amplitude der zu übertragenden Analogwerte verschiedene Formate mit 32 Bits annehmen. Die Analogwerte können in Form eines Inkrements oder in Form eines Absolutwerts codiert sein.
  • Beispielsweise kann ein Pseudobefehl 3 Werte mit 9 Bits oder auch 4 Werte mit 7 Bits oder sogar 2 Werte mit 14 Bits enthalten.
  • Das letzte Bit ist ein Paritätsbit, wobei die Parität eines Pseudobefehls ungerade ist. Das vorletzte Bit ist ein Sicherheitsbit. Aneinandergereiht können die Sicherheitsbits einer Liste aufeinanderfolgender Pseudobefehle die Inverse der momentanen Adresse des Zeigers für den Zugriff auf den Speicher PROM gemäß dem unter der Nr. 2 723 222 veröffentlichten und auf den Namen der Anmelderin lautenden französischen Patent codieren.
  • Dadurch, daß für die Befehlssequenzen und die Analogwertsequenzen eine inverse Codierung gewählt wird, kann garantiert werden, daß für das Programm ein versehentliches Ausführen einer Analogwertsequenz anstelle einer Befehlssequenz und umgekehrt nicht möglich ist.
  • Die Ausführung einer Sequenz, die dem Ausführungskontext nicht entspricht, kann somit durch die Anwendung einer Codierung verschiedener Invarianten entsprechend dem Kontext erkannt und verhindert werden.
  • Die anderen freien Bits der Pseudobefehle geben an, ob die Werte in Form eines Inkrements oder eines Absolutwerts codiert sind und ob das Sequenzende erreicht ist oder nicht.
  • Diese Codierung in Form eines Inkrements oder eines Absolutwerts ermöglicht insbesondere bei Tönen eine Optimierung des im Speicher PROM belegten Speicherplatzes. Die Perioden mit geringer Dynamik können vorteilhaft in Form eines Inkrements mit entweder 7 Bits oder 9 Bits codiert werden, während die Perioden mit niedrigen Amplituden in Form eines Absolutwerts mit 9 Bits oder eines Inkrements mit 7 Bits codiert werden können. Die Werte mit 14 Bits betreffend repräsentieren diese Absolutwerte.
  • Es wurde gezeigt, daß die Codeanalysevorrichtung DAC von der Zentraleinheit UC Befehle eines ersten Typs und vom Speicher PROM Befehle eines Typs oder mehrerer Typen empfängt. Sie verarbeitet diese alternativ gemäß einer Sequentialisierung, die durch die Ablaufsteuerungsvorrichtung SEQ zugewiesen wird. Die Sequentialisierung kann fest oder programmierbar sein.
  • Allgemeiner ausgedrückt kann die Ablaufsteuerungsvorrichtung SEQ dann, wenn der Eingangs/Ausgangs-Controller CO Befehle von n Typen zu verarbeiten hat, die Verarbeitungszeit für die Befehle in n + 1 Schlitze unterteilen (wobei n eine ganze Zahl größer oder gleich zwei ist), wobei n dieser gleichen Schlitze für die aufeinanderfolgende Verarbeitung jedes der n Typen von Befehlen verwendet werden und der letzte Schlitz mit programmierbarer Dauer, die eventuell null ist, die Einstellung des Sequentialisierungstakts ermöglicht. Bei Ausgabe des letzten Schlitzes beginnt die Verarbeitung erneut.
  • Im beschriebenen Beispiel wird angenommen, daß der Eingangs/Ausgangs- Controller CO drei Befehlstypen vom Speicher PROM, wovon zwei Typen Pseudobefehlen entsprechen, und einen Befehlstyp von der Zentraleinheit UC empfängt. Diese vier Befehlstypen sind mit CO1 für die den Erregungen entsprechenden Pseudobefehle, mit CO2 für die vom Speicher PROM ankommenden Befehle, mit CO3 für die den Tonsignalen entsprechenden Pseudobefehle und mit CO4 für die von der Zentraleinheit UC ankommenden Befehle bezeichnet.
  • Während des ersten Verarbeitungszeitschlitzes könnten die Befehle CO1 verarbeitet werden, während des zweiten Schlitzes könnten die Befehle CO2 verarbeitet werden, während des dritten Schlitzes könnten die Befehle CO&sub3; verarbeitet werden, während des vierten Schlitzes könnten die Befehle CO4 verarbeitet werden und während des fünften Schlitzes würde keine Verarbeitung ausgeführt.
  • Die minimale Zugriffszeit auf den Speicher PROM oder die atomare Zeit liegt zwischen 2 und 8 Haupttaktperioden des Rechners. Bei einem Takt von 20 MHz kann die atomare Zeit in Schritten von 50 ns auf 100 ns bis 400 ns programmiert werden.
  • Mehrere aufeinanderfolgende Zugriffe auf den Speicher PROM sind erforderlich, um einen Befehl zu lesen, wobei im Fall eines Speichers mit 8 Bits und eines Befehls mit 32 Bits wie im beschriebenen Beispiel vier Zugriffe erforderlich sind. Die zum Zugriff auf einen Befehl erforderliche Dauer ist dann gleich dem Vierfachen der atomaren Zeit. Diese Dauer wird als Basisperiode bezeichnet, während ihre Inverse als Basisfrequenz bezeichnet wird.
  • Somit ist ersichtlich, daß unter der Annahme einer atomaren Zeit von 200 ns und einer Dauer des fünften Schlitzes von 400 ns die maximale Verarbeitungsfrequenz der Befehle oder der Pseudobefehle eines der Kontexte 277,8 kHz beträgt. Der Sequentialisierungstakt beträgt 3,6 us. Es ist also möglich, eine Erregung mit 5 kHz bei 55,5 Abtastwerten pro Periode oder eine Erregung mit 2,78 kHz bei 100 Abtastwerten pro Periode zu erzeugen.
  • Unter der Annahme einer atomaren Zeit von 200 ns und einer Dauer des fünften Schlitzes, die gleich null ist, beträgt die maximale Verarbeitungsfrequenz eines Befehlstyps 312,5 kHz. Der Sequentialisierungstakt beträgt 3,2 us. Es ist möglich, eine Erregung mit 5 kHz bei 62,5 Abtastwerten pro Periode oder eine Erregung mit 3,125 kHz bei 100 Abtastwerten pro Periode zu erzeugen.
  • Diese Sequentialisierung weist den verschiedenen Befehlstypen gleiche Zeitschlitze zu, wobei die verschiedenen Befehlstypen mit der gleichen Frequenz verarbeitet werden.
  • Eine verfeinerte Sequentialisierung kann ein Erhöhen der Verarbeitungsfrequenz eines Befehlstyps im Vergleich zu jener der anderen Typen und ein Anpassen der Verarbeitungsfrequenz an den Befehlstyp ermöglichen. In der Luft- und Raumfahrtelektronikanwendung besitzen gerade die Pseudobefehle, die die Erregungen übertragen, die höchste Frequenz.
  • Die Ablaufsteuerungsvorrichtung SEQ kann die Verarbeitungszeit in eine Folge von gleichen Zeitschlitzen unterteilen, wobei diese Schlitze für die Verarbeitung der Befehle entsprechend ihrem Typ verwendet werden. Es wird angenommen, daß die verschiedenen Befehlstypen die gleichen wie die im vorhergehenden Beispiel beschriebenen sind.
  • Für jeden Befehlstyp wird eine Auftrittsperiode definiert. Der erste verarbeitete Befehlstyp CO1 ist jener, der die kleinste Auftrittsperiode besitzt. Diese Periode wird Referenzperiode genannt und ist durch ein Vielfaches der Basisperiode definiert. Der erste verarbeitete Befehlstyp CO1 wird einer sogenannten Referenzphase zugewiesen, für die nach Konvention vorzugsweise der Wert null gewählt wird. Um zu garantieren, daß zu einem gegebenen Zeitpunkt nur ein einziger Befehlstyp verarbeitet wird, besitzen die anderen Befehlstypen CO2, CO3, CO4 eine Phasenbeschränkung in bezug auf die Referenzphase, wobei diesen anderen Befehlstypen CO2, CO3, CO4 ein Verarbeitungsrang (von 2 bis n) zugewiesen wird, der von der zunehmenden Größe ihrer Phasenbeschränkung abhängt.
  • Die Periode des zweiten verarbeiteten Befehlstyps CO2 ist ein Vielfaches der Referenzperiode. Seine Phasenbeschränkung wird durch das Phaseninkrement in bezug auf die Referenzphase ausgedrückt, wobei dieses Inkrement nach Basisperioden gezählt wird.
  • Die Periode des dritten verarbeiteten Befehlstyps CO3 ist ein Vielfaches der Referenzperiode. Seine Phasenbeschränkung wird durch das Phaseninkrement in bezug auf die Phasenbeschränkung des zweiten verarbeiteten Befehlstyps CO2 ausgedrückt, wobei dieses Inkrement nach Basisperioden gezählt wird.
  • Allgemeiner ausgedrückt hat dieser verarbeitete Befehlstyp mit Rang i (ganze Zahl größer als zwei) ein Vielfaches der Referenzperiode als Periode, wobei ihre Phasenbeschränkung durch das Phaseninkrement in bezug auf die Phasenbeschränkung des verarbeiteten Befehlstyp mit Rang i-1 ausgedrückt wird, wobei dieses Inkrement nach Basisperioden gezählt wird. Im beschriebenen Beispiel ist i eine ganze Zahl, die zwischen 3 und 4 liegt.
  • Die Werte der Perioden, der Referenzphase (wenn sie nicht null ist) und die Phasenbeschränkungen können mit mehreren Bits, beispielsweise mit drei, codiert werden. Dieser Ablauf kann in Form von einem oder mehreren Ladebefehlen programmiert werden. Der Wert der Referenzphase könnte ebenfalls codiert werden, wenn sie nicht null ist.
  • Im beschriebenen Beispiel mit vier Befehlstypen CO1, CO2, CO3, CO4 ist ein einziger Ladebefehl, dessen Parameter 21 Bits besitzt, ausreichend, wenn lediglich eine Referenzphase mit dem Wert null betrachtet wird.
  • Die drei ersten Bits aaa des Parameters codieren die Referenzperiode.
  • Hier die Bedeutungen der verwendeten Codes:
  • 001: Verarbeitung der Basisperiode. In diesem Fall wird lediglich dieser erste Befehlstyp verarbeitet, wobei dann, wenn ein anderer Befehlstyp verarbeitet wird, dieser erste Befehlstyp inaktiv ist und die Referenzperiode lediglich dazu dient, die Periode des anderen verarbeiteten Befehlstyps zu definieren.
  • 010: Verarbeitung der mit 2 multiplizierten Basisperiode,
  • 011: Verarbeitung der mit 3 multiplizierten Basisperiode,
  • 100: Verarbeitung der mit 4 multiplizierten Basisperiode,
  • 101: Verarbeitung der mit S multiplizierten Basisperiode,
  • 110: Verarbeitung der mit 6 multiplizierten Basisperiode,
  • 111: Verarbeitung der mit 7 multiplizierten Basisperiode,
  • 000: Verarbeitung der mit 8 multiplizierten Basisperiode.
  • Da die Referenzphase null ist, wird sie nicht codiert.
  • Die drei folgenden Bits bbb des Parameters codieren die Phasenbeschränkung des zweiten Befehlstyps CO2.
  • Hier die Bedeutungen der verwendeten Codes:
  • 000: nicht verwendeter Befehlstyp,
  • 001: Phaseninkrement einer Basisperiode in bezug auf die Referenzphase,
  • 010: Phaseninkrement von zwei Basisperioden in bezug auf die Referenzphase,
  • 011: Phaseninkrement von drei Basisperioden in bezug auf die Referenzphase,
  • 100: Phaseninkrement von vier Basisperioden in bezug auf die Referenzphase,
  • 101: Phaseninkrement von fünf Basisperioden in bezug auf die Referenzphase,
  • 110: Phaseninkrement von sechs Basisperioden in bezug auf die Referenzphase,
  • 111: Phaseninkrement von sieben Basisperioden in bezug auf die Referenzphase.
  • Die drei folgenden Bits ccc codieren die Periode des zweiten Befehlstyps CO2.
  • Hier die Bedeutungen der verwendeten Codes:
  • 001: Verarbeitung der Referenzperiode,
  • 010: Verarbeitung der 2fachen Periode der Referenzperiode,
  • 011: Verarbeitung der 3fachen Periode der Referenzperiode,
  • 100: Verarbeitung der 4fachen Periode der Referenzperiode,
  • 101: Verarbeitung der Sfachen Periode der Referenzperiode,
  • 110: Verarbeitung der 6fachen Periode der Referenzperiode,
  • 111: Verarbeitung der 7fachen Periode der Referenzperiode,
  • 000: Verarbeitung der 8fachen Periode der Referenzperiode.
  • Die drei folgenden Bits ddd codieren die Phasenbeschränkung des dritten Befehlstyps CO3.
  • Hier die Bedeutungen der verwendeten Codes:
  • 000: nicht verwendeter Befehlstyp,
  • 001: Phaseninkrement einer Basisperiode in bezug auf die Phasenbeschränkung des zweiten Befehlstyps,
  • 010: Phaseninkrement von zwei Basisperioden in bezug auf die Phasenbeschränkung des zweiten Befehlstyps,
  • 011: Phaseninkrement von drei Basisperioden in bezug auf die Phasenbeschränkung des zweiten Befehlstyps,
  • 100: Phaseninkrement von vier Basisperioden in bezug auf die Phasenbeschränkung des zweiten Befehlstyps,
  • 101: Phaseninkrement von fünf Basisperioden in bezug auf die Phasenbeschränkung des zweiten Befehlstyps,
  • 110: Phaseninkrement von sechs Basisperioden in bezug auf die Phasenbeschränkung des zweiten Befehlstyps,
  • 111: Phaseninkrement von sieben Basisperioden in bezug auf die Phasenbeschränkung des zweiten Befehlstyps.
  • Die drei folgenden Bits eee codieren die Periode des dritten Befehlstyps CO3. Hier die Bedeutungen der verwendeten Codes:
  • 001: Verarbeitung der Referenzperiode,
  • 010: Verarbeitung der 2fachen Periode der Referenzperiode,
  • 011: Verarbeitung der 3fachen Periode der Referenzperiode,
  • 100: Verarbeitung der 4fachen Periode der Referenzperiode,
  • 101: Verarbeitung der 5fachen Periode der Referenzperiode,
  • 110: Verarbeitung der 6fachen Periode der Referenzperiode,
  • 111: Verarbeitung der 7fachen Periode der Referenzperiode,
  • 000: Verarbeitung der 8fachen Periode der Referenzperiode.
  • Die drei folgenden Bits fff codieren die Phasenbeschränkung des vierten Befehlstyps CO4.
  • Hier die Bedeutungen der verwendeten Codes:
  • 000: nicht verwendeter Befehlstyp,
  • 001: Phaseninkrement einer Basisperiode in bezug auf die Phasenbeschränkung des dritten Befehlstyps,
  • 010: Phaseninkrement von zwei Basisperioden in bezug auf die Phasenbeschränkung des dritten Befehlstyps,
  • 011: Phaseninkrement von drei Basisperioden in bezug auf die Phasenbeschränkung des dritten Befehlstyps,
  • 100: Phaseninkrement von vier Basisperioden in bezug auf die Phasenbeschränkung des dritten Befehlstyps,
  • 101: Phaseninkrement von fünf Basisperioden in bezug auf die Phasenbeschränkung des dritten Befehlstyps,
  • 110: Phaseninkrement von sechs Basisperioden in bezug auf die Phasenbeschränkung des dritten Befehlstyps,
  • 111: Phaseninkrement von sieben Basisperioden in bezug auf die Phasenbeschränkung des dritten Befehlstyps.
  • Die drei folgenden Bits ggg codieren die Periode des vierten Befehlstyps CO43.
  • Hier die Bedeutungen der verwendeten Codes:
  • 001: Verarbeitung der Referenzperiode,
  • 010: Verarbeitung der 2fachen Periode der Referenzperiode,
  • 011: Verarbeitung der 3fachen Periode der Referenzperiode,
  • 100: Verarbeitung der 4fachen Periode der Referenzperiode,
  • 101: Verarbeitung der 5fachen Periode der Referenzperiode,
  • 110: Verarbeitung der 6fachen Periode der Referenzperiode,
  • 111: Verarbeitung der 7fachen Periode der Referenzperiode,
  • 000: Verarbeitung der 8fachen Periode der Referenzperiode.
  • Fig. 3 zeigt ein Schema eines Beispiels einer Ablaufsteuerungsvorrichtung SEQ, die die soeben beschriebene Sequentialisierung ausführen kann.
  • Die Ablaufsteuerungsvorrichtung SEQ enthält eine Vorrichtung CPH, die eine sogenannte momentane Phase liefert, einen ersten Teiler D0, der dem ersten verarbeiteten Befehlstyp zugeordnet ist, und eine Gesamtheit aus Vorteiler und Teiler (PD1, D1), (PD2, D2), (PD3, D3), die jedem der anderen zu verarbeitenden Befehlstypen zugeordnet ist.
  • Die Vorrichtung CPH, die die momentane Phase liefert, empfängt Impulse von einem Basistakt hb, der mit der Basisfrequenz schwingt. Im beschriebenen Beispiel ist diese Vorrichtung ein Zähler CPH mit Sättigung, d. h., daß er nach dem Zurücksetzen auf null eine Zählsequenz erzeugt, bis jede der Gesamtheiten aus Vorteiler und Teiler mit der korrekten Phasenbeschränkung gestartet ist.
  • Bei Ausgabe dieser Zählsequenz bleibt sie in ihrem Endzustand blockiert und kann nur durch einen geeigneten Befehl erneut initialisiert werden, der eine erneute allgemeine Synchronisation des Eingangs/Ausgangs-Controllers CO sein kann oder von einer optionalen Rücksetzvorrichtung REC kommen kann, die anormale Ereignisse erfaßt wie beispielsweise die Verarbeitung von mehr als einem Befehlstyp zu einem gegebenen Zeitpunkt oder zu Zeitpunkten, die gemeinsamen Vielfachen der Gesamtheit der Perioden der verschiedenen Befehlstypen entsprechen, was eine häufigere Neuinitialisierung ermöglicht.
  • Der erste Teiler D0 ist ein Teiler des Basistakts hb. Er empfängt den Wert aaa der Referenzperiode und liefert Impulse, die die Referenzperiode und die Referenzphase besitzen. Diese Impulse entsprechen Zeitpunkten des Beginns der Verarbeitung der Befehle des ersten Typs und besitzen eine Dauer, die gleich der Dauer der Basistaktperiode ist.
  • Jede Gesamtheit aus Vorteiler und Teiler (PD1, D1), (PD2, D2), (PD3, D3) empfängt außerdem den Basistakt hb. Jeder Vorteiler PD1, PD2, PD3 empfängt den Wert der Referenzperiode aaa und ein sich aus dem Vergleich zwischen der Phasenbeschränkung des zugeordneten Befehlstyps und der momentanen Phase ergebendes Startsignal.
  • Jeder Vorteiler PD1, PD2, PD3 erzeugt für den zugeordneten Teiler ein Signal mit einer Periode, die gleich der Referenzperiode ist, und einer Phase, die der Phasenbeschränkung des zugeordneten Befehlstyps entspricht.
  • Jeder Teiler D1, D2, D3 empfängt ferner den Wert der Periode des zugeordneten Befehlstyps. Jeder Teiler D1, D2, D3 erzeugt folglich periodische Impulse mit einer Dauer, die gleich einer Basisperiode ist, wobei die Impulse die Periode und die Phasenbeschränkung des zugeordneten Befehlstyps besitzen. Diese Impulse entsprechen den Zeitpunkten des Beginns der Verarbeitung des zugeordneten Befehlstyps.
  • Jedem Vorteiler PD1 bis PD3 ist ein Komparator C1 bis C3 zugeordnet, der ihm das Startsignal liefert. Jeder Komparator C1, C2, C3 empfängt die momentane Phase, die er mit der Phasenbeschränkung des zugeordneten Befehlstyps in bezug auf die Referenzphase vergleicht. Der erste Komparator C1 empfängt direkt den Wert des Phaseninkrements bbb in bezug auf die Referenzphase, wobei dieser Wert der Phasenbeschränkung des zweiten verarbeiteten Befehlstyps CO2 entspricht.
  • Für die anderen Befehlstypen CO3, CO4 mit Rang größer als zwei arbeitet jeder Komparator C2, C3 mit einem Addierer A1, A2 zusammen. Jeder Addierer A1, A2 liefert an den Komparator C2, C3 die Phasenbeschränkung des zugeordneten Befehlstyps in bezug auf die Referenzphase. Jeder Addierer A1, A2 empfängt die Phasenbeschränkung des verarbeiteten Befehlstyps mit dem vorhergehenden Rang und den Wert des Phaseninkrements ddd, fff in bezug auf diese Phasenbeschränkung.
  • Der Eingangs/Ausgangs-Controller enthält außerdem Steuerungsmittel MG für den Speicher PROM, die einen Pufferblock BT besitzen, der durch die Ablaufsteuerungsvorrichtung SEQ und die Fernsteuerungsmittel SP der Pseudobefehle ferngesteuert wird. Dieser Pufferblock BT akkumuliert im beschriebenen Beispiel vier aufeinanderfolgende, im Speicher PROM gespeicherte Bytes, derart, daß eine insbesondere für die Codeanalysevorrichtung DAC verwendbare Befehlstypentität gebildet wird.
  • Die Zentraleinheit UC kann das Fernladen des Speichers PROM fernsteuern. Die Steuerungsmittel MG für den Speicher PROM enthalten eine Ablaufsteuerungsvorrichtung SEQP des Speichers, die über eine serielle Eingangsleitung Ise Befehle zum Löschen des gesamten Speichers oder eines Teils des Speichers PROM und/oder Befehle zum Laden ausgehend von einer sich im Parameter des Befehls befindenden Basisadresse empfängt. Diese Basisadresse wird an den Zugriffszeiger POIN übertragen. Im Fall eines Löschbefehls erzeugt die Ablaufsteuerungsvorrichtung SEQP die spezifische Sequenz zum kompletten oder blockweisen Löschen ausgehend von der Basisadresse.
  • Nach einem Ladebefehl empfängt die Ablaufsteuerungsvorrichtung SEQP über die serielle Leitung ein oder mehrere Wörter mit 32 Bits, die sie ausgehend von der Basisadresse unter Berücksichtigung der Programmiersequenz einträgt. Falls beim Schreiben ein Problem erkannt wird, ist eine Aktualisierung einer Speichervorrichtung ST für begegnete Anomalien vorgesehen.
  • Die Codeanalysevorrichtung DAC enthält eine Befehlsdecodierungsvorrichtung DEC, die die Bits mit Rang 0 bis 9 der Befehle nach Priorität auswertet. Die Bits mit Rang 0 bis 7 werden analysiert, um die geeigneten Befehle zur Ausführung der pro Befehl enthaltenen Aktion zu erzeugen. Die Bits 8 und 9 des Befehls werden je nach ihrer Herkunft unterschiedlich geprüft, da sie nicht dasselbe ausdrücken, wie oben beschrieben wurde. Diese Befehle werden zur betreffenden Schnittstellenvorrichtung DI gesendet, die auch die Werte der Parameter empfängt.
  • Außerdem sind in der Codeanalysevorrichtung DAC Sicherheitsblöcke SEC vorgesehen. Diese Blöcke prüfen, ob die Kohärenzkriterien wie etwa die ungerade Parität der Befehle oder Pseudobefehle erfüllt sind und die Sicherheit des Ablaufs der vom Speicher PROM ankommenden Befehle oder Pseudobefehl gewährleistet ist.
  • Die vom Speicher PROM stammenden Pseudobefehl laufen vor ihrer Decodierung in einen Pufferblock BTA, der so viele Puffer besitzt, wie es Pseudobefehlstypen gibt.
  • Der Inhalt der Speichervorrichtung ST für von der Codeanalysevorrichtung DAC und der Ablaufsteuerungsvorrichtung SEQP im Verlauf ihres Betriebs erfaßte Anomalien kann an die Zentraleinheit UC auf deren Anforderung oder durch Ausführung eines vom Speicher PROM stammenden Befehls übertragen werden. Diese Übertragung erfolgt nur über eine der Übertragungsleitungen, wobei im beschriebenen Beispiel angenommen wird, daß dies die serielle Ausgangsleitung Iss2 ist. Die Speichervorrichtung ST kann bei einer Neuinitialisierung des Eingangs/Ausgangs-Controllers oder durch einen dedizierten Befehl auf null zurückgesetzt werden.

Claims (28)

1. Eingangs/Ausgangs-Controller, der dazu bestimmt ist, mit einer Zentraleinheit (UC) eines mit elektronischen Peripheriegeräten (EQ) kommunizierenden Rechners zusammenzuarbeiten, und einerseits mit der Zentraleinheit (UC) und andererseits mit den elektronischen Peripheriegeräten (EQ) verbunden ist, dadurch gekennzeichnet, daß die Verbindung mit der Zentraleinheit (UC) mit wenigstens einer seriellen Eingangsleitung (Ise) und wenigstens einer seriellen Ausgangsleitung (Iss1, Iss2) verwirklicht ist, daß er Befehle empfängt, die mehreren Typen zugeordnet sind, die in Abhängigkeit von der Herkunft der Befehle, d. h. von der Zentraleinheit (UC) oder von einem Speicher (PROM) außerhalb der Zentraleinheit, und dann, wenn die Befehle von dem Speicher (PROM) außerhalb der Zentraleinheit ankommen, in Abhängigkeit von ihren Formaten definiert sind, wobei ein erster Typ (CO4) von der Zentraleinheit (UC) über die serielle Eingangsleitung (Ise) ankommt und wenigstens ein zweiter Typ (CO1, CO2, CO3) von dem Speicher (PROM) außerhalb der Zentraleinheit ankommt, und daß er sie mittels einer Codeanalysevorrichtung (DAC) ausführt, die durch eine Ablaufsteuerungsvorrichtung (SEQ) getaktet wird, wobei die Ablaufsteuerungsvorrichtung (SEQ) dann, wenn der Eingangs/Ausgangs- Controller (CO) Befehle von n Typen zu verarbeiten hat, die Verarbeitungszeit für die Befehle in n + 1 Schlitze unterteilt, wobei n eine ganze Zahl größer oder gleich zwei ist, wobei n dieser gleichen Schritte für die aufeinanderfolgende Verarbeitung jedes der n Typen von Befehlen verwendet werden und der letzte Schlitz mit programmierbarer Dauer, die eventuell null ist, die Einstellung des Sequentialisierungstakts ermöglicht, wobei die Verarbeitung bei Ausgabe des letzten Schlitzes erneut beginnt.
2. Eingangs/Ausgangs-Controller nach Anspruch 1, dadurch gekennzeichnet, daß bestimmte Befehle eines oder mehrerer Typen (CO1, CO2, CO3), die vom Speicher (PROM) ankommen, Pseudobefehle sind, die aus Listen analoger Werte gebildet sind, die im Speicher (PROM) gespeichert sind, wobei die verschiedenen Typen Listen von Werten unterschiedlicher Arten entsprechen.
3. Eingangs/Ausgangs-Controller nach Anspruch 1, dadurch gekennzeichnet, daß bestimmte Befehle, die vom Speicher (PROM) ankommen, Sequenzen bilden, die nach dem Empfang eines Synchronisationsbefehls ausgeführt werden.
4. Eingangs/Ausgangs-Controller nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die Ablaufsteuerungsvorrichtung (SEQ) der Verarbeitung von Befehlen entsprechend ihrem Typ gleiche Zeitschlitze zuweist, wobei jedem Befehlstyp eine Auftrittsperiode zugeordnet ist, wobei der erste verarbeitete Befehlstyp (CO1) die kleinste Periode besitzt, wobei diese Periode Referenzperiode genannt wird, und eine Referenzphase besitzt, während die anderen Befehlstypen (CO2, CO3, CO4) eine Phasenbeschränkung in bezug auf die Referenzphase besitzen, wobei diese anderen Befehlstypen mit einem Rang verarbeitet werden, der von der zunehmenden Größe ihrer Phasenbeschränkung abhängt, wobei ihre Periode ein Vielfaches der Referenzperiode ist.
5. Eingangs/Ausgangs-Controller nach Anspruch 4, dadurch gekennzeichnet, daß für die Referenzphase nach Konvention der Wert null gewählt wird.
6. Eingangs/Ausgangs-Controller nach einem der Ansprüche 4 oder 5, dadurch gekennzeichnet, daß die Referenzperiode ein Vielfaches einer Dauer, einer sogenannten Basisperiode, ist, die der Zugriffszeit auf einem Befehl im Speicher (PROM) entspricht.
7. Eingangs/Ausgangs-Controller nach einem der Ansprüche 4 bis 6, dadurch gekennzeichnet, daß die Phasenbeschränkung des zweiten verarbeiteten Befehlstyps (CO2) durch ein Phaseninkrement in bezug auf die Referenzphase gegeben ist.
8. Eingangs/Ausgangs-Controller nach einem der Ansprüche 4 bis 7, dadurch gekennzeichnet, daß die Phasenbeschränkung der Befehlstypen mit Rang größer als zwei durch ein Phaseninkrement in bezug auf die Phasenbeschränkung des verarbeiteten Befehlstyps des vorhergehenden Rangs gegeben ist.
9. Eingangs/Ausgangs-Controller nach einem der Ansprüche 4 bis 8, dadurch gekennzeichnet, daß die Ablaufsteuerungsvorrichtung (SEQ) umfaßt:
- eine Vorrichtung (CPH), die eine sogenannte momentane Phase anhand eines Basistakts (hb), dessen Periode der Zugriffszeit auf einen Befehl im Speicher (PROM) entspricht, liefert,
- einen ersten Teiler (D0) des Basistakts (hb), der zusätzlich zu dem Basistakt (hb) den Wert (aaa) der Referenzperiode empfängt und Impulse erzeugt, die die Referenzperiode und die Referenzphase besitzen;
- eine Gesamtheit aus Vorteiler (PD1, PD2, PD3) und Teiler (D1, D2, D3), die jeweils einem der anderen zu verarbeitenden Befehlstypen (CO2, CO3, CO4) zugeordnet ist und den Basistakt (hb) und die Referenzperiode empfängt,
wobei jeder Vorteiler (PD1, PD2, PD3) den Wert der Referenzperiode und ein Startsignal, das sich aus dem Vergleich zwischen der Phasenbeschränkung des zugeordneten Befehlstyps und der momentanen Phase ergibt, empfängt und für den Teiler (D1, D2, D3) derselben Gesamtheit, zu der er gehört, ein Periodensignal erzeugt, das gleich der Referenzperiode ist und eine Phase hat, die der Phasenbeschränkung des zugeordneten Befehlstyps entspricht,
wobei jeder Teiler (D1, D2, D3) Impulse erzeugt, die die Periode und die Phasenbeschränkung des zugeordneten Befehlstyps besitzen.
10. Eingangs/Ausgangs-Controller nach Anspruch 9, dadurch gekennzeichnet, daß die Vorrichtung, die die momentane Phase (CPH) liefert, ein Zähler mit Sättigung ist, der den Basistakt (hb) empfängt.
11. Eingangs/Ausgangs-Controller nach Anspruch 10, dadurch gekennzeichnet, daß der Zähler mit Sättigung entweder dann auf null zurückgesetzt wird, wenn der Eingangs/Ausgangs-Controller neu gestartet wird, oder dann, wenn von einer Rücksetzvorrichtung (REC) ein Signal geliefert wird.
12. Eingangs/Ausgangs-Controller nach einem der Ansprüche 9 bis 11, dadurch gekennzeichnet, daß jedem Vorteiler (PD1, PD2, PD3) ein Komparator (C1, C2, C3) zugeordnet ist, der an ihn das Startsignal liefert, wobei jeder Komparator die momentane Phase und die Phasenbeschränkung in bezug auf die Referenzperiode des zugeordneten Befehlstyps empfängt.
13. Eingangs/Ausgangs-Controller nach Anspruch 12, dadurch gekennzeichnet, daß der erste Komparator (C1) direkt den Wert (bbb) des Inkrements der Phase des zweiten Befehlstyps in bezug auf die Referenzphase empfängt.
14. Eingangs/Ausgangs-Controller nach einem der Ansprüche 12 oder 13, dadurch gekennzeichnet, daß den anderen Komparatoren (C2, C3) jeweils ein Addierer (A1, A2) zugeordnet ist, wobei jeder Addierer die Phasenbeschränkung in bezug auf die Referenzphase des zugeordneten Befehlstyps liefert und die Phasenbeschränkung des verarbeiteten Befehlstyps mit dem vorhergehenden Rang und den Wert des Phaseninkrements in bezug auf die genannte Beschränkung empfängt.
15. Eingangs/Ausgangs-Controller nach einem der Ansprüche 1 bis 14, dadurch gekennzeichnet, daß ein von einem Pseudobefehl verschiedener Befehl zweiunddreißig Bits enthält, worunter sich ein Befehl mit höchstens acht Bits und ein Parameter mit höchstens einundzwanzig Bits befinden.
16. Eingangs/Ausgangs-Controller nach Anspruch 15, dadurch gekennzeichnet, daß die Werte der Auftrittsperioden und der Phasenbeschränkungen der verschiedenen Befehlstypen in dem Parameter eines oder mehrerer Ladebefehle codiert sind.
17. Eingangs/Ausgangs-Controller nach einem der Ansprüche 2 bis 16, dadurch gekennzeichnet, daß ein Pseudobefehl unter der Steuerung eines Aktivierungsbefehls ausgeführt wird.
18. Eingangs/Ausgangs-Controller nach einem der Ansprüche 2 bis 17, dadurch gekennzeichnet, daß ein Pseudobefehl in zweiunddreißig Bits eine Liste analoger Wert enthält, die in Form von Inkrementen codiert sind.
19. Eingangs/Ausgangs-Controller nach einem der Ansprüche 2 bis 18, dadurch gekennzeichnet, daß ein Pseudobefehl in zweiunddreißig Bits eine Liste analoger Werte enthält, die in Form von Absolutwerten codiert sind.
20. Eingangs/Ausgangs-Controller nach einem der Ansprüche 2 bis 19, dadurch gekennzeichnet, daß er Fernsteuerungsmittel (SP) für Pseudobefehle enthält, die die Aktivierungsbefehle empfangen, die die Codes der Aktivierungsbefehle halten und die bei einem Zugriff auf den Speicher (PROM) mit einem Zugriffszeiger (POIN) geladen werden.
21. Eingangs/Ausgangs-Controller nach Anspruch 20, dadurch gekennzeichnet, daß die Codeanalysevorrichtung (DAC) die Pseudobefehle und die Codes der Aktivierungsbefehle der Fernsteuerungsmittel (SP) der Pseudobefehle empfängt.
22. Eingangs/Ausgangs-Controller nach einem der Ansprüche 1 bis 21, dadurch gekennzeichnet, daß er Steuerungsmittel (MG) für den Speicher (PROM) enthält, die einen Pufferblock (BT) besitzen, der durch die Ablaufsteuerungsvorrichtung (SEQ) ferngesteuert wird.
23. Eingangs/Ausgangs-Controller nach Anspruch 22, dadurch gekennzeichnet, daß der Pufferblock (BT) durch die Fernsteuerungsmittel (SP) der Pseudobefehle ferngesteuert wird.
24. Eingangs/Ausgangs-Controller nach einem der Ansprüche 22 oder 23, dadurch gekennzeichnet, daß die Steuerungsmittel (MG) des Speichers (PROM) eine Ablaufsteuerungsvorrichtung (SEQP) zum Fernladen des Speichers (PROM) enthalten.
25. Eingangs/Ausgangs-Controller nach einem der Ansprüche 17 bis 24, dadurch gekennzeichnet, daß die Codeanalysevorrichtung (DAC) eine Befehlsdecodierungsvorrichtung (DEC) und wenigstens einen Sicherheitsblock (SEC) enthält.
26. Eingangs/Ausgangs-Controller nach einem der Ansprüche 17 bis 25, dadurch gekennzeichnet, daß er eine Vorrichtung (ST) zum Speichern von Anomalien, die von der Codeanalysevorrichtung (DAC) angetroffen werden, enthält.
27. Eingangs/Ausgangs-Controller nach einem der Ansprüche 1 bis 26, dadurch gekennzeichnet, daß er wenigstens eine Schnittstellenvorrichtung (D1) mit den elektronischen Peripheriegeräten (EQ) enthält, die mit den elektronischen Peripheriegeräten (EQ) über wenigstens einen bidirektionalen Schnittstellenpfad (VP1) verbunden ist und insbesondere als paralleler Bus, als Verbindung, die Boolesche Ausdrücke transportiert, als serielle Verbindung oder als Verbindung mit optischem Codierer konfiguriert werden kann.
28. Eingangs/Ausgangs-Controller nach einem der Ansprüche 1 bis 27, dadurch gekennzeichnet, daß er eine Schnittstellenvorrichtung (BIP) mit der Zentraleinheit (UC) enthält, die mit der Zentraleinheit (UC) über die Eingangsleitungen (Ise) und Ausgangsleitungen (Iss1, Iss2) verbunden ist.
DE69710780T 1996-12-20 1997-12-16 Unabhängige, entfernte ein-/ausgabesteuervorrichtung Expired - Fee Related DE69710780T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9615745A FR2757653B1 (fr) 1996-12-20 1996-12-20 Controleur d'entrees-sorties autonome et deporte
PCT/FR1997/002316 WO1998028694A1 (fr) 1996-12-20 1997-12-16 Controleur d'entrees-sorties autonome et deporte

Publications (2)

Publication Number Publication Date
DE69710780D1 DE69710780D1 (de) 2002-04-04
DE69710780T2 true DE69710780T2 (de) 2002-10-17

Family

ID=9498922

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69710780T Expired - Fee Related DE69710780T2 (de) 1996-12-20 1997-12-16 Unabhängige, entfernte ein-/ausgabesteuervorrichtung

Country Status (6)

Country Link
US (1) US6571300B2 (de)
EP (1) EP0946916B1 (de)
CA (1) CA2275945C (de)
DE (1) DE69710780T2 (de)
FR (1) FR2757653B1 (de)
WO (1) WO1998028694A1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2822319B1 (fr) * 2001-03-16 2003-05-30 Thomson Csf Commutateur de trames d'informations de taille variable pour reseaux securitaires embarques
FR2844946B1 (fr) * 2002-03-15 2004-10-22 Thales Sa Procede de selection et de tri de paquets mis a disposition d'un equipement par un reseau de transmission de donnees par paquets
US7818519B2 (en) * 2002-12-02 2010-10-19 Silverbrook Research Pty Ltd Timeslot arbitration scheme
DE102007039425A1 (de) * 2007-08-21 2009-02-26 Beckhoff Automation Gmbh Steuerknoten und Steuerung
FR2933829B1 (fr) * 2008-07-08 2015-08-07 Thales Sa Dispositif et procede de detection de l'origine numerique d'un signal analogique

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4145735A (en) * 1977-02-02 1979-03-20 Nippon Steel Corporation Monitor for priority level of task in information processing system
JPS57209503A (en) * 1981-06-19 1982-12-22 Toyoda Mach Works Ltd Sequence controller
US4771403A (en) * 1984-11-16 1988-09-13 Allen-Bradley Company, Inc. I/O module with multi-function integrated circuits and an isolation interface for multiplexing data between a main processor and I/O devices
JPS63250702A (ja) * 1987-04-07 1988-10-18 Hitachi Ltd シ−ケンスコントロ−ラ
JPH0682320B2 (ja) * 1988-06-08 1994-10-19 日本電気株式会社 データ処理装置
US5257359A (en) * 1989-02-08 1993-10-26 Hitachi Microsystems, Inc. Instruction cache buffer with program-flow control
US5359507A (en) * 1989-04-07 1994-10-25 Mitsubishi Denki Kabushiki Kaisha Sequence controller
US5185880A (en) * 1989-06-05 1993-02-09 Matsushita Electric Industrial Co., Ltd. Stored instructions executing type timing signal generating system
JPH04199204A (ja) * 1990-11-24 1992-07-20 Brother Ind Ltd 加工プログラム入出力装置
FR2676845B1 (fr) 1991-05-23 1993-09-24 Sextant Avionique Dispositif pour la gestion de plusieurs files d'attente independantes dans un espace memoire commun et banalise.
US5270627A (en) * 1991-06-24 1993-12-14 Unilens Corp., U.S.A. Machine tool control system
FR2723222B1 (fr) 1994-07-27 1996-09-27 Sextant Avionique Sa Procede et dispositif de securisation du deroulement de sequences lineaires d'ordres executes par unprocesseur
US5636362A (en) * 1994-09-28 1997-06-03 Intel Corporation Programmable high watermark in stack frame cache using second region as a storage if first region is full and an event having a predetermined minimum priority
US5666292A (en) * 1994-12-13 1997-09-09 Pitney Bowes Inc. External interface unit having message routing and protocol conversion
FR2732526B1 (fr) 1995-03-27 1997-05-30 Sextant Avionique Dispositif de faible cout et integrable pour l'acquisition de signaux electriques selon la norme arinc 429

Also Published As

Publication number Publication date
CA2275945A1 (fr) 1998-07-02
US6571300B2 (en) 2003-05-27
FR2757653B1 (fr) 1999-03-12
FR2757653A1 (fr) 1998-06-26
CA2275945C (fr) 2005-03-22
EP0946916B1 (de) 2002-02-27
DE69710780D1 (de) 2002-04-04
WO1998028694A1 (fr) 1998-07-02
EP0946916A1 (de) 1999-10-06
US20020199127A1 (en) 2002-12-26

Similar Documents

Publication Publication Date Title
DE69229473T2 (de) Verfahren und vorrichtung zum puffern von daten in nachrichtennetzwerkstationen
EP0807883B1 (de) Kommunikationssystem mit Mitteln zum Austausch von Softwareprozessen
DE102008045724B4 (de) Abstimmungstechniken für Schleifenfilter von zeitkontinuierlichen Sigma-Delta-Modulatoren
DE2856483A1 (de) Verbindungseinheit fuer datenverarbeitungssysteme
WO2006069762A1 (de) Verfahren zur konfiguration von feldgeräten
EP0177018A2 (de) Verfahren zur Übermittlung von Daten
DE2755897A1 (de) Ein/ausgabe-system
DE2722124A1 (de) Anordnung zum feststellen des prioritaetsranges in einem dv-system
DE10164456A1 (de) Datenwarteschlangensystem
DE4207158A1 (de) Speicher-zugriffssteuerung
DE69710780T2 (de) Unabhängige, entfernte ein-/ausgabesteuervorrichtung
WO2006069763A1 (de) Verfahren zur konfiguration von feldgeräten
EP0555456B1 (de) Verfahren zur datenübertragung und datenverarbeitungsanlage mit verteilten rechnerknoten
EP3693856A1 (de) Verfahren zum übertragen einer nachricht in einem rechensystem sowie rechensystem
EP1642423A1 (de) Anordnung und verfahren zur verwaltung eines speichers
DE69911000T2 (de) Vorrichtung und Verfahren zur Initialisierung eines verteilten Rechnersystems
DE19534207A1 (de) Verfahren zur Kodierung oder Dekodierung von Protokolldateneinheiten (PDU)
DE69801100T2 (de) Verfahren und vorrichtung zur bearbeitung einer vielzahl von technischen anwendungen mit jeweils eigener sicherheit
EP1242852B1 (de) Vorrichtung und verfahren zur einbindung von automatisierungskomponenten
EP1248430A1 (de) Verfahren und Generierungsmodul zur Ermittlung von Filtermasken zur Relevanzprüfung von Kennzeichnern
DE68928114T2 (de) Bitfolgenverarbeitungsgerät und -verfahren
DE19502828C2 (de) Testmustergenerator für ein Halbleiterschaltungs-Testgerät
EP4266175A1 (de) Verfahren zum rechnergestützten betreiben einer speichereinheit und ausführen von applikationsprogrammen mit speicherüberprüfung auf speicherfehler
DE102017216991B4 (de) Kommunikationsbaustein und Vorrichtung zur Datenübertragung
EP4266176A1 (de) Verfahren zum rechnergestützten betreiben einer speichereinheit und ausführen von applikationsprogrammen mit redundanter datenspeicherung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee