Arsitektur Dasar Komputer

advertisement
Arsitektur CPU
Gambar 4. Arsitektur CPU Internal (dari mikroprosesor 8 bit disederhanakan)
Hubungan ke chip lain dalam sistem dilakukan lewat data bus, address bus
& control bus. Mikroprosesor merupakan inti dari sistem, bekerja menurut daur
umpan dan eksekusi (Fetch and Execute).
Selama fase umpan CPU menerima instruksi dari lokasi memori (tempat
program disimpan). Umpan diterima mikroprosesor yang akan menempatkan
alamat dari lokasi memori pada address bus, sehingga akan mengaktifkan jalur
kontrol baca bekerja. Address decoder chip akan memilih memory chip yang
sesuai untuk meletakkan isi alamat (yaitu instruksi dalam bentuk kata 8 bit
tersandi) yang disebut Op-Code pada data bus. CPU menerima instruksi &
menyimpannya
ke dalam
register internal yang disebut instruction register
(IR).
Selama fase eksekusi, instruksi yang diterima CPU akan disandikan dan
dieksekusi. Yang dilakukan dengan cara CPU membangkitkan isyarat pewaktuan &
kontrol yang diperlukan untuk melaksanakan instruksi tersebut. Dalam fase
eksekusi tersebut terdapat operasi aritmatika sederhana (seperti penjumlahan /
pengurangan atau transfer data yang lebih rumit dari dan ke piranti pheriperal /
memory).
Kedua fase fetch and execute, memerlukan waktu >1 pulsa detak (lebih
dari satu pulsa detak). Saat suatu instruksi selesai dilaksanakan alamat bus yang
memulai kembali daur-umpan dan eksekusi (fetch and execute).
1) Penyangga bus
Dalam sistem, bus berfungsi menghubungkan mikroprosesor ke semua
piranti memori dan interface, tapi mikroprosesor dari MOS sering tidak
memadai untuk sistem yang besar, sehingga digunakan penyangga bus, untuk
mempertinggi kemampuan dari penyangga bus. Ada dua jenis penyangga /
penggerak bus, yaitu pengirim (transmitter) untuk menggerakkan bus &
penerima (receiver) untuk mendengarkan bus. Pada bus dua arah (seperti
data bus, pengirim/penerima disebut penyangga dua arah/transreceiver)
sering di gunakan juga.
Penyannga tiga kondisi juga sering dipakai untuk memutuskan bus dari
mikroprosesor. Cara ini dipakai jika piranti eksternal digunakan untuk
mengendalikan sistem dari CPU on-board. Di dalam CPU hubungan antara
elemen-elemen yang ada dilakukan melalui data bus internal 8 bit & jalur
kontrol dari blok pewaktuan & logika kontrol. Data bus internal dihubungkan
dengan data bus sistem, lewat penyangga dua arah (transreceiver) logika
kontrol dan pewaktuan dilakukan oleh isyarat kontrol untuk keseluruhan
sistem. Satu-satunya isyarat kontrol diumpankan ke CPU adalah interupsi
yang masuk ke dalam instruction decoder (ID) untuk menghentikan operasi
mikroprosesor.
Gambar 5. Penyangga data dan alamat
2) Unit Aritmatika dan Logika
Berfungsi melakukan fungsi aritmatika dan fungsi logika (seperti
operasi NAND atau OR) pada 2 bilangan, sehingga ALU harus memiliki dua
input yaitu : Input A untuk bilangan 1, & Input B untuk bilangan 2. Kedua
bilangan tersebut pertama kali disimpan dalam 2 register 8 bit, accumulator
(ACC) untuk input A dan sebuah register sementara (Temp) untuk input B
setelah operasi ALU selesai, hasilnya akan disimpan dalam ACC menggantikan
isi yang lama.
3) Instruction Register (IR)
IR merupakan register 8 bit yang digunakan untuk menyimpan
instruksi tersandi, yaitu saat instruksi tersebut digunakan atau sampai
instruksi berikutnya diumpankan dan disimpan, begitu seterusnya.
4) Instruction Decoder (ID)
ID yaitu berupa instruksi tersandi adalah kata 8 bit yang dinamakan
Operational Code (Op-Code). Setiap instruksi (seperti tambah atau simpan)
memiliki sandi atau kode yang berbeda atau dengan kata lain setiap
mikroprosesor memilki Op-Code yang berbeda yang disajikan dalam bentuk
instruction set. Op-Code yang tersimpan akan diumpankan ke ID dari IR.
Decoder akan merinci sandi / kode tersebut dan menginstruksikan “
TIMING AND CONTROL LOGIC” Untuk membangkitkan isyarat pewaktuan
dan kontrol yang diperlukan untuk melaksanakan instruksi tersebut.
5) Program Counter (PC)
PC atau pencacah program digunakan untuk melacak program dan
meyakinkan bahwa CPU menerima instruksi yang sesuai dengan urutan yang
ditentukan oleh program.
Telah diketahui bahwa mikroprosesor akan melaksanakan tugas
menurut urutan tertentu yang disebut program. Program adalah berisi
sejumlah instruksi, dan setiap instruksi berisi Op-Code, sedang data yang
akan diproses disebut Operand. Instruksi-instruksi disusun dalam urutan
logika tertentu dan disimpan secara berurutan pada lokasi memori, yang
disebut alamat program. Tabel bawah ini menggambarkan konstruksi dari
program :
PC berupa register 16 bit yang berisi alamat lokasi program, berikut
ini merupakan penjelasan dari tabel di atas :

Untuk memulai program, CPU menempatkan alamat awal (Starting
Address) 0A20 (tempat operator 1 disimpan) dalam program, yang
selanjutnya akan ditempatkan pada address bus untuk mengumpan
instruksi pertama. Instruksi 1 akan diumpankan ke CPU lewat data bus &
disimpan dalam IR. Pada kondisi ini pencacah program akan bertambah
menjadi 0A20 + 1 = 0A21, operator 1 tidak memiliki data, sehingga
segera dapat dilaksanakan. Setelah instruksi 1 selesai dilaksanakan maka
CPU memberitahu pencacah program untuk mendapatkan isi (0A21) ke
dalam bus alamat (address bus) untuk mengumpankan instruksi 2, dan
menyimpannya dalam IR. Jika ini terjadi pencacah program akan
bertambah menjadi 0A21 + 1 = 0A22, yang berisi data (operand 2).
Operator 2 akan disampaikan, tapi tidak bisa diselesaikan tanpa data
yang sesuai yaitu berupa bilangan yang tersimpan dalam suatu lokasi atau
ditambahkan ke bilangan lain yang sudah ada dalam ACC lalu operand 2
akan diumpankan dengan menempatkan isi pencacah program, 0A22 pada
address bus. Operand 2 muncul pada data bus, saat pencacah program
bertambah menjadi 0A23 (0A22 + 1). Saat instruksi 2 selesai
dilaksanakan, pencacah program akan meletakkan isinya yang baru, 0A23
ke address bus untuk mengumpan instruksi 3, dan seterusnya.

Sebuah instruksi dapat berisi lebih dari 1 operand 8 bit sebagai contoh
dua operand 8 bit diperlukan untuk mengakomodasi alamat 16 bit.
Download