Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Processing Unit Operations 1

Presentasi serupa


Presentasi berjudul: "Processing Unit Operations 1"— Transcript presentasi:

1 Processing Unit Operations 1
ORGANISASI KOMPUTER Processing Unit Operations 1

2 Bentuk Operasi Pada ALU
Untuk melaksanakan tugasnya ALU dibantu oleh register Y dan Z. Register Y berfungsi untuk menahan suatu data yang akan diproses oleh ALU menunggu data ke dua, karena untuk proses yang menggunakan dua data, kedua data tersebut harus masuk secara bersamaan. Sedang register Z digunakan untuk menampung sementara hasil pengolahan dari ALU.

3 Misal akan dilakukan operasi matematis di bawah ini :
R3  R1 + R2 Maka langkah-langkah yang dilakukan adalah sebagai berikut : R1out, Yin R2out, Add, Zin Zout, R3in

4 Eksekusi Sebuah Instruksi
Untuk melaksanakan sebuah instruksi secara lengkap, langkah-langkah yang diperlukan adalah sbb: Misal pada instruksi Add R1,(R3) Baca instruksi Ambil operand yang berada di memory (dengan alamat yang tersimpan di R3) Lakukan penjumlahan Simpan hasilnya di R1

5 Untuk langkah-langkah di atas maka prosessor memberikan urutan sinyal control seperti di bawah ini :
Pcout, MARin, Read, Clear Y, Set Carry-in to ALU, Add, Zin Zout, PCin, WMFC MDRout, IRin R1out, Yin R3out, MARin, Read, WMFC MDRout, Add, Zin Zout, R1in, End

6 Penjelasan : Mula-mula prosessor mengambil instruksi yang alamatnya tersimpan pada PC, sambil menunggu datangnya instruksi dari memori, PC mengupdate isinya (ditambah dengan 1) Setelah instruksi didapat, instruksi ini diterjemahkan oleh rangkaian control melalui IR, dan didapatkan instruksi Add R1,(R3) Operand pertama letaknya di register langsung di bawa ke register Y, sedang operand ke dua di baca dari memori yang alamatnya disimpan di register R3. Ketika operand kedua didapatkan langsug di bawa ke ALU untuk dijumlahkan dan hasilnya disimpan di register Z, dan selanjujutnya ditransfer ke register R1

7 Branching Sebagaimana sudah kita ketahui untuk melakukan proses branch maka prosessor akan mengupdate isi PC sebelumnya dengan alamat baru yang akan dieksekusi. Pengubahan isi PC dilakukan dengan menambah isi PC dengan nilai offset X. Misal pada saat CPU mengeksekusi instruksi di alamat 1000 yang berisi branch 1050, maka X harus berisi 49. Contoh : Jmp 1050

8 Eksekusi dari program diatas adalah sbb :
PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin Zout, PCin, WMFC MDRout, IRin PCout, Yin Offset-field-of-IRout, Add, Zin Zout, PCin, End

9 PENGERTIAN URUTAN SINYAL- SINYAL CONTROL (SEQUENCE OF CONTROL SIGNALS)
Untuk melaksanakan suatu instruksi, CPU mempunyai beberapa cara utk membang-kitkan sinyal control dlm urutan yang benar. Dua cara membangkitkan sinyal yang umum adalah : Hardwired control Microprogrammed control

10 Hardwired Control - Memerlukan pengaturan waktu untuk tiap step secara tepat. - Dapat dilakukan dg menggunakan counter yg dikendalikan oleh clock, dg asumsi: Tiap step memerlukan waktu yang sama. Tiap state/ count dari counter tsb berhubungan dg 1 step.

11 - Isi control step counter - Isi instruction register
Krn itu sinyal control yang diperlukan secara unik / khas ditentukan oleh : - Isi control step counter - Isi instruction register - Isi condition code dan status flag. Status flag : sinyal - sinyal yang mewakili keadaan beberapa unit / bagian dari CPU dan beberapa control line yang terhubung, seperti MFC status signal.

12 Perhatikan gambar control unit organization.
Decoder - encoder block merupakan suatu rangkaian combinational yang menghasilkan output control yang diperlukan, tergantung pada keadaan semua inputnya.

13 Gb. A. Control Unit Organization

14 Gb. B. Pemisahan Fungsi Decoding dan Encoding

15 Gambar A dan B di atas adalah blok diagram untuk menghasilkan sinyal kontrol yang digunakan untuk mengeksekusi suatu instruksi, yang diterjemahkan dalam beberapa sinyal kontrol dari instruction decoder (INS1 … INSm). Pelaksanaan setiap urutan sinyal kontrol akan dikendalikan oleh sebuah step decoder yang dihasilkan dari counter yang dipicu oleh sinyal clock (lihat gambar B).

16 Sinyal step docoder dan instruction decoder dipadukan dengan sinyal dari status flag dan condition codes, menghasilkan sinyal control individu seperti Pcout, Yin, Add, End, dan sebagainya. Contoh : Misal untuk mengimplementasikan fungsi logic: Zin = T1 + T6 . Add + T5 . BR + … Diagram rangkaian dari encoder untuk fungsi di atas adalah sbb :

17 Gb. Diagram rangkaian untuk sinyal kontrol Zin

18 PLA (Programmable Logic Array)
Dari gambar di atas dapat kita lihat bahwa untuk mengimplementasikan suatu fungsi dapat diguna-kan gerbang-gerbang dasar. Dan untuk untuk me-nerapkan hal ini digunakan VLSI (Very Large Scale Integration) Technology. Dalam Chip VLSI struktur yang digunakan lebih mudah di realisasi-kan dari pada rangkaian fungsi-fungsi digital de-ngan menggunakan gerbang dasar. Salah satu struktur yang dipakai dalam teknologi VLSI ada-lah PLA.

19 PLA ter-diri dari barisan gerbang AND yang diikuti de-ngan barisan gerbang OR dan dapat digunakan untuk menerapkan fungsi-fungsi logika kombinasi dari beberapa variable. Semua kombinasi rangkaian dalam Encoder dan Decoder dapat diterapkan dalam bentuk PLA tunggal seperti gambar dibawah ini

20 Gambar PLA

21 CPU-Memory Interaction
Interaksi antara CPU dengan memory adalah berupa proses menulis dan membaca data oleh CPU ke dan dari memory. Dimana bus data external dari CPU terhubung dengan MDR. Di bawah ini adalah gambar rangkaian yang digunakan untuk menghasilkan sinyal kontrol read dan write.

22 Gambar rangkaian pembangkit sinyal Read & Write

23 Gambar timing diagram operasi Read

24 Rangkaian di atas dapat digunakan untuk memory yang berkecepatan tinggi (fast memory) maupun rendah (slow memory). Fast memory membutuhkan satu clock cycle untuk setiap transfer data sedang slow memory membutuhkan lebih itu. Hal ini dapat dilakukan karena adanya komponen flip-flop yang menahan permintaan transfer data sampai ada sinyal MFC yang berarti transfer data selesai.

25 Perhatikan gambar timing diagram untuk operasi read memory
Perhatikan gambar timing diagram untuk operasi read memory. Saat sinyal read diberikan (high) maka sinyal MR (memory read) juga ikut ‘high’. Dan sinyal MR ini akan tetap ‘high’ meskipun sinyal read telah berubah ‘low’. Saat itulah CPU mengaktifkan WMFC (wait memory function complited), disusul kemudian dengan sinyal run (aktif low).

26 Bila data telah terkirim, memory mengirim sinyal MFC
Bila data telah terkirim, memory mengirim sinyal MFC. Sinyal ini akan mematikan sinyal read dari gerbang and dan flip-flop (pin K) sekaligus menghentikan sinyal run dari gerbang and.

27 Microprogrammed Control
Merupakan cara lain untuk membangkitkan sinyal kontrol. Hal-hal utama mengenai microprogrammed control ini adalah sbb: Pengaturan sinyal kontrol dilakukan dengan microinstruction (lihat gambar di bawah). Control word (CW) adalah word yang terdiri dari beberapa bit, dimana tiap bitnya mewakili berbagai sinyal kontrol. Setiap langkah / step pada urutan control (control sequence) sebuah instruksi mendefinisikan kombinasi yang khas dari 0 dan 1 pada CW.

28 Contoh micro instruction untuk instruksi :
Add R1,R3

