Selasa, 05 November 2019

Arsitektur set instruksi

Set Instruksi didefinisikan sebagai suatu aspek dalam arsitektur komputer yang dapat dilihat oleh para pemrogram. Secara umum, ISA ini mencakup jenis data yang didukung, jenis instruksi yang dipakai, jenis register, mode pengalamatan, arsitektur memori, penanganan interupsi, eksepsi, dan operasi I/O eksternalnya (jika ada).
ISA merupakan sebuah spesifikasi dari Pullman semua kode-kode biner (opcode) yang diimplementasikan dalam bentuk aslinya (native form) dalam sebuah desain prosesor tertentu.
A. Elemen Elemen Set Instruksi
  • Operation Code (opcode) : menentukan operasi yang akan dilaksanakan.
  • Source Operand Reference : merupakan input bagi operasi yang akan dilaksanakan.
  • Result Operand Reference : merupakan hasil dari operasi yang dilaksanakan.
  • Next Instruction Reference : memberitahu CPU untuk mengambil instruksi berikutnya setelah instruksi yang dijalankan selesai.
B. Jenis Jenis Instruksi
  • Data Processing / Pengolahan Data : instruksi-instruksi aritmetika dan logika. Instruksi aritmetika memiliki kemampuan untuk mengolahdata numeric, sedangkan instruksi logika beroperasi pada bit-bit word sebagai bit bukan sebagai bilangan. Operasi-operasi tersebut dilakukan terutama untuk data di register CPU.
  • Data Storage / Penyimpanan Data : instruksi-instruksi memori. Instruksi-instruksi memori diperlukan untuk memindah data yang terdapat di memori dan register.
  • Data Movement / Perpindahan Data : instruksi I/O. Instruksi-instruksi I/O diperlukan untuk memindahkan program dan data ke dalam memori dan mengembalikan hasil komputansi kepada pengguna.
  • Control / Kontrol : instruksi pemeriksaan dan percabangan. Instruksi-instruksi kontrol digunakan untuk memeriksa nilai data, status komputansi dan mencabangkan ke set instruksi lain.
C. Teknik Pengalamatan
1. Immediate Addressing (Pengalamatan Segera)
  • Pengalamatan yang paling sederhana.
  • Operand benar-benar ada dalam instruksi atau bagian dari intsruksi
  • Operand sama dengan field alamat
  • Umumnya bilangan akan disimpan dalam bentuk complement dua
  • Bit paling kiri sebagai bit tanda
  • Ketika operand dimuatkan ke dalam register data, bit tanda digeser ke kiri hingga maksimum word data
Keuntungan :
Tidak adanya referensi memori selain dari instruksi yang diperlukan untuk memperoleh operand
Menghemat siklus instruksi sehingga proses keseluruhanakan akan cepat.

Kekurangan :
Ukuran bilangan dibatasi oleh ukuran field.

Contoh :
ADD 7 ; tambahkan 7 pada akumulator

2. Direct Addressing (Pengalamatan Langsung)
  • Teknik ini banyak digunakan pada komputer lama dan komputer kecil
  • Hanya memerlukan sebuah referensi memori dan tidak memerlukan kalkulus khusus
Kelebihan :
Field alamat berisi efektif address sebuah operand

Kekurangan :
Keterbatasan field alamat karena panjang field alamat biasanya lebih kecil dibandingkan panjang word

Contoh :
ADD A ; tambahkan isi pada lokasi alamat A ke akumulator

3. Indirect Addressing (Pengalamatan tak langsung)
Merupakan mode pengalamatan tak langsung
  • Field alamat mengacu pada alamat word di alamat memori, yang pada gilirannya akan berisi alamat operand yang panjang
Kelebihan :
Ruang bagi alamat menjadi besar sehingga semakin banyak alamat yang dapat referensi
Kekurangan :
Diperlukan referensi memori ganda dalam satu fetch sehingga memperlambat proses operasi
Contoh :
ADD (A) ; tambahkan isi memori yang ditunjuk oleh isi alamat A ke akumulator

