Minggu, 29 Maret 2020

Mikrokontroler AVR

Teknologi Informasi & Multimedia#

Materi  : AVR ( Advance Virtual RISC )
Tema : ATtiny 2313

Nama Kelompok  :  1. Yohannes Leonard ( 17416788 )
                                 2. Denis Al Malik Aziz  ( 11416816 )
                                 3. Raymond De Lano Kawulusan  ( 16416119 )
                                 4. Dai Muchsin KF  ( 11416666 )

Kelas                    :   4IB02C



AVR
( Advance Virtual RISC )
Mikrokontroler AVR
Kata AVR dapat berarti berasal dari singkatan Alf and Vegard RISC sesuai dengan nama penggagas pertama. Reduce Instruction Set Computer (RISC) dan berarsitektur Harvard ini pertama kali dikembangkan pada tahun 1996 oleh dua orang mahasiswa Norwegian Institute of Technology yaitu Alf-Egil Bogen dan Vegard Wollan yang kemudian dikembangkan lebih lanjut oleh perusahaan Atmel. Seri pertama mikrokontroler AVR yang dikeluarkan adalah mikrokontroler 8-bit dengan nama AT90S8515, dengan konfigurasi pin yang sama dengan mikrokontroler 8051, termasuk bus alamat dan bus data yang termultipleks. Mikrokontroler AVR mempunyai set instruksi yang lebih sedikit dan mode pengalamatannya yang juga sederhana. Dalam AVR dengan arsitektur RISC 8-bit, semua instruksi berukuran 16-bit dan sebagian besar dieksekusi dalam 1 siklus clock kecuali instruksi pencabangan yang membutuhkan 2 siklus clock. Berbeda dengan mikrokontroler MCS-51 misalnya, yang instruksinya bervariasi antara 8-bit sampai 32-bit dan dieksekusi selama 1 sampai 4 siklus mesin, di mana 1 siklus mesin membutuhkan 12 periode clock. Dalam perkembangannya, AVR dibagi menjadi sedikitnya enam kelas yaitu kelompok ATtiny, AT90Sxx, ATmega, AT90CAN, AT90PWM, dan AT86RFxx. Pada dasarnya yang membedakan masing-masing kelas adalah kapasitas memori, peripheral, fungsinya dan beberapa fitur tambahan lainnya. Sedangkan dari segi arsitektur dan set intruksi yang digunakan hampir sama. 6 2.1.1 Arsitektur AVR ATmega8535 Mikrokontroler ATmega8535 merupakan mikrokontroler 8-bit teknologi CMOS dengan konsumsi daya rendah yang berbasis arsitektur enhanced RISC AVR. Dengan eksekusi instruksi yang sebagian besar hanya menggunakan satu siklus clock, ATmega8535 mencapai throughtput sekitar 1 MIPS per MHz yang mengizinkan perancang sistem melakukan optimasi konsumsi daya versus kecepatan pemprosesan. Posesor AVR menggabungkan set instruksi yang kaya dengan 32 register umum (general purpose registes, GPRs). Ke semua 32 register tersebut dikoneksikan langsung dengan Arithmatic Logic Unit (ALU), mengizinkan dua register independen untuk diakses dalam satu instruksi yang dieksekusi dalam satu siklus clock. Arsitektur yang dihasilkan adalah arsitektur yang kode operasinya lebih efisien serta pencapaian troughput nya hingga sepuluh kali lebih cepat daripada mikrokontroler Complex Instruction Set Computer (CISC) konvensional. ATmega8535 menyediakan fitur-fitur: 8K byte memori In-System Programmable Flash dengan kemampuan Read-While-Write, 512 byte EEPROM, 512 byte SRAM, 32 saluran I/O untuk keperluan umum, 32 register GPR, tiga buah flexible Timer/Counter dengan compare mode, interupsi internal dan eksternal, serial programmable USART, satu byte diarahkan untuk Two-wire Serial Interface, 8-kanal ADC 10-bit dengan optional differential input stage dengan programmable gain untuk kemasan TQFP, sebuah programmable Watchdog Timer dengan Internal Oscillator, sebuah SPI port, dan enam software selectable power saving modes. Idle mode menghentikan CPU sementara mengizinkan SRAM, Timer/Counter, SPI port, dan sistem interupsi untuk kontinuitas operasi. Power-down mode menghemat isi-isi register tetapi freezes the Oscillator, melumpuhkan semua fungsi chip lainnya sehingga interupsi berikutnya atau Reset perangkat keras. Pada Power-save mode, timer asinkron tetap beroperasi, mengizinkan pemakai untuk tetap menjaga basis waktu sambil device lainnya sedang tidur. ADC Noise Reduction mode menghentikan CPU dan semua modul I/O kecuali timer asinkron dan ADC, untuk mengurangi switching 7 noise selama konversi ADC berlangsung. Pada Standby mode, osilator kristal/osilator resonator tetap berjalan sementara device lainnya sedang tidur. Hal ini mengizinkan start-up yang sangat cepat yang dikombinasikan dengan konsumsi daya rendah. Pada Extended Standby mode, osilator utama dan timer asinkron tetap berjalan. Pada On-chip ISP Flash mengizinkan memori program untuk deprogram ulang dalam system melalui sebuah antarmuka SPI serial, dengan menggunakan programmer memori nonvolatile konvensional, atau dengan sebuah On-chip Boot program yang sedang beroperasi pada AVR core. Boot program dapat menggunakan antarmuka apapun untuk mengunduh program aplikasi kedalam Application Flash memory. Perangkat lunak pada Boot Flash section akan tetap beroperasi ketika Application Flash Section di-‘update’, menyediakan operasi Read-While-Write yang sebenarnya. Dengan menggabungkan sebuah CPU 8-bit RISC dengan In-System Self-Programble Flashc pada sebuah chip monolithic, Atmel ATmega8535 merupakan mikrokontroler yang tangguh yang menyediakan fleksibilitas tinggi dan solusi biaya efektif untuk berbagai aplikasi control embedded. 
Beberapa fitur utama yang tersedia pada ATmega8535 adalah:
1. Port I/O 32 bit, yang dikelompokkan dalam: PortA, PortB, PortC
2. Analog to Digital Converter 10-bit sebanyak 8 input
3. Timer/Counter sebanyak 3 buah
4. CPU 8 bit yang terdiri dari 32 register
5. Watchdog Timer dengan osilator internal
6. SRAM sebesar 512 byte
7. Memori Flash sebesar 8 Kbyte dengan kemampuan read while write
8. Interrupt internal maupun eksternal
9. Port komunikasi SPI
10. EEPROM sebesar 512 byte yang dapat diprogram saat operasi
11. Analog Comparator
12. Komunikasi serial standar USART dengan kecepatan maksimal 2,5Mbps
13. Frekuensi clock maksimum 16 MHz
Mikrokonktroler Alv and Vegard’s Risc processor atau sering disingkat AVR merupakan mikrokonktroler RISC 8 bit. Karena RISC inilah sebagian besar kode instruksinya dikemas dalam satu siklus clock.
Mikrokontroler AVR merupakan salah satu jenis arsitektur mikrokontroler yang menjadi andalan Atmel. Arsitektur ini dirancang memiliki berbagai kelebihan dan merupakan penyempurnaan dari arsitektur mikrokontroler-mikrokontroler yang sudah ada.
Berbagai seri mikrokontroler AVR telah diproduksi oleh Atmel dan digunakan di dunia sebagai mikrokontroler yang bersifat low cost dan high performance. Di Indonesia, mikrokontroler AVR banyak dipakai karena fiturnya yang cukup lengkap, mudah untuk didapatkan, dan harganya yang relatif terjangkau.
A. Varian Mikrokontroler AVR

 Antar seri mikrokontroler AVR memiliki beragam tipe dan fasilitas, namun kesemuanya memiliki arsitektur yang sama, dan juga set instruksi yang relatif tidak berbeda. Tabel dibawah ini membandingkan beberapa seri mikrokontroler AVR buatan Atmel.
