ScholarGate
Asisten

RISC dan CISC

RISC dan CISC menamai dua filosofi set instruksi yang kontras: komputer set instruksi yang disederhanakan (reduced instruction set computers) mengutamakan set instruksi register-ke-register yang kecil, sederhana, dan seragam, sementara komputer set instruksi kompleks (complex instruction set computers) menawarkan banyak instruksi yang kuat dan bervariasi panjangnya yang melakukan lebih banyak pekerjaan per instruksi.

Temukan Topik dengan PaperMindSegeraFind papers & topics
Tools & resources
Unduh salindia
Learn & explore
VideoSegera

Definition

RISC (reduced instruction set computer) adalah filosofi desain yang menekankan set instruksi yang kecil, berformat tetap, dan sederhana yang dieksekusi dalam model load-store; CISC (complex instruction set computer) menekankan set instruksi yang lebih besar, lebih kuat, seringkali bervariasi panjangnya, termasuk operasi memori-ke-memori.

Scope

Topik ini mencakup dua filosofi desain dan pertukarannya: kesederhanaan dan keteraturan instruksi versus kekayaan dan kepadatan kode, disiplin load-store pada RISC, keuntungan pipelining dari instruksi sederhana, dan bagaimana implementasi CISC berkinerja tinggi modern menerjemahkan instruksi kompleks menjadi operasi mikro mirip RISC secara internal. Ini tidak mencakup pengkodean tingkat bit (format dan pengkodean instruksi) dan detail implementasi pipeline (pipelining dan hazard).

Core questions

  • Tujuan desain apa yang memotivasi pengurangan set instruksi menjadi operasi yang sederhana dan seragam?
  • Bagaimana disiplin load-store membedakan RISC dari CISC?
  • Mengapa instruksi yang sederhana dan teratur lebih mudah di-pipeline?
  • Bagaimana prosesor x86 modern menyelaraskan set instruksi CISC dengan eksekusi internal mirip RISC?

Key concepts

  • set instruksi yang disederhanakan
  • set instruksi kompleks
  • arsitektur load-store
  • instruksi panjang tetap vs. variabel
  • operasi mikro
  • desain bersama kompiler-perangkat keras
  • kepadatan kode

Key theories

Argumen RISC
Patterson dan Ditzel berpendapat bahwa set instruksi kecil yang sederhana, dieksekusi dengan cepat dan di-pipeline secara efisien dengan dukungan kompiler yang baik, dapat mengungguli set instruksi kompleks yang instruksinya rumit jarang digunakan dan sulit diimplementasikan dengan cepat.

Mechanisms

Desain RISC menjaga instruksi tetap sederhana, panjang tetap, dan register-ke-register, dengan instruksi load dan store terpisah untuk memori; keteraturan ini membuat decoding dan pipelining menjadi mudah. Desain CISC menyediakan instruksi kompleks, panjang bervariasi yang dapat mengakses memori secara langsung dan melakukan operasi multi-langkah. Implementasi CISC modern mendekode instruksi kompleks menjadi urutan operasi mikro internal yang lebih sederhana yang kemudian dieksekusi oleh inti mirip RISC.

Clinical relevance

Perbedaan RISC/CISC membentuk platform komputasi dominan: ARM dan RISC-V mewujudkan prinsip-prinsip RISC dan memimpin di pasar seluler, tertanam, dan semakin banyak di pasar server dan laptop, sementara x86 (ISA CISC dengan internal mirip RISC) telah lama mendominasi PC dan server. Perdebatan ini menginformasikan pilihan yang sedang berlangsung mengenai efisiensi energi, kinerja, dan ekosistem perangkat lunak.

History

Konsep RISC tumbuh dari penelitian IBM 801 dan proyek Berkeley RISC serta Stanford MIPS pada awal 1980-an, yang diartikulasikan dalam makalah Patterson dan Ditzel tahun 1980. Ide-ide RISC menyebar melalui desain komersial seperti SPARC, MIPS, PowerPC, dan ARM. Sementara itu, x86 bertahan dengan mengadopsi operasi mikro internal mirip RISC, dan ISA RISC-V yang terbuka memperbarui momentum untuk desain RISC yang bersih.

Debates

Apakah RISC versus CISC masih relevan?
Karena chip CISC modern mengeksekusi secara internal sebagai operasi mikro mirip RISC dan kedua kubu berbagi pipelining dan caching, beberapa berpendapat bahwa perbedaan aslinya telah hilang; yang lain mempertahankan bahwa keteraturan set instruksi masih memengaruhi efisiensi dekode, daya, dan verifikasi.

Key figures

  • David A. Patterson
  • David R. Ditzel
  • John L. Hennessy
  • John Cocke

Related topics

Seminal works

  • patterson1980risc
  • hennessy2019
  • patterson2020

Frequently asked questions

Apakah RISC selalu lebih cepat daripada CISC?
Tidak secara inheren. Kesederhanaan RISC memudahkan pipelining dan kecepatan clock yang tinggi, tetapi instruksi CISC dapat melakukan lebih banyak pekerjaan per instruksi. Dalam praktiknya, prosesor CISC berkinerja tinggi menerjemahkan instruksi menjadi operasi mirip RISC, sehingga kinerja yang dicapai bergantung pada seluruh mikroarsitektur, bukan hanya label ISA.
Mengapa ARM dan RISC-V disebut arsitektur RISC?
Keduanya menggunakan set instruksi yang kecil, sederhana, sebagian besar panjang tetap dengan model memori load-store dan beberapa mode pengalamatan — ciri khas filosofi RISC — yang membuatnya efisien untuk diimplementasikan dan sangat cocok untuk desain yang dibatasi energi dan berthroughput tinggi.

Methods for this concept

Related concepts