Dự án Trung Quốc đặt tham vọng biến chip AMD Zen thành bộ xử lý RISC-V!
Nếu thành hiện thực, người Trung Quốc có thể tạo ra hàng ngàn con chip RISC-V chỉ trong chớp mắt.
Trong những năm gần đây, sự kiểm soát ngặt nghèo của chính phủ Mỹ đối với sự phát triển công nghệ của Trung Quốc đã khiến quốc gia 1,4 tỷ dân trở nên thận trọng trong từng bước đi của họ. Gần đây nhất, chính phủ nước này đã đặt trọng tâm vào việc phát triển bộ xử lý RISC-V, như một cách để tránh việc "cầm dao đằng lưỡi" khi lệ thuộc vào kiến trúc x86 của Intel-AMD hoặc ARM của công ty Anh quốc.
Là một kiến trúc mở, RISC-V cho phép nhà phát triển được tự do "vùng vẫy" mà không phải lo ngại vấn đề bản quyền sẽ bị cắt như kiến trúc nguồn đóng (x86) hoặc có trả phí (ARM). "Drama" ARM vs. Qualcomm mới đây là ví dụ rõ ràng nhất cho việc "có trả tiền thuê đàng hoàng cũng chưa chắc không bị chủ nhà kiếm chuyện". Thế nên tự lực tự cường vẫn là lựa chọn bền vững về lâu dài.
Song phát triển một con chip mới dựa trên kiến trúc mới không phải việc đơn giản. So sánh về độ khó nó còn phức tạp hơn cả "làm nhái" theo một kiến trúc có sẵn. Lý do vì x86 và ARM đều đã có hàng chục năm để xây dựng hệ sinh thái. Còn RISC-V hãy còn là "búp măng non" và trước mắt không có nhiều hãng sẵn sàng đầu tư vào. Và một quy luật bất thành văn của thị trường là - nếu thị phần không đủ lớn thì chẳng ai hỗ trợ anh cả!
"Số lượng tự nó cũng là một loại chất lượng", Joseph Stalin từng đúc kết như thế.
Quay lại vấn đề chính, Jiachen là một trong hai cái tên bạn cần nhớ trong hôm nay, bên cạnh Zentool. Trong đó, Jiachen là tên dự án của người Trung Quốc nhằm "tẩy não" chip AMD Zen thành bộ xử lý RISC-V. Còn Zentool là công cụ do các nhà nghiên cứu của Google phát triển đã đặt nền móng cho ý tưởng này.
Hồi tháng trước, trong khi mày mò "bới lông tìm vết", nhóm kỹ sư bảo mật của Google đã phát hiện ra cơ chế "làm giả" chữ ký bảo mật được AMD sử dụng trong quá trình xác thực "chính chủ" khi cập nhật firmware mới cho chip của họ. Trên thực tế thì lỗ hổng này không được xem là quá nghiêm trọng vì để có thể thực hiện điều trên, đòi hỏi người thao tác phải có quyền truy cập hệ thống ở mức 0 (ring 0), tương đương họ phải là admin hay chủ sở hữu thiết bị.
Cấu trúc chữ ký bảo mật được AMD dùng để xác thực bản cập nhật microcode cho chip của mình
Nhưng phát hiện của nhóm kỹ sư Google có ý nghĩa gì? Ở chỗ họ có thể tạo ra một bản firmware "giả mạo" và thay đổi cách thức làm việc của con chip Zen ở cấp độ vi mã (microcode). Nôm na thì nó tương tự bạn "lập trình" lại con chip theo mong muốn của chính mình. Theo công bố của nhóm kỹ sư, các chip Zen 1/2/3/4 dùng chung cơ chế xác thực trên nên đều có thể bị "hack" theo cùng phương pháp. Bộ công cụ mà họ đúc kết lại có tên gọi Zentool.
Vậy "lỗ hổng" trên có ý nghĩa gì với người Trung Quốc? (cá nhân mình không gọi đó là "lỗ hổng", vì bạn đã bỏ tiền ra để sở hữu một sản phẩm và nếu bạn chả quan tâm gì tới bảo hành thì làm gì với nó là quyền của bạn, đúng không? Có ai xem việc thay đổi hệ số nhân chip hay cập nhật firmware là "lỗ hổng" không?)
Mặc dù x86 (trên chip Zen) là kiến trúc đã tồn tại được nửa thế kỷ. Và từ đầu chúng dựa trên thiết kế tập lệnh phức tạp (CISC). Thì ngày nay điều đó không chính xác nữa. Thực tế sau nhiều thập kỷ "tiến hoá", CISC chỉ còn là "cái vỏ bên ngoài". Sau quá trình giải mã (decode), các tập lệnh x86 được "băm nhỏ" thành các vi lệnh/vi mã (micro-op/microcode). Cấu trúc các vi mã này trên thực tế y hệt các tập lệnh rút gọn (RISC). Song AMD lẫn Intel không công bố thông tin chi tiết về các tập lệnh RISC này, họ vẫn duy trì "cái vỏ" CISC bên ngoài. Bạn có thể xem lại bài phân tích sau để hiểu hơn vấn đề.
Cấu trúc x86 hiện đại không thuần tuý là CISC mà đã chuyển qua RISC sau giai đoạn front-end
Và nếu có theo dõi AMD từ lâu, chắc bạn sẽ nhớ cái tên K12. Đây là một dự án mà huyền thoại Jim Keller từng tham gia thiết kế. Thực tế nó chính là Zen nhưng có năng lực xử lý các tập lệnh ARMv8 64-bit. Ban đầu AMD nói về K12 vào 2016 và dự kiến tung ra trong 2017. Nhưng khi Lisa Su về cầm trịch, K12 bị "cất sổ" và Zen chỉ thuần tuý là x86. Mặc dù ngày nay các chip Zen không chạy được tập lệnh ARM nhưng dự án K12 cho thấy về bản chất, x86 đã là RISC "từ trong lòng".
Ngoài ra có 2 ví dụ khác cho thấy x86 và RISC không quá xa lạ chính là dòng chip M của Apple và Snapdragon X của Qualcomm. Cả 2 sản phẩm này cùng liên quan ở cái tên - Nuvia (cũng chính là nguồn cơn drama ARM vs. Qualcomm). Nuvia là công ty được thành lập từ các cựu kỹ sư Apple với mục tiêu giả lập khả năng chạy ứng dụng x86 trên kiến trúc ARM. Snapdragon X được phát triển dựa trên nhân xử lý Kryo/Oryon chính do Nuvia phát triển. Đây là lý do tại sao các chip ARM mới nhất của Qualcomm có thể chạy được ứng dụng x86 (giả lập) trên Windows là vậy.
Như thế có thể thấy, x86 và RISC tưởng là xa lạ nhưng hoá ra, "ruột rà" hơn ta tưởng. Nôm na thì cũng như Mỹ và Đức cách nhau một cái đại dương nhưng dân Mỹ gốc Đức đông cũng bằng phân nửa dân Đức hệ EU.
Nhân Oryon của Qualcomm cho phép xử lý cả tập lệnh ARM và x86 (giả lập)
Trở lại với người Trung Quốc, phát hiện của nhóm kỹ sư Google vô tình mở ra một hướng đi mới. Nếu bên dưới các chip Zen thực sự là kiến trúc RISC, và Zentool có thể giúp họ "qua mặt" cơ chế bảo mật, thì sao không thử? (thực tế các thí nghiệm đều bắt nguồn từ... thử và sai).
Vậy là dự án Jiachen ra đời. Nó đặt ra mục tiêu cho bất kỳ ai tham gia là tìm cách thay đổi vi mã trên các chip Zen của AMD - cụ thể là EPYC 9004 (Zen 4) - để thực thi được các tập tin nhị phân RISC-V. Việc đó có thể là chạy một cách trực tiếp (thay đổi hoàn toàn cấu trúc chip), hoặc tăng tốc quá trình xử lý qua quá trình giả lập (tương tự Snapdragon X khi chạy ứng dụng x86). Kết quả công việc phải được kiểm chứng thông qua các ứng dụng benchmark RISC-V như Coremark hoặc Dhrystone. Hạn chót để tham dự chương trình là 6/6 tới này. Ứng viên thắng giải sẽ nhận được phần thưởng 20,000 CNY (khoảng gần 3,000 USD).
Tuy số tiền thưởng đưa ra có vẻ khá thấp, song chúng vẫn có thể được thay đổi về sau này, nếu như dự án thực sự có tiềm năng.
Có thể bạn đang thắc mắc tại sao người Trung Quốc lại chọn mẫu chip trên? Một lý do vì đây là dòng chip gần như tiên tiến nhất trên thị trường, với model cao cấp nhất có tới 128 nhân xử lý. Ngay trước mắt để phát triển một chip RISC-V cấu hình cao như vậy gần như là không thể (và nếu có thì chi phí cũng rất cao). Vậy tại sao không tận dụng thứ đang có sẵn và số lượng cũng rất ê hề? Trên thực tế, sản lượng chip của AMD chỉ đứng sau Intel nên việc tìm mua số lượng lớn không phải vấn đề khó với Trung Quốc. Nếu dự án "hồn Trương Ba, da hàng thịt" này thực sự thành công, việc phát triển hệ sinh thái RISC-V sẽ thuận lợi hơn khi nào hết. Có nền tảng phần cứng trong tay thì phát triển phần mềm sẽ càng dễ dàng.
EPYC 9004 là một trong những chip xử lý có cấu hình mạnh nhất thế giới hiện nay
Song nói vậy không có nghĩa mọi thứ đã chắc như đinh đóng cột. Việc có thể sửa lại microcode chip và kiến trúc Zen có nền tảng cho RISC không tương đương với việc chắc chắn Zen sẽ chạy được tập lệnh RISC-V. Một số bình luận chỉ trích cho rằng kể cả bên dưới Zen là RISC, thì các tập lệnh RISC đó cũng được tối ưu cho x86. Thậm chí kể cả ARM và RISC-V cùng là RISC, thì không có nghĩa tập lệnh của chúng xài được cho nhau. Có nghĩa bản thân các ứng viên tham gia cũng cần phải viết lại các vi mã cho phù hợp với RISC-V (lấy điều kiện là vi mã đó cho phép viết lại). Vì thế có rất nhiều trở ngại phát sinh và không loại trừ khả năng là dự án này không thể thực hiện được (chưa nói tới khoảng thưởng 3,000 USD là con số không nhiều).
Nhưng dù sao, không phải là người Trung Quốc không có thành tựu về tự thiết kế chip. Gần đây nhất chúng ta có trường hợp của DeepSeek AI khi hãng phát triển đạt được độ tối ưu về hiệu suất đã gần mức ngôn ngữ máy, làm choáng váng cả giới công nghệ phương tây. Xa xôi hơn trước, họ cũng phát triển thành công dòng chip Sunway SW26010 dùng trên siêu máy tính Sunway TaihuLight, cũng là một kiến trúc RISC và nó đã đứng đầu top siêu máy tính mạnh nhất thế giới suốt 2 năm liền.
Hệ sinh thái còn non trẻ của RISC-V cần thêm nhiều đóng góp của cộng đồng để lớn mạnh
Do đó, khả năng họ có thể "jailbreak" được chip Zen của AMD hay không chưa thể nói trước được. Cần nói thêm rằng RISC-V vẫn là kiến trúc rất trẻ, số tập lệnh và phần mở rộng vẫn rất hạn chế và cần được cộng đồng "nuôi dưỡng". Nếu người Trung Quốc có thể dịch ngược được vi mã của Zen và "biến tấu" thành bản RISC-V của riêng họ thì...
