DE2554775C2 - Device for data transmission in electronic circuits for motor vehicles - Google Patents
Device for data transmission in electronic circuits for motor vehiclesInfo
- Publication number
- DE2554775C2 DE2554775C2 DE2554775A DE2554775A DE2554775C2 DE 2554775 C2 DE2554775 C2 DE 2554775C2 DE 2554775 A DE2554775 A DE 2554775A DE 2554775 A DE2554775 A DE 2554775A DE 2554775 C2 DE2554775 C2 DE 2554775C2
- Authority
- DE
- Germany
- Prior art keywords
- computer
- bus
- priority
- computers
- line
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 230000005540 biological transmission Effects 0.000 title claims description 40
- 230000015654 memory Effects 0.000 claims description 99
- 238000012546 transfer Methods 0.000 claims description 22
- 230000006870 function Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 14
- 238000000034 method Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 11
- 238000002347 injection Methods 0.000 description 9
- 239000007924 injection Substances 0.000 description 9
- 238000009826 distribution Methods 0.000 description 7
- 125000004122 cyclic group Chemical group 0.000 description 5
- 238000002485 combustion reaction Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 3
- 238000011144 upstream manufacturing Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000446 fuel Substances 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000000498 cooling water Substances 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000001208 nuclear magnetic resonance pulse sequence Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
Classifications
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02P—IGNITION, OTHER THAN COMPRESSION IGNITION, FOR INTERNAL-COMBUSTION ENGINES; TESTING OF IGNITION TIMING IN COMPRESSION-IGNITION ENGINES
- F02P5/00—Advancing or retarding ignition; Control therefor
- F02P5/04—Advancing or retarding ignition; Control therefor automatically, as a function of the working conditions of the engine or vehicle or of the atmospheric conditions
- F02P5/145—Advancing or retarding ignition; Control therefor automatically, as a function of the working conditions of the engine or vehicle or of the atmospheric conditions using electrical means
- F02P5/15—Digital data processing
- F02P5/1502—Digital data processing using one central computing unit
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/24—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
- F02D41/26—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
- F02D41/266—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor the computer being backed-up or assisted by another circuit, e.g. analogue
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Mechanical Engineering (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Bus Control (AREA)
Description
Die Erfindung betrifft eine Vorrichtung zur Datenübertragung bei Elektronikschaltungen für Kraftfahrzeuge gemäß dem Oberbegriff des Anspruchs 1.The invention relates to a device for data transmission in electronic circuits for motor vehicles according to the preamble of claim 1.
Die Verwendung von elektronischen, auf digitaler Basis arbeitenden Rechnern zur Steuerung von Betriebsabläufen im Kraftfahrzeug sind allgemein bekannt. Die DE-OS 23 23 619 zeigt und beschreibt eine Vorrichtung der eingangs genannten Art mit einem analog-digital arbeitenden Steuerungssystem für einen Mehrfach-Funktions-Digitalrechner in Kraftfahrzeugen. Hierbei werden unterschiedliche Meßsignale dekodiert und die dekodierten Signale in einen Rechner eingelesen. Aufgrund der eingelesenen Signale werden die Zündsignale oder die Einspritzung gesteuert. Die in dieser Druckschrift gezeigte und beschriebene Anordnung weist jedoch nur lediglich eine Recheneinheit auf, so daß bezüglich des Zugriffes des Rechners auf Daten oder sonstigen Informationen keine Probleme auftreten. Mehrrechnersysteme in allgemeiner Form sind aus dem Artikel "A systematic approach to the design of digital bussing structures, Fall Joint Computer Conference, 1972, Seiten 719 bis 740 bekannt. In dieser Druckschrift wird das Problem behandelt, wie der Zugriff auf einen zentralen Bus gesteuert werden kann, wenn mehrere Einrichtungen gleichzeitig Zugriff zum Bus begehren. Hierbei ist entweder eine zentrale Bussteuerung vorgesehen, oder aber die unterschiedlichen Einrichtungen greifen willkürlich auf den Bus zu. Der Bus wird jedoch nur dann freigegeben, wenn es einer der Einrichtungen unzweideutig gelingt, beispielsweise aufgrund seiner zeitlichen Abfolge, den Bus zu belegen. Diese Art der Busbelegung ist jedoch relativ umständlich, da die Busbelegung insbesondere bei den dezentralen Verfahren um so schwieriger wird, je mehr Einrichtungen die Möglichkeit haben, auf den Bus zuzugreifen. Es kann dann nämlich der Fall auftreten, daß mehrere Einrichtungen gleichzeitig auf den Bus zugreifen wollen und aufgrund der zeitlichen Gegebenenheiten ein eindeutiger Buszugriff nicht mehr zu erzielen ist. Auf jeden Fall geht durch das mehrfache Anfordern des Busses von einer oder mehreren Einrichtungen relativ viel Zeit verloren. so daß insbesondere Systeme, die Daten in Echtzeit abarbeiten müssen, kaum schnell genug einen Zugriff erlangen.The use of electronic, digitally based computers to control operational processes in motor vehicles is generally known. DE-OS 23 23 619 shows and describes a device of the type mentioned above with an analog-digital control system for a multi-function digital computer in motor vehicles. In this case, different measurement signals are decoded and the decoded signals are read into a computer. The ignition signals or the injection are controlled based on the read-in signals. The arrangement shown and described in this publication, however, only has one computing unit, so that no problems arise with regard to the computer's access to data or other information. Multi-computer systems in general form are known from the article "A systematic approach to the design of digital bussing structures, Fall Joint Computer Conference, 1972, pages 719 to 740. This publication deals with the problem of how access to a central bus can be controlled when several devices request access to the bus at the same time. In this case, either a central bus control is provided, or the different devices access the bus at random. The bus is only released, however, if one of the devices unambiguously succeeds in occupying the bus, for example due to its chronological sequence. This type of bus allocation is, however, relatively complicated, since the bus allocation becomes more difficult, particularly in decentralized processes, the more devices have the opportunity to access the bus. It can then happen that several devices want to access the bus at the same time and, due to the time constraints, unambiguous bus access can no longer be achieved. In any case, a relatively large amount of time is lost due to the multiple requests for the bus from one or more devices. This means that systems that need to process data in real time in particular can hardly access it quickly enough.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, eine schnelle Prioritätssteuerung für eine Vorrichtung zur Datenübertragung der eingangs genannten Art zu schaffen, die eine zuverlässige und schnelle prioritätsgerechte Belegung des Informationsübertragungsbusses gestattet.The present invention is based on the object of creating a fast priority control for a device for data transmission of the type mentioned at the beginning, which allows a reliable and fast priority-based occupancy of the information transmission bus.
Diese Aufgabe wird durch die im Anspruch 1 gekennzeichneten Merkmale gelöst. Die erfindungsgemäße Vorrichtung hat den Vorteil, daß durch die Prioritätssteuerung des Buszugriffes eindeutig die Einrichtung bevorzugt, Zugriff zum Bus erhält, die die höchste Priorität aufweist. Mehrfachanforderungen führen automatisch dazu, daß sich die Einrichtungen mit niederer Priorität vom Bus zurückziehen, so daß eine sehr schnelle Busbelegung durch die prioritätshöchste anfragende Einrichtung möglich ist. Dadurch wird der Buszugriff sehr schnell, wobei gleichzeitig der Vorteil des dezentralen Buszugriffs erhalten bleibt, so daß die Zahl der zugreifenden Einrichtungen ohne besondere Aufwendungen beliebig erweiterbar ist.This object is achieved by the features characterized in claim 1. The device according to the invention has the advantage that, due to the priority control of the bus access, the device with the highest priority is clearly given priority access to the bus. Multiple requests automatically lead to the devices with a lower priority withdrawing from the bus, so that a very fast bus occupancy by the requesting device with the highest priority is possible. This makes the bus access very fast, while at the same time the advantage of decentralized bus access is retained, so that the number of accessing devices can be expanded as desired without any special expenditure.
Weitere Ausgestaltungen der Erfindung sind Gegenstand der Unteransprüche und in diesen niedergelegt.Further embodiments of the invention are the subject of the subclaims and are set out therein.
Nachfolgend ist eine Beschreibung entnehmbar, in welcher anhand der Figuren Aufbau und Wirkungsweise von Ausführungsbeispielen im einzelnen näher erläutert werden. Dabei zeigtThe following is a description in which the structure and mode of operation of embodiments are explained in more detail using the figures.
Fig. 1 eine Prinzipbilddarstellung der Verbindung zwischen den einzelnen Rechnern und einer als zentraler Hauptspeicher ausgebildeten Einrichtung, Fig. 1 is a schematic diagram of the connection between the individual computers and a device designed as a central main memory,
Fig. 2 ein Blockschaltbild des sich auf der Speicherseite befindlichen Teils des Übertragungssystems, Fig. 2 is a block diagram of the part of the transmission system located on the storage side,
Fig. 3 das Blockschaltbild der Fig. 2 in detaillierter Darstellung, Fig. 3 shows the block diagram of Fig. 2 in more detail,
Fig. 4 ein Blockschaltbild des sich auf der jeweiligen Rechnerseite befindlichen Teils des Übertragungssystems, Fig. 4 is a block diagram of the part of the transmission system located on the respective computer side,
Fig. 5 das Blockschaltbild der Fig. 4 in detaillierter Darstellung, Fig. 5 shows the block diagram of Fig. 4 in more detail,
Fig. 6 den zeitlichen Ablauf bei der Datenübertragung einschließlich der Prioritätszuteilung an den jeweiligen Rechner in Form von Zeitdiagrammen, Fig. 6 the timing of data transmission including the priority allocation to the respective computer in the form of time diagrams,
Fig. 7a-7d den detaillierten Schaltungsaufbau eines den Ablauf des Datentransfers steuernden Zählers sowie seinen Funktionsablauf, Fig. 7a-7d the detailed circuit structure of a counter controlling the data transfer process and its functional sequence,
Fig. 8 ein weiteres Ausführungsbeispiel zur Darstellung der Prioritätenverteilung im Datenübertragungssystem. Fig. 8 shows another embodiment for illustrating the priority distribution in the data transmission system.
Fig. 9 das Zeitdiagramm des zeitlichen Ablaufs Rechnerseite. Fig. 9 the timing diagram of the computer side.
Fig. 1 zeigt den Aufbau einer Zentralelektronik, speziell bei einem Kraftfahrzeug. Die Zentralelektronik umfaßt eine Anzahl von Rechnern 1, 2 . . . n - 1, n, die jeweils bestimmte Steuerungsaufgaben für den Betrieb eines Kraftfahrzeugs erfüllen und die über eine einzige gemeinsame Verbindungsleitung (Bus) 5 mit einem einzigen zentralen Hauptspeicher 6 verbunden sind. Bei dem in Fig. 1 dargestellten Ausführungsbeispiel umfaßt die Verbindungsleitung 5 vier Informationsleitungen (Busleitungen) INFO sowie eine zusätzliche Belegleitung, die im folgenden als Busy-Leitung bezeichnet wird. Es sei sofort darauf hingewiesen, daß im Grunde jede beliebige 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 für 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 Rechnern 1, 2 an die Einrichtung (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 8 bit auch der Begriff 1 Byte verwendet. Fig. 1 shows the structure of a central electronics system, especially in a motor vehicle. The central electronics comprises a number of computers 1, 2 . . . n - 1 , n , each of which performs specific control tasks for the operation of a motor vehicle and which are connected to a single central main memory 6 via a single common connecting line (bus) 5. In the embodiment shown in Fig. 1, the connecting line 5 comprises four information lines (bus lines) INFO and an additional busy line, which is referred to below as the busy line. It should be pointed out immediately that basically any number of individual connecting lines, i.e. INFO lines, can be used. For technical reasons, however, the number of INFO lines is limited upwards, because each line requires an additional connection terminal or a connection pin on each computer, the number of which is of considerable importance for the production costs of such a transmission system. The present transmission system of Fig. 1 works with 8-bit words, which means that the addresses to be transmitted from the respective computers 1, 2 to the device (main memory) 6 normally comprise 8 bits, and the data values transmitted from the main memory 6 to the single-purpose computers, which they require to carry out certain arithmetic operations, also consist of 8 bits. In the following, the term 1 byte is also used instead of the term 8 bits.
Zum 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.In order to better understand the transmission system, a basic operating principle of such a single-purpose computer and its relationship to the main memory 6 will first be explained in more detail below, whereby for reasons of convenience the main computer for the petrol injection will be described, although of course any other computer in this or another form will also operate according to the principle described below.
Der Darstellung der Fig. 1 läßt sich entnehmen, daß den Rechnern ein Block vorgeschaltet ist, der diese mit den jeweiligen, zum gegebenen Betriebszeitpunkt vorliegenden Betriebszustanddsdaten versorgt. Bei dem Rechner für die Benzineinspritzung kann es sich hierbei um ein Analogsignal handeln, welches der Rechner mitteilt, daß sich 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 Brennkraftmaschine eine Impulsfolge entwickeln, die den Einspritzventilen der Brennkraftmaschine zugeführt wird und wobei die Dauer der einzelnen Impulse die Dauer der Öffnungszeiten der Einspritzventile bestimmt. Wie schon eingangs erwähnt ist es aus technologischen Gründen unzweckmäßig, für jeden Rechner eine chipinterne 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 Hauptrechner 1 für die Kraftstoffeinspritzung aus den beiden ihm zugegangenen Statussignalen eine Adresse zusammenstellt (dies kann auch ein separater Adressenrechner durchführen), diese Adresse wird in im folgenden noch genauer zu beschreibender Weise und zu bestimmten Zeiten dem Hauptspeicher 6 übermittelt, der eine dieser Adresse entsprechende kraftfahrzeugspezifische Information oder einen Datenwert in Form eines 8 bit Wortes auf den Rechner zurücküberträgt.From the illustration in Fig. 1 it can be seen that a block is connected upstream of the computers which supplies them with the respective operating status data available at a given operating time. In the case of the computer for the petrol injection, this can be an analog signal which tells the computer that the internal combustion engine to be controlled is idling in its process sequence (an idling switch operated by the accelerator pedal can be closed). At the same time, the main computer for the petrol injection receives information about the current temperature of the internal combustion engine, for example by scanning the cooling water temperature. From these two and possibly further analog information, referred to below as status signals, the main computer for the petrol injection must develop a pulse sequence, taking into account the speed of the internal combustion engine, which is fed to the injection valves of the internal combustion engine and where the duration of the individual pulses determines the duration of the opening times of the injection valves. As already mentioned at the beginning, it is impractical for technological reasons to provide a chip-internal storage for each computer that could transmit a corresponding data value to the computer that could be processed when generating the fuel injection pulses. In the present embodiment, the procedure is therefore such that, for example, the main computer 1 for the fuel injection compiles an address from the two status signals received by it (this can also be done by a separate address computer). This address is transmitted to the main memory 6 in a manner to be described in more detail below and at certain times, which then transmits vehicle-specific information or a data value corresponding to this address back to the computer in the form of an 8-bit word.
Es versteht sich, daß auf Grund des Umstandes, daß nur eine einzige Verbindungsleitung 5 vorgesehen ist, mit welcher sämtliche Rechner parallel verbunden sind, die jeweilige Verbindung Hauptspeicher 6 Rechner n innerhalb eines Zeitraums vonstatten geht, während welchem die anderen Rechner nicht mit dem Hauptspeicher 6 in Verbindung stehen und auch daran gehindert sein müssen, eine Verbindung aufnehmen zu können.It is understood that due to the fact that only a single connecting line 5 is provided, with which all computers are connected in parallel, the respective connection between main memory 6 and computer n takes place within a period of time during which the other computers are not connected to main memory 6 and must also be prevented from being able to establish a connection.
Daher ist bei der Erörterung 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 aufnehmen und einen Datentransfer vornehmen kann.Therefore, when discussing such a data transmission system, it is first necessary to consider the concept of priority, which determines when and under what conditions a computer can contact the main memory 6 and carry out a data transfer.
Innerhalb des erfindungsgemäßen Rahmens sind mehrere Möglichkeiten der Kontaktaufnahme und Kontaktherstellung zwischen Rechner 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übertragungssystems zu erläutern, bevor noch andere 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 nabfragt und einen Speicherzugriff anbietet; benötigt einer der Rechner eine Information aus dem Hauptspeicher 6, dann wird 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 zur Datenübertragung sowie aus einer Belegleitung BUSY besteht. Selbstverständlich sind, wie weiter oben schon kurz angedeutet, auch mehr oder weniger als vier Leitungen INFO oder Busleitungen möglich, insbesondere ist bei nur geringer Verdrahtungskapazität ein Zweileitungsbus zweckmäßig.Within the framework of the invention, several possibilities for establishing and making contact between the computer and the main memory 6 are provided, but it is expedient to first explain the basic structure and operation of a data transmission system using the illustration in Fig. 2 before discussing other possibilities for priority-determining access between the computer and the memory; this will be discussed in more detail below using Fig. 8. At this point in time, it should only be pointed out that there are other possibilities for memory access in order to prevent incorrect double assignment of the connecting line 5. The memory access described below in connection with the illustration in Fig. 2 is a contact between the computer and the memory determined by the main memory 6 itself in such a way that the main memory 6 cyclically queries all the computers 1, 2 n connected to it and offers memory access; If one of the computers requires information from the main memory 6 , the connection is established and the use of the connecting line 5 is blocked for all other computers, while at the same time the cyclic polling of the other computers by the main memory 6 itself is interrupted. Computers with the highest priority can be given priority here. Before the embodiment of Fig. 2 is discussed in more detail, it should be noted that the data transmission system according to the invention is described using a connecting line 5 which consists of four individual INFO lines for data transmission and a BUSY line. Of course, as already briefly mentioned above, more or fewer than four INFO lines or bus lines are also possible; a two-line bus is particularly useful when the wiring capacity is low.
Werden vier Busleitungen und eine Belegleitung 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 im 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 bit oder 1/2 Byte. Man benötigt daher, wie weiter unten noch ausführlich erläutert wird, bei einem Fünf-Leitungs-Bus lediglich 6 Grundtakte für den Speicherzugriff, 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.If four bus lines and one BUSY line are used, the data transmission system works in such a way that after the priority has been determined on the four INFO bus lines, the first half of the address, ie a 4-bit word or 1/2 byte, is transmitted first, then the second half of the 8-bit word of the address is transmitted at the next clock period; then, in the next clock period or in the next The main memory completes its access and transfers a binary half-word packet during the next two clock steps, consisting of 4 bits or 1/2 byte in the present embodiment. As will be explained in more detail below, only 6 basic clock cycles are required for memory access with a five-line bus, compared to a two-line bus, where significantly more basic clock cycles are required for data transfer and therefore the contact period between each of the single-purpose computers and the main memory 6 is considerably extended.
Wie eingangs schon erwähnt, erfolgt bei dem im folgenden zunächst zu besprechenden Ausführungsbeispiel anhand der Fig. 2 die Verteilung der Speicherzugriffe zyklisch, wobei der Speicher selbst vor dem eigentlichen Datentransfer, also vor der Übergabe der Adresse und der vermittelten Datenwerte den Einzelrechner bestimmt, der mit ihm zu einem vorgegebenen Zeitpunkt in Kontakt treten soll, jedoch nicht muß.As already mentioned at the beginning, in the embodiment to be discussed below with reference to Fig. 2, the distribution of memory accesses takes place cyclically, whereby the memory itself determines, before the actual data transfer, i.e. before the transfer of the address and the transmitted data values, the individual computer that should, but does not have to, contact it at a given time.
Hierzu weist der Hauptspeicher 6 eine Ablaufsteuerschaltung 8 auf, die beispielsweise in Form eines Zählers ausgebildet sein kann und in zyklischer Abfolge an ihren drei Ausgängen Q 1, Q 2 und Q 3 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 Weise, gespeist von einem Grundtakt fo umläuft, acht verschiedene Kennungen erzeugt werden, so daß bei diesem Ausführungsbeispiel acht verschiedene Einzweckrechner, falls gewünscht, zyklisch mit dem Hauptspeicher 6 verbunden werden können. Jedes so erzeugte, 3 bit umfassende Wort (entsprechend einer Rechnerkennung kann dann entweder unmittelbar auf drei der Verbindungsleitungen, etwa auf die Busleitungen a, b, c gelegt werden oder die Ausgänge Q 1, Q 2 und Q 3 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 Busleitungen a, b und c mit den Ausgängen der Prioritätsdekodierschaltung 9 verbunden 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 liegt.For this purpose, the main memory 6 has a sequence control circuit 8 which can be designed, for example, in the form of a counter and which generates a 3-bit binary word in cyclical sequence at its three outputs Q 1 , Q 2 and Q 3 , which can be used as the basis for the computer identification. As can be seen, if the 3-bit counter on which the sequence control circuit is based rotates in the usual way, fed by a basic clock fo , eight different identifications can be generated, so that in this embodiment eight different single-purpose computers can be cyclically connected to the main memory 6 if desired. Each 3-bit word generated in this way (corresponding to a computer identifier) can then either be placed directly on three of the connecting lines, for example on the bus lines a, b, c, or the outputs Q 1 , Q 2 and Q 3 of the sequence control circuit 8 are first fed to a priority decoding circuit 9 which, in accordance with its coding, generates the priority code for the respective computer controlled via the bus lines a, b, and c . The output of the priority decoding circuit is connected on the input side to a transmission register 10 which can be switched over in a clock-controlled manner. At the time of memory access distribution, the transmission register 10 is connected in such a way that the bus lines a, b and c are connected to the outputs of the priority decoding circuit 9 , so that for each clock pulse there is a new computer identifier on the bus lines a, b and c which is based on the cyclically rotating counter reading of the sequence control circuit 8 .
Rechnerseitig wird diese Kennung von dem 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. Es versteht sich, daß der gesamte Ablauf daher taktgesteuert und zwangssynchronisiert sein muß.On the computer side, this identifier is recognized by the computer for which it is intended and the respective computer 1, 2, n occupies the return line or BUSY line if necessary, whereby the sequence control circuit 8 is stopped and held in this position. It goes without saying that the entire sequence must therefore be clock-controlled and forcibly synchronized.
Sobald dann der jeweils angesprochene Rechner 1, 2, n durch Belegung der Leitung BUSY den Durchlauf der Ablaufsteuerschaltung 8 gestoppt hat, gelangt das erste 1/2 Byte 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. Zur präzisen Adressenbildung kann der übertragenden Adresse auch noch ein von der Rechnerkennung abgeleitetes Signal, und zwar entsprechend den Ausgängen Q 1, Q 2, Q 3 der Ablaufsteuerschaltung hinzugefügt werden, wodurch der Hauptrechner 6 weiß, welcher Rechner jeweils mit ihm verbunden ist und die Adresse in das richtige Speicherabteil gelangt.As soon as the respective addressed computer 1, 2, n has stopped the passage of the sequence control circuit 8 by occupying the BUSY line, the first 1/2 byte of the address is sent to the bus lines a, b, c, d and from there to a receiving circuit 11 ; after a further clock step, the second half of the address, i.e. the last 1/2 byte, is also transmitted to the receiving circuit 11. To form the address precisely, a signal derived from the computer identification can also be added to the transmitted address, namely in accordance with the outputs Q 1 , Q 2 , Q 3 of the sequence control circuit, whereby the main computer 6 knows which computer is connected to it and the address is sent to the correct memory compartment.
Zum taktmäßigen Datentransfer ist eine Speichertaktschaltung 12 vorgesehen, die an ihren Ausgängen J 0 - J 5 ein zyklisch durchlaufendes Signal erzeugt, wodurch der Ablauf des Datentransfers gesteuert wird. 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 J 4 und J 5 der Speichertaktschaltung 12 das ermittelte Datenwort in zwei Halbwortpaketen auf die Verbindungsleitung INFO gibt. Wä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 weiterer Rechner infolge Sperrung der Ablaufsteuerschaltung 8 verhindert. Ist der Datentransfer beendet, wird die Leitung BUSY wieder freigegeben und der zyklische Durchlauf weiterer Rechnerkennung läuft wieder an.For the clocked data transfer, a memory clock circuit 12 is provided which generates a cyclical signal at its outputs J 0 - J 5 , which controls the data transfer process. The entire 8-bit address then goes from the receiving circuit 11 to the actual read-only memory 13 , which sends a data value corresponding to this address to the transmitting circuit 10 , which then, controlled by the clocks J 4 and J 5 of the memory clock circuit 12 , sends the determined data word in two half-word packets to the connecting line INFO. During this entire time, the BUSY line is occupied and it is not possible to establish a connection with other computers, since the occupied BUSY line prevents other computers from responding due to the blocking of the sequence control circuit 8. When the data transfer is finished, the BUSY line is released again and the cyclical passage of further computer identification starts again.
In detaillierter Schaltung ist das Blockschaltbild der Fig. 2 in Fig. 3 erläutert, wobei die einzelnen Blöcke gestrichelt umrandet sind.The block diagram of Fig. 2 is explained in detail in Fig. 3, with the individual blocks outlined in dashed lines.
Zur Prioritätsverteilung bzw. zur Rechnerzugriffssteuerung umfaßt die Ablaufsteuerschaltung 8 des Blockschaltbilds der Fig. 2 einen Zähler 14, der die Prioritäten eine nach der anderen durchzählt. Der Zähler 14 ist als 3 bit Zähler geschaltet, daher erscheint an seinen Ausgängen Q 1 - Q 3 achtmal ein unterschiedliches Binärwort, 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 mit dem Hauptspeicher 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 Ausgänge mit den Eingängen eines nachgeschalteten NAND-Gatters 18 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 Binärwortes am Zählerausgang der Zähler auf Null zurückgestellt und damit sein zyklischer Ablauf wiederholt wird.For priority distribution or computer access control, the sequence control circuit 8 of the block diagram of Fig. 2 includes a counter 14 which counts through the priorities one after the other. The counter 14 is connected as a 3-bit counter, so a different binary word appears eight times at its outputs Q 1 - Q 3 before the first binary word is repeated; it is understood, however, that the counter 14 can of course be connected in such a way that, depending on the number of computers to be connected to the main memory 6 , the cyclical rotation of the counter 14 can also be set to a smaller number of different binary words to be generated before a repetition takes place. For early resetting of the counter 14 , a comparator logic is provided which consists of three exclusive OR gates 15, 16 and 17 , the outputs of which are connected to the inputs of a downstream NAND gate 18 , which is connected to the reset input Pr of the counter 14 via a further NAND gate 19. The other inputs of the exclusive OR gates 15, 16 and 17 are fed voltage signals from an arbitrarily connectable resistance matrix 20 , which in the embodiment is connected in such a way that whenever a certain binary word occurs at the counter output, the counter is reset to zero and its cyclical sequence is thus repeated.
Das jeweilige Ausgangsbinärwort entsprechend den logischen Zuständen der Ausgänge Q 1, Q 2 und Q 3 des Zählers 14, das im übrigen auch als Prioritätsvorkennung bezeichnet werden kann, geht auf die zugeordneten Eingänge der im 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 Q 1, Q 2 und Q 3 noch auf eine Adressen-Hilfsbildungsschaltung 23, die aus der Rechnerkennung Q 1, Q 2 und Q 3 in entsprechender gewünschter Umkodierung an ihren Ausgängen B 1, B 2 und B 3 logische Zustände erscheinen läßt, die einer dem Festwertspeicher 13 vorgeschalteten Adressensummierschaltung 24 zugeführt werden, worauf weiter unten noch eingegangen wird.The respective output binary word corresponding to the logical states of the outputs Q 1 , Q 2 and Q 3 of the counter 14 , which can also be referred to as a priority pre-identification, goes to the assigned inputs of the priority decoding circuit 9 shown in the lower part of Fig. 3, which recodes the priority pre-identification if necessary, but under certain circumstances also transmits it without change on the output side to a downstream switching logic 22. Furthermore, the computer identifier Q 1 , Q 2 and Q 3 also goes to an auxiliary address formation circuit 23 , which allows logical states to appear from the computer identifier Q 1 , Q 2 and Q 3 in the corresponding desired recoding at its outputs B 1 , B 2 and B 3 , which are fed to an address summing circuit 24 connected upstream of the read-only memory 13 , which will be discussed further below.
Zunächst ergibt sich jedoch folgendes. 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 Festwertspeichers 13 über die Übertragungsschaltung 25 auf die Busleitungen a, b, c, d legt.First, however, the following arises. The computer identifier, possibly recoded by the priority decoding circuit 9 , goes to correspondingly assigned inputs of a switching logic 22 , which, depending on its switching state, either transmits the (recoded) computer identifier to a downstream transmission circuit 25 at assigned outputs, which is directly connected on the output side to the bus lines a, b, c, d or which, in its other switching state, places outputs of the read-only memory 13 via the transmission circuit 25 to the bus lines a, b, c, d .
Die Schaltzustände der Umschaltlogik 22 bestimmen sich aus dem Zustand des auf der Belegleitung oder auf der Leitung BUSY befindlichen Signals. Weist die Belegleitung das Signal &udf53;lu,4,,100,5,1&udf54;BUSY&udf53;lu&udf54; auf, d. h. BUSY "nicht", ist also die gesamte Verbindungsleitung ihrem ersten Schaltzustand und überträgt die gegebenenfalls umkodierte Rechnerkennung Q 1, Q 2, Q 3 auf die ersten drei Busleitungen a, b, c. In diesem Fall befindet sich selbstverständlich auch die Übertragungsschaltung 25 in ihrem 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 Kennung angesprochene Rechner bei Bedarf der Kontaktaufnahme mit dem Festwertspeicher 13 die Gelegenheit hat, die Leitung BUSY zu belegen, dadurch den zyklischen Ablauf der Rechnerkennung durch den Zähler 14 abzustoppen und die Umschaltlogik 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 Umschaltlogik 22. Das gleiche Signal BUSY gelangt von der Leitung BUSY auf den Eingang C 1 des Zählers 14 und stoppt diesen. Nach Vereinbarung entspricht das Signal BUSY dem Zustand log 1 auf der Leitung BUSY.The switching states of the switching logic 22 are determined by the state of the signal on the busy line or on the BUSY line. If the busy line has the signal &udf53;lu,4,,100,5,1&udf54;BUSY&udf53;lu&udf54;, ie BUSY "not", the entire connecting line is in its first switching state and transmits the possibly recoded computer identifier Q 1 , Q 2 , Q 3 to the first three bus lines a, b, c . In this case, the transmission circuit 25 is of course also in its switched-through state. The computer-side reception circuit of the computer identifier, which appears cyclically on the bus lines a, b, c in the sequence just described, changing with each clock pulse, will be discussed in more detail below. First of all, it should simply be pointed out that the computer addressed by its identifier has the opportunity to use the BUSY line when it needs to contact the read-only memory 13 , thereby stopping the cyclical flow of the computer identifier through the counter 14 and bringing the switching logic 22 into its other switching state, namely, as can be seen from the illustration in Fig. 3, by feeding the BUSY signal to an input of the switching logic 22. The same BUSY signal goes from the BUSY line to the C 1 input of the counter 14 and stops it. By agreement, the BUSY signal corresponds to the log 1 state on the BUSY line.
Bei der Umschaltlogik 22 kann es sich um einen einfachen Relaisumschalter handeln, es können aber auch bevorzugt integrierte elektronische Umschaltgatter verwendet werden, wie sie beispielsweise unter der Bezeichnung 4019 von der PCA 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 25 a, die abwechselnd ausgangsseitig mit den Busleitungen a - d verbunden sind.The switching logic 22 can be a simple relay switch, but integrated electronic switching gates can also be used, such as those sold by PCA under the designation 4019. The counter 14 is the integrated counter chip 4029 from RCA. The transmission circuit 25 connected downstream of the switching logic consists of so-called transmission gates with the designation 4016 from RCA in an integrated design. There are two quadruple transmission gates 25 and 25 a , which are alternately connected on the output side to the bus lines a - d .
Sobald die Rechnerkennung auf den Busleitungen a, b, c liegt und ein Rechner daraufhin die Leitung BUSY belegt hat, schaltet, wie schon erwähnt, das Signal Busy auch die Umschaltlogik 22 um und veranlaßt über eine Leitung 26 mit dem Signal &udf53;lu,4,,100,5,1&udf54;BUSY&udf53;lu&udf54; 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äßige Ablaufsteuerung für den Datentransfer. Auf den taktmäßigen Ablauf wird im übrigen weiter unten anhand des Zeitdiagramms der Fig. 6 noch genauer eingegangen.As soon as the computer ID is on the bus lines a, b, c and a computer has then occupied the BUSY line, the Busy signal also switches the switching logic 22 , as already mentioned, and initiates the clock-based sequence control for the data transfer via a line 26 with the signal &udf53;lu,4,,100,5,1&udf54;BUSY&udf53;lu&udf54; to the reset input "Reset" of a counter 27 designed in the form of a feedback shift register, which will be discussed in more detail below with reference to Fig. 7. The clock-based sequence will be discussed in more detail below with reference to the timing diagram in Fig. 6.
Der Darstellung der Fig. 7a läßt sich der Aufbau des Zählers 27 entnehmen; er besteht aus einer Anzahl miteinander verbundener bistabiler Kippglieder, bevorzugt sogenannter D-Flip- flops 28, 29, 30, denen der Grundsystemstakt fo für die zyklische Weiterschaltung zugeführt ist und wobei der Ausgang des letzten D-Flipflops über einen Inverter 31 auf den Eingang rückgekoppelt ist. Dementsprechend erzeugt ein solcher Zähler, der unter der Bezeichnung "Johnson Zähler" bekannt ist, an seinen Ausgängen P 0, P 1, P 2 die in Fig. 7b angegebene Zustandsfolge 1. - 6. Diese Zählerzustände 1. - 6. werden über die Dekodierschaltung 100 der Fig. 7c, bestehend aus einer Reihe von NOR-Gattern 101 - 106, decodiert. Die Ausgangssignale J 0, J 1, J 2, J 3, J 4, J 5 der Dekodierschaltung 100 durchlaufen in zyklischer Abfolge den Zustand log 1. Diese Ausgangssignale F 0 - J 5 werden im vorliegenden Fall zur Steuerung des Datentransferablaufs verwendet. Ein Zeitdiagramm der Steuersignale J 0-J 5 zeigt Fig. 7d.The structure of the counter 27 can be seen from the illustration in Fig. 7a; it consists of a number of interconnected bistable flip-flops, preferably so-called D flip-flops 28, 29, 30, to which the basic system clock fo is fed for the cyclic switching and the output of the last D flip-flop is fed back to the input via an inverter 31. Accordingly, such a counter, which is known under the designation "Johnson counter", generates the state sequence 1. - 6 shown in Fig. 7b at its outputs P 0 , P 1 , P 2 . These counter states 1. - 6. are decoded via the decoding circuit 100 of Fig. 7c, consisting of a series of NOR gates 101 - 106 . The output signals J 0 , J 1 , J 2 , J 3 , J 4 , J 5 of the decoding circuit 100 pass through the log 1 state in a cyclic sequence. These output signals F 0 - J 5 are used in the present case to control the data transfer process. A timing diagram of the control signals J 0 - J 5 is shown in Fig. 7d.
Während der ersten Taktzeit J 0 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 Rückstelleitung 32. Die Kippglieder sind jeweils mit dem Bezugszeichen 33 versehen und bestehen aus vier getrennten Blöcken integrierter Schaltungen der Handelsbezeichnung 4027 der RCA, wobei jeder Block zwei sogenannte J-K-Flipflops umfaß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 dem Festwertspeicher 13 zur Verfügung gestellt wird.During the first clock period J 0 of the Johnson counter, as it will be referred to below (available under the number 4022 from RCA), the bistable flip-flops connected upstream of the read-only memory 13 in embodiment 8 are first reset to zero via a common reset line 32. The flip-flops are each provided with the reference number 33 and consist of four separate blocks of integrated circuits with the trade name 4027 from RCA, each block comprising two so-called J - K flip-flops. These flip-flops 33 are the receive register 22 of the read-only memory 13 , to which the address is fed from the respective computer in two 1/2 byte packets and made available to the read-only memory 13 by the flip-flops 33 at their outputs.
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 bestimmter 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 Worte als gewünschte Information erhalten. Andere Rechner verfügen beispielsweise über 16 oder auch nur über einen einzigen Speicherplatz, wobei der Festwertspeicher 13 selbst beispielweise so ausgebildet sein kann, daß er über 256 Speicherplätze zu je 8 bit verfügt. Als Speicher kann beispielsweise der unter der Bezeichnung 1702 von der INTEL Corp. erhältliche Speicher verwendet werden.Before we go into the further timing of the data transfer, the following should be noted. Each of the computers 1, 2, n generates an address depending on the information it needs to receive, with the computers being assigned a specific area in the read-only memory 13 in which the data values relevant to this computer are stored. For example, computer 1 can have 32 memory locations, so it can supply 32 addresses to the read-only memory and receive 32 8-bit words as the desired information. Other computers have 16 or just a single memory location, with the read-only memory 13 itself being designed, for example, to have 256 memory locations of 8 bits each. The memory used can be, for example, the memory available from INTEL Corp. under the designation 1702.
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 angeschlossen, dann übermittelt jeder der Rechner von seinem Standpunkt aus jeweils Adressen 0 - 15 oder 0 - 31, wobei der Hauptspeicher 6 diesen Adressen, nämlich den 3 MSB (most significant bit = wichtigste bit) beim vorliegenden Ausführungsbeispiel eine "Hilfsadresse" hinzugefü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"- oder Zusatzadresse ist nicht weiter schwierig, denn der Hauptspeicher 6 verfügt durch die Rechnerkennung Q 1, Q 2, Q 3 schon über ein, nur für diesen Rechner gültiges binäres Wort, welches, falls erforderich, über die Adressenhilfsbildungsschaltung 23 noch umkodiert wird und in Form von Ausgängen B 1, B 2, B 3 auf entsprechend zugeordnete Eingänge der Adressensummierschaltung 24 gelangt. An ihren Ausgängen S 1, S 2, S 3 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 erhältliches Addierwerk, welches aus den jeweils beiden Eingängen A 1, B 1; A 2, B 2; An, Bn jeweils die Summe S 1, S 2 und S 3 bildet und an seinen Ausgängen zur Verfügung stellt.If only a single computer is connected to the read-only memory 13 , then the address transmitted by the computer can be transferred directly to the read-only memory 13 ; if several computers are connected, then each of the computers transmits addresses 0 - 15 or 0 - 31 from its point of view, with the main memory 6 adding an "auxiliary address" to these addresses, namely the 3 MSB (most significant bit) in the present embodiment, so that the address originating from the respective computer also reaches the correct area of the read-only memory 13. The address summing circuit 24 mentioned above is provided for this purpose; The generation of this "auxiliary" or additional address is not difficult, because the main memory 6 already has a binary word that is only valid for this computer through the computer identifier Q 1 , Q 2 , Q 3 , which, if necessary, is recoded via the auxiliary address formation circuit 23 and is sent in the form of outputs B 1 , B 2 , B 3 to correspondingly assigned Inputs of the address summing circuit 24. At its outputs S 1 , S 2 , S 3 the address summing circuit then forms the 3 MSB of the "correct" address for this computer so that the address, as already mentioned, also reaches the correct compartment of the read-only memory 13. The remaining 5 LSB reach the read-only memory 13 directly via switching logic to be described below. The address summing circuit 24 is an adder available from RCA under the designation 4008, which forms the sum S 1 , S 2 and S 3 from the two inputs A 1 , B 1 ; A 2 , B 2 ; An , Bn and makes it available at its outputs.
Bei der nächsten Taktzeit des Johnson Zählers (J 1 = log 1) werden die jeweils einen Eingänge von NAND-Gattern 35&min; 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&min; gelangen, und zwar über Inverter 36&min;.At the next clock time of the Johnson counter ( J 1 = log 1), the respective inputs of NAND gates 35' are controlled, whereby the first 4 bits of the address in the embodiment, which are on the bus lines a, b, c, d at this clock time, reach the associated flip-flops 33' , namely via 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 Zwangssynchronisierung ü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 "gerettet" und der eigentliche Datentransfer kann, ebenfalls zwangstaktgesteuert, beginnen.It should be pointed out again at this point that it is essential that the main memory 6 and the respective computers work with the same clock, which is achieved by forced synchronization via the system basic clock fo , which is also fed to the respective sequence control circuits on the computer side, which will be discussed below, as already mentioned. This operation with the same clock is also particularly important in the case in which the computer recognizes the computer ID assigned to it on the bus lines a, b, c and stops the priority counter 14 with the same clock edge by occupying the BUSY line. This state is thus "saved" for the system and the actual data transfer can begin, also forced clock-controlled.
Nach Ablauf der Taktzeit J 1 schaltet der Johnson Zähler 27 auf die Taktzeit J 2 um und es werden, wie ersichtlich, entsprechend zugeordnete NAND-Gatter 35 so geschaltet, daß die Übetragung der zweiten Halbadresse über diese und nachgeschaltete Inverter 36 möglich ist. Nachdem auf diese Weise die gesamte Adresse zunächst während der beiden Taktzeiten J 1 und J 2 in die Flipflops 33 bzw. 33&min; und von dort auf den Festwertspeicher übertragen worden ist, wird mit der nachfolgenden Taktzeit J 3 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 Eingang des weiter vorn schon erwähnten, zur Rückstellung dienenden NAND-Gatters 19. Die Rückstellung des Prioritätenzählers 14 kann zu diesem 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 0 die Weiterzählung zu veranlassen. Die Taktzeit J 3 ermöglicht dem Speicher auch den Zugriff zum gespeicherten Wort.After the clock time J 1 has elapsed, the Johnson counter 27 switches to the clock time J 2 and, as can be seen, correspondingly assigned NAND gates 35 are switched in such a way that the transfer of the second half address is possible via these and downstream inverters 36. After the entire address has been transferred in this way, initially during the two clock times J 1 and J 2 , to the flip-flops 33 and 33' and from there to the read-only memory, the priority counter 14 is reset via line 38 with the subsequent clock time J 3 of the Johnson counter 27 ; line 38 goes via an inverter 39 to the input of the NAND gate 19 mentioned above, which is used for resetting. The priority counter 14 can be reset at this time, since this special computer identification is no longer required. Alternatively, it is of course possible to leave the priority counter 14 at its value and to continue counting when the BUSY line switches to the log 0 state. The clock time J 3 also enables the memory to access the stored word.
Die nachfolgenden beiden Takte J 4 und F 5 dienen der Übermittlung des an den Ausgängen D 1 bis D 8 des Festwertspeichers 13 anstehenden Datenwertes. Zu diesem Zeitpunkt hat wegen des Zustands Busy = log 1 die Umschaltlogik 22 ohnehin auf die Ausgänge D 6 bis D 8 des Festwertspeichers 13 umgeschaltet; durch Zuleitung des Taktzeitsignals J 4 ü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 J 4 bzw. J 5 im Falle des Transmission-Gates 25 a gelangt auf die Gatterelektroden, wodurch die Halbleiterschalter durchschalten. Es kommt so während der Taktzeit J 4 zur Übertragung des ersten Datenwerthalbblocks, der 4 bit umfaßt und an den Ausgängen D 5 bis D 8 des Festwertspeichers 13 anliegt. Zur Taktzeit J 5 schaltet schließlich das Transmission-Gate 25 a 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 Zugriffszyklus bereit.The next two clocks J 4 and F 5 are used to transmit the data value present at the outputs D 1 to D 8 of the read-only memory 13. At this point in time, due to the status Busy = log 1, the switching logic 22 has already switched to the outputs D 6 to D 8 of the read-only memory 13 ; by feeding the clock signal J 4 via an inverter 40 to a downstream NAND gate 41 , the transmission gate 25 is switched through, i.e. the transmission gate transmits the logic states present at its inputs to the bus lines a - d . The transmission gates can be bilateral switches in COS/MOS technology. The signal J 4 or J 5 in the case of the transmission gate 25 a reaches the gate electrodes, causing the semiconductor switches to switch through. During the clock time J 4 , the first half-block of data value is transmitted, which comprises 4 bits and is present at the outputs D 5 to D 8 of the read-only memory 13. At the clock time J 5 , the transmission gate 25 a finally switches through and transmits the second half of the stored data value via the bus lines a to d . The assigned computer then removes the assignment of the bus lines and the system is ready for the next access cycle.
Die Fig. 6 zeigt das Zeitdiagramm der verschiedenen Impulsvorgänge auf der Speicherseite des Übertragungssystems; die Fig. 6a zeigt den Grundtakt des Systems, der bei einem Ausführungsbeispiel bei 600 KHz liegen kann; die Fig. 6b zeigt den Spannungsverlauf auf der Leitung BUSY; die Fig. 6c bis Fig. 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 T 0 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 Q 1, Q 2 und Q 3 des Prioritätenzählers erhalten bleiben und gleichzeitig mit Umschalten des Busy-Signals auf log 1 der erste Taktzeitimpuls J 0 beginnt; daran schließen sich dann in zyklischer Folge die anderen Taktzeitimpulse entsprechend dem Verlauf der Signale in den Fig. 6f Fig. 6l an; entsprechend Fig. 6m erzeugt die Rechnerseite des Datenübertragungssystems dann noch einen letzten Rücksetz- oder Quittungsimpuls (hierauf wird im folgenden noch einzugehen sein), die letzten beiden Zeitdiagramme entsprechend den Fig. 6n und 6o 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. Tb sind gebildet durch den Impuls J 1 · °K&udf53;lu,4,,100,5,1&udf54;fo&udf53;lu&udf54; bzw. durch den Impuls J 2 · °K&udf53;lu,4,,100,5,1&udf54;fo&udf53;lu&udf54; . Fig. 6 shows the timing diagram of the various pulse processes on the memory side of the transmission system; Fig. 6a shows the basic clock of the system, which in one embodiment can be 600 KHz; Fig. 6b shows the voltage curve on the BUSY line; Fig. 6c to Fig. 6e show the signal processes at the output of the priority counter, the curve of which is not important due to the special coding; the only important thing is that at time T 0 there is such a coding that one of the computers, which simultaneously has a request signal for data exchange, occupies the BUSY line, whereupon the signal outputs Q 1 , Q 2 and Q 3 of the priority counter are retained as a result of the priority counter being locked and at the same time the first clock pulse J 0 begins with the switching of the busy signal to log 1; this is then followed in cyclical sequence by the other clock pulses in accordance with the curve of the signals in Fig. 6f Fig. 6l; According to Fig. 6m, the computer side of the data transmission system then generates a final reset or acknowledgement pulse (this will be discussed below). The last two timing diagrams, corresponding to Figs. 6n and 6o, show the times at which the first 4 bits of the address ( Fig. 6n) and the second 4 bits of the address are stored. These times Ta and Tb are formed by the pulse J 1 · °K&udf53;lu,4,,100,5,1&udf54;fo&udf53;lu&udf54; and by the pulse J 2 · °K&udf53;lu,4,,100,5,1&udf54;fo&udf53;lu&udf54; .
Im folgenden wird anhand der Darstellung der Fig. 4 der prinzpielle Aufbau des jeden einzelnen Rechner 1, 2, n zugeordneten Teilschaltungsbereich des Übertragungssystems 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-Zähler ausgebildet ist und im vorliegenden Fall eine Erweiterung um ein zusätzliches Kippglied erfahren hat, so daß rechnerseitig insgesamt 7 Taktzeiträume erzeugt werden. Zunächst laufen bei einer Zugriffssteuerung bzw. Prioritätenverteilung auf den Busleitungen a, b und c beim Ausführungsbeispiel die jeweiligen Rechnerkennung je eine pro Periode des Grundsystemtakts ab; jeder der Rechnerseite zugerodnete 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 Ablaufssteuerschaltung 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.The basic structure of the sub-circuit area of the transmission system or bus interface circuit assigned to each individual computer 1, 2, n is explained below with reference to the illustration in Fig. 4. It has already been pointed out that both the individual computers and the main memory 6 are subject to the same basic system clock; for compulsory synchronization of the process sequences on both sides of the bus line or connecting line, the computer side also has a memory clock circuit 46 , which is also designed as a Johnson counter and in the present case has been expanded by an additional flip-flop, so that a total of 7 clock periods are generated on the computer side. Firstly, with access control or priority distribution on the bus lines a, b and c in the exemplary embodiment, the respective computer identifiers run one per period of the basic system clock; Each circuit part assigned to the computer side, as shown in Fig. 4, has a computer identification decoding circuit 47 which, when the identification assigned to this computer appears on the bus lines a, b and c , forwards an output signal to a sequence control circuit 48 which, when If a request signal is present on a line 49, the BUSY line can be occupied by a busy signal of the logical state log 1; then the effects already explained in detail above with reference to the main memory arise.
Die Rechnerseite der Bus-Interface-Schaltung kann so augebildet 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 zugeleitet. 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 J 0 ein, der daher zeitgleich zu dem Impuls J 0 der Speichertaktschaltung 12 des Hauptspeichers 6 liegt.The computer side of the bus interface circuit can be designed in such a way that an address is created by the respective computer 1, 2, n or by an address computer assigned to this computer when required and applied to inputs X and Y of switching logics 50 and 51. At the same time, a request signal is sent to the sequence control circuit 48. The sequence control circuit 48 , as already mentioned, occupies the busy line and at the same time resets the Johnson counter via the connecting line 52 or initiates the generation of the first clock pulse J 0 , which is therefore simultaneous with the pulse J 0 of the memory clock circuit 12 of the main memory 6 .
Wie erinnerlich diente der Impuls J 1 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 J 1 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.As you will remember, the pulse J 1 of the Johnson counter 27 of the memory-side circuit of Fig. 3 was used to switch through the first half-address, which is therefore present on the bus lines a to d . Therefore, the computer-side part of Fig. 4 also switches through the first switching logic 51 with the pulse J 1 , so that the addresses present at the inputs Y reach these bus lines a to d . The next pulse then switches the second switching logic 50 for the transfer of the second half-address.
Dementsprechend sind dann noch für den Empfang der abgerufenen Dateninformation zwei Umschaltlogiken 54 und 55 vorgesehen, an deren Ausgängen nach Ablauf des Taktzeitimpulses J 5 das gesamte 8 bit-Datenwort aus dem Festwertspeicher 13 anliegt.Accordingly, two switching logics 54 and 55 are provided for receiving the retrieved data information, at whose outputs the entire 8-bit data word from the read-only memory 13 is present after the clock pulse J 5 has expired.
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 Grundtakt 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 NAND-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 mittelt, ob ein Datenaustausch von ihm gewünscht wird.In detail, the circuit of Fig. 4 looks like this: according to the representation of Fig. 5, three exclusive OR gates 57, 58 and 59 are provided for decoding the computer identification in the embodiment, the inputs of which are constantly fed with the signals on the bus lines a, b and c , corresponding to the cyclically running computer identification. The other inputs of these exclusive OR gates 57 to 59 are permanently connected according to the identification of this special computer, so that only when a very specific signal composition is present on the bus lines a, b, c and when the BUSY line is in a specific state in the previous basic clock, the signal of which is delayed by this basic clock via a bistable flip-flop, preferably via a so-called D flip-flop 60 , does the decoding circuit 47 for the computer identification and the "bus not occupied" state respond and emit an output signal via a NAND gate 61 connected downstream of the exclusive OR gates 57, 58, 59 and the negated output of the D flip-flop 60. If this output signal is present, this indicates that the memory side of the data transmission system is ready to contact this special computer; The computer is then switched in such a way that it responds on the busy line and, by applying a logical 1 or a logical 0, informs the main memory 6 whether a data exchange is desired from it.
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änge der Exklusiven ODER- Gatter entsprechend log 0, log 1 und log 0 zu beschalten; in diesem Falle befinden sich sämtliche Ausgänge 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 60 a log 0. Damit ist der Ausgang des NAND-Gatters 61 auf log 1 und der Rechner nimmt keinen Kontakt mit dem Hauptspeicher 6 über die Bus-Leitung auf.If, for example, the identifier for the computer described in Fig. 5 on the bus lines a, b, and c is log 1, log 0, log 1, then the other inputs of the exclusive OR gates are to be connected accordingly to log 0, log 1 and log 0; in this case, all outputs of the exclusive OR gates are in the state log 1. If, for example, the BUSY line in the previous basic clock was in the state log 1 (ie BUS "busy"), then the signal on line 60a going to the NAND gate 61 is log 0. The output of the NAND gate 61 is therefore at log 1 and the computer does not make contact with the main memory 6 via the bus line.
Befand sich dagegen die BUSY-Leitung im vorhergehenden Grundtakt beispielsweise im Zustand log 0 (d. h. BZS "frei"), dann ist neben den sämtlichen Ausgängen der Exklusiv-ODER-Gatter 57, 58, 59 im obigen Beispiel auch die Leitung 60 a im Zustand log 1 und am Ausgang des NAND-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 &udf53;lu,4,,100,5,1&udf54;Kennung&udf53;lu&udf54; ( = 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 S K auf die Busy-Leitung übertragen wird und damit die Belegung oder Nichtbelegung der gesamten Busleitungen anzeigt. Dieses Signal S K hängt vom Zustand eines Kippgliedes 64 ab, welches beispielsweise als JK-Flipflop ausgebildet sein kann und dem über die Leitung 66 ein Anforderungssignal S A 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 Q des Flipflops 64 ein Anforderungssignal log 0, also &udf53;lu,4,,100,5,1&udf54;Anfo&udf53;lu&udf54; liegt. Das Signal der Signalleitung 68 wird gemeinsam mit dem J 6-Ausgang der später noch näher zu beschreibenden Speichertakterzeugungsschaltung 46 auf ein NOR-Gatter 67 geführt, dessen Ausgang das Steuersignal S S für den Schalter 63 bildet.If, however, the BUSY line was in the log 0 state (i.e. BZS "free") in the previous basic clock cycle, then in addition to all the outputs of the exclusive OR gates 57, 58, 59 in the above example, the line 60a is also in the log 1 state and the output of the NAND gate 61 is in the log 0 state when this computer-specific identifier is selected by the memory. The output signal &udf53;lu,4,,100,5,1&udf54;identifier&udf53;lu&udf54; (= identifier "not") is fed via an inverter 65 to an OR gate 62 which, in the simplest case, actuates a switch 63 on the output side in such a way that a signal S K fed to the switch is transferred to the busy line and thus indicates the occupancy or non-occupancy of all the bus lines. This signal S K depends on the state of a flip-flop 64 , which can be designed, for example, as a JK flip-flop and to which a request signal S A is sent from the associated computer via line 66 , which indicates whether the computer requires information. The signal on line 66 generated by a separate address computer, which can be referred to as the primary request signal, brings the flip-flop 64 into its set state with the leading edge of the basic system clock fo , so that a request signal log 0, i.e. &udf53;lu,4,,100,5,1&udf54;Anfo&udf53;lu&udf54;, is present on the output line 68 corresponding to the output Q of the flip-flop 64. The signal of the signal line 68 is fed together with the J 6 output of the memory clock generation circuit 46, which will be described in more detail later, to a NOR gate 67 , the output of which forms the control signal S S for the switch 63 .
Liegt eine Anforderung des zugeordneten Rechners vor, so ist Leitung 68 im Zustand log 0 und wenn gleichzeitig der J 6- Ausgang vom Johnson-Zähler 46 ebenfalls log 0 ist, so wird das Signal S ST auf Leitung log 1, was bedeutet, daß dieser Zustand über den Schalter 63, welcher beim Ausführungsbeispiel zweckmäßigerweise ein sogenanntes Transmission-Gate oder ein Transisterschalter 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 0 übertragen wird.If there is a request from the associated computer, line 68 is in the state log 0 and if at the same time the J 6 output from the Johnson counter 46 is also log 0, the signal S ST on line becomes log 1, which means that this state is transferred to the busy line via switch 63 , which in the embodiment can be a so-called transmission gate or a transistor switch using MOS technology. If there is no request, line 68 is in the logic state 1, so that a log 0 is transferred to the busy line via NOR gate 67 and switch 63 .
Der Eingriff des J 6-Ausgangs des Johnson-Zählers 16 über das NOR-Gatter 67 erfolgt zu dem Zweck, daß nach erfolgten Datenaustausch in der Taktphase J 6, zu der der J 6-Ausgang gleich log 1 ist, die Busy-Leitung auf log 0 gelegt und damit als eindeutig nicht belegt gekennzeichnet wird.The intervention of the J 6 output of the Johnson counter 16 via the NOR gate 67 is carried out for the purpose that after data exchange has taken place in the clock phase J 6 , at which the J 6 output is equal to log 1, the busy line is set to log 0 and is thus clearly marked as not occupied.
Im Falle der Anforderungen liegen auch an den mit Bezug auf Fig. 4 schon erwähnten Eingangsleitungen X und Y jeweils die Halbworte der Adresse an.In the case of requests, the half-words of the address are also present on the input lines X and Y already mentioned with reference to Fig. 4.
Der rechnerseitige Bus-Interface-Teil öffnet daher das Transmission-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 ein Belegung der Busleitungen 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 diesen angesteuerten Flipflop 70 vorgesehen. Dem ODER-Gatter werden eingangsmäßig die Informationen &udf53;lu,4,,100,5,1&udf54;Anfo,&udf53;lu&udf54;&udf53;lu,4,,100,5,1&udf54;Ken°-nung&udf53;lu&udf54; 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 genetzten Zustand zu kippen, der in diesem Zustand so lange verbleibt, bis ihm über eine Leitung 71 von der Speichertakterzeugungsschaltung 46, die, wie schon erwähnt, ebenfalls ein Johnson-Zähler ist, der Rücksetzimpuls 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 Busleitungen a, b und c weggenommen ist.The computer-side bus interface part therefore always opens the transmission gate 63 to occupy the BUSY line when the specific computer identifier assigned to it occurs and then, depending on whether information and therefore an occupation of the bus lines is required, allows the BUSY line to be occupied. This occupation must be maintained throughout the entire data transfer, since the computer identifier only remains on the bus lines a, b, c until the data transfer has been carried out on them. A holding circuit is provided, consisting of an OR gate 69 and a flip-flop 70 controlled by it. The OR gate is supplied with the information "Anfo,&udf53;lu&udf54;&udf53;lu,4,,100,5,1&udf54;Ken°-nung&udf53;lu&udf54; and the signal of the busy line delayed by one basic clock pulse by the D flip-flop 60 , signals which occur when the computer wants to use the bus lines and the bus line was not previously used. This enables the NOR gate 69 to switch the flip-flop 70 to its networked state, which remains in this state until the reset pulse is fed to it via a line 71 from the memory clock generation circuit 46 , which, as already mentioned, is also a Johnson counter. The flip-flop 70 therefore keeps the transmission gate 63 open with its output signal via the OR gate 62 even when the computer ID is removed from the bus lines a, b and c at the next system clock.
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 über die Leitung 52 rückgesetzt und erzeugt den Takt J 0. 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 geschildet, ebenfalls log 1 und gibt damit weiterhin über den zweiten Eingang des NOR-Gatters 72 die Speichertakterzeugungsschaltung 46 frei. Mit dem nächsten Taktzeitimpuls J 1 gehen die 4 MSB (1/2 Byte) der ersten Teiladresse Y auf die Busleitungen a, b, c, d, der nächste Taktzeitimpuls J 2 legt die nachfolgenden 4 LSB der Adresse X auf die Busleitungen; die Taktzeit J 3 ermöglicht dem Hauptspeicher den Zugriff und die Bereitstellung des ausgewählten Datenwortes; mit dem nachfolgenden Taktzeitimpuls J 4 erfolgt die Übernahme des ersten Halbwortes von 4 bit; der Taktzeitimpuls J 5 ermöglicht die Übernahme des nächsten 1/2 Byte des ermittelten Datenwertes vom Speicher.The data transfer and the other clock circuits then run synchronously with the memory-side part. If the computer in question does not exchange data with the main memory 6 via the bus line, the memory clock generation circuit 46 is reset via line 52 and generates the clock J 0 . If there is a request from the computer and the bus line was not occupied in the previous clock, a log 1 appears at the output of the NOR gate 69 , as already described, which, in addition to setting the JK flip-flop 70 , also enables the reset memory clock generation circuit 46 via the NOR gate 72 and the subsequent line 52. In the next clock phase, the output of the JK flip-flop 64 is then also log 1, as already described, and thus continues to enable the memory clock generation circuit 46 via the second input of the NOR gate 72 . With the next clock pulse J 1, the 4 MSB (1/2 byte) of the first partial address Y go to the bus lines a, b, c, d, the next clock pulse J 2 puts the following 4 LSB of the address X on the bus lines; the clock pulse J 3 enables the main memory to access and provide the selected data word; with the following clock pulse J 4 , the first half-word of 4 bits is taken over; the clock pulse J 5 enables the next 1/2 byte of the determined data value to be taken over from the memory.
Es sind 4 Doppelflipflops 75, 76, 77 und 78 vorgesehen, wobei lediglich die Übernahmemimik für eine Hälfte des ersten Doppelflipflop 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ähiges 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.Four double flip-flops 75, 76, 77 and 78 are provided, with only the takeover mechanism for one half of the first double flip-flop 75 being shown in more detail, also for the reason that these are only preferred embodiments anyway, but a complete and functional system is explained throughout for better understanding. It is understood that the invention is not limited to the specific arrangements of logic circuits and memories, but that any electronic component and solid-state switching element which is capable of fulfilling the functions described can be used.
Dem einen Eingang D 1&min; des Flipflops 54, bei dem es sich um den Doppelbaustein 4013 der RCA handeln kann, wird über kaskadierte Verknüpfungsschaltungen in Form von NAND-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 J 4 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 J 4-Impuls über einen Inverter 83 zugeführt ist. Das Einschreiben der so an dem Eingang D 1 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 und 78 in entsprechener Form, wobei die Flipflops 77 und 78 vom zweiten Taktzeitimpuls für die Wortübernahme vom Hauptspeicher, nämlich J 5, gesteuert sind. An den Ausgängen der Flipflops A 1 bis A 8 liegt nach Ablauf des sechsten Taktzeitimpulses J 5 die gewünschte Dateninformation des Hauptspeichers zur Weiterverarbeitung an.The signal on the bus line i , which can stand for any bus line, is fed to one input D 1' of the flip-flop 54 , which can be the double module 4013 of the RCA, via cascaded logic circuits in the form of NAND gates 79 and 80 , and the clock pulse J 4 is fed to the other input of the NAND gate 79. The flip-flop 75 takes the signal from the bus line at its output and maintains itself via the feedback of the line 81 and the further NAND gate 82 , to the other input of which the J 4 pulse is fed via an inverter 83. The information prepared in this way at the input D 1 of the flip-flop 75 is then written using the basic clock fo . This circuit arrangement, which is specified with reference to one part of the double flip-flop 75, is repeated in a corresponding form for all the remaining flip-flops 75 and 78 , whereby the flip-flops 77 and 78 are controlled by the second clock pulse for the word transfer from the main memory, namely J 5 . After the sixth clock pulse J 5 has expired, the desired data information from the main memory is available at the outputs of the flip-flops A 1 to A 8 for further processing.
Mit dem Taktzeitimpuls J 5 bereitet die Takterzeugungsschaltung 46 den Flipflop 64 auf das Rücksetzen vor. Es schließt sich dann noch ein siebter Taktzeitimpuls J 6 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-Gatters 67, da der zweite Eingang des NOR-Gatters 67&udf53;lu,4,,100,5,1&udf54;Anfo&udf53;lu&udf54; = log 1, auf log 0 bringt, so daß über den durchgeschalteten Schalter 63, wie bereits beschrieben, die Busy-Leitung in Taktphase J 6 auf log 0 gelegt wird. Gleichzeitig kann aus dem Taktzeitimpuls J 6 noch ein Quittung-Impuls abgeleitet werden, der dem Hauptspeicher 6 oder sonstigen Teilen der Schaltung zugeführt wird. Der Taktzeitimpuls J 6 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 Busleitung liegenden Rechner 1, 2, bzw. 32, usw. das Ende des Datenaustauschs eindeutig erkennen können.With the clock pulse J 5 , the clock generation circuit 46 prepares the flip-flop 64 for resetting. This is followed by a seventh clock pulse J 6 , which prepares the flip-flop 70 for resetting via the line 71 , whereby the busy line is released in the next clock and which also brings the output of the NOR gate 67 to log 0 because the second input of the NOR gate 67 &udf53;lu,4,,100,5,1&udf54;Anfo&udf53;lu&udf54; = log 1, so that the busy line is set to log 0 in clock phase J 6 via the switched-through switch 63 , as already described. At the same time, an acknowledgement pulse can be derived from the clock pulse J 6 , which is fed to the main memory 6 or other parts of the circuit. The clock pulse J 6 is no longer of interest for the information transfer; it allows the busy line to be occupied with log 0 for another clock cycle, so that the main memory and all other computers 1, 2, or 32, etc. connected to the bus line can clearly recognize the end of the data exchange.
Die log 0 der Busy-Leitung in Taktzeitimpuls J 6 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. The log 0 of the busy line in clock pulse J 6 enables the counter 14 to count again, which means that the memory-side circuit part is also held for another clock pulse before the system returns to its cyclic starting point.
Ergänzend sei darauf hingewiesen, daß die für 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 KHz, wie schon erwähnt, aufweist.In addition, it should be noted that the Johnson counters 27 and 46 responsible for the clock timing count with the basic clock fo , which in the selected embodiment has a frequency of 600 KHz, as already mentioned.
Die Darstellung der Fig. 9 zeigt das Zeitdiagramm der Schaltungsabläufe auf der Rechnerseite der Bus-Interface-Schaltung; die Fig. 9a zeigt wiederum, entsprechend der Fig. 6a, den Grundtakt fO, Fig. 9c zeigt das Anforderungssignal &udf53;lu,4,,100,5,1&udf54;Anfo&udf53;lu&udf54; , 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 Kennung "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 J 1 erzeugt (entsprechend Fig. 9h), wenn man annimmt, daß entsprechend Fig. 9g das Signal J 0 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 Fig. 9h bis Fig. 9m laufen dann die Taktzeitimpulse J 1 bis J 6 des Johnson-Zählers 46 ab; da der Takt J 3 für die Rechnerseite keine Bedeutung hat, ist sein Verlauf hier nicht dargestellt, der Takt J 4 beginnt jedoch um eine Taktzeit versetzt nach dem Takt J 2 der Fig. 9i.The illustration in Fig. 9 shows the timing diagram of the circuit sequences on the computer side of the bus interface circuit; Fig. 9a shows, in turn, the basic clock fO , corresponding to Fig. 6a, Fig. 9c shows the request signal &udf53;lu,4,,100,5,1&udf54;Anfo&udf53;lu&udf54;, which has assumed the state log 1 at any time. As soon as the computer identification signal or the identification "not" signal is present according to Fig. 9b, as already explained above, the busy signal goes to the log 1 state according to Fig. 9d, at the same time the reset signal from the Johnson counter 46 goes from log 1 to log 0 according to Fig. 9f, which therefore generates the signal J 1 at the next basic clock (according to Fig. 9h), assuming that the signal J 0 was present from the beginning in the stationary state of the Johnson counter 46 according to Fig. 9g. Fig. 9e shows the output of the flip-flop 70 , which takes the log 1 state and keeps the transmission gate 63 open via the OR gate 62. The clock pulses J 1 to J 6 of the Johnson counter 46 then run according to Figs . 9h to 9m; Since the clock J 3 has no significance for the computer side, its course is not shown here, but the clock J 4 begins one clock time after the clock J 2 of Fig. 9i.
Im folgenden werden noch einige Möglichkeiten der Prioritätenverteilung für den Rechnerzugriff zum Hauptspeicher erläutert.In the following, some possibilities for prioritizing computer access to main memory are explained.
Bisher ist ja davon ausgegangen worden, daß der Hauptspeicher 6 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.Up to now it has been assumed that the main memory 6 itself cyclically addresses the computers connected to it via the bus lines 5 and requests them to query them; however, as shown in Fig. 8, it is also possible that the requests for data exchange come from the computers themselves.
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 6anwerfen kann, vonstatten geht. Berücksichtigt werden muß hierbei jedoch, daß beim gleichen Grundtakt 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 Möglichkeiten gibt.This can basically be done by the computers immediately occupying the bus line when they need data information from the main memory, for example when a request signal Anfo is present, whereupon the data exchange takes place, controlled by the signal log 1 now present on the busy line, which can also start the Johnson counter 27 of the main memory 6. However, it must be taken into account here that two or even more computers are trying to get through to the main memory 6 via the bus lines at the same basic clock rate. For this special case, priority control is necessary, for which there are several options.
Eine erste Mö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 Busleitungen, von denen, wie weiter vorn schon erwähnt, eine beliebige Anzahl vorhanden sein kann, eine ihnen zugeordnete Rechnerkennung legen. Für zwei Rechner ist eine solche Möglichkeit in Fig. 8 dargestellt; in diesem Fall braucht lediglich eine INFO-Leitung mit der Rechnerkennung belegt zu werden, damit bei zwei Rechnern über die Priorität des Zugriffs entschieden werden kann. In Fig. 8 ist der erste Rechner mit E und der zweite Rechner mit F bezeichnet, wobei nur die für die Prioritätensteuerung erforderlichen Teile dargestellt sind. Beide Rechner E und F gehen mit ihrer Kennung oder ihrem zugeordneten Codewort gleichzeitig auf die Busleitung, wobei sie sich gegenseitig 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" Rechner wird dann seine Anforderung wieder zurückziehen. Zur Prioritätensteuerung zwischen lediglich zwei angeschlossenen Rechners 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 Busleitungen usw.A first possibility is for the computers to access the memory by occupying the busy line under the control of the computer in the log 1 state and at the same time placing an assigned computer ID on the bus lines, of which, as mentioned above, there can be any number. Such a possibility for two computers is shown in Fig. 8; in this case, only one INFO line needs to be occupied with the computer ID so that the access priority can be decided for two computers. In Fig. 8, the first computer is designated E and the second computer F , with only the parts required for priority control being shown. Both computers E and F go onto the bus line with their ID or their assigned code word at the same time, and they can short-circuit each other, as can be seen from the illustration in Fig. 8. If one of the computers is short-circuited by the ID of another computer accessing the computer at the same time and it is designed in such a way that it notices this "short-circuiting", then the priority is also decided at the same time, because the "short-circuited" computer will then withdraw its request. As will be explained in more detail below, only one bus line is required to control the priority between just two connected computers; if the priority of three computers has to be decided, two bus lines are required, etc.
Die für die Aufleitung der Codeworte vom Rechner auf die Busleitungen zuständigen Schaltungsteile können beim Ausführungsbeispiel der Fig. 8 aus zwei hintereinander geschalteten Inverterverstärkern 90, 91 bzw. 90&min;, 91&min; bestehen, wobei der in seinem Schaltungsaufbau dem Rechnerteil 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&min; angesteuerten Inverter/ Verstärker 91&min; handelt es sich um einen MOS-FET-Transistor, dessen "Drain"-Anschluß über einen "Last-Transistor" 92 an positivem Potential liegt. Gelangt als Codewort der Zustand log 0 über die Inverter 90&min; und 91&min; 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 Rechnerteils E (als Codewort) angesteuert werden, kurzgeschlossen wird.The circuit parts responsible for transmitting the code words from the computer to the bus lines can, in the embodiment of Fig. 8, consist of two inverter amplifiers 90, 91 or 90', 91' connected in series, whereby the computer part F , which corresponds in its circuit structure to the computer part E , as well as the rest of the circuit, is constructed as integrated chips, preferably in MOS-FET technology; the inverter/amplifier 91' controlled by the inverter 90' is a MOS-FET transistor, the "drain" connection of which is at a positive potential via a "load transistor" 92. If the state log 0 is reached as a code word via the inverters 90' and 91' on the bus line a , the state log 0 also results thereon, whereby the state log 1, with which the inverters 90, 91 of the computer part E are controlled (as a code word), is short-circuited.
Eine solche Zusammenschaltung der Leitungen auf der Busleitung 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 Spei heranforderung und damit das BUSY-Signal zurückzieht. Der Vergleich kann so durchgeführt 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-Gatters 93 bzw. 93&min;; der andere Eingang des ODER- Gatters ist mit der jeweils angesteuerten Busleitung verbunden. Das Exklusive ODER-Gatter ist, wie für den Fachmann erkennbar, so ausgebildet, daß es in der Lage ist, auf einen Unterschied der an seinen beiden Eingängen auftretenden Signale zu reagieren; im vorliegenden Fall ergibt sich eine Ungleichheit beim Rechnerteil E, das daher die niedrige Priorität aufweist.Such an interconnection of the lines on the bus line a corresponds to a logical wired AND operation (wired AND), since in the course of the priority comparison the log 0 state of one computer short-circuits the log 1 state of another computer. The computer with the lower priority defined in this way recognizes the short circuit of its log 1 priority bit by comparison, whereupon it withdraws the memory request and thus the BUSY signal. The comparison can be carried out as shown in Fig. 8, ie the code word of the computer which the inverters/amplifiers 90, 91 control simultaneously reaches one input of an exclusive OR gate 93 or 93' ; the other input of the OR gate is connected to the bus line controlled in each case. The exclusive OR gate is, as will be apparent to the person skilled in the art, designed in such a way that it is able to react to a difference between the signals occurring at its two inputs; In the present case, an inequality arises in the computer part E , which therefore has the low priority.
Wie ersichtlich kann die gesamte Prioritätensteuerung während eines einzigen Taktschritts des Grundtaktes ablaufen, wenn genügend Busleitungen vorhanden sind, beim bisherigen Ausführungsbeispiel ist von 4 Busleitungen 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 "0000" sämtliche prioritätsniedrigeren Rechner kurzschließt.As can be seen, the entire priority control can take place during a single clock step of the basic clock if there are enough bus lines. The previous embodiment assumed 4 bus lines, so that the priority control of a total of 5 connected single-purpose computers can be carried out in the manner just described, with the computer with the highest priority, i.e. with a code word "0000", simultaneously short-circuiting all lower priority computers.
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 Einzweckrechnern 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 Prioritätskennung. Auch hier entspricht die Zusammenschaltung der Leitungen auf dem Bus einen "wired AND" und im Laufe des Prioritätsvergleichs wird der log 0-Zustand des prioritätshöheren Rechners die log 1-Zustände der anderen kurzschließen. Mit 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.If, for example, only a two-line bus is available and more than 3 single-purpose computers are to be controlled in their priority access to main memory 6 , then the priority distribution can also be solved in terms of time by simultaneously placing the first bit of the priority identifier or code word of the computer on the information line(s) from the connected single-purpose computers at the same time. With the subsequent clock pulses, the remaining bits of the priority identifier appear one after the other. Here too, the interconnection of the lines on the bus corresponds to a "wired AND" and in the course of the priority comparison the log 0 state of the higher priority computer will short-circuit the log 1 states of the others. In other words, the priority control of the "wired AND" can also be carried out partially serially if this is desired due to the number of bus lines available.
Eine weitere mögliche Prioritätssteuerung besteht darin, daß je nach Anzahl der vorhandenen Einzel-Busleitungen jedem Einzweckrechner eine dieser Leitungen fest zugeteilt wird und der Rechner seine Anforderung über diese Leitung dem Hauptspeicher zuführt. Der Hauptspeicher verfügt seinerseits über eine Verteilerlogik, die prioritätsgewichtet ist und dem Rechner den Zugriff erlaubt, der am prioritätshö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 Hauptspeicher melden 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-Leitung und sperrt jeden weiteren Zugriff, anschließend geht der Datentransfer in der weiter vorn schon geschilderten Weise, wenn gewünscht, vor sich.Another possible priority control is that, depending on the number of individual bus lines available, each single-purpose computer is assigned one of these lines and the computer sends its request to the main memory via this line. The main memory in turn has a distribution logic that is priority-weighted and allows access to the computer with the highest priority. In the practical example, this can be done by one or more single-purpose computers reporting the log 1 state as a request to the main memory via the bus lines assigned to them (the computers can be soldered to these), and the main memory short-circuits all log 1 states of the single-purpose computers with the exception of the one with the highest priority. In this way, the remaining, "short-circuited" single-purpose computers recognize that their access has been rejected. has been detected (the detection can be designed as shown in Fig. 8), the assumed single-purpose computer is also informed because its priority request signal has stopped. The memory then occupies the busy line of its own accord and blocks any further access, after which the data transfer takes place in the manner described above, if desired.
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 Grundtakt 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.It should be noted that the priority control of the cyclic counting on the "memory chip" already mentioned above in connection with the overall explanation of the system, whereby the individual computer identifiers are counted one after the other with the basic clock fO , can be priority-based, ie the counting process begins with the higher priorities so that these have the opportunity to access the memory first if there is a request for this.
Die Logikpegel an der Bus-Schnittstelle sind, wenn mit integrierter C-MOS-Technik gearbeitet werden soll, in üblicher positiver Logik definiert, d. h. der Zustand
- log 1 = +UO
- log 0 = 0.
The logic levels at the bus interface are defined in standard positive logic when working with integrated C-MOS technology, ie the state
- log 1 = + UO
- log0 = 0.
Da bei der P-MOS-Technik mit negativer Logik gearbeitet wird, müssen alle Signale invertiert werden, die zwischen der Busleitung und dem P-MOS-Chip ausgetauscht werden. Dabei entsprechen:
- log 1 = 0 (U pp )
- log 0 = + UO (U ss ).
Since P-MOS technology works with negative logic, all signals exchanged between the bus line and the P-MOS chip must be inverted. The following correspond:
- log 1 = 0 (U pp )
- log 0 = + UO (U ss ).
Die prinzipielle Arbeitsweise der Systeme wird hiervon jedoch nicht berührt.However, the basic functioning of the systems is not affected by this.
Als Alternative für den Datenaustausch bei einem Vierleitungsbus ist es auch denkbar, daß auf die Busy-Leitung verzichtet wird und die vierte Informationsleitung der Bus-Belegung dient. In diesem Fall muß das BUSY-Signal in allen Einzweckrechnern während der Informationsübermittlung gespeichert werden.As an alternative for data exchange in a four-line bus, it is also conceivable to dispense with the busy line and use the fourth information line for bus occupancy. In this case, the BUSY signal must be stored in all single-purpose computers during information transmission.
Die Erfindung ermöglicht also den unveränderten Einsatz der Rechnerchips für sämtliche Zwecke oder Fahrzeuge bei einer chipexternen Speicherung mit geringstem Verdrahtungsaufwand und geringstem Aufwand an Anschlußpins.The invention thus enables the unchanged use of the computer chips for all purposes or vehicles with chip-external storage with minimal wiring effort and minimal effort on connection pins.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2554775A DE2554775C2 (en) | 1975-12-05 | 1975-12-05 | Device for data transmission in electronic circuits for motor vehicles |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2554775A DE2554775C2 (en) | 1975-12-05 | 1975-12-05 | Device for data transmission in electronic circuits for motor vehicles |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2554775A1 DE2554775A1 (en) | 1977-06-16 |
DE2554775C2 true DE2554775C2 (en) | 1987-02-19 |
Family
ID=5963585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2554775A Expired DE2554775C2 (en) | 1975-12-05 | 1975-12-05 | Device for data transmission in electronic circuits for motor vehicles |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE2554775C2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4419724A (en) * | 1980-04-14 | 1983-12-06 | Sperry Corporation | Main bus interface package |
DE3331135A1 (en) * | 1983-08-30 | 1985-03-07 | Robert Bosch Gmbh, 7000 Stuttgart | CIRCUIT ARRANGEMENT WITH PARALLEL OPERATION OF MICRO COMPUTERS IN ELECTRONIC SYSTEMS FOR CONTROL AND / OR REGULATION FOR THE OPERATION OF INTERNAL COMBUSTION ENGINES |
DE3432430A1 (en) * | 1984-09-04 | 1986-03-13 | Robert Bosch Gmbh, 7000 Stuttgart | METHOD FOR CHECKING CONTROL UNITS |
DE3506118A1 (en) * | 1985-02-22 | 1986-08-28 | Robert Bosch Gmbh, 7000 Stuttgart | Method for operating a data processing system for motor vehicles |
DE4111023C2 (en) * | 1991-04-05 | 2003-11-20 | Bosch Gmbh Robert | Electronic system for a vehicle |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2355437A6 (en) * | 1972-05-10 | 1978-01-13 | Peugeot & Renault | ANALOGUE-DIGITAL-ANALOGUE CONTROL SYSTEM WITH MULTI-FUNCTION DIGITAL COMPUTER FOR MOTOR VEHICLES |
-
1975
- 1975-12-05 DE DE2554775A patent/DE2554775C2/en not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2554775A1 (en) | 1977-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3300260C2 (en) | ||
DE2913288C2 (en) | Multiprocessor system with a large number of processor modules | |
DE3300261C2 (en) | ||
EP0489944B1 (en) | Master-slave data communication method with flexible one-wire bus | |
DE2457553C2 (en) | Asynchronous clock device | |
DE2944497C2 (en) | ||
DE2731188C2 (en) | Circuit arrangement for handling interrupt requests | |
DE3810231C2 (en) | ||
DE2212501C2 (en) | Device for the transmission of asynchronous, digital signals | |
DE3818546C2 (en) | ||
DE2746064A1 (en) | DATA STORAGE WITH REFRESHMENT | |
CH620306A5 (en) | ||
DE3232600C2 (en) | ||
DE68920929T2 (en) | Timer channel with multiple timer reference features. | |
DE3535436C2 (en) | ||
DE2646296B2 (en) | Electronic associative multi-computer circuit arrangement with a modular structure | |
EP0107026A1 (en) | Stored-programme control | |
DE10317390A1 (en) | Data transmission device and electronic control unit | |
DE3501194C2 (en) | Method and device for data exchange between microprocessors | |
DE3003999A1 (en) | SYSTEM FOR ASYNCHRONOUSLY TRANSMITTING DATA BETWEEN ACTIVE SUB-ARRANGEMENTS | |
DE2554775C2 (en) | Device for data transmission in electronic circuits for motor vehicles | |
DE2844295A1 (en) | METHOD AND DEVICE FOR CONTROLLING THE DATA TRANSFER DIRECTION ON A DATA BUS | |
EP0920154A2 (en) | Method and circuit for selective and digital and serial transmission | |
DE1424747B2 (en) | EXPANDABLE DIGITAL DATA PROCESSING SYSTEM | |
EP0104638B1 (en) | Method for the initiation of the connection of one of several data processing units to a central clock-controlled multiple line system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
D2 | Grant after examination | ||
8363 | Opposition against the patent | ||
8365 | Fully valid after opposition proceedings |