FPGAs -  Jörg Rippel

FPGAs (eBook)

Einstieg, Schaltungen, Projekte

(Autor)

eBook Download: EPUB
2024 | 1. Auflage
543 Seiten
Rheinwerk Computing (Verlag)
978-3-367-10150-4 (ISBN)
Systemvoraussetzungen
37,43 inkl. MwSt
  • Download sofort lieferbar
  • Zahlungsarten anzeigen

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



Jörg Rippel ist begeistert davon, wie einfach es geworden ist, selbst den eigenen Strom zu produzieren. Das Basteln mit elektronischen Geräten gehörte schon immer zu Jörgs Hobbys. Privat repariert er gerne alte Radios, beruflich hat er mehr als 20 Jahre in verschiedenen IT-Unternehmen und in der Luft- und Raumfahrtindustrie gearbeitet. Als Systemingenieur lag sein Schwerpunkt auf der Zusammenführung und Pflege komplexer Systeme, die aus vielen verschiedenen technischen Bereichen bestehen. Heute lebt er mit seiner Frau im Grünen und schraubt gerne an kreativen Projekten, wobei es auch immer mal wieder Probleme gibt und nicht immer alles beim ersten Versuch funktioniert. Trotzdem - oder gerade deswegen - macht ihm die Arbeit mit Elektronik immer Spaß. Sein Wissen teilt er in Fachbüchern und Beiträgen. Ausbildungen und Studiengänge in Elektronik, Funktechnik und Informatik haben dafür gesorgt, dass er ein breites Wissen zu allerlei elektrischen Geräten hat. Dazu gehören die Erstellung von analogen und digitalen Robotern, der Bau von Computern, das Betreiben von Amateurfunk und Satellitenfunk, das Design von Schaltungen und Platinenlayouts, die Arbeit mit 8- und 32-Bit-Mikrocontrollern und die Programmierung in verschiedenen Sprachen.

1    Los geht’s: FPGAs für Maker und Kreative


Field Programmable Gate Arrays (FPGAs) sind spezielle integrierte Schaltungen, die sich durch den Benutzer programmieren lassen. Schauen wir uns zunächst die Tools und Konzepte zu diesen Bausteinen an und welche Rolle Open-Source-Software dabei spielt.

In der dynamischen Welt der Elektronik stellen FPGAs eine Technologie dar, die es Enthusiasten ermöglicht, die Schranken konventioneller Mikrocontroller-Systeme zu überwinden. Sie werden feststellen, dass Sie mit FPGAs viel machen können, was beispielsweise ein Arduino oder gar ein Mini-Computer wie der Raspberry Pi nicht kann. Mit diesem Buch möchte ich Ihnen einen umfassenden Einstieg in diese Welt bieten. Es geht nicht nur um das theoretische Wissen, sondern auch um praktische Fähigkeiten, die Sie direkt in Ihre Projekte integrieren können.

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


Als Maker erreichen Sie irgendwann einen Punkt, an dem herkömmliche Mikrocontroller oder Mikroprozessoren für manche Anforderungen nicht mehr genügen. Oder vielleicht wollen Sie einfach mal etwas Neues ausprobieren. Der Arduino und der Raspberry Pi sind zwar weit verbreitet und werden durch eine Vielzahl von Soft- und Hardware-Beispielen gut unterstützt. Auch ein ESP32 oder ein Raspberry Pi Pico bieten jeweils spezielle Features, mit denen sich bestimmte Problemstellungen gut lösen lassen. Doch manchmal werden Sie sich mehr wünschen: mehr Flexibilität, höhere und echte Parallelverarbeitungsleistung, anspruchsvolle visuelle Effekte, schnelle Signalverarbeitung oder Kryptografie – und das alles flexibel und schnell anpassbar.

Wenn Sie aus diesen Gründen dieses Buch zur Hand genommen haben, sind Sie bereit, die Welt der Field Programmable Gate Arrays – oder kurz einfach FPGAs – zu entdecken. Hier lernen Sie die Grundlagen und Anwendungsmöglichkeiten dieser programmierbaren Komponenten kennen.

1.1.1    Für wen ist dieses Buch geeignet?


Sie sollten ein fortgeschrittener Maker bzw. Elektronik-Bastler sein und die eine oder andere Skriptsprache beherrschen, am besten Python, denn Python wird auch im Buch verwendet. Sie sollten mit Linux umgehen können, am besten auf einem Raspberry Pi. Auf der Linux-Konsole brauchen Sie kein Experte zu sein; wenn Sie sich grundsätzlich auf der Kommandozeile zurechtfinden, reicht das aus.

