[go: up one dir, main page]

DE2751416A1 - NUMERICAL SYSTEM FOR DATA HANDLING, IN PARTICULAR FOR SPACE VEHICLES - Google Patents

NUMERICAL SYSTEM FOR DATA HANDLING, IN PARTICULAR FOR SPACE VEHICLES

Info

Publication number
DE2751416A1
DE2751416A1 DE19772751416 DE2751416A DE2751416A1 DE 2751416 A1 DE2751416 A1 DE 2751416A1 DE 19772751416 DE19772751416 DE 19772751416 DE 2751416 A DE2751416 A DE 2751416A DE 2751416 A1 DE2751416 A1 DE 2751416A1
Authority
DE
Germany
Prior art keywords
memory
processors
processor
control
task
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
Application number
DE19772751416
Other languages
German (de)
Inventor
Francois Plisson
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.)
Matra SA
Original Assignee
Matra SA
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 Matra SA filed Critical Matra SA
Publication of DE2751416A1 publication Critical patent/DE2751416A1/en
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/74Masking faults in memories by using spares or by reconfiguring using duplex memories, i.e. using dual copies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)

Description

DrF Zumiicinserv. D^. E.Astmann L / O 1 4 I 6 DrF Zumiicinserv. D ^. E. Astmann L / O 1 4 I 6

Di R.Koonios'. - ':·■ ' " '^. Tt. HoUbau fJipl - Ing Γ. K. ._ ■.:■■ Ί ι Ξ jtnstein JUrDi R.Koonios'. - ': · ■' "'^. Tt. HoUbau fJipl - Ing Γ. K. ._ ■.: ■■ Ί ι Ξ jtnstein JUr

V a 1 c .; i λ Ii \.■ . ' t β München 2, Bri>uliau£:trale 4 ' 3 V a 1 c .; i λ Ii \. ■. 't β Munich 2, Bri> uliau £: trale 4' 3

MATRA 0613 77 BMATRA 0613 77 B

Numerisches System zur Datenbehandlung, insbesondere für Raumfahrzeuge.Numerical system for data handling, in particular for space vehicles.

Die Erfindung betrifft die numerischen Systeme zur Datenbehandlung, welche zur Sicherstellung des Ablaufe von Steuervorgängen benutzbar sind. Sie findet eine besondere wichtige, wenn auch nicht ausschließliche, Anwendung in den in ein Raumfahrzeug eingebauten Anlagen» deren eine Aufgabe in der Sicheretellung der Führung besteht.The invention relates to numerical systems for data handling which can be used to ensure that control processes are running. She finds a particular important, though also not exclusive, application in the systems built into a spacecraft, whose one task is to ensure the Leadership exists.

Diese letztere Anwendung zwingt dazu, insbesondere wenn das Raumfahrzeug einen Auftrag langer Dauer von gegebenenfalle mehreren Jahren ausführen soll, zur Benutzung eines Systems mit einer hohen Zuverlässigkeit, insbesondere bei der Ausführung von gewissen Aufgaben, da ein Versagen des Systems, welches ihre Ausführung verhindern würde, den Fehlschlag des Auftrags zur Folge hat. Das Datenbehandlungssystem muß außerdem genügend schnell sein, um alle erforderlichen Steuer- und Kontrollfunktionen während der Perioden sicherzustellen, in welchen die Zahl der zu erfüllenden Aufgaben am größten ist (z.B. bei einer Kontrolle gemäß drei Achsen oder der Einstellung auf eine Umlaufbahn in dem Fall eines Satelitten). Gleichzeitig müssen jedoch das Gewicht und der Energieverbrauch des Systems so klein wie möglich sein.This latter application makes it necessary, especially when the spacecraft has a long duration mission, if any several years to use a system with a high level of reliability, especially when executing certain tasks, since a system failure which would prevent their execution will result in the failure of the job Has. The data handling system must also be fast enough in order to ensure all necessary control and monitoring functions during the periods in which the number of those to be fulfilled Tasks is greatest (e.g. in a three-axis control or in orbit in the case of a satellite). At the same time, however, the weight and energy consumption of the system must be as small as possible.

Es sind bereits in Raumfahrzeuge eingebaute Steuersysteme bekannt, welche ein spezialisiertes Rechengerät enthalten. Um jedoch die Wirkungen des Versagens eines Organs zu begrenzen, müssen die wesentlichen Organe durch ein zweites identisches in Bereitschaft gehaltenes Organ verdoppelt werden, welches bei einemControl systems which are built into spacecraft and which contain a specialized computing device are already known. However, to limit the effects of organ failure, the essential organs must be duplicated by a second identical organ kept in readiness, which is the case with a

809821/0900809821/0900

275U16275U16

-^ - 0613 77 B- ^ - 0613 77 B

Versagen an die Stelle des ersten tritt. Außerdem muß jedesmal, wenn eine neue Anwendung beabsichtigt wird, praktisch der gesamte Aufbau des Systems und seiner Programmbausteine entsprechend den Bedürfnissen der Benutzer neu geplant werden, was die Kosten der Planung und der Ausführung sowie die Gefahren eines Versagens erhöht, da das System selten vollständig bewährt ist. Schließlich muß das gesamte System im Betrieb bleiben, selbst während Perioden geringer Tätigkeit, so daß der Energieverbrauch ständig gleich dem während der Perioden der stärksten Belastung des Systems erforderlichen ist.Failure takes the place of the first. In addition, each time a new application is contemplated, practically the entire Structure of the system and its program modules according to the Rescheduling user needs, increasing the cost of planning and execution and the risk of failure, since the system is seldom fully proven. After all, the entire system must remain operational, even during periods little activity, so that the energy consumption is always equal to that required during the periods of greatest load on the system is.

Ferner ist ein Digitalsystem zur Datenbehandlung mit einem gemeinsamen Speicher und n_ unabhängigen Allzweckprozessoren bekannt (AFIPS joint computer conference 19 75, vol. 44, pp. 551-559: Ornstein "Pluribus - A reliable multiprocessor"), bei welchem jeder dieser Allzwecksprozessoren die gesamte Steuerkapazität des Systems hat und einen eigenen örtlichen Arbeitsspeicher enthält.Furthermore, there is a digital system for data handling with a common memory and n_ independent general purpose processors known (AFIPS joint computer conference 19 75, vol. 44, pp. 551-559: Ornstein "Pluribus - A reliable multiprocessor"), in which each of these general purpose processors has the entire control capacity of the system and its own local one Contains RAM.

Das System enthält mehrere Sammelleitungen, die an sich und wegen der "interface" Leitungen viel Platz einnehmen.The system contains several collecting lines, which in themselves and because of the "interface" lines take up a lot of space.

Die Erfindung bezweckt ein System zur digitalen Datenbehandlung zur Verfügung zu stellen, welches in ein Raumfahrzeug mit kleinen Innenräumen eingebaut werden kann und welches mit hoher Zuverlässigkeit die wesentlichen, ihm obliegenden Aufgaben durchführt. Dies wird dadurch erreicht, dass die Allzweckprozessoren (11, 12, 13), deren Arbeitsspeicher (19) eine zum Aufnehmen der Leitprogramme des Systems ausreichende Kapazität aufweist, sowie der gemeinsame Speicher (16) und Eingangs- bzw. Ausgangsschaltungen mit einer einzigen, in geteilter Zeit arbeitenden Sammelleitung parallel verbunden sind, wobei diese Samuelleitung gegenüber Störungen in den ihr zugeschalteten Systemen abgesichert ist und wobei der gemeinsame Speicher (16) die Leitdaten des Systems sowie die Benutzungsprogramme enthält. The aim of the invention is to provide a system for digital data processing which can be used in a spacecraft can be installed with small interiors and which with high reliability the essentials incumbent on him Performs tasks. This is achieved by having the general purpose processors (11, 12, 13), the working memory (19) of which has sufficient capacity to accommodate the control programs of the system has, as well as the common memory (16) and input and output circuits with a single, in divided Time working collecting line are connected in parallel, whereby this Samuelleitung against disturbances in it switched on Systems is secured and wherein the common memory (16) contains the control data of the system and the user programs.

