Cisc v risc. To begin this assignment , I will outline the definition of cisc and risc . Cisc stands for complex instruction set computing and Risc stands for reduced instruction set computing . these two concepts are both types of instruction sets used
Cisc v Risc
To begin this assignment , I will outline the definition of cisc and risc . Cisc stands for complex instruction set computing and Risc stands for reduced instruction set computing . these two concepts are both types of instruction sets used in computer architecture for processors and microprocessors . computer architecture is a way of examining the structure of a computer, we mainly focus on the how the cpu performs internally and how it accesses addresses in computer memory. The objective of the microprocessor is to advance the performance of the machine. Performance can be defined as the amount of work a processor can do in a set time .
In order to improve the computers performance we would have to increase the speed of how we process these instructions or else make these instructions more complex so they will perform more work, but we can’t have both. Speeding up the instructions (cisc) means changing the clock speed of the computer , while making the instructions more complex (risc) means we will require more power to process them. An real life analogy of this instruction set concept would be to take a bike for example , if we are in a low gear we can pedal really fast to get where we are going but in a high gear we can go the same distance but we require more power to push the pedals. In the following sections I will try and explain the two concepts of Cisc and Risc and where they originated from and the advantages and disadvantages .
The cpu ( central processing unit ) can be sometimes referred to as the brain of the computer as it does all the work for the programmes and applications . in 1970 the main component of a computer was the cpu , which could be the size of a large fridge and was attended by lab technicians. The thought of compressing a cpu down to the size of a small silicone chip was a far fetched concept back then . computers in them days were rewired to perform calculations but three mathematicians John von newman , J.presper Eckert and John Mauchly thought of an idea of storing the instruction set of these calculations . the part of the computer that fetches the instructions and data from the memory and carries out the instructions in the form of data manipulation and numerical calculations is called the cpu. All devices that are connected to a computer are indirectly connected to the cpu in someway. The cpu has a program counter that points to the succeeding instruction to be carried out. The cpu follows a cycle where is retrieves from memory , the instructions in the program counter .it then takes the data from the memory and performs the calculation by the instruction and stores the result . the program counter then steps up one more level and a new cycle starts .
The first processor was the intel 4 bit calculation device with a speed of 108khz. The processor operates at the speed of an internal clock. There is a quartz crystal inside that sends pulses or peaks when subjected to an electrical current. The cycle or clock speed relates to the number of pulses per second in hertz (hz). The cpi ( cycle per instruction ) shows the number of clock cycles required for a processor to perform an instruction. The instruction is stored in the main memory and is waiting to be processed by the processor . the instruction has two main operations , operation code and operand field. The number of bits in a instruction varies from the data being processed. Instructions can be grouped by category ,
-memory access: Accessing the memory or transferring between registers.
-Aritmetic operations: This includes addition, substraction, division , multiplication.
This is a preview of the whole essay
-logic operations: Such as , AND,OR,NOT , EXCLUSIVE NOT etc...
-control: Sequence control.
The register as mentioned above in the categories is a temporary memory of 8,16,32,or 64 bits and when the processor carries out an instruction data is temporarily stored here. The processor doesn’t just work on one instruction , it uses a group of instructions to speed the process up. This instruction set is made possible by the use of transistors . the transistor is a dive which modifies a large amount of current using only a small amount of current or voltage. The transistor is made up of three electrodes and the most common is the MOS ( metal, oxide , silicone ) transistor. The MOS has two negative areas, the source which is almost negative and the drain ( this has a 5v charge ). These two negative areas are separated by the positive region called the substrate. The substrate has a control electrode overlaying it called a gate which allows charge to be applied to the substrate . this transistor acts like a switch thanks to the control electrode which allows charge in and out . these MOS transistors are combined into a weafer like piece that forms the main part of the processor.
The instruction set as mentioned above is the sum of basic operations that a processor can carry out. A processors instruction set can be a major factor in its architecture. Theses instruction sets are hardwired into the electronic processor. The main types of instruction sets in processors are Cisc and Risc . vendors and manufactures vary in which type of instruction set architecture they want to implement into the design of there processor.
The cisc architecture uses a large number of complicated instructions at the assembly language level. This assembly language is a low level computing programming language is which each statement corresponds to a single machine instruction. The cisc approach uses smaller binary files and this is because each cisc command accomplishes so much more but in contrast each file takes longer for the processor to fulfil each instruction. The goal of the cisc architecture was to make processors easy and flexible to program and to provide for more efficient memory use. The use of the cisc architecture is set back in history as there were no compliers and programs had to be coded by hand , one instruction at a time . the more complicated instructions are means they are very inefficient in hardware .cisc was mainly brought about by the need to reduce the gap between the machine language of the processor and the high level languages used in which people were programming. The thought was back in 1960s was that if fewer instruction were executed that the processor would have better performance .the instructions that cisc executes can be of different sizes and can have different execution cycles. All this makes cisc architecture harder to pipeline.
Pipelining is a technology that makes instruction execution speed easier by creating steps in parallel. These execution steps for the processor are as follows ,
- Fetch : retrieves the instruction from the cache.
- Decode : decodes the instruction and looks for operands.
- Execute : performs the instruction e.g( addition , substraction)
- Memory : accesses the memory and writes data or retrieves data from it.
- Write back : records the calculated value in a register.
As mentioned above the goal of pipelining is to perform each step paraellel , so as one instruction is being retrived ( fetch ) the previous one is being read ( decode ) while the previous one to that is being performed ( executed ) and so on .. there can be many steps in pipelining but in general the main ones are outline above , to understand this pipeling process more see diagram below,
From the 1960scisc microprocessors became prevalent , and each successive processor having more complicated hardware. Some examples of cisc architecture in processers are the ibm360, intel 80386 , and the Motorola 68030. Most of intels chips from the 8008 microprocessor to the Pentium 4 are all based around the cisc approach.
Ibm 360 :
Back in 1960 most computers would have been designed independently or machines were custom modified for a customer . in 1964 ibm changed all this when they brought out the ibm 360 computers. The computers could range from the model 20 ( 24 kb of memory ) to the model 91 super computer which was bult for missile defence in north America . the computers had different operating systemsbut all had the same instruction set. The low end machines didn’t or could support operating systems and a program was loaded from binary punched cards at start up. The higher end machines called 0s/360 established 32 bits as the standard for computers. See below ibm 360 computer.
The advantages of cisc:
When cisc instruction sets were first developed , cisc machines used technologies available to optimize computer performance . micro programming was a assembly language that was reatively easy to introduce and was at less cost than hardwiring a control unit. Also the ease of micro coding new instructions allowed designers to make cisc machines upwardly compatible, eg, a new computer could perform the same program as previous ones as the new computer would have a superset of instructions to the previous one . when instructions became easier fewer could be used to execute a given problem. This made better use of the slow memory during old times when they were first introduced. We also see that because microprogram instruction sets can be written to match the construction of the high level language , the complier would not have to be as complicated.
The dis-advantages of cisc :
While the cisc architecture was good at the start some problems were now starting to come to ligt for the designers . many instruction sets areent used frequntely enough to relate to their existence at all. most designers would say that only 20% of instruction sets in cisc architecture are used in a typical program. Also we would have to look at the size and cost , there can be a lot of hardware circuits due to the complex nature of the cpu. This increased hardware increased the cost of the system overall and also the power. The clock speed is also reduced due to the increased circuits , and the cycle time has now become large . we will also see cisc architecture become unreliable as there is heavy hardware.
With all of the above problems and the fact that there was a decline in the cost of memory devices and improved compiler technology, it was now becoming feasible to look at maybe simplifying the instruction sets with the costb of larger code size and higher memory bandwith , through all these dis-advantages brought about the use of Risc architecture in processors as I will discuss in the following sections .
Thw first sight of risc architecture would have been from ibm , Stanford andf u.c- Berkley in the late 1970s . as we have learned the risc approach performs a smaller of instructions on the computer at a higher speed. John cocke of ibm researched the thought of the design of cisc back in 1974 and realised that as we have seen before only 20% of the instructions used in the cisc architecture do 80% of the work and thought that this was wasteful. His idea of the risc approach came about from the ibm 801 mini computer and seen that there was a fast comtroller in a very large telephone switching system. This controller or chip had the concept that later brought about the risc approach. The university of California Berkeley led by david Patterson found that this chip had higher performance , less cost and faster design time.
The easiest way to look at the risc architecture is by examining the two architectures ( cisc and risc ) in a single example. Below we can see a diagram showing the storage scheme for a computer.
The main memory can be split up into different locations from ( row 1, column 1 ) to ( row 6 , column 4). Below that again we can see the execution unit and this carries out all the computations . the execution unit only works if data is loaded into one of the six registers seen in blue and labelled a-f. For examples purposes if we needed to calculate the product of two numbers one stored in location 2:3 and the other in location 5:2 and store the final result back in location 2:3 again , the two architectures would work as follows. Cisc trys to calculate and complete this in a few lines as possible . cisc architecture would already have a instruction “mult” loaded in its architecture and the task can be done simply by the instruction , (“mult” 2:3, 5:2. ). Very little ram is required here as the instruction is short. The designers try to build the complex instruction directly onto the hardware.
The risc architecture would carry out this task as follows and would rely on the ram of the computer. The risc approach would be executed in one clock cycle . the “mult” instruction would be split up into three commands,
“load “ moves the data from the memory to register .
Load A , 2:3
Load B, 5:2
“Prod ” calculates the product
Prod , A*B
“store “ moves the data from the register back to memory
Store , 2:3 , A.
This at first may look like more work but each instruction requires only one clock cycle. This can be done in the same amount of time as “mult” from above in cisc but the instructions in risc are less complex and require less transistors of hardware space . also because the instructions execute in a uniform amount of time ( i.e one clock) , pipelining can be achieved . some examples of risc processors can include the ibm rs/6000 or power architecture, intel 860 and the Motorola 8800 family.
Ibm rs/6000 (power architecture) :
In 1990 the first computers yo incorporate the power arxhitrecure ( “ performance optimized with enchanced risc”) from ibm was the risc system 6000 . these could be divided up into servers and workstations and were so called the powerserver and powerstation. The power system had two configurations called “rios-1” and “rios.9” or mostly known as the power1 cpu. The power design was brought about from the earlier cpu the 801 and this was classed as the first risc deisgn . the risc architecture is the basis for most of the work stations today and including the unix systems. The power arcxhitecture is still in use today and ibm have launched many version from power 1 to the latest power 8 which is still under development from ibm today. Thye power one included a 8kb instruction cache and either a 32 bit or 64 data cache. Some of the more frequent machines that people may be aware of that contain the power architecture today would be the nintento games cube and the playstation 3 , these are all based on the power architecture.
Advantages of risc :
the speed of the risc processers can be greather than the cisc counterpart as simplified instruction sets allows for a pipelined , superscalar design and can often achieve 2 to 4 times the performance of cisc . we can also note that the hardware is simplier in risc , it uses much less chip space , smaller chips allow a semi conductor manufacturer to place more parts on a single silicon weafer and can lower the chip cost . the risc deisgn would also have a shorter design cycle , they can be created quicker And can take advantage of other technological advances sooner , leading to greater performance between generations. The major advantage for risc architecture was the dramatic reduction in the price of ram ( random access memory) , from 1MB of ram costing $5,000 in 1977 to only costing $6 in 1994.
Dis-advantages of risc:
some of the setbacks that might of been seen with risc are as follows , the technology took nearly a decade to gain foothold in the commercial world and this was mainly due to the lack of software support. The move to risc had some problems when moving from cisc to risc architecture. The quality of the risc processor depended on how the code was written and if the programmer done a poor job of instruction scheduling the processor can spend some time stalling and waiting for one instruction before moving omnt the next, this is why most programmers today use high level language ( such as c++) and leave the instruction scheduling to the complier. Also code expansion can be a problem this is where you try expand a code written for cisc and expand it to work in the risc technology , the exact expansion depends on the quality of the complier and the nature of the machines instruction set. Another problem that faces RISC machines is that they require very fast memory systems to feed them instructions. RISC-based systems typically contain large memory caches, usually on the chip itself. This is known as a first-level cache.
in todays computer world the vast majority of risc cpus are 32 –bit . the risc design offers power in even small sizes. Today, the Intel x86 is arguable the only chip which retains CISC architecture. In some cases we can see that both architectures are becoming more and more alike . most of todays risc chips support as many instructions as previous cisc chips and also todays cisc chips can be seen using the same techniques which would have been associated with the risc chip . even intel today which is the main player for the cisc architecture can be seen using some of the risc technology approaches .
- Chen.C ,Novick .G, Shinamo.K
last accessed = 2/11/10
- Author :unknown
The cpu shack,
last accessed = 2/11/10
- Gao.y, Tang.s ,Ding.z
Comparison between cisc and risc
last accessed = 30/10/10
last accessed = 29/10/10
- author : unknown,
last accessed = 3/11/10
- Mccaldin. D
What is the risc in computer architecture ?
last accessed = 3/11/10
- Ibm corporation
Mainframes introduction 2
last accessed = 25/10/10
- Performance equation
- Cisc v risc comparison
- Mos transistor
- Pipelining diagram
- Storage scheme for a computer
Here's what a teacher thought of this essay
A lot of copied and misunderstood material and far too detailed at this level. Also lots of spelling, grammar and some factual errors. However the second half of the piece is generally accurate and informative