CN116627861B - 基于扩展器的数据处理方法、***、电子设备及存储介质 - Google Patents

基于扩展器的数据处理方法、***、电子设备及存储介质 Download PDF

Info

Publication number
CN116627861B
CN116627861B CN202310915410.8A CN202310915410A CN116627861B CN 116627861 B CN116627861 B CN 116627861B CN 202310915410 A CN202310915410 A CN 202310915410A CN 116627861 B CN116627861 B CN 116627861B
Authority
CN
China
Prior art keywords
information
target
data
expander
register
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.)
Active
Application number
CN202310915410.8A
Other languages
English (en)
Other versions
CN116627861A (zh
Inventor
王军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202310915410.8A priority Critical patent/CN116627861B/zh
Publication of CN116627861A publication Critical patent/CN116627861A/zh
Application granted granted Critical
Publication of CN116627861B publication Critical patent/CN116627861B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)
  • Digital Computer Display Output (AREA)

Abstract

本发明提供一种基于扩展器的数据处理方法、***、电子设备及存储介质,涉及数据交互技术领域,该方法包括:获取第一输入信息,其中,第一输入信息包括确定目标扩展器的目标物理端口信息和目标交互功能信息的操作信息;响应于第一输入信息,根据目标物理端口信息,获取对应的目标寄存器地址信息,并根据目标寄存器地址信息和目标交互功能信息,生成数据交互指令信息;将数据交互指令信息发送到目标扩展器,获取数据交互处理结果,其中,数据交互处理结果是目标扩展器对目标寄存器数据执行目标交互功能信息对应的数据交互处理后得到的,目标寄存器数据为目标寄存器地址信息在目标扩展器中对应的寄存器数据。本发明提高了数据处理过程效率。

Description

