Arsitektur MISD & Arsitektur SIMD

Arsitektur komputer berkaitan dengan atribut – atribut yang mempunyai dampak langsung pada eksekusi logis sebuah program. Misal : Set Instruksi, jumlah bit yang digunakan untuk penyajian data, mekanisme I/O, teknik pengalamantan (addressing techniques).
Ilustrasi, perbedaan antara arsitektur dan organisasi, pabrik komputer menawarkan sekelompok model komputer, yang semuanya memiliki arsitektur yang sama tetapi dengan organisasi yang berbeda. Akibatnya, model – model yang berbeda akan memiliki harga dan karakteristik kinerja yang berbeda. Selain itu suatu arsitektur dapat bertahan selama bertahun – tahun dan meliputi sejumlah model komputer yang berbeda, namun organisasinya dapat berubah – ubah sesuai seiring dengan perkembangan teknologi.
  • MISD Multiple Instruction Stream, Single Data Stream
jenis komputasi paralel arsitektur di mana banyak unit fungsional melakukan operasi yang berbeda pada data yang sama. Pipa arsitektur termasuk tipe ini, meskipun purist mungkin mengatakan bahwa data berbeda setelah pengolahan oleh setiap tahap dalam pipa. Komputer toleransi kegagalan mengeksekusi instruksi yang sama secara berlebihan dalam rangka untuk mendeteksi dan masker kesalahan, dengan cara yang dikenal sebagai replikasi tugas , dapat dianggap milik jenis ini. Tidak banyak contoh arsitektur ini ada, sebagai MIMD dan SIMD sering lebih tepat untuk data teknik paralel umum. Secara khusus, mereka memungkinkan skala yang lebih baik dan penggunaan sumber daya komputasi daripada MISD tidak. Namun, salah satu contoh yang menonjol dari MISD dalam komputasi adalah Space Shuttle komputer kontrol penerbangan.


  • SIMD Single Instruction Stream, Multiple Data Stream
Kelas komputer paralel dalam taksonomi Flynn . Ini menggambarkan komputer dengan beberapa elemen pemrosesan yang melakukan operasi yang sama pada beberapa titik data secara bersamaan. Dengan demikian, mesin tersebut memanfaatkan data tingkat paralelisme . SIMD ini terutama berlaku untuk tugas umum seperti menyesuaikan kontras dalam citra digital atau menyesuaikan volume audio digital . Paling modern CPU desain termasuk instruksi SIMD dalam rangka meningkatkan kinerja multimedia digunakan.
Keuntungan SIMD antara lain sebuah aplikasi yang dapat mengambil keuntungan dari SIMD adalah salah satu di mana nilai yang sama sedang ditambahkan ke (atau dikurangkan dari) sejumlah besar titik data, operasi umum di banyak multimedia aplikasi. Salah satu contoh akan mengubah kecerahan gambar. Setiap pixel dari suatu gambar terdiri dari tiga nilai untuk kecerahan warna merah (R), hijau (G) dan biru (B) bagian warna. Untuk mengubah kecerahan, nilai-nilai R, G dan B yang dibaca dari memori, nilai yang ditambahkan dengan (atau dikurangi dari) mereka, dan nilai-nilai yang dihasilkan ditulis kembali ke memori.
Dengan prosesor SIMD ada dua perbaikan proses ini. Untuk satu data dipahami dalam bentuk balok, dan sejumlah nilai-nilai dapat dimuat sekaligus. Alih-alih serangkaian instruksi mengatakan “mendapatkan pixel ini, sekarang mendapatkan pixel berikutnya”, prosesor SIMD akan memiliki instruksi tunggal yang efektif mengatakan “mendapatkan n piksel” (dimana n adalah angka yang bervariasi dari desain untuk desain). Untuk berbagai alasan, ini bisa memakan waktu lebih sedikit daripada “mendapatkan” setiap pixel secara individual, seperti desain CPU tradisional.
Keuntungan lain adalah bahwa sistem SIMD biasanya hanya menyertakan instruksi yang dapat diterapkan pada semua data dalam satu operasi. Dengan kata lain, jika sistem SIMD bekerja dengan memuat delapan titik data sekaligus operasi yang diterapkan pada data akan terjadi pada semua delapan nilai pada waktu yang sama. Meskipun sama berlaku untuk setiap desain prosesor super-skalar, tingkat paralelisme dalam sistem SIMD biasanya jauh lebih tinggi.
Kekurangannya adalah :
  • Tidak semua algoritma dapat vectorized. Misalnya, tugas aliran-kontrol-berat seperti kode parsing tidak akan mendapat manfaat dari SIMD.
  • Ia juga memiliki file-file register besar yang meningkatkan konsumsi daya dan area chip.
  • Saat ini, menerapkan algoritma dengan instruksi SIMD biasanya membutuhkan tenaga manusia, sebagian besar kompiler tidak menghasilkan instruksi SIMD dari khas C Program, misalnya. vektorisasi dalam kompiler merupakan daerah aktif penelitian ilmu komputer. (Bandingkan pengolahan vektor .)
  • Pemrograman dengan khusus SIMD set instruksi dapat melibatkan berbagai tantangan tingkat rendah.
  • SSE (Streaming SIMD Ekstensi) memiliki pembatasan data alignment , programmer akrab dengan arsitektur x86 mungkin tidak mengharapkan ini.
  • Mengumpulkan data ke dalam register SIMD dan hamburan itu ke lokasi tujuan yang benar adalah rumit dan dapat menjadi tidak efisien.
  • Instruksi tertentu seperti rotasi atau penambahan tiga operan tidak tersedia dalam beberapa set instruksi SIMD.
  • Set instruksi adalah arsitektur-spesifik: prosesor lama dan prosesor non-x86 kekurangan SSE seluruhnya, misalnya, jadi programmer harus menyediakan implementasi non-Vectorized (atau implementasi vectorized berbeda) untuk mereka.
  • Awal MMX set instruksi berbagi register file dengan tumpukan floating-point, yang menyebabkan inefisiensi saat pencampuran kode floating-point dan MMX. Namun, SSE2 mengoreksi ini.
