博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
verilog PLI 实例
阅读量:5264 次
发布时间:2019-06-14

本文共 556 字,大约阅读时间需要 1 分钟。

在testbench中可以通过PLI调用c/c++函数

hello world示例:

hello.c

#include 
void hello_call () { printf ("\nHello World\n");}

hello.v

module hello_pli ();        initial begin  $hello;  #10  $finish;end        endmodule

如果使用vcs,则要添加tab文件以确定函数的关联

hello.tab如下

$hello call=hello_call acc+=rw:*

编译运行命令为:

vcs -R -P hello.tab hello.v hello.c

可以再c程序中使用PLI标准函数

需包含头文件:

#include "acc_user.h"#include "vcsuser.h"

常用函数如:

tf_getp(pnum); //返回verilog调用传递的第pnum个参数

tf_putp(pnum,pval) //设置第pnum个参数为pval

 

转载于:https://www.cnblogs.com/fbi888/archive/2013/06/14/3135688.html

你可能感兴趣的文章
C# GC 垃圾回收机制
查看>>
mysqladmin 修改和 初始化密码
查看>>
字符串
查看>>
vue2.x directive - 限制input只能输入正整数
查看>>
实现MyLinkedList类深入理解LinkedList
查看>>
自定义返回模型
查看>>
C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 客户端多网络支持
查看>>
HDU 4122
查看>>
Suite3.4.7和Keil u3自带fx2.h、fx2regs.h文件的异同
查看>>
打飞机游戏【来源于Crossin的编程教室 http://chuansong.me/account/crossincode 】
查看>>
[LeetCode] Merge Intervals
查看>>
【翻译自mos文章】当点击完 finishbutton后,dbca 或者dbua hang住
查看>>
Linux编程简介——gcc
查看>>
一种高效的序列化方式——MessagePack
查看>>
2019年春季学期第四周作业
查看>>
2019春第十周作业
查看>>
解决ThinkPHP关闭调试模式时报错的问题汇总
查看>>
【APT】SqlServer游标使用
查看>>
关于ExecuteNonQuery()返回值为-1
查看>>
Firefox修復QQ快速登錄
查看>>