Buses Common Characteristics. CSCI 4717 Computer Architecture. Buses Structure (continued) Buses Structure

Similar documents
Computer Organization & Architecture Lecture #19

Computer Systems Structure Input/Output

Lizy Kurian John Electrical and Computer Engineering Department, The University of Texas as Austin

Read this before starting!

Chapter 13 Selected Storage Systems and Interface

UMBC. ISA is the oldest of all these and today s computers still have a ISA bus interface. in form of an ISA slot (connection) on the main board.

What is a bus? A Bus is: Advantages of Buses. Disadvantage of Buses. Master versus Slave. The General Organization of a Bus

Communicating with devices

Local Area Networks transmission system private speedy and secure kilometres shared transmission medium hardware & software

Project 4: Pseudo USB Simulation Introduction to UNIVERSAL SERIAL BUS (USB) STANDARD

Chapter 02: Computer Organization. Lesson 04: Functional units and components in a computer organization Part 3 Bus Structures

The Bus (PCI and PCI-Express)

IDE/ATA Interface. Objectives. IDE Interface. IDE Interface

COMPUTER HARDWARE. Input- Output and Communication Memory Systems

Computer Performance. Topic 3. Contents. Prerequisite knowledge Before studying this topic you should be able to:

21152 PCI-to-PCI Bridge

INPUT/OUTPUT ORGANIZATION

Computer Network. Interconnected collection of autonomous computers that are able to exchange information

Chapter Introduction. Storage and Other I/O Topics. p. 570( 頁 585) Fig I/O devices can be characterized by. I/O bus connections

Chapter 5 Busses, Ports and Connecting Peripherals

Interconnection Networks

A+ Guide to Managing and Maintaining Your PC, 7e. Chapter 1 Introducing Hardware

Ethernet. Ethernet Frame Structure. Ethernet Frame Structure (more) Ethernet: uses CSMA/CD

SCSI vs. Fibre Channel White Paper

Learning Outcomes. Simple CPU Operation and Buses. Composition of a CPU. A simple CPU design

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC Microprocessor & Microcontroller Year/Sem : II/IV

Tutorial.

Maximizing Server Storage Performance with PCI Express and Serial Attached SCSI. Article for InfoStor November 2003 Paul Griffith Adaptec, Inc.

Elettronica dei Sistemi Digitali Costantino Giaconia SERIAL I/O COMMON PROTOCOLS

Computer Networks. Definition of LAN. Connection of Network. Key Points of LAN. Lecture 06 Connecting Networks

What You Will Learn About. Computers Are Your Future. Chapter 8. Networks: Communicating and Sharing Resources. Network Fundamentals

Application Note Gigabit Ethernet Port Modes

Ring Local Area Network. Ring LANs

PCI Express Basics Ravi Budruk Senior Staff Engineer and Partner MindShare, Inc.

PCI Express: Interconnect of the future

IEEE 1394 Card. Version 1.0

LAN Switching Computer Networking. Switched Network Advantages. Hubs (more) Hubs. Bridges/Switches, , PPP. Interconnecting LANs

Advanced Computer Architecture-CS501. Computer Systems Design and Architecture 2.1, 2.2, 3.2

PCI Express Overview. And, by the way, they need to do it in less time.

Chapter 4 System Unit Components. Discovering Computers Your Interactive Guide to the Digital World

CHAPTER 7: The CPU and Memory

10-/100-Mbps Ethernet Media Access Controller (MAC) Core

The Motherboard Chapter #5

Chapter 6. Inside the System Unit. What You Will Learn... Computers Are Your Future. What You Will Learn... Describing Hardware Performance

CENTRONICS interface and Parallel Printer Port LPT

How PCI Express Works (by Tracy V. Wilson)

A network is a group of devices (Nodes) connected by media links. A node can be a computer, printer or any other device capable of sending and

System Interconnect Architectures. Goals and Analysis. Network Properties and Routing. Terminology - 2. Terminology - 1

Chapter 1 Reading Organizer

Switch Fabric Implementation Using Shared Memory

Design and Verification of Nine port Network Router

- Hubs vs. Switches vs. Routers -

High-Speed SERDES Interfaces In High Value FPGAs

2. What is the maximum value of each octet in an IP address? A. 128 B. 255 C. 256 D. None of the above

Design and Implementation of an On-Chip timing based Permutation Network for Multiprocessor system on Chip

IT Data Communication and Networks (Optional)

PCI Express* Ethernet Networking

