gpt4 book ai didi

hardware - 如何估计某个功能是否会占用 FPGA 上的过多资源?

转载 作者:行者123 更新时间:2023-12-02 21:45:54 26 4
gpt4 key购买 nike

我正在开始我的第一个商业规模的应用程序,我经常发现自己在进行设计,但阻止自己编码和实现它,因为这似乎需要大量的资源使用。当它位于外围设备上时尤其如此(例如移位寄存器的输出抽头的使能)。当我想到通用实现可以达到多大时(抽头示例为 4k 位),情况会变得更糟。最干净的实现应该有这些,但在我看来,它增加了大量的开销。

是否有任何类型的规则可以用来快速决定设计选项是否值得编码和评估?一般来说,我不太担心触发器的数量,而更担心信号的宽度。这可能只是来自 CS 背景,其中所有应用程序边界都应尽可能小,以防止开销。

最佳答案

要点1.我们通过玩来学习,所以玩吧!尝试几件事。看看工具有什么作用。感受一下问题所在。如果你不尝试某件事,你就无法克服这一点。通常,问题并不在您想象的地方。

第 2 点。您需要了解这些决策的一些背景信息。与 FPGA/您的设计的容量相比,向移位寄存器添加使能有多大?

第 3 点。需要考虑两种主要类型的“资源”:细胞和时间。

从广义上讲,细胞相对容易。失败了多少次?可识别 block 中有多少逻辑(例如 ALU:乘法器、加法器等)?通常,这是由您尝试进行的设计定义的。如果没有寄存器、乘法器、加法器等,就无法构建 ALU。

时间更加微妙,并且总是与细胞进行权衡。您将尝试达到某些性能目标,并认识到导致这一目标变得困难的结构,以及从第 1 点开始体验的位置。

需要注意的事项包括:

  • 一个网络驱动大量事物。大扇出会导致单个驱动程序负载过重,从而降低其速度。然后,该工具必须使用单元格来缓冲该信号。经典的时间与细胞权衡。
  • 寄存器级之间的深层逻辑 block 。同样,如果接近边缘,该工具将不得不花费更多的单元来使逻辑满足时序。简单的逻辑又快又小。有时引入管道阶段可以减小设计的尺寸,因为它使两侧的逻辑变得更加容易。

如果每个位的扇出都很低并且您已经为寄存器做好了预算,那么不必太担心大型总线。大型总线通常是快速设计所固有的,因为您需要高带宽。调宽比调高时钟速度更容易。另一方面,请考虑宽总线的控制逻辑,因为它可能具有较大的扇出。

不同的工具和目标设备具有不同的特征,因此您必须尝试并学习适合您的设置的规则。尺寸与速度(现在是“与功率”)之间总是存在妥协。您需要了解是什么让您沿着曲线的各个方向前进。这需要经验。

Is there any kind of rule I can use to make a quick decision on whether a design option is worth coding and evaluation?

我能想出的唯一规则是“我有时间吗?”或不?'

如果有的话,我会探索。如果没有,我最好让某事发挥作用。

啊啊,按时完成设计的生活!

关于hardware - 如何估计某个功能是否会占用 FPGA 上的过多资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11091303/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com