ES2584527T3 - Método para reducir la aparición de quemado debido a inestabilidad de temperatura en polarización negativa - Google Patents

Método para reducir la aparición de quemado debido a inestabilidad de temperatura en polarización negativa Download PDF

Info

Publication number
ES2584527T3
ES2584527T3 ES09732238.2T ES09732238T ES2584527T3 ES 2584527 T3 ES2584527 T3 ES 2584527T3 ES 09732238 T ES09732238 T ES 09732238T ES 2584527 T3 ES2584527 T3 ES 2584527T3
Authority
ES
Spain
Prior art keywords
memory elements
response
pattern
memory
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES09732238.2T
Other languages
English (en)
Inventor
Pim Theo Tuyls
Geert Jan Schrijen
Abraham C. Kruseman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NXP BV
Intrinsic ID BV
Original Assignee
NXP BV
Intrinsic ID BV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NXP BV, Intrinsic ID BV filed Critical NXP BV
Application granted granted Critical
Publication of ES2584527T3 publication Critical patent/ES2584527T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • G—PHYSICS
    • G11—INFORMATION STORAGE
    • G11C—STATIC STORES
    • G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/41—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
    • G11C11/412—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger using field-effect transistors only
    • G—PHYSICS
    • G11—INFORMATION STORAGE
    • G11C—STATIC STORES
    • G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04—Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects
    • G—PHYSICS
    • G11—INFORMATION STORAGE
    • G11C—STATIC STORES
    • G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • G—PHYSICS
    • G11—INFORMATION STORAGE
    • G11C—STATIC STORES
    • G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/20—Memory cell initialisation circuits, e.g. when powering up or down, memory clear, latent image memory
    • H—ELECTRICITY
    • H03—ELECTRONIC CIRCUITRY
    • H03K—PULSE TECHNIQUE
    • H03K3/00—Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02—Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/027—Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
    • H03K3/037—Bistable circuits
    • H03K3/0375—Bistable circuits provided with means for increasing reliability; for protection; for ensuring a predetermined initial state when the supply voltage has been applied; for storing the actual state when the supply voltage fails
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3278—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Static Random-Access Memory (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Semiconductor Memories (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

Un método para atenuar el efecto de quemado y permitir la realización de un proceso de inicio con respecto a un dispositivo que comprende una pluralidad de elementos de memoria que pueden cambiarse, en donde los elementos de memoria tienen la capacidad de, tras el inicio, generar un patrón de respuesta de valores de inicio útiles para la identificación dado que el patrón de respuesta depende de características físicas de los elementos de memoria, comprendiendo los elementos de memoria un bucle de realimentación que usa transistores, el método caracterizado por la etapa de, tras el inicio de los elementos de memoria, escritura de un patrón de datos en los elementos de memoria que es el inverso a un patrón de respuesta que se leyó previamente desde los mismos elementos de memoria, en donde la escritura del patrón de datos en los elementos de memoria que es el inverso al patrón de respuesta que se leyó previamente desde los mismos elementos de memoria es parte de un proceso de inicio y se prosigue después del inicio y de la medición de un patrón de respuesta inicial.

Description

5
10
15
20
25
30
35
40
45
50
55
60
65
DESCRIPCION
Metodo para reducir la aparicion de quemado debido a inestabilidad de temperatura en polarizacion negativa
La invencion se refiere a una tecnica para reducir el quemado producido por inestabilidad de temperatura en polarizacion negativa (NBTI, del ingles "Negative Bias Temperature Instability") en un dispositivo, particularmente para su uso en un dispositivo que usa una funcion fisicamente inclonable (PUF, del ingles "Physically Unclonable Function") con la finalidad de identificacion del mismo o con la finalidad de almacenamiento de claves seguras basado en una PUF.
Los dispositivos configurables en campo, tales como las Matrices de Puertas Programables en Campo (FPGA), son ampliamente usados para la realizacion de prototipos de disenos electronicos y algoritmos. Adicionalmente, se usan crecientemente como bloques de construccion dedicados en productos de consumo. Su ventaja principal comparados con los ASIC (Circuitos Integrados de Aplicacion Especifica) es su flexibilidad, dado que pueden configurarse en el campo. Las FPGA se configuran normalmente usando datos, normalmente llamados una corriente de bits de configuracion o simplemente corriente de bits, que se suministra al dispositivo despues de que el dispositivo se integre en una aplicacion. Un tipo popular de FPGA es la FPGA basada en SRAM. Este tipo de chip FPGA solo tiene memoria volatil integrada y por ello pierde su configuracion cuando la alimentacion se desconecta. Con la alimentacion (o "arranque"), la FPGA se configura por medio de una corriente de bits que se carga desde una memoria no volatil externa (por ejemplo una memoria solo de lectura programable (PROM), flash, etc.).
Se pierden beneficios significativos debido a problemas tales como el clonado de dispositivos basandose en los CI y/o sobre-produccion no notificada de los mismos. De ese modo, es altamente deseable tener la capacidad de identificar de modo unico un dispositivo particular y/o impedir la configuracion del mismo con datos de configuracion no autorizados. Una forma conocida para identificar de modo unico un dispositivo programable en campo es el uso de una funcion fisicamente inclonable (PUF). Las PUF son esencialmente funciones aleatorias ligadas a un dispositivo fisico de tal manera que es computacionalmente imposible predecir el resultado de la funcion sin evaluarla realmente usando el dispositivo fisico. Dado que una PUF no puede copiarse o modelizarse, un dispositivo equipado con una PUF se convierte en inclonable (vease, por ejemplo, 1) P. Tuyls, G. J. Schrijen, B. Skoric, J. van Geloven, N. Verhaegh, R. Walters, "Read-proof hardware from protective coatings", L. Goubin y M. Matsuit, Editors Proceedings of Cryptographic Hardware and Embedded Systems 2006, volumen 4249 de LNCS, paginas 369-383, Springer 2006; o 2) J. Guajardo, S. S. Kumar, G. J. Schrijen, P Tuyls, "FPGA intrinsic PUFs and their use for IP protection", P. Paillier y I. Verbauwhede, Editors Proceedings of Cryptographic Hardware and Embedded Systems Conference (CHES) 2007, volumen 4727 de LNCS, paginas 63-80, Springer 2007).
Un ejemplo conocido de una PUF usada para identificar de modo unico un dispositivo es la denominada PUF de SRAM, que se basa en el hecho de que, cuando se inicia una celula SRAM, se inicia en un estado aleatorio debido a variaciones en los voltajes de umbral de los transistores (que, a su vez, son debidas a variaciones en el dopado). Cuando esto se realiza multiples veces, cada celda se iniciara en el mismo estado la mayor parte de las veces.
Realmente, la invencion puede usarse para cualquier tipo de elemento de memoria que se base en un bucle de realimentacion en el que se usen los transistores que experimentan la NBTI, y que sean susceptibles a parametros de produccion de modo que muestren el comportamiento de inicio descrito.
Cualquier elemento de memoria que muestre el comportamiento de inicio descrito se denomina como elemento de memoria impugnable, o brevemente un elemento de memoria, en la presente solicitud. Ejemplos de dichas celdas de memoria son las celdas de memoria SRAM tal como se ha mencionado anteriormente, aunque tambien otras celdas de memoria basadas en cerrojos de acoplamiento cruzado, por ejemplo las PUF mariposa tal como se describen en la solicitud de patente europea EP07114732.6 y elementos de memoria tales como biestables.
En referencia a la Figura 1 de los dibujos, una celda SRAM comprende dos inversores en acoplamiento cruzado 1,2 con conexiones externas a traves de dos transistores adicionales (no mostrados). Cada uno de los inversores 1, 2 comprende dos transistores, siendo uno de los transistores un transistor p-MOS y siendo el otro un transistor n-MOS. Como es bien conocido para un experto en la materia, para llevar un transistor p-MOS al estado de conduccion, la tension puerta-fuente aplicada al transistor debe ser mas pequena que la tension de umbral Vt del transistor. Para un transistor p-MOS, por lo tanto, cuando la tension aplicada a la puerta es mas baja que la tension de umbral, el transistor es llevado al estado de conduccion. Por el contrario, para un transistor n-MOS, cuando la tension aplicada a la puerta es mas baja que la tension de umbral, actua como una resistencia y cuando la tension aplicada a la puerta es mas alta que la tension de umbral, el transistor n-MOS es llevado al estado de conduccion.
El valor de la tension de umbral Vt se determina principalmente por la cantidad de material de dopado presente en el transistor y, dado que esta cantidad de material de dopado no es constante durante la produccion, multiples transistores tendran un intervalo de tensiones de umbral diferentes, e incluso aunque se fabricaran en la misma fabrica, e incluso si fueron parte del mismo lote. Esto implica, por lo tanto, que la tension puerta-fuente que se requiere aplicar a un transistor para llevarle al estado de conduccion (o de resistencia) tambien variara. Por lo tanto, ademas del hecho de que los valores de inicio de un conjunto particular de celulas SRAM es probable que sean los
5
10
15
20
25
30
35
40
45
50
55
60
65
mismos cada vez, los valores de inicio de diferentes celdas SRAM es probable que sean diferentes. Por ello, la respuesta de las celdas al inicio en una disposition de celdas SRAM puede considerarse que es una PUF.
En la practica, sin embargo, el problema principal que puede surgir es el envejecimiento asimetrico que afecta principalmente a los transistores MOSFET de tipo p en una celda SRAM debido al fenomeno conocido como inestabilidad de temperatura con polarization negativa (NBTI). La NBTI provoca la generation de trampas de interfaz bajo condiciones de polarizacion negativa (Vgs = -Vdd) en transistores pMOS, y de ese modo provoca que la tension de umbral del mismo disminuya. Como resultado, el comportamiento de inicio preferido de las celdas SRAM afectadas cambia a lo largo del tiempo y, por lo tanto, afectara adversamente a la fiabilidad de la respuesta PUF de las celdas SRAM. Esta degradation de los dispositivos pMOS debido a la NBTI es conocido como quemado.
Como se ha dicho anteriormente algunos de los otros elementos de memoria que son susceptibles al envejecimiento y tienen propiedades similares a una PUF son los anteriormente mencionados PUF y biestables de mariposa y todos los otros elementos de memoria basados en biestables o cerrojos de acoplamiento cruzado.
El documento de S.V. Kumar, Ch.H. Kim, S.S.Sapatnekar, "Impact on SRAM Read Stability and Design for Reliability", Proceedings of the 7th International Symposium on Quality Electronic Design, pags. 210-218, 2006, describe un metodo para la recuperation del margen de ruido estatico de una celda SRAM mediante el basculamiento periodico del contenido de datos de la celula. Sin embargo, este proceso funciona basado en que la celda sera alimentada durante largos periodos de tiempo y, si la tecnica se implementa por software, hay una sobrecarga de tiempo que hace impractico su uso con grandes matrices de memoria, mientras que si la tecnica se implementa en hardware, hay obviamente una sobrecarga significativa en coste y tamano. Esta tecnica provoca que ambos transistores pMOS de una celda SRAM se envejezcan mas simetricamente, pero no es ideal para preservar el comportamiento de inicio de las celdas SRAM.
Es un objetivo de la presente invention proporcionar un metodo para reducir el impacto de la Inestabilidad de Temperatura con Polarizacion Negativa en el comportamiento de inicio de un elemento de memoria usado en un circuito integrado para una respuesta de PUF.
De acuerdo con la presente invencion, se proporciona un metodo de acuerdo con la reivindicacion 1.
De acuerdo con este metodo, la polarizacion negativa aplicada a los elementos de memoria como resultado del proceso de inicio se reduce antes de que tenga lugar una degradacion temporal significativa del rendimiento de los transistores p-MOS de los elementos de memoria. Al mantener un patron de respuesta inversa en la memoria, aunque habra alguna degradacion del dispositivo debido a que aun se aplicara una cierta polarizacion negativa a los transistores p-MOS del elemento de memoria, dicha degradacion (o "envejecimiento") se consigue de tal manera que se estabilicen los valores de inicio de los elementos de memoria, mejorando de modo efectivo el comportamiento de inicio de los elementos de memoria.
En una realization a modo de ejemplo de la presente invencion, el patron de datos puede, para cada proceso de inicio, ser el inverso a un patron de respuesta generado durante ese proceso de inicio respectivo.
Preferentemente, los datos de respuesta de inscription se encriptan con una clave. La clave con la que se encriptan los datos de inscripcion puede ocultarse en el dispositivo o, en el caso de una FPGA, en la corriente de bits de configuration de la FPGA.
Sin embargo, en una realizacion mas preferida, el patron de datos es la inversa del patron de respuesta obtenido durante una fase de inscripcion. Se ha determinado que usando la inversa de un patron de respuesta obtenido durante una fase de inscripcion se consigue un mejor resultado anti-envejecimiento que con el uso de la inversa de un patron de respuesta de la fase de inicio respectiva. En este caso, la fase de inscripcion se realiza preferentemente por el fabricante en el momento de la production o en un momento posterior por unos terceros de confianza.
En una aplicacion preferida, el dispositivo puede comprender una matriz de puertas programable en campo (FPGA), en cuyo caso, los elementos de memoria comprenden celdas de memoria SRAM y el patron de datos, que es preferentemente el patron de respuesta determinado durante la fase de inscripcion o los datos de ayuda a partir de los que puede reconstruirse el patron de respuesta, se almacenan beneficiosamente (en una forma protegida, por ejemplo cifrados o en la forma de datos de ayuda) a continuation de la corriente de bits de configuracion o programa que se ejecutara en el chip en una memoria externa (o parcheado dentro de la corriente de bits), que puede ser una memoria no volatil proporcionada sobre la misma tarjeta de circuito impreso en la que se localiza la FPGA.
Tambien de acuerdo con la presente invencion, se proporciona un dispositivo electronico para la implementation del metodo de acuerdo con la reivindicacion 1.
En una realizacion a modo de ejemplo, el componente electronico puede comprender una FPGA que comprende una matriz de celdas SRAM y los medios de almacenamiento pueden comprender una memoria no volatil
5
10
15
20
25
30
35
40
45
50
55
60
65
incorporada en o cerca del dispositivo. Alternativamente, sin embargo, el componente puede comprender un ASIC con celdas de memoria SRAM como elementos de memoria y memoria no volatil integrada, o una tarjeta inteligente con las mismas propiedades.
En una realizacion adicional de la presente invencion en la que la memoria es parte de una FPGA, se proporciona un dispositivo de almacenamiento electronico para un componente electronico tal como se ha definido anteriormente, en el que se almacena un patron de datos para aplicacion a al menos los elementos de memoria en los que esta contenido el primer patron de respuesta de los valores de inicio, en el que preferentemente el patron de datos en la inversa de una respuesta determinada durante la fase de inscripcion.
Adicionalmente se proporciona un producto de programa informatico que comprende instrucciones ejecutables por un procesador que, cuando se cargan y ejecutan en el procesador implementan el metodo de acuerdo con la reivindicacion 1.
Aun mas, se proporciona un producto de programa informatico que comprende datos de configuracion, preferentemente en la forma de una corriente de bits, que, cuando se cargan sobre un circuito electronico configurable, configuran el circuito electronico para realizar el metodo de acuerdo con la reivindicacion 1.
Para evitar dudas, una fase de inscripcion es cualquier proceso de inicio durante el que se mide una respuesta con respecto al dispositivo y a partir de la que se extrae una clave o "identificador" por primera vez (siendo interpretable "primera vez" relativamente, es decir, como la primera vez dentro de una sesion de inscripcion y autentificaciones). Un patron de datos son los datos leidos desde los elementos de memoria como resultado del proceso de inicio, tanto si es una fase de inscripcion como si es una fase de verificacion. Es posible usar todos los elementos de memoria del dispositivo para generar el identificador y, posteriormente, el patron de respuesta para su uso durante la fase de verificacion. Sin embargo, debido a que el primer patron de respuesta necesita ser escrito de nuevo en todas las celdas usadas en esta forma, es deseable minimizar la cantidad de elementos que se usan en esta forma, y es deseable minimizar la cantidad de elementos que se usan en esta forma, se prefiere usar justamente un subconjunto de elementos de memoria para esta finalidad. Se apreciara por lo tanto que el identificador para un dispositivo puede cambiarse simplemente mediante el cambio del subconjunto de elementos de memoria elegidos a partir de los que se leen los datos de inicio durante la fase de inscripcion y/o se puede definir mas de un identificador para un dispositivo mediante la generacion de dos o mas identificadores usando dos o mas subconjuntos respectivos de elementos de memoria.
Estos y otros aspectos de la presente invencion seran evidentes a partir de, y clarificados con referencia a, las realizaciones descritas en el presente documento.
Por exhaustividad se menciona que la solicitud de patente internacional, con numero de publicacion WO/2006/053304 y titulo "VOLATILE DEVICE KEYS AND APPLICATIONS THEREOF" desvela una clave determinada a partir de una respuesta volatil usando circuitos sobre un dispositivo.
Por exhaustividad se referencian los articulos "Initial SRAM State as a Fingerprint and Source of True Random Numbers for RFID Tags", por Holcomb, et al. "Impact of NBTI on SRAM read stability and design for reliability", por Kumar, et al.
Se describiran ahora realizaciones de la presente invencion a modo de ejemplos solamente y con referencia a los dibujos adjuntos, los que:
La Fig. 1 es una ilustracion parcial esquematica de una celda SRAM;
la Fig. 2 es un diagrama de flujo esquematico que ilustra las etapas principales en un proceso de inicio de acuerdo con una realizacion a modo de ejemplo de la presente invencion; y
la Fig. 3 ilustra graficamente las distancias de Hamming entre valores de inicio de una medicion de inscripcion y mediciones en instancias posteriores de tiempo obtenidas por experimentacion con respecto a una realizacion a modo de ejemplo de la presente invencion. Se muestran tres situaciones: "valores de inicio frescos" se refiere a la situacion en la que, despues de cada medicion de inicio, se mantienen en memoria los ultimos valores de inicio, "valores de inicio frescos invertidos" que se refiere a la situacion en la que, despues de la medicion de los valores de inicio se escriben de nuevo en las celdas de memoria SRAM la inversa de estos valores, "valores de inicio dorados invertidos" se refiere a la situacion en la que se escriben de nuevo los inversos de los valores de inicio medidos durante la fase de inscripcion despues de cada medicion de inicio.
Por exhaustividad, y volviendo a hacer referencia a la Figura 1 de los dibujos, una celda SRAM comprende dos inversores en acoplamiento cruzado 1, 2 con conexiones externas a traves de dos transistores adicionales (no mostrados). Cada uno de los inversores 1,2 comprende dos transistores, siendo uno de los transistores un transistor p-MOS y siendo el otro un transistor n-MOS. Como es bien conocido para un experto en la materia, para llevar un transistor p-MOS al estado de conduccion, la tension puerta-fuente aplicada al transistor debe ser mas pequena que la tension de umbral Vt del transistor. Para un transistor p-MOS, por lo tanto, cuando la tension aplicada a la puerta es mas baja que la tension de umbral, el transistor es llevado al estado de conduccion. Por el contrario, para un
5
10
15
20
25
30
35
40
45
50
55
60
65
transistor n-MOS, cuando la tension aplicada a la puerta es mas baja que la tension de umbral, actua como una resistencia y cuando la tension aplicada a la puerta es mas alta que la tension de umbral, el transistor n-MOS es llevado al estado de conduccion.
Si la tension de alimentacion sobre la SRAM es cero, los dos transistores pMOS de la celda SRAM estan en estado de conduccion y los dos transistores nMOS estan en estado de no conduccion. Cuando la tension sobre la celda SRAM comienza a incrementarse (en el inicio), las tensiones sobre las puertas de los dos transistores pMOS comienzan a incrementarse en consecuencia. Supongamos, por ejemplo, que Vit < V2T. En este caso, la tension en elevacion sobre la celda SRAM afectara primero al pMOSi y posteriormente (segun la tension a traves de la celda SRAM continua elevandose) al pMOS2. Como resultado, se lleva primero al pMOSi a un estado de no conduccion, de modo que la salida del inversor 1 es baja y la del inversor 2 es alta y la celda SRAM contiene un "0". Si, por otro lado, V2T < Vit, la celda SRAM contendria un "1" en el inicio. Asi, el comportamiento de inicio de una celda SRAM depende de las relaciones entre los pares de tensiones de umbral Vit y V2T de las celdas SRAM respectivas y estas relaciones se distribuiran sustancialmente de modo aleatorio a traves de la matriz de celdas debido a las concentraciones de dopado anteriormente mencionadas. Es este hecho, en conexion con el hecho de que la respuesta de la matriz de celdas SRAM durante un cierto numero de eventos de inicio es probable que sea el mismo cada vez, el que ha dado como resultado el uso del patron de respuesta de cada matriz SRAM como una PUF.
En la practica, sin embargo, el problema principal que puede surgir es el envejecimiento asimetrico que afecta principalmente a los transistores MOSFET de tipo p en una celda SRAM debido al fenomeno conocido como Inestabilidad de Temperatura con Polarizacion Negativa (NBTI). La NBTI provoca la generacion de trampas de interfaz bajo condiciones de polarizacion negativa (Vgs = -Vdd) a temperaturas elevadas en los transistores pMOS, y de ese modo provoca que la tension de umbral del mismo disminuya. Como resultado, el comportamiento de inicio preferente de las celdas SRAM afectadas cambia a lo largo del tiempo y, por lo tanto, afectara adversamente a la fiabilidad de la respuesta PUF de la FPGA. Esta degradation de los dispositivos pMOS debido a la NBTI es conocido como quemado.
Considerese la situation en la que el estado de inicio preferente de una celda SRAM es "1" (es decir, por el ejemplo dado anteriormente, V2T < Vit). Si el valor del dato de configuration escrito posteriormente es tambien "1", en otras palabras, si se mantiene el valor "1" en la memoria durante un periodo de tiempo mas largo (mas alla del inicio), existira una polarizacion negativa (es decir Vigs = -Vdd) sobre el transistor pMOS del inversor 1. Como se ha explicado anteriormente, la NBTI provocara que Vit disminuya a lo largo del tiempo. De ese modo, en algun punto, Vit disminuira hasta el punto de que V2T > Vit. Esto significa que el comportamiento de inicio de la celda SRAM habra cambiado respecto al comportamiento de inicio preferente de modo que, cuando se inicia, contendra ahora un "0" en lugar de un "1". Por otro lado, cuando se escribe un "0" en la celda SRAM, existira una polarizacion negativa (es decir V2gs = -Vdd) sobre el transistor pMOS del inversor 2. Por ello, la NBTI provocara, en este caso, que V2T disminuya y la diferencia entre Vit y V2T se incrementara adicionalmente, de modo que el estado de inicio cero preferente de la celda SRAM se convertira en mas pronunciado.
De acuerdo con la presente invention, se propone atenuar el impacto de la NBTI sobre el estado de inicio preferente de las celdas SRAM escribiendo la inversa de un patron de respuesta a la matriz de celdas SRAM despues de que se haya medido el patron de respuesta inicial. Se proporciona en la figura 2 de los dibujos un diagrama de flujo que ilustra las etapas principales de un proceso de inicio completo de acuerdo con la invencion.
La NBTI es un mecanismo claramente lento y se ha documentado que la cantidad de degradacion en Margen de Ruido Estatico (SNM) es notable solo despues de que se haya aplicado continuamente una polarizacion negativa durante 105 segundos (~1,16 dias). Por lo tanto, si el contenido de las celdas se bascula prontamente despues del inicio (lo que puede suponerse que ocurre al menos una vez al dia), entonces puede mantenerse la mayor parte, si no todo, el comportamiento de los transistores pMOS.
En una realization a modo de ejemplo de la presente invencion, la "contramedida" aplicada a la matriz de celdas SRAM despues del inicio puede comprender la inversa del patron de respuesta determinado durante ese proceso de inicio particular. En este caso, el patron de respuesta determinado se escribiria en la memoria no volatil de la FPGA, se aplicaria una funcion inversa al mismo y el patron de respuesta inversa asi creado se aplicaria posteriormente como una entrada a la matriz SRAM.
Sin embargo, en una realizacion alternativa, mas preferida, la "contramedida" (es decir "segundo patron de respuesta") aplicada a la matriz de celdas SRAM despues del inicio comprende la inversa de un patron de respuesta determinado durante la fase de inscription (realizada por el fabricante en el momento de la production o en un momento posterior por un tercero de confianza). Esto no solo reduce la cantidad de procesamiento que se requiere realizar (debido a que la inversa del patron de respuesta original puede generarse durante la fase de inscripcion y almacenarse en la memoria no volatil de la FPGA a todo lo largo de su vida, en lugar de tener que proporcionar medios para conseguir la funcionalidad inversa en cada proceso de inicio), sino que los inventores han determinado tambien que esto mejora la fiabilidad de la PUF, como se ilustra graficamente en la Figura 3 de los dibujos, en la que los valores de "inicio dorado" invertido se refieren a la respuesta del patron de respuesta medido durante la fase de inscripcion, valores que se almacenan en la memoria no volatil del dispositivo durante el envejecimiento del mismo.
Se apreciara que, aunque la presente invencion se ha descrito anteriormente espedficamente en relacion a una FPGA, la presente invencion puede aplicarse igualmente a otros tipos de circuitos integrados sobre los que se construyen identificadores intrrnsecos de verificacion y claves seguras (por ejemplo, microcontroladores DSP, ASIC, CI de tarjetas inteligentes, etc.).
5
Deberia tomarse nota tambien de que las realizaciones anteriormente mencionadas ilustran en lugar de limitar la invencion, y que los expertos en la materia seran capaces de disenar muchas realizaciones alternativas sin apartarse del alcance de la invencion tal como se define por las reivindicaciones adjuntas. En las reivindicaciones, cualesquiera signos de referencia colocados entre parentesis no deben ser interpretados como limitativos de las 10 reivindicaciones. La palabra "comprendiendo" y "comprende", y similares, no excluyen la presencia de elementos o etapas distintos de aquellos listados en cualquier reivindicacion o en la memoria descriptiva como un conjunto. La referencia singular de un elemento no excluye la referencia plural de dichos elementos y viceversa. La invencion puede implementarse por medios de hardware que comprenden diversos elementos distintos, y por medio de un ordenador adecuadamente programado. En una reivindicacion de dispositivo que enumere diversos medios, varios 15 de estos medios pueden realizarse mediante uno y el mismo articulo de hardware. El mero hecho de que ciertas medidas se enumeren en reivindicaciones dependientes mutuamente diferentes no indica que no pueda usarse como ventaja una combinacion de estas medidas.

