Programmierbare Logikbausteine

Aus II-Wiki
Zur Navigation springen Zur Suche springen
Programmierbare Logikbausteine (PLD)
Vertiefungsrichtung II/IHS
Vorlesung
Vorlesender

Dipl.-Ing. Thomas Rommel

Abschluß
Art k.A.


Die Studierenden sind in der Lage, die verschiedensten angebotenen Bausteine in die unterschiedlichen Architekturen von PLD einzuordnen und die sich daraus ergebenden Konsequenzen für den Entwurf von digitalen Schaltungen abzuleiten. Sie können für konkrete Anwendungen eine optimale Bausteinauswahl treffen und den Entwurf unter Anwendung moderner Designmethoden (Hierarchischer Entwurf, Hardwarebeschreibungssprache usw.) realisieren. Ökonomische Parameter fließen genauso bei der Auswahl geeigneter Bausteine in die Überlegungen ein wie technische. Dadurch besitzen die Studenten ein strategisches Wissen, dass es Ihnen ermöglicht auch Neueinführungen auf dem Markt zu beurteilen. Durch die Praktikas ist Ihnen der Entwurfsablauf von der Problematik (Pflichtenheft) über die Schaltungseingabe, Verifikation, Programmierung bis hin zur Testung geläufig und auf andere Anforderungen übertragbar.

Einarbeitung in die Entwurfssoftware Max+Plus II von Altera, Einführung und Besonderheiten der Hardwarebeschreibungssprache AHDL, Systematisierung der gebräuchlichen PLD, unterschiedliche Bausteinarchitekturen und deren Vor- bzw. Nachteile, Programmiertechnologien, Verbindungsarchitekturen, Möglichkeiten der Speicherrealisierung in komplexen PLD, CPLD und FPGA, Handhabung von Intellectually Property in PLD, Embedded Processor Solutions am Beispiel eines 32bit Prozessors (Softcore) in einem PLD mit zusätzlicher Hardware, technische Parameter des Prozessors, Programmierung des Prozessors. Überblick über analoge PLD, Einschränkung, Vorstellung eines Analogmasters, Vergleich von PLD verschiedener Hersteller (Altera, XILINX, Lattice u.a.) Im Praktikum Entwurf eines PLD (von der formellen Aufgabenstellung bis hin zur Erprobung in der Hardware)

Prüfung

Klausur
Termin
Datum: 25.07.2011
Zeit: 12:30 - 14:00
Ort: Röntgen-Hs


Am Ende des Semester gibt es eine Klausur die über 90 Minuten geht.

Themen

Inhalt:

  • allgemein gültige Sachen
  • grobe Nennwerte der Schaltungstechnik (z.B. Antifuse ist schnell, SRAM ist groß…), aber keine konkreten Zahlen
  • Programmiertechnologie
  • Speicherrealisierung
  • Verbindungen
  • Leitungen
  • Unterschied zwischen CPLD und FPGA
  • FPGA-Modell
  • Aufbau Programmiertechniken
  • Look Up Tables (Aufbau)
  • Aufbau Speicherzelle
  • Mealy vs. Moore Automat
  • Übersicht & Vergleiche -> allgemein bekannt, nicht im Detail
  • keine technischen Parameter zu einzelnen Bausteinen
  • nichts zu VHDL

Vorlesungsskript Zusammenfassung

Entwurf

Dreieck integrierter Schaltungen:

Flächenaufwand

  • zur Realisierung einer Schaltung wird Fläche auf dem Chip benötigt
  • bestimmte Einflussfaktoren für fest verdrahtete und programmierbare Bauelemente
  • mehr Kommunikation und oder Funktionsblöcke mehr Chipfläche

Taktfrequenz

  • Schaltung benötigt eine bestimmte Anzahl an Taktzyklen zum durchlaufen
  • je mehr Takt umso schneller ist eine Schaltung
  • je höher der Takt umso mehr Verbrauch

Verlustleistungsaufnahme

  • in CMOS Schaltungen proportional zu der Anzahl der Gatter und der Taktung

Computing in Space vs. Computing in Time

Space:

  • Datenflussorientiert
  • Parallelisierung
  • Piplining

Time:

  • Kontrollflussorientiert
  • Piplining in moderne DSP möglich

weitere Kriterien

  • Skalierbarkeit
  • Hardwareaufwand
  • Echtzeitfähigkeit
  • Verlustleistungsaufnahme
  • Flexibilität
  • Entwurfsprozess

