【芯片设计- RTL 数字逻辑设计入门 9.3 -- 为什么 FPGA 的效率低于 ASIC?】

文章目录

FPGA 和 ASIC 概述

FPGA(Field-Programmable Gate Array)

FPGA 是一种可重构逻辑器件,用于在硬件级别实现各种逻辑功能。以下是 FPGA 的一些关键特点:

  • 可重构性:FPGA 能够在现场(即部署后)通过编程多次重新配置。这意味着设计人员可以根据需要多次修改其逻辑功能。
  • 灵活性:FPGA 提供了高度的设计灵活性,适用于原型设计和需要频繁更新的产品。
  • 快速开发周期:由于其可编程性,FPGA 设计的开发周期通常比 ASIC 短,适合快速迭代和测试。
  • 应用广泛:广泛应用于通信、军事、工业控制、消费电子等领域,尤其适合需要高性能并行处理的任务。

ASIC(Application-Specific Integrated Circuit)

ASIC 是一种专用集成电路,用于在制造时固定特定的功能。以下是 ASIC 的一些关键特点:

  • 专用性:ASIC 设计用于执行特定任务,不能像 FPGA 那样重新配置。这使得 ASIC 在目标任务上具有更高的性能和效率。
  • 高性能:由于其专用性,ASIC 通常在功耗、速度和面积方面比 FPGA 更具优势,非常适合大型量产产品。
  • 长开发周期:ASIC 设计和制造需要更长的时间和更高的成本,一旦制造完成,无法更改其功能。
  • 应用场景:广泛用于消费电子、通信设备、汽车电子等需要高性能、低功耗的领域。

FPGA 与 ASIC 的对比

特性 FPGA ASIC
可重构性
灵活性
开发周期
开发成本 较低 较高
性能 通常不如 ASIC
功耗 通常较高
适用场景 原型设计、频繁更新的产品、小批量生产 大批量生产、对性能和功耗要求高的产品

总结

  • FPGA :是一种可重构逻辑器件,具有高灵活性和快速开发周期,适用于原型设计和需要频繁修改的应用场景,先制造的芯片,再次设计时"重新配置"。
  • ASIC :是一种专用集成电路,具有高性能和低功耗的优势,适用于大批量生产和对性能要求高的应用场景,ASIC 不需要"重新配置"。你先设计,把它交给代工厂,然后制造芯片。

现在让我们看看这些芯片的结构是什么样的,以及它们的不同之处。

逻辑单元(FPGA的基础模块)

在可编程逻辑器件(PLD)中,各个厂商对其基本构建单元有不同的命名。在 Xilinx FPGA 中,这个基本单元被称为 Logic Cell(LC)。以下是 Xilinx Logic Cell 的组成及其功能:

  1. 4-input LUT(查找表)

    • 一个 4 输入的查找表,用于实现任意 4 输入的逻辑函数。
    • 查找表(LUT)是 FPGA 中的基本构建模块,可以通过编程实现不同的逻辑操作。
  2. MUX(多路复用器)

    • 用于选择 LUT 的输出或者其他输入信号。
    • MUX 可以增强逻辑单元的灵活性,使其能够实现更复杂的逻辑功能。
  3. Register(寄存器)

    • 一个寄存器,用于存储数据。
    • 寄存器可以配置为触发器(Flip-Flop, FF)或者锁存器(Latch)。
  4. Clock(时钟)

    • 时钟信号可以配置为上升沿触发或下降沿触发。
    • 时钟配置使得 Logic Cell 能够在不同的时钟边沿捕获数据。

它是最小的逻辑块,LUT 充当组合逻辑。在DFF的帮助下,可以形成时序逻辑。它可以构建逻辑门、多路复用器、编码器、加法器; 任何真值表都可以作为布尔表达式存储在 LUT 中。

一个 LUT 可以保存有限数量的数据。逻辑单元的 LUT 也是有限的。

具有许多项的布尔表达式需要更多的内存空间,工具在布局布线的时候会将剩余项放入另一个逻辑单元中。这就需要在两个逻辑单元之间有路由信号。

FPGA路由信号


白线是从一个逻辑单元路由到另一个逻辑单元的信号。可以想象如果实现更大逻辑时候这个导线长度会增加多大。这增加了额外的延迟,降低了时钟频率,消耗了更多的面积和功耗。

所有这一切都只是为了"重构"。

即使设计不需要其他单元或路由信号,它们仍然存在于FPGA芯片路由区域和静态功率中,从而降低了效率。

标准单元:ASIC的构建模块


标准单元库可以具有小至 NAND 门的组件和 IP,例如加法器、FF、BRAM、多路复用器等。

所有标准单元库都针对面积和功率进行了优化。

ASIC布局

单个单元彼此紧密连接,形成更大的逻辑功能。位置也针对信号传播进行了优化。与FPGA相比,ASIC没有不必要的逻辑和路由开销。这样可以节省更少的面积和功率。还可以实现更快的时钟。

以上这些ASIC会比FPGA具有更高的效率。

推荐阅读
https://mp.weixin.qq.com/s/60Th4G6IexMzdnjplqfimA

相关推荐
bnsarocket20 小时前
Verilog和FPGA的自学笔记2——点亮LED
笔记·fpga开发·verilog·自学
易享电子1 天前
基于单片机智能台灯(调光,时钟)系统Proteus仿真(含全部资料)
单片机·嵌入式硬件·fpga开发·51单片机·proteus
电子凉冰1 天前
FPGA强化-串口RS485
fpga开发
ShiMetaPi1 天前
操作【GM3568JHF】FPGA+ARM异构开发板 使用指南:音频接口
arm开发·嵌入式硬件·fpga开发·rk3568
码不停蹄Zzz1 天前
xdma IP使用教程1-xdma ip核配置
网络协议·tcp/ip·fpga开发
易享电子2 天前
基于单片机电器断路器保护器系统Proteus仿真(含全部资料)
单片机·嵌入式硬件·fpga开发·51单片机·proteus
璞致电子2 天前
fpga开发板ZYNQ 璞致 PZ7010/7020 邮票孔核心板简介-ZYNQ7000系列小系统学习板
linux·嵌入式硬件·学习·fpga开发·fpga·fpga开发板·xilinx开发板
greatofdream2 天前
HDLBit 个人记录
fpga开发
ARM+FPGA+AI工业主板定制专家2 天前
基于JETSON/RK3588机器人高动态双目视觉系统方案
人工智能·机器学习·fpga开发·机器人·自动驾驶
li星野2 天前
打工人日报#20251010
笔记·程序人生·fpga开发·学习方法