Die Erfindung macht sich die Tatsachen zu Nutzen, dassThe invention makes use of the facts that

- gegenwärtig die Prozessoren in der Form von wenig Platz beanspruchenden LSI-Schaltungen hergestellt werden können, während die aus elektrischen Leitern bestehenden Sammelleitungen, sowie die aus diskreten Komponenten bestehenden- at present the processors can be manufactured in the form of LSI circuits that take up little space, while the manifolds made up of electrical conductors, as well as those made up of discrete components

809821 /0900809821/0900

- bit- bit

0G13 77 B0G13 77 B

275U16275U16

"interface"-Leitungen nicht im selben Masse miniaturisiert werden können,"Interface" lines are not miniaturized to the same extent can be

- eine Panne selten von der Unterbrechung eines Leiters einer Sammelleitung herrührt.- a breakdown seldom results from the interruption of a conductor in a collecting line.

Die Sammelleitung kann dadurch zuverlässig gemacht werden, dass zwischen diese Sammelleitung und die elektronishcen Komponenten mit denen sie in Verbindung steht ein derartig ausgebildetes Tor oder Gatter zwrschengeschaltet wird, dass bei gleich welcher Natur der Panne des Komponenten oder des Gatters, dieses Gatter ausser Betrieb gesetzt werden kann, ohne dass dadurch der Betrieb der Sammelleitung beeinträchtigt wird.The manifold can be made reliable that between this manifold and the electronics Components with which it is connected a gate or gate designed in this way is interposed, that regardless of the nature of the breakdown of the component or the gate, this gate can be put out of operation, without affecting the operation of the collecting line.

Diese Lösung ist bei weitem der bis jetzt gehandhabten Lösung vorzuziehen, zufolge der die Sammelleitung verdoppelt wurde, was eine übermässige Vervielfältigung der elektrischen Leiter bzw. Drähte nach sich zog.This solution is by far the one that has been used so far The preferred solution, according to which the manifold has been doubled, resulting in an excessive duplication of the electrical conductors or wires.

Durch die erhaltene Parallelbehandlung werden offenbar die Geschwindigkeit und die Zuverlässigkeit gesteigert. Im normalen Betrieb sind die Aufgaben auf die Prozessoren aufgeteilt. Bei einer Störung eines der Prozessoren oder bei einer willkürlichen Abstellung eines von ihnen zur Erhöhung der Lebensdauer und zur Verringerung des Verbrauchs des Systems wird nur die Behandlungsgeschwindigkeit beeinträchtigt, aber alle Aufgaben können — The parallel treatment obtained apparently increases the speed and reliability. in the In normal operation, the tasks are divided between the processors. In the event of a fault in one of the processors or in the event of a arbitrarily disabling one of them to increase the life and reduce the consumption of the system only the speed of treatment is affected, but all tasks can -

809821/0900809821/0900

275U16275U16

- 2 - 0613 77 B - 2 - 0613 77 B

noch erfüllt werden. Das gleiche gilt bei der Außerbetriebsetzung aller Prozessoren außer einem. Bei einer geeigneten Ausbildung des gemeinsamen Speichers hat ein Versagen eines Teils desselben nur die Unmöglichkeit der Ausführung gewisser Aufgaben (z.B. der Vornahme eines besonderen Versuchs) zur Folge. Der wesentliche Teil des gemeinsamen Speichers kann natürlich durch einen in Bereitschaft gehaltenen Teil verdoppelt werden, welcher Im Falle einer Störung des ersten automatisch eingreift.still to be met. The same applies to decommissioning all processors except one. With a suitable design of the common store, only part of it fails result in the impossibility of performing certain tasks (e.g. making a particular attempt). The essential part of the shared memory can of course be doubled by a portion held by, which in the case of a Disturbance of the first intervenes automatically.

Es ist zu bemerken, daß die Parallelschaltung von η Prozessoren an eine gemeinsame Sammelleitung nicht unbedingt das Arbeiten verlangsamt. Die Zeit eines Arbeitsspiels in dem gemeinsamen Speicher ist nämlich im allgemeinen erheblich kurzer als die Dauer eines Prozessorbefehls (im allgemeinen ein Viertel derselben). Wenn daher diese letzteren nicht zu zahlreich sind (nicht mehr als drei in dem angegebenen Beispiel), tritt keine merkliche Verlangsamung der Arbeit der Prozessoren durch Konflikte ein, welche an der Stelle des Zugangs zu der gemeinsamen Sammelleitung erscheinen.It should be noted that the parallel connection of η processors on a common bus does not necessarily mean that Work slows down. This is because the time of a working cycle in the shared memory is generally considerably shorter than that Duration of a processor command (generally a quarter of the same). Therefore, if these latter are not too numerous (not more than three in the example given), there is no noticeable slowdown in the work of the processors due to conflicts that occur appear at the point of access to the common manifold.

Jeder Prozessor wird im allgemeinen durch einen im Handel verfügbaren Mikroprozessor in der Technologie mit komplementären MOS gebildet, z.B. den Mikroprozessor IM 6100 von INTERSIL oder COSMAC von HCA, wenn die erforderlichen Rechnungen mit einem Mikroprozessor mit Worten von acht Bits ausgeführt werden können.Each processor is generally constituted by a commercially available microprocessor in complementary MOS technology, for example the INTERSIL IM 6100 microprocessor or COSMAC from HCA, if the necessary invoices are sent with a Microprocessor can be implemented with words of eight bits.

Zur weiteren Erhöhung der Zuverlässigkeit des Systems ist es zweckmäßig, die Benutzungsaufgaben in unabhängige Moduln zu unterteilen, welche zur Sicherstellung ihres Ablaufs auf kein anderes Programm rechnen, als ein verdoppeltes Programm. Die Verbindung zwischen diesen Moduln , deren jeder auf einer Speicherseite mit geringer Aufnahmefähigkeit (z.B. 1 Kilowort) untergebracht ist, wird durch eine doppelte Aktivität in dem verdoppelten Abschnitt des gemeinsamen Speichere sichergestellt.To further increase the reliability of the system, it is advisable to organize the usage tasks in independent modules to subdivide, which to ensure their expiry do not count on any other program than a doubled program. The connection between these modules, each of which is housed on a memory page with a low capacity (e.g. 1 kilowort) is ensured by a double activity in the doubled portion of the shared memory.

Jeder Prozessor enthält in einem örtlichen Speicher das Programm des Systems, dessen Versagen das Versagen des Systeme zur Folge haben würde. Der Ausfall von einem oder von zwei Prozessoren bewirkt daher nur die Verschlechterung der Leistungen.Each processor contains in a local memory the program of the system, the failure of which the failure of the system would result. The failure of one or two processors therefore only causes a deterioration in performance.

Das System ist im ganzen so ausgebildet, daß die Kapazitäten der Mikroprozessoren soweit wie möglich ausgenutzt werden, um unmittelbar die mit den Randeinheiten verbundenen Eingangs- und Ausgangskanäle zu steuern. Man erzielt hierdurch gleichzeitig eineThe system is designed in such a way that the capacities of the microprocessors are used as much as possible, in order to directly access the input and Control output channels. In this way one achieves one at the same time

809821/0900809821/0900

275U16275U16

2- ß - 0613 77 B2- ß - 0613 77 B

• τ• τ

Materialersparnis und eine Erhöhung der Zuverläßigkeit des Systems.Material savings and an increase in the reliability of the system.

Wenn übrigens nur ein einsiger Prozessor im Betrieb ist, werden alle Aufgaben in Reihe ausgeführt, so daß kein Problem der Parallelausführung von verzweigten Programmen auftritt.By the way, if only one processor is in operation, all tasks are carried out in series, so that there is no problem of parallel execution of branched programs.

Die Erfindung ist nachstehend unter Bezugnahme auf die Zeichnung beispielshalber erläutert.The invention is explained below by way of example with reference to the drawing.

Fig. 1 ist ein Prinzipschema des gesamten Systems.Fig. 1 is a principle diagram of the entire system.

