Vários fatores podem afetar a eficiência do controlador. Para obter a melhor eficiência, você deve considerar esses fatores em seu design:
• Frequência de interface do usuário versus frequência de interface HBM2 - A frequência da lógica do usuário na malha FPGA desempenha um papel importante na determinação da eficiência da memória HBM2.
• Configurações do controlador:
Desabilite o buffer de reordenação nas configurações do controlador para obter uma eficiência aprimorada. (No entanto, se o aplicativo exigir que os dados de leitura estejam fornecidos na mesma ordem que as solicitações de leitura, então é preferível habilitar o buffer de reordenador.) Comprimento de explosão — o modo pseudo-BL8 ajuda a garantir um tempo de acesso de memória mais curto entre as sucessivas transações BL4, para melhorar a eficiência do controlador.
• Padrões de tráfego — os padrões de tráfego desempenham um papel importante na determinação da eficiência do controlador.
Endereços DRAM sequenciais versus aleatórios: endereços sequenciais permitem que o controlador empregue solicitações de gravação consecutivas em uma página aberta e ajude a obter alta eficiência do controlador. Os endereços aleatórios exigem comandos PRECHARGE/ACTIVATE constantes e podem reduzir a eficiência do controlador. Defina a Política de pré-carga automática do usuário como FORÇADA e defina o sinal awuser/aruser na interface AXI como HIGH para habilitar a Pré-carga automática para transações aleatórias. Para transações sequenciais, defina a Política de pré-carga automática como DICA. Transações somente de leitura ou gravação sequenciais: transações sequenciais somente para leitura ou gravação têm maior eficiência, pois evitam tempos de devolução de barramentos do barramento de dados bid direcional DRAM.
• IDs de transação AXI — o uso de diferentes IDs de transação AXI ajuda o controlador HBM2 a agendar as transações para alta eficiência. O uso da mesma ID de transação AXI preserva a ordem de comando e pode resultar em menor eficiência.