计算装置以及计算方法制造方法及图纸

技术编号:23399620 阅读:52 留言:0更新日期:2020-02-22 11:56
本申请提供了一种计算装置及计算方法,所述计算装置包括:映射单元、存储器、寄存器单元、运算单元、控制单元和数据访问单元。

Calculation device and calculation method

【技术实现步骤摘要】
计算装置以及计算方法
本申请属于神经网络运算领域,尤其涉及一种计算装置以及计算方法。
技术介绍
数据处理是大部分算法需要经过的步骤或阶段,在计算机引入数据处理领域后,越来越多的数据处理通过计算机来实现,现有的算法中有计算设备在进行神经网络的数据计算时速度慢,效率低。申请内容有鉴于此,本申请提供一种计算装置以及计算方法,能够提高计算速度,并且运算性能高效。本申请提供一种计算装置,其特征在于,所述计算装置包括:计算装置,其特征在于,所述计算装置包括:映射单元、存储器、寄存器单元、运算单元、控制单元和数据访问单元;其中,存储器,用于存储计算神经元、权值和运算指令;寄存器单元,用于存储运算指令的地址、输入数据的地址;控制单元,用于提取运算指令,该运算指令对应的操作域,将该运算指令译码成执行指令,该执行指令用于控制运算单元执行运算操作,将该操作域传输至数据访问单元;数据访问单元,用于提取该操作域对应的输入数据,并将该输入数据传输至映射单元;映射单元,用于将输入数据转换成输入神经元、权值和连接本文档来自技高网...

【技术保护点】
1.一种计算装置,其特征在于,所述计算装置包括:映射单元、存储器、寄存器单元、运算单元、控制单元和数据访问单元;其中,/n存储器,用于存储计算神经元、权值和运算指令;/n寄存器单元,用于存储运算指令的地址、输入数据的地址;/n控制单元,用于提取运算指令,该运算指令对应的操作域,将该运算指令译码成执行指令,该执行指令用于控制运算单元执行运算操作,将该操作域传输至数据访问单元;/n数据访问单元,用于提取该操作域对应的输入数据,并将该输入数据传输至映射单元;/n映射单元,用于将输入数据转换成输入神经元、权值和连接数据,依据连接数据对该输入神经元的筛选得到计算神经元,将该计算神经元并存储在存储器中;/...

【技术特征摘要】
20170720 CN 20171059595111.一种计算装置,其特征在于,所述计算装置包括:映射单元、存储器、寄存器单元、运算单元、控制单元和数据访问单元;其中,
存储器,用于存储计算神经元、权值和运算指令;
寄存器单元,用于存储运算指令的地址、输入数据的地址;
控制单元,用于提取运算指令,该运算指令对应的操作域,将该运算指令译码成执行指令,该执行指令用于控制运算单元执行运算操作,将该操作域传输至数据访问单元;
数据访问单元,用于提取该操作域对应的输入数据,并将该输入数据传输至映射单元;
映射单元,用于将输入数据转换成输入神经元、权值和连接数据,依据连接数据对该输入神经元的筛选得到计算神经元,将该计算神经元并存储在存储器中;
运算单元,用于该执行指令调用运算单元的计算器对该计算神经元执行运算操作得到运算结果;
所述运算单元包括:一个主运算单元和多个从运算单元,所述互联模块连接所述主运算单元和多个从运算单元,所述互联模块为:树状结构、环状结构、网格状结构、分级互连或总线结构。


2.根据权利要求1所述的计算装置,其特征在于,
所述运算单元,具体用于将所述输入神经元和权值数据相乘得到输出神经元;执行加法树运算,将输出神经元通过加法树逐级相加得到加权输出神经元,或者将输出神经元通过和偏置相加得到加偏置输出神经元;对所述加权输出神经元或所述偏置输出神经元执行激活函数运算,得到最终输出神经元。


