一种直接内存访问的传输控制方法及装置与流程

文档序号:12363603阅读:来源:国知局

技术特征:

1.一种直接内存访问的传输控制方法。其特征在于,该方法应用于直接内存访问DMA传输控制装置中,对DMA通道的数据传输进行控制,所述DMA通道传输的数据包括外部设备和存储器之间传输数据,包括:

接收DMA传输请求,所述DMA传输请求携带目标DMA任务;

查询所述目标DMA任务的优先级,并根据所述目标DMA任务的优先级,从DMA通道中选择与所述目标DMA的优先级相对应的DMA通道作为目标通道;

判断所述DMA通道中是否存在已经被其他DMA任务占用的通道;

当所述DMA通道中存在已经被其他DMA任务占用的通道时,查询已占用通道的DMA任务的任务类型以及所述目标DMA任务的任务类型;

判断在所述已占用通道的DMA任务中是否存在与所述目标DMA任务的任务类型不相同的DMA任务;

当在所述已占用通道的DMA任务中存在与所述目标DMA任务的任务类型不相同的DMA任务时,查询所述与所述目标DMA任务的任务类型不相同的DMA任务的优先级;

判断在所述与所述目标DMA任务的任务类型不相同的DMA任务中是否存在低于所述目标DMA任务的优先级的DMA任务;

当在所述与所述目标DMA任务的任务类型不相同的DMA任务中,存在低于所述目标DMA任务的优先级的DMA任务时,暂停所述低于所述目标DMA任务的优先级的DMA任务的数据传输,并获取目标DMA任务的目标数据,将所述目标数据通过所述目标通道的输入队列进行输入,以及将所述目标数据通过所述低于所述目标DMA任务的优先级的DMA任务对应的已占用通道的输出队列进行输出。

2.根据权利要求1所述的方法,其特征在于,所述接收DMA传输请求,所述DMA传输请求携带目标DMA任务之前,还包括:

预先保存DMA任务的优先级列表,以及DMA任务优先级与DMA通道映射关系表;

所述查询所述目标DMA任务的优先级,并根据所述目标DMA任务的优先级,从DMA通道中选择与所述目标DMA的优先级相对应的DMA通道作为目标通道,包括:

在所述DMA任务的优先级列表中查询所述目标DMA任务的优先级,从所述DMA任务优先级与DMA通道映射关系表中查询与所述目标DMA任务的优先级相对应的DMA通道,将与所述目标DMA任务的优先级相对应的DMA通道作为目标通道。

3.根据权利要求1所述的方法,其特征在于,所述判断所述DMA通道中是否存在已经被其他DMA任务占用的通道之后,还包括:

当所述DMA通道中不存在已经被其他DMA任务占用的通道时,获取目标DMA任务对应的目标数据,将所述目标数据通过所述目标通道的输入队列进行输入,以及将所述目标数据通过所述目标通道的输出队列进行输出。

4.根据权利要求1所述的方法,其特征在于,所述判断在所述已占用通道的DMA任务中是否存在与所述目标DMA任务的任务类型不相同的DMA任务之后,还包括:

当在所述已占用通道的DMA任务中不存在与所述目标DMA任务的任务类型不相同的DMA任务时,获取目标DMA任务对应的目标数据,将所述目标数据通过所述目标通道的输入队列进行输入,以及将所述目标数据通过所述目标通道的输出队列进行输出。

5.根据权利要求1所述的方法,其特征在于,所述判断在所述与所述目标DMA任务的任务类型不相同的DMA任务中是否存在低于所述目标DMA任务的优先级的DMA任务之后,还包括:

当在所述与所述目标DMA任务的任务类型不相同的DMA任务中不存在低于所述目标DMA任务的优先级的DMA任务时,获取目标DMA任务对应的目标数据,将所述目标数据通过所述目标通道的输入队列进行输入,以及将所述目标数据通过所述目标通道的输出队列进行输出。

6.一种直接内存访问的传输控制方法。其特征在于,该方法应用于直接内存访问DMA传输控制装置中,对DMA通道的数据传输进行控制,所述DMA通道传输的数据包括外部设备和存储器之间传输数据,包括:

接收DMA传输请求,所述DMA传输请求携带目标DMA任务;

查询所述目标DMA任务的优先级,并根据所述目标DMA任务的优先级,从DMA通道中选择与所述目标DMA的优先级相对应的DMA通道作为目标通道;

判断所述DMA通道中是否存在已经被其他DMA任务占用的通道;

当DMA通道中存在已经被其他DMA任务占用的通道时,查询已占用通道的DMA任务的优先级;

判断在所述已占用通道的DMA任务中是否存在低于所述目标DMA任务的优先级的DMA任务;

当在所述已占用通道的DMA任务中存在低于所述目标DMA任务的优先级的DMA任务时,暂停所述低于所述目标DMA任务的优先级的DMA任务的数据传输,并获取目标DMA任务的目标数据,将所述目标数据通过所述目标通道的输入队列进行输入,以及将所述目标数据通过所述低于所述目标DMA任务的优先级的DMA任务对应的已占用通道的输出队列进行输出。

7.根据权利要求6所述的方法,其特征在于,所述接收DMA传输请求,所述DMA传输请求携带目标DMA任务之前,还包括:

预先保存DMA任务的优先级列表,以及DMA任务优先级与DMA通道映射关系表;

所述查询所述目标DMA任务的优先级,并根据所述目标DMA任务的优先级,从DMA通道中选择与所述目标DMA的优先级相对应的DMA通道作为目标通道,包括:

