Breaking News

Senin, 28 September 2015

ARKOM : VON NEUMANN VS HARVARD

VON NEUMANN VS HARVARD
Ada dua kelas utama dari arsitektur komputer yaitu ‘arsitektur Havard’ dan ‘arsitektur Von  Neumann (atau Princeton).  Banyak desain khusus mikrokontroler dan DSP (Digital Signal Processor) menggunakan arsitektur Havard.
Pada Dasarnya yang membedakan Asitektur Komputer Menurut Von Neumenn dan Arsitekur komputer menurut Harvard adalah  Memori dan BUS



ARSITEKTUR VON NEUMENN
Pada arsitektur von neumann, program dan data dibagi pada ruang memori yang sama. Arsitektur von neumann menyediakan fitur penyimpanan dan modifikasi program secara mudah. Bagaimanapun, penyimpanan program tidak mungkin optimal dan membutuhkan berbagai pengumpulan program dan data untuk membentuk instruksi. Pengumpulan program dan data  diselesaikan menggunakan time division multiplexing yang akan berpengaruh pada performa mikrokontroler itu sendiri.  Salah satu contoh mikrokontroler yang menggunakan arsitektur von neumann (princeton) adalah motorola 68hc11.



KELEBIHAN DAN KELEMAHAN
1.  Kelebihan
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).

2.  Kekuranga
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.

Sebagai contoh, mikrokontroler Intel keluarga MCS-51 menggunakan arsitektur Havard karena ada perbedaan kapasitas memori untuk program dan data, dan bus terpisah (internal) untuk alamat dan data.  Begitu juga dengan keluarga PIC dari Microchip yang menggunakan arsitektur Havard.


KELEBIHAN DAN KEKURANGAN
1.   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).

2.  Kekurangan

Arsitektur Harvard tidak memungkinkan untuk menempatkan data pada ROM. Kedengarannya aneh, tetapi arsitektur ini memang tidak memungkinkan untuk mengakses data yang ada di ROM. Namun hal ini bisa diatasi dengan cara membuat instruksi dan mekanisme khusus untuk pengalamatan data di ROM. Mikroprosesor yang memiliki instruksi seperti ini biasanya disebut ber-arsitektur Modified Harvard. Instruksi yang seperti ini dapat ditemukan pada keluarga MCS-51 termasuk Intel 80C51, P87CLXX dari Philips dan Atmel AT89LSXX

PERBEDAAN ARSITEKTUR VON NEUMANN dengan HARVARD:
Arsitektur Von Neumann adalah arsitektur komputer yang menempatkan program (ROM=Read Only Memory) dan data (RAM=Random Access Memory) dalam peta memori yang sama. Arsitektur ini memiliki address dan data bus tunggal untuk mengalamati program (instruksi) dan data. Contoh dari mikrokontroler yang memakai arsitektur Von Neumann adalah keluarga 68HC05 dan 68HC11 dari Motorola.
Sebaliknya, arsitektur Harvard memiliki dua memori yang terpisah satu untuk program (ROM) dan satu untuk data (RAM). Intel 80C51, keluarga Microchip PIC16XX, Philips P87CLXX dan Atmel AT89LSXX adalah contoh dari mikroprosesor yang mengadopsi arsitektur Harvard. Kedua jenis arsitektur ini masing-masing memiliki keungulan tetapi juga ada kelemahannya.Dengan arsitektur Von Neuman prosesor tidak perlu membedakan program dan data. Prosesor tipe ini tidak memerlukan control bus tambahan berupa pin I/O khusus untuk membedakan program dan data. Karena kemudahan ini, tidak terlalu sulit bagi prosesor yang berarsitektur Von Neumann untuk menambahan peripheral eksternal seperti A/D converter, LCD, EEPROM dan devais I/O lainnya. Biasanya devais eksternal ini sudah ada di dalam satu chips, sehingga prosesor seperti ini sering disebut dengan nama mikrokontroler (microcontroller).
ARSITEKTUR CISC DAN RISC 
           PENGERTIAN CISC
