- 博客(5)
- 收藏
- 关注
转载 Perl面向对象与面向过程的思考
应用介绍 在IC验证中,需要对每个模块输入若干测试向量,来验证电路功能。手写的测试向量不足以代表所有的输入组合,而自动测试向量生成又会产生过多测试向量,因此采用了一种折衷的方法,通过种子随机生成测试向量。不断跑不同种子的testcase的工作称为regression,目的是发现不常见的bug。 实现方法 脚本结构 我实现的Perl脚本功能分为两块,一个是代码版本更新与编译检查。虽...
2016-02-18 18:45:00
245
转载 Perl脚本调用的优缺点
Perl脚本在运行时作为一个独立的进程,调用另一个脚本意味着创建一个子进程,这和函数调用有着本质的区别,函数调用是一个进程中执行了一段独立代码。这是特别需要注意的前提,下面总结了这种机制的优缺点。 优点 并行性。进程之间是独立的、并发的,因此脚本调用脚本时,这两个脚本可以是并行工作的,子脚本又可以调用子脚本,并行性可以无限扩展,运行效率高。 兼容性。一行命令就能调用其它脚本语言...
2016-02-18 18:44:00
458
转载 System Verilog Assertion for debug
System Verilog Assertion是非常好的验证方法,通过SVA可以显式描述需要验证的电路逻辑,并且仿真工具可以在仿真的过程中自动输出波形出错信息,从而替代传统的看波形调试方法,提高前端设计验证效率。 RTL代码结构 `ifdef SVA module m_sva(input wire signal); property p1; ex...
2016-02-18 18:22:00
512
转载 函数与变量的内存存储方案
本段内容整理自《C++ Primer第五版中文版》第9章:内存模型与名字空间 编译器通常使用三块独立的内存存储变量:一块用于静态持续变量,一块用于自动变量,一块用于动态存储。 静态持续变量有以下几种: 全局变量:在所有文件中使用 全局静态变量:在当前文件中使用 局部静态变量:在当前函数中使用 全局变量 全局变量定义在main()函数外部,其它文件要使用这个变...
2015-11-30 16:36:00
250
转载 STL中的哈希表 hash table
哈希表在STL的map库中,用到的两个主要函数为map.count()和map.insert(),分别是查找和插入操作。代码样例如下: 1 include <map> 2 3 map<int, int> hashtable; 4 if(!hashtable.count(key)) { 5 hashtable.insert(pair<i...
2015-11-28 13:35:00
276
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