Reconfig_clk doit être stable avant que reconfig_block contrôleur commence le processus d’annulation de décalage. Il y a deux scénarios possibles.
1. Si l’offset_cancellation_reset d’entrée n’est pas implémentée, le contrôleur reconfig_block démarre le processus d’annulation du décalage juste après FPGA a terminé la programmation et est passé en mode utilisateur (CONFIG_DONE=1). En mode PCIe® PIPE, reconfig_clk (50 MHz) pilote le contrôleur de reconfiguration et le fixedclk (125 MHz) pilote la logique d’annulation du décalage dans l’émetteur-récepteur. Par conséquent, les reconfig_clk et les fixed_clk doivent être stables avant CONFIG_DONE=1.
2. Si une offset_cancellation_reset d’entrée est implémentée, le contrôleur reconfig_block peut être maintenu en réinitialisation l’reconfig_clk est stable. Le processus d’annulation du décalage est annulé jusqu’à ce que le offset_cancellation_reset soit publié. En mode PCIe PIPE, leclk fixe pilote la logique de reconfiguration de l’émetteur-récepteur. Par conséquent, le contrôleur de reconfiguration doit être réinitialisé jusqu’à ce que les reconfig_clk et les fixed_clk soient stables.
Remarque1 : comme le processus offset_cancellation ne se produit qu’une seule fois lorsque l’événement CONFIG_DONE se produit, le basculement des signaux de réinitialisation sans reprogrammation FPGA ne le déclenche pas à nouveau.
Remarque2 : lorsque le processus offset_cacellation est actif, le contrôleur de reconfiguration signale un signal « occupé ». Par conséquent, en mode PCIe PIPE, la logique de réinitialisation doit détecter le premier bord descendant du signal « occupé » avant de décomialiser l’émetteur-récepteur rx_analog_reset.