4大工具的介绍
https://blog.youkuaiyun.com/pieces_thinking/article/details/80780299
利用SDSoC工具来创建嵌入式C/C++/OpenCL应用开发
由于集成了ARM处理器内核与可编程逻辑,对于众多应用开发而言,Zynq 非常的灵活。这意味着开发人员可以将设计按不同的元素来优化划分,例如将其中那些高层次决策的部分放入ARM内核(PS端),并将诸如图像处理流水线等需要加速的部分用可编程逻辑(PL端)来实现。
正是因为高层次综合(HLS)和互联框架的结合才使得各种功能模块可以在PS和PL之间轻松的转换:
-
使用Vivado HLS加速某个功能模块
http://m.elecfans.com/article/608047.html
用好Vivado HLS ,这三大误区要避免!
误区1
只要是C或者C++描述的算法都是可综合(可转换成RTL)的。
误区2
既然Vivado HLS支持C、C++和System C,那么用三者任意一种都行。
误区3
只要有源代码即可,没有Test bench也行。
https://blog.youkuaiyun.com/DP29syM41zyGndVF/article/details/79050859
Altera OpenCL SDK与Xilinx SDAccel的使用对比
https://blog.youkuaiyun.com/kkk584520/article/details/45075587
1---Vivado HLS开发流程简单介绍
设计输入里有三个文件是我们需要手动编写的,TestBench、C函数文件、头文件,而Constraints文件是在创建工程的时候完成的,主要是器件和时钟频率的约束,Directive就是优化指令文件,一般是C仿真通过之后添加的,这是综合之前的关键一步,后面会联合综合部分讲到。Xilinx的文档里特别强调了C TestBench的作用,建议不要越过这一步直接综合,HLS一个很大的优越性就是C仿真的速度要比RTL仿真的速度快很多。C函数文件其实对应的就是我们平常编写的RTL,可以把它看成是一个带输入输出端口的盒子,这个盒子完成我们需求的函数功能。而头文件的作用主要是增加代码的可读性和可移植性,头文件里声明任意精度类型,编写宏控制设计的仿真和综合流程。
https://blog.youkuaiyun.com/qq_16923717/article/details/78223948
基于vivado HLS的帧差图像实现
介绍HLS的使用基于zynq
https://blog.youkuaiyun.com/lichen_6398/article/details/81660823
推荐高亚军老师的视频教程:《跟着Xilinx SAE学HLS》
http://xilinx.eetop.cn/viewnews-2721