Title: Circuitos combinat
1Circuitos combinatórios
- Organização
- Formas básicas de representação
- Síntese por mapas de Karnaugh
- Projectos com blocos SSI / MSI
- Análise e teste
2A representação de sistemas digitais
- Formas básicas de representação
- Tabular (tabela de verdade)
- Algébrica (por extenso ou abreviada)
- Gráfica (diagrama lógico ou mapa de Karnaugh)
- Nível da representação
- Comportamental
- Funcional
- Estrutural
3Tabelas de verdade
- Apresentam o valor da(s) saída(s) para todas as
combinações possíveis nas entradas - Só é viável em casos com
- reduzida complexidade
4Equações algébricas
- Forma canónica da soma de produtos
- Forma canónica do produto de somas
- Forma canónica abreviada
5Diagrama lógico
6Mapas de Karnaugh
- Os mapas de Karnaugh são usados mais como
formalismo de simplificação do que como
alternativa para a representação
7Simplificação de funções por mapas de Karnaugh
- Teorema subjacente
- XY X/Y X
- No caso considerado
8Simplificação de funções por mapas de Karnaugh (2)
9Um adicionador de quatro bits
- A síntese do circuito completo pelo processo
descrito é inviabilizada pelo número de entradas
(mapas de Karnaugh com quantas células?)
10A adição bit-a-bit
- A alternativa mais prática consiste em recorrer à
síntese por mapa de Karnaugh para um adicionador
de um bit, construindo o somador pretendido por
concatenação destes módulos elementares
11O somador de um bit
12O somador de um bit (2)
13O adicionador de quatro bits
- Concatenando quatro módulos adicionadores de um
bit, teremos o somador pretendido - Qual o tempo de adição para a implementação
modular?
14Um comparador de quatro bits
- As mesmas razões já invocadas para o adicionador
de quatro bits inviabilizam a síntese directa do
comparador de quatro bits
15A comparação bit-a-bit
- Começando pelo bit mais significativo
- Sendo Ai Bi o resultado é inconclusivo e
temos que passar ao bit seguinte (i-1, à
direita deste) - Sendo Ai gt Bi e assumindo que a comparação
foi inconclusiva para todos os bits anteriores,
então resulta AltB falso, quaisquer que sejam os
restantes bits - Sendo Ai lt Bi e assumindo que a comparação
foi inconclusiva para todos os bits anteriores,
então resulta AltB verdadeiro, quaisquer que sejam
os restantes bits
16O comparador de um bit
17O comparador de um bit (2)
18O comparador de quatro bits
- Uma vez mais, concatenando os quatro módulos
elementares, teremos o comparador de quatro bits - Também para este caso teremos um tempo de
propagação superior à implementação não modular...
19O projecto com blocos SSI / MSI
- Principais blocos SSI / MSI
- Portas lógicas elementares (incluindo os buffers)
- Codificadores e descodificadores
- Multiplexadores e desmultiplexadores
- Comparadores e circuitos de paridade
- Adicionadores, subtractores e multiplicadores
- Unidades lógicas e aritméticas
20O buffer 74ALS241
21O codificador 74HCT147
22O descodificador 74ALS138
23O multiplexador 74ALS151
Y
I0
I1
/Y
I2
I3
I4
I5
I6
I7
24Implementação de uma função com um mux
- Qualquer função com N entradas pode ser
implementada por um mux de 2(N-1) para 1
2574x253 Adicionador completo de 1 bit
- Construir um adicionador completo de 1 bit
2674x253 Adicionador completo de 1 bit
2774x157 Votador com três entradas
- Construir um circuito votador com três entradas e
uma saída (que deve assumir o valor que for comum
à maioria das entradas)
2874x157 Votador com três entradas
Sugestão Altere o circuito de forma a
proporcionar também uma saída de erro
29O desmultiplexador 74ALS155
30O comparador 74HCT85
3174HCT85 Um comparador de 12 bits
3274HCT85 Detector de janela 2,11
X ? 2
X lt 11
33O adicionador 74HCT283
34Unid. lógicas e aritméticas
35Análise e teste
- A análise permite-nos passar de uma implementação
para uma especificação, sendo necessária em
tarefas como, por exemplo, a manutenção ou a
modificação de funcionalidade - Também para o teste, e nomeadamente para a
geração de vectores de teste, a análise
desempenha um papel fundamental
36O modelo de faltas ss_at_
- Um modelo de faltas proporciona-nos uma
representação alternativa para os factores que
podem impedir o bom funcionamento de um circuito - No modelo ss_at_ (single stuck-at) considera-se que
- Só um nó de cada vez pode ter uma falta presente
(por isso se diz single) - A falta presente no nó pode ser de um de dois
tipos Ou permanentemente a VCC ou
permanentemente à massa
37Vantagens do modelo ss_at_
- As vantagens deste modelo de faltas são as
seguintes - É suficientemente simples para permitir na
prática a geração de vectores de teste (a
complexidade da análise cresce linearmente com a
dimensão do circuito) - É suficientemente abrangente para cobrir uma
larga variedade de defeitos físicos, dando-nos
confiança que a percentagem de componentes com
defeito que passam este teste é suficientemente
reduzida
38O conceito de controlabilidade
- Trata-se de uma medida da facilidade com que
conseguimos impor num nó um determinado valor
lógico
39O conceito de observabilidade
- Trata-se de uma medida da facilidade com que
podemos observar o valor lógico presente num nó
40O algoritmo D para a geração de vectores de teste
- O algoritmo D recorre a uma notação que considera
valores compostos para representar o efeito da
presença de faltas nos nós
41Procedimento principal do algoritmo D
- Por cada nó e por cada falta (s_at_0 e s_at_1)
- Forçar no nó o valor oposto ao da falta (activar
a falta) - Propagar para jusante o sinal de erro (D ou /D),
até uma saída primária - Justificar para montante os valores lógicos que
permitiram a propagação, até se chegar às
entradas primárias
42Exemplo Detecção de uma falta s_at_0
43Exemplo Uma falta não detectável
44Backtracking na geração do vector
45Redundância e testabilidade
- A presença de termos redundantes implica
normalmente problemas de testabilidade
46Redundância para corrigir a resposta temporal
- A presença de redundância, no entanto, pode
impedir a ocorrência de impulsos extemporâneos
nas saídas
47Conclusão
- Objectivo principal do capítulo Introduzir o
projecto de sistemas digitais (restrito, neste
caso, aos circuitos combinatórios) - Pistas para a continuação do estudo
- Outros algoritmos de simplificação de funções
lógicas - Implementação multi-nível
- Aprofundar as questões associadas ao
funcionamento em regime dinâmico