Bus Interfacing Processor-Memory Bus Backplane Bus I/O Bus

Slides:



Advertisements
Similar presentations
Bus Design.
Advertisements

IT253: Computer Organization
Lecture 21Comp. Arch. Fall 2006 Chapter 8: I/O Systems Adapted from Mary Jane Irwin at Penn State University for Computer Organization and Design, Patterson.
1  1998 Morgan Kaufmann Publishers Interfacing Processors and Peripherals.
Miss Penalty Reduction Techniques (Sec. 5.4) Multilevel Caches: A second level cache (L2) is added between the original Level-1 cache and main memory.
Datorteknik BusInterfacing bild 1 Bus Interfacing Processor-Memory Bus –High speed memory bus Backplane Bus –Processor-Interface bus –This is what we usually.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Processor support devices Part 1:Interrupts and shared memory dr.ir. A.C. Verschueren.
IOSystems.1 Review: Major Components of a Computer Processor Control Datapath Memory Devices Input Output  Important metrics for an I/O system l Performance.
S. Barua – CPSC 440 CHAPTER 8 INTERFACING PROCESSORS AND PERIPHERALS Topics to be covered  How to.
Cache Performance, Interfacing, Multiprocessors CPSC 321 Andreas Klappenecker.
Interfacing Processors and Peripherals Andreas Klappenecker CPSC321 Computer Architecture.
Processor Design 5Z0321 Processor Design 5Z032 Chapter 8 Interfacing Processors and Peripherals Henk Corporaal.
1 Interfacing Processors and Peripherals I/O Design affected by many factors (expandability, resilience) Performance: — access latency — throughput — connection.
1  1998 Morgan Kaufmann Publishers Chapter Seven.
1 SRAM: –value is stored on a pair of inverting gates –very fast but takes up more space than DRAM (4 to 6 transistors) DRAM: –value is stored as a charge.
Chapter 8: Part II Storage, Network and Other Peripherals.
MicroComputer Engineering Bus slide 1 What is a bus? Slow vehicle that many people ride together –well, true... A bunch of wires...
1 (Based on text: David A. Patterson & John L. Hennessy, Computer Organization and Design: The Hardware/Software Interface, 3 rd Ed., Morgan Kaufmann,
Computer Architecture Lecture10: Input/output devices Piotr Bilski.
3/8/2002CSE Buses Buses Pentium 4 Processor L1 and L2 caches Memory Controller Hub RDRAM Disks RDRAM I/O Controller Hub MB/sec (33 MHz, 32.
Bus Mr. Mukul Varshney. Bus A bus, in computing, is a set of physical connections (cables, printed circuits, etc.) which can be shared by multiple hardware.
Computer Architecture System Interface Units Iolanthe II approaches Coromandel Harbour.
I/O Computer Organization II 1 Interconnecting Components Need interconnections between – CPU, memory, I/O controllers Bus: shared communication channel.
August 1, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 9: I/O Devices and Communication Buses * Jeremy R. Johnson Wednesday,
CSIE30300 Computer Architecture Unit 11: Bus and I/O Systems Hsin-Chou Chi [Adapted from material by and
Basic Organization. Our Progress Covered level 0 Ch 4: – Preview level 2 – Level 1.
MBG 1 CIS501, Fall 99 Lecture 18: Input/Output (I/O): Buses and Peripherals Michael B. Greenwald Computer Architecture CIS 501 Fall 1999.
Datorteknik F1 bild 1 What is a bus? Slow vehicle that many people ride together –well, true... A bunch of wires...
Datorteknik F1 bild 1 What is a bus? Slow vehicle that many people ride together –well, true... A bunch of wires...
Bus, Cache and shared memory. Bus System System bus of a computer system operates on contention basis Effective bandwidth available to each processor.
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 16: Introduction to Buses and Interfaces.
DECStation 3100 Block Instruction Data Effective Program Size Miss Rate Miss Rate Miss Rate 1 6.1% 2.1% 5.4% 4 2.0% 1.7% 1.9% 1 1.2% 1.3% 1.2% 4 0.3%
1 Chapter Seven CACHE MEMORY AND VIRTUAL MEMORY. 2 SRAM: –value is stored on a pair of inverting gates –very fast but takes up more space than DRAM (4.
Chapter 6 Storage and Other I/O Topics. Chapter 6 — Storage and Other I/O Topics — 2 Introduction I/O devices can be characterized by Behaviour: input,
Processor Memory Processor-memory bus I/O Device Bus Adapter I/O Device I/O Device Bus Adapter I/O Device I/O Device Expansion bus I/O Bus.
1 Lecture 14 Buses and I/O Data Transfer Peng Liu
Mohamed Younis CMCS 411, Computer Architecture 1 CMCS Computer Architecture Lecture 26 Bus Interconnect May 7,
1 Chapter Seven. 2 SRAM: –value is stored on a pair of inverting gates –very fast but takes up more space than DRAM (4 to 6 transistors) DRAM: –value.
1 load [2], [9] Transfer contents of memory location 9 to memory location 2. Illegal instruction.
Networked Embedded Systems Pengyu Zhang & Sachin Katti EE107 Spring 2016 Lecture 11 Direct Memory Access.
1 Computer Architecture & Assembly Language Spring 2001 Dr. Richard Spillman Lecture 19 – IO II.
Lecture 2. A Computer System for Labs
Buses: Presentation Outline
Interconnection Structures
Module 12: I/O Systems I/O hardware Application I/O Interface
Chapter Seven.
I/O Memory Interface Topics:
What is a bus? Slow vehicle that many people ride together
Overview Parallel Processing Pipelining
EE 107 Fall 2017 Lecture 7 Serial Buses – I2C Direct Memory Access
Cache Memory Presentation I
Chapter 8-A BUS.
COMP2121: Microprocessors and Interfacing
Computer Architecture
Virtual Memory Main memory can act as a cache for the secondary storage (disk) Advantages: illusion of having more physical memory program relocation protection.
I/O Systems I/O Hardware Application I/O Interface
Operating System Concepts
13: I/O Systems I/O hardwared Application I/O Interface
Overview of Computer Architecture and Organization
Lecture 14 Buses and I/O Data Transfer
Peng Liu Lecture 14 I/O Peng Liu
Adapted from slides by Sally McKee Cornell University
Buses: Presentation Outline
Overview of Computer Architecture and Organization
CSC3050 – Computer Architecture
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Wireless Embedded Systems
BUSES FUNCTIONAL UNITS Ch.Ramesh Embedded Systems.
Chapter 13: I/O Systems.
Module 12: I/O Systems I/O hardwared Application I/O Interface
Presentation transcript:

Bus Interfacing Processor-Memory Bus Backplane Bus I/O Bus High speed memory bus Backplane Bus Processor-Interface bus This is what we usually mean by “the bus” ISA/PCI/VME I/O Bus Standard Interfaces SCSI, ATAPI

Continue Burst read from RAM Processor-Memory Bus This bus connects the CPU to RAM Designed for maximal bandwidth Usually wide, 32 bits or more To further increase bandwidth we use a Cache Burst access between cache and memory, early restart Cache Miss STALL, Start Burst read from RAM PA[3:2] 1 Release Pipe STALL Continue Burst read from RAM PA[3:2] 4 2 3

RAM Technology Static RAM used for Cache Fast 5-40ns (but expensive) Predictable response time (constant) Cache line n*32 bits Burst read can be made fast Exploit locality Dynamic RAM used for primary memory Needs “refresh”, (not constant access time) Bandwidth, (throughput) Bus width / Access time

Memory Bus 4*32 Each access transfers 128 bits 00xx 01xx 10xx 11xx 32 Each RAM bank is only accessed every fourth cycle on “burst read” 00xx 01xx 10xx 11xx

On Chip Cache (1st level) CP0 Using separate Instruction and Data caches, we can read a Hit simultaneously for both Instruction and Data In this model 1st level caches use virtual address, and must pass TLB on Cache miss 1st level cache must be fast Limited area on chip Usually 8-64 kb IM DE EX DM Instr Cache Data Cache

Backplane Bus Virtual Address Bus Adapter Primary Memory RAM CP0 Control 2nd level Cache IM DE EX DM Physical Addr 1st level Cache Data TLB HD Interface Serial Interface Graphics Adapter Sound Card

Synchronous Bus A single clock controls the protocol Pros Simple (one FSM) Fast Cons Clock skew limits bus length All devices work on the same speed (clock) Suitable for Processor-Memory Bus

Asynchronous Uses a handshaking to implement a transaction protocol Pros Versatile, generic protocols Dynamic data rate Cons More complex, two communication FSMs Slower, (but usually can be made quite fast)

Asynchronous Protocol ReadReq DataReady Ack Master Slave ReadReq Ack Wait for Data DataReady Ack

Increase Bus Bandwidth Timing & Protocol Faster timing, less protocol activity, (but less versatile) Data bus width More bus lines, (more expensive) Multiplexed bus, (shared lines for data/addr/control) More complexity, (does not guarantee better bandwidth) Block Transfers Latency will increase, (the time we wait for access)

Split Transaction Protocol When we don’t need the bus, release it! Improves throughput Increases latency and complexity Master Slave Master requests bus ReadReq Ack No one requests bus Wait for Data Slave requests bus DataReady Ack

Bus Arbitration Bus Master, (initiator usually the CPU) Slave, (usually the Memory) Arbitration signals BusRequest BusGrant BusPriority Higher priority served first Fairness, no request is locked out

Arbitration Protocol Daisy Chain, (VME bus) Simple (but limited speed, must pass higher priority devices) Fairness must be implemented by the devices Pri 4 Pri 3 Pri 2 Pri 1 BusRequest

Bus Arbitration Centralized Self Selection Many request/grant lines Complex controller, may be a bottleneck Self Selection Many request lines The one with highest priority self decides to take bus Collision Detection (Ethernet) One request line Try to access bus, If collision device backoff Try again in random + exponential time

Direct Memory Access (DMA) (2) RAM CP0 2nd level Cache IM DE EX DM 1st level Cache TLB We want to move data from HD interface to RAM (1) HD Interface Why go all the way to the CPU (1) and back to the memory bus (2)

Direct Memory Access DMA Processor Generates interrupt only 1) Generates BusRequest, waits for Grant 2) Put Address & Data on Bus 3) Increase Address, back to 2 until finished 4) Release Bus Generates interrupt only When finished If an error occurred

DMA and Virtual Memory If DMA uses Virtual address it needs to pass a TLB Go through the CPU’s TLB (no good) A TLB in the DMA processor (needs updating) If DMA uses Physical address Only transfer within one Page We give the DMA a set of Physical addresses (local TLB copy)

DMA and Caching INCONSISTENCY problem Routing All DMA though CPU We change the RAM contents, but not the cache We write to HD but the RAM holds “old” information Routing All DMA though CPU No good, spoils the idea! Software handling of DMA Cache: Flush selected cache lines to RAM Cache: Invalidate selected cache lines TLB/OS: Do not allow access to these pages until DMA finished Hardware Cache Coherence Protocol Complex, but very useful for multi processor systems