Vous êtes sur la page 1sur 55

MAKALAH ARSITEKRUR dan ORGANISASI KOMPUTER

MIKROPROGRAMED CONTROL UNIT

TUGAS MATA KULIAH


ARSITEKRUR dan ORGANISASI KOMPUTER
DOSEN PENGAMPU
R BAGUS SUMANTRI, SKOM, MKOM

DISUSUN
SANGIDUN (NIM 18.552.0012)
MUHAMMAD NIKO NURHIDAYAT (NIM 18.552.0008)
NURWAHID (NIM 18.552.0009)
EKOAGUS PRIYATNO (NIM 18.552.0003)

Sekolah Tinggi Manajemen Informasi dan Komputer


(STMIK KOMPUTAMA MAJENANG)
2018

i
KATA PENGANTAR

Puji syukur kehadirat Tuhan Yang Maha Esa atas segala rahmatNYA
sehingga makalah ini dapat tersusun hingga selesai. Tidak lupa kami juga
mengucapkan banyak terimakasih dari beberapa sumber yang kami ambil dalam
penyusunan makalah ini.
Dan harapan kami semoga makalah ini dapat menambah pengetahuan dan
pengalaman bagi kami khususnya dan bagi para pembaca pada umumnya, untuk
ke depannya dapat memperbaiki isi maupun menambah isi makalah agar menjadi
lebih baik lagi.
Karena keterbatasan pengetahuan maupun pengalaman kami, Kami yakin
masih banyak kekurangan dalam makalah ini, Oleh karena itu kami sangat
mengharapkan saran dan kritik yang membangun dari pembaca demi
kesempurnaan makalah ini.

Majenang,02 Desember 2018

Penyusun

ii
DAFTAR ISI

KATA PENGANTAR ............................................................................................ ii

DAFTAR ISI .......................................................................................................... iii

DAFTA GAMBAR ................................................................................................. v

DAFTAR TABEL .................................................................................................. vi

BAB I ...................................................................................................................... 7

PENDAHULUAN .............................................................................................. 7

A. FUNGSI DAN STRUKTUR KOMPUTER ................................................ 7

1. Komputer Prosesor Tunggal Sederhana : ............................................. 8

2. Komputer Multicore ............................................................................... 9

B. ORGANISASI PROCESSOR ................................................................... 10

C. CONTROL AND STATUS REGISTERS ................................................ 12

D. CONTROL UNIT ..................................................................................... 12

1. Micro-Operation ................................................................................... 13

2. Kendali Prosesor ( Control Of The Processor) ..................................... 14

3. Control Unit Implementation. .............................................................. 17

BAB II ................................................................................................................... 18

PEMBAHASAN ............................................................................................... 18

A. PENDAHULUAN ..................................................................................... 18

B. KONSEP DASAR ..................................................................................... 19

1. Microinstructions .................................................................................. 19

2. Microprogrammed Control Unit ........................................................... 23

3. Wilkes Control...................................................................................... 25

4. Keuntungan dan kerugian ..................................................................... 30

C. MICROINSTRUCTION SEQUENCING................................................. 30

iii
1. Pertimbangan Desain ............................................................................ 31

2. Teknik Pengurutan ................................................................................ 31

3. Address Generation .............................................................................. 35

4. LSI-11 Microinstruction Sequencing ................................................... 37

D. MICROINTRUCTION EXECUTION ..................................................... 38

1. A Taxonomy of Microinstructions (taksonomi mikrointruksi) ............ 39

2. Microinstruction Encoding ................................................................... 43

3. LSI-11 Microinstruction Execution ...................................................... 47

4. IBM 3033 Microinstruction Execution................................................. 51

BAB III ................................................................................................................. 53

PENUTUP ......................................................................................................... 53

A. KESIMPULAN ......................................................................................... 53

B. KRITIK dan SARAN SARAN ................................................................. 54

DAFTAR PUSTAKA ........................................................................................... 55

iv
DAFTAR GAMBAR

Gambar I-1 Komputer Prosesor Tunggal Sederhana ............................................ 8


Gambar I-2 Tampilan Sederhana Elemen Utama Komputer Multicore ................. 9
Gambar I-3 CPU dengan Bus Sistem .................................................................... 10
Gambar I-4 Struktur Internal CPU ........................................................................ 11
Gambar I-5 Diagram Alir Siklus Intruksi ............................................................. 13
Gambar I-6 Blok Diagram Control Unit ............................................................... 16
Gambar II-1 Typical Format Mikro Instruksi ....................................................... 21
Gambar II-2 Organisasi Control Memory ............................................................. 22
Gambar II-3 Control Unit Mikroarsitektur ........................................................... 23
Gambar II-4 Fungsi Microprogramed Control Unit............................................. 24
Gambar II-5 Mikro Terprogram Contro Unit Wilkes ........................................... 26
Gambar II-6 Branch Control Logic : Dua Field Alamat ....................................... 32
Gambar II-7 Branch Control Logic : Bidang Alamat Tunggal ............................. 33
Gambar II-8 Branch Control Logic: Format Variabel .......................................... 34
Gambar II-9 Kontrol Alamat Register IBM3033 .................................................. 36
Gambar II-10 Organisasi Control Unit ................................................................. 38
Gambar II-11 Pengkodean Mikroinstruksi ........................................................... 44
Gambar II-12 Format Alternatif Mikrointruksi untuk mesin sederhana ............... 46
Gambar II-13 Blok diagram sederhana LSI-11 Processor .................................... 47
Gambar II-14 Organisasi LSI-11 Control Unit ..................................................... 48
Gambar II-15 Format Mikrointruksi LSI-II .......................................................... 50
Gambar II-16 Format Mikrointruksi IBM 3303 ................................................... 52

v
DAFTAR TABEL

Tabel II-1 Contoh Mesin Set Intruksi Wilkes ....................................................... 19


Tabel II-2 Contoh Mikro Intruksi Wilkes ............................................................. 29
Tabel II-3 Teknik Pembangkitan Alamat Mikrointruksi ...................................... 35
Tabel II-4 Spektrum Mikrointruksi ....................................................................... 42
Tabel II-5 Beberapa LSI-11 Mikrointruksi ........................................................... 50
Tabel II-6 Control Field Mikroinstruksi IBM 3303 .............................................. 51

vi
BAB I
PENDAHULUAN

Komputer adalah sistem yang lengkap dan rumit, Komputer jaman sekarang
berisi jutaan komponen elektronik dasar. Untuk kita memahami sebuah system
komputer secara jelas kita perlu memahami sistem hirarki dari komputer, yang
mana sistem hirarki merupakan sekumpulan subsistem yang saling terkait mulai
dari titik tertinggi sampe titik terendah.
A. FUNGSI DAN STRUKTUR KOMPUTER
Struktur dan fungsi komputer pada intinya sederhana, secara umum
hanya ada empat fungsi dasar yang dapat dilakukan komputer yaitu :
1. Pemrosesan data ( Data Processing) : Data dapat mengambil berbagai
bentuk, dan berbagai persyaratan pemrosesan luas. Namun, kita akan
melihat bahwa hanya ada sedikit metode dasar atau jenis pengolahan data
2. Penyimpanan data (Data Storage) : Bahkan jika komputer memproses
data dengan cepat (yaitu, data masuk dan diproses, dan hasilnya segera
keluar), komputer harus menyimpan sementara setidaknya potongan data
yang sedang dikerjakan pada saat tertentu. Jadi, setidaknya ada fungsi
penyimpanan data jangka pendek. Sama pentingnya, komputer melakukan
fungsi penyimpanan data jangka panjang. File data disimpan di komputer
untuk pengambilan dan pembaruan berikutnya.
3. Perpindahan Data (Data Movement) : Lingkungan operasi komputer
terdiri dari perangkat yang berfungsi sebagai sumber atau tujuan data.
Ketika data diterima dari atau dikirim ke perangkat yang terhubung
langsung ke komputer, proses ini dikenal sebagai input-output (I / O), dan
perangkat disebut sebagai periferal. Ketika data dipindahkan ke jarak yang
lebih jauh, ke atau dari perangkat jarak jauh, proses ini dikenal sebagai
komunikasi data.
4. Kendali (Control) : Di dalam komputer, unit kontrol mengelola sumber
daya komputer dan mengatur kinerja bagian-bagian fungsionalnya sebagai
respons terhadap instruksi.

7
Struktur yang ada pada komputer secara umum terbagi 2 yaitu :
1. Komputer Prosesor Tunggal Sederhana :

Gambar I-1 Komputer Prosesor Tunggal Sederhana

Ada empat komponen struktural utama ditingkat atas yaitu :


a. Central processing unit (CPU): Mengontrol pengoperasian
komputer dan menjalankan fungsi pemrosesan datanya; sering hanya
disebut sebagai prosesor
b. Main Memory : Menyimpan data
c. I/O: Memindahkan data antara komputer dan lingkungan
eksternalnya.
d. System interconnection: Beberapa mekanisme yang menyediakan
komunikasi antara CPU, memori utama, dan I / O. Contoh umum
dari sistem interkoneksi adalah dengan menggunakan bus sistem,
yang terdiri dari sejumlah kawat konduktor yang dilekatkan semua
komponen lainnya.

8
Selanjutnya menuju satu langkah menuju komponen yang paling
kompleks lagi adalah CPU. Komponen struktural utamanya adalah sebagai
berikut:
a. Control unit: Mengontrol pengoperasian CPU dan karenanya
komputer.
e. Arithmetic and logic unit (ALU): Menjalankan fungsi pemrosesan
data komputer.
f. Registers: Menyediakan penyimpanan internal ke CPU
g. CPU interconnection: Beberapa mekanisme yang menyediakan
komunikasi di antara unit kontrol, ALU, dan register
Dalam pembahasan Microprogramed Control Unit nantinya, ada beberapa
pendekatan untuk pelaksanaan unit kontrol, salah satu pendekatan umum
adalah implementasi mikroprogram. Intinya, unit kontrol
microprogrammed beroperasi dengan mengeksekusi microinstructions
yang mendefinisikan fungsi unit kontrol. Dengan pendekatan ini, struktur
unit kontrol dapat digambarkan, seperti dalam Gambar I-1
2. Komputer Multicore

