问题标签 [zynq]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ubuntu - 内核恐慌 - 不同步:没有找到工作初始化
我正在尝试通过 SD 卡在 zynq 7000 上使用 Linaro Ubuntu 桌面。在 SD 卡上创建两个分区并插入 FPGA 后,我在主机 PC 上收到此消息(使用 UART 通过串行端口链接到卡):
连接 VGA 的显示器不显示任何内容。有人可以帮我理解这个问题的原因吗?
c - 将以太网数据包写入特定的内存位置?
如果有人能为我指出一条路,我将不胜感激!
我想设计一个系统,它可以通过 TCP/IP 协议接受数据,现在一旦接收到数据,我想将此数据重定向到特定的内存位置,并为下一个数据包释放接收缓冲区并执行相同的操作. 在我的系统中,从主机到我的 fpga 板只有一个专用连接。
我正在使用 LWIP。我试图了解 LWIP 如何制作描述符列表(我的意思是如何为此目的决定特定的内存位置,因为我每次初始化程序时观察到 rx_qbar 指向不同的位置,即使没有数据包是发送或接收!!)。
所以我的想法是我应该控制已完成的描述符,当下一个缓冲区正在进行时,我可以复制第一个缓冲区(我的意思是 BD1 完成,Bd2 继续,BD1 rx_buffer 将被复制到我指定的地址),而不会干扰正在进行的事务接收端口!如果有人能帮助我在寄存器级别理解这个过程,我将不胜感激。
user-interface - FPGA逻辑的GUI控制的实用方法是什么?
我有一块 Zynq 开发板 (Z7020),我在硬件内核上运行 Linux。我想控制逻辑,我将编程到 Zynq 的 FPGA 部分,在硬件内核上运行 GUI 界面并显示在连接的触摸显示屏上。
当我从 GUI 界面选择选项或启动/停止任务时,我是否会向 FPGA 发送中断?
我如何也将任务完成的指示从 FPGA 返回到硬件内核或可能的一些数据?
linux-kernel - 无法访问 /dev/video*:没有这样的文件或目录
因此,我正在开发 zynq z7000 卡,并在其上制作了 Linux 内核。我将 Linaro 作为根文件系统。我设法启动了卡,但是我只能使用鼠标和键盘 USB 设备。我尝试了网络摄像头和闪存驱动器,但它们无法正常工作。当我使用:
我得到了网络摄像头设备
但是,当我尝试
我明白了
我已经使用这些配置来构建我的图像。
ubuntu - Petalinux 2014.4 使用 board_f 文件构建错误
我正在尝试为一个项目构建一个 petalinux 内核。vivado 中的比特流编译得很好,有一些警告,但它们是有意的(隐含的锁存器,不在敏感度列表中的东西等)。
当我得到 HDF 时,一切都很好,项目初始化得很好。当我配置项目时,一切都很顺利。没有什么不寻常的,我正在实例化基本设置,没有任何变化。
现在,当我运行时petalinux-build -v
,一切都很好,直到我进入 board_f 文件。由于此错误,这些失败。
我在 Ubuntu 14.04 和 15.10 都试过,错误都是一样的。
我不能发布整个构建日志,但这里有一个指向 pastebin 日志的链接 [第 2375 行出现错误] http://pastebin.com/zFkXs8wb
vhdl - 如何从 AXI4 总线读取大量数据
我正在 zybo 板上构建一些东西,所以使用 Zynq 设备。
我想从 CPU 写入主存储器,并用 FPGA 从它读取,以便将 CPU 结果写入另一个设备。
我很确定我需要使用 AXI 总线来执行此操作,但我无法找到解决问题的最佳方法。我是否:
- 自己制作完整的 AXI 外设?大概是一个主机,它向主内存发出读取请求,然后完成它们。我发现很难找到有关如何实际制作 AXI 外设的资源,我从哪里开始寻找简单的解释。
- 使用其中一个 Xilinx IP 内核为我处理 AXI 总线,但其中有很多,我不确定最好使用哪一个。
无论是什么,它都需要速度快,并且需要能够从我板上的 DDR 内存中进行大量读取。该内存还需要可由 CPU 写入。
谢谢!
verilog - AXI IP 综合期间出现未知错误
我正在尝试使用 Xilinx Vivado 中的 IP 封装工具来创建具有 AXI-Lite 接口的协处理器,并将其用于我的数字系统工程课程的 Zynq SoC 设计中。协处理器是一个 GCD 计算器,我们已经在之前的任务中开发了它。我按照讲师的指示从 GCD 计算器中创建了一个 IP,我们大致按照位于此处的 PDF 中的教程 4A来创建 AXI 接口(显然修改了 I/O 声明以适应 GCD 计算器)。我有一个名为“数据”的数据总线,从 AXI IP 和 GCD IP 运行,以将值发送到计算器。但是,当我尝试合成设计时,我收到以下错误:
[Synth 8-685] variable 'data' should not be used in output port connection'
错误指向定义我的数据端口的 AXI 总线接口实例化行。
我一直在网上搜索这个错误的解决方案几个小时,但即使是 Xilinx 网站,也没有向我们提供的 Xilinx 文档,都没有关于这个错误的任何信息,我也找不到任何来自遇到相同错误的任何人的帐户。
我给教授发了电子邮件,看看他是否有任何想法,但他可能还要六个小时才能醒来,而且作业今天(明天?)到期。
有没有人听说过这个错误,或者知道如何纠正它?
这是包含错误源的部分代码:
谢谢,
-安德鲁
vhdl - 将数据存储到 zynq 设备上的 ram
我目前在将Zynq的 PS 部分生成的图像存储到板的 DDR3 中时遇到一些问题,然后将该图像读入板的 PL 侧,以便在那里创建的 VGA 驱动程序可以
PS 创建一个 640x480 的图像,理想情况下我想将其存储在 Dram 中。到目前为止,我一直使用 DMA 来回传输数据并以某种方式(不存储所有像素)将其存储到我系统的块 RAM 中。但这不是一个理想的解决方案,我也知道..
所以我的问题是如何访问我的 zynq 板的 DDR ram,我知道它位于 PS 端,但似乎找不到任何解释它应该如何接口的文档等等..
verilog - 不同频率的 LED 计数器程序 (0 - 15)
我想在 Zybo 板上用 4 个 LED 制作一个计数器,从 0 到 15 计数。此外,我希望板上的 4 个按钮对应于 LED 变化的不同频率(0.5Hz、1Hz、2Hz、 4赫兹)。我已经实现了具有固定频率的简单计数器,但没有实现按钮频率变化的第二部分。
在块设计中,我有一个 Zynq 处理系统、一个读取按钮数据的 AXI GPIO 和一个用作 LED 驱动器、时钟分频器和频率转换器的自定义 IP。
自定义 IP
时钟分频器模块代码。
寄存器 constantNumber 取相应的值以改变时钟频率。
其余的自定义 IP 逻辑。
按钮数据被发送到自定义 IP (slv_reg0) 的第一个寄存器,后者又将它们发送到 Clock_Divider 模块中的 reg0。
主 C 程序
我可以确认 AXI GPIO 正确读取了按钮数据,因为当按下它们时,终端中会打印正确的行。但是当我按下按钮时,频率并没有改变。此外,它以非常慢的频率运行,比默认的 1Hz 慢得多,即使按钮数据没有发送到自定义 IP。
问题必须存在于自定义 IP 中的 reg0 案例逻辑或将按钮数据从 cpu 发送到自定义 IP 的寄存器的某个地方。
xilinx - Zynq7000 PS DMA“完成”信号过早
TL;DR:Zynq7000 PS 内置 DMA 过早返回“完成”信号。它似乎在(我假设)填充其内部“MFIFO”并且不再需要访问数据源时立即发出信号。但是我的软件也需要知道它何时真正完成了数据传输。
PS DMA 是否有状态位来指示传输是否完成?Xilinx 文档中的一些 DMA 寄存器不清楚(http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf,第 276 页)
我正在使用 DMA 使用以下 C 代码将大量数据从 DDR 内存泵送到 PL IP:
然后我开始DMA传输......
并等待它完成,然后再从我的 IP 中读取结果。
我遇到的问题是,在数据传输完成之前,这个结果经常被过早地读回。显然,DMA 有时会说它在 DMA 传输仍在进行时已完成(我可以说是因为,从chipscope,我可以看到在写入突发仍在发生时发生读取)。
如何将我的软件设置为等到 DMA实际完成数据传输?