问答题 用VHDL语言设计一个64位数值比较器。
【正确答案】参照教材中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:
【答案解析】