HATSUNE MIKU
- Back to Home »
- Tugas 3 »
- (Tugas 3) Data Transfer With A DMA Controller
Sabtu, 27 Oktober 2018
Pengertian DMA (Direct Memory
Access)
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 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.
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.
REFERENCES
Source
By :