Fig. 2 zeigt Bchematisch die Verteilung der Speicher auf Blocks.Fig. 2 shows schematically the distribution of the memories Blocks.

Das schematisoh in stark vereinfachter Form in Fig. 1 dargestellte System kann als durch folgende Teile gebildet angesehen werden:The schematic in a greatly simplified form in FIG. 1 The system shown here can be seen as consisting of the following parts:

- drei identische nicht spezialisierte Prozessoren 11,- three identical non-specialized processors 11,

12 und 13, welche unabhängig mit einer gemeinsamen Datensammelleitung 14» einer gemeinsamen Adressensammelleitung 13 und einer (nicht dargestellten) Steuersammelleitung verbunden sind;12 and 13, which independently with a common data bus line 14 »a common address bus line 13 and a control bus (not shown) are connected;

- einen gemeinsamen Speicher 16;- a common memory 16;

- Zwischenmoduln Eingang/Ausgang zur Verbindung mit Randeinheiten.- Intermediate modules input / output for connection to edge units.

Diese verschiedenen Bestandteile sind nachstehend nacheinander beschrieben.These various components are described in turn below.

Da die drei Prozessoren identisch sind, genügt die Beschreibung des Prozessors 11. Sein Hauptelement ist ein Mikroprozessor 17» welcher durch integrierte Schaltungen in großem Maßstab LSI gebildet wird. Nachstehend ist angenommen, daß es sich um einen Mikroprozessor INTERSIL IM 6100 A in Schaltungen mit komplementären MOS mit Worten fester Länge von zwölf Bits und einziger Adressierung handelt. Die Ausführungedauer eines Elementarbefehls (Addition einer Ziffer von zwölf Bits) beträgt 5μβ unter der normalen Speisespannung von 5 V. Dieser Mikroprozessor hat den doppelten Vorteil, mit den bewährten Programmbaueteinen verträglich zu sein, welche bereits für das Minirechengerät PDP 8 E entwickelt wurden und in einer militärischen Ausführung verfügbar sind, welche zwischen - 55° C und + 125° C arbeitsfähig ist» d.h. in dem Temperaturbereich, welcher in dem Falle eines Raumfahrzeugs, insbesondere eines Satelitten, angetroffen werden kann.Since the three processors are identical, it will suffice to describe the processor 11. Its main element is a microprocessor 17, which by means of integrated circuits on a large scale LSI is formed. It is assumed below that it is a INTERSIL IM 6100 A microprocessor in circuits with complementary MOS with fixed length words of twelve bits and single addressing. The execution time of an elementary instruction (addition a digit of twelve bits) is 5μβ below the normal supply voltage of 5 V. This microprocessor has the double advantage of being compatible with the tried and tested program modules that have already been developed for the PDP 8 E mini calculator and are available in a military version, which is capable of working between - 55 ° C and + 125 ° C »i.e. in the temperature range, which may be encountered in the case of a spacecraft, particularly a satellite.

Dem mit einem Kristalloszillator 18 versehenen Mikropro-809821/0900The Mikropro-809821/0900 equipped with a crystal oscillator 18

275U16275U16

- 7rt 0613 77 B- 7rt 0613 77 B

zesBor 17 sind ein nicht durch die anderen Prozessoren 12 und 13 zugänglicher örtlicher Speicher 19» ein Eontrollgerät 20 zur Ausdehnung der Adressen des Speichers (z.B. INTERSIL Typ IM 6102) und eine Vorrichtung 21 zur Überwachung des Zustande des Prozessors des im allgemeinen "Wachthund" genannten Typs zugeordnet. Hierzu tritt ein Zwischenmodul mit den Sammelleitungen, welcher dem Prozessor 11 geetattet, den gemeinsamen Speicher 16 und die Eingangsund Ausgangsrandeinheiten in Teilzeit zu steuern.zesBor 17 are not used by the other processors 12 and 13 accessible local memory 19 »a control device 20 for expansion the addresses of the memory (e.g. INTERSIL type IM 6102) and a device 21 for monitoring the status of the processor of the type generally referred to as "watchdog". For this there is an intermediate module with the bus lines, which the processor 11 geetattes, the common memory 16 and the input and Control exit edge units part-time.

Der örtliche Speicher 19 erhält eine von der vorgesehenen Anwendung abhängende Kapazität. Dieser Speicher 19 enthält in allen Fällen einen Randomepeicher und einen gegebenenfalls neuprogrammierbaren Festspeicher 22. In einem typischen Fall hat der Festspeicher 22 eine Kapazität von 1 Kilowort von zwölf Bits. Es kann sich insbesondere um einen neuprogrammierbaren Festspeicher (oder PROM) mit komplementären MOS des Typs INTERSIL IM 6312 AM handeln. Der Festspeicher soll das Leitprogramm des Prozessors (allgemeines Kontrollgerät der Aufgaben, Kontrollgerät der inneren Unterbrechungen, Behandlung des unmittelbaren Zugriffs zu dem Speicher oder DMA, gemeinsamen Unterroutinen, Befehlskodes usw.) bewahren. Der Randomspeicher kann z.B. durch drei Speicher 23 des Typs IM 6561 gebildet werden, deren jeder für 256 Worte von vier Bits bestimmt ist.The local memory 19 receives a capacity that depends on the intended application. This memory 19 contains in all Cases a random memory and possibly a reprogrammable one Read Only Memory 22. In a typical case, read only memory 22 has a capacity of 1 kiloword of twelve bits. It can in particular be a reprogrammable read-only memory (or PROM) with complementary MOS of the INTERSIL IM 6312 AM type Act. The permanent memory should be the control program of the processor (general control device of tasks, control device of internal Interrupts, handling of immediate access to the memory or DMA, common subroutines, instruction codes, etc.) maintain. The random memory can, for example, consist of three memories 23 of the Type IM 6561, each of which is intended for 256 words of four bits.

Das Kontrollgerät 20 zur Ausdehnung der Speicheradressen enthält einen Zeitgeber in Echtzeit und eine integrierte Logik direkten Zugriffs zu dem Speicher. Dieses Kontrollgerät ermöglicht die Vergrößerung der Adressierungskapazität des Prozessors. Getrennt hat nämlich der Mikroprozessor eine auf vier Kiloworte von 12 Bite beschränkte Adreesierungskapazität, was ungenügend ist. Beispielshalber sei angenommen, daß das Kontrollgerät 20 vorgesehen ist, um diese Kapazität auf 32 Kiloworte zu bringen. Der Zeitgeber in Echtzeit wird durch den zugehörigen Mikroprozessor geeteuert. Er ist daher unabhängig von dem Rest des Systems. Das Vorhandensein dieses Zeitgebers, welcher insbesondere zur Ansammlung in Echtzeit oder als Taktgeber benutzbar iet, beaufschlagt eine Schaltung zur Anforderung einer Unterbrechung, welche von den äußeren Unterbrechungsschaltungen unabhängig ist und gestattet, einen beliebigen der Prozessoren 11, 12 und 13 unabhängig von den beiden anderen arbeiten zu lassen.The control device 20 for expanding the memory addresses contains a timer in real time and an integrated logic direct access to the memory. This control device enables the addressing capacity of the processor to be increased. Separated This is because the microprocessor has an addressing capacity limited to four kilowords of 12 bits, which is insufficient. For the sake of example, it is assumed that the control device 20 is provided in order to bring this capacity to 32 kilowords. The timer is controlled in real time by the associated microprocessor. It is therefore independent of the rest of the system. The presence of this timer, which in particular is used to accumulate can be used in real time or as a clock a circuit for requesting an interrupt, which of the external interruption circuits are independent and permitted, any of the processors 11, 12 and 13 independently of the to let the other two work.

809821/0900809821/0900

-ί--ί-

275U16275U16

0613 77 B0613 77 B

