Anda di halaman 1dari 9

Pengertian Microprosesor

Microprosesor merupakan sekeping silicon berukuran millimeter persegi yang mengandung


puluhan ribu transitor dan terdiri dari beberapa rangkaian yaitu ALU,CU dan register.
Register berfungsi sebagai tempat penyimpanan sementara data,alamat,kode intruksi,bit status
berbagai operasi mikroprosesor.
ALU berfungsi untuk mengerjakan perintah2 logika dan operasi aritmetika
Timing dan CU berfungsi untuk mengambil dan mendekodekan intruksi dari memori program
dan membangkitkan sinyal kendali yang diperlukan oleh bagian dari mikroprosesor untuk
melaksanakan instruksi tsb.

Fungsi Microprosesor
sebagai unit yang mengendalikan seluruh kerja sistem mikroprosesor. Beberapa fungsi lain dari
mikroprosesor, antara lain :

Mengambil instruksi dan data dari memori.


Memindah data dari dan ke memori.
Mengirim sinyal kendali dan melayani sinyal interupsi.
Menyediakan pewaktuan untuk siklus kerja sistem mikroprosesor.
Mengerjakan fungsi fungsi operasi logika dan aritmetika.

Arsitektur Mikroprosesor
Arsitektur mikroprosesor menunjukkan rancangan tentang perangkat lunak dan perangkat keras yang
terpadu menjadi satu.

Jenis Arsitektur Mikroprosesor


Internal Software Design :

Complex Instruction Set Computer (CISC)


Reduce Instruction Set Computer (RISC)
Mikroprosesor Superskalar

1. Complex Instruction Set Computer (CISC) adalah jenis arsitektur mikroprosesor yang
menggunakan banyak jenis dan ragam instruksi. CISC menyediakan kemampuan setiap instruksi
dapat mengeksekusi operasi low-level, seperti men-load data dari memori, operasi aritmetika,
dan melakukan prosedur penyimpanan ke memori.
2. Reduce Instruction Set Computer (RISC) merupakan arsitektur instruction set yang menekankan
kepada kesederhanaan instruksi bekerja sedikit tetapi tetap memberikan hasil performansi
yang tinggi. Hal ini bisa terjadi karena proses eksekusi instruksinya sangat cepat.
3. Mikroprosesor Superskalar adalah mikroprosesor yang menggunakan instruksi-instruksi biasa
(aritmetika, floating point, store, branch) tetapi bisa diinisialisasi secara simultan dan dapat
dieksekusi secara independen.

Internal hardware design :

I/O Terisolasi
I/O Terpetakan dalam Memori
Arsitektur Harvard

1. Menggunakan desain pengalamatan atau pemetaan I/O terpisah atau terisolasi dengan
pengalamatan atau pemetaan memori.

2. Menyatukan sel-sel I/O dalam pengalamatan bersama dengan sel-sel memori.

3. Pada arsitektur Harvard antara memori program dan memori data dipisahkan atau diisolasi.

Panjang Kata (Word) menyatakan jumlah bit yang dapat diproses oleh prosesor dalam sekali waktu
(siklus). Panjang berupa 8 bit, 16 bit, 32 bit. Semakin besar panjang bitnya semakin tinggi kecepatannya.

Memori yang dapat dialamati Sel Memori biasanya diatur dalam bentuk array, dengan tiap sel dapat
menyimpan satu bit informasi.Blok memori yang menggunakan 16 jalur alamat dan 8 jalur data. Untuk
16 jalur alamat, maka jumlah word total yang dapat dialamati adalah 65535 (216). Sehingga kapasitas
memori total pada blok diatas adalah 65535 byte (64 Kilobyte).
Karakteristik Arsitektur RISC (Reduced Instruction Set Computer)

One cycle execution time Satu putaran eksekusi -> Prosessor RISC mempunyai CPI (clock per
instruction) atau waktu per instruksi untuk setiap putaran.
Pipelining Teknik yang memungkinkan dapat melakukan eksekusi secara simultan.
Large number of registers Jumlah register yang sangat banyak-> RISC di Desain dimaksudkan
untuk dapat menampung jumlah register yang sangat banyak untuk mengantisipasi agar tidak
terjadi interaksi yang berlebih dengan memory.

