Arsitektur dan fungsi cpu
-
Upload
hamzanwadi -
Category
Documents
-
view
0 -
download
0
Transcript of Arsitektur dan fungsi cpu
ARSITEKTUR DAN
FUNGSI CPU
OLEH:
Nama : Abdul Hayyi Muslim
Semester : II
NPM : 14610056
Jurusan/Prodi : Pendidikan Informatika
STKIP HAMZANWADI SELONG
PRODI PENDIDIKAN INFORMATIKA
2014
A. STRUKTUR DASAR CPU
1. Komponen Utama CPU
CPU merupakan komponen terpenting dari sistem komputer.
CPU adalah komponen pengolah data berdasarkan instruksi –
instruksi yang diberikan kepadanya.
Dalam mewujudkan fungsi dan tugasnya, CPU tersusun atas
beberapa komponen sebagai bagian dari struktur CPU,
seperti terlihat pada gambar 1.1 dan struktur detail
internal CPU terlihat pada gambar 1.2. CPU tersusun atas
beberapa komponen, yaitu :
Arithmetic and Logic Unit (ALU), bertugas membentuk fungsi –
fungsi pengolahan data komputer. ALU sering disebut mesin
bahasa (machine language) karena bagian ini mengerjakan
instruksi – instruksi bahasa mesin yang diberikan
padanya. Seperti istilahnya, ALU terdiri dari dua bagian,
yaitu unit arithmetika dan unit logika boolean, yang
masing – masing memiliki spesifikasi tugas tersendiri.
Control Unit, bertugas mengontrol operasi CPU dan secara
keselurahan mengontrol computer sehingga terjadi
sinkronisasi kerja antar komponen dalam menjalankan
fungsi – fungsi operasinya. Termasuk dalam tanggung jawab
unit kontrol adalah mengambil instruksi – instruksi dari
memori utama dan menentukan jenis instruksi tersebut.
Registers, adalah media penyimpan internal CPU yang
digunakan saat proses pengolahan data. Memori ini
bersifat sementara, biasanya digunakan untuk menyimpan
data saat diolah ataupun data untuk pengolahan
selanjutnya.
CPU Interconnections, adalah sistem koneksi dan bus yang
menghubungkan komponen internal CPU, yaitu ALU, unit
kontrol dan register – register dan juga dengan bus – bus
eksternal CPU yang menghubungkan dengan sistem lainnya,
seperti memori utama, piranti masukan/keluaran.
Struktur Detail Internal CPU
2. Fungsi CPU
CPU memiliki fungsi untuk menjalankan Program-
program yang disimpan dalam memori utama dengan cara
mengambil instruksi-instruksi, menguji instruksi tersebut
dan mengeksekusinya satu persatu sesuai alur perintah.
Pandangan paling sederhana proses eksekusi program
adalah dengan mengambil pengolahan instruksi atau sering
disebut juga dengan siklus instruksi.
Siklus Intruksi
Siklus intruksi memiliki sifat-sifat tertentu yaitu
sekali instruksi telah diambil, maka operand specifiernya
harus diidentifikasikan yang kemudian seluruh operand
input yang berada di dalam memori akan diambil, dan
proses ini mungkin memerlukan pengalamatan tak langsung.
Dalam siklus intruksi operand berbasis register tidak
perlu diambil, dan apabila opcode telah dieksekusi maka
proses yang sama akan diperlukan untuk menyimpan hasilnya
di dalam memori. Di dalam siklus intruksi terdapat
beberapa bagian yaitu :
Fetch, merupakan siklus pembacaan instruksi berikutnya
dari memori kedalam CPU. Dalam arti kata, fetch memiliki
arti mengambil, jadi fetch merupakan pengambilan
instruksi yang akan dieksekusi.
Execute, yaitu menginterpretasi opcode dan melakukan
operasi yang diindikasikan
Interrupt, yaitu apabila bagian ini diaktifkan dan
interrupt telah terjadi, simpan status proses saat itu
dan layani interrupsi.
Siklus tidak langsung, merupakan sebuah instruksi yang
melibatkan sebuah operand atau lebih di dalam memori,
yang masing-masing operand memerlukan akses memori.
Pengambilan alamat-alamat tak langsung dapat dianggap
sebagai sebuah subsiklus intruksi atau lebih.
Strategi Pipelining
Strategi pipelining merupakan proses pengambilan dan
pengeksekusian instruksi secara parallel. Pada strategi
pipelining input baru akan diterima pada sebuah sisi
sebelum input yang diterima sebelumnya keluar sebagai
output di sisi lainnya. Pipelining ini mirip dengan
penggunaan rangkaian perakitan pada pabrik. Rangkaain
perakitan ini memanfaatkan kelebihan yang didapat dari
fakta bahwa suatu produk diperoleh dengan melalui
berbagai tahapan produksi, dengan menaruh proses produksi
diluar rangkaian perakitan, maka produk yang berada di
berbagai tahapan dapat bekerja secara bersamaan.
B. SET 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 Mesin Instruksi
Elemen-elemen instruksi mesin
o Operation Code (OP Code) yaitu kode operasi
berbentuk kode biner
o Source Operand Reference yaitu operand adalah input
operasi
o Result Operand Reference yaitu merupakan hasil atau
keluaran operasi
o Next Instruktion Reference elemen ini
menginformasikan CPU posisi instruksi berikutnya
yang harus diambil dan dieksekusi.
Operand dari suatu system operasi dapat berada pada:
Memori Utama atau memori virtual
Register CPU
Perangkat I/O
Format Instruksi
Op
Code
Alamat
Kode Operasi (Op Code) direpresentasikan dengan
singkatan-singkatan yang disebut mnemonic.
Contoh Mnemonic
o ADD = Penambahan
o SUBB = Pengurangan
o LOAD = Muatkan data ke memori
C. MODE PENGALAMATAN
Suatu variasi mode pengalamatan (addressing mode)
dapat digunakan untuk menentukan suatu alamat tempat
untuk dimana operand akan di fetch. Beberapa teknik ini
dapat meningkatkan kecepatan pelaksanaan instruksi dengan
menurunkan jumlah referensi pada memori utama dan
meningkatkan jumlah referensi pada register kecepatan
tinggi. Mode pengalamatan ini menjabarkan suatu aturan
untuk menginterpretasikan atau memodifikasi field alamat
dari instruksi sebelum operand direferensikan.
Beberapa mode pangalamatan umum diantaranya adalah :
*OPR mewakili sebuah register untuk menyimpan operand
yang akan digunakan sewaktu instruksi dijalankan.
D. DUKUNGAN SISTEM OPERASI
Pengertian Sistem Operasi
Dalam Ilmu komputer, Sistem operasi atau dalam
bahasa Inggris: operating system atau OS adalah perangkat
lunak sistem yang bertugas untuk melakukan kontrol
eksekusi program aplikasi dan manajemen perangkat keras
serta operasi-operasi dasar sistem, termasuk menjalankan
software aplikasi seperti program-program pengolah kata
dan browser web.
Sistem Operasi juga bertindak sebagai antar-muka
antara pengguna dengan perangkat keras komputer. Sistem
Operasi mengandung sejumlah program, dan beberapa program
tergolong sebagai utilitas. Kumpulan program ini
menyediakan layanan kontrol terhadap sumber daya
komputer.Secara khusus, sistem operasi menangani kontrol
dan penggunaan sumber daya perangkat keras, seperi disc-
room, memory, processor, dan perangkat tambahan lain,
seperti mouse, printer, dan lain-lain.
Sejarah Sistem Operasi
Perkembangan sistem operasi dipengaruhi oleh
perkembangan hardware. Sistem operasi mulai dikembangkan
sejak ±40 tahun lalu, yaitu:
Generasi ke-nol (1940).
Generasi pertama (1950).
Generasi kedua (1960).
Generasi ketiga (1970)
Generasi keempat (pertengahan 1970-an hingga sekarang).
Tujuan dan Fungsi Sistem Operasi
Sistem operasi diharapkan mempunyai dua tujuan yaitu:
Kenyamanan : suatu sistem operasi membuat komputer
lebih mudah untuk digunakan.
Efesien : suatu sistem operasi memungkinkan sumber daya
sistem komputer dapat digunakan dengan cara yang
efesien.
Fungsi Sistem Operasi
System operasi memiliki tiga fungsi utama yaitu
manajemen proses, manajemen sumber daya dan manajemen
data.
Manajemen proses mencakup penyiapan, penjadwalan dan
pemantauan proses pada computer. Proses adalah program
yang sedang dijalankan.
Manajemen sumber daya berkaitan dengan pengendalian
terhadap pemakaian sumber daya dalam system computer
yang dilakukan oleh perangkat lunak system maupun
pereangkat lunak aplikasi yang sedang dijalankan oleh
computer. Yang dimaksudkan sumber daya disini adalah
komponen perangkat keras dalam computer seperti CPU,
memori utama dan peranti masukan/keluaran.
Manajemen data berupa pengendalian terhadap data
masukan/keluaran, termasuk dalam hal pengalokasian
dalam peranti penyimpan sekunder maupun memori utama.
Selain tiga fungsi utama tersebut, system operasi
umumnya juga mempunyai sarana untuk mengelola keamanan.
Ciri system operasi yang mempunyai fasilitas manajemen
keamanan adalah mengharuskan pemakai memasukan nama
pengguna dan password (kata rahasia) sebelum mengakses
computer.
Macam-Macam Sistem Operasi
Dalam perkembangan sistem operasi, sudah banyak
perusahaan-perusahaan atau para programer yang membuat
dan mengembangkan sistem operasi sendiri, baik itu
personal atau general. Tapi pada saat ini terdapat
beberapa sistem operasi yang sudah sangat dikenal yaitu:
1. Keluarga Microsoft Windows - yang antara lain terdiri
dari Windows Desktop Environment (versi 1.x hingga
versi 3.x), Windows 9x (Windows 95, 98, dan Windows
ME), dan Windows NT (Windows NT 3.x, Windows NT 4.0,
Windows 2000, Windows XP, Windows Server 2003, Windows
Vista, Windows 7 (Seven) yang dirilis pada tahun 2009,
dan Windows Orient yang akan dirilis pada tahun 2014)).
2. Keluarga Unix yang menggunakan antarmuka sistem operasi
POSIX, seperti SCO UNIX, keluarga BSD (Berkeley Software
Distribution), GNU/Linux, MacOS/X (berbasis kernel BSD
yang dimodifikasi, dan dikenal dengan nama Darwin) dan
GNU/Hurd.
3. Mac OS, adalah sistem operasi untuk komputer keluaran
Apple yang biasa disebut Mac atau Macintosh. Sistem
operasi yang terbaru adalah Mac OS X versi 10.4 (Tiger).
Awal tahun 2007 direncanakan peluncuran versi 10.5
(Leopard).
4. Komputer Mainframe, dan Super komputer menggunakan
banyak sekali sistem operasi yang berbeda-beda, umumnya
merupakan turunan dari sistem operasi UNIX yang
dikembangkan oleh vendor seperti IBM AIX, HP/UX, dll.
Penjadwalan Proses
Penjadwalan Jangka-Panjang
Penjadwalan jangka-panjang merupkan keputusan untuk
menambahkan program yang akan dieksekusi ke pool.
Penjadwalan jangka-panjang menentukan program yang mana
diakui sebagai sistem untuk diproses.
Penjadwalan Jangka-Menengah
Penjadwalan jangka-menengah merupakan suatu keputusan
untuk menambah banyaknya proses-proses itu secara
parsial atau secar penuh didalam memori utama.
Penjadwalan Jangka-Pendek
Penjadwalan Jangka-Pendek merupakan keputusan sebagai
proses tersedia yang mana yang akan dieksekusi oleh
prosesor.
Penjadwalan Antrian
Ketika proses memasuki sistem, mereka diletakkan dalam
antrian job. Antrian ini terdiri dari seluruh proses
dalam sistem.
Manajement Memori
Melakukan pengaturan prosesor sehubungan penjadwalan
proses yang harus dilakukan.
Ada beberapa istilah dalam manajemen memori yang akan
dijelaskan yaitu:
o Swaping
Sebuah proses harus berada di memori untuk
dieksekusi. Proses juga dapat ditukar (swap)
sementara keluar memori ke backing store dan kemudian
dibawa kembali ke memori untuk melanjutkan eksekusi.
o Partitioning
Sebuah proses system operasi akan menempati bagian
memori yang tetap. Sisa memori akan dibagi-bagi
untuk keperluan sejumlah proses.
o Paging
Paging merupakan kemungkinan solusi untuk
permasalahan fragmentasi eksternal dimana ruang
alamat logika tidak berurutan; mengijinkan sebuah
proses dialokasikan pada memori fisik yang terakhir
tersedia.
E. CICS Dan RISC
RISC(Reduced Instuction Set Computer) adalah rancangan
prosessor yang sederhana, tetapi dalam kesederhanaan
tersebut didapatkan kecepatan operasi tiap-tiap siklus
instruksinya.
Alasan menggunakan RISC
Rancangan arsitektur CPU yang mengambil dasar filosofi
bahwa prosessor dibuat dengan arsitektur yang tidak rumit
dengan membatasi jumlah instruksi hanya pada instruksi
dasar yang diperlukan saja. Racangan ini berawal dari
pertimbangan-pertimbangan dan analisa model perancangan
lain yang kompleks, sehingga harus ada pengurangan set
instruksinya.
Ide dasar prosesor RISC sebenarnya bisa dilacak dari apa
yang disarankan oleh Von Neumann pada tahun 1946. Von
Neumann menyarankan agar rangkaian elektronik untuk
konsep logika diimplementasikan hanya bila memang
diperlukan untuk melengkapi sistem agar berfungsi atau
karena frekuensi penggunaannya cukup tinggi (Heudin, 1992
: 18). Jadi ide tentang RISC, yang pada dasarnya adalah
untuk menyederhanakan realisasi perangkat keras prosesor
dengan melimpahkan sebagian besar tugas kepada perangkat
lunaknya, telah ada pada komputer elektronik pertama.
Seperti halnya prosesor RISC, komputer elektronik pertama
merupakan komputer eksekusi-langsung yang memiliki
instruksi sederhana dan mudah didekode.
Karakteristik RISC
RISC mempunyai beberapa karakteristik, yaitu: siklus
instruksi, operasi pertukaran data, mode pengalamatan dan
format instruksi. Berikut akan dibahas dari masing-masing
karakteristik dari RISC.
Siklus instruksi
Satu instruksi mesin persiklus mesin. Suatu siklus
mesin dinyatakan oleh waktu yang dibutuhkan untuk
mengambil dua operand dari register, untuk melakukan
suatu operasi ALU dan menyimpan hasilnya pada register.
dengan demikian instruksi mesin RISC tidak boleh lebih
kompleks dan harus dapat mengeksekusi secepat
mikroinstruksi pada mesin-mesin CISC. Dengan menggunakan
instruksi sederhana atau instruksi satu siklus hanya
dibutuhkan satu mikrokode atau tidak sama sekali,
instruksi mesin dapat dihardwired. Instruksi seperti itu
akan dieksekusi lebih cepat dibanding yang sejenis pada
yang lain karena tidak perlu mengakses penyimapanan
kontrol mikroprogram saat eksekusi instruksi berlangsung.
Operasi pertukaran data
Kebanyakan operasi harus dalam bentuk register ke
register, dengan hanya operasi akses memori LOAD dan
STORE yang sederhana. Rancangan ini menyederhanakan set
intsruksi dan sekaligus menyederhanakan unik kontrol.
Sebagai contoh, sebuah set instruksi RISC bisa mengandung
hanya satu atau dua instruksi ADD (misalnya, penambahan
bilangan bulat, penambahan dengan carry). VAX mempunyai
25 instruksi ADD yang berbeda. Keuntugan lain adalah
bahwa arsitektur seperti itu meningkatkan optimasi
penggunaan register, sehingga operand-operand yang sering
diakses akan tetap berada dalam penyimpanan berkecepatan
tinggi.
Mode pengalamatan
Penggunaan mode pengalamatan sederhana, hampir sama
dengan instruksi menggunakan pengalamatan register,.
Beberapa mode tambahan seperti pergeseran dan pe-relatif
dapat dimasukkan selain itu banyak mode kompleks dapat
disintesis pada perangkat lunak dibanding yang sederhana,
selain dapat menyederhanakan sel instruksi dan unit
kontrol.
Format instuksi
Penggunaan format-format instruksi sederhana,
panjang instruksinya tetap dan disesuaikan dengan panjang
word. Fitur ini memiliki beberapa kelebihan karena dengan
menggunakan field yang tetap pendekodean opcode dan
pengaksesan operand register dapat dilakukan secara
bersama-sama
Setelah dipertimbangkan semua karakteristik secara
bersamaan, dapat dilihat keuntungan-keuntungan potensial
dari pendekatan RISC. Keuntungan-keuntungan ini
dikategorikan dalam dua kategori utama: yang pertama
berhubungan dengan kinerja dan yang kedua berhubungan
dengan implementasi VLSI.
Berkaitan dengan kinerja, suatu jumlah tertentu
“circumstansial evidence” dapat direpresentasikan.
Pertama pengoptimalan compiler yang lebih efektif dan
dapat dikembangkan. Yang kedua bahwa kebanyakan instruksi
yang dihasilkan oleh kompiler biasanya sederhana dan
relatif. Yang ketiga adalah penggunaan pipeline
instruksi. Dan yang terakhir bahwa prosessor RISC lebih
respontif ke interupsi.
Pipelining pada RISC
Pipelining akan lebih mudah di implemenstasikan bila
set instruksi sederhana dan teratur.
Instruksi yang bisa dilakukan akan dikerjakan tanpa
menunggu instruksi sebelumnya selesai.
Salah satu metode untuk meningkatkan kinerja system
computer.
Cisc (Complex instruction-set computing atau Complex Instruction-Set
Computer) atau "Kumpulan instruksi komputasi kompleks"
adalah sebuah arsitektur dari set instruksi dimana setiap
instruksi akan menjalankan beberapa operasi tingkat
rendah, seperti pengambilan dari memory, operasi
aritmetika, dan penyimpanan ke dalam memory, semuanya
sekaligus hanya di dalam sebuah instruksi. Karakteristik
CISC dapat dikatakan bertolak-belakang dengan RISC.
Tujuan utama dari arsitektur CISC adalah melaksanakan
suatu perintah cukup dengan beberapa baris bahasa mesin
sedikit mungkin. Hal ini bisa tercapai dengan cara
membuat perangkat keras prosesor mampu memahami dan
menjalankan beberapa rangkaian operasi. Untuk tujuan
contoh kita kali ini, sebuah prosesor CISC sudah
dilengkapi dengan sebuah instruksi khusus, yang kita beri
nama MULT. Saat dijalankan, instruksi akan membaca dua
nilai dan menyimpannya ke 2 register yag berbeda,
melakukan perkalian operan di unit eksekusi dan kemudian
mengambalikan lagi hasilnya ke register yang benar. Jadi
instruksi-nya cukup satu saja…
MULT 2:3, 5:2
MULT dalam hal ini lebih dikenal sebagai “complex
instruction”, atau instruksi yang kompleks. Bekerja
secara langsung melalui memori komputer dan tidak
memerlukan instruksi lain seperti fungsi baca maupun
menyimpan.
Satu kelebihan dari sistem ini adalah kompailer hanya
menerjemahkan instruksi-instruksi bahasa tingkat-tinggi
ke dalam sebuah bahasa mesin. Karena panjang kode
instruksi relatif pendek, hanya sedikit saja dari RAM
yang digunakan untuk menyimpan instruksi-instruksi
tersebut.
Mengapa CISC?
Jumlah instruksi yang banyak dan instruksi yang lebih
kompleks. Dua alasan utama yang menjadi motivasi
kecenderungan ini adalah adanya keinginan untuk
menyederhanakan kompiler dan keinginan untuk meningkatkan
kinerja. Alasan penting lainnya adalah harapan bahwa CISC
akan menghasilkan program yang lebih kecil dan lebih
cepat.
Karakteristik CISC versus RISC
Rancangan RISC dapat memperoleh keuntungan dengan
mengambil sejumlah feature CISC dan Rancangan CISC dapat
memperoleh keuntungan dengan mengambil sejumlah feature
RISC. Hasilnya adalah bahwa sejumlah rancangan RISC yang
terbaru, yang dikenal sebagai PowerPC, tidak lagi “murni”
RISC dan rancangan CISC yang terbaru, yang dikenal
sebagai Pentium, memiliki beberapa karakteristik RISC.
RISC CISC
Penekanan pada perangkat
lunak
Penekanan pada perangkat
keras
Single-clock,hanya sejumlah
kecil instruksi
Termasuk instruksi kompleks
multi-clock
Register
toRegister :”LOAD”&”STORE”
adalah instruksi2 terpisah
Memori ke Memori:
”LOAD”&”STORE” saling
bekerjasama