状态机设计技术
就理论而言,任何时序模型都可以归结为一个状态机。
状态机的优势
(1)高效的过程控制模型。
(2)容易利用现成的EDA工具进行优化设计。
(3)系统性稳定。
(4)高速性能。
(5)高可靠性能。
VHDL状态机的一般结构
- 从信号输出方式分,有Mealy和Moore型两种状态机
- 从描述结构上分,有单进程状态机和多进程状态机
- 从状态表达方式上分,有符号化状态机和确定状态编码的状态机
- 从状态机编码方式上分,有顺序编码、一位热码或其他编码方式状态机。
然而最一般和最常用的状态机结构中通常包含了说明部分、主控时序进程、主控组合进程、辅助进程等几个部分。
说明部分
说明部分中使用TYPE语句定义新的数据类型,其元素通常都用状态机的状态名来定义。状态变量(现态和次态)应定义为信号,便于信息传递,并将状态变量的数据类型定义含有既定状态元素的新定义的数据类型。
通常表述如下:
TYPE FSM_ST IS (s0,s1,s2,s3);SIGNAL current_state,next_state : FAM_ST;其中新定义的数据类型名是FSM_ST,其类型的元素分别是s0,s1,s2,s3,使其恰好表达状态机的4个状态。
定义为信号SIGNAL的状态变量是现态信号current_state和次态信号next_state。他们的数据类型被定义为FSM_ST,因此
现态信号current_state和次态信号next_sta