ARTICLE: The processor: Datapath and Control

Introduction

The computer has five classical components. These are the-

  1. Control Unit
  2. Compiler
  3. Interface
  4. Memory
  5. Processor

The key factors for determining the performance of a machine are instruction count, clock cycles per instruction and clock cycle time. The instruction set architecture determines the compiler and instruction cycle. When the implementation of the processor takes place, then the clock cycle time and the number of clock cycles per instruction is determined.

Here, we will look that how the data path and control unit for two different implementations of the MIPS instruction set can be constructed.

There are various applications and examples of MIPS. You must read them.

For all the processes to take place, we need to include the memory reference instructions load word and store word. In addition to this, we need to learn the architecture-logic instructions and the equal branch instructions with the jump instructions.

The core of the subset of MIPS instructions includes the integer arithmetic-logical instructions and the memory reference instructions. The other element in the subset of the MIPS instructions is the branch instruction. There are various instructions which are required to be implemented,and they need to be independent of the exact type of the instruction. The initial two steps of all the instruction type are identical. These are as follows-

  1. The process begins by sending the program counter to the memory. The counter has to contain the code which fetches the instruction.
  2. Reading one or two registers with the help of instruction fields is the second step of the process. It is done to select the registers to read the instruction. If we have the load register, then we need to read only one register. But for the other types of instructions, we require two registers.

As we are done with the two process steps, the action which we need for the completion of the instruction is dependable on the type of instruction. The actions of three types of instructions are same. Along with this, they are independent of the opcode. There are several similarities between the different instructions. To begin with, after reading the registers, all the types of instructions use the arithmetic logic unit. But the memory reference instructions use it to make the address effective. It uses the ALU instructions also for executing the opcode and the comparison of the branches. What simplifies the implementation of the instructions? It is its simplicity and regularity. It can make it with the help of the process of the instruction types similar to each other.

Here comes the change in the process. When the ALU has been used, there is a difference in the actions which are required for the completion of the different instructions. For accessing the memory which contains the data, we need the memory reference. It also works for the completion of the storage work. Getting the word which has to be loaded also comes under this.

What does the ALU do?

The basic function of the ALU is writing the data from the ALU back into the register. For a branch instructionwhich is based on the comparison are needed to change the next instruction.

Logic Conventions and Clocking-The Beginning

For a better understanding and discussion of the machine design, we should discuss the logic implementation of the machine. They will help in understanding the operation and how the clocking of the machine takes place.

We can ease the modifications in the mapping between the high or low voltage level and true and false signals within the logic design.

Two logic elements in the MIPS implementation are-

  1. Elements which operate on state
  2. Elements which operate on data values

The type of the elements that are operating in the data values is combinational. It shows that the current inputs decide the output of the process. When we produce a combinational input, we will get the corresponding output. It happens because it does not have any internal storage.

The elements which are based on state are not combinational. It happens due to the presence of the internal storage. The name so because when we pull the plug on the machine, it is needed to be restarted. This happens by loading the values in the state elements which are already present in the machine before we have pulled the plug. The state elements are needed to characterize the machine because the saved and the restored elements can give the power of not losing the power of the machine.

For example, of the state elements, we have instruction and data memories, registers.

Input and output of state elements

There are two inputs which are to be given to the state elements. They are processed to get one output. The two inputs which are given have the data value,and they are written. The clock of the machine is for the determination purpose every time the data values are stored. The values that are present in the clock are given in the form of output.

Other types of state elements

There are two more types of state elements in addition to the flip-flops. These are the memories and registers.

The difference in the clock and state elements

We can read the state elements at any time, but we use the clock when we determine the written state elements.

Sequential

Sequential is a term which is used for the logic components which contain state. The name is given so because there are two factors on which the output depends, one the input and the second the contents of the internal state.

Clocking methodology

Defining the readable signals and the time in which they can be written is termed as clocking methodology. It is a significant step in the process because it helps in distinguishing the timings to read from the time to be used in writing the instruction. Clocking and its methodology is important because if the signal has been written at the time when it is being read, then the probability of getting the old value rises. Also, the mixing of the values may take place, the even and the odd.

Edge Triggered clocking techniques

When the needed values are stored on the and updated only and only on the clock edge, then it is determined by the edge-triggered clocking technique. Clock edge is used for updating the state elements on the internal storage. It is because the capability of storing the data values is with the state elements.

What is input in the clocking system?

The value which carries forward from the previous cycle is the input. And the values which are to be used in the next and the following the clock cycles are the outputs.