CN113296998A - 数据通信异常恢复方法、装置、电子设备及存储介质 - Google Patents

数据通信异常恢复方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN113296998A
CN113296998A CN202110695055.9A CN202110695055A CN113296998A CN 113296998 A CN113296998 A CN 113296998A CN 202110695055 A CN202110695055 A CN 202110695055A CN 113296998 A CN113296998 A CN 113296998A
Authority
CN
China
Prior art keywords
chip
target
pin
information
data
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
Application number
CN202110695055.9A
Other languages
English (en)
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.)
FAW Group Corp
Original Assignee
FAW Group Corp
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 FAW Group Corp filed Critical FAW Group Corp
Priority to CN202110695055.9A priority Critical patent/CN113296998A/zh
Publication of CN113296998A publication Critical patent/CN113296998A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Abstract

本发明实施例公开了一种数据通信异常恢复方法、装置、电子设备及存储介质,所述方法包括:当第一芯片接收到第二芯片发送的目标数据且所述目标数据异常时,则基于所述第一芯片检测所述第二芯片的目标引脚信息;根据所述目标引脚信息与预设引脚集合中的信息匹配关系,确定对所述第二芯片的目标处理方式;基于所述目标处理方式,对所述第二芯片进行处理,以使数据通信正常。本发明实施例的技术方案实现保证第一芯片和第二芯片之间的数据通信正常。

Description

数据通信异常恢复方法、装置、电子设备及存储介质
技术领域
本发明实施例涉及数据处理技术领域,尤其涉及一种数据通信异常恢复方法、装置、电子设备及存储介质。
背景技术
随着汽车行业的蓬勃发展,车辆的功能越来越多,随之而来的车载控制器硬件架构也越来越复杂,经常在一个控制器中集成了多个子控制器芯片,这样就带来了大量芯片的芯片间通信需求。
与UART、I2C等芯片间通信方式相比,基于SPI的通信方式在板级的芯片间通信一直是研发人员常用的通信方式。但是面对车辆的复杂工况,现今的SPI通信方式经常会出现通信故障或者数据传输错误的问题。
发明内容
本发明实施例提供一种数据通信异常恢复方法、装置、电子设备及存储介质,以实现对板级芯片间通信异常的检测以及处理,以使板级芯片间通信正常。
第一方面,本发明实施例提供了一种数据通信异常恢复方法,包括:
当第一芯片接收到第二芯片发送的目标数据且所述目标数据异常时,则基于所述第一芯片检测所述第二芯片的目标引脚信息;
根据所述目标引脚信息与预设引脚集合中的信息匹配关系,确定对所述第二芯片的目标处理方式;
基于所述目标处理方式,对所述第二芯片进行处理,以使数据通信正常。
第二方面,本发明实施例还提供了一种数据通信异常恢复装置,所述装置包括:
目标引脚信息检测模块,用于当第一芯片接收到第二芯片发送的目标数据且所述目标数据异常时,则基于所述第一芯片检测所述第二芯片的目标引脚信息;
目标处理方法确定模块,用于根据所述目标引脚信息与预设引脚集合中的信息匹配关系,确定对所述第二芯片的目标处理方式;
第二芯片处理模块,用于基于所述目标处理方式,对所述第二芯片进行处理,以使数据通信正常。
第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明实施例任一所述的数据通信异常恢复方法。
第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如本发明实施例任一所述的数据通信异常恢复方法。
本发明实施例的技术方案,通过对第一芯片接收到第二芯片发送的目标数据进行判断,当第一芯片接收的目标数据异常,检测第二芯片的目标引脚信息,根据目标引脚信息与预设引脚集合中的信息匹配关系,确定对第二芯片的目标处理方式,基于目标处理方式,对第二芯片进行处理,以使数据通信正常。本发明实施例的技术方案实现了对第一芯片接收到的目标数据进行判断,当目标数据异常,对发送目标数据的第二芯片的目标引脚信息进行检测,以根据目标引脚信息和预设引脚集合中的信息匹配关系,确定第二芯片的目标处理方式,以及时基于目标处理方式对第二芯片进行处理,恢复第二芯片的数据通信,保证第一芯片和第二芯片之间的数据通信正常。
附图说明
为了更加清楚地说明本发明示例性实施例的技术方案,下面对描述实施例中所需要用到的附图做一简单介绍。显然,所介绍的附图只是本发明所要描述的一部分实施例的附图,而不是全部的附图,对于本领域普通技术人员,在不付出创造性劳动的前提下,还可以根据这些附图得到其他的附图。
图1为本发明实施例一中的一种数据通信异常恢复方法的流程示意图;
图2为本发明实施例二中的一种数据通信异常恢复方法的流程示意图;
图3为本发明实施例三中的一种主机芯片和从机芯片间通信示意图;
图4为本发明实施例三中的一种数据通信异常恢复方法的流程示意图;
图5为本发明实施例四中的一种数据通信异常恢复装置的结构示意图;
图6为本发明实施例五中的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例所提供的一种数据通信异常恢复方法的流程示意图,本实施例可适用于在车辆控制器中的板级芯片间的通信异常的情况,该方法可以由数据通信异常恢复装置来执行,该装置可以通过软件和/或硬件的形式实现。
如图1所述,本发明实施例的数据通信异常恢复方法具体包括如下步骤:
S110、当第一芯片接收到第二芯片发送的目标数据且所述目标数据异常时,则基于所述第一芯片检测所述第二芯片的目标引脚信息。
其中,第一芯片和第二芯片是指车载控制器中的印制电路板上的芯片。第一芯片和第二芯片是相对的,如,当第一芯片为主机芯片,第二芯片为从机芯片,相应的,若第一芯片为从机芯片时,对应的第二芯片为主机芯片。第一芯片和第二芯片之间的数据通信方式为全双工通信,即每个芯片均可以实现数据的发送和接收;也可以设置为半双工通信方式,即某个芯片只发送数据不接收数据或者只接收数据不发送数据。需要说明的是,第一芯片和第二芯片之间的通信协议可以根据实际需求设置,这里不做具体限定。目标数据是指第一芯片接收的数据,目标数据包括协议头、数据内容、校验值、协议尾等。其中,校验值是指目标数据通过预设算法得到的理论校验值,该校验值用于表征数据的完整性和准确性。目标引脚是指第二芯片向第一芯片发送指令以确定通信协议的引脚,比如,若第一芯片向第二芯片发送目标数据,则目标引脚为第一芯片上的引脚,若第二芯片向第一芯片发送目标数据,则目标引脚为第二芯片上的引脚。从机芯片中包括的引脚是GIPO引脚、Capture引脚,主机芯片中的引脚包括:GPIO引脚和PWM引脚。当第二芯片为主机芯片时,目标引脚可以设置为Status引脚(原PWM引脚),当第二芯片为从机芯片,目标引脚可以设置为Reset引脚(原GPIO引脚)。目标引脚信息包括但不限于目标引脚的名称、目标引脚是否可以发出指令、目标引脚发出的指令是否对应于当前通信协议。可选的,目标引脚周期性的发出指令,所述指令的表现形式包括但不限于脉冲信号,比如,目标引脚发出脉冲宽度调制(Pulse WidthModulation,PWM)脉冲信号。根据PWM脉冲信号的高电平的时间可以得到占空比,在第一芯片和第二芯片中预先设置有不同占空比和通信协议之间的关联关系,当接收到PWM脉冲信号也即接收到目标占空比后,可以根据占空比和通信协议之间的关联关系确定目标数据通信协议。以便基于目标数据通信协议做数据接收的准备工作,比如,准备适应大小的缓存。
目标数据异常包括但不限于根据预设的校验方式对目标数据进行校验,得到的校验值与目标数据中包含的理论校验值不匹配,接收到的目标数据不完整,比如,目标数据的协议头、数据内容、协议尾等不完整。
具体的,当第一芯片接收到第二芯片发送的目标数据且目标数据异常时,基于第一芯片检测第二芯片的目标引脚信息,以确定目标引脚是否正常工作。可选的,可以设置预设次数,当第一芯片接收到目标数据,并确定目标数据异常的次数大于预设次数时,触发第一芯片检测第二芯片的目标引脚信息的操作。
需要说明的是,本发明实施例中第一芯片和第二芯片之间采用SPI总线进行数据通信传输。比如,当第一芯片为主机芯片,第二芯片为从机芯片,第一芯片和第二芯片之间通过SPI总线通信时,第一芯片通过MISO引脚接收第二芯片发送的目标数据。相反,当第一芯片为从机芯片,第二芯片为主机芯片,第一芯片通过MOSI引脚接收第二芯片发送的目标数据。
可选的,基于所述第一芯片接收所述第二芯片发送的协议关联数据;所述第二芯片基于所述协议关联数据,向所述第一芯片发送所述目标数据;其中,协议关联数据包括数据占空比以及协议发送频率中的至少一个。
其中,协议关联数据是指第一芯片和第二芯片之间的数据通信的协议数据,在第一芯片和第二芯片中存储有协议关联数据与通信协议之间的对应关系,当第一芯片接收了协议关联关系数据后,基于协议关联数据、协议关联数据与通信协议之间的对应关系确定当前通信协议。可以设置为脉冲信号的形式,比如PWM脉冲信号,协议关联数据中的数据占空比指PWM脉冲信号中一个脉冲周期内高电平时间与周期的比值。协议发送频率指PWM脉冲周期,可以理解,若当前脉冲周期结束,需要重新发送协议关联数据,以确定是否更换了通信协议,相应的,是否需要重新设置缓存的大小等。第一芯片接收第二芯片发送的协议关联数据,并基于协议关联数据确定当前的通信协议,准备相应大小的缓存。第二芯片基于该协议关联数据对应的通信协议向第一芯片发送目标数据。在第二芯片发送目标数据之前,先发送协议关联数据,以使双方的通信协议统一,双方可以基于相同的通信协议进行数据传输,提高数据传输的可靠性,并且,协议关联数据是周期性发出的,可以在当前脉冲周期结束后,发送其他的协议关联数据,以通知对方,更换通信协议。应当理解,第一芯片和第二芯片都可以发出协议关联数据。可选的,当当前脉冲周期结束时,双方都发送了协议关联数据,以主机芯片的协议关联数据为准,进行通信协议。
可选的,所述第一芯片和所述第二芯片中包括第一功能引脚和第二功能引脚;所述第一功能引脚和所述第二功能引脚用于初始化以及传输协议关联数据。
其中,第一功能引脚和第二功能引脚具有传输协议关联数据和初始化指令的作用。可选的,设置第一功能引脚具备发送协议关联数据和初始化指令的功能,设置第二功能引脚具备接收协议关联数据和初始化指令的功能,这样,可以设置第一芯片的第一功能引脚与第二芯片的第二功能引脚相连,对应的,第一芯片的第二功能引脚与第二芯片的第一功能引脚相连。通过第一芯片中的第一功能引脚发送协议关联数据或者初始化指令至第二芯片,以使第二芯片的第二功能引脚接收协议关联数据或者初始化指令,并基于协议关联数据确定通信协议,并进行数据的发送或者接收,或者使第二芯片基于初始化指令进行初始化操作。相应的,通过第一芯片中的第二功能引脚接收第二芯片发送的协议关联数据或者初始化指令,并基于协议关联数据确定通信协议,并进行数据的发送或者接收,或者使第二芯片基于初始化指令进行初始化操作。可选的,当板级芯片通过SPI总线进行数据通信时,设置第一功能引脚或者第二功能引脚为Reset引脚,则另一个功能引脚设置为Status引脚。
S120、根据所述目标引脚信息与预设引脚集合中的信息匹配关系,确定对所述第二芯片的目标处理方式。
其中,预设引脚集合包括不同引脚状态和与引脚状态对应的引脚处理方式,如,目标引脚正常以及对应的引脚处理方式,目标引脚异常以及对应的处理方式。可选的,当目标引脚正常时,目标处理方式为初始化第二芯片的控制器,当目标引脚异常,目标处理方式为初始化第二芯片的中央处理器等。根据目标引脚信息和预设引脚集合中的信息进行匹配,确定对第二芯片的目标处理方式,以便后续基于目标处理方式对第二芯片进行处理。
S130、基于所述目标处理方式,对所述第二芯片进行处理,以使数据通信正常。
具体的,基于目标处理方式,对第二芯片进行处理,使得第一芯片接收第二芯片发送的目标数据正常。当对第二芯片进行处理之后,再次接受第二芯片通过目标引脚发送的协议关联数据,基于协议关联数据确定当前的通信协议,接受第二芯片发送的目标数据,进行步骤110的操作,依次循环处理,保证目标数据的正常。
本发明实施例的技术方案,通过对第一芯片接收到第二芯片发送的目标数据进行判断,当第一芯片接收的目标数据异常,检测第二芯片的目标引脚信息,根据目标引脚信息与预设引脚集合中的信息匹配关系,确定对第二芯片的目标处理方式,基于目标处理方式,对第二芯片进行处理,以使数据通信正常。本发明实施例的技术方案实现了对第一芯片接收到的目标数据进行判断,当目标数据异常,对发送目标数据的第二芯片的目标引脚信息进行检测,以根据目标引脚信息和预设引脚集合中的信息匹配关系,确定第二芯片的目标处理方式,以及时基于目标处理方式对第二芯片进行处理,恢复第二芯片的数据通信,保证第一芯片和第二芯片之间的数据通信正常。
实施例二
图2是本发明实施例提供数据通信异常恢复方法的流程示意图,在前述实施例的基础上,可以对步骤110进行具体优化,其优化的具体内容可以参见本实施例具体阐述。其中,与上述实施例相同或者相似的技术术语将不再赘述。
本发明实施例的数据通信异常恢复方法包括如下步骤:
S210、在所述第一芯片接收到第二芯片发送的目标数据时,基于预设校验方法对所述目标数据进行校验,得到目标校验结果。
其中,预设校验方式包括但不限于累加和校验、奇偶校验、循环冗余校验(CyclicRedundancy Check,CRC)、纵向冗余校验(Longitudinal Redundancy Check,LRC)、信息组校验(Block Check Character,BCC)等。当第一芯片接收到目标数据后,基于预设校验方式对目标数据进行校验,得到目标校验结果,是指对目标数据中的数据进行校验,也即去除协议头和协议尾部分的数据,后续提到的对目标数据的校验即对数据的校验。可选的,通信协议中包含校验方式,当确定了当前的通信协议的同时,也就确定了当前目标数据的校验方式。可选的,协议关联数据中包含有校验方式,第一芯片接收协议关联数据后,基于协议关联数据和第一芯片内存储的协议关联数据与通信协议之间的对应关系确定当前的通信协议,准备适应大小的缓存,并基于协议关联数据确定目标数据的校验方式,在协议关联数据中包含校验方式,可以基于第二芯片随时对校验方式进行更改,对校验方式的应用更加灵活。
S220、如果所述目标校验结果与所述第二芯片发送的理论校验值不一致,则所述目标数据异常。
其中,第二芯片在发送目标数据之前通过预设校验方式对目标数据中的实际数据进行校验,得到理论校验值,将其添加到目标数据中,第一芯片对目标数据进行校验得到的目标校验结果与理论校验值进行比较,当二者不一致,确定目标数据异常。
S230、确定与所述目标数据对应的目标数据通信协议;基于所述目标数据通信协议,确定当前时刻所对应的目标占空比信息。
其中,目标数据通信协议与目标占空比信息之间存在一一对应关系,所以,当确定目标数据对应的目标数据通信协议后,可以直接基于目标数据通信协议与目标占空比信息之间的对应关系确定当前时刻对应的目标占空比信息。
可选的,在第一芯片接收第二芯片的目标引脚发送的协议关联数据,基于协议关联数据、第一芯片中存储的占空比信息和数据通信协议的对应关系,确定当前目标数据的通信协议时,暂存当前协议关联数据中的目标占空比信息,当目标数据异常时,直接确定当前时刻目标占空比信息。其中,当当前脉冲周期的通信结束,第一芯片删除暂存的目标占空比信息。
S240、根据所述目标占空比信息,确定所述目标引脚信息中的引脚异常信息,以根据所述引脚异常信息确定对所述第二芯片的目标处理方式。
其中,引脚异常信息是指第一芯片无法从目标引脚接收到正常的协议关联数据。引脚异常信息包括但不限于目标引脚出现物理故障,比如,焊点断裂、导线断裂等,通信故障,比如,通信参数故障等。目标引脚信息中包括当前占空比信息、目标引脚是否可以发出信息等。通过目标占空比信息和目标引脚信息中的占空比信息,确定目标引脚的引脚异常信息,并基于引脚异常信息确定对第二芯片的目标处理方式。
在本实施例中,确定引脚故障的类型可以是:确定目标引脚信息中目标引脚是否发出信息,当目标引脚可以发出信息,则其故障类型不为物理故障,此时可以考虑故障类型为通信故障;若为通信故障,则可以基于目标占空比信息与目标引脚信息中当前占空比信息的比对,确定目标引脚是否可以发出正常的协议关联数据,从而确认其是否为通信故障。
所述根据所述目标引脚信息与预设引脚集合中的信息匹配关系,确定对所述第二芯片的目标处理方式,包括:如果所述目标引脚信息中的引脚异常信息与预设引脚集合中的第一引脚异常相匹配,则所述目标处理方式为对所述第二芯片的控制器初始化;如果所述目标引脚信息中的引脚异常信息与预设引脚集合中的第二引脚异常相匹配,则所述目标处理方式为对所述第二芯片的中央处理器初始化。
其中,预设引脚集合中存储有第一引脚异常、第一引脚异常对应的目标处理方式、第二引脚异常以及第二引脚异常对应的目标处理方式。第一引脚异常是指目标引脚正常,可以发送协议关联数据,也即目标数据异常但是目标引脚正常。第一引脚异常对应的处理方式可以是对目标引脚所在的芯片的控制器初始化。第二引脚异常是指目标引脚出现通信异常,也即目标数据异常且目标引脚异常。第二引脚异常对应的处理方式可以是对目标引脚所在的芯片初始化。第二芯片的控制器是指与第一芯片进行通信的外部设备,比如,第一芯片与第二芯片之间通过SPI总线进行通信,这里的控制器是指SPI外设。
具体的,当引脚异常信息与第一引脚异常相匹配时,确定目标处理方式对应为对第二芯片的控制器进行初始化,可以是第一芯片发送第一初始化信号至第二芯片,第二芯片接收到第一初始化信号,并基于第一初始化信号进行控制器的初始化操作。当引脚异常信息与第二引脚异常相匹配时,确定目标处理方式对应为第二芯片的中央处理器进行初始化,可以是第一芯片发送第二初始化信号至第二芯片,以使第二芯片接收到第二初始化信号,并基于第二初始化信号进行中央处理器的初始化操作。
可选的,在另一实施例中,所述基于所述第一芯片检测所述第二芯片的目标引脚信息,包括:基于第一芯片中的引脚检测模块,确定所述目标引脚是否为物理故障;若是,则与所述第二芯片对应的目标处理方式为报错提示;相应的,所述基于所述目标处理方式,对所述第二芯片进行处理,包括:基于所述报错提示,生成发送至与所述第一芯片和所述第二芯片相对应的目标客户端的报错信息,以基于所述报错信息对相应用户进行提示。
其中,物理故障是指目标引脚无法通过初始化操作恢复原有功能的故障。物理故障需要人为操作或者机器操作对目标引脚、与目标引脚连接的导线等进行修复。目标客户端可以是研发人员、运维工作人员或者用户的终端设备等,其中,终端设备包括移动终端、计算机、平板电脑等。报错信息的体现形式可以文字、语音、图表等。报错信息包括但不限于目标引脚所处的芯片型号、目标引脚位置信息、目标引脚出现故障的时间等。报错信息的提示方式包括但不限于短信、APP推送消息、电话等。
具体的,第一芯片将报错信息发送至第一芯片和第二芯片相对应的目标客户端,以对用户进行提示,便于用户及时对第二芯片的目标引脚进行检修。
S250、基于所述目标处理方式,对所述第二芯片进行处理,以使数据通信正常。
具体的,当第一芯片为主机芯片,第二芯片为从机芯片时,第一芯片和第二芯片之间进行数据传输。若第一芯片接收到的目标数据异常,而检测目标引脚正常,则对应的目标处理方式为通过第一芯片的MOSI发送初始化指令至第二芯片,以使第二芯片中的控制器进行初始化操作。若第一芯片接收到的目标数据异常,且检测目标引脚异常,则通过第一芯片的Status引脚发送初始化指令至第二芯片,以使第二芯片的中央处理器进行初始化操作。当第二芯片的控制器或者中央处理器初始化操作之后,重新进行数据传输,以实现数据的正常通信。
本发明实施例的技术方案,通过预设校验方法对第一芯片接收到的第二芯片发送的目标数据,得到目标校验结果,如果目标校验结果和第二芯片发送的理论校验值不一致,确定目标数据异常,确定目标数据对应的目标数据通信协议,基于目标数据通信协议,确定当前时刻所对应的目标占空比信息,并基于目标占空比信息确定目标引脚信息中的引脚异常信息,根据引脚异常信息确定第二芯片的目标处理方式,以基于目标处理方式对第二芯片进行处理,使数据通信正常。本发明实施例提供的技术方案实现了根据预设校验方法对目标数据进行校验,以确定目标数据是否异常,当目标数据异常时,确定当前目标数据对应的目标占空比信息,以确定目标引脚的引脚异常信息,之后可以根据引脚异常信息确定目标处理方式,以对目标引脚进行处理,保证数据在第一芯片和第二芯片之间的通信正常,提高数据通信的可靠性。
实施例三
本发明实施例是在上述实施例的基础上的可选方案,本发明实施例针对在汽车车载控制器中的各个控制器板级芯片间的数据通信,板级芯片间采用SPI总线方式进行数据通信。图3所示为本发明实施例提供的一种主机芯片和从机芯片间通信示意图,如图所示:
需要说明的是,为了清楚的介绍本实施例技术方案,以第一芯片为主机芯片,第二芯片为从机芯片为例来介绍。
板级芯片设置为主机芯片和从机芯片,主机芯片与从机芯片通过3线SPI连接,包括MISO信号线、MOSI信号线、SCLK信号线。设置Status信号线(PWM信号)连接主机芯片PWM引脚(之后称为Status引脚)和从机芯片捕获引脚,用于主机芯片向从机芯片发送初始化指令以对从机芯片的控制器或者中央处理器进行初始化操作,发送协议关联数据以使从机芯片确定当前的目标数据的通信协议。设置Reset信号线连接主机芯片GPIO引脚和从机芯片GPIO引脚(后面称为为Reset引脚),用于从机芯片向主机芯片发送初始化指令和协议关联数据至主机芯片。主机芯片通过3线SPI与从机芯片建立全双工高速通讯。主机芯片和从机芯片预先设置不同的通信协议对应的不同的占空比信息或不同频率信号,主机芯片通过Status引脚发送协议关联数据以使从机芯片接收到协议关联数据后,基于协议关联数据中的占空比信息(或者频率信号)与从机芯片内存储的占空比信息(或者频率信号)与通信协议之间的对应关系,确定当前目标数据的通信协议。比如,在车载ECU的Boot模式下采用70%占空比,在APP模式下采用30%占空比。从机芯片通过不同的Status引脚发送的信号来区分不同通信协议,同时从机芯片通过Status引脚发送的信号来实现对主机芯片的通信协议的监控;从机芯片通过Reset引脚信号来控制主机芯片通信状态,不同电平信号代表从机芯片不同请求,例如:从机芯片检测到主机芯片传输数据异常,通过Reset引脚发送低电平信号,以使主机芯片进入初始化操作,并重新发起SPI通信,极大提高通信的鲁棒性。
图4所示为本发明实施例提供的一种数据通信异常恢复方法的流程示意图。如图4所示,首先对主机芯片和从机芯片进行初始化操作,分别对主机芯片和从机芯片的SPI控制器进行初始化操作,从机芯片通过Reset引脚输出代表从机芯片初始化完成的高电平。
主机芯片通过Status引脚发送相关通信协议的占空比信号至从机芯片,从机芯片接收不同的PWM信号,匹配不同的通信协议,初始化SPI控制器及接收发送数据缓存或者直接存储器访问(Direct Memory Access,DMA)。同一个通信协议下的主机芯片和从机芯片采用周期性的通信,比如,间隔1ms、5ms等,在SCLK时钟信号发出时,主机芯片和从机芯片可以发送\接收目标数据,实现全双工通信,对目标数据的解析可以按照通信协议中设置的协议规范进行解析。
主机芯片和从机芯片都可以实现对通信协议的切换,对于不同的通信协议,在主机芯片和从机芯片中预先设置了每种通信协议的编号。当主机芯片或者从机芯片接收到对方发送的更新通信协议时,基于该更新通信协议在当前通信协议对应标识位置切换标签和更新通信协议的编号,得到更新通信协议状态标志后初始化数据缓存或者DMA。并在切换通信协议后等待时钟信号,进行正常的通信。
数据通信异常分为主机芯片检测到数据通信异常和从机芯片检测到数据通信异常,异常等级分为两级。
可选的,一级数据通信异常为主机芯片接收的目标数据异常,检测到从机芯片的Reset引脚正常。具体的,通过主机芯片检测到接收的数据协议头或者对于目标数据的校验得到的校验值连续出错,并且出错的次数大于预设值,此时检测到的从机芯片的Reset引脚正常,则通过主机芯片的MOSI发送初始化信号,以使从机芯片对SPI控制器以及当前通信协议的数据缓存进行初始化操作,之后重新通信。同理,从机芯片接收的目标数据异常,但检测主机芯片的Status引脚正常,具体的,通过从主机芯片检测接收的数据协议头或者对于目标数据的校验得到的校验值连续出错,并且出错的次数大于预设值,此时检测到的主机芯片的Status引脚正常,则通过从机芯片的MISO发送初始化信号,以使主机芯片对SPI控制器以及当前通信协议的数据缓存进行初始化操作,之后重新通信。二级数据通信异常为主机芯片接收的目标数据异常且检测从机芯片的Reset引脚异常。具体的,通过主机芯片检测到接收的数据协议头或者对于目标数据的校验得到的校验值连续出错,并且出错的次数大于预设值,此时检测到的从机芯片Reset引脚异常,则通过主机芯片的Status引脚发送初始化信号,以使从机芯片初始化操作,之后重新通信。同理,通过从机芯片检测到接收的目标数据异常,且检测主机芯片的Status引脚异常。具体的,通过从机芯片检测到接收的数据协议头或者对于目标数据的校验得到的校验值连续出错,并且出错的次数大于预设值,此时检测到的主机芯片的Status引脚异常,则通过从机芯片的Reset引脚发送初始化信号,以使主机芯片初始化操作,之后重新通信。其中,Status引脚或者Reset引脚异常是指通信异常,引脚可以发出信号,但是发出的信号出现错误等问题。
本发明实施例的技术方案,通过对主机芯片和从机芯片接收到对方发送的数据的检测,以及对对方的发送占空比信息的引脚的检测,确定数据通信异常的等级,之后根据不同等级确定不同的异常恢复方式,使双方的通信正常,提高数据通信的可靠性。
实施例四
图5为本发明实施例提供的一种数据通信异常恢复装置的结构示意图,本发明实施例所提供的数据通信异常恢复装置可执行本发明任意实施例所提供的数据通信异常恢复方法,具备执行方法相应的功能模块和有益效果。该装置包括:目标引脚信息检测模块510、目标处理方法确定模块520和第二芯片处理模块530;其中:
目标引脚信息检测模块510,用于当第一芯片接收到第二芯片发送的目标数据且所述目标数据异常时,则基于所述第一芯片检测所述第二芯片的目标引脚信息;
目标处理方法确定模块520,用于根据所述目标引脚信息与预设引脚集合中的信息匹配关系,确定对所述第二芯片的目标处理方式;
第二芯片处理模块530,用于基于所述目标处理方式,对所述第二芯片进行处理,以使数据通信正常。
进一步的,所述目标引脚信息检测模块510包括:
目标校验结果获取子模块,用于在所述第一芯片接收到第二芯片发送的目标数据时,基于预设校验方法对所述目标数据进行校验,得到目标校验结果;
目标数据异常确定子模块,用于如果所述目标校验结果与所述第二芯片发送的理论校验值不一致,则所述目标数据异常。
进一步的,所述目标引脚信息包括引脚异常信息;所述目标引脚信息检测模块510还包括:
目标占空比信息确定子模块,用于确定与所述目标数据对应的目标数据通信协议;基于所述目标数据通信协议,确定当前时刻所对应的目标占空比信息;
引脚异常信息确定子模块,用于根据所述目标占空比信息,确定所述目标引脚信息中的引脚异常信息,以根据所述引脚异常信息确定对所述第二芯片的目标处理方式。
进一步的,所述目标处理方法确定模块520包括:
第一初始化子模块,用于如果所述目标引脚信息中的引脚异常信息与预设引脚集合中的第一引脚异常相匹配,则所述目标处理方式为对所述第二芯片的控制器初始化;
第二初始化子模块,用于如果所述目标引脚信息中的引脚异常信息与预设引脚集合中的第二引脚异常相匹配,则所述目标处理方式为对所述第二芯片的中央处理器初始化。
进一步的,所述目标引脚信息检测模块510还包括:
报错提示子模块,用于基于第一芯片中的引脚检测模块,确定所述目标引脚是否为物理故障;若是,则与所述第二芯片对应的目标处理方式为报错提示;
相应的,所述第二芯片处理模块530包括:
用户提示子模块,用于基于所述报错提示,生成发送至与所述第一芯片和所述第二芯片相对应的目标客户端的报错信息,以基于所述报错信息对相应用户进行提示。
进一步的,所述装置还包括:
目标数据发送模块,用于所述第一芯片接收所述第二芯片发送的协议关联数据;所述第二芯片基于所述协议关联数据,向所述第一芯片发送所述目标数据;其中,协议关联数据包括占空比以及协议发送频率中的至少一个。
进一步的,所述第一芯片和所述第二芯片中包括第一功能引脚和第二功能引脚;所述第一功能引脚和所述第二功能引脚用于初始化以及传输协议关联数据。
本发明实施例的技术方案,通过对第一芯片接收到第二芯片发送的目标数据进行判断,当第一芯片接收的目标数据异常,检测第二芯片的目标引脚信息,根据目标引脚信息与预设引脚集合中的信息匹配关系,确定对第二芯片的目标处理方式,基于目标处理方式,对第二芯片进行处理,以使数据通信正常。本发明实施例的技术方案实现了对第一芯片接收到的目标数据进行判断,当目标数据异常,对发送目标数据的第二芯片的目标引脚信息进行检测,以根据目标引脚信息和预设引脚集合中的信息匹配关系,确定第二芯片的目标处理方式,以及时基于目标处理方式对第二芯片进行处理,恢复第二芯片的数据通信,保证第一芯片和第二芯片之间的数据通信正常。
值得注意的是,上述装置所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明实施例的保护范围。
实施例五
图6为本发明实施例提供的一种电子设备的结构示意图。图6示出了适于用来实现本发明实施例实施方式的示例性设备60的框图。图6显示的设备60仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,设备60以通用计算设备的形式表现。设备60的组件可以包括但不限于:一个或者多个处理器或者处理单元601,系统存储器602,连接不同系统组件(包括系统存储器602和处理单元601)的总线603。
总线603表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
设备60典型地包括多种计算机系统可读介质。这些介质可以是任何能够被设备60访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器602可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)604和/或高速缓存存储器605。设备60可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统606可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线603相连。存储器602可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块607的程序/实用工具608,可以存储在例如存储器602中,这样的程序模块607包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块607通常执行本发明所描述的实施例中的功能和/或方法。
设备60也可以与一个或多个外部设备609(例如键盘、指向设备、显示器610等)通信,还可与一个或者多个使得用户能与该设备60交互的设备通信,和/或与使得该设备60能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口611进行。并且,设备60还可以通过网络适配器612与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器612通过总线603与设备60的其它模块通信。应当明白,尽管图6中未示出,可以结合设备60使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元601通过运行存储在系统存储器602中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的数据通信异常恢复方法。
实施例六
本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种数据通信异常恢复方法,所述方法包括:
当第一芯片接收到第二芯片发送的目标数据且所述目标数据异常时,则基于所述第一芯片检测所述第二芯片的目标引脚信息;根据所述目标引脚信息与预设引脚集合中的信息匹配关系,确定对所述第二芯片的目标处理方式;基于所述目标处理方式,对所述第二芯片进行处理,以使数据通信正常。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明实施例操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言——诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种数据通信异常恢复方法,其特征在于,包括:
当第一芯片接收到第二芯片发送的目标数据且所述目标数据异常时,则基于所述第一芯片检测所述第二芯片的目标引脚信息;
根据所述目标引脚信息与预设引脚集合中的信息匹配关系,确定对所述第二芯片的目标处理方式;
基于所述目标处理方式,对所述第二芯片进行处理,以使数据通信正常。
2.根据权利要求1所述的方法,其特征在于,所述第一芯片接收到第二芯片发送的目标数据且所述目标数据异常,包括:
在所述第一芯片接收到第二芯片发送的目标数据时,基于预设校验方法对所述目标数据进行校验,得到目标校验结果;
如果所述目标校验结果与所述第二芯片发送的理论校验值不一致,则所述目标数据异常。
3.根据权利要求1所述的方法,其特征在于,所述目标引脚信息包括引脚异常信息;
所述基于所述第一芯片检测所述第二芯片的目标引脚信息包括:
确定与所述目标数据对应的目标数据通信协议;
基于所述目标数据通信协议,确定当前时刻所对应的目标占空比信息;
根据所述目标占空比信息,确定所述目标引脚信息中的引脚异常信息,以根据所述引脚异常信息确定对所述第二芯片的目标处理方式。
4.根据权利要求3所述的方法,其特征在于,所述根据所述目标引脚信息与预设引脚集合中的信息匹配关系,确定对所述第二芯片的目标处理方式,包括:
如果所述目标引脚信息中的引脚异常信息与预设引脚集合中的第一引脚异常相匹配,则所述目标处理方式为对所述第二芯片的控制器初始化;
如果所述目标引脚信息中的引脚异常信息与预设引脚集合中的第二引脚异常相匹配,则所述目标处理方式为对所述第二芯片的中央处理器初始化。
5.根据权利要求1所述的方法,其特征在于,所述基于所述第一芯片检测所述第二芯片的目标引脚信息,还包括:
基于所述第一芯片中的引脚检测模块,确定所述目标引脚是否为物理故障;
若是,则与所述第二芯片对应的目标处理方式为报错提示;
相应的,所述基于所述目标处理方式,对所述第二芯片进行处理,包括:
基于所述报错提示,生成发送至与所述第一芯片和所述第二芯片相对应的目标客户端的报错信息,以基于所述报错信息对相应用户进行提示。
6.根据权利要求1所述的方法,其特征在于,还包括:
基于所述第一芯片接收所述第二芯片发送的协议关联数据;
所述第二芯片基于所述协议关联数据,向所述第一芯片发送所述目标数据;
其中,协议关联数据包括占空比以及协议发送频率中的至少一个。
7.根据权利要求6所述的方法,其特征在于,所述第一芯片和所述第二芯片中包括第一功能引脚和第二功能引脚;所述第一功能引脚和所述第二功能引脚用于初始化以及传输协议关联数据。
8.一种数据通信异常恢复装置,其特征在于,包括:
目标引脚信息检测模块,用于当第一芯片接收到第二芯片发送的目标数据且所述目标数据异常时,则基于所述第一芯片检测所述第二芯片的目标引脚信息;
目标处理方法确定模块,用于根据所述目标引脚信息与预设引脚集合中的信息匹配关系,确定对所述第二芯片的目标处理方式;
第二芯片处理模块,用于基于所述目标处理方式,对所述第二芯片进行处理,以使数据通信正常。
9.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的数据通信异常恢复方法。
10.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-7中任一所述的数据通信异常恢复方法。
CN202110695055.9A 2021-06-22 2021-06-22 数据通信异常恢复方法、装置、电子设备及存储介质 Pending CN113296998A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110695055.9A CN113296998A (zh) 2021-06-22 2021-06-22 数据通信异常恢复方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110695055.9A CN113296998A (zh) 2021-06-22 2021-06-22 数据通信异常恢复方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN113296998A true CN113296998A (zh) 2021-08-24

Family

ID=77329174

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110695055.9A Pending CN113296998A (zh) 2021-06-22 2021-06-22 数据通信异常恢复方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN113296998A (zh)

Similar Documents

Publication Publication Date Title
CN100472460C (zh) 检测和显示计算机自检信息的方法及装置
JP4195272B2 (ja) Can−コントローラ内部のデータ伝送におけるエラーの認識方法,can−コントローラ,プログラム,記録媒体,及び制御装置
JP3996928B2 (ja) 破損データを処理する方法
US7461321B2 (en) Error detection
US7721159B2 (en) Passing debug information
CN115587055A (zh) 总线的传输方法、系统、设备及存储介质
US7436777B2 (en) Failed link training
CN104484260B (zh) 一种基于GJB289总线接口SoC的仿真监控电路
CN112249088B (zh) 双显示系统互诊断与数据同步的方法、双显示系统和列车
CN113296998A (zh) 数据通信异常恢复方法、装置、电子设备及存储介质
US7363402B2 (en) Data communications architecture employing parallel SERDES channels
US7606253B2 (en) Successful transactions
CN115729872A (zh) 一种计算设备及pcie线缆连接的检测方法
KR101086599B1 (ko) 데이터 통신의 갭을 처리하는 방법
CN103440218A (zh) 基于usb-hid协议的can总线监控方法
US7613958B2 (en) Error detection in a system having coupled channels
CN108037942B (zh) 一种嵌入式设备的自适应数据恢复与更新方法及装置
US7310762B2 (en) Detection of errors
US20050152268A1 (en) Link failures
CN113037507B (zh) 具有错误侦测功能的智能网卡系统及错误侦测方法
CN205027539U (zh) 一种电动工业车辆的故障诊断系统
CN108648298A (zh) 消息处理方法及装置、存储介质、电子设备
US7624213B2 (en) Passing identification information
CN111984585A (zh) 兼容二乘二取二和三取二的安全计算机平台和车载设备
JP2980550B2 (ja) 通信装置

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