FPU
Az FPU az angol floating-point unit kifejezés rövidítése, ami magyarul lebegőpontos egység; a számítógépnek egy lebegőpontos matematikai műveleteket végző alegysége, a CPU kiegészítője. Nevezik még matematikai társprocesszornak vagy numerikus koprocesszornak (numeric processing unit, rövidítve NPU) is – ez az elnevezés onnan ered, hogy eleinte ezek az egységek a fő processzortól különálló, ahhoz csatlakoztatható opcionális egységek voltak. Megfigyelhető, hogy a lebegőpontos számításokat végző egységek a mikroprocesszorok fejlődése során kezdetben különálló áramkörökként jelentek meg, felépítésükben is különböztek a fő processzoroktól (pl. a 8087-es lebegőpontos egység alapvetően verem-szervezésű, szemben az azt vezérlő 8086-os főprocesszor hagyományos regiszteres felépítésével), később azonban egyre gyakrabban beépültek a főprocesszorokba, és manapság már alig van olyan processzorkialakítás, amelyben a lebegőpontos műveletekhez kiegészítő processzorra lenne szükség: pl. a beágyazott processzoroknak külön sorozataik vannak, amelyek vagy tartalmazzák, vagy nélkülözik a lebegőpontos egységet, és a feladat határozza meg, hogy éppen melyik kerül felhasználásra.
Használatával a processzor műveletvégző képessége, számítási teljesítménye nagyban növelhető. Az Intel processzorai esetében a 486-os processzorcsalád óta a CPU integrált része, korábban külön modul.
Története
[szerkesztés]Az 1954-ben bevezetett IBM 704 lebegőpontos műveleteket tudott végrehajtani, szemben elődjével, az IBM 701-gyel. Később az IBM 709, 7090 és 7094 is lebegőpontos műveletek végrehajtására képesen jelent meg.
1963-ban a DEC bevezette a lebegőpontos műveletek elvégzését standard funkcióként tartalmazó PDP-6-ot.[1] Ugyanekkor jelent meg a GE-235 is, mely a lebegőpontos és dupla pontosságú műveletekhez már „kisegítő aritmetikai egységet” (Auxiliary Arithmetic Unit, AAU) használt.[2]
Matematikai társprocesszorok
[szerkesztés]- AMD Am9511 – 1977, korai matematikai koprocesszor
- AMD Am9512
- Intel 8231 – 1979, segédprocesszor, AMD licenc
- Intel 8232 – 1980-as évek eleje, az AMD Am9512 analógja
- Intel 8087 – 1980, az első x87 lebegőpontos koprocesszor
- Intel 80187 – 1989[3]
- Intel 80287 – 1982[4]
- Intel 80387 – 1987. február 16.[5]
- Intel 80487 – 1991, 25 MHz, 32 bites matematikai koprocesszor[6]
- Nx587 – a NexGen Nx586 processzorhoz
- Motorola 68881 és 68882 – 1983[7]
- MIPS R2010 – 1987[8]
- MIPS R3010 – 1988,[9] 25 MHz[10]
- National Semiconductor 32081 koprocesszor-család – 1985 (?)[11][12]
- Texas Instruments 8847 – SN74ACT8847, 1988, 33,33 MHz,[10] 600-szor gyorsabb az Intel 80387-es matematikai koprocesszoránál[13]
- Weitek 3364 – 1988, 20 MHz[10]
- Weitek 1064 (1981), 1067 (1982), 1167, 2167, 3167,[14] 4167 – a Weitek cég koprocesszorai a Motorola, Intel, MIPS, SPARC és PA-RISC architektúrákhoz
- WRL 3170/3171 – 1990, a SPARC processzorokhoz, a lebegőpontos mag ugyanaz, mint a Weitek 3364-nél[10][15]
- Zilog Z8070 – 1983, APU, Arithmetic Processing Unit a Z8000-es családhoz[12]
Jegyzetek
[szerkesztés]- ↑ PDP-6 Handbook. www.bitsavers.org . [2022. október 9-i dátummal az eredetiből archiválva].
- ↑ GE-2xx documents. www.bitsavers.org
- ↑ 80187 (angol nyelven), 2011
- ↑ 80287 (angol nyelven), 2011
- ↑ Intel 80387 (angol nyelven), 2011
- ↑ Intel 80487 (angol nyelven), 2011
- ↑ Clayton Huntsman, Duane Cawthron: The MC68881 Floating-point Coprocessor (angol nyelven). ACM, 1983. november 1. (Hozzáférés: 2013)
- ↑ Dominic Sweetman: See MIPS Run (angol nyelven) pp. 8. Morgan Kaufmann, 2010. július 8. „An ambitious external math coprocessor chip (the R2010 floating-point accelerator, or FPU) first shipped in mid-1987.”
- ↑ Rowen, C. ; Johnson, M. ; Ries, P. (1988. június 1.). „The MIPS R3010 floating-point coprocessor” (angol nyelven). IEEE Micro 8 (3), 53-62. o. DOI:10.1109/40.540.
- ↑ a b c d John L. Hennessy; David A. Patterson. Computer Architecture: A quantitative approach, 4. (angol nyelven), San Francisco: Morgan Kaufmann, H.58. o.. DOI: 10.1.1.115.1881. isbn 0-12-370490-1 [1990] (2007). ISBN 978-0-12-370490-0
- ↑ Gennadiy Shvets: National Semiconductor 32081 co-processor family (angol nyelven). CPU-World, 2010
- ↑ a b 1983–84 Components Data Book. [2016. június 1-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. május 24.) 1983, komponensek
- ↑ Mark Brownstein (1988. április 25.). „Floating-Point Chip Operates 600 Times Faster Than 80387”. InfoWorld 10 (17), 28. o. ISSN 0199-6649.
- ↑ Gennadiy Shvets: Weitek 3167-025-GCU (angol nyelven). CPU-World, 2010, 16, 20, 25, 33 MHz
- ↑ Birman, M., A. Samuels, G. Chu, T. Chuk, L. Hu, J. McLeod, J. Barnes (1990). „Developing the WRL3170/3171 SPARC floating-point coprocessors”. IEEE Micro 10 (1), 55–64. o.
Források
[szerkesztés]További információk
[szerkesztés]- Matematikai társprocesszorok (magyar nyelven). Vasynet, 2004. január 9. (Hozzáférés: 2014)[halott link] – Intel, Cyrix, IIT, Weitek, Motorola, Chips & Technologies, ULSI koprocesszorok