Realisierung eines Signalprozessorsystems mit 2 Prozessoren und integrierter Entwicklungsumgebung
- Art: Diplomarbeit
- Autor: Markus Bäckmann
- Abgabedatum: Februar 1995
- Umfang: 142 Seiten
- Dateigröße: 7,3 MB
- Note: 1,0
- Institution / Hochschule: Fachhochschule Darmstadt Deutschland
- ISBN (eBook): 978-3-8324-1741-3
-
ISBN (Paperback) :
978-3-8324-1741-3 P - ISBN (CD) :978-3-8324-1741-3 CD
- Sprache: Deutsch
- Prämierung:
- Arbeit zitieren: Bäckmann, Markus Februar 1995: Realisierung eines Signalprozessorsystems mit 2 Prozessoren und integrierter Entwicklungsumgebung, Hamburg: Diplomica Verlag
- Schlagworte: Digitale Signalverarbeitung, Parallelprozessoren, Digitale Signalprozessoren, DSP
In den Warenkorb
38,00 €
Diplomarbeit von Markus Bäckmann
Zusammenfassung:
Aufgabe dieser Diplomarbeit war es, eine Entwicklungsumgebung für einen digitalen Signalprozessor zu erstellen. Verwendung findet dabei ein DSP56002 von Motorola mit 40MHz Taktfrequenz (20 MIPS), das Entwicklungssystem wird mit Hilfe einer RS232-Schnittstelle mit einem PC verbunden. Die Software auf dem PC wurde unter dem Betriebssystem Windows implementiert.
Das Einsatzgebiet des Systems liegt vor allem in der Lehre, es soll die Möglichkeit bieten, mit möglichst wenig Schritten einfache Programme für einen DSP zu erstellen. Um allerdings auch für komplexere Anwendungen genug Möglichkeiten anzubieten, wird großer Wert auf die flexiblen Erweiterungsmöglichkeiten gelegt.
In der einfachsten Ausbaustufe wird ein DSP56002 im Single-Chip-Betrieb (also ohne externen Speicher) unterstützt, in der Maximalausbaustufe eine Erweiterung auf 192Kx24 Bit-Worte statisches RAM und Unterstützung eines zweiten DSP56002, der als echter Parallelprozessor arbeiten kann. Die Aufrüstung orientiert sich am Stand der sogenannten Plug&Play-Technik - d.h. die Erweiterungen werden eingesetzt und automatisch erkannt.
Die Ausbaustufe mit einem Signalprozessor sollte nahtlos in den Betrieb mit einem zweiten DSP übergehen, d.h. die Software bietet für beide DSPs adäquate Debugging- und Entwicklungsmöglichkeiten.
Funktionsumfang Die DSPs sollen mit der vollen Arbeitsgeschwindigkeit von 40MHz arbeiten, als externer Basistakt wird ein 1MHz-Takt eingesetzt, der durch die interne PLL multipliziert wird. Dadurch ist eine Systemerweiterung auf den DSP56002 mit 66MHz prinzipiell denkbar .Der Speicherzugriff soll mit voller Geschwindigkeit - also 0 Waitstates – erfolgen.
Der Speicher steht beiden Signalprozessoren gleichermaßen zur Verfügung, eine Busüberwachung verteilt den globalen Bus auf die DSPs. Die Kornmunikation und Synchronisation der beiden Parallel-DSPs kann über den gemeinsamen Speicher (Semaphoren) oder über Interruptsignale erfolgen.
Um dem DSP-System eine Anbindung an die Außenwelt zu ermöglichen, wird ein flexibler Port zum Anschluß von AD-/DA-Umsetzern bereitgestellt, sowie eine zusätzliche serielle RS232-Schnittstelle für den DSP#1.
Der Port zum Anschluß von Analog-Einheiten bietet eine volle 24-Bit-Busanbindung, unterstützt ADUs und DAUs - auch in Mehrkanalausführung -, ist für beide DSPs nutzbar und die maximale Abtastfrequenz wird nur durch den Systemtakt der DSPs begrenzt (theoretisch 10MHz).
Durch die zusätzliche serielle Schnittstelle für DSP#1 wird die Verwendung als Stand-Alone-System unterstützt, da eine eigene Kornmunikationsverbindung zu einem anderen System (z.B. Prozeßrechner, SPS) möglich ist.
Der Monitor zur Steuerung der Signalprozessoren wird nicht im Sichtbarkeitsbereich der DSPs realisiert, sondern in einem externen Mikrocontroller abgelegt. Der Mikrocontroller steuert über die integrierten Hardwaredebugger der DSPs (OnCE-Port) alle Funktionen von außen, dadurch wird keinerlei DSP-Speicher und keine DSP-Rechenleistung für den Monitor benötigt.
Für den DSP-Programmierer hat dies zur Folge, daß sich das System ihm gegenüber immer als Stand-Alone-System zeigt, der Programmier muß den Monitor bei der Programmierung eigener Applikationen nicht berücksichtigen (z.B. ist kein Linken eines Debug-Monitors bei DSP-Programmen notwendig).
Um die flexible Erweiterung so einfach wie möglich zu gestalten, sind in den Monitor Funktionen zur Erkennung der DSPs und des Speichers bereits integriert.
Die serielle Verbindung zwischen Monitor und PC stellt den Flaschenhals des Systems dar, daher muß die Anzahl der übertragenen Daten möglichst gering gehalten werden. Dies wird durch die Schaffung fest definierter Datenprotokolle gewährleistet. Direkte Hardwareeingriffe werden daher ausschließlich vom Monitor durchgeführt, während die Kommunikation via serieller Schnittstelle über Makrobefehle stattfindet.
Damit besitzt der Monitor einen festen Befehlssatz, der durch Makrobefehle über die serielle Schnittstelle abgerufen werden kann. Dies hat mehrere Vorteile: die Sicherheit gegen fehlerhafte Bedienung wächst, es ist eine gute Erweiterbarkeit für neue Makrobefehle gegeben, da neue Protokolle sehr leicht in die bestehenden Programme einfügbar sind, und die Entwicklungsoberfläche auf dem PC arbeitet hardwareunabhängig, da sie sich nicht um die eigentliche Interpretation kümmern muß.
Die Entwicklungsumgebung auf dem PC wird als MDI-Windows-Applikation implementiert, d.h. sie kann mehrere Assemblerquelltexte gleichzeitig verwalten. Für die Quelltexte werden alle üblichen Editiermöglichkeiten angeboten, des weiteren ist der Assembler voll in die Oberfläche integriert.
Um auch größere Programme entwickeln zu können, wird eine einfache Projektverwaltung angeboten, die das Zusammenfassen von mehreren Modulen zu einem größeren Programm ermöglicht.
Die Oberfläche unterstützt beide DSPs gleichermaßen, es werden sowohl Systeme mit einem als auch mit zwei DSPs unterstützt, für beide Prozessoren sind die gleichen Funktionen verfügbar. Die Oberfläche stellt sich über die automatische Konfigurationserkennung des Monitors jederzeit auf die vorhandene Ausstattung ein, es sind daher keine unterschiedlichen Programmversionen für verschiedene Ausbaustufen notwendig.
Da die Oberfläche die Konfiguration des Systems und die Zustände der DSPs über Makrobefehle vom Monitor abfragen kann, verhindert die Oberfläche Fehlbedienungen, indem nur solche Befehle abrufbar sind, die in diesem Betriebszustand keine Fehlfunktion hervorrufen können. Dies schränkt zwar die Möglichkeiten des Bedieners etwas ein, wird aber im Lehreinsatz zu einem schnelleren Lernerfolg führen, da die Häufigkeit von Bedienfehlern mangels exakter Systemkenntnisse abnimmt.
Um den Lernerfolg zu verbessern, werden umfangreiche Hilfefunktionen bereitgestellt. Zum einen werden die Programmfunktionen vollständig erklärt, zum anderen sind zahlreiche Hilfeseiten zur Assemblerprogrammierung enthalten. Eine vollständige Auflistung der Assemblerdirektiven und -fehlermeldungen rundet das Hilfeprogramm ab. Dies soll gerade im Lehreinsatz verhindern, daß wegen fehlender Informationen bestimmte Funktionen falsch oder überhaupt nicht genutzt werden. Da sämtliche Hilfetexte über Hyperlinks ("Querverweise") verfügen, sind Informationen schnell abrufbar, das eigenständige Arbeiten ohne lange Einarbeitungszeit wird somit ermöglicht.
Inhaltsverzeichnis:
| Einleitung | 7 | |
| Aufgabenstellung | 7 | |
| Funktionsumfang | 7 | |
| 1. | Grundlagen | 9 |
| 1.1 | Beschreibung des 68RC11 | 9 |
| 1.1.1 | Beschreibung der MPU | 9 |
| 1.1.2 | Synchrone serielle Schnittstelle SPI | 11 |
| 1.1.3 | Asynchrone serielle Schnittstelle SCI | 17 |
| 1.2 | Beschreibung des DSP56002 | 25 |
| 1.2.1 | On-Chip-Emulation (OnCE) | 26 |
| 1.2.2 | Port B - Host Interface | 40 |
| 2. | Technische Realisierung | 63 |
| 2.1 | Ausbaustufen des Systems | 63 |
| 2.1.1 | Konfigurationsmöglichkeiten | 63 |
| 2.1.2 | Weitergehende Möglichkeiten | 63 |
| 2.2 | Struktur der Schaltung | 64 |
| 2.2.1 | Blockschaltbild | 64 |
| 2.2.2 | Das Platinenlayout | 65 |
| 2.3 | DSP-Busstruktur | 68 |
| 2.3.1 | Externe Speicherzugriffe | 68 |
| 2.3.2 | Gemeinsamer Speicherzugriff der DSPs | 72 |
| 2.4 | Anbindung RC11 - OnCE-Port | 75 |
| 2.4.1 | Grundschaltung | 76 |
| 2.4.2 | Schaltungsrealisierung | 77 |
| 2.4.3 | Befehlssequenzen | 78 |
| 2.5 | Rost I/O Timing | 82 |
| 2.5.1 | Datentransfer vom RC11 zum Rost-Interface (Non-DMA-Mode) | 82 |
| 2.5.2 | Datentransfer vom Rost-Interface zum RC11 (Non-DMA-Mode) | 83 |
| 2.5.3 | Datentransfer zwischen RC11 und Rost-Interface (Non-DMA-Mode) | 84 |
| 2.6 | AD-Port Beschreibung | 85 |
| 2.6.1 | Beschreibung der Steckerleiste X3 | 85 |
| 2.6.2 | Kommunikation zwischen DSP-Board und AD-Port | 87 |
| 3. | Monitorsoftware | 89 |
| 3.1 | Datenflußmodell | 89 |
| 3.1.1 | "Sanduhr"-Modell | 89 |
| 3.2 | Datenaustausch PC und HC11 | 90 |
| 3.2.1 | Softwareprotokoll | 90 |
| 3.2.2 | Kommunikationsablauf | 98 |
| 3.3 | Konfigurationserkennung | 99 |
| 3.3.1 | Grundidee des "Plug&Play" | 99 |
| 3.3.2 | Erkennung des Speichers | 100 |
| 3.3.3 | Erkennung der DSPs | 101 |
| 3.4 | Monitor HC11 | 102 |
| 3.4.1 | Modulspezifikationen | 102 |
| 3.4.2 | Implementation und Test | 103 |
| 4. | Systemprogrammierung | 106 |
| 4.1 | DSP-Software | 106 |
| 4.1.1 | Boardbeschreibung für den Programmierer | 106 |
| 4.1.2 | Parallelbetrieb aus Sicht des Programmierers | 108 |
| 4.1.3 | Includedatei 56002.INC | 111 |
| 5. | Entwicklungssystem PC | 120 |
| 5.1 | Entwurf der Oberfläche | 120 |
| 5.1.1 | Funktionsübersicht | 120 |
| 5.2 | Implementation | 121 |
| 5.2.1 | Exkurs: Windows-Message-Prinzip | 121 |
| 5.2.2 | Grafische Oberfläche | 122 |
| 5.2.3 | Kommunikation mit dem Monitor | 124 |
| 5.3 | Betrieb der Software | 125 |
| 5.3.1 | Voraussetzungen und Installation | 125 |
| 5.3.2 | Bedienungsanleitung | 126 |
| 5.3.3 | Einbindung von fremden Programmen | 126 |
| 6. | Ergebnisse | 128 |
| 6.1 | Hardware | 128 |
| 6.2 | Monitorprogramm | 129 |
| 6.3 | Oberfläche | 130 |
In den Warenkorb
38,00 €
Link zur Arbeit:
http://www.diplom.de/ean/9783832417413
Arbeit zitieren:
Bäckmann, Markus Februar 1995: Realisierung eines Signalprozessorsystems mit 2 Prozessoren und integrierter Entwicklungsumgebung, Hamburg: Diplomica Verlag
Schlagworte:
Digitale Signalverarbeitung, Parallelprozessoren, Digitale Signalprozessoren, DSP



