北大Verilog课件 19 Verilog可以综合的风格整理ppt.ppt

北大Verilog课件 19 Verilog可以综合的风格整理ppt.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北大Verilog课件 19 Verilog可以综合的风格整理ppt

第19章 Verilog的可综合描述风格 描述风格简介 不支持的Verilog结构 过程块 过程块中的寄存器类型 同步寄存器举例 组合逻辑中的寄存器类型举例 敏感列表 敏感列表 持续赋值 过程持续赋值 综合指示 综合指示 综合指示 — case指示 条件语句 不完全条件语句 default完全条件语句 指示完全条件语句 case指示例外 函数 任务 锁存器(latch)推断 同步反馈(feedback)推断 带使能的寄存器 阻塞或非阻塞 阻塞、非阻塞对比 复位 复位 带复位、置位的锁存器latch 有限状态机 显式有限状态机 有限状态机FSM指导 FSM指导 资源共享 资源共享 复杂操作符 综合工具不能胜任的工作 综合工具不能胜任的工作 可编程逻辑器件相关问题 enum指导 状态赋值枚举,也用来将状态赋值捆绑到状态向量。 state_vector指导 定义状态寄存器和编码类型 状态机的描述也有综合指导。在RTL代码中,FSM指导向优化器传递状态机有关的特性信息。 这些指导有: `timescale 1ns/ 100ps module state4 (clock, reset, out); input reset, clock; output [1: 0] out; reg [1: 0] out; parameter /* ambit synthesis enum state_info */ stateA = 2b00, stateB = 2b01, stateC = 2b10, stateD = 2b11; reg [1: 0] /* ambit synthesis enum state_info */ state; reg [1: 0] /* ambit synthesis enum state_info */ nextstate; always @( posedge clock) /* ambit synthesis state_vector state -encoding one_hot */ if (reset) state = stateA; else state = nextstate; . . . 枚举名称定义 枚举名称限用于state、nextstate向量 定义状态寄存器并指定编码格式 资源共享是指多节代码共享一组逻辑。例如: always @( a or b or c or d) if (a) out = b + c; else out = b + d; 没有资源共享 资源共享 资源共享与所用综合工具有关。但通常,要共享资源,表达式必须在同一个always块中的同一个条件语句中。 资源共享可以由RTL代码控制。例如,可以改变编码风格强制资源共享。 if (a) out = b + c; else out = b + d; 原始代码 强制资源共享 temp = a ? c : d; out = b + temp; 或 out = b + (a ? c : d); 大多数工具可以将它映射为一个乘法器。 专用宏单元库中可能有乘法器。宏单元库中的元件的复杂程度要比常规单元库高。 宏单元库可以包含部分可重用设计,如FIFO,加法器,减法器(各种结构),移位寄存器,计数器和解码器等。、 宏单元库还可以包括用户自定义的可重用块,由用户自己设计并综合。 复杂操作符是可以被识别为高层操作并被直接映射到一个向量库内以存在单元的操作。例如: out = a * b; 时钟树 复杂的时钟方案 组合逻辑反馈循环和脉冲发生器 存储器,IO 专用宏单元 总做得和你一样好 * 学习目标: 学习组合逻辑和时序逻辑的可综合的描述风格及技术,包括: 不支持的Verilog结构 过程块 寄存器 敏感列表 持续赋值 综合指导 条件结构 阻塞及非阻塞赋值 锁存器/MUX推断 函数function 任务task 复位 有限状态机FSM 宏库及设计复用 如果逻辑输出在任何时候都直接由当前输入组合决定,则为组合逻辑。 如果逻辑暗示存储则为时序逻辑。如果输出在任何给定时刻不能由输入的状态决定,则暗示存储。 通常综合输出不会只是一个纯组合或纯时序逻辑。 一定要清楚所写的源代码会产生什么类型输出, 并能够反过来确定为什么所用的综合工具产生这个输出, 这是非常重要的。 综合工具通

文档评论(0)

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

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

1亿VIP精品文档

相关文档