Hardwarebeschreibungssprachen

Im Praktikum wird mit MAXPlus2 gearbeitet, einige Hinweise zum Setup gab es bereits bei dem PLD Praktikum.

Zum Erstellen von VHDL-Modulen ist die Endung .vhd zu verwenden.

Es sind 2 Aufgaben zu realisieren:


Am Praktikum beteiligt sind:



Termine (Raum 1555):

  • Thu 09.06.2005 - 15:00h
    • Aufgabe 2 gelöst
    • hat alles funktioniert, außer kb_ctrl (Lösung von Matthias ging)
      • digit_val und last_tmp_key mußten als signal deklariert werden
      • noch nicht getestet
  • Thu 02.06.2005 - 15:00h
    • Aufgabe 1 gelöst
    • Takt hatte nicht gestimmt (aus der 16 musste ne 32 gemacht werden) - k.A. warum
    • beim 7 Segment war die 2 falsch
    • Adresse war verschoben beim MUX (weil Signale erst mit dem nächsten Takt gesetzt werden)

Aufgabe 1 - Stoppuhr

Flankendetector <imp_det>

  • Taster sind low-aktiv
  • max 1 Takt langer Impuls

Lösungreveal hidden content

Vorteiler <prescal>

  • Systemtakt: 32768 Hz
    • Teilerfaktor (Sytem): 32
    • Teilerfaktor (Uhr):
      • Teiler für 10tel s: 102
      • Teiler für s: 1024
  • scheinbar ist der Systemtakt doppelt so groß wie angegeben (im Praktikum musste der Prescaler durch 64 statt 32 teilen)

Lösungreveal hidden content

Zählerblock <time_cnt>

  • Teilerfaktor (Uhr): 156
  • Reset und Enable sind high-aktiv
  • bei Reset, alles auf 0 setzten
  • bei Enable auf 0 soll das System stehen bleiben

Lösungreveal hidden content

Uhrsteuerung <main_ctl>

  • in Zustand z2 soll ca. 2 Sekunden verharrt werden
Zustand
idle run inttime hold
z0 z1 z2 z3
reset 1 0 0 0
show_int 0 0 1 0
cnt_en 0 1 1 0

Lösungreveal hidden content

Ausgangsmultiplexer <bcd7seg>

  • digit → Auswahl des Anzeigeelementes
  • segment → low-aktive Signale für 7-Segmentanzeige
  • bei show_int auf high werden die Eingänge gespeichert und ausgegeben

Lösungreveal hidden content

Aufgabe 2 - Signalgenerator

Tastaturabfrage und Frequenzregister <kb_ctrl>

  • * löscht die Eingabe
  • # bestätigt die Eingabe
  • 0 kann als Frequenz existieren

Lösungreveal hidden content

Lösung (von Matthias)reveal hidden content

Phasenakkumulator <ph_acc>

  • bei freq=0 bleibt die phase auf 0

Lösungreveal hidden content

Sinus-Koeffiziententabelle <sin_from_table>

Lösungreveal hidden content

 
wiki/study/prakt/hdl.txt · Last modified: 2005/09/07 11:51 (external edit)
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki