Sabtu, 12 Desember 2015

ARSITEKTUR INSTRUKSI DAN CPU (CENTRAL PROCESSING UNIT)



ARSITEKTUR INSTRUKSI
Set Instruksi (bahasa Inggris: Instruction Set, atau 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).
ISA merupakan sebuah spesifikasi dari kumpulan semua kode-kode biner (opcode) yang diimplementasikan dalam bentuk aslinya (native form) dalam sebuah desain prosesor tertentu. Kumpulan opcode tersebut, umumnya disebut sebagai bahasa mesin (machine language) untuk ISA yang bersangkutan. ISA yang populer digunakan adalah set instruksi untuk chip Intel x86, IA-64, IBM PowerPC, Motorola 68000, Sun SPARC, DEC Alpha, dan lain-lain.

Karakteristik dan Fungsi Set Instruksi
Operasi dari CPU ditentukan oleh instruksiinstruksi yang dilaksanakan atau dijalankannya. Instruksi ini sering disebut sebagai instruksi mesin (mechine instructions) atau instruksi komputer (computer instructions). Kumpulan dari instruksi-instruksi yang  berbeda yang dapat dijalankan oleh CPU  disebut set Instruksi (Instruction Set).

Jenis-jenis Set Instruksi
Data Processing/Pengolahan Data: instruksi-instruksi aritmetika dan logika.
Data Storage/Penyimpanan Data: instruksi-instruksi memori.
Data Movement/Perpindahan Data: instruksi I/O.
Control/Kontrol: instruksi pemeriksaan dan percabangan.
Instruksi aritmetika (arithmetic instruction) memiliki kemampuan untuk mengolah data numeric. Sedangkan instruksi logika (logic instruction) beroperasi pada bit-bit word sebagai bit, bukan sebagai bilangan. Operasi-operasi tersebut dilakukan terutama dilakukan untuk data di register CPU. Instruksi-inslruksi memori diperlukan untuk memindah data yang terdapat di memori dan register.
Instruksi-instruksi I/O diperlukan untuk memindahkan program dan data kedalam memori dan mengembalikan hasil komputasi kepada pengguna. Instruksi-instruksi kontrol digunakan untuk memeriksa nilai data, status komputasi dan mencabangkan ke set instruksi lain.

Teknik Pengalamatan
Metode pengalamatan merupakan aspek dari set instruksi arsitekturdi sebagian unit pengolah pusat(CPU) desain yang didefinisikan dalam set instruksi arsitektur dan menentukan bagaimana bahasa mesinpetunjuk dalam arsitektur untuk mengidentifikasi operan dari setiap instruksi.. Sebuah mode pengalamatan menentukan bagaimana menghitung alamat memori yang efektif dari operand dengan menggunakan informasi yang diadakan di registerdan / atau konstanta yang terkandung dalam instruksi mesin atau di tempat lain.

