문서 ID: 000080950 콘텐츠 형태: 문제 해결 마지막 검토일: 2020-05-22

명시적으로 요청된 LSU(Load-Store Units)가 3-deep nest 내에서 사용될 때 인텔® HLS 컴파일러가 충돌하는 이유는 무엇입니까?

환경

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

    인텔® High Level Synthesis Compiler 버전 20.1 이전의 문제로 인해 메이드 파일을 실행할 때 아래 치명적인 오류 메시지가 나타날 수 있습니다. 3-deep 루프 네스트에서 명시적으로 요청된 LSU(Load-Store Units)를 사용하여 가변 지연 시간 마스터에 액세스하면 인텔 HLS 컴파일러가 충돌하기 때문입니다.

    스택 덤프:

    /lib64/libc.so.6(__libc_start_main 0x100)[0x7f6e050d6d20]

    //.. /.. /llvm/bin/aocl-opt(0x2b701)[0x7f6e0cc47701]

    HLS 메인 최적화 프로그램이 실패했습니다.

    make: *** [dut] G‰ [ 1

    해결 방법

    문제를 해결하려면 함수 인수에 키워드 "volatile"를 추가하십시오. 예를 들어:

    Void
    기능 (hls_stable_argument ,

    const volatile *, // 여기에 추가된 "휘발성")

    { ... }

    이 문제는 인텔® High Level Synthesis Compiler 버전 20.2부터 해결되었습니다.

    관련 제품

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

    인텔® 프로그래밍 가능 장치

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