CPU
CPU merupakan tempat berkumpulnya semua
komponen – komponen yang diperlukan untuk menjalankan sebuah komputer. CPU
terbentuk atas tiga bagian utama: register,
ALU, dan CLU. Kumpulan 3 elemen tersebut diperlukan untuk melaksanakan
sebuah instruksi. ALU dipergunakan untuk operasi aritmatika dan logika.
Sedangkan CLU dengan mentransfer dari register yang satu ke register lain atau
memerintahkan ALU ke operasi yang dijalankan.
Register
Register merupakan pos komando untuk jalur ALU
dan CLU. Menghubungkan dua elemen untuk menjadi satu komando dalam satu jalur
untuk menjalankan program. Ada beberapa jenis register diantaranya:
Register Program Counter
Register ini menyimpan alamat memori dari
instruksi selanjutnya yang akan dijalankan. Bisa dibilang juga sebagai delay
sebelum register menjalankan perintah selanjutnya.
Register Instruksi
Register jenis ini menjalankan suatu instruksi
di dalam memori yang ditunjuk oleh PC, CPU memulai serangkaian satu transfer
atau lebih. Rangkaian yang sebenarnya tergantung dari rancangan CPU dan
instruksi tertentu yang sedang dijalankan. Mungkin saja operasi yang akan
dijalankan memerlukan satu transfer memori atau lebih. Dalam hal ini, kita
perlu memegang salinan instruksi tersebut dalam sebuah register khusus yang
disebut sebagai Register Instruksi.
Register Umum
Jumlah register lainnya di dalam kumpulan
register sangat bervariasi. Biasanya ada sejumlah register general – purpose
untuk menyimpan nilai – nilai sementara selama pelaksanaan instruksi. Banyak
komputer memiliki register program
status word yang menyimpan informasi tentang kondisi CPU. Secara tipikal,
PSW akan mencakup bit – bit status dari operasi aritmatika seperti overflow,
carry, sign dan bit untuk izin interupsi. Register ini dapat digunakan untuk
menyimpan keadaan dari program yang sedang berjalan ketika sebuah interupsi
perlu dilayani.
Format Instruksi
Suatu instruksi merupakan tata cara yang
digunakan oleh komputer untuk menyatakan operasi – operasi seperti ADD, STORE,
LOAD, MOVE dan BRANCH serta menentukan lokasi data dimana suatu operasi akan
dikerjakan. Suatu instruksi komputer merupakan kode biner yang dibagi menjadi
sejumlah field. Operasi field atau
opcode merinci operasi yang harus dilaksanakan. Operasi ini dilaksanakan pada
beberapa data, operand, yang bisa
merupakan bagian instruksi atau disimpan dalam register atau dalam memori
utama, dan yang lokasinya dijabarkan oleh alamat pada instruksi tersebut.
Bus
Komponen – komponen CPU dapat tersusun dalam
berbagai cara, sangat tergantung pada jumlah bus data internal yang digunakan.
Kita akan memberikan dua contoh konfigurasi tersebut:
Organisasi Bus - Tunggal
Salah satu cara untuk menghubungkan semua
komponen CPU adalah dengan menggunakan sebuah bus internal. Karena hanya ada
satu bus data, maka hanya satu transfer yang dapat terjadi pada suatu waktu.
Oleh karena itu perlu untuk membuat provisi perangkat keras khusus. ALU
memerlukan kedua inputnya secara bersamaan. Dengan hanya sebuah bus data
tunggal, sebuah operand akan disimpan dalam Y dan yang lainnya dapat disimpan
dalam bus. Sewaktu ALU menghitung hasilnya, input tersebut harus tetap konstan
pada bus. Karena itu, kadang – kadang hasilnya disimpan ke dalam Z sampai
operasi selesai dan kemudian ditransfer melalui bus ke tempat dimana ia harus
disimpan.
Operasi Triple – Bus
Penggunaan tiga bus internal akan melonggarkan
beberapa batasan yang dibebankan oleh susunan bus-tunggal. Dalam hal ini,
bus-bus yang terpisah dapat digunakan untuk dua input ALU termasuk juga untuk
output ALU. Jika register dari kumpulan register adalah edge-trigerred, maka
akan mungkin untuk menjalankan jenis operasi-mikro pada satu sinyal waktu.
ALU
Menambahkan dua register bersama – sama dan
menyimpan hasilnya dalam register lainnya merupakan prinsip yang mendasar pada
ALU. Beberapa fungsi pada ALU
Fungsi
Aritmatika
Ada banyak jenis dan angka yang berbeda dan
untuk setiap jenis yang berbeda tersebut, ada perbedaan cara untuk mewakili
angka di dalam sistem komputer. Berbagai jenis data yang berbeda biasanya
mencakup integer, floating point dan desimal berkode biner. Pada umumnya, data
digambarkan dalam notasi sign-magnitude,
komplemen 1 atau komplemen 2. Karena itu logika ALU untuk operasi tertentu merupakan fungsi dari jenis angka yang sedang
diproses dan bagaimana mereka direpresentasikan. Jika integer digambarkan dalam
notasi sign-magnitude, maka
penambahan dikerjakan dengan memeriksa bit sign dan kemudian menambah atau
mengurangi angka, tergantung pada magnitude relatifnya. Misal, penjumlahan 2 +
3 dapat dikerjakan secara langsung, tetapi penjumlahan 2 + (-3) akan diproses –
(3 – 2).
Fungsi
Logika
Dibandingkan dengan fungsi aritmatika, fungsi
logika pada ALU lebih sederhana. Untuk operasi logika yang ingin kita terapkan,
kita hanya perlu memuat sejumlah n gerbang
logika tertentu untuk operasi tersebut. ALU dapat di set untuk menangani berapa
pun jumlah operasi mikro logika. Yang termasuk empat operasi logika dasar
biasanya adalah AND, OR, NOR dan XOR.
Penggeser
Cara ini dilakukan untuk menerapkan pergeseran
dengan me-load dari ALU ke dalam register geser dua-arah dengan parallel-load, kemudian pada pulsa waktu
berikutnya, pergeseran yang semestinya dapat dilaksanakan. Namun ada dua alasan
mengapa implementasi ini tidak digunakan. Pertama, karena kita tidak benar –
benar perlu menyimpan hasil sementara, pemakaian register hanya membuang –
buang biaya. Kedua, dengan menggunakan register kita terpaksa menggunakan dua
pulsa waktu untuk setiap pergeseran; satu untuk me-load dan satu lagi untuk
pergeseran. Kita dapat mengatasi masalah ini dengan menerapkan sirkuit geser kombinasional,
yang dikenal sebagai skalar posisi. Untuk menggunakan penggeser dengan setup
seperti itu, hasil dari ALU harus dapat diteruskan ke penggeser tanpa berubah.
Oleh karena itu kita harus memodifikasi skalar posisi untuk menyertakan sebuah
kendali no shift.
ALU juga mampu dalam penambahan, pengurangan,
perbandingan, pengambilan dan operasi logika yang ditentukan dengan CLU. Hampir
semua aritmatika komplemen 2 digunakan untuk menunjukkan angka negatif. Pada
umumnya, operasi ALU dapat diklasifikasikan ke dalam operasi single operand
atau dua operand. Berikut ini beberapa contoh dari single operand ALU
1.
Increment, penambahan angka
operand dengan 1
2.
Decrement, pengurangan angka
operand dengan 1
3.
Clear, men-set operand pada 0
4.
Shift, mengambil operand ke sebelah
kiri atau ke sebelah kanan
5.
Rotate, modifikasi dari operasi Shift dimana flag
carry dan operand membentuk ring
6.
Invert, meng-komplemen semua bit
dari operand
Dan berikut beberapa instruksi two operand
1.
Add, menghasilkan jumlah binary
dari dua operand
2.
Subtract, mengurangi satu operand
dari yang lain
3.
Compare, menentukan operand
terbesar di antara dua operand dengan pengurangan
4.
And, OR, Xor, beroprasi secara
logis pada hubungan bit dari dua operand
Control Logic Unit (CLU)
CLU mempunyai dua tugas dari pe-sinkron-an
operasi unit internal dari MPU, seperti ALU dan register, dan operasi modul
mikrokomputer yang lain, seperti port I/O dan memori. Fungsi dari CLU adalah
untuk mengambil instruksi dari memori dan men-decode-nya dan kemudian membuat
pengaturan waktu yang tepat dan signal kontrol yang diperlukan oleh MPU untuk
pembuatan instruksi tersebut. Dalam dua aturannya, CLU juga membuat signal
waktu dan signal kontrol yang dikirimkan, melalui kontrol bus, ke komponen lain
dari sistem mikrokomputer dan menangani dan merespon signal eksternal seperti
interupsi. Yang berhubungan dengan setiap komputer adalah kumpulan instruksi
mesin yang digunakan untuk memprogram komputer. Dalam komputer, setiap
instruksi tersebut terbentuk dari serangkaian operasi-mikro tertentu. CLU pada
komputer memasukkan informasi tentang instruksi dan mengeluarkan baris kendali
yang diperlukan untuk mengaktifkan operasi mikro yang semestinya.
Prosesor
Aritmatika
Sebuah komputer bekerja mengikuti siklus.
Siklus fetch, siklus penjumlahan alamat, siklus eksekusi dan siklus interupsi.
Jumlah sinyal waktu untuk setiap siklus akan bervariasi pada suatu komputer
dengan yang lainnya dan bahkan dalam suatu mesin. Kita dapat memperhatikan
bahwa CLU terbentuk atas sebuah proses
instruksi (IP) dan proses aritmatika
(AP). IP mengendalikan fetch dan AP mengendalikan siklus eksekusi bagi
operasi aritmatika dan logika.
Daftar Pustaka
Soepono Soeparlan, 1995, Pengantar Organisasi
Sistem Komputer, Depok, Penerbit Gunadarma (digital books)
Komentar
Posting Komentar