Laboratório de Eletrônica Digital Controle de Lâmpadas Three-Way Experiência N o 01 Prof. Ivan Sebastião de Souza e Silva
Experiência N o 01 Controle de Lâmpadas Three-Way Experiências de Eletrônica Digital Um sistema three-way consiste de um dispositivo que permite o acionamento de uma lâmpada a partir de qualquer uma das três chaves (interruptores) existentes. Isto é, a lâmpada pode ser ligada ou desligada acionando-se apenas uma das chaves. Esse tipo de dispositivo pode ser utilizado em grandes salas com três portas, permitindo que a lâmpada seja ligada na entrada por uma das portas e desligada na saída por qualquer das portas. 1. Projeto De acordo com a descrição apresentada acima, preencha a Tabela Verdade abaixo e escreva as equações correspondentes à saída L, nas formas padrão de soma de produtos e produto de somas. Considere que C2, C1 e C0 são as variáveis de entrada correspondentes às três chaves; L representa o estado da lâmpada (L=0: Lâmpada desligada; L=1: Lâmpada ligada) Tabela Verdade: C2 C1 C0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 L Soma Padrão de produtos L = (1) Produto padrão de somas L = (2) 2. Projeto 01: Forma de Soma de Produtos 2.1. Crie um novo projeto (file>new Project Wizard) denominado three_way_sp, localizado na pasta Lab1, com a entidade (entity) de topo denominada three_way_sp. O dispositivo a ser utilizado é o EP2C35F672C6 da família Cyclone II. 2.2. Crie um novo arquivo de Diagrama Esquemático (Block Diagram/Schematic File) com o nome "three_way_sp" e desenhe o esquemático correspondente à equação 1 obtida no item 1. Acrescente os pinos (pins) necessários com as denominações definidas no item 1. 2.3. Defina "three_way_sp" como entidade de topo. 2.4. Compile o esquemático obtido e corrija todos os erros indicados pelo compilador. 2.5. Crie um novo arquivo de forma de onda (Vector Waveform File), denominado "three_way_sp", detecte todas os pinos (Pins) e defina as formas de onda de cada entrada de modo a satisfazer a tabela verdade do ítem 1. 2.6. Defina o tipo de simulação como Funcional (funtional), indicando (se for o caso) o arquivo vwf anteriormente criado. 2.7. Gere o Netlist da Simulação Funcional (Generate Functional Simulation Netlist). 2.8. Quando todos os itens acima estiverem sem erros indicados pelo Quartus II, simule o projeto obtido e verifique os resultados. Prof. Ivan Sebastião de Souza e Silva Página 2
3. Projeto 02: Forma de Produto de Somas 3.1. Dentro da mesma pasta Lab1, crie um novo projeto (file>new Project Wizard) denominado three_way_ps, com a entidade (entity) de topo denominada three_way_ps. O dispositivo a ser utilizado é o EP2C35F672C6 da família Cyclone II. 3.2. Crie um novo arquivo de Diagrama Esquemático com o nome "three_way_ps" e desenhe o esquemático correspondente à equação 2 obtida no ítem 1. Acrescente os pinos (pins) necessários com as denominações definidas no item 1. 3.3. Repita os procedimentos indicados nos itens 2.3 a 2.8. 3.4. Compare os resultados com os obtidos anteriormente no item 2. 4. Projeto 03: Apenas com Portas NAND 4.1. Aplicando o teorema de De Morgan na equação 1, obtenha uma expressão contendo apenas operações NAND. 4.2. Dentro da mesma pasta Lab1, crie um novo projeto (file>new Project Wizard) denominado three_way_nand, com a entidade (entity) de topo denominada three_way_nand. O dispositivo a ser utilizado é o EP2C35F672C6 da família Cyclone II. 4.3. Crie um novo arquivo de Diagrama Esquemático com o nome "three_way_nand" e desenhe o esquemático correspondente à equação obtida no item 4.1. 4.4. Defina " three_way_nand" como entidade de topo e repita os itens 2.4 a 2.8. 4.5. Compare os resultados com os obtidos anteriormente nos itens 2 e 3. 5. Projeto 04: Com Portas XOR 5.1. Com manipulações algébricas na equação 2, obtenha uma expressão contendo apenas operações XOR. 5.2. Dentro da mesma pasta Lab1, crie um novo projeto (file>new Project Wizard) denominado three_way_xor, com a entidade (entity) de topo denominada three_way_xor. O dispositivo a ser utilizado é o EP2C35F672C6 da família Cyclone II. 5.3. Crie um novo arquivo de Diagrama Esquemático com o nome "three_way_xor" e desenhe o esquemático correspondente à equação obtida no item 4.1. 5.4. Defina " three_way_xor" como entidade de topo e repita os itens 2.4 a 2.8. 5.5. Compare os resultados com os obtidos anteriormente nos itens 2, 3 e 4. 6. Proneto 05: Multiplexador 6.1. A parte (a) da figura abaixo mostra um circuito na forma de soma de produtos que implementa um multiplexador 2-para-1 com uma entrada de controle C. Se C = 0 a saída S do mux (multiplexador) é igual a E 0, se C = 1 a saída é igual a E 1. A parte (b) da figura mostra a tabela verdade para esse mux e a parte (c) mostra o símbolo do circuito. Prof. Ivan Sebastião de Souza e Silva Página 3
6.2. Dentro da mesma pasta Lab1, crie um novo projeto (file>new Project Wizard) denominado "mux2_1", com a entidade (entity) de topo denominada "mux2_1". O dispositivo a ser utilizado é o EP2C35F672C6 da família Cyclone II. 6.3. Crie um novo arquivo de Diagrama Esquemático com o nome "mux2_1" e desenhe o esquemático correspondente ao esquemático mosdtrado no item 6.1. Acrescente os pinos (pins) necessárias com as denominações já definidas. 6.4. Defina "mux2_1" como entidade de topo. 6.5. Compile o esquemático obtido e corrija todos os erros indicados pelo compilador. 6.6. Crie um novo arquivo de forma de onda, denominado "mux2_1", detecte todas os pinos (Pins) e defina as formas de onda de todas as entradas de modo a obter todas as combinações possíveis de valores lógicos. 6.7. Defina o tipo de simulação como Funcional (funtional), indicando (se for o caso) o arquivo vwf anteriormente criado. 6.8. Gere o Netlist da Simulação Funcional (Generate Functional Simulation Netlist). 6.9. Quando todos os itens acima estiverem sem erros indicados pelo Quartus II, simule o projeto obtido e verifique os resultados. 6.10. Crie um símbolo para o dispositivo obtido (file>create/update>create symbol files for current file). 7. Projeto 06: Com Mux 7.1. Dentro da mesma pasta Lab1, crie um novo projeto (file>new Project Wizard) denominado "three_way_mux", com a entidade (entity) de topo denominada "three_way_mux". O dispositivo a ser utilizado é o EP2C35F672C6 da família Cyclone II. 7.2. Crie um novo arquivo de Diagrama Esquemático com o nome "three_way_mux" e, utilizando dispositivos como aquele obtido no item 6, desenhe o esquemático correspondente à equação 1. 7.3. Defina "three_way_mux" como entidade de topo. Prof. Ivan Sebastião de Souza e Silva Página 4
7.4. Compile o esquemático obtido e corrija todos os erros indicados pelo compilador. 7.5. Defina o tipo de simulação como Funcional (funtional), indicando (se for o caso) o mesmo arquivo vwf utilizado no item 2. 7.6. Gere o Netlist da Simulação Funcional (Generate Functional Simulation Netlist). 7.7. Quando todos os itens acima estiverem sem erros indicados pelo Quartus II, simule o projeto obtido e verifique os resultados, comparando com aqueles obtidos nos itens 2, 3, 4 e 5. 8. Projeto 7: Descrição em VHDL 8.1. Dentro da mesma pasta Lab1, crie um novo projeto (file>new Project Wizard) denominado "three_way_hdl", com a entidade (entity) de topo denominada "three_way_hdl". O dispositivo a ser utilizado é o EP2C35F672C6 da família Cyclone II. 8.2. Crie um arquivo VHDL denominando "three_way_hdl". Com base na equação 1, faça uma descrição em VHDL denominando a entidade (entity) de topo como "three_way_hdl" e salve o arquivo correspondente com o mesmo nome dado à entidade. 8.3. Defina "three_way_hdl" como entidade de topo. 8.4. Compile o arquivo hdl obtido e corrija todos os erros indicados pelo compilador. 8.5. Defina o tipo de simulação como Funcional (funtional), indicando (se for o caso) o mesmo arquivo vwf utilizado no item 2. 8.6. Gere o Netlist da Simulação Funcional (Generate Functional Simulation Netlist). 8.7. Quando todos os itens acima estiverem sem erros indicados pelo Quartus II, simule o projeto obtido e verifique os resultados, comparando com aqueles obtidos nos itens 2, 3, 4, 5 e 7. 9. Simulação no modo Timing 9.1. Refaça todas as simulações anteriores estabelecendo o tipo "timing" de simulação. 9.2. Determine o atraso fornecido por cada uma das soluções estudadas. 10. Implementação em FPGA 10.1. Seguindo orientações contidas no Tutorial Tutorial Quartus II, defina os pinos que serão utilizados, faça os up-loads dos projetos 6 e 7, e teste as implementações realizadas. Prof. Ivan Sebastião de Souza e Silva Página 5