Bachelor of Information Technology with Honours
Semester September / 2021
CBCA 2103
Computer Architecture
NO. MATRIKULASI | : | |
NO. KAD PENGENALAN | : | |
NO. TELEFON | : | |
E-MEL | : | lesterwan@oum.edu.my |
PUSAT PEMBELAJARAN | : | Bintulu Learning Center |
CBCA 2103
CONTENT TABLE PAGES
Introduction of Computer Architecture 3-4
CBCA 2103
1.0 COMPUTER ARCHITECTURE
Computer architecture is a science or set of rules that describes how computer software and hardware are connected and interact to make a computer work. It determines not only how the computer works, but also which technologies the computer is capable of.
A Computer architecture is a specification that describes how hardware and software technologies work together to create a computer platform or system. We associate architecture with the construction of a house or a building. Keeping that same principle in mind, computer architecture entails the construction of a computer and all of the components that comprise a computer system. There are three major categories in computer architecture.
i. System design contains all hardware components, including the CPU, data processors, multiprocessors, memory controllers, and direct memory access. The actual computer system is represented by this section.
ii. Instruction set architecture contain the CPU’s functions and capabilities, the CPU’s programming language, data formats, processor register types, and computer programming instructions are all included. This is the software that allows it to function, such as Windows, Photoshop, or other similar programmes.
iii. Microarchitecture defines the data processing and storage elements, as well as the data paths, and how they should be implemented in the instruction set architecture. DVD storage devices and other similar devices could be included.
Von Neumann architecture, which is still used by the majority of computers today, is a great example of computer architecture. In 1945, John von Neumann, a mathematician, proposed this. It describes the design of an electronic computer, including the arithmetic logic unit, control unit, registers, data and instruction memory, an input/output interface, and external storage functions.
CBCA 2103
Diagram 1: Von Neumann Architecture
1.1 MICROPROCESSOR
The microprocessor is the central processing unit of a computer system that performs arithmetic and logic operations such as adding, subtracting, moving numbers from one area to another, and comparing two numbers. It is frequently referred to as a processor, central processing unit, or logic chip. When the computer is turned on, it is essentially the engine or brain of the computer that gets things going. It is a programmable, multipurpose device that combines the functions of a CPU (central processing unit) onto a single integrated circuit (IC) (integrated circuit).
1.2 THE ARCHITECTURE OF A MICROPROCESSOR
A microprocessor is a single integrated circuit package that integrates and fabricates several useful functions on a single silicon semiconductor chip. A central processing unit, memory modules, a system bus, and an input/output unit comprise its architecture. To facilitate information exchange, the system bus connects the various units. It also has data, address, and control buses to allow for proper data exchange. A central processing unit (CPU) is made up of one or more arithmetic logic units (ALU), registers, and a control unit. The generations of microprocessors can also be classified based on the registers. A microprocessor is made up of general-purpose and special-purpose registers that are used to execute instructions and
CBCA 2103
store addresses or data while the programme is being executed. The ALU performs all arithmetic and logic operations on data and determines the microprocessor size, such as 16 bit or 32 bit. The Memory unit, which is divided into a processor, primary, and secondary memory, stores both the programme and the data. The Input and output unit connects I/O peripheral devices to the microprocessor in order to accept and send data.
1.2.1 8085 Microprocessor
8085 Microprocessor was the first commercially successful microprocessor by Intel. The 8085 is an 8-bit microprocessor because it operates on 8 bits at a time and is built with N- MOS technology. This microprocessor has some distinct characteristics, which account for its continued popularity among microprocessors. The data bus of the 8085 is 8 bits in length, while the address bus is 16 bits. As a result, can address 64 KB (i.e., 216) memory. Also, because it can perform 8-bit operations, the ALU is 8-bit in size. It also has operational advantages, as the 8085 requires only a single +5V supply and a single clock single with a width of 320 ns. While the 8080 requires three power supply lines and two 500-ns clock signals.
1.2.2 8085 Microprocessor Architecture
The architecture of the 8085 microprocessor explains what operations will be performed and how they will be performed. For this case, it can perform operation that are given, for example, operates on and stores 8-bit data and it executes arithmetic and logic operations. The 8085 microprocessor also sequence the instruction to be executed and it stores data temporarily. But, in order to implement all this operation, the processor needs a control unit, arithmetic logic unit, registers, buses and many more.
CBCA 2103
The figure below represents the architectural representation of 8085 microprocessor:
1.2.3 Function unit of 8085 Microprocessor Register
These are simply a pair of flip flops. These are primarily used to hold (or store) data.
General purpose registers
8085 microprocessors have six general-purpose registers that store 8-bit data in order to run a programme. B, C, D, E, H, and L are the general-purpose registers. In order to execute the 16-bit operation, these registers can be combined into pairs – BC, DE, and HL. These are programmable registers, which means that the programmer can access them using instructions to insert and transfer data.
Temporary registers
The ALU uses these registers to temporarily store data, and the programmer does not have access to them. These are divided into two categories:
1. Temporary data register – It’s an 8-bit register that stores the operand and passes it to the ALU for programme execution. In addition, the ALU stores the instant results in this register.
CBCA 2103
2. W and Z register – Temporary values are also held in these registers. It is used by the microprocessor’s control section to store data while operations are taking place.
Program Counter (PC)
It is essentially a special-purpose register that is used to store the memory location of the instruction to be executed. As is obvious, in order to retrieve an instruction from memory, the microprocessor must first determine its address. It is a 16-bit register that stores the address. The microprocessor uses this register to line up the instructions that will be executed sequentially. It operates in such a way that it retrieves the opcode from one memory location while simultaneously being incremented by the next memory location. As a result, it specifies the order in which the programme will be executed.
Stack Pointer (SP)
It is also a 16-bit register and a memory component. The data is serially stored in the stack, and the stack pointer typically stores the address of the last data element stored in the stack. As a result, the stack follows the LIFO principle. When new data is added to the stack, the stack pointer moves to the next available memory location. When, on the other hand, a data element is removed from the stack, the stack pointer points to the previously occupied memory location.
Accumulator
It’s an 8-bit register that holds the outcome of the ALU’s operation. Register A is another name for it.
Flags
The flag register essentially stores the status of the current result generated by the ALU, rather than the actual result. As a result, it can be said that it is used to test the data conditions. The 8085 has five flags, each of which represents a different data condition. Carry, sign, zero, parity, and auxiliary carry flags are examples of these. However, sign, carry, and zero are the most commonly used.
1.2.4 The use of Microprocessor
1. Used in handheld devices
CBCA 2103
Handheld devices, such as smartphones, tablets, and portable media players, now have powerful microprocessors capable of competing with desktop computers. And these days, processors have more cores. Processors began with a single core, then two cores, quad cores, hexa cores, octa cores, and now deca cores. Nowadays, the vast majority of processors are 64-bit. With the inclusion of a Graphics Processing Unit (GPU) inside mobile processors, these devices can now provide high-quality graphics, Virtual Reality capability, 3D capability, and 4k recording, as well as greater power efficiency due to improved processor technology.
2. Used in Medicals
A microprocessor is commonly used to control many medical devices, such as an insulin pump. Microprocessors process data from biosensors, store measurements, and analyse results, among other things.
3. Used in Communication
The telephone industry is the most important in terms of communication. Microprocessors are used in digital telephone sets, telephone exchanges, and modems, among other things, in this industry. Teleconferencing has become possible thanks to the use of microprocessors in satellite communication and television. Microprocessor technology is also used in railway reservation and airline reservation systems. WAN (Wide Area Network) and LAN (Local Area Network) for communication of vertical information via computer network.
4. Used in Computer and electronic
The brain of the computer is microprocessor-drive technology. They are used in all types of computers, from microcomputers to supercomputers. A microprocessor in a cell phone or mobile device executes game instructions. Microprocessors are also found in VCRs, televisions, and gaming platforms, where they are used to execute complex instructions and tasks.
1.3 EVOLUTION OF MICROPROCESSORS
The generation of microprocessors is used to classify them. Intel’s 4004 microprocessor was the first to be introduced in 1971. This, however, may not be used in public. Intel has announced the release of the 4040 microprocessors. It’s a 4-bit microprocessor as well. The first 8-bit microprocessor, the 8008, was released in 1975. It is built with PMOS technology.
CBCA 2103
The speed of operation is slow because it is based on PMOS technology. Microprocessors
with the model number 8080 are thus introduced. It is an 8-bit NMOS microprocessor. It moves quickly. However, three separate power supplies were required. To avoid this, Intel introduces 8085 microprocessors first. It was an 8-bit microprocessor that needed only one power supply. The first 16-bit microprocessor, the 8086, was released in 1980. Following that, 8088 and 80186 are presented. The 80386 microprocessor was the first 32-bit microprocessor. Following that, Intel 80486, Pentium, Pentium Pro, Pentium mmx, Pentium II, Pentium III, and Pentium IV were released. In 2001, Intel Itanium, the first 64-bit microprocessor, is introduced. Aside from Intel, other companies such as Zilog, Motorola, and Texas Instruments have also introduced microprocessors.
2.0 MICROCONTROLLER
A microcontroller is a small integrated circuit that governs a single operation in an embedded system. A microcontroller is a single-chip device that contains a processor, memory, and input/output (I/O) peripherals. Microcontrollers, also known as embedded controllers or microcontroller units (MCUs), are found in a variety of devices such as vehicles, robots, office machines, medical devices, mobile radio transceivers, vending machines, and home appliances. They are essentially simple miniature personal computers (PCs) designed to control minor aspects of a larger component without the use of a complex front-end operating system (OS).
CBCA 2103
Diagram 2: Microcontroller Architecture
2.1 How Microcontroller Work
A microcontroller is a device that is embedded within a system and controls a single function. This is accomplished by using its central processor to interpret data received from its I/O
peripherals. The microcontroller stores temporary information in its data memory, which the
processor accesses and uses instructions from its programme memory to decipher and apply the incoming data. It then communicates and executes the appropriate action using its I/O peripherals. Microcontrollers are used in numerous systems and devices. Multiple microcontrollers are frequently used in devices to handle their respective tasks.
2.2 Difference between Microcontroller and Microprocessor
When referring to a microcontroller, people may use the terms “microprocessor” or “MPU,” but these two devices are not always interchangeable. Microprocessors and microcontrollers are both small, highly integrated computer systems, but they serve different purposes.
CBCA 2103
A processor is a system that consists of a central processing unit and (optionally) some memory; a microprocessor is a device that implements all of a processor’s functionality on a single integrated circuit. In comparison, microcontrollers place a greater emphasis on additional hardware modules that enable the device to control a system rather than simply execute instructions and store data.
Diagram 3: Microcontroller Concept
Overall, when we’re speaking casually or trying to avoid saying the same word over and over, using the terms “microprocessor” and “microcontroller” interchangeably isn’t a big deal. However, it is critical to distinguish between the two concepts in the context of a technical discussion.
A multiprocessor is a computer system that has two or more central processing units (CPUs) that share full access to the same RAM. The primary goal of using a multiprocessor is to increase system execution speed, with fault tolerance and application matching as secondary goals. Multiprocessors are classified into two types: shared memory and distributed memory. In a shared memory multiprocessor, all CPUs share a common memory, whereas in a distributed memory multiprocessor, each CPU has its own private memory.
CBCA 2103
Diagram 4: Multiprocessor concept
3.1 APPLICATION OF MULTIPROCESSOR
A uniprocessor, for example, has a single instruction and a single data stream (SISD). Besides that, a multiprocessor, single instruction, multiple data stream (SIMD) is commonly used for vector processing. Multiple instruction series in a single perspective, such as multiple instruction, single data stream (MISD), which is used to describe hyper-threading or pipelined processors. Finally, within a single system, multiple, individual series of instructions are executed in multiple perspectives, such as multiple instruction, multiple data stream (MIMD).
3.1.1 Benefits of using a Multiprocessor
a. Enhanced performance
b. Multiple application
c. Multi-tasking inside an application d. High throughput and responsiveness e. Hardware sharing among CPUs.
3.2 MULTICORE
It is a single computing component that contains two or more independent processing units known as cores. These cores are capable of reading and executing programme instructions independently. It denotes that the system uses a single CPU with multiple cores. They operate in such a way that the computer system appears to have multiple processors, but they are
CBCA 2103
actually cores rather than processors. These cores can perform standard CPU instructions such as add, move data, and branch.
A single processor in a multicore system can run multiple instructions at the same time, increasing the overall speed of the system’s programme execution. It reduces the amount of heat produced by the CPU while increasing the speed with which instructions are executed. These multicore processors are widely used in a variety of applications, including general-purpose, embedded, network, and graphics processing (GPU).
The performance of a multicore system is entirely or primarily determined by the software algorithms used for core implementation in the multicore system. Because we want to achieve parallel execution with the help of multiple cores, we are focusing more on developing software that can run in parallel.
Diagram 5: Multicore Concept
3.2.1 Benefits of using Multicore
a. Since multiple CPU cores are placed on the same die, so in this case, cache coherency will be higher.
b. It allows higher performance at lower energy because the cores are very energy efficient.
3.3 The differences between multiprocessor and multicores system
CBCA 2103
Diagram 6: Comparison between Multicore and Multiprocessor
What is the distinction between a multiprocessor system and a multicore system? Both may appear to be similar, but they are not. The only thing they have in common is a desire to speed up your computing processes.
A multicore processor only has one CPU, whereas a multiprocessor has multiple CPUs. However, a multiprocessor system will be more expensive and will necessitate the use of a system that supports multiprocessors. In terms of speed, if both systems have the same clock speed, number of CPUs and cores, and RAM, the multicore system will perform better on a single programme. Because of the shared cache, the cores can execute multiple instructions at the same time but not multiple programmes (L1, L2, and L3). This is where your multiprocessor comes in. Because each CPU has its own cache, they can run programmes at the same time as your multicore, but it will take longer. To summarise, a multicore system is a more user-friendly system. It does not necessitate any additional configurations or support and will most likely cost less. Each has advantages and disadvantages in terms of performance, depending on how your programmes are run.
Systems architecture is concerned with how the components of a system are compartmentalised (e.g., into subsystems, functions, or objects) and how they interface/communicate with one another and with the outside world (especially the HCI). The goal of architectural design is to divide up the system’s functions/actions in such a way that
CBCA 2103
the need for (inter)communication is minimized—which represents a significant potential point of (design) failure and is usually a constraint on future upgrade designs.
Furthermore, the less communication required, the faster the system will be; interfaces are potential bottlenecks. However, part reusability and parallelism (e.g., multiple instances of parts operating in parallel) are also goals of good system architecture design.
Systems architecture is broader than computer architecture in that a computer architecture can be viewed as any of many possible implementations of a systems architecture. Computer architecture, in particular, is typically (exclusively) concerned with the hardware aspects of a joint hardware/software system architecture. A hardware-only subsystem (for example, the computer) and a software-only subsystem may exist in such a complete system (e.g., the operating system). However, because system architecture is more general, its principles limit how computer architecture is implemented. Most system architectural elements are typically implementable in either hardware or software.
2874 words
Dr. Gargi Tiwari. (2008). Notes on 8085 microprocessor. India.
Dr. Mohamed Mahmoud (2009). Microprocessor Architecture. Tennessee Tech University. United State of America.
CBCA 2103
Gunther Gridling, Bettina Weiss. (2007). Introduction to Microcontrollers. Vienna University of Technology. Institute of Computer Engineering. Austria.
Jernej Barbic. (2007). Multicore architecture. Slovenia.
J. Daniel Garcia Sanchez, David Exposito Singh, Javier Garcia Blas. Intorduction to multiprocessors. University Carlos III of Madrid. Computer Science of Engineering Department. Spain.
评论0