Topics


Q1: What is the process of making a chip?
Q2: What makes up a microprocessor?
Q3: How is superscalar design different from pipelining design? What are their advantages and disadvantages?
Q4: Why do people prefer Penium to other processor clones?

Q1: What is the process of making a chip?

The chip is made of silicon which is a widely available and inexpensive material. We use the silicon because it can form large crystals of uniformly high quality. Each crystal is about 8 inches across. To make a chip, first we need to use precision saws to cut the crystal into slices less than a millimeter thick. Then after we chemically treat these slices (also called wafers), we cut them into individual chips. Next the transistors(electronic switches) and tiny wires are built onto the chip in a series of ten or more layers(called masks). This step is called photolithography. I know this name sound bizarre, I don't think you need to memorize it though. However, this step is important because this is a step we physically applying the logical design of the processor to the chip. At last, once the layering is complete, we test the chip several times to ensure that the transistors and wires are in place and working properly, and then the chip is placed within its packaging. Finally the process of making a chip is over.

Note: Microprocessor and processor are used interchangeably in this document.

Q2: What makes up a microprocessor?

Microprocessor is a small, thin chip of silicon crystal, typically less than half a square inch in area. It is contained in a packaging which is a square or rectangular piece with many pins that fits into the processor slot on your motherboard. The packaging both protects the processor from contaminants and allows it, through the pins, to engage the mother board's circuits and hence the system is a whole. Over the years packaging has changed considerably, with new methods adopted for various processor design. Some of currently used packaging include: the pin-grid array(PGA) package, staggered pin-grid array package(used for Pentium processors), multichip module package(contains more than one chip), leadless chip carrier package(uses tiny contact pads of gold instead of pins), and tape-carrier package.

Now let's look at the inside of the microprocessor. Microprocessors work by reacting to an input of 0s and 1s (binary signals) in specific ways and then returning the output based on the decision. The decision itself happens in a circuit called logic gate, each of which requires at least one transistor(electronic switches inside the processor), with the inputs and outputs arranged differently by different operations. The fact that today's microprocessor contain millions of transistors offers a clue as to how complex the logic system is. The microprocessor's logic gates work together to make decisions using Boolean logic. The main Boolean logic operators are AND, OR, NOT, and NAND.(we have learned about how to use these logic operators in 311) Logic gates operate via hardware known as a digital switch. The most common type of switch in today's computer is a transistor known as a MOSFET. The MOSFET performs a simple but crucial function: When voltage is applied to it, it reacts by turning the circuit either on or off. Millions of MOSFET act together, according to the instructions from a program, to control the flow of electricity through the logic gate to produce the required result.

The flow of electricity through each gate is controlled by that gate's transistor. A large number of these transistors are manufactured from a single piece of silicon and linked together without wires or other external materials. These units are called integrated circuits(ICs), and their development basically made the complexity of the microprocessor possible. Just as the first ICs connected multiple transistors, multiple ICs became similarly linked, in a process known as large scale integration(LSI).

Registers and the system clock are the two of most crucial components of the microprocessor. A register is an internal storage area, a unit of memory; and it has fastest type of memory in your system. It holds data used by instructions, in the form of bit patterns(sequence of 0s and 1s), in specific places where the processor can find them. The register is very important because processors are identified by register size. For example: the term 16-bit processor refers a processor with registers capable of holding 16 bits of data.

The microprocessor spends its time reacting to signals, but it can't react to all of them at the same time or they would become jumbled. The system clock determines the time period(in terms of clocks cycles) that the microprocessor should wait for the go ahead act signal.

The first microprocessor were able to handle only one instruction per cycle, but today's microprocessors speed up through two process, called pipelining and superscalar execution. Pipelining allows processor to read a new instruction from memory before it is finished processing the current instruction. A superscaler processor has more than one pipeline, meaning it can execute more than one set of instructions at the same time.


Q3: How is superscalar design different from pipelining design? What are their advantages and disadvantages?

The number of instructions a microprocessor can handle in a single clock cycle is a crucial factor to the processor's performance and it depends on the design of the processor itself. Among today's processors, the number of instructions per clock cycle has been sped up through two processes, called pipelining and superscalar execution. A microprocessor uses pipelining or superscalar technology is said to have pipeline or superscalar design.

Pipelining allows the processor to read a new instruction from memory before it is finished processing the current one. It works by splitting the instruction fetch, decode and execution into independent stages; as an instruction goes through each stage, the next instruction follows it does not need to wait until it completely finishes. The extent to which pipelined data can flow into the processor is called the pipeline depth. In Intel 80286 processor family, the pipeline depth is only 1 which means in effect, there was no pipeline at all. However, with the 80486 family, the pipeline depth increased to 4. Pentiums has a pipeline depth of 5, and MMX and other technologies enable even more.

Pipelining saves time by ensuring that the microprocessor can start the execution of a new instruction before completing the current or previous ones. However, it can still complete just one instruction per clock cycle. Another disadvantage with pipelining concerns pipeline stalls. As what we learn in cs411 class, some stalls occured in a pipeline design can be voided while others cannot. There are different strategies to handle pipeline stalls, such as simply suffer the delays, use branch delay slot, or add additional hardware, etc.

To increase efficiency and thereby save processing time, many of today's processors (Compaq/Digital's Alpha, IMB/Motorola's PowerPC, and Sun's SPARC, etc.) use superscalar architecture. The main benefit and difference of superscalar technology versus pipelining is that it allows processors to execute more than one instruction per clock cycle with multiple pipelines. In a superscalar design, the processor looks for instructions that can be handled within the same clock cycle and processes these together. This concept, coupled with available VLSI (very long scale instruction) technology, allowed the execution of up to five operations per cycle: one branch instruction, one fixed-point instruction, one condition register instruction, and one floating-point multiply-add instruction which counted as two floating-point operations.

Parallel processing certainly offers speed benefits, but superscalar design has critics. Superscalar technology increase the level of complexity in hardware designing. Some people argue that it also wastes many opportunities for parallel execution, because combining individual instructions could take very long time and individual instructions are often delayed when waiting for resources.



Q4: Why do people prefer Penium to other processor clones?

Before answering this question, I think it will be interesting if we first learn a little story of the name of the microprocessor, the Pentium family. There is a story accompany the name of the Pentium processors and why it was not named as 80586 like other 80x86 predecessors. The word Pentium does not have a meaning, although today it has become a famous brand for microprocessors. Originally, Intel was going to name the Pentium as 80856. However, the company did not like the idea that other companies who make Pentium clones could use the name 80856 as well. Pent in Latin means five and hence Intel decides the name Pentium.

There are several advantageous aspects of Pentium processors over other processor clones. A). It offered a superescalar architecture. B). It employed branch-prediction (a concept we will learn in cs411) technology to help minimize the delays. C). It increased the speed of data transfer from memory to 64-bit and further increased the speed of reading from and writing to memory. D). It came with built-in power management. E). It used two separate Level 1 caches-one for data and the other for instructions.

After Pentium, Intel introduced Pentium with MMX, and later Pentium II, Pentium Pro into the market. Other clone makers have been following and competing with Intel closely on the development of microprocessors, nonetheless, Pentium family is still the most favorable in the market.