CN114816885A - 一种自动调整发送端均衡值的方法、装置、设备、介质 - Google Patents
一种自动调整发送端均衡值的方法、装置、设备、介质 Download PDFInfo
- Publication number
- CN114816885A CN114816885A CN202210591006.5A CN202210591006A CN114816885A CN 114816885 A CN114816885 A CN 114816885A CN 202210591006 A CN202210591006 A CN 202210591006A CN 114816885 A CN114816885 A CN 114816885A
- Authority
- CN
- China
- Prior art keywords
- pcie
- equipment
- value
- sending end
- write
- 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 39
- 230000000694 effects Effects 0.000 claims abstract description 26
- 238000012549 training Methods 0.000 claims abstract description 16
- 230000006870 function Effects 0.000 claims description 23
- 238000001514 detection method Methods 0.000 claims description 11
- 238000012937 correction Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 2
- 238000012423 maintenance Methods 0.000 abstract description 9
- 238000004519 manufacturing process Methods 0.000 abstract description 9
- 238000012360 testing method Methods 0.000 abstract description 9
- 238000012790 confirmation Methods 0.000 description 5
- 239000002243 precursor Substances 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000007689 inspection Methods 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 230000032683 aging Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test input/output devices or peripheral units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明属于PCIE设备技术领域,具体提供一种自动调整发送端均衡值的方法、装置、设备、介质,所述方法包括如下步骤:BIOS启动PCIE链路训练时,遍历检测CPU端的PCIE根端口是否有接入PCIE设备;当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值;读取挂在二次总线下的PCIE设备的生产商代码和设备代码;将读取的生产商代码和设备代码与待调整发送端均衡值的PCIE设备的生产商代码和设备代码进行比对;当比对结果一致时,调用写入函数写入发送端均衡值,并使写入的发送端均衡值生效。可以节省测试,生产和运维时间。
Description
技术领域
本发明涉及PCIE设备技术领域,具体涉及一种自动调整发送端均衡值的方法、装置、设备、介质。
背景技术
BIOS(Basic Input Output System)基本输入输出系统,是固化到计算机主板一个ROM芯片上的程序,实现开机启动过程对服务器主板上的各个中央处理器(CPU)、芯片组(Chipset)、以及各种输入输出设备的初始化,为计算机提供最底层的、最直接的硬件设置和控制,PCIE链路训练就是在BIOS启动阶段完成。
为了补偿信号的传输通道对高速信号带来的损耗等影响,从PCIE 3.0开始使用动态均衡方法针对不同的情形自动配置并优化发送端和接收端的均衡设置,以便在接收端获得最好的信号质量。发送端均衡(TxEQ)是通过一个3阶FIR滤波器实现的,每一阶的权重被称为Cursor系数,不同的去加重和预过冲的组合被称为Preset,总共有11个Preset,P0-P10。TxEQ值的调整,是在系统根端口(root port)和PCIE设备的链路训练的Recovery状态中实现的。Recovery状态包括4个子状态,Phase 0,Phase 1,Phase 2,Phase 3,也是动态均衡发生的4个阶段。其中PCIe设备TxEQ值的调整主要在Phase 3,系统根端口(Root Port)在调整自身RxEQ以获得最优设置的同时,通过发送不同的Preset值或者Cursor值请求来调整PCIE设备端口的TxEQ设置。当系统根端口(Root Port)的RxEQ值和PCIE设备端的TxEQ值的组合达到一个最优设置后,退出Phase 3。
在Intel Whitley平台实际测试中,仍发现一些PCIE网卡设备在经过动态均衡方法自动配置调整后,在系统下应用时有少量PCIE设备端可纠正错误(correctable error)的产生,针对这种情况,就需要信号工程师根据实际应用去测试,找到一组最优TxEQ的PreCursor值和PostCursor值,用于修复这类PCIE网卡设备可纠正错误,避免因可纠正错误过多,导致不可纠正错误的产生。
这组最优TxEQ的PreCursor值和PostCursor值需要在BIOS启动过程中正确的设置进去。一般针对不同的网卡TxEQ的PreCursor值和PostCursor值是不同的,而且针对不同GEN3或GEN4网卡,在BIOS Setup界面下设置的地方也不同。首先需要在BIOS Setup界面找到对应PCIE根端口(Root port),将对应Gen3 Override mode或Gen4 Override mode修改为Manual模式,然后分别将对应Ph3 TxEq precursor和Ph3 TxEq Postcursor设置调整后的值,保存重启系统,才能使调整的TXEQ值生效。这样就要求服务器测试,生产或运维人员,针对不同网卡配置,设置不同BIOS选项,同时选项设置后,需要重启服务器,会增加更多改配,检验,生产,运维时效的成本。
发明内容
针对服务器测试、生产或运维人员,针对不同网卡配置,设置不同BIOS选项,同时选项设置后,需要重启服务器,会增加更多改配,检验,生产,运维时效的成本的问题,本发明一种自动调整发送端均衡值的方法、装置、设备、介质。
本发明的技术方案是:
第一方面,本发明技术方案提供一种自动调整发送端均衡值的方法,包括如下步骤:
BIOS启动PCIE链路训练时,遍历检测CPU端的PCIE根端口是否有接入PCIE设备;
当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值;
读取挂在二次总线下的PCIE设备的生产商代码和设备代码;
将读取的生产商代码和设备代码与待调整发送端均衡值的PCIE设备的生产商代码和设备代码进行比对;
当比对结果一致时,调用写入函数写入发送端均衡值,并使写入的发送端均衡值生效;
判断是否遍历完成;
若是,结束;
若否,执行步骤:遍历检测CPU端的PCIE根端口是否有接入PCIE设备。
在这里确定的发送端均衡值需要写入信号工程师获取确认。
进一步的,BIOS启动PCIE链路训练时,遍历检测CPU端的PCIE根端口是否有接入PCIE设备的步骤之前包括:
读取每个PCIE设备的寄存器中的可纠错状态,将存在可纠错的寄存器对应的PCIE设备确定为待调整发送端均衡值的PCIE设备。
进一步的,当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值的步骤包括:
当检测到有接入PCIE设备时,读取每个PCIE设备所在根端口的总线基底值和总线极限值;
给每个PCIE根端口的二次总线寄存器预写入总线底值加1、辅助总线寄存器预写入总线极限值。
进一步的,当比对结果一致时,调用写入函数写入优化后的发送端均衡值,并使写入的发送端均衡值生效的步骤包括:
当比对结果一致时,调用写入函数写入优化后的发送端均衡值;
对该PCIE根端口的PCIE链路进行链路重训练,使写入的发送端均衡值生效。
进一步的,该方法还包括:
发送端均衡值调整完成后,对当前的PCIE链路进行信号质量检测;
若PCIE链路信号质量不符合预定标准时,对PCIE链路的发送端均衡值重新调整。
第二方面,本发明技术方案提供一种自动调整发送端均衡值的装置,包括接口检测模块、写寄存器模块、代码读取模块、比对模块、调整模块、判断模块;
接口检测模块,用于BIOS启动PCIE链路训练时,遍历检测CPU端的PCIE根端口是否有接入PCIE设备;
写寄存器模块,用于当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值;
代码读取模块,用于读取挂在二次总线下的PCIE设备的生产商代码和设备代码;
比对模块,用于将读取的生产商代码和设备代码与待调整发送端均衡值的PCIE设备的生产商代码和设备代码进行比对;
调整模块,用于当比对结果一致时,调用写入函数写入发送端均衡值,并使写入的发送端均衡值生效;
判断模块,用于判断检测模块是否遍历完成;若否输出信息到接口检测模块。
进一步的,该装置还包括确认模块,所述确认模块,用于读取每个PCIE设备的寄存器中的可纠错状态,将存在可纠错的寄存器对应的PCIE设备确定为待调整发送端均衡值的PCIE设备。
进一步的,写寄存器模块包括读取单元和预写单元;
读取单元,用于当检测到有接入PCIE设备时,读取每个PCIE设备所在根端口的总线基底值和总线极限值;
预写单元,用于给每个PCIE根端口的二次总线寄存器预写入总线底值加1、辅助总线寄存器预写入总线极限值。
进一步的,调整模块包括执行单元和触发单元;
执行单元,用于当比对结果一致时,调用写入函数写入优化后的发送端均衡值;
触发单元,用于对该PCIE根端口的PCIE链路进行链路重训练,使写入的发送端均衡值生效。
进一步的,该装置还包括验证模块;所述验证模块,用于发送端均衡值调整完成后,对当前的PCIE链路进行信号质量检测,并判断PCIE链路信号质量是否符合预定标准;若否,输出信息到调整模块对PCIE链路的发送端均衡值重新调整。
第三方面,本发明技术方案还提供一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的计算机程序指令,所述计算机程序指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如第一方面所述的自动调整发送端均衡值的方法。
第四方面,本发明技术方案还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如第一方面所述的自动调整发送端均衡值的方法。
从以上技术方案可以看出,本发明具有以下优点:通过检测PCIE设备信息自动调整PCIE设备端发送端均衡值的方法,可以在BIOS启动阶段,设计程序,当检测PCIE设备信息,写入信号工程师提供的发送端均衡值的调优数据,实现发送端均衡自动调整,一是可以避免测试工程师,生产或客户运维要针对不同PCIE设备要进行手动设置复杂操作,二是避免通过BIOS Setup界面的设置的二次重启,可以节省测试,生产和运维时间。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著地进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的方法的示意性流程图。
图2是本发明另一个实施例的方法的示意性流程图。
图3是本发明一个实施例的装置的示意性框图。
具体实施方式
在Intel Whitley平台实际测试中,仍发现一些PCIE网卡设备在经过动态均衡方法自动配置调整后,在系统下应用时有少量PCIE设备端可纠正错误(correctable error)的产生,针对这种情况,就需要信号工程师根据实际应用去测试,找到一组最优TxEQ的PreCursor值和PostCursor值,用于修复这类PCIE网卡设备可纠正错误,避免因可纠正错误过多,导致不可纠正错误的产生。这组最优TxEQ的PreCursor值和PostCursor值需要在BIOS启动过程中正确的设置进去。一般针对不同的网卡TxEQ的PreCursor值和PostCursor值是不同的,而且针对不同GEN3或GEN4网卡,在BIOS Setup界面下设置的地方也不同。首先需要在BIOS Setup界面找到对应PCIE根端口(Root port),将对应Gen3 Override mode或Gen4Override mode修改为Manual模式,然后分别将对应Ph3 TxEq precursor和Ph3 TxEqPostcursor设置调整后的值,保存重启系统,才能使调整的TXEQ值生效。这样就要求服务器测试,生产或运维人员,针对不同网卡配置,设置不同BIOS选项,同时选项设置后,需要重启服务器,会增加更多改配,检验,生产,运维时效的成本。为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
如图1所示,本发明实施例提供一种自动调整发送端均衡值的方法,包括如下步骤:
步骤1:BIOS启动PCIE链路训练时,遍历检测CPU端的PCIE根端口是否有接入PCIE设备;
步骤2:当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值;
步骤3:读取挂在二次总线下的PCIE设备的生产商代码和设备代码;
步骤4:将读取的生产商代码和设备代码与待调整发送端均衡值的PCIE设备的生产商代码和设备代码进行比对;
步骤5:当比对结果一致时,调用写入函数写入发送端均衡值,并使写入的发送端均衡值生效;
在这里需要说明的是,步骤5执行完成后,需要进一步执行步骤S6:判断是否遍历完成;
若是,结束;若否,执行步骤1。
在这里确定的发送端均衡值需要结合写入信号工程师的获取确认。
如图2所示,在有些实施例中,步骤2中,当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值的步骤包括:
步骤21:当检测到有接入PCIE设备时,读取每个PCIE设备所在根端口的总线基底值和总线极限值;
步骤22:给每个PCIE根端口的二次总线寄存器预写入总线底值加1、辅助总线寄存器预写入总线极限值。
相应的步骤5中,当比对结果一致时,调用写入函数写入优化后的发送端均衡值,并使写入的发送端均衡值生效的步骤包括:
步骤51:当比对结果一致时,调用写入函数写入优化后的发送端均衡值;
步骤52:对该PCIE根端口的PCIE链路进行链路重训练,使写入的发送端均衡值生效。
也就是本发明实施例针对一些特定的PCIE设备调整TXEQ值,需要在BIOS启动PEI阶段PCIE链路初始化的时候。PCIE设备的区分,主要是通过判断设备的生产商代码VendorID和设备代码DeviceID。但是BIOS启动PEI阶段,BIOS没有办法直接读取到PCIE设备的VendorID和DeviceID,在这里需要BIOS做特殊处理,实现方式如下:
1)首先检测每个CPU端的PCIE根端口(Root Port)有没有接入PCIE设备;
2)然后读取每个PCIE设备所在根端口(Root Port)的bus base值和bus limit值。
3)给每个PCIE根端口(Root Port)的Secondary bus寄存器预写入bus base值+1,其Subordinate Bus寄存器预写入bus limit值。
4)读取挂在PCIE Secondary Bus下的PCIE设备的VendorID和DeviceID。
5)将获取到VendorID和deviceID跟要调整TXEQ值的PCIE设备VendorID和DeviceID做比较,如果一致,执行Phase 3TXEQ值写入函数,写入信号工程师量测出的适合的TXEQ值,如果不一致,则不执行。
6)对该PCIE根端口PCIE链路进行Link Retrain,使写入的TXEQ值生效;
7)遍历各CPU的所有的PCIE根端口(Root Port),为所有接入该PCIE设备进行TXEQ值调整。
通过检测PCIE设备信息自动调整PCIE设备端TXEQ值的方法,BIOS在PCIE链路训练初始化阶段,通过写入PCIE根端口(Root Port)的Secondary bus和Subordinate Bus寄存器方式,读取到PCIE设备VendorID和DeviceID,将其跟我们要调整TXEQ值的PCIE设备VendorID和DeviceID做比较,如果一致,执行Phase 3TXEQ值写入函数,对该PCIE根端口PCIE链路进行Link Retrain,使写入的TXEQ值生效,从而达到在BIOS启动过程对特定PCIE设备TXEQ值的优化的目的,无需通过修改BIOS选项及重启系统实现。
本发明实施例提供一种自动调整发送端均衡值的方法,包括如下步骤:
S1:读取每个PCIE设备的寄存器中的可纠错状态,将存在可纠错的寄存器对应的PCIE设备确定为待调整发送端均衡值的PCIE设备;
S2:BIOS启动PCIE链路训练时,遍历检测CPU端的PCIE根端口是否有接入PCIE设备;
S3:当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值;
S4:读取挂在二次总线下的PCIE设备的生产商代码和设备代码;
S5:将读取的生产商代码和设备代码与待调整发送端均衡值的PCIE设备的生产商代码和设备代码进行比对;
S6:当比对结果一致时,调用写入函数写入发送端均衡值,并使写入的发送端均衡值生效。
本发明实施例提供一种自动调整发送端均衡值的方法,包括如下步骤:
S1:读取每个PCIE设备的寄存器中的可纠错状态,将存在可纠错的寄存器对应的PCIE设备确定为待调整发送端均衡值的PCIE设备;
S2:BIOS启动PCIE链路训练时,遍历检测CPU端的PCIE根端口是否有接入PCIE设备;
S3:当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值;
S4:读取挂在二次总线下的PCIE设备的生产商代码和设备代码;
S5:将读取的生产商代码和设备代码与待调整发送端均衡值的PCIE设备的生产商代码和设备代码进行比对;
S6:当比对结果一致时,调用写入函数写入发送端均衡值,并使写入的发送端均衡值生效;
S7:发送端均衡值调整完成后,对当前的PCIE链路进行信号质量检测;
S8:若PCIE链路信号质量不符合预定标准时,对PCIE链路的发送端均衡值重新调整。
如图3所示,本发明实施例提供一种自动调整发送端均衡值的装置,包括接口检测模块、写寄存器模块、代码读取模块、比对模块、调整模块;
接口检测模块,用于BIOS启动PCIE链路训练时,遍历检测CPU端的PCIE根端口是否有接入PCIE设备;
写寄存器模块,用于当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值;
代码读取模块,用于读取挂在二次总线下的PCIE设备的生产商代码和设备代码;
比对模块,用于将读取的生产商代码和设备代码与待调整发送端均衡值的PCIE设备的生产商代码和设备代码进行比对;
调整模块,用于当比对结果一致时,调用写入函数写入发送端均衡值,并使写入的发送端均衡值生效;
需要说明的是,本发明调整完成后,需要判断所有PCIE设备都调整完成后,才执行结束,本装置还包括判断模块,用于判断检测模块是否遍历完成;若否输出信息到接口检测模块。
在有些实施例中,该装置还包括确认模块,所述确认模块,用于读取每个PCIE设备的寄存器中的可纠错状态,将存在可纠错的寄存器对应的PCIE设备确定为待调整发送端均衡值的PCIE设备。
在有些实施例中,写寄存器模块包括读取单元和预写单元;
读取单元,用于当检测到有接入PCIE设备时,读取每个PCIE设备所在根端口的总线基底值和总线极限值;
预写单元,用于给每个PCIE根端口的二次总线寄存器预写入总线底值加1、辅助总线寄存器预写入总线极限值。
在有些实施例中,调整模块包括执行单元和触发单元;
执行单元,用于当比对结果一致时,调用写入函数写入优化后的发送端均衡值;
触发单元,用于对该PCIE根端口的PCIE链路进行链路重训练,使写入的发送端均衡值生效。
在有些实施例中,该装置还包括验证模块;所述验证模块,用于发送端均衡值调整完成后,对当前的PCIE链路进行信号质量检测,并判断PCIE链路信号质量是否符合预定标准;若否,输出信息到调整模块对PCIE链路的发送端均衡值重新调整。
本发明实施例还提供一种电子设备,所述电子设备包括:处理器、通信接口、存储器和总线,其中,处理器,通信接口,存储器通过总线完成相互间的通信。总线可以用于电子设备与传感器之间的信息传输。处理器可以调用存储器中的逻辑指令,以执行如下方法:步骤1:BIOS启动PCIE链路训练时,遍历检测CPU端的PCIE根端口是否有接入PCIE设备;步骤2:当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值;步骤3:读取挂在二次总线下的PCIE设备的生产商代码和设备代码;步骤4:将读取的生产商代码和设备代码与待调整发送端均衡值的PCIE设备的生产商代码和设备代码进行比对;步骤5:当比对结果一致时,调用写入函数写入发送端均衡值,并使写入的发送端均衡值生效。
在一些具体的实施例中,处理器可以调用存储器中的逻辑指令,以执行如下方法:步骤21:当检测到有接入PCIE设备时,读取每个PCIE设备所在根端口的总线基底值和总线极限值;步骤22:给每个PCIE根端口的二次总线寄存器预写入总线底值加1、辅助总线寄存器预写入总线极限值。
在一些具体的实施例中,处理器可以调用存储器中的逻辑指令,以执行如下方法:步骤51:当比对结果一致时,调用写入函数写入优化后的发送端均衡值;步骤52:对该PCIE根端口的PCIE链路进行链路重训练,使写入的发送端均衡值生效。
此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例提供一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令使计算机执行上述方法实施例所提供的方法,例如包括:步骤1:BIOS启动PCIE链路训练时,遍历检测CPU端的PCIE根端口是否有接入PCIE设备;步骤2:当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值;步骤3:读取挂在二次总线下的PCIE设备的生产商代码和设备代码;步骤4:将读取的生产商代码和设备代码与待调整发送端均衡值的PCIE设备的生产商代码和设备代码进行比对;步骤5:当比对结果一致时,调用写入函数写入发送端均衡值,并使写入的发送端均衡值生效。
在一些具体的实施例中,所述可读存储介质中被处理器执行的程序指令,具体可以实现以下步骤:步骤21:当检测到有接入PCIE设备时,读取每个PCIE设备所在根端口的总线基底值和总线极限值;步骤22:给每个PCIE根端口的二次总线寄存器预写入总线底值加1、辅助总线寄存器预写入总线极限值。
在一些具体的实施例中,所述可读存储介质中被处理器执行的程序指令,具体可以实现以下步骤:步骤51:当比对结果一致时,调用写入函数写入优化后的发送端均衡值;步骤52:对该PCIE根端口的PCIE链路进行链路重训练,使写入的发送端均衡值生效。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种自动调整发送端均衡值的方法,其特征在于,包括如下步骤:
BIOS启动PCIE链路训练时,遍历检测CPU端的PCIE根端口是否有接入PCIE设备;
当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值;
读取挂在二次总线下的PCIE设备的生产商代码和设备代码;
将读取的生产商代码和设备代码与待调整发送端均衡值的PCIE设备的生产商代码和设备代码进行比对;
当比对结果一致时,调用写入函数写入发送端均衡值,并使写入的发送端均衡值生效。
2.根据权利要求1所述的自动调整发送端均衡值的方法,其特征在于,BIOS启动PCIE链路训练时,遍历检测CPU端的PCIE根端口是否有接入PCIE设备的步骤之前包括:
读取每个PCIE设备的寄存器中的可纠错状态,将存在可纠错的寄存器对应的PCIE设备确定为待调整发送端均衡值的PCIE设备。
3.根据权利要求1所述的自动调整发送端均衡值的方法,其特征在于,当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值的步骤包括:
当检测到有接入PCIE设备时,读取每个PCIE设备所在根端口的总线基底值和总线极限值;
给每个PCIE根端口的二次总线寄存器预写入总线底值加1、辅助总线寄存器预写入总线极限值。
4.根据权利要求1所述的自动调整发送端均衡值的方法,其特征在于,当比对结果一致时,调用写入函数写入发送端均衡值,并使写入的发送端均衡值生效的步骤之后还包括:
判断是否遍历完成;
若是,结束;
若否,执行步骤:遍历检测CPU端的PCIE根端口是否有接入PCIE设备。
5.根据权利要求1所述的自动调整发送端均衡值的方法,其特征在于,当比对结果一致时,调用写入函数写入优化后的发送端均衡值,并使写入的发送端均衡值生效的步骤包括:
当比对结果一致时,调用写入函数写入优化后的发送端均衡值;
对该PCIE根端口的PCIE链路进行链路重训练,使写入的发送端均衡值生效。
6.根据权利要求1所述的自动调整发送端均衡值的方法,其特征在于,该方法还包括:
发送端均衡值调整完成后,对当前的PCIE链路进行信号质量检测;
若PCIE链路信号质量不符合预定标准时,对PCIE链路的发送端均衡值重新调整。
7.一种自动调整发送端均衡值的装置,其特征在于,包括接口检测模块、写寄存器模块、代码读取模块、比对模块、调整模块;
接口检测模块,用于BIOS启动PCIE链路训练时,遍历检测CPU端的PCIE根端口是否有接入PCIE设备;
写寄存器模块,用于当检测到有接入PCIE设备时,给每个PCIE根端口的二次总线寄存器和辅助总线寄存器预写值;
代码读取模块,用于读取挂在二次总线下的PCIE设备的生产商代码和设备代码;
比对模块,用于将读取的生产商代码和设备代码与待调整发送端均衡值的PCIE设备的生产商代码和设备代码进行比对;
调整模块,用于当比对结果一致时,调用写入函数写入发送端均衡值,并使写入的发送端均衡值生效。
8.根据权利要求7所述的自动调整发送端均衡值的装置,其特征在于,该装置还包括判断模块;
判断模块,用于判断检测模块是否遍历完成;若否输出信息到接口检测模块。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的计算机程序指令,所述计算机程序指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至6中任一项权利要求所述的自动调整发送端均衡值的方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至6任一项权利要求所述的自动调整发送端均衡值的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210591006.5A CN114816885A (zh) | 2022-05-27 | 2022-05-27 | 一种自动调整发送端均衡值的方法、装置、设备、介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210591006.5A CN114816885A (zh) | 2022-05-27 | 2022-05-27 | 一种自动调整发送端均衡值的方法、装置、设备、介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114816885A true CN114816885A (zh) | 2022-07-29 |
Family
ID=82519186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210591006.5A Pending CN114816885A (zh) | 2022-05-27 | 2022-05-27 | 一种自动调整发送端均衡值的方法、装置、设备、介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114816885A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115878540A (zh) * | 2023-01-19 | 2023-03-31 | 苏州浪潮智能科技有限公司 | 一种PCIe器件链路训练管理方法、管理装置及服务器 |
-
2022
- 2022-05-27 CN CN202210591006.5A patent/CN114816885A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115878540A (zh) * | 2023-01-19 | 2023-03-31 | 苏州浪潮智能科技有限公司 | 一种PCIe器件链路训练管理方法、管理装置及服务器 |
WO2024152604A1 (zh) * | 2023-01-19 | 2024-07-25 | 苏州元脑智能科技有限公司 | 一种PCIe器件链路训练管理方法、管理装置及服务器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021212948A1 (zh) | 存储系统启动方法、装置及计算机可读存储介质 | |
US20150249558A1 (en) | Requalization effort-balancing of transmit finite impulse response and receive linear equalizer or receive decision feedback equalizer structures in high-speed serial interconnects | |
CN114816885A (zh) | 一种自动调整发送端均衡值的方法、装置、设备、介质 | |
CN111159067B (zh) | 参数优化方法、装置、模组、处理器及计算机存储介质 | |
CN107153553A (zh) | 基于CScripts进行Purley平台CPU端PCIe Tx Eq调整的方法 | |
WO2024152604A1 (zh) | 一种PCIe器件链路训练管理方法、管理装置及服务器 | |
CN105120259A (zh) | 数字电视机检测方法及装置 | |
CN117240859A (zh) | 发送端均衡参数自动调整方法、装置、设备和存储介质 | |
CN107608836A (zh) | 一种sata链路最优值调整的测试方法 | |
CN115801118A (zh) | 一种接口补偿参数设定方法和通信单板 | |
CN107807867A (zh) | 测试通信链路稳定性的方法及装置 | |
WO2024103635A1 (zh) | 电机控制器cpld程序升级方法、装置、电机控制器及车辆 | |
CN113676795B (zh) | 基于gpon路由器的bosa自动校准及数据存储系统 | |
CN113722265B (zh) | 一种用于多cpu系统中互联通道的调试优化方法及装置 | |
CN111367719B (zh) | 一种存储系统启动方法、装置、设备和介质 | |
CN109903803B (zh) | 存储模块的测试方法及系统 | |
CN116225809A (zh) | Pcie链路信号测试方法、系统、终端及存储介质 | |
CN116305806A (zh) | 仿真模型的验证方法、装置、处理设备及介质 | |
CN111740881B (zh) | 一种网卡链路检测方法、系统、设备及计算机存储介质 | |
CN113986600A (zh) | 一种用于芯片串行接口的测试方法、装置和芯片 | |
CN112631688A (zh) | PCIe链路快速启动方法及装置 | |
JP2022049407A (ja) | 情報処理システム、ストレージデバイス、およびキャリブレーション方法 | |
CN115482790B (zh) | 伽马校正方法、自动伽马校正系统及显示装置 | |
CN115622649B (zh) | 一种基于uefi系统的网络校时方法、装置及设备 | |
CN115291957B (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 |