vhdl结构编码问题

vhdl结构编码问题,vhdl,Vhdl,下面的代码是一个简单的vhdl结构体系结构,但是 对信号comb1的并发分配扰乱了模拟 输出(tb_lfsr_out)和comb1变得未定义。请,请帮忙, 谢谢你,路易丝 library IEEE; use IEEE.STD_LOGIC_1164.all; entity testbench is end testbench; architecture behavioural of testbench is CONSTANT clock_frequency : REAL := 1.0e9;

下面的代码是一个简单的vhdl结构体系结构,但是 对信号comb1的并发分配扰乱了模拟 输出(tb_lfsr_out)和comb1变得未定义。请,请帮忙, 谢谢你,路易丝

library IEEE;
use IEEE.STD_LOGIC_1164.all;

entity testbench is
end testbench;

architecture behavioural of testbench is

CONSTANT clock_frequency : REAL := 1.0e9;
CONSTANT clock_period : REAL := (1.0/clock_frequency)/2.0;

signal tb_master_clk, comb1: STD_LOGIC := '0';

signal tb_lfsr_out : std_logic_vector(2 DOWNTO 0) := "111";

component dff
port
  (
    q: out STD_LOGIC;
    d, clk: in STD_LOGIC
  );
end component;

begin

-- Clock/Start Conversion Generator
tb_master_clk <= (NOT tb_master_clk) AFTER (1 SEC * clock_period);

comb1 <= tb_lfsr_out(0) xor tb_lfsr_out(2);

dff6: dff port map (tb_lfsr_out(2), tb_lfsr_out(1), tb_master_clk);
dff7: dff port map (tb_lfsr_out(1), tb_lfsr_out(0), tb_master_clk);
dff8: dff port map (tb_lfsr_out(0), comb1, tb_master_clk);

end behavioural;
IEEE库;
使用IEEE.STD_LOGIC_1164.all;
实体测试台是
端部试验台;
测试台的架构行为是
恒定时钟频率:实值:=1.0e9;
恒定时钟周期:实数:=(1.0/时钟频率)/2.0;
信号tb_主时钟,组合1:STD_逻辑:='0';
信号tb_lfsr_out:std_逻辑_向量(2到0):=“111”;
组件dff
港口
(
q:输出标准逻辑;
d、 时钟:在标准逻辑中
);
端部元件;
开始
--时钟/启动转换发生器

tb_master_clk它只是比Ciano(1)说的基数复杂一点。所有tb_lfsr_out元素从现在起显示“U”=0 ns。原因是所有的D触发器都没有初始化

所有tb_lfsr_out元素从现在起显示“U”=0 ns。原因是所有的D触发器都没有初始化

如果重置所有触发器,结果将始终为“0”,而没有“1”,从而导致异或门中发生触发器

预设D触发器(可在FPGA实现中免费提供):

只需添加一个默认值即可:

q:      out std_logic := '1';

(1) 是的,这只是一个小小的改变,显然有人改变了他们的用户名,如果问我,我会把基数改成Ciano。仅仅为了跨越门槛而做出改变是荒谬的

这个回答的全部目的是为了避免侵犯另一个回答者的著作权,而现在他正是这么做的。他回答的问题是,当所有输入都是“0”或任何输入都是元值时,XOR的互补属性阻止LFSR工作

当你在做的时候,没有人注意到波形中的错误,现在已经纠正了,显然是太专注于玩答案编辑的游戏了。(标签dff8后面的信号实际上来自dff7)

这里有一个问题形式的信息。回答stackoverflow问题的目的是什么?看见请注意,里希特先生的声誉一直在提高,包括他引用的可能引起严重愤怒的示例帖子。(这里传达的信息是耐心——你们所有的小编辑们,除非系统改变以防止它,否则你们的“声誉”迟早会达到自我维持的水平)

还要注意的是,问题的作者迄今为止一直在进行激烈的抗辩,在结束提问后,他的问题没有表示接受或使用任何答案


与此同时,尽管我不得不承认编辑投票记录很有趣,但我还是不想通过修改我写的单词来破坏我为什么在VHDL上回答问题。

@Ciano-在你的编辑因为琐碎而被拒绝一次后,你坚持编辑你的姓名记录。只有另一个stackoverflow用户名包含基数,lots包含子字符串“ciano”。你曲解了一个临界点,这与奖励系统无关,而是你改变了我的答案——一旦你在无意中改变了意思的同时,删掉了整个句子,越过了一个微不足道的临界点,你就接受了。提问者慷慨激昂的恳求——“请,请帮助,谢谢”。我鼓励你纠正你的答案,而不是破坏我的,我知道的新奇想法。