随笔分类 -  IC_LK_Verification

摘要:clocking会设置input和output的延时 default input #3ns output #1ns 数据是在时钟上升沿驱动的,在时钟上升沿,将vld驱动到dut,dut中也会在时钟上升沿采样vld 认为加大delay之后,可以直接看到采样到的是什么信号,所以可以通过clocking中 阅读全文
posted @ 2024-01-20 20:20 Icer_Newer 阅读(54) 评论(0) 推荐(0)
摘要:数据类型 内建数据类型 reg - 是变量类型 wire - 是线网类型 system verilog - 是verilog的新版本 system verilog文件都是.sv后缀的 DFF/latch - 对于verilog而言都是使用的reg类型 logic - 可以替代reg/wire log 阅读全文
posted @ 2024-01-14 22:36 Icer_Newer 阅读(45) 评论(0) 推荐(0)
摘要:接口 module可以例化模块,可以例化接口 接口不能例化模块 采样和数据驱动 时钟驱动数据,数据会有延迟,RTL仿真的时候,不会仿真出这个延时;RTL仿真的时候,不会仿真出寄存器的延时;只有在门级仿真的时候,才会表现出来 时钟对于组合电路的驱动会默认增加一个无限最小的时间的延时(delta-cyc 阅读全文
posted @ 2023-12-26 23:24 Icer_Newer 阅读(567) 评论(0) 推荐(0)
摘要:概述 接口 main bus有很多信号线 verilog会先将模块的输出信号拉出来,然后再将其连接到其他模块,进行不同模块之间的连接比较麻烦且容易出错 interface - 将端口封装到接口中 接口的内容 interface和module用法类似 interface......endinterfa 阅读全文
posted @ 2023-12-10 17:35 Icer_Newer 阅读(29) 评论(0) 推荐(0)
摘要:过程语句块特性 ABC 过程块语句 always_comb 防止多驱动的问题:赋值块左侧的语句无法被另一个过程块赋值 if语句没有写else,sv会提示警告,sv认为是latch always不会再仿真0时刻进行触发 敏感列表 - 只要列表中的变量变化一次,always块中的语句就执行一次 alwa 阅读全文
posted @ 2023-12-10 15:11 Icer_Newer 阅读(58) 评论(0) 推荐(1)
摘要:概述 常见使用方式 string b; string b=""; // 拼接字符串 string a = {"hi",b}; // 将字符串a赋值给[15:0]长度的变量r // 将字符串赋值给四值逻辑logic - 使用显式数据类型转换 // 显式数据类型转换:dst = T'(src) r = 阅读全文
posted @ 2023-12-10 08:34 Icer_Newer 阅读(437) 评论(0) 推荐(1)
摘要:概述 自定义类型 枚举类型 定义枚举值 自定义枚举类型 枚举类型之间进行赋值是可以的 枚举类型可以赋值给整型,整型不能直接赋值给枚举类型 枚举类型 + 1 ==> 会进行隐式的转换,枚举类型转换为int类型,结果为int类型,然后在赋值给枚举类型是不允许的 D 结构体类型 阅读全文
posted @ 2023-12-09 21:31 Icer_Newer 阅读(47) 评论(0) 推荐(0)
摘要:Verilog数据类型 变量类型 - 用于存储值 线网类型 - 用于连接硬件模块 reg - 在硬件中可能会被综合成DFF和Latch 线网类型 线网的驱动 - 可以是门,也可以是实例化的门 变量只能通过过程赋值进行赋值 - initial/always integer - 32bit,有符号数 - 阅读全文
posted @ 2023-12-09 20:37 Icer_Newer 阅读(171) 评论(0) 推荐(0)
摘要:System Verilog概述 路科验证视频,B站可看(补充一下知识) 学习SV之前,最好有Verilog基础 SV诞生 SV发展历史 Verilog - 偏向于设计 System Verilog - 偏向于验证 SV的语言继承历史 阅读全文
posted @ 2023-12-09 19:47 Icer_Newer 阅读(19) 评论(0) 推荐(0)