Grundlagen der FPGAs – Teil 2: Erste Schritte mit den FPGAs von Lattice Semiconductor

Von Clive „Max“ Maxfield

Zur Verfügung gestellt von Nordamerikanische Fachredakteure von DigiKey

Anmerkung des Herausgebers: Kombinationen aus RISC, CISC, Grafikprozessoren und FPGAs sowie allein eingesetzte FPGAs oder FPGAs mit einem harten Prozessorkern in ihrer Struktur stellen häufig optimale Verarbeitungslösungen dar. Viele Entwickler sind jedoch mit den Fähigkeiten von FPGAs, deren Entwicklung und deren Einsatzmöglichkeiten nicht vertraut. Teil 1 dieser mehrteiligen Serie lieferte eine allgemeine Einführung zu FPGAs und erklärte, wofür sie benötigt werden. Der vorliegende Teil 2 befasst sich schwerpunktmäßig mit den FPGA-Gerätefamilien und den vom FPGA-Anbieter Lattice Semiconductor zur Verfügung gestellten Entwicklungstools. In den Teilen 3, 4 und 5 wird es um FPGAs von Altera, Microchip und Xilinx gehen.

Wie bereits in Teil 1 erwähnt, weisen feldprogrammierbare Gate-Arrays (FPGAs) viele Merkmale auf, die sie zu einem wertvollen Computer-Asset machen, egal ob eigenständig oder als Bestandteil einer heterogenen Architektur. Für viele Entwickler sind die FPGAs und ihre Integrationsmöglichkeiten in ihre Designs jedoch noch immer Neuland.

Wir versuchen, einen Ausweg aus dieser Situation zu finden, indem wir einen sorgfältigen Blick auf die FPGA-Architekturen und die zugehörigen Tools von führenden Anbietern werfen. Wir beginnen damit beim Sortiment von Lattice Semiconductor.

Allgemeiner Überblick über die FPGA-Optionen

Es gibt viele verschiedene Arten von FPGAs, die jeweils andere Kombinationen aus Fähigkeiten und Funktionen aufweisen. Das Herzstück eines jeden FPGAs ist seine programmierbare Struktur, die sich als Array programmierbarer Logikblöcke darstellt (Abbildung 1a). Auf der nächsthöheren Ebene enthält die FPGA-Struktur beispielsweise SRAM-Blöcke – sogenanntes Block-RAM (BRAM) –, Phasenregelkreise (PLLs) und Taktmanager (Abbildung 1b). Blöcke für die digitale Datenverarbeitung (DSP) (DSP-Slices) und Hochgeschwindigkeits-Serialisierer/Deserialisierer-Blöcke (SERDES-Blöcke) können ebenfalls enthalten sein (Abbildung 1c).

Darstellung von FPGAs, die nur eine programmierbare Struktur und konfigurierbare Allzweck-IO (GPIO enthalten) Abbildung 1: Die einfachsten FPGAs beinhalten lediglich eine programmierbare Struktur und konfigurierbare Allzweck-IO (GPIO) (a). In verschiedenen Architekturen wird diese grundlegende Struktur durch SRAM-Blöcke, PLLs und Taktmanager (b), DSP-Blöcke und SERDES-Schnittstellen (c) sowie harte Prozessorkerne und Peripheriebausteine (d) erweitert. (Bildquelle: Max Maxfield)

Die Funktionen von Peripherieschnittstellen wie CAN, I2C, SPI, UART und USB können als Softkerne in der programmierbaren Struktur implementiert werden. In vielen FPGAs sind sie jedoch als Hartkern auf dem Chip enthalten. In gleicher Weise können auch Mikroprozessoren als Softkerne in die programmierbare Struktur oder als Hartkerne in den Chip integriert werden (Abbildung 1d). Verschiedene FPGAs bieten verschiedene Kombinationen von Merkmalen und Funktionen, die auf verschiedene Märkte und Anwendungen abgestimmt sind.

