关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 利用有限状态机的交通灯控制系统设计与仿真

利用有限状态机的交通灯控制系统设计与仿真

作者:时间:2012-03-09来源:网络收藏

2.3.2 控制与倒计时模块的VHDL描述
用VHDL机并没有固定的格式,但需要遵循一定的编码风格。一般采用进程(process)描述,机描述方式有如下3种:三进程描述、双进程描述和单进程描述。这里采用双进程描述:一个是时钟进程,控制机在时钟有效沿,根据时钟有效沿和某些输入信号条件得到下一状态并进行状态迁移;另一个是组合进程,不受时钟控制,由输出相关的信号触发,该进程根据触发信号决定状态机的输出信号值,即通过简便地定义状态变量,将状态描述成进程,每个状态均可表达为CASE_WHEN语句结构中的一条CASE语句,状态的转移通过IF_THEN_ELSE语句实现,并输出信号以控制其他进程,从而实现状态的转移。
在时序进程中,状态机是随时钟脉冲信号clk以同步方式工作,同时还受异步复位信号rst的控制。在rst=1时,状态机复位,当rst=0(复位无效)而clk发生变化时,状态机的状态发生变化,转向状态机的下一状态;在组合进程中,状态机根据外部输入的控制信号(如hold),以及来自状态机内部(如cnt)信号,或当前状态机的状态值,确定其下一状态的走向。
基于状态机的VHDL灯控制与倒计时模块的源程序的实体和结构体部分如下:
f.JPG
g.JPG


评论


相关推荐

技术专区

关闭