-
Verwandte Anmeldungen
-
Die
US Patentanmeldung mit der Seriennummer 09/670,663: APPARATUS AND
METHOD FOR ACTIVATION OF A DIGITAL SIGNAL PROCESSOR IN AN IDLE MODE
FOR INTERPROCESSOR TRANSFER OF SIGNAL GROUPS IN A DIGITAL SIGNAL
PROCESSING UNIT; erfunden von Patrick J. Smith, Jason A. Jones und
Kevin A. McGonagle; gleichzeitig hiermit angemeldet und erteilt
an den Bevollmächtigten
der vorliegenden Erfindung: US Patentanmeldung mit der Seriennummer 09/670,665;
APPARATUS AND METHOD FOR A HOST PROCESSOR INTERFACE UNIT IN A DIGITAL
SIGNAL PROCESSING UNIT; erfunden von Patrick J. Smith und Jason
A. Jones; gleichzeitig hiermit angemeldet und erteilt an den Bevollmächtigten
der vorliegenden Erfindung. Die US Patentanmeldung mit der Seriennummer
09/670,666; APPARATUS AND METHOD FOR THE EXCHANGE OF SIGNAL GROUPS
BETWEEN A PLURALITY COMPONENTS AND A DIRECT MEMORY ACCESS CONTROLLER
IN A DIGITAL SIGNAL PROCESSOR, erfunden von Patrick J. Smith, Jason
A. Jones, Kevin A. McGonagle und Tai H. Nguyen; gleichzeitig hiermit angemeldet
und erteilt an den Bevollmächtigten
der vorliegenden Erfindung. Die US Patentanmeldung mit der Seriennummer
09/670,667; APPARATUS AND METHOD FOR A SORTING MODE IN A DIRECT
MEMORY ACCESS CONTROLLER OF A DIGITAL SIGNAL PROCESSOR; erfunden
von Patrick J. Smith und Tai H. Nguyen; gleichzeitig hiermit angemeldet
und erteilt an den Bevollmächtigten
der vorliegenden Erfindung: und die US Patentanmeldung mit der Seriennummer
09/670,668; APPARATUS AND METHOD FOR ADDRESS MODIFICATION IN A DIRECT
MEMORY ACCESS CONTROLLER; erfunden von Patrick J. Smith; gleichzeitig
hiermit angemeldet und erteilt an den Bevollmächtigten der vorliegenden Erfindung
sind verwandte Anmeldungen.
-
Technisches
Gebiet der Erfindung
-
Diese
Erfindung bezieht sich im Allgemeinen auf das Datenverarbeitungsgerät und genauer
gesagt auf die spezialisierten Hochleistungs-Verarbeitungseinheiten,
die im Allgemeinen digitale Signalverarbeitungseinheiten genannt
werden. Die Erfindung bezieht sich im Speziellen auf den Austausch von
Daten zwischen Einrichtungen zur digitalen Signalverarbeitung in
derselben digitalen Signalverarbeitungseinheit.
-
Hintergrund
der Erfindung
-
In 1 ist
eine digitale Signalverarbeitungseinheit 1 abgebildet,
die zwei Einrichtungen zur digitalen Signalverarbeitung gemäß dem Stand
der Technik aufweist. Eine erste Einrichtung zur digitalen Signalverarbeitung 10 enthält eine
Kernverarbeitungseinheit 12 (häufig Verarbeitungskern genannt), eine
DMA-Einheit 14,
eine Speichereinheit oder Speichereinheiten 16 und einen
seriellen Anschluss oder serielle Anschlüsse 18. Die Speichereinheit 16 speichert
die Signalgruppen, die zu verarbeiten sind oder die bei der Verarbeitung
der von der Kernverarbeitungseinheit 12 zu verarbeitenden
Signalgruppen helfen. Die Kernverarbeitungseinheit 12 führt den Großteil der
Verarbeitung der Signalgruppen in der Speichereinheit aus. Die DMA-Einheit 14 ist
mit der Kernverarbeitungseinheit 12 und der Speichereinheit 16 gekoppelt
und vermittelt den Austausch der Signalgruppen zwischen diesen.
Der serielle Anschluss 18 tauscht Signalgruppen mit Komponenten
aus, die sich außerhalb
der digitalen Signalverarbeitungseinheit 1 befinden. Die
Kernverarbeitungseinheit 12 ist mit dem seriellen Anschluss 18 und
der Speichereinheit 16 gekoppelt und steuert den Austausch
von Signalgruppen zwischen diesen Komponenten. 1 enthält auch
eine zweite Einrichtung zur digitalen Signalverarbeitung 10'. Die zweite
Einrichtung zur digitalen Signalverarbeitung 10' stellt eine
Kopie der ersten Einrichtung zur digitalen Signalverarbeitung 10 dar
und enthält
eine Kernverarbeitungseinheit 12', eine DMA-Einheit 14', eine Speichereinheit 16' und einen seriellen
Anschluss 18'.
Die Funktionalität
der Komponenten der Einrichtungen zur digitalen Signalverarbeitung 10 und 10' ist identisch.
-
Die
Einrichtung zur digitalen Signalverarbeitung ist normalerweise so
gestaltet und implementiert, dass ihre Verarbeitungsfunktionalität eingeschränkt ist,
aber diese Funktionalität
beinhaltet Verarbeitungsverfahren, die wiederholt und sehr schnell ausgeführt werden
müssen.
Die schnelle Fouriertransformierte Verarbeitung (FFT-Verarbeitung)
und die Viterbi-Algorithmusdekodierung stellen zwei Beispiele dar,
in denen Einrichtungen zur digitalen Signalverarbeitung äußerst vorteilhaft
angewendet wurden. Um sicherzustellen, dass die Einrichtungen zur digitalen
Signalverarbeitung mit hohem Leistungsgrad arbeiten, ist die Kernverarbeitung
im Allgemeinen für
die Ausführung
der eingeschränkten
Funktionalität
optimiert. Ein Teil des Optimierungsprozesses umfasst die möglichst
weitgehende Abkoppelung jeglicher Verarbeitung, die nicht auf die
optimierten Verarbeitungsverfahren hinzielt. Der Austausch von Signalgruppen
beispielsweise zwischen der Kernverarbeitungseinheit 12, 12' und der Speichereinheit 16, 16' wird durch
den DMA-Controller 14, 14' gesteuert. Die Steuerung des Austauschs
von Signalgruppen umfasst die Zuordnung von Adressierungsfunktionen für die Speichereinheit
zum DMA-Controller.
-
Damit
die Kernverarbeitungseinheit von der für die Übertragung der Signalgruppen
zwischen dem seriellen Anschluss 18, 18' und der Speichereinheit 16, 16' benötigten Verarbeitung
entlastet wird, wurde diese Steuerung dieser Aktivität dem DMA-Controller 24, 24' übertragen. 2 stellt
ein Blockdiagramm der digitalen Signalverarbeitungseinheit dar,
bei der die Steuerung der Signalgruppenübertragung zwischen der Speichereinheit 16, 16' und dem seriellen
Anschluss 18, 18' gezeigt
wird. Dieses Ausführungsbeispiel
einer Einrichtung zur digitalen Signalverarbeitung wird in der gleichzeitig
anhängenden,
oben angeführten
Patentanmeldung mit dem Titel APPARATUS AND METHOD FOR THE EXCHANGE
OF SIGNAL GROUPS BETWEEN A PLURALITY COMPONENTS AND A DIRECT MEMORY ACCESS
CONTROLLER IN A DIGITAL SIGNAL PROCESSOR beschrieben. Die Einrichtungen
zur digitalen Signalverarbeitung 10, 10' weisen eine Kernverarbeitungseinheit 12, 12', eine DMA-Steuereinheit 24, 24', eine Speichereinheit 16, 16' und einen seriellen
Anschluss 18, 18' auf,
dieselben Komponenten wie in den in 1 gezeigten
Einrichtungen zur digitalen Signalverarbeitung nach dem Stand der
Technik. Der Unterschied zwischen dem Ausführungsbeispiel in 1 und
dem in 2 ist wie folgt. In 1 steuert
der DMA-Controller 14, 14' den Austausch von Signalgruppen
zwischen der Speichereinheit 16, 16' und der Kernverarbeitungseinheit 12, 12'. In 2 steuert
der DMA-Controller 24, 24' nicht nur den Austausch von Signalgruppen
zwischen der Speichereinheit 16, 16' und der Kernverarbeitungseinheit,
sondern auch zwischen der Speichereinheit 16, 16' und dem seriellen
Anschluss 18, 18'.
Durch diese Implementierung wird die Kernverarbeitungseinheit 12, 12' im Vergleich
zu der in 1 gezeigten Implementierung
von weiteren Verarbeitungspflichten entlastet. Folglich kann die
Kernverarbeitungseinheit 12, 12' konsequent für spezifische Verarbeitungsoperationen
weiter optimiert werden. Der DMA-Controller 24, 24' kann analog
auf eine Mehrzahl von steuerbaren Schaltern angewendet werden. Die
Schalter bieten steuerbare Kanäle
für die Übertragung
von Signalen zwischen Komponenten. (Im bevorzugten Ausführungsbeispiel
der Einrichtungen zur digitalen Signalverarbeitung gibt es üblicherweise zwei
Speichereinheiten und zwei serielle Anschlüsse. Folglich kann eine größere Anzahl
Kanäle
verwendet werden. Im bevorzugten Ausführungsbeispiel sind sechs Kanäle im DMA-Controller 24, 24' verfügbar.)
-
In
der digitalen Signalverarbeitungseinheit, die eine Mehrzahl an Einrichtungen
zur digitalen Signalverarbeitung 10, 10' umfasst, können Situationen auftreten,
in denen die Übertragung
von Signalgruppen zwischen den Einrichtungen zur digitalen Signalverarbeitung 10, 10' vorteilhaft
wäre. In
Situationen, zum Beispiel, in denen jede Einrichtung zur digitalen Signalverarbeitung
einen Teil einer komplexen Verarbeitungsoperation durchführt, können die
Ergebnisse, d.h. in der Form von Signalgruppen, die durch die Verarbeitungsoperation
einer Einrichtung zur digitalen Signalverarbeitung erzeugt wurden,
von einer zweiten Einrichtung zur digitalen Signalverarbeitung für eine zweite
Verarbeitungsoperation benötigt
werden.
-
In
der Vergangenheit wäre
eine solche Übertragung
von Signalgruppen durch Komponenten, die sich außerhalb der digitalen Signalverarbeitungseinheit 1 befinden,
erledigt, d.h., sie hätte
von einem Gerät
durchgeführt
werden müssen,
das nicht im Chip, auf dem die digitale Signalverarbeitungseinheit 1 hergestellt
ist, beinhaltet ist. Die Signalgruppen, zum Beispiel, die von einer
ersten Einrichtung zur digitalen Signalverarbeitung 10 an
die Einrichtung zur digitalen Signalverarbeitung 10' zu übertragen
sind, werden aus der digitalen Signalverarbeitungseinheit 1 durch
den seriellen Anschluss 18 der Einrichtung zur digitalen
Signalverarbeitung 10 exportiert. Die Signalgruppen werden
dann in die digitale Signalverarbeitungseinheit 1 durch
den seriellen Anschluss 18' importiert.
Der serielle Anschluss 18' ist
ein Teil der Einrichtung zur digitalen Signalverarbeitung 10', dem Prozessor,
der die Signalgruppen benötigt.
Es ist wohl klar, dass diese Übertragung
nicht nur komplex ist, da eine umfangreiche externe Koordination
zwischen Einrichtungen zur digitalen Signalverarbeitung 10, 10', die auf demselben
Chip hergestellt sind, nötig ist,
sondern auch, weil die Übertragung
eine relativ lange Zeit in Anspruch nehmen könnte, wodurch der Leistungsgrad
der digitalen Signalverarbeitungseinheit verringert würde.
-
US 5,685,005 offenbart ein
Datenverarbeitungssystem, das eine erste Einrichtung zur digitalen Signalverarbeitung
umfasst, die mit einer zweiten Einrichtung zur digitalen Signalverarbeitung
kommuniziert, wobei der DMA-Controller
der ersten Einrichtung zur digitalen Signalverarbeitung mit dem DMA-Controller der zweiten
Einrichtung zur digitalen Signalverarbeitung verbunden ist. Jede
digitale Verarbeitungseinheit umfasst eine Kernverarbeitungseinheit,
eine Speichereinheit, mindestens einen seriellen Anschluss und eine
Schnittstelleneinheit.
-
Es
wurde ein Gerät
und ein zugehöriges
Verfahren für
nötig erachtet,
das als besonderes Merkmal den Austausch von Signalgruppen von der
Speichereinheit einer ersten Einrichtung zur digitalen Signalverarbeitung
an die Speichereinheit einer zweiten Einrichtung zur digitalen Signalverarbeitung
in derselben digitalen Signalverarbeitungseinheit aufweist. Es wäre ein weiteres
Merkmal des Geräts
und des zugehörigen
Verfahrens, dass die zwischen den Einrichtungen zur digitalen Signalverarbeitung übertragenen
Signale die digitale Signalverarbeitungseinheit 1, zu der
die Einrichtungen zur digitalen Signalverarbeitung 10 und 10' gehören, nicht
verlassen würden. Noch
ein weiteres Merkmal des Geräts
und des zugehörigen
Verfahrens wäre,
dass sichergestellt würde,
dass die Übertragung
von Signalgruppen von einer Einrichtung zur digitalen Signalverarbeitung
an eine zweite Einrichtung zur digitalen Signalverarbeitung mit
minimaler Beeinflussung beider Kernverarbeitungseinheiten implementiert
wird. Es wäre
noch ein weiteres, spezielleres Merkmal des Geräts und des zugehörigen Verfahrens,
dass jede Einrichtung zur digitalen Signalverarbeitung mit einer
Schnittstelleneinheit versehen würde,
um die Übertragung
von Signalgruppen zwischen zwei Einrichtungen zur digitalen Signalverarbeitung
derselben digitalen Signalverarbeitungseinheit zu ermöglichen.
-
Zusammenfassung
der Erfindung
-
Die
oben genannten und weitere Merkmale werden von der vorliegenden
Erfindung, die durch ein Gerät
gemäß Anspruch
1 und einem Verfahren gemäß Anspruch
8 definiert wird, erfüllt.
Die Erfindung versieht jede Einrichtung zur digitalen Signalverarbeitung
in einer Einrichtung zur digitalen Signalverarbeitung mit einer
Schnittstelleneinheit. Die Schnittstelleneinheit bietet eine Zwischenspeicherung
für Signalgruppen,
die zwischen den Einrichtungen zur digitalen Signalverarbeitung
zu übertragen
sind. Die Schnittstelleneinheit empfängt Signalgruppen von der Speichereinheit
durch den DMA-Controller in der Einrichtung zur digitalen Signalverarbeitung,
die die Signalgruppen speichert, und legt die Signalgruppen durch
die DMA-Einheit an die Speichereinheit der Einrichtung zur digitalen
Signalverarbeitung an, die die Signalgruppen benötigt. Die Schnittstelleneinheit legt
ein erstes Steuersignal an den DMA-Controller an, der der Schnittstelleneinheit
zugehört,
wenn die Schnittstelleneinheit bereit ist, Signalgruppen vom zugehörigen Speicher
zu empfangen. Die Schnittstelleneinheit in der Einrichtung zur digitalen
Signalverarbeitung, die die Signalgruppen überträgt, legt ein zweites Steuersignal
an den DMA-Controller an, der der Einrichtung zur digitalen Signalverarbeitung zugehört, die
die Signalgruppen empfängt.
Das zweite Steuersignal zeigt an, dass die in der Schnittstelleneinheit
gespeicherten Signalgruppen bereit für die Übertragung sind. Die Übertragung
von Signalgruppen wird durch ein Unterbrechungssignal von der Einrichtung
zur digitalen Signalverarbeitung, die die Signalgruppen benötigt, an
die Einrichtung zur digitalen Signalverarbeitung, in der die Signalgruppen
gespeichert sind, initiiert.
-
Kurze Beschreibung
der Zeichnungen
-
Um
ein vollständigeres
Verständnis
der vorliegenden Erfindung und ihrer Vorteile zu liefern, wird nun
auf die folgende ausführliche
Beschreibung von bestimmten und veranschaulichenden Ausführungsbeispielen
und deren Merkmale und Aspekte, lediglich als Beispiel, und mit
Referenz auf die Figuren der beigefügten Zeichnungen Bezug genommen,
in denen:
-
1 ein
Blockdiagramm einer digitalen Signalverarbeitungseinheit darstellt,
die zwei Einrichtungen zur digitalen Signalverarbeitung gemäß dem Stand
der Technik aufweist.
-
2 stellt
ein Blockdiagramm der digitalen Signalverarbeitungseinheit dar,
die in der Lage ist, die vorliegende Erfindung vorteilhaft einzusetzen.
-
3 stellt
ein ausführlicheres
Blockdiagramm der Hauptkomponenten der digitalen Signalverarbeitungseinheit
dar, die die Hauptkomponenten veranschaulicht, mit denen die vorliegende
Erfindung implementiert wird.
-
4 stellt
ein Blockdiagramm der Hauptkomponenten des DMA-Controllers dar, der in der Lage ist,
die vorliegende Erfindung zu implementieren.
-
5 stellt
ein Blockdiagramm einer digitalen Signalverarbeitungseinheit dar,
das ein zweites Ausführungsbeispiel
der vorliegenden Erfindung veranschaulicht.
-
6 veranschaulicht
den Betrieb der Kanaleinheiten des DMA-Controllers.
-
Die
Verwendung von gleichen Referenzsymbolen in unterschiedlichen Zeichnungen
deutet auf ähnliche
oder gleiche Objekte hin.
-
Beschreibung
des bevorzugten Ausführungsbeispiels
-
1 und 2 wurden
in Bezug auf den Hintergrund der vorliegenden Erfindung beschrieben.
-
In 3 ist
eine digitale Signalverarbeitungseinheit 3 abgebildet,
die zwei Einrichtungen zur digitalen Signalverarbeitung 30 und 30' umfasst, die auf ähnliche
Weise wie die Einrichtungen zur digitalen Signalverarbeitung 20, 20' aus 2 implementiert
sind. Zusätzlich
jedoch enthält
jede Einrichtung zur digitalen Signalverarbeitung 30 und 30' nun eine Schnittstelleneinheit 31 bzw. 31'. Jede Schnittstelleneinheit 31 und 31' ist mit dem
DMA-Controller 34 bzw. 34' gekoppelt und kann von diesem
Signalgruppen empfangen. Jede Schnittstelleneinheit 31 und 31' kann ein Steuersignal,
TXEMPTY, an die gekoppelte DMA-Einheit 34 bzw. 34' anlegen. Das
TXEMPTY-Signal zeigt an, dass die dieses Signal erzeugende Schnittstelleneinheit 31, 31' bereit ist,
Signalgruppen von der gekoppelten DMA-Einheit 34, 34' zu empfangen.
Jede Schnittstelleneinheit 31 und 31' ist mit einer
Leiterbahn gekoppelt, um Signalgruppen von den Einrichtungen zur
digitalen Signalverarbeitung 20 und 20', in denen sich
die Schnittstelleneinheit befindet, an die DMA-Einheit 24' und 24 anzulegen,
die sich in der anderen Einrichtung zur digitalen Signalverarbeitung,
d.h. 31' bzw. 31,
befinden. Außerdem kann
jede Schnittstelleneinheit 31 und 31' ein Steuersignal
RXFULL und RXFULL' erzeugen.
Die Steuersignale RXFULL und RXFULL' werden an die DMA-Einheit 24' bzw. 24 der Einrichtung
zur digitalen Signalverarbeitung 30 und 30', die die das
Steuersignal erzeugende Schnittstelleneinheit nicht enthält, angelegt.
Die Signale RXFULL und RXFULL zeigen an, dass die Schnittstelleneinheit
bereit ist, darin gespeicherte Signalgruppen an die andere Einrichtung zur
digitalen Signalverarbeitung zu übertragen.
-
Jede
Einrichtung zur digitalen Signalverarbeitung kann auch ein INTERRUPT-Steuersignal
erzeugen und das INTERRUPT-Signal an die andere Einrichtung zur
digitalen Signalverarbeitung anlegen. Der Zweck dieses INTERRUPT-Signals
in der vorliegenden Erfindung ist es, einen Mechanismus zu liefern,
der die Übertragung
von Signalgruppen zwischen Verarbeitungseinheiten initiiert.
-
In 4 wird
ein Blockdiagramm eines DMA-Controllers 34 in Übereinstimmung
mit dem bevorzugten Ausführungsbeispiel
der vorliegenden Erfindung gezeigt. Der DMA-Controller beinhaltet
den Trennmultiplexer 341, eine Taktpuffereinheit 342, eine
Arbitrationseinheit 343, eine Unterbrechungs-Multiplexeinheit 344,
eine Zustandssteuereinheit 345, Kanaleinheiten 349,
einen dma-Bus 347 und eine PSA-Einheit 346. Der
Trennmultiplexer 341 enthält die logischen Komponenten
für die
Trennung der Eingänge
zum DMA-Controller 34 für
Testzwecke. Die Taktpuffereinheit 342 enthält Logik,
um den Versatz der externen (d.h. außerhalb der Einrichtung zur
digitalen Signalverarbeitung) Taktsignale zu korrigieren. Das Taktsignal
vom Taktpuffer 342 wird dann im ganzen DMA-Controller 34 verteilt.
Die Unterbrechungs-Multiplexeinheit 344 liefert synchrone
Unterbrechungen an die Kernverarbeitungseinheit 12 der Einrichtung
zur digitalen Signalverarbeitung 30. Die Arbitrationslogik 343 umfasst
ein Gerät,
das auf Gebote für
die Steuerung eines der Kanäle
reagiert, Nutzer für
die Übertragung
von Signalgruppen durch die DMA-Einheit 34 auszuwählen. Die
PSA-Einheit 346 ist ein Kalkulator für das Testen des und die Fehlersuche
im DMA-Controller 34. Die Zustandssteuereinheit 345 wählt basierend
auf den Signalen von der Arbitrationseinheit 343 den Zustand
(Konfiguration) des DMA-Controllers 34 aus und legt die
Steuersignale, die die Gerätekonfiguration
für die
Durchführung
der aktuellen Operation implementieren, am dma-Bus 347 an.
Für die
vorliegende Erfindung bestehen die wichtigen Elemente des DMA-Controllers 34 aus
der Arbitrationseinheit 343, der Zustandssteuereinheit 345 und
der Kanaleinheiten 349. Die Signale TXEMPTY und RXFULL' werden beide an
die Arbitrationseinheit 343 angelegt. Der Zweck der Arbitrationseinheit 343 ist
es, Konflikte bezüglich
der Zuweisung von Kanälen
zu lösen.
Die Arbitrationseinheit 343 signalisiert der Zustandssteuereinheit 345 den
Bedarf, einen Kanal für
die Übertragung
von Signalen bereitzustellen. Das heißt, dass für das Signal TXEMPTY' von der DMA-Einheit 34' ein Kanal zwischen
der Speichereinheit 16' und
der Schnittstelleneinheit 31' bereitgestellt
wird. Für
das Signal RXFULL' wird
von der DMA-Einheit 34 ein Kanal zwischen der Schnittstelleneinheit 31' und der Speichereinheit 16 bereitgestellt.
Die Quell- und Zieladressen werden vom dma-Bus 349 übertragen. Außerdem werden
Steuersignale auf dem dma-Bus 347 an die Kanaleinheiten 349 angelegt.
Die Signalgruppen werden durch eine aus einer Mehrzahl an Kanaleinheiten 349 übertragen,
-
In 5 wird
ein zweites Ausführungsbeispiel
einer digitalen Signalverarbeitungseinheit 5 für die Übertragung
von Signalgruppen zwischen Einrichtungen zur digitalen Signalverarbeitung 50 und 50' veranschaulicht,
die im Wesentlichen dieselben Steuersignale und Signalgruppen, wie
in 3 abgebildet, verwendet. In diesem zweiten Ausführungsbeispiel,
wie auch bei dem in 3 gezeigten Ausführungsbeispiel,
verlassen die übertragenen
Signalgruppen nicht den Chip, auf dem die digitale Signalverarbeitungseinheit 5 hergestellt
ist. Stattdessen wird eine einzelne Schnittstelleneinheit 51 verwendet.
Die einzelne Schnittstelleneinheit 51 ist in 5 so
abgebildet, dass sie auf keinem der Subchips der Einrichtungen zur
digitalen Signalverarbeitung 50 oder 50' positioniert
ist, sondern sich zwischen den beiden Subchips befindet. Es ist
klar, dass sich die Schnittstelleneinheit 51 auf einem
der Subchips befinden kann, ohne von der vorliegenden Erfindung abzuweichen.
Die Schnittstelleneinheit 51 kann Eingangssignalgruppen
entweder von der Speichereinheit 16 durch den DMA-Controller 54 empfangen, oder
Signalgruppen von der Speichereinheit 16' durch den DMA-Controller 54'. Auf ähnliche
Weise können
Signalgruppen von der Schnittstelleneinheit 51 an die Speichereinheit 16 durch
den DMA-Controller 54 übertragen
werden, während
Signalgruppen von der Schnittstelleneinheit 51 an die Speichereinheit 16' durch den DMA-Controller 54' übertragen werden
können.
Die DMA-Controller 54 und 54' können auf dieselbe Art implementiert
werden, wie die DMA-Controller 34 und 34' aus 3.
Das heißt,
die Reaktion auf die Steuersignale TXEMPTY, RXFULL, TXEMPTY' und RXFULL' eines der DMA-Controller 54 und 54' ist dieselbe,
wie in 3 veranschaulicht. Um einen Konflikt um die Verwendung
der Schnittstelleneinheit 51 zu vermeiden, verhindert der
Empfang eines INTERRUPT-Signals, das eine Übertragung von Signalgruppen
identifiziert, dass die das INTERRUPT-Signal empfangende Kernverarbeitungseinheit
ein (widersprüchliches)
INTERRUPT-Signal an die Kernverarbeitungseinheit, von der das INTERRUPT-Signal
ausging, sendet.
-
In 6 wird
der Betrieb der Kanaleinheiten 349 der DMA-Einheit veranschaulicht.
Die Kanaleinheiten 349 umfassen eine Mehrzahl an Kanälen, von denen
einer der in 6 abgebildete Kanal ist. Alle Quellkomponenten
von Signalgruppen sind mit den Eingangsanschlüssen des Multiplexers 16 gekoppelt. Wie
in 6 abgebildet, umfassen die Quellkomponenten die
Speichereinheit 16, den seriellen Anschluss 18,
die Kernverarbeitungseinheit 12 und die Schnittstelleneinheit 31'. Es gilt zu beachten,
dass die Eingangsanschlüsse
mit der DMA-Einheit 34' der zweiten
Einrichtung zur digitalen Signalverarbeitung 30' gekoppelt sind.
Steuersignale vom dma-Bus 347 wählen die Quellkomponente aus,
die durch den Multiplexereinheit 61 zu übertragen sind. Die durch die Multiplexereinheit 61 übertragenen
Signalgruppen werden an der Registerbank 63 angelegt und
hier gespeichert. Die in der Registerbank 63 gespeicherte Signalgruppe
wird an die Schalteinheit 65 angelegt. Die Schalteinheit 65 überträgt in Reaktion
auf die Steuersignale vom dma-Bus 349 die Signalgruppe und
legt die Signalgruppe an eine der möglichen Zielkomponenten an,
d.h. Speichereinheit 16, serieller Anschluss 18,
Kernverarbeitungseinheit 12 und an die Schnittstelleneinheit 31,
die der Einrichtung zur digitalen Signalverarbeitung 30,
in der sich die Kanaleinheiten 349 befinden, zugehört.
-
Die
Funktion der vorliegenden Erfindung kann wie folgt verstanden werden.
Ein Softwareprogramm der ersten digitalen Verarbeitungseinheit stellt
fest, dass eine Signalgruppe oder mehrere Signalgruppen, die von
der Kernverarbeitungseinheit der ersten Einrichtung zur digitalen
Signalverarbeitung benötigt
wird/werden, derzeit nicht in der Speichereinheit der ersten Einrichtung zur
digitalen Signalverarbeitung gespeichert ist/sind. Das Programm stellt
auch fest, dass die benötigten
Signalgruppen in der Speichereinheit einer zweiten Einrichtung zur
digitalen Signalverarbeitung gespeichert sind. Die Kernverarbeitungseinheit
der ersten digitalen Signalverarbeitungseinheit sendet ein INTERRUPT-Signal an
die Kernverarbeitungseinheit der zweiten digitalen Signalverarbeitungseinheit.
Das INTERRUPT-Signal informiert die zweite Einrichtung zur digitalen
Signalverarbeitung darüber,
dass eine Aktion für
die erste digitale Signalverarbeitungseinheit benötigt wird.
Die erste Einrichtung zur digitalen Signalverarbeitung bildet eine
vorher festgelegte Signalgruppe und wenn die Schnittstelleneinheit
verfügbar
ist, wird die vorher festgelegte Signalgruppe durch die DMA-Einheit
an die erste Schnittstelleneinheit der ersten Einrichtung zur digitalen
Signalverarbeitung angelegt. Diese Übertragung einer oder mehrerer
Signalgruppen an die Schnittstelleneinheit hängt davon ab, ob die Schnittstelleneinheit
ein TXEMPTY-Signal an den DMA-Controller anlegt. Das TXEMPTY-Signal
zeigt an, dass die Schnittstelleneinheit für die Speicherung von Signalgruppen
verfügbar
ist. Wenn das TXEMPTY-Signal erzeugt wird, dann wird die vorher
festgelegte Signalgruppe an die Schnittstelleneinheit übertragen.
Wenn die vorher festgelegte Signalgruppe in der Schnittstelleneinheit
gespeichert wird, erzeugt die Schnittstelleneinheit ein RXFULL-Steuersignal und
legt dieses Signal an den DMA-Controller der Einrichtung zur digitalen
Signalverarbeitung an, in der die benötigten Signalgruppen gespeichert
sind. Die vorher festgelegte Signalgruppe wird in Reaktion auf das
RXFULL-Steuersignal an den DMA-Controller übertragen,
der das Steuersignal empfängt.
Der DMA-Controller leitet dann die vorher festgelegte Signalgruppe
an die zugehörige
Kernverarbeitungseinheit weiter. Die Kernverarbeitungseinheit verarbeitet die
vorher festgelegte Signalgruppe und stellt die Adresse in der zugehörigen Speichereinheit
der Signalgruppen, die von der ersten Einrichtung zur digitalen
Signalverarbeitung angefordert wurden, fest.
-
Die
Kernverarbeitungseinheit weist dann den DMA-Controller an, die durch
die vorher festgelegte Signalgruppe spezifizierten Signalgruppen
vom Speicher abzurufen und diese Signalgruppen an die zugehörige Schnittstelleneinheit anzulegen.
Wenn ein Signal von der Schnittstelleneinheit, TXEMPTY', anzeigt, dass die
Schnittstelleneinheit bereit ist, Signalgruppen zu empfangen, überträgt der DMA-Controller
die angeforderten Signalgruppen von der Speichereinheit an die Schnittstelleneinheit.
Die Schnittstelleneinheit erzeugt ein RXFULL'-Signal und legt dieses Steuersignal
an den DMA-Controller in der digitalen Signalverarbeitungseinheit,
die Signalgruppen anfordert, an. Der DMA-Controller speichert nun die
angeforderten Signalgruppen in der der anfordernden Kernverarbeitungseinheit
zugehörigen
Speichereinheit. Die benötigten
Signalgruppen sind nun für
die Kernverarbeitungseinheit verfügbar.
-
Wie
den Fachleuten einleuchtet, kann die vorangehende Implementierung
auf eine digitale Signalverarbeitungseinheit ausgedehnt werden,
die mehr als zwei Einrichtungen zur digitalen Signalverarbeitung
umfasst. Die Ausdehnung würde
Unterbrechungssignalleitungen zwischen allen Einrichtungen zur digitalen
Signalverarbeitung und Signalgruppenleitungen von jeder Schnittstelleneinheit
zu allen in den anderen Einrichtungen zur digitalen Signalverarbeitung
enthaltenen DMA-Einheiten einschließen. Es wird ferner einleuchten,
dass es sich bei der mit der Einrichtung zur digitalen Signalverarbeitung
verbundenen Schnittstelleneinheit um ein Zwischenspeichergerät handelt.
Die Schnittstelleneinheit ist eine Pufferspeichereinheit, die die Übertragung
von Signalgruppen ermöglicht.
Die Schnittstelleneinheit kann durch Register implementiert werden,
z.B. eine Komponente mit FIFO-Prinzip, oder jedes andere Gerät, das für die Zwischenspeicherung
von Signalgruppen geeignet ist, die zwischen Einrichtungen zur digitalen
Signalverarbeitung zu übertragen
sind.
-
Das
Vorangehende kann zum Beispiel für eine
digitale Signalverarbeitungseinheit angewendet werden, die folgendes
umfasst: mindestens eine erste und eine zweite Einrichtung zur digitalen
Signalverarbeitung, wobei jede Einrichtung zur digitalen Signalverarbeitung
folgendes umfasst: eine Kernverarbeitungseinheit; mindestens eine
Speichereinheit; mindestens einen seriellen Anschluss; eine Schnittstelleneinheit,
die einen Datensignalpfad zu einer zweiten DMA-Einheit einer zweiten Einrichtung
zur digitalen Signalverarbeitung aufweist; und einen DMA-Controller
für die
Steuerung des Austauschs von Signalgruppen zwischen den anderen
Komponenten, wobei, wenn eine Schnittstelleneinheit Signalgruppen
von der Schnittstelleneinheit empfangen und speichern kann, die
Schnittstelleneinheit ein erstes Steuersignal an den DMA-Controller
anlegt, wobei wenn die Schnittstelleneinheit als Signalgruppen, die
an die zweite Einrichtung zur digitalen Signalverarbeitung zu übertragen
sind, ein zweites Steuersignal an den DMA-Controller einer zweiten
Einrichtung zur digitalen Signalverarbeitung anlegt.
-
Die
Einrichtung zur digitalen Signalverarbeitung kann eine angeforderte
Signalgruppe erfordern, in welchem Fall die digitale Signalverarbeitungseinheit
ein Unterbrechungssignal an die zweite Einrichtung zur digitalen
Signalverarbeitung anlegt, oder die Einrichtung zur digitalen Signalverarbeitung
kann eine in der zweiten Einrichtung zur digitalen Signalverarbeitung
gespeicherte Signalgruppe erfordern, in welchem Fall eine vorher
festgelegte Signalgruppe durch die Schnittstelleneinheit an den
zweiten DMA-Controller der zweiten Einrichtung zur digitalen Signalverarbeitung übertragen
wird. Vorzugsweise identifiziert die vorher festgelegte Signalgruppe
die angeforderte Signalgruppe. Die angeforderte Signalgruppe kann
von der Schnittstelleneinheit der zweiten Einrichtung zur digitalen
Signalverarbeitung an den DMA-Controller der ersten Einrichtung
zur digitalen Signalverarbeitung übertragen werden. Die erste und
die zweite Einrichtung zur digitalen Signalverarbeitung können sich
eine einzelne Schnittstelleneinheit teilen.
-
Alternativ
kann ein Datenverarbeitungssystem folgendes umfassen: mindestens
eine erste und eine zweite Einrichtung zur digitalen Signalverarbeitung,
wobei jede Einrichtung zur digitalen Signalverarbeitung folgendes
umfasst: eine Kernverarbeitungseinheit; mindestens eine Speichereinheit;
mindestens einen seriellen Anschluss; und einen DMA-Controller, wobei
der DMI-Controller den Austausch von Signalgruppen zwischen anderen
Komponenten steuert; und eine Schnittstelleneinheit, die Datensignalpfade
zum DMA-Controller jeder Einrichtung zur digitalen Signalverarbeitung
umfasst, wobei die Schnittstelleneinheit Signalgruppen von jedem der
DMA-Controller empfängt
und speichert, wenn die Schnittstelleneinheit ein erstes Steuersignal
an den DMA-Controller anlegt, wobei die Schnittstelleneinheit Signalgruppen
an einen DMA-Controller überträgt, nachdem
ein zweites Steuersignal an den DMA-Controller angelegt wurde.