[go: up one dir, main page]

DE3732007A1 - Schaltung zur datenkopplung von zwei rechnern mit einem speicher - Google Patents

Schaltung zur datenkopplung von zwei rechnern mit einem speicher

Info

Publication number
DE3732007A1
DE3732007A1 DE19873732007 DE3732007A DE3732007A1 DE 3732007 A1 DE3732007 A1 DE 3732007A1 DE 19873732007 DE19873732007 DE 19873732007 DE 3732007 A DE3732007 A DE 3732007A DE 3732007 A1 DE3732007 A1 DE 3732007A1
Authority
DE
Germany
Prior art keywords
memory
computers
bus driver
bus
circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE19873732007
Other languages
English (en)
Inventor
Joachim Schenk
Wolfgang Dipl Ing Kosak
Guenter Braun
Dietmar Blessing
Norbert Dipl Ing Miller
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE19873732007 priority Critical patent/DE3732007A1/de
Publication of DE3732007A1 publication Critical patent/DE3732007A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox

Landscapes

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

Description

Die Erfindung betrifft eine Schaltung zur Datenkopplung von zwei Rechnern mit einem Speicher.
Ein bekanntes Multiprozessorsystem (DE-OS 35 02 721) mit einem gemeinsamen Multiplexer und gemeinsamen Speicher arbeitet asynchron. Dazu gibt der Multiplexer je nach Anforderung eines Prozessors einen zugehörigen Transceiver für die Daten und einen Adreßspeicher für die Adresse frei. Ein Prioritäts- Encoder gewährleistet dabei, daß immer nur ein Prozessor gleichzeitig Zugriff zum gemeinsamen Speicher hat. Die Kopplung zwischen den Prozessoren über den gemeinsamen Speicher dient zur Übermittlung von Steuervorgaben und gegenseitigen Übermittlung von Betriebsdaten. Bei der bekannten Schaltung ist ein Prioritäts-Encoder in jedem Fall notwendig, da der den Prozessoren niederer Priorität den Zugriff auf den gemeinsamen Speicher sperrt, wenn ein Prozessor höherer Priorität darauf zugreift. Bei der Verwendung von nur zwei Rechnern ist die bekannte Schaltung durch die Verwendung eines Prioritäts-Encoders relativ aufwendig.
Eine weitere, bekannte Lösung zur Kopplung von zwei Rechnern (Prozessoren) stellt der Einsatz eines sogenannten Dual-Port- Controllers dar (z. B. Valvo 74 LS 764/65). Diese Lösung ist jedoch bauteil- und platzaufwendig sowie teuer.
Vorteile der Erfindung
Die erfindungsgemäße Schaltung mit den kennzeichnenden Merkmalen des Hauptanspruchs hat demgegenüber den Vorteil, daß der Zugriff der beiden Rechner zum gemeinsamen Speicher auf einfache Weise über die Statusleitung und eine logische Verriegelung der beiden Bustreiber gesteuert wird. Durch diese logische Verknüpfung ist die Schaltung funktionssicher und durch die invertierte Bustreiberfreigabe ist eine Buskollision ausgeschlossen, da sich ein Bustreiber grundsätzlich im hochohmigen Zustand (Tristate) befindet. Die Schaltung ist durch den möglichen Einsatz von Standardbauelementen preisgünstig und wegen des geringen Bauelementebedarfs zudem platzsparend. Die Zugriffszeiten sind schnell und nur vom Speicher und Bustreiber abhängig. Der Anschlußaufwand ist gering (25 Leitungen incl. Versorgung und Reset). Weiter ist die Schaltung kompatibel für gemultiplexte Adreß-/Datenbusse. Zudem ist die Schaltung softwarefreundlich, da sowohl ein Handshake- und Master- Slave-Verfahren möglich ist, bei minimalem Steuerungsaufwand (pro Rechner ein Einzelport).
Zweckmäßig werden die Statusleitungen mit einem Zwischenschaltkreis (Buffer) verbunden, mit dem die Steuersignale (, , ALE) der beiden Rechner je nach dem Schaltzustand der Statusleitungen zum Speicher freigegeben sind. Somit ist auch hier durch eine logische Verknüpfung eine Verriegelung bei den Steuersignalen verwirklicht, die die Funktionssicherheit erhöht.
Eine vorteilhafte Weiterbildung wird erreicht, wenn bei einer Erkennung eines Programmablauffehlers im entsprechenden Rechner alle Anschlüsse (Ports) auf "high" geschaltet werden. Dadurch ist ein einseitiger Datenverkehr mit dem Speicher bei Ausfall eines Rechners und somit eine Notlauffunktion möglich.
Auch bei Ausfall beider Rechner ist eine Buskollision bzw. ein Buskurzschluß durch die logische Verknüpfung der Bustreiber ausgeschlossen.
Durch die Verwendung eines Zeitglieds am Freigabeanschluß (CS) des Speichers wird eine Datensicherung beim Ein- bzw. Ausschalten sowie beim Einbruch der Versorgung erreicht. Während der Einschaltphase wird der Speicher durch ein Rücksetzsignal und anschließend durch das Zeitglied verzögert freigegeben. Beim Ausschalten sowie bei Versorgungseinbrüchen sichert das Zeitglied, daß ein evtl. laufender Schreibvorgang abgeschlossen werden kann.
Zeichnung
Die Erfindung wird anhand der Zeichnung näher erläutert. Die einzige Fig. zeigt eine Schaltung mit zwei Rechnern, die über einen Speicher gekoppelt sind.
In der Fig. sind zwei Rechner 1, 2 dargestellt, die über Ports P 1, P 2 an Busse 3, 4 angeschlossen sind. Der strichliert eingerahmte Schaltungsteil 5, in den die Busse 3, 4 führen, entspricht somit einem Speicher zur Datenkopplung der beiden Rechner 1, 2 mit jeweils einem Port (Dual-Port-RAM).
Sowohl der Bus 3 als auch der Bus 4 führen zu entsprechenden Bustreibern 6, 7 und über einen gemeinsamen Bus 8 zu einem Port P 3 eines Speichers 9 (RAM). Der Busanschluß der beiden Rechner 1 und 2 an den Speicher 9 ist somit völlig symmetrisch.
Lesesignale 1 und 2 sowie Schreibsignale 1 und 2 sind über einen Zwischenschaltkreis 10 (Buffer) zum Speicher 9 geführt. Durch Signale an den Rechnerausgängen ALE 1 bzw. ALE 2 (Adress Latch Enable) wird der im Speicher 9 enthaltene Adreßspeicher aktiviert. Diese Signale sind ebenfalls über den Zwischenschaltkreis 10 geführt. Das Lesesignal 1 bzw. 2 ist zusätzlich in einer Abzweigung vor dem Zwischenschaltkreis 10 auf die entsprechenden Bustreiber 6 bzw. 7 an einen Eingang DIR 1 bzw. DIR 2 geführt, wodurch je nach Schaltzustand eine Busrichtung durch den entsprechenden Bustreiber 6 bzw. 7 freigegeben wird. Somit ist auch der Anschluß der beiden Rechner 1, 2 hinsichtlich der Steuerleitungen symmetrisch.
Die Statussignalleitung 11 führt vom Anschluß STATUS 1 des Rechners 1 zum Zwischenschaltkreis 10, einem Invertierglied (15) sowie zum Anschluß STATUS 2 des Rechners 2. Die Statusleitung 11 ist über eine weitere Leitung 13 mit einem Freigabeeingang E 1 des Bustreibers 6 verbunden. Der Bustreiber 7 bzw. dessen Freigabeeingang E 2 ist über eine Leitung 14 und ein Invertierglied 15 ebenfalls mit der Statussignalleitung 11 der Rechner verbunden.
An einem Freigabeanschluß CS des Speichers 9 ist über ein Zeitglied 16 sowohl die Versorgungsspannung V cc sowie ein Rücksetzsignal angeschlossen. Die Lesesignale 1 bzw. 2, die Schreibsignale 1 bzw. 2 und die ALE-Signale sind über den Zwischenschaltkreis 10 an entsprechende Anschlüsse 3, 3 und ALE 3 des Speichers 9 geführt.
Die Funktion der Schaltung wird anhand des Beispiels eines Lesezyklus des Rechners 2 aus dem Speicher 9 erläutert. Der Rechner 1 ist dabei der Master-Rechner. Für den Lesezyklus des Rechners 2 liegt der Ausgang STATUS 1 des Rechners 1 auf "high." Dadurch wird über die Leitung 13 der Bustreiber entsprechend angesteuert und in den hochohmigen Zustand (Tristate) geschaltet. Zugleich wird über die Leitung 14 auch der Bustreiber 7 angesteuert, jedoch wegen des Invertierglieds 15 mit "low"- Signale, wodurch über den Bustreiber 7 der Zugriff für den Rechner 2 auf den Speicher 9 freigegeben wird.
Der Rechner 2 kann nun zu einem beliebigen Zeitpunkt (beispielsweise über die Statussignalleitung 11 "select" = "low") seine Steuersignale 2, 2, ALE 2 über den Zwischenschaltkreis 10 auf den Speicher 9 schalten. Der Adreßdatenbus des Rechners 2 ist dabei (select = "low") über den Bustreiber 7 auf den Speicher 9 geschaltet. Zu Beginn des Lesevorgangs wird die Speicheradresse vom Rechner 2 auf den Bus 4, 8 gelegt und mit dem Signal ALE 2 = "high" vom Speicher 9 übernommen. Danach wird mit dem Signal 2 = "low" die Busrichtung umgekehrt und die vom Speicher bereitgestellten Daten vom Rechner 2 übernommen.

