VHDL仿真时序行为

时间:2014-08-23 09:18:13

标签: vhdl

我正在尝试编写一些VHDL代码,它只是将std_logic_vector中的连续位提供给FSM模型。但是,这些位似乎没有正确更新。为了弄清楚这个问题,我有以下代码,而不是从矢量中取出一点,我只是切换信号x(同一个地方我会得到一点点)。

    clk <= NOT clk after 10 ns;
    process(clk) 
        begin
            if count = 8 then
                assert false report "Simulation ended" severity failure;
            elsif (clk = '1') then
                x <= test1(count);
                count <= count + 1;
            end if;         
    end process;

编辑: 看起来我很困惑。我已经把它放回去尝试从矢量中逐渐取出。这是输出。我原以为,当count为1时,x将取test1(1)的值,即1。

enter image description here

1 个答案:

答案 0 :(得分:1)

正如David在评论中指出的那样,代码运行正常。问题是我对std_logic_vector中的位顺序的无知。