Anda di halaman 1dari 18

26  SISTEM MIKROPROSESOR dan MIKROKONTROLER

BAB 2
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ 
ARSITEKTUR MIKROPROSESOR
Pemahaman yang baik terhadap arsitektur mikroprosesor sangat membantu
kemampuan pengembangan program sistem mikroprosesor. Arsitektur
mikroprosesor berkaitan dengan rancangan software dan hardware internal
sebuah mikroprosesor. Ada tiga jenis software arsitektur mikroprosesor yaitu:
(1) Complex Instruction Set Computer (CISC), (2) Reduce Instruction Set
Computer (RISC), dan (3) Mikroprosesor Superskalar. Dan ada tiga jenis
hardware arsitektur mikroprosesor yaitu: (1) Arsitektur I/O terisolasi, (2)
Arsitektur I/O terpetakan dalam Memori, dan (3) Arsitektur Harvard.
Kata Kunci: arsitektur, set instruksi, software, hardware

1. Jenis Arsitektur sebuah mikroprosesor diproduksi. Arsitektur


Mikroprosesor perangkat lunak mikroprosesor disebut juga
dengan set instruksi. Setiap mikroprosesor
Arsitektur mikroprosesor biasanya
memiliki set instruksi tersendiri yang terdiri
berkaitan dengan bangunan, rancangan
dari sejumlah instruksi yang dapat bekerja di
atau desain sebuah mikroprosesor. Desain
dalam perangkat keras mikroprosesor.
sebuah mikroprosesor dengan ciri-ciri pokok
yang sering disebut dengan features Internal software design berkaitan
sebuah mikroprosesor dapat dipelajari dengan bentuk atau rancangan set instruksi
dengan baik melalui Internal Software- (instruction set) yang digunakan. Set
Hardware Design. Pemahaman dan instruksi sebuah mrikroprosesor dibangun
pengkajian mendalam terhadap rancangan dan dikembangkan bersamaan dengan
software dan hardware yang disebut juga pengembangan rancangan perangkat keras
dengan istilah arsitektur akan sangat mikroprosesornya. Setiap perintah dalam set
membantu dalam pemrograman instruksi harus bekerja pada saat proses
mikroprosesor. decoding yang dilakukan oleh perangkat
keras mikroprosesor. Disebut internal
Arsitektur sebuah mikroprosesor
software karena set instruksi berkaitan
menunjukkan rancangan tentang perangkat
langsung dengan perangkat keras yang ada
lunak dan perangkat keras yang terpadu
di dalam mikroprosesor. Setiap perintah
menjadi satu. Rancangan perangkat lunak
dalam set instruksi dikodekan dalam heksa
dan perangkat keras sebuah mikroprosesor
desimal.
dikembangkan secara simultan sebelum

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
27  SISTEM MIKROPROSESOR dan MIKROKONTROLER

1.1. Internal Software Design 1.1.2. Reduce Instruction Set


Ada tiga model arsitektur mikroprosesor Computer (RISC)
dilihat dari perangkat lunak dalam bentuk set RISC merupakan arsitektur instruction

instruksi sebagai software design. Ketiga set yang menekankan kepada

jenis arsitektur mikroprosesor yaitu: (1) kesederhanaan instruksi “bekerja sedikit”

Complex Instruction Set Computer (CISC), tetapi tetap memberikan hasil performansi

(2) Reduce Instruction Set Computer yang tinggi. Hal ini bisa terjadi karena

(RISC), dan (3) Mikroprosesor Superskalar. proses eksekusi instruksinya sangat cepat.
Arsitektur ini lebih baru dibandingkan
1.1.1. Complex Instruction Set dengan arsitektur CISC. Arsitektur RISC
Computer (CISC) memiliki sedikit instruksi banyak register.
Contoh mikroprosesor dengan artsitektur
Pada mulanya dalam industri komputer,
RISC adalah AMD 2900, MIPS R2000, SUN
pemrograman dilakukan menggunakan
SPARC, MC 8800, ATMET 90S1200,
bahasa assembly atau kode-kode bahasa
90S2313, 90S2323, 90S2343, 90S4434,
mesin. Pemrograman semacam ini sangat
90S8515. Ciri-ciri RISC :
powerful dan mudah menggunakan
• Instruksi bersifat tunggal
instruksi. Perancang CPU mencoba
• Ukuran instruksi umumnya 4 byte
membuat instruksi yang dapat melakukan
• Jumlah mode pengalamatan (Addresing
berbagai perintah kerja. CISC adalah jenis
mode) lebih sedikit dibawah lima,
arsitektur mikroprosesor yang menggunakan
banyak jenis dan ragam instruksi. CISC • Tidak ada mode pengalamatan tidak

menyediakan kemampuan setiap instruksi langsung (inderect addresing mode),

dapat mengeksekusi operasi low-level, • Tidak ada operasi yang menggabungkan

seperti men-load data dari memori, operasi operasi Load/Store dengan operasi

aritmetika, dan melakukan prosedur aritmetika,

penyimpanan ke memori. Mikroprosesor • Setiap instruksi dalam satu lokasi memori

jenis ini memiliki kemampuan eksekusi memiliki lebih dari satu operand.

cepat. Contoh mikroprosesor dengan • Tidak mendukung sembarang peralatan


arsitektur CISC adalah Intel 8088, 8085, • Satu instruksi satu alamat data,
8086, Zilog Z-80 CPU, NS 32016, MC6800. • Minimal 32 register interger dapat dirujuk
Karena jumlah instruksi lebih banyak jenis secara eksplisit,
dan ragamnya maka kelemahan CISC • Minimal 16 register floating point
terletak pada sulitnya mengembangkan direferensikan secara eksplisit.
interpreter dan kompiler.

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
28  SISTEM MIKROPROSESOR dan MIKROKONTROLER

