입력 Signal 비교기 VHDL (Process)

Posted 2008. 10. 8. 22:22 by MINOK

1. 문제

- 입력 signal a, b 에 대해서 a가 b보다 클 때, signal agtb가 ‘1’이 되고 a가 b보다 작을 때는 출력 signal altb가 ‘1’이되는 하드웨어를 precess문에 의한 표현방법으로 설계하시오.(단, a와 b의 vector 크기는 각각3 downto 0로 선언한다.)

 

2. 문제 분석

- process문에 의한 표현 방법 : 자료흐름적 표현방법보다 추상화된 개념이며, 회로의 표현을 기능적 혹은 알고리즘으로 기술한다.

 

3. VHDL code

library ieee;

use ieee.std_logic_1164.all;

 

entity exam2 is

port(a, b : in std_logic_vector(3 downto 0);

agtb, altb : out std_logic);

end exam2;

 

architecture exam of exam2 is

begin

process(a,b)

begin

if a>b then

agtb <= '1';

end if;

if a<b then

altb <= '1';

end if;

if a=b then

agtb <= '0';

altb <= '0';

end if;

end process;

end exam;

 

 

 

4. Simulation



5. 결론
 

범위

관계식

결과값

0ns ~ 100ns

a = b

altb = 0 , agtb = 0

100ns ~ 200ns

a = b

altb = 0 , agtb = 0

200ns ~ 300ns

a < b

altb = 1 , agtb = 0

300ns ~ 400ns

a = b

altb = 0 , agtb = 0

400ns ~ 500ns

a > b

altb = 0 , agtb = 1

500ns ~ 600ns

a = b

altb = 0 , agtb = 0

600ns ~ 700ns

a < b

altb = 1 , agtb = 0

700ns ~ 800ns

a < b

altb = 1 , agtb = 0