Dispositivos Programáveis
Aula 1
Prof Paulo Sérgio Brandão do Nascimento
Centro Federal de Educação
Tecnológica de Pernambuco
Coordenação de Eletrônica e Telecomunicações
Agenda


Introdução
Tipos de Dispositivos Programáveis



Microcontroladores



Lógicas Programáveis
Microprocessadores
CISC
RISC
Arquitetura 51

AT89C51
Introdução

Paradigma Microeletrônico
Introdução
Paradigma Microeletrônico
Primeiro Microprocessador
(Ted Hoff)
Primeiro IC
Fairchild 1958
(Bob Noyce)
Andy Grove,
Robert Noyce,
Goordon Moore
(Intel 1968)
Intel 4004 - 1971
Introdução
Paradigma Microeletrônico
Crueldade da Lei de Moore:
Extraordinária Sofisticação
Gordon Moore
Lei de Moore
Introdução
Paradigma Microeletrônico
Transistor
MOS~30nm
Vírus
Introdução

Paradigma Microeletrônico
~100 TransistoresMOS
Lógicas Programáveis

Paradigma de (Programação - Espacial)
Antigos Sistemas a Relé
Lógicas Programáveis

Paradigma de (Programação - Espacial)
Quadro de Comando a Relé:
Lógica (programação) definida pelas conexões (Hardwire)
Lógicas Programáveis

Paradigma de (Programação - Espacial)
George Boole
(1815-1864):
Álgebra Booleana
Lógica Digital
(Baseada em Portas)
Claude Shannon(1916-2005):
Pai da Eletrônica Digital
e Teoria da Informação
Lógicas Programáveis

Paradigma de (Programação - Espacial)
Quadro de Comando a Relé:
Lógica (programação) definida pelas conexões (Hardwire)
Integração e baixa escala (SSI)
Circuitos integrados de portas lógica
Lógicas Programáveis

Matrizes de Lógica Programável:

PLAs, FPGAs
Programmable Logig Chip (PLA)
Monolithic Memories Inc -PAL 16L8
FPGA (Field Programmable Gate Array)
Xilinx Spartan 3 Device
Lógicas Programáveis

Matrizes de Lógica Programável:

PLA
PLAs:
Lógicas Programáveis

Matrizes de Lógica Programável:

FPGAs:
FPGA
CLBs (Configurable Logic Bocks) Roteamento
Xilinx Spartan 3 Device
Xilinx FPGA
IOBs (Input Output Bocks)
Lógicas Programáveis

Matrizes de Lógica Programável:

FPGAs:
FPGA
CLBs (Configurable Logic Bocks) Roteamento
Xilinx Spartan 3 Device
Xilinx FPGA
IOBs (Input Output Bocks)
Detalhes dos FPGAS
Matrizes de Roteamento
Conexão Programável
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS
Conexões Programáveis:
On
Off
Transmissor MOS ===> Delay!!!
Detalhes do FPGA
K
LUT
Inputs
Out
D FF
Clock
Programmable
IO
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
BLE
#1
CLB
CLB
Programmable
I
Logic (CLB) Inputs
CLB
Clock
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
FPGA
Programmable
Routing
Config_bit
Plano de Configuração SRAM
Interface de Configuração
N
N
Outputs
I
BLE
#N
Vantagens e Desvantagem da
Lógica Programável

Vantagens:






Alto grau de paralelismo das operações
Granularidade fina a nível de bit
Alta flexibilidade e capacidade de otimização para a aplicação
Alta densidade de entrada e saída de dados (até milhares de pinos de
entrada e saída)
Melhor relação potencia/processamento (comp. com microprocessadores)
Desvantagens:





Custo alto
Grande consumo de área com recursos de programação
Altos tempos de configuração
Retardos de propagação significativos (reduz a velocidade de operação)
Projeto da Aplicação complexo (estilo de projeto de ASICs)

