一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

链路参数的配置方法、装置、设备和介质与流程

2022-10-09 14:44:54 来源:中国专利 TAG:


1.本公开涉及计算机技术领域,尤其涉及高速串行传输和芯片技术,具体涉及一种链路参数的配置方法、装置、设备、介质、程序产品和芯片。


背景技术:

2.当前,在高速数字传输系统设计中,大部分都采用高速串行传输结构进行,例如pcie(peripheral component interconnect express,高速串行计算机扩展总线标准)、sas(serial attached scsi,串行连接scsi接口)/sata(serial advanced technology attachment,串行高级技术附件)和usb 3.0(universal serial bus,通用串行总线)等。随着传输速率的提升,传输链路信号完整性问题已经成为阻碍高速串行传输链路设计的一大难题。
3.为了解决这一难题,在高速串行传输结构中普遍采用去加重和均衡技术,来补偿链路对于高低频信号不同损耗的问题。同时,为了适应不同传输链路环境的需要,采用link training(链路训练)技术来自适应调整均衡参数值。在链路出现比特bit错误时重新训练,并修正参数,从而达到修复链路错误的目的。
4.然而,上述现有技术目前仍然无法完全匹配链路传输的环境要求,从而带来链路的不稳定性,甚至出现系统设备丢失或者业务中断等严重问题。


技术实现要素:

