ES2748596T3 - Sistema y procedimiento para el arranque de dispositivos térmicamente consciente - Google Patents

Sistema y procedimiento para el arranque de dispositivos térmicamente consciente Download PDF

Info

Publication number
ES2748596T3
ES2748596T3 ES13707994T ES13707994T ES2748596T3 ES 2748596 T3 ES2748596 T3 ES 2748596T3 ES 13707994 T ES13707994 T ES 13707994T ES 13707994 T ES13707994 T ES 13707994T ES 2748596 T3 ES2748596 T3 ES 2748596T3
Authority
ES
Spain
Prior art keywords
pcd
thermal
module
sensor
sequence
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
ES13707994T
Other languages
English (en)
Inventor
Jon J Anderson
Ron T Alton
Praveen Kumar Chidambaram
Joshua D Thielen
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=49004591&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=ES2748596(T3) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Application granted granted Critical
Publication of ES2748596T3 publication Critical patent/ES2748596T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

Un procedimiento para el arranque térmicamente consciente en un dispositivo informático portátil ("PCD"), comprendiendo el procedimiento: iniciar una secuencia de arranque; sondear (605) un sensor en el PCD para una medición de un indicador térmico, en el que el sensor se asocia con uno o más componentes dentro del PCD; comparar (610) la medición sondeada con un umbral predeterminado; determinar (610) si la medición sondeada supera el umbral predeterminado; y si la medición sondeada supera el umbral predeterminado (610, SÍ), retrasar (615) la secuencia de arranque, que comprende además sondear (620) el sensor una pluralidad de veces en las que: si alguna medición sondeada es menor que el umbral predeterminado (625, NO), se autoriza la finalización de la secuencia de arranque (635); o si el sensor se sondea más de un número predeterminado de veces (630, SÍ), se autoriza la finalización de la secuencia de arranque (635).

Description