Es gibt eine Reihe von FPGA-Anbietern, darunter Altera (von Intel übernommen), Atmel (von Microchip Technology übernommen), Lattice Semiconductor, Microsemi (ebenfalls von Microchip Technology übernommen) und Xilinx.

Alle diese Anbieter haben zahlreiche FPGA-Familien im Sortiment. Einige bieten System-on-Chip-(SoC)-FPGAs (mit harten Prozessorkernen) an, und das Sortiment anderer Anbieter umfasst strahlungstolerante Komponenten, die speziell für Einsatzgebiete mit hohem Strahlungspotenzial wie dem Weltraum vorgesehen sind. Die Auswahl einer passenden Komponente für die jeweilige Aufgabe kann sich aufgrund der großen Menge an Produktfamilien, die jeweils andere Ressourcen aufweisen, schwierig gestalten. Dieser Artikel befasst sich schwerpunktmäßig mit den Gerätefamilien von Lattice Semiconductor und den von diesem Anbieter zur Verfügung gestellten Entwicklungstools.

Einführung zu den FPGAs von Lattice Semiconductor

Das FPGA-Angebot von Lattice Semiconductor deckt den unteren bis mittleren Bereich ab, mit Schwerpunkt auf verbrauchsarmen Komponenten für Kundenlösungen, die in den schnell wachsenden Märkten Kommunikationstechnik, Computertechnik, Industrietechnik, Automobiltechnik und Verbraucherelektronik im Netzwerk von den Randknoten des IoT bis zur Cloud eingesetzt werden.

Das Angebot von Lattice umfasst vier FPGA-Hauptfamilien:

  • iCE (deren Komponenten als die weltweit kleinsten FPGAs mit extrem geringer Leistungsaufnahme gelten)
  • CrossLink und CrossLinkPlus (optimiert für Hochgeschwindigkeits-Video- und -Sensor-Anwendungen)
  • MachXO (optimiert für Bridging, Erweiterung und Plattformmanagement sowie Sicherheitsanwendungen)
  • ECP (Allzweckkomponenten, die für Konnektivitäts- und Beschleunigungsanwendungen vorgesehen sind)

Lattice bietet darüber hinaus eine Reihe von Paketen mit Design- und Verifikationstools an, unter anderem die Lattice Diamond Software (für Komponenten der Familien CrossLink/CrossLinkPlus, MachXO und ECP) und die Lattice Radiant Software (für iCE-FPGAs und künftige Architekturen). Außerdem LatticeMico (ein Grafik-Tool zur Erstellung von Designs auf der Basis von Mikroprozessor-Softkernen) sowie den Lattice sensAI Stack und den Neural Network Compiler (für Designs mit künstlicher Intelligenz (KI) und maschinellem Lernen (ML)).

Traditionell: ECP-FPGAs

Die ECP-Komponenten von Lattice würden viele Entwickler wohl als „traditionelle“ FPGAs bezeichnen. Sie enthalten bis zu 85.000 (k) Lookup-Tabellen (LUTs) mit vier Eingängen in einem 10 Millimeter (mm) x 10 mm Gehäuse mit 0,5 mm Rasterabstand. Sie weisen eine niedrige statische und dynamische Leistungsaufnahme auf: die protokollagnostischen Einkanal-SERDES-Funktionen weniger als 0,25 Watt und die Vierkanal-SERDES-Funktionen unter 0,5 Watt.

Zusätzlich zu SRAM-Blöcken, DSP-Blöcken (digitale Signalverarbeitung), PLL-Blöcken (Phasenregelkreise) und Taktmanagern verfügen die ECP-FPGAs über programmierbare IO-Unterstützung für Eingangs-/Ausgangsschnittstellen vom Typ LVCMOS 33/25/18/15/12, XGMII, LVTTL, LVDS, Bus-LVDS, 7:1 LVDS, LVPECL und MIPI D PHY.

Die Konfigurationszellen der ECP-FPGAs sind SRAM-basiert. Das heißt, dass ihre Konfiguration wie bei allen anderen SRAM-basierten FPGAs von einer externen Quelle (z. B. Flash-Speicher, Mikroprozessor, Mikrocontroller) geladen werden muss, sobald das System mit Energie versorgt wird.

