USRP X310 Windows 烧录镜像

server/2025/1/12 12:10:11/

说明

USRP-X 系列设备包含两个用于两个以太网通道的 SFP+ 端口。由于 SFP+ 端口支持 1 千兆 (SFP) 和 10 千兆 (SFP+) 收发器,因此 UHD 附带了多个 FPGA 图像,以确定上述接口的行为。

在这里插入图片描述
注意:Aurora 图像需要从 FPGA 源代码手动构建。

FPGA 图像有两种格式:

  • LVBITX:LabVIEW FPGA 配置比特流格式(用于 PCI Express 和以太网)
  • BIT:Xilinx 配置比特流格式(用于以太网和 JTAG)

要获取最新图像,只需使用 uhd_images_downloader 脚本。在 Unix 系统上,使用此命令:

uhd_images_downloader

在 Windows 上,使用:

<path_to_python.exe> <install-path>/bin/uhd_images_downloader.py

使用 PCI Express 加载 FPGA 图像

UHD 需要有效的 LabVIEW FPGA 配置比特流文件 (LVBITX) 才能通过 PCI Express 总线使用 USRP-X 系列设备。LabVIEW FPGA 不需要将UHD 与 USRP-X 系列设备一起使用。由于 FPGA 配置是 PCI Express 上正常操作的一部分,因此在运行 UHD 之前无需进行任何设置。

可以在传递的可选设备参数中设置fpga标签,以向 UHD 指示 FPGA 图像风格。如果指定了上述标签,UHD 将尝试从 UHD 图像目录中加载具有请求风格的 FPGA 图像。如果未指定标签,UHD 将自动检测图像的风格并尝试将相应的配置比特流加载到设备上。请注意,如果 UHD 检测到请求的图像已加载到 FPGA 上,则它不会重新加载它。

使用JTAG加载FPGA图像

USRP-X 系列设备具有板载 USB-JTAG 编程器,可通过设备前面板访问。有多种工具可通过 JTAG 连接器访问 FPGA(请参阅板载 JTAG 编程器)。

如果您安装了 Vivado,我们会提供命令行脚本来刷新图像。确保您的 X3x0 已通电并使用前面板 USB JTAG 连接器连接到您的计算机(USB 2.0 即可)。前往 X3x0 FPGA 目录,然后运行以下命令:

$ cd uhd/fpga/usrp3/top/x300 # Assuming this is where the FPGA code is checked out
$ source ./setupenv.sh
$ viv_jtag_program /path/to/bitfile.bit

如果你已经安装了 iMPACT,则可以使用该impact_jtag_programmer.sh工具安装镜像。然后运行该工具:

<path_to_uhd_tools>/impact_jtag_programmer.sh --fpga-path=<fpga_image_path>

安装vivado:
https://china.xilinx.com/support/download/index.html/content/xilinx/zh/downloadNav/vivado-design-tools/archive.html
在这里插入图片描述

将图像加载到板载闪存中

要更改板载闪存中存储的 FPGA 映像,可以通过网络或 PCI Express 对 USRP-X 系列设备进行重新编程。将映像编程到闪存中后,该映像将在设备启动过程中自动加载到 FPGA 上。

注意:不同的硬件版本需要不同的 FPGA 映像。从设备背面的标签上确定修订号。如果您手动指定 FPGA 路径,则实用程序不会尝试检测您的设备信息,您需要使用此编号来选择要刻录的映像。

注意:如果未指定自定义 FPGA 图像路径,图像加载器实用程序将默认使用适当的 BIT 文件,但它与 BIN、BIT 和 LVBITX 图像兼容。

通过以太网使用图像加载器

Automatic FPGA path, detect image type:
uhd_image_loader --args="type=x300,addr=<IP address>"Automatic FPGA path, select image type:
uhd_image_loader --args="type=x300,addr=<IP address>,fpga=<HG or XG>"Manual FPGA path:
uhd_image_loader --args="type=x300,addr=<IP address>" --fpga-path="<path to FPGA image>"

Use the image loader over PCI Express

Automatic FPGA path, detect image type:
uhd_image_loader --args="type=x300,resource=<NI-RIO resource>"Automatic FPGA path, select image type:
uhd_image_loader --args="type=x300,resource=<NI-RIO resource>,fpga=<HG or XG>"Manual FPGA path:
uhd_image_loader --args="type=x300,resource=<NI-RIO resource>" --fpga-path="<path to FPGA image>"

设备恢复和变砖

加载坏映像(“变砖”)可能会使设备处于不可用状态。幸运的是,可以使用 USB-JTAG 接口暂时为 USRP-X 系列设备加载好映像。一旦启动到安全映像,用户就可以再次通过以太网或 PCI Express 将映像加载到设备上。

请参阅使用 JTAG 加载 FPGA 映像部分,了解如何使用 JTAG 接口将 FPGA 映像加载到设备上。运行 JTAG 进程后,可以使用常规程序将新映像刷入设备上,以永久恢复设备。

设置网络

USRP-X 系列仅支持千兆和万兆以太网,不能与 10/100 Mbps 接口一起使用。

