Bild mit Unilogo
home uni uni kontakt kontakt
unilogo Universität Stuttgart
Institut für Kommunikationsnetze und Rechnersysteme (IKR)

Labor für Hardware-Design (Programmierbare Logik)

Druckansicht
 

Programmierbare Logik Bausteine ermöglichen es, die Funktionalität eines Chips selbst fest zu legen. Dadurch lassen sich sehr schnell digitale Systeme entwickeln, die als Prototypen für spätere Serienprodukte oder als experimentelle Aufbauten zu Forschungszwecken genutzt werden können.

Logikfamilien

Am IND werden verschiedenen Logikfamilien der Firma Altera eingesetzt.

MAX7000-FamilieAltera MAX7256

  • produkttermbasiert Makrozellen
  • EEPROM-basiert (nicht flüchtige Programmierung)
  • 32 bis 256 Makrozellen / Chip
  • 600 bis 5000 Gatteräquivalente
  • 36 bis 164 I/O-Pins

 

Altera FLEX10k100FLEX10k-Familie

  • Look Up Table(LUT)-basierte Logikzellen
  • SRAM-basiert (flüchtige Programmierung)
  • 576 bis 12.160 Logikzellen / Chip
  • 10.000 bis 250.000 Gatteräquivalente
  • 134 bis 470 I/O-Pins

 

APEX20k-FamilieAltera APEX20k400

  • Look Up Table(LUT)-basierte Logikzellen
  • SRAM-basiert (flüchtige Programmierung)
  • 1.200 bis 51.840 Logikzellen / Chip
  • 30.000 bis 1.500.000 Gatteräquivalente
  • 128 bis 808 I/O-Pins

 

Software

Aus den Netzlisten, die ein Synthese-Werkzeug erstellt, erstellt nun ein "Place and Route"-Werkzeug die Progammierdateien für den jeweiligen Baustein. Für die Bausteine von Altera werden beim IND die Programme Quartus und Max+Puls II eingesetzt.

Experimentierplattformen

Flex-10k-AdapterplatineFlex10k-Adapterplatine

Für anspruchsvolle Entwürfe, die umfangreich und schnell sein sollen, benötigt man programmierbare Logikbausteine, die recht teuer sind. Um diese nach dem Einsatz in einem Projekt wieder nutzen zu können, wurde am IND eine Adapterplatine entwickelt, die die Ein- und Ausgangspins des Bausteins auf Steckern zur Verfügung stellt. Diese Adapterplatine wird dann auf projektspezifische Platinen aufgesteckt.

Sie enthält:

  • Einen Baustein der Altera FLEX10K-Familie
  • Vielploige Steckverbinder
  • Eine Ladeschaltung mit Eprom zur Konfiguration des FLEX10k-Bausteins
  • Sockel für Quarzoszillator zur variablen Festlegung der Systemfrequenz


 

System-On-a-Programmable-Chip-Board SOPC-Board

Um Systeme mit sehr hohen Taktraten realisieren zu können, muss nicht nur ein schneller programmierbarer Baustein eingesetzt werden, sondern es müssen auch die Peripherie-Bausteine in adäquater Weise angebunden werden. Dazu wurde am Institut für Nachrichtenvermittlung und Datenverarbeitung eine Platine angeschafft, die einem schnelle APEX20KE-Baustein sehr viele Peripheriekomponenten zur Verfügung stellt:

  • 64MB SDRAM
  • 4MB Flash memory
  • 2x 1MB Cache Memory
  • Schnittstellen:
    • 10/100 Mb-Ethernet
    • USB
    • IEEE 1394
    • Maus
    • Tastatur
    • VGA-Anschluss
    • RS-232
    • Drucker-Anschluss
  • Erweiterungsstecker für eigene Platinen

Diese Platinen werden für Studien- und Diplomarbeiten eingesetzt.

 

ModellprozessorModellprozessor

Für das Praktikum Datenverarbeitung wurde am IND ein Prozessor für Lehrzwecke entworfen. Dieser Modellprozessor ermöglicht es, in die einzelnen Elemente eines Prozessor "hinein zu sehen" und auch die Abläufe im Prozessor selbst zu beeinflussen. Realisiert wurde das System durch Einschubkarten, die jeweils eine Funktionseinheit des Prozessors bilden. Die Funktionalität der Einheit wird vollständig durch programmierbare Logikbausteine bestimmt. Diese Bausteine können im Praktikum selbst programmiert werden. Dies fördert zum einen das Verständnis für die Funktion eines Prozessors und zum andern wird der Umgang mit programmierbarer Logik vertieft.