delay和latency都有延迟的意义,在FPGA中二者又有具体的区别。

latency出现在时序逻辑电路中,表示数据从输入到输出有效经过的时间,通常以时钟周期为单位。

delay出现在组合逻辑电路、布线中,表示数据从一端到另一端经过的时间,通常以绝对时间衡量。

引起delay的有线延迟、门延迟等,通常是不希望出现的。

latency和电路的逻辑设计有关,如果latency很大,通过提升工作的时钟频率,那么绝对的响应时间不会太长。

而delay很大,那么电路的工作频率会受限,从而影响电路的整体性能。

为了减小delay,提升电路的工作频率,主要有两个方法:加时序约束和减少组合逻辑。

通过综合器加适当的时序约束,可以减少时延,但这不是主要的方式,也不能将希望寄托在时序约束上。

减少组合逻辑是主要的方法,能够保证代码的可移植性。减少组合逻辑的主要途径是切割,即将大的组合逻辑切割成小的组合逻辑。

大的组合逻辑是指多个LUT级联,FPGA的组合逻辑实现是基于LUT的(通常是4输入),即电路所有可能输出的结果都存在LUT中,输出是根据输入查表获得的。

如果输入个数大于4,那么需要LUT级联,这样会引入延迟。减小延迟的方法就是想办法将级联消除,比如一个8输入的组合逻辑,可以将8输入拆成2个4输入,同时使用一个寄存器存储中间结果,这样虽然电路的latency增加了,但逻辑延迟减小了,电路的工作频率可以得到提升。

delay是指数据应在时钟1输出,但却在时钟2输出,这就是延时,延时有线延时,门级延时等,大多数情况下是不期望的。

信道编码改进方案减少译码时延通常使用latency

学习笔记|latency 和 delay 的使用区别相关推荐

  1. VC++学习笔记(BITMAP与CBitmap的区别)

    VC++学习笔记(BITMAP与CBitmap的区别) BITMAP是一个结构,保存了一些位图的信息: CBitmap是个类,用法:CBitmap bitmap;//创建对象 bitmap.LoadB ...

  2. ASP.Net学习笔记003--网站和WebApplication的区别

    以前写的课程都没有附上源码,很抱歉! 课程中的源码可以加qq索要:1606841559 技术交流qq1群:251572072 技术交流qq2群:170933152 也可以自己下载: ASP.Net学习 ...

  3. OC语言篇—学习笔记1—C和OC的区别

    学习笔记1-C和OC的区别 1.文件的后缀名 OC:类的头文件 .h,类的实现文件 .m C:类的头文件 .h,类的实现文件.c 2.导入头文件方式 C语言使用include导入头文件,如果想多次引用 ...

  4. 【FPGA——基础篇】latency与delay概念的区别

    最近学习流水线以及状态机,总遇到注入加入寄存器可以分割组合逻辑,从而提高电路的运行频率的说法:还有流水线可以提高速度的说法,刚开始很是疑惑,觉得流水线的方法,输出与输入之间的延时更大了,怎么会提高频率 ...

  5. 蓝桥杯学习笔记三:Delay函数毫秒变微秒

    平时的HAL_Delay()都是毫秒单位的,但是进去这个函数看看的话,也看不出来是咋回事,我也不理解.但是就说在网上知道了一个方法:用SysTick_Config();这个函数就是来控制Delay函数 ...

  6. java delay 函数_RxJava 学习笔记十八 Delay延迟

    顾名思义,将推迟在指定时间内发出的值.有两种方法可以做到这一点.一种是存储值,直到您准备好发射它们为止.另一种是将订阅延迟. 最简单的Delay实现会使每个值延迟相同的时间.您可以将其视为延迟序列的开 ...

  7. 学习笔记-nil NULL NSNull Nil的区别

    nil--表示实例对象为空  例如  NSString * string = nil;                                            NSArray * arr ...

  8. (JAVA学习笔记) 关于i++和++i的区别

    关于i++和++i的区别 首先看下面一串代码: int i=0;int a = i++;System.out.println("a="+a);System.out.println( ...

  9. jQuery学习笔记:attr()与prop()的区别

    先看看官方文档是如何解释两者之间功能差异的: attr() Get the value of an attribute for the first element in the set of matc ...

最新文章

  1. post json 提示远程服务器500_解决WinServer2012R2服务器远程提示“参数错误”
  2. 0523 CSS知识点
  3. python3.8怎么打开创建_Python 3.8 新功能大揭秘【新手必学】
  4. lua——赢三张牌型处理相关算法(上)——牌值数据
  5. 分布式锁没那么难,手把手教你实现 Redis 分布锁!|保姆级教程
  6. 基于关系图卷积网络的源代码漏洞检测
  7. 2009 SD 2.0大会北京温都水城盛大召开(10月22日)
  8. 使用openjtag和openocd操作IXP425的flash
  9. LabVIEW采集鼠标、键盘数据
  10. 车规级芯片IC等级及其特点
  11. U²-Net:铅笔肖像画的生成
  12. php com组件 wps,wps插件开发中com组件权限
  13. php 图片合成gif,php将多张jpg图片生成gif动态图片的代码
  14. 人工智能伦理学的一知半解
  15. 机器学习算法——支持向量机SVM5(核函数)
  16. Note For Linux By Jes(20)-Linux 核心编译与管理
  17. go区块链培训学习:密码学算法家族
  18. 软件测试:sql注入·依赖基本sql语句
  19. PEP 8 -- Style Guide for Python Code。Python 代码规范。
  20. 【ML】特征类别整理

热门文章

  1. 在R语言中实现Logistic逻辑回归
  2. SPC Control Chart Tools for JavaScript/TypeScript
  3. 混淆电路简介(GC)
  4. 爆炸物检测技术对比与分析
  5. 计算机一级考试试题在线操作,计算机一级考试试题操作题和答案
  6. 跨年消费千万别忘记储备健康,乐摩吧共享按摩椅留住活力每一岁
  7. 退出 unix 命令
  8. idea 如何使用tomcat启动项目
  9. hotmail手机端_hotmail app下载
  10. uni-app 实现省市区三级联动