문서 ID: 000097576 콘텐츠 형태: 호환성 마지막 검토일: 2024-05-16

oneAPI FPGA 하드웨어 결과가 부동 소수점 분할에 대한 에뮬레이션 결과와 일치하지 않는 이유는 무엇입니까?

환경

    인텔® Quartus® Prime Pro Edition
BUILT IN - ARTICLE INTRO SECOND COMPONENT
설명

oneAPI 설계에 부동 소수점 나누기 연산이 있는 경우 두 컴파일 모드에서 부동 소수점 연산의 반올림 모드가 다르기 때문에 oneAPI FPGA 하드웨어와 에뮬레이터 간에 일관되지 않은 결과가 발생할 수 있습니다.

샘플 코드와 결과는 다음과 같습니다.

코드: float res = 1.0f/1272;

출력 결과: 에뮬레이터 결과는 0.000786163이지만 하드웨어 결과는 0.000786164입니다.

해결 방법

이 문제를 해결하려면 컴파일 명령에서 "-fp-model=precise -no-fma" 및 "-Xsrounding=ieee" 옵션을 사용해야 합니다.

예제 명령:

icpx -fsycl -fintelfpga - Xshardware -Xsrounding=ieee -fp-model= precise -no-fma <source_file>.cpp

이 정보는 oneAPI 툴킷용 FPGA 최적화 가이드 사용자 가이드의 향후 릴리스에 추가될 예정입니다.

관련 제품

이 문서는 다음 항목에 적용됩니다. 1 제품

인텔® Stratix®

1

이 페이지의 콘텐츠는 원본 영어 콘텐츠에 대한 사람 번역 및 컴퓨터 번역의 조합으로 완성되었습니다. 이 콘텐츠는 편의와 일반적인 정보 제공을 위해서만 제공되었으며, 완전하거나 정확한 것으로 간주되어서는 안 됩니다. 이 페이지의 영어 버전과 번역 사이에 모순이 있는 경우 영어 버전이 우선적으로 적용됩니다. 이 페이지의 영어 버전을 확인하십시오.