前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Verilog中用于时序验证的系统任务[setup][hold][skew][width][recovery][removal]

Verilog中用于时序验证的系统任务[setup][hold][skew][width][recovery][removal]

作者头像
FPGA探索者
发布2021-05-26 11:49:04
发布2021-05-26 11:49:04
2.5K0
举报
文章被收录于专栏:FPGA探索者FPGA探索者

下列 时序检查语句 错误的是()

A. $setup(posedge clk, data, tSU)

B. $hold(posedge clk, data, tHLD)

C. $setuphold(posedge clk, data, tSU, tHLD)

答案:A

解析:

在时序检查函数中,$setup 函数比较特殊,格式是:

$setup(data_event, reference_event, limit);

其他常见的检查是:

$......(reference_event, data_event, limit);

假设信号名称为 data,时钟 clk 的上升沿触发 posedge clk,要求 setup 满足 tSU,则

$setup(data, posedge clk, tSU);

常用的时序检查语句

(1)setup 建立时间检查

$setup(data, posedge clk, tSU);

(2)hold 保持时间检查

$hold(posedge clk, data, tHLD);

(3)setuphold 建立/保持时间检查

$setuphold(posedge clk, data, tSU, tHLD);

(4)width 脉冲宽度检查

$width(posedge clk, 4);

(5)skew 时钟歪斜检查

$skew(posedge clk1, posedge clk2, 4);

(6)period 时钟周期检查

$period(posedge clk, 5);

(7)recovery 复位信号的恢复时间检查

$recovery(posedge rst, posedge clk, 3);

(8)removal 复位信号的移除时间检查

$removal(posedge rst, posedge clk, 3);

(9)recrem 复位信号的恢复/移除时间检查

$recrem(posedge rst, posedge clk, recovery_limit, removal_limit);

四个基础的时序分析

(1)对于时钟和数据信号,分析setup建立时间和hold保持时间

setup 建立时间:在有效的时钟沿来临前,数据需要保持稳定的最短时间,简写为Tsu;

hold 保持时间:在有效的时钟沿来临后,数据需要保持稳定的最短时间,简写为 Th;

(2)对于时钟和异步复位信号,分析recovery恢复时间和removal移除时间

recovery 恢复时间:在有效的时钟沿来临前,异步复位信号保持稳定的最短时间;

removal 移除时间:在有效的时钟沿来临后,异步复位信号保持稳定的最短时间,在这个时间以后,才可以移除复位信号;

FPGA中亚稳态【Tsu建立时间】【Th保持时间】【Tmet决断时间】【recovery恢复时间】【removal移除时间】

【FPGA探索者】

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-05-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FPGA探索者 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档