1.1.3. Mikroprosesor Superskalar 1.2.1. Arsitektur I/O Terisolasi


Mikroprosesor dengan arsitektur I/O
Mikroprosesor dengan arsitektur
terisolasi menggunakan disain
superskalar adalah mikroprosesor yang
pengalamatan atau pemetaan I/O terpisah
menggunakan instruksi-instruksi biasa
atau terisolasi dengan pengalamatan atau
(aritmetika, floating point, store, branch)
pemetaan memori. Pengalamatan I/O
tetapi bisa diinisialisasi secara simultan dan
menggunakan sebagian dari jumlah saluran
dapat dieksekusi secara independen.
alamat (address bus) sedangkan
Contoh mikroprosesor dengan arsitektur
pengalamatan memori menggunakan semua
superskalar antara lain: IBM RS 6000,
saluran alamat (address bus). Ini
Pentium (CISC dengan konsep superskalar).
merupakan ciri pokok dari mikroprosesor
dengan arsitektur I/O terisolasi. Ada
1.2. Internal Hardware Design pengendalian yang terpisah dan bergantian.
Internal hardware design berkaitan Pada saat mikroprosesor mengakses
dengan masalah-masalah jenis, jumlah, dan memori maka I/O harus off. Sebaliknya pada
ukuran register serta komponen lainnya. saat mikroprosesor mengakses I/O memori
Untuk dapat menginstalasikan sebuah harus off.
mikroprosesor dengan komponen lainnya
Untuk memudahkan memahami kita
seperti RWM, ROM, dan I/O sebagai
gunakan kasus sebuah mikroprosesor
komponen utama dan rangkaian Clock,
dengan arsitektur I/O terisolasi memiliki
Reset, Buffer, dan lain-lain sebagai
saluran alamat 16 bit. Jumlah lokasi memori
komponen pendukung diperlukan
maksimum yang dapat dialamati oleh
pemahaman sistem bus yang dimiliki oleh 16
mikroprosesor ini adalah 2 atau 64 Kilo
setiap mikroprosesor.
byte dan jumlah lokasi I/O yang dapat
Ada tiga jenis arsitektur mikroprosesor dialamati adalah 28 yaitu sama dengan
berdasarkan internal hardware design yaitu: 256 byte. Jadi pengalamatan memori
menggunakan seluruh saluran alamat dalam
‰ Arsitektur I/O terisolasi
hal ini 16 bit sedangkan pengalaman I/O
‰ Arsitektur I/O terpetakan dalam memori
menggunakan sebagian saluran alamat
‰ Arsitektur Harvard
dalam hal ini 8 bit.

Jenis arsitektur I/O terisolasi


menyediakan akses memori dan I/O secara
terpisah. Artinya pada saat mengakses

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
29  SISTEM MIKROPROSESOR dan MIKROKONTROLER

memori, perangkat I/O harus off. Sebaliknya I/O terisolasi disebut juga dengan I/O
pada saat mengakses I/O bagian memori akumulator.
harus off. Model arsitektur I/O terisolasi
Konsep arsitektur I/O terisolasi
dapat digambarkan seperti Gambar 2.1.
memiliki pengaruh penting pada program
komputer yaitu :
FFFF 1100 0011
¾ Instruksi yang digunakan untuk
mengakses I/O hanya dua kode operasi
Alamat 0000 - FFFF
Sel-Sel memori

yaitu IN dan OUT.


¾ Informasi/data yang ada pada

0100 1100 FF akumulator harus dialihkan pada suatu


Alamat 00- FF lokasi penyimpanan sementara sebelum
Sel-Sel I/O

ada operasi I/O berikutnya.


¾ Perlu ada tambahan instruksi pada
program pengalihan data/informasi pada
akumulator.
0000 00
Gambar 2.1. Model Arsitektur
I/O Terisolasi  Keuntungan metoda I/O terisolasi :
¾ Komputer dapat mengalihkan informasi/
Dari Gambar 2.1. terlihat jelas peta sel-
data ke atau dari CPU tanpa
sel memori terpisah atau terisolasi dengan
menggunakan memori. Alamat atau
peta sel-sel I/O. Untuk mikroprosesor
lokasi memori sepenuhnya digunakan
dengan bus alamat 16 bit yakni dari A0
untuk operasi memori bukan untuk
sampai dengan A15 sel memori berada
operasi I/O.
pada alamat 0000H sampai dengan FFFFH.
¾ Lokasi memori tidak terkurangi oleh sel-
Sedangkan sel I/O berada pada alamat
sel I/O
terpisah diantara 00H sampai dengan FFH.
¾ Instruksi I/O lebih pendek sehingga dapat

Metoda I/O terisolasi menggunakan dengan mudah dibedakan dari instruksi

akumulator pada CPU untuk menerima data memori.

dari I/O atau mengeluarkan data ke bus I/O ¾ Pengalamatan I/O menjadi lebih pendek

selama operasi input output. Tidak ada dan perangkat keras untuk pengkodean

register lain selain akumulator yang terpakai alamat lebih sederhana.

untuk akses I/O. Dengan demikian arsitektur

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
30  SISTEM MIKROPROSESOR dan MIKROKONTROLER

Sedangkan kerugian arsitektur I/O Dari Gambar 2.2. nampak bahwa sel-sel
terisolasi lebih banyak menggunakan I/O menjadi satu dengan sel-sel memori.
saluran pin pengendalian pada bus kendali Arsitektur I/O terpetakan dalam memori
dari mikroprosesornya. menunjukkan penggunaan instruksi tipe
Mikroprosesor buatan perusahaan Intel memori untuk mengakses alat-alat I/O. I/O
dan mikroprosesor buatan Zilog yang dipetakan dalam memori
menggunakan arsitektur I/O terisolasi. memungkinkan CPU menggunakan instruksi
yang sama untuk alih data ke memori
1.2.2. Arsitektur I/O Terpetakan seperti yang digunakan untuk alih data ke
dalam Memori I/O.
Sebuah pintu I/O diperlakukan seperti
Mikroprosesor dengan arsitektur I/O
sebuah lokasi memori. Keuntungan sistem
terpetakan dalam memori menyatukan
ini adalah instruksi yang dipakai untuk
sel-sel I/O dalam pengalamatan bersama
pembacaan dan penulisan memori dapat
dengan sel-sel memori. Mikroprosesor
digunakan untuk memasukkan dan
dengan arsitektur I/O terpetakan dalam
mengeluarkan data pada I/O.
memori dapat diilustrasi seperti Gambar
Kerugiannya pertama tiap satu pintu I/O
2.2.
mengurangi satu lokasi memori yang
tersedia. Kedua alamat lokasi I/O
0100 1100
memerlukan 16 bit saluran. Ketiga instruksi
Sel-sel I/O ( dalam satu peta alamat)

I/O yang dipetakan dalam memori lebih lama


dari instruksi I/O terisolasi. Gambar 2.2
Sel-Sel memori dan

Alamat 0000 - FFFF

menunjukkan bentuk pengendalian I/O


terpetakan dalam Memori.

1.2.3. Arsitektur Harvard


Arsitektur Harvard menggunakan disain
yang hampir sama dengan arsitektur I/O
terisolasi. Perbedaannya pada arsitektur
Harvard antara memori program dan memori
data dipisahkan atau diisolasi. Pemisahan
antara memori program dan memori data
Gambar 2.2. Model Arsitektur I/O
Terpetakan dalam Memori

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
31  SISTEM MIKROPROSESOR dan MIKROKONTROLER

menggunakan perintah akses memori yang 2. Feature Mikroprosesor


berbeda. Kasus pada Zilog Z-80 CPU
Mikroprosesor Zilog Z-80 CPU adalah
Arsitektur Harvard ditinjau dari
mikroprosesor 8 bit buatan Zilog dengan
kemampuan jumlah memori lebih
gambaran kemampuan sebagai berikut::
menguntungkan. Terpisahnya memori
program dengan memori data menyebabkan • Mikroprosesor 8 bit dengan arsitektur I/O
arsitektur Harvard berkemampuan memori terisolasi.

dua kali lipat kemampuan memori arsitektur • Bus alamat 16 bit dan bus data 8 bit
dengan kemampuan:
I/O terisolasi. Model pemetaan arsitektur 9 Pengalamatan memori 64 Kilo byte.
Harvard digambarkan pada Gambar 2.3. 9 Pengalamatan I/O 256 byte.
• CISC dengan 148 instruksi.
FFFF 11000011 • 8 buah register 8 bit sebagai regiter
utama.
Sel-Sel memori Program

• 8 buah register 8 bit sebagai register


Sel-Sel memori Data
Alamat 0000 - FFFF

Alamat 0000 - FFFF

alternatif.
• 4 buah register 16 bit.
• 2 buah register 8 bit fungsi khusus.
• Frekuensi Clock 2,5 MHz - 4 Mhz
01001100 FF
• Komsumsi daya: Aktif 150 mA
Alamat 00- FF
Sel-Sel I/O

• Kemasan plastic dual inline package


(PDIP)

Mikroprosesor Z-80 CPU merupakan


0000 00 mikroprosesor 8 bit yang sangat andal dan
Gambar 2.3. Model Arsitektur
populer digunakan pada zamannya.
Harvard 
Komputer Apple II dan IBM pertamakali
Selanjutnya untuk mempelajari lebih menggunakan mikroprosesor Z-80 CPU.
mendalam arsitektur sebuah mikroprosesor Dengan 40 pin mikroprosesor Z-80 CPU
secara nyata digunakan mikroprosesor Z-80 susunan kaki dan fungsi masing-masing pin
CPU sebagai studi kasus. Untuk kasus- dapat digambarkan seperti Gambar 2.4.
kasus mikroprosesor jenis lainnya dapat Pada Gambar 2.4. terlihat ada lima
dengan mudah dipahami karena merupakan kelompok pin saluran yaitu: kelompok
replika yang struktur konsepnya hampir kendali sistem, kendali CPU, kendali bus,
sama. saluran data, dan saluran alamat.

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
32  SISTEM MIKROPROSESOR dan MIKROKONTROLER

Kendali CPU menjalankan fungsi-fungsi


sebagai berikut :
M1* A0

Kendali Sistem
MREQ* A1
• M1* (Machine Cycle One= satu siklus IORQ* A2
RD* A3
mesin): merupakan pin keluaran aktif

MIKROPROSESOR ZILOG Z-80 CPU


WR* A4
rendah jika CPU sedang mengambil RFSH* A5

Saluran Alamat
sandi operasi instruksi dari memori. A6

Pada saat ini bus alamat berisi alamat A7


HALT*
A8

