2015-07-26 22 views
11

Trong Tập 3 của Hướng dẫn sử dụng Intel nó có chứa các mô tả về một bộ đếm sự kiện phần cứng:Hàng đợi Lệnh CPU Intel cung cấp dự đoán nhánh tĩnh?

BACLEAR_FORCE_IQ

Đếm số lần một BACLEAR buộc bởi Instruction Queue chỉ. IQ cũng chịu trách nhiệm cung cấp dự đoán nhánh có điều kiện hướng dựa trên sơ đồ tĩnh và dữ liệu động được cung cấp bởi L2 Đơn vị dự báo chi nhánh. Nếu mục tiêu chi nhánh có điều kiện không được tìm thấy trong Mảng đích và chỉ số IQ dự đoán rằng nhánh đó được thực hiện, thì chỉ số IQ sẽ buộc Máy tính địa chỉ chi nhánh phát hành BACLEAR. Mỗi BACLEAR được xác nhận bởi BAC tạo ra khoảng 8 chu kỳ bong bóng trong đường dẫn tìm nạp lệnh.

Tôi luôn nghĩ Máy tính địa chỉ chi nhánh thực hiện thuật toán dự đoán tĩnh (khi Branch Target Buffer không chứa mục nhập nhánh)?

Ai đó có thể xác nhận hai yếu tố trên là chính xác không? Tôi không thể tìm thấy gì cả.

+1

Tôi đã xóa câu trả lời của mình vì câu trả lời không hữu ích. Nhưng tôi nhận thấy rằng tài liệu tham khảo Tối ưu hóa Intel cho biết: "Kiến trúc Intel Core không sử dụng dự đoán tĩnh heuristic.Tuy nhiên, để duy trì sự nhất quán giữa các bộ vi xử lý Intel 64 và IA-32, phần mềm nên duy trì dự đoán tĩnh theo kiểu heuristic như mặc định. " –

Trả lời

0

Nếu mục tiêu chi nhánh có điều kiện không được tìm thấy trong Array Target

có thể nó không được tìm thấy như thế nào? bạn mặt nạ nó với một mặt nạ bit để tìm chỉ mục vào bảng và nhận được mục tiêu chi nhánh tiếp theo.

Vâng, nếu bạn sau khi đọc kết quả, kiểm tra xem địa chỉ cuộc gọi có khớp với thẻ trên kết quả bạn có kết quả "không được thực hiện" hay không.

Tại thời điểm này, chúng tôi nhận được phần thứ hai của tuyên bố.

và IQ dự đoán rằng chi nhánh được lấy

mục tiêu Vì vậy, chi nhánh nói "không được" và IQ dự đoán rằng nó sẽ được thực hiện, chúng tôi có một sự mâu thuẫn.

Để giải quyết mâu thuẫn, chỉ số IQ thắng vì mục tiêu chi nhánh chỉ là "nếu chúng ta nhảy, chúng ta nhảy ở đây", nhưng IQ dự đoán nếu chúng ta nhảy hoặc không dựa trên logic nhiều hơn.

Do đó

thì IQ sẽ buộc Calculator Chi nhánh Địa chỉ phát hành một BACLEAR . Mỗi BACLEAR được BAC xác nhận sẽ tạo ra một bong bóng chu kỳ 8 trong đường dẫn tìm nạp lệnh.

Điều nào tốt trong đường ống giai đoạn 14-19. 8 chu kỳ là nếu chỉ số IQ có thể đọc địa chỉ đích thực tế từ lệnh (kết hợp với PC), nếu giá trị cần được đọc trong thanh ghi (có thể chưa được gỡ bỏ) thì có thể lâu hơn một chút.

Các vấn đề liên quan