[[dtpr_versuch_8]]

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dtpr_versuch_8 [2011/12/04 22:15]
beckmanf Checkliste eingefügt.
dtpr_versuch_8 [2014/01/03 15:42] (current)
beckmanf [Zustandsautomat syncsm] - VHDL Automatencode eingefügt
Line 18: Line 18:
   * Stellen Sie eine Zustandsübergangstabelle für den Automaten auf.    * Stellen Sie eine Zustandsübergangstabelle für den Automaten auf. 
  
-Die Zustandsübergangslogik ​könnte ​jetzt aus der Zustandsübergangstabelle abgeleitet und mit booleschen Gleichungen formuliert werden. ​Alternativ soll hier die Zustandsübergangslogik mit Hilfe eines Multiplexers umgesetzt werden. In der folgenden Abbildung ​+Die Zustandsübergangslogik ​kann jetzt aus der Zustandsübergangstabelle abgeleitet und mit booleschen Gleichungen formuliert werden. ​
  
-{{:​dtpr-v8-mux.png}} ​  ​ +  * Geben Sie die Zustandsübergangslogik ​und die Ausgangslogik als boolesche Gleichungen an.  ​
- +
-ist ein 4 zu 1 Multiplexer so mit Konstanten beschaltet, dass sich eine UND Funktion bezüglich der select Eingänge ergibt. Die Dateneingänge des Multiplexers können auch vom Typ std_ulogic_vector sein. Damit kann dann auch eine Logik mit mehreren Ausgängen beschrieben werden.  +
- +
-<code vhdl> +
-entity mux4 is  +
-  generic ( +
-    width : integer); +
-  port ( +
-    d0_i :           in std_ulogic_vector(width-1 downto 0); +
-    d1_i :           in std_ulogic_vector(width-1 downto 0); +
-    d2_i :           in std_ulogic_vector(width-1 downto 0); +
-    d3_i :           in std_ulogic_vector(width-1 downto 0); +
-    s_i :            in std_ulogic_vector(1 downto 0);  +
-    y_o :            out std_ulogic_vector(width-1 downto 0) +
-  ); +
-end;  +
-</​code>​ +
- +
-  ​Stellen ​Sie die Zustandsübergangslogik ​mit Hilfe eines Multiplexers mit konstanten Eingängen dar.  +
-  * Geben Sie die Ausgangslogik als boolesche Gleichungen an.  ​+
   * Skizzieren Sie Ihre Gesamtschaltung mit Speicher, Zustandsübergangslogik und Ausgangslogik. ​   * Skizzieren Sie Ihre Gesamtschaltung mit Speicher, Zustandsübergangslogik und Ausgangslogik. ​
  
Line 49: Line 29:
 === Designphase (syncsm, syncgen und vgatop) === === Designphase (syncsm, syncgen und vgatop) ===
  
-Setzen Sie Ihren Entwurf in VHDL um. Laden Sie dazu die folgenden Designdaten herunter {{:​dtpr-v8-syncgen.zip}}.  +Setzen Sie Ihren Entwurf in VHDL um. 
- +
-  * Der synccnt Entwurf ist nicht vollständig. Kopieren Sie Ihren Entwurf in das src Verzeichnis.  +
-  * Der syncgen Entwurf ist schon fertig, d.h. die Verbindung von synccnt und syncsm.  +
-  * Fügen Sie das syncgen Modul in den vgatop ein und konfigurieren Sie die Zähler so, dass das hsync Signal korrekt erzeugt wird+
  
 === Verifikationsphase === === Verifikationsphase ===
  
   * Verifizieren Sie das Design im Simulator   * Verifizieren Sie das Design im Simulator
-  * Erzeugen Sie eine FPGA Belegung auf Basis des "​de1_vgatop"​. Laden Sie das Design auf das FPGA und verifizieren ​Sie das hsync Timing mit dem Logikanalysator+  * Verifizieren ​Sie das Design auf dem FPGA und messen ​Sie das hsync und vsync Timing 
 + 
 +=== Umsetzung ​mit VHDL Automatencode === 
 + 
 +  * Setzen Sie jetzt den Automaten mit VHDL um und verwenden Sie dazu die Beschreibung wie in play_rtl.vhd 
 +  * Verifizieren Sie den Automaten im Simulator  
 +  * Finden Sie mit Quartus die Anzahl der benötigten Flipflops für den Automaten heraus 
  
  
  
  • dtpr_versuch_8.1323033341.txt.gz
  • Last modified: 2011/12/04 22:15
  • by beckmanf