Entwurf des digitalen Modells eines 68030 kompatiblen Complex Instruction Set Computer in VHDL. Beleuchtung von Aspekten aus Programmierer-, Anwender und Ingeniueurssicht und daraus resultierende Anforderungen an das digitale Design.
Digitale Modellierung einer 68030 kompatiblen CISC-CPU 68K30 - Digitale Modellierung einer 68030 kompatiblen Complex Instruction Set Computer CPU Der 68030 von Motorola war Mitte der 90er Jahre eine weit verbreitete, leistungsfähige CISC-CPU. Merkmale wie On-Chip Cache, Memory Management Unit, Coprozessor-Schnittstelle, Dynamic Bus Sizing und ihre quadratische 32 Bit Register- Architektur in Verbindung mit einem umfangreichen Befehlssatz waren ihr Erfolgsrezept. Im Vortrag wird beleuchtet, wie diese CPU aufgebaut ist, und welche Konsequenzen dies auf die digitale Modellierung hat. Es wird vermittelt, wo die Grenzen und die Chancen eines solchen Intellectual Property IP-Core liegen.
Digitale Modellierung einer 68030 kompatiblen CISC-CPU Gliederung • Die 68xx CPUs • Architektur der 68030 im Vergleich zur 68000 • Die digitale Modellierung von CPUs • Details zur Modellierung des 68K30 (68K30 im FPGA) • Validierung der modellierten Hardware • Projektfortschritt / Ergebnisse • Chancen und Grenzen der abstrakten Modellierung • Ausblick
Digitale Modellierung einer 68030 kompatiblen CISC-CPU Modelliersprache VHDL • VHDL = Very High Speed Integrated Circuit Hardware Description Language • Erste Veröffentlichung 1998 als Ergebnis der Zusammenarbeit zwischen IBM Texas Instruments und Intermetrics. • Standardisiert nach IEEE 1976.1 erstmalig 1987 dann 1993... • Heute: in Europa weit verbreitete Sprache zur Modellierung und Simulation digitaler Schaltungen. • Alternativen: Verilog, eher in USA verbreitet.
Digitale Modellierung einer 68030 kompatiblen CISC-CPU Eigenschaften des 68K30 IP-Core • Modularer Aufbau (ALU, Exception Handler, Bus Controller, MMU, Cache... • Pipelined Architektur. • Parametrierbare Caches. • Vollständiger, dem Original entsprechender Entwurf (MMU, Icache, Dcache, Coprozessor-Schnittstelle) • Derzeit (Stand Mai 2014) ca. 15.000 Codezeilen. • Stand Mai 2014: • Alle Module sind fertig modelliert. • Alle Integer Instruktionen außer MMU und Coprozessor Interface sind validiert. • Die CPU hat derzeit einen Ressourcenbedarf von 4.382 Flip Flops, 19995 kombinatorischen Funktionen und RAM für die Caches.
Digitale Modellierung einer 68030 kompatiblen CISC-CPU Validierung komplexer Designs • Modellierung von digitalen Schaltungen in VHDL (Hardware). • Entwurf einer Mini-Prozessorumgebung (Hardware) • Einarbeiten der Prozessorumgebung in eine Simulations- Testbench (Validierung) • Schreiben von Testprogrammen (Software), die auf dem Prozessor Funktionen abprüfen. • Durchführen der Simulation und Auswertung der Ergebnisse. • Gegebenenfalls Schaltung verändern / korrigieren.
Digitale Modellierung einer 68030 kompatiblen CISC-CPU Chancen und Grenzen der Implementierung Chancen • Erweiterung zum 68K40 • Parametrierbare Caches • Erweiterung um maßgeschneiderte Peripherie • Nahezu hardwareunabhängiges Design • Ergänzung des Befehlssatzes um CPU32 oder IO Funktionen • Erweiterung zu SOPCs (Suska) • Funktionselektronik (generisch) Grenzen • Maximal erzielbare Taktfrequenzen geringer als bei konventionellen CPUs • Aufwand der digitalen Modellierung für komplexe CPUs ist sehr hoch • Validierung komplexer Prozessoren ist aufwändig.
Digitale Modellierung einer 68030 kompatiblen CISC-CPU Ausblick Durch die digitale Modellierung von Systems on Programmable Chips ist es möglich geworden, die Funktionen klassischer Hardware auf modernen FPGAs abzubilden und mit neuen Funktionen zu kombinieren. Im Beispiel rechts: Zielhardware eines Atari Falcon mit WLAN, Bluetooth und GPS Empfänger. 89mm Suska-III-T2