Five Components of Computer

In this paper, I shall investigate the processing and interdependencies of the following components of computer architecture. 1. ALU (Arithmetic Logic Unit) 2.Instruction Decoder 3. Clock and Program Counter 4.Control Codes 5.Control Unit.


  1. ALU (Arithmetic Logic Unit)

The ALU is a basic device that makes up a computer and performs calculations such as arithmetic operations (four arithmetic operations) and logical operations. In modern computers, it is implemented as part of a logic circuit, such as a microprocessor along with a control unit. It has arithmetic circuits such as adders and subtraction, logical negation, logical OR, logical conjunction, and exclusive logical OR. These circuits can be combined to perform multiplication, division, remainder, real number & floating-point number operations, negative disjunction NOR, and negative conjunction NAND. In light of these things (Nisan & Schocken, 2005) describes ALU as "ALU architecture achieves a great deal of functionality using a minimal set of internal parts." 


  1. Instruction Decoder

The Instruction decoder is one of the control circuits inside a CPU that interprets instructions to read from memory and sends necessary signals to other circuits according to their contents. In modern computers, programs that mean instruction sequences are stored in the main memory as data expressed in binary numbers. The CPU first reads the instruction code to be executed next from the address in memory indicated as the current execution position into a register, which is a high-speed memory device inside the CPU (fetch operation). Next, the instruction decoder decodes the instructions in the instruction register and determines which circuits should perform what operations to execute the contents of the instruction (decoding). Based on this, the decoder issues control signals to various circuits, retrieves necessary data from memory, and instructs registers and arithmetic units (ALUs) to perform necessary operations. Finally, the processing results are stored in memory to complete one instruction execution cycle. And the next instruction is ready to be executed. 


  1. Clock and Program Counter

A clock is a signal used by a circuit, such as a CPU, that operates on a certain wavelength to keep pace with processing. The peaks and troughs of a wavelength constitute one clock, and the processing performed by a CPU or memory device is divided into one clock cycle. A program counter is a type of register that holds data inside a microprocessor (MPC/CPU) and stores the address in memory where the next instruction to be executed is sorted. It also stores the address value. Sometimes abbreviated as "PC." A register is a highly high-speed read/write storage device in a processor's circuitry, and various registers are available for different purposes. The program counter is one of them and indicates at which address in memory the next instruction to be executed is sorted. When program execution starts and an instruction to be executed is read from a certain address in memory, the value of the program counter is added by the control circuit in the processor for the length of the instruction to be executed next (the first position of the instruction) is indicated. Branching and jumping are realized by rewriting the contents of the program counter to the address where the destination program is stored.  (Nisan & Schocken 2005) Explain the program counter as follows. "For example, a typical CPU includes a program counter whose output is interpreted as the address of the instruction that should be executed next in the current program."


  1. Control Code

Control code is special characters used for communication control, control of peripheral devices, etc., among the characters specified in character codes, etc. The code assigned to a control character is called a "control code." They are used in conjunction with ordinary characters when writing commands for devices, etc. They can be used to notify the device's status and express instructions for its operation. Many of the characters can not be directly input by the user or displayed on the screen in the usual way. The types of control characters and the codes assigned to each character differ for each character code system. According to (Geeksforgeeks, 2020), the most commonly used  ASCII character codes and their compatibility codes are HT (Horizontal Tabulation, code #9 /0x09), LF (Line Feed, code #10 /0x0a), CR (Carriage Return, code #13 /0x0 d), ESC (Escape: start of special character, No. 27/0x1b), and SPC (Space: space character, No. 32/0x20) are well-known.


  1. Control Unit

A Control unit is a component of a machine or system that is primarily responsible for functions such as controlling the operation of other elements. Among the devices that make up a computer, those that control other devices are called "Control Units." Together with the arithmetic unit, storage device, input device, and output device, they are called the five major devices of a computer. Most modern computers are implemented as part of a device called the central processing unit (CPU) together with the arithmetic unit. The CPU is also provided as a single semiconductor integrated circuit (IC chip) called a microprocessor. The control unit manipulates the arithmetic unit and registers to control the execution of instructions, controls the reading and writing of data and instructions between the processor and storage devices such as main memory (RAM), and controls the input and output of signals to and from external devices. In early computer designs, the processor was independent and separate from the arithmetic unit. However, in modern processors, the two are integrated and designed as a single unit, so the distinction between the two has become almost meaningless and is often referred to by terms such as "execution unit" or "processor core." (Tarnoff, 2007) explains the purpose of the Control unit as follows: "Middle management has a very important task: they know what needs to be done, who best can do it, and when it needs to be done. This is the purpose of the control.".


  1. About interdependencies of the above components.

For example, when executing "2 + 7" as an additive process, not only the instruction to add "+" but also the target data of "2" and "7" to be added are required. This data consists of an instruction part (addition), a processing part (data), and the location where the data to be processed is stored, called the address part. In other words, an instruction consists of an "instruction part" + "address part." The data to be processed in the address section is called operand, and deriving the storage location of the operand is called execution address calculation. Incidentally, an instruction is called an opcode. Conceptually, it is divided into "instruction" and "address" parts." The calculation of the storage location of the operand is called execution address calculation. Based on these terms, the following five phases are instruction execution cycles. Fetch instruction: An instruction is fetched from the main memory and put into the instruction register of the CPU. Decode: The instruction is decoded. Deciphers the instruction code (decode). Address Calculation: Calculates and obtains the storage location of the operand to be executed. Read operand: Accesses the execution address in main memory and reads out the operand. Execution of instruction (Execution): Execute an instruction and writes the result data to the main memory as necessary. The above process shows how to interdependencies of five elements.

  1. Conclution

Overall, we focused on  interdependencies of the following components of computer architecture. 1. ALU (Arithmetic Logic Unit) 2.Instruction Decoder 3. Clock and Program Counter 4.Control Codes 5.Control Unit. As shown in Chapter 6, the five components play a very important role in running a program.

References

Nisan, N., & Schocken, S. (2005). The elements of computing systems. MIT Press. http://f.javier.io/rep/books/The%20Elements%20of%20Computing%20Systems.pdf

Tarnoff, D. (2007). Computer organization and design fundamentals. http://faculty.etsu.edu/tarnoff/138292/

Geeksforgeeks. (2020). Control Characters. https://www.geeksforgeeks.org/control-characters/#:~:text=ASCII%20control%20character%20comprises%20code,devices%2C%20for%20example%2C%20printers.


この記事が気に入ったらサポートをしてみませんか?