Pertemuan 3c Arsitektur Komputer1

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
Penyangga data dan

5.
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.