DESCRIPCIÓN
Sistema y procedimiento para el arranque de dispositivos térmicamente consciente
DESCRIPCIÓN DE LA TÉCNICA RELACIONADA
[0001] Los dispositivos informáticos portátiles ("PCD") se están convirtiendo en una necesidad para las personas a niveles personal y profesional. Estos dispositivos pueden incluir teléfonos celulares, asistentes digitales portátiles ("PDA"), consolas de juegos portátiles, ordenadores de bolsillo y otros dispositivos electrónicos portátiles.
[0002] Un aspecto único de los PCD es que típicamente no tienen dispositivos de refrigeración activos, como ventiladores, ya que se encuentran a menudo en los dispositivos informáticos más grandes tales como ordenadores portátiles y de sobremesa. En lugar de usar ventiladores, los PCD pueden depender de un software de mitigación térmica diseñado para intercambiar el rendimiento del PCD por una menor tasa de generación de energía térmica. El software de mitigación térmica, que típicamente se ejecuta en los procesadores principales en un PCD, puede ser muy eficaz para gestionar la generación de energía térmica. A menudo, las mediciones de temperatura dentro del PCD activan el software de mitigación térmica para implementar o bien finalizar una técnica de mitigación térmica dada. Las técnicas de mitigación térmica pueden reducir la oportunidad de que la energía térmica generada por diversos componentes dentro de un PCD genere temperaturas que podrían poner en peligro el estado de los componentes o afectar negativamente la experiencia del usuario. En consecuencia, el uso eficaz de las técnicas de mitigación térmica también puede optimizar la calidad de servicio ("QoS") proporcionada por el PCD a un usuario, optimizando también de este modo la experiencia del usuario, sin poner en riesgo el estado del PCD.
[0003] Aun así, a pesar de las técnicas de mitigación térmicas más avanzadas, las temperaturas dentro de un PCD todavía pueden alcanzar niveles críticos con cualquier número de casos de uso extremo. Por ejemplo, con grandes cargas de procesamiento pesadas en entornos ambientales cálidos, las temperaturas de contacto pueden superar los umbrales adecuados para la exposición al usuario o las temperaturas de la matriz pueden alcanzar niveles que ponen en peligro el estado de los componentes de procesamiento y los dispositivos de memoria. Cuando un PCD se expone a dichas condiciones, a menudo el único medio para evitar el desbordamiento térmico y proteger el estado de los componentes dentro del PCD es forzar un colapso de potencia antes de reiniciar el PCD.
[0004] Especialmente, el reinicio de un PCD en condiciones de temperatura elevada solo puede necesitar una serie de colapsos de potencia si el PCD está demasiado caliente para que los procesadores principales se pongan en funcionamiento. Y, si los procesadores principales no están en funcionamiento, entonces el software de mitigación térmica que funciona en los mismos no se puede ejecutar para gestionar la generación de energía térmica. En consecuencia, lo que se necesita en la técnica es un procedimiento y un sistema para un modo de arranque térmicamente consciente que autorice y/o retrase una secuencia de arranque del PCD en base a una comparación de mediciones térmicas con umbrales predeterminados. Además, lo que se necesita en la técnica es un procedimiento y sistema para un modo de arranque térmicamente consciente que, en base a una comparación de mediciones térmicas con umbrales predeterminados, escalone el nivel de rendimiento al que se arrancan uno o más componentes de procesamiento en el PCD.
[0005] El documento US 2006/065751 se refiere a un procedimiento para bloquear una señal de activación de un circuito electrónico en caso de que la temperatura alcance una temperatura crítica.
[0006] El documento US 5.930.738 se refiere a un procedimiento para evitar que un disco duro se inicie si un parámetro ambiental (es decir, la temperatura) está fuera de los límites operativos.
SUMARIO DE LA DIVULGACIÓN
[0007] Se divulgan diversos modos de realización de los procedimientos y sistemas para el arranque térmicamente consciente en un dispositivo informático portátil ("PCD"). Debido a que poner en funcionamiento los componentes de procesamiento de alto consumo de potencia cuando se arranca un PCD en condiciones térmicas inferiores a las ideales puede ser perjudicial para el estado del PCD, los modos de realización de los sistemas y procedimientos aprovechan al principio un componente de procesamiento de baja potencia en una secuencia de arranque para autorizar, retrasar o modificar la secuencia de arranque en base a indicadores térmicos medidos. Los indicadores térmicos pueden ser cualquier parámetro medible que sea útil para indicar la condición térmica del PCD o los componentes dentro del PCD.
[0008] Un procedimiento para el arranque térmicamente consciente en un PCD es esencialmente un procedimiento de "pasa/no pasa" que sondea a un/unos sensor(es) en el PCD para una medición asociada con un parámetro indicador térmico. El/los sensor(es) está(n) asociado(s) con uno o más componentes dentro del PCD que se pueden ver afectados por la condición térmica medida si supera un umbral. La medición sondeada se compara de esta manera con un umbral predeterminado y, si la medición supera el umbral, la secuencia de arranque se retrasa. De forma ventajosa, el retraso puede dar al exceso de energía térmica una oportunidad de disiparse del PCD antes de que se genere más energía térmica como resultado del arranque de uno o más componentes de alto consumo de potencia.
Además, algunos modos de realización pueden incluir la capacidad de retrasar la secuencia de arranque múltiples veces hasta que una medición sondeada indique que es seguro arrancar el PCD o que se haya alcanzado un número predeterminado de ciclos de retraso.
[0009] Otro modo de realización ejemplar de un procedimiento para el arranque térmicamente consciente en un PCD puede modificar una secuencia de arranque de un PCD en base a la identificación de una política de arranque térmico asociada con un estado de arranque térmico. El procedimiento sondea un/unos sensor(es) en el PCD para una medición asociada con un parámetro indicador térmico. El/los sensor(es) está(n) asociado(s) con uno o más componentes dentro del PCD que se pueden ver afectados por la condición térmica medida si supera un umbral. Se consulta una tabla de búsqueda de políticas térmicas ("TPL") que incluye políticas de arranque térmico asociadas con umbrales para el indicador térmico. La medición sondeada se compara con los umbrales documentados en la tabla de TPL y se identifica una política de arranque térmico. Una vez identificada, la política de arranque térmico se aplica a la secuencia de arranque mediante un componente de procesamiento de baja potencia y, en algunos modos de realización, puede incluir permitir que la secuencia de arranque se complete modificando la frecuencia de potencia a la que se arrancarán los componentes de alto consumo de potencia.
[0010] De forma ventajosa, como un experto en la técnica reconocerá, mediante el aprovechamiento de un componente de procesamiento de baja potencia al principio en una secuencia de arranque para autorizar, retrasar o modificar la secuencia de arranque en base a indicadores térmicos medidos, los modos de realización de los sistemas y el procedimiento pueden optimizar la calidad de servicio ("QoS") proporcionada por el PCD sin poner en peligro el estado de los componentes o afectar excesivamente la experiencia del usuario.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
[0011] En los dibujos, los números de referencia similares se refieren a partes similares a lo largo de las diversas vistas a menos que se indique de otro modo. Para los números de referencia con designaciones de caracteres de letras tales como "102A" o "102B", las designaciones de caracteres de letras pueden diferenciar dos partes o elementos similares presentes en la misma figura. Las designaciones de caracteres de letras para los números de referencia se pueden omitir cuando se pretende que un número de referencia englobe todas las partes que tengan el mismo número de referencia en todas las figuras.
La FIG. 1 es un diagrama de bloques funcional que ilustra un modo de realización de un sistema en chip para implementar una secuencia de arranque térmicamente consciente en un dispositivo informático portátil ("PCD");
la FIG. 2 es un diagrama de bloques funcional que ilustra un aspecto no limitante, ejemplar del PCD de la FIG. 1 en forma de un teléfono inalámbrico para implementar procedimientos y sistemas que retrasen, autoricen o modifiquen una secuencia de arranque en base a las condiciones térmicas supervisadas;
la FIG. 3A es un diagrama de bloques funcional que ilustra una disposición espacial ejemplar de hardware para el chip ilustrado en la FIG. 2;
la FIG. 3B es un diagrama esquemático que ilustra una arquitectura de software ejemplar del PCD de la FIG. 2 para el arranque térmicamente consciente;
la FIG. 4 es un diagrama de estado ejemplar que ilustra diversos estados de arranque térmico que se pueden reconocer y gestionar para optimizar la QoS y la experiencia del usuario global;
la FIG. 5 es un diagrama que ilustra políticas de arranque térmicamente consciente ejemplares que se pueden aplicar para optimizar la QoS y la experiencia del usuario global y dependen de un estado de arranque térmico particular de un PCD;
la FIG. 6 es un diagrama de flujo lógico que ilustra un procedimiento para el arranque térmicamente consciente en un PCD que incluye autorizar o retrasar una secuencia de arranque en base a las condiciones térmicas supervisadas;
la FIG. 7 es un diagrama de flujo lógico que ilustra un procedimiento para el arranque térmicamente consciente en un PCD que incluye modificar una secuencia de arranque en base al reconocimiento de los estados de arranque térmico y de acuerdo con la tabla de búsqueda de rendimiento térmico de la FIG. 8; y
la FIG. 8 es una tabla de búsqueda de rendimiento térmico ejemplar que se puede consultar mediante los modos de realización del procedimiento ilustrado en la FIG. 7.
DESCRIPCIÓN DETALLADA
[0012] La expresión "ejemplar" se usa en el presente documento para significar que sirve de ejemplo, caso o ilustración. Cualquier aspecto descrito en el presente documento como "ejemplar" no necesariamente se debe interpretar como exclusivo, preferente o ventajoso sobre otros aspectos.
[0013] En esta descripción, el término "aplicación" también puede incluir archivos que tengan contenido ejecutable, tal como: código de objeto, secuencias de comandos, código de octetos, archivos de lenguaje de marcado y parches. Además, una "aplicación" a la que se hace referencia en el presente documento, también puede incluir archivos que no son de naturaleza ejecutable, tales como documentos que pueda ser necesario abrir u otros archivos de datos a los que sea necesario acceder.
[0014] Como se usa en esta descripción, los términos "componente", "base de datos", "módulo", "sistema", "componente generador de energía térmica", "componente de procesamiento" y similares están destinados a hacer referencia a una entidad relacionada con la informática, ya sea hardware, firmware, una combinación de hardware y software, software o software en ejecución. Por ejemplo, un componente puede ser, pero no se limita a ser, un proceso que se ejecuta en un procesador, un procesador, un objeto, un ejecutable, un hilo de ejecución, un programa y/o un ordenador. A modo de ilustración, tanto una aplicación que se ejecuta en un dispositivo informático como el dispositivo informático pueden ser un componente. Uno o más componentes pueden residir dentro de un proceso y/o hilo de ejecución, y un componente puede estar ubicado en un ordenador y/o estar distribuido entre dos o más ordenadores. Además, estos componentes se pueden ejecutar desde diversos medios legibles por ordenador que tengan diversas estructuras de datos almacenadas en los mismos. Los componentes se pueden comunicar por medio de procesos locales y/o remotos, tales como de acuerdo con una señal que tenga uno o más paquetes de datos (por ejemplo, datos de un componente que interactúe con otro componente en un sistema local, sistema distribuido y/o a través de una red tal como Internet, con otros sistemas por medio de la señal).
[0015] En esta descripción, los términos "unidad de procesamiento central ("CPU")", "procesador de señales digitales ("DSP")", "unidad de procesamiento gráfico ("GPU")" y "chip" se usan de manera intercambiable. Además, una CPU, un DSP, una GPU o un chip pueden estar compuestos de uno o más componentes de procesamiento distintos, en general denominados en el presente documento "núcleo(s)". Adicionalmente, en la medida en que una CPU, un DSP, una GPU, un chip o un núcleo sea un componente funcional dentro de un PCD que consume diversos niveles de potencia para funcionar a diversos niveles de eficacia funcional, un experto en la técnica reconocerá que el uso de estos términos no limita la aplicación de los modos de realización divulgados, o sus equivalentes, al contexto de componentes de procesamiento dentro de un PCD. Es decir, aunque muchos de los modos de realización se describen en el contexto de un componente de procesamiento, se contempla que se pueda aplicar un arranque térmicamente consciente para el beneficio de cualquier componente funcional dentro de un PCD incluyendo, pero sin limitarse a, un módem, una cámara, un controlador de interfaz de red inalámbrica ("WNIC"), una pantalla, un codificador de vídeo, un dispositivo periférico, un dispositivo de memoria de paquete en paquete ("PoP"), etc.
[0016] En esta descripción, se entenderá que los términos "térmica" y "energía térmica" se pueden usar en asociación con un dispositivo o componente que pueda generar o disipar energía que se puede medir en unidades de "temperatura". En consecuencia, se entenderá además que el término "temperatura", con referencia a algún valor estándar, contempla cualquier medición que pueda ser indicativa del calor, o ausencia de calor, relativo de un dispositivo o componente generador de "energía térmica". Por ejemplo, la "temperatura" de dos componentes es la misma cuando los dos componentes están en equilibrio térmico.
[0017] En esta descripción, los términos "carga de trabajo", "carga de proceso" y "carga de trabajo de proceso" se usan de manera intercambiable y en general se dirigen hacia la carga de procesamiento, o el porcentaje de carga de procesamiento, asociada con un componente de procesamiento dado en un modo de realización dado. Además de lo que se define anteriormente, un "componente de procesamiento" o "componente generador de energía térmica" o "agresor térmico" puede ser, pero no se limita a, una unidad de procesamiento central, una unidad de procesamiento gráfico, un núcleo, un núcleo principal, un subnúcleo, un área de procesamiento, un motor de hardware, etc., o cualquier componente que consuma potencia que resida dentro, o fuera de, un circuito integrado dentro de un dispositivo informático portátil.
[0018] En esta descripción, los términos "técnica(s) de mitigación térmica", "políticas térmicas", "gestión térmica", "medida(s) de mitigación térmica" y "software de mitigación térmica" se usan de manera intercambiable. Especialmente, un experto en la técnica reconocerá que, dependiendo del contexto de uso particular, cualquiera de los términos enumerados en este párrafo, o sus equivalentes, puede servir para describir hardware y/o software que puede funcionar para incrementar el rendimiento a expensas de la generación de energía térmica, disminuir la generación de energía térmica a expensas del rendimiento, o alternar entre dichos objetivos.
[0019] En esta descripción, el término "dispositivo informático portátil" ("PCD") se usa para describir cualquier dispositivo que funciona con una fuente de alimentación de capacidad limitada, tal como una batería. Aunque los PCD que funcionan con batería se han usado durante décadas, los avances tecnológicos en baterías recargables, junto con el advenimiento de la tecnología inalámbrica de tercera generación ("3G") y de cuarta generación ("4G"), han hecho posible numerosos PCD con múltiples capacidades. Por lo tanto, un PCD puede ser un teléfono celular, un teléfono satelital, un buscapersonas, un PDA, un teléfono inteligente, un dispositivo de navegación, un libro o lector inteligente, un reproductor de medios, una combinación de los dispositivos mencionados anteriormente, un ordenador portátil con conexión inalámbrica, entre otros.
[0020] En esta descripción, se hace referencia frecuente a la posibilidad de efectos perjudiciales sobre el "estado" de un PCD o componente en un PCD si se expone a determinadas condiciones térmicas. En el contexto de esta descripción, se entenderá que un efecto perjudicial sobre el "estado" de un componente pretende incluir cualquier efecto perjudicial sobre los aspectos funcionales de un componente que oscila en gravedad desde la inestabilidad operativa temporal hasta el daño del componente permanente. Para este fin, un experto en la técnica reconocerá que algunas condiciones térmicas pueden volver un componente permanentemente inservible, mientras que en diferentes condiciones térmicas el mismo componente puede experimentar solo inestabilidad temporal. Por ejemplo, la exposición prolongada a altos niveles de energía térmica puede destruir un componente de memoria en un PCD, mientras que el mismo componente de memoria en condiciones térmicas menos extremas puede experimentar solo fallas temporales sin un efecto duradero en su funcionalidad.
[0021] En esta descripción, los términos "arranque", "reinicio", "modo de arranque", "secuencia de arranque", "fase de arranque" y similares pretenden hacer referencia al conjunto inicial de operaciones que un PCD realiza cuando se enciende inicialmente, incluyendo, pero sin limitarse a, cargar el sistema operativo y preparar los diversos componentes del PCD para su uso. Con este fin, los términos "en funcionamiento" o "poner en funcionamiento" se entenderán en esta descripción como que son el resultado final de un "arranque" completo de un componente, o componentes, en un PCD.
[0022] El intento de arrancar un PCD cuando los indicadores térmicos, tales como las mediciones de temperatura en el troquel, están por encima de determinados umbrales, puede poner en peligro el estado de cualquier número de componentes dentro del PCD. Por ejemplo, la integridad de un dispositivo de memoria de paquete en paquete ("PoP") que comprende componentes de memoria de matriz de malla de bolas ("BGA") apilados se puede sacrificar si la memoria PoP está expuesta a la energía térmica disipada desde un agresor térmico cercano cuando las temperaturas en el troquel ya son elevadas, tales como las que se pueden experimentar por un PCD después de una sesión de juego intensiva o que se dejan en un automóvil caliente. De forma similar, el silicio en componentes de procesamiento de múltiples núcleos poderoso se puede degradar si el componente de procesamiento se pone en funcionamiento a la potencia máxima, o incluso algo menos que la potencia máxima, durante una secuencia de arranque cuando las temperaturas ya son elevadas.
[0023] Como se entiende por un experto en la técnica, estos componentes ejemplares y otros componentes de procesamiento dentro de un PCD pueden producir y disipar energía térmica mientras procesan cargas de trabajo. En exceso, la disipación de la energía térmica generada por estos componentes térmicamente agresivos puede provocar daños irreparables a la funcionalidad global del PCD. Normalmente, por lo tanto, un intento de arranque de un PCD cuando los indicadores térmicos superan determinados umbrales puede dar como resultado una serie de colapsos de potencia y reinicios para mitigar el riesgo de daños irreparables al estado de uno o más componentes en el PCD. Los colapsos de potencia y los reinicios, aunque son útiles para proteger el estado de un PCD, afectan negativamente la experiencia de un usuario.
[0024] Garantizar que un PCD completa su secuencia de arranque, sin poner en peligro el estado de sus diversos componentes sensibles al calor o afectar excesivamente la experiencia del usuario de manera negativa, se puede lograr mediante un módulo de arranque térmicamente consciente ("TAB") que aproveche una o más mediciones de sensor en las etapas iniciales de la fase de arranque. Un modo de realización ejemplar de un módulo TAB aprovecha un componente de procesamiento de baja potencia ("LP"), tal como un procesador de gestor de potencia de recursos ("RPM"), que se configura para ponerse en funcionamiento en las etapas iniciales de una secuencia de arranque. Un módulo t Ab que puede incluir un aspecto de software de arranque térmicamente consciente que se ejecuta en el procesador LP aprovecha las mediciones asociadas con el/los indicador(es) térmico(s) tomadas por un módulo de supervisión. El módulo de supervisión puede sondear uno o más sensores de temperatura, por ejemplo, ubicados alrededor del troquel de un circuito integrado específico de la aplicación ("ASIC") u otro circuito integrado y, en algunos casos, usar un hardware convertidor de analógico a digital para convertir los datos de medición en una señal digital.
[0025] Las señales digitales generadas por el módulo de supervisión pueden ser representativas de cualquier número de mediciones que se puedan correlacionar con indicadores térmicos de los niveles de disipación de energía térmica tales como, pero sin limitarse a, temperaturas de contacto del PCD, temperaturas de procesamiento asociadas con el/los núcleo(s) de la CPU, temperaturas ambiente próximas a un dispositivo de memoria PoP, lecturas del estado de carga ("SoC") asociadas con una batería, niveles de corriente de fuga en un bus de alimentación, etc. Las señales, una vez recibidas por el módulo TAB, se pueden comparar con los umbrales predeterminados para las mediciones dadas. Los umbrales predeterminados se pueden basar en cualquier número de parámetros para el indicador térmico dado, incluyendo, pero sin limitarse a, una temperatura de contacto permitida máxima del PCD, una temperatura de funcionamiento máxima de un componente en el PCD, un nivel de carga mínimo para una batería en el p Cd , un nivel de corriente máximo en un bus de alimentación en el PCD, etc.
[0026] En base a la comparación de las mediciones con los umbrales, algunos modos de realización de un módulo TAB pueden elegir completar o retrasar la secuencia de arranque. En otros modos de realización, el módulo TAB puede aprovechar la comparación para seleccionar un nivel de rendimiento escalonado para uno o más componentes en el p Cd y a continuación modificar la secuencia de arranque de modo que los componentes dados se pongan en funcionamiento a niveles de rendimiento reducidos. Como se entenderá por un experto en la técnica, poner un componente de procesamiento en funcionamiento a un nivel de potencia reducido puede provocar que el componente genere tasas de energía térmica relativamente más bajas. Además, al arrancar el uno o más componentes a un nivel de rendimiento reducido, un experto en la técnica reconocerá que se puede mantener una corta duración de tiempo de arranque sin el riesgo para el estado del PCD que podría resultar del arranque de los componentes a niveles de potencia máxima.
[0027] Por ejemplo, en algunos modos de realización, el módulo de supervisión puede tomar una lectura desde un sensor de temperatura ubicado cerca de un núcleo de la CPU principal del PCD. La lectura de temperatura puede indicar al módulo TAB que la temperatura del núcleo está por debajo de un umbral máximo y, como tal, poner en funcionamiento la CPU de alto consumo de potencia a la potencia máxima no sería perjudicial para la CPU y/u otros componentes dentro del PCD. En un escenario de este tipo, el módulo TAB puede autorizar al procesador LP a avanzar o completar la secuencia de arranque sin modificaciones. Sin embargo, si se determina por el módulo TAB que la lectura de temperatura supera un umbral predeterminado, el módulo TAB puede elegir que la secuencia de arranque se retrase para que la energía térmica que provoca la temperatura elevada se pueda disipar. De forma alternativa, cuando se supera un umbral, el módulo TAB puede modificar la secuencia de arranque de modo que cuando se complete, la CPU se pondrá en funcionamiento a un nivel de potencia escalonado asociado con una tasa de generación de energía térmica que no afectará en exceso a la huella térmica existente del PCD.
[0028] De forma ventajosa, al retrasar o modificar temporalmente la secuencia de arranque de dicha manera, se pueden evitar impactos potencialmente catastróficos o negativos en el estado de uno o más componentes del PCD sin el colapso de potencia del PCD o reiniciar por completo el proceso de arranque. Es decir, el daño del componente permanente o la inestabilidad del rendimiento que resulta de la exposición al exceso de energía térmica se puede evitar sin el colapso de potencia o reiniciar por completo el proceso de arranque del PCD. De esta manera, la experiencia del usuario y los niveles de QoS se pueden optimizar cuando el PCD se arranca en condiciones térmicas inferiores a las ideales. Además, se contempla que algunos modos de realización puedan retrasar la secuencia de arranque indefinidamente, o para un número establecido de ciclos, ya que las mediciones del indicador térmico continúan sondeándose y comparándose con los umbrales predeterminados.
[0029] Especialmente, los modos de realización ejemplares descritos e ilustrados en el presente documento se dirigen principalmente hacia retrasar, autorizar o modificar una secuencia de arranque en base a indicadores térmicos sondeados. Sin embargo, en un sentido más general, los modos de realización buscan determinar un "margen térmico" disponible antes de elegir retrasar, autorizar o modificar un proceso dentro de un PCD. Como tal, un experto en la técnica reconocerá que una secuencia de arranque es solo un ejemplo de un proceso dentro de un PCD que se puede retrasar, autorizar para su finalización o modificar en base a uno o más indicadores térmicos sondeados. Por tanto, se contempla que los modos de realización de los sistemas y procedimientos puedan autorizar o modificar cualquier proceso siempre que el "margen térmico" cuantificado por la diferencia entre una medición sondeada y un umbral dado sugiera que dicho proceso se puede completarse sin provocar que se supere el umbral. Como ejemplo no limitante, determinados modos de realización pueden comparar un indicador térmico sondeado con un umbral antes de elegir retrasar, autorizar o modificar una carga de trabajo programada para su procesamiento en un determinado núcleo de alta potencia. Especialmente, en un modo de realización de este tipo, retrasar o modificar la carga de trabajo programada puede incluir cambiar su prioridad de modo que otras cargas de trabajo asociadas con niveles menores de generación de energía térmica se puedan procesar en su lugar.
[0030] La FIG. 1 es un diagrama de bloques funcional que ilustra un modo de realización de un sistema en chip 102 para implementar una secuencia de arranque térmicamente consciente en un PCD 100. Los modos de realización de una secuencia de arranque térmicamente consciente aprovechan las mediciones de los indicadores térmicos, tales como las mediciones de temperatura, desde una o más ubicaciones dentro de un PCD 100 para determinar si es seguro que todos los componentes dentro del PCD 100 se pongan en funcionamiento. Si las mediciones indican que sería perjudicial que uno o más componentes dentro del PCD 100 se pongan en funcionamiento, la secuencia de arranque se puede retrasar hasta que las lecturas posteriores de la(s) medición/mediciones indiquen que las condiciones térmicas son más favorables para la finalización de la secuencia de arranque. De forma alternativa, algunos modos de realización pueden modificar la secuencia de arranque de modo que uno o más componentes se pongan en funcionamiento a un nivel de potencia reducido que se correlaciona con tasas relativamente más bajas de generación y disipación de energía térmica. De esta manera, los modos de realización pueden asegurar el estado global del p Cd 100 y evitar reinicios consecutivos.
[0031] Como se ha explicado anteriormente, muchos PCD 100 incluyen módulos gestores de políticas térmicas principales 113 que se ejecutan en un componente de procesamiento principal tal como la CPU 110. Los módulos gestores de políticas térmicas principales 113 se pueden configurar para aplicar cualquier número de técnicas de mitigación térmica en un esfuerzo por gestionar la generación de energía térmica cuando el PCD 100 está operativo y procesando cargas de trabajo. Sin embargo, durante las fases iniciales de una secuencia de arranque, la CPU principal 110 aún no está funcionando y así, los módulos gestores de políticas térmicas principales 113 que se ejecutan en la misma no están activados. Además, si las temperaturas asociadas con la CPU 110 (u otro componente de procesamiento tal como la memoria PoP 112A ejemplar) se elevan, entonces podría ser perjudicial para el estado de la CPU 110 y/o de otros componentes dentro del PCD 100 si se permite que la CPU 110 se ponga en funcionamiento y comience a generar cantidades excesivas de energía térmica.
[0032] En general, el sistema emplea dos módulos principales que, en algunos modos de realización, pueden estar contenidos en un único módulo: (1) un módulo TAB 101 para comparar mediciones de indicadores térmicos con umbrales predeterminados y retrasar, autorizar o modificar una secuencia de arranque en curso; y (2) un módulo de supervisión 114 para sondear sensores 157 pertinentes ubicados a lo largo del PCD 100 y transmitir las mediciones sondeadas al módulo TAB 101. De forma ventajosa, los modos de realización del sistema y procedimiento que incluyen los dos módulos principales aprovechan las mediciones del sensor para optimizar el estado global del PCD 100 y minimizar la necesidad de colapsos de potencia y reinicios que afectan negativamente la experiencia del usuario.
[0033] Un procesador LP 111, por ejemplo un procesador de gestor de potencia de recursos ("RPM"), que se pone en funcionamiento al principio en una secuencia de arranque y consume bajos niveles de potencia (en consecuencia generando niveles relativamente bajos de energía térmica) se puede configurar para gestionar una secuencia de arranque de modo que autorice a otros componentes de mayor consumo de potencia, tales como la CPU 110, a que se pongan en funcionamiento. Como se entenderá por un experto en la técnica, un procesador LP 111 se puede configurar para controlar cualquier número de funciones que incluyen, pero sin limitarse a, la conmutación del reloj, la conmutación de la potencia, etc. Un sistema y procedimiento para implementar una secuencia de arranque térmicamente consciente no se limita, sin embargo, a aprovechar un procesador de RPM ya que cualquier componente dentro de un PCD que se configure para ejecutarse al principio en una secuencia de arranque puede ser adecuado para la implementación de un modo de realización dado.
[0034] Volviendo a la ilustración de la FIG. 1, el procesador LP 111 se muestra en comunicación con un módulo TAB 101, un módulo de supervisión 114 y dos componentes ejemplares dentro del PCD 100; la memoria PoP 112A y la CPU 110. Especialmente, la totalidad o parte de la carga de trabajo del módulo TAB 101 y/o del módulo de supervisión 114 se puede procesar por el procesador LP 111. Se entenderá que la memoria PoP 112 a y la CPU 110 se muestran solo para propósitos ilustrativos y, como tales, los modos de realización de los sistemas y procedimientos para implementar una secuencia de arranque térmicamente consciente no están limitados en la aplicación a memorias PoP y/o CPU. Más bien, se entenderá que se pueden usar diversos modos de realización de los sistemas y procedimientos para optimizar el estado de cualquier componente dentro de un PCD 100 que pueda sufrir como resultado de completar una secuencia de arranque en condiciones térmicas inferiores a las ideales.
[0035] Además, aunque en general se hace referencia a los sensores 157 en esta descripción como que miden un indicador térmico en forma de una lectura de temperatura en el troquel o fuera del troquel, se contempla que algunos modos de realización de un sistema y procedimiento para implementar una secuencia de arranque térmicamente consciente pueden aprovechar sensores que miden parámetros de indicadores térmicos distintos de la temperatura. Por ejemplo, como se establece anteriormente, se contempla que en algunos modos de realización los sensores 157 puedan medir un indicador térmico en forma de un estado de carga de una batería para determinar si la batería tiene capacidad para soportar una carga de procesamiento que resultará de una secuencia de arranque completada. O, en algunos modos de realización, los sensores 157 pueden medir los niveles de corriente eléctrica en los rieles de potencia para deducir los niveles de energía térmica de un componente dado. Como tal, aunque es conveniente en diversos puntos de la presente descripción hacer referencia al indicador térmico simplemente como una "medición de temperatura" o "lectura de temperatura" o similar, un experto en la técnica reconocerá que los modos de realización descritos y sus equivalentes no se limitan a aprovechar las mediciones de los indicadores térmicos en forma directa de una medición de temperatura. Más bien, se reconocerá que está completamente dentro del alcance de la presente divulgación que se pueda usar cualquier indicador de niveles de energía térmica por un modo de realización para determinar o activar una política de arranque térmicamente consciente.
[0036] El módulo de supervisión 114 sondea lecturas tomadas de los sensores 157, tales como, por ejemplo, lecturas de temperatura. En la ilustración de la FIG. 1, los sensores 157B están ubicados fuera del chip 102 y los sensores ejemplares restantes 157A están ubicados cercanos a la memoria PoP 112A y a los núcleos 222, 224, 226, 228 de la CPU 110. En un caso de uso ejemplar, el PCD 100 puede haber experimentado temperaturas de procesamiento elevadas en la CPU 110 que resultan de una intensa sesión de juego de alta carga de trabajo. El módulo de supervisión 114 que sondea los sensores 157A asociados con uno o más de los núcleos 222, 224, 226, 228 de la CPU 110 puede reconocer los niveles de alta temperatura y comunicarlos al módulo TAB 101. El módulo TAB 101 puede comparar los niveles de temperatura medidos con un umbral predeterminado y dar instrucciones al procesador LP 111 de retrasar el encendido de la CPU 110 hasta que parte de la energía térmica que provoca las elevadas temperaturas se haya disipado a niveles más seguros. De forma similar, las temperaturas medidas cercanas a la memoria PoP 112A que superen los niveles seguros para el estado de la memoria PoP 112A pueden activar el módulo TAB 101 para que dé instrucciones al procesador LP 111 para retrasar la secuencia de arranque en un esfuerzo por evitar la generación de energía térmica que podría provocar que la temperatura cerca del dispositivo PoP 112A alcance niveles críticos. De forma similar, el sensor de fuera de chip 157B se puede situar para medir la temperatura de contacto del PCD 100 y retrasar o autorizar una secuencia de arranque en base a un umbral predeterminado para una temperatura de contacto aceptable.
[0037] Volviendo al caso de uso ejemplar, otros modos de realización de un módulo TAB 101 pueden consultar una tabla de búsqueda de rendimiento térmico ("TPL") 24 para determinar los niveles de potencia reducida a los que se pueden arrancar uno o más componentes de procesamiento sin afectar excesivamente el estado térmico del PCD 100. Por ejemplo, la medición de temperatura sondeada en un sensor 157A puede indicar que la temperatura cerca de la CPU 110 se está acercando a un nivel que podría ser perjudicial para la memoria PoP 112A pero que no ha superado dicho umbral. En dicho caso, el módulo TAB 101 puede determinar a partir de su consulta de la tabla de TPL 24 que la CPU 110 se puede accionar a un cincuenta por ciento de su frecuencia máxima sin riesgo de generar suficiente energía para provocar que se supere el umbral. En consecuencia, el módulo TAB 101 puede modificar la secuencia de arranque de modo que la c Pu 110 se accione a un cincuenta por ciento de su frecuencia máxima, optimizando de este modo la experiencia del usuario al poner en funcionamiento la CPU 110 sin poner en peligro el estado de la memoria PoP 112A. Se describirán más detalles relativos a los estados de arranque térmico ejemplares en relación con las figs. 4-5 y 7.
[0038] La FIG. 2 es un diagrama de bloques funcional que ilustra un aspecto no limitante, ejemplar, del PCD 100 de la FIG. 1 en forma de un teléfono inalámbrico para implementar procedimientos y sistemas que retrasan, autorizan o modifican una secuencia de arranque en condiciones térmicas sondeadas. Como se muestra, el PCD 100 incluye un sistema en chip 102 que incluye una unidad de procesamiento central ("CPU") de múltiples núcleos 110 y un procesador de señales analógicas 126 que se acoplan entre sí. El sistema en chip 102 también incluye un procesador de baja potencia ("LP") 111, tal como un procesador de gestor de potencia de recursos. La CPU 110 puede comprender un núcleo cero 222, un primer núcleo 224 y un N-ésimo núcleo 230 como se entiende por un experto en la técnica. Además, en lugar de una CPU 110, también se puede emplear un procesador de señales digitales ("DSP") como se entiende por un experto en la técnica.
[0039] En general, el módulo de arranque térmicamente consciente ("TAB") 101 puede ser responsable de comparar las mediciones relacionadas con la temperatura con umbrales predeterminados y, en base a las comparaciones, elegir autorizar, retrasar o modificar una secuencia de arranque del PCD 100. De forma ventajosa, al retrasar o modificar una secuencia de arranque cuando las temperaturas sondeadas superan umbrales predeterminados, o caen dentro de intervalos de estado térmico predefinidos, un módulo TAB 101 puede ayudar a un PCD 100 a gestionar las condiciones térmicas y/o las cargas térmicas y evitar experimentar condiciones térmicas adversas, tales como, por ejemplo, alcanzar temperaturas críticas durante una secuencia de arranque.
[0040] La FIG. 2 también muestra que el PCD 100 puede incluir un módulo de supervisión 114. El módulo de supervisión 114 se comunica con múltiples sensores operativos (por ejemplo, los sensores térmicos 157) distribuidos a lo largo del sistema en chip 102 y con el procesador LP 111 del PCD 100, así como con el módulo TAB 101. El módulo TAB 101 puede trabajar con el módulo de supervisión 114 para identificar al principio en una secuencia de arranque las condiciones térmicas adversas en relación con los umbrales y/o intervalos de temperatura predeterminados y retrasar o modificar la secuencia de arranque en un esfuerzo por gestionar la disipación de energía térmica.
[0041] Como se ilustra en la FIG. 2, un controlador de visualización 128 y un controlador de pantalla táctil 130 se acoplan al procesador de señales digitales 110. Un visualizador de pantalla táctil 132 externo al sistema en chip 102 se acopla al controlador de visualización 128 y al controlador de pantalla táctil 130. El PCD 100 puede incluir además un codificador de vídeo 134, por ejemplo, un codificador de línea de alternancia de fase ("PAL"), un codificador de color con memoria secuencial ("SECa M"), un codificador del comité de sistema(s) nacional(es) de televisión ("NTSC") o cualquier otro tipo de codificador de vídeo 134. El codificador de vídeo 134 se acopla a la CPU de múltiples núcleos 110. Un amplificador de vídeo 136 se acopla al codificador de vídeo 134 y al visualizador de pantalla táctil 132. Un puerto de vídeo 138 se acopla al amplificador de vídeo 136. Como se representa en la FIG. 2, un controlador de bus serie universal ("USB") 140 se acopla a la CPU 110. Además, un puerto USB 142 se acopla al controlador USB 140. Una memoria 112, que puede incluir una memoria PoP 112A, y una tarjeta de módulo de identidad de abonado ("SIM") 146 también se pueden acoplar a la CPU 110 y/o al procesador LP 111. Además, como se muestra en la FIG. 2, una cámara digital 148 se puede acoplar a la CPU 110. En un aspecto ejemplar, la cámara digital 148 es una cámara de dispositivo de acoplamiento de carga ("CCD") o una cámara de semiconductor de óxido de metal complementario ("CMOS").
[0042] Como se ilustra además en la FIG. 2, se puede acoplar un CÓDEC de audio estéreo 150 al procesador de señales analógicas 126. Además, un amplificador de audio 152 se puede acoplar al CÓDEC de audio estéreo 150. En un aspecto ejemplar, un primer altavoz estéreo 154 y un segundo altavoz estéreo 156 se acoplan al amplificador de audio 152. La FIG. 2 muestra que un amplificador de micrófono 158 también se puede acoplar al CÓd Ec de audio estéreo 150. Además, un micrófono 160 se puede acoplar al amplificador de micrófono 158. En un aspecto particular, un sintonizador de radio de modulación de frecuencia ("FM") 162 se puede acoplar al CÓDEC de audio estéreo 150. Además, una antena de FM 164 se acopla al sintonizador de radio FM 162. Además, los auriculares estéreo 166 se pueden acoplar al CÓDEC de audio estéreo 150.
[0043] La FIG. 2 indica además que un transceptor de radiofrecuencia ("RF") 168 se puede acoplar al procesador de señales analógicas 126. Un conmutador de RF 170 se puede acoplar al transceptor de RF 168 y a una antena de RF 172. Como se muestra en la FIG. 2, un teclado 174 se puede acoplar al procesador de señales analógicas 126.
Además, un auricular mono con un micrófono 176 se puede acoplar al procesador de señales analógicas 126. Además, un dispositivo vibrador 178 se puede acoplar al procesador de señales analógicas 126. La FIG. 2 también muestra que una fuente de alimentación 180, por ejemplo una batería, se acopla al sistema en chip 102 a través de un circuito integrado de gestión de potencia ("p M iC") 180. En un aspecto particular, la fuente de alimentación es una batería de CC recargable o una fuente de alimentación de CC que se obtiene de un transformador de corriente alterna ("CA") a CC que se conecta a una fuente de alimentación de Ca .
[0044] La CPU 110 también se puede acoplar a uno o más sensores térmicos en chip 157A, internos, así como a uno o más, sensores térmicos fuera de chip 157B, externos. Los sensores térmicos en chip 157A pueden comprender uno o más sensores de temperatura proporcionales a la temperatura absoluta ("PTAT") que se basan en una estructura de PNP vertical y normalmente se dedican a circuitos de integración a muy grande escala ("VLSI") de semiconductores de óxido metálico complementarios ("CMOS"). Los sensores térmicos fuera de chip 157B pueden comprender uno o más termistores. Los sensores térmicos 157 pueden producir una caída de voltaje que se convierte en señales d igitales con un controlador de convertidor de analógico a digital ("ADC") 103 (véase la FIG. 3A). Sin embargo, se pueden emplear otros tipos de sensores térmicos 157 sin apartarse del alcance de la invención.
[0045] Los sensores térmicos 157, además de controlarse y supervisarse por un controlador ADC 103, también se pueden controlar y supervisar por un módulo TAB 101. El módulo TAB 101 puede comprender software que se ejecuta por el procesador LP 111. Sin embargo, el módulo TAB 101 también se puede formar a partir de hardware y/o firmware sin apartarse del alcance de la invención. El módulo TAB 101 puede ser responsable de supervisar y aplicar retrasos y/o modificaciones de secuencia de arranque que se pueden activar por cualquier combinación de señales generadas por los sensores 157. Por ejemplo, el módulo TAB 101, en algunos modos de realización, puede comparar las temperaturas de funcionamiento medidas por los sensores 157A con un umbral de temperatura y elegir retrasar la secuencia de arranque en base a la comparación. En otros modos de realización, el módulo TPM 101 puede comparar una medición de "temperatura de contacto" tomada por un sensor 157B con un umbral de temperatura y, en base a la comparación, elegir modificar una secuencia de arranque para poner en funcionamiento el PCD 100 a un nivel reducido de potencia de procesamiento en un esfuerzo por evitar que la temperatura de contacto suba. Especialmente, la aplicación de retrasos y/o modificaciones de la secuencia de arranque por el módulo TAB 101 puede ayudar a un PCD 100 a optimizar la experiencia del usuario al evitar temperaturas críticas y colapsos de potencia y reinicios repetitivos.
[0046] El visualizador de pantalla táctil 132, el puerto de vídeo 138, el puerto USB 142, la cámara 148, el primer altavoz estéreo 154, el segundo altavoz estéreo 156, el micrófono 160, la antena de FM 164, los auriculares estéreo 166, el conmutador de RF 170, la antena de RF 172, el teclado 174, el auricular mono 176, el vibrador 178, los sensores térmicos 157B, el PMIC 180 y la fuente de alimentación 188 son externos al sistema en chip 102. Sin embargo, se debe entender que el módulo de supervisión 114 también puede recibir una o más indicaciones o señales desde uno o más de estos dispositivos externos por medio del procesador de señales analógicas 126 y la CPU 110 y el procesador LP 111 para ayudar en la gestión en tiempo real de los recursos que pueden funcionar en el PCD 100. Por ejemplo, las señales sondeadas y generadas por el módulo de supervisión 114 se pueden usar por los módulos de gestión de políticas térmicas ("TPM") principales 113 para gestionar la generación de energía térmica en el PCD 100 después de la finalización de una secuencia de arranque. Además, se entenderá que uno o más de estos dispositivos representados como externos al sistema en chip 102 en el modo de realización ejemplar de un PCD 100 en la FIG. 2 pueden residir en el chip 102 en otros modos de realización ejemplares.
[0047] En un aspecto particular, una o más de las etapas del procedimiento descritas en el presente documento se pueden implementar por instrucciones ejecutables y parámetros almacenados en la memoria 112 que forman el uno o más módulos TAB 101 y el/los módulo(s) TPM 113. Estas instrucciones que forman el módulo TAB 101 y el/los módulo(s) TPM 113 se pueden ejecutar por la CPU 110, el procesador de señales analógicas 126, el procesador LP 111 u otro procesador, además del controlador ADC 103 para realizar los procedimientos descritos en el presente documento. Además, los procesadores 110, 111, 126, la memoria 112, las instrucciones almacenadas en la misma, o una combinación de los mismos pueden servir como un medio para realizar una o más de las etapas del procedimiento descritas en el presente documento.
[0048] La FIG. 3A es un diagrama de bloques funcional que ilustra una disposición espacial ejemplar de hardware para el chip 102 ilustrado en la FIG. 2. De acuerdo con este modo de realización ejemplar, la CPU de aplicaciones 110 y el procesador LP 111 se sitúan en la región lateral izquierda lejana del chip 102, mientras que la CPU del módem 168, 126 se sitúa en una región lateral derecha lejana del chip 102. La CPU de aplicaciones de 110 pueden comprender un procesador de múltiples núcleos que incluye un núcleo cero 222, un primer núcleo 224 y un N-ésimo núcleo 230. La CPU de aplicaciones 110 puede ejecutar un módulo TPM 113 (cuando está incorporado en el software) o puede incluir un módulo TPM 113 (cuando está incorporado en el hardware). De forma similar, el procesador LP 111 puede ejecutar un módulo TAB 101 (cuando está incorporado en el software) o puede incluir un módulo TAB 101 (cuando está incorporado en el hardware). La CPU de la aplicación 110 se ilustra además para incluir el módulo del sistema operativo ("O/S") 207. El procesador LP 111 se ilustra además en relación con un controlador ADC 103 y para incluir un módulo de supervisión 114. La CPU de aplicaciones 110 se puede acoplar a uno o más bucles de bloqueo de fase ("PLL") 209A, 209B, que se sitúan adyacentes a la CPU de aplicaciones 110 y en la región lateral izquierda del chip 102. El módulo de supervisión 114 y el controlador ADC 103 pueden ser responsables de supervisar y rastrear múltiples sensores térmicos 157 que se pueden proporcionar "en chip" 102 y "fuera de chip" 102.
[0049] Los sensores térmicos internos o en chip 157A se pueden situar en diversas ubicaciones y asociar con uno o más componentes próximos a las ubicaciones. Como ejemplo no limitante, un primer sensor térmico interno 157A1 se puede situar en una región central superior del chip 102 entre la CPU de aplicaciones 110 y la CPU del módem 168,126 y adyacente a la memoria interna 112. Un segundo sensor térmico interno 157A2 se puede situar debajo de la CPU del módem 168, 126 en una región lateral derecha del chip 102. Este segundo sensor térmico interno 157A2 también se puede situar entre una máquina con conjunto de instrucciones de ordenador con conjunto de instrucciones reducidas ("RISC") avanzada ("ARM") 177 y un primer procesador de gráficos 135A. Un controlador de digital a analógico ("DAC") 173 se puede situar entre el segundo sensor térmico interno 157A2 y la CPU del módem 168, 126.
[0050] Un tercer sensor térmico interno 157A3 se puede situar entre un segundo 135B procesador de gráficos y un tercer procesador de gráficos 135C en una región derecha lejana del chip 102. Un cuarto sensor térmico interno 157A4 se puede situar en una región del derecha lejana del chip 102 y debajo de un cuarto procesador de gráficos 135D. Y un quinto sensor térmico interno 157A5 se puede situar en una región izquierda lejana del chip 102 y adyacente a los PLL 209.
[0051] Uno o más sensores térmicos externos 157B también se pueden acoplar al controlador ADC 103. El primer sensor térmico externo 157B1 se puede situar fuera del chip y adyacente a un cuadrante superior derecho del chip 102 que puede incluir la CPU del módem 168, 126, la ARM 177 y el DAC 173. Un segundo sensor térmico externo 157B2 se puede situar fuera del chip y adyacente a un cuadrante inferior derecho del chip 102 que puede incluir el tercer y cuarto procesadores de gráficos 135C, 135D. Especialmente, uno o más de los sensores térmicos externos 157B se pueden aprovechar para indicar la temperatura de contacto del PCD 100, es decir, la temperatura que se puede experimentar por un usuario en contacto con el PCD 100.
[0052] Un experto en la técnica reconocerá que se pueden proporcionar otras diversas disposiciones espaciales del hardware ilustrado en la FIG. 3A sin apartarse del alcance de la invención. La FIG. 3A ilustra aún una disposición espacial ejemplar y cómo el módulo TAB 101, el módulo de supervisión 114 y el controlador ADC 103 pueden reconocer las condiciones térmicas que son una función de la disposición espacial ejemplar ilustrada en la FIG. 3A, comparar las condiciones térmicas reconocidas con los umbrales de temperatura y aplicar lógica para autorizar, retrasar o modificar una secuencia de arranque.
[0053] La FIG. 3B es un diagrama esquemático que ilustra una arquitectura de software ejemplar del PCD 100 de la FIG. 2 y la FIG. 3A para admitir secuencias de arranque térmicamente consciente. Como se ilustra en la FIG. 3B, el procesador LP 111 se acopla a la memoria 112 por medio de un bus 211. La CPU 110, como se indica anteriormente, es un procesador de múltiples núcleos que tiene N procesadores de núcleo 222, 224, Nésimo y puede incluir o ejecutar el módulo gestor de políticas térmicas principal 113 una vez que el PCD 100 esté completamente arrancado y en ejecución. Como es conocido por un experto en la técnica, cada uno del primer núcleo 222, el segundo núcleo 224 y el Nésimo núcleo 230 pueden estar disponibles para admitir una aplicación o programa dedicado tal como, por ejemplo, el/los programa(s) asociado(s) con el módulo TPM principal 113. De forma alternativa, una o más aplicaciones o programas se pueden distribuir para procesarse a través de dos o más de los núcleos disponibles. Especialmente, aunque la ejecución de procedimientos para el arranque térmicamente consciente se describe en relación con la autorización, el retraso o la modificación de secuencias de arranque en relación con la CPU 110, un experto en la técnica reconocerá que la aplicación de dichos procedimientos puede autorizar, retrasar o modificar de forma ventajosa las secuencias de arranque en relación con cualquier componente dentro del PCD 100 que se pueda identificar como agresor térmico.
[0054] El procesador LP 111 puede recibir comandos desde el módulo TAB 101 que puede comprender software y/o hardware. Si se incorpora como software, el módulo TAB 101 comprende instrucciones que se ejecutan por el procesador LP 111 que emite comandos a otros programas de aplicación que se ejecutan por el procesador LP 111 y/u otros procesadores. Por ejemplo, el módulo t Ab 101 puede dar instrucciones al procesador LP 111 para que haga que la secuencia de arranque de un determinado componente se retrase, de modo que los niveles de energía térmica permanecerán por debajo de un umbral que puede dar cabida al arranque de un componente de más alta prioridad. Más específico para el ejemplo, un módulo TAB 101 que busca asegurar que una determinada aplicación de alta prioridad dedicada al núcleo 222 de la CPU 110 se ponga en funcionamiento rápidamente puede hacer que el procesador LP 111 retrase el arranque del núcleo adyacente térmicamente agresivo 224. De forma alternativa, el módulo TAB 101 puede determinar que el núcleo térmicamente agresivo 224 se puede poner en funcionamiento a una frecuencia reducida, mitigando de este modo la cantidad de energía térmica que genera y asegurando que los niveles de temperatura cercanos al núcleo 222 no superen un umbral crítico. De forma ventajosa, al hacerlo, el módulo TAB 101 puede ser capaz de optimizar la experiencia del usuario al hacer que la aplicación de alta prioridad asociada con el núcleo 222 esté disponible, incluso aunque el PCD 100 se esté arrancando en condiciones térmicas inferiores a las ideales.
[0055] El bus 211 puede incluir múltiples rutas de comunicación por medio de una o más conexiones cableadas o inalámbricas, como se conoce en la técnica. El bus 211 puede tener elementos adicionales, que se omiten por simplicidad, tales como controladores, memorias intermedias (cachés), controladores, repetidores y receptores, para posibilitar las comunicaciones. Además, el bus 211 puede incluir conexiones de dirección, control y/o datos para posibilitar las comunicaciones apropiadas entre los componentes mencionados anteriormente.
[0056] Cuando la lógica usada por el PCD 100 se implementa en software, como se muestra en la FIG. 3B, cabe destacar que uno o más de la lógica de inicio 250, la lógica de gestión 260, la lógica de interfaz de arranque térmico 270, las aplicaciones en el almacén de aplicaciones 280, los datos asociados con la tabla de TPL 24 y partes del sistema de archivos 290 se pueden almacenar en cualquier medio legible por ordenador para su uso por, o en relación con, cualquier sistema o procedimiento relacionado con ordenador.
[0057] En el contexto de este documento, un medio legible por ordenador es un dispositivo o medio electrónico, magnético, óptico u otro físico que puede contener o almacenar un programa de ordenador y datos para su uso por o en relación con un sistema o procedimiento relacionado con ordenador. Los diversos elementos lógicos y almacenes de datos se pueden incorporar en cualquier medio legible por ordenador para su uso por o en relación con un sistema, aparato o dispositivo de ejecución de instrucciones, tal como un sistema basado en ordenador, un sistema que contiene un procesador u otro sistema que puede obtener las instrucciones desde el sistema, aparato o dispositivo de ejecución de instrucciones y ejecutar las instrucciones. En el contexto de este documento, un "medio legible por ordenador" puede ser cualquier medio que pueda almacenar, comunicar, propagar o transportar el programa para su uso por o en relación con el sistema, aparato o dispositivo de ejecución de instrucciones.
[0058] El medio legible por ordenador puede ser, por ejemplo pero sin limitarse a, un sistema, aparato, dispositivo o medio de propagación electrónico, magnético, óptico, electromagnético, infrarrojo o semiconductor. Los ejemplos más específicos (una lista no exhaustiva) del medio legible por ordenador incluirían los siguientes: una conexión eléctrica (electrónica) que tiene uno o más cables, un disquete (magnético) para ordenador portátil, una memoria de acceso aleatorio ("RAM") (electrónica), una memoria de solo lectura ("ROM") (electrónica), una memoria de solo lectura programable y borrable ("EPROM", "EEPROM" o memoria "Flash") (electrónica), una fibra óptica (óptica) y una memoria de solo lectura de disco compacto portátil ("CDROM") (óptica). Téngase en cuenta que el medio legible por ordenador podría ser incluso papel u otro medio adecuado sobre el que se imprime el programa, ya que el programa se puede capturar electrónicamente, por ejemplo, por medio del escaneo óptico del papel u otro medio, a continuación compilar, interpretar o procesar de otro modo de una manera adecuada si es necesario, y a continuación almacenar en una memoria de ordenador.
[0059] En un modo de realización alternativo, donde una o más de la lógica de inicio 250, la lógica de gestión 260 y tal vez la lógica de interfaz de arranque térmico 270 se implementan en hardware, las diversas lógicas se pueden implementar con cualquiera o una combinación de las siguientes tecnologías, cada una de las cuales se conoce bien en la técnica: un circuito(s) de lógica discreta que tiene(n) puertas lógicas para implementar funciones lógicas tras señales de datos, un circuito integrado específico de la aplicación ("ASIC") que tiene puertas lógicas combinacionales apropiadas, una matriz/matrices de puertas programables ("PGA"), una matriz de puertas programables in situ ("FPGA"), etc.
[0060] La memoria 112 puede ser un dispositivo de almacenamiento de datos no volátil tal como una memoria flash o un dispositivo de memoria de estado sólido. Aunque representado como un único dispositivo, la memoria 112 puede ser un dispositivo de memoria distribuida con almacenes de datos separados acoplados al procesador de señales digitales y/o al procesador LP 111.
[0061] En un modo de realización ejemplar para el arranque térmicamente consciente, la lógica de inicio 250 incluye una o más instrucciones ejecutables para identificar, cargar y ejecutar selectivamente un programa de selección para gestionar o controlar una secuencia de arranque. La lógica de inicio 250 puede identificar, cargar y ejecutar un programa de selección en base a la comparación, mediante el módulo TAB 101, de diversas mediciones de temperatura con ajustes de temperatura de umbral. Se puede encontrar un programa de selección ejemplar en el almacén de programas 296 del sistema de archivos integrado 290 y se define por una combinación específica de un algoritmo de arranque 297 y un conjunto de parámetros 298. En determinados modos de realización, el algoritmo de arranque 297 se puede dirigir hacia el escalonamiento de rendimiento de uno o más componentes en el PCD 100. El programa de selección ejemplar, cuando se ejecuta por el procesador LP 111, puede funcionar de acuerdo con una o más señales proporcionadas por el módulo de supervisión 114 en combinación con las señales de control proporcionadas por el módulo TAB 101 para retrasar una secuencia de arranque, autorizar la finalización de una secuencia de arranque, o modificar una secuencia de arranque de modo que uno o más componentes se pongan en funcionamiento a un nivel reducido de consumo de potencia. A este respecto, el módulo de supervisión 114 puede proporcionar uno o más indicadores de acontecimientos, procesos, aplicaciones, condiciones de estado de recursos, tiempo transcurrido, así como la temperatura como se reciben desde el módulo TAB 101.
[0062] La lógica de gestión 260 incluye una o más instrucciones ejecutables para terminar una política de arranque térmica dada, así como identificar, cargar y ejecutar selectivamente una política de arranque térmica más adecuada. La lógica de gestión 260 se dispone para realizar estas funciones en tiempo de ejecución o mientras el PCD 100 se acciona y está en uso por un operario del dispositivo. Se puede encontrar un programa de reemplazo en el almacén de programas 296 del sistema de archivos integrado 290 y, en algunos modos de realización, se puede definir mediante una combinación específica de un algoritmo de arranque 297 y un conjunto de parámetros 298.
[0063] El programa de reemplazo, cuando se ejecuta por el procesador LP 111, puede funcionar de acuerdo con una o más señales proporcionadas por el módulo de supervisión 114 para autorizar, retrasar o modificar una secuencia de arranque para uno o más componentes dentro del PCD 100. A este respecto, el módulo de supervisión 114 puede proporcionar uno o más indicadores de acontecimientos, procesos, aplicaciones, condiciones de estado de recursos, tiempo transcurrido, temperatura, fuga de corriente, etc., en respuesta a señales de control que se originan en el módulo TAB 101.
[0064] La lógica de interfaz 270 incluye una o más instrucciones ejecutables para presentar, gestionar e interactuar con entradas externas para observar, configurar o actualizar de otro modo la información almacenada en el sistema de archivos integrado 290. En un modo de realización, la lógica de interfaz 270 puede funcionar junto con las entradas del fabricante recibidas por medio del puerto USB 142. Estas entradas pueden incluir uno o más programas que se van a eliminar de o añadir al almacén de programas 296. De forma alternativa, las entradas pueden incluir ediciones o cambios en uno o más de los programas en el almacén de programas 296. Además, las entradas pueden identificar uno o más cambios en, o reemplazos completos de una o ambas de la lógica de inicio 250 y la lógica de gestión 260. A modo de ejemplo, las entradas pueden incluir un cambio en la lógica de gestión 260 que da instrucciones al PCD 100 para que autorice una secuencia de arranque independientemente de las mediciones de temperatura cuando el arranque se ha retrasado durante un determinado número de veces o una duración agregada.
[0065] La lógica de interfaz 270 posibilita que un fabricante configure y ajuste de manera controlable la experiencia de un usuario final en condiciones de funcionamiento definidas en el PCD 100. Cuando la memoria 112 es una memoria flash, uno o más de la lógica de inicio 250, la lógica de gestión 260, la lógica de interfaz 270, los programas de aplicación en el almacén de aplicaciones 280, los datos en la tabla de TPL 24 o la información en el sistema de archivos integrado 290 se pueden editar, reemplazar o modificar de otro modo. En algunos modos de realización, la lógica de interfaz 270 puede permitir que un usuario final u operario del PCD 100 busque, ubique, modifique o reemplace la lógica de inicio 250, la lógica de gestión 260, las aplicaciones en el almacén de aplicaciones 280, los datos en la tabla de TPL 24 y la información en el sistema de archivos integrado 290. El operario puede usar la interfaz resultante para realizar cambios que se implementarán tras el próximo inicio del PCD 100. De forma alternativa, el operario puede usar la interfaz resultante para realizar cambios que se implementan durante el tiempo de ejecución.
[0066] El sistema de archivos integrado 290 incluye un almacén de modo de arranque térmicamente consciente dispuesto jerárquicamente 292. A este respecto, el sistema de archivos 290 puede incluir una sección reservada de su capacidad de sistema de archivos total para el almacenamiento de información para la configuración y gestión de los diversos parámetros 298 y algoritmos de secuencia de arranque 297 usados por el PCD 100. Como se muestra en la FIG. 3B, el almacén 292 incluye un almacén de programas 296, que incluye uno o más programas de arranque térmicamente consciente.
[0067] La FIG. 4 es un diagrama de estado ejemplar 400 que ilustra diversos estados de arranque térmico 405, 410, 415, 420 que se pueden reconocer y gestionar por un módulo TAB 101 para optimizar la QoS y la experiencia del usuario global de un PCD 100. El primer estado de arranque térmico 405 puede comprender un estado "normal" en el que la política de arranque térmicamente consciente del módulo TAB 101 permanece sin cambios. En este primer y estado normal 405 ejemplar, las temperaturas sondeadas por el módulo de supervisión 114 están muy por debajo de los umbrales predeterminados, de modo que los componentes dentro del PCD 100 se pueden arrancar a capacidades y funcionalidad de potencia máxima sin ningún peligro o riesgo de alcanzar temperaturas críticas. En este estado ejemplar, la temperatura de contacto u otro indicador térmico sondeado por el módulo de supervisión 114 puede estar muy por debajo de un umbral máximo.
[0068] El segundo estado de arranque térmico 410 puede comprender un estado "elevado" en el que el módulo TAB 101 puede reconocer indicadores térmicos elevados sondeados por el módulo de supervisión y modificar su política de arranque térmicamente consciente en relación con uno o más componentes de procesamiento del PCD 100. Este segundo estado 410 ejemplar se puede alcanzar o entrar en mediante el módulo TAB 101 cuando un indicador térmico sugiere que todos los componentes del PCD 100 no se pueden arrancar a la potencia máxima sin poner en peligro el estado del PCD 100 o la entrega de servicios críticos de misión.
[0069] En el segundo estado de arranque térmico elevado 410 el módulo TAB 101 puede consultar la tabla de TPL 24 y solicitar al procesador LP 111 escalonar el rendimiento de uno o más componentes de procesamiento de modo que la energía térmica generada como resultado de arrancar los componentes no provocará que el PCD 100 entre en un estado grave o crítico. En este estado particular 410, el módulo TAB 101 se diseña para modificar una secuencia de arranque al implementar o solicitar el escalonamiento de rendimiento que puede ser apenas perceptible por un operario y que puede degradar de forma mínima una calidad de servicio proporcionada por el PCD 100. Detalles adicionales sobre este segundo estado de arranque térmico elevado 410 se describirán a continuación en relación con la FIG. 5.
[0070] El tercer estado de arranque térmico 415 puede comprender un estado "grave" en el que el módulo TAB 101 solicita y/o aplica políticas de arranque térmicamente consciente más agresivas con respecto al segundo estado elevado 410 descrito anteriormente. Esto significa que en este estado, el módulo TAB 1010 está menos preocupado por la calidad de servicio desde la perspectiva del operario. En este estado de arranque térmico grave, el módulo TAB 101 está más preocupado por mitigar o reducir los niveles de disipación de energía térmica globales para disminuir la temperatura del PCD 100 antes de completar una secuencia de arranque. En este tercer estado de arranque térmico 415, uno o más componentes de un PCD 100 se pueden escalonar gravemente en el arranque completo, o el arranque de uno o más componentes se elimina por completo, de modo que las implicaciones se perciben u observan fácilmente por un operario. El tercer estado de arranque térmico grave 415 y sus correspondientes políticas de arranque térmicamente consciente aplicadas o activadas por el módulo TAB 101 se describirán con mayor detalle a continuación en relación con la FIG. 5.
[0071] Como ilustran las flechas en este diagrama, cada estado de arranque térmico se puede iniciar en secuencia o se pueden iniciar fuera de secuencia, dependiendo de la magnitud del cambio en la disipación de la energía térmica que se puede detectar. Así que esto significa que el módulo TAB 101 puede abandonar el primer y estado de arranque térmico normal 405 y entrar en o iniciar políticas de arranque térmicamente consciente asociadas con el tercer y estado de arranque térmico grave 415, en base a un cambio en un indicador térmico que se detecta por los sensores 157. De forma similar, el PCD 100 puede estar en el segundo o estado de arranque térmico elevado 410 y entrar en o iniciar el cuarto o estado crítico 420 en base a un cambio reconocido en un indicador térmico. En este tercer y estado crítico 420 ejemplar, el módulo TAB 101 puede escalonar significativamente los niveles de potencia de tantos componentes de procesamiento como sea posible para arrancar el PCD 100 sin alcanzar temperaturas que provoquen que uno o más componentes contenidos dentro del PCD 100 experimenten inestabilidad térmica o incluso daño permanente.
[0072] Este cuarto y estado de arranque térmico crítico 420 puede retrasar completamente la secuencia de arranque de un PCD 100 para evitar temperaturas críticas o daño permanente a uno o más componentes dentro del PCD 100. El cuarto estado de arranque térmico 420 puede comprender un estado "crítico" en el que el módulo TAB 101 aplica o activa una serie de retrasos de la secuencia de arranque para proporcionar la oportunidad de que la energía térmica se disipe a niveles más seguros antes de poner en funcionamiento los componentes. El cuarto y estado térmico crítico 420 se describirá con mayor detalle a continuación en relación con la FIG. 5.
[0073] Los diversos procedimientos para el arranque térmicamente consciente no se limitan a los cuatro estados de arranque térmico 405, 410, 415 y 420 ilustrados en la FIG. 4. Dependiendo de un PCD 100 particular, se pueden proporcionar menos estados de arranque térmico o adicionales sin apartarse del alcance de la invención. Es decir, un experto en la técnica reconocerá que los estados de arranque térmico adicionales pueden mejorar la funcionalidad y el funcionamiento de un PCD 100 particular, mientras que en otras situaciones pueden ser preferentes menos estados de arranque térmico para un PCD 100 particular que tiene su propio hardware y/o software único.
[0074] La FIG. 5 es un diagrama 500 que ilustra políticas de arranque térmicamente consciente ejemplares que se pueden aplicar para optimizar la QoS y la experiencia del usuario global y dependen de un estado de arranque térmico particular de un PCD 100, tal como los estados de arranque ejemplares 405, 410, 415, 420 descritos con relación a las ilustraciones de la FIG. 4. Como se indica previamente, en este primer estado de arranque térmico 405, los indicadores térmicos como se mide por los sensores 157 y se sondea por el módulo de supervisión 114 pueden indicar que el PCD 100 está experimentando niveles de energía térmica seguros tras los cuales una secuencia de arranque de potencia máxima no tendrá ningún efecto perjudicial. Normalmente, en este primer estado de arranque térmico, el módulo TAB 101 no está aplicando o no ha solicitado ninguna política de arranque térmicamente consciente, de modo que los componentes en el PCD 100 se arrancan a su máximo potencial y más alto rendimiento. En consecuencia, una secuencia de arranque se puede completar sin modificación o retraso, y la funcionalidad completa del PCD 100 se pone a disposición del usuario lo más rápidamente posible.
[0075] En el segundo estado de arranque térmico 410, también denominado el estado elevado 410, el módulo TAB 101 puede iniciar o solicitar políticas de arranque térmicamente consciente con el objetivo de mantener alto rendimiento con poca o ninguna percepción de degradaciones en la calidad de servicio como se percibe por el operario del PCD 100. El PCD 100 se arranca hasta niveles casi de potencia máxima con solo un leve escalonamiento de los componentes de procesamiento dedicados a cargas de trabajo de prioridad más baja. De forma alternativa, diversos componentes de procesamiento asociados con indicadores térmicos elevados se pueden arrancar a un nivel de potencia inferior al máximo, sin tener en cuenta la prioridad de las cargas de trabajo asignadas a los componentes.
[0076] Con referencia ahora al tercer estado de arranque térmico 415 de la FIG. 5, también conocido como el estado grave 415, el módulo TAB 101 puede aplicar o solicitar políticas de arranque térmicamente consciente más agresivas con un rendimiento reducido perceptible probable observado por un operario del PCD 100. De acuerdo con este estado de arranque térmico 415 ejemplar, el módulo TAB 101 puede provocar una reducción en la potencia a uno o más componentes como la GPU 182 y/o los núcleos de la CPU 110 cuando se arrancan. El módulo TAB 101 también puede retrasar completamente el arranque de algunos componentes a favor de poner en funcionamiento otros componentes de procesamiento que se asocian con cargas de trabajo de más alta prioridad. Esencialmente, las políticas de arranque térmicamente consciente de este tercer y estado de arranque térmico grave 415 pueden ser las mismas que las descritas anteriormente con respecto al segundo estado de arranque térmico elevado 410. Sin embargo, estas mismas políticas de arranque térmicamente consciente se pueden aplicar de una manera más agresiva.
[0077] Con referencia ahora al cuarto y estado de arranque térmico crítico 420 de la FIG. 5, el módulo TAB 101 puede reconocer que el PCD 100 está experimentando niveles críticos de disipación de energía térmica y, como tal, no puede soportar una secuencia de arranque de ningún hardware no esencial. El módulo TAB 101 puede dar instrucciones al procesador LP 111 para que retrase la secuencia de arranque por completo hasta que el exceso de energía térmica haya tenido la oportunidad de disiparse o, tal vez, autorizar solo el arranque del hardware esencial. Los módulos de hardware y/o software "no esenciales" pueden ser diferentes para cada tipo de PCD 100 particular. De acuerdo con un modo de realización ejemplar, todos los módulos de hardware y/o software no esenciales pueden incluir todos aquellos fuera de una función de llamada telefónica de emergencia al 911 y funciones de sistema de posicionamiento global ("GPS"). Esto significa que el módulo TAB 101 en este cuarto estado de arranque térmico crítico 420 puede provocar que se retrase el arranque de todos los componentes que no afectan las llamadas telefónicas de emergencia al 911 y la funcionalidad del GPS. El módulo TAB 101 puede autorizar o denegar el arranque de componentes en secuencia y/o en paralelo, dependiendo de las temperaturas críticas o los indicadores térmicos que se supervisan por el módulo de supervisión 114.
[0078] La FIG. 6 es un diagrama de flujo lógico que ilustra un procedimiento 600 para el arranque térmicamente consciente en un PCD 100 que incluye autorizar o retrasar una secuencia de arranque en base a indicadores térmicos supervisados. El procedimiento 600 de la FIG. 6 comienza con un primer bloque 605 en el que el módulo TAB 101 junto con el módulo de supervisión 114 sondean uno o más sensores indicadores térmicos 157, tales como sensores de temperatura, ubicados en o bien fuera del circuito integrado 102. Especialmente, como se explica anteriormente, los diversos sensores 157 se asocian con componentes dentro del PCD 100 y se sondean o supervisan durante las etapas iniciales de una secuencia de arranque. Como tal, en el momento en que la función representada por el bloque 605 se ejecuta inicialmente, muchos de los componentes dentro del PCD 100 no están en funcionamiento.
[0079] En el bloque de decisión 610, el módulo de TAB 101 compara las mediciones sondeadas en el bloque 605 con umbrales predeterminados (para esta ilustración, el indicador térmico y los umbrales asociados se describirán en el contexto de una lectura de temperatura). Los umbrales de temperatura predeterminados pueden indicar las temperaturas máximas aceptables a las que se pueden arrancar diversos componentes dentro del PCD 100 sin arriesgar ni poner en peligro el estado de los componentes de la generación y disipación de energía térmica potencialmente excesiva durante el proceso de arranque. Si se determina que las temperaturas medidas en el bloque de decisión 610 están por debajo de los umbrales pertinentes para los componentes asociados con los sensores sondeados 157, entonces se sigue la rama "no" al bloque 635 y se permite que el PCD 100 complete la secuencia de arranque. Especialmente, la finalización del proceso de arranque puede incluir la potencia máxima suministrada a los componentes de procesamiento tales como la CPU 110. De forma ventajosa, al sondear los sensores 157 y verificar que las temperaturas medidas son inferiores a los umbrales predeterminados de los componentes asociados con el/los sensor(es) 157, el PCD 100 se puede arrancar completamente y llevar a niveles máximos de calidad de servicio ("QoS") sin arriesgar el estado de los componentes dentro del PCD 100 o sacrificar excesivamente la experiencia del usuario.
[0080] Si se determina, en el bloque de decisión 610 que una o más de las temperaturas medidas superan los umbrales predeterminados, entonces el módulo TAB 101 puede deducir que la finalización de la secuencia de arranque provocará que la generación y disipación de energía térmica pondrán en peligro el estado de los componentes. En una situación de este tipo bajo el procedimiento ejemplar 600, se sigue la rama "sí" al bloque 615 y se retrasa la secuencia de arranque. De forma ventajosa, al retrasar la secuencia de arranque, la energía térmica puede tener la oportunidad de disiparse, reduciendo de este modo las temperaturas a niveles inferiores al umbral. La duración del retraso se puede predeterminar o, en algunos modos de realización, la duración del retraso se puede calcular en relación con la diferencia entre los valores medidos y los umbrales predeterminados.
[0081] Después de retrasar la secuencia de arranque en el bloque 615, los sensores de temperatura 157 se sondean de nuevo en el bloque 620 y se comparan de nuevo con los umbrales predeterminados. Si las temperaturas medidas indican que el retraso ha permitido que el exceso de energía térmica se disipe de modo que las temperaturas están ahora por debajo de los umbrales, entonces se sigue la rama "no" al bloque 635 y se permite que el PCD 100 complete la secuencia de arranque. Sin embargo, si en el bloque de decisión 625 una o más de las temperaturas todavía supera el/los umbral(es) predeterminado(s), entonces se sigue la rama "sí" al bloque de decisión 630.
[0082] En el bloque de decisión 630, se verifica el número de veces o la duración agregada del retraso y, si se ha cumplido un umbral predeterminado para los ciclos de retraso, entonces se puede seguir la rama "sí" al bloque 635 donde se permite que el PCD 100 complete la secuencia de arranque aunque las temperaturas medidas todavía estén por encima de los umbrales máximos. Especialmente, en aras de optimizar la QoS y la experiencia del usuario, se contempla que algunos modos de realización de un sistema y procedimiento para el arranque térmicamente consciente pueden incluir un número máximo de ciclos de retraso. El número máximo de ciclos, o la duración agregada de los ciclos de retraso, se puede calcular en base a un compromiso de riesgo al arrancar el PCD 100 en condiciones de temperatura elevada con los niveles de experiencia del usuario y QoS.
[0083] Si en el bloque de decisión 630 se determina que no se ha cumplido un número máximo de ciclos de retraso, o la duración agregada de los ciclos de retraso, entonces se puede seguir la rama "no" de vuelta al bloque 615 donde la secuencia de arranque se retrasa más para permitir la disipación de energía térmica adicional. De esta manera, la serie de bloques 615 a 630 se repite hasta que el algoritmo dicta que el procedimiento se mueva al bloque 635 y se permita que el PCD 100 complete la secuencia de arranque.
[0084] La FIG. 7 es un diagrama de flujo lógico que ilustra un procedimiento 700 para el arranque térmicamente consciente en un PCD 100 que incluye modificar una secuencia de arranque en base al reconocimiento de los estados de arranque térmico (véase las FIG. 4-5 para los estados ejemplares) y de acuerdo con la tabla de búsqueda de rendimiento térmico ejemplar de la FIG. 8. La FIG. 8 es una tabla de búsqueda de rendimiento térmico 24 ejemplar que se puede consultar mediante los modos de realización de un procedimiento para el arranque térmicamente consciente, tal como el procedimiento 700 ejemplar ilustrado en la FIG. 7. La tabla de búsqueda de rendimiento térmico 24 de la FIG. 8 se describirá en paralelo con el procedimiento de arranque térmicamente consciente 700 ejemplar.
[0085] Partiendo del bloque 705, el módulo de supervisión 114 puede sondear uno o más sensores 157 para obtener mediciones asociadas con un indicador térmico. Como se describe anteriormente, se contempla que las mediciones sondeadas por el módulo de supervisión 114 se puedan asociar con cualquier indicador térmico incluyendo, pero sin limitarse a, la temperatura de funcionamiento, la temperatura de contacto, la corriente de fuga en el/los riel(es) de potencia, el estado de carga de la batería, etc. Las mediciones del indicador térmico se pueden convertir en señales digitales y enviarse al módulo TAB 101. En el bloque 710, el módulo TAB 101 puede consultar la tabla de búsqueda de rendimiento térmico 24 (véase la FIG. 8) y comparar las mediciones con los diversos intervalos de indicadores térmicos contenidos en la tabla 24. Posteriormente, en el bloque de decisión 715, el módulo TAB 101 puede determinar cuál, si lo hubiera, de los umbrales contenidos en la tabla 24 se ha superado.
[0086] Con referencia a la ilustración de la FIG. 8, el indicador térmico está en forma de mediciones de temperatura y el umbral más bajo es de 65 °C. Por lo tanto, si en el bloque de decisión 715 el módulo TAB 101 determina a partir de su consulta de la tabla 24 que la medición de temperatura tomada en el bloque 705 está por debajo del umbral de 65 °C, entonces se puede aplicar la política de arranque térmico asociada con el estado de arranque térmico "normal" en el bloque 735. En la tabla de TPL 24 ejemplar de la FIG. 8, el estado de arranque térmico "normal" dicta que el módulo TAB 101 autorice la secuencia de arranque sin modificación, es decir, que los dos núcleos ejemplares se pongan en funcionamiento a una velocidad de procesamiento máxima de 1,5 GHz cada uno. Una vez que los dos núcleos se ponen en funcionamiento a las velocidades de procesamiento máximas de 1,5 GHz, en el bloque 740, el módulo TPM principal 113 se puede poner en funcionamiento para aplicar las políticas de gestión térmica e implementar las técnicas de gestión térmica.
[0087] Sin embargo, si en el bloque de decisión 715 el módulo TAB 101 determina a partir de la comparación en el bloque 710 que la medición de la temperatura supera un umbral consultado de la tabla de TPL 24, entonces se sigue la rama "sí" al bloque 720. En el bloque 720, el módulo TAB 101 puede seleccionar la política de arranque térmico apropiada de la tabla de TPL 24 en base al umbral más alto superado. Por ejemplo, con referencia a la ilustración de la FIG. 8, si la medición de temperatura tomada en el bloque 705 supera los 65 °C pero es menor que 76 °C, entonces se puede aplicar la política asociada con el estado de arranque térmico "elevado" en el bloque 725 por el módulo TAB 101. Es decir, el módulo TAB 101 puede modificar la secuencia de arranque dando instrucciones al procesador LP 111 para que arranque cada uno de los dos núcleos ejemplares a una frecuencia reducida de 918 MHz. De forma ventajosa, al modificar la secuencia de arranque de esta manera, la cantidad de energía térmica generada por los núcleos cuando se arranca completamente puede no ser suficiente para exacerbar las condiciones térmicas presentes y poner en peligro el estado de uno o más componentes dentro del PCD 100, pero sí para proporcionar un alto nivel de QoS y experiencia del usuario para el usuario del PCD 100.
[0088] Con referencia a los bloques 720 y 725, si en el bloque de decisión 715 se determina que la medición de temperatura supera los 76 °C pero no los 80 °C, el módulo TAB 101 puede aplicar la política de arranque térmico asociada con el estado de arranque térmico "grave" y dar instrucciones al procesador LP 111 para que complete solo el proceso de arranque para un único núcleo y a una frecuencia reducida de 786 MHz. Si bien la política de arranque térmico ejemplar del estado de arranque térmico grave es más agresiva que la descrita en relación con el estado de arranque elevado, un experto en la técnica reconocerá que la política puede proporcionar al menos alguna funcionalidad a un usuario de un PCD 100, incluso cuando se le pide al PCD 100 que arranque en condiciones térmicas graves que podrían dañar los componentes.
[0089] De forma similar, si el módulo TAB 101 determina a partir de su consulta de la tabla de TPL 24 que la temperatura medida supera los 80 °C, entonces se puede reconocer un estado de arranque térmico crítico y el procesador LP 111 recibirá instrucciones del módulo TAB 101 para que retrase toda la secuencia de arranque hasta que el exceso de energía térmica haya tenido la oportunidad de disiparse. Especialmente, como se describió en relación con el procedimiento 600 de la FIG. 6, el módulo de supervisión 101 puede continuar sondeando el indicador térmico (bloque 705) y el procedimiento 700 se repite hasta que el PCD 100 se arranque de acuerdo con una política de arranque térmico.
[0090] Una vez arrancado en el bloque 725 de acuerdo con una política de arranque térmico, en el bloque 730 determinados modos de realización de un módulo TAB 101 pueden continuar sondeando el indicador térmico y ajustar las frecuencias de potencia de los componentes de procesamiento hacia arriba o hacia abajo en base al indicador térmico. De forma ventajosa, al continuar aplicando técnicas de gestión térmica a los núcleos de procesamiento que se han arrancado a un nivel de frecuencia menor que la potencia máxima, un módulo TAB 101 puede optimizar la QoS y la experiencia del usuario hasta que las condiciones térmicas sean adecuadas para que los componentes de procesamiento pongan en funcionamiento el módulo TPM principal 113 en el bloque 740.
[0091] Determinadas etapas en los procesos o flujos del proceso descritos en esta memoria descriptiva naturalmente preceden a otras para que la invención funcione como se describe. Sin embargo, la invención no se limita al orden de las etapas descritas si dicho orden o secuencia no altera la funcionalidad de la invención. Es decir, se reconoce que algunas etapas se pueden realizar antes, después o en paralelo (sustancialmente simultáneamente con) otras etapas sin alejarse del alcance de la invención. En algunos casos, determinadas etapas se pueden omitir o no realizarse sin apartarse de la invención. Además, las palabras tales como "después de esto", "a continuación", "siguiente", etc. no tienen la intención de limitar el orden de las etapas. Estas palabras se usan simplemente para guiar al lector a través de la descripción del procedimiento ejemplar.
[0092] Adicionalmente, un experto en programación puede escribir código informático o identificar hardware y/o circuitos apropiados para implementar la invención divulgada sin dificultad en base a los diagramas de flujo y la descripción asociada en esta memoria descriptiva, por ejemplo. Por lo tanto, la divulgación de un conjunto particular de instrucciones de código de programa o dispositivos de hardware detallados no se considera necesaria para una comprensión adecuada de cómo hacer y usar la invención. La funcionalidad según la invención de los procesos implementados por ordenador reivindicados se explica con más detalle en la descripción anterior y junto con los dibujos, que pueden ilustrar diversos flujos de proceso.
[0093] En uno o más aspectos ejemplares, las funciones descritas se pueden implementar en hardware, software, firmware o cualquier combinación de los mismos. Si se implementan en software, las funciones se pueden almacenar o transmitir como una o más instrucciones o como código en un medio legible por ordenador. Los medios legibles por ordenador incluyen tanto medios de almacenamiento informáticos como medios de comunicación, incluyendo cualquier medio que facilite la transferencia de un programa informático de un lugar a otro. Un medio de almacenamiento puede ser cualquier medio disponible al que se pueda acceder mediante un ordenador. A modo de ejemplo, y no de limitación, dichos medios legibles por ordenador pueden comprender RAM, ROM, EEPROM, CD-ROM u otros dispositivos de almacenamiento en disco óptico, almacenamiento en disco magnético u otro almacenamiento magnético, o cualquier otro medio que se pueda usar para transportar o almacenar un código de programa deseado en forma de instrucciones o estructuras de datos y al que se pueda acceder mediante un ordenador.
[0094] Además, cualquier conexión recibe adecuadamente la denominación de medio legible por ordenador. Por ejemplo, si el software se transmite desde un sitio web, un servidor u otra fuente remota, usando un cable coaxial, un cable de fibra óptica, un par trenzado, una línea digital de abonado ("DSL") o tecnologías inalámbricas tales como infrarrojos, radio y microondas, entonces el cable coaxial, el cable de fibra óptica, el par trenzado, la DSL o las tecnologías inalámbricas, tales como infrarrojos, radio y microondas, se incluyen en la definición de medio.
[0095] Los discos, como se usan en el presente documento, incluyen disco compacto (CD), disco láser, disco óptico, disco versátil digital (DVD), disco flexible y disco Blu-ray, donde algunos discos reproducen normalmente los datos magnéticamente, mientras que otros discos reproducen los datos ópticamente con láseres. Las combinaciones de lo anterior se deberían incluir también dentro del alcance de los medios legibles por ordenador.

