Schwerpunkte

Das Edge braucht neue FPGAs

Eine Evolution reicht nicht, eine Revolution ist notwendig

19. November 2020, 10:12 Uhr   |  Von Harald Werner, European Sales Director bei Efinix


Fortsetzung des Artikels von Teil 1 .

Anschluss von Kamerasensoren

Viele Edge-Applikationen sind mit Kamerasensoren ausgestattet, die für den Edge-Bereich oft eine MIPI-CSI2-Schnittstelle aufweisen. Abhängig von der Auflösung/Framerate werden hier eine bis vier Lanes benötigt. Die Trion-FPGAs ab 13k Logik-Elementen sind mit fest verdrahteten MIPI-CSI2-Interfaces ausgestattet; jede Schnittstelle kann MIPI-CSI2 mit einer Geschwindigkeit von bis zu viermal 1,5 Gbit/s empfangen und senden. Dank der fest verdrahteten Schnittstelle ist die Benutzung einfacher und der Stromverbrauch geringer. Zusätzlich stehen noch bis zu 120k Logik-Elemente für die Bearbeitung der Daten zur Verfügung.

Sollten die Daten in einem externen DDR-Speicher zwischengespeichert werden, steht ebenfalls ein fest verdrahteter Memory Controller zur Verfügung, der über AXI an die FPGA-Fabrik angeschlossen ist. Der DDR Memory Controller ermöglicht die Anbindung von DDR3, LPDDR3 sowie LPDDR2 mit Geschwindigkeiten von bis zu 1066 Mbit/s.

Für die Implementierung von Filtern oder mathematischen Funktionen stehen bis zu 320 dedizierte 18×18-bit-Multiplizierer zur Verfügung.
Daten können im FPGA in Speicherblöcken gespeichert werden, denn die Quantum-Architektur verfügt über 5 kbit große Dual-Port-RAM-Blöcke, die zu größeren Speicherblöcken zusammengeschaltet werden können. Insgesamt stehen bis zu 5,4 Mbit Speicher intern zur Verfügung. Die Verwendung von kleineren Memory-Blöcken hat den Vorteil, dass auch kleinere Speicher effizient implementiert werden können. Denn werden beispielsweise nur 3-kbit-Speicher benötigt, sind bei einem 5-kbit-Block nur 2kbit überflüssig, bei einem 18-kbit-Block werden 15 kbit verschwendet.
Außerdem profitieren KI-Anwendungen auf Basis von neuronalen Netzen besonders von kleineren Speicherblöcken, denn abhängig von der Implementierung (z.B Resource Sharing) werden verschieden große Speicherbereiche benötigt, die aus den Memory-Blöcken zusammengesetzt werden können. Mit kleineren Blöcken kann dies je nach benötigter Speichergröße effizienter realisiert werden.

Die FPGAs stehen je nach Ausstattung und Komplexität in unterschiedlich großen BGA-Gehäusen mit 49 bis 767 Pins zur Verfügung, wobei dieselben FPGAs auch in verschiedenen Gehäusegrößen angeboten werden. Alle Bausteine werden im kommerziellen und im industriellen Temperaturbereich angeboten.

Quantum-Architektur
© Efinix

Quantum-Architektur

Design-Umgebung

Die Efinity-Software ist ein Design-Flow mit Verilog (95/2k), System Verilog (2005/2009) und VHDL (1993/2008) für die Synthese. Das eigene Synthese-Tool optimiert das Design auf die zur Verfügung stehenden Ressourcen im FPGA und generiert eine Verilog-Netzliste, die mit herkömmlichen Simulatoren funktional simuliert werden kann. Das Place & Route Tool verteilt und verbindet die Module auf dem Chip. Dabei ist der Placer auch dafür verantwortlich, welche Elemente als Logik oder Routing benutzt werden. Durch die Analyse des Designs werden Bereiche mit erhöhten Verbindungen erkannt und entsprechend mehr Routing-Ressourcen in diesen Bereichen zur Verfügung gestellt.

Das Timing des Bausteines wird über SDC Constraints mithilfe eines Static Timing Analyzer überprüft. Für ein besseres Debugging des Designs im Baustein kann ein Debugger automatisch eingebunden werden. Die zu beobachteten Signale sowie die Signale für die Triggerung des Logik-Analyzer müssen lediglich angegeben werden.
Im Unterschied zu herkömmlichen Design Flows hat Efinity noch einen Interface Designer im Core Designer eingebettet. Hier können die I/Os des FPGA belegt sowie die PLLs, MIPI und Memory Controller konfiguriert werden, ohne eine Zeile HDL zu schreiben.

Zur schnelleren Überprüfung der Hardware stehen verschiedene Evaluierungs-Boards zur Verfügung, die den Freischaltcode für die Design-Umgebung sowie ein Jahr Wartung umfassen. Die Software läuft aber noch über den Wartungszeitraum hinaus.
Als Entwicklungsunterstützung bietet Efinix auch IP Cores für die Trion-FPGAs an. Als Soft-IP Core unterstützt Efinix RISC-V. Hier wurden drei verschiedene Konfigurationen vorbereitet, die für die verschiedenen Anwendungen optimiert sind. Die größte Konfiguration ist Ruby, bei der neben den verschiedenen Schnittstellen wie SPI, I2C, UART, Timer auch der DDR Memory Controller eingebunden ist.

Weitere Schnittstellen bzw. Funktionen können über den AXI- bzw. APB3-Bus angeschlossen werden. Ruby kann mit ca. 100 MHz betrieben werden. Die kleinste Lösung wiederum ist Opal. Dabei handelt es sich um eine Cacheless-Lösung mit SPI, I2C, Timer, UART, die auch in einem Baustein mit 8k Logikelementen Platz hat.
Neben anderen kleineren IPs wie FIFO, SDRAM-Controller, I2C bietet Efinix auch ein Triple-Speed MAC IP für seine Trion-Familie an. Dazu kommen noch weitere IP Cores von 3rd-Party-Unternehmen.

Seite 2 von 2

1. Eine Evolution reicht nicht, eine Revolution ist notwendig
2. Anschluss von Kamerasensoren

Auf Facebook teilen Auf Twitter teilen Auf Linkedin teilen Via Mail teilen

Das könnte Sie auch interessieren

Verwandte Artikel

elektroniknet