Buscar

Sistemas Digitais I - Poli - Exercício 3 - 2014 (VHDL)

Prévia do material em texto

USP -ESCOLA POLITÉCNICA 
PCS - DEPARTAMENTO DE ENGENHARIA DE 
COMPUTAÇÃO E SISTEMAS DIGITAIS 
 
 
PCS2215 Sistemas Digitais I – 2o Semestre de 2014 
 
Exercício 3 
(a ser entregue no dia 12 de novembro de 2014) 
 
Resolução 
Objetivos: 
Este exercício possui dois objetivos principais: 
• familiarizar o aluno com a ferramenta de descrição e simulação de sistemas digitais em 
VHDL, o Altera Quartus II Web Edition; 
• exercitar os conceitos de análise de circuitos digitais; 
• exercitar os conceitos de síntese de circuitos digitais. 
 
Atividade 1 (2 pontos): Familiarização com a ferramenta de HDL 
(1) Instale a ferramenta Altera Quartus II Web Edition (versão 9.1 SP2), disponível em 
https://www.altera.com/download/software/quartus-ii-we/9.1sp2. Será necessário realizar 
um cadastro, e o link para download do arquivo (1,8 GB, versão MS-Windows). 
(2) Diversos tutorias e materiais complementares estão disponíveis no Repositório do Ae, na 
pasta "Material Complementar – VHDL”. 
(3) Crie o projeto adder1bit no Quartus para o somador completo de 1 bit da Figura 1. 
(4) Execute a simulação do projeto adder1bit e gere formas de onda para todos os 8 valores 
possíveis de entrada. 
 
 
 
 
 
The linked image cannot be displayed. The file may have been moved, renamed, or deleted. Verify that 
the link points to the correct file and location.
 
 
Figura 1 – Somador Completo de 1 bit 
 
 
 
 
O que entregar: Em uma página, escrito manualmente, explique quais os valores de entrada 
testados, porque estes foram escolhidos e quais as saídas esperadas. Discuta se as formas de onda 
obtidas para os sinais de saídas coincidem com os valores esperados. Apresente uma impressão do 
diagrama lógico do circuito e da simulação realizada no Quartus. 
 
Exemplo de formas de onda: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Atividade 2: Análise de circuito digital 
 
Considere a seguinte descrição em VHDL. 
 
library IEEE; 
use IEEE.std_logic_1164. all; 
entity funcaoF is 
 port(a : in STD_LOGIC_VECTOR(1 downto 0); 
 b : in STD_LOGIC_VECTOR(1 downto 0); 
 eq : out STD_LOGIC ); 
end funcaoF; 
 
architecture funcaoF of funcaoF is 
 signal eq1 : STD_LOGIC; 
 signal eq2 : STD_LOGIC; 
 begin 
 eq1 <= not (b(1) xor a(1)); 
 eq2 <= not (b(0) xor a(0)); 
 eq <= eq2 and eq1; 
end funcaoF; 
 
 
(5) (1 ponto) Crie um projeto no Quartus para o código acima. Execute e apresente a simulação 
do módulo para todas as combinações possíveis de valor de entrada. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
(6) (1 ponto) Qual a tabela da verdade correspondente a função F? 
 
A0 B0 Eq2 A1 B1 Eq1 F 
0 0 1 0 0 1 1 
1 0 0 1 0 0 0 
0 1 0 0 1 0 0 
1 1 1 1 1 1 1 
 
 
 
 
 
 
(7) (1 ponto) Qual uma aplicação para a função F? 
 
Detector de igualdade para os dois bits. 
 
O que entregar: Em uma página, escrito manualmente, escreva a tabela da verdade correspondente a 
função F, e explique como ela foi obtida. Explique a aplicação possível para função F. Imprima as 
formas de onda obtidas para a função F. 
Atividade 3: Síntese de circuitos digitais 
 
Projete um circuito digital que conta o número de votos de três votantes A, B, C. Imagine que 
cada votante tem que responder a uma questão sim ou não. A saída do circuito digital deve ser 
v=[v1, v2] indicando o número de votos 'sim', conforme a tabela abaixo: 
 
Número de votos v1 v0 
0 0 0 
1 0 1 
2 1 0 
3 1 1 
 
 
(8) (1 ponto) Escreva a Tabela da Verdade para as entradas A, B e C e as saídas v1 e v0. 
 
A B C V1 V0 
0 0 0 0 0 
0 0 1 0 1 
0 1 0 0 1 
0 1 1 1 0 
1 0 0 0 1 
1 0 1 1 0 
1 1 0 1 0 
1 1 1 1 1 
 
 
(9) (1 ponto) Utilizando a Soma de Produtos, obtenha as equações lógicas de v1 e v0. 
 
V1 = A’.B.C + A.B’.C + A.B.C’ + A.B.C 
V0 = A’.B’.C + A’.B.C’ + A.B’.C’ + A.B.C 
 
(10) (1 ponto) Utilize o Mapa de Karnaugh para reduzir as equações de v1 e v0 para obter o 
número mínimo de termos. 
 
V0 
A / BC 00 01 11 10 
0 1 1 
1 1 1 
 
V0 = A’.B’.C + A’.B.C’ + A.B’.C’ + A.B.C 
 
V1 
A / BC 00 01 11 10 
0 1 
1 1 1 1 
 
V1 = B.C + A.C + A.B 
 
(11) (1 ponto) Desenhe no Quartus o diagrama lógico correspondente as equações v1 e v0, do 
item anterior. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
(12) (1 ponto) Simule o funcionamento do circuito e apresente o resultado da simulação no 
Quartus, para verificar os resultados obtidos. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
O que entregar: Em uma página, escrito manualmente, escreva: (1) tabela da verdade para as 
entradas A, B e C e as saídas v1 e v0; (2) as equações de v1 e v0 obtidas com a soma de produtos; 
(3) as equações de v1 e v0 reduzidas utilizando Mapa de Karnaugh. Explique se os resultados da 
simulação coincidem com o que foi projetado. Imprima o diagrama lógico e as formas de onda 
obtidas na simulação.

Continue navegando