Kendali CPU
memori seperti data yang ada pada WAIT*
A9
INT*
register PC, dan data bus mengarah A10
NMI*
masuk. A11
RESET*
A12
• MREQ* (Memory Request = A13

Kendali Bus
permintaan memori): merupakan pin BUSRQ* A14
A15 
keluaran aktif rendah pada waktu
BUSAK* 
saluran alamat A0 s/d A15 berisi

Saluran Data
Q
alamat memori. D0
+5

• GND …
IORQ* (Input Output Request=
D7
permintaan Input Output): pin
keluaran aktif rendah pada waktu
saluran alamat A0 s/d A7 berisi Gambar 2.4 Susunan dan Konfigurasi
alamat I/O. Pin Z-80 CPU
• RD* (Read= Baca): pin keluaran aktif
rendah pada waktu CPU melakukan • HALT*: pin keluaran aktif rendah

operasi baca/memasukkan data. pada saat CPU melaksanakan


instruksi halt/berhenti.
• WR* (Write = Tulis) Keluaran aktif
• WAIT*: adalah pin masukan dibuat aktif
rendah pada waktu CPU melakukan
rendah oleh alat luar yang menyela kerja
operasi tulis/mengeluarkan data.
CPU.

• RFSH* (Refresh = penyegaran): pin • INT* (Interrupt = interupsi): pin masukan

keluaran aktif rendah jika CPU aktif rendah jika ada luar yang meminta

mengeluarkan alamat memori untuk layanan interupsi.

menyegarkan memori dinamik.

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
33  SISTEM MIKROPROSESOR dan MIKROKONTROLER

• NMI* (Non Mascable Interrupt/ interupsi Operasi komunikasi memori dan I/O

yang tidak bisa dihalangi): masukan aktif menunjukkan data dapat mengalir keluar

rendah jika ada selaan yang yang tak atau masuk CPU. Pada operasi pembacaan

dapat dihalangi. (READ) data mengalir masuk ke CPU


melalui delapan bit saluran data bus. Pada
• RESET*: masukan dibuat aktif rendah
operasi penulisan (WRITE) data mengalir
oleh alat luar untuk membuat CPU ada
keluar dari CPU. Dalam hal ini satu siklus
dalam keadaan awal.
proses hanya ada satu operasi yaitu operasi
• BUSRQ* (Buss Request = permintaan baca atau operasi tulis. Cukup nalar bahwa
bus): sinyal masukan yang dibuat aktif tidak akan pernah terjadi operasi tulis dan
rendah jika ada alat luar yang meminjam operasi baca berlangsung bersamaan.
bus sistem. Namun demikian karena siklus clock kerja
• BUSAK* (Bus Akcnowledge): keluaran CPU sangat tinggi maka kedua operasi ini
aktif rendah yang menandakana CPU akan dapat berlangsung secara cepat dan
mengijinkan peminjaman bus sistem. seakan-akan terjadi bersamaan.
Catatan : tanda * berarti aktif Low= 0
Ada dua sasaran terpisah dalam
Z-80 CPU dalam mengendalikan sistem pengalihan data yaitu memori dan I/O.
menggunakan enam pin kendali dan empat Pengendalian ini dilakukan oleh dua bit
diantaranya digunakan untuk berkomunikasi kontrol yaitu IORQ* dan MREQ*. Mode
dengan memori dan I/O. Cara operasi akses memori dan I/O digambarkan
berkomunikasinya menggunakan status bit seperti tabel 2.2.
seperti Tabel 2.1. berikut :
Tabel 2.2. Operasi komunikasi Memori atau
I/O
Tabel 2.1. Operasi Komunikasi Baca dan
Tulis Memori atau I/O

Pin Kendali Pin Kendali


Operasi Operasi
MREQ* IORQ* RD* WR* IORQ* MREQ*

Baca Data dari 0 1 Akses I/O


0 1 0 1 Memori
1 0 Akses Memori
Tulis Data ke
0 1 1 0 Memori 1 1 Stand by
Baca Data dari
1 0 0 1 I/O

1 0 1 0 Tulis Data ke I/O

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
34  SISTEM MIKROPROSESOR dan MIKROKONTROLER

3. Rancangan Hardware Internal o Koreksi aritmetika desimal (DAA=


Mikroprosesor Z-80 CPU Decimal Adjust Accumulator)

Arsitektur mikroprosesor Z-80 CPU dapat


digambarkan seperti Gambar 2.5. Dari Data
Arithmetic
Gambar 2.5. terlihat ada lima blok Logic Unit Bus 8 bit
(ALU) 8 bit Control
komponen utama yaitu: ALU, Instruction

INTERNAL DATA BUS (8 BITS)


register, Instruction decoder CPU control &
CPU
timing, Data bus control, CPU register, Instruction Register
Address bus control. Register

3.1. Arithmetic Logic Unit (ALU) Addres


Instruction 16 Bit
Bus
ALU 8 bit adalah untaian gerbang- Decoder
Control
13 bit CPU
gerbang logika yang membentuk suatu Control &
fungsi esensial yaitu operasi aritmetika CPU and Timing
System
(ADD, SUB, dan turunannya) dan operasi Control
Signal
Logika (AND, OR, XOR, INC, DEC dan Timing and
Supplay
turunannya) dalam kapasitas 8 bit. Dapat
Gambar 2.5. Blok diagram Arsitektur
membentuk operasi aritmetika 16 bit
Z-80 CPU
penjumlahan dan pengurangan dengan cara
operand ditempatkan pada dua buah
register 8 bit (Register HL, IX, dan IY). ‰ Fungsi Logika pada ALU
o Fungsi AND
o Fungsi OR
‰ Fungsi Aritmetika pada ALU
o Fungsi XOR (Exclusive OR)
o Penjumlahan (ADD = add, ADC=Add
o Putar Kanan (RRA= Rotate Right
With Carry)
Accumulator, RRCA= Rotate Right
o Pengurangan (SUB=subtract,
Circular Accumulator)
SBC= Subtract With Carry)
o Putar Kiri (RLA= Rotate Left
o Penambahan dengan satu (+1)
Accumulator, RRCA= Rotate Left Circular
(INC= Increament)
Accumulator)
o Pengurangan dengan satu (-1)
o Geser Kiri (SLA= Shift Left Arithmetic)
DEC= Decreament)
o Geser Kanan (SRA= Shift Right Arithmetic)
o Pembandingan (CP= Compare)
o Manipulasi bit (SET, RESET, dan Test)

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
35  SISTEM MIKROPROSESOR dan MIKROKONTROLER

