icon Systementwurf
FBI | TAMS | Termine | Lehrveranstaltungen | KVV | FBI News
 
Projekt Systementwurf
18.341
Raum:  F-334
Zeit:  Mittwoch 14:00 - 16:00 Uhr (c.t.) und nach Vereinbarung (6 SWS)
Veranstalter:  Andreas Mäder, Jianwei Zhang
 
Aktuell
31.05.
Das Archiv omniRaw.tgz enthät Beispielbilder des omnidirektionalen Kamerasystems als FireWire Raw-Daten (4,7MB), anzusehen mit: display -size 1280x960 uyvy:fileID
27.04. Die Fehler in den Beispieldateien projekt.tgz sind beseitigt und alles funktioniert. Die vorgeführte Version von fwTest hatte noch die Anschlußbelegung für die Verbindung mit dem Flachbandkabel... was natürlich erklärt warum der Automat beliebig lange auf sein Ack-Signal wartet.
26.04. Foliensatz
projekt.tgz   Vorarbeiten, Testprogramme und Beispiele
19.04. Fortführung vom 12.04. - Arbeit mit den Programmen...
12.04. Foliensatz
vhdlIntro.tgz   die Beispiele der VHDL-Folien
gSensor.tgz SOPC-Builder Systembeispiele des Beschleunigungssensors
05.04. Foliensatz
 
Unterlagen Vorlesungsunterlagen, Literaturverweise und diverse Links - thematisch sortiert.
VHDL VHDL Kompakt - die Syntax und viele VHDL Beispiele, 124 Seiten.

Hamburg VHDL Archive
EDA Industry Working Groups - die "offiziellen" Referenzen zu VHDL, Verilog, etc.

EDA-Programme Online Doku. - Eigene Beschreibungen zur CAD-Software.

Altera
Cadence
Synopsys

Um die Initialisierung der Werkzeuge zu vereinfachen, gibt es ein zentrales Script (csh), das die benötigten Suchpfade und Umgebungsvariablen setzt. Es kann entweder interaktiv benutzt werden oder die Eingaben als Argumente beinhalten: source ~maeder/design.Setup [tool-list]

ldv  für die Simulation:  nclaunch
alt  für den FPGA Entwurf:  quartus

Der jeweilige Befehl zum Aufruf der Online-Dokumentation wird bei der Initialisierung der Umgebung ausgegeben. Weitere Informationen jederzeit von Andreas Mäder

Achtung: das Script funktioniert nur mit csh/tcsh. Für sh/bash wird die Programmumgebung mit folgende Skripten initialisiert: alt.sh bzw. ldv.sh

Quartus Ein Makefile um SOPC-Builder, Quartus-Synthese und den Programmer ohne GUI zu starten. Voraussetzung ist allerdings, dass das Projekt richtig initialisiert wurde -- siehe Beispiele in projekt.tgz.

'Standalone'-Aufruf des Programmierers: quartus_pgm -c ByteBlasterMV -m JTAG -o p\;niosBoard.sof

NIOS Platine Dokumentation zu dem NIOS Board und dem SOPC Builder findet sich in /local/tams1.1/altera/niosBoard/doc/ - unsere Prototypeplatine ist die apex_20k200e. Die Altera Dokumentation zum SOPC-Builder und zu der Entwurfssoftware Quartus.

Die vorgestellten Beispiele mit dem Beschleunigungssensor stehen unter /local/tams1.1/altera/niosBoard/gSensor/

multiHW  ist das (parametrisierbare) CoDesign Beispiel
singleSW  ist eine Software Lösung (Timer) für einen Kanal
FireWire Übersicht zu IEEE 1394: Foliensatz von Zayante Inc.
1394 Trade Association: Home
Links der IEEE-1394-Gruppe
FW-Hardware TI Interface - Verweise auf die 1394-ICs

In dem Projekt werden ein Link- und ein Physical-Layer Controller von TI eingesetzt:
TSB12LV01B Datenblatt, Link-Layer Controller
TSB41AB3 Datenblatt, 3-port Physical-Layer Controller
TSB12LV01B+TSB41AB3

Systemaufbau Eine Übersicht über die bisherige Arbeit (IEEE 1394 Grundlagen) und Ansätze für die weitere Inbetriebnahme des Systems liefern die Baccalaureatsarbeiten von S.Annies: "Entwicklung eines FireWire Kamera Interface als eingebettetes System" und M.Blaszkowski: "Entwurf und Implementierung eines FireWire Interface in VHDL"
Kamera Sony DFW-VL500 Kamera: Data Sheet und Technical Manual
Sony DFW-SX900 Kamera: Data Sheet und Technical Manual
Programmierung Beispiele zur Programmierung (Zugriff auf den FireWire Bus, Kameraschnittstelle, etc.) finden sich:
  • in den Projektdateien (projekt.tgz) in dem Verzeichnis cam
    camView.c  das Autofokus Programm
    isoView.c  Anzeige eines isochronen Kanals
    isoDump.c  Ein Standbild schreiben
  • in den Quellen der FireWire Bibliotheken libraw1394 und libdc1394. Insbesondere libdc1394/examples ist hier interessant.
  • in den Quellen zu ieee1394diag, einem Analysewerkzeug für den IEEE 1394 Bus.
  • in den Quellen zu coriander, dem Programm zur Kamerasteuerung.
Video Formate Digital Video Fundamentals
Converting between RGB and 4:2:2
1394 Camera Spec., Video Formats
Bildverarbeitung Autofokus
 
Inhalt Moderne, komplexe technische Systeme sind durch zwei Eigenschhaften gekennzeichnet: die Unterteilung in Subsysteme, die jeweils eine bestimmte Funktionalität realisieren und die Integration von Software, Hardware und mechanischen Komponenten. In dem Projekt sollen für den Teilbereich der Sichtsysteme echtzeitfähige Bildverarbeitungskomponenten prototypisch realisiert werden. Wegen der Echtzeitfähigkeit wird dabei neben der Software auch dedizierte Hardware eingesetzt, um 1) eine Datenreduktion durchzuführen (Vorverarbeitung als Merkmalsextraktion), und 2) Regelungsaufgaben (Fokussierung, Bildkorrekturen etc.) zu übernehmen. Das zu realisierende Gesamtsystem besteht aus Kameras (FireWire), FPGA-Prototypenboard und PC als Host-Rechner.

Bei der praktischen Arbeit können Sie eine von den folgenden wählen: die Spezifikation und den Systementwurf, die Partitionierung des Systemverhaltens in Hardware und Softwareanteile, die Spezifikation geeigneter Schnittstellen, die Programmierung der Algorithmen und den Hardwareentwurf mit VHDL.

Dabei soll inhaltlich auf den Ergebnissen eines Projekts aus dem letzten Jahr aufgesetzt werden, wobei die dort erarbeiteten (Teil-)Ergebnisse als Basis für die weitere Systemintegration dienen.

Lernziel Die TeilnehmerInnen sollen ein typisches eingebettetes System entwerfen und sich dazu in die Problematik des Systementwurfs und des Codesigns einarbeiten. Für den Bereich des VLSI-Entwurfs soll vermittelt werden, dass sich die aktuelle Entwurfsmethodik, dank Hardwarebeschreibungssprachen und Syntheseprogrammen, nicht mehr vom "reinen" Softwaredesign unterscheidet. Weiteres Lernziel ist die Koordination der Projektarbeit.


Impressum
01.06.2006
top
http://tams-www.informatik.uni-hamburg.de/lehre/ss2006/projekte/systementwurf/systementwurf.html