Trên các vi xử lý Intel 8086 và 8088, phép nhân MUL không được thực hiện bởi phần cứng chuyên dụng mà thay vào đó là thuật toán dịch và cộng lặp lại do vi lệnh điều khiển.
Phần cứng máy tính 50 năm tuổi có thể không theo kịp tiêu chuẩn hiện đại, nhưng điều đó không ngăn cản những người yêu công nghệ tìm cách “hồi sinh” chúng. Mới đây, một nhà khoa học máy tính có biệt danh Brad (@bradthx trên X) đã ra mắt một card tăng tốc ISA tự chế dành cho các hệ thống PC sử dụng bộ xử lý Intel 8086 và 8088. Dự án này sử dụng chip TRW MPY12HJ để tăng tốc phép nhân số nguyên, giúp hiệu suất cải thiện khoảng 2,5 lần so với bộ xử lý gốc.
Theo Brad, ý tưởng này bắt nguồn từ hạn chế của các CPU x86 đời đầu trong việc xử lý phép nhân. Trên Intel 8086 và 8088, lệnh MUL không được thực hiện bằng phần cứng đặc biệt mà phụ thuộc vào thuật toán dịch và cộng lặp lại do vi lệnh kiểm soát. Quá trình này giống như việc nhân số nhị phân bằng tay trên giấy, khiến thời gian tính toán kéo dài và gây tắc nghẽn hiệu năng trong nhiều tác vụ.

Card ISA mà Brad phát triển sử dụng chip TRW MPY12HJ – một bộ nhân song song 12×12 từng xuất hiện vào cuối những năm 1970 và đầu 1980. Chip này được thiết kế đặc biệt cho các phép toán số học tốc độ cao và hoạt động theo cơ chế bất đồng bộ, không cần xung nhịp. Nhờ vậy, nó có thể xử lý phép nhân nhanh hơn nhiều so với thuật toán vi lệnh tích hợp trong các CPU Intel cũ.
Điều đáng chú ý là bộ nhân TRW đủ nhanh để hoàn thành phép tính trong hai chu kỳ bus liên tiếp của hệ thống, giúp giảm thiểu độ trễ khi giao tiếp với CPU. Theo Brad, card ISA mới có thể tăng tốc lệnh MUL lên khoảng 2,5 lần so với bộ nhân tích hợp mà không làm giảm hiệu năng trong suốt quá trình hoạt động.
Về mặt kỹ thuật, dự án này hoàn toàn khả thi từ thời kỳ đầu của máy tính cá nhân. Chip TRW MPY12HJ đã tồn tại từ khi IBM PC Model 5150 ra mắt vào năm 1981, trang bị CPU Intel 8088 và khe cắm ISA. Điều này có nghĩa là, về lý thuyết, các kỹ sư của thời kỳ đó cũng có thể phát triển một giải pháp tương tự để tăng tốc hệ thống, mặc dù chi phí và nhu cầu thực tế lúc bấy giờ có thể đã khiến ý tưởng này không được triển khai rộng rãi.
Tuy nhiên, card tăng tốc của Brad không phải là một giải pháp “tăng tốc toàn diện” cho tất cả phần mềm cổ điển. Theo Brad, chỉ những chương trình được viết hoặc chỉnh sửa để tận dụng bộ nhân phần cứng mới có thể tận dụng được ưu điểm của card ISA. Các ứng dụng đã được biên dịch sẵn vẫn sẽ sử dụng lệnh MUL mặc định của CPU và không nhận được sự cải thiện về hiệu năng.

Điều này có nghĩa là dự án chủ yếu phục vụ mục đích nghiên cứu, thử nghiệm và bảo tồn công nghệ cổ điển, thay vì nâng cấp thực tế cho các hệ thống PC cũ. Tuy nhiên, nó vẫn thể hiện sự sáng tạo của cộng đồng đam mê phần cứng retro và khả năng họ tìm ra những giải pháp mới từ công nghệ cũ.
Trong bối cảnh máy tính hiện đại ngày càng mạnh mẽ, những dự án như card ISA cho Intel 8086 nhắc nhở rằng lịch sử công nghệ vẫn còn rất nhiều tiềm năng để khai thác. Không chỉ là hoài niệm, các thử nghiệm như vậy còn giúp chúng ta hiểu rõ hơn về cách các kiến trúc máy tính ban đầu vận hành và cách tối ưu hóa chúng bằng những ý tưởng sáng tạo.
