1 / 19

Communication Technology

Communication Technology. Handouts: Lecture Slides. Computer System Technologies What’s the most important part of this picture?. SRAM Caches. Hard Disk Drives. Linux. Window s XP. CPU Mother boards. SDRAM. LAN technology. Flash Memory. ActiveX Controls. Graphics Acceleration.

Download Presentation

Communication Technology

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Communication Technology Handouts: Lecture Slides

  2. Computer System TechnologiesWhat’s the most important part of this picture? SRAM Caches Hard Disk Drives Linux Windows XP CPU Mother boards SDRAM LAN technology Flash Memory ActiveX Controls Graphics Acceleration App Servers

  3. Late 60s (Processor-dependent Bus) 80s (Processor-independent Bus) MEM MEM I/O CPU Ancient Times (Ad hoc connections) I/O DISK CPU CPU DISK DISK I/O I/O MEM MEM MEM CPU I/O I/O Today ?? System Interfaces & Modularity

  4. The backplane provides: Power Common system clock Wires for communication Interface Standard: Backplane Bus Modular cards that plug into a common backplane: CPUs Memories Bulk storage I/O devices S/W?

  5. Original primitive approach -- Just take the control signals and data bus from the CPU module, buffer it, and call it a bus. ISA bus (Original IBM PC bus) - Pin out and timing is nearly identical to the 8088 spec. The Dumb Bus: ISA & EISA(Extended) Industry Standard Architecture Ah, you forget, Unibus, S-100, SWTP SS-50, STB, MultiBus, Apple 2E, …

  6. NuBus, PCI… Isolate basic communication primitives from processor architecture: Simple read/write protocols Symmetric: any module can become “Master” (smart I/O, multiple processors, etc) Support for “plug & play” expansion Goal: vendor-independent interface standard TERMINOLOGY – BUS MASTER – a module that initiates a bus transaction. (CPU, disk controller, etc.) BUS SLAVE – a module that responds to a bus request. (Memory, I/O device, etc.) BUS CYCLE – The period from when a transaction is requested until it is served. Smarter “Processor Independent” Buses

  7. Wires: interconnect engineer’s view: • Transmission lines. • Finite signal propagation velocity. • Time matters so space matters. Buses as Interconnect • Aren’t buses simply logic circuits with long wires? • Wires: circuit theorist’s view: • Equipotential “nodes” of a circuit. • Instant propagation of v, i over entire node. • “space” abstracted out of design model. • Time issues dictated by RLC elements; wires are timeless.

  8. ? ? ? ? Bus Lines as Transmission Lines ANALOG ISSUES: • Propagation times • Light travels about 1 ft / ns (about 7”/ns in a wire) • Skew • Different points along the bus see the signals at different times • Reflections & standing waves • At each interface (places where the propagation medium changes) the signal may reflect if the impedances are not matched. • Make a transition on a long line – may have to wait many transition times for echoes to subside.

  9. BUT... asynchronous protocols are vulnerable to analog-domain problems, like the infamous WIRED-OR GLITCH: what happens when a switch is opened??? i i Coping with Analog Issues... • We’d like our bus to be technology independent... • • Self-timedprotocols allow bus transactions to accommodate varying response times; • • Asynchronousprotocols avoid the need to pick a (technology-dependent) clock frequency. • COMMON COMPROMISE: Synchronous, Self-Timed protocols • • Broadcast bus clock • • Signals sampled at “safe” times • * DEAL WITH: noise, clock skew (w.r.t. signals)

  10. “Settling Time” “de-skew time” CLK Synchronous Bus Clock Timing assertion edge sample edge Signalat source Signalat destination Allow for several “round-trip” bus delays so that ringing can die down.

  11. A Simple Bus Transaction MASTER: 1) Chooses bus operation 2) Asserts an address 3) Waits for a slave to answer. sample edge assertion edge CLK start (Master) SLAVE: 1) Monitors start 2) Check address 3) If meant for me a) look at bus operation b) do operation c) signal finish of cycle (Slave) finish operation WRITE (Master) BUS: 1) Monitors start 2) Start count down 3) If no one answers before counter reaches 0 then “time out” address (Master) (Master) data

  12. Multiplexed Bus: Write Transaction We let the address and data buses share the same wires. sample edge assertion edge CLK Slave sends a status message by driving the operation control signals when it finishes. Possible indications: - request succeeded - request failed - try again A slave can stall the write by waiting several cycles before asserting the finish signal. start (Master) (Slave) finish OK (Slave) operation WRITE (Master) address adr (Master) data (Master) /data

  13. Turn around time Turn around time Multiplexed Bus: Read Transaction sample edge assertion edge On reads, we allot one cycle for the bus to “turn around” (stop driving and begin receiving). It generally takes some time to read data anyway. A slave can stall the read (for instance if the device is slow compared to the bus clock) by waiting several clocks before asserting the finish signal. These delays are sometimes called “WAIT-STATES” CLK start (Master) (Slave) finish OK (Slave) operation READ (Master) address adr (Master) data (Slave) /data Throughput: 3+ Clocks/word Block transfers are the way to get peak performance from a bus. A throughput of nearly 1 Clock/word is achievable on large data blocks.

  14. Bus Arbitration: Multiple Bus Masters ISSUES: • Fairness - Given uniform requests, bus cycles should be divided evenly among modules (to each, according to their needs…) • Bounded Wait – An upper bound on how long a module has to wait between requesting and receiving a grant • Utilization - Arbitration scheme should allow for maximum bus performance • Scalability - Fixed-cost per module (both in terms of arbitration H/W and arbitration time. STATE OF THE ART ARBITRATION: N masters, log N time, log N wires.

  15. Late 60s (Processor-dependent Bus) 80s (Processor-independent Bus) GraphicsI/O MEM MEM I/O CPU Ancient Times (Ad hoc connections) I/O DISK CPU CPU DISK DISK I/O I/O Back-side bus TodayBuses Galore MEM MEM MEM MEM MEM CPU I/O I/O L2 $ “AGP” bus Front-side bus (PCI and EISA) CPU I/O I/O DISK System Interfaces & Modularity

  16. e.g., sound card Peripheral Component Interconnect (network card, modem, etc) AMD Athlon Workstation (1999) Advanced Technology Attachment Drives Accelerated Graphics Port OS kernel

  17. Pentium-4 Workstation (2003) Video Graphics Array North Bridge Chip Double Data Rate SDRAM Gigabit LAN Universal Serial Bus SouthBridge Chip Serial ATA Drives Parallel Ports

  18. Dual 2GHz processors, each with 64KB I-cache, 32KB D-cache, and 512KB L2 unified cache 1GHz, 2x32-bit bus, 16GB/s Apple PowerMac G5 Workstation (2003) AGP Graphics Card, 533MHz, 32-bit bus, 2.1GB/s North Bridge Chip Up to 8GB DRAM, 400MHz, 128-bit bus, 6.4GB/s PCI-X Expansion, 133MHz, 64-bit bus, 1 GB/s South Bridge Chip Serial ATA 500GB drives Modems, microphone, optical ports

  19. Next Time: Virtual Memory Dilbert : S. Adams

More Related