CMOS-Technologie - Vorteile

  • hoher Eingangswiderstand
  • geringer Eingangsstrom
  • geringer Stromverbrauch

Entwurfsstile

  • PLD hoher Preis/Gatter zu Full-Custom hin immer weniger
  • Performance bei FC sehr hoch bei PLD gering
  • Zur Entwicklung sind Prozessschritte durchzuführen bei FC voll bei PLD keine
  • dafür sehr Ausnutzung der Fläche in FC in PLD wiederum nicht
  • time to market: PLDs in Tagen bis Wochen, FC in Monaten
  • hohe NRE Kosten bei FC
  • Entwurfsänderungen in PLDs problemlos in FC nicht
  • wenige FC Lieferanten, dafür viele PLD Lieferanten

Allgemeine Eigenschaften von PLD

  • niedrige bis hohe Komplexität
  • Vielfalt enthaltener Baugruppen von SRAM Blöcken, speziellen Blöcken für Arithmetische Funktionen zur Signalverarbeitung, Ankopplung an weitere Systemelemente per schneller I/O
  • sehr kurze Entwicklungs- und Fertigungszeiten
  • Änderungen sehr leicht Möglich
  • keine NRE-Kosten - mehr als 1000 Stück pro Jahr nicht wirtschaftlich
  • schnellere Datenverarbeitung als bei Mikrocontrollern aber teurer
  • bausteinseitig vollständig getestet

Low Cost Produkte durch

  • Zellstruktur mit hoher Dichte
  • wenige Typen dafür hohe Stückzahl
  • günstige Gehäusetypen
  • spezielle I/O-Schnittstellen
  • kurze Verfügbarkeit
  • kleinstmögliche Technologie

Systematisierung der PLD

--- BILD müsste hier hin ---

Effektivität von PLD

  • Logikdichte (Schaltungsfunktionalität pro Flächeneinheit)
  • Durchlaufzeit der Logikblöcke und der Verbindungswege
  • Anwenderfreundlichkeit und Implemeniterungsfreundlichkeit
  • Stromverbrauch

Probleme beim Entwurf von PLD

  • steigende Integrationsdichte
  • kürze Lebensdauer der Produkte
  • alle FPGA-Strukturen sind verschieden
  • kurze Entwicklungszeiten
  • Schlatungskomplexität muss beherrscht werden
  • neue Einarbeitungszeit
  • Entwurf möglichst Architektur unabhängig

Sicherung hoher Entwurfsqualität

  • Zehner Regel: Kosten der Fehlerbeseitigung

Programmiertechnologie

Schutz vor Klau

  • Level 1: praktisch kein Schutz (SRAM, EEPROM)
  • Level 2: moderat sicher, nur von Profis mit entsprechender Ausrüstung (Antifuse)
  • Level 3: defakto sicher, aber bei PLDs kaum realisierbar


Reversible

SRAM

  • flüchtig
  • ca. 5 Transistoren (XILINX)
  • große Zellgröße
  • keine zusätzlichen Prozessschritte
  • pro
    • kein Programmiergerät erforderlich
    • jede beliebige Funktion aus Eingangssignalen realisierbar
    • Rekonfiguriung
    • schnelle Entwurfsänderung
  • con
    • schlechter bzw. umständlicher Kopierschutz
    • Konfigurationsspeicher erforderlich
    • sorgfältige Planung eines Neustarts erforderlich
    • empfindlich gegen radioaktive Strahlung

Flash-EEPROM

  • Flashzellen können nicht wortweise, sondern nur in größeren Blöcken
  • NOR: - alle Speicherzellen sind parallel an Bitleitung angelschlossen, schnell
  • NAND: - Speicherzellen in Serie geschaltet, weniger Kontakte zur Bitleitung, Zelle ca. 40% kleiner, höhere Speicherdichte und geringere Kosten, aber langsamer als NOR
  • pro
    • rekonfigurierbar
    • mittel groß
  • con
    • 3-5 Prozessschritte

Irreversibel

Antifuse

  • Anlegen einer Programmierspannung wird die isoliernde Schicht zwischen den beiden Anschlüssen durchschmolzen
  • es entsteht ein niederohmige Verbindung
  • einmal programmierbar
  • klein bis sehr klein
  • große Schalttransistoren, dafür kleine Widerstände
  • 3 Prozessschritte

Verbindungsarchitekturen

Literaturempfehlungen

Materialien