Pemahaman yang baik terhadap arsitektur mikroprosesor sangat membantu kemampuan pengembangan program sistem mikroprosesor. Arsitektur mikroprosesor berkaitan dengan rancangan software dan hardware internal sebuah mikroprosesor.
Jenis Arsitektur Mikroprosesor
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 prosesdecoding yang dilakukan oleh perangkat keras mikroprosesor. Disebut internal softwarekarena 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.
A. 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
- Complex Instruction Set Computer (CISC)
Pada mulanya dalam industri komputer, pemrograman dilakukan menggunakan bahasaassembly 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.
- Reduce Instruction Set Computer (RISC)
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).
B. 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:
(1) Arsitektur I/O terisolasi
(2) Arsitektur I/O terpetakan dalam Memori
(3) 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.
Keuntungan metoda I/O terisolasi :
- 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.
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 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.