29 Urutan perintah dalam CW menyatakan urutan sinyal control dari sebuah instruksi mesin (machine instruction), atau merupakan microroutine bagi instruksi mesin tsb. Dan satu baris (word) pada CW disebut sebagai microinstruction. Microprogram suatu komputer disimpan dalam memory khusus yang disebut control store. Control unit dapat menghasilkan sinyal kontrol untuk setiap instruksi dengan membaca CW yang sesuai dengan microinstruction dari control store.

30 Organisasi control unit untuk microprogrammed digambarkan sebagai berikut :

31 Untuk membaca CW secara berurutan digunakan microprogram counter (µPC)
Untuk membaca CW secara berurutan digunakan microprogram counter (µPC). Setiap instruksi baru masuk ke IR, maka sebuah “starting address generator” diload ke dalam µPC. Berikutnya secara otomatis meng-increment alamat yang diberikan dengan ditriger oleh clock. Dalam praktisnya organisasi control unit tidaklah cukup seperti gambar di atas. Gambar diatas digunakan hanya untuk instruksi yang berjalan secara berurutan. Untuk instruksi yang didalamnya terdapat branch diperlukan informasi dari status flag dan condition codes.

32 Microinstruction dengan instruksi Branch
Address Microinstruction PCout, MARin, Read, Clear Y, Set carry-in to ALU, Add, Zin 1 Zout, PCin, WMFC 2 MDRout, IRin 3 Branch to starting address of appropriate microroutine …………………………………………………………………………… 25 PCout, Yin, If N=0 then branch to microinstruction 0 26 Offset-field-of-IRout, Add, Zin 27 Zout, PCin, End Microinstruction dengan instruksi Branch

33 Untuk mengimplementasikan microroutine dengan instruksi branch, maka organisasi CU yang digunakan adalah sbb:

34 Dengan menggunakan organisasi di atas maka dapat dilakukan instruksi branch. Untuk branch tanpa syarat dilakukan dengan memasukkan nilai alamat yang akan dituju (di dapat dari instruksi) ke µPC. Sedang untuk branch bersyarat hampir sama dengan cara di atas dan dipadukan dengan informasi dari status flag dan condition codes

35 Microinstructions Dalam penulisan microinstructions pemakaian bit secara individu untuk setiap sinyal kontrol akan sangat panjang jika banyak sinyal kontrol yang harus dikendalikan melalui penulisan CW. Untuk menghitung jumlah bit CW yang diperlukan maka dapat diperhitungkan dari : Jumlah register (R0, R1, R2, …) Jumlah operasi yang dilakukan (read, write, clear Y, Set Carry-in, WMFC, …) Jumlah fungsi arithmatic & logic (add, subtract, and, or, …)

36 Jika ditotal kira-kira diperlukan sebanyak 42 sinyal kontrol
Jika ditotal kira-kira diperlukan sebanyak 42 sinyal kontrol. Dan ini ukuran cukup panjang bagi sinyal kontrol. Untuk itu dilakukan penyederhanaan dengan cara mengelompokkan sinyal kontrol berdasarkan fungsinya dan kombinasi bit. Disamping dalam prakteknya terdapat hal-hal sbb: Sebagian besar sinyal ini tidak diperlukan secara bersama-sama, ada beberapa sinyal yang tidak dapat dibangkitkan bersama-sama (hanya satu fungsi saja yang diaktifkan

37 contoh : sinyal Add pada ALU, Sinyal read dan Write, R0 out dan R1 out dll). Sehingga beberapa mikro instruksi kebanyakan dapat diwakili dalam satu mikrooperasi. Untuk operasi ALU dapat diwakili dengan 4 bit untuk 16 fungsi yang berbeda (Add, Sub, OR, And, ….. XOR). Sinyal kontrol keluaran untuk masing-masing register dapat dikelompokkan. Dari hal-hal tsb di atas maka sinyal kontrol dapat dikelompokkan menjadi seperti gambar berikut ini:

38 Gambar pengelompokan sinyal kontrol

39 Dengan pengelompokan seperti di atas 42 sinyal kontrol dapat disederhanakan menjadi 20 bit. Pengkodean dari 42 bit sebenarnya dapat dikodekan hanya dengan 6 bit (26 = 64 bit), namun dalam merancang rangkaian decodernya sangatlah rumit sehingga tidak mungkin dibuat kombinasi hanya dengan 6 bit saja.


Download ppt "Processing Unit Operations 1"

Presentasi serupa


Iklan oleh Google