摘要:
一、打开PlanAhead创建工程1、选择Create New Project新建工程Project name:hello一路默认,只有Board项需要选择ZedBoard Zynq Evaluation and Development KitFinish创建工程之后的界面二、添加资源1.ClickAdd Sourcesin the Project Manager.The Add Sources wizard opens.2.Select theAdd or Create Embedded Sourcesoption and click Next.3.In the Add or Create 阅读全文
随笔分类 - 基于FPGA的图像处理
ZedBoard学习(6)-System Generator实现串口通信(一行HDL代码都不用写)
2012-12-02 12:55 by libing64, 1122 阅读, 收藏,
摘要:
一直都在System Generator下做图像处理相关的算法,感觉SysGen挺强大的,前几天突发奇想,能否直接用SysGen实现数据的通信呢,毕竟一句HDL代码都不写对于做FPGA的人来说却是很有吸引力的。 串口通信协议比较简单,发送的时候,8位数据的前面加上1位起始位0,在8位数据后加上停止位1,这样8位数字扩展成10位的数字,再将并行转化为串行就可以从GPIO送出。 搭建模型如下:模型因为暂时只是包含发送部分,所以不是很复杂,另外加上一个按键,每次按下按键式就发送数据。选择板子型号:设置时钟:点击Generate,转化为HDL Netlist,这是会在文件夹下多出一个文件夹... 阅读全文
ZedBoard学习(1)Ubutun下进行串口通信
2012-12-01 08:16 by libing64, 1061 阅读, 收藏,
摘要:
windows下进行串口通信,如果是笔记本的话一般需要安装PL2303的驱动,win7的话经常会无法识别,非常烦人。其实linux下也有串口的驱动,默认已经安装.本人使的是ubuntu10.04,选择的串口终端软件是minicom一、安装minicom控制台指令:# sudo apt-get install minicom自动完成部分:*************************************正在读取软件包列表... 完成正在分析软件包的依赖关系树正在读取状态信息... 完成将会安装下列额外的软件包:lrzsz下列【新】软件包将被安装:lrzsz minicom共升级了 0 个 阅读全文
ZedBoard学习(2)-FTP文件传输
2012-12-01 08:15 by libing64, 559 阅读, 收藏,
摘要:
这几天在Ubuntu上建立了Xilinx-Linux的交叉编译环境,基本步骤网上有很多,重新写一遍也没有意义。http://www.eefocus.com/nightseas/blog/12-10/287208_5ceaa.html来自懒兔子http://www.61ic.com/FPGA/Xilinx/201210/45064.html来自Parallel只是要注意一点,这个export添加环境变量的方法是一个临时的方法,就是说ubuntu注销之后,环境变量就消失了,下次还需要重新添加。要想一次添加永久使用,需要将环境变量添加到Ubutun的文件中。交叉编译环境完成之后,需要将文件拷贝到Ze 阅读全文
ZedBoard学习(3)U盘读写
2012-12-01 08:14 by libing64, 415 阅读, 收藏,
摘要:
今天在Linux下操作U盘时才发现,以前对Linux的理解太浅了,对ARM Linux的理解有太浅了,因为需要进行数据的存储,最初的想法移植停留在怎么写U盘的驱动,其实Linux里U盘的驱动都已经写好了,那么U盘就更PC上的存储器是一样的,直接进行文件的读写就可以了。写一段简单的读写文件的代码,进行测试,从file1中拷贝内容到file2。#include <stdio.h>int main(int argc, char **argv){ FILE* sourceFile; FILE* destFile; char buf[50]; int numBytes; sourceFile 阅读全文
Zedboard学习(四)硬件协仿真co-simulation
2012-12-01 08:11 by libing64, 489 阅读, 收藏,
摘要:
之前进行FPGA图像处理,一直在ML605上进行硬件协仿真,拿到ZedBoard之后当然也希望能够继续这么干,进行了很多次的尝试。经过多次尝试在ZedBoard上进行硬件协仿真,多次失败之后,得出一个结论,"xc7z020-1clg484" is not supported for JTAG co-simulation.以下内容是SysGen中进行硬件协仿真时,出错后errorLog中的内容。Java exception occurred:com.xilinx.sysgen.netlist.NetlistInternal: Device "xc7z020-1clg 阅读全文
ZedBoard学习(5)-ZedBoard和System Generator
2012-12-01 08:00 by libing64, 923 阅读, 收藏,
摘要:
Zynq中包含了一个FPGA内核和两个Cortex-A9内核,尽管功能十分的强大,又非常的时髦,但是本质上讲和之前Xilinx的FPGA 硬核PowerPC没什么区别,无非是PowerPC换成了更加有前景的ARM,因此我很自然的想法是以前在ARM上、在FPGA上做过的东西那个再Zynq上必然也是可以上实现的。 因为之前一直在跟图像处理算法有关的学习,从Matlab到OpenCV、Directshow,从PC到STMF407再到ARM9(Linux),一直都是做跟图像处理有关的,直到开始接触FPGA,才解决了最困扰我的问题--运算速度问题。图像处理需要的高速的运算和大量的资源,刚好FPGA... 阅读全文
基于FPGA的图像处理(六)--Shared Memory
2012-11-30 09:31 by libing64, 858 阅读, 收藏,
摘要:
在FPGA的设计中,当不同速率的模块之间进行高速的数据传输时,共享存储器是一个很好的解决方案,在一个模块中将数据写入Shared Memory,在另一个模块中将其读出,Shared Memory使用name作为标识,同名的Shared Memory使用的是相同的内存区域。上面的模块将数据写入,下面的模块将数据读出。两个Shared Memory模块分别是名字相同,使用时相同的存储空间,因此能够实现数据共享。上面的Shared Memory模块的配置。下面的Shared Memory模块的配置。Counter模块的配置运行结果:由于两个模块在同一个文件中,因此开始的时间是一致的,所以相位相... 阅读全文
基于FPGA的图像处理(五)--状态机
2012-11-29 22:14 by libing64, 938 阅读, 收藏,
摘要:
使用FPGA实现各种算法时,状态机是很常用的方法,在SysGen中有两种非常简便的方法构建状态机,一是使用Mcode,以switch-case语句轻松实现,二是使用SysGen自带状态机模块。 状态机假设我们要从01序列中检测出1011序列,则状态机模型如下Next State Matrix:[0 1; 2 1; 0 3; 2 1]Output Matrix :[0 0; 0 0; 0 0; 0 1]一、使用Mcode实现上一篇博客讲解了在Sysgen中Mcode的限制能力,这里直接使用构建模型如下:Singal From Workspace用于产生一个01序列,作为输入信号。gat... 阅读全文
基于FPGA的图像处理(四)--Matlab Language supported by Mcode
2012-11-28 21:49 by libing64, 860 阅读, 收藏,
摘要:
在进行FPGA图像处理时,如果使用System Generator构建模型,有时有些算法不能实现时可以考虑Mcode来实现,但是其实在SysGen中Mcode是很弱的,因此需要了解它的能力有多大,才能更好的操作。The MCode block supports the following MATLAB language constructs:• Assignment statements• Simple and compound if/else/elseif end statements• switch statements• Arithmetic expressions involvi... 阅读全文
基于FPGA的图像处理(三)--图像融合
2012-11-03 19:22 by libing64, 2100 阅读, 收藏,
摘要:
System Generator安装之后可以在Simulink中调用相应的模块进行视觉算法的搭建,我两台电脑上分别是ISE12.3+matlab2010a, ISE10.1+Matlab2010a。需要注意的是ISE和Matlab之间是有型号匹配的。 首先要打开FPGA,打开Simulink,新建一个Model。 在Xilinx Blockset中拖取需要的模块,搭建图像处理的算法。本程序是一个图像融合算法,读入两幅图像,相加,截取低8位,输出。 其中System generator模块是每一个model中都必须的,在System Generator可以进行... 阅读全文
基于FPGA的图像处理(二)--System Generator入门
2012-11-03 17:49 by libing64, 1523 阅读, 收藏,
摘要:
System generator 安装之后会在Simulin模块库中添加一些Xilinx FPGA专用的模块库,包括Basic Element,Communication,Control Logic,DataTypes,DSP,Math,Memory,Shared Momory,Tool等模块库,只有使用这里的模块才能进行FPGA算法的仿真以及进行综合等等。 使用这些模块就可以简单的选一些模块,连一些线就能自动生成你需要的HDL代码,将开发人员从底层枯燥的代码编写中解脱出来,将更多的精力放在算法上,非常完美的体现了工具为人服务的理念。 最新的ISE14.2即Vavido已经能... 阅读全文
基于FPGA的图像处理(一)--System Generator介绍
2012-11-03 17:21 by libing64, 2476 阅读, 收藏,
摘要:
计算机视觉系统通常需要进行大量的信息处理才能够得到所需要的信息。目前主要有CPU、GPU、ASIC、DSP、FPGA等计算平台。常用的计算机视觉系统通过通用计算机进行视觉信息处理,但是,由于CPU的计算能力有限,对于一些计算复杂度很高的视觉算法,其处理速度常常难以满足系统的实时性需要。GPU具有高度的并行计算能力,可以较好地解决计算速度的问题,然而,基于GPU的计算机视觉系统存在着功耗较高、体积较大的缺点,难以满足依靠自身所带电池供电并长时间工作的服务机器人等应用系统的需要。利用专用集成电路ASIC实现视觉处理算法,可以解决视觉系统性能和体积、功耗之间的矛盾,是高性能嵌入式视觉系统的一... 阅读全文
浙公网安备 33010602011771号