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).
1. Arsitektur Komputer Von Noumann
LDAA $4000 ; A <– $4000
Pada dasarnya komputer arsitektur Von Neumann adalah terdiri dari elemen sebagai berikut:
Prosesor, merupakan pusat dari kontrol dan pemrosesan instruksi pada komputer.üKelebihan dan Kelemahan
Memori, digunakan untuk menyimpan informasi baik program maupun data.ü
ü Perangkat input-output, berfungsi sebagai m
edia yang menangkap respon dari luar serta menyajikan informasi keluar sistem komputer.
Model kerja dari arsitektur dasar Von Neumann dapat dilihat pada Gambar 1. Pada gambar tersebut prosesor terdiri atas Unit Kontrol (CU) dan Unit Logika dan Aritmatik (ALU). Memori berfungsi sebagai tempat menyimpan instruksi yang sedang dijalankan oleh prosesor, lalu hasilnya dapat disajikan melalui perangkat input/output.
Prosesor atau Central Processing Unit (CPU)
CPU merupakan tempat untuk melakukan pemrosesan instruksi-instruksi dan pengendalian sistem komputer.
Perkembangan perangkat CPU mengikuti generasi dari sistem komputer.
Pada generasi pertama CPU terbuat dari rangkaian tabung vakum sehingga memiliki ukuran yang sangat besar. Pada generasi kedua telah diciptakan transistor sehinga ukuran CPU menjadi lebih kecil dari sebelumnya. Pada generasi ketiga CPU telah terbuat dari rangkaian IC sehingga ukurannya menjadi lebih kecil. Pada generasi keempat telah diciptakan teknologi VLSI dan ULSI sehingga memungkinkan ribuan sampai jutaan transistor tersimpan dalam satu chip.
o Control Unit (CU).
Control Unit atau Unit Kontrol berfungsi untuk mengatur dan mengendalikan semua peralatan yang ada pada sistem komputer. Unit kendali akan mengatur kapan alat input menerima data dan kapan data diolah serta kapan ditampilkan pada alat output.
Unit ini juga mengartikan instruksi-instruksi dari program komputer, membawa data dari alat input ke memori utama, dan mengambil data dari memori utama untuk diolah.
Bila ada instruksi untuk perhitungan aritmatika atau perbandingan logika, maka unit kendali akan mengirim instruksi tersebut ke ALU. Hasil dari pengolahan data dibawa oleh unit kendali ke memori utama lagi untuk disimpan, dan pada saatnya akan disajikan ke alat output.
o Arithmatic and Logic Unit (ALU).
Arithmatic and Logic Unit atau Unit Aritmetika dan Logika berfungsi untuk melakukan semua perhitungan aritmatika (matematika) dan logika yang terjadi sesuai dengan instruksi program. ALU menjalankan operasi penambahan, pengurangan, dan operasi-operasi sederhana lainnya pada input-inputnya dan memberikan hasilnya pada register output.
o Register
Register merupakan alat penyimpanan kecil yang mempunyai kecepatan akses cukup tinggi, yang digunakan untuk menyimpan data dan instruksi yang sedang diproses, sementara data dan instruksi lainnya yang menunggu giliran untuk diproses masih disimpan di dalam memori utama. Setiap register dapat menyimpan satu bilangan hingga mencapai jumlah maksimum tertentu tergantung pada ukurannya. Register-register dapat dibaca dan ditulis dengan kecepatan tinggi karena berada pada CPU.
Beberapa jenis register adalah:
Program Counter (PC), merupakan register yang menunjuk ke instruksi berikutnya yang harus diambil dan dijalankan.ü
Instruction Register (IR), merupakan register yang menyimpan instruksi yang sedang dijalankan. General Purpose Register, merupakan register yang memiliki kegunaaan umum yang berhubungan dengan data yang diproses.ü
ü Memory Data Register (MDR), merupakan register yang digunakan untuk menampung data atau instruksi hasil pengiriman dari memori utama ke CPU atau menampung data yang akan direkam ke memori utama dari hasil pengolahan oleh CPU.
Memory address register (MAR), merupakanü register yang digunakan untuk menampung alamat data atau instruksi pada memori utama yang akan diambil atau yang akan diletakkan.
Sebagianü besar komputer memiliki beberapa register lain, sebagian digunakan untuk tujuan umum, dan sebagian lainnya untuk tujuan khusus.
o Bus
Bus merupakan penghubung antara semua komponen CPU. Bus berupa sekumpulan kabel-kabel paralel untuk mentransmisikan alamat (address), data, dan sinyal-sinyal kontrol.
Keuntungan lain dengan arrrsitektur Von Neumann adalah pada fleksibilitas pengalamatan program dan data. Biasanya program selalu ada di ROM dan data selalu ada di RAM. 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). Contohnya adalah data look-up-table yang ditaruh di ROM. Data ini ditempatkan di ROM agar tidak hilang pada saat catu daya mati. Pada mikroprosesor Von Neumann, instruksi yang membaca data look-up-table atau program pengambilan data di ROM, adalah instruksi pengalamatan biasa. Sebagai contoh, pada mikrokontroler 8bit Motorola 68HC11 program itu ditulis dengan :
LDAA $4000 ; A <– $4000
Program ini adalah instruksi untuk mengisi accumulator A dengan data yang ada di alamat 4000 (ROM).
Instruksi tersebut singkat hanya perlu satu baris saja. Pada prinsipnya, kode biner yang ada di ROM atau di RAM bisa berupa program dan bisa juga berupa data.
Arsitektur Von Neumann bukan tidak punya kelemahan, diantaranya 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.
2. Arsitektur Komputer Harvard
Pada mikroprosesor yang berarsitektur Harvard, overlaping pada saat menjalankan instruksi bisa terjadi. Satu instruksi biasanya dieksekusi dengan urutan fetch (membaca instruksi ), decode (pengalamatan), read (membaca data), execute (eksekusi) dan write (penulisan data) jika perlu. Secara garis besar ada dua hal yang dilakukan prosesor yaitu fetching atau membaca perintah yang ada di memori program (ROM) dan kemudian diikuti oleh executing berupa read/write dari/ke memori data (RAM). Karena pengalamatan ROM dan RAM yang terpisah, ini memungkinkan CPU untuk melakukan overlaping pada saat menjalankan instruksi. Dengan cara ini dua instruksi yang beurutan dapat dijalankan pada saat yang hampir bersamaan. Yaitu, pada saat CPU melakukan tahap executing instruksi yang pertama, CPU sudah dapat menjalankan fetching instruksi yang ke-dua dan seterusnya. Ini yang disebut dengan sistem pipeline, sehingga program keseluruhan dapat dijalankan relatif lebih cepat.Arsitektur Harvard
prinsip pipelineKelebihan dan Kekurangan
Pada arsitektur Harvard, lebar bit memori program tidak mesti sama dengan lebar memori data. Misalnya pada keluarga PICXX dari Microchip, ada yang memiliki memori program dengan lebar 12,14 atau 16 bits, sedangkan lebar data-nya tetap 8 bits. Karena bandwith memori program yang besar (16 bits), opcode dan operand dapat dijadikan satu dalam satu word instruksi saja. Tujuannya adalah supaya instruksi dapat dilakukan dengan lebih singkat dan cepat.
Kedua hal di atas inilah yang membuat prosesor ber-arsitektur Harvard bisa memiliki CPI yang kecil. PICXX dari Microchip dikenal sebagai mikroprosesor yang memiliki 1 siklus mesin (machine cycle) untuk tiap instruksinya, kecuali instruksi percabangan.
Arsitektur Havard menggunakan memori terpisah untuk program dan data dengan alamat dan bus data yang berdiri sendiri. Karena dua perbedaan aliran data dan alamat, maka tidak diperlukan multiplexing alamat dan bus data. Arsitektur ini tidak hanya didukung dengan bus paralel untuk alamat dan data, tetapi juga menyediakan organisasi internal yang berbeda sedemikian rupa instruksi dapat diambil dan dikodekan ketika berbagai data sedang diambil dan dioperasikan. Lebih lanjut lagi, bus data bisa saja memiliki ukuran yang berbeda dari bus alamat. Hal ini memungkinkan pengoptimalan bus data dan bus alamat dalam pengeksekusian instruksi yang cepat. 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.
Dari segi kapasitas memori, tentu arsitektur Harvard memberi keuntungan. Karena memori program dan data yang terpisah, maka kavling total memori program dan data dapat menjadi lebih banyak. Mikrokontroler 8bit Motorola 68HC05 memiliki peta memori 64K yang dipakai bersama oleh RAM dan ROM. Oleh sebab itu pengalamatan ROM dan RAM hanya dapat mencapai 64K dan tidak lebih. Sedangkan pada mikrokontroler Intel keluarga 80C51 misalnya, memori program (ROM) dan memori data (RAM) masing-masing bisa mencapai 64K.
Tetapi ada juga kekurangannya, 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. Tetapi instruksi itu keseluruhannya menjadi program yang lebih panjang seperti contoh program dengan 80C51 berikut ini.
MOV DPTR,#4000 ;DPTR = $4000
CLR A ;@A = 0
MOVC A,@A+DPTR ;A <– (DPTR+@A)
Urutan program di atas adalah :
Bandingkan dengan instruksi 68HC11 yang cukup dengan satu instruksi LDAA $4000.
- load/isi data pointer dengan #4000
- set accumulator A = 0 sebagai offset
- load/isi accumulator A dengan data di alamat 4000+offset
Perbedaan Von Noumann dan Harvard
Arsitektur Harvard dan Von Neuman keduanya memiliki kelebihan sekaligus juga kekurangan. Dalam memilih prosesor tentu saja tidak hanya dengan mempertimbangkan arsitekturnya. Motorola dengan varian singlechip-nya ada yang dilengkapi dengan konventer A/D dan D/A, PWM control, port I/O, EEPROM dan sebagainya. Tetapi tidak ketinggalan juga keluarga Intel 80C51 dan klonnya, memperkenalkan bus serial I2C yang sangat praktis untuk penambahan devais eksternal. Intel based MCS-51 adalah arsitektur yang paling banyak diadopsi misalnya oleh Philips dan Atmel, sehingga kompatibilitas diantaranya semakin besar.
Arsitektur Havard menggunakan memori terpisah untuk program dan data dengan alamat dan bus data yang berdiri sendiri. Karena dua perbedaan aliran data dan alamat, maka tidak diperlukan multiplexing alamat dan bus data.
Multiplexing
Definisi Multiplexing
Multiplexing adalah Teknik menggabungkan beberapa sinyal untuk dikirimkan secara bersamaan pada suatu kanal transmisi. Dimana perangkat yang melakukan Multiplexing disebut Multiplexer atau disebut juga dengan istilah Transceiver / Mux. Dan untuk di sisi penerima, gabungan sinyal - sinyal itu akan kembali di pisahkan sesuai dengan tujuan masing – masing. Proses ini disebut dengan Demultiplexing. Receiver atau perangkat yang melakukan Demultiplexing disebut dengan Demultiplexer atau disebut juga dengan istilah Demux.
Tujuan Muliplexing
Bertujuan meningkatkan effisiensi penggunaan bandwidth / kapasitas saluran transmisi dengan cara berbagi akses bersama.
Jenis Teknik Multiplexing
Teknik Multiplexing yang umum digunakan adalah :
a. Time Division Multiplexing (TDM) :
- Synchronous TDM
- Asynchronous TDM
b. Frequency Division Multiplexing (FDM)
c. Code Division Multiplexing (CDM)
d. Wavelength Division Multiplexing (WDM)
e. Optical code Division Multiplexing (ODM)
Multiplexing adalah Teknik
menggabungkan beberapa sinyal untuk dikirimkan secara bersamaan pada
suatu kanal transmisi. Dimana perangkat yang melakukan Multiplexing
disebut Multiplexer atau disebut juga dengan istilah Transceiver /
Mux. Dan untuk di sisi penerima, gabungan sinyal - sinyal itu akan
kembali di pisahkan sesuai dengan tujuan masing – masing. Proses ini
disebut dengan Demultiplexing. Receiver atau perangkat yang melakukan
Demultiplexing disebut dengan Demultiplexer atau disebut juga dengan
istilah Demux.
Tujuan Muliplexing bertujuan meningkatkan effisiensi penggunaan bandwidth / kapasitas saluran transmisi dengan cara berbagi akses bersama.
Jenis Teknik Multiplexing
Teknik Multiplexing yang umum digunakan adalah :
a. Time Division Multiplexing (TDM) :
- Synchronous TDM
- Asynchronous TDM
b. Frequency Division Multiplexing (FDM)
c. Code Division Multiplexing (CDM)
d. Wavelength Division Multiplexing (WDM)
e. Optical code Division Multiplexing (ODM) - See more at: http://kiteklik.blogspot.co.id/2011/07/multiplexing-jaringan-komputer.html#sthash.sGmRjBgy.dpuf
Tujuan Muliplexing bertujuan meningkatkan effisiensi penggunaan bandwidth / kapasitas saluran transmisi dengan cara berbagi akses bersama.
Jenis Teknik Multiplexing
Teknik Multiplexing yang umum digunakan adalah :
a. Time Division Multiplexing (TDM) :
- Synchronous TDM
- Asynchronous TDM
b. Frequency Division Multiplexing (FDM)
c. Code Division Multiplexing (CDM)
d. Wavelength Division Multiplexing (WDM)
e. Optical code Division Multiplexing (ODM) - See more at: http://kiteklik.blogspot.co.id/2011/07/multiplexing-jaringan-komputer.html#sthash.sGmRjBgy.dpuf
Multiplexing adalah Teknik
menggabungkan beberapa sinyal untuk dikirimkan secara bersamaan pada
suatu kanal transmisi. Dimana perangkat yang melakukan Multiplexing
disebut Multiplexer atau disebut juga dengan istilah Transceiver /
Mux. Dan untuk di sisi penerima, gabungan sinyal - sinyal itu akan
kembali di pisahkan sesuai dengan tujuan masing – masing. Proses ini
disebut dengan Demultiplexing. Receiver atau perangkat yang melakukan
Demultiplexing disebut dengan Demultiplexer atau disebut juga dengan
istilah Demux.
Tujuan Muliplexing bertujuan meningkatkan effisiensi penggunaan bandwidth / kapasitas saluran transmisi dengan cara berbagi akses bersama.
Jenis Teknik Multiplexing
Teknik Multiplexing yang umum digunakan adalah :
a. Time Division Multiplexing (TDM) :
- Synchronous TDM
- Asynchronous TDM
b. Frequency Division Multiplexing (FDM)
c. Code Division Multiplexing (CDM)
d. Wavelength Division Multiplexing (WDM)
e. Optical code Division Multiplexing (ODM) - See more at: http://kiteklik.blogspot.co.id/2011/07/multiplexing-jaringan-komputer.html#sthash.sGmRjB
Tujuan Muliplexing bertujuan meningkatkan effisiensi penggunaan bandwidth / kapasitas saluran transmisi dengan cara berbagi akses bersama.
Jenis Teknik Multiplexing
Teknik Multiplexing yang umum digunakan adalah :
a. Time Division Multiplexing (TDM) :
- Synchronous TDM
- Asynchronous TDM
b. Frequency Division Multiplexing (FDM)
c. Code Division Multiplexing (CDM)
d. Wavelength Division Multiplexing (WDM)
e. Optical code Division Multiplexing (ODM) - See more at: http://kiteklik.blogspot.co.id/2011/07/multiplexing-jaringan-komputer.html#sthash.sGmRjB
Multiplexing adalah Teknik
menggabungkan beberapa sinyal untuk dikirimkan secara bersamaan pada
suatu kanal transmisi. Dimana perangkat yang melakukan Multiplexing
disebut Multiplexer atau disebut juga dengan istilah Transceiver /
Mux. Dan untuk di sisi penerima, gabungan sinyal - sinyal itu akan
kembali di pisahkan sesuai dengan tujuan masing – masing. Proses ini
disebut dengan Demultiplexing. Receiver atau perangkat yang melakukan
Demultiplexing disebut dengan Demultiplexer atau disebut juga dengan
istilah Demux.
Tujuan Muliplexing bertujuan meningkatkan effisiensi penggunaan bandwidth / kapasitas saluran transmisi dengan cara berbagi akses bersama.
Jenis Teknik Multiplexing
Teknik Multiplexing yang umum digunakan adalah :
a. Time Division Multiplexing (TDM) :
- Synchronous TDM
- Asynchronous TDM
b. Frequency Division Multiplexing (FDM)
c. Code Division Multiplexing (CDM)
d. Wavelength Division Multiplexing (WDM)
e. Optical code Division Multiplexing (ODM) - See more at: http://kiteklik.blogspot.co.id/2011/07/multiplexing-jaringan-komputer.html#sthash.sGmRjBgy.dpuf
Tujuan Muliplexing bertujuan meningkatkan effisiensi penggunaan bandwidth / kapasitas saluran transmisi dengan cara berbagi akses bersama.
Jenis Teknik Multiplexing
Teknik Multiplexing yang umum digunakan adalah :
a. Time Division Multiplexing (TDM) :
- Synchronous TDM
- Asynchronous TDM
b. Frequency Division Multiplexing (FDM)
c. Code Division Multiplexing (CDM)
d. Wavelength Division Multiplexing (WDM)
e. Optical code Division Multiplexing (ODM) - See more at: http://kiteklik.blogspot.co.id/2011/07/multiplexing-jaringan-komputer.html#sthash.sGmRjBgy.dpuf
0 komentar:
Posting Komentar