Der Prozessor 11 enthält noch einen Zwischenmodul mit dem gemeinsamen Speicher und mit den Sammelleitungen. Dieser Zwischenmodul enthält einen Satz von Toren 25» welche eine Übertragung von Daten mit der Datensammelleitung 14 in beiden Richtungen zulassen. Ein zweiter Satz von Toren 26, welcher nur zur Vornahme der Übertragung von dem Prozessor aus bestimmt ist, ist zwischen der inneren Sammelleitung 27 des Prozessors, welche den Mikroprozessor 17 sowie die Speicher 22 und 23 versorgt, und der Adressen-Sammelleitung 15 angeordnet. Die so übertragenen Daten bilden die am wenigsten maßgebenden Bits einer Adresse in dem gemeinsamen Speicher, während die maßgebenderen Bits von dem Ausdehnungskontrollgerät 20 über einen Satz von zusätzlichen Toren 28 übertragen werden. Nachstehend ist als Beispiel angenommen, daß man so durch Worte von fünfzehn Bits dargestellte Adressen erhält.The processor 11 also contains an intermediate module with the common storage tank and with the manifolds. This intermediate module contains a set of gates 25 which allow data to be transmitted with the data bus 14 in both directions allow. A second set of ports 26, which is only intended for making the transfer from the processor, is between the inner bus 27 of the processor, which supplies the microprocessor 17 and the memories 22 and 23, and the address bus 15. The data transmitted in this way form the least significant bits of an address in the shared memory, while the more significant bits are transmitted from the expansion control device 20 via a set of additional ports 28 will. It is assumed below as an example that addresses thus represented by words of fifteen bits are obtained.

Der gemeinsame Speicher 16 weist wie jeder örtliche Speioher Randomspeicher oder RAM (welche im allgemeinen Speicher mit komplementären MOS mit geringem Verbrauch in dem Fall der Benutzung im Raum sind) und neuprogrammierbare Festspeicher oder PROM (im allgemeinen zweipolige Speicher, welche mit einer Schaltung zur Unterbrechung der Speisung versehen sind, wenn es wichtig ist, den Verbrauch zu verringern).The shared memory 16, like any local memory, has random memory or RAM (which is generally memory with complementary MOS with low consumption in the case of use in the room are) and reprogrammable read-only memories or PROM (generally two-pole memories, which are provided with a circuit for interrupting the supply if it is important is to reduce consumption).

Zur Verringerung der Folgen eines Versagens ist der gemeinsame Speicher zweckmäßig in eine Reihe von getrennten Blocks unterteilt, wobei jede Aufgabe vollständig in einem einzigen Block enthalten ist und ohne Eingreifen des Monitore eines der Prozessoren nicht zu einem anderen Block gelangen kann. Ferner werden die Daten des Systeme, deren Verschwinden das vollständige Versagen der Vorrichtung zur Folge haben würde, in einem verdoppelten Block zusammengefaßt, so daß man die erforderliche Zuverlässigkeit erhält.In order to reduce the consequences of a failure, the common memory is expediently divided into a number of separate ones Blocks, with each task completely contained in a single block and without the intervention of any of the monitors Processors cannot get to another block. Furthermore, the data of the system, the disappearance of which is complete Failure of the device would result in a duplicated block so that the required reliability is obtained.

Bei der in Fig. 1 dargestellten AusfUhrungsform enthält der gemeinsame Speicher 16:In the embodiment shown in FIG. 1, the common memory 16 contains:

- einen Speioher 36 für die Daten des Systems (insbesondere eine Aktivitätetabeile der Aufgaben und Veränderlichen des Systems). Dieser Speicher 36 und sein Adressendekoder 37 werden durch einen Speicher und einen Dekoder verdoppelt, welche gleich ausgebildet aber nicht dargestellt sind, welche normalerweise in Bereitschaft stehen aber im Falle einer Störung mittels einer äue-a memory 36 for the data of the system (in particular an activity table of tasks and variables of the system). This memory 36 and its address decoder 37 are duplicated by a memory and a decoder which are the same designed but not shown, which are normally on standby but in the event of a fault by means of an external

809821/090 0809821/090 0

275U16275U16

- 0613 77 B - 0613 77 B

seren Steuerung eingesetzt werden. Der Speicher 36 enthält z.B. eine Seite in RAM 38 von 1 Kilowort von zwölf Bite (z.B. IM 6508 von INTERSIL) und drei Seiten in ROM oder PROM 39 von je 1 Kilowort (z.B. IM 5624). Die Seite in RAM 38 ist so vorgesehen, daß sie nur über eine Trennmarke zugänglich ist, so daß das Auslöschen ihres Inhalts durch eine falsche Adressierung vermieden wird. Die Zeit des Zugangs zu dieser Seite durch einen der Prozessoren wird durch die entsprechende Wachthundschaltung geprüft, welche einen RückweisungsVorgang auslöst, wenn die zugeteilte Dauer überschritten wird;their control can be used. The memory 36 contains e.g. a page in RAM 38 of 1 kiloword of twelve bits (e.g. IM 6508 from INTERSIL) and three pages in ROM or PROM 39 of 1 kiloword each (e.g. IM 5624). The page in RAM 38 is designed to be accessible only through a split marker so that the erasure their content is avoided by incorrect addressing. The time of access to this page by one of the processors will be checked by the corresponding watchdog circuit, which one Rejection process triggers if the allocated duration is exceeded will;

einen die Benutzungsprogramme enthaltenden Speicher, welcher nicht verdoppelt ist und durch Blocks 29 gebildet wird, deren jeder mit einem Adresseudekoder 30 versehen ist. In FJg. 1 ist ein einziger dieser Blocke dargestellt. Er enthält außer dem Dekoder 24 eine in RAM ausgeführte Seite von 1 Kilowort und drei Seiten von 1 Kilowort in ROM oder PROM. Die Unterteilung in getrennte Seiten ermöglicht einen besseren Schutz des Speichers.a memory containing the user programs, which is not duplicated and is formed by blocks 29, each of which is provided with an address decoder 30. In Fig. 1 a single one of these blocks is shown. In addition to the decoder 24, it contains a page of 1 kiloword and three in RAM Pages of 1 kiloword in ROM or PROM. The division into separate pages enables better protection of the memory.

Der gemeinsame Speicher enthält ebenfalls die bereits in dem örtlichen Speicher enthaltenen Befehlskodes.The shared memory also contains the command codes already contained in the local memory.

Fig. 2 zeigt schematisch den so erhaltenen Aufbau. In dieser Figur ist mit"Block Null" der örtliche Speicher eines jeden Prozessors bezeichnet.(welcher nur für den entsprechenden Mikroprozessor zugänglich ist), mit "Block 1" der die Daten dee Systems enthaltenden Speicher (d.h. der Speicher 36) und mit "Blocks 2 bis 7" dio Speicher 29 zur Aufnahme der Benutzungsprogramme.Fig. 2 shows schematically the structure thus obtained. In this figure, "Block Zero" is everyone's local memory Processor (which is only accessible for the corresponding microprocessor), with "Block 1" which the data of the system containing memory (i.e. the memory 36) and with "Blocks 2 to 7" the memory 29 for receiving the usage programs.

Der Zugang zu den Blocks 2 bis 7, ist auf die drei Prozessoren 11, 12 und 13 aufgeteilt. Wie oben angegeben, ist die Ausbildung so getroffen, daß das Versagen eines Blocks eine geringste Zahl von Aufgaben betrifft. Hierfür sind die Programme strukturiert. Jede Aufgabe ist vollständig in einem Block enthalten, und keine Aufgabe kann unmittelbar zu einem anderen Block gelangen. Die Ausführung einer Aufgabe hängt von keiner anderen nicht in einem Speicher verdoppelten Aufgabe ab, so daß man parallele Behandlungsketten erhält. Außerdem enthält jeder Block einen Modul "Monitor-Anruf" zur Veränderung des Programms eines der Prozessoren derart, daß sein Monitor-Programm wirksam gemacht wird. Schließlich sind die Programmbausteine so ausgebildet, daß eine Aufgabe, welche von einer anderen Aufgabe abhängt, möglichst in den gleichen BlookAccess to blocks 2 to 7 is divided between the three processors 11, 12 and 13. As stated above, the training is so chosen that the failure of a block affects a minimal number of tasks. The programs are structured for this purpose. Each task is completely contained in a block, and no task can go directly to another block. Execution a task does not depend on any other task that is not duplicated in a memory, so that one has parallel chains of treatment receives. In addition, each block contains a "monitor call" module to change the program of one of the processors in such a way that its monitor program is activated. After all, they are Program modules designed so that a task which depends on another task, if possible, in the same blook

809821/0900809821/0900

275U16275U16

-JBf- 0613 77 B-JBf- 0613 77 B

ΛΑΛΑ

eingegeben wird. 'is entered. '

Nachstehend ist beispielshalber angegeben, welches die typischen Funktionen sind, welche in einem gemeinsamen Speicher im Falle der Benutzung der Vorrichtung an einem gemäß den drei Achsen zu stabilisierenden geostationären Satelliten gespeichert sind.The following is an example of what the typical functions are which are in a shared memory if the device is used, stored on a geostationary satellite to be stabilized along the three axes are.

Der den Speicher des Systems bildende Block 1 enthält die für das Arbeiten der gesamten Vorrichtung erforderlichen Daten (Zustand des Satelliten und der Randeinheiten, Zustand der Aufgaben und der Prozessoren usw.). Die Blocks 2 bis 7 können insbesondere die Programmbausteine der typischen Funktionen zur Kontrolle der Lage enthalten:Block 1, which forms the memory of the system, contains the data necessary for the operation of the entire device (State of the satellite and the edge units, state of the tasks and the processors, etc.). Blocks 2 to 7 can in particular contain the program modules for the typical control functions able to include:

a) die Unterroutinen der allgemeinen Programmbausteine, numerische Filter erster und zweiter Ordnung, die Folge der Betätigung der Organe zur Veränderung der Lage durch Auf-Zu-Sehaltung (welche insbesondere die Verhältnisse der Zyklen und Komparatoren mit doppelter Schwelle enthält),a) the subroutines of the general program blocks, numerical Filters of the first and second order, the consequence of the actuation of the organs to change the position by holding open-close (which in particular contains the ratios of the cycles and comparators with double threshold),

b) die üblichen Routinen zur Kontrolle der Lage, wie:b) the usual routines for checking the situation, such as:

- die Kontrolle bei der Überführung an die gewünschte Stelle,- the control during the transfer to the desired place,

- die Behandlung der von einem von dem Satelliten getragenen Fühler gelieferten Daten (Filterung und Bildung von Befehlen zur Aktivierung von Düsen durch Auf-Zu-Steuerung),- the treatment of the data supplied by a probe carried by the satellite (filtering and generation of commands to activate nozzles by open-close control),

- Kontrolle im normalen Betrieb (Erzeugung der Zahl von Sinusoiden von Perioden von 24 Stunden guter Stabilität, Behandlung der von dem Fühler gelieferten Daten und Bildung der Befehle zur Inetriebsetzung durch Auf-Zu-Steuerung der Motoren der Trägheitsräder und/oder von Düsen, Aufgabe der Überwachung der gesamten Ausrüstungen zur Kontrolle der Lage),- Control in normal operation (generation of the number of sinusoids of periods of 24 hours of good stability, treatment the data supplied by the sensor and generation of the commands for starting up by open-close control of the motors of the inertia wheels and / or nozzles, task of monitoring all the equipment for checking the position),

- Kontrolle während des Haltens an der richtigen Stelle, welche Aufgaben enthält, welohe den im normalen Betrieb zu erfüllenden ahnlich sind, jedoch mit verschiedenen Algorithmen, Überlagerung der Befehle der Steuerung der Umlaufbahn unter den Befehlen der Lagenkontrolle unter Benutzung der gleichen Unterroutine zur Aktivierung.- Control while holding in the right place, which contains tasks which are similar to those to be fulfilled in normal operation, but with different algorithms, overlay the orbit control commands among the attitude control commands using the same activation subroutine.

Schließlich können die Eingangs-Ausgangs-Schaltungen parallel arbeitende Schaltungen und in Reihe arbeitende Schaltungen enthalten. Nachstehend sind nur die parallel arbeitenden Schaltun-Finally, the input-output circuits circuits operating in parallel and circuits operating in series. Below are only the circuits that work in parallel

809821/0900809821/0900

275U16275U16

- y- An 0613 77 B- y- An 0613 77 B

gen kurz beschrieben.gen briefly described.

Die schematisch in Fig. 1 dargestellte Vorrichtung enthält einen oder mehrere Eingangs- und Ausgangskanäle mit Worten von zwälf Bits. Da diese Kanäle identisch sind, ist nur ein einziger Kanal dargestellt.The device shown schematically in FIG. 1 contains one or more input and output channels with words of twelve bits. Since these channels are identical, there is only one Channel shown.

Falls die Mikroprozessoren IM 6100 sind, besteht der Adressenteil der Weisung Eingang/Ausgang aus sechs Bits zur Wahl eines Organs und drei Bits zur Steuerung des Organs. Es können zwei Kanäle vorgesehen werden und als ein und dasselbe Organ betrachtet werden. Die drei Steuerbits werden dann als Unteradresse, Eingangs- oder Ausgangsbefehl und Befehl der Einstellung eines Indikators dekodiert.If the microprocessors are IM 6100, the address part of the input / output instruction consists of six bits to choose from an organ and three bits to control the organ. Two channels can be provided and viewed as one and the same organ will. The three control bits are then used as a sub-address, input or output command and command for setting an indicator decoded.

Dia beiden Kanäle werden parallel mittels ein und desselben Dekoders gesteuert, welcher von der Adressensammelleitung 15 eine von einem beliebigen der Prozessoren 11, 12 und 13 ausgesandte Weisung empfängt. Der geeignete Kanal 33 wird dann erregt und überträgt die empfangenen Daten durch eine Leitung 34 von der Datensammelleitung 14 auf einen Eingange-Ausgangs-Verbinder 35 und von dem Verbinder zu der Leitung. In beiden Fällen wird der Indikator 32 eingestellt.The two channels are made in parallel by means of one and the same Decoder controlled, which of the address bus 15 one sent out from any of the processors 11, 12 and 13 Receives instruction. The appropriate channel 33 is then energized and transmits the received data through line 34 from data bus 14 to input-output connector 35 and from the connector to the line. In both cases, the indicator 32 is set.

