ISSCC 2017论文导读 Session 14:A 0.62mW Ultra-Low-Power Convolutional-Neural-Network Face-Recognition Pro
A 0.62mW Ultra-Low-Power Convolutional-Neural-Network Face-Recognition Processor and a CIS Integrated with Always-On Haar-Like Face Detector
单位:KAIST(韩国科学技术院)——ISSCC上大神级的机构···
DNN的加速器,面向不同的应用有着不同的能效需求:0.1W~1W,1W~5W等,不同的应用场景需要不同的架构。但是在0.1w以下的空间,目前成熟的工作还不多。本篇是一款面向Always-on 和IoT的0.62mW的人脸识别系统,面向IoT等极低功耗需求的计算场景。分为两个部分:人脸检测和人脸识别。下面主要讲一讲人脸识别部分的CNN引擎。
下图想说的是用分布式内存架构比集中式的会更好:
在卷积中,采用一个2D转两次1D的trick,比如5*5的卷积,先做一次5 *1再做一次1 *5卷积,可以得到一样大小的输出;结果是计算参数减少了,更重要的是计算量显著减少。(这个trick在算法中很容易想,但是在硬件中直接做效率不一定高,所以也就有了后面的T-SRAM的设计,可以一次取出一列的数据)
虽然计算减少了,但是精度损失比较少:
对于SF-CONV的访存:垂直方向的图像滤波效率很低,同时增加了4.7x的翻转率。基于此,提出了T-SRAM。T-SRAM支持两种访问方式:V-WD和V-SA是倒序访存,输出的是垂直方向的1D向量;而H-WD和H-SA是顺序访存,输出的是水平方向的1D向量。
用了TSRAM以后:
具体电路设计细节可以参考paper,我也是外行。
芯片版图:65nm工艺下,FD部分的CIS处理单元为3.3mmx3.36mm(320×240的阵列,支持哈尔检测的芯片,采用模拟存储);FR部分的CNNP单元为4mmx4mm(4×4的PE阵列,使用T-SRAM作为本地存储)。
V和F的调整情况:
SF-CONV的精度损失在1%以内,整体精确度达到97%(CNN网络,LFW数据)
总结:面向Always-on 和IoT的0.62mW的人脸识别系统[1]
1、超级功耗的人脸识别SoC(采用CIS和CNN实现)
2、数模混合的哈尔特征人脸检测电路
3、卷积分离的近似计算技术
4、支持水平、垂直数据读取的新结构T-SRAM
5、采用电压、频率可调的NVT实现
参考资料
[1] https://reconfigdeeplearning.com/2017/02/09/isscc-2017-session-14-slides14-6/
[2] A 0.62mW Ultra-Low-Power Convolutional-Neural-Network Face-Recognition Processor and a CIS Integrated with Always-On Haar-Like Face Detector
ISSCC 2017论文导读 Session 14:A 0.62mW Ultra-Low-Power Convolutional-Neural-Network Face-Recognition Pro的更多相关文章
- ISSCC 2017论文导读 Session 14 Deep Learning Processors,A 2.9TOPS/W Deep Convolutional Neural Network
最近ISSCC2017大会刚刚举行,看了关于Deep Learning处理器的Session 14,有一些不错的东西,在这里记录一下. A 2.9TOPS/W Deep Convolutional N ...
- ISSCC 2017论文导读 Session 14 Deep Learning Processors,A 2.9TOPS/W Deep Convolutional Neural Network SOC
最近ISSCC2017大会刚刚举行,看了关于Deep Learning处理器的Session 14,有一些不错的东西,在这里记录一下. A 2.9TOPS/W Deep Convolutional N ...
- ISSCC 2017论文导读 Session 14:ENVISION: A 0.26-to-10 TOPS/W Subword-Parallel DVAFS CNN Processor in 28nm
ENVISION: A 0.26-to-10 TOPS/W Subword-Parallel Dynamic-Voltage-Accuracy-Frequency-Scalable CNN Proce ...
- ISSCC 2017论文导读 Session 14 Deep Learning Processors,DNPU: An 8.1TOPS/W Reconfigurable CNN-RNN
转载请注明,本文出自Bin的专栏http://blog.csdn.net/xbinworld,谢谢! DNPU: An 8.1TOPS/W Reconfigurable CNN-RNN Process ...
- ISSCC 2017论文导读 Session 14: A 28nm SoC with a 1.2GHz Prediction Sparse Deep-Neural-Network Engine
A 28nm SoC with a 1.2GHz 568nJ/Prediction Sparse Deep-Neural-Network Engine with >0.1 Timing Erro ...
- ISSCC 2017论文导读 Session 14:A 288μW Programmable Deep-Learning Processor with 270KB On-Chip Weight
A 288μW Programmable Deep-Learning Processor with 270KB On-Chip Weight Storage Using Non-Uniform Mem ...
- 论文翻译:2020_FLGCNN: A novel fully convolutional neural network for end-to-end monaural speech enhancement with utterance-based objective functions
论文地址:FLGCNN:一种新颖的全卷积神经网络,用于基于话语的目标函数的端到端单耳语音增强 论文代码:https://github.com/LXP-Never/FLGCCRN(非官方复现) 引用格式 ...
- ASPLOS'17论文导读——SC-DCNN: Highly-Scalable Deep Convolutional Neural Network using Stochastic Computing
今年去参加了ASPLOS 2017大会,这个会议总体来说我感觉偏系统和偏软一点,涉及硬件的相对少一些,对我这个喜欢算法以及硬件架构的菜鸟来说并不算非常契合.中间记录了几篇相对比较有趣的paper,今天 ...
- 论文翻译:2019_TCNN: Temporal convolutional neural network for real-time speech enhancement in the time domain
论文地址:TCNN:时域卷积神经网络用于实时语音增强 论文代码:https://github.com/LXP-Never/TCNN(非官方复现) 引用格式:Pandey A, Wang D L. TC ...
随机推荐
- Redis 启动警告错误解决
启动错误 1.WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. T ...
- 关于static、内部类
1.static不能修饰外部类的原因 static修饰的成员是属于某个类的.而外部类的上一级程序单元是包,所以static不能修饰外部类. 2.外部类,内部类有不同访问权限的原因 外部类的上一级程序单 ...
- decltype类型声明- 现代C++新特性总结
decltype类型声明 有时会遇到这样的情况:希望从表达式的类型推断出要定义的变量的类型,但不想用该表达式的值去初始化变量.为了满足这一需求,C++11引入了decltype,它的作用是选择并返回操 ...
- (转)从零开始的Spring Session(一)
Session和Cookie这两个概念,在学习java web开发之初,大多数人就已经接触过了.最近在研究跨域单点登录的实现时,发现对于Session和Cookie的了解,并不是很深入,所以打算写两篇 ...
- [LeetCode] 183. Customers Who Never Order_Easy tag: SQL
Suppose that a website contains two tables, the Customers table and the Orders table. Write a SQL qu ...
- discuz $_G变量
class.core.php中 global $_G; $_G = array( 'uid' => 0, 'username' => ...
- NPOI 导出excel 分表
/// <summary> /// 由DataTable导出Excel[超出65536自动分表] /// </summary> /// <param name=" ...
- python 文件写入与储存
python使用open()这个函数来打开文件返回对象: open 第二参数 "r" 以只读方式打开文件 "w" 以写入方法打开文件,会覆盖已储存的内容 &qu ...
- zw版【转发·台湾nvp系列Delphi例程】HALCON TestRegionPoint1
zw版[转发·台湾nvp系列Delphi例程]HALCON TestRegionPoint1 unit Unit1;interfaceuses Windows, Messages, SysUtils, ...
- Root :: AOAPC I: Beginning Algorithm Contests (Rujia Liu) Volume 7. Graph Algorithms and Implementation Techniques
uva 10803 计算从任何一个点到图中的另一个点经历的途中必须每隔10千米 都必须有一个点然后就这样 floy 及解决了 ************************************* ...