System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请实施例涉及数据处理领域,更具体地涉及一种数据传输方法、系统以及相关装置。
技术介绍
1、目前,随着大量高性能系统(如嵌入式系统、多媒体处理系统和网络通信系统等)的投入应用,在系统中通常需要处理来自多个源的大量数据,故对系统内数据的传输的设备的快速性和实时性的要求日益提升。为了有效管理进行传输的数据,目前使用了各种总线和通信协议,其中高级微控制器总线(advanced microcontroller bus architecture,ahb)是较为广泛应用的一种协议。
2、在当下基于ahb协议的数据传输过程中,往往通过多个主机(采用的是ahb协议的主机)同时向单个从机发送请求的情况。系统中内置的仲裁端会根据各个主机的优先级,将访问从机的权限赋予优先级最高的主机,让其数据通过多路选择器抵达从机。在从机确认传输完成之前,其他主机无法与从机进行数据传输并且进行传输的主机也需要保留该数据内容。导致现有基于ahb协议的数据传输方法运行效率较低且资源占用率过高,影响系统的运行。
3、因此,亟需设计一种全新的解决方案,用于克服上述至少一个技术问题。
技术实现思路
1、本申请实施例提供了一种数据传输方法、系统以及相关装置,旨在解决多个主机在数据传输过程中需要等待正在进行数据传输的主机传输完成的问题。所提供的方法能兼容搭载多种不同协议的主机与从机进行数据传输,同时确保在多主机数据传输的过程中能够不会产生数据丢失和数据错位的结果,提升系统运行的效率。同时由于缓存器的作用能实
2、本申请的实施例期望提供一种数据传输方法、系统以及相关装置。
3、在本申请的第一方面中,提供了一种数据传输方法,应用于数据传输系统的仲裁端,所述数据传输系统还包括第一主机、至少一个第二主机、缓存器和从机,所述第一主机经所述缓存器分别与所述仲裁端和所述从机通信连接,所述第二主机分别与所述仲裁端和所述从机通信连接,所述第一主机搭载有第一预设协议,所述第二主机搭载有第二预设协议;所述方法包括:
4、在所述第一主机通过所述缓存器发起数据传输请求时,获取所述从机的第一数据传输标志;所述第一数据传输标志用于指示所述从机是否处于数据传输状态;
5、若所述从机处于所述数据传输状态,控制所述缓存器向所述第一主机发送第一控制信号,并向所述缓存器发送第二控制信号;所述第一控制信号用于控制所述第一主机将数据发送至所述缓存器中进行存储,所述第二控制信号用于控制所述缓存器不向所述从机传输数据;
6、获取所述从机的第二数据传输标志;所述第二数据传输标志用于指示所述从机是否处于所述数据传输状态;
7、若所述从机不处于所述数据传输状态,发送第三控制信号至所述缓存器;所述第三控制信号用于控制所述缓存器向所述从机传输数据。
8、在一些实施例中,所述数据传输请求用于请求将第一主机中存储的预设数据传输至所述从机中;所述发送第三控制信号至所述缓存器,包括:发送所述第三控制信号至所述缓存器,以使得所述从机将所述预设数据拆分成多个待处理子数据;所述待处理子数据包括如下至少一种:数据信息、地址信息、传输信息、大小信息、写入信息、保护信息、突发信息;控制所述第一主机将多个待处理子数据发送至所述从机中。
9、在一些实施例中,在所述控制所述第一主机将多个待处理子数据发送至所述从机中之前,所述方法还包括:根据所述地址信息确认所述数据传输请求是否用于请求将所述预设数据传输至所述从机;根据所述传输信息确认所述第一主机是否处于空闲状态;若所述数据传输请求用于请求将所述预设数据传输至所述从机,并且所述第一主机不处于所述空闲状态,则控制所述第一主机将多个待处理子数据发送至所述从机中。
10、在一些实施例中,所述缓存器的宽度为预设宽度,深度为预设深度,所述预设宽度等于多个待处理子数据的位数之和。
11、在一些实施例中,所述预设宽度为77,所述预设深度为16。
12、在一些实施例中,所述数据信息的位数为32,所述地址信息的位数为32,所述传输信息的位数为2,所述大小信息的位数为3,所述写入信息的位数为1,所述保护信息的位数为4,所述突发信息的位数为3。
13、在一些实施例中,所述若所述从机处于所述数据传输状态,控制所述缓存器向所述第一主机发送第一控制信号,并向所述缓存器发送第二控制信号,包括:向所述缓存器发送所述第二控制信号,并获取所述缓存器的内存信息;若根据所述内存信息确认所述缓存器有存储空间,向所述第一主机发送所述第一控制信号。
14、在一些实施例中,在所述第一主机通过所述缓存器发起数据传输请求时,获取所述从机的第一数据传输标志之前,所述方法还包括:设置所述第一主机的数据传输等级为第一等级、并设置所述第二主机的传输等级为第二等级,所述第一等级高于所述第二等级;用于在所述第一主机和第二主机同时发起所述数据传输请求时,优先传输所述第一主机的数据。
15、在一些实施例中,当所述数据传输系统包括多个所述第二主机时,所述设置所述第一主机的数据传输等级为第一等级、并设置所述第二主机的传输等级为第二等级,包括:设置所述第一主机的数据传输等级为第一等级、并随机设置多个所述第二主机的数据传输等级;其中,每个所述第二主机的数据传输等级均不相同且每个所述第二主机的数据传输等级均小于所述第一主机的数据传输等级。
16、在一些实施例中,所述并随机设置多个所述第二主机的数据传输等级,包括:采用哈希取算法对所述第二主机的数据传输等级进行设置与更新。
17、在一些实施例中,所述数据传输系统还包括多路选择器,所述从机经所述多路选择器分别与所述缓存器和第二主机通信连接,所述仲裁端经所述多路选择器分别与所述缓存器和第二主机通信连接。
18、在一些实施例中,所述缓存器为先进先出的数据缓存器。
19、在一些实施例中,所述第一预设协议为轻量级高级微控制器总线协议,所述第二预设协议为高级微控制器总线协议。
20、在本申请的第二方面中,提供了一种数据传输装置,所述数据传输装置应用于数据传输系统的仲裁端,所述数据传输系统还包括第一主机、至少一个第二主机、多路选择器、缓存器和从机,所述第一主机经所述缓存器分别与所述仲裁端和所述从机通信连接,所述第二主机分别与所述仲裁端和所述从机通信连接,所述第一主机搭载有第一预设协议,所述第二主机搭载有第二预设协议;所述数据传输装置包括:
21、获取模块,用于在所述第一主机通过所述缓存器发起数据传输请求时,获取所述从机的第一数据传输标志;所述第一数据传输标志用于指示所述从机是否处于数据传输状态;
22、控制模块,用于若所述从机处于所述数据传输状态,控制所述缓存器向所述第一主机发送第一控制信号,并向所述缓存器发送第二控制信号;所述第一控制信号用于控制所述第一主机将数据发送至所述缓存器中进行存储,所述第二控制信号用于控制本文档来自技高网...
【技术保护点】
1.一种数据传输方法,其特征在于,应用于数据传输系统的仲裁端,所述数据传输系统还包括第一主机、至少一个第二主机、缓存器和从机,所述第一主机经所述缓存器分别与所述仲裁端和所述从机通信连接,所述第二主机分别与所述仲裁端和所述从机通信连接,所述第一主机搭载有第一预设协议,所述第二主机搭载有第二预设协议;所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述数据传输请求用于请求将第一主机中存储的预设数据传输至所述从机中;所述发送第三控制信号至所述缓存器,包括:
3.根据权利要求2所述的方法,其特征在于,在所述控制所述第一主机将多个待处理子数据发送至所述从机中之前,所述方法还包括:
4.根据权利要求2所述的方法,其特征在于,所述缓存器的宽度为预设宽度,深度为预设深度,所述预设宽度等于多个待处理子数据的位数之和。
5.根据权利要求4所述的方法,其特征在于,所述预设宽度为77,所述预设深度为16。
6.根据权利要求5所述的方法,其特征在于,所述数据信息的位数为32,所述地址信息的位数为32,所述传输信息的位数为2,所述大小信息
7.根据权利要求1所述的方法,其特征在于,所述若所述从机处于所述数据传输状态,控制所述缓存器向所述第一主机发送第一控制信号,并向所述缓存器发送第二控制信号,包括:
8.根据权利要求1所述的方法,其特征在于,在所述第一主机通过所述缓存器发起数据传输请求时,获取所述从机的第一数据传输标志之前,所述方法还包括:
9.根据权利要求8所述的方法,其特征在于,当所述数据传输系统包括多个所述第二主机时,所述设置所述第一主机的数据传输等级为第一等级、并设置所述第二主机的传输等级为第二等级,包括:
10.根据权利要求9所述的方法,其特征在于,所述并随机设置多个所述第二主机的数据传输等级,包括:
11.根据权利要求1所述的方法,其特征在于,所述数据传输系统还包括多路选择器,所述从机经所述多路选择器分别与所述缓存器和第二主机通信连接,所述仲裁端经所述多路选择器分别与所述缓存器和第二主机通信连接。
12.根据权利要求1所述的方法,其特征在于,所述缓存器为先进先出的数据缓存器。
13.根据权利要求1所述的方法,其特征在于,所述第一预设协议为轻量级高级微控制器总线协议,所述第二预设协议为高级微控制器总线协议。
14.一种数据传输装置,其特征在于,所述数据传输装置应用于数据传输系统的仲裁端,所述数据传输系统还包括第一主机、至少一个第二主机、多路选择器、缓存器和从机,所述第一主机经所述缓存器分别与所述仲裁端和所述从机通信连接,所述第二主机分别与所述仲裁端和所述从机通信连接,所述第一主机搭载有第一预设协议,所述第二主机搭载有第二预设协议;所述数据传输装置包括:
15.一种数据传输系统,其特征在于,所述数据传输系统包括:
16.根据权利要求15所述的系统,其特征在于,所述数据传输系统还包括多路选择器,所述从机经所述多路选择器分别与所述缓存器和第二主机通信连接,所述仲裁端经所述多路选择器分别与所述缓存器和第二主机通信连接。
17.根据权利要求15所述的系统,其特征在于,所述缓存器为先进先出的数据缓存器。
18.根据权利要求15所述的系统,其特征在于,所述第一预设协议为轻量级高级微控制器总线协议,所述第二预设协议为高级微控制器总线协议。
19.一种计算机可读存储介质,其包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-13中任一项所述的数据传输方法。
...【技术特征摘要】
1.一种数据传输方法,其特征在于,应用于数据传输系统的仲裁端,所述数据传输系统还包括第一主机、至少一个第二主机、缓存器和从机,所述第一主机经所述缓存器分别与所述仲裁端和所述从机通信连接,所述第二主机分别与所述仲裁端和所述从机通信连接,所述第一主机搭载有第一预设协议,所述第二主机搭载有第二预设协议;所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述数据传输请求用于请求将第一主机中存储的预设数据传输至所述从机中;所述发送第三控制信号至所述缓存器,包括:
3.根据权利要求2所述的方法,其特征在于,在所述控制所述第一主机将多个待处理子数据发送至所述从机中之前,所述方法还包括:
4.根据权利要求2所述的方法,其特征在于,所述缓存器的宽度为预设宽度,深度为预设深度,所述预设宽度等于多个待处理子数据的位数之和。
5.根据权利要求4所述的方法,其特征在于,所述预设宽度为77,所述预设深度为16。
6.根据权利要求5所述的方法,其特征在于,所述数据信息的位数为32,所述地址信息的位数为32,所述传输信息的位数为2,所述大小信息的位数为3,所述写入信息的位数为1,所述保护信息的位数为4,所述突发信息的位数为3。
7.根据权利要求1所述的方法,其特征在于,所述若所述从机处于所述数据传输状态,控制所述缓存器向所述第一主机发送第一控制信号,并向所述缓存器发送第二控制信号,包括:
8.根据权利要求1所述的方法,其特征在于,在所述第一主机通过所述缓存器发起数据传输请求时,获取所述从机的第一数据传输标志之前,所述方法还包括:
9.根据权利要求8所述的方法,其特征在于,当所述数据传输系统包括多个所述第二主机时,所述设置所述第一主机的数据传输等级为第一等级、并设置所述第二主机的传输等级为第二等级,包...
【专利技术属性】
技术研发人员:杨龚轶凡,郑瀚寻,闯小明,李可征,
申请(专利权)人:苏州仰思坪半导体有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。