-
HINTERGRUND DER ERFINDUNG
-
(1) Technisches Gebiet
-
Die vorliegende Erfindung betrifft
das Gebiet der Steuerschaltungen und insbesondere durch Automaten
implementierte Steuerschaltungen zur Steuerung des Zugangs zu der
Schnittstellenschaltung eines Moduls eines verteilten Prozeßsteuersystems, durch
die die Submodule eines Moduls kommunizieren.
-
(2) Allgemeiner Stand
der Technik
-
Verteilte Prozeßsteuersysteme, wie z. B. das TDC
3000 von Honeywell Inc., liefern ein computerisiertes Anlagenmanagementsystem,
wovon eine Version in dem US Patent 4,607,256, ausgegeben am 19.8.1986,
beschrieben und beansprucht wird. Jedes solche Prozeßsteuersystem
enthält
mehrere verschiedene Arten von Modulen, wobei jedes Modul ein gemeinsames
Kern-Submodul enthält. Außerdem enthält jedes
Modul ein Peripherie-Submodul, wobei die Funktionen und Strukturen
des Peripherie-Submoduls jeweils im allgemeinen verschieden sind.
Die gesamte Kommunikation zwischen einem gegebenen Modul und anderen
Modulen des Systems erfolgt über
den lokalen Steuernetzbus (LCN) BUS des Netzwerks, wobei der Zugang
zu dem LCN über
das Kern-Submodul jedes Moduls erfolgt. Die Kommunikation zwischen
einem Kern-Submodul und seinem zugeordneten Peripherie-Submodul
erfolgt durch eine Schnittstellenschaltung. Alle Hardware- und Softwarekomponenten
der Kern- und Peripherie-Submodule vorbekannter Module waren speziell so
ausgelegt, daß sie
die von einem gegebenen Modul geforderten Funktionen durchführen.
-
Die Leistungsfähigkeit kommerziell erhältlicher
PCs (Personal Computers), ihrer zugeordneten Peripheriegeräte und damit
zusammenhängender Betriebssystemsoftware
hat mit einer einhergehenden Verringerung ihrer Kosten in den letzten
Jahren drastisch zugenommen. Also ist es wünschenswert, handelsübliche PCs,
Peripheriegeräte
und Software in das Peripherie-Submodul eines Moduls, wie z. B. eines
universellen Bedienerstationsmoduls zu integrieren, anstelle der
spezialisierten Hardware- und Softwarekomponenten des Peripherie-Submoduls
z. B. eines Bedienerstationsmoduls eines solchen Systems. Das Problem
dabei besteht darin, daß die
handelsübliche
Hardware und Software unter Verwendung von handelsüblichen
Industriestandard-BUS-Protokollen kommuniziert, wofür ein Beispiel
der PCI-BUS (Peripheral Component Interconnect) und das Zeichengabeprotokoll
sind. Leider ist der PCI-BUS und das Zeichengabeprotokoll nicht
mit dem BUS und Zeichengabeprotokoll des Modul-BUS kompatibel. In
der oben identifizierten Querverweis-Patentanmeldung mit dem Titel „Improved
Universal Operator Station Module for a Distributed Process Control
System" wird eine
Lösung
für dieses Problem
gelehrt, bei der eine Schnittstellenschaltung einem Kern-Submodul
eines gegebenen Moduls erlaubt, durch eine neue Schnittstellenschaltung
mit seinem zugeordneten Peripherie-Submodul zu kommunizieren, das
in handelsüblicher
Hardware und Software implementiert ist, ohne daß die Hardware- und Softwarekomponenten
des Kern-Submoduls verändert
werden müssen.
Die Steuerschaltung der vorliegenden Erfindung steuert die Funktionsweise der
Schnittstellenschaltung und den Zugang zu der Schnittstellenschaltung
durch die Submodule des Moduls.
-
KURZE DARSTELLUNG
DER ERFINDUNG
-
Die vorliegende Erfindung liefert
ein in Anspruch 1 definiertes System.
-
Das System kann ein beliebiges oder
mehrere der Merkmale der abhängigen
Ansprüche
2 bis 7 enthalten.
-
Die vorliegende Erfindung liefert
eine Steuerschaltung für
die Schnittstellenschaltung, wobei die Schnittstellenschaltung über die
Schnittstellenschaltung zwischen einem Kern-Submodul und einem Peripherie-Submodul eines Moduls
eines verteilten Prozeßsteuersystems
Kommunikation ermöglicht.
Die Komponenten des Peripherie-Submoduls sind standardmäßige handelsübiche elektronische
Komponenten und zugeordnete Software solcher Hardware. Die Struktur
und Protokolle des Modul-BUS des Kern-Submoduls ist mit der Struktur
und dem Protokoll des handelsüblichen
BUS des Peripherie-Submoduls, wie z. B. einem PCI-BUS (BUS bedeutet
im folgenden einen beliebigen Bus, der ein Element der vorliegenden
Erfindung bildet) inkompatibel. Die Steuerschaltung wird durch drei
Automaten implementiert. Einer ist die Arbiterschaltung bzw. ein
Arbiterautomat (ARSM), der zweite ist der PCI-Zielautomat (PTSM)
und der dritte ist der Modul-BUS-Automat
(MBSM). Der Arbiterautomat bestimmt, welcher BUS, der Modul-BUS
des Kern-Submoduls oder der PCI-BUS des Peripherie-Submoduls, Zugang
zu den Komponenten der Schnittstellenschaltung hat, als Reaktion
auf Steuersignale aus dem Modul-BUS-Automaten und dem PCI-Automaten.
-
Das PCI-Protokoll, so wie es durch
Signale auf dem PCI-BUS dargestellt wird, wird von dem PTSM interpretiert.
Die Funktion des PTSM ist es, aus dem PCI-BUS empfangene Signale
zu detektieren, um zu bestimmen, welche Komponente der Schnittstellenschaltung
solche Signale adressiert sind und wann solche Signale übertragen
werden. Zusätzlich
erzeugt der PTSM Steuersignale für
den ARSM und den MBSM.
-
Der MBSM erzeugt Modul-BUS-Steuersignale,
durch die das Kern-Submodul eines der Register der Schnittstellenschaltung,
auf das der Modul-BUS zugreifen darf, lesen oder beschreiben kann.
Der MBSM erzeugt außerdem
Modul-BUS-Steuersignale,
die die Ausführung
einer Direktspeicherzugriffsoperation durch das Peripherie-Submodul auf oder
von dem Speicher des Kern-Submoduls ermöglichen.
-
Eine Aufgabe der vorliegenden Erfindung
ist deshalb die Bereitstellung einer verbesserten Steuerschaltung
für die
Schnittstellenschaltung eines Bedienerstationsmoduls eines verteilten
Prozeßsteuersystems.
-
Eine weitere Aufgabe der vorliegenden
Erfindung ist die Bereitstellung einer verbesserten Steuerschaltung
für die
Schnittstellenschaltung eines Moduls eines verteilten Prozeßsteuersystems,
die mehrere Automaten enthält.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
Weitere Aufgaben, Merkmale und Vorteile der
Erfindung werden aus der folgenden Beschreibung einer bevorzugten
Ausführungsform
in Verbindung mit den beigefügten
Zeichnungen ohne weiteres ersichtlich, obwohl innerhalb des Gedankens
und Schutzumfangs der neuartigen Konzepte der Offenlegung Varianten
und Modifikationen bewirkt werden können. Es zeigen:
-
1 ein
Blockschaltbild eines universellen Bedienerstationsmoduls, das eine
Schnittstellenschaltung enthält,
die die Steuerschaltung der vorliegenden Erfindung verwendet;
-
2 ein
Blockschaltbild der Schnittstellenschaltung, wobei die Hauptkomponenten
der Steuerschaltung von 1 dargestellt
sind;
-
3 ein
Zustandsdiagramm für
den Arbiterautomaten;
-
4 ein
Zustandsdiagramm des Modul-BUS-Zustands; und
-
5 ein
Zustandsdiagramm des PCI-Zielautomaten.
-
BESCHREIBUNG
DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
-
Mit Bezug auf 1 enthält das Modul 56 die Schnittstellenschaltung 58,
mittels derer das Kern-Submodul 16' mit den Komponenten
des Peripherie-Submoduls 59 des
Moduls 56 kommuniziert. Die Verbindung zwischen der Schnittstellenschaltung 58 und
dem Kern-Submodul 16' erfolgt mittels
des Modul-BUS 18',
und die Verbindung zwischen der Schnittstellenschaltung 58 und
den Komponenten des Peripherie-Submoduls 59 mittels des
lokalen PCI-BUS 60 (Peripheral Component Interconnect). Es
sollte beachtet werden, daß PCI-Busse
in vielen handelsüblichen
Produkten verwendet werden. Der PCI-BUS 60 besteht aus
einem einzigen 32-Bit-BUS, auf dem Adressen und Daten, Befehle und
Bytespursteuerungen gemultiplext werden, plus Steuer- und Interrupt-Leitungen. Der Modul-BUS 18' besteht aus zwei
Bussen, einem Daten-BUS 19' von
zweiunddreißig
Bit und einem Adressen-BUS 20' von 24 Bit, plus Interrupt- und
Steuerleitungen.
-
2 ist
ein Blockschaltbild der Schnittstellenschaltung 58 des
Moduls 56. Die Kommunikation zwischen dem Kern-Submodul 16' und der Schnittstellenschaltung 58 erfolgt
mittels des Modul-BUS 18',
der den Daten-BUS 19',
den Adressen-BUS 20' und
entsprechende Interrupt- und
Steuerleitungen enthält.
Die Kommunikation zwischen der Schnittstellenschaltung 58 und
den Komponenten des Peripherie-Submoduls 59 des Moduls 56 erfolgt
mittels des PCI-BUS 60 und entsprechender Interrupt- und
Steuerleitungen.
-
Die Funktion der Schnittstellenschaltung 58 ist
das Umsetzen von Signalen aus dem PCI-BUS 60, der sein
eigenes Zeichgabeprotokoll aufweist, in Signale, die das Signalprotokoll
des Modul-BUS 18' erfüllen, und
das Umsetzen von Signalen aus dem Modul-BUS 18' in Signale,
die das Signalprotokoll des PCI-BUS 60 erfüllen. Zusätzlich implementiert die
Schnittstellenschaltung 58 die erforderlichen Hardwarebetriebsmittel
zur Unterstützung
des Kommunikationsprotokolls, das von dem Prozeßsteuersystem verwendet wird,
in dem das Modul 56 eine Komponente ist. Bei der bevorzugten
Ausführungsform
ist das Prozeßsteuersystem
ein TDC 3000 von Honeywell Inc. Bereiche der Adressen auf dem Moduladressen-BUS 20' definieren
Adressen von Daten im Speicher oder Hardwarekomponenten beider Submodule;
d. h. Operanden, Anweisungen, Befehle oder eines der Steuerregister
des Registerblocks 83. Zum Beispiel enthält einer
der Bereiche von Adressen Adressen zur Auswahl eines der Steuerregister 27', 28' oder 30'. Jedes der
Steuerregister 27', 28' und 30' wird von dem
Kern-Submodul 16' zur
Steuerung der Funktionsweise von Komponenten des Peripherie-Submoduls 59,
wie zum Beispiel eines Drucker 84, einer Platte 62,
einer CRT 82 usw., verwendet.
-
Das PCI-Protokoll, genauer gesagt,
Signale auf dem PCI-BUS 60, werden durch den PTSM 85 interpretiert,
und das Modul-BUS-Protokoll, genauer gesagt, Steuersignale aus dem
Kern-Submodul 16', werden
durch den MBSM 86 interpretiert. Steuersignale, wie zum
Beispiel FRAME, IRDY, C/BE[3..0], informieren das Ziel, wie zum
Beispiel die SCSI-Steuerung 64, an die die Signale adressiert
werden, wann Daten über
den PCI-BUS 60 übertragen
werden. Es ist eine Funktion des PTSM 85, solche Signale
zu detektieren, um zu bestimmen, welche Steuersignale zu dem MBSM 86,
dem ARSM 90 und zu welchem der Schnittstellenregister 88 gesendet
werden müssen.
Zusätzlich
erzeugt der PTSM 85 auch von dem PCI-BUS-Protokoll benötigte PCI-Steuersignale.
Der PTSM 85 schreitet synchron mit den an ihn angelegten
PCI-Taktsignalen zu verschiedenen Zuständen voran. Der PCI-Automat 85 kann
in einem bestimmten Zustand verweilen, während er entweder auf ein PCI-BUS-Signal
oder -Signale oder auf Steuersignale aus dem MBSM 86 wartet.
-
Der ARSM 90 ist ein synchroner
Automat, dessen Zustandsdiagramm in 3 dargestellt
ist. Der ARSM 90 bestimmt, wer von BUS, PCI-BUS 60 oder
dem Modul-BUS 18' Zugang
zu einem der Schnittstellenregister 88 hat. Zu den Schnittstellenregistern 88 gehören Register 118 des
lokalen Steuernetzprozessors (LCNP) und Register 119 des
Debug-Ports (DP), Steuerregister 27', 28' und 30' des Registerblocks 83 und
das PCI-Konfigurationsraumregister 94. Der ARSM 90 steuert
außerdem
PCI-Zugriffe auf den Adress-BUS 96 und den Daten-BUS 98.
Es sollte beachtet werden, daß der
Modul-BUS 20' weder
Zugang zu den Registern 94 noch zu dem PCI-BUS 60 hat.
Der Zugang durch den PCI-BUS 60 zu den Registern 94 wird
ebenfalls durch den Arbiter 90 gesteuert.
-
Der Modul-BUS-Automat (MBSM) 86 ist
ein synchroner One-Hot-State-Automat, dessen Zustandsdiagramm in 4 dargestellt ist. Der MBSM 86 erzeugt
MBSM-Steuersignale, durch die das Kern-Submodul 16' ein Register
der Debug-Port Register 119 oder eines Steuerregisters
des Steuerregisterblocks 83 lesen oder beschreiben kann.
Der MBSM 86 erzeugt Modul-BUS-Steuersignale, durch die das Peripherie-Submodul 59 eine
Direktspeicherzugriffsoperation (DMA-Operation) zu oder von dem DRAM 24' des Kern-Submoduls 16' ausführen kann. Der
MBSM 86 steuert die Zeitsteuerung aller Zugriffe auf beliebige
der Register der Schnittstellenregister 88 durch das Kern-Submodul 16'. Außerdem steuert der
MBSM 86 die Zeitsteuerung von DMA-Zyklenzugriff auf den
DRAM 24' über den
Modul-BUS 20'. Folglich
werden in der Schnittstellenschaltung 58 keine getrennten
DMA-Schaltungen benötigt.
Der MBSM 86 schreitet synchron mit den an ihn angelegten
PCI-Taktsignalen zu verschiedenen Zuständen voran und wechselt zu
dem nächsten
Zustand oder verweilt in einem gegebenen Zustand abhängig von Steuersignalen
aus dem Modul-BUS 16',
dem PCI-Automaten 85 und dem Arbiter 90. Außerdem steuert
der MBSM-Automat 86 die PCI-Interrupt-Erzeugung.
-
Der PTSM 85 ist ein synchroner One-Hot-State-Automat,
dessen Zustandsdiagramm in 5 dargestellt
ist. Der PTSM 85 enthält
Schaltungen zum Prüfen
an ihn angelegter PCI-Adressen; und wenn eine Adresse in einem der
identifizierten Bereiche der PCI-Konfigurationsraumregister 94 liegt,
wird eine Anforderung eines Zugriffs auf den Modul-BUS 20' durch das Steuersignal
PCI_REQ dem ARSM 90 signalisiert. Der Modul-Bus 20' wird durch
den ARSM 90 gesteuert, um zu verhindern, daß das Kern-Submodul 16' Zugang zu den
Schnittstellenregistern 88 der Schnittstellenschaltung 58 hat,
um entweder Daten aus den Registern 88 zu lesen oder in
diese zu schreiben, wenn der PCI-BUS 60 Zugang zu den Steuerregistern 88,
dem DRAM 24' oder
den Statusregistern des Kern-Submoduls 16' hat. Der MBSM 86 steuert
die Zeitsteuerung von Zugriffen durch das Kern-Submodul 16' auf die Schnittstellenregister 88,
und wenn der Schreib- oder Lesezyklus abgeschlossen ist, gibt der
MBSM 86 die Steuerung des Modul-BUS 20' an den Prozessor 22' des Kern-Submoduls 16' zurück.
-
Anforderungen eines Zugangs zu einem
beliebigen der Schnittstellenregister 88 der Schnittstellenschaltung 58 oder
zu dem DRAM 24' des Kern-Submoduls 16' werden durch
den ARSM 90 geroutet, der entscheidet, welches Submodul,
das Kern-Submodul 16' oder
das Peripherie-Submodul 59,
oder kürzer
der PCI-BUS 60 oder der Modul-BUS 18', Zugang erhält, wenn sich solche Anforderungen überlappen.
Der ARSM 90 ist parteiisch, um dem PCI-BUS Zugang zu gewähren, wenn
solche Anforderungen gleichzeitig gestellt werden. Zugriffszyklen werden
entweder dadurch eingeleitet, daß der PTSM 85 in einen
Zustand eintritt, der das Übertragen
eines Anforderungssignals zu dem ARSM 90 bewirkt, oder dadurch,
daß die
Adressendecodierungslogikschaltung (ADL-Schaltung) 108 eine
Adresse in dem richtigen Bereich auf dem Modul-Adressen-BUS 20' decodiert.
-
3, 4 und 5 sind Zustandsdiagramme der Zustände des
Arbiterautomaten (ARSM) 90, des Modul-BUS-Automaten (MBSM) 86 bzw.
des PCI-Zielautomaten (PTSM) 85. In diesen Figuren ist
der Zustand eines Automaten, wie zum Beispiel des ARSM 90,
als ein Kreis mit dem Namen oder der Abkürzung für den in dem Kreis positionierten
Zustand, wie zum Beispiel den „IDLE"-Zustand in 3, dargestellt. Ein Steuersignal,
das durch den ARSM 90 erzeugt wird, wenn er sich in seinem
PCI_GNT-Zustand befindet, wird in einer Ellipse positioniert, die
durch eine Leitungslinie mit dem Kreis verbunden ist, der diesen Zustand
darstellt. Als Beispiel erzeugt der ARSM 90, wenn er sich
in seinem PCI_GNT-Zustand befindet, das ARSM-Steuersignal PCI_GNT
= TRUE. Der ARSM 90 verweilt in seinem PCI_GNT-Zustand,
solange das PCI_REQ-Steuersignal an den ARSM 90 angelegt
ist. Dies wird durch einen Bogen mit einem Pfeil, der den einen
Zustand definierenden Kreis schneidet, angedeutet. Der Name des
Steuersignals ist neben ihm gedruckt. Als Beispiel verweilt der ARSM 90 in
seinem PCI_GNT-Zustand, solange das Steuersignal PCI_REQ durch den
PTSM 85 an den ARSM 90 angelegt wird.
-
Der PTSM-Automat (PTSM) 85 gibt
als Reaktion auf das Vorhandensein einer PCI-Adresse auf dem PCI-BUS 60 ein
Anforderungssignal (PCI_REQ) aus, wobei die Adresse einem der Register 88 der Schnittstellenschaltung
oder des DRAM-Speichers 24' zugeordnet
ist, wenn diese Adressen durch Adressenprüfschaltung des PTSM 85 erkannt
werden; dieses Signal PCI_REQ bewirkt, daß der ARSM 90 von
seinem IDLE-Zustand zu dem Zustand REQUEST BUS wechselt. Der ARSM 90 tritt
aus diesem Zustand aus, wenn das Modul-BUS-Gewährungs-MBBGNT-Signal über einen der Steuerleitungen
des Modul-BUS 18 empfangen wird, und zu diesem Zeitpunkt
erfolgt der Eintritt in den Zustand PCI_GNT. Dieser Zustand wird
gehalten, bis das Signal-PCI_REQ-Anforderungssignal
entfernt wird. Der PCI_GNT-Zustand bewirkt das Einleiten zwei weiterer
gleichzeitiger Zustände.
Einer ist der PCI_GNTFF-Zustand, wobei dieser Zustand verwendet
wird, um einen Wiedereintritt in den PCI_GNT-Zustand zu verhindern,
wenn ein weiteres PCI_REQ-Signal direkt nach dem vorherigen PCI_GNT-Zustand auftritt.
Dadurch kann der Modul-BUS 18' Zugang zwischen Back-to-Back-PCI-Zugriffszyklen
erhalten. Der andere Zustand ist, abhängig von den Betriebsmitteln
der Schnittstellenschaltung 58, auf die durch den PCI-BUS
zugegriffen wird, einer von vier möglichen Zuständen. Der
erste solche mögliche
Zustand ist der Speichergewährungszustand
MEMGNT, der einen Zugriff von PCI auf DRAM 24' autorisiert.
In diesen Zustand des ARSM 90 wird eingetreten, wenn die
Adresse, auf die durch den PCI-BUS 60 zugegriffen wird,
in dem Bereich 80000-FFFFF (hexadezimal) liegt. Wenn dies der Fall
ist, erzeugt die Adressendecodierungslogikschaltung (ADL) 108 das ADL-Steuersignal
PCI TO DRAM DECODE, das zu dem ARSM 90 gesendet wird. Der
zweite solche mögliche
Zustand ist der Registergewährungszustand
REGGNT, der den Zugriff von PCI auf eines der Steuerregister 83 autorisiert.
Der ARSM 90 tritt in seinen REGGNT-Zustand ein, wenn die
Adresse auf dem PCI-BUS 60 in dem Bereich 43000-45FFF (hexadezimal)
liegt, wodurch bewirkt wird, daß der
ADL 108 das ADL-Steuersignal PCI TO REG DECODE erzeugt.
Der dritte solche Zustand ist der Steuergewährungszustand CNTLGNT, der
einen Zugriff von PCI auf LCNP-Steuerregister 118 oder
Debug Port Register 119 des Registerblocks 92 autorisiert.
In den CNTLGNT-Zustand wird eingetreten, wenn die durch den Adressenmultiplexer 110 an
den ADL 108 angelegte PCI-Adresse in dem Bereich E000-EC00
oder in dem Bereich 50000 bis 50004 (hexadezimal) liegt, wodurch
bewirkt wird, daß der
ADL 108 das ADL-Steuersignal PCI TO LCNP CONTROL REGS DECODE-Signal
zu ARSM 90 anlegt. Der vierte und letzte dieser Zustände ist
der Konfigurationsgewährungszustand
CFGGNT, in den der ARSM eintritt, wenn der PCI-BUS 60 auf
Konfigurationsregister 94 zugreift. In den CFGGNT-Zustand
wird eingetreten, wenn die an den ADL 108 angelegte PCI-Adresse
die des Registers 94 ist, wodurch bewirkt wird, daß der ADL 108 das
ADL-Steuersignal PCI TO CONFIG REGISTER DECODE anlegt, das an den
ARSM 90 anzulegen ist. Diese vier Zustände schließen sich gegenseitig aus. Während eines
gegebenen PCI-Zyklus
wird nur in einen der vier Zustände
eingetreten. Dieser Zustand wird gehalten, bis das PCI_REQ-Signal
entfernt wird.
-
Der Empfang eines MODBUS-Anforderungssignals
aus dem ADL 108 durch den ARSM 90 bewirkt, daß der ARSM 90 in
seinen MODBUS_GNT-Zustand eintritt, wenn das PCI_REQ-Signal nicht
aktiv ist. Der ADL 108 erzeugt das Steuersignal MODBUS
REQUEST, wenn die an den ADL 108 angelegte Adresse aus
dem Kern-Submodul 16' stammt
und in dem Adressenbereich 43000-45FFF (hexadezimal) liegt. Wenn
beide Steuersignale MODBUS REQUEST und PCI_REQ gleichzeitig aktiv
sind, hat PCI_REQ Priorität
und es wird nicht in den MODBUS_GNT-Zustand eingetreten. Es wird
nicht in den PCI_GNT-Zustand eingetreten, wenn sich PCI_GNTFF in
seinem gesetzten Zustand befindet. Der MODBUS_GNT-Zustand leitet, wenn
in ihn eingetreten wird, d. h. kein PCI_REQ-Signal vorliegt, gleichzeitig
einen weiteren Zustand ein, den MODBUS_GNTFF-Zustand. Der MODBUS_GNTFF-Zustand
verhindert den Eintritt in den MODBUS_GNT-Zustand am Ende eines
Modul-BUS-Zugriffszyklus. Dies ermöglicht einen PCI-Zugriffszyklus,
wenn es Back-to-Back-Modul-BUS-Zyklusanforderungen gibt. Der MODBUS_GNT-Zustand
wird gehalten, bis das Signal MODBUS REQUEST entfernt wird.
-
Mit Bezug auf 4 weist der Modul-BUS-Automat (MBSM) 86 drei
Steuerwege auf. Der erste Weg ist der Weg von PCI zum Modul-BUS(PMB).
Jeder PCI-Zugriff auf den DRAM 24' des Kern-Submoduls 16' oder auf Schnittstellenregister 27', 28' oder 30' des Registerblocks 83 der Schnittstellenschaltung 58 wird
durch den ARMS 90 angezeigt, der sich in seinen Zuständen MEMGNT oder
REGGNT befindet. Die ARSM-Steuersignale MEMGRNT = TRUE oder REGGNT
= TRUE aus diesen Zuständen,
die an den MBSM 86 angelegt werden, starten den MBSM 86 auf
seinem PM-Weg. In dem ersten Zustand PMBS2 wird das Modulgewährungsbestätigungssignal
(MBGACK = TRUE) zu dem Kern-Submodul 16' gesendet. Der MBSM 86 geht dann
unbedingt am nächsten
Taktsignal zu seinem PMBS3-Zustand über. In diesem Zustand wird
das Adressenausgangsfreigabesteuersignal ADDOE gesetzt. Das Datenausgangsfreigabesignal
DATAOE wird gesetzt, wenn der PCI-Zyklus ein Schreibzyklus ist (MBRW
nicht gesetzt). Wenn es gesetzt ist, ermöglicht das ADDOE-Signal das
Anlegen eines Adressensignals an den Moduladressen-BUS 20'. Das Datenausgabefreigabesignal
DATAOE wird gesetzt, wenn der PCI-Zugriffszyklus ein Schreibzyklus ist
und das Modul-BUS-Lese-/Schreibsignal (MBRW) auf einen Wert gesteuert
wird, der ein Schreiben bedeutet. Der MBSM 86 geht dann
unbedingt in seinen PMBS4-Zustand über, in dem er das Adressen-Strobe-Signal MBBAST setzt.
Der MBSM 86 geht dann unbedingt zu seinem PMBS5-Zustand
voran, in dem er verweilt, bis er entweder ein Modul-BUS-Fehlersignal
(MBBERR) empfängt,
wobei er in diesem Fall zu seinem PMBS8-Zustand voranschreitet,
oder er ein Modul-BUS-Datenbestätigungssignal
(MBDACK = FALSE) aus dem Kern-Submodul 16' empfängt. Der Empfang
eines MBDACK-Signals läßt den MBSM 86 zu
seinem PMBS6-Zustand übergehen.
Es kommt zu keinen Signaländerungen,
während
sich der MBSM 86 in seinem PMBS6-Zustand befindet, was
als eine Verzögerung
von einem Takt verwendet wird. Der MBSM 86 schreitet dann
zu seinem PMBS7-Zustand voran. Wiederum kommt es zu keinen Signaländerungen,
während
sich der MBSM 86 in seinem PMBS7-Zustand befindet, wodurch
eine zweite Zeitverzögerung
von einer Taktperiode bereitgestellt wird, woraufhin der MBSM 86 zu
seinem PMBS8-Zustand übergeht.
In seinem PMSM8-Zustand setzt der MBSM 86 ein Voranschreitungsbereitschaftssignal READY
an den PTSM 85. Der MBSM 86 schreitet dann unbedingt
zu seinem PMBS9-Zustand voran, in dem die Signale MBBAST und DATAOE
zurückgesetzt
werden; d. h. FALSE sind, bevor unbedingt zu seinem PMBS10-Zustand
vorangeschritten wird. In dem PMBS10-Zustand wird das Signal ADDOE
zurückgesetzt.
Der MBSM86 geht dann unbedingt zu seinem PMBS11-Zustand über, in
dem er verweilt, bis der PTSM 85 in seinen TURN AR-Zustand
eintritt, der durch Signal T4 dargestellt wird. Das Steuersignal
T4 zeigt an, daß der
PCI-BUS 60 das Ende des PCI-Zugriffszyklus bestätigt hat.
Wenn das Steuersignal T4 gesetzt wird, kehrt der MBSM 86 zu
seinem IDLE-Zustand zurück,
in dem die Signale MBGBACK und READY zurückgesetzt werden.
-
Der zweite Steuerweg des MBSM 86 ist
der Weg von dem Modul-BUS 18' zu
einem der Steuerregister des Blocks 83, der als der MR-Weg
in 4 identifiziert ist.
In den MR-Weg wird eingetreten, wenn der ARSM 90 in seinen
MODBUS_GNT-Zustand eintritt und das MODBUS_GNT-Signal erzeugt, das
an den MBSM 86 angelegt wird. Nach dem Empfang dieses Signals
schreitet MBSM 86 zu seinem MRS1-Zustand voran. In diesem
Zustand wird das Datenausgabefreigabesignal (DATAOE = READ) gesetzt,
wenn der Zugriffszyklus ein Modul-BUS-Lesen ist (das Modul-BUS-Lese-/Schreibsignal
MBRW ist gesetzt), oder der Zyklus ein Interrupt-Bestätigungszyklus
ist (MBIACK ist gesetzt). Das Modul-BUS-Schreib-Strobe-Signal MOD_WRTSTB
wird gesetzt, wenn der Zyklus ein Schreiben ist (MBRW zurückgesetzt).
In den nächsten
Zustand MRS2 wird unbedingt eingetreten. In diesem Zustand wird
das Modul-BUS-Schreibe-Strobe-Signal (MOD_WRTSTB) gesetzt, wenn
der Zyklus ein Modul-BUS-Schreiben ist. In den nächsten Zustand MRS3 wird unbedingt
eingetreten und das Modul-BUS-Datenbestätigungssignal (MBDACK) gesetzt.
Der MBSM 86 verweilt in diesem Zustand, bis eine drei Bedingungen
auftritt. Eine Bedingung ist der Empfang eines Modul-BUS-Fehlersignals
MBBERR aus dem Kern-Submodul 16', und in diesem Fall kehrt der
MBSM 86 zu seinem IDLE-Zustand zurück. Wenn das Modul-BUS-Interrupt-Bestätigungssignal (MBIACK)
gesetzt ist, bleibt der MBSM 86 in seinem MRS3-Zustand.
Andernfalls wird auf das Setzen eines Modul-BUS-Schlitzadressen-Strobe-Signals MBSAST
und eines Modul-BUS-Adressen-Strobe MBBAST geprüft. Wenn beide diese Signale
wahr sind, verweilt der MBSM 86 in seinem MRS3-Zustand. Wenn
beide diese Signale zurückgesetzt
oder falsch sind, schreitet der MBSM 86 zu seinem MRS4-Zustand
voran, in dem das Datenbestätigungsignal
MBDACK zurückgesetzt
wird. Der MBSM 86 tritt dann unbedingt in seinen IDLE-Zustand
ein, in dem das Datenausgabefreigabesignal DATAOE zurückgesetzt
wird.
-
Der dritte Steuerweg des MBSM 86 ist
der Weg von PCI zu LCNP-Steuerregister 118 oder zu PCI-Konfigurationsregistern 94,
der REG-Weg. Wenn der ARSM 90 in seinen Steuergewährungszustand
CNTLGNT oder seinen Konfigurationsgewährungszustand CFGGNT eintritt,
bewirken die von diesem Zustand gesetzten Steuersignale, daß der MBSM 86 in
seinen REG-Weg eintritt. Im ersten Zutand dieses Weges wird REGS1,
das Modul-BUS-Gewährungsbestätigungssignal
(MBGACK), gesetzt. In REGS2 wird unbedingt bei dem Empfang des nächsten Taktsignals
eingetreten, wobei das READY-Signal für PTSM 85 gesetzt
wird. Der nächste
Zustand REGS3, in den ebenfalls unbedingt eingetreten wird, ist
eine Verzögerung
von einer Taktzeit wie der Zustand REGS4. In den Zustand REGS5 des
MBSM 85 wird unbedingt eingetreten, und der MBSM 86 verweilt
dort, bis sowohl das PCI_REQ- als auch das MBGNT-Signal zurückgesetzt
sind. Wenn dies geschieht, kehrt der MBSM 86 zu seinem
IDLE-Zustand zurück
und die Signale READY und MBGACK werden zurückgesetzt.
-
Mit Bezug auf 5 unterstützt der PTSM 85 2
Arten von Zugriffszyklen, Konfigurationszugriffe und Speicherzugriffe.
Konfigurationszugriffe erfolgen für Lesevorgänge von und Schreibvorgänge in PCI-Konfigurationsraumregister 94,
wie durch die PCI-Spezifikation Ref. 2.0 definiert wird. Speicherzugriffe
sind Lesevorgänge
aus oder Schreibvorgänge in
beliebige(n) der Register des Blocks 83, Block 92 oder
in den DRAM 24' des
Kern-Submoduls 16'.
Die meisten der Zustände
des PTSM 85 werden gemeinsam sowohl von Konfigurations-
als auch Speicherzugriffen benutzt. Der Transaktionstyp, Speicherlesen/-schreiben
oder Konfigurationslesen/-schreiben wird von dem PTSM 85 durch
Decodieren des der Schnittstellenschaltung 58 während einer
PCI-Adressenphase zugeführten
PCI-Befehls bestimmt.
-
Der Anfang der Transaktion wird durch
das Setzen des Steuersignals FRAME durch das Peripherie-Submodul 59 signalisiert,
das den PTSM 85 aus seinem IDLE-Zustand in seinen Busy-Zustand B_BUSY überführt. Der
PTSM 85 verbleibt in seinem B_BUSY-Zustand, bis eines von
drei Dingen auftritt: die Transaktion wird als ein PCI-Speicherzugriff
auf LCNP und Debug-Portregistern 92, Steuerregister 83 (Register 27', 28' und 30') oder auf den
DRAM 24' des
Kern-Submoduls 16' decodiert;
die Transaktion wird auf eine andere PCI-Entität abgezielt, die den PTSM 85 in
seinen IDLE-Zustand zurückführt; oder die
Transaktion wird als ein Konfigurationszugriff auf die PCI-Konfigurationsraumregister 94 decodiert, wodurch
der PTSM 85 in seinen DROP_RQ-Zustand überführt wird. Der Eintritt in den
DROP_REQ-Zustand bewirkt das Ausgeben eines BUS-Anforderungssteuersignals
PCI_REQ an den ARSM 90 und das Setzen des Einrichtungsauswahlsignals
DEVSEL auf dem PCI-BUS 60, wodurch angezeigt wird, daß die Schnittstellenschaltung 58 den
Zugriff angenommen hat und antworten wird. Der PTSM 85 verbleibt
in seinem DROP_REQ-Zustand, bis der MBSM 86 das Signal
READY-Signal empfängt,
wodurch der PTSM 85 in seinen XFER-Zustand überführt wird. Wenn
die Konfigurationstransaktion ein Lesen ist, bewirkt das Eintreten
in den XFER-Zustand das Setzen des PTSM-Steuersignals TRDY auf dem PCI-BUS 60,
wodurch signalisiert wird, daß die
Schnittstellenschaltung 58 bereit ist, Daten zu transferieren.
Der PTSM 85 verbleibt dann in dem XFER-Zustand bis der
Master; eine Komponente des Peripherie-Submoduls 59, die
autorisiert ist, Signale zu senden oder Signale aus dem PCI-BUS 60 zu
empfangen, wie zum Beispiel die PCI-Schnittstellenschaltung 72;
das Steuersignal IRDY setzt, und zu diesem Zeitpunkt werden Daten
transferiert. Wenn die Konfigurationstransaktion ein Schreiben ist,
bewirkt der Eintritt in den XFER-Zustand,
daß der
PTSM 85 verweilt, bis der PCI-Master der Transaktion das
Signal IRDY setzt, wodurch signalisiert wird, daß der PCI-Maser bereit ist,
Daten zu transferieren; der PTSM 85 setzt dann das Steuersignal
TRDY und die Daten werden transferiert. Vorausgesetzt, daß der Konfigurationszugriff
kein Burst-Versuch durch den Master (unter beschrieben) ist, überführt das
gleichzeitige Setzen von IRDY und TRDY den PTSM 85 in seinen
Umkehrzustand TURN_AR, der es dem PCI-Master und dem PTSM 85 erlaubt,
ihre jeweiligen PCI-Steuersignale zurückzusetzen und aufzuhören, die
Adressen- und Datensignale (AD_OE = FALSE) des PCI-BUS 60 anzusteuern
bzw. diese zurückzusetzen.
Der PTSM 85 schreitet dann unbedingt in seinen IDLE-Zustand
voran.
-
Im Fall eines Speicherzugriffs auf
Register 92 oder auf die Steuerregister 27', 28' und 30' der Schnittstellenschaltung 58 oder
auf den DRAM 24' des
Kern-Submoduls 16 wird der Anfang der Transaktion durch
das Setzen des Signals FRAME signalisiert, das den PTSM 85 aus
seinem IDLE-Zustand in seinen BUSY-Zustand überführt. Der PTSM 85 schreitet
zu seinem S_DATA-Zustand voran, wenn die Transaktion als ein Speicherzugriff
decodiert wird. Der Eintritt in den S_DATA-Zustand bewirkt das Ausgeben
eines BUS-Anforderungssignals PCI_REQ an den ARSM 90 und
das Setzen des Einrichtungsauswahlsignals DEVSEL auf dem PCI-BUS 60,
das anzeigt, das die Schnittstellenschaltung 58 den Zugriff
angenommen hat und antworten wird. Der PTSM 85 verbleibt
in seinem S_DATA-Zustand, bis das READY-Signal aus dem MBSM 86 empfangen wird.
Dadurch wird der PTSM 85 in seinen XFER-Zustand überführt. Wenn
die Speichertransaktion ein Lesen ist, bewirkt das Eintreten in
den XFER-Zustand das Setzen des Signals TRDY auf dem PCI-BUS 60,
wodurch signalisiert wird, daß die Schnittstellenschaltung
bereit ist, Daten zu transferieren. Der PTSM 85 verbleibt
dann in dem XFER-Zustand, bis der Master das Signal IRDY setzt,
und zu diesem Zeitpunkt werden Daten transferiert.
-
Wenn die Speichertransaktion ein
Schreiben ist, bewirkt der Eintritt in den XFER-Zustand, daß der PTSM 85 verweilt,
bis der PCI-Master der Transaktion das Steuersignal IRDY setzt,
wodurch signalisiert wird, daß der
Master bereit ist, Daten zu transferieren. Der PTSM 85 setzt
dann das Signal TRDY und Daten werden transferiert. Vorausgesetzt,
daß der Speicherzugriff
kein Burst-Versuch durch den Master ist, überführt das gleichzeitige Setzen
von IRDY und TRDY den PTSM 85 in seinen TURN_AR-Zustand, der
es dem Master und dem PTSM 85 erlaubt, ihre jeweiligen
PCI-Steuersignale zurückzusetzen
und mit der Ansteuerung der Adressen- und Datensignale des PCI-BUS 60 aufzuhören. Der
PTSM 85 schreitet dann unbedingt in seinen IDLE-Zustand
voran.
-
Die Schnittstellenschaltung 58 unterstützt keine
Bursts. Wenn ein PCI-Master eine Burst versucht, signalisiert der
PTSM 85 dem Master nach nur einer einzigen Datenphase (die
Signale TRDY und IRDY definieren, wenn sie beide gesetzt sind, eine Datenphase),
den Burst-Versuch zu beenden. Der Master verwendet das Steuersignal
FRAME zur Definition eines Burst-Versuchs und zum Signalisieren der
letzten Datenphase in einer Transaktion. Das Steuersignal FRAME
wird bei einer solchen Transaktion vor der letzen Datenphase zurückgesetzt.
Wenn das Signal FRAME während
einer Datenphase gesetzt wird, beabsichtigt deshalb der Master,
eine weitere Datenphase auszuführen.
Wenn das Signal FRAME nicht während
einer Datenphase gesetzt wird, ist der Master mit der letzten Datenphase
in der Transaktion beschäftigt.
Der PTSM 85 erfaßt
das Steuersignal FRAME während
des XFER-Zustands an Konfigurations- und Speicherzugriffen und reagiert
mit dem Setzen des STOP-Steuersignals auf dem PCI-BUS 60,
wenn ein Burst versucht wird. Das STOP-Steuersignal bleibt während des
Datentransfers gesetzt und signalisiert dem PCI-Master, die Transaktion
nach der aktuellen Datenphase zu beenden. Nach dem Abschluß der aktuellen
Datenphase schreitet der PTSM 85 von seinem XFER-Zustand
in seinen WAIT-Zustand voran und verbleibt in seinem WAIT-Zustand,
bis das Steuersignal FRAME zurückgesetzt
wird. Das Zurücksetzen
des Signals FRAME überführt den
PTSM in seinen TURN_AR-Zustand. Dadurch können der Master und der PTSM 85 ihre
jeweiligen PCI-Steuersignale zurücksetzen
und mit dem Ansteuern von Adressen- und Datensignalen des PCI-BUS 60 aufhören. Der
PTSM 85 schreitet dann unbedingt in seinen IDLE-Zustand
voran.
-
Das PCI-Systemfehlersignal SERR wird durch
den PTSM 85 im Fall eines katastrophalen Ausfalls des Kern-Submodus 16' oder der Schnittstellenschaltung 58 gesetzt,
oder wenn sich der PTSM 85 in seinem S_DATA- oder DRCP-RQ-Zustand
befindet, wenn ein Adressenparitätsfehler
erkannt wird. Das PCI-Paritätsfehlersignal
PERR wird durch den PTSM 85 gesetzt, wenn er sich in dem
IDLE- oder dem TURN-AR-Zustand befindet, wenn die Paritätserzeugungs-
und Prüfschaltung 114 einen Datenparitätsfehler
erkennt.
-
Aus dem obigen sollte ersichtlich
sein, daß verschiedene
Modifikationen an der bevorzugten Ausführungsform vorgenommen werden
können, ohne
vom Schutzumfang der vorliegenden Erfindung abzuweichen.