moore型和mealy型有限状态机的vhdl设计

moore型和mealy型有限状态机的vhdl设计

ID:5317535

大小:290.95 KB

页数:5页

时间:2017-12-08

moore型和mealy型有限状态机的vhdl设计_第1页
moore型和mealy型有限状态机的vhdl设计_第2页
moore型和mealy型有限状态机的vhdl设计_第3页
moore型和mealy型有限状态机的vhdl设计_第4页
moore型和mealy型有限状态机的vhdl设计_第5页
资源描述:

《moore型和mealy型有限状态机的vhdl设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、万方数据科技信息计算机与网络Moore型和Mealy型青限状态棚帕VHDL设计山东艺术学院万莉莉[摘要]从精出时序上看,Moore型状态机属于异步输出状态机,Mealy型状态机属于同步输出状态机。M00re型有限状态机的精出仅为当前状态的函数,这类状态机在输入发生变化后再等待时钟的到来,时钟使状态发生变化时才导致输出的变化}Mealy型有琅状态机的输出是当前状态和所有输入信号的函数,它的输出在转入变化后立即发生。从状态机的工作时序圈上当然艰容易区分出是哪一种状态机,但是对于初学者并不能根容易从Ⅵ{DL代码上判断,本文的目的就是从vHDL

2、代码和工作时序对这两类状态机进行区分。只有清楚了迭两类状态机在vHDL代码上的特点才能够设计出相应的状态机。[关键词]状态机vHDLM00reMealyMooreFsM1、引官从信号输出方式上,有限状态机分为:M00托型和Mealy型两类,从输出时序上看前者属于异步输出状态机,后者属于同步输出状态机(所谓同步或异步都是相对于时钟信号而言的。不依赖于时钟而有效的信号称为异步信号,而依赖于时钟才有效的信号称为同步信号)。Moore型有限状态机的输出仅为当前状态的函数.这类状态机在输入发生变化后再等待时钟的到来,时钟使状态发生变化时才导致输出

3、的变化}Mealy型有限状态机的输出是当前状态和所有输入信号的函数,它的输出在输入变化后立即发生。从结构图上看它们的区别如图下所示。Mcalv刑状态机与M00re型状态机相比较,Mealy状态机的输出变化要领GIN先一个时钟周期。其实通过状态机的工作时序图比较容易区分这两种类型的状态机,但直接从vHDL代码怎么来区分它们呢?本文就这个【可题进行探讨,并根据实例说明如何根据vHDL代码区别这两类状态机,然后通过分析它们的工作时序图来验证。正确的区别两类状态机是我们进行正确设计的前提,只有这样我们才能按照我们的意愿或者要求去设计不同类型的状

4、态机。2、M00re型状态机的vHDL代码和工作时序图以下是一十Moore型状态机的vHDL代码:LⅡ3RARYIEEE:USEIEEE。STD—LOGIc—1164.ALL}ENTITY3一n螗chineISPORT(clk,reset:INSTDLOGIC,state—input8:INSTD—LOGIc—VECTOR(ODOWN—T01)Icomb—outputs:OUTINTEGERRANGEOT015)}ENDg—mBchin2,ARCmTECTUREbehavoF8一machineIsTYPEFSM—sTIS(s0,s1,s

5、2,s3),SIGNALcurrem8tate,nextstat8:FSMST}BE—un)utsOulDutsREG:PROCESS(CLK,RESET)BEGlNIFRESET一’1’THENcurrent8tate<盎sO‘ELSIFclk一’1’ANDclk’EVENTTHENcurfent8tate<一nextstateIENDIF,ENDPROCESSlC()M:PROCESS(current一8tate,Ⅱen—state)BEGINCASEc11rrentBtateISWHENs0一>comb—outputs<一5IIF

6、8tatein口uts=”00”THENnextELSEnextstate<一81;END1FlWHENs1罱>coⅢboutputs<一8;IFstatein口uts一”01”THENⅡextELSEnext8tate<=日2;ENDIF{WⅡENs2一>combou佃uts<篇12state<一sO【FstBtein口uts=”1胪THEN耻xtstate<一s0ELSEnextBt8te<岂83{ENDIF}WⅡENs3一>eomb—outputs<=14,IFstBtein口uts兰”1l”TI{ENnextstate<一83E

7、LSEnextstate<=B0}ENDIFIENDCASEIENDPRoCESSII:NDbehav;万方数据科技信息计算机与网络该状态机的工作时序图如下从状态机的工作时序图中根容易看出,当输入8tate—in—puts从。变化到2时(参考线处),输出comb—outpu妇并没有从5变化到8,而是等到下一个时钟脉冲的上升沿到来时才发生这种变化。即输出并不随输入的变化而立即变化,还必须等待始终边沿的到来。从状态机的工作时序目中己经判断出该状态机是Moore型状态机。从vHDL代码中黑体部分可知,输出信号comb—outputs仅是当前状

8、态currem一3tate的函数。3、Mealy型状态机的Ⅵ{DL代码和工作时序圉以下是一个MeaIy型状态机的v}Ⅱ)L代码:LIBRARYIEEEtUSEIEEE.STDLOGIC1164.ALLIEN

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。