CN107770024A - 总线周期扫描表的生成方法和装置 - Google Patents
总线周期扫描表的生成方法和装置 Download PDFInfo
- Publication number
- CN107770024A CN107770024A CN201710819746.9A CN201710819746A CN107770024A CN 107770024 A CN107770024 A CN 107770024A CN 201710819746 A CN201710819746 A CN 201710819746A CN 107770024 A CN107770024 A CN 107770024A
- Authority
- CN
- China
- Prior art keywords
- cycle
- data
- basic cycle
- port
- basic
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/403—Bus networks with centralised control, e.g. polling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40078—Bus configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40143—Bus networks involving priority mechanisms
- H04L12/4015—Bus networks involving priority mechanisms by scheduling the transmission of messages at the communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40267—Bus for use in transportation systems
- H04L2012/40293—Bus for use in transportation systems the transportation system being a train
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明公开了一种总线周期扫描表的生成方法和装置。其中,该方法包括:获取当前待填入第一基本周期中的第一周期数据,其中,第一基本周期为宏周期中的任意一个基本周期;判断第一基本周期是否达到预设负载条件;在第一基本周期达到预设负载条件的情况下,将第一周期数据填入第二基本周期,其中,第二基本周期为第一基本周期的下一个基本周期;重复执行上述三个步骤,直到所有的周期数据均被填入宏周期中,并生成第一总线周期扫描表。本发明解决了现有的周期扫描表采用逐步填空的方法发送周期数据导致周期扫描表的整体均匀度较差的技术问题。
Description
技术领域
本发明涉及列车通信领域,具体而言,涉及一种总线周期扫描表的生成方法和装置。
背景技术
在列车通信网络中,周期信息传输的实时能力依赖于周期扫描表,周期扫描表是MVB(Multifunction Vehicle Bus,总线管理器)主设备用来管理总线上所有周期信息通信的轮询表,周期扫描表的规模通常由总线上所有周期信息特征周期的HCF(Highest CommonFactor,最大公约数)/LCM(Lowest Common Multiple,最小公倍数)决定。HCF的值对应周期扫描表的基本周期,LCM的值为周期扫描表的宏周期。周期扫描表给出了一个宏周期内所有周期信息的发送先后顺序,按照这个顺序,一个宏周期接着一个宏周期,最终实现了MVB总线上所有周期信息的轮询调度,保证了整个系统都正常运行。
MVB总线的通信带宽既要分配给周期信息以完成信息通信,也要为非周期传输提供足够多的时间,因而,要求生成的周期扫描表能使得所有周期信息在各个基本周期中均匀分布,以最大限度为突发的消息事件提供充足的带宽。
目前,列车总线周期扫描表大多通过逐步填空法来产生,即将所有的周期数据逐一填入基本周期中,直至当前基本周期中的周期数据的时间所占当前基本周期时间的比例达到IEC61375标准中所规定的比例,再将接下来的周期数据逐一填入下一个基本中期中,重复上面的步骤,直至所有的周期数据填完。这种方法会造成周期扫描表的前半部分的基本周期负载率过高,后半部分的基本周期负载率很多为0%的情况,形成的周期扫描表的整体均匀度较差。
针对上述现有的周期扫描表采用逐步填空的方法发送周期数据导致周期扫描表的整体均匀度较差的技术问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种总线周期扫描表的生成方法和装置,以至少解决现有的周期扫描表采用逐步填空的方法发送周期数据导致周期扫描表的整体均匀度较差的技术问题。
根据本发明实施例的一个方面,提供了一种总线周期扫描表的生成方法,包括:获取当前待填入第一基本周期中的第一周期数据,其中,第一基本周期为宏周期中的任意一个基本周期;判断第一基本周期是否达到预设负载条件;在第一基本周期达到预设负载条件的情况下,将第一周期数据填入第二基本周期,其中,第二基本周期为第一基本周期的下一个基本周期;重复执行上述三个步骤,直到宏周期中所有基本周期的预设端口均被填满,并生成第一总线周期扫描表。
根据本发明实施例的另一方面,还提供了一种总线周期扫描表的生成装置,包括:第一获取模块,用于获取当前待填入第一基本周期中的第一周期数据,其中,第一基本周期为宏周期中的任意一个基本周期;判断模块,用于判断第一基本周期是否达到预设负载条件;第一处理模块,用于在第一基本周期达到预设负载条件的情况下,将第一周期数据填入第二基本周期,其中,第二基本周期为第一基本周期的下一个基本周期;第一生成模块,用于重复执行上述第一获取模块、判断模块和第一处理模块的所执行的步骤,直到宏周期中所有基本周期的预设端口均被填满,并生成第一总线周期扫描表。
根据本发明实施例的另一方面,还提供了一种存储介质,其特征在于,存储介质包括存储的程序,其中,程序执行上述的总线周期扫描表的生成方法。
根据本发明实施例的另一方面,还提供了处理器,其特征在于,处理器用于运行程序,其中,程序运行时执行上述的总线周期扫描表的生成方法。
在本发明实施例中,通过获取当前待填入第一基本周期中的第一周期数据,其中,第一基本周期为宏周期中的任意一个基本周期;判断第一基本周期是否达到预设负载条件;在第一基本周期达到预设负载条件的情况下,将第一周期数据填入第二基本周期,其中,第二基本周期为第一基本周期的下一个基本周期;重复执行上述三个步骤,直到所有周期数据均填入宏周期中,并生成第一总线周期扫描表,达到了使得周期扫描表中每个基本周期传输的周期数据都满足预设负载条件的目的,从而实现了提高周期扫描表中各个基本周期的负载均匀度的技术效果,进而解决了现有的周期扫描表采用逐步填空的方法发送周期数据导致周期扫描表的整体均匀度较差的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种总线周期扫描表的生成方法流程图;
图2是根据本发明实施例的一种可选的包含8个循环的宏循环的简化结构示意图;
图3是根据本发明实施例的一种可选的总线周期扫描表的生成方法流程图;
图4是根据本发明实施例的一种可选的总线周期扫描表的生成方法流程图;
图5是根据本发明实施例的一种优选的总线周期扫描算法流程图;以及
图6是根据本发明实施例的一种总线周期扫描表的生成装置示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:
逐步填空法,是指将所有的周期数据逐一填入基本周期中,直至当前基本周期中的周期数据的时间所占当前基本周期时间的比例达到IEC61375标准中所规定的比例,再将接下来的周期数据逐一填入下一个基本中期中,重复上面的步骤,直至所有的周期数据填完。
实施例1
根据本发明实施例,提供了一种总线周期扫描表的生成方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的一种总线周期扫描表的生成方法流程图,如图1所示,该方法包括如下步骤:
步骤S102,获取当前待填入第一基本周期中的第一周期数据,其中,第一基本周期为宏周期中的任意一个基本周期。
需要说明的是,MVB(Multifunction Vehicle BUS)总线管理器需要按照周期扫描表来进行周期轮询,周期扫描表是周期数据通信时调度的依据,因此,配置好周期扫描表可以更高效地传输数据。国际电工委员会标准IEC61375-1中构成周期扫描表的基本规则,确定了生成周期扫描表的算法流程,具体地,IEC61375-1给出的链路监视接口规定的周期扫描表的格式的基本规则为:
(1)将周期数据通过其特征周期T_ip进行分类;
(2)一个循环将具有相同特征周期的的周期数据编成一组,其组名用其特征周期为基本周期的倍数表示,比如基本周期为1ms的情况下,Cycle_2表示每2ms查询一次;
(3)一个宏循环由一个宏周期内的所有循环组成,其持续时间如下:
当基本周期T_ip为1ms的时候,宏循环为1024个基本周期;
当基本周期T_ip为2ms的时候,宏循环为512个基本周期;
(4)基本周期编号BP(j),其中j=(0,…,macro-1),BP(0)为宏循环的第一个基本周期,BP(macro-1)为宏循环的最后一个基本周期;
(5)一个轮回定义为宏循环的数据,在其之后必须发生主权的转移。在每一个宏循环之后链路监视接口命令可以使一个轮回终止;
(6)一个循环可以分为由若干个由多个基本周期组成的子循环,Cycle_n有n个子循环,比如Cycle_16表示有16个子循环,其中的某些或者全部子循环为空。一个子循环由其索引定义,如Cycle_3.1表示Cycle_3的第二个子循环;
(7)保留每个宏周期的最后一个偶发相,是为了主权的转移,即使在此宏循环中并没有用于主权的转移。
根据上述规则,可以得到完整的周期扫描表,图2示出了一个包含8个循环的宏循环的简化结构,如图2所示,该周期扫描表中包括4个循环列表,每个对应循环1、2、4、8;其中,子循环1在每个周期都出现,子循环2.0和2.1,子循环4.0、4.1(空)、4.2和4.3(空),除了8.1外,子循环8.0-8.7均为空。(Tspo为偶发时间)
作为一种可选的实施例,上述第一基本周期可以是当前待填入周期数据的宏周期中的任意一个基本周期,由于一个MVB网段上可能有多个周期数据参与通信,这些周期数据要写入到每个基本周期中,在将待填入基本周期的周期数据(即上述第一周期数据)写入基本周期(即上述第一基本周期)时,为了保证生成的周期扫描表中各个基本周期负载的均匀度,不直接将周期数据写入基本周期,而是首先获取当前待填入基本周期的周期数据,然后判断当前待填入基本周期的周期数据是否符合写入条件。
步骤S104,判断第一基本周期是否达到预设负载条件。
作为一种可选的实施例,上述预设负载条件可以是预先为基本周期设定的负载量,例如,可以是基本周期内传输的周期数据占基本周期的时间比例,该时间比例根据具体应用场景进行设定为不同的值,例如,50%-100%中的任意一个值,优选地,可以是60%、65%等。在获取到当前待填入第一基本周期的周期数据后,判断该第一基本周期的负载量是否达到预设负载条件,如果该第一基本周期的负载量已经达到该基本周期的预设负载条件,则将当前待填入基本周期的周期数据(即第一周期数据)填入到该基本周期的下一个基本周期;反之,如果该第一基本周期的负载量未达到该基本周期的预设负载条件,则将当前待填入基本周期的周期数据(即第一周期数据)填入到该基本周期。
需要说明的是,在判断第一基本周期是否达到预设负载条件时,需要考虑该第一基本周期中已经填入的周期数据,也要考虑当前待填入该基本周期的周期数据。可选地,上述预设负载条件可以包括如下至少之一:第一基本周期中已填入的第二周期数据的时间与第一周期数据的时间之和占第一基本周期的时间比例超过预设比例、第一基本周期中已填入的第二周期数据的端口数加上量与第一周期数据的端口数量之和后的端口数量超过第一基本周期的预设端口数量。
容易注意的是,在基本周期中每填入一个周期数据,都需要增加一个端口来传输该周期数据,因而,在将第一周期数据填入第一基本周期时,需要判断第一基本周期中即将填入的端口与第一基本周期已有端口的端口数量之和是否超过第一基本周期的预设端口数量。例如,第一基本周期的预设端口数量为3,则第一基本周期最多可以有3个端口来传输周期数据,如果第一基本周期中已填入的第二周期数据占用的端口已经达到3个,如果将第一周期数据填入第一基本周期,则需要4个端口,已经超过第一基本周期的预设端口数量,因而,需要将第一周期数据填入到下一个基本周期(即第二基本周期)。
作为一种可选的实施方案,如果第一基本周期中已填入的第二周期数据的时间与第一周期数据的时间之和占第一基本周期的时间比例超过预设比例,则将当前待填入该基本周期的周期数据填入到该基本周期的下一个基本周期;反之,如果第一基本周期中已填入的第二周期数据的时间与第一周期数据的时间之和占第一基本周期的时间比例未超过预设比例,则将当前待填入该基本周期的周期数据填入到该基本周期。
作为另一种可选的实施方案,如果第一基本周期中已填入的第二周期数据的端口数量加上第一周期数据的端口后的端口数量超过第一基本周期的预设端口数量,则将当前待填入该基本周期的周期数据填入到该基本周期的下一个基本周期;反之,如果第一基本周期中已填入的第二周期数据的端口数加上第一周期数据的端口后超过第一基本周期的预设端口数量,则将当前待填入该基本周期的周期数据填入到该基本周期。
可选地,上述预设比例和预设端口数量的值均可以根据实际情况进行设置,例如,上述预设比例的值可以选用50%、55%、60%、65%等,上述预设端口数量可以3、4、5等值。
步骤S106,在第一基本周期达到预设负载条件的情况下,将第一周期数据填入第二基本周期,其中,第二基本周期为第一基本周期的下一个基本周期。
具体地,在上述步骤中,在获取到当前待填入基本周期的周期数据后,如果根据当前待填入基本周期的周期数据确定第一基本周期已经达到预设负载条件,则将当前待填入第一基本周期的第一周期数据填入该第一基本周期的下一个基本周期(即第二基本周期)。
步骤S108,重复执行上述三个步骤,直到所有周期数据都已填入宏周期中,并生成第一总线周期扫描表。
具体地,在上述步骤中,重复执行上述步骤S102至S106,直到将周期扫描表中所有周期数据都已填入宏周期中,生成第一总线周期扫描表。
由上可知,在本申请上述实施例中,在将周期数据写入基本周期的过程中,首先获取当前待填入基本周期(即上述第一基本周期)的周期数据(即上述第一周期数据),并根据当前待填入基本周期的周期数据判断该基本周期是否达到预设负载条件,并在基本周期已经达到预设负载条件的情况下,将当前在待填入基本周期的周期数据写入宏周期中该基本周期的下一个基本周期,直到所有周期数据都已填入宏周期中,生成第一总线周期扫描表。容易注意的是,基本周期的预设负载条件可以根据具体应用场景而设定的一个预设条件,该预设负载条件可以确保周期扫描表中各个基本周期传输的周期数据的均匀度比较好。
通过本申请上述实施例公开的方案,达到了使得周期扫描表中每个基本周期传输的周期数据都满足预设负载条件的目的,从而实现了提高周期扫描表中各个基本周期的负载均匀度的技术效果,进而解决了现有的周期扫描表采用逐步填空的方法发送周期数据导致周期扫描表的整体均匀度较差的技术问题。
在一种可选的实施例中,如图3所示,获取当前待填入第一基本周期中的第一周期数据,包括:
步骤S302,获取总线上至少一个端口的设备信息,其中,设备信息至少包括:端口的特征周期、端口在特征周期内传输的端口数据的数据长度;
步骤S304,按照端口的特征周期,将至少一个端口的端口数据进行分类,并建立对应的端口分类表;
步骤S306,将分类后的属于同一特征周期的端口数据按照数据长度进行排序;
步骤S308,按照排序后的特征周期最小的端口数据作为第一周期数据。
具体地,在上述实施例中,在MVB总线上,从控制设备可以通过一个或多个端口与主控制设备通信,因而,主控制设备可以首先获取MVB总线上的至少一个设备的设备信息,该设备信息包括但不限于至少一个端口的特征周期、端口在一个特征周期内传输的端口数据的数据长度。由于主控制设备调度不同端口的特征周期不同,不同端口上传输数据的长度也不同,因而可以按照端口的特征周期将端口进行分类,将相同特征周期的端口分为一类,并根据分类后的端口建立端口分类表,将分类后的属于同一特征周期的端口数据按照传输的数据长度进行排序,从当前最小的特征周期的数据开始,将数据填入到一个基本周期中。
在一种可选的实施例中,在生成第一总线周期扫描表之后,上述方法还可以包括:
步骤S110,计算第一总线周期扫描表的第一均匀度。
具体地,在上述实施例中,当根据基本周期的预设负载条件将周期数据填入到每个基本周期,并生成总线周期扫描表(第一总线周期扫描表)后,计算生成的总线周期扫描表的均匀度。
由于基本周期上的预设端口数量不同,生成的周期扫描表的均匀度也不同,如果预设端口数量过多,可能导致周期扫描表中前半部分的基本周期中有传输的周期数据,而后半部分的基本周期中没有传输的周期数据;如果预设端口数量过少,可能导致周期扫描表的一个宏周期结束,没有传输完所有的周期数据而导致部分周期数据丢失。因而,一种可选的实施例中,如图4所示,在计算第一总线周期扫描表的第一均匀度之后,方法还包括:
步骤S402,更新预设比例和/或预设端口数量的值;
步骤S404,根据更新后的预设比例和/或更新后的预设端口数量,生成第二总线周期扫描表,并计算第二总线周期扫描表的第二均匀度;
步骤S406,比较第一均匀度和第二均匀度,得到比较结果;
步骤S408,根据比较结果确定总线的总线周期扫描表。
具体地,在上述实施例中,通过更新基本周期的预设端口数量,或者更新该基本周期的负载率(即上述预设比例),并在更新基本周期的预设端口数量或负载率后,基于上述步骤S102至S108的步骤,生成第二总线周期扫描表,并计算第二总线周期扫描表的第二均匀度,比较第一均匀度和第二均匀度,从而可以从第一总线周期扫描表和第二总线周期扫描表中选择出均匀度较好的总线周期扫表。例如,在预设比例为50%的情况下,预设端口数量分别采用3、4、5,可以计算出三个均匀度,进而可以从三个均匀度中选择一个均匀度最好的总店周期扫描表。
通过多次更新基本周期的预设端口数量,可以得到多个总线周期扫表,根据每个总线周期扫描表的均匀度,通过比较,可以选择出均匀度最好的总线周期扫描表。
一种可选的实施例中,可以通过如下计算公式计算第一均匀度和第二均匀度:
其中,式中N为基本周期个数;n为端口总数;Tbp为基本周期;为周期数据报文在每个周期所占的平均时间;表示第i个基本周期中,周期数据报文所占用的总时间。均匀度越小,表示周期数据在宏周期内的分布越均匀。
为了提高多功能车辆总线周期扫描表的整体均匀度,尽可能满足IEC61375标准中所提出的要求,作为一种优选的实施例,图5是根据本发明实施例的一种优选的总线周期扫描算法流程图,通过该方法实现总线上的端口平衡均匀的分布在每个基本周期中,避免出现基本周期负载率过高的情况。如图5所示,根据IEC61375标准所给出的建立周期扫描表的基本规则,将周期扫描表的均匀度加入约束条件,可以得出以下周期扫描表算法:
(1)首先将MVB总线上的设备的信息,包括其名称、轮询周期、数据长度等信息导入到所设定好的数组中;
(2)将特征周期相同的周期数据进行分类,建立对应的端口分类表;
(3)将同一个特征周期的周期数据按照不同的数据长度从小到大进行排序,并统计好其
数量,记录在分类表中;
(4)从当前最小的特征周期的数据开始,将数据填入一个基本周期中;
(5)待填入下一个周期数据前,判断当前基本周期所有的周期数据的时间和当前填入的周期数据的时间之和是否超过基本周期的65%(根据需要设定)或者超出该基本周期的最大端口数据量k(根据经验设定),超过则跳到下一个周期,重新进入步骤(5);否则查询所有端口是否都已经填满,如果填满,则此次周期扫描表完成进入步骤(6),如果没有填满,重新进入步骤(4);
(6)计算并记录整个周期扫描表的均匀度,同时记录本次周期扫描表;
(7)更换步骤(5)中的k值,重复步骤(4)、(5)、(6),计算完所有k后,进入步骤(8);
(8)均匀度最佳的周期扫描表即为所需的列车多功能车辆总线周期扫描表;
通过以上步骤(1)至(8),即可根据列车端口数据和特征周期,生成均匀度较好的周期扫描表,提高周期扫描表的可靠性和可用性,避免出现周期负载率过高和大量出现0%的情况。
实施例2
根据本发明实施例,还提供了一种用于实现上述总线周期扫描表的生成方法的装置实施例,图6是根据本发明实施例的一种总线周期扫描表的生成装置示意图,如图6所示,该装置包括:第一获取模块601、判断模块603、第一处理模块605和第一生成模块607。
其中,第一获取模块601,用于获取当前待填入第一基本周期中的第一周期数据,其中,第一基本周期为宏周期中的任意一个基本周期;
判断模块603,用于判断第一基本周期是否达到预设负载条件;
第一处理模块605,用于在第一基本周期达到预设负载条件的情况下,将第一周期数据填入第二基本周期,其中,第二基本周期为第一基本周期的下一个基本周期;
第一生成模块607,用于重复执行上述第一获取模块、判断模块和第一处理模块的所执行的步骤,直到所有的周期数据均被填入宏周期中,并生成第一总线周期扫描表。
此处需要说明的是,上述第一获取模块601、判断模块603、第一处理模块605和第一生成模块607对应于实施例1中的步骤S102至S108,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。
由上可知,在本申请上述实施例中,在将周期数据写入基本周期的过程中,首先通过第一获取模块601获取当前待填入基本周期(即上述第一基本周期)的周期数据(即上述第一周期数据),并通过判断模块603根据当前待填入基本周期的周期数据判断该基本周期是否达到预设负载条件,通过第一处理模块605在基本周期已经达到预设负载条件的情况下,将当前在待填入基本周期的周期数据写入宏周期中该基本周期的下一个基本周期,第一生成模块607通过重复执行上述第一获取模块601、判断模块603、第一处理模块605的所执行的步骤,直到所有的周期数据均被填入宏周期中,生成第一总线周期扫描表。容易注意的是,基本周期的预设负载条件可以根据具体应用场景而设定的一个预设条件,该预设负载条件可以确保周期扫描表中各个基本周期传输的周期数据的均匀度比较好。
通过本申请上述实施例公开的方案,达到了使得周期扫描表中每个基本周期传输的周期数据都满足预设负载条件的目的,从而实现了提高周期扫描表中各个基本周期的负载均匀度的技术效果,进而解决了现有的周期扫描表采用逐步填空的方法发送周期数据导致周期扫描表的整体均匀度较差的技术问题。
在一种可选的实施例中,上述预设负载条件包括如下至少之一:第一基本周期中已填入的第二周期数据的时间与第一周期数据的时间之和占第一基本周期的时间比例超过预设比例、第一基本周期中已填入的第二周期数据的端口数加上第一周期数据的端口后的端口数量超过第一基本周期的预设端口数量。
在一种可选的实施例中,上述第一获取模块601包括:第二获取模块,用于获取总线上至少一个端口的设备信息,其中,设备信息至少包括:端口的特征周期、端口在特征周期内传输的端口数据的数据长度;分类模块,用于按照端口的特征周期,将至少一个端口的端口数据进行分类,并建立对应的端口分类表;排序模块,用于将分类后的属于同一特征周期的端口数据按照数据长度进行排序;第二处理模块,用于按照排序后的特征周期最小的端口数据作为第一周期数据。
此处需要说明的是,上述第二获取模块、分类模块、排序模块和第二处理模块对应于实施例1中的步骤S302至S308,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。
在一种可选的实施例中,上述装置还包括:计算模块,用于计算第一总线周期扫描表的第一均匀度。
此处需要说明的是,上述计算模块对应于实施例1中的步骤S110,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。
在一种可选的实施例中,上述装置还包括:更新模块,用于更新预设比例和/或预设端口数量的值;第二生成模块,用于根据更新后的预设比例和/或更新后的预设端口数量,生成第二总线周期扫描表,并计算第二总线周期扫描表的第二均匀度;比较模块,用于比较第一均匀度和第二均匀度,得到比较结果;确定模块,用于根据比较结果确定总线的总线周期扫描表。
此处需要说明的是,上述更新模块、第二生成模块、比较模块和确定模块对应于实施例1中的步骤S402至S408,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。
实施例3
根据本发明实施例,还提供了一种存储介质,存储介质包括存储的程序,其中,程序执行实施例1中任意一项的总线周期扫描表的生成方法。
实施例4
根据本发明实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行实施例1中任意一项的总线周期扫描表的生成方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (12)
1.一种总线周期扫描表的生成方法,其特征在于,包括:
获取当前待填入第一基本周期中的第一周期数据,其中,所述第一基本周期为宏周期中的任意一个基本周期;
判断所述第一基本周期是否达到预设负载条件;
在所述第一基本周期达到所述预设负载条件的情况下,将所述第一周期数据填入第二基本周期,其中,所述第二基本周期为所述第一基本周期的下一个基本周期;
重复执行上述三个步骤,直到所有的周期数据均被填入所述宏周期中,并生成第一总线周期扫描表。
2.根据权利要求1所述的生成方法,其特征在于,所述预设负载条件包括如下至少之一:所述第一基本周期中已填入的第二周期数据的时间与所述第一周期数据的时间之和占所述第一基本周期的时间比例超过预设比例、所述第一基本周期中已填入的第二周期数据的端口数加上所述第一周期数据的端口后的端口数量超过所述第一基本周期的预设端口数量。
3.根据权利要求2所述的生成方法,其特征在于,获取当前待填入第一基本周期中的第一周期数据,包括:
获取总线上至少一个端口的设备信息,其中,所述设备信息至少包括:所述端口的特征周期、所述端口在所述特征周期内传输的端口数据的数据长度;
按照所述端口的特征周期,将所述至少一个端口的端口数据进行分类,并建立对应的端口分类表;
将分类后的属于同一特征周期的端口数据按照数据长度进行排序;
按照排序后的特征周期最小的端口数据作为所述第一周期数据。
4.根据权利要求2所述的生成方法,其特征在于,在生成所述第一总线周期扫描表之后,所述方法还包括:
计算所述第一总线周期扫描表的第一均匀度。
5.根据权利要求4所述的生成方法,其特征在于,在计算所述第一总线周期扫描表的第一均匀度之后,所述方法还包括:
更新所述预设比例和/或所述预设端口数量的值;
根据更新后的预设比例和/或更新后的预设端口数量,生成第二总线周期扫描表,并计算所述第二总线周期扫描表的第二均匀度;
比较所述第一均匀度和所述第二均匀度,得到比较结果;
根据所述比较结果确定所述总线的总线周期扫描表。
6.一种总线周期扫描表的生成装置,其特征在于,包括:
第一获取模块,用于获取当前待填入第一基本周期中的第一周期数据,其中,所述第一基本周期为宏周期中的任意一个基本周期;
判断模块,用于判断所述第一基本周期是否达到预设负载条件;
第一处理模块,用于在所述第一基本周期达到所述预设负载条件的情况下,将所述第一周期数据填入第二基本周期,其中,所述第二基本周期为所述第一基本周期的下一个基本周期;
第一生成模块,用于重复执行上述第一获取模块、判断模块和第一处理模块的所执行的步骤,直到所述宏周期中所有周期数据均被填入宏周期中,并生成第一总线周期扫描表。
7.根据权利要求6所述的生成装置,其特征在于,所述预设负载条件包括如下至少之一:所述第一基本周期中已填入的第二周期数据的时间与所述第一周期数据的时间之和占所述第一基本周期的时间比例超过预设比例、所述第一基本周期中已填入的第二周期数据的端口数量数加上与所述第一周期数据的端口后的端口数量超过所述第一基本周期的预设端口数量。
8.根据权利要求7所述的生成装置,其特征在于,获取当前待填入第一基本周期中的第一周期数据,包括:
第二获取模块,用于获取总线上至少一个端口的设备信息,其中,所述设备信息至少包括:所述端口的特征周期、所述端口在所述特征周期内传输的端口数据的数据长度;
分类模块,用于按照所述端口的特征周期,将所述至少一个端口的端口数据进行分类,并建立对应的端口分类表;
排序模块,用于将分类后的属于同一特征周期的端口数据按照数据长度进行排序;
第二处理模块,用于按照排序后的特征周期最小的端口数据作为所述第一周期数据。
9.根据权利要求7所述的生成装置,其特征在于,所述装置还包括:
计算模块,用于计算所述第一总线周期扫描表的第一均匀度。
10.根据权利要求9所述的生成装置,其特征在于,所述装置还包括:
更新模块,用于更新所述预设比例和/或所述预设端口数量的值;
第二生成模块,用于根据更新后的预设比例和/或更新后的预设端口数量,生成第二总线周期扫描表,并计算所述第二总线周期扫描表的第二均匀度;
比较模块,用于比较所述第一均匀度和所述第二均匀度,得到比较结果;
确定模块,用于根据所述比较结果确定所述总线的总线周期扫描表。
11.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序执行权利要求1至5中任意一项所述的总线周期扫描表的生成方法。
12.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至5中任意一项所述的总线周期扫描表的生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710819746.9A CN107770024B (zh) | 2017-09-12 | 2017-09-12 | 总线周期扫描表的生成方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710819746.9A CN107770024B (zh) | 2017-09-12 | 2017-09-12 | 总线周期扫描表的生成方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107770024A true CN107770024A (zh) | 2018-03-06 |
CN107770024B CN107770024B (zh) | 2021-01-19 |
Family
ID=61265727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710819746.9A Active CN107770024B (zh) | 2017-09-12 | 2017-09-12 | 总线周期扫描表的生成方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107770024B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112231084A (zh) * | 2020-10-20 | 2021-01-15 | 苏州连世创智科技有限公司 | 一种读取通讯总线宿端口数据的调度方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106383744A (zh) * | 2016-09-28 | 2017-02-08 | 北京润科通用技术有限公司 | 一种总线中周期性消息的调度方法以及调度系统 |
-
2017
- 2017-09-12 CN CN201710819746.9A patent/CN107770024B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106383744A (zh) * | 2016-09-28 | 2017-02-08 | 北京润科通用技术有限公司 | 一种总线中周期性消息的调度方法以及调度系统 |
Non-Patent Citations (2)
Title |
---|
彭皓: "多功能车辆总线周期扫描表的优化设计与实现", 《中国优秀硕士学位论文全文数据库-工程科技Ⅱ辑》 * |
朱琴跃: ""列车通信网络实时性理论与方法研究"", 《中国博士学位论文全文数据库-工程科技Ⅱ辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112231084A (zh) * | 2020-10-20 | 2021-01-15 | 苏州连世创智科技有限公司 | 一种读取通讯总线宿端口数据的调度方法 |
CN112231084B (zh) * | 2020-10-20 | 2024-04-09 | 苏州连世创智科技有限公司 | 一种读取通讯总线宿端口数据的调度方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107770024B (zh) | 2021-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105900064B (zh) | 调度数据流任务的方法和装置 | |
CN110162388A (zh) | 一种任务调度方法、系统及终端设备 | |
CN106209682A (zh) | 业务调度方法、装置和系统 | |
CN104243405B (zh) | 一种请求处理方法、装置及系统 | |
CN111163238B (zh) | 一种在线客服系统的智能调度方法 | |
CN110083528A (zh) | 测试任务的分配方法、装置、计算机设备及存储介质 | |
CN103701934A (zh) | 一种资源优化调度方法及虚拟机宿主机优化选择方法 | |
CN106793133A (zh) | 一种电力无线通信系统中保障多业务QoS的调度方法 | |
CN110392360A (zh) | 一种可用资源上报方法及装置 | |
CN110516220A (zh) | 一种报表数据录入方法、系统及相关设备 | |
CN108055701A (zh) | 一种资源调度方法及基站 | |
CN112465615A (zh) | 账单数据的处理方法、装置及系统 | |
CN106453139A (zh) | 数据包调度的方法及装置 | |
CN106708822A (zh) | 一种文件存储方法和装置 | |
CN114330879B (zh) | 一种多维度约束的订单分配方法及系统 | |
CN107770024A (zh) | 总线周期扫描表的生成方法和装置 | |
CN108520329A (zh) | 基于经纪人画像的二手房客户精准自动分配方法及装置 | |
CN106878967A (zh) | 短信发送方法及装置 | |
CN102984717B (zh) | 系统容量的估算方法及系统 | |
CN103678537B (zh) | 基于集群的元数据修改方法、装置及节点设备 | |
CN116847126B (zh) | 一种视频解码数据传输方法及系统 | |
CN106919365A (zh) | 计算机系统中随机数的生成方法及装置 | |
CN108806071A (zh) | 自助发放机管理方法、自助发放机管理装置及电子设备 | |
CN115190441B (zh) | 一种短信分发方法及装置、电子设备、存储介质 | |
CN106844467A (zh) | 数据展示方法和装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |