Technische Universität Braunschweig, Informatik, Betriebssysteme und Rechnerverbund


Seminar
Hochleistungskommunikation

Was sind DSPs?

previous

Frank Haverkamp 1998


Zusammenfassung:

Programmierbare Digitale Signalprozessoren oder kurz DSPs werden überall dort eingesetzt, wo aufwendige Signalverarbeitungsaufgaben mit hoher Effizenz ausgeführt werden sollen. Erste Modelle waren Anfang der 80er Jahre verfügbar. Heute existiert ein fast unüberschaubares Angebot für vielfältigste Aufgaben.

In diesem Beitrag wird angesprochen, in welchen Einsatzgebieten DSPs verwendet werden. Im Anschluß daran wird geklärt, was diese Anwendungen gemeinsam haben, und auf welche Operationen sie zurückgeführt werden können. Anhand der ermittelten Anforderungen wird dann verdeutlicht, warum herkömmliche General-Purpose-Prozessor en für diese Algorithmen weniger gut geeignet sind. Als Lösung des Problems wird dann der DSP vorgestellt, der durch seine spezielle Prozessorarchitektur für Anwendungen der Digitalen Signalverarbeitung optimiert ist.


Postscriptversion!

Hier ist dieses Dokument nochmal als Postsciptversion zu haben. Die ist eventuell etwas netter, man kann die Formeln besser lesen und die Grafiken sind auch schöner.

Seminartermin

Der Termin für das Seminar hat sich geändert! Auf der folgenden Seite ist der aktuelle Termin vermerkt.

Inhalt


Einführung

Unsere Welt ist von analogen Erscheinungen geprägt. Wechselnde Temperaturen, Helligkeit, elektrische Spannungen und Strom sind analoge Größen. Systeme, die solche Signale verarbeiten können, sind zahlreich. Durch die schnell forschreitende Entwicklung der Digitaltechnik gewinnt ein neues Gebiet zunehmendes Interesse: die digitale Signalverarbeitung.

Die neuen Möglichkeiten sind vielfältig. Immer schnellere Prozessoren ermöglichen immer leistungsfähigere Entwicklungen auf diesem Gebiet. Ein wichtiges Werkzeug hierbei ist der Digitale Signalprozessor (DSP). Was digitale Signalverarbeitung ausmacht, sollen die nun folgenden Ausführungen erläutern. Anschliessend werden Beispiele für Einsatzfelder der digitalen Signalverarbeitung aufgezeigt.

Digitale Signalverarbeitung

Was für Daten ein Signalprozessor verarbeiten kann und wie sie beschaffen sein müssen, soll die folgende kurze Erinnerung an die Digitale Signalverarbeitung klären. Dazu werden vier verschiedene Darstellungsformen von Signalen allgemein vorgestellt und dabei verdeutlicht, was ein Digitalsignal ausmacht.

  figure57

Abbildung 1: Signaltypen

Analogsignal

Als Beispiel für ein analoges Signal soll eine von der Zeit t abhängige Spannung u(t) dienen. Sowohl die Zeit t, als auch die Spannung u(t) können beliebige reelle Werte annehmen. Ein analoges Signal ist zeit- und wertekontinuierlich (Abbildung 1a)).

Zeitdiskretes Signal

Die direkte Verarbeitung eines analogen Signals ist mit Mikroprozessoren oder DSPs nicht möglich. Das Signal wird stattdessen zu festen Zeitpunkten beobachtet. Aus dem analogen Signal wird hierdurch ein zeitdiskretes Signal. Der Vorgang in dem dies geschieht wird als Abtastung bezeichnet. Der Abtastvorgang erfolgt zumeist in äquidistanten Zeitabständen. Als Abtastperiode T wird die Zeit zwischen zwei solchen Abständen bezeichnet. Der Kehrwert der Abtastperiode heißt Abtastfrequenz tex2html_wrap_inline695.

Damit das Eingangsignal am Ausgang des Systems exakt rekonstruiert werden kann, muß die Abtastfrequenz tex2html_wrap_inline697 mindestens doppelt so groß wie die größte im Fourierspektrum des Eingangssignals vorkommende Frequenz tex2html_wrap_inline699 gewählt werden. Dies folgt aus dem Abtasttheorem nach Nyquist und Shannon. Das in Abbildung 3 verwendete Anti-Aliasing-Filter dient genau diesem Zweck. Nur die Frequenzanteile des Ursprungssignals, die diesem Theorem genügen, können das Filter passieren.

Wertediskrete Signale

Genau wie für die Zeitachse geschehen, kann man auch den Wertebereich des Eingangssignals in gleichgroße Abstände einteilen. Das wertediskrete Signal entsteht, indem man es derjenigen Stufe auf der diskreten Werteachse zuordnet, der es am nächsten ist. Bild 1c) zeigt diesen Quantisierung genannten Vorgang anschaulich. Die Quntisierung wird mit einem Analog-Digital-Wandler durchgeführt. Den Fehler, den man beim Quantisieren macht, bezeichnet man als Quantisierungsfehler.

Digitale Signale

Digitale Signale sind solche, die sowohl zeitdiskret als auch wertediskret sind. Solche Signale kann ein DSP verarbeiten. Ein digitales Signal zeigt Bild 1d).

DSP-Einsatzgebiete

Auch wenn man vor dem Lesen dieses Beitrags noch nichts von Digitalen Signalprozessoren gehört hat, ist fast sicher, daß man schon einen solchen benutzt hat.  


Tabelle: Anwendungen für DSPs aus [Tex97], [Bie97]

Einen Überblick über die vielfältigen Einsatzmöglichkeiten gibt Tabelle 1. Die umsatzstärksten DSP-Anwendungen sind Mobiltelefonie, Pagers, Modems und servokontrollierte Laufwerkssysteme, sowie Video- und Audiokompression.

Was macht diese Anwendungen aus? Welche Berechnungen bzw. Operationen werden benötigt und warum erfordern diese einen speziellen Prozessortyp?

DSP-Anwendungen

Die Einsatzfelder für Digitale Signalprozessoren haben besondere charakteristische Eigenschaften. Es werden oft wiederholende numerische Berechnungen durchgeführt, bei denen hohe Anforderung an die Genauigkeit gestellt werden. Eine hardwareunterstützte Überlaufkontrolle ist oft sinnvoll. Es wird oft multipliziert und addiert. Diese Rechenoperationen verlangen schnelle Verfügbarkeit der zur Berechnung benötigten Daten. Häufige Speicherzugriffe auf hintereinanderliegende Speicherbereiche schnell durchführen zu können, ist daher eine weitere Anforderung.

Addition und Multiplikation sollen möglichst in einem Instruktionszyklus erfolgen. Es müssen dabei mehrere Operanden geladen, sowie ebenfalls das Berechnungsergebnis oder einer der Operanden in diesem Zyklus wieder im Speicher abgelegt werden. Besondere Unterstützung verschiedener Adressierungsarten z.B. für die Realisierung von Koeffizentenspeichern sind erforderlich. Effizente Realisierung von Schleifen soll hardwareunterstützt erfolgen, denn bei vielen Berechnungen steht schon vorher fest, wie oft eine Schleife durchlaufen werden soll. Inkrementieren und Abfragen von Schleifenzählern kann automatisiert werden. Da viele Daten eingelesen und ausgeben werden müssen, muß ein Prozessor, der für solche Anforderungen konzipiert ist, über leistungsfähige Ein- und Ausgabemöglichkeiten verfügen. Der Prozessor soll auch noch einige andere Features wie A/D- oder D/A-Wandler besitzen und geringen Stromverbrauch aufweisen.

Anwendungen, die viele oder alle diese Forderungen an das Verarbeitungssystem stellen, sind DSP-Anwendungen. Der FIR-Filter ist ein einfaches Anwendungsbeispiel dieser Art.

Doch bevor auf den FIR-Filter oder auf Digitale Signalprozessoren näher eingegangen wird, soll erläutert werden, warum General-Purpose-Prozessoren für DSP-Anwendungen oft unzureichend sind.

General-Purpose-Prozessor für DSP-Algorithmen

Warum verwendet man für DSP-typische Berechnungen keinen Standardprozessor?


Was ist ein DSP?

Damit verständlich wird, worin die Vorteile eines Digitalen Signalprozessors liegen, wird als eine typische DSP-Anwendung zunächst der FIR-Filter vorgestellt. Anschließend werden die Eigenschaften typischer DSPs erläutert.

