Dieses Video dokumentiert den gesamten Entwurf, die Synthese, das Tape-out und die erfolgreiche Inbetriebnahme eines kundenspezifischen Mikroprozessors (BTAP) auf Basis einer Transport-Triggered Architecture (TTA). Der Entwickler nutzte die hardwarenahe Beschreibungssprache Spade, die Open-Source-EDA-Toolchain LiberLane sowie den 180-Nanometer-Prozess von GlobalFoundries über den Multi-Project-Wafer-Dienst wafer.space. Nach erfolgreicher Fertigung und Chip-on-Board-Verdrahtung konnte der Mikroprozessor nach Behebung von Masseproblemen auf einem Testaufbau erfolgreich in Betrieb genommen werden.
Wichtigste Punkte & Zeitstempel
0:00 Transport Triggered Architecture (TTA): Der Prozessor setzt auf TTA statt konventioneller Befehlssatzarchitekturen, wodurch die Komplexität bezüglich Datenbewegung und Befehlsplanung auf den Compiler verlagert wird.
3:56 Spade HDL: Als Hardwarebeschreibungssprache (HDL) wird Spade verwendet, eine Rust-inspirierte Sprache, die sowohl kombinatorische als auch sequentielle Logik (D-Flip-Flops) unterstützt.
13:21 Technische Spezifikationen des BTAP-Chips: Der Prozessor erreicht eine Taktfrequenz von 18 bis 20 MHz, verfügt über zwei 32-bit-Datenbusse, verarbeitet zwei Instruktionen pro Taktzyklus (superskalare Architektur) und bietet 4 KB allgemeinen RAM sowie 2.048 Programmanweisungen.
16:38 Open-Source EDA-Toolchain (LiberLane): Der physische Entwurf wird über LiberLane automatisiert, wobei Yosys für die Synthese, ABC für die Optimierung und OpenRoad (mit dem "Replace"-Algorithmus zur globalen Platzierung) eingesetzt werden.
21:48 Physische Verifikation (DRC & LVS): Vor dem Tape-out werden Design Rule Checks (DRC) und Layout-versus-Schematic-Extraktionen (LVS) durchgeführt, um die geometrische und elektrische Integrität auf dem 180-nm-Prozess sicherzustellen.
25:43 Packaging und Chip-on-Board (COB): Die Bare Dies werden mittels Chip-on-Board-Technologie (Drahtbonden auf Platinen mit Epoxidharz-Schutz) kosteneffizient verpackt.
26:37 Erste Inbetriebnahme (Chip Bring-up): Ein Raspberry Pi Pico dient als Firmware-Bootloader; nach Behebung von anfänglichen Masseproblemen auf dem Steckbrett führt der Mikroprozessor erfolgreich einfache Zähl- und ALU-Programme aus.
Glossar
Transport-Triggered Architecture (TTA): Eine Prozessorarchitektur, bei der Berechnungen direkt durch das gezielte Bewegen von Daten in die Eingangsports von Funktionseinheiten (z. B. eines Addierers) ausgelöst werden, anstatt traditionelle Befehlssätze zu verwenden.
Spade: Eine moderne, von der Programmiersprache Rust inspirierte Hardwarebeschreibungssprache (HDL) zur Erstellung von digitaler Logik.
FPGA (Field Programmable Gate Array): Ein integrierter Schaltkreis, dessen interne Logikstruktur nach der Herstellung vom Anwender frei konfiguriert werden kann.
ASIC (Application-Specific Integrated Circuit): Ein fest verdrahteter Mikrochip, der für eine ganz spezifische Anwendung maßgeschneidert und in Serie gefertigt wurde.
Synthese (EDA): Der automatisierte Prozess, der den Code einer Hardwarebeschreibungssprache in ein physisches Netz von logischen Standardzellen (wie UND- und ODER-Gatter) übersetzt.
OpenRoad: Ein Open-Source-Software-Framework, das den gesamten physischen Entwurfsprozess eines Mikrochips (von der Platzierung bis zum Routing) automatisiert.
DRC (Design Rule Checks): Eine automatisierte Prüfung des Layouts, um sicherzustellen, dass alle geometrischen und physikalischen Fertigungsregeln des Halbleiterherstellers eingehalten werden.
LVS (Layout Versus Schematic): Ein Validierungsschritt, der das physikalische Transistor-Layout mit dem ursprünglichen logischen Schaltplan vergleicht, um elektrische Fehler auszuschließen.
GDS (Graphic Data System): Ein Standard-Dateiformat, das die exakten geometrischen Polygone eines Mikrochip-Layouts für die Produktion in der Halbleiterfabrik enthält.
Chip-on-Board (COB): Eine kostengünstige Packaging-Methode, bei der der nackte Halbleiterchip direkt auf die Platine geklebt, elektrisch kontaktiert (drahtgebondet) und mit Epoxidharz geschützt wird.
D-Flip-Flop: Eine grundlegende elektronische Schaltung (Speicherzelle) in der digitalen Logik, die ein einzelnes Bit an Information für die Dauer eines Taktzyklus speichern kann.
Pipelining: Eine Technik zur Leistungssteigerung, bei der komplexe kombinatorische Rechenpfade durch Zwischenspeicher (Register) in mehrere aufeinanderfolgende Stufen unterteilt werden.