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

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

3天内不再提示

参数化的延迟链代码分享

fpga加油站 来源:fpga加油站 2024-10-21 13:54 次阅读

参数化的延迟链代码分享

在日常写代码的过程中,我们经常会用到“打拍”的操作。如图1代码段所示。这个打拍的作用,很多时候主要是为了减少亚稳态。图1这样的写法,是我们的常规操作。这样写的好处是简单明了,让人一看就能明白。 大部分时候,我们都采取这样的写法。今天,想从参数化和模块化的角度,来看下该怎么实现这种打拍操作。虽然对于“打拍”操作来说有点化简为繁,画蛇添足的感觉,但是重点是想通过这个实例来介绍设计中的一种思想:就是我们要尽量把经常用的模块进行参数化和模块化,这样可以提高开发效率,避免重复造轮子。

wKgaomcV7LyAeDBYAACmhQGZi34450.png

图1

这里给出一个名词:延迟链。可能你没有听过,但是上面的“打拍”操作是不是有点像这个名词的字面意思?这里就不介绍它了,下面直接给出我的代码,本代码实现了参数化的延迟链功能。其中,DW是Data Width的缩写,意思是待延迟的数据的位宽。比如上面图1代码中的数据位宽为1位(cs_n1dly)。比如有些地址、数据位32位,打3拍,那么把DW设置为32,LEN设置为3。本代码已经经过仿真,功能正确。 放出完整代码,如下:

wKgaomcV7MaAGi3iAAC4GItoMKM516.png

wKgZomcV7NCAWqaaAAEC9PexksY233.png

wKgaomcV7NqAKeYGAABh5QAwmwU001.jpg

wKgZomcV7OKAXcR6AADP4tFd_oQ414.png

图3

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

    关注

    0

    文章

    46

    浏览量

    13222
  • 模块化
    +关注

    关注

    0

    文章

    327

    浏览量

    21311
  • 代码
    +关注

    关注

    30

    文章

    4708

    浏览量

    68171

原文标题:零碎知识 | 参数化的延迟链代码分享

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

收藏 人收藏

    评论

    相关推荐

    如何有效评估SAN网络延迟(latency)?

    SAN网络性能有着至关重要的作用,今天主要给家介绍SAN网络主要延迟类型(主要包括延迟和交换机延迟,主机延迟和存储
    发表于 01-07 16:20

    区块软件谈:去中心原理

    `区块软件谈:去中心原理最大基尼系数:区块去中心程度的粗略衡量标准我们可以把子系统去中心的这些衡量标准样例结合,来衡量一个系统的去
    发表于 11-20 16:02

    基于高速串行数字技术的JESD204B路延时设计

    延迟变体之间的权衡因素使用公式和基于规程的方法来设计延迟使用德州仪器 (TI) 的 ADC16DX370 或 LM97937 ADC 以及 Xilinx Kintex 7 FPG
    发表于 11-21 16:51

    请问,要搭一个传输路,路中的ADC和DAC的参数,比如:采样率和分辨率一定要一样吗?

    请问,要搭一个传输路,路中的ADC和DAC的参数,比如:采样率和分辨率一定要一样吗?中频模拟信号,先模数转换数字进行传输,之后需要数模转换,前后的ADC和DAC采样率和位数是否要
    发表于 01-18 19:45

    使用iMPACT无法初始

    使用iMPACT我无法初始。在初始边界扫描时,弹出以下错误:有许多未知设备被检测到。按是继续或按否停止。我还收到以下错误:错误:iMPACT - 硬件配置中可能存在问题。电缆,扫描和电源连接
    发表于 09-16 10:32

    内联延迟参数太大

    你好,我是这个嵌入式程序的新手。我想眨一下2s延时的LED灯。AM使用OSC。FRQ30MHz,PIC-18F420,MPLABXIDE,XC8编译器。我得到一个错误的错误:(1355)内联延迟参数
    发表于 10-22 12:19

    使用UCOSIII延迟发布在临界段代码发生中断

    各位好,我想问个问题,就是如果使用延迟发布,在临界段代码中发生了中断,是不是将参数什么的写入终端队列后,让中断队列处理任务进入就绪态,但此时因为任务调度器是锁定的,应该会先把中断任务处的临界段
    发表于 04-21 04:35

    如何用HT-3000IDE的V3代码生成器来生成延迟函数

    的V3代码生成器来生成延迟函数。这一次的流水灯程序一个是用板子上的两个LED来左右闪烁,二者是利用左移或者右移函数来实现。延迟函数的生成点击工具,再点击V3代码生成器,会出来如下窗口。
    发表于 12-06 06:55

    在SpinalHDL中的代码组织结构如何实现Component参数设计呢

    方式:some.where.else.theSignal.pull()在生成RTL代码时,会讲该信号声明一个端口链接偷穿到我们这一级的Component。Component参数设计与我们编写Verilog时相同,在Spinal
    发表于 07-21 14:20

    FPGA设计硬件语言Verilog中的参数

    FPGA 设计的硬件语言Verilog中的参数有两种关键词:define 和 paramerter,参数的主要目的是代码易维护、易移植和
    发表于 12-26 09:53 857次阅读

    视频参数的视觉影响:色度到亮度延迟的影响

    设计人员必须注意几个重要参数,以保持处理复合视频信号(CVBS)的图像质量。色度和亮度,光信号的颜色和亮度,是两个这样的参数。色度到亮度延迟失配参数与群
    的头像 发表于 01-13 14:23 2415次阅读
    视频<b class='flag-5'>参数</b>的视觉影响:色度到亮度<b class='flag-5'>延迟</b>的影响

    履约核心引擎低代码原理与实践

    基于此,京东供应研发部自研了一套,面向业务角色的海纳低代码规则引擎平台,产品定位是面向业务、研发多角色一体的零低代码开发平台,这其中规则引擎是其最核心的部分之一。
    的头像 发表于 04-11 09:55 582次阅读

    参数RTL的验证思路

    参数代码需要在灵活性和复杂性之间做出平衡,而且高度参数代码的验证是一个非常具有挑战性的工作
    的头像 发表于 05-05 09:16 1584次阅读
    <b class='flag-5'>参数</b><b class='flag-5'>化</b>RTL的验证思路

    如何使用参数编写可重用的verilog代码

    ,因为我们可以更轻松地将代码从一个设计移植到另一个设计。 我们在verilog中有两个可用的结构,可以帮助我们编写可重用的代码 - 参数和generate语句。这两种结构都允许
    的头像 发表于 05-11 15:59 1045次阅读

    单片机开发过程中5种延迟代码执行的技术

    在单片机项目开发过程中,经常会出现一个有趣的问题,即弄清楚如何延迟代码执行。有时,[单片机开发]人员可能只是希望有10微秒的延迟,以使I/O线在读取之前稳定下来,或者可能希望在两次读取之间指定的时间间隔使它反跳。在本文中,我们将
    的头像 发表于 07-10 10:43 2112次阅读