Verilog-till-routing

Verilog till routing
Utvecklare VTR:s utvecklingsteam
Stabil frisättning
8.0.0 / 24 mars 2020 ; för 2 år sedan ( 2020-03-24 )
Förvar
Skrivet i C / C++
Operativ system Unix-liknande
Typ Elektronisk designautomation
Licens MIT-licens
Hemsida verilogtorouting .org

Verilog-to-Routing (VTR) är ett CAD- flöde med öppen källkod för FPGA -enheter. VTR:s huvudsakliga syfte är att kartlägga en given krets som beskrivs i Verilog , ett Hardware Description Language , på en given FPGA-arkitektur för forsknings- och utvecklingsändamål; FPGA-arkitekturen kan vara en ny arkitektur som en forskare vill utforska, eller det kan vara en befintlig kommersiell FPGA vars arkitektur har fångats i VTR-inmatningsformatet. VTR-projektet har många bidragsgivare, med ledande samarbetande universitet är University of Toronto , University of New Brunswick och University of California, Berkeley . Ytterligare bidragsgivare inkluderar Google , University of Utah , Princeton University , Altera , Intel , Texas Instruments och MIT Lincoln Lab .

VTR flöde

VTR-designflödet består vanligtvis av tre huvudkomponentapplikationer: ODIN II som kompilerar Verilog-kod till en krets i Berkeley Logic Interchange Format (BLIF), en grafisk representation av kretsen som kan läsas av människor; ABC som optimerar BLIF-kretsen producerad av ODIN II; och VPR som packar, placerar och dirigerar den optimerade kretsen på den givna FPGA-arkitekturen. Det finns några extra valfria verktyg som kan bearbeta VTR-utgången ytterligare. Till exempel kan FASM FPGA Assembly-verktyget producera programmeringsbitströmmar för vissa kommersiella FPGA:er (Xilinx Artix och Lattice ice40) i slutet av VTR-flödet, medan OpenFPGA-verktyget integreras med VTR för att producera en standardcelllayout för en roman (föreslagen) FPGA. Det är också möjligt att använda olika verktyg för det första (HDL-syntes) steget av VTR-flödet; Titan Flow använder till exempel Quartus för att utföra HDL till logisk syntessteget, och sedan VPR för att utföra placering och routing, medan Symbiflow använder Yosys syntesverktyg följt av VPR-placering och routing.

ODIN II

ODIN II är HDL- kompilatorn för VTR-flödet. Den omvandlar en given Verilog-kod till en BLIF-krets, utför kod- och kretsoptimeringar, visualiserar kretsar och utför partiell mappning av logik till tillgängliga hårda block av den givna arkitekturen. Den kan också simulera utförande av kretsar både för validering och effekt, prestanda och värmeanalys. ODIN II underhålls av University of New Brunswick .

ABC

ABC optimerar BLIF-kretsar genom att utföra logikoptimering och teknologisk kartläggning. ABC underhålls av University of California, Berkeley .

VPR

Versatile Place and Route (VPR) är den sista komponenten i VTR. Dess ingång är en BLIF-krets, som den packar, placerar och dirigerar på en ingångs-FPGA-arkitektur.

Under packning klustras angränsande och relaterade logiska element i kretsen samman till logiska block som matchar FPGA:ns hårdvara. Under placeringen tilldelas dessa logiska block såväl som hårda block till de tillgängliga hårdvaruresurserna för FPGA. Slutligen, under dirigering görs signalförbindelserna mellan blocken. VPR är i första hand utvecklad av University of Toronto , med bidrag från många andra universitet och företag.

FASM

Verktyget FPGA Assembly (genfasm) kommer att producera en programmeringsbitström från en VTR-implementering (placering och routing av en krets) på kommersiella arkitekturer för vilka kompletta VTR-arkitekturfiler som beskriver FPGA-enheten har producerats. För närvarande inkluderar detta familjerna Xilinx Artix och Lattice ice40 FPGA. Detta verktyg är främst utvecklat av Google .

Se även

externa länkar