[发明专利]插入数据传输队列结构体的方法和装置有效
申请号: | 201710565480.X | 申请日: | 2017-07-12 |
公开(公告)号: | CN109254936B | 公开(公告)日: | 2020-06-02 |
发明(设计)人: | 马帅;李雪峰;高翔 | 申请(专利权)人: | 龙芯中科技术有限公司 |
主分类号: | G06F13/40 | 分类号: | G06F13/40;G06F13/42 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 杨贝贝;刘芳 |
地址: | 100095 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 插入 数据传输 队列 结构 方法 装置 | ||
本发明提供一种插入数据传输队列结构体的方法和装置,该方法包括:接收第一请求,所述第一请求用于对通用串行总线USB设备执行输入操作或输出操作;根据所述第一请求,在数据传输队列QH结构体循环队列中插入所述第一请求对应的第一QH结构体,所述第一QH结构体与所述QH结构体循环队列的第二QH结构体之间间隔至少一个冗余QH结构体,所述第二QH结构体对应第二请求,所述第二请求对所述USB设备执行的操作与所述第一请求不同;根据所述QH结构体循环队列,对所述USB设备执行操作。本发明提供的插入数据传输队列结构体的方法和装置,能够提高计算机与USB设备之间传输数据的效率。
技术领域
本发明涉及计算机技术,尤其涉及一种插入数据传输队列结构体的方法和装置。
背景技术
目前,在将通用串行总线(Universal Serial Bus,USB)设备上插入计算机上的USB接口后,计算机可以根据用户输入的请求,对USB设备执行控制操作、输入操作或输出操作。其中,控制操作用于向USB设备发送控制命令,输入操作用于接收USB设备发送的数据,输出操作用于向USB设备发送数据。
现有技术中,上述计算机在接收到对USB设备执行输入操作的请求时,会在数据传输队列(Queue Head,QH)结构体循环队列中插入一个输入QH结构体,并将USB设备传输给计算机的数据封装成一条数据包(Queue Element Transfer Descriptor,QTD)链表挂在输入QH结构体上。相应地,上述计算机在接收到对USB设备执行输出操作的请求时,会在数据传输队列(Queue Head,QH)结构体循环队列中插入一个输出QH结构体,并将计算机发送给USB设备的数据封装成一个数据包(Queue Element Transfer Descriptor,QTD)链表挂在输出QH结构体上。这样,计算机循环操作QH结构体循环队列中的QH结构体,以完成与USB设备之间的数据的传输。
计算机循环操作QH结构体循环队列中的某一QH结构体时,可能会出现需要将操作上一QH结构体时接收到的USB发送的数据再次输出给USB设备的情况。此时,若计算机操作上一QH结构体时接收到的数据还在内存的传输通路上,并未到达计算机内存,则计算机操作当前QH结构体时,将无法在内存中读取到该数据,导致计算机出现读取错误。在这种情况下,计算机会重启用于读取数据的芯片,导致计算机与USB设备之间的传输数据的效率较低。
发明内容
本发明提供一种插入数据传输队列结构体的方法和装置,用于提高计算机与USB设备之间传输数据的效率。
本发明第一方面提供一种插入数据传输队列结构体的方法,包括:
接收第一请求,所述第一请求用于对通用串行总线USB设备执行输入操作或输出操作;
根据所述第一请求,在数据传输队列QH结构体循环队列中插入所述第一请求对应的第一QH结构体,所述第一QH结构体与所述QH结构体循环队列的第二QH结构体之间间隔至少一个冗余QH结构体,所述第二QH结构体对应第二请求,所述第二请求对所述USB设备执行的操作与所述第一请求不同;
根据所述QH结构体循环队列,对所述USB设备执行操作。
如上所述,所述根据所述第一请求,在数据传输队列QH结构体循环队列中插入所述第一请求对应的第一QH结构体之前,所述方法还包括:
在第一次接收到针对所述USB设备的输入操作或输出操作时,创建所述至少一个冗余QH结构体,以通过所述至少一个冗余QH结构体形成所述QH结构体循环队列。
如上所述,所述冗余QH结构体的变量均为默认值。
如上所述,所述根据所述QH结构体循环队列,对所述USB设备执行操作,包括:
从所述QH结构体循环队列中读取第三QH结构体,所述第三QH结构体为所述QH结构体循环队列中的任一个QH结构体;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于龙芯中科技术有限公司,未经龙芯中科技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710565480.X/2.html,转载请声明来源钻瓜专利网。