4. Register addressing (Pengalamatan Register)
  • Metode pengalamatan register mirip dengan mode pengalamatan langsung
  • Perbedaanya terletak pada field alamat yang mengacu pada register, bukan pada memori utama
  • Field yang mereferensi register memiliki panjang 3 atau 4 bit, sehingga dapat mereferensi 8 atau 16 register general purpose
Keuntungan :
Diperlukan field alamat berukuran kecil dalam instruksi dan tidak diperlukan referensi memori
Akses ke register lebih cepat daripada akses ke memori, sehingga proses eksekusi akan lebih cepat.
Kerugian :
Ruang alamat menjadi terbatas
5. Register indirect addressing (Pengalamatan tak-langsung register) 

Metode pengalamatan register tidak langsung mirip dengan mode pengalamatan tidak langsung
Perbedaannya adalah field alamat mengacu pada alamat register
  • Letak operand berada pada memori yang dituju oleh isi register
  • Keuntungan dan keterbatasan pengalamatan register tidak langsung pada dasarnya sama dengan pengalamatan tidak langsung
  • Keterbatasan field alamat diatasi dengan pengaksesan memori yang tidak langsung sehingga alamat yang dapat direferensi makin banyak
  • Dalam satu siklus pengambilan dan penyimpanan, mode pengalamatan register tidak langsung hanya menggunakan satu referensi memori utama sehingga lebih cepat daripada mode pengalamatan tidak langsung
6. Displacement addressing
  • Menggabungkan kemampuan pengalamatan langsung dan pengalamatan register tidak langsung
  • Mode ini mensyaratkan instruksi memiliki dua buah field alamat, sedikitnya sebuah field yang eksplisit
  • Operand berada pada alamat A ditambahkan isi register
    Tiga model displacement
  • Relative addressing : register yang direferensi secara implisit adalah Program Counter (PC)
  • Alamat efektif didapatkan dari alamat instruksi saat itu ditambahkan ke field alamat
  • Memanfaatkan konsep lokalitas memori untuk menyediakan operand-operand berikutnya
Base register addressing : register yang direferensi berisi sebuah alamat memori dan field alamat berisi perpindahan dari alamat itu
  • Referensi register dapat eksplisit maupun implisit
  • Memanfaatkan konsep lokalitas memori
Indexing  : field alamat mereferensi alamat memori utama, dan register yang direferensikan berisi pemindahan positif dari alamat tersebut
  • Merupakan kebalikan dari mode base register
  • Field alamat dianggap sebagai alamat memori dalam indexing
  • Manfaat penting dari indexing adalah untuk eksekusi program-pprogram iteratif
Contoh :
Field eksplisit bernilai A dan field imlisit mengarah pada register

7. Stack addressing
  • Stack adalah array lokasi yang linier = pushdown list = last-in-firs-out
  • Stack merupakan blok lokasi yang terbaik
  • Btir ditambahkan ke puncak stack sehingga setiap blok akan terisi secara parsial
  • Yang berkaitan dengan stack adalah pointer yang nilainya merupakan alamat bagian paling atas stack
  • Dua elemen teratas stack dapat berada di dalam register CPU, yang dalam hal ini stack pointer mereferensi ke elemen ketiga stack
  • Stack pointer tetap berada dalam register
  • Dengan demikian, referensi-referensi ke lokasi stack di dalam memori pada dasarnya merupakan pengalamatan register tidak langsung
Sumber :

https://mfahrulrozi14.wordpress.com/2017/11/06/arsitektur-set-instruksi-dan-teknik-pengalamatan/
https://triazis13.wordpress.com/2016/11/06/arsitektur-set-instruksi/
http://irfan-abet.blogspot.co.id/2015/01/arsitektur-set-instruksi.html

Organisasi Komputer Dasar

Arsitektur dan Organisasi Komputer

