作者投稿和查稿 主编审稿 专家审稿 编委审稿 远程编辑

计算机工程 ›› 2024, Vol. 50 ›› Issue (6): 328-335. doi: 10.19678/j.issn.1000-3428.0067515

• 开发研究与工程应用 • 上一篇    下一篇

基于卷积神经网络的逐级唤醒存内计算控制器设计

宋庆增1, 刘向东1, 许康为1, 刘佳辉2, 任二祥2, 骆丽2, 魏琦3, 乔飞4   

  1. 1. 天津工业大学计算机科学与技术学院, 天津 300387;
    2. 北京交通大学电子信息工程学院, 北京 100091;
    3. 清华大学精密仪器系, 北京 100084;
    4. 清华大学电子工程系, 北京 100084
  • 收稿日期:2023-04-27 修回日期:2023-07-18 发布日期:2024-06-11
  • 通讯作者: 乔飞,E-mail:qiaofei@tsinghua.edu.cn E-mail:qiaofei@tsinghua.edu.cn
  • 基金资助:
    新疆维吾尔自治区重点研发计划项目(2022B01008-3);国家自然科学基金 (92164203,62334006)。

Design of Sequential Wakeup Compute-In-Memory Controller Based on Convolutional Neural Network

SONG Qingzeng1, LIU Xiangdong1, XU Kangwei1, LIU Jiahui2, REN Erxiang2, LUO Li2, WEI Qi3, QIAO Fei4   

  1. 1. School of Computer Science and Technology, Tiangong University, Tianjin 300387, China;
    2. School of Electronic and Information Engineering, Beijing Jiaotong University, Beijing 100091, China;
    3. Department of Precision Instruments, Tsinghua University, Beijing 100084, China;
    4. Department of Electronic Engineering, Tsinghua University, Beijing 100084, China
  • Received:2023-04-27 Revised:2023-07-18 Published:2024-06-11

摘要: 随着人工智能的发展,边缘端设备对智能图像处理的需求急剧增加。目前边缘端设备主要面临能量受限、吞吐率较低等问题。无人机在侦察过程中,根据任务要求需进行复杂的地形分析、物体识别和环境监测等任务,这些任务常常会给设备带来严重的功耗问题,并且严重影响无人机的飞行时间。针对上述问题,提出一种基于卷积神经网络的逐级唤醒存内计算控制器设计方案,控制器内部能够完成分类型网络的前向推理,可根据分类结果唤醒对应的边缘端设备。控制器的模拟部分采用存算一体计算模式,数字部分采用分块的处理方式,在运行过程中可将空闲模块休眠,以降低系统的整体功耗。此外,控制器内部还集成了级联接口,可以将复杂任务分解为多个层级的子任务,并将其部署到级联的控制器上,从而实现多级唤醒,使系统具备提前输出的潜力。实验采用ResNet-14作为神经网络模型,数据集采用CIFAR-10数据集。实验结果表明,在10 MHz的时钟频率下,基于卷积神经网络的逐级唤醒存内计算控制器可以实现60 帧/s的检测帧率,并且分类精度达到84.61%,验证了该架构在能量受限应用场景下的可行性和高效性。

关键词: 逐级唤醒, 存内计算, 神经网络, 目标分类, ResNet结构

Abstract: With the development of artificial intelligence, the demand for intelligent image processing on edge devices has significantly increased. At present, edge devices mainly face issues such as limited energy and low throughput. For example, during reconnaissance, drones may need to perform complex terrain analysis, object recognition, and environmental monitoring functions according to their task requirements. These tasks often cause serious power consumption issues for the equipment in real-time, and seriously affect the flight time of drones. In response to these issues, this study proposes a design for a sequential wakeup Compute-In-Memory(CIM) controller based on a Convolutional Neural Network(CNN). This controller can perform forward inference for classified networks internally and wakeup corresponding edge devices based on the classification results. The analog part of the controller adopts a CIM calculation mode, whereas the digital part adopts a block processing method. During operation, idle modules can be dormant to reduce the overall power consumption of the system. In addition, the controller also integrates cascading interfaces, which can decompose complex tasks into multiple levels of subtasks and deploy them to cascading controllers, thereby achieving multi-level wakeup and giving the system the potential for early output. The results of an experiment using ResNet-14 as the neural network model and the CIFAR-10 dataset show that at a clock frequency of 10 MHz, the sequential wakeup CIM controller based on a CNN can achieve a detection frame rate of 60 frame/s and classification accuracy of 84.61%. The experimental results validate the feasibility and efficiency of this architecture in energy-constrained application scenarios.

Key words: sequential wakeup, Compute-In-Memory(CIM), neural network, target classification, ResNet structure

中图分类号: