Perancangan Control Unit
Rancangan hardwired
Sejumlah gerbang (gate), counter dan register saling dihubungkan untuk menghasilkan sinyal-sinyal kontrol. Tiap rancangan memerlukan sekelompok piranti logika dan hubungan yang berbeda-beda
Rancangan microprogrammed
Sibentuk serangkaian instruksi mikro, yang disebut sebagai program mikro (micro-program) untuk setiap instruksi mikro dan disimpan dalam sebuah memori kontrol (biasanya ROM) dalam Control Unit.
Istilah micro-program pertama kali muncul pada tahun 1950 dan diperkenalkan oleh M. V. Wilkes
Pada hard-wired diperlukan perancangan ulang perangkat keras jika serangkaian instruksi dikembangkan
Sebaliknya, pada micro-programmed, serangkaian instruksi mikro (program-mikro) disimpan dalam ROM sehingga sebuah instruksi dapat diubah dengan mengubah program mikro yang bersesuaian dengan instruksi tersebut dan kelompok instruksi dapat dikembangkan dengan hanya menyertakan ROM tambahan yang berisi program-mikro bersesuaian.
Micro-programmed Control
Menggunakan sekumpulan instruksi untuk mengontrol operasi yang kompleks
Rangkaian instruksi tersebut disebut dengan micro-programming atau firmware
Microprogrammable Control Unit
Suatu control unit dapat dikatakan microprogrammable apabila memori kontrolnya dapat dimodifikasi oleh pemakai untuk menghasilkan instruksi makro yang dibentuk sesuai keinginan pemakai.
Apabila tidak, kelompok instruksi tetap, maka disebut kelompok instruksi dalam control unit hard-wired
KOMPONEN-KOMPONEN POKOK CONTROL UNIT
MICROPROGRAMMED
Instruction Register
Menyimpan instruksi register mesin yang dijalankan.
Control Store berisi microprogrammed
Untuk semua instruksi mesin.
Untuk startup mesin.
Untuk memprosesan interupt
Address Computing Circuiting
Menentukan alamat Control Store dari mikroinstruksi berikutnya yang akan dijalankan.
Microprogrammed Counter
Menyimpan alamat dari mikroinstruksi berikutnya.
Microinstruction Buffer
Menyimpan mikroinstruksi tersebut selama dieksekusi.
Microinstruction Decoder
Menghasilkan dan mengeluarkan mikroorder yang didasarkan pada mikroinstruksi dan opcode instruksi yang akan dijalankan
Implementation
Seluruh unit kontrol dapat membangkitkan sekumpulan sinyal kontrol.
Tiap saluran kontrol tersebut dalam keadaan on atau off
Kondisi tersebut direpresentasikan oleh digit biner untuk masing-masing saluran kontrolnya.
Terdapat control word untuk setiap operasi mikro.
Memiliki sejumlah control words untuk tiap instruksi mesin
Menambahkan field alamat untuk menjelaskan micro-instruction selanjutnya, untuk menspesifikasikan kondisi
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 CPUinternal dan satu bit bagi setiap saluran kontrol bus sistem
Typical Microinstruction Formats
Control Unit Function
Untuk mengeksekusi suatu instruksi, unit urutan logika mengeluarkan perintah READ ke memori kontrol
Word yang memiliki alamat yang dispesifikasikan pada register alamat kontrol dibaca ke dalam register buffer kontrol.
Isi register buffer kontrol menghasilkan sinyal-sinyal kontrol dan informasi alamat berikutnya untuk unit urutan logika.
Unit logika pengurutan memuatkan sebuah alamat ke dalam register alamat kontrol yang didasarkan pada informasi alamat berikutnya dari register buffer kontrol dan flag ALU.
Next Address Decision
Tergantung dari flag ALU dan register buffer control
Get next instruction
menambahkan 1 ke register alamat kontrol
Jump to new routine based on jump microinstruction
Memuatkan field alamat register buffer kontrol ke dalam register alamat kontrol
Jump to machine instruction routine
Memuatkan register alamat kontrol ke opcode di dalam IR
Advantages and Disadvantages of Microprogramming
Dapat menyederhanakan rancangan unit kontrol
Rancangan menjadi lebih murah
Kesalahan yang terjadi lebih sedikit
Slower
Tasks Done By Microprogrammed Control Unit
Pengurutan instruksi mikro mengambil instruksi-instruksi mikro berikutnya dari unit kontrol
Eksekusi instruksi mikro Menghasilkan sinyal-sinyal kontrol yang diperlukan untuk mengeksekusi instruksi mikro
Keduanya sama-sama dipertimbangkan dalam merancang sebuah unit kontrol karena akan mempengaruhi format instruksi mikro dan pewaktuan unit kontrol.
Pertimbangan Perancangan
Ukuran instruksi mikro
Peminimalan ukuran memori kontrol akan mengurangi biaya yang diperlukan u/ komponen tersebut
Waktu yang diperlukan untuk pembuatan alamat (address generation time)
Ditentukan oleh instruction register
Terjadi sekali per siklus instruksi, setelah sebuah instruksi diambil.
Next sequential address
Common in most designed
Branches
Baik yang bersyarat conditional maupun tidak bersyarat (unconditional)
Teknik Pengurutan
Berdasar instruksi mikro saat itu, flag-flag kondisi, isi IR, alamat memori kontrol harus dibuat untuk keperluan instuksi mikro berikutnya.
Berdasar pada format informasi alamat yang terdapat di dalam instruksi mikro
Dua field alamat
Field alamat tunggal
Format variabel
Execution
The cycle is the basic event
Each cycle is made up of two events
Fetch
Determined by generation of microinstruction address
Execute
Execute
Effect is to generate control signals
Some control points internal to processor
Rest go to external control bus or other interface
Tidak ada komentar:
Posting Komentar