Loading AI tools
Begriff aus der Computertechnik Aus Wikipedia, der freien Enzyklopädie
Gleitkommaeinheit, FPU (für Floating Point Unit) oder NPU (für Numeric Processing Unit) sind Begriffe aus der Computertechnik und bezeichnen einen speziellen Prozessor, der Operationen auf Gleitkommazahlen ausführt. Da insbesondere bei älteren, Mikrocode-basierten Systemen neben vergleichsweise einfachen Operationen wie Addition, Subtraktion, Multiplikation, Division oder Wurzelziehen auch transzendente Funktionen wie die Exponentialfunktion oder diverse trigonometrische Funktionen in Hardware ausgeführt waren, spricht man auch von mathematischen Koprozessoren.
Die FPU kann auch als externer Chip in einem eigenen Gehäuse sitzen (z. B. Intel 80287) oder in einen bestimmten Bereich innerhalb der CPU integriert sein (z. B. Intel Pentium).
Frühen CISC-Prozessoren fehlten meist Register und Befehle zur Behandlung von Gleitkommazahlen. Derlei Berechnungen und mathematische Funktionen wurden per Software-Bibliotheksaufrufe durch den auf Ganzzahlverarbeitung optimierten Hauptprozessor erledigt. Um die CPU von diesen rechenintensiven Aufgaben zu entlasten, gab es zunächst Arithmetik-Prozessoren wie den AMD AM9511, die als periphere Bausteine angesprochen wurden. Bei späteren CISC-CPUs wie den Intel x86-Prozessoren (bis zum 486er) oder den Motorola-68k-CPUs gab es die Möglichkeit, einen Koprozessor auf dem Motherboard nachzurüsten.
Eingeläutet wurde das Zeitalter der integrierten FPUs durch mehrere Faktoren:
Die Anwesenheit einer FPU ermöglicht eine erhebliche Leistungssteigerung für gleitkommaintensive Berechnungen. So boten Koprozessoren breitere Register: Schon bei 16- und 32-Bit-CPUs hatte die FPU häufig 64 Bit, 80 Bit oder auch 128 Bit breite Register. Dadurch konnten einfache Berechnungen mit höherer Genauigkeit durchgeführt werden, und es wurde ein größerer Wertebereich abgedeckt. Da auch die FPU im Inneren letztendlich eine digitale Recheneinheit darstellt, bedarf es weiterer, trickreicher Methoden, um eine echte Beschleunigung zu erhalten. Viele Modelle (z. B. der 8087) verfügen über hardwareseitig optimierte Rechenmethoden wie z. B. den CORDIC-Algorithmus für trigonometrische Funktionen, welcher nur durch Addition und Registerverschiebung, aber ohne langwierige Multiplikation auskommt. Oft wird eine große Beschleunigung auch über fest implementierte Lookup-Tabellen erreicht. Das heißt, die Werte werden nicht über mehrmalige Schleifendurchläufe ermittelt, sondern zuerst mit Hilfe von Tabellen näherungsweise und dann durch Interpolationsverfahren bis zu hinreichender Genauigkeit ermittelt. (Ein Fehler in einer solchen Tabelle war Ursache des sogenannten Pentium-Bug). Weiterhin kann eine FPU ihre Register oftmals als Matrix organisieren und so Vektorrechnungen beschleunigen.
Die meisten FPUs stellen Operationen für die Grundrechenarten (mit höherer Genauigkeit als die CPU), Logarithmus-, Wurzel- und Potenzrechnung und trigonometrische Funktionen sowie Funktionen für das Rechnen mit Matrizen zur Verfügung.
Die Rechenleistung einer FPU wird meistens in SPECfp gemessen, im Gegensatz zu den SPECint einer CPU.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.