Karakteristik Arsitektur CISC (Complex Instruction Set Computing)

Sarat informasi memberikan keuntungan di mana ukuran program-program yang dihasilkan


akan menjadi relatif lebih kecil, dan penggunaan memory akan semakin berkurang. Karena CISC
inilah biaya pembuatan komputer pada saat itu (tahun 1960) menjadi jauh lebih hemat.
Dimaksudkan untuk meminimumkan jumlah perintah yang diperlukan untuk mengerjakan
pekerjaan yang diberikan. (Jumlah perintah sedikit tetapi rumit) Konsep CISC menjadikan mesin
mudah untuk diprogram dalam bahasa rakitan.

Jenis Jenis Register

Segmen register Terdiri atas register CS, DS, ES dan SS. Untuk menunjukkan alamat dari suatu
segmen.
Pointer dan index register Terdiri atas register SP, BP, SI dan DI. Sebagai penunjuk atau pointer
terhadap suatu lokasi di memory.
General purpose register Terdiri atas register AX, BX, CX dan DX. yang masing-masing terdiri atas
16 bit.
Index pointer register Register IP berpasangan dengan CS(CS:IP) menunjukkan alamat memory
tempat dari intruksi(perintah) selanjutnya yang akan dieksekusi.
Flags register Register flip-flop 16 bit ini menunjukkan kondisi dari suatu keadaan< ya atau tidak
>.

Himpunan Intruksi

Instruction set dapat dikelompokkan menjadi tiga kelompok (sub himpunan) :

1. Pengiriman data yang memuat pergerakan data antara CPU dan lokasi memori, contoh :
Memuat accumulator dengan isi memory (LDA).
Menyimpan isi accumulator ke dalam memory (STA).
Memuat register X dengan isi memori (LDX).

2. Aritmatika & logika berisi instruksi-instruksi untuk melakukan operasi aritmatika & logika,

Contoh:

Menjumlahkan dua bilangan dengan carry (ADC).


Mengurangi dua bilangan dengan carry (SBC).
Mengoprasikan AND pada dua bilangan (AND).
Mengoprasikan EXOR pada dua bilangan (XOR).
Menggeser kanan secara logika (LSR).
Menggeser kiri secara aritmatika (ASL).

3. Tes & cabang menyediakan fasilitas bagi mikroprosesor untuk melakukan serangkaian operasi
dengan cara melompat atau mencabang ke bagian lain dari program, contoh:
Melompat ke subrutin (JSR).
Mencabang jika hasilnya negatif (BMI).
Mencabang jika sama (BEQ).

Aritmetic Logical Unit


adalah untuk melakukan suatu proses data yang berbentuk angka dan logika, seperti data matematika
dan statistika. ALU terdiri dari register-register untuk menyimpan informasi. Tugas utama dari ALU
adalah melakukan perhitungan aritmatika (matematika) dan melakukan keputusan dari operasi sesuai
dengan instruksi program yaitu operasi logika (logical operation).bilangannya disebut adder.

Ada 3 jenis adder:

1) Rangkaian Adder dengan menjumlahkan dua bit disebut Half Adder.

2) Rangkaian Adder dengan menjumlahkan tiga bit disebut Full Adder.

3) Rangkain Adder dengan menjumlahkan banyak bit disebut Paralel Adder

1. HALF ADDER

Rangkaian Half Adder merupakan dasar penjumlahan bilangan Biner yang terdiri dari satu bit,
oleh karena itu dinamai Penjumlah Tak Lengkap.

2. FULL ADDER

Full Adder menjumlahkan dua bilangan yang telah dikonversikan menjadi bilangan-bilangan biner.
Masing-masing bit pada posisi yang sama saling dijumlahkan. Full Adder sebagai penjumlah pada bit-bit
selain yang terendah. Full Adder menjumlahkan dua bit input ditambah dengan nilai Carry-Out dari
penjumlahan bit sebelumnya. Output dari Full Adder adalah hasil penjumlahan (Sum) dan bit
kelebihannya (carry-out).

