Sie sind auf Seite 1von 9

Primeira Unidade: Lista de exerccios avaliativa

DCA0202 - CIRCUITOS DIGITAIS

2016.2

Instrues para resoluo:

Procure responder corretamente todas as questes da lista.


Suas respostas sero validadas de forma oral por amostragem - geralmente de 2 3 defesas orais.
Se no conseguir responder alguma questo, procure esclarecer as dvidas em tempo em sala de aula com o professor, pelo SIGAA,
com um colega, ou por e-mail. Se necessrio, possvel marcar um horrio para tirar dvidas na sala do professor.
No sero aceitas respostas "mgicas", ou seja, quando a resposta est na lista entregue mas voc no sabe explicar como chegou a
ela. Sua nota nesse caso ser 0 (zero).
Procure entregar a resoluo da lista de forma organizada. Isso pode favorecer a sua nota.
Os cdigos dos programas requisitados (ou as partes relevantes) devero aparecer no corpo da resoluo da questo.
A resoluo da lista dever ser entregue em formato PDF em apenas 1 (um) arquivo.
Procure preparar sua defesa oral para cada questo. Explicaes diretas e sem rodeios favoreceram a sua nota.
A lista resolvida dever ser entregue ANTES da defesa.
A defesa dever ser agendada com antecedncia. Para isso, indique por email (hugorafaelgc@gmail.com) no mnimo 3 horrios dentro
dos intervalos disponveis em pelo menos 3 dias diferentes.
Os intervalos disponveis esto listados em http://goo.gl/zAtti2 e sero atualizados diariamente.
A defesa oral leva apenas de 10 a 15 minutos. As provas so em horrios xados com antecedncia. No ser tolerado que o aluno
chegue atrasado para a sua prova.

1. * O que um sinal digital e qual a diferena para um sinal analgico? D dois exemplos de fenmenos
digitais que podemos observar no dia-a-dia (ex: uma janela pode estar aberta ou fechada). D dois
exemplos de fenmenos analgicos.
2. * Suponha que um sinal analgico de udio venha atravs de um o e que a tenso no o pode variar entre
0V (volts) e 3V. Voc deseja converter o sinal analgico em digital. Voc decide codicar cada amostra
usando dois bits, de modo que 0V seria codicado como 00, 1V como 01, 2V como 10 e 3V como 11. Voc
amostra o sinal a cada 1 milissegundo e detecta a seguinte sequencia de tenses 0V 0V 1V 2V 3V 2V 2V.
Mostre o sinal convertido para digital como uma sequencia de 0s e 1 s.
3. * Assuma que 0V codicado como 00, 1V como 01, 2V como 10 e 3V como 11.Voc recebe uma
codicao digital de um sinal de udio como segue: 1111101001010000. Recrie o sinal plotando-o em
funo do tempo. Assuma que a tenso correspondente a cada codicao deve permanecer na sada por
1 milissegundo.
4. * Baseado no esquema de codicao em que 000000000000 representado como 00, 000000000001 como
01, 111111111111 como 10 e 11 signicando que em seguida vir uma sequncia de 12 bits sem compresso,
comprima a sequncia no codicada abaixo.
000000000000 000000000001 100000000000 111111111111
5. * Suponha que voc est construindo um teclado que tem botes de A a G. Uma sada de trs bits deve
indicar qual o boto est sendo pressionado. O estado 000 signica que nenhum boto est pressionado.
Encontre uma codicao de 3 bits para representar cada uma das teclas.
6. * Uma fbrica de cmeras de segurana deseja adicionar a caracterstica de reconhecimento facial em suas
cmeras. A cmera grava vdeo a 30 quadros por segundo. Para cada quadro, a cmera deve executar o
algoritmo de reconhecimento facial. A aplicao implementada em um microprocessador requer 50 ms. A
mesma aplicao quando implementada em um circuito digital dedicado requer 1 ms. Calcule o mximo
nmero de quadros que cada um dos sistemas capaz de suportar e indique qual implementao suciente
para os 30 quadros por segundo.

