IX Salão de
Iniciação Científica
PUCRS
Estimativa de Dissipação de Potência em NoCs no Nível RTL de
Abstração
Thiago Raupp da Rosa1, Cezar R. W. Reinbrecht2, Guilherme M. Guindani1, Fernando G. Moraes1
1
Faculdade de Informática, Faculdade de Engenharia, PUCRS, 2GAPH
Resumo
A crescente demanda por dispositivos eletrônicos móveis tornou a utilização de
técnicas para baixo consumo de potência na criação de circuitos integrados imprescindível. Os
modelos atuais de estimativa de consumo de potência em NoCs, responsável pela
interconexão dos módulos dos sistemas embarcados, se baseiam principalmente no volume de
tráfego através da rede. Este trabalho apresenta um modelo mais preciso de estimativa de
consumo de potência em NoCs, baseando-se na taxa de recepção dos buffers dos roteadores,
para diferentes cenários de simulação. Os resultados obtidos mostram a precisão do modelo
utilizado, quando comparado com as ferramentas comerciais.
Introdução
MPSoCs, sistemas intra-chip multiprocessados, são composto por elementos de
processamentos e por uma infra-estrutura de comunicação. Redes intra-chip (NoCs) [1][2]
representam uma alternativa ao uso de barramentos, pois permitem a troca paralela de
mensagens, aumentando o desempenho do sistema como um todo. Um dos desafios mais
importantes no projeto de MPSoCs é a rápida e correta estimativa da dissipação de potência
do sistema. Existem inúmeras técnicas para a estimação da dissipação de potência em
microprocessadores, mas para NoCs existem poucas [3].
As ferramentas comerciais, que fazem este tipo de estimação requerem uma grande
quantidade de memória e processamento, ou seja, acabam por levar muito tempo ao se estimar
circuitos mais complexos como uma NoC completa. O modelo proposto assume que os
buffers de recepção são responsáveis pela maior parte da dissipação de potência de um
roteador e usa a taxa de recepção em cada buffer para estimar a potência total consumida pelo
roteador.
Metodologia
O consumo de potência de um roteador pode ser dividido entre seus três módulos:
buffers, lógica de controle e crossbar. Como mostrado em [4][5], os buffers são responsáveis
IX Salão de Iniciação Científica – PUCRS, 2008
pela maior parte do consumo do roteador. A potência consumida no buffer depende da
atividade de chaveamento do sinal de relógio e da palavra armazenada no mesmo. O modelo
proposto é composto de duas etapas: calibração e aplicação.
Na etapa de calibração a NoC é simulada com diferentes cenários e em cada cenário é
utilizada uma taxa de injeção fixa em um determinado roteador. A potência dissipada neste
cenário de simulação é verificada através da ferramenta PrimeTime da Synopsys. São
realizadas simulações com taxas de injeção variando de 5% a 50% da capacidade máxima de
injeção da rede. No final desta fase é obtida uma tabela, que relaciona consumo de potência
com a taxa de injeção no buffer para cada módulo do roteador (buffer, lógica de controle e
crossbar). De posse desta tabela aplica-se a técnica de ajuste à reta gerando-se uma equação
para cada módulo do roteador.
Na etapa de aplicação, a NoC é simulada no nível RTL para a obtenção da taxa de
recepção em cada buffer dos roteadores. Para isso foi inserido um monitor no roteador, que
conta a quantidade de palavras que chegaram em cada buffer por um determinado período de
tempo. Para cada taxa de recepção em cada buffer são calculadas as respectivas potências
dissipadas, aplicando-se a equação gerada na fase de calibração. O consumo da lógica de
controle e do crossbar são obtidos aplicando-se a respectiva equação sobre a taxa média de
recepção dos buffers do roteador em análise. A dissipação total do roteador é calculada
somando-se as dissipações dos buffers, da lógica de controle e do crossbar. A dissipação total
da NoC é obtida do somatório do consumo de todos os roteadores.
Resultados
Para a validação do modelo proposto foi utilizada uma NoC 2D, de dimensão 3x3,
com topologia malha, tamanho de palavra de 8 bits, tamanho do buffer de 8 palavras, sem
canais virtuais, operando a 50MHz. A etapa de calibração foi feita sobre o roteador central,
visto que esse roteador possui todos os buffers possíveis para um roteador. São criados
tráfegos variando de 5% a 50% da capacidade máxima de injeção desta rede, que neste caso é
de 400Mbps. A fase de calibração começa na síntese do roteador escolhido (utilizou-se a
ferramenta (Synopsys Design compiler, com a tecnologia XFAB XL035). O roteador é
sintetizado sem os monitores, para a correta análise da dissipação de potência do roteador. A
síntese cria um código VHDL mapeado que irá substituir o código VHDL original do
roteador. A NoC então é simulada, aplicando-se os cenários de simulação previamente
criados. No final de cada simulação é gerado um arquivo contendo a atividade de
chaveamento de cada fio do roteador (VCD). A ferramenta PrimeTime da Synopsys é
utilizada para calcular a potência média dissipada em cada módulo do roteador. No final de
todas as avaliações são obtidas equações para buffers, lógica de controle e crossbar,
aplicando-se a técnica de ajuste à reta sobre a tabela gerada (Tabela I).
Na etapa de aplicação do modelo, os monitores são inseridos no código original do
roteador escolhido e a janela de tempo é ajustada para o mesmo valor do usado na fase de
calibração. Em seguida, a NoC é simulada com o tráfego a ser analisado e as taxas de
IX Salão de Iniciação Científica – PUCRS, 2008
recepção dos buffers são capturadas e armazenadas em uma tabela. Aplicando as equações
obtidas na fase de calibração, a potência consumida pelos roteadores 11 (roteador central), 10
(roteador inferior central) e 00 (roteador do canto inferior esquerdo) foram estimadas. Foi
utilizado o tempo de simulação de 1 ms, e os valores obtidos estão apresentados na primeira
linha da Tabela II. Usando o mesmo tráfego e tempo de simulação, os roteadores foram
avaliados na ferramenta Synopsys PrimeTime e os resultados obtidos estão apresentados na
segunda linha da Tabela II.
Tabela I – Consumo de potência médio para buffer,
lógica de controle e crossbar.
Consumo de Potência (mW)
Taxa de
Recepção
Buffer
Lógica de
Controle
Crossbar
0%
2.07
-
-
5%
2.17
1.33
0.03
10%
2.26
1.40
0.05
20%
2.45
1.56
0.10
30%
2.65
1.73
0.16
40%
2.80
1.86
0.20
50%
2.91
1.88
0.21
Tabela II – Resultados obtidos através do modelo e da
ferramenta Synopsys PrimeTime.
Router
11 (Central)
10 (Meio)
00 (Canto)
Modelo
12.48 mW
9.97 mW
7.83 mW
PrimeTime
13.2 mW
10 mW
7.84 mW
Erro
5.4%
0.31%
0.16%
Conclusão
O erro observado é proporcional à taxa de chaveamento. Para uma taxa de
chaveamento menor, o erro obtido é menor. É importante salientar que, para efeito de
comparação apenas roteadores isolados foram avaliados. Para a avaliação de apenas um
roteador pela ferramenta comercial o tempo total gasto foi de aproximadamente 45 minutos.
Para executar o fluxo de avaliação de uma NoC completa, a ferramenta comercial levaria
várias horas para terminar a avaliação. O método proposto permite avaliar o consumo da NoC
completa utilizando apenas o tempo gasto para a simulação do tráfego em questão. Na
avaliação apresentada neste trabalho, utilizando uma CPU Pentium-D 2.6Ghz, o tempo total
gasto foi de aproximadamente 10 minutos.
Referências
[1] BENINI, L.; DE MICHELI, G. "Networks on Chips: a New SoC Paradigm". Computer, Vol.35, No.1,
pp.70-78, 2002.
[2] DALLY, W.; TOWLES, B. "Route Packets, not Wires: On-Chip Interconnection Networks". Em: DAC,
2001, pp.684-689.
[3] PALMA, J.; MACON, C.; MORAES, F.; CALAZANS, N.; REIS, R.; SUSIN, A.; “Mapping Embedded
Systems onto NoCs – The Traffic Effect on Dynamic Energy Estimation”. Em: SBCCI, 2005, pp. 196-201.
[4] SYLVESTER, D.; CHENMING Wu; "Analytical modeling and characterization of deep-submicrometer
interconnect". Congresso do IEEE. Vol.89, No.5, pp.634-664, 2001.
[5] MARCON, C.; CALAZANS, N.; MORAES, F.; SUSIN, A.; REIS, I.; HESSEL, F. “Exploring NoC
Mapping Strategies: An Energy and Timing Aware Technique”. Em: DATE, 2005, pp.502-507.
IX Salão de Iniciação Científica – PUCRS, 2008
Download

62000 - Thiago Raupp da Rosa