Gecko3 - CCC Event Weblog
Gecko3 - CCC Event Weblog
Gecko3 - CCC Event Weblog
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
4. Kommunikation zwischen EZ-USB und<br />
FPGA<br />
Bei der Kommunikation mit dem FPGA geht es darum, dem Benutzer eine transparente<br />
Verbindung zwischen Host und dem Spartan 3 über die USB 2.0 Schnittstelle zur Verfügung<br />
zu stellen. Dafür wurde ein eigenes Handshake-Protokoll zwischen dem EZ-USB FX2 und<br />
dem FPGA definiert. Mit dem EZ-USB FX2 ist dabei nur das General Purpose Interface<br />
(GPIF) gemeint, das vom Handshaking betroffen ist und im Unterkaptiel 6.7 erklärt wird.<br />
Die Abbildung 4.1 illustriert das Blockdiagramm des Handshaking.<br />
Abbildung 4.1.: Handshake Blockdiagramm<br />
4.1. Handshake-Protokoll<br />
Unser Handshake-Protokoll basiert auf dem Prinzip des vier Phasen Handshaking [Jac]. Nur<br />
ist in unserem Fall kein fester Master und Slave definiert. Somit muss zuerst kontrolliert<br />
werden ob der Bus frei ist. Dann sendet der Initiator, also der momentane Master, einen<br />
Request und erwartet die Bestätigung vom temporären Slave. Erst nach diesem Bus-Handling<br />
werden die Daten vom Sender an den Bus gelegt.<br />
Der Slave empfängt die Daten und bestätigt seinen abgeschlossenen Lesevorgang, indem<br />
er seine Bestätigung wieder löscht. Wenn noch weitere Daten zu senden sind wird die ganze<br />
Prozedur wiederholt bis die Informationen vollständig übertragen sind. Das Ende einer<br />
Übertragung wird mit einer Regelverletzung angezeigt. Der Initator setzt sein Ready-Flag<br />
und verstösst somit gegen die Regeln des Handshake-Protokolls. Der Slave erkennt somit das<br />
Ende einer Übertragung und setzt ebenfalls sein Ready-Flag. Nachdem zuerst der Master<br />
und dann der Slave ihre Bestätigungen löschen, kehrt das GPIF in den Idle State zurück.<br />
Die Abbildung 4.2 zeigt das Handshaking einer Datenübertragung vom EZ-USB FX2 zum<br />
FPGA.<br />
10 Matthias Zurbrügg