Keterangan:
  • Flashadalah suatu jenis Read Only Memory yang biasanya diisi dengan program hasil buatan manusia yang harus dijalankan oleh mikrokontroler
  • RAM (Random Acces Memory) merupakan memori yang membantu CPU untuk penyimpanan data sementara dan pengolahan data ketika program sedang running
  • EEPROM (Electrically Erasable Programmable Read Only Memory) adalah memori untuk penyimpanan data secara permanen oleh program yang sedang running
  • Port I/O adalah kaki untuk jalur keluar atau masuk sinyal sebagai hasil keluaran ataupun masukan bagi program
  • Timer adalah modul dalam hardware yang bekerja untuk menghitung waktu/pulsa 
  • UART (Universal Asynchronous Receive Transmit) adalah jalur komunikasi data khusus secara serial asynchronous
  • PWM (Pulse Width Modulation) adalah fasilitas untuk membuat modulasi pulsa
  • ADC (Analog to Digital Converter) adalah fasilitas untuk dapat menerima sinyal analog dalam range tertentu untuk kemudian dikonversi menjadi suatu nilai digital dalam range tertentu
  • SPI (Serial Peripheral Interface) adalah jalur komunikasi data khusus secara serial secara serial synchronous
  • ISP (In System Programming) adalah kemampuan khusus mikrokontroler untuk dapat diprogram langsung dalam sistem rangkaiannya dengan membutuhkan jumlah pin yang minimal