Input / Ouput devices. I/O Chapter 8. Goals & Constraints. Measures of Performance. Anatomy of a Disk Drive. Introduction - 8.1

Chapter 11 I/O Management and Disk Scheduling

The Central Processing Unit:

Logical Operations. Control Unit. Contents. Arithmetic Operations. Objectives. The Central Processing Unit: Arithmetic / Logic Unit.

Computer Organization and Architecture

Serial Communications

Chapter 7 Low-Speed Wireless Local Area Networks

DELL RAID PRIMER DELL PERC RAID CONTROLLERS. Joe H. Trickey III. Dell Storage RAID Product Marketing. John Seward. Dell Storage RAID Engineering

Computer Organization. and Instruction Execution. August 22

CHAPTER 4 MARIE: An Introduction to a Simple Computer

DigiPoints Volume 1. Student Workbook. Module 4 Bandwidth Management

Discovering Computers Living in a Digital World

CCNA R&S: Introduction to Networks. Chapter 5: Ethernet

LonManager PCC-10 and ISA Protocol Analyzers Models and

Microprocessor & Assembly Language

Appendix A. by Gordon Getty, Agilent Technologies

SAN Conceptual and Design Basics

Welcome to the Introduction to Controller Area Network web seminar My name is William Stuart, and I am a Applications Engineer for the Automotive

Unit of Learning # 2 The Physical Layer. Sergio Guíñez Molinos sguinez@utalca.cl

Communication Networks. MAP-TELE 2011/12 José Ruela

1. Computer System Structure and Components

Local Interconnect Network Training. Local Interconnect Network Training. Overview

Distributed Real-Time Systems (TI-DRTS) Track 2. CAN-BUS Introduction. Version Ref. VECTOR application note & Motorola note

ARM Ltd 110 Fulbourn Road, Cambridge, CB1 9NJ, UK.

PCI EXPRESS: AN OVERVIEW OF PCI EXPRESS, CABLED PCI EXPRESS, AND PXI EXPRESS

Computer buses and interfaces

OpenSPARC T1 Processor

Customer Specific Wireless Network Solutions Based on Standard IEEE

Hello, and welcome to this presentation of the STM32 SDMMC controller module. It covers the main features of the controller which is used to connect

Chapter 2 - The TCP/IP and OSI Networking Models

Process Control and Automation using Modbus Protocol

INTERNATIONAL JOURNAL OF ELECTRONICS AND COMMUNICATION ENGINEERING & TECHNOLOGY (IJECET)

Module 5. Broadcast Communication Networks. Version 2 CSE IIT, Kharagpur

- Nishad Nerurkar. - Aniket Mhatre

Three Key Design Considerations of IP Video Surveillance Systems

Technical Product Specifications Dell Dimension 2400 Created by: Scott Puckett

Leased Line + Remote Dial-in connectivity

Lecture 2: Computer Hardware and Ports.

WAN Data Link Protocols

Solutions for Increasing the Number of PC Parallel Port Control and Selecting Lines

CONTROL MICROSYSTEMS DNP3. User and Reference Manual

Chapter 1 Computer System Overview

Implementation of a Wimedia UWB Media Access Controller

Transcription:

CSCI 4717/5717 Computer Architecture Topic: Buses Reading: Stallings, Sections 3.4, 3.5, and 7.7 Buses Common Characteristics Multiple devices communicating over a single set of wires Only one device can talk at a time or the message is garbled Each line or wire of a bus can at any one time contain a single binary digit. Over time, however, a sequence of binary digits may be transferred These lines may and often do send information in parallel A computer system may contain a number of different buses Buses Page 1 Buses Page 2 Buses Structure Serial versus parallel Around 50-100 lines although it's possible to have as few as 3 or 4 Lines can be classified into one of four groups Data lines Address Lines Control Lines Power Buses Structure (continued) Bus lines (parallel) Data Address Control Power Bus lines (serial) Data, address, and control are sequentially sent down single wire There may be additional control lines Power Buses Page 3 Buses Page 4 Buses Structure (continued) Data Lines Passes data back and forth Number of lines represents width Address lines Designates location of source or destination Width of address bus specifies maximum memory capacity High order selects module and low order selects a location within the module Bus Structure Control lines Because multiple devices communicate on a line, control is needed Timing Typical lines include: Memory Read or Write I/O Read or Write Transfer ACK Bus request Bus grant Interrupt request Interrupt acknowledgement Clock Reset Buses Page 5 Buses Page 6 1

