Chuẩn 64-bit đã được sử dụng trên các siêu máy tính từ thập niên 70 của thế kỷ trước. Đến đầu thập niên 90, nó bắt đầu được sử dụng trên các máy chủ và máy trạm. 

Đến những năm 2000, chuẩn 64-bit mới bắt đầu được sử dụng rộng rãi trên các máy tính cá nhân nhờ các nhà sản xuất như Intel và AMD. Sang thập niên 2010, ARM và Apple mới bắt đầu giới thiệu hệ thống trên một con chip (SoC) sử dụng kiến trúc 64-bit. 

Từ đó đến nay, chuẩn 512-bit mở rộng của 256-bit đã được giới thiệu, nhưng vì sao ngay đến CPU 128-bit còn chưa bao giờ được sản xuất đại trà? Để trả lời câu hỏi này, trước tiên hãy cùng ngược dòng trở lại hành trình sản xuất CPU của Intel.

Năm 1978, Intel ra mắt vi xử lý 8086 mà được gọi là kiến trúc x86. Họ nhà x86 có các phiên bản 8086, 80186, 80286 sử dụng số lượng địa chỉ bộ nhớ là 16-bit. Năm 1985, vi xử lý 80386 mới được Intel cho ra mắt sử dụng chuẩn 32-bit.  

{keywords}
x86 là cách gọi tắt của con chip cổ của Intel.

Năm 2000, đối thủ của Intel là AMD đã có một bước đột phá mang tính cách mạng khi giới thiệu kiến trúc AMD64 hay còn gọi là x86-64, sử dụng chuẩn 64-bit cho phép lưu trữ nhiều hơn và nâng cấp số thanh ghi địa chỉ (register) lên 16. Ở các phiên bản mở rộng về sau, x86-64 chính thức được gọi là x64 để hệ thống không bị lẫn giữa x86-32 và x86-64. 

Về sau, để dễ nhớ và đỡ mất thời gian, người ta gọi x86 là 32-bit còn x64 là 64-bit. Điều này lý giải vì sao trong hệ điều hành thường có một thư mục “nhân bản” đặt tên là x86, được sử dụng trong trường hợp người dùng muốn chạy giả lập môi trường 32-bit trên hệ điều hành 64-bit. 

Vậy trở lại câu hỏi vì sao 64-bit đã ra đời từ cuối thế kỷ trước mà đến nay vẫn không có CPU 128-bit? Câu trả lời là vì việc này không cần thiết. 

Từ 32-bit lên 64-bit không đơn thuần là tăng gấp đôi luồng dữ liệu, bởi số thanh ghi chứa địa chỉ cũng đã tăng gấp đôi. Tưởng tượng nó giống địa chỉ nhà và bạn muốn lấy thứ gì đó từ ai đó, bạn phải biết chính xác địa chỉ của họ. Trong thế giới máy tính, việc này tương đương với đọc và ghi còn căn nhà là thanh ghi.

Như đã biết, một bit máy tính có giá trị là 0 hoặc 1. Mỗi thanh ghi sẽ chứa 32-bit địa chỉ, tương đương với 2^32 bit x 8 (vì có 8 thanh ghi). Bấm máy tính và bạn sẽ ra kết quả bằng 4.294.967.296 bit x 8, quy đổi ra là 4,29 GB. 

Đây là một con số hết sức quen thuộc với người dùng máy tính lâu năm, bởi hệ điều hành 32-bit có giới hạn dung lượng cũng chính là 4 GB (Gigabytes).

{keywords}
Card màn hình đã có đến 256-bit, nhưng thực tế nó là 8 chip nhớ với luồng băng thông mỗi cái cũng chỉ là kiến trúc 32-bit.

Tương tự, 64-bit ta có 2^64 (2 mũ 64) bằng một kết quả ‘siêu to khổng lồ’ là 18.446.744.073.709.551.616. Quy đổi ra GB hay TB (Terabyte) vẫn là không đủ mà phải dùng đến đơn vị PB và (Petabyte) và EB (Exabyte). Nó tương đương 16,8 triệu TB hoặc 16 EB. Dung lượng này là gấp vài triệu lần bộ nhớ máy trạm cần dùng.

Những siêu máy tính mạnh nhất thế giới hiện nay cũng chỉ cần đến PB, người dùng phổ thông cũng chỉ cần đến 64 GB hoặc 128 GB RAM đã là quá thừa thãi. 

Tưởng tượng từ 64-bit lên 128-bit lại tiếp tục là một sự gấp ít nhất tỷ lần như vậy, tức 2^128 bit x 8. Đó là một con số cực kỳ khổng lồ mà hiện nay thế giới cũng chưa có thuật ngữ nào để mô tả về nó. 

Bên cạnh đó, từ 32-bit lên 64-bit đã là một quá trình biên dịch lại (compile) cực kỳ vất vả do độ rộng của địa chỉ đã tăng lên. Khối lượng công việc sẽ còn đồ sộ hơn nữa nếu người ta chuyển sang dùng CPU 128-bit. 

Vì thế 128-bit là một thứ gì đó khá xa vời với kiến trúc CPU ở thời điểm hiện tại, dù GPU có thể đã dùng đến thuật ngữ 256-bit băng thông từ khá lâu. Lý do chính là vì mỗi thanh ghi 128-bit của CPU tương đương 16 bytes dữ liệu đi qua bộ nhớ (có thể lên tới 32 cái) trong khi 256-bit của GPU thực ra lại là 8 chip nhớ với mỗi cái có băng thông chỉ là 32-bit (4 bytes). 

Ngoài ra, nếu nâng cấp lên kiến trúc 128-bit, hệ điều hành và tất cả các phần mềm, trình điều khiển (drivers) cũng phải được viết lại. Vì thế dù các công ty đã đầu tư hàng tỷ USD để xây dựng nhà máy với kiến trúc bóng bán dẫn có mật độ ngày càng nhỏ (xuống tới 2nm), nhưng không ai đầu tư vào việc chuyển từ kiến trúc dữ liệu 64-bit lên 128-bit cả. 

Phương Nguyễn

Quên tắt máy tính nhiều ngày có nguy hiểm?

Quên tắt máy tính nhiều ngày có nguy hiểm?

Máy chủ có thể hoạt động không ngừng nghỉ nhiều tháng trời, nhưng liệu máy tính cá nhân có thể làm được điều tương tự?