Ein gutes Beispiel für eine ECP-Komponente ist das LFE5UM5G-25F-8BG381C, ein ECP5-5G-SERDES-fähiges FPGA in einem Gehäuse von 10 mm x 10 mm. Um den Entwicklern eine optimale Investition und das Experimentieren mit den Funktionen der ECP5-FPGA-Familie zu ermöglichen, hat Lattice auch eine entsprechende ECP5-5G-Entwicklungskarte im Angebot, die LFE5UM5G-45F-VERSA-EVN (Abbildung 2).

Abbildung der ECP5-Evaluierungskarte von Lattice SemiconductorAbbildung 2: Die ECP5-Evaluierungskarte ist eine Prototyping-Karte mit umfangreicher Logik, I/O, 5G-SERDES und Erweiterungsanschlüssen. (Bildquelle: Lattice Semiconductor)

Klein aber leistungsstark: iCE-FPGAs von Lattice

Die iCE-Komponenten sind die kleinsten derzeit verfügbaren FPGAs: Die kleinsten Vertreter dieser Familie bieten in einem Gehäuse von nur 1,4 mm x 1,4 mm immerhin 18 I/Os. Die iCE-FPGAs bieten eine flexible Logik-Architektur mit bis zu 5k LUTs mit vier Eingängen, bis zu 128 Kilobit (kbit) des Lattice-eigenen eingebetteten sysMEM-BRAM und 1 Megabit (Mbit) an Single-Port-RAM (SPRAM), enorm leistungsstarken DSP-Blöcken und anpassbaren I/Os.

Trotz ihrer geringen Größe und ihrer niedrigen Leistungsaufnahme – ein Ruhestrom von nur 75 Mikroampere (µA) und ein Aktivstrom von 1 bis 10 Milliampere (mA) für die meisten Anwendungen – sind die iCE-FPGAs äußerst leistungsstark. Zum Beispiel können sie in künstlichen neuronalen Netzen (ANNs) zum Mustervergleich eingesetzt werden, der nötig ist, um immer aktive Intelligenz in Randknoten des IoT zu implementieren.

Die Konfigurationsdaten in den iCE-FPGAs werden im nicht-flüchtigen Speicher (NVM) gespeichert. Das bedeutet, dass diese Komponenten einmalig programmierbar (OTP) sind. Darüber hinaus enthalten sie auch SRAM-basierte Konfigurationszellen. In der Entwicklungsphase kann das Design getestet werden, indem die SRAM-basierten Konfigurationszellen direkt aus der Außenwelt geladen werden. Sobald das Design bestätigt wurde, kann es in den NVM geladen werden. Beim Einschalten der Komponente wird die im NVM gespeicherte Konfiguration in einem umfassenden parallelen Implementierungsschritt automatisch in die SRAM-basierten Konfigurationszellen kopiert.

Ein Beispiel für die iCE-Komponenten ist ICE40UL1K-SWG16ITR1K iCE40 UltraLite. Dabei handelt es sich um das FPGA mit dem weltweit kleinsten Formfaktor (zum Veröffentlichungszeitpunkt dieses Artikels). Die Komponente liefert in ihrem nur 1,4 mm x 1,4 mm großen Gehäuse eine statische Leistung von 42 Mikrowatt (µW). Eine dazu passende Entwicklungsplattform wäre das HM01B0-UPD-EVN UPduino-Shield Himax HM01B0 mit modularer sensAI-Demokarte (Abbildung 3).

Abbildung des UPduino-Shield Himax HM01B0 von Lattice SemiconductorAbbildung 3: Das UPduino-Shield Himax HM01B0 von Lattice ist ein komplettes Entwicklungskit zur Implementierung von Künstlicher Intelligenz (KI) mit Bild und Ton als sensorische Eingaben. (Bildquelle: Lattice Semiconductor)

