芯片和多芯片系统及电子设备和数据传输方法技术方案

技术编号:27567102 阅读:20 留言:0更新日期:2021-03-09 22:12
本申请提供一种芯片和多芯片系统及电子设备和数据传输方法。电子设备可包括中央处理器、加速模块和存储器。加速模块与中央处理器通信连接,并包括多个根据本申请的芯片。并包括多个根据本申请的芯片。并包括多个根据本申请的芯片。

【技术实现步骤摘要】
芯片和多芯片系统及电子设备和数据传输方法


[0001]本申请涉及芯片
,具体而言,涉及一种芯片和多芯片系统及电子设备和数据传输方法。

技术介绍

[0002]计算任务的爆炸式增长对芯片设计提出越来越高的要求。以图像识别领域的imagenet挑战赛为例,自从使用深度学习网络之后,其错误率飞速下降,并且在ResNet网络出来之后,超越了人类的识别精度。但是,与之对应的是,其网络规模动辄几百兆字节,其训练的图片数据集动辄上百万个,因此对计算能力的需求飞速膨胀。
[0003]为了解决算力的问题,获得更高的性能,更低的功耗,以及量产之后更加低廉的成本,研究者们在努力开发多节点协同解决方案的同时,也在努力设计开发新的芯片结构,希望实现高运算效率和硬件资源的高利用率。
[0004]在所述
技术介绍
部分公开的上述信息仅用于加强对本申请的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。

技术实现思路

