有效
一种多输入多输出多服务等级数据队列的调度方法及装置
徐金波、常俊胜、庞征斌、张建民、董德尊、黎渊、罗章、欧洋、孙岩、熊泽宇、王子聪、翦杰
中国人民解放军国防科技大学
徐
徐金波 专利 45
中国人民解放军国防科技大学数字信息传输电通信技术电子数据处理
常
常俊胜 专利 70
中国人民解放军国防科技大学电子数据处理通用计算机数字信息传输
庞
庞征斌 专利 61
中国人民解放军国防科技大学电通信技术电子数据处理计算技术
张
张建民 专利 617
清华大学坝堰细部水利工程地水敷设
董
董德尊 专利 94
中国人民解放军国防科技大学网络流控数字信息传输电通信技术
黎
黎渊 专利 55
广西医科大学第二附属医院(广西医科大学第二临床医学院)电子数据处理计算技术物理仪器
罗
罗章 专利 62
中国人民解放军国防科技大学数字信息传输电通信技术电子数据处理
欧
欧洋 专利 68
中国人民解放军国防科技大学电子数据处理计算技术物理仪器
孙
孙岩 专利 64
中国人民解放军国防科学技术大学电子数据处理计算技术物理仪器
熊
熊泽宇 专利 34
中国人民解放军国防科技大学数字信息传输电子数据处理计算技术
王
王子聪 专利 36
中国人民解放军国防科技大学电子数据处理计算技术物理仪器
翦
翦杰 专利 19
中国人民解放军国防科技大学电通信技术数字信息传输电子数据处理
摘要
本发明公开了一种多输入多输出多服务等级数据队列的调度方法及装置,本发明方法包括采用随机分发模式或区分服务质量模式,均将所有存在数据请求的输入源向一个轮转仲裁器请求使用输出通道,且轮转仲裁器基于仲裁令牌轮转规则进行输出通道的仲裁,随机分发模式下处于空闲状态的输出通道将会轮流接收输入源的输入数据;区分服务质量模式下所有输入源、输出通道被划分不同优先级,使某组输出通道将只接收对应优先级的输入源的数据。本发明既能够实现多个输入数据源的数据流在多个输出通道上的随机分发,也能够根据输入数据的优先级的不同,在多个输出通道上实现区分服务质量的任务分发,具有较低的硬件实现代价,尤其适用于ASIC芯片逻辑实现。
1.一种多输入多输出多服务等级数据队列的调度方法,其特征在于,包括根据控制参数 mode_sel 选择采用随机分发模式或区分服务质量模式进行调度的步骤,所述随机分发模式、区分服务质量模式均将所有存在数据请求的输入源向一个轮转仲裁器请求使用输出通道,且轮转仲裁器基于仲裁令牌轮转规则进行输出通道的仲裁,所述随机分发模式下处于空闲状态的输出通道将会轮流接收输入源的输入数据;所述区分服务质量模式下所有输入源、输出通道被划分为不同优先级,某组输出通道将只接收对应优先级的输入源的数据;记输入数据源的数量为 n , n 个输入数据源依次为{ I 0 , I 1 , I 2 , …, I n-1 },输出通道的数量为 m , m 个输出通道依次为{ O 0 , O 1 , O 2 , …, O m-1 };记 n 个输入源的请求向量为{ r 0 , r 1 , r 2 , …, r n - 1 }, r i 为0或1,其中 i =0, 1, 2, …, n -1, r i 为0时表示第 i 个输入源不存在数据请求, r i 为1时表示第 i 个输入源存在数据请求;记 m 个输出通道的忙闲状态向量为{ v 0 , v 1 , v 2 , …, v m-1 }, v i 为0或1,其中 i =0, 1, 2, …, m -1, v i 为0时表示第 i 个输出通道处于忙碌状态,当前无法接收新的数据处理请求, v i 为1时表示第 i 个输出通道处于空闲状态,此时可以接收新的数据处理请求;在随机分发模式下:所述轮转仲裁器的仲裁令牌轮转规则如下:仲裁令牌在完成一次仲裁应答后将会传递给当前得到令牌的输入源的下一个输入源,即假设 I i 得到了仲裁应答,仲裁令牌将会传递给 I (i+1) mod n ;所述仲裁应答的执行规则如下:如果所有 v i 均为0,表示所有输出通道均未空闲,这时所有输入源都无法得到仲裁应答;当存在至少一个 v i 为1时,表示至少有一个输出通道可以接收数据处理请求,假设此时仲裁令牌在 I i 位置,如果 r i 为1,表示 I i 存在数据请求,那么 I i 将得到仲裁应答;如果 r i 为0,表示 I i 不存在数据请求,那么依次向后查看 I i+1 , I i+2 , I i+3 , …, I n-1, I 0 , I 1 , I i-1 , I i 之后的第一个存在数据请求的输入源将得到仲裁应答;所述输出通道的选择规则如下:使用一个输出通道选择令牌实现输出通道的轮转,初始状态下,通道选择令牌在 O 0 手中,第一个得到仲裁应答的输入源将数据输出到 O 0 ;然后通道选择令牌会轮转到 O 1 手中,以此类推;当通道选择令牌轮转到 O i 手中时,若 v i 为1,表示 O i 处于空闲状态,则当前得到仲裁应答的输入源将选择 O i 作为输出通道;若 v i 为0,表示 O i 未处于空闲状态,则当前得到仲裁应答的输入源将选择 O i 之后的第一个空闲的输出通道,同时,通道选择令牌轮转到当前被选中之后的输出通道的下一个输出通道。
2.根据权利要求1所述的多输入多输出多服务等级数据队列的调度方法,其特征在于,所述区分服务质量模式下所有输入源、输出通道被划分为不同优先级具体是指通过配置参数 priority_vector0 配置每个输入源的优先级,通过配置参数 priority_vector1 用于配置每个输出通道的优先级,记共有 d 个不同的优先级,配置参数 priority_vector0 用于配置每个输入数据源的优先级,依次为{ p 0 , p 1 , p 2 , …, p n-1 },任意第 i 个输入数据源的优先级 p i = 0, 1, 2, …, d- 1,其中 i =0, 1, 2, …, n- 1;配置参数 priority_vector1 用于配置每个输出通道的优先级,依次为{ q 0 , q 1 , q 2 , …, q m-1 },任意第 i 个输出通道的优先级 q i = 0,1, 2, …, d-1 ,其中 i =0, 1, 2, …, m- 1。
3.根据权利要求2所述的多输入多输出多服务等级数据队列的调度方法,其特征在于,记输入数据源的数量为 n , n 个输入源依次为{ I 0 , I 1 , I 2 , …, I n-1 },输出通道的数量为 m , m 个输出通道依次为{ O 0 , O 1 , O 2 , …, O m-1 };记 n 个输入源的请求向量为{ r 0 , r 1 , r 2 , …, r n - 1 }, r i 为0或1,其中 i =0, 1, 2, …, n -1, r i 为0时表示第 i 个输入源不存在数据请求, r i 为1时表示第 i 个输入源存在数据请求;记 m 个输出通道的忙闲状态向量为{ v 0 , v 1 , v 2 , …, v m-1 }, v i 为0或1,其中 i =0, 1, 2, …, m -1, v i 为0时表示第 i 个输出通道处于忙碌状态,当前无法接收新的数据处理请求, v i 为1时表示第 i 个输出通道处于空闲状态,此时可以接收新的数据处理请求;在所述区分服务质量模式下:所述轮转仲裁器的仲裁令牌轮转规则如下:仲裁令牌在完成一次仲裁应答后将会传递给当前得到令牌的输入源的下一个输入源,即假设 I i 得到了仲裁应答,仲裁令牌将会传递给 I (i+1) mod n ;所述仲裁应答的执行规则如下:如果所有 v i 均为0,表示所有输出通道均未空闲,这时所有输入源都无法得到仲裁应答;当存在至少一个 v i 为1时,表示至少有一个输出通道可以接收数据处理请求,假设此时仲裁令牌在 I i 位置,如果 r i 为1且所有与 p i 相同的 q j 对应的输出通道 O j 中存在一个空闲通道,即 v j =1,这表示 I i 存在数据请求且支持当前优先级的输出通道中存在一个空闲通道,那么 I i 将得到仲裁应答;如果 r i 为0,表示 I i 不存在数据请求,那么依次向后查看 I i+1 , I i+2 , I i+3 , …, I n-1, I 0 , I 1 , I i-1 ,直到找到一个 I k 符合如下条件: r k 为1且所有与 p k 相同的 q k 对应的输出通道 O k 中存在一个空闲通道,即 v k =1,则 I k 将得到应答;输出通道的选择规则如下:每组具有相同优先级的输出通道使用各自的输出通道选择令牌实现本组内输出通道的轮转;初始状态下,每组具有相同优先级的输出通道的通道选择令牌在该组通道的第一个通道上;当该组的某个数据源得到仲裁应答后,若该组优先级的通道选择令牌所在的输出通道的 v i 为1,表示输出通道 O i 处于空闲状态,则当前得到仲裁应答的输入源将选择 O i 作为输出通道;若 v i 为0,表示 O i 未处于空闲状态,则当前得到仲裁应答的输入源将选择 O i 之后的本组内的第一个空闲的输出通道,同时通道选择令牌轮转到当前被选中之后的输出通道的本组内的下一个输出通道。
4.根据权利要求1所述的多输入多输出多服务等级数据队列的调度方法,其特征在于,所述根据控制参数 mode_sel 选择采用随机分发模式或区分服务质量模式进行调度具体是指:判断控制参数 mode_sel ,当控制参数 mode_sel 为第一设定值时采用随机分发模式调度;当控制参数 mode_sel 为第二设定值时采用区分服务质量模式调度。
5.一种多输入多输出多服务等级数据队列的调度装置,其特征在于,该调度装置被编程或配置以执行权利要求1~4中任意一项所述多输入多输出多服务等级数据队列的调度方法的步骤。
6.一种微处理器,该微处理器中包含多输入多输出多服务等级数据队列以及调度装置,其特征在于,该调度装置被编程或配置以执行权利要求1~4中任意一项所述多输入多输出多服务等级数据队列的调度方法的步骤。
7.一种计算机设备,至少包括微处理器和存储器,其特征在于,该微处理器中包含多输入多输出多服务等级数据队列以及调度装置,其特征在于,该调度装置被编程或配置以执行权利要求1~4中任意一项所述多输入多输出多服务等级数据队列的调度方法的步骤。
8.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有被编程或配置以执行权利要求1~4中任意一项所述多输入多输出多服务等级数据队列的调度方法的计算机程序。
暂无引用专利



