0% acharam este documento útil (0 voto)
4 visualizações6 páginas

Projetos e Tecnologias em Sistemas Digitais

O documento aborda a evolução do desenvolvimento de hardware, destacando a transição de métodos manuais para técnicas digitais e a importância de metodologias de projeto. Ele explora a representação de projetos modernos, a implementação de circuitos e as falhas potenciais em sistemas digitais. Além disso, discute a lógica booleana, circuitos digitais e a dinâmica de sistemas, enfatizando a necessidade de testes e refinamentos no processo de design.

Enviado por

gforti
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
4 visualizações6 páginas

Projetos e Tecnologias em Sistemas Digitais

O documento aborda a evolução do desenvolvimento de hardware, destacando a transição de métodos manuais para técnicas digitais e a importância de metodologias de projeto. Ele explora a representação de projetos modernos, a implementação de circuitos e as falhas potenciais em sistemas digitais. Além disso, discute a lógica booleana, circuitos digitais e a dinâmica de sistemas, enfatizando a necessidade de testes e refinamentos no processo de design.

Enviado por

gforti
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Motivação

Evolução no Desenvolvimento de Hardware Pelas Indústrias

• Uso de Computadores Agregados a Ferramentas

Técnicas Digitais I Diminuição do uso de métodos manuais de projetos

Maior ênfase na representação abstrata de projetos


Introdução Hardware e software cada vez mais próximos

Prof. Antônio de Pádua Braga • Avanço nas Tecnologias de Implementação de Circuitos

Lógica programável no lugar da lógica discreta


Baseado no texto de Randy H. Katz
Universidade da Califórnia, Berkeley

• Importância de Metodologias de Projetos

Projetos Síncronos

Regras de Composição

Os elementos do projeto moderno Os processos do projeto

Representações, Tecnologias de Circuito, Prototipagem Rápida

Projeto
Estados Representações
do Projeto Implementação
Blocos

Formas de onda
Testes
Portas
Projeto:
Tabelas Verdade
Concepção inicial: Qual é a função realizada pelo objeto?
Álgebra Booleana Detalhes Importantes: Velocidade - Área Utilizada - Preço do Projeto
Tecnologias de Transformar blocos funcionais abstratos em realizações mais concretas
Chaves
Prototipagem Rápida
Implementação:
Simulação Síntese PAL, PLA, ROM, PLD
Agrupar blocos primitivos em blocos mais complexos
MOS Computador Implementação física
Análise de alternativas para a melhora do projeto

Testes:
TTL
Sistema de falhas: falhas de projeto, falhas de composição,
Tecnologias falhas de componentes
Projeto para tornar os testes mais simples
de Circuitos Formulação de hipóteses e capacidade de correção

A arte do projeto: Refinamentos e representações A arte do projeto: “Projetar é Representar”


1. Especificação funcional: O que o sistema faz 1. Especificações textuais
O L
Ex: Controle de semáforo fácil de escrever, não é precisa e sugere ambiguidades

Pontos de luz nas direções N, S, L, O Início


2. Descrição funcional
Iluminar as mesmas luzes N/S e L/O Especificação mais precisa N-S Verde
L-O Verm.
Sequência: VERDE AMARELO VERMELHO diagrams de fluxo, programas
N-S L-O após 45 segundos
Nunca N-S e L- O podem estar em VERDE ou N-S Amar.
AMARELO ao mesmo tempo 3. Descrição estrutural L-O Verm.

componentes complexos decompostos após 45 segundos


Permancer VERDE por 45 segundos, AMARELO por 15, em composições de componentes menos N-S Verm.
e VERMELHO por 60 complexos L-O Verde
2. Performance / Requerimentos a serem alcançados após 45 segundos
4. Descrição física
N-S Verm.
velocidade: inferior a 100 ms projeto baseado em blocos primitivos L-O Amar.
como portas lógicas ou transistores após 45 segundos
consumo: menos de 20 watts

área: implementação em menos de 20 cm2

custo: menos de $20 em custos de manufatura

1
O processo do projeto O processo do projeto: Testando o Sistema
Decomposição inferior O que pode dar errado?

• Falhas de projeto
Implementação não atinge a especificação funcional
Representação N-S Verde
estrutural Início N-S Amarelo
Subsistema N-S Vermelho Lógica incorreta (implementação incorreta)
E-W Verde
E-W Amarelo
E-W Vermelho Má interpretação e detalhes ignorados
45 segundos N-S Verde
N-S Amarelo • Falhas de implementação
Início Temporizador Sequencializador N-S Vermelho
E-W Verde Módulos individuais corretamente implementados mas conectados
E-W Amarelo de maneira incorreta
15 segundos E-W Vermelho
45 segundos Luzes N-S N-S Verde Erros de interface e de temporização
Sequencializador
N-S Amarelo
Início Temporizador Decodificador N-S Vermelho Erros de conexões (fios e ligações), erros elétricos
Primitivo E-W Verde
E-W Amarelo • Falhas de componentes
15 segundos Luzes E-W E-W Vermelho
Logicamente corretos e conectados de maneira correta
Decomposição de funções de nível mais elevado em funções primitivas
Não existe garantia de funcionamento dos componentes