Claims (15)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    55
    REIVINDICACIONES
    1. Un metodo para atenuar el efecto de quemado y permitir la realizacion de un proceso de inicio con respecto a un dispositivo que comprende una pluralidad de elementos de memoria que pueden cambiarse, en donde los elementos de memoria tienen la capacidad de, tras el inicio, generar un patron de respuesta de valores de inicio utiles para la identificacion dado que el patron de respuesta depende de caracteristicas fisicas de los elementos de memoria, comprendiendo los elementos de memoria un bucle de realimentacion que usa transistores, el metodo caracterizado por la etapa de, tras el inicio de los elementos de memoria, escritura de un patron de datos en los elementos de memoria que es el inverso a un patron de respuesta que se leyo previamente desde los mismos elementos de memoria, en donde la escritura del patron de datos en los elementos de memoria que es el inverso al patron de respuesta que se leyo previamente desde los mismos elementos de memoria es parte de un proceso de inicio y se prosigue despues del inicio y de la medicion de un patron de respuesta inicial.
  2. 2. Un metodo de acuerdo con la reivindicacion 1 en el que el patron de datos que se escribe es, para cada proceso de inicio, inverso al patron de respuesta generado como resultado de ese proceso de inicio respectivo.
  3. 3. Un metodo de acuerdo con la reivindicacion 1, en el que el patron de datos que se escribe es fijo e inverso al patron de respuesta generado durante la fase de inscripcion.
  4. 4. Un metodo de acuerdo con la reivindicacion 3 en el que la respuesta determinada durante la fase de inscripcion se almacena en una memoria no volatil, que puede incorporarse al propio dispositivo.
  5. 5. Un metodo de acuerdo con la reivindicacion 3, en el que dicha respuesta se almacena en una forma protegida.
  6. 6. Un metodo de acuerdo con la reivindicacion 3, en el que los datos de respuesta se encriptan con una clave.
  7. 7. Un metodo de acuerdo con la reivindicacion 5, en el que los datos de respuesta se reconstruyen a partir de datos de ayuda.
  8. 8. Un metodo de acuerdo con la reivindicacion 1, en el que los elementos de memoria estan basados en cerrojos de acoplamiento cruzado.
  9. 9. Un metodo de acuerdo con la reivindicacion 1, en el que los elementos de memoria son celdas de memoria SRAM.
  10. 10. Un metodo de acuerdo con la reivindicacion 1, en el que los elementos de memoria son biestables.
  11. 11. Un metodo de acuerdo con una cualquiera de las reivindicaciones 1, 3 y 5 en el que el dispositivo comprende una Matriz de Puertas Programable en Campo (FPGA) y los elementos de memoria comprenden celdas de memoria SRAM.
  12. 12. Un metodo de acuerdo con las reivindicaciones 3 y 11, en el que los datos de ayuda, a partir de los que puede reconstruirse el patron de respuesta determinado durante la fase de inscripcion, se almacenan en una memoria externa proxima a la corriente de bits de configuracion o al programa que se ejecutara en la FPGA.
  13. 13. Un metodo de acuerdo con la reivindicacion 12, en el que la memoria externa es una memoria no volatil proporcionada sobre la misma tarjeta de circuito impreso en la esta situada la FPGA.
  14. 14. Un producto de programa informatico que comprende instrucciones ejecutables por procesador que, cuando se cargan y ejecutan en el procesador, estan dispuestas para implementar el metodo de acuerdo con la reivindicacion 1.
  15. 15. Producto de programa informatico que comprende datos de configuracion, preferentemente en la forma de una corriente de bits, que, cuando se cargan en un circuito electronico configurable, configuran el circuito electronico para disponerse para la realizacion del metodo de acuerdo con la reivindicacion 1.
