问:VHDL实现了2个简单的函数

时间:2017-03-26 20:02:09

标签: vhdl

我正在寻找实现y = a和b的函数; y =(a或b)和(c或d)。

  

库IEEE;   使用IEEE.STD_LOGIC_1164.ALL;   使用IEEE.NUMERIC_STD.ALL;

     

实体task1_tb是    - 港口 ( );结束task1_tb;

     

架构行为的task1_tb是

     

- 声明组件组件task1         端口(a:在STD_LOGIC;            b:在STD_LOGIC中;            y:out STD_LOGIC);结束组件;

     

信号y,a,b:std_logic;             信号计数器:无符号(1 downto 0):=“00”;

     

开始uut:task1端口映射(a => a,b => b,y => y);

     

结束行为;

如何指定(位1)和b(位2),以便测试可能的值并在每个组合之间产生20ns的延迟?过去两天我一直在努力学习VHDL用于学校项目,甚至不确定我拥有的是正确的。如果有人可以提供帮助那就太棒了。

谢谢!

1 个答案:

答案 0 :(得分:1)

您希望在刺激过程中使用wait for <duration>

process
begin
   for i in 0 to 2**2-1 loop --2**(number of input bits)-1
      (a, b) <= to_unsigned(i,2);
      wait for 20 ns;
   end loop;
   wait;
end process;

归功于user1155120进行改进。