Zum Inhalt springen

No Instruction Set Computing

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 21. Dezember 2012 um 00:52 Uhr durch IrrtNie (Diskussion | Beiträge) (ab jetzt mit eigenen Worten, sonst verliert sich der Sinn des eng. Artikels). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Die No Instruction Set Computing (NISC) ist eine Computer-Architektur und Compiler-Technologie für die Entwicklung hocheffizienter benutzerdefinierte Prozessoren und Hardware-Beschleuniger, indem ein Compiler, einem die Kontrolle über die Hardware auf sehr niedriger Ebene erlaubt.

Übersicht

NISC ist eine statisch-geplante horizontale nano-codierende Architektur (SSHNA). Der Begriff "statisch geplant" bedeutet dabei, dass die Prozessausführung wie auch Fehlerkontrolle in der Hand des Compilers liegen.

Der Begriff "horizontal nano-codiert" bedeutet, dass NISC keinen vordefinierten Befehlssatz oder Mikrocode benutzt. Der Compiler erzeugt Nanocodes zur direkten Steuerung des Befehlssatzes oder Mikrocodes.

Der Compiler erzeugt Nanocodes zur direkten Anpassung der Rechenwerke, der Registers der Multiplexer wie auch der Bussysteme.

Sie gibt dem Compiler die Kontrolle auf tiefer Ebene zur besseren Ausnutzung der Bussystem-Resourcen, was letztendlich zu einer besseren Performance führt.

Die Vorteile der NISC Technik sind hierbei:

  • Simple Kontroller: Keine Hardware Scheduler, Keine Instruktions Decoder
  • Bessere Performance: Mehr flexible Architekturen, bessere Ressourcenauslastung
  • Einfacheres Design: keine Notwendigkeit zum Entwerfen von Befehls-Sätzen

Im Kern basiert NISC auf dem Konzept, leistungsfähige FPGAs durch intelligente Compiler dazu zu bringen, Programme die z.B. in Hochsprachen wie C geschrieben wurden, in Echtzeit in FPGA verständliche Hardwarebeschreibungssprachen wie VHDL oder Verilog zu übersetzen.

Dadurch befindet sich im Idealfall der komplette Befehlssatz des Programms in einem dynamischen Hardware-Register, der keine hoch-getaktete Ausführungseinheit einer CPU mehr benötigt.