Beispiel: FIR Filter

Mit Hilfe eines FIR-Filters (Finite Impulse Response) können beliebige endliche Impulsantworten realisiert werden. Um die Grundlagen besser verstehen zu können bemühe man die einschlägige Literatur oder auch [Str97] Heft 6/96.
gif

Wichtig ist die Struktur dieses Filters. Durch die Koeffizienten beeinflußt man die Eigenschaften des Filters. Man erkennt leicht die typischen Operationen, die zur Realisierung notwendig sind. Der aktuelle Ausgabewert des Filters berechnet sich wie folgt

  figure57

Abbildung 2: FIR-Filter

Wird ein neues Sample am Eingang übernommen, so muß aus den N bisher eingegangenen Samples und aus den Filterkoeffizienten der neue Ausgangswert berechnet werden. Dabei wird N-mal addiert und multipliziert, um das Ergebnis zu berechnen. Die Berechnung muß abgeschlossen sein, bevor das nächste Sample vom Eingang abgegriffen wird. D ist ein Verzögerungsglied. Das aktuelle Sample muß nach der Berechnung im Verzögerungsspeicher abgelegt werden, da es zur Berechnung der folgenden Ausgangswerte benötigt wird.

Es ist ersichtlich, daß beim Berechnen eines neuen Ausgangswertes eine große Anzahl von Additionen und Multiplikationen in nur kurzer Zeit durchgeführt werden müssen. Wie ein DSP diese Aufgabe löst, behandeln die nächsten Abschnitte.

Einfaches DSP Sytem

  figure57

Abbildung 3:Aufbau eines DSP-Systems

Abbildung 3 zeigt den prinzipiellen Aufbau eines DSP-Systems, welches beim Integrationsgrad heutiger ICs mit nur wenigen Bauteilen auskommt. Ein solches System könnte z.B. zur Realisierung eines digitalen Filters verwendet werden.

Das zeit- und wertekontinuierliche Analogsignal wird so umgewandelt, daß am Eingang des DSP ein digitales Signal vorliegt. Der Tiefpaß am Eingang des A/D-Wandlers sorgt dafür, daß das Abtasttheorem stets erfüllt ist.

Die eingehenden Messwerte (Samples) werden vom DSP verarbeitet und am Ausgang zum D/A-Wandler geführt. Am Ausgang des Tiefpaßses liegt nach der D/A-Wandlung wieder ein zeit- und wertekontinuierliches Analogsignal an.

Eigenschaften eines DSPs

Der Begriff Digitaler Signalprozessor (DSP) legt im Grunde schon nah, um was es beim Thema DSP eigentlich geht: Prozessoren, die speziell abgestimmt sind auf die Aufgaben in der digitalen Signalverarbeitung d. h. die mathematische Manipulation digital repräsentierter Signale. Der Artikel [BLB97] gibt einen kleinen Eindruck um was und in welche Größenordnungen es heute im DSP-Geschäft geht:

Die digitale Signalverarbeitung ist eine der Schlüsseltechnologien für mehrere schnell wachsende Anwendungsbereiche wie die drahtlose Kommunikation, Audio- und Videoverarbeitung und industrielle Steuerungsaufgaben. Durch die steigende Popularität der DSP-Anwendungen nahm die Vielfalt der verschiedenen DSPs von Anfang der 80er Jahre ständig zu. Die Marktforschungsfirma Forward Concepts sagt eine Verkaufssumme von DSP-Prozessoren US-weit von $2.5 Milliarden im Jahr 1997 voraus, mit einer prognostizierten Steigerungsrate von 35 Prozent ...
gif

  figure57

Abbildung 4:Vereinfachtes Blockschaltbild eines Signalprozessors aus [WWSN94]

Das Blockschaltbild zeigt die wichtigsten Eigenschaften eines DSPs. Deutlich erkennbar der getrennte Programm und Datenspeicher. Der Datenspeicher ist bei diesem Prozessor nochmals aufgeteilt in Daten ROM z.B f"ur Filterkoeffizienten und Daten-RAM z.B. für die aufgenommen Samples. Die Adress-ALU erlaubt einige interessante Addressierungsarten ohne gro&szuml;en Zeitverlust. Charakteristisch für einen DSP ist, da&szuml; Multiplizierer und Akkummulator in einem gemeinsamen Datenpfad liegen. Dies erlaubt die Ausführung einer Addition und einer Multiplikation in einen Instruktionszyklus.