3. PARALEL ADDER
Rangkaian Parallel Adder adalah rangkaian penjumlah dari dua bilangan yang telah
dikonversikan ke dalam bentuk biner. Anggap ada dua buah register A dan B, masing-masing register
terdiri dari 4 bit biner : A3A2A1A0 dan B3B2B1B0.

CU (Control Unit )
Control Unit (CU) adalah salah satu bagian dari CPU yang bertugas untuk memberikan arahan/kendali/
kontrol terhadap operasi yang dilakukan di bagian ALU (Arithmetic Logical Unit) di dalam CPU tersebut.
Output dari CU ini akan mengatur aktivitas dari bagian lainnya dari perangkat CPU tersebut.

Tugas dari CU adalah sebagai berikut:

Mengatur dan mengendalikan alat-alat input dan output.


Mengambil instruksi-instruksi dari memori utama.
Mengambil data dari memori utama kalau diperlukan oleh proses.
Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika serta
mengawasi kerja.
Menyimpan hasil proses ke memori utama.

Macam-macam CU :

1. Single-Cycle CU Proses di CUl ini hanya terjadi dalam satu clock cycle, artinya setiap instruksi ada pada
satu cycle, maka dari itu tidak memerlukan state.

2. Multi-Cycle CU multi-cycle lebih memiliki banyak fungsi. Dengan memperhatikan state dan opcode,
fungsi boolean dari masing-masing output control line dapat ditentukan.

Jenis-jenis register(lanjutan)
General Purpose Register

Accumulator Register AX : Sebagai akumulator dan berhubungan dengan jenis-jenis operasi


khusus seperti Aritmetika, In/Out, Shift,Logic, Rotate, dan operasi desimal berkode biner.
Base Register BX : Sebagai register base untuk mereferensi alamat memori.
Counter Register CX : Sebagai pencacah implisit dengan instruksi tertentu, misalnya terhadap
perintah Loop dan operasi string.
Data Register DX : Menyimpan alamat port I/O selama operasi I/O tertentu, baik alamat port 8
bit maupun 16 bit.
Pointer dan Index Register

Register SP (Stack Pointer, 16 bit) : Digunakan untuk operasi stack seperti menyimpan alamat
return saat memanggil subroutine.
Register BP (Base Pointer, 16 bit) : Sebagai penunjuk base dalam stack yang disediakan untuk
penyimpanan data.
Register SI dan DI (Source Index dan Destination index, 16 bit) : Menyimpan nilai-nilai offset
dalam segment data memori pada saat bersangkutan.
Register IP (Instruction Pointer, 16 bit) : register utama untuk menunjukkan baris perintah
program. Pada saat program dijalankan, IP akan langsung menunjuk pada awal program.
Code Segment dan Instruction Pointer berfungsi sebagai program counter ditulis dengan format
CS:IP.

Register Segment (16 bit)

Register CS (Code Segment) : Mencatat segment dari kode program atau instruksi, register CS
berpasangan dengan register IP (Instruction Pointer) dalam format CS:IP.
Register DS (Data Segment) : Menyimpan alamat dari segment dimana data terletak.
Register SS (Stack Segment) : Menyimpan alamat segment memori yang dipergunakan sebagai
stack.
Register ES (Extra Segment) : Menyimpan alamat segment tambahan, misalnya alamat display,
alamat sistem operasi, dan sebagainya.

4. Register Flag

Status Flag terdiri dari:

CF (Carry Flag): Dimana sebuah carry out atau borrow, jika hasilnya adalah bit tertinggi (nilai 1).
PF (Parity Flag): Menset (nilai 1), jika instruksi menghasilkan sebuah angka genap (even parity).
AF (Auxiliary Flag): Digunakan oleh instruksi pegaturan desimal.
ZF(Zero Flag): Menset (nilai 1), jika hasil instruksi adalah 0.
SF (Sign Flag): Menset (nilai 1), jika hasilnya adalah negatif dan bernilai 0 jika positif.

Kontrol Flag terdiri dari:

