Vad är en flytande punktenhet?
En flytande punktenhet är ett funktionellt block av en datorprocessor som utför aritmetiska operationer i flytande punkt. Även känd av förkortningen FPU kan en flytande punktenhet också vara en fysiskt separat medprocessor. En FPU kommer vanligtvis åt data via samma adresseringslägen som resten av processorn och innehåller i allmänhet sina egna register. En processor använder en FPU för att beräkna trigonometriska, logaritmiska och grundläggande flytande punktaritmetiska funktioner. Den använder också en FPU för att ladda, lagra och jämföra siffror i flera heltal och flytande punktdatatyper.
Många processorer inkluderar inte en flytande punktenhet. De flesta av mikroprocessorerna som producerats av Intel Corporation och Motorola som införlivats före slutet av 1980 -talet inkluderar till exempel en, till exempel en. Många RISC -processorer och inbäddade styrenheter och inbäddade styrenheter har inte heller en. Dessa chips inkluderar en aritmetisk logikenhet (ALU) för att utföra grundläggande heltal aritmetiska och bitvisa logikfunktioner. FLoating Point Math hanteras av en extern medprocessor eller ett mjukvarubibliotek.
De flesta processorer och mjukvarusystem implementerar Institute of Electrical and Electronics Engineers (IEEE) standard för flytande punktoperationer. IEEE-754-standarden släpptes först 1985 och utvidgades 2008 till att inkludera ytterligare datatyper. Den definierar flera datatyper med heltal och flytande punkt, var och en med sin egen precision, representation och numeriskt intervall. Den definierar också många aritmetiska operationer, metoder för att avrundas och hantera undantag som en division med noll. Oavsett om matematiken utförs av en flytande punktenhet eller inte, garanterar IEEE Floating Point-standard identiska resultat.
Förutom tillägg, subtraktion, multiplikation och uppdelning, kan en flytande punktenhet utföra många andra operationer. Dessa inkluderar ofta skalning, kvadratrot och logaritmiska beräkningar. Sinus, cOsine och partiell tangent trigonometriska funktioner tillhandahålls vanligtvis också. Heltal och flytande punktnummer kan jämföras med FPU och konverteras från en precision till en annan. De kan också rundas i endera riktningen och lagras direkt till processorns huvudminne.
FPU för en grafikprocessor kan inkludera ofta upprepade funktioner som är gemensamma för tredimensionell objektrotation eller animation. Många inbäddade styrenheter är designade med processorer optimerade för digital signalbehandling (DSP). Dessa kan användas i ljud- och kommunikationsapplikationer och kan innehålla FPU: er, som är bra på Fast Fourier Transforms (FFTS), till exempel. Cryptography-processorer inkluderar ofta en FPU för höghastighetsberäkning av matematik-tunga krypteringsalgoritmer. Allmänna processorer med flera kärnor kan också inkludera en flytande punktenhet för varje vanlig processorkärna.