- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八讲可综合设计
第 八讲 可综合设计与时序仿真 内容: 逻辑综合概念 逻辑综合流程和工具 Verilog可综合语句 RTL级可综合设计 时序仿真 Verilog HDL 的设计流程 逻辑综合概念 逻辑综合:将HDL模块的行为描述转换成门级电路,并优化电路结构。 逻辑综合流程和工具 逻辑综合过程 逻辑综合分为两个主要阶段。第一阶段是工艺无关阶段,设计的处理不考虑最后的实现工艺。在此阶段进行组合逻辑的主要优化工作。第二阶段是工艺映射阶段,将设计转换成与工艺库内元件相匹配的形式。 工艺库与设计约束 工艺库(标准单元库):是由器件制造公司提供的库单元集合。库单元可以是基本逻辑门或宏单元,用verilog或其它语言建模,描述库单元的特性包括:单元的功能、时序、功耗和面积。 设计约束:通常包含如下内容。 逻辑综合实例 相等比较器: module compare(f, a, b); input [3:0] a,b; output f; reg f; always @(a or b) if(a == b) f = 1’b1; else f = 1’b0; endmodule 逻辑综合实例 RTL级设计 RTL模型中的信号代表了硬件中数据的实际移动方向以及电路的互连关系; RTL模型中的语句与实际寄存器的结构模型之间存在直接的映射关系; RTL模型指定了寄存器级的电路元件之间的连接关系,但隐藏了电路结构; RTL模型指定了存储单元的复用结构及总线; RTL模型中明确指定了各个寄存器的驱动时钟; RTL模型中通常不采用抽象的数据类型 RTL级可综合设计 Verilog可综合语句 目前成熟的逻辑综合工具都支持RTL级设计的综合,行为级综合只能在特定条件下进行,处于研究中。逻辑综合工具并不能处理随意编写的verilog描述,下表列出综合工具通常能接受的verilog描述: 不支持综合的Verilog语句 过程块 任意边沿 在所有输入信号的任意边沿进入的过程块产生组合逻辑。这种过程块称为组合块。 always @( a or b) // 与门 y = a b; 单个边沿 在一个控制信号的单一边沿上进入的过程块产生同步逻辑。这种过程块称为同步块。 always @( posedge clk) // D flip-flop q = d; 同步块也可以对异步复位信号的变化产生敏感 always @( posedge clk or negedge rst_) if (! rst_) q = 0; else q = d; 过程块中的寄存器类型 若同步块中使用一个reg,则: 如果在一个时钟周期赋值并在另一个周期输出,则只能以硬件寄存器实现。 如果reg是一个模块的输出,它会出现在综合网表中,但不一定是一个硬件寄存器。 若两者都不是,该信号可能被优化掉。 若组合块中使用一个reg,则: 如果reg值随块的任何一个输入的变化而改变, 则在综合时不会产生硬件寄存器。 如果reg值并不总是随块的输入变化而改变,则综合时会产生一个锁存器。 同步寄存器举例 下面设计不违反语法规则,但是不好的设计风格,不要使用。 组合逻辑中的寄存器类型举例 在下面的例子, rega是暂存变量,并被优化掉。 敏感列表 在下面的例子,a, b, sl是块的输入。 sl 用作条件, a、b用在过程赋值语句的右边。 持续赋值 持续赋值驱动值到net上。因为驱动是持续的,所以输出将随任意输入的改变而随时更新,因此将产生组合逻辑。 条件语句 例中定义了所有可能的选项,综合结果是纯组合逻辑,没有不期望的锁存器产生。 default完全条件语句 例中没有定义所有选项,但对没有定义的项给出了缺省行为。同样,其综合结果为纯组合逻辑——没有不期望的锁存器产生。 综合工具将 ‘bx作为无关值,可以进行更好的优化。 函数 函数没有时序控制,因此综合结果为组合逻辑。函数可以在过程块内或持续赋值语句中调用。 下例中的or/and块由持续赋值语句调用函数实现 任务 任务一般只在测试基准使用。因为没有时序控制的任务如同函数, 带有时序控制的任务不可综合。 下面是用任务描述的or/and块: 锁存器(latch)推断 在always块中,如果没有说明所有条件,
您可能关注的文档
最近下载
- 机场通行证考试试题(附答案)与答案.docx VIP
- 药店药品的养护(药房经营管理课件).pptx
- 浦东机场通行证考试试题及答案.doc VIP
- 2023年南昌外国语小升初入学测试题.docx VIP
- 老教师辅导青年教师总结13篇.docx VIP
- DB31-T1630-2025城镇污水处理厂污泥焚烧灰渣资源化利用技术要求.pdf VIP
- 【语文】上海市小学三年级上册期末试卷(含答案).doc VIP
- 城镇污水处理厂污泥焚烧灰渣资源化利用技术要求DB31T 1630-2025.docx VIP
- 2021年郑州市骨科医院医护人员招聘试题及答案解析.docx VIP
- 天津市南开区2024-2025学年高一上学期期末监测历史试卷.docx VIP
原创力文档


文档评论(0)