详细使用参考用户手册。
$shm_open(“wave.shm”, , , , , ,)
1 2 3 4 5 6
位置1:波形数据*.trn file存放的文件夹名字
位置2:值为空
位置3:设置波形数据的最大容量。单位:bytes。值为空则无上限
位置4: 值为空
位置5: 设置波形数据递增的容量。单位:MB。
位置6:设置波形数据递增的最大个数。值为空则无上限
Exp:
- $shm_open(“wave.shm”, , 10240000000)
波形数据最大容量为10240000000bytes=10GB,如果实际超出10GB,则收集仿真时间靠后的10GB波形
- $shm_open(“wave.shm”, , , , 1024)
如果实际波形为10G,则原来的1个case.trn波形数据会被分割成每份1024MB=1GB,一共10份的波形数据(case1.trn,case2.trn,……case10.trn)
- $shm_open(“wave.shm”, , , , 1024,5)
如果实际波形为10G,则按照1GB一个波形数据递增,最多有5个波形数据(case6.trn,case7.trn…..case10.trn)。则收集仿真时间靠后的5GB波形。
$shm_probe(scope, “node”);
scope:采集波形的范围
node:采集波形范围中的节点
A | 指定范围的所有节点(包括端口port) |
S | 指定范围及其以下所有端口,不包括库单元内部 |
C | 指定范围及其以下所有端口,包括库单元内部 |
AS | 指定范围的所有节点(包括端口port),不包括库单元内部 |
M | 指定范围的memories |
T | 指定范围的task |
F | 指定范围的function |
node可以随意搭配,不分先后顺序。
$shm_probe(top,”AC”)
采集top模块下所有节点(包括端口port),以及库单元内部
$shm_probe(top.DUT.u0,”AS”,top.DUT.u1,”AM”)
采集top.DUT.u0模块下所有节点(包括端口),不包括库单元内部;采集top.DUT.u1模块下所有节点(包括端口),以及memories