Das Paket basiert auf der UPduino-2.0-Karte, einer Entwicklungskarte für schnelles Prototyping im Arduino-Formfaktor mit der Leistung und den I/O-Fähigkeiten des iCE40 UltraPlus-FPGA. Darüber hinaus beinhaltet es das energiesparende Bildsensormodul Himax HM01B0 und zwei I2S-Mikrofone.

Für spezielle Anwendungen: die CrossLink- und CrossLinkPlus-FPGAs

Die Produktfamilien CrossLink und CrossLinkPlus bieten spezialisierte FPGAs, die zusätzlich zur programmierbaren Logik und den wesentlichen I/O-Funktionen als Hardware implementierte Versionen von Spezifikationen enthalten, die in der Industrie und im Automobilbau viel genutzt werden. Dazu zählen der D-PHY-Hochgeschwindigkeits-Datenkommunikationsstandard MIPI (Mobile Industry Processor Interface) für die physische Schicht und die Kerne CSI2 (Camera Serial Interface 2) und DSI2 (Display Serial Interface 2), und das alles in Gehäusegrößen von 6 mm x 6 mm (CrossLink) bzw. 3,5 mm x 3,5 mm (CrossLinkPlus).

Wie bei den iCE-FPGAs sind die Konfigurationsdaten auch bei den CrossLink-Komponenten im OTP-NVM gespeichert, und auch sie enthalten SRAM-basierte Konfigurationszellen, die in der Entwicklungsphase für Testzwecke direkt geladen werden können. Sobald das Design bestätigt wurde, wird es im NVM gespeichert und beim Einschalten der Komponente in einem umfassenden parallelen Implementierungsschritt automatisch in die SRAM-basierten Konfigurationszellen kopiert. Im Unterschied zu den anderen Serien sind die Konfigurationszellen in den CrossLinkPlus-Komponenten Flash-basiert. Das bedeutet, dass diese Bausteine bei Bedarf umprogrammiert werden können. Außerdem sind sie dank Instant-On-Funktion in weniger als 10 Millisekunden (ms) betriebsbereit.

Ein Beispiel für die CrossLink-Komponenten ist LIF-MD6000-6JMG80I mit 5936 Logikelementen/-zellen, insgesamt 184.320 RAM-Bit und 37 I/Os. Für den Einstieg und das Prototyping von Embedded-Vision-Designs gestattet das Embedded-Vision-Entwicklungskit LF-EVDK1-EVN den Konstrukteuren die Kombination von CrossLink-basierten MIPI-Eingängen mit ECP5-FPGA-Verarbeitung (Abbildung 4).

Abbildung des Embedded-Vision-Entwicklungskits LF-EVDK1-EVN von LatticeAbbildung 4: Das Embedded-Vision-Entwicklungskit LF-EVDK1-EVN von Lattice stellt Systementwicklern eine Software- und Hardware-Prototyping-Umgebung zur Verfügung, in der sie Eingangs- und Ausgangsplatinen kombinieren und aufeinander abstimmen und mit einer Vielzahl unterschiedlicher Bildsensoren und Displays verbinden können. (Bildquelle: Lattice Semiconductor)

Für I/O- und Energieverwaltungsfunktionen: die MachXO-FPGAs

Mit Hunderten von I/Os eignen sich die MachXO-FPGAs hervorragend für zahlreiche Anwendungen, für die GPIO-Erweiterung, Schnittstellen-Bridging und Einschaltmanagement-Funktionen erforderlich sind. Die jüngsten Vertreter dieser Familie wurden im Hinblick auf NIST-Kompatibilität entwickelt und enthalten zusätzliche Sicherheitsfunktionen, die für den Schutz der Systemhardware und -firmware sorgen.

Die MachXO-FPGAs bieten einen robusten Satz an GPIOs mit Funktionen wie „Hot-Socketing“, was bedeutet, dass unabhängig vom Status der Stromversorgungsschienen Spannung an die I/Os angelegt werden kann. Und während die meisten FPGA-Eingänge standardmäßig in einen Pull-up-Status wechseln, erfolgt bei den MachXO-Eingängen der standardmäßige Wechsel in den Pull-down-Status, wodurch sie sich gut für Steuerungsfunktionsanwendungen eignen. Mit einem Instant-On in weniger als 10 ms sind die MachXO-FPGAs ideale Lösungen für Steuerungsgeräte vom Typ „First on, Last-off“, die beim Ein- und Ausschalten von Systemen andere Komponenten verwalten und sequenziell steuern.