Jumlah Alamat
Salah satu cara tradisional untuk menggambarkan arsitektur prosessor adalah dengan melihat jumlah alamat yang terkandung dalam setiap instruksinya.
Jumlah alamat maksimum yang mungkin diperlukan dalam sebuah instruksi :
a) Empat Alamat ( dua operand, satu hasil, satu untuk alamat instruksi berikutnya)
b) Tiga Alamat (dua operand, satu hasil)
c) Dua Alamat (satu operand merangkap hasil, satunya lagi operand)
d) Satu Alamat (menggunakan accumulator untuk menyimpan operand dan hasilnya)
Macam-macam instruksi menurut jumlah operasi yang dispesifikasikan :
a) – Address Instruction
b) 1 – Addreess Instruction
c) N – Address Instruction
d) M + N – Address Instruction
Macam-macam instruksi menurut sifat akses terhadap memori atau register
a) Memori To Register Instruction
b) Memori To Memori Instruction
c)  Register To Register Instruction
Jenis-jenis Metode Pengalamatan
a) Direct Absolute (pengalamatan langsung)
Hal ini membutuhkan ruang dalam sebuah instruksi untuk cukup alamat yang besar.. Hal ini sering tersedia di mesin CISC yang memiliki panjang instruksi variabel, seperti x86.. Beberapa mesin RISC memiliki Literal khusus Atas instruksi Load yang menempatkan sebuah 16-bit konstan di atas setengah dari register.. Sebuah literal instruksi ATAUdapat digunakan untuk menyisipkan 16-bit konstan di bagian bawah mendaftar itu, sehingga alamat 32-bit kemudian dapat digunakan melalui mode pengalamatan tidak langsung mendaftar, yang itu sendiri disediakan sebagai “base- plus-offset “dengan offset 0.
b) Immidiate
Bentuk pengalamatan ini yang paling sederhana. Operand benar-benar ada dalam instruksi atau bagian dari instruksi = operand sama dengan field alamat. Umumnya bilangan akan disimpan dalam bentuk kompleent dua. Bit paling kiri sebagai bit tanda.
Ketika operand dimuatkan ke dalam register data, bit tanda digeser ke kiri hingga maksimum word data Contoh: ADD 5 ; tambahkan 5 pada akumulator.
c) Indirect 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.
d) Indirect- memori
Salah satu mode pengalamatan yang disebutkan dalam artikel ini bisa memiliki sedikit tambahan untuk menunjukkan pengalamatan tidak langsung, yaitu alamat dihitung menggunakan modus beberapa sebenarnya alamat dari suatu lokasi (biasanya lengkap kata) yang berisi alamat efektif sebenarnya. Pengalamatan tidak langsung dapat digunakan untuk kode atau data.. Hal ini dapat membuat pelaksanaan pointer ataureferensi atau menanganilebih mudah, dan juga dapat membuat lebih mudah untuk memanggil subrutin yang tidak dinyatakan dialamati. Pengalamatan tidak langsung tidak membawa hukuman performansi karena akses memori tambahan terlibat.
Beberapa awal minicomputer (misalnya Desember PDP-8, Data General Nova) hanya memiliki beberapa register dan hanya rentang menangani terbatas (8 bit).Oleh karena itu penggunaan memori tidak langsung menangani hampir satu-satunya cara merujuk ke jumlah yang signifikan dari memori.
e) Register
Pada beberapa komputer, register dianggap sebagai menduduki 16 pertama 8 atau kata-kata dari memori (misalnya ICL 1900, DEC PDP-10). Ini berarti bahwa tidak perlu bagi yang terpisah “Tambahkan register untuk mendaftarkan” instruksi – Anda hanya bisa menggunakan “menambahkan memori untuk mendaftar” instruksi. Dalam kasus model awal PDP-10, yang tidak memiliki memori cache, Anda benar-benar dapat memuat sebuah loop dalam ketat ke dalam beberapa kata pertama dari memori (register cepat sebenarnya), dan berjalan lebih cepat daripada di memori inti magnetik. Kemudian model dari DEC PDP-11seri memetakan register ke alamat di output / area input, tetapi ini ditujukan untuk memungkinkan diagnostik terpencil. register 16-bit dipetakan ke alamat berturut-turut byte 8-bit.


f) Index
Indexing adalah 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-program iterative
g) Base index
Base index, register yang direferensi berisi sebuah alamat memori, dan field alamat berisiperpindahan dari alamat itu Referensi register dapat eksplisit maupun implicit. Memanfaatkan konsep lokalitas memori.
h) Base index plus offset
Offset biasanya nilai 16-bit masuk (walaupun 80386 diperluas ke 32 bit). Jika offset adalah nol, ini menjadi contoh dari register pengalamatan tidak langsung, alamat efektif hanya nilai dalam register dasar. Pada mesin RISC banyak, register 0 adalah tetap sebesar nilai nol. Jika register 0 digunakan sebagai register dasar, ini menjadi sebuah contoh dari pengalamatan mutlak. Namun, hanya sebagian kecil dari memori dapat diakses (64 kilobyte, jika offset adalah 16 bit). 16-bit offset mungkin tampak sangat kecil sehubungan dengan ukuran memori komputer saat ini (yang mengapa 80386 diperluas ke 32-bit). Ini bisa lebih buruk: IBM System/360 mainframe hanya memiliki 12-bit unsigned offset. Namun, prinsip berlaku: selama rentang waktu yang singkat, sebagian besar item data program ingin mengakses cukup dekat satu sama lain. Mode pengalamatan ini terkait erat dengan mode pengalamatan terindeks mutlak.
i) Relatif
Pengalamatan Relative, 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.



