200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > vivado和c语言开发 软件工程师也可以做硬件开发:软件工程师使用Vivado HLS的快速入门...

vivado和c语言开发 软件工程师也可以做硬件开发:软件工程师使用Vivado HLS的快速入门...

时间:2022-06-01 05:09:10

相关推荐

vivado和c语言开发 软件工程师也可以做硬件开发:软件工程师使用Vivado HLS的快速入门...

HLS可以用于将C语言函数转换成硬件模块。这是一个革命性的工具,从此软件人员也可以创建硬件模块。下面从软件工程师的角度,介绍使用HLS创建硬件模块时的注意事项。为了避免重复,请先阅读UG871 《Vivado Design Suite Tutorial: High-Level Synthesis》。

进行硬件加速,要先准备好用来生成硬件模块的函数,它需要保存在一个单独的文件里。在创建工程时,指定它做为顶层函数。同时也要准备一个实现相同功能的函数,它不会被生成硬件模块,用于验证硬件模块的功能是否正确。最后还要准备一个测试的main()函数,它分别调用前面所述的两个软件函数,并比较它们输出的结果是否一致。在C语言验证和RTL验证时,HLS工具都会调用它。

创建HLS工程的具体步骤,请参考UG871 《Vivado Design Suite Tutorial: High-Level Synthesis》。假设已经创建好HLS工程。下面介绍最基本的约束。

下面是一个典型的C语言函数。

long long cmplx_dot_st_1port

(

long long* p_a,

unsigned int ui_vector_length,

unsigned int ui_test_param[2]

)

上面这个函数中,p_a是一个指针,用于存放有用于存储大量输入/输出数据。CPU执行这个函数时,CPU指令会读写其中的数据。如果C语言函数转换成硬件模块,可以生成AXI Master接口,由硬件模块自动读取数据,相当于集成了一个DMA控制器;也可以生成AXI Stream接口,AXI Stream Slave接口接受其它数据源生成的数,AXI Stream m

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。
相关阅读
vivado hls(1)

vivado hls(1)

2019-10-02

vivado hls 笔记

vivado hls 笔记

2024-07-10

Vivado HLS教程

Vivado HLS教程

2023-09-08

Vivado HLS基本应用

Vivado HLS基本应用

2020-02-02