ID de l'article: 000076355 Type de contenu: Dépannage Dernière révision: 24/05/2017

Pourquoi le signal d’état RapidIO I port_ok ne s’affirme-t-il pas après la re-initialisation du lien ?

Environnement

  • Intel® Quartus® Prime Pro Edition
  • FPGA Intel® IP pour RapiDIO (IDLE1 jusqu'à 5.0 Gbaud)
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT

    Problème critique

    Descriptif

    port_ok’état de l’erreur bit-0, la RSE d’erreur et d’état du port 0 (0x158) peut rester faible après la re-initialisation du lien. La réin initialisation de la liaison est effectuée soit par le déclenchement de l’PORT_DIS bit-23 dans le port 0 Control CSR (0x15C), soit lorsque le partenaire de liaison effectue une réinitialisation. Cela peut entraîner une erreur fatale lors d’un fonctionnement normal,

    Ce problème se produit pour les raisons suivantes :

    • Il est possible que le cœur du RapidIO soit hors de réinitialisation avant que l’émetteur-récepteur sorte de la réinitialisation. Cela entraîne le démarrage du fonctionnement du cœur de RapidIO alors que l’émetteur-récepteur est toujours en réinitialisation.
    • Le processus de re-alignement du mot est limité à la voie 0 et se déclenche uniquement une fois pendant la réin initialisation de la liaison.

    Ce problème affecte les variantes RapidIO I suivantes :

    • Arria® V/Cyclone® V avec le mode x2.
    • Arria V/Cyclone V à un débit de 22 000 Mh/s.
    • Arria V avec le mode x4 au débit rial 3 125 M alors.
    Résolution

    Pour s’assurer que l’émetteur-récepteur est hors de réinitialisation et prêt à lancer toutes les opérations avant le cœur de RapidIO, qualifiez la réinitialisation du cœur RapidIO avec les signaux d’état prêts pour l’émetteur-récepteur dans le module _riophy_reset:

    TX_SIDE

     

    toujours @(posedge tx_clk ou negedge reset_n)

    Commencer

    si (!reset_n) commencent

    tx_ready_s0 <= 1'b0 ;

    tx_ready_s1 <= 1'b0 ;

     

    la fin d’autre commence

    tx_ready_s0 <= tx_ready ;

    tx_ready_s1 <= tx_ready_s0 ;

     

    Fin

     

    Fin

     

    toujours @ (tx_clk posé ou reset_n negedge) commencent

    si (!reset_n)commencez

    txreset_n_p2 < = 1'b0 ;

    txreset_n_p1 <= 1'b0 ;

    txreset_n <= 1'b0 ;

    la fin d’autre commence

    si (!gxbpll_locked_tx_clk_d2 || !tx_ready_s1)commencent

    txreset_n_p2 <= 1'b0 ;

    txreset_n_p1 <= 1'b0 ;

    txreset_n <= 1'b0 ;

    la fin d’autre commence

    txreset_n_p2 <= 1'b1 ;

    txreset_n_p1 <= txreset_n_p2 ;

    txreset_n <= txreset_n_p1 ;

    Fin

    Fin

    Fin

     

    RX_SIDE

     

    toujours @(posedge rx_clk ou negedge reset_n)

    Commencer

    si (!reset_n) commencent

    rx_ready_s0 <= 1'b0 ;

    rx_ready_s1 <= 1'b0 ;

     

    la fin d’autre commence

    rx_ready_s0 <= rx_ready ;

    rx_ready_s1 <= rx_ready_s0 ;

     

    Fin

    Fin

     

    toujours @ (rx_clk ou negedge reset_n) démarrer

    si (!reset_n)commencez

    rxreset_n_p2 <= 1'b0 ;

    rxreset_n_p1 <= 1'b0 ;

    rxreset_n < = 1'b0 ;

    la fin d’autre commence

    si (!rx_ready_s1) commencent

    rxreset_n_p2<=1'b0 ;

    rxreset_n_p1<=1'b0 ;

    rxreset_n<=1'b0 ;

     

    la fin d’autre commence

    rxreset_n_p2 <= 1'b1 ;

    rxreset_n_p1 <= rxreset_n_p2 ;

    rxreset_n <= rxreset_n_p1 ;

     

    Fin

    Fin

    Fin

     

    Pour déclencher le processus de réin alignage du mot manuellement, effectuez les étapes suivantes à l’aide de l’interface Avalon-MM phy_mgmt’émetteur-récepteur :

    (1) Affirmez phy_mgmt_write=1'b1 pour spécifier le fonctionnement de l’écriture.

    (2) Écrivez les données phy_mgmt_writedata=32'b0 dans l’adresse phy_mgmt_address=9'h80 à la cible de la voie 0.

    (3) Écrivez les données phy_mgmt_writedata=32'b1 dans une adresse phy_mgmt_address=9'h85 pour faire valoir rx_enapatternalign qui déclenche le fonctionnement d’alignement de mots sur la voie 0.

    (4) Écrivez les données phy_mgmt_writedata=32'b0 dans l’adresse phy_mgmt_address=9'h85 à de≥ rx_enapatternalign.

    Répétez les étapes ci-dessus pour toutes les autres voies : voie 1 (0x80=32'b1), voie 2 (0x80=32'b2) et voie 3 (0x80=32'b3).

    Produits associés

    Cet article concerne 2 produits

    FPGA et FPGA SoC Arria® V
    FPGA et FPGA SoC Cyclone® V

    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.