Zum Inhalt springen

Application-specific instruction-set processor

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 13. Januar 2008 um 11:12 Uhr durch Greifensee (Diskussion | Beiträge) (Kategorie). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Ein Applikationsspezifischer Instruktionssatzprozessor (übliches Synonym: Applikationsspezifischer Integrierter Prozessor bzw. engl.: Application-Specific Instruction Set Processor) ist eine CPU, deren Befehlssatz für eine spezielle Anwendung optimiert wurde.

Unter dem Begriff "Anwendung" oder "Applikation" versteht man dabei einen bestimmten Algorithmus, also beispielsweise eine schnelle Fouriertransformation oder einen Sortieralgorithmus. Der Zweck eines ASIPs besteht darin, einen solchen Algorithmus effizient mit einer digitalen Schaltung zu realisieren. Üblicherweise verwendet man dazu eine ASIC-Technologie und eine Hardwarebeschreibungssprache, in der man das Verhalten des ASIPs beschreibt. Je nach Zielvorgabe möchte man dabei verschiedene Parameter wie benötigte Siliziumfläche, Energieverbrauch oder Rechenzeit optimieren.

Für viele Anwendungen erreicht man mit einem ASIP um ein bis zwei Größenordnungen bessere Ergebnisse für jeden dieser Parameter, als mit einer Standard-CPU (also z.B. einem Pentium- oder einem PowerPC-Prozessor) oder einem Standard-DSP (Digitaler Signalprozessor). Dies wird erreicht, indem sowohl die Hardwarearchitektur des ASIPs als auch seine Software gemeinsam optimiert werden.

Funktion

Es müssen zunächst die in der Anwendung verwendeten elementaren Rechenoperationen wie z.B. Additionen, Subtraktionen, oder logischen Operationen und der zugrundeliegende Datenfluss analysiert werden. Zur Veranschaulichung kann dazu ein Datenflussdiagramm dienen.

Anhand der Häufigkeit einzelner Operationen oder Gruppen von Operationen können dann optimierte Instruktionen für einen ASIP definiert werden. Die Optimierung beschränkt sich dabei nicht nur auf die Auswahl der eventuell parallel stattfindenden Operationen, sondern es können auch die Schnittstellen zu Aussenwelt (engl. Input/Output, I/O) bzw. zum Datenspeicher (engl. data memory) für die Anwendung optimiert werden. Letzteres ist vor allem wichtig, wenn viele parallele Operationen gleichzeitig auf unterschiedlichen Daten ausgeführt werden sollen.


Literatur

  • Design of Energy-Efficient Application-Specific Instruction Set Processors

Tilman Glökler und Heinrich Meyr; ISBN: 978-1-4020-7730-2

  • Building ASIPs: The Mescal Methodology

Matthias Gries and Kurt Keutzer; ISBN: 978-0-387-26057-0

  • Optimized ASIP Synthesis from Architecture Description Language Models

Oliver Schliebusch, Heinrich Meyr, and Rainer Leupers ISBN: 978-1-4020-5685-7