1
7. ** Suponha que um sistema bancrio suporta transaes encriptadas e que a decriptao em cada transao
consiste em trs sub tarefas (A,B e C). O tempo de execuo de cada tarefa no microprocessador versus
no circuito digital de 50 ms versus 1 ms para tarefa A, 20 ms versus 2 ms para B e 20 ms versus 1
ms para C. Particione as tarefas entre o microprocessador e o circuito digital personalizado para que seja
minimizado a quantidade de circuitos personalizados, considerando que devem ser decriptados pelo menos
40 transaes por segundo. Assuma que cada tarefa requer a mesma quantidade de circuitos digitais.
8. * Descreve o conceito conhecido como Lei de Moore.
9. * Descreva o comportamento do transistor CMOS, indicando claramente quando o circuito de transistores
da Figura 1 conduz.

Figura 1: Circuito de transistores.


10. * Quais operaes booleanas, AND, OR ou NOT, so apropriadas para cada uma das situaes:
a. Detectar movimento em qualquer sensor de presena espalhadas pela casa (cada sensor de presena
retorna nvel lgico 1 quando detecta movimento).
b. Detectar que trs botes esto sendo pressionados simultaneamente (cada boto retorna 1 quando o
boto est sendo pressionado).
c. Detectar a ausncia de luz em um sensor de luminosidade (o sensor de luz retorna 1 quando h luz).
11. * Converta as seguintes armativas equaes booleanas. Adicione variveis booleanas quando necessrio.
a. Um detector de alagamentos deve acionar uma bomba se a presena de gua for detectada e se o sistema
estiver habilitado.
b. Um monitor energtico de uma casa deve soar um alarme se for noite e luz for detectada dentro da
casa, mas presena no for detectada.
c. Um sistema de irrigao deve abrir uma vlvula de gua se o sistema estiver habilitado e no so
detectadas chuva, nem baixas temperaturas.
12. * Avalie a equao booleana F = a AND (b OR (c AND d)) para os seguintes valores das variveis a, b, c
e d:
a. a = 1, b = 1, c = 0, d = 1
b. a = 0, b = 0, c = 0, d = 1
c. a = 1, b = 0, c = 0, d = 0
d. a = 1, b = 0, c = 1, d = 1

13. * Converta cada uma das seguintes equaes diretamente para circuitos em nvel de porta lgicas.
a. F = ab + bc
b. F = ab + bc + cd + de
c. F = ((ab) + c) + (d + ef )
14. ** Projete um sistema que acione uma sirene dentro de uma casa sempre que detectado um algum
movimento do lado de fora da casa noite. Assuma que a sada M indica que um um movimento foi
detectado e um sensor de luz com sada L que indica se h luz do dia. A sirene tem uma nica entrada que
quando est em 1 dispara o som de alarme. Descreva o comportamento do sistema usando uma equao
e ento converta a equao encontrada em um circuito com portas AND, OR ou NOT.
15. ** Um DJ ("disc jockey" algum que toca msica em uma festa) gostaria de um sistema que controle
automaticamente uma luz pulsante (strobo ) e um globo espelhado em uma pista de dana dependendo
se h msica tocando e se h algum danando. Assuma que um sensor sonoro com sada S = 1 indica
que h msica tocando e um sensor de presena com sada M = 1 indica que h pessoas danando. A
lmpada pulsante tem entrada L que quando 1 entra em funcionamento. O globo espelhado tem entrada
B e gira quando B = 1. O DJ quer que o globo gire apenas quando a msica est tocando e no h pessoas

2
danando, enquanto que o strobo deve funcionar quando h msica e pessoas danando. Crie equaes
que descrevam o comportamento desejado para B e L e ento as converta para um circuito usando portas
AND, OR e NOT.
16. ** Use manipulao algbrica para converter a seguinte equao na forma de soma-dos-produtos: F =
ab(c + d) + a(b + c) + a(b + d)c.
17. ** Use a Lei de De Morgan para encontrar a inversa da seguinte equao: F = abd + acd. Reduza para a
forma de soma-dos-produtos.
18. ** Converta as seguintes equaes booleanas para circuitos digitais:
a. F (a, b, c) = abc + ab
b. F (a, b, c) = ab
c. F (a, b, c) = abc + ab + a + b + c
d. F (a, b, c) = c

19. ** Represente o circuito da Figura 2 atravs de uma equao booleana. Crie a tabela verdade do circuito.

Figura 2: Circuito digital


