【技术实现步骤摘要】
一种处理激活函数的硬件电路及芯片
[0001]本申请涉及硬件电路
,特别是涉及一种处理激活函数的硬件电路及芯片。
技术介绍
[0002]随着计算机技术的发展,以深度学习为代表的人工智能技术在计算机视觉、语音识别、自然语言处理等领域取得了巨大突破。激活函数作为神经网络和深度学习中重要部分,激活函数的计算结果将直接影响到整个算法的执行效率。激活函数计算结果的准确率对于神经网络模型的硬件加速有着重要的作用。
[0003]目前,激活函数在硬件电路中的计算有以下两种方案:
[0004]第一种:通过高阶的多项式来逼近激活函数的函数值,但是,若想要提高计算结果的准确率,就需要提高多项式的阶数,当多项式的阶数较高时,计算过程复杂,增加硬件电路的面积、功耗、延迟等。
[0005]第二种:将激活函数在每一个自变量处的函数值存储在寄存器中,在需要计算激活函数的函数值时,直接从寄存器中获取。虽然该种方案简化了计算过程,但是,若想要达到万分之一的误差水平,至少需要几千个寄存器,成本较高。
[0006]因此,上述两 ...
【技术保护点】
【技术特征摘要】
1.一种处理激活函数的硬件电路,其特征在于,包括:输入缓存、地址获取单元、查找表LUT、结果计算单元、输出缓存和控制单元;在所述控制单元的控制下:所述输入缓存,用于接收激活函数的自变量并传输给所述地址获取单元;所述地址获取单元,用于确定所述自变量与初始值之间的第一差值,根据所述第一差值与2
‑
K
的倍数确定查表地址组并传输给所述LUT;以及确定所述自变量对应的目标值,并传输所述自变量与所述目标值之间的第二差值给所述结果计算单元;所述LUT,用于根据所述查表地址组,确定所述激活函数的在所述目标值的泰勒展开式的前M项多项式各项的系数值、余项的补偿值以及补偿系数并传输给所述结果计算单元;所述结果计算单元,用于根据所述前M项多项式的系数和所述第二差值确定所述前M项多项式之和;以及根据所述补偿值和所述补偿系数确定所述余项的近似值;以及根据所述前M项多项式之和以及所述余项的近似值确定所述激活函数在所述自变量处的函数值并传输给所述输出缓存;所述输出缓存,用于将所述函数值输出给上层系统。2.根据权利要求1所述的硬件电路,其特征在于,所述地址获取单元包括:转换单元和地址寄存器;所述转换单元,用于将第一差值的二进制半浮点数转换成为二进制定点数;所述地址寄存器,用于根据所述第一差值的定点数确定所述查表地址组。3.根据权利要求2所述的硬件电路,其特征在于,所述地址寄存器包括:第一地址寄存器和所述第二地址寄存器;所述第一地址寄存器包括8位,所述第二地址寄存器包括5位;所述第一地址寄存器,用于接收所述二进制定点数的第12至17位到所述第一地址寄存器的第3至8位,以及接收所述控制单元发送的2位补充值到所述第一地址寄存器的第1至2位,以确定所述前M项多项式的系数和所述补偿值的第一查表地址组的第一查表地址;所述第二地址寄存器,用于接收所述二进制定点数的第7至11位到所述第二地址寄存器,以确定所述补偿系数的第二查表地址。4.根据权利要求2所述的硬件电路,其特征在于,所述地址获取单元还包括:非门;所述地址寄存器包括:第三地址寄存器和所述第四地址寄存器;所述第三地址寄存器和所述第四地址寄存器均包括8位;所述第三地址寄存器,用于接收所述二进制定点数的第12至17位到所述第三地址寄存器的第3至8位,以及接收所述控制单元发送的2位补充值到所述第三地址寄存器的第1至2位,以确定所述前M项多项式的系数和所述补偿值的第一查表地址组的第一查表地址;所述第四地址寄存器,用于接收所述二进制定点数的第7至11位到所述第四地址寄存器的第3至7位;接收所述控制单元发送的1位补充值到所述第四地址寄存器的第8位,以及接收所述控制单元发送的2位补充值经过所述非门到所述第四地址寄存器的第1至2位,以确定所述补偿系数的第二查表地址。5.根据权利要求2所述的硬件电路,其特征在于,所述地址获取单元还包括:第一数据选择器、第二数据选择器和第三数据选择器;所述地址寄存器包括:第五地址寄存器;所述第五地址寄存器包括8位;在第一时钟周期内,所述第一数据选择器输出所述二进制定点数的第17位到所述第五
...
【专利技术属性】
技术研发人员:王岩,李卫军,
申请(专利权)人:深圳大普微电子科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。