- 1、本文档共100页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5基本逻辑电路的VHDL设计
状态 顺序编码 one_hot编码 状态 顺序编码 one_hot编码 0 0000 000000000001 7 0110 000001000000 1 0001 000000000010 8 0111 000010000000 2 0010 000000000100 9 1000 000100000000 3 0011 000000001000 10 1001 001000000000 4 0100 000000010000 11 1010 010000000000 5 0101 000000100000 12 1011 100000000000 表 5.7 两种编码方式的比较 5.3 状态机的设计 5.3.5 状态机的编码 (2)one_hot编码 one_hot编码方式就是用n个触发器来实现具有n个状态的状态机,状态机中的每一个状态都由相对应的一个触发器的状态表示。比如状态机共有12个状态,则需要12个触发器,且剩余的非法状态较多。当状态机处于某状态时,对应的触发器为1,其余的触发器都置0。 5.3 状态机的设计 5.3.5 状态机的编码 (3)状态位直接输出型编码 状态位输出型编码是将状态编码直接输出作为控制信号,即output=state,要求对状态机各状态的编码做特殊的选择,以适应控制时序的要求,这种状态机也称为状态吗直接输出型状态机。比如,有5种状态,S0、S1、S2、S3、S4,各状态的编码分别为00000、00001、01010、00111、01101,这样的编码都赋予实际的控制功能。 5.3 状态机的设计 5.3.5 状态机的编码 3. 剩余状态处理 处理的方法主要有以下两种: (1) 在语句中对每一个非法状态都作出明确的状态转换指示,如在原来的CASE语句中增加诸如以下语句: WHEN UNDEFINED1=NSTATE=STATE0; WHEN UNDEFINED2=NSTATE=STATE0; WHEN UNDEFINED3=NSTATE=STATE0; WHEN UNDEFINED4=NSTATE=STATE0; 5.3 状态机的设计 5.3.5 状态机的编码 3. 剩余状态处理 (2) 还可以利用OTHERS语句对未提到的状态作统一处理。可以分别处理每一个剩余状态的转向,而且剩余状态的转向不一定都指向初始态STATE0,也可以被导向专门用于处理出错恢复的状态中。但需要提醒的是,对于不同的综合器,OTHERS语句的功能也并非一致,不少综合器并不会如OTHERS语句指示的那样,将所有剩余状态都转向初始态。 5.3 状态机的设计 5.3.5 状态机的编码 思考题与习题 1. 什么是状态机? 2. 简述状态机设计方法。 3. 简述 Moore型有限状态机与Mealy型有限状态机的区别。 4. 用VHDL设计一个八选一数据选择器。 5. 用VHDL设计一个T触发器。 6. 用VHDL设计一个6位串入并出移位寄存器。 7. 设计一个同步十进制加法器。 8. 设计一个循环彩灯控制器。 要求:设计一个循环彩灯控制器,该控制器控制红、绿、黄三个发光管循环发亮,其中红色发光管亮2秒,绿色发光管亮3秒,红色发光管亮1秒。 5.3 状态机的设计 5.3.5 状态机的编码 5.3.1 状态机概述 1.什么是状态机 通俗地说,状态机就是事物存在状态的一种综合描述。 比如,一个单向路口的一盏红绿灯,它有“亮红灯”、“亮绿灯”和“亮黄灯”3种状态。在不同情况下,3种状态可以互相转换。转换的条件可以是经过多少时间,比如经过30秒钟由“亮红灯”状态变为“亮绿灯”状态;也可以是特殊条件,比如有紧急事件,不论处于什么状态都将转变为“亮红灯”状态。而所谓的状态机,就是对这盏红绿灯3种状态的综合描述,说明任意两个状态之间的转变条件。 5.3 状态机的设计 状态机是由状态寄存器和组合逻辑电路构成的,能够根据控制信号按照预先设定的状态进行状态转移,是协调相关信号动作、完成特定操作的控制中心。 状态机可归纳为4个要素:即现态、条件、动作及次态。这样的归纳,主要是出于对状态机的内在因果关系的考虑。“现态”和“条件”是因,“动作”和“次态”是果。 5.3 状态机的设计 5.3.1 状态机概述 1.什么是状态机 ①现态:是指当前所处的状态。 ②条件:又称为“事件”。当一个条件被满足,将会触发一个动作,或者执行一次状态的迁移。 ③动作:条件满足后执行的动作。动作执行完毕后,可以迁移到新的状态,也可以仍旧保持原状态。动作不是必需的
文档评论(0)