Gambar I-2 Tampilan Sederhana Elemen Utama Komputer Multicore

9
Komputer jaman sekarang umumnya memiliki banyak prosesor.
Ketika semua prosesor ini berada pada satu chip, istilah komputer
multicore digunakan, dan setiap unit pemrosesan (Terdiri dari unit kontrol,
ALU, register, dan mungkin cache) disebut Core atau Inti.
B. ORGANISASI PROCESSOR
Untuk memahami organisasi prosesor, mari kita pertimbangkan
persyaratan yang ditempatkan pada prosesor, hal-hal yang harus dilakukan:
1. Fetch instruction: Prosesor membaca instruksi dari memori (register,
cache, memori utama).
5. Interpret instruction: Instruksi diterjemahkan untuk menentukan
tindakan apa yang diperlukan.
6. Fetch data: Pelaksanaan instruksi mungkin memerlukan pembacaan data
dari memori atau modul I / O.
7. Process data: Pelaksanaan instruksi mungkin memerlukan melakukan
beberapa operasi aritmatika atau logis pada data.
8. Write data: Hasil eksekusi mungkin memerlukan penulisan data ke
memori atau modul I / O.
Untuk melakukan hal-hal ini, harus jelas bahwa prosesor perlu
menyimpan beberapa data sementara. Ini harus mengingat lokasi dari instruksi
terakhir sehingga dapat mengetahui di mana mendapatkan instruksi
selanjutnya. Perlu menyimpan instruksi dan data sementara saat instruksi
sedang dijalankan. Dengan kata lain, prosesor membutuhkan memori internal
yang kecil.

Gambar I-3 CPU dengan Bus Sistem

10
Gambar I-3 adalah tampilan prosesor yang disederhanakan, yang
menunjukkan koneksi ke seluruh sistem melalui bus sistem. Antarmuka yang
sama akan diperlukan untuk struktur interkoneksi yang dijelaskan sebelumnya.
kita akan ingat bahwa komponen utama dari prosesor adalah unit aritmatika
dan logika (ALU) dan unit kontrol (CU). ALU melakukan perhitungan atau
pemrosesan data yang sebenarnya. Unit kontrol mengontrol pergerakan data
dan instruksi masuk dan keluar dari prosesor dan mengontrol pengoperasian
ALU. Selain itu, gambar tersebut menunjukkan memori internal minimal,
yang terdiri dari satu set lokasi penyimpanan, yang disebut register.

Gambar I-4 Struktur Internal CPU

Gambar 1-4 adalah tampilan yang sedikit lebih rinci dari prosesor.
Transfer data dan jalur kontrol logika ditunjukkan, termasuk elemen berlabel
bus internal prosesor (Internal CPU bus). Elemen ini diperlukan untuk
mentransfer data antara berbagai register dan ALU, karena ALU sebenarnya
hanya beroperasi pada data dalam memori prosesor internal. Angka itu juga
menunjukkan elemen-elemen dasar khas ALU. Perhatikan kesamaan antara
struktur internal komputer secara keseluruhan dan struktur internal prosesor.

11
Dalam kedua kasus, ada kumpulan kecil elemen utama (komputer: prosesor, I /
O, memori; prosesor: unit kontrol, ALU, register) yang dihubungkan oleh jalur
data.
C. CONTROL AND STATUS REGISTERS
Ada berbagai register prosesor yang digunakan untuk mengontrol
pengoperasian prosesor. Sebagian besar dari ini, pada kebanyakan mesin, tidak
terlihat oleh pengguna. Beberapa dari mereka mungkin terlihat oleh instruksi
mesin yang dieksekusi dalam mode kontrol atau sistem operasi.
Tentu saja, mesin yang berbeda akan memiliki organisasi register yang
berbeda dan menggunakan terminologi/istilah yang berbeda. Kami daftar di
sini, daftar daftar jenis yang cukup lengkap, dengan deskripsi singkat.
Empat register sangat penting untuk eksekusi instruksi:
1. Program counter (PC): Berisi alamat instruksi yang akan diambil.
2. Instruction register (IR): Berisi instruksi yang baru saja diambil.
3. Memory address register (MAR): Berisi alamat lokasi di memory.
4. Memory buffer register (MBR): Berisi word data yang harus ditulis
memori atau kata yang terakhir dibaca
Tidak semua prosesor memiliki register internal yang ditetapkan sebagai
MAR dan MBR, tetapi beberapa mekanisme buffer/buffer yang setara
diperlukan di mana bit yang akan ditransfer ke bus sistem digelarkan dan bit
yang akan dibaca dari bus data disimpan sementara.
D. CONTROL UNIT
Daftar hal-hal berikut ini diperlukan sebagai persyaratan fungsional
untuk prosesor.:
1. Operations (opcodes)
2. Addressing modes
3. Registers
4. I/O module interface
5. Memory module interface
6. Interrupts

12
Daftar ini, meskipun umum, agak lengkap. Item 1 hingga 3 ditentukan
oleh set instruksi. Item 4 dan 5 biasanya ditentukan dengan menentukan bus
sistem. Item 6 didefinisikan sebagian oleh bus sistem dan sebagian oleh jenis
dukungan yang ditawarkan prosesor ke sistem operasi.
Berbagai elemen prosesor dikendalikan untuk menyediakan fungsi-
fungsi ini oleh unit kontrol/Control Unit.
1. Micro-Operation
Setiap fase dari siklus instruksi dapat diuraikan menjadi urutan
operasi mikro elementer. Ada satu urutan masing-masing untuk siklus
fetch, indirect, dan nterrupt, dan, untuk siklus eksekusi, ada satu urutan
operasi mikro untuk setiap opcode.

Gambar I-5 Diagram Alir Siklus Intruksi

Kita perlu mengikat urutan operasi mikro bersama, dan ini dilakukan
pada Gambar I-5. Kita menganggap register 2-bit baru yang disebut
instruction cycle code (ICC). ICC menetapkan status prosesor dalam hal
bagian mana dari siklus itu berada :
00: Fetch
01: Indirect
10: Execute
11: Interrupt

13
Pada setiap akhir dari empat siklus, ICC diatur dengan tepat. Siklus
tidak langsung selalu diikuti oleh siklus eksekusi. Siklus interupsi selalu
diikuti oleh siklus pengambilan. Untuk siklus pengambilan dan eksekusi,
siklus berikutnya bergantung pada status sistem.
Dengan demikian, bagan alir Gambar I.5 mendefinisikan urutan
lengkap operasi mikro, tergantung hanya pada urutan instruksi dan pola
interupsi. Tentu saja, ini adalah contoh yang disederhanakan. Diagram alur
untuk prosesor yang sebenarnya akan lebih kompleks.
2. Kendali Prosesor ( Control Of The Processor)
a. Persyaratan Fungsional
Perilaku atau fungsi prosesor menjadi operasi dasar, yang disebut
operasi mikro. Dengan mengurangi pengoperasian prosesor ke tingkat
yang paling mendasar, dapat menentukan dengan tepat apa yang harus
dilakukan oleh unit kontrol. Dengan demikian, dapat mendefinisikan
persyaratan fungsional untuk unit kontrol: fungsi-fungsi yang harus
dilakukan oleh unit kontrol. Definisi persyaratan fungsional ini adalah
dasar untuk desain dan implementasi unit kontrol.
Dengan informasi yang tersedia, proses tiga langkah berikut
mengarah pada karakterisasi unit kontrol:
1). Tentukan elemen dasar prosesor.
2). Jelaskan operasi mikro yang dilakukan prosesor.
3). Tentukan fungsi-fungsi yang harus dilakukan unit kontrol untuk
menyebabkan operasi mikro dilakukan.
Selanjutnya elemen fungsional dasar dari prosesor adalah sebagai
berikut:
1). ALU
2). Registers
3). Internal data paths
4). External data paths
5). Control unit

14
Beberapa pemikiran harus meyakinkan bahwa ini adalah daftar
yang lengkap. ALU adalah esensi fungsional komputer. Register
digunakan untuk menyimpan data internal ke prosesor. Beberapa
register berisi informasi status yang diperlukan untuk mengelola urutan
instruksi (misalnya, word status program). Lainnya berisi data yang
masuk atau berasal dari modul ALU, memori, dan I / O. Jalur data
internal digunakan untuk memindahkan data antara register dan antara
register dan ALU. Tautan jalur data eksternal ke memori dan modul I /
O, seringkali melalui bus sistem. Unit kontrol menyebabkan operasi
terjadi di dalam prosesor.
Pelaksanaan program terdiri dari operasi yang melibatkan
elemen-elemen prosesor ini. Seperti yang telah kita lihat, operasi ini
terdiri dari urutan operasi mikro. Semua operasi mikro termasuk dalam
salah satu kategori berikut.
1). Transfer data dari satu register ke yang lain.
2). Transfer data dari register ke antarmuka eksternal (mis., Bus
sistem).
3). Transfer data dari antarmuka eksternal ke register.
4). Lakukan operasi aritmatika atau logika, menggunakan register
untuk input dan output.
Semua operasi mikro yang diperlukan untuk melakukan satu
siklus instruksi, termasuk semua operasi mikro untuk melaksanakan
setiap instruksi dalam set instruksi, termasuk dalam salah satu kategori
ini.
Sekarang dapat menjadi lebih eksplisit tentang cara fungsi unit
kontrol. Unit kontrol melakukan dua tugas dasar:
1). Sequencing: Unit kontrol menyebabkan prosesor untuk
melangkah melalui serangkaian operasi mikro dalam urutan yang
tepat, berdasarkan program yang sedang dijalankan.
2). Eksekusi: Unit kontrol menyebabkan setiap operasi mikro
dilakukan.

