Anda di halaman 1dari 7

ORGANISASI PROSESOR

2.1 ORGANISASI INTERNAL

Setiap prosesor memiliki beberapa perbedaan dan keistimewaan, tetapi organisasi dasarnya
terdiri dari arithmatic/logic unit (ALU), register dan control unit (CU).

ALU
ALU melakukan operasi aritmatik dan lojik pada operand-operand. Operand-operand tersebut
disimpan sementara di dalam register. Pada beberapa prosesor hasil operasi disimpan pada
register khusus yang disebut akumulator. Tipe operasi ditentukan oleh control unit yang
mendekode instruksi yang difetch dan kemudian mengumpankan ke ALU dengan sinyal-sinyal
kontrol yang sesuai.
Prosesor juga dapat melakukan operasi biner presisi ganda, untuk mempercepat aplikasi
tertentu. Prosesor ini biasanya merupakan prosesor slave yang dihubungkan dengan prosesor
utama. Prosesor ini sering disebut dengan prosesor aritmatik.

REGISTER
Register mempertukarkan informasi melalui satu atau lebih bus-bus internal. Bus-bus internal
ini memungkinkan terjadinya overlaping operasi-operasi yang dapat meningkatkan kecepatan
CPU. Lebar setiap register--yaitu jumlah bit--biasanya sama dengan bus data internal. Pada
Gambar 3.1 ditunjukkan enam buah register yang masing-masing memiliki fungsi khusus.
Register yang lainnya adalah general purpose register (GPR) yang digunakan untuk
menyimpan alamat dan data sementara selama operasi prosesor.

Beberapa macam register dan fungsinya:

1. Program Counter (PC): Sebelum mengeksekusi program, PC diisi dengan alamat awal
program. Kemudian ditambah setiap instruksi baru difetch, sehingga PC selalu menunjuk
pada lokasi instruksi berikutnya.

2. Instruction Register (IR): Instruksi-instruksi program terdiri dari opcode dan field
alamat. IR mengekstrak instruksi dari data buffer register hanya bagian opcode-nya saja.
Setelah itu control unit mendekode isi IR dan membangkitkan sinyal kontrol yang
menghidupkan kegiatan sesuai dengan instruksi tersebut.

3. Buffer Register: Buffer register data dan alamat memisahkan bus eksternal dengan bus
internal CPU. Dalam beberapa kasus buffer register dapat berupa gerbang penyangga saja.

Halaman 2-1
Clock Power

Addres
Timing Address
Buffer
Data
Data
Buffer
EC
Control
L ogic
Arithmatic &
Logic Unit

Registers

Control
ROM

Stack
Pointer
Instruction
Register Status
Register

Program
Control Counter
Unit

IC : Internal C ontrol Signal


EC: External Control Signal
EI : External Inputs

Gambar 3.1. Organisasi dasar mikroprosesor

4. Status Register: Status register menyimpan word status program yang terdiri dari bit-bit
flag dan bit-bit kontrol. Flag diset secara otomatis oleh kejadian tertentu selama operasi
aritmatik dan lojik. Bit kontrol diset oleh program agar meng-enable mode-mode operasi
CPU.

5. Stack Pointer (SP): Stack merupakan lokasi memori yang berdampingan dimana item-
item informasi di dalamnya dapat ditambahkan atau dibuang dengan cara seperti tumpukan
(stack like). SP menunjuk puncak stack, dengan kata lain menyimpan alamat item yang
berada di atas. Stack dapat berambah naik atau turun sepeti Gambar 3.2.

a) Untuk menambah (push) item baru ke dalam stack tersebut, dilakukan dengan
mengurangi SP sehingga menunjuk ke alamat berikut yang lebih rendah.
b) Untuk membuang (pop) suatu item, dilakukan dengan membaca item dari puncak stack
kemudian mengurangi SP untuk menunjuk ke puncak yang baru. Cara ini dikenal dengan
Last-In-First-Out (LIFO).

Halaman 2-2
CONTROL UNIT

Control unit (CU) membangkitkan urutan sinyal yang berasal dari clock. Tipe urutan
sinyal tergantung pada opcode dari masukan yang diberikan dari sumber luar ke CPU.
Masukan eksternal tersebut dapat merupakan permintaan interupsi pada program (interupt
request).

Dari Gambar 3.1 CU membangkitkan dua kelompok sinyal:


1. Sinyal kontrol internal untuk pengaktifan ALU dan pembukaan/penutupan data path antar
register.
2. Sinyal kontrol eksternal ditujukan untuk memori dan I/O. Sinyal ini dikirimkan untuk
pengaktifan transfer data atau sebagai tanggapan terhadap interupsi dan permintaan bus.