Desain Set Instruksi
Desain set instruksi merupakan masalah yang sangat komplek yang melibatkan banyak aspek, diantaranya adalah:
1.                  Kelengkapan set instruksi
2.                  Ortogonalitas (sifat independensi instruksi)
3.                  Kompatibilitas : Source code compatibility dan Object code Compatibility
4.                  Operation Repertoire: Berapa banyak dan operasi apa saja yang disediakan, dan berapa sulit operasinya .
5.                  Data Types: tipe/jenis data yang dapat olah Instruction Format: panjangnya, banyaknya alamat, dsb.
6.                  Register: Banyaknya register yang dapat digunakan 4.Addressing: Mode pengalamatan untuk operand.
Format Set Instruksi
Suatu instruksi terdiri dari beberapa field yang sesuai dengan elemen dalam instruksi tersebut. Layout dari suatu instruksi sering disebut sebagai Format Instruksi (Instruction Format). Jenis-Jenis Operand antara lain :
1.               Addresses (akan dibahas pada addressing modes)
2.               Numbers : – Integer or fixed point – Floating point – Decimal (BCD)
3.               Characters : – ASCII – EBCDIC
4.               Logical Data : Bila data berbentuk binary: 0 dan 1
5.               Transfer Data
 a) Menetapkan lokasi operand sumber dan operand tujuan.
 b) Lokasi-lokasi tersebut dapat berupa memori, register atau bagian paling atas daripada stack.
 c) Menetapkan panjang data yang dipindahkan.
 d) Menetapkan mode pengalamatan.
 e) Tindakan CPU untuk melakukan Transfer Data adalah :
Memindahkan data dari satu lokasi ke lokasi lain.
Apabila memori dilibatkan :
o   Menetapkan alamat memori.
o   Menjalankan transformasi alamat memori virtual ke alamat memori aktual.
o   Mengawali pembacaan / penulisan memori
f) Operasi set instruksi untuk Transfer Data :
MOVE : memindahkan word atau blok dari sumber ke tujuan.
STORE : memindahkan word dari prosesor ke memori.
LOAD : memindahkan word dari memori ke prosesor.
EXCHANGE : menukar isi sumber ke tujuan.
CLEAR / RESET : memindahkan word 0 ke tujuan.
SET : memindahkan word 1 ke tujuan.
PUSH : memindahkan word dari sumber ke bagian paling atas stack.
POP : memindahkan word dari bagian paling atas sumber
Aritmatika dan Logika
a) Tindakan CPU untuk melakukan operasi Aritmatika Dan Logika :
Transfer data sebelum atau sesudah.
Melakukan fungsi dalam ALU.
Menset kode-kode kondisi dan flag.
b) Operasi set instruksi untuk Aritmatika :
ADD : penjumlahan
SUBTRACT : pengurangan
MULTIPLY : perkalian
DIVIDE : pembagian
c) Operasi set instruksi untuk operasi Logika :
AND, OR, NOT, EXOR
COMPARE : melakukan perbandingan logika
TEST : menguji kondisi tertentu
SHIFT : operand menggeser ke kiri atau kanan menyebabkan konstanta pada ujung bit
ROTATE : operand menggeser ke kiri atau ke kanan dengan ujung yang terjalin
Konversi
a) Tindakan CPU sama dengan Aritmatika dan Logika.
b) Instruksi yang mengubah format instruksi yang beroperasi terhadap format data.
c) Misalnya pengubahan bilangan desimal menjadi bilangan biner.
d) Operasi set instruksi untuk Konversi :
TRANSLATE : menterjemahkan nilai-nilai dalam suatu bagian memori berdasrkan tabel korespodensi.
CONVERT : mengkonversi isi suatu word dari suatu bentuk ke bentuk lainnya.
Input / Ouput
a) Tindakan CPU untuk melakukan INPUT /OUTPUT :
Apabila memory mapped I/O maka menentukan alamat memory mapped.
Mengawali perintah ke modul I/O
b) Operasi set instruksi Input / Ouput :
INPUT : memindahkan data dari pernagkat I/O tertentu ke tujuan.
OUTPUT : memindahkan data dari sumber tertentu ke perangkat I/O.
START I/O : memindahkan instruksi ke prosesor I/O untuk mengawali operasi I/O.
TEST I/O : memindahkan informasi dari sistem I/O ke tujuan TRANSFER CONTROL.
Transfer Control
a) Tindakan CPU untuk transfer control :
Mengupdate program counter untuk subrutin , call / return.
b) Operasi set instruksi untuk transfer control :
JUMP (cabang) : pemindahan tidak bersyarat dan memuat PC dengan alamat tertentu.
JUMP BERSYARAT : menguji persyaratan tertentu dan memuat PC dengan alamat tertentu atau tidak melakukan apa tergantung dari persyaratan.
JUMP SUBRUTIN : melompat ke alamat tertentu.
RETURN : mengganti isi PC dan register lainnya yang berasal dari lokasi tertentu.
EXECUTE : mengambil operand dari lokasi tertentu dan mengeksekusi sebagai instruksi.
SKIP : menambah PC sehingga melompati instruksi berikutnya.
SKIP BERSYARAT : melompat atau tidak melakukan apa-apa berdasarkan pada persyaratan.
HALT : menghentikan eksekusi program.
WAIT (HOLD) : melanjutkan eksekusi pada saat persyaratan dipenuhi.
NO OPERATION : tidak ada operasi yang dilakukan.
Control System
a)  Hanya dapat dieksekusi ketika prosesor berada dalam keadaan khusus tertentu atau sedang mengeksekusi suatu program yang berada dalam area khusus, biasanya digunakan dalam sistem operasi.
b) Contoh : membaca atau mengubah register kontrol.



