FR 3160248 A1 20250919 FR 2402593 A 20240315 Emulation d’une mémoire programmable une seule fois La présente description concerne un procédé comprenant : - la programmation d’un premier bit d’autorisation, associé à une zone d’une mémoire non volatile (104) d’un dispositif électronique, vers une valeur de protection ; et - l’interdiction d’effacement du contenu de la première zone de la mémoire non volatile, sur la base de l’état du premier bit d’autorisation. Figure pour l'abrégé : Fig. 3 Emulation d’une mémoire programmable une seule fois La présente description concerne de façon générale les mémoire programmable une seule fois (en anglais « One Time Programmable » - OTP) et en particulier les procédé et circuit permettant l’émulation d’une mémoire OTP. Des mécanismes de sécurité, tels que par exemple des mécanismes interdisant des retours à des versions et/ou état antérieurs de logiciels (en anglais « Anti RollBack »), sont facilement implémentables sur des dispositifs électroniques lorsqu’ils sont pourvus d’une mémoire programmable une seule fois. Cependant, la taille des mémoires programmables une seule fois dépend de plusieurs paramètres, tels que, par exemple, des fonctionnalités embarquées sur le dispositif, du type d’usage final du dispositif, etc. et peut ne pas être suffisante pour un utilisateur du dispositif. Il est souhaitable d’assurer une taille de mémoire programmable une seule fois suffisante à l’utilisateur du dispositif. En particulier, il est souhaitable de rendre configurable la taille de mémoire programmable une seule fois d’un dispositif électronique. Un mode de réalisation prévoit un procédé comprenant : - la programmation d’un premier bit d’autorisation, associé à une zone d’une mémoire non volatile d’un dispositif électronique, vers une valeur de protection ; et - l’interdiction d’effacement du contenu de la première zone de la mémoire non volatile, sur la base de l’état du premier bit d’autorisation. Selon un mode de réalisation, la valeur de protection à laquelle est programmée le premier bit d’autorisation est fonction de l’état d’un premier bit de configuration et/ou d’au moins une valeur associée à un état dans lequel est placé le dispositif parmi une pluralité d’états possibles du dispositif. Selon un mode de réalisation, le bit de configuration est programmable uniquement lorsque le dispositif est placé dans un premier état parmi la pluralité d’états. Selon un mode de réalisation : - le dispositif est placé dans un deuxième état parmi la pluralité d’états, à partir du premier état, par programmation d’un premier bit d’état ; et - le dispositif est placé dans un troisième état parmi la pluralité d’états, à partir du premier ou du deuxième état, par programmation d’un deuxième bit d’état compris dans une mémoire programmable une seule fois. Selon un mode de réalisation, l’effacement de la zone de la mémoire non volatile est autorisé lorsque le dispositif est dans le premier état. Selon un mode de réalisation, le premier bit d’état est compris dans la mémoire non volatile. Selon un mode de réalisation, le bit de configuration est compris dans une mémoire programmable une seule fois. Selon un mode de réalisation, le bit de configuration est compris dans la mémoire non volatile. Selon un mode de réalisation, un bit additionnel est compris dans une mémoire programmable une seule fois du dispositif et dans lequel la valeur de protection à laquelle est programmée le premier bit d’autorisation est en outre fonction du bit additionnel. Selon un mode de réalisation, le bit additionnel est programmable uniquement lorsque le dispositif est placé dans le deuxième état. Un mode de réalisation prévoit un dispositif comprenant une mémoire non volatile comprenant une zone associée à un premier bit d’autorisation programmé à une valeur de protection, l’accès pour effacement de la zone étant interdit sur la base de la valeur de protection. Selon un mode de réalisation, la valeur de protection à laquelle est programmé le bit d’autorisation est fonction de la valeur d’un bit de configuration, d’un premier bit d’état compris dans la mémoire non volatile et d’un deuxième bit d’état compris dans une mémoire programmable une seule fois du dispositif. Selon un mode de réalisation, le bit de configuration est compris dans la mémoire programmable une seule fois. Selon un mode de réalisation, le bit de configuration est compris dans la mémoire non volatile et dans lequel la mémoire programmable une seule fois comprend en outre un bit additionnel, la valeur de protection à laquelle est programmée le bit d’autorisation étant fonction, en outre, de l’état du bit additionnel. Selon un mode de réalisation, l’état du premier et/ou du deuxième bits d’état détermine un état du dispositif parmi un premier, un deuxième et un troisième état, et dans lequel le bit de configuration est programmable uniquement lorsque le dispositif est dans le premier état. Ces caractéristiques et avantages, ainsi que d'autres, seront exposés en détail dans la description suivante de modes de réalisation particuliers faite à titre non limitatif en relation avec les figures jointes parmi lesquelles : la FIG. 1 est un schéma par bloc illustrant un dispositif électronique ; la FIG. 2 est un organigramme illustrant des étapes d’un mode de réalisation de la présente description ; et La FIG. 3 illustre un exemple d’implémentation d’un procédé d’émulation de mémoire programmable une seule fois, selon un mode de réalisation de la présente description. De mêmes éléments ont été désignés par de mêmes références dans les différentes figures. En particulier, les éléments structurels et/ou fonctionnels communs aux différents modes de réalisation peuvent présenter les mêmes références et peuvent disposer de propriétés structurelles, dimensionnelles et matérielles identiques. Par souci de clarté, seuls les étapes et éléments utiles à la compréhension des modes de réalisation décrits ont été représentés et sont détaillés. Sauf précision contraire, lorsque l'on fait référence à deux éléments connectés entre eux, cela signifie directement connectés sans éléments intermédiaires autres que des conducteurs, et lorsque l'on fait référence à deux éléments reliés (en anglais "coupled") entre eux, cela signifie que ces deux éléments peuvent être connectés ou être reliés par l'intermédiaire d'un ou plusieurs autres éléments. Dans la description qui suit, lorsque l'on fait référence à des qualificatifs de position absolue, tels que les termes "avant", "arrière", "haut", "bas", "gauche", "droite", etc., ou relative, tels que les termes "dessus", "dessous", "supérieur", "inférieur", etc., ou à des qualificatifs d'orientation, tels que les termes "horizontal", "vertical", etc., il est fait référence sauf précision contraire à l'orientation des figures. Sauf précision contraire, les expressions "environ", "approximativement", "sensiblement", et "de l'ordre de" signifient à 10 % près, de préférence à 5 % près. La FIG. 1 est un schéma par bloc illustrant un dispositif électronique 100 comprenant un circuit de traitement 102 selon un mode de réalisation de la présente description. Le circuit de traitement 102 par exemple une carte électronique telle qu’une carte à microcircuits, un matériel à usage informatique, un circuit à microprocesseur, etc. A titre d’exemple, le dispositif électronique 100, comprenant le circuit de traitement 102, est un objet connecté, tel qu’un smartphone, une montre connectée, etc. sur lequel sont installée une ou plusieurs applications. Selon un mode de réalisation, le circuit 102 comprend une mémoire non volatile 104 (NV MEM), par exemple de type NOR Flash et/ou NAND FLASH. Le circuit 102 comprend, par exemple, en outre une mémoire volatile 106 (RAM). A titre d’exemple, la mémoire volatile 106 est une mémoire de type RAM (de l’anglais « Random Acces Memory »). Les mémoires 104 et 106 sont, par exemple, reliées par exemple par l’intermédiaire d’un bus 108. Le circuit 102 comprend, par exemple, en outre un processeur 110 (CPU) relié au bus 108. A titre d’exemple, le processeur 110 est configuré pour exécuter des applications dont les codes applicatifs sont, par exemple, stockés dans la mémoire non volatile 104. Selon un mode de réalisation, le circuit 102 comprend en outre une ou plusieurs mémoires programmables une seule fois 112 (OTP), et par exemple reliées au bus 108. A titre d’exemple, la ou les mémoires 112 sont des mémoires de type fusibles ou de type anti-fusibles. A titre d’exemple, dans leur état initial, les bits de la ou des mémoires 112 ont pour valeur 1. Un bit de la, ou des, mémoires 112 sera dit grillé lorsque sa valeur passera de 1 à 0. A titre d’exemple, la ou les mémoires 112 sont configurées pour, par exemple, griller un ou plusieurs bits à chaque mise à jour d’une application logicielle, d’un micrologiciel, par exemple un firmware du dispositif. De cette manière, la ou les mémoires 112 assurent des mécanismes interdisant des retours à des versions et/ou état antérieurs de logiciels (en anglais « Anti RollBack »). Dans un autre exemple, la ou les mémoires 112 sont configurées pour griller un ou plusieurs bits lorsque le dispositif 100 quitte un état initial, tel que par exemple un état permettant la programmation et/ou la configuration du dispositif 102, par exemple d’être fournie à une entité intermédiaire entre le fabricant du circuit 102 et un utilisateur final du dispositif 100 et/ou sa mise sur le marché. Dans certains cas, la taille des mémoires 112 est insuffisante pour la mise en œuvre des mécanismes de sécurité et/ou la mise en œuvre d’autre fonctionnalités nécessitant l’usage d’une mémoire programmable une seule fois. Selon un mode de réalisation, la mémoire non volatile 104 comprend un ou plusieurs blocs, ou secteur, configurables de sorte à être protégés contre l’effacement de leur contenu. Autrement dit, un ou plusieurs blocs de la mémoire non volatile 104 sont configurables afin de jouer le rôle de mémoire programmable une seule fois. A titre d’exemple, chacun de l’un ou plusieurs blocs de la mémoire non volatile 104 est associé à un bit de configuration compris dans la mémoire 104 et/ou dans les mémoires 112. L’état du bit de configuration détermine alors si le bloc associé est protégé contre l’effacement ou non. A titre d’exemple, la mémoire 104 est une mémoire de type NOR Flash et comprend une ou plusieurs secteurs protégés contre l’effacement. Chaque secteur comprend, par exemple, 16 octets. A titre d’exemple, les octets de chaque bloc ont initialement pour valeur 0xff. Lorsque qu’une demande pour écriture, provenant par exemple du processeur, est requise sur un de ces blocs, le premier octet de ce bloc est par exemple programmé vers la valeur 0xfe ou vers la valeur 0x1. A titre d’exemple, lorsqu’une demande d’écriture du premier octet vers la valeur 0xff, l’effacement du bloc est alors requis. Le bloc étant protégé contre l’effacement, la demande d’écriture est alors refusée et le premier octet du bloc reste à la valeur précédemment programmée. A titre d’exemple, la mémoire 104 est une mémoire de type NAND Flash et comprend une ou plusieurs secteurs protégés contre l’effacement. Chaque secteur comprend, par exemple, 16 octets de données utiles et 8 octets de code de correction d’erreur (en anglais « Error Correction Code » -ECC), chaque octet de données utiles étant alors associé à 4 bits d’ECC. A titre d’exemple, les octets de données utiles et d’ECC de chaque bloc ont initialement pour valeur 0xff. Lorsque qu’une demande pour écriture, provenant par exemple du processeur, est requise sur un de ces blocs, le premier octet de ce bloc est programmé vers la valeur 0xfe et les 4 bits d’ECC associés sont programmés vers, par exemple, la valeur correspondante à 0xfe. A titre d’exemple, le deuxième octet de ce bloc est programmé vers la valeur 0x1 et les 4 bits d’ECC associés sont programmés vers, par exemple, la valeur correspondante à 0x1. A titre d’exemple, lorsqu’une demande d’écriture du premier octet vers la valeur 0xff, l’effacement du bloc est alors requis. Le bloc étant protégé contre l’effacement, la demande d’écriture est alors refusée et le premier octet du bloc reste à la valeur précédemment programmée. En effet, dans un bloc d’une mémoire de type NAND, il est possible de programmer les octets du bloc dans l’ordre ou dans le désordre. Cependant, chaque octet est programmable une seule fois. En effet, à chaque écriture d’un octet, des bits d’ECC sont programmés et les bits d’ECC encodant le code d’erreur dépendent alors de la donnée écrite dans l'octet. Il est alors par exemple possible d’écrire la valeur 0xfe dans le premier octet. Cependant, si ensuite on veut écrire une autre valeur que 0xfe dans le premier octet, l'écriture va échouer car un contrôleur mémoire (non illustré en FIG. 1 ) de la mémoire NAND va contrôler, avant d'écrire, que l'octet est 0xff et que les 4 bits d'ECC associés à cet octet sont programmé à la valeur 1. Le comportement est alors le même pour tous les octets. Autrement dit, le comportement est le même pour les 16 octets. Dans le cas d’une mémoire de type NOR, il n’est pas possible d’écrire tout d’abord la valeur 0xfe puis ensuite la valeur 0x1 dans un même octet. En effet, le bit le moins significatif de cet octet serait programmé à la valeur 0 lors de la première écriture de 0xfe puis être programmé à la valeur 1 lors de la deuxième écriture de ce bit. Cependant, la technologie de mémoire de type NOR implique l'effacement d’un bloc pour reprogrammer un bit ayant pour valeur 0 vers la valeur 1. Selon un mode de réalisation, le choix des blocs de la mémoire 104 pour lesquels la protection contre l’effacement est activée est configurable uniquement lorsque le circuit 102 est dans un état de programmation et/ou de configuration. A titre d’exemple, cet état est un état initial dans lequel le circuit 102 est lorsqu’il est entre les mains de son fabricant et avant d’être remis à, par exemple, une entité intermédiaire entre le fabricant et un utilisateur final et/ou avant sa mise sur le marché. La FIG. 2 est un organigramme illustrant des étapes d’un mode de réalisation de la présente description. La FIG. 3 illustre un exemple d’implémentation du procédé d’émulation de mémoire programmable une seule fois, selon un mode de réalisation de la présente description. Dans une étape 200 (LEVEL0), le circuit 102 est dans son état initial. A titre d’exemple, le circuit 102 est dans les mains de son fabriquant et n’a pas encore été remis à une entité intermédiaire et/ou à son utilisateur final. A titre d’exemple, l’état initial du circuit est défini par l’état de deux bits d’état. A titre d’exemple, lorsque ces deux bits d’état sont programmés à la valeur 0, le circuit 102 est dans l’état initial. A titre d’exemple, les deux bits d’états comprennent un premier bit d’état compris dans la mémoire 104 et un deuxième bit d’état compris dans une des mémoires 112. Selon un mode de réalisation, lorsque le circuit 102 est dans son état initial, des blocs 300 (SECTORS) de la mémoire 104 sont configurables afin d’être, dans la suite de la vie du dispositif 100, protégés contre l’effacement. A titre d’exemple, les blocs de la mémoire 104 sont en outre configurables afin d’être, dans la suite de la vie du dispositif 100, protégés contre l’écriture. Autrement dit, dans l’état initial du circuit 102, il est possible de configurer les blocs 300 de la mémoire 104 afin d’interdire leur effacement et/ou leur écriture. A titre d’exemple, les blocs 300 comprennent 8 blocs de 16 octets chacun. Dans l’exemple où la mémoire 104 est de type NAND, chacun des blocs 300 comprend en addition des 16 octets de données utiles, 8 octets de code d’erreur. Dans un exemple, un octet de configuration des blocs 300 est, par exemple, compris dans l’une des mémoires 112. Chaque bit de l’octet de configuration est alors associé à un des blocs 300. Les bits de l’octet de configuration sont alors programmés dans l’étape 200. A titre d’exemple, lorsqu’un bit de l’octet de configuration est grillé, prenant par exemple la valeur 0, cela indique que le bloc associé dans la mémoire 104 est protégé contre l’effacement. Ainsi, une fois qu’un bit de l’octet de configuration est grillé, cette action est irréversible. Dans un autre exemple, l’octet de configuration est compris dans la mémoire 104. Ainsi, il est possible de changer la configuration des blocs 300 lorsque l’accès pour écriture de l’octet est autorisé. Dans cet exemple, un octet additionnel est compris dans les mémoires 112. A titre d’exemple, la protection contre l’effacement d’un bloc de la mémoire 104 n’est pas effective lorsque le circuit 102 est dans son état initial. Autrement dit, durant l’étape 200, il est possible de modifier et/ou effacer le contenu d’un bloc de la mémoire 104 protégé contre l’effacement. Ainsi, cela permet d’effectuer des tests sur le contenu du bloc protégé et de le modifier si besoin. Dans une étape 201 (LEVEL1), le circuit 102 est placé dans un état intermédiaire. A titre d’exemple, le passage du circuit de l’état initial vers l’état intermédiaire s’effectue par la programmation du premier bit d’état , par exemple, compris dans la mémoire 104. A titre d’exemple, lorsque le premier bit d’état est programmé à la valeur 0, le circuit 102 est dans l’état intermédiaire. Il est alors possible de revenir dans l’état initial en reprogrammant le premier bit d’état , par exemple à la valeur 1. Dans l’exemple où l’octet de configuration est compris dans la mémoire 104 et que les mémoires 112 comprennent l’octet additionnel , l’entité intermédiaire a la possibilité de griller des bits de l’octet additionnel, indiquant ainsi s’il souhaite qu’un ou plusieurs blocs des blocs 300 soit protégés contre l’effacement. A titre d’exemple, l’accès pour écriture de l’octet est autorisé uniquement lors de la réalisation de l’étape 201. La programmation de l’octet est alors définitive. De plus, l’octet est programmée à partir de la valeur de l’octet . Dans une étape 202 (LEVEL2), le circuit 102 est par exemple placé dans un état final. A titre d’exemple, l’étape 202 est réalisée avant que le dispositif 100 soit remis à son utilisateur final. A titre d’exemple, le passage du circuit 102 vers l’état final est réalisé par programmation du deuxième bit d’état , par exemple stocké dans les mémoires 112. A titre d’exemple, lorsque le deuxième bit d’état est programmé à la valeur 0, le circuit 102 est dans l’état final. Ainsi, le deuxième bit d’état étant compris dans les mémoires 112, une fois le circuit 102 passé dans l’état final, il n’est pas possible de revenir à l’étape 200 et/ou à l’étape 201. A titre d’exemple, l’accès pour écriture de l’octet est autorisé lorsque le premier bit d’état et le deuxième bit d’état ont tout deux pour valeur 1, autrement dit lorsque le circuit 102 est dans l’état initial. De même, dans le cas où les mémoires 112 comprennent l’octet l’accès pour écriture de l’octet est autorisé lorsque le premier bit d’état a pour valeur 0 et le deuxième bit d’état a pour valeur 1. Dans cet exemple, l’écriture du bit d’état à la valeur 0 est réalisable lorsque l’octet est programmé, à partir des valeurs de l’octet . A titre d’exemple, un octet d’autorisation est par exemple compris dans la mémoire 104. La valeur de l’octet est, par exemple, calculée à partir de différents éléments stockés dans la mémoire 104, tels que par exemple le bit d’état , la valeur de l’octet , et/ou à partir de valeurs stockées dans la mémoire 112, tels que, par exemple, le bit d’état et la valeur de l’octet . L’octet est alors, par exemple, stocké dans un registre. La valeur de cet octet est, par exemple, calculée par l’intermédiaire de matériel logique, tels que par exemple, des portes logiques, et à partir du contenu des mémoires 104 et 112. Le registre stockant l’octet est alors, par exemple, couplé au contrôleur mémoire. Le contrôleur mémoire est alors configuré pour autoriser, ou non, l’effacement d’un bloc sur la base de la valeur de l’octet . A titre d’exemple, lors de la réalisation des étapes 200, 201 et 202, à réception d’une demande d’effacement d’un des blocs de la mémoire 104, la valeur d’un bit, associé au bloc dont l’effacement est demandé, de l’octet d’autorisation est calculé. Dans l’exemple où l’octet de configuration est compris dans les mémoires 112, pour chaque bloc de la mémoire 104 identifié, par exemple par un entier compris entre 0 et 7, un bit d’autorisation , par exemple, le -ieme bit de l’octet d’autorisation est alors tel que , où est l’état du premier bit d’état , est l’état du deuxième bit d’état et est l’état du bit associé au bloc dans l’octet . A titre d’exemple, lorsque le bit est égal à 0, toute demande d’effacement du bloc associé est refusée. Ainsi, il est possible d’effacer tout bloc lors de l’étape 200. Lors des étapes 201 et/ou 202, l’effacement du bloc identifié par l’entier est autorisé uniquement si le bit associé a été programmé, lors de l’étape 200, pour autoriser l’effacement du bloc. Dans le cas où l’octet de configuration est compris dans la mémoire 104, l’octet additionnel compris dans la mémoire 112 est accessible pour écriture uniquement lors de l’étape 201, autrement dit lorsque le circuit 102 est dans l’état intermédiaire. Il n’est alors pas possible de modifier la valeur de l’octet lors de la réalisation de l’étape 202, autrement dit lorsque le circuit 102 est dans son état final. Dans cet exemple, le -ieme bit de l’octet d’autorisation est alors calculé tel que . Ainsi, il est possible pour l’entité intermédiaire, durant l’étape 201, de modifier et configurer les blocs 300 protégés, ou non, contre l’effacement. Divers modes de réalisation et variantes ont été décrits. La personne du métier comprendra que certaines caractéristiques de ces divers modes de réalisation et variantes pourraient être combinées, et d’autres variantes apparaîtront à la personne du métier. En particulier, en ce qui concerne les mémoire 112, bien que dans les modes de réalisation décrit, un bit des mémoire 112 est grillé lorsque sa valeur est égale à 0, il est tout à fait envisageable qu’un bit grillé ait pour valeur 1. La personne du métier saura adapter le calcul des bits de l’octet en fonction. De plus, bien que les exemples décrits illustrent 8 blocs, chacun de 16 octets, configurables, il est envisageable de configurer un nombre supérieur, ou inférieur de bloc. Les blocs pouvant en outre être de taille différente de 16 octets. La personne du métier saura adapter la taille des octets de configuration et d’autorisation en fonction. Enfin, la mise en oeuvre pratique des modes de réalisation et variantes décrits est à la portée de la personne du métier à partir des indications fonctionnelles données ci-dessus. Procédé comprenant : - la programmation d’un premier bit d’autorisation ( ), associé à une zone d’une mémoire non volatile (104) d’un dispositif électronique (100), vers une valeur de protection ; et - l’interdiction d’effacement du contenu de la première zone de la mémoire non volatile, sur la base de l’état du premier bit d’autorisation. Procédé selon la revendication 1, dans lequel la valeur de protection à laquelle est programmée le premier bit d’autorisation ( ) est fonction de l’état d’un premier bit ( ) de configuration et/ou d’au moins une valeur ( , ) associée à un état dans lequel est placé le dispositif parmi une pluralité d’états possibles du dispositif. Procédé selon la revendication 2, dans lequel le bit de configuration ( ) est programmable uniquement lorsque le dispositif est placé dans un premier état parmi la pluralité d’états. Procédé selon la revendication 3, dans lequel : - le dispositif (100) est placé dans un deuxième état parmi la pluralité d’états, à partir du premier état, par programmation d’un premier bit d’état ( ) ; et - le dispositif est placé dans un troisième état parmi la pluralité d’états, à partir du premier ou du deuxième état, par programmation d’un deuxième bit d’état ( ) compris dans une mémoire programmable une seule fois (112). Procédé selon la revendication 4, dans lequel l’effacement de la zone de la mémoire non volatile (104) est autorisé lorsque le dispositif (100) est dans le premier état. Procédé selon la revendication 4 ou 5, dans lequel le premier bit d’état ( ) est compris dans la mémoire non volatile (104). Procédé selon l’une quelconque des revendications 2 à 6, dans lequel le bit de configuration ( ) est compris dans une mémoire programmable (112) une seule fois. Procédé selon l’une quelconque des revendications 2 à 6, dans lequel le bit de configuration ( ) est compris dans la mémoire non volatile (104). Procédé selon la revendication 8, dans lequel un bit additionnel ( ) est compris dans une mémoire programmable une seule fois (112) du dispositif et dans lequel la valeur de protection à laquelle est programmée le premier bit d’autorisation ( ) est en outre fonction du bit additionnel. Procédé selon la revendication 8 ou 9 dans leur dépendance à la revendication 4, dans lequel le bit additionnel ( ) est programmable uniquement lorsque le dispositif (100) est placé dans le deuxième état . Dispositif comprenant une mémoire non volatile (104) comprenant une zone associée à un premier bit d’autorisation ( ) programmé à une valeur de protection, l’accès pour effacement de la zone étant interdit sur la base de la valeur de protection. Dispositif selon la revendication 11, dans lequel la valeur de protection à laquelle est programmé le bit d’autorisation ( ) est fonction de la valeur d’un bit de configuration ( ), d’un premier bit d’état ( ) compris dans la mémoire non volatile (104) et d’un deuxième bit d’état ( ) compris dans une mémoire programmable une seule fois (112) du dispositif. Dispositif selon la revendication 12, dans lequel le bit de configuration ( ) est compris dans la mémoire programmable une seule fois (112). Dispositif selon la revendication 12, dans lequel le bit de configuration ( ) est compris dans la mémoire non volatile (104) et dans lequel la mémoire programmable une seule fois (112) comprend en outre un bit additionnel ( ), la valeur de protection à laquelle est programmée le bit d’autorisation étant fonction, en outre, de l’état du bit additionnel. Dispositif selon l’une quelconque des revendications 12 à 14, dans lequel l’état du premier et/ou du deuxième bits d’état ( , ) détermine un état du dispositif parmi un premier, un deuxième et un troisième état, et dans lequel le bit de configuration ( ) est programmable uniquement lorsque le dispositif est dans le premier état.