Zynq中包含了一个FPGA内核和两个Cortex-A9内核,尽管功能十分的强大,又非常的时髦,但是本质上讲和之前Xilinx的FPGA 硬核PowerPC没什么区别,无非是PowerPC换成了更加有前景的ARM,因此我很自然的想法是以前在ARM上、在FPGA上做过的东西那个再Zynq上必然也是可以上实现的。

因为之前一直在跟图像处理算法有关的学习,从Matlab到OpenCV、Directshow,从PC到STMF407再到ARM9(Linux),一直都是做跟图像处理有关的,直到开始接触FPGA,才解决了最困扰我的问题--运算速度问题。图像处理需要的高速的运算和大量的资源,刚好FPGA以其并行性以及流水线的思想很适合进行图像处理算法的高速实现,于是我毅然改变方向了选择了FPGA作为新的平台。

进行图像处理个人以为算法始终是核心,平台其次。很喜欢System Generator 的Model Based Design的思想,将人从重复劳动中解救出来,专心于算法,毕竟工具是服务于人的。因此我非常喜欢用System Generator,从接触FPGA开始,大部分的时间都花在了SysGen上。

之前一直是在ML605开发板上进行算法的测试,SysGen构建模型-->Hardware Co-Simulatuon,模型构建完成之后直接在板子上进行硬件协仿真,这样做一是仿真的速度大大的提高,在板子上free running的速度大概是在PC跑的10倍,二是算法完全是在FPGA上跑的,跑完对算法那叫一个放心。

拿到ZedBoar之后我自然也希望在这个板子上也这么做,但是我错了,经过多少次的尝试之后发现"xc7z020-1clg484" is not supported for JTAG co-simulation.”,我在14.1下失败之后换到14.2和14.3下都进行了测试,发现它确实不是因为板子导致工具不支持,因为14.3中对更新的芯片都支持比如ZC702,ZC705等,那么我分析是因为PL PS的架构下由于JTAG要做的事变多了,因此就失去了Hardware Co-Simulatuon这项功能。

虽然SysGen在ZedBoard上不支持Hardware Co-Simulatuon,但是我还是希望能够利用SysGen,起码我使用SysGen构建的模型转化为ISE工程后我希望它是可以使用的。因此就做了一个简单的测试。

大致思路是在SysGen下构建一个最简单的模型,生成HDL Netlist,在ISE下打开工程,添加UCF代码,编译生成Bitstream,iMPACT下载。

1、构建模型LEDSysGen

没 有输入,只有一个输出,是一个常数25

常数配置为UFIX_8_0

2、生成HDL Netlist

打开System Generator模块,简单配置一下

时钟按照ZedBoard的时钟10ns,Clock Pin 是Y9,Generate

2、ISE中编译

这是在netlist文件夹下多出一个ISE 的工程,ISE打开,修改ledsysgen_cw.ucf文件。

NET "clk"          LOC = Y9   | IOSTANDARD=LVCMOS33;  # "GCLK"

NET "ce"           LOC = P16  | IOSTANDARD=LVCMOS18;  # "BTNC"

NET "gateway_out1[0]"           LOC = T22  | IOSTANDARD=LVCMOS33;  # "LD0"

NET "gateway_out1[1]"           LOC = T21  | IOSTANDARD=LVCMOS33;  # "LD1"

NET "gateway_out1[2]"           LOC = U22  | IOSTANDARD=LVCMOS33;  # "LD2"

NET "gateway_out1[3]"           LOC = U21  | IOSTANDARD=LVCMOS33;  # "LD3"

NET "gateway_out1[4]"           LOC = V22  | IOSTANDARD=LVCMOS33;  # "LD4"

NET "gateway_out1[5]"           LOC = W22  | IOSTANDARD=LVCMOS33;  # "LD5"

NET "gateway_out1[6]"           LOC = U19  | IOSTANDARD=LVCMOS33;  # "LD6"

NET "gateway_out1[7]"           LOC = U14  | IOSTANDARD=LVCMOS33;  # "LD7"

然后选择Implementation,编译工程
3、iMPACT下载
打开iMPACT,下载刚刚生成的bitstream文件,看一看效果。
LED亮起,刚好是数字25。虽然只是很简单的点个灯,但是在hardware co-simulatiom无效的情况下我对SysGen又有了信心,我可以专心的做算法,因为我知道算法实现之后肯定是可以在FPGA上实现的。

转载于:https://www.cnblogs.com/libing64/archive/2012/12/01/2878721.html