B.  Arsitektur Mikrokontroler AVR

 Gambar 2.1
Mikrokontroler AVR sudah menggunakan konsep arsitektur Harvard yang memisahkan memori dan bus untuk data dan program, serta sudah menerapkan single level pipelining. Selain itu mikrokontroler AVR juga mengimplementasikan RISC (Reduced Instruction Set Computing) sehingga eksekusi instruksi dapat berlangsung sangat cepat dan efisien. Blok sistem mikrokontroler AVR dapat dilihat dalam Gambar 2.1.
Gambar 2.1 Blok Diagram Mikrokontroler AVR
Salah satu seri mikrokontroler AVR yang banyak menjadi andalan saat ini adalah tipe ATtiny2313 dan ATmega8535. Seri ATtiny2313 banyak digunakan untuk sistem yang relatif sederhana dan berukuran kecil. Berikut adalah feature-feature mikrokontroler seri ATtiny2313.
  • Kapasitas memori Flash 2 Kbytes untuk program
  • Kapasitas memori EEPROM 128 bytes untuk data
  • Maksimal 18 pin I/O
  • 8 interrupt
  • 8-bit timer
  • Analog komparator
  • On-chip oscillator
  • Fasilitas In System Programming (ISP)
Sedangkan ATmega8535 banyak digunakan untuk sistem yang kompleks, memiliki input sinyal analog, dan membutuhkan memori yang relatif lebih besar. Berikut adalah feature-feature mikrokontroler seri ATmega8535.
  • Memori Flash 8 Kbytes untuk program
  • Memori EEPROM 512 bytes untuk data
  • Memori SRAM 512 bytes untuk data
  • Maksimal 32 pin I/O
  • 20 interrupt
  • Satu 16-bit timer dan dua 8-bit timer
  • 8 channel ADC 10 bit
  • Komunikasi serial melalui SPI dan USART
  • Analog komparator
  • 4 I/O PWM
  • Fasilitas In System Programming (ISP)
    ATTiny 2313 
ATTiny 2313 merupakan mikrokontroller 8-bit AVR dengan kapasitas memory maksimum sebesar 2 Kbytes yang tersimpan didalam Memory Flash-nya. ATTiny 2313 merupakan chip IC produksi ATMEL yang termasuk golongan single chip microcontroller, dimana semua rangkaian termasuk memori dan I/O tergabung dalam satu paket IC. Meski tidak dilengkapi satu pun channel ADC, tapi Attiny2313 menjadi pilihan banyak praktisi untuk membuat aplikasi yang tidak membutuhkan pembacaan besar analog.