15
b. Control Signals / Sinyal-sinyal kontrol
Telah terdefinisikan elemen-elemen yang membentuk prosesor
(ALU, register, jalur data) dan operasi mikro yang dilakukan. Untuk
unit kontrol untuk menjalankan fungsinya, ia harus memiliki input
yang memungkinkannya untuk menentukan keadaan sistem dan output
yang memungkinkannya untuk mengontrol perilaku sistem. Ini adalah
spesifikasi eksternal unit kontrol. Secara internal, unit kontrol harus
memiliki logika yang diperlukan untuk melakukan fungsi sequencing
dan pelaksanaannya.

Gambar I-6 Blok Diagram Control Unit

Gambar I-6 adalah model umum dari unit kontrol, yang


menunjukkan semua input dan outputnya. Inputnya adalah:
1). Clock: Ini adalah bagaimana unit kontrol "menjaga pewaktu"
Unit kontrol menyebabkan satu operasi mikro (atau satu set
operasi mikro simultan) yang harus dilakukan untuk setiap pulsa
clock. Ini kadang-kadang disebut sebagai waktu siklus prosesor/
the processor cycle time, atau waktu siklus clock/the clock cycle
time .
2). Instruction register: Mode opcode dan pengalamatan dari
instruksi saat ini digunakan untuk menentukan operasi mikro yang
dilakukan selama siklus eksekusi.

16
3). Flags: Ini diperlukan oleh unit kontrol untuk menentukan status
prosesor dan hasil dari operasi ALU sebelumnya. Sebagai contoh,
untuk instruksi increment-and-skip-if-zero (ISZ), unit kontrol
akan menaikkan PC jika flag nol diset.
4). Sinyal kontrol dari bus kontrol:Bagian bus kontrol dari bus
sistem menyediakan sinyal ke unit kontrol
Outputnya adalah sebagai berikut:
1). Control signals within the processor : yang menyebabkan
data dipindahkan dari satu daftar ke yang lain, dan yang
mengaktifkan fungsi ALU tertentu.
2). Control signals to control bus: Ini juga dari dua jenis: sinyal
kontrol ke memori, dan sinyal kontrol ke modul I / O.
3. Control Unit Implementation.
Sebagian besar implementasi unit kontrol. jatuh ke dalam salah satu
dari dua kategori:
a. Hardwired implementation : dalam implementasi yang
tertanam/hardwired, Control Unit pada dasarnya adalah sebuah
rumusan rangkaian mesin / rangkaian kombinatorial. Sinyal logika
inputnya diubah menjadi satu set sinyal logika output, yang
merupakan sinyal kontrol.
b. Microprogrammed implementation : pendekatan untuk desain unit
kontrol yang terorganisir dan sistematis dan menghindari kerumitan
penerapan yang tertanam, Selain penggunaan sinyal kontrol, setiap
microoperation dijelaskan dalam notasi simbolik. Rancangan
microprogamed relatif mudah diubah-ubah dan dibetulkan.

17
18

BAB II
PEMBAHASAN

A. PENDAHULUAN
Istilah microprogram pertama kali diciptakan oleh M. V. Wilkes pada
awal 1950-an [WILK51]. Wilkes mengusulkan pendekatan untuk desain unit
kontrol yang terorganisir dan sistematis dan menghindari kerumitan penerapan
yang tertanam (hardwired implementation). Gagasan itu membuat penasaran
banyak peneliti, tetapi tampaknya tidak bisa dijalankan karena memerlukan
kendali yang cepat dan relatif murah.
Keadaan seni mikroprogram itu ditinjau oleh Datamation dalam edisi
Februari 1964. Tidak ada sistem microprogram yang digunakan secara luas
pada waktu itu, dan salah satu makalah [HILL64] meringkas pandangan yang
kemudian populer bahwa masa depan mikroprogram “agak mendung. Tak satu
pun dari produsen besar telah membuktikan minat dalam teknik ini, meskipun
mungkin semua telah memeriksanya.
Situasi ini berubah secara dramatis dalam beberapa bulan. Sistem/360
IBM diumumkan pada bulan April, dan semua tetapi model terbesar adalah
mikroprogram. Meskipun seri 360 mendahului ketersediaan ROM
semikonduktor, kelebihan microprogramming cukup menarik bagi IBM untuk
melakukan langkah ini. Microprogramming menjadi teknik yang populer
untuk mengimplementasikan control unit prosesor CISC.1 Dalam beberapa
tahun terakhir, microprogramming telah menjadi kurang digunakan tetapi tetap
menjadi alat yang tersedia untuk perancang komputer.
Sebagai contoh, seperti yang telah kita lihat pada Pentium 4, instruksi
mesin diubah menjadi format seperti RISC,2 sebagian besar yang dieksekusi

1
CISC; "Kumpulan instruksi komputasi kompleks") adalah sebuah arsitektur dari set instruksi
komputer di mana setiap instruksi akan menjalankan beberapa operasi tingkat rendah, seperti
pengambilan dari memori, operasi aritmetika, dan penyimpanan ke dalam memory, semuanya
sekaligus hanya di dalam sebuah instruksi
2
RISC / Komputasi set instruksi yang disederhanakan merupakan sebuah arsitektur komputer atau
arsitektur komputasi modern dengan instruksi-instruksi dan jenis eksekusi yang paling sederhana.
tanpa menggunakan microprogramming. Namun, beberapa instruksi
dijalankan menggunakan microprogramming.
B. KONSEP DASAR
1. Microinstructions
Unit kontrol tampaknya perangkat yang cukup sederhana. Namun
demikian, untuk menerapkan unit kontrol sebagai interkoneksi elemen
logika dasar bukanlah tugas yang mudah. Desain harus menyertakan
logika untuk pengurutan melalui operasi mikro, untuk melaksanakan
operasi mikro, untuk menafsirkan opcode, dan untuk membuat keputusan
berdasarkan flag ALU. Sulit untuk merancang dan menguji perangkat
keras seperti itu. Selanjutnya, desainnya relatif tidak fleksibel. Misalnya,
sulit untuk mengubah desain jika ingin menambahkan instruksi mesin
baru.
Sebuah alternatif, yang telah digunakan dalam banyak prosesor
CISC, adalah untuk mengimplementasikan unit kontrol microprogrammed.

Tabel II-1 Contoh Mesin Set Intruksi Wilkes

Pertimbangkan Tabel II.1. Selain penggunaan sinyal kontrol, setiap


microoperation dijelaskan dalam notasi simbolik. Notasi ini terlihat
mencurigakan seperti bahasa pemrograman. Sebenarnya itu adalah bahasa,

19
yang dikenal sebagai bahasa microprogramming. Setiap baris
menggambarkan satu set operasi mikro yang terjadi pada satu waktu dan
dikenal sebagai microinstruction. Urutan instruksi dikenal sebagai
mikroprogram, atau firmware. Istilah terakhir ini mencerminkan fakta
bahwa microprogram ada di antara perangkat keras dan perangkat lunak.
Lebih mudah untuk merancang dalam firmware daripada perangkat keras,
tetapi lebih sulit untuk menulis program firmware daripada program
perangkat lunak.
Bagaimana kita bisa menggunakan konsep microprogramming untuk
mengimplementasikan unit kontrol? Pertimbangkan bahwa untuk setiap
operasi mikro, semua yang dapat dilakukan oleh unit kontrol adalah
menghasilkan satu set sinyal kontrol. Jadi, untuk setiap operasi mikro,
setiap line kontrol yang berasal dari unit kontrol dapat dinyalakan atau
dimatikan. Kondisi ini dapat, tentu saja, diwakili oleh digit biner untuk
setiap line kontrol. Jadi kita bisa membuat word kontrol di mana setiap bit
mewakili satu line kontrol. Kemudian setiap operasi mikro akan diwakili
oleh pola yang berbeda dari 1 dan 0 dalam word kontrol.
Misalkan kita urutkan bersama urutan word-word kontrol untuk
mewakili urutan operasi mikro yang dilakukan oleh unit kontrol.
Selanjutnya, kita harus mengenali bahwa urutan operasi mikro tidak tetap.
Terkadang kita memiliki siklus tidak langsung ; terkadang kita tidak
melakukannya. Jadi, marilah kita menempatkan word-word kontrol kita
dalam memori, dengan setiap word memiliki alamat yang unik. Sekarang
tambahkan bidang/field alamat ke setiap word kontrol, yang menunjukkan
lokasi word kontrol berikutnya yang akan dijalankan jika kondisi tertentu
benar (misalnya, bit tidak langsung dalam instruksi referensi memori
adalah 1). Juga, tambahkan beberapa bit untuk menentukan kondisi.
Hasil yang dikenal sebagai microinstruction horizontal, contoh yang
ditunjukkan pada Gambar II.1a. Format dari microinstruction atau word
kontrol adalah sebagai berikut. Ada satu bit untuk setiap jalur kontrol
prosesor internal dan satu bit untuk setiap jalur kontrol bus sistem. Ada

20
bidang/field kondisi yang menunjukkan kondisi di mana harus ada
cabang, dan ada bidang dengan alamat instruksi mikro yang akan
dieksekusi berikutnya ketika cabang diambil.

Gambar II-1 Typical Format Mikro Instruksi

Mikroinstruksi seperti itu ditafsirkan sebagai berikut