CENTRAL PROCESSING UNIT
SISTEM BUS
Inti sebuah Motherboard (chipset) adalah beberapa bus yang menghantarkan sinyal antar masing – masing komponen. Bus dapat disebut sebagai lintasan umum/bersama yang digunakan untuk transfer data. Untuk komunikasi data, jalur ini dapat juga untuk komunikasi dua buah komputer ataulebih. Prosesor, memori utama, dan perangkat I/O dapat dinterkoneksikan dengan menggunakan bus bersama yang fungsi utamanya adalah menyediakan jalur komonikasi untuk transfer data. Bus tersebut menyediakan jalur yang diperlukan untuk mendukung interrupt dan arbitrasi. Protokol bus adalah setaturan yang mengatur kelakuan berbagai perangkat yang terhubung ke busya itu kapan harus meletakkan informasi je dalam bus, menyatakan sinyal kontro,dan lain sebagainya.Jalur bus yang digunakan untuk mentransfer data dapat dikelompokkanmenjadi tiga tipe, yaitu jalur data, alamat, dan kontrol. Sinyal kontrol menetapkan apakah operasi baca tulis yang dilakukan. Biasanya digunakan jalurR/W tunggal. Jalur tersebut menetapkan Read pada saat diset 1 dan Write pada saat diset 0. apabila dimungkinkan menggunakan beberapa ukuran operand seperti byte, word, atau long word, maka ukuran data yang diminta juga di indikasikan.Sinyal kontrol bus  juga membawa informasi timing. Sinyal tersebut menetapkan waktu kapan prosesor dan perangkat I/O dapat meletakkan bus atau menerima data dari bus. Skema telah ditemukan untuk transfer data melalui bus dapat dikalsifikasikan sebagai skema synchronous dan asynchronous.Dalam setiap operasi transfer data, suatu perangkat memainkan peranan sebagai master, ini adalah perangkat yang menganisiasi transfer data dengan mengeluarkan perintah baca atau tulis.Berikut ini beberapa bus dalam komputer :
BUS ARBITRASI
Bus arbitrasi adalah proses memilih perangkat berikutnya sebagai busmaster (perangkat yang diijinkan untuk menganisiasi data pada bus setiap saat)dan mentransfer bus mastership kepada perangkat tersebut, bus arbiter dapatberupa prosesor atau unit terpisah yang terhubung ke bus. Terdapat duapendekatan yang dapat diterapkan untuk bus arbitrasi. Pertama, CentralizedArbitration merupakan suatu bus arbital tunggal melakukan arbitration yang diperlukan. Kedua, distibuted arbitration yakni semua perangkat berpartisipasidalam pemilihan bus master berikutnya. Distributed arbitration berarti semuaperangkat yang menunggu untuk menggunakan bus tersebut memiliki tanggung jawab setara dalam melaksanakan proses arbitrasi.
BUS PROSESOR
Bus Proesor adalah bus yang diidentifikasikan oleh sinyal pada sinyal chipprosesor tersebut. Perangkat yang memerlukan koneksi dengan cepat dengan kecepatan sangat tinggi ke prosesor, seperti main memory dapat dihubungkan langsung ke bus ini. Motherboard biasanya menyediakan bus lain yang lebih banyak perangkat. Dua bus dapat diinterkoneksikan oleh satu sirkuit yaitu bridge yang mentranslasikan sinyal dan protokol satu bus menjadi lainnya.Struktur bus terikat erat dengan arsitektur prosesor, serta juga tergantung pada karakteristik chip prosesor. IBM mengembangkan suatu bus yang disebut ISA (Industry Standart Architecture) untuk PC yang pada saat itu dikenal sebagaiPC AT. Popularitas tersebut mendorong produsen lain untuk membuat antarmuka ISA-compatible untuk perangkat I/O sehingga menjadikan ISA standar defact.Beberapa standar telah berkembang melui usaha kerja sama industrial,bahkan diantara perusahaan pesaing dikarenakan keinginan bersama dalammemilki produk yang kompatibel. Pada beberapa kasus organisai seperti IEEE(Institute of Electrical and Electrinic Enginers), ANSI (American National StandartInstitute), atau badan internasional seperti ISO (Internasional StandardsOrganization) telah menyetujui standar tersebut dan memberinya status resmi. Tiga standar bus yang digunakan secara luas yaitu PCI (PeripheralComputer Interconnect), SCSI (Small Compter System Interface), dan USB(Universal Serial Bus)

