Advertisement

数字集成电路设计-14 DPI

阅读量:

引言

当执行IC验证任务,尤其是在面对较大规模的设计时,仅依靠Verilog和SV语言来搭建测试平台,可能会遇到一定困难。

针对这一问题,采用C或C++等高级编程语言通常能够显著提升验证过程的速度,并增强整体的验证效能。

PLI、VPI以及DPI接口的开发正是出于上述考量,目前多数仿真工具均提供了相应的支持功能。

此前,我们已对VPI的应用进行了介绍,接下来本节将重点探讨更为便捷的DPI接口。

1,基本功能

依旧沿用常规方式,借助具体实验来理解DPI的应用。

实验环境为IUS820(Ncsim)。

接下来,将采用C语言分别构建一个加法器与一个乘法器。

其中,加法器以task的方式进行实现,而乘法器则通过function的形式完成。

需要特别注意的是,在实际的工程项目开发过程中,通常不推荐直接在Verilog或SystemVerilog中调用由C语言编写的函数或task,建议增加一层Verilog或SystemVerilog的封装模块,实现隔离作用,从而提升系统的可维护性与可扩展性。

Testbench设计与实现

复制代码
 /* * tb.v
    
 * dpi test
    
 * Rill
    
 * 2014-09-28
    
 */
    
  
    
  
    
 module tb;

全部评论 (0)

还没有任何评论哟~