Download presentation
Presentation is loading. Please wait.
Published byRalph Lucas Modified over 9 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.