The controller is the command control center of the whole CPU. It consists of three parts: instruction register IR, program counter PC operation controller 0C. This is very important to coordinate the orderly work of the whole computer.
Instruction register
Instruction register: a type of register used to hold instructions currently executing about to be executed. The instruction contains the operation code used to determine the type of operation an address indicating the source destination of the operand. The instruction length varies computer to computer, the length of the instruction register varies. After analyzing the instructions stored in the instruction register, all operations of the computer will be performed. The input of instruction register receives instruction memory, the output of instruction register is divided into two parts. The operation code part is sent to the decoding circuit for analysis, indicating which type of operation the instruction should perform; the address part is sent to the address adder to generate a valid address, then sent to the memory as the address to acquire store the number.
controller
Registers can refer to main memory, cache, register stack, etc. for saving currently executing instructions. When an instruction is executed, it is first accessed internally to the data register (DR) then transmitted to the IR. Instructions are divided into operation code address code fields, which are composed of binary digits. In order to execute any given instruction, the opcode must be tested to identify the required operation. The instruction decoder does this work. The output of the opcode field in the instruction register is the input of the instruction decoder. Once the operation code is decoded, a specific signal for a specific operation can be sent to the operation controller.
Program counter
Program counter: a counter that specifies the address of the next instruction to be executed in the program. It has the function of instruction address register counter. When an instruction is executed, the program counter is used as the instruction address register its contents must have been changed to the address of the next instruction so that the program can continue to run. For this purpose, the following two methods can be adopted:
One way is to include the address of the next instruction in the instruction. Sending the address to the instruction address register during instruction execution can realize the purpose of continuous program operation. This method is suitable for early computers with serial devices such as magnetic drums delay lines as the main memory. By properly determining the address of the next instruction according to the execution time of the instruction, the waiting time of reading the next instruction can be shortened, so as to improve the running speed of the program.
Two ways are to execute instructions in sequence. A program is composed of several program segments, the instructions of each program segment can be designed to be stored in memory in sequence. Therefore, as long as the instruction address register also has the counting function, it will automatically count increase an increment during the execution of the instruction, you can form the address of the next instruction
The controller thus achieves the purpose of sequential execution of instructions. This method is suitable for computers whose main memory is ram. When the operation of a program needs to be transferred one program segment to another, it can be realized by using transfer instructions. The branch instruction contains the address of the input instruction for the block to be delivered. When the transmission instruction is executed, the address is sent to the program counter as the address of the next instruction (at this time, it is only used as the instruction address register without counting), so as to achieve the purpose of transmitting the program segment. Subroutine calls, interrupts traps are handled in a similar way. After the popularity of random access memory, the overall effect of the second method is much better than the former method, so the sequential execution of instructions has become a popular method of mainstream computers, program counter has become an integral part of the central processor. Control components
Operation controller
Each functional component in the CPU performs certain functions. Information transfer between components implementation of data flow control components. The path to transfer information between many digital components is often referred to as the "data path.". You must control the information starts, which register multiplexer is passed in the middle, which register it is finally passed to. The task of establishing a data path between registers is done by a component called an "operation controller.".
The function of the operation controller is to generate various operation control signals according to the instruction operation code timing signal, so as to correctly establish the data path complete the control of fetching executing instructions.
15268245770
Official account