ZedBoard学习(5)-ZedBoard和System Generator相关推荐

  1. Vivado System Generator学习笔记

    环境:win7 64   vivado 2014.1 开发板:zedboard version d    xc7z020clg484-1 串口软件:SecureCRT 注意:本文中所有的源码.工程文件 ...

  2. system generator学习笔记【02】

    作者:桂. 时间:2018-05-20  23:28:04 链接:https://www.cnblogs.com/xingshansi/p/9059668.html 前言 继续学习sysgen.接触s ...

  3. Zedboard学习(八):zedboard移植opencv

    准备工作 opencv源码包下载:http://pan.baidu.com/s/1qXTKIdQ(opencv-2.4.9),后面我们要在虚拟机中编译: 搭建好zedboard在Linux下的交叉编译 ...

  4. sv_labs学习笔记——sv_lab5_下(System Verilog)

    本文延续前一篇sv_labs学习笔记--sv_lab5_上(System Verilog),进一步学习完善lab5的内容 sv_labs学习笔记--sv_lab5_下(System Verilog) ...

  5. sv_labs学习笔记——sv_lab5_上(System Verilog)

    本节将介绍lab5的第一部分,主要总结一般设计学习与思考的方式与需要着重学习的点,同时以lab5作为参考,分析数据流流向,验证组件的通信与抽象化,实现的整体思路. sv_labs学习笔记--sv_la ...

  6. System Generator从入门到放弃(一)-安装与使用

    System Generator从入门到放弃(一)-安装与使用 文章目录 System Generator从入门到放弃(一)-安装与使用 一.安装与使用 1.简介 2.功能介绍 3.System Ge ...

  7. Vivado与matlab系统开发设计 system generator(1)入门与安装

    Vivado与matlab系统开发设计 system generator(1)入门与安装 今天由"82年的程序媛"本媛给大侠带来FPGA设计 vivado 与 matlab系统开发 ...

  8. 利用ZYNQ SOC快速打开算法验证通路(5)——system generator算法IP导入IP integrator

    一.前言 利用FPGA设计算法一直以来都是热点,同样也是难点.将复杂的数学公式 模型通过硬件系统来搭建,在低延时 高并行性等优势背后极大提高了设计难度和开发周期.Xilinx公司的sysGen(sys ...

  9. 【system generator】基于system generator的根号运算系统实现

    目录 1.软件版本 2.本算法理论知识点 3.算法具体理论 4.部分核心代码 5.仿真演示 6.本算法写论文思路 7.参考文献 8.相关算法课题及应用 1.软件版本 MATLAB2013b,ISE14 ...

最新文章

  1. 低调的,我们改名字了!
  2. ajax点赞只能点一次,php+mysql+ajax局部刷新点赞取消点赞功能(每个账号只点赞一次).pdf...
  3. python programming training(二): 排序算法
  4. 华为手机怎么调出云相册_华为云手机引关注!将替代传统手机?华为回应来了...
  5. Spark on YARN cluster client 模式作业运行全过程分析
  6. linux学习之运维篇
  7. 编程修养 阅读笔记三
  8. [恢]hdu 2042
  9. 关于Jedis和lettuce以及springDataRedis的一些区别
  10. PhotoShop简单案例(1)——利用时间轴功能制作简单动画
  11. 千万流量大型分布式系统架构设计实战(干货)
  12. 不再谷满谷,坑满坑,看苏宁库存架构转变
  13. python中sinxcosy_编培笔记 | Python:第四班车
  14. 将文件转换成json
  15. Unity 3D 海水的实现2 折射与反射 离屏相机的渲染
  16. Matlab处理气象数据(十)给地图添加边界线
  17. 2024武汉理工大学计算机考研信息汇总
  18. 适合计算机ppt的音乐,职称计算机辅导:在多张PPT幻灯片中连续播放背景音乐
  19. 1.pytorch 学习笔记--Getting stared
  20. 【MATLAB数据分析】02数据的中位数和分位数

热门文章

  1. 企业网络推广——企业网络推广专员如何预估网站优化流量的增长?
  2. 网站采集内容对优化工作很有帮助
  3. ubuntu分屏软件_Ubuntu终端多窗口分屏Terminator
  4. centos 日志切割_centos 创建 logrotate 进行日志分割
  5. mpp新增一个字段_如何快速新增百万测试数据?
  6. 开发日记-20190407
  7. spark 决策树分类算法demo
  8. es的forcemerge——按照天分割
  9. JavaScript 运行机制详解:Event Loop——续
  10. 【BZOJ3745】Norma(CDQ分治)