Energia consumida por uma CPU

9

Eu acho que o poder para um CPU com corrente I ea tensão U é I · U .

Gostaria de saber como é derivada a seguinte conclusão da Wikipedia ?

A energia consumida por uma CPU é aproximadamente proporcional à frequência da CPU e ao quadrado da tensão da CPU:

P = CV 2 f

(onde C é capacitância, f é frequência e V é tensão).

Tim
fonte
2
É mais adequado para Electronic.SE ou Physics.SE ou aqui? Por favor, considere a migração em vez de fechar
Tim
11
Cnessa equação é apenas alguma constante, não capacitância. Meio que poderia ser "capacitância efetiva", já que possui as unidades certas para capacitância, mas o fator está errado. Como outros já notaram, 1/2falta um coeficiente de carga, mas o mais importante é que está faltando, relacionado à fração de portas que trocam cada ciclo do relógio. Chame isso de constante de proporcionalidade e deixe assim.
precisa
11
@ Ben - A linha (where C is capacitance, f is frequency and V is voltage). é citada na página WP, no entanto.
stevenvh
3
@stevenvh, diga-me que você está editando e publicando uma nova versão da postagem que você excluiu, eu estava prestes a dar um +1 e um comentário apenas pedindo para remover os artefatos históricos e fazer uma publicação clara e concisa.
Kortuk
11
@ Kortuk - Eu tenho uma resposta muito melhor e mais detalhada na minha cabeça, não há tempo agora, vou postá-la amanhã.
stevenvh

Respostas:

14

A resposta de MSalters está 80% correta. A estimativa vem da potência média necessária para carregar e descarregar um capacitor em tensão constante, através de um resistor. Isso ocorre porque uma CPU, assim como todos os circuitos integrados, é um grande conjunto de comutadores, cada um dirigindo outro.

Basicamente, você pode modelar um estágio como um inversor MOS (pode ser mais complicado, mas a energia permanece a mesma) cobrando a capacitância da porta de entrada da seguinte. Então, tudo se resume a um resistor carregando um capacitor e outro descarregando (não ao mesmo tempo, é claro :)).

As fórmulas que vou mostrar são retiradas dos circuitos digitais integrados - uma perspectiva de design de Rabaey, Chakandrasan, Nikolic.

Considere um capacitor carregado por um MOS:

insira a descrição da imagem aqui

a energia retirada do suprimento será

EVDD=0iVDD(t)VDDdt=VDD0CLdvoutdtdt=CLVDD0VDDdvout=CLVDD2

Enquanto a energia armazenada no capacitor no final for

EC=0iVDD(t)voutdt=...=CLVDD22

Obviamente, não esperamos um tempo infinito para carregar e descarregar o capacitor, como Steven aponta. Mas nem mesmo depende do resistor, porque sua influência está na tensão final do capacitor. Mas, aparte, queremos uma certa tensão no seguinte portão antes de considerar o transitório. Então, digamos que seja 95% Vdd, e podemos fatorá-lo.

Portanto, independentemente da resistência de saída do MOS, é preciso metade da energia que você armazena no capacitor para carregá-lo em voltagem constante. A energia armazenada no capacitor será dissipada no pMOS na fase de descarga.

fS

P=EVDDt=EVDDfS=CLVDD2fS

α<1

Então a fórmula se torna

PTOT=αNCLVDD2fS

Pequena demonstração da razão porque R leva em consideração: como Steven escreve, a energia no capacitor será:

EC=VDD2C2(1e2TchargeRC)

aparentemente, R é um fator da energia armazenada no capacitor, devido ao tempo finito de carregamento. Mas se dissermos que um gate deve ser cobrado em 90% Vdd para concluir uma transição, teremos uma proporção fixa entre Tcharge e RC, que é:

Tcharge=log(0.1)RC2=kRC

Se alguém o escolheu, temos novamente uma energia que é independente de R.

Observe que o mesmo é obtido integrando de 0 a kRC em vez de infinito, mas os cálculos se tornam um pouco mais complicados.

clabacchio
fonte
ótima resposta, exceto que não há fotos para eu verificar a precisão técnica.
Kortuk
Obrigado! (1) Você ainda quer dizer $ E_ {VDD} $ por $ E $? (2) Onde é dividida por 2 na fórmula de $ P $? (3) No circuito, a corrente contínua direta ou a corrente alternada?
Tim
@ Sim, sim, a energia em um ciclo é Evdd porque é a carga necessária para carregar o capacitor; a metade armazenada será dissipada na descarga. A corrente não é dos dois, é uma corrente variável que terá a característica exponencial (semelhante a uma barbatana) de carregar e descarregar a tampa.
Clabacchio
Obrigado! (1) Ainda não entendi bem que não há divisão por 2 na fórmula de $ E_C $, enquanto existe na fórmula para $ E_VDD $. (2) Eu olhei para a Wikipedia, mas não conseguia entender os conceitos de DC e AC o suficiente para entender sua última frase no seu comentário. Você poderia explicá-las e por que a corrente aqui não é nenhuma delas?
Tim
@ Tim Ec é dividido por 2, por razões que provêm da física e que você pode derivar da equação (que eu cortei por brevidade). O sinal varia ao longo do tempo, portanto (t), e não é CA nem CC, mas, eventualmente, mais semelhante ao anterior. É imprevisível, pois depende da operação do portão.
clabacchio
7

Eu postei outra resposta antes, mas não era boa, também era uma linguagem imprópria e quero me desculpar pelas marcas de raiva.

Eu estive pensando sobre isso e acho que meu problema aqui é que, para mim, o texto citado sugere que a capacitância é responsável pela dissipação de energia. O que não é verdade. É resistivo.

insira a descrição da imagem aqui

VDDVSS

Primeiro Ben: a tensão e a corrente do capacitor variam exponencialmente durante o carregamento. O atual

I=VDDRetRC

P=I2R=VDD2Re2tRC

e a integração ao longo do tempo nos dá energia dissipada no resistor:

U=VDD2Rt=0e2tRCdt=VDD2RRC2=VDD2C2

R

t

U=VDD2Rt=0t1e2tRCdt=VDD2C2(1e2tRC)

R
RCTCLOCK

RR(t)R

CR

RCVDDVSSC

Rdi/dt

stevenvh
fonte
Não concordo :). Seu parágrafo sobre o tempo finito é correto, mas assume que fixamos o tempo que damos para a transição, enquanto o que é fixo é a tensão na qual assumimos que a transição terminou. Assim, o resistor vai embora de novo, porque determina a velocidade máxima da CPU, e é por isso que é melhor de reduzir a capacitância (uma das razões)
clabacchio
Note que normalmente deixo uma grande margem para erros nas minhas respostas, mas isso é quase copiado de um livro muito caro :). Confio na sua precisão (conceitual) mais do que em qualquer outro erro de digitação.
clabacchio
@clabacchio - Ben é Ben Voigt, que comentou minha outra resposta. O resistor desaparece novamente devido ao curto tempo de RC. Mas não há razão para que você não interrompa o carregamento em uma velocidade de clock mais alta se uma carga de 90% for suficiente. Meu livro muito caro é a minha cabeça (por vezes com a ajuda de Mathematica) :-)
stevenvh
Meu raciocínio é diferente: digo que não é porque t >> RC (seria um desperdício de recursos), mas que t = kRC, onde k é uma restrição de design que garante um balanço de tensão suficiente para ser robusto. Se você sempre usa o mesmo k, esse fator desaparece (também com rima). A coisa sobre o livro era para deixar claro que eu não apoio o meu pedido apenas para a arrogância
clabacchio
Melhor do jeito que está :-). Eu até escondi o conteúdo dos usuários com mais de 10.000 representantes. Eu acho que Kortuk foi muito positivo sobre isso. Sobre o RC, acho que estamos dizendo a mesma coisa. Se seu k = 2,3, você acaba nos meus 90%.
stevenvh
3

O consumo de energia principal nas CPUs é causado pelo carregamento e descarregamento de capacitores durante os cálculos. Essas cargas elétricas são dissipadas nos resistores, transformando a energia elétrica associada em calor.

A quantidade de energia em cada capacitor é C i / 2 · V 2 . Se este capacitor for carregado e descarregado f vezes por segundo, a energia entrando e saindo é C i / 2 · V 2 · f . Somando todos os capacitores de comutação e substituindo C = iC i / 2, você obtém C · V 2 · f

MSalters
fonte
Obrigado! Por que C = ΣCi / 2, não C = ΣCi? Em outras palavras, como você faz a divisão por 2 desaparecer?
Tim
11
@ Tim: pura uma questão de definição. Na prática, o valor C de uma CPU é medido diretamente.
Em série, 1 / C = \ sum_i 1 / C_i; em paralelo, C = \ sum_i, C_i. Sua fórmula também não é C = 1/2 \ time \ sum_i C_i. Esta é a minha confusão.
Tim
11
@ Tim: Isso pressupõe que os capacitores estejam conectados em paralelo de qualquer maneira ( sum_i). Com todos os portões ativados em uma CPU, isso não é um dado de qualquer maneira. Mas a principal razão pela qual perdi o 1/2 é porque estou usando uma abordagem de engenharia, não uma abordagem de física pura. Uma CPU não está funcionando como um capacitor de qualquer maneira. O Cvalor não está relacionado a (dV/dt)/I; é meramente um candidato observado relacionando P , V e f .
@ Tim: Se você mantiver o 1/2, o cancelamento será cancelado, você obterá um valor diferente para a capacitância. Por exemplo, resolva para C, você obtém um V^2·F/Pou (1/2)·V^2·F/P. Agora, digamos que você altere a tensão, frequência e potência. Com a primeira equação, você obtém V1^2·F1/P1 = V2^2·F2/P2e, no outro caso, obtém (1/2)V1^2·F1/P1 = (1/2)V2^2·F2/P2qual é a mesma coisa.
David Schwartz
2

A capacitância é medida em Farads , que é Coulombs por Volt.

A frequência é medida em Hertz, que é unidades por segundo.

Ao reduzir, obtemos Coulomb-Volts por segundo, mais comumente conhecido como Watts , uma unidade de energia.

Ignacio Vazquez-Abrams
fonte
11
Isso realmente não responde por que embora.
Kortuk
0

Geralmente a corrente consumida por um dispositivo é proporcional à tensão. Como a potência é voltagem * corrente, a potência se torna proporcional ao quadrado da voltagem.

Mark Ransom
fonte
11
Isso está longe de "geralmente". Na verdade há um nome especial para esses dispositivos: cargas ôhmicas (da lei de Ohm, V = I · R)
0

Sua equação está correta para o poder obtido em qualquer instante em particular. Mas a corrente consumida pela CPU não é constante. A CPU está sendo executada com alguma frequência e alterando os estados regularmente. Ele usa uma certa quantidade de energia para cada mudança de estado.

Se você entende I como a corrente RMS (a raiz quadrada da média do quadrado da corrente), sua equação está correta. Juntando isso, você obtém:

V · I (Rms) = C · V ^ 2 · F
I (Rms) = C · V · F

Portanto, a corrente média varia linearmente com a tensão, frequência e capacitância. A potência varia de acordo com o quadrado da tensão de alimentação CC.

David Schwartz
fonte
Obrigado! Minha pergunta é por que V · I (Rms) = C · V ^ 2 · F? Você tem algumas referências para essa fórmula?
Tim
Não entendi direito o que você quer saber.
David Schwartz
Por que V · I (Rms) = C · V ^ 2 · F é verdadeiro? De onde você aprendeu?
Tim
É verdade porque combina duas equações de potência, cada uma correta e que mede a mesma coisa. Essa Ideve ser a potência do RMS, para P=V·Ique você possa obter uma potência média que pode ser provada trivialmente com o cálculo da P = I^2·R.
David Schwartz
11
@ Tim: Se você dividir por dois, basta dobrar a capacitância e a equação funciona da mesma maneira. Se você deseja dividir por dois, você pode. Você usará apenas números de capacitância que são o dobro do que os outros usam e obterá as mesmas respostas. (Nós usamos 12 pés polegadas, mas você poderia usar 6 pés polegadas se você quisesse Você ainda pode projetar carros, edifícios e pontes Você só vai chamá-los de tamanhos diferentes de todos os outros...)
David Schwartz