A.
Arsitektur Mikroprocessor
Arsitektur mikroprosesor biasanya berkaitan dengan bangunan, rancangan
atau desain sebuah mikroprosesor. Desain sebuah mikroprosesor dengan ciri-ciri
pokok yang sering disebut dengan features sebuah mikroprosesor
dapat dipelajari dengan baik melalui Internal Software - Hardware Design. Pemahaman dan
pengkajian mendalam terhadap rancangan software dan hardware yang disebut juga
dengan istilah arsitektur akan sangat membantu dalam pemrograman mikroprosesor.
Arsitektur sebuah mikroprosesor menunjukkan rancangan tentang perangkat
lunak dan perangkat keras yang terpadu menjadi satu. Rancangan perangkat lunak
dan perangkat keras sebuah mikroprosesor dikembangkan secara simultan sebelum
sebuah mikroprosesor diproduksi. Arsitektur perangkat lunak mikroprosesor
disebut juga dengan set instruksi. Setiap mikroprosesor memiliki set instruksi
tersendiri yang terdiri dari sejumlah instruksi yang dapat bekerja di dalam
perangkat keras mikroprosesor.
Internal software design berkaitan dengan
bentuk atau rancangan set instruksi (instruction set) yang digunakan.
Set instruksi sebuah mrikroprosesor dibangun dan dikembangkan bersamaan dengan
pengembangan rancangan perangkat keras mikroprosesornya. Setiap perintah dalam
set instruksi harus bekerja pada saat proses decoding yang
dilakukan oleh perangkat keras mikroprosesor. Disebut internal software
karena set instruksi berkaitan langsung dengan perangkat keras yang ada di
dalam mikroprosesor. Setiap perintah dalam set instruksi dikodekan dalam heksa
desimal.
Pemahaman yang baik terhadap arsitektur mikroprosesor sangat membantu
kemampuan pengembangan program sistem mikroprosesor. Arsitektur mikroprosesor
berkaitan dengan rancangan software dan hardware internal sebuah mikroprosesor.
B. Internal Software Design
Ada tiga model arsitektur mikroprosesor dilihat dari perangkat lunak
dalam bentuk set instruksi sebagai software design yaitu:
1)
Complex Instruction Set
Computer (CISC)
2)
Reduce Instruction Set Computer (RISC)
3)
Mikroprosesor Superskalar
1. Complex Instruction Set Computer (CISC)
2.Reduce Instruction Set Computer (RISC)
Pada mulanya
dalam industri komputer, pemrograman dilakukan menggunakan bahasa assembly atau
kode-kode bahasa mesin. Pemrograman semacam ini sangat powerfuldan
mudah menggunakan instruksi. Perancang CPU mencoba membuat instruksi yang dapat
melakukan berbagai perintah kerja. 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.
Mikroprosesor jenis ini memiliki kemampuan eksekusi cepat. Contoh mikroprosesor
dengan arsitektur CISC adalah Intel 8088, 8085, 8086, Zilog Z-80 CPU, NS 32016,
MC6800. Karena jumlah instruksi lebih banyak jenis dan ragamnya maka kelemahan
CISC terletak pada sulitnya mengembangkan interpreter dan kompiler.
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. Arsitektur ini lebih baru dibandingkan
dengan arsitektur CISC. Arsitektur RISC memiliki sedikit instruksi banyak
register. Contoh mikroprosesor dengan artsitektur RISC adalah AMD 2900, MIPS
R2000, SUN SPARC, MC 8800, ATMET 90S1200, 90S2313, 90S2323, 90S2343, 90S4434,
90S8515.
Ciri-ciri RISC :
·
Instruksi bersifat tunggal
·
Ukuran instruksi umumnya 4 byte
·
Jumlah mode pengalamatan (Addresing
mode) lebih sedikit dibawah lima,
·
Tidak ada mode pengalamatan tidak
langsung (inderect addresing mode),
·
Tidak ada operasi yang menggabungkan
operasi Load /Store dengan operasi aritmetika,
·
Setiap instruksi dalam satu lokasi
memori memiliki lebih dari satu operand.
·
Tidak mendukung sembarang peralatan
·
Satu instruksi satu alamat data,
·
Minimal 32 register interger dapat
dirujuk secara eksplisit,
·
Minimal 16 register floating
point direferensikan secara eksplisit.
3. Mikroprosesor Superskalar
Mikroprosesor dengan arsitektur superskalar adalah mikroprosesor yang
menggunakan instruksi-instruksi biasa (aritmetika, floating point,
store, branch) tetapi bisa diinisialisasi secara simultan dan dapat
dieksekusi secara independen. Contoh mikroprosesor dengan arsitektur
superskalar antara lain: IBM RS 6000, Pentium (CISC dengan konsep superskalar).
C. Internal Hardware Design
Internal hardware design berkaitan dengan
masalah-masalah jenis, jumlah, dan ukuran register serta komponen lainnya.
Untuk dapat menginstalasikan sebuah mikroprosesor dengan komponen lainnya
seperti RWM, ROM, dan I/O sebagai komponen utama dan rangkaian Clock, Reset,
Buffer, dan lain-lain sebagai komponen pendukung, diperlukan pemahaman sistem
bus yang dimiliki oleh setiap mikroprosesor.
Ada tiga jenis
arsitektur mikroprosesor berdasarkan internal hardware design yaitu:
a)
Arsitektur I/O terisolasi
b)
Arsitektur I/O terpetakan dalam
Memori
c)
Arsitektur Harvard
1. Arsitektur I/O Terisolasi
Mikroprosesor dengan arsitektur I/O terisolasi menggunakan disain
pengalamatan atau pemetaan I/O terpisah atau terisolasi dengan pengalamatan
atau pemetaan memori. Pengalamatan I/O menggunakan sebagian dari jumlah saluran
alamat (address bus) sedangkan pengalamatan memori menggunakan semua
saluran alamat (address bus). Ini merupakan ciri pokok dari
mikroprosesor dengan arsitektur I/O terisolasi. Ada pengendalian yang terpisah
dan bergantian.
Pada saat mikroprosesor mengakses memori maka I/O harus off. Sebaliknya
pada saat mikroprosesor mengakses I/O memori harus off.
Untuk memudahkan memahami kita gunakan kasus sebuah mikroprosesor dengan
arsitektur I/O terisolasi memiliki saluran alamat 16 bit. Jumlah lokasi memori
maksimum yang dapat dialamati oleh mikroprosesor ini adalah 216 atau 64 Kilo
byte dan jumlah lokasi I/O yang dapat dialamati adalah 28 yaitu sama dengan 256
byte. Jadi pengalamatan memori menggunakan seluruh saluran alamat dalam hal ini
16 bit sedangkan pengalaman I/O menggunakan sebagian saluran alamat dalam hal
ini 8 bit.
Jenis arsitektur I/O terisolasi menyediakan akses memori dan I/O secara
terpisah. Artinya pada saat mengakses memori, perangkat I/O harus off.
Sebaliknya pada saat mengakses I/O bagian memori harus off. Model arsitektur
I/O terisolasi terlihat jelas peta selsel memori terpisah atau terisolasi
dengan peta sel-sel I/O. Untuk mikroprosesor dengan bus alamat 16 bit yakni
dari A0 sampai dengan A15 sel memori berada pada alamat 0000H sampai dengan
FFFFH. Sedangkan sel I/O berada pada alamat terpisah diantara 00H sampai dengan
FFH.
Metoda I/O terisolasi menggunakan akumulator pada CPU untuk menerima
data dari I/O atau mengeluarkan data ke bus I/O selama operasi input output.
Tidak ada register lain selain akumulator yang terpakai untuk akses I/O. Dengan
demikian arsitektur I/O terisolasi disebut juga dengan I/O akumulator.
Konsep arsitektur I/O terisolasi
memiliki pengaruh penting pada program komputer yaitu :
·
Instruksi yang
digunakan untuk mengakses I/O hanya dua kode operasi yaitu IN dan OUT.
·
Informasi/data yang
ada pada akumulator harus dialihkan pada suatu lokasi penyimpanan sementara
sebelum ada operasi I/O berikutnya.
·
Perlu ada tambahan
instruksi pada program pengalihan data/informasi pada akumulator.
·
Komputer dapat mengalihkan
informasi/data ke atau dari CPU tanpa menggunakan memori. Alamat atau lokasi
memori sepenuhnya digunakan untuk operasi memori bukan untuk operasi I/O.
·
Lokasi memori tidak terkurangi oleh
selsel I/O
·
Instruksi I/O lebih pendek sehingga
dapat dengan mudah dibedakan dari instruksi memori.
·
Pengalamatan I/O menjadi lebih pendek
dan perangkat keras untuk pengkodean alamat lebih sederhana.
Sedangkan kerugian arsitektur I/O terisolasi lebih banyak menggunakan
saluran pin pengendalian pada bus kendali dari mikroprosesornya. Mikroprosesor
buatan perusahaan Intel dan mikroprosesor buatan Zilog menggunakan arsitektur
I/O terisolasi.
2. Arsitektur I/O Terpetakan dalam Memori
Mikroprosesor dengan arsitektur I/O terpetakan dalam memori menyatukan
sel-sel I/O dalam pengalamatan bersama dengan sel-sel memori. Mikroprosesor
dengan arsitektur I/O terpetakan dalam memori dapat diilustrasi nampak bahwa
sel-sel I/O menjadi satu dengan sel-sel memori. Arsitektur I/O terpetakan dalam
memori menunjukkan penggunaan instruksi tipe memori untuk mengakses alat-alat
I/O. I/O yang dipetakan dalam memori memungkinkan CPU menggunakan instruksi
yang sama untuk alih data ke memori seperti yang digunakan untuk alih data ke
I/O
.
Sebuah pintu I/O diperlakukan seperti sebuah lokasi memori. Keuntungan
system ini adalah instruksi yang dipakai untuk pembacaan dan penulisan memori
dapat digunakan untuk memasukkan dan mengeluarkan data pada I/O.
Kerugiannya pertama tiap satu pintu I/O mengurangi satu lokasi memori
yang tersedia. Kedua alamat lokasi I/O memerlukan 16 bit saluran. Ketiga
instruksi I/O yang dipetakan dalam memori lebih lama dari instruksi I/O
terisolasi. Gambar 2.2 menunjukkan bentuk pengendalian I/O terpetakan dalam
Memori.
1. 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 menggunakan perintah akses memori yang berbeda.
Arsitektur Harvard ditinjau dari kemampuan jumlah memori lebih
menguntungkan. Terpisahnya memori program dengan memori data menyebabkan
arsitektur Harvard berkemampuan memori dua kali lipat kemampuan memori
arsitektur I/O terisolasi.
Studi Kasus Arsitektur
Mikroprosesor
Selanjutnya untuk mempelajari lebih
mendalam arsitektur sebuah mikroprosesor secara nyata digunakan mikroprosesor
Z-80 CPU sebagai studi kasus. Untuk kasuskasus mikroprosesor jenis lainnya
dapat dengan mudah dipahami karena merupakan replika yang struktur konsepnya
hampir sama.
Kasus pada Zilog Z-80 CPU
Mikroprosesor
Zilog Z-80 CPU adalah mikroprosesor 8 bit buatan Zilog dengan gambaran kemampuan
sebagai berikut :
ü Mikroprosesor 8 bit dengan arsitektur I/O terisolasi.
ü Bus alamat 16 bit dan bus data 8 bit dengan kemampuan:
§
Pengalamatan
memori 64 Kilo byte.
§
Pengalamatan
I/O 256 byte.
ü CISC dengan 148 instruksi.
ü 8 buah register 8 bit sebagai register utama.
ü 8 buah register 8 bit sebagai register alternatif.
ü 4 buah register 16 bit.
ü 2 buah register 8 bit
fungsi khusus.
ü Frekuensi Clock 2,5
MHz - 4 Mhz
ü Komsumsi daya: Aktif
150 mA
ü Kemasan plastic dual inline package (PDIP)
Mikroprosesor
Z-80 CPU merupakan mikroprosesor 8 bit yang sangat andal dan populer digunakan
pada zamannya. Komputer Apple II dan IBM pertamakali menggunakan mikroprosesor
Z-80 CPU. Dengan 40 pin mikroprosesor Z-80 CPU susunan kaki dan fungsi
masing-masing pin dapat digambarkan seperti Gambar dibawah ,terlihat ada lima
kelompok pin saluran yaitu: kelompok kendali sistem, kendali CPU, kendali bus,
saluran data, dan saluran alamat.
Kendali CPU menjalankan
fungsi-fungsi sebagai berikut :
v
M1* (Machine
Cycle One= satu siklus mesin): merupakan pin keluaran aktif rendah jika CPU
sedang mengambil sandi operasi instruksi dari memori. Pada saat ini bus alamat
berisi alamat memori seperti data yang ada pada register PC, dan data bus
mengarah masuk.
v
MREQ* (Memory Request = permintaan memori): merupakan pin
keluaran aktif rendah pada waktu saluran alamat A0 s/d A15 berisi alamat
memori.
v
IORQ* (Input Output Request= permintaan Input Output): pin
keluaran aktif rendah pada waktu saluran alamat A0 s/d A7 berisi alamat I/O.
v
RD* (Read=
Baca): pin keluaran aktif rendah pada waktu CPU melakukan operasi
baca/memasukkan data.
v WR*(Write = Tulis) Keluaran
aktif rendah pada waktu CPU melakukan operasi tulis/mengeluarkan data.
v RFSH* (Refresh = penyegaran):
pin keluaran aktif rendah jika CPU mengeluarkan alamat memori untuk menyegarkan
memori dinamik.
v HALT*: pin keluaran aktif
rendah pada saat CPU melaksanakan instruksi halt/berhenti.
v WAIT*: adalah pin masukan
dibuat aktif rendah oleh alat luar yang menyela kerja CPU.
v INT* (Interrupt = interupsi):
pin masukan aktif rendah jika ada luar yang meminta layanan interupsi.
v NMI* (Non Mascable Interrupt/
interupsi yang tidak bisa dihalangi): masukan aktif rendah jika ada selaan yang
yang tak dapat dihalangi.
v RESET*: masukan dibuat aktif
rendah oleh alat luar untuk membuat CPU ada dalam keadaan awal.
v BUSRQ* (Buss Request =
permintaan bus): sinyal masukan yang dibuat aktif rendah jika ada alat luar
yang meminjam bus sistem.
v BUSAK* (Bus Akcnowledge):
keluaran aktif rendah yang menandakana CPU mengijinkan peminjaman bus sistem. Catatan
: tanda * berarti aktif Low= 0
ConversionConversion EmoticonEmoticon