Fig. 1 zeigt ferner in stark vereinfachter Weise die Schaltungen zur Behandlung von Unterbrechungen. Es sind zwei UnterbrechungsnivGous vorgesehen, nämlich ein inneres (dem Zeitgeber in Echtzeit eines beliebigen Prozessors vorbehalten^ und ein äußeres , allen Prozessoren gemeinsames (Unterbrechung durch den Benutzer).FIG. 1 also shows, in a greatly simplified manner, the circuits for handling interruptions. There are two interrupt levels provided, namely an inner one (reserved for the real-time timer of any processor ^ and an outer one, common to all processors (user interruption).

Die dargestellte Behend.lungaachaltung enthält ein Unterbrechungsregister 40 mit 12 Bits. Bei Empfang einer Unterbrechungsanforderung auf einer Leitung 41 fragt dieses Register 40 alle Prozessoren mittels einer Steuerlogik 42 und einer Unterbrechungsleitung 43 ab. Alle freien Prozessoren (d.h. die nicht auf einer Aufgabe verriegelten) treten in Konkurrenz. Der erste verfugbare behandelt den Unterbrechungebefehl. Der Modul zur Behandlung der Unterbrechungen in dem Speicher 36 bestimmt die verlangte Aufgabe und trifft je nach der dieser zugeteilten Dringlichkeit folgende Maßnahmen:The Behend.lungaachaltung shown contains an interrupt register 40 with 12 bits. Upon receipt of an interrupt request on a line 41, this register 40 queries everyone Processors by means of a control logic 42 and an interrupt line 43. All free processors (i.e. those not on a Locked task) compete. The first one available deals with the interrupt command. The module for handling the Interrupts in memory 36 determine the task required and, depending on the urgency assigned to it, takes the following Measures:

- er zeigt ein Kennzeichnungsbit in seiner Prioritätstabelle der Aufgaben an,- it shows an identifier bit in its priority table of the tasks

- oder bewirkt die sofortige uni vollständige Ausführung- or causes immediate and complete execution

809821/0900809821/0900

hH 0613 77 B0613 77 B

der Aufgabe, wenn sie kritisch ist.the task when it is critical.

Wie man sieht, können drei kritische Aufgaben gleichzeitig behandelt werden, und es ist nur ein einziges Speicherniveau vorzusehen, was die Programmbaueteine vereinfacht und sie zuverlässiger macht.As can be seen, three critical tasks can be handled at the same time, and there is only a single level of memory to provide, which simplifies the program modules and makes them more reliable.

Es sind z.B. zwölf äußere Unterbrechungslinien 41 vorgesehen. Eine Schaltung 44 zum Bringen auf den letzten Stand bringt die Belegungsangaben von der Datensammelleitung 14 zu dem Register 40.There are, for example, twelve outer break lines 41 intended. A circuit 44 for bringing up to date brings the occupancy information from the data bus 14 to the Register 40.

Es ist noch zu bemerken, daß der Aufbau des Systems das Arbeiten in "unmittelbarem Zugang zu dem Speicher" (DMA) ohne zusätzliche Schaltungen ermöglicht, indem man einen der Prozessoren während eines Bruchteils der Betriebszeit für die Funktion DMA bestimmt. Die Funktion DMA ist unter den Aktivitätsaufgaben, programmiert. Sobald ein Prozessor für eine Folge DMA vorbehalten ist, wird die Unterbrechung des Programms verboten, und die Indikatoren ■des entsprechenden Eingangs-Ausgangs-Kanals werden eingestellt.It should also be noted that the structure of the system allows working in "direct memory access" (DMA) without additional circuitry by using one of the processors determined for the DMA function during a fraction of the operating time. The DMA function is programmed under the activity tasks. As soon as a processor is reserved for a DMA sequence, the interruption of the program is prohibited and the indicators ■ of the corresponding input-output channel are set.

Das System weist schließlich eine nicht dargestellte elektrische Speisung auf. Diese Speisung ist verdoppelt und gestattet, an die Stelle der normalen Speisung im Falle eines Versagens derselben eine Hilfsspeisung durch einen äußeren Befehl zu bringen. Eine Verbindung zwischen der Speisung und den "Wachthund-Schaltungen" eines jeden Prozessors ermöglicht diesen letzteren die Neuinitialisierung der Vorrichtung nachdem,die Hilfsspeisung an die Stelle der ausfallenden Speisung getreten ist.Finally, the system has an electrical supply (not shown). This supply is doubled and allows an auxiliary supply by an external command to replace the normal supply in the event of its failure bring. A connection between the supply and the "watchdog circuits" of each processor enables the latter the re-initialization of the device after the auxiliary supply has taken the place of the failed supply.

Zu den oben beschriebenen Eingangs-Ausgangs-Schaltungen kann natürlich eine Schaltung zur analog-numerischen Umformung hinzugefügt werden, welche ebenfalls parallel an die Sammelleitungen 14 und 15 angeschlossen ist.A circuit for analog-numerical conversion can of course be added to the input-output circuits described above be added, which is also connected in parallel to the manifolds 14 and 15.

Da die Arbeitsweise des Systems aus der obigen Beschreibung hervorgeht, sind hier nur einige allgemeine Angaben über ihre Besonderheiten gemacht.Since the operation of the system is clear from the description above, only some general information about made their peculiarities.

Ss ist zunächst zu bemerken, daß die in der Aktivi-. tätstabelle der Dringlichkeit nach geordneten Aufgaben vier durch Indikatoren bezeichnete Zustände haben können:First of all, it should be noted that those in the activi-. The urgency table can have four states identified by indicators according to tasks:

1. "AKTIV" wenn die Aufgabe gerade ausgeführt wird,1. "ACTIVE" if the task is currently being carried out,

2. "BBRBlT" oder "IH BEREITSCHAFT", wenn sie ausgeführt werden soll, sobald ein Prozessor sie übernehmen kann,2. "BBRBlT" or "IH READINESS" when executed as soon as a processor can take it over,

809821/0900809821/0900

275U16275U16

0613 77 B0613 77 B

3. "INAKTIV", wenn sie sich in keinem der beiden obigen Zustände befindet,3. "INACTIVE" if it is not in either of the above two states,

4. schließlich "TOT", wenn sie nicht in die Zustände (1) und (2) kommen kann, z.B. wenn die entsprechende Aufgabe unmöglich ausgeführt werden kann, um eine Störung zu berücksichtigen. 4. Finally "DEAD" when not in the states (1) and (2) can occur, e.g. if the corresponding task cannot be carried out in order to take a fault into account.

Eine gegebene Aufgabe kann aus dem Zustand (3) in den Zustand (2) durch eine andere Aufgabe oder eine Unterbrechung gebracht werden. Sie wird aus dem Zustand (2) in den Zustand (1) durch den sie behandelnden Prozessor gebracht.A given task can change from state (3) to state (2) by another task or an interruption to be brought. It is brought from state (2) to state (1) by the processor handling it.

Ea oei angenommen, daß zunächst die drei Prozessoren 11, 12 und 13 frei sind. Auf eine Unterbrechungsanforderung hin bewirkt der Monitor eines jeden Prozessors in der Reiherfolge der Dringlichkeit die Ablesung der Aufgaben in dem Zustand "BEREIT" in der Aktivitätstabelle (in dem gemeinsamen Speicher 16). Von den drei Prozessoren übernimmt der erste die Ablesung vornehmende (welcher, wenn die drei Prozessoren im Betrieb sind, dem Zufall nach bestimmt wird, da die Zeitgeber der Kontrollschaltungen 20 asynchron sind) die vordringlichste Aufgabe in dem Zustand "BEREIT", d.h. deren Ausführung angefordert wurde. Der Prozessor reserviert dann den Zugang zu dem Block 1, und wenn er durch eine Unterbrechung erregt wurde, hebt er diese auf. Er prüft, ob sich die Aufgabe noch in dem Zustand "BEREIT" befindet, da ein anderer Prozessor sie seit der ersten Ablesung übernommen haben kann. In diesem Fall gibt der Prozessor den Zugang zu dem Block 1 frei und kehrt in den Zustand des Aufsuchens einer "bereiten" Aufgabe zurück. Wenn sich dagegen die Aufgabe noch in dem Zustand "BEREIT" befindet, verändert der Prozessor den Zustand der Aufgabe von "BEREIT" in "AKTIV" und gibt den Zugang zu dem Block 1 frei. Er speichert seinen Index in dem örtlichen Speicher des Monitors, so daß die Angabe des Prozessors, welcher die Aufgabe ausführte, im Falle einer Störung aufbewahrt wird. Hierauf wird die Aufgabe ausgeführt. Wenn sie beendet ist, bringt der Prozessor die Aufgabe in der Tabelle in den Zustand "INAKTIV".Ea oei assumed that first the three processors 11, 12 and 13 are free. Upon an interrupt request, the monitor effects each processor in order the urgency, the reading of the tasks in the "READY" state in the activity table (in the shared memory 16). Of the three processors, the first to take the reading takes over (which, if the three processors are in operation, randomly is determined because the timers of the control circuits 20 are asynchronous) the most urgent task in the "READY" state, i.e. whose execution was requested. The processor then reserves access to block 1 and if it is interrupted when aroused, he cancels it. It checks whether the task is still in the "READY" state because another processor it may have taken over since the first reading. In this case the processor releases access to block 1 and returns to the State of visiting a "ready" task. If, on the other hand, the task is still in the "READY" state, changed the processor changes the status of the task from "READY" to "ACTIVE" and enables access to block 1. He saves his index in the local memory of the monitor, so that the indication of the processor which carried out the task in the event of a malfunction is kept. The task is then carried out. When it finishes, the processor brings the task into the table the status "INACTIVE".

Während der erste Prozessor eine Aufgabe ausführte, kann ein äußerer Unterbrechungsbefehl abgegeben worden sein. Der erste Prozessor, welcher zum Empfang der Unterbrechung bereit ist, liest das Weisungsregister ab und dekodiert gegebenenfalls zur Be-While the first processor was executing a task, an external interrupt command may have been issued. Of the The first processor, which is ready to receive the interruption, reads the instruction register and, if necessary, decodes it to

809821 /0900809821/0900

275U16275U16

0615 77 B 0615 77 B

Stimmung der Dringlichkeit der Unterbrechung die dringlichste.Mood of the urgency of the interruption the most urgent.

Die Programme können auch ein Aktivierungebit einer Aufgabe einstellen, und zwar nicht um die Ausführung einer Aufgabe zu verlangen, sondern um einen direkten Zugang zu dem Speicher für eine Eingangs- oder Ausgangsrandeinheit zu verlangen. Dieser Vorgang erfolgt durch denjenigen der Prozessoren, welcher frei ist, und nicht durch eine verdrahtete Logik. Diese Lösung ermöglicht die Verbesserung der Zuverlässigkeit, da sie das Vorhandensein von mit den Randeinheiten parallelen Schaltungen vermeidet.The programs can also include an activation bit of a task set, not to request the execution of a task, but to have direct access to the memory for an entry or exit edge unit. This process is carried out by the processor that is free, and not through a wired logic. This solution allows the reliability to be improved since it eliminates the presence of avoids parallel circuits with the edge units.

In jedem Block ist es möglich, mittels einer äußeren Steuerung eine Aufgabe in den Zustand "TOT" zu bringen, insbesondere wenn die Aufgabe aus irgendeinem Grunde (Störung, Programmierfehler usw.) nicht ausgeführt werden kann. Wenn sich die Aufgabe in dem Zustand 11TOT" befindet, überspringen die Prozessoren die Aufgabe bei der Ablesung des Speichers 36. Wie man sieht, erzeugen die Störungen eines beliebigen Teils der Speicher keine Ausserbetriebsetzung des Systems, sondern höchstens eine einfache Verschlechterung seiner Leistungen. Wenn z.B. einer der Blocks 0 gestört ist, genügt es, mittels einer äußeren Steuerung den entsprechenden Prozessor außer Betrieb zu setzen. Wenn der Block 1 gestört wird, nimmt man den in Bereitschaft befindlichen Block an der Stelle des gestörten Blocks in Betrieb. Die gemeinsamen Daten sind dann verloren. Es genügt jedoch, das ganze System neu zu initialisieren. Wenn schließlich einer der Blocks 2 bis 7 gestört wird, verliert man einfach die in dem Block enthaltenen Benutzungsprogramme, welcher dann in der Aktivitätβtabelle des Blocks 1 in den Zustand "TOT" übergeht.In each block it is possible to bring a task into the "TOT" state by means of an external control, in particular if the task cannot be carried out for any reason (malfunction, programming error, etc.). If the task is in the 11 TOT "state, the processors skip the task reading the memory 36. As can be seen, the failure of any part of the memories does not cause the system to be put out of service, but at most a simple deterioration in its performance For example, if one of the blocks 0 is disturbed, it is sufficient to put the corresponding processor out of operation by means of an external control It is sufficient, however, to reinitialize the whole system. If one of the blocks 2 to 7 is finally disturbed, one simply loses the user programs contained in the block, which then changes to the "TOT" state in the activity table of block 1 .

Die "Wachthund-Schaltung" eines jeden Prozessors ermöglicht insbesondere:The "watchdog circuit" of each processor enables in particular:

- die Ausführung einer Aufgabe zu unterbrechen, wenn ihr Zugang zu dem Block 1 zu lange dauert. Die Schaltung hält dann den Prozessor an» und dieser wird durch einen äußeren Befehl wieder in Betrieb gesetzt;- to interrupt the execution of a task if you Access to block 1 takes too long. The circuit then stops the processor and it is switched back on by an external command Operation set;

- bei einer Störung der Speisung diese festzustellen, den den Ersatz der fehlerhaften Speisung durch die Speisung in Bereitschaft zu bewirken (dieser Vorgang kann jedoch durch Benutzung einer äußeren Fernsteuerung erfolgen), und dann das System unter Auslösung der Ausführung der entsprechenden Routine neu zu initiall-- in the event of a fault in the supply, to determine this, to effect the replacement of the faulty supply by the supply in readiness (this process can, however, be carried out by using an external remote control), and then to initiate the system again, triggering the execution of the corresponding routine.

809821/0900809821/0900

275U16275U16

λ V5 - 0613 77 Βλ V5 - 0613 77 Β

öderen. Der Fernsteuerun#swechi>el kann in höchüt einfacher Weise mitteln eineu elektromagnetischen Reluio mit zwei Stellungen mit Hai tt?k reis erfolgen;desolate. The remote control change can be done in a very simple way transmit an electromagnetic Reluio with two positions Hai tt? K rice done;

- im Falle eines Irrtums in dem Programmablauf die Ausführung denselben zu \interbrechen und den Prozessor neu zu initin] i Hiernn. Fnlln ο ich der Fehler wiederliolt und eine dauernde Stönui,1? mitfilit, kann nie den Prozessor in logischer Hinsicht ausschalten oder einen Alarm auslösen, auf den hin dor Prozessor durch eint; Fernsteuerung uusßeochiedon wii'd.- in the event of an error in the program sequence, interrupt execution and initiate the processor again. Fnlln ο I repeat the error and a permanent stönui, 1 ? mitfilit, can never shut down the processor in a logical way or trigger an alarm on which the processor cuts through; Remote control uusßeochiedon wii'd.

809821/0900809821/0900

LeerseitBlank page

Claims (9)

PATENTANSPRUCHSPATENT CLAIM 0613 77 B0613 77 B 275Η18275-18 Digitales oder nummerisches Datenbehandlungssystem, insbesondere für Raumfahrzeuge mit einem gemeinsamen Speicher und n_ von einander unabhängigen Allzweckprozessoren, wobei jeder dieser Prozessoren die gesamte Steuerfähigkeit des Systems hat und einen eigenen Arbeitsspeicher aufweist, dadurch gekennzeichnet, dass die Allzweckprozessoren (11, 12, 13), deren Arbeitsspeicher (19) eine zum Aufnehmen der Leitprogramme des Systems ausreichende Kapazität aufweist, sowie der gemeinsame Speicher (16) und Eingangs- bzw. Ausgangsschaltungen mit einer einzigen, in geteilter Zeit arbeitenden Sammelleitung parallel verbunden sind, wobei diese Sammelleitung gegenüber Störungen in den ihr zugeschalteten Systemen abgesichert ist und wobei der gemeinsame Speicher (16) die Leitdaten des Systems sowie die Benutzungsprogramme enthält.Digital or numeric data handling system, in particular for space vehicles with a shared memory and n_ independent general purpose processors, each of these Processors has the entire controllability of the system and has its own main memory, characterized in that the general-purpose processors (11, 12, 13), the working memory (19) of which is sufficient to hold the control programs of the system Has capacity, as well as the common memory (16) and input and output circuits with a single, in shared Time working collecting line are connected in parallel, this collecting line compared to disturbances in the connected to it Systems is secured and wherein the common memory (16) contains the control data of the system and the user programs. 2. System nach Anspruch 1, dadurch gekennzeichnet, daß der gemeinsame Speicher (16) einen Block (36, 37) aufweist, welcher durch einen zusätzlichen, in Bereitschaft stehenden Block verdoppelt wird, welcher die Daten enthält, deren Verschwinden das vollständige Versagen des Systems zur Folge hätte, und einen oder mehrere, die Benutzungsprogramme enthaltende Blocks. 2. System according to claim 1, characterized in that the common memory (16) has a block (36, 37) which is doubled by an additional, standby block which contains the data, the disappearance of which leads to the complete failure of the system and one or more blocks containing the user programs. 3. System nach Anspruch 2, dadurch gekennzeichnet, daß gewisse Benutzungsprogramme zur Erhöhung der Zuverlässigkeit in verschiedenen Blocks verdoppelt sind.3. System according to claim 2, characterized in that certain user programs to increase the reliability in different blocks are doubled. 4. System nach Anspruch 2 oder 3» dadurch gekennzeichnet, daß jede auszuführende Aufgabe durch ein Programm definiert ist, welches in ein und demselben Block enthalten ist und nicht zu einem anderen Block ohne Eingreifen des Monitorprogramme eines der Prozessoren gelangen kann.4. System according to claim 2 or 3 »characterized in that each task to be carried out is defined by a program which is contained in one and the same block and not to another block without the intervention of the monitor program of one of the Processors can arrive. 5. System nach einem der Ansprüche 1 bis 4» dadurch gekennzeichnet, daß jeder Prozessor einen Mikroprozessor (17) mit integrierten Schaltungen, einen für die anderen Prozessoren nicht zugänglichen örtlichen Speicher (19) und eine Eontrollschaltung (20) zur Ausdehnung der Adressen eines Speichers, deren Kapazität mit der des gemeinsamen Speichere verträglich ist, aufweist.5. System according to one of claims 1 to 4 »thereby characterized in that each processor has an integrated circuit microprocessor (17), one for the other processors not accessible local memory (19) and a control circuit (20) to expand the addresses of a memory, the capacity of which is compatible with that of the shared memory. 6. System nach Anspruch 5» dadurch gekennzeichnet, daß der örtliche Speicher (19) eines jeden Prozessors einen Festspeieher (22) zur Aufbewahrung dee Ieitprogramme des Prozessors, d.h. insbesondere des Monitore, der Behandlung der inneren Unterbrechungen und gegebenenfalls einer Behandlung für den unmittelbaren6. System according to claim 5 »characterized in that the local memory (19) of each processor has a fixed memory (22) for storing the processor programs, i. E. in particular the monitors, the treatment of the internal interruptions and, if necessary, a treatment for the immediate 809821/0900809821/0900 ORIGINAL INSPECTEDORIGINAL INSPECTED 275U16275U16 - \jö - 0613 77 B- \ jö - 0613 77 B Zugang zu dem Speicher, und einen Random-Speicher (23) enthält.Access to the memory, and a random memory (23) contains. 7. System nach Anspruch 5 oder 6, gekennzeichnet durch Mittel, welche von außen kommende Unterbrechungsanforderungen parallel an alle Prozessoren anlegen.7. System according to claim 5 or 6, characterized by Means which apply interrupt requests coming from outside to all processors in parallel. 8. System nach einem der Ansprüche 5 hie 7, dadurch gekennzeichnet, daß jede Kontrollschaltung zur Ausdehnung der Adressen eines Speichers einen Zeitgeber in Echtzeit enthält, welcher durch den zugehörigen Mikroprozessor gesteuert wird und von dem Rest des Systems unabhängig ist.8. System according to one of claims 5 hie 7, characterized in that that each control circuit for expanding the addresses of a memory contains a timer in real time, which is controlled by the associated microprocessor and is independent of the rest of the system. 9. System nach einem der Ansprüche 1 bis 8, gekennzeichnet durch drei identische Prozessoren, welche unabhängig voneinander durch eine äußere Steuerung in oder außer Betrieb gesetzt werden können, wobei die Zeit des Zyklus in dem gemeinsamen Speicher wenigstens dreimal kürzer als die Dauer einer Prozessorweisung ist.9. System according to one of claims 1 to 8, characterized by three identical processors, which are independent of one another can be put in or out of operation by an external control, with the time of the cycle in the common memory is at least three times shorter than the duration of a processor instruction. 809821/0900809821/0900
DE19772751416 1976-11-23 1977-11-17 NUMERICAL SYSTEM FOR DATA HANDLING, IN PARTICULAR FOR SPACE VEHICLES Ceased DE2751416A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR7635257A FR2371734A1 (en) 1976-11-23 1976-11-23 DIGITAL DATA PROCESSING SYSTEM, ESPECIALLY FOR SPACE SHIP

Publications (1)

Publication Number Publication Date
DE2751416A1 true DE2751416A1 (en) 1978-05-24

Family

ID=9180197

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19772751416 Ceased DE2751416A1 (en) 1976-11-23 1977-11-17 NUMERICAL SYSTEM FOR DATA HANDLING, IN PARTICULAR FOR SPACE VEHICLES

Country Status (4)

Country Link
DE (1) DE2751416A1 (en)
FR (1) FR2371734A1 (en)
GB (1) GB1552086A (en)
SE (1) SE7713186L (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4365294A (en) * 1980-04-10 1982-12-21 Nizdorf Computer Corporation Modular terminal system using a common bus
US4430727A (en) * 1981-11-10 1984-02-07 International Business Machines Corp. Storage element reconfiguration
AU2016283A (en) * 1982-10-15 1984-04-19 General Electric Company, Plc, The Plural data processing units
DE3688139T2 (en) * 1986-12-30 1993-10-07 Ibm Double circuit arrangement for fast transmission and repairability.
GB2254469B (en) * 1991-03-28 1995-05-10 Barcrest Ltd Data storage
DE19818175A1 (en) 1998-04-23 1999-10-28 Bosch Gmbh Robert Data security method for securing control parameters of program-controlled computer held in EEPROM enables very large number of parameters to be stored without adversely affecting data consistency protection if fault occurs
IL245566A0 (en) * 2016-05-10 2016-08-31 Israel Aerospace Ind Ltd Satellite energy management

Also Published As

Publication number Publication date
SE7713186L (en) 1978-08-10
FR2371734B1 (en) 1980-04-18
GB1552086A (en) 1979-09-05
FR2371734A1 (en) 1978-06-16

Similar Documents

Publication Publication Date Title
DE3781486T2 (en) METHOD FOR SHOCK-FREE SWITCHING FROM ACTIVE UNITS TO REPLACEMENT UNITS IN DATA PROCESSING SYSTEMS AND DATA PROCESSING SYSTEM FOR IMPLEMENTING THIS PROCESS.
DE3803759C2 (en)
DE2400161C2 (en)
DE2722099C2 (en)
EP0952520B1 (en) Device for fault tolerant execution of programs
EP0057756B1 (en) Data exchange unit in multi-microcomputer systems operating in parallel
DE69308868T2 (en) DUPLICATED CONTROL AND PROCESSING UNIT FOR TELECOMMUNICATION SYSTEM
EP0163096A1 (en) Apparatus for saving a calculator status
DE1524209B2 (en) PROGRAM CONTROLLED DATA PROCESSING SYSTEM
DE2908316A1 (en) MULTICONFIGURABLE MODULAR PROCESSING SYSTEM INTEGRATED WITH A PRE-PROCESSING SYSTEM
DE2359178A1 (en) MEMORY ARRANGEMENT
DE1279980B (en) Data processing system consisting of several data processing units coupled to one another
DE2928488A1 (en) STORAGE SUBSYSTEM
DE2015971A1 (en) Data processing system for processing a stream of multiple operands
DE2101949A1 (en) Method for protecting data groups in a multiprocessing data processing system
DE3401783A1 (en) PROGRAMMABLE CONTROL
DE2751416A1 (en) NUMERICAL SYSTEM FOR DATA HANDLING, IN PARTICULAR FOR SPACE VEHICLES
DE3780306T2 (en) ADAPTER BUS SWITCH FOR IMPROVING THE AVAILABILITY OF A CONTROL UNIT.
DE3048414A1 (en) "CIRCUIT ARRANGEMENT FOR A DATA PROCESSING SYSTEM"
EP0141245B1 (en) Method for the operation of a couple of memory blocks normally working in parallel
DE3689491T2 (en) Monitoring circuit.
DE2403669C3 (en) Special computer
DE2647367A1 (en) Multiple redundant process controller - has detector stages to continuously monitor performance of each unit to indicate single or double malfunction
EP0135931B1 (en) Central control unit of a switching system, in particular a telephone switching system
EP0645034B1 (en) Computer system

Legal Events

Date Code Title Description
OD Request for examination
8131 Rejection