请注意,10 千兆以太网定义了协议,而不一定定义了介质。例如,您可以使用光纤 SFP+ 收发器模块通过光纤使用 10GigE。

设置主机接口

USRP-X 系列通过千兆和十千兆以太网在 IP/UDP 层进行通信。USRP X300/X310 设备的默认 IP 地址取决于所使用的以太网端口和接口。您必须将主机以太网接口配置为与所连接设备位于同一子网上的静态 IP 地址,才能实现通信,如下表所示:
在这里插入图片描述
如您所见,X300/X310 实际上存储了不同的 IP 地址,这些地址都以不同的方式对设备进行寻址:每个以太网端口和接口类型(即千兆或十千兆)的组合都有自己的 IP 地址。例如,当通过 1 千兆以太网在其第一个端口(端口 0)上寻址设备时,相关 IP 地址是使用密钥存储在 EEPROM 中的 IP 地址ip-addr0,或默认为 192.168.10.2。

请参阅配置主机的 IP 地址以了解如何更改机器的 IP 地址和 MTU 大小以便与 X300 很好地配合使用。

变砖之后

确保已经安装了vivado 20119.1
jtag连接线把计算机和设备连接到一起。

1、启动vivado:

2、点击Open Hardware Manager:

在这里插入图片描述

3、在弹出的界面选择Tools->Auto Connect,

在这里插入图片描述

4、选中xc7k410t_0(1),右击,选择Program Device:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

在这里插入图片描述

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

看到主机之后,x310恢复正常,接下来重新烧写固件。

uhd_image_loader --args="type=x300,addr=192.168.10.2" --fpga-path="<path to FPGA image>"

在这里插入图片描述


http://www.ppmy.cn/server/157758.html

相关文章

关于ReLU激活函数的解释以及其在神经网络中的应用

ReLU&#xff08;Rectified Linear Unit&#xff0c;修正线性单元&#xff09;是一种常用的激活函数&#xff0c;广泛应用于神经网络中&#xff0c;特别是深度学习中。它的定义非常简单且直观。ReLU的公式如下&#xff1a; f(x)max⁡(0,x)f(x) \max(0, x) 这意味着&#xff…

Cocos二维Slider

1、可拖动区域计算 根据UI的世界坐标了宽高信息计算出handle的坐标范围 this.posMin new Vec2(this.node.worldPosition.x - this.uiSelf.contentSize.width * 0.5, this.node.worldPosition.y - this.uiSelf.contentSize.height * 0.5); this.posMax new Vec2(this.node.w…

TrustRAG:增强RAG系统鲁棒性与可信度的创新框架

在人工智能飞速发展的今天&#xff0c;大语言模型&#xff08;LLMs&#xff09;凭借其强大的语言处理能力在诸多领域大放异彩。检索增强生成&#xff08;RAG&#xff09;系统&#xff08;面向企业RAG&#xff08;Retrieval Augmented Generation&#xff09;系统的多维检索框架…

HBuilderX打包ios保姆式教程

1、登录苹果开发者后台并登录已认证开发者账号ID Sign In - Apple 2、创建标识符&#xff08;App ID&#xff09;、证书&#xff0c;描述文件 3、首先创建标识符&#xff0c;用于新建App应用 3-1、App的话直接选择第一个App IDs&#xff0c;点击右上角继续 3-2、选择App&#x…

【CSS】HTML页面定位CSS - position 属性 relative 、absolute、fixed 、sticky

目录 relative 相对定位 absolute 绝对定位 fixed 固定定位 sticky 粘性定位 position&#xff1a;relative 、absolute、fixed 、sticky &#xff08;四选一&#xff09; top&#xff1a;距离上面的像素 bottom&#xff1a;距离底部的像素 left&#xff1a;距离左边的像素…

Vue 3 和 Electron 来构建一个桌面端应用

我们将使用 Vue 3 和 Electron 来构建一个桌面端应用&#xff0c;该应用可以通过 Websocket 与服务器进行通信&#xff0c;并实现心跳检测、客户端上线、获取资产信息以及修改资产状态的功能。以下是实现步骤的概述&#xff1a; 项目结构&#xff1a;创建一个 Vue 3 项目&…

设计模式 行为型 备忘录模式(Memento Pattern)与 常见技术框架应用 解析

备忘录模式&#xff08;Memento Pattern&#xff09;是一种行为型设计模式&#xff0c;它允许在不暴露对象内部细节的情况下保存和恢复对象的内部状态。这种模式的核心思想是将对象的状态保存在一个独立的备忘录对象中&#xff0c;以便在需要时可以恢复到之前的状态。 一、核心…

Redis 性能优化 18招

前言 Redis在我们的日常开发工作中&#xff0c;使用频率非常高&#xff0c;已经变成了必不可少的技术之一。 Redis的使用场景也很多。 比如&#xff1a;保存用户登录态&#xff0c;做限流&#xff0c;做分布式锁&#xff0c;做缓存提升数据访问速度等等。 那么问题来了&…