Inhalt Einen Zähler generisch aufbauen CPLD Synthese Timing Analyse

Slides:



Advertisements
Ähnliche Präsentationen
Digital Output Board and Motherboard
Advertisements

Embedded System Hardware
LTL - Modellüberprüfung
P. Marwedel Informatik 12, U. Dortmund
Vortrag: Praktikum Technische Informatik Sommersemester 2007
Informatik 12, TU Dortmund
Fakultät für informatik informatik 12 technische universität dortmund Embedded System Hardware Peter Marwedel Informatik 12 TU Dortmund Germany 2011/03/09.
Technische universität dortmund fakultät für informatik informatik 12 Embedded System Hardware Peter Marwedel Informatik 12 TU Dortmund Germany
Datentechnik13. Übung THS, 22.November 2006 Testen hochintegrierter Schaltungen Übung 3: SCOAP-Algorithmus (sequentiell) Ralph Weper.
Die Untersuchung beginnt in Kuerze. examination searchvisit.
Die Soundkarte Von Patrick Gaschler.
Die Diskrete-Cosinus-Transformation: Parametrisierung von Signalen in der Zeit und in der Frequenz Jonathan Harrington.
Moore E A Zustands- speicher (ZS) Übergangs- logik (ÜL) Folgezustand
Rechneraufbau & Rechnerstrukturen, Folie 7.1 © 2006 W. Oberschelp, G. Vossen.
Hier wird Wissen Wirklichkeit Computer Architecture – Part 7 – page 1 of 56 – Prof. Dr. Uwe Brinkschulte, Prof. Dr. Klaus Waldschmidt Part 7 Instruction.
Vorlesung 9.1: Erinnerung Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Vorlesung 9.1: Erinnerung Universität Bielefeld Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin Wintersemester.
Institut für Angewandte Mikroelektronik und Datentechnik Fachbereich Elektrotechnik und Informationstechnik, Universität Rostock Spezielle Anwendungen.
Lehrstuhl Technische Informatik - Computer Engineering Brandenburgische Technische Universität Cottbus Architectures and Diagnosis Methods for Self Repairing.
11/2005 MATRIX VISION GmbH 1 mvBlueFOX - Die USB Kamera mit integriertem Hardware Real-Time Controller (HRTC) Uwe Furtner, MATRIX Vision GmbH.
Alles ist eins Die toten Hosen
Libero: Design Creation / Verification Seminar WS04/05 Andreas Schibilla (ii4900)
Service-Oriented Architecture Service- Orientation Design Paradigm is primarily distinguishe d by Services is designed to support the implementation of.
Die Hardwarebeschreibungssprache VHDL
Fernseher: Geräte und Signale I
Es gibt keine Zustandsänderung, deren einziges Ergebnis die Übertragung von Wärme von einem Körper niederer auf einen Körper höherer Temperatur ist. There.
Institut AIFB, Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Towards Automatic Composition of Processes based on Semantic.
VHDL-Synthese für Fortgeschrittene
Die Fourier-Analyse Durch die Fourier-Analyse wird ein Sprachsignal in Sinusoiden zunehmender Frequenz zerlegt, sodass wenn diese summiert werden, das.
FPGA... ein Versuch. Uli Schäfer 1. Historie: PLD Uli Schäfer 2 Schaltungsgrösse wächst drastisch mit Zahl der Eingänge CPLD = Array + Flipflops + macro.
Writing assessment say what your school is called say what time school starts and finishes say what you eat and drink at breaktime what subjects you like.
Übersicht Was ist cocoon? Separation of Concerns Pipeline Modell
Time - die Zeit Asking for the time in German: Wieviel Uhr ist es?
Die Uhrzeit (informell)
School of Engineering ESI-Lektion School of Engineering ESI – Lektion 9-10 Memory MAP Controll Bootloader, ISP JTAG Debugging In Circuit Emulators.
VHDL 3: Sequential Statements (Process)
Synthetisierbares VHDL
School of Engineering Themen: Variablen Architecture-Types.
VHDL 7: Automaten 1.
VHDL 8: Automaten 2.
VHDL2_Sprachelemente und Concurrent Statements (Nebenläufige Anweisungen)
VHDL 4: Getaktete Logik (D-FF, Zähler, Automaten)
School of Engineering DT2 Projekt-3: Baud Rate Generator & GPS Decoder.
School of Engineering DT2 Projekt-2: Baud Rate Generator & GPS Decoder.
Felder (Arrays) und Zeiger (Pointers) - Teil II Zeichen, Texte, String Matching; Mehrdimensionale Felder; kürzeste Wege.
Advanced Digital Design Übung 3. Aufgabe 1: Algorithmus für Phasen Inverter Plazierung Systematic approach: 1. Identify combinational logic and registers/memories.
Can you tell me about your school?
Dative Prepositions. The dative case always follows these prepositions: – aus – out of, from, (from – place of origin) – außer – besides, except – bei.
Service-Oriented Architecture Service- Orientation Design Paradigm is primarily distinguishe d by Services is designed to support the implementation of.
By Martin L. Loeffler.  The basic sentence has a subject and a verb.  The subject and verb need to be together.  The subject and verb need to agree.
1.Woche: Organisation Synthetisierbares VHDL
Der Design-Flow eines ASIC
Survival Expressions.
Prüfungsbesprechung Barbara Scheuner Vorlesung: Programmieren und Problemlösen Prof. Hans Hinterberger.
Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.
Ich brauche_____ ihn euch Ich besuche ___________ Es uns
X. Übungsblatt – Aufgabe X In dieser Aufgabe soll ein synchron getakteter Steuerungsautomat für den in Abbildung 1 dargestellten Prozessor-Chip mit geringem.
Programmiersprachen II Graph_Algorithmen Einführung Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Technische und Wirtschaftswissenschaftliche Universität Budapest Lehrstuhl für Elektronische Bauelemente MIKROELEKTRONIK, VIEEAB00.
Where Can I Buy Real Propecia Online
Projekt: Inbetriebnahme und Optimierung einer neuen PCC-Säule
Arten der Takterzeugung
OER Kombinationskarten
Technische Informatik II
Die Schultüte 1.
Eine elektronische Schaltung von der Idee bis zum Einbau am Experiment
Werkekoffer.
MIKROELEKTRONIK, VIEEAB00
OER Kombinationskarten
 Präsentation transkript:

