Jumat, 20 Oktober 2017

ARSITEKTUR SET INTRUKSI


1.    Pengertian
Set Instruksi adalah suatu perintah yang diberikan kepada sebuah PC ataupun CPU guna menjalankan sebuah OS (Operating System) dari suatu CPU tersebut. Set instruksi juga biasanya digunakan untuk perantara komunikasi dari programmer menuju mesin, set instruksi biasanya berupa bahasa mesin yang digunakan sebagai jembatan komunikasi antara manusia dengan computer.
 Instruction Set Architecture (ISA) 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).
Ada  dua jenis klasifikasi proses set instruksi yang utama yaitu :
·      CISC (Complex Instruction Set of Computing)
adalah desain prosesor dimana instruksi tunggal dapat menjalankan beberapa operasi tingkat rendah (seperti beban dari memori, operasi aritmatika, dan penyimpanan memori) atau mampu menjalankan operasi multi-langkah atau mode pengalamatan dalam instruksi tunggal. Istilah ini surut diciptakan berbeda dengan Reduced Instruction Set of Computing (RISC) dan karena itu telah menjadi sesuatu dari istilah umum untuk segala sesuatu yang bukan RISC, dari komputer mainframe yang besar dan kompleks untuk mikrokontroler sederhana di mana beban memori dan operasional penyimpanan tidak lepas dari instruksi aritmatika.
·      RISC (Reduced Instruction Set of Computing)
adalah strategi desain CPU berdasarkan ide bahwa set instruksi yang disederhanakan memberikan kinerja yang lebih tinggi bila dikombinasikan dengan arsitektur mikroprosesor mampu melaksanakan instruksi tersebut menggunakan siklus mikroprosesor yang lebih sedikit per instruksi. Sebuah komputer berdasarkan strategi ini adalah set instruksi komputer berkurang, juga disebut RISC. Arsitektur menentang disebut kompleks set instruksi komputasi (CISC).

2.    Jenis-jenis Set Intruksi
A.  Pengolahan Data
Instruksi untuk aritmetika dan logika. Instruksi Aritmetika memiliki kemampuan untuk mengolah data numeric. Instruksi Logika beroperasi pada bit-bit word sebagai bit bukan sebagai bilangan.
B.  Penyimpanan Data
Instruksi untuk Memori. Instruksi memori diperlukan untuk memindahkan data yang terdapat pada memori dan register.
C.  Perpindahan Data
Instruksi untuk I/O. Instruksi I/O diperlukan untuk memindahkan program dan data ke dalam memori dan mengembalikan hasil komputansi kepada pengguna.
D.  Kontrol
Instruksi untuk pemeriksaan dan percabangan. Instruksi kontrol digunakan untuk memeriksa nilai data dannmencambangkan ke set industri lain.

3.    Teknik Pengalamatan
Adapun dalam teknik pengintruksiaannya, set intruksi memiliki 7 teknik pengalamatan, yaitu:
a.    Immediate Addressing
b.    Direct Addressing
c.    Indirect Addressing
d.   Register addressing
e.    Register indirect addressing
f.     Displacement addressing
g.    Stack addressing


Gambar 3.1 Pengalamatan Set Intruksi

Dari gambar diatas dapat dijelaskan sebagai berikut :
a.    Immediate Addressing (Pengalamatan Segera)
Adalah bentuk pengalamatan yang paling sederhana.
Penjelasan :
·      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

b.    Direct Addressing (Pengalamatan Langsung)
Penjelasan :
·      Teknik ini banyak digunakan pada komputer lama dan komputer kecil
·      Hanya memerlukan sebuah referensi memori dan tidak memerlukan kalkulus khusus

c.    Indirect Addressing (Pengalamatan tak langsung)
Penjelasan :
·      Merupakan mode pengalamatan tak langsung
·      Field alamat mengacu pada alamat word di alamat memori, yang pada gilirannya akan berisi alamat operand yang panjang

d.   Register addressing (Pengalamatan Register)
Penjelasan :
·      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.

e.    Register indirect addressing (Pengalamatan tak-langsung register)
Penjelasan :
·      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

f.     Displacement addressing
Penjelasan :
·      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

g.      Stack addressing
Penjelasan :
·      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

