VCS simulation profile 工具有助于分析子模块仿真时间或是内存消耗状况, 对仿真时间特别长或者消耗内存特别大的案例, 借助于工具可以清楚地看到整个TB下面模块,instance或者DPI/PLI消耗的资源百分比。
1: 编译选项
在VCS编译设计和TB的时候加入下列选项
-lca -simprofile
编译结束后仔细检查编译的Log, 确认选项已经参与编译过程。2:仿真选项
-simprofile [mem/time/noprof]
mem : 仿真过程收集服务器内存消耗状态
time: 仿真过程收集设计和TB内各个模块仿真时间消耗状态。
noprof: 告诉VCS不去收集仿真时间和内存消耗状态。
eg: -simprofile time+mem -simprofile_dir_path xxx
3: 报告
一般报告有关的文件和用户验证案例的结果在同一目录下。 包含一个html文件和一个文件夹。 如果这两个文件已经存在, VCS会重命名移除。 目录名:profileReport 网页文件名: profileReport.html
4:报告后处理
profrpt simprofile_dir -output name
-view view1[+view2[+...]]
[-format text|html|ALL]
[-filter percentage]
[-snapshot [delta|incr|delta+incr]]
[-timeline [dynamic_memory_type_or_class +...]]
output用于指定用户希望的输出。
-view 用于设置报告上用户希望看到的信息。这里我使用 time_all 告诉VCS输出所以和时间有关的信息,mem_all输出所有和内存消耗有光的信息。 当然也可以使用关键字ALL输出所有VCS支持的格式。
-filter 用于指定输出特定百分比的模块或DPI/PLI信息, 缺省是输出占总仿真时间0.5%以上的模块信息。
Real Time Profile Monitoring (RPM)
profrpt -rpm simprofile_dir
-
output name