Ihr Wissen im Bereich der Elektronik sollte all das abdecken, was man als Bastler so macht: Mit Mikrocontrollern sollten Sie mal »was gemacht« haben: Vielleicht haben Sie auch schon das eine oder andere Breakout Board verwendet, das Sie via SPI oder I2C an Ihren Arduino oder Raspberry Pi angeschlossen haben. Sie sollten grundsätzlich wissen, wie die Kommunikation zwischen Teilnehmern auf einem seriellen Bus funktioniert, d. h., Sie sollten so ungefähr wissen, was eine Adresse oder eine Chip-Select-Leitung im Zusammenhang mit einem seriellen Bus ist.

Wenn Sie nun feststellen, dass Sie vom größten Teil des eben Gesagten keine Ahnung haben, dann könnte es sein, dass dieses Buch an einigen Stellen zu fortgeschritten für Sie ist.

1.1.2    Was dieses Buch nicht ist


In diesem Buch finden Sie keine endlosen Grundlagen zu boolescher Algebra und Logikgattern. Sie werden auch nicht erst theoretisch den Inhalt der vielen Hundert Seiten des Verilog-Standards lesen und dabei Datentypen, Operatoren, Kontrollstrukturen und Systemfunktionen erlernen müssen. Dies alles behandele ich in diesem Buch nur so weit, wie es unbedingt nötig ist. Ich wollte kein klassisches Fachbuch schreiben, das Ihnen bei einer Semester-Abschlussarbeit der E-Technik oder bei der Vorbereitung auf ein Vorstellungsgespräch als Entwickler von Embedded Systems hilft. Sein Inhalt ist für die Werkstatt und das Mindset eines Makers und Elektronik-Bastlers gedacht.

1.1.3    Was ist der Inhalt dieses Buches?


Im ersten Teil des Buches erfahren Sie die Antwort auf die Frage: »Was ist ein FPGA und was kann er?« Wir besprechen die beiden FPGA-Boards, die in diesem Buch verwendet werden und woher Sie diese beziehen können. Danach stelle ich die Bestandteile der in diesem Buch genutzten Open-Source-Toolchain vor. Auch die beste Vorgehensweise beim Einrichten einer Entwicklungsumgebung, das Backup Ihrer Projektdateien und die verwendeten Tools zur Versionskontrolle und des Build-Prozesses sind Themen in Teil I.

Im zweiten Teil des Buches besprechen wir die Möglichkeiten von FPGAs und realisieren praktische Beispielprojekte. Dafür nutzen wir ausschließlich die Open-Source-Toolchain und zwei FPGA-Boards, den Tang Nano 9K und den IceZero. Sie werden dafür Ihre eigene FPGA-Entwicklungsumgebung inklusive aller dazugehörigen Tools und Skripte einrichten. Somit besitzen Sie eine vollständige Unabhängigkeit bei Ihrer Entwicklungsarbeit. Das bedeutet, wir werden keine kommerzielle Software und keine IDE/Entwicklungsumgebung eines Herstellers nutzen. Es wird somit keine Lizenz nötig sein – an keiner Stelle entsteht so eine Abhängigkeit, und es fallen auch keine weiteren Kosten an!

Bleiben Sie neugierig

Übrigens: Diese Toolchain und die genutzten FPGAs sind nur ein Beispiel. Sie können auch andere FPGAs nutzen, indem Sie die Toolchain anpassen. Der Verilog-Code ist so generisch wie möglich gehalten, damit er auf einer Vielzahl von FPGAs läuft. Der Aufwand für eine Anpassung ist somit gering.

Nur: Sie müssen dann eben die Toolchain ändern und auch die Beispiele in diesem Buch an Ihren FPGA anpassen. Trauen Sie sich das zu? In Abschnitt 2.5 gehe ich näher darauf ein.

In diesem Buch finden Sie eine Vielzahl von Beispielprojekten, die viele der grundlegenden Technologien abdecken, die in der Praxis häufig benötigt werden. Dazu gehören Displays, Taktgeber, Taster, Sensoren, LEDs und verschiedene serielle Protokolle. Diese grundlegenden Elemente bilden oft das Fundament, auf dem komplexere und interessantere Anwendungen aufbauen können. So können Sie mit diesen Beispielprojekten ein solides Verständnis für die Grundlagen entwickeln, den Inhalt aber später auch bei Ihren eigenen Ideen weiterverwenden. Dadurch erhalten Sie einen praxisnahen Einblick in die reale Arbeit mit diesen Bausteinen.

1.1.4    Das Lernkonzept dieses Buches


