命令分发器、命令分发方法和系统、芯片、板卡、设备技术方案

技术编号:35143773 阅读:31 留言:0更新日期:2022-10-05 10:20
本公开实施例提供一种命令分发器、命令分发方法和系统、芯片、板卡、设备,用于对多个命令流进行命令分发,命令分发器包括存储单元,用于存储一个或多个同步事件的触发状态;每个同步事件对应至少一个同步命令和至少一个记录命令;命令队列,用于存储所述多个命令流中的命令,以及向仲裁单元发送各个命令流中的命令;仲裁单元,用于将所述命令队列发送的执行命令分发到执行单元;响应于接收到记录命令,将该记录命令对应的同步事件的触发状态更新为已触发;响应于接收到同步命令,且该同步命令对应的同步事件的触发状态为已触发,向该同步命令所在命令队列发送使能信号,完成命令同步。步。步。

【技术实现步骤摘要】
命令分发器、命令分发方法和系统、芯片、板卡、设备


[0001]本公开涉及人工智能
,尤其涉及命令分发器、命令分发方法和系统、芯片、板卡、设备。

技术介绍

[0002]随着人工智能的广泛使用,深度学习模型越来越复杂,因而通常采用多命令流的编程方式提高并行执行。不同的命令流之间往往存在相互依赖关系,因此需要对不同的命令流中的命令进行解依赖,以实现不同命令流之间的同步。相关技术中通常采用软件方式实现不同的命令流之间的同步,同步效率较低。

技术实现思路

