您的位置:技术中心首页 > 逻辑验证 >> 用HDLScore做覆盖率分析

用HDLScore做覆盖率分析

作者:5life   时间:2005-12-18 16:30:03  来自:本站原创  浏览次数:340  文字大小:【】【】【

我们进行验证时, 除了做功能性仿真外, 还需要做覆盖率分析, 这样可以提高验证的全面性. 通常我们可以采用仿真工具自带的覆盖率分析工具. 这方面在这里就不再详加叙述, 可以参看相关的资料. 在论坛中也有VCS的覆盖率工具使用说明.

HDLScore是SUMMIT公司的分析代码覆盖率的工具. 理解和使用该工具对自身能力的提高以及工作的效率有很大帮助.

HDLScore的工作步骤分为3个: instrument, 仿真(simulation)和报告(reporting):
  具体产生文件与过程如下图所示:


  1. instrument
  该步骤将编译整个设计, 选择覆盖率的类型, 提取FSM和产生在仿真时使用的instrumented 的代码. 该步骤的目的是为了产生嵌入HDLSCORE系统任务和函数的代码.
  shell下命令为:
    $> hdli -verilog hdli.cf
  其中, -verilog代表是verilog文件.
    hdli.cf 是命令文件, 其中有很多对hdli的设置
  典型为:
    compile -f design/run.f
    set_coverable_operators -all
    set_coverable_statements -all
    select_coverage -instance -block -path -expr -nlevel *...
    extract_fsm -auto
    select_fsm_coverage *
    list_fsms
    gen_instrumented_code
  执行完命令后, 在当前目录下产生hdls_work目录.
  其中有最重要的hdls.vin文件, 该文件是产生用于覆盖率分析的中间文件.
  Log文件: hdli.log

  2. 仿真(simulation) (遇到license问题)
    $> ncverilog design/test_bench1.v hdls_work/hdls.vin +loadpli1=hdlspli:hdlscore_bootstrap +hdls+configfile+./scripts/sim.cf +access+wrc
    sim.cf 是命令文件, 其中有很多对hdls的设置
  典型为:
    load_design       hdls_work/hdls.dgn
    load_coverage     hdls_work/hdls.cov
    save_coverage -code hdls_work/hdls.sim.cov
    save_coverage -fsm hdls_work/hdls.fsm
注: license问题: 如果用hdlc那么可以仿真, 但是用命令行确不可以(why?) hdlc中命令为:
  ncverilog design/test_bench1.v ./hdls_work/hdls.vin +togl+logfile=vertoggle.log +togl+master=vertoggle.mst +togl+workdir=toggle_work +togl+limit=1 +loadpli1=/_TOOLS_/dist/summit-hdlscore-/5.3.3/i686-pc-linux2.4/Linux/pli/ncv1_21/hdlspli.so:hdlscore_bootstrap +hdls+config+./hdls_work/tclconfigfile +ncsimexe+ncsim +access+rwc +ncelabexe+ncelab
   
  3. 报告(reporting)
    该步骤分析仿真后的结果, 得出文本的报告. 命令为:
    $> hdlr hdlr.cf
    hdlr.cf 是命令文件, 其中有很多对hdlr的设置
  典型为:
    load_design hdls.dgn
    load_coverage hdls.sim.cov
    load_coverage -fsm hdls.fsm
    list_coverage -module *
    list_coverage -instance *...
    list_coverage -fsm -module *
    list_coverage -fsm -instance *...
    report_detail -module -bpesaq -both *

责任编辑:5life

更多相关 HDLscore coverage 覆盖率 的文章

在以覆盖率为导向的验证理论中如何有效结合断言和覆盖点 [2006-01-06]
本文共有0条评论,现在显示最新的5条。

栏目导航

电路基础
硬件语言
逻辑验证
电路综合
后端设计
可测设计
基本逻辑
制造工艺
书籍精选
说文解字
工具学习
数字滤波
趣闻逸事
数字锁相
设计杂项
低耗设计

站点最新

更多相关链接

  仿真工作流程(Verilog/M...
  Modelsim 教程
  Debussy 教程
  Verilog PLI教程 --- 第...
  Verilog PLI教程 --- 第...
  Verilog PLI教程 --- 第...
  Verilog PLI教程 --- 第...
  Verilog PLI教程 --- 第...
  PLI步步为营 -- 二、PLI...
  PLI步步为营 -- 一、PLI概述

栏目最新

更多相关链接

  仿真工作流程(Verilog/M...
  Modelsim 教程
  Debussy 教程
  Verilog PLI教程 --- 第...
  Verilog PLI教程 --- 第...
  Verilog PLI教程 --- 第...
  Verilog PLI教程 --- 第...
  Verilog PLI教程 --- 第...
  PLI步步为营 -- 二、PLI...
  PLI步步为营 -- 一、PLI概述

热点文章

更多相关链接