Sự cố quan trọng
Do sự cố trong Phần mềm Intel® Quartus® Prime Pro phiên bản 22.3 trở về trước, bạn có thể thấy các vòng lặp được báo cáo cho các bộ nhớ chứa chức năng cho phép đọc đang được triển khai trong MLAB bằng một trong các phương pháp báo cáo sau:
- Cảnh báo "Tìm thấy vòng lặp tổ hợp của * nút" trong báo cáo Trình phân tích thời gian.
- Vi phạm quy tắc "LNT-30011 - Thiết kế chứa vòng lặp tổ hợp" trong báo cáo Trợ thủ thiết kế (Tổng hợp).
- "TMC-20017 - Đã phát hiện vòng lặp" Vi phạm quy tắc trong báo cáo Trợ lý thiết kế (Đăng xuất).
- "Vòng lặp" được báo cáo khi chạy báo cáo "check_timing" trong Trình phân tích Thời gian.
- "Node: * được xác định là đồng hồ nhưng được tìm thấy mà không có sự gán đồng hồ liên quan." cảnh báo trong báo cáo Timing Analyzer.
Các vòng lặp được báo cáo là kết quả của một chốt được triển khai trên đầu ra của MLAB để hỗ trợ chức năng cho phép đọc. Chốt này không được phân tích thời gian chính xác, có nghĩa là chức năng không thể được đảm bảo trong phần cứng.
Sự cố này có thể xảy ra đối với các kiểu thực hiện bộ nhớ sau, được đặt trong khối bộ nhớ MLAB:
- Mã RTL trực tiếp suy ra bộ nhớ chứa chức năng cho phép đọc.
- Khởi tạo bộ nhớ trực tiếp, bao gồm chức năng cho phép đọc và cài đặt ram_block_type MLAB hoặc AUTO
Để khắc phục sự cố này, hãy thực hiện một trong các thao tác sau:
- Tránh sử dụng chức năng cho phép đọc.
- Đối với bộ nhớ suy luận RTL, hãy sử dụng thuộc tính ramstyle để buộc bộ nhớ vào các khối bộ nhớ M20K.
- Để khởi tạo bộ nhớ trực tiếp, hãy đặt am_block_type r thành M20K
- Sử dụng gán QSF sau để ngăn ánh xạ từ bộ nhớ M20K sang MLAB: "set_global_assignment -name BLOCK_RAM_TO_MLAB_CELL_CONVERSION OFF"
Sự cố này dự kiến sẽ được khắc phục trong bản phát hành trong tương lai của Phần mềm phiên bản Intel® Quartus® Prime Pro.