Complex instruction-set computing (cisc) atau “kumpulan instruksi komputasi kompleks” adalah sebuah arsitektur dari set instruksi dimana setiap instruksi akan menjalankan beberapa operasi tingkat rendah, seperti pengambilan dari memory, operasi aritmetika, dan penyimpanan ke dalam memory, semuanya sekaligus hanya di dalam sebuah instruksi.
KARAKTERISTIK
Sarat informasi memberikan keuntungan di mana ukuran program-program yang dihasilkan akan menjadi relatif lebih kecil, dan penggunaan memory akan semakin berkurang. Karena cisc inilah biaya pembuatan komputer pada saat itu (tahun 1960) menjadi jauh lebih hemat.
Dimaksudkan untuk meminimumkan jumlah perintah yang diperlukan untuk mengerjakan pekerjaan yang diberikan. (jumlah perintah sedikit tetapi rumit) konsep cisc menjadikan mesin mudah untuk diprogram dalam bahasa rakitan
CIRI-CIRI
  • Jumlah instruksi banyak
  • Banyak terdapat perintah bahasa mesin
  • Instruksi lebih kompleks 
  • Pengaplikasian cisc yaitu pada amd dan intel
PENGERTIAN RISC
Rics singkatan dari reduced instruction set computer. Merupakan bagian dari arsitektur mikroprosessor, berbentuk kecil dan berfungsi untuk negeset istruksi dalam komunikasi diantara arsitektur yang lainnya.
KARAKTERISTIK RISC
Siklus mesin ditentukan oleh waktu yang digunakan untuk mengambil dua buah operand dari register
Operasi berbentuk dari register-ke register yang hanya terdiri dari operasi load dan store yang mengakses memori
Penggunaan mode pengalamatan sederhana
Penggunaan format-format instruksi sederhana
CIRI-CIRI
  • Instruksi berukuran tunggal
  • Ukuran yang umum adalah 4 byte
  • Jumlah pengalamatan data sedikit,
  • Tidak terdapat pengalamatan tak langsung
  • Tidak terdapat operasi yang menggabungkan operasi load/store dengan operasi aritmatika
  • Tidak terdapat lebih dari satu operand beralamat memori per instruksi
  • Tidak mendukung perataan sembarang bagi data untuk operasi load/ store.
  • Jumlah maksimum pemakaian memori manajemen bagi suatu alamat data adalah sebuah instruksi .
Pengaplikasian risc yaitu pada cpu apple

PERBEDAAN CISC dan RISC
RISC ( Reduced Instruction Set Computer )
  • Menekankan pada perangkat lunak, dengan sedikit transistor
  • Instruksi sederhana bahkan single
  • Load / Store atau memory ke memory bekerja terpisah
  • Ukuran kode besar dan kecapatan lebih tinggi
  • Transistor didalamnya lebih untuk meregister memori
CISC ( Complex Instruction Set Computer )
  • Lebih menekankan pada perangkat keras, sesuai dengan takdirnya untuk pragramer.
  • Memiliki instruksi komplek. Load / Store atau Memori ke Memori bekerjasama
  • Memiliki ukuran kode yang kecil dan kecepatan yang rendah.
  • Transistor di dalamnya digunakan untuk menyimpan instruksi – instruksi bersifat komplek

VON NEUMENN dan CISC
Berdasarkan penjelasan dari CISC dan RISC di atas. Kita dapat mengetahui bahwa CISC itu merupakan arsitektur yang akan menjalankan beberapa operasi tingkat rendah, seperti pengambilan dari memory, operasi aritmetika, dan penyimpanan ke dalam memory. Dari penjelasan tersebut bila dikaitkan dengan arsitertur von Neumenn bisa dikatakan jika arsitelktur oleh von Neumenn mempunyai kemiripan dengan CISC yaitu Arsitektur von Neumenn memiliki struktur yang komplek. Selain itu pada arsitektur yang dibuat oleh John von Neumann Kunci utamanya adalah unit pemrosesan sentral (CPU), yang memungkinkan seluruh fungsi komputer untuk dikoordinasikan melalui satu sumber tunggal. Sedangkan pada CISC adalah arsitektur dimana setiap instruksi akan menjalankan beberapa operasi tingkat rendah, Jumlah instruksi banyak, Banyak terdapat perintah bahasa mesin, Instruksi lebih kompleks . karakteristik dari CISC yang sama ini lah yang menyebabkan Arsitektur Von Neumenn juga bisa dikatakan CISC.

HARVARD dan RISC
Siklus mesin ditentukan oleh waktu yang digunakan untuk mengambil dua buah operand dari register,Operasi berbentuk dari register-ke register yang hanya terdiri dari, operasi load dan store yang mengakses memori, Penggunaan mode pengalamatan, sederhana, dan Penggunaan format-format instruksi sederhana. Berdasarkan karakteristik yang dimiliki oleh RISC mengingatkan pada arsitektur HARVAR yang pada dasarnya arsitektur ini memiliki beberapa bus yang berbeda. Karena bus data yang digunakan dalam pembaca program memiliki beberapa jalur (12, 14 atau 16), instruksi dan data dapat dibaca sekaligus. Dengan demikian, semua instruksi dapat dieksekusi hanya dengan satu siklus instruksi. Sehingga sistem kerja dari harvard ini juga bersifat sederhana.

X86 DAN ARM

X86
Arsitektur x86 adalah rancangan set instruksi komputer kompleks (complex instruction set computer) dengan panjang instruksi yang bervariasi. Word disimpan dengan urutan endian-kecil. Kompatibilitas mundur menjadi motivasi terkuat dalam pengembangan arsitektur x86 (keputusan ini menjadi sangat penting dan sering dikritik, terutama oleh pesaing dari pendukung arsitektur prosesor lainnya, yang dibuat frustasi oleh sukses yang berkelanjutan dari arsitektur ini yang secara umum dipandang memilki banyak kelemahan). Prosesor-prosesor terkini dari x86 menerapkan beberapa langkah penerjemah (dekoder) “tambahan” untuk (saat eksekusi) memecah (sebagian besar) instruksi x86 kedalam potongan-potongan kecil instruksi (dikenal dengan “micro-ops”) yang selanjutnya dieksekusi oleh arsitektur setara dengan arsitektur risc.
Bahasa rakitan dari x86 dibahas secara lebih terperinci di artikel bahasa rakitan x86.
mode real (real mode)
Intel 8086 dan 8088 dilengkapi dengan 14 16-bit register. Empat diantaranya (ax, bx, cx, dx) dirancang sebagai fungsi umum (general purpouse) (meskipun masing-masing juga memiliki fungsi khusus tambahan; misalnya hanya register cx yang dapat digunakan sebagai penghitung (counter) dalam instruksi loop). Setiap register dapat diakses sebagai dua byte (8-bit) terpisah (jadi byte-atas bx’s dapat diakses sebagai bh dan byte-bawah-nya sebagai bl). Selain itu, terdapat juga empat register segmen (cs, ds, ss dan es). Register ini digunakan untuk membangun alamat memori. Ada juga dua register penunjuk (pointer) (sp yang menunjuk pada titik awal stack, dan bp yang dapat menunjuk pada titik manapun dalam stack atau memori). Ada dua register indeks (si dan di) yang dapat digunakan sebagai penunjuk dalam array. Dan terakhir, ada sebuah register penanda (register flag) yang terdapat didalamnya penanda-penanda seperti carry, overflow, zero dan lain-lain, dan juga sebuah penunjuk instruksi (instruction pointer – ip) yang menunjuk ke alamat instruksi yang sedang dieksekusi.
 Dalam mode real, memori diakses secara tersegmentasi. Hal ini dilakukan dengan menggeser (shifting) alamat segmen 4 bit ke kiri dan menambah sebuah ofset untuk menghasilkan alamat akhir sepanjang 20-bit. Contohnya, jika ds berisi nilai a000h dan si berisi nilai 5677h, ds:si akan mengacu pada titik alamat real ds × 16 + si = a5677h. Jadi jumlah total alamat memori yang dapat diakses dalam mode real adalah 220 byte, atau 1 mib, jumlah yang sangat mengesankan di tahun 1978. Seluruh alamat memori terbagi dalam segmen dan ofset; dan setiap tipe akses (kode, data, atau stack) memiliki register segmen tertentu (untuk data register yang digunakan ds, untuk kode digunakan register cs, dan untuk stack digunakan ss). Untuk mengakses data, register segmen dapat secara langsung dipilih (dengan melakukan ubah-paksa (override) prefik segmen) dari empat register segmen yang tersedia.
Dengan aturan ini, dua pasang segmen/ofset yang berbeda bisa mengacu ke lokasi memori absolut yang sama. Jadi bila ds berisi a111h dan si 4567h, ds:si akan menunjuk ke alamat a56777h seperti di atas. Lebih lanjut, cs dan ss berperan vital bagi program agar berfungsi secara benar, sehingga hanya ds dan es yang dapat dipakai untuk mengacu ke segmen data diluar program (atau lebih tepatnya, diluar segmen program yang sedang dieksekusi) atau stack. Skema ini, yang semula bertujuan mempertahankan kompatibilitas dengan intel 8085, sering dikeluhkan oleh para programer (walaupun beberapa programer tidak terlalu mempedulikannya, dan popularitas x86 sebelum tahun-tahun mode proteksi diperkenalkan membuktikan bahwa hal ini bukan cacat yang sangat serius).
Selain itu, 8086 juga memiliki 64 kb alamat i/o 8-bit (atau 32 k-word dari 16-bit), dan satu 64 kb (satu segmen) stack di memori yang didukung oleh hardware (memakai register-register ss, sp, dan bp). Hanya word (2 byte) yang bisa di-push ke stack. Stack tumbuh ke bawah (ke arah alamat yang lebih rendah secara numerik), dengan ujung bawah diacu oleh ss:sp. Ada 256 interrupt yang dapat diaktifkan oleh hardware maupun software. Interrupt tersebut bisa bertingkat, memanfaatkan stack untuk menyimpan alamat balik.
Cpu x86 32-bit yang modern masih mendukung real mode, bahkan memulai operasi pada real mode setelah reset. Kode real mode yang dijalankan pada prosesor-prosesor tersebut bisa memanfaatkan register 32-bit dan register segmen tambahan (fs dan gs) yang mulai tersedia sejak 80386.
Mode terproteksi 16-bit (16-bit protected mode)
Prosesor 80286 dapat menjalankan operating system yang menggunakan mode real 16-bit prosesor 8086 tanpa perubahan pada os, namun prosesor ini juga mempunyai mode lain, yaitu mode terproteksi. Mode terproteksi memungkinkan program untuk mengakses ram yang berukuran 16mb, dan memiliki memori virtual hingga 1gb. Hal ini dimungkinkan karena mode terproteksi menggunakan register segmen untuk menyimpan index ke sebuah tabel segmen. Pada 80286, terdapat dua buah tabel segmen, yaitu tabel gdt dan tabel ldt, masing-masing dapat menyimpan hingga 8192 perinci segmen, tiap segment memberi akses untuk memori sebesar hingga 64kb. Tabel segmen ini menyimpan alamat dasar yang berukuran 24-bit, yang akan digunakan untuk menghitung alamat absolut dari memori yang akan digunakan. Selain itu, segmen-segmen ini dapat diberikan salah satu dari empat jenis level akses.

Walaupun dibuatnya prosesor ini merupakan pengembangan yang baik, prosesor ini sangat jarang digunakan karena mode terproteksi tidak dapat menjalankan program-program yang berjalan mode real yang sudah ada sebagai proses, karena program-program mode real sering mengakses perangkat keras secara langsung dan beberapa ada yang melakukan aritmatika segmen, sehingga tidak dapat dijalankan pada mode terproteksi.




ARM 