Biasanya CU menggunakan microcoding. Microcoding mengacu pada penggunaan pola


biner untuk mengenkode sinyal kontrol pada setiap langkah. Setiap pola menempati satu lokasi
read-only memory (ROM) dan disebut microinstruction. Urutan microinstruction disebut
microprogram.

Memory

Item #1 A
(Bottom)

Item #2 A-1
Blok Memori
yang digunakan
Stack Pointer Item #3 A-2
untuk stack

A-3 Item #4 A-3


(Top)

Address

Gambar 3.2. Contoh Stack

2.2 ANTARMUKA EKSTERNAL

Prosesor menggunakan sejumlah pin atau terminal untuk berhubungan dengan dunia luar.
Antarmuka untuk setiap prosesor tidak selalu sama, baik jumlah pin maupun nama sinyalnya.
Perbedaan dapat timbul karena bertimbangan biaya, sehinga ada satu pin yang dipakai bersama
untuk menghemat biaya. Aspek fungsional antarmuka eksternal terdiri dari beberapa terminal
seperti uraian berikut.
Halaman 2-3
CLOCK Power

Address Interrupt INTREQ


Address request
Bus
INTACK
Interrupt
Data Acknowledge
Data
NMINT
Bus
Nonmaskable
interrupt
M/IO*
Memory-I/O
R/W*
Read/Write
BR
WRD/B* Bus request
Word/Byte
BG
Bus grant
AS LOCK
Address Strobe
DS
Data Strobe
RESET
READY

Status

Gambar 3.3. Antarmuka eksternal prosesor.

2.2.1 Catu Daya dan Clock

Biasanya prosesor memiliki satu atau lebih pin Gnd dan satu atau lebih pin tegangan yang
mengacu pada Gnd.
Prosesor adalah merupakan mesin sinkron yang ergantung pada pulsa clock untuk
sinkroisasi operasinya. Pengaktifan dan pendeaktifan sinyal kontrol berkaitan dengan ujung
(edge) pulsa clock. Pulsa clock disuplai dari sumber eksternal melalui jalur clock.

2.2.2 Bus Alamat

Bus alamat menentukan lokasi yang akan diakses oleh CPU selama operasi baca atau tulis.
Lokasi dapat berupa lokasi memori atau lokasi I/O, dimana setiap lokasi menyimpan satu byte
dta. Bus alamat akan menentukan seperangkat alamat yang berbeda yang membentuk direct
address space dari prosesor.
Apabila terdapat N jalur alamat, maka address space adalah 2N byte lokasi. Alamat
terrendahnya adalah 0 dan alamat tertingginya adalah 2N-1. Pada prosesor 16-bit, lokasi byte
Halaman 2-4
dipasangkan menjadi lokasi word 16 bit. Byte alamat genap merupakan upper half of word dan
byte alamat ganjil merupakan lower half, seperti ditunjukkan Gambar 2.4. Word biasanya
dialamati dengan upper byte dan sinyal kontrol menunjukkan bahwa ini adalah alamat word,
bukan byte. Pada prosesor 32-bit, lokasi byte dapat dikelompokkan empat kali untuk
membentuk lokasi word 32-bit.

2.2.3 Bus Data

Jalur ini membawa data yang akan ditulis atau dibaca dari lokasi yang diidentifikasi
melalui saluran alamat. Tidak seperti jalur alamat yang hanya satu arah, jalur data dapat
mengirimkan informasi dua arah. Jumlah jalur data akan menenntukan jumlah informasi
maksimum yang dapat ditransfer selama sekali operasi baca atau tulis. Bus data ini merupakan
dasar pengelompokan prosesor. Sebagai contoh apabila jalur data berjumlah delapan, maka
prosesor ini disebut prosesor 8-bit.

2.2.4 Jalur kontrol Transfer Data

Berkaitan dengan transfer data, timbul beberapa pertanyaan:


• Bagaimana memori mengetahui bahwa transfer data untuk memori atau untuk I/O?
• Bagaimana memori dan I/O mengetahui bahwa operasi untuk membaca atau menulis?
• Pada kasus prosesor 16-bit atau 32-bit, bagaimana memoridan I/O mengetahui bila transfer
data melibatkan satu, dua atau tiga byte?
• Bagaimana memori dan I/O mengetahui bahwa prosesor telah meletakkan alamat baru pada
bus alamat dan data baru pada bus data?
• Bagaimana bila memori dan I/O lebih lambat?
• Bagaimana prosesor mengetahui kapan memori dan I/O siap menerima data atau
memberikan data?

Seluruh informasi di atas dikomunikasikan dengan jalur pengontrol transfer data.