Inhalt Einen Zähler generisch aufbauen CPLD Synthese Timing Analyse PIN Zuweisungen fixieren

Generic

Generic in Entity Default Wert ENTITY zaehl_generic IS GENERIC (width : natural := 5); PORT( clk,reset : IN std_logic; cnt_out : OUT std_logic_vector(width-1 downto 0) ); END zaehl_generic; ARCHITECTURE rtl OF zaehl_generic IS SIGNAL cnt_folge: unsigned(width-1 downto 0); SIGNAL cnt_gegenwart: unsigned(width-1 downto 0); BEGIN logik : PROCESS(cnt_gegenwart) cnt_folge <= cnt_gegenwart + 1 ; END PROCESS logik; flip_flops : PROCESS(clk, reset) IF reset = '1' THEN cnt_gegenwart <= to_unsigned(0,width); ELSIF clk'EVENT AND clk = '1' THEN cnt_gegenwart <= cnt_folge ; END IF; END PROCESS flip_flops; cnt_out <= std_logic_vector(cnt_gegenwart); END rtl; Default Wert

Generic eine Hierarchie höher COMPONENT zaehl_generic GENERIC (width : natural ); PORT (clk,reset : IN std_logic; cnt_out : OUT std_logic_vector(width-1 downto 0); div_out : OUT std_logic); END COMPONENT; instance1: zaehl_generic GENERIC MAP (width => 50) PORT MAP(clk => clk50, reset => rst, cnt_out => out_vector);

Ausgangszuweisung 4 cnt_out cnt_folge Prozess mit Kombinatorischer Logik comb_ Prozess mit getakteter Logik reg_ cnt_out 4 cnt_gegenwart clk reset 4 PORT( clk,reset : IN std_logic; cnt_out : OUT std_logic_vector(width-1 downto 0) ); cnt_out <= std_logic_vector(cnt_gegenwart);

CPLD Synthese

Zaehler Einfach ENTITY zaehl_generic IS GENERIC (width : positive := 4); PORT( clk,reset : IN std_logic; cnt_out : OUT std_logic_vector(width-1 downto 0) ); END zaehl_generic; ARCHITECTURE rtl OF zaehl_generic IS SIGNAL cnt_folge: unsigned(width-1 downto 0); SIGNAL cnt_gegenwart: unsigned(width-1 downto 0); BEGIN logik : PROCESS(cnt_gegenwart) cnt_folge <= cnt_gegenwart + 1 ; END PROCESS logik; flip_flops : PROCESS(clk, reset) IF reset = '1' THEN cnt_gegenwart <= to_unsigned(0,width); ELSIF clk'EVENT AND clk = '1' THEN cnt_gegenwart <= cnt_folge ; END IF; END PROCESS flip_flops; cnt_out <= std_logic_vector(cnt_gegenwart); END rtl;

