我在理解FPGA在并行处理方面的优势时遇到了一些问题。每个人都认为它是平行的,但它看起来并不是真正的平行。让我们看看这个例子:
我的某个引脚上有数据信号,每个时钟周期为1位。 FPGA将接收这些数据,因为它已经在集成电路内部存储了数据,所以它可以立即开始处理。但这称为串行处理,而不是并行处理。如果FPGA将等待数据累积,以后再并行处理,那么我们可以说FPGA处理是完全并行的,但是数据大量到达的好处是什么,我们只会浪费时间,因为例如,如果我们等待8位数据,我们将失去7个周期。那么FPGA的并行性有哪些好处?我无法得到它。
如果数据并行传入,那将是并行的,就像使用旧的DB-25并行端口连接器一样。但由于并行端口无法支持高速,因此该技术已经过时。今天的USB标准是串行的,以太网是串行的,所以....并行性在哪里???
答案 0 :(得分:2)
如果有数据以块的形式到达,并且块的到达速度快于可以处理的块,并且可以单独处理块,则会出现并行性。 FPGA不需要减慢数据发送器的速度,而是允许您添加更多处理"块"这样处理速度更快。
实施例: 您以50kB块的速度以1MB / s的速度接收数据(串行或并行,无关紧要),但您的算法只允许每秒处理1个块。在FPGA中,您可以连接"接收器"在20"处理器"中分配块,所以现在您的发送方仍然可以全速发送,并且您的接收方看到的整体延迟较少。
答案 1 :(得分:1)
并行性有几个层次,如果您想要使用计算机体系结构,则需要了解它们。 FPGA只是构建计算机"。
的工具级别为:
FPGA可以使用每个级别并行执行所有操作。