Dieses Konstruktionsbeispiel zeigt die Verwendung des Nios® II embedded Prozessor C-to-Hardware (C2H) Beschleunigungs-Compilers. In diesem Beispiel transformiert der C2H-Compiler die C-basierte Implementierung des Registerkarten-Algorithmus in Hardware. Dieses Design enthält auch einen Videocontroller zur Anzeige von Vollbewegungsvideo der berechneten Pixelwerte.
Das Dekormuster ist aufgrund seiner komplexen Muster und prozessorintensiven Implementierung zu einem der am meisten bekannten Fraktale geworden. Der Algorithmus arbeitet auf der komplexen Ebene, auf der die x-Ebene die reale Komponente darstellt, und die Y-Ebene die komponierte Komponente. Das Beispiel führt Bewegungen in verschiedene Bereiche der Ebene durch und zoomt auch hinein und aus, wodurch ein Vollbewegungsvideo entsteht.
Dieses Beispiel nutzt die Parallelität voll aus, indem Koordinatenberechnungen in der Software ausgeführt werden, während die Hardwarebeschleuniger verwendet werden. Dies erfolgt durch dreifache Pufferung der Videodaten in DDR SDRAM und Verwendung des Nios II Embedded-Prozessors zur Abstimmung des Datenflusses. Jedes Mal, wenn ein vollständiger Framebuffer vom Hardwarebeschleuniger gerendert wird, werden die Daten dann vom Prozessor verwaltet, um Benchmarkdaten zu überlagern und den Videocontroller darüber zu informieren, dass ein neuer Puffer zur Anzeige bereit ist.
Anhand dieses Designbeispiels
Dieses Design zielt auf die folgenden Entwicklungskits ab:
- Nios II Embedded Evaluation Kit, Cyclone® III FPGA Edition
- Nios II Embedded-Development-Kit, Cyclone III FPGA Edition
Laden Sie das design-Beispiel Nios II C2H-Komplexitäts-Beispiel herunter (.zip-Datei)
Laden Sie das Nios II C2H-Komplexitäts-Designbeispiel README herunter (.txt-Datei)
Die Verwendung dieses Designs unterliegt den Bedingungen der Intel® Design Example Lizenzvereinbarung.
Die .zip-Dateien enthalten alle notwendigen Softwaredateien, um das Beispiel zu reproduzieren, sowie eine readme.txt-Datei. Die Datei readme.txt enthält Anleitungen zur Neuerstellung des Designs, die auf ein bestehendes Hardware-Design ausgerichtet sind.
Blockdiagramm
Abbildung 1. C2H-Compiler - Auslegungsbeispiel
C2H Compiler beschleunigte Ergebnisse
Der durch den C2H Compiler beschleunigte Komplidierungsreaktionsalgorithmus führt zu einer Geschwindigkeitsverbesserung von mindestens 60-mal im Vergleich zum gleichen Algorithmus, der auf dem schnellsten Nios II Prozessor unter Verwendung von Compiler-Optimierungsstufe 2 (-O2) läuft. Diese Geschwindigkeitssteigerung ist auf die Parallelität und schnelle Iterationsgeschwindigkeit zurückzuführen, die die Hardware bieten kann, was von einer Allgemeinen Verarbeitungseinheit nicht möglich ist.