2016-05-01 24 views
1

bekomme ich folgende Fehlermeldung, wenn RISCV VERILOG HDL auf Xilinx ISE kompilieren:RISCV VERILOG HDL-Code

Es sagt "Nicht unterstütztes System Function Call" in dem folgenden Code in Zeile 296 in Modul vscale_pipeline

295: ifndef SYNTHESIS 
296: PC_WB <= $random; 
+1

Bitte zeigen Sie etwas Code, dann könnten Leute Ihnen helfen, Ihr Skript zu verbessern/zu reparieren. Fügen Sie weitere Details zu Ihrem Problem hinzu. http://StackOverflow.com/Help/how-to-ask – olibiaz

+0

Das klingt wie der Verilog, den Sie haben, wird nicht von Xilinx ISE unterstützt. Ich würde die Anbieter dieses Codes kontaktieren. – user2548418

+0

Ist 'SYNTHESIS' vor dieser Codezeile definiert und definiert? Bestellvorgang zusammenstellen. – Greg

Antwort

1

$ random ist nicht synthetisierbaren, so nehmen sie es aus

2

Einige Synthese-Tools definieren die SYNTHESIS Makro, so dass es einfacher ist, nicht-synthetisierbaren Code in Synthese überspringen mit

`ifdef SYNTHESIS 
... 
`endif 

Blöcke, wie in diesem Code erfolgt.

Xilinx XST definiert dieses Makro standardmäßig nicht, daher müssen Sie XST manuell konfigurieren, um das Makro während der Synthese zu definieren. Details dazu finden Sie unter this Xilinx AR.