RISC (Reduced Instruction Set Computing) adalah arsitektur micropocessor komputer yang berukuran kecil namun instruksinya highly-optimized daripada satu set yang lebih khusus dari instruksi sering ditemukan di jenis-jenis arsitektur. RISC ini menggunakan strategi desain CPU didasarkan pada wawasan bahwa instruksi disederhanakan ditetapkan (sebagai lawan satu set kompleks) memberikan kinerja yang lebih tinggi bila dikombinasikan dengan arsitektur mikroprosesor mampu melaksanakan instruksi tersebut menggunakan siklus mikroprosesor lebih sedikit per instruksi. Dan lawan dari penggunaan strategi ini adalah CISC (Complex Instruction Set Computing).
Sejarah
Proyek RISC pertama datang dari IBM, Stanford, dan UC Berkeley-di akhir 70-an dan awal 80-an. IBM 801, Stanford MIPS, dan Berkeley RISC 1 dan 2 yang dirancang dengan filosofi yang sama yang telah menjadi dikenal sebagai RISC. Fitur desain tertentu telah karakteristik yang paling prosesor RISC:
- satu siklus waktu eksekusi: prosesor RISC memiliki CPI (clock per instruksi) dari satu siklus. Hal ini disebabkan optimalisasi setiap instruksi pada CPU dan teknik yang disebut;
- pipelining: suatu teknik yang memungkinkan untuk eksekusi simultan bagian, atau tahapan, instruksi untuk lebih efisien memproses instruksi;
- sejumlah besar register: filosofi desain RISC umumnya menggabungkan sejumlah besar register untuk mencegah dalam jumlah besar interaksi dengan memori
Karakteristik Design RISC
Untuk setiap tingkat kinerja umum, chip RISC biasanya akan memiliki transistor jauh lebih sedikit yang didedikasikan untuk inti logika yang awalnya diizinkan desainer untuk meningkatkan ukuran dari set register dan meningkatkan paralelisme internal.
Fitur lain yang biasanya ditemukan di arsitektur RISC adalah:
- Uniform instruction format, enggunakan satu kata dengan opcode di posisi bit yang sama di setiap instruksi, menuntut kurang decoding;
- Identical general purpose registers, emungkinkan setiap mendaftar untuk digunakan dalam konteks apapun, menyederhanakan desain compiler (meskipun biasanya ada register floating point terpisah);
- Simple addressing modes, mode pengalamatan yang sederhana dengan kompleks pengalamatan dilakukan melalui urutan dari aritmatika, operasi beban-toko, atau keduanya;
- Few data types in hardware, beberapa cakram memiliki instruksi byte tali, atau mendukung bilangan kompleks; ini sejauh mungkin dapat ditemukan pada RISC.
- Processor throughput, satu instruksi per siklus rata-rata.
Perbedaan RISC dan CISC
Gambar di bawah adalah diagram yang mewakili skema penyimpananuntuk komputer generik.Memori utama dibagi menjadi lokasi bernomor dari (row) 1: (colom) 1 ke (row) 6: (colom) 4. Unit eksekusi bertanggung jawab untuk melaksanakan semua perhitungan. Namun, unit eksekusi hanya dapat beroperasi pada data yang telah dimuat ke salah satu dari enam register (A, B, C, D, E, atau F). Katakanlah kita ingin mencari produk dari dua angka - satu disimpan di lokasi 2: 3 dan lain disimpan di lokasi 5: 2 - dan kemudian menyimpan produk kembali lokasi 2: 3.
Karakteristik CISC
Tujuan utama dari arsitektur CISC adalah untuk menyelesaikan tugas sebagai beberapa baris perakitan mungkin. Hal ini dicapai dengan membangun prosesor hardware yang mampu memahami dan melaksanakan serangkaian operasi. Untuk tugas tertentu ini, prosesor CISC akan datang siap dengan instruksi tertentu (kita akan menyebutnya "MULT"). Ketika dieksekusi, instruksi ini memuat dua nilai ke dalam register yang terpisah, mengalikan operan di unit eksekusi, dan kemudian menyimpan produk dalam daftar yang sesuai. Dengan demikian, seluruh tugas mengalikan dua angka dapat diselesaikan dengan satu instruksi:
MULT 2:3, 5:2
MULT adalah apa yang dikenal sebagai "instruksi yang kompleks." Beroperasi langsung di bank memori komputer dan tidak memerlukan programmer untuk secara eksplisit memanggil fungsi pemuatan atau menyimpan. Ini mirip perintah dalam bahasa tingkat yang lebih tinggi. Misalnya, jika kita membiarkan "a" mewakili nilai 2: 3 dan "b" mewakili nilai 5: 2, maka perintah ini identik dengan pernyataan C "a = a * b."
Salah satu keuntungan utama dari sistem ini adalah bahwa compiler harus melakukan sangat sedikit pekerjaan untuk menerjemahkan pernyataan bahasa tingkat tinggi ke dalam perakitan. Karena panjang kode yang relatif singkat, sangat sedikit RAM diperlukan untuk menyimpan instruksi. Penekanan diletakkan pada bangunan petunjuk kompleks langsung ke perangkat keras.
Karakteristik RISC
Prosesor RISC hanya menggunakan instruksi sederhana yang bisa dieksekusi dalam satu siklus clock. Dengan demikian, "MULT" perintah yang dijelaskan di atas dapat dibagi menjadi tiga perintah yang terpisah: "LOAD", yang bergerak data dari bank memori untuk mendaftar, "PROD", yang menemukan produk dari dua operan yang terletak di dalam register, dan "STORE ", yang memindahkan data dari register ke bank memori. Dalam rangka untuk melakukan seri yang tepat dari langkah-langkah yang dijelaskan dalam pendekatan CISC, programmer akan perlu kode empat baris perakitan:
LOAD A, 2:3
LOAD B, 5:2
PROD A, B
STORE 2:3, A
Pada awalnya, ini mungkin tampak seperti cara yang lebih kurang efisien menyelesaikan operasi. Karena ada lebih banyak garis kode, lebih banyak RAM yang dibutuhkan untuk menyimpan instruksi tingkat perakitan. Compiler juga harus melakukan lebih banyak pekerjaan untuk mengkonversi pernyataan bahasa tingkat tinggi ke dalam kode dari formulir ini.
Persamaan berikut ini umumnya digunakan untuk mengekspresikan kemampuan kinerja komputer:
Pendekatan CISC mencoba untuk meminimalkan jumlah instruksi per program, mengorbankan jumlah siklus per instruksi. RISC tidak sebaliknya, mengurangi siklus per instruksi pada biaya jumlah instruksi per program.
RISC
|
CISC
|
Penekanan pada perangkat lunak
|
Penekanan pada perangkat keras
|
Instruksi sederhana
|
Termasuk instruksi kompleks
|
Register – to – register : “LOAD” and “STORE” instruksi independen
|
Memory-to-memory: "LOAD" and "STORE" tergabung
dalam petunjuk
|
Rendah siklus per detik, ukuran kode besar
|
Ukuran kode kecil, siklus tinggi per detik
|
Menghabiskan lebih banyak transistor pada register memori
|
Transistor digunakan untuk menyimpan
instruksi kompleks
|
Bagaiman Pipelining bekerja?
Pipelining, fitur standar di prosesor RISC, jauh seperti jalur perakitan. Karena prosesor bekerja pada langkah-langkah yang berbeda dari instruksi pada saat yang sama, petunjuk lebih dapat dijalankan dalam waktu yang lebih singkat.
Sebuah pipa prosesor RISC beroperasi di banyak cara yang sama, meskipun tahap dalam pipa yang berbeda. Sementara prosesor yang berbeda memiliki jumlah yang berbeda dari langkah-langkah, mereka pada dasarnya variasi lima, yang digunakan dalam prosesor MIPS R3000:
- Mengambil instruksi dari memori
- Membaca register dan decode instruksi
- Mengeksekusi instruksi atau menghitung alamat
- Mengakses operand dalam memori Data
- Menulis hasilnya ke register
Berikut adalah sebuah link video penjelasan tentang RISC secara singkat :
Source :
youtube,com