网站最新上线:http://www.hslogic.com/

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现

上一篇 / 下一篇  2017-08-10 16:28:05

专业技术网站:http://www.hslogic.com/

A我们首先通过MATLAB进行快速的算法效果仿真

拉普拉斯金字塔:

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

DTCWT算法:

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

       这里为什么使用MATLAB进行仿真呢?首先matlab可以进行快速的算法效果仿真验证,另外,在FPGA中,仿真的结果是以波形形式输出的,我们还需要使用matlab进行将波形转换为实际的图像的操作,所以这里使用matlab

B C_C++修改后Vivadohls工程

        这里,我们将MATLAB对应的算法转换为C++后,导入到vivado中,然后进行算法的C->RTL的映射。这里我们使用的软件版本为:VIVADO2012.4VIVADO14.4

        由于Vivado只支持C语言和C++语言的简单构架(不含虚拟函数,链表等高级语法),而原始的程序,具有较多高级语法部分,因此,需要较大程度的修改。这里,我们根据A步骤的MATLAB算法,分别进行软件语言的编程。这里原来的程序基本用不到,这里我改编为C语言(如果是C++,其实在没有高级语法的时候,完全和C一样,因此写成C++本质就是C)。这里,根据上面的算法验证,我们重新编写相关的软件程序。

        因此改动比较大,具体的设置步骤如下所示:

打开vivado hls软件,得到如下的界面:

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

 

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

        关于VIVADO HLS的相关设置,具体怎么导入,这里,我们的芯片选择如下所示:

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

 

      下面开始算法的映射操作:

      修改之后的代码,我们点击如下的按键:

     HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

系统会自动进行代码的mapping。。。。。

         如果程序没有问题,那么最后会得到如下的结果:

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

       然后在右边的explor窗口中会看到:

 

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

这个就是映射成功之后的结果,其中会产生verilog文件和vhdl文件。

        这里,对于两个算法,我们分别做相同的操作,然后这里hls中的一些设置如下所示:

Project Setting

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

 

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

Solution Setting

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

 

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

C最后再ISE或者Planahead中进行FPGA的设计

        这里,根据你的最初的要求,我们使用planahead来调用VIVADO HLS映射后的算法来实现。

        同样,两个算法的操作是类似的,首先建立PlanAhead工程:

 

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

 

添加Vivado HLS工程文件:

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

 

最后得到如下的界面:

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

这个就是planahead的设计界面,下面我们使用这个软件进行算法的仿真。

HighSpeedLogic专题: 基于VIVADO HLS和zyqn的图像处理算法实现 - highspeedlogicblog - highspeedlogicblog

 

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar