DE3432524A1 - Mehrfach genutzter datenschreiberregler und verfahren - Google Patents

Mehrfach genutzter datenschreiberregler und verfahren

Info

Publication number
DE3432524A1
DE3432524A1 DE19843432524 DE3432524A DE3432524A1 DE 3432524 A1 DE3432524 A1 DE 3432524A1 DE 19843432524 DE19843432524 DE 19843432524 DE 3432524 A DE3432524 A DE 3432524A DE 3432524 A1 DE3432524 A1 DE 3432524A1
Authority
DE
Germany
Prior art keywords
data
data storage
characters
buffer
conversion
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.)
Withdrawn
Application number
DE19843432524
Other languages
English (en)
Inventor
Charles Louis Ballston Lake N.Y. Devlin
Mark Williams Scotia N.Y. Durling
Richard Sanders Schenectady N.Y. Gordon
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.)
General Electric Co
Original Assignee
General Electric Co
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 General Electric Co filed Critical General Electric Co
Publication of DE3432524A1 publication Critical patent/DE3432524A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D9/00Recording measured values
    • G01D9/005Solid-state data loggers

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Control By Computers (AREA)
  • Small-Scale Networks (AREA)
  • Selective Calling Equipment (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)
  • Computer And Data Communications (AREA)

Description