OF (Overflow Flag): Menunjukkan sebuah operasi yang tidak benar yaitu merubah hasil daripada
tanda bit.
IF (Interrupt Enable Flag): Jika diset (nilai 1) dapat melakukan operasi interupsi dan sebaliknya
bila bernilai 0, maka interupsi tidak dapat dilakukan.
DF (Direction Flag): Mengontrol arah dari operasi string.
Control Logic
Control logika adalah bagian penting dari program perangkat lunak yang mengendalikan operasi
program. Logika kontrol merespon perintah dari pengguna, dan ia juga bertindak sendiri untuk
melakukan tugas otomatis yang telah terstruktur ke dalam program.

Mnemonic
Mnemonic adalah seperangkat instruksi pemrograman yang mudah diingat yang kemudian
diterjemahkan ke dalam kode mesin oleh sebuah perangkat lunak yang disebut 'assembler'.

Contoh code mesin dalam bentuk mnemonic : LD AL, 32h -> LD AL (operand destinasi), 32h
(operand Source)

LD adalah Opkode, AL,32h adalah Operand

Instruksi Transfer Data


1. Yaitu Instruksi untuk pertukaran data dari sumber ke destinasi yang terjadi antar Memory dan
Register. Dan intruksi ini dapat ditransfer dalam 8 bit atau 16 bit.
2. Perintah transfer data memuat dua operand yaitu :

LD (Operand Destination) => Tujuan.


LD (Operand Source) => Sumber.

Operand dapat berupa :

Register
Memory
Data Immediate.

Instruksi transfer data 8 bit dapat terjadi Diantara:

Register Ke Register
Memori Ke Register
Data Immediate Ke Register
Register Ke Memori
Memori Ke Memori
Data Immediate Ke Memori
Instruksi transfer data 16 bit dapat terjadi Diantara:

Register Ke Register :Transfer data 16 bit register ke register dapat terjadi diantara
register 16 bit yaitu register SP, HL, IX, dan IY.
Memori Ke Register :Transfer data 16 bit dari memori ke register dapat terjadi terhadap
register IX, IY, BC, DE, HL, SP dan AF
Data Immediate Ke Register :Transfer data immediate 16 bit ke register dapat terjadi
terhadap register BC, DE, HL, SP, IX, dan IY.Perintah yang digunakan adalah LD (Load).
Register Ke Memori
Memori Ke Memori
Data Immediate Ke Memori

Instruksi Pertukaran Data


Instruksi yang digunakan untuk pertukaran data adalah EX (satu register 16 bit) dan EXX (tiga
register 16 bit) yaitu diantara register utama dan register alternatif.

Pertukaran data dapat terjadi diantara register DE, HL, BC, BC, DE, HL, memori, memori
dengan register.

Instruksi Pelacakan Data


Pelacakan atau searching data dilakukan dengan perintah COMPARE atau bandingkan.

Untuk mengetahui nilai sebuah data dalam suatu lokasi memori perlu melakukan pembandingan
dan pelacakan.

Perintah pelacakan data yang digunakan adalah CPI (compare increment), CPIR (compare
increment repeat), CPD (compare decrement), CPDR (compare decrement repeat).

Instruksi Aritmatika
Instruksi artimatika melakukan operasi dasar seperti ADD, SUB, DIV, MUL dalam sistem bilangan
biner.

Namun dalam mikroprosesor Zilog Z-80 CPU instruksi-instruksi aritmetika yang disediakan hanya
(ADD,ADC) dan (SUB,SBC).
instruksi Assembly Operasi
ADD ADD A,(HL) A <- A + (HL)
SUB SUB B A <- A- B
ADC ADC A,B A<-A+B+Cy
SBC SBC A, B A <- A - B - Cy
INC INC A A<- A+1
DEC DEC A A<-A-1
AND AND A A<- A^A

Intruksi Aritmatika Tujuan Umum dan Kendali CPU


1. DAA (Decimal Adjust Accumulator)

2. CPL (Complement Accumulator ( Komplemen 1))

3. NEG (Negate Accumulator (Komplemen 2))

4. NOP (No Operation)

5. HALT

HALT : CPU HALTED

NOP : NO OPERATION

CPL : A <- NOT A

NEG : A <- NOT A + 1

DAA :

Desimal Biner

2910 0010 1001

2610 0010 0110

------------------------------------- +

5510 0100 1111= 4FH


5511

Anda mungkin juga menyukai