FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
173
Projecto Low-Power• Importância
– redução de custos (package, fonte alimentação, ventilação,...)– poupança de energia (protecção ambiental)– autonomia de equipamentos portáteis (telemóveis, GPS, PDAs,...)
• tecnologia dos acumuladores também é importante– limitação da temperatura de funcionamento dos CIs (fiabilidade)
• Evolução– nos últimos 15 anos a energia consumida por processadores de
elevado desempenho aumentou cerca de 1000 vezes!
0
0,2
0,4
0,6
0,8
1
1,2
70 80 90 100 110TEMP
MTBF
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
174
Previsão da evolução dos CIsAno 1999 2002 2005 2008 2011 2014Tecnologia um 0.18 0.13 0.10 0.07 0.05 0.035Vdd V 1.5-1.8 1.2-1.5 0.9-1.2 0.6-0.9 0.5-0.6 0.3-0.6Max Power (desktop) W 90 130 160 170 174 183Max power (portáteis) W 1.4 2 2.4 2 2.2 2.4Diâmetro wafer mm 200 300 300 300 300 450Transístores/cm2 /cm2 6.6M 18M 44M 109M 269M 664MDimensão die mm2 340 356 408 468 536 615
Pow er dsktp
80
100
120
140
160
180
200
1995 2000 2005 2010 2015
Densidade transístores
0
100
200
300
400
500
600
700
1995 2000 2005 2010 2015
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
175
Onde se consome energia?• Em tecnologia CMOS
– Potência média consumida: Ptotal = Pswitch+Pleak+Pshort• Pswitch – motivada pela carga e descarga de capacidades de carga
– depende da capacidade de carga, Vdd e actividade de comutação– minimizar Pswitch é um problema de projecto!
• Pleak – devida às correntes de fugas dos transistores no estado off– depende da tecnologia (VTn, VTp) e dos níveis VIH e VIL
– em processos deep-submicron esta fatia torna-se mais importante
• Pshort – devida aos curto-circuitos (NMOS+PMOS) nas transições– depende dos tempos de transição e de Vdd
CL
Vdd
CL
Vdd
CL
Vdd
0.7µ
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
176
Como se pode reduzir o consumo?
– Pswitch• representa uma componente importante em tecnologia CMOS• com a redução da tecnologia perde importância face a Pleak• princípios gerais de projecto para minimizar Pswitch:
– reduzir a tensão de alimentação– reduzir a capacidade que cada saída tem de carregar e
descarregar– reduzir o número de vezes que ocorrem cargas e descargas
– Pleak e Pshort• determinada pelos parâmetros físicos da tecnologia• Pleak é proporcional ao número de transístores
– é importante minimizar o número de portas lógicas!
• Pshort também é minimizada quando se minimiza Pswitch
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
177
Princípios de projecto low power– Pswitch – motivada pela carga e descarga das capacidades
• Pswitch = α . CL.Vdd2.fclk
– CL = capacidade de carga– Vdd = tensão de alimentação– α = número médio de transições por período de clk– fclk = frequência de comutação de clk
• α . CL = Cefectiva capacidade efectiva “vista” pelo circuito
CL
Vdd
transição 1 - 0transição 0 - 1
EPMOS=0.5CL.Vdd (dissipada)
CL
Vdd
ECL=0.5CL.Vdd(armazenada)
ENMOS=0.5CL.Vdd (dissipada)2 2
2
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
178
Princípios de projecto low power• reduzir Pswitch
– reduzir a tensão de alimentação Vdd• de 5V para 3.3V reduz Pswitch para 43%• de 3.3V para 1.8V reduz Pswitch para 30%• de 5V para 1.2V reduz Pswitch para apenas 5.8%!
– baixar Cefectiva= α . CL
• reduzir a actividade de comutação (α)– baixar a frequência de relógio (usar gated clocks)– transições devidas à propagação em circuitos combinacionais, glitches– função lógica, topologia do circuito– distribuição estatística dos dados
• reduzir a capacidade de carga CL– reduzir o fanout ou as características físicas dos circuitos a jusante
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
179
Princípios de projecto low power
• Actividade de comutação (α)– Função lógica – minimizar a probabilidade de transição
• Uma porta NOR com entradas igualmente prováveis– P(0->1) = P(1->0) = p(1)*p(0) = 1/4*3/4 = 3/16 = 0.19– P(0->0) = 3/4* 3/4 = 9/16– P(1->1) = 1/4 * 1/4 = 1/16
• Para uma porta XOR– P(1->0) = P(0->1) = 1/2 * 1/2 = 1/4 = 0.25– P(0->0) = P(1->1) = 1/2 * 1/2 = 1/4 = 0.25
– análise estatística dos sinais a processar• as entradas não têm (em geral) iguais probabilidades de transição
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
180
Princípios de projecto low power
– Análise estática• actividade dos nós internos depende da topologia do circuito• ((A.B).C).D tem menor actividade de comutação do que (A.B).(C.D)
(assumindo entradas com probabilidades iguais)
ABCD
F=(A.B).(C.D)
O1 O2P(0->1) cascata 3/16=0.19 7/64=0.11P(0->1) árvore 3/16=0.19 3/16=0.19
ABCD
F=((A.B).C).DO1 O2O1
O2
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
181
Princípios de projecto low power– Comportamento dinâmico (devido aos atrasos)
• glitches provocam transições adicionais nos circuitos a jusante• AND de 4 entradas implementado como ((A.B).C).D
– devido ao atraso de cada AND, 1110->1011 provoca um glitch
• AND de 4 entradas implementado como (A.B).(C.D)– Se o circuito for balanceado, 1110->1011 não provoca glitches
ABCD
F=((A.B).C).D ABCD
F=(A.B).(C.D)O1 O2
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
182
Redução de Vdd
• Pswitch depende do quadrado de Vdd– mas o tempo de atraso aumenta com a redução de Vdd:
Como compensar o aumento de Td?• Optimizações arquitecturais• Aumentar o paralelismo• Pipelining
Estratégia:• fazer o circuito o mais rápido possível• reduzir Vdd para atingir a rapidez desejada
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
183
Optimizações arquitecturais• Exemplo:
Tensão de alimentação: Vddref=5VAtraso máximo: 25ns (somador e comparador)Período de relógio admissível: 25ns (fref=1/25ns)Capacidade efectiva total: CrefPotência consumida: Pref = ½ Cref.Vddref
2.frefPara obter o máximo desempenho não é possível reduzir Vdd (diminui fref)
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
184
Arquitectura paralela
O mesmo desempenho com Tp=50nsVddpar= 0.58Vddref (2.9V)Cpar = 2.15Cref (um pouco mais de 2 devido às ligações adicionais)Ppar = ½ . (2.15Cref).(0.58Vddref )2 fref/2 ≈ 0.36Pref
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
185
Arquitectura pipelined
máximo desempenho atingido com Tp=12.5ns (para o somador e comparador)o mesmo desempenho é obtido duplicando o período de relógio (fpipe=fref)Vddpipe= 0.58Vddref (2.9V)Cpipe = 1.15Cref (um pouco mais de 2 devido às ligações adicionais)Ppipe = ½ . (1.15Cref).(0.58Vddref )2 fref≈ 0.39Pref
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
186
Paralela vs. pipelined
• A potência é reduzida cerca de 2.5X– versão pipelined ligeiramente pior, mas há muitas aproximações...
• A solução pipelined apresenta menor custo– no entanto partiu-se de um pressuposto “irreal”
• conseguir duplicar fclk
• O desempenho não é exactamente igual– na versão pipelined há uma latência de 2 ciclos de relógio– na versão paralela não há latência (combinacional)
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
187
Paralela e pipelined
O somador e comparador podem ter tempos de propagação de ¼ do valor inicialfpp = fref / 2Vddpipe= 0.4Vddref (2.0V)Cpipe = 2.5CrefPpipe = ½ . (2.5Cref).(0.4Vddref )2 fref / 2 ≈ 0.2Pref
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
188
Resumo
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
189
Princípios de projecto low power• Potência devido aos curto-circuitos (Pshort)
– condução simultânea do PMOS e NMOS durante a comutação• depende dos tempos de transição e Vdd
• significativa quando os tempos de transição nas entradas são muito maiores do que os tempos de transição nas saídas
• com tempos de transição nas entradas e saídas aproximadamente iguais
– Pshort < 0.1 Pswitch
• Potência devido às correntes de fugas (Pleak)– depende directamente de Vdd
– condução dos transístores no estado off• corrente de fugas devida à polarização inversa drain-bulk• fugas no canal devidas à corrente de subthreshold
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
190
Low-poweroptimizações ao nível RTL
• As maiores fontes do consumo em arquitecturas RTL:– glitches transições propagadas pelos circuitos combinacionais– actividade de partes de circuitos que não estão em utilização– Técnicas automáticas para minimizar os glitches
• não são robustas, resultados podem ser anulados por optimizações posteriores
– Inserção automática de blocos para gestão de potência• ganhos importantes na redução do consumo• à custa de aumentos significativos de área
• Técnicas básicas de projecto low-power em RTL– explorar a partilha de recursos (partilhar ou não partilhar)– gestão dinâmica de energia (deixar trabalhar só quem vai fazer algo útil!)
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
191
Low-powerpartilha de recursos
• Partilhar recursos: compromisso área-rapidez– a decisão de partilhar recursos pode ter impacto no consumo– exemplo: partilhar ou não um barramento?
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
192
Low-powerpartilha de recursos
• multiplexar o barramento conduz a maior actividade de comutação:
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
193
Low-powerpartilha de recursos
• Exemplo: filtro FIR y=a0.Xk+a1.Xk-1+a2.Xk-2
dois somadorescada um trabalha à cadência das amostras Xkcada somador “vê” dados correlacionados
apenas um somadortrabalha a cadência dupla da das amostras Xkopera dados não correlacionados
a versão multiplexada tem maior actividade de comutação porque os dados não são correlacionados entre si
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
194
Low-powerpartilha de recursos
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
195
Low-powergestão dinâmica de consumo
• pré-computação– pré-calcular os resultados com os dados disponíveis 1 ciclo
de relógio antes e usar esse resultado para reduzir a actividade de comutação
com entradas equiprováveis: como p(XNOR)=50%obtém-se cerca de 50% de redução !
adequado para circuitos pipelined
Exemplo:
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
196
Low-powerclock gating
• “desligar” o sinal de relógio– dos blocos que não estão activos a produzir resultados– o ligar/desligar do sinal de relógio tem que ser feito com cuidado!
• não podem ocorrer glitches e o clock skew tem de ser controlado.
• Exemplo: máquinas de estados– transições para um mesmo estado não produzem comutação– nesse caso o relógio não é necessário e pode ser desligado– em máquinas de Mealy as saídas dependem do estado e das entradas
• mesmo que o estado se mantenha, as saídas podem mudar• solução: transformar os estados de Mealy em estados de Moore
– aplicar aos ciclos que tenham maior probabilidade de ocorrer
– a função que liga/desliga o relógio é extraída do diagrama de estados– podem-se conseguir reduções de consumo até 30%
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
197
Low-powerclock gating
• Realização prática– tipicamente o controlo do relógio não depende dos dados– é uma função resultante de análise funcional do circuito
FEUP/DEEC : EEC0055 / Projecto de Sistemas Digitais, 2006/2007José Carlos Alves
198
Low-powerisolamento de operandos
• Princípio semelhante ao desligar do relógio – Explorar computações redundantes (resultados não são usados)– Isolar esses componentes com circuitos adequados
• deixar ou não passar os dados usando latches transparentes
• Exemplo:
Se A e B mudam mas S0=0 ou S1=1, a saída do somador X não é usada!Reduções de consumo: 15%~30%
Top Related