Prosesor model yang digunakan dalam pembahasan ini menggunakan enam jalur sinyal untuk
keperluan tersebut. Pada sinyal kontrol berikut dan untuk uraian selanjutnya dalam buku ini,
tanda * menandakan bahwa sinyal kontrol yang dimaksud adalah active low.

1. M/IO* (Memory-I/O). Sinyal ini hanya diperlukan jika prosesor memiliki ruang alamat I/O
yang terpisah. Sebagai contoh pada Gambar 3.4 ditunjukkan ruang alamat I/O yang terpisah
memiliki lokasi 2M byte. Apabila M/IO tinggi menandakan bahwa ada akses memori,
sedangkan I/O mengabaikan sinyal tersebut. Apabila M/IO rendah berarti ada akses I/O.

2. R/W* (Read/Write). menunjukkan arah transfer data. Jika tinggi berarti prosesor membaca
data, dan jika rendah berarti prosesor menulis data.

3. WRD/B* (Word/Byte). Sinyal ini tidak diperlukan pada prosesor 8-bit. Sinyal ini
menunjukkan apakah data yang akan diakses berupa byte atau word.

4. AS (Address Strobe). Prosesor mengaktifkan AS untuk menunjukkan bahwa prosesor telah


meletakkan alamat baru pada bus alamat.

Halaman 2-5
5. DS (Data Strobe). Snyal ini memiliki dua peran. Pada operasi tulis menunjukkan bahwa
prosesor telah meletakkan informasi pada bus data. Pada operasi baca DS menunjukkan
pada memori (atau I/O) kapan meletakkan informasi pada bus data.

6. READY. Seluruh sinyal kontrol di atas dibangkitkan oleh prosesor. READY dibangkitkan
oleh rangkaian eksternal untuk menunjukkan kesiapan memori dan I/O pada proses transfer
data.

2N-1

2M
2M-1 2M-1

1 1
0 0

(a) (b)

Gambar 3.4 Ruang alamat yang terpisah. (a) Alamat memori. (b) Alamat I/O.

2.2.5 Jalur Interupsi

Karena peran prosesor merupakan titik kontrol sentral, prosesor harus selalu selalu
memperhatikan event yang terjadi pada bagian sistem yang lain. Pada prosesor model Gambar
2.3, terdapat dua jalur interupsi yaitu: interrupt request (INTREQ) dan interrupt acknowledge
(INTACK).

Pada prosesor model tersebut, urutan langkah interupsi adalah seperti berikut:
a. Periferal mengaktifkan INTREQ.
b. Apabila program yang sedang dieksekusi prosesor memiliki prioritas yang lebih tinggi,
INTREQ diabaikan. Sebaliknya urutan berjalan seperti berikut.
c. Prosesor menyelesaikan eksekusi instruksi yang sedang dikerjakan agar berhenti dengan
tertib.
d. Setelah menerima jawaban (acknowledgement), periferal memuat kode khusus pada bus
data mengatur INTREQ menjadi rendah.
e. Prosesor menerima kode alamat yang ditunjukan pada langkah sebelumnya dan
mendeaktifkan jalur INTACK.
f. Agar prosesor dapat melanjutkan eksekusi program yang diinterupsi, CPU menyimpan
informasi tertentu dari registernya.
g. Pada titik ini prosesor menggunakan kode alamat khusus untuk menentukan alamat awal
rutin, yaitu subprogram, yang akan melayani periferal.

Halaman 2-6
2.2.6 Jalur Kontrol Bus

Pada prosesor model terdapat tiga macam jalur kontrol bus, yaitu: bus request (BR), jalur bus
grant (BG), dan jalur LOCK. BG melayani jawaban permintaan bus (BR). LOCK
menunjukkan pada peralatan I/O apakah prosesor mengijinkan permintaan bus saat ini.

2.2.7 Jalur-jalur Lain

• Jalur RESET, mengembalikan prosesor pada kondisi awal.


• Jalur status, menyatakan informasi tentang keadaan CPU dan envent-event internal lainnya.
Sebagai contoh prosesor sedang melakukan fecthing instruksi, melakukan operasi internal,
dan sebaginya.

Instruction cycle

Opcode fetch

T1 T2 T3 T4 T1 T2 T3 T1 T2 T3 T1 T2 T3 T1 T2 T3

Clock
cycle

MCY1 MCY2 MCY3 MCY4 MCY5


Memory Memory Internal Memory
Memory read read operation write
read (fetch (fetch (add 1 to the (store result)
operand operand) operand)
address)

Gambar 2.10 Timing prosesor untuk instruksi “increment memory direct”.

Halaman 2-7

Anda mungkin juga menyukai