entwicklung integrierter hw/sw-systeme integrierte hard ... fileprof. dr.-ing. habil. andreas...

36
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

Upload: vuongthuan

Post on 13-Apr-2019

219 views

Category:

Documents


0 download

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?