ASICs = Applications Specific Integrated Circuits
Microprocessadores
(Microcontroladores)
Programação Temporal
Add r1,r2 Mov r1,[r2]
Nor r2,#10 Call Address
CPU
Sistema de Memória
Programa Armazenado
.....
Temp db 00;
Press db 00;
Veloc dp 00;
....
....
Portas I/O
Mundo Externo
Add r1,r2;
Mov [r2],r1;
Nor r2,r3;
Call F_Address;
Push r5;
Ret;
Conjunto de Instruções
CISC ou RISC
Circuitos eletrônicos
Completamente fixos
No processador
(Hardware)
Desenvolvimento
da aplicação via
Programação
(software)
....
....
Tempo (execução sequencial)
Vantagens e Desvantagens
dos Microprocessadores

Vantagens





Menor área para programação
Maiores velocidades de clock (baixo retardo de propagação)
Projeto de Aplicação bastante simples baseado em
desenvolvimento de software (programação)
Baixo custo do componente
Desvantagens




Dificuldades de utilização do paralelismo de aplicação
Granularidade a nível de palavras: desperdício de hardware na
manipulação de bits
Pouca flexibilidade para otimizações voltadas a aplicação
Maior consumo de potência por processamento
Porque Estudar Dispositivos
programáveis
Microprocessadores,
Microcontroladores e Lógicas
Programáveis ?
Porque Existe Mercado para
esta área, atualmente,
E uma Tendência de
Crescimento
Tecnologia de Sistemas Microprocessados no Mercado
Smart OK e Connect OK –
Produtos completamente
desenvolvidos por
Professores e alunos do
CEFET-PE
Aumento do Nível de integração
-> tendência a SoCs

SoC = System on Chip
System on Chip Complexo
RX0 CLK
RX1 CLK
RX2 CLK
TX
CLK
CAN Network
CAN
HDLC RX
Controller
HDLC RX
Controller
HDLC RX
Controller
HDLC TX
Controller
FIFO
FIFO
FIFO
FIFO
AMBA AHB
AMBA AHB
AMBA AHB
AMBA AHB
>100Mbps
BUS LVDS
CAN
Interface
Parallel Port
Interface
AMBA AHB
FIFO
AMBA AHB
AMBA AHB
System Bus
POR
AMBA AHB
AMBA AHB
ROM LUT
EDAC
Bootstrap
DECDED
LEON Sparc V8
PIO
UART
CORDIC
Coprocessor
CF+ I/F
True IDE
+2.5V +3.3V
Linear
Regulator
+3.3V
1M*64
SRAM
SP
TC
Debug
170Mbyte
Microdrive
ESA Core
SSTL Core
Projetos Baseados em Plataforma
MEM
RTOS, SW
MEM
CACHE
CPU
RTOS, SW
CACHE
CPU
FPGA
FPGA
CTRL
FPGA MEM
CTRL
FPGA MEM
Projetos Baseados em Plataforma
Tipos de Usuários de PBD:
•Power Users:
•Modifica a plataforma em
todos os níveis (hw e sw)
•Application Users:
•Desenvolvedor de Software
•Uso de IPs de bibliotecas
•Package Users:
•Desenvolvimento de Software
para aplicação apenas
Hardware Implementation
System Project
MatLab
Simulink
Xilinx ISE
Software
Implementation
C, Assembly Compilers
FPGA Board
Microprocessor System
A plataforma que usaremos no
Curso
AT89C51
(Atmel)
Ambiente de
Programação
Assembly
Conclusão




Dispositivos programáveis são muitos
importantes na tecnologia eletrônica atual
Todo os sistema atuais tendem a incorporar
funções microprocessadas e são baseados em
plataformas
O sistemas são extremamente complexos e
requerem muito estudo e dedicação por parte
do Aluno
As bases de eletricidade, eletrônica analógica
e digital são fundamentais para que o aluno
tenha o desempenho necessário no estudos
dos sistemas embarcados modernos
Download

Dispositivos Programáveis - Centro de Informática da UFPE