Die Konfigurationsdaten sind bei den MachXO-Komponenten im Flash-Speicher gespeichert. Außerdem enthalten auch die MachXO-Komponenten SRAM-basierte Konfigurationszellen. Beim Einschalten der Komponente werden die im Flash gespeicherten Konfigurationsdaten in einem umfassenden parallelen Implementierungsschritt automatisch in die SRAM-basierten Konfigurationszellen kopiert. Darüber hinaus ist es möglich, während des Betriebs der Komponente eine neue Konfiguration in den Flash zu speichern und dann zu einem geeigneten Zeitpunkt das Kopieren dieser neuen Konfiguration in die SRAM-Zellen zu bewirken.

Ein gutes Beispiel für eine MachXO-Komponente ist LCMXO3LF-9400C-6BG256C mit 9400 Logikelementen/-zellen, insgesamt 442.368 RAM-Bit und 206 I/Os. Eine passende Entwicklungskarten wäre das MachXO3-Starterkit LCMXO3LF-6900C-S-EVN (MachX03L-Version).

Abbildung des MachXO3L-Starterkits von Lattice SemiconductorAbbildung 5: Das MachXO3L-Starterkit ist eine sehr einfache Breakout-Karte, welche die unkomplizierte Evaluierung und Entwicklung von MachXO3L-basierten Designs ermöglicht. (Bildquelle: Lattice Semiconductor)

Auf der Platine des Kits ist SPI-Flash zur Evaluierung externer Boot- oder Dual-Boot-Funktionen verfügbar. Die MachXO3L-DSI-Breakout-Karte LCMXO3L-DSI-EVN wird für die I/O-Evaluierung von MIPI DSI und CSI2 empfohlen, und die MachXO3L-SMA-Breakout-Karte LCMXO3L-SMA-EVN wird für die Evaluierung von differentiellem Hochgeschwindigkeits-I/O empfohlen.

Design und Entwicklung mit FPGAs von Lattice Semiconductor

Eine der am häufigsten eingesetzten Techniken zur Entwicklung mit FPGAs ist das sprachgesteuerte Design (Language-Driven Design, LDD). Es beinhaltet das Erfassen der Design-Absicht auf einer Abstraktionsebene, die als Register Transfer Level (RTL) bezeichnet wird, mithilfe einer Hardware-Beschreibungssprache (HDL) wie Verilog oder VHDL. Im Anschluss an die Verifizierung per Logik-Simulation wird diese Beschreibung zusammen mit weiteren Informationen wie etwa angestrebter FPGA-Typ, Pin-Belegung und Timing-Vorgaben (z. B. maximale Verzögerungen zwischen Eingabe und Ausgabe) in eine Synthese-Engine eingespeist. Die Ausgabe dieser Synthese-Engine ist eine Konfigurationsdatei, die entweder direkt in das FPGA geladen wird oder – bei SRAM-basierten FPGAs – in einen externen Speicherbaustein (Abbildung 6).

Diagramm der RTL-Design-Beschreibung, die in eine Synthese-Engine eingespeist wirdAbbildung 6: Im Anschluss an die Verifizierung per Logik-Simulation wird die RTL-Design-Beschreibung zusammen mit weiteren Design-Details etwa FPGA-Typ, Pin-Belegung und Timing-Vorgaben in eine Synthese-Engine eingespeist. Die Ausgabe der Synthese-Engine ist eine Konfigurationsdatei, die direkt in das FPGA geladen wird (bei NVM- oder Flash-basierten Komponenten) oder in einen externen Speicherbaustein (bei SRAM-basierten Komponenten). (Bildquelle: Max Maxfield).

Mit Lattice Diamond wird eine komplette GUI-basierte FPGA-Design- und Verifizierungsumgebung für die Komponenten der CrossLink-, MachXO- und ECP-Baureihen angeboten.

