September 26, 2014

ARSITEKTUR VON NEUMANN & ARSITEKTUR HAVARD

Sebuah komputer kecil di satu sirkuit terpadu yang dinamakan mikrokontroler menggunakan sebuah arsitektur komputer yang satu diantara dua model rancangan yang buat oleh John von Neumann dan John HarvardArsitektur yang sampai kini masih banyak digunakan.


Arsitektur von-Neumann 




Arsitektur yang diciptakan oleh John von Neumann(1903-1957). Arsitektur von Neumann ini menggambarkan komputer dengan empat bagian utama: Unit Aritmatika dan Logis(ALU), Unit Kontrol, Memori, dan Input/Output(I/O). Bagian ini dihubungkan oleh  Interconnection(bus).


Mikrokontroler yang menggunakan arsitektur ini hanya memiliki satu blok memori dan satu bus data 8-bit. Karena pertukaran data semuanya menggunakan 8 jalur ini, bus akan overload dan komunikasi menjadi sangat lambat dan tidak efisien. Sebaliknya CPU dapat membaca instruksi atau baca/tulis data dari/ke memori. Keduanya tidak dapat terjadi secara bersamaan karena data dan instruksi menggunakan sistem bus yang sama. Misalnya, jika sebuah baris program memerintahkan register memori RAM dengan nama “SS” harus dinaikkan satu (misalnya menggunakan instruksi: inc SS), maka mikrokontroler akan melakukan:

1.      Baca bagian dari instruksi program yang menyatakan APA yang harus dilakukan (dalam kasus ini adalah instruksi “inc” untuk perintah kenaikkan);
2.      Baca lebih lanjut dari instruksi ini yang menyatakan data YANG MANA yang akan dinaikkan (alam kasus ini adalah register “SS”);
3.      Setelah dinaikkan, isi dari register ini harus dituliskan kembali ke register yang sebelumnya telah dibaca (alamat register “SS”).
Bus data yang sama digunakan untuk keseluruhan operasi ini…

Kelebihan arsitektur von Neumann:
          Kelebihan Von Neumann adalah pada fleksibilitas pengalamatan program dan data. Biasanya program selalu ada di (ROM=Read Only Memory ) dan data selalu ada di (RAM=Random Access Memory). Arsitektur Von Neumann memungkinkan prosesor untuk menjalankan program yang ada didalam memori data (RAM). Misalnya pada saat power on, dibuat program inisialisasi yang mengisi byte di dalam RAM. Data di dalam RAM ini pada gilirannya nanti akan dijalankan sebagai program. Sebaliknya data juga dapat disimpan di dalam memori program (ROM).

Kekurangan arsitektur von Neumann:

        Kekurangan Arsitektur Von Neumann adalah bus tunggalnya itu sendiri. Sehingga instruksi untuk mengakses program dan data harus dijalankan secara sekuensial dan tidak bisa dilakukan overlaping untuk menjalankan dua isntruksi yang berurutan. Selain itu bandwidth program harus sama dengan banwitdh data. Jika memori data adalah 8 bits maka program juga harus 8 bits. Satu instruksi biasanya terdiri dari opcode (instruksinya sendiri) dan diikuti dengan operand (alamat atau data). Karena memori program terbatas hanya 8 bits, maka instruksi yang panjang harus dilakukan dengan 2 atau 3 bytes. Misalnya byte pertama adalah opcode dan byte berikutnya adalah operand. Secara umum prosesor Von Neumann membutuhkan jumlah clock CPI (Clock per Instruction) yang relatif lebih banyak dan walhasil eksekusi instruksi dapat menjadi relatif lebih lama.

Arsitektur Harvard


Mikrokontroler yang menggunakan arsitektur ini memiliki dua bus yang berbeda. Satu bus 8-bit dan menghubungkan CPU ke RAM. Yang lain terdiri dari beberapa jalur (12, 14 atau 16) dan menghubungkan CPU ke ROM. Dengan demikian, CPU dapat membaca instruksi dan mengakses memori data pada saat yang bersamaan. Karena semua register memori RAM lebarnya 8-bit, semua pertukaran data dalam mikrokontroler menggunakan format yang sama, sehingga selama eksekusi penulisan data, hanya 8-bit yang diperhatikan. Dengan kata lain, yang perlu Anda perhatikan saat merancang program adalah lebar data yang bisa dipertukarkan atau diproses hanya selebar 8-bit, ya hanya selebar 8-bit saja.

Program yang Anda buat untuk beberapa mikrokontroler ini akan tersimpan di dalam ROM internal (Flash ROM) setelah dilakukan kompilasi ke bahasa mesin. Lokasi memori ini dinyatakan dalam 12, 14 atau 16-bit. Sebagian dari bit, 4, 6 atau 8-bit digunakan sebagai instruksinya sendiri dan diikuti dengan data 8-bit.

Kelebihan arsitektur Harvard:
  1. Semua data di dalam program selebar 1 byte (8-bit). Karena bus data yang digunakan dalam pembacaa program memiliki beberapa jalur (12, 14 atau 16), instruksi dan data dapat dibaca dibaca sekaligus. Dengan demikian, semua instruksi dapat dieksekusi hanya dengan satu siklus instruksi, kecuali instruksi lompat (jump) yang dieksekusi dalam dua siklus.
  2. Kenyataan bahwa program (ROM) dan data sementara (RAM) terpisah, CPU dapat mengeksekusi dua instruksi sekaligus. Gampangnya, selama proses pembacaan dan penulisan RAM (akhir dari suatu instruksi), instruksi berikutnya dibaca melalui bus yang lain.
  3. Jika menggunakan mikrokontrole menggunakan arsitektur Von-Neumann kita tidak bisa tahu seberapa banyak memori yang dibutuhkan oleh beberapa instruksi. Pada dasarnya, masing-masing instruksi program membutuhkan dua lokasi memori (satu mengandung instruksi APA yang harus dilakukan, sedangkan sisanya mengandung informasi data YANG MANA akan diproses).
Kekurangan arsitektur Harvard:
  1. arsitektur Harvard tidak memungkinkan untuk menempatkan data pada ROM.
  2. arsitektur in tidak memungkinkan untuk mengakses data yang ada di ROM.

Pada mikrokontroler dengan arsitektur Harvard, bus program biasanya lebih dari 1 byte, yang membolehkan masing-masing word mengandung instruksi dan data, dengan kata lain satu word - satu instruksi.


Sumber:
http://agfi.staff.ugm.ac.id/blog/index.php/2009/01/mikrokontroler-arsitektur-von-neumann-vs-harvard/
http://id.wikipedia.org/wiki/Arsitektur_von_Neumann
http://dejavapoetra.blogspot.com/2011/10/arsitektur-komputer-von-neumann-harvard.html







No comments:

Post a Comment