Presentation is loading. Please wait.

Presentation is loading. Please wait.

Fall 2006 1 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Computer Organization Lecture 22 Project 6 Hard disk drive Bus arbitration.

Similar presentations


Presentation on theme: "Fall 2006 1 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Computer Organization Lecture 22 Project 6 Hard disk drive Bus arbitration."— Presentation transcript:

1 Fall 2006 1 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Computer Organization Lecture 22 Project 6 Hard disk drive Bus arbitration

2 Fall 2006 2 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Project 6 Due: Friday, December 1 Microprogram the instruction set Complete MDP16 design Execute a simple program Extra credit for additional instructions

3 Fall 2006 3 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering MDP16 execution Program stores 0x25, 0x35, and 0x45 at 0x100, 0x101, 0x102 and reads the numbers back

4 Fall 2006 4 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering MicroROM contents

5 Fall 2006 5 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Example trace $0 = 0x100 for address of sw

6 Fall 2006 6 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Example trace, continued. Mem[100] = 0x25, Mem[101] = 0x35, Mem[102] = 0x45

7 Fall 2006 7 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Example trace, continued. Now load 0x100, 0x101, 0x102 into $1

8 Fall 2006 8 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Computer components Input: receives information from external world Output: transmits information to external world Memory: holds programs and data Data path: physical route that carries info Control: coordinates overall flow of info

9 Fall 2006 9 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering System Bus The bus interconnects system agents

10 Fall 2006 10 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering System view of a computer One Agent at-a-time owns the bus ··· Signal 0 Signal n Agent 0 Agent n ··· Bus Signal 1

11 Fall 2006 11 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Agents Goal: perform some function (memory, I/O, etc.) Types –Master: can own the bus, assert signals –Slave: only responds when requested by master Operations –Memory or I/O space –Read or write –Interrupt

12 Fall 2006 12 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering What type of agent? AgentMasterSlave CPUYN Memory Disk Display Keyboard Printer

13 Fall 2006 13 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Moving-head disk Disk buses include EIDA, SATA, SCSI Performance = seek time + latency time + transfer time NOTE: Unique location denoted CHS  cylinder, head, sector

14 Fall 2006 14 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Disk features Platter: magnetically coated disk Side: one of two platter surfaces Arm: lever arm that swings across platter Head: sensor that reads/writes data on platter Track: circular region on platter Cylinder: collection of tracks with same radius Sector: region of a track, basic unit of data (B)

15 Fall 2006 15 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Disk performance Seek: time to move arm Latency (rotational): time for platter to rotate to requested sector Transfer: time to move data across bus

16 Fall 2006 16 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering High-end disk example Buffer = disk cache Host = PC disk controller

17 Fall 2006 17 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Find disk bandwidth, transfer time? CLK = 100 ns, 32-bit data bus, 5 clocks/bus cycle, 512B sector

18 Fall 2006 18 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Find the disk average latency? Twelve 5 cm platters, 7200 rpm, 120 GB

19 Fall 2006 19 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering System view of a computer One Agent at-a-time owns the bus ··· Signal 0 Signal n Agent 0 Agent n ··· Bus Signal 1

20 Fall 2006 20 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Example bus control signals?

21 Fall 2006 21 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Bus cycle (phases) 1.Arbitration: owner defined 2.Address: ID of memory or I/O provided 3.Data: information transferred 4.Response: indicates completion of cycle Bus phases similar to instruction steps

22 Fall 2006 22 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Bus timing Clk Breq Bgnt Ack Data Bus Driven ARB ADRDATARESP Address Bus Driven

23 Fall 2006 23 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Bus timing example Shared signals driven by different agents Disk Mem Disk Disk-Adr Mem-data Mem Bus Cycle A little more complex

24 Fall 2006 24 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Bus arbitration Serial: priority in-out, Request-Grant, sent from agent-to-agent (daisy-chain) Parallel: each agent asserts unique request (centralized), one grant asserted Distributed –Self-selection: agent codes combined to identify owner –Collision detection: request repeated after a delay

25 Fall 2006 25 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Serial arbiter Each priority circuit ripples to next in line

26 Fall 2006 26 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Design the priority circuit? ReqPinGntPout 00 01 10 11 Gnt = Pout =

27 Fall 2006 27 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Centralized arbitration More & fast logic, flexible algorithm Device 1Device 2Device n Central Arbiter Req 1 Gnt 1 Req 2 Gnt 2 Req n Gnt n Fixed, round-robin, multi-level, etc.

28 Fall 2006 28 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Fixed centralize arbiter

29 Fall 2006 29 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Simple RR arbiter 00 10 11 01 Req2 Req1 Req3 Req0 Gntn = Staten  Reqn

30 Fall 2006 30 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering

31 Fall 2006 31 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering What type of agent? AgentMasterSlave CPUYN MemoryNY DiskYY DisplayYY KeyboardNY PrinterNY High-performance agents are often Masters

32 Fall 2006 32 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Find disk bandwidth, transfer time? CLK = 100 ns, 32-bit data bus, 5 clocks/bus cycle, 512B sector

33 Fall 2006 33 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Find the disk average latency? Twelve 5 cm platters, 7200 rpm, 120 GB

34 Fall 2006 34 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Example bus control signals Bus request, bus grant Read, write Memory space, I/O space Address valid, data valid Wait Interrupt request, interrupt acknowledge

35 Fall 2006 35 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Design the priority circuit? ReqPinGntPout 0000 0101 1000 1110 Gnt = Req · Pin Pout = Req · Pin


Download ppt "Fall 2006 1 EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Computer Organization Lecture 22 Project 6 Hard disk drive Bus arbitration."

Similar presentations


Ads by Google