【发布时间】:2014-12-03 14:34:14
【问题描述】:
我是 Zedboard 的新手,我正在努力转移一个复杂的硬件加速器,我目前在常规 FPGA 板上工作。无论如何,我想在我能跑步之前先走路,所以已经完成了 Zedboard 高速公路教程,现在正在玩一些小项目。我的第一个是一个简单的加法器加速器:
-发送 2 个数字到 pl(可编程逻辑),到 reg a 和 b
-pl 加数字
-PS(CPU) 的中断表示计算已完成。
-在 ISR 中,PS 从 reg c 读取结果
对于这个设计,我在 AXI 互连中使用了 3 个寄存器(a、b、c),我使用 CIP 创建了 IP 模板。
基本上,发送控制信号以启用添加到 PL 的最佳方式是什么。那么我应该如何向 PL 加法器表明我已经在 reg a 和 b 中加载了两个数字并且现在想要添加它们呢?
-我应该创建一个 1 位信号 GPIO 互连,向 IP 添加一个第 4 个 1 位控制寄存器吗?或者有没有更“时尚”的方式通过使用 BUS2IPdata 信号来做到这一点?
-或者是否有另一种方法来创建自定义 PS 到 PL 控制启用信号?
非常感谢 山姆
目前的想法:
-基于 BUS2IPWrCE 在 user_logic HDL 中构建一个开关,所以当它被断言写入 reg B 时,我可以向我的加法器发送一个启用信号吗?或者我会因为数据没有立即完全写入而遇到一些并发问题?
【问题讨论】:
-
在你可以运行之前先走:这表示使用 GPIO 作为第一步。它会处理一些开关、寄存器和灯(显示器?)就好了。之后,如果需要避免额外的硬件层,或者 GPIO 驱动太慢,您可以开发自己的 AXI 外设。
标签: vhdl fpga hardware-acceleration zynq