PEMOGRAMAN MIKRO
CLU (Control Logic Unit) mengatur seluruh aktivitas perangkat keras di
computer. Setelah menginterpretasikan kode biner suatu instruksi, CLU akan
menghasilkan serangkaian perintah kendali yang disebut micro programmer
(pemrograman mikro). Pemrograman mikro adalah sebuah piranti logika yang
dibentuk oleh instruksi-instruksi mikro, dimana setiap instruksi biasanya
disimpan dalam memory kendali (ROM dan CLU). Kemudian CLU akan men-decode
instruksi itu dan akan menghasilkan serangkaian instruksi mikro secara
bergiliran. Suatu CLU micro programmer dapat di program secara mikro jika
memory control dapat dimodifikasi oleh pengguna untuk menghasilkan instruksi
yang dibuat sesuai keinginannya.
Organisasi pokok sebuah CLU yaitu
instruksi makro disimpan dalam memory dan diakses melalui memory address
register (MAR) dan Memory Buffer Register (MBR). Instruksi di fetch ke dalam
register instruksi dan pengendali mikro.
Address awal menunggu di dalam register address kendali (CAR) dan memory
control mentransfer instruksi awal kedalam register buffer kendali (CBR).
Kemudian instruksi akan di decode dan akan diproses outputnya sesuai urutan
antrian didalam register.
Perangkaian instruksi mikro dilakukan dengan siapkan sebuah field ADDR
(berisi successor) yang sesuai dan sebuah field COND (2 bit) untuk menentukan
Instruksi mikro berikutnya akan di fetch dari CAR atau ADDR. Salah satu fungsi
pokok dari kendali microprogrammed adalah untuk menyediakan suatu alat untuk
mengendalikan computer dengan sederhana, fleksibel dan harga terjangkau.
Irisan bit adalah sirkuit terpadu (Integrated Sircuit) untuk memprogram
system secara mikro (microprogrammable) yang digunakan untuk merancang
perangkat keras instruksi mikro dan menggunakannya. Sehingga kita dapat
menentukan pembangunan blok yang dengan mudah disusun kedalam suatu computer
untuk memenuhi persyaratan aplikasi tertentu.
Peralatan pendukung program mikro antar lain : assembler mikro
(meng-encode suatu program mikro dalam Bahasa simbolik) , formatter
(megimplementasikan memori kendali), system pengembangan (menyimpan program,
menguji data pada file, mengedit, dan mensimulasikan memori) , dan simulator
perangkat keras (rincian arus data perangkat lunak).
Ada 2 pendekatan pokok bagi
perancangan CLU yaitu :
1.
Kendali Hard Wired
LDR (Load register dari
memori )
LDM (Load memory dari
register)
ADR (Add ke register )
BRU (Branch/ cabang tidak
kondisional )
BRZ (Branch pada nol )
Langkah- langkah dala menjalankan
intruksi :
a.
t 0 =
MAR ← PC : isi PC
dikirim ke MAR.
b.
t1 = MBR ← M[MAR] : lokasi memoriterisi diletakkan pada MBR
& PC
bertambah 1.
c.
t2 = IR←MBR : isi MBR
dikirim ke IR.
d.
t3
= MAR←(IR| address operand) : Field address operand intruksi tersebut.
dikirim dari IR ke MAR
e.
t4 = MBR ←M[MAR] : operand diletakkan pada MBR.
f.
t5
=ACC←(ACC)+ (MBR) : isi MBR dan akumulator ditambahkan dan
hasilnya diletakkan
pada akumulator.
2.
Kendali Microprogram
Serangkaian
intruksi mikro tersimpan didalam memori yang berhubungan masing-masing intruksi
dalam kelompok intruksi tersimpan dalam
memori ROM yang disebut memori kendali. Suatu CLU Microprogrammed disebut
sebagai Microprogramable (dapat diprogram secara mikro) jka memori kontrol
dapat dimodifikasi oleh pemakai untuk menghasilkan intruksi mikro yag
diinginkan.
A.
Format Intruksi Mikro
Rangkaian operasi
mikro yang berhubungan dengan ALU terdiri dari langkah-langkah berikut :
a.
X←
(register) : Transfer isi sebuah
register ke input X pada ALU
b.
Y←(register) : Transfer isi sebuah register ke
input Y pada ALU
c.
Z←f(X,Y) : Memilih sebuah operasi ALU
d.
Register←(Z) : Menuliskan Z kesebuah register
B.
Perangkaian Intruksi Mikro
Karena hanya ada 4 pilihan mengenai intruksi mikro berikutnya
maka lebar field COND dapat sebesar 2 bit dan ke 4 pilihan tersebut dapat
diindikasikan dengan mengatur COND sebagai berikut :
a.
COND = 00 :jangan
lompat, intruksi mikro berikutnya diambil
dari (CAR)+ 1
b.
COND= 01 :
Lompat ke ADDR jika C1
c.
COND=10 :
Lompat ke ADDR jika C2
d.
COND= 11 :
Lompat ke ADDR tanpa kondisional
C.
Emulasi
Emulsi memungkinkan kita untuk mengganti
peralatan yang lama dengan mesin-mesin yang lebih up-to-date tanpa mengharuskan
pemakai untuk menuls kembali keseluruhan perangkat lunak mereka.
D.
Irisan Bit
Irisan
bit merupakan irisan yang melalui data path prosesor tersebut. Irisan itu hanya
terdiri atas beberapa bit (umumnya 2 atau 8), yag berisi semua sirkuit logika
yang diperlukan untuk menyimpan fungsi ALU, fungsi register dan fungsi-fungsi
kendali.
E.
Peralatan Pendukung
a.
Assembler Mikro :
mencode program dalam saru representasi absolut
b.
Formatter :
pemrograman PROM untuk menginplementasikan
memori kendala.
c.
Sisi pengembangan: untuk menyimpan program mikro
dan menguji
data pada file disk, mengeditnya dari
terminal, dan mensimulasikan memori
kendali.
d.
Simulator perangkat keras : program-program yang
mensimulasikan
rincian arus data dalam perangkat keras yang
sedang dirancang.
KOMPUTER PIPELINE
1.
Konsep Pipeline
Pemprosesan
pipeline dalam suatu komputer diperoleh dengan membagi suatu fungsi yang akan
dijalankan menjadi beberapa subfungsi yang lebih kecil dan merancang perangkat
keras Yang terpisah, disebut sebagai tingkatan setiap subfungsi.
2.
Klasifikasi Pipeline
a.
Klasifikasi berdasarkan fungsi
·
Pipeline aritmatika : proses segmentasi fungsi
dari ALU dari sistem
yang muncul dalam kategori ini.
·
Pipeline intruksi : komputer non pipeline, CPU bekerja melalui
suatu siklus
yang berkesinambungan dari fetch- decode
eksekusi untuk semua intruksi.
·
Pipeline Prosesor : stage dari pipeline
merupakan proses aktual dan
latch-latch
saling berbagi memori antara proses-proses tersebut.
b.
Klasifikasi berdasaran konfigurasi
·
Unifungsi :
hanya menjalankan satu jenis pokok operasi
·
multifungsi :
dapat menjalankan fungsi-fungsi yang berbeda
·
statis :
intruksi yang sama akan dijalankan bersamaan
waktunya
·
dinamis :
beberapa konfigurasi fungsional dapat muncul
sekaligus
·
skalar :
memproses serangkaian operasi skalar pada
operand skalar
·
vektor :
memproses intruksi vektor dengan menggunakan
operand vektor
3.
Prinsip Pipeline Secara Umum
a.
Tabel Reservasi
b.
Penjadwalan dan pencegahan adanya tubrukan
c.
Penyisipan penangguhan untuk trhoughput yang
optimal
PEMPROSESAN PARALEL
1.
Kebutuhan akan Pemprosesan Paralel
Dalam sebuah
komputer dapat didefinisikan sebagai pelaksanaan intruksi-intruksi secara
bersamaan waktu. Hal ini dapat melaksanakan kejadian-kejadian sebagai berikut :
a.
Interval waktu yang sama
b.
Waktu yang bersamaan
c.
Rentang waktu yang saling bertumpang tindih
2.
Teknik – Teknik Pemprosesan Paralel
a.
Pipelining
b.
Unit –unit fungsional berganda, membagun
unit-unit yang terpisah untu menjalankan fungsi-fungsi yang berbeda.
c.
Tumpang tindih antara operasi-operasi CPU dan
O/I, CPU bertanggung jawab mengarahkan semua operasi I/O dan untuk menjalankan
intruksi-intruksi program didalam memori.
d.
Interleving
memori, pada memori memungkinkan ada lebih dari satu word yang di fetch dari
memori.
e.
Multiprograming, jenis paralelisme,
kejadian merupakan program-program yang
dijalankan secara sekuensial pada interval waktu yang sama.
f.
Multiprosesing, menggunakan beberapa prosessor
yang bekerja bersama-sama pada permasalahan yang sama.
3.
Klasifikasi pada Arsitektur Komputer Paralel
a.
Tingkat pekerjaan
b.
Tingkat prosedur
c.
Tingkat intruksi
d.
Tingkat aritmatika dan bit
Dibawah ini diberikan klasifikasi dari klasifikasi flynn
a.
SISD (sigle instruction stream), pelaksanaan
intruksi secara sekuensial
b.
SIMD (multiple data stream),dilaksanakan satu
persatuan waktu namun mampu bekerja pada beberapa aliran data sekaligus.
c.
MISD (multiple intruction stream)
melaksanakan
beberapa operasi intruksi secara bersamaan pada sebuah iem data tunggal.
d.
MIMD (multiple intruction stream), eksekusi
lebih dari satu intruksi pada waktu yang bersamaan.
4.
Pemprosesan Vektor
a.
Karakteristik intruksi vektor
1.
Operasi akan dijalankan
2.
Operand yang akan digunakan
3.
Status yang akan direkam
4.
Intruksi berikutnya yang akan dijalankan
5.
Proses Array
Karakteristik array :
1.
PE-PE, dirancang sebagai piranti yang pasif
tanpa kemampuan decoding
2.
Semua PE menjalankan fungsi yang sama pada waktu
yang sama pula, dibawah kendali CPU tunggal.
6.
Sistem Multiprosessor
Merupakan sebuah sistem dimana
sekumpulan prosessor dalam suatu komputer tunggal berhubungan dan bekerja
samasatu sama lain untuk memecahkan suatu permasalahan.
7.
Organisasi Paralel secara Umum
Suatu jenis organisasi paralel yang
benar benar berbeda adalah arsitektur arus data. Dalam arsitektur data , secara
otomatis dimungkinkan untuk dieksekusi begitu operand data yang mereka minta
tersedia.