Bus-Bus Sistem Maria Susan Anggreainy, M.Kom
09/03/2008
Maria Susan Anggreainy, M.Kom
1
Review
Seluruh rancangan komputer saat ini secara virtual didasarkan pada konsep yang dikembangkan oleh John Von Neumann di institute for advanced studies, Princeton. Rancangan seperti itu dikenal sebagai arsitektur Von Neumann dan didasarkan pada tiga konsep utama: z z
z
09/03/2008
Data dan instruksi-instruksi disimpan di memori bacatulis tunggal. Muatan dari memori ini dapat dialamati dengan lokasi, tanpa tergantung pada jenis data yang berada di dalamnya. Eksekusi terjadi dengan cara sekuensial (kecuali diubah secara eksplisit) dari instruksi yang satu ke instruksi yang berikutnya.
Maria Susan Anggreainy, M.Kom
2
Program Concept
09/03/2008
Hardwired systems are inflexible General purpose hardware can do different tasks, given correct control signals Instead of re-wiring, supply a new set of control signals
Maria Susan Anggreainy, M.Kom
3
What is a program?
09/03/2008
A sequence of steps For each step, an arithmetic or logical operation is done For each operation, a different set of control signals is needed
Maria Susan Anggreainy, M.Kom
4
Function of Control Unit
For each operation a unique code is provided z
09/03/2008
e.g. ADD, MOVE
A hardware segment accepts the code and issues the control signals We have a computer!
Maria Susan Anggreainy, M.Kom
5
Components
The Control Unit and the Arithmetic and Logic Unit constitute the Central Processing Unit Data and instructions need to get into the system and results out z
Temporary storage of code and results is needed z
09/03/2008
Input/output
Main memory Maria Susan Anggreainy, M.Kom
6
Computer Components: Top Level View
09/03/2008
Maria Susan Anggreainy, M.Kom
7
Penjelasan
09/03/2008
CPU bertukar data dengan memori. Memory Address Register (MAR) : menentukan alamat di dalam memori untuk operasi baca atau tulis berikutnya Memory Buffer Register (MBR) : berisi data yang akan dituliskan ke dalam memori atau menerima data dan yang dibaca dari memori. Dengan cara yang sama, sebuah I/O Address Register (I/O AR) menspesifikasikan perangkat I/O tertentu. I/O Buffer Register (I/O BR) digunakan untuk pertukaran data antara modul I/O dengan CPU. Maria Susan Anggreainy, M.Kom
8
Instruction Cycle
Two steps: Fetch z Execute z
09/03/2008
Maria Susan Anggreainy, M.Kom
9
Fetch Cycle
Program Counter (PC) holds address of next instruction to fetch Processor fetches instruction from memory location pointed to by PC Increment PC z
09/03/2008
Unless told otherwise
Instruction loaded into Instruction Register (IR) Processor interprets instruction and performs required actions Maria Susan Anggreainy, M.Kom
10
Execute Cycle
Processor-memory z
Processor I/O z
z
09/03/2008
Some arithmetic or logical operation on data
Control z
Data transfer between CPU and I/O module
Data processing z
data transfer between CPU and main memory
Alteration of sequence of operations e.g. jump
Combination of above Maria Susan Anggreainy, M.Kom
11
09/03/2008
Maria Susan Anggreainy, M.Kom
12
Example of Program Execution
09/03/2008
Maria Susan Anggreainy, M.Kom
13
Penjelasan
09/03/2008
PC berisi 300, alamat dari instruksi pertama. Instruksi ini (nilai 1940 dalam heksadesimal) dimasukkan ke dalam register instruksi IR dan PC ditambahkan nilainya. Perlu dicatat bahwa proses ini akan melibatkan penggunaan memori Address Register (MAR) dan Memory Buffer Register (MBR). Untuk mudahnya, register-register itu diabaikan. 4 bit pertama (digit heksadesimal pertama) di dalam IR menunjukkan bahwa akumulator (AC) akan dimasukkan. 12 bit sisanya (digit tiga heksadesimal) menentukan alamat (940) dari data yang akan terisi. Instruksi yang berikutnya (5941) diambil dari lokasi 301 dan PC dinaikkan nilainya. Isi AC yang lama dan lokasi 941 ditambahkan dan hasilnya disimpan di dalam AC. Instruksi yang berikutnya (2941) akan diambil dari lokasi 302 dan PC dinaikkan nilainya. Isi AC akan disimpan pada lokasi 941. Maria Susan Anggreainy, M.Kom
14
Instruction Cycle State Diagram
09/03/2008
Maria Susan Anggreainy, M.Kom
15
Interupsi atau Interrupt
09/03/2008
Secara virtual semua komputer menyediakan mekanisme yang membuat modul-modul lainnya (I/O, memori) dapat menginterupsi pengolahan normal prosesor Interupsi disediakan terutama sebagai cara untuk meningkatkan efisiensi pengolahan. Sebagai contoh, perangkat eksternal banyak yang lebih lambat dibanding dengan prosesor. Maria Susan Anggreainy, M.Kom
16
Interrupts
Mechanism by which other modules (e.g. I/O) may interrupt normal sequence of processing Program z z
Timer z z
z
from I/O controller untuk memberi sinyal penyelesaian normal suatu operasi atau memberi sinyal berbagai kondisi error.
Hardware failure z z
09/03/2008
Generated by internal processor timer Used in pre-emptive multi-tasking
I/O z
Dibangkitkan dengan beberapa kondisi yang terjadi sebagai hasil dari suatu eksekusi instruksi e.g. overflow, division by zero
Dibangkitkan oleh kegagalan seperti kegagalan daya e.g. memory parity error Maria Susan Anggreainy, M.Kom
17
Program Flow Control
09/03/2008
Maria Susan Anggreainy, M.Kom
18
Transfer of Control via Interrupts
09/03/2008
Maria Susan Anggreainy, M.Kom
19
09/03/2008
Dari sudut pandang program pengguna, suatu interrupt adalah: suatu interupsi/gangguan terhadap urutan eksekusi noimal. Ketika pengolahan interrupt telah selesai dilakukan, maka eksekusi dilakukan lagi Maria Susan Anggreainy, M.Kom
20
Interrupt Cycle
Added to instruction cycle Processor checks for interrupt z
If no interrupt, fetch next instruction If interrupt pending: z z z
z z 09/03/2008
Indicated by an interrupt signal
Suspend execution of current program Save context Set PC to start address of interrupt handler routine Process interrupt Restore context and continue Maria Susan Anggreainy, M.Kom interrupted program
21
Instruction Cycle with Interrupts
09/03/2008
Maria Susan Anggreainy, M.Kom
22
Program Timing Short I/O Wait
09/03/2008
Maria Susan Anggreainy, M.Kom
23
Program Timing Long I/O Wait
09/03/2008
Maria Susan Anggreainy, M.Kom
24
Instruction Cycle (with Interrupts) - State Diagram
09/03/2008
Maria Susan Anggreainy, M.Kom
25
Multiple Interrupts
Disable interrupts z
z
z
Define priorities z
z
09/03/2008
Processor will ignore further interrupts whilst processing one interrupt Interrupts remain pending and are checked after first interrupt has been processed Interrupts handled in sequence as they occur Low priority interrupts can be interrupted by higher priority interrupts When higher priority interrupt has been processed, processor returns to previous interrupt Maria Susan Anggreainy, M.Kom
26
Multiple Interrupts - Sequential
09/03/2008
Maria Susan Anggreainy, M.Kom
27
Multiple Interrupts – Nested
09/03/2008
Maria Susan Anggreainy, M.Kom
28
09/03/2008
Sebagai contoh dari pendekatan yang kedua ini, ambil sebuah sistem dengan tiga buah perangkat I/O: printer, disk, dan saluran komunikasi, dengan prioritas masing-masing 2, 4, dan 5.
Maria Susan Anggreainy, M.Kom
29
Penjelasan
09/03/2008
Program pengguna dimulai dari t = 0. Pada saat t = 10, suatu interupsi printer terjadi; informasi pengguna ditempatkan pada stack sistem dan eksekusi dilanjutkan pada Interupsi Service Routine (ISR) printer. Pada saat routine ini masih dieksekusi, pada t = 15, terjadi interupsi komunikasi. Karena saluran komunikasi mempunyai prioritas yang lebih tinggi dibanding dengan printer, maka interupsinya didahulukan. Printer ISR diinterupsi, keadaannya dimasukkan ke dalam stack, dan eksekusi dilanjutkan pada ISR komunikasi. Pada saat routine ini dieksekusi, terjadi Interupsi disk (t= 20). Karena memiliki prioritas lebih rendah, maka interupsi ini ditahan dahulu, dan ISR komunikasi terus dilaksanakan hingga selesai. Maria Susan Anggreainy, M.Kom
30
09/03/2008
Ketika komunikasi ISR lengkap (t = 25), keadaan prosesor sebelumnya diambil, yaitu eksekusi ISR printer. Bagaimanapun, sesaat sebelum instruksi tunggal yang terdapat di dalam routine itu dapat dieksekusi, prosesor lebih mengutamakan interupsi disk yang prioritasnya lebih tinggi dan kontrol memindahkannya ke ISR disk. Setelah routine itu selesai (t = 35) maka ISR printer dilaksanakan. Ketika routine selesai (t = 40), akhirnya kontrol kembali ke program pengguna. Maria Susan Anggreainy, M.Kom
31
Time Sequence of Multiple Interrupts
09/03/2008
Maria Susan Anggreainy, M.Kom
32
09/03/2008
Buku rujukan : William Stallings, 2003, architecture and computer organitation, prentice-hall, usa
Maria Susan Anggreainy, M.Kom
33