
Universidade Federal de Santa catarina (UFSC)
Programa de Pós-graduação em Engenharia, Gestão e Mídia do Conhecimento (PPGEGC)
Detalhes do Documento Analisado
Centro: Tecnológico
Departamento: Engenharia Elétrica/EEL
Dimensão Institucional: Pesquisa
Dimensão ODS: Ambiental
Tipo do Documento: Projeto de Pesquisa
Título: DESCRIÇÃO AUTOMATIZADA DE HARDWARE USANDO RNS
Coordenador
- HECTOR PETTENGHI ROLDAN
Participante
- HECTOR PETTENGHI ROLDAN (D)
Conteúdo
Introdução e motivação
aritmética residual f...introdução e motivação
aritmética residual foi usada em sistemas de computação digital para vários fins durante muitos anos. sistemas de numeração residual (rns) são sistemas aritméticos sem acarreio com característica modular que oferecem o potencial de alta velocidade e aplicações em baixa potência para aritmética computacional [1]. as operações aritméticas, como adição, subtração, multiplicação e, pode ser realizada de forma independente e simultaneamente em vários canais de resíduos de forma mais eficiente do que no sistemas convencionais binários. o mais notório dessas vantagens é a capacidade de paralelizar algoritmos. esta capacidade é muito significativa na recente tendência de projeto de aceleradores e processadores que se basearam em implementações paralelas massivas, por exemplo, unidades de processamento gráfico (gpus) e unidades centrais de processamento multi-core (cpus). as contribuições relativas do rns na literatura podem ser classificados em dois temas principais: i) as operações de binário a rns (direct conversion), e conversão de rns a binário (reverse conversion) em que o orientador do projeto tem ampla experiência [2-5] e ii) algoritmos/operações paralelas que usam a representação rns.
vários aspectos na área de rns tem se mostrados caminhos promissórios de pesquisa os quais formam o foco da proposta o qual consta de três tarefas apresentadas a seguir:
1.- ferramenta automatizada da codificação de descrição de hardware vhsic hardware description language (vhdl) de estruturas rns.
esta tarefa vai concentrar-se na extensão do repositório rns elaborados em um projeto de pesquisa prévio. entre as estruturas já inseridas no repositório estão as operações modulares mais usadas, ou seja, as conversões de binário a rns, rns a binário, e as operações aritméticas mais eficientes (adição, subtração, multiplicação). outras operações serão inseridas na ferramenta: i) multi-modulo architectures (mmas), baseadas em rns [6], área a qual o orientador tem trabalhado em colaborações com outras universidades [7-8]; ii) operação de extensão de base [7], [10]; iii) comparadores e detetores de sinal usando rns.
resultados esperados: é esperado a partir desta tarefa o desenvolvimento de uma ferramenta com uma ampla gama de operações que complementa a geração automática de descrição de hardware usando rns para um determinado algoritmo incluindo a capacidade de síntese automatizada em uma determinada tecnologia e função custo.
2.- seleção do conjunto de modulo mais eficiente para aplicação especifica.
esta tarefa é encarregada da análise e avaliação dos conjunto de módulos rns definidos a partir da ferramenta de seleção. a partir dos dados obtidos, as informações sobre os recursos da área, tempo e consumo de energia pode ser obtido por diferentes implementações e alvo tecnologia. isso permitirá a obtenção de dados utilizadas para definir as funções de custo para cada estrutura. estas funções de custos serão guardadas e, eventualmente, usadas na ferramenta para decidir uma implementação rns optimizada e assim substituir a escolha por médio das estimativas teóricas usadas atualmente na ferramenta.
estes requerimentos incluem não só o numero de canais, faixa dinâmica mas funções de custo associadas ao performance alvo que dependeram em grande medida do conjunto de modulo usado. esta função custo ligada intimamente à seleção do módulo será realizada no sistema rns completo em vez na contribuição parcial dos seus componentes, como é feito, principalmente, até à data, tendo em conta a gama dinâmica e o número de operações a executar. o número de canais modulares como parâmetro variável interna irá definir a complexidade do processador de rns.
resultados esperados: produzir funções de custo de recursos utilizados, tempo e consumo de energia, para cada aplicação, dependendo da tecnologia alvo para decidir a seleção de módulos mais apropriados para as restrições impostas na tarefa anterior a modo de garantir os rns mais eficientes.
3.- aplicações do rns na área de compressão de dados:
após o desenvolvimento da ferramenta de seleção do conjunto de módulos e da classificação das implementações após síntese por médio do uso de uma biblioteca de dados das arquiteturas rns, é necessário o passo final de avaliar o rns completo obtido a partir da ferramenta em aplicações reais a modo de casos de estudo. serão avaliados diferentes senários de multiplicação por constante modular (mmc). a aplicação de métodos de mmc, formulados no rns, foi reportado em [11]. diferentes métodos de compactação modular serão aplicados aos casos de estudo mmc analisados. três casos de estudo de aplicação do mmc serão analisados:
conversores rns a binário: estudos preliminares de compactação modular em matrizes de informação resultantes de mmc dos conversores rns a binário indicaram um ganho significativo em termos de custo e atraso [12]. nessa linha de trabalho é possível avaliar se existem regras que direcionam a tomada de decisão para geração automática de novos conversores rns a binário.
filtragem adaptativa: uma das aplicações mais promissoras é na área de filtros digitais onde o rns vem apresentando vantagens significativas devido ao uso de operações de soma e multiplicação por constante em cascata, derivando em um problema mmc. o uso de rns na área de filtragem adaptativa foi apresentado no trabalho [13]. os recentes avanços no rns [15] podem ser explorados para obter arquiteturas mais eficientes, em comparação com o estado da arte [14].
deep learning: atualmente, esta sendo aplicado mmc na área de deep learning às camadas convolucioais (convolutional layer). ditas camadas usam massivamente multiplicação e soma ou multiplier and accumulate (macs) e multiplicação por constante.
as arquiteturas de hardware analisadas vão ser descritas em vhdl e sintetizadas na tecnologia de standard cells de 90nm da umc da synopsys. além dos estudo de caso apresentados podem ser explorados métodos de compactação de matrizes de informação usando e sem usar rns para aplicações genéricas.
resultados esperados: métodos de compactação modular serão aplicados aos casos de estudo apresentados. resultados preliminares mostram melhorias de performance em diferentes senários os quais estão dando inicio a novas linhas de pesquisa ao orientador do projeto.
referencias
[1] h. garner; “the residue number system”, ire transactions on electronic computer; vol. ec-8; pp.140-147; (1959).
[2] h. pettenghi, .et al.; “rns reverse converters for moduli sets with dynamic ranges up to (8n+1)-bit”. ieee transactions on circuits and systems. i, regular papers, v. 60, p. 1487-1500, (2013).
[3] h. pettenghi, .et al.; “method to design general rns reverse converters for extended moduli sets”. ieee transactions on circuits and systems ii: express briefs, v. 60, p. 877-881, (2013).
[4] h. pettenghi, .et al., “method for designing two levels rns reverse converters for large dynamic ranges,” integration, the vlsi journal, vol. 55, pp. 22–29, mar. 2016.
[5] h. pettenghi, . et al., “rns reverse converters for moduli sets with dynamic ranges of 9n-bit,” ieee vii international latin american symposium on circuits and systems (lascas), mar. 2016.
[6] h. pettenghi, .et al.; “method for designing multi-channel rns architectures to prevent power analysis sca”. int. symp. on circuits and syst. (iscas14), melbourne, (2014).
[7] h. pettenghi, .et al.; “efficient implementation of multi-moduli architectures for binary-to-rns conversion”. in: 2012 17th asia and south pacific design automation conference (aspdac12), sydney (australia). p. 819, (2012).
[8] h. pettenghi, .et al.; “randomised multi-modulo residue number system architecture for double-and-add to prevent power analysis side channel attacks”. iet circuits, devices & systems, v.7, p. 283-293, (2013).
[10] j.-c. bajard, . et al.; “modular multiplication and base extensions in residue number systems.” in ieee symposium on computer arithmetic - arith, pages 59–65, vail, co, (2001).
[11] i. shuli, .et al.; “multiple constant multiplication through residue number system”. in: 2009 conference record of the forty-third asilomar conference on signals, systems and computers. p. 736–739. (2009)
[12] r. matos, .et al.; “efficient implementation of modular multiplication by constants applied to rns reverse converters”. in 2017 ieee international symposium on circuits and systems (iscas), pages 1–4, (2017).
[13] w. k. jenkins .et al.; “historical patterns of emerging residue number system technologies during the evolution of computer engineering and digital signal processing”. in: 2018 ieee international symposium on circuits and systems (iscas). (2018).
[14] a. molahosseini, .et al.; “embedded systems design with special arithmetic and number systems”. 1st. ed. springer. (2017).
[15] l. xiao, .et al.; ”towards robustness in residue number systems”. ieee transactions on signal processing, v. 65, n. 6, p. 1497–1510, (2017).
Pós-processamento: Índice de Shannon: 3.78572
ODS 1 | ODS 2 | ODS 3 | ODS 4 | ODS 5 | ODS 6 | ODS 7 | ODS 8 | ODS 9 | ODS 10 | ODS 11 | ODS 12 | ODS 13 | ODS 14 | ODS 15 | ODS 16 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
3,05% | 3,86% | 9,21% | 5,45% | 3,02% | 4,97% | 15,44% | 4,44% | 14,47% | 2,60% | 7,88% | 6,26% | 5,15% | 4,51% | 5,83% | 3,87% |
ODS Predominates


3,05%

3,86%

9,21%

5,45%

3,02%

4,97%

15,44%

4,44%

14,47%

2,60%

7,88%

6,26%

5,15%

4,51%

5,83%

3,87%