使用TF库实现C模型与Verilog仿真的接口
1. 引言
在硬件仿真领域,将C语言编写的硬件模型与Verilog仿真进行接口对接是一种常见且有效的方法。TF库提供了一系列例程,可用于读取和修改仿真中的逻辑值,并能使活动与逻辑值变化及仿真时间同步。本文将介绍如何使用TF库实现C模型与Verilog仿真的接口。
2. 基本概念与优势
使用C语言表示硬件模型的一个重要原因是为了获得更快的仿真性能。C语言允许对硬件功能进行非常抽象的算法表示,而无需处理Verilog语言提供的详细时序、多状态逻辑、硬件并发等硬件特定细节。
为了使PLI应用程序尽可能高效地执行,以下是一些指导原则:
- 良好的C编程实践至关重要。
- 尽量减少对PLI例程的调用次数。
- 使C语言中的值表示尽可能与Verilog中的值表示相似。
- 利用Verilog语言来建模硬件描述语言擅长的事物,如表示硬件并行性和硬件传播时间。
3. 接口方法的基本概念
将Verilog仿真与C语言模型进行接口对接的所有方法都有三个基本概念:
- Verilog模拟器中发生的值变化必须传递给C模型。
- C模型内的值变化必须传递给Verilog仿真。
- Verilog仿真和C模型中的模拟时间必须保持同步。
4. 接口的基本步骤
- 创建C语言模型 :创建一个独立的纯C代码块,不使用任何PLI例程。C模型有输入和输出,但不知道输入的来源或输出的目的地。它可以是一个没有主函数的C函数,也可以是一个有自己主函数
订阅专栏 解锁全文

43

被折叠的 条评论
为什么被折叠?