3.根据权利要求1或2所述的计算装置,其特征在于,
所述映射单元中的一一对应关系包括:
第一种情形:
采用1表示有连接,0表示无连接,每个输出与所有输入的连接状态组成一个0和1的字符串来表示该输出的连接关系;或者
采用1表示有连接,0表示无连接,每个输入与所有输出的连接状态组成一个0和1的字符串来表示该输入的连接关系;
第二种情形:
将一输出第一个连接所在的位置距离第一个输入神经元的距离、所述输出第二个输入神经元距离上一个输入神经元的距离,所述输出第三个输入神经元距离上一个输入神经元的距离,依次类推,直到穷举所述输出的所有输入,来表示所述输出的连接关系。


4.根据权利要求1-3任意一项所述的计算装置,其特征在于,
所述运算单元包括:加法计算器、乘法计算器和激活运算器。


5.根据权利要求1-3任意一项所述的计算装置,其特征在于,
所述运算指令为卷积计算指令,所述计算指令包括:操作域和操作码;
所述卷积计算指令包括:卷积神经网络COMPUTE指令以及CONFIG指令;
所述卷积神经网络COMPUTE指令包括:
卷积神经网络sigmoid指令,根据该指令,装置分别从存储器的指定地址取出指定大小的输入数据和卷积核,在卷积运算部件中做卷积操作,然后将输出结果做sigmoid激活;
卷积神经网络TanH指令,根据该指令,装置分别从存储器的指定地址取出指定大小的输入数据和卷积核,在卷积运算部件中做卷积操作,然后将输出结果做TanH激活;
卷积神经网络ReLU指令,根据该指令,装置分别从存储器的指定地址取出指定大小的输入数据和卷积核,在卷积运算部件中做卷积操作,然后将输出结果做ReLU激活;以及
卷积神经网络group指令,根据该指令,装置分别从存储器的指定地址取出指定大小的输入数据和卷积核,划分group之后,在卷积运算部件中做卷积操作,然后将输出结果做激活。


6.根据权利要求5所述的计算装置,其特征在于,所述运算指令还包括:
IO指令实现从外部存储空间读入计算需要的输入数据以及在计算完成后将数据存回至外部空间;
NOP指令负责清空当前装置内部所有控制信号缓存队列中的控制信号,保证NOP指令之前的所有指令全部指令完毕;
JUMP指令负责控制将要从指令存储单元读取的下一条指令地址的跳转,用来实现控制流的跳转;
MOVE指令负责将装置内部地址空间某一地址的数据搬运至装置内部地址空间的另一地址,该过程独立于运算单元,在执行过程中不占用运算单元的资源。


7.根据权利要求1所述的计算装置,其特征在于,
所述计算装置还包括:连续离散转换模块,用于将连续数据与离散数据的互换;
所述主运算单元包括:运算模块、数据依赖关系判断单元和支持离散数据表示的神经元缓存单元;
所述运算模块,用于完成所述主运算单元的各种运算功能;具体包括:对于运算因子全是离散数据的情况,通过查表实现离散数据与离散数据的加减乘除运算;对于运算因子包含离散数据和连续数据的情况,针对不同离散数据,为加、减、乘、除运算预先设定相应的位操作;
所述数据依赖关系单元,用于将接收的微指令存入所述数据依赖关系单元内部的指令队列里,在该队列中,读指令的读取数据的范围如果与队列位置靠前的写指令写数据的范围发生冲突,则该指令必须等到所依赖的写指令被执行后才能够执行;
支持离散数据表示的神经元缓存单元,用于缓存从运算模块的输入神经元向量数据和输出神经元值数据。


8.根据权利要求1所述的计算装置,其特征在于,所述计算装置还包括:幂次转换单元,
所述幂次转换单元与所述存储器连接,用于将神经网络输入数...

【专利技术属性】
技术研发人员:陈天石刘少礼王在胡帅
申请(专利权)人:上海寒武纪信息科技有限公司
类型:发明
国别省市:上海;31

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

1