Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag...

24
Unit Control (Hardwired and Micro-programmed)

Transcript of Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag...

Page 1: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Unit Control (Hardwired and Micro-programmed)

Page 2: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Implementasi Unit Kontrol

Implementasi Hardwired

Implementasi Microprogrammed

Page 3: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Implementasi Hardwired

Pada implementasi hardwired, padadasarnya unit kontrol merupakan rangkaiankombinatorial.

Sinyal-sinyal logika inputnya diubah menjadisekumpulan sinyal-sinyal logika output, yang merupakan sinyal-sinyal kontrol.

Page 4: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Hardwired Implementation (1)Mengontrol input-input unitFlag dan sinyal-sinyal kontrol bus

Umumnya, tiap bit memiliki arti tertentu.

Instruction registerUnit control menggunakan op-code dan tiap op-code akan melakukan aksi yang berbeda (sejumlahkombinasi sinyal-sinyal kontrol) instruksi berlainanInput logika unik bagi setiap op-codeDecoder mengambil input yang didekode danmenghasilkan sebuah outputUmumnya, dekoder memiliki n input biner and 2n

outputs biner

Page 5: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Hardwired Implementation (2)Clock

Mengeluarkan rangkaian pulsa yang berulang-ulangBerguna untuk mengukur durasi operasi mikroHarus cukup panjang untuk memungkinkanterjadinya perambatan sinyal di sepanjanglintasan data dan merambat ke rangkaian CPU. Sinyal kontrol yang berlainan dalam satuan waktuyang berbeda pada sebuah siklus instruksitunggalnyaDibutuhkan penghitung sebagai input bagi unit kontrol dengan input kontrol yang berbeda untuktiap satuan waktunya.

Page 6: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Implementasi Hardwired

Yang harus dilakukan setiap sinyal kontroladalah menurunkan ekspresi Boole sinyaltersebut sebagai fungsi input. Tiap kali sinyal kontrol dibuat oleh CPU hasilnya akan berupa persamaan Boolean yang menentukan tingkah laku unit kontroldan CPU.Semakin kompleks, semakin modern CPU jumlah persamaan Boole untukmendefinisikan unit kontrol sangat besarsemakin sulit untuk mengimplementasikanhardwired.

Page 7: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Problems With Hard Wired Designs

Complex sequencing & micro-operation logicDifficult to design and testInflexible designDifficult to add new instructions

Page 8: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Perancangan Control UNitRancangan hardwired sejumlah gerbang(gate), counter dan register saling dihubungkanuntuk menghasilkan sinyal-sinyal kontrol. Tiaprancangan memerlukan sekelompok pirantilogika dan hubungan yang berbeda-beda

Rancangan microprogrammed dibentukserangkaian instruksi mikro, yang disebutsebagai program mikro (micro-program) untuksetiap instruksi mikro dan disimpan dalamsebuah memori kontrol (biasanya ROM) dalamControl Unit.

Page 9: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Istilah micro-program pertama kali muncul padatahun 1950 dan diperkenalkan oleh M. V. WilkesPada hard-wired diperlukan perancangan ulangperangkat keras jika serangkaian instruksidikembangkanSebaliknya, pada micro-programmed, serangkaianinstruksi mikro (program-mikro) disimpan dalamROM sehingga sebuah instruksi dapat diubahdengan mengubah program mikro yang bersesuaian dengan instruksi tersebut dankelompok instruksi dapat dikembangkan denganhanya menyertakan ROM tambahan yang berisiprogram-mikro bersesuaian.

Page 10: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Microprogrammable Control Unit

Suatu control unit dapat dikatakanmicroprogrammable apabila memorikontrolnya dapat dimodifikasi oleh pemakaiuntuk menghasilkan instruksi makro yang dibentuk sesuai keinginan pemakai. Apabila tidak, kelompok instruksi tetap, makadisebut kelompok instruksi dalam control unit hard-wired

Page 11: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Micro-programmed Control

Menggunakan sekumpulan instruksi untukmengontrol operasi yang kompleksRangkaian instruksi tersebut disebut denganmicro-programming atau firmwareFirmware berada di antara perangkat keraskomputer dan perangkat lunak komputerLebih mudah dirancang dibandingkanperangkat keras namun akan lebih sulit biladibandingkan dengan proogram perangkatlunak.

Page 12: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

KOMPONEN-KOMPONEN POKOK

CONTROL UNIT MICROPROGRAMMED

1. Instruction Register Menyimpan instruksi register mesin yang dijalankan.

2. Control Store berisi microprogrammedUntuk semua instruksi mesin.Untuk startup mesin.Untuk memprosesan interupt

