Agenda
● O que são FPGAs
● Fluxo de desenvolvimento com FPGA
● Definição de Reconfiguração Dinâmica Parcial
● Conceitos gerais e terminologia
● Exemplo de Sistemas Redundantes
● Fluxo de desenvolvimento com reconfiguração dinâmica parcial
● Prós e contras
● Isolation
● Relocation
● RTRLib
● Exemplos de Aplicações
O que são FPGAs
Basic FPGA architecture (1) Other blocks in the FPGA architecture (2)
Fluxo de desenvolvimento com FPGAs
Fluxo de desenvolvimento
com FPGA (adaptado de (3))
Definição de Reconfiguração Dinâmica Parcial
Descrição conceitual de reconfiguração parcial (4)
ICAP
Definição de Reconfiguração Dinâmica Parcial
Descrição conceitual de reconfiguração parcial (4)
ICAP
PCAP
Definição de Reconfiguração Dinâmica Parcial
Descrição conceitual de reconfiguração parcial (4)
ICAP
PCAP
JTAG
Definição de Reconfiguração Dinâmica Parcial
Descrição conceitual de reconfiguração parcial (4)
Conceitos gerais
Implementação final de uma arquitetura reconfigurável
incluindo a lógica estática e as partições reconfiguráveis
Conceitos gerais SoC
Soc - System on Chip
Implementação final de uma arquitetura reconfigurável
incluindo a lógica estática e as partições reconfiguráveis
Conceitos gerais SoC
PS
Soc - System on Chip
PS - Processing System
Implementação final de uma arquitetura reconfigurável
incluindo a lógica estática e as partições reconfiguráveis
Conceitos gerais SoC
PS PL
Soc - System on Chip
PS - Processing System
PL - Programmable Logic
Implementação final de uma arquitetura reconfigurável
incluindo a lógica estática e as partições reconfiguráveis
Conceitos gerais
RP
RP - Reconfigurable Partition
Implementação final de uma arquitetura reconfigurável
incluindo a lógica estática e as partições reconfiguráveis
Conceitos gerais
RP
RM1
RM3
RM2
RP - Reconfigurable Partition
RM - Reconfigurable Module
Implementação final de uma arquitetura reconfigurável
incluindo a lógica estática e as partições reconfiguráveis
Conceitos gerais
RP
RM1
RM3
RM2
RP - Reconfigurable Partition
RM - Reconfigurable Module
Implementação final de uma arquitetura reconfigurável
incluindo a lógica estática e as partições reconfiguráveis
Conceitos gerais
RP
RM1
RM3
RM2
RP - Reconfigurable Partition
RM - Reconfigurable Module
Implementação final de uma arquitetura reconfigurável
incluindo a lógica estática e as partições reconfiguráveis
Conceitos gerais
Implementação final de uma arquitetura reconfigurável
incluindo a lógica estática e as partições reconfiguráveis
RP
RM1
RM3
RM2
RP - Reconfigurable Partition
RM - Reconfigurable Module
Conceitos gerais
Static
Logic
Implementação final de uma arquitetura reconfigurável
incluindo a lógica estática e as partições reconfiguráveis
Conceitos gerais
Static
Logic
Partition
pins
Implementação final de uma arquitetura reconfigurável
incluindo a lógica estática e as partições reconfiguráveis
Conceitos gerais
Static
Logic
Partition
pins
Frame Granularity
Implementação final de uma arquitetura reconfigurável
incluindo a lógica estática e as partições reconfiguráveis
Exemplo de Aplicação
(6)
(a) Triple Module Redundancy (5)
Fluxo de desenvolvimento com Reconfiguração Parcial
Descrição do fluxo de
desenvolvimento com PR (8)
Prós e contras
Complexidade
Tempo de Reconfiguração
Utilização de recursos para a lógica
de reconfiguração
Flexibilidade
Recuperação de falhas
Possível redução em: área, custo,
consumo.
Isolation
Exemplo de aplicação crítica implementada em FPGA com Xilinx IDF (9)
Feed-Through Routes
Trusted Routes
Relocation
Partitions with feed-through route and different placement of partition pins (10) Different footprints of partitions implemented in an FPGA (10)
Partition Pins
Compatibility
No Feed-through
Routes
Footprint
Compatibility
RTRLib
Diagrama de blocos do
fluxo proposto para
desenvolvimento com o
RTRLib
RTRLib
Exemplo de Aplicação: Detecção de terrenos utilizando MLP
Exemplo de Aplicação: Detecção de terrenos utilizando MLP
Exemplo de Aplicação: Controle de uma prótese
miocinética de mão usando regressores lineares
Overview of the embedded myokinetic control interface for a prosthetic hand (11).
Exemplo de Aplicação: Controle de uma prótese
miocinética de mão usando regressores lineares
Exemplo de Aplicação: Controle de uma prótese
miocinética de mão usando regressores lineares
Exemplo de Aplicação: Controle de uma prótese
miocinética de mão usando regressores lineares
Referências
[1] BROWN, S. D. Fundamentals of digital logic with Verilog design. [S.l.]: Tata McGraw-Hill Education,
2007.
[2] XILINX. Introduction to FPGA Design with Vivado High-Level Synthesis - UG998. 2019.
<https://www.xilinx.com/support/documentation/sw_manuals/ug998-vivado-intro-fpga-design-hls.pdf>.
Accessed: 2019-03-18.
[3] XILINX. Vivado Design Suite User Guide Design Flows Overview - UG892. 2018. <https://www.
xilinx.com/support/documentation/sw_manuals/xilinx2018_2/ug892-vivado-design-flows-overview.pdf>.
Accessed: 2018-10-08.
[4] GUIDE, U. Introduction to Partial Reconfiguration Methodology. 2015.
Referências
[5] Hybrid fault tolerant control for air-fuel ratio control of internal combustion gasoline engine using
Kalman filters with advanced redundancy - Scientific Figure on ResearchGate. Available from:
https://www.researchgate.net/figure/Architecture-of-triple-modular-redundancy-TMR_fig4_332471620
[accessed 25 Apr, 2023]
[6] F. G. de Lima Kastensmidt, G. Neuberger, R. F. Hentschke, L. Carro, and R. Reis, “Designing
fault-tolerant techniques for sram-based fpgas,” IEEE Design & Test of Computers, vol. 21, no. 6,
pp. 552–562, 2004.
[8] XILINX. Partial Reconfiguration User Guide - UG702. 2013. <https://www.xilinx.com/support/
documentation/sw_manuals/xilinx14_5/ug702.pdf>. Accessed: 2018-02-21.
[9] XILINX. Isolation Design Flow for Xilinx 7 Series FPGAs or Zynq-7000 AP SoCs - XAPP1222. 2016.
<https://www.xilinx.com/support/documentation/application_notes/xapp1222-idf-for-7s-or-zynq-vivado.
pdf>. Accessed: 2019-06-01.
Referências
[10] RETTKOWSKI, J.; FRIESEN, K.; GÖHRINGER, D. Repabit: Automated generation of relocatable
partial bitstreams for Xilinx Zynq fpgas. In: IEEE. 2016 International Conference on ReConFigurable
Computing and FPGAs (ReConFig). [S.l.], 2016. p. 1–8.
[11] CLEMENTE, F.; IANNICIELLO, V.; GHERARDINI, M.; CIPRIANI, C. Development of an
embedded myokinetic prosthetic hand controller. Sensors, Multidisciplinary Digital Publishing Institute,
v. 19, n. 14, p. 3137, 2019.
www.embarcados.com.br
linkedin.com/embarcados
@portalembarcados
youtube/Embarcados TV
OBRIGADO!

