Day--3 高级逻辑设计接口.pdf

  1. 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
  2. 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
  3. 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
查看更多
高级逻辑设计 基本逻辑结构 Control Unit • Control Unit根据外部输入以及Datapath当前的工作状态对 于Datapath进行控制,是整个算法的调度者。 • Control Unit在大部分实现中以FSM的形式出现。 Datapath • Datapath通常称为数据通路 • Datapath指用于进行数据处理的逻辑资源以及相应的寄存 器组成的电路。 基于ASM 图的FSM设计 有限状态机概述 • 有限状态机——Finite State Machine (FSM) • 状态机在整个时序电路中扮演着至关重要 的角色。 • 这里提到的状态机都是有限状态机,顾名 思义就是整个时序逻辑电路只能存在有限 个状态。他们所处的状态和对应的输出都 是确定的。 有限状态机概述(续) • 状态机的要素 – 状态变量:用于划分逻辑顺序和时序规律 – 输出:某一个状态时特定发生的事件 – 输入:进入某个状态的条件 • 稳定的状态机 – 时钟同步的输入 – 时钟同步的输出 有限状态机概述(续) • 通常来讲,FSM的输出以及状态的更迭是由 当前状态以及输入形成的组合逻辑确定的。 • 有限状态机在实现数字系统中的控制和决 策电路中非常有用。 为何要设计好状态机 • 状态机几乎出现在每一个较为复杂的时序 逻辑电路中,他可以控制事件发生的顺序, 调整数据通路的时序等等。比如CPU总线仲 裁、通讯握手协议的实现等等。 • 优秀的状态机能够稳定地控制电路的状态 转移,使整个系统稳定有效地运作着。相 反,劣质的状态机则会过多产生错误状态 的迁移,glitch 的输出,大大影响了系统稳 定性。 为何要设计好状态机(续) • 一个优秀的状态机应该具有以下特点 – 安全、稳定性高 – 速度快、满足设计时钟要求 – 面积小、满足设计面积要求 – 设计清晰易懂、易维护 状态机的分类 • 从状态机的逻辑形式划分 – Moore状态机 – Mealy状态机 • 从状态机的描述方式 – 2段式 – 3段式 • 这里只做概念上的介绍,之后会给出详细 的对比。 Moore状态机介绍 • 摩尔状态机的输出仅仅依赖于当前状态, 而与输入条件无关 Mealy状态机 • 米勒型状态机的输出不仅依赖于当前状态, 而且取决于该状态的输入条件。 状态机的分类(续) • 摩尔状态机的输出是由时钟同步的,而米 利状态机的输出是异步的,他的输出会随 着输入的随时改变而改变。 • 因此在时序设计上,摩尔状态机更有优势; 当然,也可以通过同步化设计来克服米利 状态机的缺陷。 状态机同步问题 • 输入同步:状态机中各个状态的迁移是由 当前状态和当前输入决定的。当前状态的 迁移是由时钟同步的而状态机输入通常来 说是异步的,因此需要同步化输入来避免 状态的错误跳转。 状态机同步问题(续) • 我们这样控制状态跳转 • always@(posedge clk) state = next_state; • 这里next_state是根据clk采样之前状态机所 在状态和采样之前已经稳定输入而产生的。 也就是说,这个输入作用于状态的跳转已 经是经过时钟采样的了(时钟同步化)。 状态机同步问题(续) • 电路示意图如下 状态机同步问题(续) • 依然存在的问题(亚稳态) 状态机同步问题(续) • 输出同步 – Moore状态机的输出本身就是同步的 – Mealy状态机可以使用同步

文档评论(0)

chqs52 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档