O processo do projeto Sistemas Digitais

Simulação antes da implementação: Formas de onda (digital x analógica)

• Aumenta a testabilidade do projeto


+5 +5
• Formulação de um plano de testes e escolhas dos casos
1 0 1
necessários V V
Tempo Tempo

• Formulação de hipóteses sobre as causas do problema –5 –5

• Implementação de partes isoladas para teste


Digital: Analógica:
Apenas assume valores valores variam continuamente
• Uso efetivo de instrumentos de laboratório para manutenção discretos em uma faixa extensa

Sistemas digitais Sistemas Digitais


Sistemas digitais binários Álgebra Booleana e Operadores lógicos:

• Dois valores discretos:


1 - sim, ligado, 5 volts, fluxo de corrente, polo Norte mag.,TRUE Álgebra: variáveis, valores, operações
0 - não, desligado, 0 volts, ausência de corrente, polo Sul mag., FALSE
Na álgebra Booleana, os valores são os símbolos 0 e 1.
Vantagens dos sistemas binários: Se a expressão lógica é falsa, o valor 0 é associado
Rigorosa base matemática baseada na lógica Se a expressão lógica é verdadeira, o valor 1 é associado
A porta deve estar Operações: AND, OR, NOT
IF A porta da garagem está aberta aberta e o carro em
AND o carro está em movimento movimento para que X Y X AND Y X Y X OR Y X NOT X
THEN o carro pode ser retirado da garagem ele possa ser retira-
0 0 0 0 0 0 0 1
do da garagem
0 1 0 0 1 1 1 0
1 0 0 1 0 1
IF N-S está verde 1 1 1 1 1 1
AND L- O está vermelho
AND 45 segundos se passaram após a mudança da luz
THEN podemos passar para a próxima luz de configuração

As três condições precisam ser satisfeitas para que haja conclusão

2
Sistemas Digitais Sistemas Digitais
Sistemas e operadores lógicos: O mundo real

Os componentes eletrônicos físicos são contínuos, não discretos


IF A porta da garagem está aberta Estes são os blocos básicos para os componentes digitais
AND o carro está em movimento
THEN o carro pode ser retirado da garagem
+5
Lógica 1 A mudança de estado lógico não
ocorre instantâneamente em siste-
Porta aberta? carro em mov.? fora da garagem? V mas digitais reais
false/0 false/0 false/0
true/1 false/0 Lógica 0 Valores intermediários tornam-se
false/0 visíveis por alguns instantes
true/1 false/0 false/0 0
true/1 true/1 TRUE/1

A álgebra booleana é utilizada para descrever o comportamento do


estado estacionário dos sistemas digitais.

A dinâmica dos estados deve ser observada, juntamente com


o comportamento temporal desta mudança.

Sistemas Digitais Sistemas Digitais


Tecnologias de circuitos digitais: Circuitos que implementam a lógica de negação (NOT)

Tecnologia de circuitos integrados:


Lógica 0 tensão 1 na entrada implica 0 na saída
- materiais semicondutores +5 de entrada 0 na entrada implica 1 na saída
- fluxo de corrente (condução) de acordo com o estado de
chaves controladas eletronicamente Inverter behavior as a function of input voltage
VOut Rampa de entrada de 0V a 5V
Lógica 1 tensão Saída permanece em 5V para algumas faixas
Principais tecnologias: de entrada de tensão de entrada e então muda rapidamen-
te, mas não intantâneamente.
MOS: Metal-Oxide-Silicon
0 V In +5
Bipolar:
lembre-se da distinção entre estado esta-
Transistor-Transistor Logic (TTL) cionário e comportamento dinâmico
Emitter Coupled Logic (ECL)

Sistemas Digitais Sistemas Digitais


Lógica combinacional x Lógica sequencial: Lógicas sequencial:

Saídas dependem das entradas e do completo


X1 Z1 Rede implementada através processo de execução!
X2 - Z2 de chaves ou portas lógicas.
Circuito -
A presença de realimentação
- - A rede tipicamente possui apenas um número limitado de configura-
digital faz a distinção entre a rede ções únicas chamadas de estados
- - sequencial e combinacional.
Xn Zm Ex: As operações do controlador de semáforo ocorrem em 4 estados

Novo componente em redes de lógica sequencial:


elementos de armazenamento para a retenção do estado atual
Lógica combinacional Saída e o novo estado são funções da entrada e do estado anterior
- não há realimentação entre entradas e saídas Ex: As entradas realimentadas são os estados
- saídas são uma função simples das entradas
Exemplo: Somador completo (Full Adder)
(A, B, Cin) mapeados em (Soma, Cout) Sistemas síncronos:
Sinal de referência, clock, causa o armazenamento de elementos
para aceitar novos valores e mudança de estado
A
B Soma
S.C. Cout
Cin Sistemas assíncronos:
não há indicação quando o estado muda

3
Representações de um projeto digital Representações de um projeto digital: Chaves
Chaves: EXEMPLO 1:
As chaves conectam dois pontos de acordo com Carro na Porta Carro em
um sinal de controle. IF carro na garagem garagem aberta movimento
AND porta aberta
quando o sinal de controle é 0 (false), a chave está AND carro em movimento True Retiro o
Normalmente aberta THEN retiro o carro carro
aberta
EXEMPLO 2: Porta da garagem Carro na
quando é 1 (true), a chave está fechada
fechada garagem Carro em
IF carro na rua movimento
Normalmente quando o controle é 1 (true), a cahve está aberta OR carro na garagem
fechada AND NOT porta da True
quando o controle é 0 (false), a chave está fechada Carro pode ser
garagem fechada manobrado
AND carro em movimento True
True True
THEN posso manobrar o carro Carro na
rua

Control Closed Control Open


Switch Switch

False False
Normally Open Normally Closed
Switch Switch

Open Closed
Switch Switch

Representações de um projeto digital: Representações de um projeto digital:


Tabelas Verdade Álgebra Booleana
Lista todas as combinações possíveis na entrada juntamente valores: 0, 1
com o valor associado à saída variáveis: A, B, C, . . ., X, Y, Z
operações: NOT, AND, OR, . . .
Exemplo: Meio-somador Exemplo: Somador-completo NOT X é representado por X
adiciona 2 dígitos binários adiciona 2 dígitos binários e X AND Y é representado por X & Y, ou X Y
para formar Soma e Vai-1 o Vem-1 para formar Soma X OR Y é representado por X + Y
e Vai-1
A B Soma Vai-1 A B Vem-1 Soma Vai-1
0 0 0 0 0 0 0 0 0
0 1 1 0 0 0 1 1 0 Obtenção de expressões booleanas através de tabelas verdade:
1 0 1 0 0 1 0 1 0
1 1 0 1 0 1 1 0 1 Soma = A B + A B
1 0 0 1 0 A B Soma Vai-1
1 0 1 0 1 Somar o produto dos termos
1 1 0 0 1 0 0 0 0 de cada linha da tabela verdade
NOTA: 1 + 1 é 0 com o 1 1 1 1 1 0 1 1 0
carry = 1 (binário) onde a função é igual a 1.
1 0 1 0
1 1 0 1 Se a variável de entrada é 0, ela
é representada na forma complementar.
Se igual a 1, ela é representada
normalmente.
Vai-1 = A B

Representações de um projeto digital: Representações de um projeto digital: Portas


Portas Circuito - Full Adder
blocos primitivos largamente utilizados em projetos digitais \Cin \ B \ A
Cin B A
A

Representação Circuito - Half Adder


padrão B

A SUM
Inverter Cin

AND Net 1 Soma

B A
OR
B

Cout B Cout
Net 2 Cin

A
Vai-1 Cin

Net: conexões elétricas (fios) Fan-in: número de entradas para uma porta
Fan-out: número de portas de entrada e saída conectadas
Netlist: conjunto de portas de entrada e saída
e suas respectivas conexões A tecnologia de “regras de Composição”estabelece limites para
fan-in/fan-out

4
Representações de um projeto digital: Representações de um projeto digital:
Formas de onda Blocos
comportamento dinâmico de um circuito - organização estrutural do projeto
circuitos reais possuem atrasos não nulos
- “caixa preta” composta de entradas e saídas
Diagrama de tempo do Meio-somador
- correspondem a funções bem definidas
100 200
A - concentração na maneira como os componentes são compostos
B por ligações
Soma
Vai-1

Atraso de propagação Atraso de propagação Sum Sum


da soma da soma A A Sum A
A Sum A Sum
HA HA B
B B Carry B Carry B FA
Hazard ou Glitch: 1 + 0 é 1, não 0! Cout
Cout
Cin Cin
Cin Cout
As mudanças de saída são atrasadas em relação às mudanças
na entrada Somador completo implementado através Representação do Somador completo
de blocos Meio-somadores através de diagrama de blocos
O atraso de propagação depende do caminho percorrido no circuito

