Anda di halaman 1dari 63

William Stallings

Organisasi komputer
dan Arsitektur
7th Edisi

Bab 7to add Text


Click
Input output
Masukan Masalah / Output
• Berbagai peripheral
—Menyampaikan jumlah data yang berbeda
—Pada kecepatan yang berbeda
—Dalam format yang berbeda
• Semua lebih lambat dari CPU dan RAM
• Perlu I / O modul
Input / Output Modul
• Antarmuka ke CPU dan Memory
• Interface untuk satu atau lebih peripheral
Model generik dari I / O Modul
Perangkat eksternal
• dibaca manusia
—Layar, printer, keyboard
• mesin yang dapat dibaca
—Monitoring dan kontrol
• Komunikasi
—Modem
—Kartu Network Interface (NIC)
Perangkat eksternal Blok Diagram
I / O Modul Fungsi
• Kontrol & Waktu
• Komunikasi CPU
• perangkat Komunikasi
• Data Buffering
• kesalahan Deteksi
I / O Langkah
• cek CPU I / O modul status perangkat
• I / O modul mengembalikan statusnya
• Jika siap, CPU meminta transfer data
• I / O modul mendapat data dari perangkat
• I / O transfer data modul ke CPU
• Variasi untuk output, DMA, dll
I / O Modul Diagram
I / O Keputusan Modul
• Menyembunyikan atau mengungkapkan
sifat perangkat ke CPU
• Dukungan beberapa atau perangkat
tunggal
• fungsi perangkat kontrol atau
meninggalkan untuk CPU
• Juga O / S keputusan
—misalnya Unix memperlakukan segala sesuatu
yang bisa sebagai file
Teknik Input Output
• Programmed
• interrupt driven
• Direct Memory Access (DMA)
Tiga Teknik untuk
Masukan dari Blok Data
Programmed I / O
• CPU memiliki kontrol langsung atas I / O
—Status Sensing
—Baca perintah / write
—mentransfer data
• menunggu CPU untuk modul I / O untuk
menyelesaikan operasi
• buang waktu CPU
Programmed I / O - detil
• permintaan CPU I / O operasi
• I / O modul melakukan operasi
• I / O modul menetapkan status bit
• CPU memeriksa Status bit secara berkala
• I / O modul tidak menginformasikan CPU
secara langsung
• I / O modul tidak mengganggu CPU
• CPU mungkin menunggu atau kembali lagi
nanti
I / O Perintah
• alamat masalah CPU
—Mengidentifikasi modul (& perangkat jika> 1
per modul)
• Perintah masalah CPU
—Control - modul jitu apa yang harus dilakukan
– misalnya berputar up disk
—Uji - memeriksa status
– misalnya kekuasaan? Kesalahan?
—Baca tulis
– Modul transfer data melalui penyangga dari / ke
perangkat
Mengatasi I / O Devices
• Di bawah diprogram I / O transfer data
sangat seperti akses memori (CPU sudut
pandang)
• Setiap perangkat yang diberikan pengenal
unik
• perintah CPU berisi identifier (alamat)
I / O Pemetaan
• Memori dipetakan I / O
— Perangkat dan berbagi memori ruang alamat
— I / O terlihat seperti memori baca / tulis
— Tidak ada perintah khusus untuk I / O
– pilihan perintah akses memori yang tersedia
• Terisolasi I / O
— ruang alamat yang terpisah
— Perlu I / O atau memori pilih baris
— perintah khusus untuk I / O
– set terbatas
Memori dipetakan dan Isolated I / O
Mengganggu Driven I / O
• Mengatasi CPU tunggu
• Tidak ada CPU diulang memeriksa
perangkat
• I / O modul menyela ketika siap
Mengganggu Driven I / O
Operasi dasar
• masalah CPU membaca perintah
• I / O modul mendapat data dari peripheral
sementara CPU melakukan pekerjaan lain
• I / O modul menyela CPU
• Data permintaan CPU
• I / O data transfer modul
sederhana Interrupt
Pengolahan
CPU Viewpoint
• Isu membaca perintah
• Melakukan pekerjaan lain
• Periksa interrupt pada akhir setiap siklus
instruksi
• Jika terganggu: -
—Simpan konteks (register)
—proses interrupt
– Mengambil data & toko
• Lihat catatan Sistem Operasi
Perubahan Memory dan Register
untuk Interrupt
Masalah desain
• Bagaimana Anda mengidentifikasi modul
mengeluarkan interupsi?
• Bagaimana Anda berurusan dengan
beberapa interupsi?
—yaitu interrupt handler yang terganggu
Mengidentifikasi mengganggu Modul (1)
• garis yang berbeda untuk setiap modul
—PC
—Batas jumlah perangkat
• software jajak pendapat
—CPU meminta setiap modul pada gilirannya
—Lambat
Mengidentifikasi mengganggu Modul (2)
• Daisy Rantai atau jajak pendapat
Hardware
—Mengganggu Akui diturunkan rantai
—Modul bertanggung jawab vektor tempat di
bus
—CPU menggunakan vektor untuk
mengidentifikasi handler rutin
• Guru Bus
—Modul harus mengklaim bus sebelum dapat
meningkatkan interrupt
—misalnya PCI & SCSI
beberapa Interupsi
• Setiap baris interrupt memiliki prioritas
• baris prioritas yang lebih tinggi dapat
mengganggu jalur prioritas yang lebih
rendah
• Jika bus mastering hanya master saat ini
dapat mengganggu
Contoh - PC Bus
• 80x86 memiliki satu interrupt baris
• 8086 sistem berbasis menggunakan satu
8259A interrupt kontroler
• 8259A memiliki 8 baris interrupt
Urutan peristiwa
• 8259A menerima interupsi
• 8259A menentukan prioritas
• sinyal 8259A 8086 (menimbulkan INTR
line)
• CPU Mengakui
• 8259A menempatkan vektor yang benar
pada data bus
• proses CPU mengganggu
ISA Bus Sistem Interrupt
• rantai bus ISA dua 8259As bersama-sama
• Link adalah melalui interupsi 2
• Memberikan 15 baris
—16 baris kurang satu untuk link
• IRQ 9 digunakan untuk re-route apapun
mencoba untuk menggunakan IRQ 2
—kompatibilitas ke belakang
• Tergabung dalam chip set
82C59A Interrupt
pengawas
Intel 82C55A
Programmable Peripheral Interface
Keyboard / Display Penghubung ke
82C55A
Access Memory langsung
• Mengganggu didorong dan diprogram I /
O memerlukan intervensi CPU aktif
—transfer rate terbatas
—CPU terikat
• DMA adalah jawabannya
DMA Fungsi
• Modul tambahan (hardware) di bus
• DMA controller mengambil alih dari CPU
untuk I / O
Khas DMA Modul Diagram
DMA Operasi
• CPU mengatakan DMA controller: -
—Baca tulis
—alamat perangkat
—Mulai alamat blok memori untuk data
—Jumlah data yang ditransfer
• CPU menjalankan dengan pekerjaan lain
• DMA controller berkaitan dengan
pengalihan
• DMA controller mengirimkan interupsi
ketika selesai
DMA transfer
siklus Mencuri
• DMA controller mengambil alih bus untuk
siklus
• Transfer satu kata data
• Tidak interupsi
—CPU tidak beralih konteks
• CPU ditangguhkan sebelum ia mengakses
bus
—yaitu sebelum operan atau data mengambil
atau menulis data
• Memperlambat CPU tapi tidak sebanyak
CPU melakukan perpindahan
DMA dan interrupt Breakpoints Selama
Siklus Instruksi
Ke samping
• Apa efek tidak memori caching terhadap
DMA?
• Bagaimana di tembolok papan?
• Petunjuk: berapa banyak adalah sistem
bus yang tersedia?
DMA Konfigurasi (1)

