VHDL登录终端

VHDL登录终端,vhdl,Vhdl,我是VHDL初学者,我需要登录终端。例如,我有固定密码7010。我只需要实现自动机的功能性。我想定义一个信号,它将保持按键次数,并且每次都会递增 但我不知道如何初始化信号并激励它,因为当我在一个过程中初始化信号时,我不能在另一个过程中增加它的值。如果我没有初始化那个信号,那么我的代码就不能工作,我也不知道为什么。例如,如果我不向“0000”发送信号,doSomething将不会运行。但我需要提高它在某些方面的价值。。。感谢我的英语不好 if(mySignal = "0000") doSo

我是VHDL初学者,我需要登录终端。例如,我有固定密码7010。我只需要实现自动机的功能性。我想定义一个信号,它将保持按键次数,并且每次都会递增

但我不知道如何初始化信号并激励它,因为当我在一个过程中初始化信号时,我不能在另一个过程中增加它的值。如果我没有初始化那个信号,那么我的代码就不能工作,我也不知道为什么。例如,如果我不向“0000”发送信号,doSomething将不会运行。但我需要提高它在某些方面的价值。。。感谢我的英语不好

if(mySignal = "0000")
    doSomething

你想做的事情听起来像是课堂作业。

将问题分解。

画一个你想要的方框图

在Synthisable VHDL中,您的说法是正确的,除非信号可以是高Z,否则不允许使用多个驱动程序。
但是没有什么可以阻止您复制信号并在另一个进程中使用它

对计数器或任何具有幅值的信号使用无符号类型,这会使使用更加方便

doSomething:process(clk,mySignal
begin
    if rising_Edge(clk) then
        if mySignal = "0000" then
            count<=count+1;
        end if;
    end if;
end process;
doSomething:process(时钟,我的信号
开始
如果上升沿(clk),则
如果mySignal=“0000”,则
计数