Kapasitas memori program yang dimiliki adalah 2014 bytes, plus 128 byte EEPROM. Walaupun memiliki fisik dan kapasitas memori yang relatif kecil, mikrokontroler ini sudah memiliki modul full duplexUSART yang memudahkan interkoneksi dengan peralatan lain dan segudang kemampuan lainnya, seperti dua timer (satu 8-bit dan satu 16-bit dengan praskalar dan modus pembanding terpisah), 4 (empat) kanal pulse Width Modulation (PWM), pembanding analog internal (analog comparator), dan fasilitas debugWIRE untuk pelacakan kesalahan program (debugging).

     Chip ini dikemas dalam bentuk PDIP (Parallel Dual In-line Package) 20 pin (juga terdapat versi SOIC dan QFN/MLF). IC Attiny2313-20PU (catu daya 5 V dengan kecepatan maksimum 20 MHz) dan Attiny2313V yang ditujukan untuk rangkaian elektronika yang bertegangan rendah dan sangat hemat daya. Untuk seri Attiny2313V, mikro-kontroller ini mampu beroperasi hingga kecepatan 4 MHz menggunakan tegangan yang sangat rendah (hanya 1,8 Volt). Apabila menggunakan catu daya bertegangan minimal 2,7 Volt (maksimal 5,5 V), mikrokontroler ini dapat beroperasi hingga kecepatan 10 MHz.

     Kelebihan ATTiny 2313
    ATTiny 2313 merupakan mikrokontroller 8-bit AVR dengan kapasitas memory maksimum sebesar 2 Kbytes yang tersimpan didalam Memory Flash-nya. ATTIny 2313 merupakan chip IC produksi ATMEL yang termasuk golongan single chip microcontroller, dimana semua rangkaian termasuk memori dan I/O tergabung dalam satu paket IC. Dalam pemrogramannya kontroller ini dapat dijalankan menggunakan 2 bahasa yaitu bahasa Assembly atau bahasa C. Sehingga memungkinkan pengguna dapat mengoptimalkan kinerja sistem yang dibuat secara fleksibel.
Gambar IC Attiny2313
 
IC ATTiny 2313 ada 2 jenis yaitu jenis PDIP/SOIC (berbentuk prisma segi empat) dan jenis VQFN/MLF (berbentuk kotak) yang pada dasarnya memiliki fungsi yang sama, hanya saja memiliki bentuk yang berbeda.

Gambar Konfigurasi Pin Attiny2313
IC ATTiny 2313 ada 2 jenis yaitu jenis PDIP/SOIC (berbentuk prisma segi empat) dan jenis VQFN/MLF (berbentuk kotak) yang pada dasarnya memiliki fungsi yang sama, hanya saja memiliki bentuk yang berbeda.


konfigurasi pin dari ATTiny 2313. Secara keseluruhan memiliki total 20 pin. Berikut adalah penjelasan secara garis besar dari konfigurasi pin-pin tersebut :


a. VCC 
Tegangan masukan digital sebesar 5 Volt.

b. GND 
Dihubungkan pada Ground. Referensi nol suplai tegangan digital. 

c. PORT A (PA0...PA2) 
Pada PORT A hanya terdapat tiga(3) buah pin saja atau 3 bit pin I/O. Dimana PORT A ini, ketiga pin nya(seluruh pin PORT A) digunakan untuk keperluan membuat sismin. Yaitu PA.0 dan PA.1 untuk input clock (nama komponen adalah kristal), dan PA.2 untuk input tombol RESET. 


d. PORT B (PB0...PB7)
Pada PORT B terdapat delapan(8) buah pin atau 8 bit pin I/O. Dan juga pada PORT B ini terdapat port SPI(Serial Peripheral Interface), yaitu pin komunikasi untuk men-download program secara serial syncronous dari komputer ke mikrokontroller, pin-pin tersebut adalah MOSI(PORTB.5), MISO(PORTB.6), SCK(PORTB.7). 


e. PORT D (PD0...PD6) 
Pada PORT D terdapat delapan(7) buah pin atau 7 bit pin I/O.


