his work presents an energy-efficient digital-based computing-in-memory (CIM) processor to support floatingpoint (FP) deep neural network (DNN) acceleration. Previous FP-CIM processors have two limitations. Processors with post-alignment shows low throughput due to serial operation, and the other processor with prealignment incurs truncation error. To resolve these problems, we focus on the statistics that outlier exists according to shift amount in pre-alignment-based FP operation. As those outlier decreases energy efficiency due to long operation cycles, it needs to be processed separately. The proposed Hetero-FP-CIM integrates both CIM arrays and shared NPU, so they compute both dense inlier and sparse outlier respectively. It also includes efficient weight caching system to avoid entire weight copy in shared NPU. The proposed Hetero-FP-CIM is simulated in 28 nm CMOS technology and occupies 2.7 mm$^2$. As a result, it achieves 5.99 TOPS/W at ImageNet (ResNet50) with bfloat16 representation.
본 논문은 심층 신경망 (DNN)의 부동소수점 연산을 위한 메모리 내 컴퓨팅 (CIM)-뉴럴 프로세싱 유닛 (NPU)의 이기종 프로세서를 제안한다. 부동소수점 연산의 데이터 정렬 문제로 인하여, 기존 CIM 프로세서는 (1) 다중 데이터를 순차적으로 처리하여 낮은 연산 처리량, (2) 다중 데이터의 정렬 전 처리 과정에서 데이터 누락의 문제가 있다. 본 논문은 전체 데이터를 두 가지 (Inlier/Outlier)로 분류하며, 높은 에너지 효율로 Inlier를 처리하는 CIM과 CIM의 연산 효율을 저하하는 Outlier를 에너지 효율적으로 처리하는 NPU으로 구성된 이기종 연산 프로세서를 제안한다. 또한, 이기종 연산기 사이에 발생하는 가중치 중복, 처리 속도 불균형을 캐싱 시스템을 도입하여 해결한다. 제안된 프로세서는 28nm CMOS 기술로 시뮬레이션 되었으며, 2.7mm$^2$을 차지한다. 결과적으로 5.99 TFLOPS/W 에너지 효율을 ImageNet (ResNet-50)에서 달성한다.