首先就是FPGA是一个集成芯片,其中包括了数以万计的逻辑门,但是随着技术发展,现在已经有很多构建完善的常用组件。类似时钟生成器、动态随机存取存储器(DRAM)控制器、外围组件互连Express(PCI)控制器,甚至整个多核微处理器。
接下来就是关于hard ip的问题,我们所熟知的ip,叫做知识产权,前面提到过这个东西叫做内置在FPGA内部的组件,就像DRAM控制器、PCIe控制器、时钟生成器和大块内存。(说句实话,这个东西还是有点奇怪,原文中给的就是知识产权不是我所说的组件,叫 intellectual property built into the FPGA,然后看着后面所说的控制器,我就纳闷了叫啥不好,就叫system,我觉得都还好接受。)后面就介绍现在很多功能都集成在这个硬ip上,FPGA的构造也就成了从以往只有逻辑电路到现在的一半芯片,一半硬ip的设定。后续的工作都可以通过使用构建好的硬ip去编辑订制FPGA特定的应用。
最后介绍的东西让我有点接受不了它的命名方式,十分古怪,首先介绍的是order reduction,这个东西一看订单减少,读起来叫简化逻辑,优化算法。然后开始进入正题,讲述FPGA的并行性,以往我们所使用的的微型处理器,大多都是没办法简化操作,也就是不智能,加法变为乘法是强化,乘法变为加法,在很多时候就是简化。FPGA在矢量运算上,算是得天独厚,矢量属性在物理学等等学科上非常有效。在微处理器必须重复做相同的步骤的时候,FPGA可以并行执行重复操作,最后将答案整理起来,所以从性能和消耗上来看,FPGA确实会比ASIC,ASSP好。