25.12.2013 Aufrufe

Gecko3 - CCC Event Weblog

Gecko3 - CCC Event Weblog

Gecko3 - CCC Event Weblog

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

3. Entwicklungsumgebung<br />

3.1. Entwicklungshardware<br />

Die Hardware Entwicklung des <strong>Gecko3</strong> ist noch nicht abgeschlossen und es wurde auch noch<br />

kein Prototyp realisiert. Somit stand auch für unsere Diplomarbeit kein richtiges Zielsystem<br />

zum Programmieren zur Verfügung. Dazu kommt, dass die EZ-USB FX2 Chip Variante auf<br />

dem <strong>Gecko3</strong> so weit in der Funktionalität eingeschränkt ist, dass keine Möglichkeit mehr<br />

besteht die Software in einem Debugger laufen zu lassen.<br />

Unsere erste Aufgabe bestand also darin, eine Entwicklungshardware zusammen zu stellen<br />

die möglichst äquivalent zum geplanten <strong>Gecko3</strong> ist. Zur Verfügung standen uns zwei Spartan<br />

3 Starter Kits von Xilinx, die jeweils mit einem 200 kGatter FPGA bestückt sind, und ein<br />

EZ-USB FX2LP Development Kit von Cypress. Das EZ-USB FX2 Board und ein Xilinx<br />

Board bildeten die Basis für unsere Zielhardware.<br />

Diesen beiden Boards fehlen aber wesentliche Komponenten des <strong>Gecko3</strong>, welche über zwei<br />

zusätzliche Leiterplatten hinzugefügt werden. Die erste beherbergt das SPI Flash von ST und<br />

den I 2 C I/O-Chip von NXP. Diese wird an das EZ-USB Development Board angeschlossen.<br />

Die zweite Leiterplatte beherbergt zwei Intel NOR Flash Chips und wird an zwei Erweiterungsstecker<br />

des Spartan 3 Starter Kits angeschlossen (Schema im Anhang F.2), über den<br />

dritten Erweiterungsstecker wird der Spartan 3 FPGA mit dem EZ-USB verbunden.<br />

Die Verkabelung der zwei Board untereinander ist in der Tabelle B.1 aufgelistet. Ursprünglich<br />

war vorgesehen, dass in beiden Modi, Konfiguration wie Kommunikation, die Datenleitungen<br />

die selbe Nummer tragen um einheitlich zu bleiben. Wie den Xilinx Dokumenten<br />

([NP02] und [Tse04]) zu entnehmen ist, muss bei der Konfiguration jedes Byte im Bitstrom<br />

in seiner Reihenfolge umgedreht werden (Das MSB muss an den FPGA Anschluss D0 und<br />

das LSB an D7). Da diese Operation mit Software sehr ineffizient zu lösen ist und die FPGA<br />

Datenleitungen nach der Konfiguration frei belegbar sind, haben wir uns entschieden, einfach<br />

die Verbindungen umzudrehen, D0 vom EZ-USB ist so mit D7 des FPGAs verbunden. Der<br />

Anwender merkt im Kommunikationsmodus nichts davon solange er sich an die Pinbelegung<br />

in der Tabelle hält. Um uns etwas Verdrahtungsarbeit zu ersparen und der ganze Aufbau etwas<br />

übersichtlicher zu machen, haben wir uns entschieden den Kommunikationsmodus auch<br />

nur auf dieser 8 Bit Busbreite zu betreiben (6.7.3).<br />

Das EZ-USB Development Kit wird normalerweise über die USB Schnittstelle versorgt.<br />

Damit ein stand-alone Betrieb realisiert werden konnte, musste die Stromversorgung der<br />

beiden Boards verbunden werden. Das Netzteil des Spartan 3 Starter Kits versorgt nun die<br />

ganze Entwicklungshardware. Um Störungen zu reduzieren wurden zwei Drosselspulen in die<br />

Versorgungsleitungen zum EZ-USB Board eingebaut.<br />

Zur Überprüfung und Fehlersuche stand uns ein Logic Analyser HP 16500B (80 Kanäle,<br />

100 MHz) und ein Speicheroszilloskop Tektronix TDS 754C (4 Kanal, 2 GSamples /s) zur Verfügung.<br />

Unsere Entwicklungshardware deckt nicht den vollständigen Funktionsumfang des <strong>Gecko3</strong><br />

Boards ab. In der Graphik 3.1 sind die Funktionsblöcke dunkel hervorgehoben welche unsere<br />

6 Christoph Zimmermann

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!