Aufgrund eines Problems im Intel® OneAPI Base Toolkit (Base Kit) Version 2023.2 in der DevCloud-Umgebung kann beim Kompilieren einer RTL-Bibliothek ein solcher Fehler angezeigt werden.
Compilerfehler: Ein an die HDL-Bibliothekskomponente übergebener Zeiger muss alle Kriterien erfüllen:
Compiler-Fehler: 1. Es muss sich um einen globalen oder konstanten Adressraumzeiger handeln. < style="margin-left: 40px;" >
Compilerfehler: 2. Muss ein Kernargument sein. < style="margin-left: 40px;" >
Compiler-Fehler: 3. Muss mit dem Schlüsselwort "restrict" markiert werden, um das Aliasing vorherzusehen. < style="margin-left: 40px;" >
Compiler-Fehler: 4. Darf außer einer einzelnen HDL-Bibliothekskomponente nicht verwendet werden ODER < style="margin-left: 40px;" >
Compiler-Fehler: Alle seine Verwendungen, einschließlich aller HDL-Bibliothekskomponenten, müssen schreibgeschützt sein. < style="margin-left: 40px;" >
Fehler: Optimierung fehlgeschlagen
Um dieses Problem zu umgehen, laden Sie den Patch 2023.2.1 über die folgenden Links herunter und installieren Sie ihn
- Bestimmen Sie , wo das oneAPI-Basis-Toolkit 2023.2 installiert ist. Das FPGA Add-on befindet sich im Installationsverzeichnis des Toolkits im Ordner 'oclfpga'.
- Für Linux ist dies "<Installationsverzeichnis>/intel/oneapi/compiler/2023.2.0/linux/lib/oclfpga", wobei <Installationsverzeichnis> normalerweise entweder "/opt" oder "~" ist.
- Bei Windows ist dies normalerweise "C:\Programme (x86)\Intel\oneAPI\compiler\2023.2.0\windows\lib\oclfpga".
- Benennen Sie das bestehende Verzeichnis "oclfpga" in etwas anderes um, z. B. "oclfpga.bak" oder "oclfpga.prev ".
- Entpacken Sie das angegebene Archiv, .tar.gz für Linux und .zip für Windows, um den Ordner "oclfpga" zu extrahieren und in "intel/oneapi/compiler/2023.2.0/<platform>/lib" abzulegen, wobei <platform> entweder "windows" oder "Linux" ist (siehe oben).
- (Optional) Entfernen Sie den in Schritt "2" erstellten Sicherungsordner nach dem Test.
Dieses Problem soll in einer zukünftigen Version des Intel® OneAPI Base Toolkit (Base Kit) behoben werden.