Download - TCSS 372A Computer Architecture
![Page 1: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/1.jpg)
TCSS 372A
Computer Architecture
![Page 2: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/2.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/3.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/4.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/5.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/6.jpg)
Physical Realization of Bus Architecture
![Page 7: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/7.jpg)
Communication with Memory via a Bus
![Page 8: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/8.jpg)
Communication with I/O via a Bus
![Page 9: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/9.jpg)
CPU Communication via a Bus
![Page 10: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/10.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/11.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/12.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/13.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/14.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/15.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/16.jpg)
Logic Threshold Voltage Levels
![Page 17: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/17.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/18.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/19.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/20.jpg)
Adding an Expansion Bus
![Page 21: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/21.jpg)
Hierarchical Bus Structure
![Page 22: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/22.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/23.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/24.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/25.jpg)
Timing Diagram ConventionsTiming Diagram Conventions
![Page 26: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/26.jpg)
Synchronous Timing Diagram
![Page 27: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/27.jpg)
Asynchronous Timing – Read Diagram
![Page 28: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/28.jpg)
Asynchronous Timing – Write Diagram
![Page 29: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/29.jpg)
Example - PCI Bus
• Peripheral Component Interconnection• Intel released to public domain• 32 or 64 bit• 50 lines
![Page 30: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/30.jpg)
Typical PCI Bus Usage
![Page 31: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/31.jpg)
Multiple PCI Bus Configuration
![Page 32: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/32.jpg)
![Page 33: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/33.jpg)
![Page 34: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/34.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/35.jpg)
PCI Read Timing Diagram
![Page 36: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/36.jpg)
PCI Bus Arbiter
![Page 37: TCSS 372A Computer Architecture](https://reader035.vdocument.in/reader035/viewer/2022062501/56816166550346895dd0f002/html5/thumbnails/37.jpg)
PCI Bus Arbitration Timing