Prof. Dr.-Ing. habil. Andreas Mitschele-ThielIntegrated HW/SW Systems Group
Self-Organization20 April 2012 1
Integrated HW/SW Systems Grouphttp://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012
IHS2 Praktikum
Zusatzfolien
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 2
Projektaufgabe des Seminars
– Grafische Bildausgabe an einem Monitor• Erzeugen der Steuersignale / des Timings• Ausgabe der Bilddaten
– Erzeugen von Bildelementen• Unterteilen des Monitors in bestimmte Bereiche• Füllen dieser Bereiche mit ausgewählten Elementen (z.B. 7-
Segment Anzeige, LEDs, Balkenanzeigen, o.ä.)
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 3
Vorgaben
– Signale für die Monitoransteuerung• Hsync, Vsync• RGB
– Vorgaben• Ausgangsauflösung von 1024x786 @ 60fps• Konform nach VESA Standard
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 4
Details zur Bildausgabe
– VESA Timing gemäß:“VESA coordinated video timing generator 1.1”
– 63,5 MHz Taktfrequenz– Timings for H/V
• front porch• sync• back porch• active
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 5
Vesa Coordinated VideoTiming Generator, 2003
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 6
Verwendete Hardware
– Entwicklungsboard Xilinx Spartan3-ADSP-1800• VGA Ausgang• 8 LEDs• 8 Switches• 4 Button• JTAG Interface (zum Programmieren)• 25,175 MHz Quarz
• weitere hier nicht benötigte Komponenten (DDR2, Ethernet PHY, Flash, etc.)
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 7
Entwicklungsboards für Praktikum
• Spartan3A DSP 1800A
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 8
Übersicht zum geplanten Projekt
FPGA
VGA Ansteuerung
Bild-rasterung
Tastatur-interface
Maus-interface
7 Segment-Anzeige
LED-Anzeige
Balken-Anzeige
Text-Anzeige
Mauszeiger-Anzeige
40 Segment-Anzeige
...
Text-Anzeige
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 9
Beispielbildausgabe
• Datenaustausch erfolgt über definierte Ports– data, data_valid, data_request, start-of-frame, end-of-frame
• VGA Ausgabe definiert Timing• Bildrasterung
steuert die einzelnen Module an
• Module sindunabhängig undbeeinflussen sichnicht
Block A0 Block A1 Block A2 Block A3 Block A4 Block A5 Block A6 Block A7
Block B0 Block B1 Block B2 Block B3 Block B4 Block B5 Block B6 Block B7
Block C0 Block C1 Block C2 Block C3 Block C4 Block C5 Block C6 Block C7
Block D0 Block D1 Block D2 Block D3 Block D4 Block D5 Block D6 Block D7
Block E0 Block E1 Block E2 Block E3 Block E4 Block E5 Block E6 Block E7
Block F0 Block F1 Block F2 Block F3 Block F4 Block F5 Block F6 Block F7
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 10
Interface der Module
• VGA Ansteuerung gibt das Timing vor• Alle anderen Module werden synchronisiert
– Daten-Interface:• data,• data valid
– Sync-Interface:• data request• SOF (start of frame)• EOF (end of frame)
• zusätzlich REG_CTRL für Steuerungen• weitere bei Bedarf
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 11
Timing des Daten- / Sync-Interfaces
• Daten-Interface und Sync-Interface muss bestimmten Regeln gehorchen– Alles läuft Taktsynchron– Data ist synchron zu Data valid– Data valid zeigt für jeden Takt an, ob Daten gültig sind– Data request fordert Data an. Data / Data valid muss genau
einen Takt später bereit gestellt sein– SOF signalisiert den Begin eines neuen Bildes min. 1000 Takte
vor dem ersten Data request.– EOF signalisiert das Ende eines Bildes. Dies darf frühestens mit
dem letzten Pixel gesendet werden oder danach.
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 12
Was brauchen wir zuerst?
– Beschreibung des ‘Rahmens’• Entity• Ports
– Vorgaben• Pins• Contraints
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 13
Empfehlungen für die Verzeichnisstruktur
• Unterverzeichnisse für Projekte– doc Dokumentation Doxygen / Conf.Datei– prj Projektdateien
• ISE11 für unterschiedliche ISE Versionen– sim Simulationsdateien / Testbenches
• input Zusätzliche Simulationsinputfiles• Modelsim Modelsim spezifische Dateien (*.do)• output Simulationsoutputfiles• Tool Zusätzliche Tools
– src Quelldateien• IP_ISE11 IP Cores für unterschiedliche ISE Versionen
• Unterverzeichnisse für Projekte– doc– prj
• ISE11– sim
• input• Modelsim• output• Tool
– src• IP_ISE11
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 14
Entity – Beispiel
– Allgemein• Clk P26• Rst (Button3) J10
– VGA Ports• Hsync K26• Vsync K25• R0, R1, R2, R3 L20, K20, F25, F24• G0, G1, G2, G3 M19, M18, J23, J22• B0, B1, B2, B3 L22, K21, G23, G24
– Steuerung• Button0..2 J17, J15, J13, • Switch0..7 A7, G16, E9, D16, D19, B24, A5, A23• LEDs0..7 P18, P25, N19, K22, H20, G21, D24, D25• Awake LED AD15
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 15
Erstellen eines Projekts
– Öffnen Project Navigator• File/New Project• Projekt anlegen• FPGA und
Syntheseeinstellungen• weitere Menüs
überpringen
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 16
ISE Oberfläche
Quellen
Prozesse
Status
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 17
Neue Datei hinzufügen
– Neue Quelle erstellen (rechte Maustaste)– VHDL Modul erstellen
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 18
Neues VHDL Modul
Libraries
Entity
Architecture
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 19
Entity Kommentareeinfaches Signal
Signalvektor
Entityname
Architecturename
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 20
Entwurfsschritte
– Synthese– Implementierung
• Translate• Map• Place&Route
– Generate Programming File
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 21
Einstellungen
– Beispiel für die Einstellungender Synthese
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 22
Erster Code / erste Fehlermeldung
– ZuweisungLED <= BUTTON;
fehlerhaft
– korrekter CodeLED(2 downto 0) <= BUTTON;
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 23
Constraints File erstellen
– Textbasiert / Grafisch– neue Datei hinzufügen
– Zuweisung Takt– Zuweisung Pins
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 24
Constraints File
– Definition von• Taktnetzwerk• ‘Taktrate’• Pinzuordnung• Treiberstärke• Flankensteilheit• I/O Standard
– viele weitere möglich• max skew• max delay• offset constraints
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 25
Literatur
• Entwurf von digitalen Schaltungen und Systemen mit HDLs und FPGAs – Einführung mit VHDL und SystemC(Frank Kessel | Ruben Bartholomä, Oldenbourg Verlag,ISBN-13: 978-3-486-58976-4, Uni-ID: 69 ELT ZN 5405 K42)
• VHDL Cookbook(Peter J. Ashenden, Dept. Computer Science, University of Adelaide, South Australia) googlen
Prof. Dr.-Ing. habil. Andreas Mitschele-ThielIntegrated HW/SW Systems Group
Self-Organization20 April 2012 26
Integrated HW/SW Systems Grouphttp://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012
IHS2 Seminar
Simulation / VGA Ansteuerung
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 27
Inhalt
• Simulation– Erstellen einer Testbench– Einrichten der Simulation– Durchführen der Simulation
• VGA Ansteuerung– Erstes Modul– Alternative Darstellungsmöglichkeit / Realisierungen– Vergleich
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 28
Simulation
• Visualisierung von Verhalten– Umwelt eines Systems wird dargestellt– einfache Darstellung von Verläufen– überprüfen der gewünschten Funktion– Komfortable Visualisierung (unterschiedliche Datentypen,
Farben, Labels, etc.)– Code nicht unbedingt synthetisierbar
• Ein-/Ausgabe von Daten in Dateien möglich– Beispielprojekt wird bereitgestellt
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 29
Einrichten der Simulation
• Testenbench erstellen• Einrichten von Modelsim in der ISE• Do File erstellen
• Simulation ausführen
• Beispielprojekte anpassen
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 30
Erstellen einer Testbench
• Projekt muss sich synthetisieren lassen• Rahmen der Testbench wird
automatisch erstellt
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 31
Erstellen einer Testbench
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 32
Automatisch erstellte Testbench
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 33
Anpassen der Testbench
• Eigene Prozesse erstellen• Takt, Reset• Simulieren von Buttons
– beschreiben des Eingangs-verhaltens (Umgebung)
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 34
Einrichten der Simulation
• Simulationstoolprüfen– Modelsim-XE VHDL
als Simulator wählen
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 35
• In Simulationsviewwechseln
Einrichten der Simulation
rechte Maustaste
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 36
Einrichten der Simulation
• Kommandodatei für Simulator auswählen– Custom Do file anwählen– Datei angeben (im sim Ordner)– kein automatic Do file
verwenden
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 37
Aufbau eines Do-File
• Library• Quelldatei(n)• Testbench
• Simulation
• Signale– simple– vector
• Settings– Simulationszeit– Courser– Formatierung– Zoom
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 38
Durchführen der Simulation
simulierte Signale
Status-meldungen
Arbeits-platz
Objekte
Navigation
Integrated HW/SW Systems Group http://www.tu-ilmenau.de/ihs/
IHS2 Praktikum Zusatzfolien2012 39
Durchführen der Simulation