您的位置 首页 厂商

有限状态机的VHDL优化规划

当前以硬件描述语言为工具、逻辑器件为载体的系统设计越来越广泛。在设计中,状态机是最典型、应用最广泛的电路模块,其在运行速度的高效、执行时间的确定性和高可靠性方面都显现出强大的优势。状态机及其设计技术水

1.导言

当时以硬件描绘言语为东西、逻辑器材为载体的体系规划越来越广泛。在规划中,状况机是最典型、运用最广泛的电路模块,其在运行速度的高效、履行时刻确实定性和高可靠性方面都显现出强壮的优势。状况机及其规划技能水平决议了体系规划的好坏[1]。怎么规划一个最优化的状况机是咱们有必要面临的问题。

本文将具体评论状况机编写的各个过程对优化状况机所起到的作用。

2.状况机的分类

状况机由状况存放器和组合逻辑电路构成,能够依据操控信号依照预先设定的状况进行状况搬运,是和谐相关信号动作,完结特定操作的操控中心。

状况机能够分为Moore型和Mealy型两种根本类型。规划时选用哪种方法的状况机要依据规划的具体状况决议,输出只由当时状况值决议则选用Moore型,输入信号和状况值一起决议输出则选用Mealy状况机。

规划时在结构上一般遵从一下几点:

各模块只描绘一个状况机;将无关逻辑减至最少;将状况存放器从其他逻辑中分离出来[2]。

3.状况值编码方法

一般在规划状况机时,状况编码方法的挑选是非常重要的,选得欠好,或许会导致速度太慢或占用太多逻辑资源。实践规划中,有必要考虑多方面要素挑选最为适宜的编码方法。

3.1 枚举类型界说状况值

规划中状况机的状况值界说为枚举类型,归纳时一般转化为二进制的序列,因而与二进制编码方法本质上是相同的。

实践需要触发器的数目为实践状况的以2为底的对数。这种编码方法最为简略,归纳后存放器用量较少,剩下状况最少,其归纳功率和电路速度在必定程度大将会得到进步。但在状况转化过程中,状况存放器的高位翻转和低位翻转时刻是不共同的,这样就会呈现过渡状况,若状况机的状况值更多的话,产生过渡状况的概率更大。因而适宜杂乱度较低的规划。

3.2 格雷码表明状况值

格雷码编码,即相邻两个状况的编码只要一位不同,这使得选用格雷码表明状况值的状况机,能够较大程度上消除由传输延时引起的过渡状况。

该方法使得在相邻状况之间跳转时,只要一位改动,降低了产生过渡状况的概率,但当状况转化有多种途径时,就无法确保状况跳转时只要一位改动。所以在必定程度上, 格雷码编码是二进制的一种变形,整体思维是共同的。

3.3“ONE-HOT”状况值编码

One-hot编码方法是运用N个触发器来完成N个状况的状况机,每个状况都由一个触发器表明,在恣意时刻,其间只要1位有用,该位也称为“hot”,触发器为‘1’,其他的触发器置‘0’。

这种结构的状况机其稳定性优于一般结构的状况机, 可是它占用的资源更多。其简略的编码方法简化了状况译码逻辑,进步了状况转化速度,适宜于在FPGA 中运用。

3.4 剩下状况与容错技能

在状况机规划中,不行防止地会呈现许多剩下状况。若不对剩下状况进行合理的处理,状况机或许进入不行猜测的状况,结果是对外界呈现时刻短失控或许一直无法脱节剩下状况而失掉正常功用。因而,对剩下状况的处理,即容错技能的运用是有必要慎重考虑的问题。可是,剩下状况的处理要不同程度地耗用逻辑资源,因而规划者在选用状况机结构、状况编码方法、容错技能及体系的作业速度与资源运用率方面需要做权衡比较,以习惯自己的规划要求。

剩下状况的搬运去向大致有如下几种:

a)转入闲暇状况,等候下一个作业使命的到来;

b)转入指定的状况,去履行特定使命;

c)转入预界说的专门处理过错的状况,如预警状况。

关于前两种编码方法能够将剩下状况做出界说,在今后的句子中加以处理。处理的方法有2种:①在句子中对每一个不合法状况都做出明晰的状况转化指示;②运用others句子对未说到的状况作共同处理。关于One-hot编码方法其剩下状况数将随有用状况数的添加呈指数式剧增,就不能选用上述的处理方法。鉴于One-hot编码方法的特色,任何多于1个触发器为“1”的状况均为不合法状况。因而,可编写一个检错程序,判别是否在同一时刻有多个存放器为“1”,若有,则转入相应的处理程序。

4.状况机的描绘方法

VHDL对不同的状况机有不同的描绘方法,描绘方法不同使得归纳出来的门级网表也不同,因而有必要依据数字电路的特性和可归纳性挑选相应的状况机描绘方法。

下面以实践中激光测距仪中心操控器为例,介绍不同描绘方法的规划,并给出仿真图。
将整个状况机写到1个进程模块里,在该模块中既描绘状况搬运又描绘状况的输入输出,称为一段式描绘方法,即所谓的单进程状况机。其将组合逻辑和时序逻辑在一个进程中描绘,该方法的仅有长处是可得到锁存后的输出信号。但在描绘当时状况时需考虑下一个状况的输出,整个代码不明晰,不易于了解、保护,也晦气于时序束缚、功用更改、调试等,并且不能很好的表明Mealy状况机的输出,简单导致逻辑功用过错。别的,这种描绘相关于别的两种描绘比较冗长。因而一段式描绘是应当防止的描绘方法,这儿也不再做进一步评论。
选用2个进程模块,一个模块用同步时序描绘状况搬运;另一个模块用组合逻辑判别状况搬运条件、描绘状况搬运规则及逻辑输出,称为两段式描绘方法,这是归纳器了解最好的一种描绘方法,也是要求不高的条件下最常用的一种。剖析其结构归纳为图1所示框图。

