-
Diese
Erfindung bezieht sich allgemein auf Mikroprozessoren und genauer
auf Verbesserungen in Speicherschaltungen und -systemen für den gemeinsamen
Zugriff sowie in Verfahren zur Durchführung des gemeinsamen Zugriffs.
-
Mikroprozessoren
sind Universalprozessoren, die hohe Anweisungsdurchsätze erzielen,
um die darauf laufende Software auszuführen, wobei sie je nach den
besonderen Softwareanwendungen, die einbezogen werden, einen breiten
Bereich von Verarbeitungsanforderungen aufweisen können. Oft
ist einem Prozessor ein Controller für den Direktspeicherzugriff
(DMA-Controller) zugeordnet, um die Last der Übertragung von Datenblöcken von
einem Speicher oder einem Peripheriebetriebsmittel zu einem anderen
zu übernehmen
und um dadurch die Leistung des Prozessors zu verbessern.
-
Es
sind viele verschiedene Prozessortypen bekannt, wovon Mikroprozessoren
lediglich ein Beispiel sind. Beispielsweise werden, insbesondere
für spezifische
Anwendungen wie etwa Mobilverarbeitungsanwendungen, umfassend digitale
Signalprozessoren (DSPs) verwendet. DSPs sind typisch so konfiguriert,
dass die Leistung der betroffenen Anwendungen optimiert wird, wobei
sie spezialisiertere Ausführungseinheiten
und Anweisungssätze
verwenden, um dies zu erreichen. Insbesondere, jedoch nicht ausschließlich, bei
Anwendungen wie etwa der Mobiltelekommunikation ist es erwünscht, eine
ständig
wachsende DSP-Leistung zu erzielen, während der Stromverbrauch so
niedrig wie möglich
gehalten wird.
-
Um
die Leistung eines digitalen Systems weiter zu verbessern, können zwei
oder mehr Prozessoren miteinander verbunden werden. Zum Beispiel
kann in einem digitalen System ein DSP mit einem Universalprozessor
verbunden werden. Der DSP führt
numerisch intensive Signalverarbeitungsalgorithmen aus, während der
Universalprozessor den gesamten Steuerungsablauf organisiert. Die
beiden Prozessoren kommunizieren und übertragen Daten zur Signalverarbeitung über einen
gemeinsam genutzten Speicher.
-
Die
vorliegende Anwendung ist ein System und ein Verfahren für dessen
Betrieb zur Verbesserung der Leistung von Prozessoren wie etwa beispielsweise,
jedoch nicht ausschließlich,
digitalen Signalprozessoren.
-
Dementsprechend
wird ein digitales System geschaffen, das eine Speicherschaltung
besitzt, auf die durch mehrere Anforderungsschaltungen zugegriffen
werden kann. Eine Zeitplanungsschaltung ist mit den Anforderungsschaltungen
verbunden, wobei sie so betreibbar ist, dass Speicherzugriffe auf
die Speicherschaltung sequentiell zeitlich geplant werden. Eine
Auswahlschaltung ist mit einer der Anforderungsschaltungen und mit
dem Ausgang der Zeitplanungsschaltung verbunden. Es wird eine Zugriffsbetriebsart-Schaltungsanordnung
geschaffen, die wenigstens eine erste Zugriffsbetriebsart oder eine
zweite Zugriffsbetriebsart angibt und mit der Auswahlschaltung steuerbar
verbunden ist, so dass alle Anforderungsschaltungen sequentiell
auf die Speicherschaltung zugreifen können, wenn die Zugriffsbetriebsart-Schaltungsanordnung
die erste Zugriffsbetriebsart angibt, und eine der Anforderungsschaltungen
einen ausschließlichen
Zugriff auf die Speicherschaltung hat, wenn die Zugriffsbetriebsart-Schaltungsanordnung
die zweite Zugriffsbetriebsart angibt. Ein Größenregister, das einen Größenparameter
hält, ist
mit der Speicherschaltung verbunden. Ein erster Abschnitt der Speicherschaltung
wird in Reaktion auf den Größenparameter
ausgewählt,
wenn die Zugriffsbetriebsart-Schaltungsanordnung die zweite Zugriffsbetriebsart
angibt, wobei nur der erste Abschnitt der Speicherschaltung für einen
ausschließlichen
Zugriff durch die erste Anforderungseinrichtung betreibbar ist,
wenn die Zugriffsbetriebsart-Schaltungsanordnung die zweite Zugriffsbetriebsart
angibt.
-
Ein
zweiter Abschnitt der Speicherschaltung, der in Reaktion auf den
Größenparameter
nicht gewählt ist,
kann so betreibbar sein, dass er in einer Niedrigleistungsbetriebsart
ist, wenn die Zugriffsbetriebsart-Schaltungsanordnung die zweite
Zugriffsbetriebsart angibt.
-
Die
Auswahlschaltung kann so betreibbar sein, dass auf einen zweiten
Abschnitt der Speicherschaltung, der in Reaktion auf den Größenparameter
nicht gewählt
wird, ein Zugriff durch eine zweite Anforderungseinrichtung erzielt
wer den kann, wenn die Zugriffsbetriebsart-Schaltungsanordnung die
zweite Zugriffsbetriebsart angibt.
-
Ferner
wird hier offenbart, dass ein Verfahren zum Betreiben eines digitalen
Systems, das eine Speicherschaltung besitzt, die von mehreren Anforderungsschaltungen
gemeinsam genutzt wird, geschaffen wird. Der zwischen den mehreren
Anforderungsschaltungen aufgeteilte Zugriff auf die Speicherschaltung
wird zugelassen, wenn sich das digitale System in einer ersten Betriebsart
befindet. Ein erster Abschnitt der Speicherschaltung wird in Reaktion
auf einen in einem Register gespeicherten Größenparameter ausgewählt, so
dass ein zweiter Abschnitt der Speicherschaltung nicht gewählt ist.
Der Zugriff auf den ersten Abschnitt der Speicherschaltung wird
nur für
eine erste Anforderungseinrichtung der mehreren Anforderungseinrichtungen
begrenzt, wenn sich das digitale System in einer zweiten Betriebsart
befindet.
-
Einzelne
Ausführungsformen
gemäß der Erfindung
werden nun lediglich beispielhaft und mit Bezug auf die beigefügte Zeichnung
beschrieben, in der:
-
1 ein Blockschaltplan zweier
Prozessoren ist, die gemeinsam einen Speicherblock nutzen, in dem ein
Abschnitt des Speicherblocks als Nur-Host-Speicher bestimmt werden kann;
-
2 ein Blockschaltplan des
digitalen Systems von 1 ist,
der den Speicherblock von 1 ausführlicher
zeigt;
-
3 ein Blockschaltplan eines
alternativen digitalen Systems zu dem in 1 veranschaulichten ist;
-
4 ein ausführlicherer
Blockschaltplan einer Megazelle aus 3 ist;
-
5 ein ausführlicher
Blockschaltplan des DMA-Controllers von 4 ist;
-
6 ein Blockschaltplan ist,
der Abschnitte der Host-Anschlussschnittstelle des DMA-Controllers zeigt;
-
7A ein Zeitablaufplan ist,
der einen Übergang
von der SAM-Betriebsart zu der HOM-Betriebsart veranschaulicht;
-
7B ein Zeitablaufplan ist,
der einen Übergang
von der HOM-Betriebsart zu der SAM-Betriebsart veranschaulicht;
-
8 ein Zeitablaufplan ist,
der einen Speicherzugriff in der SAM-Betriebsart veranschaulicht;
-
9 ein Zeitablaufplan ist,
der einen Speicherzugriff in der HOM-Betriebsart veranschaulicht;
-
10 eine schematische Darstellung
einer integrierten Schaltung ist, die das digitale System von 1 enthält; und
-
11 eine beispielhafte Implementierung
eines Beispiels einer solchen integrierten Schaltung in einer Mobiltelekommunikations-Vorrichtung
wie etwa in einem Mobiltelephon veranschaulicht.
-
Sofern
nichts anderes angegeben ist, beziehen sich einander entsprechende
Bezugszeichen und Symbole in den verschiedenen Figuren und Tabellen
auf einander entsprechende Teile. Es werden gleiche Bezugszeichen
verwendet, um gleiche Teile zu kennzeichnen, wobei sich die Figuren
auf das digitale System von 3 beziehen,
sofern nichts anderes festgelegt ist.
-
Auch
wenn das System und das Verfahren, die hier offenbart sind, besondere
Anwendung in digitalen Signalprozessoren (DSPs) finden, die z. B.
in einer anwendungsspezifischen integrierten Schaltung (ASIC) implementiert
werden, können
sie ebenso Anwendung in anderen Prozessorformen finden. Eine ASIC
kann eine oder mehrere Megazellen enthalten, die jeweils kundenspezifisch
entworfene Funktionsschaltungen zusammen mit im Voraus entworfenen
Funktionsschaltungen, die von einer Entwurfsbibliothek bereitgestellt
werden, aufweisen.
-
1 ist ein Blockschaltplan
des digitalen Systems 1, das einen Host-Prozessor 10 und
einen DSP 20 besitzt, die einen Speicherblock 42,
in dem ein Abschnitt 42a des Speicherblocks als Nur-Host-Speicher bestimmt
werden kann, gemeinsam nutzen. Ein verbleibender Abschnitt 42b des
Speicherblocks wird zwischen dem Host-Prozessor und dem DSP aufgeteilt.
Ein Zeitplanungsblock 40 empfängt Übertragungsanforderungen von
einem Speicherzugriffsknoten im Host-Prozessor 10, der
mit dem Bus 11 verbunden ist, und Übertragungsanforderungen von
einem Speicherzugriffsknoten im DSP 20, der mit dem Bus 21 verbunden
ist. Die Zeitplanungseinrichtung 40 verschachtelt diese
Anforderungen und übergibt
sie über
einen Anforderungsausgangsknoten, der mit dem Bus 41 verbunden
ist, an den Speicherblock 42b. Zugriffe durch den Host-Prozessor
können
in der SAM-Betriebsart (Speicher für den gemeinsamen Zugriff)
oder in der HOM-Betriebsart (Nur-Host-Speicher) erfolgen. Ein Zugriff
durch den Host 10 in der HOM-Betriebsart umgeht die Synchronisationsschaltungsanordnung
in der Zeitplanungseinrichtung 42, die den Zeitablauf mit
dem DSP-Zeitablauf synchronisiert. Auf den Nur-Host-Speicher 42a wird
in der HOM-Betriebsart durch den Bus 11 auf eine Weise,
die die Zeitplanungseinrichtung 40 umgeht, direkt zugegriffen.
Diese Zugriffe sind schneller, da keine Zeitplanungsverzögerung zugezogen
wird.
-
Der
Speicherblock 42 besitzt eine Gesamtgröße S1. Der Nur-Host-Speicher 42a besitzt
eine Größe S2, die
z. B. für
eine bestimmte Anwendung ausgewählt
wird. Der gemeinsam genutzte Speicherabschnitt 42b besitzt
eine Größe S3, die
gleich S1 minus S2 ist. Für
eine andere Anwendung, die in dem digitalen System 10 ausgeführt wird,
ist es wünschenswert,
eine andere Größe S1 zu
besitzen. Die Größe S1 kann
unter Steuerung des Host-Prozessors 110 geändert werden.
-
2 ist ein Blockschaltplan
des digitalen Systems 1, der den Speicherblock von 1 ausführlicher zeigt. In der vorliegenden
Ausführungsform
beträgt
die Größe S1 128
K × 16-Bit-Wörter. Sechzehn
Speicherbänke 50(0)–50(15) betragen
jeweils 8 K × 16.
Die Größe S2 kann
durch Schreiben eines Größenwerts
in das Größenregister 60 so
ausgewählt
werden, dass sie irgendein Vielfaches von 8 K × 16 beträgt. Der Größendecodierer 61 erzeugt
sechzehn einzelne HOM-Größenfreigabeleitungen 61(0)–61(15),
die mit der jeweils entsprechenden Speicherbank verbunden sind.
Tabelle 1 listet die HOM-Größenwerte,
die im Größenre gister 60 gespeichert
werden können,
und die resultierenden HOM-Größenfreigabesignale
sowie die Zuordnung von HOM- und SAM-Speichergrößen auf. Ein Controller 62 für die HOM-Betriebsart
reagiert auf eine Richtlinie, die über den Bus 41 geschrieben
wird, so dass er sich entweder in der HOM-Betriebsart befindet oder
in die SAM-Betriebsart umschaltet. In Tabelle 1 ist zu beachten,
dass, wenn die HOM-Betriebsart "0" ist, d. h. in der SAM-Betriebsart,
der HOM-Größenwert
ignoriert wird und sich der gesamte Speicherblock in der SAM-Betriebsart
befindet.
-
Tabelle
1 – HOM-Größenfreigabesignale
-
Nochmals
in 2 besitzt jede Speicherbank 50(n) einen
Multiplexer 52, der an einem Eingang den Bus 11 und
an einem zweiten Eingang den Bus 41 empfängt. Die
Multiplexersteuerschaltung 53 stellt ein Steuersignal bereit,
so dass der Bus 11 ausgewählt wird, wenn das HOM-Bit
aktiviert ist und wenn ein entsprechendes HOM-Größenfreigabesignal aktiviert
ist. Andernfalls wählt
der Multiplexer 52 den Bus 41 aus. Ein Ausgangsknoten
jedes Multiplexers stellt das ausgewählte Anforderungssignal, das
die Adresse und die Daten enthält,
an der zugeordneten Speicherbank bereit.
-
Während die
HOM-Betriebsart aktiviert ist, können
die Anforderungen vom DSP 20 immer noch durch die Speicherbänke, die
als SAM zugeordnet sind, bedient werden. In einer alternativen Ausführungsform
können
die Speicherbänke,
die in Reaktion auf den Größenparameter
in der HOM-Betriebsart nicht freigegeben sind, in einen Niedrigleistungszustand
versetzt werden, indem eine torgesteuerte Taktschaltung verwendet wird,
um z. B. den Takt für
die Speicherbank auf "AUS" zu schalten.
-
3 ist ein Blockschaltplan
eines weiteren digitalen Systems, das eine alternative Ausführungsform zu
der in 1 veranschaulichten
enthält.
Die Megazelle 100 enthält
eine CPU, einen DMA-Controller sowie Speicherschaltungen und wird
nachfolgend ausführlicher
beschrieben. Der Host-Prozessor 110 ist mit der Megazelle 100 über eine
erweiterte Host-Anschlussschnittstelle (EHPI) 112 verbunden.
Die EHPI 112 stellt einen Multiplexbetrieb des Adressen-
und Datenbusses 111 des Hosts zur Anpassung an die von
der Megazelle 100 bereitgestellte Host-Anschlussschnittstelle 115 bereit.
Auf den Speicher 122, die Universalperipheriegeräte 132 und
die dedizierten Peripheriegeräte 134 kann
durch den Host-Prozessor 110 oder
durch die CPU in der Megazelle 100 zugegriffen werden.
Die Steuerschaltungsanordnung 170 stellt Taktsignale für die Schaltungsanordnung
in der Megazelle 100 bereit. Die MCU 110 enthält ihre
eigene Zeitgeber-Schaltungsanordnung, was erfordert, dass die Zugriffe
von der MCU 110 auf die Betriebsmittel, die durch die Megazelle 100 gesteuerten werden,
mit der Zeitbasis der Megazelle 100 synchronisiert werden
müssen.
-
Der
JTAG-Testanschluss 160 enthält Hardware-Erweiterungen für verbesserte
Fehlersuchfunktionen. Diese helfen bei der Entwicklung des Anwendungssystems
(der Software und der Hardware) des Anwenders unter Verwendung lediglich
der JTAG-Schnittstelle, eines Testzugriffsanschlusses und einer
Boundary-Scan-Architektur, die durch den IEEE-1149.1-Standard mit
umfassenden Betriebsartverbesserungen definiert ist, wie in dem
US-Patent 5.828.824 beschrieben ist. Die Emulationsschaltungsanordnung 150 stellt
eine Fehlersuch-Programmsteuerung und Ablaufüberwachungseinrichtungen bereit.
-
4 ist ein ausführlicherer
Blockschaltplan der Megazelle 100. Die CPU 200 ist
ein digitaler Signalprozessor (DSP). Die CPU 200 greift über die
Speicherschnittstellen-Schaltungsanordnung 202 auf die
Speicherschaltungen 220, 222 und 224 und
die EMIF 120 zu. Über
die RHEA-Brücke 230 zum
RHEA-Bus 130 greift die CPU 200 auf andere Betriebsmittel
zu. Der DMA-Controller 210 ist ein Mehrkanal-DMA-Controller
mit separaten Kanal- und Anschluss-Controllern, wobei jeder Anschluss
eine lokale Zeitplanungs-Schaltungsanordnung aufweist. Der DMA 210 kann
so programmiert sein, dass in dem digitalen System 10 Daten
zwischen verschiedenen Quellen und Zielen wie etwa dem Einzelzugriffs-RAM 220,
dem Doppelzugriffs-RAM 222 und dem externen Speicher 122 über die
externe Speicherschnittstelle 120 sowie den Peripherievorrichtungen
am Betriebsmittelbus (RHEA) 130 über die RHEA-Brücke 230 übertragen
werden. Die MCU 110 kann ebenso auf diese Betriebsmittel über die
Host-Anschlussschnittstelle (HPI) 115, die mit dem DMA-Controller 210 verbunden
ist, zugreifen. Der Weg zwischen dem HPI-Anschluss und dem Speicher
ist ein DMA-Kanal.
-
Die
Speicherschaltung 220 ist ein 128 K × 16-Einzelzugriffs-RAM (128
K × 16-SARAM),
der sechzehn 32-KByte-Module umfasst. Der DMA 210 kann
durch einen 16-Bit-DMA-Bus auf den SARAM zugreifen. Der DMA-Buszugriff
(R/W) kann in der SAM-Betriebsart (Betriebsart für den gemeinsamen Zugriff)
oder in der HOM-Betriebsart (Nur-Host-Betriebsart) erfolgen. Ein
Zugriff durch die MCU 110 in der HOM-Betriebsart umgeht
die Synchronisationsschaltungsanordnung im DMA 210, die
den MCU-Zeitablauf mit dem Zeitablauf der Megazelle 100 synchronisiert.
Ein HOM-Größenregister
kann bereitgestellt werden, so dass die Größe des HOM-Speichers durch
den Host-Prozessor spezifiziert werden kann.
-
Das
Prioritätsschema
zwischen der CPU 200 und dem DMA 210 ist programmierbar.
Die Prioritätsschaltungsanordnung
ist im SARAM implementiert, wohingegen sich das Steuerregister in
dem über
den RHEA-Buszweig 130a zugänglichen DMA-E/A-Bereich befindet.
-
Die
Speicherschaltung 222 ist ein 32 K × 16-Doppelzugriffs-RAM (DARAM),
der vier 16-KByte-Module umfasst. Die CPU 200 kann zwei
Zugriffe auf ein DARAM-Speichermodul in einem Zyklus ausführen; z.
B. ein einfaches Lesen und ein einfaches Schreiben oder ein langes
Lesen und ein langes Schreiben, ein doppeltes Lesen und ein doppeltes
Schreiben usw. Die den verschiedenen Zugriffen zugewiesenen Prioritäten werden von
dem DARAM gehandhabt. Das Prioritätsschema zwischen CPU und DMA
ist programmierbar. Die Prioritätsschaltungsanordnung
ist im DARAM implementiert, wohingegen sich das Steuerregister in
dem über
den RHEA-Bus zugänglichen
DMA-E/A-Bereich befindet.
-
Eine
hier offenbarte alternative Ausführungsform
des Systems und des Verfahrens kann andere Konfigurationen des Speichers
und der Peripheriegeräte
aufweisen.
-
4 zeigt lediglich jene Abschnitte
der Megazelle 100, die für ein besonderes Verständnis einer
Ausführungsform
der vorliegenden Erfindung relevant sind. Einzelheiten der allgemeinen
Konstruktion für
DSPs sind gut bekannt und können
anderswo leicht gefunden werden. Zum Beispiel beschreibt das an
Frederick Boutaud u. a. erteilte US-Patent 5.072.418 ausführlich einen
DSP und ist hier durch Literaturhinweis eingefügt. Das an Gary Swoboda u.
a. erteilte US-Patent 5.329.471 beschreibt ausführlich, wie ein DSP zu testen
und zu emulieren ist, und ist hier durch Literaturhinweis eingefügt. Einzelheiten
von Abschnitten des DMA-Controllers 210,
die für
eine besondere Ausführungsform
der vorliegenden Erfindung relevant sind, sind hier hinreichend ausführlich erläutert, so
dass der Durchschnittsfachmann auf dem Mikroprozessorgebiet die
Erfindung ausführen
und verwenden kann.
-
Tabelle
2 fasst mehrere der überall
in diesem Dokument verwendeten Abkürzungen zusammen.
-
Tabelle
2 – Glossar
der Bezeichnungen
-
Der
DMA-Controller 210 überträgt Daten
zwischen Punkten im Speicherraum ohne Eingreifen durch die CPU.
Der DMA ermöglicht,
dass Datenverschiebungen zu und von dem internen Speicher, dem externen Speicher
und den Peripheriegeräten
im Hintergrund des CPU-Betriebs stattfinden. Der DMA besitzt sechs
unabhängige
programmierbare Kanäle,
die sechs verschiedene Kontexte für den DMA-Betrieb ermöglichen, die in der Zeitmultiplexbetriebsart
(TDM-Betriebsart) ausgeführt
werden.
-
Die
DMA-Architektur ist um die Anschlüsse und Kanäle geordnet. Nochmals in 4 besitzt jedes Betriebsmittel,
auf das der DMA zugreifen kann, seinen eigenen Anschluss: den SARAM-Anschluss 212a,
den DARAM-Anschluss 212b, den EMIF-Anschluss 212c und
den RHEA-Anschluss 212d. Der HPI-Anschluss 214 ist
ein Sonderfall, der nachfolgend erläutert wird. Ein Anschluss kann
Lese- und Schreibzugriffe
zu dem Betriebsmittel, mit dem er verbunden ist, über einen
hierzu vorgesehenen Bus vornehmen.
-
Dieser
DMA-Controller erfüllt
den Bedarf von Anwendungen mit hohem Durchsatz und von Mehrkanalanwendungen
wie etwa Funktelephon-Basisstationen oder dem Datenverkehr für einen
Zellenhandapparat.
-
5 ist ein ausführlicher
Blockschaltplan des DMA-Controllers von 4. Ein Kanal wird aus einem Quellenanschluss,
einem FIFO und einem Zielanschluss hergestellt. In der vorliegenden
Ausführungsform sind
sechs Kanäle
verfügbar,
obgleich andere Ausführungsformen
alternative Anzahlen von Kanälen
aufweisen können.
Sechs Kanal-Controller 310–315 steuern die sechs
Kanäle.
Alle sechs Kanäle
werden an jedem Anschluss über
entsprechende Anschluss-Multiplexer 330–333 multiplexiert.
Jede Kanalsteuerung weist einen entsprechenden FIFO(n) auf. Die
FIFOs werden von den Kanälen
nicht gemeinsam genutzt; jeder Kanal besitzt seinen eigenen FIFO.
Dies ermöglicht
mehr Unabhängigkeit
zwischen den Übertragungen.
Eine DMA-Übertragung
auf einem Kanal (n) erfolgt in zwei Schritten: Der Quellenanschluss
führt einen
Lesezugriff auf ein Quellenbetriebsmittel aus, holt die Daten und
legt sie im FIFO des Kanals (n) ab; wobei der Zielanschluss aktiviert
wird und einen Schreibzugriff auf das Zielbetriebsmittel zum Schreiben
der Daten ausführt, wenn
sich die Daten im FIFO befinden. Jeder Kanal-Controller enthält eine
separate Leseadresseneinheit RAU(0–5) sowie eine separate Schreibadresseneinheit
WAU(0–5).
-
Alle
Anschlüsse
arbeiten parallel. In dieser Ausführungsform gibt es vier Anschlüsse, die
die vier Datenspeicherungs-Betriebsmittel anschließen, weshalb
vier gleichzeitige Lese-/Schreibzugriffe in demselben Taktzyklus
erfolgen können.
Um diese Zugriffsrate zu unterstützen,
werden die Adressenberechnung und die Verschachtelung pipelineartig
ausgeführt.
Die maximale Übertragungsrate
für diese
Ausführungsform
mit vier Anschlüssen
beträgt
zwei Wörter
(zwei Lese- und zwei Schreibvorgänge)
pro CPU-Zyklus. Dies wird erreicht, wenn die Quellen und Ziele unabhängig sind.
Eine alternative Ausführungsform
kann eine größere Anzahl
von Anschlüssen
mit einer entsprechend höheren
maximalen Übertragungsrate
aufweisen.
-
Ein
Leseadressenbus RA umfasst sieben einzelne Busse, um eine Kanalleseadresse
von jeder Leseadresseneinheit RAU(0–5) und von dem HPI-Anschluss
zu jedem Anschlusseingangs-Mux 330–333 parallel zu übermitteln.
Ein Schreibadressenbus WA umfasst sieben einzelne Busse, um eine
Kanalschreibadresse von jeder Schreibadresseneinheit WAU(0–5) und
von dem HPI-Anschluss zu jedem Anschlusseingangs-Mux 330–333 parallel
zu übermitteln.
Ein Datenausgangsbus DO umfasst gleichfalls sieben einzelne Busse,
um einen Datenausgangswert von jedem FIFO(0–5) und von dem HPI-Anschluss
zu jedem Anschlusseingangs-Mux 330–333 parallel zu übermitteln.
Ein Dateneingangsbus DI umfasst vier einzelne Busse, um einen Dateneingangswert
von jedem Anschluss zu jedem FIFO(0–5) und zu dem HPI-Anschluss
parallel zu übermitteln.
-
Ein
DMA-Anschluss sendet eine Anforderung an seinen zugeordneten Speicher,
um in diesem Speicher ein Datenelement zu lesen oder zu schreiben.
Eine Übertragung
eines Wortes besteht aus einer Leseanforderung an einem Quellenanschluss
i, gefolgt von einer Schreibanforderung am Zielanschluss j (i kann
gleich j sein). Eine Anforderung wird durch ihren Typ (r für Lesen,
w für Schreiben)
und den Kanal, zu dem sie gehört, definiert.
-
Beispiel:
ri ist eine Leseanforderung auf dem Kanal
i
wj ist eine Schreibanforderung auf
dem Kanal j
-
Jeder
Anschluss besitzt seine eigene Verschachtelungseinrichtung 350–353,
um den Kanal-Multiplexbetrieb an dem zugeordneten Anschluss zu steuern.
Die Verschachtelungseinrichtung empfängt Lese- und Schreibanforderungen
von jedem Kanal, berechnet, welche die nächste Anforderung ist, die
bearbeitet werden muss, und löst
eine Anschlusssteuerungs-Zustandsmaschine aus, um diese Anforderung
zu bearbeiten.
-
Der
DMA-Controller 210 besitzt eine Anforderungszuordnungseinrichtung 340.
Es kann bis zu dreizehn Anforderungen geben, die in irgendeinem
gegebenen Taktzyklus anstehen: sechs Leseanforderungen, sechs Schreibanforderungen
und eine HPI-Anforderung. Um die Komplexität der Verschachtelungseinrichtung zu
verringern, kann eine Verschachtelungseinrichtung in der vorliegenden
Ausführungsform
ein Maximum von fünf
simultanen Anforderungen gleichzeitig verschachteln. Die Anforderungszuordnungseinrichtung 340 überprüft die DMA-Konfiguration sowie
die Signale der anstehenden Anforderungen und wählt ein Maximum von fünf Anforderungssignalen
aus, die an jede Verschachtelungseinrichtung zur Verarbeitung gesendet
werden. In einer alternativen Ausführungsform kann die Zuordnungseinrichtung
in getrennte Abschnitte unterteilt werden, so dass jeder Anschluss
eine in dem Anschluss enthaltene Zuordnungsschaltungsanordnung aufweist.
In einer weiteren Ausführungsform
kann eine komplexere Verschachtelungseinrichtung alle Anforderungen,
die von allen Kanälen
erzeugt werden, direkt empfangen und zeitlich planen.
-
Jeder
Anschluss besitzt einen zugeordneten Anschlusssteuerblock 360–363.
Diese Blöcke
sind für das
Auslösen
der Lese-/Schreibzugriffe auf die Speicher und Peripheriegeräte verantwortlich.
Sie realisieren das Transaktions-Zugriffsprotokoll zwischen den
Speichern oder den Peripheriegeräten
und dem DMA. Diese Protokolle sind dieselben für den SARAM und den DARAM.
Das RHEA-Busprotokoll
und das EMIF-Protokoll sind verschieden. Somit wird jeder Anschluss
auf den Betriebsmitteltyp abgestimmt, mit dem er verbunden ist.
-
Jeder
Kanal-Controller besitzt einen zugeordneten Prioritätsblock
PRIO(0–5).
Die Funktion dieses Blocks besteht darin, ein in dem DMA verfügbares Prioritätsschema
mit drei Ebenen zu realisieren: hohe Priorität für die HPI, hohe Priorität für die Kanäle, niedrige
Priorität
für die
Kanäle.
-
Jeder
Kanal-Controller besitzt einen zugeordneten Ereignissynchronisationsblock
EVENT(0–5).
Jeder Ereignissynchronisationsblock wartet auf Ereignisse, die eine Übertragung
auf seinem Kanal auslösen.
Jeder Block erwartet ferner Ereignisrückgänge.
-
In
dieser Ausführungsform
weisen die Kanal-FIFOs je acht Phasen auf. Ein FIFO empfängt die
Daten, die von einem Quellenanschluss zu einem Zielan schluss übermittelt
werden. Sie ermöglichen
die Pipelineverarbeitung der DMA-Übertragungen
und die Burst-Verarbeitung zu/von den externen Speichern. Bursts
mit acht Datenwörtern
sind auf allen Kanälen
möglich.
-
Der
Unterbrechungsgenerator 370 erzeugt gemäß der DMA-Konfiguration und
dem DMA-Zustand Unterbrechungen für die CPU. Jeder Kanal besitzt
sein eigenes zugeordnetes Unterbrechungssignal dma_nirq(5–0).
-
Die
RHEA-Schnittstelle 380 schließt den RHEA-Bus 130a von
der RHEA-Brücke an.
Die RHEA-Schnittstelle 380 wird lediglich für die Lese-
und Schreibvorgänge
der CPU in den DMA-Konfigurationsregistern verwendet. DMA-Zugriffe auf die
RHEA-Peripheriegeräte
erfolgen über
den RHEA-Anschluss und nicht über
die RHEA-Schnittstelle.
-
Die
Beschreibungsblöcke
CFG(0–5)
werden verwendet, um den Status der DMA-Übertragungen zu steuern und
zu überwachen.
Es gibt einen Beschreibungsblock pro Kanal. Sie werden über die
RHEA-Schnittstelle 380 gelesen/geschrieben. Der Beschreibungsblock 320 wird
verwendet, um den Status der Host-Prozessorübertragungen zu steuern und
zu überwachen.
In das HOM-Größenregister 321 kann
ein Größenwert
geladen werden, um einen Abschnitt des SARAM 220, der als
HOM-Speicher betrachtet wird, zu spezifizieren.
-
Der
HPI-Anschluss 214 ermöglicht
Direktübertragungen
zwischen dem HOST und dem Speicher. Dieser Weg unterstützt die
HOM- und die SAM-Betriebsart. In der HOM-Betriebsart werden die
DMA-Register umgangen. Das Umschalten von SAM auf HOM erfordert,
dass der DMA-Host-Kanal vor dem Umschalten leer ist.
-
HPI-Anschluss
-
Der
HPI-Anschluss wird nun ausführlicher
beschrieben. 6 ist ein
Blockschaltplan, der Abschnitte der Host-Anschlussschnittstelle
des DMA-Controllers 210 zeigt. Tabelle 3 fasst die verschiedenen
HPI-Betriebsarten zusammen. In der HOM-Betriebsart wird der DMA
völlig
umgangen, wenn die HPI einen Zugriff auf den SARAM ausführt. Während der
HOM-Betriebsart können
deshalb Abschnitte des DMA-Controllers oder der gesamte DMA-Controller
und die CPU 200 in einen Niedrigleistungszustand versetzt
werden, ohne Übertragungen
von dem Host-Prozessor zu beeinflussen. Wenn die SAM-Betriebsart
besteht und die HPI Vorrang vor den DMA-Kanälen besitzt, wird der DMA völlig umgangen,
wenn die HPI auf den SARAM oder den DARAM zugreift. Dies ermöglicht eine Übertragungsbandbreite
von bis zu 20 MWörter/s
von der MCU zum internen Speicher. Wenn die HPI dieselbe Priorität wie die
DMA-Kanäle
besitzt, werden alle HPI-Anforderungen über den DMA verarbeitet.
-
Tabelle
3 – HPI-Betriebsarten
-
Ein
DMA-Freigabe/Sperr-Steuerregister (DMEDC) 600 ist ein 16-Bit-Lese/Schreib-Register,
auf das über
den RHEA-Bus zugegriffen wird. Es enthält die DMA-Übertragungspriorität und die Übertragungsfreigabesteuerung
für jeden
DMA-Kanal. Ein DMA-Freigabe/Sperr-Steuerbitfeld (DE[5:0]-Feld) spezifiziert
die DMA-Freigabe/Sperr-Steuerung für jeden Kanal (0 = gesperrt,
1 = freigegeben). Die DE[5:0]-Felder werden beim Rücksetzen
auf null gesetzt.
-
Ein
Feld für
die Kanalpriorität
PRIO[5:0] definiert die Priorität
jedes Kanals: PRIO[i] = 0 gibt an, dass der Kanal i eine niedrige
Priorität
besitzt; während
PRIO[i] = 1 angibt, dass der Kanal i eine hohe Priorität besitzt.
Ein Feld für
die HPI-Priorität
HPI[1:0] definiert die Priorität
des Host-Anschlusses in Bezug auf die DMA-Kanäle. Wenn HPI[1:0] = 10 oder
HPI[1:0] = 11 ist, besitzt die HPI gegenüber allen DMA-Kanälen die HÖCHSTE Priorität und kann
lediglich auf den chipintegrierten RAM zugreifen. Die anderen DMA-Kanäle können nicht
auf den chipintegrierten RAM zugreifen. Wenn HPI[1:0] = 01 ist,
wird die HPI sequentiell in den DMA-Kanal-Zeitmultiplex-Zugriffsfluss
(DMA-Kanal-TDM- Zugriffsfluss)
eingeordnet, wobei sie wie ein Kanal HOHER Priorität behandelt
wird. Wenn HPI[1:0] = 00 ist, wird die HPI in den DMA-Kanal-TDM-Fluss
integriert, wobei sie wie ein Kanal NIEDRIGER Priorität behandelt
wird. Nach dem Rücksetzen
ist HPI[1:0] = 11.
-
Die Übertragungen
aller Kanäle
werden auf eine Round-Robin-Weise zeitmultiplexiert. In einer gegebenen
Round-Robin-Warteschlange wird jeder Kanal auf den nächsten Kanal
geschaltet, nachdem sein Lesen ausgelöst worden ist. Die Kanäle niedriger
Priorität
bleiben solange unerledigt, wie Kanäle hoher Priorität ausgelöst werden
müssen.
Die Kanäle
niedriger Priorität
werden auf eine Round-Robin-Weise
ausgelöst,
wenn die ereignissynchronisierten Kanäle hoher Priorität auf Ereignisse
warten und die nicht synchronisierten Kanäle hoher Priorität fertig
sind.
-
Nochmals
im DMEDC-Register 600 spezifiziert ein CPU/DMA-Busprioritätsbit die
Priorität
der CPU 200 in Bezug auf den DMA-Controller 210,
wenn beide auf dasselbe Speicherbetriebsmittel zugreifen. Wenn CPU/DMA
= 1 ist, haben die Busse der CPU 200 für alle internen und externen
Speicherzugriffe Vorrang vor den Bussen des DMA 210. Wenn
CPU/DMA = 0 ist, haben die Busse des DMA 210 für alle internen
und externen Speicherzugriffe Vorrang vor den Bussen der CPU 200.
-
Wenn
die HPI die hohe Priorität
(HPI[1:0] = 10 oder HPI[1:0] = 11) besitzt, hat sie den ausschließlichen Zugriff
auf den SARAM und auf den DARAM. Alle den SARAM oder den DARAM betreffenden
DMA-Kanäle werden
unterbrochen. Die anderen DMA-Kanäle können den Betrieb fortführen.
-
In
der HOM-Betriebsart erfolgen die Übertragungen zu und von der
MCU einzig über
die HPI. Der DMA wird umgangen. Lediglich ein durch das HOM-Größenregister 321 spezifizierter
Bereich im SARAM kann Quelle/Ziel einer HPI-Übertragung
in der HOM-Betriebsart sein, wobei das SARAM-Zugriffsprotokoll direkt durch
die HPI angesteuert wird. In der vorliegenden Ausführungsform
besteht der SARAM 220 aus 128 K × 16-Bit-Wörtern. Sechzehn Speicherbänke 650(0)–650(15) betragen
jeweils 8 K × 16.
Eine Größe für einen HOM-Speicherabschnitt
kann so ausgewählt
werden, dass sie irgendein Vielfaches von 8 K × 16 beträgt, indem ein Größenwert
in das Größenregister 321 geschrieben
wird. Der Größendecodierer 661 erzeugt
sechzehn einzelne HOM-Größenfreigabeleitungen 661(0)–661(15),
die mit jeder entsprechenden Speicherbank verbunden sind. Folglich
kann eine Speicherbank, die nicht ausgewählt ist, um in dem HOM-Abschnitt
zu liegen, in einen Niedrigleistungszustand versetzt werden. Torgesteuerte
Taktschaltungen (nicht gezeigt), die jeder Speicherbank zugeordnet
sind, erfassen, wenn eine Bank nicht ausgewählt ist, wobei sie den Takt
für diese Bank
unterbrechen, um den Stromverbrauch zu verringern.
-
Übertragungen
durch den DMA, die keinen Zugriff auf den SARAM 220 erfordern,
können
weitergehen, während
sich der DMA in der HOM-Betriebsart befindet, wenn der DMA nicht
in den Leerlauf versetzt ist.
-
7A ist ein Zeitablaufplan,
der einen Übergang
von der SAM-Betriebsart zu der HOM-Betriebsart veranschaulicht,
der gemäß der Steuerung
der Betriebsartänderungs-Zustandsmaschine 662 stattfindet.
Ein Übergang
wird durch Setzen eines HOM-Betriebsartbits in einem Statusregister 602,
das auf dem RHEA-Bus speicheradressiert wird und ein bei 700 angegebenes
HOM-SAM-Anforderungssignal gl_homnsamreq_nr aktiviert, angefordert.
Vor Eintreten der HOM-Betriebsart muss der DMA alle seine laufenden
Kanalzugriffe an dem SARAM-Anschluss abschließen und alle Kanäle unterbrechen,
die Zugriff auf den SARAM-Bereich
erfordern, was durch die Verzögerungszeitdauer 710 angegeben
ist. Dies erfolgt durch Vergleichen der Quellen und der Ziele aller
Kanäle.
Wenn sie gleich dem SARAM sind, werden die relevanten aktiven Bits
ungültig
gesetzt, wobei der Kanal durch eine Verschachtelungsblockierung
unterbrochen wird. Wenn alle SARAM-Übertragungen abgeschlossen
sind, wird ein Bereitschaftssignal dma_homnsamrdy_nr bei 702 aktiviert.
Mit dem nächsten
Takt wird das HOM-Betriebsartsignal 663 (gl_homnsam_tr)
bei 704 aktiviert und zum SARAM-Mux-Steuerblock 610, zum DARAM-Mux-Steuerblock 612 und
zum HOM-Decodierblock 661 gesendet. Nach Übergang in
die HOM-Betriebsart können
der DMA- Controller
und/oder die CPU 200 in den Leerlauf versetzt werden, um Energie
zu sparen.
-
7B ist ein Zeitablaufplan,
der einen Übergang
von der HOM-Betriebsart zu der SAM-Betriebsart veranschaulicht.
Der DMA muss einen Takt besitzen (d. h. er muss die Leerlaufbetriebsart
verlassen haben), bevor ein HOM-SAM-Übergang
ausgeführt
wird. Alle HPI-HOM-Zugriffe werden abgeschlossen, wenn die HPI einen
HOM-SAM-Übergang
anfordert. Die Anforderung für
die Betriebsartänderung
erfolgt durch Rücksetzen des
HOM-Betriebsartbits in dem Statusregister, was bewirkt, dass das
Anforderungssignal gl_homnsamreq_nr bei 730 aktiviert wird.
Der DMA weist keine Operationen am SARAM-Anschluss auf, da er sich
in der HOM-Betriebsart befindet, weshalb das Bereitschaftssignal
dma_homnsamrdy_nr im nächsten
Takt bei 732 aktiviert wird. Das Betriebsartsignal 663 (gl_homnsam_tr)
wird bei 734 durch die HOM-Zustandsmaschine 662 in
den tiefen Zustand übergeleitet.
-
Wie
wiederum in 6 gezeigt
ist, erzeugt der HPI-Prioritätsänderungsblock 620 in
Reaktion auf den Zustand der Bits für die HPI-Priorität HPI[1:0]
im DMEDC-Register 600 das Signal HPI_direct_access 621.
Das Signal 621 wird in den HPI-Mux-Steuerlogikblocks 610, 612 und 614 verwendet,
um den HPI-Direktzugriff auf den SARAM und den DARAM gemäß der HPI-Priorität freizugeben/zu
sperren. Um zu verhindern, dass die HPI-Zugriffe die DMA-Zugriffe
stören,
muss dieses Signal nur geändert
werden, wenn alle Kanäle,
die auf den SARAM und auf den DARAM zugreifen, unterbrochen sind
und wenn es keine Anforderungen mehr gibt, die am SARAM- und am
DARAM-Anschluss anstehen. Die Bereitschaftssignale (nicht gezeigt)
werden von den Anschlüssen
bereitgestellt, um anzugeben, wenn eine Prioritätsänderung durch den Block 620 ausgeführt werden
kann.
-
Der
HPI-Prioritätsblock
und der Chipauswahl-Demultiplexerblock 630 realisieren
die beiden HPI-Prioritätspegel
(niedrig, hoch), wenn die HPI-Priorität gleich der Priorität des DMA-Kanäle ist,
wobei sie in Reaktion auf das HPI-Chip auswahlsignal cs_HPI die HPI-Anforderungen
(saram_api_req, daram_api_req und emi_api_req) an die Zielanschlüsse 212a–c senden.
-
Die
HPI-SARAM-Multiplexer 640 wählen entweder die Adressen-/Datensignale 641 direkt
von der Host-Anschlussschnittstelle 115 oder die Adressen-/Datensignale 642 vom
SARAM-Anschluss 212a aus, um sie in Reaktion auf ein vom
SARAM-Mux-Steuerblock 610 bereitgestelltes Auswahlsignal
am SARAM 220 bereitzustellen. Der Datenausgangsbus vom
SARAM ist direkt mit dem DMA-HPI-Datenausgangsbus verbunden. Das
Bestätigungssignal
vom SARAM wird durch den Bereitschafts-Mux 648 mit weiteren
Speicherbestätigungen
multiplexiert.
-
Die
HPI-DARAM-Multiplexer 644 wählen entweder die Adressen-/Datensignale 641 direkt
von der Host-Anschlussschnittstelle 115 oder die Adressen-/Datensignale 645 vom
DARAM-Anschluss 212b aus, um sie in Reaktion auf ein vom
DARAM-Multiplexersteuerblock 612 bereitgestelltes Auswahlsignal
am DARAM 222 bereitzustellen. Der Datenausgangsbus vom
DARAM ist direkt mit dem DMA-HPI-Datenausgangsbus verbunden. Das
Bestätigungssignal
vom DARAM wird durch den Bereitschafts-Mux 648 mit weiteren
Speicherbestätigungen
multiplexiert.
-
SARAM
-
Host-Zugriffe
auf den SARAM erfolgen unter Verwendung der HPI-Schnittstelle 115 über den
HPI-Anschluss 214 und einen DMA-Kanal. Wie oben beschrieben
ist, sind zwei Zugriffsbetriebsarten möglich. In der Betriebsart für den gemeinsamen
Zugriff (SAM) können
sowohl die MCU als auch der DSP auf den SARAM zugreifen. Alle Zugriffe
sind synchron mit dem dsp-Takt, wobei die Priorität durch
das DMEDC-Konfigurationsregister 600 gesteuert wird. In
der Nur-Host-Betriebsart (HOM) kann nur die MCU auf den SARAM zugreifen, wobei
alle Zugriffe asynchron zum Takt sind. In diesem Fall wird der DMA-Kanal
umgangen.
-
8 ist ein Zeitablaufplan,
der einen SARAM-Speicherzugriff in der SAM-Betriebsart veranschaulicht. Die Figur
zeigt den Zeitablauf sowohl für
ein Lesen in der SAM-Betriebsart als auch für ein Schreiben in der SAM-Betriebsart.
In der SAM-Betriebsart erfolgen alle Anforderungen synchron zum
DSP-Taktsignal dsp_clk, das von der Taktschaltungsanordnung im Steuerblock 170 bereitgestellt
wird. Eine Anforderung erfolgt durch die HPI, die das Anforderungssignal
Areq tief ansteuert. Das Signal Areq reagiert auf das HPI-Anforderungssignal
saram_api_req. Die Adressensignale Aabus, das Lese-/Schreibsignal
rnw, die Bytesignale Awrbyte usw. werden ebenfalls in demselben
Taktzyklus angesteuert. Sobald der Anforderung durch die Entscheidungslogik
stattgegeben wird, wird das Signal Aready_out wie bei 800 gezeigt
aktiv (tief) angesteuert.
-
Für ein SAM-Lesen
werden die Daten am Datenausgangsbus Adbusout wie bei 810 angegeben
durch den SARAM in dem zweiten Zyklus in der tiefen Phase des dsp_clk
angesteuert. Die Daten werden in der HPI an der folgenden Anstiegsflanke
von dsp_clk bei 811 empfangen und zwischengespeichert.
-
Für ein Schreiben
müssen
die Daten durch die HPI am Dateneingangsbus Adbusin wie bei 820 gezeigt in
dem zweiten Zyklus angesteuert werden.
-
9 ist ein Zeitablaufplan,
der einen Speicherzugriff in der HOM-Betriebsart veranschaulicht.
Wie oben erläutert
ist, wird der DMA in der HOM-Betriebsart umgangen. Deshalb stellt
die HOM-Betriebsart eine Direktverbindung zwischen der HPI-Schnittstelle
und dem SARAM-HPI/DMA-Anschluss her, wobei die Speicherzugriffe
ungeachtet des Taktsignals, das von dem DSP 200 und dem
DMA 210 verwendet wird, auf eine asynchrone Weise erfolgen.
-
Beim
Systemstart, während
die Rücksetzung
aktiv ist, konfiguriert das HPI-Modul
die HPI in der HOM-Betriebsart und lädt den Startcode in den SARAM-Speicher. Folglich
müssen
HOM-Betriebsartzugriffe ermöglicht
werden, während
die Rücksetzung
aktiv ist.
-
In
der HOM-Betriebsart besitzt das HPI-Modul den ausschließlichen
Zugriff auf den SARAM. Durch die HPI, die das Chipauswahlsignal
Acs bei 900 akti viert, wird eine HOM-Betriebsartanforderung
ausgelöst.
Dieses Signal wird durch den Demultiplexer-Block 630 erzeugt.
Dieses Signal wird verwendet, um den SARAM-Speicherkern freizugeben,
während
das Anforderungssignal Areq das Kernübernahmesignal ist. Für Speicherlesevorgänge und
Speicherschreibvorgänge
wird bei der Abstiegsflanke von Areq, die bei 910 angezeigt
ist, auf den Kern zugegriffen; wobei folglich der Adressenbus Aabus,
die Steuersignale und die Signale des Dateneingangsbusses Adbusin
für eine
Vorbereitungszeit Tsetup vor dieser Flanke gültig sein müssen.
-
Da
kein anderes Modul in der HOM-Betriebsart auf den SARAM zugreifen
kann, wird dem Bereitschaftssignal Aready_out jedes Mal bei 911 stattgegeben,
wobei es einfach eine gepufferte Version des Eingangssignals Areq
ist. Die Daten sind nach der Zugriffszeit Tacc, nachdem Aready_out
aktiv wird, für
ein Lesen gültig.
-
10 ist eine schematische
Darstellung einer integrierten Schaltung 40, die den Prozessor 100 enthält. Wie
gezeigt ist, weist die integrierte Schaltung mehrere Kontakte für die Oberflächenanbringung
auf. Die integrierte Schaltung kann allerdings andere Konfigurationen,
z. B. mehrere Anschlussstifte an einer unteren Oberfläche der
Schaltung zur Anbringung in einem ZIF-Sockel oder tatsächlich irgendeine
andere geeignete Konfiguration, aufweisen.
-
11 veranschaulicht eine
beispielhafte Implementierung eines Beispiels einer solchen integrierten Schaltung
in einer Mobiltelekommunikations-Vorrichtung wie etwa einem Mobiltelephon
mit einer integrierten Tastatur 12 und einer integrierten
Anzeige 14. Wie in 11 gezeigt
ist, ist das in der integrierten Schaltung 40 enthaltene
digitale System 10, wo passend über einen Tastaturadapter (nicht
gezeigt), mit der Tastatur 12 verbunden, wo passend über einen
Anzeigeadapter (nicht gezeigt), mit der Anzeige 14 verbunden
und mit der Hochfrequenz-Schaltungsanordnung 16 (HF-Schaltungsanordnung)
verbunden. Die HF-Schaltungsanordnung 16 ist mit einer
Antenne 18 verbunden.
-
Die
Herstellung des digitalen Systems 10 umfasst mehrere Schritte
der Implantation verschiedener Mengen von Störstellen in ein Halbleitersubstrat
und der Diffusion der Störstellen
in ausgewählte
Tiefen in dem Substrat, um Transistorvorrichtungen zu bilden. Es
werden Masken gebildet, um die Platzierung der Störstellen zu
steuern. Mehrere Schichten leitenden Materials und nicht leitenden
Materials werden abgelagert und geätzt, um die verschiedenen Vorrichtungen
miteinander zu verbinden. Diese Schritte werden in einer Reinraumumgebung
ausgeführt.
-
Ein
erheblicher Teil der Herstellungskosten der Datenverarbeitungsvorrichtung
betrifft das Testen. Während
sie in der Wafer-Form vorliegen, werden einzelne Vorrichtungen in
einen Betriebszustand vorgespannt und mit einer Sonde auf grundlegende
Betriebsfunktionalität
getestet. Der Wafer wird hierauf in einzelne Chips geteilt, die
als Rohchip verkauft oder in einem Gehäuse untergebracht werden können. Nach
der Unterbringung in einem Gehäuse
werden die Fertigteile in einen Betriebszustand vorgespannt und
auf Betriebsfunktionalität
getestet.
-
Das
digitale System 10 enthält
Hardware-Erweiterungen für
verbesserte Fehlersuchfunktionen. Diese helfen bei der Entwicklung
eines Anwendungssystems. Da diese Fähigkeiten Teil des Kerns der
CPU 200 selbst sind, sind sie nur unter Verwendung der
JTAG-Schnittstelle mit erweiterten Betriebsarterweiterungen verfügbar. Sie
schaffen einen einfachen, preisgünstigen
und geschwindigkeitsunabhängigen
Zugriff auf den Kern für
eine anspruchsvolle Fehlersuche und eine wirtschaftliche Systementwicklung,
ohne die kostspielige Verkabelung der und den Zugriff auf die Prozessoranschlussstifte,
die von herkömmlichen
Emulatorsystemen benötigt
werden, zu erfordern oder die Systembetriebsmittel zu stören.
-
Folglich
wird ein digitales System mit einem Speicher geschaffen, der durch
zwei oder mehr Datenanforderungseinrichtungen gemeinsam genutzt
werden kann. Es werden zwei Zugriffsbetriebsarten bereitgestellt.
In einer Nur-Host-Zugriffsbetriebsart
ist ein Abschnitt des Speichers direkt mit einer der Anforderungseinrichtungen
wie etwa einem Host-Prozessor verbunden, so dass Übertragungen
mit hoher Bandbreite ausgeführt
werden können.
Auf einen Abschnitt, der nicht ausgewählt ist, um im HOM zu liegen,
kann durch die anderen Anforderungseinrichtungen zugegriffen werden,
oder er wird abgeschaltet, um Energie zu sparen. Die Größe des für die HOM-Betriebsart
ausgewählten
Speicherabschnitts wird so ausgewählt, dass sie an die Anforderungen
einer gegebenen Anwendung angepasst ist, wobei sie geändert werden
kann, indem ein Größenwert
in ein Register geschrieben wird.
-
Die
Ausdrücke "angelegt", "verbunden" und "Verbindung", wie sie hier verwendet
werden, bedeuten elektrisch verbunden, einschließlich dort, wo sich zusätzliche
Elemente in dem elektrischen Verbindungsweg befinden können. "Zugeordnet" steht für eine Steuerbeziehung
wie etwa ein Speicherbetriebsmittel, das durch einen zugeordneten
Anschluss gesteuert wird.
-
Während die
Erfindung mit Bezug auf veranschaulichende Ausführungsformen beschrieben worden ist,
soll diese Beschreibung nicht als einschränkend ausgelegt werden. Für den Fachmann
auf dem Gebiet sind unter Bezug auf diese Beschreibung verschiedene
weitere Ausführungsformen
der Erfindung offensichtlich. Zum Beispiel kann der für die HOM-Betriebsart
ausgewählte
Speicherabschnitt unter Verwendung einer feineren oder gröberen Auflösung als
sechzehn Bänke
ausgewählt
werden. Das Größenregister
kann in der Form eines ROM vorliegen, der z. B. elektrisch änderbar
oder maskenprogrammiert ist. Die Speicherbänke können in verschiedenen Sync/Async-Kombinationen
betrieben werden; wobei z. B. der Speicher in der SAM-Betriebsart
synchron zum DSP-Takt und in der HOM-Betriebsart synchron zum Host-Prozessortakt
betrieben werden kann. Die HOM-Auswahlschaltungen können z.
B. in der Form der SARAM-Multiplexer vorliegen oder können Tri-State-Busse
sein. Es kann eine verschiedene Anzahl von Kanal-Controllern und/oder
Anschlüssen
implementiert sein. Einem Anschluss können verschiedene Typen von
Speicherbetriebsmitteln zugeordnet werden, indem der Anschluss so
abgestimmt wird, dass er an das Speicherbetriebsmittel angepasst
ist.