RTL Diagramm zaehler_einfach

Ein Logic Element im MAXII

Technology Map von zaehler_einfach

Technology Map von zaehler_einfach (Hierarchien expandiert)

Ein Logic Element im MAXII

Up/down counter IF reset = '1' THEN cnt_folge <= 0; ELSE IF up = '1' THEN IF cnt_gegenwart < 9 THEN cnt_folge <= cnt_gegenwart + 1 ; ELSE cnt_folge <= 0; END IF; ELSE IF cnt_gegenwart > 0 THEN cnt_folge <= cnt_gegenwart - 1 ; ELSE cnt_folge <= 9; END IF; END IF; END IF;

Mux Diagramm UP-Down Zähler -1 IF reset = '1' THEN cnt_folge <= 0; ELSE IF up = '1' THEN IF cnt_gegenwart < 9 THEN cnt_folge <= cnt_gegenwart + 1 ; ELSE cnt_folge <= 0; END IF; ELSE IF cnt_gegenwart > 0 THEN cnt_folge <= cnt_gegenwart - 1 ; ELSE cnt_folge <= 9; END IF; END IF; END IF; 1 9 9

Timing Analyse

Setup und Hold Zeiten beim D-FF Minimal benötigte Hold Zeit Minimal benötigte Setup Zeit tsu th CLK D 1 2 Q 1 2 Fenster in dem Daten stabil sein müssen

Berechnen der Maximalen Taktfrequenz eines Zählers FF:cnt_gegenwart(1) FF:cnt_gegenwart(3) Q D !Q Q D !Q CLK Tperiod-max = tPDCLKQ-cnt_gegenwart(1) + tPD-Logic + tPD-Verbindung + tSU-cnt_gegenwart(3) fmax = Tperiod-max 1 Nur ein Ausschnitt des Zählers gezeigt!

Propagation Delay am CPLD Ausgang (tco) Q1 Ausgangs- Pin Q D !Q tpdLOGIK CLK tcoFLIP-FLOP tpdCLKBUF tcoCPLD = tpdCLKBUF + tcoFLIP-FLOP + tpdLOGIK

Timing Analyse von clk zu cnt_out cnt_gegenwart(1) Q D !Q Q D !Q cnt_out(0) CLK1 CLK2 CLK cnt_gegenwart(0) Nur ein Ausschnitt des Zählers gezeigt!

Die SETUP Zeit beim Verschalten von CPLDs CPLD Eingangspin FF1 FF1 FF2 D2 D1 Q D !Q Q D !Q D Q D Q Q1 Q2 !Q !Q CLK Flanke 1) (Launch Clock) Flanke 2) (Latch Clock) CLK D1 D2 tsetup

Set Up Zeit am CPLD Eingang (tSU) tpdLOGIK tsuFLIP-FLOP Eingangs- Pin D2 Q D !Q CLK tsuCPLD = tsuFLIP-FLOP + tpdLOGIK

Verfügbare HOLD Zeit für CPLD Eingang CPLD Eingangspin Logic FF1 FF1 FF2 D2 D1 Q D !Q Q D !Q D Q D Q Q1 Q2 !Q !Q CLK Flanke 1) Flanke 2) CLK tlogic tlogic Q1 D2 thold thold Q2

Hold Zeit am CPLD Eingang tpdLOGIK thFLIP-FLOP Eingangs- Pin D2 Q D !Q CLK thCPLD = thFLIP-FLOP - tpdLOGIK

Timing Analyse Up/Down Counter

PIN Zuweisungen Fixieren

Erstellen von Pin Zuweisungen Synthetisieren Sie ein erstes Mal Führen Sie eine Backannotation durch: Assignments  Backannotate Speichern Sie das Projekt File Save Project Öffnen Sie den Assignment Editor: Assignments Pins Editieren Sie die Pins entsprechend dem PCB Board Kompilieren sie noch einmal und kontrollieren sie die Pin Assignments mit Assignments pins Abspeichern als TCL Datei: Project  Generate TCL File for Project Laden der TCL Datei: Tools TCL scripts