470 likes | 626 Views
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 Lógicas Programáveis Microprocessadores Microcontroladores
E N D
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 • Lógicas Programáveis • Microprocessadores • Microcontroladores • CISC • RISC • Arquitetura 51 • AT89C51
Introdução • Paradigma Microeletrônico
Intel 4004 - 1971 Introdução Paradigma Microeletrônico Primeiro Microprocessador (Ted Hoff) Andy Grove, Robert Noyce, Goordon Moore (Intel 1968) Primeiro IC Fairchild 1958 (Bob Noyce)
Introdução Paradigma Microeletrônico Crueldade da Lei de Moore: Extraordinária Sofisticação Lei de Moore Gordon Moore
Introdução Paradigma Microeletrônico Transistor MOS~30nm Vírus
~100 TransistoresMOS Introdução • Paradigma Microeletrônico
Lógicas Programáveis Antigos Sistemas a Relé • Paradigma de (Programação - Espacial)
Lógicas Programáveis Quadro de Comando a Relé: Lógica (programação) definida pelas conexões (Hardwire) • Paradigma de (Programação - Espacial)
Lógicas Programáveis George Boole (1815-1864): Álgebra Booleana • Paradigma de (Programação - Espacial) Lógica Digital (Baseada em Portas) Claude Shannon(1916-2005): Pai da Eletrônica Digital e Teoria da Informação
Lógicas Programáveis Quadro de Comando a Relé: Lógica (programação) definida pelas conexões (Hardwire) • Paradigma de (Programação - Espacial) Integração e baixa escala (SSI) Circuitos integrados de portas lógica
Lógicas Programáveis Programmable Logig Chip (PLA) FPGA (Field Programmable Gate Array) • Matrizes de Lógica Programável: • PLAs, FPGAs Monolithic Memories Inc -PAL 16L8 Xilinx Spartan 3 Device
Lógicas Programáveis PLA • Matrizes de Lógica Programável: • PLAs:
Lógicas Programáveis FPGA Roteamento CLBs (Configurable Logic Bocks) • Matrizes de Lógica Programável: • FPGAs: Xilinx Spartan 3 Device Xilinx FPGA IOBs (Input Output Bocks)
Lógicas Programáveis FPGA Roteamento CLBs (Configurable Logic Bocks) • Matrizes de Lógica Programável: • FPGAs: Xilinx Spartan 3 Device Xilinx FPGA IOBs (Input Output Bocks)
Matrizes de Roteamento Conexão Programável Detalhes dos FPGAS
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS Off
Conexões Programáveis: On Transmissor MOS ===> Delay!!! Off
Programmable Logic (CLB) K Out Inputs D FF LUT Clock BLE # 1 N N Programmable Routing I Outputs Config_bit I Inputs Plano de Configuração SRAM BLE # N Interface de Configuração Clock Detalhes do FPGA Programmable IO FPGA
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
Mov r1,[r2] Add r1,r2 Conjunto de Instruções CISC ou RISC Call Address Nor r2,#10 CPU Sistema de Memória Programa Armazenado ..... Temp db 00; Press db 00; Veloc dp 00; .... .... Add r1,r2; Mov [r2],r1; Nor r2,r3; Call F_Address; Push r5; Ret; .... .... Portas I/O Mundo Externo Tempo (execução sequencial) Microprocessadores (Microcontroladores) Programação Temporal Circuitos eletrônicos Completamente fixos No processador (Hardware) Desenvolvimento da aplicação via Programação (software)
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
CAN Network >100Mbps RX0 CLK RX1 CLK RX2 CLK TX CLK CAN BUS LVDS POR HDLC RX Controller HDLC RX Controller HDLC RX Controller HDLC TX Controller Parallel Port Interface CAN Interface FIFO FIFO FIFO FIFO FIFO AMBA AHB AMBA AHB AMBA AHB AMBA AHB AMBA AHB AMBA AHB AMBA AHB AMBA AHB System Bus AMBA AHB LEON Sparc V8 CORDIC Coprocessor ROM LUT Bootstrap EDAC DECDED CF+ I/F True IDE PIO UART +2.5V +3.3V ESA Core Linear Regulator SSTL Core 1M*64 SRAM 170Mbyte Microdrive SP TC Debug +3.3V System on Chip Complexo
MEM MEM CACHE CACHE CPU RTOS, SW CPU RTOS, SW FPGA FPGA CTRL CTRL FPGA MEM FPGA MEM Projetos Baseados em Plataforma
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 SystemProject MatLab Simulink Xilinx ISE Software Implementation FPGA Board C, Assembly Compilers 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