Knowledge

Reduced instruction set computer

Source đź“ť

676:, its initial, relatively, lower power and cooling implementation was soon adapted to embedded applications, such as laser printer raster image processing. Acorn, in partnership with Apple Inc, and VLSI, creating ARM Ltd, in 1990, to share R&D costs and find new markets for the ISA, who in partnership with TI, GEC, Sharp, Nokia, Oracle and Digital would develop low-power and embedded RISC designs, and target those market segments, which at the time were niche. With the rise in mobile, automotive, streaming, smart device computing, ARM became the most widely used ISA, the company estimating almost half of all CPUs shipped in history have been ARM. 830:
following 13 contain an immediate value or uses only five of them to indicate a register for the second operand. A more complex example is the MIPS encoding, which used only 6 bits for the opcode, followed by two 5-bit registers. The remaining 16 bits could be used in two ways, one as a 16-bit immediate value, or as a 5-bit shift value (used only in shift operations, otherwise zero) and the remaining 6 bits as an extension on the opcode. In the case of register-to-register arithmetic operations, the opcode was 0 and the last 6 bits contained the actual code; those that used an immediate value used the normal opcode field at the front.
561: 601: 777:—clearly a CISC CPU because many of its instructions involve multiple memory accesses—has only 8 basic instructions and a few extended instructions. The term "reduced" in that phrase was intended to describe the fact that the amount of work any single instruction accomplishes is reduced—at most a single data memory cycle—compared to the "complex instructions" of CISC CPUs that may require dozens of data memory cycles in order to execute a single instruction. 983:, yet many CPU designs dedicated 16 or 32 bits to store them. This suggests that, to reduce the number of memory accesses, a fixed length machine could store constants in unused bits of the instruction word itself, so that they would be immediately ready when the CPU needs them (much like immediate addressing in a conventional design). This required small opcodes in order to leave room for a reasonably sized constant in a 32-bit instruction word. 810:
have an immediate combined with the opcode in a single memory word, although certain instructions like increment and decrement did this implicitly by using a different opcode. In contrast, a 32-bit machine has ample room to encode an immediate value, and doing so avoids the need to do a second memory read to pick up the value. This is why many RISC processors allow a 12- or 13-bit constant to be encoded directly into the instruction word.
68: 690: 22: 862:. Generally, these instructions expose a smaller number of registers and fewer bits for immediate values, and often use a two-operand format to eliminate one register number from instructions. A two-operand format in a system with 16 registers requires 8 bits for register numbers, leaving another 8 for an opcode or other uses. The 818:, in which case three registers numbers are needed. If the processor has 32 registers, each one requires a 5-bit number, for 15 bits. If one of these registers is replaced by an immediate, there is still lots of room to encode the two remaining registers and the opcode. Common instructions found in multi-word systems, like 661:. Many of these have since disappeared due to them often offering no competitive advantage over others of the same era. Those that remain are often used only in niche markets or as parts of other systems; of the designs from these traditional vendors, only SPARC and POWER have any significant remaining market. 525:, produced a functioning system in 1983, and could run simple programs by 1984. The MIPS approach emphasized an aggressive clock cycle and the use of the pipeline, making sure it could be run as "full" as possible. The MIPS system was followed by the MIPS-X and in 1984 Hennessy and his colleagues formed 768:
A common misunderstanding of the phrase "reduced instruction set computer" is that instructions are simply eliminated, resulting in a smaller set of instructions. In fact, over the years, RISC instruction sets have grown in size, and today many of them have a larger set of instructions than many CISC
748:
Confusion around the definition of RISC deriving from the formulation of the term, along with the tendency to opportunistically categorize processor architectures with relatively few instructions (or groups of instructions) as RISC architectures, led to attempts to define RISC as a design philosophy.
596:
In the early 1980s, significant uncertainties surrounded the RISC concept. One concern involved the use of memory; a single instruction from a traditional processor like the Motorola 68k may be written out as perhaps a half dozen of the simpler RISC instructions. In theory, this could slow the system
349:
The telephone switch program was canceled in 1975, but by then the team had demonstrated that the same design would offer significant performance gains running just about any code. In simulations, they showed that a compiler tuned to use registers wherever possible would run code about three times as
813:
Assuming a 13-bit constant area, as is the case in the MIPS and RISC designs, another 19 bits are available for the instruction encoding. This leaves ample room to indicate both the opcode and one or two registers. Register-to-register operations, mostly math and logic, require enough bits to encode
435:
Patterson's early work pointed out an important problem with the traditional "more is better" approach; even those instructions that were critical to overall performance were being delayed by their trip through the microcode. If the microcode was removed, the programs would run faster. And since the
103:(CISC), a RISC computer might require more instructions (more code) in order to accomplish a task because the individual instructions are written in simpler code. The goal is to offset the need to process more instructions by increasing the speed of each instruction, in particular by implementing an 947:
of the CPU busy for the extra time normally needed to perform a branch. Nowadays the branch delay slot is considered an unfortunate side effect of a particular strategy for implementing some RISC designs, and modern RISC designs generally do away with it (such as PowerPC and more recent versions of
496:
and aggressive use of register windowing. In a traditional CPU, one has a small number of registers, and a program can use any register at any time. In a CPU with register windows, there are a huge number of registers, e.g., 128, but programs can only use a small number of them, e.g., eight, at any
458:
than a sequence of simpler operations doing the same thing. This was in part an effect of the fact that many designs were rushed, with little time to optimize or tune every instruction; only those used most often were optimized, and a sequence of those instructions could be faster than a less-tuned
419:
to help DEC's west-coast team improve the VAX microcode. Patterson was struck by the complexity of the coding process and concluded it was untenable. He first wrote a paper on ways to improve microcoding, but later changed his mind and decided microcode itself was the problem. With funding from the
1018:
instruction. All other instructions were limited to internal registers. This simplified many aspects of processor design: allowing instructions to be fixed-length, simplifying pipelines, and isolating the logic for dealing with the delay in completing a memory access (cache miss, etc.) to only two
809:
Some of this is possible only due to the contemporary move to 32-bit formats. For instance, in a typical program, over 30% of all the numeric constants are either 0 or 1, 95% will fit in one byte, and 99% in a 16-bit value. When computers were based on 8- or 16-bit words, it would be difficult to
628:
processor, directly based on the Berkeley RISC-II system. The US government Committee on Innovations in Computing and Communications credits the acceptance of the viability of the RISC concept to the success of the SPARC system. The success of SPARC renewed interest within IBM, which released new
505:
designs of the era), RISC-I had only 32 instructions, and yet completely outperformed any other single-chip design, with estimated performance being higher than the VAX. They followed this up with the 40,760-transistor, 39-instruction RISC-II in 1983, which ran over three times as fast as RISC-I.
501:: The call simply moves the window "down" by eight, to the set of eight registers used by that procedure, and the return moves the window back. The Berkeley RISC project delivered the RISC-I processor in 1982. Consisting of only 44,420 transistors (compared with averages of about 100,000 in newer 959:
assembly coding, and that complex addressing modes take many cycles to perform due to the required additional memory accesses. It was argued that such functions would be better performed by sequences of simpler instructions if this could yield implementations small enough to leave room for many
829:
The original RISC-I format remains a canonical example of the concept. It uses 7 bits for the opcode and a 1-bit flag for conditional codes, the following 5 bits for the destination register, and the next five for the first operand. This leaves 14 bits, the first of which indicates whether the
341:
generally ignored the vast majority of the available instructions, especially orthogonal addressing modes. Instead, they selected the fastest version of any given instruction and then constructed small routines using it. This suggested that the majority of instructions could be removed without
488:
of them actually performed an operation like addition or subtraction. But when those operations did occur, they tended to be slow. This led to far more emphasis on the underlying arithmetic data unit, as opposed to previous designs where the majority of the chip was dedicated to control and
1097:
Outside of the desktop arena, however, the ARM RISC architecture is in widespread use in smartphones, tablets and many forms of embedded devices. While early RISC designs differed significantly from contemporary CISC designs, by 2000 the highest-performing CPUs in the RISC line were almost
994:
of any instruction; decreasing that cycle-time often accelerates the execution of other instructions. The focus on "reduced instructions" led to the resulting machine being called a "reduced instruction set computer" (RISC). The goal was to make instructions so simple that they could
833:
One drawback of 32-bit instructions is reduced code density, which is more adverse a characteristic in embedded computing than it is in the workstation and server markets RISC architectures were originally designed to serve. To address this problem, several architectures, such as
583:
ISA is fixed. The ISA is designed to be extensible from a barebones core sufficient for a small embedded processor to supercomputer and cloud computing use with standard and chip designer–defined extensions and coprocessors. It has been tested in silicon design with the ROCKET
932:, where the instruction stream and the data stream are conceptually separated; this means that modifying the memory where code is held might not have any effect on the instructions executed by the processor (because the CPU has a separate instruction and data 110:
The key operational concept of the RISC computer is that each instruction performs only one function (e.g. copy a value from memory to a register). The RISC computer usually has many (16 or 32) high-speed, general-purpose registers with a
350:
fast as traditional designs. Somewhat surprisingly, the same code would run about 50% faster even on existing machines due to the improved register use. In practice, their experimental PL/8 compiler, a slightly cut-down version of
789:
Another way of looking at the RISC/CISC debate is to consider what is exposed to the compiler. In a CISC processor, the hardware may internally use registers and flag bit in order to implement a single complex instruction such as
115:
in which the code for the register-register instructions (for performing arithmetic and tests) are separate from the instructions that access the main memory of the computer. The design of the CPU allows RISC computers few simple
936:), at least until a special synchronization instruction is issued; CISC processors that have separate instruction and data caches generally keep them synchronized automatically, for backwards compatibility with older processors. 295:(register+register, and register+immediate constant) and 74 operation codes, with the basic clock cycle being 10 times faster than the memory access time. Partly due to the optimized load–store architecture of the CDC 6600, 943:, an instruction space immediately following a jump or branch. The instruction in this space is executed, whether or not the branch is taken (in other words the effect of the branch is delayed). This instruction keeps the 436:
microcode ultimately took a complex instruction and broke it into steps, there was no reason the compiler couldn't do this instead. These studies suggested that, even with no other changes, one could make a chip with
960:
registers, reducing the number of slow memory accesses. In these simple designs, most instructions are of uniform length and similar structure, arithmetic operations are restricted to CPU registers and only separate
369:
in 1986, which turned out to be a commercial failure. Although the 801 did not see widespread use in its original form, it inspired many research projects, including ones at IBM that would eventually lead to the
548:
The goal of any instruction format should be: 1. simple decode, 2. simple decode, and 3. simple decode. Any attempts at improved code density at the expense of CPU performance should be ridiculed at every
632:
By the later 1980s, the new RISC designs were easily outperforming all traditional designs by a wide margin. At that point, all of the other vendors began RISC efforts of their own. Among these were the
1505:, and designed to be extended with instructions for networking, I/O, and data processing. A specification for a 64-bit superscalar design, "Rocket", is available for download. It is implemented in the 1031:
Some CPUs have been specifically designed to have a very small set of instructions—but these designs are very different from classic RISC designs, so they have been given other names such as
826:, which reduce the number of words that have to be read before performing the instruction, are unnecessary in RISC as they can be accomplished with a single register and the immediate value 1. 806:
Most RISC architectures have fixed-length instructions and a simple encoding, which simplifies fetch, decode, and issue logic considerably. This is among the main goals of the RISC approach.
478:
which can significantly improve subroutine performance although at the cost of some complexity. They also noticed that the majority of mathematical instructions were simple assignments; only
885:
Single-cycle operation, described as "the rapid execution of simple functions that dominate a computer's instruction stream", thus seeking to deliver an average throughput approaching one
1046:-based platforms remain the dominant processor architecture. However, this may change, as ARM-based processors are being developed for higher performance systems. Manufacturers including 333:
The design was based on a study of IBM's extensive collection of statistics gathered from their customers. This demonstrated that code in high-performance settings made extensive use of
428:
effort. The Program, practically unknown today, led to a huge number of advances in chip design, fabrication, and even computer graphics. Considering a variety of programs from their
299:
says that it can be considered a forerunner of modern RISC systems, although a number of other technical barriers needed to be overcome for the development of a modern RISC system.
1606:
ARM DesignStart, in 2018 ARM, in partnership with FPGA supplier Xilinx, started to offer free access to some of ARM's IP, including FPGA specification for some older CPU cores.
668:
has been the most widely adopted RISC ISA, initially intended to deliver higher performance desktop computing, at low cost, and in a restricted thermal package, such as in the
968:
instructions access memory. These properties enable a better balancing of pipeline stages than before, making RISC pipelines significantly more efficient and allowing higher
382:
By the late 1970s, the 801 had become well-known in the industry. This coincided with new fabrication techniques that were allowing more complex chips to come to market. The
986:
Since many real-world programs spend most of their time executing simple operations, some researchers decided to focus on making those operations as fast as possible. The
979:
summed up many of these, demonstrating that processors often had oversized immediates. For instance, he showed that 98% of all the constants in a program would fit in 13
579:, has been under development at the University of California, Berkeley, for research purposes and as a free alternative to proprietary ISAs. As of 2014, version 2 of the 474:
calls and returns, and it seemed there was the potential to improve overall performance by speeding these calls. This led the Berkeley design to select a method known as
3264: 955:
designs around 1975 include the observations that the memory-restricted compilers of the time were often unable to take advantage of features intended to facilitate
390:(68k) had 68,000. These newer designs generally used their newfound complexity to expand the instruction set to make it more orthogonal. Most, like the 68k, used 4914: 1066:-based devices in 2017 as part of its partnership with Qualcomm. These devices will support Windows applications compiled for 32-bit x86 via an x86 processor 620:
in some of their computers. In the meantime, the Berkeley effort had become so well known that it eventually became the name for the entire concept. In 1987
2277: 753:
A RISC processor has an instruction set that is designed for efficient execution by a pipelined processor and for code generation by an optimizing compiler.
322:. To reach their goal of switching 1 million calls per hour (300 per second) they calculated that the CPU required performance on the order of 12 million 553:
Competition between RISC and conventional CISC approaches was also the subject of theoretical analysis in the early 1980s, leading, for example, to the
209:
began offering systems designed according to RISC or RISC-like principles in the early 1980s. Few of these designs began by using RISC microprocessors.
1333:, a small core integer instruction set, and an experimental "Compressed" ISA for code density and designed for standard and special-purpose extensions. 1150:
dominates the market for low-power and low-cost embedded systems (typically 200–1800 MHz in 2014). It is used in a number of systems such as most
597:
down as it spent more time fetching instructions from memory. But by the mid-1980s, the concepts had matured enough to be seen as commercially viable.
707: 470:
The Berkeley work also turned up a number of additional points. Among these was the fact that programs spent a significant amount of time performing
866:
also follows this pattern, albeit having evolved in the opposite direction, having added longer 32-bit instructions to an original 16-bit encoding.
127:
project in the late 1970s, but these were not immediately put into use. Designers in California picked up the 801 concepts in two seminal projects,
3886: 3453: 5025: 4208: 1597:, in 2010, the Berkeley RISC version 5, specification, tool chain, and brand, were made available, free of charge, for non-commercial purposes. 3030: 4727: 2223: 361:
in 1981, which stood for 'Research OPD Micro Processor'. This CPU was designed for "mini" tasks, and found use in peripheral interfaces and
3205: 40: 4005: 3608: 878:
dedicated to the core logic which originally allowed designers to increase the size of the register set and increase internal parallelism.
337:, and that they often ran out of them. This suggested that additional registers would improve performance. Additionally, they noticed that 2451: 1010:
Later, it was noted that one of the most significant characteristics of RISC processors was that external memory was only accessible by a
4884: 4450: 4267: 3341:
Apple has officially announced that it will be switching from Intel processors to its own ARM-based, A-series chips in its Mac computers.
1007:. This contrasted with CISC designs whose "crucial arithmetic operations and register transfers" were considered difficult to pipeline. 5238: 794:, but hide those details from the compiler. The internal operations of a RISC processor are "exposed to the compiler", leading to the 4230: 3076: 99:
designed to simplify the individual instructions given to the computer to accomplish tasks. Compared to the instructions given to a
4879: 318:
and completed in 1980. The 801 developed out of an effort to build a 24-bit high-speed processor to use as the basis for a digital
3354: 3008: 268:
A number of systems, going back to the 1960s, have been credited as the first RISC architecture, partly based on their use of the
4951: 2817: 1142:
By the beginning of the 21st century, the majority of low-end and mobile systems relied on RISC architectures. Examples include:
2860:
Colwell, Robert P.; Hitchcock III, Charles Y.; Jensen, E. Douglas; Sprunt, H. M. Brinkley; Kollar, Charles P. (September 1985).
1733:
Colwell, Robert P.; Hitchcock III, Charles Y.; Jensen, E. Douglas; Sprunt, H. M. Brinkley; Kollar, Charles P. (September 1985).
1058:
in 2017 to produce an ARM-based supercomputer. On the desktop, Microsoft announced that it planned to support the PC version of
5822: 5233: 4704: 540:
The overall philosophy of the RISC concept was widely understood by the second half of the 1980s, and led the designers of the
1829: 432:
variant, the Berkeley team found, as had IBM, that most programs made no use of the large variety of instructions in the 68k.
3406: 2716: 2135: 394:
to do this, reading instructions and re-implementing them as a sequence of simpler internal instructions. In the 68k, a full
2982: 1639:
for their contributions to the invention, development, and implementation of reduced instruction set computer (RISC) chips.
5648: 4772: 4035: 3879: 1684: 1624: 408: 346:
to be shorter, freeing up bits in the instruction word which could then be used to select among a larger set of registers.
273: 3274: 3054: 5658: 4799: 1766: 342:
affecting the resulting code. These two conclusions worked in concert; removing instructions would allow the instruction
3926: 1352: 416: 3519: 4966: 4794: 4767: 4146: 3170: 2931: 2761: 2519: 2376: 2164: 2105: 2071: 1983: 1927: 1603:, in 2015, a project to offer clean room implementations of the, patent expired, Hitachi SuperH RISC ISA was started. 729: 554: 502: 454:
It was also discovered that, on microcoded implementations of certain architectures, complex operations tended to be
3531: 5781: 5344: 4237: 4198: 4117: 4082: 3601: 2261: 1036: 1032: 100: 31: 1042:
RISC architectures have traditionally had few successes in the desktop PC and commodity server markets, where the
5756: 5653: 5054: 4961: 4762: 3983: 3872: 3131: 1636: 1373: 315: 4782: 4501: 3936: 2965: 1894: 1717: 711: 429: 2861: 5817: 4956: 4804: 4777: 4638: 4252: 4213: 4070: 1506: 1498: 1476: 629:
RISC systems by 1990 and by 1995 RISC processors were the foundation of a $ 15 billion server industry.
975:
Yet another impetus of both RISC and other designs came from practical measurements on real-world programs.
892:
Uniform instruction format, using single word with the opcode in the same bit positions for simpler decoding
159:. As the projects matured, many similar designs, produced in the mid-to-late 1980s and early 1990s, such as 5393: 5155: 4631: 4592: 4247: 4242: 4176: 3988: 3297: 1663: 1658: 572: 3102: 2736: 5020: 4717: 4415: 4112: 3594: 2587: 2292: 1763:
Proceedings of the 1992 ACM/SIGAPP Symposium on Applied computing: technological challenges of the 1990's
1734: 782: 269: 112: 3586: 3323: 2919: 5670: 5317: 4734: 4225: 4193: 3963: 3951: 3931: 2005: 1789: 1632: 1151: 859: 839: 2428: 2408: 609: 5761: 5724: 5714: 4102: 3560: 1559:, for part of 2019 the specifications were free to use, royalty free, for registered MIPS developers. 917: 900: 654: 1919: 529:
to produce the design commercially. The venture resulted in a new architecture that was also called
450:
Skipping this extra level of interpretation appears to enhance performance while reducing chip size.
5776: 5183: 5119: 5096: 4946: 4908: 4744: 4694: 4689: 4166: 4060: 3968: 2309: 896: 2700: 2561: 2535: 2227: 1975: 1886: 5729: 5512: 5406: 5370: 5287: 5271: 5113: 4902: 4861: 4849: 4712: 4626: 4547: 4312: 3973: 3916: 3671: 3209: 2341: 2038: 1513: 1147: 814:
the two or three registers being used. Most processors use the three-operand format, of the form
700: 665: 323: 160: 3576: 3145: 2511: 1090:
processor, were released in November 2020. Macs with Apple silicon can run x86-64 binaries with
5535: 5507: 5417: 5382: 5131: 5125: 5107: 4841: 4835: 4739: 4643: 4534: 4473: 4335: 3978: 3845: 2633: 2304: 1837: 1448: 1127: 1123: 1115: 886: 493: 371: 257: 148: 3160: 2127: 2063: 459:
instruction performing an equivalent operation as that sequence. One infamous example was the
5709: 5618: 5364: 5076: 4894: 4653: 4621: 4579: 4491: 4292: 4107: 4097: 4087: 4077: 4047: 4030: 3895: 1648: 1494: 1472: 1348: 1330: 1265: 1245: 944: 526: 96: 59: 2692: 2503: 2119: 2055: 1967: 1912: 1878: 899:
can be used equally as source/destination in all instructions, simplifying compiler design (
612:
appeared in April 1985, MIPS R2000 appeared in January 1986, followed shortly thereafter by
5739: 5675: 5261: 4983: 4873: 4820: 4352: 4065: 3921: 3903: 3792: 3676: 1852: 1565:, in 2005, Sun released its Ultra Sparc documentation and specifications, under the GPLv2. 1534: 1257: 929: 921: 560: 534: 497:
one time. A program that limits itself to eight registers per procedure can make very fast
104: 1054:
have released server processors based on the ARM architecture. ARM further partnered with
769:
CPUs. Some RISC processors such as the PowerPC have instruction sets as large as the CISC
8: 5786: 5771: 5591: 5442: 5424: 5388: 5376: 5030: 4977: 4754: 4670: 4552: 4407: 4302: 4161: 3710: 3572: 2693: 2266:. 8th annual symposium on Computer Architecture. Minneapolis, MN, USA. pp. 443–457. 1968: 1879: 1742: 1538: 1520:
series processor used for various services on the AWS platform. ARM was also used in the
1403: 1261: 1063: 976: 514: 2673: 2654: 2614: 588:, which is also available as an open-source processor generator in the CHISEL language. 5643: 5635: 5487: 5462: 5266: 5141: 4665: 4606: 4486: 4218: 3946: 3736: 2881: 2798: 2474: 2322: 1430: 1372:
based on the ARM architecture for its lineup of desktop and laptop computers since its
1187: 1078:
desktop and laptop computers from Intel processors to internally developed ARM64-based
1071: 362: 334: 202: 198: 187: 179: 3432: 2835: 1945:
Assembly Language Programming for the Control Data 6000 Series and the Cyber 70 Series
1455:
were and are used in many of IBM's supercomputers, mid-range servers and workstations.
874:
For any given level of general performance, a RISC chip will typically have far fewer
5596: 5563: 5479: 5411: 5312: 5302: 5292: 5223: 5218: 5213: 5136: 5065: 4971: 4931: 4564: 4514: 4464: 4440: 4322: 4262: 4257: 4139: 4055: 3695: 3359: 3166: 2961: 2955: 2927: 2757: 2712: 2515: 2504: 2372: 2160: 2131: 2120: 2101: 2067: 2056: 1979: 1948: 1923: 1890: 1713: 1556: 1416: 1387: 1237: 1131: 843: 530: 136: 36: 2802: 2478: 2326: 5766: 5699: 5685: 5540: 5447: 5401: 5208: 5203: 5198: 5193: 5188: 5178: 5048: 5015: 4926: 4921: 4830: 4682: 4677: 4660: 4648: 4587: 4151: 4129: 4015: 3993: 3911: 3821: 3564: 3187: 2885: 2873: 2790: 2704: 2466: 2314: 2267: 2020: 1770: 1705: 1620: 1502: 1434: 1420: 1241: 1191: 1079: 743: 669: 621: 585: 522: 319: 307: 84: 72: 2181: 1106:
RISC architectures are now used across a range of platforms, from smartphones and
906:
Simple addressing modes with complex addressing performed by instruction sequences
446:
fewer transistors that would run faster. In the original RISC-I paper they noted:
5680: 5665: 5613: 5517: 5492: 5329: 5322: 5173: 5168: 5163: 5102: 5010: 5000: 4722: 4557: 4509: 4272: 4156: 4124: 4025: 4020: 3941: 3666: 3454:"Arm Expands Design Possibilities with Free Cortex-M Processors for Xilinx FPGAs" 2751: 2470: 1794: 1484: 1458: 1203: 1107: 969: 613: 475: 357:
A 32-bit version of the 801 was eventually produced in a single-chip form as the
292: 213: 206: 120:
and predictable instruction times that simplify design of the system as a whole.
117: 2924:
Proceedings of the Conference Held at Computer Graphics 87, London, October 1987
492:
The resulting Berkeley RISC was based on gaining performance through the use of
354:, consistently produced code that ran much faster on their existing mainframes. 171:, created central processing units that increased the commercial utility of the 5791: 5625: 5608: 5601: 5497: 5354: 5091: 5005: 4936: 4519: 4481: 4430: 4425: 4420: 4134: 3958: 3831: 3802: 3658: 3556: 2778: 1758: 1653: 1584: 1308: 1183: 1075: 770: 650: 510: 498: 387: 327: 241: 147:
eventually produced RISC designs based on further work on the 801 concept, the
2723:
the main goal was not to reduce the number of instructions, but the complexity
2429:"The RISC-V Instruction Set Manual, Volume I: Base User-Level ISA version 2.0" 600: 5811: 5586: 5502: 4542: 4524: 4317: 4010: 3690: 3642: 3637: 3544: 3269: 2295:; Ditzel, D. R. (1980). "The case for the reduced instruction set computer". 2152: 1952: 1628: 1541:
since they are relatively simple to implement, which makes them suitable for
1521: 1369: 1326: 1271: 1249: 1222: 1179: 1111: 1083: 569: 518: 425: 296: 277: 253: 183: 132: 128: 123:
The conceptual developments of the RISC computer architecture began with the
4445: 2877: 2794: 2708: 5796: 5734: 5550: 5527: 5339: 5060: 3998: 3779: 3686: 2638: 1616: 1594: 1517: 1207: 1199: 421: 288: 194: 3561:"Yet Another Post of the Old RISC Post [unchanged from last time]" 3478: 2349:. Advanced Course on VLSI Architecture. University of Bristol. CSD-82-106. 2318: 2271: 1774: 1552:, an open instruction set and micro-architecture first introduced in 2000. 5581: 5545: 5256: 5228: 5086: 4941: 3864: 3797: 3774: 3616: 2983:"Microsoft unveils new ARM server designs, threatening Intel's dominance" 2905: 2200: 1286: 1253: 1195: 1167: 638: 217: 175: 80: 3496: 3226: 2872:(9). The Institute of Electrical and Electronics Engineers, Inc.: 8–19. 2753:
Embedded Computing: A VLIW Approach to Architecture, Compilers and Tools
2449: 2024: 1881:
Embedded Computing: A VLIW Approach to Architecture, Compilers and Tools
1380:
processors, and the first such computers were released in November 2020.
5467: 5457: 5452: 5434: 5334: 5307: 4569: 4402: 4372: 4092: 3816: 3812: 3749: 3568: 3381: 2678:
PDP-8 Collection, The University Of Iowa Department of Computer Science
1365: 1359: 1175: 1159: 1059: 987: 940: 875: 714: in this section. Unsourced material may be challenged and removed. 646: 642: 580: 471: 412: 233: 229: 3214:
the line between RISC and CISC has been growing fuzzier over the years
2450:
Garnsey, Elizabeth; Lorenzoni, Gianni; Ferriani, Simone (March 2008).
1600: 673: 5558: 5555: 5297: 4367: 4345: 3807: 3769: 3753: 3705: 3077:"Microsoft is bringing Windows desktop apps to mobile ARM processors" 1810: 1735:"Instruction Sets and Beyond: Computers, Complexity, and Controversy" 1588: 1580: 1562: 1468: 1452: 1383: 1344: 1304: 1290: 1098:
indistinguishable from the highest-performing CPUs in the CISC line.
1091: 933: 910: 847: 795: 634: 391: 383: 366: 326:(MIPS), compared to their fastest mainframe machine of the time, the 237: 221: 168: 156: 3835: 2862:"Instruction Sets and Beyond: Computers, Complexity and Controversy" 2427:
Waterman, Andrew; Lee, Yunsup; Patterson, David A.; Asanovi, Krste.
1516:
currently in use by cloud providers for servers. One example is the
863: 689: 67: 5573: 4392: 3853: 3700: 3681: 3661: 3407:"Wave Computing Shutters MIPS Open Programme with Immediate Effect" 3328: 3032:
AMD's first ARM-based processor, the Opteron A1100, is finally here
2431:. University of California, Berkeley. Technical Report EECS-2014-54 1549: 1226: 1214: 1171: 1087: 1067: 1051: 939:
Many early RISC designs also shared the characteristic of having a
855: 358: 338: 284: 225: 2452:"Speciation through entrepreneurial spin-off: The Acorn-ARM story" 4382: 4340: 3849: 3840: 3741: 3632: 3009:"Cavium Unveils ThunderX2 Plans, Reports ARM Traction is Growing" 2100:
by Committee on Innovations in Computing and Communications 1999
1545:
implementations and prototyping, for instance. Examples include:
1524:
chip to create Fugaku, the world's fastest supercomputer in 2020.
1462: 1438: 1399: 1312: 1294: 658: 617: 311: 280:
project, although somewhat similar concepts had appeared before.
164: 152: 124: 2859: 1732: 990:
of a CPU is limited by the time it takes to execute the slowest
4397: 4362: 4327: 3826: 3746: 3726: 3717: 2098:
Funding a Revolution: Government Support for Computing Research
2058:
Processor architecture: from dataflow to superscalar and beyond
1490: 1480: 1395: 1391: 1322: 1298: 1275: 1155: 1119: 1047: 851: 835: 576: 541: 343: 249: 245: 3479:"Recipients of the Charles Stark Draper Prize for Engineering" 2122:
Processor design: system-on-chip computing for ASICs and FPGAs
1710:
Computer Architecture: Pipelined and Parallel Processor Design
608:
Commercial RISC designs began to emerge in the mid-1980s. The
107:, which may be simpler to achieve given simpler instructions. 4855: 4387: 4357: 3787: 3784: 3731: 1853:"Japan's Fugaku gains title as world's fastest supercomputer" 1572: 1426: 1377: 1230: 774: 625: 140: 3055:"Cray to Deliver ARM-Powered Supercomputer to UK Consortium" 1410: 1019:
instructions. This led to RISC designs being referred to as
5719: 4867: 4787: 4377: 3721: 3713: 2750:
Fisher, Joseph A.; Faraboschi, Paolo; Young, Cliff (2005).
1877:
Fisher, Joseph A.; Faraboschi, Paolo; Young, Cliff (2005).
1571:, an open source, radiation-tolerant implementation of the 1568: 1542: 1279: 1163: 1055: 914: 365:
on later IBM computers. It was also used as the CPU in the
351: 172: 55:
Processor executing one instruction in minimal clock cycles
1798:. Vol. 9, no. 12. McGraw-Hill. pp. 191–206. 4307: 4297: 2691:
Dandamudi, Sivarama P. (2005). "Ch. 3: RISC Principles".
1914:
Milestones in computer science and information technology
1444: 1316: 1282: 1218: 1043: 980: 460: 144: 3580:
Nth re-posting of CISC vs RISC (or what is RISC, really)
1465:, also known as HP-PA (discontinued at the end of 2008). 679: 3355:"Microsoft to launch a new ARM-based Surface this fall" 3324:"Apple starts its two-year transition to ARM this week" 2426: 1830:"Inside Technology — The Frantic Search for More Speed" 2695:
Guide to RISC Processors for Programmers and Engineers
1970:
Numerical Linear Algebra on High-Performance Computers
75:
UltraSPARC processor is a type of RISC microprocessor.
3126: 3124: 2777:
Alexander, W. Gregg; Wortman, David (November 1975).
2749: 2528: 1876: 1497:, and the integer core extended with floating point, 749:
One attempt to do so was expressed as the following:
291:
in 1964 used a load–store architecture with only two
3219: 3069: 2779:"Static and Dynamic Characteristics of XPL Programs" 2579: 1026: 2906:"Microprocessors From the Programmer's Perspective" 2613:Esponda, Margarita; Rojas, Ra'ul (September 1991). 1493:, the fifth Berkeley RISC ISA, with 64- or 128-bit 1347:computers from 1994, when they began a switch from 404:of the transistors were used for this microcoding. 212:The varieties of RISC processor design include the 3121: 2615:"Section 2: The confusion around the RISC concept" 2287: 2285: 2255: 2253: 2251: 2249: 2247: 2245: 2243: 2241: 2239: 2237: 1911: 1575:V8 instruction set (targeting space applications). 377: 2054:Ĺ ilc, Jurij; RobiÄŤ, Borut; Ungerer, Theo (1999). 2004:Cocke, John; Markstein, Victoria (January 1990). 1712:. Jones & Bartlett Learning. pp. 54–56. 5809: 2776: 2053: 1808: 1528: 1475:, workstations, servers and supercomputers from 386:of 1976 had 8,000 transistors, whereas the 1979 135:. These were commercialized in the 1980s as the 2339: 2291: 2282: 2263:RISC I: A Reduced Instruction Set VLSI Computer 2259: 2234: 1726: 1343:IBM's PowerPC architecture was used in Apple's 1337: 928:RISC designs are also more likely to feature a 3382:"ARM Processor - AWS Graviton Processor - AWS" 2619:The RISC Concept — A Survey of Implementations 2260:Patterson, David A.; Sequin, Carlo H. (1981). 2150: 2003: 881:Other features of RISC architectures include: 798:'Relegate Interesting Stuff to the Compiler'. 657:, and, slightly later, the IBM/Apple/Motorola 3880: 3602: 3148:(Press release). Apple Inc. 12 November 2020. 3134:(Press release). Apple Inc. 10 November 2020. 2490:the first silicon was run on April 26th 1985. 2340:Sequin, Carlo; Patterson, David (July 1982). 2182:"Design Philosophy Behind Motorola's MC68000" 1821: 1802: 1682: 1307:, used in a variety of products ranging from 1137: 1074:. Apple announced they will transition their 763: 509:As the RISC project began to become known in 244:, the MIPS architecture, PA-RISC, Power ISA, 3497:"Charles Stark Draper Prize for Engineering" 3433:"Branding Guidelines – RISC-V International" 3298:"Review: The ARM-powered Samsung Chromebook" 2953: 2911: 2612: 2562:"Arm searches for growth beyond smartphones" 1999: 1997: 1995: 1683:Chen, Crystal; Novick, Greg; Shimano, Kirk. 1101: 4885:Computer performance by orders of magnitude 3295: 2853: 2410:Code Density Concerns for New Architectures 1781: 1423:(ceased making MIPS-based systems in 2006). 1386:uses Qualcomm ARM-based processors for its 58:"RISC" redirects here. For other uses, see 3894: 3887: 3873: 3609: 3595: 2954:Dowd, Kevin; Loukides, Michael K. (1993). 1811:"Histoire de l'Informatique et d'Internet" 1750: 1591:with extensions for video and 3D graphics. 1533:RISC architectures have become popular in 951:Some aspects attributed to the first RISC- 858:, have an optional short, feature-reduced 263: 3321: 3250: 3162:Schaum's Outline of Computer Architecture 2690: 2390: 2388: 2308: 2218: 2216: 2214: 2198: 2093: 2091: 2089: 2087: 2085: 2083: 2006:"The evolution of RISC technology at IBM" 1992: 1700: 1698: 1411:Workstations, servers, and supercomputers 730:Learn how and when to remove this message 521:project grew out of a graduate course by 252:, and SPARC. RISC processors are used in 3206:"A History of Apple's Operating Systems" 3165:. McGraw Hill Professional. p. 96. 3132:"Introducing the next generation of Mac" 2917: 2362: 2360: 2358: 2356: 1965: 1942: 1903: 1315:open-source microcontroller platform to 1072:translates 32-bit x86 code to ARM64 code 599: 559: 66: 3262: 3052: 3006: 2980: 2926:. Online Publications. pp. 83–91. 2815: 2652: 2606: 2406: 2333: 2179: 2013:IBM Journal of Research and Development 1966:Dongarra, Jack J.; et al. (1987). 1870: 1787: 869: 5810: 3555: 3489: 3265:"Apple shifting from PowerPC to Intel" 3158: 2585: 2501: 2385: 2297:ACM SIGARCH Computer Architecture News 2211: 2111: 2080: 2043:(Technical report). IBM. January 1987. 1909: 1827: 1756: 1695: 1325:, the current iteration of Berkeley's 1086:; the first such computers, using the 591: 272:approach. The term RISC was coined by 3868: 3590: 3352: 3188:"CISC, RISC, and DSP Microprocessors" 3185: 2834:Staff, Embedded (24 September 2003). 2833: 2734: 2394: 2353: 2159:. Gulf Professional. pp. 252–4. 2117: 1704: 801: 758:Michael Slater, Microprocessor Report 680:Characteristics and design philosophy 4856:Floating-point operations per second 3471: 3053:Feldman, Michael (18 January 2017). 2621:. Freie Universitat Berlin. B-91-12. 2366: 1353:transitioned to Intel x86 processors 999:be pipelined, in order to achieve a 712:adding citations to reliable sources 683: 15: 2343:Design and Implementation of RISC I 1767:Association for Computing Machinery 1362:use ARM-based platforms since 2012. 1122:list as of November 2020, and 773:, for example; conversely, the DEC 310:views the first RISC system as the 13: 3542: 3353:Smith, Chris (16 September 2020). 2634:"RISC vs. CISC: the Post-RISC Era" 2631: 1947:. Algorithmics Press. p. 12. 1765:. SAC '92. Kansas City, Missouri: 1759:"An overview of RISC architecture" 1757:Aletan, Samuel O. (1 April 1992). 903:registers are often kept separate) 848:Power Variable Length Encoding ISA 604:Acorn ARM Evaluation System (1985) 417:University of California, Berkeley 14: 5834: 3511: 3227:"Top 500 The List: November 2020" 3203: 2671: 2510:. Taylor & Francis. pp.  2157:Readings in computer architecture 1918:. Greenwood Publishing. pp.  1094:, an x86-64 to ARM64 translator. 1027:Comparison to other architectures 889:for any single instruction stream 555:iron law of processor performance 5782:Semiconductor device fabrication 3618:Reduced instruction set computer 3322:DeAngelis, Marc (22 June 2020). 3103:"How x86 emulation works on ARM" 2199:Patterson, David (30 May 2018). 1828:Manuel, Tom (3 September 1987). 1278:, originally in wide use in the 1240:line (at one point used in many 1037:transport triggered architecture 1033:minimal instruction set computer 688: 624:began shipping systems with the 197:market, companies that included 101:complex instruction set computer 89:reduced instruction set computer 32:Complex instruction set computer 20: 5757:History of general-purpose CPUs 3984:Nondeterministic Turing machine 3446: 3425: 3399: 3374: 3346: 3315: 3289: 3256: 3244: 3197: 3179: 3152: 3138: 3095: 3046: 3023: 3000: 2981:Vincent, James (9 March 2017). 2974: 2947: 2899: 2827: 2809: 2770: 2743: 2728: 2684: 2665: 2646: 2625: 2554: 2495: 2443: 2420: 2407:Weaver, Vincent; McKee, Sally. 2400: 2192: 2173: 2144: 2047: 2031: 1959: 1936: 1788:Markoff, John (November 1984). 1637:National Academy of Engineering 1351:processors, to 2005, when they 1134:, the next three on that list. 1110:to some of the world's fastest 823: 819: 815: 791: 699:needs additional citations for 378:Berkeley RISC and Stanford MIPS 330:, which performed at 3.5 MIPS. 3937:Deterministic finite automaton 3035:, ExtremeTech, 14 January 2016 2816:Soares, JoĂŁo; Rocha, Ricardo. 2735:Walls, Colin (18 April 2016). 2369:The MIPS-X RISC microprocessor 1845: 1841:. McGraw-Hill. pp. 59–62. 1676: 1487:(HP)(discontinued as of 2007). 1213:IBM's PowerPC was used in the 216:processor, the DEC Alpha, the 1: 5823:Instruction set architectures 4728:Simultaneous and heterogenous 3007:Russell, John (31 May 2016). 2674:"Doug Jones's DEC PDP-8 FAQs" 2586:Slater, Michael (June 1990). 2371:. Springer. pp. xix–xx. 2040:IBM System/370 System Summary 1669: 1529:Open source, standard, or use 1507:European Processor Initiative 1477:Digital Equipment Corporation 1329:RISC ISA, with 32- or 64-bit 1311:handheld controllers and the 513:, a similar project began at 46:Proposed since December 2023. 5412:Integrated memory controller 5394:Translation lookaside buffer 4593:Memory dependence prediction 4036:Random-access stored program 3989:Probabilistic Turing machine 3538:. Stanford University. 2000. 3526:. Stanford University. 2000. 3159:Carter, Nicholas P. (2002). 2818:"Encoding MIPS Instructions" 2659:Australian Personal Computer 2653:Borrett, Lloyd (June 1991). 2471:10.1016/j.respol.2007.11.006 2180:Starnes, Thomas (May 1983). 1809:Boursin de l'Arc, Philippe. 1664:One-instruction set computer 1659:No instruction set computing 1338:Desktop and laptop computers 1293:, now developed and sold by 674:Super Computer League tables 573:instruction set architecture 564:RISC-V prototype chip (2013) 544:to put it this way in 1987: 220:, the ARM architecture, the 7: 4868:Synaptic updates per second 3296:Vaughan-Nichols, Steven J. 2836:"ARM Thumb Instruction Set" 2224:"Example: Berkeley RISC II" 1642: 1370:inhouse-designed processors 1244:computers) was used in the 29:It has been suggested that 10: 5839: 5272:Heterogeneous architecture 4194:Orthogonal instruction set 3964:Alternating Turing machine 3952:Quantum cellular automaton 3186:Jones, Douglas L. (2000). 2957:High Performance Computing 2918:Sweetman, Dominic (1987). 1633:Charles Stark Draper Prize 1154:-based systems, the Apple 1138:Low-end and mobile systems 860:compressed instruction set 764:Instruction set philosophy 741: 302: 57: 5762:Microprocessor chronology 5749: 5725:Dynamic frequency scaling 5698: 5634: 5572: 5526: 5478: 5433: 5353: 5280: 5249: 5154: 5075: 5039: 4993: 4893: 4880:Cache performance metrics 4819: 4753: 4703: 4614: 4605: 4578: 4533: 4500: 4472: 4463: 4283: 4186: 4175: 4046: 3902: 3762: 3651: 3625: 2536:"Olivetti buys RISC card" 2506:Computer science handbook 2502:Tucker, Allen B. (2004). 2155:; Sohi, Gurindar (1999). 1910:Reilly, Edwin D. (2003). 1610: 1102:Use of RISC architectures 897:general-purpose registers 672:, while featuring in the 314:design, begun in 1975 by 5777:Hardware security module 5120:Digital signal processor 5097:Graphics processing unit 4909:Graphics processing unit 3386:Amazon Web Services, Inc 2756:. Elsevier. p. 57. 2632:Stokes, Jon "Hannibal". 2542:. August 1988. p. 7 1943:Grishman, Ralph (1974). 1790:"New Chips — RISC Chips" 786:is sometimes preferred. 424:, Patterson started the 190:, and similar products. 5730:Dynamic voltage scaling 5513:Memory address register 5407:Branch target predictor 5371:Address generation unit 5114:Physics processing unit 4903:Central processing unit 4862:Transactions per second 4850:Instructions per second 4773:Array processing (SIMT) 3917:Stored-program computer 3146:"macOS Big Sur is here" 2908:by Andrew Schulman 1990 2878:10.1109/MC.1985.1663000 2795:10.1109/C-M.1975.218804 2709:10.1007/0-387-27446-4_3 783:load–store architecture 324:instructions per second 264:History and development 113:load–store architecture 5536:Hardwired control unit 5418:Memory management unit 5383:Memory management unit 5132:Secure cryptoprocessor 5126:Tensor Processing Unit 5108:Vision processing unit 4842:Cycles per instruction 4836:Instructions per cycle 4783:Associative processing 4474:Instruction pipelining 3896:Processor technologies 2920:"The RISC Workstation" 1746:. IEEE. pp. 8–19. 1535:open source processors 1473:single-board computers 1449:IBM POWER architecture 1402:PCs with an ARM-based 761: 605: 565: 551: 452: 372:IBM POWER architecture 149:IBM POWER architecture 76: 5619:Sum-addressed decoder 5365:Arithmetic logic unit 4492:Classic RISC pipeline 4446:Epiphany architecture 4293:Motorola 68000 series 3263:Bennett, Amy (2005). 2699:. Springer. pp.  2319:10.1145/641914.641917 2272:10.1145/285930.285981 2126:. Springer. pp.  2062:. Springer. pp.  1775:10.1145/143559.143570 1649:Classic RISC pipeline 1635:by the United States 1349:Motorola 68000 family 1266:Linksys WRT54G series 1118:, the fastest on the 887:instruction per cycle 751: 742:Further information: 603: 563: 546: 527:MIPS Computer Systems 448: 97:computer architecture 70: 60:RISC (disambiguation) 5818:Classes of computers 5740:Performance per watt 5318:replacement policies 4984:Package on a package 4874:Performance per watt 4778:Pipelined processing 4548:Tomasulo's algorithm 4353:Clipper architecture 4209:Application-specific 3922:Finite-state machine 3620:(RISC) architectures 3559:(5 September 2000). 2118:Nurmi, Jari (2007). 1885:. Elsevier. p.  1539:soft microprocessors 1262:residential gateways 1258:PlayStation Portable 930:Harvard memory model 922:binary-coded decimal 870:Hardware utilization 708:improve this article 535:R2000 microprocessor 105:instruction pipeline 39:into this article. ( 5772:Digital electronics 5425:Instruction decoder 5377:Floating-point unit 5031:Soft microprocessor 4978:System in a package 4553:Reservation station 4083:Transport-triggered 3543:Savard, John J. G. 3277:on 13 November 2020 2367:Chow, Paul (1989). 2153:Jouppi, Norman Paul 2151:Hill, Mark Donald; 2025:10.1147/rd.341.0004 1404:Qualcomm Snapdragon 1260:game consoles, and 1064:Qualcomm Snapdragon 592:Commercial breakout 515:Stanford University 363:channel controllers 335:processor registers 180:embedded processors 5644:Integrated circuit 5488:Processor register 5142:Baseband processor 4487:Operand forwarding 3947:Cellular automaton 3413:. 15 November 2019 3253:, pp. 121–123 2672:Jones, Douglas W. 2655:"RISC versus CISC" 2188:. p. Photo 1. 1769:. pp. 11–20. 1625:David A. Patterson 1190:devices, Nintendo 802:Instruction format 606: 568:Since 2010, a new 566: 422:DARPA VLSI Program 203:Pyramid Technology 199:Celerity Computing 77: 5805: 5804: 5694: 5693: 5313:Instruction cache 5303:Scratchpad memory 5150: 5149: 5137:Network processor 5066:Network on a chip 5021:Ultra-low-voltage 4972:Multi-chip module 4815: 4814: 4601: 4600: 4588:Branch prediction 4565:Register renaming 4459: 4458: 4441:VISC architecture 4263:Quantum computing 4258:VISC architecture 4140:Secondary storage 4056:Microarchitecture 4016:Register machines 3862: 3861: 3536:RISC Architecture 3524:RISC Architecture 3360:Boy Genius Report 3212:on 3 April 2020. 3109:. 23 October 2023 3083:. 8 December 2016 2718:978-0-387-21017-9 2137:978-1-4020-5529-4 1706:Flynn, Michael J. 1689:RISC Architecture 1631:were awarded the 1583:, an open source 1557:MIPS architecture 1503:vector processing 1132:Sunway TaihuLight 970:clock frequencies 948:SPARC and MIPS). 941:branch delay slot 856:Adapteva Epiphany 740: 739: 732: 53: 52: 48: 5830: 5767:Processor design 5659:Power management 5541:Instruction unit 5402:Branch predictor 5351: 5350: 5049:System on a chip 4991: 4990: 4831:Transistor count 4755:Flynn's taxonomy 4612: 4611: 4470: 4469: 4273:Addressing modes 4184: 4183: 4130:Memory hierarchy 3994:Hypercomputation 3912:Abstract machine 3889: 3882: 3875: 3866: 3865: 3611: 3604: 3597: 3588: 3587: 3582: 3552: 3545:"Not Quite RISC" 3539: 3527: 3505: 3504: 3493: 3487: 3486: 3475: 3469: 3468: 3466: 3464: 3450: 3444: 3443: 3441: 3439: 3429: 3423: 3422: 3420: 3418: 3403: 3397: 3396: 3394: 3392: 3378: 3372: 3371: 3369: 3367: 3350: 3344: 3343: 3338: 3336: 3319: 3313: 3312: 3310: 3308: 3293: 3287: 3286: 3284: 3282: 3273:. Archived from 3260: 3254: 3248: 3242: 3241: 3239: 3237: 3223: 3217: 3216: 3208:. Archived from 3201: 3195: 3194: 3192: 3183: 3177: 3176: 3156: 3150: 3149: 3142: 3136: 3135: 3128: 3119: 3118: 3116: 3114: 3099: 3093: 3092: 3090: 3088: 3073: 3067: 3066: 3064: 3062: 3050: 3044: 3043: 3042: 3040: 3027: 3021: 3020: 3018: 3016: 3004: 2998: 2997: 2995: 2993: 2978: 2972: 2971: 2951: 2945: 2944: 2942: 2940: 2915: 2909: 2903: 2897: 2896: 2894: 2892: 2857: 2851: 2850: 2848: 2846: 2831: 2825: 2824: 2822: 2813: 2807: 2806: 2774: 2768: 2767: 2747: 2741: 2740: 2732: 2726: 2725: 2698: 2688: 2682: 2681: 2669: 2663: 2662: 2650: 2644: 2643: 2629: 2623: 2622: 2610: 2604: 2603: 2601: 2599: 2594:. pp. 96–95 2583: 2577: 2576: 2574: 2572: 2558: 2552: 2551: 2549: 2547: 2532: 2526: 2525: 2509: 2499: 2493: 2492: 2487: 2485: 2456: 2447: 2441: 2440: 2438: 2436: 2424: 2418: 2417: 2415: 2404: 2398: 2397:, pp. 52–53 2392: 2383: 2382: 2364: 2351: 2350: 2348: 2337: 2331: 2330: 2312: 2293:Patterson, D. A. 2289: 2280: 2275: 2257: 2232: 2231: 2230:on 13 June 2022. 2226:. Archived from 2220: 2209: 2208: 2196: 2190: 2189: 2177: 2171: 2170: 2148: 2142: 2141: 2125: 2115: 2109: 2095: 2078: 2077: 2061: 2051: 2045: 2044: 2035: 2029: 2028: 2010: 2001: 1990: 1989: 1973: 1963: 1957: 1956: 1940: 1934: 1933: 1917: 1907: 1901: 1900: 1884: 1874: 1868: 1867: 1865: 1863: 1849: 1843: 1842: 1834: 1825: 1819: 1818: 1815:boursinp.free.fr 1806: 1800: 1799: 1785: 1779: 1778: 1754: 1748: 1747: 1739: 1730: 1724: 1723: 1702: 1693: 1692: 1680: 1629:Sophie M. Wilson 1621:John L. Hennessy 1514:ARM architecture 1435:Sun Microsystems 1421:Silicon Graphics 1233:gaming consoles. 1192:Game Boy Advance 1148:ARM architecture 1108:tablet computers 1005:high frequencies 977:Andrew Tanenbaum 913:in hardware (no 825: 821: 817: 793: 759: 744:Processor design 735: 728: 724: 721: 715: 692: 684: 670:Acorn Archimedes 666:ARM architecture 622:Sun Microsystems 575:(ISA), Berkeley 523:John L. Hennessy 487: 486: 482: 476:register windows 466: 445: 444: 440: 403: 402: 398: 320:telephone switch 308:Michael J. Flynn 293:addressing modes 118:addressing modes 85:computer science 73:Sun Microsystems 44: 24: 23: 16: 5838: 5837: 5833: 5832: 5831: 5829: 5828: 5827: 5808: 5807: 5806: 5801: 5787:Tick–tock model 5745: 5701: 5690: 5630: 5614:Address decoder 5568: 5522: 5518:Program counter 5493:Status register 5474: 5429: 5389:Load–store unit 5356: 5349: 5276: 5245: 5146: 5103:Image processor 5078: 5071: 5041: 5035: 5011:Microcontroller 5001:Embedded system 4989: 4889: 4822: 4811: 4749: 4699: 4597: 4574: 4558:Re-order buffer 4529: 4510:Data dependency 4496: 4455: 4285: 4279: 4178: 4177:Instruction set 4171: 4157:Multiprocessing 4125:Cache hierarchy 4118:Register/memory 4042: 3942:Queue automaton 3898: 3893: 3863: 3858: 3758: 3647: 3621: 3615: 3585: 3557:Mashey, John R. 3530: 3520:"RISC vs. CISC" 3518: 3514: 3509: 3508: 3495: 3494: 3490: 3477: 3476: 3472: 3462: 3460: 3452: 3451: 3447: 3437: 3435: 3431: 3430: 3426: 3416: 3414: 3405: 3404: 3400: 3390: 3388: 3380: 3379: 3375: 3365: 3363: 3351: 3347: 3334: 3332: 3320: 3316: 3306: 3304: 3294: 3290: 3280: 3278: 3261: 3257: 3249: 3245: 3235: 3233: 3225: 3224: 3220: 3202: 3198: 3190: 3184: 3180: 3173: 3157: 3153: 3144: 3143: 3139: 3130: 3129: 3122: 3112: 3110: 3101: 3100: 3096: 3086: 3084: 3075: 3074: 3070: 3060: 3058: 3051: 3047: 3038: 3036: 3029: 3028: 3024: 3014: 3012: 3005: 3001: 2991: 2989: 2979: 2975: 2968: 2952: 2948: 2938: 2936: 2934: 2916: 2912: 2904: 2900: 2890: 2888: 2858: 2854: 2844: 2842: 2832: 2828: 2820: 2814: 2810: 2775: 2771: 2764: 2748: 2744: 2737:"CISC and RISC" 2733: 2729: 2719: 2689: 2685: 2670: 2666: 2651: 2647: 2630: 2626: 2611: 2607: 2597: 2595: 2588:"What is RISC?" 2584: 2580: 2570: 2568: 2560: 2559: 2555: 2545: 2543: 2534: 2533: 2529: 2522: 2500: 2496: 2483: 2481: 2459:Research Policy 2454: 2448: 2444: 2434: 2432: 2425: 2421: 2413: 2405: 2401: 2393: 2386: 2379: 2365: 2354: 2346: 2338: 2334: 2290: 2283: 2258: 2235: 2222: 2221: 2212: 2201:"RISCy History" 2197: 2193: 2178: 2174: 2167: 2149: 2145: 2138: 2116: 2112: 2096: 2081: 2074: 2052: 2048: 2037: 2036: 2032: 2008: 2002: 1993: 1986: 1964: 1960: 1941: 1937: 1930: 1908: 1904: 1897: 1875: 1871: 1861: 1859: 1851: 1850: 1846: 1832: 1826: 1822: 1807: 1803: 1786: 1782: 1755: 1751: 1737: 1731: 1727: 1720: 1703: 1696: 1681: 1677: 1672: 1645: 1613: 1601:SuperH - J Core 1531: 1485:Hewlett-Packard 1459:Hewlett-Packard 1451:, PowerPC, and 1413: 1340: 1186:/ Windows CE), 1140: 1104: 1029: 1023:architectures. 872: 804: 766: 760: 757: 746: 736: 725: 719: 716: 705: 693: 682: 614:Hewlett-Packard 594: 499:procedure calls 484: 480: 479: 464: 442: 438: 437: 409:David Patterson 400: 396: 395: 380: 305: 274:David Patterson 266: 207:Ridge Computers 63: 56: 49: 25: 21: 12: 11: 5: 5836: 5826: 5825: 5820: 5803: 5802: 5800: 5799: 5794: 5792:Pin grid array 5789: 5784: 5779: 5774: 5769: 5764: 5759: 5753: 5751: 5747: 5746: 5744: 5743: 5737: 5732: 5727: 5722: 5717: 5712: 5706: 5704: 5696: 5695: 5692: 5691: 5689: 5688: 5683: 5678: 5673: 5668: 5663: 5662: 5661: 5656: 5651: 5640: 5638: 5632: 5631: 5629: 5628: 5626:Barrel shifter 5623: 5622: 5621: 5616: 5609:Binary decoder 5606: 5605: 5604: 5594: 5589: 5584: 5578: 5576: 5570: 5569: 5567: 5566: 5561: 5553: 5548: 5543: 5538: 5532: 5530: 5524: 5523: 5521: 5520: 5515: 5510: 5505: 5500: 5498:Stack register 5495: 5490: 5484: 5482: 5476: 5475: 5473: 5472: 5471: 5470: 5465: 5455: 5450: 5445: 5439: 5437: 5431: 5430: 5428: 5427: 5422: 5421: 5420: 5409: 5404: 5399: 5398: 5397: 5391: 5380: 5374: 5368: 5361: 5359: 5348: 5347: 5342: 5337: 5332: 5327: 5326: 5325: 5320: 5315: 5310: 5305: 5300: 5290: 5284: 5282: 5278: 5277: 5275: 5274: 5269: 5264: 5259: 5253: 5251: 5247: 5246: 5244: 5243: 5242: 5241: 5231: 5226: 5221: 5216: 5211: 5206: 5201: 5196: 5191: 5186: 5181: 5176: 5171: 5166: 5160: 5158: 5152: 5151: 5148: 5147: 5145: 5144: 5139: 5134: 5129: 5123: 5117: 5111: 5105: 5100: 5094: 5092:AI accelerator 5089: 5083: 5081: 5073: 5072: 5070: 5069: 5063: 5058: 5055:Multiprocessor 5052: 5045: 5043: 5037: 5036: 5034: 5033: 5028: 5023: 5018: 5013: 5008: 5006:Microprocessor 5003: 4997: 4995: 4994:By application 4988: 4987: 4981: 4975: 4969: 4964: 4959: 4954: 4949: 4944: 4939: 4937:Tile processor 4934: 4929: 4924: 4919: 4918: 4917: 4906: 4899: 4897: 4891: 4890: 4888: 4887: 4882: 4877: 4871: 4865: 4859: 4853: 4847: 4846: 4845: 4833: 4827: 4825: 4817: 4816: 4813: 4812: 4810: 4809: 4808: 4807: 4797: 4792: 4791: 4790: 4785: 4780: 4775: 4765: 4759: 4757: 4751: 4750: 4748: 4747: 4742: 4737: 4732: 4731: 4730: 4725: 4723:Hyperthreading 4715: 4709: 4707: 4705:Multithreading 4701: 4700: 4698: 4697: 4692: 4687: 4686: 4685: 4675: 4674: 4673: 4668: 4658: 4657: 4656: 4651: 4641: 4636: 4635: 4634: 4629: 4618: 4616: 4609: 4603: 4602: 4599: 4598: 4596: 4595: 4590: 4584: 4582: 4576: 4575: 4573: 4572: 4567: 4562: 4561: 4560: 4555: 4545: 4539: 4537: 4531: 4530: 4528: 4527: 4522: 4517: 4512: 4506: 4504: 4498: 4497: 4495: 4494: 4489: 4484: 4482:Pipeline stall 4478: 4476: 4467: 4461: 4460: 4457: 4456: 4454: 4453: 4448: 4443: 4438: 4435: 4434: 4433: 4431:z/Architecture 4428: 4423: 4418: 4410: 4405: 4400: 4395: 4390: 4385: 4380: 4375: 4370: 4365: 4360: 4355: 4350: 4349: 4348: 4343: 4338: 4330: 4325: 4320: 4315: 4310: 4305: 4300: 4295: 4289: 4287: 4281: 4280: 4278: 4277: 4276: 4275: 4265: 4260: 4255: 4250: 4245: 4240: 4235: 4234: 4233: 4223: 4222: 4221: 4211: 4206: 4201: 4196: 4190: 4188: 4181: 4173: 4172: 4170: 4169: 4164: 4159: 4154: 4149: 4144: 4143: 4142: 4137: 4135:Virtual memory 4127: 4122: 4121: 4120: 4115: 4110: 4105: 4095: 4090: 4085: 4080: 4075: 4074: 4073: 4063: 4058: 4052: 4050: 4044: 4043: 4041: 4040: 4039: 4038: 4033: 4028: 4023: 4013: 4008: 4003: 4002: 4001: 3996: 3991: 3986: 3981: 3976: 3971: 3966: 3959:Turing machine 3956: 3955: 3954: 3949: 3944: 3939: 3934: 3929: 3919: 3914: 3908: 3906: 3900: 3899: 3892: 3891: 3884: 3877: 3869: 3860: 3859: 3857: 3856: 3843: 3838: 3832:Motorola 88000 3829: 3824: 3819: 3810: 3805: 3800: 3795: 3790: 3782: 3777: 3772: 3766: 3764: 3760: 3759: 3757: 3756: 3744: 3739: 3734: 3729: 3724: 3708: 3703: 3698: 3693: 3684: 3679: 3674: 3669: 3664: 3659:Analog Devices 3655: 3653: 3649: 3648: 3646: 3645: 3640: 3635: 3629: 3627: 3623: 3622: 3614: 3613: 3606: 3599: 3591: 3584: 3583: 3553: 3540: 3532:"What is RISC" 3528: 3515: 3513: 3512:External links 3510: 3507: 3506: 3488: 3470: 3445: 3424: 3398: 3373: 3345: 3314: 3288: 3255: 3251:Dandamudi 2005 3243: 3218: 3196: 3178: 3171: 3151: 3137: 3120: 3107:Microsoft Docs 3094: 3068: 3045: 3022: 2999: 2973: 2966: 2946: 2932: 2910: 2898: 2852: 2826: 2808: 2769: 2762: 2742: 2727: 2717: 2683: 2664: 2645: 2624: 2605: 2578: 2553: 2527: 2520: 2494: 2465:(2): 210–224. 2442: 2419: 2399: 2384: 2377: 2352: 2332: 2310:10.1.1.68.9623 2281: 2233: 2210: 2191: 2172: 2165: 2143: 2136: 2110: 2079: 2072: 2046: 2030: 1991: 1984: 1958: 1935: 1928: 1902: 1895: 1869: 1844: 1820: 1801: 1780: 1749: 1725: 1718: 1694: 1674: 1673: 1671: 1668: 1667: 1666: 1661: 1656: 1654:Microprocessor 1651: 1644: 1641: 1612: 1609: 1608: 1607: 1604: 1598: 1592: 1578: 1577: 1576: 1560: 1553: 1530: 1527: 1526: 1525: 1510: 1495:address spaces 1488: 1466: 1456: 1442: 1424: 1412: 1409: 1408: 1407: 1398:have released 1381: 1363: 1356: 1339: 1336: 1335: 1334: 1331:address spaces 1320: 1302: 1269: 1234: 1211: 1184:Windows Mobile 1139: 1136: 1112:supercomputers 1103: 1100: 1028: 1025: 1003:throughput at 926: 925: 924:, for example) 907: 904: 901:floating-point 893: 890: 871: 868: 803: 800: 771:IBM System/370 765: 762: 755: 738: 737: 696: 694: 687: 681: 678: 651:Motorola 88000 593: 590: 517:in 1981. This 511:Silicon Valley 411:was sent on a 388:Motorola 68000 379: 376: 304: 301: 265: 262: 256:, such as the 254:supercomputers 242:Motorola 88000 54: 51: 50: 28: 26: 19: 9: 6: 4: 3: 2: 5835: 5824: 5821: 5819: 5816: 5815: 5813: 5798: 5795: 5793: 5790: 5788: 5785: 5783: 5780: 5778: 5775: 5773: 5770: 5768: 5765: 5763: 5760: 5758: 5755: 5754: 5752: 5748: 5741: 5738: 5736: 5733: 5731: 5728: 5726: 5723: 5721: 5718: 5716: 5713: 5711: 5708: 5707: 5705: 5703: 5697: 5687: 5684: 5682: 5679: 5677: 5674: 5672: 5669: 5667: 5664: 5660: 5657: 5655: 5652: 5650: 5647: 5646: 5645: 5642: 5641: 5639: 5637: 5633: 5627: 5624: 5620: 5617: 5615: 5612: 5611: 5610: 5607: 5603: 5600: 5599: 5598: 5595: 5593: 5590: 5588: 5587:Demultiplexer 5585: 5583: 5580: 5579: 5577: 5575: 5571: 5565: 5562: 5560: 5557: 5554: 5552: 5549: 5547: 5544: 5542: 5539: 5537: 5534: 5533: 5531: 5529: 5525: 5519: 5516: 5514: 5511: 5509: 5508:Memory buffer 5506: 5504: 5503:Register file 5501: 5499: 5496: 5494: 5491: 5489: 5486: 5485: 5483: 5481: 5477: 5469: 5466: 5464: 5461: 5460: 5459: 5456: 5454: 5451: 5449: 5446: 5444: 5443:Combinational 5441: 5440: 5438: 5436: 5432: 5426: 5423: 5419: 5416: 5415: 5413: 5410: 5408: 5405: 5403: 5400: 5395: 5392: 5390: 5387: 5386: 5384: 5381: 5378: 5375: 5372: 5369: 5366: 5363: 5362: 5360: 5358: 5352: 5346: 5343: 5341: 5338: 5336: 5333: 5331: 5328: 5324: 5321: 5319: 5316: 5314: 5311: 5309: 5306: 5304: 5301: 5299: 5296: 5295: 5294: 5291: 5289: 5286: 5285: 5283: 5279: 5273: 5270: 5268: 5265: 5263: 5260: 5258: 5255: 5254: 5252: 5248: 5240: 5237: 5236: 5235: 5232: 5230: 5227: 5225: 5222: 5220: 5217: 5215: 5212: 5210: 5207: 5205: 5202: 5200: 5197: 5195: 5192: 5190: 5187: 5185: 5182: 5180: 5177: 5175: 5172: 5170: 5167: 5165: 5162: 5161: 5159: 5157: 5153: 5143: 5140: 5138: 5135: 5133: 5130: 5127: 5124: 5121: 5118: 5115: 5112: 5109: 5106: 5104: 5101: 5098: 5095: 5093: 5090: 5088: 5085: 5084: 5082: 5080: 5074: 5067: 5064: 5062: 5059: 5056: 5053: 5050: 5047: 5046: 5044: 5038: 5032: 5029: 5027: 5024: 5022: 5019: 5017: 5014: 5012: 5009: 5007: 5004: 5002: 4999: 4998: 4996: 4992: 4985: 4982: 4979: 4976: 4973: 4970: 4968: 4965: 4963: 4960: 4958: 4955: 4953: 4950: 4948: 4945: 4943: 4940: 4938: 4935: 4933: 4930: 4928: 4925: 4923: 4920: 4916: 4913: 4912: 4910: 4907: 4904: 4901: 4900: 4898: 4896: 4892: 4886: 4883: 4881: 4878: 4875: 4872: 4869: 4866: 4863: 4860: 4857: 4854: 4851: 4848: 4843: 4840: 4839: 4837: 4834: 4832: 4829: 4828: 4826: 4824: 4818: 4806: 4803: 4802: 4801: 4798: 4796: 4793: 4789: 4786: 4784: 4781: 4779: 4776: 4774: 4771: 4770: 4769: 4766: 4764: 4761: 4760: 4758: 4756: 4752: 4746: 4743: 4741: 4738: 4736: 4733: 4729: 4726: 4724: 4721: 4720: 4719: 4716: 4714: 4711: 4710: 4708: 4706: 4702: 4696: 4693: 4691: 4688: 4684: 4681: 4680: 4679: 4676: 4672: 4669: 4667: 4664: 4663: 4662: 4659: 4655: 4652: 4650: 4647: 4646: 4645: 4642: 4640: 4637: 4633: 4630: 4628: 4625: 4624: 4623: 4620: 4619: 4617: 4613: 4610: 4608: 4604: 4594: 4591: 4589: 4586: 4585: 4583: 4581: 4577: 4571: 4568: 4566: 4563: 4559: 4556: 4554: 4551: 4550: 4549: 4546: 4544: 4543:Scoreboarding 4541: 4540: 4538: 4536: 4532: 4526: 4525:False sharing 4523: 4521: 4518: 4516: 4513: 4511: 4508: 4507: 4505: 4503: 4499: 4493: 4490: 4488: 4485: 4483: 4480: 4479: 4477: 4475: 4471: 4468: 4466: 4462: 4452: 4449: 4447: 4444: 4442: 4439: 4436: 4432: 4429: 4427: 4424: 4422: 4419: 4417: 4414: 4413: 4411: 4409: 4406: 4404: 4401: 4399: 4396: 4394: 4391: 4389: 4386: 4384: 4381: 4379: 4376: 4374: 4371: 4369: 4366: 4364: 4361: 4359: 4356: 4354: 4351: 4347: 4344: 4342: 4339: 4337: 4334: 4333: 4331: 4329: 4326: 4324: 4321: 4319: 4318:Stanford MIPS 4316: 4314: 4311: 4309: 4306: 4304: 4301: 4299: 4296: 4294: 4291: 4290: 4288: 4282: 4274: 4271: 4270: 4269: 4266: 4264: 4261: 4259: 4256: 4254: 4251: 4249: 4246: 4244: 4241: 4239: 4236: 4232: 4229: 4228: 4227: 4224: 4220: 4217: 4216: 4215: 4212: 4210: 4207: 4205: 4202: 4200: 4197: 4195: 4192: 4191: 4189: 4185: 4182: 4180: 4179:architectures 4174: 4168: 4165: 4163: 4160: 4158: 4155: 4153: 4150: 4148: 4147:Heterogeneous 4145: 4141: 4138: 4136: 4133: 4132: 4131: 4128: 4126: 4123: 4119: 4116: 4114: 4111: 4109: 4106: 4104: 4101: 4100: 4099: 4098:Memory access 4096: 4094: 4091: 4089: 4086: 4084: 4081: 4079: 4076: 4072: 4069: 4068: 4067: 4064: 4062: 4059: 4057: 4054: 4053: 4051: 4049: 4045: 4037: 4034: 4032: 4031:Random-access 4029: 4027: 4024: 4022: 4019: 4018: 4017: 4014: 4012: 4011:Stack machine 4009: 4007: 4004: 4000: 3997: 3995: 3992: 3990: 3987: 3985: 3982: 3980: 3977: 3975: 3972: 3970: 3967: 3965: 3962: 3961: 3960: 3957: 3953: 3950: 3948: 3945: 3943: 3940: 3938: 3935: 3933: 3930: 3928: 3927:with datapath 3925: 3924: 3923: 3920: 3918: 3915: 3913: 3910: 3909: 3907: 3905: 3901: 3897: 3890: 3885: 3883: 3878: 3876: 3871: 3870: 3867: 3855: 3851: 3847: 3844: 3842: 3839: 3837: 3833: 3830: 3828: 3825: 3823: 3820: 3818: 3814: 3811: 3809: 3806: 3804: 3801: 3799: 3796: 3794: 3791: 3789: 3786: 3783: 3781: 3778: 3776: 3773: 3771: 3768: 3767: 3765: 3761: 3755: 3751: 3748: 3745: 3743: 3740: 3738: 3735: 3733: 3730: 3728: 3725: 3723: 3719: 3715: 3712: 3709: 3707: 3704: 3702: 3699: 3697: 3694: 3692: 3691:LatticeMico32 3688: 3685: 3683: 3680: 3678: 3675: 3673: 3670: 3668: 3665: 3663: 3660: 3657: 3656: 3654: 3650: 3644: 3643:Stanford MIPS 3641: 3639: 3638:Berkeley RISC 3636: 3634: 3631: 3630: 3628: 3624: 3619: 3612: 3607: 3605: 3600: 3598: 3593: 3592: 3589: 3581: 3577: 3574: 3570: 3566: 3562: 3558: 3554: 3550: 3546: 3541: 3537: 3533: 3529: 3525: 3521: 3517: 3516: 3502: 3498: 3492: 3484: 3480: 3474: 3459: 3455: 3449: 3434: 3428: 3412: 3408: 3402: 3387: 3383: 3377: 3362: 3361: 3356: 3349: 3342: 3331: 3330: 3325: 3318: 3303: 3299: 3292: 3276: 3272: 3271: 3270:Computerworld 3266: 3259: 3252: 3247: 3232: 3228: 3222: 3215: 3211: 3207: 3204:Singh, Amit. 3200: 3189: 3182: 3174: 3172:0-07-136207-X 3168: 3164: 3163: 3155: 3147: 3141: 3133: 3127: 3125: 3108: 3104: 3098: 3082: 3078: 3072: 3056: 3049: 3034: 3033: 3026: 3010: 3003: 2988: 2984: 2977: 2969: 2963: 2959: 2958: 2950: 2935: 2933:0-86353-092-3 2929: 2925: 2921: 2914: 2907: 2902: 2887: 2883: 2879: 2875: 2871: 2867: 2863: 2856: 2841: 2837: 2830: 2819: 2812: 2804: 2800: 2796: 2792: 2789:(11): 41–48. 2788: 2784: 2783:IEEE Computer 2780: 2773: 2765: 2763:9781558607668 2759: 2755: 2754: 2746: 2738: 2731: 2724: 2720: 2714: 2710: 2706: 2702: 2697: 2696: 2687: 2679: 2675: 2668: 2660: 2656: 2649: 2641: 2640: 2635: 2628: 2620: 2616: 2609: 2593: 2589: 2582: 2567: 2563: 2557: 2541: 2537: 2531: 2523: 2521:1-58488-360-X 2517: 2513: 2508: 2507: 2498: 2491: 2480: 2476: 2472: 2468: 2464: 2460: 2453: 2446: 2430: 2423: 2412: 2411: 2403: 2396: 2391: 2389: 2380: 2378:0-7923-9045-8 2374: 2370: 2363: 2361: 2359: 2357: 2345: 2344: 2336: 2328: 2324: 2320: 2316: 2311: 2306: 2302: 2298: 2294: 2288: 2286: 2279: 2273: 2269: 2265: 2264: 2256: 2254: 2252: 2250: 2248: 2246: 2244: 2242: 2240: 2238: 2229: 2225: 2219: 2217: 2215: 2206: 2202: 2195: 2187: 2183: 2176: 2168: 2166:1-55860-539-8 2162: 2158: 2154: 2147: 2139: 2133: 2129: 2124: 2123: 2114: 2107: 2106:0-309-06278-0 2103: 2099: 2094: 2092: 2090: 2088: 2086: 2084: 2075: 2073:3-540-64798-8 2069: 2065: 2060: 2059: 2050: 2042: 2041: 2034: 2026: 2022: 2018: 2014: 2007: 2000: 1998: 1996: 1987: 1985:0-89871-428-1 1981: 1977: 1972: 1971: 1962: 1954: 1950: 1946: 1939: 1931: 1929:1-57356-521-0 1925: 1921: 1916: 1915: 1906: 1898: 1892: 1888: 1883: 1882: 1873: 1858: 1854: 1848: 1840: 1839: 1831: 1824: 1816: 1812: 1805: 1797: 1796: 1791: 1784: 1776: 1772: 1768: 1764: 1760: 1753: 1745: 1744: 1736: 1729: 1721: 1715: 1711: 1707: 1701: 1699: 1690: 1686: 1679: 1675: 1665: 1662: 1660: 1657: 1655: 1652: 1650: 1647: 1646: 1640: 1638: 1634: 1630: 1626: 1622: 1618: 1605: 1602: 1599: 1596: 1593: 1590: 1587:based on the 1586: 1582: 1579: 1574: 1570: 1567: 1566: 1564: 1561: 1558: 1554: 1551: 1548: 1547: 1546: 1544: 1540: 1536: 1523: 1522:Fujitsu A64FX 1519: 1515: 1511: 1508: 1504: 1500: 1496: 1492: 1489: 1486: 1482: 1478: 1474: 1470: 1467: 1464: 1460: 1457: 1454: 1450: 1446: 1443: 1440: 1436: 1432: 1428: 1425: 1422: 1418: 1415: 1414: 1405: 1401: 1397: 1393: 1389: 1385: 1382: 1379: 1375: 1371: 1367: 1364: 1361: 1357: 1354: 1350: 1346: 1342: 1341: 1332: 1328: 1327:open standard 1324: 1321: 1318: 1314: 1310: 1306: 1303: 1300: 1296: 1292: 1288: 1284: 1281: 1277: 1273: 1270: 1267: 1263: 1259: 1255: 1251: 1250:PlayStation 2 1247: 1243: 1239: 1235: 1232: 1228: 1224: 1223:PlayStation 3 1220: 1216: 1212: 1209: 1205: 1201: 1197: 1193: 1189: 1185: 1181: 1180:Windows Phone 1177: 1173: 1169: 1165: 1161: 1157: 1153: 1149: 1145: 1144: 1143: 1135: 1133: 1129: 1125: 1121: 1117: 1113: 1109: 1099: 1095: 1093: 1089: 1085: 1084:Apple silicon 1081: 1077: 1073: 1069: 1065: 1061: 1057: 1053: 1049: 1045: 1040: 1038: 1034: 1024: 1022: 1017: 1013: 1008: 1006: 1002: 998: 993: 992:sub-operation 989: 984: 982: 978: 973: 971: 967: 963: 958: 954: 949: 946: 942: 937: 935: 931: 923: 919: 916: 912: 908: 905: 902: 898: 894: 891: 888: 884: 883: 882: 879: 877: 867: 865: 861: 857: 853: 849: 845: 841: 837: 831: 827: 811: 807: 799: 797: 787: 785: 784: 778: 776: 772: 754: 750: 745: 734: 731: 723: 713: 709: 703: 702: 697:This section 695: 691: 686: 685: 677: 675: 671: 667: 662: 660: 656: 652: 648: 644: 640: 636: 630: 627: 623: 619: 615: 611: 602: 598: 589: 587: 582: 578: 574: 571: 570:open standard 562: 558: 556: 550: 545: 543: 538: 536: 532: 528: 524: 520: 516: 512: 507: 504: 500: 495: 490: 477: 473: 468: 467:instruction. 462: 457: 451: 447: 433: 431: 427: 426:Berkeley RISC 423: 418: 414: 410: 405: 393: 389: 385: 375: 373: 368: 364: 360: 355: 353: 347: 345: 340: 336: 331: 329: 325: 321: 317: 313: 309: 300: 298: 297:Jack Dongarra 294: 290: 286: 281: 279: 278:Berkeley RISC 275: 271: 261: 259: 255: 251: 247: 243: 239: 235: 231: 227: 223: 219: 215: 210: 208: 204: 200: 196: 191: 189: 185: 184:laser printer 181: 177: 174: 170: 166: 162: 158: 154: 150: 146: 142: 138: 134: 133:Berkeley RISC 130: 129:Stanford MIPS 126: 121: 119: 114: 108: 106: 102: 98: 94: 90: 86: 82: 74: 69: 65: 61: 47: 42: 38: 34: 33: 27: 18: 17: 5797:Chip carrier 5735:Clock gating 5654:Mixed-signal 5551:Write buffer 5528:Control unit 5340:Clock signal 5079:accelerators 5061:Cypress PSoC 4718:Simultaneous 4535:Out-of-order 4203: 4167:Neuromorphic 4048:Architecture 4006:Belt machine 3999:Zeno machine 3932:Hierarchical 3780:Apollo PRISM 3763:Discontinued 3687:LatticeMico8 3617: 3579: 3548: 3535: 3523: 3500: 3491: 3482: 3473: 3461:. Retrieved 3458:Arm Newsroom 3457: 3448: 3436:. Retrieved 3427: 3415:. Retrieved 3410: 3401: 3389:. Retrieved 3385: 3376: 3364:. Retrieved 3358: 3348: 3340: 3333:. Retrieved 3327: 3317: 3305:. Retrieved 3301: 3291: 3279:. Retrieved 3275:the original 3268: 3258: 3246: 3234:. Retrieved 3230: 3221: 3213: 3210:the original 3199: 3181: 3161: 3154: 3140: 3111:. Retrieved 3106: 3097: 3085:. Retrieved 3080: 3071: 3059:. Retrieved 3057:. Top500.org 3048: 3037:, retrieved 3031: 3025: 3013:. Retrieved 3002: 2990:. Retrieved 2986: 2976: 2960:. O'Reilly. 2956: 2949: 2937:. Retrieved 2923: 2913: 2901: 2889:. Retrieved 2869: 2865: 2855: 2843:. Retrieved 2840:Embedded.com 2839: 2829: 2811: 2786: 2782: 2772: 2752: 2745: 2730: 2722: 2694: 2686: 2677: 2667: 2658: 2648: 2639:Ars Technica 2637: 2627: 2618: 2608: 2596:. Retrieved 2591: 2581: 2569:. Retrieved 2565: 2556: 2544:. Retrieved 2539: 2530: 2505: 2497: 2489: 2482:. Retrieved 2462: 2458: 2445: 2433:. Retrieved 2422: 2416:. ICCD 2009. 2409: 2402: 2368: 2342: 2335: 2303:(6): 25–33. 2300: 2296: 2262: 2228:the original 2204: 2194: 2185: 2175: 2156: 2146: 2121: 2113: 2097: 2057: 2049: 2039: 2033: 2016: 2012: 1969: 1961: 1944: 1938: 1913: 1905: 1880: 1872: 1860:. Retrieved 1856: 1847: 1836: 1823: 1814: 1804: 1793: 1783: 1762: 1752: 1741: 1728: 1709: 1688: 1685:"Pipelining" 1678: 1617:Steve Furber 1614: 1532: 1518:AWS Graviton 1483:and finally 1433:(previously 1208:Raspberry Pi 1178:, Microsoft 1141: 1105: 1096: 1041: 1030: 1020: 1015: 1011: 1009: 1004: 1001:single clock 1000: 996: 991: 985: 974: 965: 961: 956: 952: 950: 938: 927: 880: 873: 832: 828: 812: 808: 805: 788: 781: 779: 767: 752: 747: 726: 717: 706:Please help 701:verification 698: 663: 631: 607: 595: 567: 552: 549:opportunity. 547: 539: 508: 491: 469: 455: 453: 449: 434: 406: 381: 356: 348: 332: 306: 289:Seymour Cray 287:designed by 282: 267: 211: 195:minicomputer 192: 122: 109: 92: 88: 78: 64: 45: 30: 5582:Multiplexer 5546:Data buffer 5257:Single-core 5229:bit slicing 5087:Coprocessor 4942:Coprocessor 4823:performance 4745:Cooperative 4735:Speculative 4695:Distributed 4654:Superscalar 4639:Instruction 4607:Parallelism 4580:Speculative 4412:System/3x0 4284:Instruction 4061:Von Neumann 3974:Post–Turing 3775:AMD Am29000 2019:(1): 4–11. 1974:. pp.  1838:Electronics 1360:chromebooks 1254:Nintendo 64 1246:PlayStation 1168:Apple Watch 1050:, AMD, and 876:transistors 792:STRING MOVE 639:AMD Am29000 489:microcode. 218:AMD Am29000 176:workstation 81:electronics 5812:Categories 5702:management 5597:Multiplier 5458:Logic gate 5448:Sequential 5355:Functional 5335:Clock rate 5308:Data cache 5281:Components 5262:Multi-core 5250:Core count 4740:Preemptive 4644:Pipelining 4627:Bit-serial 4570:Wide-issue 4515:Structural 4437:Tilera ISA 4403:MicroBlaze 4373:ETRAX CRIS 4268:Comparison 4113:Load–store 4093:Endianness 3813:Intel i860 3750:MicroBlaze 3113:27 October 3087:8 December 3011:. HPC Wire 2967:1565920325 2592:IEEE Micro 2566:www.ft.com 2540:Acorn User 2395:Nurmi 2007 2205:AM SIGARCH 1896:1558607668 1719:0867202041 1670:References 1509:processor. 1471:, used in 1374:transition 1160:iPod Touch 1060:Windows 10 1035:(MISC) or 1021:load–store 988:clock rate 911:data types 854:, and the 720:March 2012 643:Intel i860 610:Acorn ARM1 581:user space 494:pipelining 472:subroutine 413:sabbatical 316:John Cocke 270:load–store 234:Intel i960 230:Intel i860 5636:Circuitry 5556:Microcode 5480:Registers 5323:coherence 5298:CPU cache 5156:Word size 4821:Processor 4465:Execution 4368:DEC Alpha 4346:Power ISA 4162:Cognitive 3969:Universal 3808:DEC PRISM 3754:PicoBlaze 3706:Power ISA 3569:comp.arch 3565:Newsgroup 3549:Computers 3391:9 January 3335:24 August 3281:24 August 3236:2 January 3081:The Verge 3039:14 August 2987:The Verge 2305:CiteSeerX 1953:425963232 1589:Power ISA 1581:Libre-SOC 1563:OpenSPARC 1453:Power ISA 1384:Microsoft 1345:Macintosh 1305:Atmel AVR 1291:Dreamcast 1283:Super 32X 1092:Rosetta 2 840:ARM thumb 816:A = B + C 796:backronym 780:The term 655:IBM POWER 635:DEC Alpha 537:in 1985. 415:from the 407:In 1979, 392:microcode 384:Zilog Z80 367:IBM RT PC 339:compilers 238:LoongArch 222:Atmel AVR 157:Power ISA 143:systems. 5574:Datapath 5267:Manycore 5239:variable 5077:Hardware 4713:Temporal 4393:OpenRISC 4088:Cellular 4078:Dataflow 4071:modified 3701:OpenRISC 3682:eSi-RISC 3662:Blackfin 3366:20 March 3329:Engadget 3307:28 April 2939:26 March 2891:25 March 2866:Computer 2803:39685209 2598:20 March 2479:73520408 2327:12034303 2108:page 239 1743:Computer 1708:(1995). 1643:See also 1615:In 2022 1550:OpenRISC 1227:Xbox 360 1215:GameCube 1182:(former 1172:Apple TV 1114:such as 1088:Apple M1 1068:emulator 1052:Qualcomm 850:(2006), 846:(2004), 842:(1994), 838:(1992), 756:—  533:and the 430:BSD Unix 359:IBM ROMP 285:CDC 6600 226:Blackfin 5750:Related 5681:Quantum 5671:Digital 5666:Boolean 5564:Counter 5463:Quantum 5224:512-bit 5219:256-bit 5214:128-bit 5057:(MPSoC) 5042:on chip 5040:Systems 4858:(FLOPS) 4671:Process 4520:Control 4502:Hazards 4388:Itanium 4383:Unicore 4341:PowerPC 4066:Harvard 4026:Pointer 4021:Counter 3979:Quantum 3850:PowerPC 3841:PA-RISC 3793:Clipper 3742:Unicore 3711:Renesas 3633:IBM 801 3626:Origins 3573:Usenet: 3567::  3501:nae.edu 3483:nae.edu 3463:23 June 3438:23 June 3417:23 June 3411:AB Open 3231:TOP 500 3015:8 March 2886:7306378 2845:23 June 2571:23 June 2435:1 March 1862:24 June 1499:atomics 1479:, then 1463:PA-RISC 1439:Fujitsu 1437:), and 1400:Windows 1388:Surface 1313:Arduino 1297:as the 1295:Renesas 1272:Hitachi 1152:Android 1082:called 1039:(TTA). 953:labeled 844:MIPS16e 659:PowerPC 618:PA-RISC 483:⁄ 441:⁄ 399:⁄ 344:opcodes 328:370/168 312:IBM 801 303:IBM 801 276:of the 193:In the 182:in the 178:and of 165:PA-RISC 153:PowerPC 125:IBM 801 95:) is a 41:Discuss 5686:Switch 5676:Analog 5414:(IMC) 5385:(MMU) 5234:others 5209:64-bit 5204:48-bit 5199:32-bit 5194:24-bit 5189:16-bit 5184:15-bit 5179:12-bit 5016:Mobile 4932:Stream 4927:Barrel 4922:Vector 4911:(GPU) 4870:(SUPS) 4838:(IPC) 4690:Memory 4683:Vector 4666:Thread 4649:Scalar 4451:Others 4398:RISC-V 4363:SuperH 4332:Power 4328:MIPS-X 4303:PDP-11 4152:Fabric 3904:Models 3836:M·CORE 3827:MIPS-X 3747:Xilinx 3737:Sunway 3727:RISC-V 3718:SuperH 3652:Active 3575:  3169:  3061:12 May 2992:12 May 2964:  2930:  2884:  2801:  2760:  2715:  2546:24 May 2518:  2484:2 June 2477:  2375:  2325:  2307:  2163:  2134:  2104:  2070:  1982:  1951:  1926:  1893:  1716:  1611:Awards 1595:RISC-V 1491:RISC-V 1481:Compaq 1431:Oracle 1396:Lenovo 1392:HP Inc 1390:line. 1323:RISC-V 1287:Saturn 1276:SuperH 1210:, etc. 1204:Switch 1170:, and 1156:iPhone 1130:, and 1128:Sierra 1124:Summit 1120:TOP500 1116:Fugaku 1048:Cavium 997:easily 957:manual 918:string 852:RISC-V 836:SuperH 577:RISC-V 542:MIPS-X 456:slower 258:Fugaku 250:SuperH 246:RISC-V 205:, and 188:router 186:, the 167:, and 155:, and 37:merged 5742:(PPW) 5700:Power 5592:Adder 5468:Array 5435:Logic 5396:(TLB) 5379:(FPU) 5373:(AGU) 5367:(ALU) 5357:units 5293:Cache 5174:8-bit 5169:4-bit 5164:1-bit 5128:(TPU) 5122:(DSP) 5116:(PPU) 5110:(VPU) 5099:(GPU) 5068:(NoC) 5051:(SoC) 4986:(PoP) 4980:(SiP) 4974:(MCM) 4915:GPGPU 4905:(CPU) 4895:Types 4876:(PPW) 4864:(TPS) 4852:(IPS) 4844:(CPI) 4615:Level 4426:S/390 4421:S/370 4416:S/360 4358:SPARC 4336:POWER 4219:TRIPS 4187:Types 3846:POWER 3803:CRISP 3788:AVR32 3785:Atmel 3770:Alpha 3732:SPARC 3302:ZDNet 3191:(PDF) 2882:S2CID 2821:(PDF) 2799:S2CID 2703:–44. 2475:S2CID 2455:(PDF) 2414:(PDF) 2347:(PDF) 2323:S2CID 2130:–43. 2009:(PDF) 1857:RIKEN 1833:(PDF) 1738:(PDF) 1573:SPARC 1555:Open 1469:Alpha 1429:, by 1427:SPARC 1419:, by 1378:Intel 1376:from 1368:uses 1366:Apple 1358:Some 1319:cars. 1264:like 1231:Wii U 1070:that 1016:store 966:store 934:cache 775:PDP-8 626:SPARC 465:INDEX 169:Alpha 141:SPARC 5720:ACPI 5453:Glue 5345:FIFO 5288:Core 5026:ASIP 4967:CPLD 4962:FPOA 4957:FPGA 4952:ASIC 4805:SPMD 4800:MIMD 4795:MISD 4788:SWAR 4768:SIMD 4763:SISD 4678:Data 4661:Task 4632:Word 4378:M32R 4323:MIPS 4286:sets 4253:ZISC 4248:NISC 4243:OISC 4238:MISC 4231:EPIC 4226:VLIW 4214:EDGE 4204:RISC 4199:CISC 4108:HUMA 4103:NUMA 3854:ROMP 3822:META 3817:i960 3798:CR16 3722:V850 3714:M32R 3696:MIPS 3465:2024 3440:2024 3419:2024 3393:2024 3368:2023 3337:2020 3309:2021 3283:2020 3238:2021 3167:ISBN 3115:2023 3089:2016 3063:2017 3041:2016 3017:2017 2994:2017 2962:ISBN 2941:2024 2928:ISBN 2893:2023 2847:2024 2758:ISBN 2713:ISBN 2600:2023 2573:2024 2548:2021 2516:ISBN 2514:–6. 2486:2011 2437:2022 2373:ISBN 2186:Byte 2161:ISBN 2132:ISBN 2102:ISBN 2068:ISBN 1980:ISBN 1949:OCLC 1924:ISBN 1891:ISBN 1864:2020 1795:Byte 1714:ISBN 1627:and 1569:LEON 1543:FPGA 1537:and 1512:The 1501:and 1417:MIPS 1394:and 1309:Xbox 1289:and 1280:Sega 1238:MIPS 1236:The 1229:and 1202:and 1176:Palm 1164:iPad 1146:The 1080:SoCs 1056:Cray 1012:load 981:bits 964:and 962:load 915:byte 909:Few 895:All 822:and 664:The 647:i960 645:and 531:MIPS 519:MIPS 503:CISC 352:PL/I 283:The 173:Unix 139:and 137:MIPS 131:and 93:RISC 87:, a 83:and 71:The 5715:APM 5710:PMU 5602:CPU 5559:ROM 5330:Bus 4947:PAL 4622:Bit 4408:LMC 4313:ARM 4308:x86 4298:VAX 3677:AVR 3672:ARM 3667:ARC 2874:doi 2791:doi 2705:doi 2512:100 2467:doi 2315:doi 2278:PDF 2276:As 2268:doi 2021:doi 1771:doi 1585:SoC 1461:'s 1447:'s 1445:IBM 1317:BMW 1299:SH4 1274:'s 1242:SGI 1219:Wii 1200:3DS 1188:RIM 1076:Mac 1062:on 1044:x86 1014:or 945:ALU 920:or 864:SH5 824:DEC 820:INC 710:by 616:'s 586:SoC 463:'s 461:VAX 214:ARC 161:ARM 145:IBM 79:In 35:be 5814:: 5649:3D 3852:, 3848:, 3834:, 3815:, 3752:, 3720:, 3716:, 3689:, 3578:. 3571:. 3563:. 3547:. 3534:. 3522:. 3499:. 3481:. 3456:. 3409:. 3384:. 3357:. 3339:. 3326:. 3300:. 3267:. 3229:. 3123:^ 3105:. 3079:. 2985:. 2922:. 2880:. 2870:18 2868:. 2864:. 2838:. 2797:. 2785:. 2781:. 2721:. 2711:. 2701:39 2676:. 2657:. 2636:. 2617:. 2590:. 2564:. 2538:. 2488:. 2473:. 2463:37 2461:. 2457:. 2387:^ 2355:^ 2321:. 2313:. 2299:. 2284:^ 2236:^ 2213:^ 2203:. 2184:. 2128:40 2082:^ 2066:. 2064:33 2017:34 2015:. 2011:. 1994:^ 1978:. 1922:. 1920:50 1889:. 1887:55 1855:. 1835:. 1813:. 1792:. 1761:. 1740:. 1697:^ 1687:. 1623:, 1619:, 1285:, 1256:, 1252:, 1248:, 1225:, 1221:, 1217:, 1206:, 1198:, 1196:DS 1194:, 1174:, 1166:, 1162:, 1158:, 1126:, 972:. 653:, 649:, 641:, 637:, 557:. 374:. 260:. 248:, 240:, 236:, 232:, 228:, 224:, 201:, 163:, 151:, 3888:e 3881:t 3874:v 3610:e 3603:t 3596:v 3551:. 3503:. 3485:. 3467:. 3442:. 3421:. 3395:. 3370:. 3311:. 3285:. 3240:. 3193:. 3175:. 3117:. 3091:. 3065:. 3019:. 2996:. 2970:. 2943:. 2895:. 2876:: 2849:. 2823:. 2805:. 2793:: 2787:8 2766:. 2739:. 2707:: 2680:. 2661:. 2642:. 2602:. 2575:. 2550:. 2524:. 2469:: 2439:. 2381:. 2329:. 2317:: 2301:8 2274:. 2270:: 2207:. 2169:. 2140:. 2076:. 2027:. 2023:: 1988:. 1976:6 1955:. 1932:. 1899:. 1866:. 1817:. 1777:. 1773:: 1722:. 1691:. 1441:. 1406:. 1355:. 1301:. 1268:. 733:) 727:( 722:) 718:( 704:. 485:3 481:1 443:3 439:1 401:3 397:1 91:( 62:. 43:)

Index

Complex instruction set computer
merged
Discuss
RISC (disambiguation)

Sun Microsystems
electronics
computer science
computer architecture
complex instruction set computer
instruction pipeline
load–store architecture
addressing modes
IBM 801
Stanford MIPS
Berkeley RISC
MIPS
SPARC
IBM
IBM POWER architecture
PowerPC
Power ISA
ARM
PA-RISC
Alpha
Unix
workstation
embedded processors
laser printer
router

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

↑