Arsitektur
Von-Neumann vs. Harvard
Semua mikrokontroler menggunakan satu diantara dua model rancangan yang
dinamakan arsitektur Harvard dan von-Neumann. Berikut secara singkat, perbedaan
keduanya dilihat dari pertukaran data antara CPU dan memori.
Arsitektur von-Neumann
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:
- Baca
bagian dari instruksi program yang menyatakan APA yang harus dilakukan
(dalam kasus ini adalah instruksi “inc” untuk perintah kenaikkan);
- Baca
lebih lanjut dari instruksi ini yang menyatakan data YANG MANA yang akan
dinaikkan (alam kasus ini adalah register “SS”);
- 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 & Kekurangan Model 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 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-kelebihan:
- 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.
- 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.
- 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 Komputer Model Harvard
a.
arsitektur Harvard tidak memungkinkan untuk menempatkan data pada ROM.
b.
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.
(http://agfi.staff.ugm.ac.id/blog/index.php/2009/01/mikrokontroler-arsitektur-von-neumann-vs-harvard/)
Apakah arti ‘x86′, ‘x32′ dan
‘x64′ dalam istilah komputer ?
Untuk mengerti istilah ‘x86′, saya akan bercerita
sedikit tentang masa lalu dari personal computer (PC).
Saat
awal-awal PC mulai dikenal kalau tidak salah sekitar akhir 1980-an atau awal
1990-an, produk yang terkenal adalah Apple Macintosh dan IBM 8086. Perbedaan
kebijakan dari keduanya yang membuat perkembangan keduanya juga berbeda.
Kebijakan Apple terhadap teknologi Macintosh mereka adalah bersifat tertutup
dan hanya dikembangkan oleh Apple sendiri. Sedangkan kebijakan IBM terhadap
teknologi 8086 mereka adalah bersifat terbuka sehingga arsitektur 8086 boleh
dikembangkan/ditiru oleh pihak lain.
Dengan
begitu maka perkembangan teknologi Macintosh sangat tergantung pada pihak Apple
sendiri sedangkan teknologi 8086 dikembangkan oleh banyak perusahaan yang
saling berlomba menghasilkan yang terbaik. Teknologi 8086 berkembang terus
menjadi 80286 (lebih dikenal dengan singkatannya yaitu “286″), 286 XT (Extended
Technology), 286 AT (Advanced Technology), 386 dan 486.
Kelemahan
dari ‘hanya menggunakan kode angka’ untuk nama produk (misal 486) adalah
‘angka’ tidak dapat dipatenkan, sehingga semua perusahaan menggunakan istilah
yang sama untuk produk mereka (286/386/486). Teknologi ini pun juga lebih
dikenal dengan istilah ‘IBM PC 286/386/486 Compatible’. Karena itulah maka
sebagian besar user tidak dapat membedakan dari perusahaan mana (Intel, AMD,
IBM atau yang lain) sistem yang mereka pakai.
Merasa
teknologinya paling baik, Intel ingin mempatenkan produknya. Menginjak sistem
80586 (586), Intel tidak lagi menggunakan ‘kode angka’ untuk produknya, tetapi
dengan memberinya nama yaitu PENTIUM yang kabarnya berasal dari kata PENTA yang
berarti ’5′. Karena produknya sudah memiliki nama (Pentium), Intel kemudian
mempatenkan dan menjadikannya merek dagang. Langkah tersebut juga diikuti oleh
perusahaan lainnya misalkan AMD memberi nama Athlon dan IBM memberi nama Cyrix.
Sejak saat itu semua perusahaan sudah memberi nama yang berbeda untuk
produknya.
Jadi..
istilah x86 secara umum digunakan untuk mengacu pada semua sistem (prosesor)
yang merupakan keturunan dari IBM 8086 (keluarga x86) apakah itu 286, 386, 486,
Pentium, Athlon, dll baik 32 bit maupun 64 bit. Prosesor yang tidak termasuk
x86 antara lain adalah PowerPC, ARM dan Sparc.
Untuk
istilah ‘x32′ dan ‘x64′ langsung saja saya jelaskan. Saat kita download atau
install Sistem Operasi, Aplikasi atau Driver terkadang juga ada istilah x32 dan
x64. Berikut adalah arti dari pilihan-pilihan tersebut:
x32 : Bisa berarti Prosesor 32 bit atau Sistem Operasi (Operating System / OS) 32
bit. Sistem Operasi 32 bit adalah untuk Prosesor 32 bit yang biasanya juga
tetap bisa berjalan baik pada Prosesor 64 bit walaupun tidak maksimal.
x64 : Bisa berarti Prosesor 64 bit atau Sistem Operasi (Operating System / OS)
64 bit. Sistem Operasi 64 bit hanya dapat digunakan pada Prosesor 64 bit.
Catatan:
- Ironis.. IBM sebagai perancang
sistem (prosesor) 8086 kini malah sudah tidak lagi memproduksi sistem
(prosesor) x86. Kini AMD dan Intel yang merajai pasar x86.
- Prosesor 64bit pertama kali
dikeluarkan oleh AMD yang diberi nama x86-64, kemudian diganti menjadi
AMD64.
Sekian,
mungkin penjelasannya terlalu panjang ya hanya untuk sekedar mengetahui arti
x32, x64 dan x86
Tapi dengan
mengetahui sejarahnya maka akan lebih mudah untuk memahami & mengingatnya..
Karena
tulisan ini sebagian besar saya buat berdasar ingatan saya sejak saya awal
mengenal komputer, maka jika ada yang kurang tepat mohon dikoreksi.
Arsitektur ARM
Arsitektur ARM
merupakan arsitektur prosesor 32-bit RISC yang dikembangkan oleh ARM Limited.
Dikenal sebagai Advanced RISC Machine dimana sebelumnya dikenal sebagai Acorn
RISC Machine. Pada awalnya merupakan prosesor desktop yang sekarang
didominasi oleh keluarga x86. Namun desain yang sederhana membuat prosesor ARM
cocok untuk aplikasi berdaya rendah. Hal ini membuat prosesor ARM mendominasi
pasar mobile electronic dan embedded system dimana membutuhkan
daya dan harga yang rendah.
Pada tahun 2007, sekitar 98% dari
satu miliar mobile phone yang terjual menggunakan setidaknya satu buah
prosesor ARM. Dan pada tahun 2009, prosesor ARM mendominasi sekitar 90% dari
keseluruhan pasar prosesor 32-bit RISC. Prosesor ARM digunakan di berbagai
bidang seperti elektronik umum, termasuk PDA, mobile phone, media player, music
player, game console genggam, kalkulator dan periperal komputer seperti hard
disk drive dan router.
Lisensi
arsitektur ARM dimiliki oleh Alcatel, Atmel, Broadcom, Cirrus Logic, Digital
Equipment Corporation, Freescale, Intel melalui DEC, LG, Marvell Technology
Group, NEC, NVIDIA, NXP Semiconductors, OKI, Quallcomm, Samsung, Sharp, ST
Microelectronics, Symbios Logic, Texas Instruments, VLSI Technology, Yamah dan
ZiiLABS.
Tidak ada komentar:
Posting Komentar