Brevet FR3142571A1 — publié le 20240531

Le système sur puce comporte un premier domaine numérique (V11), un deuxième domaine numérique (V22), et un circuit d’interface (INTF) comportant un circuit de décalage de niveaux (LS) apte à convertir un signal entre le premier domaine numérique (V11) et le deuxième domaine numérique (V22). Le premier domaine numérique (V11) comporte un circuit de commande (CMD) configuré pour générer un signal de commande (Wr_i) destiné au deuxième domaine numérique (V22), et comportant une impulsion ayant une durée nominale adaptée au circuit de décalage de niveaux (LS). Le circuit d’interface comporte en outre, dans le premier domaine (V11) en entrée du circuit de décalage de niveaux (LS), un circuit conditionnel d’étirement d’impulsion (CD_STRCHR) configuré pour allonger la durée de l’impulsion du signal de commande (Wr_i_resync) à la durée nominale si la durée du signal de commande est plus courte que la durée nominale et non-nulle. Figure pour l’abrégé : Fig 1 Procédé de transfert de signal de commande entre un premier domaine numérique et un deuxième domaine numérique, et système sur puce correspondant. Des modes de réalisation et de mise en œuvre concernent les transferts de signaux, tels que des signaux de commande et des données, entre des domaines numériques distincts d’un système sur puce, en particulier des domaines numériques ayant des tensions d’alimentation et des fréquences de fonctionnement différentes. La demande de brevet français n°2203375 déposée le 12 avril 2022, décrit un procédé, et un système sur puce correspondant, de transfert des données entre un premier domaine numérique et un deuxième domaine numérique, permettant d’éviter une corruption de données causée par une métastabilité dans un registre utilisé pour le transfert, par exemple une métastabilité causée par une réinitialisation externe asynchrone. En particulier, la demande de brevet français n°2203375 déposée le 12 avril 2022 décrit une génération d’un signal de commande, par un circuit d’étirement d’impulsion configuré pour générer une impulsion ayant une durée suffisamment longue pour traverser un circuit de décalage de niveaux de tension, à partir d’une impulsion générée dans le premier domaine numérique et ayant une durée correspondant par exemple à un cycle d’horloge du premier domaine numérique. En effet, les circuits de décalages de niveaux de tension présentent typiquement une bande passante limitée, notamment un effet passe-bas (une coupure des hautes fréquences), intrinsèquement par construction du circuit. Ainsi, une impulsion s’étendant par exemple sur un cycle d’horloge du premier domaine peut être filtrée et ne pas traverser les circuits de décalages de niveaux de tension. Cela étant, le signal de réinitialisation externe asynchrone peut provoquer une réinitialisation du circuit d’étirement d’impulsion interrompant la génération de cette impulsion, de sorte que l’impulsion peut avoir une durée suffisamment longue pour être communiquée au circuit de décalage de niveaux de tension mais toutefois trop courte pour traverser le circuit de décalage de niveaux de tension. Ainsi, dans une telle situation, du point de vue du premier domaine, le signal de commande est effectivement communiqué au deuxième domaine (du moins, communiqué au circuit de décalage de niveaux de tension), alors que le signal de commande ne parvient jamais au deuxième domaine. Il existe donc un besoin d’empêcher une telle situation, et de manière plus générale d’assurer un comportement fiable dans le transfert entre des domaines numériques, quel que soit l’instant auquel survient une réinitialisation externe asynchrone. Selon un aspect, il est proposé à cet égard un système sur puce comportant un premier domaine numérique, un deuxième domaine numérique, et un circuit d’interface comportant un circuit de décalage de niveaux apte à convertir un signal entre le premier domaine numérique et le deuxième domaine numérique, - le premier domaine numérique comportant un circuit de commande configuré pour générer un signal de commande destiné au deuxième domaine numérique, le signal de commande comportant une impulsion ayant une durée nominale adaptée au circuit de décalage de niveaux ; - le circuit d’interface comportant en outre, dans le premier domaine en entrée du circuit de décalage de niveaux, un circuit conditionnel d’étirement d’impulsion configuré pour allonger la durée de l’impulsion du signal de commande à la durée nominale si la durée du signal de commande est plus courte que la durée nominale et non-nulle. Par « une durée nominale adaptée au circuit de décalage de niveaux » on entend par exemple que la durée nominale correspond à une fréquence qui n’est pas filtrée dans la bande passante limitée du circuit de décalage de niveaux, et qui est donc adaptée pour que ladite impulsion soit communiquée au deuxième domaine numérique par le circuit de décalage de niveaux. Ainsi, le circuit conditionnel d’étirement d’impulsion permet de corriger un éventuel raccourcissement de l’impulsion du signal de commande, de manière à assurer que le signal de commande existant (car de durée non-nulle) traverse le circuit de décalage de niveaux et soit effectivement communiqué au deuxième domaine numérique. Le raccourcissement peut par exemple être causé par une réinitialisation du circuit de commande au cours de la génération inachevée de l’impulsion du signal de commande. Par ailleurs, le circuit conditionnel d’étirement d’impulsion est avantageusement configuré pour ne pas agir sur le signal de commande en dehors des conditions définies ci-dessus, c’est-à-dire en cas d’absence du signal (impulsion de durée nulle), et si la durée du signal de commande est apte à traverser le circuit de décalage de niveaux (c’est-à-dire si la durée n’est pas plus courte que la durée nominale). Selon un mode de réalisation, le circuit de commande est configuré pour être réinitialisé par un premier signal de réinitialisation, tandis que le circuit conditionnel d’étirement d’impulsion est configuré pour ne pas être réinitialisé par le premier signal de réinitialisation. Etant donné que le circuit conditionnel d’étirement du circuit d’interface n’est pas affecté par le premier signal de réinitialisation, le circuit conditionnel d’étirement pourra effectivement allonger la durée de l’impulsion en cas de réinitialisation par le premier signal de réinitialisation pendant la génération de l’impulsion par le circuit de commande. Ainsi, cela permet au circuit d’interface de réagir de façon maitrisée à une réinitialisation par le premier signal de réinitialisation, par exemple afin de terminer un transfert sans corruption de données, avec ledit signal de commande ayant la durée nominale, malgré une réinitialisation survenant un instant de sa génération inachevée. Par exemple, le premier signal de réinitialisation est un signal externe asynchrone, tandis que le circuit conditionnel d’étirement d’impulsion est configuré pour être réinitialisés par un deuxième signal de réinitialisation interne synchrone. Selon un mode de réalisation, le premier domaine numérique comporte un générateur d’horloge configuré pour générer un premier signal d’horloge, la durée nominale correspondant à un nombre nominal de cycles du premier signal d’horloge, le circuit conditionnel d’étirement d’impulsion étant configuré pour allonger ladite durée de l’impulsion, si le nombre de cycles de l’impulsion est inférieur au nombre nominal et supérieur à un. En d’autres termes, la durée de l’impulsion est comptée en nombres entiers de cycles du premier signal d’horloge, et la condition de durée non-nulle du circuit conditionnel d’étirement correspond à une durée d’au moins un cycle du premier signal d’horloge. Selon un mode de réalisation, le circuit d’interface comporte en outre, dans le premier domaine, entre le circuit de commande et le circuit conditionnel d’étirement d’impulsion, un circuit de synchronisation configuré pour synchroniser le signal de commande de manière à aligner le signal de commande synchronisé sur des cycles entiers du premier signal d’horloge. En conséquence, le signal de commande synchronisé, c’est-à-dire le signal de commande sortant du circuit de synchronisation, est communiqué sur des durées correspondant à des nombres entiers de cycles du premier signal d’horloge, de manière adaptée à la prise en compte du circuit conditionnel d’étirement. Selon un autre aspect, il est proposé un procédé de transfert de signal de commande entre au moins un premier domaine numérique et un deuxième domaine numérique d’un système sur puce, comprenant une génération, dans le premier domaine numérique, d’un signal de commande destiné au deuxième domaine numérique comprenant une impulsion destinée à avoir une durée nominale adaptée pour un circuit de décalage de niveaux apte à convertir un signal entre le premier domaine numérique et le deuxième domaine numérique le procédé comprenant en outre, en entrée du circuit de décalage de niveaux, un allongement de la durée de l’impulsion du signal de commande à la durée nominale si la durée du signal de commande est plus courte que la durée nominale et non-nulle. Selon un mode de mise en œuvre, un premier signal de réinitialisation provoque une réinitialisation du premier domaine mais ne provoque pas une réinitialisation d’un circuit conditionnel d’étirement d’impulsion configuré pour effectuer ledit allongement de la durée de l’impulsion. Par exemple, le premier signal de réinitialisation est un signal externe asynchrone, tandis qu’un deuxième signal de réinitialisation interne synchrone provoque une réinitialisation du circuit conditionnel d’étirement d’impulsion. Selon un mode de mise en œuvre, la durée nominale correspondant à un nombre nominal de cycles d’un premier signal d’horloge généré dans le premier domaine, et le procédé comprend ledit allongement de la durée de l’impulsion, si le nombre de cycles de l’impulsion du signal de commande est inférieur au nombre nominal et supérieur à un. Selon un mode de mise en œuvre, le procédé comprend en outre une synchronisation du signal de commande alignant le signal de commande synchronisé sur des cycles entiers du premier signal d’horloge. D’autres avantages et caractéristiques de l’invention apparaîtront à l’examen de la description détaillée de modes de réalisation et de mise en œuvre, nullement limitatifs, et des dessins annexés, sur lesquels les figures : ; ; et illustrent des modes de réalisation et de mise en œuvre de l’invention. La illustre un exemple de système sur puce SOC comportant au moins deux domaines numériques V11, V22 ayant des tensions d’alimentations différentes et des fréquences de fonctionnement différentes. Le premier domaine numérique V11 est alimenté par une première tension d’alimentation VDD11, par exemple de 1,1 volt, générée par un étage d’alimentation SUPP11. Le premier domaine numérique V11 est cadencé par un premier signal d’horloge CLK11 à une première fréquence, généré par un étage de génération d’horloge CLKGEN11. Le deuxième domaine numérique V22 est alimenté par une deuxième tension d’alimentation VDD22, par exemple de 3,3 volt, générée par un étage d’alimentation SUPP22. Le deuxième domaine numérique V22 est cadencé par un deuxième signal d’horloge CLK22 à une deuxième fréquence, généré par un étage de génération d’horloge CLKGEN22. Par exemple, la deuxième fréquence est inférieure à la première fréquence, et la deuxième tension d’alimentation VDD22 est supérieure à la première tension d’alimentation VDD11. Dans le cadre de cet exemple, le premier domaine V11 peut par exemple être destiné à effectuer des opérations avec une haute performance et en conséquence une grande consommation énergétique, tandis que le deuxième domaine V22 peut par exemple être destiné à être toujours actif, de manière à assurer des opération critiques, et selon une basse consommation énergétique. D’autre part, le premier domaine V11 est configuré pour être réinitialisé par un premier signal de réinitialisation PADRST, ou par un deuxième signal de réinitialisation POR distinct du premier signal de réinitialisation PADRST. Le deuxième domaine V22 est configuré pour être réinitialisé par un signal de réinitialisation POR_V22 qui lui est propre, mais qui peut aussi être le même signal que le deuxième signal de réinitialisation POR du premier domaine V11. Les signaux de réinitialisation PADRST, POR (respectivement POR_V22) ont pour effet de placer le domaine numérique V11 (respectivement V22) dans un état vierge et maîtrisé (typiquement pour redémarrer le domaine), et notamment à cet égard d’interrompre les actions en cours et d’effacer les données de travail. Le premier signal de réinitialisation PADRST peut en particulier provenir de l’extérieur du système sur puce SOC de manière asynchrone avec le premier signal d’horloge CLK11. Par exemple le premier signal de réinitialisation PADRST peut être un signal de réinitialisation forcée actionné par un utilisateur indépendamment des actions en cours d’exécution par le premier domaine V11. Le deuxième signal de réinitialisation POR peut quant à lui être généré lors d’un processus synchrone de réinitialisation au démarrage du système sur puce SOC, usuellement désigné par les termes anglais « power-on reset ». On considère que le signal de réinitialisation POR_V22 du deuxième domaine V22 est lui aussi généré en interne de façon synchrone, par exemple lors du processus de réinitialisation au démarrage du système sur puce SOC. Des informations critiques à conserver dans le deuxième domaine V22 peuvent être écrites par des initiateurs issus du premier domaine V11, et le système sur puce SOC comporte à cet égard un circuit d’interface INTF configuré pour transférer des données et des signaux entre les deux domaines V11, V22. Le circuit d’interface INTF permet de rendre compatibles, en particulier selon les couples tension-fréquence respectifs à chaque domaine, les signaux et données issus du premier domaine V11 pour le deuxième domaine V22, et éventuellement les signaux et données issus du deuxième domaine V22 pour le premier domaine V11. En outre, le circuit d’interface INTF permet de protéger les données, potentiellement critiques, contre une corruption causée par une réinitialisation asynchrone se produisant au cours du transfert. En effet, une réinitialisation asynchrone peut causer des états métastables dans des registres. Dans l’état métastable d’un registre, un signal de sortie oscille entre l’état haut et l’état bas pendant un certain temps puis converge vers un état aléatoire. Du point de vue de la compatibilité entre la première tension d’alimentation VDD11 et la deuxième tension d’alimentation VDD22, le circuit d’interface INTF comporte des circuits de décalage de niveaux LS configurés pour convertir les tensions des niveaux logiques de l’un des deux domaines V11, V22 à la tension correspondante de l’autre domaine V22, V11. Les circuits de décalages de niveaux LS présentent typiquement une bande passante limitée, avec notamment un effet passe-bas, c’est à dire une coupure des hautes fréquences, intrinsèquement par construction des circuits de décalages de niveaux LS. Ainsi, par exemple une impulsion s’étendant sur une durée nominale est apte à traverser les circuits de décalage de niveaux LS normalement sans être filtrée par l’effet de coupure fréquentielle, tandis qu’une impulsion s’étendant une durée inférieure à la durée nominale peut être filtrée par l’effet de coupure fréquentielle et ne pas traverser les circuits de décalage de niveaux LS. Par exemple, la durée nominale peut correspondre à un nombre entier N de cycles du premier signal d’horloge CLK11, alors qu’une impulsion s’étendant sur un nombre inférieur de cycles du premier signal d’horloge CLK11 (par exemple dès N-1 cycles) serait filtrée et ne traverserait pas les circuits de décalages de niveaux LS. Par « traverser les circuits de décalages de niveaux LS », on entend que l’impulsion est convertie et communiquée au deuxième domaine V22 (dans le cas d’une transmission d’une impulsion issue du premier domaine numérique V11, vers le deuxième domaine numérique V22) ; tandis que par « ne pas traverser les circuits de décalages de niveaux LS », on entend que l’impulsion n’est pas convertie et n’est pas communiquée au deuxième domaine V22, à cause de la bande passante limitée des circuits de décalage de niveaux LS. Du point de vue de la compatibilité entre la première fréquence CLK11 et la deuxième fréquence CLK22, le circuit d’interface INTF comporte en particulier des éléments de transfert RDEP, ADPT1 dans le premier domaine V11, un circuit de synchronisation FFSYNC dans le premier domaine V11, un circuit conditionnel d’étirement CD_STRCHR dans le premier domaine V11, et un registre de destination RDEST dans le deuxième domaine V22. Ainsi, le circuit d’interface INTF comporte des circuits dans le premier domaine V11 et des circuits dans le deuxième domaine V22 ; cela étant, les circuits appartenant au circuit d’interface INTF ne sont pas nécessairement tous réinitialisés par le signal de réinitialisation qui réinitialise le domaine qui les comporte. En effet, par « un circuit dans le premier domaine (respectivement deuxième domaine) », on entend que ce circuit appartient au premier domaine (resp. au deuxième domaine), qu’il est alimenté par la première tension d’alimentation VDD11 (resp. la deuxième tension d’alimentation VDD22) et que son fonctionnement est cadencé par le premier signal d’horloge CLK11 (resp. le deuxième signal d’horloge CLK22), indépendamment du signal de réinitialisation affectant ces circuits. Corollairement, par « le premier domaine V11 est configuré pour être réinitialisé par un premier signal de réinitialisation PADRST » on entend que ce sont les circuits destinés à la fonction première du premier domaine V11 qui sont affectés par le premier signal de réinitialisation PADRST, et pas nécessairement les circuits appartenant au circuit d’interface INTF, notamment destinés au transfert d’informations entre le premier domaine V11 et le deuxième domaine V22 (ce qui n’est pas la fonction première du premier domaine V11). Les éléments de transfert RDEP, ADPT1 du circuit d’interface INTF permettent de transférer des données PWDAT, PADD, depuis un registre de départ RDEP vers un registre de destination RDEST ; ou d’établir une procédure d’établissement de liaison (usullement « handshake » en anglais) avec un signal d’établissement de liaison CDC22 issu du deuxième domaine V22 et renvoyé vers le deuxième domaine V22 après un passage CDC11 dans le premier domaine V11. Un circuit de commande CMD appartenant au premier domaine V11 et configuré pour être réinitialisé par le premier signal de réinitialisation PADRST, permet de générer un signal de commande Wr_i à transmettre au registre de destination RDEST afin de commander (W_pls_sync) une saisie des données transférées PWDAT, PADD issues du registre de départ RDEP. Le signal de commande Wr_i est ensuite communiqué au circuit de décalage de niveau LS via le circuit de synchronisation FFSYNC et via le circuit conditionnel d’étirement CD_STRCHR. Le circuit de synchronisation FFSYNC, pour transmettre le signal de commande Wr_i, peut comporter une série de bascules de type D, en nombre suffisant pour garantir un risque de propagation d’une métastabilité inférieur à une spécification de durée moyenne entre pannes du système sur puce SOC (usuellement désignée par l’acronyme « MTBF » des termes anglais « Mean Time Between Failures »). Ainsi, on notera que le signal de commande Wr_i est resynchronisé Wr_i_resync sur un nombre entier de cycles du premier signal d’horloge CLK11, par le circuit de synchronisation FFSYNC. Du point de vue de la protection contre une corruption causée par une réinitialisation asynchrone au cours du transfert, le circuit d’interface INTF est par exemple configuré pour mettre en œuvre des mesures 100, 200, 300 pour assurer une absence de risque de corruption. Dans la première mesure 100, les éléments de transfert RDEP, ADPT1, ainsi que le circuit de synchronisation FFSYNC et le circuit conditionnel d’étirement CD_STRCHR sont configurés pour ne pas être réinitialisés par le premier signal de réinitialisation PADRST, contrairement aux autres circuits du premier domaine V11. Dans la deuxième mesure 200, le registre de départ RDEP est configuré pour saisir les données à transférer PWDAT, PADD en un seul cycle du premier signal d’horloge CLK11, et ensuite conserver lesdites données accDAT, accADD, par exemple dans une bascule du type D, indépendamment des voies d’entrée PWDAT, PADD. Dans la troisième mesure 300, le circuit de commande CMD est configuré pour générer le signal de commande Wr_i, destiné au registre de destination RDEST, un cycle du premier signal d’horloge CLK11 après la fourniture desdites données PWDAT, PADD. Cela permet de garantir que des données conservées accDAT, accADD par le registre de départ RDEP, éventuellement corrompues par une réinitialisation PADRST se produisant lors du premier cycle du transfert, ne soient pas saisies par le registre de destination RDEST (étant donné que la réinitialisation PADRST empêche la génération et la transmission du signal de commande Wr_i, et en outre sans risque de métastabilité non plus du fait du circuit de synchronisation FFSYNC). Le circuit de commande CMD comporte un moyen de commande, par exemple une machine d’état FSM, pour générer le signal de commande Wr_i. Par exemple, la machine d’état FSM est capable de commander les actions du transfert, et notamment générer le signal de commande Wr_i, en fonction de signaux d’entrée PWRITE, PSEL, PENABLE, pour être issus d’un bus « APB » (acronyme des termes anglais usuels « Advanced Peripheral Bus »). Et, par exemple à partir d’un signal opérationnel PRDY du protocole APB, et une condition cumulative entre un front descendant du signal opérationnel décalé d’un cycle PRDY_fe_d avec un signal de validité d’accès AccVld, on obtient l’instant de déclenchement du signal de commande Wr_i, dont l’impulsion est initialement générée sur un seul cycle du premier signal d’horloge CLK11 par une bascule D cadencée par le premier signal d’horloge CLK11. Le signal de commande Wr_i est par exemple finalement obtenu par un circuit d’étirement d’impulsion STRCHR, configuré pour allonger l’impulsion initiale du signal de commande jusqu’à une durée suffisamment longue pour traverser le circuit de décalage de niveaux de tension LS, par exemple une durée de N cycles du premier signal d’horloge CLK11. L’homme du métier pourra, à toute fin utile concernant le système sur puce SOC et notamment les mécanismes du circuit d’interface INTF mentionnés ci-avant, se référer à la demande de brevet français n°2203375 déposée le 12 avril 2022, dont l’intégralité du contenu est incorporée à la présente description. Cela étant, si une réinitialisation PADRST se produit pendant l’allongement de l’impulsion initiale, lors de l’un des N-1 cycles suivant le premier cycle, alors la durée de l’impulsion du signal de commande Wr_i est tronquée et risque de ne pas traverser le circuit de décalage de niveau LS. En fait, on considère que N cycles du premier signal d’horloge CLK11 correspondent à la durée nominale adaptée au circuit de décalage de niveaux LS, si les impulsions du signal de commande qui ont une durée inférieure à N cycles du premier signal d’horloge CLK11 sont filtrées par le circuit de décalage de niveau LS, et ne sont pas communiquées au deuxième domaine numérique V22. A cet égard, le circuit d’interface INTF comporte en outre, dans le premier domaine V11, un circuit conditionnel d’étirement d’impulsion CD_STRCHR en entrée du circuit de décalage de niveaux LS, et dans cet exemple en sortie du circuit de synchronisation FFSYNC. Le circuit conditionnel d’étirement d’impulsion CD_STRCHR est configuré pour allonger la durée de l’impulsion du signal de commande Wr_i_resync à la durée nominale si les conditions suivantes sont vraies : la durée effective du signal de commande Wr_i est plus courte que la durée nominale, et la durée effective du signal de commande Wr_i est non-nulle. On se réfère à cet égard aux figures 2 et 3. La illustre un exemple de réalisation du circuit conditionnel d’étirement d’impulsion CD_STRCHR, en sortie du circuit de synchronisation FFSYNC. La est un diagramme temporel illustrant l’allure de signaux internes du fonctionnement du circuit conditionnel d’étirement d’impulsion CD_STRCHR de la . L’exemple de circuit conditionnel d’étirement d’impulsion CD_STRCHR décrit en relation avec les figures 2 et 3 correspond au cas particulier où N=2, dans une réalisation avantageuse avec le nombre minimal de portes logiques pour assurer la fonction conditionnelle susmentionnée, d’allongement de la durée de l’impulsion du signal de commande Wr_i_resync à la durée nominale. Le fonctionnement décrit en relation avec la correspond au cas où le premier signal de réinitialisation asynchrone PADRST est activé après le premier cycle du premier signal d’horloge CLK11 lors de la génération de l’impulsion Wr_i, et avant d’avoir achevée, au deuxième (« Nième ») cycle du premier signal d’horloge CLK11, ladite génération de l’impulsion Wr_i. Ainsi, l’impulsion Wr_i entrant dans le circuit de synchronisation FFSYNC a une durée d’un cycle et d’une fraction de cycle du premier signal d’horloge CLK11. Du fait de l’action d’au moins l’une des bascules D du circuit de synchronisation FFSYNC, le signal de commande resynchronisé Wr_i_resync dure seulement un cycle entier du premier signal d’horloge CLK11. Par ailleurs, le signal de commande resynchronisé Wr_i_resync est décalé par rapport au signal de commande Wr_i, d’un nombre de cycles correspondant au nombre de bascules dans le circuit de synchronisation FFSYNC, par exemple de deux cycles. On notera qu’en l’absence du circuit conditionnel d’étirement d’impulsion CD_STRCHR, une telle situation n’est pas protégée par la mise en œuvre de la troisième mesure 300, puisque la réinitialisation PADRST se produit après le premier cycle, de sorte que les données accDAT, accADD du registre de départ RDEP sont censées être saisies par le registre de destination RDEST, alors que la durée de l’impulsion Wr_i n’est pas assez longue pour traverser le circuit de décalage de niveau LS, et ladite saisie RDEST ne pourra donc pas être commandée. Le circuit conditionnel d’étirement d’impulsion CD_STRCHR de cet exemple comporte une première bascule D cadencée par le premier signal d’horloge CLK11, une porte ET à deux entrées dont l’une est inversée, une deuxième bascule D cadencée par le premier signal d’horloge CLK11, une troisième bascule D cadencée par l’inverse du premier signal d’horloge CLK11, et une porte OU à trois entrées. La première bascule D est prévue pour décaler d’un cycle de CLK11, l’impulsion du signal de commande resynchronisé Wr_i_resync, dans le premier signal sortant Wr_i_resync_s. La porte ET est prévue pour générer une impulsion Wr_i_resync_re d’une durée d’un cycle de CLK11 à partir d’un front montant du signal de commande resynchronisé Wr_i_resync, en prenant en entrées le signal de commande resynchronisé Wr_i_resync et, sur l’entrée inversée, le premier signal sortant Wr_i_resync_s. La deuxième bascule D est prévue pour décaler d’un cycle de CLK11, l’impulsion sur front montant Wr_i_resync_re, en sortie de la porte ET, dans le deuxième signal sortant Wr_i_resync_re_s. Ainsi, dans ce cas, le signal de commande resynchronisé Wr_i_resync et le deuxième signal sortant Wr_i_resync_re_s durent un cycle chacun et sont consécutifs. Le signal de commande resynchronisé Wr_i_resync et le deuxième signal sortant Wr_i_resync_re_s sont fournis en entrée de la porte OU. Ainsi, la sortie de la porte OU comporte une impulsion de sortie Wr_Vsw sur lesdits deux cycles consécutifs du signal de commande resynchronisé Wr_i_resync et du deuxième Wr_i_resync_re_s. On notera que dans le cas « normal » de cet exemple, c’est-à-dire lorsque le signal de commande resynchronisé Wr_i_resync n’est pas tronqué et dure deux cycles entiers (N=2), alors le deuxième signal sortant Wr_i_resync_re_s est généré en même temps que le deuxième cycle du signal de commande resynchronisé Wr_i_resync, et la sortie de la porte OU est identique au signal de commande resynchronisé Wr_i_resync. En outre, la troisième bascule D permet avantageusement de décaler d’un demi-cycle de CLK11 l’impulsion sur front montant Wr_i_resync_re en sortie de la porte ET, dans un troisième signal sortant Wr_i_resync_re_nCLK11. En effet, la troisième bascule est cadencée par l’inverse du premier signal d’horloge CLK11 et donc sur les fronts descendants du premier signal d’horloge CLK11. Le troisième signal sortant Wr_i_resync_re_nCLK11 est fourni en entrée de la porte OU, avec le signal de commande resynchronisé Wr_i_resync et le deuxième signal sortant Wr_i_resync_re_s. Par conséquent, s’il existe un désalignement, c’est-à-dire un écart, entre le signal de commande resynchronisé Wr_i_resync et le deuxième signal sortant Wr_i_resync_re_s (par exemple causé par un temps de propagation légèrement plus grand dans l’acheminement du deuxième signal sortant Wr_i_resync_re_s), alors la sortie Wr_Vsw ne comportera pas de transition brutale causée par le changement de conditions d’entrées lors dudit écart, du fait de la présence en entrée de la porte OU du troisième signal sortant Wr_i_resync_re_nCLK11, qui est par construction constant à cet instant. Par ailleurs, le circuit conditionnel d’étirement d’impulsion CD_STRCHR peut avantageusement mettre en œuvre la première mesure 100, c’est-à-dire que le circuit conditionnel d’étirement d’impulsion CD_STRCHR est configuré pour ne pas être réinitialisé par le premier signal de réinitialisation PADRST, contrairement aux autres circuits du premier domaine V11. Par exemple, le circuit conditionnel d’étirement d’impulsion CD_STRCHR peut être configuré pour être réinitialisé par le deuxième signal de réinitialisation POR. A cet égard, toutes les bascules D du circuit conditionnel d’étirement d’impulsion CD_STRCHR sont agencées pour être réinitialisées par le même signal de réinitialisation POR que le circuit de synchronisation FFSYNC. Ainsi, en résumé, lorsque le premier signal de réinitialisation PADRST se produit après le premier cycle, et avant le dernier (« Nième ») cycle, de la génération de l’impulsion du signal de commande Wr_i par le circuit d’étirement STRCHR du circuit de commande CMD, le circuit conditionnel d’étirement d’impulsion CD_STRCHR garantit que l’impulsion traversera en toute sécurité le circuit de décalage de niveau LS. Et, lorsque le premier signal de réinitialisation PADRST ne se produit pas pendant de la génération de l’impulsion du signal de commande Wr_i, le circuit conditionnel d’étirement d’impulsion CD_STRCHR n’a pas d'impact sur la forme de l’impulsion. Système sur puce comportant un premier domaine numérique (V11), un deuxième domaine numérique (V22), et un circuit d’interface (INTF) comportant un circuit de décalage de niveaux (LS) apte à convertir un signal entre le premier domaine numérique (V11) et le deuxième domaine numérique (V22), - le premier domaine numérique (V11) comportant un circuit de commande (CMD) configuré pour générer un signal de commande (Wr_i) destiné au deuxième domaine numérique (V22), le signal de commande comportant une impulsion ayant une durée nominale adaptée au circuit de décalage de niveaux (LS) ; - le circuit d’interface comportant en outre, dans le premier domaine (V11) en entrée du circuit de décalage de niveaux (LS), un circuit conditionnel d’étirement d’impulsion (CD_STRCHR) configuré pour allonger la durée de l’impulsion du signal de commande (Wr_i_resync) à la durée nominale si la durée du signal de commande est plus courte que la durée nominale et non-nulle. Système sur puce selon la revendication 1, dans lequel le circuit de commande (CMD) est configuré pour être réinitialisé par un premier signal de réinitialisation (PADRST), tandis que le circuit conditionnel d’étirement d’impulsion (CD_STRCHR) est configuré pour ne pas être réinitialisé par le premier signal de réinitialisation (PADRST). Système sur puce selon la revendication 2, dans lequel le premier signal de réinitialisation (PADRST) est un signal externe asynchrone, tandis que le circuit conditionnel d’étirement d’impulsion (CD_STRCHR) est configuré pour être réinitialisé par un deuxième signal de réinitialisation (POR) interne synchrone. Système sur puce selon l’une des revendications précédentes, dans lequel le premier domaine numérique (V11) comporte un générateur d’horloge (CLKGEN11) configuré pour générer un premier signal d’horloge (CLK11), la durée nominale correspondant à un nombre nominal de cycles du premier signal d’horloge (CLK11), le circuit conditionnel d’étirement d’impulsion (CD_STRCHR) étant configuré pour allonger ladite durée de l’impulsion (Wr_i_resync), si le nombre de cycles de l’impulsion est inférieur au nombre nominal et supérieur à un. Système sur puce selon la revendication 4, dans lequel le circuit d’interface comporte en outre, dans le premier domaine, entre le circuit de commande (FSM) et le circuit conditionnel d’étirement d’impulsion (CD_STRCHR), un circuit de synchronisation (FFSYNC) configuré pour synchroniser le signal de commande (Wr_i) de manière à aligner le signal de commande synchronisé (Wr_i_sync) sur des cycles entiers du premier signal d’horloge (CLK11). Procédé de transfert de signal de commande entre au moins un premier domaine numérique (V11) et un deuxième domaine numérique (V22) d’un système sur puce (SOC), comprenant une génération, dans le premier domaine numérique (V11), d’un signal de commande (Wr_i) destiné au deuxième domaine numérique (V22) comprenant une impulsion destinée à avoir une durée nominale adaptée à un circuit de décalage de niveaux (LS) apte à convertir un signal entre le premier domaine numérique (V11) et le deuxième domaine numérique (V22), le procédé comprenant en outre, en entrée du circuit de décalage de niveaux (V11), un allongement de la durée de l’impulsion du signal de commande (Wr_i_resync) à la durée nominale si la durée du signal de commande est plus courte que la durée nominale et non-nulle. Procédé selon la revendication 6, dans lequel un premier signal de réinitialisation (PADRST) provoque une réinitialisation du premier domaine (V11) mais ne provoque pas une réinitialisation d’un circuit conditionnel d’étirement d’impulsion (CD_STRCHR) configuré pour effectuer ledit allongement de la durée de l’impulsion. Procédé selon la revendication 7, dans lequel le premier signal de réinitialisation (PADRST) est un signal externe asynchrone, tandis qu’un deuxième signal de réinitialisation (POR) interne synchrone provoque une réinitialisation du circuit conditionnel d’étirement d’impulsion (CD_STRCHR). Procédé selon l’une des revendications 6 à 8, dans lequel la durée nominale correspondant à un nombre nominal de cycles d’un premier signal d’horloge (CLK11) généré dans le premier domaine (V11), et le procédé comprend ledit allongement de la durée de l’impulsion (Wr_i_resync), si le nombre de cycles de l’impulsion du signal de commande est inférieur au nombre nominal et supérieur à un. Procédé selon la revendication 9, comprenant en outre une synchronisation du signal de commande (Wr_i) alignant le signal de commande synchronisé (Wr_i_sync) sur des cycles entiers du premier signal d’horloge (CLK11).