SIMD dibagi menjadi beberapa bentuk lagi yaitu :
  1. Exclusive-Read, Exclusive-Write (EREW) SM SIMD
  2. Concurent-Read, Exclusive-Write (CREW) SM SIMD
  3. Exclusive-Read, Concurrent-Write (ERCW) SM SIMD
  4. Concurrent-Read, Concurrent-Write (CRCW) SM SIMD

(Sumber :


Organisasi Memory

Walsh dkk (1991) dalam Stein (1995) mendefinisikan memori organisasi (MO) sebagai penyimpanan informasi dari sejarah organisasi yang dapat digunakan untuk menghasilkan keputusan saat ini. Definisi tersebut kemudian diperluas oleh Stein (1995) dengan menambahkan akibat dari penggunaan MO, yaitu terjadinya peningkatan atau penurunan tingkat keefektifan organisasi, seperti mengasah kompetensi inti, meningkatkan pembelajaran organisasi, meningkatkan kemandirian, dan menurunkan biaya transaksi.
Gambar I menunjukkan Proses MO. Pengetahuan dihasilkan dari suatu proses belajar, lalu disimpan untuk kemudian dipanggil kembali, biasanya untuk mendukung pengambilan keputusan atau mengatasi suatu masalah.
Beberapa sarana untuk mempertahankan MO ditunjukkan pada tabel I. Schema adalah suatu struktur kognitif individu yang membantu orang mengatur dan memproses pengetahuan secara efisien. Script (terkadang diartikan sebagai tranformasi atau perubahan) menggambarkan urutan kejadian pada situasi yang lazim atau akrab. Sistem adalah kumpulan elemen-elemen saling terkait yang terhubung baik secara langsung maupun tidak langsung.
Walsh and Ungson (1991) dalam Rahman (2006), memaparkan bahwa tempat penyimpanan MO adalah:
  1. Individu berupa catatan atau rekaman yang berhubungan dengannya.
  2. Budaya, berupa cara belajar mempersepsikan, berpikir dan merasakan sesuatu.
  3. Perubahan atau logika yang menuntun perubahan masukan (misalnya bahan mentah, tenaga baru,  klaim asuransi ) ke dalam bentuk keluaran (misalnya produk akhir, orang perusahan yang berpengalaman, pembayaran asuransi).
  4. Struktur yaitu peran dan perilaku yang diharapkan.
  5. Ekologi yaitu pengaturan secara fisik tempat kerja (organisasi).
  6. Penyimpanan eksternal berupa dokumentasi informasi. Misalnya ingatan pekerja sebelumnya, pengetahuan pesaing, rekaman layanan keuangan perusahaan.
Perawatan pengetahuan diperlukan karena pengetahuan yang dimiliki adakalanya hilang atau rusak. Misalnya berhentinya beberapa orang pekerja lama di perusahaan.
Pemanfaatan teknologi informasi dapat memberikan informasi secara lebih cepat dan tepat, melawati batas waktu dan ruang. Teknologi penyimpanan komputer dan teknik pemanggilan kembali yang canggih, seperti bahasa query, database multimedia, dan sistem manajemen database, bisa menjadi alat efektif dalam meningkatkan memori organisasi (Alavi, 2001).



 Memori adalah bagian terpenting bagi mikrokontroler, memori terbagi 2 bagian yaitu :
  1. Memori program, memori ini digunakan untuk menyimpan program begitu direset mikrokontroler akan langsung bekerja dengan program yang ada didalamnya. Program akan selalu ada dan tersimpan meskipun tanpa power supply ataupun kehilangan catu daya. Memori program biasa disebut dengan ROM (Read Only Memory).
  2. Memori data, memori ini digunakan untuk menyimpan data pada saat program bekerja. Program akan selalu ada dan tersimpan jika power supply atau catu daya terhubung. Memori data biasa disebut dengan RAM (Random Access Memory). 
     
Memori pada intinya berfungsi untuk menyimpan suatu informasi. Memori penting bagi MCS-51 karena semua program dan data tersimpan dalam memori. Makin besar kapasitas memori yang dimiliki, sistem dapat mengakomodasi program yang lebih kompleks dan data lebih banyak. Mikrokontroler AT89C51 mempunyai struktur memori yang terdiri atas :
  1. RAM Internal, memori sebesar 128 byte yang biasanya digunakan untuk menyimpan variabel atau data yang bersifat sementara.
  2. Special Function Register (Register Fungsi Khusus), memori yang berisi register-register yang mempunyai fungsi-fungsi khusus yang disediakan oleh mikrokontroler tersebut, seperti timer, serial, dan lain-lain.
  3. Flash PEROM, memori yang digunakan untuk menyimpan intruksi-intruksi MCS51.
  4. Mikrokontroler AT89C51 mempunyai struktur memori yang terpisah antara RAM internal dan Flash PEROM-nya. Seperti yang tampak pada gambar 2.

Gambar 2
Alamat RAM Internal Dan Flash PEROM

Memori data nomor 00h sampai 7Fh bisa dipakai sebagai memori penyimpanan data biasa, dibagi menjadi tiga bagian yaitu :
  1. Memori nomor 00h samapi 18h selain sebagai memori data biasa, bisa juga dipakai sebagai register serba guna (General Purpose Register).
  2. Memori nomor 20h sampai 2Fh selain sebagai memori data biasa, bisa dipakai untuk menyimpan informasi dalam level bit.
  3. Memori nomor 30h sampai 7Fh (sebanyak 80 byte) merupakan data memori biasa, bisa dipakai untuk menyimpan data maupun dipakai sebagai tumpukan.
Gambar 3
Organisasi Komputer Mikrokontroler 

 ( Sumber :

Sistem Memory


Sistem Memori ( Memori ) adalah komponen-komponen elektronik yang menyimpan perintah- perintah yang menunggu untuk di eksekusi oleh prosesor,data yang diperlukan oleh insruksi (perintah) tersebut dan hasil-hasil dari data yang diproses ( informasi ). Memori biasanya terdiri atas satu chip atau beberapa papan sirkuit lainnya dalam prosesor. Memori komputer bisa diibaratkan sebagai papan tulis, dimana setiap orang yang masuk kedalam ruangan bisa membaca dan memanfaatkan data yang ada dengan tanpa merubah susunan yang tersaji. Data yang diproses oleh komputer, sebenarnya masih tersimpan didalam memori, dan dalam hal ini komputer hanya membaca data dan kemudian memprosesnya. Satu kali data tersimpan didalam memori komputer, maka data tersebut akan tetap tinggal disitu selamanya. Setiap kali memori penuh, maka data yang ada bisa dihapus sebagian ataupun seluruhnya untuk diganti dengan data yang baru.

1. Karakteristik sistem-sistem memori secara umum:
a. Lokasi
• CPU
Memori ini built-in berada dalam CPU (mikroprosesor) dan diperlukan untuk semua kegiatan CPU. Memori ini disebut register.
• Internal (main)
Memori ini berada di luar chip processor tetapi bersifat internal terhadap sistem komputer dan diperlukan oleh CPU untuk proses eksekusi (operasi) program, hingga dapat diakses secara langsung oleh prosesor (CPU) tanpa modul perantara. Memori internal sering juga disebut sebagai memori primer atau memori utama. Memori internal biasanya menggunakan media RAM
• External (secondary)
Memori ini bersifat eksternal terhadap sistem komputer dan tentu saja berada di luar CPU dan diperlukan untuk menyimpan data atau instruksi secara permanen. Memori ini, tidak diperlukan di dalam proses eksekusi sehingga tidak dapat diakses secara langsung oleh prosesor (CPU). Untuk akses memori eksternal ini oleh CPU harus melalui pengontrol/modul I/O. Memori eksternal sering juga disebut sebagai memori sekunder. Memori ini terdiri atas perangkat storage peripheral seperti : disk, pita magnetik,dll.
a. Kapasitas
• Ukuran word
Kapasitas memori internal maupun eksternal biasanya dinyatakan dalam bentuk byte (1 byte = 8 bit) atau word.
• Banyaknya word
Panjang word umumnya 8, 16, 32 bit.

b. Satuan Transfer
Satuan transfer sama dengan jumlah saluran data yang masuk ke dan keluar dari modul memori. Konsep satuan transfer adalah :
• Word, merupakan satuan “alami” organisasi memori. Ukuran word biasanya sama dengan jumlah bit yang digunakan untuk representasi bilangan dan panjang instruksi.
• Addressable units, pada sejumlah sistem, adressable units adalah word. Namun terdapat sistem dengan pengalamatan pada tingkatan byte. Pada semua kasus hubungan antara panjang A suatu alamat dan jumlah N adressable unit adalah 2A =N.
• Unit of tranfer, adalah jumlah bit yang dibaca atau dituliskan ke dalam memori pada suatu saat. Pada memori eksternal, tranfer data biasanya lebih besar dari suatu word, yang disebut dengan block.

c. Metode Akses
Terdapat empat jenis pengaksesan satuan data, yaitu sebagai berikut.:
• Sequential access
Memori diorganisasikan menjadi unit-unit data, yang disebut record. Aksesnya dibuat dalam bentuk urutan linier yang spesifik. Informasi pengalamatan dipakai untuk memisahkan record-record dan untuk membantu proses pencarian. Mekanisme baca/tulis digunakan secara bersama (shared read/write mechanism), dengan cara berjalan menuju lokasi yang diinginkan untuk mengeluarkan record. Waktu access record sangat bervariasi. Contoh sequential access adalah akses pada pita magnetik.
• Direct access
Seperti sequential access, direct access juga menggunaka shared read/write mechanism, tetapi setiap blok dan record memiliki alamat yang unik berdasarkan lokasi fisik. Aksesnya dilakukan secara langsung terhadap kisaran umum (general vicinity) untuk mencapai lokasi akhir. Waktu aksesnya pun bervariasi. Contoh direct access adalah akses pada disk.
• Random access
Setiap lokasi dapat dipilih secara random dan diakses serta dialamati secara langsung. Waktu untuk mengakses lokasi tertentu tidak tergantung pada urutan akses sebelumnya dan bersifat konstan. Contoh random access adalah sistem memori utama.
• Associative access
Setiap word dapat dicari berdasarkan pada isinya dan bukan berdasarkan alamatnya. Seperti pada RAM, setiap lokasi memiliki mekanisme pengalamatannya sendiri. Waktu pencariannya pun tidak bergantung secara konstan terhadap lokasi atau pola access sebelumnya. Contoh associative access adalah memori cache.
a. Kinerja
Ada tiga buah parameter untuk kinerja sistem memori, yaitu :
• Access time (Waktu Akses)
Bagi RAM, waktu akses adalah waktu yang dibutuhkan untuk melakukan operasi baca atau tulis. Sedangkan bagi non RAM, waktu akses adalah waktu yang dibutuhkan untuk melakukan mekanisme baca tulis pada lokasi tertentu
• Cycle time (Waktu Siklus)
Waktu siklus adalah waktu akses ditambah dengan waktu transien hingga sinyal hilang dari saluran sinyal atau untuk menghasilkan kembali data bila data ini dibaca secara destruktif.
• Transfer rate (Laju Pemindahan)
Transfer rate adalah kecepatan pemindahan data ke unit memori atau ditransfer dari unit memori. Bagi RAM, transfer rate sama dengan 1/(waktu siklus). Sedangkan, bagi non-RAM, berlaku persamaan sbb.:

TN = Waktu rata-rata untuk membaca / menulis sejumlah N bit.
TA = Waktu akses rata-rata
N = Jumlah bit
R = Kecepatan transfer, dalam bit per detik (bps)
a. Tipe Fisik
Ada dua tipe fisik memori, yaitu :
• Memori semikonduktor
Memori ini memakai teknologi LSI atau VLSI (very large scale integration). Memori ini banyak digunakan untuk memori internal misalnya RAM.
• Memori permukaan magnetik
Memori ini banyak digunakan untuk memori eksternal yaitu untuk disk atau pita magnetik.
b. Karakteristik Fisik
Ada dua kriteria yang mencerminkan karakteristik fisik memori, yaitu:
• Volatile dan Non-volatile
Pada memori volatile, informasi akan rusak secara alami atau hilang bila daya listriknya dimatikan. Selain itu, pada memori non-volatile, sekali informasi direkam akan tetap berada di sana tanpa mengalami kerusakan sebelum dilakukan perubahan. Pada memori ini daya listrik tidak diperlukan untuk mempertahankan informasi tersebut. Memori permukaan magnetik adalah non volatile. Memori semikonduktor dapat berupa volatile atau non volatile.
• Erasable dan Non-erasable
Erasable artinya isi memori dapat dihapus dan diganti dengan informasi lain. Memori semikonduktor yang tidak terhapuskan dan non volatile adalah ROM.
1. Hirarki Memori
Tiga pertanyaan dalam rancangan memori, yaitu : Berapa banyak? Hal ini menyangkut kaspasitas. Berapa cepat? Hal ini menyangkut waktu akses, dan berapa mahal yang menyangkut harga? Setiap spektrum teknologi mempunyai hubungan sbb:
• Semakin kecil waktu access, semakin besar harga per bit.
• Semakin besar kapasitas, semakin kecil harga per bit.
• Semakin besar kapasitas, semakin besar waktu access.
Untuk mendapatkan kinerja terbaik, memori harus mampu mengikuti CPU. Artinya apabila CPU sedang mengeksekusi instruksi, kita tidak perlu menghentikan CPU untuk menunggu datangnya instruksi atau operand. Sedangkan untuk mendapatkan kinerja terbaik, memori menjadi mahal, berkasitas relatif rendah, dan waktu access yang cepat. Untuk memperoleh kinerja yang optimal, perlu kombinasi teknologi komponen memori. Dari kombinasi ini dapat disusun hirarki memori sebagai berikut:
Semakin menurun hirarki, maka hal-hal di bawah ini akan terjadi:
a) Penurunan harga per bit
b) Peningkatan kapasitas
c) Peningkatan waktu akses
d) Penurunan frekuensi akses memori oleh CPU.
Kunci keberhasilan hirarki ini pada penurunan frekuensi aksesnya. Semakin lambat memori maka keperluan CPU untuk mengaksesnya semakin sedikit. Secara keseluruhan sistem komputer akan tetap cepat namun kebutuhan kapasitas memori besar terpenuhi.