As saídas podem temporariamente mudar do valor correto para um


valor errado: este erro é chamado de glitch ou hazard

Representações de um projeto digital: Comportamentos Representações de um projeto digital:


Descrição da linguagem de hardware ABEL Comportamentos
Descrição de linguagens de hardware
MODULE half_adder; - estrutura e função do projeto digital
a, b, sum, carry PIN 1, 2, 3, 4;
Exemplo: Half Adder em VHDL
TRUTH_TABLE {[a, b] -> [sum, carry]}
-- ***** inverter gate model *****
Especificação da [0, 0] -> [0, 0];
-- external ports Representação
tabela-verdade [0, 1] -> [1, 0]; ENTITY inverter_gate; dos blocos -
[1, 0] -> [1, 0]; PORT (a: IN BIT; z: OUT BIT); “Caixa preta”
END inverter_gate;
[1, 1] -> [0, 1];
-- internal behavior
END half_adder;
ARCHITECTURE behavioral OF inverter_gate IS
BEGIN Comportamento
z <= NOT a AFTER 10 ns; interno
MODULE half_adder; END behavioral; Note a declaração
a, b, sum, carry PIN 1, 2, 3, 4; do delay
Especificação EQUATIONS -- ***** and gate model *****
da equação -- external ports
SUM = (A & !B) # (!A & B); ENTITY and_gate;
CARRY = A & B; PORT (a, b: IN BIT; z: OUT BIT);
END and_gate;
END half_adder;
-- internal behavior
ARCHITECTURE behavioral OF and_gate IS
BEGIN
AND OR NOT z <= a AND b AFTER 10 ns;
END behavioral;

Representações de um projeto digital: Comportamentos Representações de um projeto digital: Comportamentos


-- ***** or gate model ***** BEGIN
-- external ports -- one line for each gate, describing its type and connections
ENTITY or_gate;
Modelos AND, OR, NOT i1: inverter_gate PORT MAP (a_in, s1);
PORT (a, b: IN BIT; z: OUT BIT); incluídos na biblioteca i2: inverter_gate PORT MAP (b_in, s2);
END or_gate; a1: and_gate PORT MAP (b_in, s1, s3); Descrição textual
a2: and_gate PORT MAP (a_in, s2, s4); do Netlist
-- internal behavior o1: or_gate PORT MAP (s3, s4, sum);
ARCHITECTURE behavioral OF or_gate IS END structural;
BEGIN
z <= a OR b AFTER 10 ns;
END behavioral;

-- ***** half adder model *****


Esta especificação VHDL corresponde ao seguinte circuito:
-- external ports
ENTITY half_adder; A s1
PORT (a_in, b_in: INPUT; sum, c_out: OUTPUT); i1 s3
END half_adder; a1
Componentes particula-
-- internal structure res a serem usados em
ARCHITECTURE structural of half_adder IS o1
-- component types to use conjunto com o modelo SUM
COMPONENT inverter_gate do Half Adder
PORT (a: IN BIT; z: OUT BIT); END COMPONENT; B a2
COMPONENT and_gate i2 s4
PORT (a, b: IN BIT; z: OUT BIT); END COMPONENT; s2
COMPONENT or_gate
PORT (a, b: IN BIT; z: OUT BIT); END COMPONENT; Carry
a3
-- internal signal wires
SIGNAL s1, s2, s3, s4: BIT;

5
Sistemas de prototipação rápida Rapid Electronic System Prototyping:
Objetivos: CAD
Ferramentas de síntese
Rápida construção de sistemas digitais de acordo com uma concepção
Mapear representações mais abstratas em representações
Rápida exploração das alternativas que o projeto possui físicas (implementáveis)

Técnicas:
VHDL Descrição Equações Síntese
computador agregados à ferramentas de projeto “comportamental” Booleanas lógica Diagrama
simulação: verificação do projeto antes da montagem Esquemático
síntese: geração de descrição detalhada à partir de descrições
de nível mais alto
ABEL Bibliotecas
tecnologias de implementação rápida (custo mais baixo)
lógica programável

Sistemas de prototipação rápida


Exemplo: Memórias ROM
implementação em hardware de um array bi-dimensional

entradas acessam um elemento do array

a palavra binária da memória indexada contém os valores de saída

os conteúdos são programados uma vez (e lidos várias vezes)

Meio-somador Somador completo


implementado em ROM: implementado em ROM:
Index contents Index contents
00 0 0 00 0 0 0
01 1 0 00 1 1 0
Half adder 10 1 0
01 0 1 0
01 1 0 1
11 0 1 Full adder
10 0 1 0
A 10 1 0 1
B 11 0 0 1
S C 11 1 1 1
U A A
M R B
R S C
Cin
Y U o
M u
t

Você também pode gostar