20. ** Converta as seguintes equaes booleanas em tabelas verdades:
a. F (a, b, c) = a + bc
b. F (a, b, c) = ab + ac + bc
c. F (a, b, c) = ab + ac + abc + c
d. F (a, b, c, d) = abc + d

21. ** Converta a funo F mostrada na Tabela 1 em uma equao. Use manipulaes algbricas para
minimizar a expresso obtida.
a b c F
0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
Tabela 1: Tabela verdade
22. ** Converta a funo F mostrada na Tabela 2 em um circuito digital.
a b c F
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 0
1 0 1 0
1 1 0 1
1 1 1 1
Tabela 2: Tabela verdade

3
23. ** Converta as seguintes equaes booleanas para a forma cannica da soma de mintermos.
a. F (a, b, c) = abc + ab
b. F (a, b, c) = ab
c. F (a, b, c) = abc + ab + a + b + c
d. F (a, b, c) = c

24. ** Determine se os dois circuitos da Figura 3 so equivalentes usando: (a) manipulao algbrica e (b)
tabela verdade.

Figura 3: Circuitos digitais.


25. *** Cada uma das 3 salas de um museu est equipada com um sensor de presena (m0 ,m1 ,m2 ) com sada
1 quando detectado a presena de algum. Durante a noite, a nica pessoa no museu o vigilante que
caminha de sala em sala para patrulhar. Crie um circuito que soe um alarme (sada F = 1) sempre que
mais de um sensor de presena for ativado ao mesmo tempo, signicando que h intrusos em uma ou mais
salas diferentes de onde est o vigilante. Repita para o caso de um museu com 10 salas (Dica: Use a
inversa da funo de alarme).
26. ** Um carro tem um sensor de nvel da gasolina que apresenta como sada o nvel de gasolina como um
nmero binrio de 3 bits, com 000 representando o tanque vazio e 111 completamente cheio. Crie um
circuito que indique (L = 1) quando o nvel de gasolina est abaixo do terceiro nvel.
27. ** Simplique a seguinte equao usando XOR onde for posvel: F = ab + ab + cd + cd + ac.
28. *** Use portas XOR ou XNOR de duas entradas para criar um circuito que detecte sempre que houver
um nmero par de variveis de entrada a, b, c, d com nvel lgico 1.
29. *** Projete um decodicador 3x8 com ENABLE usando portas AND, OR e NOT.
30. *** Projete um multiplexador 8x1 usando portas AND, OR e NOT.
31. *** Projete um multiplexador 4x1 de 4 bits usando 4 multiplexadores de 1 bit.
32. *** Projete um demultiplexador 1x4 usando portas AND, OR e NOT.
33. *** O dono de uma loja deseja indicar para os consumidores que um dos oito corredores da sua loja est
temporariamente com descontos. Assim ele colocou uma lmpada indicativa acima de cada corredor, que
acendem quando colocado um bit 1 em sua nica entrada. A loja possui ainda uma chave em que o
dono pode escolher um nmero de 0 a 7, e que possu uma sada de 3 bits representando cada uma das
posies possveis. Uma segunda chave, com apenas duas posies, usada pelo dono para desabilitar o
sistema caso no haja nenhum corredor com desconto no momento. Crie o sistema entre as chaves usadas
pelo dono e as lmpadas indicativas. Use pelo menos um MUX (de N-bits) ou decodicador para criar o
sistema. Dena, claramente, a funo de cada bloco do sistema (ex: "2x1 MUX", "8-bit 2x1 MUX",...).
No preciso denir a arquitetura interna dos blocos utilizados.
34. *** Trace o comportamento de um latch SR na seguinte situao: Q, S e R esto em nvel 0 for um longo
perodo, ento S muda para 1 e permanece em 1 por um longo perodo, em seguida S muda de volta para
0. Usando um diagrama de tempo, mostre os valores que aparecem nos terminais S , R, t e Q. Assuma
que portas lgicas tem um atraso muito pequeno.
35. *** Trace o comportamento de latch SR sensvel ao nvel (Figura 4) para o padro de entradas na Figura
5. Assuma que S1, R1 e Q so inicialmente 0. Complete o diagrama de tempo assumindo portas lgicas
com atraso muito pequeno.

4
Figura 4: Latch SR.

Figura 5: Diagrama de tempo.


