Top Banner
Chapter 7 Input/ Output (Continued)
45

Chapter 7

Feb 23, 2016

Download

Documents

Chapter 7. Input/Output (Continued). DMA Function. DMA controller(s) takes over Bus supervision from CPU for I/O Additional Module(s) attached to bus to control DMA operation. Typical DMA Module Organization. DMA Operation. CPU provides direction to DMA controller(s) Read/Write - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Chapter 7

Chapter 7

Input/Output

(Continued)

Page 2: Chapter 7

DMA Function

• DMA controller(s) takes over Bus supervision from CPU for I/O

• Additional Module(s) attached to bus to control DMA operation

Page 3: Chapter 7

Typical DMA Module Organization

Page 4: Chapter 7

DMA Operation• CPU provides direction to DMA controller(s)

—Read/Write—Device address (which controller)—Starting address of memory block for data—Amount of data to be transferred—Mode(s) of data transfer

• CPU carries on with other work

• DMA controller deals with transfer

• DMA controller sends interrupt when finished

Page 5: Chapter 7

DMA Transfer - Cycle Stealing (?)• DMA controller takes over bus for a cycle

• Transfers one (limited) word(s) of data

• Not an interrupt—CPU does not switch context

• CPU suspended between bus cycles—i.e. before an operand or data fetch or a data write

Slows down CPU but not as much as CPU doing transfer

Page 6: Chapter 7

DMA and Interrupt Breakpoints During an Instruction Cycle

What could be wrong with this?

Page 7: Chapter 7

Several questions

• What effect does caching memory have on DMA?

• What effect does use of DRAMs have on DMA ?

Page 8: Chapter 7

DMA Configurations (1)

• Single Bus, Detached DMA controller

• Each transfer uses bus twice—I/O to DMA then DMA to memory

CPU is suspended twice

Page 9: Chapter 7

DMA Configurations (2)

• Single Bus, Integrated DMA controller• Controller may support >1 device• Each transfer uses bus once

—DMA to memory

CPU may be suspended only once

Page 10: Chapter 7

DMA Configurations (3)

• Separate I/O Bus• Bus supports all DMA enabled devices• Each transfer uses bus once

—DMA to memoryCPU is suspended once

Page 11: Chapter 7

Other “Cycle Stealing” Options

• Stealing cycles when they aren’t going to be used anyway

— when the cache is providing data

— when a instruction is not going to use the bus

— when a partition of memory is not likely to be accessed – implication?

Page 12: Chapter 7

Interfacing Options (many)• Parallel - PCI - SCSI

• Serial - RS 232

• Local Networks - Ethernet

• Some Newer technologies - FireWire

- InfiniBand - USB

• Wireless - BlueTooth - WiFi

• Automation - CAN

Page 13: Chapter 7

I/O Channels• I/O channels are processors dedicated to I/O e.g. 3D graphics cards

• CPU instructs I/O controller to do transfer and provides it mode

• I/O controller does entire transfer from one or many devices

Makes transfers less visible to CPU

Improves speed—Takes load off CPU

Page 14: Chapter 7

I/O Channel Architectures

Page 15: Chapter 7

Intel 82C55A Programmable Peripheral Interface

Page 16: Chapter 7

Keyboard/Display Interfaces to 82C55A

Page 17: Chapter 7

Protocols

• Asynchronous

• Synchronous

• Packet Switching

Page 18: Chapter 7

Serial - RS 232 • UART (Universal Asynchronous Receiver &

Transmitter)• Serial interface on a chip• Historically very significant• After 30 years, still a standard

Page 19: Chapter 7

RS232 Character transmission (NRZ)

Page 20: Chapter 7

UART Block Diagram

Page 21: Chapter 7

Connector Wiring – Null Modem

Page 22: Chapter 7

UART Application

Page 23: Chapter 7

USB (Universal Serial Bus)• Serial - To replace legacy serial and parallel PC interfaces

— 90 ohm terminated twisted pair with 5V power and gnd – For speed— NRZ, half duplex, differential - Robust

• Tiered Star Topology (Host down stream ports)— Up to 127 devices— Connector enforce topology— Does not support extension cables!— FCFS (can easily run out of bandwidth)

• Multiple speeds— 1.5 Mbits/sec (Version 1.0)— 12 Mbits/sec (Version 1.1)— 480 Mbits/sec (Version 2.0)— 4.8 Gbits/sec (Version 3.0)

• Plug and Play — Supports hot connection (no “installation” required)— Establishes initial connection at low speed - “Chirping”

• Potentially competing with Firewire

Page 24: Chapter 7

USB Topology

Page 25: Chapter 7

Ethernet• CSMA/CD (Carrier Sense Multiple Access/Collision

Detection) • A local area network access method in which

contention between two or more stations is resolved by collision detection.

• When two stations transmit at the same time, they both stop and signal a collision has occurred. Each then tries again after waiting a predetermined time period. To avoid another collision, the stations involved each choose a random time interval to schedule the retransmission of the collided frame.

• To make sure that the collision is recognized, Ethernet requires that a station must continue transmitting until the 50 microsecond period has ended. If the station has less than 64 bytes of data to send, then it must pad the data by adding zeros at the end.

Page 26: Chapter 7

Bob Metcalf’s Ethernet Concept - 1976

Page 27: Chapter 7

TDMA Communications Protocol

• TDMA (Time delay Multiple Access)• Based upon a reservation system to allow