ES09732238.2T 2008-04-17 2009-04-16 Método para reducir la aparición de quemado debido a inestabilidad de temperatura en polarización negativa Active ES2584527T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP08154744 2008-04-17
EP08154744 2008-04-17
PCT/IB2009/051592 WO2009128044A1 (en) 2008-04-17 2009-04-16 Method of reducing the occurrence of burn-in due to negative bias temperature instability

Publications (1)

Publication Number Publication Date
ES2584527T3 true ES2584527T3 (es) 2016-09-28

Family

ID=40775194

Family Applications (1)

Application Number Title Priority Date Filing Date
ES09732238.2T Active ES2584527T3 (es) 2008-04-17 2009-04-16 Método para reducir la aparición de quemado debido a inestabilidad de temperatura en polarización negativa

Country Status (8)

Country Link
US (1) US8339875B2 (es)
EP (1) EP2269133B1 (es)
JP (1) JP5586582B2 (es)
KR (1) KR101690196B1 (es)
CN (1) CN101981540B (es)
ES (1) ES2584527T3 (es)
IL (1) IL207712A (es)
WO (1) WO2009128044A1 (es)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010024622B4 (de) * 2010-06-22 2012-12-13 Infineon Technologies Ag Identifikationsschaltung und Verfahren zum Erzeugen eines Identifikationsbits
FR2964278A1 (fr) 2010-08-31 2012-03-02 St Microelectronics Rousset Extraction de cle dans un circuit integre
EP2625640B1 (en) * 2010-10-04 2018-08-01 Intrinsic ID B.V. Physical unclonable function with improved start-up behaviour
US8659322B2 (en) * 2011-01-28 2014-02-25 Freescale Semiconductor, Inc. Memory having a latching sense amplifier resistant to negative bias temperature instability and method therefor
US20130141137A1 (en) * 2011-06-01 2013-06-06 ISC8 Inc. Stacked Physically Uncloneable Function Sense and Respond Module
US8590010B2 (en) * 2011-11-22 2013-11-19 International Business Machines Corporation Retention based intrinsic fingerprint identification featuring a fuzzy algorithm and a dynamic key
US20130155795A1 (en) * 2011-12-19 2013-06-20 Mayank Gupta Methodology for Recovering Failed Bit Cells in an Integrated Circuit Memory
US9093128B2 (en) * 2012-11-05 2015-07-28 Infineon Technologies Ag Electronic device with a plurality of memory cells and with physically unclonable function
US20150063010A1 (en) * 2013-08-27 2015-03-05 Synopsys, Inc. Negative bias thermal instability stress testing for static random access memory (sram)
US9729317B2 (en) * 2014-01-30 2017-08-08 Mentor Graphics Corporation Optical physical uncloneable function
US9202554B2 (en) 2014-03-13 2015-12-01 International Business Machines Corporation Methods and circuits for generating physically unclonable function
US10142335B2 (en) 2015-12-18 2018-11-27 International Business Machines Corporation Dynamic intrinsic chip identification
US10146464B2 (en) 2016-06-30 2018-12-04 Nxp B.V. Method for performing multiple enrollments of a physically uncloneable function
US11343108B2 (en) * 2019-06-12 2022-05-24 Arizona Board Of Regents On Behalf Of Northern Arizona University Generation of composite private keys
US12095933B2 (en) * 2021-08-02 2024-09-17 Arizona Board Of Regents On Behalf Of Northern Arizona University PUF-protected pseudo-homomorphic methods to generate session keys
CN116137175A (zh) 2021-11-17 2023-05-19 三星电子株式会社 页缓冲器电路以及包括该页缓冲器电路的存储器件

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54136236A (en) * 1978-04-14 1979-10-23 Nec Corp Readout and write-in enable memory
JPS6085496A (ja) * 1983-10-17 1985-05-14 Toshiba Corp 半導体メモリ
JPH0660668A (ja) * 1992-08-11 1994-03-04 Toshiba Corp マイクロコンピュータ
JP3759758B2 (ja) * 1994-02-03 2006-03-29 株式会社ルネサステクノロジ 半導体記憶装置
JPH09171696A (ja) * 1995-12-20 1997-06-30 Hitachi Ltd 強誘電体記憶装置
US5805496A (en) * 1996-12-27 1998-09-08 International Business Machines Corporation Four device SRAM cell with single bitline
JP3556446B2 (ja) * 1997-10-31 2004-08-18 株式会社東芝 半導体集積回路
JP3835968B2 (ja) * 2000-03-06 2006-10-18 松下電器産業株式会社 半導体集積回路
JP5013387B2 (ja) * 2000-12-01 2012-08-29 ルネサスエレクトロニクス株式会社 集積回路装置の識別方法、集積回路装置の製造方法、集積回路装置、半導体チップ及び実装体
WO2002050910A1 (en) * 2000-12-01 2002-06-27 Hitachi, Ltd Semiconductor integrated circuit device identifying method, semiconductor integrated circuit device producing method, and semiconductor integrated circuit device
US6667917B1 (en) * 2001-06-15 2003-12-23 Artisan Components, Inc. System and method for identification of faulty or weak memory cells under simulated extreme operating conditions
JP2006054499A (ja) * 2002-07-09 2006-02-23 Renesas Technology Corp 半導体集積回路装置及びそれを用いた半導体システム
US7243276B2 (en) * 2003-11-06 2007-07-10 International Business Machines Corporation Method for performing a burn-in test
US7009905B2 (en) * 2003-12-23 2006-03-07 International Business Machines Corporation Method and apparatus to reduce bias temperature instability (BTI) effects
JP2005252696A (ja) * 2004-03-04 2005-09-15 Funai Electric Co Ltd 撮像システム
EP1803060B1 (en) 2004-10-15 2008-07-09 Nxp B.V. Integrated circuit with a true random number generator
WO2006053304A2 (en) 2004-11-12 2006-05-18 Pufco, Inc. Volatile device keys and applications thereof
JP4288248B2 (ja) * 2005-03-11 2009-07-01 インターナショナル・ビジネス・マシーンズ・コーポレーション バイアス温度不安定性(bti)効果を低減するための方法および装置
US20070271421A1 (en) * 2006-05-17 2007-11-22 Nam Sung Kim Reducing aging effect on memory
EP2191410B1 (en) 2007-08-22 2014-10-08 Intrinsic ID B.V. Identification of devices using physically unclonable functions
US7869251B2 (en) * 2008-09-26 2011-01-11 Lsi Corporation SRAM based one-time-programmable memory
JP2010219620A (ja) * 2009-03-13 2010-09-30 Toshiba Corp 半導体集積回路
JP2012064292A (ja) * 2010-09-17 2012-03-29 Toshiba Corp 半導体集積回路

