Download presentation
1
Chapter 6 External Memory
2
Types of External Memory
Magnetic Disk RAID (Redundant Array of Independent Disks) Removable Optical CD-ROM CD-Recordable (CD-R) CD-R/W DVD DVD-R DVD-RW Magnetic Tape
3
Magnetic Disk Disk substrate coated with magnetizable material (iron oxide…rust) Substrate originally was aluminium - Is now glass Improved surface uniformity Increases reliability Reduction in surface defects Reduced read/write errors Lower flight heights (head rides on air gap) Better stiffness Better shock/damage resistance
4
Disk Data Layout - Platter
5
Tracks and Cylinders
6
Multiple Platters
7
Disk Layout Methods Diagram
8
Physical Characteristics of Disk Systems
9
Inductive Write MR Read
10
Typical Hard Disk Drive Parameters
11
Formating Why? Must be able to identify position of data: start of track and sector Marks tracks and sectors
12
Winchester Disk Format
30 fixed-length sectors per track
13
Speed Parameters Seek time Latency (Rotational) Access time
Time to position head at track Latency (Rotational) Time for head to rotate to beginning of sector Access time - Seek time + Latency time Transfer rate - The rate at which data can be transferred after access T = b / N * 1/r Transfer time = bytes transferred / bytes/track * sec/revolution (track) Note: How does organization on disk (e.g. random vs sequential) effect total time?
14
Timing of Disk I/O Transfer
15
RAID – Goals: Speed, Reliability, Standardization
Redundant Array of Independent Disks (or Redundant Array of Inexpensive Disks ?) Set of physical disks viewed as single logical drive by O/S Data distributed across physical drives Can use redundant capacity to store parity information 7 “levels” of RAID organization (not a hierarchy) 0 not really a RAID organization (no redundancy) 1, 3 used for high transfer rate 5, 6 used for high transaction rate 2, 4 not commercially available Requirements for high transfer rate: High transfer rate along entire path between host memory to disk drives Application must make I/O requests that drive disks efficiently
16
Redundant Array of Independent Disks
Not RAID Not used Not used
17
RAID 0, 1, 2
18
RAID 0 Description: Characteristics: No redundancy (Not “really” RAID)
Data striped across all disks Round Robin striping Characteristics: Increase speed Multiple data requests probably not on same disk Disks seek in parallel A set of data is likely to be striped across multiple disks
19
RAID 1 Description: Characteristics: Mirrored Disks
Data is striped across disks 2 copies of each stripe on separate disks Read from either Write to both Characteristics: Recovery is simple Swap faulty disk & re-mirror No down time Expensive
20
RAID 2 (not used) Description: Characteristics: Disks are synchronized
Very small stripes Often single byte/word Error correction calculated across corresponding bits on disks Multiple parity disks store Hamming code error correction in corresponding positions Characteristics: Lots of redundancy Very Expensive Not used commercially
21
RAID 3 & 4
22
RAID 3 Description: Characteristics: Similar to RAID 2
Only one “redundant” disk, no matter how large the array Simple parity bit for each set of corresponding bits Characteristics: Data on failed drive can be reconstructed from surviving data and parity info Very high transfer rates Not very expensive or complex
23
RAID 4 (not used) Description: Characteristics:
Each disk operates independently Good for high I/O request rate Large stripes Bit by bit parity calculated across stripes on each disk Parity stored on parity disk Characteristics: Good for high request rates rather than high transfer rates Every write impacts the parity disk so it becomes a bottleneck. Not used commercially
24
RAID 5 & 6
25
Characteristics: RAID 5 Description: Very similar to RAID 4
Parity striped across all disks Round robin allocation for parity stripe Characteristics: Avoids RAID 4 bottleneck at parity disk Commonly used in network servers
26
Three disks need to fail for data loss
RAID 6 Description: Two parity calculations Stored in separate blocks on different disks User requirement of N disks needs N+2 disks Characteristics: High data availability Three disks need to fail for data loss Significant write penalty (two parity calculations)
27
RAID Comparison (1) Not RAID Not used
28
Raid Comparison (2) Not used
29
Types of External Memory
Magnetic Disk RAID (Redundant Array of Independent Disks) Removable Optical CD-ROM CD-Recordable (CD-R) CD-R/W DVD DVD-R DVD-RW Magnetic Tape
30
Optical Products
31
Optical Storage CD-ROM
Originally for audio 650Mbytes giving over 70 minutes audio Polycarbonate coated with highly reflective coat, usually aluminium Data stored as pits Read by reflecting laser Constant packing density Constant linear velocity
32
CD Construction
33
CD Layout
34
CD reader
35
Other speeds are quoted as multiples e.g. 24x
CD-ROM Drive Speeds Audio is single speed Constant linear velocity 1.2 m/sec Track (spiral) is 5.27km long Gives 4391 seconds = 73.2 minutes Other speeds are quoted as multiples e.g. 24x Quoted figure is maximum drive can achieve Note: CD-ROM has option of error correction (not on CD)
36
CD-ROM Format Mode 0 = blank data field
Mode 1 = 2048 byte data + error correction Mode 2 = 2336 byte data
37
Random Access on CD-ROM & CD-R
Difficult Process: Move head to rough position Set correct speed Read address Adjust to required location
38
CD-ROM CD-R for & against
Large capacity (?) Easy to mass produce Removable Robust Expensive for small runs Slow Read only
39
CD-RW Erasable Getting cheaper Mostly CD-ROM drive compatible
Phase change Material has two different reflectivities in different phase states
40
DVD - technology Multi-layer Very high capacity (4.7G per layer)
Full length movie on single disk Using MPEG compression
41
CD vs DVD
42
Two objectives had to be resolved to make the DVDs viable.
The linear velocity of a DVD must be held constant and be able to reproduce a vertical frame rate of frames/second Every DVD player had to have absolute tracking accuracy to insure the extremely narrow laser beam would scan exactly in the middle of the track where the data was recorded. The solution: The disk is pressed with the track grooves accurately pre-cut and encoded with a constant bit rate frequency. Thus a blank DVD disk isn't really blank at all.
43
Types of External Memory
Magnetic Disk RAID (Redundant Array of Independent Disks) Removable Optical CD-ROM CD-Recordable (CD-R) CD-R/W DVD DVD-R DVD-RW Magnetic Tape
44
Magnetic Tape Serial access Slow Very cheap
Used for backup and archive
45
Chapter 7 Input/Output
46
Input/Output Challenges
Must support a wide variety of peripherals Delivering different amounts of data At different speeds In different formats All slower than CPU and RAM Need standardized I/O Interfaces (modules) or channels
47
Generic Model of I/O Device Interface (Module)
48
I/O Interface Function
Support single or multiple devices Hide or reveal device properties Provide Control & Timing CPU Communication Device Communication Data Buffering Perhaps Error Detection
49
I/O Device Interface Diagram
50
Input/Output Alternatives
Programmed I/O Interface Interrupt driven I/O Interface Direct Memory Access (DMA) I/O Interface
51
Programmed I/O Programmer has direct control over I/O
Sensing status Read/write commands Transferring data CPU (program) must wait for I/O module to complete operation Usually not a good use of CPU time
52
Programmed I/O - details
Program initiates I/O operation Requests Write, sends data, and waits for done Requests Read and waits for data ready I/O module performs operation I/O module sets status bits (in Status Register) to confirm operation is done Program is continuously “Polling the I/O status register” checking status bits for I/O Ready/Done Actually program may wait or come back later Program completes I/O operation (processes data) Reads data or Writes next data Program continues In Programmed I/O, the program must wait for the I/O operation to be completed before moving on
53
Interrupt driven I/O Programmer Issues I/O command to I/O interface
Similar to step one in programmed I/O Programmer goes on to other work, i.e. does not have to “poll the device” and wait for I/O completion Interface Requests an Interrupt when I/O is ready Interface Requests “Service Routine (program) be executed” CPU switches context and executes the I/O service routine. At the end of the service routine, the context is switched back and the original program continues. Interrupt driven I/O relieves the need for polling I/O devices and programming the I/O service
54
Interrupt Physical Model
CPU General Purpose Registers Program counter (PC) Stack Pointer (SP) User stack Pointer Storage Supervisor Stack Pointer Storage Program Status Word (PSW) – Includes State – user/supervisor, priority, etc. Program Priority Condition Codes (CC) Hardware to communicate over the BUS Address, Data, and Data Control Bus status and control Memory User program Interrupt Service Routine Program Operating System Interrupt Vector Table Includes an entry that points to the Interrupt Service Routine (Interrupt vector #) Device Status/Control Register(s) – Includes: Interrupt Enable bit Interrupt bit (sometimes called ready or done) Priority Level for Interrupt Service Routine (In hardware or firmware) Interrupt vector number (In hardware or firmware) Hardware to communicate with CPU over the BUS
55
Interface Registers Keyboard Status Register (16 bit) Keyboard Device:
Bit 15 Done Bit Bit 14 Interrupt Enable Bit Bits 0-2 Priority Keyboard Data Register (16 bit) Contains character entered Keyboard Interrupt Vector (16 bit) Contains the “address” in the Interrupt Vector Table Display Device: Display Status Register (16 bit) Bit 15 Ready Bit Display Data Register (16 Bit) Contains character to be displayed Display Interrupt vector (16 bit)
56
Interrupt Sequence What does the programmer do?
What does the computer do?
57
Interrupt Sequence Programmer Action: Enable Interrupts by setting “intr enable” bit in Device Status Reg Enabling Mechanism for device: When device wants service, and its enable bit is set (i.e, the I/O device has the right to request service), and the device priority is higher than the priority of the presently running program, and execution of an instruction is complete, then Process to Service the Interrupt: The Processor saves the “state” of the program (must be able to return to program) The Processor goes into Privileged (or Supervisor) Mode The Priority level is set (established by the interrupting device) The context is switched The user SP is saved and the Supervisor SP loaded The (PC) and the (PSR) are PUSHED onto the Supervisor Stack The contents of the other registers are not saved. Why? The CC’s are cleared. Why? The Processor Loads the PC from the Interrupt Vector Table The device provides the Vector Table entry number Interrupt Service Routine is executed The routine ends with an “RTI” instruction The context is switched back The stored user: PSR (POP into PSR), PC (POP into PC), USP loaded (POP into SP) The Processor goes into User mode 8) And the next instruction in the original program is fetched
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.