multiaccess to a communication channel. - It has longer nominal delay, but operates more

reliably at heavy load.

• It is the basis for GSM (Global System for Mobile telecommunication)

- the protocol used by MOST of the world for cell phones. - In the US the dominant protocol is CDMA.

Page 28: Chapter 7

Layering – Example: OSI Network Layers

•The Physical Layer describes the physical properties of the various communications media, as well as the electrical properties and interpretation of the exchanged signals. Example: this layer defines the size of Ethernet coaxial cable, the type of BNC connector used, and the termination method.

•The Data Link Layer describes the logical organization of data bits transmitted on a particular medium. Example: this layer defines the framing, addressing and check-summing of Ethernet packets.

•The Network Layer describes how a series of exchanges over various data links can deliver data between any two nodes in a network. Example: this layer defines the addressing and routing structure of the Internet.

•The Transport Layer describes the quality and nature of the data delivery. Example: this layer defines if and how retransmissions will be used to ensure data delivery.

•The Session Layer describes the organization of data sequences larger than the packets handled by lower layers.

Example: this layer describes how request and reply packets are paired in a remote procedure call.

•The Presentation Layer describes the syntax of data being transferred. Example: this layer describes how floating point numbers can be exchanged between hosts with different math formats.

•The Application Layer describes how real work actually gets done. Example: this layer would implement file system operations.

International Standards Organization’s (ISO) Open Systems Interconnection (ISO) Model:

Page 29: Chapter 7

Simple Example OF 7 Layer OSI Model Application Layer: Set of C Instructions, Set of Data

{I0 I1 I2 …. IN Do D1 D2 … Dm}

Presentation Layer: ASCII Coding {ASC {I0 I1 I2 …. IN Do D1 D2 … Dm}}

Session Layer: What process at computer x is communicating with what process at computer y {X4 Y6 {ASC {I0 I1 I2 …. IN Do D1 D2 … Dm}}}

Transport Layer: Guaranteed Transmission, sequentially numbered packets of 4096 bytes {GT4 P34 {X4 Y6 {ASC {I0 I1 I2 …. IN Do D1 D2 … Dm}}} PCKSUM}

Network Layer: Path through Network {N23 N3 N53 {GT4 P34 {X4 Y6 {ASC {I0 I1 I2 …. IN Do D1 D2 … Dm}}} PCKSUM}}

Data Link Layer: Serial 256 bytes per frame {STRT T{N23 N3 N53 {GT4 P34 {X4 Y6 {ASC {I0 I1 I2 …. IN Do D1 D2 … Dm}}} PCKSUM}}CHKSM}

Physical Layer: 9600Baud, Coax cable - {Start {….}Parity Stop Stop}

Page 30: Chapter 7

Network Reference model - Ethernet

Page 31: Chapter 7

Ethernet packet

Page 32: Chapter 7

Ethernet block diagram

Page 33: Chapter 7

IEEE 1394 FireWire (Competitor to USB)• High performance serial bus• Fast• Low cost• Easy to implement• Also being used in digital cameras, VCRs

and TV

Page 34: Chapter 7

FireWire Configuration• Daisy chain• Up to 63 devices on single port

—Really 64 of which one is the interface itself• Up to 1022 buses can be connected with

bridges• Automatic configuration• No bus terminators• May be tree structure

Page 35: Chapter 7

Simple FireWire Configuration

Page 36: Chapter 7

FireWire 3 Layer Stack• Physical

—Transmission medium, electrical and signaling characteristics

• Link—Transmission of data in packets

• Transaction—Request-response protocol

Page 37: Chapter 7

FireWire Protocol Stack

Page 38: Chapter 7

FireWire - Physical Layer• Data rates from 25 to 400Mbps• Two forms of arbitration

—Based on tree structure—Root acts as arbiter—First come first served—Natural priority controls simultaneous requests

– i.e. who is nearest to root—Fair arbitration—Urgent arbitration

Page 39: Chapter 7

FireWire - Link Layer• Two transmission types

—Asynchronous– Variable amount of data and several bytes of

transaction data transferred as a packet– To explicit address– Acknowledgement returned

—Isochronous– Variable amount of data in sequence of fixed size

packets at regular intervals– Simplified addressing– No acknowledgement

Page 40: Chapter 7

FireWire Subactions

Page 41: Chapter 7

InfiniBand• I/O specification aimed at high end servers

—Merger of Future I/O (Cisco, HP, Compaq, IBM) and Next Generation I/O (Intel)

• Version 1 released early 2001• Architecture and spec. for data flow

between processor and intelligent I/O devices

• Intended to replace PCI in servers• Increased capacity, expandability,

flexibility

Page 42: Chapter 7

InfiniBand Architecture• Remote storage, networking and connection

between servers• Attach servers, remote storage, network devices

to central fabric of switches and links• Greater server density• Scalable data centre• Independent nodes added as required• I/O distance from server up to

—17m using copper—300m multimode fibre optic—10km single mode fibre

• Up to 30Gbps

Page 43: Chapter 7

InfiniBand Switch Fabric

Page 44: Chapter 7

InfiniBand Operation• 16 logical channels (virtual lanes) per

physical link• One lane for management, rest for data• Data in stream of packets• Virtual lane dedicated temporarily to end

to end transfer• Switch maps traffic from incoming to

outgoing lane

Page 45: Chapter 7

InfiniBand Protocol Stack