VHDL 仿真出现 UUUUUUUU 红线

出现UUUUUU可能的原因

1.未初始化:

解决方案

在Test Bench 中使用 := 符号进行初始化

library IEEE;
use IEEE.std_logic_1164.all;

entity SAM_tb is
end SAM_tb;

architecture arch of SAM_tb is
component SAM is
port ( 
    A, B:   in  std_logic_vector(7 downto 0);
    Start:  in  std_logic;
    RST:    in  std_logic;
    CLK:    in  std_logic;
    Y:      out std_logic_vector(7 downto 0);
    Done:   out std_logic;
    Err:    out std_logic);
end component;
--**************************************************************
-- 这里就是信号的初始化
signal Start,RST,CLK,Done,Err: std_logic:='0';
signal A, B,Y : std_logic_vector(7 downto 0):= "00000000";
--**************************************************************

2. 没有复位

解决方案

复位

signal Start,RST,CLK,Done,Err: std_logic:='0';
signal A, B,Y : std_logic_vector(7 downto 0):= "00000000";

begin
UUT: SAM port map(A, B,Start,RST,CLK,Y,Done,Err);

clk_proc: process
	begin
	CLK <= '0';
	wait for 10 ns;
	CLK <= '1';
	wait for 10 ns;
	end process;
	
sim_proc: process
	begin
	B<="00001000";
	A<="00000101";
	--***************************************************
	--复位
	RST<='1';
	--***************************************************
	Start<='0';
	wait for 40 ns;
	
	RST<='0';
	Start<='1';
	wait for 20 ns;
	
	RST<='0';
	Start<='0';
	wait for 40 ns;
	
	RST<='0';
	Start<='1';
	wait for 20 ns;
	
	RST<='0';
	Start<='0';
	wait for 40 ns;
	
	RST<='0';
	Start<='1';
	wait for 20 ns;
	
	RST<='0';
	Start<='0';
	wait for 40 ns;
	wait;
end process;
end arch;




3. 忘记设置连线

在architecture中忘记连线了,结果肯定无。

解决方案

回去检查是不是忘记连线了。
使用<=进行硬件连线。

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值