Escolar Documentos
Profissional Documentos
Cultura Documentos
Apostila 2013.1
Professores
Contedo
I Apresentao e Regras Gerais
1 Uso do Laboratrio e Normas de Documentao 1.1 Consideraes Gerais . . . . . . . . . . . . . . . . . 1.2 Normas para Elaborao de Pr-relatrios . . . . 1.3 Normas para Elaborao de Relatrios . . . . . . 1.4 Regras de Uso do Laboratrio . . . . . . . . . . . . 2 Familiarizao com a Bancada 2.1 Objetivos . . . . . . . . . . . . . . . . . . 2.2 Parte Experimental . . . . . . . . . . . . 2.3 Equipamentos . . . . . . . . . . . . . . . 2.4 Material para Montagem de Circuitos 2.5 Chaves (ou switches) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
7 7 8 9 13 15 15 15 16 18 21
II Experimentos
1 Caracterizao de Portas Lgicas 1.1 Objetivos . . . . . . . . . . . . . . . . . . 1.2 Portas Lgicas e Circuitos Integrados 1.3 Pr-Relatrio . . . . . . . . . . . . . . . . 1.4 Roteiro Experimental . . . . . . . . . . 2 Circuitos Lgicos Combinacionais 2.1 Objetivos . . . . . . . . . . . . . . . 2.2 Circuitos Lgicos Combinacionais 2.3 Displays . . . . . . . . . . . . . . . . 2.4 Pr-Relatrio . . . . . . . . . . . . . 2.5 Roteiro Experimental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
25 25 25 37 39 45 45 45 47 50 53 55 55 55 58 60 63
3 Circuitos Somadores e Subtratores 3.1 Objetivos . . . . . . . . . . . . . . . . 3.2 Circuitos Aritmticos . . . . . . . . . 3.3 Pr-Relatrio . . . . . . . . . . . . . . 3.4 Roteiro Experimental . . . . . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
63 63 65 66 69 69 69 73 75 77 77 77 80 81 83 83 83 87 88
5 Circuitos Multiplexadores e Demultiplexadores 5.1 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Circuitos Multiplexadores . . . . . . . . . . . . . . . 5.3 Pr-Relatrio . . . . . . . . . . . . . . . . . . . . . . . 5.4 Roteiro Experimental . . . . . . . . . . . . . . . . . 6 Flip-Flops 6.1 Objetivos . . . . . . . . . . . . . 6.2 Circuitos Lgicos Seqenciais 6.3 Pr-Relatrio . . . . . . . . . . . 6.4 Roteiro Experimental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 Circuitos Contadores Sncronos e Assncronos 7.1 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . 7.2 Circuitos Contadores . . . . . . . . . . . . . . . . . 7.3 Pr-Relatrio . . . . . . . . . . . . . . . . . . . . . . 7.4 Roteiro Experimental . . . . . . . . . . . . . . . .
IIIProjetos Finais
I Regras Gerais I.1 Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I.2 Sobre os Temas de Projeto . . . . . . . . . . . . . . . . . . . . . . . . . . . I.3 Documentos Esperados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
91
93 93 94 95 97 97 97 98 98
1 ULA 1.1 Introduo . . . . . . . . . . . 1.2 Projeto Bsico . . . . . . . . . 1.3 Exemplos de Funcionamento 1.4 Desaos Adicionais . . . . . .
2 Gerador de Onda Quadrada Programvel 101 2.1 Projeto Bsico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 2.2 Desaos Adicionais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 3 Testador de CIs 103 3.1 Projeto Bsico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 3.2 Desaos Adicionais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 4 Controle de Motor de Passo 105 4.1 Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 2
CONTEDO 4.2 Projeto Bsico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 4.3 Desao Adicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 5 Freqencmetro 5.1 Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Projeto Bsico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3 Desao Adicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 109 110 111
6 Vericador de Senhas 113 6.1 Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 6.2 Projeto Bsico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 6.3 Desao Adicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 Bibliograa 117
IV Anexos
A Pinagem de CIs 74xxx
119
121
B Depurando Circuitos 135 B.1 Consideraes Gerais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 B.2 O Processo de Depurao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
U SO
DO
A dupla que no apresentar o pr-relatrio - ou apresent-lo incompleto - no poder realizar o experimento, obtendo consequentemente nota zero na pratica em questo. Neste caso no haver reposio do experimento 7
AMBIENTAO
2. Respostas s perguntas do roteiro, devidamente identicadas; 3. Tabelas e diagramas devidamente identicados, incluindo as tabelas de conexo; 4. Diagramas esquemticos dos circuitos simulados, seguindo as mesmas normas dos especicados para o relatrio. 8
1.3
As normas a seguir so vlidas para relatrios, sejam eles escritos mo ou em formato digital.
Aps trocar todos os CIs e ajustar a tenso da fonte em 5 V, o circuito passou a funcionar, porm de maneira incorreta, pois o LED1 sempre se encontrava aceso independentemente do posicionamento das chaves CH1 e CH2. Detectou-se que um dos CIs, o 74LS04, no se encontrava aterrado. Aps realizar a conexo do pino 07 com a linha de terra na protoboard, o circuito passou a funcionar corretamente. Resultados obtidos: fazer uma descrio detalhada dos resultados encontrados em forma de guras, grcos e tabelas. 6. Discusso sobre os resultados encontrados, comentando detalhadamente as medies realizadas e dando a devida interpretao destas, informando se os objetivos da experimento foram alcanados. Esta uma das partes mais importantes do relatrio: aqui, h oportunidade para expressar os conhecimentos adquiridos na prtica e fazer a interrelao com os fundamentos tericos. 7. Concluses, mostrando os xitos e eventuais problemas encontrados na realizao do experimento, indicando as limitaes, apresentando recomendaes e/ou sugestes. 8. Referencias Bibliogrcas, relacionadas e citadas de acordo com as normas da ABNT. 9. Tabelas de Conexo. Todos os dispositivos usados devem ter suas posies na protoboard anotadas, assim como as conexes realizadas. Para agilizar o trabalho de montagem, sugerimos fortemente que os alunos criem previamente tabelas com um descritivo das conexes que sero realizadas. Para circuitos simples, a prtica pode parecer desnecessria; porm, a complexidade dos circuitos aumenta ao longo do curso e a organizao e presteza durante a montagem tornam-se essenciais. Por exemplo, suponha que o circuito montado em sala seja o da Figura 1.1. Neste circuito hipottico, h trs componentes (74LS00, 74LS04 e LED1), portanto h trs tabelas de conexo. Cada uma tem tantas linhas quanto o nmero de pinos do componente. Um exemplo est na Tabela 1.1. Deve-se observar que as tabelas de conexo devem estar coerentes com os diagramas esquemticos dos circuitos. 10. Diagramas Esquemticos. Todos os diagramas devem ser inseridos ao nal do relatrio em pginas separadas do texto, indicando a identicao do circuito, autor, revisor, verso e datas relevantes. Para o tamanho dos diagramas, h apenas duas opes: dois diagramas por pgina (orientao retrato, para circuitos mais simples) ou um nico diagrama por pgina (orientao paisagem, para circuitos mais complexos). 10
Os diagramas devem conter a pinagem e identicao de todos os componentes, como mostrado na Figura 1.2. 74LS00 - Posio A1 De pino ... P03 ... P07 ... P14 Para ... B2.74LS04.P01 ... GND ... Vcc
Cabe aqui listar alguns princpios orientadores para desenhar diagramas esquemticos: 11
VCC
PULSO
74LS86 4
Verso 1.0
Data 31/01/2010
Fulano Beltrano
Figura 1.2: Exemplo de diagrama esquemtico. O esquemtico no deve ser ambguo. Assim, todos os pinos, valores de componentes, polaridades, etc., devem ser explicitados para evitar confuso. As diferentes funes desempenhadas pelo circuito devem se localizar em regies distintas. Use este princpio sempre, mesmo que ao custo de deixar algumas reas em branco para separar visualmente os grupos funcionais. Se necessrio, divida o seu projeto em mais de um esquemtico. Use uma seta (por exemplo ) para indicar sinais que vo de um diagrama a outro. Use um ponto para indicar conexes entre os. Sempre que possvel, alinhe os componentes na horizontal ou vertical. Coloque a pinagem dos CIs sempre do lado de fora do smbolo.
I MPORTANTE
No ser admitido plgio de qualquer espcie. Caso detectado, ser punido com nota zero. O prazo de entrega do relatrio de uma semana a partir da data da realizao do experimento.
12
1.4
As regras a seguir tm como objetivo minimizar o risco de acidentes. Leve-as a srio. A circulao de uma corrente eltrica de 100mA pelo seu trax pode causar desbrilao e ser fatal.
Os alunos no devem pedir ajuda ou tirar dvidas sobre a montagem do experimento com os tcnicos do laboratrio 13
14
MBIENTAO
F AMILIARIZAO
2.1 Objetivos
COM A
B ANCADA
Neste experimento, apresentam-se os conceitos bsicos sobre material e equipamentos de bancada do Laboratrio de Sistemas Digitais I.
2.2.1 A bancada
Como regra geral, uma bancada comporta apenas dois alunos. Apenas em casos excepcionais (por exemplo, falha de algum equipamento essencial) ser permitido que trs alunos ocupem o mesmo espao. Cada bancada possui os seguintes equipamentos, que devem estar conectados s tomadas: 1 Osciloscpio BK Precision modelo 2530; 1 Gerador de funes iCEL modelo GV-2002; 1 Fonte de tenso Minipa modelo MPL-1303; 1 Fonte de tenso Minipa modelo MPL-3305M. Identique cada um destes equipamentos, assim como os alicates, extrator de CIs e os repositrios para os. A bancada possui dois interruptores, um referente tenso de 110 V AC e outro para a de 220 V AC . Ao ligar cada interruptor, uma luz de aviso acender, indicando que a linha de tenso correspondente est disponvel para energizar os equipamentos. 15
Atividade 1 Ligue e desligue os interruptores de sua bancada. Informe o professor caso a luz de aviso no acenda. Ligue novamente os interruptores e, em seguida, todos os equipamentos da bancada. Caso encontre algum equipamento desconectado ou sem indicao de energizao, avise o professor ou o monitor.
2.3
Equipamentos
Em caso de dvidas, pergunte ao professor ou ao monitor.
2.3.1 Multmetro
O multmetro ser o seu principal equipamento para inspecionar o funcionamento do circuito. Manuseie-o corretamente e com cuidado. Como qualquer equipamento de laboratrio, deve ser operado corretamente sob risco de danic-lo ou mesmo inutiliz-lo.
Atividade 2 Ligue o multmetro. Em sequncia, de acordo com as instrues do professor, selecione as diversas funes do equipamento (medida de tenso DC, AC, resistncia, teste de LED, medida de corrente). Desligue o multmetro. 16
2.3. Equipamentos
Atividade 3 Ligue a fonte de tenso MPL-1303. Ajuste o nvel de tenso para 5.0 VDC . Usando o multmetro, selecione a funo adequada e mea o valor entre os terminais preto e vermelho. Repita o procedimento para a fonte de tenso MLP-3305M.
17
2.3.4 Osciloscpio
Este equipamento permite visualizar formas de onda de tenso em um circuito. Para entender seu funcionamento e aprender como conect-lo, realize a seguinte atividade.
Atividade 4 Siga as orientaes do professor para conectar a ponta de prova do osciloscpio no cabo BNC-jacar. Em seguida, visualize as formas de onda quadrada, senoidal e triangular na frequncia de 10 KHz e amplitude de 5VP P (pico a pico). Repita para 100 KHz e 3VP P .
2.4
2.4.1
A protoboard nada mais do que um pequeno painel que permite realizar conexes eltricas entre componentes por intermdio de os (tipicamente 22 AWG a 24 AWG). Recomendamos que cada dupla adquira uma protoboard, de modo a aproveitar melhor o tempo de aula. A protoboard composta por faixas de pontos de conexo, existindo tipicamente dois tipos de faixas. O primeiro chamado faixa tipo soquete. Neste tipo de soquete, grupos de 5 furos so conectados eletricamente por contatos internos. Entre dois 18
Figura 2.5: Conexes na protoboard. grupos de 5 furos h um espaamento maior destinado a permitir a insero de CIs na protoboard, como mostrado na Figure 2.5. O segundo tipo de faixa chamada de faixa tipo alimentao. Neste caso, grupos maiores de pinos esto conectados eletricamente, permitindo facilitar a distribuio de sinais comuns, tais como tenso de alimentao e terra. Atividade 5 Identique as faixas da protoboard em sua bancada. Com o multmetro na funo de ohmmetro, verique o isolamento (ou curto) nos furos das faixas de soquete e de alimentao. Use dois jumpers para facilitar o processo.
2.4.2 Cabos e os
Os os usados para conexo na protoboard esto disponveis nas caixas das bancadas. Antes de utiliz-los, verique se: Esto desencapados nas extremidades. As pontas devem ser de comprimento tal que, ao encaixar o o na protoboard, a ponta desencapada no que exposta. Os os no esto quebrados. Em caso de suspeita, faa o teste com o multmetro. Ao utilizar os os, no use os longos para conexes entre componentes que esto prximos. Use o bom senso. No deixe os os muito esticados, pois a tendncia que eles escapem nos furos. Caso adquire em uma loja, recomenda-se comprar jumpers (do tipo macho) de vrios tamanhos. Os cabos so usados para conectar os equipamentos de bancada entre si ou protoboard. Use cabos vermelhos para o terminal positivo da fonte de tenso e os pretos para o terminal negativo ou terra. Havendo cabos verdes, use-os especicamente para conexes no terminal terra (GND) dos equipamento. 19
O multmetro e o osciloscpio possuem cabos de conexo especiais chamados de pontas de prova. Em particular, as pontas de prova de osciloscpio so parte essencial do equipamento e devem ser manuseadas com cuidado. As terminaes dos cabos disponveis so de 4 tipos: Banana - para conexes s fontes de alimentao ou protoboard; Jacar - para conexes s fontes de alimentao ou protoboard; BNC - para conexes ao osciloscpio ou ao gerador de funes; Pin - para conexes protoboard. H cabos com terminaes diferentes: BNC-banana, banana-pin, banana-jacar, etc. Use o adequado para cada caso. Quando uma das terminaes BNC e a outra no, sempre haver uma terminao com terminao preta. A ponta de cor preta deve estar conectada ao terra do circuito. Atividade 6 Identique os cabos disponveis em sua bancada. Sem ligar qualquer equipamento, conecte protoboard uma das fontes de alimentao. Verique se h mais de uma opo de terminao de cabo para tanto.
2.4.3 Resistores
Neste laboratrio, os resistores sero utilizados exclusivamente com um nico propsito: limitar o nvel de corrente nos diodos LED. Em sua bancada, deve haver uma tabela de cdigo de cores para resistores. Atividade 7 Selecione dois resistores e tome os valores usando o cdigo de cores. Conra o valor lido com a medio no multmetro. Em seguida, conecte-os nas associaes srie e em paralelo na protoboard. Mea a resistncia de cada associao com o multmetro.
i AK
LED A
i AK
K
V AK V AK
VT
Figura 2.6: Diodo - representao e curva caracterstica simplicada. Atividade 8 Teste o funcionamento do LED com o multmetro.
2.4.5 CIs
Em aulas posteriores detalharemos as caractersticas dos CIs usados neste curso. Por hora, basta saber que, na protoboard, a congurao das faixas do tipo soquete e o espaamento dos furos permite a insero exata dos CIs. Atividade 9 Insira um CI na protoboard. Verique o encaixe e em seguida retire-o com o extrator.
VCC
21
Atividade 10 Ajuste a fonte de tenso para 5VDC . Conrme a medio com o multmetro. Insira uma chave na protoboard, de modo que seus trs pinos no estejam em curto-circuito. Desligue a fonte e a conecte protoboard. Conecte um dos terminais externos da chave tenso de 5V e o outro terminal externo tenso de 0V. Conecte em srie ao terminal central um resistor de 1K e um LED. Ligue a fonte. Com o multmetro, mea a tenso no terminal central, com relao ao terra. Verique se o LED acendeu. Mea a tenso no LED e no resistor. Verique a Lei das Tenses de Kirchoff. Atividade 11 (havendo tempo) Ajuste a fonte de tenso para 2.0 VDC . Ajuste o gerador de funes para onda senoidal, com 2.0 VP P , frequncia de aproximadamente 1 Hz. Monte o circuito da gura abaixo, com a fonte e o gerador desligados.
1.0 K
LED
22
Parte II Experimentos
23
C ARACTERIZAO
DE
P ORTAS L GICAS
1.1 Objetivos
Apresentar circuitos integrados das famlias TTL e CMOS e realizar estudos para determinar suas caractersticas bsicas (estticas e dinmicas), como por exemplo, a curva de transferncia de tenso, tempos de subida, descida e atrasos de propagao.
EXPERIMENTO
Q4 Q2
Q1
IN (1)
D1 R3 1 K Q3
D2
OUT (2)
GND (7)
Figura 1.1: Implementao de uma porta inversora usando lgica TTL. tipo 7404 dispomos de seis portas NOT e tipicamente no precisamos nos preocupar em como o CI implementou a funo NOT1 . O que pode nos interessar se a implementao realizada com este CI satisfaz nossos critrios de projeto, tais como frequncia de operao e nveis de tenso dos sinais de entradas e sada.
Uma segunda maneira de se classicar CIs em analgicos, digitais e mistos (mixed signal). Na categoria digital, encontram-se: as portas lgicas, os ip-ops, os multiplexadores, os microprocessadores, os microcontroladores, os DSPs (digital
1 Porm,
26
signal processors), dentre outros. Esses CIs contm circuitos formados por resistores, diodos e transitores miniaturizados, diferenciando-se dos circuitos integrados ditos analgicos pelo fato de que nos digitais os transistores s possuem dois modos estveis de operao (corte e saturao), cando muito pouco tempo nas regies de transio. Portanto, idealmente, dito que os transistores operam como chaves. Os CIs analgicos so tipicamente sensores, circuitos de potncia, amplicadores operacionais (Amp-Ops), misturadores (mixers) e ltros. Os mistos tm como representante clssico os conversores de sinal A/D (analgico-para-digital) e D/A (digital-para-analgico). A terceira maneira comum de classicao, tambm chamada de famlia, referese ao tipo de tecnologia de fabricao do CI. Alguns exemplos de famlias so: RTL (Resistor Transistor Logic) RCTL (Resistor Capacitor Transistor Logic) DTL (Diode Transistor Logic) TTL (Transistor Logic) CMOS (Complementary Metal Oxid Semiconductor) ECL (Emitter Coupled Logic) Para cada famlia, h subfamlias com caractersticas especcas. Em particular, apresentamos a seguir as subfamlias TTL e CMOS. 1.2.2.1 Famlia TTL
A famlia TTL dividida em dois grandes grupos: o primeiro, voltado para a verso comercial (com prexo de cdigo 74) e o segundo, para a verso militar (prexo 54). Os avanos nas tcnicas de fabricao levaram a uma subdiviso dos CIs TTL em subfamlias, tais como: Tabela 1.2: Subfamlias TTL. S UBFAMLIA P REFIXO 54/74 54L/74L 54S/74S 54AS/74AS 54LS/74LS 54ALS/74ALS 54F/74F O BSERVAO Srie padro Baixa potncia Rpido Rpido Baixa potncia Baixa Potncia Rpido
Standard Low Power Schottky Advanced Schottky Low Power Schottky Advanced Low Power Schottky Fast
27
1.2.2.2
Famlia CMOS
Atualmente, a famlia de CIs mais usada a CMOS, por ter baixo consumo de potncia e boa imunidade a rudo. Assim como a famlia TTL, dividida em subfamlias: Notem que h CIs CMOS compatveis com CIs TTL (mesma pinagem e Tabela 1.3: Subfamlias CMOS. S UBFAMLIA CMOS P REFIXO 74C 74HC 74HCT 74AC 74ACT 74AHC 74VHC 74VHCT 74LVC 74ALVC 74AUP FCT O BSERVAO Srie padro Rpido Compatvel com TTL Rpido Compatvel com TTL Rpido Rpido Compatvel com TTL Baixa tenso de alimentao Baixa tenso de alimentao Aplicaes portteis Rpido
High-speed CMOS
High-speed, TTL compatible Advanced CMOS Advanced CMOS, TTL compatible Advanced High-speed CMOS Very High-speed CMOS Very High-speed CMOS TTL compatible Low-voltage CMOS
1 2 3 4 5
14 13 12 11 10 9 8
14 1
6 7
Figura 1.2: Encapsulamento DIP de 14 pinos: vista em perspectiva e superior. analisar o data sheet do componente (ver seo 1.2.4), como exemplo a Figura 1.3 mostra a identicao dos terminais do CI 74LS32 (CI com quatro portas OR de duas entradas). Observe nesta gura que os pinos 14 (VCC) e 7 (GND) devem ser ligados fonte de alimentao nos terminais positivo e negativo, respectivamente.
14 VCC 13 12 11 10 9 8
GND 1 2 3 4 5 6 7
Figura 1.3: Identicao dos terminais do CI 74LS32 (vista superior). O encapsulamento DIP usado em CIs com nmero relativamente baixo de pinos. Tipicamente, usa-se este encapsulamento para CIs de at 40 pinos. Circuitos com um nmero maior de pinos, tais como os microprocessadores comerciais atuais, exigem uma estratgia diferente, aproveitando todo o espao possvel da cpsula para alocar os pinos. Assim, encontram-se disponveis montagens de superfcie quadradas, tais como BGA e QFP; outros tipos de encapsulamento comuns para CIs encontram-se listados na Tabela 1.4. Mais recentemente, o encapsulamento LGA (Land Grid Array), Figura 1.4, introduziu a novidade de se deixar os pinos no soquete onde o CI ser inserido (por 29
exemplo, na placa-me do computador), assim os CIs no utilizam pinos de contato em sua parte inferior, mas sim pontos metlicos. Quando o CI encaixado na placame, por exemplo, esses pontos cam em contato com pinos existentes no soquete. Esse um padro atualmente usado nos processadores Core I7 da Intel.
Figura 1.4: Ilustrao de um encapsulamento LGA. Observe que no h pinos, somente contatos metlicos.
Tabela 1.4: Algumas variantes de encapsulamento de CIs. S IGLA BGA CDIP CFP CGA CPGA DIP LCC LGA S IGNIFICADO Ball Grid Array Ceramic DIP Ceramic Flat Pack Column grid array Ceramic Pin Grid Array Dual Inline Package Leadless Chip Carrier Land Grid Array S IGLA LQFP MDIP PDIP PGA PLCC SIP SOP ZIP S IGNIFICADO Low-prole Quad Flat Package Molded DIP Plastic DIP Pin Grid Array Plastic Leaded Chip Carrier Single in-line Package Small Outline Package Zig-zag in-line package
O entendimento das caractersticas estticas e dinmicas que denem as capacidades e limitaes de qualquer dispositivo lgico vital para a obteno de um projeto consistente e convel. Por exemplo, como j visto nas aulas tericas, as informaes binrias so representadas por faixas de tenses e os valores tpicos de tenses em um sistema digital da forma mostrada na Figura 1.5. 5.0 V
Binrio 1
Binrio 0 0.0 V Figura 1.5: Valores tpicos de tenso em um sistema digital. No entanto, na prtica esses valores so ligeiramente diferentes dos mostrados, pois dependem de vrios fatores como, por exemplo, a tecnologia de fabricao utilizada, conforme pode ser visto na Figura 1.6. Portanto, no subestime o valor do estudo detalhado dos manuais do fabricante. O bom entendimento dos parmetros eltricos estticos e dinmicos das pastilhas comerciais de importncia fundamental para a realizao de um bom projeto.
1 - (0 V) E NTRADA 0 - (5 V) tPHL 1.5 V 0.8 V 0.4 V 0V VIL VOL GND 0.5 V 0V VIL VOL GND tPLH 1 - (5 V)
5V
VCC
5V 4.4 V 3.5 V
2.4 V 2V
VOH VIH
S ADA 0 - (0 V)
TTL 5 V
CMOS 5 V
Os parmetros mais relevantes encontrados nos manuais dos CIs usados neste curso esto explicitados na Tabela 1.5, com valores extrados de um CI tpico. Os valores exatos devem ser analisados caso a caso, pois variam de acordo com a famlia do CI.
Tabela 1.5: Alguns parmetros de operao de CIs. Smbolo VCC VIH Parmetro Mnimo Tenso de alimentao do CI Tenso mnima de entrada na porta interpretada como nvel Alto (High) Tenso mxima de entrada na porta interpretada como nvel Baixo (Low) Tenso mnima de sada na porta para nvel Alto (High) Tenso mxima de sada na porta para nvel Baixo (Low) Corrente mxima absorvida pela entrada em nvel Alto (High) Corrente mxima fornecida pela entrada em nvel Baixo (Low) Corrente mxima fornecida pela porta em nvel lgico Alto (High) Corrente mxima absorvida pela sada em nvel lgico Baixo (Low) Atraso entrada-sada, de nvel Baixo para Alto (Low para High) Atraso entrada-sada, de nvel Alto para Baixo (High para Low) 8 2,7 3,5 0,35 0,5 20,0 4,75 2,0 Limites Tpico Mximo 5,0 5,25 Unid. V V
VIL
0,8
V V mA
IIL
0,1
mA
IOH
-0,4
mA
IOL
8,0
mA
tPLH
15
ns
tPHL
10
20
ns
32
Nvel 1
Vb
1
Vx Va
Nvel 0
1.5 2.0 2.5 3.0
0.5
1.0
Figura 1.7: Caracterstica de transferncia tpica de uma porta TTL inversora. Para tenses de entrada inferiores a Vb a sada apresenta uma tenso de sada constante igual a 4V (nvel lgico UM). A partir de Vb , a sada comea a apresentar uma queda de tenso. Quando a tenso de entrada atinge Vx , a queda se torna mais acentuada, chegando a um nvel mnimo em Va . A partir deste valor, a sada permanece constante (nvel lgico ZERO). Os valores tpicos destas tenses so: Vb = 0, 7V , Vx = 1, 0V , Va = 1, 3V , NVEL UM = 4, 0V e NVEL ZERO = 0, 3V . A Figura 1.6 mostra os nveis de tenso garantidos pelos fabricantes. Vale a pena observar que VOH deve ser maior do que VIH e que VOL deve ser menor do que VIL . A diferena entre estes valores fornecem as faixas de imunidade a rudo para os nveis lgicos. Notem que a imunidade a rudo da tecnologia CMOS maior do que a TTL, alm do fato de que, na famlia CMOS, os nveis de tenso mencionados serem simtricos com relao aos nveis GND e VCC . Analisando-se esses valores de tenso, pode-se concluir que os circuitos TTL admitem, no pior caso, uma margem de rudo CC de 0, 4V . Assim sendo, no pior caso, ao nvel ZERO fornecido por uma sada TTL pode-se somar um rudo de amplitude +0, 4V , que o sinal resultante ainda reconhecido corretamente por uma entrada TTL; no nvel UM fornecido por uma sada TTL, 33
pode-se somar um rudo de amplitude 0, 4V , que o sinal resultante ainda se encontra dentro das especicaes de entrada para nvel UM. Para valores de tenso compreendidos entre 0, 8V e 2, 0V , nada se garante com relao aos nveis lgicos [SM11a]. Alm da compatibilidade entre os nveis de tenso requeridos pelas entradas e fornecidos pelas sadas, tambm necessrio examinar os valores das correntes absorvidas e fornecidas pelas entradas e sadas dos circuitos integrados, tanto em nvel UM como em nvel ZERO. A Tabela 1.6 apresenta os valores tpicos encontrados. Tabela 1.6: Nveis de corrente tpicos para a srie 74 da tecnologia TTL. Valores obtidos de [SM11a] PARMETRO
IIL I OL II H I OH
DESCRIO Corrente mxima fornecida por entrada em nvel ZERO Corrente mxima absorvida por sada em nvel ZERO Corrente mxima absorvida por entrada em nvel UM Corrente mxima fornecida por sada em nvel UM
Analisando-se a tabela acima, conclui-se que uma sada TTL pode excitar at 10 entradas da mesma famlia (fan-out). Outra especicao importante fornecida pelos fabricantes dos circuitos TTL diz respeito mxima tenso que pode ser aplicada s entradas. Para a srie 74, recomendado no se colocar nveis de tenso superiores a 5, 5V , pois o circuito pode ser danicado se uma entrada receber uma tenso superior a este valor. Um outro ponto a se notar que a I OL >> I OH . Desta forma, ao conectar um LED na sada de um CI TTL, prefervel fazer com que ele seja aceso quando a sada for para o nvel lgico 0.
Inclinao = -1
Inclinao = +1
Nvel 0
0 0 VIL VIH
Nvel 1
Tenso de Entrada VDD VTH = VDD /2
0,9 V
V
0,9 V
V
VS
mente corretos. Para que se possa contornar essa situao deve-se conhecer profundamente todas as caractersticas dos componentes que sero utilizados. 36
1.3. Pr-Relatrio
1.3
Pr-Relatrio
Simule o circuito mostrado na Figura 1.12 e apresente a tabela verdade correspondente. Qual uma possvel aplicao deste circuito? 37
VCC
VCC B
GND
A Figura 1.13 mostra um circuito de alarme de automvel usado para detectar uma determinada condio indesejada. As trs chaves so usadas para indicar, respectivamente, o estado da porta do motorista, o estado da ignio e o estado dos faris. O alarme deve ser ativado (na simulao o LED deve acender) sempre que os faris esto acesos e a ignio est desligada ou a porta do veculo est aberta e a ignio est ligada. Simule este circuito no software de sua preferncia e verique se o circuito funciona adequadamente. Justique a sua resposta.
VCC Aberta Fechada GND P ORTA
LED
1.3.2.3
Projetos
Projete e simule os circuitos dos itens a seguir. Em todos os casos, simule seu projeto no software de sua preferncia e apresente a tabela-verdade correspondente. 38
Utilize LEDs como indicadores da sada da funo booleana. 1. Utilizando apenas um CI da famlia 7400 (NAND), projete um circuito AND com trs entradas. 2. Utilizando apenas um CI da famlia 7486 (XOR), projete um circuito NOXOR (XOR) com quatro entradas.
1.4
1.4.1
Roteiro Experimental
PARTE 1 - Circuitos Elementares com Portas Lgicas
Monte e teste os circuitos projetados na Seo 1.3.2.3. Com o multmetro, mea as tenses VLE D sobre o LED e VR sobre o resistor. Anote todas as medies. Visualize a tenso VR no osciloscpio e reproduza a tela do osciloscpio nos gabaritos fornecidos ao nal deste roteiro.
1.4.2
1. Selecione um CI NAND da famlia TTL (por exemplo, o 74LS00) e monte o circuito da Figura 1.14 (setup para curva). Observe que nesta montagem a porta NAND est congurada de forma a operar como uma porta inversora. No se esquea de conectar a alimentao do componente (pinos VCC e GND).
Fonte xa +5.0 V
GND (pino 7)
Figura 1.14: Montagem para determinao da curva de transferncia de uma porta NAND 74LS00. Figura adaptada de [SM11a] 2. Com a tenso de alimentao em VCC xa em 5 V, altere a tenso fornecida entrada, em passos de 0.5 V. Mea a tenso de sada correspondente e construa o grco da curva caracterstica de transferncia de tenso deste inversor usando as Figuras 1.16 e 1.17. 39
0,5
1,0
1,5
2,0
2,5
3,0
3,5
4,0
4,5
5,0
TTL - VOUT (V) CMOS - VOUT (V) 3. Desconecte as entradas A e B, deixando-as sem nenhuma ligao. Com um multmetro digital realize a medida dos nveis de tenso nas entradas A e B e na sada Y do componente. Qual o nvel lgico das entradas A e B correspondente ao nvel lgico da sada Y medida? Justique no relatrio os nveis obtidos. 4. Repita os procedimentos anteriores para um CI 7400 da famlia CMOS. 5. Pense em um procedimento para determinar os nveis de tenso correspondente ao nvel lgico UM e ao nvel lgico ZERO de uma porta OR TTL. Descreva detalhadamente o procedimento elaborado e monte o circuito necessrio para determinao dos nveis de tenso. Compare os resultados obtidos com os resultados tericos esperados. 6. Monte o circuito da Figura 1.15 (setup para tempos), implementando os inversores com portas NAND. Usando o osciloscpio, reproduza as formas de onda na entrada VIN (no canal 1) e VOUT (canal 2), quando a sada tomada no primeiro estgio VOUT,1 e no segundo estgio VOUT,2 . Use a escala de tempo mais aberta possvel. Use os gabaritos em anexo e anote os tempos tPLH e tPHL . VIN CH1 VOUT,1 CH2 VOUT,2 CH2
Gerador de pulsos
Figura 1.15: Montagem para determinao dos parmetros dinmicos de um CI. Figura adaptada de [SM11a]
7. Calcule o tempo de propagao tP da porta lgica em estudo. 8. Baseado nos parmetros de tempo obtidos, qual o intervalo de valores de frequncias que pode ser usado? Justique sua resposta. 40
9. Escolha um valor de frequncia adequado para o gerador de pulsos e execute a medida do tempo de subida e de descida do sinal de sada da porta lgica. Anote os valores experimentais e compare com os valores pesquisados. Comente os resultados obtidos.
41
0 0 1 2 3 4 5
0 0 1 2 3 4 5
42
timeDiv : 5ms/div
Channel A : 1 V/div
Channel B : 1 V/div
XY
OFF
timeDiv : 5ms/div
Channel A : 1 V/div
Channel B : 1 V/div
XY
OFF
OsetC 0 XY
OFF
OFF
OsetC 0 XY
OFF
OFF
OsetA 0
OsetB 0
OsetC 0
OsetA 0
OsetB 0
OsetC 0
43
EXPERIMENTO
que, como j foi visto, so obtidas atravs das tabelas verdade que representam as situaes j mencionadas.
Figura 2.1: Ilustrao da metodologia a ser seguida para o projeto de circuitos combinacionais. O processo se inicia com uma anlise detalhada e profunda do problema que deve ser resolvido. Esta anlise deve permitir a descrio do problema na forma de uma tabela verdade. Esta a etapa mais difcil e requer experincia do projetista, pois no possvel torn-la um processo algortmico, passvel de uma metodizao absoluta devido, sobretudo, s nuances e caractersticas de cada problema. No entanto, em geral, a identicao correta das variveis de entrada e sada um passo que auxilia na construo da tabela verdade. Nesse processo, o projetista deve responder algumas perguntas, como por exemplo: Quantas so as variveis de entrada e sada? Quais so? O que representa os nveis lgicos ZERO e UM? 46
2.3. Displays
Aps essas denies deve-se realizar as combinaes das variveis de entrada e montar a tabela verdade para cada sada. Aps a obteno da tabela verdade, o prximo passo a expresso booleana de cada sada. Uma forma de realizar esse procedimento escrever o termo AND (produto) para cada caso em que a sada esteja em nvel lgico alto e depois escrever a expresso de soma de produtos para a sada. A obteno da expresso lgica do problema j permite a implementao do circuito. No entanto, altamente recomendvel simplicar a expresso lgica obtida de forma a obter um circuito mais simples e, consequentemente, mais barato. O processo de simplicao pode ser realizado atravs da lgebra de Boole ou atravs da utilizao de Mapas de Karnaugh. Antes de implementar em protoboard o circuito lgico obtido da expresso nal simplicada, recomenda-se simular o circuito em software de simulao apropriado, de forma a validar o projeto e assim evitar perda de tempo na montagem de circuitos errados.
2.3 Displays
2.3.1 Introduo
O display um elemento importante no projeto de sistemas eletrnicos, dada a sua funo de apresentar informaes inteligveis a um ser humano. A gama de utilizao dos displays bastante diversa, indo desde aplicaes no setor industrial at a incorporao em produtos eletrnicos de consumo de massa. Um exemplo recente so os displays sensveis ao toque usados em produtos portteis. Assim, encontra-se no mercado uma grande variedade de opes de formatos, especicaes e complexidade de displays. Todos os displays pedem algum tipo de circuito para controlar seus elementos internos. Por exemplo, para um display SXGA (Super Extended Graphics Array) de 1280 x 1024 pixels usado em notebooks, torna-se necessria a presena de circuitos destinados a controlar cada um de seus pixels, de modo a poder mostrar dinamicamente as imagens que se deseja visualizar. Neste experimento, ser utilizado um display LED de sete segmentos. Este tipo de display usado para visualizar informaes numricas, podendo ser usado em relgios, instrumentos de medio, painis de preo e calculadoras, dentre outras aplicaes. Como os displays necessitam de controladores, tambm ser utilizado um conversor de dgitos BCD para 7 segmentos, projetado especicamente para realizar interface com o display mencionado.
tem que 7 segmentos permitem representar nmeros de 0 a 15 em hexadecimal (veriquem). Visto que cada segmento um LED, deve-se conectar o anodo e catodo de maneira correta, de forma a polariz-lo corretamente e permitir a emisso de luz. Comercialmente, h duas opes de congurao: anodo comum ou catodo comum. Neste experimento, ser utilizado um display de catodo comum, como mostrado na Figura 2.2.
DP
DP
Figura 2.2: Display de 7 segmentos. Esquerda: disposio dos segmentos; direita: congurao catodo comum. Para limitar a corrente em cada LED, convm inserir um resistor entre o catodo e a linha de aterramento. Uma possibilidade usar vrios resistores, cada um para um diodo. Outra a de usar um nico resistor para todos os diodos, utilizando o catodo comum. A primeira soluo mais trabalhosa, porm evita uma falha no display todo caso o resistor nico apresente defeito.
2.3. Displays
LT : lamp test input (teste do display): quando ativo, aciona todos os segmentos do display; 49
B I : ripple blanking input (desativa o display): nvel BAIXO fora todos os segmentos para nvel BAIXO; Essas informaes podem ser resumidas na tabela verdade do dispositivo, Figura 2.4, obtida no manual do fabricante. A Figura 2.5 ilustra a forma correta de realizar o acionamento de um display de 7 segmentos. Observe nesta gura que o LED utilizado do tipo anodo comum, visto que os anodos de todos os segmentos esto conectados juntos em VCC
Figura 2.5: Decodicador/driver BCD para 7 segmentos acionando um display de LEDs de 7 segmentos tipo anodo comum.
2.4
Pr-Relatrio
2.4. Pr-Relatrio
exemplo, o Proteus, Circuito Maker, Pspice, etc. No entanto, devem ser apresentados: o nome do software utilizado, os diagramas de simulao desenvolvidos com todas as condies de simulao realizadas. Pede-se que o aluno entregue tambm o arquivo da simulao implementada (pode ser enviado para o e-mail do professor). Nos projetos os alunos devem apresentar todas as etapas do desenvolvimento, incluindo as tabelas verdades, simplicaes lgicas realizadas, os diagramas esquemticos dos circuitos e todas as informaes adicionais que julgar necessrias para perfeita compreenso do projeto realizado. Alm disso, em todos os projetos os alunos devem preparar o documento de metodologia de depurao, apresentando o esquema orientativo para o processo de depurao, adequado ao particular projeto (documento j debatido em aulas anteriores), para o caso de algum problema ocorrer no momento da implementao do circuito na protoboard. 2.4.2.1 Projeto e Simulao 1
Um circuito digital desconhecido possui trs entradas e gera uma nica sada digital F. Para sintetizar este circuito montou-se no laboratrio a congurao mostrada na Figura 2.6.
Figura 2.6: Montagem experimental para determinao do circuito digital. Observe na Figura 2.6 que utilizado um dispositivo chamado de analisador lgico. Um analisador lgico um instrumento eletrnico usado para visualizar no tempo os estados lgicos de vrios pontos de um circuito eletrnico digital. Basicamente vrios canais de monitoramento so conectados a um circuito real e o resultado apresentado em uma tela de vdeo ou gracamente em papel atravs de uma impressora. Dessa forma pode-se analisar o comportamento e a temporizao de portas lgicas, contadores, registradores, processadores e demais componentes digitais de um circuito. Nesta montagem o gerador de palavras digitais gera uma palavra de trs bits (bits A, B e C) a cada 50 ns e o diagrama de temporizao obtido atravs do analisador lgico e apresentado na Figura 2.7. Considerando as informaes expostas: Projete e simule o circuito combinacional simplicado que satisfaz este diagrama. No se esquea de apresentar a 51
Figura 2.7: Formas de ondas observadas na tela do analisador lgico. expresso lgica e o diagrama esquemtico do circuito. Alm disso, justique o aparecimento de um deslocamento t no diagrama temporal da sada F. 2.4.2.2 Projeto e Simulao 2
Projetar e simular um circuito digital para informar os cinco ltimos nmeros do seu registro acadmico (RA ou matrcula). O dgito que dever ser apresentado no display ser selecionado atravs de trs chaves. No projeto, as seguintes consideraes devem ser respeitadas: Desprezar o trao (ou barra) presente no seu RA. Exemplo, 09/0037111 090037111. Desprezar os ltimos quatro dgitos esquerda, de forma a deixar seu RA com apenas 5 dgitos: Exemplo, 090037111 37111. Para as entradas no previstas no projeto deve-se utilizar a condio que proporcione maior economia de portas lgicas, ou seja, o menor circuito possvel. Exemplo de Projeto: Considere um aluno cujo registro acadmico (RA) o nmero 09/0037451. Levando-se em considerao os itens descritos anteriormente, para efeito de projeto tal RA passa a ser considerado como 37451. O objetivo geral do projeto obter um circuito digital que, de acordo com as entradas presentes nas chaves seletoras (isto : 000, 001, 010, 011, 100), exiba no display de 7 segmentos o dgito de posio equivalente ao selecionado nas chaves seletoras. Por exemplo, se as chaves seletoras estiverem na condio 000 deve-se se exibir o dgito mais a direita do seu RA, ou seja, o dgito 1. Se a condio de entrada for 001, deve-se exibir o dgito imediatamente a esquerda, ou seja o 5. Se a condio de entrada for 010, deve-se exibir o dgito 4, se for 011, deve-se exibir o dgito 7 e, por m, se a condio de entrada for 100, deve-se exibir o dgito 3. Observao: Cada aluno deve fazer um circuito para o seu RA especco (portanto, em cada dupla, deve existir dois projetos diferentes), de forma que, no dever existir dois circuitos idnticos sob pena do aluno receber nota zero no prrelatrio e car impedido de realizar o experimento. 52
2.4.2.3
Projeto e Simulao 3
Projete um sistema que multiplique um nmero binrio de 3 bits por 2 ou por 3, dependendo do valor de um sinal M. O resultado obtido deve ser mostrado no display de 7 segmentos. Para os casos que no for possvel exibir o resultado no display, o aluno tem liberdade para decidir o que deve ser exibido. No entanto, deve estar bem claro, antes do projeto, o que ir acontecer nesses casos. Considere: M=0 multiplicao por 2 e M=1 multiplicao por 3.
53
PERIMENTO
EX
3. Os valores do acumulador e do registrador B so apresentados lgica de adio que executa a soma e armazena o resultado no acumulador; 4. O resultado pode ser mantido no acumulador para operaes subsequentes ou ser transferido para a memria.
dados, informao
Entrada
Controle
Sada
sinais de controle dados ou informao
dados, informao
Memria
Figura 3.1: Blocos funcionais de uma ULA. Figura extrada de [TWM07]. A complexidade dos blocos funcionais da ULA mostrados na Figura 3.1 proporcional complexidade do sistema em que ser utilizada; assim, sistemas simples permitem o uso de ULAs simples e sistemas sosticados exigem ULAs sosticadas. Uma vez estabelecido o porte do sistema, existe tambm o compromisso entre velocidade e preo. Por exemplo, as calculadoras eletrnicas exigem ULAs que permitem operaes complexas, porm com velocidade de operao baixa, reduzindo-se o custo; j os computadores de grande porte exigem velocidade de operao elevada, aumentando o custo da ULA. Neste momento do curso, no entanto, no estamos interessados no estudo detalhado de todos os blocos funcionais que formam uma ULA. Nosso foco, ento, ser apenas nos circuitos lgicos que realizam as operaes aritmticas de soma e subtrao.
usa o sistema de complemento de 2 para representar nmeros negativos. O complemento de 2 de um nmero obtido tomando o complemento de 1 do nmero (substituio de todos os 0s por 1s e 1s por 0s) e somando 1 na posio do bit menos signicativo. O sistema de complemento de 2 para representao de nmeros com sinal funciona da seguinte forma: Se o nmero for positivo, a magnitude representada por na sua forma direta, e um bit de sinal 0 colocado em frente ao bit mais signicativo. Se o nmero for negativo, a magnitude representada na sua forma de complemento de 2, e um bit de sinal 1 colocado em frente ao bit mais signicativo. Esse sistema o mais utilizado para representar nmeros com sinal porque permite realizar a operao de subtrao efetuando, na verdade, uma operao de adio. Desta forma, o sistema digital pode usar o mesmo circuito tanto na adio quando na subtrao, desse modo poupando hardware. Para visualizar como esse procedimento funciona, basta lembrar que realizar a subtrao de (5 4) equivalente a realizar a seguinte operao de adio (5 + (4)). Portanto, para realizar a operao de soma ou subtrao que envolva nmeros negativos, basta determinar o complemento de 2 dos nmeros negativos envolvidos e realizar a operao de adio. O procedimento descrito abaixo ajuda na tarefa de realizar operaes no sistema de complemento de 2. 1. Represente os nmeros envolvidos em binrio puro; 2. Verique a quantidade de bits da representao, se necessrio complete a seqencia de bits com zeros esquerda; 3. Identique os nmeros negativos e determine o seu complemento de 2; 4. Realize a soma binria; 5. Verique o bit de sinal do resultado, se for 0, o resultado positivo, se for 1 o resultado negativo; 6. Em caso de resultado negativo, se quiser visualizar o resultado, recomendase representar o nmero na forma de sinal-magnitude, assim determine o complemento de 2 do resultado para determinar a magnitude do nmero negativo obtido (lembrando ao nal deste processo que trata-se de um nmero negativo);
3.2.4
Overow Aritmtico
Ocorre sempre que uma operao aritmtica produz um nmero que necessita ser expresso em mais bits de magnitude do que est disponvel. Por exemplo, considere um sistema digital que trabalha com nmeros de 4 bits de magnitude e um bit de sinal. Considere que seja necessrio realizar a adio de +9 (01001) com +8 (01000). Neste caso, tem-se como resultado o nmero (10001)B , que representaria o decimal 1, enquanto que a resposta deveria ser +17, indicando obviamente um erro no clculo. Isso ocorre porque para representar a magnitude 17 necessrio mais do que os quatro bits disponveis, portanto ocorre o transbordamento do vai-um ou overow. A condio de overow pode ocorrer apenas quando dois nmeros positivos ou dois nmeros negativos so somados, e isso sempre produz um resultado errado. Desta forma, o overow pode ser detectado vericando se o bit de sinal do resultado tem o mesmo valor dos bits de sinal dos nmeros que esto sendo somados.
3.3
Pr-Relatrio
3.3. Pr-Relatrio
3.3.2.1
Projeto e Simulao 1
Projetar e simular um circuito que permita realizar o complemento de 1 de um nmero de 3 bits (incluindo o bit de sinal). Esse circuito deve possuir ainda uma entrada seletora (SEL) que permita especicar quando deve-se realizar essa operao de complemento. Desta forma, quando a operao de complemento no for desejada, o circuito deve fornecer na sada exatamente o nmero de entrada (ver Figura 3.2). Assim, a funo realizada por esse circuito depende do valor da entrada de seleo SEL: se SEL = 0, a funo selecionada a IGUALDADE e Z = A; se SEL = 1, a funo selecionada o COMPLEMENTO DE 1 e Z = complemento de 1 de A. A 3 I GUALDADE / C OMPLEMENTO DE 1 3 Z Figura 3.2: Circuito seletor de Igualdade/Complemento de 1. SEL
3.3.2.2
Projeto e Simulao 2
Projetar e simular um circuito que seja capaz de detectar uma condio de overow (Estouro de Capacidade) para ser usado com um circuito somador de nmeros com sinal, de trs bits, codicados na forma de complemento de 2. 3.3.2.3 Projeto e Simulao 3
Projetar e simular um circuito SOMADOR/SUBTRATOR de trs bits (incluindo o bit de sinal) para nmeros com sinal, codicados na forma de complemento de 2, dado pelo bloco funcional mostrado na Figura 3.3. O circuito deve ter ainda uma sada (E) que indica as situaes em que ocorreu um estouro de capacidade (overow). O resultado da operao deve ser exibido em um display de sete segmentos. Desta forma, a funo realizada por este circuito, que depende do valor da entrada de seleo SEL, pode ser resumida da seguinte forma: se SEL = 0, a funo selecionada a SOMA e S = A + B; 59
se SEL = 1, a funo selecionada a SUBTRAO e S = A + Complemento de 2 de B. A sada E indica a condio de Overow. A sada C4 o carry da operao, que pode ser utilizado para expandir a capacidade da operao atravs da associao com outros blocos somadores. A 3 B 3 SEL
S OMADOR / S UBTRATOR 3 C4 E S
Figura 3.3: Circuito Somador/Subtrator de trs bits. DICAS: O bloco lgico funcional desse circuito deve ser, primeiramente, detalhado na forma de um circuito lgico utilizando grandes blocos funcionais. Em seguida, esse circuito lgico deve ser detalhado usando os blocos funcionais disponveis individualmente na forma de CIs (inversores, portas, etc). Utilize os circuitos projetados nas Sees 3.3.2.1 e 3.3.2.2 como parte do seu projeto. Cuidado na etapa de vericao do circuito. Prepare tabelas contendo os valores de entrada e sada e siga-as, vericando se o circuito fornece a sada correta em todos os casos. OPCIONAL: O circuito projetado ir fornecer na sada os valores negativos em sua forma de complemento de 2. Altere o seu projeto de forma que na sada os nmeros negativos no estejam nesta forma. Para indicar o sinal negativo utilize o segmento de ponto do display de 7 segmentos.
3.4
Roteiro Experimental
Implemente em protoboard os circuitos projetados nas Sees 3.3.2.1, 3.3.2.2 e 3.3.2.3. Em todas as montagens deve-se realizar a seguinte sequncia: 1. Monte o circuito projetado na protoboard; 60
2. Levante a tabela verdade para o circuito projetado, introduzindo todas as combinaes possveis de entradas para o circuito e anotando as sadas do display ou LEDs; 3. Se algum erro ocorreu e a tabela verdade esperada no foi obtida, execute a metodologia de depurao elaborada para encontrar o problema. No se esquea de apresentar no relatrio o documento da metodologia de depurao; 4. Observe, tambm, a ocorrncia de resultados invlidos. Caso existam, em que condies eles ocorrem? 5. Responda as seguintes perguntas: Quais as diferena entre o circuito projetado na Seo 3.3.2.3 e uma ULA (Unidade Lgica Arimtica) presente nos principais processadores? Como o circuito projetado na Seo 3.3.2.3 poderia ser modicado para poder apresentar resultados com 3 bits de magnitude?
61
EXPERIMENTO
muito grande. No entanto, um sistema pode no entender a informao ou o cdigo utilizado pelo outro sistema. Desta forma, fundamental a existncia de circuitos que convertam a informao de um cdigo para outro. Os circuitos que realizam essa funo so conhecidos como circuitos codicadores e decodicadores. Estes so circuitos combinacionais dedicados: circuitos comuns em projetos de sistemas digitais devido s funes lgicas que executam, podendo ser encontrados prontos em circuitos integrados comerciais. De forma geral, pode-se denir o codicador como um circuito lgico que, como o prprio nome o diz, codica uma informao que se encontra em um formato trivial, para um outro formato, nem tanto trivial, mas especializado, usando um padro de converso de tipo de cdigo. O decodicador, por sua vez, traz a informao de um formato de cdigo especializado para um formato de cdigo mais trivial. Para a parte terica e assuntos referente ao projeto dos circuitos codicadores decodicadores o aluno dever se referir s notas de aula da parte terica e/ou s referncias bibliogrcas apresentadas no nal deste roteiro.
4.2.2 Cdigos
So vrios os cdigos dentro do campo Eletrnica Digital, existindo situaes em que a utilizao de um vantajosa em relao a outro. A Tabela 4.1 apresenta alguns exemplos de representao de nmeros decimais em cdigos binrios bastante usados na prtica. Os cdigos das duas primeiras colunas da tabela so chamados cdigos ponderados, uma vez que a cada bit atribudo um peso. O cdigo da primeira coluna o mais comum e chamado cdigo 8421 ou BCD (Binary-Coded-Decimal). Tabela 4.1: Exemplos de cdigos mais frequentes. D ECIMAL 0 1 2 3 4 5 6 7 8 9 64 8421 (BCD) 0000 0001 0010 0011 0100 0111 0110 0101 1010 1011 2421 0000 0001 0010 0011 0100 1011 1100 1101 1110 1111 E XCESSO DE 3 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 2 EM 5 00011 00101 00110 01001 01010 01100 10001 10010 10100 11000 B IQUINRIO 0100001 0100010 0100100 0101000 0110000 1000001 1000010 1000100 1001000 1010000
4.3. Pr-Relatrio
Alm dos cdigos apresentados existem, por exemplo, o cdigo Gray, o cdigo Johnson, o cdigo ASCII, entre outros.
4.3
Pr-Relatrio
Projete e simule um sistema de converso de cdigos, onde os cdigos de entrada e sada so indicados na Tabela 4.2. As sadas do circuito devem ser visualizadas em LEDs. O aluno deve obter as expresses lgicas de todas as variveis de sada, alm de minimizar as funes obtidas utilizando o Mapa de Karnaugh. Para esta etapa de minimizao, considere que as combinaes de entrada no utilizadas so condies de irrelevncia (dont care). 4.3.2.2 Projeto e Simulao 2
Um codicador de prioridades um circuito combinacional onde, se um ou mais bits de entrada forem iguais a 1, a sada indicar o bit de maior prioridade. Considerando que a ordem de prioridade denida do MSB para o LSB, a Figura 4.3 mostra a tabela verdade para um codicador de prioridade de 4 entradas. O X 65
C DIGO DE E NTRADA A 0 0 0 0 0 0 0 0 1 1 B 0 0 0 0 1 1 1 1 0 0 C 0 0 1 1 0 0 1 1 0 0 D 0 1 0 1 0 1 0 1 0 1 x 0 0 0 0 0 1 1 1 1 1
C DIGO DE S ADA y 0 0 0 0 1 1 1 1 1 0 z 0 0 0 1 1 1 1 1 0 0 w 0 0 1 1 1 1 1 0 0 0 v 0 1 1 1 1 1 0 0 0 0
indica um valor de irrelevncia (dont care), e a sada V indica quando h entradas diferentes de zero. Projete e simule o circuito que implemente esse codicador. E NTRADAS D3 0 0 0 0 1 D2 0 0 0 1 x D1 0 0 1 x x D0 0 1 x x x A1 x 0 0 1 1 S ADAS A0 x 0 1 0 1 V 0 1 1 1 1
2. Levante a tabela verdade para o circuito projetado, introduzindo todas as combinaes possveis de entradas para o circuito e anotando as sadas mostradas nos LEDs; 3. Se algum erro ocorreu e a tabela verdade esperada no foi obtida, execute a metodologia de depurao elaborada para encontrar o problema. No se esquea de apresentar no relatrio o documento da metodologia de depurao; 4. Responda a seguinte questo: quais as diferenas entre um circuito codicador e um circuito decodicador?
67
XPERIMENTO
MUX
Sada
DEMUX
E3 E4 E5 E6 E7
N Sadas de D ADOS
S0 S1 S 2
signicativa reduo do nmero de componentes necessrios implementao de muitas funes. No entanto, o custo de tais componentes, muitas vezes, superior ao das portas lgicas. Assim, para efeito de escolha, o custo global do projeto tambm deve ser considerado [SM06a]. O uso de multiplexadores e decodicadores uma opo vantajosa em relao s portas lgicas [SM06a]. Eles podem ser utilizados para se implementar uma funo booleana genrica e so particularmente convenientes para tal m quando a funo a ser implementada de natureza irregular, e no permite muita simplicao. Em muitos casos, o uso de multiplexadores resulta em um projeto mais fcil, mais compacto e mais exvel. Para entender como funciona o processo de utilizao dos multiplexadores para implementar uma funo lgica vamos analisar o seguinte exemplo: Exemplo 1: Considere que estamos interessados em projetar o circuito representado pela tabela verdade mostrada na Figura 5.3. Neste caso, o multiplexador pode ser usado para gerar a funo lgica diretamente da tabela verdade sem simplicao. Para isso, as entradas de seleo so usadas para as variveis lgicas e cada entrada de dados conectada permanentemente aos nveis ALTO ou BAIXO de acordo com a tabela verdade.
Figura 5.3: Tabela verdade do exemplo1. Exemplo 2: No exemplo 1, o problema analisado consistia de 3 variveis de entrada e foi utilizado um Mux 8x1. No entanto, o processo pode car um pouco mais complexo quando o problema possui um nmero de variveis de entrada maior do que a capacidade do multiplexador disponvel. Por exemplo, considere a tabela verdade mostrada na Figura 5.4. Para implementar a funo lgica desta tabela verdade precisaramos de um multiplexador de 16 canais, visto que, temos 4 variveis de entrada. No entanto, considere que est disponvel apenas MUX 8 canais. Neste caso, trs das quatro variveis independentes so escolhidas para acionar os terminais de seleo (no presente caso escolheu-se as variveis A, B e C). Observe na Figura 5.4 que, esta escolha permite reduzir a tabela verdade que tinha 16 canais para 8 canais, visto que, uma determinada combinao nas entradas A, B 71
e C estar endereando duas linhas da tabela verdade. Assim, estamos agrupando a tabela a cada duas linhas, formando uma tabela nal com 8 canais. Cada terminal de dados do multiplexador dever ser acionado pela varivel independente que restou (no presente caso a varivel D). O terminal de sada pode, ento, assumir 4 possibilidades: f = D , f = D , f = 1 ou f = 0. A Figura 5.5 ilustra o esquema de ligao das entradas no multiplexador para implementar essa funo.
5.2.2.1
Tcnica geral
A tcnica de implementao introduzida acima pode ser generalizada para uma funo de n variveis. Considere por exemplo um multiplexador de 8 terminais de dados. A expresso booleana da sada S :
S = E 1 E 2 E 3 D 0 + E 1 E 2 E 3 D 1 + . . . + E 1 E 2 E 3D 7
(5.1)
(5.2)
em que A, B e C so variveis selecionadas arbitrariamente dentre as n e F 0 , F 1 , . . ., F 7 so funes das (n 3) variveis restantes, portanto mais simples que a funo original f. No caso particular em que n = 4, as funes F 0 , F 1 , . . ., F 7 so funes da nica varivel restante e existem apenas 4 possibilidades (1, 0, D, D ) como 72
5.3. Pr-Relatrio
j foi visto. Tambm se n = 3, f estar na prpria forma cannica de mintermos e, portanto, os fatores F 0 , F 1 , . . ., F 7 s podem ser ou identicamente iguais a 0 ou identicamente iguais a 1. A mesma tcnica pode ser naturalmente estendida a outros multiplexadores. Um multiplexador de 16 entradas de dados, por exemplo, pode implementar qualquer uma das 232 funes diferentes de 5 variveis, com apenas uma nica porta inversora adicional.
5.3 Pr-Relatrio
5.3.1 Projetos e Simulaes
Nesta seo so descritos os circuitos que devem ser projetados e/ou simulados. Na etapa de simulao o aluno pode utilizar o software de sua preferncia, como por exemplo, o Proteus, Circuito Maker, Pspice, etc. No entanto, devem ser apresentados: o nome do software utilizado, os diagramas de simulao desenvolvidos com todas as condies de simulao realizadas. Pede-se que o aluno entregue tambm o arquivo da simulao implementada (pode ser enviado para o e-mail do professor). Nos projetos os alunos devem apresentar todas as etapas do desenvolvimento, incluindo as tabelas verdades, simplicaes lgicas realizadas, os diagramas esquemticos dos circuitos e todas as informaes adicionais que julgar necessrias para perfeita compreenso do projeto realizado. Alm disso, em todos os projetos os alunos devem preparar o documento de metodologia de depurao, apresentando o esquema orientativo para o processo de depurao, adequado ao particular projeto (documento j debatido em aulas anteriores), para o caso de algum problema ocorrer no momento da implementao do circuito na protoboard. 73
5.3.1.1
Projeto e Simulao 1
Projete e simule um circuito que implemente a funo dada abaixo usando um multiplexador de 4 entradas de dados e um decodicador de 4 entradas.
f ( A , B , C , D ) = ABC D + ABC D + ABC D + ABC D
(5.3)
Orientao: O decodicador tambm um circuito til na implementao de funes complicadas, pois cada uma de suas sadas constitui um dos mintermos das variveis de entrada. Observe, por exemplo, que qualquer funo de 4 variveis pode ser implementada com um DECOD-4 e mais algumas portas OU. Portanto, use o decodicador como um gerador de mintermos para o multiplexador. 5.3.1.2 Projeto e Simulao 2
A economia de consumo de energia e de componentes so sempre fatores importantes a serem considerados em projetos de sistemas digitais, devido, principalmente, a fatores como ecincia e custo. Neste sentido, em projetos que necessitam de acionamento de vrios displays, comum a utilizao de uma tcnica conhecida como multiplexao de displays [SM06a]. Esta tcnica permite que apenas um decodicador de displays possa controlar uma srie de displays. Para isso, explorado o fato que os displays LED so capazes de operar em tempos da ordem de nanosegundos. Isto signica que eles podem operar num baixo duty cycle (ou fator de forma) com uma alta taxa de amostragem, isto , o sistema pode ativar os displays ciclicamente (acendendo e apagando), aproveitando a caracterstica do olho humano de detectar apenas os picos de brilho [Hig]. Desta forma, no projeto do circuito, os displays so ciclicamente acesos e apagados numa frequncia conveniente de tal forma que, para o olho humano, todos os displays permanecem durante todo o tempo acesos. Existem diversas estratgias para realizar esta tarefa, a escolha da melhor depende de cada problema especco. Um exemplo de estratgia est apresentada na Figura 5.6. Neste projeto, deseja-se mostrar em dois displays de sete segmentos os dgitos de unidade e de dezena de uma grandeza qualquer, por exemplo a temperatura numa sala. Deve-se utilizar no projeto um multiplexador para acionar dois displays de sete segmentos alternadamente, utilizando apenas um conversor BCD-7 segmentos. Tenha em mente, conforme exposto acima, que os displays no necessariamente precisam estar ativos todo o tempo, podendo ser ligados e desligados com uma certa frequncia (acima de 100 Hz), de modo que o olho humano no consiga notar esse chaveamento [Hig]. O funcionamento do circuito deve ser o seguinte: tm-se como entradas dois dgitos BCD (A e B), que devem ser mostrados em dois displays de 7 segmentos. Considere o dgito A como sendo o mais signicativo. Um sinal de onda quadrada seleciona quando cada dgito mostrado em seu respectivo display: quando a onda quadrada est em nvel lgico 1, mostrado o dgito A (e o display B desligado); quando a onda quadrada est em nvel lgico 0, mostrado o dgito B (e o display 74
Figura 5.6: Diagrama de blocos do projeto. Figura extrada de [Hig]. A desligado). Note que a onda quadrada deve agir sobre o multiplexador e sobre os displays de maneira simultnea e sincronizada [Hig]. Projete e simule o circuito que implemente essa funo a partir do diagrama de blocos da Figura 5.6. Considere que a onda quadrada ser proveniente do gerador de funes. Descreva resumidamente o funcionamento do seu circuito.
75
F LIP -F LOPS
6.1 Objetivos
Estudo de elementos com memria baseados em ip-ops e outros dispositivos correlatos.
XPERIMENTO
6. F LIP -F LOPS
6.2.2 O Latch
O circuito mais simples de um FF pode ser construdo a partir de duas portas NAND ou duas portas NOR, conforme mostrado na Figura 6.2. O latch, assim como o FF, um dispositivo de armazenamento temporrio que tem dois estados estveis (biestvel). A principal diferena entre o latch e o FF o mtodo utilizado para a mudana de estado. O funcionamento bsico de um latch NAND pode ser descrito como segue: SET = RESET = 1. Condio de repouso e no tem efeito sobre o estado da sada, ou seja, a sada mantida no estado anterior. SET = 0 e RESET = 1. Essa condio faz a sada ir para o estado em que Q = 1, em que permanecer mesmo que a entrada SET retorne para o nvel ALTO. Essa a operao de setar o latch. SET = 1 e RESET = 0. Essa condio sempre gera um estado de sada em que Q = 0, no qual permanece mesmo aps a entrada RESET retornar para nvel ALTO. Essa operao de limpar ou resetar o latch. A anlise do funcionamento do latch NOR pode ser feita de forma anloga ao latch NAND. A principal diferena entre essas duas conguraes que no latch NOR as entradas de SET e RESET so ativas em nvel lgico ALTO, em vez de ativas em nvel BAIXO. Desta forma, o estado de repouso SET = RESET = 0.
Figura 6.2: Latch com portas NAND e com portas NOR. qualquer momento em uma ou mais entradas mudarem de estado. Tanto o projeto quanto a anlise de defeitos nesses sistemas so mais difceis. Em sistemas sncronos, os momentos exatos em que uma sada qualquer pode mudar de estado, so determinados por um sinal normalmente denominado clock ou relgio. Este sinal de clock geralmente um trem de pulsos retangulares ou uma onda quadrada. Vrios tipos de FFs com clock so usados em um grande nmero de aplicaes. As principais caractersticas comuns a esses FFs so: 1. FFs com clock tm uma entrada de clock denominada CLK, CK ou CP, conforme mostrado na Figura 6.3 . Na maioria dos FFs com clock a entrada CLK disparada por borda, o que signica que essa entrada ativada pela transio do sinal de clock. 2. FFs com clock tambm tem uma ou mais entradas de controle que podem ter vrios nomes, dependendo do seu funcionamento. As entradas de controle no tero efeitos sobre a sada at que uma transio ativa do clock ocorra. 3. Resumindo, pode-se dizer que as entradas de controle deixam as sadas do FF prontas para mudar de estado, enquanto a transio ativa do clock que de fato dispara essa mudana. So vrios os tipos de FFs existentes. Na prxima seo (seo 6.3.1) deste relatrio ser solicitado ao aluno para fazer um breve pesquisa bibliogrca para descrever cada uma dessas conguraes. 79
6. F LIP -F LOPS
6.3
Pr-Relatrio
Projete e simule um ip-op JK disparado por borda de subida. Utilize apenas portas lgicas em seu projeto. Em seguida, altere seu projeto para que seu FF seja disparado por borda de descida. E se fosse desejado que o FF fosse disparado por borda de subida e descida de acordo com uma entrada de controle SEL? Como 80
caria o projeto?. Em todos os caso, utilize LEDs nas sadas para indicar o nvel lgico. 6.3.2.2 Projeto e Simulao 2
Um registrador de deslocamento um grupo de FFs organizados de modo que os nmeros binrios armazenados nos FFs sejam deslocados de um FF para o seguinte a cada pulso de clock. Esses registradores so muito comuns em calculadoras eletrnica, voc j deve ter reparado que nesses dispositivos os dgitos mostrados nos displays so deslocados cada vez que voc tecla um novo dgito. Assim, projete e simule um registrador de deslocamento de 4 bits. Utilize uma chave para gerar os pulsos de clock. Voc tem liberdade para escolher o tipo de FF a ser utilizado. As sadas do registrador devem ser ligadas a um display de sete segmentos de forma a visualizar os dados. armazenados. 6.3.2.3 Projeto e Simulao 3
Projete um divisor de frequncia que divida o sinal de entrada por 8. Considere que o sinal de clock seja proveniente de um gerador de funes. Voc tem liberdade para escolher o tipo de FF a ser utilizado.
6. F LIP -F LOPS
timeDiv : 5ms/div
Channel A : 1 V/div
Channel B : 1 V/div
XY
OFF
timeDiv : 5ms/div
Channel A : 1 V/div
Channel B : 1 V/div
XY
OFF
OsetC 0 XY
OFF
OFF
OsetC 0 XY
OFF
OFF
OsetA 0
OsetB 0
OsetC 0
OsetA 0
OsetB 0
OsetC 0
82
EXPERIMENTO
de um estado para outro, conforme os pulsos de clock so aplicados. Observando um estado de um crculo em particular, vemos qual o estado anterior e o posterior.
Figura 7.3: Contador sncrono de mdulo 16. Uma anlise detalhada do circuito da Figura 7.3 nos permite concluir que o princpio bsico para a construo de um contador sncrono pode ser enunciado da seguinte forma: Cada FF deve ter suas entradas J e K conectadas de modo 86
7.3. Pr-Relatrio
que elas estejam no nvel lgico ALTO apenas quando as sadas de todos os FFs de mais baixa ordem estiveram no estado ALTO. Em quase todas as aplicaes de contadores, as variveis de estado, ou simplesmente estados, so consideradas como sadas. As sadas do contador podem ser codicadas de vrias formas: binria, BCD, Gray, etc. Esse cdigo e o modulo do contador determinam como sero os blocos combinatrios do prximo estado e da sada, bem como o numero de ip-ops a ser utilizado.
7.3
Pr-Relatrio
Alm disso, em todos os projetos os alunos devem preparar o documento de metodologia de depurao, apresentando o esquema orientativo para o processo de depurao, adequado ao particular projeto (documento j debatido em aulas anteriores), para o caso de algum problema ocorrer no momento da implementao do circuito na protoboard. 7.3.2.1 Projeto e Simulao 1
Projete e simule um contador sncrono crescente/decrescente de mdulo 10. Uma varivel de entrada adicional UP/Down deve ser adicionada ao circuito para permitir selecionar o modo de contagem. Considere que se UP/Down = 1 o contador realiza a contagem crescente, e se UP/Down = 0 o contador realiza a contagem decrescente. As sadas do contador devem ser visualizadas em um display de 7 segmentos. Considere que o sinal de clock ser obtido atravs do gerador de funes. Em seguida, altere seu projeto substituindo o contador sncrono por um contador assncrono. Faa uma anlise comparativa entre os dois projetos, destacando as vantagens e desvantagens de cada um. Com base no manual do fabricante dos CIs, qual a frequncia mxima de operao dos contadores? (OBS - lembre que nos contadores assncronos, a mxima frequncia de operao depende no s dos parmetros dos ipops, mas tambm do nmero de bits). Qual deve ser o efeito esperado de se trabalhar em uma frequncia acima da especicada? 7.3.2.2 Projeto e Simulao 2
Projete e simule um contador sncrono usando FFs J-K que tenha a seguinte sequncia: 000, 010, 101, 110 e repete. Os estados indesejveis (no usados) devem levar o contador sempre para o estado 000 no prximo pulso de clock. Alm disso, seu circuito deve conter uma lgica que permite denir o estado inicial da contagem, ou seja, deve permitir selecionar um dos estados 000, 010, 101 ou 110 como estado inicial ao energizar o circuito. As sadas do contador devem ser visualizadas em um display de 7 segmentos e considere que o sinal de clock ser obtido atravs do gerador de funes. 7.3.2.3 Projeto e Simulao 3
Altere o seu projeto anterior considerando que agora os estados indesejados devem levar o contador a executar sempre a seguinte sequncia 001, 011, 100, 111, 000 antes de retornar para a contagem normal. Simule o seu projeto alterado.
2. Utilize o gerador de funes para gerar o sinal de clock. Selecione um valor de frequncia adequado que seja possvel visualizar a sequncia de contagem no display de 7 segmentos. 3. Levante a tabela verdade para o circuito projetado, introduzindo todas as combinaes possveis de entradas para o circuito e anotando as sadas mostradas no display de 7 segmentos; 4. Para a montagem dos circuitos das sees 7.3.2.2 e 7.3.2.3 altere o estado inicial da contagem e verique se o circuito responde adequadamente. Em seguida, inicie a sequncia com um estado indesejado e verique o funcionamento. 5. Se algum erro ocorreu e a tabela verdade esperada no foi obtida, execute a metodologia de depurao elaborada para encontrar o problema. No se esquea de apresentar no relatrio o documento da metodologia de depurao; 6. Aumente a frequncia do sinal de clock e descreva os efeitos observados. O que acontece se voc aumentar a frequncia do sinal de clock acima do valor mximo terico calculado anteriormente?
89
91
I
R EGRAS G ERAIS
I.1 Introduo
Esse documento descreve os projetos nais que devem ser realizados pelos alunos de laboratrio da disciplina de Sistemas Digitais I. O objetivo do trabalho nal o de fomentar a integrao dos conhecimentos adquiridos ao longo do curso e propiciar maior experincia na elaborao de projetos na rea de eletrnica digital. Os projetos devem ser realizados em duplas e entregues na data especicada pelo professor. Nas prximas Sees deste documento sero descritas as especicaes dos temas propostos. Cada dupla dever escolher e realizar apenas um dos projetos. O trabalho somente pode ser realizado pela dupla de alunos formada no incio do semestre, ou por um nico integrante: vedada a participao de trios. Caso um integrante da dupla desista do curso ao longo do semestre, o aluno remanescente deve procurar um outro colega que esteja na mesma situao ou realizar o trabalho sozinho. Se este for o seu caso, avise o professor de sua turma de laboratrio. Os projetos devero ser implementados em protoboard e todas as especicaes descritas devem ser cumpridas. A falta de qualquer especicao implicar na perda de pontos na nota nal do trabalho. Antes da implementao do circuito em protoboard os alunos devero realizar a simulao do circuito projetado para vericar se o projeto est adequado. Adicionalmente, os alunos devem preparar um relatrio descrevendo, em detalhes, o processo de desenvolvimento do projeto. Neste documento devem estar descritos todos os passos relevantes para implementao do projeto. As etapas mnimas do desenvolvimento do projeto envolvem: Descrio do funcionamento do circuito em diagrama de blocos, destacando as variveis de entrada e sada; Elaborao da(s) tabela(s) verdade do circuito; 93
I. R EGRAS G ERAIS
Processo de simplicao do circuito; Expresso lgica nal e diagrama esquemtico do circuito; Simulao do circuito em software adequado; Lista de materiais necessrios para a montagem; Processo de montagem; Metodologia de testes, operao e depurao de erros; Discusses; Concluses. Por m, os alunos devem preparar uma apresentao de no mximo 5 minutos, apresentando os pontos principais do projeto e as maiores diculdades encontradas. Aps o tempo de apresentao o professor (ou uma banca de professores) ter 5 minutos para realizar perguntas a respeito dos projetos. Os alunos devero vericar antecipadamente com os tcnicos de apoio do laboratrio a disponibilidade dos materiais necessrios para a montagem. Caso no tenha disponvel algum material de responsabilidade do aluno obt-lo ou refazer o projeto buscando alternativas para contornar o problema. Lembre-se, na sua vida prossional, nem sempre voc ter todos os componentes necessrios para executar um determinado projeto. Qualquer dvida sobre os temas propostos e/ou sobre a realizao dos projetos devem ser sanadas, antecipadamente, com o seu professor de laboratrio.
I.2
Neste semestre, a dupla poder: 1. Optar por um dos quatro temas expostos na Parte II deste documento; 2. Propor uma idia de projeto para o professor de laboratrio. A proposta deve ser encaminhada para avaliao do professor com antecedncia de pelo menos um ms antes do nal das aulas. A resposta da avaliao pode ser de trs tipos: Idia aprovada sem modicaes; Idia aprovada com modicaes indicadas pelo professor. Neste caso, o projeto original deve ser alterado para atendar s especicaes impostas pelo professor. Idia reprovada. 94
95
1.1 Introduo
Nesta opo, o projeto de uma Unidade Lgico-Aritmtica (ULA) simples. Uma ULA um circuito responsvel por realizar operaes aritmticas e lgicas em um sistema digital, onde a operao que deve ser executada determinada por sinais de controle externos. Uma representao simplicada de uma ULA est apresentada na Figura 1.1, onde A e B so os dados (ou operandos) sobre os quais ser realizada uma operao. Como h vrias opes para as operaes, h uma seleo de qual deve ser a operao, indicada pela entrada S. O resultado da operao apresentado na sada da ULA.
ULA
Sada
PROJET
ULA
1. ULA
Comprimento dos operandos: trs bits (A0 A1 A2 e B0 B1 B2 ). Tipos de operao: h dois tipos de operao - com um e com dois operandos, totalizando oito operaes possveis para a ULA projetada. As operaes com dois operandos so: soma, subtrao, multiplicao, diviso, AND, OR, e XOR. A operao com um nico operando NOT. Em todos os casos, os operandos so nmeros positivos entre 0 e 7. Para as operaes lgicas, o resultado da operao lgica feita bit a bit. No caso especco da diviso, o segundo display deve informar o resto da diviso. Exemplos de resultados para as operaes esto na Tabela 1.1. Entrada de Dados: h duas entradas: uma para os operandos e outra para selecionar a operao. No caso de operaes dois operandos, eles devem ser inseridos de maneira sequencial, como em uma calculadora simples. Sada de Dados: os operandos, assim como o resultado das operaes, devem ser apresentados em displays de sete segmentos. No seu projeto, deixe claro quais os resultados para vrias possibilidades de entrada e sada (isto , elabore um manual de instrues de uso do seu circuito).
B A OP B Display 001 100 04 101 100101 35 010 010 2 011 001 12 010 011 30 101 001 01 101 111 07 101 110 06 NA 111 07
Aprimore a Sada de Dados para visualizar simultaneamente os operandos, a operao e o resultado da operao (+2 pontos); Aprimore a Entrada de Dados para contemplar um teclado com 16 teclas (8 nmeros, 8 operaes). Para nmeros negativos, insira uma tecla a mais para o sinal (+2 pontos).
99
PROJETO
G ERADOR
DE
Aprimore a Sada de Dados para visualizar a opo de frequncia e tambm a frequncia (em Hz) do sinal de sada (+3 pontos);
ON/OFF
Sel. Freq.
102
PROJETO
T ESTADOR
3.1 Projeto Bsico
DE
CI S
Neste projeto, ser realizado um testador de CIs, com as seguintes caractersticas: CIs testveis: aceita quatro membros de CIs: 00 (NAND), 08 (AND), 32 (OR) e 86 (XOR); Entrada de Dados: uma tecla TESTA, para iniciar o teste; seleo para indicar qual tipo de CI est sob teste, conforme a Figura 3.1 Sada de Dados: dois displays, indicando qual CI est sendo testado; dois LEDs: vermelho (rejeitado) e verde (aprovado). O LED verde s acende se as todas as quatro portas do CI sob teste funcionarem adequadamente. A funcionalidade do circuito ser confrontada com o resultado proveniente do testador de CIs microprocessado disponvel no laboratrio.
Testa
Seleo
103
3. T ESTADOR DE CI S
3.2
Desaos Adicionais
Aprimore o projeto para detectar qual CI est sendo testado; o resultado deve ser visualizado no display. Especique claramente qual o resultado a ser mostrado no display se a deteco no for conclusiva. Note que no h mais chaves na entrada para indicar qual o CI sob teste (+2 pontos); Aprimore o projeto para indicar quantas e quais das quatro portas esto com defeito (+3 pontos);
104
C ONTROLE
4.1 Introduo
DE
M OTOR
DE
PASSO
Os motores eltricos so dispositivos eletromecnicos que transformam energia eltrica em movimento rotativo por meio de ms e indutores em seu interior. Atualmente existem vrios modelos diferentes de motores eltricos, os mais difundidos so os motores de corrente contnua (CC ou DC), os de corrente alternada (CA ou AC), os servomotores e os motores de passo. A escolha de cada um deles depende da aplicao e do custo envolvido. Nas aplicaes onde necessrio um deslocamento angular ou linear para posicionar com preciso determinados componentes o motor de passo o mais recomendado. No entanto, possvel utilizar qualquer outro tipo de motor para executar este tipo de tarefa, porm difcil determinar a posio exata do componente ou pea do mecanismo, a menos que se utilizem sensores de posio, codicadores, servos e sistemas de comando, o que torna o projeto mais complexo e, muitas vezes, mais caro. O motor de passo converte pulsos em deslocamentos angulares precisos. A cada pulso, o eixo do motor se desloca por um ngulo preciso (passo) e permanece estvel nessa posio se mais nenhum pulso for enviado. Aplicando uma srie de pulsos, pode-se obter-se o deslocamento angular desejado. Se a srie de pulsos no terminar, o eixo vai continuar girando constantemente com uma velocidade proporcional frequncia dos pulsos. Os motores de passo so muito utilizados nos perifricos para os computadores (scanners, discos rgidos, impressoras, etc), bem como nas cameras de vdeo, robtica, etc. No seu interior h estatores formados por bobinas que geram, quando percorridos por uma corrente eltrica, o campo magntico necessrio para o movimento do rotor, que construdo com ms permanentes confeccionados de acordo com o nmero de passos. Essa rotao controlada por meio de um circuito externo que pro105
PROJET
move a oscilao do sinal que percorrer os pares de estatores e, por isso, no pode ser conectado diretamente alimentao, pois desse modo no haveria a pulsao necessria para que o motor possa girar. Em outras palavras, os enrolamentos dentro do motor devem ser energizados e desenergizados em uma sequncia especca para produzir movimento em passos discretos. Os sinais digitais so normalmente usados para controlar a corrente em cada enrolamento do motor.
Figura 4.1: Ilustrao do acionamento das bobinas de um motor de passo. Como a maioria dos CIs digitais CMOS e TTL, e at mesmo os microcontroladores atuais, no possuem capacidade de fornecer correntes elevadas necessrio um driver de potncia para fazer o interfaceamento entre as sadas digitais e os circuitos indutivos do motor. Sem esse driver de potncia, mesmo que os pulsos digitais sejam aplicados corretamente ao motor ele no ir funcionar, por no ter energia suciente para girar o seu eixo.
1. Utilize apenas CIs TTL ou CMOS em seu projeto; 2. O motor de passo a ser utilizado na parte experimental estar disponvel no laboratrio com os tcnicos. Para utiliz-lo o aluno dever agendar previamente um horrio e no poder lev-lo para casa em hiptese nenhuma. 3. O motor de passo disponvel no laboratrio j possui um driver de potncia para seu acionamento. Portanto, o aluno no precisar projetar o driver de acionamento. 4. de responsabilidade do aluno levantar experimentalmente a seqencia correta de pulsos para acionamento do motor de passo. Para isso, dever ser elaborado um procedimento experimental detalhado antes de ir ao laboratrio. Um monitor dever estar presente acompanhando todos os passos. A tenso mxima de alimentao do driver/motor de 5V e os alunos devero tomar muito cuidado nas montagens para no exceder esse valor. Qualquer dvida na montagem/utilizao dever ser consultado o professor/monitor/tcnico. 5. O relatrio nal dever conter o procedimento experimental elaborado para determinao da seqencia de pulsos correta para o acionamento do motor de passo e tambm os resultados obtidos.
4.3
Desao Adicional
Adicione ao seu projeto um circuito que permita que o eixo do motor pare precisamente em uma determinada posio angular especicada pelo usurio de acordo com duas chaves seletoras adicionais A e B, conforme mostrado na tabela abaixo (+2 pontos): Tabela 4.1: Condio do eixo do motor de passo de acordo com as chaves A e B. A 0 0 1 1 B 0 1 0 1 Condio do Eixo do motor Gira livremente (velocidade de rotao denida pelo usurio) 90 180 270
107
F REQENCMETRO
5.1 Introduo
Um freqencmetro um circuito que pode medir e mostrar a freqncia de um sinal [TWM07]. A medida da freqncia de um sinal digital peridico pode ser feita de duas formas diferentes [SM11b]. O primeiro mtodo conhecido como mtodo da contagem do relgio e consiste na contagem do nmero de ciclos de relgio do sistema existente em um perodo do sinal de entrada. O conceito deste mtodo pode ser visualizado na Figura 5.1.
Figura 5.1: Mtodo da contagem do relgio. Figura extrada de [SM11b]. Neste mtodo, a medida da freqncia do sinal obtida indiretamente. Assim, preciso utilizar a seguinte relao:
f ent =
P
109
ROJETO
(5.1)
O segundo mtodo conhecido como mtodo da contagem do sinal de entrada e envolve a contagem do nmero de ciclos do sinal de entrada ou do nmero de bordas de subida que ocorrem durante uma janela de durao pr-estabelecida,
5. F REQENCMETRO
e apresenta diretamente a freqncia do sinal. A Figura 5.2 ilustra os conceitos envolvidos. Se for utilizada uma janela de tempo com durao exata de 1 segundo, a contagem de ciclos numericamente igual freqncia do sinal de entrada em Hertz.
f ent =
(5.2)
Figura 5.2: Mtodo da contagem do sinal de entrada. Figura extrada de [SM11b]. Contudo esta estratgia de obteno da freqncia apresenta alguns erros inerentes ao mtodo de contagem. Erro de preciso do sinal de relgio do sistema: Se a freqncia do relgio do sistema no for estvel, isto far com que a janela de tempo em que o sinal de entrada analisado seja afetada. Isto pode levar a uma contagem nal diferente do valor correto [SM11b]. Erro de sincronizao: Ocorre do fato do incio da janela no coincidir com uma borda de subida do sinal de entrada. Assim, se a contagem levar em conta a ocorrncia de bordas do sinal de entrada, o valor nal pode no ser igual ao nmero de perodos contidos na janela de tempo [SM11b]. Erro de quantizao: Ocorre devido ao fato da janela de tempo ser nita [SM11b].
5.2
Projeto Bsico
Levando em considerao as informaes expostas acima, projete um circuito medidor de freqncias de um sinal digital peridico de 1 a 99 Hz com preciso de duas casas decimais. O valor da freqncia medida deve ser mostrado em displays de sete segmentos. O sinal de entrada deve ser originado a partir de um gerador de pulsos e monitorado atravs do osciloscpio. Um sinal de relgio externo de 8 Hz deve ser usado para gerar os sinais internos de controle do circuito. A preciso dos resultados obtidos deve ser independente do operador do circuito. 110
111
V ERIFICADOR
6.1 Introduo
DE
S ENHAS
O circuito do vericador de senhas 1 a ser projetado um circuito simplicado de um sistema completo para uso em segurana de bens ou valores. Pode ser usado para controlar o acesso a depsitos de valores ou documentos sigilosos. O mecanismo de acesso baseado na vericao de uma combinao de dgitos de segurana.
113
ROJETO
6. V ERIFICADOR DE S ENHAS
A entrada das teclas que compem a combinao deve ser feita seqencialmente. O pressionamento de uma tecla simulado atravs da ativao de uma chave. A chave deve ser desativada para que uma outra tecla seja posteriormente ativada (mesmo que seja o mesmo cdigo). Aps a mudana do modo de operao do circuito, deve-se prever uma reinicializao do sistema (RESET). Isto permite que, no modo de congurao, caso seja efetuado o cadastramento de uma senha invlida, seja possvel o recadastramento da senha com o acionamento do sinal de RESET. Por outro lado, no caso de acionamento de um dgito invlido no modo de segurana, o usurio pode corrigir a entrada da senha correta, acionando-se o RESET. Isto s ser possvel durante a entrada dos dois primeiros dgitos da senha, pois o circuito deve bloquear seu funcionamento aps a entrada do terceiro dgito e se a senha no for correta. Ou seja, caso o usurio no fornecer a senha correta, o circuito deve bloquear seu funcionamento e no responder a nenhum acionamento de qualquer tecla ou boto (p.ex. RESET, etc).
2. Sinais de Sada: MODO (LED 0) - indica o modo de operao do circuito (0 = modo de segurana e 1 = modo de congurao); ABRE (LED 1) - quando em nvel "zero indica a abertura do circuito; TRAVADO (LED 2) - indica que o circuito est travado/bloqueado. 3. Sinais de Controle Internos: TECLA ACIONADA - sinal auxiliar que indica a seleo de uma chave de entrada; CDIGO - cdigo binrio de 2 bits da chave selecionada; CONTA - sinal de clock do contador para varredura dos endereos da memria; ZERA - sinal para zerar o valor do contador para varredura dos endereos da memria; COMPARAO - sada do comparador indicando igualdade ou no entre o cdigo cadastrado e o cdigo inserido; SINAIS DE CONTROLE DA MEMRIA - utilizados para controle de operaes de leitura e gravao de dados na memria.
115
6. V ERIFICADOR DE S ENHAS
116
B IBLIOGRAFIA
[dSS05] Alexandre da Silva Simes. Experimento 03: Projeto e simulao de decodicador para display - Apostila de Laboratrio de Circuitos Digitais 1. Universidade Estadual Paulista - Campus de Sorocaba, 2005. Ricardo Tokio Higuti. Apostila de Circuitos Digitais I - Experincia 3 Multiplexadores e Decodicadores. Universidade Estadual Paulista Jlio de Mesquita Filho - Campus Ilha Solteira - Departamento de Engenharia Eltrica. Ivan Valeije Idoeta and Francisco Gabriel Capuano. Elementos de Eletrnica Digital. rica, 40 edition, 2007.
[Hig]
[IC07]
[SM06a] Edison Spina and Edson T. Midorikawa. Multiplexao de Displays Apostila do Curso de Laboratrio de Sistemas Digitais da USP (EPUSP). Escola Politcnica da USP - Departamento de Engenharia de Computao e Sistemas Digitais, So Paulo, 2006. [SM06b] Edison Spina and Edson T. Midorikawa. Vericador de Senhas - Apostila do Curso de Laboratrio de Sistemas Digitais da USP (EPUSP). Escola Politcnica da USP - Departamento de Engenharia de Computao e Sistemas Digitais, Escola Politcnica da USP - Departamento de Engenharia de Computao e Sistemas Digitais, So Paulo, 2006. [SM11a] Edison Spina and Edson T. Midorikawa. Caracterizao de Portas Lgicas - Apostila do Curso de Laboratrio de Sistemas Digitais da USP (EPUSP). Escola Politcnica da USP - Departamento de Engenharia de Computao e Sistemas Digitais, So Paulo, 2011. [SM11b] Edison Spina and Edson T. Midorikawa. Frequencmetro - Apostila do Curso de Laboratrio de Sistemas Digitais da USP (EPUSP). Escola Politcnica da USP - Departamento de Engenharia de Computao e Sistemas Digitais, Escola Politcnica da USP - Departamento de Engenharia de Computao e Sistemas Digitais, So Paulo, 2011. [SS07] Adel S. Sedra and Kenneth C. Smith. Microeletrnica. Pearson Prentice Hall, 5 edition, 2007.
[TWM07] Ronald J. Tocci, Neal S. Widmer, and Gregory L. Moss. Sistemas Digitais - Princpios e Aplicaes. Prentice-Hall, 10 edition, 2007. 117
B IBLIOGRAFIA
[Uye02]
John P. Uyemura. Sistemas Digitais - Uma abordagem integrada. Pioneira Thomson Learning, 1 edition, 2002.
118
Parte IV Anexos
119
P INAGEM
DE
CI S 74 XXX
As pinagens a seguir foram extradas do manual Pocket Data Book da Texas Instruments. Este apndice no substitui a necessidade de o aluno ter o seu prprio conjunto de manuais, onde h especicao detalhada das caractersticas estticas e dinmicas dos CIs.
121
NEXO
A. P INAGEM DE CI S 74 XXX
122
123
A. P INAGEM DE CI S 74 XXX
124
125
A. P INAGEM DE CI S 74 XXX
126
127
A. P INAGEM DE CI S 74 XXX
128
129
A. P INAGEM DE CI S 74 XXX
130
131
A. P INAGEM DE CI S 74 XXX
132
133
D EPURANDO C IRCUITOS
B.1 Consideraes Gerais
Quando o circuito no funciona como esperado, o motivo pode ser dividido em trs grupos no exclusivos: Erro de projeto. Erro na montagem. Falha nos componentes. Analisaremos caso a caso cada um dos grupos.
AN
EXO
B. D EPURANDO C IRCUITOS
B.2
O Processo de Depurao
No h nada difcil em depurar um circuito. Porm, so necessrios uma boa dose de raciocnio lgico e de organizao, qualidades importantes em qualquer prossional de engenharia. O processo como um todo pode levar um bom tempo (s vezes horas) e ser muito frustrante caso o erro no seja encontrado. Como hiptese de trabalho, o circuito no pode ter erros de projeto (ou seja, funcionou perfeitamente no simulador). Como regras gerais: 136
V montando e testando. Muitos alunos montam todo o circuito para depois testar. Em circuitos complexos, isto torna o processo de depurao muito trabalhoso. Neste caso, voc estar comeando a montagem e inspeo pelas entradas, indo em direo sada. No caso de montar tudo para depois depurar, pode ser mais rpido comear da sada: identique o problema (ou seja, bit de sada errado), e comece a procurar a fonte imediata do problema: cheque o LED, a sada do CI, e eventualmente entradas do chip que geram as sadas incorretas. Se o problema ainda persistir, verique o CI que produziu as entradas incorretas, at encontrar o ponto de falha. Regra do mudou, testou. Aps a realizar uma alterao no circuito, teste novamente o funcionamento do bloco que acabou de ser depurado. Anote o que foi alterado (voc pode esquecer que j fez), ou seja, documente os procedimentos executados. Cone no multmetro. No que olhando se o LED est aceso ou no para saber se o circuito funciona ou no. No processo de depurao, utilize intensivamente o multmetro para vericar o estado de cada sinal. Ao usar o multmetro, encoste sempre a ponta de prova no pino do CI, e no nos furos da protoboard. Com isso, consegue-se detectar problemas como trilhas com defeitos ou pinos mal encaixados. Verique as falhas bvias: conexo fonte, trilhas de alimentao e terra, polarizao dos LEDs. Isto deve ser rpido. Uma boa parte dos problemas est ligada a conexes erradas de VCC e GND. Teste cada bloco funcional individualmente, depois em conjunto. Neste ponto, importante ter em mente a diviso do projeto em blocos funcionais, com as entradas e sadas de cada bloco bem explicitadas. Nesta etapa, verique se as sadas esto no nvel lgico esperado para cada combinao dos sinais de entrada. Tenses na zona proibida. Caso o CI apresente uma tenso em torno de 2.5 V, a sada est em nvel lgico indenido. As causas tpicas so: Falta de alimentao e/ou terra no CI; Conexo entre as sadas de duas portas lgicas diferentes. Neste caso, se no houvesse a conexo, uma das sadas estaria em nvel 0, enquanto a outra poderia estar em 1. Como esto conectadas, h uma inconsistncia de valores; Sinal de enable desabilitado; CI com defeito. Se possvel, use outra porta - por exemplo, a 00 tem 4 portas NAND. A escolha comum usar os pinos 1, 2 e 3. Experimente 4, 5 e 6, ou simplesmente as portas do outro lado do CI. 137
B. D EPURANDO C IRCUITOS
Verique a compatibilidade entre CIs. Nem sempre possvel conectar CIs de famlias diferentes (exemplo: de TTL para HC). Para os experimentos em sala de laboratrio, prera sempre usar CIs da mesma famlia.
138