ARM adalah prosesor dengan arsitektur set instruksi 32­bit RISC (Reduced Instruction Set Computer) yang dikembangkan oleh ARM Holdings. ARM merupakan singkatan dari Advanced RISC Machine (sebelumnya lebih dikenal dengan kepanjangan Acorn RISC Machine). Pada awalnya ARM prosesor dikembangkan untuk PC (Personal Computer) oleh Acorn Computers, sebelum dominasi Intel x86 prosesor­ Microsoft di IBM PC kompatibel menyebabkan Acorn Computers bangkrut.

Setelah Acorn Computers bangkrut, Apple Computers (sekarang Apple Inc) dan VLSI Technology Inc membeli kekayaan intelektual Acorn Computer, dan mendirikan ARM Ltd. ARM Ltd kemudian melanjutkan proyek Acorn Computer untuk mengembangkan prosesor 32­bit dengan arsitektur RISC yang sederhana dan hemat energi.

Prosesor yang dikembangkan ARM Ltd ternyata tidak diminati oleh kalangan produsen PC, dengan alasan tidak kompatibel dengan arsitektur Intel x86. ARM Ltd kemudian memutuskan untuk tidak memproduksi ARM prosesor, tetapi melisensikan desain prosesor tersebut untuk digabungkan dengan ASIC (Application Specific IC) yang membutuhkan kontroler embedded (contoh: kontroler printer, kontroler mesin cuci, kontroler video dekoder, kontroler ethernet hub/router, dan sebagainya).

Saat ini, selain digunakan untuk ASIC, ARM prosesor juga diproduksi oleh berbagai perusahaan semikonduktor sebagai mikroprosesor terpisah (sebelumnya ARM prosesor selalu di­embeddedkan dengan ASIC) maupun mikrokontroler (dengan pengurangan berbagai fitur yang diperlukan mikroprosesor).

Perusahaan yang dulu ataupun saat ini menggunakan lisensi ARM prosesor meliputi Alcatel­Lucent, Apple Inc., Atmel, Broadcom, Cirrus Logic, Digital Equipment Corporation (DEC), Freescale, Intel (melalui akuisisi DEC), LG, Marvell Technology Group, Microsoft, NEC, Nuvoton, Nvidia, NXP (dulu Philips), Oki, Qualcomm, Samsung, Sharp, stmicroelectronics, Symbios Logic, Texas Instruments, VLSI Technology, Yamaha and ziilabs.


Berbagai macam kontroler berbasis ARM yang terkenal meliputi DEC strongarm (digunakan Intel untuk prosesor PDA), Marvell Xscale (desain Xscale dibeli Marvell dari Intel), Nintendo (untuk prosesor Gameboy, dsi, dan 3DS), Nvidia Tegra, ST­Ericsson Nomadik, Qualcomm Snapdragon, Texas Instruments OMAP product line, Samsung Hummingbird and Apple A4.
Kesimpulan
CISC Complex Instruction Set Computer sedangkan RISC merupakan kepanjangan dari Reduced Instruction Set Computer. Chip RISC dibangun mulai pertengahan tahun 1980 sebagai pengganti chip CISC. Pada dasarnya karakteristik CISC yg "sarat informasi" memberikan keuntungan di mana ukuran program-program yang dihasilkan akan menjadi relatif lebih kecil, dan penggunaan memory akan semakin berkurang. Hal inilah yang menyebabkan komputer-komputer pada saat itu memiliki harga yang murah.
Filosofi RISC berada dalam tidak satu pun chip yang menggunakan bahasa instruksi assembly yang complex, seperti yang digunakan di CISC. Untuk itulah, instruksi yang simple dan lebih cepat akan lebih baik daripada besar, complex dan lambat seperti CISC. Keuntungan RISC lainnya karena adanya instruksi yang simple, maka chip RISC hanya memiliki beberapa transistor, yang akan membuat RISC mudah didesain dan murah untuk diproduksi untuk menulis compiler yang powerful. RISC memberikan kemudahan di hardware, namun lebih kompleks di software.
 
Arasitektur 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

Designed By