在所述DMA任务的优先级列表中查询所述目标DMA任务的优先级,从所述DMA任务优先级与DMA通道映射关系表中查询与所述目标DMA任务的优先级相对应的DMA通道,将与所述目标DMA任务的优先级相对应的DMA通道作为目标通道。

8.一种直接内存访问传输控制装置,其特征在于,所述直接内存访问DMA传输控制装置是对DMA通道的数据传输进行控制,所述DMA通道传输的数据包括外部设备和存储器之间传输数据,包括:

接收单元,用于接收DMA传输请求,所述DMA传输请求携带目标DMA任务;

第一查询单元,用于查询所述目标DMA任务的优先级,并根据所述目标DMA任务的优先级,从DMA通道中选择与所述目标DMA的优先级相对应的DMA通道作为目标通道;

第一判断单元,用于判断所述DMA通道中是否存在已经被其他DMA任务占用的通道;

第二查询单元,用于当所述DMA通道中存在已经被其他DMA任务占用的通道时,查询已占用通道的DMA任务的任务类型以及所述目标DMA任务的任务类型;

第二判断单元,用于判断在所述已占用通道的DMA任务中是否存在与所述目标DMA任务的任务类型不相同的DMA任务;

第三查询单元,用于当在所述已占用通道的DMA任务中存在与所述目标DMA任务的任务类型不相同的DMA任务时,查询所述与所述目标DMA任务的任务类型不相同的DMA任务的优先级;

第三判断单元,用于判断在所述与所述目标DMA任务的任务类型不相同的DMA任务中是否存在低于所述目标DMA任务的优先级的DMA任务;

暂停单元,用于当在所述与所述目标DMA任务的任务类型不相同的DMA任务中,存在低于所述目标DMA任务的优先级的DMA任务时,暂停所述低于所述目标DMA任务的优先级的DMA任务的数据传输;

第一传输单元,用于获取目标DMA任务的目标数据,将所述目标数据通过所述目标通道的输入队列进行输入,以及将所述目标数据通过所述低于所述目标DMA任务的优先级的DMA任务对应的已占用通道的输出队列进行输出。

9.根据权利要求8所述的装置,其特征在于,所述装置还包括:

预存单元,用于预先保存DMA任务的优先级列表,以及DMA任务优先级与DMA通道映射关系表;

所述第一查询单元,具体用于在所述DMA任务的优先级列表中查询所述目标DMA任务的优先级,从所述DMA任务优先级与DMA通道映射关系表中查询与所述目标DMA任务的优先级相对应的DMA通道,将与所述目标DMA任务的优先级相对应的DMA通道作为目标通道。

10.根据权利要求8所述的装置,其特征在于,所述装置还包括:

第二传输单元,用于当所述DMA通道中不存在已经被其他DMA任务占用的通道时,获取目标DMA任务对应的目标数据,将所述目标数据通过所述目标通道的输入队列进行输入,以及将所述目标数据通过所述目标通道的输出队列进行输出。

11.根据权利要求8所述的装置,其特征在于,所述装置还包括:

第三传输单元,用于当在所述已占用通道的DMA任务中不存在与所述目标DMA任务的任务类型不相同的DMA任务时,获取目标DMA任务对应的目标数据,将所述目标数据通过所述目标通道的输入队列进行输入,以及将所述目标数据通过所述目标通道的输出队列进行输出。

12.根据权利要求8所述的装置,其特征在于,所述装置还包括:

第四传输单元,用于当在所述与所述目标DMA任务的任务类型不相同的DMA任务中不存在低于所述目标DMA任务的优先级的DMA任务时,获取目标DMA任务对应的目标数据,将所述目标数据通过所述目标通道的输入队列进行输入,以及将所述目标数据通过所述目标通道的输出队列进行输出。

13.一种直接内存访问传输控制装置,其特征在于,所述直接内存访问DMA传输控制装置是对DMA通道的数据传输进行控制,所述DMA通道传输的数据包括外部设备和存储器之间传输数据,包括:

接收单元,用于接收DMA传输请求,所述DMA传输请求携带目标DMA任务;

第一查询单元,用于查询所述目标DMA任务的优先级,并根据所述目标DMA任务的优先级,从DMA通道中选择与所述目标DMA的优先级相对应的 DMA通道作为目标通道;

第一判断单元,用于判断所述DMA通道中是否存在已经被其他DMA任务占用的通道;

第二查询单元,用于当DMA通道中存在已经被其他DMA任务占用的通道时,查询已占用通道的DMA任务的优先级;

第二判断单元,用于判断在所述已占用通道的DMA任务中是否存在低于所述目标DMA任务的优先级的DMA任务;

暂停单元,用于当在所述已占用通道的DMA任务中存在低于所述目标DMA任务的优先级的DMA任务时,暂停所述低于所述目标DMA任务的优先级的DMA任务的数据传输;

传输单元,用于获取目标DMA任务的目标数据,将所述目标数据通过所述目标通道的输入队列进行输入,以及将所述目标数据通过所述低于所述目标DMA任务的优先级的DMA任务对应的已占用通道的输出队列进行输出。

14.根据权利要求13所述的装置,其特征在于,所述装置还包括:

预存单元,用于预先保存DMA任务的优先级列表,以及DMA任务优先级与DMA通道映射关系表;

所述第一查询单元具体用于在所述DMA任务的优先级列表中查询所述目标DMA任务的优先级,从所述DMA任务优先级与DMA通道映射关系表中查询与所述目标DMA任务的优先级相对应的DMA通道,将与所述目标DMA任务的优先级相对应的DMA通道作为目标通道。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1