Sự khác biệt giữa con trỏ nhị phân và con trỏ mã màu xám

Dec 06, 2019

Sự khác biệt giữa con trỏ nhị phân và con trỏ mã màu xám

(1) Do đồng bộ hóa bắt tay, con trỏ có thể có nhiều bit thay đổi cùng một lúc và con trỏ nhị phân có thể nhảy qua một độ dài tùy ý mỗi khi nó di chuyển, điều này mang lại sự thuận tiện cho việc thực hiện một số chức năng của FIFO (cho ví dụ, phần cứng trực tiếp điều khiển FIFO từ bộ đệm Một gói lỗi bị loại bỏ trong luồng dữ liệu); và con trỏ mã Gray thường chỉ có thể di chuyển lên hoặc xuống.

(3) So với đồng bộ hóa trực tiếp, đồng bộ hóa bằng cách bắt tay đòi hỏi nhiều chu kỳ xung nhịp, do đó phán đoán hoàn toàn trống rỗng của các con trỏ nhị phân là "bảo thủ" hơn so với phán đoán hoàn toàn trống rỗng của các con trỏ mã Gray; để thiết kế một chiếc FIFO có dung lượng lớn và bao gồm bộ nhớ, Người ta nói rằng không gian bị mất do phán đoán bảo thủ có thể bị bỏ qua; nhưng đối với một FIFO nhỏ, "bảo thủ" này có thể không được chấp nhận. Ví dụ, một FIFO bao gồm 8 thanh ghi. Đối với một con trỏ được mã hóa bằng mã Gray, trong trường hợp xấu nhất, khi FIFO được người viết đánh giá là đầy đủ, thực tế chỉ có năm dữ liệu được lưu trữ trong đó (sử dụng bộ đồng bộ hóa hai cấp, có thể mất ba Đồng bộ hóa hai chu kỳ và đọc các hoạt động xảy ra trong ba chu kỳ này); Đối với các con trỏ có mã hóa nhị phân, khi FIFO được đánh giá là đầy đủ, có thể chỉ có ba dữ liệu trong FIFO trở xuống (sử dụng bộ đồng bộ hóa hai giai đoạn, trong trường hợp tốt nhất, bắt buộc phải có năm chu kỳ bắt tay và đọc các hoạt động đọc trong cả năm chu kỳ).


Gửi yêu cầu