Vivado远程编译并下载程序到本地xilinx开发板

   日期:2021-03-14     浏览:195    评论:0    
核心提示:Vivado远程编译并下载程序到本地xilinx开发板关键词: vivado    远程烧写    frp    FPGA    xilinx    云服务器需求分析:  项目需要,最近需要把FPGA程序从altera移植到xilinx平台,开发环境要从quartus ii换到vivado。现在有条件,  1.寝室有一台安装了vivado2019.2软件的PC(win10,性能较好、综合编译快),  2.实验室未安装vivado软件的笔记本(win10,用了三四年,安装了各种杂七杂八

Vivado远程编译并下载程序到本地xilinx开发板

关键词: vivado    远程烧写    frp    FPGA    xilinx    云服务器

需求分析:

  项目需要,最近需要把FPGA程序从altera移植到xilinx平台,开发环境要从quartus ii换到vivado。现在有条件,
  1.寝室有一台安装了vivado2019.2软件的PC(win10,性能较好、综合编译快),
  2.实验室未安装vivado软件的笔记本(win10,用了三四年,安装了各种杂七杂八的软件,较慢),
  3.腾讯云轻量服务器一年使用期限(centos7,5Mbit带宽,有固定ipv4地址),
  4.已经利用frp实现了内网穿透(实现来实验室笔记本通过访问服务器端口远程控制寝室电脑,可以远程完成solidworks的3d建模、远程浏览网页、远程百度网盘等等正常远程操作)。
  现在,可以在远程控制寝室PC用vivado进行写代码、编译综合,但是硬件开发板在实验室不能直接通过USB下载器插到寝室电脑USB口,在笔记本不安装占用空间44.2G的vivado前提下,如何将程序烧录到本地开发板?

问题分析:

  vivado提供了一个远程烧录的服务hw_server.exe,这个服务使用教程百度上很多,但是这些教程都是要求寝室、实验室两端电脑都要安装多达44.2G的vivado软件,而且似乎也需要被访问端具有静态IP,这于大多人来说都是不满足的。可以尝试,如果把连接手机热点或者校园网的动态IP(百度IP,或者cmd下 ipconfig)作为目标IP,vivado是找不到这个远程设备的。
  所以,首要解决静态IP问题,其次想办法不在实验室笔记本安装vivado也能下载。
  实际上,可以把hw_server.exe理解为一个映射本地xilinx设备到tcp上的中转工具,通讯端口默认为3121,hw_server界面如下:

  寝室电脑中的vivado如果能够访问到实验室连接了开发板的笔记本的3121端口,就可以与笔记本上的hw_server.exe通信,从而获取本地设备,vivado远程连接界面如下:

  实验室电脑通常是连接校园网或者手机热点,他们的特点是都只有动态分配IP,而不具备静态IP(静态IPV4早快完了,多珍贵啊,哪能随便有)。那怎么连接呢? Bingo,答案就是frp内网穿透——把本地的IP端口映射到具有静态IP的服务器端口,访问服务器的静态IP端口等同于访问被映射端的端口,了解frp的应该秒懂。哈,突然觉得,这个轻量服务器的静态IP的价值好像远大于它本身微乎其微的计算能力。frp本身的教程可以另行百度,也可以参考知乎“稚晖君”的教程文章,此处不赘述。
  静态IP通过frp解决了,但还有个问题,hw_server.exe不带驱动,不能识别设备的。这样,vivado即使能远程连接到实验室的笔记本的hw_server进程,但是却显示无设备。难道又要在笔记本上安装vivado来获取驱动?那不又绕回来了吗?答案当然是否定的。vivado这点还是很良心的,只需要安装一个20M小驱动——install_digilent.exe即可识别,而且安装vivado的时候已经提供了,而不需要全部安装44.2G的vivado。

详细操作步骤:

  1. 云服务器与寝室PC配置好frps和frpc内网穿透服务,能够在实验室用笔记本通过RDP协议实现远程桌面连接。

  2. 寝室端PC安装vivado,获取license, 能正常使用,我安装的是vivado2019.2。

  3. 在寝室PC的vivado安装目录下, 将“Vivado\2019.2\bin\unwrapped\win64.o”里的hw_server.exe和“Vivado\2019.2\data\xicom\cable_drivers\nt64\digilent” 里的install_digilent.exe复制到笔记本端,前者是映射后者是驱动。

  4. 在实验室笔记本上也配置frpc并启动,我这里配置frpc.ini如下,为了方便服务器和本地我都是用的默认3121端口,建议local_port用hw_server默认的3121,服务器端口看需求自己随便分配。

  5. 打开云服务器的防火墙管理页面,开放remote_port对应的端口,至此静态IP得到解决。

  6. 实验室笔记本打开刚才复制过来的install_digilent.exe,安装好此驱动。

  7. 实验室笔记本双击打开hw_server.exe(无需安装),连接好xilinx开发板jtag,并打开电源。

  8. 远程控制寝室PC完成verilog的编写、综合、生成bitstream。

  9. 点击寝室PC是左侧 program and debug 下的open hardwell manager中的open target, 点open new target :

  10. 填写云服务器IP和端口号:

  11. 连接好后,vivado界面出现设备,即成功了。

  12. program device即可下载程序:

最后,如果觉得有帮助就点个赞,我这边都能看到。

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
更多>相关资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服