Operation Sending Data Obtain the use of the bus Transfer the data via the bus Possible acknowledgement Operation Requesting Data Obtain the use of the bus Transfer the data request via the bus Wait for other module to send data Possible acknowledgement Buses Page 7 Buses Page 8 Classic Bus Arrangement All components attached to bus (STD bus) Due to Moore's law, more and more functionality exists on a single board, so major components are now on same board or even the same chip Physical Implementations Parallel lines on circuit boards (ISA or PCI) Ribbon cables (IDE) Buses Page 9 Buses Page 10 Physical Implementations (continued) Strip connectors on mother boards (PC104) External cabling (USB or Firewire) Single Bus Problems Lots of devices on one bus leads to: Physically long buses Propagation delays Long data paths mean that coordination of bus use can adversely affect performance Reflections/termination problems Aggregate data transfer approaches bus capacity Slower devices dictate the maximum bus speed Buses Page 11 Buses Page 12 2

Multiple Buses Most systems use multiple buses to overcome these problems Requires bridge to buffer (FIFO) data due to differences in bus speeds Sometimes I/O devices also contain buffering (FIFO) Multiple Buses Benefits Isolate processor-to-memory traffic from I/O traffic Support wider variety of interfaces Processor has bus that connects as direct interface to chip, then an expansion bus interface interfaces it to external devices (ISA) Cache (if it exists) may act as the interface to system bus Buses Page 13 Buses Page 14 Expansion Bus Example Mezzanine Approach Differences in I/O speeds demands separating devices. Separate items that are high-speed and those that are not An additional high-speed bus is added to communicate with the faster devices and also the slower expansion bus Advantage is that high-speed devices are brought closer to processor Buses Page 15 Buses Page 16 Mezzanine Approach (continued) Pentium Example Buses Page 17 (Source: http://www.amd.com/usen/assets/content_type/white_papers_and_tech_docs/21644.pdf) Buses Page 18 3

Bus Types Dedicated vs. Time Multiplexed Dedicated Separate data & address lines Time multiplexed Shared lines Address valid or data valid control line Advantage - fewer lines Disadvantages More complex control Degradation of performance Bus Types Physical Dedication Physically separating buses and controlling them with a "channel changer Advantages faster Disadvantages physically larger Buses Page 19 Buses Page 20 Bus Arbitration Listening to the bus is not usually a problem Talking on the bus is a problem need arbitration to allow more than one module to control the bus at one time Arbitration may be centralised or distributed Centralised vs. Distributed Arbitration Centralised Arbitration Single hardware device controlling bus access Bus Controller/Arbiter May be part of CPU or separate Distributed Arbitration Each module may claim the bus Access control logic is on all modules Modules work together to control bus Buses Page 21 Buses Page 22 Bus Timing Co-ordination of events on bus Synchronous controlled by a clock Asynchronous timing is handled by welldefined specifications, i.e., a response is delivered within a specified time after a request Synchronous Bus Timing Events determined by clock signals Control Bus includes clock line A single 1-0 cycle is a bus cycle All devices can read clock line Usually sync on leading/rising edge Usually a single cycle for an event Analogy Orchestra conductor with baton Usually stricter in terms of its timing requirements Buses Page 23 Buses Page 24 4

Synchronous Bus Timing Asynchronous Timing Devices must have certain tolerances to provide responses to signal stimuli More flexible allowing slower devices to communicate on same bus with faster devices. Performance of faster devices, however, is limited to speed of bus Buses Page 25 Buses Page 26 Asynchronous Timing Read Asynchronous Timing Write Buses Page 27 Buses Page 28 Bus Width Wider the bus the better the data transfer rate or the wider the addressable memory space Serial width is determined by length/duration of frame Peripheral Component Interconnection (PCI) Bus Brief history Original PC came out with 8-bit ISA bus which was slow, but had enormous amount of existing equipment. For AT, IBM expanded ISA bus to 16-bit by adding connector Many PC board manufacturers started making higher speed, proprietary buses Intel released the patents to its PCI and this soon took over as the standard Buses Page 29 Buses Page 30 5

PCI Bus (continued) Brief list of PCI 2.2 characteristics General purpose Mezzanine or peripheral bus Supports single- and multi-processor architectures 32 or 64 bit multiplexed address and data Synchronous timing Centralized arbitration (requires bus controller) 49 mandatory lines (see Table 3.3) Required PCI Bus Lines (Table 3.3) Systems lines clock and reset Address & Data 32 time multiplexed lines for address/data Parity lines Interface Control Hand shaking lines between bus controller and devices Selects devices Allows devices to indicates when they are ready Buses Page 31 Buses Page 32 Required PCI Bus Lines (continued) Arbitration Not shared Direct connection to PCI bus arbiter Error lines parity and critical/system Optional PCI Bus Lines There are 51 optional PCI 2.2 bus lines Interrupt lines Not shared Multiple lines for multiple interrupts on a single device Cache support 64-bit Bus Extension Additional 32 lines Time multiplexed 2 lines to enable devices to agree to use 64-bit transfer JTAG/Boundary Scan For testing procedures Buses Page 33 Buses Page 34 PCI Commands PCI Transaction Types Transaction between initiator (master) and target Master claims bus During address phase of write, 4 C/BE lines signal the transaction type One or more data phases Interrupt acknowledge prompts identification from interrupting device Special cycle message broadcast I/O read read to I/O address space I/O write write to I/O address space Memory read 1 or 2 data transfer cycles Memory read line 3 to 12 data transfer cycles Memory read multiple more than 12 data transfers Buses Page 35 Buses Page 36 6

PCI Transaction Types (continued) PCI Read Timing Diagram Memory write writing 1 or more cycles to memory Memory write and invalidate writing 1 or more cycles to memory allowing for cache write-back policy Configuration read reading PCI device's configuration (up to 256 configuration registers per device) Configuration write writing PCI device's configuration (up to 256 configuration registers per device) Dual address cycle indication of 64-bit addressing on 32 bit lines Buses Page 37 Buses Page 38 PCI Bus Arbiter PCI Bus Arbitration Between Two Masters Buses Page 39 Buses Page 40 Higher Performance External Buses Historically, parallel has been used for high speed peripherals (e.g., SCSI, parallel port zip drives rather than serial port). High speed serial, however, has begun to replace this need Serial communication also used to be restricted to point-to-point communications. Now there's an increasing prevalence of multipoint IEEE 1394 FireWire Inexpensive alternative needed for SCSI High performance serial bus Serial implies cheaper cabling (fewer wires, less shielding, less synchronization) Small connectors for smaller devices Fast Low cost Easy to implement Also being used in digital cameras, VCRs and TVs Buses Page 41 Buses Page 42 7

FireWire Configuration Daisy chain/tree structure (Mac O/S Help indicates that daisy chain is preference for up to 16 devices) 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 for addressing No bus terminators Hot swappable FireWire 3 Layer Stack Buses Page 43 Buses Page 44 FireWire 3 Layer Stack Physical Layer Transmission medium, electrical and signaling characteristics Up to 400 Mbps Arbitration basic form Fair arbitration Urgent arbitration Link layer packet transmission Asynchronous Isochronous Arbitration Basic form Upon automatic configuration, each tree designates a root Parent/child relationship forms tree topology Root acts as central arbitrator Requests are first-come-first-serve Simultaneous requests are granted first to the closest node to the root and second to the lower ID number Two additional functions are used to best allocate the use of the bus Fair arbitration Urgent arbitration Buses Page 45 Buses Page 46 Fair arbitration Urgent arbitration Keeps one device from monopolizing the bus by allowing only one request during a set fairness interval At beginning of interval, all devices set arbitration_enable flag Each device may compete for bus access If bus access is granted, arbitration_enable flag is cleared prohibiting bus access until next fairness interval Allows overriding of fairness interval by nodes configured as having an urgent priority Provides support for devices with severe latency requirements or high throughput such as video They may use the bus up to 75% of the time, i.e., for each non-urgent packet, three urgent packets may be sent Buses Page 47 Buses Page 48 8

FireWire 3 Layer Stack Link Layer Transmission of data in packets Two types of transmission supported: Asynchronous Isochronous Asynchronous Packets contain Variable amount of data Several bytes of transaction layer information Addressing information Acknowledgement Buses Page 49 Buses Page 50 Asynchronous Sequence Asynchronous Sequence (continued) Arbitration sequence gives one device control of the bus Packet transmission packet contains source and destination IDs, type, CRC, and possible data Acknowledgement gap allows destination to receive and process message Acknowledgement destination sends packet containing source and destination IDs and code indicating action taken Subaction gap idle period between packets to avoid bus contention Buses Page 51 Buses Page 52 Isochronous Fixed packet size w/variable amount of data Simplified addressing No acknowledgement Periodically, cycle_start packet is sent indicating period where only isochronous packets are transmitted Transaction Request-response protocol (This is what your code sees. It separates the programmer from the packet-level stuff) Isochronous Sequence Buses Page 53 Buses Page 54 9