Máy tính RISC có cụ cầu tạo bằng gì

Để đánh dấu sự ra đời của ROMA, 100 khách hàng đầu tiên đặt trước còn được tặng 1 NFT độc quyền, cũng như có thể yêu cầu khắc tên lên sản phẩm.


RISC-V là 1 kiến trúc tập lệnh [ISA - Instruction Set Architecture] tiêu chuẩn mở [open source] thế hệ thứ 5 của kiến trúc RISC, được phát triển từ năm 1981 bởi Đại học California, Berkeley, Mỹ. Trong kỹ thuật máy tính thì RISC [Reduced Instruction Set Computer] là máy tính có thiết kế để đơn giản hóa các lệnh riêng lẻ được cung cấp cho máy nhằm hoàn thành các tác vụ. So với CISC [Complex Instruction Set Computer], RISC cần nhiều mã lệnh hơn để hoàn thành 1 tác vụ, do các lệnh riêng lẻ được viết bằng mã đơn giản.

Hiện tại thế giới có 2 thiết kế vi xử lý phổ biến là Arm và x86, thống trị gần như toàn bộ thị trường, nhưng với mô hình kinh doanh khác biệt. Trong khi Intel tự thiết kế x86 và sản xuất vi xử lý để bán thì Arm bán giấy phép sử dụng thiết kế của họ cho những bên có nhu cầu, đơn cử như Samsung hay Qualcomm. Dĩ nhiên các bên thứ 3 mua quyền sử dụng thiết kế Arm cần ký thỏa thuận giữ bí mật, vì đây là sở hữu trí tuệ. Trong khi đó, RISC-V lại hoàn toàn khác.

Nếu muốn sử dụng máy tính, người ta cần cài đặt hệ điều hành, và nếu lựa chọn là Windows thì phải trả tiền bản quyền, trong khi Linux lại miễn phí. RISC-V cũng tương tự như vậy, nhưng nó nhắm đến thị trường thiết kế bán dẫn. Kiến trúc tập lệnh [ISA] là các lệnh mà vi xử lý có thể hiểu được native trong khi vi kiến trúc là cách mà vi xử lý thực hiện lệnh, Arm cấp phép cho cả 2 nhưng RISC-V chỉ cung cấp ISA. Điều này cho phép các nhà nghiên cứu hay sản xuất tự xác định cách thức mà họ muốn sử dụng, từ đó có thể mở rộng cho nhiều thiết bị khác nhau, từ chip 16 bit công suất thấp thường dùng trong hệ thống nhúng, cho đến CPU 128 bit trong siêu máy tính.

Những con chip RISC thường có ít lệnh hơn so với chip dùng thiết kế CISC, đồng thời lệnh của RISC cũng đơn giản hơn để thực hiện trong phần cứng. Lệnh được đơn giản hóa nghĩa là các nhà sản xuất chip có thể đạt được hiệu quả cao hơn khi thiết kế chip. Những lệnh phức tạp sẽ được chia thành nhiều lệnh đơn giản bằng phần mềm, hay trình biên dịch. Bên trong các vi xử lý là hàng tỉ transistor [bóng bán dẫn], và với chip CISC, có nhiều transistor trong số này đại diện cho các lệnh có sẵn. RISC đơn giản và có ít lệnh hơn nên không cần nhiều transistor như CISC, vì vậy xét trên cùng 1 diện tích đế, người ta có thể bổ sung thêm những thứ khác như bộ đệm, chức năng xử lý bổ sung cho video, AI hay tính năng khác. Ngoài ra, các chip RISC của MIPS và Arm thường được sử dụng trong thiết bị IoT [Internet of Things] do ít transistor nên chúng có thể được sản xuất với kích thước vật lý nhỏ, ít tiêu thụ năng lượng và dễ tích hợp/nhúng.

  VOTHANHTRUNG[I11C] 10/9/2011, 17:02

RISC [viết tắt của Reduced Instructions Set Computer – Máy tính với tập lệnh đơn giản hóa] là một phương pháp thiết kế các bộ vi xử lý [VXL] theo hướng đơn giản hóa tập lệnh, trong đó thời gian thực thi tất cả các lênh đều như nhau. Hiện nay các bộ vi xử lý RISC phổ biến là ARM, SuperH, MIPS, SPARC, DEC Alpha, PA-RISC, PIC, và PowerPC của IBM.

Những năm cuối của thập niên 1970, các nhà nghiên cứu của IBM [và cả một số dự án khác] đã chứng minh rằng phần lớn các phương pháp đánh địa chỉ trực giao thường bị các chương trình bỏ qua. Đây chính là kết quả không mong đợi do sử dụng các trình biên dịch cấp cao thay vì sử dụng hợp ngữ. Các trình dịch tại thời điểm đó không đủ khả năng để tận dụng hết tính năng của các bộ VXL CISC; chủ yếu là do sự khó khăn trong thiết kế trình dịch. Trình biên dịch càng trở nên phổ biến thì các tính năng này lại càng bị bỏ quên.Một nghiên cứu khác cũng chỉ ra rằng những tính năng này ít được dùng vì thực ra chúng được thực thi chậm hơn một nhóm lệnh cùng thực hiện tác vụ đó.

Đây giống như một nghịch lý của quá trình thiết kế VXL, người thiết kế không có đủ thời gian để tối ưu cho tất cả các lệnh, do đó họ chỉ chú trọng đến những lênh thường được sử dụng nhiều nhất. Ví dụ cụ thể nhất có lẽ là lệnh INDEX của CPU máy VAX, sẽ nhanh hơn từ 45% đến 60% nếu lệnh này được thay bằng một nhóm các lệnh VAX đơn giản khác.

Tới lúc này, một phần đóng góp cho kiến trúc RISC đến từ thực tế đo đạc những chương trình trong thế giới thực. Andrew Tanenbaum từ tổng kết rất nhiều đo đạc này đã chỉ ra rằng hầu hết những CPU lúc bấy giờ đều được thiết kế thừa quá mức.
Mục tiêu của RISC chính là đơn giản hóa các lệnh, để mỗi lệnh có thể được thực thi chỉ trong 1 chu kỳ máy. Việc tập trung đơn giản hóa các lệnh đã cho ra đời các loại “Máy tính với tập lệnh được đơn giản hóa” – RISC.
Rất tiếc cụm từ “Máy tính với tập lệnh được đơn giản hóa” thường bị hiểu sai là máy tính với tập lệnh ít hơn các máy tính khác. Thực ra RISC lại thường có tập lệnh rất lớn. Cũng từ khuynh hướng đơn giản hóa đó, một số thiết kế thú vị ra đời như MISC [Minimal Instruction Set Computer – Máy tính với tập lệnh tối thiểu] hay OISC [One Instruction Set Computer] với những máy tính như Transport Triggered Architectures, trong khi các thiết kế khác đi sâu vào vấn đề Turing tarpit.
Điểm khác biệt thực sự giữa RISC so với CISC là nguyên tắc thực hiện mọi thứ trong các thanh ghi, đọc và lưu dữ liệu vào các thanh ghi. Do đó để tránh hiểu lầm nhiều nhà nghiên cứu thích dùng thuật ngữ load-store.

Qua thời gian, các kỹ thuật thiết kế cũ được gọi là CISC [Complex Instruction Set Computer – Máy tính với tập lệnh phức tạp], dù rằng thuật ngữ này thường chỉ được dùng với mục đích so sánh.