Claims (15)

  1. REIVINDICACIONES
    i . Un procedimiento para el arranque térmicamente consciente en un dispositivo informático portátil ("PCD"), comprendiendo el procedimiento:
    iniciar una secuencia de arranque;
    sondear (605) un sensor en el PCD para una medición de un indicador térmico, en el que el sensor se asocia con uno o más componentes dentro del PCD;
    comparar (610) la medición sondeada con un umbral predeterminado;
    determinar (610) si la medición sondeada supera el umbral predeterminado; y
    si la medición sondeada supera el umbral predeterminado (610, SÍ), retrasar (615) la secuencia de arranque, que comprende además sondear (620) el sensor una pluralidad de veces en las que:
    si alguna medición sondeada es menor que el umbral predeterminado (625, NO), se autoriza la finalización de la secuencia de arranque (635); o
    si el sensor se sondea más de un número predeterminado de veces (630, SÍ), se autoriza la finalización de la secuencia de arranque (635).
  2. 2. El procedimiento de la reivindicación 1, en el que el indicador térmico es una temperatura de contacto del PCD.
  3. 3. El procedimiento de la reivindicación 1, en el que el indicador térmico es un estado de carga de una batería en el PCD.
  4. 4. El procedimiento de la reivindicación 1, en el que el indicador térmico es un nivel de corriente eléctrica en un riel de potencia en el PCD.
  5. 5. El procedimiento de la reivindicación 1, en el que el umbral predeterminado se basa en una temperatura de funcionamiento máxima del uno o más componentes asociados con el sensor.
  6. 6. El procedimiento de la reivindicación 1, que comprende además sondear el sensor una segunda vez y, si la medición sondeada todavía supera el umbral predeterminado, retrasar la secuencia de arranque una segunda vez.
  7. 7. El procedimiento de la reivindicación 1, que comprende además sondear el sensor una segunda vez y, si la medición sondeada es menor que el umbral predeterminado, autorizar la finalización de la secuencia de arranque.
  8. 8. Un programa informático que comprende instrucciones para realizar un procedimiento de acuerdo con cualquiera de las reivindicaciones 1 a 7.
  9. 9. Un sistema informático para el arranque térmicamente consciente en un dispositivo informático portátil ("PCD"), comprendiendo el sistema:
    un procesador de baja potencia ("LP") (111), configurado para:
    iniciar una secuencia de arranque;
    un módulo de supervisión (114), configurado para:
    sondear (605) un sensor en el PCD para una medición de un indicador térmico, en el que el sensor se asocia con uno o más componentes dentro del PCD; y
    un módulo de arranque térmicamente consciente ("TAB") (101), configurado para:
    comparar (610) la medición sondeada con un umbral predeterminado;
    determinar (610) si la medición sondeada supera el umbral predeterminado; y
    si la medición sondeada supera el umbral predeterminado (610, SÍ), dar instrucciones al procesador LP para que retrase (615) la secuencia de arranque;
    en el que el módulo de supervisión se configura además para sondear (620) el sensor una pluralidad de veces y el módulo TAB se configura además para llevar a cabo las siguientes etapas alternativas: autorizar la finalización de la secuencia de arranque (635) si alguna medición sondeada es menor que el umbral predeterminado (625, NO); O
    autorizar la finalización de la secuencia de arranque (635) si el sensor se sondea más de un número predeterminado de veces (630, SÍ).
  10. 10. El sistema informático de la reivindicación 9, en el que el indicador térmico es una temperatura de contacto del PCD.
  11. 11. El sistema informático de la reivindicación 9, en el que el indicador térmico es un estado de carga de una batería en el PCD.
  12. 12. El sistema informático de la reivindicación 9, en el que el indicador térmico es un nivel de corriente eléctrica en un riel de potencia en el PCD.
  13. 13. El sistema informático de la reivindicación 9, en el que el umbral predeterminado se basa en una temperatura de funcionamiento máxima del uno o más componentes asociados con el sensor.
  14. 14. El sistema informático de la reivindicación 9, en el que el módulo de supervisión se configura además para sondear el sensor una segunda vez y el módulo t A b se configura además para provocar un retraso de la secuencia de arranque una segunda vez si la medición sondeada todavía supera el umbral predeterminado.
  15. 15. El sistema informático de la reivindicación 9, en el que el módulo de supervisión se configura además para sondear el sensor una segunda vez y el módulo TAB se configura además para autorizar la finalización de la secuencia de arranque si la medición sondeada es menor que el umbral predeterminado.
ES13707994T 2012-02-24 2013-02-20 Sistema y procedimiento para el arranque de dispositivos térmicamente consciente Active ES2748596T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261602755P 2012-02-24 2012-02-24
US13/420,139 US9274805B2 (en) 2012-02-24 2012-03-14 System and method for thermally aware device booting
PCT/US2013/026869 WO2013126411A1 (en) 2012-02-24 2013-02-20 System and method for thermally aware device booting

Publications (1)

Publication Number Publication Date
ES2748596T3 true ES2748596T3 (es) 2020-03-17

Family

ID=49004591

Family Applications (2)

Application Number Title Priority Date Filing Date
ES13707994T Active ES2748596T3 (es) 2012-02-24 2013-02-20 Sistema y procedimiento para el arranque de dispositivos térmicamente consciente
ES19183749T Active ES2861260T3 (es) 2012-02-24 2013-02-20 Sistema y procedimiento para el arranque de dispositivos térmicamente consciente

Family Applications After (1)

Application Number Title Priority Date Filing Date
ES19183749T Active ES2861260T3 (es) 2012-02-24 2013-02-20 Sistema y procedimiento para el arranque de dispositivos térmicamente consciente

Country Status (8)

Country Link
US (1) US9274805B2 (es)
EP (2) EP3570162B1 (es)
JP (2) JP6328568B2 (es)
KR (1) KR102023314B1 (es)
CN (1) CN104220983B (es)
ES (2) ES2748596T3 (es)
HU (1) HUE045565T2 (es)
WO (1) WO2013126411A1 (es)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220382482A1 (en) * 2021-05-25 2022-12-01 Canon Kabushiki Kaisha Control apparatus, control method for control apparatus, and storage medium

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9542267B2 (en) * 2013-02-01 2017-01-10 Broadcom Corporation Enhanced recovery mechanisms
US9703336B2 (en) * 2013-02-21 2017-07-11 Qualcomm Incorporated System and method for thermal management in a multi-functional portable computing device
US10223156B2 (en) 2013-06-09 2019-03-05 Apple Inc. Initiating background updates based on user activity
FR3010553B1 (fr) * 2013-09-10 2015-09-04 Sagemcom Broadband Sas Procede de mise a jour d'un logiciel de demarrage d'un dispositif multiprocesseur
CN105723299A (zh) 2014-03-28 2016-06-29 联发科技股份有限公司 电子装置中执行系统功率预算的方法及其装置
US9813990B2 (en) * 2014-05-30 2017-11-07 Apple Inc. Dynamic adjustment of mobile device based on voter feedback
US9432796B2 (en) 2014-05-30 2016-08-30 Apple Inc. Dynamic adjustment of mobile device based on peer event data
EP3161657B1 (en) * 2014-06-24 2020-07-22 Intel Corporation Firmware sensor layer
TWI538509B (zh) * 2014-08-29 2016-06-11 晶睿通訊股份有限公司 攝影機及其控制方法
US9903764B2 (en) 2014-09-30 2018-02-27 Samsung Electronics Co., Ltd. Integrated circuit for estimating power of at least one node using temperature and a system including the same
US20160116974A1 (en) * 2014-10-23 2016-04-28 Qualcomm Incorporated Methods and systems to boot up smartphones in ultra low power modes
US9558008B2 (en) 2015-04-06 2017-01-31 Psikick, Inc Systems, methods, and apparatus for controlling the power-on or boot sequence of an integrated circuit based on power harvesting conditions
US9292301B1 (en) * 2015-04-06 2016-03-22 Psikick, Inc. Systems, methods, and apparatus for controlling the power-on or boot sequence of an integrated circuit based on power harvesting conditions
JP2016212472A (ja) * 2015-04-30 2016-12-15 富士通株式会社 情報処理システム及び情報処理システムの制御方法
US10491708B2 (en) 2015-06-05 2019-11-26 Apple Inc. Context notifications
US10127055B2 (en) * 2015-10-16 2018-11-13 Quanta Computer Inc. iSCSI based bare metal OS image deployment and diskless boot
US10156881B2 (en) * 2016-06-24 2018-12-18 Mediatek Inc. Electronic device and method for controlling user experience with application on electronic device
US10388201B2 (en) * 2016-09-19 2019-08-20 Apple Inc. Power cycle display sensing
US10402205B2 (en) 2017-03-02 2019-09-03 Quanta Computer Inc. System and method for dynamically optimizing hardware frequency for booting
DE102018208994A1 (de) * 2018-06-07 2019-12-12 Robert Bosch Gmbh Verfahren zum betriebssicheren Aktivieren von mindestens einem elektronischen Bauteil
US11018071B2 (en) 2018-09-25 2021-05-25 Qualcomm Incorporated Initiation of one or more processors in an integrated circuit
TWI676137B (zh) * 2018-11-01 2019-11-01 廣達電腦股份有限公司 電子裝置和電子裝置的保全方法
TWI715433B (zh) * 2020-02-06 2021-01-01 瑞昱半導體股份有限公司 啟動電路、啟動方法以及啟動系統
CN113451309A (zh) * 2020-03-25 2021-09-28 长鑫存储技术有限公司 半导体结构及其预热方法
US11126440B1 (en) * 2020-06-25 2021-09-21 Amazon Technologies, Inc. Identifying critical thermal conditions in multiple system-on-a-chip (SoC) systems
US20240028396A1 (en) * 2020-11-24 2024-01-25 Raytheon Company Run-time schedulers for field programmable gate arrays or other logic devices
US11422534B2 (en) * 2020-12-14 2022-08-23 Argo AI, LLC Systems and methods for heating computing elements in vehicles
KR20220167988A (ko) * 2021-06-15 2022-12-22 주식회사 엘지에너지솔루션 마이크로 컨트롤러의 온도 측정을 위한 배터리 관리장치의 구성 및 그 제어방법
US11960336B2 (en) * 2022-05-06 2024-04-16 Waymo Llc Method of temperature conditioning compute module for cold start

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07306734A (ja) * 1994-05-16 1995-11-21 Hitachi Ltd 携帯型データ処理装置
JPH0999606A (ja) * 1995-10-05 1997-04-15 Tec Corp 画像形成装置
JPH1091268A (ja) * 1996-09-11 1998-04-10 Sony Corp 半導体回路のクロック周波数制御方法およびデータ処理装置
US5930738A (en) * 1997-10-15 1999-07-27 Mobile Integrated Tecnologies, Inc. Vehicle computer system environment monitor
JP3943764B2 (ja) * 1999-06-18 2007-07-11 株式会社東芝 コンピュータシステムおよびそのcpu性能制御方法
US6748457B2 (en) * 2000-02-03 2004-06-08 Realtime Data, Llc Data storewidth accelerator
US6718474B1 (en) * 2000-09-21 2004-04-06 Stratus Technologies Bermuda Ltd. Methods and apparatus for clock management based on environmental conditions
JP2002268769A (ja) * 2001-03-13 2002-09-20 Matsushita Electric Ind Co Ltd Cpu動作速度制御装置とその制御方法
US7036030B1 (en) * 2002-02-07 2006-04-25 Advanced Micro Devices, Inc. Computer system and method of using temperature measurement readings to detect user activity and to adjust processor performance
JP2003295984A (ja) * 2002-04-04 2003-10-17 Nagano Japan Radio Co 携帯端末の電源監視方法
US7139346B2 (en) * 2002-08-09 2006-11-21 The Boeing Company Mobile network time distribution
US7313717B2 (en) * 2003-04-17 2007-12-25 Sun Microsystems, Inc. Error management
US7467318B2 (en) * 2003-09-29 2008-12-16 Ati Technologies Ulc Adaptive temperature dependent feedback clock control system and method
JP2005321949A (ja) * 2004-05-07 2005-11-17 Seiko Epson Corp コンピュータの起動方法、起動装置およびコンピュータシステム
KR20060017333A (ko) 2004-08-20 2006-02-23 삼성전자주식회사 컴퓨터 시스템
DE102004047181A1 (de) 2004-09-29 2006-03-30 Robert Bosch Gmbh Verfahren zur Verriegelung eines Aufwecksignals
JP2006146495A (ja) * 2004-11-18 2006-06-08 Sony Corp 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
US7793291B2 (en) 2004-12-22 2010-09-07 International Business Machines Corporation Thermal management of a multi-processor computer system
US7275164B2 (en) * 2005-01-31 2007-09-25 International Business Machines Corporation System and method for fencing any one of the plurality of voltage islands using a lookup table including AC and DC components for each functional block of the voltage islands
JP2007109085A (ja) * 2005-10-14 2007-04-26 Sony Computer Entertainment Inc 発熱制御方法、装置およびシステム
TWI324297B (en) * 2006-03-20 2010-05-01 Via Tech Inc Thermal throttling duty estimation methods and systems for a cpu
US7552346B2 (en) 2006-05-03 2009-06-23 International Business Machines Corporation Dynamically adapting software for reducing a thermal state of a processor core based on its thermal index
TW200746983A (en) * 2006-06-09 2007-12-16 Giga Byte Tech Co Ltd Temperature control method of electronic component, and the system thereof component
US20080296397A1 (en) 2007-05-30 2008-12-04 Ta-Yang Cheng Automatic heating unit for personal computer
JP5034979B2 (ja) * 2008-01-28 2012-09-26 富士通株式会社 起動装置、起動方法、及び、起動プログラム
TWI425352B (zh) 2008-02-01 2014-02-01 Pegatron Corp 可攜式電腦及其預加熱開機方法
TWI472907B (zh) 2008-06-11 2015-02-11 Asustek Comp Inc 電腦裝置及其溫度調節方法
US8214658B2 (en) * 2008-08-20 2012-07-03 International Business Machines Corporation Enhanced thermal management for improved module reliability
US8200993B2 (en) 2008-09-18 2012-06-12 Mitac Technology Corp. Method for activating a computer system in a low temperature environment
CN101751092A (zh) 2008-10-17 2010-06-23 环旭电子股份有限公司 电脑系统及电脑系统开机过程自我降温方法
JP5293133B2 (ja) * 2008-12-10 2013-09-18 ソニー株式会社 画像表示装置
DE102008054600A1 (de) 2008-12-14 2010-06-17 Mitac Technology Corp. Computersystem und Verfahren zum Booten in einem Niedertemperaturzustand
US8176309B2 (en) 2009-05-07 2012-05-08 Nuvoton Technology Corporation Boot system has BIOS that reads rescue operating system from memory device via input/output chip based on detecting a temperature of a hard disk
JP4660621B1 (ja) 2009-10-29 2011-03-30 株式会社東芝 情報処理装置およびメモリ制御方法
KR20110055300A (ko) 2009-11-19 2011-05-25 서울통신기술 주식회사 차량용 단말기의 안전 부팅 장치 및 그 방법
US8301873B2 (en) 2009-12-01 2012-10-30 Getac Technology Corporation Method and computer system for thermal throttling protection
JP5185918B2 (ja) * 2009-12-25 2013-04-17 東芝テック株式会社 電子機器及びプログラム
JP2012006153A (ja) * 2010-06-22 2012-01-12 Konica Minolta Business Technologies Inc 画像形成装置、要求応答プログラム、及び要求応答方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220382482A1 (en) * 2021-05-25 2022-12-01 Canon Kabushiki Kaisha Control apparatus, control method for control apparatus, and storage medium

