-
HINTERGRUND DER ERFINDUNG
-
Gebiet der Erfindung
-
Die
vorliegende Erfindung betrifft Datenübertragungssysteme für verdrahtete
und drahtlose Umgebungen und insbesondere eine Datenübertragungsarchitektur
für verdrahtete
und drahtlose Datenübertragungsumgebungen,
die entsprechend einer Vielzahl von möglichen unterschiedlichen Digital-Übermittlungsstandards
konfigurierbar ist.
-
Beschreibung
der verwandten Technik
-
Drahtlose
Informationsnetzwerke erfahren derzeit weltweit ein enormes Wachstum.
Beispiele für drahtlose
Informationsnetzwerke umfassen schnurlose Telefone, Personal Communications
Services (PCS), Mobiltelefone, Personensuchsysteme, mobile Datennetze
und mobile Satellitensysteme. In Zusammenhang mit dem Wachstum bei
den drahtlosen Informationsnetzwerken erfahren Datenübertragungsnetzwerke
derzeit einen Übergang
von der analogbasierten Technologie zu der digitalen Technologie. Drahtlose
Informationsnetzwerke profitieren in hohem Maße von digitalen Implementierungen,
einschließlich
einer besserer Leistungsfähigkeit,
einer größerer Kapazität und eines
größeren Service-Angebots.
-
Es
gibt verschiedene Arten von Informationsnetzwerken, einschließlich für Sprache
und Daten ausgelegte Netzwerke. Generell gibt es aufgrund der unterschiedlichen
und sich häufig
widersprechenden Anforderungen von Sprach-Service und Daten-Service unterschiedliche
Netzwerke für
Sprache und Da ten. Somit stellt, obwohl digitalisierte Sprache,
digitalisiertes Video und digitalisierte Daten "Binärziffern" (Bits) sind, jeder
Service andere Anforderungen an ein digitales Netzwerk. Beispielsweise
sind drahtlose Sprachdaten-Services für den Vergleich mit der Erwartung
eines Benutzers hinsichtlich der Telefonsprachqualität bei öffentlichen
geschalteten Telefonnetzwerken (PSTN) erforderlich. Somit muss der
paketierte Sprachdienst in einem drahtlosen Netzwerk Zeitverzögerungen
bei der Übermittlung
minimieren. Generell sind bei einer Sprachübermittlung zwischen den Paketen
auftretende Verzögerungen
von mehr als 100 mSek. für
den Hörenden
bemerkbar und störend.
Im Gegensatz dazu sind in einem Daten-Service-Netzwerk Zeitverzögerungen
für den
Benutzer generell irrelevant. Ferner sind bei einem paketierten Sprachdienst
Paketverlustraten in der Größenordnung
von 10–2 oder
Bitfehlerraten in der gleichen Größenordnung ohne spürbare Verschlechterung
der Service-Qualität tolerabel.
Im Gegensatz dazu machen Daten-Services eine viel niedrigere Fehlerrate erforderlich
und ist ein Verlust von Datenpaketen generell inakzeptabel. Sprach-Unterhaltungen
erzeugen ferner typischerweise Megabytes von digitalisierten Informationen
und dauern mindestens mehrere Minuten, wohingegen Datenübermittlungen
typischerweise weniger Daten beinhalten und kürzere Zeit in Anspruch nehmen.
-
Somit
beinhalten drahtlose Informationsnetzwerke typischerweise entweder
sprachbetriebene Anwendungen, wie z.B. digitale Mobil-, PCS-, schnurlose
Telefone und drahtlose PBX oder datenbetriebene Netzwerke, wie z.B.
drahtlose LANs und mobile Datennetzwerke. Bei Sprachanwendungen sind
digitale Mobilfunksysteme derart ausgeführt, dass sie mobile Nutzer
beim Anwendungen in großen geografischen
Bereichen unterstützen,
wohingegen PCS, schnurlose Telefone und drahtlose PBX-Systeme für relativ
kleinere geografische Bereiche ausgelegt sind. Bei Datenanwendungen
arbeiten mobile Datennetzwerke mit relativ niedrigen Datenraten über urbane
Funkkanäle,
wohingegen drahtlose LANs typischerweise zum Unterstützen einer
begrenzten Anzahl von Nutzern in einem festgelegten lokalen Bereich
vorgesehen sind.
-
Der
Mobiltelefondienst ist einer der am schnellsten wachsenden Segmente
auf dem Sektor der drahtlosen Datenübertragung. Wie oben beschrieben,
dient das digitale Mobilfunksystem zum Unterstützen mobiler Nutzer in großen geografischen Bereichen,
und somit ist durch Anordnung von Funkzellen mit einem Funkzellen-Durchmesser
von typischerweise 0,5 bis 5 Meilen eine Abdeckung gegeben. Es gibt
derzeit mehrere Initiativen hinsichtlich Digital-Mobilfunkstandards
in der Vereinigten Staaten, Europa und Japan, einschließlich GMS
(Groupe Special Mobile), IS54, Japanese Digital Cellular (JDC) und
Code Division Multiple Access (CDMA). Somit werden derzeit Architekturen
für digitale
Mobiltelefone benötigt,
um eine Vielzahl von unterschiedlichen Standards bezüglich digitaler
Datenübertragung
abzudecken.
-
Derzeit
vorhandene Architekturen für
digitale Mobiltelefone weisen im wesentlichen jeweils einen anderen
IC-Chipsatz, insbesondere im Basisband-Bereich, zum Abdecken jedes
dieser Digital-Standards auf. Jeder dieser unterschiedlichen IC-Chipsätze zum
Durchführen
unterschiedlicher Digital-Standards ist generell nur bei einigen
wenigen ausgewählten
Firmen erhältlich,
wodurch das Maß an
Produktunterscheidung zwischen Herstellern begrenzt ist.
-
Die
Verwendung unterschiedlicher integrierter Schaltungen bei jedem
dieser Digital-Standards wirkt sich ferner negativ auf den Telefonherstellprozess
aus. Wie oben beschrieben, werden in unterschiedlichen Marktsegmenten
generell unterschiedliche Digital-Standards angewendet. Beispielsweise findet
in Europa primär
der GSM-Standard Anwendung, während
in den USA primär
der IS54-Standard angewendet wird. Daher muss eine Firma, um in
jedem dieser unterschiedlichen Marktsegmente für Mobiltelefone vertreten zu
sein, zahlreichen Anforderungen hinsichtlich Produktionsabläufen, Ressourcen,
Zuverlässigkeitsprüfung, Verpackung, Port-Montage
und Prüfung
für jeden
unterstützten
Digital Standard entsprechen. Dies hat unweigerlich hohe Herstellkosten
zur Folge, die zu einer Erhöhung der
Kosten für
das Gesamtsystem führen.
-
Daher
wird eine verbesserte konfigurierbare Architektur für digitale
Datenübertragungsanwendungen
gewünscht.
Insbesondere wird eine neue Basisband-Architektur für die digitale
Datenübertragung gewünscht, die
zu einem reduzierten Energieverbrauch und einer höheren Effizienz
bei der Ausführung
von Basisband-Operationen verschiedener Digital-Datenübertragungsstandards
führt.
Es wird ferner eine neue Basisband-Architektur für die digitale Datenübertragung
gewünscht,
die auf einfache Weise zwischen unterschiedlichen Digital-Datenübertragungsstandards
konfigurierbar ist, wodurch der Herstellprozess vereinfacht wird.
-
ZUSAMMENFASSENDER ÜBERBLICK ÜBER DIE ERFINDUNG
-
Die
vorliegende Erfindung umfasst eine konfigurierbare Mehrprozessor-Datenübertragungsarchitektur,
die unterschiedliche Digital-Datenübertragungsfunktionen ausführt und
die auf unterschiedliche Digital-Datenübertragungsstandards, wie z.B. unterschiedliche
Digital-Mobilfunkstandards, konfigurierbar ist. Bei der bevorzugten
Ausführungsform weist
die Mehrprozessor-Architektur vorzugsweise in einer einzelnen integrierten
Schaltung zwei oder mehr Digitalsignal-Verarbeitungskerne, einen
Mikro-Controller, einen Sprach-Kodierer/-Dekodierer (Codec) und
eine Zentralverarbeitungseinheit mit einer relativ geringen Leistungsfähigkeit
auf. Jede der vorgenannten Vorrichtungen ist mit einem Systemspeicher
gekoppelt. Durch die konfigurierbare Digital-Datenübertragungsarchitektur
werden im Vergleich zu dem Stand der Technik entsprechenden Ausführungen
die Konstruktions- und Herstellkosten reduziert und die Leistungsfähigkeit
verbessert.
-
Bei
der bevorzugten Ausführungsform
weist die Digital-Datenübertragungsarchitektur
einen oder mehrere Prozessorkerne, vorzugsweise Digitalsignalprozessoren
(DSPs), auf, die über
einen Systembus mit einem gemeinsamen DSP-Speicher oder Systemspeicher
gekoppelt sind. In dem gemeinsamen DSP-Speicher sind ein Code und
Daten gespeichert, die von einem oder meh reren DSPs verwendet werden.
Bei einer Ausführungsform
sind zwei oder mehr DSPs mit dem Systembus verbunden, und die zwei
oder mehr DSPs sind ferner über
zweckbestimmte Adress- und Datenbusse miteinander gekoppelt. Bei
dieser Ausführungsform
kommunizieren die zwei oder mehr DSPs über die zweckbestimmten Adress-
und Datenbusse, ohne dass ein Systembus-Zugriff erforderlich ist.
Bei einer weiteren Ausführungsform
sind zwei oder mehr DSPs mit dem Systembus verkettet, und ein DSP
führt Systembus-Zugriffe
für sämtliche
verkettete DSPs durch.
-
Ein
Mikro-Scheduler ist mit dem Systembus gekoppelt und dient zum Planen
von Operationen und/oder Funktionen des einen oder der mehreren DSPs
und der Hardware-Beschleunigungslogik. Eine Universal-CPU ist ebenfalls
mit dem Systembus gekoppelt. Die Universal-CPU führt u.a. vorzugsweise Benutzer-Interface-Funktionen
und Gesamt-Datenübertragungs-Management-Funktionen
aus. Ein CPU-Lokalspeicher und verschiedene Peripherievorrichtungen
sind über
einen CPU-Lokalbus mit der CPU gekoppelt. Eine spezielle Hardware-Beschleunigungslogik,
wie z.B. zur Verschlüsselung,
kann ebenfalls mit dem Systembus gekoppelt sein.
-
Ein
Zweifach-Port-Bus-Arbiter ist vorzugsweise zwischen der CPU und
dem Systembus geschaltet und steuert den CPU-Zugriff auf den Systembus
und somit den DSP-Speicher oder den Systemspeicher. Somit erhält die CPU über den
Zweifach-Port-Bus-Arbiter Zugriff auf den Systembus und somit auf
den DSP-Speicher. Der CPU-Lokalbus ist vorzugsweise zwischen der
CPU und dem Zweifach-Port-Bus-Arbiter geschaltet, um der CPU Zugriff auf
den CPU-Lokalspeicher und verschiede Peripherievorrichtungen zu
gewähren,
ohne dass auf den Hauptsystembus zugegriffen werden muss. Bei dieser
Ausführungsform
wird anderen Vorrichtungen über
den Zweifach-Port-Bus-Arbiter Zugriff auf den CPU-Lokalspeicher
gewährt.
-
Die
CPU greift auf den DSP-Speicher zu, um einen Code und Daten zur
Verwendung durch andere Vorrichtungen zu speichern oder Mitteilungen über ein Semaphor
in dem Speicher an den Mikro-Scheduler weiterzuleiten. Die CPU kann
zum Speichern eines Codes und von Daten ferner auf den DSP-Speicher
zugreifen, um Operationen festzulegen, die von den DSPs unter Steuerung
des Mikro-Schedulers auszuführen
sind.
-
Wenn
der Mikro-Controller ein Task von der CPU empfangen hat, dient der
Mikro-Scheduler zum Zuweisen verschiedener Funktionen oder Tasks
zu dem einen oder den mehreren DSPs und der Hardware-Beschleunigungslogik
zwecks Durchführung der
gewünschten
Datenübertragungsoperation.
Dabei hat die CPU generell keinen Zugriff auf den Systembus, sondern
führt vielmehr
Operationen unter Verwendung ihres lokalen CPU-Speichers durch.
Der Mikro-Scheduler teilt vorzugsweise Tasks auf jeden der DSPs
und die Hardware-Beschleunigungslogik auf, um die gewünschte Leistung
bei gleichzeitiger Minimierung des Energieverbrauchs zu erzielen.
Der Mikro-Scheduler führt
ferner vorzugsweise eine dynamische Steuerung der Taktraten jedes
DSPs durch, um eine gewünschte
Rechnerleistung bei gleichzeitiger Minimierung des Energieverbrauchs
zu erzielen.
-
Die
erfindungsgemäße Digital-Datenübertragungsarchitektur
ist auf unterschiedliche Datenübertragungsstandards
und ferner unterschiedlichen Datenübertragungsanwendungen konfigurierbar.
Somit ist die erfindungsgemäße Digital-Datenübertragungsarchitektur
für einen
Hersteller von digitalen Mobilfunkvorrichtungen auf einfache Weise
derart programmierbar, dass sie u.a. gemäß dem GSM-Standard, dem IS54-Standard,
einem CDMA-Standard oder einem TDMA-Standard arbeiten kann. Ferner
ist die erfindungsgemäße Digital-Datenübertragungsarchitektur
auf einfache Weise derart programmierbar, dass sie als digitale
Mobilfunkvorrichtung, schnurloses Telefon oder Einrichtung für persönliche Mitteilungen
in einem PCS-System arbeiten kann.
-
Die
erfindungsgemäße konfigurierbare
Datenübertragungsarchitektur
nutzt die Synergie oder Gemeinsamkeit der algorithmischen Leistung
der verschiedenen Digital-Mobilfunk- und Digital-Datenübertragungsstandards
aus. Die vorliegende Erfindung schafft somit im wesentlichen Lösungen in Form
einer Modular-Baustein-Struktur für verschiedene Digital-Mobilfunkstandards.
Erfindungsgemäß nutzen
die Hardware-Funktionseinheiten in der Architektur eine gemeinsame
Verbindung, d.h. eine Hardware-Plattform, aus, welche konstant bleibt. Diese
Hardware-Architektur ist ausreichend flexibel, so dass sie auf das
Ausführen
unterschiedlicher Funktionen und/oder das Arbeiten gemäß unterschiedlicher
Mobilfunkstandards programmierbar ist. Dadurch werden die Probleme
gelöst,
dass sich Telefonhersteller mit Mehrfachproduktions- und beschaffungsbezogenen
Fragen beschäftigen
müssen.
-
Die
vorliegende Erfindung schafft somit eine einzelne Architektur, die
auf einfachere Weise auf unterschiedliche Digital-Standards konfigurierbar
ist. Dies ermöglicht
neben einer vereinfachten Silizium-Ausführung eine Reduzierung der
Telefonherstellkosten und -prozesse. Mit anderen Worten: die erfindungsgemäße konfigurierbare
Architektur nutzt eine einzelne Hardware-Architektur zum Arbeiten
gemäß mehrerer
unterschiedlicher Mobilfunkstandards und reduziert somit Produktions-
und Beschaffungsprobleme. Bei der bevorzugten Ausführungsform programmiert
der Telefonhersteller vor Versand des Endprodukts einfach den Code
für den
entsprechenden Standard für
drahtlose oder verdrahtete Mobilfunkanwendungen.
-
KURZBESCHREIBUNG
DER ZEICHNUNGEN
-
Die
vorliegende Erfindung wird anhand der nachstehenden detaillierten
Beschreibung der bevorzugten Ausführungsform mit Bezug auf die
folgenden Zeichnungen besser verständlich. Es zeigen:
-
1 eine
erfindungsgemäße Digital-Datenübertragungsvorrichtung
mit einer konfigurierbaren Digital-Mobilfunkarchitektur;
-
2 ein
Blockschaltbild der erfindungsgemäßen konfigurierbaren Digital-Mobilfunkarchitektur;
-
3 ein
detaillierteres Blockschaltbild der konfigurierbaren Digital-Mobilfunkarchitektur
gemäß der bevorzugten
Ausführungsform;
-
4 ein
Ablaufdiagramm der Durchführung der
vorliegenden Erfindung; und
-
5 eine
alternative Ausführungsform,
bei der der Mikro-Scheduler mit dem CPU-Lokalbus gekoppelt ist;
-
6 eine
alternative Ausführungsform,
bei der zwei Sätze
aus zwei DSPs mit dem Systembus verkettet sind;
-
7 eine
alternative Ausführungsform,
bei der zwei DSPs mit dem Systembus und ferner über zweckbestimmte Adressen-
und Datenleitungen miteinander gekoppelt sind; und
-
8 eine
alternative Ausführungsform,
bei der zwei DSPs und die CPU mit dem Systembus und ferner über zweckbestimmte
Adressen- und Datenleitungen miteinander verbunden sind.
-
DETAILLIERTE
BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM Digital-Datenübertragungsvorrichtung
-
1 zeigt
eine Digital-Datenübertragungsvorrichtung 100 mit
der erfindungsgemäßen konfigurierbaren
Digital-Architektur. Bei der bevorzugten Ausführungsform ist die Digital-Datenübertragungsvorrichtung 100 eine
Digital-Mobilfunkvorrichtung
für drahtlose
Datenübertragung.
Die Digital-Datenüber tragungsvorrichtung
kann jedoch, falls gewünscht, andere
Vorrichtungen aufweisen. Wie nachstehend beschrieben, ist die Digital-Mobilfunkvorrichtung 100 auf
das Arbeiten gemäß einer
Vielzahl von Digital-Mobilfunkstandards, einschließlich u.a.
des GSM-Standards, des IS54-Standards, eines CDMA-Standards oder eines
TDMA-Standards, programmierbar. Ferner ist die erfindungsgemäße Digital-Datenübertragungsarchitektur
auf einfache Weise auf das Arbeiten in Form von verschiedenen Digital-Datenübertragungsvorrichtungen,
einschließlich u.a.
einer Digital-Mobilfunkvorrichtung, eines schnurlosen Telefons oder
einer Einrichtung für
persönliche Mitteilungen
in einem PCS-System,
programmierbar.
-
Blockschaltbild
einer konfigurierbaren Architektur
-
2 zeigt
ein Blockschaltbild einer konfigurierbaren Mehrprozessor-Architektur
für Digital-Datenübertragungsanwendungen.
Die erfindungsgemäße Mehrprozessor-Architektur
ist vorzugsweise derart konfigurierbar, dass sie gemäß unterschiedlichen
Digital-Standards, wie z.B. unterschiedlichen Digital-Mobilfunkstandards
arbeitet. Es sei darauf hingewiesen, dass 2 einen
Teil der Hardware-Komponenten in der Digital-Datenübertragungsvorrichtung 100,
wie z.B. ein digitales Mobiltelefon, zeigt. Ferner sind die in 2 gezeigten
logischen Komponenten vorzugsweise auf einem einzelnen monolithischen
Substrat angeordnet und/oder vorzugsweise als einzelne integrierte
Schaltung ausgeführt.
-
Wie
dargestellt, weist die Datenübertragungsvorrichtung 100 einen
Speicher 202 auf. Der Speicher 202 speichert einen
Programm-Code und Programmdaten, die es ermöglichen, dass die Datenübertragungsvorrichtung 100 entsprechend
einem oder mehreren aus einer Vielzahl von unterschiedlichen Datenübertragungsstandards
konfigurierbar ist. Beispielsweise speichert bei der bevorzugten
Ausführungsform
der Speicher 202 einen Programm-Code und Programmdaten,
die es ermöglichen,
dass die Datenübertragungsvorrichtung 100 gemäß einem
oder mehreren von verschiedenen Digital-Mobilfunkstandards, wie
z.B. u.a. GSM (Group Special Mobile), IS54 und Code Division Multiple
Access (CDMA), arbeitet.
-
Bei
einer Ausführungsform
ist der Speicher 202 ein Mehrport-Speicher mit mehreren
Lese-/Schreib-Ports. Dadurch können
mehrere Vorrichtungen gleichzeitig auf den Speicher 202 zugreifen. Bei
einer weiteren Ausführungsform
ist der Speicher 202 ein Einzelport-Speicher und weist
das System einen Zweifach-Port-Bus-Arbiter (3) auf,
der die Arbitrierung für
den Speicher 202 steuert, wie nachstehend beschrieben.
-
Wie
dargestellt, weist die Digital-Datenübertragungsvorrichtung 100 einen
oder mehrere mit dem Speicher 202 gekoppelte Digitalsignalprozessoren 212 zum
Ausführen
von Datenübertragungsfunktionen
auf. Bei der bevorzugten Ausführungsform
der Erfindung weist die Architektur einen oder mehrere erste Digitalsignalprozessoren 212a,
die zum Durchführen
von Übermittlungsfunktionen
konfiguriert oder vorgesehen sind, und einen oder mehrere Digitalsignalprozessoren 212b auf,
die zum Ausführen
von Empfangsfunktionen konfiguriert sind. Die in 2 gezeigte
Ausführungsform
weist zwei erste Digitalsignalprozessoren 212a und zwei
zweite Digitalsignalprozessoren 212b auf. Bei der bevorzugten
Ausführungsform
weist die Digital-Datenübertragungsvorrichtungsarchitektur
nur einen ersten Digitalsignalprozessor 212a, der Übermittlungsfunktionen
ausführt,
und nur einen zweiten Digitalsignalprozessor 212b auf,
der Empfangsfunktionen ausführt.
-
Jeder
DSP 212 weist vorzugsweise den ADSP 2171-Kern von Analog
Devices auf. Bei der bevorzugten Ausführungsform umfasst der DSP
vorzugsweise den ADSP 2171-Kern und spezifische Architektur-Erweiterungen,
die zu Verbesserungen bei der Ausführung von für verschiedene Digital-Datenübertragungsstandards
erforderlichen Algorithmen oder Funktionen führen. Diese Architektur-Erweiterungen
werden nachstehend beschrieben.
-
Wie
dargestellt, weist das System einen Mikro-Controller oder Mikro-Scheduler 222 auf,
der zum Steuern der Operation jedes Übermittlungs-DSP 212a und
Empfangs-DSP 212b vorgesehen ist. Der Mikro-Scheduler 222 führt Planungsoperationen
zum Planen der Operationen jedes DSP 212 durch. Der Mikro-Scheduler 222 versetzt
ferner das System in einen gewünschten
Modus oder mehrere gewünschte
Moden, wie z.B. einen Parallel-Verarbeitungsmodus, bei dem jeder
DSP 212 parallel arbeitet, oder einen Master/Slave-Modus,
bei dem ein erster DSP 212 als Master bestimmt ist und
die übrigen
DSPs 212 als Slave-DSPs bestimmt sind, die von dem Master-DSP
zugewiesene Tasks empfangen.
-
Der
Mikro-Controller 222 ist vorzugsweise ein effizienter Kleinleistungs-Controller,
der als zentraler Sequenz- oder Task-Scheduler für die gesamte Digital-Datenübertragungsarchitektur
arbeitet. Der Sequenzer oder Mikro-Controller 222 ist vorzugsweise
derart konfiguriert, dass Computereinheiten oder DSPs hinzugefügt werden
können,
ohne dass der Sequenzer oder die Speicher-Hardware umkonstruiert
werden muss. In der vorliegenden Offenbarung umfasst der Ausdruck "Computereinheiten" Elemente, wie z.B.
u.a. Signalverarbeitungskerne, kundenspezifische Logik, serielle
Ports und Hardware-Beschleunigungslogik.
-
Der
Mikro-Controller oder Sequenzer 222 steuert vorzugsweise
jeden DSP 212 und/oder jede Computereinheit derart, dass
die Rechnerleistung und der Energieverbrauch bei der Anwendung,
die gerade durchgeführt,
wird, ausgeglichen werden. Somit gleicht der Mikro-Controller 222 vorzugsweise
die jedem DSP 212 zugewiesenen Tasks oder Funktionen je
nach Umfang an erforderlicher Rechnerleistung aus. Der Mikro-Controller 222 steuert
ferner vorzugsweise die Taktrate jedes DSP in Abhängigkeit von
der Rechenleistung und dem Energieverbrauch. Somit teilt bei einem
rechenintensiven Task, bei dem eine sofortige Antwort erforderlich
ist, der Mikro-Scheduler 222 das Task auf zwei oder mehr
DSPs oder Computereinheiten auf und betreibt die zwei oder mehr
DSPs oder Computereinheiten bei voller Taktrate. Bei Tasks, die
nicht rechenintensiv sind, teilt der Mikro-Scheduler 222 das
Task auf einen oder mehrere DSPs oder Computereinheiten auf und
betreibt den einen oder die mehreren DSPs oder Computereinheiten
mit einer langsameren Taktrate, um den Energieverbrauch zu reduzieren.
-
Bei
einer Ausführungsform
ist der Mikro-Controller oder Sequenzer 222 ein ARM-ähnlicher Prozessor,
der als zentraler Sequenzer/Controller fungiert. Bei dieser Ausführungsform
ist die zum Programmieren des Mikro-Controllers 222 verwendete Software
vorzugsweise in C oder einer ähnlichen
höheren
Programmiersprache unter Verwendung derzeit verfügbarer Entwicklungs-Tools,
d.h. C-Compiler, Simulatoren und Debugger, geschrieben. Dies führt zu einer
hohen Entwicklungs-Plattform zum Durchführen der Konstruktion der Digital-Datenübertragungsvorrichtung
und ferner zu einer Flexibilität
hinsichtlich Änderungen
oder neuer Merkmale.
-
Das
System weist vorzugsweise eine Universal-CPU 250 auf, die
als Gesamt-Controller
des Systems fungiert. Die CPU 250 in dem erfindungsgemäßen System
kommuniziert mit dem Mikro-Scheduler 222 und liefert Datenübertragungs-Tasks
an dem Mikro-Scheduler 222. Die CPU 250 führt ferner
vorzugsweise Benutzer-Interface-Funktionen sowie das Empfangen und
Verarbeiten von Benutzer-Befehlen aus. Bei einer Ausführungsform
führt die
CPU 250 eine intelligente mehrfachmoden-konfiguriebare Kommunikatoranwendung
durch. Mit anderen Worten: bei einer Ausführungsform führt die
CPU 250 eine Anwendung aus, die es der Digital-Datenübertragungsvorrichtung
ermöglicht,
gemäß anderen
gewünschten
Moden oder Digital-Standards zu arbeiten. Die CPU 250 implementiert
ferner vorzugsweise verschiedene Protokollstapel, wie aufgrund der
Variabilität
und der verschiedenen Spezifikationen angemessen.
-
Wie
dargestellt, weist das Digital-Datenübertragungssystem eine Analog-Digital-Konvertierlogik 230 und
eine Digital-Analog-Konvertierlogik 232 auf. Die Analog-Digital-
(A/D-) Konvertierlogik 230 empfängt Analogsignale und liefert
entsprechende Digitalsignale entweder zu einem oder mehreren Digitalsignal prozessoren 212a,212b,
der CPU 250 oder dem Speicher 202. Die Digital-Analog- (D/A-) Konvertierlogik 232 empfängt Digitalsignale
von den DSPs 212a,212b oder von dem Speicher 202 und
liefert entsprechende von der Datenübertragungsvorrichtung ausgegebene
Analogsignale.
-
Die
Digital-Datenübertragungsvorrichtung weist
ferner vorzugsweise eine Hardware-Beschleunigungslogik zum Durchführen spezifischer
Tasks und Hardware-Funktionen auf. Die Hardware-Beschleunigungslogik 240 führt vorzugsweise
Funktionen, wie z.B. Datenkodierung oder -entschlüsselung, oder
andere Funktionen aus, für
die eine spezielle oder zweckbestimmte Hardware erforderlich ist.
-
Gemeinsame
Hardware für
unterschiedliche Digital-Mobilfunkstandards
-
Wie
oben beschrieben, ist die in 2 gezeigte
konfigurierbare Digital-Datenübertragungsarchitektur
gemäß verschiedener
Datenübertragungsstandards
konfigurierbar. Die vorliegende Erfindung nutzt die zwischen den
Digital-Mobilfunkstandards bestehende Gemeinsamkeit hinsichtlich
der Anforderungen an die Funktionen aus.
-
Generell
umfasst jeder Digital-Mobilfunkstandard einen Basisband-Bereich
mit einer Basisband-Logik zum Durchführen von Operationen auf den
Sprachoder Datensignalen auf dem Basisband-Frequenzpegel. Ein typischer
Basisband-Übermittlungsblock
umfasst Sprachkodier-, Kanalkodier-, Protokollverarbeitungs- und
Modulationsfunktionen. Sprachkodier-Algorithmen basieren im wesentlichen auf
code-angeregten linearen Vorhersageverfahren. Die für jeden
dieser unterschiedlichen Mobilfunkstandards verwendeten Sprachkodier-Algorithmen
unterscheiden sich typischerweise in den Bit-Raten, dem Code-Buch
und der Fehlersteuerung, die für
den Linear-Vorhersage-Sprachkodier-Algorithmus verwendet werden.
Jeder dieser Sprachkodier-Algorithmen ist jedoch vom Rechen-Standpunkt
aus betrachtet hinsichtlich der Ausführung und Komplexität im wesentlichen
gleich. Die Kanalkodier- und Protokollstapelfunktionen sind hinsichtlich
des Konzepts für
jeden der unterschiedlichen Digital-Mobilfunkstandards im wesentlichen
gleich. Es gibt jedoch Unterschiede in der Länge des konvolutionellen Code-Elements,
der Trellis-Kodierung und der Viterbi-Dekodierung. Bei der von den
Basisband-Bereichen jedes Digital-Mobilfunkstandards angewendeten
Modulation werden typischerweise bekannte Quadraturphasenumtastungs-
(QPSK) oder GMSK-Modulationsschemata angewendet.
-
Wenn
Sprachsignale in einem Digital-Mobilfunk-Sprachanruf digitalisiert
worden sind, ähnelt
der Übermittlungsfluss
der Operation eines Hochgeschwindigkeitsmodems. Bei einem verdrahteten
Medium ist der Übertragungskanal
im wesentlichen zeitinvariant, wohingegen bei dem drahtlosen Medium der Übertragungskanal
zeitvariabel ist.
-
Die
Ausführung
der Empfängerstation
sowohl des verdrahteten als auch des drahtlosen Mediums weist im
wesentlichen gleiche Architekturmerkmale auf. Der drahtlose Empfänger ist
jedoch generell weitaus komplexer, um Mehrweg-Fading-Charakteristiken
des Kanals zu handhaben. Beim Analysieren der Übermittlungs- und Empfangsbereiche
einer Digital-Mobilfunkarchitektur wird offensichtlich, dass der
Sprachkodier-Algorithmus in dem Übermittlungsbereich
die meisten Berechnungen und die größte Komplexität erforderlich
macht. Der Empfangsbereich wird von der Kanalangleichung und der
Viterbi-Bewertung
dominiert.
-
Entsprechend
der erfindungsgemäßen konfigurierbaren
Digital-Datenübertragungsarchitektur werden
die drahtlose und die verdrahtete Modem-Architektur auf im wesentlichen
gleiche Weise behandelt, wodurch eine Anzahl von bedeutenden Vorteilen erreicht
wird. Ein Vorteil besteht darin, dass der Übermittlungsweg jetzt in zwei
voneinander getrennte Bereiche unterteilt werden kann, d.h. der Übermittlungsblock
kann als von dem Empfangsbereich unabhängiger Block behandelt werden.
-
Wie
oben beschrieben, wird bei dem Stand der Technik entsprechenden
Systemen ein einzelner Digitalsignalprozessor zum Ausführen der
gesamten Basisband-Funktionen einer Digital-Datenübertragungsvorrichtung
verwendet. Dies führt
inhärent
zu einem hohen Energieverbrauch, hohen Taktraten und übermäßig hohem
Overhead beim Aufrechterhalten des Programmablaufs und Interrupts.
Die Speicherausführung
wird bei höheren
Taktraten ebenfalls zum Problem.
-
Die
vorliegende Erfindung schafft eine neue Datenübertragungsarchitektur für die digitale
Datenübertragung,
die zu einem reduzierten Energieverbrauch und höherer Effizienz bei der Ausführung von Basisband-Operationen
verschiedener Digital-Datenübertragungs-Standards
führt.
Wie oben beschrieben, weist das erfindungsgemäße System zwei oder mehr DSPs
oder Computereinheiten 212 und ferner einen Mikro-Controller 222 auf,
der dynamisch Tasks und Taktraten zuweist, um eine gewünschte Rechnerleistung
bei reduziertem Energieverbrauch zu erreichen. Dies ermöglicht die
Verwendung von niedrigeren Taktraten in dem System, wodurch der Energiebedarf
reduziert wird.
-
Ferner
können
durch Aufteilen der Datenübertragungsfunktionen,
wie z.B. der Übermittlungs- und
Empfangsfunktionen, auf mehrere Prozessoren unter dem Befehl eines
Controller Funktionseinheiten in dem Digital-Datenübertragungssystem
in unterschiedlichen Moden arbeiten, wie z.B. in einem Parallel-Prozessor-Modus
oder einem Master/Slave-Modus. Ferner kann aufgrund der Verwendung
mehrerer Prozessoren, die separate Funktionen ausführen, das
System bei niedrigeren Taktraten arbeiten, welche ausreichen, um
die gewünschte
Funktionalität
zu implementieren. Dadurch kann der Energieverbrauch auf einfachere
Weise gesteuert werden. Die vorliegende Erfindung umfasst ferner
Schaltungsauslegungstechniken, durch die der Energieverbrauch weiter
reduziert wird.
-
Bei
der erfindungsgemäßen Mehrprozessoren-Architektur
werden ferner vorzugsweise ein oder mehrere Übermittlungs-Digitalsignalprozessoren 212a und
ein oder mehrere Empfangs-Digitalsignalprozessoren 212b verwendet.
Die Übermittlungs-DSPs 212a führen die Übermittlungsfunktion aus,
während
die Empfangs-DSPs 212b die Empfangsfunktion ausführen. Das
Implementieren der Übermittlungs-
und der Empfangsfunktionen in unterschiedliche Digitalsignalprozessoren
führt zu
einer Flexibilität
und Skalierbarkeit.
-
Die
Gesamtarchitektur ist ferner gemäß unterschiedlicher
Digital-Datenübertragungs-Standards und
Sprachkodier-Algorithmen programmierbar und konfigurierbar. Diese
Konfigurierbarkeit ermöglicht
es dem Hersteller, eine Hardware-Architektur herzustellen, die dann
gemäß unterschiedlicher
gewünschter Standards
konfigurierbar ist. Dadurch muss sich der Hersteller nicht mit Mehrfachproduktions-
und beschaffungsbezogenen Fragen beschäftigen.
-
3 – Blockschaltbild
-
3 zeigt
ein detaillierteres Blockschaltbild der bevorzugten Ausführungsform
der Erfindung. In 3 gezeigte Elemente, die den
in 2 gezeigten Elementen im wesentlichen gleich oder
mit diesen identisch sind, sind der Einfachheit halber mit den gleichen
Bezugszeichen bezeichnet. Die in 2 gezeigten
Element oder Komponenten sind vorzugsweise alle auf einem einzigen
monolithischen Siliziumsubstrat angeordnet und/oder vorzugsweise
als einzelne integrierte Schaltung ausgebildet.
-
Wie
dargestellt, weist das Digital-Datenübertragungssystem einen oder
mehrere über
einen Bus 214 mit einem gemeinsamen DSP-Speicher oder Systemspeicher 202 gekoppelte
Prozessorkerne 212 auf. Die Prozessorkerne 212 sind
vorzugsweise Digitalsignalprozessoren, obwohl andere Arten von Prozessoreinheiten
verwendet werden können.
Bei der bevorzugten Ausführungsform weist
das System zwei DSPs 212 auf, obwohl eine größere oder
kleinere Anzahl von DSPs verwendet werden kann.
-
Eine
spezielle Hardware-Beschleunigungslogik 240 kann ebenfalls
mit dem Bus 214 gekoppelt sein. Die Hardware-Beschleunigungslogik 240 ist wegen
Berechnungserfordernissen zum Durchführen spezifischer Funktionen
in der zweckbestimmten Hardware vorgesehen. Bei der bevorzugten
Ausführungsform
führt die
Hardware-Beschleunigungslogik 240 Datenverschlüsselungsoperationen
durch.
-
Ein
Mikro-Controller oder Mikro-Scheduler 222 ist mit dem Bus 214 gekoppelt
und dient zum Planen von Operationen und/oder Funktionen des einen
oder der mehreren DSPs 212 und der Hardware-Beschleunigungslogik 240.
Eine Universal-CPU 250 ist ebenfalls mit dem Bus 214 gekoppelt.
Die Universal-CPU 250 führt u.a.
vorzugsweise Benutzer-Interface-Funktionen und Gesamt-Datenübertragungs-Management-Funktionen
aus.
-
Das
Digital-Datenübertragungssystem
weist eine Analog-Digital-Konvertierlogik 230 und eine
Digital-Analog-Konvertierlogik 232 auf. Die Analog-Digital(A/D-)
Konvertierlogik 230 empfängt Analogsignale und liefert
entsprechende Digitalsignale entweder zu einem oder mehreren Digitalsignalprozessoren 212,222,
der CPU 250 oder dem Speicher 202. Die Digital-Analog-
(D/A-) Konvertierlogik 232 empfängt Digitalsignale von den
DSPs 212 oder 222 oder von dem Speicher 202 und
liefert entsprechende von der Datenübertragungsvorrichtung ausgegebene Analogsignale.
Die A/D-Logik 230 und die D/A-Logik 232 werden
primär
zum Konvertieren analoger Sprachsignale in Digitalsignale und zum
Konvertieren digitaler Sprachsignale in analoge Sprachsignale verwendet.
Bei einer Ausführungsform
sind die A/D-Logik 230 und die D/A-Logik 232 in
einem Sprach-Kodierer/-Dekodierer (Codec) angeordnet.
-
In
dem gemeinsamen DSP-Speicher oder Systemspeicher 202 sind
ein Code und Daten gespeichert, die von einem oder mehreren DSPs 212 sowie
von der Hardware-Beschleunigungslogik 240, dem Mikro-Scheduler 222 und
der CPU 250 verwendet werden.
-
Ein
nichtflüchtiger
Speicher 203 ist mit dem Systemspeicher 202 gekoppelt
und speichert einen Code und Daten, die zum Implementieren eines
oder mehrerer Digital-Mobilfunk-Standards erforderlich sind. Der
Code und die Daten werden von dem Hersteller in den nichtflüchtigen
Speicher 203 einprogrammiert, damit das System gemäß dem gewünschten
Digital-Standard, wie z.B. einem Digital-Mobilfunk-Standard, programmiert
oder konfiguriert werden kann. Beim Hochfahren werden der Code und
die Daten aus dem nichtflüchtigen
Speicher 203 zwecks Verwendung innerhalb des Systems vorzugsweise
in den Systemspeicher 202 transferiert. Bei einer Ausführungsform
werden der Code und die Daten für
zwei oder mehr Digital-Mobilfunk-Standards in den nichtflüchtigen
Speicher 203 programmiert und kann der Benutzer selektiv
je nach Einsatzort der Vorrichtung die Digital-Datenübertragungsvorrichtung
gemäß einem
dieser gewünschten Digital-Mobilfunk-Standards
konfigurieren.
-
Ein
Bus-Arbiter 252, der als Zweifach-Bus-Port-Arbiter 252 bezeichnet
wird, ist vorzugsweise zwischen der CPU 250 und dem Bus 214 geschaltet
und steuert den Zugriff auf den Bus 214 und somit den Systemspeicher 202.
Ein CPU-Lokalspeicher 262 und verschiedene Peripherieeinrichtungen 264 sind über einen
CPU-Lokalbus 260 mit der CPU 250 gekoppelt. Der
CPU-Lokalbus 260 ist zwischen der CPU 250 und
dem Zweifach-Port-Bus-Arbiter 252 geschaltet, um der CPU 250 Zugriff
auf den CPU-Lokalspeicher 262 und die verschieden Peripherievorrichtungen 264 zu
gewähren,
ohne dass auf den Hauptsystembus 214 zugegriffen werden
muss. Der nichtflüchtige
Speicher 203 kann zum Liefern des Codes und der Daten beim
Hochfahren zu dem CPU-Lokalspeicher 262 mit dem CPU-Lokalspeicher 262 gekoppelt
sein. Wie oben beschrieben, speichert der nichtflüchtige Speicher 203 den
Code und die Daten, die es der Digital-Datenübertragungsvorrichtung ermöglichen,
gemäß einem
gewünschten
Digital-Mobilfunk-Standard zu arbeiten.
-
Wie
oben beschrieben, steuert der Zweifach-Port-Bus-Arbiter 252 den
Zugriff auf den Systembus 214 und somit auf den Systemspeicher
oder DSP-Speicher 202. Die CPU 250 greift auf
den Systemspeicher 202 zu, um den Code und die Daten zur Verwendung
durch andere Vorrichtungen zu speichern oder Mitteilungen über ein
Semaphor in dem Systemspeicher 202 an den Mikro-Scheduler 222 weiterzuleiten.
Die CPU 250 greift ferner auf den DSP-Speicher 202 zu,
um den Code und die Daten zum Festlegen von Operationen, die von
den DSPs 212 unter Steuerung des Mikro-Scheduler 222 durchgeführt werden
sollen, zu speichern.
-
Wenn
der Mikro-Scheduler 222 ein Task von der CPU 250 empfangen
hat, dient der Mikro-Scheduler zum Zuweisen verschiedener Funktionen
oder Tasks zu dem einen oder den mehreren DSPs 212 und
der Hardware-Beschleunigungslogik 240 zwecks Durchführung der
gewünschten
Datenübertragungsoperation.
Dabei hat die CPU 250 generell keinen Zugriff auf den Systembus 214,
sondern führt
vielmehr Operationen unter Verwendung ihres lokalen CPU-Speichers 262 durch.
Somit erhält
der Mikro-Scheduler 222, nachdem die CPU 250 auf
den Speicher 202 zugegriffen hat, um eine Übermittlungs- oder
Empfangsoperation festzulegen, Zugriff auf den Bus 214,
um auf den Speicher 202 zuzugreifen und den unterschiedlichen
DSPs 212 Tasks zuzuweisen. Die CPU 250 arbeitet
dabei aus ihrem CPU-Lokalspeicher 262 heraus, der aus dem
Speicher 202 "ausgeschlossen" ist.
-
Somit
steuert der Zweifach-Port-Bus-Arbiter 252 den Zugriff auf
den Systembus 214 und somit auf den DSP-Speicher 202.
Wenn die CPU 250 eine Operation festgelegt hat und die
Steuerung an den Mikro-Scheduler 222 abgegeben hat, steuert
der Zweifach-Port-Bus-Arbiter 252 den Zugriff auf den Systembus 214 zwischen
dem Mikro-Scheduler 222, den DSPs 212 und der
Hardware-Beschleunigungslogik 240.
-
Bei
einer Ausführungsform
steuert der Zweifach-Port-Bus-Arbiter 252 ferner den Zugriff
auf den CPU-Lokalspeicher 262 von anderen Vorrichtungen aus,
wie z.B. dem Mikro-Scheduler 222. Somit fordert der Mikro-Scheduler 222,
wenn der Mikro-Scheduler 222 aus einer Speicherstelle in
dem CPU-Lokalspeicher 262 zu lesen oder in diese zu schreiben wünscht, über den
Zweifach-Port-Bus-Arbiter 252 Zugriff
auf den CPU-Lokalbus 260. Der CPU 250 wird beim
Zugriff auf den CPU-Lokalbus 260 Priorität eingeräumt.
-
Die
erfindungsgemäße Digital-Datenübertragungsarchitektur
ist gemäß unterschiedlicher
Datenübertragungs-Standards
und ferner unterschiedlicher Datenübertragungsanwendungen konfigurierbar.
Somit ist die erfindungsgemäße Digital-Datenübertragungsarchitektur
für einen
Hersteller von Digital-Mobilfunkvorrichtungen auf einfache Weise
derart programmierbar, dass sie u.a. gemäß dem GSM-Standard, dem IS54-Standard,
einem CDMA-Standard oder einem TDMA-Standard arbeitet. Ferner ist
die erfindungsgemäße Digital-Datenübertragungsarchitektur
auf einfache Weise derart programmierbar, dass sie als Digital-Mobilfunkvorrichtung,
schnurloses Telefon oder Einrichtung für persönliche Mitteilungen in einem
PCS-System arbeitet.
-
Die
erfindungsgemäße konfigurierbare
Datenübertragungsarchitektur
nutzt die Synergie oder Gemeinsamkeit der algorithmischen Leistung
der verschiedenen Digital-Mobilfunk- und Digital-Datenübertragungsstandards
aus. Die vorliegende Erfindung schafft somit im wesentlichen Lösungen in Form
einer Modular-Baustein-Struktur für verschiedene Digital-Mobilfunkstandards.
Erfindungsgemäß nutzen
die Hardware-Funktionseinheiten in der Architektur eine gemeinsame
Verbindung, d.h. eine Hardware-Plattform, aus, welche konstant bleibt. Diese
Hardware-Architektur ist ausreichend flexibel, so dass sie auf das
Ausführen
unterschiedlicher Funktionen und/oder das Arbeiten gemäß unterschiedlicher
Mobilfunkstandards programmierbar ist. Dadurch werden die Probleme
gelöst,
dass sich Telefonhersteller mit Mehrfachproduktions- und beschaffungsbezogenen
Fragen beschäftigen
müssen.
-
Ablaufdiagramm
-
4 zeigt
ein Ablaufdiagramm der Operation der bevorzugten Ausführungsform
der vorliegenden Erfindung.
-
Wie
dargestellt, schreibt in Schritt 402 die CPU einen Code
und Daten in den Systemspeicher 202, um den Mikro-Controller 222 auf
das Durchführen
gewünschter
Funktionen zu konfigurieren. Somit legt in Schritt 402 die
CPU 250 durch Schreiben des entsprechenden Codes und der
entsprechenden Daten in den Systemspeicher 202 eine Datenübertragungsfunktion
fest, wie z.B. eine Übermittlungs-
oder Empfangsfunktion. Dieser Code und diese Daten liefern die benötigten Informationen,
die es dem Mikro-Controller 222 ermöglichen, eine Datenübertragungsfunktion
zu beginnen.
-
In
Schritt 404 greift der Mikro-Controller 222 auf
den von der CPU 250 geschriebenen Code und Daten aus dem
Systemspeicher 202 zu. In Schritt 406 weist der
Mikro-Controller dem einen oder den mehreren Digitalsignalprozessoren 212 anhand
des von der CPU 250 geschriebenen Codes und Daten selektiv
Funktionen zu. Somit dient der Mikro-Controller oder Mikro-Scheduler 222 zum
Zuweisen von Funktionen oder Tasks zu einem oder mehreren der DSPs
anhand der Funktion, die gerade ausgeführt wird. In Schritt 408 führen der
eine oder die mehreren Digitalsignalprozessoren 212 Digital-Datenübertragungsfunktionen
in Reaktion auf das selektive Zuweisen von Funktionen zu dem einen
oder den mehreren Datensignalprozessoren 212 durch den
Mikro-Controller 222 durch.
Es sei darauf hingewiesen, dass dabei die CPU 250 in Schritt 410 auf
den Code und die Daten aus dem CPU-Lokalspeicher 262 zugreift.
Somit dient der Mikro-Scheduler 222 zum Zuweisen von Funktionen
oder Tasks zu dem einen oder den mehreren DSPs in Schritt 408,
und dies erfolgt im wesentlichen gleichzeitig mit dem Zuweisen des
Codes und der Daten zu dem CPU-Lokalspeicher 262 durch
die CPU 250 in Schritt 410.
-
Der
Mikro-Controller 222 weist vorzugsweise selektiv jedem
des einen oder der mehreren Digitalsignalprozessoren 212 Tasks
zu, um eine gewünschte
Rechnerleistung bei gleichzeitiger Minimierung des Energieverbrauchs
zu erreichen. Jeder des einen oder der mehreren Digitalsignalprozessoren
ist auf das Arbeiten bei einer aus einer Vielzahl von unterschiedlichen
Taktraten konfigurierbar. Bei der bevorzugten Ausführungsform
steuert der Mikro-Controller 222 selektiv die Taktraten
jedes des einen oder der mehreren Digitalsignalprozessoren 212,
um den Energieverbrauch zu reduzieren oder minimieren. Somit ist
es möglich,
dass der Mikro-Controller 222 ein Task nur einem DSP 212 zuweist
und den DSP 212 zur Durchführung des Task bei voller Taktrate
betreibt. Der Mikro-Controller 222 kann ferner das Task auf
zwei oder mehr DSPs 212 aufteilen und jeden DSP 212 zur
Durchführung
des Task bei halber Taktrate betreiben, um den Energieverbrauch
zu reduzieren.
-
Programmierung
des Systems gemäß einem
gewünschten
Digital-Standard
-
Zum
Programmieren des in 3 gezeigten Hardware-Systems
gemäß einem
gewünschten
Digital-Datenübertragungsstandard,
wie z.B. einem Digital-Mobilfunkstandard, werden ein Code und Daten
in einem nichtflüchtigen
Speicher 203, der mit dem Systemspeicher 202 gekoppelt
ist, gespeichert oder in diesen geschrieben. Der Code und die Daten,
die in dem nichtflüchtigen
Speicher 203 gespeichert sind, entsprechen dem Digital-Standard.
Somit werden, wenn ein Programmieren des Systems entsprechend dem
GSM-Digital-Mobilfunkstandard gewünscht ist, der Code und die
Daten in den nichtflüchtigen
Speicher 203 programmiert, der Operationen gemäß diesem
Digital-Standard durchführt.
Beim Hochfahren werden der Code und die Daten, die in dem nichtflüchtigen
Speicher 203 gespeichert sind, zwecks Verwendung innerhalb
des Systems in den Systemspeicher 202 transferiert. Der
Code und die Daten, die in dem nicht flüchtigen Speicher 203 gespeichert sind,
können
ferner zwecks Ausführung
durch die CPU zu dem CPU-Lokalspeicher 262 transferiert werden.
Alternativ ist ein (nicht gezeigter) separater nicht flüchtiger
Speicher mit dem CPU-Lokalspeicher 262 gekoppelt, um den
Code und die Daten beim Hochfahren zu dem CPU-Lokalspeicher 262 zu
liefern.
-
5 – Mit dem
CPU-Lokalbus gekoppelter Mikro-Scheduler (alternative Ausführungsform)
-
5 zeigt
eine alternative Ausführungsform
der Erfindung. Bei der in 5 gezeigten
Ausführungsform
ist der Mikro-Scheduler oder Mikro-Controller 222 mit dem
CPU-Lokalbus 260 gekoppelt. Dies ermöglicht es der CPU 250 und
dem Mikro-Controller 222, über den CPU-Lokalbus 260 zu kommunizieren,
wodurch der Systembus 214 für die Verwendung durch die
DSPs 212 zur Verfügung steht.
Der Mikro-Controller 222 greift über den Zweifach-Port-Bus-Arbiter 252 auf
den Systembus 214 und somit auf den Systemspeicher 202 zu.
Der Mikro-Controller 222 verwendet den CPU-Lokalspeicher 262 vorzugsweise
für Operationen
und schreibt den Code und die Daten in dem Systemspeicher 202,
um den DSPs 212 Funktionen oder Tasks zuzuweisen.
-
6 – Ausführungsform
mit verketteten DSPs
-
6 zeigt
eine alternative Ausführungsform
der Erfindung. Bei der in 6 gezeigten
Ausführungsform
sind zwei oder mehr DSPs 212 mit dem Systembus 214 verkettet.
Mit anderen Worten: ein erster DSP 212 ist mit dem Systembus 214 gekoppelt,
und ein zweiter DSP 212 ist mit dem ersten DSP 212 gekoppelt.
Bei der in 6 gezeigten Ausführungsform
sind zwei Sätze
oder Gruppen von ersten und zweiten DSPs mit dem Systembus 214 gekoppelt.
Bei jeder Gruppe aus ersten und zweiten DSPs greift der erste DSP 212 auf
einen Code und auf Daten aus dem Systemspeicher 202 zu,
die sowohl für den
ersten als auch den zweiten DSP 212 benötigt werden. Dadurch werden
die erforderlichen Zugriffe auf den Systembus 214 und somit
den Systemspeicher 202 begrenzt.
-
Somit
wird bei dieser Ausführungsform
nur dem ersten DSP 212 aus einer Gruppe aus zwei oder mehr
DSPs ein Task durch den Mikro-Controller 222 zugewiesen.
Daraufhin liest der erste DSP 212 den Code und die Daten
aus dem Systemspeicher 202, die sowohl für den ersten
als auch den zweiten DSP 212 in der Gruppe erforderlich
sind. Der erste DSP 212 teilt dann Tasks auf den ersten
und den zweiten DSP 212 auf. Der erste und der zweite DSP 212 arbeiten
entweder in einem Parallelverarbeitungsmodus oder einem Master/Slave-Modus,
um das zugewiesene Task unter Verwendung des von dem ersten DSP 212 zurückgewonnenen
Codes und Daten auszuführen.
-
7 – Zweckbestimmte
DSP-Busse (alternative Ausführungsform)
-
7 zeigt
eine alternative Ausführungsform
der Erfindung. Bei der in 7 gezeigten
Ausführungsform
sind zwei oder mehr DSPs 212 mit dem Systembus 214 gekoppelt,
und das System weist einen zweckbestimmten Adress- und Datenbus zwischen
den zwei oder mehr DSPs 212 auf. Dies ermöglicht es
den zwei oder mehr DSPs 212, ohne Zugriff auf den Systembus über die
zweckbestimmten Adress- und Datenbusse zu kommunizieren. Beispielsweise
vereinfacht dies die Operation der zwei oder mehr DSPs 212 in
einem Master/Slave-Modus oder einem Parallelverarbeitungsmodus.
Weitere Informationen zu dieser Ausführungsform finden sich in EPO
Patentnummer 0465054 und der US-Patentanmeldung Nr. 07/548,709.
-
Bei
einer Ausführungsform
der Erfindung weist jeder DSP 212 einen (nicht gezeigten)
separaten Lokalspeicher auf und führt jeder DSP 212 einen Code
und Daten aus seinem jeweiligen Lokalspeicher aus. Dadurch werden
die Arbitrierung und der Wettbewerb hinsichtlich des Systemspeichers 202 reduziert.
Die DSP-Lokalspeicher werden bei dieser Ausführungsform ferner zum Kommunizieren
zwischen sämtlichen
DSPs unter Verwendung der zweckbestimmten Adress- und Datenbusse
verwendet.
-
8 – Zweckbestimmte
Busse zwischen DSPs und CPUs (alternative Ausführungsform)
-
8 zeigt
eine alternative Ausführungsform
der Erfindung. Bei der in 8 gezeigten
Ausführungsform
sind zwei oder mehr DSPs 212 mit dem Systembus 214 gekoppelt
und weist das System zweckbestimmte Adress- und Datenbusse zwischen den
zwei oder mehr DSPs 212 und der CPU 250 auf. Dies
ermöglicht
es den zwei oder mehr DSPs 212 und der CPU 250,
ohne Zugriff auf den Systembus über
die zweckbestimmten Adress- und Datenbusse zu kommunizieren.
-
Bei
einer weiteren (nicht gezeigten) Ausführungsform weist das System
zweckbestimmte Adress- und Datenbusse zwischen den zwei oder mehr
DSPs 212 und dem Mikro-Scheduler 222 auf. Dies
ermöglicht
es dem Mikro-Scheduler 222 Tasks auf einfachere Weise,
wie z.B. durch Weiterleiten von Befehlen und Daten, den zwei oder
mehr DSPs 212 zuzuweisen.
-
DSP-Funktions-Erweiterungen
der ADSP-Architektur
-
Bei
der bevorzugten Ausführungsform
weist jeder DSP 212 den ADSP-2171-Kern von Analog Devices auf. Wie oben
beschrieben, umfasst bei der bevorzugten Ausführungsform der DSP-Kern vorzugsweise
den ADSP 2171-Kern und weist spezifische Architektur-Erweiterungen
auf, die zu einer Verbesserung bei der Ausführung von für verschiedene Digital-Datenübertragungs-Standards benötigten Algorithmen
oder Funktionen führen.
Diese Architektur-Erweiterungen
sind nachstehend aufgeführt.
- 1. Abschatten von Adressenerzeugungsregistern
- 2. Abschatten sämtlicher
Register auf 2 Ebenen
- 3. Registerdatei zum Trennen von Zweifach-Speichern von Funktionseinheiten
- 4. Verwenden einer Registerdatei zum Trennen von Zweifach-Speichern
von Funktionseinheiten ermöglicht
Paralleloperation von Funktionseinheiten, einschließlich Pipeline-Verarbeitung
von ALU mit MAC and Pipeline-Verarbeitung von ALU mit Schiebeeinrichtung.
Dies unterstützt
auch Tabellensuch-Algorithmen
- 5. Nutzen interner DRAM-Reservezyklen für Dateneingang/-ausgang
- 6. Erweiterte Befehle zum Unterstützen der Kanal-Kodierung/-Dekodierung:
Datenvergleich und Zeigersicherung
- 7. Vor- und Nachskalierung für
MAC-Operationen zur Ermöglichung
einer einfacheren Datennormalisierung
-
Diese
Merkmale werden der ADI-Architektur zu Lasten der Vergrößerung der
Befehlswortlänge und
Speicherarchitektur hinzugefügt.
Ferner bietet die Möglichkeit
zum Hinzufügen/Wegnehmen
von auf spezielle Anwendungen zugeschnittenen Funktionseinheiten
und entsprechenden Verändern
des Befehlssatzes eine im stärkeren
Maße modulare
Ausführung
der DSP-Architektur und bietet kosteneffektive Lösungen auf preisempfindlichen
Märkten.
Support-Tools können ebenfalls
bereitgestellt werden, um diese Erweiterungen zwecks einfacherer
Programmierbarkeit bei eingebetteten Anwendungen abzudecken.
-
Fazit
-
Die
vorliegende Erfindung schafft somit eine einzelne Architektur, die
auf einfache Weise auf unterschiedliche Digital-Standards konfigurierbar
ist. Dies ermöglicht
neben einer vereinfachten Silizium-Ausführung eine Reduzierung der
Telefonherstellkosten und -prozesse. Mit anderen Worten: bei der
konfigurierbaren Architektur der vorliegenden Erfindung wird eine
einzelne Hardware-Architektur zum Arbeiten gemäß mehrerer unterschiedlicher
Mobilfunkstandards verwendet, wodurch Produktions- und Beschaffungsprobleme
ver ringert werden. Bei der bevorzugten Ausführungsform programmiert der
Telefonhersteller vor Versand des Endprodukts einfach den Code für den entsprechenden
Standard für drahtlose
oder verdrahtete Digital-Mobilfunkanwendungen.