Journey Of Code - Processors

In earlier posts we have seen the circuit level components. Now if we put all of them together, we get a system. A system can be designed to perform a specific task or to perform task as per user requests.

A general purpose processor is a system where in the user tells the processor what needs to be done. A processor system generally consists of a computing unit (ALU/FPU), control unit and storage unit(registers/cache/RAMs). The user tells the processor what needs to be done by means of something called “op-code”. A op-code or operation-code is a set of byte/bytes which the control unit of the processor understands. Processor systems can be classified into 3 categories based on their op-code types.

Technology Stack

  • MISC
  • RISC
  • CISC

MISC or Minimal Instruction Set Computer is the most basic of the lot. This processor architecture uses a stack for storage. And the requested operation is performed on the contents of top of the stack. Because of the stack based architecture, the applications of this architecture was very limited. So this architecture did not have large fan followers.

RISC or Reduced Instruction Set Computer is the next step. This processor architecture is based on registers. All the operations are based on these registers. This architecture is actually the most popular, and unknown to many; this is the highly used architecture. This architecture gives a lot of benefits due to small footprint and high execution speed due to reduced complexity. These have very small op-codes and executed them very fast. The most famous processors using this architecture are from ARM.

CISC or Complex Instruction Set Computer is the most complex of the lot. This architecture can do almost everything the other two can do, plus few more things. This architecture can do complex things with a single op-code. This is the most famous architecture among the three. All the processors found in PCs/servers these days follow this architecture.

We will talk a little more about CISC (henceforth referred to as processor). The processor architecture has been refining with the technology. The earliest processors were from Zilog (Z80 family), Motorola (68xxx family) and Intel (4004 and 8008). These were true CISC processors. The next breakthrough came in the form of x86 architecture by Intel. This is the same architecture which is being followed till today.

However, as more complex things were required to be done by the processors, people began to realize the advantage of RISC over CISC. And because of this, all the latest processors are CISC at the user layer and RISC at bottom layer. So the complex op-codes gives by the user are broken down into smaller RISC type instructions by the processor. This gives are huge performance advantage when compared to true CISC processors.

Next the question arises as to how does the user give the op-codes to the processor. When the technology was at its infancy, the user used to program the op-codes in machine language (or binary) and feed it to the processor. But as things got more complex, higher level languages, compilers and interpreters were to used to program the processor to do the required task.

Posted in Computer, Technology.

One Response to “Journey Of Code - Processors”

  1. Journey Of Code - Machine Level | Splat Says:

    [...] the last article of this series, Sandy explained, how at the processor level, everything is orchestrated to make the [...]

Leave a Reply