BR102021001590A2 - Aparelho e método de aceleração rápida de capacitância dinâmica, frequência e/ou tensão - Google Patents

Aparelho e método de aceleração rápida de capacitância dinâmica, frequência e/ou tensão Download PDF

Info

Publication number
BR102021001590A2
BR102021001590A2 BR102021001590-0A BR102021001590A BR102021001590A2 BR 102021001590 A2 BR102021001590 A2 BR 102021001590A2 BR 102021001590 A BR102021001590 A BR 102021001590A BR 102021001590 A2 BR102021001590 A2 BR 102021001590A2
Authority
BR
Brazil
Prior art keywords
processor
cores
acceleration
power
voltage
Prior art date
Application number
BR102021001590-0A
Other languages
English (en)
Inventor
Sapumal Wijeratne
Alexander Gendler
Alexander Uan-Zo-li
Ameya Ambardekar
Tod Schiff
Nimrod ANGEL
Vikas Vij
Original Assignee
Intel Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corporation filed Critical Intel Corporation
Publication of BR102021001590A2 publication Critical patent/BR102021001590A2/pt

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • G06F11/3062Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3212Monitoring battery levels, e.g. power saving mode being initiated when battery voltage goes below a certain level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30101Special purpose registers
    • 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
    • G06F9/4403Processor initialisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Sources (AREA)
  • Executing Machine-Instructions (AREA)
  • Microcomputers (AREA)

Abstract

aparelho e método de aceleração rápida de capacitância dinâmica, frequência e/ou tensão. um pino dedicado de um processador ou sistema em chip (soc) é usado para indicar se o nível de energia (por exemplo, carga, tensão e/ou corrente) de uma bateria cai abaixo de um limiar. o limiar pode ser predeterminado ou programável. a bateria é usada para fornecer energia ao processador e/ou soc. após determinar que o nível de energia da bateria cai abaixo do limiar, o processador ignora o processo convencional de entrar em um modo de baixo desempenho ou baixa energia e acelera diretamente a tensão e/ou frequência operacional do processador. isso permite que o processador continue a operar com uma baixa energia de bateria. a transição rápida (por exemplo, aproximadamente 10 µs) de um estado ativo para um modo de baixo desempenho ou baixa energia, em conformidade com um nível lógico da tensão no pino dedicado, reduz as exigências de projeto do capacitor de desacoplamento e possibilita que o processador se adapte a definições de controle de energia de pacote mais alta (por exemplo, pl4).

Description

