Kamis, 24 Mei 2012

Akses Memori Langsung (DMA)


Manajemen I/O dan penjadwalan disket

Akses memori langsung (Direct Memory Acess (DMA)):
DMA mengontrol pertukaran data antara memori utama dan modul I/O. Prosesor mengirimkan permintaan untuk transfer dari sebuah blok data ke modul DMA dan di interupt setelah seluruh blok telah ditransfer.
Unit DMA mampu untuk menirukan prosesor dan tentunya mengambil alih kontrol sistem dari prosesor. Melakukan transfer dari memori melalui sistem bus. Umumnya, modul DMA harus menggunakan bus hanya ketika prosesor tidak membutuhkannya atau harus memaksakan prosesor untuk menunda operasi sementara. Teknik berikutnya adalah lebih umum dinyatakan ke sebuah pencurian siklus karena unit DMA berpengaruh untuk mencuri sebuah siklus bus.
Teknik DMA bekerja sebagai berikut : ketika prosesor menginginkan untuk membaca atau menuliskan satu blok dari data, prosesor akan mengeluarkan sebuah perintah untuk modul DMA dengan mengirimkan ke modul DMA informasi berikut:
  • apakah sebuah baca atau tulis yang dimintakan menggunakan kontrol baris baca atau tulis di antara prosesor dan modul DMA.
  • Alamat dari device I/O yang terlibat, mengomunikasikan dalam baris data.
  •  Lokasi awal dalam memori untuk membaca data atau menuliskan, dikomunikasikan dalam baris data dan disimpan oleh modul DMA dalam alamat registernya.
  •  Jumlah kata-kata yang dibaca atau dituliskan sekali lagi dikomunikasikan melalui baris data dan disimpan dalam bagian dari register data.

Prosesor kemudian melanjutkan dengan pekerjaan lainnya. Mendelegasikan operasi I/O ini ke modul DMA. Modul DMA mentransfer keseluruhan dari blok data saat itu juga ke atau dari memori tanpa melalui prosesor. Ketika transfer selesai, modul DMA mengirimkan sebuah sinyal interupt ke prosesor. Oleh karena itu, prosesor yang terlibat hanya dalam awal dan akhir transfer.
Mekanisme dari DMA dapat dikonfigurasikan dengan berbagai cara. Modul DMA berlaku sebagai prosesor pengganti menggunakan program I/O untuk mempertukarkan data di antara memori dan sebuah modul I/O melalui modul DMA. Konfigurasi ini untuk sementara tidak mahal, namun jelas tidak efisien. Jumlah yang dibutuhkan oleh siklus bus dapat dipotong secara substantif dengan mengintregasikan fungsi DMA dan I/O. Logika DMA sebenarnya merupakan bagian dari modul I/O atau mungkin modul yang terpisah yang mengontrol satu atau lebih dari modul I/O. Konsep ini dapat mengambil satu langkah lebih awal dengan menghubungkan modul I/O ke modul DMA menggunakan sebuah bus I/O. Ini mengurangi jumlah interface I/O dalam modul DMA ke satu dan menyediakan sebuah konfigurasi yang dapat diperluas. Pertukaran data di antara DMA dan modul I/O menempatkan sistem bus.





Tidak ada komentar:

Posting Komentar