A complex instruction set computer or CISC is a type of instruction set architecture that works by combining simple instructions into a single complex one. To compare, a reduced instruction set computer or RISC uses simpler and fewer instructions. Both CISC and RISC are used in the design or architecture of computer processors, including central processing units and graphics processing units.
One of the notable examples of a processor based on CISC architecture is the x86 family of CPUs designed and manufactured by Intel Corp. such as the Intel Core i3, Core i5, Core i7, and Core i9 of the Intel Core series, as well as the Intel Xeon series of business-grade processors.
Other examples include the Motorola 6800, 6809, and 68000 families, and the Z80 series of processors from Zilog, among others. This article provides a simplified explanation of the characteristics, advantages, as well as disadvantages and limitations of CISC.
The Pros: Characteristics and Advantages of CISC
A CISC processor can perform multiple operations per single operation, while a processor based on RISC architecture can uses simpler instructions with one instruction per cycle and fixed instruction sizes. Hence, the main difference between the two is that CISC does more in a single instruction, while RISC does one thing only per instruction.
The following are the fundamental advantages of complex instruction set computer:
• It requires an assembly language that is easy to implement. This means lesser expense than hardwiring a hardware.
• The ease in microprogramming new instructions also means that the chip designers can make the processors upward compatible.
• Instructions are at a high level. Hence, when compared to RICS, programmers or compilers for CISC have lesser workloads.
• Further, instructions can directly access memory locations. The complex addressing mode of the architecture allows flexible memory access.
• The hardware does more of the work in decoding instructions. The complexity of instructions means less memory requirement.
• No need to change the structure of the instruction set when adding new commands. A key advantage of CISC is that it uses general-purpose hardware to carry commands.
The Cons: Disadvantages and Limitations of CISC
Note that the differences between CISC and RISC also define the differences between x86 processors from manufacturers such as Intel and AMD and ARM-based processors from Arm Ltd., such as those designed by Qualcomm and Apple.
Below are the fundamental disadvantages of complex instruction set computer:
• Decoding instructions requires more transistors. Thus, there is a limited number of general-purpose registers that can be included in the processor.
• CISC processor does more in a single processor. Its clock speed is a little bit slower when compared to a RISC processor.
• There is some system inefficiency because the hardware requires several clock cycles to execute a single instruction.
• Writing and running a simple application will depend on the complexity of the hardware. To simplify an application, the processor needs to be complex.
• Another disadvantage of CISC is that processors based on this architecture requires more power and generates more heat than those based in RISC.
• Note that it is more expensive to implement than RISC due to the complexity of the architecture. Remember that it requires more transistors.
FURTHER READINGS AND REFERENCES
- Ibrahim, D. 2015. “Microcomputer Systems.” In PIC32 Microcontrollers and the Digilent ChipKIT. Elsevier. DOI: 1016/b978-0-08-099934-0.00001-6
- Koo, K., Rho, G. S., Kwon, W. H., Park, J., and Chang, N. 1998. Architectural Design of an RISC Processor for Programmable Logic Controllers. Journal of Systems Architecture. 44(5): 311-325. DOI: 1016/s1383-7621(97)00011-8
- Stallings, W. 1988. “Reduced Instruction Set Computer Architecture. Proceedings of the IEEE. 76(1): 38-55. DOI: 1109/5.3287