DE69230656T2 - Universelle Koppeleinrichtung zwischen einem Rechnerbus und einer Steuereinheit einer Gruppe von Periphergeräten - Google Patents
Universelle Koppeleinrichtung zwischen einem Rechnerbus und einer Steuereinheit einer Gruppe von PeriphergerätenInfo
- Publication number
- DE69230656T2 DE69230656T2 DE69230656T DE69230656T DE69230656T2 DE 69230656 T2 DE69230656 T2 DE 69230656T2 DE 69230656 T DE69230656 T DE 69230656T DE 69230656 T DE69230656 T DE 69230656T DE 69230656 T2 DE69230656 T2 DE 69230656T2
- Authority
- DE
- Germany
- Prior art keywords
- bus
- microprocessor
- cpu
- memory
- computer
- 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 - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/124—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
- G06F13/128—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
Description
- Die vorliegende Erfindung betrifft eine universelle Kopplungsvorrichtung zwischen einem Rechnerbus mit einem Controller für eine Gruppe von Peripheriegeräten, die untereinander über eine spezifische Verbindung verbunden sind, mit der der Controller physisch verbunden ist. Sie ist vor allem auf eine Gruppe von Peripherie- oder Endgeräten anwendbar, die untereinander durch ein Datenübertragungsnetz in Form eines Rings des FDDI-Typs verbunden sind, dessen Übertragungsmedium aus Lichtleitfasern besteht. Sie ist auch auf eine Gruppe von Peripheriegeräten anwendbar, die untereinander durch eine sie kennzeichnende Verbindung, beispielsweise eine Verbindung des Typs SCSI, die Magnetplattenspeicher miteinander verbindet, verbunden sind.
- Datenübertragungsnetze, die als Übertragungsmedium Lichtleitfasern verwenden, werden immer häufiger eingesetzt und sind in ihren Eckwerten in Dokumenten festgelegt, die in den internationalen Standardisierungsgremien ausgearbeitet wurden und beispielsweise beim ANSI (American National Standard Institute) unter der Bezeichnung X3T9-5 registriert sind. Diese vom ANSI festgelegten Normen wurden auch von der ISO (International Standard Organisation) übernommen. Diese Norm definiert eine Gesamtheit von physischen und elektrischen Merkmalen des Netzes, beispielsweise die maximale Gesamtlänge der Faser, den maximalen Abstand zwischen Stationen des Netzes wie auch den Code, in dem die Informationen geschrieben und von einer Station an die andere übertragen werden. Einer der zahlreichen Vorteile der Nutzung von Lichtleitfasern in Netzen ist der höhere Wert der erzielten Datenübertragungsraten, und zwar im Bereich von 100 MBit/s.
- Genauso sind die Verbindungen vom Typ SCSI sowohl durch die ANSI-Normen als auch die ISO-Normen definiert.
- Es ist bekannt, daß in einem Netz die Information enthaltenden Nachrichten, die von den verschiedenen Stationen gesendet werden, aus mehreren Rahmen bestehen. Der Rahmen ist demzufolge die einzelne Nachricht, die strukturiert ist und eine Anfangsnachricht, eine Endenachricht, Synchronisationssignale, aus denen der Takt abgeleitet wird, die Adresse der Station, für die die Nachricht bestimmt ist, die Adresse der sendenden Station, die Länge der Daten, die Nutzdaten usw. enthält. Vereinfachend läßt sich sagen, daß ein Rahmen aus Nutzdaten besteht, die von Signalen, die an den Anfang des Rahmen gestellt sind, und von Signalen, die an das Ende des Rahmens gestellt sind, zeitlich eingerahmt sind. Die an den Anfang und an das Ende des Rahmens gestellten Signale, die die Nutzdaten umrahmen, werden "Steuerzeichen" genannt.
- Außerdem ist bekannt, daß die Gesamtheit der funktionalen Grundelemente, die einen Rechner bilden, etwa ihn bildende Prozessoren (Zentralprozessor oder Ein-/Ausgabeprozessor), Schreib-Lese-Speicher, Nur-Lese-Speicher, Ein-/Ausgangscontroller oder Controller für Peripheriegeräte, auf einer Gesamtheit von Karten (boards) angeordnet ist, deren Abmessungen genormt sind. Diese Karten sind im allgemeinen durch denselben Bus des parallelen Typs verbunden, der die Kommunikation zwischen den verschiedenen Prozessoren, die Datenübertragung zwischen den Karten und deren elektrische Stromversorgung gewährleistet.
- Der gewöhnlich MULTIBUS II (geschützte Marke von INTEL) genannte Bus ist einer der am häufigsten verwendeten Busse. Seine Architektur ist um; einen Hauptbus des parallelen Typs gebildet, der nach der IEEE-Norm 1296 (Institute of Electrical and Electronic Engineers) genormt ist und gewöhnlich PSB (was "Parallel System Bus" bedeutet) genannt wird.
- Ein solcher Rechnerbus ist mit der spezifischen Verbindung (FDDI-Netz oder SCSI-Verbindung) über eine Verbindungsbrückeneinrichtung verbunden, deren Funktion darin besteht, die Bedingungen für die Übertragung von Informationen über den MULTIBUS II an die Bedingungen für die Übertragung über das Netz oder eine Verbindung, die ihrerseits typische Peripheriegeräte verbindet, anzupassen. Die Modi der Datenübertragung einerseits über den Bus PSB und anderseits über das Netz (beispielsweise FDDI) sind nämlich vollkommen verschieden, sowohl was die Datenübertragungsrate als auch die verwendeten Übertragungsprotokolle, die Schreibcodes, die Informationen, das Format, die Steuerzeichen, die Informationsübertragung (parallel über den MULTIBUS II, seriell über das FDDI-Netz) usw. betrifft.
- Die Fig. 1A und 1B zeigen die Hauptstruktur einer derartigen Brückeneinrichtung, wenn das Übertragungsnetz vom Typ FDDI bzw. wenn die spezifische Verbindung vom Typ SCSI ist.
- Es wird Fig. 1A betrachtet.
- Diese Figur zeigt einen Rechner ORD, dessen verschiedene konstitutive Elemente auf mehreren Karten C angeordnet sind, die miteinander über einen Bus PSB kommunizieren. Jede Karte C ist mit dem Bus PSB über einen Coprozessor MPC verbunden, der beispielsweise von der Firma INTEL hergestellt ist und die Bezeichnung VL 82c389 hat, und kommuniziert im Nachrichten-Modus mit den übrigen funktionalen konstitutiven Elementen des Rechners. Dieser Kommunikationsmodus zwischen den verschiedenen Karten des Rechners ORD ist in der zuvor genannten Norm IEEE 1296 genau definiert.
- Der Rechner ORD ist mit einem Netz RN des Typs FDDI in Form eines Ringes über eine Verbindungsbrückeneinrichtung DPC verbunden. Das Netz RN besteht aus einem Hauptring AP und einem Sekundärring AS.
- Die Einrichtung DPC besteht einerseits aus einer universellen Kopplungsvorrichtung GPU (englische Abkürzung für "General Purpose Unit"), einer Adaptervorrichtung DEA und einer Schnittstelle IHA, die die Informationsübertragung zwischen der universellen Kopplungsvorrichtung GPU und der Adaptervorrichtung DEA gewährleistet.
- Die universelle Kopplungsvorrichtung GPU ist mit dem Bus PSB über einen Coprozessor MPC verbunden, der vom gleichen Typ ist wie die Coprozessoren der Karten C des Rechners ORD.
- Die Einrichtung DPC ist über eine Vorrichtung zum physischen Netzzugang, nämlich DAP, die zur Adaptervorrichtung DEA gehört, mit dem Netz RN physisch verbunden.
- In Fig. 1B hat die Verbindungsbrückeneinrichtung DPC die gleiche Struktur wie in Fig. 1A; ein Unterschied besteht jedoch darin, daß die Adaptervorrichtung DEA über eine Vorrichtung zur physischen Anpassung DAP an eine Verbindung vom Typ SCSI gekoppelt ist, an die jeweils Plattenspeicher D&sub1;, ..., Di ..., Dj, ... Dn angeschlossen sind.
- Was sowohl Fig. 1A als auch Fig. 1B betrifft, kann die Einrichtung DPC entweder auf ein und derselben Karte oder auf zwei voneinander getrennten Karten ausgeführt sein - je nach Wichtigkeit der Elemente, die jede der Komponenten dieser Einrichtung, nämlich GPU und DEA, bilden.
- Die Hauptstruktur der Einrichtung DPC, wie sie in Fig. 1A und 1B gezeigt ist, wie auch Ausführungs- und Betriebsarten der beiden sie bildenden Elemente, nämlich GPU und DEA, sind ausführlich in der französischen Patentanmeldung 89 10 156 beschrieben, die am 27. Juli 1989 unter dem Titel "dispositif passerelle de connexion d'un bus d'ordinateur ä un reseau fibre optique en forme d'anneau" von der Anmelderin eingereicht wurde (FR-A-2 650 412, veröffentlicht am 01.02.1991).
- Da die Erfindung im wesentlichen die universelle Kopplungsvorrichtung GPU betrifft, wird mit Bezug auf Fig. 2 an die wesentlichen konstitutiven Elemente der universellen Kopplungsvorrichtung GPUA erinnert, die in der in dem angegebenen Pa tent beschriebenen Einrichtung DPC genutzt werden, die demzufolge eine frühere Ausführungsform einer derartigen universellen Kopplungsvorrichtung darstellt.
- Wie somit aus Fig. 2 hervorgeht, ist die Vorrichtung GPUA um einen Mikroprozessor CPU und einen mit diesem letzteren verbundenen Bus BH ausgeführt. Außerdem enthält sie einen programmierbaren Lesespeicher mm und einen Schreib-Lese-Speicher MV sowie eine Direktspeicherzugriffsschaltung des Typs DMA für den Schreib-Lese-Speicher MV, die mit DMAC bezeichnet ist.
- Außerdem umfaßt die Übertragungsschnittstelle IHA, die mit der universellen Vorrichtung GPUA über den Bus BH verbunden ist, eine Schnittstelle IHAD, die die Übertragung von Nutzdaten von der oder an die Vorrichtung GPUA ermöglicht, sowie eine Schnittstelle zur Übertragung von Steuerblöcken, die die Steuerzeichen der zu empfangenen oder der gesendeten Rahmen enthalten, nämlich IHAC, die erlaubt, Steuerblöcke von oder an GPUA zu übertragen.
- Wenn Information vom Rechner ORD über PSB zum Netz RN geschickt werden soll, geschieht dies folgendermaßen:
- Die Information wird von dem Coprozessor MPC übertragen, dann im Speicher MV gespeichert und anschließend vom Mikroprozessor CPU analysiert, der einen Steuerblock SCB erstellt, der Parameter enthält, die einerseits den Aufbau von Rahmen des Typs FDDI, die dazu bestimmt sind, über das Netz RN gesendet zu werden (Steuerzeichen), und andererseits die Art der von DEA auszuführenden Operationen betreffen. Diese Parameter sind beispielsweise die Adresse des Informationsempfängers, die Adresse des Absenders, die Länge der gesendeten Nachrichten usw..
- Sobald die CPU den Steuerblock SCB gebildet hat, wird dieser und die ihm entsprechenden Daten über den Bus BH an die Schnittstelle IHA gesendet, wobei SCB an IHAC geleitet wird, während die Daten an IHAD geleitet werden. Der Steuerblock SCB wird beispielsweise über 16 Bit, und zwar HC&sub0; bis HC&sub1;&sub5; von zwei Paritätsbits HCP&sub0; und HCP&sub1; begleitet, weitergeleitet. Was die Daten anbelangt, so werden diese über 32 Bit, und zwar HD&sub0; bis HD&sub3;&sub1;, von vier Paritätsbits HDP&sub0; bis HDP&sub3; begleitet, weitergeleitet.
- Sowohl die Daten als auch der Steuerblock SCB werden vorübergehend in ihren Schnittstellen IHAC bzw. IHAD gespeichert, bevor sie über den Bus BC einerseits und BDF andererseits, die zur Anpassungsvorrichtung DEA gehören, übertragen werden.
- Es empfiehlt sich zu präzisieren, daß die Übertragung der Steuerblöcke und der Daten über die zwei getrennten Busse BC und BDF unabhängig voneinander erfolgt. Die Art und Weise, in der die Informationen mit Hilfe der Adaptervorrichtung DEA übertragen und gespeichert werden, bevor sie über das Netz RN geschickt werden, ist ausführlich in der obengenannten französischen Patentanmeldung beschrieben.
- Der Nachteil der universellen Kopplungsvorrichtung GPUA ist, daß der Mikroprozessor nur ein und denselben Bus zur Verfügung hat, um die Übertragung der Nutzdaten, die Übertragung der zum Ablauf seines eigenen Programms notwendigen Daten und schließlich der Daten, die zum Management der auf dem Bus PSB bzw. im Netz FDDI verwendeten Protokolle notwendig sind, zu bewerkstelligen. Folglich wird die Leistungsfähigkeit des Prozessors, die so durch das Vorhandensein eines einzigen Busses begrenzt wird, nicht optimal ausgenutzt.
- Die vorliegende Erfindung erlaubt, diese Nachteile zu beseitigen, indem zwischen der Schnittstelle IHAD und dem Coprozessor MPC ein Dualport-Video-RAM-Speicher angeordnet wird, in dem die Nutzdaten der Rahmen FDDI (oder SCSI) vorübergehend gespeichert werden, bevor sie unter Steuerung durch einen Controller des Typs DMA zum Coprozessor MPC übertragen werden. Außerdem kann der Mikroprozessor seinen internen Bus spezi fisch für den Ablauf seines Programms, d. h. insbesondere für die Daten, die für sein Betriebssystem (Operating system) notwendig sind, und schließlich für das Protokollmanagement nutzen. Die Daten können demnach übertragen werden, während gleichzeitig an der Anpassung der Protokolle gearbeitet wird oder auch während Betriebssystemoperationen ausgeführt werden.
- Gemäß der Erfindung enthält die universelle Kopplungsvorrichtung des Typs, der einen Rechnerbus mit einem Controller für eine Gruppe von Peripheriegeräten verbindet, die untereinander über eine spezifische Verbindung eines Netzes verbunden sind, mit dem der Controller physisch verbunden ist:
- - einen Mikroprozessor, dem einerseits über seinen internen Bus wenigstens ein Speicher, der sein Betriebssystem enthält, und andererseits eine spezifische Schnittstelle des Rechnerbusses, die ermöglicht, ihn mit diesem letzteren zu verbinden, zugeordnet sind;
- - eine Schnittstelle für die Verbindung mit dem Controller, die die Übertragung von Daten von Rahmen und von Steuerblöcken, die die Steuerzeichen für die Bildung der entweder zur Verbindung oder zum Rechnerbus übertragenen Rahmen enthalten, sicherstellt; und
- - einen Dualport-Schreib-Lese-Pufferspeicher, der über einen ersten Bus mit der Verbindungsschnittstelle und über einen zweiten Bus mit dem Rechnerbus über eine spezifische Schnittstelle dieses letzteren verbunden ist, wobei die Datenübertragung zwischen der Verbindungsschnittstelle und dem Dualport-Speicher einerseits und zwischen diesem und dem Rechnerbus andererseits durch den Mikroprozessor organisiert wird, wobei dieser letztere unter der Steuerung einer an den zweiten Bus angeschlossenen Direktspeicherzugriffsschaltung erfolgt, wobei die Transformation der für die auf dem Rechnerbus verwendeten Protokolle spezifischen Steuerblöcke in jene, die in der spezifischen Verbindung verwendet werden, und umgekehrt, durch den Mikroprozessor ausgeführt wird, der ihre Übertragung über seinen internen Bus an die Verbindungsschnittstelle oder von dieser sicherstellt.
- Weitere Merkmale und Vorteile der vorliegenden Erfindung gehen aus der folgenden Beschreibung hervor, die als nicht beschränkendes Beispiel unter Bezug auf die beigefügte Zeichnung gegeben ist.
- In der Zeichnung zeigen
- - Fig. 1, die aus den Fig. 1a und Fig. 1b gebildet ist, wie ein Rechner entweder mit einem Netz vom Typ FDDI oder mit einer Verbindung von Typ SCSI verbunden ist;
- - Fig. 2 die verschiedenen wesentlichen konstitutiven Elemente einer universellen Kopplungsvorrichtung des Standes der Technik, die in der obengenannten französischen Patentanmeldung beschrieben ist;
- - Fig. 3 die verschiedenen wesentlichen konstitutiven Elemente einer universellen Kopplungsvorrichtung gemäß der Erfindung;
- - Fig. 4 genauer, wie der Dualport-Video-RAM-Speicher aufgebaut ist und wie er einerseits mit der Adaptervorrichtung und andererseits mit dem Coprozessor verbunden ist, der seinerseits mit dem MULTIBUS II verbunden ist;
- - Fig. 5, wie auf verschiedene Seiten des Speichers des Typs RAM, der dem Mikroprozessor der Kopplungsvorrichtung gemäß der Erfindung zugeordnet ist, zugegriffen wird;
- - Fig. 6 die verschiedenen Datenwege zwischen den verschiedenen konstitutiven Elementen der universellen Kopplungsvorrichtung gemäß der Erfindung.
- Von nun an wird Fig. 3 betrachtet.
- Die universelle Kopplungsvorrichtung gemäß der Erfindung GPUI umfaßt die folgenden verschiedenen wesentlichen konstitutiven Elemente:
- - den Coprozessor MPC, der als Schnittstelle zum Parallelbus PSB dient,
- - den Mikrocontroller MIC, der die sogenannte "interconnect"-Verbindungsfunktion des Multibusses unterstützt;
- - den Mikroprozessor CPU, der tatsächlich die Zentraleinheit der Vorrichtung GPUI ist, mit einem internen Bus BI ausgerüstet ist und dem ein wiederprogrammierbarer Speicher EPROM1 bzw. ein Schreib-Lese-Speicher SRAM sowie ein Unterbrechungssteuerungsprogramm, nämlich MFP, zugeordnet sind. Die Elemente EPROM&sub1;, SRAM, MFP sind alle an den internen Bus BI des Mikroprozessors CPU angeschlossen, der zudem mit der Schnittstelle IHAC verbunden ist;
- - den Speicher des Typs Dualport-Video-RAM, der mit VRAM bezeichnet ist;
- - den Direktspeicherzugriffs-Controller DMAC, der an den den VRAM mit dem Coprozessor MPC verbindenden Bus B&sub2; angeschlossen ist;
- - den Bus B1, der die Schnittstelle IHAD mit dem Speicher VRAM verbindet.
- In Fig. 3 ist die Schnittstelle IHA, die der in Fig. 2 dargestellten völlig gleich, durch einen Strich symbolisch dargestellt.
- Der Coprozessor MPC ist vom gleichen Typ wie der im Zusammenhang mit Fig. 2 beschriebene und damit speziell so beschaffen, daß er der obengenannten IEEE-Norm entspricht.
- In dem gewählten Ausführungsbeispiel wird der Mikrocontroller MIC von einem Element gebildet, das von der Firma INTEL unter der Bezeichnung 8752 hergestellt wird. Dieses Element wurde von INTEL so entworfen, daß es in enger Verbindung mit dem Coprozessor MPC arbeiten kann, mit dem es, wie in Fig. 3 zu sehen ist, verbunden ist.
- Er verwaltet alles, was den Bereich "Verbindung" (in der angelsächsischen Terminologie "interconnect") des MULTIBUSSSES II betrifft und alles, was als dem MB II dienlich angesehen wird, wobei diese Gesamtheit (Verbindung + Dienstprogramme) durch die zuvor angegebene Norm IEEE 1296 definiert ist.
- Es empfiehlt sich zu präzisieren, daß MIC die Verbindung auf Anforderung seines eigenen Mikroprozessor CPU oder auf Anforderung eines Mikroprozessor einer anderen Karte des Typs GPUI, die an den gleichen Bus PSB angeschlossen ist, herstellen kann.
- Der dem Mikrocontroller MIC zugeordnete Speicher EPROM2 ist ein löschbarer Nur-Lese-Speicher, der den Verweis auf die GPUI enthaltende Karte, d. h. ihre Nummer, mit der sie in der Fabrik während ihres Fertigungsprozesses gekennzeichnet worden ist, sowie deren Revisionsnummer, d. h. die Nummer der sie darstellenden Version, enthält; die GPUI enthaltende Karte kann nämlich im Laufe der Zeit Änderungen im Herstellungsprozeß unterliegen. Jeder dieser Änderungen entspricht eine bestimmte Version, deren Nummer in den Speicher EPROM2 eingetragen ist. Selbstverständlich berücksichtigt der Mikrocontroller diese letztere Information, um seine Verbindungsaufgaben auszuführen.
- Der Mikroprozessor CPU ist in dem hier beschriebenen Ausführungsbeispiel vom Typ 68020 der Firma MOTOROLA. Das ist ein 32-Bit-Mikroprozessor mit einer Taktfrequenz von 25 MHz. Er verwaltet seinen internen Bus BI, der ein nicht multiplexierender Bus für 32-Bit-Nutzdaten und 32-Bit-Adressen ist.
- Der löschbare Schreib-Lese-Speicher EPROM&sub1; mit einer Kapazität von 128 oder 256 KByte enthält die Programme zum Selbsttest und zur Initialisierung der Kopplungsvorrichtung GPUI.
- Das Betriebssystem GPOS des Mikroprozessors CPU ist in dem statischen Speicher SRAM enthalten, der eine Kapazität von 512 KByte oder 1 MByte besitzen kann. Zur Regelung des Zugriffs auf diesen Speicher ist diesem ein Schutzsystem zugeordnet, dessen Beschreibung in Verbindung mit Fig. 5 erfolgt.
- Das Betriebssystem GPOS (operating system) organisiert die gesamte Funktion des Mikroprozessors und überwacht demnach die Übertragung der Rahmen vom Bus PSB zur Schnittstelle IHA und umgekehrt. Außerdem kann das Programm (oder die Programme) zur Anpassung der Protokolle, die einerseits zwischen dem Rechner ORD und der Kopplungsvorrichtung im Bus PSB und andererseits im Netz RN (FDDI, SCSI, usw.) genutzt werden, entweder im EPROM&sub1; oder im SRAM enthalten sein, je nach seiner (ihrer) Wichtigkeit und der in dem einen oder dem anderen der Speicher verfügbaren Kapazität.
- Der Mikroprozessor CPU ist demzufolge das Hirn der Kopplungsvorrichtung: Er initialisiert die Datenübertragung, realisiert die Protokollanpassung, führt sein Dienstprogramm aus und überträgt die Daten von der Vorrichtung DEA an den Rechner ORD und umgekehrt, wozu er mit der Vorrichtung DEA im Dialog steht, mit der er Befehle und den jeweiligen Status beispielsweise in der Weise austauscht, die in der obengenannten französischen Patentanmeldung angegeben ist.
- Das Element MFP oder die multifunktionale Peripherieeinrichtung (angelsächsische Abkürzung von "Multi function peripheral") ist ein sogenanntes "Peripherie"-Element des Mikroprozessors CPU. Es ist beispielsweise vom Typ 68901 der Firma MOTOROLA und in seiner Bauart an diesen Mikroprozessor angepaßt. Es unterstützt eine bestimmte Anzahl von Funktionen, die zum Betrieb dieses letzteren erforderlich sind. Es handelt sich beispielsweise zum einen um die Steuerung der Unterbrechungen, die er benötigt. Auch handelt es sich um Taktfrequenzen, die beispielsweise vom Betriebssystem des letzteren verwendet werden. Der Mikroprozessor vom Typ 68020 ist so konstruiert, daß er sieben Unterbrechungsebenen besitzt, was ausreicht, um die Operationen, mit denen er betraut ist, auszuführen. Das Element MFP liefert insgesamt 16 zusätzliche Unterbrechungsebenen, 8 davon für die CPU und die weiteren 8 für die externen Vorrichtungen, darunter 7 für die Adaptervorrichtung DEA.
- Der Direktspeicherzugriffs-Controller DMAC stellt die Datenübertragung zwischen dem Coprozessor MPC und einem der beiden Speicher SRAM oder VRAM sicher. Er besitzt zwei Kanäle:
- - einen sogenannten "in"-Kanal, der die Datenübertragung vom Coprozessor MPC zum Dualport-Video-RAM VRAM (oder zu dem SRAM) gewährleistet,
- - einen sogenannten "out"-Kanal, der die Datenübertragung vom Speicher VRAM zum Coprozessor MPC gewährleistet.
- Der "in"-Kanal ist dem "out"-Kanal in der Priorität übergeordnet und unterbricht diesen letzteren, wenn er eine Übertragungsanforderung erhält. Die Übertragungsgeschwindigkeit des Controllers DMA hängt von der für die universelle Kopplungsvorrichtung gemäß der Erfindung angestrebten Leistungsfähigkeit ab und kann 33,3 MBytes/s im Einzelzyklusbetrieb (Single cycle mode) erreichen, was erlaubt, den PSB mit 32 MBytes/s (32 Bit) zu speisen.
- Die Datenübertragung erfolgt in aufeinanderfolgenden Paketen von 8 · 32 Bit auf Anforderung des Coprozessor MPC (sowohl für den "in"-Kanal als für den "out"-Kanal). Um eine Datenübertragung auszuführen, empfängt der Kontroller DMAC von seiten des Mikroprozessors CPU eine Startadresse (im Speicher VRAM oder im Coprozessor MPC), einen Zählstand, d. h. die Anzahl der zu übertragenden Bytes, und einen Startbefehl für die Datenübertragung. Sobald er diese Informationen von der CPU erhalten hat, organisiert der Controller DMA die Datenübertragung. Er ist demzufolge für die die Adresse und den Zählstand angebenden Informationen der "Slave" des Mikroprozessors CPU. Der Controller DMAC sieht die Daten, die vom Speicher zum Coprozessor und in umgekehrter Richtung befördert werden, nicht. Er steuert lediglich auf Anforderung des Coprozessors MPC deren Fluß.
- Der Video-RAM-Speicher VRAM ist ein dynamischer Dualport-Speicher, dessen Kapazität in der Größenordnung von 1 bis 2 MByte auf einer Breite von 32 Bit liegt. Einer der beiden Ports, nämlich SAM, ist ausschließlich dem Controller DMAC vorbehalten, während der zweite Port, nämlich DRAM, zwischen dem Mikroprozessor CPU und der Adaptervorrichtung DEA aufgeteilt ist. Der Video-RAM ist durch eine Paritätskontrolle mit 1 Paritätsbit pro Byte geschützt. Dieser Speicher dient den Daten, die von der universellen Kopplungsvorrichtung GPUI zur Adaptervorrichtung DEA befördert werden, als Puffer. Es empfiehlt sich zu präzisieren, daß der Mikroprozessor CPU oder die Adaptervorrichtung DEA auf VRAM zugreifen können, während DMAC einen Datentransfer zwischen VRAM und MPC ausführt. Dies erfolgt unter bestimmten Bedingungen: Der Controller DMAC arbeitet nicht direkt im Video-RAM-Speicher, sondern in einem ihm eigenen Register, das eine Seite des Speichers enthält, wobei dieser letztere in mehrere Seiten zerlegt ist; so enthält im gewählten Ausführungsbeispiel der Speicher VRAM 512 Seiten zu 512 Zeilen, die jeweils 32 Bit zählen. Beim Schreiben kopiert der Controller DMAC zunächst eine Seite des Speichers VRAM in sein eigenes Register, modifiziert dann sein Register mit den Daten, die an ihn vom Coprozessor übertragen werden, und überträgt schließlich sein Register in den sogenannten Seitenspeicher, wobei er die vorherigen Daten, die dort registriert waren, löscht. Dies setzt selbstverständlich ein sehr strenges Management des Speichers VRAM voraus, damit der Mikroprozessor CPU und die Adaptervorrichtung DEA nicht gleichzeitig mit den gleichen Seiten wie der Controller DMAC arbeiten.
- Der Bus B&sub1; und der Bus B&sub2; sind 32-Bit-Busse (32-Bit-Adresse, 32-Bit-Daten). Es ist zu sehen, daß der Mikroprozessor CPU die drei Busse B&sub1;, B&sub1; und B&sub2; steuern kann. Auf den Coprozessor MPC und auf die Controller DMA, DMAC greift er über den Bus B&sub2; zu, auf den Speicher VRAM über den Bus B&sub1;.
- Der Controller DMAC kann den Speicher SRAM über den Bus B&sub1; erreichen (dies erfolgt insbesondere während der Übertragung des Programms oder der Daten der Software GPOS unmittelbar nach der Initialisierung der Vorrichtung gemäß der Erfindung GPUI). Es ist nicht möglich, von der Adaptervorrichtung DEA über den Bus B&sub1; zum Bus BI zu gelangen. Ebenso kann keine über den Bus B&sub2; ausgeführte Übertragung von Nutzdaten über BI laufen. Diese beiden ausgeschlossenen Möglichkeiten sind durch die Anwesenheit der Elemente FLI&sub1; und FLI&sub2;, die zwischen dem Bus B&sub2; und dem Bus BI bzw. zwischen dem Bus B&sub1; und B&sub1; angeordnet sind, symbolisch dargestellt. Diese Elemente sind logische Isolationselemente (oder logische Verbotselemente).
- Der Controller DMAC ist gegenüber dem Mikroprozessor CPU stets prioritär, während auf dem Bus B&sub1; die Steuerelemente der Adaptervorrichtung DEA (mit Bezug auf die obengenannte französische Patentanmeldung) gleichfalls prioritär sind. Der Mikroprozessor CPU kann jedoch eine Übertragung über B&sub1; oder B&sub2; unterbrechen, wenn dieser Transfer zu lang ist, um hier die von ihm gewünschten Daten übertragen zu lassen.
- Zusammenfassend läßt sich sagen, daß erkennbar ist, daß der Mikroprozessor CPU über seinen Bus arbeiten kann, während der Controller für den Direktzugriff DMAC und die entsprechenden Controller der Vorrichtung DEA über ihre Busse, nämlich B&sub2; bzw. B&sub1;, aktiv sind. Mit anderen Worten, die Unterteilung in drei verschiedene Busse BI, B&sub1;, B&sub2; ermöglicht, drei Tasks gleichzeitig und vollkommen asynchron auszuführen.
- Von nun an wird auf Fig. 4 Bezug genommen.
- Die verschiedenen wesentlichen Grundelemente des Dualport-VRAM sind:
- - die eigentliche seitenorientierte Speicherzone, nämlich PLM,
- - das Adressen/Zeilen-Register RAL,
- - das Adressen/Seiten-Register RAP,
- - das serielle Ausgangsregister RS1, das dem Zeiger PNT zugeordnet ist.
- Wie weiter oben ausgeführt worden ist, ist der erste Port DRAM mit dem Bus B&sub1; (Datenbus) verbunden, während der zweite Port SAM mit dem Datenbus B&sub2; verbunden ist.
- Die seitenorientierte Speicherzone PLM wird, sofern die Adressierung jeder der 512 Seiten der PLM betroffen ist, durch das Adressenregister RAP und, was die 512 einzelnen Zeilen einer bestimmten Seite betrifft, durch das Adressenregister RAL adressiert.
- Zudem ist das Adressen/Zeilen-Register RAL mit dem Zeiger PNT verknüpft.
- Der Adreßbus B&sub1; und der Adreßbus B&sub2;, die von der Adaptervorrichtung DEA bzw. vom Controller DMAC ausgehen, sind mit den beiden Adressenregistern RAP bzw. RAL über eine Kombinationsschaltung COMB, die einfach ein ODER-Gatter sein kann, verbunden.
- Das serielle Register RS, das einerseits mit dem Datenbus B&sub2; und andererseits mit der Zone PLM verbunden ist, besteht in Wirklichkeit aus 32 seriellen Registern, die jeweils 512 verschiedene Positionen enthalten, derart, daß das Register RS insgesamt eine ganze Seite der Zone PLM enthalten kann, wobei der Zeiger PNT ermöglicht, die 512 Zeilen mit 32 Bit einer Seite dieser Speicherzone nacheinander zu übertragen.
- Einzelheiten des Aufbaus und der Funktion eines Dualport-Speichers des Typs Video-RAM sind beispielsweise sehr ausführlich in der technischen Beschreibung des Herstellers TOSHIBA für einen Video-RAM mit der Bezeichnung TC 524256 am Beispiel des Gehäusetyps Z-10 gegeben.
- Von jetzt an wird Fig. 5, die das Schutzsystem RAMP des Speichers SRAM zeigt, das von einem Speicher des Typs RAM gebildet ist, betrachtet. Der Speicher SRAM ist beispielsweise in 128 Seiten von jeweils 8 kByte unterteilt. Zudem verfügt die Betriebssystemsoftware GPOS des Mikroprozessors CPU über 32 Kennzahlen für Anwendungsprogramme (jede Anwendung wird auch JOB genannt). Der Speicherschutz ist im Speicher RAMP von 32 · 128 Bit enthalten, er erfolgt pro Seite und pro Anwendungsprogramm-Kennzahl. Er ist über insgesamt zwei Bits PROT&sub1; und PROT&sub2; definiert, deren Kombination eine bestimmte Anzahl möglicher Operationen festlegt, die auf der einen oder der anderen festgelegten Seite des Speichers SRAM möglich sind. Wenn also das Bit PROT&sub1; unabhängig vom Wert des Bits PROT&sub0; gleich null ist, ist der Zugriff auf die Seite mit der bestimmten Nummer durch eine bestimmte Anwendung nicht möglich. Ist das Bit PROT&sub1; gleich 1, während das Bit PROT&sub0; gleich 0 ist, kann diese Seite gelesen werden. Wenn die beiden Bits PROT&sub1; und PROT&sub0; gleichzeitig 1 sind, sind das Lesen und das Schreiben auf der betreffenden Seite erlaubt.
- Jeder festgelegten Anwendungskennzahl NUMJOB und für diese jeder Seitennummer NUMPAGE entspricht demzufolge ein Paar wohlbestimmter Werte PROT&sub1;-PROT&sub0;.
- Die Gesamtheit dieser Paare NUMJOB-NUMPAGE ist in eine Tabelle eingetragen und einer Hardware-Logikschaltung (nicht gezeigt, um die Fig. 3 und 5 zu vereinfachen) bekannt. Wenn das Betriebssystem auf eine bestimmte Seite des SRAM zugreifen will, die durch ein Paar NUMPAGE-NUMJOB festgelegt ist, schickt es dieser Hardware-Logikschaltung ein Wertepaar SPROT&sub1;-SPROT&sub0;, das von der genannten Schaltung mit PROT&sub1;-PROT&sub0; verglichen wird. Diese letztere erlaubt in Abhängigkeit vom Ergebnis dieses Vergleichs den Zugriff auf die betreffende Seite oder nicht.
- Von jetzt an wird Fig. 6 betrachtet, die die verschiedenen Datenpfade für jedes der wesentlichen konstitutiven Elemente der universellen Kopplungsvorrichtung gemäß der Erfindung zusammenfaßt.
- Selbstverständlich werden in Fig. 6 unter den Datenpfaden die Kanäle verstanden, über die beliebige Datentypen geschickt werden, unabhängig davon, ob es sich um Nutzdaten, die zur Übertragung über das Netz RN von Fig. 1A vorgesehen sind, oder auch um die Steuerblöcke oder die Daten der Betriebssystemsoftware GPOS oder etwa die Daten der Selbsttestprogramme handelt.
- In Fig. 6 sind die Datenpfade gezeigt, die von CPU, DMAC, MPC gesteuert sind. Die Linie mit schwarzweißem Schachbrettmuster bezeichnet den realen physischen Pfad der Daten (die physischen Busse B&sub1;, BI) dar, während die dünneren Striche die von diesen Datenkanälen benützten Richtungen symbolisieren. Mit schrägen schwarzen und weißen Querstreifen versehen sind die diejenigen angegeben, die vom Coprozessor MPC gesteuert werden und mit schwarzweißem Schachbrettmuster sind diejenigen dargestellt, die vom Controller DMAC gesteuert werden.
- Es werden die von der CPU gesteuerten Datenkanäle betrachtet: Das sind zunächst diejenigen, die zwischen dieser letzteren und ihrem Speicher SRAM oder ihrem Speicher EPROM&sub1; vorhanden sind und über den Bus BI laufen und entweder die Steuerblöcke SCB oder die Testprogramme AT oder das Betriebssystem GPOS betreffen. Die CPU steuert den Datenstrom in Richtung des Mikrocontrollers MIC, über den die Ergebnisse der Selbsttests und sämtliche für das Management der Verbindungsaufgaben von PSB notwendigen Daten laufen.
- Der Mikroprozessor CPU steuert den Datenpfad zwischen dem Coprozessor MPC und sich selbst, der über BI, FLI&sub1; und B&sub2; läuft, wovon die Steuerblöcke betroffen sind, die zu verschiedenen vom Rechner ORD stammenden Rahmen gehören. Diese hier mit SCBO bezeichneten Steuerblöcke sind von den Steuerblöcken SCB verschieden, wobei die Rolle der CPU genau darin besteht, die Steuerblöcke SCBO unter Berücksichtigung der verschieden Protokolle, die zwischen dem Rechner ORD und GPUI über PBS einerseits und über das Netz RN andererseits verwendet werden, in Steuerblöcke SCB umzuwandeln.
- Es werden die von dem Controller DMAC gesteuerten Datenpfade betrachtet. Es handelt sich zunächst um den Datenpfad, der die Nutzdaten der Rahmen transportiert, die für das Netz oder den Rechner ORD bestimmt sind, wobei diese Nutzdaten, die mit DU bezeichnet sind, über den Bus B&sub2; (Datenbus) laufen. Außerdem steuert der Controller DMAC einen Datenpfad, der zum einen über B&sub2;, dann über FL&sub1; und über BI läuft, um in den Speicher SRAM zu gelangen. Es handelt sich um denjenigen Datenpfad, über den die Daten laufen, die GPOS bilden.
- Schließlich werden die batenpfade betrachtet, die vom Coprozessor MPC gesteuert werden. Es handelt sich zunächst um den Datenpfad, der die Rahmen transportiert, die vom Rechner ORD oder von einem weiteren Rechner oder von der an PSB gekoppelten universellen Kopplungsvorrichtung stammen, mit FRO bezeichnet sind und PSB benutzen. Es handelt sich außerdem um den Pfad derjenigen Daten, die bei Operationen zum Verbinden und Zurücksetzen jedes der Elemente der die GPUT enthaltenden Karte vom Rechner über PSB an den Mikrocontroller MIC übertra gen werden, wobei dieser Pfad hier mit RAZ bezeichnet ist.
- Die Arbeitsweise der Vorrichtung gemäß der Erfindung GPUI ist die folgende:
- Zu Beginn gibt der Mikrocontroller MIC den Mikroprozessor CPU frei und läßt diesen starten. Letzterer beginnt damit, die Selbsttestprogramme auszuführen, die in dem Speicher EPROM&sub1; enthaltenen sind. Wenn sich die Selbsttests als fehlerfrei erweisen, steuert der Mikroprozessor die vom Mikrocontroller MIC ausgeführten Operationen zur Initialisierung der Karte. Die verschiedenen GPUI bildenden Elemente sind dann betriebsbereit.
- Unter der Steuerung durch DMAC wird das Betriebssystem GPOS in den Speicher SRAM geladen. Danach kann die CPU dieses in Betrieb nehmen, um die Gesamtheit der von GPUI ausgeführten Operationen zu steuern. Ein Ausführungsbeispiel dieses Betriebssystems ist beispielsweise in der französischen Patentanmeldung beschrieben, die am heutigen Tag von der Anmelderin unter dem Titel "Systéme d'exploitation pour dispositifuniversel de couplage d'un bus d'ordinateur à au moins une liaison spécifique d'un réseau" eingereicht worden ist. Dann kann zur nächsten. Operation übergegangen werden.
- Diese Operation betrifft das Senden von Rahmen an das Netz oder das Empfangen von Rahmen vom Netz.
- Zunächst wird das Senden, d. h. das Schicken von Information vom Rechner ORD an das Netz betrachtet. In diesem Kontext ist der Rechner der Auslöser des Prozesses. Es empfiehlt sich, darauf aufmerksam zu machen, daß der Rechner in seinen Speichern Speicherzonen besitzt, die gewöhnlich gemäß der angelsächsischen Terminologie "Buffers" (Puffer) genannt werden und in denen die Rahmen, die über das Netz RN geschickt werden sollen, vor dem Senden gespeichert sind. Es ist üblich, daß der Rechner ORD mehrere Speicherzonen BF&sub1;, BF&sub2;, ..., BFm besitzt. Jeder dieser Zonen oder Puffer entspricht im allgemeinen Rahmen, die unter Nutzung eines bestimmten Protokolls über ein Netz geschickt werden sollen. Diese Rahmen können nach den Protokollen Ethernet, TCP/IP, FDDI usw. gesendet werden. Deshalb wird hier das Beispiel eines Puffers BF&sub1; betrachtet, von dem angenommen wird, daß er die für ein Netz, beispielsweise FDDI, bestimmten Rahmen enthält.
- Die Operationen laufen dann in folgender Reihenfolge ab:
- - 1: Der Rechner ORD schickt eine Unterbrechung IT&sub1; an den Mikroprozessor CPU, die diesen aktiviert. Diese Unterbrechung kündigt dem Mikroprozessor an, daß der Rechner mehrere Rahmen, beispielsweise n Rahmen, an das Netz RN schicken wird. Die Vorrichtung GPUI arbeitet dann entsprechend n Programmschleifen ab, die jeweils die folgenden Operationen 2 bis 5 enthalten:
- - 2: Durch sein Betriebssystem GPOS gesteuert, wird der Mikroprozessor im Speicher des Rechners ORD die Startadresse des Puffers BF&sub1; des zu sendenden Rahmens und dessen Länge suchen.
- - 3: Der Mikroprozessor wird dann im Puffer BF&sub1; den fraglichen Rahmen, hier mit TR&sub1; bezeichnet, suchen. Er wird ihn, soweit es die Nutzdaten betrifft, im Speicher VRAM ablegen, und zwar über PSB, den Coprozessor MPC und mit Hilfe des Controllers DMAC, der ihre Übertragung vom Coprozessor bis zum VRAM organisiert. Die Steuerblöcke SCBO hingegen werden über PSB, MPC, B&sub2; und BI in den Schreib-Lese-Speicher SRAM übertragen.
- Bezüglich der unter der Steuerung von GPOS ausgeführten Operationen 2 und 3 empfiehlt es sich, zu präzisieren, daß die Information vom Rechner an den Mikroprozessor gemäß einem Übertragungsprotokoll übertragen wird, das für den betreffenden Rechner spezifisch ist. In dem gewählten Ausführungsbeispiel ist dieses Protokoll ein sogenanntes "PLANET"-Protokoll, das in dem französischen Patent Nr. 2 633 414 beschrieben ist, das von der Anmelderin unter dem Titel "Systeme informatique interconnexion centrale" eingereicht wurde.
- Es folgt Operation 4:
- - 4: Der Mikroprozessor CPU führt die Protokollanpassung zwischen dem Protokoll PLANET und dem in dem Netz RN genutzten Protokoll vom Typ FDDI aus. Das ist gleichbedeutend damit, daß aus den Steuerblöcken SCBO Steuerblöcke SCB, wie sie in der obengenannten französischen Patentanmeldung beschrieben worden sind, gebildet werden und der Rahmen TR&sub1; in mehrere Rahmen FDDI, deren Länge dem entsprechenden Protokollformat entspricht, zerlegt wird.
- - 5: Der Mikroprozessor CPU lädt nacheinander die Nutzdaten in die Schnittstelle IHAD und den Steuerblock SCB in IHAC. Dann wird zwischen der CPU und der Adaptervorrichtung DEA ein Dialog entsprechend den in der obengenannten französischen Patentanmeldung beschriebenen Ablaufdiagrammen eröffnet, so daß die Rahmen über DEA in das Netz RN eintreten.
- Dann wird für den folgenden Rahmen TR&sub2;, der von BF&sub1; an das Netz RN übertragen werden soll, zur Operation 2 zurückgegangen.
- Ist der Rahmen TRn von der CPU in die beiden Schnittstellen IHAD und IHAC geladen und es gibt keine weiteren von BF&sub1; aus zu sendende Rahmen, geht der Mikroprozessor CPU entweder bezüglich der BF&sub1; betreffenden Rahmen in den Ruhezustand über oder beginnt, das Senden von Rahmen von einem weiteren Puffer BF&sub2;, ..., BFm aus zu organisieren.
- Auch hier ist der Rechner ORD Auslöser der Operationen. Der Empfang umfaßt die folgenden Operationen 6 bis 11:
- - 6: Der Rechner ORD sendet eine Unterbrechung IT&sub2;, die dem Mikroprozessor CPU meldet, daß ein Puffer BF'&sub1; letzterem zur Verfügung steht, um dort die aus dem Netz kommenden Rahmen zu speichern. Es ist klar, daß der Rechner ORD mit einer weiteren Unterbrechung dem Mikroprozessor CPU mitteilen kann, daß ihm ein Puffer BF'&sub2;, BF'&sub3; usw. zur Verfügung steht, um dort die Rahmen zu speichern, die aus von RN verschiedenen Netzen stammen. In der gängigen Praxis gehören die beiden Puffer BF&sub1; und BF'&sub1; zur gleichen Speicherzone, die nämlich in zwei Teile geteilt ist, einen Teil BF&sub1; zum Senden und den anderen Teil BF'&sub1; zum Empfangen der Rahmen.
- - 7: Der Mikroprozessor CPU startet erneut, sucht in dem zu diesem Zweck zugeordneten Speicher des Rechners ORD die Adresse und die Länge des Puffers BF'&sub1; und begibt sich in Wartestellung, bis er eine Unterbrechung IT&sub3; von DEA empfängt. CPU liest dann den Inhalt der Schnittstelle IHAC und stellt dabei fest, daß ein aus dem Netz RN kommender Rahmen vorliegt, um vom Rechner ORD empfangen zu werden. Dieser Rahmen TR'&sub1; befindet sich in der Schnittstelle IHAD.
- - 8: Der Mikroprozessor CPU holt von der Schnittstelle IHAD die sich dort befindenen Nutzdaten ab und überträgt sie in den Speicher VRAM. Er überträgt die Steuerblöcke von IHAC in den Speicher SRAM.
- - 9: a) Die CPU führt die Protokollanpassung aus, indem sie den Steuerblock SCB in einen Steuerblock SCBO umwandelt.
- b) Sie analysiert das Protokoll des empfangenen Rahmens, wie es im Steuerblock SCB definiert ist, um zu wissen, in welchem Puffertyp des Speichers des Rechners ORD dieser gespeichert werden soll. Danach wird zur Operation 10 übergegangen.
- - 10: Die CPU führt die Übertragung des Steuerblocks SCBO zum Rechner ORD über MPC und PSB aus und startet gleichzeitig den Controller DMAC, damit dieser letztere die im Speicher VRAM enthaltenen Nutzdaten des Rahmens TR'&sub1; an den Puffer BF'&sub1; überträgt. Sobald diese Übertragung abgeschlossen ist, findet eine Rückkehr zur Operation 7 statt, wenn es sich darum handelt, einen aus dem Netz RN stammenden Rahmen TR'&sub2; zu empfangen, oder aber zur Operation 6, wenn es sich um einen Rahmen handelt, der aus einem anderen Netztyp stammt und für einen anderen Puffer als BF'&sub1; bestimmt ist.
- Selbstverständlich erhält der Rechner ORD vom Mikroprozessor CPU ein Signal, das ihm anzeigt, daß ein Rahmen auf dem Weg zu ihm ist.
- Wenn der Mikroprozessor alle ihm vom Rechner ORD zur Verfügung gestellten Puffer BF'&sub1;, BF'&sub2;, ... gefüllt hat, schickt er eine Unterbrechung IT4 an die Datenverarbeitungsvorrichtung ORD. Dies bildet die Operation 11.
- Es empfiehlt sich, zu präzisieren, daß das unter der Steuerung des Mikroprozessors CPU ausgeführte Senden und Empfangen von Rahmen zeitlich verschachtelt ist und daß der Mikroprozessor CPU in dem hier beschriebenen bevorzugten Ausführungsbeispiel das Management von 16 ineinander verschachtelten logischen Kanälen, d. h. von 8 logischen Kanälen zum Empfangen und 8 logischen Kanäle zum Senden, ausführen kann, wobei jedem dieser Kanäle ein spezieller Puffertyp des Rechners ORD zugeordnet werden kann.
- Zusammenfassend zeigt sich, daß die universelle Kopplungsvor richtung GPUI gemäß der Erfindung drei Operationen simultan ausführen kann, nämlich über den Controller DMAC ein Senden oder über den Bus B2 ein Empfangen, während der Mikroprozessor CPU eine dritte Operation abarbeitet (Senden oder Empfangen über einen weiteren Kanal). Dadurch ist eine hohe Leistungsfähigkeit der Vorrichtung gemäß der Erfindung gewährleistet.
Claims (10)
1. Universelle Kopplungsvorrichtung (GPUI) des Typs, der
einen Rechnerbus (PSB) mit einem Controller (DEA) für eine
Gruppe von Peripheriegeräten (D1 bis Dn) verbindet, die
untereinander über eine spezifische Verbindung (FDDI) eines Netzes
(RN) verbunden sind, mit dem der Controller (DEA) physisch
verbunden ist, wobei die Vorrichtung enthält:
- einen Mikroprozessor (CPU), der einen internen Bus
(BI) besitzt und dem einerseits über seinen internen Bus (BI)
wenigstens ein Speicher (SRAM), der sein Betriebssystem
enthält, und andererseits eine spezifische Schnittstelle (MPC)
des Rechnerbusses (PSB), die ermöglicht, ihn mit diesem
letzteren zu verbinden, zugeordnet sind;
- eine Schnittstelle (IHA) für die Verbindung mit dem
Controller (DEA), die die Übertragung von Daten von Rahmen und
von Steuerblöcken, die die Steuerzeichen für die Bildung der
entweder zur Verbindung (FDDI) oder zum Rechnerbus (PSB)
übertragenen Rahmen enthalten, sicherstellt; und
- einen Dualport-Schreib-Lese-Pufferspeicher (VRAM), der
über einen ersten Bus (B&sub1;) mit der Verbindungsschnittstelle
(IHA) und über einen zweiten Bus (B&sub2;) mit dem Rechnerbus (PSB)
über eine spezifische Schnittstelle (MPC) dieses letzteren
verbunden ist, wobei die Datenübertragung zwischen der
Verbindungsschnittstelle (IHÄ) und dem Dualport-Speicher (VRAM)
einerseits und zwischen diesem (VRAM) und dem Rechnerbus (PSB)
andererseits durch den Mikroprozessor (CPU) organisiert wird,
wobei diese letztere Übertragung unter der Steuerung einer an
den zweiten Bus (B&sub2;) angeschlossenen
Direktspeicherzugriffsschaltung (DMAC) erfolgt, wobei die Transformation der für die
auf dem Rechnerbus (PSB) verwendeten Protokolle spezifischen
Steuerblöcke in jene, die in der spezifischen Verbindung
(FDDI) verwendet werden, und umgekehrt, durch den
Mikroprozes
sor (CFU) ausgeführt wird, der ihre Übertragung auf seinem
internen Bus (BI) an die Verbindungsschnittstelle (IHA) oder
von dieser sicherstellt.
2. Universelle Kopplungsvorrichtung nach Anspruch 1,
dadurch gekennzeichnet, daß der Dualport-Speicher (VRAM) eine
paginierte Speicherzone (PLM), die n Seiten mit jeweils m
Zeilen enthält, ein Zeilenadressenregister (RAL), ein
Seitenadressenregister (RAP) und ein serielles Ausgangsregister
(RS), das mit dem zweiten Bus (B&sub2;) verbunden ist, enthält,
wobei diese Verbindung den zweiten Port bildet, wobei der
erste Port mit dem ersten Bus (B&sub1;) verbunden ist, wobei die
paginierte Speicherzone (PLM) durch das Seitenadressenregister
(RAP) für die Adressierung jeder der n Seiten und durch das
Zeilenadressenregister (RAL) bezüglich jeder der m Zeilen
einer bestimmten Seite adressiert wird, wobei der erste
Adressenbus (B&sub1;) und der zweite Adressenbus (B&sub2;) mit dem
Seitenadressenregister (RAP) bzw. mit dem Zeilenadressenregister
(RAL) über eine Kombinationsschaltung (COMB) verbunden sind,
wobei ein Zeiger (PNT) des seriellen Registers (RS) die
Übertragung jeder der m Zeilen einer Seite der paginierten
Speicherzone (PLM) nacheinander ermöglicht.
3. Universelle Kopplungsvorrichtung nach einem der
Ansprüche 1 und 2, dadurch gekennzeichnet, daß einerseits ein
erstes logisches Isolationselement (FLI&sub2;) zwischen dem ersten
Bus (B&sub1;) und dem internen Bus (BI) des Mikroprozessors (CPU)
angeordnet ist und ein zweites logisches Isolationselement
(FLI&sub1;) zwischen dem zweiten Bus (B&sub2;) und dem internen Bus (BI)
des Mikroprozessors (CPU) angeordnet ist, so daß jede
Übertragung von Nutzdaten, die auf dem einen oder dem anderen der
ersten und zweiten Busse (B&sub1;, B&sub2;) zum internen Bus (BI) des
Mikroprozessors (CPU) transportiert werden, verhindert wird.
4. Universelle Kopplungsvorrichtung nach einem der
Ansprüche 2 und 3, dadurch gekennzeichnet, daß der zugeordnete
Speicher (SRAM) ein Schutzsystem (RAMP) aufweist, das einen
Speicher des RAM-Typs enthält und durch die dem Betriebssystem
des Mikroprozessors (CPU) zugeordnete Anwendungsnummer und für
jede Anwendungsnummer pro Seite des dem Mikroprozessor (CPU)
zugeordneten Speichers (SRAM) ausgeführt wird, wobei dieser
Schutz durch zwei Bits definiert ist, deren Kombination eine
bestimmte mögliche Anzahl von Operationen auf der gesamten
bestimmten Seite des dem Mikroprozessor (CPU) zugeordneten
Speichers (SRAM) definiert.
5. Universelle Kopplungsvorrichtung nach einem der
Ansprüche 2 bis 4, dadurch gekennzeichnet, daß der Dualport-
Speicher (VRAM) ein Speicher des Typs Video-RAM ist.
6. Universelle Kopplungsvorrichtung nach einem der
Ansprüche 3 bis S. dadurch gekennzeichnet, daß:
der Mikroprozessor (CPU) den Weg zwischen der
spezifischen Schnittstelle (MPC) des Rechnerbusses (PSB) und ihm
selbst (CPU) für diejenigen Daten steuert, die sich über
seinen internen Bus (BI), das zweite logische
Isolationselement (FLI&sub1;) und den zweiten Bus (B&sub2;) bewegen und die
Steuerblöcke betreffen, die die auf die verschiedenen vom Rechner
(ORD) stammenden Rahmen bezogenen Steuerzeichen enthalten; und
daß:
- der Direktspeicherzugriff-Controller (DMAC) einerseits
den Weg der Nutzdaten zwischen der spezifischen Schnittstelle
(MPC) des Rechnerbusses (PSB) und dem Dualport-Speicher (VRAM)
steuert, und andererseits den Weg der Daten steuert, die von
dieser spezifischen Schnittstelle (MPC) ausgehen und über den
zweiten Bus (B&sub2;), das zweite logische Isolationselement (FLI&sub1;)
und den Bus (BI) laufen, um den dem Mikroprozessor (CPU)
zugeordneten Speicher (SRAM) zu erreichen, wobei dieser
letztere Weg jener der Daten ist, die das Betriebssystem des
Mikroprozessors (CPU) bilden.
7. Verfahren zum Betreiben der universellen
Kopplungsvorrichtung nach einem der Ansprüche 1 bis 6, dadurch
gekennzeichnet, daß es zum Aussenden von Rahmen zum Netz (RN)
nach
einander die folgenden Operationen umfaßt:
1) der Rechner (ORD) schickt eine erste Unterbrechung
(IT&sub1;) zum Mikroprozessor (CPU);
2) der Mikroprozessor (CPU) sucht unter der Leitung
seines Betriebssystems (GPOS) in einer ersten Speicherzone,
die erster Puffer (BF&sub1;) des Rechners (ORD) genannt wird, die
Anfangsadresse des auszusendenden Rahmens und dessen Länge;
3) der Mikroprozessor (CPU) sucht in diesem ersten Puffer
(BF&sub1;) einen ersten Rahmen (TR&sub1;) und ordnet dessen Nutzdaten im
Dualport-Speicher (VRAM) an und ordnet dessen Steuerblöcke in
seinem zugeordneten Speicher (SRAM) an;
4) der Mikroprozessor (CPU) führt die Anpassung der
Protokolle zwischen dem für die Übertragung des Rahmens vom
Rechner (ORD) zum Mikroprozessor (CPU) über den Rechnerbus
(PSB) verwendeten Protokoll einerseits und dem auf dem Netz
(RN) verwendeten Protokoll andererseits aus;
5) der Mikroprozessor (CPU) lädt die Nutzdaten und die
Steuerblöcke, die vom Dualport-Speicher (VRAM) bzw. von seinem
zugeordneten Speicher (SRAM) stammen, in die
Verbindungsschnittstelle (IHA);
wobei die Operationen 2) bis 5) in der Anzahl wiederholt
werden, in der auszusendende Rahmen vorhanden sind.
8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß
es für den Empfang von vom Netz (RN) stammenden Rahmen
außerdem nacheinander die folgenden Operationen enthält:
6) der Rechner (ORD) sendet eine zweite Unterbrechung
(IT&sub2;) aus, die dem Mikroprozessor (CPU) anzeigt, daß eine
zweite Speicherzone, ein sogenannter zweiter Puffer (BF'&sub1;) für
diesen letzteren zur Verfügung steht, um darin die vom Netz
(RN) stammenden Rahmen anzuordnen;
7) der Mikroprozessor (CPU) sucht die Adresse und die
Länge des zweiten Puffers (BF'&sub1;) in einem Speicher des
Rechners, der ihm hierzu zugewiesen ist, und versetzt sich in die
Wartestellung, bis er eine dritte Unterbrechung (IT&sub3;), die vom
Peripheriegerät-Controller (DEA) stammt, empfängt, wobei diese
Unterbrechung (IT&sub3;) meldet, daß in der
Verbindungsschnitt
stelle (IHA) ein Rahmen verfügbar ist, der vom Rechner (ORD)
empfangen werden kann;
8) der Mikroprozessor (CPU) leert die
Verbindungsschnittstelle (IHA) von den Nutzdaten, die sich darin befinden, sowie
von den Steuerblöcken und überträgt sie an den
Dualport-Speicher (VRAM) bzw. an seinen zugeordneten Speicher (SRAM);
9) a) der Mikroprozessor (CPU) führt die Einstellung des
Protokolls zwischen dem auf dem Netz (RN) verwendeten
Protokoll und jenem, das auf dem Rechnerbus (PSB) verwendet
wird, aus;
b) der Mikroprozessor (CPU) analysiert das Protokoll des
Rahmens, um festzustellen, in welchen Puffertyp des
Speichers des Rechners (ORD) der Rahmen laufen soll, wobei der
Rechner (ORD) mehrere Typen von Puffern enthält, die
jeweils einem bestimmten Netztyp entsprechen;
10) der Mikroprozessor (CPU) führt die Übertragung des
Steuerblocks des Rahmens zum Rechner (ORD) über den Rechnerbus
(PSB) aus und startet gleichzeitig den Speicherdirektzugriff-
Controller (DMAC), so daß dieser die Nutzdaten des Rahmens zum
zweiten Puffer (BF'&sub1;) des Rechners (ORD) überträgt, wobei nach
Beendigung der Übertragung des Rahmens in diesen zweiten
Puffer (BF'&sub1;) eine Rückkehr entweder zur Operation 7), falls
es sich um einen vom selben Netz stammenden Rahmen handelt,
oder zur Operation 6), falls es sich um einen von einem
anderen Netztyp stammenden Rahmen handelt, erfolgt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9108908A FR2679352B1 (fr) | 1991-07-15 | 1991-07-15 | Dispositif universel de couplage d'un bus d'ordinateur a un controleur d'un groupe de peripheriques. |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69230656D1 DE69230656D1 (de) | 2000-03-16 |
DE69230656T2 true DE69230656T2 (de) | 2000-08-31 |
Family
ID=9415114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69230656T Expired - Fee Related DE69230656T2 (de) | 1991-07-15 | 1992-07-09 | Universelle Koppeleinrichtung zwischen einem Rechnerbus und einer Steuereinheit einer Gruppe von Periphergeräten |
Country Status (5)
Country | Link |
---|---|
US (1) | US5367646A (de) |
EP (1) | EP0524070B1 (de) |
JP (1) | JPH0719234B2 (de) |
DE (1) | DE69230656T2 (de) |
FR (1) | FR2679352B1 (de) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2679351B1 (fr) * | 1991-07-15 | 1995-01-27 | Bull Sa | Systeme d'exploitation pour dispositif universel de couplage d'un bus d'ordinateur a une liaison specifique d'un reseau. |
US5781749A (en) * | 1991-12-19 | 1998-07-14 | Bull S.A. | Controller for multiple data transfer between a plurality of memories and a computer bus |
FR2695740B1 (fr) * | 1992-09-16 | 1994-11-25 | Bull Sa | Système de transmission de données entre un bus d'ordinateur et un réseau en forme d'anneau à très haut débit. |
TW276312B (de) * | 1992-10-20 | 1996-05-21 | Cirrlis Logic Inc | |
US5794014A (en) * | 1994-06-27 | 1998-08-11 | Cirrus Logic, Inc. | Method and apparatus for interfacing between peripherals of multiple formats and a single system bus |
US5727184A (en) * | 1994-06-27 | 1998-03-10 | Cirrus Logic, Inc. | Method and apparatus for interfacing between peripherals of multiple formats and a single system bus |
US5590313A (en) * | 1994-06-30 | 1996-12-31 | International Business Machines Corporation | Multiple protocol device interface subsystem and method |
US5765027A (en) * | 1994-09-26 | 1998-06-09 | Toshiba American Information Systems, Inc. | Network controller which enables the local processor to have greater access to at least one memory device than the host computer in response to a control signal |
US5799207A (en) * | 1995-03-28 | 1998-08-25 | Industrial Technology Research Institute | Non-blocking peripheral access architecture having a register configure to indicate a path selection for data transfer between a master, memory, and an I/O device |
US5854909A (en) * | 1995-09-29 | 1998-12-29 | Intel Corporation | Test and control access architecture for an integrated circuit |
US5699350A (en) * | 1995-10-06 | 1997-12-16 | Canon Kabushiki Kaisha | Reconfiguration of protocol stacks and/or frame type assignments in a network interface device |
US5931933A (en) * | 1997-06-16 | 1999-08-03 | International Business Machines Corporation | Apparatus and method for communication and translation for selected one of a variety of data bus formats |
US5941972A (en) | 1997-12-31 | 1999-08-24 | Crossroads Systems, Inc. | Storage router and method for providing virtual local storage |
USRE42761E1 (en) | 1997-12-31 | 2011-09-27 | Crossroads Systems, Inc. | Storage router and method for providing virtual local storage |
US6425018B1 (en) * | 1998-02-27 | 2002-07-23 | Israel Kaganas | Portable music player |
US6633934B1 (en) | 1998-07-08 | 2003-10-14 | Clearcube Technology, Inc. | Computer system having reduced cabling requirements |
US6557049B1 (en) | 1999-08-27 | 2003-04-29 | Lsi Logic Corporation | Programmable computerize enclosure module for accommodating SCSI devices and associated method of configuring operation features thereof |
US7080319B1 (en) * | 1999-09-29 | 2006-07-18 | Lucent Technologies Inc. | Technology to translate non-text display generation data representing an indicator into text variables |
US7023795B1 (en) | 2000-11-07 | 2006-04-04 | Schneider Automation Inc. | Method and apparatus for an active standby control system on a network |
US6968242B1 (en) * | 2000-11-07 | 2005-11-22 | Schneider Automation Inc. | Method and apparatus for an active standby control system on a network |
US7346405B2 (en) * | 2001-12-04 | 2008-03-18 | Connected Energy Corp. | Interface for remote monitoring and control of industrial machines |
US20050044297A1 (en) * | 2003-08-18 | 2005-02-24 | Eugene Feng | Memory device operable with a plurality of protocols |
CN111796515B (zh) * | 2020-07-30 | 2022-04-19 | 中国科学院光电技术研究所 | 一种适用于未知输入跟踪系统的改进型双口内模控制方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4744078A (en) * | 1985-05-13 | 1988-05-10 | Gould Inc. | Multiple path multiplexed host to network data communication system |
US4837677A (en) * | 1985-06-14 | 1989-06-06 | International Business Machines Corporation | Multiple port service expansion adapter for a communications controller |
FR2633414B1 (fr) | 1988-06-27 | 1993-07-09 | Bull Sa | Systeme informatique a interconnexion centrale |
US4996690A (en) * | 1988-08-26 | 1991-02-26 | Stac Electronics | Write operation with gating capability |
FR2650412B1 (fr) | 1989-07-27 | 1991-10-11 | Bull Sa | Dispositif passerelle de connexion d'un bus d'ordinateur a un reseau fibre optique en forme d'anneau |
US4965796A (en) * | 1989-09-29 | 1990-10-23 | At&T Bell Laboratories | Microprocessor-based substrate multiplexer/demultiplexer |
US5136584A (en) * | 1990-07-11 | 1992-08-04 | At&T Bell Laboratories | Hardware interface to a high-speed multiplexed link |
-
1991
- 1991-07-15 FR FR9108908A patent/FR2679352B1/fr not_active Expired - Fee Related
-
1992
- 1992-07-09 EP EP92401996A patent/EP0524070B1/de not_active Expired - Lifetime
- 1992-07-09 DE DE69230656T patent/DE69230656T2/de not_active Expired - Fee Related
- 1992-07-15 JP JP4188081A patent/JPH0719234B2/ja not_active Expired - Lifetime
- 1992-07-15 US US07/913,477 patent/US5367646A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
DE69230656D1 (de) | 2000-03-16 |
JPH0719234B2 (ja) | 1995-03-06 |
US5367646A (en) | 1994-11-22 |
FR2679352A1 (fr) | 1993-01-22 |
EP0524070B1 (de) | 2000-02-09 |
EP0524070A1 (de) | 1993-01-20 |
FR2679352B1 (fr) | 1996-12-13 |
JPH05204835A (ja) | 1993-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69230656T2 (de) | Universelle Koppeleinrichtung zwischen einem Rechnerbus und einer Steuereinheit einer Gruppe von Periphergeräten | |
DE68917388T2 (de) | Rechneranlage mit einer zentralen Zwischenverbindung. | |
DE69936225T2 (de) | Gleichzeitige serielle verbindung zur integrierung von funktionellen blöcken in eine integrierte schaltungsvorrichtung | |
DE69229473T2 (de) | Verfahren und vorrichtung zum puffern von daten in nachrichtennetzwerkstationen | |
DE3854361T2 (de) | Programmierbare Protokollvorrichtung. | |
DE3751091T2 (de) | Übertragungsprotokoll zwischen Prozessoren. | |
DE69317481T2 (de) | Ein-/Ausgabesteuerungssystem und Verfahren | |
DE3689226T2 (de) | Multiprozessorsystem mit multihierarchischen Ebenen. | |
DE3689198T2 (de) | Systembus für Kommunikation zwischen Prozessoren. | |
DE2455803C2 (de) | Mehrprozessor-Datenverarbeitungsanlage | |
DE69429773T2 (de) | Zellenvermittlung und verfahren zur weglenkung von zellen durch diese vermittlung | |
DE3642324C2 (de) | Multiprozessoranlage mit Prozessor-Zugriffssteuerung | |
DE3586486T2 (de) | Interface-vorrichtung zwischen mindestens einem kanal und mindestens einem bus. | |
CH656728A5 (de) | Schnittstellenschaltungsanordnung zur verbindung eines prozessors mit einem nachrichtenkanal. | |
DE2921419A1 (de) | Schaltungsanordnung und verfahren zur uebertragung digitaler information zwischen wenigstens einer ersten und einer zweiten sammelleitung | |
DE69816714T2 (de) | Instrumentationsanordnung für eine Maschine mit nichtuniformen Speicherzugriffen | |
EP0185260B1 (de) | Schnittstelle für direkten Nachrichtenaustausch | |
EP0184706B1 (de) | Schnittstelleneinrichtung | |
DE3586491T2 (de) | Kohaerentes interface mit zurueckgeschleiftem empfangsspeicher. | |
DE69222485T2 (de) | Datenspeicherungssystem für eine Übertragungssteuerungsschaltung | |
DE69031673T2 (de) | Schnittstelle zur Verbindung von einem Rechnerbus mit einem faseroptischen Ringnetzwerk | |
DE3142504A1 (de) | Mehrfachplattenspeicher-uebertragungssystem | |
DE69325135T2 (de) | System zur Datenübertragung zwischen einem Rechnerbus und einem Hochgeschwindigkeitsringnetzwerk | |
DE69719123T2 (de) | System zur Datenverarbeitung und -kommunikation mit PCI-Hochdurchsatzbus | |
DE69330194T2 (de) | Anordnung zur Datenübertragung zwischen einem Computer-Bus und einem Massenspeicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |