Trong một số điều kiện nhất định, bạn có thể bị khóa phụ thuộc ACP trong SoC Arria® và Cyclone®. Dưới đây là một số tình huống ví dụ về cách điều đó có thể xảy ra:
- CPU ARM truy cập kết cấu FPGA bằng cách sử dụng quyền truy cập bộ nhớ thiết bị. Loại truy cập này khiến đường ống CPU bị đình trệ cho đến khi quá trình truy cập hoàn tất.
- Máy trạng thái kết cấu FPGA cấp quyền truy cập mạch lạc vào HPS qua ACP để có thể phản hồi quyền truy cập HPS.
- ACP nhận quyền truy cập, nhưng nó yêu cầu SCU thực hiện thao tác bảo trì bộ nhớ cache để hoàn thành nó. Tuy nhiên, hoạt động bảo trì bộ nhớ đệm không thể hoàn thành vì đường ống CPU bị đình trệ — hệ thống bị bế tắc.
Tránh cần phải truy cập lại HPS một cách mạch lạc thông qua ACP từ kết cấu để truy cập hoàn toàn đến từ HPS, vì điều này có thể gây ra tình huống bế tắc.
Bạn có thể đạt được kết quả tương tự bằng cách chia chức năng thành các phần nhỏ hơn. Ví dụ: bắt đầu một hoạt động có quyền truy cập, sau đó sử dụng quyền truy cập thứ hai để xác định trạng thái của hoạt động.