Computer Science

Processor Architecture

Processor architecture refers to the design and organization of a computer's central processing unit (CPU). It encompasses the instruction set, data types, registers, memory access methods, and overall structure of the CPU. Different processor architectures, such as x86, ARM, and RISC-V, have distinct features and capabilities that impact the performance and compatibility of computer systems.

Written by Perlego with AI-assistance

12 Key excerpts on "Processor Architecture"

  • Book cover image for: Computer Architecture
    eBook - PDF

    Computer Architecture

    Fundamentals and Principles of Computer Design, Second Edition

    • Joseph D. Dumas II(Author)
    • 2016(Publication Date)
    • CRC Press
      (Publisher)
    chapter one Introduction to computer architecture “Computer architecture” is not the use of computers to design buildings (although that is one of many useful applications of computers). Rather, computer architecture is the design of computer systems, including all of their major subsystems: the central processing unit (CPU), the memory system, and the input/output (I/O) system. In this introductory chapter, we take a brief look at the history of computers and consider some general topics applicable to the study of computer architectures. In subsequent chapters, we examine in more detail the function and design of specifc parts of a typical modern computer system. If your goal is to be a designer of computer systems, this book provides an essential introduction to gen-eral design principles that can be expanded upon with more advanced study of particular topics. If (as is perhaps more likely) your career path involves programming, systems analysis or administration, technical management, or some other position in the computer or information technology feld, this book provides you with the knowledge required to understand, compare, specify, select, and get the best performance out of computer systems for years to come. No one can be a true computer pro-fessional without at least a basic understanding of computer architecture concepts. So let’s get underway! 1.1 What is computer architecture? Computer architecture is the design of computer systems, including all major subsystems, including the CPU and the memory and I/O systems. All of these parts play a major role in the operation and performance of the overall system, so we will spend some time studying each.
  • Book cover image for: Computer Architecture
    eBook - ePub

    Computer Architecture

    Fundamentals and Principles of Computer Design, Second Edition

    • Joseph D. Dumas II(Author)
    • 2016(Publication Date)
    • CRC Press
      (Publisher)
    chapter one

    Introduction to computer architecture

    “Computer architecture” is not the use of computers to design buildings (although that is one of many useful applications of computers). Rather, computer architecture is the design of computer systems, including all of their major subsystems: the central processing unit (CPU), the memory system, and the input/output (I/O) system. In this introductory chapter, we take a brief look at the history of computers and consider some general topics applicable to the study of computer architectures. In subsequent chapters, we examine in more detail the function and design of specific parts of a typical modern computer system. If your goal is to be a designer of computer systems, this book provides an essential introduction to general design principles that can be expanded upon with more advanced study of particular topics. If (as is perhaps more likely) your career path involves programming, systems analysis or administration, technical management, or some other position in the computer or information technology field, this book provides you with the knowledge required to understand, compare, specify, select, and get the best performance out of computer systems for years to come. No one can be a true computer professional without at least a basic understanding of computer architecture concepts. So let’s get underway!

    1.1 What is computer architecture?

    Computer architecture is the design of computer systems, including all major subsystems, including the CPU and the memory and I/O systems. All of these parts play a major role in the operation and performance of the overall system, so we will spend some time studying each. CPU design starts with the design of the instruction set that the processor will execute and includes the design of the arithmetic and logic hardware that performs computations; the register set that holds operands for computations; the control unit that carries out the execution of instructions (using the other components to do the work); and the internal buses, or connections, that allow these components to communicate with each other. Memory system design uses a variety of components with differing characteristics to form an overall system (including main, or primary, memory and secondary memory) that is affordable while having sufficient storage capacity for the intended application and being fast enough to keep up with the CPU’s demand for instructions and data.
  • Book cover image for: Foundations of Computing
    eBook - ePub

    Foundations of Computing

    Essential for Computing Studies, Profession And Entrance Examinations - 5th Edition

    • Pradeep K. Sinha, Priti Sinha(Authors)
    • 2022(Publication Date)
    • BPB Publications
      (Publisher)
    Chapter 4

    Computer Architecture

    This chapter provides an overview of computer system architecture. It first introduces the basic functional units of a computer system and then provides detail architectures of processor and memory. Subsequent chapters provide details of other units (secondary storage and I/O devices). This chapter also provides details of interconnection architectures used for interconnecting processor, memory, and I/O units. Finally, it also provides details of multiprocessor system architectures, which use multiple processors and memory units to form powerful computer systems.

    BASIC FUNCTIONS OF A COMPUTER

    All computer systems perform the following five basic functions for converting raw input data into useful information and presenting it to a user:
    1. Inputting. It is the process of entering data and instructions into a computer system.
    2. Storing. It is the process of saving data and instructions to make them readily available for initial or additional processing as and when required.
    3. Processing. Performing arithmetic operations (add, subtract, multiply, divide, etc.), or logical operations (comparisons like equal to, less than, greater than, etc.) on data to convert them into useful information is known as processing.
    4. Outputting. It is the process of producing useful information or results for a user, such as printed report or visual display.
    5. Controlling. Directing the manner and sequence in which the above operations are performed is known as controlling.

    BASIC COMPUTER ORGANIZATION

    Even though the size, shape, performance, reliability, and cost of computers have been changing over the last several years, the basic logical structure (based on stored program concept), as proposed by Von Neumann, has not changed.
    Figure 4.1
  • Book cover image for: Guide to Operating Systems
    Microarchitecture is the description of a CPU ’ s internal circuitry, defining characteris-tics such as the technology used to create the chip, the supported instruction set, the bit size, and so forth. For example, the Intel Core i7-5820 Haswell-E is a 6-core process running at 3.3 GHz based on the Haswell microarchitecture, which was released in 2013. The most current microarchitecture, released in 2015, is called Skylark. It has bus transfer speeds up to 8 GT/s, up to 128 MB L4 cache, and four cores; it runs at speeds up to 4 GHz. Try Hands-On Projects 3-1 through 3-6 to practice monitoring processor usage and obtain information on the CPU in Windows-based, Linux-based, and Mac-based operating systems. 126 Chapter 3 The Central Processing Unit (CPU) Copyright 2017 Cengage Learning. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part. WCN 02-300 AMD Advanced Micro Devices, Inc. (AMD) manufactures CPU chips that compete with Intel PC chips. Table 3-3 lists single-core AMD ch ips, some of which are still being manufac-tured. More recent versions of these chips use multicore technology, and are listed in Table 3-4.
  • Book cover image for: Memory, Microprocessor, and ASIC
    • Wai-Kai Chen(Author)
    • 2003(Publication Date)
    • CRC Press
      (Publisher)
    11 Architecture

    Daniel A.Connors
    University of Illinois at Urbana- Champaign

    Wen-mei W.Hwu
    University of Illinois at Urbana- Champaign

    11.1 Introduction 11.2 Types of Microprocessors 11.3 Major Components of a Microprocessor Central Processor • Memory Subsystem • System Interconnection 11.4 Instruction Set Architecture 11.5 Instruction-Level Parallelism Dynamic Instruction Execution • Predicated Execution • Speculative Execution 11.6 Industry Trends Computer Microprocessor Trends Embedded • Microprocessor Trends Microprocessor Market Trends

    11.1 Introduction

    The microprocessor industry is divided into the computer and embedded sectors. Both computer and embedded microprocessors share aspects of computer design, instruction set architecture, organization, and hardware. The term “computer architecture” is used to describe these fundamental aspects and, more directly, refers to the hardware components in a computer system and the flow of data and control information among them. In this chapter, various types of microprocessors will be described, fundamental architecture mechanisms relevant in the operation of all microprocessors will be presented, and microprocessor industry trends discussed.

    11.2 Types of Microprocessors

    Computer microprocessors are designed for use as the central processing units (CPU) of computer systems such as personal computers, workstations, servers, and supercomputers. Although microprocessors started as humble programmable controllers in the early 1970s, virtually all computer systems built in the 1990s use microprocessors as their central processing units. The dominating architecture in the computer microprocessor domain today is the Intel 32-bit architecture, also known as IA-32 or X86. Other high-profile architectures in the computer microprocessor domain include Compaq-Digital Alpha, HP PA-RISC, Sun Microsystems SPARC, IBM/Motorola PowerPC, and MIPS.
  • Book cover image for: Computer and Network Technology
    eBook - ePub

    Computer and Network Technology

    BCS Level 4 Certificate in IT study guide

    Chapter 2 – Processor Architecture

    Learning objectives and assessment criteria

    The learning objectives covered within this chapter are:
    • Understand different computer architectures.
    • Use low-level instructions and addressing modes to construct a simple program.
    • Appreciate the importance of the memory hierarchy of a computer system and its peripherals.
    • Use the internet to find information on the performance of computer systems and trends in computer systems.
    The assessment criteria addressed within this chapter are:
    • 2.2 Describe the concept of a stored program.
    • 2.3 Explain different instruction formats.
    • 2.4 Describe trends in processor technology.
    • 3.2 Explain the concept of multitasking.

    2.1 The concept of a stored program

    When you ask a computer to do something for you, even just pressing a single key on the keyboard, it follows a set of instructions. The software used carries out a fetch, decode, execute and store cycle. Originally proposed by mathematician, physicist, computer scientist and engineer John von Neumann, this is the basic operation (instructions set) cycle of a computer. It is now used by most modern computers and determines the architecture of their hardware.
    The fetch–execute cycle occurs when the computer retrieves a program instruction from its memory. It reads the instruction to understand what computation is required, then carries out the actions required to complete the instruction. Each instruction is stored as a set of binary values (think back to section 1.2 ) in the memory, which is located as close to the central processing unit (CPU) as possible.
    The cycle is a continuous action the CPU carries out to run the computer even if nothing appears to be happening. A typical cycle would comprise the steps outlined in figure 2.1 .
    Figure 2.1 The fetch–execute cycle
    ×
    Based on the fetch–execute cycle, a computer’s hardware is laid out to effectively provide support to this model. Instructions and program data are stored within the same memory, and an instruction must be read, calculated and the result written back to a memory address. Figure 2.2
  • Book cover image for: Dissecting Computer architecture
    • Alvin Albuero De Luna(Author)
    • 2023(Publication Date)
    • Arcler Press
      (Publisher)
    The CPU, memory, Input/output devices, and channels of communication that link to it (Loo, 2007; Shaout and Eldos, 2003). The several types of computer architecture are discussed in further sections. 2.2. VON-NEUMANN ARCHITECTURE John von Neumann is the author of such a design proposal. Modern computers, such as those we use today, are built on the von-Neumann architecture. This is founded on several notions (Mariantoni et al., 2011). There is just one write/read memory in our system, which allows us to read and write data and instructions at the same time. Whenever we talk about memory, we have been referring to a single storage place that is utilized for writing and reading instructions for data and instructions. Memory has also been utilized to store instructions and data. Within the computer system, instructions, and data are kept in a single write/read memory that can be accessed from any direction (Figure 2.1) (Faust et al., 2015). Classification of Computer Architecture 51 Figure 2.1. The Architecture of CPU. Source: https://www.educba.com/types-of-computer-architecture/. Every memory contains numerous places, each with its address. We may read or write every instruction and data via addressing the contents of memory with its position, regardless of what form of instructions and data have been contained in the memory. Until a modification is necessary, execution is always done in sequential order. For instance, if we’re running a command from line one to line ten, although we suddenly need to run line 50 rather than line 11, we’ll jump to instruction 50 and run it (Shin and Yoo, 2019). The data and instruction code are executed on a bus. The input device receives data or commands, and the central processing unit (CPU) conducts one action at a time, typically fetching information or instructions into or out of memory. The process is completed and then communicated to the output device.
  • Book cover image for: Programming with C++
    • Kyla McMullen, Elizabeth Matthews, June Jamrich Parsons, , Kyla McMullen, Kyla McMullen, Elizabeth Matthews, June Jamrich Parsons(Authors)
    • 2021(Publication Date)
    It is referred to as “von Neumann architecture” and still applies to the computers that you use today. • Your computer’s central processing unit (CPU) processes input and produces output according to the instructions supplied by a software program stored in memory. • The CPU contains a control unit, an arithmetic logic unit, and registers. Copyright 2022 Cengage Learning. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part. Due to electronic rights, some third party content may be suppressed from the eBook and/or eChapter(s). Editorial review has deemed that any suppressed content does not materially affect the overall learning experience. Cengage Learning reserves the right to remove additional content at any time if subsequent rights restrictions require it. Module 25 Processor Architecture 459 • The control unit manages processing activities by collecting instructions and data, then sending them to the ALU. • The arithmetic logic unit (ALU) performs arithmetic and logical operations. • Registers are temporary areas for holding data. • Computer programs and data are stored in memory where they can be accessed by the CPU. The CPU for each of your digital devices is housed in a single integrated circuit called a microprocessor. A microprocessor is a complex integrated circuit containing billions of components designed to process data. On the circuit board of any digital device, you can easily identify the microprocessor because it is typically the largest integrated circuit. See Figure 25-5. 25.2 LOW-LEVEL INSTRUCTION SETS Microprocessor Instruction Sets (25.2.1) Computers perform billions of operations each second to accomplish relatively simple tasks, such as calculating your daily fitness activity or inserting an address in an email message. The reason for all this processing activity is that microprocessors are hard-wired to perform a limited set of operations for processing data.
  • Book cover image for: Computer Systems Architecture
    97 C H A P T E R 4 Central Processing Unit PART I: CENTRAL PROCESSING UNIT This chapter focuses on the various aspects of the processor (sometimes referred to as the central processing unit [CPU]). The processor is the core of the system, capable of execut-ing the applications’ instructions and performing the required tasks. By relating to the general hardware architecture figure ( Figure 4.1 ), we can see the exact location of the CPU. The processor, through its electronic circuits, is capable of “understanding” and execut-ing the instruction in the program. As already mentioned (see the section in Chapter 1 on the Von Neumann architecture and the processor) and due to implementing a modular approach, each processor is divided into additional components such as the control unit (CU), the arithmetic and logic unit (ALU), a special and dedicated internal fast memory, and so on. • The CU is responsible for scheduling the instructions to be executed, by bringing each instruction from memory, decoding it to find out its operands, fetching these required operands, and then transferring it to the ALU for execution. • The ALU executes the instruction using their operands. • Registers are one kind of fast temporary memory, inside the processor. There are several types of registers: some are available for the developers, others are only avail-able for the operating system, and a third type is used solely by the hardware itself (for additional elaboration see “Attributes of the First Computers” in Chapter 1 ). It should be noted that as part of software abstraction, accessing registers is available only by using the assembly language. Most high-level programming languages do not provide this capability and using the registers is left for the compiler only. Registers The idea of using registers was borne from the need to increase the speed of computers. Since even in the early days of computers, there was a need to overcome the architectural
  • Book cover image for: Microprocessor Theory and Applications with 68000/68020 and Pentium
    MICROCOMPUTER ARCHITECTURE In this chapter we describe the hndamental material needed to understand the basic characteristics of microprocessors. It includes topics such as typical microcomputer architecture, timing signals and internal microprocessor organization. and status flags. The architectural features are then compared to the Intel Pentium. Finally, an overview of pipelining, superscalar microprocessors, RISC vs. CISC, and the branch prediction feature is included. 2.1 Basic Blocks of a Microcomputer A microcomputer has three basic blocks: a central processing unit (CPU), a memory unit, and an input/output (I/O) unit. The CPU executes all the instructions and performs arithmetic and logic operations on data. The CPU of the microcomputer is called the microprocessor typically a single VLSI (very large scale integration) chip that contains all the registers and control unit, and arithmetic-logic circuits of the microcomputer. A memory unit stores both data and instructions. The memory section typically contains ROM and RAM chips. The ROM can only be read and is nonvolatile; that is, it retains its contents when the power is turned off. A ROM is typically used to store instructions and data that do not change. For example, it might store a table of seven- segment codes for outputting data to a display external to the microcomputer for turning on a digit from 0 through 9. One can read from and write into a RAM. The RAM is volatile; that is, it does not retain its contents when the power is turned off. A RAM is used to store programs and data that are temporary and might change during the course of executing a program. An I/O unit transfers data between the microcomputer and the external devices via I/O ports (registers). The transfer involves data, status, and control signals. In a single-chip microcomputer, these three elements are on one chip, whereas in a single-chip microprocessor, separate chips are required for memory and I/O.
  • Book cover image for: Guide to Operating Systems
    All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part. Due to electronic rights, some third party content may be suppressed from the eBook and/or eChapter(s). Editorial review has deemed that any suppressed content does not materially affect the overall learning experience. Cengage Learning reserves the right to remove additional content at any time if subsequent rights restrictions require it. CPUs can be classified by several hardware elements, the most important of which are the following: • Architecture • Clock speed • Cache • Address bus • Data bus • Control bus • CPU scheduling Each of these elements is considered in the following sections. Architecture Two general CPU architectures are used in today’s computers: Complex Instruction Set Computing (CISC) and Reduced Instruction Set Computing (RISC). The main difference between the two is the number of different machine code instructions the chip supports and the complexity of the instructions. A program consists of machine code instructions and data. When a program is loaded into memory on the computer and scheduled to run, the CPU reads each instruction and executes the task specified by that instruction. An instruction is usually a very simple operation, such as load a byte of data into a register. The CPU can process as many as several billion instructions per second, depending on the CPU architecture and the clock speed. One of the design factors is the instruction set supported by the CPU. The instruction set is the list of machine code commands that the CPU supports. CISC and RISC CPUs differ in the following ways: • Complex versus simple instructions—CISC CPUs are generally more complex, meaning each instruction does more work than a single RISC instruction. Some instructions carried out by CISC CPUs may require several RISC instructions to perform the same task.
  • Book cover image for: Principles of Secure Processor Architecture Design
    • Jakub Szefer(Author)
    • 2022(Publication Date)
    • Springer
      (Publisher)
    Anything can be attacked and 100% security does not exist. But, if the difficulty is high enough, most attacks will fail. Secure Processor Architecture design is about developing systems that can protect code and data executing on a commodity-style processor while protecting from most practical attacks. The art 124 10. PRINCIPLES OF SECURE Processor Architecture DESIGN of secure Processor Architecture is about how to pick the threat models and what protections to offer, while the science is about what algorithms and hardware (and software) modules to use to implement these protections efficiently without sacrificing too much performance, power, or area of the processor. It is hoped that through learning about the secure Processor Architectures and the principles for designing them, the readers have gained some insights into the art and science of secure processor design. 125 Bibliography [1] Onur Acıiçmez and Çetin Kaya Koç. Trace-driven Cache Attacks on AES (short pa- per). In Information and Communications Security, pages 112–121. Springer, 2006. DOI: 10.1007/11935308_9 10, 91 [2] Onur Aciiçmez, Çetin Kaya Koç, and Jean-Pierre Seifert. On the Power of Simple Branch Prediction Analysis. In Proceedings of the Symposium on Information, Computer and Com- munications Security, pages 312–320. ACM, 2007. 101 [3] Onur Acıiçmez, Werner Schindler, and Çetin K Koç. Cache Based Remote Timing Attack on the AES. In Topics in Cryptology, pages 271–286. Springer, 2006. DOI: 10.1007/11967668_18 91 [4] Onur Acıiçmez, Werner Schindler, and Çetin K Koç. Cache Based Remote Timing Attack on the AES. In Cryptographers’ Track at the RSA Conference, pages 271–286. Springer, 2007. DOI: 10.1007/11967668_18 10 [5] Keith Adams and Ole Agesen. A Comparison of Software and Hardware Techniques for x86 Virtualization. ACM SIGOPS Operating Systems Review, 40(5):2–13, 2006. DOI: 10.1145/1168918.1168860 31, 70 [6] Dakshi Agrawal, Bruce Archambeault, Josyula R.
Index pages curate the most relevant extracts from our library of academic textbooks. They’ve been created using an in-house natural language model (NLM), each adding context and meaning to key research topics.