2018年8月14日

SV fork-join

摘要: 1.通过for循环和fork ... join_none建立N个独立的线程 其中automatic int k 是关键的地方 2.disable a thread: 3.disable multi thread: 4.disable a labed thread: 5.disable a task: 阅读全文

posted @ 2018-08-14 00:15 hematologist 阅读(739) 评论(0) 推荐(0) 编辑

2018年8月13日

8-13、广度优先搜索

摘要: 1、广度优先搜索,用于图的查找算法,解决两个问题: 从节点A出发,有前往节点B的路径吗? 从节点A出发,前往节点B的哪条路径最短? 结果: 找到了最后一个字符为m的人。 1、用散列表可以表示图的链接关系。 阅读全文

posted @ 2018-08-13 23:43 hematologist 阅读(172) 评论(0) 推荐(0) 编辑

SV 输出信息到文件的几种方式

摘要: 1、IC验证过程中文件的读写经常用到,高效简介明了的文件操作方式值得记录: 1、方式一:$sformatf() 在一个数据计算模块的验证中,需要灌入文件类型的特定数据,为了能够使得test 能够随机吃入不同的源文件, 在数据包的定义中,增加一个int 类型的控制变量src_type用来选择源数据文件 阅读全文

posted @ 2018-08-13 22:19 hematologist 阅读(2595) 评论(0) 推荐(0) 编辑

2018年6月14日

I2S 相关参数的记录 MCLK、BCLK、256fs等等

摘要: https://blog.csdn.net/lugandong/article/details/72468831 1. I2S BCLK, SRCLK 2. fs 计算过程 拿512fs说话:看图知道采样的位深是32bit(位),左右声道各占了8*32BCLK,那一个完整的LRCLK一共8*32*2 阅读全文

posted @ 2018-06-14 14:07 hematologist 阅读(6509) 评论(0) 推荐(1) 编辑

2018年4月1日

sv package

摘要: 1. package 的用法: 包提供了一个编译范围,可以在其中进行类型、类、函数、任务和其他声明。然后可以在其他作用域(其他包或顶级编译单元作用域)中导入包。 包非常类似于C++中的命名空间。它们提供了一个以“打包”方式编译代码的区域,然后可以导入并在其他地方使用。 package 提供了一种在多 阅读全文

posted @ 2018-04-01 14:58 hematologist 阅读(776) 评论(0) 推荐(0) 编辑

2018年3月28日

DPI-C

摘要: 1、DPI-C 的使用: 2、SV 和 C 的数据类型转换 SV 的输出在C中申明为指针。 SV中的数组在C中申明为指针。 可以通过C Macro SV_PACKED_DATA_NELEMS() 自动转换。 3、SV 和 C 的函数转换实例 4、SV Open Array 5、SV 和C 数据输入输 阅读全文

posted @ 2018-03-28 00:41 hematologist 阅读(1201) 评论(0) 推荐(0) 编辑

2018年3月25日

C 笔记

摘要: 1.linux 下的C 代码的主函数都是 int main(int argc char *argv[]) ,其表示的意义和用法是什么? argc是命令行总的参数个数argv[]是argc个参数,其中第0个参数是程序的全名,以后的参数命令行后面跟的用户输入的参数, 2.const int a ; 和 阅读全文

posted @ 2018-03-25 22:21 hematologist 阅读(188) 评论(0) 推荐(0) 编辑

2018年3月15日

UVM seq,seqr,driver

摘要: 1.sequence,sequencer,driver关系图 阅读全文

posted @ 2018-03-15 23:56 hematologist 阅读(191) 评论(0) 推荐(0) 编辑

SVA & Function Coverage

摘要: 1、SVA中的 $使用: 1、无限制的delay 2、连续的delay 3、request-grant 协议 4、multi hreading 导致错误 2、前置是条件,后置直接为0. 阅读全文

posted @ 2018-03-15 00:24 hematologist 阅读(496) 评论(0) 推荐(0) 编辑

2018年3月14日

sv 约束问题

摘要: 1、默认取值和注错取值 有时候transactiont中的变量var,在写case时如果我们不对他进行约束,它在默认的一个范围内取值,而某些我们希望对它取默认范围之外的数值时,这时候可以有下面几种做法。 1、提前规划,在transaction定义时额外加入一个ex_flag,当ex_flag=0时v 阅读全文

posted @ 2018-03-14 20:09 hematologist 阅读(1288) 评论(1) 推荐(0) 编辑

导航