利用 VHDL 设计的许多实用逻辑系统中,有许多是可以利用有限状态机的设计方案来描述和实现的。无论与基于 VHDL的其它设计方案相比,还是与可完成相似功能的 CPU 相比,状态机都有其难以逾越的优越性,它主要表现在以下几方面: h 由于状态机的结构模式相对简单,设计方案相对固定,特别是可以定义符号化枚举类型的状态,这一切都为 VHDL 综合器尽可能发挥其强大的优化功能提供了有利条件。而且,性能良好的综合器都具备许多可控或不可控的专门用于优化状态机的功能。 h 状态机容易构成性能良好的同步时序逻辑模块,这对于对付大规模逻辑电路设计中令人深感棘手的竞争冒险现象无疑是一个上佳的选择,加之综合器对状态机的特有的优化功能,使的状态机解决方案的优越性更为突出。 h 状态机的 VHDL 设计程序层次分明,结构清晰,易读易懂,在排错,修改和模块移植方面,初学者特别容易掌握。 h 在高速运算和控制方面,状态机更有其巨大的优势。由于在 VHDL中,一个状态机可以由多个进程构成,一个结构体中可以包含多个状态机,而一个单独的状态机(或多个并行运行的状态机)以顺序方式的所能完成的运算和控制方面的工作与一个 CPU类似。由此不难理解,一个设计实体的功能便类似于一个含有并行运行的多 CPU的高性能微处理器的功能。事实上这种多 CPU 的微处理器早已在通信、工控和军事等领域有了十分广泛的应用。 h 就运行速度而言,尽管 CPU 和状态机都是按照时钟节拍以顺序时序方式工作的,但 CPU 是按照指令周期,以逐条执行指令的方式运行的;每执行一条指令,通常只能完成一项操作,而一个指令周期须由多个 CPU 机器周期构成,一个机器周期又由多个时钟周期构成;一个含有运算和控制的完整设计程序往往需要成百上千条指令。相比之下,状态机状态变换周期只有一个时钟周期,而且,由于在每一状态中,状态机可以完成许多并行的运算和控制操作,所以,一个完整的控制程序,即使由多个并行的状态机构成,其状态数也是十分有限的。因此有理由认为,由状态机构成的硬件系统比 CPU所能完成同样功能的软件系统的工作速度要高出两个数量级。