Webinar: Introdução à Reconfiguração dinâmica parcial em FPGAs

  • 3.
    Agenda ● O quesão FPGAs ● Fluxo de desenvolvimento com FPGA ● Definição de Reconfiguração Dinâmica Parcial ● Conceitos gerais e terminologia ● Exemplo de Sistemas Redundantes ● Fluxo de desenvolvimento com reconfiguração dinâmica parcial ● Prós e contras ● Isolation ● Relocation ● RTRLib ● Exemplos de Aplicações
  • 4.
    O que sãoFPGAs Basic FPGA architecture (1) Other blocks in the FPGA architecture (2)
  • 5.
    Fluxo de desenvolvimentocom FPGAs Fluxo de desenvolvimento com FPGA (adaptado de (3))
  • 6.
    Definição de ReconfiguraçãoDinâmica Parcial Descrição conceitual de reconfiguração parcial (4)
  • 7.
    ICAP Definição de ReconfiguraçãoDinâmica Parcial Descrição conceitual de reconfiguração parcial (4)
  • 8.
    ICAP PCAP Definição de ReconfiguraçãoDinâmica Parcial Descrição conceitual de reconfiguração parcial (4)
  • 9.
    ICAP PCAP JTAG Definição de ReconfiguraçãoDinâmica Parcial Descrição conceitual de reconfiguração parcial (4)
  • 10.
    Conceitos gerais Implementação finalde uma arquitetura reconfigurável incluindo a lógica estática e as partições reconfiguráveis
  • 11.
    Conceitos gerais SoC Soc- System on Chip Implementação final de uma arquitetura reconfigurável incluindo a lógica estática e as partições reconfiguráveis
  • 12.
    Conceitos gerais SoC PS Soc- System on Chip PS - Processing System Implementação final de uma arquitetura reconfigurável incluindo a lógica estática e as partições reconfiguráveis
  • 13.
    Conceitos gerais SoC PSPL Soc - System on Chip PS - Processing System PL - Programmable Logic Implementação final de uma arquitetura reconfigurável incluindo a lógica estática e as partições reconfiguráveis
  • 14.
    Conceitos gerais RP RP -Reconfigurable Partition Implementação final de uma arquitetura reconfigurável incluindo a lógica estática e as partições reconfiguráveis
  • 15.
    Conceitos gerais RP RM1 RM3 RM2 RP -Reconfigurable Partition RM - Reconfigurable Module Implementação final de uma arquitetura reconfigurável incluindo a lógica estática e as partições reconfiguráveis
  • 16.
    Conceitos gerais RP RM1 RM3 RM2 RP -Reconfigurable Partition RM - Reconfigurable Module Implementação final de uma arquitetura reconfigurável incluindo a lógica estática e as partições reconfiguráveis
  • 17.
    Conceitos gerais RP RM1 RM3 RM2 RP -Reconfigurable Partition RM - Reconfigurable Module Implementação final de uma arquitetura reconfigurável incluindo a lógica estática e as partições reconfiguráveis
  • 18.
    Conceitos gerais Implementação finalde uma arquitetura reconfigurável incluindo a lógica estática e as partições reconfiguráveis RP RM1 RM3 RM2 RP - Reconfigurable Partition RM - Reconfigurable Module
  • 19.
    Conceitos gerais Static Logic Implementação finalde uma arquitetura reconfigurável incluindo a lógica estática e as partições reconfiguráveis
  • 20.
    Conceitos gerais Static Logic Partition pins Implementação finalde uma arquitetura reconfigurável incluindo a lógica estática e as partições reconfiguráveis
  • 21.
    Conceitos gerais Static Logic Partition pins Frame Granularity Implementaçãofinal de uma arquitetura reconfigurável incluindo a lógica estática e as partições reconfiguráveis
  • 22.
    Exemplo de Aplicação (6) (a)Triple Module Redundancy (5)
  • 23.
    Fluxo de desenvolvimentocom Reconfiguração Parcial Descrição do fluxo de desenvolvimento com PR (8)
  • 24.
    Prós e contras Complexidade Tempode Reconfiguração Utilização de recursos para a lógica de reconfiguração Flexibilidade Recuperação de falhas Possível redução em: área, custo, consumo.
  • 25.
    Isolation Exemplo de aplicaçãocrítica implementada em FPGA com Xilinx IDF (9) Feed-Through Routes Trusted Routes
  • 26.
    Relocation Partitions with feed-throughroute and different placement of partition pins (10) Different footprints of partitions implemented in an FPGA (10) Partition Pins Compatibility No Feed-through Routes Footprint Compatibility
  • 27.
    RTRLib Diagrama de blocosdo fluxo proposto para desenvolvimento com o RTRLib
  • 28.
  • 29.
    Exemplo de Aplicação:Detecção de terrenos utilizando MLP
  • 30.
    Exemplo de Aplicação:Detecção de terrenos utilizando MLP
  • 31.
    Exemplo de Aplicação:Controle de uma prótese miocinética de mão usando regressores lineares Overview of the embedded myokinetic control interface for a prosthetic hand (11).
  • 32.
    Exemplo de Aplicação:Controle de uma prótese miocinética de mão usando regressores lineares
  • 33.
    Exemplo de Aplicação:Controle de uma prótese miocinética de mão usando regressores lineares
  • 34.
    Exemplo de Aplicação:Controle de uma prótese miocinética de mão usando regressores lineares
  • 35.
    Referências [1] BROWN, S.D. Fundamentals of digital logic with Verilog design. [S.l.]: Tata McGraw-Hill Education, 2007. [2] XILINX. Introduction to FPGA Design with Vivado High-Level Synthesis - UG998. 2019. <https://www.xilinx.com/support/documentation/sw_manuals/ug998-vivado-intro-fpga-design-hls.pdf>. Accessed: 2019-03-18. [3] XILINX. Vivado Design Suite User Guide Design Flows Overview - UG892. 2018. <https://www. xilinx.com/support/documentation/sw_manuals/xilinx2018_2/ug892-vivado-design-flows-overview.pdf>. Accessed: 2018-10-08. [4] GUIDE, U. Introduction to Partial Reconfiguration Methodology. 2015.
  • 36.
    Referências [5] Hybrid faulttolerant control for air-fuel ratio control of internal combustion gasoline engine using Kalman filters with advanced redundancy - Scientific Figure on ResearchGate. Available from: https://www.researchgate.net/figure/Architecture-of-triple-modular-redundancy-TMR_fig4_332471620 [accessed 25 Apr, 2023] [6] F. G. de Lima Kastensmidt, G. Neuberger, R. F. Hentschke, L. Carro, and R. Reis, “Designing fault-tolerant techniques for sram-based fpgas,” IEEE Design & Test of Computers, vol. 21, no. 6, pp. 552–562, 2004. [8] XILINX. Partial Reconfiguration User Guide - UG702. 2013. <https://www.xilinx.com/support/ documentation/sw_manuals/xilinx14_5/ug702.pdf>. Accessed: 2018-02-21. [9] XILINX. Isolation Design Flow for Xilinx 7 Series FPGAs or Zynq-7000 AP SoCs - XAPP1222. 2016. <https://www.xilinx.com/support/documentation/application_notes/xapp1222-idf-for-7s-or-zynq-vivado. pdf>. Accessed: 2019-06-01.
  • 37.
    Referências [10] RETTKOWSKI, J.;FRIESEN, K.; GÖHRINGER, D. Repabit: Automated generation of relocatable partial bitstreams for Xilinx Zynq fpgas. In: IEEE. 2016 International Conference on ReConFigurable Computing and FPGAs (ReConFig). [S.l.], 2016. p. 1–8. [11] CLEMENTE, F.; IANNICIELLO, V.; GHERARDINI, M.; CIPRIANI, C. Development of an embedded myokinetic prosthetic hand controller. Sensors, Multidisciplinary Digital Publishing Institute, v. 19, n. 14, p. 3137, 2019.
  • 38.