MIN-Fakultät
Fachbereich Informatik
TAMS

Unterlagen

Vorlesungsunterlagen, Datenblätter & Dokumentation und diverse Links - thematisch sortiert. Die Liste wird im Lauf der Veranstaltung aktualisiert...

Aktuell | VHDL | EDA-Programme | Hardware | Remote arbeiten


Aktuell

Allgemeines Material aus den Plenumsterminen: Foliensätze, Beispieldateien usw.

14.10.2021


VHDL

Allgemeine Dokumentation zu VHDL und Beschreibung der Syntax.

Links


EDA-Programme

EDA für Electronic Design Automation - Hier sind die Anleitungen zur Benutzung der Programme sowie Links zu deren Herstellern.
Hersteller und OpenSource
Intel FPGA (Altera)
Siemens (Mentor Graphics): ModelSim - eingeschränkt in Quartus (=Intel FPGA) enthalten
Cadence
Synopsys
GHDL und GTKWave (OpenSource VHDL-Simulator)
Setup
Um die Initialisierung der Werkzeuge zu vereinfachen, gibt es Shellscripte für bash/sh oder tcsh/csh, die die benötigten Suchpfade und Umgebungsvariablen setzen:
source $tamsSW/profile.d/edaSetup.sh [tool-list]
source $tamsSW/profile.d/edaSetup.csh [tool-list]
Eingaben für tool-list sind beispielsweise:
ams ldv  für die Simulation:  xmvhdl, xmvlog, xmelab, xmsim
alt  für den FPGA Entwurf:  quartus
Cadence Simulation
Um alle temporären Dateien separat zu halten, empfiehlt es sich die VHDL Arbeitsbibliothek work auf ein entsprechendes Unterverzeichnis abzubilden. Dieses kann dann später komplett gelöscht werden. Dazu sind
  1. ein Unterverzeichnis work im aktuellen Verzeichnis anzulegen
  2. die Dateien cds.lib und hdl.var in das aktuelle Verzeichnis zu kopieren
Hier die Schritte zur Simulation der Ampelschaltung aus den VHDL-Beispielen:
xmvhdl -linedebug tlcWalk.vhd tlcTest.vhd
xmelab tlcTest
xmsim -gui tlcTest
ghdl und gtkwave
Zur Nutzung der OpenSource Werkzeuge ghdl und gtkwave folgen hier die Schritte, um zu simulieren und sich die Ergebnisse anzusehen.
Auch hier wird davon ausgegangen, dass ein Unterverzeichnis work erstellt wurde (s.o.).
ghdl und gtkwave sind bereits auf den TAMS-Rechnern vorinstalliert:
ghdl -a --workdir=work tlcWalk.vhd
ghdl -a --workdir=work tlcTest.vhd
ghdl -e --workdir=work tlcTest
ghdl -r --workdir=work tlcTest --vcd=tlctest.vcd
gtkwave tlctest.vcd
ghdl - Linux vs. Windows
Während ghdl wie oben beschrieben in der Linux Version alle internen Objekte in die Datei für gtkwave schreibt, gibt die Windows Version nur Bit-/Bitvector- und Integer Typen in Standard VCD-Dateien aus. Hier hilft ein internes Datenformat, mit dem dann auch eigene Aufzählungstypen (z.B. Zustandsvariablen von Automaten) ausgegeben werden:
...
....\bin\ghdl.exe -r --workdir=work tlcTest --wave=tlcTest.ghw
...
Windows Binaries (2.0-dev): bei mir funktionieren die 64-bit Binaries von ghdl nicht, bzw. sie erzeugen nur leere vcd/ghw-Dateien. Die 32-bit Version läuft; hier sind lokale Kopien [21.Okt.2021] der Archive

Hardware

Dokumentation zu den Hardwareeinheiten, der Prototypenplatine etc.

SRAM Speicher

Altera FPGA Prototypenplatine


Remote auf FBI-Rechnern arbeiten

Die nachfolgenden Schritte beschreiben, wie man von seinem heimischen Rechner aus direkt auf Maschinen im Fachbereich arbeitet (mit grafischen Schnittstellen).

Voraussetzungen

Realisierung

Technisch gesehen, gibt es zwei Szenarien, wie GUI-Elemente auf dem eigenen Rechner dargestellt werden: X-forwarding oder VNC. Für beide werden hier die grundlegenden Schritte erläutert, die aber immer ein laufendes VPN (s.o.) voraussetzen.

1. X-forwarding

2. VNC-Verbindung

Das VNC-Protokoll ist, ähnlich RDP bei Windows Systemen, eine Möglichkeit komplette Bildschirminhalte Remote darzustellen und den Rechner mit Tastatur und Maus fernzusteuern.

3. SSH Tunnel über die rzssh1

Teilweise gab es Probleme mit der oben beschriebenen Verbindung zum VNC-Server (2. VNC-Verbindung), da viele verschiedene Faktoren das Systemverhalten beeinflussen: Linux-/Windows-Versionen, Firewallkonfigurationen etc. Als Alternative zu obiger Methode kann man auch ein einen SSH-Tunnel über die rzssh1.informatik.uni-hamburg.de laufen lassen, was in dieser Anleitung beschrieben ist.