47
Abdul Rouf - 1 Organisasi dan Arsitektur Komputer : Perancangan Kinerja (William Stallings) Chapter 3 Bus Sistem

Organisasi dan Arsitektur Komputer : Perancangan Kinerjaahyad.staff.gunadarma.ac.id/Downloads/files/54223/Chapter_3.pdfOrganisasi dan Arsitektur Komputer : Perancangan Kinerja (William

Embed Size (px)

Citation preview

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/