0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

异步设计之Verilog时序分析

OpenFPGA 来源:OpenFPGA 作者:OpenFPGA 2022-03-09 15:28 次阅读

没有任何寄存器逻辑,RTL设计是不完整的。RTL是寄存器传输级或逻辑,用于描述依赖于当前输入和过去输出的数字逻辑。

ef9e7190-9e01-11ec-952b-dac502259ad0.png

在异步计数器中,时钟信号不由公共时钟源驱动。如果LSB触发器的输出作为后续触发器的输入,则设计是异步的。异步设计的主要问题是由于级联,触发器的累积时钟到q延迟。由于存在小故障或尖峰问题,ASIC/FPGA设计中不建议使用异步计数器,甚至此类设计的时序分析也非常复杂。

所以接下来只介绍一种计数器

波纹计数器Ripple Counters

纹波计数器是一个异步计数器,如图5.33所示。如逻辑图所示,所有触发器均为正边缘触发,LSB寄存器从主时钟源接收时钟。LSB触发器的输出作为下一级的时钟输入。

efaea47a-9e01-11ec-952b-dac502259ad0.png

图5.33三位纹波计数器逻辑图

四位纹波递增计数器的Verilog RTL如例5.18所示。综合逻辑如图5.34所示。

efc0b5e8-9e01-11ec-952b-dac502259ad0.png

示例5.18四位纹波递增计数器的Verilog RTL

efe0a57e-9e01-11ec-952b-dac502259ad0.png

图5.34四位纹波递增计数器的综合逻辑

内存模块设计

在大多数ASIC/FPGA设计和基于SoC的设计中,存储器用于存储二进制数据。存储器可以是ROMRAM、单端口或双端口类型。本节的目的是描述基本的单端口读写存储器。时序如图5.35所示。

如时序所示,读写操作由“rd_wr”控制,如果“cs”为高电平,则在时钟信号“clk”的正边缘对数据进行采样。地址输入由总线“address”描述。

单端口读写存储器的Verilog RTL如例5.19所示。

eff68876-9e01-11ec-952b-dac502259ad0.png

图5.35存储器的时序

f00eb9dc-9e01-11ec-952b-dac502259ad0.png

示例5.19读写存储器的Verilog RTL

审核编辑:‘’

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    31

    文章

    5327

    浏览量

    120059
  • 计数器
    +关注

    关注

    32

    文章

    2254

    浏览量

    94374
  • 触发器
    +关注

    关注

    14

    文章

    1996

    浏览量

    61058

原文标题:Verilog时序逻辑硬件建模设计(五)异步计数器&总结

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    什么是时序分析?教你掌握FPGA时序约束

    时序分析本质上就是一种时序检查,目的是检查设计中所有的D触发器是否能够正常工作,也就是检查D触发器的同步端口(数据输入端口)的变化是否满足建立时间要求(Setup)和保持时间要求(Hold);检查D
    发表于 07-14 10:48 3213次阅读
    什么是<b class='flag-5'>时序</b><b class='flag-5'>分析</b>?教你掌握FPGA<b class='flag-5'>时序</b>约束

    FPGA设计中的时序分析异步设计注意事项

    FPGA设计中的时序分析异步设计注意事项建立时间(setup time):是指在触发器的时钟信号上升沿到来以前,数据稳定不变的时间,如果建立时间不够,数据将不能在这个时钟上升沿被打入触发器;保持
    发表于 12-07 10:14

    异步sram测试verilog代码

    异步sram测试verilog代码是个很好的参考程序。
    发表于 01-13 10:24

    verilog描述异步置0,异步置1功能的D触发器

    新手,verilog描述异步置0,异步置1功能的D触发器,置0低电平有效,置1高电平有效,用modelsim仿真时,个别时序存在问题,费解,请指出问题所在。谢谢。代码及仿真图形如下:m
    发表于 04-04 20:55

    Cadence高速PCB的时序分析

    Cadence高速PCB的时序分析:列位看观,在上一次的连载中,我们介绍了什么是时序电路,时序分析的两种分类(同步和
    发表于 07-01 17:23 0次下载

    异步时序逻辑电路

    异步时序逻辑电路:本章主要从同步时序逻辑电路与异步时序逻辑电路状态改变方式不同的特殊性出发, 系统的介绍
    发表于 09-01 09:12 0次下载

    ASIC中的异步时序设计

    绝大部分的ASIC设计工程师在实际工作中都会遇到异步设计的问题,本文针对异步时序产生的问题,介绍了几种同步的策略,特别是结绳法和异步FIFO的异步
    发表于 01-16 14:35 36次下载

    时序约束与时序分析 ppt教程

    时序约束与时序分析 ppt教程 本章概要:时序约束与时序分析基础常用
    发表于 05-17 16:08 0次下载

    Verilog HDL语言实现时序逻辑电路

    Verilog HDL语言实现时序逻辑电路 在Verilog HDL语言中,时序逻辑电路使用always语句块来实现。例如,实现一个带有异步
    发表于 02-08 11:46 4685次阅读

    如何使用Verilog-HDL做CPLD设计的时序逻辑电路的实现

    本文档的主要内容详细介绍的是如何使用Verilog-HDL做CPLD设计的时序逻辑电路的实现。
    发表于 12-12 16:25 9次下载
    如何使用<b class='flag-5'>Verilog</b>-HDL做CPLD设计的<b class='flag-5'>时序</b>逻辑电路的实现

    FPGA何为异步时序

    异步时序电路是指电路中除以使用带时钟的触发器外,还可以使用不带时钟的触发器和延迟元件作为存储元件;电路中没有统一的时钟;电路状态的改变由外部输入的变化直接引起.
    的头像 发表于 11-27 07:04 1842次阅读

    静态时序分析:如何编写有效地时序约束(一)

    静态时序分析是一种验证方法,其基本前提是同步逻辑设计(异步逻辑设计需要制定时钟相对关系和最大路径延时等,这个后面会说)。静态时序分析仅关注
    的头像 发表于 11-22 07:07 3469次阅读

    什么是同步时序电路和异步时序电路,同步和异步电路的区别?

    同步和异步时序电路都是使用反馈来产生下一代输出的时序电路。根据这种反馈的类型,可以区分这两种电路。时序电路的输出取决于当前和过去的输入。时序
    的头像 发表于 03-25 17:29 2.5w次阅读
    什么是同步<b class='flag-5'>时序</b>电路和<b class='flag-5'>异步</b><b class='flag-5'>时序</b>电路,同步和<b class='flag-5'>异步</b>电路的区别?

    为什么异步fifo中读地址同步在写时钟域时序分析不通过?

    为什么异步fifo中读地址同步在写时钟域时序分析不通过? 异步FIFO中读地址同步在写时钟域时序分析
    的头像 发表于 10-18 15:23 696次阅读

    verilog同步和异步的区别 verilog阻塞赋值和非阻塞赋值的区别

    Verilog是一种硬件描述语言,用于设计和模拟数字电路。在Verilog中,同步和异步是用来描述数据传输和信号处理的两种不同方式,而阻塞赋值和非阻塞赋值是两种不同的赋值方式。本文将详细解释
    的头像 发表于 02-22 15:33 1569次阅读