Um die Frage zu klären was einen DSP ausmacht, muß man einen Blick darauf werfen, was ein solcher Prozessor leisten soll.

Die verwendeten Operationen sind gekennzeichnet durch eine große Anzahl von Multiplikationen, Additionen, Speicherzugriffen und sich die sich ständig wiederholenden Arbeitsfolgen. Schaut man sich nun die interne Architektur eines Digitalen Signalprozessors an, erkennt man, wie die Entwickler versuchen, genau diese Anforderungen so optimal wie möglich zu erfüllen.

MAC-Operation

Die Multiply-Accumulate-Operation (MAC) dient z.B. zur Berechnung eines Vektorproduktes, welches beispielsweise für digitale Filterfunktionen verwendet wird. Das Vektorprodukt besteht dabei aus einer Summe von Produkten der Vektorelementepaare. In Code umgesetzt bedeutet dies die wiederholte Anwendung der MAC-Operation in Verbindung mit der Summenbildung.

Um die MAC-Operation in einem Instruktionszyklus berechnen zu können, ist eine Multipliziereinheit und ein Akkumulator im Hauptdatenpfad eines DSPs eingebettet, dies ist in Abbildung 5 ersichtlich. Um zusätzlich sicherstellen zu können, daß es bei einer Serie von Multiply-Accumulate-Operationen nicht zu einem Überlauf des Akkumulators kommt, ist dieser bei den meisten DSPs mit zusätzlichen Bits versehen.

  figure57

Abbildung 5:Ein DSP5600X von Motorlola

Ein viel verwendeter DSP von Motorola im Blockschaltbild. Auch hier ist wieder der Datenspeicher aufgeteilt in einen X- und einen Y-Bereich. Motorola verwendet Datenbusse mit 24 Bit Breite. Die Akkumulatorregister haben eine Breite von 56 Bit. Auch hier wieder Multiplizierer und Addierer in einem Datenpfad. Ergänzt wird das Ganze durch Shifter und Limiter.

Speicherorganisation

Was nützt eine MAC-Operation, wenn die Daten, die für sie benötigt werden, nicht ebenso effizent zur Verfügung gestellt werden können? Aus diesem Grund ist ein DSP in der Lage mehrere Speicherzugriffe in einem Instruktionszyklus gleichzeitig durchzuführen. Parallel zum Holen eines Befehls werden die dazu benötigten Operanden geladen und Ergebnisse der vorherigen Operation in den Speicher geschrieben.

Während der Prozessor die MAC-Operation ausführt, wird parallel dazu der Meßwert und der Koeffizient für die Berechnung geladen. Um dies zu ermöglichen, haben viele Signalprozessoren mehrere on-chip Busse, multi-ported on-chip Speicher und manchmal auch mehrere unabhängige Speicherbänke.

Der Name für eine solche Architektur mit getrennten Speicherbereichen für Programmcode und Daten ist Harvard-Architektur im Gegensatz zur Von Neumann Architektur, die in herkömmlichen Microprozessor en verwendet wird und nur einen Speicherbereich für Programm und Daten vorsieht. Viele neue DSPs verwenden sogar mehrere getrennte Speicherbereiche für die Daten. Eine solche Anordnung bezeichnet man auch als erweiterte Harvard-Architektur.

Adressierungsarten

Um die Rechengeschwindigkeit nochmals zu erhöhen, werden auf DSPs Address Generation Units eingesetzt. Ohne den Hauptdatenpfad des Prozessors zu nutzen, können die Speicheradressen zum Beispiel für die Operanden parallel zu arithmetischen Operationen ausgeführt werden. Viele dieser Address Generation Units unterstützen Register-Indirekte Adressierung mit nachträglicher Inkrementierung, eingesetzt dort, wo wiederholte Berechnungen auf Daten durchgeführt werden sollen, die sequentiell im Speicher angeordnet sind. Oftmals wird auch eine Modulo Adressierung zur Verfügung gestellt, die die Benutzung von Ringbuffern erleichtert. Manche Prozessoren ermöglichen auch eine Bit-reversed Adressierung, die für manche Fast Fourier Transformations (FFT) Algorithmen eingesetzt werden kann.

