Archives

gravatar

Organisasi Dan Arsitektur Komputer

Tulisan ini menjawab sekilas mengenai Kode Hamming, Superscalar,Instruction Set Characteristic, Instruction Set Addressing Mode, Process Structure And Function, dan RISC (Reduce Instruction Set Computing).

 
1.     KODE HAMMING
a.      Dua mekanisme dalam melakukan koreksi kesalahan data:
Mekanisme pendeteksian kesalahan dan mekanisme perbaikan kesalahan.
a)      Mekanisme pendeteksian kesalahan dengan menambahkan data word (D) dengan suatu kode, biasanya bit cek paritas (C). Sehingga data yang disimpan memiliki panjang D + C. Kesalahan akan diketahui dengan menganalisa data dan bit paritas tersebut.
b)      Mekanisme perbaikan kesalahan yang paling sederhana adalah kode Hamming. Untuk mengurangi bahkan menghilangkan kesalahan sandi biner dapat juga mengggunakan metode Hamming. Dalam tulisan ini akan dibahas untuk koreksi galat satu digit dan koreksi kesalahan untuk word data.

b.      Metode Koreksi Error dalam Kode Hamming

Mekanisme pendeteksian kesalahan dengan menambahkan data word (D) dengan suatu kode, biasanya bit cek paritas (C). Sehingga data yang disimpan memiliki panjang D + C. Kesalahan akan diketahui dengan menganalisa data dan bit paritas tersebut. Mekanisme perbaikan kesalahan yang paling sederhana adalah kode Hamming.

                       
Apabila ada kesalahan penulisan bit pada data seperti gambar (c) akan dapat diketahui karena lingkaran A dan B memiliki logika 1 berjumlah ganjil. Lalu bagaimana dengan word lebih dari 4 bit ? Ada cara yang mudah yang akan diterangkan berikut. Sebelumnya perlu diketahui jumlah bit paritas yang harus ditambahkan untuk sejumlah bit word. Contoh sebelumnya adalah koreksi kesalahan untuk kesalahan tunggal yang sering disebut single error correcting (SEC). Jumlah bit paritas yang harus ditambahkan lain pada double error correcting (DEC). Tabel dibawah ini menyajikan jumlah bit paritas yang harus ditambahkan dalam sistem kode Hamming.

c.      Generator, Encoding, dalam Kode Hamming.
a)      Encoding (pengkodean) adalah proses penambahan bilangan biner sebanyak (n-m)karakter pada setiap kode agar terbentuk kata kode. 
b)      Decoding (menguraikan katakode) adalah proses menguraikan suatu kata kode menjadi sebuah pesan.

 

 2.     SUPERSCALAR
a.      Pengertian Superscalar
Superscalar adalah sebuah inti prosesor yang mengeksekusi dua kali/lebih operasi scalar dalam bentuk paralel. Superscalar ini merupakan salah satu rancangan untuk meningkatkan kecepatan CPU.

b.      Fungsi Superscalar
Peristiwa menarik yang bisa dilakukan dengan metoda superscalar ini adalah dalam hal memperkirakan pencabangan instruksi (brach prediction) serta perkiraan eksekusi perintah (speculative execution). Peristiwa ini sangat menguntungkan buat program yang membutuhkan pencabangan dari kelompok intruksi yang dijalankankannya.

c.       Contoh Penerapan Superscalar
Sebagai perbandingan, komputer yang membangkitkan pemrosesan pada PC pertama yang dikeluarkan oleh IBM pada mesin 8088 memiliki sekitar 29.000 transistor. Sedangkan pada mesin Pentium III, dengan teknologi superscalar dan superpipeline, mendukung branch prediction, speculative execution serta berbagai kemampuan lainnya memiliki sekitar 7,5 juta transistor. Beberapa CPU terkini lainnya seperti HP 8500 memiliki sekitar 140 juta transistor.

Contoh CPU yang telah menerapkan arsitektur superscalar :
Intel Processors
• 486, Pentium, Pentium Pro
Superscalar Processor Design
• Use PowerPC 604 as case study
• Speculative Execution, Register Renaming, Branch Prediction
More Superscalar Examples
• MIPS R10000
• DEC Alpha 21264
Berikut perbandingan superscalar dengan system i386
Cycles Per Instruction
Instruction Type 386 Cycles 486 Cycles
Superscalar dapat mengeksekusi instruksi 1 (I1) dan instruksi 2 (I2) secara pararel dengan syarat
:
– Keduanya instruksi yang sederhana
– I1 tidak melakukan proses jump
– Tujuan (destination) dari I1 bukan sumber (source) dari I2
– Tujaun (destinition) dari I1 bukan tujuan (destination) dari I2
Jika kondisi diatas tidak dapat dipenuhi
– I1 melakukan proses U-pipe
– I2 dijalankan di cycle berikutnya
.

d.      Perbedaan Superscalar dengan Superpipeline
Superscalar adalah salah satu jenis dari arsitektur, dimana superscalar adalah sebuah uniprocessor yang dapat mengeksekusi dua atau lebih operasi scalar dalm bentuk parallel, Merupakan salah satu rancangan untuk meningkatkan kecepatan CPU.
Sedangkan, teknologi pipeline yang digunakan pada komputer bertujuan untuk meningkatkan kinerja dari komputer. Secara sederhana, pipeline adalah suatu cara yang digunakan untuk melakukan sejumlah kerja secara bersamaan tetapi dalam tahap yang berbeda yang dialirkan secara kontiniu pada unit pemrosesan. Dengan cara ini, maka unit pemroses selalu bekerja.


 3.     INSTRUCTION SET CHARACTERISTIC
a.     Teknik Addressing yang sering dilakukan
1.      Immediate addressing
Operand (data yang akan dikomputasi) berada langsung pada set instruksi.
2.      Direct Addressing
Operand berada pada memori, set instruksi memegang alamat lokasi memori dimana operand tersebut berada.
3.      Indirect Addresing
Operand berada pada memori, untuk mendapatkan operand ini CPU harus melakukan penelusuran dua kali yaitu dari data alamat memori yang ada pada set instruksi serta alamat yang ditunjuk oleh alamat memori yang diperoleh dari set instruksi tadi.
4.      Register addressing
Operand berada pada register, cara kerjanya mirip dengan direct addressing hanya saja CPU mengakses alamat register bukan alamat memori.
5.      Register Indirect Addressing
Operand berada pada memori, untuk mendapatkan operand CPU harus mengakses register terlebih dahulu karena informasi lokasi operand berada pada register.
6.      Displacement
Operand berada pada memori, cara kerjanya merupakan gabungan dari teknik direct addressing dan register indirect addressing.
7.      Stack
Operand berada pada stack, operand secara berkala dimasukan ke stack sehingga ketika operand dibutuhkan maka operand sudah berada pada “top of the stack”.

b.     Operasi-operasi instruksi untuk Arithmetic
1.      ADD : penjumlahan
2.      SUBTRACT : pengurangan
3.      MULTIPLY : perkalian
4.      DIVIDE : pembagian
5.      ABSOLUTE
6.      NEGATIVE
7.      DECREMENT
8.      INCREMENT           

c.      Operasi-operasi instruksi untuk Logical
1.      AND, OR, NOT, EXOR
2.      COMPARE : melakukan perbandingan logika.
3.      TEST : menguji kondisi tertentu.
4.      SHIFT : operand menggeser ke kiri atau kanan menyebabkan konstanta pada ujung bit.
5.      ROTATE : operand menggeser ke kiri atau ke kanan dengan ujung yang terjalin

d.     Elemen-elemen dari Instruksi Mesin (Set Instruksi)
1.      Operation Code (opcode) : menentukan operasi yang akan dilaksanakan
2.      Source Operand Reference : merupakan input bagi operasi akan dilaksanakan
3.      Result Operand Reference : merupakan hasil dari operasi yang dilaksanakan
4.      Next instruction Reference : memberitahu CPU untuk mengambil (fetch) instruksi berikutnya setelah instruksi yang dijalankan selesai.       

 
4.     INSTRUCTION SETS ADDRESSING MODE
a.     Pengertian Instruction Set dan Elemen-elemennya
 Kumpulan dari instruksi-instruksi yang berbeda yang dapat di jalankan oleh CPU. Elemen-elemennya
1.      Operation Code (opcode) : menentukan operasi yang akan dilaksanakan
2.      Source Operand Reference : merupakan input bagi operasi akan dilaksanakan
3.      Result Operand Reference : merupakan hasil dari operasi yang dilaksanakan
4.      Next instruction Reference : memberitahu CPU untuk mengambil (fetch) instruksi berikutnya setelah instruksi yang dijalankan selesai.

b.     Tipe-tipe Operasi yang terkait dengan Op Code
1.      Operasi data transfer
2.      Operasi Arithmetic
3.      Operasi Logical
4.      Operasi Conversion
5.      Operasi I/O
6.      Operasi System Control
7.      Operasi Transfer of Control

c.      pengertian Micro Operation
Operasi tingkat rendah yang dapat dilakukan oleh komputer atau CPU sehingga fungsi-fungsi operasi akan dihasilkan untuk memindahkan data antar register.

