Tôi đang xem xét các GPU khác nhau cho dự án luận án của mình và tôi tiếp tục thấy rằng các khối số nhân là 18x18 bit, tại sao lại như vậy? Tại sao chúng không phải là 16 bit?
Tôi đang xem xét các GPU khác nhau cho dự án luận án của mình và tôi tiếp tục thấy rằng các khối số nhân là 18x18 bit, tại sao lại như vậy? Tại sao chúng không phải là 16 bit?
Câu trả lời:
Tại sao không? Thực sự, nó hoàn toàn tùy ý. Chi phí về diện tích chip cho 18 × 18 bit so với 16 × 16 bit là không đáng kể khi so sánh với diện tích được sử dụng cho tất cả các tài nguyên khác (đặc biệt là định tuyến) trên một đồ họa. Nếu bạn không cần thêm bit, chỉ cần bỏ qua chúng.
Tuy nhiên, tôi nghĩ rằng cách thực hành phổ biến để tạo các khối nhân 18 × 18 bit có cơ sở trong thực tế là bộ nhớ trên chip của nhiều GPU là các chuỗi rộng 9 bit.
Tại sao bộ nhớ rộng 9 bit? Chà, 9 bit cho phép bạn lưu trữ 8 bit cộng với chẵn lẻ, hoặc 64 bit cộng với 8 bit ECC (tổng cộng 72 bit). Các ứng dụng quan tâm đến tính toàn vẹn dữ liệu có thể sử dụng tốt các ký ức đó.
Tuy nhiên, có rất nhiều ứng dụng không cần bit thứ 9 để bảo vệ và muốn sử dụng nó để có độ chính xác cao hơn trong dữ liệu. Sẽ không có ý nghĩa gì khi thiết kế một con chip có thể lưu trữ dữ liệu trong các khối 18 bit, nhưng chỉ có thể xử lý các khối 16 bit.
Tôi nghĩ rằng nó bắt nguồn từ những kỷ niệm.
Chúng đã có 18 bit (để cho phép một bit chẵn lẻ trên mỗi byte) và đã được tạo ra cho một thế hệ (của các GPU chứ không phải các kỹ sư!) Hoặc trước khi các số nhân xuất hiện trong hình. Và được đưa ra một trong những ứng dụng lớn là cho các bộ lọc FIR, sau đó cho các ứng dụng không cần tính chẵn lẻ, có hệ số 18 bit tốt hơn là chỉ có hệ số 16 bit, vì diện tích silicon tăng rất nhỏ.