Graduação em Engenharia Eletrônica Universidade Federal de Itajubá IESTI Dispositivos Lógicos Programáveis (DLPs) Prof. Rodrigo de Paula Rodrigues
DLP Conteto Grau de integração EIB - SSI EIM - MSI EIA - LSI EIMA - VLSI Poucas portas Centenas de portas Milhares de portas > milhares de portas Testes e implementação manuais Implementação manual Implementação e testes automatizados Simulação, implementação e validação automatizados Montagens em placas de protótipo Simulação lógica e de circuitos Montagens em placas de protótipo Simulação lógica e de circuitos Posicionamento e roteamento automáticos Presença inestimável de sofisticadas ferramentas de automatização Ferramentas EDA e Dispositivos lógicos programáveis Simulação Testes Implementação Projeto
DLP Conteto Sistemas digitais Circuitos convencionais Microprocessadores Microcomputadores e Processadores de sinais
DLP Conteto Circuito digital microprocessador Programa Comando 1 Comando 2... Comando N Circuito físico de eecução das instruções Lógica a ser implementada Realização da lógica requerida Circuito físico correspondente Circuito digital convencional
DLP Conteto Circuito digital microprocessador Programa and A, B sta C Circuito de decodificação Circuito de eecução A B C Realização da lógica requerida A B C Circuito digital convencional
DLP Conteto
DLP Conteto A B C ULA de 1 bit de um circuito digital microprocessador Circuito digital convencional
DLP Conteto Fato importante: Lógica implementada por Lógica implementada por é sempre mais rápida que Programa Comando 1 Comando 2... Comando N
DLP Conteto Aplicações contemporâneas: Requisitos de tempo de resposta restritivos Implementação lógica
DLP Conteto Implementações: Grau de integração Compleidade de funções Dispositivos Circuitos Lógicos SLI e MSI Programáveis
DLP Conteto O que são os DLPs? DLP circuitos digitais Adaptáveis à lógica a eecutarem
DLP Conteto O que são os DLPs? 1.................... N Lógica a ser implementada adaptação implementação
DLP Vantagem Vantagens do uso de DLPs DLP
DLP Vantagens Vantagens do uso de DLPs Placa de circuito impresso Placa de circuito impresso (com a mesma função lógica) Tipo 1 Tipo 2 DLP Tipo N Tipo 3 Menor espaço Menor compleidade Menor consumo Mais confiáveis Menor custo
DLP Classes Classes de DLPs Simples DLPs (SPLD) Soma-de-produtos Fusível, EPROM e EEPROM Compleos DLPc (CPLD CPLD) Vários DLPS em um mesmo CI EPROM, EEPROM e Flash Blocos de E/S com registros Arranjos programáveis em campo (FPGA) Vários blocos programáveis SRAM, Flash e Antifusíveis Recursos sofisticados: RAM, DSP Lógica implementada por tabelas
DLP Estrutura básica A B Estrutura básica de um DLPs Matriz E (AND) AB AB AB Linhas Produto AB A A B B Fusíveis Linhas de entrada O 0 O 1 O 2 O 3 Saídas na forma de somas-de-produtos
DLP Estrutura básica Estrutura básica de um DLPs (notação simplificada) A B Fusível queimado Fusível intacto AB Máscara para programação AB 0 0 0 1 Sem coneão Coneão permanente AB AB 1 0 0 1 1 0 0 1 0 1 0 1 A A B B O 0 O 1 O 2 O 3
DLP DLP por meio de memórias PROM como DLPs Função lógica a implementar AB + C Obter a tabela-verdade Levantar os mintermos Gerar a soma de produtos
DLP DLP por meio de memórias A B C PROM como DLPs! A estrutura não é otimizada. ABC ABC ABC A B C ABC ABC ABC ABC A A B B C C O 0 O 1 O 2 O 3 AB + C 1 0 A + B
DLP DLP por meio de memórias PROM como DLPs 0 +Vcc A 0 Decodificador 1 A 1 2 3 D 3 D 2 D 1 D 0
DLP DLP por meio de memórias DLPs PAL (Programmable Logic Array) A B C Coneão permanente Sem coneão Fusíveis intactos A A B B C C O 0 O 1 O 2 O 3
DLP DLP por meio de memórias DLPs PAL (Programmable Logic Array) A B C AB C A 0 B C AB AB A A B B C C O 0 O 1 O 2 O 3 Eemplo: PAL16L8 e PAL16R8 AB + C A B+C A + B
DLP DLPS por meio de blocos lógicos DLPs GAL (Generic Logic Array) CLK Macrocélula de saída GAL Pinos de entrada. D Q Mu 4-para-1 Pino de E/S Q Mu 2-para-1 2 bits Matriz programável Modos de operação programáveis Eemplo: GAL
DLP DLPC por meio de blocos lógicos DLPc (CPLD) PAL PAL PAL PAL PAL Recursos adicionais
DLP DLPC por meio de blocos lógicos DLPc Família Ma II da Altera Elemento lógico (LE) simplificado da família Ma II D0 D1 D2 D3 LUT Saída D Q D0 D1 Y Q S CLK
DLP DLPC por meio de blocos lógicos DLPc Família Ma II da Altera Tabela de recuperação Look-Up Table (LUT) SRAM 16 1 A B C LUT Z = f(a, B, C, D) 0 f(0,0,0,0) 1 f(0,0,0,1) 2 f(0,0,1,0) D Saída 15 f(1,1,1,1)
DLP DLPC por meio de blocos lógicos DLPc Família Ma II da Altera Bloco lógico (10 LE)
DLP DLPC por meio de blocos lógicos DLPc Família Ma II da Altera Ma II Memória não volátil Configuração do DLPc (CPLD)
DLP FPGA por meio de blocos lógicos FPGA Família Cyclone da Altera Elemento lógico (LE) simplificado da família Cyclone (base no Ma II) D0 D1 D2 D3 LUT Saída D Q D0 D1 Y Q S CLK
DLP FPGA por meio de blocos lógicos FPGA Família Cyclone da Altera Bloco lógico (16 LE) PLL DSP RAM PLL DSP RAM
DLP Eercícios Implemente a função combinacional de unidades da seguinte célula lógica. B C A permanente O 0 Fusíveis intactos combinacional Z = (A+C)(B+D) por meio de unidades da seguinte célula lógica Coneão permanente Sem coneão O 1 O 2 O 3
DLP Eercícios. Implemente a máquina de estados seguinte por meio de unidades da célula FPGA apresentada 1/0 SA 0/0 SB 0/0 LUT D0 D1 Saída D Q 1 0 Y 1/1 Q CLK S
DLP Eercícios. Máquina de estados correspondente 0/0 Z 1/0 SA SB 0/0 X DQ Q 1/1 K Q CLK
DLP Conteto Todos presentes nas bibliografias
DLP Fim Obrigado