modul Direct Memory Access (DMA)
Hello kawan, jumpa lagi kita hari ini, beruntunglah kalian karena hari ini gue masih saja mau nge-share sebuah ilmu buat kalian. Terus pantengin ya!!!!
Kali ini kita akan nge-bahas tentang DMA, apa pula itu bah, Makanya buka internet, ga ngerti internet, ndesoooooo .....
Oke tanpa banyak cincong langsung aja gue mulai pembahasan kita kali ini .....
DMA ialah sebuah prosesor khusus (special purpose processor) yang berguna untuk menghindari pembebanan CPU utama oleh program I/O (PIO). Untuk memulai sebuah transfer DMA, host akan menuliskan sebuah DMA command block yang berisi pointer yang menunjuk ke sumber transfer, pointer yang menunjuk ke tujuan transfer, dan jumlah byte yang ditransfer, ke memori. CPU kemudian menuliskan alamat command block ini ke pengendali DMA, sehingga pengendali DMA dapat kemudian mengoperasikan bus memori secara langsung dengan menempatkan alamatalamat pada bus tersebut untuk melakukan transfer tanpa bantuan CPU.
Tiga langkah dalam transfer DMA:
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.
Pada dasarnya, DMA mempunyai dua metode yang berbeda dalam mentransfer data. Metode yang pertama ialah metode yang sangat baku dan sederhana disebut HALT, atau Burst Mode DMA, karena pengendali DMA memegang kontrol dari sistem bus dan mentransfer semua blok data ke atau dari memori pada single burst. Selagi transfer masih
dalam prosres, sistem mikroprosessor diset idle, tidak melakukan instruksi operasi untuk menjaga internal register. Tipe operasi DMA seperti ini ada pada kebanyakan komputer.
Metode yang kedua, mengikutsertakan pengendali DMA untuk memegang kontrol dari sistem bus untuk jangka waktu yang lebih pendek pada periode dimana mikroprosessor sibuk dengan operasi internal dan tidak membutuhkan akses ke sistem bus. Metode DMA ini disebut cycle stealing mode. Cycle stealing DMA lebih kompleks untuk diimplementasikan
dibandingkan HALT DMA, karena pengendali DMA harus mempunyai kepintaran untuk merasakan waktu pada saat sistem bus terbuka. Download
Kelemahan I/O terprogram dan Interrupt- Driven I/O
Proses yang terjadi pada modul I/O masih melibatkan CPU secara langsung, berimplikasi pada :
• Kelajuan transfer I/O yang tergantung kecepatan operasi CPU.
• Kerja CPU terganggu karena adanya interupsi secara langsung
Prinsip kerja DMA
• CPU akan mendelegasikan kerja I/O kepada DMA
• CPU hanya akan terlibat pada awal proses untuk memberikan instruksi lengkap pada DMA dan akhir proses saja
• CPU dapat menjalankan proses lainnya tanpa banyak terganggu dengan interupsi
• Melaksanakan transfer data secara mandiri :
1. DMA memerlukan pengambilalihan kontrol bus dari CPU
2. DMA akan menggunakan bus bila CPU tidak menggunakannya atau DMA memaksa CPU untuk menghentikan sementara penggunaan bus
3. Teknik cyclestealing, modul DMA mengambil alih siklus bus
Klasifikasi perangkat eksternal
• Human Readable, yaitu perangkat yang berhubungan dengan manusia sebagai
• pengguna komputer. Contoh: monitor, keyboard, mouse, printer, joystick, disk drive.
• Machine readable, yaitu perangkat yang berhubungan dengan peralatan. Biasanya berupa modul sensor dan tranduser untuk monitoring dan kontrol suatu peralatan atau sistem.
• Communication, yatu perangkat yang berhubungan dengan komunikasi jarak jauh. Contoh: NIC dan modem
Klasifikasi berdasar arah data
1. Perangkat output
2. Perangkat input
3. Kombinasi output-input.
Contoh perangkat output: monitor, proyektor dan printer.
Contoh perangkat input : keyboard, mouse, joystick, scanner, mark reader, bar code reader
Jika Timbul pertanyaan seperti ini, kira-kira kalian akan jawab apa ya teman-teman ??
Dalam semua system secara virtual yang memiliki modul DMA, akses DMA ke memori utama diberi perioritas lebih tinggi dibandingkan dengan akses CPU ke memori utama. Sebutkan alasannya.
Dan seandainya gue jawab gini apa kalian akan protes dan memenjarakan saya??
DMA (direct memory access) merupakan suatu konsep yang akan membuat komunikasi informasi antara peripheral device dengan main memory akan lebih efisien, karena cara kerja dari DMA ini biasanya digunakan untuk peripheraldevice yang mempunyai kecepatan tinggi yang membutuhkan pengiriman blok data besar. Sedangkan CPU (central processing unit) juga sama kerjanya dengan DMA hanya kinerjadalam CPU ini tidak efisien, karena kecepatan transfer I/O yang tergantungkecepatan operasi CPU Dan bukan hanya itu saja, kerja CPU terganggu karena adanya interupsi secara langsung.
Okelah segini aja teman-teman untuk hari ini ...
ngopi y mbah
ReplyDeleteiy mbak silahkan
ReplyDelete