欢迎来到天天文库
浏览记录
ID:62065955
大小:612.00 KB
页数:12页
时间:2021-04-16
《【matlab编程代做】基于VIVADOHLS和zyqn的图像处理算法实现.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、个人收集整理勿做商业用途A我们首先通过MATLAB进行快速的算法效果仿真拉普拉斯金字塔:DTCWT算法: 这里为什么使用MATLAB进行仿真呢?首先matlab可以进行快速的算法效果仿真验证,另外,在FPGA中,仿真的结果是以波形形式输出的,我们还需要使用matlab进行将波形转换为实际的图像的操作,所以这里使用matlab.BC_C++修改后Vivadohls工程 这里,我们将MATLAB对应的算法转换为C++后,导入到vivado中,然后进行算法的C->RTL的映射。这里我们使用的软件版本为:VIVADO2012.4即VIVADO14。4
2、 由于Vivado只支持C语言和C++语言的简单构架(不含虚拟函数,链表等高级语法),而原始的程序,具有较多高级语法部分,因此,需要较大程度的修改.这里,我们根据A步骤的MATLAB算法,分别进行软件语言的编程。这里原来的程序基本用不到,这里我改编为C语言(如果是C++,其实在没有高级语法的时候,完全和C一样,因此写成C++本质就是C)。这里,根据上面的算法验证,我们重新编写相关的软件程序。 因此改动比较大,具体的设置步骤如下所示:打开vivadohls软件,得到如下的界面: 个人收集整理勿做商业用途 关于VIVADOHLS的
3、相关设置,具体怎么导入,这里,我们的芯片选择如下所示: 下面开始算法的映射操作: 修改之后的代码,我们点击如下的按键: 系统会自动进行代码的mapping..。。。 如果程序没有问题,那么最后会得到如下的结果: 然后在右边的explor窗口中会看到: 个人收集整理勿做商业用途这个就是映射成功之后的结果,其中会产生verilog文件和vhdl文件。 这里,对于两个算法,我们分别做相同的操作,然后这里hls中的一些设置如下所示:ProjectSetting: 个人收集整理勿做商业用途SolutionS
4、etting: 个人收集整理勿做商业用途C最后再ISE或者Planahead中进行FPGA的设计 这里,根据你的最初的要求,我们使用planahead来调用VIVADOHLS映射后的算法来实现。 同样,两个算法的操作是类似的,首先建立PlanAhead工程: 添加VivadoHLS工程文件: 最后得到如下的界面:这个就是planahead的设计界面,下面我们使用这个软件进行算法的仿真。 仿真之后,数据将自动保存到1。txt和2。txt D仿真波形的图像还原个人收集整理勿做商业用途 打开步骤三得到的波形数据,然后我们使用matla
5、b进行数据的还原。运行D文件夹下的main1。m文件.仿真,就可以得到如下的结果图:算法: 从上面的仿真可以看到,采用vivadohls设计得到的仿真结果和实际理论仿真结果非常接近,其唯一的区别在于图像的最上面的有一条黑线,这是因为在fpga处理的时候,初始状态下,系统可能没有正确处理导致的,这是fpga图像处理的常见现象,是正常的。EXPS_SDK 这里,我们将使用xilinx公式的嵌入式软件进行操作,下面给出具体的步骤:首先做PCORE生成操作。进行ExportRTL: 成功之后,会产生:个人收集整理勿做商业用途 impl文件。
6、 下面,我们开始使用XPS和SDK进行嵌入式系统的开发和移植。 个人收集整理勿做商业用途(你看下这个,这个就是我说的在建立XPS的时候,必须要硬件的原因了,因为没法避免需要设置板子的信息,或者芯片的信息,否则没法开始) 然后finish,产生硬件环境。 点击如下的模块: 会弹出如下的模块:个人收集整理勿做商业用途 上面的是一些常用的接口,我们根据需要进行选择,这里则保持默认.将Pcore导入到xps系统中.首先将这个目录下的东西复制到如下的目录下:然后: 软件会自动找到我们的pcore核. 个人收集整理勿做商业用途可以看到,我们设置的拉普拉斯金字塔。
7、然后,我们开始在xps中设置调用这个核。双击这个核:会出现如下的界面: 加入GPIO口个人收集整理勿做商业用途 设置为24,RGB,各8位。地址分配直接地呢generateAddress对于另外一个算法,也做同样的操作。 约束(如果不上板子,就不需要)导入到SDK建立协同调试环境. 点如下的按键。。.。 如果前面所有的步骤均设置正确,那么就会成功弹出如下的窗口: 即告诉我们需要设置SDK的工作路径,我在这里,把工作路径设置在如下的路径下: 个人收集整理勿做商业用途然后会出现EDK的界面,,,,,下面我们将工程导入到SDK中。
此文档下载收益归作者所有