4.    Desain Set Intruksi
Desain set instruksi merupakan masalah yang sangat komplek yang melibatkan banyak aspek, diantaranya adalah:
§  Kelengkapan set instruksi
§  Ortogonalitas (sifat independensi instruksi)
§  Kompatibilitas: Source Code Compatibility dan Object Code Compatibility
§  Selain ketiga aspek tersebut juga melibatkan hal-hal sebagai berikut:
§  Operasi Repertoire: Berapa banyak dan operasi apa saja yang disediakan dan berapa sulit operasinya.
§  Data Types: Tipe/jenis data yang dapat olah Instruction Format (panjangnya, banyaknya alamat, dsb)
§  Register: Banyaknya register yang dapat digunakan
§  Addresing: Mode pengalamatan untuk operand

DaftarPustaka

Jumat, 29 September 2017

Organisasi Komputer Dasar


1.    Organisasi Komputer
Organisasi Komputer adalah bagian yang terkait erat dengan unit–unit operasional dan interkoneksi antar komponen penyusun sistem komputer dalam merealisasikan aspek arsitekturalnya. Contoh aspek organisasional adalah teknologi hardware, perangkat antarmuka, teknologi memori, sistem memori, dan sinyal–sinyal kontrol.
Perbedaan secara umum:
Organisasi Komputer
§  Bagian yang terkait erat dengan unit–unit operasional
§  Contoh: teknologi hardware, perangkat antarmuka, teknologi memori, sistem memori, dan sinyal–sinyal kontrol.
Arsitektur Komputer
§  Atribut–atribut sistem komputer yang terkait dengan seorang programmer
§  Contoh: set instruksi, aritmatika yang digunakan, teknik pengalamatan, mekanisme I/O.
Sebuah komputer moderen/digital dengan program yang tersimpan di dalamnya merupakan sebuah system yang memanipulasi dan memproses informasi menurut kumpulan instruksi yang diberikan. Sistem tersebut dirancang dari modul-modul hardware seperti :
1.      Register
2.      Elemen aritmatika dan logika
3.      Unit pengendali
4.      Unit memori
5.      Unit masukan/keluaran (I/O)
Komputer dapat dibagi menjadi 3 bagian utama, yaitu :
1.      Unit pengolahan pusat (CPU)
2.      Unit masukan/keluaran (I/O)
3.      Unit memori
Organisasi dasar dari sebuah komputer dapat ditunjukan pada blok diagaram pada gambar di bawah ini :



Gambar 2.1  Blok Diagram

CPU mengendalikan urutan dari semua pertukaran informasi dalam komputer dan dengan dunia luar melalui unit I/O. Sedangkan unit memori terdiri dari sejumlah besar lokasi yang menyimpan program dan data yang sedang aktif digunakan CPU. Ketiga unit tersebut dihubungkan dengan berbagai macam bus.

2.    Inter Koneksi Antar Komponen
Bus adalah sekelompok kawat atau sebuah jalur fisik yang berfungsi menghubungkan register-register dengan unit-unit fungsional yang berhubungan dengan tiap-tiap modul. Informasi saling dipertukarkan di antara modul dengan melalui bus. Berdasarkan itu bus mempunyai 3 macam dengan pemrosesan dengan sesuai pada kinerjanya masing-masing:
·      Bus data
Adalah jalur-jalur perpindahan data dalam sistem komputer. Sifatnya dua arah, artinya CPU dapat membaca dan menirma data melalui data bus ini.
·      Bus Alamat
Digunakan untuk menandakan lokasi sumber ataupun tujuan pada proses transfer data. Pada jalur ini, CPU akan mengirimkan alamat memori yang akan ditulis atau dibaca. Bus alamat biasanya terdiri atas 16, 20, 24, atau 32 jalur paralel.
·      Bus pengendali
Bus pengendali digunakan untuk mengontrol penggunaan serta akses ke Bus data dan Bus alamat. Terdiri atas 4 sampai 10 jalur paralel.

Daftar Pustaka:
Yulisdin Mukhlis, Organisasi & Arsitektur Komputer, PDF 28 september 2017 06.30

Evolusi Arsitektur Komputer


