Computer Architecture Basics

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

The "central unit" is comprised of only the central processing unit.

False (B)

Data is always encoded using the ASCII standard for storage.

False (B)

The central memory houses programs and data, while the CPU executes these programs.

True (A)

Input/output units facilitate communication between the computer and external devices, such as printers and keyboards.

<p>True (A)</p> Signup and view all the answers

A cache memory, placed between the CPU and the main memory, works to enhance data retrieval speed.

<p>True (A)</p> Signup and view all the answers

The execution of a program involves a linear sequence of instructions, where each instruction is fetched and processed independently.

<p>False (B)</p> Signup and view all the answers

The control unit, upon analyzing instructions, sends signals to the arithmetic and logic unit, initiating the necessary processing.

<p>True (A)</p> Signup and view all the answers

The term "stored-program machine" refers to the fact that the execution of a program requires the program to be loaded in the main memory, which can be either random access memory (RAM) or read-only memory (ROM).

<p>False (B)</p> Signup and view all the answers

Read-Only Memory (ROM) can be written to under certain conditions.

<p>True (A)</p> Signup and view all the answers

SRAM is considered faster and consumes less power compared to DRAM.

<p>True (A)</p> Signup and view all the answers

The main memory in modern computers primarily uses SRAM due to its higher integration density and lower cost per bit.

<p>False (B)</p> Signup and view all the answers

SDRAM (Synchronous DRAM) is a type of DRAM that operates asynchronously.

<p>False (B)</p> Signup and view all the answers

VRAM was commonly used in graphics cards but has been replaced by SDRAM due to SDRAM's advancements in speed.

<p>True (A)</p> Signup and view all the answers

MRAM utilizes magnetization to store data, making it different from traditional RAM types that store data using electrical charges.

<p>True (A)</p> Signup and view all the answers

RAM (Random Access Memory) allows access to any memory location in a fixed amount of time, regardless of the location's position.

<p>True (A)</p> Signup and view all the answers

The term "live memory" refers to ROM (Read-Only Memory) because its content is not erased when the power is switched off.

<p>False (B)</p> Signup and view all the answers

Peripheral units are only used for storing data temporarily.

<p>False (B)</p> Signup and view all the answers

Mass storage devices are also referred to as auxiliary memories.

<p>True (A)</p> Signup and view all the answers

A bus system in a computer only carries control signals.

<p>False (B)</p> Signup and view all the answers

The data bus in a microcomputer can have varying line counts depending on the architecture, including 8, 16, 32, 64, or 128 lines.

<p>True (A)</p> Signup and view all the answers

The number of registers in a CPU has no significant impact on programming.

<p>False (B)</p> Signup and view all the answers

Input/output devices utilize buffer registers for communication with the computer.

<p>True (A)</p> Signup and view all the answers

Central memory retains data permanently even when the machine is turned off.

<p>False (B)</p> Signup and view all the answers

Peripheral units only consist of input devices like keyboards and mice.

<p>False (B)</p> Signup and view all the answers

Access time for reading or writing a memory word varies between a few nanoseconds and a few thousand nanoseconds.

<p>False (B)</p> Signup and view all the answers

The Central Processing Unit (CPU) consists of only the Control Unit.

<p>False (B)</p> Signup and view all the answers

The Instruction Register (IR) stores the address of the next instruction to be executed.

<p>False (B)</p> Signup and view all the answers

In Random Access Memory (RAM), the access time is identical for every memory cell.

<p>True (A)</p> Signup and view all the answers

The program counter is incremented by 1 for every instruction executed, regardless of the instruction's size.

<p>False (B)</p> Signup and view all the answers

Writing to a memory cell does not overwrite the previous content of that cell.

<p>False (B)</p> Signup and view all the answers

The Control Unit manages the execution of program instructions and has registers that are directly accessible to programmers.

<p>False (B)</p> Signup and view all the answers

An operation code field and up to three operand fields are contained within an instruction.

<p>True (A)</p> Signup and view all the answers

Some processors can utilize multiple __________ to perform operations.

