entwicklung integrierter hw/sw-systeme integrierte hard ... fileprof. dr.-ing. habil. andreas...
TRANSCRIPT
Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Integrated HW/SW Systems Group
Self-Organization 06 November 2014
1
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
Entwicklung integrierter HW/SW-Systeme Integrierte Hard- und Softwaresysteme 2
Seminar
Jorge Meza [email protected] Zusebau R2082, Tel: -4128
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
2
Inhalt des Seminars
• Heute – FPGAs + VHDL
• VHDL Beschreibung und Implementierung von einfachen Funktionen im FPGA (VHDL)
– Praktische Aufgaben hierzu
– Entwicklungsprozess
• Entwurfsschritt
Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Integrated HW/SW Systems Group
Self-Organization 06 November 2014
3
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
VHDL Beschreibung und Implementierung von einfachen
Funktionen im FPGA
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
4
LUT / FF – Grundlagen (Wiederholung)
• Jede digitale Schaltung kann in zwei Teile zerlegt werden: – Logikfunktion – Speicherfunktion – Eingänge und Ausgänge
Irgend‘ne logische Funktion
Speicher-element
oder auch
ADDER MULTIPLEXER komplexe Funktionen
z.B.
AND, OR NOT, XOR NAND, …
Viele dieser Funktionen machen jedoch nur Sinn, wenn ein Speicherelement vorhanden ist. z.B. für Zähler, FSM, etc.
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
5
LUT / FF – Grundlagen (Wiederholung)
• LUT (look-up-table) – Kleiner Speicher, typischerweise mit:
• 4 Eingängen und 1 Ausgang – Realisierung jeder beliebigen Logikfunktion mit maximal 4
Eingängen in Tabellenform (Wertetabelle)
Beispiel XOR 2-LUT x1 x0 | y 0 0 | 0 0 1 | 1 1 0 | 1 1 1 | 0
X1
X0 0 1 0 1
1-aus-4 Decoder
x1
x0
00011011
0110 W
ired-
OR
Y
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
6
LUT / FF – Grundlagen (Wiederholung)
• FF (Flip-Flop) – D-Flip-Flop – Speicherung von 1 Bit
– Eingänge (meistens)
• Takt (CK/CLK) • Daten (D) • Reset (CLR/RST) • Preset (PRE) • Enable (CE)
– Ausänge
• Daten (Q)
CLK
D Q
CE
CLR
PRE
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
7
LUT / FF – Grundlagen (Wiederholung)
• Verfügt über: (Spartan3 ADSP)
– Takt (CLK/C): reagiert entweder auf steigende oder fallende Flanke
– Eingang (D): eine 0/1 an D bewirkt eine 0/1 an Q (bei CLK)
– Clear (CLR): eine 1 an CLR bewirkt eine 0 an Q (async)
– Preset (PRE): eine 1 an PRE bewirkt eine 1 an Q (async)
– Reset (R): eine 1 an R bewirkt eine 0 an Q (bei CLK)
– Set (S): eine 1 an S bewirkt eine 1 an Q (bei CLK)
CLR PRE CE D CLK Q
1 - - - - 0 0 1 - - - 1 0 0 0 - - Q 0 0 1 0 ↑ 0 0 0 1 1 ↑ 1
R S CE D CLK Q
1 - - - ↑ 0 0 1 - - ↑ 1 0 0 0 - - Q 0 0 1 0 ↑ 0 0 0 1 1 ↑ 1
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
8
VHDL
• VHDL VHSIC Hardware Description Language, mit VHSIC Very High Speed Integrated Circuit
• Standardisiert gemäß IEEE 1076 seit 1987 – Überarbeitet im Jahr 1993 als IEEE 1076-1993 – IEEE 1076-2000, IEEE 1076-2002, IEEE 1076-2008
• In Europa wird heute überwiegend VHDL, in USA und Japan wird häufiger Verilog HDL eingesetzt.
• Es gibt noch andere HDLs (ABEL, AHDL, …)
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
9
Synthese und äquivalente Darstellungen VHDL
Beschreibung
Synthesis FPGA
Entwicklunsgstool
Technology schematic RTL schematic (Zwischenschritt)
VHDL Beschreibung, RTL schematic, und Technology schematic sind äquivalente Darstellungen derselben Funktion!!!
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
10
VHDL – Entity und architecture
logische Funktion
Speicher-element
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
11
VHDL– AND2 mit Register
• Asynchrones CLR im RTL Schematic
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
12
1. Beschreiben Sie in VHDL das AND2-Beispiel mit: a. RST als synchrones Reset (FF R Eingang) b. RST als synchrones Set (FF S Eingang) c. RST als asynchrones Preset. (FF PRE Eingang) (*Erstellen Sie auch das entsprechende RTL Schematic)
2. Beschreiben Sie in VHDL einen 4 auf 1 Multiplexer mit nachgeschaltetem Flip-Flop a. Multiplexer als logische Funktion (VHDL keywords: and, or, not) b. Multiplexer mittels einer verhaltensorientierten Beschreibung Format:
oder
3. Beschreiben Sie einen Zähler (0 bis 255) in VHDL mit RST als
asynchrones CLR.
Übungsaufgaben (VHDL)
ZielAusdruck <= Ausdruck1 when Bedingung1 else Ausdruck2 when Bedingung2 ... else AusdruckX when BedingungX else AusdruckY;
with Datenobjekt select Zielausdruck <= Ausdruck1 when Wert_1, Ausdruck2 when Wert_2, ... AusdruckX when others;
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
13
Was wird eigentlich synthetisiert?
• Xilinx FPGA Entwicklungstool ISE – Am Beispiel 3er OR Gatter (OR3) mit Registern
• RTL Schematic • Technology Schematic • Schematic, Equation, Truth Table, Karnaugh Map
• Übungsaufgaben
– weitere Funktionen anhand unterschiedlicher Abbildungen ermitteln • RTL Schematic • Technology Schematic
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
14
Einfaches Beispiel – OR3 mit FF
• OR mit 3 Eingängen (Projekt v3_10) • VHDL Code
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
15
Einfaches Beispiel – OR3 mit FF
• RTL Schematic
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
16
Einfaches Beispiel – OR3 mit FF
• Technology Schematic
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
17
Einfaches Beispiel – OR3 mit FF
• Inhalt der LUT Schematic
• Gleichung
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
18
Einfaches Beispiel – OR3 mit FF
• Inhalt der LUT Truth Table
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
19
Einfaches Beispiel – OR3 mit FF
• Inhalt der LUT Karnaugh Map – grün = 1 – rot = 0
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
20
Übungsaufgaben 1. AND mit 2 Eingängen (Projekt v3_50) VHDL + RTL Schematic
x1
x0 0 1
0 1
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
21
Übungsaufgaben 1. AND mit 2 Eingängen (Projekt v3_50) Technology Schematic
– Was fällt auf? – Warum ist das so? – Was für Vorteile bringt das?
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
22
Übungsaufgaben 2. Funktion anhand Ressourcen ermitteln (v3_20) Technology
Schematic – Verfügt die Funktion über Set/Reset?
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
23
Übungsaufgaben 2. Funktion anhand Ressourcen ermitteln (v3_20)
– Welche Funktion wurde durch die Ressourcen umgesetzt? • Interne Darstellung der LUT (Schematic)
• Lösen durch Aufstellen der Gleichung oder einer Wertetabelle
Input
Inverter UND Gatter ODER Gatter Output
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
24
Übungsaufgaben 3. Funktion anhand Ressourcen ermitteln (v3_60)
– Welche Funktion wurde umgesetzt?
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
25
Übungsaufgaben 4. Funktion anhand Ressourcen ermitteln (v3_40)
– Welche Funktion wurde umgesetzt?
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
26
4. Funktion anhand Ressourcen ermitteln (v3_40) – Welche Funktion wurde umgesetzt?
Übungsaufgaben
• Obere LUT
• Untere LUT
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
27
Übungsaufgaben 4. Funktion anhand Ressourcen ermitteln (v3_40)
– Hinweis: ACHTUNG!
• Belegung am Karnaughplan (I0..I3) entspricht den Eingängen der LUT. Diese Werte sind nicht identisch mit den Eingängen der Entity (SWITCH(3..0)) und sind nicht identisch innerhalb beider LUTs.
• Abbildung der Signale:
– Lösung über Ausschlussverfahren und die Methode des “scharfen Hinsehens” – keine Wertetabelle.
Oberer LUT I0 Switch(2) I1 Switch(0)
Unterer LUT I0 Switch(1) I1 Switch(3) I2 Switch(0) I3 Switch(2)
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
28
Übungsaufgaben • Hilfestellung für einfache Beispiele
– Die umgesetzten Funktionen befinden sich unter den folgenden • 2er AND • 5er AND • 2:1 Muxer • 2er OR • 5er OR • 3er NAND • 2er XOR • 2 Bit Adder • 6er OR
Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Integrated HW/SW Systems Group
Self-Organization 06 November 2014
29
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
Entwicklungsprozess
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
30
Systementwicklungsprozess (Wiederholung)
Analyse
Entwurf
Implementation
Integration
Wartung
Wasserfall Modell
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
31
Entwurf und Unterphasen
• Architekturentwurf (Top-level Entwurf) – System in überschaubare Einheiten
(Module) zerlegen – Definition von Schnittstellen
• Detaillierter Entwurf (Modulentwurf) – Beschreibung der Modulfunktionen
(Algorithmen) unabhängig der Implementierungstechnik
• Implementationsentwurf – Berücksichtigung der Details der
Implementierungstechnik
Entwurf
Detaillierter Entwurf
Architektur-entwurf
Implementations-entwurf
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
32
Fahrstuhlmodell (Wiederholung)
• 4 Stockwerke – Ruftasten für mögliche
Richtungen – Richtungsanzeiger
• Fahrstuhlsteuerung
– Ebenenwahl – Nothalt/Alarm
• Für die Aufgabe nicht genutzt
– Überlast / Richtung / Langsam
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
33
Übungsaufgaben (Entwurfsschritt)
1. Top-level Design für Fahrstuhlansteuerung a. Definition der Module (Wie kann / soll die Funktionalität aufgeteilt werden?) b. Interface zwischen den Modulen (Wie werden die Module wieder
miteinander verbunden? Welche Schnittstellen gibt es?) 2. Funktion der Module beschreiben (Algorithmus)
– Was genau sollen die definierten Module machen? Wer ist für was zuständig?
3. Funktion der Module beschreiben unter Berücksichtigung der gewählten Umsetzung – Berücksichtigt z.B. Art der gewählten Automatenbeschreibung,
physikalische Eigenschaften der Sensoren und der Aktoren
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
34
Fragen zum Seminar
• Beschreiben Sie die Elemente in einem RTL Schematic.
• Interpretieren Sie eine vorgegebene Konfiguration eines FF. – Welche weiteren Konfigurationsmöglichkeiten für Set/Reset gibt es? – Was bewirken diese (Unterschiede zueinander)?
• Beschreiben Sie ein 3er OR-Gatter in VHDL. – Wie sieht die zugehörige Realisierung als RTL Schematic und in der LUT aus? – Wie ist es möglich auch 5er ANDs oder 6er ORs mit einer LUT zu realisieren?
• Was ist die Bedeutung von Synthese?
• Nennen Sie den groben Ablauf beim Entwurfsprozess (Entwurfsschritte in den Entwicklungstools) von FPGAs mit VHDL.
• Beschreiben Sie das Wasserfallmodell des Entwicklungsprozesses. – Wozu dient der Entwurfsschritt?
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
35
Literatur
• Schaltsysteme (H.-D. Wuttke | K. Henke, Pearson Verlag, 2006)
• 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
• Specification and design of Embedded Systems (D. Gajski | F. Vahid | S. Narayan | J. Gong), Prentice Hall, 1994.
Integrated Communication Systems Group http://www.tu-ilmenau.de/ics/
IHS2 Seminar 5. November 2013
36
Fakultative Aufgaben
• Beispielprojekt – Synthese der Beispielprojekte mit Xilinx ISE – Analyse der RTL und Technology Schematics
• Frage: Was ist der Unterschied zwischen Synthese und
Implementation in Xilinx ISE?