ARITHMATIC LOGIC UNIT (ALU)
merupakan bagian computer yang berfungsi membentuk operasi-operasi aritmatika dan logic terhadap data. Semua elemen lain system computer, control Hand Out Arsitektur Komputer, TI 1,2,3,4,Malam 5unit, register, memori, I/O berfungsi terutama untuk membawa data ke ALU untuk selanjutnya diproses dan kemudian mengambil kembali hasilnya.ALU dan seluruh komponen elektronik dalam computer didasarkan pada penggunaan perangkat logic digital sederhana yang dapat menyimpan digit-digit biner dan membentuk operasi logic Boolean sederhana. Data diberikan ke ALU dalam register, dan hasil operasinya disimpan didalam register. Register-register ini lokasi penyimpanan sementara di CPU yang dihubungkan ke ALU dengan menggunakan lintasan sinyal. ALU juga akan menyetel flag sebagai hasil dari suatu operasi. Misalnya overflow flag distel 1 bila hasil komputasi melampaui panjang register tempat flag disimpan. Control Unit menghasilkan sinyal yang akan mengontrol operasi ALU, dan pemindahan data ke ALU atau dari ALU. Semua operasi perhitungan dan operasi logic dilakukan di dalam ALU.
Tugas ALU sendiri antara lain :
1. Bertugas membentuk fungsi – fungsi pengolahan data komputer.
2. ALU sering disebut mesin bahasa (machine language) karena bagian ini mengerjakan instruksi – instruksi bahasa mesin yang diberikan padanya. Seperti istilahnya
3. ALU terdiri dari dua bagian, yaitu unit arithmetika dan unit logika boolean, yang masing – masing memiliki spesifikasi tugas tersendiri