基于扩展器的数据处理方法、***、电子设备及存储介质
技术领域
本发明涉及数据交互技术领域,尤其涉及一种基于扩展器的数据处理方法、***、电子设备及存储介质。
背景技术
在存储***中,扩展器(Expander)用于扩展存储设备之间连接的组件,并提供额外的端口和带宽,例如,硬盘驱动器通常通过串行SCSI接口(Serial Attached SCSI,简称SAS)与主机或存储控制器连接,扩展器允许将多个存储设备连接到单个主机或存储控制器,同时,通过扩展SAS端口的数量,提供了更多的连接性和可用性。
通过扩展器实现对SAS端口的扩展,可以扩展到36/48/64个,从而对应多个物理(Physicial,简称PHY)端口,每个PHY端口有独立的寄存器配置空间(包括物理层寄存器和链路层寄存器),用于将数据进行物理传输,处理输入/输出(Input/Output,简称IO)业务,使得每一个PHY端口可能对应有几百个寄存器。
由于扩展器运行几十个独立的PHY链路,每个PHY链路有几百个独立的寄存器,这么大的信息量不能够全部记录到日志里。现有通过相关指令查询或处理对应的寄存器信息,通过每一次输入一条指令,从而查询到一个对应信息,或实现相应的PHY功能。然而,对于查询或处理多个寄存器信息时,需要输入几十甚至几百条指令,导致现有扩展器的数据处理过程效率较低。因此,现在亟需一种基于扩展器的数据处理方法、***、电子设备及存储介质来解决上述问题。
发明内容
针对现有技术存在的问题,本发明提供一种基于扩展器的数据处理方法、***、电子设备及存储介质。
本发明提供一种基于扩展器的数据处理方法,应用于用户端,包括:
获取第一输入信息,其中,所述第一输入信息包括确定目标扩展器的目标物理端口信息和目标交互功能信息的操作信息;
响应于所述第一输入信息,根据所述目标物理端口信息,获取对应的目标寄存器地址信息,并根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息;
将所述数据交互指令信息发送到所述目标扩展器,获取数据交互处理结果,其中,所述数据交互处理结果是所述目标扩展器对目标寄存器数据执行所述目标交互功能信息对应的数据交互处理后得到的,所述目标寄存器数据为所述目标寄存器地址信息在所述目标扩展器中对应的寄存器数据。
根据本发明提供的一种基于扩展器的数据处理方法,所述获取第一输入信息,包括:
获取所述用户端的表格显示界面上的勾选项状态信息,其中,所述表格显示界面包括物理端口选项和交互功能选项;
根据所述物理端口选项对应的所述勾选项状态信息,确定所述目标物理端口信息;
根据所述交互功能选项对应的所述勾选项状态信息,确定所述目标交互功能信息;
根据所述目标物理端口信息和所述目标交互功能信息,获取所述第一输入信息。
根据本发明提供的一种基于扩展器的数据处理方法,在所述获取所述用户端的表格显示界面上的勾选项状态信息之前,所述方法还包括:
获取所述目标扩展器的配置文件信息;
对所述配置文件信息进行解析,获取所述目标扩展器中各个物理端口与寄存器地址之间的映射关系,以及各个物理端口对应的寄存器指令类型信息,其中,各个所述寄存器指令类型信息对应不同的物理端口指令控制功能;
基于所述映射关系,根据所述各个物理端口的端口号和所述寄存器指令类型信息,生成所述表格显示界面;
所述响应于所述第一输入信息,根据所述目标物理端口信息,获取对应的目标寄存器地址信息,包括:
根据所述映射关系,确定所述目标物理端口信息对应的所述目标寄存器地址信息。
根据本发明提供的一种基于扩展器的数据处理方法,所述目标交互功能信息包括查询功能交互信息和控制功能交互信息;
所述根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息,包括:
若所述目标交互功能信息为所述查询功能交互信息,生成查询命令提示符,并确定第一数据类型信息,其中,所述第一数据类型信息为待查询的寄存器数据的数据类型信息;
基于所述查询命令提示符,根据目标映射关系和所述第一数据类型信息,生成所述数据交互指令信息,以通过所述数据交互指令信息查询所述目标扩展器中的寄存器数据;其中,所述目标映射关系为所述目标物理端口信息与所述目标寄存器地址信息之间的映射关系。
根据本发明提供的一种基于扩展器的数据处理方法,所述对所述配置文件信息进行解析,还包括:
获取所述目标扩展器中各个物理端口与扩展插槽之间的对应关系;
所述方法还包括:
根据槽位故障信息,确定所述目标扩展器中的故障扩展插槽;
基于所述对应关系,获取所述故障扩展插槽对应的物理端口,以通过所述故障扩展插槽对应的物理端口和所述映射关系进行寄存器数据查询。
根据本发明提供的一种基于扩展器的数据处理方法,所述根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息,还包括:
若所述目标交互功能信息为所述控制功能交互信息,生成所述查询命令提示符和控制命令提示符,并确定第二数据类型信息,其中,所述第二数据类型信息为待进行数据写入的寄存器数据的数据类型信息;
基于所述查询命令提示符,根据所述目标映射关系和所述第二数据类型信息,获取所述待进行数据写入的寄存器数据对应的所有寄存器指令类型信息和当前参数值;
根据所述控制功能交互信息,确定目标寄存器指令类型信息或目标参数修改值,其中,所述目标参数修改值用于对所述当前参数值进行修改;
基于所述控制命令提示符,根据所述目标寄存器指令类型信息或所述目标参数修改值,以及所述目标映射关系和所述第二数据类型信息,生成所述数据交互指令信息。
根据本发明提供的一种基于扩展器的数据处理方法,在所述获取所述目标扩展器的配置文件信息之后,所述方法还包括:
根据所述目标扩展器对应连接的硬件设备类型,确定目标传输端口类型,其中,所述目标传输端口类型至少包括串口类型、并口类型和网口类型;
根据所述目标传输端口类型,生成对应的传输端口切换提示信息,以通过所述用户端的显示终端进行展示。
根据本发明提供的一种基于扩展器的数据处理方法,所述交互功能选项包括物理端口初始化状态信息交互选项、寄存器地址信息交互选项、输入输出信息交互选项、物理控制功能交互信息和机箱管理信息交互选项。
本发明还提供一种基于扩展器的数据处理方法,应用于所述扩展器,包括:
获取用户端发送的数据交互指令信息,其中,所述数据交互指令信息包括目标寄存器地址信息和目标交互功能信息;所述目标寄存器地址信息是所述用户端根据目标映射关系和目标物理端口信息确定得到的;所述目标映射关系是所述用户端对所述扩展器的配置文件信息进行解析后,获取到的所述扩展器中各个物理端口和寄存器地址之间的映射关系;
对所述目标寄存器数据进行所述目标交互功能信息对应的数据交互处理,并将得到的数据交互处理结果发送至所述用户端,其中,所述目标寄存器数据为所述目标寄存器地址信息在所述扩展器中对应的寄存器数据。
根据本发明提供的一种基于扩展器的数据处理方法,所述获取用户端发送的数据交互指令信息,包括:
基于端口驱动层,通过中断方式,接收所述用户端发送的指令数据;
对接收到的所述指令数据进行完整性检测,若确定接收到完整的数据,获取所述数据交互指令信息。
根据本发明提供的一种基于扩展器的数据处理方法,所述对所述目标寄存器数据进行所述目标交互功能信息对应的数据交互处理,包括:
基于指令执行层,对所述数据交互指令信息进行解析,若解析得到的命令提示符为查询命令提示符,根据所述目标寄存器地址信息和第一数据类型信息,获取待查询的寄存器数据,其中,所述第一数据类型信息为所述待查询的寄存器数据的数据类型信息;
将所述待查询的寄存器数据发送到所述用户端。
根据本发明提供的一种基于扩展器的数据处理方法,所述方法还包括:
若解析得到的命令提示符为控制命令提示符,根据所述目标寄存器地址信息和第二数据类型信息,确定待进行数据写入的寄存器数据,其中,所述第二数据类型信息为所述待进行数据写入的寄存器数据的数据类型信息;
将所述待进行数据写入的寄存器数据发送到所述用户端之后,获取目标寄存器指令类型信息或目标参数修改值,其中,所述目标寄存器指令类型信息对应一种物理端口指令控制功能;所述目标参数修改值用于对所述待进行数据写入的寄存器数据的当前参数值进行修改;
根据所述目标寄存器指令类型信息,执行对应的物理端口指令控制功能,得到物理端口指令控制结果;或,根据所述目标参数修改值,对所述待进行数据写入的寄存器数据中的当前参数值进行修改,得到参数修改结果;
将所述物理端口指令控制结果或所述参数修改结果返回所述用户端。
根据本发明提供的一种基于扩展器的数据处理方法,在所述获取用户端发送的数据交互指令信息之前,所述方法还包括:
接收第二输入信息,所述第二输入信息包括查询所述扩展器的配置文件信息的操作信息;
响应于所述第二输入信息,将配置文件信息发送至所述用户端,其中,所述配置文件信息包括所述扩展器中各个物理端口与寄存器地址之间的映射关系,以及各个物理端口对应的寄存器指令类型信息,其中,各个所述寄存器指令类型信息对应不同的物理端口指令控制功能。
根据本发明提供的一种基于扩展器的数据处理方法,所述方法还包括:
获取已连接设备的硬件设备类型信息;
将所述硬件设备类型信息发送至所述用户端,以供所述用户端根据所述硬件设备类型信息,建立目标传输端口与所述扩展器之间的连接,其中,所述目标传输端口至少包括串口、并口和网口。
根据本发明提供的一种基于扩展器的数据处理方法,所述方法还包括:
通过预设指令模型,对所述目标寄存器指令类型信息进行匹配,若所述目标寄存器指令类型信息与所述预设指令模型中的预设物理端口指令控制功能匹配成功,执行所述数据交互指令信息,其中,所述预设指令模型中设置有所述扩展器可执行多种预设物理端口指令控制功能。
本发明还提供一种基于扩展器的数据处理***,应用于用户端,包括:
交互模块,用于获取第一输入信息,其中,所述第一输入信息包括确定目标扩展器的目标物理端口信息和目标交互功能信息的操作信息;
处理模块,用于响应于所述第一输入信息,根据所述目标物理端口信息,获取对应的目标寄存器地址信息,并根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息;
调试模块,用于将所述数据交互指令信息发送到所述目标扩展器,获取数据交互处理结果,其中,所述数据交互处理结果是所述目标扩展器对目标寄存器数据执行所述目标交互功能信息对应的数据交互处理后得到的,所述目标寄存器数据为所述目标寄存器地址信息在所述目标扩展器中对应的寄存器数据。
根据本发明提供的一种基于扩展器的数据处理***,所述交互模块包括:
显示界面输入单元,用于获取所述用户端的表格显示界面上的勾选项状态信息,其中,所述表格显示界面包括物理端口选项和交互功能选项;
端口信息处理单元,用于根据所述物理端口选项对应的所述勾选项状态信息,确定所述目标物理端口信息;
功能信息处理单元,用于根据所述交互功能选项对应的所述勾选项状态信息,确定所述目标交互功能信息;
输入信息生成单元,用于根据所述目标物理端口信息和所述目标交互功能信息,获取所述第一输入信息。
本发明还提供一种基于扩展器的数据处理***,应用于所述扩展器,包括:
端口驱动模块,用于获取用户端发送的数据交互指令信息,其中,所述数据交互指令信息包括目标寄存器地址信息和目标交互功能信息;所述目标寄存器地址信息是所述用户端根据目标映射关系和目标物理端口信息确定得到的;所述目标映射关系是所述用户端对所述扩展器的配置文件信息进行解析后,获取到的所述扩展器中各个物理端口和寄存器地址之间的映射关系;
指令执行模块,用对所述目标寄存器数据进行所述目标交互功能信息对应的数据交互处理,并将得到的数据交互处理结果发送至所述用户端,其中,所述目标寄存器数据为所述目标寄存器地址信息在所述扩展器中对应的寄存器数据。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于扩展器的数据处理方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于扩展器的数据处理方法。
本发明提供的基于扩展器的数据处理方法、***、电子设备及存储介质,通过前期建立的PHY端口与寄存器地址的映射关系,可快速查询到扩展器中每个PHY端口对应的寄存器的全量信息,实现对单个或多个PHY端口进行动态控制,提高了数据处理过程效率。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图进行简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的基于扩展器的数据处理方法的流程示意图之一;
图2为本发明提供的基于扩展器的数据处理方法的流程示意图之二;
图3为本发明提供的基于扩展器的指令操作对象示意图;
图4为本发明提供的基于扩展器的指令交互整体流程图;
图5为本发明提供的基于扩展器的数据处理***的结构示意图之一;
图6为本发明提供的基于扩展器的数据处理***的结构示意图之二;
图7为本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
存储***以高可靠和高速率为要求,处理服务器和硬盘之间传输的海量数据,对于***接口,中央处理器(Central Processing Unit,简称CPU)在处理业务数据时,对外有高速串行计算机扩展总线标准(Peripheral Component Interconnect Express,简称PCIE)接口,而硬盘设备通用的是SAS接口,通常会将PCIE接口转换为SAS接口,并且由扩展器对接到每个硬盘,以保证存储***与每个硬盘之间进行IO通信;除此之外,扩展器还能实现机箱管理功能,可实时检测机箱内各类硬件的状态,确定是否出现故障异常。
在开发过程中,通过扩展器提供对应的交互接口,从而对每个PHY端口执行如下操作:初始化配置、打开或者关闭、各类状态寄存器的查询、调试配置参数、控制寄存器配置以及故障注入测试等。在维护过程中,当硬盘发生故障时,通过扩展器查看寄存器状态,从而判定故障原因。
现有扩展器通常是运行几十个独立的PHY链路,而每个PHY链路又有几百个独立的寄存器。当发生硬盘故障,需要查看链路状态时,链路状态寄存器,每一个PHY链路都有Change count、Invalid DWORDs、Disparity Errors和Dowrd Sync lost等十几个寄存器,对于有36个PHY链路的扩展器来说,有超过360个寄存器,对于有68个PHY链路的扩展器,有超过680个寄存器。按照现有的日志记录和指令查询方式,需要逐个执行查询指令,一方面用户要知晓具体的指令,一方面要交互很多次。对于如此大量的信息量,不能够全部记录到日志里,现有在进行开发调试或故障定位时,需要针对数据处理需求(如查询某个寄存器数据,或对寄存器数据的参数进行修改)以人工方式输入大量的指令,导致效率较低,不利于开发调试和故障定位。
图1为本发明提供的基于扩展器的数据处理方法的流程示意图之一,如图1所示,本发明提供了一种基于扩展器的数据处理方法,应用于用户端,包括:
步骤101,获取第一输入信息,其中,所述第一输入信息包括确定目标扩展器的目标物理端口信息和目标交互功能信息的操作信息。
在本发明中,通过在用户端(如服务器端的操作平台)的显示终端上,为用户提供相应的扩展器信息查询和控制选项,进而将勾选的选项内容转义为交互指令,并将交互指令发送至扩展器,使得扩展器根据该交互指令执行相应的数据处理过程(如数据查询和参数修改等),并由扩展器将处理结果返回至用户端。
具体地,在上述实施例的基础上,所述获取第一输入信息,包括:
获取所述用户端的表格显示界面上的勾选项状态信息,其中,所述表格显示界面包括物理端口选项和交互功能选项;
根据所述物理端口选项对应的所述勾选项状态信息,确定所述目标物理端口信息;
根据所述交互功能选项对应的所述勾选项状态信息,确定所述目标交互功能信息;
根据所述目标物理端口信息和所述目标交互功能信息,获取所述第一输入信息。
在本发明中,通过用户端开发一个可视化工具,从而为用户提供进行扩展器信息查询和控制的方法。具体地,在该工具内部,利用通信端口(如串口、并口和网口)与扩展器进行指令的交互,将“用户所需要的信息”即用户在可视化工具的操作界面上勾选的选项信息,转义成“批量的交互指令”,从而自动完成指令的收发,并将扩展器一侧的执行结果进行可视化显示。在本发明中,扩展器接收交互指令,“以指令的方式”执行,并返回相应的结果。
在本发明中,可视化工具按照设计、开发、维护阶段,针对不同类型的扩展器获取到的相关信息(例如,扩展器型号信息、寄存器地址信息和寄存器功能类型等),形成各种交互的界面和指令,使得在用户端能够利用通信端口与扩展器进行指令的交互,并将用户在可视化工具上的操作自动转换成每个PHY_ID的查询指令或控制指令,从而 省却用户的批量指令执行,并能大量的显示,针对开发调试和产品维护阶段,极大提高数据处理效率。
在本发明中,用户端通过可视化工具,形成二维数组表的表格显示界面。在一实施例中,若本次交互功能为查询功能,即在用户端的可视化工具上勾选了表格显示界面中本次需要查询的PHY端口号,当扩展器将查询信息返回后,得到对应的查询任务,并在表格显示界面上进行显示,其中,表格显示界面中的横向为各类PHY信息,纵向对应每个PHY端口的ID。在另一实施例中,若本次交互功能为控制功能,在用户端的可视化工具上勾选了表格显示界面中本次需要查询的PHY端口号,同时,可视化工具也会根据不同类型的扩展器的寄存器控制功能,在表格显示界面上提供各个PHY端口号对应的控制功能选项,使得任意选项被勾选后,可自动转义为扩展器可识别的指令,进而通过PHY端口对应的寄存器数据实现相应的控制功能。具体地,所述交互功能选项包括PHY端口初始化状态信息交互选项、寄存器地址信息交互选项、输入输出信息交互选项、物理控制功能交互信息和机箱管理信息交互选项,这些交互选项可根据查询和控制需求在表格显示界面进行相应设置。
在本发明中,可视化工具为用户提供了便捷的操作方式,只需要点击界面上的信息,由工具转义成与扩展器交互的批量指令,能够同时发送多条指令,指令数目等于PHY数目,并能将结果按照PHY端口结构显示,在提高数据处理效率的同时也提高了用户体验度。
步骤102,响应于所述第一输入信息,根据所述目标物理端口信息,获取对应的目标寄存器地址信息,并根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息。
在一实施例中,通过用户端的可视化工具,在表格显示界面上选取 “读”按钮,同时每个“读”按钮对应一个PHY端口ID,即通过用户端可以选取当前需要查询的PHY端口的寄存器数据,再将这个读操作转义成向扩展器发送的查询指令;对于查询多个端口时,通过批量的发送指令,逐个发送入参为每个PHY端口ID的指令,以查询每个PHY端口ID对应的寄存器信息。在本发明中,可根据待查询数据的数据类型信息,在表格显示界面上设置相应的选项,例如,设置选项为查询寄存器指令信息选项,当该选项被勾选之后,扩展器会根据接收到的查询指令,反馈对应的寄存器指令查询结果。
在另一实施例中,通过用户端的可视化工具,在表格显示界面上选取“写”按钮;同时,表格显示界面的横向展示有多个控制信息选项(基于不同类型扩展器所能实现的功能生成),进而根据不同的控制需求,勾选表格显示界面上的各个控制信息选项。在本实施例中,各个控制信息选项对应不同类别的命令提示符(Command Prompt,简称CMD),便于用户选取相应的控制方式,例如,每个PHY端口的初始化配置、物理层寄存器的读和写、链路层寄存器的读和写以及机箱管理信息的读和写等,从而将当前勾选的选项信息,转义成向扩展器发送的控制指令。表1为控制PHY端口的使能和信号翻转的表格显示界面的表格内容,可参考表1所示:
表1
在表1中,若R/W被勾选,则表示对应的PHY端口需要执行相应的读写操作,当确定PHY端口1至PHY端口4被勾选之后,进而再根据勾选的控制信息选项,确定本次需要扩展器实现的相应控制功能,例如,PHY端口1至PHY端口3的“PHY Enable”和“RX Swap”选项被勾选,扩展器会接收到对应的控制指令,进而对PHY端口1至PHY端口3进行设置,将前3个PHY使能,同时对这3个PHY进行RX(接收)信号翻转;相应地,PHY端口4的“PHY Enable”和“TXSwap”选项被勾选,扩展器会接收到对应的控制指令,进而对PHY端口4进行设置,将PHY4使能,同时对PHY4进行TX(输出)信号翻转。
在本实施例中,根据交互功能信息,首先查询到相应的寄存器数据,查询到的寄存器数据会在表格显示界面上进行展示,同时在表格显示界面上提供修改功能,实现对不同PHY端口相应的寄存器数据进行参数修改。优选地,在本实施例中,针对不同PHY端口的寄存器控制功能,在表格显示界面上可直接显示相应的参数功能选项,即直接在该选项中填入对应的参数设定值,而无需用户重新设置整个寄存器指令,例如,在示波器测量中,不同寄存器的比特位范围对应不同的功能,在表格显示界面上,各项功能选项的参数设定值与比特位范围对应,使得在进行参数修改时,只是对相应比特位范围的参数进行修改,能够在短时间内得到大量参数下的信号质量。表2为针对输出信号调试的表格显示界面的表格内容,可参考表2所示:
表2
在表2中,根据勾选的读写选项,确定PHY1至PHY4对应的参数值需要修改(具体数值可根据实际填写),进而根据填入的参数修改值,在扩展器接收到对应的参数修改指令后,快速完成参数的写入。优选地,在本实施例中,对于参数修改这种交互功能场景,首先通过读操作,获取当前参数值,并通过可视化界面进行展示,使得用户可根据展示的当前参数值进行参考,再在表格显示界面对应的功能选项的参数设定值进行修改,以提高设备的稳定性。
在本发明中,表格显示界面中的各个选项已在前期构建了PHY端口信息与寄存器地址信息的映射关系,同时,不同PHY端口ID的寄存器地址对应不同的控制功能,从而建立表格显示界面的功能选项,当某个功能选项被勾选后,用户端根据PHY端口信息和对应的寄存器地址信,结合功能选项所要实现的功能类型,生成数据交互指令信息,进而将这个数据交互指令信息发送到扩展器,使得扩展器根据相应PHY端口的寄存器数据进行相应的处理,以将查询结果或控制结果返回用户端。
步骤103,将所述数据交互指令信息发送到所述目标扩展器,获取数据交互处理结果,其中,所述数据交互处理结果是所述目标扩展器对目标寄存器数据执行所述目标交互功能信息对应的数据交互处理后得到的,所述目标寄存器数据为所述目标寄存器地址信息在所述目标扩展器中对应的寄存器数据。
在本发明中,用户端获取到扩展器返回的数据交互处理结果,例如,查询一个或多个PHY端口ID的信息,通过可视化工具获取扩展器一侧对于指令的响应,在所有PHY端口ID信息查询完毕后,将查询结果在可视化工具以界面的方式展示出来。在一实施例中,当需要查询寄存器指令时,用户点击读指令,并勾选了寄存器指令查询选项(该选项可根据实际需要,设置多种子项),进一步地,用户端基于勾选项信息,批量解析当前需要查询的寄存器指令的PHY端口信息和寄存器地址信息,并将解析得到查询指令发送至扩展器,在完成所有查询之后,用户端通过可视化工具将查询结果以二维表的方式展示出来,具体可参考表3所示:
表3
以表3的形式,快速查询得到各个PHY端口的寄存器指令,能够较便捷对可能存在的故障类型进行定位。
本发明提供的基于扩展器的数据处理方法,通过前期建立的PHY端口与寄存器地址的映射关系,可快速查询到扩展器中每个PHY端口对应的寄存器的全量信息,实现对单个或多个PHY端口进行动态控制,提高了数据处理过程效率。
在上述实施例的基础上,在所述获取所述用户端的表格显示界面上的勾选项状态信息之前,所述方法还包括:
获取所述目标扩展器的配置文件信息;
对所述配置文件信息进行解析,获取所述目标扩展器中各个物理端口与寄存器地址之间的映射关系,以及各个物理端口对应的寄存器指令类型信息,其中,各个所述寄存器指令类型信息对应不同的物理端口指令控制功能;
基于所述映射关系,根据所述各个物理端口的端口号和所述寄存器指令类型信息,生成所述表格显示界面;
所述响应于所述第一输入信息,根据所述目标物理端口信息,获取对应的目标寄存器地址信息,包括:
根据所述映射关系,确定所述目标物理端口信息对应的所述目标寄存器地址信息。
在本发明中,针对每种型号扩展器的PHY端口数目和配置不一样,其能够访问的寄存器空间有所差异,通过获取不同型号扩展器的机型配置文件,实现用户端内可视化工具对各种型号的扩展器均适用,从而根据每种型号的扩展器,生成相应的表格显示界面。具体地,当可视化工具启动时,首先根据传输的端口,使用对应的调试终端,如串口工具、网络安全外壳协议(Secure Shell,简称SSH)等;然后,可视化工具进入初始化阶段,自动发起扩展器型号查询指令,根据查询到的扩展器型号,解析该型号对的配置文件,解析得到的配置文件信息包含:扩展器的PHY数目、寄存器地址、每个PHY端口ID与槽位SLOT_ID的对应关系、机箱管理信息配置以及寄存器指令类型等。通过解析当前扩展器对应的配置文件,以建立各个PHY端口与寄存器地址之间的映射关系,进而确定不同类型寄存器(如控制寄存器、状态寄存器和错误计数寄存器等)的寄存器指令类型信息,使得可视化工具根据前期构建好的各种型号扩展器的映射关系等信息,生成对应的表格显示界面,以便于用户在用户端上操作相应的交互功能。
在上述实施例的基础上,所述目标交互功能信息包括查询功能交互信息和控制功能交互信息;
所述根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息,包括:
若所述目标交互功能信息为所述查询功能交互信息,生成查询命令提示符,并确定第一数据类型信息,其中,所述第一数据类型信息为待查询的寄存器数据的数据类型信息;
基于所述查询命令提示符,根据目标映射关系和所述第一数据类型信息,生成所述数据交互指令信息,以通过所述数据交互指令信息查询所述目标扩展器中的寄存器数据;其中,所述目标映射关系为所述目标物理端口信息与所述目标寄存器地址信息之间的映射关系。
在本发明中,可视化工具上的勾选项目对应不同的功能,对于向扩展器进行查询的功能,当勾选到查询这个选项后,首先生成一个查询命令符,进而根据勾选的待查询寄存器数据的地址信息和数据类型信息,对这个查询命令符的相关参数进行设置,形成一个完整的查询指令,由于用户只需在表格显示界面上进行相应的勾选操作即可自动生成查询指令,并发送至扩展器执行,从而提高了扩展器的数据查询效率。
在上述实施例的基础上,所述对所述配置文件信息进行解析,还包括:
获取所述目标扩展器中各个物理端口与扩展插槽之间的对应关系;
所述方法还包括:
根据槽位故障信息,确定所述目标扩展器中的故障扩展插槽;
基于所述对应关系,获取所述故障扩展插槽对应的物理端口,以通过所述故障扩展插槽对应的物理端口和所述映射关系进行寄存器数据查询。
在本发明中,当扩展器中某槽位的硬盘通信异常时,可根据前期解析得到的PHY端口与扩展插槽之间的对应关系,查询某个槽位SLOT_ID对应的PHY端口ID,进而在根据这个PHY端口ID查询对应的寄存器数据,从而快速对插槽进行故障分析。
在上述实施例的基础上,所述根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息,还包括:
若所述目标交互功能信息为所述控制功能交互信息,生成所述查询命令提示符和控制命令提示符,并确定第二数据类型信息,其中,所述第二数据类型信息为待进行数据写入的寄存器数据的数据类型信息;
基于所述查询命令提示符,根据所述目标映射关系和所述第二数据类型信息,获取所述待进行数据写入的寄存器数据对应的所有寄存器指令类型信息和当前参数值;
根据所述控制功能交互信息,确定目标寄存器指令类型信息或目标参数修改值,其中,所述目标参数修改值用于对所述当前参数值进行修改;
基于所述控制命令提示符,根据所述目标寄存器指令类型信息或所述目标参数修改值,以及所述目标映射关系和所述第二数据类型信息,生成所述数据交互指令信息。
在本发明中,可参考表1和表2所示,通过在表格显示界面上勾选当前需要控制的PHY端口以及所需要实现的寄存器功能选项后,基于首先会生成一个查询命令提示符,并发送至扩展器,从而获取到该扩展器中PHY端口所对应的所有寄存器指令类型信息和当前参数值,进而在用户端通过可视化工具,生成由寄存器指令类型信息组成的表格显示界面和当前参数值组成的表格显示界面(如表1和表2所示,也可根据实际需求,生成一个表格显示界面,即该界面中即可勾选控制信息选项,也可进行参数值修改)。进一步地,根据不同的控制信息选项的勾选结果或参数修改值,生成对应的控制命令提示符,以使得扩展器在接收到该控制指令后,对相应的寄存器数据执行指令,实现控制功能。
在上述实施例的基础上,在所述获取所述目标扩展器的配置文件信息之后,所述方法还包括:
根据所述目标扩展器对应连接的硬件设备类型,确定目标传输端口类型,其中,所述目标传输端口类型至少包括串口类型、并口类型和网口类型;
根据所述目标传输端口类型,生成对应的传输端口切换提示信息,以通过所述用户端的显示终端进行展示。
在本发明中,用户端与扩展器之间的传输端口包括串口、并口和网口等,根据目标扩展器对应连接的硬件设备类型,生成适当的传输端口提示信息,以使得用户选取合适的接口实现用户端与扩展器之间的指令传输,例如,扩展器连接的设备为硬盘,则可采用串口;当连接的是网络设备时,则可采用网口,提高数据传输效率。
图2为本发明提供的基于扩展器的数据处理方法的流程示意图之二,如图2所示,本发明提供了一种基于扩展器的数据处理方法,应用于所述扩展器,包括:
步骤201,获取用户端发送的数据交互指令信息,其中,所述数据交互指令信息包括目标寄存器地址信息和目标交互功能信息;所述目标寄存器地址信息是所述用户端根据目标映射关系和目标物理端口信息确定得到的;所述目标映射关系是所述用户端对所述扩展器的配置文件信息进行解析后,获取到的所述扩展器中各个物理端口和寄存器地址之间的映射关系;
步骤202,对所述目标寄存器数据进行所述目标交互功能信息对应的数据交互处理,并将得到的数据交互处理结果发送至所述用户端,其中,所述目标寄存器数据为所述目标寄存器地址信息在所述扩展器中对应的寄存器数据。
扩展器中运行的程序为固件程序(Firmware,简称FW),现有扩展器运行实时操作***,没有丰富的通用指令,不能根据需要直接在FW上执行程序,需要借助于执行Linux***的平台实现调试,由此需要借助于SAS带内通道,进行单独访问接口的开发,可能会影响到正常功能。
在本发明中,通过对扩展器的FW进行改进,在FW中新增指令交互模块,包括端口驱动层和指令执行层。通过端口驱动层接收用户端发送的指令数据,通过指令执行层将接收到的指令数据解析成具体的命令提示符,并执行该命令提示符,并将执行结果返回到用户端,以供用户端的显示终端展示执行结果。
在本发明还提供了一种扩展器芯片,该扩展器芯片中设置有上述实施例提供的FW,可实现SAS链路的扩展,如扩展36、48和64等相当数量的PHY链路;同时,可根据用户端发送的数据交互指令信息,快速完成相应的寄存器查询和控制过程,提高数据处理效率。
在上述实施例的基础上,所述获取用户端发送的数据交互指令信息,包括:
基于端口驱动层,通过中断方式,接收所述用户端发送的指令数据;
对接收到的所述指令数据进行完整性检测,若确定接收到完整的数据,获取所述数据交互指令信息。
在本发明中,端口驱动层实现对指令传输端口的驱动程序,以中断方式,检测端口接收的数据,并在确定接收到完整数据后,通知指令执行层已获取到数据交互指令信息,并将指令执行层的Response返回给用户端,使得扩展器可以快速接收到用户端发送的指令数据。
当指令执行层接收到端口驱动层的指令数据后,即数据交互指令信息,将其解析成具体的命令提示符,并执行该命令提示符,具体地,所述对所述目标寄存器数据进行所述目标交互功能信息对应的数据交互处理,包括:
基于指令执行层,对所述数据交互指令信息进行解析,若解析得到的命令提示符为查询命令提示符,根据所述目标寄存器地址信息和第一数据类型信息,获取待查询的寄存器数据,其中,所述第一数据类型信息为所述待查询的寄存器数据的数据类型信息;
将所述待查询的寄存器数据发送到所述用户端。
在上述实施例的基础上,所述方法还包括:
若解析得到的命令提示符为控制命令提示符,根据所述目标寄存器地址信息和第二数据类型信息,确定待进行数据写入的寄存器数据,其中,所述第二数据类型信息为所述待进行数据写入的寄存器数据的数据类型信息;
将所述待进行数据写入的寄存器数据发送到所述用户端之后,获取目标寄存器指令类型信息或目标参数修改值,其中,所述目标寄存器指令类型信息对应一种物理端口指令控制功能;所述目标参数修改值用于对所述待进行数据写入的寄存器数据的当前参数值进行修改;
根据所述目标寄存器指令类型信息,执行对应的物理端口指令控制功能,得到物理端口指令控制结果;或,根据所述目标参数修改值,对所述待进行数据写入的寄存器数据中的当前参数值进行修改,得到参数修改结果;
将所述物理端口指令控制结果或所述参数修改结果返回所述用户端。
在本发明中,当CMD为写指令时,返回的写状态包括写成功结果和写失败结果,对于解析得到的控制指令,指令执行层将控制结果返回至用户端;当CMD为读指令时,返回的读状态包括读成功结果和读失败结果,以及对应的读结果(read_data),即查询结果;进一步地,通过指令执行层,将返回结果作为Response响应数据。在一实施例中,定义CMD的格式为:{cmd + 入参},其中,根据实际应用,定义具体的CMD,如:查询Expander型号,每个PHY的初始化配置、物理层寄存器的读和写、链路层寄存器的读和写以及机箱管理信息的读和写等。需要说明的是,在本发明中,当命令提示符为控制命令提示符时,首先会先根据待进行数据写入的寄存器数据的相关信息(如地址信息,PHY端口信息等)读取该寄存器数据,进而根据读取得到的寄存器数据,执行相应的控制命令提示符,以完成相应的功能。
在本发明中,根据用户端发送的数据交互指令信息的解析结果,入参包括包含:1、PHY端口ID,以针对每个ID执行相应的指令;2、查询和控制的信息类别;3、寄存器地址;4、设置的具体值,即参数修改值。
本发明提供的基于扩展器的数据处理方法,通过前期建立的PHY端口与寄存器地址的映射关系,可快速查询到扩展器中每个PHY端口对应的寄存器的全量信息,实现对单个或多个PHY端口进行动态控制,提高了数据处理过程效率。
在上述实施例的基础上,在所述获取用户端发送的数据交互指令信息之前,所述方法还包括:
接收第二输入信息,所述第二输入信息包括查询所述扩展器的配置文件信息的操作信息;
响应于所述第二输入信息,将配置文件信息发送至所述用户端,其中,所述配置文件信息包括所述扩展器中各个物理端口与寄存器地址之间的映射关系,以及各个物理端口对应的寄存器指令类型信息,其中,各个所述寄存器指令类型信息对应不同的物理端口指令控制功能。
在本发明中,扩展器在上电并连接用户端之后,首先会接收用户端发送的配置信息查询指令,使得用户端在接收到扩展器自身的配置文件信息后,可根据不同类型的扩展器,快速完成相关配置,实现为各种类型扩展器提供对应配置的可视化工具,进而在可视化工具上生成符合该类型扩展器的表格显示界面,以供用户进行相应的信息查询和控制。
在上述实施例的基础上,所述方法还包括:
获取已连接设备的硬件设备类型信息;
将所述硬件设备类型信息发送至所述用户端,以供所述用户端根据所述硬件设备类型信息,建立目标传输端口与所述扩展器之间的连接,其中,所述目标传输端口至少包括串口、并口和网口。
在本发明中,用户端与扩展器之间的传输端口包括串口、并口和网口等,扩展器将自身连接的硬件设备的类型信息发送至用户端之后,使得用户端一侧选择适当的传输端口,实现用户端与扩展器之间的指令传输,例如,扩展器连接的设备为硬盘,则可采用串口;当连接的是网络设备时,则可采用网口,提高数据传输效率。
在上述实施例的基础上,所述方法还包括:
通过预设指令模型,对所述目标寄存器指令类型信息进行匹配,若所述目标寄存器指令类型信息与所述预设指令模型中的预设物理端口指令控制功能匹配成功,执行所述数据交互指令信息,其中,所述预设指令模型中设置有所述扩展器可执行多种预设物理端口指令控制功能。
在本发明中,针对不同类型扩展器可实现的查询功能和控制功能,前期建立一个预设指令模型,对于一些功能选项选择不合理或参数设置不合理生成的错误指令,与预设指令模型中已有指令是无法匹配的,从而避免扩展器执行错误指令,影响到设备稳定性。
图3为本发明提供的基于扩展器的指令操作对象示意图,图4为本发明提供的基于扩展器的指令交互整体流程图,可参考图3和图4所示,用户在用户端确定当前操作,如查询操作或控制操作,通过可视化工具的显示层,在表格显示界面上勾选对应的查询选项或相应的功能选项,进而通过指令解析层,将勾选信息转换为各个PHY端口ID对应的指令数据,并通过调试工具选取合适的接口将指令数据发送至扩展器;当扩展器的端口驱动层接收到指令数据后,通过指令执行层解析为具体的CMD指令,并执行对应的function,获取该指令的Response数据,并做Response(数据可能是功能程序运行的,也可能是从寄存器里读取的);当用户端接收到Response数据,在可视化工具的界面上进行显示。
在另一实施例中,对于控制的交互流程,通过扩展器首先查询到相应的待写入数据;然后,用户在表格显示界面上修改参数值内容,再点击写按钮;进一步地,可视化工具将修改的参数值内容,解析成CMD,并经过端口驱动层发送该CMD至扩展器;接着,扩展器的指令执行层解析具体的CMD指令,并执行对应的function,完成相应的参数修改或扩展器基于修改后的参数执行相应的控制操作;最后,用户可以再次执行查询步骤,通过可视化工具检查是否设置成功。
本发明自动将用户的选项转换成所需要的指令,从扩展器端获取各类复杂的信息,并以矩阵表格的方式展示到用户端的界面上,使得用户只需要点击少数的几个按钮,省却执行几十几百条指令的繁琐流程,并能获取每个PHY端口的链路信息、IO交互信息的查询和控制、以及执行机箱管理的信息查询和故障注入等操作。同时,在用户端不依赖于具体的设备,即可对多种型号的扩展器兼容使用,通过本发明提供的数据处理方法和日志记录的双重操作下,大大提高功能调试和问题定位的效率,降低维护成本。
下面对本发明提供的基于扩展器的数据处理***进行描述,下文描述的基于扩展器的数据处理***与上文描述的基于扩展器的数据处理方法可相互对应参照。
图5为本发明提供的基于扩展器的数据处理***的结构示意图之一,如图5所示,本发明提供了一种基于扩展器的数据处理***,应用于用户端,包括交互模块501、处理模块502和调试模块503,其中,交互模块501用于获取第一输入信息,其中,所述第一输入信息包括确定目标扩展器的目标物理端口信息和目标交互功能信息的操作信息;处理模块502用于响应于所述第一输入信息,根据所述目标物理端口信息,获取对应的目标寄存器地址信息,并根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息;调试模块503用于将所述数据交互指令信息发送到所述目标扩展器,获取数据交互处理结果,其中,所述数据交互处理结果是所述目标扩展器对目标寄存器数据执行所述目标交互功能信息对应的数据交互处理后得到的,所述目标寄存器数据为所述目标寄存器地址信息在所述目标扩展器中对应的寄存器数据。
本发明提供的基于扩展器的数据处理***,通过前期建立的PHY端口与寄存器地址的映射关系,可快速查询到扩展器中每个PHY端口对应的寄存器的全量信息,实现对单个或多个PHY端口进行动态控制,提高了数据处理过程效率。
在上述实施例的基础上,所述交互模块包括:
显示界面输入单元,用于获取所述用户端的表格显示界面上的勾选项状态信息,其中,所述表格显示界面包括物理端口选项和交互功能选项;
端口信息处理单元,用于根据所述物理端口选项对应的所述勾选项状态信息,确定所述目标物理端口信息;
功能信息处理单元,用于根据所述交互功能选项对应的所述勾选项状态信息,确定所述目标交互功能信息;
输入信息生成单元,用于根据所述目标物理端口信息和所述目标交互功能信息,获取所述第一输入信息。
图6为本发明提供的基于扩展器的数据处理***的结构示意图之二,如图6所示,本发明提供了一种基于扩展器的数据处理***,应用于所述扩展器,包括端口驱动模块601和指令执行模块602,其中,端口驱动模块601用于获取用户端发送的数据交互指令信息,其中,所述数据交互指令信息包括目标寄存器地址信息和目标交互功能信息;所述目标寄存器地址信息是所述用户端根据目标映射关系和目标物理端口信息确定得到的;所述目标映射关系是所述用户端对所述扩展器的配置文件信息进行解析后,获取到的所述扩展器中各个物理端口和寄存器地址之间的映射关系;指令执行模块602用对所述目标寄存器数据进行所述目标交互功能信息对应的数据交互处理,并将得到的数据交互处理结果发送至所述用户端,其中,所述目标寄存器数据为所述目标寄存器地址信息在所述扩展器中对应的寄存器数据。
本发明提供的基于扩展器的数据处理***,通过前期建立的PHY端口与寄存器地址的映射关系,可快速查询到扩展器中每个PHY端口对应的寄存器的全量信息,实现对单个或多个PHY端口进行动态控制,提高了数据处理过程效率。
本发明提供的***是用于执行上述各方法实施例的,具体流程和详细内容请参照上述实施例,此处不再赘述。
图7为本发明提供的电子设备的结构示意图,如图7所示,该电子设备可以包括:处理器(Processor)701、通信接口(Communications Interface)702、存储器(Memory)703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信。处理器701可以调用存储器703中的逻辑指令,以执行基于扩展器的数据处理方法,该方法包括:获取第一输入信息,其中,所述第一输入信息包括确定目标扩展器的目标物理端口信息和目标交互功能信息的操作信息;响应于所述第一输入信息,根据所述目标物理端口信息,获取对应的目标寄存器地址信息,并根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息;将所述数据交互指令信息发送到所述目标扩展器,获取数据交互处理结果,其中,所述数据交互处理结果是所述目标扩展器对目标寄存器数据执行所述目标交互功能信息对应的数据交互处理后得到的,所述目标寄存器数据为所述目标寄存器地址信息在所述目标扩展器中对应的寄存器数据;
或,获取用户端发送的数据交互指令信息,其中,所述数据交互指令信息包括目标寄存器地址信息和目标交互功能信息;所述目标寄存器地址信息是所述用户端根据目标映射关系和目标物理端口信息确定得到的;所述目标映射关系是所述用户端对所述扩展器的配置文件信息进行解析后,获取到的所述扩展器中各个物理端口和寄存器地址之间的映射关系;对所述目标寄存器数据进行所述目标交互功能信息对应的数据交互处理,并将得到的数据交互处理结果发送至所述用户端,其中,所述目标寄存器数据为所述目标寄存器地址信息在所述扩展器中对应的寄存器数据。
此外,上述的存储器703中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的基于扩展器的数据处理方法,该方法包括:获取第一输入信息,其中,所述第一输入信息包括确定目标扩展器的目标物理端口信息和目标交互功能信息的操作;响应于所述第一输入信息,根据所述目标物理端口信息,获取对应的目标寄存器地址信息,并根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息;将所述数据交互指令信息发送到所述目标扩展器,获取数据交互处理结果,其中,所述数据交互处理结果是所述目标扩展器对目标寄存器数据执行所述目标交互功能信息对应的数据交互处理后得到的,所述目标寄存器数据为所述目标寄存器地址信息在所述目标扩展器中对应的寄存器数据;
或,获取用户端发送的数据交互指令信息,其中,所述数据交互指令信息包括目标寄存器地址信息和目标交互功能信息;所述目标寄存器地址信息是所述用户端根据目标映射关系和目标物理端口信息确定得到的;所述目标映射关系是所述用户端对所述扩展器的配置文件信息进行解析后,获取到的所述扩展器中各个物理端口和寄存器地址之间的映射关系;对所述目标寄存器数据进行所述目标交互功能信息对应的数据交互处理,并将得到的数据交互处理结果发送至所述用户端,其中,所述目标寄存器数据为所述目标寄存器地址信息在所述扩展器中对应的寄存器数据。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的基于扩展器的数据处理方法,该方法包括:获取第一输入信息,其中,所述第一输入信息包括确定目标扩展器的目标物理端口信息和目标交互功能信息的操作信息;响应于所述第一输入信息,根据所述目标物理端口信息,获取对应的目标寄存器地址信息,并根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息;将所述数据交互指令信息发送到所述目标扩展器,获取数据交互处理结果,其中,所述数据交互处理结果是所述目标扩展器对目标寄存器数据执行所述目标交互功能信息对应的数据交互处理后得到的,所述目标寄存器数据为所述目标寄存器地址信息在所述目标扩展器中对应的寄存器数据;
或,获取用户端发送的数据交互指令信息,其中,所述数据交互指令信息包括目标寄存器地址信息和目标交互功能信息;所述目标寄存器地址信息是所述用户端根据目标映射关系和目标物理端口信息确定得到的;所述目标映射关系是所述用户端对所述扩展器的配置文件信息进行解析后,获取到的所述扩展器中各个物理端口和寄存器地址之间的映射关系;对所述目标寄存器数据进行所述目标交互功能信息对应的数据交互处理,并将得到的数据交互处理结果发送至所述用户端,其中,所述目标寄存器数据为所述目标寄存器地址信息在所述扩展器中对应的寄存器数据。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (20)

1.一种基于扩展器的数据处理方法,其特征在于,应用于用户端,包括:
获取第一输入信息,其中,所述第一输入信息包括确定目标扩展器的目标物理端口信息和目标交互功能信息的操作信息,所述目标物理端口信息和所述目标交互功能信息是基于所述用户端的表格显示界面获取得到的,且当所述目标交互功能信息为控制功能交互信息时,在所述表格显示界面上,各项参数功能选项的参数设定值与寄存器控制功能的比特位范围对应;
响应于所述第一输入信息,根据所述目标物理端口信息,获取对应的目标寄存器地址信息,并根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息;
将所述数据交互指令信息发送到所述目标扩展器,获取数据交互处理结果,其中,所述数据交互处理结果是所述目标扩展器对目标寄存器数据执行所述目标交互功能信息对应的数据交互处理后得到的,所述目标寄存器数据为所述目标寄存器地址信息在所述目标扩展器中对应的寄存器数据;
所述表格显示界面通过以下方式生成:
获取所述目标扩展器的配置文件信息;
对所述配置文件信息进行解析,获取所述目标扩展器中各个物理端口与寄存器地址之间的映射关系,以及各个物理端口对应的寄存器指令类型信息,其中,各个所述寄存器指令类型信息对应不同的物理端口指令控制功能;
基于所述映射关系,根据所述各个物理端口的端口号和所述寄存器指令类型信息,生成所述表格显示界面。
2.根据权利要求1所述的基于扩展器的数据处理方法,其特征在于,所述获取第一输入信息,包括:
获取所述用户端的表格显示界面上的勾选项状态信息,其中,所述表格显示界面包括物理端口选项和交互功能选项;
根据所述物理端口选项对应的所述勾选项状态信息,确定所述目标物理端口信息;
根据所述交互功能选项对应的所述勾选项状态信息,确定所述目标交互功能信息;
根据所述目标物理端口信息和所述目标交互功能信息,获取所述第一输入信息。
3.根据权利要求2所述的基于扩展器的数据处理方法,其特征在于, 所述响应于所述第一输入信息,根据所述目标物理端口信息,获取对应的目标寄存器地址信息,包括:
根据所述映射关系,确定所述目标物理端口信息对应的所述目标寄存器地址信息。
4.根据权利要求3所述的基于扩展器的数据处理方法,其特征在于,所述目标交互功能信息包括查询功能交互信息和控制功能交互信息;
所述根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息,包括:
若所述目标交互功能信息为所述查询功能交互信息,生成查询命令提示符,并确定第一数据类型信息,其中,所述第一数据类型信息为待查询的寄存器数据的数据类型信息;
基于所述查询命令提示符,根据目标映射关系和所述第一数据类型信息,生成所述数据交互指令信息,以通过所述数据交互指令信息查询所述目标扩展器中的寄存器数据;其中,所述目标映射关系为所述目标物理端口信息与所述目标寄存器地址信息之间的映射关系。
5.根据权利要求3所述的基于扩展器的数据处理方法,其特征在于,所述对所述配置文件信息进行解析,还包括:
获取所述目标扩展器中各个物理端口与扩展插槽之间的对应关系;
所述方法还包括:
根据槽位故障信息,确定所述目标扩展器中的故障扩展插槽;
基于所述对应关系,获取所述故障扩展插槽对应的物理端口,以通过所述故障扩展插槽对应的物理端口和所述映射关系进行寄存器数据查询。
6.根据权利要求4所述的基于扩展器的数据处理方法,其特征在于,所述根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息,还包括:
若所述目标交互功能信息为所述控制功能交互信息,生成所述查询命令提示符和控制命令提示符,并确定第二数据类型信息,其中,所述第二数据类型信息为待进行数据写入的寄存器数据的数据类型信息;
基于所述查询命令提示符,根据所述目标映射关系和所述第二数据类型信息,获取所述待进行数据写入的寄存器数据对应的所有寄存器指令类型信息和当前参数值;
根据所述控制功能交互信息,确定目标寄存器指令类型信息或目标参数修改值,其中,所述目标参数修改值用于对所述当前参数值进行修改;
基于所述控制命令提示符,根据所述目标寄存器指令类型信息或所述目标参数修改值,以及所述目标映射关系和所述第二数据类型信息,生成所述数据交互指令信息。
7.根据权利要求3所述的基于扩展器的数据处理方法,其特征在于,在所述获取所述目标扩展器的配置文件信息之后,所述方法还包括:
根据所述目标扩展器对应连接的硬件设备类型,确定目标传输端口类型,其中,所述目标传输端口类型至少包括串口类型、并口类型和网口类型;
根据所述目标传输端口类型,生成对应的传输端口切换提示信息,以通过所述用户端的显示终端进行展示。
8.根据权利要求2所述的基于扩展器的数据处理方法,其特征在于,所述交互功能选项包括物理端口初始化状态信息交互选项、寄存器地址信息交互选项、输入输出信息交互选项、物理控制功能交互信息和机箱管理信息交互选项。
9.一种基于扩展器的数据处理方法,其特征在于,应用于所述扩展器,包括:
获取用户端发送的数据交互指令信息,其中,所述数据交互指令信息包括目标寄存器地址信息和目标交互功能信息;所述目标寄存器地址信息是所述用户端根据目标映射关系和目标物理端口信息确定得到的;所述目标映射关系是所述用户端对所述扩展器的配置文件信息进行解析后,获取到的所述扩展器中各个物理端口和寄存器地址之间的映射关系;所述目标物理端口信息和所述目标交互功能信息是基于所述用户端的表格显示界面获取得到的,且当所述目标交互功能信息为控制功能交互信息时,在所述表格显示界面上,各项参数功能选项的参数设定值与寄存器控制功能的比特位范围对应;
对所述目标寄存器数据进行所述目标交互功能信息对应的数据交互处理,并将得到的数据交互处理结果发送至所述用户端,其中,所述目标寄存器数据为所述目标寄存器地址信息在所述扩展器中对应的寄存器数据;
所述表格显示界面为所述用户端通过以下方式生成:
获取所述目标扩展器的配置文件信息;
对所述配置文件信息进行解析,获取所述目标扩展器中各个物理端口与寄存器地址之间的映射关系,以及各个物理端口对应的寄存器指令类型信息,其中,各个所述寄存器指令类型信息对应不同的物理端口指令控制功能;
基于所述映射关系,根据所述各个物理端口的端口号和所述寄存器指令类型信息,生成所述表格显示界面。
10.根据权利要求9所述的基于扩展器的数据处理方法,其特征在于,所述获取用户端发送的数据交互指令信息,包括:
基于端口驱动层,通过中断方式,接收所述用户端发送的指令数据;
对接收到的所述指令数据进行完整性检测,若确定接收到完整的数据,获取所述数据交互指令信息。
11.根据权利要求9所述的基于扩展器的数据处理方法,其特征在于,所述对所述目标寄存器数据进行所述目标交互功能信息对应的数据交互处理,包括:
基于指令执行层,对所述数据交互指令信息进行解析,若解析得到的命令提示符为查询命令提示符,根据所述目标寄存器地址信息和第一数据类型信息,获取待查询的寄存器数据,其中,所述第一数据类型信息为所述待查询的寄存器数据的数据类型信息;
将所述待查询的寄存器数据发送到所述用户端。
12.根据权利要求11所述的基于扩展器的数据处理方法,其特征在于,所述方法还包括:
若解析得到的命令提示符为控制命令提示符,根据所述目标寄存器地址信息和第二数据类型信息,确定待进行数据写入的寄存器数据,其中,所述第二数据类型信息为所述待进行数据写入的寄存器数据的数据类型信息;
将所述待进行数据写入的寄存器数据发送到所述用户端之后,获取目标寄存器指令类型信息或目标参数修改值,其中,所述目标寄存器指令类型信息对应一种物理端口指令控制功能;所述目标参数修改值用于对所述待进行数据写入的寄存器数据的当前参数值进行修改;
根据所述目标寄存器指令类型信息,执行对应的物理端口指令控制功能,得到物理端口指令控制结果;或,根据所述目标参数修改值,对所述待进行数据写入的寄存器数据中的当前参数值进行修改,得到参数修改结果;
将所述物理端口指令控制结果或所述参数修改结果返回所述用户端。
13.根据权利要求9所述的基于扩展器的数据处理方法,其特征在于,在所述获取用户端发送的数据交互指令信息之前,所述方法还包括:
接收第二输入信息,所述第二输入信息包括查询所述扩展器的配置文件信息的操作信息;
响应于所述第二输入信息,将配置文件信息发送至所述用户端,其中,所述配置文件信息包括所述扩展器中各个物理端口与寄存器地址之间的映射关系,以及各个物理端口对应的寄存器指令类型信息,其中,各个所述寄存器指令类型信息对应不同的物理端口指令控制功能。
14.根据权利要求13所述的基于扩展器的数据处理方法,其特征在于,所述方法还包括:
获取已连接设备的硬件设备类型信息;
将所述硬件设备类型信息发送至所述用户端,以供所述用户端根据所述硬件设备类型信息,建立目标传输端口与所述扩展器之间的连接,其中,所述目标传输端口至少包括串口、并口和网口。
15.根据权利要求12所述的基于扩展器的数据处理方法,其特征在于,所述方法还包括:
通过预设指令模型,对所述目标寄存器指令类型信息进行匹配,若所述目标寄存器指令类型信息与所述预设指令模型中的预设物理端口指令控制功能匹配成功,执行所述数据交互指令信息,其中,所述预设指令模型中设置有所述扩展器可执行多种预设物理端口指令控制功能。
16.一种基于扩展器的数据处理***,其特征在于,应用于用户端,包括:
交互模块,用于获取第一输入信息,其中,所述第一输入信息包括确定目标扩展器的目标物理端口信息和目标交互功能信息的操作信息,所述目标物理端口信息和所述目标交互功能信息是基于所述用户端的表格显示界面获取得到的,且当所述目标交互功能信息为控制功能交互信息时,在所述表格显示界面上,各项参数功能选项的参数设定值与寄存器控制功能的比特位范围对应;
处理模块,用于响应于所述第一输入信息,根据所述目标物理端口信息,获取对应的目标寄存器地址信息,并根据所述目标寄存器地址信息和所述目标交互功能信息,生成数据交互指令信息;
调试模块,用于将所述数据交互指令信息发送到所述目标扩展器,获取数据交互处理结果,其中,所述数据交互处理结果是所述目标扩展器对目标寄存器数据执行所述目标交互功能信息对应的数据交互处理后得到的,所述目标寄存器数据为所述目标寄存器地址信息在所述目标扩展器中对应的寄存器数据;
所述表格显示界面通过以下方式生成:
获取所述目标扩展器的配置文件信息;
对所述配置文件信息进行解析,获取所述目标扩展器中各个物理端口与寄存器地址之间的映射关系,以及各个物理端口对应的寄存器指令类型信息,其中,各个所述寄存器指令类型信息对应不同的物理端口指令控制功能;
基于所述映射关系,根据所述各个物理端口的端口号和所述寄存器指令类型信息,生成所述表格显示界面。
17.根据权利要求16所述的基于扩展器的数据处理***,其特征在于,所述交互模块包括:
显示界面输入单元,用于获取所述用户端的表格显示界面上的勾选项状态信息,其中,所述表格显示界面包括物理端口选项和交互功能选项;
端口信息处理单元,用于根据所述物理端口选项对应的所述勾选项状态信息,确定所述目标物理端口信息;
功能信息处理单元,用于根据所述交互功能选项对应的所述勾选项状态信息,确定所述目标交互功能信息;
输入信息生成单元,用于根据所述目标物理端口信息和所述目标交互功能信息,获取所述第一输入信息。
18.一种基于扩展器的数据处理***,其特征在于,应用于所述扩展器,包括:
端口驱动模块,用于获取用户端发送的数据交互指令信息,其中,所述数据交互指令信息包括目标寄存器地址信息和目标交互功能信息;所述目标寄存器地址信息是所述用户端根据目标映射关系和目标物理端口信息确定得到的;所述目标映射关系是所述用户端对所述扩展器的配置文件信息进行解析后,获取到的所述扩展器中各个物理端口和寄存器地址之间的映射关系;所述目标物理端口信息和所述目标交互功能信息是基于所述用户端的表格显示界面获取得到的,且当所述目标交互功能信息为控制功能交互信息时,在所述表格显示界面上,各项参数功能选项的参数设定值与寄存器控制功能的比特位范围对应;
指令执行模块,用对所述目标寄存器数据进行所述目标交互功能信息对应的数据交互处理,并将得到的数据交互处理结果发送至所述用户端,其中,所述目标寄存器数据为所述目标寄存器地址信息在所述扩展器中对应的寄存器数据;
所述表格显示界面为所述用户端通过以下方式生成:
获取所述目标扩展器的配置文件信息;
对所述配置文件信息进行解析,获取所述目标扩展器中各个物理端口与寄存器地址之间的映射关系,以及各个物理端口对应的寄存器指令类型信息,其中,各个所述寄存器指令类型信息对应不同的物理端口指令控制功能;
基于所述映射关系,根据所述各个物理端口的端口号和所述寄存器指令类型信息,生成所述表格显示界面。
19.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至8任一项所述基于扩展器的数据处理方法,或,如权利要求9至15任一项所述基于扩展器的数据处理方法。
20.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述基于扩展器的数据处理方法,或,如权利要求9至15任一项所述基于扩展器的数据处理方法。
CN202310915410.8A 2023-07-25 2023-07-25 基于扩展器的数据处理方法、***、电子设备及存储介质 Active CN116627861B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310915410.8A CN116627861B (zh) 2023-07-25 2023-07-25 基于扩展器的数据处理方法、***、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310915410.8A CN116627861B (zh) 2023-07-25 2023-07-25 基于扩展器的数据处理方法、***、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN116627861A CN116627861A (zh) 2023-08-22
CN116627861B true CN116627861B (zh) 2024-02-20

