当前位置: 首页 > news >正文

clock的时钟频率check代码

 在芯片验证中,经常遇到需要check时钟频率的场景,由于时钟数量有很多,手动写代码得到后年马月,所以我这边写了一个宏define,可以通过输入参数的形式验证需要check的时钟频率,大大提升了验证效率和准确率!!!

`define check_boot_start_crg(ref_freq,clk_path)\forever begin\@(posedge clk_path)\if(cnt == 0) t1 = $realtime;\if(cnt == 1) begin\t2 = $realtime;\freq1 = t2-t1;\$display("t1 = %of, t2 = %0f, freq1 = %0f at time %t", t1, t2, $realtime);\end\if(cnt == 2) begin\t3 = $realtime;\freq2 = t3-t2;\$display("t2 = %of, t3 = %0f, freq2 = %0f at time %t", t1, t2, $realtime);\end\if((freq1 == freq2) && (freq1 != 0)) begin\frequency = freq1;\$display("freqency = %of, ref_freq = %0f at time %t", freqency, ref_freq, $realtime);\if((frequency <= ref_freq*0.99) || (frequency >= ref_freq*1.01)) begin\`uvm_error("soc_clk_check", "clk_path check Failed")else begin`uvm_info("soc_clk_check", "clk_path check Pass", UVM_LOW)\break;\end\end\if(cnt < 2) cnt = cnt + 1;\else if(cnt == 2) cnt = 0;\end\

 

相关文章:

  • 关于FPGA 和 ASIC设计选择方向的讨论
  • 仅修改文件名会导致文件的MD5值发生变化吗?
  • 关于C++使用位运算交换变量值的分析
  • node.js如何实现双 Token + Cookie 存储 + 无感刷新机制
  • Frp Dockr Mysql内网映射
  • 乘法逆元:费马小定理(利用快速乘法幂)(JAVA)
  • JAVA批量发送邮件(含excel内容)
  • 在 Excel xll 自动注册操作 中使用东方仙盟软件2————仙盟创梦IDE
  • 算法打卡第三天
  • C#开发利器:SharpBoxesCore全解析
  • 49、c# 能⽤foreach 遍历访问的对象需满足什么条件?
  • Unity3D序列化机制详解
  • CMMI(能力成熟度模型集成)详解及5个级别案例
  • 平衡二叉树的判定:回溯法的深度解析与迭代法拓展
  • 台风灾害下考虑调节特性的多元资源紧急协调调度
  • vue3:十三、分类管理-表格--模糊查询搜索框
  • 腾讯位置服务重构出行行业的技术底层逻辑
  • Java SE 抽象类和接口(下)
  • 【题解-洛谷】B4240 [海淀区小学组 2025] 最短字符串
  • NIFI的处理器:ExecuteGroovyScript 2.4.0
  • 怎么做网站上面的那种卡通图片/seo人人网
  • 成品免费观看网站/哈尔滨seo优化
  • 网站建设流程图viso/9个广州seo推广神技
  • 网站源码带采集/软文案例短篇
  • 在美国克罗格做网站怎样/qq群排名优化
  • 网站建设用什么网站好一点/网站运营推广方案