CENTRAL LOGIC UNIT
Control Unit
adalah salah satu bagian dari CPU yang bertugas untuk memberikan arahan/kendali/ kontrol terhadap operasi yang dilakukan di bagian ALU (Arithmetic Logical Unit) di dalam CPU tersebut.
Tugas control unit antara lain :
1. Bertugas mengontrol operasi CPU dan secara keselurahan mengontrol komputer sehingga terjadi sinkronisasi kerja antar komponen dalam menjalankan fungsi – fungsi operasinya.
2. Termasuk dalam tanggung jawab unit kontrol adalah mengambil instruksi – instruksi dari memori utama dan menentukan jenis instruksi tersebut Output dari CU ini akan mengatur aktivitas dari bagian lainnya dari perangkat CPU tersebut.
Macam macam control unit :
1. Single-Cycle CU
Proses di CUl ini hanya terjadi dalam satu clock cycle, artinya setiap instruksi ada pada satu cycle,  maka dari itu tidak memerlukan state. Dengan demikian fungsi boolean masing-masing control line hanya  merupakan fungsi dari opcode saja. Clock cycle harus mempunyai panjang yang sama untuk setiap jenis instruksi.  Ada dua bagian pada unit kontrol ini, yaitu proses men-decode opcode untuk mengelompokkannya menjadi 4 macam  instruksi (yaitu di gerbang AND), dan pemberian sinyal kontrol berdasarkan jenis instruksinya (yaitu gerbang OR).  Keempat jenis instruksi adalah “R-format” (berhubungan dengan register), “lw” (membaca memori), “sw” (menulis ke memori), dan “beq” (branching). Sinyal kontrol yang dihasilkan bergantung pada jenis instruksinya.  Misalnya jika melibatkan memori ”R-format” atau ”lw” maka akan sinyal ”Regwrite” akan aktif.  Hal lain jika melibatkan memori “lw” atau “sw” maka akan diberi sinyal kontrol ke ALU, yaitu “ALUSrc”.  Desain single-cycle ini lebih dapat bekerja dengan baik dan benar tetapi cycle ini tidak efisien.
2. Multi-Cycle CU
Berbeda dengan unit kontrol yang single-cycle, unit kontrol yang multi-cycle lebih memiliki banyak fungsi.  Dengan memperhatikan state dan opcode, fungsi boolean dari masing-masing output control line dapat ditentukan.  Masing-masingnya akan menjadi fungsi dari 10 buah input logic. Jadi akan terdapat banyak fungsi boolean,  dan masing-masingnya tidak sederhana. Pada cycle ini, sinyal kontrol tidak lagi ditentukan dengan melihat  pada bit-bit instruksinya. Bit-bit opcode memberitahukan operasi apa yang selanjutnya akan dijalankan CPU;  bukan instruksi cycle selanjutnya.
SET REGISTER
Register prosesor, dalam arsitektur komputer, adalah sejumlah kecil memori komputer yang bekerja  dengan kecepatan sangat tinggi yang digunakan untuk melakukan eksekusi terhadap program-program komputer  dengan menyediakan akses yang cepat terhadap nilai-nilai yang umum digunakan. Umumnya nilai-nilai yang umum  digunakan adalah nilai yang sedang dieksekusi dalam waktu tertentu.
Register prosesor berdiri pada tingkat tertinggi dalam hierarki memori: ini berarti bahwa kecepatannya adalah  yang paling cepat; kapasitasnya adalah paling kecil; dan harga tiap bitnya adalah paling tinggi.  Register juga digunakan sebagai cara yang paling cepat dalam sistem komputer untuk melakukan manipulasi data. Register umumnya diukur dengan satuan bit yang dapat ditampung olehnya, seperti "register 8-bit", "register 16-bit", "register 32-bit", atau "register 64-bit" dan lain-lain. Istilah register saat ini dapat merujuk kepada kumpulan register yang dapat diindeks secara langsung untuk melakukan input/output terhadap sebuah instruksi yang didefinisikan oleh set instruksi. untuk istilah ini, digunakanlah kata "Register Arsitektur". Sebagai contoh set instruksi Intel x86 mendefinisikan sekumpulan delapan buah register dengan ukuran 32-bit, tapi CPU yang mengimplementasikan set instruksi x86 dapat mengandung lebih dari delapan register 32-bit.
Jenis-jenis register antara lain :
    Register data, yang digunakan untuk menyimpan angka-angka dalam bilangan bulat (integer).
    Register alamat, yang digunakan untuk menyimpan alamat-alamat memori dan juga untuk mengakses memori.
    Register general purpose, yang dapat digunakan untuk menyimpan angka dan alamat secara sekaligus.
    Register floating-point, yang digunakan untuk menyimpan angka-angka bilangan titik mengambang (floating-point).
    Register konstanta (constant register), yang digunakan untuk menyimpan angka-angka tetap yang hanya dapat dibaca (bersifat read-only), semacam phi, null, true, false dan lainnya.
    Register vektor, yang digunakan untuk menyimpan hasil pemrosesan vektor yang dilakukan oleh prosesor SIMD.
    Register special purpose yang dapat digunakan untuk menyimpan data internal prosesor, seperti halnya instruction pointer, stack pointer, dan status register.
    Register yang spesifik terhadap model mesin (machine-specific register), dalam beberapa arsitektur tertentu, digunakan  untuk menyimpan data atau pengaturan yang berkaitan dengan prosesor itu sendiri. Karena arti dari setiap  register langsung dimasukkan ke dalam desain prosesor tertentu saja, mungkin register jenis ini tidak menjadistandar antara generasi prosesor.

