17
ELD - Eletrônica Digital Aula 11 – Introdução à Lógica Programável Prof. Antonio Heronaldo de Sousa

ELD - Eletrônica Digital Aula 11 Introdução à Lógica ... · Introdução • Os componentes da lógica programável são dispositivos que possuem em sua lógica interna centenas

  • Upload
    phamtu

  • View
    223

  • Download
    0

Embed Size (px)

Citation preview

ELD - Eletrônica Digital Aula 11 – Introdução à Lógica Programável

Prof. Antonio Heronaldo de Sousa

Agenda

- Introdução

- Lógica Programável

- Dispositivos de Lógica Programável

- Arranjos Lógicos Programáveis (PLA e PAL)

- Arranjos de Portas Programáveis (CPLD e FPGA)

- Linguagem de Descrição de Hardware

• Válvula no início de 1940 • Transistor em 1947

– Não aquece como as válvulas – Fisicamente menor

• 1961 primeiro integrado TTL 74LSXX • Década de 1970

– Surgem os microprocessadores – Surgem (ROM e Logic Arrays - PLA e PAL) << 600 portas – ASIC’s – Applications Specific Integrated Circuits

• Década de 1980 >> 600 portas – Complex PLD – CPLD – FPGA – Field Programmable Gate Array

Introdução

• Basicamente, o projeto de um sistema digital consiste em determinar a função lógica que traduz o funcionamento do mesmo de acordo com estímulos recebidos.

• A partir disso podemos implementar um circuito lógico complexo que execute essa função a partir de circuitos lógicos simples.

Introdução

Projetista tem o desafio de encontrar o balanço entre velocidade e generalidade do hardware

• Chip genérico

– Microcontroladores Muitas funções Sacrifício de desempenho

• Chip dedicado

– ASICS Aplicação específica alta velocidade baixo consumo só se justifica em grande quantidade, pois alterações do projeto não são possíveis

Introdução

• Os componentes da lógica programável são dispositivos que possuem em sua lógica interna centenas (ou milhares) de portas lógicas, flip-flops, registradores e outros; que são interligados internamente.

• Essas interconexões são os pontos programáveis da lógica. Podemos então programar essas conexões para permanecerem fechadas ou abertas, de acordo com a necessidade do projeto.

• Essas interconexões podem ser entendidas como fusíveis, que de acordo com a necessidade do projeto podem ou não ser queimados (desfazendo ou não a conexão entre portas lógicas). Essa queima é realizada pelo projetista, utilizando um software de programação do dispositivo.

Lógica Programável

Dispositivos de Lógica Programável

• Circuito que possui uma estrutura interna baseada em um conjunto de portas AND-OR (arranjos).

• As entradas desse circuito são ligadas às entradas das portas AND e as saídas das portas AND são ligadas às entradas das portas OR e suas saídas representam as saídas do circuito.

Arranjos Lógicos Programáveis

• 3 Entradas – X1, X2, X3

• 2 Saídas – Z1, Z2

• Apenas bloco AND configurável com 6 entradas

• Bloco OR fixo

PAL – Soma de Produtos

3 Entradas – X1, X2, X3

2 Saídas – Z1, Z2

Um bloco AND configurável com 6

entradas

Um Bloco OR Configurável com 6

entradas

PLA – Soma de Produtos

• Os arranjos de portas programáveis são estruturas mais genéricas e versáteis que as baseadas na estrutura tradicional AND-OR dos arranjos lógicos programáveis.

• A principal vantagem deste tipo de circuito é a possibilidade de

reprogramação do comportamento de um circuito quantas vezes for necessária, ao contrário dos arranjos lógicos programáveis que só podem ser programados uma vez, ou seja, definida sua função lógica ela não poderá ser mudada.

Arranjos de Portas Programáveis

• Os CPLDs podem ser vistos como dispositivos que utilizam em sua estrutura vários PLD´s (PLA ou PAL). Cada PLA ou PAL formam células que são interligadas através de conexões programáveis.

CPLD - Complex PLD

FPGA - Field Programmable Gate Array

Blocos Lógicos

Configuráveis

Blocos de Entrada e Saída

Linhas de Roteamento

Matriz de Roteamento

Blocos Lógicos

Configuráveis

Blocos de Entrada e Saída

Linhas de Roteamento

Matriz de Roteamento

Blocos Lógicos

Configuráveis

Blocos de Entrada e Saída

Linhas de Roteamento

Matriz de Roteamento

• Blocos de entrada/saída configuráveis: são componentes de entrada/saída formados por estruturas bidirecionais que incluem buffer, flip-flop de entrada, buffer tri-state e flip-flop de saída .

• Interconexões Programáveis (Matriz de Roteamento): pode ser do tipo SRAM, Antifusível ou EPROM. São como interruptores programáveis, geram as pistas de ligação entre os blocos lógicos e blocos de entrada e saída .

• Blocos Lógicos Configuráveis: pode ser tão simples como um transistor ou tão complexo quanto um microprossessador. Este bloco é capaz de implementar várias funções combinacionais (através de look-up-table) e sequenciais (através de flip-flops).

FPGA – Elementos Básicos

• VHDL (Very High Speed Integrated Circuit Hardware Description

Language) é uma linguagem padronizada de descrição de hardware ratificada em 1987 pelo IEEE.

• Serve para modelar a estrutura e o comportamento do Hardware: – Estrutural:

• Descreve-se o circuito pensando na arquitetura.

– Comportamento: • Descreve-se o circuito pensando no seu funcionamento.

Linguagem de Descrição de Hardware

• Ex.: Flip-Flop D

VHDL – Linguagem de Descrição de Hardware

Exercício

Elabore um circuito para alocar memórias ROMs de 64 bytes (A e B) nos intervalos

mostrados a seguir (complete a tabela), utilizando chips de 64 células de 4 bits e

considerando um espaço total de endereçamento de 256 bytes. Observação: o

dispositivo que vai utilizar esse banco de memória possui 8 linhas no barramento de

endereços e oito linhas no barramento de dados, além de um sinal de leitura de

memória ROM, RDROM, ativo em zero.

Endereço inicial Endereço final Memória

00111111 A

01000000 Vazio

11111111 B