APARELHO E MÉTODO DE ACELERAÇÃO RÁPIDA DE CAPACITÂNCIA DINÂMICA, FREQUÊNCIA E/OU TENSÃO HISTÓRICO
[0001] A saída de corrente máxima de uma bateria limita a operação máxima em alta frequência de um processador. Por exemplo, para um processador de múltiplos núcleos, a frequência em modo turbo é limitada por frequência alta máxima. Quando um nível de tensão ou entrega de corrente de uma bateria para um processador ou sistema que compreende o processador cai abaixo de um limiar, o processador ou o sistema em coordenação com um sistema operacional pode decidir entrar em um modo de baixa energia para que o processador ou sistema possam continuar a operar, porém em um nível de desempenho reduzido. No entanto, tal transição para o modo de baixa energia leva tempo. Por exemplo, um processador pode levar 300 µs ou mais para diminuir uma frequência operacional para uma frequência mínima. Tal atraso pode impactar negativamente a experiência de usuário. Além disso, o tempo de resposta para entrar no modo de baixa energia pode determinar um tamanho do capacitor de desacoplamento (ou capacitores de desacoplamento) na via de alimentação de energia (ou vias de alimentação de energia) de uma plataforma. O capacitor de desacoplamento (ou capacitores de desacoplamento) mantém a tensão na via de alimentação de energia (ou vias de alimentação de energia) quando a bateria não pode mais fornecer a energia necessária. Um tempo de resposta mais longo para entrar no modo de baixa energia significa que o capacitor de desacoplamento (ou capacitores de desacoplamento) deve ter um tamanho grande para manter a tensão e dar tempo ao sistema para que entre no modo de baixa energia. Um capacitor de desacoplamento grande (ou capacitores de desacoplamento grandes) pode aumentar a estrutura de produtos (BoM) do sistema.
BREVE DESCRIÇÃO DOS DESENHOS
[0002] As modalidades da revelação serão entendidas mais completamente a partir da descrição detalhada fornecida a seguir e a partir dos desenhos anexos de várias modalidades da revelação que, no entanto, não devem ser interpretadas como limitando a revelação às modalidades específicas, porém servem para explicação e entendimento apenas.
[0003] A Figura 1A ilustra um aparelho para modo rápido de baixa energia por aceleração de capacitância dinâmica, frequência e/ou tensão, em conformidade com algumas modalidades.
[0004] A Figura 1B ilustra um aparelho com detector de inclinação para modo rápido de baixa energia por aceleração de capacitância dinâmica, frequência e/ou tensão, em conformidade com algumas modalidades.
[0005] A Figura 2A ilustra um registro de controle para possibilitar o modo rápido de baixa energia, em conformidade com algumas modalidades.
[0006] A Figura 2B ilustra uma tabela de consulta para estados de aceleração, em conformidade com algumas modalidades.
[0007] A Figura 3 ilustra um fluxograma para modo rápido de baixa energia, em conformidade com algumas modalidades.
[0008] A Figura 4 ilustra um fluxograma a um nível de plataforma para o modo rápido de baixa energia, em conformidade com algumas modalidades.
[0009] A Figura 5 ilustra um dispositivo inteligente ou um sistema de computador ou um SoC (sistema em chip) que tem aparelho para modo rápido de baixa energia por aceleração de capacitância dinâmica, frequência e/ou tensão, em conformidade com várias modalidades.
DESCRIÇÃO DETALHADA
[0010] Várias modalidades descrevem um aparelho e método para aceleração rápida da capacitância dinâmica, da frequência e/ou da tensão. Em algumas modalidades, um pino dedicado de um processador ou sistema em chip (SoC) é usado para indicar se o nível de energia (por exemplo, carga, tensão e/ou corrente) de uma bateria cai abaixo de um limiar. O limiar pode ser predeterminado ou programável. A bateria é usada para fornecer energia ao processador e/ou SoC. Após determinar que o nível de energia da bateria cai abaixo do limiar, o processador ignora o processo convencional de entrar em um modo de baixo desempenho ou baixa energia e acelera diretamente a tensão e/ou frequência operacional do processador. Isso permite que o processador continue a operar com uma baixa energia de bateria. A transição rápida (por exemplo, aproximadamente 10 µs) de um estado ativo para um modo de baixo desempenho ou baixa energia, em conformidade com um nível lógico da tensão no pino dedicado, reduz as exigências de projeto do capacitor de desacoplamento e possibilita que o processador se adapte a definições de controle de energia de pacote mais alta (por exemplo, PL4). Outros exemplos de definições de controle de energia de pacote são PL1, PL2, PL4 e Tau. Em algumas modalidades, é fornecido um registro para habilitar ou desabilitar os recursos para aceleração rápida da tensão e/ou frequência operacional.
[0011] No presente contexto, o limite de energia 1 (PL1) se refere a um limiar para energia média que não deve exceder mais que os limites de resfriamento da solução térmica. O PL1 é geralmente definido como igual à energia de TDP. O PL1 não deve ser limitado como superior aos limites de resfriamento da solução térmica.
[0012] No presente contexto, o limite de energia 2 (PL2) se refere a um limiar de energia que, caso excedido, os algoritmos de limitação de energia de rápida PL2 tentarão limitar o pico acima do PL2.
[0013] No presente contexto, o limite de energia 3 (PL3) se refere a um limiar de energia que, caso excedido, os algoritmos de limitação de energia rápida PL3 tentarão limitar o ciclo de trabalho dos picos acima do PL3 limitando-se reativamente a frequência.
[0014] No presente contexto, o limite de energia 4 (PL4) se refere a um limite de energia que não será excedido. Os algoritmos de limitação de energia PL4 limitarão preventivamente a frequência de modo a impedir picos acima do PL4.
[0015] No presente contexto, Parâmetro de Tempo Turbo (Tau) se refere a uma constante em média usada para cálculo de energia de média móvel ponderada exponencial (EWMA) do PL1.
[0016] Há muitos efeitos técnicos de várias modalidades. Por exemplo, várias modalidades fornecem um mecanismo para resposta rápida ou ligeira a um evento de energia de plataforma (por exemplo, nível de bateria que cai abaixo de um limiar). A resposta assume a forma de tensão e/ou frequência operacional em aceleração do processador. O mecanismo permite diminuir a especificação de corrente mínima (Icc Min) para o processador ou SoC. Por exemplo, a Icc Min pode reduzir em 2x em comparação à Icc Min original. O mecanismo também permite a adaptação de definições de controle de pacote superior, tais como PL3 e PL4, que são, de outro modo, tipicamente desabilitadas. A resposta rápida que resulta na tensão e/ou frequência operacional em aceleração do processador permite reduzir o tamanho do capacitor de desacoplamento, desse modo, reduzindo o custo da plataforma. Outros efeitos técnicos ficarão evidentes a partir das várias modalidades e Figuras.
[0017] Na descrição a seguir, inúmeros detalhes são discutidos para fornecer uma explicação minuciosa das modalidades da presente revelação. Ficará evidente, no entanto, para uma pessoa versada na técnica que as modalidades da presente revelação podem ser praticadas sem esses detalhes específicos. Em outros exemplos, estruturas e dispositivos bem conhecidos são mostrados em forma de diagrama de blocos, e não detalhadamente, para evitar a incompressibilidade das modalidades da presente revelação.
[0018] Observa-se que nos desenhos correspondentes das modalidades, os sinais são representados com linhas. Algumas linhas podem ser mais espessas, para indicar trajetos de sinal constituintes e/ou têm setas em um ou mais terminais para indicar a direção de fluxo de informações primárias. Tais indicações não devem ser limitativas. Em vez disso, as linhas são usadas em combinação com uma ou mais modalidades exemplificativas para facilitar o entendimento mais fácil de um circuito ou uma unidade lógica. Qualquer sinal representado, conforme ditado pelas necessidades ou preferências do modelo, pode na realidade compreender um ou mais sinais que podem percorrer em qualquer direção ou podem ser implantados com qualquer tipo adequado do esquema de sinal.
[0019] Ao longo do relatório descritivo, e nas reivindicações, o termo “conectado(a)” significa uma conexão direta, tal como conexão elétrica, mecânica ou magnética entre os elementos que estão conectados, sem quaisquer dispositivos intermediários.
[0020] O termo “acoplado(a)” significa uma conexão indireta, tal como uma conexão elétrica direta, mecânica ou magnética entre os elementos que estão conectados ou uma conexão indireta, através de um ou mais dispositivos intermediários passivos ou ativos.
[0021] O termo “adjacente” aqui se refere geralmente a uma posição de um elemento que está próximo (por exemplo, imediatamente ao lado ou próximo de um ou mais elementos entre os mesmos) ou adjacente a outro elemento (por exemplo, em contiguidade com o mesmo).
[0022] O termo “circuito” ou “módulo” pode se referir a um ou mais componentes passivos e/ou ativos que estão dispostos para cooperar um com o outro para fornecer uma função desejada.
[0023] O termo “sinal” pode se referir a pelo menos um sinal de corrente, sinal de tensão, sinal magnético ou sinal de dados/relógio. O significado de “um”, “uma”, “o” e “a” inclui o plural. O significado de “em” inclui “em” e “sobre”.
[0024] O termo “sinal analógico” aqui se refere geralmente a qualquer sinal contínuo para o qual recurso de variação de tempo (variável) do sinal é uma representação de algum período de variação de tempo, isto é, análogo a outro sinal de variação de tempo.
[0025] O termo “sinal digital” é um sinal físico que é uma representação de uma sequência de valores distintos (um sinal de tempo distinto quantificado), por exemplo, de um fluxo de dados arbitrário ou de um sinal analógico digitalizado (amostrado e convertido de analógico em digital).
[0026] O termo “escalonamento” se refere geralmente à conversão de um modelo (esquemático e layout) de uma tecnologia de processo para outra tecnologia de processo e pode ser subsequentemente reduzida na área de layout. Em alguns casos, o escalonamento também se refere ao aumento de tamanho de um modelo de uma tecnologia de processo para outra tecnologia de processo e pode ser uma área de layout que aumenta subsequentemente. O termo “escalonamento” também se refere geralmente à diminuição de tamanho ou aumento de tamanho do layout e dispositivos dentro do mesmo nó de tecnologia. O “escalonamento” também pode se referir ao ajuste (por exemplo, aumento ou diminuição de velocidade – isto é, escalonamento descendente ou escalonamento ascendente, respectivamente) de uma frequência de sinal em relação a outro parâmetro, por exemplo, nível de alimentação de energia. Os termos “substancialmente”, “próximo”, “aproximadamente”, “próximo” e “cerca de” se referem geralmente a +/- dentro de 10% de um valor-alvo.
[0027] Salvo quando especificado de outro modo, o uso dos adjetivos ordinais “primeiro”, “segundo” e “terceiro” etc., para descrever um objeto comum indica apenas que diferentes ocorrências de objetos semelhantes são citadas e não devem implicar que os objetos então descritos devem estar em uma determinada sequência, seja de maneira temporária, especial ou em classificação ou de qualquer outra maneira.
[0028] Para efeito da presente revelação, os sintagmas “A e/ou B” e “A ou B” significam (A), (B) ou (A e B). Para efeito da presente revelação, o sintagma “A, B e/ou C” significa (A), (B), (C), (A e B), (A e C), (B e C) ou (A, B e C).
[0029] Os termos “esquerdo(a)”, “direito(a)”, “frente”, “posterior”, “topo”, “fundo”, “sobre”, “sob” e semelhantes na descrição e nas reivindicações, caso haja, são usados a título de descrição e não necessariamente para descrever posições relativas permanentes.
[0030] Destaca-se que esses elementos das Figuras que têm as mesmas referências numéricas (ou nomes) que os elementos de qualquer outra Figura podem operar ou funcionar de qualquer maneira semelhante àqueles descritos, porém não se limitam a tal.
[0031] Para efeito das modalidades, os transistores em vários circuitos e blocos lógicos descritos no presente contexto são transistores de metal-óxido-semicondutor (MOS) ou derivados dos mesmos, em que os transistores MOS incluem terminais de drenagem, de fonte, de porta e volumosos. Os transistores e/ou os derivados de transistor MOS também incluem transistores Tri-Gate e FinFET, Cilíndricos com Múltiplas Portas, FET de túnel (TFET), transistores de Fio Quadrado ou Fita Retangular, FET ferroelétricos (FeFETs) ou outros dispositivos que implantam funcionalidade de transistor como nanotubos de carbono ou dispositivos spintrônicos. Terminais de fonte e de drenagem simétricos MOSFET, isto é, são terminais idênticos e são usados de maneira intercambiável. Um dispositivo de TFET, por outro lado, tem terminais de Fonte e de Drenagem assimétricos. As pessoas versadas na técnica observarão que outros transistores, por exemplo, transistores de junção bipolares (BJT PNP/NPN), BiCMOS, CMOS etc., podem ser usados sem haver afastamento do escopo da revelação.
[0032] A Figura 1A ilustra o aparelho 100 para modo rápido de baixa energia por aceleração de capacitância dinâmica, frequência e/ou tensão, em conformidade com algumas modalidades. O aparelho 100 é uma representação simplificada de uma plataforma que tem um processador ou sistema em chip (SoC) 101 alimentado por uma fonte de alimentação 102 (por exemplo, uma bateria ou carregador 102). Em várias modalidades, o SoC 101 compreende um pino dedicado LPMpin (modo de baixa energia pino) que fornece informações sobre a condição de bateria 102. Em algumas modalidades, o LPMpin é o pino PROCHOT# de um processador.
[0033] Um medidor de combustível 103 ou qualquer lógica ou chip adequado monitora o fornecimento de tensão e/ou corrente (ou carga) da bateria 102 para o processador 101. Por exemplo, um comparador no medidor de combustível 103 compara o nível de carga da bateria 102 a um limiar e fornece uma saída que é recebida pelo LPMpin. O limiar pode ser programável por software (por exemplo, firmware) ou hardware (por exemplo, fusível, registro etc.). Em algumas modalidades, o limiar é ajustado para 20% da capacidade da bateria. No entanto, qualquer outro valor de limiar pode ser usado. Após atingir o nível de limiar da bateria 102, o medidor de combustível 103 ou qualquer lógica ou chip adequados confirma o LPMpin para iniciar o fluxo de aceleração rápida.
[0034] O SoC 101 recebe o sinal no LPMpin e roteia o mesmo para a unidade de controle de energia (PCU) 101a que gerencia e energia do processador 101. A PCU 101a gerencia os estados de energia do processador 101, níveis de tensão dos VRs 101b, frequência do relógio a partir dos PLLs 101c e outros aspectos de núcleos de processador 101e, conforme descrito com referência à Figura 5. Referindo-se novamente à Figura 1A, dependendo da possibilidade de a aceleração rápida estar habilitada, a PCU 101a realiza um fluxo de modo de baixa energia. Caso a aceleração rápida ou modo rápido de baixa energia seja desabilitada, a PCU 101a realiza o fluxo de tensão e frequência dinâmicas tradicionais (DVFS), o que leva mais tempo para entrar em estado de baixa energia em comparação ao fluxo de aceleração rápida de várias modalidades.
[0035] No presente contexto, a aceleração se refere ao ajuste de um ou mais parâmetros de desempenho para reduzir o consumo de energia do processador 101. Esse um ou mais parâmetros de desempenho incluem tensão, frequência e/ou capacitância etc. Por exemplo, o processador de aceleração 101 pode envolver a diminuição da alimentação de entrada Vin nos VRs 101b, mudar uma razão de divisão do PLL 101c para reduzir a frequência de relógio, compressão do relógio para redução rápida em uma frequência de relógio, bloqueio de energia, o que reduz a capacitância em rotas de alto sinal de atividade, etc.
[0036] Quando o LPMpin é confirmado e o registro de controle 101d indica que a aceleração rápida está habilitada, então, a PCU 101a (ou qualquer outra lógica adequada) ignora a máquina de estado finito tradicional (ou máquinas de estado finito tradicional) para entrar em um modo de baixa energia (por exemplo, estados C, estados S0iX etc.) e acelera diretamente o um ou mais parâmetros de desempenho. Desse modo, é alcançada uma aceleração rápida que diminui a energia do processador 101 para suportar o nível de baixa carga de bateria. A aceleração rápida do um ou mais núcleos 101e compreende frequência mais baixa, tensão e/ou capacitância do um ou mais núcleos 101e.
[0037] A Figura 1B ilustra o aparelho 120 com detector de inclinação para modo rápido de baixa energia por aceleração de capacitância dinâmica, frequência e/ou tensão, em conformidade com algumas modalidades. Em algumas modalidades, é fornecido um detector de inclinação de nível de plataforma 121 que monitora a saída da bateria (por exemplo, Vin) e compara o mesmo a um limiar. A saída do detector de inclinação de nível de plataforma 121 é um sinal de inclinação. O sinal de inclinação é um sinal de bit único que indica se há uma inclinação no Vin. O limiar para o detector de inclinação de nível de plataforma 121 pode ser programado por software/firmware ou hardware (por exemplo, fusíveis). Em algumas modalidades, as saídas do medidor de combustível 103 e do detector de inclinação 121 são submetidas a OU para gerar o sinal final com o qual o LPMpin é alimentado. Em tal modalidade, o conjunto de circuitos de redundância fornece a confiança extra, caso um dentre o medidor de combustível 103 ou o detector de inclinação 121 não opere adequadamente. O detector de inclinação de nível de plataforma 121 pode ser usado para casos em que a bateria/carregador 102 não tem um medidor de combustível. Qualquer conjunto de circuitos adequados para detectar a inclinação de tensão pode ser usado para implantar o detector de inclinação de nível de plataforma 121.
[0038] A Figura 2A ilustra o registro de controle 200 (por exemplo, 101d) para habilitar o modo rápido de baixa energia, em conformidade com algumas modalidades. O registro de controle 200 inclui nome de registro (por exemplo, FORCE_THOTTLE_CONTROL), número de bits (por exemplo, 32 bits) e campos para os bits (por exemplo, habilitado, nível de aceleração etc.). Nesse exemplo, o bit [0] (um bit único) do FORCE_THOTTLE_CONTROL é usado para habilitar ou desabilitar o esquema de aceleração rápida. Quando habilitada, a PCU 101a ignora o fluxo de esquema de modo de baixa energia tradicional e acelera rapidamente o processador 101. Quando desabilitada, a PCU 101a segue o esquema tradicional de modo de baixa energia. Em algumas modalidades, o nível de aceleração é descrito por quatro bits [3:1] que fornecem 16 definições diferentes. O número de bits para diferentes campos é mostrado como um exemplo. Qualquer número de bits pode ser usado. Nesse exemplo, os bits [31:4] são bits reservados.
[0039] A Figura 2B ilustra a tabela de consulta (LUT) 220 para estados de aceleração, em conformidade com algumas modalidades. O LUT 220 ilustra 16 diferentes níveis de aceleração para os quatro bits do registro de controle 200. A PCU 101a pode usar um ou mais dentre os parâmetros (frequência, tensão, corrente) de LUT 220 para acelerar o processador 101. Em um exemplo, quando o campo Nível de Aceleração do registro de controle 200 é o nível de aceleração 0010, a PCU 101a selecionar a frequência f2, a tensão v2 e a corrente i2 como alvos para o processador de aceleração 101. Outros níveis de aceleração podem ser alcançados por diferentes campos de Nível de Aceleração de registro de controle 200. No presente contexto, a frequência é a frequência operacional do núcleo (ou núcleos) 101e, a tensão é o nível de tensão da fonte de alimentação fornecida aos núcleos (ou núcleos), e a corrente é a corrente alimentada pelos reguladores de tensão 101b. A frequência também pode ser uma frequência média do processador 101 (por exemplo, frequência média de núcleos de operação por chamada 101e), a tensão é o nível de tensão de alimentação de energia média do processador 101 (por exemplo, nível de alimentação de tensão média de núcleos de operação 101e), e a corrente é a alimentação de corrente média dos reguladores de tensão 101b. Embora o LUT 220 mostre 16 níveis de aceleração, qualquer número de níveis de aceleração pode ser identificado para a aceleração rápida.
[0040] A Figura 3 ilustra o fluxograma 300 para o modo rápido de baixa energia, em conformidade com algumas modalidades. Embora vários blocos do fluxograma 300 sejam ilustrados em uma ordem particular, a ordem pode ser modificada. Por exemplo, alguns blocos podem ser realizados paralelamente.
[0041] No bloco 301, a PCU 101a ou qualquer lógica adequada lê o nível lógico do LPMpin. Por exemplo, a PCU 101a compara o nível lógico no sinal no LPMpin com um limiar para determinar o nível lógico do LPMpin. No bloco 302, a PCU 101a determina se o LPMpin é confirmado. Uma pessoa versada na técnica observará que a determinação de um nível lógico de um pino de um sinal nesse pino. Caso o LPMpin seja confirmado, então, no bloco 303, a PCU 101a verifica o registro de controle 200 para determinar o valor lógico do campo [0] para comprovar se a aceleração rápida é habilitada. Caso LPMpin não seja confirmado, então, a PCU 101a usa fluxo de aceleração herdada ou tradicional (por exemplo, fluxo de escalonamento herdado e dinâmico de frequência e de tensão). Caso o LPM seja habilitado, o processo continua no bloco 304. No bloco 304, a PCU 101a determina o estado de alimentação existente do processador 101.
[0042] O estado de alimentação existente pode determinar qual nível de aceleração deve ser selecionado a partir da LUT 220. Em um exemplo, quando a PCU 101a determina que o processador 101 está no estado de alimentação C6 (conforme definido pela especificação de Interface de Configuração de Alimentação Avançada (ACPI) versão 6.3 de janeiro de 2019), então, o processador 101 já está em um modo de energia muito baixa, e mais aceleração pode não ser desejável. Nesse caso, a PCU 101a aguarda um estado de modo de energia diferente ou término do fluxo de estado de alimentação C6 antes que o processo de aceleração rápida comece. No bloco 305, a PCU 101a realiza o fluxo de aceleração rápida reduzindose diretamente, tensão e/ou corrente (ou capacitância) para diminuir o consumo de energia do processador 101.
[0043] Em algumas modalidades, o fluxo rápido de LPM (ou fluxo de aceleração rápida) recebe maior prioridade sobre o DVFS herdado (escalonamento dinâmico de tensão e frequência). Em algumas modalidades, caso o núcleo 101e esteja no processo de DVFS, a PCU 101a permitirá que o núcleo 101e conclua o DVFS antes de continuar para o fluxo de aceleração rápida. Caso o núcleo (ou núcleos) 101e do processador 101 esteja realizando o fluxo de aceleração rápida, então, a PCU 101a ignora ou adia qualquer comando para realizar o DVFS até após a aceleração rápida ser concluída.
[0044] Em algumas modalidades, quando o processador 101 sai do fluxo de aceleração rápida (por exemplo, quando o LPMpin é desconfirmado), a PCU 101a pode revisar a condições de carregamento de corrente do processador 101 e entrar em um estado de alimentação correspondentemente. Por exemplo, após sair do fluxo de aceleração rápida, caso a PCU 101a determine que o processador 101 esteja ocioso (por exemplo, condição de baixo carregamento) e não executa as instruções, este pode entrar em um estado C1E. C1E é um recurso de hardware que permite que o processador 101 entre em um estado ocioso (x12 mult) quando o processador 101 não estiver carregado. Em algumas modalidades, quando o processador estiver em um estado C1E e o LPMpin for confirmado, a PCU 101a realizará transição para o fluxo de aceleração rápida e sairá do estado CIE. A PCU 101a pode retornar para o estado C1E após o fluxo de aceleração rápida terminar e após as condições de carregamento para o C1E serem carregadas. Durante o estado de alimentação de sistema (por exemplo, estados S1 a S4), o núcleo do processador 101e pode não responder ao LPM rápido disparado pelo LPMpin. Nesse caso, o sistema pode ter de esperar que o núcleo do processador 101e entre em um estado ativo (por exemplo, estado C0) para continuar com o LPM rápido disparado pelo LPMpin.
[0045] Em algumas modalidades, quando o TT1 (fluxo de aceleração térmica) é habilitado, o LPM rápido é habilitado após o reconhecimento ser recebido pela PCU 101a de que o estado de alimentação C1 existiu. Em algumas modalidades, o modo de LPM rápido é corrigido por meio de circuitos de projeto para teste (DFT) e/ou informações de telemetria. Em algumas modalidades, a PCU 101a (ou qualquer outra lógica adequada) pode incluir um contador para contagem com o uso de um relógio de referência (por exemplo, relógio de referência a um ciclo travado por fase) durante o processador de tempo 101 em um modo rápido de aceleração. A saída do contador é visível por um sistema operacional, uma cadeia de varredura, um pino de correção etc. Em algumas modalidades, um contador adicional acompanha o número de transições em LPM rápido. Por exemplo, esse contador adicional conta toda vez que o processador 101 entra e/ou sai do LPM rápido. A saída desse contador adicional pode ser visível por um sistema operacional, uma cadeia de varredura, um pino de correção etc.
[0046] A Figura 4 ilustra fluxograma 400 no nível de plataforma para o modo rápido de baixa energia, em conformidade com algumas modalidades. O fluxograma 400 ilustra um processo de handshake entre a plataforma 100, a PCU 101a e o núcleo (ou núcleos) 101e para habilitar e implantar o esquema de aceleração rápida. Em várias modalidades durante ou após o fluxo de reinicialização de processador 401, a PCU 101a possibilita a resposta de LPM rápido para núcleo (ou núcleos) 101e ajustando-se o bit [0] do registro FORCE_THROTTLE_CONTROL. Desse modo, o núcleo (ou núcleos) 101e é habilitado para implantar o modo rápido de baixa energia.
[0047] No bloco 402, a plataforma detecta a condição de tensão de bateria baixa. Por exemplo, o medidor de combustível 103 ou qualquer lógica adequada pode monitorar a carga de bateria 102 e determinar que o nível de carga da bateria 102 caiu abaixo de um limiar. Nesse caso, a plataforma 100 conforme o LPMpin para solicitar que a PCU 101a comece o fluxo de aceleração rápida. Após detectar que o LPMpin é confirmado, a PCU 101a envia uma indicação de aceleração rápida ao núcleo (ou núcleos) 101e. Isso faz com que o núcleo (ou núcleos) 101e dê prioridade ao fluxo de aceleração rápida sobre outras operações de modo de energia, tais como TT1, GV (por exemplo, aceleração de relógio local), estado de alimentação de sistema S1 etc.) conforme indicado pelo bloco 403. No presente contexto, GV se refere à aceleração de frequência e/ou tensão.
[0048] Em seguida, a PCU 101a gerencia os handshakes entre quaisquer fluxos de estado de alimentação em andamento com o fluxo de aceleração rápida, e o processador 101 prossegue com o fluxo de aceleração rápida. No bloco 404, a plataforma indica que a carga de bateria aprimorou e está acima do limiar. E seguida, a plataforma desconfirma o LPMpin para indicar à PCU 101a que pode terminar o fluxo de aceleração rápida. A PCU 101a informa ao núcleo (ou núcleos) 101e que o fluxo de aceleração rápida não é mais necessário. Como resultado, o núcleo (ou núcleos) 101e volta para o fluxo de DVFS normal no bloco 405.
[0049] A Figura 5 ilustra um dispositivo inteligente ou um sistema de computador ou um SoC (sistema em chip) que tem aparelho para modo rápido de baixa energia por aceleração de capacitância dinâmica, frequência e/ou tensão, em conformidade com várias modalidades. Destacase que esses elementos da Figura 5 que têm as mesmas referências numéricas (ou nomes) que os elementos de qualquer outra Figura podem operar ou funcionar de qualquer maneira semelhante àqueles descritos, porém não se limitam a tal.
[0050] Em algumas modalidades, o dispositivo 2400 representa um dispositivo de computação adequado, tal como um dispositivo do tipo tablet de computação, um telefone móvel ou telefone inteligente, um computador do tipo laptop, um computador do tipo desktop, um dispositivo com Internet das Coisas (IOT), um servidor, um dispositivo utilizável junto ao corpo, um decodificador de sinais, um leitor eletrônico com função sem fio ou semelhantes. Será entendido que determinados componentes são mostrados de modo geral e que nem todos os componentes de tal dispositivo são mostrados no dispositivo 2400.
[0051] Em um exemplo, o dispositivo 2400 compreende um SoC (sistema em chip) 2401. Um limite exemplificativo do SOC 2401 é ilustrado com o uso de linhas pontilhadas na Figura 5, em que alguns componentes exemplificativos são ilustrados como inclusivos dentro do SOC 2401 – no entanto, o SOC 2401 pode incluir quaisquer componentes adequados do dispositivo 2400.
[0052] Em algumas modalidades, dispositivo 2400 inclui o processador 2404. O processador 2404 pode incluir um ou mais dispositivos físicos, tais como microprocessadores, processadores de aplicação, microcontroladores, dispositivos de lógica programável, núcleos de processamento ou outros meios de processamento. As operações de processamento realizadas pelo processador 2404 incluem a execução de uma plataforma operacional ou sistema operacional no qual as aplicações e/ou funções do dispositivo são executadas. As operações de processamento incluem operações relacionadas a I/O (entrada/saída) com um usuário humano ou com outros dispositivos, operações relacionadas a gerenciamento de energia, operações relacionadas a conectar o dispositivo de computação 2400 a outro dispositivo e/ou semelhantes. As operações de processamento também podem incluir operações relacionadas a I/O de áudio e/ou I/O de vídeo.
[0053] Em algumas modalidades, o processador 2404 inclui múltiplos núcleos de processamento (também denominados de núcleos) 2408a, 2408b, 2408c. Embora apenas três núcleos 2408a, 2408b, 2408c sejam ilustrados na Figura 5, o processador 2404 pode incluir qualquer outro número adequado de núcleos de processamento, por exemplo, dezenas ou até mesmo centenas de núcleos de processamento. Os núcleos de processador 2408a, 2408b, 2408c podem ser implantados em um único chip de circuito integrado (IC). Ademais, o chip pode incluir um ou mais caches, barramentos ou interconexões compartilhados e/ou privados, controladores de gráficos e/ou memória ou outros componentes.
[0054] Em algumas modalidades, processador 2404 inclui cache 2406. Em um exemplo, as seções do cache 2406 podem ser dedicadas a núcleos individuais 2408 (por exemplo, uma primeira seção de cache 2406 dedicadas ao núcleo 2408a, uma segunda seção de cache 2406 dedicada ao núcleo 2408b e assim por diante). Em um exemplo, uma ou mais seções do cache 2406 podem ser compartilhadas entre dois ou mais dentre os núcleos 2408. O cache 2406 pode ser separado em diferentes níveis, por exemplo, cache de nível 1 (L1), cache de nível 2 (L2), cache de nível 3 (L3) etc.
[0055] Em algumas modalidades, o núcleo do processador 2404 pode incluir uma unidade de busca para buscar instruções (incluindo instruções com ramificações condicionais) para execução pelo núcleo 2404. As instruções podem ser buscadas de quaisquer dispositivos de armazenamento, tais como e memória 2430. O núcleo do processador 2404 também pode incluir uma unidade de decodificação para decodificar a instrução buscada. Por exemplo, a unidade de decodificação pode decodificar a instrução buscada em uma pluralidade de micro-operações. O núcleo do processador 2404 pode incluir uma unidade de agendamento para realizar várias operações associadas ao armazenamento de instruções decodificadas. Por exemplo, a unidade de agendamento pode reter dados da unidade de decodificação até que as instruções estejam prontas para despache, por exemplo, até que todos os valores de uma instrução decodificada esteja disponível. Em uma modalidade, a unidade de agendamento pode agendar e/ou emitir (ou despachar) instruções decodificadas a uma unidade de execução para execução.
[0056] A unidade de execução pode executar as instruções despachadas após serem decodificadas (por exemplo, pela unidade de decodificação) e despachadas (por exemplo, pela unidade de agendamento). Em uma modalidade, a unidade de execução pode incluir mais de uma unidade de execução (tal como uma unidade computacional de imageamento, uma unidade computacional gráfica, uma unidade computacional de propósito geral etc.). A unidade de execução também pode realizar várias operações aritméticas, tais como adição, subtração, multiplicação e/ou divisão e pode incluir uma ou mais unidades de lógica aritmética (ALUs). Em uma modalidade, um coprocessador (não mostrado) pode realizar várias operações aritméticas em combinação com a unidade de execução.
[0057] Além disso, a unidade de execução pode executar instruções fora de ordem. No entanto, o núcleo do processador 2404 pode ser um núcleo do processador fora de ordem em uma modalidade. O núcleo do processador 2404 também pode incluir uma unidade de desativação. A unidade de desativação pode desativar instruções após serem executadas. Em uma modalidade, a desativação das instruções executadas pode resultar no impedimento do estado de processador de executar as instruções, registros físicos usados pelas instruções que são desalocadas etc. O núcleo do processador 2404 também pode incluir uma unidade de barramento a fim de habilitar a comunicação entre componentes do núcleo do processador 2404 e outros componentes por meio de um ou mais barramentos. O núcleo do processador 2404 também pode incluir um ou mais registrados para armazenar dados acessados por vários componentes do núcleo 2404 (tais como valores relacionados a prioridades de aplicativo atribuídas e/ou à associação (modos) de estados de subsistema).
[0058] Em algumas modalidades, o dispositivo 2400 compreende conjuntos de circuitos de conectividade 2431. Por exemplo, os conjuntos de circuitos de conectividade 2431 incluem dispositivos de hardware (por exemplo, conectores sem fio e/ou cabeados e hardware de comunicação) e/ou componentes de software (por exemplo, unidades, pilhas de protocolo), por exemplo, a fim de habilitar o dispositivo 2400 a se comunicar com dispositivos externos. O dispositivo 2400 pode ser separado dos dispositivos externos, tais como outros dispositivos de comutação, pontos de acesso ou estaçõesbase sem fio etc.
[0059] Em um exemplo, os conjuntos de circuitos de conectividade 2431 podem incluir múltiplos tipos diferentes de conectividade. De modo geral, os conjuntos de circuitos de conectividade 2431 podem incluir conjuntos de circuitos de conectividade celular, conjuntos de circuitos de conectividade sem fio etc. Conjuntos de circuitos de conectividade celular dos conjuntos de circuitos de conectividade 2431 se refere, de modo geral, a conectividade de rede celular fornecida por carreadores sem fio, tais como fornecidos por meio de GSM (sistema global para comunicações sem fio) ou variações ou derivados, CDMA (acesso múltiplo por divisão de código) ou variações ou derivados, TDM (multiplexação por divisão de tempo) ou variações ou derivados, sistema ou variações ou derivados de Sistemas de Telecomunicações Móveis Universal (UMTS) de Projeto de Parceria de 3ª Geração (3GPP), sistema ou variações ou derivados Evolução a Longo Prazo (LTE) de 3GPP, sistema ou variações ou derivados de LTE-Avançada (LTEA) de 3GPP, sistema ou variações ou derivados sem fio da Quinta Geração (5G), sistema ou variações ou derivados de redes móveis 5G, sistema ou variações ou derivados de Nova Rádio 5G (NR) ou outros padrões de serviço celular. Conjuntos de circuitos de conectividade sem fio (ou interface sem fio) dos conjuntos de circuitos de conectividade 2431 se refere à conectividade sem fio que não é celular e podem incluir redes de área pessoal (tais como, Bluetooth, Curta Distância etc.), redes locais (tais como Wi-Fi), e/ou redes de longa distância (tais como WiMax) e/ou outra comunicação sem fio. Em um exemplo, os conjuntos de circuitos de conectividade 2431 podem incluir uma interface de rede, tal como uma interface cabeada ou sem fio, por exemplo, de modo que uma modalidade de sistema possa ser incorporada em um dispositivo sem fio, por exemplo, um telefone celular ou um assistente digital pessoal.
[0060] Em algumas modalidades, o dispositivo 2400 compreende o concentrador de controle 2432, que representa dispositivos de hardware e/ou componentes de software relacionadas à interação com um ou mais dispositivos de I/O. Por exemplo, o processador 2404 pode se comunicar com um ou mais dentre o visor 2422, um ou mais dispositivos periféricos 2424, dispositivos de armazenamento 2428, um ou mais outros dispositivos externos 2429 etc., por meio do concentrador de controle 2432. O concentrador de controle 2432 pode ser um conjunto dos chips, um Concentrador de Controle de Plataforma (PCH) e/ou semelhantes.
[0061] Por exemplo, o concentrador de controle 2432 ilustra um ou mais pontos de conexão para dispositivos adicionais que se conectam ao dispositivo 2400, por exemplo, através do qual um usuário pode interagir com o sistema. Por exemplo, dispositivos (por exemplo, dispositivos 2429) que podem ser fixados ao dispositivo 2400 incluem dispositivos de microfone, sistema de altofalante ou estéreo, dispositivos de áudio, sistema de vídeo ou outros dispositivos, dispositivos de teclado ou de teclado numérico ou outros I/O dispositivos para uso com aplicações específicos, tais como leitores de cartão ou outros dispositivos.
[0062] Conforme mencionado acima, o concentrador de controle 2432 pode interagir com dispositivo de áudio, com o visor 2422 etc. Por exemplo, entrada através de um microfone ou outro dispositivo de áudio pode fornecer entrada ou comandos para uma ou mais aplicações ou funções do dispositivo 2400. Adicionalmente, pode ser fornecida uma saída de adicional ou alternativamente a uma saída de vídeo. Em outro exemplo, caso o visor 2422 inclua uma tecla sensível ao toque, visor 2422 também atua como um dispositivo de entrada, que pode ser gerenciado pelo menos parcialmente pelo concentrador de controle 2432. Pode haver, também, botões adicionais ou comutadores no dispositivo de computação 2400 para fornecer funções de I/O gerenciadas pelo concentrador de controle 2432. Em uma modalidade, o concentrador de controle 2432 gerencia dispositivos, tais como acelerômetros, câmeras, sensores de luz ou outros sensores ambientais ou outro hardware que possa ser incluído no dispositivo 2400. A entrada pode ser parte da interação direta do usuário assim como pode fornecer entrada ambiental ao sistema para influenciar suas operações (tais como filtrar ruído, ajustar o visor em termos de detecção de brilho, aplicar um flash para uma câmera ou outros recursos).
[0063] Em algumas modalidades, o concentrador de controle 2432 pode se acoplar a vários dispositivos com o uso de qualquer protocolo de comunicação, por exemplo, PCIe (Interconexão Expressa de Componente Periférico), USB (Universal Serial Bus), Thunderbolt, Interface de Multimídia de Alta Definição (HDMI), Firewire, etc.
[0064] Em algumas modalidades, o visor 2422 representa hardware (por exemplo, dispositivos de exibição) e componentes de software (por exemplo, drivers) que fornecem uma exibição visual e/ou tátil para que um usuário interaja com o dispositivo 2400. O visor 2422 pode incluir uma interface de exibição, uma tela para exibição e/ou dispositivo de hardware usados para fornecer exibição de um usuário. Em algumas modalidades, o visor 2422 inclui um dispositivo de tecla sensível ao toque (ou touchpad) que fornece tanto saída quanto entrada a um usuário. Em um exemplo, o visor 2422 pode se comunicar diretamente com o processador 2404. O visor 2422 pode ser um ou mais dentre um dispositivo de exibição interno, como em um dispositivo eletrônico móvel ou um dispositivo de laptop ou um dispositivo de exibição externo por meio de uma interface de exibição (por exemplo, DisplayPort etc.). Em uma modalidade visor 2422 visor à altura da cabeça (HMD), tal como um dispositivo de exibição estereoscópico para uso em aplicações de realidade virtual (VR) ou aplicações de realidade aumentada (AR).
[0065] Em algumas modalidades, e embora não ilustrado na Figura, adicionalmente (ou alternativamente) ao processador 2404, o dispositivo 2400 pode incluir Unidade de Processamento Gráfico (GPU) que compreende um ou mais núcleos de processamento gráfico, que pode controle um ou mais aspectos para exibir conteúdo no visor 2422.
[0066] O concentrador de controle 2432 (ou concentrador de controlador de plataforma) pode incluir interfaces e conectores de hardware, assim como componentes de software (por exemplo, drivers, pilhas de protocolo) para fazer conexões periféricas, por exemplo, a dispositivos periféricos 2424.
[0067] Será entendido que o dispositivo 2400 pode ter tanto um dispositivo periférico até outros dispositivos de computação como também pode ter dispositivos periféricos conectados ao mesmo. O dispositivo 2400 pode ter um conector de “encaixe” para se controlar a outros dispositivos de computação para, por exemplo, gerenciar (por exemplo, transferir por download e/ou por upload, mudar, sincronizar) o conteúdo no dispositivo 2400. Além disso, um conector de encaixe pode permitir que o dispositivo 2400 se conecte a determinados periféricos que permitam que o dispositivo de computação controle a saída de conteúdo de controle, por exemplo, audiovisual ou outros sistemas.
[0068] Além de um conector de encaixe proprietário ou outro hardware de conexão proprietário, o dispositivo 2400 pode fazer conexões periféricas por meio de conectores com base em padrões ou comuns. Os tipos comuns incluem um conector de Barramento Serial Universal (USB) (que pode incluir qualquer uma dentre várias interfaces de hardware), DisplayPort incluindo MiniDisplayPort (MDP), Interface de Multimídia de Alta Definição (HDMI), Firewire ou outros tipos.
[0069] Em algumas modalidades, os conjuntos de circuitos de conectividade 2431 podem ser acoplados ao concentrador de controle 2432, por exemplo, adicional ou alternativamente a serem acoplados diretamente ao processador 2404. Em algumas modalidades, o visor 2422 pode ser acoplado ao concentrador de controle 2432, por exemplo, adicional ou alternativamente a ser acoplado diretamente ao processador 2404.
[0070] Em algumas modalidades, o dispositivo 2400 compreende memória 2430 acoplada ao processador 2404 por meio da interface de memória 2434. A memória 2430 inclui dispositivos de memória para armazenar informações no dispositivo 2400.
[0071] Em algumas modalidades, a memória 2430 inclui aparelho para manter relógio estável, conforme descrito com referência a várias modalidades. A memória pode incluir dispositivos de memória não voláteis (estado não muda, caso a alimentação para o dispositivo de memória seja interrompida) e/ou voláteis (estado é intermediário, caso a alimentação para o dispositivo de memória seja interrompida). O dispositivo de memória 2430 pode ser um dispositivo de memória de acesso aleatório dinâmico (DRAM), um dispositivo de memória de acesso aleatório estática (SRAM), dispositivo de memória flash, dispositivo de memória de mudança de fase ou algum outro dispositivo de memória que tem desempenho adequado para servir como memória de processo. Em uma modalidade, a memória 2430 pode operar como a memória de sistema para o dispositivo 2400 a fim de armazenar dados e instruções para uso quando o um ou mais processadores 2404 executa uma aplicação ou processo. A memória 2430 pode armazenar dados, dados de usuário, música, fotos, documentos ou outros dados, assim como dados de sistema (seja a longo prazo ou temporário) relacionados à execução das aplicações e funções do dispositivo 2400.
[0072] Os elementos de várias modalidades e exemplos também são fornecidos como uma mídia legível por máquina (por exemplo, memória 2430) para armazenar as instruções legíveis por computador (por exemplo, instruções para implantar quaisquer processos discutidos no presente documento). A mídia legível por máquina (por exemplo, memória 2430) pode incluir, porém sem limitação, memória flash, discos ópticos, CD-ROMs, DVD ROMs, RAMs, EPROMs, EEPROMs, cartões magnéticos ou ópticos, memória de mudança de fase (PCM) ou outros tipos de mídias legíveis por máquina adequadas para armazenar instruções executáveis por computador ou eletrônicas. Por exemplo, as modalidades da revelação podem ser transferidas por download como um programa de computador (por exemplo, BIOS) que pode ser transferido de um computador remoto (por exemplo, um servidor) para um computador solicitante (por exemplo, um cliente) por meio de sinais de dados por meio de um enlace de comunicação (por exemplo, um modem ou conexão de rede).
[0073] Em algumas modalidades, o dispositivo 2400 compreende conjuntos de circuitos de medição de temperatura 2440, por exemplo, para medir temperatura de vários componentes de dispositivo 2400. Em um exemplo, os conjuntos de circuitos de medição de temperatura 2440 podem ser incorporados ou acoplados ou fixados a vários componentes cujas temperaturas devem ser medidas e monitoradas. Por exemplo, os conjuntos de circuitos de medição de temperatura 2440 podem medir temperatura de (ou dentro) um ou mais dentre os núcleos 2408a, 2408b, 2408c, regulador de tensão 2414, memória 2430, uma placa-mãe do SOC 2401 e/ou qualquer componente apropriado de dispositivo 2400.
[0074] Em algumas modalidades, o dispositivo 2400 compreende conjuntos de circuitos de medição 2442, por exemplo, para medir a energia consumida por um ou mais componentes do dispositivo 2400. Em um exemplo, adicional ou alternativamente à medição de energia, os conjuntos de circuitos de medição de energia 2442 podem medir tensão e/ou corrente. Em um exemplo, os conjuntos de circuitos de medição de energia 2442 podem ser incorporados ou acoplados ou fixados a vários componentes cujo consumo de energia tensão e/ou de corrente devem ser medidos e monitorados. Por exemplo, os conjuntos de circuitos de medição de energia 2442 podem medir energia, corrente e/ou tensão alimentados por um ou mais reguladores de tensão 2414, energia com a qual o SOC 2401 é alimentado, energia com a qual o dispositivo 2400 é alimentado, energia consumido pelo processador 2404 (ou qualquer outro componente) do dispositivo 2400, etc.
[0075] Em algumas modalidades, o dispositivo 2400 compreende um ou mais conjuntos de circuitos de regulador de tensão, geralmente denominados de regulador de tensão (VR) 2414. O VR 2414 gera sinais em níveis de tensão adequados que podem ser alimentados para operar em quaisquer componentes adequados do dispositivo 2400. A título de exemplo apenas, o VR 2414 é ilustrado como alimentado com sinais o processador 2404 do dispositivo 2400. Em algumas modalidades, o VR 2414 recebe um ou mais sinais de identificação de tensão (VID) e gera o sinal de tensão a um nível adequado, com base nos sinais de VID. Vários tipos de VRs podem ser utilizados para o VR 2414. Por exemplo, o VR 2414 pode incluir VR do tipo “buck”, VR do tipo “boost”, uma combinação de VRs buck e boost, reguladores de baixo dropout (LDO), reguladores de comutação de CC-CC, regulador de CC-CC com base em controlador em tempo constante etc. O VR do tipo buck é geralmente usado em aplicações de entrega de energia nas quais uma tensão de entrada precisa ser transformada em uma tensão de saída em uma razão que é menor que a unidade. O VR do tipo buck é geralmente usado em aplicações de entrega de energia nas quais uma tensão de entrada precisa transformada em uma tensão de saída em uma razão que é maior que a unidade. Em algumas modalidades, cada núcleo do processador tem seu próprio VR, que é controlado pela PCU 2410a/b e/ou PMIC 2412. Em algumas modalidades, cada núcleo tem uma rede de LDOs para fornecer controle eficiente para gerenciamento de energia. Os LDOs podem ser digitais, analógicos ou uma combinação de LDOs digitais ou analógicos. Em algumas modalidades, o VR 2414 inclui aparelho de rastreamento de corrente para medir corrente através da via de alimentação de energia(s).
[0076] Em algumas modalidades, o dispositivo 2400 compreende um ou mais conjuntos de circuitos de gerador de relógio, geralmente denominados de gerador de relógio 2416. O gerador de relógio 2416 gera sinais de relógio em níveis de frequência apropriados, com os quaisquer componentes apropriados do dispositivo 2400 podem ser alimentados. A título de exemplo apenas, o gerador de relógio 2416 é ilustrado como alimentado com sinais de relógio o processador 2404 do dispositivo 2400. Em algumas modalidades, o gerador de relógio 2416 recebe um ou mais sinais de identificação de frequência (FID) e gera os sinais de relógio em uma frequência adequada, com base nos sinais de FID.
[0077] Em algumas modalidades, o dispositivo 2400 compreende bateria 2418 que alimenta com energia vários componentes do dispositivo 2400. A título de exemplo apenas, a bateria 2418 é ilustrada como alimentando com energia o processador 2404. Embora não ilustrado nas Figuras, o dispositivo 2400 pode compreender um conjunto de circuitos de carregamento, por exemplo, para recarregar a bateria, com base na alimentação de energia de Corrente Alternada (CA) recebida de um adaptador de CA.
[0078] Em algumas modalidades, o dispositivo 2400 compreende unidade de controle de energia (PCU) 2410 (também denominada de Unidade de Gerenciamento de Energia (PMU), Controlador de Energia etc.). Em um exemplo, algumas seções do PCU 2410 podem ser implantadas por um ou mais núcleos de processamento 2408, e essas seções da PCU 2410 são ilustradas simbolicamente com o uso de uma faixa pontilhada são identificadas como PCU 2410a. Em um exemplo, algumas outras seções da PCU 2410 podem ser implantadas fora dos núcleos de processamento 2408, e essas seções de PCU 2410 são ilustradas simbolicamente com o uso de uma caixa pontilhada e identificada como PCU 2410b. A PCU 2410 pode implantar várias operações de gerenciamento de energia para o dispositivo 2400. A PCU 2410 pode incluir interfaces de hardware, conjuntos de circuitos de hardware, conectores, registros etc., assim como componentes de software (por exemplo, drivers, pilhas de protocolo), a fim de implantar várias operações de gerenciamento de energia para o dispositivo 2400. Em algumas modalidades, a PCU 2410 gerencia o modo rápido de baixa energia por aceleração de capacitância dinâmica, frequência e/ou tensão.
[0079] Em algumas modalidades, o dispositivo 2400 compreende Circuito Integrado de Gerenciamento de Energia (PMIC) 2412, por exemplo, a fim de implantar várias operações de gerenciamento de energia para o dispositivo 2400. Em algumas modalidades, o PMIC 2412 é um ICs de Gerenciamento de Energia Reconfigurável (RPMICs) e/ou um IMVP (Posicionamento de tensão Móvel Intel®). Em um exemplo, o PMIC está dentro de um chip de IC separado do processador 2404. Este pode implantar várias operações de gerenciamento de energia para o dispositivo 2400. O PMIC 2412 pode incluir interfaces de hardware, conjuntos de circuitos de hardware, conectores, registros etc., assim como componentes de software (por exemplo, drivers, pilhas de protocolo), a fim de implantar várias operações de gerenciamento de energia para o dispositivo 2400.
[0080] Em um exemplo, o dispositivo 2400 compreende tanto a PCU 2410 quanto o PMIC 2412, ou cada um dentre os mesmos. Em um exemplo, qualquer um dentre a PCU 2410 ou PMIC 2412 pode estar ausente no dispositivo 2400, logo, esses componentes são ilustrados com linhas pontilhadas.
[0081] Várias operações de gerenciamento de energia do dispositivo 2400 podem ser realizadas pela PCU 2410, por PMIC 2412, ou por uma combinação de PCU 2410 e PMIC 2412. Por exemplo, a PCU 2410 e/ou PMIC 2412 pode selecionar um estado de alimentação (por exemplo, estado) para vários componentes do dispositivo 2400. Por exemplo, a PCU 2410 e/ou PMIC 2412 podem selecionar um estado de alimentação (por exemplo, em conformidade com a especificação ACPI (Interface de Configuração de Alimentação Avançada) para vários componentes do dispositivo 2400. Apenas a título de exemplo, a PCU 2410 e/ou PMIC 2412 podem fazer com que vários componentes do dispositivo 2400 realizem transição para um estado inativo, para um estado ativo a um estado C apropriado (por exemplo, estado C0 ou outro estado C, em conformidade com a especificação ACPI) etc. Em um exemplo, PCU 2410 e/ou PMIC 2412 pode controlar uma saída de tensão por VR 2414 e/ou uma frequência de uma saída de sinal de relógio pelo gerador de relógio, por exemplo, emitindo-se o sinal de VID e/ou o sinal de FID, respectivamente. Em um exemplo, uma PCU 2410 e/ou PMIC 2412 pode controlar o uso de energia da bateria, carregamento da bateria 2418 e recursos relacionadas à operação de economia de energia.
[0082] Em várias modalidades, um pino dedicado LPMpin de SoC 2401 é usado para indicar se o nível de energia (por exemplo, carga, tensão e/ou corrente) da bateria 2418 cai abaixo de um limiar. O limiar pode ser predeterminado ou programável. A bateria 2418 é usada para fornecer energia processador e/ou SoC 2401. Após determinar que o nível de energia da bateria 2418 caixa abaixo do limiar, a PCU 2410a ou 2410b ignora o processo convencional de entrar em um modo de baixo desempenho ou baixa energia e acelera diretamente a tensão e/ou frequência operacional do processador 2402 ou SoC 2401. Isso permite que o processador 2402 ou SoC 2401 continue a operar em baixa energia de bateria. A transição rápida (por exemplo, aproximadamente 10 µs) de um estado ativo (por exemplo, estado C0) a um modo de baixo desempenho ou baixa energia, em conformidade com um nível lógico da tensão no pino dedicado LPMpin, reduz exigências de projeto do capacitor de desacoplamento e possibilita que o processador 2402 ou SoC 2401 adapte definições de controle de energia de pacote mais alta (por exemplo, PL4).
[0083] O gerador de relógio 2416 pode compreender um ciclo travado por fase (PLL), ciclo travado de frequência (FLL) ou qualquer fonte adequada de relógio. Em algumas modalidades, cada núcleo do processador 2404 tem sua própria fonte de relógio. Desse modo, cada núcleo pode operar em uma frequência independente da frequência de operação do outro núcleo. Em algumas modalidades, a PCU 2410 e/ou PMIC 2412 realizam escalonamento ou ajuste de frequência dinâmico ou adaptativo. Por exemplo, a frequência de relógio de um núcleo do processador pode ser aumentada caso o núcleo não esteja operando em um limiar ou limite de consumo máximo de energia. Em algumas modalidades, a PCU 2410 e/ou PMIC 2412 determina a condição de operação de cada núcleo de um processador e ajuste convenientemente a frequência e/ou da fonte de alimentação desse núcleo sem que a fonte de relógio de núcleo (por exemplo, PLL desse núcleo) perca o travamento quando a PCU 2410 e/ou a PMIC 2412 determina que o núcleo está operando abaixo e um nível-alvo de desempenho. Por exemplo, caso um núcleo esteja extraindo uma corrente de uma via de alimentação de energia inferior a uma corrente total alocada para aquele do núcleo ou processador 2404, então, a PCU 2410 e/ou PMIC 2412 pode aumentar temporariamente a energia extraída para esse núcleo ou processador 2404 (por exemplo, aumentando-se a frequência de relógio e/ou nível de tensão da fonte de alimentação) de modo que o núcleo ou processador 2404 possa exercer funções a um nível de desempenho mais alto. Desse modo, a tensão e/ou frequência podem ser aumentadas temporariamente para o processador 2404 sem violar a confiabilidade do produto.
[0084] Em um exemplo, a PCU 2410 e/ou PMIC 2412 pode realizar operações de gerenciamento de energia, por exemplo, com base pelo menos parcialmente no recebimento das medições dos conjuntos de circuitos de medição de energia 2442, conjuntos de circuitos de medição de temperatura 2440, do nível de carga da bateria 2418 e/ou quaisquer outras informações apropriadas que podem ser usadas para gerenciamento de energia. Com tal finalidade, o PMIC 2412 é acoplado de maneira comunicativa a um ou mais sensores para captar/detectar vários valores/variações em um ou mais fatores que têm um efeito no comportamento de energia/térmico do sistema/plataforma. Os exemplos de um ou mais fatores incluem corrente elétrica, inclinação de tensão, temperatura, frequência operacional, tensão operacional, consumo de energia, atividade de comunicação entre núcleos etc. Um ou mais dentre esses sensores podem ser fornecidos fisicamente próximos (e/ou contato térmico/acoplamento) de um ou mais componentes ou blocos de lógica/IP de um sistema de computação.
Adicionalmente, o sensor (ou sensores) pode ser acoplado diretamente a uma PCU 2410 e/ou PMIC 2412 em pelo menos uma modalidade para permitir que a PCU 2410 e/ou PMIC 2412 gerencie a energia de núcleo do processador pelo menos parcialmente com base no valor (ou valores) detectado por um ou dentre os sensores.
[0085] É ilustrado, também, uma pilha de software exemplificativa do dispositivo 2400 (embora nem todos os elementos da pilha de software sejam ilustrados). Apenas a título de exemplo, os processadores 2404 podem executar programas de aplicação 2450, sistema operacional 2452, um ou mais programas de aplicação específica (PM) (por exemplo, denominados genericamente de aplicações de PM 2458) e/ou semelhantes. As aplicações de PM 2458 também podem ser executadas pela PCU 2410 e/ou PMIC 2412. O OS 2452 também pode incluir uma ou mais aplicações de PM 2456a, 2456b, 2456c. O OS 2452 também pode incluir vários drivers 2454a, 2454b, 2454c etc., dentre os quais alguns podem ser específicos para fins de gerenciamento de energia. Em algumas modalidades, o dispositivo 2400 pode compreender adicionalmente um sistema Básico de Entrada/Saída (BIOS) 2420. O BIOS 2420 pode se comunicar com OS 2452 (por exemplo, por meio e um ou mais drivers 2454), se comunicar com processadores 2404, etc.
[0086] Por exemplo, uma ou mais dentre as aplicações de PM 2458, 2456, drivers 2454, BIOS 2420 etc. pode ser usada para implantar tarefas específicas de gerenciamento de energia, por exemplo, para controlar a tensão e/ou frequência de vários componentes do dispositivo 2400, a fim de controlar o estado ativado, estado inativado e/ou qualquer estado de alimentação apropriado de vários componentes do dispositivo 2400, uso de energia da bateria de controle, carregamento da bateria 2418, recursos relacionados à operação de economia de energia.
[0087] A referência na especificação a “uma modalidade”, “uma modalidade”, “algumas modalidades” ou “outras modalidades” significam que um recurso, estrutura ou característica descritos em combinação com as modalidades está incluído em pelo menos algumas modalidades, porém não necessariamente todas as modalidades. As várias ocorrências de “uma modalidade”, “uma (1) modalidade” ou “algumas modalidades” não necessariamente se referem todas às mesmas modalidades. Caso o relatório descritivo declare que um componente, recurso, estrutura ou característica “permite-se incluir” “talvez seja permitido incluir”, ou “poderia incluir”, esse componente, recurso, estrutura ou característica não deve ser incluído. Caso o presente relatório descritivo ou as reivindicações se refiram refere a “um” elemento, isso não significa que há apenas um dentre os elementos. Caso o relatório descritivo ou as reivindicações se refiram a “um elemento adicional”, isso não proíbe que haja mais de um do elemento adicional.
[0088] Além disso, os determinados recursos, estruturas e funções particulares podem ser combinados de qualquer maneira adequada em uma ou mais modalidades. Por exemplo, uma primeira modalidade pode ser combinada com uma segunda sempre que os recursos, estruturas ou funções particulares associadas às duas modalidades não sejam mutuamente exclusivas.
[0089] Embora a revelação tenha sido descrita em combinação com modalidades específicas da mesma, muitas alternativas, modificações e variações de tais modalidades ficarão evidentes pelas pessoas versadas na técnica à luz da descrição a seguir. As modalidades da revelação devem abranger todas as alternativas, modificações e variações de modo que sejam abrangidas pelo amplo escopo das reivindicações anexas.
[0090] Além disso, conexões de energia/à terra bem conhecidas a chips de circuito integrados (IC) chips e outros componentes podem ou não ser mostrados dentro das Figuras apresentadas, a título de simplicidade de ilustração e discussão, consequentemente, para evitar incompressibilidade da revelação. Além disso, as disposições podem ser mostradas em forma de diagrama de bloco a fim de evitar a incompressibilidade da revelação, e também tendo em vista o fato de que especificações com relação à implantação de tais disposições de diagrama de blocos dependem muito da plataforma dentro da qual a presente revelação deve ser implantada (isto é, tais especificações devem ser bem abrangidas pela previsão de uma pessoa versada na técnica). Quando detalhes específicos (por exemplo, circuitos) são apresentados a fim de descrever modalidades exemplificas da revelação, deve ficar evidente por uma pessoa versada na técnica que a revelação pode ser praticada sem ou com variação desses detalhes específicos. A descrição é, então, considerada como ilustrativa em vez de limitativa.
[0091] Várias modalidades descritas no presente documento são ilustradas como exemplos. Os recursos desses exemplos podem ser combinados entre si de qualquer maneira adequada. Esses exemplos incluem:
[0092] Exemplo 1: Um processador que compreende: um pino para receber uma indicação sobre carga de bateria em relação a um limiar; um ou mais núcleos de processador; e uma unidade de controle de energia para processar a indicação do pino e determinar se deve-se acelerar rapidamente o um ou mais núcleos de processador, em que para acelerar rapidamente o um ou mais núcleos de processador, a unidade de controle de energia deve ignorar o fluxo de escalonamento herdado e dinâmico de frequência e de tensão e acelerar diretamente o um ou mais núcleos de processador.
[0093] Exemplo 2: O processador do exemplo 1 compreende um registro para definir um bit a fim de habilitar ou desabilitar a aceleração rápida.
[0094] Exemplo 3: O processador do exemplo 2 em que o registro inclui um ou mais campos para níveis de aceleração.
[0095] Exemplo 4: O processador do exemplo 3 compreende uma tabela de consulta para armazenar os níveis de aceleração.
[0096] Exemplo 5: O processador do exemplo 2 em que o bit para o registro é definido na reinicialização.
[0097] Exemplo 6: O processador do exemplo 1 em que o limiar é programável.
[0098] Exemplo 7: O processador do exemplo 1 em que para acelerar rapidamente o um ou mais núcleos compreende frequência, tensão e/ou capacitância mais baixas do um ou mais núcleos.
[0099] Exemplo 8: O processador do exemplo 1 em que a unidade de controle de energia deve adiar a aceleração rápida, caso o processador esteja no estado de alimentação C6.
[00100] Exemplo 9: Um aparelho que compreende: um pino para receber uma indicação sobre a carga de bateria em relação a um limiar; um ou mais núcleos de processador; e uma unidade de controle de energia para processar a indicação do pino e determinar se deve-se acelerar rapidamente o um ou mais núcleos de processador, em que a unidade de controle de energia deve adiar a aceleração rápida, caso qualquer um dentre o um ou mais núcleos de processador esteja em um estado de alimentação C6.
[00101] Exemplo 10: O aparelho do exemplo 9 em que para acelerar rapidamente o um ou mais núcleos de processador, sendo que a unidade de controle de energia deve ignorar o fluxo de escalonamento herdado e dinâmico de frequência e de tensão e acelerar diretamente o um ou mais núcleos.
[00102] Exemplo 11: O aparelho do exemplo 9 compreende um registro para definir um bit a fim de habilitar ou desabilitar a aceleração rápida.
[00103] Exemplo 12: O aparelho do exemplo 11 em que o registro inclui um ou mais campos para níveis de aceleração.
[00104] Exemplo 13: O aparelho do exemplo 14 compreende uma tabela de consulta para armazenar os níveis de aceleração.
[00105] Exemplo 14: O aparelho do exemplo 12 em que o bit para o registro é definido na reinicialização.
[00106] Exemplo 15: O aparelho do exemplo 9 em que o limiar é programável.
[00107] Exemplo 16: O aparelho do exemplo 9 em que para acelerar rapidamente o um ou mais núcleos compreende frequência, tensão e/ou capacitância mais baixas do um ou mais núcleos.
[00108] Exemplo 17: Um sistema que compreende: uma memória; um processador acoplado à memória; uma bateria para alimentar o processador; e um medidor de combustível para monitorar a nível de carga da bateria com referência a um limiar, em que uma saída do medidor de combustível é fornecida a um pino do processador, em que o processador compreende: um ou mais núcleos de processador; e uma unidade de controle de energia para processar uma indicação do pino e determinar se deve-se acelerar rapidamente o um ou mais núcleos com base em um nível lógico do pino, em que para acelerar rapidamente o um ou mais núcleos de processador, a unidade de controle de energia deve ignorar o fluxo de escalonamento herdado e dinâmico de frequência e de tensão e acelerar diretamente o um ou mais núcleos de processador.
[00109] Exemplo 18: O sistema do exemplo 17 em que o processador compreende um registro para definir um bit de modo que habilite ou desabilite a aceleração rápida, em que o registro inclui um campo para níveis de aceleração.
[00110] Exemplo 19: O sistema do exemplo 17 em que o processador compreende uma tabela de consulta para armazenar os níveis de aceleração.
[00111] Exemplo 20: O sistema do exemplo 17 em que a unidade de controle de energia deve adiar a aceleração rápida, caso o processador esteja no estado de alimentação C6.
[00112] É fornecido um resumo que permitirá que o leitor comprove a natureza e ideia central da revelação técnica. O resumo é submetido com o entendimento de que esse não será usado para limitar o escopo ou o significado das reivindicações. As reivindicações a seguir são incorporadas no presente documento à Descrição Detalhada, com cada reivindicação por si só se apresentando como uma modalidade separada.

Claims (20)

  1. Processador com capacidade para aceleração, sendo que o processador é caracterizado por compreender:
    um pino para receber uma indicação sobre a carga de bateria em relação a um limiar;
    um ou mais núcleos de processador; e
    uma unidade de controle de energia para processar a indicação do pino e determinar se é preciso acelerar rapidamente o um ou mais núcleos de processador, em que para acelerar rapidamente o um ou mais núcleos de processador, a unidade de controle de energia deve ignorar um fluxo de escalonamento herdado e dinâmico de frequência e de tensão e acelerar diretamente o um ou mais núcleos de processador.
  2. Processador, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende um registro para definir um bit a fim de habilitar ou desabilitar a aceleração rápida.
  3. Processador, de acordo com a reivindicação 2, caracterizado pelo fato de que o registro inclui um ou mais campos para níveis de aceleração.
  4. Processador, de acordo com a reivindicação 3, caracterizado pelo fato de que compreende uma tabela de consulta para armazenar os níveis de aceleração.
  5. Processador, de acordo com a reivindicação 2, caracterizado pelo fato de que o bit para o registro é definido na reinicialização.
  6. Processador, de acordo com a reivindicação 1, caracterizado pelo fato de que o limiar é programável.
  7. Processador, de acordo com a reivindicação 1, caracterizado pelo fato de que a aceleração rápida do um ou mais núcleos compreende diminuir frequência, tensão e/ou capacitância de um ou mais núcleos.
  8. Processador, de acordo com qualquer uma das reivindicações 1 a 7, caracterizado pelo fato de que a unidade de controle de energia deve adiar a aceleração rápida, caso o processador esteja no estado de alimentação C6.
  9. Aparelho com capacidade de aceleração, caracterizado por compreender:
    um pino para receber uma indicação sobre a carga de bateria em relação a um limiar;
    um ou mais núcleos de processador; e
    uma unidade de controle de energia para processar a indicação do pino e determinar se é preciso acelerar rapidamente o um ou mais núcleos de processador, em que a unidade de controle de energia deve adiar a aceleração rápida, caso qualquer um dentre o um ou mais núcleos de processador esteja em um estado de alimentação C6.
  10. Aparelho, de acordo com a reivindicação 9, caracterizado pelo fato de que para acelerar rapidamente o um ou mais núcleos de processador, a unidade de controle de energia deve ignorar o fluxo de escalonamento herdado e dinâmico de frequência e de tensão e acelerar diretamente o um ou mais núcleos.
  11. Aparelho, de acordo com a reivindicação 9, caracterizado pelo fato de que compreende um registro para definir um bit a fim de habilitar ou desabilitar a aceleração rápida.
  12. Aparelho, de acordo com a reivindicação 11, caracterizado pelo fato de que o registro inclui um ou mais campos para níveis de aceleração.
  13. Aparelho, de acordo com a reivindicação 14, caracterizado pelo fato de que compreende uma tabela de consulta para armazenar os níveis de aceleração.
  14. Aparelho, de acordo com a reivindicação 12, caracterizado pelo fato de que o bit para o registro é definido na reinicialização.
  15. Aparelho, de acordo com a reivindicação 9, caracterizado pelo fato de que o limiar é programável.
  16. Aparelho, de acordo com qualquer uma das reivindicações 9 a 15, caracterizado pelo fato de que a aceleração rápida do um ou mais núcleos compreende diminuir frequência, tensão e/ou capacitância do um ou mais núcleos.
  17. Sistema caracterizado por compreender:
    uma memória;
    um processador acoplado à memória;
    uma bateria para alimentar o processador; e
    um medidor de combustível para monitorar o nível de carga da bateria com referência a um limiar, em que uma saída do medidor de combustível é fornecida a um pino do processador, em que o processador compreende:
    um ou mais núcleos de processador; e
    uma unidade de controle de energia para processar uma indicação do pino e para determinar se é preciso acelerar rapidamente o um ou mais núcleos com base em um nível lógico do pino, em que para acelerar rapidamente o um ou mais núcleos de processador, a unidade de controle de energia deve ignorar o fluxo de escalonamento herdado e dinâmico de frequência e de tensão e acelerar diretamente o um ou mais núcleos de processador.
  18. Sistema, de acordo com a reivindicação 17, caracterizado pelo fato de que o processador compreende um registro para definir um bit a fim de habilitar e desabilitar a aceleração rápida, em que o registro inclui campo para níveis de aceleração.
  19. Sistema, de acordo com a reivindicação 17, caracterizado pelo fato de que o processador compreende uma tabela de consulta para armazenar níveis de aceleração.
  20. Sistema, de acordo com qualquer uma das reivindicações 17 a 19, caracterizado pelo fato de que a unidade de controle de energia deve adiar a aceleração rápida, caso o processador esteja no estado de alimentação C6.
BR102021001590-0A 2020-06-08 2021-01-27 Aparelho e método de aceleração rápida de capacitância dinâmica, frequência e/ou tensão BR102021001590A2 (pt)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/896,070 2020-06-08
US16/896,070 US11275663B2 (en) 2020-06-08 2020-06-08 Fast dynamic capacitance, frequency, and/or voltage throttling apparatus and method

Publications (1)

Publication Number Publication Date
BR102021001590A2 true BR102021001590A2 (pt) 2021-12-14

Family

ID=73834222

Family Applications (1)

Application Number Title Priority Date Filing Date
BR102021001590-0A BR102021001590A2 (pt) 2020-06-08 2021-01-27 Aparelho e método de aceleração rápida de capacitância dinâmica, frequência e/ou tensão

Country Status (6)

Country Link
US (1) US11275663B2 (pt)
EP (1) EP3923120A1 (pt)
JP (1) JP2021193544A (pt)
CN (1) CN113835517A (pt)
AU (1) AU2021200136A1 (pt)
BR (1) BR102021001590A2 (pt)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11616373B2 (en) * 2020-07-30 2023-03-28 Intel Corporation Low latency fine grain system-on-chip throttling apparatus and method on USB type-C port
EP4325332A1 (en) * 2022-08-16 2024-02-21 NXP USA, Inc. Power consumption control of an electronic system and apparatus for controlling the power consumption

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5423045A (en) * 1992-04-15 1995-06-06 International Business Machines Corporation System for distributed power management in portable computers
KR100371181B1 (ko) * 2000-11-28 2003-02-06 엘지전자 주식회사 휴대용 기기의 절전방법
KR100369463B1 (ko) * 2000-12-21 2003-01-24 엘지전자 주식회사 휴대용 컴퓨터에서의 호스트 버스 클럭 가변 제어방법
US6472848B2 (en) * 2001-01-18 2002-10-29 Hewlett-Packard Company Reducing battery discharge current by throttling CPU power
US8612782B2 (en) * 2011-03-31 2013-12-17 Intel Corporation System and method for determining multiple power levels of the sub-systems based on a detected available power and prestored power setting information of a plurality of different combinations of the sub-systems
US9535484B2 (en) * 2011-11-29 2017-01-03 Maxim Integrated Products, Inc. Extending RunTime with battery ripple cancellation using CPU throttling
US9087114B2 (en) * 2012-02-24 2015-07-21 Qualcomm Incorporated System and method for managing electrical current in a portable computing device
US9846463B2 (en) * 2012-09-28 2017-12-19 Intel Corporation Computing system and processor with fast power surge detection and instruction throttle down to provide for low cost power supply unit
US9541991B2 (en) * 2012-12-14 2017-01-10 Intel Corporation Method and apparatus for managing computing system power
US9778731B2 (en) * 2014-03-28 2017-10-03 Mediatek Inc. Method for performing system power budgeting within electronic device, and associated apparatus
CN105531642A (zh) * 2014-04-18 2016-04-27 联发科技股份有限公司 功率管理方法以及应用该功率管理方法的电子系统
US9660649B2 (en) * 2014-11-17 2017-05-23 Qualcomm Incorporated Voltage scaling for holistic energy management
EP3583484B1 (en) * 2017-02-16 2023-08-09 Razer (Asia-Pacific) Pte. Ltd. Power supply circuits, wearable devices and methods for providing power to a wearable device
DE112017007855T5 (de) * 2017-09-28 2020-04-23 Intel Corporation Spitzenleistungsbestimmung für eine vorrichtung mit integrierter schaltung
WO2019212541A1 (en) * 2018-05-01 2019-11-07 Intel Corporation Power control arbitration
US10739844B2 (en) * 2018-05-02 2020-08-11 Intel Corporation System, apparatus and method for optimized throttling of a processor
US10873949B1 (en) * 2019-10-22 2020-12-22 Link Labs, Inc. Battery watchdog system and methodology

Also Published As

Publication number Publication date
US20210382805A1 (en) 2021-12-09
AU2021200136A1 (en) 2021-12-23
CN113835517A (zh) 2021-12-24
EP3923120A1 (en) 2021-12-15
JP2021193544A (ja) 2021-12-23
US11275663B2 (en) 2022-03-15

Similar Documents

Publication Publication Date Title
US11429173B2 (en) Apparatus and method for proactive power management to avoid unintentional processor shutdown
US20210135478A1 (en) Workload dependent load-sharing mechanism in multi-battery system, and adaptive charging and discharging for a hybrid battery
US11444532B2 (en) Non-linear clamp strength tuning method and apparatus
US11353914B2 (en) Workload based adaptive voltage and frequency control apparatus and method
US11940855B2 (en) Apparatus and method for dynamic reallocation of processor power by throttling processor to allow an external device to operate
US11360543B2 (en) USB Type-C subsystem power management
BR102021001590A2 (pt) Aparelho e método de aceleração rápida de capacitância dinâmica, frequência e/ou tensão
EP3905093A1 (en) Real-time power meter for optimizing processor power management
US12009747B2 (en) Device, method and system for programming a power supply to facilitate dynamic performance tuning
EP3945426B1 (en) Low latency fine grain system-on-chip throttling apparatus and method on usb type-c port
EP4155871A1 (en) Apparatus and method for achieving deterministic power saving state
CN113809727A (zh) 驱动器辅助esd保护装置和方法
JP2022097390A (ja) 動的usb-cモード選択ospmポリシー方法及び装置
US11954501B2 (en) Apparatus and method for restoring a password-protected endpoint device to an operational state from a low power state
EP4020126A1 (en) Secure device power-up apparatus and method
US11429172B2 (en) Digital linear regulator clamping method and apparatus
CN113625859A (zh) 智能预测处理器空闲时间的装置及方法
US11705750B2 (en) Power negotiation sequence to improve user experience and battery life
US20230096154A1 (en) Apparatus and method for isolating and discharging a battery

Legal Events

Date Code Title Description
B03A Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette]