本申请涉及一种USB数据传输方法、装置及系统,该装置包括:应用微处理器和USB控制器,所述应用微处理器用于获取待传输数据的数据标识,根据所述数据标识查询得到所述待传输数据在物理内存中的数据物理地址,并将所述数据物理地址发送至所述USB控制器;所述USB控制器用于根据所述数据物理地址从所述物理内存中查询得到所述待传输数据并进行传送。本申请的技术方案,在物理内存中,无需对待传输数据进行多次拷贝,由于物理地址的数据大小一般要远小于待传输数据的大小,使用本实施例的方法进行数据传输,将大大提高USB数据的实际传输速度。
【技术实现步骤摘要】
一种USB数据传输方法、装置及系统
本申请涉及USB领域,尤其涉及一种USB数据传输方法、装置及系统。
技术介绍
USB,是英文UniversalSerialBus(通用串行总线)的缩写,是一个外部总线标准,用于规范电脑与外部设备的连接和通讯。随着USB技术的发展,USB传输速率需求日益提高,目前的USB3.2Gen1的传输速率理论上可达到500M/s,而USB3.2Gen2的传输速率理论上可达到1.25GB/s,USB3.2Gen2x2的理论传输速率甚至达到了2.5GB/s。虽然目前USB理论传输速率很高,当实际上仍存在影响USB传输速率的因素,使得实际使用时USB传输速率远小于理论传输速率。例如,现有的嵌入式USB结构中,DSP处理器与ARM处理器之间通过共享内存进行通信,由于DSP处理器使用的是物理内存,需要ARM处理器对这部分内存进行映射,而且不能使用缓存,否则会出现数据不同步的问题。ARM处理器上层应用数据同样的需要拷贝到内核内存,在内核内存再次分配用于DMA传送的物理空间,导致USB的实际传输速率受到影响,目前实测USB3.2Gen1的实际传输速率最大只有65MB/S。
技术实现思路
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种USB数据传输方法、装置及系统。第一方面,本申请提供了一种USB数据传输装置,包括:应用微处理器和USB控制器,所述应用微处理器用于获取待传输数据的数据标识,根据所述数据标识查询得到所述待传输数据在物理内存中的数据物理地址,并将所述数据物理地址发送至所述USB控制器;所述USB控制器用于根据所述数据物理地址从所述物理内存中查询得到所述待传输数据并进行传送。可选的,所述USB控制器包括DMA控制器,所述USB控制器用于启动所述DMA控制器,并将所述数据物理地址发送到所述DMA控制器;所述DMA控制器用于根据所述数据物理地址从所述物理内存中查询得到所述待传输数据并进行传送。第二方面,本申请提供了一种USB数据传输系统,包括ARM处理器和物理内存,所述ARM处理器包括应用微处理器和USB控制器,所述应用微处理器用于获取待传输数据的数据标识,根据所述数据标识查询得到所述待传输数据在物理内存中的数据物理地址,并将所述数据物理地址发送至所述USB控制器;所述USB控制器用于根据所述数据物理地址从所述物理内存中查询得到所述待传输数据并进行传送。可选的,所述USB控制器包括DMA控制器,所述USB控制器用于启动所述DMA控制器,并将所述数据物理地址发送到所述DMA控制器;所述DMA控制器用于根据所述数据物理地址从所述物理内存中查询得到所述待传输数据并进行传送。可选的,所述系统还包括DSP处理器,所述应用微处理器用于为待存储数据分配所述数据物理地址,将所述数据物理地址发送到所述DSP处理器,所述待存储数据为所述待传输数据;所述DSP处理器用于根据所述数据物理地址将所述待存储数据存储到所述物理内存中。可选的,所述DSP处理器用于为所述数据标识分配标识物理地址,将所述标识物理地址发送至所述应用微处理器;所述应用微处理器用于根据所述标识物理地址获取所述数据标识,将所述数据物理地址和所述数据标识在物理内存中关联存储。可选的,所述系统还包括以下至少一种USB接口:USB3.2Gen1、USB3.2Gen2或USB3.2Gen2x2,所述USB控制器通过所述USB接口传送所述待传输数据。第三方面,本申请提供了一种USB数据传输方法,所述方法包括:获取待传输数据的数据标识;根据所述数据标识查询得到所述待传输数据在物理内存中的数据物理地址;根据所述数据物理地址从所述物理内存中查询得到所述待传输数据;传送所述待传输数据。可选的,所述方法还包括:为待存储数据分配所述数据物理地址,将所述数据物理地址发送到DSP处理器,所述待存储数据为所述待传输数据,由所述DSP处理器根据所述数据物理地址将所述待存储数据存储到所述物理内存中。可选的,所述方法还包括:获取所述DSP处理器为所述数据标识分配的标识物理地址;根据所述标识物理地址获取所述数据标识,将所述数据物理地址和所述数据标识在物理内存中关联存储。本申请实施例提供的上述技术方案与现有技术相比具有如下优点:应用微处理器和USB控制器之间,通过在物理内存中拷贝待传输数据的物理地址来实现数据传输,这样,在物理内存中,无需对待传输数据进行多次拷贝。由于物理地址的数据大小一般要远小于待传输数据的大小,使用本实施例的方法进行数据传输,将大大提高USB数据的实际传输速度。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例提供的一种USB数据传输装置10的框图;图2为本申请实施例提供的一种USB数据传输系统的框图;图3为本申请实施例提供的一种USB数据传输方法的流程图。具体实施方式为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。为避免在物理内存中对待传输数据多次拷贝而造成USB传输速率受限的问题,本申请的技术方案,利用装置间共用物理内存的特性,基于待传输数据在物理内存中的物理地址进行数据传输,即在物理内存中多次拷贝的仅为该待传输数据的物理地址,而非待传输数据本身,在向外传输时,通过该物理地址进行数据传送。图1为本申请实施例提供的一种USB数据传输装置10的框图,如图1所示,该装置10包括应用微处理器11和USB控制器12,应用微处理器11用于获取待传输数据的数据标识,根据数据标识查询得到待传输数据在物理内存中的数据物理地址,并将数据物理地址发送至USB控制器12;USB控制器12用于根据数据物理地址从物理内存中查询得到待传输数据并进行传送。其中,USB控制器12包括DMA控制器121,USB控制器12用于启动DMA控制器121,并将数据物理地址发送到DMA控制器121;DMA控制器121用于根据数据物理地址从物理内存中查询得到待传输数据并进行传送。本实施例中,应用微处理器和USB控制器之间,通过在物理内存中拷贝待传输数据的物理地址来实现数据传输,这样,在本文档来自技高网...
【技术保护点】
1.一种USB数据传输装置,其特征在于,包括:应用微处理器和USB控制器,所述应用微处理器用于获取待传输数据的数据标识,根据所述数据标识查询得到所述待传输数据在物理内存中的数据物理地址,并将所述数据物理地址发送至所述USB控制器;/n所述USB控制器用于根据所述数据物理地址从所述物理内存中查询得到所述待传输数据并进行传送。/n
【技术特征摘要】
1.一种USB数据传输装置,其特征在于,包括:应用微处理器和USB控制器,所述应用微处理器用于获取待传输数据的数据标识,根据所述数据标识查询得到所述待传输数据在物理内存中的数据物理地址,并将所述数据物理地址发送至所述USB控制器;
所述USB控制器用于根据所述数据物理地址从所述物理内存中查询得到所述待传输数据并进行传送。
2.根据权利要求1所述的装置,其特征在于,所述USB控制器包括DMA控制器,
所述USB控制器用于启动所述DMA控制器,并将所述数据物理地址发送到所述DMA控制器;
所述DMA控制器用于根据所述数据物理地址从所述物理内存中查询得到所述待传输数据并进行传送。
3.一种USB数据传输系统,其特征在于,包括ARM处理器和物理内存,所述ARM处理器包括应用微处理器和USB控制器,
所述应用微处理器用于获取待传输数据的数据标识,根据所述数据标识查询得到所述待传输数据在物理内存中的数据物理地址,并将所述数据物理地址发送至所述USB控制器;
所述USB控制器用于根据所述数据物理地址从所述物理内存中查询得到所述待传输数据并进行传送。
4.根据权利要求3所述的系统,其特征在于,所述USB控制器包括DMA控制器,
所述USB控制器用于启动所述DMA控制器,并将所述数据物理地址发送到所述DMA控制器;
所述DMA控制器用于根据所述数据物理地址从所述物理内存中查询得到所述待传输数据并进行传送。
5.根据权利要求3所述的系统,其特征在于,所述系统还包括DSP处理器,
所述应用微处理器用于为待存储数据分配所述数据物理地址,将所述...
【专利技术属性】
技术研发人员:黄柏满,
申请(专利权)人:广州慧睿思通信息科技有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。