dma
DESCRIPTION
DMA. Transfer Mode. The transfer mode describes the way in which the data moves from the hard disk through the interface (IDE/ATA) and to the memory. For example, it tells how fast data is transferred or what device is in charge of the transfer. There are two basic categories - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/1.jpg)
CSIT 301 (Blum) 1
DMA
![Page 2: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/2.jpg)
CSIT 301 (Blum) 2
Transfer Mode• The transfer mode describes the way in which the
data moves from the hard disk through the interface (IDE/ATA) and to the memory.
• For example, it tells how fast data is transferred or what device is in charge of the transfer.
• There are two basic categories– PIO (Programmed I/O) Mode
• The processor micro-manages data transfer
– DMA (Direct Memory Access) Mode• The processor delegates data transfer
![Page 3: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/3.jpg)
CSIT 301 (Blum) 3
Programmed I/O (PIO) Modes
• In the PIO category, the processor controls the data transfer.
• There are various PIO modes which differ mainly by speed.
• Through the early to mid-90s PIO was the standard way to transfer data to the hard disk.
• The original ATA standards document defined the first three modes.
• With ATA-2, two faster modes were introduced.
![Page 4: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/4.jpg)
CSIT 301 (Blum) 4
Standard PIO Modes
3.3 MB/s = 3.3 106 bytes / second
= (2 bytes / 600 10-9 s)
Two bytes are transferred every 600 nanoseconds.
![Page 5: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/5.jpg)
CSIT 301 (Blum) 5
External rates• The PIO rates on the previous slide are external rates
meaning that they reflect the rate that data in the hard disk’s buffer/cache can be transferred.
• Recall that access times to locate and read from a random sector are of the order of milliseconds.– Reading a sector (512 bytes) in 20 ms would correspond to
a rate of 25 KB/s.
• If one were not buffering and transferring consecutive data, the PIO mode rates would be sufficient.
• But we do transfer buffered data and the PIO transfer rates are considered prohibitively slow by today’s standards.
![Page 6: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/6.jpg)
CSIT 301 (Blum) 6
PIO is too, too slow• PIO is slow in two ways:
– One does not achieve the same data transfer rates as with Ultra DMA, which is the standard transfer mode used for IDE/ATA today.
– Because the processor controls the details of the transfer in PIO, the processor is distracted from performing other tasks.
• Despite its slowness, PIO is still around because:– PIO is simple (built into the BIOS so it does not require
drivers). – Backward compatibility – Can be used as a backup when something goes wrong with
DMA.
![Page 7: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/7.jpg)
CSIT 301 (Blum) 7
DMA
• The alternative to PIO is DMA, Direct Memory Access.
• In DMA, a device transfers information to or from the memory directly rather than in a processor-controlled fashion.
• DMA has been around awhile but it was not always well supported early on. But speed requirements have made it preferred over PIO.
![Page 8: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/8.jpg)
CSIT 301 (Blum) 8
Various Modes
• As with PIO, DMA has various modes differing mainly by speed.
• DMA modes split into two categories:– Single-word modes which send one word (two
bytes) at a time – Multiple-word modes which send several words
in rapid succession (rather like the idea of bursting that accounts for improved memory speeds).
![Page 9: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/9.jpg)
CSIT 301 (Blum) 9
![Page 10: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/10.jpg)
CSIT 301 (Blum) 10
Assume it’s multiword
• The single-word DMA modes are too slow, today it is understood that DMA is multiword DMA and the term is rarely mentioned and usually implied.
• In fact, the single-word DMA modes were dropped from the standards with ATA-2.
• Ultra DMA is multiword.
![Page 11: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/11.jpg)
CSIT 301 (Blum) 11
First Party
“The party of the first part shall be known in this contract as the party of the first part”
![Page 12: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/12.jpg)
CSIT 301 (Blum) 12
First Party vs. Third Party
• In Third-Party DMA there is a third device, the DMA controller mediating the transfer between the hard disk and memory. – Third party DMA is slow and old fashioned.
• In First-Party DMA, a.k.a. bus mastering, the middle man is eliminated. The hard drive controls the transfer of data between itself and memory. – The device (hard drive in this case) takes control of
(masters) the bus along which the information is sent.
![Page 13: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/13.jpg)
CSIT 301 (Blum) 13
Ultra DMA
• DMA only became the norm with the introduction of Ultra DMA. – It just wasn’t well supported before.
• DMA gained the advantage over PIO when Ultra DMA/33 doubled the interface transfer rate.– Support for it also improved.
• Today, Ultra DMA is an industry standard.
![Page 14: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/14.jpg)
CSIT 301 (Blum) 14
Ultra DMA uses DDR and CRC
• One feature that made Ultra DMA “ultra” was that it transferred data on both the positive and negative edges of the clock.– Same idea as in DDR (Double Data Rate) memory
• As Ultra DMA pushed the limit on transfer rate, it made the occurrence of errors somewhat more likely. Thus it introduced a CRC (Cyclic Redundancy Check) as part of the standard. – Recall CRC is error detection. If an error occurs in
transmission the data is retransmitted.
![Page 15: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/15.jpg)
CSIT 301 (Blum) 15
Ultra DMA transfer rates
DMA finally beats PIO Mode 4’s 16.7 MB/s with the added bonus of freeing up the processor.
The modes are usually named after their maximum transfer rate and the interface they use: Ultra ATA/100 instead of Ultra DMA/Mode 5.
![Page 16: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/16.jpg)
CSIT 301 (Blum) 16
New cable needed• The faster speeds did require a change in the cable
used to connect the drive. The 80-conductor ATA/EDE cable.
• Color Code– Blue: connects to the host (motherboard or controller).
– Gray: connects to the slave drive (if there is one)
– Black: connects to the master drive
![Page 17: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/17.jpg)
CSIT 301 (Blum) 17
80 wires and 40 pins??• Signals are varying currents. • Currents produce magnetic fields, varying currents
produce varying magnetic fields. • Varying magnetic fields produce currents. • Oops, the current in wire 1 begins to change the
current in wire 2. • There is interference (a.k.a. cross talk)• The extra wires shield the signal-carrying wires
from each other.
![Page 18: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/18.jpg)
CSIT 301 (Blum) 18
Block Mode
• Certain BIOSs allow for a Block Mode setting. Block Mode allows 16 or 32 sectors (512 bytes each) to be handled using a single interrupt (even if the processor is not running the show it needs to know something has happened).
![Page 19: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/19.jpg)
CSIT 301 (Blum) 19
IRQs
• Devices cannot interrupt the processor whenever they want. Instead they must request the processor’s attention.
• Interrupt Request Numbers are an addressing scheme so that the processor can determine which device wanted its attention when when it gets around to checking for interrupts.
![Page 20: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/20.jpg)
CSIT 301 (Blum) 20
Resources
• Many devices might want to interrupt the processor, so devices are assigned IRQs. – Usually this is done automatically. Occasionally two
devices vie for the same slot and a conflict arises.
• Devices other than the hard drive transfer information to or from memory and they use DMA as well. Devices are assigned ranges of memory they can use for DMA so as to avoid conflicts.
• IRQs and DMA ranges are called system resources.
![Page 21: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/21.jpg)
CSIT 301 (Blum) 21
![Page 22: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/22.jpg)
CSIT 301 (Blum) 22
![Page 23: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/23.jpg)
CSIT 301 (Blum) 23
![Page 24: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/24.jpg)
CSIT 301 (Blum) 24
Viewing Resources for a Device
![Page 25: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/25.jpg)
CSIT 301 (Blum) 25
Viewing Resources for a Device
![Page 26: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/26.jpg)
CSIT 301 (Blum) 26
Viewing Resources for a Device
Double click
![Page 27: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/27.jpg)
CSIT 301 (Blum) 27
Viewing Resources for a Device
![Page 28: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/28.jpg)
CSIT 301 (Blum) 28
A Different Device
![Page 29: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/29.jpg)
CSIT 301 (Blum) 29
Yet Another Device
![Page 30: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/30.jpg)
CSIT 301 (Blum) 30
ATAPI
• The ATA/IDE Interface was originally designed for hard drives only.
• AT Attachment Packet Interface (ATAPI) is a protocol that allows devices that are not hard drives to use this interface. – Instructions are sent to it in “packets”
![Page 31: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/31.jpg)
CSIT 301 (Blum) 31
ATA Standard Summary Table
![Page 32: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/32.jpg)
CSIT 301 (Blum) 32
Connecting a Hard Drive
• There are typically three sets of pins and/or connectors associated with a hard drive– Power (Molex): the juice that allows it to
operate – Data Interface: where data, addresses,
instructions enter and leave – Jumper: switches that specify in what mode
the drive will operate
![Page 33: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/33.jpg)
CSIT 301 (Blum) 33
Power, Jumper and Data Interface
![Page 34: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/34.jpg)
CSIT 301 (Blum) 34
Power Connectors
The larger is the so-called Molex connector.
The smaller is called the mini connector.
![Page 35: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/35.jpg)
CSIT 301 (Blum) 35
Two Categories• There are two basic categories of hard drives
which have different interfaces. • IDE/ATA
– ATA (Advanced Technology Attachment) is the formal name for IDE (Integrated Drive Electronics) is one of the standard interfaces between the motherboard and drives
• SCSI: – Small Computer System Interface (“scuzzy”) is another
interface particularly well suited for connecting many devices to
![Page 36: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/36.jpg)
CSIT 301 (Blum) 36
Different Interfaces/Different Connectors
• IDE/ATA uses a 40-pin rectangular connector.
• SCSI uses one of the following– 50-pin D-shaped connector (narrow SCSI) – 68-pin D-shaped connector (wide SCSI)– or 80-pin D-shaped connector (wide SCSI
using single connector attachment (SCA))
![Page 37: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/37.jpg)
CSIT 301 (Blum) 37
Data Interface Connectors
ATA/IDE
SCSI
![Page 38: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/38.jpg)
CSIT 301 (Blum) 38
Serial ATA
• The older, regular ATA is a parallel data connection, it is being replaced by serial ATA (SATA). – Similar to the USB port taking over roles previously
played by the parallel port, the notion that serial connections are prohibitively slow has been overcome.
– During this period of transition from a parallel ATA standard to a serial ATA standard, one has to be wary of compatibility issues.
![Page 40: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/40.jpg)
CSIT 301 (Blum) 40
A 15-pin Serial ATA power
connector.
![Page 41: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/41.jpg)
CSIT 301 (Blum) 41
A 7-pin Serial ATA data cable.
![Page 42: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/42.jpg)
CSIT 301 (Blum) 42
SATA
• The serial connection not only requires fewer wires (making it more flexible) but also allows those wires to be longer. – Also with fewer wires, there is less of a chance for
crosstalk (interference).– SATA cables can be up to 1 m (39 in.) long. PATA
ribbon cables, in comparison, carry either 40 or 80-conductor wires and are limited to 46 cm (18 in.) in length
– PATA: Parallel Advanced Technology Attachment
![Page 43: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/43.jpg)
CSIT 301 (Blum) 43
SATA specifications
• First-generation Serial ATA interfaces, also known as SATA/150, run at 1.5 gigahertz.– (3.0 Gbs with SATA 3Gb/s (sometimes known as
SATA II) • This encoding scheme has an efficiency of 80%,
resulting in an actual data transfer rate of 1.2 gigabits per second (Gbit/s), or 150 megabytes per second.
• Following another trend, the SATA standard uses low voltages (specifically Low voltage differential signaling LVDS).
![Page 44: DMA](https://reader031.vdocuments.us/reader031/viewer/2022013004/5681593e550346895dc67bd2/html5/thumbnails/44.jpg)
CSIT 301 (Blum) 44
References• PC Hardware in a Nutshell (Thompson and
Thompson)• http://www.pcguide.com • All-in-One A+ Certification, Meyers and
Jernigan• http://www.webopedia.com • http://www.serialata.org • http://en.wikipedia.org/wiki/SATA