[0005]本申请旨在提供一种芯片和多芯片系统及电子设备和数据传输方法,能够提高运算效率。
[0006]本申请的其该用户特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
[0007]根据本申请的一方面,提供一种芯片,包括数据总线以及与所述数据总线连接的存储器、数据接收器、运算处理单元、数据发送器,其中,所述数据接收器配置为接收来自外部的第一数据和头信息,将所述第一数据通过所述数据总线写入到所述存储器的对应区域,以及根据所述头信息配置对应的运算处理单元和/或数据发送器;所述运算处理单元配置为接收第一任务信息,根据所述第一任务信息执行运算处理并对所述数据发送器执行配置操作;所述数据发送器配置为获取第二任务信息以及第二数据,并基于至少部分所述第二数据向外输出第三数据。
[0008]根据本申请的另一方面,提供一种多芯片系统,包括根据本申请的所述芯片。
[0009]根据本申请的另一方面,还提供一种电子设备,包括根据本申请的所述芯片或多芯片系统。
[0010]根据本申请的另一方面,还提供一种用于计算节点传输数据的方法,包括:开始接收第一数据;在接收到所述第一数据的一部分之后,在继续接收所述第一数据的同时,转发所述第一数据的所述一部分;和/或在接收到所述第一数据的一部分之后,在继续接收所述第一数据的同时,对所述第一数据的所述一部分进行处理并转发处理结果。
[0011]根据本申请的另一方面,还提供一种数据传输方法,包括利用根据本申请的芯片执行前述用于计算节点传输数据的方法。
[0012]根据本申请的另一方面,还提供一种数据传输方法,包括利用根据本申请的多芯片系统执行前述方法。
[0013]根据本申请一些实施例,提供一种芯片结构,克服了随着协同工作的芯片数量的提升,多芯片之间的通信量迅速增大的缺陷。通过在芯片中增加了数据发送器、数据接收器以及运算处理单元之间相互触发协同的机制,可以使得计算和传输数据流水起来,从而能够覆盖传输开销,提高运算效率和硬件资源利用率。
[0014]应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
[0015]通过参照附图详细描述其示例实施例,本申请的上述和其它目标、特征及优点将变得更加显而易见。
[0016]图1示出根据本申请一示例性实施例的芯片结构。
[0017]图2A示出根据本申请一示例性实施例的数据接收器。
[0018]图2B示出根据本申请另一示例性实施例的数据接收器。
[0019]图3A示出根据本申请一示例性实施例的数据发送器。
[0020]图3B示出根据本申请另一示例性实施例的数据发送器。
[0021]图3C示出根据本申请另一示例性实施例的数据发送器。
[0022]图4示出根据本申请示例实施例的归并模块。
[0023]图5A示出根据本申请示例实施例的基于环状拓扑的环形连接结构。
[0024]图5B示出根据本申请示例实施例的在2D-MESH拓扑结构中构建的环形连接结构。
[0025]图6示出根据本申请实施例的一种用于计算节点传输数据的方法。
[0026]图7A示出现有技术的数据传输过程的示例。
[0027]图7B示出图6所示方法的数据传输过程的示例。
[0028]图8示出根据本申请示例实施例的多节点协同执行卷积运算的示意图。
[0029]图9示出根据本申请示例实施例的多节点协同执行分类层运算的示意图。
[0030]图10示出根据本申请示例实施例的多芯片异步并行协同训练的示意图。
[0031]图11示出根据本申请示例实施例的电子设备的示意图。
具体实施方式
[0032]现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本申请将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
[0033]此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
[0034]附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
[0035]附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
[0036]应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本申请概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
[0037]本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本申请所必须的,因此不能用于限制本申请的保护范围。
[0038]专利技术人发现,在多芯片协同系统中,例如用于深度学习的多芯片系统中,虽然现在单节点的计算峰值指数性的扩展,但是与之对应的多芯片之间的通信带宽却扩展有限。与之相对应的,随着协同工作的芯片数量的提升,多芯片之间的通信量迅速增大。这样,在多芯片协同系统中,多芯片通信的瓶颈日益本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种芯片,包括数据总线以及与所述数据总线连接的存储器、数据接收器、运算处理单元、数据发送器,其中,所述数据接收器配置为接收来自外部的第一数据和头信息,将所述第一数据通过所述数据总线写入到所述存储器的对应区域,以及根据所述头信息配置对应的运算处理单元和/或数据发送器;所述运算处理单元配置为接收第一任务信息,根据所述第一任务信息执行运算处理并对所述数据发送器执行配置操作;所述数据发送器配置为获取第二任务信息以及第二数据,并基于至少部分所述第二数据向外输出第三数据。2.如权利要求1所述的芯片,还包括:配置总线,所述运算处理单元、所述数据接收器、所述数据发送器与所述配置总线连接从而通过所述配置总线相互传输配置信息。3.如权利要求1所述的芯片,其中,所述数据接收器还配置为根据所述头信息对所述第一数据进行拆解。4.如权利要求1所述的芯片,其中,所述数据接收器包括:第一串行接口;数据缓冲器,用于缓存来自所述第一串行接口的所述第一数据;解码器,用于从所述头信息解析所述第一数据的格式和存放地址,根据所述第一数据的格式切分所述第一数据,以及根据所述头信息配置所述运算处理单元和所述数据发送器的对应位;DMA单元,用于接收来自所述解码器的所述第一数据和所述存放地址,从而将所述第一数据通过所述数据总线写入到所述存储器的对应区域。5.如权利要求1所述的芯片,其中,所述数据接收器还包括:解压单元,用于对来自所述解码器的所述第一数据进行解压,并将解压后的第一数据发送给所述DMA单元。6.如权利要求1所述的芯片,所述数据发送器包括发送解码器、数据重排序缓冲器、发送缓冲器和第二串行接口,其中,所述发送解码器配置为:将所述第二任务信息打包第二为头信息并将所述第二头信息发送至所述发送缓冲器,以及根据所述第二任务信息向所述数据重排序缓冲器发送数据读取请求信息;所述数据重排序缓冲器配置为根据所述数据读取请求信息通过所述数据总线获取并发送所述第二数据,所述第二数据包括至少部分所述第一数据和/或所述运算处理结果;所述发送缓冲器配置为对接收的数据进行缓存,并按照所述第二串行接口的格式发送缓存的数据。7.如权利要求6所述的芯片,其中,所述发送缓冲器配置为接收所述第二头信息以及接收并缓存所述第二数据,以及按照所述第二串行接口的格式发送所述第三数据,所述第三数据包括所述第二数据;第二串行接口配置为接收并发送所述第三数据。8.如权利要求6所述的芯片,其中所述数据发送器还包括算术逻辑单元,
其中,所述算术逻辑单元配置为对至少部分所述第二数据进行运算,并将所得到的运算结果和/或所述第二数据的部分或全部作为第四数据发送给所述发送缓冲器;其中,所述发送缓冲器配置为接收所述第二头信息以及接收并缓存来自所述算术逻辑单元的所述第四数据,以及按照所述第二串行接口的格式发送所述第三数据,所述第三数据包括所述第四数据;第二串行接口配置为接收并发送所述第三数据。9.如权利要求6所述的芯片,其中所述数据发送器还包括压缩单元,其中,所述压缩单元配置为将所述第二数据压缩为第四数据并发送给所述发送缓冲器;其中,所述发送缓冲器配置为接收所...

【专利技术属性】
技术研发人员:ꢀ七四专利代理机构
申请(专利权)人:安徽寒武纪信息科技有限公司
类型:发明
国别省市:

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

1