Exercício 1 Exercício 1
Transcrição
Exercício 1 Exercício 1
2/10/2008 2008 Sistemas Digitais III - Teoria Exercício 1 Aula 8 Uma máquina de venda automática aceita moedas de 10 e 50 centavos, que devem ser inseridas individualmente num único orifício. Para cada moeda inserida, o coletor envia ao processador um pulso, chamado M10, para moedas de 10 centavos e M50, para moedas de 50 centavos. Desta forma, o processador vai contabilizando o saldo de moedas inseridas. São vendidos dois produtos, com preços de 60 centavos e 1 Real, respectivamente. Quando deseja um dos dois produtos, o cliente pressiona o botão P60 ou o botão P100, dependendo do produto, que geram pulsos em entradas distintas do processador. Pressionado o botão e havendo saldo em moedas, o processador dispara o mecanismo de liberação do produto, através do sinal L60 ou L100, dependendo do caso. Quando um dos botões é pressionado, o saldo que foi inserido em moedas tem o valor do produto descontado. Quando um produto é entregue ao cliente, o processador recebe um sinal de entrega (P60L ou P100L). A máquina não dá troco, nem devolve dinheiro. O processador deve registrar quantos produtos de cada tipo foram vendidos. Desenhar uma rede de Petri que modele o funcionamento do processador 2008 Sistemas Digitais III - Teoria Exercício 1 Aula 8 Page 1 1 2/10/2008 2008 Sistemas Digitais III - Teoria Aula 8 Exercício 2 Implementar a Rede de petri do sistema em VHDL ENTITY _____________________ IS PORT( _______________________________________: IN___________; ________________________________________: OUT _________); END __________________; ARCHITECTURE ___________________ OF _____________________ IS SIGNAL ____________________________________________________________________ ____________________________________________________________________________ BEGIN PROCESS (clk,reset) BEGIN IF _______________ THEN _________________________________________________ ELSIF _____________________________________ THEN ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ END IF; END PROCESS; __________________________________________ END _______________________________________ 2008 Sistemas Digitais III - Teoria Aula 8 Exercício Extra 1 ENTITY Q1 IS PORT(clk, reset, A, B: IN std_logic; S: OUT std_logic); END Q1; ARCHITECTURE mágica OF Q1 IS SIGNAL L1,L2 : std_logic; SIGNAL C1, C2 : integer range 0 to 7; BEGIN PROCESS (clk,reset) BEGIN IF reset = '1' THEN L1<= '0'; L2<= '1'; C1 <= 2; C2 <= 1; ELSIF clk'EVENT AND clk = '1' THEN if (L2='1' AND C2>2 AND B='1') then L1 <= '1'; elsif (L1='1' AND A=’1’) then L1 <= '0'; end if; If (L1='1' AND A='1') then L2 <= '1'; elsif (L2='1' AND B='1' AND C2>2) then L2 <= '0'; end if; If (L1='1' AND A='1’) then C1 <= C1 + 3; elsif C1>0 then C1 <= C1-1; end if; If C1>0 then C2 <= C2+1; elsif (C2 >2 AND B='1' AND L2='1’) then C2 <= C2-3; end if; END IF; END PROCESS; S <= L1; END mágica; Page 2 2 2/10/2008 2008 Sistemas Digitais III - Teoria Aula 8 Exercício Extra 2 Descrever a rede ao lado em VHDL ( supor R, T, X variáveis binárias) 2008 Sistemas Digitais III - Teoria Aula 8 Exercício Extra 3 Descrever a rede ao lado em VHDL, sabendo-se que o lugar e1 gera o sinal Mod e o lugar e2 gera o sinal Moe Page 3 3
Documentos relacionados
Tutorial -‐ Xilinx ISE
entity ANDGATE is port ( I1 : in std_logic; I2 : in std_logic; O : out std_logic); end entity ...
Leia mais