数字芯片验证需要围绕DUT做什么?-软件仿真(上)
2023-09-15


什么是DUT?芯片验证,尤其是数字芯片需要围绕DUT做什么? DUT(Design under Test)指待测试设计,即设计好的RTL(寄存器传输级)代码,是芯片验证的重点。验证过程包括需求收集、子系统模块划分、功能模块细化、编写RTL级别的硬件描述语言文件,然后基于这些设计文件构建测试平台(Testbench),用于模拟和控制DUT的输入和环境,。验证工程师需要运用各种验证策略,如软件仿真、硬件仿真和原型验证等,来确保芯片设计符合规格要求。


今天我们先来说说软件仿真。软件仿真是数字电路设计的关键环节,旨在使用硬件描述语言(例如VHDL或Verilog)对数字电路设计进行功能和特性的仿真和验证。其核心思想是在计算机环境中模拟硬件的行为,以确保设计意图得到正确实现。一个简化的仿真验证系统就像这样:测试向量(TestVector)运行在测试平台(Testbench)上,DUT 和Testbench一起通过仿真系统(基于软件)运行,最终运行出来的结果通常会和预期结果做比较。


随着芯片设计规模的增大,传统用Verilog/SystemVerilog编写的测试平台无法高效满足测试需求,因此出现了UVM。UVM提供了健壮的测试平台,优势在于其高度的可重用性和行业标准化,可以提高设计效率并便于团队之间的协作与组件共享。


功能仿真即RTL仿真,这是仿真验证的第一步,也叫前仿真,目标是在理想的情况下,确认设计的功能是否符合预期。在这个阶段,我们通过模拟设计在特定输入下的输出来验证其行为。这就像对待测试设计(DUT)进行“预演”,在没有物理硬件的情况下就可以发现设计中的逻辑错误。在综合后仿真阶段,目标是确认综合后的电路结构是否符合设计的意图。在这个阶段,我们使用综合工具将硬件描述语言(HDL)代码转化为逻辑网表。然后,我们使用这个逻辑网表进行仿真,以确认综合后的电路行为是否和设计的意图一致。


最后,在时序仿真或后仿真阶段,我们将考虑设计在实际硬件和工艺中可能遇到的时序问题。这包括元件的延时、布线延时、电源和热问题等。在这个阶段,我们会使用更复杂的仿真模型,比如考虑了延时信息的模型,以更准确地模拟硬件的行为。


以思尔芯的PegaSim芯神驰软件仿真工具为例,可支持包括System Verilog、Verilog、VHDL和UVM等在内的多种语言和方法学。其创新的架构算法和支持多种处理器架构(如x86-64、RISC-V、ARM等)使得仿真性能高效,同时提供诸如功能覆盖率、代码覆盖率分析等功能。除传统的license模式外,还提供即算即用的在线仿真云模式,满足多样化需求,解决许可证使用和算力问题,从而提升验证团队效率。


欢迎点赞、关注加转发,为你带来更多EDA硬核科普。



获取原型验证方案

您在设计什么类型的芯片?
设计中含的ASIC门容量为?
500万 - 2千万
2千万 - 5千万
5千万 - 1亿
1亿 - 10亿
大于10亿
您倾向于使用哪款FPGA?
赛灵思 VU440
赛灵思 KU115
赛灵思 VU19P
赛灵思 VU13P
赛灵思 VU9P
英特尔 S10-10M
英特尔 S10-2800
不太确定,需要专业建议
您需要什么样的FPGA配置?
单颗FPGA
双颗FPGA
四颗FPGA
八颗FPGA
不太确定,需要专业建议
您需要什么样的外设接口?
您需要多少数量的原型验证平台?
您是否需要以下工具?
分割工具
多FPGA调试工具
协同建模工具(允许大量数据在 FPGA 与 PC 主机之间进行交互)
您什么时间内需要使用到我们产品?
0-6个月
6-12个月
大于12个月
不太确定
其他
提交
输入您的电话,我们即刻给您回电
输入您的电话
验证码
您也可直接拨打电话:400 8888 427 或添加企业微信
电话咨询
微信咨询
企业微信咨询
TOP
企业微信咨询