ES3024385T3 - On-die thermal sensing network for integrated circuits - Google Patents

On-die thermal sensing network for integrated circuits Download PDF

Info

Publication number
ES3024385T3
ES3024385T3 ES20846630T ES20846630T ES3024385T3 ES 3024385 T3 ES3024385 T3 ES 3024385T3 ES 20846630 T ES20846630 T ES 20846630T ES 20846630 T ES20846630 T ES 20846630T ES 3024385 T3 ES3024385 T3 ES 3024385T3
Authority
ES
Spain
Prior art keywords
rosc
circuit
temperature
oscillation frequency
semiconductor
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
ES20846630T
Other languages
English (en)
Inventor
Eyal Fayneh
Guy Redler
Evelyn Landman
Inbar Weintrob
Yahel David
Faten Tanasra
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.)
Proteantecs Ltd
Original Assignee
Proteantecs Ltd
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 Proteantecs Ltd filed Critical Proteantecs Ltd
Application granted granted Critical
Publication of ES3024385T3 publication Critical patent/ES3024385T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01KMEASURING TEMPERATURE; MEASURING QUANTITY OF HEAT; THERMALLY-SENSITIVE ELEMENTS NOT OTHERWISE PROVIDED FOR
    • G01K15/00Testing or calibrating of thermometers
    • G01K15/005Calibration
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01KMEASURING TEMPERATURE; MEASURING QUANTITY OF HEAT; THERMALLY-SENSITIVE ELEMENTS NOT OTHERWISE PROVIDED FOR
    • G01K7/00Measuring temperature based on the use of electric or magnetic elements directly sensitive to heat ; Power supply therefor, e.g. using thermoelectric elements
    • G01K7/32Measuring temperature based on the use of electric or magnetic elements directly sensitive to heat ; Power supply therefor, e.g. using thermoelectric elements using change of resonant frequency of a crystal

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Measuring Temperature Or Quantity Of Heat (AREA)
  • Oscillators With Electromechanical Resonators (AREA)

Abstract

