INPI-France/Brevets-Francais-2024-Chunked huggingface dataset:
Selon un mode de réalisation, ledit module de filtrage est configuré, en cas de violation des droits d’accès de sécurité et/ou de privilège d’une ressource par une transaction, pour générer le deuxième signal d’erreur représentatif du droit d’accès de sécurité de cette transaction.
Selon un mode de réalisation, le système sur puce comporte le premier domaine de microprocesseur et au moins un deuxième domaine de microprocesseur, et les ressources dudit premier domaine de microprocesseur et dudit au moins un deuxième domaine de microprocesseur ont des droits d’accès de compartimentation respectifs.
Selon un mode de réalisation, le premier domaine de microprocesseur est qualifié de confiance, et l’unité de gestion d’accès illégaux est configurée pour coder dans le registre de statuts, accessible en lecture par le microprocesseur dudit premier domaine de confiance, chacun desdits cas de violation des droits d’accès d’une ressource de l’un quelconque desdits domaines, par une transaction engagée depuis l’un quelconque desdits domaines.
Selon un mode de réalisation, l’unité de gestion d’accès illégaux est configurée pour communiquer ladite première interruption et ladite deuxième interruption au microprocesseur dudit premier domaine de confiance.
Selon un mode de réalisation, l’unité de gestion d’accès illégaux est configurée pour coder dans un registre de statuts respectivement dédiée à chacun des domaines, accessible en lecture par le microprocesseur du domaine respectif, chacun desdits cas de violation des droits d’accès d’une ressource de l’un quelconque desdits domaines, par une transaction engagée depuis ledit domaine respectif.
Selon un mode de réalisation, l’unité de gestion d’accès illégaux est configurée pour communiquer ladite première interruption et ladite deuxième interruption au microprocesseur dudit domaine respectif.
Selon un mode de réalisation, le premier domaine de microprocesseur est qualifié de confiance, et l’unité de gestion d’accès illégaux est configurée pour communiquer une troisième interruption au microprocesseur du premier domaine de confiance, en cas de détection d’une violation des droits d’accès de compartimentation.
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.
L’étape 102 a pour but de détecter des trajets multiples du signal qui correspondent à des réflexions sur des cibles enterrées. Chaque trajet est caractérisé par un retard et une amplitude .
Dans un mode de réalisation particulier de l’étape 102, la méthode CLEAN est appliquée au moyen d’un filtre rectangle qui est défini par un nombre d'échantillons dont les amplitudes sont forcées à zéro autour du maximum local détecté. Une approche dite par largeur de faisceau ou « beamwidth filter » consiste à rechercher les minima locaux les plus proches autour du maximum local détecté, puis à forcer l'échantillon formant l'impulsion détectée à zéro. Des exemples de réalisation de la méthode CLEAN sont donnés dans les références [7] et [8].
A l’issue de l’étape 102, on obtient pour chaque antenne d’émission une matrice 2D de dimension NP par NRx qui donne les valeurs des amplitudes de chaque trajet détecté pour chaque antenne de réception , avec NP le nombre de trajets détectés.
Les étapes 103,104 suivantes consistent à modéliser chaque trajet du signal au moyen d’une courbe hyperbolique qui dépend de la géométrie du radar, des caractéristiques diélectriques du sol et de la position des cibles sur lesquelles sont réfléchis les trajets du signal.
Un exemple de trajet modélisé par une courbe hyperbolique est donné par l’équation (1) suivante :
est la vitesse de propagation du signal vers un point d’une couche du sol qui est liée à la permittivité relative moyenne du milieu constituant la couche du sol par l’équation (2) :
est la célérité de la lumière en espace libre.
est la distance, selon l’axe y de la figure 2b, entre une antenne d’émission et une antenne de réception
est le retard associé au trajet d’indice p
est l’abscisse, selon l’axe x de la figure 2b, de la cible associée au trajet d’indice p
et sont les abscisses respectives des antennes en émission et en réception.
Sans sortir du cadre de l’invention, l’équation (1) qui modélise une courbe hyperbolique peut être adaptée selon la géométrie du radar.
A l’étape 103, on détermine tout d’abord une estimation de la coordonnée de la cible en recherchant, pour chaque antenne en émission et chaque trajet d’indice p, la coordonnée de l’antenne en réception qui maximise la réponse impulsionnelle déterminée à l’étape 102 :
La donnée de paramétrage des notifications ILAC_BUS_CFG permet d’activer ou désactiver (par exemple lorsqu’elle est enregistrée à la valeur « 1 », ou respectivement « 0 ») la fonctionnalité de notification d’accès illégal ILAC_BUS via le canal de notification d’erreur RREP du bus d’interconnexion BUS.
La valeur de la donnée de paramétrage des notifications ILAC_BUS_CFG peut par exemple être enregistrée par un utilisateur, afin de choisir le degré de précision de notification d’accès illégale dont il souhaite bénéficier, et en outre sélectivement pour chaque ressource RES du système sur puce SOC.
La valeur de la donnée de paramétrage des notifications ILAC_BUS_CFG peut aussi par exemple être enregistrée par une procédure d’établissement des droits d’accès, usuellement effectuée par le dispositif maître de confiance TDMSTR au démarrage du système sur puce SOC.
Ainsi, le fonctionnement du circuit de protection RISUP de chaque ressource RES est configuré en fonction de la donnée de paramétrage ILAC_BUS_CFG contenue dans l’emplacement respectif « 8 » du registre de configuration.
A cet égard, le circuit de protection RISUP est configuré pour générer le signal de notification ILAC_BUS en cas de blocage d’une transaction adressée à la ressource, si la donnée de paramétrage des notifications ILAC_BUS_CFG pour cette ressource est activée (par exemple à « 1 ») ; et pour ne pas générer le signal de notification ILAC_BUS si la donnée de paramétrage des notifications ILAC_BUS_CFG pour cette ressource est désactivée (par exemple à « 0 »).
En outre, dans le cas où le système d’isolation des ressources RIF comporte l’unité de gestion des accès illégaux centrale IAC, telle que mentionnée précédemment, le registre de configuration CFGREG_RESy peut avantageusement contenir un emplacement « 9 » prévu pour contenir une donnée de paramétrage des interruption ILAC_INTRPT_CFG.
La donnée de paramétrage des interruptions ILAC_INTRPT_CFG permet d’activer ou désactiver (par exemple lorsqu’elle est enregistrée à la valeur « 1 », ou respectivement « 0 ») la fonctionnalité de l’unité de gestion des accès illégaux centrale IAC générant des interruptions ILAC_INTRPT au dispositif maître de confiance TDMSTR, en cas de détection d’accès illégal, et respectivement pour chacune des ressources RES.
La valeur de la donnée de paramétrage des interruptions ILAC_INTRPT_CFG peut par exemple être enregistrée par un utilisateur, afin là-encore de choisir le degré de précision de notification d’accès illégale dont il souhaite bénéficier, et en outre sélectivement pour chaque ressource RES du système sur puce SOC.
Ainsi, le fonctionnement de l’unité de gestion des accès illégaux centrale IAC est configuré spécifiquement pour chaque ressource RES en fonction de la donnée de paramétrage ILAC_INTRPT_CFG contenue dans l’emplacement respectif « 9 » du registre de configuration.
A cet égard, l’unité de gestion des accès illégaux centrale IAC est configurée pour chaque ressource, de manière générer le signal d’interruption ILAC_INTRPT en cas de blocage d’une transaction adressée à la ressource, si la donnée de paramétrage des interruptions ILAC_INTRPT_CFG pour cette ressource est activée (par exemple à « 1 ») ; et pour ne pas générer le signal d’interruption ILAC_INTRPT si la donnée de paramétrage des interruptions ILAC_INTRPT_CFG pour cette ressource est désactivée (par exemple à « 0 »).
La illustre un tableau montrant les possibilités de sélections du degré de précision dans les notifications d’accès illégal, d’un exemple de réalisation du système sur puce SOC décrit précédemment en relation avec les figures 1 à 3.
Les différents degrés de précision des notifications d’accès illégal sont définis pour respectivement chaque ressource, par la configuration de la donnée de paramétrage des notifications ILAC_BUS_CFG et de la donnée de paramétrage des interruptions ILAC_INTRPT_CFG.
Les quatre différents degrés de précision des notifications d’accès illégal sont désignés suivant l’ordre croissant des numéros 1, 2, 3, 4.
Le premier degré « 1 » correspond à un silence en cas d’accès illégal et est défini par la désactivation de la fonctionnalité d’interruption du dispositif maître de confiance TDMSTR, ILAC_INTRPT_CFG = 0, et par la désactivation de la fonctionnalité de notification du dispositif maître fautif MSTR (c’est-à-dire le dispositif maître ayant généré la transaction en cause de l’accès illégal), ILAC_BUS_CFG = 0.
Le deuxième degré « 2 » correspond à une notification seulement au dispositif maître de confiance TDMSTR et est défini par l’activation de la fonctionnalité d’interruption du dispositif maître de confiance TDMSTR, « ILAC_INTRPT_CFG = 1 », et par la désactivation de la fonctionnalité de notification du dispositif maître fautif MSTR, « ILAC_BUS_CFG = 0 ».
Le troisième degré « 3 » correspond à une notification seulement au dispositif maître fautif MSTR et est défini par la désactivation de la fonctionnalité d’interruption du dispositif maître de confiance TDMSTR, « ILAC_INTRPT_CFG = 0 », et par l’activation de la fonctionnalité de notification du dispositif maître fautif MSTR, « ILAC_BUS_CFG = 1 ».
Un choix de l’utilisateur est effectué via l’interface graphique, et ce choix permet donc la sélection d’un des itinéraires proposés (étape 60), et le lancement du guidage du véhicule selon la première portion de l’itinéraire choisi (étape 62), jusqu’au point d’arrêt intermédiaire, lorsque l’itinéraire choisi est un itinéraire mixte.
Le procédé comporte également, de préférence, une étape 64 de transmission au moins du point d’arrêt intermédiaire, ou de préférence de la deuxième portion d’itinéraire, i.e. la partie à effectuer à pied, au dispositif électronique portable 4 pour faciliter la suite du trajet de l’utilisateur.
La est un synoptique des principales étapes d’un procédé de calcul d’itinéraires selon un deuxième mode de réalisation, mises en œuvre par le processeur 24.
Dans ce deuxième mode de réalisation, le scénario d’application envisagé est le cas de plusieurs utilisateurs du véhicule, chacun ayant son propre dispositif électronique portable 4 configuré pour acquérir des données de santé caractéristiques dudit utilisateur.
Dans ce mode de réalisation, le procédé comporte des étapes communes avec le premier mode de réalisation qui portent le même numéro de référence et ne sont pas redécrites ici.
Différemment du premier mode de réalisation, à l’étape 40’ chaque dispositif électronique portable utilisateur est connecté au système de calcul de bord, et un identifiant unique est associé à chaque dispositif électronique portable, par exemple une adresse réseau, e.g. une adresse MAC du dispositif électronique portable. Les données de santé caractéristiques obtenues d’un dispositif électronique portable 4 identifié sont mémorisés en lien avec l’identifiant unique du dispositif.
L’étape 54’ diffère également de l’étape 54 décrite pour le premier mode de réalisation.
Dans ce deuxième mode de réalisation, à l’étape 54’, il est déterminé à partir des données de santé caractéristiques de chaque utilisateur et, optionnellement, de préférences de l’utilisateur préalablement enregistrées, si une portion de trajet à pied est à envisager.
Par exemple, à l’étape 54’ le procédé de détermination de l’étape 54 est mis en œuvre avec les données de santé caractéristiques mémorisées pour chaque utilisateur, et une distance seuil par utilisateur est calculée.
Ensuite, la distance seuil à parcourir à pied est calculée comme étant le minimum des distances seuil par utilisateur. Ainsi la compatibilité avec les données de santé de chacun des utilisateurs est garantie.
Lorsqu’un point d’arrêt intermédiaire est trouvé, ce point d’arrêt intermédiaire convient à chacun des utilisateurs.
Selon une autre variante, par exemple lorsque les utilisateurs ont de données de santé caractéristiques différentes, de manière à permettre aux utilisateurs en bonne santé d’effectuer un itinéraire à pied satisfaisant, plusieurs deuxièmes portions d’itinéraires sont proposées à partir d’un même point d’arrêt intermédiaire, avec une deuxième portion d’itinéraire adaptée pour chaque utilisateur, en fonction de ses propres données de santé. Par exemple un itinéraire piéton plus long ou comportant une autre difficulté, par exemple un dénivelé, est proposé à un utilisateur pour qui la distance seuil utilisateur calculée est grande, alors qu’un itinéraire court ou plat direct est proposé à un utilisateur pour qui la distance seuil utilisateur calculée est faible.
Dans ce deuxième mode de réalisation, après le point d’arrêt intermédiaire, le point d’arrêt intermédiaire ou la deuxième portion d’itinéraire est optionnellement transmise au dispositif électronique portable de chaque utilisateur correspondant (étape 64’).
La est un synoptique des principales étapes d’un procédé de calcul d’itinéraires selon un troisième mode de réalisation.
Dans ce troisième mode de réalisation, le cas de plusieurs utilisateurs du véhicule avec des destinations (ou points de destination) distinctes pour au moins deux utilisateurs est envisagé.
Le procédé comporte une première phase 60 d’initialisation comportant la réception d’informations et paramètres de tous les utilisateurs, effectuée par communication entre le système de calcul de bord du véhicule et chaque dispositif électronique portable d’utilisateur.
Le module de filtrage RIS peut aussi être configuré pour transférer l’identifiant de compartimentation de la transaction TRS_CID pour fournir le deuxième signal d’erreur ILAC_TRS_CID.
On notera en particulier que module de filtrage RIS est configuré, en cas de violation des droits d’accès de privilège PRIV, NPRIV de la ressource par une transaction, pour générer le deuxième signal d’erreur ILAC_SEC représentatif du droit d’accès de sécurité de cette transaction ILAC_TRS_SEC.
Ainsi, il sera en particulier possible, par exemple par l’unité de gestion d’accès illégaux IAC, de distinguer si une violation des droits d’accès de privilège PRIV/NPRIV se produit dans l’environnement sécurisé SEC ou non-sécurisé NSEC.
Il sera en outre possible de distinguer plus particulièrement si une transaction illégale sur le plan du droit d’accès de privilège provient d’un environnement sécurisé.
On se réfère à cet égard aux figures 6 et 7A-7B.
La illustre un exemple de réalisation du système d’isolation des ressources RIF, en particulier de l’unité de gestion d’accès illégaux IAC.
Cet exemple s’inscrit en particulier, mais pas nécessairement, dans le contexte d’une architecture multi-cœurs symétrique décrit en relation avec la .
Dans cet exemple, le système sur puce SOC comporte un nombre « n » de microprocesseurs CPU1, CPU2, CPUn et de domaines associés, et ayant chacun un identifiant de compartimentation respectif CPU_CID1, CPU_CID2, CPU_CIDn ; et un nombre « m » de ressources RES1, RESm ayant chacune un module de filtrage RIS tel que décrit précédemment en relation avec la .
L’unité de gestion d’accès illégaux IAC reçoit et traite les premiers et deuxièmes signaux d’erreur ILAC_SEC, ILAC_PRIV, ILAC_CID, ILAC_TRS_SEC, ILAC_TRS_CID en provenance de tous les modules de filtrage RIS des différentes ressources RES1 – RESm, d’une manière dédiée à chaque domaine de microprocesseur, par exemple par des sous-unités de gestion d’accès illégaux IAC1, IAC2, IACn respectives à chaque domaine.
En pratique, les sous-unités de gestion d’accès illégaux IAC1, IAC2, IACn ne sont pas nécessairement sectorisées dans le circuit de gestion d’accès illégaux IAC global.
L’unité de gestion d’accès illégaux IAC peut comporter un circuit logique LOG (SEC & PRIV) de gestion des violations de sécurité et de privilège, et un circuit logique LOG (CID) de gestion des violations de compartimentation.
A partir desdits signaux d’erreur ILAC_SEC, ILAC_PRIV, ILAC_CID, ILAC_TRS_SEC, ILAC_TRS_CID, l’unité de gestion d’accès illégaux IAC (le circuit logique « LOG (SEC & PRIV) ») est avantageusement configurée pour coder, dans un registre de statuts ILAC_STAT_FLG, une information numérique (par exemple sur 3 bits) représentative au moins des cas suivants de violations, éventuellement cumulés : une violation des droits d’accès de sécurité d’une ressource FLG_SEC ; une violation des droits d’accès de privilège d’une ressource d’un environnement sécurisé FLG_PRIV_SEC ; et une violation des droits d’accès de privilège d’une ressource d’un environnement non-sécurisé FLG_PRIV_NSEC ( ).
Par exemple, le registre de statuts ILAC_STAT_FLG comporte des sous-registre respectivement dédiés à chacune des ressources RES1 – RESm. Par exemple, le registre de statuts ILAC_STAT_FLG est accessible en lecture par le microprocesseur CPU1 – CPUn appartenant au même domaine que la sous-unité de gestion d’accès illégaux IAC1 – IACn.
En outre, l’unité de gestion d’accès illégaux IAC est configurée pour communiquer une première interruption IT_NSEC et/ou une deuxième interruption IT_SEC à l’environnement non-sécurisé NSEC ou sécurisé SEC du microprocesseur CPU1, en fonction du cas détecté de violation des droits d’accès FLG_SEC, FLG_PRIV_SEC, FLG_PRIV_NSEC (voir ).