Schleifenbefehle

Manche Prozessoren unterstützen besonders Schleifenbefehle, um die Ausführung von Schleifen zu beschleunigen. Hierbei gibt es Prozessoren, die nur eine Operation wiederholen können oder auch solche, die die Fähigkeit haben, gleich einen ganzen Anweisungsblock auf diese Weise zu wiederholen. Man spricht hier von Single- und Multiinstruktion Hardware Loops. Solche Schleifen werden von der Hardware kontrolliert ausgeführt. Der Programmierer muß sich weder um die Inkrementierung des Schleifenzählers kümmern, noch um die Abbruchbedingung der Schleife. Einige neuere DSPs verwenden prozessorintern Pipelines und Cachespeicher vergleichbar mit RISC-Prozessoren, um die Schleifenoperationen schneller ausführen zu können.

Kommunikation

Die meisten Prozessoren unterstützen zudem ein oder mehrere serielle bzw. parallele I/O Interfaces, Interruptausführung mit geringem Overhead oder DMA (Direct Memory Access), um Datentransporte fast ohne Benutzung des restlichen Prozessors zu ermöglichen.

Spezielles

DSP-Kerne für FPGA-Designs

DSPs gibt es nicht nur als einzelne Chips. Es gibt auch Hersteller, die DSPs für FPGA-Designs anbieten. Ein FPGA-Designer kann also einen DSP-Kern für seine FPGA-Anwendung kaufen und diesen in seinen Chip integrieren. Sein Design wird kompakter und eventuell preiswerter. Die von den Herstellern angebotenen DSPs sind für die speziellen FPGAs getestet und nutzen daher die vorhandnen Resourcen des FPGAs optimal. In diesem Bereich tut sich in der Enwicklung sehr viel. Viele neuere DSPs sind sehr auf bestimmte Anwendungen ausgerichtet, so z.B. die Datenkompression oder Dekompression. So kann man mit Hilfe eines FPGA-DSPs einen MPEG-Coder oder -Decoder auf einem Chip integrieren.

Vernetzung mehrerer DSPs zur weiteren Performancesteigerung

Es gibt Hochleistungs DSPs, die über leistungsfähige Schnittstellen zu anderen DSPs verfügen. Diese parallelen oder auch seriellen Datenautobahnen dienen zum schnellen Austausch von Daten zwischen vernetzten DSPs. Am vorteilhaftesten ist eine vollvernetzte Struktur, da mit ihr konkurrierende Zugriffe auf gemeinsame Busse entfallen.

Auszug aus dem Programmcode des FIR-Filters

Da nun die Besonderheiten von DSPs erläutert worden sind, soll hier gezeigt werden, wie sich die spezifischen Merkmale eines Signalprozessors bei der Assemblerprogrammierung bemerkbar machen.

Die zentrale Programmschleife des bereits vorgestellten FIR-Filters auf einem Prozessor mit Von Neumann Architektur mit einem gemeinsamen Speicher für Daten und Programmcode. Aufwendig ist hier die Schleifensteuerung. inc, tst, jnz werden explizit aufgerufen und verbrauchen somit Ausführungszeit.

loop:
mov *r0,x0
mov *r1,y0
mpy x0,y0,a
add a,b
mov y0,*r2
inc r0
inc r1
inc r2
dec ctr
tst ctr
jnz loop

gif

Nocheinmal die zentrale Schleife zur Realisierung des FIR-Filters. Deutlich weniger Code. Inkrementierung, Addressierung des Speichers, Schleifenkontrolle wird direkt von der Hardware des DSP erledigt. Laden der Operanden, Berechnen des FIR-Taps geschieht in einem Schritt mit der mac-Anweisung. Hierbei vergeht nur ein Instruktionszyklus. Auch die Programmierung der Schleife ist deutlich kompakter und effizenter gelöst.

move #Xaddr,r0
move #Yaddr,r4
rep #Ntaps
mac x0,y0,a x:(r0)+,x0 y:(r4)+,y0

gif


Der passende DSP

