【问题标题】:FPGA vs CPU: what operations are impossible on a processorFPGA vs CPU:处理器上哪些操作是不可能的
【发布时间】:2014-09-26 12:17:11
【问题描述】:

在此演示文稿中:

http://opensource.zylin.com/workshop/fpga.pdf

在幻灯片 12 上,标题为“我如何知道我需要 FPGA?”,具体原因之一是:

“有些操作在微处理器中是不可能的”

这是在比喻“在处理器上执行这些操作会很长时间”,或者只是有些操作对于处理器来说确实不可能,但在 FPGA 上是可行的。

如果有这样的操作,那是什么?

【问题讨论】:

  • 如果你真的想知道作者的意思,你需要写下来问问。微处理器一般是Turing Complete,而FPGA没有特殊的魔法来辅助计算不可计算的。他们可以更快地解决一些问题……仅此而已。
  • @HostileFork:谢谢。我对 FPGA 的工作原理大致了解,但是这句话让我很吃惊。
  • 使用处理器可能无法为具有 50ps 分辨率的异步外部事件添加时间戳。
  • @Chiggs:嗯,这可能是一个答案。如果您将其作为答案发布并详细说明,我将选择它并考虑已回答的问题。
  • 这听起来有点像“通用 CPU 甚至无法以与专用硬件大致相同的方式做的一些事情”,即它不接近原生,无论你做什么在某种意义上模拟 CPU 上的操作不再是相同的操作。这至少曾经适用于 128 位无进位乘法(然后英特尔为其添加了一条指令)。

标签: fpga microprocessors


【解决方案1】:

FPGA 设计有相当完整的软件模拟器,因此任何可以配置到 FPGA 中的逻辑都可以在微处理器上实现。

但是,时间是非常不同的,尤其是在模拟中。

因此,如果时序要求是“操作”定义的一部分,那么 F/D/X 处理器无法执行某些操作,这对于 FPGA 是可行的。

除了逻辑的实现,FPGA 还包含一些模拟模块。例如,差分数字信号的 I/O 焊盘可用作implementation of ADC and DAC blocks 的模拟比较器。 PLL 在 FPGA 中也很常见。以及大量的 I/O 引脚。微处理器通常没有这些特性(尽管微控制器可能),因此使用它们的 FPGA 设计不能在处理器上复制。

【讨论】:

  • 您对类比部分的看法是正确的,但仅将处理器与基于此的 FPGA 进行比较有点不公平。因为,这样一来,就可以说即使是哑电阻或电容也比处理器好。我认为这种比较只在数字方面有意义。但是,这是一个可以考虑的答案;谢谢。
猜你喜欢
  • 2012-03-04
  • 1970-01-01
  • 2010-09-18
  • 1970-01-01
  • 1970-01-01
  • 2020-10-16
  • 1970-01-01
  • 2012-01-23
  • 1970-01-01
相关资源
最近更新 更多