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

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

3天内不再提示

数字实现过程中的惯性延迟和传输延迟

冬至子 来源:芯光灿烂 作者:魏老师 2023-11-07 17:23 次阅读

1 基本概念

在数字实现过程中,延迟一般有以下几种:

分布式延迟(Distributed Delays)

一般用来指定模块内部信号通过逻辑单元或者线网耗费的时间。

模块路径延迟(Module Path Delays)

模块路径一般指从源(输入端口或者输入输出端口)到目的(输出端口或者输入输出端口)的路径,模块路径延迟是信号从源传输到目的地所耗费的时间,即模块内部延迟。下图为模块路径延迟为10的示意图:

图片

注意:模块路径延迟一般在“specify-endspecify”中指定。

互联线延迟(Interconnect Delays)

当两个模块通过线网连接时,信号从一个模块单元传递到另一个模块单元会耗费一定的时间,数据模块间的延迟,即互联线延迟。下图为互联线延迟为10的示意图:

图片

2 延迟

仿真过程中,经常会遇到传输延迟和惯性延迟,用来模拟实际的互联线延迟和模块间延迟。分布式延迟在仿真时一般都作为惯性延迟处理。

2.1 传输延迟

传输延迟一般为输入信号变化到对应输出信号变化经过的时间,不会对输入信号进行滤除处理,所以传输延迟是一种绝对延迟,这种延迟类似于物理传输线的延迟,在仿真中用于模拟连线延迟。如下图所示,输入一般不会被滤除。

图片

.2.2 惯性延迟

惯性延迟考虑了电路中存在大量的分布电容,信号在电路中传输存在对电容充放电效应,

当输入较小宽度的脉冲将会被滤除,即不允许所有宽度小于指定延迟的脉冲通过电路单元,那么能够让对应输出有变化的最小脉冲宽度即为惯性延迟,是所有的电子器件均存在的一种延迟特性,因此为了使器件对输入信号的变化产生响应,信号变化后要维持足够长的时间,在仿真过程中,该延迟用于模拟元件延迟。一般原语、门单元、开关单元、连续赋值等中的延迟在模拟时均为惯性延迟。

如下图所示,输入较小脉冲宽度的信号被滤除:

图片

2.3 仿真延迟

在仿真中,如果在仿真的elaboration过程中没有显示指定延迟的类型,那么仿真器一般都会将代码中指定的延迟作为惯性延迟处理,即此时小于指定延迟宽度的脉冲将被滤除。为了说明不同延迟的仿真效果,此处以模块路径延迟为例进行仿真说明。

【示例】

图片

仿真结果如下:

图片

此例中,在elaboration过程中没有显示指定仿真延迟类型,一般都默认为惯性延迟,代码中标准门单元buf指定的延迟为5ns,根据惯性延迟的特点,当输入信号宽度小于指定的延迟时,该信号将不能通过该电路单元,所以上图中仅有信号宽度为5ns的信号有效通过了buf,其余信号均被屏蔽。

如果仿真过程中需要模拟传输延迟,需要在elaboration时指定相应的传输延迟参数,即使能传输延迟模拟功能,此时输入信号原则上都能通过电路单元。

【示例】

在仿真elaboration时,增加如下仿真参数:“+transport_path_delays +pulse_r/<滤除百分比> +pulse_e/<滤除百分比>”等可在仿真阶段实现传输延迟的模拟,并且配置不同的滤除百分比,输出的结果也会有差异,一般输出结果为三种情况:滤除、通过、不定态,如下图所示:

图片

其中“+pulse_r”和“+pulse_e”后指定的参数表示允许通过和滤除的信号的宽度占指定延迟的百分比。例如,如果指定延迟为5ns,参数为“+pulse_r/40”和“+pulse_e/80”(其中的40和80为百分比),那么小于2ns(5x(40%))的信号将被滤除,大于等于4ns(5x(80%))的信号将可以通过,介于两者之间的信号将输出不定太,如下例中data_in的第一个脉冲信号小于2ns被滤除,不能输出至data_out。第二、三个脉冲信号宽度均大于或等于4ns,所以均有效输出,第四个脉冲宽度为3ns,介于2ns和4ns之间,所以不能被有效输出,此时输出为不定态。

图片

注意:如果仅使用“+transport_path_delays”而不使用对脉冲宽度约束的参数(“+pulse_r/e”),那么仿真器将按照惯性延迟处理方式对输入信号进行处理,即小于指定延迟宽度的信号不能通过电路单元。同时在EDA工具中还有其他参数(“+pulse_r/e”与“+pulse_int__r/e”等),不同的参数将有不同的仿真效果,具体可参考相关EDA工具手册。

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

    关注

    4

    文章

    267

    浏览量

    31789
  • 仿真器
    +关注

    关注

    14

    文章

    1017

    浏览量

    83727
  • 传输线
    +关注

    关注

    0

    文章

    376

    浏览量

    24023
  • 脉冲信号
    +关注

    关注

    6

    文章

    398

    浏览量

    36957
收藏 人收藏

    评论

    相关推荐

    延迟队列的实现方式

    由MQ消费到完整的数据则直接处理,否则进入其他流程。 针对这种场景使用了延迟任务来实现,以此为契机对延迟任务相关的技术做了个简单了解... 简介
    的头像 发表于 09-30 11:17 810次阅读

    在同步电路中影响性能都有哪些方面呢?传输延迟惯性延迟怎么形成的呢?映射到硬件上怎么形成这种现象呢?

    在同步电路中影响性能都有哪些方面呢?传输延迟惯性延迟怎么形成的呢?映射到硬件上怎么形成这种现象呢?答:在连续分析课程,我们将介绍,信号在
    发表于 03-09 16:01

    无线模块通信中的数据延迟

    无线模块在无线通讯的过程中会产生延迟接收的情况,造成这一情况的因素并不全是外界因素干扰,无线通讯技术本身也存在数据延迟,下面为大家介绍无线模块传输过程中给数据
    发表于 08-09 09:17

    使用通信中的无线模块的数据延迟

    无线模块在无线通讯的过程中会产生延迟接收的情况,造成这一情况的因素并不全是外界因素干扰,无线通讯技术本身也存在数据延迟,下面为大家介绍无线模块传输过程中给数据
    发表于 08-10 09:37

    使用通信中的无线模块的数据延迟

    无线模块在无线通讯的过程中会产生延迟接收的情况,造成这一情况的因素并不全是外界因素干扰,无线通讯技术本身也存在数据延迟,下面为大家介绍无线模块传输过程中给数据
    发表于 09-08 11:06

    手动插入的代码段在MHC合并过程中不会出现延迟吗?

    HIIS有一种方法将HANCE项目中的手动代码结合起来,当从配置器生成代码时,这些手动插入的代码段在MHC合并过程中不会出现延迟?问候Nick 以上来自于百度翻译 以下为原文 Hiis
    发表于 05-05 16:55

    为什么ADS1298在初始化过程中START引脚的建立时间会有延迟

    关于 ADS1298,我想澄清下列问题:1. 为什么 ADS1298 在初始化过程中 START 引脚的建立时间会有延迟?如果输入信号在该建立时间过程中 (tsettle) 发生变化,会出现什么情况
    发表于 05-30 14:50

    JTIDS信息传输时间延迟分析

    针对JTIDS的信息传输时间延迟问题,分析JTIDS两点之间的3种信息传输过程(直接信息传输、通过中继站信息
    发表于 04-11 09:20 20次下载

    分析模拟延迟数字延迟

    磁带延迟效果与单块的作用原理不同,磁带延迟使用的是通过录音的方式然后通过磁带的循环播放来实现。磁带延迟相当受欢迎,因为它能够提供多种延迟时间
    发表于 06-17 14:15 6187次阅读

    allegro软件的绝对传输延迟是什么,绝对传输延迟应该怎么设置呢?

    与相对传输延迟。绝对传输延迟,顾名思义,信号传输在PCB设计中都是有一个走线的长度,我们通过设置这个信号线
    的头像 发表于 04-15 11:28 3982次阅读

    基于Flash FPGA器件实现脉冲延迟控制系统的设计

    在科学研究、通信和一些自动控制,经常需要精确定时的连续脉冲信号,用于产生测试信号或控制用的时序。脉冲延迟的基本方法可分为数字方法和模拟方法。数字方法采用计数器或存储器
    发表于 08-11 17:36 1312次阅读
    基于Flash FPGA器件<b class='flag-5'>实现</b>脉冲<b class='flag-5'>延迟</b>控制系统的设计

    实时MCU如何实现超低延迟

    本文介绍实时 MCU 如何实现超低延迟
    的头像 发表于 12-22 11:51 1308次阅读

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

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

    如何衡量工业交换机的延迟

    网络延迟是指在工业网络交换机,数据在传输和处理过程中产生的额外时间延迟。网络延迟是由许多不同因
    的头像 发表于 12-13 16:08 430次阅读

    如何测量差分探头的传播延迟呢?

    台仪器上的两个时钟信号减去。为了完成这一步骤,可以按照以下过程进行: 1. 准备好一个出现快速变化的测试信号源。这样可以在测量过程中更容易观察到延迟的差异。 2. 将测试信号源连接到差分探头的输入端口,并将差分探头的输出
    的头像 发表于 01-17 11:32 932次阅读