sky 14.01仿真环境笔记

1.什么是好的仿真环境?

能够产生足够多的测试向量,把功能覆盖全面;

能够自动知道仿真是pass或fail;

能够自动停止。

2.如何把功能覆盖全面?

测试点分解:详细列出测试条目;

测试pattern编写,依次覆盖每个测试点;

使用定向测试:测试主要功能与corner case;

使用random 测试:测试信号/时序间的随机情况。

3.Pattern输出给DUT的信号最好不要跟clk edge对齐。在tb顶层故意加一个#0.1;

DUT输出给pattern的信号也在tb的顶层故意加一个#0.1。

4.timescale 定义延时的时间单位/时间精度。

timescale 1ns/100ps; //100ps精确到0.1ns

#1; //delay 1ns

#1.2; //delay 1.2ns

#1.24; //delay 1.2ns

#1.25; //delay 1.3ns,作四舍五入

timescale 1ns/10ps; //10ps精确到0.01ns

timescale 10ns/100ps; //100ps精确到0.1ns

#1; //delay 10ns

#1.2; //delay 12ns

display("Time is : %t.", realtime);//系统函数获取仿真时间

相关推荐
_Narcissus_1 小时前
枚举和模拟算法笔记
c语言·数据结构·c++·笔记·算法·模拟·枚举
️学习的小王1 小时前
NumPy完整学习笔记:ndarray数组详解、创建、索引切片、常用函数与运算
笔记·学习·numpy
老当益壮梁奶奶2 小时前
Linux软件编程学习笔记(二)Linux文件IO编程入门:从fopen到fgetc
linux·c语言·c++·笔记·学习
sunoo-2292 小时前
C 语言文件 IO 全攻略:从基础函数到实战踩坑(BMP 读取 + 词典查询)
linux·c语言·前端·笔记·vscode·学习
蒸蒸yyyyzwd3 小时前
cpp选手秋招学习笔记 day12
笔记·学习·oracle
Wang's Blog3 小时前
PostgreSQL笔记38:慢查询定位与优化的系统方法论
数据库·笔记·postgresql
XiaQ09193 小时前
Linux 常用命令学习笔记(用户管理篇):用户、组与权限的钥匙
linux·开发语言·笔记·学习
He BianGu3 小时前
【笔记】使用Assembly.LoadFrom和AssemblyLoadContext加载插件对比,以及有没有更合适的加载插件方案
笔记
hhwyqwqhhwy3 小时前
正点原子-ZYNQ7020 开发笔记
笔记
LuminousCPP3 小时前
栈和队列专题(四):LeetCode 232. 用栈实现队列|双栈分工 + 按需迁移 + 摊还 O(1)
c语言·数据结构·笔记·算法·leetcode