Also Published As

Publication number Publication date
JP2018142346A (ja) 2018-09-13
EP3570162B1 (en) 2020-11-25
CN104220983A (zh) 2014-12-17
HUE045565T2 (hu) 2019-12-30
JP6873082B2 (ja) 2021-05-19
JP6328568B2 (ja) 2018-05-23
EP3570162A1 (en) 2019-11-20
US20130227261A1 (en) 2013-08-29
WO2013126411A1 (en) 2013-08-29
ES2861260T3 (es) 2021-10-06
EP2817716B1 (en) 2019-07-03
JP2015516607A (ja) 2015-06-11
US9274805B2 (en) 2016-03-01
KR20140126395A (ko) 2014-10-30
KR102023314B1 (ko) 2019-11-04
CN104220983B (zh) 2017-08-15
EP2817716A1 (en) 2014-12-31

Similar Documents

Publication Publication Date Title
ES2748596T3 (es) Sistema y procedimiento para el arranque de dispositivos térmicamente consciente
ES2588027T3 (es) Sistema y procedimiento para la gestión térmica adaptativa en un dispositivo informático portátil
JP6162262B2 (ja) 最適な電力レベルを予測するために熱抵抗値を使用したポータブルコンピューティングデバイスにおける熱管理のためのシステムおよび方法
KR101534450B1 (ko) 누설 전류 측정으로부터 열 관리 폴리시를 결정하는 시스템 및 방법
US9703336B2 (en) System and method for thermal management in a multi-functional portable computing device
JP5777801B2 (ja) ポータブルコンピューティングデバイスにおけるバッテリー充電の同時実行の熱管理のための方法およびシステム
JP6231578B2 (ja) ポータブルコンピューティングデバイスから周囲温度を推定するためのシステムおよび方法
JP6059204B2 (ja) ポータブルコンピューティングデバイスにおける熱負荷の管理
TW201329678A (zh) 用於一行動裝置之鄰近基礎熱管理之系統及方法
BR112016022266B1 (pt) Método para controlar dinamicamente um domínio de potência em um dispositivo de computação portátil, domínio de potência disposto em um dispositivo de computação portátil e memória legível por computador
JP2017528816A (ja) ポータブルコンピューティングデバイス(pcd)内のプロセッサに関する改善されたセキュリティのためのシステムおよび方法
JP5911970B2 (ja) ユーザコンフィギュレーション機能を伴う適応的温度スロットリング
US20140325639A1 (en) Electronic device and authentication method