AI-translated from English; not yet reviewed by a fluent editor.

# So führen Sie den openTPU-Simulator aus und prüfen die FPGA-Anforderungen

> openTPU dokumentiert einen Python-Simulator für die Inferenz von Sprachmodellen und einen separaten Weg zu einer Inspur-Kintex-7-Karte. Dieser Leitfaden fasst die Befehle, die erwarteten Ausgaben und die Hardwareanforderungen aus dem Repository zusammen.

By BIG CHANGE Editorial

Published: 2026-10-07T13:36:01.795Z
Updated: 2026-10-07T13:36:01.795Z
Canonical: https://bigchange.ai/blog/opentpu-simulator-fpga-requirements-guide

![Conceptual charcoal illustration of one engineer holding and examining a PCIe FPGA accelerator card above an electronics work mat.](https://bigchange.ai/api/media/file/opentpu-fpga-card-hero-v2.png)
AI-generated conceptual illustration by BIG CHANGE, based on a reference photograph of the Inspur YPCB-00338 board. It does not depict a BIG CHANGE test or observed openTPU run.

Das [openTPU-Repository](https://github.com/FeSens/openTPU/tree/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93) vereint einen Python-Befehlssatzsimulator, einen Compiler, ein SystemVerilog-Design und FPGA-Hostwerkzeuge in einem Projekt. Die Autoren berichten, Sprachmodelle auf einer Inspur-Kintex-7-Karte ausgeführt zu haben. Für Entwickler von ML-Systemen oder FPGAs ist ein Software-Chatlauf mit echten Modellgewichten der zugänglichste Einstieg. Für den Einsatz desselben Projekts auf einer Karte kommen ein bestimmtes Board, lizenzierte Build-Werkzeuge und eine Linux-Hostkonfiguration hinzu. Dieser Leitfaden folgt dem Repository beim Commit `b9a3f3b` vom 7. Oktober 2026; BIG CHANGE hat es weder installiert noch simuliert oder getestet.

## Die große Veränderung

- **Was sich geändert hat:** openTPU veröffentlicht den Befehlssatz des Beschleunigers, den Simulator, den Compiler, das RTL und die Board-Integration zusammen. Ingenieure können den Weg von einer Modelloperation zu simulierten Befehlen untersuchen, bevor sie die unterstützte Karte erwerben.
- **Warum das wichtig ist:**Der dokumentierte Simulator bietet Hardware-Lernenden eine konkrete Möglichkeit, das Design zu untersuchen und ein kleines Sprachmodell mit gewöhnlicher Host-Software auszuführen. Das Projekt erklärt, dass KI-Agenten bei der Erstellung des Hardware-Stacks geholfen haben. Die einsehbaren Artefakte machen diese Entwicklungsbehauptung prüfbar; die gemeldeten Kartenergebnisse bleiben jedoch eigene Messungen des Projekts.
- **Worauf zu achten ist:**Für die Reproduktion des physischen Ergebnisses braucht es ein Kintex-7-Board, einen lizenzierten Vivado-Build und eine funktionierende PCIe-Inbetriebnahme. Das Repository stellt dafür Befehle und Selbsttests bereit. Ein unabhängiger Lauf mit einer festgelegten Revision würde zeigen, wie leicht andere Ingenieure das Ergebnis wiederholen können.

## Quellstand festlegen und den Softwarepfad wählen

Die folgenden Schritte beruhen auf dem Repository `main` beim [Commit `b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93`](https://github.com/FeSens/openTPU/commit/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93), der am 7. Oktober erstellt wurde. Das Repository enthält einen `v0.5`-Tag; dieser Leitfaden verwendet jedoch den späteren festgelegten Commit, weil dessen README einen neuen Abschnitt zur Validierung mit [Hugging Face](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/README.md#validating-against-hugging-face) enthält. Das Python-Paket weist sich in `0.1.0` weiterhin als Version [`pyproject.toml`](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/pyproject.toml) aus. Diese Paketnummer allein identifiziert den Quell-Snapshot nicht. Das Repository steht unter der Apache-2.0-Lizenz.

Sie benötigen Python 3.10 oder neuer. Das Paket deklariert `numpy` und `textual`; die README installiert für Tests und die Modellnutzung zusätzlich `pytest`, `torch` und `transformers`. Sie zeigt den Hugging-Face-Befehl `hf` zum Herunterladen eines Checkpoints nach `models/LFM2.5-230M` an. Prüfen Sie vor dem Download, ob `hf` in Ihrer Python-Umgebung verfügbar ist. Der Checkpoint ist eine Eingabe für den Chat-Befehl und kein mit dem Quellcode gebündeltes Modell. Das Projekt nennt für diesen Weg weder die gesamte Downloadgröße noch den Host-Speicherbedarf oder eine feste Simulatorlaufzeit.

Im Stammverzeichnis des Repositorys lautet die [dokumentierte Abfolge ](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/README.md#try-it):

```shell
git clone https://github.com/FeSens/openTPU.git
cd openTPU
git checkout b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93
pip install -e .
pip install pytest torch transformers
python3 -m pytest -q
hf download LiquidAI/LFM2.5-230M --local-dir models/LFM2.5-230M
otpu-chat --model lfm2 --backend isa
```

Die Checkout-Befehle fixieren die untersuchte Revision; Installations-, Test-, Download- und Chat-Befehle stammen aus der README. `--backend isa` wählt den Python-Befehlssatzsimulator aus. Die vollständige `pytest`-Testsuite enthält außerdem RTL-Tests, die Verilator 5 benötigen. Auf einem Rechner ohne dieses Werkzeug eignet sich die gesamte Suite daher nicht als reine Software-Erfolgskontrolle. Beim kleinsten dokumentierten interaktiven Lauf gilt ein geladener LFM2.5-230M-Checkpoint als Abschluss, gefolgt von einer Chat-Oberfläche, die eine Eingabe annimmt und Modelltext zurückgibt. Der genaue Wortlaut einer erzeugten Antwort hängt von Eingabe und Sampling ab. Die Quelle der [Chat-CLI](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/opentpu/host/chat.py) bietet außerdem `--plain` für eine Terminal-REPL und `--prompt` für eine einzelne Antwort. Letztere gibt Antwort und Turn-Statistiken aus. Das sind dokumentierte Schnittstellen, keine von BIG CHANGE beobachteten Ausgaben.

Die README nennt Qwen3-0.6B, LFM2.5-230M und Qwen3.5-0.8B als wichtige Chat-Optionen sowie mehrere größere Modelle. Jedes benötigt einen eigenen Checkpoint im vorgesehenen Modellverzeichnis oder einen ausdrücklich angegebenen Pfad. Der obige LFM2-Weg ist das kürzeste Modell-Downloadbeispiel des Repositorys. Die umfassenderen Ergebnisse der README behandeln zehn Modelle auf der Karte, darunter Gemma 4 und Modelle, die Expert-Offloading benötigen; für einige werden mehrere Gewichtsformate angegeben. Die Tabelle enthält Messungen der Autoren und verspricht nicht, dass jedes Modell mit dieser Ein-Befehl-LFM2-Einrichtung funktioniert.

## Was der Simulator prüft

Das Projekt beschreibt eine Kernel-Sprache und einen Compiler, die Befehle für seinen Beschleuniger erzeugen. Der Python-ISA-Simulator führt diese Befehle aus; das SystemVerilog-RTL ist die Hardwareimplementierung. Das [Systemschema der README](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/README.md#how-it-works) und [`opentpu/isasim.py`](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/opentpu/isasim.py) zeigen diese Grenze. Mit `otpu-chat` und `isa` läuft die Modellinferenz über den Software-Befehlspfad. Dabei wird weder ein FPGA programmiert noch der Durchsatz der Karte gemessen.

Die Maintainer berichten, dass ihre Karte dieselben Tokens wie der Simulator bitgenau ausgibt. Außerdem stellen sie ein [Validierungsskript](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/tools/validate.py) bereit, das ausgewählte Geräteläufe mit einer CPU-Referenz von Hugging Face vergleicht. Die festgelegte README beschreibt Standard-Prompts, Token- und Logit-Vergleiche sowie einen Kartenlauf vom 7. Oktober. Berichte und Code machen die Prüfungen nachvollziehbar. BIG CHANGE hat sie nicht wiederholt; sie belegen daher weder unabhängig die Genauigkeit noch die Geschwindigkeit.

## Was sich mit der physischen Karte ändert

Das [Board-Handbuch](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/docs/board.md) richtet sich an das **Inspur YPCB-00338** mit einem Xilinx Kintex-7 `xc7k480t-ffg1156-2`, zwei DDR3-Kanälen mit je 2 GiB und einer PCIe-Verbindung zu einem Host-PC. Der standardmäßige Bitstream-Build verwendet Vivado 2026.1. Laut Handbuch ist dieses Gerät in der kostenlosen Edition nicht enthalten; empfohlen werden eine kostenpflichtige Lizenz oder eine 30-tägige Evaluierung. Die [AMD-Gerätetabelle für 2026.1](https://docs.amd.com/r/en-US/ug973-vivado-release-notes-install-license/Device-Availability-by-Subscription-Tier?contentId=FXBYqlfi_pd_k5OTkJcJ1A) widerspricht dieser Geräteangabe: **Basic umfasst alle Kintex-7-Geräte**.

[AMD listet in seinen aktuellen Lizenzoptionen](https://www.amd.com/en/products/software/adaptive-socs-and-fpgas/vivado/vivado-licensing-options.html) Basic für 0 US-Dollar, mit Linux-Unterstützung und kostenloser jährlicher Verlängerung. Die [Lizenz-FAQ](https://www.amd.com/en/products/software/adaptive-socs-and-fpgas/licensing-faq.html) erklärt, dass Basic weiterhin eine gültige Jahreslizenzdatei benötigt; die separate Evaluierung mit vollem Funktionsumfang dauert **60 Tage**. Die [AMD-Funktionstabelle für 2026.1](https://docs.amd.com/r/en-US/ug973-vivado-release-notes-install-license/Supported-Devices-and-Features) führt JTAG-Programmierung in Basic auf, begrenzt jedoch die XSIM-Simulation und einige Debug-Funktionen. Höhere kostenpflichtige Stufen bieten zusätzliche Funktionen; laut AMD bleibt die IP-Lizenzierung unverändert. BIG CHANGE hat openTPU nicht mit Basic gebaut. Vor der Einstufung als kostenloser Build müssen die Werkzeug- und IP-Rechte für diesen Bitstream-Ablauf geprüft werden. Das Board-Handbuch veranschlagt für `make bit` 1,5 bis 3 Stunden, je nach Rechner. Weder das Handbuch noch AMDs Stufentabelle nennt einen Kaufpreis für diese Karte oder die Gesamtkosten einer Reproduktion.

Mit Board und Toolchain besteht der dokumentierte Board-Weg darin, einen Bitstream in `boards/ypcb-00338` zu erstellen, das FPGA per JTAG zu programmieren und den Linux-Host einzurichten. Das [`Makefile`](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/boards/ypcb-00338/Makefile) der Karte sendet `make bit`-Ausgaben an `build/vivado/otpu.bit`. `make program` verwendet standardmäßig openFPGALoader; das Handbuch beschreibt auch Vivados Hardware Manager. Eine JTAG-Ladung bleibt nach einem Aus- und Einschalten nicht erhalten.

```shell
cd boards/ypcb-00338
make lint
make bit
make program
```

Die obigen Hardware-Schritte stammen aus dem Board-Handbuch und wurden hier nicht getestet. Die Inbetriebnahme-Checkliste für den Linux-Host verlangt das Python-Paket und den Checkpoint, `sudo otpu-setup` zur Installation des XDMA-Treibers und der Gerätere geln, eine PCIe-Neuerkennung nach dem JTAG-Laden sowie `otpu-setup --check`. Laut Dokumentation wird der letzte Befehl mit „all in place“ erfolgreich beendet, wenn Treiber, Karte, Verbindung, Geräteknoten und ID-Register korrekt sind. Danach prüft `otpu-selftest` die Karte, bevor `otpu-chat --backend board --model lfm2` ausgeführt wird. Board-Diagnosen lassen sich mit `otpu-diag --json diag.json` speichern. Das sind konkrete Abschlusssignale für den Kartenpfad; ein ISA-Chat allein kann sie nicht ersetzen.

Auch die veröffentlichten Leistungswerte sind mit Vorsicht zu betrachten. Die README nennt etwa **82,1 Tokens pro Sekunde Wall-Time** für LFM2.5-230M mit 4-Bit-Gewichten und einem int8-Head auf der Karte der Autoren. Die Methode verwendet nach einem 512-Token-Prompt 64 Tokens mit Greedy-Decode. Die Tabelle unterscheidet Geräteschleifen von der Wall-Time einschließlich Host. Ein anderer Host, Bitstream, ein anderes Gewichtsformat oder ein anderer Prompt ergibt eine andere Messung. Die Commit-Nachricht vom 7. Oktober berichtet von zusätzlicher Qualifizierung auf der Karte, ist aber weiterhin ein Maintainer-Eintrag. Unter den für diesen Leitfaden geprüften Quellen gibt es keinen unabhängig reproduzierten Benchmark.

## Quellen und weiterführende Informationen

- [openTPU-Repository beim untersuchten Commit](https://github.com/FeSens/openTPU/tree/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93), 7. Oktober 2026. Die README enthält das Systemschema, Simulatorbefehle, die Modellliste und selbst berichtete Kartenmessungen. Die Ergebnisse sind Projektbehauptungen; BIG CHANGE hat das Repository nicht ausgeführt.
- [Python-Paketmetadaten](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/pyproject.toml) und [Apache-2.0-Lizenz](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/LICENSE). Sie belegen Python-Version, deklarierte Abhängigkeiten, CLI-Einstiegspunkte, Paketversion und Quelllizenz. Für Modell-Checkpoints und Vivado gelten eigene Bedingungen und Anforderungen.
- [Handbuch zur Inbetriebnahme von Board und Host](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/docs/board.md), geprüft am 7. Oktober 2026. Es beschreibt die unterstützte Karte, Bitstream-Schritte, Linux-Einrichtung, JTAG-Programmierung und Selbsttests. Die Hinweise auf eine kostenpflichtige Lizenz und eine 30-tägige Evaluierung widersprechen den aktuellen AMD-Lizenzdokumenten für 2026.1. Einige ältere Bitstream-Beispiele beziehen sich auf frühere Builds; verwenden Sie bei einer Reproduktion den festgelegten Quellbaum und die aktuellen Build-Anweisungen.
- [AMD Vivado 2026.1 Geräteverfügbarkeit, UG973](https://docs.amd.com/r/en-US/ug973-vivado-release-notes-install-license/Device-Availability-by-Subscription-Tier?contentId=FXBYqlfi_pd_k5OTkJcJ1A) und [unterstützte Geräte und Funktionen](https://docs.amd.com/r/en-US/ug973-vivado-release-notes-install-license/Supported-Devices-and-Features), beide vom 23. Juni 2026, sowie [Lizenzoptionen](https://www.amd.com/en/products/software/adaptive-socs-and-fpgas/vivado/vivado-licensing-options.html), geprüft am 7. Oktober. Diese Quellen ordnen alle Kintex-7-Geräte dem kostenlosen Basic zu, nennen Linux- und JTAG-Unterstützung und zeigen die Simulations- und Debug-Einschränkungen von Basic. Die [AMD-Lizenz-FAQ](https://www.amd.com/en/products/software/adaptive-socs-and-fpgas/licensing-faq.html) erläutert die jährliche Basic-Lizenzdatei und die 60-tägige Evaluierung. Die Geräteabdeckung allein bestätigt nicht, dass der vollständige Bitstream-Ablauf dieses Projekts unter Basic funktioniert.
- [Chat-CLI](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/opentpu/host/chat.py) und [LFM2-Leitfaden](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/docs/lfm2.md). Sie beschreiben die Backend-Auswahl, den Modellpfad, interaktive und einmalige Ausgaben sowie das kleine Checkpoint-Beispiel.
- [Der GIGAZINE-Bericht vom 7. Oktober](https://gigazine.net/gsc_news/en/20261007-opentpu) liefert Kontext für die öffentliche Aufmerksamkeit rund um das Projekt. Die Einrichtungs- und Leistungsangaben dieses Leitfadens wurden anhand des Repositorys geprüft und nicht aus dem Bericht übernommen.

## Sources

- [openTPU-README beim untersuchten Commit](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/README.md) — Primärer Überblick, Simulatorbefehle, Modellliste, gemeldete Kartenmessungen und Methodik. Ergebnisse und Beschreibung des KI-unterstützten Designs sind Projektbehauptungen.
- [openTPU-Board-Handbuch](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/docs/board.md) — Unterstützte Inspur-Karte, Gerät, DDR3, Vivado 2026.1, Build-/Programmier-/Host-Einrichtung und Prüfungen. Der Hinweis auf ausschließlich kostenpflichtige Lizenzen oder 30 Tage Evaluierung widerspricht AMDs Stufendokumenten für 2026.1. Historische Abschnitte enthalten ältere Bilder.
- [openTPU-Paketmetadaten und Chat-Quellcode](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/pyproject.toml) — Python-Mindestversion, deklarierte Abhängigkeiten, Paketversion, Lizenzangabe und CLI-Einstiegspunkte; der Chat-Quellcode belegt Backend-Optionen und die erwartete Ausgabeschnittstelle.
- [openTPU Apache-2.0-Lizenz](https://github.com/FeSens/openTPU/blob/b9a3f3bc98e7f74808fd5650bf9db33eaf7b2c93/LICENSE) — Lizenz des Projektquellcodes; daraus folgen keine Bedingungen für Modelle oder Vivado.
- [AMD Vivado 2026.1 Geräteverfügbarkeit nach Abonnementstufe (UG973)](https://docs.amd.com/r/en-US/ug973-vivado-release-notes-install-license/Device-Availability-by-Subscription-Tier?contentId=FXBYqlfi_pd_k5OTkJcJ1A) — AMDs Gerätetabelle für 2026.1 führt ausdrücklich alle Kintex-7-Geräte unter Basic auf; diese Abdeckung prüft nicht unabhängig den gesamten openTPU-Bitstream-/IP-Ablauf.
- [AMD Vivado 2026.1 unterstützte Geräte und Funktionen (UG973)](https://docs.amd.com/r/en-US/ug973-vivado-release-notes-install-license/Supported-Devices-and-Features) — Beim Start wird eine gültige Lizenzdatei benötigt; Basic umfasst JTAG-Programmierung, begrenzt aber XSIM-Simulation und einige Debug-Funktionen. Ein openTPU-Build unter Basic wird damit nicht bestätigt.
- [AMD Vivado Lizenzoptionen](https://www.amd.com/en/products/software/adaptive-socs-and-fpgas/vivado/vivado-licensing-options.html) — Basic kostet derzeit 0 US-Dollar, wird jährlich kostenlos verlängert und unterstützt Linux; die Funktionen unterscheiden sich nach Stufe, die IP-Lizenzierung bleibt unverändert. Das Stufenmodell beginnt mit 2026.1.
- [AMD-Lizenz-FAQ](https://www.amd.com/en/products/software/adaptive-socs-and-fpgas/licensing-faq.html) — Basic ab 2026.1 benötigt eine gültige Jahreslizenzdatei, die kostenlos erhältlich ist; eine separate Evaluierung mit vollem Funktionsumfang dauert 60 Tage.
- [GIGAZINE: Bericht über openTPU](https://gigazine.net/gsc_news/en/20261007-opentpu) — Nur als Kontext aus der Sekundärberichterstattung. Angaben zu Einrichtung und Leistung wurden anhand der primären Repository-Quellen geprüft.