36. *** Trace o comportamento do latch D (Figura 6) para o padro de entradas da Figura 7. Assuma que Q
inicialmente 0. Complete o diagrama de tempo, assumindo que as portas lgicas tem um atraso muito
pequeno.

Figura 6: Latch D.

Figura 7: Diagrama de tempo.


37. *** Trace o comportamento do ip op D com disparo por borda usando o esquema mestre-escravo
(Figura 8) para o padro de entrada da Figura 9. Assuma que cada latch interno inicialmente armazena
0. Complete o diagrama de tempo, assumindo porta lgicas com atrasos muito pequenos.

Figura 8: Flip-op D.

5
Figura 9: Diagrama de tempo.
38. *** Compare o comportamento entre o latch D e o ip-op D completando o diagrama de tempo na
Figura 10. Assuma que cada dispositivo inicialmente armazena 0. D uma rpida explanao sobre o
comportamente de cada dispositivo.

Figura 10: Diagrama de tempo.


39. *** Crie um circuito com trs latches D conectados em srie (a sada de um conectada a entrada do outro).
Use um diagrama de tempo para mostrar como o clock com longa durao em nvel lgico 1 pode fazer
com que o valor de entrada do primeiro latch D se propague por mais de um latch em um mesmo ciclo de
clock. Repita comparando com ip-ops D com disparo por borda.
40. *** Um circuito tem uma entrada X conectada a entrada de uma ip-op D. Usando ip-ops adicionais,
complete o circuito de tal forma que uma sada Y do circuito seja igual a sada do ip-op conectado a
X , com o atraso de dois ciclos de clock.
41. *** Usando quatro registradores, projete um circuito que armazene os quatro valores presentes em uma
entrada de 8 bits D durante os prximos quatro ciclos de clock. O circuito deve ter uma nica sada de
8 bits que pode ser congurada usando duas entradas s1 e s0 para selecionar a sada de um dos quatro
registradores (Dica: Use um MUX).
42. *** Considere trs registradores de 4 bits conectados como na Figura 11. Assuma que os valores iniciais
nos registradores so desconhecidos. Trace o comportamento dos registradores completando o digrama de
tempo da Figura 12.

Figura 11: Circuito de registradores.

Figura 12: Diagrama de tempo.


43. *** Considere trs registradores de 4 bits conectados como na Figura 13. Assuma que os valores iniciais
nos registradores so desconhecidos. Trace o comportamento dos registradores completando o digrama de
tempo da Figura 14.

6
Figura 13: Circuito de registradores.

Figura 14: Diagrama de tempo.


44. *** Desenhe um diagrama de tempo (mostrando entradas, estados e sadas) para a mquina de estado
da Figura 15, que modela o boto usado para chamar o comissrio de bordo em uma aeronave diante do
seguinte cenrio. Ambas as entradas Call e Cncl so inicialmente 0. Call vira 1 por dois ciclos de clock.
Ambas entradas so 0 por mais dois ciclos, ento Cncl vira 1 por um ciclo. Ambas entradas so 0 por
mais dois ciclos, ento viram 1 por dois ciclos. Ambas entradas viram 0 no ltimo ciclo. Assuma que
qualquer mudana de nvel lgico das entradas acontece na metade do tempo entre duas bordas do clock.

Figura 15: Maquina de estado.


45. *** Desenhe o diagrama de tempo (mostrando entradas, estados e sadas) para uma mquina de estado
da Figura 16 que representa um detector de cdigo no seguinte cenrio. Quando um boto (ou botes)
pressionado

Figura 16: Maquina de estado.