• Tunggal Bus, Terpisah DMA controller


• Setiap transfer menggunakan bus dua kali
—I / O ke DMA kemudian DMA ke memori
• CPU ditangguhkan dua kali
DMA Konfigurasi (2)

• Tunggal Bus, Integrated DMA controller


• Kontroler dapat mendukung> 1 perangkat
• Setiap transfer menggunakan bus sekali
—DMA ke memori
• CPU ditangguhkan sekali
DMA Konfigurasi (3)

• Aku terpisah / O Bus


• Bus mendukung semua perangkat DMA
diaktifkan
• Setiap transfer menggunakan bus sekali
—DMA ke memori
Intel 8237A DMA controller
• Interface untuk 80x86 keluarga dan DRAM
• Ketika DMA modul perlu bus itu mengirimkan sinyal
TAHAN ke prosesor
• CPU merespon HLDA (tahan mengakui)
— DMA modul dapat menggunakan bus
• Transfer misalnya data dari memori ke disk
1. Perangkat meminta pelayanan DMA dengan menarik DREQ
(permintaan DMA) yang tinggi
2. DMA menempatkan tinggi pada HRQ (permintaan ditahan),
3. CPU selesai siklus bus ini (tidak harus instruksi hadir) dan
menempatkan tinggi pada HDLA (tahan mengakui). TAHAN
tetap aktif untuk jangka waktu DMA
4. DMA mengaktifkan DACK (DMA mengakui), mengatakan
perangkat untuk memulai transfer
5. DMA dimulai transfer dengan menempatkan alamat dari byte
pertama pada bus alamat dan mengaktifkan ESDM;
kemudian mengaktifkan TKI untuk menulis ke perifer. DMA
decrements counter dan kenaikan pointer alamat. Ulangi
sampai hitungan mencapai nol
6. DMA menonaktifkan HRQ, memberikan bus kembali ke CPU
8237 DMA Penggunaan Sistem Bus
Terbang melewati
• Sementara DMA menggunakan bus
prosesor menganggur
• Processor menggunakan bus, DMA
menganggur
—Dikenal sebagai fly-by DMA controller
• Data tidak melewati dan tidak disimpan
dalam DMA chip yang
—DMA hanya antara I / O port dan memori
—Tidak antara dua I / O port atau dua lokasi
memori
• Dapat melakukan memori ke memori
melalui mendaftar
• 8237 mengandung empat saluran DMA
—diprogram secara independen
I / O Channels
• Perangkat I / O semakin canggih
• kartu grafis misalnya 3D
• CPU memerintahkan I / O controller
melakukan transfer
• I / O controller tidak seluruh transfer
• meningkatkan kecepatan
—Membawa beban off CPU
—Dedicated prosesor lebih cepat
I / O Channel Arsitektur
interfacing
• perangkat menghubungkan bersama-
sama
• Bit kawat?
• Dedicated processor / memori / bus?
• Misalnya FireWire, InfiniBand
IEEE 1394 FireWire
• Kinerja tinggi serial bus
• Cepat
• Biaya rendah
• Mudah diterapkan
• Juga digunakan dalam kamera digital,
VCR dan TV
FireWire Konfigurasi
• rantai daisy
• Sampai dengan 63 perangkat pada port
tunggal
—Benar-benar 64 yang satu adalah antarmuka
sendiri
• Hingga 1022 bus dapat dihubungkan
dengan jembatan
• konfigurasi otomatis
• Tidak ada terminator bus
• Mungkin struktur pohon
Konfigurasi FireWire sederhana
FireWire 3 Lapisan Stack
• Fisik
—media transmisi, listrik dan karakteristik sinyal
• Link
—Transmisi data dalam paket
• Transaksi
—protokol request-response
FireWire Protocol Stack
FireWire - Physical Layer
• kecepatan data dari 25 sampai 400Mbps
• Dua bentuk arbitrase
—Berdasarkan struktur pohon
—Akar bertindak sebagai arbiter
—Pertama datang pertama dilayani
—prioritas alami mengendalikan permintaan
simultan
– yaitu yang terdekat akar
—arbitrase yang adil
—arbitrase mendesak
FireWire - Link Layer
• Dua jenis transmisi
—asynchronous
– jumlah variabel data dan beberapa byte data
transaksi ditransfer sebagai sebuah paket
– Ke alamat eksplisit
– pengakuan kembali
—isochronous
– sejumlah variabel data dalam urutan paket ukuran
tetap secara berkala
– Sederhana menangani
– tidak ada pengakuan
FireWire Subactions
InfiniBand
• I / O spesifikasi yang ditujukan untuk
server high end
—Penggabungan Masa Depan I / O (Cisco, HP,
Compaq, IBM) dan Next Generation I / O
(Intel)
• Versi 1 dirilis awal tahun 2001
• Arsitektur dan spec. untuk aliran data
antara prosesor dan I / O perangkat
cerdas
• Dimaksudkan untuk menggantikan PCI di
server
• Peningkatan kapasitas, upgrade,
fleksibilitas
InfiniBand Arsitektur
• Terpencil penyimpanan, jaringan dan koneksi
antara server
• Melampirkan server, penyimpanan jauh,
perangkat jaringan untuk kain pusat switch dan
link
• server densitas yang lebih besar
• data center Scalable
• node independen ditambahkan sebagai
diperlukan
• I / O jarak dari server hingga
— 17m menggunakan tembaga
— 300m multimode serat optik
— 10km serat mode tunggal
• Hingga 30Gbps
InfiniBand Beralih Fabric
InfiniBand Operasi
• 16 saluran logis (jalur virtual) per link
fisik
• Satu jalur untuk manajemen, sisanya
untuk data
• Data dalam aliran paket
• Virtual jalur didedikasikan sementara
untuk ujung ke ujung Transfer
• Beralih lalu lintas peta dari yang masuk ke
jalur keluar
InfiniBand Protocol Stack
Membaca latar
• Periksa Universal Serial Bus (USB)
• Bandingkan dengan standar komunikasi
lainnya misalnya Ethernet

Anda mungkin juga menyukai