CPLD/FPGA-Programmierung mit E-blocks
Wozu die CPLD/FPGA-Programmierung untersuchen? Zusammenhang zur modernen Digitalen Elektronik Verschwinden der 74xxx Bausteine Komplexe Schaltkreise mit Leichtigkeit Eine Schlüsselqualifikation, die von der Industrie gewünscht wird – teilweises System on Chip-Design
Einige Definitionen CPLD: Complex Programmable Logic Device (Bausteine mit komplexer, programmierbarer Logik) FPGA: Field Programmable Gate Array (Durch Anwender programmierbarer Universalschaltkreis) Beide erreichen Vergleichbares mit verschiedenen Techniken... später mehr
Was können solche Bausteine ? Es sind mehrfach programmierbare Logikbausteine Entwickler entwerfen mittels Software den gewünschten digitalen Schaltkreis und programmieren den Chip so, dass er die benötigten Funktionen ausführt Sie sind sehr schnell – deutlich schneller als ein Mikrocontroller
Ein moderner CPLD Das Äquivalent von 13 22V10s auf einem Chip 128 Flipflops oder Logikelementen Elektrisch neu zu programmieren Kann in verschiedenen Sprachen programmiert werden 10 (Durchschnittspreis)
Moderne Architektur eines CPLD Nicht sonderlich wichtig aus Sicht des Anwenders – die Software kümmert sich darum
Ein FPGA Das Äquivalent von V10s auf einem Chip 4000 Flipflops (es gibt auch welche mit ) Elektrisch neu programmierbar Kann in verschiedenen Sprachen programmiert werden 15 (Preise fallen) Nur in unpraktischen SMD- Bauformen erhältlich
Unterschiede zwischen CPLDs und FPGAs Alle SMDEinige mit SockelBauformen Nein – wird nach dem Einschalten geladen JaProgrammspeicherung Ab 15 Ab 10 Kosten 3,3V extern, 1,5V intern 5VBetriebsspannung Bis zu Bis zu 500Logikelemente FPGACPLD
Nachteile CPLDs und FPGAs gibt es in SMD-Bauformen, mit denen man schlecht arbeiten kann Für die meisten Projekte kann auch ein Mikrocontroller verwendet werden Mit E-blocks lassen sich leicht Systeme aufbauen, die mit Mikrocontrollern und CPLDs/FPGAs arbeiten – man muss sie nur zusammen stecken FPGAs arbeiten mit 3,3V
Wie programmiert man CPLD/FPGAs? Mit konventionellen Logiksymbolen und Schaltkreisen Beschreibungssprachen (descriptor languages) Verilog (gebräuchlich in Nordamerika) VHDL (gebräuchlich in Europa)
Konventionelle Symbole und Schaltkreise Entwurf eines tradi- tionellen Schaltbildes Compilation Programmierung des Bauteils
Beschreibungssprachen Ein sehr effizienter Weg, das Verhalten von Logik zu beschrei- ben Ein wenig wie C Die meisten Institute wechseln zu einer Beschreibungssprache
Technik programmierbarer Logik Enthält die Design- Software Quartus Einen Kurs in VHDL (Europa) Einen Kurs in Verilog (Amerika) Momentan kostenfrei für CPLD-Lösungen
System auf einem Chip Die FPGA-Technik erlaubt es, auf einem einzigen Chip einen Prozessor, ROM, RAM, DSP und andere Blöcke einzubinden Dadurch lassen sich etliche Applika- tionen für IC-Bausteine ersetzen Für Elektronikfirmen entstehen große Vorteile in Bezug auf Kosten, Zuverlässigkeit, Wiederverwendung intellektuellem Eigentums und Zeit bis zur Marktreife
Eine Besonderheit am Rande Die Herausforderungen und Techniken bei der Programmierung von CPLDs sind die gleichen wie bei der Program- mierung von FPGAs Können Sie CPLDs programmieren, so gelingt Ihnen das auch mit FPGAs
Ein besonderer Vorteil des E-blocks-Systems Die CPLD- und FPGA-Boards von E- blocks sind fertig Das FPGA-Board passt oben auf das CPLD-Board (der CPLD-Chip wird entfernt) Der Upgrade-Vorgang ist leicht
Teil 3 – Die E-blocks-Lösungen
Die CPLD-Lösung Ein CPLD-Program- mierer und einige E- blocks Zusätzlich ein kostengünstiges PIC- Board, damit Sie CPLD in Verbindung mit einem Mikroprozessor einsetzen können
Die FPGA-Lösung Enhält einen CPLD- und einen FPGA-Program- mierer … … und E-blocks-Boards, die das Kit für den Einsatz mit dem Embedded-Mikro- prozessor IP von NIOS erweitern Einsetzbar für System On Chip
Die CPLD-Softwarelösung Ein CD-ROM-Lehrgang mit Kursen in VHDL- und Verilog-Program- mierung Die CD-ROM liegt jeder Lösung bei Benutzt die Webedition der freien Software Quartus II von Altera, die bei Altera registriert werden muss
Demonstration