【正确答案】参照教材中7485比较器的VHDL程序设计方法,64位数值比较器的VHDL程序如下:
LIBRARY ieee:
USE ieee.Std_logic_1164.ALL;
USE ieee.Std_logic_arith.ALL;
USE ieee.Std_logic_unsigned.ALL;
ENTITY xiti508 IS
PORT(eqi, gti, lti: IN Std_logic a, b:IN Std_logic_vector(63 downto 0);eqo,gto,lto:OUT Std_logic);
END xiti508:
ARCHITECTURE xiti508_ar OF xiti508 IS
BEGIN
PROCESS(a,b,eqi,gti,lti)
BEGIN
IF a>b THEN
gto<='1';eqo<='0';lto<='0';
ELSIF a<b THEN
gto<='0';eqo<='0';lto<='1';
ELSIF(gti='1' AND eqi='0' AND lti='0')THEN
gto<='1';eqo<='0';lto<='0';
ELSIF(gti='0' AND eqi='0'AND hi='1')THEN
gto<='0';eqo<='0';lto<='1';
ELSIF(gti='0'AND eqi='1'AND hi='0')THEN
gto<='0';eqo<='1';lto<='0';
ELSIF(gti='1' AND eqi='1' AND lti='0')THEN
gto<='0';eqo<='0';lto<='0';
ELSIF(gti='0' AND eqi='0’AND lti='0'、THEN
gto<='1';eqo<='0';lto<='1';
ELSE
gto<='0';eqo<='1';Ito<='0';
END IF:
END PROCESS:
END xiti508 ar:
【答案解析】