<p>True (A)</p> Signup and view all the answers

General purpose registers are primarily used to store data that is rarely accessed during program execution.

<p>False (B)</p> Signup and view all the answers

Index registers can be utilized for tasks such as manipulating arrays of data.

<p>True (A)</p> Signup and view all the answers

The effective address in indexed addressing is found by multiplying the contents of the address field by the index register value.

<p>False (B)</p> Signup and view all the answers

Base registers are not useful for addressing memory spaces that exceed the capacity of the instruction-type address field.

<p>False (B)</p> Signup and view all the answers

Common operations involving general purpose registers include loading, storing, and transferring data.

<p>True (A)</p> Signup and view all the answers

Index registers are automatically incremented only when specified by the program instructions.

<p>False (B)</p> Signup and view all the answers

Accumulators are specific registers used to perform arithmetic and logic operations.

<p>True (A)</p> Signup and view all the answers

The ALU performs operations only on single operands.

<p>False (B)</p> Signup and view all the answers

Floating point and double precision operations were originally restricted to scientific computers.

<p>True (A)</p> Signup and view all the answers

The ALU is responsible for all data processing within the CPU.

<p>True (A)</p> Signup and view all the answers

The ALU can perform operations like addition, subtraction, multiplication, and division, but not logical operations like AND, OR, or XOR.

<p>False (B)</p> Signup and view all the answers

The operands used in ALU operations are stored in registers that are not accessible to programmers.

<p>False (B)</p> Signup and view all the answers

Single operand operations include resetting to zero, logical complement, and shifting, but not incrementing.

<p>False (B)</p> Signup and view all the answers

The ALU's capabilities have not changed significantly from its historical role.

<p>False (B)</p> Signup and view all the answers

The ALU was historically positioned on an external circuit known as a coprocessor, but has since been integrated into modern processors.

<p>True (A)</p> Signup and view all the answers

Flashcards

Central Memory

The main memory of a computer that stores both programs and data.

Central Processing Unit (CPU)

The primary component responsible for executing instructions from the central memory.

Input/Output Units

Units that allow the computer to communicate with external devices.

Stored-Program Machine

A computer system where instructions are stored in the main memory and executed sequentially.

Signup and view all the flashcards

Central Unit

The combination of the CPU and central memory.

Signup and view all the flashcards

Cache Memory

A type of memory that provides fast access to frequently used data, located between the CPU and main memory.

Signup and view all the flashcards

Encoding Scheme

A way of representing information as numbers, using a specific standard like ASCII.

Signup and view all the flashcards

ASCII (American Standard Code for Information Interchange)

A standard code used to represent characters as numbers in computers.

Signup and view all the flashcards

Reading from Memory

The process of retrieving data stored in a memory cell.

Signup and view all the flashcards

Writing to Memory

The process of writing new data to a memory cell, overwriting any existing data.

Signup and view all the flashcards

Access Time

The time it takes for the computer to read or write data from memory.

Signup and view all the flashcards

Random Access Memory (RAM)

Memory where any memory cell can be accessed in the same amount of time.

Signup and view all the flashcards

Program Counter (PC)

The CPU register that holds the address of the next instruction to be executed.

Signup and view all the flashcards

Instruction Register (IR)

Contains the current instruction being executed, broken down into parts like the operation to perform and the data involved.

Signup and view all the flashcards

Instruction Decoder

The part of the CPU that decodes instructions and activates the necessary circuits for execution.

Signup and view all the flashcards

Command Sequencer

A part of the CPU's control unit that coordinates the sequence of operations for executing instructions.

Signup and view all the flashcards

Arithmetic and Logic Unit (ALU)

The part of the CPU responsible for performing arithmetic and logical operations on data.

Signup and view all the flashcards

Single Operand Operations

Operations that involve only a single register and a single operand, like resetting to zero, complementing, shifting, or incrementing.

Signup and view all the flashcards

Two Operand Operations

Operations that use two operands to perform calculations like addition, subtraction, and logical comparisons.

