Devido a um problema na Intel® High Level Synthesis Compiler versão 20.1 e anterior, você pode ver a mensagem de erro fatal abaixo ao executar os arquivos make. Isso ocorre porque o compilador Intel HLS falhará se o mestre de latência variável for acessado usando uma Unidade de armazenamento de carga (LSUs) solicitada explicitamente no ninho de loop de 3 profundidades.
Lixão de pilha:
/lib64/libc.so.6(__libc_start_main 0x100)[0x7f6e050d6d20]
//.. /.. /llvm/bin/aocl-opt(0x2b701)[0x7f6e0cc47701]
Falha no otimizador principal do HLS.
make: *** [dut] 1
Para resolver o problema, adicione a palavra-chave "volátil" ao argumento da função. Por exemplo:
Vazio
função (hls_stable_argument ,
const volátil *, // "volátil" adicionado aqui)
{ ... }
Este problema é corrigido a partir da Intel® High Level Synthesis Compiler versão 20.2.