Also Published As

Publication number Publication date
WO2009128044A1 (en) 2009-10-22
CN101981540A (zh) 2011-02-23
US8339875B2 (en) 2012-12-25
IL207712A0 (en) 2010-12-30
IL207712A (en) 2017-06-29
CN101981540B (zh) 2013-03-20
JP2011518402A (ja) 2011-06-23
KR101690196B1 (ko) 2016-12-27
EP2269133B1 (en) 2016-05-11
US20110103161A1 (en) 2011-05-05
JP5586582B2 (ja) 2014-09-10
KR20100135258A (ko) 2010-12-24
EP2269133A1 (en) 2011-01-05

Similar Documents

Publication Publication Date Title
EP2269133B1 (en) Method of reducing the occurrence of burn-in due to negative bias temperature instability
Garg et al. Design of SRAM PUF with improved uniformity and reliability utilizing device aging effect
JP5881715B2 (ja) 開始挙動が改善された物理的複製不可能関数
US20240363171A1 (en) Method and apparatus for puf generator characterization
ES2534403T3 (es) Función física no clonable
Roelke et al. Attacking an SRAM-based PUF through wearout
Rashid et al. True random number generation using latency variations of FRAM
US12483429B2 (en) Physically unclonable function produced using OTP memory
CN110324141B (zh) 抵抗旁信道攻击的物理不可克隆函数和其对应的方法
Mispan et al. NBTI aging evaluation of PUF-based differential architectures
Roelke et al. Controlling the reliability of SRAM PUFs with directed NBTI aging and recovery
Su Novel design in mixed-signal and machine learning resilient architecture physical unclonable functions
Santos Prieto Optimization and Reliability Enhancement of Silicon PUFs Using Pairwise Element Comparisons
Rahman et al. Composition of physical unclonable functions: from device to architecture
Mateu Barriendos Analysis of Data Remanence and Power-up States of SRAM Cells in Embedded Systems
Roy Chaudhuri Effects of Temporal Variations on Delay based Physical Unclonable Functions
Liu Design of lightweight buffer-free sram and robust ring oscillator based physical unclonable functions
Ho Circuit Design of SRAM Physically Unclonable Functions
JP2004327883A (ja) 半導体集積回路