Fast Simulation and Performance Estimation for Vector Co-Processors
Applikationsspezifische Prozessoren haben verschiedenste Anforderungen an Größe, Effizienz, Geschwindigkeit, Features, etc. Um Hardware für einen speziellen Bereich zu entwickeln, wird der Prozess der Design Space Exploration (DSE) verwendet, um schnell verschiedene Entwicklungsentscheidungen auszutesten und gewünschte Eigenschaften zu erfüllen. RISC-V ist eine Befehlssatzarchitektur, dessen modularer Aufbau mit verschiedenen Erweiterungen und Konfigurationen für diesen Zweck gut geeignet ist, es existiert jedoch Verbesserungspotential im Bereich der Software für die Entwicklung. Es fehlen Tools zwischen funktionalen Befehlssatzsimulatoren (in Folge Instruction Set Simulator (ISS)), welche zwar schnell sind, jedoch keine Auskunft über die Performanz der Hardware geben, und Hardwaresimulatoren, die sowohl Verhalten, als auch notwendige Taktzyklen wiedergeben, aber dafür langsam simulieren und eine detaillierte Hardwarebeschreibung benötigen. Für funktionale ISSs gibt es Methoden, die eine Abschätzung von Taktzyklen ermöglichen, und in dieser Arbeit wird der Ansatz untersucht, Instruktionen mit zusätzlichen Informationen zu versehen, um gleichzeitig die Funktionalität, sowie das zeitliche Verhalten mithilfe eines vereinfachten Prozessormodells zu simulieren. ETISS ist ein ISS, für welchen dieser Ansatz bereits erfolgreich für skalare Prozessorkerne eingesetzt wurde. Dabei wurde CorePerfDSL verwendet, eine Sprache, die dazu dient, das zeitliche Verhalten eines Prozessorskerns zu modellieren. Nun gibt es jedoch viele Programme, welche von Single Instruction, Multiple Data (SIMD) Instruktionen profitieren können, z.B. im Bereich des maschinellen Lernens, somit wäre die Abschätzung der Performanz von Vektor Co-Prozessoren ein logischer nächster Schritt. Daher wurde für diese Arbeit ein CorePerfDSL Modell eines skalaren RISC-V CV32E40P Kerns mit einer Vektoreinheit implementiert. Anschließend wurden sowohl Simulationsgeschwindigkeiten, als auch die Güte der Schätzung der Taktzyklen untersucht, indem resultierenden Werte mit einem anderen gängigen funktionalen ISS, sowie einer vollen Hardwaresimulation verglichen wurden. Es wurde gezeigt, dass es mithilfe von ETISS und CorePerfDSL (mit Änderungen) möglich ist, SIMD Instruktionen schnell zu simulieren und deren zeitliches Verhalten mit geringem Fehler zu schätzen.
Authors
- Daniel Schloms
Institutions
- TU Wien (AT)
Publication Details
- Journal
- reposiTUm (TU Wien)
- Published
- 2025-12-01
- DOI
- https://doi.org/10.34726/hss.2025.131180
- Primary Topic
- Embedded Systems Design Techniques
- Type
- article
- Field-Weighted Citation Impact
- 0.00