Signalprozessoren lassen sich in zwei große Familien aufteilen. Diese unterscheiden sich durch die interne Zahlendarstellung. Es gibt DSPs mit Festpunkt-Arithmetik und Prozessoren mit Floatingpoint-Arithmetik. Letztere sind in ihrer Anschaffung wesentlich teurer und meist in ihrer Rechenleistung den Festpunkt-DSPs überlegen.

Da es aber im DSP-Geschäft primär darum geht, den Signalprozessor einzusetzen, der die Anforderungen der Anwendung am besten erfüllt - hierzu gehört oft besonders der Preis - werden in den meisten Anwendungsfällen Festpunkt-DSPs eingesetzt.

Arithmetiken

Festpunkt-Aritmethik

Der in [Str97] beschriebene DSP5600 von Motorlola verwendet 24 Bit zur Darstellung eines Abtastwertes. Diese Bits sind folgendermaßen zu interpretieren.

gif

Um den Wert einer so dargestellten Zahl zu ermitteln, muß man Gewichtsfaktoren addieren, deren Bit gesetzt ist. Das erste Bit kennzeichnet das Vorzeichen und ist bei negativen Zahlen gesetzt. Dieser DSP ist in der Lage, Zahlen von -1.0 bis +0.99999988 darzustellen. Abgesehen vom Sonderfall -1*-1=+1 kann kein Bereichsüberlauf auftreten.

Floatingpoint-Arithmetik

Eine Gleitpunktzahl wird als dargestellt, wobei gilt. m heißt dabei Mantisse, b Basis und e Exponent. Bei normalisierten Gleitpunktzahlen gilt oder z=0.

gif

Die Basis b sei 2. Eine Zahl z läßt sich in dieser Darstellung wie folgt schreiben mit . Die Mantisse m wird hier dargestellt als . s ist dabei das Vorzeichen von z. Bei normalisiertem gilt . Es wird daher nur dargestellt. Der Exponent E kann ebenfalls negative Werte annehmen. Statt E wird der Wert e=E+Verschiebung gespeichert. Allgemein ergibt sich daher die Darstellung einer 32-Bit Gleitpunktzahl einfacher Länge nach IEEE 734-1985. Hierbei gilt speziell p=24, Verschiebung=127, also .
gif

DSPs mit dieser Arithmetik sind deutlich komplexer und daher wesentlich teurer als solche mit Festpunktdarstellung. Sie werden daher nur in besonders zeitkritischen Anwendungen eingesetzt, wo dieser Aufwand gerechtfertigt ist.

Geschwindigkeitsvergleich

  figure57

Abbildung 6:   Processor DSP Speed

Geschwindigkeitsvergleiche zwischen verschiedenen Signalprozessoren oder gar zwischen DSP und General-Purpose-Prozessor en besitzen oft nur wenig Aussagekraft. Die Geschwindigkeit eines Prozessors wird von den Herstellern oft in MIPS (Micro-Instructions per Second), MOPS (Million Operations per Second) oder MACS (Multiply-Accumulate per Second) angegeben.

Keine der genannten Vergleichsangaben berücksichtigt, wieviel sinnvolle Arbeit in einem Instruktionszyklus bzw. während einer Operation verrichtet werden kann, noch die Geschwindigkeit der hierzu benötigten Speicherzugriffe. Zum anderen unterscheiden sich auch die Befehlssätze der DSPs signifikant, so daß eine Instruktion bei verschiedenen DSPs etwas Unterschiedliches bedeuten kann.

Aus diesem Grund bezieht sich der hier angegeben Vergleich von Prozessoren auf einen Benchmark der Berkeley Design Technology, Inc. (BDTi). Hierbei werden spezielle DSP-Algorithmen an die unterschiedlichen Prozessoren angepaßt. Deren Ausführungsgeschwindigkeit wird verwendet, um einen ,,objektiveren`` Performancevergleich durchführen zu können.
gif


Zusammenfassung und Ausblick

DSP-Eigenschaften auf einen Blick

Entwicklung

Der Einfluß des Erfolges von DSPs im Bereich Sprachcodierung und Audioverarbeitung macht sich auch bei den General-Purpose-Prozessor en bemerkbar. So ist laut [BLB97] Intels MMX und die single-cycle Multiply-Accumulate Instruktion des R4650 RISC-Prozessors von Device Technology eine Erweiterung dieser Prozessoren um DSP-Fähigkeiten.

