Dua model rancangan yang dinamakan Von-Neumann vs Harvard ini telah digunakan oleh mikrokontroller, yang mana salah satunya terdapat dalam mikrokontroler tersebut. Berikut ini akan kami jelaskan secara singkat tentang perbedaan keduanya jika dilihat dari pertukaran data antara CPU dan Memori.
Arsitektur von-Neumann
Mikrokontroler
yang menggunakan arsitektur von-Neuman ini mempunyai satu blok memori dan
mempunyai satu bus data 8-bit, Jika saat pertukran data menggunakan 8 jalur
ini, makan bus data akan overload dan komunikasi akan sangat lambat dan tidak
efisien. Begitu juga kalau CPU dapat membaca instruksi atau baca dan tulis data
dari memori, keduanya tidak dapat terjadi secara bersama karena data dan
instruksi menggunakan sistem bus yang sama.
Contohnya :
Jika baris
program memerintahkan register memori RAM dengan menggunakan instruksi “SS”
makah harus dinaikkan satu, maka mikrokomtroller akan melakukan :
a.
1. 1. Baca
bagian dari instruksi program yang menyatakan APA yang harus dilakukan ( dalam
hal ini instruksi “inc” berfungsi untuk perintah kenaikkan).
b. 2. Baca
lebih lanjut dari instruksi ini yang menyatakan data YANG MANA yang akan
dinalikkan ( dalam hal ini adalah register “SS”).
c. 3. Setelah
dinaikkan isi dari register harus dituliskan kembali ke register yang sebelumnya
telah dibaca ( alamat rsgister “SS”
Arsitektur Harvard
Mikrokontroller yang mempunyai arsitektur
ini memiliki dua bus yang berbeda. Dari CPU ke RAM dihubungkan oleh satu bus 8-bit. CPU dapat
membaca instruksi dan membaca memori data pada saat bersamaan. Karena semua
register memori RAM lebarnya 8-bit, semua pertukaran data dalam mikrokontroller
menggunakan format yang sama, sehingga selama eksekusi penulisan data hanya
8-bit yang diperhatikan. Yang perlu kalian perhatikan saat merancang program
adalah lebar data yang bisa di pertukarkan atau diproses hanya selebar 8-bit
saja.
Program yang kalian buat di beberapa mikrokontroler ini akan tersimpan kedalam Flash ROM setelah dikompilasi kedalam bahasa mesin. Lokasi memori ini dinyatakan dalam 12,14, atau 16-bit. Dan sebagian lainnya seperti 4, 6, atau 8-bit digunakan sebagai instruksi sendiri
Keistimewaanya :
- Didalam program semua datanya selebar 8-bit. semua instruksi dapat dieksekusi hanya dengan satu siklus instruksi, kecuali instruksi lompat (jump) yang dieksekusi dalam dua siklus.
- ROM dan RAM terpisah, CPU dapat mengeksekusi dua intruksi sekaligus. setelah pembacaan dan penulisan di RAM instruksi berikutnya akan dibaca melalui bus yang lain.
- jika menggunakan arsitektur Von-Neuman kita tidak bisa tahu seberapa banyak memory yang dibutuhkan oleh beberapa instruksi. karena masing-masing instruksi program pada dasarnya membutuhkan dua lokasi memori.
- untuk mikrokontroller dengan arsitektur Harvard, pada bus program biasanya lebih dari 8-bit yang memperbolehkan masing-masing word mengandung instruksi dan data dengan kata lain satu word-satu instruksi
No comments:
Post a Comment
Silahkan berkomentar dengan sopan