f. RESET 
Reset berfungsi untuk menyusun ulang routing program dari awal. Biasanya RESET bersifat Active Low, yaitu aktif saat logika bernilai nol “0”. Sinyal LOW pada pin ini dengan lebar minimum 1,5 mikrodetik akan membawa mikrokontroler ke kondisi Reset, meskipun clock tidak running. Sinyal dengan lebar kurang dari 1,5 mikrodetik tidak menjamin terjadinya kondisi Reset. 


g. XTAL 1 
XTAL1 adalah masukan ke inverting oscillator amplifier dan input ke internal clock operating circuit. 

h. XTAL 2 
XTAL2 adalah output dari inverting oscillator amplifier.



Sumber :
4. https://aozon.blogspot.com/2014/03/kelebihan-fitur-mikrokontroler-avr.html
5. http://yanuaryana.blogspot.com/2014/12/mikr-on-kon-troller-attiny.html
6. http://avr-mikro.blogspot.com/2013/01/mengenal-attiny2313.html

Kamis, 26 Desember 2019

Pipeline dan RISC

Pengertian Pipeline

Pipeline adalah suatu cara yang digunakan untuk melakukan sejumlah kerja secara bersama tetapi dalam tahap yang berbeda yang dialirkan secara kontinu pada unit pem-rosesor. Dengan cara ini, maka unit pemrosesan selalu bekerja.

Teknik pipeline ini dapat diterapkan pada berbagai tingkatan dalam sistem komputer. Bisa pada level yang tinggi, misalnya program aplikasi, sampai pada tingkat yang rendah, seperti pada instruksi yang dijalankan oleh microprocessor.

Pada microprocessor  yang tidak menggunakan pipeline, satu instruksi dilakukan sampai selesai, baru instruksi berikutnya dapat dilaksanakan. Sedangkan dalam microprocessor  yang menggunakan teknik pipeline, ketika satu instruksi sedangkan diproses,maka instruksi yang berikutnya juga dapat diproses dalam waktu yang bersamaan. Tetapi,instruksi yang diproses secara bersamaan ini, ada dalam tahap proses yang berbeda. Jadi, ada sejumlah tahapan yang akan dilewati oleh sebuah instruksi.

Dengan penerapan pipeline ini pada microprocessor  akan didapatkan peningkatan kinerja microprocessor.Hal ini terjadi karena beberapa instruksi dapat dilakukan secara paralleldalam waktu yang bersamaan. Secara kasarnya diharapkan akan didapatkan peningkatan sebesar K kali dibandingkan dengan microprocessor  yang tidak menggunakan pipeline ,apabila tahapan yang ada dalam satu kali pemrosesan instruksi adalah K tahap.

Karena beberapa instruksi diproses secara bersamaan ada kemungkinan instruksi tersebut sama-sama memerlukan resource yang sama, sehingga diperlukan adanya pengaturan yang tepat agar proses tetap berjalan dengan benar dan lancar.

Sedangkan ketergantungan terhadapdata bisa muncul, misalnya instruksi yang berurutan memerlukan data dari instruksi yangsebelumnya. Kasus Jump, juga perlu perhatian, karena ketika sebuah instruksi meminta untuk melompat ke suatu lokasi memori tertentu, akan terjadi perubahan program counter,sedangkan instruksi yang sedang berada dalam salah satu tahap proses yang berikutnya mungkin tidak mengharapkan terjadinya perubahan program counter.

Instruksi pada pipeline

Tahapan pipeline
  • Mengambil instruksi dan membuffferkannya
  • Ketika tahapan kedua bebas tahapan pertama mengirimkan instruksi yang dibufferkan tersebut
Pada saat tahapan kedua sedang mengeksekusi instruksi ,tahapan pertama memanfaatkan siklus memori yang tidak dipakai untuk mengambil dan membuffferkan instruksi berikutnya.
Berikut ini adalah gambaran tentang Instuksi pipeline :
Karena untuk setiap tahap pengerjaan instruksi, komponen yang bekerja berbeda, maka dimungkinkan untuk mengisi kekosongan kerja di komponen tersebut. Sebagai contoh :
Instruksi 1 : ADD AX, AX
Instruksi 2: ADD EX, CX
Setelah CU menjemput instruksi 1 dari memori (IF), CU akan menerjemahkan instruksi tersebut(ID). Pada menerjemahkan instruksi 1 tersebut, komponen IF tidak bekerja. Adanya teknologi pipeline menyebabkan IF akan menjemput instruksi 2 pada saat ID menerjemahkan instruksi 1. Demikian seterusnya pada saat CU menjalankan instruksi 1 (EX), instruksi 2 diterjemahkan (ID).

