我正在寻找实现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用于学校项目,甚至不确定我拥有的是正确的。如果有人可以提供帮助那就太棒了。
谢谢!
答案 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进行改进。