AI加速器内存计算:挑战与解决方案
1. 内存计算(IMC)基础
在IMC架构中,以RRAM(电阻式随机存取存储器)和SRAM(静态随机存取存储器)为基础的设计是核心。RRAM单元连接到位线(BL)和选择线(SL),通过在BL和SL上施加电压,以逐单元的方式执行形成、编程和读取操作。
- RRAM的读写操作 :在IMC的写入状态下,选择每个单元进行写入;在计算状态下,RRAM进行读取操作,有并行和串行两种读出方式。并行读出时,同时打开所有或多个字线(WL),输出在位线上累积;串行读出时,按行访问IMC阵列进行乘加(MAC)计算。输入方案有两种,一种是使用数模转换器(DAC)将输入向量转换为模拟电压,在电荷域进行计算;另一种是位串行计算,通过移位和加法电路处理输入向量的每个位。
- SRAM的IMC设计分类 :根据SRAM位单元类型和并行度,IMC设计大致可分为三类:
- 6T位单元并行计算:通过同时打开所有WL来执行MAC操作,WL由输入向量驱动,1表示打开该单元,0表示关闭。
- 6T位单元本地计算:设计特殊的计算引擎以逐行方式执行MAC操作,类似于RRAM - 基于IMC的串行读出。
- (6T + 额外T)位单元并行计算:在6T单元的基础上,每个位单元添加额外的晶体管以实现并行计算,同时还使用了预充电电路、ADC、写入驱动器、列多路复用器、行解码器和行驱动器等外围电路。
以下是SRAM - 基于IMC交叉阵列的操作流程:
AI加速器内存计算挑战与解决方案
超级会员免费看
订阅专栏 解锁全文
862

被折叠的 条评论
为什么被折叠?



