Introdução ao módulo LabVIEW FPGA Guilherme Yamamoto Engenheiro de Marketing de Produto
Tecnologia FPGA Blocos de E/S Acesso direto às E/S digitais e analógicas. Interconexões programáveis Roteamento de sinais por meio da matriz FPGA Blocos de memória Armazenam conjuntos ou valores de dados na RAM definida pelo usuário. Blocos de lógica configurável (CLBs) Implementam a lógica usando flip-flops e LUTs. Multiplicadores e DSPs Implementam o processamento de sinais usando circuitos de multiplicador e de multiplicador acumulado Imagem fornecida pela Xilinx 2
O futuro dos FPGAs: SoCs heterogêneos e com total paralelismo Menor consumo de energia Pequena área ocupada Maior capacidade de reconfiguração Baixo custo Imagem fornecida pela Xilinx: Xilinx_Zynq-7000_AP_SoC.jpg 3
A evolução das abordagens de projeto junto com a tecnologia Abordagem atual Aperfeiçoada 4
Abordagem baseada em processador Entradas CPU Sistema ou dispositivo ~25 us Tempo de resposta Hardware Sistema operacional API de driver Cálculos Software de aplicação Saídas 5
Tomada de decisões baseadas em hardware com FPGA Entradas Hardware CPU Sistema ou dispositivo ~25 ns Tempo de resposta Cálculos Sistema operacional API de driver Software de aplicação Saídas 6
A abordagem da NI Arquitetura LabVIEW RIO Entrada analógica Saída analógica E/S digitais E/S digitais FPGA Processador 7
Módulo LabVIEW FPGA Use o LabVIEW para projetar o hardware Alivie as partes mais importantes de sua aplicação Controle de alta velocidade Processamento in-line de sinais Protocolos customizados Sincronização, triggers e temporização customizados Estímulo/resposta mais rápidos nos testes 8
Elementos do LabVIEW FPGA Interface de E/S Comunicação de dados Temporização Controle 9
Abstração das complexidades do hardware Adquire dados analógicos ponto a ponto Transfere dados analógicos diretamente para a memória do processador via FIFO para data logging, display etc. LabVIEW FPGA vs. ~4000 linhas de VHDL VHDL 10
Mapeamento do LabVIEW em um FPGA F A B C D W X Y Z 11
LabVIEW: Ambiente gráfico de desenvolvimento de sistemas Projeto = Configuração do sistema VI = Aplicação Painel frontal = Interface de usuário Diagrama de blocos = Código 12
Programe com o LabVIEW FPGA Elementos familiares de programação do LabVIEW Desenvolva, simule, depure, compile e implemente com o LabVIEW Integre IP externas ao FPGA Recursos de alto desempenho Funções matemáticas de alta velocidade Controle avançado de temporização Acesso aos núcleos DSP otimizados Acesso a E/S e periféricos API simples para E/S do painel frontal Transmissão em banda larga por PCI Express para o Host ou outros dispositivos PXI Acesso aleatório à leitura/gravação de DRAM 13
Os FPGAs programáveis pelo usuário em instrumentos projetados por software permitem: 1. Medições e geração de estímulos no FPGA 2. Teste de malha-fechada ou Protocol-Aware 3. Trigger personalizado e redução de dados 4. Execução de teste determinístico e controle do DUT 5. Características de aplicações específicas ou DUT Teste com maior velocidade Reutilização do hardware e adequação ao futuro Testes com menor custo Testes novos e inovadores 14
LabVIEW FPGA para sistemas embarcados Arquitetura LabVIEW RIO Entrada analógica Saída analógica E/S digitais E/S digitais FPGA Processador 15
NI Linux Real-Time: Arquiteturas flexíveis de software 1 LabVIEW 23 C/C++ API FPGA Interface C LabVIEW FPGA Processador de tempo real FPGA 1 LabVIEW RT e FPGA 2 Aplicação LabVIEW RT para E/S, chamando a aplicação C/C++ ou biblioteca 3 C/C++ no processador RT, a API FPGA Interface C se comunica com o LabVIEW FPGA 16
Demonstração de aquisição de dados do sensor usando o LabVIEW FPGA DMA FIFO 17
18
Mecanismos de integração de HDL FPGA VI do LabVIEW FPGA Integração de IP 101110 E/S Socketed CLIP 101110 CLIP definido pelo usuário CLIP definido pelo usuário 19
Seja mais produtivo com o LabVIEW FPGA Verifique com maior rapidez Verifique o código usando E/S simuladas Use o Desktop Execution Node para verificar o código, desenvolvendo bancadas de teste que usam E/S simuladas ou geradas por um arquivo. Verifique a temporização do sinal com o Waveform Probe Use o Digital Waveform Probe para capturar seus sinais e visualizar o histórico. Depure com recursos padrão do LabVIEW em simulação Highlight execution, breakpoints e recursos de execução passo a passo. 20
Verificando seus componentes com o LabVIEW Crie, execute, analise e apresente resultados de teste a partir de um ambiente LabVIEW Crie/colete/gere Vetores/ Entradas/ Casos/ Estímulo/ Especificações Execute Seu componente Colete/analise/exiba Simulador incorporado Saídas/ Simulador de outros fornecedor Resultados/ Hardware FPGA Rastreamento/ IDE baseado em dados/sinais Paletas de geração de sinais Tookits voltados para a indústria Execute Projetos de referência/ Modelo / Grandes bibliotecas de análise Exibição e gráficos Paletas do LabVIEW C/C++,.m e Simulink 21
Síntese de alto nível em FPGA LabVIEW FPGA IP Builder Otimize automaticamente seus VIs do LabVIEW FPGA Porte com facilidade os códigos do LabVIEW Desktop para o FPGA Reutilize seu IP para solucionar diferentes desafios sem modificações Diretrizes para o desempenho VI Desktop Ferramenta High-Level + = Synthesis (HLS) VI de FPGA otimizado LabVIEW FPGA IP Builder Vivado HLS 22
Demonstração da comunicação entre um VI do LabVIEW FPGA com o processador host DMA FIFO 23
24
Rápido retorno de seus investimentos A solução da NI Projeto Simulação e teste em tempo real InsightCM TM Vision Builder 1000s de SW e HW IP Multisim Projeto de circuitos Projeto de sistema gráfico para FPGAs Para C/C++ PXI, FlexRIO e Série R Suporte técnico Treinamento Controle do orçamento Maximização do tempo de operação Simplificação da logística Redução da manutenção Serviços CompactRIO de 4 e 8 slots 500+ Grupos de usuários 1000+ Alliance Partners com 9000+ engenheiros 250+ Add-Ons 3,000,000+ downloads Ecosystem Robusto, de uso comprovado pela indústria 10,000s implementados nos ambientes mais hostis do mundo Controladora industrial CompactRIO Single Board+GPIC CompactRIO Melhor custo de otimização Single Board CompactRIO CompactRIO System On Module 25
Módulo LabVIEW FPGA Alivie as partes mais importantes de sua aplicação Controle em alta velocidade Protocolos customizados Processamento in-line de sinais Temporização customizada, triggering, e sincronização 26
Outros recursos /fpga Fundamentos básicos do FPGA Saiba mais sobre nossas ferramentas o LabVIEW FPGA o Hardware baseado em FPGA Faça sua avaliação do LabVIEW FPGA http://www./rioeval/ Opções de software e kit do desenvolvedor Introdução à tecnologia FPGA http://www./webcast/240/pt/ Instrumentos definidos por software http://www./software-designed-instruments/ 27