Dalam penjelasan sistem komputer, diperlukan perbedaan antara arsitektur komputer dan organisasi komputer. Arsitektur komputer berkaitan dengan atribut-atribut sebuah sistem yang tampak bagi seorang pemrogram. Atau arsitektur komputer berkaitan dengan atribut-atribut yang memiliki dampak langsung pada eksekusi logis sebuah program. Contoh atribut arsitektur komputer adalah set intruksi, jumlah bit untuk merepresentasikan bermacam-macam jenis data, mekanisme I/O, dan teknik-teknik pengalamatan memori. Tujuan seorang arsitek komputer adalah merancang sebuah sistem dengan kinerja tinggi dengan biaya yang layak, serta dapat memenuhi persyaratan karakteristik komputer lainya.
Organisasi komputer berkaitan dengan unit-unit operasional dan interkoneksinya yang merealisasikan spesifikasi arsitektural. Organisasi komputer memberikan gambaran yang lebih dalam mengenai struktur fungsional dan interkoneksi logika-logika antar unit-unit. Organisasi komputer meliputi rincian hardware yang dapat diketahui pemrogram, seperti sinyal-sinyal kontrol, interface komputer dan peripheral, dan teknologi memori yang digunakan.
Dua komputer dengan arsitektur yang sama dapat saja mempunyai organisasi yang berbeda, demikian pula sebaliknya. Sebagai analogi dimana seorang arsitek menggambar denah untuk dua rumah namun material bangunan yang digunakan dapat saja berbeda untuk membangun kedua rumah tersebut. Jadi, di dalam perancangan sebuah komputer, yang pertama diterapkan adalah arsitekturnya, baru memutuskan organisasinya.
Suatu sistem komputer terdiri dari lima unit struktur dasar, yaitu:
  • Unit masukan (Input Unit)
  • Unit kontrol (Control Unit)
  • Unit logika dan aritmatika (Arithmetic & Logical Unit / ALU)
  • Unit memori/penyimpanan (Memory / Storage Unit)
  • Unit keluaran (Output Unit)
1.  UNIT INPUT Komputer menerima informasi terkodekan melalui unit input, yang membaca data tersebut. Peralatan input yang paling terkenal adalah keyboard. Kapanpun suatu tombol ditekan, huruf atau digit yang sesuai secara otomatis ditranslasikankan menjadi kode biner yang tepat dan ditransmisikan melalui suatu kabel ke memori atau ke prosesor

2. UNIT MEMORI Fungsi unit memori adalah untuk menyimpan program dan data. Terdapat dua kelas penyimpanan, primer dan sekunder. Penyimpanan primer adalah memori cepat yang beroperasi pada kecepatan elektronik. Program harus disimpan dalam memori tersebut pada saat dieksekusi. Memori tersebut berisi sejumlah besar sel penyimpanan semikonduktor, yang masingmasing mampu menyimpan satu bit informasi. Set-sel tersebut jarang dibaca atau ditulis sebagai sel individual tetapi sebaliknya diolah dalam kelompok dengan ukuran tetap yang disebut word. Memori tersebut terorganissasi sedemikian sehingga isi satu word, yang terdiri dari n bit, dapat disimpan atau diambil dalam satu operasi dasar.

3. UNIT ARITMATIKA DAN LOGIKA
Kebanyakan operasi komputer dieksekusi dalam unit aritmatika dan logika (ALU: arithme~o and logic unit) pada prosesor. Perhatikanlah suatu contoh umum: Misalkan dua bilangan yang berada dalam memori ditambahkan. Bilangan tersebut di bawa ke prosesor, dan penambahan yang sesungguhnya dilakukan oleh ALU. Jumlah tersebut kemudian disimpan dalam memori atau tetap dalam prosesor untuk segera digunakan.


