output delay含义

output delay的含义是数据在时钟沿前什么时候稳定才能被正确采样。
包含Tpd(路径传输延迟)和Tsetup(后级触发器建立时间)

在这里插入图片描述

在进行时序检查计算时,应该将output delay放在require time路径中,并减去output delay值
如下图:数据必须在7.4前稳定(setup),必须在20后0.2ns内稳定(hold)
数据相对于capture clock的关系,在capture clock edge前为正,后为负。
在时序检查时应该减去Tsetup的值,加上Thold的值,因此在output delay中应该减去Thold。
在这里插入图片描述
在这里插入图片描述
The max path delay is 7.4ns(=max Tc2 plus Tsetup = 7+0.4)。The min path delay is -0.2(=min Tc2 minus Thold = 0-0.2).

This depicts that the data must be ready at the output port before the required stable region starts and must remain stable until the end of the stable region.

set_output _delay是你对外部电路的所需时间的估计,你设定好了外部所需的时间,综合工具就为按照你给的条件对内部的电路进行优化。

A hold requirements of 1.5ns maps to a set_output_delay min of -1.5ns.

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
帮我更加完善下面程序适合arduino1.5.2运行。#include"LedControl.h" LedControl lc=LedControl(13,11,12,1); byte d[8]={ B00001000, B00000100, B00000010, B11111111, B11111111, B00000010, B00000100, B00001000,}; byte h[8]={ B00010000, B00100000, B01000000, B11111111, B11111111, B01000000, B00100000, B00010000,}; int k1=0; int k2=0; int keypin1=10; int keypin2=3; int redpin = 4; int yellowpin = 5; int greenpin = 6; int redpin2 = 7; int yellowpin2 = 8; int greenpin2 = 9; void setup() { lc.shutdown(0,false); lc.setIntensity(0,3); lc.clearDisplay(0); pinMode(keypin1,INPUT); pinMode(keypin2,INPUT); pinMode(redpin,OUTPUT); pinMode(yellowpin,OUTPUT); pinMode(greenpin,OUTPUT); pinMode(redpin2,OUTPUT); pinMode(yellowpin2,OUTPUT); pinMode(greenpin2,OUTPUT); } void loop() { k2=digitalRead(keypin2); if(k2==LOW) { k1=digitalRead(keypin1); if(k1==LOW) { lc.clearDisplay(0); for(int row=0;row<8;row++) lc.setRow(0,row,h[row]); digitalWrite(redpin,HIGH); digitalWrite(greenpin2,HIGH); delay(7000); digitalWrite(redpin,LOW); digitalWrite(yellowpin,HIGH); delay(500); digitalWrite(yellowpin,LOW); delay(500); digitalWrite(yellowpin,HIGH); delay(500); digitalWrite(yellowpin,LOW); delay(500); digitalWrite(yellowpin,HIGH); delay(500); digitalWrite(yellowpin,LOW); delay(500); lc.clearDisplay(0); for(int row=0;row<8;row++) lc.setRow(0,row,d[row]); digitalWrite(greenpin2,LOW); digitalWrite(greenpin,HIGH); digitalWrite(redpin,LOW); digitalWrite(redpin2,HIGH); digitalWrite(yellowpin,LOW); delay(7000); digitalWrite(redpin2,LOW); digitalWrite(yellowpin2,HIGH); delay(500); digitalWrite(yellowpin2,LOW); delay(500); digitalWrite(yellowpin2,HIGH); delay(500); digitalWrite(yellowpin2,LOW); delay(500); digitalWrite(yellowpin2,HIGH); delay(500); digitalWrite(yellowpin2,LOW); delay(500); digitalWrite(yellowpin2,LOW); digitalWrite(greenpin,LOW); } else if(k1==HIGH) { lc.clearDisplay(0); for(int row=0;row<8;row++) lc.setRow(0,row,h[row]); digitalWrite(redpin,HIGH); digitalWrite(greenpin2,HIGH); delay(15000); digitalWrite(redpin,LOW); digitalWrite(yellowpin,HIGH); delay(500); digitalWrite(yellowpin,LOW); delay(500); digitalWrite(yellowpin,HIGH); delay(500); digitalWrite(yellowpin,LOW); delay(500); digitalWrite(yellowpin,HIGH); delay(500); digitalWrite(yellowpin,LOW); delay(500); lc.clearDisplay(0); for(int row=0;row<8;row++) lc.setRow(0,row,d[row]); digitalWrite(greenpin2,LOW); digitalWrite(greenpin,HIGH); digitalWrite(redpin,LOW); digitalWrite(redpin2,HIGH); digitalWrite(yellowpin,LOW); delay(15000); digitalWrite(redpin2,LOW); digitalWrite(yellowpin2,HIGH); delay(500); digitalWrite(yellowpin2,LOW); delay(500); digitalWrite(yellowpin2,HIGH); delay(500); digitalWrite(yellowpin2,LOW); delay(500); digitalWrite(yellowpin2,HIGH); delay(500); digitalWrite(yellowpin2,LOW); delay(500); digitalWrite(yellowpin2,LOW); digitalWrite(greenpin,LOW); } } else if(k2==HIGH) digitalWrite(redpin,HIGH); digitalWrite(redpin2,HIGH); delay(5000); digitalWrite(redpin,LOW); digitalWrite(redpin2,LOW); }
05-17

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值