- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
008同步状态机
同步状态机
第一课时
在数字设计系统中,同步状态机可以实现复杂而灵活的逻辑功能。因此掌握
同步状态机的设计原理十分重要。本次所讲同步状态机的原理、结构和设计。
1.1 状态机的结构
图1 时钟同步状态机(Mealy 状态机)
图1 表示的数字电路设计中常用的时钟同步状态机的结构。其中状态寄存器是由一组
触发器组成,用来记忆状态机当前所处状态。如果状态寄存器由n 个触发器组成(一个触发
器存储一位),则这个状态机最多可以记忆2n 个状态。所有的触发器的时钟端都连接在一
个共同的时钟信号上,所以状态的改变只可能发生在时钟的跳变沿时刻。可能发生的状态的
改变由正跳变还是由负跳变触发,取决于触发器的类型。状态是否改变,如何改变还将取决
于产生下一状态的组合逻辑F 的输出,F 是当前状态和输入信号的函数。状态机的输出是由
输出组合逻辑 G 提供的,G 也是当前状态和输入信号的函数。现在电路设计中常用正跳变
沿触发的 D 触发器,特别是在可编程逻辑器件上实现的用综合工具自动生成的状态机,其
电路结构往往都是使用正跳变沿触发的D 触发器。图中的F 和G 两部分都是纯组合逻辑,
它们的逻辑函数表达式为:
下一状态=F (当前状态,输入信号);
输出信号=G (当前状态,输入信号);
1.2 两种类型状态机
如果时序逻辑的输出不仅取决于状态还取决于输入,如图 1,这样类型的状态机称为
Mealy 状态机。而有些时序逻辑电路的输出只取决于当前状态,即输出信号=G (当前状态),
这样类型的状态机称为Moore 状态机,其电路结构如下图。
图2 时钟同步状态机(Moore 状态机)
这两种类型的状态机除了在输出电路部分有不同外,其他地方都是相同的。在实际设
计工作中,大部分所用状态机都属于 Mealy 型状态机,因为状态机的输出不仅与当前状态
有关还与当前输入有关。
在设计高速电路中,经常有必要使状态机的输出与时钟完全同步。有一个办法是把状
态变量直接用作输出,为此在指定状态编码时需要谨慎考虑。这种设计思路,在高速状态机
电路时经常使用,称为输出编码的状态指定。
设计高速状态机的另一种设计方法如下图所示。
图3 带流水线输出的Mealy 状态机
这种设计方法在输出逻辑G 后面再加一组与时钟同步的寄存器输出流水线寄存器,让
G 所有的输出信号在下一个时钟跳变沿时同时存入寄存器组,即完全同步输出,把这种输出
称为流水线化的输出的Mealy 状态机。
对状态机的精确划分并不重要,重要的是设计工程师如何把握输出的结构,使其满足
设计的整体目标,包括定时的准确性和灵活性。
第二课时
1.1 用Verilog 语言描述同步状态机
在 Verilog 语言中可以用很多方法来描述同步状态机,最常用的方法是用
always 语句和case 语句。下图所示为状态转移图表示了一个简单的有限状态机。
图1 状态转移图
上图所示的状态转移图描述了一个 4 状态的有限状态机,它的同步时钟为
clock,输入信号是A 和Reset ,输出信号是K2 和K1 。状态的转移只能在同步时
钟(clock )的上升沿时发生,转移到哪个状态取决于当前状态和当前输入信号。
1..1.1 Verilog 设计可综合状态机的典型方法
module fsm(Clock, Reset, A, K2, K1);
input Clock, Reset, A;
output K2, K1;
reg K2, K1;
reg [1:0] state;
parameter Idle = 2 ’b00;
parameter Start = 2 ’b01;
parameter Stop = 2 ’b10;
parameter Clear = 2 ’b11;
always @ (posedge Cl
您可能关注的文档
最近下载
- 数学中考总复习.doc VIP
- 限制型心肌病超声诊断与评估.pptx
- _【课件】第四章 三角形 +问题解决策略:特殊化课件北师大版七年级数学下册.pptx VIP
- 中考数学总复习第一轮考点复习(重庆专版).pptx VIP
- 2025在线网课《信息检索与科技写作( 理大)》单元测试考核答案.pdf VIP
- 高频精选:京东快递员ai面试题及答案.doc VIP
- 新北师大版初中七年级数学下册《第四章三角形问题解决策略:特殊化(1)》教学课件.pptx VIP
- 河北 2023年农信社储蓄知识考试真题模拟汇编(共213题).doc VIP
- 河北 2023年农信社基础知识考试真题模拟汇编(共672题).doc VIP
- 四川省宜宾市2023-2024学年高一下学期期末学业质量监测语文试卷(原卷版+解析版).docx VIP
文档评论(0)