Académique Documents
Professionnel Documents
Culture Documents
I/O Systems
Network
Processor Processor
Input Input
Control Control
Memory Memory
Datapath Datapath
Output Output
interrupts
Processor
Cache
Processor/Memory
Bus
PCI Bus
I/O Busses
° Throughput:
•The number of tasks completed by the server in unit time
•In order to get the highest possible throughput:
- The server should never be idle
- The queue should never be empty
° Response time:
•Begins when a task is placed in the queue
•Ends when it is completed by the server
•In order to minimize the response time:
- The queue should be empty
- The server will be idle
ECE468 io.7 Adapted from ©VC and ©UCB
Response
Time (ms)
300
200
100
Server
Queue
Producer
Queue Server
° Supercomputer application:
•Large-scale scientific problems
° Transaction processing:
•Examples: Airline reservations systems and banks
° File system:
•Example: UNIX file system
° Transaction processing:
•Examples: airline reservations systems, bank ATMs
•A lot of small changes to a large body of shared data
° Partner:
•Either a human or a machine is at the other end of the I/O device
•Either feeding data on input or reading data on output
° Data rate:
•The peak rate at which data can be transferred:
- Between the I/O device and the main memory
- Or between the I/O device and the CPU
Magnetic Disk
Registers
Cache
y
Memor
° Purpose:
Disk
Platters
Track
Sector
° A stack of platters, a surface with a magnetic coating
λ µ
Disk Disk
Controller
Queue
Processor
Disk Disk
Controller
Queue
Number of arms/box 12 1 1
° 3 platters, 6 heads
° RPM: 7200
° Interleave: 1:1
° 512 byte sector, rotate at 5400 RPM, advertised seeks is 12 ms, transfer
rate is 4 BM/sec, controller overhead is 1 ms, queue idle so no service
time
° If real seeks are 1/3 advertised seeks, then its 10.6 ms, with rotation delay
at 50% of the time!
Disk Arrays
Network
Processor Processor
Input Input
Control Control
Memory Memory
Datapath Datapath
Output Output
Processor
Input
Control
Memory
Datapath
Output
° Versatility:
•New devices can be added easily
•Peripherals can be moved between computer
systems that use the same bus standard
° Low Cost:
•A single set of wires is shared in multiple ways
Disadvantages of Buses
° Control lines:
•Signal requests and acknowledgments
•Indicate what type of information is on the data lines
° Data lines carry information between the source and the destination:
•Data and Addresses
•Complex commands
Input Operation
° Input is defined as the Processor receiving data from the I/O device:
Backplane Bus
Processor Memory
I/O Devices
° Example: IBM PC
° I/O buses tap into the processor-memory bus via bus adaptors:
•Processor-memory bus: mainly for processor-memory traffic
•I/O buses: provide expansion slots for I/O devices
° Apple Macintosh-II
•NuBus: Processor, memory, and a few selected I/O devices
•SCSI Bus: the rest of the I/O devices
A Three-Bus System
Bus
Adaptor
Bus
Adaptor I/O Bus
Backplane Bus
Bus I/O Bus
Adaptor
° Synchronous Bus:
•Includes a clock in the control lines
•A fixed protocol for communication that is relative to the clock
•Advantage: involves very little logic and can run very fast
•Disadvantages:
- Every device on the bus must run at the same clock rate
- To avoid clock skew, they cannot be long if they are fast
° Asynchronous Bus:
•It is not clocked
•It can accommodate a wide range of devices
•It can be lengthened without worrying about clock skew
•It requires a handshaking protocol
BReq
BG
R/W Cmd+Addr
Address
BReq
BG
R/W Cmd+Addr
Address
Wait
° Block transfers:
•Allow the bus to transfer multiple words in back-to-back bus cycles
•Only one address needs to be sent at the beginning
•The bus is not released until the last word is transferred
•Cost: (a) increased complexity
(b) decreased response time for request
A Handshaking Protocol
ReadReq 1 2 3
Data Address Data
2 4 6
5
Ack 6 7
4
DataRdy
Req
Ack
t0 t1 t2 t3 t4 t5
° t0 : Master has obtained control and asserts address, direction, data
Read Transaction
Data
Read
Req
Ack
t0 t1 t2 t3 t4 t5
° t0 : Master has obtained control and asserts address, direction, data
° Block transfers:
•Allow the bus to transfer multiple words in back-to-back bus cycles
•Only one address needs to be sent at the beginning
•The bus is not released until the last word is transferred
•Cost: (a) increased complexity
(b) decreased response time for request
° Request-Reply
•CPU initiates a read or write transaction
- address, data, and command
•then waiting for reply from memory
° + bandwidth is improved
Device 1 Device N
Highest Device 2 Lowest
Priority Priority
° Advantage: simple
° Disadvantages:
•Cannot assure fairness:
A low-priority device may be locked out indefinitely
•The use of the daisy chain grant signal also limits the bus speed
Device 1 Device N
Device 2
Grant Req
Bus
Arbiter
ReqA GrantA
ReqB Arbiter GrantB
Highest priority: ReqA
ReqC GrantC
Lowest Priority: ReqB
Clk
Clk
ReqA
ReqB
GrA
GrB
SetGrA
ReqA G0 J
3-bit D Register
P0 ReqA Q GrantA
K
ReqB Priority Clk
P1 SetGrB
G1 J GrantB
ReqC ReqB Q
P2 K
Clk
SetGrC
EN G2 J GrantC
ReqC Q
Clk K
Clk
P0
G0
P1 G1
P2 G2
EN
JK Flip Flop
J
J K Q(t-1) Q(t)
0 0 0 0
0 0 1 1 Q
D
0 1 x 0
1 0 x 1 K
1 1 0 1 Q
1 1 1 0
Clocks/transfer 4 5 4?
Slots 16 9 10
Busses/system 1 1 1 2
° Examples
•graphics
•fast networks
Break
° Bus Parking
•retain bus grant for previous master until another makes request
•granted master can start next transfer without arbitration