Organisasi dan Arsitektur Komputer : Perancangan...
Transcript of Organisasi dan Arsitektur Komputer : Perancangan...
Abdul Rouf - 1
Organisasi dan Arsitektur Komputer : Perancangan Kinerja(William Stallings)
Chapter 3Bus Sistem
Abdul Rouf - 2
Konsep Program
Pemrograman (hardware) merupakan proses penghu-bungan berbagai komponen logik pada konfigurasi yang diinginkan untuk membentuk operasi aritmatik dan logik pada data tertentu Hardwired program tidak flexibelGeneral purpose hardware dapat mengerjakan berbagai macam tugas tergantung sinyal kendali yang diberikanDaripada melakukan re-wiring, Lebih baik menambah-kan sinyal-sinyal kendali yang baru
Abdul Rouf - 3
Program ?
Adalah suatu deretan langkah-langkahPada setiap langkah, dikerjakan suatu operasi arithmetic atau logicalPada setiap operasi, diperlukan sejumlah sinyal kendali tertentu
Abdul Rouf - 4
Fungsi Control Unit
Untuk setiap operasi disediakan kode yang unikContoh: ADD, MOVE
Bagian hardware tertentu menerima kode tersebut kemudian menghasilkan sinyal-sinyal kendaliJadilah komputer!
Abdul Rouf - 5
Komponen yang diperlukan
Control Unit (CU) dan Arithmetic and Logic Unit(ALU) membentuk Central Processing Unit (CPU)Data dan instruksi harus diberikan ke sistem dan dikeluarkan dari sistem
Input/output
Diperlukan tempat untuk menyimpan sementara kode instruksi dan hasil operasi.
Main memory
Abdul Rouf - 6
Komponen Komputer:Top Level View
Abdul Rouf - 7
Siklus Instruksi
Two steps:FetchExecute
Abdul Rouf - 8
Fetch Cycle
Program Counter (PC) berisi address instruksi berikutnya yang akan diambilProcessor mengambil instruksi dari memory pada lokasi yang ditunjuk oleh PCNaikkan PC
Kecuali ada perintah tertentu
Instruksi dimasukkan ke Instruction Register (IR)Processor meng-interpret dan melakukan tindakan yang diperlukan
Abdul Rouf - 9
Execute Cycle
Processor-memoryTransfer data antara CPU dengan main memory
Processor I/OTransfer data antara CPU dengan I/O module
Data processingOperasi arithmetic dan logical pada data tertentu
ControlMengubah urutan operasiContoh: jump
Kombinasi diatas
Abdul Rouf - 10
Contoh Eksekusi Program
Abdul Rouf - 11
Diagram Keadaan Siklus Instruksi
Abdul Rouf - 12
InterruptSuatu mekanisme yang disediakan bagi modul-modul lain (mis. I/O) untuk dapat meng-interupsi operasi normal CPUProgram
Misal: overflow, division by zeroTimer
Dihasilkan oleh internal processor timerDigunakan dalam pre-emptive multi-tasking
I/Odari I/O controller
Hardware failureMisal: memory parity error
Abdul Rouf - 13
Program Flow Control
Abdul Rouf - 14
Siklus Interupsi
Ditambahkan ke instruction cycleProcessor memeriksa adanya interrupt
Diberitahukan lewat interrupt signal
Jika tidak ada interrupt, fetch next instructionJika ada interrupt:
Tunda eksekusi dari program saat ituSimpan contextSet PC ke awal address dari routine interrupt handlerProses interruptKembalikan context dan lanjutkan program yang terhenti.
Abdul Rouf - 15
Diagram keadaan Siklus Instruksi dengan Interrupt
Abdul Rouf - 16
Multiple Interrupts
Disable interruptsProcessor akan mengabaikan interrupt berikutnyaInterrupts tetap akan diperiksa setelah interrupt ynag pertama selesai dilayaniInterrupts ditangani dalam urutan sesuai datangnya
Define prioritiesLow priority interrupts dapat di interrupt oleh higher priority interruptsSetelah higher priority interrupt selesai dilayani, akan kembali ke interrupt sebelumnya.
Abdul Rouf - 17
Multiple Interrupts - Sequential
Abdul Rouf - 18
Multiple Interrupts - Nested
Abdul Rouf - 19
Sambungan
Semua unit harus tersambungUnit yang beda memiliki sambungan yang beda
MemoryInput/OutputCPU
Abdul Rouf - 20
Sambungan Memori
Menerima dan mengirim dataMenerima addresses Menerima sinyal kendali
ReadWriteTiming
Abdul Rouf - 21
Sambungan Input/Output
Serupa dengan sambungan memoriOutput
Menerima data dari computerMengirimkan data ke peripheral
InputMenerima data dari peripheralMengirimkan data ke computer
Abdul Rouf - 22
Sambungan Input/Output
Menerima sinyal kendali dari computerMengirimkan sinyal kendali ke peripherals
Contoh: spin disk
Menerima address dari computerContoh: nomor port
Mengirimkan sinyal interrupt
Abdul Rouf - 23
CPU Connection
Membaca instruksi dan dataMenuliskan data (setelah diproses)Mengirimkan sinyal kendali ke unit-unit lainMenerima (& menanggapi) interrupt
Abdul Rouf - 24
Bus
Ada beberapa kemungkinan interkoneksi sistemYang biasa dipakai: Single Bus dan multiple BUS PC: Control/Address/Data busDEC-PDP: Unibus
Abdul Rouf - 25
What is a Bus?
Jalur komunikasi yang menghubungkan beberapa deviceBiasanya menggunakan cara broadcast Seringkali dikelompokkan
Satu bus berisi sejumlah kanal (jalur)Contoh bus data 32-bit berisi 32 jalur
Jalur sumber tegangan biasanya tidak diperlihatkan
Abdul Rouf - 26
Data Bus
Membawa dataTidak dibedakan antara “data” dan “instruksi”
Lebar jalur menentukan performance8, 16, 32, 64 bit
Abdul Rouf - 27
Address bus
Menentukan asal atau tujuan dari dataMisalkan CPU perlu membaca instruksi (data) dari memori pada lokasi tertentuLebar jalur menentukan kapasitas memori maksimum dari sistem
Contoh 8080 memiliki 16 bit address bus maka ruang memori maksimum adalah 64k
Abdul Rouf - 28
Control Bus
Informasi kendali dan timingSinyal read/write memory (MRD/MWR)Interrupt request (IRQ)Clock signals (CK)
Abdul Rouf - 29
Skema Interkoneksi Bus
Abdul Rouf - 30
Bentuk Fisik
Bagaimana bentuk fisik bus?Jalur-jalur parallel PCB Ribbon cablesStrip connectors pada mother boards⌧contoh PCI
Kumpulan kabel
Abdul Rouf - 31
Problem pada Single Bus
Banyak devices pada bus tunggal menyebabkan:
Propagation delays⌧Jalur data yg panjang berarti memerlukan koordinasi
pemkaian shg berpengaruh pada performance⌧If aggregate data transfer approaches bus capacity
Kebanyakan sistem menggunakan multiple bus
Abdul Rouf - 32
Bus Traditional (ISA)(menggunakan cache)
Abdul Rouf - 33
High Performance Bus
Abdul Rouf - 34
Jenis Bus
DedicatedJalur data & address terpisah
MultiplexedJalur bersamaAddress dan data pada saat yg bedaKeuntungan – jalur sedikitKerugian⌧Kendali lebih komplek⌧Mempengaruhi performance
Abdul Rouf - 35
Arbitrasi Bus
Beberapa modul mengendalikan buscontoh CPU dan DMA controllerSetiap saat hanya satu modul yg mengendalikan Arbitrasi bisa secara centralised atau distributed
Abdul Rouf - 36
Arbitrasi Centralised
Ada satu hardware device yg mengendalikan akses bus
Bus ControllerArbitrer
Bisa berupa bagian dari CPU atau terpisah
Abdul Rouf - 37
Arbitrasi Distributed
Setiap module dapat meng-klaim busSetiap modules memiliki Control logic
Abdul Rouf - 38
Timing
Koordinasi event pada busSynchronous
Event ditentukan oleh sinyal clockControl Bus termasuk jalur clock Siklus bus ( bus cycle) transmisi 1 ke 0Semua devices dpt membaca jakur clockBiasanya sinkronisasi terjadi pada tepi naik (leading edge)Suatu event biasanya dimualai pada awal siklus
Abdul Rouf - 39
Synchronous Timing Diagram
Abdul Rouf - 40
Asynchronous Timing Diagram
Abdul Rouf - 41
Bus PCI
Peripheral Component InterconnectionDikeluarkan oleh Intel sebagai public domain32 atau 64 bit50 Jalur
Abdul Rouf - 42
Jalur pada Bus PCI (yg harus)
Jalur Systemclock and reset
Address & Data32 jalur multiplex address/dataJalur validasi
Interface ControlArbitrasi
Not sharedDirect connection to PCI bus arbiter
Error lines
Abdul Rouf - 43
Jalur Bus PCI (Optional)
Interrupt linesNot shared
Cache support64-bit Bus Extension
Additional 32 linesTime multiplexed2 lines to enable devices to agree to use 64-bit transfer
JTAG/Boundary ScanFor testing procedures
Abdul Rouf - 44
Command pada PCI
Transaksi antara initiator (master) dg targetMaster pegang kendali busMaster menentukan jenis transaksi
Misal I/O read/write
Fase AddressFase Data
Abdul Rouf - 45
PCI Read Timing Diagram
Abdul Rouf - 46
PCI Bus Arbitration
Abdul Rouf - 47
Internet Resource
www.pcguide.com/ref/mbsys/buses/www.pcguide.com/