Title: Servomecanismo N7SRV
1ServomecanismoN7SRV
6.a Aula Controladores Baseado em FPGA
2Controladores Baseado em FPGA
- O controlador CompactRIO contém um processador e
um FPGA reconfigurável. O processador é utilizado
para comunicação de rede, data logging, controle
e processamento com o sistema operacional NI
Linux Real-Time de alto determinismo e
confiabilidade. - O FPGA programável pelo usuário dá a capacidade
de implementar hardware customizado para
aplicações de controle (servoacionamento) em alta
velocidade, processamento de dados on-line ou
funções complexas de temporização e trigger.
3Controladores Baseado em FPGA
- Os sistemas CompactRIO são formados por uma
controladora embarcada reconfigurável,
responsável pela comunicação e processamento, um
chassi reconfigurável, que aloja um FPGA
programável pelo usuário, módulos de E/S com
troca a quente, e o software gráfico LabVIEW, que
oferece rapidez na programação de tempo real,
Windows e FPGAs.
4Recursos do Controlador
5 Módulos de Entrada/Saída
- Os módulos de entrada/saída oferecem medições de
alta exatidão às aplicações avançadas de
monitoramento e controle. - Todos os módulos oferecem condicionamento de
sinais para medições específicas, opções de
isolação no banco e entre canais e amplas faixas
de temperatura, para atender as necessidades de
diversas aplicações e ambientes. - Com mais de 100 módulos de E/S para medições,
controle e comunicação, você pode conectar suas
aplicações a qualquer sensor, através de qualquer
barramento.
6 Módulos de Entrada/Saída
7 Módulos de Entrada/Saída
Figure 2 - NI 9401 Module 16 digital Input
8 Módulos de Entrada Analógica
9Princípio de Funcionamento
- O CompactRIO combina um processo embarcado de
tempo real, um FPGA de alto desempenho e módulos
de entrada e saída (E/S) de troca quente. - Cada módulo E/S possui conexão direta com o FPGA,
fornecendo baixo nível de personalização de tempo
e processamento de sinal. - O FPGA é conectado ao processador embarcado de
tempo real através de um barramento PCI de alta
velocidade. Isto representa uma arquitetura de
baixo custo com acesso aberto para os recursos de
hardware de baixo nível. - O LabVIEW contém um mecanismo de transferência de
dados interno para passar dados dos módulos E/S
para o FPGA e também do FPGA para o processador
embarcado para análise de tempo real, pós
processamento, data logging ou comunicação com um
computador de hospedagem ligado a rede.
10 FPGA
- O FPGA embarcado é um chip de alto desempenho,
reconfigurável que engenheiros podem programar
utilizando as ferramentas LabVIEW FPGA.
Tradicionalmente, desenvolvedores de FPGA foram
forçados a aprender e usar complexas linguagens
de desenvolvimento como VHDL para programar
FPGAs. Agora, embarcado no CompactRIO, pode-se
implementar recursos de temporização,
sincronismo, controle e processar sinais
personalizados para sua E/S analógica e digital.
11CPU em Tempo Real
- O sistema embarcado CompactRIO possui um
processador industrial de 400MHz Freescale MP5200
que deterministicamente executa sua aplicação do
LabVIEW Real-Time no confiável sistema
operacional real-time (RTOS) Wind River VxWorks. - O LabVIEW tem funções internas para transferir
dados entre o FPGA e o processador de tempo real
dentro do sistema embarcado CompactRIO. - Existem mais de 600 funções internas no LabVIEW
para montar seu sistema embarcado de múltiplas
tarefas para controle, análise, data logging e
comunicação de tempo real. - Pode-se também integrar códigos C/C existente
com o código LabVIEW Real-Time para ganhar tempo
de desenvolvimento.
12Primeiros passos com CompactRIO Software
LabView
13Primeiros passos com CompactRIO Configuração de
I/O
14Primeiros passos com CompactRIO Criação da VI.
15Primeiros passos com CompactRIO Realizando
controle básico
16Primeiros passos com CompactRIO Realizando
controle básico
http//www.ni.com/tutorial/11197/pt/
17Primeiros passos com CompactRIO Curso Completo
http//www.professorcesarcosta.com.br
18Primeiros passos com CompactRIO Curso Completo
19Referências Bibliográficas
20Prática de Programação e Projeto com Dispositivo
FPGA
- SUMÁRIO
- 1. Introdução
- 1.2 Circuitos Integrados Padrões
- 1.3 Circuitos Integrados ASICs
- 2. Conceito de Lógica Programável
- 2.1 Dispositivos Lógicos Programáveis - PLDs
- 2.2 SPLDs (PLA, PAL, GAL e EPLD)
- 2.3 HCPLDs (CPLD e FPGA)
- 3 Kit de Desenvolvimento DE 2
21Introdução
- Os circuitos integrados digitais implementados
em pastilha de silício podem ser classificados em
dois grupos de integração
a) Circuitos integrados padrões
b) Circuitos integrados de aplicação específica
(ASIC)
22Circuitos Integrados Padrões
- Os circuitos integrados padrões são compostos
pelos circuitos de funções fixas, que
correspondem aos componentes digitais básicos
AND, OR, NAND, NOR, NOT, FLIP-FLOPS,etc.
23Exemplos
- Circuitos integrados digitais SSI.
- CI 7400 (4 portas NAND)
- CI 7408 (4 portas AND)
- Circuitos integrados digitais MSI.
- CI 74151 (1 Multiplexador 8x1)
- CI 74LS90 (1contador BCD)
24Circuitos Integrados de Aplicações Específicas
(ASICs)
- Os circuitos integrados de aplicação específicas
- ASICs são aqueles que precisam de um processo
de fabricação especial, que requer máscaras
específicas para cada projeto.
25Exemplos
CISC (Conjunto de instruções complexas)
RISC (Conjunto de instruções reduzidas)
26Arquitetura Básica
27- Microprocessadores são componentes extremamente
flexíveis devido a sua programabilidade.
- A programação do componente torna-o flexível
para implementação de vários tipos de aplicação ,
entretanto, a implementação de um algoritmo por
software será mais lenta que quando implementada
por um hardware equivalente.
28 Somador por Software
Início
A ? 04h
Estados Endereços Mnemônico
Operando Comentários
7 0000 MVI A, 04 Move
04 para A
B ? 03h
7 0002 MVI B, 03 Move
03 para B
A ? A B
4 0004 ADD B Soma A
e B para A
Fim
5 0005 HLT
Pára.
- Clock 4 Mhz Tempo de
estado 0,25 µs
29Somador por Hardware
A
S
B
S AB
13 nanosegundos (delay)
30- Em ambos os casos apresentados, os circuitos
integrados digitais possuem suas funções internas
fixas, predefinidas, implementadas na construção
do CI no processo de fabricação.
Circuito Integrado MSI
Microcontrolador
31Conceito de Lógica Programável
- Nos últimos 30 anos a tecnologia de projeto de
sistemas digitais se moveu na direção da Lógica
Programável.
- A maioria dos circuitos de controles digitais
modernos estão contidos em um único dispositivo
de Lógica Programável FPGA ou CPLD.
32 - A idéia básica desses dispositivos é permitir ao
projetista configurar o circuito eletrônico
digital desejado dentro do próprio chip.
- Os recursos de hardware serão configurados para
implementar a funcionalidade requerida.
33Dispositivos Lógicos Programáveis - PLDs
- Os PLDs são circuitos integrados que podem ser
configurados pelo próprio usuário. Não apresentam
uma função lógica definida, até que sejam
configurados.
34 - Uma função lógica, seja combinacional ou
seqüencial poderá ser representada na forma de
soma de produtos, através do uso do Teorema de
DeMorgan ou das leis da Álgebra de Boole.
- Uma função lógica complexa de multi níveis
poderá facilmente ser reduzida a uma configuração
de dois níveis usando portas ANDs e portas ORs.
35 Arquitetura básica de um dispositivo PLD
- Algumas propriedades das funções lógicas
possibilitaram a implementação de componentes
eletrônicos contendo arranjos uniformes de portas
ANDs e portas ORs que podem ser programadas.
36 - Os dispositivos de lógica programável PLDs
foram os dispositivos eletrônicos que
possibilitaram a implementação da Lógica
Programável no projeto de circuitos digitais.
- Os PLDs podem ser classificados em função do
número de portas lógicas que comportam como
- SPLDs (Simple Programmable Logic Devices)
- b) HCPLDs (High Complex Programmable Logic
Devices).
37SPLDs (Single Programmable Logic Devices)
- São dispositivos simples de baixa capacidade,
que tipicamente contêm menos de 600 portas
lógicas, fabricados com tecnologia CMOS.
- Exemplos de dispositivos SPLDs
- PLAs (Programmables Logic Arrays)
- PALs (Programmable Arrays Logic)
- GALs (Gate Arrays Logic).
38 - PLA (Programmable Logic Array).
- Introduzidos em 1970 pela Philips.
- A saída do plano AND corresponde ao produto das
entradas.
39 - PAL (Programmable Array Logic).
- Desenvolvido para superar as deficiências dos
PLAs.
40 - GAL (Generic Array Logic).
- Um novo tipo de PAL baseado em células de
memória EEPROM. - Introduzido no mercado pela empresa LATTICE.
41EPLDs (Erasable Programmable Logic Devices)
- São dispositivos lógicos programáveis e
apagáveis que foram introduzidos no mercado pela
empresa ALTERA, no ano de 1983.
- Os dispositivos EPLDs implementavam capacidade
lógica de até 50 dispositivos PALs típicos em um
único circuito integrado.
42 Suas Principais vantagens
- Programabilidade e reprogramabilidade.
- Tecnologia CMOS.
- Integração em larga escala.
- Simplificação e redução do tempo de
desenvolvimento.
43 HCPLDs (High Complex Programmable Logic Devices)
- São dispositivos simples de alta capacidade, que
tipicamente contêm mais do que 600 portas
lógicas, os mais modernos podem atingir cerca de
1.000.000 portas lógicas, fabricados com
tecnologia CMOS.
- Exemplos de dispositivos HCPLDs
- CPLDs (Complex Programmable Logic Devices)
- FPGAs (Field Programmable Logic Devices).
44 CPLDs (Complex Programmable Logic Devices)
- Foram introduzidos no mercado internacional pela
empresa ALTERA, inicialmente como EPLDs.
- São dispositivos programáveis e reprogramáveis
pelo usuário, com alto desempenho, baixo custo
por função e alta capacidade de integração.
45 CPLDs (Complex Programmable Logic Devices)
- Famílias de CPLDs fornecidos pela ALTERA
- MAX II, MAX 3000A e MAX7000.
- Famílias de CPLDs fornecidos pela XILINX
- XA9500XL, XC95144.
46CPLD
- Consiste de um determinado número de blocos
lógicos, onde cada bloco contém uma macrocélula
interligada a uma matriz lógica programável tipo
SPLD. - No centro da arquitetura existe uma interconexão
programável global, que permite a conexão entre
blocos lógicos e células de entrada e saída.
47FPGA (Matriz de Portas Lógicas Programáveis em
Campo
- O FPGA consiste de uma matriz de blocos lógicos
ou células lógicas independentes, cercada de
blocos de entrada e saída, também independentes e
por um conjunto de recursos de interconexão
programáveis, que permitem a interligação
arbitrária dos blocos uns aos outros. - Cada bloco lógico pode ser programado
individualmente para desempenhar uma função
específica. Cada bloco de entrada e saída pode
ser programado para ser uma entrada, uma saída ou
um pino bidirecional global.
48FPGA
- Novas arquiteturas de FPGAs têm sido
desenvolvidas desde 1985, com variações
significativas na composição dos blocos e das
tecnologias de implementação, mas sempre mantendo
a mesma estrutura básica da LCA (Logic Cell
Array) inicial - Blocos lógicos
-
- Blocos de entrada e saída
- Recursos de interligação programáveis.
49 Arquitetura de roteamento
- A arquitetura de roteamento de um FPGA é a forma
pela qual os seus barramentos e as chaves de
interconexão são posicionadas para permitir a
interconexão entre as células lógicas.
- Essa arquitetura permite que se obtenha um
roteamento completo e, ao mesmo tempo, alta
densidade de portas lógicas.
50FPGA
Arquitetura geral de
roteamento de um FPGA.
51 52 Conceitos básicos da arquitetura de um FPGA
- Pinos entradas e saídas dos blocos lógicos
- Conexão ligação elétrica de um par de pinos
- Rede conjunto de pinos que estão conectados
- Bloco de comutação utilizado para conectar dois
segmentos de trilha - Segmento de trilha segmento não interrompido
por chaves programáveis
53 - Canal de roteamento grupo de duas ou mais
trilhas paralelas - Bloco de Conexão permite a conectividade das
entradas e saídas de um bloco lógico com os
segmentos de trilhas nos canais - Chaves programáveis afetam a velocidade, tempo
de propagação dos sinais e definem
características de volatilidade e reprogramação.
54 Tecnologia de programação das chaves de roteamento
- SRAM nessa tecnologia a chave de interconexão é
uma memória estática RAM de um bit. - Antifuse nessa tecnologia a chave de
interconexão é um dispositivo semicondutor de
dois terminais, que no estado não programado
apresenta alta impedância (aberto) e que no
estado programado apresenta baixa impedância
(fechado).
55 - Gate Flutuante nessa tecnologia a chave de
interconexão é um transistor MOS, especialmente
construídos com dois gates flutuantes semelhantes
aos usados nas memórias EPROM e EEPROM . A maior
vantagem dessa tecnologia é a sua capacidade de
programação e a retenção dos dados.
Obs Com a tecnologia Gate Flutuante os dados
podem ser programados com o circuito integrado
instalado na placa, característica denominada ISP
(In System Programmability).
56 FPGA (Field Programmable Gate Arrays)
- Famílias de FPGAs fornecidos pela XILINX
- Artix -7, Kintex-7, Virtex-7, Spartan-6 e
Virtex-6. - Visite o site
- http//www.xilinx.com/products/silicon-devices/fpg
a/index.htm
57 FPGA (Field Programmable Gate Arrays)
- Famílias de FPGAs fornecidos pela ALTERA
- Stratix V, IV, III, II e I
- Arria V, II e I
- Cyclone V, IV, III, II e I
- Visite o site
- http//www.altera.com/devices/fpga/fpga-index.html
58FPGA
- APLICAÇÕES DE FPGA.
- Radio Digital (Wireless).
- Equipamentos em Medicina Ultra Som, etc
- Processamento de Som.
- Processamento de Imagem Aplicações de Vídeo
- Controle Industrial Autônomos, Motion Control.
- DSP (Processamento Digital de Sinais).
59Principais Fabricantes de FPGA e CPLD
Fabricante Webesiet
Achronix Semiconductor www.achronix.com
Actel Corporation www.actel.com
Altera Corporation www.altera.com
Atmel Corporation www.atmel.com
Cypress Semiconductor www.cypress.com
Lattice Semiconductor www.latticesemi.com
Quicklogic Corporation www.quicklogic.com
Xilinx www.xilinx.com
60Placas de Desenvolvimento
Altera DE3 Development System - FPGA Stratix III
60
61Placas de Desenvolvimento
Altera Cyclone III FPGA Development KIT
61
61
61
62KIT DE 2
63KIT DE 2
64Endereço das chaves
65Endereço dos LEDs
66-
- Atenção
- Para obter o software Quartus II, Ver. 9.1, Web
Edition, site do professor www.professorcesarcost
a.com.br.
67 68- 2. Site www.professorcesarcosta.com.br
- Tópicos
- Disciplinas Ministradas N8LB10
- Kits Didáticos com FPGA
- Clube do FPGA
- FPGA
- 3. Site www.fpgacentral.com