¾ Addres Bus Control bekerja


Himpunan Himpunan
mengendalikan pengalamatan memori Register Utama Register
dan I/O. Pengalamatan memori dan I/O Alternatif

menggunakan satu register 16 bit yang Reg. A Reg. F Reg. A’ Reg. F’


disebut dengan register Program Counter
Reg. B Reg. C Reg. B’ Reg. C’
(PC).
Reg. D Reg. E Reg. D’ Reg. E’
¾ Data Bus Control bekerja mengatur arah
aliran data pada saat operasi pembacaan Reg. H Reg. L Reg. H’ Reg. L’
dan penulisan. Data bus control bekerja 8 Bit 8 Bit 16 Bit
menggunakan tri state buffer.
¾ Bagian Instruction Register dan Gambar 2.6 Susunan Register 8 bit Z-80

Instruction Decoder bekerja sebagai CPU

penerima kode bahasa mesin atau object


Ø Register A disebut juga dengan
code pada proses fetching, dan
Accumulator yaitu register penampung
pendekode object code pada saat
hasil operasi ALU.
decoding kode-kode yang diambil oleh
Ø Register F (Flag) disebut sebagai register
CPU, serta melakukan eksekusi .
status yang berfungsi untuk mencatat
status hasil sebuah operasi dalam ALU
Ø Register B. C. D. E, H, dan L adalah
¾ Register Internal Z-80 CPU
register serbaguna 8 bit yang dapat
Ø Terdiri dari 18 buah register 8 bit dan 4
dipasangkan menjadi register 16 bit
buah register 16 bit
dengan pasangan : BC, DE, dan HL yang
Ø 16 buah dari 18 buah register 8 bit di
dapat digunakan secara mandiri.
bagi menjadi dua himpunan yaitu
Ø Register A’, F’, B’, C’, D’, E’, H’, L’
himpunan register utama dan himpunan
digunakan sebagai alternatif penyimpan
register alternatif (pengganti) seperti
sementara pada saat mengamankan isi
Gambar 2.6.
register utama.
Ø Dua buah register 8 bit khusus yaitu
register I dan Register R.

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
36  SISTEM MIKROPROSESOR dan MIKROKONTROLER

¾ Register Utama 8 bit Ø Register BC, DE sebagai penyimpan

Ø Register utama adalah register 8 bit. penyimpan angka untuk cacahan/

Ø Sebagai tempat simpan data 1 byte. hitungan

Ø Isinya dapat dikutipkan dari satu register Ø Dapat dioperasikan aritmetik terhadap

ke register lainnya. data pada akumulator HL.

Ø Dapat dioperasikan aritmetik atau logik


terhadap data pada akumulator. Ø Contoh:

1. LD DE, 1900h : Register DE diisi


dengan data 1900h
Ø Contoh :
1. LD B, 1Fh : Register B diisi dengan 2. LD A, 1Fh : Register A diisi data
data 1Fh 1Fh ; A = 1Fh

2. LD C,B : Isi Register B dikutipkan 3. LD (DE), A : Data Reg. A dicopy


ke register C; C = 1Fh ke alamat 1900 ;
(1900) = 1Fh
3. LD A, 01h : Akumulator diisi 01h
4. LD HL,1900h : Register HL diisi data
4. ADD A,B : Isi Reg. B ditambahkan 1900h
ke A ; A = 20h
5. LD B, (HL) : Copy data dari
5. AND 0Fh : Data di A = 20 di AND memori yang
kan dengan 0Fh; A = 00h alamatnya dicatat
6. INC B : Isi B ditambahkan 1 ; B = oleh HL= 1900h ke
20h Reg. B; B= 1Fh

7. DEC C : Isi C dikurangi 1 ; C = 6. LD A,(DE) : Copy data dari


1Eh memori yang
alamatnya dicatat
8. LD L, C : Isi Reg. C dikutipkan ke L oleh DE= 1900h ke
; L = 1Eh Reg. A; A= 1Fh
7. ADD A, B : Data di A= 1Fh
ditambahkan dengan
¾ Register Utama 16 Bit
data di B=1Fh;
Ø Dapat dibangun menjadi register 16 bit A= 3Eh

dengan menggabungkan dua buah 8. LD (HL), A : Isi A dicopykan ke


alamat HL= 1900h;
register 8 bit pasangan BC, DE, HL.
Alamat 1900 berisi
Ø Tempat simpan 2 byte data data 3Eh
Ø Sebagai pencatat alamat memori 9. ADD HL,DE : Operasi penjumlahan
Ø Register HL, mempunyai sifat utama 16 bit; HL= 3200h
sebagai akumulator

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
37  SISTEM MIKROPROSESOR dan MIKROKONTROLER

