【计组】FPGA和ASIC--《深入浅出计算机组成原理》(七)

本文介绍了FPGA的工作原理,包括用存储换功能实现组合逻辑、使用D触发器作为寄存器以及可编程逻辑布线。接着探讨了ASIC的特性,指出其在特定场景下能提供更低能耗和成本。文章还分析了选择FPGA或ASIC的决策因素,并详细解析了TPU的设计,强调其在深度学习推断中的优化,如矩阵乘法单元和固定流程控制。
摘要由CSDN通过智能技术生成

 课程链接:深入浅出计算机组成原理_组成原理_计算机基础-极客时间 

目录

一、FPGA 

(一)FPGA 的解决方案步骤

1、用存储换功能实现组合逻辑

 2、对于需要实现的时序逻辑电路,在 FPGA 里面直接放上 D 触发器,作为寄存器

3、可编程逻辑布线

 二、ASIC

(一)选择ASCI还是FPGA

 (二)解读TPU--拆解一块ASCI芯片

1、深度学习模型的训练和推断有什么不同

2、TPU的设计

3、TPU的细节优化


一、FPGA 

PAL(Programmable Array Logic,可编程阵列逻辑),只能“编程”一次,把预先写好的程序一次性烧录到硬件里面,之后就不能再修改了。

FPGA,现场可编程门阵列(Field-Programmable Gate Array):可以通过编程,来控制硬件电路的芯片。

(一)FPGA 的解决方案步骤

1、用存储换功能实现组合逻辑

在实现 CPU 的功能的时候需要完成各种各样的电路逻辑。在 FPGA 里,这些基本的电路逻辑,不是采用布线连接的方式进行的,而是预先根据软件里设计的逻辑电路,算出对应的真值表然后存储到一个叫作 LUT(Look-Up Table,查找表)的电路里面。这个 LUT 呢,其实就是一块存储空间,里面存储了“特定的输入信号下,对应输出 0 还是 1”(存储各种情况下的结果,使用的时候根据实际需要查找结果)。

 2、对于需要实现的时序逻辑电路,在 FPGA 里面直接放上 D 触发器,作为寄存器

和 CPU 里的触发器没有本质的不同。不过,会把很多个 LUT 的电路和寄存器组合在一起,变成逻辑簇(Logic Cluster)。在 FPGA 里,这样组合了多个 LUT 和寄存器的设备,也被叫做 CLB(Configurable Logic Block,可配置逻辑块)

3、可编程逻辑布线

通过 LUT 和寄存器,我们能够组合出很多 CLB,FPGA 通过可编程逻辑布线,来连接各个不同的 CLB,最终实现需要实现的芯片功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值