Das Konzept, wie in diesem Buch Wissen vermittelt wird, unterscheidet sich vom theoretischen Lehransatz an Hochschulen:

  • Learning by doing! – Sie programmieren einen FPGA mit der von Ihnen selbst eingerichteten Entwicklungsumgebung. Wir steigen schnell und direkt in die Programmierung von FPGAs ein. Wenn der FPGA dann läuft, schauen wir uns den Quellcode an. Das ist ideal für alle, die direkt loslegen möchten.

  • Wir nutzen die KI! – In diesem Buch werde ich Ihnen nicht alle Fragen beantworten und nicht jedes Detail erklären. Ich zeige Ihnen, wie Sie Ihren FPGA einsetzen können und wie Sie Designs umgesetzt bekommen. Die Grundlagenprojekte und die kniffligeren weiterführenden Projekte werden Ihnen zeigen, wie Sie Displays einrichten, Schnittstellenprotokolle implementieren, Block-SRAM verwenden, Zufallszahlen erzeugen, Neopixel-LEDs zum Leuchten bringen und noch viel mehr.

    Aber ich werde an mancher Stelle auch etwas sagen wie: »Wenn Sie mehr darüber wissen wollen, wie ein Schieberegister als Verzögerungsleitung dienen kann, dann fragen Sie die Chat-KI nach …«

    In der heutigen Zeit können wir modernere Methoden nutzen, um uns schnell und effektiv das Wissen anzueignen, das wir brauchen, um eine Aufgabe zu bewältigen. Der alte Hochschulprofessor, der uns erst jahrelang Herleitungen an die Tafel malt, ist Vergangenheit. Die Fachbücher der 1990er-Jahre sind Vergangenheit. In diesem Buch nutzen wir die Chat-KI ausgiebig, damit Sie so schnell und einfach wie möglich alles zu FPGAs lernen, was nötig ist. Damit Sie hinterher fit in dem Thema sind.

Sind Sie so weit einverstanden? Ist das ein Ansatz, mit dem Sie leben können? Dann lassen Sie uns gemeinsam in die faszinierende Welt der FPGAs eintauchen und entdecken, wie sie Ihre kreativen und technischen Fähigkeiten erweitern können.

I – Los geht’s mit Ihrem Traumprojekt

In diesem Buch werden Ihnen öfter Kästen wie dieser begegnen, in denen es um Ihr FPGA-Traumprojekt geht. In solchen Kästen werde ich mit Ihnen in kleinen Schritten – abgestimmt mit dem Inhalt des Buches – Ihr erstes FPGA-Design aufbauen, das Sie dann nach diesem Buch starten können. Wir bilden so Schritt für Schritt die Basis für Ihren ersten selbstständigen Einstieg in der FPGA-Hardware-Entwicklung.

Alles, was Sie dafür brauchen, sind ein paar Blatt Papier und ein Stift. Notieren Sie einfach Ihre liebste Idee bzw. liebsten Ideen. Im Verlauf dieses Buches werden wir an ihnen weiterarbeiten, und zum Schluss helfe ich Ihnen, dieses Projekt realisiert zu bekommen. Wichtig ist, dass Sie diese Notizen tatsächlich irgendwo...

Erscheint lt. Verlag 4.10.2024
Sprache deutsch
Themenwelt Mathematik / Informatik Informatik Netzwerke
Technik Elektrotechnik / Energietechnik
ISBN-10 3-367-10150-8 / 3367101508
ISBN-13 978-3-367-10150-4 / 9783367101504
Haben Sie eine Frage zum Produkt?
EPUBEPUB (Wasserzeichen)
Größe: 21,0 MB

DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasser­zeichen und ist damit für Sie persona­lisiert. Bei einer missbräuch­lichen Weiter­gabe des eBooks an Dritte ist eine Rück­ver­folgung an die Quelle möglich.

Dateiformat: EPUB (Electronic Publication)
EPUB ist ein offener Standard für eBooks und eignet sich besonders zur Darstellung von Belle­tristik und Sach­büchern. Der Fließ­text wird dynamisch an die Display- und Schrift­größe ange­passt. Auch für mobile Lese­geräte ist EPUB daher gut geeignet.

Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür die kostenlose Software Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür eine kostenlose App.
Geräteliste und zusätzliche Hinweise

Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.

Mehr entdecken
aus dem Bereich
Das umfassende Handbuch

von Martin Linten; Axel Schemberg; Kai Surendorf

eBook Download (2023)
Rheinwerk Computing (Verlag)
22,43
das Praxisbuch für Administratoren und DevOps-Teams

von Michael Kofler

eBook Download (2023)
Rheinwerk Computing (Verlag)
29,93