¾ Register 16 Bit Khusus Ø Sebelum sebuah program dieksekusi PC

Ø Z-80 CPU mempunyai 4 buah register harus mencatat alamat awal program.

16 bit yaitu Program Counter (PC), Stack Ø Setelah dieksekusi PC secara otomatis

Pointer (SP), Index Register X, Index naik satu bit (Increament) sampai

Register Y. dinyatakan berhenti atau berubah


nilainya sesuai dengan sasaran
pencabangan Jump dan Branch.
PRORAM COUNTER (PC)
Ø PC juga sebagai pemegang alamat I/O
STACK POINTER (SP) menggunakan separo jumlah bit addres
INDEX REGISTER X (IX) bus yaitu dari A0 – A7.

INDEX REGISTER Y (IY)

¾ STACK POINTER (SP).


Gambar 2.7. Susunan Register 16 bit
mikroprosesor Z-80 CPU Ø Stack pointer adalah register 16 bit
sebagai pencatat atau penunjuk/pointer
alamat stack atau penggalan memori
pada daerah RWM.
¾ PROGRAM COUNTER (PC)
Ø Berhubungan dengan perintah atau
Ø Program counter adalah register 16 bit
operasi pembentukan stack dari perintah
yang sering juga disebut dengan
PUSH dan POP.
Instruction Pointer.
Ø Isi SP berubah secara otomatis pada
Ø Instruction Pointer atau PC adalah
setiap operasi PUSH dan POP.
penunjuk instruksi dalam hal ini
Ø Operasi PUSH dan POP adalah operasi
pemegang alamat memori lokasi instruksi
transfer data khusus antara register
yang akan dieksekusi oleh CPU.
dengan memori khusus jenis RWM.
Ø PC secara logika sebagai penunjuk bit
Ø Proses operasi PUSH dan POP
dari bus alamat.
menggunakan pola LIFO (Last In First
Ø Misalnya PC = 1800h = 0001 1000 0000
Out) atau FILO (First In Last Out). Data
0000b berarti kondisi biner masing-
yang masuk terakhir keluar pertama kali.
masing saluran dari bus alamat adalah
Ø Perintah PUSH bekerja menumpuk data
seperti Gambar 2.8.
dari suatu register ke memori.
A15
A14
A13
A12
A11
A10
A9
A8
A7
A6
A5
A4
A3
A2
A1
A0

Ø Perintah POP bekerja mengambil data


0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0
dari memori ke register.
Gambar 2.8. Kondisi biner saluran alamat

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
38  SISTEM MIKROPROSESOR dan MIKROKONTROLER

Ø Penggunaan PUSH – POP dibatasi oleh indeks berdasarkan alamat awal yang
luasan memori yang ada pada sistem tercatat pada register IX atau IY.
mikroprosesor. Ø Keuntungan riil dari register ini adalah
memperpendek waktu eksekusi dan lebih
menyingkat program.
Ø Contoh:

1. LD SP, 1B00h : Register SP mencatat Ø Contoh :


alamat 1B00h
2. LD BC, BBCCh : Register B = BBh dan 1. LD IX, 1900h : Register IX diisi data
C = CCh 2 byte 1900h
3. LD DE, DDEEh : Register D = DDh dan 2. LD IY, 2000h : Register IY diisi data
E = EEh 2 byte 2000h
4. PUSH DE : Simpan data DDEEh 3. LD (IX+00), 19h : Memori alamat 1900
ke stack; Alamat diisi data 19h
1AFF= DDh ; alamat 4. LD (IY+00), 20h : Memori alamat 2000
1AFE= EEh ; SP= diisi data 20h
1AFE 5. LD (IX+05), 19h : Memori alamat 1905
5. PUSH BC : Simpan data BBCCh diisi data 19h
ke stack; Alamat 6. LD (IY+05), 20h : Memori alamat 2005
1AFD= BBh ; alamat diisi data 20h.
1AFC= CCh; SP =
1AFC
6. POP IX : Isi stack dimasukkan
ke register IX; ¾ REGISTER R (Refresh)
Register IX= BBCCh;
Ø Digunakan untuk menyediakan 7 bit (A0
SP= 1AFE
7. POP IY : Isi stack dimasukkan – A6) alamat lokasi memori yang akan
ke register IY disegarkan.
Register IY = DDEEh
Ø Berfungsi untuk memelihara kesegaran
SP = 1B00H
data pada memori dinamik jenis RWM.
Ø Secara otomatis setiap 2 mili detik
¾ REGISTER INDEKS (IX dan IY) disegarkan.
Ø Register IX dan IY adalah register 16 bit Ø Tidak termanfaatkan jika menggunakan
yang independen satu sama lain. memori static. Memori dinamik adalah
Ø Digunakan untuk menyediakan alamat kapasitor dimana isi data akan bertahan
awal 16 bit pada pengalamatan dalam batas waktu tertentu sehingga
berindeks. perlu disegarkan kembali. Memori static
Ø Memiliki kemampuan untuk menunjuk adalah sebuah Flip Flop dimana data
alamat memori menggunakan angka tetap mantap dan tidak perlu
penyegaran.

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
39  SISTEM MIKROPROSESOR dan MIKROKONTROLER