Người dùng thật ra chỉ quan tâm đến tốc độ, giá cả, và tính tương thích với các phần mềm có sẵn hơn là chi phí để phát triển những chip mới. Cùng với sự phức tạp của CPU tăng lên, chi phí thiết kế và sản xuất cũng tăng lên nhanh chóng. Lợi nhuận thu được từ RISC trở nên quá nhỏ bé so với chi phí đầu tư để phát triển các CPU mới, do đó ngày nay chỉ có những nhà sản xuất lớn mới có đủ khả năng phát triển những CPU mạnh. Kết quả là hầu hết những nền tảng RISC [ngoại trừ IBM POWER/PowerPC] đều thu hẹp quy mô [SPARC và MIPS] hoặc thậm chí từ bỏ [Alpha và PA-RISC] phát triển các CPU mạnh. Năm 2004 CPU nhanh nhất trong các tác vụ với số nguyên là x86 [benchmark với SPECint], và với số thực dấu chấm động là IBM Power 5 [benchmark với SPECfp].

Các hệ thống và các RISC phổ biến:Họ MIPS, trong các máy tính SGI, PlayStation và Nintendo 64 game consolesHọ POWER trong các SuperComputers/mainframes của IBMFreescale [trước đây là Motorola SPS] và IBM’s PowerPC trong Nintendo Gamecube, Microsoft Xbox 360, Nintendo Wii and Sony PlayStation 3 game consoles, và cho tới gần đây là Apple MacintoshSPARC và UltraSPARC, trong tất cả các hệ thống của SunHewlett-Packard PA-RISCDEC AlphaARM — Palm, Inc. Ban đầu sử dụng [CISC] Motorola 680×0 trong những PDA đầu tiên, nhưng hiện tại là [RISC] ARM; Nintendo sử dụng 1 chip ARM7 trong Game Boy Advance và Nintendo DS. Nhiều nhà sản xuất điện thoại di động, như Nokia cũng dựa trên kiến trúc của ARM.

Trải qua 1 thời gian dài, tập lệnh của các RISC ngày càng tăng. Vì thế nhiều người bắt đầu sử dụng thuật ngữ “load-store” để mô tả RISC CPU, vì đây là mấu chốt của kiến trúc RISC. Thay vì CPU xử lý rất nhiều phương pháp đánh địa chỉ, kiến trúc load-store sử dụng những đơn vị chuyên biệt để thực hiện những dạng rất đơn giản của các quá trình load và store. CISC CPU vì thế được gọi là “register-memory” hoặc “memory-memory”.

RISC và CISC là các đặc tính của các bộ hướng dẫn máy tính là một phần của kiến ​​trúc máy tính; chúng khác nhau về độ phức tạp, hướng dẫn và định dạng dữ liệu, chế độ địa chỉ, thanh ghi, thông số kỹ thuật opcode và cơ chế kiểm soát luồng, v.v.

Khi một máy được lập trình, lập trình viên sử dụng một số lệnh nguyên thủy hoặc lệnh máy cụ thể, chúng thường được gọi là tập lệnh của máy tính.

Biểu đồ so sánh

Cơ sở để so sánhRISC
CISC
Nhấn mạnh vềPhần mềmPhần cứng
Bao gồmĐồng hồ đơnĐồng hồ nhiều
Kích thước tập lệnhNhỏ béLớn
Định dạng hướng dẫn
định dạng cố định [32-bit]Các định dạng khác nhau [16-64 bit mỗi lệnh].
Chế độ địa chỉ được sử dụng
Giới hạn 3-5
12-24
Sổ đăng ký mục đích chung được sử dụng32-192
8-24
Suy luận bộ nhớ
Đăng ký để đăng ký
Bộ nhớ vào bộ nhớ
Thiết kế bộ nhớ cacheTách bộ đệm dữ liệu và bộ đệm hướng dẫn.
Bộ nhớ cache thống nhất cho hướng dẫn và dữ liệu.
Tỷ lệ khóa
50-150 MHz
33-50 MHz
Chu kỳ theo hướng dẫn
Chu kỳ đơn cho tất cả các hướng dẫn và CPI trung bình

Chủ Đề