VHDL登录终端

时间:2012-05-03 22:03:10

标签: vhdl

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

但我不知道如何初始化信号和启动它,因为当我在一个过程中初始化信号时,我不能在其他过程中增加其值。如果我不初始化那个信号,那么我的代码不起作用,我不知道为什么。例如,如果我没有向“0000”发出信号,则不会运行doSomething。但是我需要在doSomething中提升它的价值......为我糟糕的英语而烦恼。

if(mySignal = "0000")
    doSomething

1 个答案:

答案 0 :(得分:1)

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

打破问题。

绘制您想要的方框图

在可合成的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;