IO controller is a component that commands the various components of a computer to coordinate their work according to the functional requirements of instructions. It is the nervous system and command center of the computer, consisting of three components: Instruction Register (IR), Program Counter (PC), and Operation Controller (0C). Coordinating the orderly work of the computer is very important.
Command Register: A register that stores the current or upcoming command being executed. Instructions include operation code that determines the type of operation and addresses that indicate the source or destination of the operand. The length of instructions varies depending on the computer, and the length of instruction registers also varies. All operations of a computer are executed after analyzing instructions stored in instruction registers. The input terminal of the instruction register receives instructions from memory, and the output terminal of the instruction register is divided into two parts. A part of the operation code is sent to the decoding circuit for analysis, indicating which type of operation the command should perform. A part of the address is sent to the address adder to generate a valid address, which is then sent to the memory as the address for retrieving and storing data.
Memory (IO controller) can refer to main storage, cache, or memory stack, etc., to store the instructions currently being executed. When executing an instruction, it is fetched from memory into the data register (DR) and then transferred to the IR. Instructions are divided into operation code and address code fields, consisting of binary digits. In order to execute any instruction, the operation code must be tested to identify the required operation. The instruction decoder is responsible for this task. The output of the opcode field in the instruction register is the input of the instruction decoder. After translating the operation code, specific signals for specific operations can be sent to the operation controller.