a. Untuk menjalankan microinstruction ini, nyalakan semua line kontrol
yang ditunjukkan oleh bit 1; tinggalkan semua line kontrol yang
ditunjukkan oleh bit 0. Sinyal kontrol yang dihasilkan akan
menyebabkan satu atau lebih operasi mikro dilakukan.
b. Jika kondisi yang ditunjukkan oleh bit kondisi salah, jalankan
instruksi mikro berikutnya secara berurutan.
c. Jika kondisi yang ditunjukkan oleh bit kondisi benar, mikroinstriksi
berikutnya yang akan dijalankan ditunjukkan dalam field alamat.

21
Gambar II-2 Organisasi Control Memory

Gambar II-2 menunjukkan bagaimana word-word kontrol atau


microinstructions dapat diatur dalam memori kontrol. Instruksi mikro di
setiap rutinitas akan dieksekusi secara ekuivalen. Setiap rutinitas diakhiri
dengan instruksi cabang atau lompatan yang menunjukkan ke mana harus
pergi berikutnya. Ada rutinitas siklus eksekusi khusus yang hanya
bertujuan untuk menandakan bahwa salah satu rutinitas instruksi mesin
(AND, ADD, dan sebagainya) akan dieksekusi berikutnya, tergantung
pada opcode saat ini.
Memori kontrol Gambar II-2 adalah deskripsi singkat dari operasi
lengkap unit kontrol. Ini mendefinisikan urutan operasi mikro yang akan
dilakukan selama setiap siklus (fetch, indirect, execute, interrupt), dan
menentukan urutan siklus ini. Jika tidak ada yang lain, notasi ini akan
menjadi alat yang berguna untuk mendokumentasikan fungsi unit kontrol
untuk komputer tertentu. Tapi itu lebih dari itu. Ini juga merupakan cara
menerapkan unit kontrol.

22
2. Microprogrammed Control Unit
Memori kontrol Gambar II.2 berisi program yang menggambarkan
perilaku unit kontrol. Oleh karena itu kami dapat menerapkan unit kontrol
dengan hanya mengeksekusi program itu.

Gambar II-3 Control Unit Mikroarsitektur

Gambar II.3 menunjukkan elemen kunci dari implementasi semacam


itu. Set microinstructions disimpan dalam memori kontrol/comtrol
memory. Register alamat kontrol/Control Address Register berisi alamat
microinstruction berikutnya yang akan dibaca. Ketika mikroinstruksi
dibaca dari memori kontrol, itu dipindahkan ke register buffer kontrol.
Bagian kiri dari register itu (lihat Gambar II.1a) terhubung ke garis kontrol
yang berasal dari unit kontrol. Jadi, membaca instruksi mikro dari memori
kontrol sama dengan mengeksekusi instruksi mikro itu. Elemen ketiga
yang ditunjukkan dalam gambar adalah unit pengurutan/Squencing Logic
yang memuat register alamat kontrol dan mengeluarkan perintah baca.

23
Gambar II-4 Fungsi Microprogramed Control Unit

Mari kita periksa struktur ini secara lebih rinci, seperti yang
digambarkan pada Gambar II.4. Membandingkan ini dengan Gambar II.3,
kita melihat bahwa unit kontrol masih memiliki input yang sama (IR, ALU
flag, clock) dan output (sinyal kontrol). Unit kontrol berfungsi sebagai
berikut:
a. Untuk menjalankan instruksi, unit logika sekuens/squencing logic
mengeluarkan perintah READ ke memori kontrol
b. Word yang alamatnya ditentukan dalam register alamat kontrol
dibaca ke dalam register buffer kontrol
c. Isi register buffer kontrol menghasilkan sinyal kontrol dan informasi
alamat berikutnya untuk unit logika pengurutan

24
d. Unit logika sekuens memuat alamat baru ke dalam register alamat
kontrol berdasarkan informasi alamat berikutnya dari register buffer
kontrol dan flag ALU.
Semua ini terjadi selama satu pulsa clock
Langkah terakhir yang baru saja register membutuhkan elaborasi
(penggarapan secara tekun dan cermat). Pada akhir setiap instruksi mikro,
unit logika sekuens memuat alamat baru ke dalam register alamat kontrol.
Bergantung pada nilai flag ALU dan register buffer kontrol, satu dari tiga
keputusan dibuat.
a. Dapatkan instruksi selanjutnya: Tambahkan 1 ke register alamat
kontrol.
b. Lompat ke rutinitas baru berdasarkan mikroinstruksi lompat: Muat
bidang alamat dari register buffer kontrol ke register alamat kontrol.
c. Lompat ke rutinitas instruksi mesin: Muat register alamat kontrol
berdasarkan opcode di IR.
Gambar II.4 menunjukkan dua modul berlabel decoder. Dekoder atas
menerjemahkan opcode IR menjadi alamat memori kontrol. Decoder yang
lebih rendah tidak digunakan untuk microinstructions horisontal tetapi
digunakan untuk microinstructions vertikal (Gambar II.1b). Seperti yang
telah disebutkan, dalam sebuah instruksi mikro horizontal setiap bit di
bidang kontrol menempel pada garis kontrol. Dalam microinstruction
vertikal, kode digunakan untuk setiap tindakan yang akan dilakukan [mis.,
MAR ← (PC)], dan decoder menerjemahkan kode ini menjadi sinyal
kontrol individual. Keuntungan dari microinstructions vertikal adalah
bahwa mereka lebih kompak (lebih sedikit bit) daripada microinstructions
horisontal, dengan mengorbankan sejumlah kecil logika dan waktu tunda.
3. Wilkes Control
Seperti telah disebutkan, Wilkes pertama kali mengusulkan
penggunaan unit kontrol mikroprogram pada tahun 1951 [WILK51].
Proposal ini kemudian diuraikan menjadi desain yang lebih rinci
[WILK53]. Ini adalah pelajaran untuk memeriksa proposal seminal ini.

25
Gambar II-5 Mikro Terprogram Contro Unit Wilkes

Konfigurasi yang diusulkan oleh Wilkes digambarkan pada Gambar


II-5. Inti dari sistem adalah matriks yang sebagian diisi dengan dioda.
Selama siklus mesin, satu baris matriks diaktifkan dengan pulsa. Ini
menghasilkan sinyal pada titik-titik di mana ada dioda (ditunjukkan oleh
titik di diagram). Bagian pertama dari baris menghasilkan sinyal kontrol
yang mengontrol pengoperasian prosesor. Bagian kedua menghasilkan
alamat dari baris yang akan berdenyut di siklus mesin berikutnya. Dengan
demikian, setiap baris dari matriks adalah satu microinstruction, dan tata
letak matriks adalah memori kontrol.
Pada awal siklus, alamat baris yang akan di-pulsed terdapat di
Register I. Alamat ini adalah input ke decoder, yang ketika diaktifkan oleh
pulsa clock, mengaktifkan satu baris dari matriks. Tergantung pada sinyal
kontrol, baik opcode dalam register instruksi atau bagian kedua dari baris
yang digetarkan dilewatkan ke Register II selama siklus. Register II
kemudian dikunci ke Register I oleh pulsa clock. Bolak pulsa clock
digunakan untuk mengaktifkan baris matriks dan untuk mentransfer dari
Register II ke Register I. Pengaturan dua-register diperlukan karena
decoder hanyalah rangkaian kombinatorial; hanya dengan satu register,

26
output akan menjadi input selama siklus, menyebabkan kondisi yang tidak
stabil.
Skema ini sangat mirip dengan pendekatan microprogram horisontal
yang dijelaskan sebelumnya (Gambar II.1a). Perbedaan utamanya adalah
ini: Dalam uraian sebelumnya, register alamat kontrol dapat ditambah satu
untuk mendapatkan alamat berikutnya. Dalam skema Wilkes, alamat
berikutnya terkandung dalam microinstruction. Untuk mengizinkan
percabangan, baris harus berisi dua bagian alamat, dikontrol oleh sinyal
bersyarat (misalnya, flag), seperti yang ditunjukkan pada gambar.
Setelah mengusulkan skema ini, Wilkes memberikan contoh
penggunaannya untuk mengimplementasikan unit kontrol mesin
sederhana. Contoh ini, desain prosesor mikroprogram yang diketahui
pertama, layak diulangi di sini karena ini menggambarkan banyak prinsip
kontemporer mikroprogram.
Prosesor dari mesin hipotetis (mesin contoh oleh Wilkes) termasuk
register berikut:

Selain itu, ada tiga register dan dua flag 1-bit yang hanya dapat
diakses oleh unit kontrol. Yang mendaftar adalah sebagai berikut:

Tabel II-1 daftar instruksi mesin ditetapkan untuk contoh ini. Tabel
II-2 adalah set lengkap microinstructions, dinyatakan dalam bentuk
simbolis, yang mengimplementasikan unit kontrol. Jadi, total 38
microinstructions adalah semua yang diperlukan untuk mendefinisikan
sistem sepenuhnya

27
Microinstructions untuk Wilkes Contoh Notasi: A, B, C,. . . berdiri untuk
berbagai register di unit register aritmatika dan kontrol. C ke D
menunjukkan bahwa rangkaian switching menghubungkan output register
C ke register input D; (D + A) ke C menunjukkan bahwa register output
dari A terhubung ke satu input dari unit penambahan (keluaran D adalah
secara permanen terhubung ke input lain), dan output dari penambah
untuk mendaftar C. Sebuah simbol numerik n dalam tanda kutip (misalnya,
"n") adalah singkatan dari sumber yang outputnya adalah angka n dalam
satuan digit yang paling tidak signifikan.

