| |
DL4FDE > DSP 24.04.95 19:53l 68 Lines 3689 Bytes #999 (999) @ DL
BID : 2445DB0SIFJT
Read: DJ7UA DL2WP DL6YAR DF3KA DF2EL DL1EJW DK5JW DH1DAC DL6SCU GUEST DO1SLP
Read: DK5RAS
Subj: DSP.EXE, INFO
Path: DB0GOS<DB0HAG<DB0ACH<DB0NDK<DB0AIS<DB0GV<DB0SIF
Sent: 950424/1830z @:DB0SIF.#HES.DEU.EU [Mailbox Giessen] BCM1.36e
From: DL4FDE @ DB0SIF.#HES.DEU.EU (Alex)
To : DSP @ DL
Informationen zum Programm "DSP.EXE":
Die digitale Signalverarbeitung (Digital Signal Processing) wird in der NF-
Technik in der Zukunft unter dem Begriff DSP das beherrschende Thema sein.
Analoge Baugruppen wie Filter aller Art, Modulatoren, Demodulatoren, Noise
Blanker usw. lassen sich einfach durch entsprechende Software implementieren.
Die theoretischen Grundlagen sind seit langem bekannt, die erforderlichen
Rechenleistungen für Echtzeit-DSP stehen aber erst seit kurzem für den kleinen
Geldbeutel zur Verfügung. Bekannt geworden sind z.B. die sehr leistungsfähigen
DSP-Filter für Amateurfunkzwecke mit verschiedenen "eingebauten" Filtertypen.
Zur digitalen Signalverarbeitung werden spezielle Prozessoren, nämlich die
Digitalen Signal Prozessoren (DSP) verwendet. Diese sehr schnellen Pro-
zessoren besitzen einen eingeschränkten Befehlssatz der jedoch auf die
Bedürfnisse zugeschnitten ist.
Zentrales Element der digitalen Signalverarbeitung ist die sog. Fast-Fourier-
Transformation (FFT). Dabei werden die vom A/D-Wandler in vorgegebenen Zeit-
abständen zur Verfügung gestellten diskreten Abtastwerte in die Frequenzebene
zurück gerechnet. Die mathematischen Zusammenhänge sind relativ komplex, und
daraus resultierend auch die erforderliche Rechenleistung.
Die FFT hat mich schon im Studium sehr interessiert, aber zu einer Zeit als
gemunkelt wurde, daß es bald einen 286 mit 12 MHz geben würde, war an sinn-
volle Experimente mit der FFT nicht zu denken. Heutzutage bekommt man schnelle
Rechner "schon nachgeschmissen, wenn man die Tür nicht schnell genug zu macht"
(Zitat meines ehem. HF-Prof.). Die neuerliche Anschaffung eines 486/66DX2 be-
wog mich zu der Ansicht, daß es damit wohl zu schaffen sei. Als A/D-Wandler
beschuf ich mir kurzer Hand einen einfachen (billigen) Sound-Blaster. Das erste
Projekt war ein NF-Spectrum-Analyser der 80 Spektrallinien im Abstand von
50 Hz in einem Dynamikbereich von 48 dB auf dem Bildschirm abbildet. Das
Programm ist objektorientiert in Pascal, zeitkritische Routinen in Assembler
geschrieben. Die Wiederholrate erreicht ca. 5 Abbildungen pro Sekunde!!!
Eine interessante Anwendung für Funkamateure fiel mir sofort ein. Der CW-
Dekoder. Dieser soll nur die prinzipiellen Möglichkeiten aufzeigen und wurde
im Schnellverfahren programmiert. Er arbeitet ab einer Geschwindigkeit von
60 BpM. Trotz der einfachen Funktionsweise arbeitet er erstaunlich gut.
Aufgrund der Möglichkeiten die die digitale Signalverarbeitung bietet, konnte
ich es mir natürlich nicht verkneifen einige spezielle Features zu
implementieren. Eine träge Amplitudenverfolgung die mit einem Dynamikumfang von
24 dB dem Nutzsignalpegel folgt, verbessert die Signalerkennung und verringert
QSB und QRM Einflüsse. Ein fehlertoleranter Signalerkennungsalgorithmus gleicht
kurzfristige Amplitudenschwankungen aus (z.B. schnelle AGC). Ein fehler-
toleranter Decodierungsalgorithmus berücksichtigt das individuelle Timing bei
Handtastenbetrieb. Das Programm ist Interruptgesteuert. Es nutzt die vorhandene
Rechenleistung auf meinem Rechner nur zu ca. 20 Prozent aus. Also ist davon
auszugehen, daß es auch auf einem langsamen 386 läuft. Auf einem 286 wird das
Programm, wenn es überhaupt läuft, falsche Ergebnisse liefern, da in den
Assemblerroutinen spezielle 386-Befehle verwendet werden.
Viel Spaß und 73 wünscht Alex, DL4FDE.
Quellen:
- Script der Vorlesung Impulstechnik (FH Giessen)
- Algorithmen v. Robert Sedgewick, Addison-Wesley
- Developer Kit for Sound Blaster (TM) Series, Creative Labs
- sowie jede Menge gesammelter Artikel über DSP und FFT aus div. Quellen
+++EOF
Read previous mail | Read next mail
| |