Was ist das BIT-Dateiformat?
Eine .bit-Datei ist ein binärer FPGA-Konfigurations-Bitstream, der von Xilinx (heute AMD) EDA-Tools erstellt wird. Sie kodiert die vollständigen Programmierdaten für ein FPGA-Gerät - Routing, Logikzellenkonfiguration, I/O-Einstellungen und RAM-Initialisierung - und wird in den Chip geladen, um dessen Hardwareverhalten zu definieren.
Die Datei hat eine zweiteilige Struktur: einen ASCII-TLV-Header (Tag-Length-Value) variabler Länge, der den Designnamen, das Zielgerät sowie Datum/Uhrzeit der Erstellung aufzeichnet, gefolgt vom binären Bitstream-Payload. Der Payload beginnt mit 0xFF Dummy-Padding-Bytes, gefolgt vom Sync-Wort 0xAA995566, und dann Konfigurationspaketen vom Typ-1 und Typ-2, die in interne FPGA-Register (FAR, FDRI, CMD, IDCODE) schreiben.
Die AMD Vivado Design Suite generiert .bit-Dateien für FPGAs der 7er-Serie, UltraScale und UltraScale+. Die veraltete ISE Design Suite (v14.7, weiterhin herunterladbar, aber keine neuen Veröffentlichungen seit 2013) erzeugt .bit-Dateien für ältere Familien wie Spartan-6 und Virtex-4/5/6. Für Versal-Geräte ist der Nachfolger .pdi. Verwandte Formate umfassen .bin (roher Bitstream ohne den TLV-Header, verwendet für die SPI-Flash-Programmierung).
Optionale AES-256-Verschlüsselung und HMAC-Authentifizierung schützen vor IP-Diebstahl. Ein CRC wird an den Bitstream angehängt; der FPGA verifiziert diesen während des Ladevorgangs der Konfiguration. Open-Source-Tools wie openFPGALoader und xc3sprog können FPGAs direkt aus .bit-Dateien programmieren.
Sicherheit
RISIKO: LOWBinärdatei, die nur FPGA-Hardware konfigurieren kann - kann nicht auf einer PC-CPU ausgeführt werden. Kein Malware-Risiko beim Öffnen der Datei in einem Viewer. Das Laden eines bösartigen Bitstreams auf FPGA-Hardware könnte die Hardwarefunktion untergraben, dies ist jedoch ein Szenario für einen Angriff mit physischem Zugriff.
Formatdetails
kurz gefasst- X11 Bitmap (XBM) - Einige Quellen bringen .bit mit dem X11-Bitmap-Bildformat (Plain-Text-ASCII-Pixelkunst) in Verbindung; dies ist selten und das Format verwendet normalerweise .xbm.
- BitTorrent unvollständiger Download - Einige BitTorrent-Clients verwenden .bit als Markierung für Teil-Downloads - steht in keinem Zusammenhang mit FPGAs.
Programme zum Öffnen von BIT-Dateien
Technische Details
technische Spezifikation| Kodierung | Binär |
| Byte-Reihenfolge | Big-endian (32-Bit-Konfigurationspakete) |
| Header-Format | ASCII TLV - Felder: «a» Designname, «b» Zielgerät, «c» Erstellungsdatum, «d» Uhrzeit, «e» Payload-Bytelänge |
| Sync-Wort | 0xAA995566 - markiert den Beginn des binären Bitstream-Payloads |
| Bitstream-Präambel | 0xFF Dummy-Bytes vor dem Sync-Wort |
| Verschlüsselungsunterstützung | Optional AES-256; Verschlüsselungsschlüssel in BBRAM oder eFUSE auf dem Gerät gespeichert |
| Authentifizierung | Optional HMAC für verschlüsselte Bitstreams |
| Integritätsprüfung | CRC am Ende des Bitstreams angehängt; FPGA verifiziert beim Laden der Konfiguration |
| Kompressionsoption | Vivado unterstützt optionale komprimierte Bitstreams für ausgewählte Gerätefamilien |
| FPGA-Familien | Spartan-6 (ISE); 7er-Serie, UltraScale, UltraScale+ (Vivado) |
| Typische Dateigröße | 300 KB - 100 MB (Spartan: ~300 KB; große UltraScale+: 50-100 MB) |
| Erstellungstools | AMD Vivado (aktuell); Xilinx ISE 14.7 (veraltet, keine Releases seit Oktober 2013) |
| Alternatives Rohformat | .bin - kein TLV-Header; verwendet für direkte SPI-Flash-Programmierung |
| Versal-Nachfolgeformat | .pdi (Program Device Image), eingeführt mit der Versal ACAP-Familie im Jahr 2020 |
| Veröffentlicht | ~1985 (with early Xilinx FPGA toolchain) |
| Neueste Version | Vivado 2025.1 bitstream (7-series, UltraScale, UltraScale+, Versal) |
| Spezifikation | docs.amd.com |
BIT-Konvertierungen
Community Q&A
von Nutzern gefragtNoch keine Fragen - stellen Sie die erste Frage zu BIT-Dateien.