28
Tabel II-2 Contoh Mikro Intruksi Wilkes
* Pergeseran kanan. Sirkuit switching dalam unit aritmatika disusun
sehingga digit paling signifikan dari register C ditempatkan di tempat
paling signifikan dari register B selama operasi mikro shift kanan, dan
digit paling signifikan dari register C (digit tanda) diulangi. (sehingga
membuat koreksi untuk angka negatif).
† Pergeseran kiri. Sirkit switching juga diatur serupa untuk melewatkan
digit paling signifikan dari register B ke tempat register C yang paling
tidak signifikan selama operasi mikro pergeseran kiri.
Kolom penuh pertama memberikan alamat (nomor baris) dari setiap
instruksi mikro. Alamat-alamat yang sesuai dengan opcode diberi label.
Jadi, ketika opcode untuk instruksi penambahan (A) ditemukan,
microinstruction di lokasi 5 dieksekusi. Kolom 2 dan 3 menyatakan
tindakan yang akan diambil oleh ALU dan unit kontrol, masing-masing.
Setiap ekspresi simbolik harus diterjemahkan ke dalam satu set sinyal
kontrol (microinstruction bits). Kolom 4 dan 5 harus dilakukan dengan
pengaturan dan penggunaan dua flag (sandal jepit). Kolom 4 menentukan
sinyal yang mengatur flag. Sebagai contoh, (1) Cs berarti bahwa nomor
flag 1 diatur oleh bit tanda nomor dalam register C. Jika kolom 5 berisi
pengidentifikasi flag, maka kolom 6 dan 7 berisi dua alamat
microinstruction alternatif yang akan digunakan. Jika tidak, kolom 6
menentukan alamat microinstruction berikutnya yang akan diambil
Instruksi 0 hingga 4 merupakan siklus pengambilan.
Microinstruction 4 menyajikan opcode ke decoder, yang menghasilkan

29
alamat microinstruction yang sesuai dengan instruksi mesin yang akan
diambil. Pembaca harus dapat menyimpulkan fungsi lengkap unit kontrol
dari studi yang cermat pada Tabel II-2.
4. Keuntungan dan kerugian
Keuntungan utama dari penggunaan microprogramming untuk
mengimplementasikan unit kontrol adalah menyederhanakan desain unit
kontrol. Dengan demikian, keduanya lebih murah dan lebih sedikit rawan
kesalahan untuk diimplementasikan. Unit kontrol yang dipasok harus
berisi logika yang kompleks untuk mengurutkan melalui banyak operasi
mikro dari siklus instruksi. Di sisi lain, decoder dan unit logika sekuensing
unit kontrol microprogrammed adalah potongan logika yang sangat
sederhana
Kerugian utama dari unit microprogrammed adalah bahwa ia akan
menjadi lebih lambat daripada unit yang terhubung langsung dengan
teknologi yang sebanding. Meskipun demikian, microprogramming adalah
teknik yang dominan untuk mengimplementasikan unit kontrol dalam
arsitektur CISC murni, karena kemudahan pelaksanaannya. Prosesor
RISC, dengan format instruksi yang lebih sederhana, biasanya
menggunakan unit kontrol hardwired. Kami sekarang memeriksa
pendekatan microprogram dengan lebih rinci.
Dua tugas dasar yang dilakukan oleh unit kontrol microprogrammed
adalah sebagai berikut:
1. Urutan microinstruction / Microinstruction sequencing: untuk
mendapatkan instruksi mikro berikutnya dari memori kontrol.
2. Eksekusi instruksi mikro / Microinstruction execution: untuk
menghasilkan sinyal kontrol yang dibutuhkan untuk menjalankan
microinstruction.
C. MICROINSTRUCTION SEQUENCING
Dalam mendesain unit kontrol, tugas-tugas ini harus dipertimbangkan
bersama-sama, karena keduanya mempengaruhi format microinstruction dan
timing dari unit kontrol. Pada bagian ini, kita akan fokus pada urutan dan

30
mengatakan sesedikit mungkin tentang masalah format dan waktu. Masalah-
masalah ini diperiksa secara lebih rinci di bagian selanjutnya.
1. Pertimbangan Desain
Dua kekhawatiran terlibat dalam desain teknik sekuensing
microinstruction: ukuran microinstruction dan waktu pengalamatan.
Perhatian pertama sudah jelas; meminimalkan ukuran memori kontrol
mengurangi biaya komponen itu. Perhatian kedua adalah keinginan untuk
mengeksekusi microinstructions secepat mungkin.
Dalam menjalankan mikroprogram, alamat mikroinstruksi
berikutnya yang akan dijalankan adalah dalam salah satu kategori ini:
a. Ditentukan oleh register instruksi
b. Alamat berurutan berikutnya
c. Cabang / Branch
Kategori pertama hanya terjadi sekali per siklus instruksi, tepat
setelah instruksi diambil. Kategori kedua adalah yang paling umum di
sebagian besar desain. Namun, desain tidak dapat dioptimalkan hanya
untuk akses berurutan. Cabang/Branch, baik kondisional maupun tanpa
syarat, adalah bagian penting dari mikroprogram. Lebih jauh lagi, urutan
mikroinstruksi cenderung pendek; satu dari setiap tiga atau empat
microinstructions bisa menjadi cabang [SIEW82]. Dengan demikian,
penting untuk merancang teknik kompak, hemat waktu untuk percabangan
microinstruction.
2. Teknik Pengurutan
Berdasarkan microinstruction saat ini, flag kondisi, dan isi register
instruksi, alamat memori kontrol harus dihasilkan untuk microinstruction
berikutnya. Berbagai macam teknik telah digunakan. Kami dapat
mengelompokkan mereka ke dalam tiga kategori umum, seperti yang
diilustrasikan pada Gambar II.6 hingga II.8. Kategori-kategori ini
didasarkan pada format informasi alamat di microinstruction :
a. Dua bidang alamat
b. Bidang alamat tunggal

31
c. Format variabel
Pendekatan yang paling sederhana adalah menyediakan dua bidang
alamat di setiap microinstruction. Gambar II.6 menyarankan bagaimana
informasi ini akan digunakan. Sebuah multiplexer disediakan yang
berfungsi sebagai tujuan untuk kedua field alamat ditambah register
instruksi/Instruction Register. Berdasarkan input alamat pilihan/address
selection, multiplexer mentransmisikan baik opcode atau salah satu dari
dua alamat ke register alamat kontrol/Control Address Register (CAR).
CAR kemudian diterjemahkan untuk menghasilkan alamat
microinstruction berikutnya. Sinyal pemilihan alamat disediakan oleh
modul Branch Logic yang inputnya terdiri dari flag unit kontrol ditambah
bit dari bagian kontrol dari microinstruction.

Gambar II-6 Branch Control Logic : Dua Field Alamat

32
Gambar II-7 Branch Control Logic : Bidang Alamat Tunggal

Meskipun pendekatan dua alamat sederhana, membutuhkan lebih


banyak bit dalam microinstruction daripada pendekatan lainnya. Dengan
beberapa logika tambahan, penghematan dapat dicapai. Pendekatan umum
adalah memiliki bidang alamat tunggal (Gambar II.7). Dengan pendekatan
ini, opsi untuk alamat berikutnya adalah sebagai berikut :
a. Kolom alamat
b. Instruksi kode register
c. Alamat berurutan berikutnya
Sinyal pemilihan alamat menentukan opsi mana yang dipilih.
Pendekatan ini mengurangi jumlah bidang alamat menjadi satu.
Perhatikan, bagaimanapun, bahwa bidang alamat sering tidak akan
digunakan. Dengan demikian, ada beberapa inefisiensi dalam skema
pengkodean microinstruction.

33
Gambar II-8 Branch Control Logic: Format Variabel

Pendekatan lain adalah untuk menyediakan dua format


microinstruction yang sama sekali berbeda (Gambar II.8). Satu bit
menunjukkan format apa yang sedang digunakan. Dalam satu format, sisa
bit digunakan untuk mengaktifkan sinyal kontrol. Dalam format lain,
beberapa bit menggerakkan modul logika cabang, dan bit yang tersisa
menyediakan alamat. Dengan format pertama, alamat berikutnya adalah
alamat sekuensial berikutnya atau alamat yang berasal dari register
instruksi. Dengan format kedua, cabang bersyarat atau tidak bersyarat
sedang ditentukan. Salah satu kelemahan dari pendekatan ini adalah bahwa
satu siklus keseluruhan dikonsumsi dengan setiap microinstruction cabang.
Dengan pendekatan lain, generasi alamat terjadi sebagai bagian dari siklus
yang sama sebagai generasi sinyal kontrol, meminimalkan akses memori
kontrol.
Pendekatan yang baru saja dijelaskan adalah umum. Implementasi
spesifik sering melibatkan variasi atau kombinasi teknik-teknik ini

34
3. Address Generation
Kami telah melihat masalah sequencing dari sudut pandang
pertimbangan format dan persyaratan logika umum. Sudut pandang
lainnya adalah mempertimbangkan berbagai cara di mana alamat
berikutnya dapat diturunkan atau dihitung.

Tabel II-3 Teknik Pembangkitan Alamat Mikrointruksi

Tabel II.3 daftar berbagai teknik pembangkitan alamat. Ini dapat


dibagi menjadi teknik eksplisit, di mana alamat secara eksplisit tersedia di
microinstruction, dan teknik implisit, yang membutuhkan logika tambahan
untuk menghasilkan alamat.
Kami pada dasarnya berurusan dengan teknik eksplisit. Dengan
pendekatan dua-bidang, dua alternatif alamat tersedia dengan setiap
instruksi mikro. Dengan menggunakan salah satu bidang alamat atau
format variabel, berbagai instruksi cabang dapat diterapkan. Instruksi
cabang bersyarat tergantung pada jenis informasi berikut:
a. Flag ALU
b. Bagian dari bidang mode opcode atau alamat dari instruksi mesin
c. Bagian dari daftar yang dipilih, seperti bit tanda
d. Status bit dalam kontrol uni
Beberapa teknik implisit juga umum digunakan. Salah satunya,
pemetaan, diperlukan dengan hampir semua desain. Bagian opcode dari
instruksi mesin harus dipetakan ke alamat microinstruction. Ini hanya
terjadi sekali per siklus instruksi.
Teknik implisit umum adalah teknik yang melibatkan penggabungan
atau penambahan dua bagian alamat untuk membentuk alamat lengkap.
Pendekatan ini diambil untuk IBM S / 360 keluarga [TUCK67] dan

