CN116300802A - 一种诊断请求的仲裁方法、装置、设备及存储介质 - Google Patents
一种诊断请求的仲裁方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116300802A CN116300802A CN202310158741.1A CN202310158741A CN116300802A CN 116300802 A CN116300802 A CN 116300802A CN 202310158741 A CN202310158741 A CN 202310158741A CN 116300802 A CN116300802 A CN 116300802A
- Authority
- CN
- China
- Prior art keywords
- diagnosis
- diagnostic
- request
- target
- arbitration
- 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
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0221—Preprocessing measurements, e.g. data collection rate adjustment; Standardization of measurements; Time series or signal analysis, e.g. frequency analysis or wavelets; Trustworthiness of measurements; Indexes therefor; Measurements using easily measured parameters to estimate parameters difficult to measure; Virtual sensor creation; De-noising; Sensor fusion; Unconventional preprocessing inherently present in specific fault detection methods like PCA-based methods
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本申请公开了一种诊断请求的仲裁方法、装置、设备及存储介质。该方法包括:接收待处理的诊断请求,确定所述诊断请求对应的源地址类型和目的地址,根据所述源地址类型和目的地址对所述诊断请求进行仲裁。其中,通过确定的源地址类型和目的地址对不同来源的诊断请求进行区分,且进一步根据不同来源、同一诊断目标的诊断请求进行进一步仲裁,实现对诊断请求的有效仲裁,提高诊断请求的处理效率,提高故障诊断的效率。
Description
技术领域
本申请涉及请求仲裁技术领域,特别是涉及一种诊断请求的仲裁方法、装置、设备及存储介质。
背景技术
随着汽车技术的发展,汽车故障诊断成为发现汽车故障的主要方法,在现有技术中,一般是通过故障诊断仪对汽车的各个功能模块进行诊断。
同时,随着科学技术的不断提升,故障诊断仪可以实现的诊断方式也越来越多,主要分为本地诊断、远程诊断和应用程序诊断,但是,由于用于实现汽车故障诊断的ECU模块在同一时刻只能接收来自同一诊断客户端的诊断请求,因此当多个诊断客户端的诊断请求发送至ECU模块时,可能会造成诊断失效,或其他诊断客户端很长时间无法进行诊断,降低了诊断效率。
因此如何实现对来自不同应用客户端的多个诊断请求进行仲裁,是本领域技术人员亟待解决的技术问题。
发明内容
基于上述问题,本申请提供了一种诊断请求的仲裁方法、装置、设备及存储介质,以实现对诊断请求的有效仲裁。
本申请实施例公开了如下技术方案:
第一方面,本申请实施例提供一种诊断请求的仲裁方法,所述方法包括:
接收待处理的诊断请求;
确定所述诊断请求对应的源地址类型和目的地址;
根据所述源地址类型和目的地址对所述诊断请求进行仲裁。
可选地,当诊断请求数量为1时,所述根据所述源地址类型和目的地址对所述诊断请求进行仲裁,包括:
根据目的地址确定与所述目的地址对应的目标ECU;
判断所述目标ECU是否执行诊断任务;
若是,则将所述诊断请求放入诊断缓存队列;
若否,则通过所述目标ECU执行所述诊断请求。
可选地,当诊断请求数量大于1时,所述根据所述源地址类型和目的地址对所述诊断请求进行仲裁,包括:
根据目的地址对多个诊断请求进行分组,得到至少一个目标仲裁组;
根据源地址和预设优先级规则对每个目标仲裁组中的诊断请求进行仲裁。
可选地,所述根据源地址和预设优先级规则对每个目标仲裁组中的诊断请求进行仲裁,包括:
根据目的地址确定与所述目的地址对应的目标ECU;其中所述目标ECU与所述目的地址对应的目标仲裁组存在对应关系;
判断每个目标ECU是否执行诊断服务;
若是,则将所述目标ECU对应的目标仲裁组中的诊断请求缓存至诊断缓存队列,作为缓存诊断请求;
若否,则根据预设优先级规则确定所述目标ECU对应的目标仲裁组中的目标诊断请求,通过所述目标ECU执行所述目标诊断请求,并将除所述目标诊断请求以外的诊断请求缓存至诊断缓存队列。
可选地,当所述目标ECU执行诊断服务,且诊断缓存队列中不存在缓存诊断请求时,将所述目标ECU对应的目标仲裁组中的诊断请求缓存至诊断缓存队列之后,还包括:
判断所述缓存诊断请求与所述目标ECU执行的诊断请求之间的优先级;
若所述缓存诊断请求的优先级高于所述目标ECU执行的诊断请求,则将所述缓存诊断请求缓存至所述诊断缓存队列,并向所述目标ECU执行的诊断请求对应的客户端发送等待执行消息。
第二方面,本申请实施例提供一种诊断请求的仲裁装置,所述装置包括:
接收模块,用于接收待处理的诊断请求;
确定模块,用于确定所述诊断请求对应的源地址类型和目的地址;
仲裁模块,用于根据所述源地址类型和目的地址对所述诊断请求进行仲裁。
可选地,当诊断请求数量为1时,所述仲裁模块,具体用于:
根据目的地址确定与所述目的地址对应的目标ECU;
判断所述目标ECU是否执行诊断任务;
若是,则将所述诊断请求放入诊断缓存队列;
若否,则通过所述目标ECU执行所述诊断请求。
可选地,当诊断请求数量大于1时,所述仲裁模块,包括:
分组模块,用于根据目的地址对多个诊断请求进行分组,得到至少一个目标仲裁组;
仲裁子模块,用于根据源地址和预设优先级规则对每个目标仲裁组中的诊断请求进行仲裁。
第三方面,本申请实施例提供一种计算机设备,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如第一方面所述的诊断请求的仲裁方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如第一方面所述的诊断请求的仲裁方法。
相较于现有技术,本申请具有以下有益效果:
本申请通过接收待处理的诊断请求,确定所述诊断请求对应的源地址类型和目的地址,根据所述源地址类型和目的地址对所述诊断请求进行仲裁。其中,通过确定的源地址类型和目的地址对不同来源的诊断请求进行区分,且进一步根据不同来源、同一诊断目标的诊断请求进行进一步仲裁,实现对诊断请求的有效仲裁,提高诊断请求的处理效率,提高故障诊断的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种诊断请求的仲裁方法的流程图;
图2为本申请实施例提供的一种诊断请求数量为1时的步骤S103的流程图;
图3为本申请实施例提供的一种诊断请求数量大于1时的步骤S103的流程图;
图4为本申请实施例提供的一种诊断请求的仲裁装置的结构示意图。
具体实施方式
正如前文描述,在针对诊断请求处理的研究中发现,随着科学技术的不断提升,故障诊断仪可以实现的诊断方式也越来越多,主要分为本地诊断、远程诊断和应用程序诊断,但是,由于用于实现汽车故障诊断的ECU模块在同一时刻只能接收来自同一诊断客户端的诊断请求,因此当多个诊断客户端的诊断请求发送至ECU模块时,可能会造成诊断失效,或其他诊断客户端很长时间无法进行诊断,降低了诊断效率。
为了解决上述问题,本申请实施例提供一种诊断请求的仲裁方法、装置、设备及存储介质。该方法包括:接收待处理的诊断请求,确定所述诊断请求对应的源地址类型和目的地址,根据所述源地址类型和目的地址对所述诊断请求进行仲裁。
如此,通过确定的源地址类型和目的地址对不同来源的诊断请求进行区分,且进一步根据不同来源、同一诊断目标的诊断请求进行进一步仲裁,实现对诊断请求的有效仲裁,提高诊断请求的处理效率,提高故障诊断的效率。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图1,该图为本申请实施例提供的一种诊断请求的仲裁方法的流程图,结合图1所示,本申请实施例提供的诊断请求的仲裁方法,具体可以包括:
S101:接收待处理的诊断请求。
诊断请求意指由诊断应用发送的执行诊断命令的请求,比如发送0x22诊断请求读取目标ECU的某个DID信息;假设目标报文为02fd8001000000060e80004f22F187;DoIP报头可以为02FD800100000006;诊断源地址可以为0E80;诊断目的地址可以004F;服务ID+DID可以为22F187。
需要说明的是,诊断请求的来源可以为本地诊断应用、远程诊断应用和/或APP诊断应用,诊断请求的数量为1个或多个,在此并不作具体限定。
S102:确定所述诊断请求对应的源地址类型和目的地址。
源地址意指诊断请求对应的发送地址,可以为本地、远程和/或APP。
目的地址意指执行该诊断请求的ECU对应的地址。
需要说明的是,ECU(Electronic Control Unit)中文释义为电子控制单元,又称“行车电脑”、“车载电脑”等。它和普通的电脑一样,由微控制器(MCU)、存储器(ROM、RAM)、输入/输出接口(I/O)、模数转换器(A/D)以及整形、驱动等大规模集成电路组成。
S103:根据所述源地址类型和目的地址对所述诊断请求进行仲裁。
需要说明的是,在本申请实施例中,诊断仲裁处理的诊断报文,仅基于DoIP诊断,其中所述DoIP(Diagnostic communication over Internet Protocol)其实是基于以太网的通讯协议对UDS(Unified Diagnostic Services)协议的数据进行传输,其本身也是一种协议,规范于ISO13400标准。由于DoIP可以传输大量数据,以及响应速度快,且可以通过以太网进行远程诊断。
需要说明的是,在现有技术中,ECU在接收到一方所发送的诊断请求后,会连续接收该诊断请求对应的应用所发送的其他诊断请求,直至整个诊断任务结束,才可以接收其他应用所发送的诊断请求,但是,由于某一应用的诊断请求可能需要实时处理,其处理的优先级高于正在执行的诊断请求,但是由于优先级较低的诊断请求抢占优先级较高的请求,因此优先级较高的请求无法进行处理,导致诊断请求不能及时处理,造成诊断效率低的问题。
因此,在本实施例中,通过确定诊断请求对应的源地址和目的地址,对诊断请求进行仲裁,优先处理等级较高的诊断请求,避免诊断请求的处理时间超时,提高诊断效率。
本申请实施例提供的诊断请求的仲裁方法,通过接收待处理的诊断请求,确定所述诊断请求对应的源地址类型和目的地址,根据所述源地址类型和目的地址对所述诊断请求进行仲裁。其中,通过确定的源地址类型和目的地址对不同来源的诊断请求进行区分,且进一步根据不同来源、同一诊断目标的诊断请求进行进一步仲裁,实现对诊断请求的有效仲裁,提高诊断请求的处理效率,提高故障诊断的效率。
需要说明的是,在下述各实施例中,所提到的预设优先级规则,或优先级判断标准为:
(1)先判断源地址的优先级,优先级为本地诊断>远程诊断>APP诊断。
(2)若源地址的优先级相同,且为同一目的地址,遵循先到先得的原则。
(3)可支持自定义优先级设定,并将自定义优先级规则进行存储。
基于上述实施例提供的诊断请求的仲裁方法,为了进一步实现对诊断请求的仲裁,且当诊断请求数量为1时,参见图2,该图为本申请实施例提供的一种诊断请求数量为1时的步骤S103的流程图,结合图2所示,所述步骤S103具体可以包括:
S201:根据目的地址确定与所述目的地址对应的目标ECU。
S202:判断所述目标ECU是否执行诊断任务。
S203:若是,则将所述诊断请求放入诊断缓存队列。
S204:若否,则通过所述目标ECU执行所述诊断请求。
需要说明的是,当诊断请求只有一个时,可以根据目的地址确定与目的地址对应的ECU,并进一步判断所述目标ECU是否执行诊断任务,然后进行诊断请求的仲裁,将该诊断请求称为请求A,具体可分为以下三种仲裁流程:
示例1:
基于S203,若目标ECU正在执行诊断,且诊断缓存队列中存在缓存诊断请求,则需要将请求A与缓存诊断请求进行优先级比较。
若请求A的优先级高于缓存诊断请求,则将请求A缓存至所述诊断缓存队列,其他缓存诊断请求向对应的诊断应用回复等待诊断消息,当ECU结束当前诊断任务,执行请求A。
若请求A的优先级低于缓存诊断请求,则向请求A对应的诊断应用发送延迟诊断消息,该诊断应用在预设时间后重新发送诊断请求。
示例2:
基于S203,若目标ECU正在执行诊断,且诊断缓存队列中不存在缓存诊断请求,则将请求A放入诊断缓存队列,并与所述目标ECU正在执行的诊断请求进行比较。
若请求A的优先级高于正在执行的诊断请求,则向正在执行的诊断请求对应的诊断应用发送等待诊断消息,该诊断应用发送的其他诊断请求直接放入请求A所在的诊断缓存队列,等待请求A及请求A对应的诊断应用发送的其他诊断请求通过目标ECU执行完毕后,再进行执行诊断任务。
若请求A的优先级低于正在执行的诊断请求,则等待正在执行的诊断请求及正在执行的诊断请求对应的诊断应用发送的其他诊断请求执行完毕后,再执行请求A。
示例3:
基于S204,若目标ECU并未执行诊断任务,则直接将诊断请求转发至所述目标ECU,并执行请求A;其中,若请求A对应的诊断应用并未接收到等待诊断消息或延迟诊断消息,则直接发送其他诊断请求;若收到,则按照不同消息类型进行不同操作。
基于上述实施例提供的诊断请求的仲裁方法,为了进一步实现对诊断请求的仲裁,且当诊断请求数量大于1时,参见图3,该图为本申请实施例提供的一种诊断请求数量大于1时的步骤S103的流程图,结合图3所示,所述步骤S103具体可以包括:
S301:根据目的地址对多个诊断请求进行分组,得到至少一个目标仲裁组。
S302:根据源地址和预设优先级规则对每个目标仲裁组中的诊断请求进行仲裁。
需要说明的是,若同时接收多个诊断请求,则需要对诊断请求按照不同目的地址进行分组,然后对每个目标仲裁组进行诊断仲裁。
作为一种可实现的实施方式,所述步骤S302具体可以包括:
步骤11:根据目的地址确定与所述目的地址对应的目标ECU。
其中,所述目标ECU与所述目的地址对应的目标仲裁组存在对应关系。
步骤12:判断每个目标ECU是否执行诊断服务。
步骤13:若是,则将所述目标ECU对应的目标仲裁组中的诊断请求缓存至诊断缓存队列,作为缓存诊断请求。
步骤14:若否,则根据预设优先级规则确定所述目标ECU对应的目标仲裁组中的目标诊断请求,通过所述目标ECU执行所述目标诊断请求,并将除所述目标诊断请求以外的诊断请求缓存至诊断缓存队列。
需要说明的是,基于步骤11~14,当一个目标仲裁组中的诊断请求包括E,F,G三个时,具体诊断仲裁过程可以包括以下示例4~示例9:
示例4:
基于步骤13,若目标ECU正在执行诊断任务,且诊断缓存队列中存在缓存诊断请求,则先比较E,F,G三个诊断请求的优先级。
假设E的优先级最高,则将E缓存至诊断缓存队列,向F和G对应的诊断应用回复延时诊断消息,判断E和缓存诊断请求的优先级。
若E的优先级高于缓存诊断请求,则向缓存诊断请求对应的诊断应用发送等待诊断消息。
若E的优先级低于缓存诊断请求,则向E对应的诊断应用发送等待诊断消息。
示例5:
基于步骤13,若目标ECU正在执行诊断任务,且诊断缓存队列中存在缓存诊断请求,则先比较E,F,G三个诊断请求的优先级。
假设E的优先级最高,则将E缓存至诊断缓存队列,向F和G对应的诊断应用回复延时诊断消息,判断E和缓存诊断请求的优先级。
若E的优先级高于缓存诊断请求,则向缓存诊断请求对应的诊断应用发送等待诊断消息。
若E的优先级低于缓存诊断请求,则向E对应的诊断应用发送等待诊断消息。
示例6:
基于步骤13,若目标ECU正在执行诊断任务,且诊断缓存队列中存在缓存诊断请求,则先将E,F,G三个诊断请求缓存至所述诊断缓存队列。
判断E,F,G和缓存诊断请求的优先级。
假设E的优先级最高,则将E缓存至诊断缓存队列,向F,G和缓存诊断请求对应的诊断应用回复等待诊断消息。
示例7:
基于步骤13,若目标ECU正在执行诊断任务,且诊断缓存队列中存在缓存诊断请求,则将E,F,G三个诊断请求依次放入诊断缓存队列。
将E缓存至诊断缓存队列,将E与缓存诊断请求比较,假设E的优先级高于缓存诊断请求,则向缓存诊断请求对应的诊断应用发送等待诊断消息。
将F缓存至诊断缓存队列,将F与E进行比较,假设F的优先级高于E,则向E对应的诊断应用发送等待诊断消息。
将G缓存至诊断缓存队列,将G与F进行比较,假设F的优先级高于E,则向G对应的诊断应用发送等待诊断消息。
需要说明的是,在上述示例4~7中,若在诊断缓存队列中判断出最高优先级的诊断请求,还需要与正在执行的诊断请求比较。
若该诊断请求的优先级高于正在执行的诊断请求,则向正在执行的诊断请求对应的诊断应用发送等待诊断消息,该诊断应用发送的其他诊断请求直接放入诊断缓存队列,等待该诊断请求对应的诊断应用发送的其他诊断请求通过目标ECU执行完毕后,再进行执行正在执行的诊断请求对应的诊断应用发送的其他诊断请求。
若该请求的优先级低于正在执行的诊断请求,则等待正在执行的诊断请求及正在执行的诊断请求对应的诊断应用发送的其他诊断请求执行完毕后,再执行该请求。
示例8:
基于步骤14,若目标ECU未执行诊断任务,则先比较E,F,G三个诊断请求的优先级。
假设E的优先级最高,通过目标ECU执行E,并将F和G缓存至诊断缓存队列,并向F和G对应的诊断应用回复等待诊断消息。
或,
假设E的优先级最高,通过目标ECU执行E,并向F和G对应的诊断应用回复延时诊断消息。
示例9:
基于步骤14,若目标ECU未执行诊断任务,则先将E,F,G三个诊断请求缓存至所述诊断缓存队列。
判断E,F,G三个诊断请求的优先级。
假设E的优先级最高,则通过目标ECU执行E,并向F和G对应的诊断应用回复等待诊断消息。
其中,当所述目标ECU执行诊断服务,且诊断缓存队列中不存在缓存诊断请求时,步骤13之后,所述方法还可以包括:
步骤21:判断所述缓存诊断请求与所述目标ECU执行的诊断请求之间的优先级。
步骤22:若所述缓存诊断请求的优先级高于所述目标ECU执行的诊断请求,则将所述缓存诊断请求缓存至所述诊断缓存队列,并向所述目标ECU执行的诊断请求对应的客户端发送等待执行消息。
在另一种可实现的实施方式中,所述目标ECU执行诊断服务,且诊断缓存队列中不存在缓存诊断请求时,步骤13之后,所述方法还可以包括:
步骤31:判断多个缓存诊断请求之间的优先级。
步骤32:确定缓存诊断请求中待执行的缓存诊断请求,作为目标请求。
步骤33:判断目标请求与正在执行的诊断请求之间的优先级。
步骤34:若目标请求的优先级大于正在执行的诊断请求,则向所述正在执行的诊断请求对应的客户端发送等待执行消息,对除目标以外的缓存诊断请求发送等待执行消息。
基于上述实施例提供的诊断请求的仲裁方法,本申请实施例还提供一种诊断请求的仲裁装置,参见图4,该图为本申请实施例提供的一种诊断请求的仲裁装置的结构示意图,结合图4所示,本申请实施例提供的诊断请求的仲裁装置400,具体可以包括:
接收模块401,用于接收待处理的诊断请求;
确定模块402,用于确定所述诊断请求对应的源地址类型和目的地址;
仲裁模块403,用于根据所述源地址类型和目的地址对所述诊断请求进行仲裁。
作为一种示例,当诊断请求数量为1时,所述仲裁模块403,具体用于:
根据目的地址确定与所述目的地址对应的目标ECU;
判断所述目标ECU是否执行诊断任务;
若是,则将所述诊断请求放入诊断缓存队列;
若否,则通过所述目标ECU执行所述诊断请求。
作为一种示例,当诊断请求数量大于1时,所述仲裁模块403,包括:
分组模块,用于根据目的地址对多个诊断请求进行分组,得到至少一个目标仲裁组;
仲裁子模块,用于根据源地址和预设优先级规则对每个目标仲裁组中的诊断请求进行仲裁。
作为一种示例,所述仲裁子模块403,具体用于:
根据目的地址确定与所述目的地址对应的目标ECU;其中所述目标ECU与所述目的地址对应的目标仲裁组存在对应关系;
判断每个目标ECU是否执行诊断服务;
若是,则将所述目标ECU对应的目标仲裁组中的诊断请求缓存至诊断缓存队列,作为缓存诊断请求;
若否,则根据预设优先级规则确定所述目标ECU对应的目标仲裁组中的目标诊断请求,通过所述目标ECU执行所述目标诊断请求,并将除所述目标诊断请求以外的诊断请求缓存至诊断缓存队列。
作为一种示例,当所述目标ECU执行诊断服务,且诊断缓存队列中不存在缓存诊断请求时,将所述目标ECU对应的目标仲裁组中的诊断请求缓存至诊断缓存队列之后,还包括:
优先级判断模块,用于判断所述缓存诊断请求与所述目标ECU执行的诊断请求之间的优先级;
缓存模块,用于若所述缓存诊断请求的优先级高于所述目标ECU执行的诊断请求,则向所述目标ECU执行的诊断请求对应的客户端发送等待执行消息。
本申请实施例提供的诊断请求的仲裁装置与上述实施例提供的诊断请求的仲裁方法具有相同的有益效果,因此不再赘述。
本申请实施例还提供了对应的设备以及计算机存储介质,用于实现本申请实施例提供的方案。
其中,所述设备包括存储器和处理器,所述存储器用于存储指令或代码,所述处理器用于执行所述指令或代码,以使所述设备执行本申请任一实施例所述的诊断请求的仲裁方法。
所述计算机存储介质中存储有代码,当所述代码被运行时,运行所述代码的设备实现本申请任一实施例所述的诊断请求的仲裁方法。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对装置及设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及设备实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元提示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本申请实施例所提到的“第一”、“第二”(若存在)等名称中的“第一”、“第二”只是用来做名字标识,并不代表顺序上的第一、第二。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如只读存储器(英文:read-only memory,ROM)/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如路由器等网络通信设备)执行本申请各个实施例或者实施例的某些部分所述的方法。
以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (10)
1.一种诊断请求的仲裁方法,其特征在于,所述方法包括:
接收待处理的诊断请求;
确定所述诊断请求对应的源地址类型和目的地址;
根据所述源地址类型和目的地址对所述诊断请求进行仲裁。
2.根据权利要求1所述的诊断请求的仲裁方法,其特征在于,当诊断请求数量为1时,所述根据所述源地址类型和目的地址对所述诊断请求进行仲裁,包括:
根据目的地址确定与所述目的地址对应的目标ECU;
判断所述目标ECU是否执行诊断任务;
若是,则将所述诊断请求放入诊断缓存队列;
若否,则通过所述目标ECU执行所述诊断请求。
3.根据权利要求1所述的诊断请求的仲裁方法,其特征在于,当诊断请求数量大于1时,所述根据所述源地址类型和目的地址对所述诊断请求进行仲裁,包括:
根据目的地址对多个诊断请求进行分组,得到至少一个目标仲裁组;
根据源地址和预设优先级规则对每个目标仲裁组中的诊断请求进行仲裁。
4.根据权利要求3所述的诊断请求的仲裁方法,其特征在于,所述根据源地址和预设优先级规则对每个目标仲裁组中的诊断请求进行仲裁,包括:
根据目的地址确定与所述目的地址对应的目标ECU;其中所述目标ECU与所述目的地址对应的目标仲裁组存在对应关系;
判断每个目标ECU是否执行诊断服务;
若是,则将所述目标ECU对应的目标仲裁组中的诊断请求缓存至诊断缓存队列,作为缓存诊断请求;
若否,则根据预设优先级规则确定所述目标ECU对应的目标仲裁组中的目标诊断请求,通过所述目标ECU执行所述目标诊断请求,并将除所述目标诊断请求以外的诊断请求缓存至诊断缓存队列。
5.根据权利要求4所述的诊断请求的仲裁方法,其特征在于,当所述目标ECU执行诊断服务,且诊断缓存队列中不存在缓存诊断请求时,将所述目标ECU对应的目标仲裁组中的诊断请求缓存至诊断缓存队列之后,还包括:
判断所述缓存诊断请求与所述目标ECU执行的诊断请求之间的优先级;
若所述缓存诊断请求的优先级高于所述目标ECU执行的诊断请求,则将所述缓存诊断请求缓存至所述诊断缓存队列,并向所述目标ECU执行的诊断请求对应的客户端发送等待执行消息。
6.一种诊断请求的仲裁装置,其特征在于,所述装置包括:
接收模块,用于接收待处理的诊断请求;
确定模块,用于确定所述诊断请求对应的源地址类型和目的地址;
仲裁模块,用于根据所述源地址类型和目的地址对所述诊断请求进行仲裁。
7.根据权利要求6所述的诊断请求的仲裁装置,其特征在于,当诊断请求数量为1时,所述仲裁模块,具体用于:
根据目的地址确定与所述目的地址对应的目标ECU;
判断所述目标ECU是否执行诊断任务;
若是,则将所述诊断请求放入诊断缓存队列;
若否,则通过所述目标ECU执行所述诊断请求。
8.根据权利要求6所述的诊断请求的仲裁装置,其特征在于,当诊断请求数量大于1时,所述仲裁模块,包括:
分组模块,用于根据目的地址对多个诊断请求进行分组,得到至少一个目标仲裁组;
仲裁子模块,用于根据源地址和预设优先级规则对每个目标仲裁组中的诊断请求进行仲裁。
9.一种计算机设备,其特征在于,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-5任一项所述的诊断请求的仲裁方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如权利要求1-5任一项所述的诊断请求的仲裁方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202310158741.1A CN116300802A (zh) | 2023-02-23 | 2023-02-23 | 一种诊断请求的仲裁方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202310158741.1A CN116300802A (zh) | 2023-02-23 | 2023-02-23 | 一种诊断请求的仲裁方法、装置、设备及存储介质 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN116300802A true CN116300802A (zh) | 2023-06-23 |
Family
ID=86786209
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202310158741.1A Pending CN116300802A (zh) | 2023-02-23 | 2023-02-23 | 一种诊断请求的仲裁方法、装置、设备及存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN116300802A (zh) |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5216668A (en) * | 1991-08-19 | 1993-06-01 | Pacific Bell | Modulated nonblocking parallel banyan network |
| JPH0690242A (ja) * | 1992-09-07 | 1994-03-29 | Nippon Telegr & Teleph Corp <Ntt> | アクセス調停方式 |
| US20040017807A1 (en) * | 2002-07-29 | 2004-01-29 | Dorr Martin L. | On chip network that maximizes interconnect utilization between processing elements |
| JP2013074377A (ja) * | 2011-09-27 | 2013-04-22 | Denso Corp | 車両用電子制御装置 |
| CN106919453A (zh) * | 2015-12-28 | 2017-07-04 | 纬创资通股份有限公司 | 共享装置的使用方法及资源共享系统 |
| CN112506821A (zh) * | 2020-09-27 | 2021-03-16 | 山东云海国创云计算装备产业创新中心有限公司 | 一种系统总线接口请求仲裁方法及相关组件 |
-
2023
- 2023-02-23 CN CN202310158741.1A patent/CN116300802A/zh active Pending
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5216668A (en) * | 1991-08-19 | 1993-06-01 | Pacific Bell | Modulated nonblocking parallel banyan network |
| JPH0690242A (ja) * | 1992-09-07 | 1994-03-29 | Nippon Telegr & Teleph Corp <Ntt> | アクセス調停方式 |
| US20040017807A1 (en) * | 2002-07-29 | 2004-01-29 | Dorr Martin L. | On chip network that maximizes interconnect utilization between processing elements |
| JP2013074377A (ja) * | 2011-09-27 | 2013-04-22 | Denso Corp | 車両用電子制御装置 |
| CN106919453A (zh) * | 2015-12-28 | 2017-07-04 | 纬创资通股份有限公司 | 共享装置的使用方法及资源共享系统 |
| CN112506821A (zh) * | 2020-09-27 | 2021-03-16 | 山东云海国创云计算装备产业创新中心有限公司 | 一种系统总线接口请求仲裁方法及相关组件 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN1161954C (zh) | 用电子邮件系统的同文通信系统及其电子邮件分送方法 | |
| US7386619B1 (en) | System and method for allocating communications to processors in a multiprocessor system | |
| WO2021036228A1 (zh) | 文件上传方法、装置、终端、服务器、系统及存储介质 | |
| CN108647104B (zh) | 请求处理方法、服务器及计算机可读存储介质 | |
| WO2019128535A1 (zh) | 消息管理方法、设备及存储介质 | |
| CN113711173A (zh) | 促进网络接口控制器(nic)中的数据请求管理的系统和方法 | |
| EP2566107A1 (en) | Apparatus and method for achieving the function of domain name resolution agent | |
| JP2008033952A (ja) | 共通作業キュー環境における最適格サーバ | |
| EP2760184A1 (en) | Method and system for processing resource requests | |
| JP2016529575A (ja) | ハードディスクおよびデータ処理方法 | |
| CN110851276A (zh) | 一种业务请求处理方法、装置、服务器和存储介质 | |
| CN106411778B (zh) | 数据转发的方法及装置 | |
| WO2017185615A1 (zh) | 一种业务处理设备的业务状态确定方法及调度设备 | |
| JP4554139B2 (ja) | 遠隔要求を処理する方法および装置 | |
| WO2017032152A1 (zh) | 将数据写入存储设备的方法及存储设备 | |
| WO2014101502A1 (zh) | 基于内存芯片互连的内存访问处理方法、内存芯片及系统 | |
| US20060136574A1 (en) | System and method for request priority transfer across nodes in a multi-tier data processing system network | |
| CN108429703B (zh) | Dhcp客户端上线方法及装置 | |
| CN109309583B (zh) | 基于分布式系统的信息获取方法、装置、电子设备和介质 | |
| CN116300802A (zh) | 一种诊断请求的仲裁方法、装置、设备及存储介质 | |
| CN113961489B (zh) | 数据访问的方法、装置、设备及存储介质 | |
| CN108429665B (zh) | 一种并发通信传输数据的方法 | |
| US10616317B2 (en) | Method and system for affinity load balancing | |
| CN101043446A (zh) | 数据转发处理的方法和装置 | |
| CN105912477B (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 |