¾ REGISTER INTERUPSI ( I ) B7 B6 B5 B4 B3 B2 B1 B0
o Register 8 bit yang menyediakan byte S Z - H - P/V N C
alamat orde tertinggi bila CPU memasuki
Carry
subroutin interupsi.
o Alamat interupsi orde rendah diberikan Non
oleh program melalui perangkat interupsi. Carry
Parity/
Overflow
¾ REGISTER FLAG ( F )
Half Carry
o Reguster F adalah register 8 bit pencatat
status operasi ALU yang sangat penting Zerro
dalam setiap operasi hitung dan logika
Sign
sebuah mikroprosesor.
o Status akhir dari sebuah step proses
program atau instruksi sangat dibutuhkan Gambar 2.9. Susunan Register Flag
mikroprosesor Z-80 CPU
dalam membangun keputusan.
Berdasarkan Gambar 2.9. terlihat fungsi
o Keputusan untuk mencabang atau
masing-masing bit seperti Gambar 2.10.
melompat dapat dikontrol menggunakan
status yang tercatat di Register F. Bit Logika Makna
o Bila ALU telah menyelesaikan operasi Operasi
aritmetika atau logika, hasilnya akan Aritmetika/Logika
0 tidak ada Carry atau
disimpan di register A, dan bersamaan 0 Borrow
dengan itu status operasi akan dicatat (Carry) Operasi
Aritmetika/Logika
kondisinya bit demi bit di register F. 1 ada/terjadi Carry
o Ada tujuh jenis status pada atau Borrow

Mikroprosesor Z-80 CPU antara lain: Operasi yang terjadi


0 bukan Subtract
1
Carry, Non carry, Parity/Overflow, Half (Negate) Operasi yang terjadi
1
carry, Zerro,dan Sign. Susunan dan adalah Subtract
makna masing status flag digambarkan Paritas ganjil atau
0 tidak terjadi
seperti Gambar 2.9. 2 OVERFLOW
(V/P)
o Gambar 2.9. menunjukkan susunan bit Paritas genap atau
1 terjadi OVERFLOW
dari register F mulai dari bit B0, B1, B2,
B3, B4, B5, B6, B7. 3 0 TIDAK
(X) 1 DIGUNAKAN

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
40  SISTEM MIKROPROSESOR dan MIKROKONTROLER

Bit Logika Makna Contoh :

Tidak ada Carry Penjumlahan data F3H dengan 24H


0 dari Bit 3 ke Bit 4
4
Half Carry ;
(HC) Ada Carry dari Bit 3
1 HC =0
ke Bit 4
1 110 000
5 0 TIDAK F3 = 1 1 1 1 0 0 1 1
(X) 1 DIGUNAKAN 24 = 0 0 1 0 0 1 0 0 + 
10 001 0111
Hasil Operasi ALU
0 tidak sama dengan
6 NOL
(Z) Ada Carry ;
Hasil Operasi ALU C =1
1 sama dengan NOL
Hasil Operasi ALU
0 PLUS
7 Penjumlahan data 0BH dengan 2CH
(S) Hasil Operasi ALU
1 MINUS Half Carry ;
HC =1
0001 0000
Gambar 2.10. Susunan dan fungsi logika 0B = 0 0 0 0 1 0 1 1
register F mikroprosesor Z-80 CPU. 2C = 0 0 1 0 1 1 0 0

0 0 01 1 0111

¾ Carry dan Half Carry


Tidak Ada
• Carry dicatat pada bit B0 sedangkan Half Carry ; C =0
Carry dicatat pada bit B4. Carry adalah
limpahan yang terjadi dari bit B7 ke bit
B8 untuk operasi 8 bit dan limpahan dari
bit B15 ke bit B16 untuk operasi 16 bit. • Pada operasi pengurangan SUB Bit

• Bit carry bernilai 1 jika sebuah operasi Carry pada Flag dapat bermakna

penjumlahan 8 bit melebihi FFh = 255d sebagai borrow. Dalam hal ini nilai Flag

dan untuk operasi 16 bit melebihi nilai N = 1.

FFFFh = 65535d. • Bit carry flag digunakan sebagai

• Half Carry adalah limpahan yang terjadi pendeteksi status dalam operasi JP C,

dari bit B3 ke bit B4 untuk operasi 8 bit JP NC, JR C, JR NC, CALL C, CALL NC,

dan limpahan dari bit B7 ke bit B8 untuk RET C, RET NC.

operasi 16 bit.
• Untuk lebih memahami carry dan half
carry perhatikan contoh-contoh berikut.

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
41  SISTEM MIKROPROSESOR dan MIKROKONTROLER

¾ Parity dan Overflow ¾ Sign