4. UNIT OUTPUT Unit output adalah pasangan unit input. Fungsinya untuk mengirimkan hasil yang telah diproses ke dunia luar. Contoh yang paling umum dari peralatan tersebut adalah printer. Printer menggunakan mechanical head impact, inkjet stream, atau teknik fotokopi, seperti dalam printer laser. untuk melakukan pencetakan. Sangat mungkin untuk menghasilkan tinta yang dapat mencetak sebanyak baris per menit. Kecepatan ini luar biasa untuk peralatan mekanik tetapi masih sangat lambatjika dibandingkan dengan kecepatan elektron pada unit prosesor.

5. UNIT KONTROL Unit memori, aritmatika dan logika, dan input dan output menyimpan dan mengolah informasi dan melakukan operasi input dan output. Operasi unit-unit tersebut harus dikoordinasi dengan beberapa cara. Kooordinasi adalah tugas dari unit kontrol. Unit kontrol secara efektif merupakan pusat saraf yang mengirim sinyal kontrol ke unit lain dan mengetahui keadaan unit tersebut.

Operasi suatu komputer dapat diringkas sebagai berikut:
 
Operasi suatu komputer dapat diringkas sebagai berikut:  Komputer menerima informasi dalam bentuk program dan data melalui unit input dan menyimpannya dalam memori. Informasi yang disimpan dalam memori diambil, di bawah kontrol program, ke unit aritmatika dan logika, di mana informasi tersebut diproses. Informasi yang terproses meninggalkan komputer melalui unit output. Semua kegiatan di dalam mesin tersebut diarahkan oleh unit kontrol. 
 
 
 


Ada beberapa tingkatan dalam arsitektur komputer, pada konstruksi dan organisasi sistem komputer memiliki perbedaan sederhana diantara tingkatan tersebut yaitu perbedaan antara hardware dan software.

1. TINGKATAN DASAR ARSITEKTUR KOMPUTER
Pada tingkatan dasar ini hardware lah yang menduduki tingkatan dasar dalam arsitektur komputer, sedangkan satu tingkat diatasnya adalah software. Software berada ditingkat diatas hardware, karena hardware mendukung software dengan memberikan atau menyediakan operasi yang diperlukan software.

2. Multilayerd Machine

Tingkatan dasar arsitektur komputer kemudian dikembangkan dengan memandang sistem komputer keseluruhan sebagai “multilayered machine” yang terdiri dari beberapa layer software di atas beberapa layer hardware.

Keterangan:
Physical Device layer, merupakan komponen-komponen elektrik dan elektronik yang digunakan dalam arsitekturisasi komputer, physical layer merupakan slah satu yang terpenting dalam arsitektur komputer.
Digital Logic Layer, pada dasarnya elemen ini dapat menyimpan, memanipulasi dan mentransmisikan data dalam bentuk biner sederhana.
Microprogrammed Layer, layer ini menginterprestasikan instruksi bahasa mesin dari layer nesin dan secara langsung menyebabkan elemen logika digital menjalankan operasi yang dikehendaki.
Machine Layer, tingkatan ini merupakan tingkatan paling bawah dalam suatu hardware, dalam programnya layer ini harus menggunakan instruksi bahasa mesin.
Operating System Layer, namanya saja sudah operating system maka layer ini berfungsi sebagai pengatur cara yang dilakukan software dalam menggunakan hardware, dan hardware harus memberikan fasilitasnya sendiri untuk memungkinkan software menggunakan hardware tersebut secara lebih mudah.
Higher Order Software Layer, layer ini mencakup semua program dalam bahasa selain bahasa mesin yang memerlukan penerjemahan kedalam bahasa mesin sebelum mereka menjalankan perintah yang dimaksud.
Aplications Layer, merupakan bahasa komputer seperti yang dilihat oleh end-user.

 Sumber :
 https://mfahrulrozi14.wordpress.com/2017/09/28/organisasi-komputer-dasar/
https://gunadihamdan.wordpress.com/2016/10/07/organisasi-komputer-dasar-membahas-struktur-dasar-komputer-dan-organisasinya/
https://slideplayer.info/slide/3955913/
https://triazis13.wordpress.com/2016/10/10/dasar-organisasi-komputer/