46. *** Desenhe um diagrama de estado para uma mquina de estado que tem uma entrada x e uma sada y .
Em qualquer mudana em x de 0 para 1, y deve se tornar 1 por dois ciclos de clock e ento retornar para
0, mesmo se x permanece em 1.
47. *** Desenhe um diagrama para as mquina de estado sem entradas e com as 3 sadas x, y e z . xyz deve
sempre exibir a seguinte sequncia: 000, 001, 010, 100, repetir. A sada deve mudar apenas a cada borda
de subida do clock. Considere 000 como estado inicial.
48. *** O display de um relgio de pulso pode mostrar um de quatro itens: a hora, o alarme, o cronometro
ou a data, controlado por dois sinais s1 e s0 (00 mostra o tempo, 01 o alarme, 10 o cronometro e 11 a

7
data - assuma que s1 e s0 controla um MUX de N -bit que passa o registro apropriado). Ao pressionar o
boto B (B = 1) o display mostra o prximo item. Por exemplo, se atualmente esta sendo mostrado a
data, o prximo item ser a hora. Crie um diagrama de estado para a maquina de estado descrevendo o
comportamento da sequncia para cada vez que o boto pressionado, independentemente de por quanto
tempo o boto ca pressionado - em outras palavras, espere que o boto seja liberado depois da mudana
de estado para avanar para o prximo item. Considere que a hora deve ser o estado inicial.
49. *** Desenhe um diagrama de estado para a mquina de estado com uma entrada gent e trs sadas x, y e
z . As sadas xyz geram uma sequncia conhecida como cdigo Gray quando apenas uma das trs sadas
troca de 0 para 1 ou de 1 para 0. A sequncia do cdigo Gray que a mquina de estado deve reproduzir
000, 010, 011, 001, 101, 111, 110, 100, e repete. A sada deve mudar apenas na borda de subida do clock
quando gent = 1. Assuma o estado inicial 000.
50. *** Complete o diagrama de tempo na Figura 17 com a forma de onda das sadas xyz , onde clk o clock
e gent o enable da mquina de estado que representa sequncia do cdigo Gray (vide questo anterior).

Figura 17: Diagrama de tempo.


51. *** Desenhe um diagrama de tempo para a mquina de estado da Figura 18 com incio no estado Wait.
Escolha os valores de entrada para que mquina alcance o estado EN e volte para o estado Wait.

Figura 18: Mquina de estados nitos.


52. ** Quantos possveis estados podem ser representados por um registrados de 16 bits?
53. *** Se uma maquina de estado nito tem N estados, qual o nmero mximo de possveis transies que
poderiam existir na maquina de estado? Assuma que nenhum par de estados tem mais que uma transio
na mesma direo, e que nenhum estado tem uma transio para si mesmo. Assumindo que h um grande
nmero de entradas, podemos dizer que o nmero de transies independente do nmero de entradas?
Dica: Tente para um N pequeno e ento generalize.
54. *** Usando o processo para projeto de um controlador, converta a Mquina de Estados (FSM) da Figura
19 em um controlador, usando registradores de estado e portas lgicas.

Figura 19: Mquina de estado.


55. *** Desenhe um diagrama de estado em que as sadas xyz geram a sequncia conhecida como cdigo Gray
(000,010,011,001,101,111,110,100 e repete). S deve haver mudana de estados a cada borda de clock
se a entrada gent = 1. Converta a Mquina de Estados (FSM) encontrada em um controlador, usando
registradores de estado e portas lgicas.

8
56. *** Crie uma Mquina de Estados (FSM) que possui uma entrada X e uma sada Y. Em qualquer mudana
de 0 para 1 em X, Y deve se tornar 1 por cinco ciclos de clock, mesmo se X permanece em 1. Usando o
processo para projeto de controladores, converta a FSM em um controlador. No necessrio implementar
a lgica combinacional.
57. *** A Mquina de Estados (FSM) na Figura 20 tem dois problemas: um estado tem transies no-
excludentes e outro estado tem transies incompletas. Aplicando as operaes de OR e AND as condi-
es das transies de cada estado, demonstre que de fato esses problemas existem. Ento, conserte-os
aperfeioando a FSM.

Figura 20: Mquina de estado.


58. *** Um circuito foi pobremente desenvolvido na primeira tentativa de projeto de um circuito temporizador
que deve garantir que um laser que ativado por trs ciclos de clock aps um cirurgio pressionar um boto.
Use engenharia reserva para capturar o comportamento desse circuito em uma Mquina de Estados (FSM).
Explique porque o comportamento desse circuitos, como descrito na FSM, indesejvel.

Figura 21: Primeira tentativa de implementao do circuito temporizador.


59. *** Use engenharia reversa para capturar o comportamento do circuito sequencial mostrado na Figura 22.

Figura 22: Circuito sequencial.


60. *** Projete um controlador com um registrador de estados de 4 bits que inicializado de forma sncrona
no estado 1010, quando a entrada reset = 1.

Referncia: Vahid, Frank. Digital Design with RTL Design, Verilog and VHDL. John Wiley & Sons, 2010.