Se houver uma operação de divisão de ponto flutuante em seu projeto oneAPI, você pode encontrar resultados inconsistentes entre o oneAPI FPGA hardware e o emulador devido aos dois modos de compilação terem modos de arredondamento diferentes de operações de ponto flutuante.
Um código e um resultado de amostra são exibidos abaixo:
Código: flutuação res = 1,0f/1272;
Resultado da saída: o resultado do emulador é 0.000786163, mas o resultado do hardware é 0.000786164
Para contornar esse problema, você deve usar a opção "-fp-model=precise -no-fma" e "-Xsrounding=ieee" no seu comando de compilação.
Exemplo de comando:
icpx -fsycl -fintelfpga -Xshardware -Xsrounding=ieee -fp-model= preciso -no-fma <source_file>.cpp
Essas informações estão programadas para serem adicionadas em uma versão futura do guia de otimização de FPGA para o guia do usuário dos kits de ferramentas oneAPI.