一种槽位识别方法、装置及电子设备与流程
未命名
10-18
阅读:94
评论:0
1.本技术涉及数据存储领域,尤其涉及一种槽位识别方法、装置及电子设备。
背景技术:
2.双控存储产品是通过两个控制器实现存储业务的产品。在双控存储产品中,两个控制器通过背板相互连接。在背板上,每个控制器均具有一个独立的槽位标识,该槽位标识表征了该控制器在背板上的位置。在实际应用中,每个控制器中的处理单元可根据该控制器的槽位标识来对该控制器进行不同的初始化操作。
3.在相关技术中,通常通过识别控制器中与控制器所在槽位中的目标引脚连接的目标输入端的高低电平来确定该控制器在背板上的槽位位置,例如,如果目标输入端的电平值为高电平,则表征控制器位于背板的槽位1中;如果目标输入端的电平值为低电平,则表征该控制器位于背板的槽位2中。
4.然而,在控制器的目标输入端与槽位中的目标引脚虚接或控制器插入背板的速度过快时,控制器的处理单元可能会读取到错误的槽位标识。由于控制器所在槽位的槽位标识与控制器的初始化相关,因此,错误的槽位标识会使得控制器的初始化出现错误,从而造成控制器的逻辑控制出现异常,进而引发使用该双控存储产品的系统出现问题,导致存储业务出现异常。
技术实现要素:
5.有鉴于此,本技术实施例提供一种槽位识别方法、装置及电子设备,以提高槽位识别的准确度。
6.根据本技术实施例的第一方面,提供一种槽位识别方法,应用于部署在背板上的第一控制器中,背板上还部署有第二控制器,第一控制器与第二控制器部署在背板的不同槽位中,该方法包括:比对从第一控制器的存储单元中读取到的第一槽位目标标识,与由第一控制器的目标输入端的电平值所确定的第一槽位读取标识,得到第一比对结果,其中,第一槽位目标标识为首次识别时输入至第一控制器的存储单元中的第一控制器所在槽位的标识,或者,非首次识别时上一次所识别到的第一控制器所在槽位的标识;第一控制器的目标输入端与第一控制器当前所在槽位中的目标引脚连接;比对从第二控制器的存储单元中读取到的第二槽位目标标识,与由第二控制器的目标输入端的电平值所确定的第二槽位读取标识,得到第二比对结果,其中,第二槽位目标标识为首次识别时输入至第二控制器的存储单元中的第二控制器所在槽位的槽位标识,或者,非首次识别时上一次所识别到的第二控制器所在槽位的标识;第二控制器的目标输入端与第二控制器当前所在槽位中的目标引脚连接;根据第一控制器的目标输入端处于悬空状态时的电平值从第一比对结果和第二比对结果中确定目标比对结果,并基于目标比对结果确定第一控制器当前所在槽位的位置。
7.根据本技术实施例的第二方面,提供一种槽位识别装置,应用于部署在背板上的第一控制器中,背板上还部署有第二控制器,第一控制器与第二控制器部署在背板的不同
槽位中,该装置包括:第一标识比对模块,用于比对从第一控制器的存储单元中读取到的第一槽位目标标识,与由第一控制器的目标输入端的电平值所确定的第一槽位读取标识,得到第一比对结果,其中,第一槽位目标标识为首次识别时输入至第一控制器的存储单元中的第一控制器所在槽位的标识,或者,非首次识别时上一次所识别到的第一控制器所在槽位的标识;第一控制器的目标输入端与第一控制器当前所在槽位中的目标引脚连接;第二标识比对模块,用于比对从第二控制器的存储单元中读取到的第二槽位目标标识,与由第二控制器的目标输入端的电平值所确定的第二槽位读取标识,得到第二比对结果,其中,第二槽位目标标识为首次识别时输入至第二控制器的存储单元中的第二控制器所在槽位的槽位标识,或者,非首次识别时上一次所识别到的第二控制器所在槽位的标识;第二控制器的目标输入端与第二控制器当前所在槽位中的目标引脚连接;槽位识别模块,用于根据第一控制器的目标输入端处于悬空状态时的电平值从第一比对结果和第二比对结果中确定目标比对结果,并基于目标比对结果确定第一控制器当前所在槽位的位置。
8.根据本技术实施例的第三方面,提供一种电子设备,电子设备包括:处理器和存储器;其中,所述存储器,用于存储机器可执行指令;所述处理器,用于读取并执行所述存储器存储的机器可执行指令,以实现如第一方面所述的方法。
9.根据本技术实施例的第四方面,提供一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述的方法。
10.本技术实施例提供的技术方案可以包括以下有益效果:
11.在本实施例中,在判断控制器所在槽位的过程中,不仅考虑到了控制器的目标输入端的电平值的大小,还以上一次所识别到的控制器的所在槽位作为参考来识别控制器当前所在槽位,相较于仅通过目标输入端的电平值来确定控制器所在槽位的方案,本技术所提供的方案在不增加成本的情况下,避免了由于控制器的目标输入端与槽位中的目标引脚虚接或控制器插入背板的速度过快所导致的槽位识别错误的问题,提高了槽位识别的准确性。另外,本技术还考虑到了其他控制器的目标输入端的电平值大小与其他控制器上一次所识别到的槽位,在两个控制器的位置发生交换时,也能够准确识别出位置交换后的控制器的所在槽位,从而避免了由于两个控制器之间的位置发生交换所导致存储单元中的槽位标识与实际不符,导致控制器当前所在槽位识别错误的问题,进一步提高了槽位识别的准确度。
附图说明
12.图1是本技术实施例示出的一种槽位识别方法的流程图。
13.图2是本技术实施例示出的一种槽位识别装置的框图。
14.图3是本技术实施例槽位识别装置所在电子设备的一种硬件结构图。
具体实施方式
15.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
16.在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
17.应当理解,尽管在本技术可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
18.接下来对本说明书实施例进行详细说明。
19.在描述本技术实施例所提供的方法之前,首先对本技术实施例所涉及的应用场景进行描述:
20.本技术所提供的槽位识别方法可以应用于双控存储产品(例如,双控存储服务器)中,在双控存储产品的背板上部署有两个控制器,两个控制器分别位于背板的不同槽位中。
21.另外,两个控制器可以配置相同的控制器,每个控制器均具有cpu、缓存存储器以及与网络和存储设备连接的接口。其中,每个控制器的cpu可用于识别自己在背板上的槽位位置;控制器的上述接口可实现两个控制器间的数据通信,例如,两个控制器可通过上述接口将各自识别到的槽位位置传输至对方;上述的缓存存储器可以为但不限于eeprom(electrically erasable programmable read only memory,带电可擦可编程只读存储器)。
22.基于如上描述,以下以双控存储产品中的任一控制器(下文称第一控制器)为执行主体描述本技术实施例所提供的方法。
23.参见图1,图1是本技术实施例示出的一种槽位识别方法的流程图,如图1所示,该方法包括以下步骤:
24.步骤102,比对从第一控制器的存储单元中读取到的第一槽位目标标识,与由第一控制器的目标输入端的电平值所确定的第一槽位读取标识,得到第一比对结果。
25.在本实施例中,背板上的不同槽位具有不同的槽位标识,例如,第一槽位对应的槽位标识为0,第二槽位对应的槽位标识为1。
26.在本实施例中,第一控制器的存储单元可以为eeprom,也可以为其他的存储器,本技术不做具体限定。另外,第一控制器的存储单元用于存储第一槽位目标标识。
27.作为一个实施例,在第一控制器首次识别槽位时,第一槽位目标标识可以为用户人为输入至第一控制器的存储单元中的第一控制器所在槽位的标识。例如,在首次识别控制器的槽位之前,用户人为向每个控制器的存储单元中写入控制器所在槽位的槽位标识,以保证初始状态时,每个控制器的存储单元中存储的槽位标识是正确的槽位标识。
28.作为另一个实施例,在非首次识别槽位时,第一槽位目标标识为上一次所识别到的第一控制器所在槽位的标识。例如,若第一控制器对应的存储单元存储的槽位标识为0,则表征上一次识别到第一控制器位于第一槽位中;若第一控制器对应的存储单元存储的槽位标识为1,则表征上一次识别到第一控制器位于第二槽位中。
29.需要说明的是,由于两个控制器在同一时刻不可能位于同一槽位中,因此,在本实
施例中,第一控制器的存储单元中存储的槽位标识必然与第二控制器的存储单元中存储的槽位标识不同。例如,第一控制器的存储单元中存储的槽位标识为0,则第二控制器的存储单元中存储的槽位标识必然为1。
30.在本实施例中,第一控制器的目标输入端与第一控制器当前所在槽位中的目标引脚连接,该目标引脚可向第一控制器的目标输入端输入电信号,而第一控制器通过该电信号的电平值来初始确定第一控制器当前所在槽位。例如,若第一控制器检测到目标输入端的电平值为高电平(例如,目标输入端的电平值大于第一预设电平值),则初始确定第一控制器位于第二槽位中;若第一控制器检测到目标输入端的电平值为低电平(例如,目标输入端的电平值小于第二预设电平值),则初始确定第一控制器位于第一槽位中。
31.作为一个实施例,在主机首次开机或者主机重启时,需对控制器(包括第一控制器和第二控制器)进行初始化操作,此时,需确定每个控制器在背板上的槽位,以根据控制器在背板上的位置来对控制器进行不同的初始化操作。具体的,在主机首次开机或者主机重启时,第一控制器从其对应的存储单元中读取人为输入的或者上一次所识别到的第一槽位目标标识,并通过目标输入端的电平值来确定第一槽位读取标识,然后比对两个标识,得到第一比对结果,该第一比对结果表征了第一槽位目标标识以及第二槽位读取标识是否相同。
32.需要说明的是,在控制器的目标输入端与槽位中的目标引脚虚接或者接触不良时,或者,控制器过快插入槽位中目标输入端的电平还未稳定时,根据目标输入端的电平值所识别到的槽位是不准确的,对此,在本实施例中,在通过目标输入端的电平值识别到控制器当前所在槽位之后,再将根据目标输入端的电平值所识别到的槽位与控制器的存储单元中所存储的槽位进行比对,进而根据比对结果进行分析以准确地确定控制器当前所在槽位。
33.步骤104,比对从第二控制器的存储单元中读取到的第二槽位目标标识,与由第二控制器的目标输入端的电平值所确定的第二槽位读取标识,得到第二比对结果。
34.在本实施例中,第二控制器的存储单元可以为eeprom,也可以为其他的存储器,本技术不做具体限定。另外,第二控制器的存储单元用于存储第二槽位目标标识。
35.作为一个实施例,在第二控制器首次识别槽位时,第二槽位目标标识可以为用户人为输入至第二控制器的存储单元中的第二控制器所在槽位的标识。在非首次识别槽位时,第二槽位目标标识为上一次所识别到的第二控制器所在槽位的标识。
36.在本实施例中,第一槽位目标标识所指示槽位中与第一控制器的目标输入端连接的引脚的电平值小于第二槽位目标标识所指示槽位中与第二控制器的目标输入端连接的引脚的电平值。即在本实施例中,以上一次识别到第一控制位于第一槽位,第二控制器位于第二槽位为例进行说明。
37.在本实施例中,第二控制器的目标输入端与第二控制器当前所在槽位中的目标引脚连接。与第一控制器类似,第二控制器也可通过输入至第二控制器的目标输入端的电信号的电平值来初始确定第二控制器当前所在槽位。
38.此外,第二控制器从存储单元中读取第二槽位目标标识,以及根据目标输入端的电平值确定第二槽位读取标识,以及比对两个槽位标识的过程,与第一控制器类似。
39.在本实施例中,由于第一控制器与第二控制器之间可进行数据通信,因此,在第二
控制器从第二控制器的存储单元中读取到第二槽位目标标识,并通过第二控制器的目标输入端的电平值确定第二槽位读取标识之后,第二控制器可将第二槽位目标标识以及第二槽位读取标识传输至第一控制器,以使第一控制器比对第二槽位目标标识与第二槽位读取标识得到第二比对结果。
40.同时,第一控制器也将第一槽位目标标识以及第一槽位读取标识传输至第二控制器,以使第二控制器比对第一槽位目标标识与第一槽位读取标识得到第一比对结果。也即,在本技术中,两个控制器仅进行槽位标识的传输,并不会向对方发送槽位标识的调整指令。例如,在识别槽位标识时,第一控制器和第二控制器均进行槽位识别,所不同的是,在识别到第一控制器的存储单元中存储的第一槽位目标标识需要调整时,第一控制器会对第一槽位目标标识进行调整,而第二控制器并不会对第一槽位目标标识进行调整。同样的,在识别到第二控制器的存储单元中存储的第二槽位目标标识需要调整时,第二控制器会对第二槽位目标标识进行调整,而第一控制器并不会对第二槽位目标标识进行调整。
41.需要说明的是,两个控制器之间也可以仅传输比对结果,例如,第二控制器比对第二槽位目标标识以及第二槽位读取标识,得到第二比对结果,然后将第二比对结果传输至第一控制器。同样的,第一控制器也将第一比对结果传输至第二控制器。
42.容易注意到的是,在本实施例中,两个控制器之间仅传输槽位标识或槽位标识的比对结果,而并不会传输调整对方的存储单元中的槽位标识的调整指令,该方式不仅可以减少传输调整指令占用的网络资源,还可在某个控制器出现故障后,另一个控制器也可纠正自己的槽位标识,而不依赖故障控制器的调整指令。
43.步骤106,根据第一控制器的目标输入端处于悬空状态时的电平值从第一比对结果和第二比对结果中确定目标比对结果,并基于目标比对结果确定第一控制器当前所在槽位的位置。
44.在本实施例中,目标输入端处于悬空状态时的电平值表征了目标输入端是默认高电平有效还是默认低电平有效。在高电平有效的场景中目标比对结果的组合与在低电平有效的场景中目标比对结果的组合不同。
45.作为一个实施例,假设第一电平值大于第二电平值。若第一控制器的目标输入端处于悬空状态时的电平值为第一电平值,即在高电平有效的场景中,目标比对结果由第一比对结果和第二比对结果组成,第一控制器根据第一比对结果和第二比对结果来确定第一控制器当前所在槽位的位置。
46.若第一控制器的目标输入端处于悬空状态时的电平值为第二电平值,即在低电平有效的场景中,目标比对结果由第一比对结果组成,第一控制器根据第一比对结果确定第一控制器当前所在槽位的位置。
47.类似的,对于第二控制器,在低电平有效的场景中,目标比对结果由第一比对结果和第二比对结果组成,即第二控制器根据第一比对结果和第二比对结果来确定第二控制器的槽位;而在高电平有效的场景中,目标比对结果由第二比对结果组成,即第二控制器仅根据第二比对结果即可确定第二控制器的槽位。
48.需要说明的是,第一控制器根据第一比对结果和第二比对结果确定第一控制器当前所在槽位的分析过程,或者第一控制器根据第一比对结果确定第一控制器当前所在槽位的分析过程将在下文中进行详细解释。
49.需要说明的是,通常,第一控制器和第二控制器在背板上的槽位不会发生变化,但在实际应用中,用户可能会调换第一控制器和第二控制器在背板上的位置,例如,将第一控制器的槽位由第一槽位切换为第二槽位,对应的,将第二控制器的槽位由第二槽位切换为第一槽位。此时,仅比对第一控制器的两个槽位标识,或者仅比对第二控制器的两个槽位标识是无法准确识别控制器的槽位标识的。在此场景下,本技术结合两个控制器的槽位标识比对结果,通过对两个比对结果进行分析,在准确识别控制器当前所在槽位的同时,还可识别出两个控制器是否发生了槽位互换。
50.即本实施例所提供的方法在两个控制器的位置发生交换时,也能够准确识别出位置交换后的控制器的所在槽位,从而避免了由于两个控制器之间的位置发生交换所导致存储单元中的槽位标识与实际不符,导致控制器当前所在槽位识别错误的问题,进一步提高了槽位识别的准确度。
51.至此,完成图1所示流程。
52.通过图1所示流程在不增加成本的情况下,避免了由于控制器的目标输入端与槽位中的目标引脚虚接或控制器插入背板的速度过快所导致的槽位识别错误的问题,并且,在两个控制器的位置发生交换时,也能够准确识别出位置交换后的控制器的所在槽位,提高了槽位识别的准确度。
53.以下对如何基于目标比对结果来识别第一控制器当前所在槽位的位置进行解释说明。
54.为便于说明,下文中,以c1_e表示第一槽位目标标识,以c1_r表示第一槽位读取标识,以c2_e表示第二槽位目标标识,以c2_r表示第二槽位读取标识。第一槽位对应的槽位标识为0,第二槽位对应的槽位标识为1,并且,上次识别到第一控制器位于第一槽位中,第二控制器位于第二槽位中。
55.首先,在高电平有效的场景中,第一控制器根据第一比对结果和第二比对结果确定第一控制器当前所在槽位。该场景又分了如下四种情况:
56.第一种情况:c1_r=c1_e,且c2_r=c2_e。
57.在该场景中,第一控制器通过目标输入端的电平值所确定的槽位标识与第一控制器的存储单元中所存储的槽位标识相同;第二控制器通过目标输入端的电平值所确定的槽位标识与第二控制器的存储单元中所存储的槽位标识也相同,此时表明两个控制器通过目标输入端的电平值所确定的槽位标识是正确的标识,两个控制器也没有发生槽位的交换,即第一槽位读取标识读取正确。此时,可将第一控制器当前所在槽位确定为第一槽位读取标识所指示的槽位或者第一槽位目标标识所指示的槽位,即将c1_r或c1_e所指示的第一槽位确定为第一控制器当前所在槽位。
58.第二种情况:c1_r≠c1_e,且c2_r=c2_e。
59.在该场景中,由于默认高电平有效,因此,第二控制器的目标输入端的电平值为高电平,其对应的读取槽位标识为1,而第二控制器的存储单元中所存储的第二槽位目标标识也为1,即第二控制器通过目标输入端的电平值所确定的槽位标识与第二控制器的存储单元中所存储的槽位标识一致。
60.而对于第一控制器,其存储单元中所存储的槽位标识为0,但通过第一控制器的目标输入端的电平值所确定的槽位标识为1,即第一控制器的目标输入端的电平值为高电平。
而位于第一槽位中的控制器所读取到的目标输入端的电平值应该为低电平,由此可见,第一控制器的第一槽位读取标识读取错误,第一槽位目标标识正确。此时,可将第一控制器当前所在槽位确定为第一槽位目标标识所指示的槽位,即将c1_e所指示的第一槽位确定为第一控制器当前所在槽位。
61.第三种情况:c1_r≠c1_e,且c2_r≠c2_e。
62.在该场景中,c2_e=1,c2_r=0;c1_e=0,c1_r=1。即两个控制器的存储单元中存储的槽位标识与通过目标输入端的电平值所确定的槽位标识相互交换,此时,可确定两个控制器发生了槽位互换。在该场景中,两个控制器的存储单元中所存储的槽位标识错误,而两个控制器通过目标输入端的电平值所读取到的槽位标识正确,即c1_r和c2_r是正确的。第一控制器当前所在槽位为c1_r所指示的第二槽位,第二控制器当前所在槽位为c2_r所指示的第一槽位。此时,第一控制器将第一槽位目标标识更新为第一槽位读取标识,即将c1_e更新为1。
63.需要说明的是,在该场景中,第一控制器也能检测到第二控制器的存储单元中所存储的槽位标识存在错误,由于第二控制器同时也在进行槽位标识的识别,第二控制器也能检测到二控制器的存储单元中所存储的槽位标识存在错误,因此,第一控制器并不会通知第二控制器更改,而是第二控制器根据自己检测到的结果进行存储单元中槽位标识的更新。
64.第四种情况:c1_r=c1_e,且c2_r≠c2_e。
65.在该场景中,c2_e=1,c2_r=0,c1_e=0,c1_r=0。由于默认高电平有效,因此,如果第二控制器位于第二槽位中,则第二槽位读取标识必然为1,而第二槽位读取标识为0,则表明两个控制器发生了槽位互换,第一槽位读取标识读取错误,第二槽位读取标识正确。此时,第一控制器将存储单元中所存储的第一槽位目标标识进行取反操作,即将第一槽位目标标识由0调整为1,第一控制器当前所在槽位为调整后的第一槽位目标标识所指示的第二槽位。
66.至此,完成了根据第一比对结果和第二比对结果确定第一控制器当前所在槽位的流程。
67.以下对根据第一比对结果确定第一控制器当前所在槽位的流程进行说明。
68.具体的,在低电平有效的场景中,第一控制器当前所在槽位的识别仅与第一比对结果有关,而与第二比对结果无关。该场景可分为如下两种情况:
69.第一种情况:c1_r=c1_e。
70.在该场景中,第一控制器通过目标输入端的电平值所确定的槽位标识与第一控制器的存储单元中所存储的槽位标识相同,此时,第一槽位读取标识读取正确,两个控制器并未发生槽位互换,可将第一控制器当前所在槽位确定为第一槽位读取标识所指示的槽位或者第一槽位目标标识所指示的槽位。
71.第二种情况:c1_r≠c1_e。
72.在该场景中,第一控制器通过目标输入端的电平值所确定的槽位标识与第一控制器的存储单元中所存储的槽位标识不同,两个控制器的槽位发生了交换,此时,第一槽位读取标识是正确的槽位标识,因此,第一控制器当前所在槽位为第一槽位读取标识所指示的槽位,同时,第一控制器也将存储单元中存储的第一槽位目标标识更新为第一槽位读取标
识。
73.至此,完成了根据第一比对结果确定第一控制器当前所在槽位的流程。
74.对于第二控制器,在高电平有效的场景中,第二控制器当前所在槽位的识别仅与第二比对结果有关,而与第一比对结果无关。该场景与低电平有效场景中,第一控制器根据第一比对结果确定第一控制器当前所在槽位的场景类似。
75.具体的,若c2_r=c2_e,则确定第二槽位读取标识正确,两个控制器并未发生槽位互换,可将第二控制器当前所在槽位确定为第二槽位读取标识所指示的槽位或者第二槽位目标标识所指示的槽位。
76.若c2_r≠c2_e,则确定两个控制器的槽位发生了交换,此时,第二槽位读取标识是正确的槽位标识,因此,第二控制器当前所在槽位为第二槽位读取标识所指示的槽位,同时,第二控制器也将存储单元中存储的第二槽位目标标识更新为第二槽位读取标识。
77.在低电平有效的场景中,第二控制器当前所在槽位的识别与第一比对结果和第二比对结果有关。该场景与高电平有效场景中,第一控制器根据第一比对结果和第二比对结果确定第一控制器当前所在槽位的场景类似。
78.具体的,若c1_r=c1_e,且c2_r=c2_e,则确定第二槽位读取标识读取正确,并将第二控制器当前所在槽位确定为第二槽位读取标识所指示的槽位;
79.若c1_r=c1_e,且c2_r≠c2_e,则确定第二槽位读取标识读取错误,并将第二控制器当前所在槽位确定为第二槽位目标标识所指示的槽位;
80.若c1_r≠c1_e,且c2_r≠c2_e,则确定第二槽位读取标识读取正确,并且,第一控制器与第二控制器发生了槽位互换,将第二控制器当前所在槽位确定为第二槽位读取标识所指示的槽位,并将第二槽位目标标识更新为第二槽位读取标识;
81.若c1_r≠c1_e,且c2_r=c2_e,则确定第二槽位读取标识读取错误,并且,第一控制器与第二控制器发生了槽位互换;将第二槽位目标标识调整为第一槽位目标标识,并将第二控制器当前所在槽位确定为调整后的第二槽位目标标识所指示的槽位。
82.至此,完成了第二控制器根据第一比对结果和第二比对结果或者第二比对结果确定第二控制器当前所在槽位的流程。
83.与前述方法的实施例相对应,本说明书还提供了槽位识别装置及其所应用的电子设备的实施例。
84.如图2所示,图2是本技术实施例示出的一种槽位识别装置的框图,上述槽位识别装置应用于部署在背板上的第一控制器中,背板上还部署有第二控制器,第一控制器与第二控制器部署在背板的不同槽位中,该装置包括:第一标识比对模块、第二标识比对模块以及槽位识别模块。
85.第一标识比对模块,用于比对从第一控制器的存储单元中读取到的第一槽位目标标识,与由第一控制器的目标输入端的电平值所确定的第一槽位读取标识,得到第一比对结果,其中,第一槽位目标标识为首次识别时输入至第一控制器的存储单元中的第一控制器所在槽位的标识,或者,非首次识别时上一次所识别到的第一控制器所在槽位的标识;第一控制器的目标输入端与第一控制器当前所在槽位中的目标引脚连接;
86.第二标识比对模块,用于比对从第二控制器的存储单元中读取到的第二槽位目标标识,与由第二控制器的目标输入端的电平值所确定的第二槽位读取标识,得到第二比对
结果,其中,第二槽位目标标识为首次识别时输入至第二控制器的存储单元中的第二控制器所在槽位的槽位标识,或者,非首次识别时上一次所识别到的第二控制器所在槽位的标识;第二控制器的目标输入端与第二控制器当前所在槽位中的目标引脚连接;
87.槽位识别模块,用于根据第一控制器的目标输入端处于悬空状态时的电平值从第一比对结果和第二比对结果中确定目标比对结果,并基于目标比对结果确定第一控制器当前所在槽位的位置。
88.可选的,第一槽位目标标识所指示槽位中与第一控制器的目标输入端连接的引脚的电平值小于第二槽位目标标识所指示槽位中与第二控制器的目标输入端连接的引脚的电平值。
89.可选的,槽位识别模块具体用于若第一控制器的目标输入端处于悬空状态时的电平值为第一电平值,则确定目标比对结果由第一比对结果和第二比对结果组成,并根据第一比对结果和第二比对结果确定第一控制器当前所在槽位的位置;若第一控制器的目标输入端处于悬空状态时的电平值为第二电平值,则确定目标比对结果由第一比对结果组成,并根据第一比对结果确定第一控制器当前所在槽位的位置,第一电平值大于第二电平值。
90.可选的,在根据第一比对结果和第二比对结果,确定第一控制器当前所在槽位的位置的场景中,槽位识别模块具体用于若第一槽位读取标识与第一槽位目标标识相同,且,第二槽位读取标识与第二槽位目标标识相同,则确定第一槽位读取标识读取正确,并将第一控制器当前所在槽位确定为第一槽位读取标识所指示的槽位。
91.可选的,在根据第一比对结果和第二比对结果,确定第一控制器当前所在槽位的位置的场景中,槽位识别模块具体用于若第一槽位读取标识与第一槽位目标标识不相同,且,第二槽位读取标识与第二槽位目标标识相同,则确定第一槽位读取标识读取错误,并将第一控制器当前所在槽位确定为第一槽位目标标识所指示的槽位。
92.可选的,在根据第一比对结果和第二比对结果,确定第一控制器当前所在槽位的位置的场景中,槽位识别模块具体用于若第一槽位读取标识与第一槽位目标标识不相同,且,第二槽位读取标识与第二槽位目标标识也不相同,则确定第一槽位读取标识读取正确,并且,第一控制器与第二控制器发生了槽位互换;将第一控制器当前所在槽位确定为第一槽位读取标识所指示的槽位,并将第一槽位目标标识更新为第一槽位读取标识。
93.可选的,在根据第一比对结果和第二比对结果,确定第一控制器当前所在槽位的位置的场景中,槽位识别模块具体用于若第一槽位读取标识与第一槽位目标标识相同,且,第二槽位读取标识与第二槽位目标标识不相同,则确定第一槽位读取标识读取错误,并且,第一控制器与第二控制器发生了槽位互换;将第一槽位目标标识调整为第二槽位目标标识,并将第一控制器当前所在槽位确定为调整后的第一槽位目标标识所指示的槽位。
94.可选的,在根据第一比对结果确定第一控制器当前所在槽位的位置的场景中,槽位识别模块具体用于若第一槽位读取标识与第一槽位目标标识相同,则确定第一槽位读取标识读取正确,并将第一控制器当前所在槽位确定为第一槽位读取标识所指示的槽位。
95.可选的,在根据第一比对结果确定第一控制器当前所在槽位的位置的场景中,槽位识别模块具体用于若第一槽位读取标识与第一槽位目标标识不相同,则确定第一槽位读取标识读取正确,将第一控制器当前所在槽位确定为第一槽位读取标识所指示的槽位,并将第一槽位目标标识更新为第一槽位读取标识。
96.上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
97.对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
98.对应地,本技术实施例还提供了图3所示电子设备的硬件结构图,具体如图3所示,该电子设备可以为上述实施方法的设备。如图3所示,该硬件结构包括:处理器和存储器。
99.其中,所述存储器,用于存储机器可执行指令;
100.所述处理器,用于读取并执行所述存储器存储的机器可执行指令,以实现如上所示的所对应的槽位识别方法实施例。
101.作为一个实施例,存储器可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,存储器可以是:易失存储器、非易失性存储器或者类似的存储介质。具体地,存储器可以是ram(radom access memory,随机存取存储器)、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
102.至此,完成图3所示电子设备的描述。
103.基于同样的发明构思,本实施例还提供了计算机可读存储介质。该计算机可读存储介质,用于存储计算机程序;该计算机程序被处理器执行时实现上述的方法实施例。
104.上述对本技术特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
105.本领域技术人员在考虑说明书及实践这里申请的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
106.应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。
107.以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。
技术特征:
1.一种槽位识别方法,其特征在于,应用于部署在背板上的第一控制器中,所述背板上还部署有第二控制器,所述第一控制器与所述第二控制器部署在所述背板的不同槽位中,所述方法包括:比对从所述第一控制器的存储单元中读取到的第一槽位目标标识,与由所述第一控制器的目标输入端的电平值所确定的第一槽位读取标识,得到第一比对结果,其中,所述第一槽位目标标识为首次识别时输入至所述第一控制器的存储单元中的所述第一控制器所在槽位的标识,或者,非首次识别时上一次所识别到的所述第一控制器所在槽位的标识;所述第一控制器的目标输入端与所述第一控制器当前所在槽位中的目标引脚连接;比对从所述第二控制器的存储单元中读取到的第二槽位目标标识,与由所述第二控制器的目标输入端的电平值所确定的第二槽位读取标识,得到第二比对结果,其中,所述第二槽位目标标识为首次识别时输入至所述第二控制器的存储单元中的所述第二控制器所在槽位的槽位标识,或者,非首次识别时上一次所识别到的所述第二控制器所在槽位的标识;所述第二控制器的目标输入端与所述第二控制器当前所在槽位中的目标引脚连接;根据所述第一控制器的目标输入端处于悬空状态时的电平值从所述第一比对结果和所述第二比对结果中确定目标比对结果,并基于所述目标比对结果确定所述第一控制器当前所在槽位的位置。2.根据权利要求1所述的方法,其特征在于,所述第一槽位目标标识所指示槽位中与所述第一控制器的目标输入端连接的引脚的电平值小于所述第二槽位目标标识所指示槽位中与所述第二控制器的目标输入端连接的引脚的电平值。3.根据权利要求2所述的方法,其特征在于,根据所述第一控制器的目标输入端处于悬空状态时的电平值从所述第一比对结果和所述第二比对结果中确定目标比对结果,并基于所述目标比对结果确定所述第一控制器当前所在槽位的位置,包括:若所述第一控制器的目标输入端处于悬空状态时的电平值为第一电平值,则确定所述目标比对结果由所述第一比对结果和所述第二比对结果组成,并根据所述第一比对结果和所述第二比对结果确定所述第一控制器当前所在槽位的位置;若所述第一控制器的目标输入端处于悬空状态时的电平值为第二电平值,则确定所述目标比对结果由所述第一比对结果组成,并根据所述第一比对结果确定所述第一控制器当前所在槽位的位置,所述第一电平值大于所述第二电平值。4.根据权利要求3所述的方法,其特征在于,根据所述第一比对结果和所述第二比对结果,确定所述第一控制器当前所在槽位的位置,包括:若所述第一槽位读取标识与所述第一槽位目标标识相同,且,所述第二槽位读取标识与所述第二槽位目标标识相同,则确定所述第一槽位读取标识读取正确,并将所述第一控制器当前所在槽位确定为所述第一槽位读取标识所指示的槽位。5.根据权利要求3所述的方法,其特征在于,根据所述第一比对结果和所述第二比对结果,确定所述第一控制器当前所在槽位的位置,包括:若所述第一槽位读取标识与所述第一槽位目标标识不相同,且,所述第二槽位读取标识与所述第二槽位目标标识相同,则确定所述第一槽位读取标识读取错误,并将所述第一控制器当前所在槽位确定为所述第一槽位目标标识所指示的槽位。6.根据权利要求3所述的方法,其特征在于,根据所述第一比对结果和所述第二比对结
果,确定所述第一控制器当前所在槽位的位置,包括:若所述第一槽位读取标识与所述第一槽位目标标识不相同,且,所述第二槽位读取标识与所述第二槽位目标标识也不相同,则确定所述第一槽位读取标识读取正确,并且,所述第一控制器与所述第二控制器发生了槽位互换;将所述第一控制器当前所在槽位确定为所述第一槽位读取标识所指示的槽位,并将所述第一槽位目标标识更新为所述第一槽位读取标识。7.根据权利要求3所述的方法,其特征在于,根据所述第一比对结果和所述第二比对结果,确定所述第一控制器当前所在槽位的位置,包括:若所述第一槽位读取标识与所述第一槽位目标标识相同,且,所述第二槽位读取标识与所述第二槽位目标标识不相同,则确定所述第一槽位读取标识读取错误,并且,所述第一控制器与所述第二控制器发生了槽位互换;将所述第一槽位目标标识调整为所述第二槽位目标标识,并将所述第一控制器当前所在槽位确定为调整后的第一槽位目标标识所指示的槽位。8.根据权利要求3所述的方法,其特征在于,根据所述第一比对结果确定所述第一控制器当前所在槽位的位置,包括:若所述第一槽位读取标识与所述第一槽位目标标识相同,则确定所述第一槽位读取标识读取正确,并将所述第一控制器当前所在槽位确定为所述第一槽位读取标识所指示的槽位。9.根据权利要求3所述的方法,其特征在于,根据所述第一比对结果确定所述第一控制器当前所在槽位的位置,包括:若所述第一槽位读取标识与所述第一槽位目标标识不相同,则确定所述第一槽位读取标识读取正确,将所述第一控制器当前所在槽位确定为所述第一槽位读取标识所指示的槽位,并将所述第一槽位目标标识更新为所述第一槽位读取标识。10.一种槽位识别装置,其特征在于,应用于部署在背板上的第一控制器中,所述背板上还部署有第二控制器,所述第一控制器与所述第二控制器部署在所述背板的不同槽位中,所述装置包括:第一标识比对模块,用于比对从所述第一控制器的存储单元中读取到的第一槽位目标标识,与由所述第一控制器的目标输入端的电平值所确定的第一槽位读取标识,得到第一比对结果,其中,所述第一槽位目标标识为首次识别时输入至所述第一控制器的存储单元中的所述第一控制器所在槽位的标识,或者,非首次识别时上一次所识别到的所述第一控制器所在槽位的标识;所述第一控制器的目标输入端与所述第一控制器当前所在槽位中的目标引脚连接;第二标识比对模块,用于比对从所述第二控制器的存储单元中读取到的第二槽位目标标识,与由所述第二控制器的目标输入端的电平值所确定的第二槽位读取标识,得到第二比对结果,其中,所述第二槽位目标标识为首次识别时输入至所述第二控制器的存储单元中的所述第二控制器所在槽位的槽位标识,或者,非首次识别时上一次所识别到的所述第二控制器所在槽位的标识;所述第二控制器的目标输入端与所述第二控制器当前所在槽位中的目标引脚连接;槽位识别模块,用于根据所述第一控制器的目标输入端处于悬空状态时的电平值从所
述第一比对结果和所述第二比对结果中确定目标比对结果,并基于所述目标比对结果确定所述第一控制器当前所在槽位的位置。11.一种电子设备,其特征在于,电子设备包括:处理器和存储器;其中,所述存储器,用于存储机器可执行指令;所述处理器,用于读取并执行所述存储器存储的机器可执行指令,以实现如权利要求1至9任一项所述的方法。
技术总结
本申请提供一种槽位识别方法、装置及电子设备。在本实施例中,在判断控制器所在槽位的过程中,不仅考虑到了控制器的目标输入端的电平值的大小,还以上一次所识别到的控制器的所在槽位作为参考来识别控制器当前所在槽位,以及其他控制器的目标输入端的电平值大小与其他控制器上一次所识别到的槽位,在不增加成本的情况下,避免了由于控制器的目标输入端与槽位中的目标引脚虚接或控制器插入背板的速度过快所导致的槽位识别错误的问题,并且,在两个控制器的位置发生交换时,也能够准确识别出位置交换后的控制器的所在槽位,提高了槽位识别的准确度。别的准确度。别的准确度。
技术研发人员:陈凯杰
受保护的技术使用者:杭州宏杉科技股份有限公司
技术研发日:2023.06.05
技术公布日:2023/10/11
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
