ScholarQuill logoScholarQuillUniversity Notes
My Semester
Explore Notes
Past Papers12 New
Video CoursesNew
Search
Settings
Study Tools
GPA/CGPA Calculator
Schedule & To-Do
Student Portal
Contact
Contact
ScholarQuill logo
My Semester
Explore Notes
Past Papers12 New
Video CoursesNew
Search
Settings
GPA/CGPA Calculator
Schedule & To-Do
Student Portal
Contact
ScholarQuill logoScholarQuillUniversity Notes
Study PortalCOMP2118Processor Architecture
Ctrl + K
Login
Explore
Search
Semester
Papers
CGPA
    COMP2118

    Computer Organization and Assembly Language

    Progress0 / 35 done
    Topics35
    1Introduction to Computer Systems2Information is Bits + Context3Programs are Translated by Other Programs4Understanding Compilation Systems5Processors Read and Interpret Instructions6Caches Matter7Storage Devices Form a Hierarchy8The Operating System Manages the Hardware9Systems Communicate Using Networks10Representing and Manipulating Information11Information Storage12Integer Representations13Integer Arithmetic14Floating Point15Machine-Level Representation of Programs16A Historical Perspective17Program Encodings18Data Formats19Accessing Information20Arithmetic and Logical Operations21Control22Procedures23Array Allocation and Access24Heterogeneous Data Structures25Understanding Pointers26Using the GDB Debugger27Out-of-Bounds Memory References and Buffer Overflow
    28Extending IA-32 to 64 Bits29Machine-Level Representations of Floating-Point Programs30Processor Architecture31The Y86 Instruction Set Architecture32Logic Design and the Hardware Control Language (HCL)33Sequential Y86 Implementations34General Principles of Pipelining35Pipelined Y86 Implementations
    6 min read
    Topic 30 of 35
    Topic Study Note Illustration
    30

    Processor Architecture

    Processor architecture refers to the design and structure of a computer's central processing unit (CPU), which determines how it executes instructions, handles data, and interacts with other...

    Processor Architecture

    Processor architecture refers to the design and structure of a computer's central processing unit (CPU), which determines how it executes instructions, handles data, and interacts with other components of the system. Understanding processor architecture involves looking at its components, instruction sets, data paths, and how the CPU processes and manipulates data.


    1. Key Components of Processor Architecture

    a. Control Unit (CU)

    The control unit directs the operation of the processor. It interprets instructions from the program and tells the other components of the CPU how to respond.

    • Instruction Fetch: Retrieves instructions from memory.
    • Instruction Decode: Decodes the instruction to understand the operation.
    • Execution: Sends the instruction to the appropriate hardware (ALU, registers, etc.) for execution.

    b. Arithmetic Logic Unit (ALU)

    The ALU is responsible for carrying out arithmetic and logical operations such as addition, subtraction, AND, OR, and comparisons.

    • Arithmetic Operations: Addition, subtraction, multiplication, division (basic operations).
    • Logical Operations: AND, OR, NOT, XOR, etc.

    c. Registers

    Registers are small, fast storage locations within the CPU used to hold data temporarily.

    • General-purpose registers: Used for intermediate calculations and data storage.
    • Special-purpose registers: Includes the program counter (PC), stack pointer (SP), and status registers (flags).

    d. Cache

    Cache is a small, high-speed memory located close to the CPU. It stores frequently accessed data to reduce the time it takes to fetch instructions and data from main memory (RAM).


    2. Types of Processor Architectures

    a. Von Neumann Architecture

    • Single Shared Memory: Instructions and data share the same memory space.
    • Sequential Execution: Instructions are fetched, decoded, and executed one after another.
    • Disadvantage: The "Von Neumann bottleneck" occurs because the CPU can only access memory for either data or instructions at a time, not both.

    b. Harvard Architecture

    • Separate Memory for Data and Instructions: This allows simultaneous access to both data and instructions, improving performance.
    • Used in Specialized Processors: Common in embedded systems and digital signal processors (DSPs).

    c. RISC (Reduced Instruction Set Computing)

    • Simplified Instruction Set: RISC processors use a smaller number of instructions, typically with a fixed length and regular format.
    • Fast Execution: Each instruction is executed in one cycle (for the most part), leading to efficient pipelines.
    • Example: ARM processors.

    d. CISC (Complex Instruction Set Computing)

    • Complex Instructions: CISC processors have a large and complex set of instructions, some of which can execute multiple operations in one instruction cycle.
    • More Efficient for High-Level Code: CISC can be more efficient for certain types of software, as complex instructions reduce the number of instructions per program.
    • Example: x86 architecture (used in most personal computers).

    3. Instruction Set Architecture (ISA)

    The Instruction Set Architecture defines the set of instructions the processor can execute, including:

    • Arithmetic Operations: Add, subtract, multiply, divide.
    • Logical Operations: AND, OR, XOR, NOT.
    • Control Flow: Branching, loops, conditional statements.
    • Memory Operations: Load, store, move data between registers and memory.

    There are two main types of ISAs:

    • RISC (Reduced Instruction Set Computing): A simpler, more streamlined set of instructions.
    • CISC (Complex Instruction Set Computing): A more feature-rich set of instructions with greater complexity.

    4. Pipelining

    Pipelining is a technique used to improve the throughput of a processor by overlapping the execution of multiple instructions. The processor is divided into several stages, such as:

    • Fetch Stage: Retrieve the instruction from memory.
    • Decode Stage: Decode the instruction.
    • Execute Stage: Perform the operation (ALU).
    • Memory Access Stage: Access memory (if needed).
    • Write-back Stage: Write the result back to a register.

    This allows the processor to work on several instructions simultaneously, improving its efficiency.


    5. Multi-core and Parallelism

    Modern processors often contain multiple cores, which are individual processing units that can execute instructions simultaneously. Multi-core processors allow for parallelism, where multiple tasks can be processed concurrently, improving overall performance.

    • Symmetric Multiprocessing (SMP): Multiple processors share a common memory and are connected to the same bus.
    • Asymmetric Multiprocessing (AMP): One processor is the master, and the others are slaves, each handling specific tasks.

    6. Data Path and Control Path

    • Data Path: This refers to the path that data takes inside the CPU, from the registers to the ALU and then to memory. It involves operations like fetching data, performing computations, and writing results.
    • Control Path: This refers to the signals that control the movement of data in the CPU, including the control unit’s decisions and signals to the data path components (ALU, registers, etc.).

    7. Summary Table: Processor Architecture

    Concept Explanation
    Control Unit (CU) Directs CPU operations by fetching, decoding, and executing instructions.
    Arithmetic Logic Unit (ALU) Executes arithmetic and logical operations like addition, subtraction, and logical comparisons.
    Registers Small, fast storage within the CPU to hold data temporarily during execution.
    Cache High-speed memory to reduce data access time, improving processor performance.
    Von Neumann Architecture Shared memory for instructions and data; sequential execution leads to potential bottlenecks.
    Harvard Architecture Separate memory for instructions and data, enabling simultaneous access.
    RISC Simple instruction set with fast execution, common in embedded systems.
    CISC Complex instruction set, offering more powerful operations, common in desktop processors (e.g., x86).
    Instruction Set Architecture (ISA) Defines the instructions the processor can execute; RISC and CISC are two types of ISA.
    Pipelining Technique to overlap the execution of multiple instructions, increasing throughput and efficiency.
    Multi-core Processors Processors with multiple cores for parallel execution, improving performance and multitasking capability.
    Data Path and Control Path The data path carries the data during execution; the control path manages the signals that guide the data.

    Processor architecture is fundamental for understanding how a CPU works, performs calculations, and processes instructions in a computer system.

    ← Previous topic 29
    Machine-Level Representations of Floating-Point Programs
    Next topic 31 →
    The Y86 Instruction Set Architecture

    Past Papers

    Open this section to view and download past papers

    Click on Show Past Papers to load available exam papers.

    Reading Progress
    0%
    6mremaining
    948words
    Intermediatelevel
    On This Page

    No headings found

    Study Toolkit

    Subject Portal

    Computer Organization and Assembly Language