Research

Tutorial: Un-bricking USRP X310 (USRP X310变砖恢复/救砖/设备恢复教程)

概述

本教程介绍了通过JTAG接口刷新FPGA image以恢复USRP X310的过程。因为USRP可以在linux、windows等系统上使用,但是在烧写image时,由于下载的image问题、烧写image过程中突然断电等都会导致USRP X310启动失败,无法发现设备。此时就需要在linux环境下安装vivado软件对USRP进行恢复。对于那些不熟悉linux环境的人员来说,搭建整个环境非常困难,而且在搭建的过程中也会遇到很到意外的问题,即使熟悉linux系统,但是vivado软件的下载、安装过程也非常麻烦,同时在安装好软件之后还需要安装驱动等。因此,为了使恢复USRP的过程尽可能的简单,在这里专门搭建了恢复USRP X310的平台,省去了安装linux系统、vivado软件、配置USRP环境的过程。在该平台上,直接将vivado环境集成在了linux系统中,大家只需要安装好VMwave之后,导入集成好的Linux系统,在终端输入命令就可以启动vivado软件。本教程详细的向大家介绍了如何安装VMwave、如何向VMwave中导入集成好的Linux_Mint环境以及如何恢复USRP X310。

本教程提供两种方式,第一种方式可以直接下载提供的X310_Device_Recovery_Tool.zip文件,然后根据前面四个步骤操作;第二种方式,如果已经搭建好了usrp的环境,则直接参考第五个步骤进行操作。

一、前言

1. 下载X310_Device_Recovery_Tool.zip文件,然后解压得到X310_Device_Recovery_Tool

2. 在X310_Device_Recovery_Tool文件中:

(1)Linux_Mint文件夹:集成好的Linux环境,该环境中已经集成了vivado_lab工具,不需要再安装vivado_lab工具;

(2)Vivado_Lab_2019.2文件夹:vivado_lab 工具;

(3)VMware-player-16.0.0.exe:虚拟机软件;

(4)X310_Device_Recovery manual:X310_Device_Recovery工具的使用说明文档。

3. 使用工具

(1)usrp_x310

(2)电脑

(3)千兆网线

(4)jtag连接线

二、VMwave的安装

1. 找到VMware-player-16.0.0.exe文件,双击运行:

2. 点击next,然后打钩,点击next

3. 选择安装位置,点击next

4. 去掉启动时检查产品更新加入VMwave客户体验提升计划的对钩,然后点击next

5. 点击next,点击install

6. 安装完成后,点击Finish

三、在VMwave中导入linux系统:

1.打开VMwave软件,选择打开虚拟机:

2. 选择X310_Device_Recovery_Tool->Linux_Mint->Linux_Mint.vmx,点击Open

3. 双击Linux_Mint:

注:此linux系统使用的密码为一个空格

四、usrp_x310恢复

1. 右击linux右下角网口图标,选择Edit Connections

2. 点击+,点击Create

3. 为了便于区分,命名为usrp_x310,设置Ethernet中的MTU为1500

4. 设置IPv4 Settings中Method为Manual,点击Add,设置Address 为192.168.10.1,Netmask为255.255.255.0,然后点击Save;

5. 将x310 和主机用JTAG线连接,打开x310的电源,在弹出的界面选择Connection to a virtual machineLinux_Mint,然后点击ok

6. 若没有弹出上面的窗口,则可点击状态栏的Player->Removable->Future Devices Diglilent USB Device->Connect(Disconnect from host),然后点确定

7. 双击桌面的Vivado_Lab图标,或打开终端,在终端输入/opt/vivado/Vivado_Lab/2019.2/bin/vivado_lab启动vivado:

8. 点击Open Hardware Manager:

9. 在弹出的界面选择Tools->Auto Connect

10. 选中xc7k410t_0(1),右击,选择Program Device

11. 选择Bitstream file文件,这里以x310的HG为例,文件目录为/usr/share/uhd/images/usrp_x310_fpga_HG.bit,选好后点击ok,点击Program:

12. 完成之后关闭vivado_lab工具,用千兆网线连接x310和主机,然后打开终端,输入uhd_find_devices

13. 输入uhd_usrp_probe,出现下面界面,说明x310已恢复:

14. 在终端输入uhd_image_loader --args "type=x300,addr=192.168.10.3,fpga=HG",下载新的镜像:

注:addr=192.168.10.3替换成自己的x310地址,可以通过uhd_find_devices来查看地址

15. 到此,x310恢复成功,可以正常使用了。

五、Vivado_Lab的安装(该部分适用于有Linux系统且没有vivado环境的用户)

1.linux系统中已经安装了vivado环境的,则可以跳过Vivado_Lab的安装;

2. 在浏览器进入xilinx官网下载Vivado_LAB,这里以2019.2版本为例,点击2019.2,选择linux的版本下载:

3. 下载完成后,找到Xilinx_Vivado_Lab_Lin_2019.2_1106_2127.tar.gz,右键选择Extract Here,等待解压完成:

4. 解压完成后,选中刚才解压的文件,右键选则Open As Administrator,然后输入密码,点击Authenticate :

5. 进入到该目录后,双击xsetup文件,选择Run in Terminal

6. 若提示系统不兼容,直接点击ok即可:

7. 然后点击continue,然后next:

8. 勾选三个I Agree,然后点击next,然后默认,直接点击next:

9. 在这里选择vivado_lab安装的位置,这里我选择/opt/Vivado,选好之后点击Open,然后点击Next

10. 点击 isntall,开始安装:

11. 安装完成后点击Ok

12. 安装JTAG的驱动,打开终端,切换到驱动目录:cd /opt/vivado/Vivado_Lab/2019.2/data/xicom/cable_drivers/lin64/install_script/install_drivers

注:我的vivado是在opt目录下,前面的/opt根据自己的安装目录进行替换。

13. 在终端输入sudo ./install_digilent.sh,当时是Successfully installed Digilent Cable Drivers,说明驱动安装成功:

14. 然后输入sudo udevadm control --reload,加载UDEV:

15. 安装完成后按”四、usrp_x310 恢复” 操作