Radar van Elk Solutions

Hackaday · Creativiteit & ontwerp

Open-source FPGA-toolchains verkennen met APIO

APIO biedt een open-source toolchain voor FPGA's zoals de Tang Nano 20K, wat een alternatief is voor de propriëtaire software van GOWIN. Het aggregeert verschillende tools, vereenvoudigt workflows en integreert met populaire ontwikkelomgevingen.

APIO, geïnspireerd op PlatformIO, werkt via de commandoregel of een VS Code-extensie. Het beheert toolupdates en bibliotheken, hoewel systeemconflicten mogelijk zijn. APIO gebruikt zijn eigen kopieën van tools, wat mogelijk problemen kan veroorzaken met systeemversies.

Een basis APIO-project heeft een `apio.ini`-bestand nodig. Projectcreatie wordt vaak beheerd via het APIO-paneel van de VS Code-extensie. De toolchain ondersteunt zowel commandoregel- als VS Code-integratie.

De open-source toolchain blinkt uit in Verilog linting en simulatie. APIO vereenvoudigt het gebruik van krachtige simulatietools. GOWIN-tools bieden propriëtaire IP-integratie en logische analyzers.

GOWIN-tools bieden een GUI voor constraints, terwijl APIO tekstbestanden of spreadsheets gebruikt. De keuze hangt af van behoeften zoals prestaties of IP-toegang. Vergelijking van de prestaties van synthesestools vereist testen.

Een voorbeeld van een LED-knipperend ontwerp gebruikt APIO. De Verilog-module heeft parameters voor klokfrequentie en knipperinterval. Het programmeren van de klok omvat het gebruik van de `pll_clk`-opdracht via de seriële prompt van het bord.

De VS Code-extensie bouwt en uploadt ontwerpen. Configuratie maakt het programmeren van SRAM of flash mogelijk. Het wisselen van modi kan de APIO-shell vereisen.

Het testen van ontwerpen met testbenches wordt ondersteund via APIO's simulatie, die GTKWave-uitvoer genereert. Het artikel noemt ook live probing en toekomstige onderwerpen zoals metastabiliteit.

AI-samenvatting op basis van de bron.

Hackaday