数据传输装置和方法制造方法及图纸

技术编号:24455630 阅读:35 留言:0更新日期:2020-06-10 15:27
本申请涉及一种数据传输装置和方法。包括:状态缓存单元、系统内存、总线以及直接内存访问单元;所述状态缓存单元与所述系统内存连接,用于存储与所述系统内存中的访存地址对应的状态标识;所述系统内存通过所述总线与所述直接内存访问单元连接,用于存储输入数据;所述总线,用于传递访存响应信息;所述直接内存访问单元,用于根据所述状态标识以及所述访存响应信息,与所述系统内存进行数据交互。采用本装置和方法能够实现原子访问操作。

Data transmission device and method

【技术实现步骤摘要】
数据传输装置和方法
本申请涉及信息处理
,特别是涉及一种数据传输装置和方法。
技术介绍
随着信息技术的不断发展和人们日益增长的需求,人们对信息及时性的要求越来越高。对于高速I/O设备以及神经网络处理器中批量数据处理的情况,通常采用直接内存存取(DirectMemoryAccess,DMA)进行外部设备与系统内存之间的数据交换。在多核处理器系统中,多核处理器通常执行多线程任务,处理器核工作过程中往往会被线程调度机制中断,由于线程切换,通常的数据传输技术无法保证原子性。
技术实现思路
基于此,有必要针对上述技术问题,提供一种能够确保处理器核一旦开始工作就一直运行到结束,中间不会被任何线程打断,从而实现原子操作的数据传输装置和方法。第一方面,提供一种数据传输装置,包括:数据I/O单元、仲裁单元以及直接内存访问单元;所述数据I/O单元,用于接收核标识,并将接收到的所述核标识传递给所述仲裁单元;所述仲裁单元连接于所述数据I/O单元与所述直接内存访问单元之间,用于对所述核标识进行存储和仲裁,并将仲裁结果发送至所述直本文档来自技高网...

【技术保护点】
1.一种数据传输装置,其特征在于,所述装置包括:状态缓存单元、系统内存、总线以及直接内存访问单元;/n所述状态缓存单元与所述系统内存连接,用于存储与所述系统内存中的访存地址对应的状态标识;/n所述系统内存通过所述总线与所述直接内存访问单元连接,用于存储输入数据;/n所述总线,用于传递访存响应信息;/n所述直接内存访问单元,用于根据所述状态标识以及所述访存响应信息,与所述系统内存进行数据交互。/n

【技术特征摘要】
1.一种数据传输装置,其特征在于,所述装置包括:状态缓存单元、系统内存、总线以及直接内存访问单元;
所述状态缓存单元与所述系统内存连接,用于存储与所述系统内存中的访存地址对应的状态标识;
所述系统内存通过所述总线与所述直接内存访问单元连接,用于存储输入数据;
所述总线,用于传递访存响应信息;
所述直接内存访问单元,用于根据所述状态标识以及所述访存响应信息,与所述系统内存进行数据交互。


2.根据权利要求1所述的装置,其特征在于,所述状态缓存单元设置在所述系统内存内部。


3.根据权利要求1所述的装置,其特征在于,所述状态缓存单元通过所述总线与所述直接内存访问单元连接。


4.根据权利要求1所述的装置,其特征在于,所述装置还包括:控制器单元以及运算单元;所述运算单元包括:一个主处理电路以及多个从处理电路;
所述控制器单元,用于获取输入数据以及计算指令;
所述控制器单元,还用于解析所述计算指令得到多个运算指令,将所述多个运算指令以及所述输入数据发送给所述主处理电路;
所述主处理电路,用于对所述输入数据执行前序处理以及与所述多个从处理电路之间传输数据和运算指令;
所述多个从处理电路,用于依据从所述主处理电路传输的数据以及运算指令并行执行中间运算得到多个中间结果,并将多个中间结果传输给所述主处理电路;
所述主处理电路,用于对所述多个中间结果执行后续处理得到所述计算指令的计算结果。


5.根据权利要求4所述的装置,其特征在于,所述控制器单元包括:指令存储单元、指令存储单元以及存储队列单元;
所述指令存储单元,用于存储所述人工神经网络运算关联的计算指令;
所述指令处理单元,用于对所述计算指令解析得到多个运算指令;
所述存储队列单元,用于存储指令队列,所述指令队列包括:按所述指令队列的前后顺序待执行的多个运算指令或计算指令。


6.根据权利要求4所述的装置,其特征在于,所述装置还包括:存储单元,所述存储单元包括:寄存器、缓存或其组合;
所述缓存,用于存储所述输入数据;
所述寄存器,用于存储所述输入数据中标量数据;
所述缓存包括高速暂存缓存。


7.根据权利要求4所述的装置,其特征在于,所述运算单元还包括:一个或多个分支处理电路,每个分支处理电路连接至少一个从处理电路;
所述主处理电路,具体用于确定所述输入神经元为广播数据,权值为分发数据块,将一个分发数据分配成多个数据块,将所述多个数据块中的至少一个数据块、广播数据以及多个运算指令中的至少一个运算指令发送给所述分支处理电路;
所述分支处理电路,用于转发所述主处理电路与所述多个从处理电路之间的数据块、广播数据以及运算指令;
所述多个从处理电路,用于依据该运算指令对接收到的数据块以及广播数据执行运算得到中间结果,并将中间结果传输给所述分支处理电路;
所述主处理电路,用于将分支处理电路发送的中间结果进行后续处理得到该计算指令的结果,将该计算指令的结果发送给所述控制器单元。


8.根据权利要求4所述的装置,其特征在于,所述多个从处理电路呈阵列分布;每个从处理电路与相邻的其他从处理电路连接,所述主处理电路连接所述多个从处理电路中的k个从处理电路,所述k个基础电路为:第1行的n个从处理电路、第m行的n个从处理电路以及第1列的m个从处理电路;
所述K个从处理电路,用于在所述主处理电路以及多个从处理电路之间的数据以及指令的转发;
所述主处理电路,用于确定所述输入神经元为广播数据,权值为分发数据,将一个分发数据分配成多个数据块,将所述多个数据块中的至少一个数据块以及多个运算指令中的至少一个运算指令发送给所述K个从处理电路;
所述K个从处理电路,用于转换所述主处理电路与所述多个从处理电路之间的数据;
所述多个从处理电路,用于依据该运算指令对接收到的数据块执行运算得到中间结果,并将运算结果传输给所述K个从处理电路;
所述主处理电路,用于将所...

【专利技术属性】
技术研发人员:不公告发明人
申请(专利权)人:上海寒武纪信息科技有限公司
类型:发明
国别省市:上海;31

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

1