Ähnlich wie Lattice Diamond bietet auch Lattice Radiant eine komplette GUI-basierte FPGA-Design- und Verifizierungsumgebung, allerdings ist Lattice Radiant für die iCE-FPGAs und für künftige Architekturen vorgesehen.

Zu den zahlreichen Funktionen von Lattice Radiant zählen:

  • Verschlüsselung von geistigem Eigentum (Intellectual Property, IP) nach dem Industriestandard IEEE 1735 und Synopsys-Design-Beschränkungen (SDC) für maximale Interoperabilität
  • Benutzerfreundliche Design-Navigation und Debugging mit einer integrierten Toolset-Umgebung
  • Einfache „One-Click“-Ausführung der Design-Implementierung durch eine neue Prozess-Symbolleiste
  • Wechselseitige Überprüfung mit komplett geschlossenem Kreis von physischer bis logischer Design-Implementierung
  • Eine IP-Paketierfunktion, die es Entwicklern und IP-Drittanbietern ermöglicht, verschlüsseltes IP in einer zur Verteilung geeigneten Form zu paketieren

Entwicklungstools für das LatticeMico-System

Das Lattice-Angebot umfasst zwei Prozessor-Softkerne – den LatticeMico8 und den LatticeMico32 –, die beide in eine programmierbare FPGA-Struktur implementiert werden können.

Der LatticeMico8 ist ein 8-Bit-Mikrocontroller, der für die MachXO2-Familie der programmierbaren Logikbausteine (PLDs) optimiert und vollständig getestet wurde. Zudem lässt er sich als Referenzdesign für die anderen FPGA-Familien nutzen. Im Mikrocontrollerkern wurde ein vollständiger 18-Bit-Befehlssatz mit 32 Allzweckregistern kombiniert. Er beansprucht ein Minimum an Komponentenressourcen – in der kleinsten Konfiguration weniger als 200 LUTs – und bietet gleichzeitig eine Vielzahl an Funktionen.

Der LatticeMico32 ist ein 32-Bit-Mikroprozessor mit einer Harvard-RISC-Architektur. Durch die Kombination eines 32-Bit-Befehlssatzes mit 32 Allzweckregistern liefert der LatticeMico32 die nötige Leistung und Flexibilität, um in den unterschiedlichsten Märkten nutzbar zu sein. Dank Verwendung einer RISC-Architektur beansprucht der Kern nur ein Minimum an Komponentenressourcen und bringt gleichzeitig die Leistung, wie sie von verschiedensten Anwendungen gefordert wird. Zur beschleunigten Entwicklung von Mikroprozessorsystemen können mehrere optionale WISHBONE-Controller-kompatible Peripheriekomponenten in den LatticeMico32 integriert werden.

Die Entwicklungstools für das LatticeMico-System bieten eine grafische Benutzeroberfläche, mit der Entwickler per Drag-and-Drop LatticeMico-Prozessorkerne und Peripheriekomponenten kombinieren und mit Bussen verbinden können. Außerdem lassen sich für jede Komponente verschiedene Parameter definieren, zum Beispiel ihre Position innerhalb des Prozessor-Adressraums. Nach erfolgter Definition des Systems können die Tools automatisch die entsprechende RTL generieren, die anschließend simuliert und synthetisiert wird. Das System enthält auch die Tools, mit denen die Benutzer die Software generieren können, die auf den Prozessorkernen ausgeführt werden soll.

Machine-Learning-Tools: Lattice sensAI Stack und Neural Network Compiler

Anwendungen für Maschinelles Lernen (ML) und Künstliche Intelligenz (KI) werden gegenwärtig in den unterschiedlichsten eingebetteten Systemen und in allen Bereichen des Internet der Dinge (IoT) genutzt, so auch im industriellen IoT (IIoT).

Der Lattice sensAI Stack enthält alles, was zur Evaluierung, Entwicklung und Bereitstellung von FPGA-basierten ML/KI-Lösungen benötigt wird: neben modularen Hardwareplattformen, Demonstrationsbeispielen, Referenzdesigns, IP-Kernen für neurale Netze auch Software-Tools für die Entwicklung und kundenspezifische Designs. Dieser Stack verkürzt die Markteinführungszeit bei Entwicklern von flexiblem Machine-Learning-Inferencing in Anwendungen für Verbraucher und das industrielle IoT.

Der Lattice-Beschleuniger-IP-Kern für das CNN (Convolutional Neural Network) ist eine Berechnungs-Engine für tiefe neuronale Netze (DNNs). Da die Engine für CNNs optimiert wurde, kann sie für bildbasierte Anwendungen wie etwa die Klassifizierung und Erkennung von Objekten verwendet werden. Der CNN-IP-Kern benötigt keinen zusätzlichen Prozessor, da er die nötigen Berechnungen selbst durchführen kann.

Gleichzeitig können Entwickler mit dem Neural Network Compiler von Lattice die in gängigen Development Frameworks wie TensorFlow, Caffe und Keras erstellten neuralen Netze übernehmen und diese zur Implementierung in Lattice-CNN- und kompakten CNN-Beschleuniger-IP-Kernen zu kompilieren.

Fazit

Optimale Design-Lösungen sind häufig Kombinationen aus Prozessoren und FPGAs, eigenständige FPGAs oder FPGAs mit harten Prozessorkernen in ihrer Struktur. Als Technologie haben sich FPGAs in den letzten Jahren stark weiterentwickelt. Heute erfüllen sie viele Design-Anforderungen hinsichtlich Flexibilität, Verarbeitungsgeschwindigkeit und Leistung, wodurch sie in einer Vielzahl von Anwendungen – von intelligenten Schnittstellen bis hin zu maschineller Bilderfassung und KI – zum Einsatz kommen können.

Wie der Artikel gezeigt hat, deckt das FPGA-Angebot von Lattice Semiconductor den unteren bis mittleren Bereich ab, mit Schwerpunkt auf verbrauchsarme Komponenten zur Adressierung der Netzwerkprobleme in den Randknoten des IoT bis zur Cloud in den schnell wachsenden Märkten Kommunikationstechnik, Computertechnik, Industrietechnik, Automobiltechnik und Verbraucherelektronik. Lattice bietet außerdem eine Reihe von Paketen mit Design- und Verifikationstools für verschiedene Design-Flows an: von sprachgesteuertem Design über Grafikprozessor-basiertes Design bis hin zu Designs, bei denen Maschinelles Lernen und Künstliche Intelligenz im Mittelpunkt stehen.

DigiKey logo

Haftungsausschluss: Die Meinungen, Überzeugungen und Standpunkte der verschiedenen Autoren und/oder Forumsteilnehmer dieser Website spiegeln nicht notwendigerweise die Meinungen, Überzeugungen und Standpunkte der DigiKey oder offiziellen Politik der DigiKey wider.

Über den Autor

Image of Max Maxfield

Clive „Max“ Maxfield

Clive „Max“ Maxfield erhielt 1980 seinen BSc in Regelungstechnik von der Sheffield Hallam University, England, und begann seine Karriere als Entwickler von Zentraleinheiten (CPUs) für Großrechner. Im Laufe der Jahre hat Max alles von Siliziumchips bis hin zu Leiterplatten und von Gehirnwellenverstärkern bis hin zu Steampunk-Prognosemaschinen (bitte nicht fragen) entwickelt. Darüber hinaus ist er seit mehr als 30 Jahren an der Spitze der Electronic Design Automation (EDA) tätig.

Max ist Autor und/oder Co-Autor einer Reihe von Büchern, darunter „Designus Maximus Unleashed“ (in Alabama verboten), „Bebop to the Boolean Boogie“ (Ein unkonventioneller Leitfaden zur Elektronik), „EDA: Where Electronics Begins“, „FPGAs: Instant Access“ und „How Computers Do Math“. Werfen Sie auch einen Blick auf seinen Blog „Max's Cool Beans“.

Über den Verlag

Nordamerikanische Fachredakteure von DigiKey