5.本公开提供了一种链路参数的配置方法、装置、设备、介质、程序产品和芯片。
6.根据本公开的一方面,提供了一种链路参数的配置方法,包括:
7.获取经链路训练得到的目标数据通路的训练参数列表,其中,所述训练参数列表中包括多组链路参数值;
8.响应于所述目标数据通路上的误码率高于预设阈值,遍历所述训练参数列表,并从所述训练参数列表中选择第一目标链路参数值;
9.按照所述第一目标链路参数值对所述目标数据通路进行配置。
10.根据本公开的另一方面,提供了一种链路参数的配置装置,包括:
11.训练参数列表获取模块,用于获取经链路训练得到的目标数据通路的训练参数列表,其中,所述训练参数列表中包括多组链路参数值;
12.训练参数列表遍历模块,用于响应于所述目标数据通路上的误码率高于预设阈值,遍历所述训练参数列表,并从所述训练参数列表中选择第一目标链路参数值;
13.链路参数配置模块,用于按照所述第一目标链路参数值对所述目标数据通路进行配置。
14.根据本公开的另一方面,提供了一种电子设备,包括:
15.至少一个处理器;以及
16.与所述至少一个处理器通信连接的存储器;其中,
17.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开任意实施例所述的链路参数的配置方法。
18.根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使计算机执行本公开任意实施例所述的链路参数的配置方法。
19.根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本公开任意实施例所述的链路参数的配置方法。
20.根据本公开的另一方面,提供了一种芯片,包括高速串行传输系统,所述高速串行传输系统包括多条数据通路,每条数据通路对应一个接收端和一个发送端,所述接收端用于对与之对应的数据通路进行链路训练;其中,
21.所述高速串行传输系统还包括链路参数配置模块,具体用于:
22.通过任意目标数据通路的接收端获取经链路训练得到的目标数据通路的训练参数列表,其中,所述训练参数列表中包括多组链路参数值;
23.响应于所述目标数据通路上的误码率高于预设阈值,遍历所述训练参数列表,并从所述训练参数列表中选择第一目标链路参数值;
24.按照所述第一目标链路参数值对所述目标数据通路进行配置。
25.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
26.附图用于更好地理解本方案,不构成对本公开的限定。其中:
27.图1是根据本公开实施例的一种链路参数的配置方法的示意图;
28.图2是根据本公开实施例的一种链路参数的配置方法的示意图;
29.图3是根据本公开实施例的一种链路参数的配置方法的示意图;
30.图4是根据本公开实施例的一种链路参数的配置方法的示意图;
31.图5是根据本公开实施例的一种链路参数的配置方法的示意图;
32.图6是根据本公开实施例的一种链路参数的配置方法的示意图;
33.图7是根据本公开实施例的一种链路参数的配置装置的示意图;
34.图8是用来实现本公开实施例的链路参数的配置方法的电子设备的框图。
具体实施方式
35.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
36.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆
盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
37.图1是根据本公开实施例的链路参数的配置方法的流程示意图,本实施例可适用于对高速串行传输系统中的数据通路配置链路参数的情况,涉及计算机技术领域,尤其涉及高速串行传输和芯片技术。该方法可由一种链路参数的配置装置来执行,该装置采用软件和/或硬件的方式实现,优选是配置于电子设备中,例如计算机设备或移动终端等。此外,该装置还可配置于芯片中,例如语音处理芯片等。如图1所示,该方法具体包括如下:
38.s101、获取经链路训练得到的目标数据通路的训练参数列表,其中,所述训练参数列表中包括多组链路参数值。
39.通常,高速串行传输系统包括多条数据链路,每条数据链路包括多条数据通路,每条数据通路对应一个接收端和一个发送端。接收端用于接收来自外部的数据,还用于计算该数据通路的误码率,当误码率高于预设阈值,接收端还用于对与之对应的数据通路进行链路训练,以确定并调整链路参数。
40.其中,数据通路上的链路参数包括三种:该数据通路对应的发送端上用于处理信号去加重的transmitter equalization(发射均衡)单元的参数,对应的接收端上用来线性调节接收信号幅度的automatic generation control(自动发电控制)单元的参数,以及对应的接收端上的连续时间线性均衡器continuous time linear equalizer的参数。
41.在进行链路训练时,接收端会得到多组链路参数值,每一组链路参数值中包括每种链路参数的值,且不同组的链路参数值之间,同一种链路参数的值可以相同也可以不同,也即,不同组的链路参数值是每一种链路参数的不同值的组合。进行链路训练的目的就在于寻找一组最优的链路参数值以改善误码率。因此,训练参数列表中的多组链路参数值就是训练过程中所得到的链路参数候选。
42.s102、响应于目标数据通路上的误码率高于预设阈值,遍历训练参数列表,并从训练参数列表中选择第一目标链路参数值。
43.s103、按照第一目标链路参数值对目标数据通路进行配置。
44.接收端会对数据通路上的误码率进行计算和监测,当误码率高于预设阈值时,本公开实施例是遍历训练参数列表,并从训练参数列表中选择第一目标链路参数值,然后按照第一目标链路参数值对目标数据通路进行配置。例如,从训练参数列表中选择与当前使用的链路参数值不同的另一组链路参数值作为第一目标链路参数值。
45.需要说明的是,现有技术中通常是每当误码率高于阈值就重新进行链路训练,以求获取最优的链路参数值进行配置。然而,链路在短时间受到干扰导致误码率异常,但重新进行链路训练需要时间,使得数据通路不能快速响应这种短时的变化。而且,链路训练是采用短时间固定码流实现的,与实际链路传输还是存在差异,不能完全反映实际传输的随机码流情况,因此,经重新训练得到的最优解往往也不能满足当前环境下的传输要求,从而无法快速达到较好的信号传输性能。
46.而本公开实施例的技术方案,充分使用链路训练的结果,在误码率不满足阈值要求时,并不是如现有技术中那样再次进行链路训练,而是利用上一次训练得到的多组链路参数值对链路参数进行配置。这样做的目的在于,一方面,可以避免因每次进行链路训练而
导致的响应速度慢的问题,另一方面,将历史训练中获取到的参数加以利用,能够以最快的响应速度找到当前满足链路传输的参数,从而提高传输链路的稳定性和可靠性。
47.图2是根据本公开实施例的链路参数的配置方法的流程示意图,本实施例在上述实施例的基础上进一步进行优化。如图2所示,该方法具体包括如下:
48.s201、获取经链路训练得到的目标数据通路的训练参数列表,其中,所述训练参数列表中包括多组链路参数值。
49.其中,目标数据通路可以用于芯片进行高速串行数据传输。而训练参数列表则可以是通过目标数据通路的接收端提供的特定控制端口获取的。
50.s202、响应于目标数据通路上的误码率高于预设阈值,遍历训练参数列表,并从训练参数列表中选择第一目标链路参数值。
51.s203、按照第一目标链路参数值对目标数据通路进行配置。
52.s204、按照预设时间间隔监测目标数据通路上的误码率。
53.其中,所述预设时间间隔可以根据情况进行配置,本公开实施例对此不作任何限定。
54.s205、判断误码率是否超出预设阈值,如果未超出,则返回执行s204,如果超出,则执行s206。
55.s206、判断目标数据通路的训练参数列表是否全部遍历,如果判断为否,则执行s207。
56.s207、从目标数据通路的训练参数列表中选择第二目标链路参数值。
57.s208、按照第二目标链路参数值对目标数据通路进行配置,并对误码率继续进行监测。
58.具体的,由于环境等因素的影响,数据通路的误码率需要按照一定的时间间隔进行监测。接收端计算出误码率之后,判断是否超出预设阈值,如果没有超出阈值,则无需进行处理。如果超出阈值,则需要重新调整数据通路的链路参数。其中,误码率的计算方式属于现有技术,此处不再赘述。
59.经链路训练获取的训练参数列表中包括多组链路参数值,每次监测到误码率超出阈值,则可以从中选择与当前通路上使用的链路参数值不同的另一个链路参数值进行配置。本公开实施例中,在按照第一目标链路参数值对目标数据通路进行配置之后,目标数据通路则基于该第一目标链路参数值进行数据收发。当误码率再次超出阈值,则会先判断训练参数列表是否全部遍历,也即,训练参数列表中的多组链路参数值是否均已选取过,并按照该选取的链路参数值对目标数据通路进行配置过。如果判断为否,则表明还存在尚未选取并被配置过的链路参数值,于是,将该链路参数值作为第二目标链路参数值,并按照第二目标链路参数值对目标数据通路进行配置。之后,目标数据通路基于配置的第二目标链路参数值进行数据收发,并对误码率继续进行监测。同理,在后续监测过程中,如果误码率再次超出阈值,并且训练参数列表也没有全部遍历,则再次从训练参数列表中选取一个尚未被遍历的一组链路参数值即可,该过程与上述选择第二目标链路参数值的过程相似,因此不再赘述。
60.本公开实施例的技术方案,在对误码率监测的过程中,当误码率超出预设阈值,并不是如现有技术中那样再次进行链路训练,而是充分使用链路训练的结果,只要历史训练
得到的训练参数列表中的多组链路参数值没有被全部遍历,那么就从中选择一组链路参数值对数据通路进行链路参数配置。因此,本公开实施例可以避免因每次进行链路训练而导致的响应速度慢的问题,同时,将历史训练中获取到的参数加以利用,能够以最快的响应速度找到当前满足链路传输的参数,从而提高传输链路的稳定性和可靠性。
61.图3是根据本公开实施例的链路参数的配置方法的流程示意图,本实施例在上述实施例的基础上进一步进行优化。如图3所示,该方法具体包括如下:
62.s301、获取经链路训练得到的目标数据通路的训练参数列表,其中,所述训练参数列表中包括多组链路参数值。
63.s302、响应于目标数据通路上的误码率高于预设阈值,遍历训练参数列表,并从训练参数列表中选择第一目标链路参数值。
64.s303、按照第一目标链路参数值对目标数据通路进行配置。
65.s304、按照预设时间间隔监测目标数据通路上的误码率。
66.s305、判断误码率是否超出预设阈值,如果未超出,则继续监测,如果超出,则执行s306。
67.s306、判断目标数据通路的训练参数列表是否全部遍历,如果判断为是,则执行s307。
68.s307、获取目标数据通路的相邻数据通路的训练参数列表。
69.本公开实施例中,当目标数据通路的训练参数列表已全部遍历,则先判断目标数据通路是否有相邻数据通路,如果有,则获取目标数据通路的相邻数据通路的训练参数列表,以便根据相邻数据通路的训练参数列表对目标数据通路进行链路参数配置。
70.具体的,高速串行传输系统包括多条数据链路,每条数据链路包括多条数据通路,例如,一条数据链路中包括四条数据通路,分别是数据通路1-4,那么其中,数据通路1与数据通路2互为相邻数据通路。同理,数据通路1、4各有一条相邻数据通路,数据通路2、3各有两条相邻数据通路。而在实际传输链路中,对于存在多条数据通路的高速串行传输系统,一般要求相同数据链路中同方向的数据通路的走线布局都极为相似,这些数据通路都具有相同的链路环境。因此,当前目标数据通路的链路参数很大程度上可以采用与之相邻的数据通路的链路参数值,并且也能达到较好的链路传输效果。因此,本公开实施例利用相邻数据通路的历史训练结果来配置当前数据通路的链路参数,可以在较快响应的同时,达到快速提高传输链路的稳定性和可靠性的目的。
71.s308、判断相邻数据通路的训练参数列表是否全部遍历,如果判断为否,则执行s309、s310后,返回执行s304,如果判断为是,则执行s311。
72.s309、从相邻数据通路的训练参数列表中选择第三目标链路参数值。
73.s310、按照第三目标链路参数值对目标数据通路进行配置,并对误码率继续进行监测。
74.s311、对目标数据通路再次进行链路训练。
75.如果相邻数据通路的训练参数列表没有全部遍历,则可以从中选择第三目标链路参数值,如果已经全部遍历,则对目标数据通路再次进行链路训练,而再次进行链路训练可以作为一种兜底方案,确保可以确定出满足链路传输稳定性的链路参数值。其中,在按照第三目标链路参数值对目标数据通路进行配置之后,目标数据通路则基于该第三目标链路参
数值进行数据收发,之后继续对误码率进行检测,如果再次出现误码率超出阈值的情况,则再次从相邻数据通路的训练参数列表中选择另一组链路参数值进行配置,直到相邻数据通路的训练参数列表全部遍历,则执行链路训练。需要说明的是,在重新进行链路训练后,本公开实施例可以更新目标数据通路的训练参数列表,然后基于更新后的训练参数列表,按照本公开实施例的方法重复执行。
76.本公开实施例的技术方案,充分使用每次链路训练结果,在误码率不满足阈值要求时,并不是如现有技术中那样再次进行链路训练,而是利用上一次训练得到的训练参数列表中多组链路参数值对数据通路的链路参数进行配置。并且进一步的,当该训练参数列表都遍历过,且误码率仍然不满足要求时,还会根据相邻数据通路的训练参数列表进行链路参数的配置。这样做的目的在于,一方面,可以避免因每次进行链路训练而导致的响应速度慢的问题,另一方面,将历史训练中获取到的参数加以利用,能够以最快的响应速度找到当前满足链路传输的参数,从而提高传输链路的稳定性和可靠性。最后,还提供了兜底方案,在两种方式都无法满足对误码率要求时,则重新进行链路训练,从而进一步确保高速传输链路的稳定性和可靠性。
77.图4是根据本公开实施例的链路参数的配置方法的流程示意图,本实施例在上述实施例的基础上进一步进行优化。如图4所示,该方法具体包括如下:
78.s401、获取经链路训练得到的目标数据通路的训练参数列表,其中,训练参数列表包括多个品质因数值以及各品质因数值对应的链路参数值,所述品质因数值用于标定目标数据通路上传输数据的质量,各品质因数值是根据与之对应的链路参数值计算得到的。
79.具体的,在链路训练过程中,目标数据通路对应的接收端通常是根据不同的链路参数值的组合来计算品质因数值,利用品质因数值来衡量目标数据通路上传输数据的质量。因此,可以获取到多个品质因数值以及各品质因数值对应的链路参数值。
80.s402、响应于目标数据通路上的误码率高于预设阈值,遍历所述训练参数列表,并从训练参数列表中确定目标品质因数值。
81.s403、将训练参数列表中与目标品质因数值对应的链路参数值作为第一目标链路参数值。
82.现有技术中,通常是经过链路训练选择最大的品质因数值对应的一组链路参数值进行配置。然而,计算品质因数值是基于当前环境计算得到的,具有一定的局限性,也即,链路训练得到的最大的品质因数值未必适用于变化后的环境,从而使得依然无法达到最佳的信号传输性能。而训练参数列表中的多组链路参数值都能很大程度上适合当前链路传输。因此,在使用最大品质因数值对应的一组链路参数值进行数据传输时,若出现误码率超出阈值的情况,本公开实施例首先遍历训练参数列表,并从训练参数列表中确定目标品质因数值,将训练参数列表中与目标品质因数值对应的链路参数值作为第一目标链路参数值,以便以最快的响应速度找到当前满足链路传输的参数,从而提高传输链路的稳定性和可靠性。
83.s404、按照第一目标链路参数值对目标数据通路进行配置。
84.本公开实施例的技术方案,在对误码率监测的过程中,当误码率超出预设阈值,并不是如现有技术中那样再次进行链路训练,而是充分使用链路训练的结果,从训练参数列表中选择一组链路参数值对数据通路进行链路参数配置。因此,本公开实施例可以避免因
每次进行链路训练而导致的响应速度慢的问题,同时,将历史训练中获取到的参数加以利用,能够以最快的响应速度找到当前满足链路传输的参数,从而提高传输链路的稳定性和可靠性。
85.图5是根据本公开实施例的链路参数的配置方法的流程示意图,本实施例在上述实施例的基础上进一步进行优化。如图5所示,该方法具体包括如下:
86.s501、获取经链路训练得到的目标数据通路的训练参数列表,其中,训练参数列表包括多个品质因数值以及各品质因数值对应的链路参数值,所述品质因数值用于标定目标数据通路上传输数据的质量,各品质因数值是根据与之对应的链路参数值计算得到的。
87.s502、响应于目标数据通路上的误码率高于预设阈值,确定目标数据通路上配置的当前链路参数值对应的当前品质因数值。
88.s503、将训练参数列表中的各品质因数值按降序排序。
89.s504、按照降序排序的顺序遍历训练参数列表,并将训练参数列表中小于当前品质因数值的下一个品质因数值作为目标品质因数值。
90.具体的,现有技术中通常是通过链路训练得到最大品质因数值,然后将该最大品质因数值对应的链路参数对数据通路进行配置。本公开实施例中,可以对训练参数列表中的各品质因数值按降序排序,然后在误码率高于预设阈值时,按照降序排序的顺序遍历训练参数列表,并将训练参数列表中小于当前品质因数值的下一个品质因数值作为目标品质因数值。其中,小于当前品质因数值的下一个品质因数值可以作为次优品质因数值,该次优品质因数值对应的链路参数值即为次优链路参数值。
91.s505、将训练参数列表中与目标品质因数值对应的链路参数值作为第一目标链路参数值。
92.s506、按照第一目标链路参数值对目标数据通路进行配置。
93.此外,在一种实施方式中,假设训练参数列表中包括5个品质因数值,降序排序后分别为品质因数值1-5。首次进行链路训练后会按照最大品质因数值1对目标数据通路进行配置。当第一次出现误码率超出阈值的情况时,通过遍历训练参数列表,会选择次优的品质因数值2对应的链路参数值进行配置,然后基于该链路参数值进行数据通路的数据收发。然而,如果此时仍然不满足对误码率的要求,则继续选择次优品质因数值进行配置。假设直到选择次优的品质因数值3时数据通路的误码率才低于阈值,满足要求。那么当下一次误码率高于阈值时,则可以按照品质因数值4、5、1、2的顺序进行遍历。也就是说,在训练参数列表中,优先选择尚未遍历或尝试过的品质因数值作为次优品质因数值,而已经遍历过的品质因数值也可以再次进行尝试,但是优先级比尚未尝试过的品质因数值低。如果所有品质因数值都遍历或尝试过,并且基于与之对应的链路参数值进行数据传输时,也能满足当时的误码率要求,那么当误码率再次超出阈值时,则可以不必再继续对当前的训练参数列表进行遍历。
94.本公开实施例的技术方案,在对误码率监测的过程中,当误码率超出预设阈值,并不是如现有技术中那样再次进行链路训练,而是充分使用链路训练的结果,从训练参数列表中选择一组不同于当前配置的次优链路参数值对数据通路进行链路参数配置。因此,本公开实施例可以避免因每次进行链路训练而导致的响应速度慢的问题,同时,将历史训练中获取到的参数加以利用,能够以最快的响应速度找到当前满足链路传输的参数,从而提
高传输链路的稳定性和可靠性。
95.图6是根据本公开实施例的链路参数的配置方法的流程示意图,本实施例在上述实施例的基础上进一步进行优化。如图6所示,该方法具体包括如下:
96.s601、系统上电,并进行首次链路训练。
97.其中,所述系统是指高速串行传输系统,例如语音芯片中的高速串行传输系统。系统上电后,经过首次链路训练,即可获取到每一个数据通路对应的训练参数列表。在本实施例中,以目标数据通路为例来说明其链路参数的配置方法。
98.s602、获取经链路训练得到的目标数据通路的训练参数列表。
99.其中,训练参数列表包括多个品质因数值fom(figure of merit)以及各品质因数值对应的链路参数值,所述品质因数值用于标定所述目标数据通路上传输数据的质量,各品质因数值是根据与之对应的链路参数值计算得到的。
100.s603、按照fom值大小对训练参数列表进行降序排序。
101.s604、使用fom值最大的一组参数进行链路参数配置。
102.也即,从训练参数列表中选择最大fom值对应的一组链路参数值进行链路参数配置。
103.s605、错误检测,计算误码率。
104.s606、判断误码率是否大于阈值,如果判断为是,则执行s607,否则返回执行s605。
105.s607、判断训练参数列表是否全部遍历,如果判断为否,则执行s608后继续执行s605,如果判断为是,则执行s609。
106.s608、从训练参数列表中选择次优链路参数值进行链路参数配置。
107.其中,可以是按照降序排序后的训练参数列表,选择比当前fom值小的fom值对应的链路参数值,作为该次优链路参数值。配置完后,则基于当前配置进行数据收发,并继续进行误码率监测。
108.s609、判断相邻数据通路的训练参数列表是否全部遍历,如果判断为是,则执行s610和s611后返回执行s603,否则执行s612后返回执行s605。
109.如果目标数据通路所在的数据链路中,存在与其相邻的数据通路,则根据该相邻数据通路的训练参数列表对当前目标数据通路进行链路参数配置。
110.s610、对目标数据通路再次进行链路训练。
111.s611、更新目标数据通路的训练参数列表。
112.如果相邻数据通路的训练参数列表已经全部遍历,则表示没有次优参数以供选择,此时则可以再次进行链路训练,并更新训练参数列表,以便当误码率再次超出阈值时,根据该更新后的训练参数列表再次选择次优参数进行配置。
113.s612、从相邻数据通路的训练参数列表中选择链路参数进行配置。
114.如果相邻数据通路的训练参数列表没有全部遍历,则从相邻数据通路的训练参数列表中选择链路参数进行配置。具体而言,可以从相邻数据通路的训练参数列表中选择与当前配置参数不同的次优链路参数进行重新配置,并继续对误码率进行监测。
115.本公开实施例的技术方案,充分使用每次链路训练结果,在误码率不满足阈值要求时,并不是如现有技术中那样再次进行链路训练,而是利用上一次训练得到的多组fom值对链路参数进行配置。并且进一步的,当该多组fom值都尝试过,且误码率仍然不满足要求
时,还会根据相邻通路的fom值进行链路参数的配置。这样做的目的在于,可以避免因每次进行链路训练而导致的响应速度慢的问题。同时,即使是重新进行训练,由于每一个fom值都是基于当前环境计算的,因此,再次训练得到的最优fom,就未必适用于变化后的环境,使得依然无法达到最佳的信号传输性能。而本公开实施例将历史训练中获取到的参数加以利用,能够以最快的响应速度找到当前满足链路传输的参数,从而提高传输链路的稳定性和可靠性。最后,还提供了兜底方案,在两种方式都无法满足对误码率要求时,则会进行重新训练,并更新训练参数列表,从而进一步确保高速传输链路的稳定性和可靠性。
116.图7是根据本公开实施例的链路参数的配置装置的示意图,本实施例可适用于对高速串行传输系统中的数据通路配置链路参数的情况,涉及计算机技术领域,尤其涉及高速串行传输和芯片技术。该装置可实现本公开任意实施例所述的链路参数的配置方法。如图7所示,该装置700具体包括:
117.训练参数列表获取模块701,用于获取经链路训练得到的目标数据通路的训练参数列表,其中,所述训练参数列表中包括多组链路参数值;
118.训练参数列表遍历模块702,用于响应于所述目标数据通路上的误码率高于预设阈值,遍历所述训练参数列表,并从所述训练参数列表中选择第一目标链路参数值;
119.链路参数配置模块703,用于按照所述第一目标链路参数值对所述目标数据通路进行配置。
120.可选的,所述装置还包括:
121.误码率监测模块,用于在所述链路参数配置模块703按照所述第一目标链路参数值对所述目标数据通路进行配置之后,按照预设时间间隔监测所述目标数据通路上的误码率;
122.所述链路参数配置模块还用于:
123.响应于所述目标数据通路上的误码率再次高于所述预设阈值,并且所述目标数据通路的训练参数列表尚未全部遍历,则从所述目标数据通路的训练参数列表中选择第二目标链路参数值;
124.按照所述第二目标链路参数值对所述目标数据通路进行配置。
125.可选的,所述链路参数配置模块还用于:
126.如果所述目标数据通路的训练参数列表已全部遍历,则获取所述目标数据通路的相邻数据通路的训练参数列表;
127.如果所述相邻数据通路的训练参数列表尚未全部遍历,则从所述相邻数据通路的训练参数列表中选择第三目标链路参数值;
128.按照所述第三目标链路参数值对所述目标数据通路进行配置。
129.可选的,所述链路参数配置模块还用于:
130.如果所述相邻数据通路的训练参数列表已全部遍历,则对所述目标数据通路再次进行链路训练。
131.可选的,所述训练参数列表包括多个品质因数值以及各品质因数值对应的链路参数值,所述品质因数值用于标定所述目标数据通路上传输数据的质量,各品质因数值是根据与之对应的链路参数值计算得到的。
132.可选的,所述训练参数列表遍历模块702包括:
133.遍历单元,用于遍历所述训练参数列表,并从所述训练参数列表中确定目标品质因数值;
134.第一目标链路参数值确定单元,用于将所述训练参数列表中与所述目标品质因数值对应的链路参数值作为所述第一目标链路参数值。
135.可选的,所述遍历单元包括:
136.当前品质因数值确定子单元,用于确定所述目标数据通路上配置的当前链路参数值对应的当前品质因数值;
137.遍历子单元,用于遍历所述训练参数列表,并将所述训练参数列表中小于所述当前品质因数值的品质因数值作为所述目标品质因数值。
138.可选的,所述遍历子单元具体用于:
139.将所述训练参数列表中的各品质因数值按降序排序;
140.按照所述降序排序的顺序遍历所述训练参数列表,并将所述训练参数列表中小于所述当前品质因数值的下一个品质因数值作为所述目标品质因数值。
141.可选的,所述训练参数列表是通过所述目标数据通路的接收端提供的特定控制端口获取的。
142.可选的,所述目标数据通路用于芯片进行高速串行数据传输。
143.上述产品可执行本公开任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。
144.此外,本公开实施例还提供了一种芯片,包括高速串行传输系统,所述高速串行传输系统包括多条数据通路,每条数据通路对应一个接收端和一个发送端,所述接收端用于对与之对应的数据通路进行链路训练;其中,
145.所述高速串行传输系统还包括链路参数配置模块,具体用于:
146.通过任意目标数据通路的接收端获取经链路训练得到的目标数据通路的训练参数列表,其中,所述训练参数列表中包括多组链路参数值;
147.响应于所述目标数据通路上的误码率高于预设阈值,遍历所述训练参数列表,并从所述训练参数列表中选择第一目标链路参数值;
148.按照所述第一目标链路参数值对所述目标数据通路进行配置。
149.其中,所述芯片例如可以是语音芯片,用于接收语音信号,并对语音信号进行语音识别等处理。高速串行传输系统是芯片中的一部分,用于与外界进行高速串行信号的传输。链路参数配置模块是高速串行传输系统的一部分,用于对高速串行传输系统中的数据通路进行链路参数配置,以确保高速传输链路的稳定性和可靠性。同时,该链路参数配置模块可实现本公开任意实施例所述的链路参数的配置方法,具备执行该方法相应的功能模块和有益效果。
150.本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
151.根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
152.图8示出了可以用来实施本公开的实施例的示例电子设备800的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字
助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
153.如图8所示,设备800包括计算单元801,其可以根据存储在只读存储器(rom)802中的计算机程序或者从存储单元808加载到随机访问存储器(ram)803中的计算机程序,来执行各种适当的动作和处理。在ram 803中,还可存储设备800操作所需的各种程序和数据。计算单元801、rom 802以及ram 803通过总线804彼此相连。输入/输出(i/o)接口805也连接至总线804。
154.设备800中的多个部件连接至i/o接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
155.计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如链路参数的配置方法。例如,在一些实施例中,链路参数的配置方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由rom 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到ram 803并由计算单元801执行时,可以执行上文描述的链路参数的配置方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行链路参数的配置方法。
156.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、复杂可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
157.用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
158.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电
子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
159.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
160.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)、区块链网络和互联网。
161.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
162.人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术及机器学习/深度学习技术、大数据处理技术、知识图谱技术等几大方向。
163.云计算(cloud computing),指的是通过网络接入弹性可扩展的共享物理或虚拟资源池,资源可以包括服务器、操作系统、网络、软件、应用和存储设备等,并可以按需、自服务的方式对资源进行部署和管理的技术体系。通过云计算技术,可以为人工智能、区块链等技术应用、模型训练提供高效强大的数据处理能力。
164.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开提供的技术方案所期望的结果,本文在此不进行限制。
165.上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献