37
TCSS 372A Computer Architecture

TCSS 372A Computer Architecture

  • Upload
    judd

  • View
    29

  • Download
    0

Embed Size (px)

DESCRIPTION

TCSS 372A Computer Architecture. Getting Started. Get acquainted (take pictures) Discuss purpose, scope, and expectations of the course Discuss personal expectations & strategy for doing well Review Web Page (http://faculty.washington.edu/lcrum) - PowerPoint PPT Presentation

Citation preview

Page 1: TCSS 372A  Computer Architecture

TCSS 372A

Computer Architecture

Page 2: TCSS 372A  Computer Architecture

Getting Started

• Get acquainted (take pictures)

• Discuss purpose, scope, and expectations of the course

• Discuss personal expectations & strategy for doing well

• Review Web Page (http://faculty.washington.edu/lcrum)

• Review Syllabus, Textbook, and Simulator book

• Discuss Laboratory (CP 206D), Access, Etiquette, Equipment Check-out

• Discuss Homework Format

• Laboratory Report Format

Page 3: TCSS 372A  Computer Architecture

CSS 372 - Lecture 1CSS 372 - Lecture 1

Chapter 3 – Connecting Computer Components with Buses

• Bus Structures

Synchronous, Asynchronous

• Typical Bus Signals

Two level, Tri-state, Wired Or

• Hierarchical Bus Organizations

• PCI Bus Example

Page 4: TCSS 372A  Computer Architecture

What is a Bus?

• A communication pathway connecting two or more devices (Computers, Components, I/O, …)

• Usually broadcast • Often grouped

– A number of channels in one bus– e.g. 32 bit data bus is 32 separate single bit channels

• Power lines may not be shown

Page 5: TCSS 372A  Computer Architecture

What do Buses look like?

– Parallel lines on circuit boards– Ribbon cables– Strip connectors on mother boards– Sets of wires

Page 6: TCSS 372A  Computer Architecture

Physical Realization of Bus Architecture

Page 7: TCSS 372A  Computer Architecture

Communication with Memory via a Bus

Page 8: TCSS 372A  Computer Architecture

Communication with I/O via a Bus

Page 9: TCSS 372A  Computer Architecture

CPU Communication via a Bus

Page 10: TCSS 372A  Computer Architecture

Data Bus (Subset of Bus)

• Carries data– Remember that there is no difference between

“data” and “instruction” at this level

• Width is a key determinant of performance– 8, 16, 32, 64 bit

Page 11: TCSS 372A  Computer Architecture

Address Bus (Subset of Bus)

• Identify the source or destination of data• e.g. CPU needs to read an instruction (data)

from a given location in memory• Bus width determines maximum memory

capacity of system– e.g. 8080 has 16 bit address bus giving 64k

address space

Page 12: TCSS 372A  Computer Architecture

Control Bus (Subset of Bus)

• Control and timing information– Memory read/write signal(s)– Interrupt request/acknowledge signal(s)– Clock signal(s)– Etc.

Page 13: TCSS 372A  Computer Architecture

Power/Ground (Subset of bus ?)

• Provides Power and Reference Levels for Devices

• May be several voltage levels

• Ground may be dispersed between signals

Page 14: TCSS 372A  Computer Architecture

Types of Buses

• Synchronous• Asynchronous (Hand Shaking)

• Serial (Twisted pair, Coaxial Cable, ..)• Parallel (Ribbon Cable, Bundle of Wires,…)

• Dedicated- Separate data & address

lines• Multiplexed

- Shared lines- Address valid or data valid control line- Advantage - fewer lines- Disadvantages

More complex controlUltimate performance

Page 15: TCSS 372A  Computer Architecture

Physical Considerations for Buses• Media (voltage, optic)

• Signal levels – the higher, the more immune to noise

• Noise Absorption – wires can pick up noise from neighboring wires

• Noise Generation – wires can be antennas

• Length Creates Delay ( reduces Bandwidth) Consumes Power Creates reflections – (Terminations become more critical)

Page 16: TCSS 372A  Computer Architecture

Logic Threshold Voltage Levels

Page 17: TCSS 372A  Computer Architecture

Signal Scheme Alternatives

• Totempole - High or Low output level Line always at a 1 level or 0 level

• Open collector, open drain, wired-or Line is nominally at a 1 level or 0 level – line is “pulled” to non-nominal level

• Tristate Has third state – open

• Differential Uses a pair of lines – the level is the difference of signals on the two lines.

Page 18: TCSS 372A  Computer Architecture

Bus Challenges

• Lots of devices on one bus leads to:– Propagation delays

• Long data paths mean that co-ordination of bus use can adversely affect performance

– Traffic congestion• Too many devices communicating reduces bandwidth

• Alternative - Systems use multiple buses

Page 19: TCSS 372A  Computer Architecture

Simple Computer Bus

++ clock(s), power(s), and ground(ss)

Notes: 1) Bus lines need to be properly terminated

2) Power lines are to furnish reference voltage, not power

Page 20: TCSS 372A  Computer Architecture

Adding an Expansion Bus

Page 21: TCSS 372A  Computer Architecture

Hierarchical Bus Structure

Page 22: TCSS 372A  Computer Architecture

Bus Arbitration

• More than one module may need to control the bus e.g. CPUs and DMA controller

• Only one module may control the bus at one time

• Arbitration may be centralised or distributed

Page 23: TCSS 372A  Computer Architecture

Centralised or Distributed Arbitration

• Centralised– Single hardware device controlling bus access

• Bus Controller• Arbiter

– May be part of CPU or separate

• Distributed– More than one module may claim the bus Need control logic on all these modules

Page 24: TCSS 372A  Computer Architecture

Timing

• Co-ordination of events on bus• Synchronous

– Events determined by clock cycles– Control Bus includes clock line(s)– A single 1- 0 sequence is a bus cycle (or phase)– All devices can read clock line– Likely they sync on leading edge– Likely a single cycle for an event (may be multiple clock cycles or phases)

Page 25: TCSS 372A  Computer Architecture

Timing Diagram ConventionsTiming Diagram Conventions

Page 26: TCSS 372A  Computer Architecture

Synchronous Timing Diagram

Page 27: TCSS 372A  Computer Architecture

Asynchronous Timing – Read Diagram

Page 28: TCSS 372A  Computer Architecture

Asynchronous Timing – Write Diagram

Page 29: TCSS 372A  Computer Architecture

Example - PCI Bus

• Peripheral Component Interconnection• Intel released to public domain• 32 or 64 bit• 50 lines

Page 30: TCSS 372A  Computer Architecture

Typical PCI Bus Usage

Page 31: TCSS 372A  Computer Architecture

Multiple PCI Bus Configuration

Page 32: TCSS 372A  Computer Architecture
Page 33: TCSS 372A  Computer Architecture
Page 34: TCSS 372A  Computer Architecture

PCI Commands

• Transaction between initiator (master) and target

• Master claims bus

• Determine type of transaction– e.g. I/O read/write

• Address phase

• One or more data phases

Page 35: TCSS 372A  Computer Architecture

PCI Read Timing Diagram

Page 36: TCSS 372A  Computer Architecture

PCI Bus Arbiter

Page 37: TCSS 372A  Computer Architecture

PCI Bus Arbitration Timing