Claims (4)

1. Schaltung zur Datenkopplung von zwei Rechnern (1, 2) mit einem Speicher (9), mit einer die zwei Rechner (1, 2) verbindenden Statusleitung (11) und mit einem ersten Bustreiber (6), mit einem zweiten Bustreiber (7) und mit einem Datenbus (3, 4, 8), der die beiden Rechner (1, 2) über die Bustreiber (6, 7) und den Speicher (9) verbindet, dadurch gekennzeichnet, daß die Statusleitung (11) eines Rechners (1) mit einem Freigabesteuereingang (E 1) eines Bustreibers (6) direkt und mit einem Freigabesteuereingang (E 2) des anderen Bustreibers (7) über ein Invertierglied (15) verbunden ist, so daß nur jeweils ein Bustreiber freigegeben und der andere Bustreiber gesperrt ist.
2. Schaltung nach Anspruch 1, dadurch gekennzeichnet, daß die Statusleitung (11) mit einem Zwischenschaltkreis (Buffer 10) verbunden ist, an den die Steuersignale ( 1, 1, ALE 1 und 2, 2, ALE 2) beider Rechner (1, 2) angeschlossen sind und der je nach Schaltzustand der Statusleitung (11) die Steuersignale des Rechners zur Durchschaltung freigibt, dessen zugeordneter Bustreiber freigegeben ist.
3. Schaltung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß bei einer Erkennung eines Programmablauffehlers der entsprechende Rechner durch die Software bzw. Hardware zurückgesetzt wird und dadurch alle Anschlüsse (Ports) des entsprechenden Rechners auf "high" geschaltet werden, wodurch der andere Rechner weiter die Möglichkeit des Ein- und Auslesens aus dem Speicher (9) behält.
4. Schaltung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß der Speicher (9) über einen Freigabeanschluß (CS) freigegeben wird, wobei dieser über ein Zeitglied (16) sowohl mit der Versorgungsspannung (V cc) als auch mit einer Rücksetzleitung () verbunden ist, wobei über die Rücksetzleitung ein Rücksetzsignal in der Einschaltphase bzw. bei Einbruch der Digitalversorgung für eine definierte Zeit, z. B. durch einen Stabi, eine Unterspannungserkennungsschaltung oder eine externe Baugruppe gesendet wird.
DE19873732007 1987-09-23 1987-09-23 Schaltung zur datenkopplung von zwei rechnern mit einem speicher Withdrawn DE3732007A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19873732007 DE3732007A1 (de) 1987-09-23 1987-09-23 Schaltung zur datenkopplung von zwei rechnern mit einem speicher

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19873732007 DE3732007A1 (de) 1987-09-23 1987-09-23 Schaltung zur datenkopplung von zwei rechnern mit einem speicher

