Hiểu biết về RISC và Kiến trúc CISC

Hãy Thử Công Cụ CủA Chúng Tôi Để LoạI Bỏ Các VấN Đề





Tập lệnh hay kiến ​​trúc tập lệnh là cấu trúc của máy tính cung cấp các lệnh cho máy tính để hướng dẫn máy tính xử lý các thao tác dữ liệu. Tập lệnh bao gồm các lệnh, chế độ địa chỉ, kiểu dữ liệu gốc, thanh ghi, ngắt, xử lý ngoại lệ và kiến ​​trúc bộ nhớ. Tập lệnh có thể được mô phỏng trong phần mềm bằng cách sử dụng trình thông dịch hoặc được tích hợp vào phần cứng của bộ xử lý. Kiến trúc tập lệnh có thể được coi là ranh giới giữa phần mềm và phần cứng. Phân loại vi điều khiển và bộ vi xử lý có thể được thực hiện dựa trên kiến ​​trúc tập lệnh RISC và CISC.

Bộ hướng dẫn của Bộ xử lý

Bộ hướng dẫn của Bộ xử lý



Tập lệnh chỉ định chức năng của bộ xử lý bao gồm các hoạt động được bộ xử lý hỗ trợ, cơ chế lưu trữ của bộ xử lý và cách biên dịch chương trình vào bộ xử lý.


RISC và CISC là gì?

Các RISC và CISC có thể được mở rộng như sau:



RISC đại diện cho Máy tính Bộ hướng dẫn Giảm và
CISC đại diện cho Máy tính Bộ Hướng dẫn Phức tạp.

Kiến trúc RISC (Máy tính Bộ hướng dẫn Giảm)

Kiến trúc RISC

Kiến trúc RISC

Các kiến trúc vi điều khiển sử dụng bộ hướng dẫn nhỏ và được tối ưu hóa cao được gọi là Máy tính Bộ lệnh giảm hoặc được gọi đơn giản là RISC. Nó còn được gọi là kiến ​​trúc LOAD / STORE.

Vào cuối những năm 1970 và đầu những năm 1980, các dự án RISC chủ yếu được phát triển từ Stanford, UC-Berkley và IBM. Nhóm nghiên cứu John Coke của IBM đã phát triển RISC bằng cách giảm số lượng lệnh cần thiết để xử lý các phép tính nhanh hơn CISC. Kiến trúc RISC nhanh hơn và các chip cần thiết để sản xuất kiến ​​trúc RISC cũng ít tốn kém hơn so với kiến ​​trúc CISC.


Các tính năng điển hình của kiến ​​trúc RISC

  • Kỹ thuật Pipelining của RISC, thực hiện đồng thời nhiều phần hoặc giai đoạn của lệnh sao cho mọi lệnh trên CPU đều được tối ưu hóa. Do đó, các bộ xử lý RISC có Đồng hồ trên mỗi Lệnh của một chu kỳ và điều này được gọi là Thực thi một chu kỳ.
  • Nó tối ưu hóa sử dụng đăng ký với số lượng thanh ghi nhiều hơn trong RISC và số lượng tương tác nhiều hơn trong bộ nhớ có thể được ngăn chặn.
  • Các chế độ định địa chỉ đơn giản, thậm chí cả địa chỉ phức tạp cũng có thể được thực hiện bằng cách sử dụng số học Phép toán logic VÀ / HOẶC .
  • Nó đơn giản hóa thiết kế trình biên dịch bằng cách sử dụng các thanh ghi mục đích chung giống hệt nhau, cho phép bất kỳ thanh ghi nào được sử dụng trong mọi ngữ cảnh.
  • Để sử dụng hiệu quả các thanh ghi và tối ưu hóa việc sử dụng pipelining, cần phải giảm tập lệnh.
  • Số lượng bit được sử dụng cho opcode được giảm xuống.
  • Nói chung, có 32 thanh ghi trở lên trong RISC.

Ưu điểm của kiến ​​trúc bộ xử lý RISC

  • Do tập hợp các lệnh nhỏ của RISC, các trình biên dịch ngôn ngữ cấp cao có thể tạo ra mã hiệu quả hơn.
  • RISC cho phép tự do sử dụng không gian trên bộ vi xử lý vì tính đơn giản của nó.
  • Thay vì sử dụng Stack, nhiều bộ xử lý RISC sử dụng các thanh ghi để truyền các đối số và giữ các biến cục bộ.
  • Các hàm RISC chỉ sử dụng một số tham số và bộ xử lý RISC không thể sử dụng lệnh gọi, và do đó, sử dụng lệnh có độ dài cố định dễ dẫn.
  • Tốc độ của hoạt động có thể được tối đa hóa và thời gian thực hiện có thể được giảm thiểu.
  • Cần có rất ít định dạng lệnh (ít hơn bốn), một vài lệnh (khoảng 150) và một vài chế độ định địa chỉ (ít hơn bốn).

Hạn chế của kiến ​​trúc bộ xử lý RISC

  • Với sự gia tăng độ dài của các lệnh, độ phức tạp tăng lên đối với các bộ xử lý RISC để thực thi do chu kỳ ký tự của nó trên mỗi lệnh.
  • Hiệu suất của bộ xử lý RISC chủ yếu phụ thuộc vào trình biên dịch hoặc người lập trình vì kiến ​​thức về trình biên dịch đóng một vai trò quan trọng trong khi chuyển đổi mã CISC thành mã RISC, do đó, chất lượng của mã được tạo phụ thuộc vào trình biên dịch.
  • Trong khi lập lịch lại mã CISC thành mã RISC, được gọi là mã mở rộng, sẽ tăng kích thước. Và, chất lượng của phần mở rộng mã này một lần nữa sẽ phụ thuộc vào trình biên dịch và cả tập lệnh của máy.
  • Bộ nhớ đệm cấp đầu tiên của bộ xử lý RISC cũng là một nhược điểm của RISC, trong đó các bộ xử lý này có bộ nhớ đệm lớn trên chính chip. Để cho ăn theo hướng dẫn, họ yêu cầu rất hệ thống bộ nhớ nhanh .

