Quảng Cáo
0943778078
Năm 1978, Intel gặp một “bóng ma” trong thế hệ DRAM 16 kilobit mới của mình: các bit trong bộ nhớ tự nhiên bị lật từ 0 thành 1 hoặc ngược lại, dù mạch điện, thiết kế lẫn điều kiện vận hành đều hoàn toàn bình thường. Các kỹ sư kiểm tra mọi thứ có thể nghĩ tới – từ lỗi thiết kế, nhiễu nguồn, nhiệt độ cho tới quy trình sản xuất – nhưng vẫn không tìm ra quy luật hay nguyên nhân rõ ràng. Về mặt logic, con chip “đúng”, nhưng dữ liệu bên trong lại đôi khi sai một cách bí ẩn.
Lời giải lại nằm ở một tầng vật lý hạt nhân, chứ không phải kỹ thuật số. Thủ phạm không phải là silicon mà là lớp gói gốm (ceramic package) bao bọc con chip. Nguyên liệu gốm khi đó chứa lượng vết các nguyên tố phóng xạ như uranium, thorium. Khi các hạt nhân này phân rã, chúng phát ra hạt alpha, về bản chất là những hạt mang năng lượng lớn di chuyển xuyên qua vật liệu. Khi một hạt alpha đi xuyên qua đế silicon, nó ion hoá môi trường, tạo ra một đám điện tích nhỏ. Bình thường, điều này chẳng nghĩa lý gì, nhưng với ô nhớ DRAM siêu nhỏ, điện tích lưu trữ cho một bit 1 vốn đã cực kỳ ít, nên “cú hích” điện tích này đủ để làm tụ mất bớt hoặc nhận thêm điện tích, khiến giá trị trong ô nhớ bị lật.
Hệ quả của một cú lật bit như vậy rất đa dạng. Nếu nó rơi vào vùng nhớ tạm sắp bị ghi đè, có thể bạn chẳng bao giờ nhận ra. Nếu nó đánh trúng một biến dữ liệu, kết quả tính toán, file tài liệu hoặc bản ghi trong cơ sở dữ liệu có thể sai đi chút ít mà không ai hay biết – đó chính là “silent data corruption”. Tệ hơn, nếu bit bị lật nằm trong mã lệnh, con trỏ hoặc cấu trúc điều khiển của hệ điều hành, chương trình có thể treo, crash hoặc sinh ra những lỗi cực kỳ khó tái hiện. Từ sự cố này, cả ngành công nghiệp nhận ra rằng ngay cả phần cứng “đang hoạt động tốt” cũng có thể thỉnh thoảng cho ra bit sai chỉ vì giới hạn của vật lý, và từ đó mới chú trọng mạnh vào vật liệu “low‑alpha”, RAM ECC và các cơ chế phát hiện, sửa lỗi mềm trong bộ nhớ.

6 days ago
12






