Escolar Documentos
Profissional Documentos
Cultura Documentos
Organisasi Input-Output
Processor Memory
Bus
Input Device
DATA OUT
7 6 5 4 3 2 1 0
Figure 4.4 A program that reads one line from the keyboard stores it in memory buffer, and echoes it back to the display.
+ Setiap aksara yg dibaca akan dipaparkan pada
monitor.
+ Daftar R0 digunakan sebagai pointer
(penunjuk). Kandungannya akan dikemaskini
menggunakan mod pengalamatan
autoincrement.
+ Ini ialah satu contoh program-controlled I/O,
di mana pemproses akan sentiasa memeriksa
status bendera kawalan untuk mencapai
synchronization di antara pemproses dan
peranti input.
+ Dua mekanisma lain yg digunakan bagi
melaksanakan operasi I/O ialah:
1. Interrupts (Sampukan)
– synchronization dilaksanakan dengan membenarkan
peranti I/O menghantar isyarat sampukan melalui bus
apabila peranti bersedia untuk operasi penghantaran
data.
2. Direct Memory Access (DMA)
– teknik yg digunakan oleh peranti I/O berkelajuan
tinggi di mana antaramuka peranti menghantar data
secara terus dari/ke memori tanpa pembabitan
pemproses.
Isu-isu rekabentuk sistem I/O
• Prestasi (Performance)
• Expandability
interrupts
Processor
Cache
IRQ Done
IE R/ W
Starting address
Word count
+ Ia terdiri daripada:
1. Word count
~ daftar untuk menyimpan bilangan perkataan
2. Starting address
~ daftar untuk menyimpan alamat permulaan
3. Status and control
~ daftar yg mengandungi status dan bendera kawalan.
Bit0 = Done (penghantaran telah tamat)
- bersedia untuk menerima arahan lain.
Bit1 = R/ W (Read - 1, Write - 0)
Bit30 = Interrupt-Enable
- keluarkan isyarat sampukan apabila telah
selesai hantar satu blok data.
Bit31 = telah hantar IRQ
+ Semasa penghantaran data tersebut, DMA
controller akan mengendalikan bus untuk
menghantar data kepada atau daripada memori
utama.
+ DMA controller hanya menggunakan bus bila
pemproses tidak menggunakannya.
+ DMA controller boleh memaksa pemproses
menghentikan sementara operasinya dan
proses ini dipanggil ‘cycle stealing’.
+ Mekanisma DMA boleh dikonfigurasikan
dalam beberapa cara (rujuk rajah di sebelah):
DMA
CPU I/O I/O Memory
Module
DMA DMA
CPU Memory
Module Module
I/O
I/O I/O
DMA
CPU Memory
Module
I/O Bus
• Operasi input.
– Rujuh rajah 4.20
– t0: pemproses meletakkan alamat peranti input dan mod
penghantaran pada bus.
– t1: pemproses mengaktifkan line Ready (Ready=1) untuk
memberitahu bahawa alamat dan mod telah sedia dalam bus.
– t2: antaramuka peranti yg berkenaan akan akan menerima
isyarat Ready dan kenalpasti bahawa operasi Read
dikehendaki. Data diambil dari peranti dan diletakkan pada
line data. Line Accept diaktifkan (Accept=1)
– t3: pemproses menerima isyarat Accept yang menunjukkan data
input telah berada dalam bus. Pemproses mengambil data dari
bus dan diletakkan ke dalam input buffer. Pemproses setkan
Ready kepada 0 (Ready=0)
– t4: pemproses menghapuskan alamat dan mod pada bus.
– t5: bila peranti menerima peralihan isyarat Ready dari 1 kepada
0, ia akan menghapuskan data dan isyarat Accept pada bus.
~ bagi operasi output (rajah 4.21), caranya adalah sama
seperti operasi input.
~ pada operasi output pemproses akan akan meletakkan
data ouput pada line data dan juga menghantar alamat
dan mod. Peranti yg berkenaan akan mengambil data
tersebut dan letakkan pada output buffer bila isyarat
Ready diterima dan setkan isyarat Accept kepada 1.
2. Litar Antaramuka Peranti I/O
+ Antaramuka I/O diperlukan untuk penghantaran
data antara bus komputer dan peranti I/O.
+ Fungsi-fungsi antaramuka I/O adalah:
1. Menyediakan buffer untuk menyimpan data.
2. Mengandungi bendera-bendera status yg boleh
digunakan oleh pemproses untuk mengetahui
samada buffer penuh (untuk input) atau kosong
(untuk output).
3. Mengandungi litar penyahkod-alamat (address-
decoding) untuk mengetahui bilakah peranti tersebut
dialamatkan oleh pemproses.
4. Menjanakan isyarat-isyarat masa yg diperlukan.
5. Melakukan pertukaran format yg perlu untuk
menghantar data antara bus dan peranti I/O.
+ Litar antaramuka I/O boleh dikelaskan kepada
2 jenis:
1. Antaramuka Selari (Parallel Interface)
2. Antaramuka Bersiri (Serial Interface)
1. Antaramuka Selari
I/O Module
Buffer To
To System
Bus Peripheral
I/O Module
Buffer
To
To System
Peripheral
Bus