Skip to main content

Data Transfer Dengan DMA Controller




  1. I/O interface terhubung dengan DMA controller memberikan instruksi yang harus diproses.
  2. DMA controller mengirimkan pemberitahuan ke processor akan ada proses yang dihandle oleh DMA controller
  3. processor menginformasikan ke memory bahwa DMA akan mengakses mempry 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 selesai dilakukan
  7. 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
  8. Pengendali DMA memulai operasi (menyiapkan bus, menyediakan alamat, menulis dan membaca data), sampai seluruh blok sudah di transfer. 
  9. Pengendali DMA meng-interupsi prosesor dimana selanjutnya akan ditentukan tindakan berikutnya.
Direct Memory Access (DMA)
Teknik yang dijelaskan sebelumnya yaitu I/O terprogram dan Interrupt-Driven I/O memiliki kelemahan, yaitu proses yang terjadi pada modul I/O masih melibatkan CPU secara langsung. Hal ini berimplikasi pada :
• Kelajuan transfer I/O yang tergantung pada kecepatan operasi CPU.
• Kerja CPU terganggu karena adanya interupsi secara langsung.
Bertolak dari kelemahan di atas, apalagi untuk menangani transfer data bervolume besar dikembangkan teknik yang lebih baik, dikenal dengan Direct Memory Access (DMA). Blok diagram modul DMA.
Prinsip kerja DMA adalah 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. Dengan demikian CPU dapat menjalankan proses lainnya tanpa banyak terganggu dengan interupsi.
Dalam melaksanakan transfer data secara mandiri, DMA memerlukan pengambilalihan kontrol bus dari CPU. Untuk itu DMA akan menggunakan bus bila CPU tidak menggunakannya atau DMA memaksa CPU untuk menghentikan sementara penggunaan bus. Teknik terakhir lebih umum digunakan, sering disebut cycle-stealing, karena modul DMA mengambil alih siklus bus. Penghentian sementara penggunaan bus bukanlah bentuk interupsi, melainkan hanyalah penghentian proses sesaat yang berimplikasi hanya pada kelambatan eksekusi CPU saja.

sumber :

Comments

Popular posts from this blog

Microsoft Windows

credit:  https://www.theverge.com Microsoft Windows atau lebih dikenal dengan sebutan Windows adalah keluarga sistem operasi komputer pribadi yang dikembangkan oleh Microsoft yang menggunakan antarmuka dengan pengguna berbasis grafik (graphical user interface). Sistem operasi Windows telah berevolusi dari MS-DOS, sebuah sistem operasi yang berbasis modus teks dan command-line. Windows versi pertama, Windows Graphic Environment 1.0 pertama kali diperkenalkan pada 10 November 1983, tetapi baru keluar pasar pada bulan November tahun 1985 yang dibuat untuk memenuhi kebutuhan komputer dengan tampilan bergambar. Windows 1.0 merupakan perangkat lunak 16-bit tambahan (bukan merupakan sistem operasi) yang berjalan di atas MS-DOS (dan beberapa varian dari MS-DOS), sehingga ia tidak akan dapat berjalan tanpa adanya sistem operasi DOS. Versi 2.x, versi 3.x juga sama. Beberapa versi terakhir dari Windows (dimulai dari versi 4.0 dan Windows NT 3.1) merupakan sistem operasi mandiri yang t...

Batch System

credit:  http://techwhiteprints.com/papers/batch-system-design-essentials_v1_0.ashx Batch system dikenalkan pada generasi kedua (1955-1965). Batch sistem adalah suatu teknik pengurutan kerja secara otomatis untuk menghindari waktu menganggurnya CPU. Tugas ini dikerjakan dalam satu rangkaian, lalu dieksekusi secara berurutan. Pada generasi ini sistem komputer belum dilengkapi sistem operasi, tetapi beberapa fungsi sistem operasi telah ada, contohnya fungsi sistem operasi ialah FMS dan IBSYS. 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 transaksi lain, dan kemudian dientri ke dalam sistem secara periodik. Di waktu kemudian, selama siklus pengolahan berikutnya, transaction file dapat divalidasi lebih lanjut dan kemudian digunakan untuk meng-up date master file yang berka...

UNIX

credit:  https://alexsb.org/2015/04/21/unix/ Unix atau UNIX merupakan sebuah sistem operasi (OS) yang dikembangkan pada tahun 1965 melalui project sebelumnya yang bernama Multiplexed Information and Computing Service atau disingkat Multics dengan harapan UNIX ini menjadi sistem operasi yang dapat melakukan multitasking, portable dan dapat digunakan oleh lebih dari satu pengguna (multiuser). Project ini dibiayai sepenuhnya oleh Departemen Pertahanan Amerika (DARPA). Kebanyakan pengguna menginginkan penggunaan sistem operasi UNIX sebagai komputer server dan workstation. Hal ini dikarenakan ciri khas dari UNIX yang portabel, multiuser serta multitasking bagi para penggunanya. Maksud dari server merupakan sistem komputer yang menangani beberapa komputer lain, bisa dalam bentuk jaringan ethernet maupun internet. Namun dalam penggunaannya sebagai workstation saat ini cukup jarang ditemui karena harganya yang cukup mahal. Sebenarnya selain UNIX masih ada juga Windows Server yang t...