Un circuito integrado semiconductor (CI) que comprende: un primer circuito oscilador de anillo (ROSC) y un segundo circuito ROSC en ubicaciones separadas en el CI, cada circuito ROSC tiene una frecuencia de oscilación respectiva en funcionamiento que varía con la temperatura; un sensor de temperatura de semiconductor, ubicado en el CI próximo al primer circuito ROSC y que proporciona una señal de salida del sensor indicativa de temperatura; y al menos un procesador, configurado para indicar una temperatura en el segundo circuito ROSC basándose al menos en: la señal de salida del sensor, la frecuencia de oscilación del segundo circuito ROSC y la frecuencia de oscilación del primer circuito ROSC. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Red de detección térmica en matriz para circuitos integrados
REFERENCIA CRUZADA A SOLICITUDES RELACIONADAS
Esta solicitud reivindica prioridad respecto la solicitud de patente provisional de EE. UU. n.° 62/879.625, presentada el 29 de julio de 2019, y titulada "Integrated Circuit Temperature Sensor".
CAMPO DE LA INVENCIÓN
La invención se refiere al campo de los circuitos integrados.
ANTECEDENTES
Los circuitos integrados (CI) pueden incluir circuitos electrónicos analógicos y digitales en un sustrato semiconductor plano, tal como una oblea de silicio. Los transistores microscópicos se imprimen en el sustrato utilizando técnicas de fotolitografía para producir circuitos complejos de miles de millones de transistores en un área muy pequeña, lo que hace que el diseño de circuitos electrónicos modernos que utilizan CI sea de bajo coste y alto rendimiento. Los CI se producen en líneas de montaje de fábricas, denominadas fundiciones, que han mercantilizado la producción de CI, tales como los CI de semiconductor complementario de óxido metálico (CMOS). Los CI digitales contienen miles de millones de transistores, tales como transistores de efecto de campo de semiconductor de óxido metálico (MOSFET), dispuestos en unidades funcionales y/o lógicas en la oblea, con trayectorias de datos que interconectan las unidades funcionales que transfieren valores de datos entre las unidades funcionales. Cada unidad tiene una fuente de alimentación y una alimentación encendida, alimentación apagada, alimentación en espera asociadas y similares.
Se sabe que hay un sensor de temperatura incrustado en el CI. El sensor de temperatura puede utilizarse para proteger el CI de condiciones de sobrecalentamiento. Por ejemplo, el sensor de temperatura puede hacer que el CI se apague si la temperatura supera un umbral. Por lo tanto, es deseable que el sensor de temperatura sea lo más fiable posible. Los sensores de temperatura existentes normalmente requieren una conexión directa a la fuente de alimentación externa (VccA). La implementación de líneas de suministro para proporcionar esta conexión aumenta el coste y la complejidad del CI. Por ejemplo, los documentos US2017/199089 Al y US7455450 B2 divulgan circuitos integrados semiconductores (CI) con sensores de temperatura incrustados.
Los ejemplos anteriores de la técnica relacionada y las limitaciones relacionadas con ella pretenden ser ilustrativos y no exclusivos. Otras limitaciones de la técnica relacionada se harán evidentes para los expertos en la técnica tras la lectura de la memoria descriptiva y el estudio de las figuras.
SUMARIO
Las siguientes realizaciones y aspectos de las mismas se describen e ilustran junto con sistemas, herramientas y métodos que pretenden ser de ejemplo e ilustrativos, sin limitar su alcance.
En un aspecto de la divulgación, se proporciona un circuito integrado semiconductor (CI) que comprende: un primer circuito oscilador de anillo (ROSC) y un segundo circuito ROSC en ubicaciones separadas en el CI, teniendo cada circuito ROSC una frecuencia de oscilación respectiva durante el funcionamiento que varía con la temperatura; un sensor de temperatura de semiconductor, ubicado en el CI próximo al primer circuito ROSC y que proporciona una señal de salida del sensor indicativa de la temperatura; y al menos un procesador, configurado para indicar una temperatura en el segundo circuito ROSC basado al menos en la señal de salida del sensor, la frecuencia de oscilación del segundo circuito ROSC y la frecuencia de oscilación del primer circuito ROSC.
En las realizaciones, el al menos un procesador está configurado para indicar la temperatura en el segundo circuito ROSC al menos calibrando una relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC basada en una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC.
En las realizaciones, el al menos un procesador está configurado además para indicar la temperatura en el segundo circuito ROSC al menos calibrando una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC basada en una relación entre la temperatura y la señal de salida del sensor.
En las realizaciones, el al menos un procesador está configurado además para almacenar, en el CI: (a) los resultados de la calibración de la relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC; y (b) datos que son indicativos de una diferencia entre (a) y los resultados de la calibración de la relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC.
En las realizaciones, el primer circuito ROSC tiene una entrada acoplada para recibir una corriente eléctrica de una salida de un primer transistor funcional y el segundo circuito ROSC tiene una entrada acoplada para recibir una corriente eléctrica de una salida de un segundo transistor funcional.
En las realizaciones, la entrada al primer circuito ROSC es proporcionada por una salida de una primera fuente de corriente y la entrada al segundo circuito ROSC es proporcionada por una salida de una segunda fuente de corriente.
En las realizaciones, la primera fuente de corriente comprende un primer generador de polarización subumbral acoplado a un terminal de control del primer transistor funcional y configurado para polarizar el primer transistor funcional en un estado subumbral, una salida del primer transistor funcional que proporciona la salida de la primera fuente de corriente; y en donde la segunda fuente de corriente comprende un segundo generador de polarización subumbral acoplado a un terminal de control del segundo transistor funcional y configurado para polarizar el segundo transistor funcional en un estado subumbral, proporcionando una salida del segundo transistor funcional la salida de la segunda fuente de corriente.
En las realizaciones, la entrada del primer circuito ROSC está acoplada de forma conmutable para recibir la corriente eléctrica de la salida del primer transistor funcional, de modo que el al menos un procesador está configurado para determinar: una frecuencia de referencia basada en la frecuencia de oscilación del primer circuito ROSC cuando la entrada del primer circuito ROSC no recibe la corriente eléctrica de la salida del primer transistor funcional; y una frecuencia de medición del sensor basada en la frecuencia de oscilación del primer circuito ROSC cuando la entrada del primer circuito ROSC recibe la corriente eléctrica de la salida del primer transistor funcional.
En las realizaciones, la entrada del segundo circuito ROSC está acoplada de forma conmutable para recibir la corriente eléctrica de la salida del segundo transistor funcional, de modo que el al menos un procesador está configurado para determinar: una frecuencia de referencia basada en la frecuencia de oscilación del segundo circuito ROSC cuando la entrada del segundo circuito ROSC no recibe la corriente eléctrica de la salida del segundo transistor funcional; y una frecuencia de medición del sensor basada en la frecuencia de oscilación del segundo circuito ROSC cuando la entrada del segundo circuito ROSC recibe la corriente eléctrica de la salida del segundo transistor funcional.
En las realizaciones, el CI de semiconductor comprende además: puertos de alimentación eléctrica, configurados para recibir una fuente de alimentación externa. El sensor de temperatura de semiconductor puede acoplarse a los puertos de alimentación eléctrica para alimentar el sensor de temperatura de semiconductor.
En las realizaciones, el CI de semiconductor comprende además: líneas de alimentación de tensión de núcleo (V<cc>de núcleo) para suministrar una tensión de núcleo en el CI. El primer circuito ROSC y el segundo circuito ROSC pueden acoplarse a las líneas de alimentación de tensión de núcleo.
Según la invención reivindicada, el al menos un procesador está configurado para indicar la temperatura en el segundo circuito ROSC al menos calibrando una relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC basada en una relación entre la caída de tensión y la frecuencia de oscilación del segundo circuito ROSC.
Según la invención reivindicada, el al menos un procesador está configurado para indicar la temperatura en el segundo circuito ROSC al menos calibrando una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC basada en una relación entre la caída de tensión y la frecuencia de oscilación del primer circuito ROSC.
En las realizaciones, cada circuito ROSC comprende un número impar de inversores asimétricos.
En las realizaciones, una precisión de la temperatura indicada por el al menos un procesador está dentro del intervalo de ±5 °C de la temperatura real.
Según otro aspecto de la divulgación, se proporciona un circuito integrado (CI) de semiconductor que comprende: puertos de alimentación eléctrica, configurados para recibir una fuente de alimentación externa; y un circuito oscilador de anillo (ROSC) en el CI, que tiene una frecuencia de oscilación durante el funcionamiento que varía con la temperatura, estando el circuito ROSC configurado para recibir energía de los puertos de alimentación eléctrica incluso cuando todos los demás circuitos del CI están apagados; al menos un procesador en el CI, configurado para indicar un estado de temperatura basado al menos en la frecuencia de oscilación del circuito ROSC.
En las realizaciones, el CI de semiconductor comprende además: un sensor de temperatura de semiconductor, situado en el CI próximo al circuito ROSC y que proporciona una señal de salida del sensor indicativa de la temperatura. El al menos un procesador puede configurarse para indicar el estado de temperatura al menos calibrando una relación entre la temperatura y la frecuencia de oscilación del circuito ROSC basada en una relación entre la temperatura y la señal de salida del sensor.
En las realizaciones, el circuito ROSC es un primer circuito ROSC, y el CI de semiconductor comprende además: un segundo circuito ROSC separado del primer ROSC en el CI y que tiene una frecuencia de oscilación durante el funcionamiento que varía con la temperatura; y un sensor de temperatura de semiconductor, situado en el CI próximo al segundo circuito ROSC y que proporciona una señal de salida del sensor indicativa de la temperatura.
En las realizaciones, el al menos un procesador está configurado para indicar el estado de temperatura al menos: calibrando una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC basada en una relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC; y calibrando una relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC basada en una relación entre la temperatura y la señal de salida del sensor.
En las realizaciones, el estado de temperatura identifica que una temperatura en el circuito ROSC es al menos una temperatura umbral. En las realizaciones, el CI de semiconductor comprende además: un controlador, configurado para apagar los circuitos del CI en respuesta a la identificación de que la temperatura en el circuito ROSC es al menos la temperatura umbral.
En las realizaciones, el al menos un procesador comprende al menos uno de: un controlador especializado para cada circuito ROSC, y un procesador general del CI de semiconductor operativo bajo instrucciones de firmware en el CI de semiconductor.
Según otro aspecto de la divulgación, se proporciona un método para indicar una temperatura en un circuito integrado (CI) de semiconductor, en donde el CI de semiconductor comprende: un primer circuito oscilador de anillo (ROSC) y un segundo circuito ROSC en ubicaciones separadas en el CI, teniendo cada circuito ROSC una frecuencia de oscilación respectiva durante el funcionamiento que varía con la temperatura; y un sensor de temperatura de semiconductor, ubicado en el CI próximo al primer circuito ROSC y que proporciona una señal de salida del sensor indicativa de la temperatura. El método comprende: indicar una temperatura en el segundo circuito ROSC basada al menos en: la señal de salida del sensor, la frecuencia de oscilación del segundo circuito ROSC y la frecuencia de oscilación del primer circuito ROSC.
En las realizaciones, indicar la temperatura en el segundo circuito ROSC comprende: calibrar una relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC basada al menos en una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC.
En las realizaciones, la indicación de la temperatura en el segundo circuito ROSC comprende además: calibrar una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC basada al menos en una relación entre la temperatura y la señal de salida del sensor.
En las realizaciones, la indicación de la temperatura en el segundo circuito ROSC comprende además: calibrar una relación entre la temperatura y la frecuencia de oscilación del segundo ROSC basada al menos en una relación entre la caída de tensión y la frecuencia de oscilación del segundo ROSC.
En las realizaciones, el primer circuito ROSC tiene una entrada acoplada para recibir una corriente eléctrica de una salida de un primer transistor funcional y el segundo circuito ROSC tiene una entrada acoplada para recibir una corriente eléctrica de una salida de un segundo transistor funcional. En las realizaciones, el método comprende además: la conmutación entre: un modo de medición, en el que el primer circuito ROSC está acoplado para recibir la corriente eléctrica de la salida del primer transistor funcional, a fin de determinar una frecuencia de medición del sensor basada en la frecuencia de oscilación del primer circuito ROSC; y un modo de referencia, en el que la entrada del primer circuito ROSC no recibe la corriente eléctrica de la salida del primer transistor funcional, a fin de determinar una frecuencia de referencia basada en la frecuencia de oscilación del primer circuito ROSC.
En las realizaciones, el método comprende además: el funcionamiento en el modo de referencia, para determinar una relación entre la caída de tensión y la frecuencia de oscilación del segundo circuito ROSC; el almacenamiento de una característica de la relación determinada entre la caída de tensión y la frecuencia de oscilación del segundo circuito ROSC; y el funcionamiento en el modo de medición, para determinar la frecuencia de medición del sensor del segundo circuito ROSC. La indicación de la temperatura en el segundo circuito ROSC puede basarse al menos en la frecuencia de medición del sensor del segundo circuito ROSC y en la característica almacenada de la relación determinada entre la caída de tensión y la frecuencia de oscilación del segundo circuito ROSC.
En las realizaciones, el método comprende además: alimentar el sensor de temperatura de semiconductor acoplando el sensor de temperatura de semiconductor a los puertos de alimentación eléctrica, que reciben energía de una fuente de alimentación externa.
En las realizaciones, el método comprende además: alimentar el primer circuito ROSC y el segundo circuito ROSC acoplando el primer circuito ROSC y el segundo circuito ROSC a líneas de alimentación de tensión de núcleo (V<cc>de núcleo), que suministran una tensión de núcleo en el CI.
Según otro aspecto de la divulgación, se proporciona un método para indicar un estado de temperatura en un circuito integrado semiconductor (CI), que comprende: alimentar un circuito oscilador de anillo (ROSC) en el CI desde puertos de alimentación eléctrica que reciben una fuente de alimentación externa, de tal manera que el circuito ROSC reciba alimentación de los puertos de alimentación eléctrica incluso cuando todos los demás circuitos del CI estén apagados, teniendo el circuito ROSC una frecuencia de oscilación durante el funcionamiento que varía con la temperatura; e indicar un estado de temperatura basado al menos en la frecuencia de oscilación del circuito ROSC.
En las realizaciones, el CI de semiconductor comprende un sensor de temperatura de semiconductor, situado en el CI próximo al circuito ROSC y proporcionando una señal de salida del sensor indicativa de la temperatura, y en donde la etapa de indicar el estado de temperatura comprende calibrar una relación entre la temperatura y la frecuencia de oscilación del circuito ROSC basada en una relación entre la temperatura y la señal de salida del sensor.
En las realizaciones, el circuito ROSC es un primer circuito ROSC; el CI de semiconductor comprende además un segundo circuito ROSC separado del primer ROSC en el CI y que tiene una frecuencia de oscilación durante el funcionamiento que varía con la temperatura; y la etapa de indicar el estado de temperatura puede comprender: calibrar una relación entre la temperatura y la frecuencia de oscilación del segundo primer circuito ROSC basada al menos en una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC.
En las realizaciones, el estado de temperatura identifica que una temperatura en el circuito ROSC es al menos una temperatura umbral. En las realizaciones, el método comprende además: apagar los circuitos en el CI en respuesta a la identificación de que la temperatura en el circuito ROSC es al menos la temperatura umbral.
Según otro aspecto de la divulgación, se proporciona un sistema que comprende: al menos un procesador de hardware; y un dispositivo de almacenamiento legible por ordenador no transitorio que tiene almacenadas instrucciones que, cuando son ejecutadas por dicho al menos un procesador de hardware, hacen que el al menos un procesador de hardware: (a) reciba valores medidos de un circuito oscilador de anillo (ROSC) en un modo de referencia y un modo de fuga, (b) calcule una función de respuesta de frecuencia a temperatura-tensión del circuito ROSC, y (c) transmita la función de respuesta a un dispositivo configurado para programar un controlador asociado con el circuito ROSC, de tal manera que la función de respuesta se almacena en el controlador y es utilizable por el controlador para compensar una lectura de temperatura del circuito ROSC.
Además de los aspectos y realizaciones de ejemplo descritos anteriormente, otros aspectos y realizaciones se harán evidentes al consultar las figuras y al estudiar la siguiente descripción detallada.
BREVE DESCRIPCIÓN DE LAS FIGURAS
Las realizaciones de ejemplo se ilustran en las figuras referenciadas. Las dimensiones de los componentes y las características que se muestran en las figuras se eligen generalmente por conveniencia y claridad de presentación y no se muestran necesariamente a escala. Las figuras se enumeran a continuación.
La Figura 1 muestra esquemáticamente un diagrama de bloques de alto nivel de un circuito sensor para la detección de fugas de potencia en CI;
la Figura 2 muestra una disposición existente para detectar la temperatura en un CI semiconductor, para apagar el CI si hay sobrecalentamiento;
la Figura 3 muestra un diagrama de bloques esquemático de una disposición de detección de temperatura según una primera configuración;
la Figura 4 muestra un diagrama de bloques esquemático de una disposición de detección de temperatura según una segunda configuración;
la Figura 5 muestra gráficos esquemáticos de tensión frente a temperatura para un sensor térmico digital y un sensor de temperatura basado en un circuito oscilador de anillo;
la Figura 6 muestra gráficos de ejemplo de período de reloj frente a temperatura para sensores de muestra basados en osciladores de anillo que funcionan en modo de referencia y en modo de medición (fuga);
la Figura 7 muestra gráficos de ejemplo de error de temperatura frente a temperatura real para una primera parte de un experimento de simulación;
la Figura 8 muestra gráficos de ejemplo de error de temperatura frente a temperatura real para una segunda parte del experimento de simulación;
la Figura 9 muestra un diagrama de flujo de un método de acuerdo con la divulgación; y
las Figuras 10A y 10B muestran, conjuntamente, otro diagrama de flujo de un método de acuerdo con la divulgación.
DESCRIPCIÓN DETALLADA
En el presente documento se divulga una configuración de detección térmica para un CI semiconductor y un método para hacer funcionar el mismo. Esta configuración incluye una red de sensores térmicos locales que, ventajosamente, aprovecha un sensor térmico alimentado por VccA para proporcionar mediciones indirectas de temperatura en uno o más lugares del CI que están distantes de ese sensor térmico alimentado por VccA. La medición en estas ubicaciones distantes se ve facilitada por circuitos de oscilador de anillo (ROSC) relativamente simples y pequeños que pueden alimentarse convenientemente mediante una red de alimentación de núcleo (V<c c>) del CI. Una o más unidades de control incrustadas en el CI pueden llevar a cabo varias etapas de calibración, cálculo y/o correlación para proporcionar esas mediciones indirectas de temperatura de manera precisa.
En los CI de semiconductor, es deseable detectar la temperatura local en diferentes lugares del CI. Normalmente se proporcionan uno o más sensores térmicos digitales (DTS), normalmente basados en diodos, en el CI. Los requisitos de energía de un DTS son altos, y para proporcionarle energía eléctrica, normalmente se conecta a la fuente de alimentación V<c c>A del paquete de CI. Como resultado, se necesitan trayectorias de conducción especializadas en el CI, desde los pines VccA hasta el DTS. La implementación de múltiples DTS de esta manera se vuelve, por lo tanto, compleja, costosa y consume mucha energía.
Las presentes realizaciones, que utilizan un único DTS para medir la temperatura en circuitos ROSC distantes, aprovechan la dependencia del retardo en un oscilador de anillo (ROSC) de la temperatura. El retardo del inversor normalmente aumenta con la temperatura, de modo que la frecuencia del ROSC se reduce al aumentar la temperatura. Sin embargo, un ROSC no puede utilizarse individualmente como sensor térmico fiable, porque su dependencia de la temperatura está lejos de ser constante o predecible.
Por lo tanto, las presentes realizaciones proporcionan una calibración ventajosa en tiempo real y continua de un sensor de temperatura basado en ROSC, lo que puede permitir que dichos sensores se utilicen de manera mucho más amplia. Según la presente divulgación, se proporciona un sensor de temperatura DTS convencional (o más generalmente, basado en VccA o basado en V<be>) en el CI, y normalmente alimentado por una tensión relativamente alta de aproximadamente 1,2-1,8 voltios. Este sensor de temperatura se caracteriza por su linealidad: la salida que produce es lineal con la temperatura (excluyendo algunas variaciones mínimas e insignificantes, por supuesto). Cerca de él, se proporciona un circuito ROSC. La frecuencia de oscilación del circuito ROSC varía de acuerdo con la temperatura, pero a menudo no de forma lineal, y a veces incluso de forma impredecible. La salida del DTS puede utilizarse para calibrar la salida del circuito ROSC durante el funcionamiento del CI. Se proporcionan uno o más circuitos ROSC adicionales en el CI en las ubicaciones respectivas donde se desea supervisar la temperatura. Estos circuitos ROSC adicionales están conectados al circuito ROSC anterior (el que está cerca del DTS) a través de líneas de datos. Dado que la temperatura puede deducirse con precisión a partir de la frecuencia de oscilación del circuito ROSC anterior, calibrado, la propagación de esa calibración a través de las líneas de datos a los circuitos ROSC más distantes les permite funcionar también como sensores térmicos relativamente precisos. Estos circuitos ROSC distantes se alimentan de forma ventajosa mediante la conexión a la red de alimentación de núcleo Vcc del CI. Este es el plan de energía que se ejecuta de forma estándar en prácticamente todas las ubicaciones del CI. Es sencillo acceder a él y no es necesario crear nuevos planes de energía para los circuitos ROSC.
En una opción, al menos uno de los circuitos ROSC está conectado a una fuente de alimentación externa (V<dd>sin compuerta, por ejemplo en el intervalo de aproximadamente 0,5-1,0 voltios), por ejemplo desde la placa de circuitos en la que está montado el CI (a través de los pines de alimentación del CI). Este circuito ROSC está constantemente alimentado, incluso si el CI (que puede ser, por ejemplo, una CPU) está apagado. Muchos dispositivos, especialmente los dispositivos portátiles tales como teléfonos inteligentes, relojes inteligentes y ordenadores portátiles, tienen un mecanismo de protección que los apaga si un sensor de temperatura dentro de su CPU detecta una temperatura alta. Después de que el mecanismo de protección haya apagado el dispositivo, cada vez que el usuario intente encenderlo, el mecanismo puede volver a apagarlo inmediatamente si la temperatura sigue siendo alta. En este caso, es posible que el usuario ni siquiera se dé cuenta de por qué el dispositivo se apaga repetidamente. Este aspecto de la divulgación puede ayudar a evitar esta situación de prueba y error. El mecanismo de protección puede basarse en las lecturas del circuito ROSC alimentado constantemente (y no de un sensor de temperatura que depende de un estado de alimentación del CI) para determinar si el dispositivo debe permanecer apagado o puede encenderse. El mecanismo de protección es ventajosamente distinto de la CPU. Este enfoque también puede reducir el coste y el tamaño del mecanismo de protección en el CI y reducir el margen en el peor de los casos que se basa en un recuento de temporizador predeterminado.
La solicitud de patente internacional (PCT) n.° PCT/IL2019/050039, presentada el 8 de enero de 2019, titulada "Integrated Circuit Workload Temperature and/or Sub-Threshold Leakage Sensor", describe un sensor basado en un circuito ROSC, que puede utilizarse para la medición de temperatura. Tal sensor (o una variante del mismo) se utiliza opcionalmente en la presente divulgación, como se discutirá ahora. En este diseño, se proporciona una corriente de fuga al circuito ROSC desde un transistor funcional (denominado "DUT" en la solicitud '039, y como "dispositivo de fuga" en este documento). Los CI digitales implementan un gran número de subcircuitos basados en CMOS, cada subcircuito asociado con una configuración apagada. Durante la configuración apagada, los dispositivos de subcircuito pueden seguir consumiendo energía, lo que a menudo se denomina consumo de energía estática. La energía estática (o "fuga") de todos los subcircuitos dentro de un CI se suma y puede denominarse "energía estática total del CI".
En los CI digitales, la fuga subumbral puede considerarse una fuga parásita en un estado que idealmente no tendría corriente. Por el contrario, en los circuitos analógicos de micropotencia, la inversión débil es una región de funcionamiento eficiente, y la fuga subumbral puede ser un modo de transistor útil en torno al cual se pueden diseñar funciones de circuito. La corriente de fuga puede utilizarse para medir la temperatura.
Ahora se hace referencia a la Figura 1, que muestra esquemáticamente un diagrama de bloques de alto nivel de un circuito sensor térmico 100 para la detección de fugas de potencia de CI y, por lo tanto, la medición de temperatura. El circuito sensor 100 incluye un circuito oscilador de anillo (ROSC) 101 que se basa ventajosamente en una configuración de inversor asimétrico. El circuito sensor ensaya uno o más dispositivos de fuga 102, cada uno de los cuales es un transistor PMOS o NMOS que tiene una cierta corriente de fuga. El circuito sensor incluye un circuito de generación de polarización subumbral 103, y conmutadores de activación de fuga 105 (activados por un cable de activación 104) que conectan eléctricamente la corriente de fuga de los dispositivos de fuga a los nodos internos del oscilador (en concreto, entre cada dos inversores adyacentes). La corriente de fuga se mide (en FSAL) en dos etapas:
1. El conmutador está abierto, la frecuencia del oscilador se mide en condiciones de ausencia de fugas y este valor se utiliza como medición de referencia.
2. El conmutador está cerrado y la corriente de fuga de los dispositivos de fuga se conecta eléctricamente a los nodos internos del oscilador. La frecuencia del oscilador puede cambiar en proporción directa a la amplitud de la corriente de fuga.
La proporción entre las dos mediciones puede calcularse y ser proporcional a la amplitud de la corriente de fuga subumbral de los dispositivos de fuga. La medición de referencia de la primera etapa puede utilizarse para ajustar las mediciones de frecuencia para otros efectos, tales como la variación de la longitud del canal, para detectar la fuga subumbral de los dispositivos de fuga. La frecuencia de referencia también puede ajustarse para otros efectos, tales como caídas de tensión locales (caída de IR) y/o similares, como se discutirá más adelante.
La señal de activación del ROSC, que puede ser generada por un controlador asociado con el circuito sensor 100 (discutido más adelante), puede activar y desactivar el circuito ROSC 101 a demanda. El circuito ROSC 101, por tanto, puede activarse cuando se requiere una medición térmica y desactivarse entre mediciones para ahorrar energía. La señal de activación del ROSC puede controlar directamente una compuerta NAND (o un dispositivo de funcionamiento similar) que forme parte del circuito ROSC 101 y funcione también como inversor que participa en la oscilación del circuito ROSC. La alimentación se proporcionará más allá de la compuerta NAND solo si se da una señal de activación adecuada.
En una realización alternativa, no se utiliza ninguna señal de activación ROSC, no existe una compuerta NAND en el circuito ROSC y, por lo tanto, el circuito ROSC permanece constantemente alimentado.
El circuito de generación de polarización subumbral (STBGC) 103 puede amplificar el efecto (es decir, mejorar la detección) de la corriente de fuga subumbral. El STBGC puede generar una tensión de fuente a compuerta dentro del intervalo de tensión subumbral, que es superior a cero y, por lo tanto, puede amplificar la corriente de fuga subumbral de los dispositivos de fuga.
Por otro lado, los inversores asimétricos reducen los efectos en el dispositivo complementario. Por ejemplo, cuando el dispositivo de fuga es un PMOS, entonces el número de dispositivos NMOS inversores osciladores en anillo puede sesgarse positivamente sobre el tamaño de los dispositivos PMOS, y viceversa.
En este ejemplo, el circuito ROSC 101 puede utilizarse, por tanto, como sensor de temperatura. Se añade una corriente para alimentar el circuito ROSC 101. El generador de corriente aumenta la sensibilidad del ROSC a los cambios de temperatura, de tal manera que incluso un pequeño cambio de temperatura dará lugar a un gran cambio (amplificado) en la frecuencia de oscilación. Además, el generador de corriente cambia la correlación entre la frecuencia del oscilador de anillo y la temperatura, de modo que un aumento de la temperatura provoca un aumento de la frecuencia del oscilador de anillo. El generador de corriente se alimenta de una corriente de salida de un transistor y, opcionalmente, de una corriente de fuga (en particular, la corriente que se fuga del drenaje del transistor a su fuente, cuando la compuerta se acciona a una tensión inferior a la tensión umbral del transistor; denominada fuga subumbral). El ROSC recibe esta corriente de fuga como entrada. Se entenderá que se pueden considerar como alternativa otros tipos de sensores de temperatura basados en circuitos ROSC. Los sensores de temperatura en un CI pueden utilizarse para diversas aplicaciones. Una de ellas es la detección de una condición de alta temperatura, por ejemplo, como se ha discutido anteriormente.
Ventajosamente, el tamaño del circuito ROSC 101 puede ser de solo aproximadamente 200 micrómetros cuadrados (p. ej., entre 100 y 300 micrómetros cuadrados), en comparación con el tamaño de un DST convencional que normalmente está en un intervalo de entre 10.000 y 50.000 micrómetros cuadrados. Esto permite utilizar múltiples circuitos ROSC de este tipo en un CI, sin sacrificar gran parte de la costosa área del CI. Los expertos en la técnica reconocerán que estas mediciones bidimensionales son del plano más grande de estos dispositivos, como es habitual en el campo de los semiconductores, en el que los CI se fabrican en capas.
Se hace referencia a la Figura 2, que muestra una disposición, según algunas de las técnicas anteriores, para detectar la temperatura en un CI de semiconductor y apagar el CI si se produce un sobrecalentamiento. Un microprocesador 150 comprende un transistor PNP de sustrato 160, con un sensor de temperatura 180 que es externo al microprocesador 150 y está conectado entre el emisor y la base del transistor PNP 160 del sustrato.
El sensor de temperatura 180 detecta los datos de temperatura de la unión PN del transistor PNP 160 del sustrato. Al ser externo, el microprocesador 150, aunque esté situado en la misma placa de circuitos, puede detectar la temperatura en todo momento, por ejemplo, durante y después de un evento térmico cuando el microprocesador 150 se apaga. Cuando la temperatura desciende por debajo de un límite térmico (umbral), el microprocesador 150 puede volver a encenderse. Un ejemplo de sensor de temperatura podría incluir un chip MAX6642 configurado adecuadamente, vendido por Maxim Integrated Products, Inc., de San José, California, EE. UU. Las desventajas de tal configuración son en términos de coste, complejidad y precisión. En algunos casos, el usuario puede intentar volver a alimentar el microprocesador 150 antes de que la temperatura se haya reducido lo suficiente, lo que provoca un apagado inmediato sin que el usuario tenga ninguna indicación del motivo. Un sensor de temperatura basado en un circuito ROSC, según las presentes realizaciones, puede resolver este problema en algunas configuraciones, como se verá más adelante.
Ahora se hace referencia a la Figura 3, que muestra un diagrama de bloques esquemático de una disposición de detección de temperatura en un CI 200, según una primera configuración. El CI puede acoplarse a una plataforma analítica externa 280 a través de un bus de E/S 275, y/o a una interfaz I2C o JTAG (Joint Test Action Group = Grupo de Acción de Prueba Conjunta) 290.
En el CI 200, se proporciona un sensor térmico digital (DTS) 210, que es un sensor de temperatura convencional (por ejemplo, basado en diodos), intrínsecamente preciso, que se alimenta mediante V<c c>A de líneas. Esto puede proporcionar una medición precisa de la temperatura sin necesidad de una calibración regular y/o repetida. Cerca del DTS 210 se proporciona un primer sensor de temperatura local (LTS) 220, también denominado en el presente documento LTS o sensor "proximal".
Los términos "próximo", "proximal", "adyacente", "cercano" y sus sinónimos se utilizan en el presente documento para referirse a una distancia de hasta unos pocos cientos de micrómetros entre los bordes más cercanos del DTS 210 y el primer LTS 220. Por ejemplo, la distancia puede ser de hasta 100, 200 o 300 micrómetros. A una distancia de 100 micrómetros, los inventores han modelado la precisión de la medición de la temperatura en los LTS adicionales (que se discutirán más adelante) en ±0,5 °C en algunos casos, lo que es bastante preciso. Cuanto mayor sea la distancia, menor será la precisión. Sin embargo, en algunos escenarios, incluso una precisión de 1-5 °C puede ser aceptable. También es posible que la distancia entre el DTS 210 y el primer LTS 220 sea mayor que unos pocos cientos de micrómetros, tal como entre 300-1.500 micrómetros, si se realiza una simulación térmica del CI para calcular una diferencia de temperatura estimada entre el lugar donde se encuentra el DTS y el lugar donde se encuentra el primer LTS, cuando el CI está en funcionamiento. Por consiguiente, un método de medición de temperatura según las presentes realizaciones también puede incluir una etapa de ajuste de la medición según los resultados de dicha simulación térmica realizada pre-silicio.
Los términos "distante", "distal", "espaciado" y sus sinónimos pueden referirse en el presente documento a una distancia superior a 500 micrómetros, 1.000 micrómetros, 2.000 micrómetros, 4.000 micrómetros, 6.000 micrómetros, 7.000 micrómetros, 8.000 micrómetros, 9.000 micrómetros o 10.000 micrómetros entre el LTS adyacente al DTS y cualquiera del uno o más LTS adicionales ("distales").
El primer LTS 220 tiene la ventaja de tener forma de circuito ROSC, por ejemplo del tipo descrito como circuito de detección térmica 100 de la Figura 1. El primer LTS 220 se alimenta mediante líneas de núcleo Vcc. Tanto el DTS 210 como el primer LTS 220 están acoplados por líneas de datos a un primer controlador 250, que lee desde el DTS 210 y el primer LTS 220 y opcionalmente proporciona las señales de "activación de fuga" y/o "activación de ROSC" discutidas con referencia a la Figura 1. El primer controlador 250 puede generar así datos de calibración para el primer LTS 220 basándose en la salida del DTS 210, con el fin de correlacionar y/o hacer coincidir la lectura de frecuencia del primer LTS 220 con los datos de temperatura medidos por el DTS 210. La solicitud de datos de calibración puede ser iniciada por el primer LTS 220, de modo que si el primer LTS 220 detecta un cambio en su frecuencia, solicitará los datos de temperatura correspondientes al DTS 210. Alternativamente, los datos de temperatura para la calibración del primer LTS 220 pueden ser iniciados por el DTS 210 basándose en un algoritmo predefinido que se ejecuta en el primer controlador (DTS) 250. Por ejemplo, el DTS 210 puede iniciar un ciclo de calibración del primer LTS 220 a intervalos regulares (tales como cada 1-100 ms) o, más generalmente, en respuesta a cualquier evento predefinido que ocurra en el CI 200.
Se proporciona un segundo LTS 230 (también denominado en el presente documento LTS o sensor "distal") en otra ubicación del CI 200. El segundo LTS 230 también tiene la ventaja de estar en forma de circuito ROSC, como se ha discutido anteriormente. El segundo LTS 230 está acoplado a un segundo controlador 260, que puede leer una medición del segundo LTS 230 y, opcionalmente, proporcionar las señales de "activación de fuga" y/o "activación de ROSC" al segundo LTS 230. El segundo controlador 260 está acoplado al primer controlador 250, del cual recibe los datos de calibración a través de una primera interfaz entre controladores 255 (realizada mediante una línea de datos adecuada). Utilizando estos datos de calibración, el segundo controlador 260 puede calibrar la salida del segundo LTS 230 según corresponda.
Opcionalmente, se proporciona un tercer LTS 240 (otro LTS o sensor "distal") en otra ubicación del CI 200. El tercer LTS 240 también es beneficioso en forma de circuito ROSC, como se ha discutido anteriormente. El tercer LTS 240 está acoplado a un tercer controlador 270, que puede leer una medición del tercer LTS 240 y, opcionalmente, proporcionar las señales de "activación de fuga" y/o "activación de ROSC" al tercer LTS 240. El tercer controlador 270 está acoplado al segundo controlador 260, del que recibe los datos de calibración a través de una segunda interfaz entre controladores 265. Utilizando estos datos de calibración, el tercer controlador 270 puede calibrar la salida del tercer LTS 240 según corresponda. En una configuración alternativa (no mostrada), los controladores de todos los sensores distales (los que no están adyacentes al DTS) pueden conectarse directamente al controlador del sensor proximal (el adyacente al DTS), que también los controla.
De forma similar al segundo y tercer LTS, se pueden distribuir LTS distales adicionales (y controladores asociados) por todo el CI, en ubicaciones donde se desee la medición de la temperatura. En un sentido general, se puede disponer cualquier número de LTS distales (uno o más) en el CI, distantes de los primeros LTS que están adyacentes al DTS.
El tercer LTS 240 y el tercer controlador 270, por ejemplo, también pueden interactuar con una interfaz I2C o JTAG 290 (o, en general, con cualquier interfaz física que permita que un dispositivo montado externamente al CI, tal como en la misma placa de circuitos, lea datos del tercer controlador). Esto permite que el tercer LTS 240 y el tercer controlador 270 reciban una tensión de alimentación (V<dd>sin compuerta, por ejemplo, entre 0,5 y 1,0 voltios aproximadamente) 271 directamente a través de la interfaz I2C/JTAG 290. Esto permite que el tercer LTS 240 y el tercer controlador 270 permanezcan operativos incluso cuando el resto del CI está apagado y/o sin alimentación. De este modo, el tercer controlador 270 puede leer el tercer LTS 240 y proporcionar una lectura digital 272 a la interfaz I2C/JTAG 290, independientemente de si la alimentación Vcc está activa en el CI. Para permitir esta operación, la interfaz I2C/JTAG 290 también puede proporcionar una señal de reloj controlada por cristal 273 al tercer controlador 270. Como resultado, el tercer LTS 240 puede actuar como un sensor de temperatura para el control de eventos de apagado térmico y repotenciación, en lugar de un sensor externo del tipo que se muestra en la Figura 2.
La plataforma analítica 280 puede ser un sistema informatizado que incluya uno o más procesadores de hardware (p. ej., CPU), una memoria de acceso aleatorio (RAM), uno o más dispositivos de almacenamiento legibles por ordenador no transitorios y un controlador de interfaz de red. El dispositivo o dispositivos de almacenamiento pueden haber almacenado instrucciones de programa y/o componentes configurados para el funcionamiento de los procesadores de hardware. Las instrucciones del programa pueden incluir uno o más módulos de software, tales como un módulo que calcula funciones de respuesta, como se discute más adelante. Los componentes de software pueden incluir un sistema operativo que tenga varios componentes de software y/o controladores para controlar y gestionar tareas generales del sistema (p. ej., gestión de memoria, control de dispositivos de almacenamiento, gestión de energía, comunicación de red, etc.), y facilitar la comunicación entre varios componentes de hardware y software.
La plataforma analítica 280 puede funcionar cargando instrucciones del módulo de cálculo de la función de respuesta en la RAM a medida que son ejecutadas por el/los procesador(es). Las instrucciones del módulo de cálculo de la función de respuesta pueden hacer que la plataforma analítica 280 reciba, tal como a través de su controlador de interfaz de red (p. ej., a través de Internet), datos recopilados de uno o más CI, los procese y genere una función de respuesta adecuada para cada LTS de cada CI.
La plataforma analítica 280, tal como se describe en el presente documento, es solo una realización de ejemplo de la presente invención y, en la práctica, puede implementarse solo en hardware, solo en software o en una combinación de ambos. La plataforma analítica 280 puede tener más o menos componentes y módulos de los que se muestran, puede combinar dos o más de los componentes o puede tener una configuración o disposición diferente de los componentes. La plataforma analítica 280 puede incluir cualquier componente adicional que le permita funcionar como un sistema informático operativo, tal como una placa base, buses de datos, fuente de alimentación, una pantalla, un dispositivo de entrada (p. ej., teclado, dispositivo de puntero pantalla táctil), etc. Además, los componentes de la plataforma analítica 280 pueden estar ubicados conjuntamente o distribuidos, o la plataforma analítica podría funcionar como una o más "instancias", "contenedores" y/o "máquinas virtuales" de computación en la nube, como se conoce en la técnica.
Haciendo referencia ahora a la Figura 4, se muestra un diagrama de bloques esquemático de una disposición de detección de temperatura en un CI 201, según configuraciones adicionales. Estas configuraciones tienen muchas similitudes con la que se muestra en la Figura 3 y, cuando se emplean los mismos componentes, se utilizan números de referencia idénticos. La funcionalidad de las configuraciones mostradas en la Figura 4 es similar a la de la configuración mostrada en la Figura 3, excepto en lo que respecta a los siguientes puntos (y, en cualquier realización determinada, puede existir uno o varios de estos puntos, hasta la totalidad de estos puntos). El CI 201 comprende: DTS 210; primer LTS 220; un controlador principal 251; un firmware 252 del CI; una unidad de fusibles 253; segundo LTS 230; un tercer LTS 231; un cuarto LTS 240; y un controlador 274. El firmware 252 del CI puede generar los datos de calibración para el primer LTS 220 basándose en la salida del DTS 210. En este caso, cada vez que el firmware 252 del CI lea el DTS 210, también leerá la primera lectura del LTS 220 a través del controlador principal 251 y correlacionará la lectura de frecuencia del primer LTS 220 con la temperatura instantánea medida por el DTS 210.
Se pueden proporcionar un segundo LTS 230 y un tercer LTS 240 (cada uno considerado un LTS o sensor "distal"), por ejemplo, en otras ubicaciones del CI 201. El segundo LTS 230 y el tercer LTS 231 también están, ventajosamente, en forma de circuito ROSC. El segundo LTS 230 y el tercer LTS 231 se muestran cada uno acoplados directamente al controlador principal 251, que puede leer una medición del segundo LTS 230 y/o del tercer LTS 231 en respuesta a una solicitud del firmware 252 del CI. Como se ha discutido anteriormente, el controlador principal 251 está acoplado al firmware 252 del CI. Utilizando estos datos de calibración, el firmware 252 del CI convertirá la lectura de frecuencia del segundo LTS 230 y/o del tercer LTS 231 en una medición instantánea de temperatura.
El firmware 252 del CI puede utilizar dicha medición de temperatura para fines tales como apagar el CI 201 para evitar el sobrecalentamiento, enviar la medición a un sistema que incorpore el CI 201 (p. ej. un dispositivo informático portátil tal como un teléfono inteligente, un reloj inteligente, un ordenador portátil, etc.), y más. Además, el firmware 252 del CI también puede controlar la transmisión de las mediciones de temperatura a la plataforma analítica 280 a través del bus de E/S 275 (en lugar del controlador principal 251), y puede recibir actualizaciones ocasionales del firmware que mejoren la forma en que se realiza la calibración (p. ej., si el fabricante del CI 201 descubre imprecisiones en el algoritmo de calibración solo después de que muchos de estos CI estén funcionando en el campo).
En las configuraciones o disposiciones descritas con referencia a la Figura 3 y/o la Figura 4, se proporciona esencialmente una red de sensores térmicos locales (LTS) que mide la temperatura en múltiples ubicaciones de la matriz. Cada sensor de temperatura local puede estar de acuerdo con el diseño mostrado en la Figura 1 o una alternativa adecuada. La precisión de la medición se basa en la calibración de los sensores de temperatura locales, basada en los datos DTS del chip. Esto puede lograrse utilizando algoritmos de aprendizaje automático, por ejemplo, ejecutándose en la plataforma 280, como se discutirá más adelante. La calibración puede realizarse mientras el CI está funcionando y, por lo tanto, no requiere tiempo de prueba.
Como se ha discutido anteriormente, el uso de una red LTS permite registrar datos de temperatura simultáneamente en múltiples puntos del CI. Un LTS se encuentra cerca del DTS, de tal manera que cualquier cambio térmico en el DTS se propaga rápidamente al LTS adyacente y es experimentado por este, y de tal manera que los datos de estos dos sensores pueden transmitirse convenientemente a un controlador común cercano y/o al firmware del CI. A continuación, se puede activar un flujo de aprendizaje para: calibrar el LTS que se encuentra cerca del DTS; y calibrar los otros LTS (distales) de la red. Esto se discutirá más adelante. No se requiere necesariamente un DTS especial, y cualquier DTS convencional proporcionado normalmente dentro de un diseño de CI puede ser suficiente. El controlador (por ejemplo, el primer controlador 250 en la Figura 3) está configurado para interactuar con ("entender") la salida del sensor DTS; adicional o alternativamente, la salida del sensor DTS 210 puede configurarse para interactuar con el firmware 252 del CI, que a su vez también interactúa con el controlador del primer LTS (local).
En un sentido generalizado, puede considerarse un circuito integrado semiconductor (CI) que comprende: un primer circuito ROSC y un segundo circuito ROSC en ubicaciones separadas en el CI, teniendo cada circuito ROSC una frecuencia de oscilación respectiva durante el funcionamiento que varía con la temperatura (el primer circuito ROSC normalmente está en una ubicación de interés); un sensor de temperatura de semiconductor (tal como un sensor térmico basado en diodos y/o un sensor térmico digital), situado en el CI próximo al primer circuito ROSC (de modo que la temperatura en el segundo ROSC y en el sensor de temperatura de semiconductor sea muy similar) y que proporcione una señal de salida del sensor indicativa de la temperatura; y un procesador (en el CI o externo al CI), configurado para indicar una temperatura en el segundo circuito ROSC basándose en la señal de salida del sensor, la frecuencia de oscilación del segundo circuito ROSC y la frecuencia de oscilación del primer circuito ROSC. El procesador puede ser uno o varios de los controladores antes mencionados, cada uno de ellos especializado y asociado con uno o varios de los circuitos ROSC; o, alternativamente, el propio procesador del CI, utilizado principalmente para otros fines, que funciona bajo las instrucciones del firmware del CI. Otra posibilidad es que el procesador sea una cooperación de uno o varios controladores especializados y el propio procesador del CI (este último actuando bajo las instrucciones del firmware).
También puede considerarse un método para fabricar y/o hacer funcionar un CI de este tipo o un sistema basado en un CI de este tipo, de acuerdo con cualquier aspecto divulgado en el presente documento. Por ejemplo, esto puede incluir un método para indicar una temperatura en un circuito integrado (CI) de semiconductor, en donde el CI de semiconductor comprende: un primer circuito oscilador de anillo (ROSC) y un segundo circuito ROSC en ubicaciones separadas en el CI, teniendo cada circuito ROSC una frecuencia de oscilación respectiva durante el funcionamiento que varía con la temperatura; y un sensor de temperatura de semiconductor, ubicado en el CI próximo al primer circuito ROSC y que proporciona una señal de salida del sensor indicativa de la temperatura. El método comprende: indicar una temperatura en el segundo circuito ROSC basándose en: la señal de salida del sensor, la frecuencia de oscilación del segundo circuito ROSC y la frecuencia de oscilación del primer circuito ROSC. Cualquier característica discutida en el presente documento con referencia a un aparato o sistema puede ser implementada con respecto a un método, proceso o uso (y viceversa).
Opcionalmente, cada circuito ROSC comprende un número impar de inversores asimétricos. La precisión de la temperatura indicada por el procesador puede no ser superior a una diana de precisión predefinida, por ejemplo ±5 °C, ±4 °C, ±3 °C, ±2 °C, ±1 °C, ±0,5 °C, ±0,4 °C, ±0,3 °C, ±0,2 °C o ±0,1 °C de la temperatura real. En las realizaciones, el procesador puede comprender firmware en el CI de semiconductor y/o memoria fusionada. Adicional o alternativamente, el procesador puede comprender uno o más circuitos lógicos en el CI, por ejemplo en forma de controlador. Se pueden proporcionar múltiples controladores, por ejemplo en forma de un controlador por circuito ROSC, aunque se puede utilizar un controlador para múltiples circuitos ROSC en algunas realizaciones.
En las realizaciones, la indicación de la temperatura en el segundo circuito ROSC puede incluir la calibración de una relación (por ejemplo, una función de respuesta) entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC basada en una relación (por ejemplo, una función de respuesta) entre la temperatura y la frecuencia de oscilación del primer circuito ROSC. En otras palabras, se conoce la relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC (cercano al sensor de temperatura del semiconductor), y esta relación puede utilizarse para calibrar la relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC (que se utiliza para la medición de la temperatura en una ubicación remota en el CI). Debe tenerse en cuenta que la relación conocida puede almacenarse y utilizarse para una o varias indicaciones de temperatura posteriores utilizando el segundo circuito ROSC, o bien la relación puede volver a determinarse para cada indicación (o cada grupo de múltiples indicaciones, tales como entre 100 y 10.000 indicaciones por grupo) utilizando el segundo circuito ROSC.
En las realizaciones, la indicación de la temperatura en el segundo circuito ROSC puede incluir calibrar una relación (por ejemplo, una función de respuesta) entre la temperatura y la frecuencia de oscilación del primer circuito ROSC basada en una relación (por ejemplo, una función de respuesta) entre la temperatura y la señal de salida del sensor. En otras palabras, la relación entre la temperatura y la señal de salida del sensor (tal como una salida del DTS) es conocida y esta relación puede utilizarse para calibrar la relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC (próximo al sensor de temperatura de semiconductor). Como se ha señalado anteriormente, la relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC puede utilizarse para calibrar la relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC (que se utiliza para la medición de la temperatura). La relación conocida para el sensor de temperatura de semiconductor puede almacenarse y utilizarse para una o varias indicaciones de temperatura utilizando el segundo circuito ROSC, o la relación puede determinarse para cada indicación utilizando el segundo circuito ROSC.
Ventajosamente, la frecuencia de oscilación del (primer y/o segundo) circuito ROSC aumenta al aumentar la temperatura. Por ejemplo, el primer circuito ROSC puede tener una entrada acoplada para recibir una corriente eléctrica de una salida (por ejemplo, el drenaje) de un primer transistor funcional (especialmente uno al que esté próximo). Adicional o alternativamente, el segundo circuito ROSC puede tener una entrada acoplada para recibir una corriente eléctrica de una salida de un segundo transistor funcional (especialmente uno al que esté próximo y/o que sea diferente del primer transistor funcional). Opcionalmente, la entrada al primer circuito ROSC es proporcionada por una salida de una primera fuente de corriente y/o la entrada al segundo circuito ROSC es proporcionada por una salida de una segunda fuente de corriente. La primera fuente de corriente puede comprender un primer generador de polarización subumbral acoplado a un terminal de control del primer transistor funcional y configurado para polarizar el primer transistor funcional en un estado subumbral, proporcionando una salida del primer transistor funcional la salida de la primera fuente de corriente. La segunda fuente de corriente puede comprender un segundo generador de polarización subumbral acoplado a un terminal de control del segundo transistor funcional y configurado para polarizar el segundo transistor funcional en un estado subumbral, proporcionando una salida del segundo transistor funcional la salida de la segunda fuente de corriente.
En las realizaciones, la entrada de cada ROSC puede acoplarse de forma conmutable (utilizando una señal de "activación de fuga" de un controlador asociado con ese circuito ROSC) para recibir la corriente eléctrica de la salida del transistor funcional respectivo, de tal manera que se pueda determinar: una frecuencia de referencia basada en la frecuencia de oscilación del ROSC cuando la entrada del ROSC no recibe la corriente eléctrica de la salida del transistor funcional respectivo (un modo de referencia); y una frecuencia de medición del sensor basada en la frecuencia de oscilación del ROSC cuando la entrada del ROSC recibe la corriente eléctrica de la salida del transistor funcional respectivo (un modo de medición). Esto puede aplicarse al primer y/o segundo circuito ROSC.
En las realizaciones, se pueden proporcionar puertos de alimentación eléctrica. Estos pueden configurarse para recibir una fuente de alimentación externa (por ejemplo, V<c c>A de puertos). El sensor de temperatura de semiconductor está acoplado (o conectado, incluso conectado directamente) de forma ventajosa a estos puertos de alimentación eléctrica para alimentar el sensor de temperatura de semiconductor. Normalmente, el primer y/o segundo circuito ROSC no están conectados directamente a estos puertos.
En las realizaciones, se proporcionan líneas de alimentación de tensión de núcleo (V<cc>de núcleo), en particular para suministrar una tensión de núcleo en el CI. Ventajosamente, el primer circuito ROSC y/o el segundo circuito ROSC están acoplados a las líneas de alimentación de tensión de núcleo.
En otro sentido generalizado, que puede combinarse con cualquier aspecto o característica de otras descripciones en el presente documento, puede considerarse un circuito integrado (CI) de semiconductor que comprende: puertos de alimentación eléctrica (sin compuerta), configurados para recibir una fuente de alimentación externa; un circuito oscilador de anillo (ROSC) en el CI, que tiene una frecuencia de oscilación durante el funcionamiento que varía con la temperatura, estando el circuito ROSC configurado para recibir energía de los puertos de alimentación eléctrica incluso cuando todos los demás circuitos del CI están apagados; y un procesador en el CI, también configurado para recibir energía de los puertos de alimentación eléctrica y configurado además para indicar un estado de temperatura basado en la frecuencia de oscilación del circuito ROSC. Por lo tanto, el circuito ROSC alimentado continuamente y el procesador asociado se proporcionan en el CI, que puede proporcionar una indicación de temperatura, incluso si otras partes funcionales del CI (tales como una CPU o una parte similar) no están alimentadas o están apagadas. El estado de temperatura puede identificar que una temperatura en el circuito ROSC es al menos una temperatura umbral.
Como se ha señalado anteriormente, también puede considerarse un método de fabricación y/o funcionamiento de dicho CI (o de un sistema basado en dicho CI), de acuerdo con cualquier aspecto divulgado en el presente documento. Por ejemplo, esto puede incluir un método para indicar un estado de temperatura en un CI de semiconductor, que comprende: alimentar un circuito ROSC en el CI desde puertos de alimentación eléctrica que están configurados para recibir una fuente de alimentación externa, de modo que el circuito ROSC reciba alimentación de los puertos de alimentación eléctrica incluso cuando todos los demás circuitos del CI estén apagados, teniendo el circuito ROSC una frecuencia de oscilación durante el funcionamiento que varía con la temperatura; e indicar un estado de temperatura basado en la frecuencia de oscilación del circuito ROSC. Cualquiera de las características discutidas en el presente documento con referencia a un aparato o sistema puede ser implementada con respecto a un método, proceso o uso (o viceversa).
Como se ha señalado anteriormente, este CI y/o método puede combinarse con otros aspectos discutidos en el presente documento. Por ejemplo, en algunas realizaciones, puede proporcionarse además: un sensor de temperatura de semiconductor, situado en el CI próximo al circuito ROSC y que proporciona una señal de salida del sensor indicativa de la temperatura. Entonces, la indicación del estado de temperatura puede incluir calibrar una relación entre la temperatura y la frecuencia de oscilación del circuito ROSC basada en una relación (almacenada) entre la temperatura y la señal de salida del sensor.
En las realizaciones, el circuito ROSC se denomina "primer" circuito ROSC. Entonces, puede proporcionarse además un segundo circuito ROSC separado del primer ROSC en el CI y que tiene una frecuencia de oscilación durante el funcionamiento que varía con la temperatura. La indicación del estado de temperatura puede incluir la indicación del estado de temperatura en el segundo circuito ROSC: calibrando una relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC basada en una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC y/o calibrando una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC basada en una relación (almacenada) entre la temperatura y la señal de salida del sensor.
En las realizaciones, los circuitos del CI pueden apagarse (por ejemplo, mediante un controlador en el CI o externo al CI), por ejemplo, en respuesta a la identificación de que la temperatura en el circuito ROSC es al menos la temperatura umbral.
A continuación se discutirán implementaciones específicas, pero más adelante se hará referencia al sentido generalizado.
Se hace referencia a la Figura 5, que muestra, de forma esquemática, gráficos de ejemplo de tensión frente a temperatura real para un sensor térmico digital 210 y para un sensor de temperatura basado en un circuito ROSC 220. Como puede verse en el gráfico de tensión frente a temperatura para el sensor térmico digital 210, se proporciona una relación lineal, lo que hace que estos sensores térmicos basados en diodos sean relativamente sencillos para proporcionar una lectura precisa de la temperatura. Sin embargo, el gráfico de ejemplo de tensión frente a temperatura para el sensor de temperatura basado en el circuito ROSC 220 no es lineal y es monótono. Sin embargo, la calibración 225 entre los dos puede utilizarse a lo largo del tiempo para permitir una lectura del sensor de temperatura basado en el circuito ROSC que sea suficientemente precisa para fines de análisis, control y/o gestión térmica.
Se hace referencia a la Figura 6, que muestra gráficos de ejemplo del periodo de reloj medido en silicio (tiempo de ciclo medio en nanosegundos) en función de la temperatura para dos sensores basados en osciladores en anillo de ejemplo, cada uno de los cuales funciona en un modo de referencia y en un modo de medición. En el modo de referencia, como se ha discutido con referencia a la Figura 1 anterior, la frecuencia del oscilador del circuito ROSC se mide en una condición sin fugas. El período de reloj no muestra una dependencia significativa de la temperatura en este modo, siendo el gradiente de la frecuencia de reloj (el inverso del período de reloj) a la temperatura aproximadamente de -0,06 MHz/°C. Sin embargo, en el modo de medición (donde se proporciona corriente de fuga), existe una clara dependencia de la temperatura, siendo el gradiente de la frecuencia de reloj a la temperatura aproximadamente de -0,37 MHz/°C.
A continuación se analizará el flujo de aprendizaje para la calibración de los sensores de temperatura basados en el circuito ROSC. El primer procedimiento puede tener lugar en el comprobador, al que se conecta el CI después de la fabricación y antes de su distribución a los consumidores. En primer lugar, se calibra el DTS y, al mismo tiempo, se mide la frecuencia de reloj en el modo de fuga (medición) y la frecuencia de reloj en el modo de referencia para todos los LTS de la red a múltiples temperaturas (para simplificar la discusión, dos temperaturas (T1, T2)) y múltiples valores de tensión de alimentación (para simplificar la discusión, dos valores de tensión de alimentación (V1, V2)). Esto da un total de 8 valores medidos. Se toman cuatro mediciones en el modo de referencia (REF) en las siguientes condiciones: {V1, T1}, {V2, T1}, {V1, T2} y {V2, T2}, y se toman cuatro mediciones en el modo de fuga en las siguientes condiciones: {V1, T1}, {V2, T1}, {V1, T2} y {V2, T2}. {T1, T2} son las dos temperaturas que también se utilizan para calibrar el DTS. Los 8 valores medidos reflejan el comportamiento de cada LTS con respecto a la tensión y la temperatura en sus dos modos de funcionamiento (modo REF y modo de fuga). Estos datos pueden cargarse en la plataforma analítica 280 para generar una función de respuesta de frecuencia a tensión-temperatura:frecref = fref(V, T) y frecikg = ffuga(V, T)por cada LTS. Cada una de las funciones (por ejemplo, un polinomio) está representada por sus autocoeficientes. Los coeficientes de las funciones de respuesta se calculan por LTS, se transmiten desde la plataforma analítica 280 de vuelta al comprobador (o a cualquier otro dispositivo configurado para programar el controlador del LTS) y se almacenan en el chip del controlador local. El controlador local utiliza la función de respuesta para compensar una lectura de temperatura de cada LTS con referencia a su punto global de fabricación (proceso) y con referencia a su tensión local en el momento de la medición.
La segunda etapa tiene lugar en el sistema en el que está instalado el CI, durante el funcionamiento. Basándose en los datos del LTS durante el funcionamiento, el sistema aprende la respuesta de temperatura del LTS que se encuentra cerca del DTS (es decir, el primer LTS 220 en las Figuras 3 y 4) en comparación con la respuesta del DTS (es decir, el DTS 210 en las Figuras 3 y 4). A continuación, se ajusta la función de respuesta por LTS calculada previamente si es necesario y se actualizan todos los controladores de LTS con los datos de calibración para refinar la respuesta de la frecuencia de reloj del ROSC frente a la temperatura. Esto puede crear una tabla de consulta (LUT) para cada LTS, que establece la correspondencia entre las frecuencias de oscilación y las temperaturas.
En otra realización, la segunda etapa descrita anteriormente puede tener lugar en el comprobador. Basándose en los datos del LTS durante el funcionamiento, el sistema aprende la respuesta de temperatura del LTS que se encuentra cerca del DTS (es decir, el primer LTS 220 en las Figuras 3 y 4) en comparación con la respuesta del DTS (es decir, el DTS 210 en las Figuras 3 y 4). A continuación, se ajusta el factor de calibración por LTS si es necesario y se actualizan todos los controladores LTS con los datos de calibración para refinar la respuesta de la frecuencia de reloj del ROSC frente a la temperatura. Esto puede crear una tabla de consulta (LUT) para cada LTS.
El proceso/flujo de aprendizaje descrito con referencia a los párrafos anteriores puede realizarse en una gran muestra de CIs.
En la práctica, para la configuración de la Figura 3, cuando cambia la frecuencia del primer LTS 220, el primer controlador 250 lee los datos de temperatura del DTS 210 y asigna la temperatura leída a la lectura de frecuencia del primer LTS 220. El par de datos de frecuencia de reloj y temperatura para el primer LTS 220 se almacena en un registro local en el primer controlador 250. A continuación, se ajusta el factor de compensación (como se explicará más adelante) y cada uno de los demás LTS se actualiza de acuerdo con los datos del DTS 210 y el factor de compensación determinado. Como alternativa a esta práctica, cuando el primer controlador 250 detecta una disparidad entre una lectura de temperatura del DTS 210 y una lectura de temperatura (basada en la función de respuesta calculada previamente) del primer LTS 220, puede simplemente configurar el factor de compensación como un desfase numérico de temperatura que luego se comunica a todos los demás LTS. Por ejemplo, si el DTS 210 indica una temperatura de 70 °C y el primer LTS 220 indica 69,7 °C, se puede comunicar un desfase de 0,3 °C a los demás LTS.
Haciendo referencia a la Figura 4, los coeficientes de la función de respuesta se calculan para cada LTS y se almacenan o fusionan (p. ej., durante el ensayo) en la unidad de fusibles 253 del chip. La función de respuesta es utilizada por el firmware 252 (que tiene acceso a los datos fusionados en la unidad de fusibles 253) para compensar una lectura de temperatura de cada LTS con referencia a su punto global de fabricación (proceso) y con referencia a su tensión local en el momento de la medición.
La segunda etapa tiene lugar en el sistema durante el funcionamiento. Basándose en los datos del LTS durante el funcionamiento, el sistema aprende la respuesta de temperatura del LTS que se encuentra cerca del DTS (es decir, el primer LTS 220 en la Figura 4) en comparación con la respuesta del DTS (es decir, el DTS 210 en la Figura 4). La función de respuesta por LTS se ajusta entonces si es necesario y todas las funciones de respuesta de LTS se actualizan con los datos de calibración para refinar la respuesta de la frecuencia de reloj del ROSC frente a la temperatura.
La función de respuesta puede actualizarse programando el firmware 252 durante la vida útil del chip, tal como en un proceso de actualización de firmware.
En la práctica, cuando el firmware 252 realiza una lectura del DTS 210, leerá los datos de temperatura del DTS y también las lecturas del LTS (tanto en modo de referencia como en modo de fuga). El par de datos de frecuencia de reloj y temperatura para el LTS se almacena en un registro local del firmware 252. A continuación, se ajusta el factor de compensación (como se explicará más adelante), o simplemente se configura como un valor de desfase numérico, y todos los LTS se actualizan de acuerdo con los datos del DTS 210 y el factor de compensación determinado.
La función de respuesta puede generarse en la plataforma analítica 280, que es un dispositivo computarizado configurado para recibir datos de muchos CI, ya sea a través de comprobadores o sistemas que incorporan estos CI, y ejecutar operaciones matemáticas, estadísticas y/o de aprendizaje automático sobre los datos. La función de respuesta compensa: el punto del proceso de fabricación por LTS 230 (un primer factor de compensación); y la caída de tensión local (IR) (un segundo factor de compensación). El segundo factor de compensación se analizará con más detalle a continuación. Mediante una configuración y compensación adecuadas, se puede alcanzar una diana de precisión no superior a 5 °C, como se ha mencionado anteriormente.
Aunque el flujo de aprendizaje se ha discutido anteriormente con referencia a dos temperaturas y dos tensiones, ciertamente puede llevarse a cabo sobre la base de un mayor número de temperaturas y/o tensiones. Además, los valores discretos de temperatura y tensión pueden seleccionarse para que sean suficientemente diferentes entre sí, a fin de que la calibración sea efectiva. Por ejemplo, si se utilizan dos valores de temperatura discretos, se pueden seleccionar para que estén en o cerca de los bordes de un rango de temperatura típico del CI (que comúnmente está en el rango de decenas de grados centígrados), y si se utilizan tres o más valores de temperatura discretos, se pueden distribuir de manera uniforme en ese rango. El mismo razonamiento se aplica a la selección de tensiones.
Dado que la tensión local puede ser diferente entre el comprobador y el sistema, se puede utilizar un segundo factor de compensación para mitigar el efecto de la caída de tensión (IR) durante el funcionamiento del CI. El siguiente procedimiento permite determinar el segundo factor de compensación. La primera parte del procedimiento se realiza con el CI en el comprobador. El CI funciona en un modo "silencioso", en el que los circuitos funcionales del CI no consumen mucha energía. La función de respuesta y los coeficientes de respuesta para cada LTS se calculan como se ha descrito anteriormente. Durante el funcionamiento del CI, se mide la frecuencia del LTS cuando funciona en cada uno de sus dos modos (referencia y fuga). Los datos de temperatura se generan a partir de la lectura del LTS cuando funciona en modo de fuga y luego se compensan en función de la frecuencia medida en modo de referencia y de la función/coeficientes de respuesta:
T(ffiiga(ct i . r?v, rr .;, ,a n. lecturcim0^ 0¿) ■ I'' (Icctui dm0í¡0RJ J,
donde V =freé,b1,bz,b3,„bmJecturamodoR).Estos son ejemplos de una función de cálculo de temperatura basada en las dos lecturas, pero también se pueden implementar otras funciones o polinomios.
En una realización diferente, las diferencias de tensión entre el comprobador y el sistema se compensan de la siguiente manera: En el comprobador, todos los LTS del CI se colocan en modo de referencia y se mide la frecuencia de reloj de cada LTS, suponiendo que no hay caída de tensión de IR local. La función de respuesta y los coeficientes de respuesta de cada LTS se calculan como se ha descrito anteriormente. Como se ha señalado anteriormente, cada LTS es relativamente insensible a la temperatura cuando funciona en el modo de referencia. A continuación, con el CI todavía en el comprobador, el CI se pone en funcionamiento en un modo de "máxima potencia", en el que los circuitos funcionales del CI consumen una cantidad significativa de energía. De nuevo, todos los LTS del CI se colocan en modo de referencia y se mide la frecuencia de reloj de cada LTS. Ahora, se asume la caída de IR local. A continuación, en la plataforma analítica 280, los datos determinados por el comprobador y el sistema se utilizan para calcular el segundo factor de calibración para la función de respuesta de cada LTS. Los coeficientes de la función de respuesta calibrados para cada LTS se proporcionan y almacenan en el controlador asociado con el LTS respectivo en el CI. En el caso de la Figura 4, los coeficientes de la función de respuesta calibrada para cada LTS se proporcionan y fusionan en la unidad de fusibles 253 del chip o, si no se incluye dicha unidad de fusibles en el CI, en un registro adecuado en el firmware 252.
En una realización diferente, las diferencias de tensión entre el comprobador y el sistema pueden compensarse de la siguiente manera: Se construye una función de estimación en la fase pre-silicio, basada en datos simulados del modo de fuga y del modo de referencia frente a la temperatura, la tensión y el punto de referencia del proceso global. En la fase post-silicio, los parámetros se miden como se ha descrito anteriormente para cada LTS y se cargan en la plataforma analítica 280. Estos parámetros se utilizan para calibrar la función de estimación. La función de respuesta corregida se carga en el controlador (por ejemplo, el primer controlador 250 de la Figura 3) o en el firmware 252 del CI (como en la Figura 4) y se utiliza para generar datos precisos de temperatura basados en las lecturas medidas del modo de fuga y del modo de referencia. El proceso/flujo de aprendizaje descrito con referencia a los párrafos anteriores puede realizarse en una gran muestra de circuitos integrados.
Se hace referencia a la Figura 7, que muestra un gráfico de ejemplo del error de temperatura frente a la temperatura real para una primera parte de un experimento de simulación, y a la Figura 8, que muestra un gráfico de ejemplo del error de temperatura frente a la temperatura real para una segunda parte del experimento de simulación. El experimento de simulación se llevó a cabo basándose en la técnica descrita anteriormente con respecto al flujo de aprendizaje para la calibración de los sensores de temperatura basados en circuitos ROSC. En el experimento, se simularon 500 LTS de 500 puntos de proceso locales diferentes alrededor de una esquina de proceso típica a dos temperaturas (T1 = 5 °C, T2 = 105 °C) y a dos valores de tensión de alimentación (V1 = 825 mV, V2 = 850 mV). Esto da un total de 8 puntos de simulación. Cuatro puntos de simulación corresponden al modo de referencia (REF) en las siguientes condiciones: {V1,T1}, {V2,T1}, {V1,T2} y {V2,T2}, y cuatro puntos de simulación corresponden al modo de fuga en las siguientes condiciones: {V1,<t>1}, {V2, T1}, {V1, T2} y {V2, T2}.
Para cada LTS, se calculó una función de respuesta de la siguiente forma:
H ( ffuga( ^ 1 ■ n^ ^ '' n,¡,lecturamodoL). ' /lecturcimod0Rj ) .
donde V =fre(b1,b2,b3,,,bmJecturamodoR).
En la segunda fase del experimento, cada uno de los 500 LTS se simuló en sus dos modos a temperaturas y tensiones aleatorias. Las tensiones y temperaturas se distribuyeron uniformemente en el intervalo: V~U{0,825V 0,85 V},T~U{40C,80C}, dondeU{.}indica una distribución uniforme. A continuación, se calculó la temperatura de cada uno de los LTS, basándose en sus lecturas simuladas y en la función de respuesta, como se ha discutido anteriormente. Los resultados de la Figura 7 muestran el error de temperatura (en el eje Y) frente a la temperatura real de la simulación (en el eje X) para cada uno de los 500 LTS. En la tercera fase del experimento, los datos de temperatura de cada uno de los 500 LTS se compensaron adicionalmente basándose en los datos de un DTS 220 de referencia. Los resultados de la Figura 8 muestran el error de temperatura (en el eje Y) frente a la temperatura real (en el eje X) para cada uno de los 500 LTS. En la Figura 8 se puede ver un intervalo de error reducido en comparación con la Figura 7.
Se hace referencia de nuevo al sentido generalizado de la divulgación, discutido anteriormente. En las realizaciones, calibrar la relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC basada en una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC puede comprender ajustar una tabla de búsqueda asociada con el segundo circuito ROSC y/o aplicar un factor de compensación a un valor derivado de una medición de la frecuencia de oscilación del segundo circuito ROSC. En las realizaciones, calibrar una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC basada en una relación entre la temperatura y la señal de salida del sensor puede comprender ajustar una tabla de búsqueda asociada con el primer circuito ROSC y/o aplicar un factor de compensación a un valor derivado de una medición de la frecuencia de oscilación del primer circuito ROSC.
En las realizaciones, indicar la temperatura en el segundo circuito ROSC puede incluir calibrar una relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC basada en una relación (almacenada) (por ejemplo, una función de respuesta) entre la caída de tensión y la frecuencia de oscilación del segundo circuito ROSC. Por ejemplo (en un comprobador), el segundo circuito ROSC puede funcionar en el modo de referencia para determinar una relación (por ejemplo, una función de respuesta) entre la caída de tensión y la frecuencia de oscilación del segundo circuito ROSC. Se puede almacenar una característica de la relación determinada (por ejemplo, una función de respuesta) entre la caída de tensión y la frecuencia de oscilación del segundo circuito ROSC. El segundo circuito ROSC puede entonces funcionar en el modo de medición, para determinar la frecuencia de medición del sensor del primer circuito ROSC. La indicación de la temperatura en el segundo circuito ROSC puede basarse en la frecuencia de medición del sensor del segundo circuito ROSC y en la característica almacenada de la relación determinada entre la caída de tensión y la frecuencia de oscilación del segundo circuito ROSC.
Se hace referencia a la Figura 9, que muestra un diagrama de flujo de un método 300 para hacer funcionar una red de sensores térmicos locales en un CI, de acuerdo con la divulgación. En una primera etapa de calibración 302, se calibra una relación entre la temperatura y la frecuencia de oscilación de un LTS basado en un circuito ROSC que se encuentra en el CI próximo a un DTS (de tal manera que tiene efectivamente la misma temperatura que el DTS, por ejemplo, no más de 0,05, 0,1,0,2, 0,3, 0,4 o 0,5 °C diferente del DTS) basada en una relación entre la temperatura y la señal de salida del DTS.
En una segunda etapa de calibración 304, se calibra una relación entre la temperatura y la frecuencia de oscilación de un LTS de interés (distal, basado en un circuito ROSC) basada en una relación entre la temperatura y la frecuencia de oscilación del LTS situado cerca del DTS. Opcionalmente, la segunda etapa de calibración 302 incluye calibrar una relación entre la temperatura y la frecuencia de oscilación del LTS de interés basada en una relación entre la caída de tensión y la frecuencia de oscilación del LTS de interés. La segunda etapa de calibración 304 puede realizarse para cada uno de los múltiples LTS de interés en el CI.
En una etapa final 304, se lee una temperatura en el LTS de interés y se indica basándose en: la frecuencia de oscilación del LTS de interés, la señal de salida del DTS y la frecuencia de oscilación del LTS próximo al DTS, debido a las etapas de calibración 302 y 304. Cabe señalar que la primera etapa de calibración 302 y/o la segunda etapa de calibración 304 no tienen por qué tener lugar antes de cada etapa final 306, sino que la etapa final 306 puede repetirse sin necesidad de repetir la primera etapa de calibración 302 y/o la segunda etapa de calibración 304.
Se hace referencia a las Figuras 10A y 10B, que muestran un diagrama de flujo (que se extiende a lo largo de ambas figuras) para el funcionamiento de una red local de sensores térmicos en un C i, de acuerdo con una implementación de ejemplo de la invención. La entrada al diagrama de flujo se basa en datos de calibración. En el ejemplo, la calibración se realiza a dos temperaturas (T1, T2) y dos tensiones (V1, V2), pero para preservar los recursos de la unidad de fusibles (p. ej., fusible electrónico), se siguen las siguientes etapas opcionales para minimizar los datos almacenados:
1. La calibración no se realiza de forma simétrica para todos los LTS del CI. En concreto, para el primer LTS (proximal) (220 en las Figuras 3 y 4), la calibración se realiza en los 8 puntos {V, T}. Para los otros LTS (distales) (230 y 231 en las Figuras 3 y 4), la calibración se realiza en un conjunto {V,T} más pequeño, por ejemplo {V1,T2} y {V2,T2}.
2. Los datos de calibración del primer LTS (proximal) y de cada uno de los LTS distales se representan de dos formas diferentes: para el primer LTS, los datos de calibración almacenados se almacenan en su totalidad, como datos binarios (múltiples bits); para cada uno de los demás LTS, los datos almacenados indican únicamente la delta (diferencia) entre los datos de calibración de ese LTS y los datos de calibración del primer LTS en los mismos puntos {V,T}. A continuación, esta delta se traduce a binario y se almacena en el(los) fusible(s) electrónico(s) de cada uno de los demás LTS. Opcionalmente, se calcula el promedio de la delta entre diferentes tensiones a la misma temperatura, y solo se almacena el promedio, para ahorrar más espacio de almacenamiento.
El proceso anterior define dos tipos de datos de entrada de flujo:
1. Los datos de calibración del primer LTS (proximal).
2. Para cada uno de los otros LTS, la delta (o delta promedio, como se discutió anteriormente) entre sus datos de calibración y los datos de calibración del primer LTS (proximal).
La Tabla 1, asociada con la Figura 10, enumera 6 elementos de datos para cada tipo de LTS (proximal o distal), que se basan en los datos de calibración; para extraer la temperatura del primer LTS, se utilizarán los 6 elementos de datos de la segunda columna, y para extraer la temperatura de cada uno de los otros LTS, se utilizarán los 6 elementos de datos de la tercera columna. En la tabla, el texto en negrita denota datos de fusible electrónico, y "PROM" denota "promedio" (en referencia a la delta promediada).
Tabla 1
Los bloques 402 y 404 ilustran los datos de calibración en un gráfico de tiempo de ciclo frente a temperatura. El bloque 402 muestra una función de respuesta (Tcic frente a Temp) en modo de fuga ("fuga") y a dos tensiones (V1 y V2). El bloque 404 muestra una función de respuesta (Tcic frente a Temp) en modo de referencia ("ref") y a dos tensiones (V1 y V2).
Obsérvese que, en el bloque 404, los datos en T1 son opcionales y pueden requerir 10 fusibles electrónicos adicionales: 5 bits por cada punto {T,V} para almacenar la delta entre (T1,V1) y (T2,V1), y entre (T1,V2) y (T2,V2).
El flujo continúa, en el bloque 406, extrayendo la tensión local de cada LTS. Esto se realiza mediante la generación de una función de respuesta entre el tiempo de ciclo del modo de referencia y la tensión; la entrada a esta fase son los datos de calibración y un factor de curva que se extrae mediante simulación pre-silicio para aumentar la precisión de la función de respuesta. El valor del tiempo de ciclo del modo de referencia medido se utiliza entonces como entrada a la función de respuesta, para extraer la V<dd>local del LTS, representada como V<x>.
Una segunda función de respuesta que se genera, mostrada en el bloque 408, es la función de respuesta del tiempo de ciclo del modo de fuga frente a V<d d>. La segunda función de respuesta se genera basándose en los datos de calibración. Para una mejor linealización, el eje Y de la función de respuesta puede generarse tomando el logaritmo neperiano (Ln) de los datos de calibración. El valor de la tensión V<dd>local extraída (V<x>del bloque 406) se utiliza entonces como entrada para generar una tercera función de respuesta que se muestra en el bloque 408. La tercera función de respuesta representa el comportamiento del tiempo de ciclo del modo de fuga a V<dd>= V<x>. El valor del tiempo de ciclo del modo de fuga medido se utiliza entonces como entrada para la función de respuesta, para extraer la temperatura local (T<x>) del LTS.
El flujo puede continuar realizando una segunda iteración para mejorar la precisión de la temperatura medida. La temperatura local extraída (T<x>) se utiliza para volver a calcular la primera función de respuesta del bloque 406. Utilizando el factor de compensación pre-silicio, el comportamiento del tiempo de ciclo de referencia frente a la tensión se compensa basándose en T<x>. Junto con el tiempo de ciclo de referencia medido, la función de respuesta generará una V<dd>local precisa representada por V<x'>. V<x'>se utilizará para volver a calcular la temperatura T<x>.
Después de la segunda iteración, la temperatura DTS puede compararse con T<x>, para generar un factor de compensación para todos los LTS.
A lo largo de esta solicitud, diversas realizaciones de la presente invención pueden presentarse en formato de intervalo. Debe entenderse que la descripción en formato de intervalo es meramente por conveniencia y brevedad. En consecuencia, debe considerarse que la descripción de un intervalo ha divulgado específicamente todos los subintervalos posibles, así como los valores numéricos individuales dentro de ese intervalo. Por ejemplo, la descripción de un intervalo tal como del 1 al 6 debe considerarse que ha divulgado específicamente subintervalos tales como del 1 al 3, del 1 al 4, del 1 al 5, del 2 al 4, del 2 al 6, del 3 al 6, etc., así como números individuales dentro de ese intervalo, por ejemplo, 1,2, 3, 4, 5 y 6. Esto se aplica independientemente de la amplitud del intervalo. Del mismo modo, debe considerarse que una descripción de un intervalo con valores fraccionarios, tales como de 0,1 a 0,5, ha divulgado específicamente valores fraccionarios individuales tales como 0,2, 0,3 y 0,4.
Siempre que se indique un intervalo numérico en el presente documento, se entenderá que incluye cualquier número citado (fraccionario o entero) dentro del intervalo indicado. Las expresiones "que varía/varía entre" un primer número indicado y un segundo número indicado y "que varía/varía de" un primer número indicado "a" un segundo número indicado se utilizan indistintamente en el presente documento y se entienden que incluyen el primer y el segundo número indicados y todos los números fraccionarios y enteros entre ellos.
En la descripción y las reivindicaciones de la solicitud, cada una de las palabras "comprende", "incluye" y "tiene", y otras formas de las mismas, no se limitan necesariamente a los miembros de una lista con la que las palabras pueden estar asociadas.
En la descripción y las reivindicaciones de la solicitud, cada uno de los términos "aproximadamente", "alrededor de" y otras formas de las mismas, que se utilizan junto con un valor numérico, tienen la intención de denotar un intervalo de ±20 % más allá de ese valor numérico.
Para aclarar las referencias en esta divulgación, se señala que el uso de sustantivos como sustantivos comunes, sustantivos propios, sustantivos nominativos y similares no pretende implicar que las realizaciones de la invención se limiten a una sola realización, y que se pueden utilizar muchas configuraciones de los componentes divulgados para describir algunas realizaciones de la invención, mientras que otras configuraciones pueden deducirse de estas realizaciones en diferentes configuraciones.
En aras de la claridad, no se muestran ni describen todas las características rutinarias de las implementaciones descritas en el presente documento. Por supuesto, debe tenerse en cuenta que en el desarrollo de cualquier implementación real de este tipo, deben tomarse numerosas decisiones específicas de implementación para lograr los objetivos específicos del desarrollador, tales como el cumplimiento de las limitaciones relacionadas con la aplicación y el negocio, y que estos objetivos específicos variarán de una implementación a otra y de un desarrollador a otro. Además, se apreciará que tal esfuerzo de desarrollo puede ser complejo y llevar mucho tiempo, pero que, no obstante, sería una tarea rutinaria de ingeniería para aquellos con conocimientos ordinarios en la técnica que se beneficien de esta divulgación.
Basándose en las enseñanzas de esta divulgación, se espera que un experto en la técnica sea capaz de poner en práctica la presente invención. Se cree que las descripciones de las diversas realizaciones proporcionadas en el presente documento proporcionan una amplia visión y detalles de la presente invención para permitir que un experto en la técnica ponga en práctica la invención. Además, se contempla específicamente que las diversas características y realizaciones de la invención descritas anteriormente se utilicen solas o en diversas combinaciones.
Para implementar la invención se pueden utilizar herramientas de diseño y disposición de circuitos convencionales y/o contemporáneas. Las realizaciones específicas descritas en el presente documento y, en particular, los diversos espesores y composiciones de varias capas, son ilustrativas de realizaciones de ejemplo y no deben considerarse como limitantes de la invención a tales opciones de implementación específicas. En consecuencia, se pueden proporcionar varias instancias para los componentes descritos en el presente documento como una sola instancia.
Aunque generalmente se presuponen los circuitos y las estructuras físicas, se sabe bien que en el diseño y la fabricación modernos de semiconductores, las estructuras físicas y los circuitos pueden plasmarse en una forma descriptiva legible por ordenador adecuada para su uso en las fases posteriores de diseño, ensayo o fabricación, así como en los circuitos integrados semiconductores fabricados resultantes. En consecuencia, las reivindicaciones dirigidas a circuitos o estructuras tradicionales pueden, de acuerdo con su lenguaje particular, leerse en codificaciones y representaciones legibles por ordenador de los mismos, ya sea en medios o combinados con instalaciones de lectura adecuadas para permitir la fabricación, ensayo o perfeccionamiento del diseño de los circuitos y/o estructuras correspondientes. Las estructuras y la funcionalidad presentadas como componentes discretos en las configuraciones de ejemplo pueden implementarse como una estructura o componente combinado. Se contempla que la invención incluya circuitos, sistemas de circuitos, métodos relacionados y codificaciones en medios legibles por ordenador de tales circuitos, sistemas y métodos, todo ello según se describe en el presente documento y según se define en las reivindicaciones adjuntas. Como se utiliza en el presente documento, un medio legible por ordenador incluye al menos un disco, cinta u otro medio magnético, óptico, semiconductor (p. ej., tarjetas de memoria flash, ROM) o electrónico y una red, por cable o inalámbrica u otro medio de comunicación.
Aunque las realizaciones preferidas se describen en el contexto de un PLL que funciona a frecuencias de ejemplo, se cree que las enseñanzas de la presente invención son ventajosas para su uso con otros tipos de circuitos en los que un elemento de circuito, tal como un inductor, puede beneficiarse del blindaje electromagnético. Además, las técnicas descritas en el presente documento también pueden aplicarse a otros tipos de aplicaciones de circuitos.
Las realizaciones de la presente invención pueden utilizarse para fabricar, producir y/o ensamblar circuitos integrados y/o productos basados en circuitos integrados.
Los aspectos de la presente invención se describen en el presente documento con referencia a ilustraciones de diagramas de flujo y/o diagramas de bloques de métodos, aparatos (sistemas) y productos de programas informáticos según las realizaciones de la invención. Se entenderá que cada bloque de las ilustraciones de diagramas de flujo y/o diagramas de bloques, y combinaciones de bloques en las ilustraciones de diagramas de flujo y/o diagramas de bloques, pueden ser implementados por instrucciones de programa legibles por ordenador.
El diagrama de flujo y los diagramas de bloques de las Figuras ilustran la arquitectura, funcionalidad y funcionamiento de posibles implementaciones de sistemas, métodos y productos de programas informáticos según diversas realizaciones de la presente invención. En este sentido, cada bloque del diagrama de flujo o de los diagramas de bloques puede representar un módulo, segmento o parte de instrucciones, que comprende una o más instrucciones ejecutables para implementar la(s) función(es) lógica(s) especificada(s). En algunas implementaciones alternativas, las funciones indicadas en el bloque pueden producirse fuera del orden indicado en las figuras. Por ejemplo, dos bloques mostrados en sucesión pueden, de hecho, ejecutarse sustancialmente de forma simultánea, o los bloques pueden ejecutarse a veces en orden inverso, dependiendo de la funcionalidad implicada. También se observará que cada bloque de los diagramas de bloques y/o la ilustración del diagrama de flujo, y las combinaciones de bloques en los diagramas de bloques y/o la ilustración del diagrama de flujo, pueden implementarse mediante sistemas de hardware de propósito especial que realizan las funciones o actos especificados o llevan a cabo combinaciones de hardware de propósito especial e instrucciones informáticas.
La presente invención puede ser un sistema, un método y/o un producto de programa informático. El producto de programa informático puede incluir un medio (o medios) de almacenamiento legible por ordenador que contenga instrucciones de programa legibles por ordenador para hacer que un procesador lleve a cabo aspectos de la presente invención.
El medio de almacenamiento legible por ordenador puede ser un dispositivo tangible que pueda retener y almacenar instrucciones para ser utilizadas por un dispositivo de ejecución de instrucciones. El medio de almacenamiento legible por ordenador puede ser, por ejemplo, pero sin limitación, un dispositivo de almacenamiento electrónico, un dispositivo de almacenamiento magnético, un dispositivo de almacenamiento óptico, un dispositivo de almacenamiento electromagnético, un dispositivo de almacenamiento semiconductor, o cualquier combinación adecuada de los anteriores. Una lista no exhaustiva de ejemplos más específicos del medio de almacenamiento legible por ordenador incluye lo siguiente: un disquete de ordenador portátil, un disco duro, una memoria de acceso aleatorio (RAM), una memoria de solo lectura (ROM), una memoria de solo lectura programable y borrable (EPROM o memoria flash), una memoria de acceso aleatorio estático (SRAM), una memoria de solo lectura de disco compacto portátil (CD-ROM), un disco versátil digital (DVD), una tarjeta de memoria, un disquete, un dispositivo codificado mecánicamente que tenga instrucciones grabadas en él, y cualquier combinación adecuada de los anteriores. Un medio de almacenamiento legible por ordenador, como se utiliza en el presente documento, no debe interpretarse como señales transitorias por sí mismas, tales como ondas de radio u otras ondas electromagnéticas que se propagan libremente, ondas electromagnéticas que se propagan a través de una guía de ondas u otros medios de transmisión (p. ej., pulsos de luz que pasan a través de un cable de fibra óptica), o señales eléctricas transmitidas a través de un cable. Más bien, el medio de almacenamiento legible por ordenador es un medio no transitorio (es decir, no volátil).
Las instrucciones de programa legibles por ordenador descritas en el presente documento pueden descargarse a los respectivos dispositivos informáticos/de procesamiento desde un medio de almacenamiento legible por ordenador o a un ordenador externo o dispositivo de almacenamiento externo a través de una red, por ejemplo, Internet, una red de área local, una red de área amplia y/o una red inalámbrica. La red puede comprender cables de transmisión de cobre, fibras de transmisión óptica, transmisión inalámbrica, enrutadores, cortafuegos, conmutadores, ordenadores de compuerta de enlace y/o servidores perimetrales. Una tarjeta adaptadora de red o interfaz de red en cada dispositivo informático/de procesamiento recibe instrucciones de programa legibles por ordenador de la red y reenvía las instrucciones de programa legibles por ordenador para su almacenamiento en un medio de almacenamiento legible por ordenador dentro del respectivo dispositivo informático/de procesamiento.
Las instrucciones de programa legibles por ordenador para llevar a cabo las operaciones de la presente invención pueden ser instrucciones de ensamblador, instrucciones de arquitectura de conjunto de instrucciones (ISA), instrucciones de máquina, instrucciones dependientes de la máquina, microcódigo, instrucciones de firmware, datos de configuración de estado, o bien código fuente o código objeto escrito en cualquier combinación de uno o más lenguajes de programación, incluyendo un lenguaje de programación orientado a objetos tal como Java, Smalltalk, C++ o similar, y lenguajes de programación de procedimiento convencionales, tales como el lenguaje de programación "C" o lenguajes de programación similares. Las instrucciones del programa legibles por ordenador pueden ejecutarse en su totalidad en el ordenador del usuario, en parte en el ordenador del usuario, como un paquete de software independiente, en parte en el ordenador del usuario y en parte en un ordenador remoto o en su totalidad en el ordenador o servidor remoto. En este último caso, el ordenador remoto puede estar conectado al ordenador del usuario a través de cualquier tipo de red, incluida una red de área local (LAN) o una red de área amplia (WAN), o la conexión puede realizarse a un ordenador externo (por ejemplo, a través de Internet utilizando un proveedor de servicios de Internet). En algunas realizaciones, los circuitos electrónicos que incluyen, por ejemplo, circuitos lógicos programables, matrices de puertas programables en campo (FPGA) o matrices lógicas programables (PLA) pueden ejecutar las instrucciones del programa legible por ordenador utilizando información de estado de las instrucciones del programa legible por ordenador para personalizar los circuitos electrónicos, con el fin de realizar algunos aspectos de la presente invención.
Los aspectos de la presente invención se describen en el presente documento con referencia a ilustraciones de diagramas de flujo y/o diagramas de bloques de métodos, aparatos (sistemas) y productos de programas informáticos según las realizaciones de la invención. Se entenderá que cada bloque de las ilustraciones de diagramas de flujo y/o diagramas de bloques, y combinaciones de bloques en las ilustraciones de diagramas de flujo y/o diagramas de bloques, pueden ser implementados por instrucciones de programa legibles por ordenador.
Estas instrucciones de programa legibles por ordenador pueden proporcionarse a un procesador de un ordenador de uso general, un ordenador de uso especial u otro aparato de procesamiento de datos programable para producir una máquina, de tal manera que las instrucciones, que se ejecutan a través del procesador del ordenador u otro aparato de procesamiento de datos programable, creen medios para implementar las funciones/actos especificados en el diagrama de flujo y/o diagrama de bloques. Estas instrucciones de programa legibles por ordenador también pueden almacenarse en un medio de almacenamiento legible por ordenador que puede ordenar a un ordenador, un aparato de procesamiento de datos programable u otros dispositivos que funcionen de una manera particular, de tal manera que el medio de almacenamiento legible por ordenador que tiene instrucciones almacenadas en él comprende un artículo de fabricación que incluye instrucciones que implementan aspectos de la función/acto especificados en el diagrama de flujo y/o diagrama de bloques.
Las instrucciones del programa legible por ordenador también pueden cargarse en un ordenador, otro aparato de procesamiento de datos programable u otro dispositivo para hacer que se realicen una serie de etapas operativas en el ordenador, otro aparato programable u otro dispositivo para producir un proceso implementado por ordenador, de tal manera que las instrucciones que se ejecutan en el ordenador, otro aparato programable u otro dispositivo implementan las funciones/actos especificados en el diagrama de flujo y/o diagrama de bloques.
El diagrama de flujo y los diagramas de bloques de las Figuras ilustran la arquitectura, funcionalidad y funcionamiento de posibles implementaciones de sistemas, métodos y productos de programas informáticos según diversas realizaciones de la presente invención. En este sentido, cada bloque del diagrama de flujo o de los diagramas de bloques puede representar un módulo, segmento o parte de instrucciones, que comprende una o más instrucciones ejecutables para implementar la(s) función(es) lógica(s) especificada(s). En algunas implementaciones alternativas, las funciones indicadas en el bloque pueden producirse fuera del orden indicado en las 14 figuras. Por ejemplo, dos bloques mostrados en sucesión pueden, de hecho, ejecutarse sustancialmente de forma simultánea, o los bloques pueden ejecutarse a veces en orden inverso, dependiendo de la funcionalidad implicada. También se observará que cada bloque de los diagramas de bloques y/o la ilustración del diagrama de flujo, y las combinaciones de bloques en los diagramas de bloques y/o la ilustración del diagrama de flujo, pueden implementarse mediante sistemas de hardware de propósito especial que realizan las funciones o actos especificados o llevan a cabo combinaciones de hardware de propósito especial e instrucciones informáticas.

Claims (12)

REIVINDICACIONES
1. Un circuito integrado semiconductor, CI, (200, 201) que comprende:
un primer circuito oscilador de anillo, ROSC, (220) y un segundo circuito ROSC (230, 231, 240) en ubicaciones separadas en el CI (200, 201), teniendo cada circuito ROSC (220, 230, 231, 240) una frecuencia de oscilación respectiva durante el funcionamiento que varía con la temperatura;
un sensor de temperatura de semiconductor (210), situado en el CI (200, 201) próximo al primer circuito ROSC (220) y que proporciona una señal de salida del sensor indicativa de la temperatura; y
al menos un procesador (250, 251, 260, 270, 274), configurado para indicar una temperatura en el segundo circuito ROSC (230, 231,240) basándose al menos en: la señal de salida del sensor, la frecuencia de oscilación del segundo circuito ROSC (230, 231,240) y la frecuencia de oscilación del primer circuito ROSC (220);
en donde el al menos un procesador (250, 251, 260, 270, 274) está configurado para indicar la temperatura en el segundo circuito ROSC (230, 231, 240) al menos: calibrando una relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC (230, 231, 240) basada en una relación entre una caída de tensión local (IR) y la frecuencia de oscilación del segundo circuito ROSC (230, 231, 240); y calibrando una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC (220), basada en una relación entre una caída de tensión local (IR) y la frecuencia de oscilación del primer circuito ROSC (220).
2. El CI de semiconductor (200, 201) de la reivindicación 1, en donde el al menos un procesador (250, 251,260, 270, 274) está configurado para indicar la temperatura en el segundo circuito ROSC (230, 231, 240) al menos calibrando una relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC (230, 231,240) basada en una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC (220).
3. El CI de semiconductor (200, 201) de la reivindicación 2, en donde el al menos un procesador (250, 251,260, 270, 274) está configurado además para indicar la temperatura en el primer circuito ROSC (220) al menos calibrando una relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC (220) basada en una relación entre la temperatura y la señal de salida del sensor.
4. El CI de semiconductor (200, 201) de la reivindicación 3, en donde el al menos un procesador (250, 251,260, 270, 274) está configurado además para almacenar, en el CI (200, 201):
(a) los resultados de la calibración de la relación entre la temperatura y la frecuencia de oscilación del primer circuito ROSC (220); y
(b) datos que indican una diferencia entre (a) y los resultados de la calibración de la relación entre la temperatura y la frecuencia de oscilación del segundo circuito ROSC (230, 231,240).
5. El CI de semiconductor (200, 201) de una cualquiera de las reivindicaciones 1 -4, en donde el primer circuito ROSC (220) tiene una entrada acoplada para recibir una corriente eléctrica desde una salida de un primer transistor funcional y el segundo circuito ROSC (230, 231,240) tiene una entrada acoplada para recibir una corriente eléctrica desde una salida de un segundo transistor funcional.
6. El CI de semiconductor (200, 201) de la reivindicación 5, en donde la entrada al primer circuito ROSC (220) es proporcionada por una salida de una primera fuente de corriente y, la entrada al segundo circuito ROSC (230, 231, 240) es proporcionada por una salida de una segunda fuente de corriente.
7. El CI de semiconductor (200, 201) de la reivindicación 6, en donde:
la primera fuente de corriente comprende un primer generador de polarización subumbral (103) acoplado a un terminal de control del primer transistor funcional y configurado para polarizar el primer transistor funcional en un estado subumbral, proporcionando una salida del primer transistor funcional la salida de la primera fuente de corriente; y la segunda fuente de corriente comprende un segundo generador de polarización subumbral (103) acoplado a un terminal de control del segundo transistor funcional y configurado para polarizar el segundo transistor funcional en un estado subumbral, proporcionando una salida del segundo transistor funcional la salida de la segunda fuente de corriente.
8. El CI de semiconductor (200, 201) de una cualquiera de las reivindicaciones 5-7, en donde la entrada del primer circuito ROSC (220) está acoplada de forma conmutable para recibir la corriente eléctrica de la salida del primer transistor funcional, de tal manera que el al menos un procesador (250, 251, 260, 270, 274) está configurado para determinar:
una frecuencia de referencia basada en la frecuencia de oscilación del primer circuito ROSC (220) cuando la entrada del primer circuito ROSC (220) no recibe la corriente eléctrica de la salida del primer transistor funcional, y una frecuencia de medición del sensor basada en la frecuencia de oscilación del primer circuito ROSC (220) cuando la entrada del primer circuito ROSC (220) recibe la corriente eléctrica de la salida del primer transistor funcional.
9. El CI de semiconductor (200, 201) de una cualquiera de las reivindicaciones 5-7, en donde la entrada del segundo circuito ROSC (230, 231, 240) está acoplada de forma conmutable para recibir la corriente eléctrica de la salida del segundo transistor funcional, de tal manera que el al menos un procesador (250, 251,260, 270, 274) está configurado para determinar:
una frecuencia de referencia basada en la frecuencia de oscilación del segundo circuito ROSC (230, 231,240) cuando la entrada del segundo circuito ROSC (230, 231,240) no recibe la corriente eléctrica de la salida del segundo transistor funcional, y
una frecuencia de medición del sensor basada en la frecuencia de oscilación del segundo circuito ROSC (230, 231, 240) cuando la entrada del segundo circuito ROSC (230, 231,240) recibe la corriente eléctrica de la salida del segundo transistor funcional.
10. El CI de semiconductor (200, 201) de una cualquiera de las reivindicaciones 1 -9, que comprende además: puertos de suministro de energía, configurados para recibir una fuente de alimentación externa; y
en donde el sensor de temperatura de semiconductor (210) está acoplado a los puertos de alimentación eléctrica para alimentar el sensor de temperatura de semiconductor (210).
11. El CI de semiconductor (200, 201) de una cualquiera de las reivindicaciones 1-10, que comprende además: líneas de alimentación de tensión de núcleo (V<cc>de núcleo) para suministrar una tensión de núcleo en el CI (200, 201); y
en donde el primer circuito ROSC (220) y el segundo circuito ROSC (230, 231, 240) están acoplados a las líneas de alimentación de tensión de núcleo.
12. El CI de semiconductor (200, 201) de una cualquiera de las reivindicaciones 1-11, en donde cada circuito ROSC (220, 230, 231,240) comprende un número impar de inversores asimétricos.
ES20846630T 2019-07-29 2020-07-29 On-die thermal sensing network for integrated circuits Active ES3024385T3 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962879625P 2019-07-29 2019-07-29
PCT/IL2020/050840 WO2021019539A1 (en) 2019-07-29 2020-07-29 On-die thermal sensing network for integrated circuits

Publications (1)

Publication Number Publication Date
ES3024385T3 true ES3024385T3 (en) 2025-06-04

Family

ID=74230322

Family Applications (1)

Application Number Title Priority Date Filing Date
ES20846630T Active ES3024385T3 (en) 2019-07-29 2020-07-29 On-die thermal sensing network for integrated circuits

Country Status (6)

Country Link
US (1) US20220268644A1 (es)
EP (1) EP4004509B1 (es)
CN (1) CN114430803A (es)
ES (1) ES3024385T3 (es)
TW (1) TWI872096B (es)
WO (1) WO2021019539A1 (es)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI806927B (zh) 2017-11-15 2023-07-01 以色列商普騰泰克斯有限公司 積體電路邊限測量和故障預測裝置
CN116736185A (zh) 2017-11-23 2023-09-12 普罗泰克斯公司 集成电路焊盘故障检测
US12282058B2 (en) 2017-11-23 2025-04-22 Proteantecs Ltd. Integrated circuit pad failure detection
US11740281B2 (en) 2018-01-08 2023-08-29 Proteantecs Ltd. Integrated circuit degradation estimation and time-of-failure prediction using workload and margin sensing
EP3737953B1 (en) 2018-01-08 2026-03-04 Proteantecs Ltd. Integrated circuit workload, temperature and/or sub-threshold leakage sensor
TWI828676B (zh) 2018-04-16 2024-01-11 以色列商普騰泰克斯有限公司 用於積體電路剖析及異常檢測之方法和相關的電腦程式產品
EP3811246A4 (en) 2018-06-19 2022-03-23 Proteantecs Ltd. EFFICIENT SIMULATION AND TESTING OF AN INTEGRATED CIRCUIT
KR102796090B1 (ko) 2018-12-30 2025-04-16 프로틴텍스 엘티디. 집적 회로 i/o 무결성 및 열화 모니터링
TW202127252A (zh) 2019-12-04 2021-07-16 以色列商普騰泰克斯有限公司 記憶體裝置退化偵測
EP4139697A4 (en) 2020-04-20 2024-05-22 Proteantecs Ltd. MONITORING THE CONNECTION BETWEEN CHIPS
IL299556A (en) 2020-07-06 2023-02-01 Proteantecs Ltd Integrated circuit margin measurement for structural testing
WO2022215076A1 (en) 2021-04-07 2022-10-13 Proteantecs Ltd. Adaptive frequency scaling based on clock cycle time measurement
US20220357211A1 (en) * 2021-05-05 2022-11-10 Mediatek Inc. Integration friendly thermal sensor
US11619551B1 (en) 2022-01-27 2023-04-04 Proteantecs Ltd. Thermal sensor for integrated circuit
US11815551B1 (en) 2022-06-07 2023-11-14 Proteantecs Ltd. Die-to-die connectivity monitoring using a clocked receiver
US12013800B1 (en) 2023-02-08 2024-06-18 Proteantecs Ltd. Die-to-die and chip-to-chip connectivity monitoring
US12123908B1 (en) 2023-09-12 2024-10-22 Proteantecs Ltd. Loopback testing of integrated circuits
GB2634965A (en) * 2023-10-27 2025-04-30 Advanced Risc Mach Ltd Calibration techniques for temperature sensors
US12461143B2 (en) 2024-01-24 2025-11-04 Proteantecs Ltd. Integrated circuit margin measurement

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57116228A (en) * 1981-01-09 1982-07-20 Citizen Watch Co Ltd Temperature detector
US5895629A (en) * 1997-11-25 1999-04-20 Science & Technology Corp Ring oscillator based chemical sensor
US6229402B1 (en) * 1998-05-28 2001-05-08 Canon Kabushiki Kaisha Driving circuit for vibration type actuator apparatus
US6695475B2 (en) * 2001-05-31 2004-02-24 Stmicroelectronics, Inc. Temperature sensing circuit and method
US6882172B1 (en) * 2002-04-16 2005-04-19 Transmeta Corporation System and method for measuring transistor leakage current with a ring oscillator
US7742887B2 (en) * 2003-11-24 2010-06-22 Qualcomm Incorporated Identifying process and temperature of silicon chips
US6948388B1 (en) * 2003-12-18 2005-09-27 The United States Of America As Represented By The Secretary Of The Navy Wireless remote sensor
US7455450B2 (en) * 2005-10-07 2008-11-25 Advanced Micro Devices, Inc. Method and apparatus for temperature sensing in integrated circuits
KR100800470B1 (ko) * 2006-01-11 2008-02-01 삼성전자주식회사 링 오실레이터로 구현된 온도 센서 및 이를 이용한 온도검출 방법
US7779235B2 (en) * 2007-02-06 2010-08-17 International Business Machines Corporation Using performance data for instruction thread direction
US8154353B2 (en) * 2009-11-03 2012-04-10 Arm Limited Operating parameter monitor for an integrated circuit
CN101915625B (zh) * 2010-07-14 2012-07-25 北京北大众志微系统科技有限责任公司 温度传感器
JP5377438B2 (ja) * 2010-08-03 2013-12-25 株式会社神戸製鋼所 センサのモニタリング装置
TWI422847B (zh) * 2010-09-01 2014-01-11 Univ Nat Chiao Tung 全晶片上寬工作電壓溫度製程電壓的感測系統
KR101232207B1 (ko) * 2010-10-29 2013-02-12 고려대학교 산학협력단 온도 감지 회로 및 감지 방법
TWI421478B (zh) * 2010-12-31 2014-01-01 Ind Tech Res Inst 溫度感測裝置及方法
GB201102070D0 (en) * 2011-02-07 2011-03-23 Nordic Semiconductor Asa Semiconductor temperature sensors
WO2013070218A1 (en) * 2011-11-09 2013-05-16 Intel Corporation Compensation for digitally controlled oscillator apparatus and method
EP2770313B1 (en) * 2013-02-21 2015-04-08 ST-Ericsson SA Temperature sensing method generating a temperature dependent and a temperature independent output frequencies
US9816872B2 (en) * 2014-06-09 2017-11-14 Qualcomm Incorporated Low power low cost temperature sensor
DE102014216786B3 (de) * 2014-08-14 2015-10-22 Continental Automotive Gmbh Integrierte Diagnoseschaltung und Schaltungsanordnung mit der Diagnoseschaltung und einem Schaltelement
JP6415285B2 (ja) * 2014-12-08 2018-10-31 セイコーNpc株式会社 温度電圧センサ
US10234336B2 (en) * 2015-08-06 2019-03-19 Sandisk Technologies Llc Ring oscillators for temperature detection in wideband supply noise environments
US10527503B2 (en) * 2016-01-08 2020-01-07 Apple Inc. Reference circuit for metrology system
JP2018044884A (ja) * 2016-09-15 2018-03-22 ルネサスエレクトロニクス株式会社 温度計測回路、集積回路、及び温度計測方法
US20180259581A1 (en) * 2017-03-10 2018-09-13 Qualcomm Incorporated DYNAMICALLY CONTROLLING VOLTAGE PROVIDED TO THREE-DIMENSIONAL (3D) INTEGRATED CIRCUITS (ICs) (3DICs) TO ACCOUNT FOR PROCESS VARIATIONS MEASURED ACROSS INTERCONNECTED IC TIERS OF 3DICs
EP3737953B1 (en) * 2018-01-08 2026-03-04 Proteantecs Ltd. Integrated circuit workload, temperature and/or sub-threshold leakage sensor
US10664027B2 (en) * 2018-10-09 2020-05-26 Intel Corporation Methods, systems and apparatus for dynamic temperature aware functional safety
CN111371433B (zh) * 2018-12-26 2023-04-11 杭州广立微电子股份有限公司 一种可重构的全数字温度传感器及其应用
US11233503B2 (en) * 2019-03-28 2022-01-25 University Of Utah Research Foundation Temperature sensors and methods of use

Also Published As

Publication number Publication date
US20220268644A1 (en) 2022-08-25
EP4004509A4 (en) 2023-08-23
TWI872096B (zh) 2025-02-11
TW202119002A (zh) 2021-05-16
WO2021019539A1 (en) 2021-02-04
EP4004509A1 (en) 2022-06-01
CN114430803A (zh) 2022-05-03
EP4004509B1 (en) 2025-01-29

Similar Documents

Publication Publication Date Title
ES3024385T3 (en) On-die thermal sensing network for integrated circuits
TWI813615B (zh) 積體電路工作負荷、溫度及/或次臨界洩漏感測器
JP5555593B2 (ja) 集積回路の作動パラメータモニター
CN113358999B (zh) 用于计量系统的参考电路
CN108027414B (zh) 片上参数测量
EP3152538B1 (en) Low power low cost temperature sensor
US20220343048A1 (en) Determination of unknown bias and device parameters of integrated circuits by measurement and simulation
JP4843034B2 (ja) 温度センサ用リングオシレータ、温度センサ回路及びこれを備える半導体装置
TWI770128B (zh) 免於變動之晶粒上電壓降檢測器
US20190257696A1 (en) Accurate on-chip temperature sensing using thermal oscillator
JP2009188016A (ja) 半導体装置
KR20120112159A (ko) 복수의 온칩 모니터 회로들 및 제어 회로를 구비한 회로 장치 및 상응하는 방법
US7417448B2 (en) System to calibrate on-die temperature sensor
KR20240142473A (ko) 집적 회로를 위한 열 센서
JP2011089950A (ja) 半導体集積回路およびその動作方法
Wolpert et al. A sensor system to detect positive and negative current-temperature dependences
ES2720050T3 (es) Medición eficiente del ruido de la fuente de alimentación basada en la incertidumbre de temporización
JP2001007297A (ja) Cmos集積回路及びこれを用いたタイミング信号発生装置
JP2017163008A (ja) 半導体集積回路及び温度検出装置
JP2012220225A (ja) 温度検出回路