Masalah-masalah pada Pipeline

Dengan adanya persyaratan bahwa setiap instuksi yang berdekatan harus tidak saling bergantung, maka ada kemungkinan terjadinya situasi dimana pipeline gagal dilaksanakan(instruksi berikutnya tidak bisa dilaksanakan). Situasi ini disebut Hazards.
Hazards mengurangi performansi dari CPU dimana percepatan ideal tidak dapat dicapai.
Ada 3 kelompok Hazards :
  1. Structural Hazardsmuncul dari konflik resource sistem yaitu ketika hardware tidak dapat mensuport semua kemungkinan kombinasi pelaksanaan instruksi.
  2. Data Hazardsmuncul ketika data untuk suatu instruksi tergantung pada hasil instruksi sebelumnya.
  1. Control Hazards muncul pada pelaksanaan instruksi yang mengubah PC (contoh: branch).
Adanya Hazards menyebabkan pipeline terhambat (stalled ). Tidak ada instruksi baru yang dijemput sampai hambatan itu selesai. Ini berarti instruksi-instruksi selanjutnya akan ditunda pula penje

Keuntungan dari Pipeline
  • Waktu siklus prosesor berkurang, sehingga meningkatkan tingkat instruksi-isu dalam kebanyakan kasus.
  • Beberapa combinational sirkuit seperti penambah atau pengganda dapat dibuat lebihcepat dengan menambahkan lebih banyak sirkuit.
  • Pemrosesan dapat dilakukan lebih cepat, dikarenakan beberapa proses dilakukan secara bersamaan dalam satu waktu.
Jika pipeline digunakan sebagai pengganti, hal itu dapat menghemat sirkuit vs combinational yang lebih kompleks sirkuit.

Kerugian dari Pipeline
  1. Prossesor non-pipeline hanya menjalankan satu instruksi pada satu waktu. Hal iniuntuk mencegah penundaan cabang (yang berlaku, setiap cabang tertunda) dan masalah dengan serial instruksi dieksekusi secara bersamaan. Akibatnya desain lebih sederhana dan lebih murah untuk diproduksi.
  2. Instruksi latency di prossesor non-pipeline sedikit lebih rendah daripada dalam pipeline setara. Hal ini disebabkan oleh fakta bahwa sandal jepit ekstra harus ditambahkan ke jalur data dari prossesor pipeline.
  3. Prossesor non-pipeline akan memiliki instruksi bandwidth yang stabil. Kinerja prossesor yang pipeline jauh lebih sulit untuk meramalkan dan dapat bervariasi lebih luas di antara program yang berbeda.
  4. Karena beberapa instruksi diproses secara bersamaan ada kemungkinan instruksi tersebut sama-sama memerlukan resource yang sama, sehingga diperlukan adanya pengaturan yang tepat agar proses tetap berjalan dengan benar.
  5. Sedangkan ketergantungan terhadap data, bisa muncul, misalnya instruksi yang berurutan memerlukan data dari instruksi yang sebelumnya.
  6. Kasus Jump, juga perlu perhatian, karena ketika sebuah instruksi meminta untuk melompat ke suatu lokasi memori tertentu, akan terjadi perubahan program counter,sedangkan instruksi yang sedang berada dalam salah satu tahap proses yang berikutnya mungkin tidak mengharapkan terjadinya perubahan program counter.

Kesulitan dalam Pipeline

