Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Die Hardwarebeschreibungssprache VHDL

Ähnliche Präsentationen


Präsentation zum Thema: "Die Hardwarebeschreibungssprache VHDL"—  Präsentation transkript:

1 Die Hardwarebeschreibungssprache VHDL

2 Ablauf Sem. Woche Kalender Vorlesung Übungsaufgaben Labor 1 8
VHDL1 – Einfuehrung – Entities, Signale VHDL2 - Sprachelemente Uebung1 – Komb/Gatter Uebung2 – When Else Laboruebung1 - Simulation Projektbesprechung1-Einfuehrung 2 9 VHDL3 – Sequential Statements Uebung3 - Blockdiagram Laboruebung2 - Abstimmanlage 3 10 VHDL4 – Getaktete Logik (Flip-Flops) Uebung4 – Flip Flops Laboruebung3 - Wuerfel Projektbesprechung2 - Blockdiagram 4 11 VHDL5 – Zaehler I + II Uebung5 - Zaehler Laboruebung4 – Flip-Flop und Flankendetector 5 12 VHDL6 – Synthese, Quartus, MAX Architektur Uebung6 - Synthese Laboruebung5 – Zähler für Autobeleuchtung & TB Modelsim 6 13 VHDL7 – FSM I Uebung7 - Automaten Laboruebung6 – Toplevel Generierung, Synthese & Programmierung 7 14 VHDL8 – FSM II Uebung8 - Konzept Laboruebung7 - Autobeleuchtung Projekt Stufe1 – Hierarchie m. Zaehler 15 Projektbesprechung3 Projekt Stufe2 – Displaytreiber 16 VHDL9 – Variablen und Testbench Coding Style Projekt Stufe3 – Testbench für UART 17 Pruefungsvorbereitung Projekt Stufe4 – UART 18 Pruefung Projekt Stufe5 – GPS Detector/Display erweitern 19 Arbeiten am Projekt Feiertag (Auffahrt) 20 21 Projektdemo

3 Leistungsnachweise DT2P
Erfahrungsnote die während des Semesters gemacht wird 1/3 Sprache in Projekt & Technik (Bewertet wird: Präsentation & Dokumentation) 1/3 Schriftliche Prüfung (Thema: VHDL & PLD) 1/3 Technische Lösung des Projektes Mündliche Assessment Prüfung Zählt doppelt zur Erfahrungsnote

4 Bewertung des Projektes
Features Note 4 wenn die Uhrzeit angegeben werden kann + Zusatzpunkte für weitere Features wie Position, Weltzeit, Wecker etc. Dokumentation Note 4 wenn korrekt und lesbar + Sinnvolle und hilfreiche Abbildungen und Tabellen + Sinnvolle Gliederung, Text gut strukturiert Testbench Note 4 eine Selbsttestende Testbench pro Teilnehmer + Ausführlicher Testplan u. Testbench (viele Fälle abgedeckt) Code Note 4 wenn alles synchron und keine Latches + Namenskonventionen, klarer Prozesssplit + Kommentare

5 Inhalt Einführung Aufbau einer VHDL Beschreibung Entity & Architecture
Strukturale Modelierung Component Signale Portmap Erstes Simulationsbeispiel

6 Nummer der Komponenten pro IC
Wachstum der Komponenten pro IC 16G 4 Gbit 4G 1G 1 Gbit 256M 64M 64 Mbit 16M 4M 4 Mbit Nummer der Komponenten pro IC 1M 256k 256kbit 64k 16k 16kbit MOS-DRAM 4k 1k 1-kbit MOS-DRAM 256 4-bit TTL-counter 64 dual flip-flop 16 4 RTL gate 1 1959 1965 1970 1975 1980 1985 1990 1995 2000 2005 Jahr

7 logic transistors/chip transistors/manmonth
Productivity Gap Complexity: logic transistors/chip Design productivity: transistors/manmonth 109 107 design productivity gap 107 105 105 103 103 1980 1988 1996 2004 2012 year

8 Alternatives

9 Alternatives : System-On-Package
Quelle:

10 CMOS Solid State Technology
Process State of the Art : CMOS 40nm-45nm (Si) Development: CMOS 25nm-32nm Fabrication Cost: e.g. Intel 32nm fab $7B investiment over Future: new materials (GaAs), light? Integration (40-45nm Technology) Memory: embedded DDR2 1GByte (DRAM) 4-64GByte (Flash) Dig-Logic: ~0.5 billion Transistors core speed 1-3GHz FPGA: 2.5 billion transistors, 680k-Les,22Mb-Ram Tendencies Performance Low Power Mixed Analog-Digital single Die Packaging (System on Chip) Applications GP-ICs: Processors low-end (electronic appliances) high-end (multimedia/telecom) Memory / FPGA (with high-speed serial transceiver) Analog&RF Sensors: micromechanical and optical Emerging: solar (photovoltaic applications) lightining (LEDs)

