Dokumen tersebut membahas tentang Direct Memory Access (DMA) yang berguna untuk memindahkan blok data secara langsung antara perangkat eksternal dan memori utama tanpa campur tangan CPU, serta menjelaskan beberapa metode DMA seperti first-party DMA dan third-party DMA serta proses kerjanya.
2. Direct memory access (DMA) adalah suatu alat pengendali
khusus yang disediakan untuk memungkinkan transfer
blok data langsung antar perangkat eksternal dan memori
utama, tanpa intervensi terus menerus dari prosesor.
DMA juga bisa disebut sebagai sebuah prosesor khusus
(special purpose processor) yang berguna untuk
menghindari pembebanan CPU utama oleh program I/O
(PIO).
Minggat Menu Mbalek Lanjut
3. a) Third−party DMA, untuk melakukan operasi transfer
data menggunakan DMA controller yang ada pada
motherboard.
b) First−party DMA (busmastering DMA). Untuk
melakukan operasi transfer data yang dikerjakan oleh
bagian logic di interface card.
Minggat Menu Mbalek Lanjut
5. • Transfer data dari buffer ke memori atau sebaliknya dilakukan
per-karakter.
• dimana setiap kali transfer selalu ada interrupt dari CPU
sebelum dan sesudah transfer.
• Jika waktu untuk mentransfer satu karakter sebesar 2 μs dan
sekali interrupt butuh 1ms, maka untuk mentransfer data dari
memori kebuffer butuh 4 μs per karakter.
• Dengan menggunakan DMA transfer data dapatdilakukan
secara langsung oleh device controller per-blok tanpa ada
campur tangan dari CPU.
• CPU hanya memberikan interrupt sebelum dansesudah
transfer setiap blok.
Minggat Menu Mbalek Lanjut
7. Fungsi dari DMA sendiri adalah agar CPU dapat
melakukan pekerjaan atau instruksi yang berbeda
ketika melakukan operasi baca tulis dari
perangkat peripheral.
Minggat Menu Mbalek Lanjut
8. • Metode yang sangat baku dan sederhana
disebut HALT, atau Burst
• Metode yang mengikutsertakan
pengendali DMA yang biasa disebut cycle
stealing mode
Minggat Menu Mbalek Lanjut
9. 1) I/O Device terhubung dengan DMA controller memberikan
instruksi yang harus di proses
2) DMA controller mengirimkan pemberitahuan ke processor
akan ada proses yang dihandle oleh DMA controller
3) Processor menginformasikan ke memory bahwa DMA akan
mengakses memory untuk pemrosesan suatu instruksi
4) DMA Controller terhubung dengan memory dan akses
alamat, data yang diperlukan
5) DMA controller mengirimkan hasil proses kembali ke I/O
device
6) Jika proses selesai, DMA controller kembali melaporkan ke
processor bahwa proses telah beres dilakukan.
Minggat Menu Mbalek Lanjut
10. 1) Prosesor menyiapkan DMA transfer dengan menyedia
kan data-data dari perangkat, operasi yang akan
ditampilkan, alamat memori yang menjadi sumber dan
tujuan data, dan banyaknya byte yang ditransfer.
2) Pengendali DMA memulai operasi (menyiapkan bus,
menyediakan alamat, menulis dan membaca data),
sampai seluruh blok sudah di transfer.
3) Pengendali DMA meng-interupsi prosesor dimana
selanjutnya akan ditentukan tindakan berikutnya.
Minggat Menu Mbalek Lanjut
12. Implementasi DMA
Dalam pelaksanaannya, beberapa komputer
menggunakan memori fisik untuk proses DMA
, sedangkan jenis komputer lain menggunakan
alamat virtual dengan melalui tahap
“penerjemahan” dari alamat memori virtual
menjadi alamat memori fisik, hal ini
disebutDirect Virtual-Memory Address atau
DVMA. Keuntungan dari DVMA adalah dapat
mendukung transfer antara dua
memori mapped device tanpa intervensi CPU.
Minggat Menu Mbalek Lanjut
13. Ada tiga konfigurasi modul pada DMA:
1. Konfigurasi 1 (Single Bus)
2. Konfigurasi 2 (Single Bus, Integrated DMA-I/O)
3. Konfigurasi 3 (IO Bus)
Minggat Menu Mbalek Lanjut
14. Proses Handshaking pada DMA
Proses handshaking antara pengendali DMA dan
pengendali perangkat dilakukan melalui sepasang kabel
yang disebut DMA-request dan DMA-acknowledge.
Pengendali perangkat mengirimkan sinyal melalui DMA-request
ketika akan mentransfer data sebanyak satu
word.
Setelah sinyal melalui kabel DMA-acknowledge diterima,
pengendali perangkat mengirimkan data yang dimaksud
dan mematikan sinyal pada DMA-request. Hal ini
berlangsung berulang-ulang sehingga
disebut handshaking
Minggat Menu Mbalek Lanjut
15. Oleh Kelompok 13:
Ahmad Fajar
Terima Kasih
Minggat Menu Mbalek Lanjut