-
-
triebs- oder Arbeitsablauf heeinf lußten Einrichtung jeweils
-
Rlnzelrcchner, nämlich sog. Einzweckrechner zuordnet, die nur zu ganz
bestimnzten Leistungen fähig sind. Solche Winzweckrechner sind in ihrem Aufbau fest
verdrahtet und umfassen häufig eine integrierte Schaltung, wobei bei Aer heute fortgeschrittenen
Miniaturisierung auf diesem Gebiet der vesar..te Rechner als Bauteil die Form eines
sog. "Rcchnerchips" aufweist. Zur Steucrung der dem jeweiligen Pechnercliip zugewiesenen
Prozeßabläufe erhält dieser Daten und Informationen, nicht selten in analoger Form,
über den jeweiligen Betrie}szustand der Einrichtung bzw.
-
des von ihm überwachten Teilbereichs; der Rechner benötigt ergänzend
hierzu dann noch Angaben über einrichtungsspezifische Daten, die in gespeicherter
Form verfügbar sind. Durch Zuführung dieser einrichtungsspezifischen Daten ist der
Rechnerchip in der Lage, bei gleichem inneren Aufbau Steuerungs- oder Regelungsvorgänge
für den ihm zugewiesenen Teilbereich der Einrichtung zu veranlassen, die speziell
fiir diese Einrichtung richtig und zutreffend sind; d.h. mit anderen Worten, daß
ein Einzweckrechner gleichen Aufbaus bei vielen verschiedenen rwinrichtungen dann
eingesetzt werden kann, wenn ihm Datenwerte zur Verfügung gestellt werden, die für
diese jeweilige Einrichtung spezifisch sind und die er jeweils bei Bedarf abrufen
kann.
-
Es versteht sich, daß eine "chip-interne" Speicherung dieser einrichtungsspezifischen
Daten unpraktisch ist, da eben dies jeweils eine Änderung des Rechncrchips erfordern
würde und eine Vielzahl von Programmierungen jeweils am einzelnen Rechnerchip erforderlich
wären.
-
Zweckmäßig ist daher eine externe Speicherung mit Hilfe eines zentralen
Hauptspeichers, der dann üblicherweise als Lesespeicher oder programmierbarer Lesespeicher,
also als ROM(=read only memory) oder als PROM(=programmable read only memory) ausgebildet
ist. Da, wie weiter vorn schon erwähnt, zweckmäßigerweise
eine
Vielzahl solcher einzelner Rechnerchips oder Finzweckrochner bei einer Einrichtung
eingesetzt werden, bei welcher unter Umständen sehr verschiedene Verf ahrens- und
Prozeßabläufe zu steuern sind, ist es erforderlich, ftir eine einwandfreie Verständigung
zwischen deiii. jeweilige Einzweckrechner und der einen zentralen i1auptspeicher
zu sorgen, damit der Datenaustausch oder der Datentransfer zwischen dem Hauptspeicher
und der Vielzahl der Einzweckrechner reibungslos und ausreichend schnell vonstatten
gehen.
-
An;lererseits ist es in diesem Zusammenhang erwünscht, daß insbesondere
Der Aufwand für den Datentransfer möglichst gering gehalten werden kann, d.h. daß
möglichst wenig Verbindunasleitunaen in effektiver Verdrahtung herzustellen sind.
-
Vorstellbarer wird das bisher beschriebene System, wenn man dieses
für einen konkreten Anwendungsfall betrachtet, was im folgenden anhand eines speziellen
Ausführungsbeispiels für den Betrieb eines Kraftfahrzeugs durchgeführt wird, wobei
jedoch darauf hinzuweisen ist, daß das erfindungsgemäße .Jatenübertragungssystem
auch bei beliebig anderen Anwendungsfällen mit Erfolg eingesetzt werden kann, sofern
eine Mehrzahl von Verfahrensahläufen steuernde Rechnern von einem zentralen llauptspeicher
bedient werden sollen.
-
Geht man vom Betrieb eines Kraftfahrzeugs aus, dann ergibt sich hier
der Bedarf der Steuerung oder Regelung einer Vielzahl von Verfahrensabläufen, die
sehr häufig in keiner Beziehung zueinander stehen und für die getrennte Einzweckrechner
eingesetzt werden können, die dann insgesamt Teil einer Zentralelektronik beim Kraftfahrzeug
sind. Besonders vorteilhaft ist hierbei, daß bei Bedarf zusätzliche Rechner ohne
Schwierigkeiten angeschlossen werden können, denen dann ebenfalls der eine zentrale
i1auptspeicher mit den nunmehr kraftfahrzeugspezifischen Daten zur
Verfügung
stehen. Als Verfahrensabläufe, die bei einem Kraftfahrzeug der Steuerung oder Regelung
bedürfen, seien beispielsweise genannt die Zündung, insbesondere die Bestimmung
des Zündzeitpunktes, die suEührung des Kraftstoffs zu den Drennkammern der Zylinder,
bevorzugt durch eine elektronische Kraftstoffeinspritzanlage, die Steuerung des
Gangwechselablaufs bei einem automatischen Cetriebe, Klimasteuerung im Inneren des
Kraftfahrzeugs, falls eine Klimaanlage vorhanden ist oder weitere, in ihren Ablauf
vom jeweiligen Betriebsgeschehen des Kraftfahrzeugs abhängige Vorgänge und Prozesse.
-
Bei allen diesen Steuerungsvorgängen können mit großem Vorteil Einzweckrechner
in Form von Rechnerchips eingesetzt werden, die unverändert für sämtliche Kraftfahrzeuge
entworfen und aufgebaut werden können, wobei sich insbesondere bei größeren Serien
günstige iTerstellungskosten ergeben. Es besteht dann der Bedarf, fahrzeugspezifische
Daten extern zu speichern, wozu die Zentralelektronik ijber einen pO oder PROM verfügt;
soll eine solche Zentralelektrenik dann auch bei anderen Kraftfahrzeugen eingesetzt
werden, braucht lediglich die Programmierung des zentralen Hauptspeichers geändert
zu werden. Durch eine solche externe Datenspeicherung ist insbesondere auch die
kostengünstige Versorgung von ];leineren Serien mit einer hochpräzise arbeitenden
Zentralelektronik möglich, weiterhin können Versuchsfahreuge in einfacher Weise
bemustert werden.
-
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, ein Verfahren
und eine Vorrichtung zur Datenübertragung, d.h. mit anderen Worten ein Datenübertragungssystem
zu schaffen, welches für eine schnelle und störungsfreie Verbindung der einzelnen
Einzweckrechner zum zentralen Hauptspeicher der Zentralelektronik sorgt.
-
Zur Lösung dieser Aufgabe geht die Erfiidung aus von dem cin-C"-angs
genannten Verfahren und besteht erfindungsgemäß darin, daß vor der Adressierung
des Speichers durch die an die gemeinsame Busleitung angeschlossenen Einzweckrechner
eine den Zugriff zum Speicher bestimmende Prioritätensteuerung durchgeführt und
die Busleitung durch Belegung einer getrennten Belegleitung (Busy-Leitung) gesperrt
wird, daß anschließend vom prioritätsberechtigten Rechner die Adresse des jeweils
abzufragenden gespeicherten Datenwertes je nach Anzahl der vorhandenen Busleitungen
in binären Teilwortpaketen seriell auf den Speicher gegeben wird, daß nach Zugriff
der ermittelte Datenwert ebenfalls in gleicher Parallel-Serienpaketbildung vom Speicher
dem Rechner zugeführt wird und daß anschliessend die Belegung der Busyleitung freigegeben
wird, wobei sämtliche Einzelschritte durch eine zentrale Taktsteuerung in ihrem
Ablauf bestimmt sind.
-
Bei der Erfindung ist insbesondere vorteilhaft, daß auf diese Weise
sämtliche zu speichernden Daten im jeweiligen System in einem Festwertspeicher zusammengefaßt
werden und daß der Datentransfer zwischen diesem Festwertspeicher, also dem zentralen
Hauptspeicher und den jeweiligen Einzelrechnern so systematisiert wird, daß eine
beliebige Systemzusammensetzung möqlich ist.
-
Besonders vorteilhaft ist auch, daß das erfindungsgemäße Datenübertragungssystem,
welches auch als Interface-Schaltung" bezeichnet werden kann, so ausgelegt werden
kann, daß die prioritätsbedürftigsten Rechner jeweils zuerst bedient werden können;
andererseits läßt sich das Datenübertragungssystem aber auch so auslegen, daß vom
Speicher ausgehend sämtliche Rechner in
schneller zyklischer Abfolge
abgefragt werden, ob ein Bedarf ffir die Übermittlung von fahrzeugspezifischen Daten
zum jeweils liegen Einzelrechner besteht. Bejaht der Einzelrechner diese Frage des
zentralen Hauptspeichers, nn wird eine zusätzliche Belegleitung aktiviert bzw. in
den Zustand log 1 gebracht und der Datentransfer kann stattfinden.
-
Weitere Ausgestaltungen der Erfindung sind Gegenstand der Unteransprüche
und in diesen niedergelegt bzw. lassen sich der im nachfolgenden angegebenen Beschreibung
entnehmen, in Speicher anhand der Figuren Aufbau und Wirkungsweise von Ausführungsbeispielen
im einzelnen näher erläutert werden. Dabei zeigen: Fig. 1 eine Prinzipbilddarstellung
der Verbindung zwischen den einzelnen Rechnern und der zentralen Hauptspeicher,
Fig. 2 ein Blockschaltbild des sich auf der Speicherseite befindlichen Teils des
Übertragungssystems, Fig. 3 das Blockschaltbild der Fig. 2 in detaillierter Dar-Stellung,
Fig. 4 ein Blockschaltbild des sich auf der jeweiligen Rechnerseitc 1efind lichen
Tel ls des Übertragungssystems, Fig. 5 das Blockschaltbild der Fig. 4 in detaillierter
Darstellung, Fig. 6 den zeitlichen Ablauf bei der Datenübertragung einschließlich
der Prioritätszuteilung an den jeweiligen Rechner in Form von Zeitdiagrammen, Fig.
7a den detaillierten Schaltungsaufbau eines den Ablauf -7d des Datentransfers steuernden
Zählers sowie seinen Funktionsablauf, 709824/0860
Fig. 8 ein weiteres
Ausführungsbeispiel zun Darstellung der Prioritätenverteilung im Datenübertragungssystem.
-
Fig. 9 das s Zeitdiagramm des zeitlichen Ablaufs Rechnerseite.
-
Fig. 1 zeigt den Aufbau einer Zentralelektronik, speziell bei einem
Kraftfahreug. Die Zentralelektronik umfaßt eine Anzahl von Rechnern 1, 2... n-1,
n, die jeweils bestimmte Steuerungs-Aufgaben für den fletrieb eines Kraftfahrzeugs
erfüllen und die über eine einzige gemeinsame Verbindungsleitung 5 mit einem einzigen
zentralen Hauptspeicher G verbunden sind. Bei dem in zeigt 1 dargestellten Ausführungsbeispiel
umfaßt die Verbindungsleitung 5 vier Informationsleitungen INFO sowie eine zusätzliche
Belegleitung, die im folgenden als Busy-Leitung bezeichnet wird. Es sei sofort darauf
hingewiesen, daß im Grunde jede belichige Anzahl von einzelnen verbindungsleitungen,
also INFO-Leitungen verwendet werden kann. Aus technisch zweckmäßigen Gründen ist
die Anzahl der INFO-Leitungen nach oben jedoch begrenzt, denn jede Leitung benötigt
an jedem Rechner eine zusätzliche Anschlußklemme oder einen Anschlußpin, deren Zahl
von nicht zu unterschätzender Bedeutung fiir die Herstellungskosten eines solchen
Übertragungssystems sind. Das vorliegende übertragungssystem der Fig. 1 arbeitet
mit 8 bit Worten, das bedeutet, daß normalerweise die von den jeweiligen n Rechnern
1, 2 an den Hauptspeicher 6 zu übermittelnden Adressen 8 bit umfassen, aus 8 bit
bestehen auch die vom Hauptspeicher 6 den Einzweckrechnern übermittelten Datenwerte,
die diese zur Durchführung bestimmter Rechenoperationen benötigen. Im folgenden
wird im übrigen anstelle des Begriffes von 3 bit auch der Begriff 1 Byte verwendet.
-
7m besseren Verständnis des Übertragungssystems wird im folgenden
zunächst ein Grundwirkungsprinzip eines solchen Einzweckrechners und seine Beziehung
zum Hauptspeicher 6 genauer erläutert, wobei aus Zweckmäßigkeitsgründen der Hauptrechner
für die Benzineinspritzung beschrieben wird, obwohl selbstverständlich
auch
jeder andere Rechner in dieser oder anderer Form nach dem im nachfolgenden beschriebenen
Prinzip arbeitet.
-
Der Darstellung der Fig. 1 läßt sich entnehmen, <laß den Rechnern
ein Block 7 vorgeschaltet ist, der diese mit den jeweiligen, zum gegebenen Betriebs
zeitpunkt vorliegenden Betriebszustandsdaten versorgt. Bei dem Rechner für die Benzineinspritzung
kann es sich hierbei um ein Analogsignal handeln, welches dem Rechner mitteilt,
daß sich die in ihrem Prozeßablauf zu steuernde Brennkraftmaschine etwa im Leerlauf
befindet (ein vom Gaspedal zu betätigender Leerlaufschalter kann geschlossen sein),
gleichzeitig bekommt der Hauptrechner für die Benzineinspritzung eine Information
über die gegenwärtige Temperatur der Brennkraftmaschine, beispielsweise durch Abtastung
der Kühlwassertemperatur. Aus diesen beiden und gegebenenfalls weiteren, im folgenden
als Statussignale bezeichneten Analoginformationen muß der Hauptrechner für die
Benzineinspritzung, bei gleichzeitiger Berücksichtigung der Drehzahl der Trennkraftraschine
eine Impulsfolgen entwickeln, die den Einspritzventilen der Brennkraftmaschine zugeführt
wird und wobei die Dauer Jer einzelnen Impulse die Dauer der c5ffnungszeiten der
Einspritzventile bestimmt. Wie schon eingangs erwähnt ist es aus technologischen
Gründen unzweckmäßig, für jeden Rechner eine chipinternc Speicherung vorzusehen,
die dem Rechner einen entsprechenden Datenwert übermitteln könnte, der bei der Erzeugung
der Kraftstoffeinspritzimpulse verarbeitet werden könnte. Es wird daher beim vorliegenden
Ausführungsbeispiel so vorgegangen, daß beispielsweise der Jlauptrechner 1 für die
Kraftstoffeinspritzung aus den beiden ihm zugegangenen Statussignalen eine Adresse
zusammenstellt (dics kann auch ein separater Adressenrechner durchführen), diese
Adresse wird in im folgenden noch genauer zu beschreibender <eise und zu bestimmten
Zeiten dem Hauptspeicher 6 übermittelt, der eine dieser Adresse entsprechende kraftfahrzeugspezifische
Information
0der einen Datenwert in Forst eines 8 bit l.ortes auf
den Pechner zurücküberträgt.
-
Es vorsteht sich, daß auf Grund des tJmstandes, daß nur eine einzige
Verbindungsleitung 5 vorgesehen ist, mit welcher s:-mtliche Rechner parallel verbunden
sind, die jeweilige Verbindurch Hauptspeicher G/Rcchner n innerhalb eines Zeitraums
vonstatten seht, während welchem die anderen Rechner nicht mit dem Hauptspeicher
6 in Verbindung stehen und auch Daran gehindert sein miissen, eine Verbindung auf
nehmen zu können.
-
naher ist bei der Erirterung eines solchen Datenübertragungssystems
zunächst auf den Begriff der Priorität einzugehen, durch welchen festgelegt wird,
wann und unter welchen Bedingungen ein Rechner mit dem hauptspeicher 6 Kontakt auf
nehmen und einen Datentransfer vornehmen kann.
-
Innerhalb des erfindungsgemäßen Rahmens sind mehrere Möglichkeiten
der Kontaktaufnahme und Kontaktherstellung zwischen Re ehner und Hauptspeicher 6
vorgesehen, es ist jedoch zweckmäßig, im folgenden zunächst anhand der Darstellung
der Fig. 2 den grundsätzlichen Aufbau und die Wirkungsweise eines Datenübertraqungssystems
zu erläutern, bevor noch anc1erc Möglichkeiten für den prioritätsbestimmenden Zugriff
zwischen Rechner und Speicher erörtert werden; hierauf wird weiter unten dann noch
anhand der Fig. 8 im einzelnen einzugehen sein. Zum vorliegenden Zeitpunkt sei lediglich
darauf hingewiesen, daß es noch weitere Möglichkeiten des Speicherzugriffs gibt,
um eine fehlerhafte Doppelbelegung der Verbindungsleitung 5 zu verhindern.
-
Bei dem im folgenden in Verbindung mit der Darstellung der Fig. 2
beschriebenen Speicherzugriff handelt es sich um eine vom hauptspeicher 6 selbst
bestimmte Kontaktaufnahme zwischen Rechner und Speicher in der Weise, daß der Hauptspeicher
6 zyklisch sämtliche an ihn angeschlossenen Rechner 1, 2, n abfragt
und
einen Speicherzugriff anbietet; benötigt einer der Rechner eine Information aus
dem Hauptspeicher f, kann wir 1 die Verbindung hergestellt und die Belegung der
Verbindungsleitung 5 für sämtliche anderen Rechner gesperrt, gleichzeitig die zyklische
Abfragung der anderen Rechner durch den Hauptspeicher 6 selbst unterbrochen. Hierbei
können Rechner mit höchster Priorität bevorzugt berücksichtigt werden.
-
Bevor auf das Ausführungsbeispiel der Fig. 2 genauer eingegangen wird,
sei darauf hingewiesen, daß das erfindungsgemäße Datenübertragungssystem anhand
einer Verbindungsleitung 5 beschrieben wird, die aus vier einzelnen Leitungen INFO
0 zur Datenübertragung sowie aus einer Belegleitung BUSY besteht.
-
Selbstverständlich sind, wie weiter oben schon kurz augedeu tet, auch
mehr oder weniger als vier Leitungen INFO oder £usleitungen möglich, insbesondere
ist bei nur geringer Verdrahtungskapazität ein Zweileitungsbus zweckmäßig.
-
Werden vier Dusleitungen und eine Belegletung BUSY verwendet, dann
arbeitet das Datenübertragungssystem in der Weise, daß nach Abklärung der Priorität
auf den vier Busleitungen INFO zunächst die erste Hälfte der Adresse, d.h. ein 4
bit Wort bzw.
-
1/2 Byte übertragen, wird zum nächsten Taktzeitraum wird die zweite
Hälfte des 8 bit Worts der Adresse übertragen; anschließend führt im nächsten Takt
oder in nächsten Schritt der Hauptspeicher seinen Zugriff aus und überträgt während
der nächsten zwei Taktschritte seriell jeweils ein binäres Halbwortpaket, beim vorliegenden
Ausführungsbeispiel bestehend aus 4 l)it oder 1/2 Byte. rTan benötigt daher, wie
weiter unten noch ausführlich erläutert wird, bei einem Fünf-Leitungs-Bus lediglich
6 Grundtakte für den Speicher zugriff, verglichen mit einem Zwei-Leitungs-Bus, wo
wesentlich mehr Grundtakte für den Datentransfer erforderlich sind und daher auch
der Kontaktzeitraum zwischen jeweils einem der Einzweckrechner und dem Hauptspeicher
6 beträchtlich verlängert ist.
-
T.C eingangs schon erwähnt, erfolgt bei der im folgenden zunächst
zu besprechenden Ausfxührungsbeispiel anhand der Fig.
-
die Verteilung der Speicherzugriffe zyklisch, wobei der Speieher selbst
vor den eigentlichen Datentransfer, also vor der Übergabe der Ac'ressc land der
vermittelten Datenwerte den Einzelrechner bestimmt, der mit ihm zu einem vorgegebenen
Zeitpunkt in Kontakt treten soll, jedoch nicht muß.
-
Hierzu weist der Hauptspeicher 6 eine Ablaufsteuerschaltung 8 auf,
die beispielsweise in Form eines Zählers ausgebildet sein kann ihn in zyklischer
Abfolge an ihren drei Ausgängen Ql, Q2 und n3 ein aus 3 bit bestehendes binäres
Wort erzeugt, welches als Rechnerkennung zugrunde gelegt werden kann. Wie ersichtlich
können, wenn der der Ablaufsteuerschaltung zugrunde gelegte 3 bit Zähler in üblicher
tteisc, gespeist von einer.
-
Grundtakt fo umläuft, acht verschiedene Kennungen erzeugt werden,
so daß bei dieser Ausführungsbeispiel acht verschiedene Einzweckrechner, falls gewünscht,
zyklisch mit dem Hauptspei eher 6 verbunden werden können. Jedes so erzeugte, 3
bit tlfassende Wort (entsprechend einer Rechnerkennun kann entweder unmittelbar
auf drei der Verbindungsleitungen, etwa auf die Busleitungen a, 1), c gelegt werden
oder die Ausgänge Q1, Q2 und Q3 der Ablaufsteuerschaltung 8 werden zunächst einer
Prioritätsdekodierschaltung 9 zugeführt, die entsprechend ihrer Kodierung die Prioritätskennziffer
für den jeweiligen, über die Busleitungen a, b und c angesteuerten Rechner erzeugt.
Der Ausgang der Prioritätsdekodierschaltung liegt eingangsseitig an einem Senderegister
10, welches taktgesteuert umgeschaltet werden kann. Zum Zeitpunkt der Speicherzugriffsverteilung
ist das Senderegister 10 so geschaltet, daß die Bus leitungen a, b und c mit den
Ausgängen der Prioritätsdekodierschaltung 9 verhunden sind, so daß zu jedem Takt
auf den Busleitungen a, b und c eine neue, auf den zyklisch umlaufenden Zählerstand
der
Ablaufsteuerschaltung 8 zurückgehende Rechnerkennung leigt.
Rechnerseitig wird diese Kennung von der. Rechner, für den sie jeweils bestimmt
ist, erkannt und der jeweilige Rechner 1, 2, n belegt gegebenenfalls die Rückleitung
oder Belegleitung BUSY, wodurch die Ablaufsteuerschaltung 8 in dieser Position abgestoppt
und festgehalten wird. r. versteht sich, daß der gesamte Ablauf daher taktgesteuert
und zwangssynchronisiert sein muß.
-
Sobald dann der jeweils angesprochene Rechner 1, 2, n durch Belegung
der Leitung BUSY den Durchlauf der Ablaufstouerschaltung 8 gestoppt hat, gelangt
das erste 1/2 Eyte der Adresse auf die Busleitungen a, b, c, d und von diesen auf
eine Empfangsschaltung 11; nach einem weiteren Taktschritt wird auch die zweite
Hälfte der Adresse, also das letzte 1/2 Byte auf die Empfangsschaltung 11 übertragen.
fur präzisen Adressenbildung kann der übertragenen Adresse auch; noch ein von der
Pochnerkennung abgeleitetes Signal, und zwar entsprechend den Ausgängen Q1, Q2,
Q3 der Ablaufsteuerschaltung hinzugefügt werden, wodurch der Hauptrechner 6 weiß,
welcher Pedlncrr jeweils mit ihm verbunden ist und die Adresse in das richtige Speicherabteil
gelangt.
-
Zum taktmäßigen Datentransfer ist eine Speichertaktschaltung 12 vorgesehen,
die an ihren Ausgängen JO - J5 ein zyklisch durchlaufendes Signal erzeugt, wodurch
der Ablauf des Datentransfers gesteuert wind. Von der Empfangsschaltung 11 gelangt
die gesamte 8 bit Adresse dann auf den eigentlichen Festwertspeicher 13, der einen
dieser Adresse entsprechenden Datenwert auf die Sendeschaltung 10 gibt, die dann,
gesteuert von den Takten j4 und J5 der Speichertaktschaltung 12 das asz ermittelte
Datenwort in zwei Halbwortpaketen auf die Verbindungsleitung INFO gibt. Vährend
dieser ganzen Zeit ist die Leitung BUSY belegt und eine Verbindungsaufnahme mit
anderen Rechnern ist nicht möglich, da die belegte Leitung BUSY das Ansprechen weiteurer
Rechner
infolge Sperrung der Ablaufsteuerschaltung hindert. Ist der Datentransfer beendet,
wird die Leitung wieder freigegeben und der zyklische Durchlauf weiterer nerkennungen
läuft wieder an.
-
In detaillierter Schaltung ist das Blockschaltbild der Fig. 2 in Fig.
3 erläutert, wobei die einzelnen rIöcke gestrichelt ur.-randet sind.
-
Zur Prioritätsverteilung bzw. zur Rechnerzugriffssteuerung umfaßt
die !\hlaufsteuersehaltung 8 des 3lockschaltlilds der Fig. 2 einen Zähler 14, der
die prioritäten eine nach der anderen durchzahlt. Der Zähler 14 ist als 3 bit Zähler
geschaltet, Caher erscheint an seinen Ausgängen Q1 - Q3 achtmal ein unterschiedliches
Binärazort, bevor sich das erste Binärwort wiederholt; es versteht sich aber, daß
der Zähler 14 selbstverstündlich so geschaltet werden kann, daß sich je nach Anzahl
der rit dem Ilauptspeicher 6 zu verbindenden Rechner der zyklische Umlauf des Zählers
14 auch auf eine geringere Anzahl von zu erzeugenden unterschiedlichen Binärworten
einstellen läßt, bevor eine Wiederholung stattfindet. Zum vorzeitigen Rücksetzen
des Zählers 14 ist eine Vergleicherlogik vorgesehen, die aus drei Exklusiven ODER-Gattern
15, 16 und 17 besteht, deren Auslängen mit den Eingängen eines nachgeschalteten
NrSD-Gatters 1 8 verbunden sind, welches über ein weiteres NAND-Gatter 19 mit dem
Rückstelleingang Pr des Zählers 14 verbunden ist. Den jeweils anderen Eingängen
der Exklusiven ODER-Gatter 15,16 und 17 sind Spannungssignale von einer willkürlich
beschaltbaren Widerstandsmatrix 20 zugeführt, die beim Ausführungsbeispiel so geschaltet
ist, daß jeweils bei Auftreten eines bestimmten Binarwortes am Zähler ausgang der
Zähler auf Null zurückgestellt und damit sein zyklischer Ablauf wiederholt wird.
-
Das jeweilige Ausgangsbinärwort entsprechend den logischen Zuständen
der Ausgänge Q1, Q2 und Q3 des Zählers 14, das im übrigen auch als Prioritätsvorkennung
bezeichnet werden kann, geht auf die zugeordneten Eingänge der in unteren Teil der
Fig. 3 dargestellten Prioritätsdekodierschaltung 9, die die Prioritätsvorkennung
gegebenenfalls noch umkodiert, unter Umständen jedoch auch ohne Änderung ausgangsseitig
auf eine nachgeschaltete Umschaltlogik 22 überträgt. Desweiteren geht die Rechnerkennung
Q1, Q2 und Q3 noch auf eine Adressen-Hilfsbildungsschaltung 23, die aus der Rechnerkennung
Q1, Q2 und Q3 in entsprechender gewünschter Umkodierung an ihren Ausgängen B1, B2
und B3 logische Zustände erscheinen läßt, die einer dem Festwertspeicher 13 vorgeschalteten
Adressensummierschaltung 24 zugeführt werden, worauf weiter unten noch eingegangen
wird.
-
zunächst ergibt sich jedoch folgenles. Die von der Prioritätsdekodierschaltung
9 gegebenenfalls umkodierte Rechnerkennung geht auf entsprechend zugeordnete Eingänge
einer Umschaltlogik 22, die an zugeordneten Ausgängen je nach ihrem Schaltzustand
entweder die (umkodierte) Rechnerkennung auf eine nachgeschaltete Übertragungsschaltung
25 überträgt, die ausgangsseitig unmittelbar mit den Busleitungen a, b, c, d verbunden
ist oder die in ihrem anderen Schaltzustand Ausgänge des Festvertspeichers 13 über
die Übertragungsschaltung 25 auf die Busleitungen a, b, c, d legt.
-
Die Schaltzustände der Umschaltlogik 22 bestimmen sich aus dem Zustand
des auf der Belegleitung oder auf der Leitung BUSY befindlichen Signals. Weistdie
Belegleitung das Signal BUSY auf, d.h. 3ttSY "nicht", ist also die gesamte Verbindungsleitung
5 nicht belegt, dann befindet sich die Umschaltlogik 22 in ihrem ersten Schaltzustand
und überträgt die gegebenenfalls umkodierte Rechnerkennung Q1, Q2, Q3 auf die ersten
drei Busleitungen a, b, c. In dieser Fall befindet sich selbstverständlich
auch
die Übertragungsschaltung 25 in ihren durchgeschalteten Zustand. Auf die rechnerseitige
Empfangsschaltung der Rechnerkennung, die auf den Busleitungen a, b, c nach der
soeben geschilderten Abfolge zyklisch mit jedem Taktimpuls sich ändernd auftritt,
wird weiter unten noch genauer eingegangen, zunächst sei lediglich darauf hingewiesen,
daß der jeweils von seiner :ennuna angesprochene Rechner zwei Bedarf der Kontaktaufnahme
mit dem Festwertspeicher 13 die Gelegenbeit hat, die Leitung BUSY zu belegen, dadurch
den zyklischen Ablauf der Rechnerkennung durch. den Zähler 14 abzustoppen und die
Umschaltlogil 22 in ihren anderen Schaltzustand zu bringen, und zwar, wie. aus der
Darstellung der Fig. 3 ersichtlich, durch Zuleitung des Signals BUSY auf einen Eingang
der Umschaltloalk 22. Das' gleiche Signal PUSY gelangt von der Leitung BUSY auf
c'en Eingang Ci des Zählers 14 und stoppt diesen. Nach Vereinbarung entspricht das
Signal BUSY dem Zustand log 1 auf der Leitung BUSY.
-
rci der Umschaltlogik 22 kann es sich um einen einfachen Relaisumschalter
handeln, es können aber aucyh befv@ grierte elektronische Umschaltgatter verwendet
werden, wie sie beispielsweise unter der lsezeichnung 4019 von der CA vertrieben
werden. Bei dem Zähler 14 handelt es sich um den integrierten Zählerchip 4029 der
RCA. Die der Umschaltlogik nachgeschaltete Übertragungsschaltung 25 besteht aus
sogenannten Transmission-Gates der Bezeichnung 4016 der RCA in integrierter Ausführung.
Es sind zwei Vierfach-Transmission-Gatter 25 und 25a vorgesehen, die abwechselnd
ausgangsseitig mit den leitungen a - d verbunden sind.
-
Sobald die Rechnerkennung auf den flusleitunqen a, b, c liegt und
ein Rechner daraufhin die Leitung BUSY belegt llat, schaltet, wie schon erwähnt,
das Signal Busy auch die Umschaltlogik
22 um und veranlaßt über
eine Leitung 26 mit dem Signal Busy auf den Rückstelleingang ,Reset' eines in Form
eines rückgekoppelten Schieberegisters ausgebildeten Zählers 27, auf den im folgenden
sofort anhand der Fig. 7 genauer eingegangen wird, die taktmäßig Ablaufsteuerung
für den Datentransfer. Auf den taktmäßigen Ablauf wird im übrigen weiter unten anhand
des Zeitdiagramms der Fig. 6 noch genauer eingegangen.
-
Der Darstellung der Fig. 7a läßt sich der Aufbau des Zählers 27 entnehmen;
er besteht aus einer Anzahl miteinander verhundener bistabiler Kippglieder, bevorzugt
sogenannter D-Flipflops 28, 29, 30, denen der Grundsystemtakt fo für die zyklische
Weiterschaltung zugeführt ist und wobei der Ausgang des letzten D-Flipflops ueber
einen Inverter 31 auf den Eingang rückgekoppelt ist. Dementsprechend erzeugt ein
solcher Zähler, der unter der Bezeichnung "Johnson ZAhler" bekannt ist, an seinen
Ausgängen PO, Pl, P2 die in Fig. 7b angegebene Zustandsfolge 1. - 6. Diese Zählerzustande
1. - 6. werden über die Dekodierschaltung 100 der Fig. 7c, bestehend aus einer Reihe
von NO-attern 101 - 106, decodiert. Die Ausgangssignale JO, J1, J2, J3, J4, J5 der
Dekodierschaltung 100 durchlaufen in zyklischer Abfolge den Zustand log 1. Diese
Ausgangssignale JO - J5 werden im vorliegenden Fall zur Steuerung des Datentransferablaufs
verwendet. in Zeitdiagramm der Steuersignale Ja - J5 zeigt Fig. 7d.
-
4hrenu der ersten Taktzeit JO des Johnson Zählers, wie er im folgenden
bezeichnet werden soll (erhältlich unter der Nummer 4022 der RCA) erfolgt zuerst
die Rückstellung auf Null von im Ausführungsbeispiel 8 dem Festwertspeicher 13 vorgeschalteten
bistabilen Kippgliedern, und zwar über eine gemeinsame RUckstelleitung 32. Die Kippglieder
sind jeweils mit dem Bezugszeichen 33 versehen und bestehen aus vier getrennten
Blicken
integrierter Schaltungen der Handelsbezeichnung 4027 der
RCA, wobei jeder Block zwei sogenannte J-K-Flipflops ur.lfaßt. Bei diesen Flipflops
33 handelt es sich um das Empfangsregister 22 des Festwertspeichers 13, dem in zwei
1/2 Byte-Paketen die Adresse vom jeweiligen Rechner zugeführt und von den Flipflops
33 an ihren Ausgängen c'em Festwertspeicher 13 zur Verfügung gestellt wird.
-
Bevor auf die weitere taktmäßige Ansteuerung des Datentransfers eingegangen
wird, sei auf folgendes hingewiesen. Jeder der Rechner 1, 2, n erzeugt je nach Bedarf
der ihm zuzuführenden Informationen eine Adresse, wobei den Rechnern ein bestimmte
Bereichsanteil im Festwertspeicher 13 zugewiesen ist, in dem sich die für diesen
Rechner zutreffenden gespeicherten Datenwerte befinden. So kann beispielsweise der
Rechner 1 über 32 Speicherplätze verfügen, kann also dem Festwertspeicher 32 Adressen
zuführen und 32 8 bit sorte als ge;ünschte Information erhalten. Andere Rechner
verfügen beispielsweise über 16 oder auch nur über einen einzigen Speicherplatz,
wobei der Festwertspeicher 13 selbst beispielsweise so ausgebildet sein kann, daß
er über 256 SpeicherplAtze zu je 8 bit verfügt. Als Speicher kann beispielsweise
der unter der Bezeichnung 1702 von der INTET. Corp. erhältliche Speicher verwendet
werden.
-
Ist an den Festwertspeicher 13 nur ein einziger Rechner angeschlossen,
dann kann die vom Rechner übermittelte Adresse unmittelbar auf den Festwertspeicher
13 übertragen werden; sind mehrere Rechner angescalossen, dann übermittelt jeder
der Rechner von seinem Standpunkt aus jeweils Adressen O - 15 oder O - 31, wobei
der Hauptspeicher 6 diesen Adressen, nämlich den 3 MSB (most significant bit = wichtigste
bit) beim vorliegenden Ausführungsbeispiel eine ilfsadresse hinzufügt, damit die
vom jeweiligen Rechner stammende Adresse auch in den richtigen Bereich des Festwertspeichers
13 gelangt. Zu diesem
Zweck ist die weiter vorn schon erwähnte
Adressensummierschaltung 24 vorgesehen; die Erzeugung dieser "Hilfs"- alter Zusatzadresse
ist nicht weiter schwierig, denn der Hauptspeicher 6 verfügt durch die Rechnerkennung
Ql, Q2, Q3 schon über ein, nur für diesen Rechner gültiges binäres Wort, welches,
falls erforderlich, über die Adressenhilfsbildungsschaltung 23 noch umkodiert wird
und in Form von Ausgängen B1, B2, B3 auf entsprechend zugeordnete Eingänge der Adressensummierschaltung
24 gelangt. An ihren Ausgängen S1, S2, S3 bildet dann die Adressensummierschaltung
die 3 MSB der "richtigen" Adresse für diesen Rechner, damit die Adresse auch, wie
schon gesagt, in das richtige Abteil des Festwertspeichers 13 gelangt. Die restlichen
5 LSB gelangen unmittelbar über im folgenden noch zu beschreibende Umschaltelogiken
auf den Festwertspeicher 13. Bei der Adressensummierschaltung 24 handelt es sich
um ein unter der Bezeichnung 4008 von der RCA erhsiltliches Addierwerk, welches
aus den jeweils beiden Eingängen Al, B1; A2, B2; An, Bn jeweils die Summe S1, S2
und S3 hildet und an seinen Ausgängen zur Verfügung stellt.
-
Bei der nächsten Taktzeit des Johnson Zählers (J1 = log 1) werden
die jeweils einen Eingänge von NAND-Gattern 35' angesteuert, wodurch die beim Ausführungsbeispiel
ersten 4 bit der Adresse, die zu diesem Taktzeitpunkt auf den Busleitungen a, b,
c, d liegen, auf die zugeordneten Flipflops 33' gelangen, und zwar über Inverter
36'.
-
Es sei an dieser Stelle nochmals darauf hingewiesen, daß es von wesentlicher
Bedeutung ist, daß der Hauptspeicher 6 und die jeweiligen Rechner mit dem gleichen
Takt arbeiten, was durch die Zwangs synchronisierung über den Systemgrundtakt fo
erreicht wird, der auch den jeweiligen Ablaufsteuerschaltungen der Rechnerseite,
auf die weiter unten, wie schon gesagt, eingegangen wird, zugeführt wird. Dieses
Arbeiten mit dem gleichen
Takt ist auch besonders wichtig in dem
Falle, in welchem der Rechner die ihm zugeordnete Rechnerkennung auf den Busleitungen
a, b, c erkennt und mit der gleichen Taktflanke durch Belegung der Leitung BUSY
den Prioritätenzähler 14 stillsetzt. Dadurch ist dieser Zustand für das System gebettet"
und der eigentliche Datentransfer kann, ebenfalls zwanqstaktgesteuert, beginnen.
-
Nach Alolauf der Taktzeit J1 schaltet der Johnson Zähler 27 auf die
Taktzeit J2 um und es werden, wie ersichtlich, entsprechend zugeordnete NAND-Gatter
35 so geschaltet, daß die ertragung der zweiten lialbadresse über diese und nachgeschaltete
Inverter 36 möglich ist. Nachdem auf diese Weise die gesamte Adresse zunächst während
der beiden Taktzeiten J1 und J2 in die Flipflops 33 bzw. 33' und von dort auf den
Festwertspeicher übertragen worden ist, wird mit der nachfolgenden Taktzeit J3 des
Johnson Zählers 27 über die Leitung 38 der Prioritätenzähler 14 zurückgestellt;
die Leitung 38 geht über einen Inverter 39 auf den anderen Eingang des weiter vorn
schon erwähnten, zur Rückstellung dienenden NAND-Gatters 19.
-
Die Rückstellung des Prioritätenzählers 14 kann zu diesen Zeitpunkt
erfolgen, da nunmehr diese spezielle Rechnerkennung nicht mehr benötigt wird. Alternativ
ist es selbstverständlich möglich, den Prioritätenzähler 14 auf diesem seinen Wert
stehen zu lassen und bei Umschaltung der Leitung BUSY in den Zustand log O die Weiterzählung
zu veranlassen. Die Taktzeit J 3 ermöglicht dem Speicher auch den Zugriff zum gespeicherten
Wort.
-
Die nachfolgenden beiden Takte J4 und J5 dienen der Übermittlung des
an den Ausgängen D1 bis D8 des Festwertspeichers 13 anstehenden Datenwertes. Zu
diesem Zeitpunkt hat wegen des Zustands Busy = log 1 die Timschaltlogik 22 ohnehin
auf die Ausg-inge D6 bis D8 des restwertspeichers 13 umgeschaltet;
durch
Zuleitung des Taktzeitsignals J4 über einen Inverter 40 auf ein nachgeschaltetes
NAND-Gatter 41 wird das Transmission-Gate 25 durchgeschaltet, d,h. das Transmission-Gate
übermittelt die an seinen Eingängen anliegenden logischen Zustände auf die Busleitungen
a - d. Bei den Transmission-Gates kann es sich um bilaterale Schalter in der COS/MOS-Technik
handeln. Das Signal J4 bzw. J5 im Falle des Transmission-Cates 25a gelangt auf die
Gatterelektroden, wodurch die Halbleiterschalter durchschalten. Es kommt so während
der Taktzeit J4 zur Ubertragung des ersten Datenwerthalbblocks, der 4 bit umfaßt
und an den Ausgängen DS bis D8 des Festwertspeichers 13 anliegt. Zur Taktzeit J5
schaltet schließlich das Transmission-Gate 25a durch und überträgt die zweite Hälfte
des gespeicherten Datenwerts über die Busleitungen a bis d. Daraufhin nimmt dann
der zugeordnete Rechner die Belegung der Busleitungen zurück und das System ist
für den nächsten Zugriff zyklus bereit.
-
Die Fig. 6 zeigt das Zeitdiagramm der verschiedenen Impulsvorgänge
auf der Speicherseite des Ubertragungssystems; die Fig. 6a zeigt den Grundtakt des
Systems, der bei einem Ausffihrungslleispiel bei 600 KHz liegen-kann; die Fig. 6b
zeigt den Spannungsverlauf auf der Leitung BUSY; die Figuren 6c bis 6e zeigen die
Signalvorgänge am Ausgang des Prioritätenzählers, deren Verlauf infolge der besonderen
Kodierung nicht von Bedeutung ist; wesentlich ist lediglich, daß zum Zeitpunkt TO
eine solche Kodierung vorliegt, daß einer der Rechner, bei dem gleichzeitig ein
Anforderungssignal für den Datenaustausch vorliegt, die Leitung BUSY belegt,woraufhin
infolge Arretierung des Prioritätenzählers die Signalausgänge Q1, Q2 und Q3 des
Prioritäten zählers erhalten bleiben und gleichzeitig mit Umschalten des BUSY-Signals
auf log 1 der erste Taktzeitimpuls JO beginnt; daran schließen sich dann in zyklischer
Folge die anderen Taktzeitimpulse entsprechend dem Verlauf der
signale
in den Figuren 6f bis 61 an; entsprechend Fig. 6m erzeugt die Rechnerseite des Datenübertragungssystems
dann noch einen letzten flücksetz- oder Quittungsimpuls (hierauf wird im folgenden
noch einzugehen sein); die letzten beiden Zeitdiagramme entsprechend den Figuren
6n und So zeigen die Zeitpunkte an, zu denen jeweils die ersten 4 bit der Adresse
(Fig. 6n) und zu denen die zweiten 4 bit der Adresse eingespeichert sind. Diese
Zeitpunkte Ta bzw. Th sind gebildet durch den Impuls J1 . fO bzw. durch den Impuls
J2 Im folgenden wird anhand der Darstellung der Fig. 4 der prinzipielle Aufbau des
jedem einzelnen Rechner 1, 2, n zugeordneten Teilschaltungsbereich des Ubertragungssystems
oder der Bus-Interface-Schaltung erläutert. Es ist schon darauf hingewiesen worden,
daß sowohl die einzelnen Rechner als auch der Hauptspeicher 6 von dem gleichen Grundsystemtakt
beaufschlagt sind; zur zwangsweisen Synchronisierung der Verfahrensabläufe auf beiden
Seiten der Busleitung oder Verbindungsleitung verfügt auch die Rechnerseite über
eine Speichertaktschaltung 46, die ebenfalls als Johnson-Zhler ausgebildet ist und
im vorliegenden Fall eine Erweiterung um ein zusätzliches Kippglied erfahren hat,
so daß rechnerseitig insgesamt 7 Taktzeitr'i-ume erzeugt werden. Zunächst laufen
bei einer Zugriffs steuerung bzw. Prioritätenverteilung auf den flusleitungen a,
b und c beim Ausführungsbeispiel die jeweiligen Rechnerkennungen je eine pro Periode
des Grundsystemtakts ab; jeder der Rechnerseite zugeordnete Schaltungsteil entsprechend
der Darstellung der Fig. 4 verfügt über eine Rechnerkennung-Dekodierschaltung 47,
die dann, wenn die diesem Rechner zugeordnete Kennung auf den Busleitungen a, b
und c erscheint, ein Ausgangssignal an eine Ablaufsstouerschaltung 48 weiterleitet,
welche bei Vorliegen eines Anforderungssignals auf einer Leitung 49 die Leitung
BUSY durch ein Busy-Signal des logischen Zustands log 1 belegen kann;
dann
ergeben sich die weiter vorn schon ausführlich mit Bezug auf den Hauptspeicher erläuterten
Wirkungen.
-
Die Rechnerseite der Bus-Interface-Schaltung kann so ausqebildet sein,
daß vom jeweiligen Rechner 1, 2, n bzw. von einem diesem Rechner wiederum zugeordneten
Adressenrechner bei Bedarf eine Adresse erstellt und an Eingänge X und Y von Umschaltlogiken
50 und 51 angelegt werden. Gleichzeitig wird der Ablaufssteuerschaltung 48 ein Anforderungssignal
zugeleitext, Die Ablaufssteuerschaltung 48 belegt, wie soeben schon erwähnt, die
Busyleitung und stellt gleichzeitig den Johnson Zähler über die Verbindungsleitung
52 zurück bzw. leitet die Erzeugung des ersten Taktzeitimpulses JO ein, der daher
zeitgleich zu dem Impuls JO der Speichertaktchaltung 12 des Hauptspeichers 6 liegt.
-
Wie erinnerlich diente der Impuls J1 des Johnson Zählers 27 der speicherseitigen
Schaltung der Fig. 3 zur Durchschaltung der ersten Halbadresse, die daher auf den
Busleitungen a bis d anliegt. Daher schaltet auch der rechnerseitige Teil der Fig.
4 mit dem Impuls J1 die erste Umschaltlogik 51 durch, so daß die an den Eingängen
Y anliegenden Adressen auf diese Busleitungen a bis d gelangen. Der nächste Impuls
schaltet dann die zweite Umschaltlogik 50 für den Transfer der zweiten Halbadresse.
-
Dementsprechend sind dann noch für den Empfang der abgerufenen Dateninformation
zwei t3mschaltlogiken 54 und 55 vorgesehen, an deren Ausgängen nach Ablauf des Taktzeitimpulses
J5 das gesamte 8 bit-flatenwort aus dem Festwertspeicher 13 anliegt.
-
Im einzelnen sieht die Schaltung der Fig. 4 so aus, daß entsprechend
der Darstellung der Fig. 5 zur Dekodierung der Rechnerkennung
beim
Ausführungsbeispiel drei Exklusive ODER-Gatter 57, 58 und 59 vorgesehen sind, deren
Eingängen die auf den Busleitungen a, b und c liegenden Signale, entsprechend der
zyklisch durchlaufenden Rechnerkennung, ständig zugeführt sind. Die anderen Eingänge
dieser Exklusiven ODER-Gatter 57 bis 59 sind entsprechend der Kennung dieses speziellen
Rechners fest beschaltet, so daß nur bei Vorliegen einer ganz bestimmten Signalzusammensetzung
auf den Busleitungen a, b, c und bei bestimmtem Zustand der BUSY-Leitung im vorhergehenden
Grundtakt, deren Signal über eine bistabile Kippstufe, bevorzugt über ein sogenanntes
D-Flipflop 60, um diesen Crundtakt verzögert wird, die Dekodierschaltung 47 für
die Rechnerkennung und dem Zustand "BUS-nicht-belegt" anspricht und ein Ausgangssignal
über ein den Exklusiv-ODER-Gattern 57, 58, 59 und dem negierten Ausgang vom D-Flipflop
60 nachgeschaltetes NE4D-Gatter 61 abgibt. Liegt dieses Ausgangssignal vor, dann
wird hierdurch angezeigt, daß die Speicherseite des Datenübertragungssystems bereit
ist, mit diesem speziellen Rechner in Kontakt zu treten; der Rechner ist dann so
geschaltet, daß er auf der Busy-Leitung antwortet und durch Anlegen einer logischen
1 oder einer logischen 0 dem Hauptspeicher 6 mitteilt, ob ein Datenaustausch von
ihm gewünscht wird.
-
Lautet beispielsweise die Kennung für den in Fig. 5 beschriebenen
Rechner auf den Busleitungen a, b und c log 1, log 0, log 1, dann sind die anderen
Eing:inge der Exklusiven ODER-Gatter entsprechend log 0, log 1 und log O zu beschalten;
in diesem Falle befinden sich sämtliche Ausgangs der Exklusiven ODER-Gatter im Zustand
log 1. Befand sich nun die BUSY-Leitung im vorhergehenden Grundtakt beispielsweise
im Zustand log 1 (d.h. BUS "belegt"), so ist das auf das NAND-Gatter 61 gehende
Signal der Leitung 60a log O. Damit ist der Ausgang des NAlD-Gatters 61 auf log
1 und der Rechner nimmt keinen
Kontakt mit dem Hauptspeicher 6
über die BUS-Leitung auf.
-
Befand sich dagegen die BUSY-Leitung im vorhergehenden Grundtakt beispielsweise
im Zustand log O (d,h. BUS "frei"), dann ist neben den sämtlichen Ausgängen der
Exklusiv-ODER-Gatter 57, 58, 59 im obigen Beispiel auch die Leitung 60a im Zustand
log 1 und am Ausgang des MAND-Gatters 61 ergibt sich der Zustand log 0 dann, wenn
diese rechnerspezifische Kennung vom Speicher ausgewählt ist. Über einen Inverter
65 gelangt das Ausgangssignal Kennung <= Kennung "nicht") auf ein ODER-Gatter
62, welches ausgangsseitig im einfachsten Fall einen Schalter 63 betätigt, derart,
daß ein dem Schalter zugeführtes Signal SK auf die Busy-Leitung übertragen wird
und damit die Belegung oder Nichtbelegung der gesamten Busleitungen anzeigt. Dieses
Signal SK hAngt vom Zustand eines Kippgliedes 64 ab, welches beispielsweise als
JK-Flipflop ausgebildet sein kann und dem über die Leitung 66 ein Anforderungssignal
5A vom zugeordneten Rechner zugestellt wird, welches angibt, ob der Rechner eine
Information benötigt. Das von einem separaten Adressenrechner erzeugte Signal auf
der Leitung 66, welches als primäres Anforderungssignal bezeichnet werden kann,
bringt den Flipflop 64 mit der Vorderflanke des Grundsystemtakts fO in seinen gesetzten
Zustand, so daß auf der Ausgangsleitung 68 entsprechend dem Ausgang O des Flipflops
64 ein Anforderungssignal log 0, also Anfo liegt. Das Signal der Signalleitung 68
wird gemeinsam mit dem J6-Ausgang der später noch näher zu beschreibenden Speichertakterzeugungsschaltung
46 auf ein NOR-Gatter 67 geführt, dessen Ausgang das Steuersignal Sst für den Schalter
63 bildet.
-
Liegt eine Anforderung des Leitung 68 im Zustand log Ausgang vom Johnson-Zählcr
das Signal Sst auf Leitung Zustand über den Schalter ; zugeordneten Rechners vor,
so ist O und wenn gleichzeitig der J6-46 ebenfalls log O ist, so wird log 1, was
bedeutet, daß dieser 63, welcher beim Ausführungsbeispiel
zweckmäßigerweise
ein sogenanntes Transmission-Gate oder ein Transistorschalter in MOS-Technik sein
kann, auf die Busy-Leitung übertragen wird. Liegt keine Anforderung vor, so ist
Leitung 68 im logischen Zustand 1, so daß über NOR-Gatter 67 und Schalter 63 auf
die Busy-Leitung eine log O übertragen wird.
-
Der Eingriff des J6-Ausgangs des Johnson-Zählers 46 über das NOR-Gatter
67 erfolgt zu dem Zweck, daß nach erfolgtem Datenaustausch in der Taktphase J6,
zu der der J6-Ausgang gleich log 1 ist, die Busy-Leitung auf log O gelegt und damit
als eindeutig nicht belegt gekennzeichnet wird.
-
Im Falle der Anforderung liegen auch an den mit Bezug auf Fig. 4 schon
erwähnten Eingangs leitungen X und Y jeweils die Haibworte der Adresse an, Der rechnerseitige
Bus-Interface-Teil öffnet daher das Transinission-Gate 63 zur Belegung der Leitung
BUSY bei Auftreten der ihm zugeordneten spezifischen Rechnerkennung grundsätzlich
und läßt dann, je nachdem, ob eine Information und daher eine Belegung der Bus leitungen
erforderlich ist, die Leitung BUSY belegen. Diese Belegung muß während des gesamten
Datentransfers aufrechterhalten bleiben, da jedoch die Rechnerkennung auf den Busleitungen
a, b, c nur so lange verbleibt, bis auf diesen der Datentransfer durchgeführt werden
muß, ist eine Halteschaltung, bestehend aus einem ODER-Gatter 69 und einem von diesem
angesteuerten Flipflop 70 vorqesehen. Dem ODER-Gatter werden eingangsmäßig die Informationen
Anfo, Kennung und das durch den D-Flipflop 60 um einen Grundtakt verzögerte Signal
der Busy-Leitung zugeführt, Signale, die dann auftreten, wenn der Rechner die Busleitungen
belegen will und die Busleitung vorher nicht belegt war. Dadurch wird das NOR-Gatter
69 in die Lage versetzt, den Flipflop 70 in seinen gesetzten
Zustand
zu kippen, der in diesem Zustand so lange verbleibt, bis ihm über eine Leitung 71
von der Speichertakterzeugungsschaltung 46, die, wic schon erwähnt, ebenfalls ein
Johnson-Zähler ist, der Rücksetzimpuis zugeführt wird. Das Flipflop 70 hält daher
mit seinem Ausgangssignal über das ODER-Gatter 62 das Transmission-Gate 63 auch
dann noch offen, wenn die Rechnerkennung beim nächsten Systemtakt von den r,usleitungen
a, h und c weggenommen ist.
-
Der Datentransfer und die weiteren Taktschaltungen laufen dann synchron
mit dem speicherseitigen Teil ab. Nimmt der betreffende Rechner über die Busleitung
keinen Datenaustausch mit dem Hauptspeicher 6 vor, so ist die Speichertakterzeugungsschaltung
46 Uber die Leitung 52 rückgesetzt und erzeugt den Takt JO. Besteht rechnerseitig
eine Anforderung und ist die Busleitung im vorhergehenden Takt nicht belegt gewesen,
so erscheint am Ausgang des NOR-Gatters 69, wie bereits beschrieben, eine log 1,
die neben dem Setzen des JK-FlipfloPs 70 auch die rückgesetzte Speichertakterzeugungsschaltung
46 über das NOR-Gatter 72 und die nachfolgende Leitung 52 freigibt, In der nächsten
Taktphase ist dann der Ausgang des JK-Flipflops 64, wie bereits geschildert, ebenfalls
log 1 und gibt damit weiterhin über den zweiten Eingang des TJOR-C.atters 72 die
Speichertakterzeugunqsschaltung 46 frei. :iit dem nächsten Taktzeitimpuls J1 gehen
die 4 MSB (1/2 Bytc) der ersten Teiladresse Y auf die Busleitungen a, b, c, d, der
nächste Taktzeitimpuls J2 legt die nachfolgenden 4 LSB der Adresse X auf die Busleitungen;
die Taktzeit J3 ermöglicht dem Hauptspeicher den Zugriff und die Bereitstellung
des ausgehalten Datenwortes; mit dem nachfolgenden Taktzeitimpuls J4 erfolgt die
Übernahme des ersten Ilaibwortes von 4 bit; der Taktzeitimpuls J5 ermöglicht die
Übernahme des nächsten 1/2 Byte des ermittelten Datenwertes vom Speicher.
-
Es sind 4 Doppelflipflops 75, 76, 77 und 78 vorgesehen, wobei lediglich
die Übernahmemimik für eine Hälfte des ersten Doppelflipflops 75 genauer dargestellt
ist, und zwar auch aus dem Grunde, da es sich hier ohnehin nur um bevorzugte Ausführungsbeispiele
handelt, ein vollständiges und arbeitsfähigen System jedoch zum besseren Verständnis
durchgehend erläutert wird. Es versteht sich, daß die Erfindung nicht auf die speziellen
Anordnungen von Verknüpfungsschaltungen und Speicher beschränkt ist, sondern daß
jedes elektronische Bauelement und Festkörperschaltelement, welches in der Lage
ist, die beschriebenen Funktionen zu erfüllen, verwendet werden kann.
-
Dem einen Eingang Dl' des Flipflops 54, bei dem es sich um den noppelbaustein
4013 der RCA handeln kann, wird über kaskadierte Verknüpfungsschaltungen in Form
von NPJD-Gattern 79 und 80 einmal das Signal auf der Busleitung i, die hier für
jede beliebige Busleitung stehen kann' zugeführt, dem anderen Eingang des NAND-Gatters
79 wird der Taktzeitimpuls J4 zugeführt. Der Flipflop 75 übernimmt das Signal der
Busleitung an seinem Ausgang und hält sich selber über die Rückkopplung der Leitung
81 und des weiteren NAND-Gatters 82, dessen anderem Eingang der J4-Impuls über einen
Inverter 83 zugeführt ist. Das Einschreiben der so an dem Eingang D1 des Flipflops
75 vorbereiteten Information erfolgt dann mit dem Grundtakt fO. Diese mit Bezug
auf den einen Teil des Doppelflipflops 75 angegebene Schaltungsanordnung wiederholt
sich bei sämtlichen restlichen Flipflops 75 bis 78 in entsprechender Form, wobei
die Flipflops 77 und 78 vom zweiten Taktzeitimpuls für die Wortübernahme vom Hauptspeicher,
nämlich J5, gesteuert sind. An den Ausgängen der Flipflops Al bis A8 liegt nach
Ablauf des sechsten Taktzeitimpulses J5 die gewünschte Dateninformation des Hauptspeichers
zur 1eiterverarbeitung an.
-
Mit dem Taktzeitiusuls J5 bereitet die Takterzeugungsschaltung 46
den Flipflop 64 auf das Rücksetzen vor. Es schließt sich dann noch ein siebter Taktzeitimpuls
J6 an, der über die Leitung 71 den Flipflop 70 auf das Rücksetzen vorbereitet, wodurch
im nächsten Takt die Busy-Leitung freigegeben wird und der darüber hinaus den Ausgang
des NOR-G,atters 67, da der zweite Eingang des NOR-Gatters 67 Anfo = log 1, auf
log O bringt, so daß über den durchgeschalteten Schalter 63, wie bereits beschrieben,
die BUSv-Leitung in Taktphase J6 auf log O gelegt wird. Gleichzeitig kann aus dem
Taktzeitimpuls J6 noch ein Quittungs-Impuls abgeleitet werden, der dem IIauptspeicher
6 oder sonstigen Teilen der Schaltung zugeführt wird.
-
Der Taktzeitimpuls Jh ist für die Informationsübertragung nicht mehr
interessant, er ermöglicht die Belegung der Busy-Leitung während eines weiteren
Takts mit log 0, so daß der Hauptspeicher und alle anderen etwa an der Bus leitung
liegenden Rechner 1, 2, bzw. 3, usw. das Ende des Datenaustauschs eindeutig erkennen
können.
-
Die log O der Busy-Leitung in Taktzeitimpuls J6 gibt den Zähler 14
wieder zur Zählung frei, was bedeutet, daß auch der speicherseitige Schaltungsteil
um einen weiteren Takt noch festgehalten wird, bevor das System auf seinen zyklischen
Ausgangspunkt zurückgelangt ist.
-
Ergänzend sei darauf hingewiesen, daß die fit die Taktzeitabläufe
zuständigen Johnson-Zähler 27 bzw. 46 mit dem Grundtakt fO zählen, der beim gewählten
Ausführungsbeispiel eine Frequenz von 600 KlIz, wie schon erwähnt, aufweist.
-
Die Darstellung der Fig. 9 zeigt das Zeitdiagramm der Schaltungsabläufe
auf der Pechnerseite der Bus-Interface-Schaltung; die Fig. 9a zeigt wiederum, entsprechend
der Fig. 6a, den Grundtakt fO, Fig. 9c zeigt das Anforderungssignal Anfo, das
zu
einem beliebigen Zeitpunkt den Zustand log 1 übernommen hat. Sobald entsprechend
der Fig. 9b das Signal der Kennung des Rechners bzw. das Signal Nennung "nicht"
vorliegt, geht, wie weiter vorn schon erläutert, entsprechend der Fig. 9d das Busy-Signal
auf den Zustand log 1, gleichzeitig entsprechend Fig. 9f das Reset-Signal vom Johnson-Zähler
46 von log 1 auf log 0, der daher beim nächsten grundtakt das Signal J1 erzeugt
(entsprechend Fig. 9h), wenn man annimmt, daß entsprechend Fig. 9g das Signal JO
beim stationären Zustand des Johnson-Zählers 46 von Anfang an vorlag. Die Fig. 9e
zeigt den Ausgang des Flipflops 70, der den Zustand log 1 einnimmt und über das
ODER-Gatter 62 das Transmission-Gate 63 offenhält. Entsprechend den Figuren 9h bis
9m laufen dann die Taktzeitimpulse J1 bis J6 des Johnson-Zählers 46 ab; da der Takt
J3 für die Rechnerseite keine Bedeutung hat, ist sein Verlauf hier nicht dargestellt,
der Takt J4 beginnt jedoch um eine Taktzeit versetzt nach dem Takt J2 der Fig. 9i.
-
Im folgenden werden noch einige Möglichkeiten der Prioritätenverteilung
für den Rechnerzugriff zum Hauptspeicher erläutert.
-
Bisher ist ja davon ausgegangen worden, daß der Hauptspeicher selbst
die jeweils an ihn über die Busleitungen 5 angeschlossenen Rechner zyklisch anspricht
und zur Abfrage auffordert; es ist jedoch entsprechend der Darstellung der Fig.
8 auch möglich, daß die Anforderungen für den Datenaustausch von den Rechnern selbst
kommen.
-
Dies kann grundsätzlich dadurch geschehen, daß die Rechner bei Bedarf
einer Dateninformation aus dem Hauptspeicher, etwa bei Vorliegen eines Anforderungssignals
Anfo die Bus-Leitung unmittelbar belegen, woraufhin der Datenaustausch, gesteuert
durch das nunmehr auf der Busy-Leitung vorliegende Signal log 1, welches auch den
Johnson-Zähler 27 des Hauptspeichers 6
anwerfen kann, vonstatten
geht. Berücksichtigt werden muß hierbei jedoch, daß beim gleichen Grund takt zwei
oder sogar noch mehr Rechner versuchen, über die Busleitungen zum Hauptspeicher
6 durchzukommen. Für diesen Sonderfall ist eine Prioritätensteuerung notwendig,
für die es mehrere sIocJlicheisen gibt.
-
Eine erste -glichkeit besteht darin, daß die Rechner ihren Zugriff
zum Speicher dadurch gestalten, daß die Busyleitung durch den Zustand log 1 vom
Rechner gesteuert belegt und gleichzeitig auf die Pusleitungen, von denen, wie weiter
vorn schon erwällnt, eine beliebige Anzahl vorhanden sein kann, eine ihnen zugeordnete
Rechnerkennung legen. Für zwei Rechner ist eine solche Wögliciikeit in Fig. 8 dargestellt;
in diesen Fall braucht lediglich eine INFO-Leitung mit der Rechnerkennung belegt
zu werden, damit bei zwei Rechnern über die Priorität des Zugriffes r'ntschieden
werden kann. In Fig. 3 ist der erste Rechner mit E und der zweite Rechner mit F
bezeichnet, wobei nur die fiir die Prioritaten stcucrung erforderlichen Teile dargestellt
sind. Beide Rechner E und F gehen mit ihrer rennung oder ihrem zugeordneten Codewort
gleichzeitig auf die Busleitung, wobei sie sich gegenscitig kurzschließen können,
wie aus der Darstellung der Fig. 8 auch ersichtlich. Wird einer der Rechner durch
die Kennung eines anderen, gleichzeitig zugreifenden Rechners kurzgeschlossen und
ist er so ausgebildet, daß er dieses "Kurzschließen" merkt, dann ist auch gleichzeitig
über die Priorität entschieden, denn der "kurzgeschlossene" Pechner wird dann seine
Anforderung wieder zurückziehen.
-
Zur Prioritätensteuerung zwischen lediglich zwei angesclllossenen
Rechnern ist, wie weiter unten noch genauer erläutert wird, nur eine Busleitung
erforderlich, muß über die Priorität von drei Rechnern entschieden werden, benötigt
man zwei Bus leitungen usw.
-
Die für die Auf leitung der Codeworte vom Rechner auf die rJusleitungen
zuständigen Schaltungsteile können beim Ausführungsbeispiel der Fig. 3 aus zwei
hintereinander geschalteten Inverterverstärkern 90, 91 bzw. 90', 91' bestehen, wobei
der in seinem Schaltunusaufbau dem Reehnerteil E entsprechende Rechnerteil F, wie
im übrigen auch die gesamte Schaltung, als integrierte Chips bevorzugt in der MOS-FET-Technik
aufgebaut ist; bei dem vom Inverter 90' angesteuerten Inverter/ Verstärker 91' handelt
es sich um einen M0S-FET-Transistor, dessen "Drain"-Anschluß über einen "Last-Transistor"
92 an positivern Potential liegt. Gelangt als Codewort der Zustand log O über die
Inverter 90' und 91' auf die Busleitung a, ergibt sich auf dieser ebenfalls der
Zustand log 0, wobei der Zustand log 1, mit welchem die Inverter 90, 91 des Rechner
teils E (als Codewort) angesteuert werden, iturzgeschiossen wird.
-
Eine solche Zusammenschaltung der Leitungen auf der Rusleitung a entspricht
einer logischen verdrahteten UND-Verknüpfung (wired AND), da im Laufe des Prioritätsvergleichs
der log 0-Zustand eines Rechners den log 1-Zustand eines anderen Rechners kurzschließt.
Der Rechner mit der so definierten niedrigeren Priorität erkennt den Kurzschluß
seines log 1-Prioritätsbits durch Vergleich, worauf er die Speicheranforderung und
damit das BUSY-Signal zurückzieht. Der Vergleich kann so durchgefiihrt werden, wie
in Fig. 8 gezeigt, d.h. das Codewort des Rechners, welches die Inverter/Verstärker
90, 91 ansteuern, gelangt gleichzeitig auf den einen Eingang eines exklusiven ODER-«atters
93 bzw. 93'; der andere Eingang des ODER-Gatters ist mit der jeweils angesteuerten
Bus leitung verbunden.
-
Das Exklusive ODER-Gatter ist, wie für den Fachmann erkennbar, so
ausgebildet, daß es in der Lage ist, auf einen unter schied der an seinen beiden
Eingangen aüftretenden Signale zu reagieren; im vorliegenden Fall ergibt sich eine
Ungleichheit heim Rechnerteil , das daher die niedrige Priorität aufweist.
-
Wie ersichtlich kann die gesamte Prioritätensteuerung während eines
einzigen Taktschritts des Grund taktes ablaufen, wenn genügend Busleitungen vorhanden
sind, beim bisheerigen Ausführungsbeispiel ist von 4 Bus leitungen ausgegangen,
so daß die Prioritätensteuerung von insgesamt 5 angeschlossenen Einzweckrechnern
auf die soeben geschriebene Art durchgeführt werden kann, wobei gleichzeitig der
Rechner mit der höchsten Priorität, d.h. mit einem Codewort "OOOO" sämtliche prioritäsniedrigeren
Rechner kurzschließt.
-
Verfügt man beispielsweise nur über einen Zweileitungsbus und sollen
mehr als 3 Einzweckrechner in ihrem Prioritätszugriff zum Hauptspeicher 6 gesteuert
werden, dann läßt sich die Prioritätenverteilung auch im zeitlichen Ablauf dadurch
lösen, daß jeweils zur gleichen Taktzeit von den angeschlossenen Linzweckrechnern
gleichzeitig das erste bit der Prioritätskennung oder des Codeworts des Rechners
an die Informationsleitung (en) gelegt wird. Mit den weiteren Takten erscheinen
nacheinander die übrigen bits der er Prioritätskennung. Auch hier entspricht die
Zusammenschaltung der Leitungen auf dem 3us einen "wired AND" und im Laufe des Prioritätsvergleichs
wird der log O-Zustand des prioritätshöheren Rechners die log 1-Zustände der anderen
kurzschließen. rit anderen Worten läßt sich die Prioritätssteuerung des "wired AND"
auch teilweise seriell vornehmen, wenn dies auf Grund der Anzahl der zur Verfügung
stehenden Busleitungen gewünscht ist.
-
Eine weitere mögliche Prioritätssteuerung besteht darin, daß je nach
Anzahl der vorhandenen Einzel-Busleitungen jedem Einzweckrecbner eine dieser Leitungen
fest zugeteilt wird und der Rechner seine Anforderung über diese Leitung den Hauptspeicher
zuführt. Der Hauptspeicher verfügt seinerseits über eine Verteilerlogik, die prioritätsgewichtet
ist unc' dem Rechner den Zugriff erlaubt, der am prioritätschöchsten ist. Beim Praktischen
Ausführungsbeispiel
kann dies dadurch geschehen, daß ein oder mehrere Einzweckrechner über die ihnen
fest zugeordneten Busleitungen (die Rechner können mit diesen verlötet sein) den
Zustand log 1 als Anforderung zum Iiauptspeicher relden und der Hauptspeicher schließt
sämtliche Zustände log 1 der Einzweckrechner mit Ausnahme des prioritätshöchsten
kurz. Auf diese Weise erkennen die restlichen, "kurzgeschlossenen" Einzweckrechner,
daß ihr Zugriff abgewiesen worden ist (die Erkennung kann dabei so ausgebildet sein,
wie in Fig. 8 dargestellt), auch der angenommene Einzweckrechner ist informiert,
da sein Prioritätenanforderungssignal stehengeblieben ist. Der Speicher belegt dann
von sich aus die Busy-Leituna und sperrt jeden weiteren Zugriff, anschließend geht
der natentransfer in der weiter vorn schon geschilderten Weise, wenn gewünscht,
vor sich.
-
Es sei darauf hingewiesen, daß im übrigen die weiter vorn schon in
Verbindung mit der Gesamterläuterung des Systems angegebene Prioritätensteuerung
des zyklischen Durchzählens auf dem "Speicherchip", wobei zeitlich nacheinander
mit dem 5Grundtakt fO die einzelnen Rechnerkennungen durchgezählt werden, prioritätsbewertet
sein kann, d.h. der Zählvorgang beginnt mit den jeweils höheren Prioritäten, so
daß diese auch zuerst die Möglichkeit des Speicherzugriffs haben, wenn eine Anforderung
dazu besteht.
-
Die Logikpegel an der Bus-Schnittstelle sind, wenn mit integrierter
C-M0S-Technik gearbeitet werden soll, in üblicher positiver Logik definiert, d.h.
der Zustand log 1 = + UO log O = 0.
-
Da bei der P-MOS-Technik mit negativer Logik gearbeitet wird, miissen
alle Signale invertiert werden, die zwischen der Busleitung und dem P-MOS-Chip ausgetauscht
werden. Dabei entspreehen:
log 1 = O (UDD) log O = + UO (VSS).
-
Die prinzipielle Arbeitsweise der Systeme wird hiervon jedoch nicht
berührt.
-
Als Alternative für den Datenaustausch bei einem Vierleitungrbus ist
en auch denkbar, daß auf die Pusy-Leitung verzichtet wird und die vierte Informationsleitung
der Bus-Pelesung dient.
-
In diesem Fall muß das DUSY-Sidnal in allen Einzweckrechnern während
der Informationsübermittlung gespeichert werden.
-
Die Erfindung ermöglicht also den unveränderten Einsatz ler Rechnerchips
für sämtliche Zwecke oder Fahrzeuge bei einer chipexternen Speicherung mit geringstem
Verdrahtungsaufwand und geringstem Aufwand an Anschlußpins.