Signup and view all the flashcards

Accumulator Extension

An extension of the accumulator register, used for specific operations within the ALU.

Signup and view all the flashcards

Floating Point and Double Precision Operations

Specialized operations that involve decimals and require higher precision, often used for scientific computing.

Signup and view all the flashcards

Floating Point Unit (FPU)

A specialized ALU dedicated to performing floating point and double precision operations, historically a separate component but now integrated into modern processors.

Signup and view all the flashcards

Peripheral Units

Devices that allow the computer to interact with the outside world. Examples include keyboards, screens, printers and modems.

Signup and view all the flashcards

Auxiliary Memory

Auxiliary memories store large amounts of information permanently, such as disks, tapes, magnetic cartridges and SSDs.

Signup and view all the flashcards

Bus

A set of lines that connect devices and allow them to communicate with each other. It carries addresses, data, and control signals.

Signup and view all the flashcards

CPU Registers

Components within the CPU that store specific data or instructions needed for operations.

Signup and view all the flashcards

Device Controller

A special circuit that manages the communication between a peripheral unit and the computer.

Signup and view all the flashcards

Data Bus

Allows two-way information transfer between the CPU and other components.

Signup and view all the flashcards

Address Bus

Carries addresses for different parts of the memory and peripheral units.

Signup and view all the flashcards

General Purpose Registers

Registers that are available to the programmer, used to store data frequently used during program execution or intermediate results.

Signup and view all the flashcards

Common operations for General Purpose Registers

Operations like loading, storing, data transfers, and incrementing/decrementing register values.

Signup and view all the flashcards

Index Registers (XR)

Registers used for both general purposes and specialized functions, like manipulating address locations within arrays.

Signup and view all the flashcards

Indexed Addressing

A method of calculating an address by adding the value in an index register to the address provided in the instruction.

Signup and view all the flashcards

Base Registers

Registers used similarly to index registers, but holding a reference address, which is added to the instruction's address to create the effective address.

Signup and view all the flashcards

Effective Address

The actual memory address obtained by combining the address part of an instruction with the contents of a register.

Signup and view all the flashcards

Base Addressing

A technique where the base register holds a starting memory address, and a relative offset from that address is calculated to access data.

Signup and view all the flashcards

Dynamic Relocation with Base Registers

Dynamic relocation allows programs to be loaded anywhere in memory, as the base register adjusts the addresses, addressing regions that exceed the instruction's address field limit.

Signup and view all the flashcards

Read-Write Memory (RWM)

Memory that allows both reading and writing data. It is frequently referred to as "volatile" memory.

Signup and view all the flashcards

Read-Only Memory (ROM)

Memory that only allows reading data, with writing either impossible or restricted to specific conditions.

Signup and view all the flashcards

Dynamic RAM (DRAM)

A type of RAM that uses transistors and capacitors to store data, requiring periodic refresh to prevent data loss.

Signup and view all the flashcards

Dynamic RAM (DRAM)

A type of RAM that uses transistors and capacitors to store data, requiring periodic refresh to prevent data loss.

Signup and view all the flashcards

Dynamic RAM (DRAM)

A type of RAM that uses transistors and capacitors to store data, requiring periodic refresh to prevent data loss.

Signup and view all the flashcards

Video RAM (VRAM)

A special type of DRAM previously used in graphics cards, with two ports for simultaneous writing and reading.

Signup and view all the flashcards

Magnetic RAM (MRAM)

A type of RAM that utilizes magnetization to store data, providing faster read/write speeds and greater stability.

Signup and view all the flashcards

Study Notes

Computer's Main Components

  • A computer is composed of central memory, a central processing unit (CPU), and input/output units.
  • Central memory stores programs and data.
  • The CPU executes programs loaded into central memory.
  • Input/output units allow information exchange with peripheral devices.
  • The central unit combines the CPU and central memory.

The Overall Diagram of an Architecture

  • The computer's architecture consists of a central processing unit, central memory, and input/output units.
  • The CPU is responsible for executing programs.
  • Central memory stores programs and data.
  • Input/output units facilitate data exchange between the computer and peripheral devices.
  • Instructions in programs are sequentially processed by the control unit of the CPU.

The General Diagram of a Computer

  • The CPU (Central Processing Unit) includes the control unit and arithmetic logic unit (ALU).
  • The Control Unit decodes instructions and coordinates their execution.
  • The ALU performs arithmetic and logical operations.
  • Cache memory is a fast intermediary between main memory and the CPU.
  • Input/output units manage communication with peripheral devices.
  • Peripheral units include devices like printers, keyboards, mice, etc., along with storage devices.

The Execution of a Program

  • Programs and data are loaded into main memory for execution.
  • Instructions are sequentially fetched by the control unit.
  • The control unit analyzes instructions and directs the ALU.
  • Input/output operations may be part of the program's execution process.
  • Cache memory speeds up data access.

Central Memory

  • Central memory holds both instructions and data from programs and the operating system.
  • Instructions are stored as machine code (e.g., an addition instruction in an Intel processor as 10000001).
  • Data is stored using coding schemes like ASCII (e.g., 'F' encoded as 1011001).
  • Characters are increasingly stored in 8-bit format for increased character capabilities.
  • Memory capacity is typically measured in bytes (e.g., 2 GB = 2 × 230 bytes ≈ 2 billion bytes).

Memory Cells

  • Each memory cell has a unique address and a content (instruction or data).
  • Memory capacity is the number of cells.
  • Memory is measured in bytes.
  • Processors often handle multiple bytes at a time (memory word) for efficiency.
  • Read and write operations usually take place on entire memory words.

Data and Memory Registers

  • Modern processors manipulate data beyond a single byte (32/64 bits).
  • A memory register is a memory cell with a specific function.
  • Address registers hold memory addresses.
  • Word registers hold memory contents (multiple successive bytes).
  • Word size matches a memory word's size.
  • Address registers have capacity to address all memory.

Address Registers and Memory Capacity

  • Address registers must have sufficient bits (e.g. 10 bits for 1024 cells).
  • 32-bit address registers can address 232 different bytes (4 GB).
  • Before 2008, most computers had 32-bit memory limitations (4 GB).
  • 64-bit architectures theoretically support significantly larger memory capacities (264 bytes).

Operations in Central Memory

  • Reading from memory copies memory cell contents to registers.
  • Writing to memory overwrites the content of a specific memory cell or cells.

Access Time and RAM

  • Access time is the time taken for reading or writing a memory word.
  • It varies, but typical values are a few nanoseconds to a few hundred nanoseconds.
  • Random Access Memory (RAM) has equal access time to any cell.

Central Processing Unit (CPU)

  • The CPU comprises the control unit and the arithmetic logic unit (ALU).
  • The control unit manages instruction execution.
  • The ALU performs mathematical and logical operations.

Control Unit

  • The control unit manages instruction execution.
  • The instruction register (IR) holds current instructions.
  • Fields exist with operation codes and operands.
  • The Program Counter (PC) holds the address of the next instruction.

Program Counter and Instruction Execution

  • Instructions are usually executed sequentially.
  • The program counter (PC) is incremented after each instruction's execution.
  • Instructions longer than one byte need appropriate PC increment.
  • Manual PC modifications might be required for branching or similar operations.

Control Unit Components

  • The control unit incorporates components like an instruction decoder and command sequencer.
  • The instruction decoder interprets instructions, selecting the relevant circuits (instructions decoded and sent either to the decoder or to microprogram memory to execute the specific operation).
  • The command sequencer activates the relevant circuits according to the current instructions' operation (activated by control signals based on the instruction to be executed, often using a clock signal from an external source).

Arithmetic and Logic Unit (ALU)

  • The ALU encompasses all electronic circuits for the desired operations (mathematical and logical operations).
  • Operations include addition, subtraction, multiplication, division, bitwise negation (bit inversion), and Boolean logic.
  • Operands for operations are stored in ALU registers.

The General Diagram of the Operation of the CPU

  • A diagram illustrating the components and general operation of the CPU.

Arithmetic and Logic Unit (ALU)

  • Modern ALUs handle a wide variety of operations.

Single Operand Operations

  • Single register, single operand operations (e.g., resetting, complement, shifting, incrementing).

Two Operand Operations

  • Operations with two operands (e.g., addition, subtraction, logical operations).

Accumulator Extension

  • Some operations utilize accumulators to support double-precision or expanded accumulator capability.

Floating Point and Double Precision Operations

  • Historically, floating-point operations were specific to scientific computers.
  • Modern processors integrate floating-point calculations within their ALU.

Processing in the ALU

  • Data processing entirely occurs inside the ALU.
  • The ALU’s circuits perform essential operations which form the basis for algorithms.
  • The control unit directs the entire ALU operation.

Registers of the ALU

  • Arithmetic, general-purpose, base, or index registers used for specific operations.

ALU Registers

  • Status register (PSW or program status word) holds information about the system's state (e.g. overflow, carry status).

Access Time and Memory Performance

  • Register access time is significantly faster than main memory access time.

Input/Output Units

  • Input/output units facilitate data exchange between the CPU and peripheral devices.
  • The most common components are buses, Direct Memory Access, and channels.
  • Transfer speeds decrease away from the CPU.
  • I/O operations demand faster specialized processors; dedicated processors manage I/O more efficiently.

Peripheral Units

  • Peripheral devices provide data exchange with the outside world.
  • Auxiliary memory (storage) allows for substantial data storage (magnetic disks, tapes, cartridges).
  • Peripheral devices require dedicated controllers for management and interaction.

Mass Storage and Controllers

  • Auxiliary memories (mass storage) provide permanent (non-volatile) storage compared to RAM, which is volatile storage.
  • Controllers are required for management and communication of each peripheral device category.

Buses

  • Buses establish connections between devices.
  • Address, data, and control signals travel via these lines; they are shared resources used for communication during exchange.
  • I/O devices have buffer registers combined with interface circuits for computer communication.
  • Buses contain components like data, address, and control bus.

Microcomputer Architecture

  • The data bus facilitates two-way information transfer.
  • Data bus line quantity corresponds to the microprocessor’s bit width.

CPU Registers

  • CPU register numbers and types influence programming and are integral to the computer architecture.
  • Basic functionalities are generally similar across different CPU manufacturers.
  • Description of important registers, function, program modification, and access will be presented.

Instruction Register (IR)

  • When fetching instructions, the IR holds the fetched instruction.
  • Instruction size corresponds to the instruction register’s size.
  • Programmers lack direct access to the instruction register.

Program Counter (PC)

  • The PC always holds the next address for instruction execution.
  • The PC automatically increments after each instruction's use.
  • Program alterations affect sequential instructions via jump type instructions.
  • Modifying the PC with new addresses is required for jumps and branching.

Program Counter (PC)

  • The PC change happens during instruction decoding.
  • The PC changes based on the size of the memory addresses.
  • Access to the PC is restricted.

Accumulator (ACC)

  • The Accumulator is prominent in single-address machines and the ALU.
  • It handles operands in most operations.
  • Useful as a buffer in I/O operations.
  • Typically sized the same as the ALU, but it can have an extension.

Accumulator (ACC)

  • It acts as a store for multiplication and division results and holds most/least significant bits in double-precision operations.
  • It has easy access to programmers for data processing; some processors have multiple accumulators; operations specify which one to use.

General Purpose Registers

  • General-purpose registers, sometimes called scratchpad registers, are helpful for storing frequently accessed data.
  • Using scratchpad registers avoids constant memory accesses (improving execution speed).
  • Programmers have access to these registers to manipulate them via instructions.

General Purpose Registers

  • Loading data from memory or other registers, storing register contents in memory, transferring data to the accumulator, and incrementing/decrementing operations are typical.

Index Registers (XR)

  • Index registers resemble general-purpose registers.
  • They support data manipulation (arrays).
  • Index registers support indexed addressing schemes (addresses modified using specific indices).

Base Registers

  • Base registers mirror index registers for effective address calculations (especially with base addressing).
  • Useful for dynamic relocation.
  • Base registers extend address handling beyond the standard instruction field’s capacity.

Program Status Word (PSW)

  • The PSW (Program Status Word), also called the state register, displays the CPU’s current state reflected in registers.
  • Bits (flags) in the PSW show the specific conditions.

Program Status Word

  • The zero flag (ZF) indicates if the result is zero.
  • The carry flag (CF) indicates a carry in an arithmetic operation.
  • Flags aid the CPU, signaling interrupt conditions or operational states (interrupt indicators or levels).
  • Flags assist in controlling program execution by indicating conditions (e.g., zero result, carry).

Stack Pointer (SP)

  • The SP (Stack Pointer) simulates a stack in main memory, reserving a segment for the stack.
  • Functions like a memory address register dedicated to stack operations (specifically RAM's stack portion).
  • Pushing/popping bytes updates the SP (stack pointer); operations reference last pushed byte (Last-In-First-Out approach); addresses are recorded, then read in reverse.

Stack Operation (LIFO)

  • Data storage follows LIFO (Last-In-First-Out) in the stack.
  • Reading data follows the reverse order of storage in the stack.

Specialized registers

  • Simulating multiple LIFO stacks requires multiple Stack Pointers (SPs).
  • Special-purpose registers exist for specific operations - e.g., shift registers for bit manipulation, registers for decimal arithmetic.

Memory

  • A memory device records, stores, and retrieves information.
  • Memory is organized in hierarchical levels (e.g. CPU registers, cache, primary mass, auxiliary memory).
  • These hierarchical levels vary dramatically based on access time and size.

Human Memory vs Computer Memory

  • Human memory exceeds computer capabilities in activation and retrieval mechanisms, though computers can surpass human capacity in storage.
  • Human brains utilize processing and storage in parallel, which gives the brain a distinct advantage in certain types of tasks.

Parallel Processing vs Sequential Processing

  • The brain processes data simultaneously, while computers primarily process sequentially.
  • This explains differences in performance between brain and computer processing capabilities.
  • In computers, memory is passive, while in the brain, it is actively involved in processing.

Memory Hierarchy

  • A diagram illustrating the levels of memory hierarchy based on speed and capacity (e.g. CPU registers -> cache memory -> main memory-> primary storage -> secondary storage -> mass storage).

Memory Hierarchy in a Computer

  • Memory hierarchy is based on three criteria: access time, capacity, and cost per bit.
  • Access time decreases with proximity to the CPU, but cost per bit increases, and storage capacity increases.

CPU Registers

  • High-speed registers are within the CPU with ultra-fast access times, used for calculations/intermediate results.

Cache Memory

  • Cache memory acts as a buffer between the CPU and main memory.
  • It reduces memory access time.

Main Memory (Central Memory)

  • Main memory serves as the primary workspace for the CPU.
  • Programs must be loaded here to execute properly.

Mass Storage

  • Primary mass storage includes hard drives and solid-state drives (SSDs); it provides long-term data storage.
  • Secondary mass storage (auxiliary memory) uses slower but substantial capacity devices (e.g., magnetic disks, tapes, magneto-optical discs).

Permanent Storage Systems

  • Various permanent storage options exist; online storage (SSD/Hard disks) provides fast access.
  • Network storage (SAN/NAS) enables remote or local access via a network (e.g., accessing data from your home computer to a server).
  • Cloud storage employs remote servers accessible through the internet to store data.

Near-Line and Offline Storage

  • Near-line storage (based on devices like magnetic tape or optical libraries) offers slow but large-scale storage. - Offline storage stores data on shelves without automated access.

Characteristics of Memory

  • Address: Unique identifier for memory location.
  • Capacity: Total amount of data stored.
  • Access time: Time to retrieve data.
  • Memory cycle: Time between successive access operations.

Characteristics of Memory

  • Data transfer rate: Number of data units handled per second.
  • Volatility: Persistence of data in memory (volatile - data lost without power, non-volatile - retains data).

Different Types of Memory Access

  • Sequential access: Data accessed by traversing sequentially (e.g., tapes).
  • Direct access: Data access happens instantly using its address (e.g. memory cells in RAM).
  • Semi-sequential access: Combination of both sequential and direct access approaches.

Main Memory

  • Main memory contains programs and data (necessary components for operating system functions).

Technological Evolution of Main Memory

  • Main memory evolution included various technologies (delay lines, vacuum tubes, magnetic drums).
  • Semiconductor memories later replaced these earlier technologies.
  • Technologies have improved efficiency and speed of operations.

Semiconductor Memories

  • Semiconductor memories have become fundamental for modern main memory systems (especially since the 1970s).
  • Technological advancements in integrated circuits led to better capacity and speed with reduced costs.
  • RAM offers random/direct access to memory cells.

Read-Write and Read-Only Memory

  • Read-write memory allows both reading and writing operations (volatile, current data).
  • Read-only memory permits only read operations—data is written during manufacturing and remains unchanged.

Characteristics of Major Types of Semiconductor Memory

  • Random-access memory (RAM) examples include static/dynamic RAM, and other variations; access times differ based on specific technology used.
  • Data transfer rates and characteristics are given for each major RAM type.

Characteristics of Major Types of Semiconductor Memory

  • VRAM: Video RAM, used in graphics cards due to two ports for concurrent writing/reading.
  • MRAM: Magnetic RAM; using magnetization, data is non-volatile, hence it's retained even when power is off.

Characteristics of Major Types of Semiconductor Memory

  • Access time is measured in nanoseconds; SDRAM access time is described by bus frequency (MHz).

ROM Memory

  • ROM (read-only memory) stores data permanently; the data can only be read and not written to after production. (non-volatile memory).

ROM Memory

  • ROM production is often costly; it's manufactured using MOS or bipolar technologies; ROM is often used for code conversion, character generation, and system programs.

PROM and EPROM

  • Programmable ROMs (PROMs) can be programmed once by the user, beneficial especially during prototype construction.
  • Erasable programmable ROMs (EPROMs) can be reprogrammed repetitively.
  • EPROM utilizes ultraviolet light for erasure; this process often takes up to 30 minutes.

EEPROM

  • EEPROM (electrically erasable programmable ROM) allows for electrical erasure; this offers more flexibility compared to EPROM.

Flash Memory

  • Flash memory combines EEPROM advantages with permanent storage capabilities.
  • Uses floating-gate transistors; this data storage ability is gigabytes in size.
  • This design improves data transfer rates, reliability, and shock resistance.

Evolution of ROM Memory

  • ROM's evolution transitioned from purely read-only functionalities to reprogrammable varieties with erasure capabilities.
  • Flash memory combines ROM's advantages and supports more robust and flexible memory capabilities.

Cache Memory

  • Cache memory addresses the speed disparity between the CPU and main memory by creating fast intermediate storage.
  • This memory is not part of the main memory and includes essential information (instructions, data).
  • Cache memory employs associative addressing; each entry has a key and its associated data stored in memory.

Searching in Cache Memory

  • To find data in cache memory, a key search comparing with each cache entry is performed concurrently to determine if the sought instruction or data is present in the cache.
  • This parallel comparison leads to faster access times to the memory for instructions.

Multi-Level Cache

  • Modern computers often use multiple cache levels.
  • Often, a few megabytes of cache memory are used, divided to specialize in handling instructions or data.
  • Cache prioritizes frequently used program instructions and data to maximize execution speed.

Multi-Level Cache

  • Two key ideas underpin cache efficiency, spatial locality—the next piece of information is near the previously processed one (important idea for programming efficiency)—and temporal locality—the tendency to reuse recently processed information (e.g., loops).

Mass Storage

  • Diagram illustrates a comparison between the addressing of main memory and cache memory.
  • Main memory utilizes address-based access.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

Use Quizgecko on...
Browser
Browser