Untuk menerapkan prinsip multi-stage atau mulai saat ini kita namakan pipelining di prosesor, diperlukan organisasi prosesor khusus. Pada dasarnya, prosesor dipartisi menjadi sejumlah unit-unit kecil dengan fungsi spesifik.
Setiap unit berperan untuk menyelesaikansebagian dari instruksi-intruksi berikut  : Instruction fetch, decode, operand address calculation, operand fetch, execute dan storeresult.
Dalam proses di atas terkadang sering terjadi kendala/conflict seperti:
  • Terjadinya pause (Pi), karena adanya data conflict dalam program tersebut
  • Terjadinya data error dikarenakan banyaknya proses yang dilakukan bersamaan
  • Terjadinya pengambilan data secara bersamaan, sehingga salah satu proses tertunda
  • Terjadinya penumpukan data di salah satu intruksi sehingga ada beberapa proses yg ditunda
  • Dengan terjadinya conflict tadi, speed-up yang diperoleh menjadi lebih kecil (lambat)dibandingkan dengan tanpa conclict.
Pengertian RISC
RISC (Redue instruction Set Computer) atau komputasi set instruksi yang disederhanakan merupakan sebuah arsitektur komputer atau arsitektur komputasi modern dengan instruksi-instruksi dan jenis eksekusiyang paling sederhana. Arsitektur ini digunakan pada komputer dengan kinerja tinggi, seperti komputer vector. Desain ini juga diimplementasikan pada prosesor komputer lain, seperti pada beberapa mikroprosesor intel
960 itanium (IA64) dari intel coorporation. Selain itu RISC juga umum dipakai pada Avanced RISC Machine (ARM) dan StrongARM.

Sifat-sifat RISC
  1. Semua atau setidak-tidaknya sebagian besar (80%) instruksi harus dieksekusi dalam satu siklus clock.
  2. Semua instruksi harus memiliki satu ukuran standar, yaitu sama dengan ukuran kata dasar (basic word length).
  3. Jumlah jenis instruksinya harus kecil, tidak melebihi 128.
  4. Jumlah format instruksinya harus kecil, tidak melebihi kira-kira 4.
  5. Jumlah adddressing mode harus kecil, tidak melebihi kira-kira 4.
  6. Akses ke memory hanya dilakukan dengan instruksi load dan store.
  7. Semua operasi, keciali operasi load dan store merupakan operasi register di dalam CPU.
  8. Memiliki hardwired control unit.
  9. Memiliki relatif banyak register serbaguna internal CPU.
Karakteristik RISC

Arsitektur RISC memiliki beberapa karakteristik, diantaranya:
  • Instruksi berukuran tunggal.
  • Ukuran yang umum adalah 4 byte.
  • Jumlah mode pengalamatan data yang sedikit, biasanya kurang dari lima buah.
  • Tidak terdapat pengalamatan tak langsung.
  • Tidak terdapat operasi yang menggabungkan operasi load/store dengan operasi aritmatika
Kelebihan RISC
  • Instruksi mesin yang kompleks seringkali sulit digunakan karena kompiler harus menemukan kasus-kasus yang sesuai dengan konsepnya.
  • Arsitektur RISC yang mendasari Power PC memiliki kecenderungan lebih menekankan pada referensi register dibanding referensi memori, dan referensi register memerlukan bit yg lebih sedikit.
  • Penggunaan metode pengalamatan dan format instruksi yang lebih sederhana.
Kekurangan RISC
  • Program berukuran lebih besar sehingg membutuhkan memori yang lebih banyak, ini tentunya kurang menghemat sumber daya.
  • Program yang berukuran lebih besar akan menyebabkan menurunnya kinerja, yaitu instruksi yang lebih banyak. Artinya akan lebih banyak bye-byte instruksi yang harus diambil.
  • Pada lingkungan paging akan menyebabkan kemungkinan terjadinya page fault lebih besar.
Referensi :
http://www.academia.edu/9124108/Pengertian_Pipeline
http://www.academia.edu/18365931/Makalah_CISC_and_RISC
https://id.wikipedia.org/wiki/Pipeline
http://sharinginpo.blogspot.co.id/2011/04/pipeline-secara-umum.html
https://id.wikipedia.org/wiki/RISC
https://imambakti18.wordpress.com/penjelasan-risc-dan-pipelining-risc/