Artikel-ID: 000085111 Inhaltstyp: Fehlerbehebung Letzte Überprüfung: 10.05.2013

Die .qip/.sdc-Dateien im Projekt .qsf werden beim Öffnen eines Projekts oder der IP-Generierung in der Quartus II Softwareversion 12.1 SP1 neu geordnet.

Umgebung

  • Intel® Quartus® II Anmeldungs-Edition
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT

    Kritisches Problem

    Beschreibung

    Aufgrund eines Problems in der Quartus® II Softwareversion 12.1 SP1 kann die Bestellung in der Quartus II Settings File (.qsf) Ihres Projekts unerwartet geändert werden.

    Dieses Verhalten kann auftreten, wenn Sie ein bestehendes Projekt öffnen oder den Befehl Upgrade IP ausführen.

    Wenn ihr Projekt die Dateireihenfolge-Abhängigkeit Synopsys Design Constraint (.sdc) hat, kann diese Neubestellung zu unerwarteten Frequenzeinstellungen oder anderen Zeitzuweisungen führen. Sie können ein Projekt haben, das mehrere Ebenen von Quartus II IP (.qip)-Dateien hat. In den .qip-Dateien finden Sie möglicherweise Referenzen zu zusätzlichen .qip - oder .sdc-Dateien . Ein Beispiel finden Sie im Problemumgehungsabschnitt unten. Falsche .sdc-Einstellungen können zu falschem Designverhalten oder Funktionsfehlern führen.

    Lösung

    Es steht eine Tcl-Skriptdatei zur Verfügung, um zu überprüfen, ob Ihr Design von diesem Problem betroffen ist. Laden Sie qip_checker.tcl herunter, um zu identifizieren, ob ein potenzielles Problem bei der Dateibestellung vorliegt. Sie können dieses Skript mit dem folgenden Befehl ausführen:

    quartus_sh -t qip_checker.tcl [-force]

    Geben Sie für eine detaillierte Verwendung dieses Skripts ein

    quartus_sh -t qip_checker.tcl

    Für die Quartus II Software Version 12.1 SP1 steht ein Patch zur Verfügung, um dieses Problem zu beheben. Laden Sie Patch 1.33 über den entsprechenden Link unten herunter und installieren Sie es:

    Dieser Patch ist mit der Quartus II Softwareversion 12.1 SP1 (Build 243) kompatibel.

    Patch 1.33 ist nicht mit den Quartus II Softwareversion 12.1 SP1 Geräte-Patches (1.dp) für Stratix® V-, Arria® V- und Cyclone® V-Geräte kompatibel. Wenn Sie diese Geräte verwenden, können Sie dieses Problem beheben, indem Sie ein Upgrade auf Geräte-Patch 1.dp6 oder neuer durchführen, indem Sie die Links in der entsprechenden Lösung unten verwenden.

    Wenn Sie diesen Patch nicht verwenden können, können Sie dieses Problem vermeiden, indem Sie eine Textdatei namens quartus.ini in Ihrem Projektverzeichnis erstellen (falls dieser nicht bereits vorhanden ist). Fügen Sie die folgende Zeile in der Textdatei hinzu, um zu verhindern, dass die Datei neu sortiert wird:

    disable_ip_regen=on

    Mit dieser Option werden einige der automatischen IP-Funktionen deaktiviert, sodass Sie möglicherweise IP mit Befehlszeilenoperationen neu generieren müssen.

    Wenn Sie bereits auf dieses Problem stoßen, sollten Sie die folgenden Schritte durchführen:

    1. Wenden Sie den Patch an oder wenden Sie die Ini-Einstellung sofort an disable_ip_regen=on .
    2. Entfernen Sie alle Zuweisungen in .qsf, die ein oder -sip ein -qip Argument haben
    3. Überprüfen Sie QIP_FILE Zuweisungen innerhalb der .qsf und entfernen Sie alle, die nicht zur obersten Ebene gehören
    4. Ändern Sie die .qsf , um die Reihenfolge der .sdc - und .qip-Dateien manuell zu korrigieren.

    Nachfolgend finden Sie ein Beispiel für die Nachbestellungseffekte, die Sie manuell beheben sollten, falls Ihr Design betroffen ist.

    Als Beispiel vor der Quartus II Softwareversion 12.1 SP1 hat ein Design die folgenden .sdc - und .qip-Dateien , die in der .qsf-Projektdatei aufgelistet sind:

    a.qsf:

    set_global_assignment -name SDC_FILE a_before.sdc
    set_global_assignment -name QIP_FILE a.qip
    set_global_assignment -name SDC_FILE a_after.sdc

    a.qip:

    set_global_assignment -name SDC_FILE aqip_before.sdc
    set_global_assignment -name QIP_FILE asub.qip
    set_global_assignment -name SDC_FILE aqip_after.sdc

    asub.qip:

    set_global_assignment -name SDC_FILE asub.sdc

    Folgendes ist die Dateireihenfolge aus dem Speicher:

    set_global_assignment -name SDC_FILE a_before.sdc
    set_global_assignment -name QIP_FILE a.qip
    set_global_assignment -name SDC_FILE aqip_before.sdc # from qip a.qip
    set_global_assignment -name QIP_FILE asub.qip        # from qip a.qip
    set_global_assignment -name SDC_FILE asub.sdc        # from qip asub.qip
    set_global_assignment -name SDC_FILE aqip_after.sdc  # from qip a.qip
    set_global_assignment -name SDC_FILE a_after.sdc

    Aus diesem Grund liest das Projekt die SDC_FILE Zuweisungen in der folgenden Reihenfolge:

    1. a_before.sdc
    2. aqip_before.sdc
    3. asub.sdc
    4. aqip_after.sdc
    5. a_after.sdc

    In der Quartus II Softwareversion 12.1 SP1 würde die .qsf nach dem Auslösen des Softwareproblems (Öffnen des Projekts oder Aufrüsten der IP) wie folgt aussehen:

    a.qsf:

    set_global_assignment -name SDC_FILE a_before.sdc
    set_global_assignment -name SDC_FILE a_after.sdc
    set_global_assignment -name QIP_FILE a.qip
    set_global_assignment -name QIP_FILE asub.qip

    Folgendes ist die Dateireihenfolge aus dem Speicher:

    set_global_assignment -name SDC_FILE a_before.sdc
    set_global_assignment -name SDC_FILE a_after.sdc
    set_global_assignment -name QIP_FILE a.qip
    set_global_assignment -name SDC_FILE aqip_before.sdc  # from qip a.qip
    set_global_assignment -name QIP_FILE asub.qip         # from qip a.qip
    set_global_assignment -name SDC_FILE aqip_after.sdc   # from qip a.qip
    set_global_assignment -name QIP_FILE asub.qip
    set_global_assignment -name SDC_FILE asub.sdc         # qip asub.qip

    Aus diesem Grund liest das Projekt die SDC_FILE Zuweisungen in der folgenden Reihenfolge:

    1. a_before.sdc
    2. a_after.sdc
    3. aqip_before.sdc
    4. aqip_after.sdc
    5. asub.sdc

    Wenn das Design von der Reihenfolge abhängig ist, in der .sdc gelesen wird, kann sich diese geänderte Reihenfolge auf die Designoptimierungsergebnisse und die Timing-Analyse auswirken. Um das Problem zu beheben, fügen Sie die ini-Einstellung wie oben beschrieben hinzu und beheben Sie dann die .qsf , um die ursprüngliche korrekte Zuweisungsreihenfolge zu verwenden. Um schnell zu überprüfen, ob die Reihenfolge geändert wurde, lesen Sie .qsf generated prior to the Quartus II Software Version 12.1 SP1.

    Dieses Problem wird ab Version 13.0 der Quartus II Software behoben.

    Zugehörige Produkte

    Dieser Artikel bezieht sich auf 1 Produkte

    Intel® programmierbare Geräte

    Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte eine Diskrepanz zwischen der englischsprachigen Version dieser Seite und der Übersetzung auftreten, gilt die englische Version. Englische Version dieser Seite anzeigen.