[0003]第一方面,本公开实施例提供一种命令分发器,用于对多个命令流进行命令分发,所述命令分发器包括:存储单元,用于存储一个或多个同步事件的触发状态;每个同步事件对应至少一个同步命令和至少一个记录命令;命令队列,用于存储所述多个命令流中的命令,以及向仲裁单元发送各个命令流中的命令;仲裁单元,用于将所述命令队列发送的执行命令分发到执行单元;响应于接收到记录命令,将该记录命令对应的同步事件的触发状态更新为已触发;响应于接收到同步命令,且该同步命令对应的同步事件的触发状态为已触发,向该同步命令所在命令队列发送使能信号,完成命令同步。
[0004]在一些实施例中,所述仲裁单元的使能输入端口连接到所述存储单元;在至少一个同步事件的触发状态为已触发的情况下,所述存储单元存储有效状态标志位;所述仲裁单元在通过所述使能输入端口检测到所述有效存储状态标志位,且接收到同步命令的情况下,查询所述同步命令对应的同步事件的触发状态;在所述同步命令对应的同步事件的触发状态为已触发的情况下,发送所述使能信号。
[0005]在一些实施例中,所述仲裁单元的使能输出端口连接到所述命令队列;所述使能信号为所述仲裁单元从所述使能输出端口输出的有效电平信号。
[0006]在一些实施例中,所述命令队列包括多个子队列,每个子队列对应于一个命令流,所述仲裁单元包括多个使能输出端口,每个使能输出端口对应于一个子队列;所述仲裁单元,用于:在检测到所述同步命令对应的同步事件的触发状态为已触发,且接收到所述同步命令的情况下,通过目标子队列对应的使能输出端口将所述使能信号发送到所述目标子队列,所述目标子队列为所述同步命令所在的命令流对应的子队列。
[0007]在一些实施例中,所述仲裁单元,用于:在接收到所述命令队列发送的同步命令的情况下,对所述同步命令进行缓存;在检测到所述同步命令对应的同步事件的触发状态为已触发的情况下,向所述命令队列发送所述使能信号。
[0008]在一些实施例中,不同的同步事件对应不同的标识信息;所述仲裁单元,用于:将所述存储单元中与所述同步命令具有相同标识信息的同步事件确定为所述同步命令对应的同步事件。
[0009]在一些实施例中,不同的同步事件对应不同的标识信息;所述存储单元,用于:存储每个标识信息的占用状态;在接收到主机发送的申请请求的情况下,将处于未占用状态的可用标识信息发送到所述主机,以使所述主机基于所述可用标识信息在对应的命令流中插入所述同步命令和所述记录命令。
[0010]在一些实施例中,所述存储单元,用于:接收所述主机发送的销毁请求,所述销毁请求中携带待销毁的标识信息;响应于所述销毁请求,将所述待销毁的标识信息的占用状态更新为未占用状态。
[0011]在一些实施例中,所述仲裁单元,用于:获取每个记录命令的时间戳信息,一个记录命令的时间戳信息基于所述仲裁单元从所述命令队列获取到所述记录命令的时间确定;将所述时间戳信息写入所述存储单元。
[0012]在一些实施例中,所述存储单元,用于:接收主机发送的查询请求,所述查询请求中携带第一记录命令的第一标识信息和第二记录命令的第二标识信息,所述第一记录命令和所述第二记录命令为同一命令流中的命令;基于所述第一标识信息和所述第二标识信息,将所述第一记录命令的时间戳信息和所述第二记录命令的时间戳信息返回给所述主机,以使所述主机基于所述第一记录命令的时间戳信息和所述第二记录命令的时间戳信息确定位于所述第一记录命令和所述第二记录命令之间的各个执行命令的总的执行时间。
[0013]第二方面,本公开实施例提供一种命令分发系统,所述系统包括:本公开任一实施例所述的命令分发器;以及主机,用于将所述多个命令流发送到所述命令队列。
[0014]第三方面,本公开实施例提供一种芯片,所述芯片包括本公开任一实施例所述的访存请求处理装置,或者本公开任一实施例所述的存储装置。
[0015]第四方面,本公开实施例提供一种板卡,所述板卡包括封装有至少一个如本公开任一实施例所述芯片的封装结构。
[0016]第五方面,本公开实施例提供一种电子设备,包括本公开任一实施例所述的芯片,或者本公开任一实施例所述的系统,或者本公开任一实施例所述的板卡。
[0017]第六方面,本公开实施例提供一种命令分发方法,应用于本公开任一实施例所述的命令分发器中的仲裁单元,所述方法包括:接收命令队列发送的多个命令流中的命令,所述命令包括执行命令、同步命令和记录命令;响应于接收到所述执行命令,将所述执行命令分发到执行单元;响应于接收到所述记录命令,将所述存储单元中对应于所述记录命令的同步事件的触发状态设置为已触发;响应于接收到所述同步命令,且检测到所述同步命令对应的同步事件的触发状态为已触发,向所述命令队列发送使能信号,以使所述命令队列发送所述同步命令所在的命令流中的下一个命令。
[0018]第七方面,本公开实施例提供一种命令分发装置,应用于本公开任一实施例所述的命令分发器中的仲裁单元,所述装置包括:接收模块,用于接收命令队列发送的多个命令流中的命令,所述命令包括执行命令、同步命令和记录命令;分发模块,用于响应于接收到所述执行命令,将所述执行命令分发到执行单元;设置模块,用于响应于接收到所述记录命令,将所述存储单元中对应于所述记录命令的同步事件的触发状态设置为已触发;发送模块,用于响应于接收到所述同步命令,且检测到所述同步命令对应的同步事件的触发状态为已触发,向所述命令队列发送使能信号,以使所述命令队列发送所述同步命令所在的命令流中的下一个命令。
[0019]第八方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开任一实施例所述的方法。
[0020]本公开实施例在仲裁单元接收到记录命令之后,将存储单元中对应于该记录命令的同步事件的触发状态设置为已触发,从而能够指示该同步事件对应的同步命令的触发条件已经满足;这样,已触发的同步事件可以使能仲裁单元在接收到该同步事件对应的同步命令后,向命令队列发送使能信号。命令队列在使能信号的作用下,能够从该同步事件对应的同步命令所在的命令流中,将该同步事件对应的同步命令的下一个命令发送到仲裁单元。上述同步过程采用硬件方式实现存储单元、命令队列和仲裁单元之间的交互,相对于软件同步过程,一方面,命令队列中各个命令流中的命令可以并行地发送;另一方面,在硬件实现方式中,仲裁单元能够直接检测同步事件的触发状态,且命令队列能够直接检测本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种命令分发器,其特征在于,用于对多个命令流进行命令分发,所述命令分发器包括:存储单元,用于存储一个或多个同步事件的触发状态;每个同步事件对应至少一个同步命令和至少一个记录命令;命令队列,用于存储所述多个命令流中的命令,以及向仲裁单元发送各个命令流中的命令;仲裁单元,用于将所述命令队列发送的执行命令分发到执行单元;响应于接收到记录命令,将该记录命令对应的同步事件的触发状态更新为已触发;响应于接收到同步命令,且该同步命令对应的同步事件的触发状态为已触发,向该同步命令所在命令队列发送使能信号,完成命令同步。2.根据权利要求1所述的命令分发器,其特征在于,所述仲裁单元的使能输入端口连接到所述存储单元;在至少一个同步事件的触发状态为已触发的情况下,所述存储单元存储有效状态标志位;所述仲裁单元在通过所述使能输入端口检测到所述有效存储状态标志位,且接收到同步命令的情况下,查询所述同步命令对应的同步事件的触发状态;在所述同步命令对应的同步事件的触发状态为已触发的情况下,发送所述使能信号。3.根据权利要求1或2所述的命令分发器,其特征在于,所述仲裁单元的使能输出端口连接到所述命令队列;所述使能信号为所述仲裁单元从所述使能输出端口输出的有效电平信号。4.根据权利要求3所述的命令分发器,其特征在于,所述命令队列包括多个子队列,每个子队列对应于一个命令流,所述仲裁单元包括多个使能输出端口,每个使能输出端口对应于一个子队列;所述仲裁单元,用于:在检测到所述同步命令对应的同步事件的触发状态为已触发,且接收到所述同步命令的情况下,通过目标子队列对应的使能输出端口将所述使能信号发送到所述目标子队列,所述目标子队列为所述同步命令所在的命令流对应的子队列。5.根据权利要求1至4任一项所述的命令分发器,其特征在于,所述仲裁单元,用于:在接收到所述命令队列发送的同步命令的情况下,对所述同步命令进行缓存;在检测到所述同步命令对应的同步事件的触发状态为已触发的情况下,向所述命令队列发送所述使能信号。6.根据权利要求5所述的命令分发器,其特征在于,不同的同步事件对应不同的标识信息;所述仲裁单元,用于:将所述存储单元中与所述同步命令具有相同标识信息的同步事件确定为所述同步命令对应的同步事件。7.根据权利要求1至6任一项所述的命令分发器,其特征在于,不同的同步事件对应不同的标识信息;所述存储单元,用于:存储每个标识信息的占用状态;在接收到主机发送的申请请求的情况下,将处于未占用状态的可用标识信息发送到所述主机,以使所述主机基于所述可用标识信息在对应的命令流中插入所述同步命令...

【专利技术属性】
技术研发人员:周琳冷祥纶张国栋刘晨李冰
申请(专利权)人:上海阵量智能科技有限公司
类型:发明
国别省市:

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

1