Knowledge (XXG)

Floating-point unit

Source đź“ť

31: 176:
or a cabinet. Where floating-point calculation hardware has not been provided, floating-point calculations are done in software, which takes more processor time, but avoids the cost of the extra hardware. For a particular computer architecture, the floating-point unit instructions may be
281:
Some floating-point hardware only supports the simplest operations: addition, subtraction, and multiplication. But even the most complex floating-point hardware has a finite number of operations it can support – for example, no FPUs directly support
317:
In some cases, FPUs may be specialized, and divided between simpler floating-point operations (mainly addition and multiplication) and more complicated operations, like division. In some cases, only the simple operations may be implemented in hardware or
442:
range, introducing a gate array to interface the ARM2 processor with the WE32206 to support the additional ARM floating-point instructions. Acorn later offered the FPA10 coprocessor, developed by ARM, for various machines fitted with the ARM3 processor.
289:
When a CPU is executing a program that calls for a floating-point operation that is not directly supported by the hardware, the CPU uses a series of simpler floating-point operations. In systems without any floating-point hardware, the CPU
363:
models could execute floating-point instructions without an add-on FPU (the MicroPDP-11/23 required an add-on microcode option), and offered add-on accelerators to further speed the execution of those instructions.
640: 359:, such as the PDP-11/45, PDP-11/34a, PDP-11/44, and PDP-11/70, supported an add-on floating-point unit to support floating-point instructions. The PDP-11/60, MicroPDP-11/23 and several 410:
respectively, although early ones were socketed for the 80287, since the 80387 did not exist yet. Other companies manufactured co-processors for the Intel x86 series. These included
2264: 168: – that are coprocessors not always built into the CPU – have FPUs as a rule, while first generations of GPUs did not). This could be a single 1236: 648: 2375: 1558: 947: 2077: 578:
Anderson, Stanley F.; Earle, John G.; Goldschmidt, Robert Elliott; Powers, Don M. (January 1967). "The IBM System/360 Model 91: Floating-Point Execution Unit".
2234: 1800: 1617: 977: 1580: 2229: 2301: 580: 836: 2054: 427: 423: 763: 680: 2998: 2122: 1385: 1229: 3008: 2149: 1276: 502: 305:
The software that lists the necessary series of operations to emulate floating-point operations is often packaged in a floating-point
616: 558: 2316: 2144: 2117: 1496: 326: 1467: 3167: 3131: 2694: 1587: 1553: 1548: 1432: 379:, and typically sold as an optional add-on. It would only be purchased if needed to speed up or enable math-intensive programs. 185:
to run on systems with or without floating-point hardware. Emulation can be implemented on any of several levels: in the CPU as
3106: 3003: 2404: 2311: 2112: 1355: 1333: 1222: 212:
operations. This division varies significantly by architecture; some have dedicated floating-point registers, while some, like
1851: 1286: 1072: 844: 548: 283: 2306: 2154: 1988: 1602: 1563: 1420: 1127: 1104: 1081: 1055: 1025: 478:
series, but unlike IBM PC-compatible systems, sockets for adding the coprocessor were not as common in lower-end systems.
262: 3172: 2743: 2588: 2583: 2505: 1981: 1942: 1597: 1592: 1526: 1338: 1462: 955: 2370: 2067: 1765: 266: 1118: 1095: 3020: 2667: 2084: 1575: 1543: 1313: 1301: 1281: 112:
When a CPU is executing a program that calls for a floating-point operation, there are three ways to carry it out:
3111: 3074: 3064: 1452: 334: 157: 55: 3126: 2533: 2469: 2446: 2296: 2258: 2094: 2044: 2039: 1516: 1410: 1318: 553: 387: 383: 165: 1323: 705: 3182: 3079: 2862: 2756: 2720: 2637: 2621: 2463: 2252: 2211: 2199: 2062: 1976: 1897: 1662: 1266: 520: 376: 202: 135:
had floating-point arithmetic as a standard feature, one of its major improvements over its predecessor the
109:
do not have hardware support for floating-point operations (while they increasingly have them as standard).
102: 79: 1180: 902: 2885: 2857: 2767: 2732: 2481: 2475: 2457: 2191: 2185: 2089: 1993: 1884: 1823: 1685: 1328: 991: 494: 493:
capability. These add-on FPUs are host-processor-independent, possess their own programming requirements (
295: 255: 247: 90:
calculations, but the accuracy can be low, so some systems prefer to compute these functions in software.
71: 1016: 3177: 3059: 2968: 2714: 2426: 2244: 2003: 1971: 1929: 1841: 1642: 1457: 1447: 1437: 1427: 1397: 1380: 1245: 641:"FSIN Documentation Improvements in the "Intel® 64 and IA-32 Architectures Software Developer's Manual"" 514: 486: 447: 299: 173: 94: 907: 1046: 3089: 3025: 2611: 2333: 2223: 2170: 1702: 1415: 1271: 1253: 386:, and most compatibles based on the 8088 or 8086 had a socket for the optional 8087 coprocessor. The 83: 3136: 2738: 526: 3121: 2941: 2792: 2774: 2380: 2327: 2132: 2127: 2104: 2020: 1902: 1757: 1652: 1511: 306: 903:"Implementing CORDIC algorithms – A single compact routine for computing transcendental functions" 669: 2993: 2985: 2837: 2812: 2616: 2491: 2015: 1956: 1836: 1568: 1296: 867:
Glass, L. Brent (January 1990). "Math Coprocessors: A look at what they do, and how they do it".
824: 749: 431: 169: 106: 208:
In most modern computer architectures, there is some division of floating-point operations from
1207: 796:
Nave, Rafi (March 1983). "Implementation of Transcendental Functions on a Numerics Processor".
2946: 2913: 2829: 2761: 2662: 2652: 2642: 2573: 2568: 2563: 2486: 2415: 2321: 2281: 1914: 1864: 1814: 1790: 1672: 1612: 1607: 1489: 1405: 971: 878: 840: 769: 759: 597: 153:
featured an "Auxiliary Arithmetic Unit" for floating point and double-precision calculations.
3116: 3049: 2890: 2797: 2751: 2558: 2553: 2548: 2543: 2538: 2528: 2398: 2365: 2276: 2271: 2180: 2032: 2027: 2010: 1998: 1937: 1501: 1479: 1365: 1343: 1261: 805: 589: 439: 435: 190: 269:. Each physical integer core, two per module, is single-threaded, in contrast with Intel's 3030: 3015: 2963: 2867: 2842: 2679: 2672: 2523: 2518: 2513: 2452: 2360: 2350: 2072: 1907: 1859: 1622: 1506: 1474: 1375: 1370: 1291: 869: 498: 482: 419: 534:
routines are used in many FPUs to implement functions but not greatly increase gate count
258:, floating-point operations were sometimes pipelined separately from integer operations. 273:, where two virtual simultaneous threads share the resources of a single physical core. 3141: 2975: 2958: 2951: 2847: 2704: 2441: 2355: 2286: 1869: 1831: 1780: 1775: 1770: 1484: 1308: 537: 459: 455: 451: 372: 270: 239:
and 68882 for some kinds of floating-point instructions, mainly as a way to reduce the
236: 217: 98: 67: 3161: 2936: 2852: 1892: 1874: 1667: 1360: 809: 755: 407: 150: 87: 1165:
Fellows, Paul (March 1990). "Programming The ARM: The Floating Point Co-processor".
3146: 3084: 2900: 2877: 2689: 2410: 1348: 17: 1141: 719: 329:
units to perform SIMD computation; an example of this is the augmentation of the
2931: 2895: 2606: 2578: 2436: 2291: 463: 399: 391: 350: 251: 232: 182: 161: 75: 63: 829: 2817: 2807: 2802: 2784: 2684: 2657: 1919: 1752: 1722: 1442: 490: 240: 228: 194: 882: 601: 2908: 2905: 2647: 1717: 1695: 471: 319: 186: 697: 2923: 1795: 1742: 1214: 542: 291: 178: 59: 51: 593: 164:
rather than as an integrated unit (but now in addition to the CPU, e.g.
1732: 1690: 209: 136: 132: 325:
In some current architectures, the FPU functionality is combined with
139:. This was carried forward to its successors the 709, 7090, and 7094. 3035: 1747: 1712: 1677: 531: 415: 368: 356: 338: 198: 116:
A floating-point unit emulator (a floating-point library in software)
470:
series. They were also commonly added to higher-end models of Apple
30: 2205: 1737: 1707: 773: 475: 467: 411: 143: 29: 322:, while the more complex operations are implemented as software. 3069: 2217: 2137: 1727: 1218: 1657: 1647: 403: 395: 360: 330: 224: 213: 181:
by a library of software functions; this may permit the same
34:
Collection of the x87 family of math coprocessors by Intel
932:
Yuen, A. K. (1988). "Intel's Floating-Point Processors".
1067: 1065: 197:
code. When only integer functionality is available, the
1041: 1039: 1037: 1035: 617:"Intel Underestimates Error Bounds by 1.3 quintillion" 1183:(Press release). Acorn Computers Limited. 5 July 1993 341:
architecture used in newer Intel and AMD processors.
54:
system specially designed to carry out operations on
3099: 3048: 2984: 2922: 2876: 2828: 2783: 2703: 2630: 2599: 2504: 2425: 2389: 2343: 2243: 2169: 2103: 2053: 1964: 1955: 1928: 1883: 1850: 1822: 1813: 1633: 1536: 1525: 1396: 1252: 751:
Elementary Functions: Algorithms and Implementation
828: 146:, which had floating point as a standard feature. 481:There are also add-on FPU coprocessor units for 394:-based systems were generally socketed for the 896: 894: 892: 501:, etc.) and are often provided with their own 489:(SBCs), which serve to provide floating-point 243:counts (and complexity) of the FPU subsystem. 1230: 1028:. 1973. Chapter 7 "Floating Point Processor". 743: 741: 739: 375:for the FPU to be entirely separate from the 265:uses a special FPU named FlexFPU, which uses 8: 927: 925: 2235:Computer performance by orders of magnitude 1181:"Acorn Releases Floating Point Accelerator" 791: 789: 2700: 2340: 1961: 1819: 1533: 1237: 1223: 1215: 402:-based machines – for the 235:microprocessor series, as well as in the 223:CORDIC routines have been implemented in 1120:VAX – Hardware Handbook Volume II – 1986 837:John Wiley & Sons Australia, Limited 97:, one or more FPUs may be integrated as 1097:VAX – Hardware Handbook Volume I – 1986 754:(2nd ed.). Boston, Massachusetts: 581:IBM Journal of Research and Development 570: 156:Historically, some systems implemented 976:: CS1 maint: archived copy as title ( 969: 1142:"Western Electric 32206 co-processor" 78:. Some FPUs can also perform various 7: 2206:Floating-point operations per second 798:Microprocessing and Microprogramming 706:CPB-267_GE-235-SystemManual_1963.pdf 446:Coprocessors were available for the 246:Floating-point operations are often 503:integrated development environments 298:operations that run on the integer 201:methods are most commonly used for 25: 3132:Semiconductor device fabrication 686:from the original on 2022-10-09. 58:numbers. Typical operations are 3107:History of general-purpose CPUs 1334:Nondeterministic Turing machine 422:opted for the WE32206 to offer 367:In the 1980s, it was common in 142:In 1963, Digital announced the 1287:Deterministic finite automaton 1206:Filiatreault, Raymond (2003). 549:IBM hexadecimal floating point 284:arbitrary-precision arithmetic 254:architectures without general 1: 2078:Simultaneous and heterogenous 1128:Digital Equipment Corporation 1105:Digital Equipment Corporation 1082:Digital Equipment Corporation 1056:Digital Equipment Corporation 1026:Digital Equipment Corporation 559:Multiply–accumulate operation 294:it using a series of simpler 2762:Integrated memory controller 2744:Translation lookaside buffer 1943:Memory dependence prediction 1386:Random-access stored program 1339:Probabilistic Turing machine 1018:PDP-11/45 Processor Handbook 934:Electro/88 Conference Record 901:Jarvis, Pitts (1990-10-01). 810:10.1016/0165-6074(83)90151-5 748:Muller, Jean-Michel (2006). 647:. 2014-10-09. Archived from 615:Dawson, Bruce (2014-10-09). 261:The modular architecture of 122:Integrated FPU (in hardware) 2218:Synaptic updates per second 267:simultaneous multithreading 263:Bulldozer microarchitecture 216:, go as far as independent 3199: 2622:Heterogeneous architecture 1544:Orthogonal instruction set 1314:Alternating Turing machine 1302:Quantum cellular automaton 348: 231:, 80287, 80387) up to the 3112:Microprocessor chronology 3075:Dynamic frequency scaling 2230:Cache performance metrics 1048:PDP-11 Processor Handbook 621:randomascii.wordpress.com 27:Part of a computer system 3127:Hardware security module 2470:Digital signal processor 2447:Graphics processing unit 2259:Graphics processing unit 554:Graphics processing unit 80:transcendental functions 3168:Central processing unit 3080:Dynamic voltage scaling 2863:Memory address register 2757:Branch target predictor 2721:Address generation unit 2464:Physics processing unit 2253:Central processing unit 2212:Transactions per second 2200:Instructions per second 2123:Array processing (SIMT) 1267:Stored-program computer 545:floating-point standard 521:Address generation unit 454:. These were common in 337:instruction set in the 203:transcendental function 103:central processing unit 2886:Hardwired control unit 2768:Memory management unit 2733:Memory management unit 2482:Secure cryptoprocessor 2476:Tensor Processing Unit 2458:Vision processing unit 2192:Cycles per instruction 2186:Instructions per cycle 2133:Associative processing 1824:Instruction pipelining 1246:Processor technologies 355:Several models of the 333:instructions set with 296:fixed-point arithmetic 277:Floating-point library 256:out-of-order execution 95:computer architectures 35: 2969:Sum-addressed decoder 2715:Arithmetic logic unit 1842:Classic RISC pipeline 1796:Epiphany architecture 1643:Motorola 68000 series 1074:MICRO/PDP-11 Handbook 992:"AMD unveils Flex FP" 515:Arithmetic logic unit 487:single-board computer 448:Motorola 68000 family 300:arithmetic logic unit 33: 3090:Performance per watt 2668:replacement policies 2334:Package on a package 2224:Performance per watt 2128:Pipelined processing 1898:Tomasulo's algorithm 1703:Clipper architecture 1559:Application-specific 1272:Finite-state machine 720:"Intel 80287 family" 3173:Computer arithmetic 3122:Digital electronics 2775:Instruction decoder 2727:Floating-point unit 2381:Soft microprocessor 2328:System in a package 1903:Reservation station 1433:Transport-triggered 1084:. 1983. p. 33. 825:Morse, Stephen Paul 594:10.1147/rd.111.0034 119:Add-on FPU hardware 107:embedded processors 93:In general-purpose 40:floating-point unit 18:Floating point unit 2994:Integrated circuit 2838:Processor register 2492:Baseband processor 1837:Operand forwarding 1297:Cellular automaton 908:Dr. Dobb's Journal 698:"GE-2xx documents" 432:extended precision 170:integrated circuit 36: 3155: 3154: 3044: 3043: 2663:Instruction cache 2653:Scratchpad memory 2500: 2499: 2487:Network processor 2416:Network on a chip 2371:Ultra-low-voltage 2322:Multi-chip module 2165: 2164: 1951: 1950: 1938:Branch prediction 1915:Register renaming 1809: 1808: 1791:VISC architecture 1613:Quantum computing 1608:VISC architecture 1490:Secondary storage 1406:Microarchitecture 1366:Register machines 1169:. pp. 43–44. 1167:A&B Computing 1146:www.cpu-world.com 952:cdn3.wccftech.com 823:Palmer, John F.; 765:978-0-8176-4372-0 724:www.cpu-world.com 702:www.bitsavers.org 677:www.bitsavers.org 485:units (MCUs/ÎĽCs)/ 50:) is a part of a 46:, colloquially a 16:(Redirected from 3190: 3117:Processor design 3009:Power management 2891:Instruction unit 2752:Branch predictor 2701: 2399:System on a chip 2341: 2181:Transistor count 2105:Flynn's taxonomy 1962: 1820: 1623:Addressing modes 1534: 1480:Memory hierarchy 1344:Hypercomputation 1262:Abstract machine 1239: 1232: 1225: 1216: 1211: 1193: 1192: 1190: 1188: 1177: 1171: 1170: 1162: 1156: 1155: 1153: 1152: 1138: 1132: 1131: 1125: 1115: 1109: 1108: 1102: 1092: 1086: 1085: 1079: 1069: 1060: 1059: 1053: 1043: 1030: 1029: 1023: 1013: 1007: 1006: 1004: 1002: 988: 982: 981: 975: 967: 965: 963: 954:. Archived from 944: 938: 937: 929: 920: 919: 917: 916: 898: 887: 886: 864: 858: 857: 855: 854: 835:(1st ed.). 834: 820: 814: 813: 804:(3–4): 221–225. 793: 784: 783: 781: 780: 745: 734: 733: 731: 730: 716: 710: 709: 694: 688: 687: 685: 674: 670:"PDP-6 Handbook" 666: 660: 659: 657: 656: 637: 631: 630: 628: 627: 612: 606: 605: 575: 499:instruction sets 193:function, or in 191:operating system 105:; however, many 48:math coprocessor 21: 3198: 3197: 3193: 3192: 3191: 3189: 3188: 3187: 3158: 3157: 3156: 3151: 3137:Tick–tock model 3095: 3051: 3040: 2980: 2964:Address decoder 2918: 2872: 2868:Program counter 2843:Status register 2824: 2779: 2739:Load–store unit 2706: 2699: 2626: 2595: 2496: 2453:Image processor 2428: 2421: 2391: 2385: 2361:Microcontroller 2351:Embedded system 2339: 2239: 2172: 2161: 2099: 2049: 1947: 1924: 1908:Re-order buffer 1879: 1860:Data dependency 1846: 1805: 1635: 1629: 1528: 1527:Instruction set 1521: 1507:Multiprocessing 1475:Cache hierarchy 1468:Register/memory 1392: 1292:Queue automaton 1248: 1243: 1205: 1202: 1200:Further reading 1197: 1196: 1186: 1184: 1179: 1178: 1174: 1164: 1163: 1159: 1150: 1148: 1140: 1139: 1135: 1123: 1117: 1116: 1112: 1100: 1094: 1093: 1089: 1077: 1071: 1070: 1063: 1051: 1045: 1044: 1033: 1021: 1015: 1014: 1010: 1000: 998: 990: 989: 985: 968: 961: 959: 948:"Archived copy" 946: 945: 941: 931: 930: 923: 914: 912: 900: 899: 890: 866: 865: 861: 852: 850: 849:. 9780471875697 847: 831:The 8087 Primer 822: 821: 817: 795: 794: 787: 778: 776: 766: 758:. p. 134. 747: 746: 737: 728: 726: 718: 717: 713: 696: 695: 691: 683: 672: 668: 667: 663: 654: 652: 639: 638: 634: 625: 623: 614: 613: 609: 577: 576: 572: 567: 527:Load–store unit 511: 483:microcontroller 452:68881 and 68882 420:Acorn Computers 353: 347: 315: 313:Integrated FPUs 279: 129: 99:execution units 28: 23: 22: 15: 12: 11: 5: 3196: 3194: 3186: 3185: 3183:Floating point 3180: 3175: 3170: 3160: 3159: 3153: 3152: 3150: 3149: 3144: 3142:Pin grid array 3139: 3134: 3129: 3124: 3119: 3114: 3109: 3103: 3101: 3097: 3096: 3094: 3093: 3087: 3082: 3077: 3072: 3067: 3062: 3056: 3054: 3046: 3045: 3042: 3041: 3039: 3038: 3033: 3028: 3023: 3018: 3013: 3012: 3011: 3006: 3001: 2990: 2988: 2982: 2981: 2979: 2978: 2976:Barrel shifter 2973: 2972: 2971: 2966: 2959:Binary decoder 2956: 2955: 2954: 2944: 2939: 2934: 2928: 2926: 2920: 2919: 2917: 2916: 2911: 2903: 2898: 2893: 2888: 2882: 2880: 2874: 2873: 2871: 2870: 2865: 2860: 2855: 2850: 2848:Stack register 2845: 2840: 2834: 2832: 2826: 2825: 2823: 2822: 2821: 2820: 2815: 2805: 2800: 2795: 2789: 2787: 2781: 2780: 2778: 2777: 2772: 2771: 2770: 2759: 2754: 2749: 2748: 2747: 2741: 2730: 2724: 2718: 2711: 2709: 2698: 2697: 2692: 2687: 2682: 2677: 2676: 2675: 2670: 2665: 2660: 2655: 2650: 2640: 2634: 2632: 2628: 2627: 2625: 2624: 2619: 2614: 2609: 2603: 2601: 2597: 2596: 2594: 2593: 2592: 2591: 2581: 2576: 2571: 2566: 2561: 2556: 2551: 2546: 2541: 2536: 2531: 2526: 2521: 2516: 2510: 2508: 2502: 2501: 2498: 2497: 2495: 2494: 2489: 2484: 2479: 2473: 2467: 2461: 2455: 2450: 2444: 2442:AI accelerator 2439: 2433: 2431: 2423: 2422: 2420: 2419: 2413: 2408: 2405:Multiprocessor 2402: 2395: 2393: 2387: 2386: 2384: 2383: 2378: 2373: 2368: 2363: 2358: 2356:Microprocessor 2353: 2347: 2345: 2344:By application 2338: 2337: 2331: 2325: 2319: 2314: 2309: 2304: 2299: 2294: 2289: 2287:Tile processor 2284: 2279: 2274: 2269: 2268: 2267: 2256: 2249: 2247: 2241: 2240: 2238: 2237: 2232: 2227: 2221: 2215: 2209: 2203: 2197: 2196: 2195: 2183: 2177: 2175: 2167: 2166: 2163: 2162: 2160: 2159: 2158: 2157: 2147: 2142: 2141: 2140: 2135: 2130: 2125: 2115: 2109: 2107: 2101: 2100: 2098: 2097: 2092: 2087: 2082: 2081: 2080: 2075: 2073:Hyperthreading 2065: 2059: 2057: 2055:Multithreading 2051: 2050: 2048: 2047: 2042: 2037: 2036: 2035: 2025: 2024: 2023: 2018: 2008: 2007: 2006: 2001: 1991: 1986: 1985: 1984: 1979: 1968: 1966: 1959: 1953: 1952: 1949: 1948: 1946: 1945: 1940: 1934: 1932: 1926: 1925: 1923: 1922: 1917: 1912: 1911: 1910: 1905: 1895: 1889: 1887: 1881: 1880: 1878: 1877: 1872: 1867: 1862: 1856: 1854: 1848: 1847: 1845: 1844: 1839: 1834: 1832:Pipeline stall 1828: 1826: 1817: 1811: 1810: 1807: 1806: 1804: 1803: 1798: 1793: 1788: 1785: 1784: 1783: 1781:z/Architecture 1778: 1773: 1768: 1760: 1755: 1750: 1745: 1740: 1735: 1730: 1725: 1720: 1715: 1710: 1705: 1700: 1699: 1698: 1693: 1688: 1680: 1675: 1670: 1665: 1660: 1655: 1650: 1645: 1639: 1637: 1631: 1630: 1628: 1627: 1626: 1625: 1615: 1610: 1605: 1600: 1595: 1590: 1585: 1584: 1583: 1573: 1572: 1571: 1561: 1556: 1551: 1546: 1540: 1538: 1531: 1523: 1522: 1520: 1519: 1514: 1509: 1504: 1499: 1494: 1493: 1492: 1487: 1485:Virtual memory 1477: 1472: 1471: 1470: 1465: 1460: 1455: 1445: 1440: 1435: 1430: 1425: 1424: 1423: 1413: 1408: 1402: 1400: 1394: 1393: 1391: 1390: 1389: 1388: 1383: 1378: 1373: 1363: 1358: 1353: 1352: 1351: 1346: 1341: 1336: 1331: 1326: 1321: 1316: 1309:Turing machine 1306: 1305: 1304: 1299: 1294: 1289: 1284: 1279: 1269: 1264: 1258: 1256: 1250: 1249: 1244: 1242: 1241: 1234: 1227: 1219: 1213: 1212: 1201: 1198: 1195: 1194: 1172: 1157: 1133: 1110: 1087: 1061: 1031: 1008: 983: 939: 921: 888: 877:(1): 337–348. 859: 845: 815: 785: 764: 735: 711: 689: 661: 632: 607: 569: 568: 566: 563: 562: 561: 556: 551: 546: 540: 538:Execution unit 535: 529: 524: 518: 510: 507: 474:and Commodore 456:Motorola 68020 373:microcomputers 349:Main article: 346: 343: 314: 311: 278: 275: 271:Hyperthreading 237:Motorola 68881 227:coprocessors ( 158:floating point 128: 125: 124: 123: 120: 117: 68:multiplication 56:floating-point 26: 24: 14: 13: 10: 9: 6: 4: 3: 2: 3195: 3184: 3181: 3179: 3176: 3174: 3171: 3169: 3166: 3165: 3163: 3148: 3145: 3143: 3140: 3138: 3135: 3133: 3130: 3128: 3125: 3123: 3120: 3118: 3115: 3113: 3110: 3108: 3105: 3104: 3102: 3098: 3091: 3088: 3086: 3083: 3081: 3078: 3076: 3073: 3071: 3068: 3066: 3063: 3061: 3058: 3057: 3055: 3053: 3047: 3037: 3034: 3032: 3029: 3027: 3024: 3022: 3019: 3017: 3014: 3010: 3007: 3005: 3002: 3000: 2997: 2996: 2995: 2992: 2991: 2989: 2987: 2983: 2977: 2974: 2970: 2967: 2965: 2962: 2961: 2960: 2957: 2953: 2950: 2949: 2948: 2945: 2943: 2940: 2938: 2937:Demultiplexer 2935: 2933: 2930: 2929: 2927: 2925: 2921: 2915: 2912: 2910: 2907: 2904: 2902: 2899: 2897: 2894: 2892: 2889: 2887: 2884: 2883: 2881: 2879: 2875: 2869: 2866: 2864: 2861: 2859: 2858:Memory buffer 2856: 2854: 2853:Register file 2851: 2849: 2846: 2844: 2841: 2839: 2836: 2835: 2833: 2831: 2827: 2819: 2816: 2814: 2811: 2810: 2809: 2806: 2804: 2801: 2799: 2796: 2794: 2793:Combinational 2791: 2790: 2788: 2786: 2782: 2776: 2773: 2769: 2766: 2765: 2763: 2760: 2758: 2755: 2753: 2750: 2745: 2742: 2740: 2737: 2736: 2734: 2731: 2728: 2725: 2722: 2719: 2716: 2713: 2712: 2710: 2708: 2702: 2696: 2693: 2691: 2688: 2686: 2683: 2681: 2678: 2674: 2671: 2669: 2666: 2664: 2661: 2659: 2656: 2654: 2651: 2649: 2646: 2645: 2644: 2641: 2639: 2636: 2635: 2633: 2629: 2623: 2620: 2618: 2615: 2613: 2610: 2608: 2605: 2604: 2602: 2598: 2590: 2587: 2586: 2585: 2582: 2580: 2577: 2575: 2572: 2570: 2567: 2565: 2562: 2560: 2557: 2555: 2552: 2550: 2547: 2545: 2542: 2540: 2537: 2535: 2532: 2530: 2527: 2525: 2522: 2520: 2517: 2515: 2512: 2511: 2509: 2507: 2503: 2493: 2490: 2488: 2485: 2483: 2480: 2477: 2474: 2471: 2468: 2465: 2462: 2459: 2456: 2454: 2451: 2448: 2445: 2443: 2440: 2438: 2435: 2434: 2432: 2430: 2424: 2417: 2414: 2412: 2409: 2406: 2403: 2400: 2397: 2396: 2394: 2388: 2382: 2379: 2377: 2374: 2372: 2369: 2367: 2364: 2362: 2359: 2357: 2354: 2352: 2349: 2348: 2346: 2342: 2335: 2332: 2329: 2326: 2323: 2320: 2318: 2315: 2313: 2310: 2308: 2305: 2303: 2300: 2298: 2295: 2293: 2290: 2288: 2285: 2283: 2280: 2278: 2275: 2273: 2270: 2266: 2263: 2262: 2260: 2257: 2254: 2251: 2250: 2248: 2246: 2242: 2236: 2233: 2231: 2228: 2225: 2222: 2219: 2216: 2213: 2210: 2207: 2204: 2201: 2198: 2193: 2190: 2189: 2187: 2184: 2182: 2179: 2178: 2176: 2174: 2168: 2156: 2153: 2152: 2151: 2148: 2146: 2143: 2139: 2136: 2134: 2131: 2129: 2126: 2124: 2121: 2120: 2119: 2116: 2114: 2111: 2110: 2108: 2106: 2102: 2096: 2093: 2091: 2088: 2086: 2083: 2079: 2076: 2074: 2071: 2070: 2069: 2066: 2064: 2061: 2060: 2058: 2056: 2052: 2046: 2043: 2041: 2038: 2034: 2031: 2030: 2029: 2026: 2022: 2019: 2017: 2014: 2013: 2012: 2009: 2005: 2002: 2000: 1997: 1996: 1995: 1992: 1990: 1987: 1983: 1980: 1978: 1975: 1974: 1973: 1970: 1969: 1967: 1963: 1960: 1958: 1954: 1944: 1941: 1939: 1936: 1935: 1933: 1931: 1927: 1921: 1918: 1916: 1913: 1909: 1906: 1904: 1901: 1900: 1899: 1896: 1894: 1893:Scoreboarding 1891: 1890: 1888: 1886: 1882: 1876: 1875:False sharing 1873: 1871: 1868: 1866: 1863: 1861: 1858: 1857: 1855: 1853: 1849: 1843: 1840: 1838: 1835: 1833: 1830: 1829: 1827: 1825: 1821: 1818: 1816: 1812: 1802: 1799: 1797: 1794: 1792: 1789: 1786: 1782: 1779: 1777: 1774: 1772: 1769: 1767: 1764: 1763: 1761: 1759: 1756: 1754: 1751: 1749: 1746: 1744: 1741: 1739: 1736: 1734: 1731: 1729: 1726: 1724: 1721: 1719: 1716: 1714: 1711: 1709: 1706: 1704: 1701: 1697: 1694: 1692: 1689: 1687: 1684: 1683: 1681: 1679: 1676: 1674: 1671: 1669: 1668:Stanford MIPS 1666: 1664: 1661: 1659: 1656: 1654: 1651: 1649: 1646: 1644: 1641: 1640: 1638: 1632: 1624: 1621: 1620: 1619: 1616: 1614: 1611: 1609: 1606: 1604: 1601: 1599: 1596: 1594: 1591: 1589: 1586: 1582: 1579: 1578: 1577: 1574: 1570: 1567: 1566: 1565: 1562: 1560: 1557: 1555: 1552: 1550: 1547: 1545: 1542: 1541: 1539: 1535: 1532: 1530: 1529:architectures 1524: 1518: 1515: 1513: 1510: 1508: 1505: 1503: 1500: 1498: 1497:Heterogeneous 1495: 1491: 1488: 1486: 1483: 1482: 1481: 1478: 1476: 1473: 1469: 1466: 1464: 1461: 1459: 1456: 1454: 1451: 1450: 1449: 1448:Memory access 1446: 1444: 1441: 1439: 1436: 1434: 1431: 1429: 1426: 1422: 1419: 1418: 1417: 1414: 1412: 1409: 1407: 1404: 1403: 1401: 1399: 1395: 1387: 1384: 1382: 1381:Random-access 1379: 1377: 1374: 1372: 1369: 1368: 1367: 1364: 1362: 1361:Stack machine 1359: 1357: 1354: 1350: 1347: 1345: 1342: 1340: 1337: 1335: 1332: 1330: 1327: 1325: 1322: 1320: 1317: 1315: 1312: 1311: 1310: 1307: 1303: 1300: 1298: 1295: 1293: 1290: 1288: 1285: 1283: 1280: 1278: 1277:with datapath 1275: 1274: 1273: 1270: 1268: 1265: 1263: 1260: 1259: 1257: 1255: 1251: 1247: 1240: 1235: 1233: 1228: 1226: 1221: 1220: 1217: 1209: 1204: 1203: 1199: 1182: 1176: 1173: 1168: 1161: 1158: 1147: 1143: 1137: 1134: 1129: 1122: 1121: 1114: 1111: 1106: 1099: 1098: 1091: 1088: 1083: 1076: 1075: 1068: 1066: 1062: 1057: 1050: 1049: 1042: 1040: 1038: 1036: 1032: 1027: 1020: 1019: 1012: 1009: 997: 993: 987: 984: 979: 973: 958:on 9 May 2015 957: 953: 949: 943: 940: 935: 928: 926: 922: 910: 909: 904: 897: 895: 893: 889: 884: 880: 876: 872: 871: 863: 860: 848: 842: 838: 833: 832: 826: 819: 816: 811: 807: 803: 799: 792: 790: 786: 775: 771: 767: 761: 757: 753: 752: 744: 742: 740: 736: 725: 721: 715: 712: 707: 703: 699: 693: 690: 682: 678: 671: 665: 662: 651:on 2020-01-16 650: 646: 642: 636: 633: 622: 618: 611: 608: 603: 599: 595: 591: 587: 583: 582: 574: 571: 564: 560: 557: 555: 552: 550: 547: 544: 541: 539: 536: 533: 530: 528: 525: 522: 519: 516: 513: 512: 508: 506: 504: 500: 496: 492: 488: 484: 479: 477: 473: 469: 465: 461: 457: 453: 449: 444: 441: 437: 433: 429: 425: 421: 417: 413: 409: 405: 401: 400:80386/80386SX 397: 393: 389: 385: 380: 378: 374: 370: 365: 362: 358: 352: 344: 342: 340: 336: 332: 328: 323: 321: 312: 310: 308: 303: 301: 297: 293: 287: 285: 276: 274: 272: 268: 264: 259: 257: 253: 250:. In earlier 249: 244: 242: 238: 234: 230: 226: 221: 219: 215: 211: 206: 204: 200: 196: 192: 188: 184: 180: 175: 174:circuit board 171: 167: 163: 159: 154: 152: 149:In 1963, the 147: 145: 140: 138: 134: 131:In 1954, the 126: 121: 118: 115: 114: 113: 110: 108: 104: 100: 96: 91: 89: 88:trigonometric 85: 81: 77: 73: 69: 65: 61: 57: 53: 49: 45: 41: 32: 19: 3178:Coprocessors 3147:Chip carrier 3085:Clock gating 3004:Mixed-signal 2901:Write buffer 2878:Control unit 2726: 2690:Clock signal 2429:accelerators 2411:Cypress PSoC 2068:Simultaneous 1885:Out-of-order 1517:Neuromorphic 1398:Architecture 1356:Belt machine 1349:Zeno machine 1282:Hierarchical 1208:"SIMPLY FPU" 1185:. Retrieved 1175: 1166: 1160: 1149:. Retrieved 1145: 1136: 1119: 1113: 1096: 1090: 1073: 1047: 1017: 1011: 999:. Retrieved 996:bit-tech.net 995: 986: 960:. Retrieved 956:the original 951: 942: 933: 913:. Retrieved 906: 874: 868: 862: 851:. Retrieved 830: 818: 801: 797: 777:. Retrieved 750: 727:. Retrieved 723: 714: 701: 692: 676: 664: 653:. Retrieved 649:the original 644: 635: 624:. Retrieved 620: 610: 588:(1): 34–53. 585: 579: 573: 480: 464:workstations 445: 382:The IBM PC, 381: 371:/compatible 366: 354: 324: 316: 304: 288: 280: 260: 245: 222: 207: 205:evaluation. 172:, an entire 155: 148: 141: 130: 111: 92: 47: 43: 39: 37: 2932:Multiplexer 2896:Data buffer 2607:Single-core 2579:bit slicing 2437:Coprocessor 2292:Coprocessor 2173:performance 2095:Cooperative 2085:Speculative 2045:Distributed 2004:Superscalar 1989:Instruction 1957:Parallelism 1930:Speculative 1762:System/3x0 1634:Instruction 1411:Von Neumann 1324:Post–Turing 936:: 48/5/1–7. 466:, like the 351:Coprocessor 345:Add-on FPUs 252:superscalar 183:object code 162:coprocessor 101:within the 84:exponential 76:square root 64:subtraction 3162:Categories 3052:management 2947:Multiplier 2808:Logic gate 2798:Sequential 2705:Functional 2685:Clock rate 2658:Data cache 2631:Components 2612:Multi-core 2600:Core count 2090:Preemptive 1994:Pipelining 1977:Bit-serial 1920:Wide-issue 1865:Structural 1787:Tilera ISA 1753:MicroBlaze 1723:ETRAX CRIS 1618:Comparison 1463:Load–store 1443:Endianness 1151:2021-11-06 915:2016-01-02 853:2016-01-02 846:0471875694 779:2015-12-01 774:2005048094 756:Birkhäuser 729:2019-01-15 708:, p. IV-4. 655:2020-01-16 626:2020-01-16 565:References 495:operations 491:arithmetic 440:Archimedes 195:user-space 2986:Circuitry 2906:Microcode 2830:Registers 2673:coherence 2648:CPU cache 2506:Word size 2171:Processor 1815:Execution 1718:DEC Alpha 1696:Power ISA 1512:Cognitive 1319:Universal 911:: 152–156 883:0360-5280 645:intel.com 602:0018-8646 472:Macintosh 320:microcode 248:pipelined 225:Intel x87 220:schemes. 214:Intel x86 187:microcode 2924:Datapath 2617:Manycore 2589:variable 2427:Hardware 2063:Temporal 1743:OpenRISC 1438:Cellular 1428:Dataflow 1421:modified 1001:29 March 972:cite web 962:14 March 827:(1984). 681:Archived 543:IEEE 754 509:See also 505:(IDEs). 438:powered 292:emulates 218:clocking 189:, as an 179:emulated 82:such as 72:division 60:addition 52:computer 3100:Related 3031:Quantum 3021:Digital 3016:Boolean 2914:Counter 2813:Quantum 2574:512-bit 2569:256-bit 2564:128-bit 2407:(MPSoC) 2392:on chip 2390:Systems 2208:(FLOPS) 2021:Process 1870:Control 1852:Hazards 1738:Itanium 1733:Unicore 1691:PowerPC 1416:Harvard 1376:Pointer 1371:Counter 1329:Quantum 1187:7 April 1130:. 1986. 1107:. 1985. 1058:. 1979. 462:-based 434:to its 408:80387SX 307:library 210:integer 160:with a 137:IBM 701 133:IBM 704 127:History 3036:Switch 3026:Analog 2764:(IMC) 2735:(MMU) 2584:others 2559:64-bit 2554:48-bit 2549:32-bit 2544:24-bit 2539:16-bit 2534:15-bit 2529:12-bit 2366:Mobile 2282:Stream 2277:Barrel 2272:Vector 2261:(GPU) 2220:(SUPS) 2188:(IPC) 2040:Memory 2033:Vector 2016:Thread 1999:Scalar 1801:Others 1748:RISC-V 1713:SuperH 1682:Power 1678:MIPS-X 1653:PDP-11 1502:Fabric 1254:Models 881:  843:  772:  762:  600:  532:CORDIC 450:, the 428:double 424:single 416:Weitek 398:, and 369:IBM PC 357:PDP-11 339:x86-64 199:CORDIC 151:GE-235 74:, and 3092:(PPW) 3050:Power 2942:Adder 2818:Array 2785:Logic 2746:(TLB) 2729:(FPU) 2723:(AGU) 2717:(ALU) 2707:units 2643:Cache 2524:8-bit 2519:4-bit 2514:1-bit 2478:(TPU) 2472:(DSP) 2466:(PPU) 2460:(VPU) 2449:(GPU) 2418:(NoC) 2401:(SoC) 2336:(PoP) 2330:(SiP) 2324:(MCM) 2265:GPGPU 2255:(CPU) 2245:Types 2226:(PPW) 2214:(TPS) 2202:(IPS) 2194:(CPI) 1965:Level 1776:S/390 1771:S/370 1766:S/360 1708:SPARC 1686:POWER 1569:TRIPS 1537:Types 1124:(PDF) 1101:(PDF) 1078:(PDF) 1052:(PDF) 1022:(PDF) 684:(PDF) 673:(PDF) 523:(AGU) 517:(ALU) 476:Amiga 468:Sun-3 460:68030 412:Cyrix 404:80387 396:80287 392:80286 233:80486 144:PDP-6 3070:ACPI 2803:Glue 2695:FIFO 2638:Core 2376:ASIP 2317:CPLD 2312:FPOA 2307:FPGA 2302:ASIC 2155:SPMD 2150:MIMD 2145:MISD 2138:SWAR 2118:SIMD 2113:SISD 2028:Data 2011:Task 1982:Word 1728:M32R 1673:MIPS 1636:sets 1603:ZISC 1598:NISC 1593:OISC 1588:MISC 1581:EPIC 1576:VLIW 1564:EDGE 1554:RISC 1549:CISC 1458:HUMA 1453:NUMA 1189:2021 1003:2018 978:link 964:2022 879:ISSN 870:Byte 841:ISBN 770:LCCN 760:ISBN 598:ISSN 430:and 414:and 406:and 390:and 327:SIMD 241:gate 229:8087 166:GPUs 3065:APM 3060:PMU 2952:CPU 2909:ROM 2680:Bus 2297:PAL 1972:Bit 1758:LMC 1663:ARM 1658:x86 1648:VAX 806:doi 590:doi 436:ARM 377:CPU 361:VAX 335:SSE 331:x87 86:or 44:FPU 3164:: 2999:3D 1144:. 1126:. 1103:. 1080:. 1064:^ 1054:. 1034:^ 1024:. 994:. 974:}} 970:{{ 950:. 924:^ 905:. 891:^ 875:15 873:. 839:. 802:11 800:. 788:^ 768:. 738:^ 722:. 704:. 700:. 679:. 675:. 643:. 619:. 596:. 586:11 584:. 497:, 426:, 418:. 388:AT 384:XT 309:. 302:. 286:. 70:, 66:, 62:, 38:A 1238:e 1231:t 1224:v 1210:. 1191:. 1154:. 1005:. 980:) 966:. 918:. 885:. 856:. 812:. 808:: 782:. 732:. 658:. 629:. 604:. 592:: 458:/ 42:( 20:)

Index

Floating point unit

computer
floating-point
addition
subtraction
multiplication
division
square root
transcendental functions
exponential
trigonometric
computer architectures
execution units
central processing unit
embedded processors
IBM 704
IBM 701
PDP-6
GE-235
floating point
coprocessor
GPUs
integrated circuit
circuit board
emulated
object code
microcode
operating system
user-space

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