Die Performance leistungsfähiger General-Purpose-Prozessor en erlaubt es, auf ihnen auch spezifische DSP-Anwendungen auszuführen. In Systemen, bei denen DPS-Funktionalität erforderlich ist und beispielsweise ein Microcontroller bzw. ein Microprozessor und zusätzlich ein DSP eingesetzt wird, bietet es sich an den DSP zugunsten eines leistungsfähigeren Microcontroller s oder Microprozessor s einzusparen. Dies erhöht die Integrationsdichte und reduziert den Energieverbrauch. Zusätzlich muß der Systementwickler nur einen Prozessor programmieren, was sich günstig auf die Entwicklungszeit des Systems auswirken wird.

Problematisch beim Einsatz von General-Purpose-Prozessor en für DSP-Anwendungen ist die Frage der Echtzeitfähigkeit. Solche Prozessoren arbeiten oft mit komplizierten Betriebssystemen. Das DSP-Programm hat den Prozessor eventuell nicht exklusiv für sich. Das wiederum hindert den Enwickler daran, Aussagen über das Zeitverhalten der Anwendung zu machen.

Die Entwicklungen im Bereich der Digitalen Signalverarbeitung sind rasant. Die Möglichkeiten, die sich auf diesem Gebiet eröffnen, sind immens und keineswegs ausgeschöpft. Immer leistungsfähigere DSPs drängen auf den Markt. Nicht die fehlende Hardware ist das Problem, sondern die Software, die noch nicht entwickelt ist. Branchen wie Mobiltelefonie, Audio- und Video, Servosysteme, Steuerung, Meßwerterfassung und -verarbeitung sind interessante Gebiete, die an Bedeutung sicherlich noch gewinnen werden. Man kann gespannt sein, wie sich dieser Sektor weiterentwickeln wird und ob das Wachstum der letzten Jahre sich noch steigern wird.


Literatur

Bie97
BIER, J.: The Evolution of DSP Processors. Seminar. 1997. - University of California at Berkeley http://www.bdti.com/.../slides.pdf

BK96
BIER, J. ; KELLERHOFF, C.: Qual der Wahl - der ,,richige`` DSP. In: Elektronik Heft 10 (1996), S. 94-107. Feldkirchen: Franzis-Verlag.

BLB97
BIER, J. ; LAPSLEY, P. ; BLADOCK, G.: Choosing a DSP Processor. In: DBTi ARTICLES & PAPERS (1997). http://www.bdti.com/.../wpchose.html

Ele97
ELEKTOR: Signalverarbeitung mit DSPs. In: ELEKTOR Elektronik & Computertechnik Heft 11 (1997), S. 60-63

Goo95
GOOS, G.: Vorlesungen über Informatik. Berlin, Heidelberg : Springer-Verlag, 1995

Kel96
KELLERHOFF, C.: Rechenleistung ohne Grenzen. In: Elektronik Heft 19 (1996), S. 58-66. Feldkirchen: Franzis-Verlag

Kel97
KELLERHOFF, C.: Durchblick im DSP-Dschungel. In: Elektronik Heft 13 (1997), S. 64-77. Feldkirchen: Franzis-Verlag

Lap96
LAPSLEY, P.: Fixed-Point DSP Processors: History and Trends. Seminar. 1996. Berkeley Design Technology, Inc.

LB97
LAPSLEY, P. ; BLADOCK, G.: Evaluating DSP Processor Performance. In: DBTi ARTICLES & PAPERS (1997). http://www.bdti.com/.../wpeval.html

LBSL97
LAPSLEY, P. ; BIER, J. ; SHOHAM, A. ; LEE, E.A.: Buyer's Guide to DSP Processors. 3. Fremont, California : Berkeley Design Technology, Inc., 1997

Str97
STRAUSS, H.: Signal Processing. In: ELRAD Hefte 12/95 bis 02/97 (1995-97)

Tex97
TEXAS INSTRUMENTS: The future of technology is DSP. CD-ROM. 1997. TMS320 DSP Solutions CD-ROM

WWSN94
WAGENER, W. ; WETTER, O. ; SCHNEIDER, M. ; NäGER, G.: Digitale Signalprozessoren für Audio. Aachen : Elekor-Verlag, 1994


Frank Haverkamp
Fri Feb 6 12:42:23 CET 1998