35
digunakan pada banyak model S / 370. Kami akan menggunakan IBM
3033 sebagai contoh.

Gambar II-9 Kontrol Alamat Register IBM3033

Alamat kontrol mendaftar pada IBM 3033 adalah 13 bit panjang dan
diilustrasikan pada Gambar II.9. Dua bagian alamat dapat dibedakan. 8 bit
urutan tertinggi (00-07) biasanya tidak berubah dari satu siklus
microinstruction ke yang berikutnya. Selama pelaksanaan suatu instruksi
mikro, 8 bit ini disalin langsung dari bidang 8-bit dari instruksi mikro
(bidang BA) ke dalam 8-bit urutan tertinggi dari register alamat kontrol.
Ini mendefinisikan blok 32 microinstructions dalam memori kontrol. 5 bit
yang tersisa dari register alamat kontrol ditetapkan untuk menentukan
alamat spesifik dari microinstruction yang akan diambil selanjutnya.
Masing-masing bit ini ditentukan oleh bidang 4-bit (kecuali satu adalah
bidang 7-bit) dalam microinstruction saat ini; bidang menentukan kondisi
untuk menyetel bit yang sesuai. Sebagai contoh, sedikit dalam register
alamat kontrol mungkin diatur ke 1 atau 0 tergantung pada apakah carry
terjadi pada operasi ALU terakhir
Pendekatan terakhir yang tercantum dalam Tabel II.3 disebut kontrol
residual. Pendekatan ini melibatkan penggunaan alamat microinstruction
yang sebelumnya telah disimpan dalam penyimpanan sementara di dalam
unit kontrol. Sebagai contoh, beberapa set microinstruction dilengkapi
dengan fasilitas subrutin. Register internal atau setumpuk register
digunakan untuk menyimpan alamat pengirim. Contoh pendekatan ini
diambil pada LSI-11, yang sekarang kita periksa.

36
4. LSI-11 Microinstruction Sequencing
The LSI-11 adalah versi mikrokomputer dari PDP-11, dengan
komponen utama dari sistem yang berada pada satu papan. The LSI-11
diimplementasikan menggunakan unit kontrol microprogrammed
[SEBE76]
LSI-11 menggunakan microinstruction 22-bit dan memori kontrol
dari kata-kata 2K 22-bit. Alamat microinstruction berikutnya ditentukan
dalam satu dari lima cara :
a. Alamat sekuensial berikutnya: Jika tidak ada instruksi lain, register
alamat kontrol unit kontrol ditambah 1.
b. Pemetaan opcode: Pada awal setiap siklus instruksi, alamat
microinstruction berikutnya ditentukan oleh opcode.
c. Fasilitas subroutine: Dijelaskan saat ini.
d. Interrupt testing: Beberapa microinstructions menentukan tes untuk
interupsi. Jika interupsi telah terjadi, ini menentukan alamat
microinstruction berikutnya.
e. Cabang: Microinstructions cabang bersyarat dan tidak bersyarat
digunakan.
Fasilitas subrutin satu tingkat disediakan. Satu bit di setiap
microinstruction didedikasikan untuk tugas ini. Ketika bit diatur, register
kembali 11-bit dimuat dengan konten yang diperbarui dari register alamat
kontrol. Mikroinstruksi berikutnya yang menentukan pengembalian akan
menyebabkan register alamat kontrol dimuat dari daftar kembali.
Pengembalian adalah salah satu bentuk instruksi cabang tanpa syarat.
Bentuk lain dari cabang tanpa syarat menyebabkan bit-bit register alamat
kontrol untuk dimuat dari 11 bit dari instruksi mikro. Instruksi cabang
bersyarat menggunakan kode uji 4-bit dalam mikro-instruksi. Kode ini
menetapkan pengujian berbagai kode kondisi ALU untuk menentukan
keputusan cabang. Jika kondisinya tidak benar, maka alamat selanjutnya
akan dipilih. Jika benar, 8 bit urutan terendah dari register alamat kontrol

37
dimuat dari 8 bit dari microinstruction. Ini memungkinkan bercabang
dalam 256 halaman kata memori.
Seperti dapat dilihat, LSI-11 mencakup fasilitas pengurutan alamat
yang kuat di dalam unit kontrol. Hal ini memungkinkan fleksibilitas
microprogrammer cukup besar dan dapat mempermudah tugas
microprogramming. Di sisi lain, pendekatan ini membutuhkan lebih
banyak logika unit kontrol daripada kemampuan yang lebih sederhana
D. MICROINTRUCTION EXECUTION
Siklus microinstruction adalah peristiwa dasar pada prosesor
microprogram. Setiap siklus terdiri dari dua bagian: ambil dan laksanakan.
Bagian pengambilan ditentukan oleh pembuatan alamat microinstruction, dan
ini dibahas pada bagian sebelumnya. Bagian ini berkaitan dengan pelaksanaan
suatu instruksi mikro.
Ingat bahwa efek dari pelaksanaan suatu instruksi mikro adalah untuk
menghasilkan sinyal kontrol. Beberapa titik kontrol sinyal ini internal ke
prosesor. Sinyal yang tersisa pergi ke bus kontrol eksternal atau antarmuka
eksternal lainnya. Sebagai fungsi insidental, alamat microinstruction
berikutnya ditentukan.

Gambar II-10 Organisasi Control Unit

38
Uraian sebelumnya menunjukkan organisasi unit kontrol yang
ditunjukkan pada Gambar II.10. Versi yang sedikit direvisi dari Gambar II.4
menekankan fokus pada bagian ini. Modul utama dalam diagram ini sekarang
harus jelas. Modul logika sekuens berisi logika untuk melakukan fungsi yang
dibahas di bagian sebelumnya. Ini menghasilkan alamat microinstruction
berikutnya, menggunakan sebagai input register instruksi, flag ALU, register
alamat kontrol (untuk incrementing), dan register buffer kontrol. Yang terakhir
mungkin memberikan alamat aktual, bit kontrol, atau keduanya. Modul ini
didorong oleh clock yang menentukan waktu siklus mikro-instruksi.
Modul logika kontrol menghasilkan sinyal kontrol sebagai fungsi dari
beberapa bit dalam microinstruction. Harus jelas bahwa format dan isi dari
instruksi mikro menentukan kompleksitas dari modul logika kontrol.
1. A Taxonomy of Microinstructions (taksonomi mikrointruksi)
Microinstructions dapat diklasifikasikan dalam berbagai cara.
Perbedaan yang biasanya dibuat dalam literatur termasuk yang berikut:
a. Vertical/horizontal
b. Packed/unpacked
c. Hard/soft microprogramming
d. Direct/indirect encoding
Semua ini bergantung pada format microinstruction. Tidak satu pun
dari istilah-istilah ini telah digunakan dengan cara yang konsisten dan tepat
dalam literatur. Namun, pemeriksaan pasangan kualitas ini berfungsi untuk
menjelaskan alternatif desain microinstruction. Dalam paragraf berikut,
pertama-tama kita melihat masalah desain kunci yang memperbaiki semua
pasangan karakteristik ini, dan kemudian kita melihat konsep yang
disarankan oleh masing-masing pasangan.
dalam proposal asli oleh Wilkes [WILK51], setiap bit dari sebuah
microinstruction baik secara langsung menghasilkan sinyal kontrol atau
secara langsung menghasilkan satu bit dari alamat berikutnya. Kami telah
melihat, di bagian sebelumnya, bahwa skema sekuensing alamat yang
lebih kompleks, menggunakan lebih sedikit microinstruction bit, adalah

39
mungkin. Skema ini membutuhkan modul logika sequencing yang lebih
kompleks. Jenis trade-off serupa ada untuk bagian dari microinstruction
yang berkaitan dengan sinyal kontrol. Dengan menyandikan informasi
kontrol, dan kemudian mendekodekannya untuk menghasilkan sinyal
kontrol, bit kata kontrol dapat disimpan.
Bagaimana pengkodean ini dilakukan? Untuk menjawab itu,
pertimbangkan bahwa ada total K sinyal kontrol internal dan eksternal
yang berbeda untuk didorong oleh unit kontrol. Dalam skema Wilkes, K
bits dari microinstruction akan didedikasikan untuk tujuan ini. Ini
memungkinkan semua 2 K kemungkinan kombinasi dari sinyal kontrol
yang dihasilkan selama siklus instruksi. Tetapi kita bisa melakukan lebih
baik daripada ini jika kita amati bahwa tidak semua kombinasi yang
mungkin akan digunakan. Contohnya termasuk yang berikut:
a. Dua sumber tidak dapat dipisahkan ke tujuan yang sama (misalnya,
C2 dan C8 pada Gambar II.5).
b. Register tidak dapat menjadi sumber dan tujuan (mis., C5 dan C12
pada Gambar II.5).
c. Hanya satu pola sinyal kontrol yang dapat disajikan ke ALU pada
suatu waktu.
d. Hanya satu pola sinyal kontrol yang dapat disajikan ke bus kontrol
eksternal pada suatu waktu
Jadi, untuk prosesor yang diberikan, semua kombinasi sinyal kontrol
yang mungkin diijinkan bisa terdaftar, memberikan sejumlah Q <2 K
kemungkinan. Ini dapat dikodekan dengan log2 bit Q minimum, dengan
(log2 Q) <K. Ini akan menjadi bentuk pengkodean yang paling ketat yang
menjaga semua kombinasi sinyal kontrol yang diijinkan. Dalam
prakteknya, bentuk pengkodean ini tidak digunakan, karena dua alasan
a. Sulit untuk memprogram sebagai skema yang diterjemahkan murni
(Wilkes). Poin ini dibahas lebih lanjut saat ini.
b. Ini membutuhkan modul logika kontrol yang kompleks dan lambat

40
sebagai gantinya, beberapa kompromi dilakukan. Ini ada dua macam
a. Lebih banyak bit daripada yang benar-benar diperlukan digunakan
untuk mengkodekan kombinasi yang mungkin.
b. Beberapa kombinasi yang diijinkan secara fisik tidak mungkin
dikodekan
Jenis kompromi yang terakhir memiliki efek mengurangi jumlah bit.
Hasil bersihnya, bagaimanapun, adalah menggunakan lebih dari log2 Q bit
Pada subbagian berikutnya, kita akan membahas teknik pengkodean
khusus. Sisa dari subbagian ini berkaitan dengan efek pengkodean dan
berbagai istilah yang digunakan untuk mendeskripsikannya.
Berdasarkan sebelumnya, kita dapat melihat bahwa bagian sinyal
kontrol dari format microinstruction jatuh pada spektrum. Pada satu
ekstrim, ada satu bit untuk setiap sinyal kontrol; pada ekstrim lainnya,
format yang sangat dikodekan digunakan. Tabel II.4 menunjukkan bahwa
karakteristik lain dari unit kontrol microprogrammed juga jatuh bersama
spektrum dan bahwa spektrum ini, pada umumnya, ditentukan oleh
spektrum derajat pengkodean.
Sepasang barang kedua dalam tabel agak jelas. Skema Wilkes murni
akan membutuhkan sebagian besar bit. Juga harus jelas bahwa ekstrem ini
menyajikan tampilan paling detail dari perangkat keras. Setiap sinyal
kontrol dapat dikontrol secara individual oleh microprogrammer.
Pengkodean dilakukan sedemikian rupa untuk mengumpulkan fungsi atau
sumber daya, sehingga microprogrammer melihat prosesor pada tingkat
yang lebih tinggi, kurang rinci. Lebih jauh lagi, pengkodean ini dirancang
untuk mengurangi beban microprogramming. Sekali lagi, harus jelas
bahwa tugas memahami dan mengatur penggunaan semua sinyal kontrol
adalah yang sulit. Seperti telah disebutkan, salah satu konsekuensi dari
pengkodean, biasanya, adalah mencegah penggunaan kombinasi tertentu
yang diizinkan.
Paragraf sebelumnya membahas desain microinstruction dari sudut
pandang mikroprogrammer. Tetapi tingkat pengkodean juga dapat dilihat

41
dari efek perangkat kerasnya. Dengan format yang tidak dienkode murni,
sedikit atau tidak ada logika dekode diperlukan; setiap bit menghasilkan
sinyal kontrol tertentu. Karena skema pengkodean yang lebih padat dan
lebih agregat digunakan, logika dekode yang lebih kompleks diperlukan.
Ini, pada gilirannya, dapat mempengaruhi kinerja. Lebih banyak waktu
diperlukan untuk menyebarkan sinyal melalui gerbang dari modul logika
kontrol yang lebih kompleks. Dengan demikian, pelaksanaan
microinstructions dikodekan membutuhkan waktu lebih lama daripada
eksekusi yang tidak dienkode.

Tabel II-4 Spektrum Mikrointruksi

Oleh karena itu, semua karakteristik yang tercantum dalam Tabel


II.4 jatuh bersama spektrum strategi desain. Secara umum, desain yang
jatuh ke arah ujung kiri spektrum dimaksudkan untuk mengoptimalkan
kinerja unit kontrol. Desain menuju ujung kanan lebih mementingkan
proses microprogramming. Memang, set instruksi mikro dekat ujung
kanan spektrum terlihat sangat mirip set instruksi mesin. Contoh yang baik
dari ini adalah desain LSI-11, yang akan dijelaskan nanti di bagian ini.
Biasanya, ketika tujuannya hanya untuk mengimplementasikan unit
kontrol, desain akan berada di dekat ujung kiri spektrum. Desain IBM
3033, yang didiskusikan saat ini, ada dalam kategori ini. Seperti yang akan
kita diskusikan nanti, beberapa sistem mengizinkan berbagai pengguna

42
untuk membangun mikroprogram yang berbeda menggunakan fasilitas
microinstruction yang sama. Dalam kasus terakhir, desain cenderung jatuh
di dekat ujung kanan spektrum.
Kami sekarang dapat menangani beberapa terminologi yang
diperkenalkan sebelumnya. Tabel II.4 menunjukkan bagaimana tiga dari
pasangan istilah ini berhubungan dengan spektrum microinstruction.
Intinya, semua pasangan ini menggambarkan hal yang sama tetapi
menekankan karakteristik desain yang berbeda.
Tingkat pengemasan berhubungan dengan tingkat identifikasi antara
tugas kontrol yang diberikan dan bit microinstruction spesifik. Ketika bit
menjadi lebih padat, sejumlah bit yang diberikan berisi lebih banyak
informasi. Jadi, pengemasan berkonotasi encoding. Istilah horizontal dan
vertikal berhubungan dengan lebar relatif dari instruksi mikro. [SIEW82]
menyarankan sebagai aturan praktis bahwa microinstructions vertikal
memiliki panjang dalam kisaran 16 hingga 40 bit dan bahwa
microinstructions horisontal memiliki panjang dalam kisaran 40 hingga
100 bit. Istilah mikroprogramming keras dan lunak digunakan untuk
menunjukkan tingkat kedekatan dengan sinyal kontrol yang mendasari dan
tata letak perangkat keras. Program mikro yang keras umumnya tetap dan
berkomitmen untuk memori hanya-baca. Program mikro yang lembut lebih
dapat diubah dan merupakan saran dari pemrograman mikro pengguna.
Pasangan istilah lain yang disebutkan di awal subbagian ini mengacu
pada pengkodean langsung versus tidak langsung, subjek yang sekarang
kita putar
2. Microinstruction Encoding
Dalam prakteknya, unit kontrol yang diprogram ulang tidak
dirancang menggunakan format microinstruction murni yang tidak
dikodekan atau horizontal. Setidaknya beberapa derajat pengkodean
digunakan untuk mengurangi lebar memori kontrol dan untuk
menyederhanakan tugas microprogramming.

43
teknik dasar untuk pengkodean diilustrasikan pada Gambar II.11a.
Mikro instruksi disusun sebagai satu set bidang. Setiap bidang berisi kode,
yang, setelah mendekode, mengaktifkan satu atau lebih sinyal kontrol.

Gambar II-11 Pengkodean Mikroinstruksi

Mari kita pertimbangkan implikasi tata letak ini. Ketika


microinstruction dijalankan, setiap bidang didekodekan dan menghasilkan
sinyal kontrol. Jadi, dengan bidang N, N tindakan simultan ditentukan.
Setiap tindakan menghasilkan aktivasi satu atau lebih sinyal kontrol.
Secara umum, tetapi tidak selalu, kami akan mendesain format sehingga
setiap sinyal kontrol diaktifkan oleh tidak lebih dari satu bidang. Jelas,
bagaimanapun, itu harus mungkin untuk setiap sinyal kontrol untuk
diaktifkan oleh setidaknya satu bidang

44
Sekarang perhatikan bidang individu. Bidang yang terdiri dari bit L
dapat berisi salah satu kode 2L, yang masing-masing dapat dikodekan ke
pola sinyal kontrol yang berbeda. Karena hanya satu kode yang dapat
muncul di suatu bidang pada satu waktu, kode-kode tersebut saling
eksklusif, dan oleh karena itu, tindakan yang mereka lakukan saling
eksklusif.
Desain format microinstruction yang dikodekan sekarang dapat
dinyatakan dalam istilah sederhana:
a. Atur format ke dalam bidang independen. Artinya, setiap bidang
menggambarkan serangkaian tindakan (pola sinyal kontrol) sehingga
tindakan dari berbagai bidang dapat terjadi secara bersamaan.
b. Tentukan masing-masing bidang sedemikian rupa sehingga tindakan
alternatif yang dapat ditentukan oleh lapangan saling eksklusif.
Artinya, hanya satu dari tindakan yang ditentukan untuk bidang
tertentu yang dapat terjadi pada suatu waktu
Pendekatan dapat diambil untuk mengatur mikroinstruksi yang
dikodekan ke dalam bidang: fungsional dan sumber daya. Metode
pengkodean fungsional mengidentifikasi fungsi-fungsi di dalam mesin dan
menunjuk bidang berdasarkan jenis fungsi. Sebagai contoh, jika berbagai
sumber dapat digunakan untuk mentransfer data ke akumulator, satu
bidang dapat ditunjuk untuk tujuan ini, dengan setiap kode menentukan
sumber yang berbeda. Pengkodean sumber daya melihat mesin sebagai
terdiri dari sekumpulan sumber daya independen dan mengabdikan satu
bidang ke setiap (mis., I / O, memori, ALU)

45
Gambar II-12 Format Alternatif Mikrointruksi untuk mesin sederhana

Aspek lain dari pengkodean adalah apakah itu langsung atau tidak
langsung (Gambar II.11b). Dengan pengkodean tidak langsung, satu
bidang digunakan untuk menentukan interpretasi bidang lain. Sebagai
contoh, pertimbangkan ALU yang mampu melakukan delapan operasi
aritmatika yang berbeda dan delapan operasi shift yang berbeda. Bidang 1-
bit dapat digunakan untuk menunjukkan apakah operasi shift atau
aritmatika akan digunakan; bidang 3-bit akan menunjukkan operasi.
Teknik ini umumnya menyiratkan dua level decoding, meningkatkan
penundaan propagasi.
Gambar II.12 adalah contoh sederhana dari konsep-konsep ini.
Asumsikan prosesor dengan akumulator tunggal dan beberapa register
internal, seperti penghitung program dan register sementara untuk input
ALU. Gambar II.12a menunjukkan format yang sangat vertikal. 3 bit
pertama menunjukkan jenis operasi, 3 berikutnya menyandikan operasi,