d.     4 Jenis Register dalam Fetch
1.      Memory Address Register (MAR)
2.      Memory Buffer Register (MBR)
3.      Program Counter (PC)
4.      Instruction Register (IR)

 
5.     PROCESSOR STRUCTURE AND FUNCTION
a.     Bagian-bagian penting Prosessor
1.      ALU (Arithmatika Logical Unit
2.      CU (Control Unit)
3.      Register

b.     Fungsi utama Prosesor
Fungsi utama prosesor adalah menjalankan program-program yang di simpan di memori utama.

c.      Generasi-generasi Prosesor
1.      Generasi I (processor 8088 - 8086)
2.      Generasi II (processor 80286)
3.      Generasi III (processor 80386 DX dan processor 80386 SX)
4.      Generasi IV (processor 80486, processor cyrix 486SLC, processor IBM 486 SLC2)
5.      Generasi V (pentium classic P54C)
6.      Generasi VI (pentium pro)

d.     Jenis-jenis kecepatan dalam kinerja computer
1.      Menambah RAM
2.      Salah satu metode adalah untuk menekan tombol, Ctrl + Alt + Del untuk membuka Task Manager.

 
6.     RISC (Reduce Instruction Set Computing)
a.      Sejarah RISC
Reduced Instruction Set Computing (RISC) atau "Komputasi set instruksi yang disederhanakan" pertama kali digagas oleh John Cocke, peneliti dari IBM di Yorktown, New York pada tahun 1974 saat ia membuktikan bahwa sekitar 20% instruksi pada sebuah prosesor ternyata menangani sekitar 80% dari keseluruhan kerjanya. Komputer pertama yang menggunakan konsep RISC ini adalah IBM PC/XT pada era 1980-an. Istilah RISC sendiri pertama kali dipopulerkan oleh David Patterson, pengajar pada University of California di Berkely.

b.     Karakteristik Arsitektur RISC
1.     Siklus mesin ditentukan oleh waktu yang digunakan untuk mengambil dua buah operand dari register, melakukan operasi ALU, dan menyimpan hasil operasinya kedalam register, dengan demikian instruksi mesin RISC tidak boleh lebih kompleks dan harus dapat mengeksekusi secepat mikroinstruksi pada mesin-mesin CISC.
2.     Operasi berbentuk dari register-ke register yang hanya terdiri dari operasi load dan store yang mengakses memori.
3.     Penggunaan mode pengalamatan sederhana, hampir sama dengan instruksi menggunakan pengalamatan register.
4.     Penggunaan format-format instruksi sederhana, panjang instruksinya tetap dan disesuaikan dengan panjang word.

c.      Ciri-ciri RISC
1.      Instruksi berukuran tunggal
2.      Ukuran yang umum adalah 4 byte
3.      Jumlah pengalamatan data sedikit, biasanya kurang dari 5 buah.
4.     Tidak terdapat pengalamatan tak langsung yang mengharuskan melakukan sebuah akses memori agar memperoleh alamat operand lainnya dalam memori.
5.     Tidak terdapat operasi yang menggabungkan operasi load/store dengan operasi aritmatika, seperti penambahan ke memori dan penambahan dari memori.
6.      Tidak terdapat lebih dari satu operand beralamat memori per instruksi
7.      Tidak mendukung perataan sembarang bagi data untuk operasi load/ store.
8.     Jumlah maksimum pemakaian memori manajemen bagi suatu alamat data adalah sebuah instruksi.
9.     Jumlah bit bagi integer register spesifier sama dengan 5 atau lebih, artinya sedikitnya 32 buah register integer dapat direferensikan sekaligus secara eksplisit.
10.  Jumlah bit floating point register spesifier sama dengan 4 atau lebih, artinya sedikitnya 16 register floating point dapat direferensikan sekaligus secara eksplisit.

d.     Kelebihan dan Kekurangan RISC
Kelebihan:
1.     Berkaitan dengan penyederhanaan kompiler, dimana tugas pembuat kompiler untuk menghasilkan rangkaian instruksi mesin bagi semua pernyataan HLL. Instruksi mesin yang kompleks seringkali sulit digunakan karena kompiler harus menemukan kasus-kasus yang sesuai dengan konsepnya. Pekerjaan mengoptimalkan kode yang dihasilkan untuk meminimalkan ukuran kode, mengurangi hitungan eksekusi instruksi, dan meningkatkan pipelining jauh lebih mudah apabila menggunakan RISC dibanding menggunakan CISC.
2.     Arsitektur RISC yang mendasari PowerPC memiliki kecenderungan lebih menekankan pada referensi register dibanding referensi memori, dan referensi register memerlukan bit yang lebih sedikit sehingga memiliki akses eksekusi instruksi lebih cepat.
3.     Kecenderungan operasi register ke register akan lebih menyederhanakan set instruksi dan menyederhanakan unit kontrol serta pengoptimasian register akan menyebabkan operand-operand yang sering diakses akan tetap berada dipenyimpan berkecepatan tinggi.
4.     Penggunaan mode pengalamatan dan format instruksi yang lebih sederhana.
Kekurangan:
1.     Program yang dihasilkan dalam bahasa simbolik akan lebih panjang (instruksinya lebih banyak).
2.     Program berukuran lebih besar sehingga membutuhkan memori yang lebih banyak, ini tentunya kurang menghemat sumber daya.
3.     Program yang berukuran lebih besar akan menyebabkan menurunnya kinerja, yaitu instruksi yang lebih banyak artinya akan lebih banyak byte-byte instruksi yang harus diambil.
4.     Pada lingkungan paging akan menyebabkan kemungkinan terjadinya page fault lebih besar.



                       
Read more: http://mustafarizaldi.blogspot.com
Baca selengkapnya Bagikan

.

.

MustafaRizaldi

IsLam

Tentang Islam