Pif: FPGA für den Raspberry Pi

Der Pif ist ein preiswertes FPGA-Shield für den Raspberry Pi. Es dient dem Einplatinenrechner als Hardware-Beschleuniger und ist auch mit Python, der Haussprache des RasPi programmierbar.

In Pocket speichern vorlesen Druckansicht 73 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Olaf Göllner

Der Hersteller Bugblat bietet mit dem Pif ein preiswertes FPGA-Shield für den Raspberry Pi auf Basis des MachXO2-FPGA von Lattice. Damit ist der RasPi in der Lage, rechenintensive Aufgaben auf den FPGA auszulagern. Ein FPGA (Field Programmable Gate Array) ist ein integrierter Schaltkreis, der mittels Programmierung eine Logikschaltung realisiert. Der Pif ist in zwei Versionen erhältlich, die nach dem verwendeten FPGA-Chip benannt sind. Der Preis für den Pif-1200 beträgt 25 US-Dollar, der größere Pif-7000 kostet 36 US-Dollar.

Die Stromversorgung der Platine übernimmt der Raspberry Pi. Anstatt der üblichen Programmierung in VHDL oder Verilog ist der FPGA auch über das Python-basierte MyHDL programmierbar. Ein zusätzlicher JTAG-Adapter ist nicht notwendig, die Programmlogik wird vom RasPi über eine Python-Software auf den FPGA geschrieben.

Die weiße Pif-Platine erweitert den Raspberry Pi um eine eigene FPGA-Einheit.

Der Pif-1200 basiert auf dem XO2-1200HC FPGA und verfügt über 1280 4-Input-LUTs, sowie sieben 9-Kbit-SRAM-Einheiten, zudem ist ein PLL enthalten. Der leistungsfähigere Pif-7000 verwendet den XO2-7000HC FPGA mit 6864 4-Input-LUTs und 26 9-Kbit-SRAM-Einheiten und verfügt über zwei PLL. 256 Kbit Flash-Speicher stehen für eigene Programmlogik zur Verfügung. Ein eigener Bereich (Embedded Function Block) beinhaltet einen SPI-Bus und zwei I2C-Busse, sowie einen 16-Bit-Timer/Counter.

Die Kommunikation zwischen Raspberry Pi und FPGA übernimmt ein MCP23008 von Microchip, es handelt sich dabei um einen 8-Bit-I2C-Portexpander. Mit dem Board stehen Bastlern 47 Anschlüsse verteilt auf drei Schnittstellen (1× 26 Pin, 1× 13 Pin, 1× 8 Pin) zur Verfügung. (ogo)