01signal.com

Xillybus快速入门指南

介绍

此页面是关于如何开始使用XillybusXillyUSB的简短摘要。这通常是一个快速而简单的过程,不需要很多指导。但是,不同的 FPGAs之间存在细微差异。

此处仅介绍最常见的用例和最新的 FPGAs 。当此页面中的信息明显缺失时,请参阅Xillybus的文档页面,其中包含更详细和具体的信息。

我不会在这里讨论Xillinux ,因为它的过程有点不同。

概述

开始使用 Xillybus分为三个步骤:

  1. 从演示包的(demo bundle)生成 FPGA 的比特流(bitstream)文件。
  2. 在计算机上安装驱动程序(这通常不是必需的)。
  3. 在显示 Xillybus 工作的计算机上执行简单测试(在 LinuxWindows的单独页面上进行了解释)。

稍后,您可能希望IP Core Factory处创建自定义 IP core 。这将允许您选择任意数量的数据流(streams)。但在此之前,试用演示包的将帮助您了解 Xillybus 的工作原理。

Xillybus 与 XillyUSB

如果您正在考虑使用 XillyUSB,请考虑选择 Xillybus for PCIe ,如果这是一个现实的选择: PCIe 总线比 USB更坚固。

仅当 FPGA 必须在计算机外部时才应选择XillyUSB (例如,当笔记本电脑用作主机(host)时)。

下载演示包的和软件

可从 Xillybus网站下载的所有内容均功能齐全。这包括IP Core Factory和演示包的的 IP cores 。无需请求 activation code 或任何类似的东西。但是,使用 IP core 的法律许可是有限的: 您只能将 IP core 用于评估。之后,可能需要购买许可证才能继续合法使用 IP core 。因此,请确保您了解这些条件

下载文件有两个单独的网页: 对于Xillybus 使用 PCIe ,对于XillyUSB 。转到相关网页,并下载以下项目:

所有这些文件都是 .zip 或 .tar.gz 格式。于是开始用一张 uncompression 把自己的内容存入盘中。

如果你的电路板不在演示包的的列表中,你就需要在这个演示包的(demo bundle)上进行修改。选择基于相同 FPGA family 的演示包的,并遵循 XilinxIntel FPGA文档中的指南。

AMD / Xilinx 和 Altera (以前称为 Intel FPGA) 的下一步有所不同。

为 AMD / Xilinx创建比特流

您需要在计算机上安装 Vivado 。 文档包含适用于每 FPGA的版本(versions)列表。但如果已经安装了 Vivado,请尝试使用它。如果 Vivado的版本不合适,则下面详述的过程将失败: 会出现错误提示需要更新的版本。如果没有出现这样的错误,则说明你的版本或 Vivado 没有问题。

这些是创建比特流文件的步骤:

Vivado 在实现期间生成了几 warnings ,但应该没有 Critical Warnings 和 errors。

详细解释在本文档中: Getting started with the FPGA demo bundle for Xilinx 。请注意, Vivado 不适用于 Virtex-5、 Spartan-6 和 Virtex-6。如果您使用这些 FPGAs之一,请参阅此文档。

不要尝试在没有 Tcl 脚本的情况下创建 FPGA project 。如果您尝试创建一个新的 project 并导入源 files(source files),它可能无法正常工作。

为 Altera创建比特流

您需要在计算机上安装 Quartus 。 文档包含每 FPGA的合适版本列表。但如果已经安装了 Quartus,请尝试使用它。如果 Quartus的版本不合适,则下面详述的过程将失败: 会出现错误提示需要更新的版本。如果没有出现这样的错误,则说明你的版本或 Quartus 没有问题。

这些是创建比特流文件的步骤:

Quartus 在实现期间生成几个警告,但不应该有关键 Warnings (Critical Warnings)和 errors。

详细解释在本文档中: Getting started with the FPGA demo bundle for Intel FPGA 。如果您的 FPGA 早于 series-V (例如 Cyclone IV),则过程会稍微长一些。有关详细信息,请参阅此文档。

为微软 Windows(Microsoft Windows)安装驱动程序

Xillybus的驱动程序for Windows 的标准安装方式: 启动装有 FPGA 电路板的电脑。在开机前必须先将装有 Xillybus 的比特流装入 FPGA 。

首先打开包含驱动程序的 Zip archive 到本地磁盘。该文件可在演示包的的下载页面中找到。该文件的名称类似于 xillybus-windriver-1.2.0.0.zip。

在 Device Manager内部,应该有一个列在“Other Devices”下的 device 。这 device的图标会提示 device 没有安装好(带感叹号)。右键单击此图标并选择“Update Driver Software…”。选择从计算机中选择一个文件(“Browse my computer for driver software”)。然后选择名称为“xillybus-windriver-1.2.0.0”(或类似名称)的目录(directory)。单击“Next”,然后单击“Install”。