ƒ Digunakan untuk dua fungsi berbeda • Bit penanda bilangan ini memberikan
dalam satu bit. tanda apakah nilai hasil operasi ALU
ƒ Bit B2 dinyatakan sebagai pencatat positif atau negatif. Positf atau negatifnya
Paritas jika operasi sebelumnya adalah hasil ALU ditentukan oleh nilai bit B7
operasi logika dan B2 sebagai pencatat (MSB). Jika bit B7=1 maka nilai bilangan
Overflow jika operasi sebelumnya adalah tersebut adalah negatif dan jika bit B7=0
operasi aritmetika. maka nilai bilangan tersebut adalah
ƒ Jika operasi logika menghasilkan bit “1” positif.
dalam jumlah yang genap maka P=1 • Bit Sign diperhatikan jika bekerja dalam
dan jika operasi logika menghasilkan bit format bilangan bertanda (signed bit),
“1” dalam jumlah yang ganjil maka P=0. sedangkan jika bekerja dalam format
ƒ Overflow dapat diartikan sebagai suatu bilangan tidak bertanda (unsigned bit)
keadaan melimpah atau luber yaitu suatu maka bit sign diabaikan.
keadaan pada operasi bilangan biner
bertanda komplemen 2 melebihi batas
maksimum range (-128 sampai dengan 3.2. MODE PENGALAMATAN
(ADDRESSING MODE)
+127). Secara hukum matematis
overflow menandakan suatu keadaan
3.2.1. Immediate Addressing
yang salah. Yaitu positif tambah positif Mode
hasilnya negatif atau negatif tambah
Immediate addressing mode disebut juga
negatif hasilnya positif.
dengan istilah pengalamatan segera
¾ Zerro
merupakan cara yang paling sederhana
o Sebagai penunjuk apakah hasil operasi
untuk membangkitkan data pada destinasi
ALU bernilai nol atau tidak.
dengan cara membuat data menjadi bagian
o Sangat efektif digunakan untuk
dari opcode. Sumber data secara langsung
pendeteksian pencabangan dalam
dinyatakan sebagai bagian dari perintahnya.
perintah JP Z, JP NZ, JR Z, JR NZ,
Pada saat Z-80 CPU mengeksekusi perintah
DJNZ, CALL Z, CALL NZ, RET Z, RET
ini, program counter secara otomatis naik
NZ.
satu digit untuk mengambil data secara
o Sering membingungkan bagi pemula
langsung dari memori.
karena jika hasil operasi sama dengan
nol Z=1, dan jika hasil operasi tidak sama
nol Z=0.

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
42  SISTEM MIKROPROSESOR dan MIKROKONTROLER

Pola immediate addressing mode dan LD SP, HL copy data pada register HL
ke register SP
contoh perintahnya adalah sebagai berikut:
ADD A, B jumlahkan data register B
ke register A
Mnemonic Operand Op code Data
AND C operasikan AND data
LD A, FE 3E FE register A dengan data
Register C

Contoh:
3.2.3. Direct Addressing Mode
o Assembly Operasi (Pengalamatan Langsung)
LD A, 01h copy data 01h ke
Register A
LD B, 1Ch copy data 1Ch ke Direct addressing mode menggunakan
Register B pengalamatan dengan penunjukan alamat
LD HL,ABCDh copy data ABCDh ke
secara langsung salah satu dari 256 byte
Register HL
alamat I/O. Model dan contoh direct
addressing mode sebagai berikut:
3.2.2. Register Addressing Mode
Register addressing mode adalah model OPCODE (add) Source atau
pengalamatan alih data dimana nama Destinasi
Instruksi
register A, B, C, D, E, H, L, IX, IY, dan SP
Address PORT
digunakan sebagai bagian dari opcode
mnemonik baik sebagai source atau sebagai Data
Contoh:
destinasi. Model dan contoh register
o Assembly Operasi
addressing mode sebagai berikut:
IN A, PORTA copy data dari Port A
ke register A
OPCODE r Source atau IN A, P0RTB copy data dari Port B
Destinasi ke register A
Instruksi OUT PORTC, A copy data dari register
r A ke Port C
OUT P0RTB, A copy data dari register
Data A ke Port B
Contoh:
o Assembly Operasi 3.2.4. Indirect Addresing Mode
LD A, B copy data pada register B o Menggunakan register sebagai pencatat
ke register A
atau pemegang alamat aktual yang akan
LD B, C copy data pada register C
ke register B digunakan untuk memindahkan data

o Register itu sendiri bukan alamat

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 
43  SISTEM MIKROPROSESOR dan MIKROKONTROLER

o Menggunakan Register BC, DE, HL, dan Contoh:


SP sebagai Pointer data o Assembly Operasi
Contoh: LD A, (1800) copy data dari alamat 1800
ke register A
o Assembly Operasi
LD B, (1900) copy data dari alamat 1900
LD A, (HL) copy data dari alamat yang
ke register B
dicatat oleh HL ke register A
LD (1902),A copy data dari register A ke
LD B, (DE) copy data dari alamat yang
alamat 1902
dicatat oleh DE ke register B
LD (HL),A copy data dari register A ke
alamat yang tercatat oleh 3.2.7. Relatif Addresing Mode
HL o Mode pengalamatan dengan nilai offset
diantara –120 s/d +127.

o Bergerak mundur dari posisi program


3.2.5. Indexed Addresing Mode
o Menggunakan register sebagai pencatat counter bernilai negatif

atau pemegang alamat aktual yang akan o Nilai offset :


digunakan untuk memindahkan data e= (alamat sumber + 2) - Alamat
o Register itu sendiri bukan alamat tujuan ; dimana hasil e di komplemen
o Menggunakan Register IX dan IY duakan
sebagai Pointer data
o Bergerak maju dari posisi program
counter bernilai positif
Contoh:
o Nilai offset:
o Assembly Operasi
e = Alamat tujuan – (alamat sumber – 2)
LD A, (IX+d) copy data dari alamat yang
dicatat oleh IX+d ke
register A
LD B, (IY+d) copy data dari alamat yang
dicatat oleh IY+d ke 4. Kemasan Mikroprosesor
register B
Ada empat jenis bentuk kemasan
LD (IX+d),A copy data dari register A
ke alamat yang tercatat mikroprosesor yaitu:
oleh IX+d
Ø PDIP : Plastic Dual Inline Package
Ø PLCC : Plastic J-Lieded Chip Carrier
3.2.6. Extended Addresing Mode Ø TQFP : Plastic Gull Wing Quad Flat
o Menggunakan data immediate 16 bit Package
sebagai pencatat atau pemegang alamat Ø SOIC : Plastic Gull-wing Small
Outline
aktual yang akan digunakan untuk
memindahkan data
 

Dr.Putu Sudira, MP. Diknik tronika FT UNY


 

Anda mungkin juga menyukai