11 Schaltplan einer einfachen Statemachine

12 Motivation zur Einführung von Beschreibungssprachen
Zunehmende Komplexität und Integrationsdichte Geringere Strukturgrössen (Transistorgrösse) Anforderungen (Taktraten, Stromverbrauch) Konkurrenzdruck und Entwicklungszeiten Gute Dokumentation (sichtbare Algorithmen, Kommentare) Datenaustausch (Einheitlichkeit des Standards)

13 Geometrie eines Invertierers

14 Floor Plan eines ICs 6.4 mm

15 Entwurfsebenen Kann mit VHDL simuliert werden
Kann mit VHDL synthetisiert werden

16 Gängige Hardwarebeschreibungsprachen
Einführung VHDL Verilog 1987 vom amerikanischen Department of Defense, IEEE Standard 1984 von der Halbleiterindustrie Name steht für: VHSIC Hardware Description Language Very High Speed Integrated Circuit

17 Synthese Werkzeug Tool=Quartus
= Umwandlung einer VHDL Schaltungsbeschreibung auf RTL Ebene in eine Netzliste auf Logikebene Netzliste Hardware Beschreibung Gatter/Flip-Flop Bibliothek ARCHITECTURE comb OF beisp IS BEGIN q0 <= not (e0 and e1); sig3 <=(e2 and e3) or (e0 and e1); END comb; G3 G2 G1 E0 & Q0 & E1 & E2 Q1 & E3 Im Gegensatz zur Simulation kann bei der Synthese nicht der komplete Sprachumfang verarbeitet werden

18 Simulatoren und Debugger Tool=Modelsim
Testbench Erwartete Ergebnisse O.K. G3 G2 G1 & =1 & Stimulus Generator >1 & =1 & Logische Schaltung unter Test (Device Under Test = DUT)

19 Aufbau einer VHDL Beschreibung

20 Grundbestandteile einer VHDL Beschreibung

21 Entity (Beschreibung der Ein-Ausgänge eines Funktionsblocks)
Q R Qn Reservierte Worte: Dürfen nicht als frei wählbare Namen verwendet werden Entity rsff Mode: IN¦OUT¦INOUT¦BUFFER ENTITY rsff IS PORT ( s,r : IN std_logic; q,qn: OUT std_logic); END rsff; Name der Entity, frei wählbar Type: bit¦bit_vector¦std_logic ...

22 Architecture Beisp: RS - Flip Flop mit NOR Gates
>1 Q ARCHITECTURE comb OF rsff IS BEGIN q <= not (r or qn); qn <= not (s or q); END comb; >1 Qn S

23 Architecture (Beschreibung des Verhaltens eines Blockes)
Frei wählbarer Name der Architektur Name der Entity zu der die Architektur gehört ARCHITECTURE comb OF rsff IS BEGIN q <= not (r or qn); qn <= not (s or q); END comb; Inhalt der Architektur Zu jeder Entity gehört immer eine Architektur. Architektur und Entity treten immer als Paar auf.

24 Aufgabe 2

25 Lösung Aufgabe 2

26 Strukturale Modelierung

27 Hierarchisches VHDL Design
Top-Level Peripherals Prozessor ROM Audio Block uC Core RAM Video Block Parallel Port UART

28 Testbench Testbench Top-Level Peripherals Prozessor ROM Audio Block
uC Core RAM Video Block Parallel Port UART

29 Structurale Modelierung
Q Qn S R Entity: rsff instance2:rsff set reset instance1:rsff IN1 AUSGN AUSG IN2 Entity: doppelrs ENTITY doppelrs IS PORT ( in1,in2 : IN std_logic; ausg,ausgn : OUT std_logic); END doppelrs ;

30 Component Deklaration
ARCHITECTURE struct OF doppelrs IS COMPONENT rsff PORT ( s,r : in std_logic; q,qn : out std_logic ); END COMPONENT; SIGNAL set,reset : std_logic; BEGIN instance1:rsff instance2:rsff set IN1 AUSG S Q S Q reset IN2 R Qn R Qn AUSGN Entity: rsff Entity: doppelrs