CACHE MEMORY
    Cache berasal dari kata cash yakni sebuah tempat menyembunyikan atau tempat menyimpan sementara.  Sesuai definisi tersebut Cache Memory adalah tempat menyimpan data sementara. Cara ini dimaksudkan untuk meningkatkan  transfer data dengan menyimpan data yang pernah diakses pada cache tersebut, sehingga apabila ada data yang ingin diakses adalah data yang sama maka maka akses akan dapat dilakukan lebih cepat. Cache memori ini terletak antara register dan  memory utama sehingga pemrosesan data tidak langsung mengacu pada memori utama. Penggunaan cache ditujukan untuk meminimalisir terjadinya bottleneck dalam aliran data antara processor dan RAM.  Sedangkan dalam terminologi software, istilah ini merujuk pada tempat penyimpanan sementara untuk beberapa file yang sering  diakses (biasanya diterapkan dalam network).
    Jenis - Jenis Cache Memory
Cache umumnya terbagi menjadi beberapa jenis, seperti L1 cache, L2 cache dan L3 cache. Cache yang dibangun ke dalam CPU  itu sendiri disebut sebagai Level 1 (L1) cache. Cache yang berada dalam sebuah chip yang terpisah di sebelah CPU disebut  Level 2 (L2) cache. Beberapa CPU memiliki keduanya, L1 cache dan L2 built-in dan menugaskan chip terpisah sebagai cache  Level 3 (L3) cache. Cache yang dibangun dalam CPU lebih cepat daripada cache yang terpisah. Namun, cache terpisah masih  sekitar dua kali lebih cepat dari Random Access Memory (RAM). Cache lebih mahal daripada RAM tetapi motherboard dengan built-in cache sangat baik untuk memaksimalkan kinerja sistem.
    Fungsi dan Manfaat Cache Memory
Cache berfungsi sebagai tempat penyimpanan sementara untuk data atau instruksi yang diperlukan oleh processor. Secara gampangnya, cache berfungsi untuk mempercepat akses data pada komputer karena cache menyimpan data/informasi yang telah diakses oleh suatu buffer, sehingga meringankan kerja processor. Manfaat lain dari cache memory adalah bahwa CPU tidak harus menggunakan sistem bus motherboard untuk mentransfer data. Setiap kali data harus melewati bus sistem, kecepatan transfer data memperlambat kemampuan motherboard. CPU dapat memproses data lebih cepat dengan menghindari hambatan yang diciptakan oleh sistem bus.

VIRTUAL MEMORY
    Virtual Memori adalah sebuah sistem yang digunakan oleh sistem operasi untuk menggunakan sebagian dari Memori Sekunder yaitu Harddisk seolah-olah ia menggunakannya sebagai memori internal/utama (RAM) fisik yang terpasang di dalam sebuah sistem komputer. Sistem ini beroperasi dengan cara memindahkan beberapa kode yang tidak dibutuhkan ke sebuah berkas di dalam hard drive yang disebut dengan page file. Proses pemakaian Virtual memori di windows umumnya dapat dilihat di Task manager.

Sumber:
http://fachrulryper.blogspot.com/2012/11/arsitektur-set-instruksi-dan-cpu.html
http://siezwoyouye.blogspot.com/2012/10/arsitektur-set-instruksi.html
http://jovanangga.blogspot.com/2012/11/set-instruksi-dan-teknik-pengalamatan.html
http://okghiqowiy.blogspot.com/
http://ocw.gunadarma.ac.id/course/industrial-technology/program-of-electronics-engineering-study-2013-s1/arsitektur-komputer/arsitektur-set-instruksi
http://id.wikipedia.org/wiki/Unit_Kendali
http://id.wikipedia.org/wiki/Register
http://id.wikipedia.org/wiki/ALU
http://www.scribd.com/doc/34681874/2-Set-Instruksi
http://en.wikipedia.org/wiki/Arithmetic_logic_unit
http://id.wikipedia.org/wiki/Register_prosesor