Tuesday, May 5, 2020
Processor Comparison Essay Example For Students
Processor Comparison Essay 1. Investigate the instruction set and architectural features of a modern RISC processor such as the Digital Equipment Corporation Alpha or Motorola/IBM PowerPC. In what ways does it differ from the architecture of the Intel Pentium processor family?The main difference between the architectures of Digital Equipment Corporations (DEC) Alpha and Intels Pentium processors are the instruction sets. In this paper I intend on defining both RISC and CISC processors. In doing this I will be comparing DECs Alpha 21164 (a microprocessor that implements the Alpha architecture) and also Intels Pentium processors (from the Pentium-R through the Pentium II). Reduced Instruction Set Computing or RISC processing is a CPU architecture with an instruction set that eliminates some (but not all) complex instructions by pairing down and reducing them in complexity so that instructions can be performed in a single processor cycle. This is accomplished through high-level compilers that breakdown the more c omplex, less frequently used instructions into simpler instructions. Thus, allowing the RISC architecture to im-plement a smaller instruction set that utilizes more registers and eliminating the need for microcode. The Alpha architecture is a 64-bit load and store RISC architecture designed with particular emphasis on speed, multiple instruction issue, multiple processors, and software migration from many operating systems. (1, pg. 1-1) Most recent CPU designs are superscalar and superpipelined. Superscalar means that the architecture provides two pipelines for executing multiple instructions in parallel. Superpipelining increases the number of pipeline stages, allowing for results from either pipeline to be simultaneously used to avoid stalls thus, improving data flow by removing data dependency. The 21164 microprocessor is a superscalar pipelined processor manufactured using 0.5-micron CMOS (Complementary Metal Oxide Semi-conductor) technology. (1, pg.1-3) The Alpha 21164 can issu e four instructions in a single clock cycle. This combined with the low-latency and/or high-throughput features in the instruction issue unit and the on-chip components of the memory subsystem reduce the average cycles per instruction. All data manipulation is done between registers. The registers are 64 bits in length and all instructions are 32 bits in length. Memory operations are either load or store operations. Since many early computers had extremely limited memory and processing power, complex instruction sets were developed. Complex instruction computing or CISC processing is a CPU architecture in which a large number of instructions are hardcoded into the chip. Intels Pentium processors still adhere to this philosophy. The Pentium processor was Intels first CPU to employ superscalar architecture. With its 3.3 million transistors it is able to execute two instructions per clock cycle resulting in twice the integer performance relative of an Intel 486 CPU running at the same frequency. Pentium also employed on-chip dual-processing support as well as an onboard interrupt controller. Next came the Pentium Pro, which introduced dynamic execution technology that pre-dicts the program flow through multiple branches. Multiple branch prediction lets the CPU pre-fetch possible next instructions rather than waiting for the outcome. This technology can actually change the order of executed instructions based on analyzed data dependencies, which in turn provides optimum execution speed. However, the Pentium Pro was only available in speeds from 150MHz to 200MHz and has only 16KB of internal cache (half as much as the MMX). In 1997 Intel introduced the Pentium MMX processor. The MMX processor added1.2 million more transistors (4.5 million total) and also SIMD technology (Single Instruction, Multiple Data). SIMD technology included 57 new instructions, 4 new data types and eight 64-bit registers. As in the original Pentium, the MMX Pentium provides both a fixed-point integer data path that allows up to two operations to be executed simultaneously, and a floating point data path that allows one operation to be performed at a time. In addition, the MMX Pentium provides a new MMX data path that allows up to two MMX operations to execute simultaneously, or up to one MMX operation and one integer operation (in the integer data path) to execute simultaneously. The inte-ger data path includes two ALUs and supports operations on 8-, 16-, and 32-bit integers. (4)The MMX processor is available in speeds from 166MHz to 333MHz. Food Poisoning EssayAn IEEE double precision, or T_floating, datum occupies eight contiguous bytes in memory. The bits are labeled from right to left, 0 through 63.Bit 63 is a signed bit, bits 62 through 52 repre-sent the exponent, and bits 51 through 0 represent a 52-bit fraction. In IEEE T_floating data types, no bit reordering or input checking is performed during load or store instructions as it is in S_floating. The Alpha 21164 also supports VAX floating point formats. VAX is short for Virtual Address eXtension. VAX systems feature the operating system, VMS that support virtual memory. VAX floating-point numbers are stored in one set of formats in memory (datum) and in a second set of formats in registers. The floating-point load and store instructions convert between these formats purely by rearranging bits; no rounding or range checking is done by the load and store instruc-tions. Alpha processors support F, G, and some D floating point formats. F_floating data types are much like IEEE S_floating in that they are also four contiguous bytes, the 31st bit is the signed bit, bits 30 through 23 represent exponents, and bits 22 through 0 represent the fraction. However, instead of producing an equivalent T_floating data type, it produces an equivalent VAX G_floating data type in the registerThe G_floating operand occupies 64 bits in a register. According to Digital Equipment Company, the bits a re as follows:The form of a G_floating datum is sign magnitude with bit 15 the sign bit, bits *14:4* an excess 1024 binary exponent, and bits *3:0* and *63:16* a normal-ized 53-bit fraction with the redundant most significant fraction bit not repre-sented. Within the fraction, bits of increasing significance are from 48 through 63, 32 through 47, 16 through 31, and 0 through 3. The 11-bit exponent field encodes the values 0 through 2047. An exponent value of 0, together with a sign bit of 0, is taken to indicate that the G_floating datum has a value of 0 (9, 2-5). D_floating data types are only partially supported in Alpha architecture. For backward compatibility, exact D-floating arithmetic may be provided via software emulation. D_floating format compatibility in which binary files of D_floating numbers may be processed, but without the last three bits of fraction precision, can be obtained via conversions to G_floating, G arithmetic operations, then conversion back to D_floating.â⬠(9, 2-6)The reordering of bits required for a D_floating load or store is identical to that of G_floating load and store instructions, therefore those instructions are used for loading or storing D_floating data. Except for 32 additional fractional bits of low significance, the memory form of a D_floating datum is identical to that of a F_floating datum. Within the fraction, bits of increasing significance are from 48 through 63, 32 through 47, 16 through 31, and 0 through 6. ââ¬Å"The exponent conventions and approximate range of values is the same for D_floating as F_floating.â⬠(9, 2-6)According to the Alpha Architecture Handbook hardware support is not provided by the Alpha 21164 for the following data types:? Octaword (VAX data type)? H_floating? D_floating (except noted previously)? Variable-Length ? Character String? Trailing Numeric String? Leading Separate Numeric String? Packed Decimal String(9,2-12)In summation, the Alpha 21164 supports four integer data types, two IEEE floating-point data types, and three VAX floating point data types. The integer data types utilize the EXTRACT, MASK, and INSERT instructions. The floating-point data types use combinations of different LOAD and STORE instructions and in doing so, perform some bit reordering. In order to accommodate some of the floating point data types other data type instructions are used as in the VAX convention D_floating. Technology Essays
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.