Eletrônica Embarcada - Aula 02 - Familias de Dispositivos FPGA

Embed Size (px)

Citation preview

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    1/46

    Circuitos Lgicos

    CombinacionaisAula 2 - Tecnologia FPGA: famlias de

    dispositivos.

    Prof. Lzaro Camargo

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    2/46

    Famlias de SistemasDigitais

    Como implementar um sistema digital?

    Pr-difundidos

    (gate array/sea-of-gates)

    QCL,

    LPGAs

    ASIC

    (full custom)

    processador

    controlador

    FPGACPLD

    PLA, PAL

    ROM, PROM,EMPROM,EEPROM

    SSI/MSI

    Chip fabricado eencapsulado

    Programao porfusveis, transistores

    especiais ou SRAM

    Chip fabricado eencapsulado ou projetovalidado que pode ser

    embarcado Programao porlinguagem demontagem

    Chip fabricado eencapsulado

    Programao=ligao entreos chips

    Faltam algumas ou todasetapas de fabricao

    Programao=definio

    das mscaras

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    3/46

    Opes tecnolgicas paraimplementao de Sistemas

    DigitaisPr-difundidos

    (gate array/sea-of-gates)

    Componentes(ou dispositivos)

    programveis

    ASIC(full custom)

    processador

    controlador

    FPGACPLD

    PLA, PALROM, PROM,

    EMPROM,EEPROM

    SSI/MSI

    QCL,LPGAs

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    4/46

    Programmable Logic Device

    um circuito integrado que pode conter grandequantidade de circuitos lgicos, com uma estruturaque no fixa.

    um tipo de integrado que contm circuitoslgicos e chaves programveis cujas funes sodefinidas pelo usurio.

    Dispositivos LgicosProgramveis (PLD)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    5/46

    TTLs e PROMs oferecem quase nenhumaflexibilidade e baixssima integrao.

    A partir de 1970 surgiram alternativas com maiorcapacidade de integrao, os PLDs .

    Um PLD um circuito lgico programvel de

    propsito Geral. Tipos: PLAs, PALs marca registrada da Advanced Micro Devices -

    AMD.

    Dispositivos LgicosProgramveis (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    6/46

    Principais fabricantes:

    Altera* Xilinx* Atmel Actel Cypress

    Lattice Quicklogic

    As duas fabricantes detm mais de 60% do mercado.

    Tecnologia de DispositivosLgicos Programveis

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    7/46

    Programmable Logic Array.

    O primeiro dispositivo programvel.

    Composto por uma matriz programvel de ANDse outra de Ors.

    Normalmente so dispositivos de capacidade muitoreduzida, com apenas algumas dezenas de portas.

    Utiliza lgica de fusveis para a sua programao. Uma vez programados no podem ser

    reprogramados.

    PLA

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    8/46

    Organizao de um PLA

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    9/46

    Conexes

    programveis

    Conexes programveis

    PLA

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    10/46

    Diagrama esquemtico daPLA

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    11/46

    So includos como parte de chips maiores, como naunidade de controle de um microprocessador, paradecodificar as instrues. Nesse caso a configurao fixa.

    Podem ser encontradas com integrados disponveisno mercado, quando, tipicamente, possuem:16 entradas,

    32 termos de produto e8 sadas

    Aplicaes de PLAs

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    12/46

    Programmable Array Logic

    Dispositivo programvel com o array de ORfixo.

    PAL

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    13/46

    Arquitetura tpica de umPLA

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    14/46

    A PAL possui plano AND programvel, mas oplano OR fixo.

    A PLA possui ambos os planos programveis.

    Desta maneira, o PAL : mais simples de fabricar,mais barato e com maior desempenho.

    Diferena em relao a um PLA

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    15/46

    Software EDA + programador

    Gravao de PALs ou PLAs

    Imagem divulgao de marca

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    16/46

    Complex Programmable Logic Device

    um circuito que pode conter mltiplos BLOCOSde circuitos, com recursos de CONEXO (wiring)

    interna para conectar esses blocos.

    Quando no projeto muitas entradas e sadas so

    necessrias, as PALs e PLAs no as possuem emnmero suficiente, usa-se ento um CPLD.

    CPLD

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    17/46

    Os elementos programveis so clulas do tipoEEPROM (Eletrical Erasable PROM) , ou seja, soreprogramveis mediante apagamento prvio docontedo anterior.

    A informao de programao armazenada emcarter no voltil, isto , enquanto no houveruma operao explcita de apagamento elas somantidas indefinidamente.

    CPLD (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    18/46

    Estrutura de um CLPD

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    19/46

    Encapsulamento CPLD

    Imagem divulgao de marca

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    20/46

    Programao de CLPDin-circuit

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    21/46

    Exemplo de CPLD

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    22/46

    Exemplo de CPLD (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    23/46

    Exemplo de CPLD (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    24/46

    Exemplo de CPLD (continuao)

    Sequncia de Programo do Max 7000E da Altera

    1. Entrar no Modo ISP: comutar do modo usurio para o modo ISP.

    2. Checar Silicon ID

    3. BuIk Erase: deslocar instrues de apagamento e aplicar um

    pulso de apagamento de 100 ms.4. Programao: deslocar endereo e dado e ento aplicar umpulso para progamar as celulas EEPROM. Este processo repetidopara cada endereo de EEPROM.

    5. Verificao: deslocar endereo e dado para comparao e aplicarum pulso de leitura na celula de EEPROM. Este processo repetidopara cada endereo de EEPROM.

    6. Sair do modo ISP

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    25/46

    Field-Programmable Gate Array

    um circuito integrado que possui capacidadelgica superior a dos CPLDs

    um chip que no possui planos AND e OR, masBLOCOS LGICOS CONFIGURVEIS.

    FPGA

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    26/46

    So dispositivos programveis que possuem uma

    arquitetura baseada em blocos lgicos configurveis,chamados de CLB (Configuration Logical Blocks).

    Os CLBs so formados por portas lgicas e flip-flopsque implementam funes lgicas.

    A FPGA tambm formada por estruturas chamadas de

    blocos de entrada e sada (IOB In/Out Blocks), osquais so responsveis pela interface das sadasprovenientes das combinaes de CLBs.

    FPGA (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    27/46

    FPGA (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    28/46

    FPGA (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    29/46

    FPGA (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    30/46

    Uma FPGA usa Blocos Lgicos reconfigurveis.

    Os bits de configurao so selecionados deacordo com a funo lgica desejada.

    A configurao uma tabela da verdade (lookuptable) da funcionalidade.

    FPGA (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    31/46

    A FPGA pode implementar lgica puramente

    combinacional ou sequencial, ou seja, que faz usode flip-flops.

    FPGA (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    32/46

    As LUTs (Look Up Tables) podem ser programadaspara qualquer tipo de porta necessria ao projeto.

    FPGA (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    33/46

    As interconexes entre as LUTs so programveis.

    FPGA (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    34/46

    FPGA (continuao)

    As interconexes entre as LUTs so programveis.

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    35/46

    FPGA (continuao)

    As interconexes entre as LUTs so programveis.

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    36/46

    Os fabricantes de FPGAs rapidamente perceberamque o uso de flip-flops poderia ser muito til.

    Eles conectaram um flip-flop do tipo D a uma LUTde quatro entradas para formar um Bloco LgicoConfigurvel (CLB).

    FPGA (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    37/46

    FPGA (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    38/46

    FPGA (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    39/46

    A configurao da LUT e da interconexo voltil,

    isto , se perde quando a alimentao removida.

    Existe uma memria no-voltil associada FPGA

    de onde a sua configurao carregada quando osistema ligado.

    J que a programao feita pelo usurio depoisda fabricao ela chamada de programvel nocampo field programmable.

    FPGA (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    40/46

    Outros aspectos:

    Ferramentas CAD translacionam uma funolgica para o interior de um nico bloco lgico.

    Clulas de LUTs so volteis, ento sonecessrias PROMS ao lado de FPGAs (contedo

    atualizado ao serem alimentadas).

    FPGA (continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    41/46

    So volteis pois as clulas de armazenamento

    so implementadas com memrias SRAMs(memrias RAM estticas).

    FPGAs so indicados para circuitos com mais de1 milho de transistores.

    FPGA(continuao)

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    42/46

    FPGA(continuao)

    Fabricantes de FPGAs / modelos

    Empresa Produtos Web page

    Actel Act 1, 2 e 3, MX, SX www.actel.com

    Altera FLEX 6000, 8000,

    10k, APEX 20k

    www.altera.com

    Atmel AT6000, AT40K www.atmel.com

    Lucent ORCA 1, 2 e 3 www.lucent.com

    Quicklogic pASIC 1, 2 e 3 www.quicklogic.com

    Vantis VF1 www.vantis.com

    Xilinx XC3000, XC4000,XC5200, Virtex,Spartan

    www.xilinx.com

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    43/46

    Consideraes tecnolgicasfinais

    CIs da srie 7400 contm poucas portas eraramente so utilizados atualmente, exceto porbuffers e drivers.

    PLDs so amplamente utilizados em muitos tipos deaplicao.

    Os SPLDs (PALs e PLAs) oferecem baixo custo ealta velocidade..

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    44/46

    Consideraes tecnolgicasfinais (continuao)

    CPLDs so utilizados em circuitos maiores, de10.000 a 20.000 portas, no adequados aos SPLDs.

    Muitas aplicaes de CPLDs podem tambm serrealizadas com FPGAs.

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    45/46

    Consideraes tecnolgicasfinais (continuao)

    CPLDs e FPGAs so mais amplamente usados,pois hoje em dia se considera importante colocarmuitos circuitos num nico chip.

    Tecnologias de Gate Arrays, clulas-padro echip customizado so usadas em aplicaes querequerem circuitos grandes, alta velocidade, baixo

    consumo e onde se espera alto volume de fabricao.

  • 7/24/2019 Eletrnica Embarcada - Aula 02 - Familias de Dispositivos FPGA

    46/46