本申请涉及计算机技术领域,具体而言,涉及一种phy参数调试方法、装置、存储介质及电子设备。
背景技术:
pcie(peripheralcomponentinterconnectexpress)是一种高速串行计算机扩展总线标准,由英特尔在2001年提出,是第三代高速串行总线,旨在取代旧的pci,pci-x,agp总线标准。pcie自提出以来,其以传输速率快、端到端的可靠性传输、支持热拔插、功耗管理、服务质量等特性在个人计算机、服务器、固态硬盘、数据中心等领域得到了广泛的应用。
当具备pcie功能的芯片更换至不同的主板。pciephy当前的参数信息可能与新的主板并不匹配,导致pciephy不能正常运行。
技术实现要素:
本申请的目的在于提供一种phy参数调试方法、装置、存储介质及电子设备,以解决上述问题。
为了实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请实施例提供一种phy参数调试方法,应用于处理器,所述处理器与pciephy电连接,pciephy包括只读存储器和静态随机存储器,所述方法包括:
当获得初始化加载完毕指示信号时,修改所述静态随机存储器中的数据,其中,所述初始化加载完毕指示信号表征从所述只读存储器向所述静态随机存储器加载代码完成;
当所述静态随机存储器中的数据修改完成时,向pciephy发送第一触发指令,以使pciephy从所述静态随机存储器中读取数据,用于执行pciephy中每一个通道的校准和自适应算法。
第二方面,本申请实施例提供一种phy参数调试装置,应用于处理器,所述处理器与pciephy电连接,pciephy包括只读存储器和静态随机存储器,所述装置包括:
处理单元,用于当获得初始化加载完毕指示信号时,修改所述静态随机存储器中的数据,其中,所述初始化加载完毕指示信号表征从所述只读存储器向所述静态随机存储器加载代码完成;
信息收发单元,用于当所述静态随机存储器中的数据修改完成时,向pciephy发送第一触发指令,以使pciephy从所述静态随机存储器中读取数据,用于执行pciephy中每一个通道的校准和自适应算法。
第三方面,本申请实施例提供一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的方法。
第四方面,本申请实施例提供一种电子设备,所述电子设备包括:处理器和存储器,所述存储器用于存储一个或多个程序;当所述一个或多个程序被所述处理器执行时,实现上述的方法。
相对于现有技术,本申请实施例所提供的一种phy参数调试方法、装置、存储介质及电子设备的有益效果为:当处理器获得初始化加载完毕指示信号时,开始修改静态随机存储器中的数据,再当静态随机存储器中的数据修改完成时,处理器向pciephy发送第一触发指令,以使pciephy从静态随机存储器中读取数据,用于执行pciephy中每一个通道的校准和自适应算法,以使pciephy与当前安装的主板匹配,从而可以正常启动运行,解决了现有技术中只读存储器中数据不能修改从而导致phy参数无法调节的问题,以使得pciephy能够匹配更多的主板设备。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它相关的附图。
图1为本申请实施例提供的芯片的结构示意图;
图2为本申请实施例提供的pciephy的结构示意图;
图3为本申请实施例提供的phy参数调试方法的流程示意图;
图4为本申请实施例提供的s102的子步骤示意图;
图5为本申请实施例提供的phy参数调试方法的另一种流程示意图;
图6为本申请实施例提供的寄存器配置总线时序图;
图7为本申请实施例提供的静态随机存储器总线时序图;
图8为本申请实施例提供的phy参数调试装置的单元示意图。
图中:10-处理器;20-pciephy;201-静态随机存储器;202-选择器;203-physram加载组件;204-pciephy寄存器配置组件;205-jtag总线组件;206-sram控制组件;207-程序加载组件;208-只读存储器;301-处理单元;302-信息收发单元。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
在本申请的描述中,需要说明的是,术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该申请产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
在本申请的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
pcie(peripheralcomponentinterconnectexpress)是一种高速串行计算机扩展总线标准,由英特尔在2001年提出,是第三代高速串行总线,旨在取代旧的pci,pci-x,agp总线标准。pcie自提出以来,其以传输速率快、端到端的可靠性传输、支持热拔插、功耗管理、服务质量等特性在个人计算机、服务器、固态硬盘、数据中心等领域得到了广泛的应用。
pcie协议包含四层,即物理层、数据链路层、传输层、应用层。物理层协议主要负责串并转换、时钟恢复、相位补偿、8b/10b编解码、128b/130b编解码、加扰解扰、远端在位检测电路等功能;数据链路层主要负责电源管理、错误检测、流量管理、组帧等功能,也有pcie控制器将链路训练状态状态机(简称,ltssm)链路训练及状态状态机在数据链路层实现;传输层定义了多种tlp的类型,并进行tlp组帧、解析,并将错误检测的结果向应用层汇报;应用层则根据不同的应用实现具体的dma传输命令、命令传输及解析、数据搬移、错误上报到cpu、与其他模块的交互等一系列软硬件结合的功能。
pcie物理层(简称pciephy)可以分为两部分:物理编码亚层(physicalcodingsublayer,简称pcs层)和物理介质附件(physicalmediumattachment,简称pma层)。pma层主要通过模拟电路实现如下功能:自适应可编程发射端均衡技术、自适应可配置的接收端ctle及dfe技术、受pcs层控制的寄存器信号、调试寄存器等。pcs层和pma层对接,控制pma的寄存器配置、dft功能、输出标准pipe接口信号、每条通道的接收端和发射端独立控制等功能。
当具备pcie功能的芯片更换至不同的主板。pciephy当前的参数信息可能与新的主板并不匹配,导致pciephy不能正常运行。此时,则需要对pciephy的参数进行调节、调试。
本申请实施例提供了一种如图1所示的芯片。请参照图1,芯片的结构示意图。芯片包括处理器10和pciephy20。处理器10与pciephy20电连接。处理器10用于执行可执行模块,例如计算机程序,以实现phy参数调试方法。
处理器10可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,phy参数调试方法的各步骤可以通过处理器10中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器10可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessor,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现场可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
对于pciephy20本申请实施还提出了一种可能的架构,请参见图2,pciephy20包括:静态随机存储器201(staticrandomaccessmemory,简称sram)、选择器202(简称,mux)、physram加载组件203、pciephy寄存器配置组件204、jtag总线组件205、sram控制组件206、程序加载组件207以及只读存储器208(简称,phypcsrom)。
应当理解的是,图1所示的结构仅为芯片的部分的结构示意图,芯片还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
本发明实施例提供的一种phy参数调试方法,可以但不限于应用于图1所示的芯片,具体的流程,请参考图3:
s102,当获得初始化加载完毕指示信号时,修改静态随机存储器中的数据。
具体地,pciephy20包括只读存储器208和静态随机存储器201。其中,初始化加载完毕指示信号表征从只读存储器208向静态随机存储器201加载代码完成。
只读存储器208用于存储phy参数,当芯片启动时,将其中的参数用于执行pciephy20中每一个通道的校准和自适应算法。但是当参数与主板不匹配时,由于只读存储器208中的数据只能读出,而不像随机存储器那样能快速地、方便地加以改写,所以需要将其中的数据加载到静态随机存储器201中,以便于对参数进行调整修改。当从只读存储器208向静态随机存储器201加载代码完成时,即可以修改静态随机存储器201中的参数。
s103,当静态随机存储器中的数据修改完成时,向pciephy发送第一触发指令,以使pciephy从静态随机存储器中读取数据,用于执行pciephy中每一个通道的校准和自适应算法。
具体地,当静态随机存储器201中的数据修改完成时,其中的数据与芯片当前的主板时匹配的。处理器10向pciephy20发送第一触发指令,当pciephy20接收到第一触发指令时,pciephy20从静态随机存储器201中读取数据,用于执行pciephy20中每一个通道的校准和自适应算法,以使pciephy20与当前的主板匹配,从而芯片可以正常启动。
综上所述,本申请实施例提供了一种phy参数调试方法,首先,当处理器获得初始化加载完毕指示信号时,开始修改静态随机存储器中的数据,再当静态随机存储器中的数据修改完成时,处理器向pciephy发送第一触发指令,以使pciephy从静态随机存储器中读取数据,用于执行pciephy中每一个通道的校准和自适应算法,以使pciephy与当前安装的主板匹配,从而可以正常启动运行,解决了现有技术中只读存储器中数据不能修改从而导致phy参数无法调节的问题,以使得pciephy能够匹配更多的主板设备。
对于s103中的pciephy20从静态随机存储器201中读取数据,本申请实施例还提供了一种可能的实现方式,pciephy20通过physram加载组件203从静态随机存储器201中读取数据。
在图3的基础上,对于s102中的内容,本申请实施例还提供了一种可能的实现方式,请参考图4,s102包括:
s102-1,当获得初始化加载完毕指示信号时,通过选择器确定修改接口。
具体地,pciephy20还包括选择器202、pciephy寄存器配置组件204、jtag总线组件205、sram控制组件206。其中,sram控制组件206包括片上系统寄存器接口和对应的第一寄存器;pciephy寄存器配置组件204包括pciephy寄存器接口和对应的第二寄存器;jtag总线组件205包括联合测试工作组寄存器接口和对应的第三寄存器。
处理器10可以通过选择器202确定通过何种组件对静态随机存储器201的数据进行修改。即通过选择器202确定与处理器10的配置寄存器接口对接的修改接口为片上系统寄存器接口、联合测试工作组寄存器接口或者pciephy寄存器接口。
s102-2,通过修改接口修改静态随机存储器中的数据。
具体地,处理器10可以通过修改接口,配置对应的寄存器,结合内部电路实现静态随机存储器201的全地址读写控制,从而修改其中的数据(加载的执行校准和自适应算法的指令代码信息)。
在一种可能的实现方式中,当静态随机存储器201中的数据修改完成时,处理器10配置修改完毕指示寄存器(sram_ext_chg_done)为高电平(即第一触发指令),表示外部对静态随机存储器201中存储数据的修改完毕。
在图3的基础上,对于如何从只读存储器208向静态随机存储器201加载代码,本申请实施例还提供了一种可能的实现方式,请参考图5,phy参数调试方法还包括:
s101,在pciephy上电完成后,等待预设定的时间,向pciephy发送第二触发指令,以使只读存储器向静态随机存储器加载代码。
具体地,预设定的时间可以为25us,此段时间是phy要求上电完成后的复位时间。处理器10通过将写寄存器配置phy_reset为低电平,作为第二触发指令,pciephy20开始复位释放。pciephy20通过程序加载组件207从只读存储器208中向静态随机存储器201加载代码。
在一种可能的实现方式中,当从只读存储器208中向静态随机存储器201加载代码完成时,将外部静态存储器初始化加载完毕指示寄存器(简称,sram_init_load_done)配置为高电平。处理器10轮询sram_init_load_done,当sram_init_load_done为高电平时,即获得初始化加载完毕指示信号。
请参考图6和图7,分别为本申请实施例提供的寄存器配置总线时序图和静态随机存储器总线时序图。
图6和图7所示为本申请实施例中可能时序图,应当理解,此时序图只是应用例的实现方式之一,在此不做任何限定。
请参阅图8,图8为本申请实施例提供的一种phy参数调试装置,可选的,该phy参数调试装置被应用于上文所述的处理器10。
phy参数调试装置包括:处理单元301和信息收发单元302。
处理单元301,用于当获得初始化加载完毕指示信号时,修改静态随机存储器中的数据,其中,初始化加载完毕指示信号表征从只读存储器向静态随机存储器加载代码完成。具体地,处理单元301可以执行上述的s102。
信息收发单元302,用于当静态随机存储器中的数据修改完成时,向pciephy发送第一触发指令,以使pciephy从静态随机存储器中读取数据,用于执行pciephy中每一个通道的校准和自适应算法。具体地,信息收发单元302可以执行上述的s103。
在一种可能的实现方式中,处理单元301具体用于通过选择器确定修改接口;通过修改接口修改静态随机存储器中的数据。具体地,处理单元301可以执行上述的s102-1和s102-2。
修改接口为片上系统寄存器接口、联合测试工作组寄存器接口或者pciephy寄存器接口。
信息收发单元302还用于在pciephy上电完成后,等待预设定的时间,向pciephy发送第二触发指令,以使只读存储器向静态随机存储器加载代码。具体地,信息收发单元302可以执行上述的s101。
需要说明的是,本实施例所提供的phy参数调试装置,其可以执行上述方法流程实施例所示的方法流程,以实现对应的技术效果。为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。
本发明实施例还提供了一种存储介质,该存储介质存储有计算机指令、程序,该计算机指令、程序在被读取并运行时执行上述实施例的phy参数调试方法。该存储介质可以包括内存、闪存、寄存器或者其结合等。
下面提供一种电子设备,该电子设备包括存储器和如图1所示的芯片。电子设备可以实现上述的phy参数调试方法;具体的,该电子设备包括:处理器10、pclephy20和存储器。处理器10分别与pclephy20、存储器电连接。处理器10可以是cpu。存储器用于存储一个或多个程序,当一个或多个程序被处理器10执行时,执行上述实施例的phy参数调试方法。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其它的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。