2. Klasifikasi memori
Utama
1. RAM (Random Access Memori)
RAM diakses melalui alamat, semua lokasi yang dapat dialamati dapat diakses secara acak (random) dan membutuhkan waktu akses yang sama tanpa tergantung pada lokasi fisiknya di dalam memori. Terdapat dua jenis RAM, statik
dan dinamik.
RAM dinamik tersusun oleh sel-sel yang menyimpan data sebagai muatan Iistrik pada kapasitor.
RAM statik menyimpan nilai-nilai biner dengan menggunakan konfigurasi gerbang logika flipflop.
2. CAM (Content Addressable Memory)
Pada CAM, memori diakses berdasarkan isi, bukan alamat. Pencarian data dilakukan secara simultan dan paralel dengan basis isi memori. CAM disebut juga sebagai memori Asosiatif.
3. MEMORI CACHE
Memori utama yang digunakan sistem komputer pada awalnya dirasakan masih lambat kerjanya dibandingkan dengan kerja CPU, sehingga perlu dibuat sebuah memori yang dapat membantu kerja memori utama tersebut. Sebagai perbandingan waktu akses memori cache lebih cepat 5 sampai 10 kali dibandingkan memori utama.

Implementasi Memori Utama
1. Memori Stack
Memori Stack merupakan struktur data tidak tetap yang digunakan untuk menyimpan alamat kembali dan parameter yang dilalui dalam subroutine call dan return, memanipulasi alamat serta operasi aritmatika.

ada gambar diatas, perintah PUSH berguna untuk memanipulasi data pada stack.

2. Memori Modular
Dalam memori modular, RAM dipisah menjadi modul modul yang berbeda, yaitu MAR dan MBR. Penggunaan memori modular biasanya pada sistem dengan prosesor pipeline dan prosesor array.



3. Memori Virtual
Prinsip dasar kemampuan untuk penyimpanan logikal lebih besar daripada ruang penyimpanan riil.



( Sumber :

Pages