驱动程序正确安装后, Device Manager中会多出一个组,名称为“Xillybus”。在这个组里面,会有一个标题为“Xillybus driver for generic FPGA interface”的 device 。 device的图标不应指示错误(即图标上没有感叹号)。

如果使用 XillyUSB , device 会出现在名为“Universal Serial Bus controllers”的组下,驱动程序在 xillyusb-windriver-1.1.2.0-win10.zip中。

Windows指南中的截图更详细地描述了此安装过程。

为 Windows安装好驱动程序之后,接下来就是做一个简单的测试了。这在单独的页面上进行了解释。

为 Linux安装驱动程序(?)

Xillybus的驱动程序包含在 desktop computers的许多 Linux distributions 中。因此,如果您使用的是 Fedora、 Ubuntu 或 Mint, Xillybus的驱动程序可能已经安装在您的计算机上。

为了检查驱动程序是否已经安装,在 shell 提示符键入:

$ modinfo xillybus_core

如果响应是多行输出: 驱动程序已经安装好了,不需要做任何事情。只有当答案是“modinfo: ERROR: Module xillybus_core not found”时才需要安装驱动程序。

如果你想使用 XillyUSB,命令是

$ modinfo xillyusb

即使已经安装了驱动程序,安装 Xillybus的 udev 文件也是个好主意。请参阅本页底部。也可以跳过这个,直接进行简单的测试

如果没有安装驱动程序,有两种选择:

Xillybus 的驱动程序自版本 v3.12(version v3.12)起就属于 Linux kernel 树的一部分。如果你的 kernel是版本 is v4.6 (version is v4.6)或更高版本,则无需升级驱动程序: 自版本以来,没有任何有意义的变化(仅编码样式发生变化)。 XillyUSB 的驱动程序已添加到 Linux v5.14。

有关开始使用 Linux 的更多信息,请参阅相关指南

kernel 模块的编译(Compilation)

Xillybus的 kernel 模块的编译要求执行编译的计算机上已经安装了三个东西:

Linux的相关指南建议如何检查是否安装了这些元素,如果未安装,如何安装它们。

驱动程序的编译是这样完成的:

$ tar -xzf xillybus.tar.gz
$ cd xillybus/module/
$ make
make -C /lib/modules/4.15.0/build M=/home/01signal/xillybus/module modules
make[1]: Entering directory '/usr/src/linux-headers-4.15.0'
  CC [M]  /home/01signal/xillybus/module/xillybus_core.o
  CC [M]  /home/01signal/xillybus/module/xillybus_pcie.o
  Building modules, stage 2.
  MODPOST 2 modules
  CC      /home/01signal/xillybus/module/xillybus_core.mod.o
  LD [M]  /home/01signal/xillybus/module/xillybus_core.ko
  CC      /home/01signal/xillybus/module/xillybus_pcie.mod.o
  LD [M]  /home/01signal/xillybus/module/xillybus_pcie.ko
make[1]: Leaving directory '/usr/src/linux-headers-4.15.0'

为了安装 kernel 模块,键入“make install”(这需要 root)。

驱动程序将在下次 kernel 启动时自动加载总线上存在的 Xillybus device 。也可以使用 insmod 手动加载驱动程序。

请注意,那些打算在 embedded Linux device 上使用 Xillybus 的人可能需要使用 cross compiler。在这种情况下也需要与 embedded kernel 相关的 kernel headers 。

如果您不想使用“make install”,可以手动执行相同的操作: 将模块文件复制到包含 kernel 模块的目录中。此目录的名称必须包含将与 Xillybus一起运行的 kernel 的版本编号。

例如,

# cp xillybus_core.ko /lib/modules/4.15.0/kernel/drivers/char/
# cp xillybus_pcie.ko /lib/modules/4.15.0/kernel/drivers/char/

在此之后,运行 depmod ,以便 kernel 能够识别新的模块。例如:

# depmod -a 4.15.0-20

udev file (Linux)

建议安装 Xillybus的 udev file,即使已经安装了驱动程序。这允许访问 Xillybus 而不是 root user。此文件是包含驱动程序(xillybus.tar.gz 或 xillyusb.tar.gz)的包的一部分。

Xillybus 的 udev file 安装由这个命令(或类似产品)组成。至于 root user:

# cp 10-xillybus.rules /etc/udev/rules.d/

它在工作吗?

下一步是看看您是否做对了所有事情, Xillybus 是否可以在您的硬件上运行。 LinuxWindows分别显示了如何执行此操作。

此页面由英文自动翻译。 如果有不清楚的地方,请参考原始页面
Copyright © 2021-2024. All rights reserved. (b4b9813f)