![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔试题
文章平均质量分 83
小小verifier
材料转IC验证,分享每天学习笔记和心得...Keep hungry!Keep foolish!
展开
-
跨时钟域传输和Verilog代码
文章目录基本概念一、单bit信号1.慢时钟域信号同步到快时钟域2.快时钟域信号同步到慢时钟域3.结绳法处理单bit信号跨时钟域二、多bit控制信号跨时钟域同步三、多bit数据流跨时钟域同步前面我们谈到了亚稳态的产生与处理,在异步信号进行跨时钟域传输时,很大概率会产生亚稳态的问题,那么该如何解决跨时钟域信号传输的问题呢?跨时钟域信号分为单bit控制信号、多比特控制信号和多bit数据流传输,依照这个进行分类处理。基本概念同步电路:即电路中所有受时钟控制的单元(寄存器和触发器)全部由一个统一的全局时钟控制。原创 2021-07-18 11:54:16 · 9379 阅读 · 10 评论 -
IC验证面试-如何发送错误异常激励?
文章目录如何发送错误激励前言方法1 - 关闭约束方法2 - SV中约束重载方法3 - UVM工厂覆盖如何发送错误激励前言本文均以产生异常的CRC校验位为例。首先错误的激励是异常情况,而大多数的情况都是发送正常的激励。如果直接在transaction中添加一个错误激励的标致位,如下:class my_transaction extends uvm_sequence_item; rand bit[7:0] addr rand bit[31:0] data; rand bit[31:0] c原创 2021-07-31 14:23:01 · 2551 阅读 · 0 评论 -
IC验证面试之手撕verilog常用的电路
总结了面试常见的一些需要手撕代码的电路,和一些高频被问到的相关电路:其他精彩:IC验证面试之数电、IC验证面试之UVM、IC验证面试之断言;1. 分频电路2. 序列检测器3. 伪随机码4. 时钟切换无毛刺电路5. 同步FIFO6. 异步FIFO7. 数据累加8. FIR滤波器9. 异步复位、同步释放10. 线性反馈移位寄存器11. CRC校验码产生器【持续更新中…】...原创 2021-07-18 17:14:28 · 11021 阅读 · 4 评论 -
IC验证面试之数电
文章目录1.原码、反码和补码?2.格雷码?优点?格雷码与二进制转换?3. PMOS和NMOS?增强型和耗尽型?PNP和NPN?4. 用COMS搭反相器、与或门和或非门?反相器与非门或非门5.奇偶校验位?如何计算?以下均为个人答案,水平有限,仅供参考。如有解释不对的地方,欢迎大家评论区留言一起学习交流【持续搜集更新中…】更多精彩请看IC验证面试之UVM、IC验证面试之断言1.原码、反码和补码?原码:在二进数前面增加一位符号位,0表示正数,1表示复数,这种形式的数称为原码。反码:符号位保留,其他未原创 2021-07-16 15:40:10 · 4861 阅读 · 6 评论 -
IC验证面试之UVM(一)
1.UVM中,工厂覆盖机制的3个条件?也就是在问,怎样才能确保可以正确覆盖(override)。首先确保原始类和覆盖类都应在工厂中注册,原始类应该通过工厂实例化(使用type::type_id::create( )的方式,而不是传统的new()的方式);覆盖方法应该在原始类的对象创建之前被调用;覆盖类为原始类的子类,而调用成员方法(原始类中)也应当声明为虚方法,这是为了确保句柄类型转换不会出错。注意,覆盖类为原始类的父类时会报错2.monitor存在的必要性?由于transaction是由d原创 2021-07-08 10:49:07 · 6110 阅读 · 2 评论 -
IC验证面试之UVM(二)
文章目录4.UVM环境中的通信机制?5.UVM中的port、export和imp?6.UVM中run_phase和main_phase的区别?7.UVM中sequence要去调用sequencer中的东西,怎么调用?8.UVM中工厂覆盖机制和callback的区别?以下为个人答案,水平有限,如有解释不对的地方,欢迎大家评论区留言一起学习交流。4.UVM环境中的通信机制?使用TLM进行组件之间的通信。优点有一下:TLM通信保证了相邻组件之间的通信不再通过显式句柄引用,而是独立于组件的通信方式,为原创 2021-07-14 13:16:43 · 5987 阅读 · 3 评论 -
IC验证面试之断言
文章目录1.断言中两个sequence如何同时开始、同时结束?2.断言中怎么表示信号上升沿?3.断言中的 $firstmatch什么意思?以下均为个人答案,水平有限,仅供参考。如有解释不对的地方,欢迎大家评论区留言一起学习交流【持续搜集更新中…】注:更多的细节知识点可以看Assertion断言1.断言中两个sequence如何同时开始、同时结束?使用intersect操作符,SEQ1 intersect SEQ2,可以完成两个sequence同时开始并同时结束。intersect操作符要求:需原创 2021-07-15 23:04:08 · 2611 阅读 · 0 评论