规划的操控器时序仿真如图2所示。

由图2能够看到direct输出信号呈现毛刺,关于精细操控器来说这是不答应的。毛刺多由组合逻辑导致的,若在输出部分参加一个存放器节拍,可消除毛刺确保输出信号的稳定性,但输出就会推迟一个周期,所以当时序答应时该方法是很好的挑选。

运用3个进程模块,一个模块选用同步时序描绘状况搬运;第二个选用组合逻辑判别状况搬运条件,描绘状况搬运规则;第三个模块运用同步时序电路描绘每个状况的输出,该写法称为三段式写法。剖析其结构归纳为图3所示框图。

改善后的操控器时序仿真如图4所示。

三段式与两段式描绘比较,尽管代码结构杂乱了一些,可是换来的优势是做到了同步存放器输出,消除了组合逻辑输出的不稳定与毛刺的危险,并且更利于时序途径分组,在FPGA上的归纳与布局布线作用更佳。

一般来说,引荐的状况机描绘方法是后两种。其原因:规划最好运用同步时序方法,以进步规划的稳定性,消除毛刺。状况机完成后,状况搬运部分是同步时序电路而状况的搬运条件的判别是组合逻辑。两段式描绘方法尽管有许多优点,但一个显着的缺陷便是其输出运用组合逻辑描绘,易产生毛刺等不稳定要素,并且在逻辑器材中过多的组合逻辑会影响完成的速率,而三段式奇妙地依据下一状况的判别,用同步时序逻辑存放状况机的输出。

5.毛刺和竞赛处理

毛刺的产生,一方面因为状况机中包含有组合逻辑进程,使得输出信号在时钟的有用边缘产生毛刺;另一方面当状况信号是多位值的时分,因为传输推迟的存在,各信号线上的值产生改动的时刻会有先后,使得状况搬迁的时分呈现暂时状况。当状况机的输出信号作为其他功用模块的操控信号运用时, 将会使受控模块产生误动作, 形成体系作业紊乱。因而,在这种状况下有必要经过改动规划消除毛刺。

消除状况机输出信号的“ 毛刺”一般可从一下几点改善:
①在电路规划时,选用推迟时刻较小的器材,且尽或许选用级数少的电路结构;或许把时钟信号引进组合进程,用时钟来同步状况搬迁, 确保了输出信号没有毛刺,但这样添加了输出存放器, 硬件开支增大, 这关于一些存放器资源较少的方针芯片是晦气的;并且还会约束体系时钟的最高作业频率; 因为时钟信号将输出加载到附加的存放器上, 所以在输出端得到信号值的时刻要比状况的改动延时一个时钟周期。

②调整状况编码, 使相邻状况间只要1位信号改动,防止毛刺的产生。

③直接把状况机的状况码作为输出信号,即选用状况码直接输出型状况机, 使状况和输出信号共同, 使得输出译码电路被优化掉了。这种计划, 占用芯片资源少, 信号与状况改动同步, 速度快, 是一种较优计划。但在规划过程中对状况编码时或许添加状况向量, 呈现剩下状况。尽管可用CASE句子中WHEN-OTHERS 来组织剩下状况, 但有时难以有用操控剩下状况, 运行时或许会呈现难以预料的状况。因而它适用于状况机输出信号较少的场合。这种方法的缺陷是削弱了规划的可读性和可保护性[3]。

有限状况机归纳中的竞赛现象是指因为灵敏信号的频频改动导致状况机在同一个节拍内屡次改动状况,影响电路的正常作业。当输出信号反应回来作为输入信号的时分,就会产生竞赛。这儿要指出的是在归纳前模仿的时分往往不能发现描绘中潜在的竞赛现象,只要在归纳后,竞赛才会彻底露出出来。消除竞赛的方法是把形成竞赛的信号从灵敏信号表中除掉,而改成由时钟信号来触发进程,这样就使状况一个节拍只改动一次[4]。

6.状况机的优化

优化的方针主要有两个: 速度和规划,可是速度条件越严苛, 所需规划就越大, 因而优化电路结构时, 应归纳考虑各方面要素, 挑选最优化计划。电路结构分为逻辑电路和时序电路。逻辑电路的优化包含布尔表达式的优化等, 时序电路包含一般的时序电路和状况机。状况机优化包含挑选适宜状况和编码等, 比方合理的归并以及削减状况的数量等都能大大简化电路,在编程时应尽量把可归并的逻辑放入同一结构体中, 这样能够有用优化电路结构[5]。

7.定论

有限状况机是数字体系的一个重要组成部分。本文具体评论了状况机各部分及应留意的事项和各种不同写法的优缺陷。以上仅仅作者在项目规划实践中学习并总结的一些经历与领会,规划时需依据实践状况做适宜的挑选。

参考文献

[1] 吴继华,王诚.《Verilog规划与验证》[M],北京:人民邮电出版社,2006。

[2] 王巍,高德远.有限状况机规划战略 [J].计算机工程与运用,1999,7:54-55.
[3] 鲁玲,刘大年.消除状况机毛刺战略讨论 [J] .电子技能运用,2006,9:118-119.

[4] 李春霞,顾新,王君.有限状况机的VHDL 描绘及归纳 [J].计算机工程与运用,2005,6:111-113.

[5] 骆珊,黄明达.VHDL 电路结构优化规划讨论 [J] .计算机运用,2001,4:14-15.

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/192873.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部