ScholarGate
Trợ lý

RISC và CISC

RISC và CISC là tên gọi của hai triết lý tập lệnh đối lập: máy tính tập lệnh rút gọn (RISC) ưu tiên các tập hợp nhỏ gồm các lệnh đơn giản, đồng nhất, từ thanh ghi đến thanh ghi, trong khi máy tính tập lệnh phức tạp (CISC) cung cấp nhiều lệnh mạnh mẽ, có độ dài thay đổi, thực hiện nhiều công việc hơn trong mỗi lệnh.

Tìm chủ đề với PaperMindSắp ra mắtFind papers & topics
Tools & resources
Tải xuống bản trình chiếu
Learn & explore
VideoSắp ra mắt

Definition

RISC (máy tính tập lệnh rút gọn) là một triết lý thiết kế nhấn mạnh một tập hợp nhỏ các lệnh đơn giản, định dạng cố định được thực thi theo mô hình tải-lưu trữ; CISC (máy tính tập lệnh phức tạp) nhấn mạnh một tập hợp lớn hơn các lệnh mạnh mẽ hơn, thường có độ dài thay đổi, bao gồm các thao tác từ bộ nhớ đến bộ nhớ.

Scope

Chủ đề này bao gồm hai triết lý thiết kế và các đánh đổi của chúng: sự đơn giản và tính đều đặn của lệnh so với sự phong phú và mật độ mã, nguyên tắc tải-lưu trữ của RISC, lợi thế của việc đường ống hóa các lệnh đơn giản, và cách các triển khai CISC hiệu suất cao hiện đại dịch các lệnh phức tạp thành các vi thao tác giống RISC bên trong. Chủ đề này không bao gồm các mã hóa cấp bit (định dạng và mã hóa lệnh) và các chi tiết triển khai đường ống (đường ống hóa và các rủi ro).

Core questions

  • Những mục tiêu thiết kế nào thúc đẩy việc rút gọn một tập lệnh thành các thao tác đơn giản, đồng nhất?
  • Nguyên tắc tải-lưu trữ phân biệt RISC với CISC như thế nào?
  • Tại sao các lệnh đơn giản, đều đặn lại dễ dàng được đường ống hóa hơn?
  • Các bộ xử lý x86 hiện đại dung hòa một tập lệnh CISC với việc thực thi nội bộ giống RISC như thế nào?

Key concepts

  • tập lệnh rút gọn
  • tập lệnh phức tạp
  • kiến trúc tải-lưu trữ
  • lệnh độ dài cố định so với độ dài thay đổi
  • vi thao tác
  • đồng thiết kế trình biên dịch-phần cứng
  • mật độ mã

Key theories

Luận điểm RISC
Patterson và Ditzel lập luận rằng một tập hợp nhỏ các lệnh đơn giản, được thực thi nhanh chóng và đường ống hóa hiệu quả với sự hỗ trợ tốt của trình biên dịch, có thể vượt trội hơn các tập lệnh phức tạp mà các lệnh phức tạp của chúng hiếm khi được sử dụng và khó triển khai nhanh chóng.

Mechanisms

Các thiết kế RISC giữ cho các lệnh đơn giản, có độ dài cố định và từ thanh ghi đến thanh ghi, với các lệnh tải và lưu trữ riêng biệt cho bộ nhớ; tính đều đặn này giúp việc giải mã và đường ống hóa trở nên đơn giản. Các thiết kế CISC cung cấp các lệnh phức tạp, có độ dài thay đổi có thể truy cập bộ nhớ trực tiếp và thực hiện các thao tác nhiều bước. Các triển khai CISC hiện đại giải mã các lệnh phức tạp thành các chuỗi vi thao tác nội bộ đơn giản hơn, sau đó được thực thi bởi một lõi giống RISC.

Clinical relevance

Sự phân biệt RISC/CISC đã định hình các nền tảng máy tính thống trị: ARM và RISC-V thể hiện các nguyên tắc RISC và dẫn đầu trong thị trường di động, nhúng, và ngày càng mở rộng sang thị trường máy chủ và máy tính xách tay, trong khi x86 (một ISA CISC với các thành phần nội bộ giống RISC) đã thống trị PC và máy chủ trong một thời gian dài. Cuộc tranh luận này cung cấp thông tin cho các lựa chọn liên tục về hiệu quả năng lượng, hiệu suất và hệ sinh thái phần mềm.

History

Khái niệm RISC phát triển từ nghiên cứu IBM 801 và các dự án Berkeley RISC và Stanford MIPS vào đầu những năm 1980, được trình bày trong bài báo năm 1980 của Patterson và Ditzel. Các ý tưởng RISC lan rộng thông qua các thiết kế thương mại như SPARC, MIPS, PowerPC và ARM. Trong khi đó, x86 tồn tại bằng cách áp dụng các vi thao tác nội bộ giống RISC, và ISA RISC-V mở đã tạo động lực mới cho thiết kế RISC thuần túy.

Debates

RISC so với CISC còn quan trọng không?
Vì các chip CISC hiện đại thực thi bên trong dưới dạng các vi thao tác giống RISC và cả hai loại đều chia sẻ việc đường ống hóa và bộ nhớ đệm, một số người cho rằng sự phân biệt ban đầu đã biến mất; những người khác vẫn duy trì rằng tính đều đặn của tập lệnh vẫn ảnh hưởng đến hiệu quả giải mã, năng lượng và xác minh.

Key figures

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

Related topics

Seminal works

  • patterson1980risc
  • hennessy2019
  • patterson2020

Frequently asked questions

RISC có luôn nhanh hơn CISC không?
Không phải vốn dĩ. Sự đơn giản của RISC giúp việc đường ống hóa và tốc độ xung nhịp cao dễ dàng hơn, nhưng một lệnh CISC có thể thực hiện nhiều công việc hơn trong mỗi lệnh. Trong thực tế, các bộ xử lý CISC hiệu suất cao dịch các lệnh thành các thao tác giống RISC, vì vậy hiệu suất thực tế phụ thuộc vào toàn bộ kiến trúc vi mô, chứ không chỉ riêng nhãn ISA.
Tại sao ARM và RISC-V được gọi là kiến trúc RISC?
Cả hai đều sử dụng các tập hợp nhỏ các lệnh đơn giản, chủ yếu có độ dài cố định với mô hình bộ nhớ tải-lưu trữ và ít chế độ địa chỉ — những đặc điểm xác định của triết lý RISC — điều này làm cho chúng hiệu quả khi triển khai và rất phù hợp với các thiết kế bị hạn chế năng lượng và thông lượng cao.

Methods for this concept

Related concepts