3. Address Computing CircuitingMenentukan alamat Control Store darimikroinstruksi berikutnya yang akan dijalankan.

Page 13: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

4. Microprogrammed CounterMenyimpan alamat dari mikroinstruksi berikutnya.

5. Microinstruction BufferMenyimpan mikroinstruksi tersebut selama dieksekusi.

6. Microinstruction DecoderMenghasilkan dan mengeluarkan mikroorder yang didasarkan pada mikroinstruksi dan opcode instruksiyang akan dijalankan

Page 14: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

ImplementationSeluruh unit kontrol dapat membangkitkansekumpulan sinyal kontrol.Tiap saluran kontrol tersebut dalam keadaan on atau offKondisi tersebut direpresentasikan oleh digit biner untuk masing-masing saluran kontrolnya.Terdapat control word untuk setiap operasimikro.Memiliki sejumlah control words untuk tiapinstruksi mesinMenambahkan field alamat untuk menjelaskanmicro-instruction selanjutnya, untukmenspesifikasikan kondisi

Page 15: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Micro-instruction Types

Each micro-instruction specifies single micro-operations to be performed

(vertical micro-programming)

Each micro-instruction specifies many different micro-operations to be performed in parallel

(horizontal micro-programming)Terdapat satu bit bagi setiap saluran kontrol CPU internal dan satu bit bagi setiap saluran kontrolbus sistem

Page 16: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Typical Microinstruction Formats

Page 17: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Control Unit FunctionUntuk mengeksekusi suatu instruksi, unit urutanlogika mengeluarkan perintah READ ke memorikontrolWord yang memiliki alamat yang dispesifikasikanpada register alamat kontrol dibaca ke dalamregister buffer kontrol.Isi register buffer kontrol menghasilkan sinyal-sinyalkontrol dan informasi alamat berikutnya untuk unit urutan logika.Unit logika pengurutan memuatkan sebuah alamatke dalam register alamat kontrol yang didasarkanpada informasi alamat berikutnya dari register buffer kontrol dan flag ALU.

Page 18: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Next Address Decision

Tergantung dari flag ALU dan register buffer control

Get next instructionmenambahkan 1 ke register alamat kontrol

Jump to new routine based on jump microinstruction

Memuatkan field alamat register buffer kontrol ke dalamregister alamat kontrol

Jump to machine instruction routineMemuatkan register alamat kontrol ke opcode di dalamIR

Page 19: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Advantages and Disadvantages of Microprogramming

Dapat menyederhanakan rancangan unit kontrol

Rancangan menjadi lebih murahKesalahan yang terjadi lebih sedikit

Slower

Page 20: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Tasks Done By MicroprogrammedControl Unit

Pengurutan instruksi mikro mengambilinstruksi-instruksi mikro berikutnya dari unit kontrolEksekusi instruksi mikro Menghasilkansinyal-sinyal kontrol yang diperlukan untukmengeksekusi instruksi mikro

Keduanya sama-sama dipertimbangkandalam merancang sebuah unit kontrol karenaakan mempengaruhi format instruksi mikrodan pewaktuan unit kontrol.

Page 21: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Pertimbangan PerancanganUkuran instruksi mikro

Peminimalan ukuran memori kontrol akanmengurangi biaya yang diperlukan u/ komponentersebut

Waktu yang diperlukan untuk pembuatanalamat (address generation time)

Ditentukan oleh instruction registerTerjadi sekali per siklus instruksi, setelah sebuahinstruksi diambil.

Next sequential addressCommon in most designed

BranchesBaik yang bersyarat conditional maupun tidak bersyarat(unconditional)

Page 22: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Teknik Pengurutan

Berdasar instruksi mikro saat itu, flag-flag kondisi, isi IR, alamat memori kontrol harusdibuat untuk keperluan instuksi mikroberikutnya. Berdasar pada format informasi alamat yang terdapat di dalam instruksi mikro

Dua field alamatField alamat tunggalFormat variabel

Page 23: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Execution

The cycle is the basic eventEach cycle is made up of two events

FetchDitentukan oleh pembuatan alamat instruksi mikro.

Execute

Page 24: Unit Control (Hardwired and Micro-programmed) · Mengontrolinput-input unit Flag dansinyal-sinyalkontrolbus Umumnya, tiapbit memilikiartitertentu. Instruction register Unit control

Execute

Pada dasarnya eksekusi adalah untukmenghasilkan sinyal-sinyal kontrolSebagian sinyal kontrol tersebut menuju kedalam CPU.Sebagian sinyal kontrol lainnya menuju kebus kontrol eksternal atau antarmukaeksternal lainnya. Format dan isi instruksi mikro akanmenentukan kompleksitas modul logikakontrol.