Langsung ke konten utama

DMA (Direct Access Memory)

DMA (Direct Access Memory)


     DMA (Direct Memory Access) adalah suatu hardware spesial (chip) yang dapat mengontrol aliran bit data antara memory (RAM) dan beberapa controller dari I/O devices tanpa memerlukan interferensi dari CPU secara terus menerus. (Mengakses dan mengontrol memori sistem tanpa interferensi CPU secara terus menerus).

     Fungsi dari DMA adalah agar CPU dapat melakukan pekerjaan atau instruksi yang berbeda ketika melakukan operasi baca tulis dari perangkat peripheral.

Kelebihan DMA :
  • Dapat menirukan sebagian fungsi processor 
  • Dapat mengambil alih fungsi prosesor yang berhubungan dengan transfer data 
  • CPU dapat melakukan manajemen operasi baca tulis (transfer data) dengan baik dan juga dapat menyelsaikan instruksi yang lain. 
  • Mendapat informasi tentang jumlah data bit yang ditransfer, alamat dari device dan memory yang diperlukan dan arah dari aliran data.
Kekurangan DMA :

  • Transfer rate data terbatas
  • Masih memerlukan keterlibatan CPU, Sehingga CPU menjadi lebih sibuk

Diperlukan DMA untuk programmed I/O dan interrupt driver I/O, DMA menjadi solusi

  • Masih memerlukan keterlibatan CPU, CPU menjadi sibuk
  • Transfer rate data terbatas

Digunakan modul khusus(hardware) yang terhubung ke sistem bus

fungsi modul DMA:

  • Dapat menirukan sebagian fungsi processor
  • Dapat mengambil alih fungsi prosesor yang berhubungan dengan transfer data.

Kapan DMA bekerja?
  • Saat prosesor sedang tidak menggunakan bus
  • saat prosesor dipaksa berhenti sesaat (suspend) , siklus "dicuri oleh DMA" adalaah cycle stealing.

Cara Kerja DMA
  • CPU mengirimkan data data berikut ini ke DMA controller:
    • Perintah read/write
    • Alamat device yang akan diakses
    • Alamat awal blok memori yang akan dibaca/ditulis
    • Jumlah blok data yang akan ditransfer
  • CPU mengeksekusi program lain
  • DMA controller mengirimkan seluruh blok data (per satu word) langsung ke memori(tanpa melibatkan CPU)
  • DMA controller mengirim interrupt ke CPU jika telah selesai.

Cycle Stealing pada DMA transfer
  • DMA controller mengambil alih bus sebanyak satu siklus
  • DMA mentransfer satu word data
  • Pengambil alihan bus oleh DMA bukan interrupt --> CPU tidak perlu menyimpan context
  • CPU hanya tertunda (suspend) sesaat sebelum mengakses bis, yaitu sebelum operand atau data diambil atau data ditulis
  • Pengaruh terhadap CPU yaitu memperlambat CPU , tetapi masih lebih baik dari pada CPU terlibat langsung pada transfer data.

Konfigurasi pada DMA
  • Konfigurasi I
    • Hanya menggunakan single bus
    • DMA dan modul I/O terpisah
    • Setiap transfer harus mengakses bus 2 kali
  • Konfigurasi II
    • Hanya menggunakan single bus
    • DMA controller dan modul I/O terintegrasi
    • satu DMA controller dapat mengangani lebih dari 1 modu I/O
    • Setiap transfer hanya perlu mengakses bus satu kali saja
  • Konfigurasi III
    • digunakan bus I/O secara terpisah
    • semua modul I/O cukup dilayani dengan sebuah DMA
    • Setiap transfer hanya perlu mengakses bus satu kali saja
Selama transfer blok byte masukan, urutan berikut terjadi sebagai byte data dikirim dari antarmuka ke memori:

  1. Antarmuka mengirimkan pengontrol DMA permintaan DMA layanan.
  2. Permintaan Bus dibuat untuk pin terus (Tinggi aktif) pada mikroprosesor 8086 dan controller kontrol keuntungan dari bus.
  3. Dana bantuan Bus dikembalikan ke DMA controller dari Hold Acknowledge (HLDA) pin (aktif tinggi) pada mikroprosesor 8086.
  4. Para DMA controller tempat isi alamat register ke bus alamat.
  5. Controller mengirimkan antarmuka pengakuan DMA, yang mengisahkan antarmuka untuk menempatkan data pada bus data. (Untuk output itu sinyal antarmuka untuk latch data berikutnya ditempatkan di bus.)
  6. Byte data ditransfer ke lokasi memori yang ditunjukkan oleh bus alamat.
  7. Antarmuka kait data.
  8. Permintaan Bus terjatuh, pin HOLD pergi rendah, dan controller relinquishes bus.
  9. Hibah Bus dari mikroprosesor 8086 dijatuhkan dan pin HLDA pergi Rendah.
  10. Register alamat bertambah oleh 1.
  11. Jumlah byte decremented oleh 1.
  12. Jika jumlah byte adalah bukan nol, kembali ke langkah 1, jika tidak berhenti.
Sumber :








Komentar

Postingan populer dari blog ini

Sistem operasi

A.   Batch System 1. Pengertian Batch System     Batch system adalah dimana job-job yang mirip dikumpulkan dan dijalankan secara kelompok kemudian setelah kelompok yang dijalankan tadi selesai maka secara otomatis kelompok lain dijalankan. jadi dengan kata lain adalah teknologi proses komputer dari generasi ke-2. yang jika suatu tugas sedang dikerjakan pada 1 rangkaian, akan di eksekusi secara berurutan. Pada komputer generasi ke-2 sistem komputer nya maasih blum dilengkapi oleh sebuah sistem operasi. Tapi, dalam beberapa fungsi sistem operasi, seperti os yang tengah berkembang pada jaman sekarang ini. Contohnya adlah FMS ( Fortarn Monitoring System ) dan IBSYS. 2. Contoh Batch System      Contoh sebuah Batch System adalah sebuah e-mail dan transaksi batch processing. Dalam suatu sistem batch processing, transaksi secara individual dientri melalui peralatan terminal, dilakukan validasi tertentu, dan ditambahkan ke transaction file yang berisi tra

Sejarah Sistem Operasi

Sejarah Sistem Operasi,DOS,Windows,MAC, Linux ,Android 1. SEJARAH SISTEM OPERASI  Pengertian Sistem Operasi       Sistem operasi merupakan sebuah penghubung antara pengguna dari komputer dengan perangkat keras komputer. Sebelum ada sistem operasi, orang hanya mengunakan komputer dengan menggunakan sinyal analog dan sinyal digital. Seiring dengan berkembangnya pengetahuan dan teknologi, pada saat ini terdapat berbagai sistem operasi dengan keunggulan masing-masing. Untuk lebih memahami sistem operasi maka sebaiknya perlu diketahui terlebih dahulu beberapa konsep dasar mengenai sistem operasi itu sendiri.      Pengertian sistem operasi secara umum ialah pengelola seluruh sumber-daya yang terdapat pada sistem komputer dan menyediakan sekumpulan layanan (system calls) ke pemakai sehingga memudahkan dan menyamankan penggunaan serta pemanfaatan sumber-daya sistem komputer. Sejarah Sistem Operasi      Menurut Tanenbaum, sistem operasi mengalami perkembangan