FPGA GPIO 是否有足够的能力以高速率(26Mbps)读取位?如果不行的话有什么办法吗?

问题描述 投票:0回答:1

我有两个系统,比如说系统A和系统B,所以系统A从物理引脚以26Mbps的速率生成位,我需要使用系统B(ZC706 FPGA/任何FPGA)捕获/读取所有数据,我正在尝试通过 FPGA GPIO 读取位,我的疑问是,FPGA GPIO 是否有足够的能力以高速率(26Mbps)读取位?如果不行的话有什么办法吗?

我尝试使用 ZC706 FPGA,我开发了一个使用 AXI GPIO 的系统,并开发了一个应用软件,来存储数据(位)。但由于 GPIO 速度的原因,数据不匹配。我无法解决这个问题,任何建议将不胜感激。

emulation fpga gpio xilinx vlsi
1个回答
0
投票

通过 CPU 采样接口(AXI 上的 GPIO)捕获兆位绝对无法在高于 5 MHz 的速率下工作,而且这不是 FPGA 的问题。想象一下 100MHz 的软 CPU,在每条指令上花费 4 个时钟,并且您至少需要 5 个指令来创建一个捕获数据的功能循环 - 这已经将速度限制在 100MHz/(4*5) = 5MHz

使用 FPGA,您可以以不同的方式处理该任务,您可以在您选择的 HDL 中编写 IP,以您想要的任何频率(例如 200-400MHz)对线路进行采样,将数据堆积到 FPGA 结构内的某个 RAM 块中,然后然后在某些条件下(触发功能、缓冲区已满等)向 CPU 发出数据已接收的信号。然后,IP 继续将数据采样到另一个 RAM 块中,以循环方式使用这两个块 - CPU 访问一个块,同时 IP 将数据写入另一个块。

© www.soinside.com 2019 - 2024. All rights reserved.