Data Transfer with a DMA Controller
- Pengertian DMA ( Direct Memory Access)
DMA adalah sebuah metode untuk mentransfer data dari RAM komputer ke bagian lain dari pengolahan komputer tanpa menggunakan CPU. Meskipun sebagian besar data yang diinput atau output dari komputer Anda diproses oleh CPU, beberapa data tidak memerlukan pengolahan, atau dapat diproses oleh perangkat lain. Dalam situasi ini, DMAdapat menghemat waktu pemrosesan dan merupakan cara yang lebih efisien untuk memindahkan data dari memori komputer ke perangkat lain.
Sebagai contoh, sebuah Sound card mungkin perlu untuk mengakses data yang tersimpan dalam RAM komputer, tapi karena dapat memproses data sendiri, hal itu mungkin menggunakan DMA untuk melewati CPU. Video card yang mendukung DMA juga dapat mengakses memori sistem dan proses grafis tanpa perlu CPU.
Agar perangkat dapat menggunakan DMA (akses memori langsung), mereka harus ditetapkan ke saluran DMA. Setiap jenis port pada komputer memiliki seperangkat saluran DMA yang dapat ditetapkan untuk setiap perangkat yang terhubung. Sebagai contoh, sebuah PCI controller dan sebuah hard drive controller masing-masing memiliki saluran DMA set.
CONTOH CARA KERJA EXTERNAL HARDDISK CONTROLLER
Pada motherboard yang sudah memiliki UDMA/66 atau ATA/66 umumnya memiliki chip set tersendiri . Sebagai contoh disini adalah Controller dari Highpoint. Cara kerja controller harddisk pada motherboard pengolahan data dari harddisk ke processor melalui memory computer. Selanjutnya data dari memory diambil ke processor .
Pada penerapan teknologi Highpoint chipset, mengunakan Direct Memory Access (DMA) langsung tanpa memindahkan data ke processor. Sehingga proses pada utilitas (pengerjaan) di processor computer menjadi lebih kecil. Dengan demikian kecepatan pada harddisk dalam mentranfer data akan sangat cepat dan pengunaan processor dapat akan semakin kecil (1-5% tergantung kecepatan processor dan harddisk).
2. Cara Kerja DMA (Direct Memory Access)
Selama transfer byte blok, urutan berikut terjadi saat byte data dikirim dari antarmuka ke memori :
1.Antarmuka mengirimkan DMA controller permintaan untuk layanan DMA.
2.Permintaan bus dibuat ke pin HOLD (aktif tinggi) pada mikroprosesor 8086 dan pengendali mendapatkan kontrol bus.
3.Hibah bus dikembalikan ke pengontrol DMA dari pin Hold Acknowledge (HLDA) (aktif tinggi) pada mikroprosesor 8086.
4.Pengontrol DMA menempatkan isi register alamat ke bus alamat.
5.Pengontrol mengirimkan antarmuka pengakuan DMA, yang memberitahu antarmuka untuk meletakkan data pada bus data. (untuk output itu sinyal antarmuka untuk mengunci data berikutnya ditempatkan di bus).
6.Data byte ditransfer ke lokasi memori yang ditunjukkan oleh bus alamat.
7.Antarmuka mengaitkan data.
8.Permintaan bus dijatuhkan, pin HOLD menjadi rendah, dan pengendali melepaskan bus.
9.Hibah bus dari mikroprosesor 8086 dijatuhkan dan pin HLDA menjadi rendah.
10.Register alamat bertambah 1.
11.Hitungan byte dikurangi 1.
12.Jika jumlah byte tidak nol, kembali ke langkah 1, jika tidak hentikan.
3. Fungsi DMA (Direct Memory Access)
Fungsi dari DMA sendiri adalah agar CPU dapat melakukan pekerjaan atau instruksi yang berbeda ketika melakukan operasi baca tulis dari perangkat peripheral. Tanpa adanya DMA CPU akan terus sibuk melakukan operasi baca tulis (transfer data) dan tidak dapat melakukan atau menyelesaikan instruksi yang lain. Dengan adanya DMA, CPU cukup mempersiapkan DMA chip dengan cara memberikan beberapa informasi seperti jumlah data bit yang ditransfer, alamat dari device dan memory yang diperlukan dan arah dari aliran data tersebut, setelah itu DMA chip sendiri yang akan menyelesaikannya. DMA chip akan melakukan interupt, ketika pekerjaannya sudah selesai. Selama DMA chip melakukan tugasnya hingga munculnya interupt, CPU dapat menyelesaikan instruksi yang lainnya.
4.Kelebihan dan Kekurangan DMA.
1.) Kelebihan.
a). Performance komputer sistem ditingkatkan dengan transferdata langsung antara memori dan I/O devices, tidak melibatkanCPU.
b). CPU dibebastugaskan dari transfer data.
c.) Transfer data akan menjadi lebih cepat.
2.) Kekurangan.
a.) Pada burst mode transfer data, CPU tidak aktif dalam waktu yang lama.
5. Implementasi DMA.
- Direct Memory Access Controlled (DMAC), yang digunakan untukmengontrol DMA di Sistem Komputer.
- DMAC menghubungkan langsung ke device I/O dan bus sistem.DMAC juga terhubung dengan CPU.
- DMAC menggunakan IC 8237.
Tidak ada komentar:
Posting Komentar