Mehrfach genutzter Datenschreiberregler und Verfahren
Die Erfindung bezieht sich allgemein auf einen Regler, der den Strom von Turbinen-Generatordaten von mehreren Turbinen-Generatordatenquellen in einen einzelnen Datenschreiber oder Zeilendrucker steuert bzw. kanalisiert.
Um eine Dampfturbinen-Generatoreinheit zu steuern bzw. zu regeln, werden viele Prozeßvariable, Betriebsparameter, Turbinen-Generatorbetriebsbefehle und Steuervariable überwacht, und auf diese Daten wird Zugriff genommen durch das relativ automatische Turbinen-Generatorregelsystem und die Bedienungspersonen des Systems. Die Einführung von Computern in diese komplexe Anordnung hat in gewissem Sinne die Belastung für die Bedienungspersonen des Turbinengenerators vereinfacht. Es besteht jedoch ein größerer Bedarf an einer genauen Aufzeichnung der verschiedenen Parameter, die beim Betrieb des Turbinen-Generatorsystems auftreten. Bei der Benutzung eines Computer-gestützten Steuersystems wird die Aufzeichnung der Daten von einem Datenschreiber oder Zeilendrucker übernommen. Da es eine Anzahl von Turbinen-Generatordatenquellen gibt, ist es nicht ratsam, einen getrennten Datenschreiber, mit jeder Turbinengeneratordatenquelle zu verbinden. Es ist auch nicht ratsam die übertragung von Daten an jeder Datenquelle zu steuern und koordinieren und nur einen einzelnen Datenschreiber zu Aufzeichnungszwecken zu verwenden.
Die Daten werden mit einer festgelegten Übertragungsrate von jeder Quelle in diskreten Signalbündeln von digitalen Zeichen gesendet, d.h. die Datensegmente werden gesendet, wobei
inaktive Zeiten diese Segmente trennen. Weiterhin generieren einige Datenquellen einen Datenstrom mit einer höheren oder schnelleren Übertragungsrate als die anderen Datenquellen.
Es ist eine Aufgabe der Erfindung, ein Verfahren zum Steuern und Kanalisieren des Datenstromes in einen mehrfach genutzten Datenschreiber und einen Regler zur Erleichterung dieser Regelung zu schaffen, bei dem die Daten, die von jeder Turbinen-Generatordatenquelle gesendet werden, nicht von jeder einzelnen Turbinen-Generatordatenquelle in irgendeiner Weise vorverarbeitet werden müssen.
Weiterhin soll ein Verfahren zur mehrfachen Nutzung eines Datenschreibers geschaffen werden, wobei die Datenübertragungsgeschwindigkeiten von den verschiedenen Turbinen-Generatorquellen unterschiedlich sein können.
Das Verfahren zum Kanalisieren und Steuern des Datenstromes in einen mehrfach ausgenutzten Datenschreiber enthält den Schritt, die seriell formatierten digitalen Zeichen, die von jeder unabhängigen Turbinen-Generatordatenquelle gesendet werden, in parallel formatierte digitale Zeichen mit entsprechend unabhängigen Umwandlungsmitteln umzuwandlen. Jeder Umwandlungseinrichtung ist ein Prioritätspegel zugeordnet, der auf der relativen Kritikalität seiner entsprechenden Datenquelle basiert. Für jede Umwandlungseinrichtung ist ein leerer Datenspeicherpuffer von mehreren, in einer Warteschlange befindlichen Puffern reserviert. Jedes umgewandelte Zeichen wird in dem reservierten Speicher gemäß der relativen Priorität der Umwandlungseinrichtung gespeichert. Wenn der reservierte Puffer mit parallel formatierten digitalen Zeichen gefüllt ist, wird er durch einen anderen Puffer aus der Warteschlange ersetzt. Die gefüllten Puffer werden durch einen Parallel-Serien-Umsetzer in den Datenschreiber geleert. Wenn der Puffer leer ist, wird er in die Warteschlange zurückgeführt.
Es kann eine Maßnahme vorgesehen sein, um ein Identifikationszeichen in jeden reservierten Speicherpuffer einzugeben, das die jeweilige Turbinen-Generatordatenquelle identifiziert, die mit einer bestimmten Umwandlungseinrichtung verbunden ist. Weiterhin wird die vergangene Zeit zwischen der Speicherung von einem umgewandelten Zeichen in den reservierten Puffer und die Umwandlung des nächsten seriell formatierten digitalen Zeichens, das durch die entsprechende Datenquelle gesendet ist, für jede Umwandlungseinrichtung ermittelt. Wenn die verstrichene Zeit eine vorbestimmte Zeitperiode überschreitet, die jeder Umwandlungseinrichtung zugeordnet ist, wird der teilweise gefüllte reservierte Speicher durch den Parallel-Serien-Umsetzer in den Datenspeicher geleert.
Der mehrfach ausgenutzte Datenschreiberregler enthält eine getrennte Umwandlungseinrichtung, die mit jeder getrennten Turbinengeneratordatenquelle verbunden ist, mehrere leere Datenspeicherpuffer, die in einer verbundenen Liste angeordnet sind zur Bildung einer Warteschlange, eine Ausgangsumwandlungseinrichtung, deren Ausgang mit dem Datenschreiber verbunden ist, und einen Mikroprozessor, der mit jeder Umwandlungseinrichtung, mit allen Puffern und mit der Ausgangsumwandlungseinrichtung verbunden ist. Der Mikroprozessor steuert den Datenstrom von jeder Umwandlungseinrichtung, indem er Puffer reserviert, die Zeichen speichert, gefüllte Puffer durch leere Puffer ersetzt, die Puffer, über die Ausgangsumwandlungseinrichtung in einen Datenschreiber entleert und die leeren Speicher in die Warteschlange zurückbringt.
Die Erfindung wird nun mit weiteren Merkmalen und Vorteilen anhand der Beschreibung und Zeichnung von Ausführungsbeispielen näher erläutert.
ΊΟ
Figur 1 zeigt in Fließbildform die Hardware-Architektur für den mehrfach ausgenutzten Datenschreiberregler.
Figur 2 stellt das Datenflußdiagramm für den mehrfach ausgenutzten Datenschreiberregler dar.
Figuren 3A, 3B, 3C und 3D zeigen die Inhalte eines Pufferdeskriptors bzw. das Fließbild für eine Eingangssteueranweisung.
Figur 4 stellt ein Fließbild für die Ausgangssteueranweisung dar.
Figur 5 zeigt ein Ausführungsprogramm-Fließbild.
Der mehrfach ausgenutzte Datenschreiberregler steuert den Strom digitaler Information und kanalisiert Daten in einen einzelen Datenschreiber oder Zeilendrucker. Es besteht eine innige Vermischung oder Abhängigkeit von Instruktionen und Hardware, die den Datenstrom von einer Anzahl Turbinen-Generatordatenquellen in den Datenschreiber steuert.
Figur 1 zeigt in Fließbildform die Hardware-Architektur des mehrfach ausgenutzten Datenschreiberreglers 10. Oben in Figur 1 sind verschiedene Turbinen-Generatordatenquellen aufgetragen. Der Anzeige- und Kommunikationscomputer 12 liefert zwei im wesentlichen unabhängige und getrennte Ströme seriell formatierter digitaler Zeichen über Datenquellenleitungen 14 und 16 an den mehrfach ausgenutzten Datenschrei berregler 10. Der Anzeige- und Kommunikationscomputer kann Teil eines reservierten Mikrocomputer-gestützten Regelungssystems für Dampfturbinengeneratoren sein, wie es in der US-PS 4 280 060 beschrieben ist. Allgemein zeigt der Computer 12 die verschiedenen Betriebsbedingungen des Turbinen-Generatorsystems an und gestattet der Bedienungsperson bzw. Opera-
-JS" -
tor des Turbinengeneratorsysterns, mit der Regelung zu kommunizieren.
Die Leitung 14 führt diskrete Signalbündel von seriell formatierten digitalen Zeichen mit einer hohen oder schnellen Übertragungsrate. Beispielsweise beträgt die übertragungsrate 120 Zeichen pro Sekunde (im folgenden mit 120 zps bezeichnet) . Die Leitung 16 verbindet den Computer 12 mit dem Regler 10 und führt diskrete Signalbündel serieller Zeichen mit beispielsweise einer Übertragungsrate von 30 zps. In der hier verwendeten Weise bezieht sich die Übertragungsrate auf die Anzahl von Zeichen pro Zeiteinheit in einem bestimmten diskreten Datenbündel. Obwohl jede Datenquelle einen Datenstrom generiert, ist der Strom aus diskreten Datenbündeln aufgebaut; somit gibt es Zeitperioden, in denen die Datenquelle keine Information überträgt, und diese Perioden trennen die Signalbündel. Verständlicherweise braucht nicht jedes Bündel eine gleiche Länge zu haben; infolgedessen variiert die in jedem Bündel übertragene Informationsmenge .
Ein Eingangskalkulationscomputer 18 ist mit dem Regler 10 durch eine Leitung 20 verbunden, die die Zeichen mit einer dargestellten Übertragungsrate von 30 zps überträgt. Ein Steuercomputer 22 ist mit dem Regler 10 durch eine Leitung 24 verbunden, die serielle digitale Zeichen mit einer Geschwindigkeit von 30 zps überträgt. Die Wechselwirkung und die spezifischen Funktionen des Computers 12, des Computers 18 und des Computers 22 sind in der vorgenannten US-PS 4 280 060 näher beschrieben. Die Computer 12, 18 und 22 liefern im wesentlichen unabhängige Datenströme, die die Betriebsbedingungen des Turbinen-Generatorsystems darstellen.
Ein Turbinenbypass-Steuersystem-Computer 26 ist mit dem Regler 10 durch eine Leitung 28 verbunden. Der Computer 26
generiert seriell formatierte digitale Zeichen mit einer Geschwindigkeit von 120 zps. Die Computer 12, 18, 22 und generieren alle Datenströme relativ gleichzeitig zueinander.
Jede Leitung ist über eine Isolations- bzw. Trennschaltung mit einer Umwandlungseinrichtung verbunden, die in Figur als ein "USART" bezeichnet ist. Bekanntlich ist ein "USART" ein Universal Asynchronous Receiver Transmitter bzw. universeller synchroner/asyncroner Empfänger/Sender, der serielle Zeichen in parallele Zeichen oder parallele Zeichen in serielle Zeichen umwandelt. Die Leitung 14 ist mit einer Isolations- bzw. Trennschaltung 30 verbunden. Die Isolations- bzw. Trennschaltung konditioniert das Datensignal mit Filtern und Verstärkern, und in diesem Beispiel wandelt sie ein 24-Voltsignal in ein 5-Voltsignal um, wobei das letztere mit der hier verwendeten digitalen Ausrüstung kompatibel ist. Der durch die Isolations- bzw. Trennschaltung 30 konditionierte Datenstrom wird einer Umwandlungseinrichtung 32 oder USART A zugeführt. Die Vorrichtung 32 oder USART A wandelt die seriell formatierten digitalen Zeichen aus dem Computer 12 in parallel formatierte digitale Zeichen an ihrem Ausgang um. USART A ist so eingestellt, daß er die Zeichen mit einer übertragungsrate von 120 zps umwandelt.
Die Isolations- bzw. Trennschaltung 34 ist mit ihrem Eingang mit der Leitung 16 vom Computer 12 verbunden, und ihr Ausgang ist mit der Wandler- bzw. Umsetzeinrichtung oder USART B verbunden. USART B wandelt serielle Zeichen in parallele Zeichen mit einer Geschwindigkeit von 30 zps um. Die Leitung 20 ist mit der Isolations- bzw. Trennschaltung 38 und der Wandlereinrichtung 40 oder USART C verbunden, der die vom Computer 18 gelieferten Zeichen umwandelt. Die Leitung 24 liefert serielle Zeichen zur Isolations- bzw. Trennschaltung 42, und schließlich werden diese seriellen
-JT-
Zeichen in parallele Zeichen durch die Wandlereinrichtung oder USART D umgewandelt. Der Turbinenbypass-Steuersystemcomputer 26 ist über die Isolations- bzw. Trennschaltung mit der Wandlereinrichtung 48 oder USART E verbunden.
Es ist zwar eine einzelne Leitung gezeigt, die die verschie-
einzelnen
denen Datenquellen mit ihrer /Isolations- bzw. Trennschaltungen und USART verbindet, aber diese Leitungen sind nur zu Darstellungszwecken vorgesehen und können mehrere Datenleitungen, Steuerleiter und'andere elektrische Verbindungen darstellen, die allgemein bekannt sind.
Ein Mikroprozessor 70 arbeitet mit einem lokalen RAM 52, der als ein Arbeitsspeicher bekannt ist, und einem lokalen ROM 54 zusammen, der als ein Festwertspeicher bekannt ist. Eine Ausgangswandlereinrichtung 56, die hier mit USART 0 bezeichnet ist, ist mit ihrem Ausgang mit einer Isolationsbzw. Trennschaltung 58 verbunden. Diese Trennschaltung 58 arbeitet in ähnlicher Weise wie die Trennschaltungen, 30, 38, 42 und 46. Der Ausgang der Trennschaltung 58 ist mit dem Eingang eines Zeilendruckers/Datenschreibers 60 verbunden.
Die in Figur 1 gezeigte Darstellung der Verbindungen zwischen den USARTs A, B, C, D und E, zwischen dem Mikroprozessor 50, dem lokalen RAM 52, dem lokalen ROM 54 und die Verbindung des USARTs 0 sind nur beispielhaft für mehrere elektrische Verbindungen. Im allgemeinen steuert bzw. regelt der Mikroprozessor alle Datenverarbeitungs- und Steuerungsvorgänge zwischen diesen verschiedenen Elementen. Der Mikroprozessor verwendet einen Eingangs/Ausgangs- und Schreib/Lese-Steuerbus 62 (hier dargestellt als I/O und R/W Steuerbus 62), um die Funktion der USARTs A, B, C, D, E und 0 und des lokalen RAM 52 und des lokalen ROM 54 zu steuern. Der Bus 62 ist in Figur 1 als eine gestrichelte
-,er-
Linie dargestellt, der diese Komponenten miteinander verbindet.
Wenn eine bestimmte Steuerfunktion ausgelöst wird, informiert der Mikroprozessor 50 die gewählte Vorrichtung der zu beeinflussenden Datenstelle, d. h. die Datenadresse, und er versorgt dann die Vorrichtung mit den tatsächlichen Daten. Deshalb sind die Hardwarevorrichtungen mit einem Datenbus 64 und einem Adressbus 66 verbunden. Bekanntlich sorgt der Mikroprozessor 50 für eine Vorrichtungsauswahl und Datenauswahl, um dadurch die USARTs A, B, C, D, E und den lokalen ROM und den lokalen RAM zu steuern. Der Steuerbus 62, der Datenbus 64· und der Adressbus 68 können mehr als eine Leitung enthalten, oder die Busse können miteinander vereinigt sein, was von den jeweiligen Konfigurationen und der betrieblichen Kompatibilität der USARTs, des Mikroprozessors und seinen zugeordneten RAMs und ROMs abhängt. In diesem Ausführungsbeispiel ist der Mikroprozessor ein Intel 8085, der von der Intel Corporation in Kalifornien vertrieben wird, und vier Intel 8O59A Prioritätsunterbrechungscontroller, die von der gleichen Firma vertrieben werden.
Figur 2 zeigt das Datenfließbild für den Regler oder Controller 10. In dem beschriebenen Ausführungsbeispiel stellen die Datenquellen A, B, C, D und E im wesentlichen unabhängige Vielfach-Turbinengenerator-Datenquellen dar, die den Quellen entsprechen, die in Figur 1 auf entsprechende Weise mit den Leitungen 14, 16, 20, 24, 28 verbunden sind. Somit entspricht die Datenquelle A, die in Figur 2 mit 70 bezeichnet ist, der Leitung 14 von dem Computer 12, wie es in Figur 1 dargestellt ist. In ähnlicher Weise stellt die Datenquelle B, Bezugszeichen 72, die mit der Leitung 16 verbundene Quelle dar; die Datenquelle C, Bezugszeichen 74 entspricht dem Computer 18; die Datenquelle D, Be-
zugszeichen 76 entspricht dem Computer 22; die Datenquelle E, Bezugszeichen 78, entspricht der Datenquelle des Turbinenbypass-SteuerSystemcomputers 26.
Die verschiedenen Ströme seriell formatierter digitaler Zeichen fließen durch ein Eingangs-Interface 80, das die Datensignale anpaßt und diese Signale in parallel formatierte digitale Zeichen umwandelt, die von dem Mikroprozessor und zugeordneter Hardware verstanden und verarbeitet werden können. Bekanntlich führt ein Mikroprozessor einfach festgelegte Schritte in einer zeitlichen Folge aus. Diese Schritte, die in ihrer Verbindung ein Computerprogramm oder eine Computerroutine bilden, werden hier als "Anweisungen"(task) bezeichnet. Diese Anweisungen werden entweder in dem lokalen ROM 54 oder in dem Mikroprozessor selbst gespeichert.
Die Daten werden durch den Mikroprozessor 50 verarbeitet, der eine getrennte Eingangssteueranweisung (input handler task) ausführt, die jeder Datenquelle entspricht. Auf diese Weise steht die Datenquelle A durch Hardware und Software in enger Beziehung zu der Eingangssteueranweisung A, die in dem Kästchen 82 dargestellt ist. Die Eingangssteueraneisung B, Bezugszeichen 84, steht in enger Beziehung zur Datenquelle B; entsprechend ist die Eingangssteueranweisung C, Bezugszeichen 86, auf die Datenquelle C bezogen; die Eingangssteueranweisung D, Bezugszeichen 88, entspricht der Datenquelle D; die Eingangssteueranweisung E, Bezugszeichen 90,
ist der Datenquelle E zugeordnet. Der von jeder Datenquelle generierte Datenstrom würde durch seine entsprechende Eingangssteueranweisung im wesentlichen und relativ unabhängig von den anderen Eingangssteueranweisungen verarbeitet, und schließlich wird der von jeder Datentquelle generierte Datenstrom durch eine Ausgangssteueranweisung 92 bearbeitet und über ein Ausgangsinterface 94 zum Zeilendrucker oder Datenspeicher 96 geliefert. Die getrennte Ausführung der Eingangssteueranweisung A von allen anderen Anweisungen vermindert den Gesamtspeicherbedarf des lokalen RAM 52 und des lokalen ROM 54.
Das Ausgangsinterface 94 enthält USART 0 und die Trennschaltung 58, wie sie in Figur 1 gezeigt sind. Bekanntlich kann der Mikroprozessor die Ausführung von Instruktionen und die Handhabung von Daten mit einer viel größeren Geschwindigkeit ausführen als die übertragung von Daten und die Umwandlung von Daten. Deshalb führt der Mikroprozessor einen Mehrprozeßbetrieb aus und steuert den Datenstrom von einer Anzahl von Datenquelle ohne den Verlust digitaler Information von diesen verschiedenen Datenquellen.
Figuren 3 und 4 stellen in Fließbildform zwei verschiedene Anweisungen dar, die der Mikroprozessor ausführt, um das schnellere Verarbeitungsvermögen mit Vorteil auszunutzen.
Ein Verständnis der Eingangssteueranweisung wird durch ein Verständnis einer repräsentativen Größe des "Puffer-Deskriptors" erleichtert, dessen Inhalt in Figur 3A aufgelistet ist. Im allgemeinen stellt der Puffer-Deskriptor ein diskretes Segment des Datenspeicherpufferbereichs im RAM 52 dar. Der Puffer-Deskriptor enthält ein Pufferquellen-Identifizierungszeichen, eine Zeitsperreperiode, eine Zeichenzählgrenze, eine laufende Zeichenzählung und einen Zeichenfolgezeiger. Das Pufferquellen-Identifizierungszeichen ist ein Segment eines reservierten Speichers, der die Identität
der Eingangssteueranweisung festhält, für den der Puffer reserviert ist, und somit liefert er das Identifizierungszeichen, das einer bestimmten Turbinengenerator-Datentquel-Ie entspricht. Die Zeitsperreperiode ist ein Segment des reservierten Speichers, in dem die laufend verstrichene Zeit für die Eingangssteueranweisung festgehalten wird. Die verstrichene Zeit ist die Zeitdauer, in der die Ausführung einer bestimmten EingangsSteueranweisung ausgesetzt bzw. unterbrochen (suspended)) worden ist. Ein klareres Verständnis der Zeitsperreperiode kann aus der folgenden Erläuterung des Betriebs einer bestimmten Eingangssteuerung (input handler) gewonnen werden.
Die Zeichenzählgrenze ist die Gesamtzahl von parallel formatierten digitalen Zeichen, die ein bestimmter Datenspeicherpuffer festhalten kann. Die laufende Zeichenzählung ist die jeweilige Anzahl von parallel formatierten digitalen Zeichen, die laufend in einen bestimmten Datenspeicherpuffer gespeichert sind. Der Wert von "n" ist nur zur Darstellung des Konzepts gezeigt, und der Wert soll nicht ein Beispiel für den Controller bedeuten. Der Zeichenfolgezeiger definiert die jeweilige Adresse in dem Datenspeicherpufferbereich in dem lokalen RAM.
Die Eingangssteueranweisung, die in den Figuren 3D, C und D dargestellt ist, beginnt am Schritt 110 in Figur 3B, indem ein Puffer-Deskriptor von dem Beginn einer Pufferpoolliste erhalten wird. Die Pufferpoolliste ist eine Warteschlange von mehreren Puffer-Deskriptoren, und jeder Deskriptor zeigt auf einen von mehreren in der Schlange befindlichen leeren Datenspeicherpuffern in dem RAM. Auf diese Weise wird ein leerer Datenspeicherpuffer für eine bestimmte Eingangssteueranweisung und eine entsprechende Wandlereinrichtung und Datenquelle reserviert. Die Pufferpoolliste ist eine verbundene Liste von Pufferpooldeskriptoren. Das Konzept einer "verbundenen Liste" ist an sich
- yi -
bekannt. Im Schritt 112 erhält die Eingangssteueranweisung die Zeichenzählgrenze von dem Puffer-Deskriptor. Der Zeichenfolgezeiger wird dann während des Schritts 114 vom Puffer-Deskriptor erhalten. Die Eingangssteueranweisung legt in dem laufenden Zeichenzählwert des Puffer-Deskriptors in dem Schritt 116 eine "Null" fest, die die Tatsache darstellt, daß in dem Puffer keine Zeichen gespeichert sind.
Im Schritt 118 setzt die Eingangsteueranweisung die Zeitsperreperiode in dem Puffer-Deskriptor auf eine vorbestimmte Zeitsperreperiode, die mit der jeweiligen Anweisung der Wandlereinrichtung und der Datenquelle in Beziehung steht. In dem dargestellten Ausführungsbeispiel ist die Zeitperreperiode auf eine Sekunde gesetzt. Bekanntlich stellt das Fließbild aufeinanderfolgende Schritte dar; folglich geht der Schritt 118 dem Schritt 120 voran, und diese Schritte sind zu Darstellungszwecken durch die Großbuchstaben "B" verbunden.
Das Pufferquellen-Identifizierungszeichen wird im Schritt 120 gleich der Eingangssteueridentität gesetzt. Wenn deshalb die Eingangssteueranweisung A durch den Mikroprozessor 50 ausgeführt wird, würde das Pufferquellen-Identifizierungszeichen im Puffer-Deskriptor die Identifikation der Eingangssteueranweisung A tragen, die der Datenquelle A entspricht, die wiederum dem USART A oder der Umwandlungseinrichtung 32 entspricht. Der Schritt 122 sperrt die Ausführung der Eingangssteueranweisung. Zu dieser bestimmten Zeit startet der Mikroprozessor einen Sperrzeittakt, um die vergangene Zeit vor dem nächsten Umwandlungsunterbrechungsanzeigesignal zu ermitteln.
Der Mikroprozessor beginnt wieder mit der Ausführung der Eingangssteueranweisung A, wenn entweder der Sperrzeittakt mit der Zeitsperreperiode zusammenpaßt, die in dem jeweiligen Puffer-Diskriptor festgelegt ist, oder wenn durch
USART A ein Unterbrechungsanzeigesignal generiert wurde, das die Umwandlung eines Zeichens signalisiert. Da der Ablauf des Zeitsperretakts außerhalb der Eingangssteueranweisung A abläuft, stellt die Erläuterung innerhalb .des Schrittes bzw. Kästchens 122 eine getrennte Zeitsteueranweisung dar, die außerhalb der Ausführung der Eingangssteueranweisung A erfolgt. Der Suspendierungsschritt 122 gestattet dem Mikroprozessor, seine schnellere Arbeitsgeschwindigkeit auszunutzen, um andere Eingangssteueranweisungen oder die Ausgangssteueranweisung auszuführen.
Da die Daten im wesentlichen gleichzeitig, obwohl auf einer Zufallsbasis, ankommen, legt der Mikroprozessor Prioritäten zwischen den verschiedenen Anweisungen und zwischen den verschiedenen Datenquellen fest, die den Eingangsteueranweisungen zugeordnet sind. Die Ausführung der Eingangssteueranweisung A wird fortgesetzt, wenn entweder die ver-. strichene Zeit gleich der Zeitperiode ist oder wenn die Anzeige erfolgt, daß USART A ein serielles Zeichen in ein parallel formatiertes digitales Zeichen umgewandelt hat. Dieser letzte Vorgang wird durch den Schritt 124 veranschaulicht. Wenn die Ausführung der Eingangssteueranweisung A fortgesetzt wird, aber USART A kein Unterbrechungsanzeigesignal erzeugt hat, würde die Eingangssteueranweisung A so fortschreiten, wie es durch den "E"-Zweig 125 in Figur 3B dargestellt ist. Wenn die Eingangssteueranweisung A wieder ausgeführt wird, infolge eines Unterbrechungsanzeigesignals von USART A, beinhaltet der Schritt 126 das Setzen des freien Speicherplatzes "Zeitsperreabbruch" für die Eingangssteueranweisung A gleich einer falschen oder negativen Anzeige.
Der Schritt 128 sichert das parallel formatierte Zeichen von USART A, und der Schritt 130 in Figur 3C speichert dieses Zeichen, indem er es am Ende der Zeichenfolge in dem reservierten Datenspeicherpufferbereich anordnet. Da
- α-r -
der Puffer-Deskriptor einen Zeichenfolgezeiger aufweist, wird jedes parallele Zeichen, das von der Eingangssteueranweisung gehandhabt wird, am Ende der Zeichenfolge angeordnet, und der Zeichenfolgezeiger wird entsprechend geändert, um den nächsten verfügbaren, diskreten, leeren Abschnitt des Datenspeicherpufferbereichs anzuzeigen. Der Schritt 132 inkrementiert den laufenden Zeichenzählwert in dem Puffer-Deskriptor.
Das Entscheidungs-Kästchen 134 vergleicht den laufenden Zeichenzählwert mit dem Zeichenzählgrenzwert in dem Pufferdeskriptor, um zu ermitteln, ob der reservierte Speicher ge-
ist.
füllt / Der Nein-Zweig führt zum Schritt 135, der den "Puffergefüllt-Abbruch"-Speicherplatz der Eingangssteueranweisung A auf eine falsche oder eine negative Anzeige setzt. Der Ja-Zweig vom Schritt 134 führt zum Schritt 136, in dem die EingangsSteueranweisung A den "Puffer-gefüllt-Abbruch"-Speicherplatz gleich der wahren oder positiven Anzeige setzt. Beide Schritte 136 und 135 führen zu dem Punkt "F" 137, der schließlich die Ausführung der Eingangssteueranweisung A vom Entscheidungsblock 138 bringt, wie es Figur 3D dargestellt ist. Der Schritt 138 beinhaltet die Bestimmung, ob der "Puffer-gefüllt-Abbruch"-Speicherplatz gleich wahr oder unwahr ist, oder die Feststellung, ob der "Zeitsperreabbruch"-Speicherplatz gleich wahr ist oder eine positive Anzeige hat. In gewissem Sinn ist der Schritt 138 ein kombinierter Entscheidungsblock, es wird aber deutlich, daß nur eine Entscheidung getroffen zu werden braucht, in Abhängigkeit davon, ob die Eingangssteueranweisung A dem Zweig "F" 137 oder dem Zweig "E" 125 gefolgt ist. Der Nein-Zweig von Schritt 138 führt zum Schritt 139, wo der "Puffer-bereitzur-Ausgabe"-Speicherplatz der Eingangssteueranweisung A gleich unwahr oder negativ gesetzt wird. Der Ja-Zweig von Schritt 138 führt zum Schritt 140, wo der "Puffer-bereitzur-Ausgabe"-Speicherplatz auf wahr oder positiv gesetzt wird.
-VSr-
Die Eingangssteueranweisung A geht dann weiter zum Schritt 142, der ein Entscheidungsblock ist, um zu ermitteln, ob "Puffer-bereit— zur-Ausgabe" gleich wahr ist. Wenn dies der Fall ist, führt der Ja-Zweig zum Schritt 144, wo der Puffer-
das
Deskriptor an/Ende der Warteschlange der Ausgangssteuerarbeitsliste gesetzt wird. Die Ausgangssteuerarbeitsliste ist im allgemeinen ähnlich der Pufferpoolliste dahingehend, daß sie eine verbundene Liste der Puffer-Deskriptoren ist, die zum Leeren vorbereitet sind durch Ausführung der Ausgangssteueranweisung. Wiederum ist das Verbinden der Puffer-Deskriptoren in der Ausgangssteuerarbeitsliste an sich bekannt.
Die Eingangssteueranweisung A würde dann dem Fließbildzweig "A" 146 folgen, der zum Schritt 110 in Figur 3B zurückführt und die Substitution eines neuen Puffer-Deskriptors fordert, wodurch ein neuer Pufferdeskriptor und ein leerer Datenspeicherpuffer für die Eingangssteueranweisung A reserviert wird. Es wird jetzt noch einmal zum Nein-Zweig vom Schritt 124 in Figur 3B zurückgekehrt. Wenn die verstrichene Zeit gleich der Zeitsperreperiode ist, folgt die Eingangssteueranweisung A dem Zweig "E" 125 nach Figur 3D. Im Schritt 148 wird eine Entscheidung getroffen, ob die laufende Zeichenzahl gleich null ist, wodurch angezeigt wird, daß keine Zeichen in dem Datenspeicher-Pufferbereich gespeichert sind. Wenn die Entscheidung "nein" ist, wird dem Zweig zum Schritt 149 gefolgt, wo der "Zeitsperreabbruch"-Speicherplatz für die Eingangssteueranweisung A gleich wahr gesetzt wird. Wenn die Entscheidung in dem Schritt 148 "ja" ist, führt die Eingangssteueranweisung A den Schritt 150 aus, in dem der "Zeitsperreabbruch"-Speicherplatz gleich unwahr gesetzt wird. Die Eingangssteueranweisung A würde dann den Schritt 138 ausführen, der den beiden Schritten 149 und 150 folgt.
Wenn dem Zweig "E" 125 gefolgt wird, bezieht sich die Entscheidung im Schritt 138 auf die Feststellung, ob der"Zeitsperreabbruch" gleich wahr oder unwahr ist. Wenn der "Zeit-
sperreabbruch" gleich wahr ist, dann folgt der Ja-Zweig zum Schritt 140, wo der "Puffer-bereit-für-Ausgabe" gleich wahr gesetzt wird. Der Schritt 142 ermittelt, ob der "Puffer bereit-für-Ausgabe" gleich wahr ist. Wenn also eine Zeitsperreperiode vergangen ist, stellt sich der Ausgangssteuerarbeitsliste ein teilweise gefüllter Puffer dar, der auf einer gleichen Basis wie die gefüllten Puffer geleert werden muß. Wenn der "Puffer-bereit-für-Ausgabe"-Speicherplatz nicht gleich wahr ist, wird dem Nein-Zweig entlang dem Pfad "C" 151 von Figur 3D zur Figur 3B und zum Schritt 122 gefolgt, welches die Aussetzung der Anweisung ist, die entweder ein Unterbrechungsanzeigesignal durch USART A oder der geeignete Zeitsperreperiodenablauf ist.
Figur 4 stellt das Fließbild für die Ausgangssteueranweisung dar. Die Ausgangssteueranweisung beginnt durch Initialisieren im Schritt 160 und Setzen des "Ausgangsquellenidentitätszeichen"-Speichers gleich "Ausgangssteueridentität". Der Schritt 162 setzt die Ausführung der ein Unterbrechungsanzeigesignal führenden Ausgangssteueranweisung durch die Warteschlange der Ausgangssteuerarbeitsliste aus. Mit anderen Worten wird die weitere Ausführung der Ausgangssteueranweisung ausgesetzt, bis ein Pufferdeskriptor in der Warteschlange der Ausgangssteuerarbeitsliste bereit ist/geleert zu werden. Wenn mehrere Puffer in der Warteschlange dran sind, werden sie auf der Basis "wer zuerst kommt, wird zuerst bedient" gehandhabt. Im Schritt 164 wird der Pufferdeskriptor von dem Beginn der Ausgangssteuerarbeitsliste erhalten. Der Schritt 166 sichert das Pufferquellenidentitätszeichen von dem Puffer-Deskriptor. Der Schritt 168 erhält die laufende Zeichenzahl von dem Puffer-Deskriptor. Im Schritt wird der Zeichenfolgezeiger von dem Puffer-Deskriptor erhalten, wodurch die Ausgangssteueranweisung den Datenspeicherpufferbereich in dem RAM finden kann.
Die Ausgangssteueranweisung (output handler task) führt dann den Entscheidungsschritt 172 durch, wo eine Feststellung getroffen wird, ob das Pufferspeicher-Identitätszeichen gleich dem Ausgangsquellen-Identitätszeichen ist. Das Pufferquellen-Identitätszeichen würde gleich dem Ausgangs-Identitätszeichen sein, wenn entweder die Ausgangssteueranweisung unterbrochen ist, was im folgenden noch näher erläutert wird, wenn zwei Puffer-Deskriptoren von der gleichen Datenquelle der Reihe nach bearbeitet werden, oder wenn die Ausgangssteueranweisung zum ersten Mal aufgerufen worden ist. Wenn die Entscheidung im Schritt 172 zum Ja-Zweig führt, würde die Zeichenfolge im Schritt 180 ausgedruckt werden. Wenn die Entscheidung aus dem Schritt 172 "Nein" ist, setzt der Schritt 174 das Ausgangsquellen-Identitätszeichen gleich dem Pufferquellen-Identitätszeichen.
Der Schritt 176 gibt der Anweisung den Befehl, einen Briefblattkopf in Zusammenarbeit mit USART 0, der Schaltung 58 und dem Schreiber 60 zu drucken. Im Schritt 178 wird das (die) Pufferquellen-Identitäts zeichen gedruckt, das die jeweilige Datenquelle identifiziert, welche diskrete Informationsmengen generiert, die in dem nun durch die Ausgangssteueranweisung gesteuerten Puffer gespeichert sind. Die Ausgangssteueranweisung führt den Schritt 180 aus, worin der Puffer durch USART 0 geleert wird, indem die Zeichenfolge der parallel formatierten digitalen Zeichen zum USART 0 und schließlich zum Zeilendrucker zugeführt wird. Der Puffer wird geleert auf der Basis "wer zuerst kommt, der wird zuerst bedient" in bezug auf die darin gespeicherten Zeichen. In bekannter Weise enthält der Schritt 180 das Dekrementieren der laufenden Zeichenzahl, wenn jedes Zeichen gedruckt wird und die Feststellung, wenn der gesamte Inhalt des Puffers in USART 0 geleert worden ist. Die AusgangsSteueranweisung führt dann den Schritt 182 aus, wo der Puffer-Deskriptor an das Ende der Pufferpoolliste zurückgestellt wird. Schließlich folgt die Ausgangssteueranweisung dem
Zweig "A" 183, der die Anweisung zum Aussetzungsschritt zurückführt.
Kurz gesagt/ kann der Mikroprozessor jede Eingangssteueranweisung unterbrechen zugunsten einer anderen Eingangssteueranweisung , und er kann auch die Ausgangssteueranweisung an irgendeinem Punkt innerhalb der Ausführung der letztgenannten Anweisung unterbrechen. Um diesen Aspekt des mehrfach genutzten Datenschreiberreglers zu verdeutlichen, ist in Figur 5 das Ausführungsprogramm-Fließbild dargestellt. Wenn das System eingeschaltet bzw. gestartet wird, wird eine ürladungsroutine, Schritt 200, durch den Mikroprozessor ausgeführt. Die Urladung definiert die Priorität jeder Anweisung und ihre entsprechende Umwandlungseinrichtung oder USART. Die Priorität basiert auf der Kritikalitat der von jeder Eingangssteueranweisung gesteuerten Information, die dem Prioritätsgrad oder Wichtigkeit jeder bestimmten Datenquelle entspricht. Bei der vorliegenden Erfindung hat die Ausgangssteueranweisung die niedrigste Priorität in bezug auf alle anderen Anweisungen. Jeder Eingangssteueranweisung ist ein Prioritätsgrad zugeordnet, so daß der Mikroprozessor die Daten effizient handhabt und in der Lage ist zu bestimmen, welche Anweisung auszuführen ist, wenn zwei Unterbrechungsanzeigesignale gleichzeitig auf dem entsprechenden Bus notiert werden.
In diesem Ausführungsbeispiel sind den Datenquellen, die höhere Übertragungsraten erzeugen, höhere Prioritätsgrade gegeben. Insbesondere sind den Daten, die über die Leitung 40 mit 120 zps (in Figur 1) durch den Anzeige- und Kommunikationscomputer 12 geliefert werden, der höchste Prioritätsgrad gegeben; somit hat die Eingangssteueranweisung A und entsprechend USART A die oberste Priorität, und diese Anweisung wird zu Gunsten irgendeiner anderen Anweisung ausgeführt, die von dem Mikroprozessor laufend ausgeführt wird. Die Eingangssteueranweisung A wird immer dann ausge-
-erführt, wenn USART A ein unterbrecherartiges Anzeigesignal
liefert oder die vergangene Zeit in dem Zeitsperretakt für die Eingangssteueranweisung A gleich einer vorbestimmten
Zeitsperreperiode der Anweisung ist.
Die nächsthöchste Priorität ist dem Turbinenbypass-Steuersystemcomputer 26 zugeordnet, der serielle Datenströme mit einer Geschwindigkeit von 120 zps überträgt. Zunehmend geringere Prioritätsgrade sind der Leitung 16, die sich
zwischen dem Anzeige- und Kommunikationscomputer 12 und
USART B erstreckt, der Leitung 20 vom Eingangskalkulationscomputer 18 und USART C und schließlich vom Steuercomputer 22 und zum USART D gegeben. Zusammenfassend sind die relativen Prioritäten der verschiedenen Anweisungen wie folgt: Eingangssteueranweisung A, Eingangssteueranweisung E, Eingangssteueranweisung B, Eingangssteueranweisung C, Eingangssteueranweisung D und Ausgangssteueranweisung.
Der Urladeschritt 20i>würde den Mikroprozessor initialisieren, indem die relativen Prioritätsgrade den Anweisungen
zugeordnet werden, wie es vorstehend beschrieben ist. Weiterhin würde der Schritt 200 den Zustand der gesamten
Hardware initialisieren, indem die Steuer-, Adress- und
Datenbusse gelöscht und irgendwelche Hardware-Prioritäts-Unterbrechungszustände festgelegt werden, die für den
richtigen Betrieb des mehrfach genutzten Datenschreiberreglers erforderlich sind.
Der Schritt 202, das Prioritätssteuerprogramm, blickt auf
jede Anweisung, die "fertig zur Ausführung" ist, und pickt sich die Anweisung heraus, der der höchste Prioritätsgrad
zugeordnet ist. Während der Initialisierung des Systems
würde die Eingangssteueranweisung A vom Schritt 110, dem
Erhalten des Puffer-Deskriptors, ausgeführt werden bis zum Schritt 122, dem Aussetzen der Eingangssteueranweisung,
die eine gewisse Art des Unterbrechungsanzeigesignals
-geführt. Der Mikroprozessor würde dann die gleichen Schritte für die Eingangssteueranweisung E ausführen, da diese Anweisung den nächst höheren Prioritätspegel hat, bis die Eingangssteueranweisung E ausgesetzt worden ist. Die erste Ausführung der übrigen Anweisungen würde folgen.
Der Schritt 204 in dem Ausführungsprogramm-Fließbild in Figur 5 ist ein Verteiler, der das Betriebssystem wieder in einen Zustand zurückbringt derart, daß die Anweisung, die ausgeführt worden ist, wieder in den Zustand zurückgebracht worden ist, in dem sie war, als die Anweisung zugunsten einer Anweisung mit höherer Priorität unterbrochen wurde- Weiterhin sichert der Schritt 204 von der Anweisungsbank 110 die jeweilige Anweisung, die während des Schritts 212 auszuführen ist. Eine Zwischenanweisungskommunikationssteuerung (intertask communication handler)^
~~ —— Schritt 216, sorgt für den
Mehrprozeßbetrieb für den Mikroprozessor, was an sich bekannt ist. Die Zwischenanweisungskommunikationssteuerung bildet ein Interface für die Zeitsperreperioden, die Unterbrechungssignale von den USARTs und die Unterbrechungssignale von anderen Vorrichtungen. Die Zwischenanweisungskommunikationssteuerung entnimmt auch der "ausgesetzten Liste" die gewählten Anweisungen, die eine gewisse Art von Unterbrechungsanzeigesignalen empfangen wurden, und setzt diese Anweisungen auf die "bereit-zum-Ausführen-Liste". Die Hardware-Unterbrechungssteuerung 218 bildet ein zwischen den Taktimpulsen, die durch eine Vorrichtung außerhalb des Mikroprozessors abgegeben werden, bildet ein Interface zwischen den Unterbrechungsanzeigesteuersignalen von den USART, die anzeigen, daß ein parallel formatiertes digitales Zeichen umgewandelt worden ist, und bildet ein Interface zwischen anderer Hardware, die ähnliche Unterbrechungssignale aussendet, die durch die Zwischenanweisungskommunikationssteuerung verarbeitet werden müssen. Eine logische Zeitsteuerung 220 verfolgt die ver-
brauchte Zeit und die Zeitsperretakte für die verschiedenen Eingangssteueranweisungen. Wie in Figur 5 dargestellt ist, arbeitet eine logische Zeitsteuerung 220 mit der Zwischenanweisungs-Kommunikationssteuerung 216 zusammen und ist auch mit der Hardware-Unterbrechungssteuerung 218 verbunden.
Die logische Eingangs/Ausgangssteuerung 222, die in Figur mit "logische I/O-Steuerung" bezeichnet ist, handhabt die USART-Unterbrechungsanzeigesignale und arbeitet mit diesen USART^und der Zwischenanweisungs-Kommunikationssteuerung zusammen.
Da es eine Aufgabe des mehrfach genutzten Datenschreiberreglers ist, den Datenstrom von einer Anzahl im wesentlichen unabhängiger Datentquellen zu verarbeiten, wobei dieser Strom relativ gleichzeitig von dem Regler empfangen werden könnte, muß der Regler ein gewisses Prioritätssystem und eine gewisse Art eines Unterbrechungssystems aufbauen, um die Integrität der Datenströme von den verschiedenen Vorrichtungen zu bewahren. Dieses Merkmal gestattet es dem mehrfach genutzten Datenschreibercontroller verschiedene Übertragungsgeschwindigkeiten von verschiedenen Datenquellen und auch verschiedene Informationsmengen von Datenquellen zu handhaben.
Als ein Beispiel sei angenommen, daß der Computer 18 einen Stoß von Daten auf der Leitung 20 zur Trenn- bzw. Isolationsschaltung 38 sendet. Jedes seriell formatiertes Zeichen wird durch USART C in ein parallel formatiertes digitales Zeichen umgewandelt. Nachdem USART C ein Zeichen vollständig umgewandelt hat, legt der USART ein Signal an den Steuerbus 62 an, das durch den Mikroprozessor 50 über sein Ausführungsprogramm erkannt wird. Unter der Annahme, daß zu dieser Zeit keine andere Anweisung ausgeführt wird, beginnt die Eingangssteueranweisung C die Ausführung im Schritt 124 und fährt in der oben beschriebenen Weise fort.
Der Zeitsperretakt für die Eingangssteueranweisung C ist während der Ausführung der Eingangssteueranweisung C gestoppt. In diesem Beispiel sei angenommen, daß, wenn die Eingangssteueranweisung C den Schritt 138 erreicht, der Computer 12 einen Datenstoß gesendet hat, den USART A in wenigstens ein digitales Zeichen umgewandelt hat. Zu diesem Zeitpunkt legt USART A ein Unterbrechungsanzeigesteuersignal an den Steuerbus 62 an, das dem Mikroprozessor durch dessen Ausführungsprogramm seinen Zustand anzeigt. Der Mikroprozessor erkennt, daß USART A eine höhere Priorität als USART C hat und die Eingangssteueranweisung A wiederum eine höhere Priorität als die Eingangssteueranweisung C hat. Danach wird der Schritt 138 von Anweisung C zugunsten der Ausführung von Anweisung A am Schritt 124 angehalten. Der Mikroprozessor erinnert durch die Zwischenanweisungs-Kommunikationssteuerung 216 und das damit in Beziehung stehende Mehrprozeßprogramm den Status der Eingangssteueranweisung C an ihrem letzten Ausführungspunkt. Anschließend wird die Anweisung A bis zum Schritt 122 ausgeführt, wo die Anweisung ausgesetzt wird, wobei die volle Umwandlung des nächsten Zeichens anhängig ist.
Zu diesem Zeitpunkt nimmt der Mikroprozessor die Eingangssteueranweisung C von seiner "bereit-zur-Ausführung-Liste", bringt die Eingangssteueranweisung C in den Ausführungsprogrammschritt 212, bringt die Anweisung C zurück in ihren Zustand vor der Unterbrechung und setzt die Ausführung dieser Anweisung am Schritt 138 fort, wo die Anweisung durch die höhere-Prioritäts-Anweisung unterbrochen worden ist. In diesem Sinne werden alle Anweisungen gemäß ihrer Priorität ausgeführt, und die Prioritäten werden dazu verwendet, Konflikte zwischen den Anweisungen zu lösen.
Es gibt einen doppelten Zweck, den verschiedenen USARTs, die mit entsprechenden Datenquellen verbunden sind, Prioritätsgrade zuzuordnen. Der Hauptgrund zum Zuordnen von
Prioritäten besteht darin, eine Blockierung zu vermeiden, wenn zwei Anweisungen im wesentlichen zur gleichen Zeit ausgeführt werden sollen. Der zweite Grund zum Zuordnen von Prioritäten besteht jedoch darin, sicherzustellen, daß die Datenströme, die mit einer höheren übertragungsgeschwindigkeit übertragen werden, schneller gehandhabt werden. Die Erhaltung bzw. der Schutz von Daten ist wesentlich. Da ihre relativen Übertragungsgeschwindigkeiten höher sind, würden die Anweisungen A und B normalerweise häufiger ausgeführt werden, als die Eingangssteueranweisungen B, C und D. Der AusgangsSteueranweisung ist die niedrigste Priorität zugewiesen, da die Erhaltung der darin befindlichen Information lediglich erfordern würde, die Größe des Speichers im lokalen RAM 52 zu erhöhen.
In einem Ausführungsbeispiel weist der mehrfach genutzte Da tenschreibercontroller zwei Pufferpoollisten oder zwei in einer Warteschlange befindliche Mengen von leeren Datenspeicherpuffern. Die zweite Pufferpoolliste oder die zweite in einer Warteschlange befindliche Menge von Datenspeicherpuffern enthält Puffer größerer Länge, d. h. mehr Datenspeicherraum als die erste Warteschlange von Puffern. Diese zweite Pufferpoolliste wird für Datenströme verwendet, die mit einer schnelleren Übertragungsgeschwindigkeit empfangen werden. Die Ausgangsanweisung kann den gesamten Datenstrom mit zwei Pufferpoolen in einer wirksameren Weise aufnehmen.
Die jeweilige Größe des RAM bzw. Arbeitsspeichers, der für jeden Puffer oder Puffer-Deskriptor zur Verfügung steht, kann so bemessen sein, daß die geschätzte Menge von Daten pro dikretem Datenstoß von einer bestimmten Datenquelle aufgenommen wird. Wenn also ein Turbinengenerator-Betriebssystem etwa 300 Zeichen pro Datenstoß zum mehrfach genutzten Datenschreibercontroller auf einer Datenleitung sendet, könnte jedem Puffer genügend Speicher zugeordnet sein, um
diese 300 Zeichen aufzunehmen. Auf diese Weise ist die Ausführung der Ausgangssteueranweisung optimiert.
In ähnlicher Weise können die Zeitsperreperioden für eine spezifische Datenquellenapplikation maßgeschneidert werden. Wenn die mit dem Regler verbundenen Datenquellen zu viele Daten generieren, die insgesamt von dem Regler gehandhabt werden sollen, können Speicherpuffer, wie beispielsweise Schieberegister, ein schnellerer Computer oder ein Kundenbezogener Kommunikations-Mikrocomputer verwendet werden, um die Aufgaben zu erfüllen.
Es sind jedoch noch weitere Ausführungsbeispiele möglich. Beispielsweise können andere Übertragungsgeschwindigkeiten von den verschiedenen Turbinengenerator-Betriebsdatenquellen verwendet werden, und es kann auch die Bezeichnung geändert werden, welche Datenquellen mit dem mehrfach genutzten logischen Datenschreiberregler verbunden werden. Weiterhin sei darauf hingewiesen, daß der Mikroprozessor mit dem lokalen RAM und dem lokalen ROM zu einer zentralen Bearbeitungseinheit kombiniert werden kann. Deshalb ist die in Figur 1 dargestellte Hardware-Architektur nur ein Beispiel für die diskreten funktionalen Abschnitte einer derartigen Einrichtung.

