Untuk
memahami bagaimana mikroprosesor bekerja dalam sistem mikroprosesor dapat
menggunakan kasus proses execution sequence.
Execution sequence
adalah proses atau langkah sebuah eksekusi program yang terjadi dan berlangsung
pada sebuah sistem mikroprosesor.
Sebuah mikroprosesor harus dapat melakukan
proses proses sebagai berikut:
Fetch data
atau mengambil data baik dari memori maupun dari I/O dengan proses baca (read)
data.
Proses
data atau mengolah data dalam
salah satu operasi aritmetika atau logika.
Write data atau menulis
data ke memori atau I/O.
Fetch Instruction
atau mengambil instruksi yaitu membaca instruksi dari memori .
Interpret Instruction
yaitu proses mengintepretasikan/ menterjemahkan instruksi.
Instruksi
harus didekode untuk menentukan aksi dari suatu instruksi yang harus dilakukan.
Instruksi dalam bahasa mesin berbentuk
kode-kode biner dalam heksadesimal. Setiap perintah dikodekan dan disusun dalam
sebuah set instruksi.
Untuk mendapatkan gambaran yang jelas,
bagaimana bagian-bagian dari sebuah komputer atau sistem
mikroprosesor bekerja perhatikan contoh ilustrasi Gambar 1.9. dibawah
ini sampai komputer dapat mengeksekusi sebuah
program sederhana.
Contoh
ini menggunakan tiga perintah program dengan contoh
kasus sebagai
berikut:
Memasukkan
sebuah nilai dari keyboard yang terhubung ke Port pada alamat 05h.
Menambahkannya dengan 07 dari nilai yang
terbaca.
Mengeluarkan hasil
penambahan ke display yang terhubung ke Port
alamat 02h.
Untuk menjelaskan proses ini digunakan ilustrasi
gambar 1.9. Diasumsikan CPU (8088
atau 8086) mengambil instruksi dan data dari memori satu
byte, kode biner yang tersimpan di memori adalah
lokasinya mulai
dari alamat 00100h seperti gambar 1.9. Aksi pertama dari komputer mengerjakan
langkah
pengambilan byte instruksi pertama di memori. Langkah ini dinyatakan dengan
baris 1A. Untuk menjalankan proses tersebut disebut sequence atau urutan
prosesnya adalah sebagai berikut:
1A. CPU
membangkitkan alamat instruksi pertama 00100h ke memori
melalui bus
alamat.
Pembangkitan alamat dimaksudkan untuk menunjuk byte perintah program pada
alamat 00100h yang ada di memori.
1B. CPU
membangkitkan sinyal kendali pembacaan memori (MREQ* dan RD*) untuk mengambil
byte perintah yang telah dirujuk alamatnya yaitu 00100h pada memori.
1C. Byte
instruksi diambil dari memori dan dialihkan ke CPU melalui bus data. Ini disebut
sebagai proses baca memori.
2A.
Alamat lokasi memori berikutnya disiapkan untuk mengambil byte instruksi ke dua.
Pengambilan byte instruksi ditunjuk melalui bus alamat dengan cara menambahkan
satu (increament) pencacah program menjadi 00101h.
2B. CPU
membangkitkan sinyal kendali pembacaan memori untuk mengambil byte perintah
kedua yang telah dirujuk alamatnya pada memori satu tingkat diatas alamat
sebelumnya yaitu 00101h.
2C. Byte
alamat port 05h dikirim dari memori ke CPU melalui data bus.
2D. CPU
mengirim keluar alamat port menggunakan bus alamat
2E. CPU mengirim sinyal kendali pembacaan port
(IORQ* dan RD*).
2F. Data
dari port dikirim ke CPU melalui bus data.
3A. CPU
mengirim alamat instruksi berikutnya (00102h) ke memori.
3B. CPU
membangkitkan sinyal kendali pembacaan memori.
3C. Byte
instruksi diambil dari memori dan dialihkan ke CPU melalui bus data.
4A.
Alamat lokasi memori berikutnya disiapkan untuk mengambil byte instruksi
berikutnya.
4B. CPU
membangkitkan sinyal kendali pembacaan memori
4C. Angka
07h dikirim dari memori ke CPU melalui data bus
5A. CPU
mengirimkan alamat instruksi berikutnya
ke memori
5B. CPU
membangkitkan sinyal kendali pembacaan memori
5C. Byte
instruksi diambil dari memori dan dialihkan ke CPU melalui data bus
6A.
Alamat lokasi memori berikutnya disiapkan untuk mengambil byte instruksi
berikutnya.
6B. CPU
membangkitkan sinyal kendali pembacaan memori
6C. Byte
alamat port dikirim dari memori ke CPU melalui data bus
6D. CPU
mengirim alamat port pada address bus
6E. CPU
mengirim data ke port melalui data bus
6F. CPU
mengirim sinyal write ke Port
PROGRAM
1. Membaca
input dari Port 05
2.
Menambahkan nilai terbaca dengan 07
3.
Mengeluarkan hasil penjumlahan ke Port
02
Rangkuman
Operasi Komputer Sederhana
CPU melakukan fetching data instruksi atau data dari memori (membaca memori)
dengan mengeluarkan alamat memori yang diakses
melalui bus
alamat dan sinyal pembacaan memori melalui
bus kendali. Instruksi atau data dalam memori yang
teralamati dikirim dari memori ke CPU melalui data
bus.
CPU dapat menulis data dalam RAM dengan mengirim keluar sebuah alamat
melalui address bus, mengirim data melalui data bus, dan membangkitkan sinyal
kendali penulisan melalui control bus.
Untuk membaca data dari Port, CPU mengirim alamat port malalui addres bus
dan mengirim sinyal pembacaan I/O malalui control bus. Data
dari Port
dialihkan ke CPU malalui data bus.
Untuk menulis data ke Port CPU mengirim alamat port malalui addres bus dan mengirim sinyal
penulisan I/O malaui control bus. Data dari CPU dialihkan ke Port malalui data
bus.
Komputer melakukan pengambilan setiap instruksi program dalam SEQUENCE,
mendekode instruksi dan selanjutnya melakukan eksekusi.
Halo kak, artikelnya menarik dan menginspirasi cek website kami juga kak Pabrik Mesin Air RO Malang
ReplyDelete