ID de l'article: 000085111 Type de contenu: Dépannage Dernière révision: 10/05/2013

Les fichiers .qip/.sdc du projet .qsf sont réorganisés lors de l’ouverture d’un projet ou de la ré-génération d’IP dans la version 12.1 SP1 du logiciel Quartus II.

Environnement

  • Édition d'abonnement Intel® Quartus® II
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT

    Problème critique

    Descriptif

    En raison d’un problème dans la version 12.1 SP1 du logiciel Quartus® II, la commande du fichier de paramètres Quartus II de votre projet(.qsf)peut être modifiée de manière inattendue.

    Ce comportement peut se produire lorsque vous ouvrez un projet existant ou lorsque vous exécutez la commande IP de mise à niveau.

    Si votre projet dépend de la commande de fichiers avec la contrainte de conception Synopsys(.sdc),cette refonte peut entraîner des paramètres de fréquence inattendus ou d’autres affectations de synchronisation. Vous pourriez avoir un projet qui possède plusieurs niveaux de fichiers IP Quartus II(.qip). Dans les fichiers .qip, vous pouvez avoir des références à des fichiers .qip ou .sdc supplémentaires. Par exemple, reportez-vous à la section de contournement ci-dessous. Les paramètres .sdc incorrects peuvent entraîner un comportement de conception incorrect ou des erreurs fonctionnelles.

    Résolution

    Un fichier Tcl est disponible pour vérifier si votre conception est affectée par ce problème. Téléchargez qip_checker.tcl pour identifier s’il y a un problème potentiel de commande de fichier. Vous pouvez exécuter ce script avec la commande suivante :

    quartus_sh -t qip_checker.tcl [-force]

    Pour obtenir une utilisation détaillée de ce script, saisissez

    quartus_sh -t qip_checker.tcl

    Un correctif est disponible pour résoudre ce problème pour la version 12.1 SP1 du logiciel Quartus II. Téléchargez et installez le correctif 1.33 à partir du lien approprié ci-dessous :

    Ce correctif est compatible avec la version 12.1 SP1 du logiciel Quartus II (build 243).

    Le correctif 1.33 n’est pas compatible avec les correctifs de périphériques du logiciel Quartus II version 12.1 SP1 (1.dp)pour les périphériques Stratix® V, Arria® V et Cyclone® V. Si vous utilisez ces périphériques, vous pouvez résoudre ce problème en passant au correctif de périphérique 1.dp6 ou une version ultérieure à l’aide des liens de la solution connexe ci-dessous.

    Si vous ne parvenez pas à utiliser ce correctif, vous pouvez éviter ce problème en créant un fichier texte appelé quartus.ini dans votre répertoire de projet (s’il n’existe pas déjà). Ajoutez la ligne suivante dans le fichier texte pour empêcher la réordation du fichier :

    disable_ip_regen=on

    Cette option désactive certaines des caractéristiques de l’usage automatique de la propriété intellectuelle , de sorte que vous devrez peut-être utiliser une IP de torsadance à l’aide des opérations de ligne de commande.

    Si vous avez déjà constaté ce problème, vous devez effectuer les étapes suivantes :

    1. Appliquer le correctif ou appliquer disable_ip_regen=on le paramètre ini immédiatement
    2. Supprimer toute affectation dans le .qsf qui a un ou des -qip -sip arguments
    3. Vérifiez QIP_FILE les affectations dans le fichier .qsf et supprimez celles qui n’appartiennent pas au niveau supérieur
    4. Modifiez le fichier .qsf pour corriger manuellement l’ordre des fichiers .sdc et .qip

    Vous trouverez ci-dessous un exemple des effets de réordation que vous devez corriger manuellement si votre conception est affectée.

    À titre d’exemple, avant la version 12.1 SP1 du logiciel Quartus II, les fichiers .sdc et .qip suivants sont indiqués dans le fichier .qsf du projet :

    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

    Vous trouverez ci-dessous l’ordre des fichiers de la mémoire :

    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

    Par conséquent, le projet lit les SDC_FILE affectations dans l’ordre suivant :

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

    Dans la version 12.1 SP1 du logiciel Quartus II, après avoir provoqué le problème logiciel (ouverture du projet ou mise à niveau IP), le .qsf aurait l’air comme suit :

    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

    Vous trouverez ci-dessous l’ordre des fichiers de la mémoire :

    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

    Par conséquent, le projet lit les SDC_FILE affectations dans l’ordre suivant :

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

    Si la conception dépend de la lecture de la commande .sdc, cette modification de l’ordre peut affecter les résultats de l’optimisation de la conception et l’analyse du timing. Pour résoudre le problème, ajoutez le paramètre ini comme décrit ci-dessus, puis corrigez le .qsf pour utiliser l’ordre d’affectation correct d’origine. Pour vérifier rapidement si la commande a été modifiée, reportez-vous à .qsf généré avant la version 12.1 SP1 du logiciel Quartus II.

    Ce problème est résolu à partir de la version 13.0 du logiciel Quartus II.

    Produits associés

    Cet article concerne 1 produits

    Circuits programmables Intel®

    Le contenu de cette page est une combinaison de traduction humaine et informatique du contenu original en anglais. Ce contenu vous est fourni pour votre commodité et à titre informatif seulement et ne saurait être totalement exact ou complet. En cas de contradiction entre la version anglaise de cette page et la traduction, c'est la version anglaise qui prévaut. Afficher la version anglaise de cette page.