-
TECHNISCHES GEBIET DER ERFINDUNG
-
Diese
Erfindung bezieht sich allgemein auf Datenverarbeitungssysteme und
insbesondere auf Datenverarbeitungssysteme, die einen Host-Prozessor
und wenigstens einen digitalen Signalprozessor besitzen. Zwischen
den Host-Prozessor
und den (die) digitalen Signalprozessor(en) ist eine Schnittstelleneinheit
eingesetzt, um den Austausch von Daten dazwischen zu erleichtern.
-
BESCHREIBUNG DES STANDES DER
TECHNIK
-
Da
die Anforderungen nach Rechenleistung zugenommen haben, umfasst
ein Datenverarbeitungssystem, das zunehmend verwendet worden ist,
um diese Anforderung zu erfüllen,
ein Host-Verarbeitungssystem, das einen oder mehrere digitale Signalprozessoren
steuert. Der Host-Prozessor ist typischerweise ein Mikroprozessor,
jedoch kann er ein digitaler Signalprozessor sein. Der Host-Prozessor besitzt
die Flexibilität,
auf eine breite Vielfalt von Bedingungen zur reagieren und eine
passende Antwort zu liefern. Die digitalen Signalprozessoren verschaffen
spezielle Fähigkeiten,
die ein sehr schnelles Ausführen
komplexer, sich wiederholender Aufgaben ermöglichen. So können eine
oder mehrere digitale Signalverarbeitungseinheiten, die unter der Steuerung
einer Master-Verarbeitungseinheit
arbeiten, auf eine breite Vielfalt rechenintensiver Anforderungen reagieren.
Jedoch sind der (die) digitalen Signalprozessor(en) gegebenenfalls
nicht direkt kompatibel und können
sogar von verschiedenen Herstellern gefertigt sein. Um den Austausch
von Daten zwischen inkompatiblen Komponenten oder Komponenten, die
nur unter Schwierigkeit Daten austauschen können, zu ermöglichen, sind
Standard-Signalprotokolle vereinbart worden, um die geforderte Kommunalität zu verschaffen.
Als Beispiel definiert die asynchrone Übertragungsbetriebsart (asynchronous
transfer mode, ATM) Signale, die den Austausch von Datensignalgruppen
zwischen einem Host-Prozessor und einem digitalen Signalprozessor
erleichtern. Ein Protokoll ist für
die Ebene-2-Schnittstelle "Universal
Test und Operations Phy-Interface for ATM" (UTOPIA) bereitgestellt worden, um
der ATM-Forum-Standardspezifikation af-phy-0039.000 sowie weiteren anwendbaren
Standards zu entsprechen. Das UTOPIA-Protokoll definiert die Schnittstelle
zwischen der physikalischen Schicht (PHY) und dem Modul der höheren Schichten
wie etwa der ATM-Schicht und verschiedenen Management-Entitäten. Diese
Definition ermöglicht
bei ATM-Systemen über
einen weiten Bereich von Geschwindigkeiten und Medientypen eine
gemeinsame PHY. Die ATM-Zelle oder das ATM-Paket, das in diesem Protokoll übertragen
wird, enthält
in einer 8-Bit-Übertragungsbetriebsart
53 Bytes mit einem 5-Byte-Header und
48-Byte-Nutzinformationen oder in einer 16-Bit-Übertragungsbetriebsart 54 Bytes
mit einem 6-Byte-Header und 48-Byte-Nutzinformationen.
-
Das
UTOPIA-Protokoll definiert den Austausch von Datensignalen zwischen
der Master-Verarbeitungseinheit und der Slave-Verarbeitungseinheit.
Um die Daten, die typischerweise zwischen einem Kommunikationsbus
(mit relativ langsamer Geschwindigkeit) und einer der digitalen
Verarbeitungseinheit zugeordneten Direktspeicherzugriffseinheit
zu Puffern, muss eine Schnittstelleneinheit vorgesehen sein. Zusätzlich zu den
Sende- und Empfangsfunktionen, die durch die Schnittstelleneinheit
ausgeübt
werden müssen,
erfordert eine gemeinsame Konfiguration, dass eine der Verarbeitungseinheiten
des Systems in einem Master-Status bzw. Master-Zustand arbeitet,
während
eine oder mehrere damit gekoppelten Verarbeitungseinheiten einen Slave-Status
bzw. Slave-Zustand besitzen.
-
Eine
Schnittstelleneinheit, die das Utopia-Protokoll, wie es oben beschrieben
worden ist, implementiert, ist die PMC-Vorrichtung PM7339, deren
Datentransfer, der durch Anwendung von Ereignissignalsteuerung in
einem DMA-Controller ausgeführt
werden kann, anhand des INTERSIL-Bausteins 82c37A und seines zugeordneten
Datenblatts deutlich wird.
-
Die
vorliegende Erfindung schafft durch Ausnutzung einer externen DMA-Pufferung eine Utopia-Schnittstellenvorrichtung
mit erweiterter Fähigkeit.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Die
vorliegende Erfindung schafft eine Vorrichtung, wie sie in den Ansprüchen dargelegt
wird.
-
KURZBESCHREIBUNG DER ZEICHNUNG
-
Für ein vollständigeres
Verständnis
der vorliegenden Erfindung und deren Vorteile wird nun Bezug auf die
folgende genaue Beschreibung bestimmter besonderer und veranschaulichender
Ausführungsformen
und deren Merkmale und Aspekte genommen, und zwar lediglich beispielhalber
und mit Bezug auf die Figuren der begleitenden Zeichnung, worin
-
1 ein
Blockschaltplan des allgemeinen Datenverarbeitungssystems ist, das
in der Lage ist, die vorliegende Erfindung vorteilhaft zu verwenden.
-
2 ein
Blockschaltplan ist, der die Signale, die von der Schnittstelleneinheit
für asynchrone Übertragungsbetriebsart
im Slave-Sendestatus gemäß der vorliegenden
Erfindung erzeugt werden und Signale, die empfangen werden, zeigt.
-
3 ein
Zeitdiagramm für
die Signale, die von der in 2 gezeigten
Schnittstelleneinheit für
asynchrone Übertragungsbetriebsart
im Slave-Sendestatus gemäß der vorliegenden
Erfindung erzeugt und empfangen werden, ist.
-
4 ein
Blockschaltplan ist, der die Signale, die von der Schnittstelleneinheit
für asynchrone Übertragungsbetriebsart
im Slave-Empfangsstatus gemäß der vorliegenden
Erfindung erzeugt und empfangen werden, zeigt.
-
5 ein
Zeitdiagramm für
die Signale, die von der in 4 gezeigten
Schnittstelleneinheit für
asynchrone Übertragungsbetriebsart
in der Slave-Empfangsstatus-Betriebsart
gemäß der vorliegenden
Erfindung erzeugt und empfangen werden, ist.
-
6 ein
Blockschaltplan ist, der die Signale, die von der Schnittstelleneinheit
für asynchrone Übertragungsbetriebsart
im Master-Sendestatus gemäß der vorliegenden
Erfindung erzeugt und empfangen werden, zeigt.
-
7 ein
Zeitdiagramm für
die Signale, die von der in 6 gezeigten
Schnittstelleneinheit für
asynchrone Übertragungsbetriebsart
in der Master-Sendestatus-Betriebsart
gemäß der vorliegenden
Erfindung erzeugt und empfangen werden, ist.
-
8 ein
Blockschaltplan ist, der die Signale, die von der Schnittstelleneinheit
für asynchrone Übertragungsbetriebsart
im Master-Empfangsstatus gemäß der vorliegenden
Erfindung erzeugt und empfangen werden, zeigt.
-
9 ein
Zeitdiagramm für
die Signale, die von der in 8 gezeigten
Schnittstelleneinheit für
asynchrone Übertragungsbetriebsart
in der Slave-Empfangsstatus-Betriebsart
gemäß der vorliegenden
Erfindung erzeugt und empfangen werden, ist.
-
10A die Utopia-Protokoll-Signale für asynchrone Übertragungsbetriebsart,
wenn sich eine Master-Status-Datenverarbeitungseinheit in einer
Sendebetriebsart befindet und sich mehrere Slave-Status-Datenverarbeitungseinheiten
in einer Empfangsbetriebsart befinden, zeigt.
-
10B die Utopia-Protokoll-Signale für asynchrone Übertragungsbetriebsart,
wenn sich eine Master-Status-Datenverarbeitungseinheit in einer
Empfangsbetriebsart befindet und sich mehrere Slave-Status-Datenverarbeitungseinheiten
in einer Sendebetriebsart befinden, zeigt.
-
11 ein
Blockschaltplan einer Implementierung der Utopia-Schnittstelleneinheit
gemäß der vorliegenden
Erfindung ist.
-
12 die
Inhalte des Schnittstellen-Steuerregisters gemäß der vorliegenden Erfindung
zeigt.
-
13 ein
Ablaufplan ist, der die Wirkung eines EVENT-Signals in der Utopia-Schnittstellen-Slave-Sendebetriebsart
gemäß der vorliegenden
Erfindung zeigt.
-
14 ein
Ablaufplan ist, der die Wirkung eines EVENT-Signals in der Utopia-Schnittstellen-Slave-Empfangsbetriebsart
zeigt.
-
BESCHREIBUNG DER BEVORZUGTEN
AUSFÜHRUNGSFORMEN
-
In 1 ist
ein Blockschaltplan des Datenverarbeitungssystems 1, das
in der Lage ist, die vorliegende Erfindung vorteilhaft zu integrieren,
gezeigt. Das Datenverarbeitungssystem umfasst wenigstens eine digitale Signalverarbeitungseinheit 100 bis 10N,
einen Kommunikationsbus 110 und eine Master-Verarbeitungseinheit 120.
Jede digitale Signalverarbeitungseinheit 100 bis 10N umfasst
eine Zentraleinheit (oder Kern der digitalen Signalverarbeitungseinheit) 10,
eine Speichereinheit 12, eine Direktspeicherzugriffseinheit 14 und
eine UTOPIA-Schnittstelleneinheit 18. Die Schnittstelleneinheit 18 jeder
digitalen Signalverarbeitungseinheit 100 bis 10N tauscht
Signale mit dem Bus 110 aus.
-
Die
Master-Verarbeitungseinheit 120 tauscht ebenso Signale
mit dem Kommunikationsbus 110 aus. Die Schnittstelleneinheit 18 tauscht
Signale mit der Direktspeicherzugriffseinheit 14 aus. Die
Direktspeicherzugriffseinheit 14 tauscht Signale mit der
Speichereinheit 12 und anschließend mit der Kernverarbeitungseinheit 10 aus.
Es sei angemerkt, dass die Master-Verarbeitungseinheit 120 eine
digitale Verarbeitungseinheit wie etwa die digitale Signalverarbeitungseinheit 100 sein
kann.
-
In
der Tabelle 1 sind die für
UTOPIA, Ebene 2, Version 1.0 des Technischen Komitees des ATM Forums
(af-phy-0039.000) aufgelistet. Es sei angemerkt, dass optionale
Signale, die nicht in der Tabelle 1 enthalten sind, erkannt werden.
Signalname | ATM-Controller | ATM-Controller |
| Master | Slave |
| (Richtung) | (Richtung) |
Sendebetriebsart | | |
UXCLK | Ein | Ein |
UXADDR
{4:0} | Aus | Ein |
UXCLAV | Ein | Aus |
UXENB | Aus | Ein |
UXSOC | Aus | Aus |
UXDATA
{15:0} | Aus | Aus |
Empfangsbetriebsart | | |
URCLK | Ein | Ein |
URADDR
{4:0} | Aus | Ein |
URCLAV | Ein | Aus |
URENB | Aus | Ein |
URSOC | Ein | Ein |
UXDATA
{15:0} | Ein | Ein |
Tabelle
1
-
In
der Sende-Slave-Betriebsart besitzen die Utopia-Signale die folgende
Bedeutung. Das UXCLK-Signal ist ein Takteingangssignal, das durch
die Master-Verarbeitungseinheit
getrieben wird. Die UXDATA-Signale und die Sendesteuersignale sind
auf dieses UXCLK-Signal synchronisiert. Die UXADDR {4:0} sind eine 5-Bit-Adresssignalgruppe,
die durch die Master-Verarbeitungseinheit erzeugt wird. Diese Adresssignalgruppe wird
dazu verwendet, eine von mehreren (bis zu 31) Slave-Verarbeitungseinheiten
in dem System auszuwählen.
Das UXCLAV-Signal ist ein Sende-"Zelle-verfügbar"-Status-Ausgangssignal
der Slave-Verarbeitungseinheit. Den Zellenebene-Handshake bzw. -Quittungsaustausch
betreffend gibt ein 0-Logikpegel an, dass die Slave-Schnittstelleneinheit
keine vollständige
Datenzelle für
das Senden hat, während
eine logische 1 angibt, dass die Slave-Schnittstelleneinheit eine
vollständige
Datenzelle für
das Senden hat. Das UXENB-Signal ist ein Sendeschnittstellen-Freigabesignal-Eingangssignal. Dieses
Signal wird durch die Master-Verarbeitungseinheit auf Tiefpegel
gelegt, um anzugeben, dass die Slave-Verarbeitungseinheit das erste
Byte gültiger
Daten und das UXSOC-(start-of-cell)-Signal im nächsten Taktzyklus anlegen sollte.
Das UXSOC-Signal ist das Zellenstartsignal (bei Hochpegel aktiv),
das durch die Slave-Verarbeitungseinheit auf die ansteigende Flanke
des UXCLK-Signals hin erzeugt wird, um anzugeben, dass das erste
gültige
Byte der Zelle auf dem Sendedatenbus verfügbar ist. Die UXDATA-{15:0}-Signale
werden durch die Slave-Verarbeitungseinheit während der Übertragung über den Sendedatenbus auf die
ansteigende Flanke von UXCLK hin bereitgestellt.
-
In
der Empfangs-Slave-Betriebsart ist das UXCLK-Signal ein Taktsignal,
das durch die Master-Verarbeitungseinheit an die Schnittstelleneinheit
angelegt wird.
-
Die
Empfangs-Daten- und -Steuersignale werden abgetastet und sind zu
diesem Taktsignal synchron. Die URADDR-{4:0}-Signale werden durch
den Master-Prozessor
an die Schnittstelleneinheit angelegt und identifizieren eine der
(bis zu 31) Slave-Einheiten in dem System. Das URCLAV-Signal ist
das Empfangs-"Zelle-verfügbar"-Ausgangssignal von
der Slave-Schnittstelleneinheit, um anzugeben, dass die Slave-Schnittstelleneinheit
Raum verfügbar
hat, um eine Datenzelle von der Master-Verarbeitungseinheit zu empfangen.
Die Handshake-Prozedur
betreffend gibt das 0-Logikbit an, das kein Raum zum Empfangen einer
Datenzelle von der Master-Verarbeitungseinheit verfügbar ist.
Das 1-Logikbit gibt an, das Raum zum Empfangen einer Datenzelle
von der Master-Verarbeitungseinheit verfügbar ist. Das URENB-Signal
ist ein bei Tiefpegel aktives Signal, das durch die Master-Verarbeitungseinheit
erzeugt wird, um die Empfangsschnittstelle des Slave-Prozessors freizugeben.
Dieses Signal gibt an, dass die Slave-Schnittstelleneinheit das URDATA-Signal
und das URSOC-Signal während
des nächsten
Taktzyklus oder danach abtasten soll. Das URSOC-Signal wird durch
die Master-Verarbeitungseinheit erzeugt und gibt an, dass das erste
gültige
Byte der Datenzelle auf dem Empfangsdatenbus für das Abtasten durch den Slave-Prozessor verfügbar ist.
Die URDATA-{15:0}-Signale werden durch den Master-Prozessor an den
Empfangsdatenbus angelegt und auf die ansteigende Flanke des CLK-Signals
hin abgetastet.
-
Wie
aus der Tabelle 1 ersichtlicht ist, sind in der Master-Betriebsart
die UXCLAV/URCLAV- und die UXENB/URENB-Signale verglichen mit ihren
Gegenstück-Slave-Signalen
in der Richtung umgekehrt. Die Richtungsumkehr ist das Ergebnis
der unterschiedlichen Rolle, die eine Master-Betriebsart-Schnittstelleneinheit
und eine Slave-Betriebsart-Schnittstelleneinheit spielen. Ähnlich besitzen
die UXADDR- und UXADDR-Signale umgekehrte Richtungen zwischen der
Master-Betriebsart und der Slave-Betriebsart, was sich aus der Tatsache
ergibt, dass das zyklische Abfragen von der Master-Betriebsart ausgehend
stattfindet. Die Interpretation der Signale bleibt dieselbe.
-
In 2 sind
die Signale, die in der Slave-Sendebetriebsart an die UTOPIA-Schnittstelleneinheit 18 angelegt
und von dieser erzeugt werden, gezeigt. Die Schnittstelleneinheit 18 umfasst
zwei Komponenten, einen Prozessor 184, der als Zustandsmaschine
dient, und eine Pufferspeichereinheit 182. Der Prozessor 184 empfängt das
UXCLK-Signal, das UXADDR-{4:0}-Signal und das UXENB-Signal. Der Prozessor 184 erzeugt das
UXCLAV-Signal, das UXSOC-Signal und das UXDATA-{15:0}-Signal. Der
Prozessor 184 legt das WRD_RDY-Signal an die Pufferspeichereinheit 182 an
und empfängt
von dieser die DATA-{31:0}-Signale
und das CLAV-Signal. Die Pufferspeichereinheit 182 empfängt das
WD_WR_Signal, die ADDR-{31:0}-Signale, die DATA-{31:0}-Signale und
die ADDR-{31:0}-Signale von der Direktspeicherzugriffseinheit 14.
Die Pufferspeichereinheit 182 legt das EVENT-Signal an
die Direktspeicherzugriffseinheit 14 an.
-
In 3 ist
ein Zeitdiagramm gezeigt, das die Beziehung der Signale für die in 2 dargestellte Schnittstelleneinheit 14 für asynchrone Übertragungsbetriebsart
in der Sendebetriebsart veranschaulicht. Die Signale werden durch
das UXCLK-Signal synchronisiert. Wenn eine Schnittstelleneinheit 18 für asynchrone Übertragungsbetriebsart
in der Slave-Betriebsart ihre Adresse auf den UXADDR-{4:0}-Leitungen entdeckt, stellt
der Prozessor ein UXCLAV-Signal bereit, um anzugeben, ob eine Zelle
für die Übertragung
verfügbar
ist oder nicht. Nach Abschluss der momentanen Aktivität erzeugt
der Master-Prozessor die Adresssignalgruppe UXADDR {4:0} und das
UXENB-Signal. Der Slave-Prozessor sendet dann die Daten über die
Leiter, die die DATA-{15:0}-Signale befördern, indem er das UXSOC-Signal
aktiviert.
-
In 4 ist
der Austausch von Signalen zwischen der Schnittstelleneinheit 18 und
der Master-Verarbeitungseinheit sowie zwischen der Schnittstelleneinheit 18 und
der Direktspeicherzugriffseinheit 14 gezeigt. Der Prozessor 184 der
Schnittstelleneinheit 18 empfängt das das URCLK-Signal, die
URADDR-{4:0}-Signale, das URENB-Signal, das URSOC-Signal und die
URDATA-{15:0}-Signale von der Master-Verarbeitungseinheit. Der Prozessor 184 legt
das URCLAV-Signal an die Master-Verarbeitungseinheit an. Der Prozessor 184 legt
die DATA-{31:0}-Signale und das WD_WR an die Pufferspeichereinheit 182 an
und empfängt
von dieser das CLAV-Signal. Die Pufferspeichereinheit 182 legt
die DATA-{31:0}-Signale und das EVENT-Signal an die Direktspeicherzugriffseinheit 14 an
und empfängt
von dieser die ADDR-{31:0}-Signale und das WD_RD-Signal. In der
Slave-Empfangsbetriebsart
werden die DATA-Signale von dem Prozessor 184 zu der Pufferspeichereinheit 182 und
dann zu der Direktspeicherzugriffseinheit 14 befördert. Das
CLAV-Signal und das WD_WR-Signal ermöglichen das Befördern der
DATA-Signale durch den Prozessor 184 zu der Pufferspeichereinheit 182.
Das WD_RD-Signal ermöglicht
das Befördern
der DATA-Signale von der Pufferspeichereinheit 182 zu der
Direktspeicherzugriffseinheit 14.
-
In 5 ist
ein Zeitdiagramm gezeigt, das die Beziehung der Signale für die in 4 dargestellte Schnittstelleneinheit 14 für asynchrone Übertragungsbe triebsart
in der Empfangsbetriebsart veranschaulicht. Die Signale werden durch
das URCLK-Signal synchronisiert. Der Master-Prozessor legt die ADDR-{4:0}-Signalgruppe an die
Slave-Prozessoren an. Der identifizierte Slave-Prozessor reagiert
auf das ADDR-{4:0}-Signal mit dem passenden CLAV-Signal. Wenn ein
aktives CLAV-Signal angelegt wird, werden die ADDR-{4:0}-Signale
gemeinsam mit dem ENB-Signal nochmals angelegt. Der Slave startet
das Empfangen von Daten zusammen mit einem SOC-Signal. Die DATA-{15:0}-Signale
werden solange empfangen, bis die Zelle vollständig übertragen worden ist.
-
In 6 sind
die durch die Schnittstelleneinheit 18 in der Master-Sendebetriebsart
ausgetauschten Signale gezeigt. Der Prozessor 184 der Schnittstelleneinheit 18 empfängt das
URCLK-Signal und das UXCLAV-Signal. Die Schnittstelleneinheit 184 legt
die UXADDR-{4:0}-Signale, das UXENB-Signal, das UXSOC-Signal und
die UXDATA-{15:0}-Signale an die Slave-Verarbeitungseinheit an.
Der Prozessor 184 legt das WD_WD-Signal an die Pufferspeichereinheit 182 an
und empfängt
von dieser die DATA-{31:0}-Signale und die CLAV-Signale. Die Pufferspeichereinheit 182 legt
das EVENT-Signal an die Direktspeicherzugriffseinheit 14 an und
empfängt
von dieser die DATA-{31:0}-Signale, die ADDR-{31:0}-Signale und
das WD_WR-Signal. Im Master-Status-Sendestatus werden die DATA-Signale
von der Direktspeicherzugriffseinheit 14 zu der Pufferausgangs-Speichereinheit 182 und
dann durch den Prozessor 184 zu der externen Komponente übertragen.
Das WD_WR-Signal ermöglicht
das Senden der DATA-Signale von der Direktspeicherzugriffseinheit 14 zu
der Pufferspeichereinheit 182. Das CLAV-Signal und das
WR_RD-Signal ermöglichen
das Übertragen
der DATA-Signale von der Pufferspeichereinheit 182 zu dem
Prozessor 184 und anschließend zu der externen Komponente.
-
In 7 ist
das Zeitdiagramm für
die Utopia-Schnittstelleneinheit im Master-Sendestatus von 6 gezeigt.
Der Prozessor im Master-Sendestatus fragt mit den UXADDR-{4:0}-Signalen
die Slave-Vorrichtungen in einem Round-Robin-Ablauf oder einem Ablauf mit fester
Priorität
zyklisch ab. Der Prozessor 184 empfängt, wo dies passend ist, ein
UXCLAV-Signal von einem Slave-Prozessor im Anschluss auf die Adresse
UXADDR {4:0} des Prozessors. Der Master-Sendeprozessor legt dann die Adresse
des Slave-Prozessors, der das UXCLAV-Signal erzeugt, gemeinsam mit dem UXENB-Signal
erneut an. Während
des nächsten
Taktzyklus beginnt der Prozessor die Übertragung der UXDATA-{15:0}- Signale und der SOC-Signale
an den Slave-Prozessor. Die Übertragung
wird fortgesetzt, bis die gesamte Zelle übertragen worden ist.
-
In 8 sind
die durch die UTOPIA-Schnittstelleneinheit 18 in der Master-Empfangsbetriebsart
gezeigt. Der Prozessor 184 der Schnittstelleneinheit 18 legt
die URADDR-{4:0}-Signale und das URENB-Signal an die Slave-Verarbeitungseinheit
an und empfängt
das URCLK-Signal, das URCLAV-Signal, das URSOC-Signal und die URDATA-{15:0}-Signale
von der Slave-Verarbeitungseinheit. Der Prozessor 184 legt
die DATA-{31:0}-Signale und die WD_WR-Signale an die Pufferspeichereinheit 182 an
und empfängt
von dieser das CLAV-Signal. Die Pufferspeichereinheit 182 legt
die DATA-{31:0}-Signale und das EVENT-Signal an die Direktspeicherzugriffseinheit 14 an
und empfängt
von dieser ADDR-{31:0}-Signale
und das WD_RD-Signal.
-
In 9 ist
ein Zeitdiagramm für
die Signale der Schnittstelleneinheit für asynchrone Übertragungsbetriebsart
im Master-Empfangsstatus, wie sie in 8 dargestellt
ist, gezeigt. Der Master-Prozessor 184 fragt die Slave-Prozessoren
zyklisch ab, indem er die ADDR-{4:0}-Signale an die Adressleitung
angelegt. Wenn eine Slave-Schnittstelleneinheit für asynchrone Übertragungsbetriebsart
verfügbar
ist, um die Datensignale zu empfangen, wird während des nächsten Taktzyklus ein CLAV-Signal
aktiviert. Während
des folgenden Taktzyklus werden die ADDR-{4:0}-Signale der Slave-Einheit,
die das CLAV-Signal erzeugt, gemeinsam mit dem ENG-Signal erneut
an den Bus angelegt. Wenn eine momentane Interaktion mit dem Master-Prozessor
abgeschlossen ist, sendet der adressierte Slave-Prozessor die DATA-{31:0}-Signale
und das SOC-Signal. Die DATA-{31:0}-Signale werden solange gesendet,
bis die gesamte Zelle übertragen
worden ist.
-
In 10A und 10B ist
das Datenverarbeitungssystem mit einer Master-Status-Datenverarbeitungseinheit 91 und
mehreren Slave-Status-Datenverarbeitungseinheiten 92A bis 92N gezeigt.
In 10A befindet sich die Master-Status-Datenverarbeitungseinheit 91 in
einer Sendebetriebsart, während
sich die Slave-Status-Datenverarbeitungseinheiten 92A bis 92N in
einer Empfangsbetriebsart befinden. In 10B befindet
sich die Master-Status-Datenverarbeitungseinheit 91 in
einer Empfangsbetriebsart, während
sich die Slave-Status-Datenverarbeitungseinheiten 92A bis 92N in
einer Sendebetriebsart befinden. In
-
10A erzeugt die Master-Datenverarbeitungseinheit 91 (in
der Sendebetriebsart) die UXCLK-, UXADDR-, UXENB-, UXSOC- und UXDATA-Signale,
die zu den URCLK-, URADDR-, URENB-, URSOC- bzw. URDATA-Signale werden,
wenn sie auf die Slave-Datenverarbeitungseinheiten 92A–92N (in
der Empfangsbetriebsart) angewandt werden. Die URCLAV-Signale von
den Slave-Datenverarbeitungseinheiten 92A–92N werden
als URCLAV-Signal an die Master-Datenverarbeitungseinheit 91 angelegt.
In 10B erzeugt die Master-Datenverarbeitungseinheit 91 (in
der Empfangsbetriebsart) die URCLK-, URADDR- und URENB-Signale,
die als UXCLK-, UXADDR- bzw. UXENB-Signal an die Slave-Datenverarbeitungseinheiten 92A–92N (in der
Sendebetriebsart) angelegt werden. Die Slave-Datenverarbeitungseinheiten 92A–92N erzeugen
die URCLAV-, UXSOC- und UXDATA-Signale, die als URCLAV-, URSOC-
bzw. URDATA-Signal an die Master-Datenverarbeitungseinheit angelegt
werden.
-
In 11 ist
die Implementierung der UTOPIA-Schnittstelleneinheit zwischen dem
Kommunikationsbus 110 und der Direktspeicherzugriffseinheit 14 gemäß der vorliegenden
Erfindung gezeigt. Daten von dem Kommunikationsbus 110 werden über die
Schnittstellen-Eingangseinheit 181 zu der Schnittstellen-Eingangspufferspeichereinheit 182A übertragen.
Von der Schnittstellen-Eingangspufferspeichereinheit 182A werden die
Datensignale über
die Direktspeicherzugriffseinheit 14 zu der (den) Speichereinheit(en)
des digitalen Signalverarbeitungseinheits-Chips 100 übertragen.
Die Daten von den Speichereinheiten werden über die Direktspeicherzugriffseinheit 14 zu
der Schnittstellen-Ausgangspufferspeichereinheit 183 übertragen.
Die Daten werden von der Schnittstellen-Ausgangspufferspeichereinheit 183 über die
Schnittstellen-Ausgangseinheit 184A zu dem Kommunikationsbus 110 übertragen
Die Systemlogik 186 empfängt das INTERNAL CLOCK-Signal
(zur Unterscheidung von dem UTOPIA CLK-Signal), formt die Wellenform um und
entzerrt diese und verteilt das CLOCK-Signal an den Rest der UTOPIA-Schnittstelleneinheit 18.
Die Konfigurations-Schnittstelleneinheit 186 empfängt die
Initialisierungssignale und bestimmt durch Übertragung von Steuersignalen
an die anderen Einheiten der UTOPIA-Schnittstelleneinheit 18 die
Betriebsart, in der die Letztere arbeitet.
-
In 12 sind
die Inhalte des Schnittstellen-Steuerregisters gemäß einer
bevorzugten Ausführungsform
gezeigt. In den UREN/UREN-Feldern gibt eine logische "0" an, dass der Empfangs/Sende-Anschluss
gesperrt ist, während
eine logische "1" angibt, dass der
Schnittstellen-Empfangsanschluss freigegeben ist. Diese Benennung
trifft sowohl in der Master-Betriebsart als auch in der Slave-Betriebsart zu. In
den URMSTR/UXMSTR-Feldern gibt eine logische "0" an,
dass die Schnittstelleneinheit in einer Slave-Betriebsart (Vorgabebetriebsart)
arbeitet, während
eine logische "1" angibt, dass die
Schnittstelleneinheit in einer Master-Betriebsart arbeitet. In den RUDC/XUDC-Feldern
wird eine anwenderdefinierte Datenzelle (d. h. eine Standard-Datenzelle oder
eine erweiterte Datenzelle) sowohl für die Empfangsbetriebsart als
auch für
die Sendebetriebsart spezifiziert. Dieses Feld wird in der Slave-Betriebsart
verwendet. Das SLID/SLEND-Feld betreffend identifiziert dieses Feld
in der Slave-Betriebsart die Adresse der gekoppelten Prozessoreinheit.
In der Master-Betriebsart identifiziert dieses Feld den letzten
der mit der Schnittstelleneinheit gekoppelten Prozessoren. Das UPM-Feld identifiziert,
ob ein zyklisches Abfragen in einer Round-Robin-Weise oder ab einer
festen Adresse stattfindet. Das U16M-Feld bestimmt sowohl für die Eingangsschnittelle
als auch für
die Ausgangsschnittstelle, ob Datenübertragungen mit 8 Bits oder
mit 16 Bits erfolgen. Das MPHY-Feld bestimmt, ob die Schnittstelleneinheit
mit einem einzigen Prozessor (logische "0")
oder mit mehreren Prozessoren gekoppelt ist. Das ULB-Feld bestimmt,
ob die sich Schnittstelleneinheit in eine Rückschleif-Betriebsart befindet.
In der Rückschleif-Betriebsart (d. h.
logische "1") sind die Empfang-
und Sendeabschnitte gekoppelt, wobei der Master durch die URMSTR/UXMSTR-Felder
festgelegt ist. Das BELAD-Feld bestimmt die Datenübertragung
in einem Big-Endian-Format oder in einem Little-Endian-Format.
-
In 13 ist
die Wirkung des (Sende)-EVENT-Signals gezeigt. Nach der Initialisierung
des Sendeabschnitts der UTOPIA-Schnittstelleneinheit im Schritt 1300 oder
als Teil des fortgesetzten Betriebs der Schnittstelleneinheit wird
im Schritt 1301 eine Bestimmung durchgeführt, ob
Raum für
die Speicherung einer vollständigen
Datenzelle in der Sendepufferspeichereinheit verfügbar ist
oder nicht. Wenn die Bestimmung bejahend ist, wird im Schritt 1302 ein
Sende-EVENT-Signal
an die Direktspeicherzugriffseinheit angelegt. Als Reaktion auf
die Erzeugung des EVENT-Signals wird im Schritt 1303 eine
Datenzelle über
die Direktspeicherzugriffseinheit an die Sendepufferspeichereinheit übertragen.
Im Schritt 1304 wird, sobald die Übertragung der Datenzelle begonnen
hat und das erste Wort der Zelle geschrieben ist, das EVENT-Signal
ausgeschaltet. Es sei angemerkt, dass das EVENT-Signal wieder aktiviert
wird, sobald das erste Wort geschrieben ist und die Pufferspeichereinheit
Raum verfügbar
hat. Die unmittelbare Neuaktivierung des EVENT-Signals verbessert
den Schnittstelleneinheitsdurchsatz. Der Prozess kann dann zum Schritt 1301 zurückgeführt werden,
um zu bestimmen, ob Raum für
die Speicherung einer gesamten Datenzelle in der Sendepufferspeichereinheit
verfügbar
ist. Wenn die Bestimmung im Schritt 1301 verneinend ist,
kehrt der Prozess zum Schritt 1301 zurück und setzt den Kreislauf
fort, bis Raum für
die Speicherung einer gesamten Datenzelle verfügbar ist.
-
In 14 ist
die Wirkung des Ereignissignals in der UTOPIA-Slave-Schnittstelleneinheit
in der Empfangsbetriebsart gezeigt. Nach der Initialisierung des
Empfangsabschnitts der UTOPIA-Schnittstelleneinheit im Schritt 1400 oder
als Teil des Betriebs jenes Abschnitts der Schnittstelleneinheit
wird im Schritt 1401 eine Bestimmung durchgeführt, ob
eine vollständige
Datenzelle in der Empfangspufferspeichereinheit verfügbar ist. Wenn
die Bestimmung bejahend ist, wird im Schritt 1402 ein Empfangs-EVENT-Signal
erzeugt. Als Reaktion auf das EVENT-Signal wird im Schritt 1403 die
Datenzelle in der Empfangspufferspeichereinheit über die Direktspeicherzugriffseinheit übertragen.
Im Schritt 1404 wird, sobald die Datenzellenübertragung
mit dem Lesen des ersten Wortes begonnen hat, das EVENT-Signal ausgeschaltet.
Der Prozess wird dann zum Schritt 1401 zurückgeführt und
der Kreislauf fortgesetzt, bis eine vollständige Datenzelle in der Empfangspufferspeichereinheit
gespeichert ist.
-
Die
Schnittstelleneinheit für
asynchrone Übertragungsbetriebsart
der vorliegenden Erfindung ist die Schnittstelleneinheit zwischen
der Direktspeicherzugriffseinheit und dem Datenverarbeitungssystem.
Im Allgemeinen können
sämtliche
der Datenverarbeitungseinheiten eines Datenverarbeitungssystems
eine das UTOPIA-Protokoll verwendende asynchrone Schnittstelleneinheit,
die mit einem die Datenverarbeitungseinheiten koppelnden Bus gekoppelt
ist, enthalten. In manchen Implementierungen kann die Datenverarbeitungseinheit selbst
so implementiert sein, dass sie die Signale für asynchrone Übertragungsbetriebsart
bereitstellt und dadurch die Schnittstelleneinheit in jenem Datenverarbeitungssystem
erübrigt.
Die eigentliche Übertragung
der Datensignale zwischen Datenverarbeitungssystemen in der asynchronen Übertragungsbetriebsart
erfolgt unter der Steuerung derselben Taktsignale oder synchronisierten
Taktsignale. Die Datenzellen oder Datenpakete, die übertragen
worden sind oder die übertra gen
werden müssen,
werden in der Pufferspeichereinheit gespeichert. Die Speichereinheit
schafft einen Puffer zwischen der Taktfrequenz des Kommunikationsbusses
und der viel höheren
Frequenz der Direktspeicherzugriffseinheit.
-
Die
vorangehende Beschreibung hat die Schnittstelleneinheit so beschrieben,
dass sie eine Pufferspeichereinheit enthält. In der bevorzugten Ausführungsform
ist die Pufferspeichereinheit durch eine First-in/First-out-Speichereinheit
implementiert. Die Speichereinheit ist mit der Kapazität zum Speichern
zweier Datenzellen versehen. Der Kommunikationsbus verursacht die
Signale, die zwischen der Master-Einheit und der Slave-Einheit ausgetauscht
werden, um eine relativ niedrige Taktgeschwindigkeit zu haben. Wegen
der relativ niedrigen Taktgeschwindigkeit des Kommunikationsbusses
ist das Füllen
oder Leeren des Pufferspeichers in Richtung der Kommunikation viel
langsamer als das Füllen
und Leeren der Pufferspeichereinheit in Richtung der Direktspeicherzugriffseinheit.
-
Das
EVENT-Signal ist für
den effizienten Transfer von Datenzellen besonders nützlich.
Da der Betrieb des Datenverarbeitungssystems, wovon die UTOPIA-Schnittstelle ein
Teil ist, viel schneller als die Rate ist, mit der Daten über den
Kommunikationsbus übertragen
werden können,
kann der Transfer von Datenzellen aus der Sendepufferspeichereinheit
und in die Empfangspufferspeichereinheit im Wesentlichen kontinuierlich
sein.
-
Obwohl
eine wichtige Anwendung der vorliegenden Erfindung die Übertragung
von Datensignalen zwischen einer Host- oder Master-Status-Datenverarbeitungseinheit
(die einen Mikroprozessor enthält)
und wenigstens einer Slave-Status-Datenverarbeitungseinheit
(die typischerweise einen digitalen Signalprozessor enthält) ist,
kann diese Konfiguration umgekehrt werden. Außerdem kann die UTOPIA-Übertragungsbetriebsart-Schnittstelleneinheit
zu jeder digitalen Signalverarbeitungseinheit oder einer Reihe von
digitalen Signalverarbeitungseinheiten, die mit einem Bus gekoppelt
sind, hinzugefügt
werden. Eine der digitalen Signalverarbeitungseinheiten wird als
Master-Status-Maschine bzw. Master-Zustandsmaschine ausgewählt, wobei
diese Verarbeitungseinheit den Betrieb sämtlicher digitalen Signalprozessoren
steuert.
-
Die
Utopia-Schnittstelleneinheit identifiziert die Übertragung einer unvollständigen Datenzelle,
die manchmal als Zwergzelle bezeichnet wird, wenn das SOC- Signal während einer
ATM-Zellenübertragung
gesetzt ist. Bei der Software-Auflösung kann
die Zwergzelle aufgelöst
werden, indem sie zu einer Software-Prozedur einer höheren Ebene übertragen
wird. In der bevorzugten Ausführungsform
wird die Zwergzelle unter Hardware-Steuerung durch neue Daten überschrieben.
-
Obwohl
die Erfindung mit Bezug auf die oben dargelegten Ausführungsformen
beschrieben worden ist, ist die Erfindung nicht notwendigerweise
auf diese Ausführungsformen
beschränkt.
Dementsprechend sind andere Ausführungsformen,
Abwandlungen und Verbesserungen, die hier nicht beschrieben worden
sind, nicht zwangsläufig
vom Umfang der Erfindung ausgeschlossen. Beispielsweise könnte eine
alternative Ausführungsform
ein Datenverarbeitungssystem umfassen, das umfasst; wenigstens eine
Slave-Status-Datenverarbeitungseinheit, einen Kommunikationsbus,
wobei die Master-Status-Datenverarbeitungseinheit Protokollsignale
für asynchrone Übertragungsbetriebsart
mit dem Bus austauscht, und eine Master-Status-Datenverarbeitungseinheit,
wobei die Master-Status-Datenverarbeitungseinheit enthält: eine
Zentraleinheit, eine Direktspeicherzugriffseinheit, die mit der
Zentraleinheit gekoppelt ist, und eine Utopia-Schnittstelleneinheit,
die mit der Zentraleinheit gekoppelt ist, wobei die Utopia-Schnittstelleneinheit
besitzt: einen Prozessor, der mit dem Kommunikationsbus gekoppelt
ist und mit diesem Protokollsignale für asynchrone Übertragungsbetriebsart austauscht,
und eine Pufferspeichereinheit, wobei die Pufferspeichereinheit
Datensignale zwischen der Direktspeicherzugriffseinheit und dem
Prozessor puffert.
-
Vorzugsweise
umfasst dieser Prozessor außerdem:
eine Eingangsschnittstelleneinheit und eine Ausgangsschnittstelleneinheit,
während
die Pufferspeichereinheit umfasst: eine Eingangspufferspeichereinheit und
eine Ausgangspufferspeichereinheit. Daten werden von dem Kommunikationsbus über die
Eingangsschnittstelleneinheit zu der Eingangspufferspeichereinheit übertragen,
und Daten werden von der Ausgangspufferspeichereinheit über die
Ausgangsschnittstelleneinheit zu dem Kommunikationsbus übertragen.
Die Eingangspufferspeichereinheit und die Ausgangspufferspeichereinheit
sind First-in/First-out-Speichereinheiten.