Vad är filformatet BIT?
En .bit-fil är en binär FPGA-konfigurationsbitström skapad av Xilinx (numera AMD) EDA-verktyg. Den kodar den fullständiga programmeringsdatan för en FPGA-enhet - routing, logikcellskonfiguration, I/O-inställningar och RAM-initialisering - och laddas in i chippet för att definiera dess hårdvarubeteende.
Filen har en tvådelad struktur: ett ASCII TLV-huvud (Tag-Length-Value) med variabel längd som registrerar designnamn, målenhet och byggdatum/tid, följt av den binära bitströmsnyttolasten. Nyttolasten börjar med 0xFF dummy-utfyllnadsbytes, sedan synkroniseringsordet 0xAA995566, följt av typ-1 och typ-2 konfigurationspaket som skriver till interna FPGA-register (FAR, FDRI, CMD, IDCODE).
AMD Vivado Design Suite genererar .bit-filer för 7-serien, UltraScale och UltraScale+ FPGA:er. Äldre ISE Design Suite (v14.7, fortfarande nedladdningsbar men inga nya releaser sedan 2013) skapar .bit-filer för äldre familjer som Spartan-6 och Virtex-4/5/6. För Versal-enheter är efterföljaren .pdi. Relaterade format inkluderar .bin (rå bitström utan TLV-huvud, används för SPI-flashprogrammering).
Valfri AES-256-kryptering och HMAC-autentisering skyddar mot IP-stöld. En CRC bifogas bitströmmen; FPGA:n verifierar denna under laddning av konfigurationen. Verktyg med öppen källkod som openFPGALoader och xc3sprog kan programmera FPGA:er direkt från .bit-filer.
Säkerhet & trygghet
RISK: LOWBinär fil som endast kan konfigurera FPGA-hårdvara - kan inte köras på en PC-processor. Ingen risk för skadlig kod genom att öppna filen i en visare. Att ladda en skadlig bitström till FPGA-hårdvara skulle kunna undergräva hårdvarans funktion, men detta kräver fysisk åtkomst.
Formatdetaljer
i ett nötskal- X11 Bitmap (XBM) - Vissa källor associerar .bit med bildformatet X11 bitmap (pixelkonst i klartext-ASCII); detta är sällsynt och formatet använder normalt .xbm.
- BitTorrent ofullständig nedladdning - Vissa BitTorrent-klienter använder .bit som markör för delvis nedladdning - orelaterat till FPGA.
Program som öppnar BIT-filer
Tekniska detaljer
djup specifikation| Kodning | Binär |
| Byteordning | Big-endian (32-bitars konfigurationspaket) |
| Header-format | ASCII TLV - fält: «a» designnamn, «b» målenhet, «c» byggdatum, «d» byggtid, «e» nyttolastens längd i bytes |
| Synkroniseringsord | 0xAA995566 - markerar starten på den binära bitströmsnyttolasten |
| Bitstream-preamble | 0xFF dummy-bytes som föregår synkroniseringsordet |
| Krypteringsstöd | Valfri AES-256; krypteringsnyckel lagrad i BBRAM eller eFUSE på enheten |
| Autentisering | Valfri HMAC för krypterade bitströmmar |
| Integritetskontroll | CRC bifogas i slutet av bitströmmen; FPGA verifierar vid laddning |
| Komprimeringsalternativ | Vivado stöder valfria komprimerade bitströmmar för utvalda enhetsfamiljer |
| FPGA-familjer | Spartan-6 (ISE); 7-serien, UltraScale, UltraScale+ (Vivado) |
| Typisk filstorlek | 300 KB - 100 MB (Spartan: ~300 KB; stor UltraScale+: 50-100 MB) |
| Genereringsverktyg | AMD Vivado (nuvarande); Xilinx ISE 14.7 (föråldrad, inga releaser sedan oktober 2013) |
| Rått format-alternativ | .bin - inget TLV-huvud; används för direkt SPI-flashprogrammering |
| Versal efterföljarformat | .pdi (Program Device Image), introducerat med Versal ACAP-familjen 2020 |
| Släppt | ~1985 (with early Xilinx FPGA toolchain) |
| Senaste version | Vivado 2025.1 bitstream (7-series, UltraScale, UltraScale+, Versal) |
| Specifikation | docs.amd.com |
BIT-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om BIT-filer.
Vanliga frågor
Vad är en .bit-fil?
Hur öppnar eller visar jag en .bit-fil?
Vad är skillnaden mellan .bit och .bin för Xilinx FPGA:er?
.bit inkluderar ett ASCII-metadatahuvud (designnamn, enhet, datum); .bin är endast den råa bitströmsnyttolasten, som används för direkt SPI-flashprogrammering. Samma konfigurationsdata, olika omslag.