CN117149681A - 轮询调度实现方法、装置、设备及计算机可读存储介质 - Google Patents
轮询调度实现方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN117149681A CN117149681A CN202311115227.6A CN202311115227A CN117149681A CN 117149681 A CN117149681 A CN 117149681A CN 202311115227 A CN202311115227 A CN 202311115227A CN 117149681 A CN117149681 A CN 117149681A
- Authority
- CN
- China
- Prior art keywords
- mask
- scheduling request
- polling scheduling
- bit
- level
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000004590 computer program Methods 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 13
- 239000003550 marker Substances 0.000 claims description 4
- 230000008859 change Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Small-Scale Networks (AREA)
Abstract
本公开涉及一种轮询调度实现方法、装置、设备及计算机可读存储介质。本公开通过改变掩码的生成方式,每一轮调度完成后,会对掩码进行复位,在这种情况下,掩码不会影响下一轮的仲裁,进而不会造成轮询仲裁顺序发生变化导致公平性发生变化,且不会产生毛刺,提高了轮询调度实现方法的合理性。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种轮询调度实现方法、装置、设备及计算机可读存储介质。
背景技术
远端内存直接访问(Remote Direct Memory Access,RDMA)是在两个或者多个计算机进行通讯的时候使用DMA,从一个主机的内存直接访问另一个主机的内存的技术。
在使用RDMA技术时,在处理数据的过程中可能会涉及到需要从多个请求选出一个进行响应的情况,在这种情况下通常会经过轮询调度(RR调度)使得每个请求信号依次通过后进行响应。例如,有i个请求信号,经过RR调度后返回一个i位的独热码,而这个i位独热码中比特1(高电平比特位)所处的为置对应为本次仲裁出的请求信号。硬件根据返回的独热码使对应的请求信号的优先级上调到最高,并让其通过,而其它的请求由于优先权不够则被阻塞直到被仲裁并提高优先权。
当前的轮询调度实现方法中,为保证仲裁机制的公平性,会通过掩码将本轮仲裁中已经被仲裁过的信号进行屏蔽。然而,在本轮仲裁结束后,掩码无法进行复位,这会使得掩码对下一轮的仲裁顺序产生影响,使得仲裁机制并不是完全公平;若对掩码强行复位,则会产生毛刺。因此,当前的轮询调度实现方法并不合理。
发明内容
为了解决上述技术问题,本公开提供了一种轮询调度实现方法、装置、设备及计算机可读存储介质,以提高轮询调度实现方法的合理性。
第一方面,本公开实施例提供一种轮询调度实现方法,包括:
根据掩码对轮询调度请求进行覆盖,得到覆盖后的轮询调度请求,所述掩码用于对所述轮询调度请求中被仲裁过的请求信号进行覆盖;
基于所述覆盖后的轮询调度请求,确定掩码生成标志码,所述掩码生成标志码中高电平比特位的位置与所述覆盖后的轮询调度请求中最低位的高电平比特位的位置相同;
根据所述掩码生成标志码对所述掩码进行更新,得到更新后的掩码,所述更新后的掩码中分界比特位的位置与所述掩码生成标志码中高电平比特位的位置相同,所述分界比特位的高位为高电平比特位,所述分界比特位以及所述分界比特位的低位为低电平比特位;
若更新后的轮询调度请求中不存在高电平比特位,则完成所述轮询调度请求的仲裁,所述更新后的轮询调度请求为根据所述更新后的掩码对所述轮询调度请求进行覆盖后得到的。
在一些实施例中,所述根据掩码对轮询调度请求进行覆盖,得到覆盖后的轮询调度请求之前,所述方法还包括:
确定轮询调度请求中的首个请求信号,所述首个请求信号为所述轮询调度请求中最低位的高电平比特位;
基于所述首个请求信号在所述轮询调度请求中的位置生成掩码。
在一些实施例中,所述根据掩码对轮询调度请求进行覆盖,得到覆盖后的轮询调度请求,包括:
将所述掩码与所述轮询调度请求进行位与计算,得到覆盖后的轮询调度请求。
在一些实施例中,所述基于所述覆盖后的轮询调度请求,确定掩码生成标志码,包括:
按照从低位到高位的顺序遍历所述覆盖后的轮询调度请求,确定所述覆盖后的轮询调度请求中最低位的高电平比特位的位置;
将所述掩码生成标志码中与所述覆盖后的轮询调度请求中最低位的高电平比特位的位置相同的比特位置为高电平,其他比特位置为低电平,得到掩码生成标志码。
在一些实施例中,所述若更新后的轮询调度请求中不存在高电平比特位,则完成所述轮询调度请求的仲裁之前,所述方法还包括:
根据覆盖掩码后的轮询调度请求生成仲裁完成标志位,其中,若仲裁完成标志位为高电平则表征更新后的轮询调度请求中不存在高电平比特位,若仲裁完成标志位为低电平则表征更新后的轮询调度请求中存在高电平比特位。
第二方面,本公开实施例提供一种轮询调度实现装置,包括:
覆盖模块,用于根据掩码对轮询调度请求进行覆盖,得到覆盖后的轮询调度请求,所述掩码用于对所述轮询调度请求中被仲裁过的请求信号进行覆盖;
第一确定模块,用于基于所述覆盖后的轮询调度请求,确定掩码生成标志码,所述掩码生成标志码中高电平比特位的位置与所述覆盖后的轮询调度请求中最低位的高电平比特位的位置相同;
更新模块,用于根据所述掩码生成标志码对所述掩码进行更新,得到更新后的掩码,所述更新后的掩码中分界比特位的位置与所述掩码生成标志码中高电平比特位的位置相同,所述分界比特位的高位为高电平比特位,所述分界比特位以及所述分界比特位的低位为低电平比特位;
完成模块,用于若更新后的轮询调度请求中不存在高电平比特位,则完成所述轮询调度请求的仲裁,所述更新后的轮询调度请求为根据所述更新后的掩码对所述轮询调度请求进行覆盖后得到的。
在一些实施例中,所述装置还包括:
第二确定模块,用于确定轮询调度请求中的首个请求信号,所述首个请求信号为所述轮询调度请求中最低位的高电平比特位;
第一生成模块,用于基于所述首个请求信号在所述轮询调度请求中的位置生成掩码。
在一些实施例中,所述装置还包括:
第二生成模块,用于根据覆盖掩码后的轮询调度请求生成仲裁完成标志位,其中,若仲裁完成标志位为高电平则表征更新后的轮询调度请求中不存在高电平比特位,若仲裁完成标志位为低电平则表征更新后的轮询调度请求中存在高电平比特位。
第三方面,本公开实施例提供一种电子设备,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如第一方面所述的方法。
第四方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现第一方面所述的方法。
第五方面,本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或指令,该计算机程序或指令被处理器执行时实现如上所述的轮询调度实现方法。
本公开实施例提供的轮询调度实现方法、装置、设备及计算机可读存储介质,通过改变掩码的生成方式,每一轮调度完成后,会对掩码进行复位,在这种情况下,掩码不会影响下一轮的仲裁,进而不会造成轮询仲裁顺序发生变化导致公平性发生变化,且不会产生毛刺,提高了轮询调度实现方法的合理性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的轮询调度实现方法流程图;
图2为本公开另一实施例提供的轮询调度实现方法流程图;
图3为本公开实施例提供的一种轮询调度仿真波形示意图;
图4为本公开实施例提供的轮询调度实现装置的结构示意图;
图5为本公开实施例提供的电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
本公开实施例提供了一种轮询调度实现方法,下面结合具体的实施例对该方法进行介绍。
图1为本公开实施例提供的轮询调度实现方法流程图。该方法可以应用于任意的具有数据处理功能的终端设备中,例如,智能手机、掌上电脑、平板电脑、带显示屏的可穿戴设备、台式机、笔记本电脑、一体机、智能家居设备等。可以理解的是,本公开实施例提供的合约信息处理方法还可以应用在其他场景中。
下面对图1所示的轮询调度实现方法进行介绍,该方法包括的具体步骤如下:
S101、根据掩码对轮询调度请求进行覆盖,得到覆盖后的轮询调度请求,所述掩码用于对所述轮询调度请求中被仲裁过的请求信号进行屏蔽。
掩码在计算机学中指的是一串二进制数字,通过与目标数字的按位操作,达到屏蔽指定位的目的。掩码采用数值记录状态,每一个比特位有两种取值,即高电平(1)或低电平(0),分别代表不同的状态。
轮询调度请求由多个比特位组成,每个比特位的取值对应一个请求信号的有效或无效,如高电平(1)表示该比特位对应的请求信号有效,低电平(0)表示该比特位对应的请求信号无效。
在轮询调度中,对于一个轮询调度请求进行一轮仲裁,一轮仲裁中包括多次仲裁操作,直到轮询调度请求中的每个信号均被仲裁后结束这一轮仲裁,对下一个轮询调度请求进行下一轮仲裁。
在一轮仲裁中,根据轮询调度请求仲裁出一个请求信号,然后将这个被仲裁出的请求信号通过掩码进行屏蔽,其中掩码的位数与轮询调度请求的位数相同。例如,将掩码与轮询调度请求进行位与运算,使得被仲裁过的请求信号比特位置0。
S102、基于所述覆盖后的轮询调度请求,确定掩码生成标志码,所述掩码生成标志码中高电平比特位的位置与所述覆盖后的轮询调度请求中最低位的高电平比特位的位置相同。
掩码标志生成码同样由多个比特位组成,其位数与轮询调度请求的位数相同。
由低位向高位遍历覆盖后的轮询调度请求,查出其中第一个高电平比特位所在的位置,并将掩码生成标志码中相应位置的比特位置为高电平,掩码生成标志码中的其他比特位置为低电平。
S103、根据所述掩码生成标志码对所述掩码进行更新,得到更新后的掩码,所述更新后的掩码中分界比特位的位置与所述掩码生成标志码中高电平比特位的位置相同,所述分界比特位的高位为高电平比特位,所述分界比特位以及所述分界比特位的低位为低电平比特位。
掩码生成标志码实际上表征了覆盖后的轮询调度请求中存在有效请求信号的最低位比特位的位置,该比特位的高位可能会存在其他有效的请求信号,而该比特位的低位中则不会存在有效的请求信号,因此将这一比特位作为分界比特位,分界比特位的高位为高电平比特位,分界比特位以及分界比特位的低位为低电平比特位。根据掩码生成标志码可以确定分界比特位的位置,进一步基于分界比特位对掩码进行更新,得到更新后的掩码。
S104、若更新后的轮询调度请求中不存在高电平比特位,则完成所述轮询调度请求的仲裁,所述更新后的轮询调度请求为根据所述更新后的掩码对所述轮询调度请求进行覆盖后得到的。
经过多次仲裁后,若更新后的轮询调度请求中不存在高电平比特位,则代表轮询调度请求中所有请求信号均被仲裁过,此时这一轮轮询调度请求的仲裁结束。而在此之前,覆盖后的轮询调度请求先经过上述对掩码进行更新的步骤,相应的掩码生成标志码均为低电平比特位,根据掩码生成标志码进行更新后的掩码中也均为低电平比特位,在这一轮轮询调度请求的仲裁结束时实现了掩码的复位。
可以理解的是,这一步骤中判断更新后的轮询调度请求中是否存在高电平比特位可以根据覆盖后的轮询调度请求进行一定的逻辑计算实现,若更新后的轮询调度请求中不存在高电平比特位,则无需根据更新后的掩码对所述轮询调度请求进行覆盖,直接完成所述轮询调度请求的仲裁即可。
可选的,若更新后的轮询调度请求中存在高电平比特位,则重复执行上述步骤,直到更新后的轮询调度请求中不存在高电平比特位,完成所述轮询调度请求的仲裁。
举例来说,根据轮询调度请求仲裁出本轮的首个请求信号pq_result_unmask,并将其赋值给仲裁结果rr_result。例如,一个8位的轮询调度请求为11001111,仲裁出本轮的第一个请求信号为00000001(记为01),并将01赋值给rr_result。根据这一仲裁结果,能够确定仲裁结果中最低的高电平比特位对应的请求信号已经被仲裁过,得到掩码11111110,将掩码与轮询调度请求进行位与运算后,即得到覆盖后的轮询调度请求11001110,可以看到其中被仲裁过的请求信号已经被屏蔽(置0),在下一次的仲裁中不会被再次仲裁。重复进行多次仲裁后,覆盖后的轮询调度请求为00000000,此时相应的掩码生成标志码为00000000,相应的掩码则更新为00000000,实现了掩码的复位。
本公开实施例通过根据掩码对轮询调度请求进行覆盖,得到覆盖后的轮询调度请求,所述掩码用于对所述轮询调度请求中被仲裁过的请求信号进行覆盖;基于所述覆盖后的轮询调度请求,确定掩码生成标志码,所述掩码生成标志码中高电平比特位的位置与所述覆盖后的轮询调度请求中最低位的高电平比特位的位置相同;根据所述掩码生成标志码对所述掩码进行更新,得到更新后的掩码,所述更新后的掩码中分界比特位的位置与所述掩码生成标志码中高电平比特位的位置相同,所述分界比特位的高位为高电平比特位,所述分界比特位以及所述分界比特位的低位为低电平比特位;若所述覆盖掩码后的轮询调度请求中不存在高电平比特位,则完成所述轮询调度请求的仲裁,通过改变掩码的生成方式,每一轮调度完成后,会对掩码进行复位,在这种情况下,掩码不会影响下一轮的仲裁,进而不会造成轮询仲裁顺序发生变化导致公平性发生变化,且不会产生毛刺,提高了轮询调度实现方法的合理性。
图2为本公开另一实施例提供的轮询调度实现方法流程图,图3为本公开实施例提供的一种轮询调度仿真波形示意图,下面结合图3对图2所示的轮询调度实现方法进行介绍。如图2所示,该方法包括如下几个步骤:
S201、确定轮询调度请求中的首个请求信号,所述首个请求信号为所述轮询调度请求中最低位的高电平比特位。
首次下发轮询调度请求,仲裁出本轮第一个请求信号,该请求信号为轮询调度请求中最低位的高电平比特位,也即最低位的有效请求位。
S202、基于所述首个请求信号在所述轮询调度请求中的位置生成掩码。
请求信号在所述轮询调度请求中的位置即为仲裁结果,将仲裁结果中高电平比特位的高位置为高电平,其余比特位置为低电平,得到掩码。
具体的,如图3所示,pq_result_unmask为未覆盖掩码前轮询调度请求的仲裁结果,根据rr_req(11111111)仲裁出本轮的第一个请求pq_result_unmask(01),并在rr_en拉高后将pq_result_unmask的值赋值给rr_result(01),同时将last_result的值更新为pq_result_unmask的值。其中rr_en为使能信号,rr_en拉高则表示仲裁开始,并在下一个时钟周期返回仲裁结果。
由更新后的last_result(01),产生掩码mask(fe),具体逻辑是以last_result中的高电平比特位为界,mask对应的高位为高电平,其余比特位为低电平。
S203、将所述掩码与所述轮询调度请求进行位与计算,得到覆盖后的轮询调度请求。
根据掩码对轮询调度请求进行覆盖,得到覆盖后的轮询调度请求。利用掩码覆盖住已经被仲裁的请求信号,保证在本轮调度中不会被再次被仲裁,实现仲裁机会均等。
S204、按照从低位到高位的顺序遍历所述覆盖后的轮询调度请求,确定所述覆盖后的轮询调度请求中最低位的高电平比特位的位置。
S205、将所述掩码生成标志码中与所述覆盖后的轮询调度请求中最低位的高电平比特位的位置相同的比特位置为高电平,其他比特位置为低电平,得到掩码生成标志码。
S206、根据所述掩码生成标志码对所述掩码进行更新,得到更新后的掩码,所述更新后的掩码中分界比特位的位置与所述掩码生成标志码中高电平比特位的位置相同,所述分界比特位的高位为高电平比特位,所述分界比特位以及所述分界比特位的低位为低电平比特位。
S207、判断更新后的轮询调度请求中是否存在高电平比特位。若是,执行S203;若否,执行S208。
具体的,根据覆盖掩码后的轮询调度请求生成仲裁完成标志位,若仲裁完成标志位为高电平则表征覆盖掩码后的轮询调度请求中不存在高电平比特位,若仲裁完成标志位为低电平则表征覆盖掩码后的轮询调度请求中存在高电平比特位。
S203~S207为一轮仲裁中循环执行的仲裁操作。
如图3所示,mask(fe)与rr_req(11111111)进行位与计算,得到覆盖后的轮询调度请求rr_req_mask(fe)。第二个使能信号拉高后,对rr_req_mask(fe)进行仲裁,pq_result_mask为覆盖掩码后的轮询调度请求中的仲裁结果,其产生逻辑是每次找到rr_req_mask最低位的比特1,并将pq_result_mask对应比特位置1,其它比特位置0。从低往高位查找rr_req_mask(fe)中第一个值为1的比特位,并将pq_result_mask对应的比特位置1,其它位置0,得到pq_result_mask(02),同时赋值给last_result(02)和rr_result(02)。pq_result_mask即作为掩码生成标志码,用于更新掩码。根据pq_result_mask(02)对掩码进行更新,得到更新后的掩码mask(fc)。
mask(fc)与rr_req(11111111)进行位与计算,得到覆盖后的轮询调度请求rr_req_mask(fc)。第三个使能信号拉高后,对rr_req_mask(fc)进行仲裁,并得到仲裁结果pq_result_mask(04),同时赋值给last_result(04)和rr_result(04),根据pq_result_mask(04)对掩码进行更新,得到更新后的掩码mask(f8)。
mask(f8)与rr_req(11111111)进行位与计算,得到覆盖后的轮询调度请求rr_req_mask(f8)。第四个使能信号拉高后,对rr_req_mask(f8)进行仲裁,并得到仲裁结果pq_result_mask(08),同时赋值给last_result(08)和rr_result(08),根据pq_result_mask(08)对掩码进行更新,得到更新后的掩码mask(f0)。
mask(f0)与rr_req(11111111)进行位与计算,得到覆盖后的轮询调度请求rr_req_mask(f0)。第五个使能信号拉高后,对rr_req_mask(f0)进行仲裁,并得到仲裁结果pq_result_mask(10),同时赋值给last_result(10)和rr_result(10),根据pq_result_mask(10)对掩码进行更新,得到更新后的掩码mask(e0)。
mask(e0)与rr_req(11111111)进行位与计算,得到覆盖后的轮询调度请求rr_req_mask(e0)。第六个使能信号拉高后,对rr_req_mask(e0)进行仲裁,并得到仲裁结果pq_result_mask(20),同时赋值给last_result(20)和rr_result(20),根据pq_result_mask(20)对掩码进行更新,得到更新后的掩码mask(40)。
mask(40)与rr_req(11111111)进行位与计算,得到覆盖后的轮询调度请求rr_req_mask(c0)。第七个使能信号拉高后,对rr_req_mask(c0)进行仲裁,并得到仲裁结果pq_result_mask(40),同时赋值给last_result(40)和rr_result(40),根据pq_result_mask(40)对掩码进行更新,得到更新后的掩码mask(80)。
mask(80)与rr_req(11111111)进行位与计算,得到覆盖后的轮询调度请求rr_req_mask(80)。第八个使能信号拉高后,对rr_req_mask(80)进行仲裁,并得到仲裁结果pq_result_mask(00),根据pq_result_mask(00)对掩码进行更新,得到更新后的掩码mask(00),这时按照上述逻辑得知,mask(00)与rr_req(11111111)进行位与计算,得到更新后的轮询调度请求rr_req_mask(00),即更新后的轮询调度请求中不存在高电平比特位,仲裁完成标志位req_mask_zero拉高,表明这一轮轮询调度请求的仲裁完成。
同时,在仲裁完成标志位req_mask_zero为高电平时,不再将pq_result_mask的值赋给last_result和rr_result。
S208、完成所述轮询调度请求的仲裁。
本公开实施例通过在一轮轮询调度完成时对掩码进行复位,掩码不会影响下一轮的请求,进而不会造成轮询仲裁顺序发生变化导致影响公平性;同时,掩码产生的方式更为灵活,逻辑更为简便,降低了资源消耗、功耗以及逻辑延迟,在拉高使能的下一周期,就会给出仲裁结果,提高了传输效率,且功耗有明显的降低。
同时,本公开实施例对每轮的第一次仲裁结果的来源做了更改,每轮的首次仲裁结果和掩码不再有关系,这样确保掩码不会影响下一轮的仲裁顺序,进一步提高了轮询调度实现方法的合理性。
图4为本公开实施例提供的轮询调度实现装置的结构示意图。该轮询调度实现装置可以是如上实施例所述的具有数据处理功能的终端设备,或者该轮询调度实现装置可以是该终端设备中的部件或组件。本公开实施例提供的轮询调度实现装置可以执行轮询调度实现方法实施例提供的处理流程,如图4所示,轮询调度实现装置40包括:覆盖模块41,第一确定模块42,更新模块43,完成模块44;其中,覆盖模块41用于根据掩码对轮询调度请求进行覆盖,得到覆盖后的轮询调度请求,所述掩码用于对所述轮询调度请求中被仲裁过的请求信号进行覆盖;第一确定模块42用于基于所述覆盖后的轮询调度请求,确定掩码生成标志码,所述掩码生成标志码中高电平比特位的位置与所述覆盖后的轮询调度请求中最低位的高电平比特位的位置相同;更新模块43用于根据所述掩码生成标志码对所述掩码进行更新,得到更新后的掩码,所述更新后的掩码中分界比特位的位置与所述掩码生成标志码中高电平比特位的位置相同,所述分界比特位的高位为高电平比特位,所述分界比特位以及所述分界比特位的低位为低电平比特位;完成模块44用于若更新后的轮询调度请求中不存在高电平比特位,则完成所述轮询调度请求的仲裁,所述更新后的轮询调度请求为根据所述更新后的掩码对所述轮询调度请求进行覆盖后得到的。
可选的,轮询调度实现装置40还包括第二确定模块45、第一生成模块46;其中,第二确定模块45用于确定轮询调度请求中的首个请求信号,所述首个请求信号为所述轮询调度请求中最低位的高电平比特位;第一生成模块46用于基于所述首个请求信号在所述轮询调度请求中的位置生成掩码。
可选的,覆盖模块41用于将所述掩码与所述轮询调度请求进行位与计算,得到覆盖后的轮询调度请求。
可选的,第一确定模块42包括遍历单元421、确定单元422;其中,遍历单元421用于按照从低位到高位的顺序遍历所述覆盖后的轮询调度请求,确定所述覆盖后的轮询调度请求中最低位的高电平比特位的位置;确定单元422用于将所述掩码生成标志码中与所述覆盖后的轮询调度请求中最低位的高电平比特位的位置相同的比特位置为高电平,其他比特位置为低电平,得到掩码生成标志码。
可选的,轮询调度实现装置40还包括第二生成模块47,用于根据覆盖掩码后的轮询调度请求生成仲裁完成标志位,其中,若仲裁完成标志位为高电平则表征更新后的轮询调度请求中不存在高电平比特位,若仲裁完成标志位为低电平则表征更新后的轮询调度请求中存在高电平比特位。
图4所示实施例的轮询调度实现装置可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图5为本公开实施例提供的电子设备的结构示意图。该电子设备可以是如上实施例所述的待升级设备。本公开实施例提供的电子设备可以执行轮询调度实现方法实施例提供的处理流程,如图5所示,电子设备50包括:存储器51、处理器52、计算机程序和通讯接口53;其中,计算机程序存储在存储器51中,并被配置为由处理器52执行如上所述的轮询调度实现方法。
另外,本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现上述实施例所述的轮询调度实现方法。
此外,本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或指令,该计算机程序或指令被处理器执行时实现如上所述的轮询调度实现方法。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种轮询调度实现方法,其特征在于,所述方法包括:
根据掩码对轮询调度请求进行覆盖,得到覆盖后的轮询调度请求,所述掩码用于对所述轮询调度请求中被仲裁过的请求信号进行覆盖;
基于所述覆盖后的轮询调度请求,确定掩码生成标志码,所述掩码生成标志码中高电平比特位的位置与所述覆盖后的轮询调度请求中最低位的高电平比特位的位置相同;
根据所述掩码生成标志码对所述掩码进行更新,得到更新后的掩码,所述更新后的掩码中分界比特位的位置与所述掩码生成标志码中高电平比特位的位置相同,所述分界比特位的高位为高电平比特位,所述分界比特位以及所述分界比特位的低位为低电平比特位;
若更新后的轮询调度请求中不存在高电平比特位,则完成所述轮询调度请求的仲裁,所述更新后的轮询调度请求为根据所述更新后的掩码对所述轮询调度请求进行覆盖后得到的。
2.根据权利要求1所述的方法,其特征在于,所述根据掩码对轮询调度请求进行覆盖,得到覆盖后的轮询调度请求之前,所述方法还包括:
确定轮询调度请求中的首个请求信号,所述首个请求信号为所述轮询调度请求中最低位的高电平比特位;
基于所述首个请求信号在所述轮询调度请求中的位置生成掩码。
3.根据权利要求1所述的方法,其特征在于,所述根据掩码对轮询调度请求进行覆盖,得到覆盖后的轮询调度请求,包括:
将所述掩码与所述轮询调度请求进行位与计算,得到覆盖后的轮询调度请求。
4.根据权利要求1所述的方法,其特征在于,所述基于所述覆盖后的轮询调度请求,确定掩码生成标志码,包括:
按照从低位到高位的顺序遍历所述覆盖后的轮询调度请求,确定所述覆盖后的轮询调度请求中最低位的高电平比特位的位置;
将所述掩码生成标志码中与所述覆盖后的轮询调度请求中最低位的高电平比特位的位置相同的比特位置为高电平,其他比特位置为低电平,得到掩码生成标志码。
5.根据权利要求1所述的方法,其特征在于,所述若更新后的轮询调度请求中不存在高电平比特位,则完成所述轮询调度请求的仲裁之前,所述方法还包括:
根据覆盖掩码后的轮询调度请求生成仲裁完成标志位,其中,若仲裁完成标志位为高电平则表征更新后的轮询调度请求中不存在高电平比特位,若仲裁完成标志位为低电平则表征更新后的轮询调度请求中存在高电平比特位。
6.一种轮询调度实现装置,其特征在于,包括:
覆盖模块,用于根据掩码对轮询调度请求进行覆盖,得到覆盖后的轮询调度请求,所述掩码用于对所述轮询调度请求中被仲裁过的请求信号进行覆盖;
第一确定模块,用于基于所述覆盖后的轮询调度请求,确定掩码生成标志码,所述掩码生成标志码中高电平比特位的位置与所述覆盖后的轮询调度请求中最低位的高电平比特位的位置相同;
更新模块,用于根据所述掩码生成标志码对所述掩码进行更新,得到更新后的掩码,所述更新后的掩码中分界比特位的位置与所述掩码生成标志码中高电平比特位的位置相同,所述分界比特位的高位为高电平比特位,所述分界比特位以及所述分界比特位的低位为低电平比特位;
完成模块,用于若更新后的轮询调度请求中不存在高电平比特位,则完成所述轮询调度请求的仲裁,所述更新后的轮询调度请求为根据所述更新后的掩码对所述轮询调度请求进行覆盖后得到的。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第二确定模块,用于确定轮询调度请求中的首个请求信号,所述首个请求信号为所述轮询调度请求中最低位的高电平比特位;
第一生成模块,用于基于所述首个请求信号在所述轮询调度请求中的位置生成掩码。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第二生成模块,用于根据覆盖掩码后的轮询调度请求生成仲裁完成标志位,其中,若仲裁完成标志位为高电平则表征更新后的轮询调度请求中不存在高电平比特位,若仲裁完成标志位为低电平则表征更新后的轮询调度请求中存在高电平比特位。
9.一种电子设备,其特征在于,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如权利要求1-5中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311115227.6A CN117149681A (zh) | 2023-08-31 | 2023-08-31 | 轮询调度实现方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311115227.6A CN117149681A (zh) | 2023-08-31 | 2023-08-31 | 轮询调度实现方法、装置、设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117149681A true CN117149681A (zh) | 2023-12-01 |
Family
ID=88886327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311115227.6A Pending CN117149681A (zh) | 2023-08-31 | 2023-08-31 | 轮询调度实现方法、装置、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117149681A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6791991B1 (en) * | 2000-10-31 | 2004-09-14 | Agere Systems Inc. | Channel sequencing using a round-robin scheduler |
CN108074622A (zh) * | 2016-11-07 | 2018-05-25 | 三星电子株式会社 | 存储器控制器、数据芯片及其控制方法 |
CN114138706A (zh) * | 2021-10-29 | 2022-03-04 | 北京中科昊芯科技有限公司 | 一种多功能仲裁器、仲裁方法、芯片以及产品 |
CN114996178A (zh) * | 2022-06-30 | 2022-09-02 | 山东云海国创云计算装备产业创新中心有限公司 | 一种总线仲裁的方法、系统、设备和存储介质 |
CN115858430A (zh) * | 2023-02-02 | 2023-03-28 | 摩尔线程智能科技(北京)有限责任公司 | 图形处理器的访存优化方法、设备及计算机可读介质 |
-
2023
- 2023-08-31 CN CN202311115227.6A patent/CN117149681A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6791991B1 (en) * | 2000-10-31 | 2004-09-14 | Agere Systems Inc. | Channel sequencing using a round-robin scheduler |
CN108074622A (zh) * | 2016-11-07 | 2018-05-25 | 三星电子株式会社 | 存储器控制器、数据芯片及其控制方法 |
CN114138706A (zh) * | 2021-10-29 | 2022-03-04 | 北京中科昊芯科技有限公司 | 一种多功能仲裁器、仲裁方法、芯片以及产品 |
CN114996178A (zh) * | 2022-06-30 | 2022-09-02 | 山东云海国创云计算装备产业创新中心有限公司 | 一种总线仲裁的方法、系统、设备和存储介质 |
CN115858430A (zh) * | 2023-02-02 | 2023-03-28 | 摩尔线程智能科技(北京)有限责任公司 | 图形处理器的访存优化方法、设备及计算机可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110244983B (zh) | 固定串口号的方法、终端设备及存储介质 | |
CN112269659A (zh) | 一种资源管理方法、系统及电子设备和存储介质 | |
US20200050481A1 (en) | Computing Method Applied to Artificial Intelligence Chip, and Artificial Intelligence Chip | |
CN108319504B (zh) | 内存占用优化方法、装置及可读存储介质 | |
CN109634664A (zh) | 一种cpu给硬件电路下发命令描述符的方法及装置 | |
CN109871408A (zh) | 一种多类型数据库适配方法、装置、电子设备及存储介质 | |
CN111694992A (zh) | 一种数据处理方法和装置 | |
CN117149681A (zh) | 轮询调度实现方法、装置、设备及计算机可读存储介质 | |
CN114078007A (zh) | 基于区块链的交易方法、装置及可读存储介质 | |
CN109324838B (zh) | 单片机程序的执行方法、执行装置及终端 | |
CN115237831B (zh) | 数据传输方法、装置、芯片、电子设备和介质 | |
CN112506503A (zh) | 一种编程方法、装置、终端设备及存储介质 | |
CN109408035B (zh) | 一种业务系统的流程配置方法、存储介质和服务器 | |
CN112947907A (zh) | 一种创建代码分支的方法 | |
CN115934082A (zh) | 页面生成方法、装置、设备、可读存储介质及程序产品 | |
CN107527228B (zh) | 一种发送电子券的方法及装置 | |
CN110399166A (zh) | ME Nonce值的保存方法、装置、设备及存储介质 | |
CN111399832B (zh) | 一种页面编辑方法及装置 | |
CN114675954A (zh) | 任务调度方法及装置 | |
CN112416444A (zh) | 一种板卡切换控制方法、装置、设备及介质 | |
CN115629678B (zh) | 一种触摸信息的处理方法、装置、设备及存储介质 | |
CN112445390B (zh) | 子菜单选择方法、装置及终端设备 | |
CN110929957A (zh) | 一种用于综合能源系统的优化方法及装置 | |
WO2018094937A1 (zh) | 一种嵌入式软件快速升级的方法及嵌入式设备 | |
CN115617732B (zh) | Apb总线结构、片上系统、车辆及访问方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |