Computer Architecture I/O Module Quiz
30 Questions
0 Views

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

What is the primary disadvantage of programmed I/O?

It wastes CPU time since the CPU waits for the I/O module to complete the operation.

How does the I/O module communicate its status to the CPU in programmed I/O?

The I/O module sets status bits that the CPU checks periodically.

What role does the I/O module play in the relationship between the CPU and external devices?

The I/O module acts as an intermediary, performing operations on the devices and managing status and data transfer.

What are the types of I/O commands issued by the CPU to the I/O module?

<p>The I/O commands include Control, Test, Write, and Read.</p> Signup and view all the answers

What is one key decision an I/O module must make regarding device properties?

<p>An I/O module must decide whether to hide or reveal device properties to the CPU.</p> Signup and view all the answers

What role does the I/O module play in a computer's architecture?

<p>The I/O module interfaces with the processor and memory via the system bus and connects to peripheral devices through tailored data links.</p> Signup and view all the answers

Name and describe the three categories of external devices connected to an I/O module.

<p>The three categories are human-readable devices (e.g., screen, printer, keyboard), machine-readable devices (e.g., magnetic disk, sensors), and communication devices (e.g., modems).</p> Signup and view all the answers

Why can't high-speed system buses be used to communicate directly with peripherals?

<p>High-speed system buses cannot handle the varying data transfer rates and formats of different peripherals effectively.</p> Signup and view all the answers

What types of data might be exchanged between an I/O module and an external device?

<p>Control signals, status information, and actual data are the types of information exchanged between an I/O module and external devices.</p> Signup and view all the answers

How does the data transfer rate mismatch between peripherals and the processor/memory affect system design?

<p>The mismatch necessitates the use of I/O modules to mediate communication, as direct connection could bottleneck performance.</p> Signup and view all the answers

What is the main function of an I/O module in interpreting address lines?

<p>To determine if a command is intended for itself based on the address lines.</p> Signup and view all the answers

Describe the key difference between memory-mapped I/O and isolated I/O.

<p>Memory-mapped I/O shares an address space with memory, while isolated I/O has separate address spaces.</p> Signup and view all the answers

Explain how interrupt-driven I/O improves CPU efficiency.

<p>It allows the CPU to perform other tasks while the I/O module handles data transfer and interrupts when ready.</p> Signup and view all the answers

What steps does the CPU take when it receives an interrupt from an I/O module?

<p>The CPU saves its context and processes the interrupt to fetch and store data from the I/O module.</p> Signup and view all the answers

How can a system identify which device has issued an interrupt?

<p>By using interrupt request lines or identifying the source through software or hardware mechanisms.</p> Signup and view all the answers

What is the impact of DMA on CPU performance during data transfers?

<p>DMA allows for more efficient data transfers by letting the CPU execute other instructions while the transfer is occurring, thus improving overall performance.</p> Signup and view all the answers

How does a single-bus integrated DMA controller differ from a detached DMA controller in terms of bus usage?

<p>A single-bus integrated DMA controller uses the bus once per transfer, while a detached DMA controller uses the bus twice for each transfer.</p> Signup and view all the answers

Explain the role of the I/O controller in modern computer systems.

<p>The I/O controller manages data transfers between I/O devices and memory, thus offloading the CPU and improving system speed.</p> Signup and view all the answers

What evolutionary changes have occurred in I/O channels regarding CPU involvement?

<p>I/O channels have evolved to perform more functions without CPU intervention, allowing the CPU to dedicate its resources to processing tasks.</p> Signup and view all the answers

Describe the efficiency benefits of using a separate I/O bus in DMA configurations.

<p>A separate I/O bus allows for direct communication between DMA-enabled devices and memory, utilizing the bus once per transfer and resulting in less CPU suspension.</p> Signup and view all the answers

What are the maximum data transfer speeds for USB 3.0 and USB 3.1?

<p>USB 3.0 supports data transfer speeds up to 4 Gbps, while USB 3.1 supports speeds up to 9.7 Gbps.</p> Signup and view all the answers

How many devices can be connected in a FireWire daisy chain configuration?

<p>Up to 63 devices can be connected in a FireWire daisy chain configuration.</p> Signup and view all the answers

What are the two types of transmission methods used in the FireWire link layer?

<p>The two types of transmission methods in the FireWire link layer are asynchronous and isochronous.</p> Signup and view all the answers

What is the primary purpose of InfiniBand in computing environments?

<p>InfiniBand is an I/O specification aimed at high-end servers for efficient data transmission.</p> Signup and view all the answers

What role does the root play in FireWire's arbitration scheme?

<p>In FireWire's arbitration scheme, the root acts as the arbiter, determining which devices get data transmission priority.</p> Signup and view all the answers

What are two key advantages of using InfiniBand in server architecture?

<p>Increased capacity and flexibility are two key advantages of using InfiniBand in server architecture.</p> Signup and view all the answers

How does InfiniBand manage data traffic during transfers?

<p>InfiniBand manages data traffic by mapping incoming traffic to outgoing lanes through its switch architecture.</p> Signup and view all the answers

Explain the role of virtual lanes in InfiniBand operations.

<p>Virtual lanes in InfiniBand operations are used for data transfer, with one lane allocated for management and the others for data traffic.</p> Signup and view all the answers

What is the maximum distance allowed for I/O connections using single-mode fiber in InfiniBand?

<p>The maximum distance allowed for I/O connections using single-mode fiber in InfiniBand is 10 km.</p> Signup and view all the answers

Describe the three principal I/O techniques mentioned in the content.

<p>The three principal I/O techniques are programmed I/O, interrupt-driven I/O, and direct memory access (DMA).</p> Signup and view all the answers

Flashcards

I/O Module

An intermediate module between peripherals and the computer's memory/processor, handling data transfer.

External Devices

Devices connected to the computer, enabling data exchange with the outside world.

Data Transfer Rate Mismatch

A difference in data speeds between peripherals and memory/processor.

Human Readable Devices

Peripherals designed for user interaction (e.g., keyboard, screen).

Signup and view all the flashcards

Machine Readable Devices

Peripherals for communicating with equipment (e.g., disk drives, sensors).

Signup and view all the flashcards

Programmed I/O

A technique where the CPU directly controls I/O operations, checking the status of the I/O module periodically. CPU waits for I/O operations to complete.

Signup and view all the flashcards

I/O Module Decisions

Decisions made by the I/O module about how to interact with devices, such as whether to hide device details from the CPU or handle control of several devices. These decisions also often require interaction with operating systems.

Signup and view all the flashcards

I/O Commands

Instructions given by the CPU to an I/O module. They tell the module what to do, like reading from a device or spinning up a disk.

Signup and view all the flashcards

I/O Techniques

Methods for handling input and output operations, such as programmed I/O, interrupt-driven I/O, and DMA.

Signup and view all the flashcards

Interrupt-Driven I/O

A technique where the I/O module alerts the CPU when an operation is completed instead of the CPU continuously checking.

Signup and view all the flashcards

Memory Mapped I/O

A method where I/O devices and memory share the same address space, enabling the CPU to use memory addressing commands for data transfer.

Signup and view all the flashcards

Isolated I/O

A method where I/O devices have separate address spaces from memory, requiring dedicated I/O instructions for data transfer.

Signup and view all the flashcards

Interrupt Processing Steps

  1. Save CPU context (registers), 2. Process the interrupt (fetch data), 3. Restore CPU context (registers) and resume normal operations.
Signup and view all the flashcards

DMA Breakpoint

A temporary pause in the CPU's execution cycle to allow a Direct Memory Access (DMA) operation to occur.

Signup and view all the flashcards

DMA Efficiency

DMA is more efficient than interrupt-driven or programmed I/O because it directly transfers data between memory and peripherals without involving the CPU.

Signup and view all the flashcards

Single-Bus Integrated DMA

A DMA configuration where the DMA controller is integrated into the system's single bus. The DMA controller manages data transfers using a single bus cycle between the peripheral and memory.

Signup and view all the flashcards

Separate I/O Bus for DMA

A DMA configuration that uses a separate I/O bus dedicated to handling Direct Memory Access operations. This simplifies data transfers and reduces bus contention.

Signup and view all the flashcards

I/O Channel

A dedicated processor, separate from the CPU, designed to handle I/O operations. It relieves the CPU of I/O tasks, improving overall system performance.

Signup and view all the flashcards

USB Generations

Various versions of the Universal Serial Bus (USB) standard, each offering increased data transfer speeds. Examples include USB 1.0, 2.0, 3.0 and 3.1.

Signup and view all the flashcards

IEEE 1394 FireWire

A high-performance serial bus known for its speed, low cost, and ease of implementation. It's widely used in digital cameras, VCRs, and TVs.

Signup and view all the flashcards

What is InfiniBand?

A high-speed communication technology designed for data-intensive applications in servers and data centers. It replaces PCI and offers increased capacity, expandability, and flexibility.

Signup and view all the flashcards

FireWire Configuration

A topology that allows up to 63 devices to be daisy-chained on a single FireWire port, with up to 1022 buses connected via bridges. It automatically configures, requiring no bus terminators and supporting a tree structure.

Signup and view all the flashcards

FireWire Protocol Stack

The layered structure of the FireWire communication protocol, with three main layers: Physical, Link, and Transaction, each responsible for different aspects of data transmission.

Signup and view all the flashcards

What does InfiniBand connect?

InfiniBand connects servers, remote storage, and network devices through a fabric of switches and links. This fabric allows for a scalable data center where independent nodes can be added as needed.

Signup and view all the flashcards

FireWire - Physical Layer

The lowest level of FireWire communication, handling physical transmission details like data rates (25 to 400Mbps) and arbitration methods (tree-based or fair, urgent).

Signup and view all the flashcards

InfiniBand distances

InfiniBand supports different distances using various types of cables: 17 meters with copper, 300 meters with multimode fiber optic, and up to 10 kilometers with single mode fiber.

Signup and view all the flashcards

InfiniBand speed

InfiniBand can achieve transfer speeds up to 30 Gbps.

Signup and view all the flashcards

InfiniBand channels

Each physical InfiniBand link has 16 logical channels, with one dedicated to management and the rest used for data transfer. Data is sent in packets and each channel is temporarily dedicated to a specific end-to-end transfer.

Signup and view all the flashcards

Study Notes

Input/Output (I/O)

  • I/O involves peripherals with various operation methods
  • There's a mismatch between peripheral data transfer rates and memory/processor rates
  • Peripherals often use different data formats and word lengths than the computer itself

I/O Module

  • Functions as an intermediary between the processor and memory and peripherals
  • Interfaces to the processor and memory via the system bus or central switch
  • Interfaces to one or more peripheral devices

External Devices

  • Provide a means of exchanging data between the external environment and the computer
  • An external device attaches to the computer via a link to an I/O module
  • The link exchanges control, status, and data between the I/O module and the external device
  • Often referred to as a peripheral device

External Device Categories

  • Human-readable: Suitable for communication with the user (e.g., screen, printer, keyboard)
  • Machine-readable: Suitable for communication with equipment (e.g., magnetic disk, tape system, sensors, actuators)
  • Communication: Suitable for communication with remote devices (e.g., modem, network interface card (NIC))

External Device Block Diagram

  • Control signals: Determine the device's function (e.g., read/write, report status, etc.)
  • Control logic: Processes and interprets control signals to the device
  • Buffer: Temporarily holds data during transfer between the I/O module and the environment
  • Transducer: Converts data from one form (electrical) to another form (e.g., mechanical, thermal)

I/O Module

  • Control & Timing: Coordinates flow between internal and external resources. Handles device communication (commands, status, data).
  • Data Buffering: Handles high CPU/memory transfer rates, often vastly slower peripheral rates.
  • Error Detection: Monitors peripheral for mechanical/electrical malfunctions

CPU Communication

  • Command decoding: I/O module accepts commands from the processor
  • Data transfers: Data exchanged between the processor and I/O module via the data bus.
  • Status reporting: Key for peripherals that are slow, status information is critical for the I/O module.
  • Address recognition: I/O module identifies the device with a unique address for control.

I/O Steps

  • CPU checks I/O module's device status
  • I/O module returns its status
  • CPU requests data
  • I/O module gets data from device
  • I/O module sends data to CPU

I/O Module Decisions

  • Hide or reveal device properties to CPU.
  • Support multiple or single devices
  • Control device functions or leave for CPU.
  • Operating System (O/S) decisions on how devices are treated (e.g. Unix treats peripherals as files).

I/O Operation Techniques

  • Programmed I/O: CPU directly controls I/O, waits for each operation to complete

  • Interrupt-driven I/O: CPU issues a command, then moves on to other tasks; CPU gets interrupted when device is ready

  • Direct Memory Access (DMA): DMA controller handles transfer between memory and peripheral without continuous CPU intervention

I/O Commands

  • Issued by the CPU to the I/O module.
  • Identifies the module and any specific device as required via addresses
  • Includes I/O commands for control (e.g., disc spin-up), test, read, and write processes

I/O Instructions

  • Executed by the processor; tightly coupled with the I/O commands.
  • The form of the instructions depends on how the external devices are addressed

Addressing I/O Devices

  • Programmed I/O data transfers mimic memory access
  • Each device gets a unique identifier (address)
  • CPU commands contain the identifier for the device

Addressing Modes

  • Memory-mapped I/O: Devices and memory share the address space
  • Isolated I/O: Separate address spaces, specialized commands

Interrupt-Driven I/O

  • Overcomes CPU waiting
  • I/O module interrupts CPU when ready.
  • No need to repeatedly monitor the device

DMA (Direct Memory Access)

  • Interrupt driven and programmed I/O require active CPU intervention
  • DMA is the answer to faster transfer speeds, taking over system control from the processor for transfers
  • DMA controller uses the bus only when the processor does not, possibly causing temporary suspension (cycle stealing)

DMA Functions

  • Additional module on the system bus
  • DMA controller takes over I/O functions from the CPU

DMA Operations

  • CPU tells the DMA controller on the type of read/write, the device address and the memory block address where to write or read data.
  • CPU continues with other tasks whilst DMA manages data transfers between peripheral and memory.
  • DMA controller sends interrupt when finished.

DMA Cycle Stealing

  • DMA takes control of the bus for a cycle
  • Transfer of data without an interrupt
  • CPU suspended temporarily

DMA Configurations

  • Single-bus: DMA controller detached, using the bus twice for each transfer, CPU is suspended twice
  • Single-bus, Integrated: DMA controller integrated with I/O using the bus only once for each transfer, CPU is suspended once.
  • Separate I/O bus: Separate I/O bus, the bus is used only once for each transfer, CPU is suspended only once

I/O Channels

  • As systems evolve, I/O devices become more complex and I/O channels allow for an improved transfer speed and reduced burden on the CPU.
  • This can take over the entire I/O from the CPU.
  • I/O controllers respond to I/O instructions and execute them.
  • Selector channel: Controls multiple high-speed devices at the same time and on a single transfer.
  • Multiplexor channel: Designed for handling multiple low-speed devices; can serve multiple devices rapidly

Interfacing

  • Parallel interfaces: Multiple data lines connect the I/O module to the peripheral; bits are transferred simultaneously. (e.g., tape and disc drives)
  • Serial interfaces: Only one data line used to transfer data sequentially. (e.g., printers)

Interfacing: I/O Modules and External Devices

  • Point-to-point: Dedicated link between the I/O module and the external device (e.g., keyboard, printer).
  • Multipoint: Used to support mass storage devices (such as disk and tape drives), and multimedia devices (such as CD-ROMs). Includes examples like FireWire and Infiniband.

External Interconnection Standards

  • Various standards exist for connecting external devices, including USB, FireWire, SCSI, Thunderbolt, InfiniBand, PCI Express, SATA, Ethernet, and Wi-Fi

USB

  • Widely used for connecting peripherals.
  • Multiple generations exist with increasing data rates.

IEEE 1394 FireWire

  • High-performance, low-cost serial bus.
  • Common in digital cameras, VCRs, and TVs
  • Daisy chain or tree-structured configuration, up to 63 devices.
  • Layers (physical, link, transaction)

FireWire Configuration

  • Daisy-chain up to 63 devices on one port
  • Up to 1022 buses via bridges (tree configuration).
  • Automatic configuration.

FireWire 3 Layer Stack

  • Physical layer: Transmission medium
  • Link layer: Packets
  • Transaction layer: Requests and responses

FireWire Protocol Stack

  • Layers define how data is organized for transmission and handling across the FireWire system

FireWire - Physical Layer

  • Data rates range from 25 to 400 Mbps
  • Uses tree-based arbitration, with root acting as arbiter
  • Arbitration methods include fair, urgent, and first-come, first-served
  • Two transmission types: Asynchronous and isochronous
  • Asynchronous: Variable-length data packets
  • Isochronous: Fixed-size data packets at regular intervals

InfiniBand

  • High-end server I/O specification
  • High capacity, expandability, flexibility
  • Replaces PCI in servers.
  • Supports up to 30Gbps

InfiniBand Architecture

  • Remote storage, network connections between servers.
  • Higher server density
  • Scalable data centres
  • Long distances using fiber optics (up to 10 km)

InfiniBand Operations

  • 16 logical channels (virtual lanes) per physical link.
  • One channel for management, others for data
  • Data transmitted as packets, virtual lane for temporary transfers to end-points.
  • Switches map incoming to outgoing lanes.

Summary

  • I/O architecture enables interaction with the outside world.
  • Three main I/O techniques: programmed, interrupt-driven, and direct memory access (DMA). Each technique is suited to specific needs and workloads relating to the CPU.

Studying That Suits You

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

Quiz Team

Related Documents

Description

Test your knowledge on the role and functioning of I/O modules in computer architecture. This quiz covers their interaction with the CPU, types of commands, and the impact on system design. Dive into the intricacies of programmed I/O and peripheral communication.

More Like This

Operating Systems I/O Module
40 questions
CPE 412 Module 1: Computer Architecture
10 questions
Computer Architecture Module 2
46 questions
Use Quizgecko on...
Browser
Browser