Family

ID=87613882

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310915410.8A Active CN116627861B (zh) 2023-07-25 2023-07-25 基于扩展器的数据处理方法、***、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN116627861B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123246A (zh) * 2013-04-23 2014-10-29 鸿富锦精密工业(深圳)有限公司 接口扩展装置及串行连接接口扩展器
CN108123845A (zh) * 2016-11-30 2018-06-05 中兴通讯股份有限公司 一种实现sas域环路监控的方法及sas扩展器
CN116467240A (zh) * 2023-04-12 2023-07-21 苏州浪潮智能科技有限公司 Sas扩展器拓扑配置方法、装置、sas扩展器及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123246A (zh) * 2013-04-23 2014-10-29 鸿富锦精密工业(深圳)有限公司 接口扩展装置及串行连接接口扩展器
CN108123845A (zh) * 2016-11-30 2018-06-05 中兴通讯股份有限公司 一种实现sas域环路监控的方法及sas扩展器
CN116467240A (zh) * 2023-04-12 2023-07-21 苏州浪潮智能科技有限公司 Sas扩展器拓扑配置方法、装置、sas扩展器及存储介质

Also Published As

Publication number Publication date
CN116627861A (zh) 2023-08-22

Similar Documents

Publication Publication Date Title
US10680921B2 (en) Virtual intelligent platform management interface for hardware components
CN108683562B (zh) 异常检测定位方法、装置、计算机设备及存储介质
US9454423B2 (en) SAN performance analysis tool
CN107848522B (zh) 用于将诊断命令传输至交通工具的***和方法
US11748218B2 (en) Methods, electronic devices, storage systems, and computer program products for error detection
US7114112B2 (en) Method, system, and program for simulating Input/Output (I/O) requests to test a system
US10261880B1 (en) Error generation using a computer add-in card
US20150261696A1 (en) Universal serial bus emulation of peripheral devices
EP3117327B1 (en) Universal serial bus emulation of peripheral devices
CN105183575A (zh) 处理器故障的诊断方法、装置及***
US7376546B2 (en) User configurable ultra320 SCSI target device simulator and error injector
US20100312541A1 (en) Program test device and program
CN112542206A (zh) Lpddr测试方法、装置、可读存储介质及电子设备
CN112214373B (zh) 硬件监控方法、装置及电子设备
US6868375B1 (en) Emulation of dynamically reconfigurable computer system
CN116627861B (zh) 基于扩展器的数据处理方法、***、电子设备及存储介质
CN113032246A (zh) Ssd固件运行方法、装置、可读存储介质及电子设备
US7168029B2 (en) Method for testing a universal serial bus host controller
CN114610557B (zh) 设备驱动单元的测试方法及装置
CN115794530A (zh) 一种硬件连接测试方法、装置、设备和可读存储介质
CN116089124A (zh) 一种仿真***通信方法、装置、介质
CN109783417B (zh) 一种串口通讯装置及方法
CN112286573A (zh) 模组控制器配置参数修改方法、装置及***
CN115328712B (zh) 一种kvm切换器的检测方法和相关设备
CN114816876B (zh) 一种服务器Redfish接口规范的自动化测试***

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