Senin, 13 Juni 2016



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.