Claims (6)

Ansprüche
1. Verfahren zum Regeln und Kanalisieren des Datenstroms von mehreren im wesentlichen unabhängigen Vielfach-Turbinengenerator-Datenquellen zu einem einzelnen Datenschreiber, der eine Hartkopie der Turbinengeneratorendaten ausdruckt, wobei jede Datenquelle Datenströme, die die Betriebsbedingungen des Turbinengenerators darstellen, in diskreten Stößen von seriell formatierten digitalen Daten generiert und der Datenschreiber einen einzelnen Strom von seriell formatierten digitalen Zeichen empfängt und druckt,
dadurch gekennzeichnet, daß: eine unabhängige Umwandlungseinrichtung gebildet wird, um alle seriell formatierten digitalen Zeichen, die durch eine einzelne Datenquelle gesendet werden, in parallel formatierte digitale Zeichen umzuwandeln, -.
_ 2 —
jeder Umwandlungseinrichtung eine Priorität zugeordnet wird auf der Basis der relativen Kritikalität von durch die entsprechende Datenquelle gesendeten Daten, für jede Umwandlungseinrichtung ein leerer Datenspeicherpuffer aus einer in einer Warteschlange befindlichen Anzahl von leeren Datenspeicherpuffern reserviert wird,
die Zeichen von einem seriellen in ein paralleles Format mit der entsprechenden Ümwandlüngseinrichtung umgewandelt und die Umwandlung signalisiert werden, das umgewandelte Zeichen der Umwandlungseinrichtung gespeichert wird zum Signalisieren in dem entsprechenden reservierten Datenspeicherpuffer,
ermittelt wird, ob der reservierte Datenspeicherpuffer gefüllt ist mit parallel formatierten Zeichen nach der Ausführung des letzten Speicherschritts, der nächste in der Warteschlange verfügbare, leere Datenspeicherpuffer für den gefüllten Datenspeicherpuffer ersetzt wird,
der Speicherschritt und der Ermittlungsschritt des gefüllten Datenspeicherpuffers für alle Umwandlungseinrichtungen auf der Basis ihres relativen Prioritätsgrades wiederholt werden,
der gefüllte Datenspeicherpuffer über einen digitalen parallelen/seriellen Zeichenumsetzer in den Eingang des Datenschreibers entleert wird, wobei diese Entleerung nur erfolgt, wenn kein UmwandlungsSignaIe vorhanden ist, und dann auf der Basis "wer zuerst kommt, wird zuerst bedient" in bezug auf sowohl die in dem vollen Datenspeicherpuffer gespeicherten Daten als auch in bezug auf alle anderen vollen Datenspeicherpuffer, die zur Entleerung bereit sind, und wobei der Datenschreiber nur die diskrete Datenmenge aufzeichnet, die in jedem angebotenen Datenspeicherpuffer gespeichert ist, der einen entsprechenden diskreten Abschnitt der Turbinengenerator-Betriebsbedinung-Daten darstellt, und
jeder geleerte Datenspeicherpuffer wieder in die Warteschlange von leeren Datenspeicherpuffer zurückgeführt wird.
2. Verfahren nach Anspruch 1,
dadurch gekennzeichnet, daß wenigstens ein Identifizierungszeichen in jeden reservierten Datenspeicherpuffer eingegeben und gespeichert wird, das die jeweilige, Daten generierende Turbinengenerator-Datenguelle identifiziert, wobei das Identifizierungszeichen durch die der Datenquelle entsprechende Umwandlungseinrichtung zugeführt wird.
3. Verfahren nach Anspruch 2,
dadurch gekennzeichnet, daß: eine vorbestimmte Zeitsperreperiode für jede unabhängige Ümwandlungseinrichtung gebildet wird, die vergangene Zeit zwischen dem Speichern von einem umgewandelten Zeichen in den reservierten Datenspeicherpuffer, der seiner Umwandlungseinrichtung entspricht, und der Umwandlung des nächsten seriell formatierten digitalen Zeichens ermittelt wird, das durch die entsprechende Datenquelle gesendet wird, ermittelt wird, wann die vergangene Zeit die Zeitsperreperiode überschreitet, die jeder Ümwandlungseinrichtung entspricht, und
jeder teilweise gefüllte, reservierte Datenspeicherpuffer, der der Umwandlungseinrichtung entspricht, deren vergangene Zeit seine Zeitsperreperiode überschritten hat, geleert wird, wobei diese Leerung des partiell gefüllten Datenspeicherpuffers in gleicher Weise wie die vollen Datenspeicherpuffer auf der Basis "wer zuerst kommt, wird zuerst bedient" erfolgt.
-A-
4. Verfahren nach Anspruch 3,
dadurch gekennzeichnet, daß die Umwandlung im wesentlichen gleichzeitig in bezug zu allen anderen Schritten durchgeführt wird und die Schritte des Speicher ns von Zeichen, der Ermittlung, ob der Datenspeicherpuffer gefüllt ist, des Ersetzens von leeren Datenspeicherpuffern und die Ermittlung, wann die vergangene Zeit die Zeitsperreperiode für irgendeine Umwandlungseinrichtung überschreitet, relativ unabhängig für jede Umwandlungseinrichtung ausgeführt werden.
5. Verfahren nach Anspruch 4,
dadurch gekennzeichnet, daß wenigstens eine Turbinengenerator-Datenquelle einen Datenstrom mit höherer übertragungsgeschwindigkeit generiert als die anderen Datenquellen und die Umwandlung der schnelleren Datenzeichen schneller ausgeführt wird, die Reservierung eines leeren Speicherpuffers aus einer zweiten, in einer Warteschlange befindlichen Anzahl von leeren Datenspeicherpuffern erfolgt, die größer sind als die anderen Datenspeicherpuffer, die Speicherung der schnelleren Zeichen in die größeren Datenspeicherpuffer erfolgt, die Ersetzung der vollen Datenspeicherpuffer aus der zweiten Menge von in einer Warteschlange befindlichen leeren Datenspeicherpuffern erfolgt und der schnelleren Umwandlungseinrichtung die höchste Priorität gegeben wird in bezug auf die anderen Prioritätsgrade, die anderen Umwandlungseinrichtungen gegeben sind, die Zeichen mit einer geringeren Geschwindigkeit umwandeln.
6. Mehrfach genutzter Datenschreibercontroller zum Kanalisieren des Datenstroms von mehreren im wesentlichen unabhängigen Vielfach-Turbinengenerator-Datenquellen in einen einzelnen Datenschreiber, der eine Hartkopie der Turbinengeneratordaten ausdruckt, wobei jede Turbinenge-
nerator-Datenquelle Datenströine, die die Betriebsbedingungen eines Turbinengenerators darstellen, in diskreten Stoßen seriell formatierter digitaler Zeichen generiert, und wobei der Datenschreiber einen einzelnen Strom von seriell formatierten digitalen Zeichen empfängt und ausdruckt,
gekennzeichnet durch: mehrere unabhängige Umwandlungseinrichtungen, die jeweils mit einer der entsprechend unabhängigen Turbinengenerator-Datenquellen verbunden sind und die jeweils die seriell formatierten digitalen Zeichen, die durch die entsprechende Datenquelle gesendet sind, in parallel formatierte digitale Zeichen an ihrem Ausgang umwandelt und den Abschluß jeder Umwandlung signalisiert, mehrere leere Datenspeicherpuffer, die in einer verbundenen Liste zur Bildung einer Warteschlange angeordnet sind,
eine Ausgangs-Umwandlungseinrichtung, die parallel formatierte digitale Zeichen in seriell formatierte digitale Zeichen umwandelt, wobei der Ausgang der Ausgangs-Umwandlungseinrichtung mit dem Datenschreiber verbunden ist, und
einen Mikroprozessor, der mit den Datenspeicherpuffern, den mehreren Umwandlungseinrichtungen und der Ausgangs-Umwandlungseinrichtung verbunden ist und der den Datenstrom von jeder Umwandlungseinrichtung steuert, indem er einen leeren Datenspeicherpuffer für jede Umwandlungseinrichtung reserviert, jedes umgewandelte Zeichen in dem reservierten Datenspeicherpuffer, der der Umwandlungseinrichtung entspricht, speichert, den nächsten verfügbaren leeren Datenspeicherpuffer in der Warteschlange ersetzt, wenn irgendein reservierter Daten-, speicherpuffer mit parallel formatierten digitalen Zeichen vollständig gefüllt ist, die Priorität der Ausführung der Speicher- und Ersetzungsfunktionen ermittelt,
parallel formatierte digitale Zeichen der gefüllten Datenspeicherpuffer in die Ausgangs-Umwandlungseinrichtung entleert und die geleerten Datenspeicherpuffer an das Ende der Warteschlange leerer Datenspeicherpuffer zurückführt.
DE19843432524 1983-09-16 1984-09-05 Mehrfach genutzter datenschreiberregler und verfahren Withdrawn DE3432524A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US06/533,138 US4602341A (en) 1983-09-16 1983-09-16 Shared data logger controller and method

Publications (1)

Publication Number Publication Date
DE3432524A1 true DE3432524A1 (de) 1985-04-04

Family

ID=24124654

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19843432524 Withdrawn DE3432524A1 (de) 1983-09-16 1984-09-05 Mehrfach genutzter datenschreiberregler und verfahren

Country Status (7)

Country Link
US (1) US4602341A (de)
JP (1) JPS60102039A (de)
CH (1) CH668834A5 (de)
DE (1) DE3432524A1 (de)
FR (1) FR2552245B1 (de)
GB (1) GB2146816B (de)
IT (1) IT1176674B (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3719711A1 (de) * 1986-06-13 1987-12-17 Canon Kk Steuereinrichtung fuer ein bilderzeugungsgeraet
DE102016111817A1 (de) * 2016-06-28 2017-12-28 Prüftechnik Dieter Busch AG Datensammler sowie Einrichtung und Verfahren zum Sammeln von Messdaten

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3889550T2 (de) * 1987-01-12 1994-09-01 Fujitsu Ltd Datenübertragungspufferschaltungen für Datenaustausch.
JPS63205256A (ja) * 1987-02-23 1988-08-24 Alps Electric Co Ltd プリンタ
US4881184A (en) * 1987-09-08 1989-11-14 Datac, Inc. Turbine monitoring apparatus
US5006781A (en) * 1988-05-09 1991-04-09 Onan Corporation Microprocessor based integrated generator set controller apparatus and method
US5168208A (en) * 1988-05-09 1992-12-01 Onan Corporation Microprocessor based integrated generator set controller apparatus and method
US6061749A (en) * 1997-04-30 2000-05-09 Canon Kabushiki Kaisha Transformation of a first dataword received from a FIFO into an input register and subsequent dataword from the FIFO into a normalized output dataword
US6189069B1 (en) * 1998-02-17 2001-02-13 Microsoft Corporation Optimized logging of data elements to a data storage device
US6295608B1 (en) 1998-02-17 2001-09-25 Microsoft Corporation Optimized allocation of data elements among cache lines
US6351692B1 (en) 2000-10-24 2002-02-26 Kohler Co. Method and apparatus for configuring a genset controller for operation with particular gensets
US6555929B1 (en) 2000-10-24 2003-04-29 Kohler Co. Method and apparatus for preventing excessive reaction to a load disturbance by a generator set
US6701221B1 (en) 2000-10-24 2004-03-02 Kohler Co. Method and apparatus for preventing excessive heat generation in a alternator of a generator set
US6700356B1 (en) 2000-10-24 2004-03-02 Kohler Co. Method and apparatus for regulating the excitation of an alternator of a genset
US7088731B2 (en) * 2001-06-01 2006-08-08 Dune Networks Memory management for packet switching device
US20030009508A1 (en) * 2001-06-26 2003-01-09 Troia Terry A. Method and system for providing processor task scheduling
US7383315B2 (en) * 2001-08-02 2008-06-03 National Instruments Corporation System and method for a delta page protocol for caching, replication, and client/server networking
US20050036387A1 (en) * 2002-04-24 2005-02-17 Seal Brian K. Method of using flash memory for storing metering data
GB2466784B (en) * 2008-12-03 2013-01-02 Trysome Ltd Criticality of data in a data logging system

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3241125A (en) * 1962-05-22 1966-03-15 Ibm Memory allocation
US3701972A (en) * 1969-12-16 1972-10-31 Computer Retrieval Systems Inc Data processing system
GB1354155A (en) * 1971-11-05 1974-06-05 Ibm Digital data processing systems
GB1536046A (en) * 1976-06-30 1978-12-20 Ibm Data processing system power control
US4209831A (en) * 1978-09-05 1980-06-24 Leeds & Northrup Company Method and apparatus for controlling an interconnected distribution system which includes a jointly owned generating unit
US4280060A (en) * 1980-06-09 1981-07-21 General Electric Company Dedicated microcomputer-based control system for steam turbine-generators
JPS5730448A (en) * 1980-07-30 1982-02-18 Nippon Telegr & Teleph Corp <Ntt> Packet transmission system
JPS57161962A (en) * 1981-03-31 1982-10-05 Hitachi Ltd Communicating method between processors
US4417336A (en) * 1981-06-18 1983-11-22 The Bendix Corporation Method of testing with computers
JPS5897944A (ja) * 1981-12-07 1983-06-10 Nec Corp 複数マイクロプロセツサ間デ−タ転送方式
JPS58151749A (ja) * 1982-03-05 1983-09-09 Nec Corp パケツト多重化装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3719711A1 (de) * 1986-06-13 1987-12-17 Canon Kk Steuereinrichtung fuer ein bilderzeugungsgeraet
US5553288A (en) * 1986-06-13 1996-09-03 Canon Kabushiki Kaisha Control device for image forming apparatus
DE102016111817A1 (de) * 2016-06-28 2017-12-28 Prüftechnik Dieter Busch AG Datensammler sowie Einrichtung und Verfahren zum Sammeln von Messdaten

Also Published As

Publication number Publication date
CH668834A5 (de) 1989-01-31
US4602341A (en) 1986-07-22
IT1176674B (it) 1987-08-18
GB8417357D0 (en) 1984-08-08
GB2146816B (en) 1987-05-28
FR2552245A1 (fr) 1985-03-22
IT8422563A0 (it) 1984-09-07
GB2146816A (en) 1985-04-24
JPS60102039A (ja) 1985-06-06
FR2552245B1 (fr) 1989-11-24

Similar Documents

Publication Publication Date Title
DE3432524A1 (de) Mehrfach genutzter datenschreiberregler und verfahren
DE3586260T2 (de) Mikroprozessorsystem.
DE3689394T2 (de) Informationsverarbeitungsanlage mit einem Allzweckprozessor und einem Sonderzweckprozessor.
DE2113890C2 (de) Zentrale Verarbeitungseinrichtung für Datenverarbeitungsanlagen
DE2913288C2 (de) Multiprozessoranlage mit einer Vielzahl von Prozessorbausteinen
DE3642324C2 (de) Multiprozessoranlage mit Prozessor-Zugriffssteuerung
DE2943149C2 (de) Ringnetzwerk mit mehreren an eine Daten-Ringleitung angeschlossenen Prozessoren
DE2411963B2 (de) Datenverarbeitungsanlage
DE2635592A1 (de) Multiprozessor-abrufsystem
CH656728A5 (de) Schnittstellenschaltungsanordnung zur verbindung eines prozessors mit einem nachrichtenkanal.
EP0006164A1 (de) Multiprozessorsystem mit gemeinsam benutzbaren Speichern
EP0108969A2 (de) DMA-Steuereinrichtung zur Übertragung von Daten zwischen einem Datensender und einem Datenempfänger
DE1774052B1 (de) Rechner
DE2912073C2 (de)
EP0701204A2 (de) Verfahren zur Überlastvermeidung bei einem Systemanlauf eines Mehrrechnersystems und Mehrrechnersystem dafür
DE3938950C2 (de)
DE3382684T2 (de) Blockzaehlersystem zur ueberwachung des datentransfers.
DE3113188A1 (de) Verfahren und vorrichtung zur steuerung der informationsuebertragung zwischen einem speicherkomplex und verschiedenen verarbeitungseinheiten eines digitalen informationsverarbeitungssystems
DE2726679A1 (de) Kanalsteuerung fuer datenverarbeitungsanlagen und verfahren zu ihrem betrieb
DE69400008T2 (de) Verfahren und System zur Bestimmung der Zusammensetzung einer integrierten Schaltung.
DE1499286B2 (de) Datenbearbeitungsanlage
DE2813016C2 (de) Vorrichtung zum Verarbeiten von Signalisierungen in einer Fernmelde-, insbesondere Fernsprechvermittlungsanlage
DE3787213T2 (de) Verzögerungsverwaltungsverfahren und -vorrichtung.
DE3113189A1 (de) &#34;verfahren und vorrichtung zur umwandlung von digitalen zeichencodes, die von einem datenverarbeitungssystem empfangen oder geliefert werden&#34;
DE2419836C3 (de) Schaltungsanordnung zur Durchführung von Unterprogramm-Sprungbefehlen in Datenverarbeitungsanlagen

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee