FPGAs - Einstieg, Schaltungen, Projekte. Der Leitfaden für kreative Maker und Bastler

Gebundene Ausgabe
49,90 €
inkl. MwSt. versandkostenfrei!

Reduzierte Artikel in dieser Kategorie


Produktdetails  
Verlag Rheinwerk Verlag
Auflage 04.10.2024
Seiten 543
Format 17,8 x 3,2 x 24,7 cm
Gewicht 1135 g
ISBN-10 3367101486
ISBN-13 9783367101481
Bestell-Nr 36710148A

Produktbeschreibung  

Field Programmable Gate Arrays - kurz FPGAs - sind die ideale Basis für anspruchsvolle Maker-Projekte. Dank effizienter Parallelverarbeitung und hoher Flexibilität lassen sich mit diesen frei programmierbaren Logikbausteinen komplexe digitale Schaltungen mühelos realisieren.
In diesem Praxisbuch zeigt Ihnen Jörg Rippel anhand kreativer Beispielprojekte mit den benutzerfreundlichen FPGAs von Lattice und Gowin Semiconductor, wie Sie Ideen schnell umsetzen. Durch den Einsatz einer Chat-KI generieren Sie ohne Vorkenntnisse die benötigten Verilog-Codes. Im Handumdrehen basteln Sie Lichteffekte, Animationsanzeigen, verarbeiten Sensordaten und realisieren Ihr persönliches Traumprojekt.



Aus dem Inhalt:



  • Grundlagen der FPGAs und hardwarenahen Programmierung

  • Effizientes Pairprogramming mit künstlicher Intelligenz wie ChatGPT

  • Praxisnaher Einstieg: FPGAs programmieren und die Toolchain beherrschen

  • Anbindung und Verarbeitung von Sensordaten über gängige Schnittstellen

  • Interaktive Steuerung und Kommunikation über serielle Verbindungen

  • Steuern von Displays, RGB-LEDs und vielfältigen Ausgaben

  • Testbenchsysteme entwickeln zum Simulieren und Debuggen

  • Einrichten der Open-Source-Entwicklungsumgebung auf dem Raspberry Pi


Inhalt:



  Materialien zum Buch ... 13


  1.  Los geht's: FPGAs für Maker und Kreative ... 15


       1.1 ... Über dieses Buch: Was Sie lernen werden und was Sie schon können sollten ... 15

       1.2 ... Ihr Weg durch dieses Buch ... 18

       1.3 ... Was sind FPGAs? ... 20

       1.4 ... Sprachen, Tools und Konzepte ... 23



TEIL I.  Einstieg in die FPGAProgrammierung ... 27


  2.  FPGAs verstehen ... 29


       2.1 ... Grundlagen und Überblick: Die FPGA-Technologie verstehen ... 30

       2.2 ... Die FPGAs, die in diesem Buch verwendet werden ... 59

       2.3 ... Was ist der richtige FPGA für Ihr Projekt? ... 68

       2.4 ... Andere FPGAs und Regulatorien ... 73

       2.5 ... Open-Hardware- und EDU-Boards ... 75



  3.  Offener Quellcode, offene Hardware ... 85


       3.1 ... Kein Ablaufdatum und zeitlos gültig: Open-Source-Software und -Hardware ... 85

       3.2 ... Die Open-Source-Toolchain und die Freiheit der Entwicklung ... 87

       3.3 ... Das IceZero-Board für den Raspberry Pi ... 88

       3.4 ... Der Tang Nano 9K ... 91

       3.5 ... Die Vor- und Nachteile der Anschlüsse beider FPGA-Boards ... 92

       3.6 ... Die Open-Source-Toolchain für das IceZero- und das Tang-Nano-Board ... 95

       3.7 ... Die Hersteller-IDE für den Tang Nano 9K ... 95

       3.8 ... Beide FPGAs gleichzeitig am Raspberry Pi nutzen ... 96



  4.  Software-Entwicklung leicht gemacht ... 99


       4.1 ... Die Hardware-Beschreibung mit Verilog ... 100

       4.2 ... Hardware-Beschreibung vs. Programmierung ... 101

       4.3 ... Die Idee und die FPGAs im Rampenlicht, KI im Support ... 102

       4.4 ... Einen FPGA mit Prompts designen ... 111

       4.5 ... Tipps und Tricks beim Prompten ... 115



  5.  Offene Tools und Setup ... 119


       5.1 ... Unsere Steuerzentrale: Der Raspberry Pi ... 120

       5.2 ... Die Entwicklungsumgebung einrichten ... 125



  6.  Erste Schritte mit FPGAs und dem Raspberry Pi ... 143


       6.1 ... Der iCE40HX auf dem IceZero-Board ... 147

       6.2 ... Der Tang Nano 9K ... 158

       6.3 ... Sind die Toolchain-Komponenten austauschbar? ... 171

       6.4 ... Quellcode-Editoren für Verilog ... 172

       6.5 ... Die Ausgabeinformationen der Toolchain verstehen ... 177



  7.  Die Grundlagen von Verilog ... 183


       7.1 ... Aufbau und Struktur ... 183

       7.2 ... Ein erstes Code-Beispiel ... 186

       7.3 ... Datentypen ... 187

       7.4 ... Konstrollstrukturen ... 194

       7.5 ... Von der Software zur Hardware: Automatische Codegenerierung für FPGAs ... 196



  8.  Ablauf eines FPGA-Designs ... 201


       8.1 ... Entwicklungsschritte ... 201

       8.2 ... Aufbau und Ablauf der FPGA-Projekte in diesem Buch ... 204



TEIL II.  Praxis und Projekte ... 207


  9.  Projekte mit dem IceZero ... 209


       9.1 ... I/O: Interaktion mit der Außenwelt ... 210

       9.2 ... Einen Takt ausgeben ... 224

       9.3 ... Einen Zähler implementieren ... 233

       9.4 ... RGB-LEDs ansteuern ... 237

       9.5 ... Serielle Daten übertragen ... 252

       9.6 ... Web-Control-Server ... 276

       9.7 ... Retrospektive: Erlernte Grundlagen ... 283

       9.8 ... Mehr zu Testbench-Techniken: Simulation und Test von digitalen Signalverarbeitungssystemen ... 287

       9.9 ... Mehr zu Makefiles: Automatisierung ... 293



10.  Projekte mit dem Tang Nano 9K ... 295


       10.1 ... I/O: Die 48 GPIO-Pins des Tang Nano 9K ... 295

       10.2 ... Die Taster des Tang Nano 9K ... 301

       10.3 ... Der Takt des Tang Nano 9K ... 301

       10.4 ... Der Speicher eines FPGAs ... 301

       10.5 ... Eine UART-Schnittstelle ... 310

       10.6 ... Ein SPI-LCD ansteuern ... 331

       10.7 ... Ein OLED-Display ansteuern ... 337

       10.8 ... Ein OLED-Display mit Bildanzeige ... 364

       10.9 ... Ein OLED-Display mit Text-Engine ... 370

       10.10 ... Ein OLED-Display mit Bargraphen (und die Frage, wann Zufall wirklich zufällig ist) ... 403

       10.11 ... Ein OLED-Display mit ADC-Ausgabe ... 427

       10.12 ... Einen Servo steuern ... 477

       10.13 ... Retrospektive: Wie passt das alles zusammen? ... 483



11.  Spezialthemen -- kurz angerissen ... 487


       11.1 ... Schleifen ... 487

       11.2 ... Generate-Anweisungen ... 490

       11.3 ... Pipelining ... 492

       11.4 ... Taktdomänen (Clock Domains) ... 496

       11.5 ... Crossing Clock Domains ... 499

       11.6 ... Die Bezeichnungen 'größer' und 'breiter' ... 502

       11.7 ... Die Simulation stoppen ... 504

       11.8 ... IP-Cores ... 505

       11.9 ... Grundlagen zu SerDes in FPGA-Systemen ... 507

       11.10 ... Phase-Locked Loops (PLL) ... 509

       11.11 ... Delay-Locked Loops (DLL) ... 510

       11.12 ... Multiplexer und Demultiplexer ... 512

       11.13 ... Das Shift-Register ... 513

       11.14 ... RISC-V-Softcore-CPU ... 514

       11.15 ... Retrospektive: Gut, mal gehört zu haben ... ... 518



12.  Die Community und weiterführende Ressourcen ... 519


       12.1 ... Machen Sie bei Open-Source-Communitys für Maker mit ... 519

       12.2 ... Retro-Messen: Entdecken Sie 8-Bit-Computer und Emulatoren ... 521

       12.3 ... Der MEGA65 ... 522

       12.4 ... Im Gespräch mit einem FPGA-Entwickler ... 530



13.  Ihr Traumprojekt: Legen Sie los! ... 533


  Danke und bis bald! ... 535


  Index ... 537

Autorenporträt  
Mehr Angebote zum Thema