Communication
Methodology
ii)
Direct Memory Access(DMA)
DMA merupakan salah
satu cara untuk transfer data daripada RAM computer kepada bahagian computer
yang lain tanpa melalui proses CPU. Kebanyakan data yang “input” ataupun
“output” perlu diproses oleh CPU, tetapi melalui DMA, masa proses telah
dijimatkan dan juga lebih berefisien untuk memperalihkan suatu data daripada
computer ke device yang lain.
“Internal Configuration of DMA Controller”
“DMA Controller”
merangkumi beberapa “registers”:
v “DMA
Address Register” : Mempunyai “memory address”
untuk kegunaan data transfer.
v “DMA
Count Register”/ “Word Count Register” : mempunyai bilangan“bytes” kepada data
yang perlu ditransfer.
v “DMA
Control Register” : menerima command daripada CPU.
v “Status
Register” : menyumbang informasi kepada CPU.(tidak ditunjuk dalam carta di
atas.)
Proses “DMA transfer”
· CPU
loads first memory address kepada “DMA Address Register” .
· Seterusnya,
bilangan bytes ditulis dan transfer kepada “DMA Count Register”.
· Akhirnya,
ia tulis satu atau lebih commands kepada “DMA Control Register”.
· Commands
tersebut akan specify cara transfer daripada “DMA Transfer Mode”, dan juga arah
untuk transfer (iaitu dari I/O kepada memory, ataupun dari memory kepada I/O).
· Command
yang akhir sekali akan menyebabkan “DMA Controller” memulakan transfer
tersebut. “Controller” akan menjadikan BR kepada 1,BG kepada 1 dan system buses
akan “seizes control”.
“DMA
Tranfer Mode”
·
“BURST Mode”/ “Block Transfer Mode” : “Entire
block of data is transfer in one contiguous sequence. Once DMA Controller
access to the system buses by CPU, it
transfer all bytes of data in data block before releasing control of the system
buses to CPU.” Mode ini amat sesuai dalam proses programs atau fail data
loading kepada memory.
·
“CYCLE STEALING Mode” : “DMA Controller
obtains access to the system buses as BURST Mode, using BR and BG signals. It
transfer one byte of data then deasserts BR, returning control system buses to
CPU. It will continuously issues request via BR, transferring one byte data per
request till the end. ”. “This mode is useful for controller to monitoring data
in real time.”.
·
“Transparent Mode” : Mode ini banyak
mengambil masa untuk transfer satu blok data. DMA Controller hanya akan
transfer data apabila CPU beroperasi dengan tidak menggunakan system buses.
Interrupt Driven I/O
· CPU
request untuk melakukan operasi I/O
· modul
I/O transfer command ke peripheral
· modul
I/O mengirimkan interrupt kepada CPU untuk memberitahukan status hasil
operasinya
· CPU bereaksi atas status tersebut.
Written by,
NG SWEE YAN A/P SURESH KUMAR
B031210103
No comments:
Post a Comment