Datorteknik BusInterfacing bild 1 Bus Interfacing Processor-Memory Bus –High speed memory bus Backplane Bus –Processor-Interface bus –This is what we usually.

Slides:



Advertisements
Similar presentations
1 Dynamic Interconnection Networks Buses CEG 4131 Computer Architecture III Miodrag Bolic.
Advertisements

Bus Specification Embedded Systems Design and Implementation Witawas Srisa-an.
Bus Design.
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.
Computer Science & Engineering
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.
Lecture 25 Buses and I/O (2)
Interfacing Processors and Peripherals Andreas Klappenecker CPSC321 Computer Architecture.
Processor Design 5Z0321 Processor Design 5Z032 Chapter 8 Interfacing Processors and Peripherals Henk Corporaal.
1 CSE SUNY New Paltz Chapters 8 Interfacing Processors and Peripherals.
I/O Hardware n Incredible variety of I/O devices n Common concepts: – Port – connection point to the computer – Bus (daisy chain or shared direct access)
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.
1 Instant replay  The semester was split into roughly four parts. —The 1st quarter covered instruction set architectures—the connection between software.
Lecture 12 Today’s topics –CPU basics Registers ALU Control Unit –The bus –Clocks –Input/output subsystem 1.
Input/Output. Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower.
MicroComputer Engineering Bus slide 1 What is a bus? Slow vehicle that many people ride together –well, true... A bunch of wires...
Digital System Bus A bus in a digital system is a collection of (usually unbroken) signal lines that carry module-to-module communications. The signals.
1chapter 8 Review: Major Components of a Computer Processor Control Datapath Memory Devices Input Output Important metrics for an I/O system –Performance.
 Higher associativity means more complex hardware  But a highly-associative cache will also exhibit a lower miss rate —Each set has more blocks, so there’s.
1 (Based on text: David A. Patterson & John L. Hennessy, Computer Organization and Design: The Hardware/Software Interface, 3 rd Ed., Morgan Kaufmann,
I/O Example: Disk Drives To access data: — seek: position head over the proper track (8 to 20 ms. avg.) — rotational latency: wait for desired sector (.5.
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...
Chapter 4 MARIE: An Introduction to a Simple Computer.
Csci 136 Computer Architecture II – Buses and IO
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,
Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower than CPU.
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  1998 Morgan Kaufmann Publishers Chapter Seven.
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  2004 Morgan Kaufmann Publishers Page Tables. 2  2004 Morgan Kaufmann Publishers Page Tables.
1 load [2], [9] Transfer contents of memory location 9 to memory location 2. Illegal instruction.
Bus Interfacing Processor-Memory Bus Backplane Bus I/O Bus
Module 12: I/O Systems I/O hardware Application I/O Interface
Chapter Seven.
EE 107 Fall 2017 Lecture 7 Serial Buses – I2C Direct Memory Access
Chapter 8-A BUS.
Virtual Memory Main memory can act as a cache for the secondary storage (disk) Advantages: illusion of having more physical memory program relocation protection.
Lecture 14 Buses and I/O Data Transfer
Peng Liu Lecture 14 I/O Peng Liu
CSC3050 – Computer Architecture
BUSES FUNCTIONAL UNITS Ch.Ramesh Embedded Systems.
Presentation transcript:

Datorteknik BusInterfacing bild 1 Bus Interfacing Processor-Memory 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

Datorteknik BusInterfacing bild 2 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] Release Pipe STALL Continue Burst read from RAM PA[3:2] 1 234

Datorteknik BusInterfacing bild 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

Datorteknik BusInterfacing bild 4 Memory Bus 00xx01xx10xx11xx Each RAM bank is only accessed every fourth cycle on “burst read” 00xx01xx10xx11xx Each access transfers 128 bits 4*32 32

Datorteknik BusInterfacing bild 5 On Chip Cache (1st level) CP0 IMDEEXDM Instr Cache Data Cache 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

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

Datorteknik BusInterfacing bild 7 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

Datorteknik BusInterfacing bild 8 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)

Datorteknik BusInterfacing bild 9 Asynchronous Protocol ReadReq DataReady Ack MasterSlave ReadReq Ack Wait for Data DataReady Ack

Datorteknik BusInterfacing bild 10 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)

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

Datorteknik BusInterfacing bild 12 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

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

Datorteknik BusInterfacing bild 14 Bus Arbitration Centralized –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

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

Datorteknik BusInterfacing bild 16 Direct Memory Access DMA Processor –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

Datorteknik BusInterfacing bild 17 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)

Datorteknik BusInterfacing bild 18 DMA and Caching INCONSISTENCY problem –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