Publications (1)

Publication Number Publication Date
DE3732007A1 true DE3732007A1 (de) 1989-04-06

Family

ID=6336669

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19873732007 Withdrawn DE3732007A1 (de) 1987-09-23 1987-09-23 Schaltung zur datenkopplung von zwei rechnern mit einem speicher

Country Status (1)

Country Link
DE (1) DE3732007A1 (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3832144A1 (de) * 1988-09-22 1990-03-29 Licentia Gmbh Befestigungsvorrichtung fuer einen im laugenbehaelter von waschmaschinen einsetzbaren mantelrohrheizstab
DE4138033A1 (de) * 1991-11-19 1993-05-27 Univ Magdeburg Tech Verfahren zur datenuebergabe
EP0577919A1 (de) * 1992-07-04 1994-01-12 Moeller GmbH Zugriffssteuerung für gekoppelte maskenprogrammierte Mikrocontroller
DE19903176A1 (de) * 1999-01-21 2000-08-03 Sikom Sicherheits Und Kommunik Verfahren zur Übernahme von Bildsignalen in einen Speicher und Schaltungsanordnung zur vorübergehenden Umschaltung des Systemtaktes eines digitalen Signalprozessors oder eines Mikroprozessors

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3832144A1 (de) * 1988-09-22 1990-03-29 Licentia Gmbh Befestigungsvorrichtung fuer einen im laugenbehaelter von waschmaschinen einsetzbaren mantelrohrheizstab
DE4138033A1 (de) * 1991-11-19 1993-05-27 Univ Magdeburg Tech Verfahren zur datenuebergabe
EP0577919A1 (de) * 1992-07-04 1994-01-12 Moeller GmbH Zugriffssteuerung für gekoppelte maskenprogrammierte Mikrocontroller
DE19903176A1 (de) * 1999-01-21 2000-08-03 Sikom Sicherheits Und Kommunik Verfahren zur Übernahme von Bildsignalen in einen Speicher und Schaltungsanordnung zur vorübergehenden Umschaltung des Systemtaktes eines digitalen Signalprozessors oder eines Mikroprozessors
DE19903176C2 (de) * 1999-01-21 2001-03-08 Sikom Sicherheits Und Kommunik Verfahren zur Übernahme von Bildsignalen in einen Speicher und hierzu geeignete Schaltungsanordnung

Similar Documents

Publication Publication Date Title
DE3751297T2 (de) Schaltung zur Programmsteuerung.
DE3687426T2 (de) Mehrprozessorsystem-architektur.
DE19649676A1 (de) Peripherieeinheitwählsystem
DE3837699A1 (de) Systembuserweiterung zur kopplung multimasterfaehiger mehrrechnersysteme
DE3302929A1 (de) Speicherprogrammierbare steuerung
EP0050305A1 (de) Einrichtung zur Steuerung des Zugriffes von Prozessoren auf eine Datenleitung
DE3501194C2 (de) Verfahren und Vorrichtung zum Datenaustausch zwischen Mikroprozessoren
DE2719278B2 (de) Schaltungsanordnung für hintereinander geschaltete Steuereinheiten zum Anschluß von Ein/Ausgabegeraten an eine Datenverarbeitungsanlage
DE69315264T2 (de) Verfahren und Schaltung zur Verteilung eines Speichers mit direktem Zugriff zwischen zwei asynchronen Prozessoren
DE69322356T2 (de) Synchrone/asynchrone Aufteilung einer asynchronen Busschnittstelle
DE3882526T2 (de) Knoten für rückwandplatinenbus.
DE2412634C3 (de) Prozessor für eine Kleinstrechenanlage
DE3882425T2 (de) Datenübertragungssteuerungsvorrichtung für Direktspeicherzugriff.
DE68906171T2 (de) Speichersytem mit serienzugriff mit einer kaskaden-pufferschaltung.
DE3732007A1 (de) Schaltung zur datenkopplung von zwei rechnern mit einem speicher
EP0804765B1 (de) Fehlererkennung und fehlerbeseitigung bei einem seriellen datenbussystem
DE3485952T2 (de) Fehlersicherungsflipflop.
DE3850212T2 (de) Vielfach-CPU-System mit gemeinschaftlichem Speicher.
DE69300109T2 (de) Mikrokontroller verfügend über einen Emulationsmodus mit internen und externen Peripherie.
DE69306799T2 (de) Fehlertolerantes kommunikationsmodul mit drei anschlussstellen
EP0301160A2 (de) System mit zwei Mikroprozessoren und einem gemeinsamen Schreibe-Lese-Speicher
DE2150011C3 (de) Datenübertragungsanordnung
DE69127013T2 (de) Unterbrechungssteuerschaltung und Mikrocomputersystem, das diese enthält
DD254077A1 (de) Mikrorechneranordnung zum einsatz in multimikrorechnersystemen
DE2736061C2 (de) Zelle für eine Matrix mit homogener Struktur

Legal Events

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