AI算法架构的实现装置、卷积计算单元及相关方法与设备制造方法及图纸

技术编号:36849975 阅读:74 留言:0更新日期:2023-03-15 17:07
本申请提供了一种AI算法架构的实现装置、卷积计算单元及相关方法与设备,AI算法架构的实现装置包括:权重预处理单元,用于将权重掩码转换为两个3bit的权重掩码mask_l和mask_h,且两个权重掩码中均最多有1bit的1;卷积计算单元,包括数据选择器,用于根据两个权重掩码从4个待选数据中选出2个目标。本申请可以将spasity4:2的数据选择逻辑优化成两个基于3bits的权重掩码进行C31数据选择(即从3个数据中选择一个数据)的逻辑,由于2个C31数据选择的逻辑复杂度小于C42(即从4个数据中选择一个数据)的逻辑,因此简化了稀疏卷积中的数据选择逻辑,降低了稀疏数据选择电路关键路径上的延时。的延时。的延时。

【技术实现步骤摘要】
AI算法架构的实现装置、卷积计算单元及相关方法与设备


[0001]本申请涉及处理器
,具体而言,涉及一种AI算法架构的实现装置、卷积计算单元及相关方法与设备。

技术介绍

[0002]为了降低权重内存开销,降低计算开销和提升推理效率,AI(Artificial Intelligence,人工智能)算法中通过压缩模型(如模型剪枝)等方法降低weight(权重数据)中参数值的数量。因此AI算法中存在大量的sparsity Convolution(稀疏卷积)运算。稀疏卷积运算普遍采用的压缩算法为sparsity4:2压缩,即每2个weight有4bits index(权重掩码),每4bits权重掩码指示卷积运算时从4个数据中选择2个有效的数据和权重数据进行卷积运算,参与运算的数据减少一半达到降低计算开销和提升推理效率的目的。
[0003]目前,在采用sparsity4:2算法进行数据选择时,常规的方式是基于4bit的权重掩码,按照下述逻辑从4个数据(假设为data3、data2、data1、data0)中选择出两个目标数据data_1和d本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种AI算法架构的实现装置,其特征在于,包括:权重预处理单元,用于将权重掩码转换为一个3bit的第一权重掩码mask_l和一个3bit的第二权重掩码mask_h;其中:所述mask_l和所述mask_h中均最多有1个bit的数值为1;卷积计算单元,包括数据选择器,所述数据选择器用于根据所述mask_l和所述mask_h从4个待选数据中,选出2个目标。2.如权利要求1所述的AI算法架构的实现装置,其特征在于,所述mask_l={mask[2]&(mask[1:0]==0),mask[1]&!mask[0],mask[0]};所述mask_h={mask[3],mask[2]&!mask[3],mask[1]&(mask[3:2]==0)};其中,mask[3]、mask[2]、mask[1]、mask[0]、mask[1:0]、mask[3:2]分别表征4bit的所述权重掩码的第3位数据、第2位数据、第1位数据、第0位数据、第1位和第0位构成的2bit数据、第3位和第2位数据构成的2bit数据,&表征与运算,&!表征与非运算,==表征判断两端的值是否相等,相等则值为1,不相等则值为0。3.如权利要求2所述的AI算法架构的实现装置,其特征在于,所述数据选择器具体用于,将所述mask_l的第0位数据与第一个待选数据进行与运算,将所述mask_l的第1位数据与第二个待选数据进行与运算,将所述mask_l的第2位数据与第三个待选数据进行与运算,将三次与运算的值进行或运算,得到第一个所述目标数据;将所述mask_h的第0位数据与第二个待选数据进行与运算,将所述mask_h的第1位数据与第三个待选数据进行与运算,将所述mask_h的第2位数据与第四个待选数据进行与运算,将三次与运算的值进行或运算,得到第二个所述目标数据。4.如权利要求1

3任一项所述的AI算法架构的实现装置,其特征在于,所述权重预处理单元还用于在将权重掩码转换为一个3bit的第一权重掩码mask_l和一个3bit的第二权重掩码mask_h之后,判断第一权重数据和第二权重数据中,是否存在值为0的权重数据;所述第一权重数据为与根据所述mask_l选出的目标数据相对应的权重数据,所述第二权重数据为与根据所述mask_h选出的目标数据相对应的权重数据;若所述第一权重数据的值为0,则将所述mask_l修改为0;若所述第二权重数据的值为0,则将所述mask_h修改为0。5.如权利要求1所述的AI算法架构的实现装置,其特征在于,所述权重预处理单元具体用于:判断第一权重数据和第二权重数据中,是否存在值为0的权重数据;所述第一权重数据为与根据所述mask_l选出的目标数据相对应的权重数据,所述第二权重数据为与根据所述mask_h选出的目标数据相对应的权重数据;根据所述第一权重数据和第二权重数据的判断结果,将所述权重掩码转换所述mask_l和所述mask_h。6.如权利要求5所述的AI算法架构的实现装置,其特征在于,所述权重预处理单元具体用于:若所述第一权重数据和所述第二权重数据的值均为0,则设置所述mask_l和所述mask_h均为0;若所述第一权重数据的值为0,所述第二权重数据的值不为0,则设置所述mask_l为0,所述mask_h为{mask[3],mask[2]&!mask[3],mask[1]&(mask[3:2]==0)};
若所述第一权重数据的值不为0,所述第二权重数据的值为0,则设置所述mask_l为{mask[2]&(mask[1:0]==0),mask[1]&!mask[0],mask[0]},所述mask_h为0;若所述第一权重数据和所述第二权重数据的值均不为0,则设置所述mask_l为{mask[2]&(mask[1:0]==0),mask[1]&!mask[0],mask[0]},所述mask_h为{mask[3],mask[2]&!mask[3],mask[1]&(mask[3:2]==0)};其中,mask[3]、mask[2]、mask[1]、mask[0]、mask[1:0]、mask[3:2]分别表征4bit的所述权重掩码的第3位数据、第2位数据、第1位数据、第0位数据、第1位和第0位构成的2bit数据、第3位和第2位数据构成的2bit数据,&表征与运算,&!表征与非运算,==表征判断两端的值是否相等,相等则值为1,不相等则值为0。7.一种卷积计算单元,其特征在于,包括:权重传输子单元,用于接收权重掩码、第一权重数据和第二权重数据;数据传输子单元,用于接收待选数据;掩码转换单元,与所述权重传输子单元连接,用于将所述权重掩码转换为一个3bit的第一权重掩码mask_l和一个3bit的第二权重掩码mask_h;其中:所述mask_l和所述mask_h中均最多有1个bit的数值为1;数据选择器,分别与所述数据传输...

【专利技术属性】
技术研发人员:赵芮王震宇
申请(专利权)人:上海登临科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1