-
Prozessorgesteuerte Anordnung zum Verarbeiten von Daten
-
Die Erfindung betrifft eine prozessorgesteuerte Anordnung zum Verarbeiten
von Daten, die in einem oder mehreren Datenspeichern enthalten sind.
-
Bei derartigen Datenverarbeitungssystemen müssen die Daten netzausfallsicher
gespeichert sein; daher kommen keine Schreib-/ Lesespeicher mit wahlfreiem Zugriff
in Halbleiterbauart (RAM), die aus bistabilen Kippstufen aufgebaut sind, für die
Datenspeicherung in Betracht. Netzausfallsichere Halbleiterspeicher sind allenfalls
reine Lesespeicher (ROM) oder programmierbare Lesespeicher (PROM). Sie lassen sich
jedoch in ihrem Dateninhalt nicht ändern. Auch die wiederholt programmierbaren Lesespeicher
(RePROM) können nur insgesamt gelöscht und neu mit Daten belegt werden. Dies wäre
einerseits sehr zeitraubend, und zum anderen erforderte es die Stillsetzung der
Gesamtanordnung für die Zeit zwischen dem Löschen und der Neueingabe von Daten,
da in dieser Zeit keine oder unvollständige Daten vorliegen, die zu falschen und
unter Umständen sogar gefährlichen Zuständen bei den an die die Daten verarbeitenden
Anordnung angeschlossenen Anlagen führen können. Aus diesem Grund setzt man bei
Datenverarbeitungssystemen dieser Art Prozeßrechner mit Magnetkernspeichern ein.
Sie sind ausfallsicher und änderbar. Da sie aber sowohl in der Anschaffung als auch
in den Ansteuermitteln verhältnismäßig teuer sind, lohnt sich ihr Einsatz nur bei
größeren Systemen.
-
Der Erfindung liegt die Aufgabe zugrunde, bei kleineren Systemen,
die mit einem Prozessor zusammenarbeiten, die Daten netzb ausfallsicher zu speichern
und gleichzeitig ihre Anderung zu ermöglichen.
-
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß jeder Datenspeicher
als wiederholt programmierbarer Festwertspeicher in Halbleiterbauart (RePROM) ausgebildet
ist, der mit dem Daten-und Adreßbus der prozessorgesteuerten Anordnung auswechselbar
verbunden ist, und ein zusätzlicher Speicher gleicher Bauart ebenfalls auswechselbar
als Anderungsspeicher eingesetzt ist, der einerseits an eine Programmiereinrichtung
angeschlossen ist, die ihrerseits mit einer Bedieneinheit zur Eingabe von Daten
in Verbindung steht, und auf den andererseits eine Löscheinrichtung wirkt.
-
Um Daten, die nicht verändert zu werden brauchen, schnell in den Anderungsspeicher
zu übertragen und den Änderungsvorgang zu vereinfachen, sieht eine Weiterbildung
der Erfindung vor, daß die Programmiereinrichtung und die Bedieneinheit unmittelbar
an den Daten- und Adreßbus des Prozessors angeschlossen sind.
-
Beim Eintasten von neuen Daten und beim Umordnen von bereits gespeicherten
ist es für die Bedienungsperson hilfreich, wenn sie jeweils eine Quittung für die
Übernahme des Eingetasteten erhält, sei es als bloßes Übernahmesignal oder in Form
einer Anzeige der übernommenen Daten. In einer Weiterbildung der Erfindung ist deshalb
die Bedieneinheit mit Anzeigemitteln versehen.
-
Die mit der Erfindung erzielten Vorteile bestehen insbesondere darin,
daß anstelle von teuren Kernspeichern billige Halbleiterspeicher eingesetzt werden
können und deren Dateninhalt im Bedarfsfall abgeändert werden kann, wobei der Anderungsvorgang
den laufenden Betrieb der Anordnung nicht stört und zu keiner Zeit, auch nicht während
des Anderns, durch Netzausfall Daten verloren gehen.
-
Im folgenden wird die Erfindung anhand eines Ausführungsbeispiels,
das in der Zeichnung dargestellt ist, näher beschrieben.
-
Die Zeichnung enthält ein Prinzipschaltbild einer prozessorgesteuerten
Anordnung zum zeit- und befehlsabhängigen Ein-, Aus- und Umschalten von haustechnischen
Anlagen der verschiedensten Art, wie Klimageräte, Heizungs- und Lüftungsanlagen,
Aufzüge, Alarmeinrichtungen und Überwachungsgeräte, um nur einige Beispiele zu nennen.
Sie sollen nach festgelegtem Programm zu bestimmten Tageszeiten selbsttätig ein-
oder ausgeschaltet bzw. umgeschaltet werden, wobei die Schaltzeitpunkte für jede
Anlage verschieden sein können und ferner von Tag zu Tag oder von Werktag zu Feiertag
usw. differieren. Außerdem sind Ein- und Ausschaltungen in Abhängigkeit von Signalen
vorzunehmen, die von einem Temperaturfühler, einem Spitzenlastwächter, einer Feuermeldeanlage
und ähnlichen Kontrolleinrichtungen geliefert werden.
-
Kernstück der Anordnung ist ein handelsüblicher Mikroprozessor 6,
der über einen Daten- und Adreßbus 10 mit einem Arbeitsspeicher 7 zusammenarbeitet.
Unter einem Mikroprozessor versteht man einen in Kleinstbauweise integrierten Prozessor,
unter dem wiederum eine Funktionseinheit eines digitalen Rechensystems verstanden
wird, die ein Leitwerk und ein Rechenwerk umfaßt. Das Leitwerk steuert über einen
Befehlszähler die Reihenfolge, in der die Befehle eines Programms aufgerufen werden,
entschlüsselt die Befehle und gibt mittels eines Befehlsregisters die für die Befehlsausführung
nötigen digitalen Signale ab. Das Rechenwerk rührt mit Hilfe eines Rechenregisters,
dem Akkumulator, Rechenoperatione; wie Addieren, Subtrahieren, Vergleichen, Verschieben
usw. durch. Das Programm, nach dem der Prozessor 6 arbeitet, ist im zugehörigen
Arbeitsspeicher 7 enthalten, der daneben auch noch Daten aufnehmen kann. Im Ausführungsbeispiel
besteht der Arbeitsspeicher 7 aus einem Schreib-/Lesespeicher mit wahlfreiem Zugriff
(RAM) für die laufenden Daten, kombiniert mit einem Lesespeicher (ROM oder PROM)
für die Konstanten und die Programmschritte. Der Abruf von Befehlen und Daten
aus
dem Arbeitsspeicher 7 geschieht wie jedes weitere Aussenden von Adressen und Befehlen
innerhalb der Anordnung über den Daten- und Adreßbus 10, das ist eine mehradrige
Leitung, die in beiden Richtungen benutzbar ist.
-
An den Daten- und Adreßbus 10 ist auch die Ausgabeeinheit 9 angeschlossen,
die zu den eingangs erwähnten haustechnischen Anlagen führt. Die Ausgabeeinheit
9 umfaßt Rangier- und Anpassungsschaltungen für die Adressen- und Befehlsübertragung
zu den zu steuernden Anlagen. Ferner hängt am Bus 10 die tingabeeinheit 8, die Signale
von einer Uhr im 10-Minuten-Takt und Signale von den erwähnten Kontrollvorrichtungen
empfängt und in einer Anpassungsschaltung systemgerecht aufbereitet.
-
Die Daten der einzelnen zu schaltenden Anlagen, bestehend aus Adresse,
Uhrzeit, Schaltbefehl und Zugehörigkeit zu einer Prioritätsgruppe für Spitzenlastabschaltung,
sind in den Datenspeichern la...d enthalten, für die je ein wiederholt programmierbarer
Lesespeicher (RePROM) eingesetzt ist. Die Datenspeicher 1a...d sind einzeln über
je eine Steckverbindung an den Daten- und Adreßbus 10 angeschlossen.
-
Bei handelsüblichen RePROMs bestehen die Speicherzellen aus Feldeffekt-Transistoren,
deren Gate-Elektroden im Urzustand alle vollständig isolieren (Zelleninhalt 0 oder
1, Je nach Definiton). Beim Programmieren legt man an ausgewählte Zellen eine hohe
Spannung an und bewirkt durch dieses Einbringen von Ladung auf die betreffenden
Zellen eine Umkehrung des Zelleninhalts, Die Ladungen lassen sich durch UV-Licht
löschen, womit der Ausgangszustand erreicht wird. Dies ist jedoch nicht selektiv,
sondern nur für jeweils eine ganze Baueinheit möglich.
-
Ein weiterer wiederholt programmierbarer Lesespeicher ist als Anderungsspeicher
3 über eine Steckverbindung und eine in beiden Richtungen wirksame Übertragungsleitung
mit einer am Daten- und Adreßbus 10 angeschlossenen Programmiereinrichtung 4 verbunden.
Die Programmiereinrichtung 4 besteht aus einer Anpassungsschaltung, die in beiden
Richtungen arbeitet.
-
Sie setzt einerseits an sie adressierte Daten auf dem Bus 10 in Spannungen
solcher Höhe um, wie sie zum Programmieren des Anderungsspeichers 4 erforderlich
sind, andererseits bringt sie auf ein Abfragesignal hin das Ergebnis der Programmierung,
also den neuen Inhalt der Speicherzellen im Anderungsspeicher 3 als Quittung der
stattgehabten Änderung zurück auf den Bus 10, von wo aus der Istwert unter Steuerung
durch den Mikroprozessor mit dem Sollwert verglichen werden kann.
-
Zur Eingabe von neuen Daten, sei es zur Anderung oder Ergänzung bereits
gespeicherter Daten, ist eine Bedieneinheit 5 an den Daten- und Adreßbus 10 angeschlossen.
Sie enthält eine Zehnertastatur zur Zifferneingabe und Steuertasten für das Aussenden
der eingetasteten Daten sowie zum Abruf weiterer Daten aus einem der Datenspeicher
la, b, c, d. Ferner ist sie mit Ziffernanzeigemitteln in Leuchtform für die eingetasteten
Ziffern und die abgerufenen Daten ausgerüstet. Man könnte die Bedieneinheit 5 auch
direkt mit der Programmiereinrichtung 4 verbinden, hätte dann aber nicht den Vorteil
des universellen Datenaustauschs zu Eingabe und Anzeigezwecken, wie ihn die Verbindung
über den Daten- und Adreßbus 10 bietet.
-
Der Platz in der Anordnung, an dem der Anderungsspeicher 3 steckbar
befestigt wird, liegt im Einwirkungsbereich einer UV-Lampe 2, die ihre Ein- und
Aussohaltbefehle über den Daten- und Adreßbus 10 erhält.
-
Die Anordnung arbeitet folgendermaßen. Bei jedem Signal an der Eingabeeinheit
8 fragt der Mikroprozessor 6 mittels des Programms im Arbeitsspeicher 7 die Datenspeicher
1a...d daraufhin ab, ob für diesen Eingabebefehl ein Ausgabebefehl vorliegt. Beispielsweise
kannaas eingehende Signal ein kodiertes Uhrensignal der Bedeutung: Es ist 10.20
Uhr sein.
-
Im Datenspeicher steht beispielsweise bei der Adresse für einen bestimmten
Lüfter der Schaltbefehl "Aus für den Zeitpunkt 10.20. In diesem Fall wird der Schaltbefehl
Aus" mit der Adresse des auszuschaltenden Geräts über den Bus 10 zur Ausgabeeinheit
9 übertragen. Dasselbe geschieht, wenn ein Spitzenlastüberschreitungssignal an der
Eingabeeinheit 8 eintrifft. In diesem Fall werden die in den Datenspeichern 1a...d
enthaltenen Adressen der nach ihrer Prioritätsgruppe als erstes abzuschaltenden
Geräte zusammen mit einem Abschaltbefehl programmgesteuert zur Ausgabeeinheit 9
gegeben. Bleibt dann noch Spitzenlastüberschreitung bestehen, werden die Adressen
der gemäß der gespeicherten Prioritätsgruppe als nächstes abzuschaltenden Geräte
abgefragt und ausgesendet. So gibt es viele Schaltvorgänge, die auf Eingabesignale
hin entsprechend den in den Datenspeichern enthaltenen Angaben selbsttätig ausgelöst
werden.
-
Um die Daten in einem der Datenspeicher la...d zu ändern, wird der
Inhalt des betreffenden Datenspeichers, z. B. lb, zunächst in den Schreib-/Leseteil-
(RAM) des Arbeitsspeichers 7 übertragen. Dies geschieht durch einen von der Bedieneinheit
5 aus gegebenen Befehl. Der Datenspeicher lb bleibt hierbei voll funktionsfähig,
sein Inhalt ändert sich vorerst noch nicht.
-
Aus dem Arbeitsspeicher 7 kann nun jeder Datenblock adressenweise
über die Bedieneinheit 5 abgerufen und dort angezeigt werden.
-
Adressenweise bedeutet, daß die zu einer Adresse gehörigen Daten auf
einmal abrufbar sind, es ist aber nicht nötig, die Adresse
anzugeben,
sondern beim Weiterschalten von der Bedieneinheit 5 aus erscheint die jeweils nächste
Adresse in der gespeicherten Reihenfolge. Das Andern geschieht durch Überschreiben
der zu ändernden Datenblöcke oder Datenelemente mit Hilfe der Zehnertastatur in
der Bedieneinheit 5. Jede Anderung gelangt über den Bus 10 zum Arbeitsspeicher 7
und wird dort festgehalten. Zum Schluß enthält der Arbeitsspeicher 7 komplett den
abgeänderten Inhalt für den Datenspeicher lb. Durch Drücken einer Taste auf der
Bedieneinheit 5 werden die Daten vom Arbeitsspeicher 7 zur Programmiereinrichtung
4 übertragen und von dort mit dem zum Programmieren erforderlichen Pegel in den
Anderungsspeicher 3 gegeben.
-
Dies erfolgt wechselweise unter ständigem Vergleich der nun im Anderungsspeicher
3 enthaltenen mit den vom Arbeitsspeicher 7 gesendeten Daten. Ist alles richtig
übertragen, wird dies in der Bedieneinheit 5 durch das Erlöschen einer Lampe, die
während des Einprogrammierens gebrannt hatte, um den Belegungszustand der Bedieneinheit
5 (sie kann während dieses Vorgangs nicht benutzt werden) anzuzeigen, signalisiert.
-
Jetzt tauscht die Bedienungsperson einfach die Steckplatte des Anderungsspeichers
3 mit der Steckplatte des Datenspeichers lb manuell aus und gibt über die Bedieneinheit
5 ein Löschkommando, das die UV-Lampe 2 zum Löschen des überholten Inhalts des vormals
als Datenspeicher lb eingesetzten Anderungsspeichers 3 einschaltet. Der Anderungsspeicher
3 ist damit zur Entgegennahme weiterer Anderungen in anderen Datenspeichern bereit.
-
Sollten die Eingangssignale in so dichter Folge eintreffen, daß sie
während des Umsteckens der Steckplatten für den Datenspeicher lb nicht kurzzeitig
gespeichert werden können, sondern unbedingt abgearbeitet werden müssen, besteht
auch hierfür eine Möglichkeit, da der Arbeitsspeicher 7 die Daten in der neuen Form
enthält. Es ist nur Sache des Programms, sie daraus abzurufen.
-
Weiß die Bedienungsperson vor Durchführen einer Anderung nicht, ob
das als Anderungsspeicher 3 eingesetzte RePROM gelöscht ist, kann sie dessen Inhalt
auf der Bedieneinheit 5 sichtbar machen. Unter Umständen, zum Beispiel bei bloßen
Ergänzungen, kann es auch sein, daß sich ein Löschvorgang erübrigt, wenn ein Vergleich
zwischen dem neuen, im Arbeitsspeicher 7 enthaltenen Dateninhalt mit dem Inhalt
des Anderungsspeichers 3 erweist, daß im letzteren an den bedeutsamen Positonen
keine Informationen enthalten sind.
-
Es ist nicht erforderlich, daß die Bedienungsperson den Datenspeicher,
in dem Daten zu ändern sind, als Baueinheit identifiziert. Wenn sie eine zum zu
ändernden Datenblock zugehörige Adresse auf der Bedieneinheit 5 eingibt, wird der
betreffende Datenspeicher unter Steuerung durch den Mikroprozessor, der alle Adressen
bis zur eingegebenen nacheinander abfragt, ermittelt und dessen Inhalt programmgesteuert
in den Schreib-/Leseteil des Arbeitsspeichers 7 übertragen. An der Steckkarte, die
den Datenspeicher als Baueinheit repräsentiert, leuchtet ein Lämpchen auf, das anzeigt,
welche Steckkarte nach vollzogener Anderung gegen die des Anderungsspeiohers 3 auszutauschen
ist.
-
Für den Mikroprozessor 6 zählt die Bedieneinheit 5 als Eingabeeinheit
(I-Port) wie die Eingabeeinheit 8, während die Programmiereinrichtung 4 als Eingabe-
und Ausgabeeinheit (1- und O-Port) angeschlossen ist. Dies kann bei der üblichen
Festlegung der Prioritäten der abzuarbeitenden Signale dahingehend berücksichtigt
werden, daß man den Mikroprozessor 6 Gefahrensignale an der Eingabeeinheit 8 vor
Signalen von der Bedieneinheit 5 bevorzugt abarbeiten läßt, uhrzeitabhängige Befehle
jedoch gegenüber einem laufenden Einprogrammierungsvorgang zurückstellt und die
kurze Zeit bis zu dessen Ende speichert.
-
Leerseite