我是靠谱客的博主 无心抽屉,最近开发中收集的这篇文章主要介绍将c语言编译成verilog,是否可以将System Verilog函数编译为C或C?,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

我在一个用C语言编写的高级模拟器上工作,用于一些用System Verilog编写的硬件.

System Verilog代码包含许多仅包含逻辑的函数(即没有耗时,没有触发器).我想在我的C模拟器中重用这段代码.

有没有办法通过以下方式在C(或C,它很容易链接到C)中重用这些函数:

>在编译之前将系统Verilog转换为C/C++?

>将System Verilog编译为可由C/C++调用的函数?

>还有其他方式吗?

解决方法:

通常,这种集成是在另一个方向完成的,这意味着从Verilog调用C/C++例程.当然,这只对验证组件有意义,显然无法合成.最有可能实现所需的环境是SystemC / Verilog协同仿真,但这意味着使用Verilog仿真器(您明确不需要)和使用SystemC的C模型.

寻求高性能的模拟器通常会生成C或本机代码.我不知道从VCS(我最熟悉的模拟器)中生成的代码中提取特定函数的方法,但是可以使用其中一个开源模拟器来实现.任何商业(即许可)模拟器都不太可能支持生成无需许可即可运行的代码.我不确定您是否希望独立于模拟器使用Verilog功能是由许可,运行时开销,工具安装负担或完全不同的东西驱动的.

我假设您不维护SystemVerilog例程,因此可能无法更改它们的实现方式.但是,如果可能的话,在C和Verilog中需要功能时的一个常见策略是编写可以将单个定义转换为C和Verilog实现的代码生成器.

另一个更深奥的可能性是SystemC合成.它是相对较新的,我没有使用它的经验,但如果您可以访问这些工具并且它们适用于您的功能,它将允许您重用C实现用于C模型,硬件模拟和综合.

标签:system-verilog,c-3,c,verilog,code-reuse

来源: https://codeday.me/bug/20190827/1735861.html

最后

以上就是无心抽屉为你收集整理的将c语言编译成verilog,是否可以将System Verilog函数编译为C或C?的全部内容,希望文章能够帮你解决将c语言编译成verilog,是否可以将System Verilog函数编译为C或C?所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部