ID de l'article: 000079588 Type de contenu: Dépannage Dernière révision: 01/01/2015

Erreurs de construction sur les appels d’interruption de l’API

Environnement

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

Problème critique

Descriptif

Vous pouvez observer les erreurs de construction si votre projet d’application installe un isr qui appelle la alt_irq_register() fonction.

La version 9.1 du Nios II EDS prend en charge une option Interface du contrôleur d’interruption externe (EIC) du processeur Nios II. Pour prendre en charge l’interface EIC, le HAL comprend une interruption améliorée API.

Lorsque vous créez un BSP, le SBT détermine quelle interruption API(s) les pilotes de périphérique pris en charge par votre système. Si toutes les cartes sont enregistrées les pilotes du BSP s’identifient comme prenant en charge le système amélioré API, le SBT implémente l’API améliorée. Tous les pilotes de périphériques Altera dans la version 9.1 et les versions ultérieures, prennent en charge l’API améliorée.

Lorsque l’API améliorée est implémentée, l’interruption héritée L’API, y alt_irq_register() compris, n’est pas disponible. Par conséquent, si le code de l’application contient un appel à une API héritée fonction, une erreur de lien se produit.

Ce problème peut affecter les projets d’application qui alt_irq_register() d’autres fonctions héritées de l’API d’interruption directement, plutôt que selon sur les pilotes du BSP pour la prise en charge des interruptions.

Si le code source de votre Nios II projet d’application s’inscrit un ISR utilisant alt_irq_register() ou incluant un isr, il est possible que votre application ne compile pas dans la version Nios II EDS 9.1, en raison de références non définies à alt_irq_register() , ou à un changement de prototype de fonction ISR.

Résolution

Modifiez le code de votre application pour utiliser la nouvelle API d’interruption améliorée. Pour utiliser l’API améliorée, vous devez modifier plusieurs appels de fonctions et tous les prototypes de fonctions ISR.

Pour plus d’informations sur la prise en charge de l’API d’interruption améliorée, reportez-vous au chapitre Gestion des exceptions du manuel du développeur de logiciels Nios II,ou à AN 595 : Vectored Interrupt Controller Usage and Applications (Utilisation et applications du contrôleur d’interruption vectoriel).

Vous devez passer à l’API améliorée si vous souhaitez utiliser un EIC dans votre conception matérielle pour accélérer le temps de réponse des interruptions. L’API améliorée fonctionne également avec le contrôleur d’interruption interne du processeur Nios II.

Produits associés

Cet article concerne 1 produits

Circuits programmables Intel®

1

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.