Kiến trúc CISC (Máy tính tập lệnh phức hợp)

Mục đích chính của kiến ​​trúc bộ xử lý CISC là hoàn thành nhiệm vụ bằng cách sử dụng ít dây chuyền lắp ráp hơn. Với mục đích này, bộ xử lý được xây dựng để thực hiện một loạt các hoạt động. Lệnh phức hợp còn được gọi là MULT, hoạt động ngân hàng bộ nhớ của máy tính trực tiếp mà không cần thực hiện trình biên dịch để thực hiện các chức năng lưu trữ và tải.

Kiến trúc CISC

Kiến trúc CISC

Đặc điểm của Kiến trúc CISC

  • Để đơn giản hóa kiến ​​trúc máy tính, CISC hỗ trợ vi lập trình.
  • CISC có nhiều hướng dẫn được xác định trước hơn giúp các ngôn ngữ cấp cao dễ dàng thiết kế và triển khai.
  • CISC bao gồm số lượng thanh ghi ít hơn và số lượng chế độ địa chỉ nhiều hơn, thường là 5 đến 20.
  • Bộ xử lý CISC có thời gian chu kỳ khác nhau để thực hiện các lệnh - nhiều chu kỳ đồng hồ.
  • Do bộ lệnh phức tạp của CISC, kỹ thuật nối ống là rất khó.
  • CISC bao gồm nhiều hướng dẫn hơn, thường từ 100 đến 250.
  • Các hướng dẫn đặc biệt được sử dụng rất hiếm khi.
  • Toán hạng trong bộ nhớ được thao tác bằng các lệnh.

Ưu điểm của kiến ​​trúc CISC

  • Mỗi lệnh ngôn ngữ máy được nhóm thành một lệnh vi mã và được thực thi tương ứng, sau đó được lưu trữ sẵn trong bộ nhớ của bộ xử lý chính, được gọi là triển khai vi mã.
  • Vì bộ nhớ vi mã nhanh hơn bộ nhớ chính, nên tập lệnh vi mã có thể được thực hiện mà không bị giảm tốc độ đáng kể so với việc triển khai có dây cứng.
  • Toàn bộ tập lệnh mới có thể được xử lý bằng cách sửa đổi thiết kế chương trình vi mô.
  • CISC, số lượng lệnh cần thiết để thực hiện một chương trình có thể được giảm bớt bằng cách xây dựng các bộ lệnh phong phú và cũng có thể được thực hiện để sử dụng bộ nhớ chính chậm hiệu quả hơn.
  • Do tập hợp các hướng dẫn bao gồm tất cả các hướng dẫn trước đó, điều này làm cho việc viết mã vi mô trở nên dễ dàng.

Hạn chế của CISC

  • Lượng thời gian đồng hồ thực hiện theo các hướng dẫn khác nhau sẽ khác nhau - do đó - hiệu suất của máy chậm lại.
  • Độ phức tạp của tập lệnh và phần cứng chip tăng lên khi mọi phiên bản mới của bộ xử lý bao gồm một tập con của các thế hệ trước đó.
  • Chỉ 20% các lệnh hiện có được sử dụng trong một sự kiện lập trình điển hình, mặc dù có nhiều lệnh chuyên biệt tồn tại thậm chí không được sử dụng thường xuyên.
  • Các mã điều kiện được đặt bởi các lệnh CISC như một hiệu ứng phụ của mỗi lệnh, điều này cần thời gian cho việc cài đặt này - và khi lệnh tiếp theo thay đổi các bit mã điều kiện - do đó, trình biên dịch phải kiểm tra các bit mã điều kiện trước khi điều này xảy ra.

RISC Vs. CISC

  • Lập trình viên có thể ngăn chặn các chu trình lãng phí bằng cách loại bỏ mã không cần thiết trong RISC, tuy nhiên, trong khi sử dụng mã CISC dẫn đến lãng phí các chu trình do CISC không hiệu quả.
  • Trong RISC, mỗi lệnh nhằm thực hiện một nhiệm vụ nhỏ, để thực hiện một tác vụ phức tạp, nhiều lệnh nhỏ được sử dụng cùng nhau, trong khi chỉ cần một số lệnh để thực hiện cùng một tác vụ bằng cách sử dụng CISC - vì nó có khả năng thực hiện tác vụ phức tạp vì các hướng dẫn tương tự như mã ngôn ngữ cao.
  • CISC thường được sử dụng cho máy tính trong khi RISC được sử dụng cho điện thoại thông minh, máy tính bảng và các thiết bị điện tử khác.

Hình sau cho thấy sự khác biệt nhiều hơn giữa RISC và CISC

RISC Vs. CISC

RISC Vs. CISC

Do đó, bài viết này thảo luận về các đặc điểm của kiến ​​trúc RISC và CISC của các ưu điểm và nhược điểm của kiến ​​trúc bộ xử lý RISC và CISC của RISC và CISC cũng như sự khác biệt giữa kiến ​​trúc RISC và CISC với một ý tưởng ngắn gọn. Để biết thêm thông tin về các kiến ​​trúc RISC và CISC, vui lòng đăng các câu hỏi của bạn bằng cách bình luận bên dưới.

Tín ảnh: