欢迎光临专业集成电路测试网~~欢迎加入IC测试QQ群:111938408

专业IC测试网

当前位置: 网站主页 > 测试工程 >

7. 测试向量的仿真

时间:2024-07-14 22:24来源:功烨 芯爵ChipLord 作者:ictest8_edit 点击:

 

在电子设计自动化(EDA)领域中,仿真是验证电路设计的重要步骤之一。而测试向量的仿真更是确保电路在实际应用中表现良好的关键环节。本篇文章将详细介绍测试向量的仿真过程,并重点讨论如何生成和应用这些向量,以提升设计验证的效率和准确性。


仿真的基础知识


仿真环境

仿真是指在计算机上模拟电路的工作情况,主要包括以下几个部分:

· TestBench:这是仿真环境的核心部分,用于产生测试激励并将其施加在待测逻辑上。
 
· 待测逻辑:即设计需要验证的部分,通过仿真环境对其进行功能和性能的测试。

· 在仿真过程中,TestBench会产生一系列测试激励,这些激励会施加到待测逻辑上,然后分析其输出结果,以验证设计的正确性。


仿真的算法


仿真算法主要分为以下几种:

1. 基于时间的仿真:处理连续的时间,通常效率较低。

2. 基于事件的仿真:只在电路状态发生变化时进行处理。

3. 基于周期的仿真:主要处理时钟的边沿变化,适用于同步电路。 


仿真工具


常用的仿真工具包括:

· Synopsys VCS

· Mentor ModelSim/Questa
 
· Cadence Incisive/Xcelium

这些工具各有特点,可以根据具体需求选择合适的工具进行仿真。


仿真的网表


仿真网表主要包括基于RTL的功能仿真和基于门级网表的仿真。后者通常会带有SDF(标准延迟格式)文件,以反映实际电路中的延迟情况,从而提高仿真结果的准确性。


VCS的两步仿真方法


1. 编译(Compilation):读入网表和标准单元模型,生成可执行文件simv。

2. 仿真(Simulation):执行simv文件,进行仿真。

 编译选项示例如下:

· 不对specify模块进行时序检查和路径延迟的计算

·预编译TestBench里的宏定义
 
· 指定寄存器在初始化时的值

· 打开调试功能等


  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
/tools/synopsys/vcs-2016/bin/vcs \  -top test_patterns_serial_v_ctl \  -f ./file.f \  +nospecify \  +notimingcheck \  +define+debussy \  +vcs+initreg+random \  +delay_mode_zero \  +tetramax \  +libext+.v+.vg \  -sverilog +v2k \  -full64 \  -o simv \  -l test.log \  -timescale=1ns/1ps \  +debug_all \  -P /tools/synopsys/verdi-2016/share/PLI/VCS/linux64/verdi.tab \  /tools/synopsys/verdi-2016/share/PLI/VCS/linux64/pli.a

 


Tessent仿真向量的生成


Tessent工具生成仿真向量的流程如下:

1. 产生测试向量(create_patterns)

2. 写出测试向量(write_patterns):支持多种格式,如Verilog、STIL、WGL等。

Memory BIST和Boundary Scan


对于Memory BIST和Boundary Scan,仿真向量的生成过程包括:

1. create_pattern_specification

2. process_pattern_specification

3. run_testbench_simulations

这些步骤确保了测试向量的准确性和有效性。


串行和并行仿真向量


串行测试向量模拟ATE实际测试的情况,仿真时间较长。而并行测试向量则将向量直接赋值到寄存器扫描端,仿真时间较短。


仿真向量的内容


以DC parallel pattern为例,其内容包括:

· patterns.v:TestBench文件

· patterns.v.0.vec:向量文件

· patterns.v.cfg:配置文件
 
· patterns.v.chain.name:扫描单元的名字

· patterns.v.po.name:主要输出IO· 

VCS的三步仿真方法

相比于两步仿真方法,三步仿真方法增加了分析(Analysis)和建模(Elaborate)两个步骤。这种方法更适合复杂设计,尤其是在涉及多语言混合设计时。


总结


仿真是电子设计验证过程中不可或缺的一环。通过合理选择仿真工具和方法,生成准确的测试向量,能够大大提升设计的可靠性和性能。Tessent工具在生成和管理测试向量方面提供了强大的功能,值得在实际应用中深入研究和应用。

希望这篇文章能帮助您更好地理解测试向量的仿真过程,提升您的设计验证效率。如果您有更多问题或需要进一步交流,欢迎在评论区留言。
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
用户名: 验证码: 点击我更换图片