1.    Pengertian Komputer
Komputer adalah alat yang dipakai untuk mengolah data menurut perintah yang telah di rumuskan. Kata komputer semula dipergunakan untuk menggambarkan orang yang perkerjaannya melakukan perhitungan aritmatika, dengan atau tanpa alat bantu, tetapi arti kata ini kemudian dipindahkan kepada mesin itu sendiri. Asal mulanya, pengolahan informasi hampir eksklusif berhubungan dengan masalah aritmatika, tetapi komputer modern dipakai untuk banyak tugas yang tidak berhubungan dengan matematika. Secara luas, Komputer dapat didefinisikan sebagai suatu peralatan elektronik yang terdiri dari beberapa komponen, yang dapat bekerja sama antara komponen satu dengan yang lain untuk menghasilkan suatu informasi berdasarkan program dan data yang ada.

2.    Fungsi Komputer
Pada prinsipnya terdapat empat buah fungsi operasi, yaitu :
·         Fungsi Operasi Pengolahan Data
·         Fungsi Operasi Penyimpanan Data
·         Fungsi Operasi Pemindahan Data
·         Fungsi Operasi Kontrol

3.    Arsitektur Komputer
Arsitektur komputer mempelajari atribut-atribut sistem komputer yang terkait dengan intruksi dan memiliki dampak langsung pada eksekusi logis sebuah program, contoh : set instruksi, jumlah bit yang digunakan untuk merepresentasikan bermacam-macam jenis data (misal bilangan, karakter), aritmatika yang digunakan, teknik pengalamatan, mekanisme I/O. Arsitektur komputer dapat bertahan bertahun-tahun tapi organisasi komputer dapat berubah sesuai dengan perkembangan teknologi. Pabrik komputer memproduksi sekelompok model komputer, yang memiliki arsitektur sama tapi berbeda dari segi organisasinya yang mengakibatkan harga dan karakteristik unjuk kerja yang berbeda.
Sementara evolusi arsitektur komputer  dapat dikategorikan sebagai ilmu dan sekaligus seni mengenai cara interkoneksi komponen-komponen perangkat keras untuk dapat menciptakan sebuah komputer yang memenuhi kebutuhan fungsional, kinerja, dan target biayanya. Dalam bidang teknik komputer, arsitektur komputer adalah konsep perencanaan dan struktur pengoperasian dasar dari suatu sistem komputer. Arsitektur komputer ini merupakan rencana cetak-biru dan deskripsi fungsional dari kebutuhan bagian perangkat keras yang didesain (kecepatan proses dan sistem interkoneksinya). Dalam hal ini, implementasi perencanaan dari masing–masing bagian akan lebih difokuskan terutama, mengenai bagaimana CPU akan bekerja, dan mengenai cara pengaksesan data dan alamat dari dan ke memori cache, RAM, ROM, cakram keras, dll).
Di antara demikian banyak pemahaman tentang arsitektur, arsitektur dikenal juga sebagai suatu tradisi yang berkembang. Dari waktu ke waktu wajah arsitektur selalu mengalami perubahan. Hal-hal yang mempengaruhi perkembangan dan pengembangan arsitektur tidak hanya berupa keadaan eksternal, tetapi juga keadaan internal. Disini kita membahas mengenai evolusi arsitektur pada komputer. Arsitektur dari komputer sendiri merupakan suatu susunan atau rancangan dari komputer tersebut sehingga membentuk suatu kesatuan yang dinamakan komputer. Komputer sendiri berevolusi dengan cepat mulai dari generasi pertama hingga sekarang. Evolusi sendiri didasarkan pada fungsi atau kegunaanya dalam kehidupan. Evolusi pada komputer sendiri ada karena keinginan atau hal yang dibutuhkan manusia itu sendiri. Sekarang ini komputer sudah dapat melakaukan perintah yang sulit sekalipun tidak seperti dulu yang hanya bisa melakukan yang sederhana saja. Itulah yang dinamakan evolusi arsitektur yaitu perubahan bentuk juga fungsi dan kemampuannya.

4.    Struktur Dasar Komputer
Komputer adalah sebuah sistem yang berinteraksi dengan cara tertentu dengan dunia luar. Interaksi dengan dunia luar dilakukan melalui perangkat peripheral dan saluran komunikasi. Suatu sistem struktur dasar komputer terdiri dari lima unit struktur dasar, yaitu:
·         Unit Masukan (Input Unit)
Berfungsi untuk menerima masukan (input) kemudian membacanya dan diteruskan ke Memori/penyimpanan. Dalam hubungan ini dikenal istilah peralatan masukan (input device) yaitu alat penerima dan pembaca masukan serta media masukan yaitu perantaranya.
·         Unit Kontrol (Control Unit)
Berfungsi untuk melaksanakan tugas pengawasan dan pengendalian seluruh sistem komputer. berfungsi seperti pengatur rumah tangga komputer, memutuskan urutan operasi untuk seluruh sistem, membangkitkan dan mengendalikan sinyal-sinyal kontrol untuk menyesuaikan operasi-operasi dan arus data dari bus alamat (address bus) dan bus data (data bus), serta mengendalikan dan menafsirkan sinyal-sinyal kontrol pada bus kontrol (control bus) dari sistem komputer.
·         Unit Logika dan Aritmatika (Arithmetic & Logical Unit / ALU)
Berfungsi untuk melaksanakan pekerjaan perhitungan atau aritmatika & logika seperti menambah, mengurangi, mengalikan, membagi dan memangkatkan. Selain itu juga melaksanakan pekerjaan seperti pemindahan data, penyatuan data, pemilihan data, membandingkan data, dll, sehingga ALU merupakan bagian inti dari suatu sistem komputer. Pada beberapa sistem komputer untuk memperingan dan membantu tugas ALU dari CPU ini diberi suatu peralatan tambahan yang disebut coprocessor sehingga khususnya proses perhitungan serta pelaksanaan pekerjaan pada umumnya menjadi lebih cepat.
·         Unit Memori (Register)
Berfungsi untuk menampung data/program yang diterima dari unit masukan sebelum diolah oleh CPU dan juga menerima data setelah diolah oleh CPU yang selanjutnya diteruskan ke unit keluaran. Pada suatu sistem komputer terdapat dua macam memori, yang penamaannya tergantung pada apakah alat tersebut hanya dapat membaca atau dapat membaca dan menulis padanya. Bagian memori yang hanya dapat membaca tanpa bisa menulis padanya disebut ROM (Read Only Memory), sedangkan bagian memori yang dapat melaksanakan membaca dan menulis disebut RAM  (Random Access Memory).
·         Unit keluaran (Output Unit)
Berfungsi untuk menerima hasil pengolahan data dari CPU melalui memori. Seperti halnya pada unit masukan maka pada unit keluaran dikenal juga istilah peralatan keluaran (Output device) dan media keluaran (Output media).

Control Unit dan ALU membentuk suatu unit tersendiri yang disebut Central Processing Unit (CPU). Hubungan antar masing-masing unit yang membentuk suatu sistem komputer dapat dilihat pada gambar berikut:



Gambar 1.1 Struktur Dasar Komputer

 

5.    Sub Kategori Arsitektur Komputer

Terdapat 3 sub-kategori dari arsitektur komputer, yaitu diantaranya :
·         Set intruksi (ISA).
·         Arsitektur mikro dari ISA, dan juga
·         Sistem desain dari semua atau seluruh komponen dalam perangkat keras (hardware) komputer ini.

6.    Bagian Utama Arsitektur Komputer

Pada arsitektur komputer terdapat 2 bagian utama, yaitu diantaranya :
·         Instructure Set Architecture, adalah spesifikasi yang menentukan bagaimana programmer bahasa mesin berinteraksi dengan komputer.
·         Hardware System Architacture yaitu subsistem hardware (perangkat keras) dasar yaitu CPU, Memori, serta OS.

7.    Cara Melakukan Perubahan Pada Arsitektur Komputer

Cara-cara untuk melakukan perubahan pada arsitektur komputer, yaitu diantaranya :
·      Membangun array prosesor.
·      Menerapkan proses pipelining.
·      Membangun komputer multiprosesor.
·      Membangun komputer dengan arsitektur yang lain.
8.    Sejarah Singkat Arsitektur Komputer
Dalam berkembangnya era modren, evolusi komputer dari generasi ke generasi jauh berbeda denga mengedepankan teknologi yang bisa membantu dan memudahkan manusia. Berikut salah satu perbedaan komputer dari generai ke generasinya secara singkat:
1940 – 1956           : Relay dan Tabung Vakum
1956 – 1963           : Dioda dan Transistor
1964 – 1971           : Integrated Circuit (SSI/MSI)
1971 – Sekarang     : Mikroprosesor (LSI/VLSI)
Sekarang – Masa depan : Kecerdasan buatan yang akan terus dikembangkan hingga saat ini

Daftar Pustaka:
Maryanto. 2012. Perkembangan Perangkat Komputer & Interconnection Network, Teknik Informatika, UNINDRA, Jakarta.