46
dan 2 terakhir memilih register internal. Gambar II.12b adalah pendekatan
yang lebih horisontal, meskipun pengkodean masih digunakan. Dalam hal
ini, fungsi yang berbeda muncul di berbagai bidang.
3. LSI-11 Microinstruction Execution
The LSI-11 [SEBE76] adalah contoh yang baik dari pendekatan
microinstruction vertikal. Kami pertama melihat organisasi unit kontrol,
kemudian pada format microinstruction.
a. LSI-11 Control Unit Organization
LSI-11 adalah anggota pertama keluarga PDP-11 yang
ditawarkan sebagai prosesor single-board. Papan berisi tiga chip LSI,
bus internal yang dikenal sebagai bus microinstruction (MIB), dan
beberapa logika antarmuka tambahan.

Gambar II-13 Blok diagram sederhana LSI-11 Processor

Gambar II.13 menggambarkan, dalam bentuk yang


disederhanakan, organisasi prosesor LSI-11. Ketiga chip tersebut
adalah data, kontrol, dan chip kontrol toko. Chip data berisi 8-bit ALU,
dua puluh enam 8-bit register, dan penyimpanan untuk beberapa kode
kondisi. Enam belas register digunakan untuk mengimplementasikan

47
delapan register 16-bit tujuan umum PDP-11. Lainnya termasuk kata
status program, register alamat memori (MAR), dan register buffer
memori. Karena ALU hanya berurusan dengan 8 bit, dua melewati
ALU diperlukan untuk mengimplementasikan operasi aritmatika 16-bit
PDP-11. Ini dikendalikan oleh mikroprogram.
Chip atau chip kontrol toko berisi memori kontrol 22-bit-lebar.
Chip kontrol berisi logika untuk mengurutkan dan mengeksekusi
microinstructions. Ini berisi register alamat kontrol, register data
kontrol, dan salinan register instruksi mesin.
MIB mengikat semua komponen bersama. Selama pengambilan
microinstruction, chip kontrol menghasilkan alamat 11-bit ke MIB.
Toko kontrol diakses, menghasilkan mikroinstruksi 22-bit, yang
ditempatkan pada MIB. 16 bit low-order pergi ke chip data, sementara
low-order 18 bit pergi ke chip kontrol. Kontrol 4-bit tingkat tinggi
yang khusus mengontrol fungsi papan prosesor.

Gambar II-14 Organisasi LSI-11 Control Unit

48
Gambar II.14 memberikan tampilan yang masih sederhana
namun lebih rinci pada unit kontrol LSI-11: gambar mengabaikan
batas chip individual. Skema sekuensing alamat diimplementasikan
dalam dua modul. Kontrol urutan keseluruhan disediakan oleh modul
kontrol urutan mikroprogram, yang mampu meningkatkan register
alamat microinstruction dan melakukan cabang tanpa syarat. Bentuk
perhitungan alamat lainnya dilakukan oleh array terjemahan terpisah.
Ini adalah rangkaian kombinatorial yang menghasilkan alamat
berdasarkan mikro-instruksi, instruksi mesin, konter program
microinstruction, dan register interupsi.
Array terjemahan ikut bermain pada kesempatan-kesempatan
berikut:
1). Opcode ini digunakan untuk menentukan permulaan microroutine.
2). Pada waktu yang tepat, bit-bit mode alamat dari microinstruction
diuji untuk melakukan pengalamatan yang sesuai.
3). Kondisi interupsi diuji secara berkala.
4). Microinstructions cabang bersyarat dievaluasi
b. LSI-11 Microinstruction Format
The LSI-11 menggunakan format microinstruction yang sangat
vertikal, yang hanya 22 bit lebar. Set instruksi mikro sangat mirip
dengan set instruksi mesin PDP-11 yang diimplementasikannya.
Desain ini dimaksudkan untuk mengoptimalkan kinerja unit kontrol
dalam batasan desain vertikal, mudah diprogram. Tabel II.5
mencantumkan beberapa microinstructions LSI-11.

49
Tabel II-5 Beberapa LSI-11 Mikrointruksi

Gambar II-15 Format Mikrointruksi LSI-II

Gambar II.15 menunjukkan format 22-bit LSI-11


microinstruction. Kontrol 4 bit tingkat tinggi berfungsi khusus pada
papan prosesor. Bit terjemahan memungkinkan array terjemahan untuk
memeriksa interupsi tertunda. Bit register pengembalian beban
digunakan di ujung microroutine untuk menyebabkan alamat
microinstruction berikutnya dimuat dari daftar kembali.

50
Sisa 16 bit digunakan untuk operasi mikro yang sangat
dikodekan. Formatnya mirip seperti instruksi mesin, dengan opcode
variabel-panjang dan satu atau lebih operan.
4. IBM 3033 Microinstruction Execution

Tabel II-6 Control Field Mikroinstruksi IBM 3303

Memori kontrol IBM 3033 standar terdiri dari 4K word. Paruh


pertama ini (0000-07FF) mengandung 108-bit microinstructions,
sedangkan sisanya (0800-0FFF) digunakan untuk menyimpan 126-bit
microinstructions. Formatnya digambarkan pada Gambar II.16. Meskipun
ini adalah format yang agak horizontal, pengkodean masih banyak
digunakan. Bidang-bidang utama dari format tersebut dirangkum dalam
Tabel II.6

51
Gambar II-16 Format Mikrointruksi IBM 3303

ALU beroperasi pada input dari empat register khusus, non-user-


visible,A, B, C, dan D. Format microinstruction berisi bidang untuk
memuat register ini dari register yang terlihat pengguna, melakukan fungsi
ALU, dan menentukan daftar yang dapat dilihat pengguna untuk
menyimpan hasilnya. Ada juga bidang untuk memuat dan menyimpan data
antara register dan memori.

52
BAB III
PENUTUP

A. KESIMPULAN
1. Komputer adalah sistem yang lengkap dan rumit. Untuk kita memahami
sebuah system komputer secara jelas kita perlu memahami sistem hirarki
dari komputer, yang mana sistem hirarki merupakan sekumpulan
subsistem yang saling terkait mulai dari titik tertinggi sampe titik
terendah.
2. Sebagian besar implementasi unit kontrol jatuh ke dalam salah satu dari
dua kategori yaitu Hardwired implementation/implementasi yang
tertanam. dan Microprogrammed implementation
3. Dalam implementasi yang tertanam, Control Unit pada dasarnya adalah
sebuah rumusan rangkaian mesin atau rangkaian kombinatorial. Sinyal
logika inputnya diubah menjadi satu set sinyal logika output, yang
merupakan sinyal kontrol.
4. Pendekatan untuk desain unit kontrol yang terorganisir dan sistematis dan
menghindari kerumitan penerapan yang tertanam/Hardwired
implementation, Selain penggunaan sinyal kontrol, setiap microoperation
dijelaskan dalam notasi simbolik. Rancangan Microprogamed relatif
mudah diubah-ubah dan dibetulkan.
5. Istilah microprogram pertama kali diciptakan oleh M. V. Wilkes pada
awal 1950-an [WILK51]. Wilkes mengusulkan pendekatan untuk desain
unit kontrol yang terorganisir dan sistematis dan menghindari kerumitan
penerapan yang tertanam (hardwired implementation).
6. Konsep dasar microprogramed control unit menggunakan sekumpulan
instruksi (microinstruksi) untuk mengontrol operasi yang komplek,
rangkaian instruksi tersebut disebut dengan micro-programming atau
firmware. Firmware berada di antara perangkat keras komputer dan
perangkat lunak komputer, lebih mudah dirancang dibandingkan

53
perangkat keras namun akan lebih sulit bila dibandingkan dengan program
perangkat lunak.
7. Tugas yang dikerjakan microprogamed control unit meliputi pengurutan
microinstruction / Microinstruction sequencing yaitu untuk mendapatkan
mikro instruksi berikutnya dari memori kontrol. Dan yang kedua adalah
Eksekusi instruksi mikro / Microinstruction execution yaitu untuk
menghasilkan sinyal kontrol yang dibutuhkan untuk menjalankan
microinstruction.
8. Keuntungan utama dari penggunaan microprogramming untuk
mengimplementasikan unit kontrol adalah menyederhanakan desain unit
kontrol. Dengan demikian, keduanya lebih murah dan lebih sedikit rawan
kesalahan untuk diimplementasikan.
9. Kerugian utama dari unit microprogrammed adalah bahwa ia akan
menjadi lebih lambat daripada unit yang terhubung langsung dengan
teknologi yang sebanding.
B. KRITIK dan SARAN SARAN
1. Semoga makalah ini dapat menjadi referensi bagi semua pihak untuk dapat
lebih mengembangkan pengetahuan dan pemahaman tentang organisasi
dan arsitektur komputer terutama dalam konsep yang terdapat pada
miroprogamed control unit.
2. Penulisan makalah ini tidak lepas dari konsep dan rujukan dari beberapa
sumber sebagai bahan penulisan. Untuk itu kami mohon kepada Bapak/Ibu
pengampu mata kuliah Arsitektur dan Orgnaisasi Komputer agar
mengajarkan serta mengarahkan kepada para pelajar khususnya bagi
mahasiswa supaya referensi-referensi yang didapat tidak terjadi salah
pemahaman sehingga proses pengembangan keilmuan lebih terarah lebih
baik, karena selain merugikan diri sendiri juga akan merugikan orang lain.

54
DAFTAR PUSTAKA

Stallings, W. (2016). Computer Organization and Architecture, Tenth edition.


Hoboken,: Pearson Education, Inc.

55

Vous aimerez peut-être aussi