1160:
and it contains thirty-two 32-bit general-purpose registers for integer computation and thirty-two 128-bit SIMD registers for storing SIMD instructions, streaming data value and some integer calculation value, and one accumulator register for connecting general floating-point computation to the vector register file on the co-processor. The coprocessor is built via a 32-entry 128-bit vector register file (can only store vector values that pass from the accumulator in the CPU) and no integer registers are built in. Both the vector co-processor (VPU 0/1) and the
Emotion Engine's entire main processor module (VU0 + VU1 + VPU0 + VPU1) are built based on a modified MIPS instructions set. The accumulator in this case is not general-purpose but control status.
20:
1492:) memory locations 0–15; a hardware option called "fast memory" implemented the registers as separate ICs, and references to memory locations 0–15 referred to the IC registers. Later models implemented the registers as "fast memory" and continued to make memory locations 0–15 refer to them. Movement instructions take
784:
The A register is an accumulator to which all arithmetic is done; the register pairs B+C, D+E, and H+L can be used as address registers in some instructions; all registers can be used as operands in load/store/move/increment/decrement instructions and as the other operand in arithmetic instructions.
1703:
r15 is the program counter, and not usable as a general purpose register; r13 is the stack pointer; r8–r13 can be switched out for others (banked) on a processor mode switch. Older versions had 26-bit addressing, and used upper bits of the program counter (r15) for status flags, making that register
1207:
8 'A' registers, A0–A7, hold 18-bit addresses; 8 'B' registers, B0–B7, hold 18-bit integer values (with B0 permanently set to zero); 8 'X' registers, X0–X7, hold 60 bits of integer or floating-point data. Seven of the eight 18-bit A registers were coupled to their corresponding X registers: setting
1159:
The
Emotion Engine's main core (VU0) is a heavily modified DSP general core intended for general background tasks and it contains one 64-bit accumulator, two general data registers, and one 32-bit program counter. A modified MIPS III executable core (VU1) is for game data and protocol control,
1487:
All of the registers may be used generally (integer, float, stack pointer, jump, indexing, etc.). Every 36-bit memory (or register) word can also be manipulated as a half-word, which can be considered an (18-bit) address. Other word interpretations are used by certain instructions. In the original
1339:
An eight-core 8/16-bit sliced stack machine controller with a simple logic circuit inside, it has 8 cog counters (cores), each containing three 8/16 bit special control registers with 32 bit x 512 stack RAM. However, it does not contain any general register for integer purposes. Unlike most shadow
1208:
any of the A1–A5 registers to a value caused a memory load of the contents of that address into the corresponding X register. Likewise, setting an address into registers A6 or A7 caused a memory store into that location in memory from X6 or X7. (Registers A0 and X0 were not coupled like this).
1029:
A 16-bit wide, 32-bit address space stack machine processor from the
Taiwanese company Sunplus Technology, it can be found on Vtech's V.Smile line for educational purposes and video game consoles such as the Wireless 60, Mattel HyperScan, and XaviXPORT. It lacks any general-purpose register or
760:
The A register is an accumulator to which all arithmetic is done; the H and L registers can be used in combination as an address register; all registers can be used as operands in load/store/move/increment/decrement instructions and as the other operand in arithmetic instructions. There is no
1056:
and specialized for multimedia. It can be found on the company's own Nuon DVD player console line and the Game Wave Family
Entertainment System from ZaPit games. The design was heavily influenced by Intel's MMX technology; it contained a 128-byte unified stack cache for both vector and scalar
1610:
65c816 is the 16-bit successor of the 6502. X, Y, and D (Direct Page register) are condition registers and SP register are specific index only. Main accumulator extended to 16-bit (C) while keeping 8-bit (A) for compatibility and main registers can now address up to 24-bit (16-bit wide data
632:, this is also done for the floating-point register file. As a result of this, register files are commonly quoted as having one register more than how many of them are actually usable; for example, 32 registers are quoted when only 31 of them fit within the above definition of a register.
1007:
from AMD. The native processor only contains 1 data and 1 address register for all purposes and it is translated into 4 paths of 32-bit naming registers r1 (base), r2 (data), r3 (back pointer), and r4 (stack pointer) within scratchpad SRAM for integer operations.
203:
of data) can be loaded and operated upon at the same time. Typically it is implemented by adding extra registers that map their memory into a larger register. Processors that have the ability to execute single instructions on multiple data are called
874:
co-processor for floating-point operations, support an 80-bit wide, 8 deep register stack with some instructions able to use registers relative to the top of the stack as operands; without a co-processor, no floating-point registers are supported.
1242:
FP was optional in System/360, and always present in S/370 and later. In processors with the Vector
Facility, there are 16 vector registers containing a machine-dependent number of 32-bit elements. Some registers are assigned a fixed purpose by
1344:
systems, all of the stack RAM in cog can be accessed in instruction level, which allows all of these cogs to act as a single general-purpose core if necessary. Floating-point unit is external and it contains two 80-bit vector registers.
1545:
The general purpose registers are used for floating-point values as well. Three of the registers have special uses: R12 (Argument
Pointer), R13 (Frame Pointer), and R14 (Stack Pointer), while R15 refers to the Program Counter.
905:
for floating-point operations, later processors had built-in floating-point, with both having an 80-bit wide, 8 deep register stack with some instructions able to use registers relative to the top of the stack as operands. The
1003:, the processor had a translation layer that translated x86 code to native code and executed it. It does not support 128-bit SSE registers, just the 80387 stack of eight 80-bit floating-point registers, and partially supports
1587:
6502's content A (Accumulator) register for main purpose data store and memory address (8-bit data/16-bit address), X and Y are indirect and direct index registers (respectively) and the SP registers are specific index only.
1637:
with a modded 8080 instruction set. Only the A, B, C, and D registers are available through all modes (8/16/32-bit). It is incompatible with x86; however, it contains an 80-bit floating-point unit that is x87-compatible.
499:) store data and settings related to the processor itself. Because their meanings are attached to the design of a specific processor, they are not expected to remain standard between processor generations.
1807:
Each instruction controls whether registers are interpreted as integers or single precision floating point. Architecture is scalable to 4096 cores with 16 and 64 core implementations currently available.
1057:
instructions. The unified cache can be divided as eight 128-bit vector registers or thirty-two 32-bit SIMD scalar registers through bank renaming; there is no integer register in this architecture.
485:(PSW) register. The aforementioned stack pointer is sometimes also included in this group. Embedded microprocessors can also have registers corresponding to specialized hardware elements.
648:) is counted as an integer register, even though there are a limited number of instructions that may be used to operate on its contents. Similar caveats apply to most architectures.
199:, the registers can operate in various modes, breaking down their storage memory into smaller parts (32-bit into four 8-bit ones, for instance) to which multiple data (vector, or
108:, and provide the fastest way to access data. The term normally refers only to the group of registers that are directly encoded as part of an instruction, as defined by the
1458:
Also included are a stack pointer and a frame pointer. Additional registers are used to implement zero-overhead loops and circular buffer DAGs (data address generators).
216:
A processor often contains several kinds of registers, which can be classified according to the types of values they can store or the instructions that operate on them:
1119:
Address register 8 (a7) is the stack pointer. 68000, 68010, 68012, 68020, and 68030 require an FPU for floating-point; 68040 had FPU built in. FP registers are 80-bit.
1030:
internal register for naming/renaming, but its floating-point unit has an 80-bit 6-stage stack and four 128-bit VLIW SIMD registers on a vertex shader co-processor.
2326:
1928:
2074:
3506:
225:
can be read or written by machine instructions. The most common division of user-accessible registers is a division into data registers and address registers.
1079:
Nios II is based on the MIPS IV instruction set and has 31 32-bit GPRs, with register 0 being hardwired to zero, and eight 64-bit floating-point registers
2478:
86:. Manipulated items are then often stored back to main memory, either by the same instruction or by a subsequent one. Modern processors use either
2228:
Jia, Zhe; Maggioni, Marco; Staiger, Benjamin; Scarpazza, Daniele P. (2018). "Dissecting the NVIDIA Volta GPU Architecture via
Microbenchmarking".
1300:
1819:
The number of registers available on a processor and the operations that can be performed using those registers has a significant impact on the
3617:
2800:
4421:
3319:
2019:
2597:
2135:
794:
790:
786:
960:
Instructions can directly reference the first 16 scratchpad registers and can access all scratchpad registers indirectly through the ISAR
3476:
3042:
2859:
2397:
2152:
338:
whose value is added as an offset from some address); others allow registers to hold either kind of quantity. A wide variety of possible
1994:
3830:
723:
Scalar data registers can be integer or floating-point; also 64 scalar scratch-pad T registers and 64 address scratch-pad B registers
2822:
1794:
Integer register 0 is hardwired to 0. The RV32E variant, intended for systems with very limited resources, has 15 integer registers.
112:. However, modern high-performance CPUs often have duplicates of these "architectural registers" in order to improve performance via
3471:
2039:
3543:
3825:
3296:
1392:
984:
628:
in that it is hardwired to always return zero when read (mostly to simplify indexing modes), and it cannot be overwritten. In
594:
are the registers visible to software and are defined by an architecture. They may not correspond to the physical hardware if
1251:
ABIs, register 15 is used as a stack pointer. The S/390 G5 processor increased the number of floating-point registers to 16.
785:
Some instructions only use H+L; another instruction swaps H+L and D+E. Floating-point processors intended for the 8080 were
4240:
3364:
2627:
2471:
704:
All data manipulation instructions work solely within registers, and data must be moved into a register before processing.
2274:
2249:
1317:
A 32/40-bit stack machine-based network processor with a modified MIPS instruction set and a 128-bit floating-point unit.
4250:
3391:
2305:
1185:
numbers and 64-bit pointers therefore require two registers. It additionally has up to 8 predicate registers per thread.
1181:). The more registers are configured per thread, the fewer threads can run at the same time. Registers are 32 bits wide;
2206:
1917:
2518:
4414:
3558:
3386:
3359:
2738:
454:
2095:
4653:
4373:
3936:
2829:
2795:
2790:
2709:
2674:
4487:
4348:
4245:
3646:
3553:
3354:
2575:
2464:
2419:
1529:
R7 is the program counter. Any register can be a stack pointer but R6 is used for hardware interrupts and traps.
1182:
651:
Although all of the below-listed architectures are different, almost all are in a basic arrangement known as the
427:
383:
s) can store both data and addresses, i.e., they are combined data/address registers; in some architectures, the
27:
description of a 8-bit register with detailed implementation, showing how 8 bits of data can be stored by using
4643:
4462:
3374:
3093:
2528:
2368:
1248:
3548:
3396:
3369:
3230:
2844:
2805:
2662:
117:
4407:
3985:
3747:
3223:
3184:
2839:
2834:
2768:
2580:
196:
91:
3612:
3309:
3007:
2704:
2114:
1463:
87:
640:
The following table shows the number of registers in several mainstream CPU architectures. Note that in
4648:
4262:
3909:
3326:
2817:
2785:
2555:
2543:
2523:
2181:
1831:
of an expression tree gives the minimum number of registers required to evaluate that expression tree.
937:
504:
358:
243:
164:
4518:
4353:
4316:
4306:
2694:
1178:
1174:
911:
1969:
4617:
4447:
4368:
3775:
3711:
3688:
3538:
3500:
3336:
3286:
3281:
2758:
2652:
2560:
1616:
652:
47:, although some registers have specific hardware functions, and may be read-only or write-only. In
1952:
4612:
4321:
4104:
3998:
3962:
3879:
3863:
3705:
3494:
3453:
3441:
3304:
3218:
3139:
2904:
2565:
2508:
573:
490:
299:
239:
71:
28:
24:
1879:
4127:
4099:
4009:
3974:
3723:
3717:
3699:
3433:
3427:
3331:
3235:
3126:
3065:
2927:
2570:
2312:
1820:
996:
551:
247:
2343:
4536:
4477:
4301:
4210:
3956:
3668:
3486:
3245:
3213:
3171:
3083:
2884:
2699:
2689:
2679:
2669:
2639:
2622:
2487:
1035:
251:
200:
152:
121:
48:
40:
1409:
Also included are a link register, a count register, and a multiply quotient (MQ) register.
4331:
4267:
3853:
3575:
3465:
3412:
2944:
2657:
2513:
2495:
1489:
543:
534:
155:. Holding frequently used values in registers can be critical to a program's performance.
94:
75:
8:
4512:
4378:
4363:
4183:
4034:
4016:
3980:
3968:
3622:
3569:
3346:
3262:
3144:
2999:
2894:
2753:
2075:"Intel Architecture Instruction Set Extensions and Future Features Programming Reference"
1850:
1824:
1643:
1573:
1471:
128 general purpose registers, which can hold integer, address, or floating-point values
762:
482:
156:
83:
98:
4235:
4227:
4054:
3858:
3733:
3257:
3198:
3078:
2810:
2538:
2229:
1322:
1244:
74:
or not, load items of data from a larger memory into registers where they are used for
1361:
And 64 1-bit predicate registers and 8 branch registers. The FP registers are 82-bit.
4524:
4442:
4188:
4155:
4071:
4003:
3904:
3894:
3884:
3815:
3810:
3805:
3728:
3657:
3563:
3523:
3156:
3106:
3056:
3032:
2914:
2854:
2849:
2731:
2647:
1903:
1755:
936:
FP registers are 128-bit XMM registers, later extended to 256-bit YMM registers with
615:
603:
595:
528:
are not accessible by instructions and are used internally for processor operations.
450:
168:
113:
79:
4358:
4291:
4277:
4132:
4039:
3993:
3800:
3795:
3790:
3785:
3780:
3770:
3640:
3607:
3518:
3513:
3422:
3274:
3269:
3252:
3240:
3179:
2743:
2721:
2607:
2585:
2503:
1845:
1732:
1709:
1685:
659:
205:
148:
105:
44:
1435:
Also included are a link register and a count register. Processors supporting the
405:
often used to determine whether some instruction should or should not be executed.
4602:
4530:
4457:
4272:
4257:
4205:
4109:
4084:
3921:
3914:
3765:
3760:
3755:
3694:
3602:
3592:
3314:
3149:
3101:
2864:
2748:
2716:
2617:
2612:
2533:
2444:
1828:
1384:
1190:
478:
474:
396:
339:
109:
64:
4592:
4575:
4570:
4560:
4495:
4472:
4383:
4217:
4200:
4193:
4089:
3946:
3683:
3597:
3528:
3111:
3073:
3022:
3017:
3012:
2726:
2550:
1860:
1750:
Register r31 is the stack pointer or hardwired to 0, depending on the context.
1225:
1145:
690:
354:
335:
320:
316:
56:
4637:
4580:
4506:
4178:
4094:
3134:
3116:
2909:
2602:
1924:
1855:
1084:
954:
1 accumulator, 64 scratchpad registers, 1 indirect scratchpad register (ISAR)
656:
624:
619:
470:
384:
362:
348:
3037:
2250:"IBM Enterprise Systems Architecture/370 and System/370 - Vector Operations"
2053:
1247:; for example, register 14 is used for subroutine return addresses and, for
546:, a collection of storage registers located on separate chips from the CPU:
4467:
4452:
4388:
4326:
4142:
4119:
3931:
3652:
2590:
2405:
2375:
1727:
Version 1 of Thumb, which only supported access to registers r0 through r7
1268:
1102:
949:
16:
Quickly accessible working storage available as part of a digital processor
2054:"AMD64 Architecture Programmer's Manual Volume 1: Application Programming"
4173:
4137:
3848:
3820:
3678:
3533:
2456:
907:
902:
898:
871:
867:
859:
855:
851:
402:
129:
52:
1568:
Registers R31 (integer) and F31 (floating-point) are hardwired to zero.
1155:+ 2 Ă— 32 Vector (dedicated vector co-processor located nearby its GPU)
4622:
4565:
4555:
4059:
4049:
4044:
4026:
3926:
3899:
3161:
2994:
2964:
2684:
1509:
1476:
1341:
1221:
1217:
1213:
863:
847:
843:
133:
4399:
4585:
4150:
4147:
3889:
2959:
2937:
2327:"Synergistic Processor Unit Instruction Set Architecture Version 1.2"
1904:"A Survey of Techniques for Designing and Managing CPU Register File"
1840:
1664:
1551:
1418:
1000:
629:
255:
4165:
2984:
2234:
2159:
1799:
1444:
980:
965:
326:
Some processors contain registers that may only be used to hold an
160:
128:
design acquired these techniques around 1995 with the releases of
2974:
2932:
1634:
1534:
1488:
PDP-10 processors, these 16 GPRs also corresponded to main (i.e.
1436:
1414:
1350:
1276:
1062:
1053:
1013:
941:
806:
481:; the program counter and status register might be combined in a
295:
263:
259:
97:
as main memory, with the latter usually accessed via one or more
825:
4597:
2989:
2954:
2919:
2121:
1777:
1593:
1173:
Earlier generations allowed up to 127/63 registers per thread (
1124:
1004:
988:
919:
709:
283:
192:
188:
141:
60:
3447:
2979:
2949:
2081:
2040:"Intel 64 and IA-32 Architectures Software Developer Manuals"
1633:
Media-embedded processor was a 32-bit processor developed by
1366:
992:
991:
is the emulation of 486/Pentium compatible processor made by
880:
611:
342:, used to specify the effective address of an operand, exist.
291:
287:
279:
275:
271:
267:
184:
137:
51:, registers are typically addressed by mechanisms other than
4500:
4311:
3459:
3379:
2969:
2227:
1256:
1165:
770:
746:
728:
663:
39:
is a quickly accessible location available to a computer's
19:
391:
so that the GPRs can store floating-point numbers as well.
2899:
2889:
2420:"Procedure Call Standard for the ARM 64-bit Architecture"
2060:
1970:"8008 8 Bit Parallel Central Processor Unit Users Manual"
798:
641:
258:
and other data. In some older architectures, such as the
180:
125:
82:, and other operations, and are manipulated or tested by
2291:
662:. It is also noteworthy that the number of registers on
434:
2182:"Motorola M68000 Family Programmer's Reference Manual"
1884:
Educative: Interactive
Courses for Software Developers
422:
s) store floating-point numbers in many architectures.
43:. Registers usually consist of a small amount of fast
319:
and are used by instructions that indirectly access
2034:
2032:
1238:16 in G5 and later S/390 models and z/Architecture
104:Processor registers are normally at the top of the
2369:"Procedure Call Standard for the ARM Architecture"
1918:"Cray-1 Computer System Hardware Reference Manual"
361:are addressed by dedicated address registers (see
151:accesses the same data repeatedly, this is called
457:instructions (Single Instruction, Multiple Data).
179:Registers are normally measured by the number of
4635:
2029:
1995:"Intel 8080 Microcomputer Systems User's Manual"
2020:"80286 and 80287 Programmer's Reference Manual"
542:Registers related to fetching information from
539:holds the instruction currently being executed.
477:, also called the instruction pointer, and the
1052:A 32-bit stack machine processor developed by
598:is being performed by the underlying hardware.
4415:
2472:
2103:. Fairchild MOS Microcomputer Division. 1977.
618:), the first or last register in the integer
1271:in the late 1990s for pedagogical purposes.
433:hold read-only values such as zero, one, or
3477:Computer performance by orders of magnitude
2115:"Nios II Classic Processor Reference Guide"
655:, first proposed by the Hungarian-American
644:-compatible processors, the stack pointer (
4422:
4408:
2486:
2479:
2465:
1383:Global register 0 is hardwired to 0. Uses
2233:
797:. They were also readily usable with the
2136:"Nios II Gen2 Processor Reference Guide"
1340:register files in modern processors and
775:1 accumulator, 1 stack pointer, 6 others
18:
4429:
1953:"MCS-4 Micro Computer Set Users Manual"
1439:also have 32 128-bit vector registers.
914:with additional 128-bit XMM registers.
302:is used implicitly for many operations.
298:, a special data register known as the
4636:
1772:Integer register 0 is hardwired to 0.
940:and 512-bit ZMM0–ZMM31 registers with
55:, but may in some cases be assigned a
4403:
2460:
2398:"2.6.2. The Thumb-state register set"
607:are similar, but occur outside CPUs.
3448:Floating-point operations per second
2153:"M6800 Programming Reference Manual"
1611:instruction/24-bit memory address).
2402:ARM7TDMI Technical Reference Manual
13:
1170:configurable, up to 255 per thread
666:is much higher than that on CPUs.
14:
4665:
2445:"Epiphany Architecture Reference"
1107:8 data (d0–d7), 8 address (a0–a7)
195:register", or even more. In some
4374:Semiconductor device fabrication
1449:8 data, 2 accumulator, 6 address
956:
183:they can hold, for example, an "
4349:History of general-purpose CPUs
2576:Nondeterministic Turing machine
2437:
2412:
2390:
2361:
2336:
2319:
2298:
2284:
2267:
2242:
2221:
2199:
2174:
2145:
2128:
2107:
2088:
2067:
1934:from the original on 2021-11-07
1880:"What is a processor register?"
1267:An instruction set designed by
1183:double-precision floating-point
610:In some architectures (such as
4463:Low-level programming language
2529:Deterministic finite automaton
2348:Super Famicom Development Wiki
2046:
2012:
1987:
1962:
1945:
1910:
1896:
1872:
70:Almost all computers, whether
1:
3320:Simultaneous and heterogenous
2275:"IBM S/390 G5 Microprocessor"
1866:
1688:32-bit (ARM/A32, Thumb-2/T32)
668:
469:s) hold some elements of the
25:register-transfer level (RTL)
4004:Integrated memory controller
3986:Translation lookaside buffer
3185:Memory dependence prediction
2628:Random-access stored program
2581:Probabilistic Turing machine
1153:32 SIMD (integrated in UV1)
891:stack of 8 (if FP present),
246:and, in some architectures,
7:
3460:Synaptic updates per second
2425:. ARM Holdings. 22 May 2013
1834:
862:processors, if provided an
676:GPRs/data+address registers
635:
505:Memory type range registers
473:; they usually include the
10:
4670:
3864:Heterogeneous architecture
2786:Orthogonal instruction set
2556:Alternating Turing machine
2544:Quantum cellular automaton
2207:"CUDA C Programming Guide"
1500:is register-register, and
497:machine-specific registers
334:(in some cases used as an
4546:
4519:Microsoft Macro Assembler
4486:
4435:
4354:Microprocessor chronology
4341:
4317:Dynamic frequency scaling
4290:
4226:
4164:
4118:
4070:
4025:
3945:
3872:
3841:
3746:
3667:
3631:
3585:
3485:
3472:Cache performance metrics
3411:
3345:
3295:
3206:
3197:
3170:
3125:
3092:
3064:
3055:
2875:
2778:
2767:
2638:
2494:
2344:"Learning 65816 Assembly"
2042:. Intel. 4 December 2019.
1803:
1538:
1501:
1497:
1480:
1467:
1169:
462:Special-purpose registers
372:General-purpose registers
222:User-accessible registers
167:phase, or manually by an
159:is performed either by a
4448:Comparison of assemblers
4369:Hardware security module
3712:Digital signal processor
3689:Graphics processing unit
3501:Graphics processing unit
2332:. IBM. January 27, 2007.
2141:. Altera. April 2, 2015.
1814:
1089:2 data, 1 index, 1 stack
801:and similar processors.
733:1 accumulator, 16 others
714:8 scalar data, 8 address
653:von Neumann architecture
491:Model-specific registers
211:
4654:Central processing unit
4322:Dynamic voltage scaling
4105:Memory address register
3999:Branch target predictor
3963:Address generation unit
3706:Physics processing unit
3495:Central processing unit
3454:Transactions per second
3442:Instructions per second
3365:Array processing (SIMT)
2509:Stored-program computer
2306:"Series 32000 Databook"
2097:F8 Guide to Programming
2000:. Intel. September 1975
1958:. Intel. February 1973.
1504:is memory-to-register.
932:(if AVX-512 available)
893:8 (if SSE/MMX present)
751:1 accumulator, 6 others
591:Architectural registers
574:Memory address register
412:Floating-point register
174:
72:load/store architecture
4128:Hardwired control unit
4010:Memory management unit
3975:Memory management unit
3724:Secure cryptoprocessor
3718:Tensor Processing Unit
3700:Vision processing unit
3434:Cycles per instruction
3428:Instructions per cycle
3375:Associative processing
3066:Instruction pipelining
2488:Processor technologies
2313:National Semiconductor
1975:. Intel. November 1973
997:National Semiconductor
901:processor requires an
552:Memory buffer register
353:is used to manage the
248:floating-point numbers
32:
4644:Computer architecture
4537:Open Watcom Assembler
4478:x86 assembly language
4211:Sum-addressed decoder
3957:Arithmetic logic unit
3084:Classic RISC pipeline
3038:Epiphany architecture
2885:Motorola 68000 series
1823:of code generated by
201:one-dimensional array
153:locality of reference
122:speculative execution
76:arithmetic operations
49:computer architecture
22:
4618:Instruction listings
4332:Performance per watt
3910:replacement policies
3576:Package on a package
3466:Performance per watt
3370:Pipelined processing
3140:Tomasulo's algorithm
2945:Clipper architecture
2801:Application-specific
2514:Finite-state machine
1825:optimizing compilers
562:memory data register
535:instruction register
266:and successors, the
84:machine instructions
4613:Calling conventions
4513:High Level Assembly
4430:x86 assembly topics
4364:Digital electronics
4017:Instruction decoder
3969:Floating-point unit
3623:Soft microprocessor
3570:System in a package
3145:Reservation station
2675:Transport-triggered
1851:Register allocation
1665:AVR microcontroller
1644:PIC microcontroller
1245:calling conventions
1236:4 (if FP present);
763:floating-point unit
717:8 scalar, 8 vector
483:program status word
240:numeric data values
157:Register allocation
4608:Processor register
4236:Integrated circuit
4080:Processor register
3734:Baseband processor
3079:Operand forwarding
2539:Cellular automaton
2378:. 30 November 2013
2255:. IBM. SA22-7125-3
1494:(register, memory)
1323:Parallax Propeller
910:and later had the
604:Hardware registers
80:bitwise operations
37:processor register
33:
4649:Digital registers
4631:
4630:
4525:Netwide Assembler
4443:Assembly language
4397:
4396:
4286:
4285:
3905:Instruction cache
3895:Scratchpad memory
3742:
3741:
3729:Network processor
3658:Network on a chip
3613:Ultra-low-voltage
3564:Multi-chip module
3407:
3406:
3193:
3192:
3180:Branch prediction
3157:Register renaming
3051:
3050:
3033:VISC architecture
2855:Quantum computing
2850:VISC architecture
2732:Secondary storage
2648:Microarchitecture
2608:Register machines
1927:. November 1977.
1812:
1811:
1525:(if FPP present)
970:1 data, 1 address
765:(FPU) available.
596:register renaming
560:), also known as
522:Internal register
451:vector processing
206:vector processors
169:assembly language
114:register renaming
4661:
4424:
4417:
4410:
4401:
4400:
4359:Processor design
4251:Power management
4133:Instruction unit
3994:Branch predictor
3943:
3942:
3641:System on a chip
3583:
3582:
3423:Transistor count
3347:Flynn's taxonomy
3204:
3203:
3062:
3061:
2865:Addressing modes
2776:
2775:
2722:Memory hierarchy
2586:Hypercomputation
2504:Abstract machine
2481:
2474:
2467:
2458:
2457:
2452:
2451:
2449:
2441:
2435:
2434:
2432:
2430:
2424:
2416:
2410:
2409:
2394:
2388:
2387:
2385:
2383:
2373:
2365:
2359:
2358:
2356:
2354:
2340:
2334:
2333:
2331:
2323:
2317:
2316:
2310:
2302:
2296:
2295:
2292:"MMIX Home Page"
2288:
2282:
2281:
2279:
2271:
2265:
2264:
2262:
2260:
2254:
2246:
2240:
2239:
2237:
2225:
2219:
2218:
2216:
2214:
2203:
2197:
2196:
2194:
2192:
2187:. Motorola. 1992
2186:
2178:
2172:
2171:
2169:
2167:
2157:
2149:
2143:
2142:
2140:
2132:
2126:
2125:
2124:. April 2, 2015.
2119:
2111:
2105:
2104:
2102:
2092:
2086:
2085:
2079:
2071:
2065:
2064:
2058:
2050:
2044:
2043:
2036:
2027:
2026:
2024:
2016:
2010:
2009:
2007:
2005:
1999:
1991:
1985:
1984:
1982:
1980:
1974:
1966:
1960:
1959:
1957:
1949:
1943:
1942:
1940:
1939:
1933:
1922:
1914:
1908:
1907:
1900:
1894:
1893:
1891:
1890:
1876:
1846:Quantum register
1790:
1784:
1768:
1762:
1746:
1740:
1723:
1717:
1693:
1677:
1671:
1656:
1650:
1629:
1623:
1606:
1600:
1583:
1564:
1558:
1541:
1522:
1516:
1503:
1499:
1483:
1454:
1431:
1425:
1405:
1399:
1385:register windows
1379:
1373:
1335:
1329:
1313:
1307:
1292:(if FP present)
1289:
1283:
1232:
1203:
1197:
1137:
1131:
1115:(if FP present)
1112:
1094:
1075:
1069:
1048:
1042:
1026:
1025:6 stack + 4 SIMD
1020:
975:
926:
887:
838:(if FP present)
832:
813:
780:
756:
738:
697:
682:
677:
669:
660:John von Neumann
647:
524:
523:
446:
445:
444:Vector registers
414:
413:
397:Status registers
381:
380:
357:. Rarely, other
340:addressing modes
330:or only to hold
311:
310:
309:Address register
234:
233:
197:instruction sets
149:computer program
106:memory hierarchy
4669:
4668:
4664:
4663:
4662:
4660:
4659:
4658:
4634:
4633:
4632:
4627:
4603:Program counter
4548:
4542:
4531:Turbo Assembler
4482:
4458:Instruction set
4431:
4428:
4398:
4393:
4379:Tick–tock model
4337:
4293:
4282:
4222:
4206:Address decoder
4160:
4114:
4110:Program counter
4085:Status register
4066:
4021:
3981:Load–store unit
3948:
3941:
3868:
3837:
3738:
3695:Image processor
3670:
3663:
3633:
3627:
3603:Microcontroller
3593:Embedded system
3581:
3481:
3414:
3403:
3341:
3291:
3189:
3166:
3150:Re-order buffer
3121:
3102:Data dependency
3088:
3047:
2877:
2871:
2770:
2769:Instruction set
2763:
2749:Multiprocessing
2717:Cache hierarchy
2710:Register/memory
2634:
2534:Queue automaton
2490:
2485:
2455:
2447:
2443:
2442:
2438:
2428:
2426:
2422:
2418:
2417:
2413:
2396:
2395:
2391:
2381:
2379:
2371:
2367:
2366:
2362:
2352:
2350:
2342:
2341:
2337:
2329:
2325:
2324:
2320:
2308:
2304:
2303:
2299:
2290:
2289:
2285:
2277:
2273:
2272:
2268:
2258:
2256:
2252:
2248:
2247:
2243:
2226:
2222:
2212:
2210:
2205:
2204:
2200:
2190:
2188:
2184:
2180:
2179:
2175:
2165:
2163:
2162:. November 1976
2155:
2151:
2150:
2146:
2138:
2134:
2133:
2129:
2117:
2113:
2112:
2108:
2100:
2094:
2093:
2089:
2084:. January 2018.
2077:
2073:
2072:
2068:
2063:. October 2013.
2056:
2052:
2051:
2047:
2038:
2037:
2030:
2022:
2018:
2017:
2013:
2003:
2001:
1997:
1993:
1992:
1988:
1978:
1976:
1972:
1968:
1967:
1963:
1955:
1951:
1950:
1946:
1937:
1935:
1931:
1920:
1916:
1915:
1911:
1902:
1901:
1897:
1888:
1886:
1878:
1877:
1873:
1869:
1837:
1829:Strahler number
1817:
1788:
1782:
1766:
1760:
1744:
1738:
1721:
1715:
1691:
1675:
1669:
1654:
1648:
1627:
1621:
1604:
1598:
1581:
1578:1 data, 2 index
1562:
1556:
1539:
1520:
1514:
1481:
1452:
1437:Vector facility
1429:
1423:
1403:
1397:
1377:
1371:
1333:
1327:
1311:
1305:
1287:
1281:
1230:
1201:
1195:
1191:CDC 6000 series
1150:3(VU0)+ 32(VU1)
1135:
1129:
1110:
1092:
1073:
1067:
1046:
1040:
1024:
1018:
973:
924:
885:
830:
811:
778:
754:
736:
695:
691:AT&T Hobbit
680:
675:
645:
638:
625:pseudo-register
521:
520:
479:status register
475:program counter
443:
442:
411:
410:
378:
377:
308:
307:
231:
230:
214:
177:
165:code generation
110:instruction set
17:
12:
11:
5:
4667:
4657:
4656:
4651:
4646:
4629:
4628:
4626:
4625:
4620:
4615:
4610:
4605:
4600:
4595:
4593:Memory address
4590:
4589:
4588:
4583:
4578:
4576:Interrupt flag
4573:
4571:Direction flag
4568:
4558:
4552:
4550:
4544:
4543:
4541:
4540:
4534:
4528:
4522:
4516:
4510:
4504:
4501:Flat Assembler
4498:
4492:
4490:
4484:
4483:
4481:
4480:
4475:
4473:Microassembler
4470:
4465:
4460:
4455:
4450:
4445:
4439:
4437:
4433:
4432:
4427:
4426:
4419:
4412:
4404:
4395:
4394:
4392:
4391:
4386:
4384:Pin grid array
4381:
4376:
4371:
4366:
4361:
4356:
4351:
4345:
4343:
4339:
4338:
4336:
4335:
4329:
4324:
4319:
4314:
4309:
4304:
4298:
4296:
4288:
4287:
4284:
4283:
4281:
4280:
4275:
4270:
4265:
4260:
4255:
4254:
4253:
4248:
4243:
4232:
4230:
4224:
4223:
4221:
4220:
4218:Barrel shifter
4215:
4214:
4213:
4208:
4201:Binary decoder
4198:
4197:
4196:
4186:
4181:
4176:
4170:
4168:
4162:
4161:
4159:
4158:
4153:
4145:
4140:
4135:
4130:
4124:
4122:
4116:
4115:
4113:
4112:
4107:
4102:
4097:
4092:
4090:Stack register
4087:
4082:
4076:
4074:
4068:
4067:
4065:
4064:
4063:
4062:
4057:
4047:
4042:
4037:
4031:
4029:
4023:
4022:
4020:
4019:
4014:
4013:
4012:
4001:
3996:
3991:
3990:
3989:
3983:
3972:
3966:
3960:
3953:
3951:
3940:
3939:
3934:
3929:
3924:
3919:
3918:
3917:
3912:
3907:
3902:
3897:
3892:
3882:
3876:
3874:
3870:
3869:
3867:
3866:
3861:
3856:
3851:
3845:
3843:
3839:
3838:
3836:
3835:
3834:
3833:
3823:
3818:
3813:
3808:
3803:
3798:
3793:
3788:
3783:
3778:
3773:
3768:
3763:
3758:
3752:
3750:
3744:
3743:
3740:
3739:
3737:
3736:
3731:
3726:
3721:
3715:
3709:
3703:
3697:
3692:
3686:
3684:AI accelerator
3681:
3675:
3673:
3665:
3664:
3662:
3661:
3655:
3650:
3647:Multiprocessor
3644:
3637:
3635:
3629:
3628:
3626:
3625:
3620:
3615:
3610:
3605:
3600:
3598:Microprocessor
3595:
3589:
3587:
3586:By application
3580:
3579:
3573:
3567:
3561:
3556:
3551:
3546:
3541:
3536:
3531:
3529:Tile processor
3526:
3521:
3516:
3511:
3510:
3509:
3498:
3491:
3489:
3483:
3482:
3480:
3479:
3474:
3469:
3463:
3457:
3451:
3445:
3439:
3438:
3437:
3425:
3419:
3417:
3409:
3408:
3405:
3404:
3402:
3401:
3400:
3399:
3389:
3384:
3383:
3382:
3377:
3372:
3367:
3357:
3351:
3349:
3343:
3342:
3340:
3339:
3334:
3329:
3324:
3323:
3322:
3317:
3315:Hyperthreading
3307:
3301:
3299:
3297:Multithreading
3293:
3292:
3290:
3289:
3284:
3279:
3278:
3277:
3267:
3266:
3265:
3260:
3250:
3249:
3248:
3243:
3233:
3228:
3227:
3226:
3221:
3210:
3208:
3201:
3195:
3194:
3191:
3190:
3188:
3187:
3182:
3176:
3174:
3168:
3167:
3165:
3164:
3159:
3154:
3153:
3152:
3147:
3137:
3131:
3129:
3123:
3122:
3120:
3119:
3114:
3109:
3104:
3098:
3096:
3090:
3089:
3087:
3086:
3081:
3076:
3074:Pipeline stall
3070:
3068:
3059:
3053:
3052:
3049:
3048:
3046:
3045:
3040:
3035:
3030:
3027:
3026:
3025:
3023:z/Architecture
3020:
3015:
3010:
3002:
2997:
2992:
2987:
2982:
2977:
2972:
2967:
2962:
2957:
2952:
2947:
2942:
2941:
2940:
2935:
2930:
2922:
2917:
2912:
2907:
2902:
2897:
2892:
2887:
2881:
2879:
2873:
2872:
2870:
2869:
2868:
2867:
2857:
2852:
2847:
2842:
2837:
2832:
2827:
2826:
2825:
2815:
2814:
2813:
2803:
2798:
2793:
2788:
2782:
2780:
2773:
2765:
2764:
2762:
2761:
2756:
2751:
2746:
2741:
2736:
2735:
2734:
2729:
2727:Virtual memory
2719:
2714:
2713:
2712:
2707:
2702:
2697:
2687:
2682:
2677:
2672:
2667:
2666:
2665:
2655:
2650:
2644:
2642:
2636:
2635:
2633:
2632:
2631:
2630:
2625:
2620:
2615:
2605:
2600:
2595:
2594:
2593:
2588:
2583:
2578:
2573:
2568:
2563:
2558:
2551:Turing machine
2548:
2547:
2546:
2541:
2536:
2531:
2526:
2521:
2511:
2506:
2500:
2498:
2492:
2491:
2484:
2483:
2476:
2469:
2461:
2454:
2453:
2436:
2411:
2389:
2360:
2335:
2318:
2297:
2283:
2266:
2241:
2220:
2209:. Nvidia. 2019
2198:
2173:
2144:
2127:
2106:
2087:
2066:
2045:
2028:
2025:. Intel. 1987.
2011:
1986:
1961:
1944:
1909:
1895:
1870:
1868:
1865:
1864:
1863:
1861:Shift register
1858:
1853:
1848:
1843:
1836:
1833:
1816:
1813:
1810:
1809:
1805:
1802:
1796:
1795:
1792:
1786:
1780:
1774:
1773:
1770:
1764:
1758:
1752:
1751:
1748:
1742:
1736:
1729:
1728:
1725:
1719:
1713:
1712:32-bit (Thumb)
1706:
1705:
1701:
1695:
1689:
1682:
1681:
1679:
1673:
1667:
1661:
1660:
1658:
1652:
1646:
1640:
1639:
1631:
1625:
1619:
1613:
1612:
1608:
1602:
1596:
1590:
1589:
1585:
1579:
1576:
1570:
1569:
1566:
1560:
1554:
1548:
1547:
1543:
1537:
1531:
1530:
1527:
1518:
1512:
1506:
1505:
1485:
1479:
1473:
1472:
1469:
1466:
1460:
1459:
1456:
1450:
1447:
1441:
1440:
1433:
1427:
1421:
1411:
1410:
1407:
1401:
1395:
1389:
1388:
1381:
1375:
1369:
1363:
1362:
1359:
1356:
1353:
1347:
1346:
1337:
1331:
1325:
1319:
1318:
1315:
1309:
1303:
1297:
1296:
1294:
1285:
1279:
1273:
1272:
1265:
1262:
1259:
1253:
1252:
1240:
1234:
1228:
1226:z/Architecture
1210:
1209:
1205:
1199:
1193:
1187:
1186:
1171:
1168:
1162:
1161:
1157:
1151:
1148:
1146:Emotion Engine
1142:
1141:
1139:
1133:
1127:
1121:
1120:
1117:
1108:
1105:
1099:
1098:
1096:
1090:
1087:
1081:
1080:
1077:
1071:
1065:
1059:
1058:
1050:
1044:
1038:
1032:
1031:
1027:
1022:
1016:
1010:
1009:
977:
971:
968:
962:
961:
958:
955:
952:
946:
945:
934:
928:
922:
916:
915:
895:
889:
883:
877:
876:
840:
834:
828:
822:
821:
820:Stack machine
818:
815:
809:
803:
802:
782:
776:
773:
767:
766:
758:
752:
749:
743:
742:
740:
734:
731:
725:
724:
721:
719:(64 elements)
715:
712:
706:
705:
702:
699:
693:
687:
686:
683:
678:
673:
637:
634:
600:
599:
587:
586:
585:
584:
583:
569:
540:
516:
515:
514:
500:
486:
458:
449:hold data for
438:
423:
406:
392:
368:
367:
366:
355:run-time stack
343:
336:index register
332:numeric values
321:primary memory
303:
213:
210:
176:
173:
57:memory address
15:
9:
6:
4:
3:
2:
4666:
4655:
4652:
4650:
4647:
4645:
4642:
4641:
4639:
4624:
4621:
4619:
4616:
4614:
4611:
4609:
4606:
4604:
4601:
4599:
4596:
4594:
4591:
4587:
4584:
4582:
4581:Overflow flag
4579:
4577:
4574:
4572:
4569:
4567:
4564:
4563:
4562:
4559:
4557:
4554:
4553:
4551:
4545:
4538:
4535:
4532:
4529:
4526:
4523:
4520:
4517:
4514:
4511:
4508:
4507:GNU Assembler
4505:
4502:
4499:
4497:
4494:
4493:
4491:
4489:
4485:
4479:
4476:
4474:
4471:
4469:
4466:
4464:
4461:
4459:
4456:
4454:
4451:
4449:
4446:
4444:
4441:
4440:
4438:
4434:
4425:
4420:
4418:
4413:
4411:
4406:
4405:
4402:
4390:
4387:
4385:
4382:
4380:
4377:
4375:
4372:
4370:
4367:
4365:
4362:
4360:
4357:
4355:
4352:
4350:
4347:
4346:
4344:
4340:
4333:
4330:
4328:
4325:
4323:
4320:
4318:
4315:
4313:
4310:
4308:
4305:
4303:
4300:
4299:
4297:
4295:
4289:
4279:
4276:
4274:
4271:
4269:
4266:
4264:
4261:
4259:
4256:
4252:
4249:
4247:
4244:
4242:
4239:
4238:
4237:
4234:
4233:
4231:
4229:
4225:
4219:
4216:
4212:
4209:
4207:
4204:
4203:
4202:
4199:
4195:
4192:
4191:
4190:
4187:
4185:
4182:
4180:
4179:Demultiplexer
4177:
4175:
4172:
4171:
4169:
4167:
4163:
4157:
4154:
4152:
4149:
4146:
4144:
4141:
4139:
4136:
4134:
4131:
4129:
4126:
4125:
4123:
4121:
4117:
4111:
4108:
4106:
4103:
4101:
4100:Memory buffer
4098:
4096:
4095:Register file
4093:
4091:
4088:
4086:
4083:
4081:
4078:
4077:
4075:
4073:
4069:
4061:
4058:
4056:
4053:
4052:
4051:
4048:
4046:
4043:
4041:
4038:
4036:
4035:Combinational
4033:
4032:
4030:
4028:
4024:
4018:
4015:
4011:
4008:
4007:
4005:
4002:
4000:
3997:
3995:
3992:
3987:
3984:
3982:
3979:
3978:
3976:
3973:
3970:
3967:
3964:
3961:
3958:
3955:
3954:
3952:
3950:
3944:
3938:
3935:
3933:
3930:
3928:
3925:
3923:
3920:
3916:
3913:
3911:
3908:
3906:
3903:
3901:
3898:
3896:
3893:
3891:
3888:
3887:
3886:
3883:
3881:
3878:
3877:
3875:
3871:
3865:
3862:
3860:
3857:
3855:
3852:
3850:
3847:
3846:
3844:
3840:
3832:
3829:
3828:
3827:
3824:
3822:
3819:
3817:
3814:
3812:
3809:
3807:
3804:
3802:
3799:
3797:
3794:
3792:
3789:
3787:
3784:
3782:
3779:
3777:
3774:
3772:
3769:
3767:
3764:
3762:
3759:
3757:
3754:
3753:
3751:
3749:
3745:
3735:
3732:
3730:
3727:
3725:
3722:
3719:
3716:
3713:
3710:
3707:
3704:
3701:
3698:
3696:
3693:
3690:
3687:
3685:
3682:
3680:
3677:
3676:
3674:
3672:
3666:
3659:
3656:
3654:
3651:
3648:
3645:
3642:
3639:
3638:
3636:
3630:
3624:
3621:
3619:
3616:
3614:
3611:
3609:
3606:
3604:
3601:
3599:
3596:
3594:
3591:
3590:
3588:
3584:
3577:
3574:
3571:
3568:
3565:
3562:
3560:
3557:
3555:
3552:
3550:
3547:
3545:
3542:
3540:
3537:
3535:
3532:
3530:
3527:
3525:
3522:
3520:
3517:
3515:
3512:
3508:
3505:
3504:
3502:
3499:
3496:
3493:
3492:
3490:
3488:
3484:
3478:
3475:
3473:
3470:
3467:
3464:
3461:
3458:
3455:
3452:
3449:
3446:
3443:
3440:
3435:
3432:
3431:
3429:
3426:
3424:
3421:
3420:
3418:
3416:
3410:
3398:
3395:
3394:
3393:
3390:
3388:
3385:
3381:
3378:
3376:
3373:
3371:
3368:
3366:
3363:
3362:
3361:
3358:
3356:
3353:
3352:
3350:
3348:
3344:
3338:
3335:
3333:
3330:
3328:
3325:
3321:
3318:
3316:
3313:
3312:
3311:
3308:
3306:
3303:
3302:
3300:
3298:
3294:
3288:
3285:
3283:
3280:
3276:
3273:
3272:
3271:
3268:
3264:
3261:
3259:
3256:
3255:
3254:
3251:
3247:
3244:
3242:
3239:
3238:
3237:
3234:
3232:
3229:
3225:
3222:
3220:
3217:
3216:
3215:
3212:
3211:
3209:
3205:
3202:
3200:
3196:
3186:
3183:
3181:
3178:
3177:
3175:
3173:
3169:
3163:
3160:
3158:
3155:
3151:
3148:
3146:
3143:
3142:
3141:
3138:
3136:
3135:Scoreboarding
3133:
3132:
3130:
3128:
3124:
3118:
3117:False sharing
3115:
3113:
3110:
3108:
3105:
3103:
3100:
3099:
3097:
3095:
3091:
3085:
3082:
3080:
3077:
3075:
3072:
3071:
3069:
3067:
3063:
3060:
3058:
3054:
3044:
3041:
3039:
3036:
3034:
3031:
3028:
3024:
3021:
3019:
3016:
3014:
3011:
3009:
3006:
3005:
3003:
3001:
2998:
2996:
2993:
2991:
2988:
2986:
2983:
2981:
2978:
2976:
2973:
2971:
2968:
2966:
2963:
2961:
2958:
2956:
2953:
2951:
2948:
2946:
2943:
2939:
2936:
2934:
2931:
2929:
2926:
2925:
2923:
2921:
2918:
2916:
2913:
2911:
2910:Stanford MIPS
2908:
2906:
2903:
2901:
2898:
2896:
2893:
2891:
2888:
2886:
2883:
2882:
2880:
2874:
2866:
2863:
2862:
2861:
2858:
2856:
2853:
2851:
2848:
2846:
2843:
2841:
2838:
2836:
2833:
2831:
2828:
2824:
2821:
2820:
2819:
2816:
2812:
2809:
2808:
2807:
2804:
2802:
2799:
2797:
2794:
2792:
2789:
2787:
2784:
2783:
2781:
2777:
2774:
2772:
2771:architectures
2766:
2760:
2757:
2755:
2752:
2750:
2747:
2745:
2742:
2740:
2739:Heterogeneous
2737:
2733:
2730:
2728:
2725:
2724:
2723:
2720:
2718:
2715:
2711:
2708:
2706:
2703:
2701:
2698:
2696:
2693:
2692:
2691:
2690:Memory access
2688:
2686:
2683:
2681:
2678:
2676:
2673:
2671:
2668:
2664:
2661:
2660:
2659:
2656:
2654:
2651:
2649:
2646:
2645:
2643:
2641:
2637:
2629:
2626:
2624:
2623:Random-access
2621:
2619:
2616:
2614:
2611:
2610:
2609:
2606:
2604:
2603:Stack machine
2601:
2599:
2596:
2592:
2589:
2587:
2584:
2582:
2579:
2577:
2574:
2572:
2569:
2567:
2564:
2562:
2559:
2557:
2554:
2553:
2552:
2549:
2545:
2542:
2540:
2537:
2535:
2532:
2530:
2527:
2525:
2522:
2520:
2519:with datapath
2517:
2516:
2515:
2512:
2510:
2507:
2505:
2502:
2501:
2499:
2497:
2493:
2489:
2482:
2477:
2475:
2470:
2468:
2463:
2462:
2459:
2446:
2440:
2421:
2415:
2407:
2403:
2399:
2393:
2377:
2370:
2364:
2349:
2345:
2339:
2328:
2322:
2314:
2307:
2301:
2293:
2287:
2276:
2270:
2251:
2245:
2236:
2231:
2224:
2208:
2202:
2183:
2177:
2161:
2154:
2148:
2137:
2131:
2123:
2116:
2110:
2099:
2098:
2091:
2083:
2076:
2070:
2062:
2055:
2049:
2041:
2035:
2033:
2021:
2015:
1996:
1990:
1971:
1965:
1954:
1948:
1930:
1926:
1925:Cray Research
1919:
1913:
1905:
1899:
1885:
1881:
1875:
1871:
1862:
1859:
1857:
1856:Register file
1854:
1852:
1849:
1847:
1844:
1842:
1839:
1838:
1832:
1830:
1826:
1822:
1806:
1804:64 (per core)
1801:
1798:
1797:
1793:
1787:
1781:
1779:
1776:
1775:
1771:
1765:
1759:
1757:
1754:
1753:
1749:
1743:
1737:
1734:
1731:
1730:
1726:
1720:
1714:
1711:
1708:
1707:
1702:
1700:
1696:
1690:
1687:
1684:
1683:
1680:
1674:
1668:
1666:
1663:
1662:
1659:
1653:
1647:
1645:
1642:
1641:
1636:
1632:
1626:
1620:
1618:
1615:
1614:
1609:
1603:
1597:
1595:
1592:
1591:
1586:
1580:
1577:
1575:
1572:
1571:
1567:
1561:
1555:
1553:
1550:
1549:
1544:
1536:
1533:
1532:
1528:
1526:
1519:
1513:
1511:
1508:
1507:
1495:
1491:
1486:
1478:
1475:
1474:
1470:
1465:
1462:
1461:
1457:
1451:
1448:
1446:
1443:
1442:
1438:
1434:
1428:
1422:
1420:
1416:
1413:
1412:
1408:
1402:
1396:
1394:
1391:
1390:
1386:
1382:
1376:
1370:
1368:
1365:
1364:
1360:
1357:
1354:
1352:
1349:
1348:
1343:
1338:
1332:
1326:
1324:
1321:
1320:
1316:
1310:
1304:
1302:
1301:Xelerated X10
1299:
1298:
1295:
1293:
1286:
1280:
1278:
1275:
1274:
1270:
1266:
1263:
1260:
1258:
1255:
1254:
1250:
1246:
1241:
1239:
1235:
1229:
1227:
1223:
1219:
1215:
1212:
1211:
1206:
1200:
1194:
1192:
1189:
1188:
1184:
1180:
1176:
1172:
1167:
1164:
1163:
1158:
1156:
1152:
1149:
1147:
1144:
1143:
1140:
1134:
1128:
1126:
1123:
1122:
1118:
1116:
1109:
1106:
1104:
1101:
1100:
1097:
1091:
1088:
1086:
1085:Motorola 6800
1083:
1082:
1078:
1072:
1066:
1064:
1061:
1060:
1055:
1051:
1045:
1039:
1037:
1034:
1033:
1028:
1023:
1017:
1015:
1012:
1011:
1006:
1002:
998:
994:
990:
986:
982:
978:
972:
969:
967:
964:
963:
959:
953:
951:
948:
947:
943:
939:
935:
933:
929:
923:
921:
918:
917:
913:
909:
904:
900:
896:
894:
890:
884:
882:
879:
878:
873:
869:
865:
861:
857:
853:
849:
845:
841:
839:
835:
829:
827:
824:
823:
819:
816:
810:
808:
805:
804:
800:
796:
792:
788:
783:
777:
774:
772:
769:
768:
764:
759:
753:
750:
748:
745:
744:
741:
735:
732:
730:
727:
726:
722:
720:
716:
713:
711:
708:
707:
703:
700:
694:
692:
689:
688:
684:
679:
674:
672:Architecture
671:
670:
667:
665:
661:
658:
657:mathematician
654:
649:
643:
633:
631:
627:
626:
621:
620:register file
617:
613:
608:
606:
605:
597:
593:
592:
588:
581:
577:
576:
575:
570:
567:
563:
559:
555:
554:
553:
548:
547:
545:
541:
538:
537:
536:
530:
529:
527:
526:
517:
512:
508:
507:
506:
501:
498:
495:(also called
494:
493:
492:
487:
484:
480:
476:
472:
471:program state
468:
464:
463:
459:
456:
452:
448:
447:
439:
436:
432:
431:
429:
424:
421:
417:
416:
407:
404:
400:
399:
398:
393:
390:
386:
385:register file
382:
374:
373:
369:
364:
363:stack machine
360:
356:
352:
351:
350:
349:stack pointer
344:
341:
337:
333:
329:
325:
324:
322:
318:
314:
313:
304:
301:
297:
293:
289:
285:
281:
277:
273:
269:
265:
261:
257:
253:
250:, as well as
249:
245:
241:
237:
236:
232:Data register
227:
226:
224:
223:
219:
218:
217:
209:
207:
202:
198:
194:
190:
186:
182:
172:
170:
166:
162:
158:
154:
150:
145:
143:
139:
135:
131:
127:
123:
119:
115:
111:
107:
102:
100:
96:
93:
89:
85:
81:
77:
73:
68:
66:
62:
58:
54:
50:
46:
42:
38:
30:
26:
21:
4607:
4468:Machine code
4453:Disassembler
4389:Chip carrier
4327:Clock gating
4246:Mixed-signal
4143:Write buffer
4120:Control unit
4079:
3932:Clock signal
3671:accelerators
3653:Cypress PSoC
3310:Simultaneous
3127:Out-of-order
2759:Neuromorphic
2640:Architecture
2598:Belt machine
2591:Zeno machine
2524:Hierarchical
2439:
2427:. Retrieved
2414:
2406:ARM Holdings
2401:
2392:
2380:. Retrieved
2376:ARM Holdings
2363:
2351:. Retrieved
2347:
2338:
2321:
2300:
2286:
2269:
2257:. Retrieved
2244:
2223:
2211:. Retrieved
2201:
2189:. Retrieved
2176:
2164:. Retrieved
2147:
2130:
2109:
2096:
2090:
2069:
2048:
2014:
2002:. Retrieved
1989:
1977:. Retrieved
1964:
1947:
1936:. Retrieved
1912:
1898:
1887:. Retrieved
1883:
1874:
1818:
1735:64-bit (A64)
1698:
1524:
1493:
1464:IBM Cell SPE
1291:
1269:Donald Knuth
1237:
1154:
1114:
1103:Motorola 68k
1036:VM Labs Nuon
950:Fairchild F8
931:
892:
837:
718:
681:FP registers
650:
639:
623:
609:
602:
601:
590:
589:
579:
572:
571:
565:
561:
557:
550:
549:
533:
532:
519:
518:
510:
503:
502:
496:
489:
488:
466:
461:
460:
441:
440:
426:
425:
419:
409:
408:
403:truth values
395:
394:
388:
376:
371:
370:
347:
346:
331:
327:
306:
305:
229:
228:
221:
220:
215:
191:register", "
187:register", "
178:
171:programmer.
146:
103:
99:cache levels
69:
36:
34:
4547:Programming
4174:Multiplexer
4138:Data buffer
3849:Single-core
3821:bit slicing
3679:Coprocessor
3534:Coprocessor
3415:performance
3337:Cooperative
3327:Speculative
3287:Distributed
3246:Superscalar
3231:Instruction
3199:Parallelism
3172:Speculative
3004:System/3x0
2876:Instruction
2653:Von Neumann
2566:Post–Turing
2353:14 November
2004:January 23,
1979:January 23,
1699:(up to 32)
1502:MOVE 1,1000
1014:Sunplus SPG
908:Pentium III
836:stack of 8
359:data stacks
300:accumulator
130:Pentium Pro
116:, allowing
53:main memory
4638:Categories
4566:Carry flag
4556:Call stack
4488:Assemblers
4294:management
4189:Multiplier
4050:Logic gate
4040:Sequential
3947:Functional
3927:Clock rate
3900:Data cache
3873:Components
3854:Multi-core
3842:Core count
3332:Preemptive
3236:Pipelining
3219:Bit-serial
3162:Wide-issue
3107:Structural
3029:Tilera ISA
2995:MicroBlaze
2965:ETRAX CRIS
2860:Comparison
2705:Load–store
2685:Endianness
2235:1804.06826
1938:2022-12-23
1889:2022-08-12
1867:References
1821:efficiency
1496:operands:
1342:multi-core
1222:System/390
1218:System/370
1214:System/360
826:16-bit x86
817:stack of 6
795:Intel 8232
791:AMD Am9511
787:Intel 8231
701:stack of 7
294:, and the
256:bit arrays
252:characters
134:Cyrix 6x86
29:Flip-flops
4623:Registers
4586:Zero flag
4228:Circuitry
4148:Microcode
4072:Registers
3915:coherence
3890:CPU cache
3748:Word size
3413:Processor
3057:Execution
2960:DEC Alpha
2938:Power ISA
2754:Cognitive
2561:Universal
1841:CPU cache
1419:Power ISA
1393:IBM POWER
1125:SH 16-bit
1001:Transmeta
979:Geode GX/
930:16 or 32
430:registers
317:addresses
238:can hold
124:. Modern
59:e.g. DEC
41:processor
4496:A86/A386
4166:Datapath
3859:Manycore
3831:variable
3669:Hardware
3305:Temporal
2985:OpenRISC
2680:Cellular
2670:Dataflow
2663:modified
2191:June 13,
2160:Motorola
1929:Archived
1835:See also
1800:Epiphany
1704:32-bit.
1594:W65C816S
1498:MOVE 1,2
1445:Blackfin
981:Media GX
966:Geode GX
938:AVX/AVX2
636:Examples
453:done by
428:Constant
254:, small
244:integers
242:such as
161:compiler
118:parallel
65:ICT 1900
4342:Related
4273:Quantum
4263:Digital
4258:Boolean
4156:Counter
4055:Quantum
3816:512-bit
3811:256-bit
3806:128-bit
3649:(MPSoC)
3634:on chip
3632:Systems
3450:(FLOPS)
3263:Process
3112:Control
3094:Hazards
2980:Itanium
2975:Unicore
2933:PowerPC
2658:Harvard
2618:Pointer
2613:Counter
2571:Quantum
2259:May 11,
2166:May 18,
1697:Varies
1635:Toshiba
1415:PowerPC
1351:Itanium
1277:NS320xx
1063:Nios II
1054:VM Labs
999:. Like
942:AVX-512
807:iAPX432
389:unified
328:address
296:HP 2100
264:IBM 709
260:IBM 704
163:in the
147:When a
92:dynamic
45:storage
4598:Opcode
4549:issues
4539:(WASM)
4533:(TASM)
4527:(NASM)
4521:(MASM)
4503:(FASM)
4436:Topics
4278:Switch
4268:Analog
4006:(IMC)
3977:(MMU)
3826:others
3801:64-bit
3796:48-bit
3791:32-bit
3786:24-bit
3781:16-bit
3776:15-bit
3771:12-bit
3608:Mobile
3524:Stream
3519:Barrel
3514:Vector
3503:(GPU)
3462:(SUPS)
3430:(IPC)
3282:Memory
3275:Vector
3258:Thread
3241:Scalar
3043:Others
2990:RISC-V
2955:SuperH
2924:Power
2920:MIPS-X
2895:PDP-11
2744:Fabric
2496:Models
2429:27 May
2382:27 May
2213:Jan 9,
2122:Altera
1827:. The
1778:RISC-V
1510:PDP-11
1477:PDP-10
1005:3DNow!
920:x86-64
858:, and
793:, and
710:Cray-1
685:Notes
286:, the
284:PDP-15
270:, the
262:, the
193:64-bit
189:32-bit
142:AMD K5
140:, and
88:static
61:PDP-10
4561:Flags
4515:(HLA)
4509:(GAS)
4334:(PPW)
4292:Power
4184:Adder
4060:Array
4027:Logic
3988:(TLB)
3971:(FPU)
3965:(AGU)
3959:(ALU)
3949:units
3885:Cache
3766:8-bit
3761:4-bit
3756:1-bit
3720:(TPU)
3714:(DSP)
3708:(PPU)
3702:(VPU)
3691:(GPU)
3660:(NoC)
3643:(SoC)
3578:(PoP)
3572:(SiP)
3566:(MCM)
3507:GPGPU
3497:(CPU)
3487:Types
3468:(PPW)
3456:(TPS)
3444:(IPS)
3436:(CPI)
3207:Level
3018:S/390
3013:S/370
3008:S/360
2950:SPARC
2928:POWER
2811:TRIPS
2779:Types
2448:(PDF)
2423:(PDF)
2372:(PDF)
2330:(PDF)
2309:(PDF)
2278:(PDF)
2253:(PDF)
2230:arXiv
2185:(PDF)
2156:(PDF)
2139:(PDF)
2118:(PDF)
2101:(PDF)
2082:Intel
2078:(PDF)
2057:(PDF)
2023:(PDF)
1998:(PDF)
1973:(PDF)
1956:(PDF)
1932:(PDF)
1921:(PDF)
1815:Usage
1552:Alpha
1367:SPARC
1179:Fermi
1175:Tesla
993:Cyrix
903:80387
899:80386
881:IA-32
872:80287
868:80187
860:80286
856:80188
852:80186
630:Alpha
622:is a
612:SPARC
401:hold
315:hold
292:PDP-8
288:PDP-5
280:PDP-9
276:PDP-7
272:PDP-4
268:PDP-1
212:Types
185:8-bit
138:Nx586
4312:ACPI
4045:Glue
3937:FIFO
3880:Core
3618:ASIP
3559:CPLD
3554:FPOA
3549:FPGA
3544:ASIC
3397:SPMD
3392:MIMD
3387:MISD
3380:SWAR
3360:SIMD
3355:SISD
3270:Data
3253:Task
3224:Word
2970:M32R
2915:MIPS
2878:sets
2845:ZISC
2840:NISC
2835:OISC
2830:MISC
2823:EPIC
2818:VLIW
2806:EDGE
2796:RISC
2791:CISC
2700:HUMA
2695:NUMA
2431:2013
2384:2013
2355:2019
2261:2020
2215:2020
2193:2015
2168:2015
2006:2014
1981:2014
1756:MIPS
1574:6502
1490:core
1257:MMIX
1166:CUDA
989:5x86
985:4x86
897:The
864:8087
848:8088
844:8086
842:The
771:8080
747:8008
729:4004
664:GPUs
616:MIPS
614:and
531:The
511:MTRR
455:SIMD
345:The
181:bits
175:Size
120:and
4307:APM
4302:PMU
4194:CPU
4151:ROM
3922:Bus
3539:PAL
3214:Bit
3000:LMC
2905:ARM
2900:x86
2890:VAX
2061:AMD
1733:ARM
1710:ARM
1686:ARM
1617:MeP
1535:VAX
1468:128
1358:128
1355:128
1264:256
1261:256
1249:ELF
912:SSE
870:or
799:Z80
646:ESP
642:x86
580:MAR
566:MDR
558:MBR
544:RAM
467:SPR
420:FPR
387:is
379:GPR
126:x86
95:RAM
90:or
4640::
4241:3D
2404:.
2400:.
2374:.
2346:.
2311:.
2158:.
2120:.
2080:.
2059:.
2031:^
1923:.
1882:.
1791:32
1785:31
1769:32
1763:31
1747:32
1741:31
1724:16
1716:00
1694:14
1676:00
1672:32
1655:00
1649:00
1628:00
1622:00
1605:00
1599:00
1582:00
1565:31
1559:31
1542:16
1523:6
1521:00
1515:00
1484:16
1453:00
1432:32
1426:32
1406:32
1400:32
1387:.
1380:32
1374:31
1334:00
1328:00
1314:32
1306:00
1290:8
1288:00
1282:00
1233:16
1224:,
1220:,
1216:,
1202:00
1198:16
1136:00
1132:16
1130:00
1113:8
1111:00
1093:00
1074:00
1070:31
1047:00
1041:00
1019:00
974:00
944:.
927:16
886:00
866:,
850:,
831:00
812:00
789:,
779:00
755:00
737:00
696:00
513:s)
435:pi
365:).
323:.
208:.
144:.
136:,
132:,
101:.
78:,
67:.
63:,
35:A
23:A
4423:e
4416:t
4409:v
2480:e
2473:t
2466:v
2450:.
2433:.
2408:.
2386:.
2357:.
2315:.
2294:.
2280:.
2263:.
2238:.
2232::
2217:.
2195:.
2170:.
2008:.
1983:.
1941:.
1906:.
1892:.
1789:0
1783:0
1767:0
1761:0
1745:0
1739:0
1722:0
1718:8
1692:0
1678:0
1670:0
1657:0
1651:1
1630:8
1624:4
1607:0
1601:1
1584:0
1563:0
1557:0
1540:0
1517:7
1482:0
1455:0
1430:0
1424:0
1417:/
1404:0
1398:0
1378:0
1372:0
1336:2
1330:0
1312:0
1308:1
1284:8
1231:0
1204:8
1196:0
1177:/
1138:6
1095:0
1076:8
1068:0
1049:1
1043:0
1021:0
995:/
987:/
983:/
976:8
957:—
925:0
888:8
854:/
846:/
833:8
814:0
781:0
757:0
739:0
698:0
582:)
578:(
568:)
564:(
556:(
525:s
509:(
465:(
437:.
418:(
415:s
375:(
312:s
290:/
282:/
278:/
274:/
235:s
31:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.