31 Signale (Drähte) instance1:rsff instance2:rsff IN1 AUSG S Q S Q IN2 R
ARCHITECTURE struct OF doppelrs IS COMPONENT rsff PORT ( s,r : in std_logic; q,qn : out std_logic ); END COMPONENT; SIGNAL set,reset : std_logic; BEGIN Signal Typ Signalname, frei wählbar Strichpunkt schliesst Zeile ab instance1:rsff instance2:rsff set IN1 AUSG S Q S Q reset IN2 R Qn R Qn AUSGN Entity: rsff Entity: doppelrs

32 Component Name, frei wählbar
Port Map (1) („Instantiation“) (hier werden die „Instances“ miteinander verbunden) Signal Name in übergeordneter Hierarchie doppelrs instance2: rsff PORT MAP(s => set, r => reset, q => ausg, qn => ausgn); Component Name, frei wählbar Port der Component instance1:rsff instance2:rsff set IN1 ausg S Q S Q reset IN2 R Qn R Qn ausgn Entity: rsff Entity: doppelrs

33 Port Map(2) instance1:rsff instance2:rsff IN1 AUSG S Q S Q IN2 R Qn R
PORT MAP(s => in1, r => in2, q => set, qn => reset); istance2: rsff PORT MAP(s => set, r => reset, q => ausg, qn => ausgn); instance1:rsff instance2:rsff set IN1 AUSG S Q S Q reset IN2 R Qn R Qn AUSGN Entity: rsff Entity: doppelrs

34 Lösung Aufgabe 3

35 Erstes Simulationsbeispiel

36 Delay Statement (Für simulation, nicht synthetisierbar)
s <= '1','0' after 10 ns, '1' after 100 ns, '0' after 130 ns; r <= '1','0' after 15 ns, '1' after 200 ns, '0' after 230 ns; 100 200 260 10

37 Testbench des RS-FF in VHDL
dut:rsff s q S Q Delay Statements r qn R Qn Entity rsff Entity/Architektur: test_rsff

38 Entity des RS-FFs rsff S Q R Qn Entity rsff ENTITY rsff IS
PORT ( s,r : in std_logic; q,qn: out std_logic); END rsff;

39 Architecture RS-FF >1 >1 R Q Qn S ARCHITECTURE comb OF rsff IS
BEGIN q <= not (r or qn); qn <= not (s or q); END comb; >1 Qn S

40 Entity der Testbench des RS-FFs
dut:rsff s q S Q Delay Statements r qn R Qn Architecture struct of test_rsff Entity rsff Entity: test_rsff ENTITY test_rsff IS END test_rsff;

41 Architecture der Testbench
ARCHITECTURE struct OF test_rsff IS COMPONENT rsff PORT ( s,r : in std_logic; q,qn : out std_logic ); END COMPONENT; SIGNAL s,r,q,qn : std_logic; BEGIN dut: rsff PORT MAP(s => s, r => r, q => q, qn => qn); s <= '1','0' after 10 ns, '1' after 100 ns, '0' after 130 ns, '1' after 300 ns, '0' after 350ns; r <= '1','0' after 10 ns, '1' after 200 ns, '0' after 230 ns; END struct; Test Vektoren bestehend aus Delay Statements

42 Unsere erste Simulation besteht aus 4 Komponenten:
ENTITY rsff IS PORT ( s,r : in std_logic; q,qn: out std_logic); END rsff; ENTITY test_rsff IS END test_rsff; ARCHITECTURE struct OF test_rsff IS COMPONENT rsff PORT ( s,r : in std_logic; q,qn : out std_logic ); END COMPONENT; SIGNAL s,r,q,qn : std_logic ; BEGIN dut: rsff PORT MAP(s => s, r => r, q => q, qn => qn); s <= '1','0' after 10 ns, '1' after 100 ns, '0' after 130 ns, '1' after 300 ns, '0' after 350ns; r <= '1','0' after 10 ns, '1' after 200 ns, '0' after 230 ns; END struct; ARCHITECTURE comb OF rsff IS BEGIN q <= not (r or qn); qn <= not (s or q) ; END comb;

43 Projekt simulation source synthese .vhdl modelsim scripts work .do
edaverzeichnis Projekt simulation source synthese .vhdl modelsim scripts work .do

44 Compile Script (compile.do) für funktionale Simulation
# create work library vlib work # compile project files vcom explicit -work work ../../source/flanken.vhd vcom explicit -work work ../../source/tb_flanken.vhd # run the simulation vsim -t 1ns -lib work work.tb_flanken do ../scripts/wave.do run ns Bildet Workverzeichniss „work“ Compiliert VHDL und legt es im „work“ ab Startet Simulator Öffnet Waveform Betrachter Lässt Simulator für 1800 ns laufen


Herunterladen ppt "Die Hardwarebeschreibungssprache VHDL"

Ähnliche Präsentationen


Google-Anzeigen