具有随机且多次变化响应测试的安全系统和方法

文档序号:6295794阅读:197来源:国知局
具有随机且多次变化响应测试的安全系统和方法
【专利摘要】本发明涉及具有随机且多次变化响应测试的安全系统和方法。用于车辆的诊断系统包括第一处理器模块和第二处理器模块。第一处理器模块包括第一微处理器和存储器。第二处理器模块包括第二微处理器和存储器。第二处理器模块:针对第一质询-响应测试向第一处理器模块选择性地传送第一质询;针对第二质询-响应测试向第一处理器模块选择性地传送第二质询;针对第三质询-响应测试向第一处理器模块选择性地传送第三质询;针对第四质询-响应测试向第一处理器模块选择性地传送第四质询;以及基于第一处理器模块对第一、第二、第三和第四质询的响应来选择性地诊断故障。第一、第二、第三和第四质询-响应测试是各自不同的质询-响应测试类型。
【专利说明】具有随机且多次变化响应测试的安全系统和方法
[0001]相关申请的交叉引用
本申请涉及2012年8月28日提交的美国专利申请号13/596,239。上述申请的公开内容被全部并入本文以供参考。
【技术领域】
[0002]本公开涉及车辆控制系统并且更具体地涉及车辆的微处理器安全系统和方法。
【背景技术】
[0003]这里提供的背景描述是用于大体呈现本公开背景的目的。本发明人在这个【背景技术】部分中所描述的工作以及在申请时没有作为现有技术被描述的各方面既不明确地也不暗示地被认为是抵触本公开内容的现有技术。
[0004]车辆包括多个系统,例如动力传动系统、制动器系统、燃料系统等等。每个系统包括多个硬件部件和安全机构。安全机构可以是物理安全机构或者用作安全机构的被处理器执行的一份软件。硬件部件的安全机构可以执行补救措施以便在硬件部件失效时提供一定的安全水平。
[0005]需要车辆的电气部件的系统符合一个或更多个机动车硬件整体性要求,例如国际标准化组织(ISO)的标准26262。仅作为示例,当系统的一个或更多个元件失效时会发生的危险需要具有比预定可能性更小的发生可能性以便符合ISO 26262标准。

【发明内容】

[0006]用于车辆的诊断系统包括第一处理器模块和第二处理器模块。第一处理器模块包括第一微处理器和存储器。第二处理器模块包括第二微处理器和存储器。第二处理器模块:针对第一质询_响应(challenge-response)测试向第一处理器模块选择性地传送第一质询;针对第二质询-响应测试向第一处理器模块选择性地传送第二质询;针对第三质询-响应测试向第一处理器模块选择性地传送第三质询;针对第四质询-响应测试向第一处理器模块选择性地传送第四质询;以及基于第一处理器模块对第一、第二、第三和第四质询的响应来选择性地诊断故障。第一、第二、第三和第四质询-响应测试是各自不同的质询-响应测试类型。
[0007]用于车辆的诊断方法包括:提供具有第一微处理器和存储器的第一处理器模块;以及,在包括第二微处理器和存储器的第二处理器模块处:针对第一质询-响应测试向第一处理器模块选择性地传送第一质询;针对第二质询-响应测试向第一处理器模块选择性地传送第二质询;针对第三质询-响应测试向第一处理器模块选择性地传送第三质询;针对第四质询-响应测试向第一处理器模块选择性地传送第四质询;以及,基于第一处理器模块对第一、第二、第三和第四质询的响应来选择性地诊断故障。第一、第二、第三和第四质询-响应测试是各自不同的质询-响应测试类型。
[0008]本发明还提供了以下技术方案。[0009]方案1.一种用于车辆的诊断系统,所述诊断系统包括:
第一处理器模块,所述第一处理器模块包括第一微处理器和存储器;和 第二处理器模块,所述第二处理器模块包括第二微处理器和存储器并且:
针对第一质询-响应测试将第一质询选择性地发送到所述第一处理器模块;
针对第二质询-响应测试将第二质询选择性地发送到所述第一处理器模块;
针对第三质询-响应测试将第三质询选择性地发送到所述第一处理器模块;
针对第四质询-响应测试将第四质询选择性地发送到所述第一处理器模块;以及基于所述第一处理器模块对所述第一、第二、第三和第四质询的响应来选择性地诊断故障,
其中所述第一、第二、第三和第四质询-响应测试是各自不同的质询-响应测试类型。
[0010]方案2.根据方案I所述的诊断系统,其中所述第二处理器模块响应如下至少一者来诊断所述故障:
所述第一处理器模块在第一预定时段内没有响应所述第一质询的第一判定;
所述第一处理器模块在第二预定时段内没有响应所述第二质询的第二判定;
所述第一处理器模块在第三预定时段内没有响应所述第三质询的第三判定;以及 所述第一处理器模块在第四预定时段内没有响应所述第四质询的第四判定。
[0011]方案3.根据方案I所述的诊断系统,其中所述第二处理器模块从至少四种不同类型的质询-响应测试构成的组选择所述第一、第二、第三和第四质询-响应测试。
[0012]方案4.根据方案3所述的诊断系统,其中所述第二处理器模块以随机次序从所述组选择所述第一、第二、第三和第四质询-响应测试。
[0013]方案5.根据方案3所述的诊断系统,其中所述组包括如下至少四者:
算术逻辑单元(ALU)测试;
循环冗余校验(CRC)测试;
功率/电压测试;
寄存器测试;
时钟测试;和
随机存取存储器(RAM)健全测试。
[0014]方案6.根据方案I所述的诊断系统,其中所述第二处理器模块基于随时间变化的变量来设定所述第一、第二、第三和第四质询中的至少一者。
[0015]方案7.根据方案I所述的诊断系统,其中所述第二处理器模块在如下至少一者时诊断所述故障:
所述第一质询-响应测试的第一预期值不同于所述第一处理器模块对所述第一质询的第一响应;
所述第二质询-响应测试的第二预期值不同于所述第一处理器模块对所述第二质询的第二响应;
所述第三质询-响应测试的第三预期值不同于所述第一处理器模块对所述第三质询的第三响应;以及
所述第四质询-响应测试的第四预期值不同于所述第一处理器模块对所述第四质询的第四响应。[0016]方案8.根据方案7所述的诊断系统,其中所述第二处理器模块:
基于所述第一质询-响应测试的类型和所述第一质询来确定所述第一预期值;
基于所述第二质询-响应测试的类型和所述第二质询来确定所述第二预期值;
基于所述第三质询-响应测试的类型和所述第三质询来确定所述第三预期值;以及 基于所述第四质询-响应测试的类型和所述第四质询来确定所述第四预期值。
[0017]方案9.根据方案I所述的诊断系统,其中当诊断出所述故障时所述第二处理器模块在存储器内设定预定诊断故障码(DTC)并点亮故障指示灯。
[0018]方案10.—种车辆的系统,所述系统包括:
根据方案I所述的诊断系统,
其中所述第一处理器模块基于来自感测车辆外部特征的传感器的数据来生成被处理数据,以及
其中所述第一微处理器包括图形微处理器;以及
第三处理器模块,所述第三处理器模块基于所述被处理数据来选择性地致动电力转向马达、摩擦制动器和节气门中的至少一者。
[0019]方案11.一种用于车辆的诊断方法,所述诊断方法包括:
提供第一处理器模块,所述第一处理器模块具有第一微处理器和存储器;和 在包括第二微处理器和存储器的第二处理器模块处:
针对第一质询-响应测试将第一质询选择性地发送到所述第一处理器模块;
针对第二质询-响应测试将第二质询选择性地发送到所述第一处理器模块;
针对第三质询-响应测试将第三质询选择性地发送到所述第一处理器模块;
针对第四质询-响应测试将第四质询选择性地发送到所述第一处理器模块;以及基于所述第一处理器模块对所述第一、第二、第三和第四质询的响应来选择性地诊断故障,
其中所述第一、第二、第三和第四质询-响应测试是各自不同的质询-响应测试类型。
[0020]方案12.根据方案11所述的诊断方法,还包括在所述第二处理器模块处响应如下至少一者来诊断所述故障:
所述第一处理器模块在第一预定时段内没有响应所述第一质询的第一判定;
所述第一处理器模块在第二预定时段内没有响应所述第二质询的第二判定;
所述第一处理器模块在第三预定时段内没有响应所述第三质询的第三判定;以及 所述第一处理器模块在第四预定时段内没有响应所述第四质询的第四判定。
[0021]方案13.根据方案11所述的诊断方法,还包括在所述第二处理器模块处从至少四种不同类型的质询-响应测试构成的组选择所述第一、第二、第三和第四质询-响应测试。
[0022]方案14.根据方案13所述的诊断方法,还包括在所述第二处理器模块处以随机次序从所述组选择所述第一、第二、第三和第四质询-响应测试。
[0023]方案15.根据方案13所述的诊断方法,其中所述组包括如下至少四者:
算术逻辑单元(ALU)测试;
循环冗余校验(CRC)测试;
功率/电压测试;
寄存器测试; 时钟测试;和
随机存取存储器(RAM)健全测试。
[0024]方案16.根据方案11所述的诊断方法,还包括在所述第二处理器模块处基于随时间变化的变量来设定所述第一、第二、第三和第四质询中的至少一者。
[0025]方案17.根据方案11所述的诊断方法,还包括在所述第二处理器模块处当如下至少一种情况时来诊断所述故障:
所述第一质询-响应测试的第一预期值不同于所述第一处理器模块对所述第一质询的第一响应;
所述第二质询-响应测试的第二预期值不同于所述第一处理器模块对所述第二质询的第二响应;
所述第三质询-响应测试的第三预期值不同于所述第一处理器模块对所述第三质询的第三响应;以及
所述第四质询-响应测试的第四预期值不同于所述第一处理器模块对所述第四质询的第四响应。
[0026]方案18.根据方案17所述的诊断方法,还包括在所述第二处理器模块处:
基于所述第一质询-响应测试的类型和所述第一质询来确定所述第一预期值;
基于所述第二质询-响应测试的类型和所述第二质询来确定所述第二预期值;
基于所述第三质询-响应测试的类型和所述第三质询来确定所述第三预期值;以及 基于所述第四质询-响应测试的类型和所述第四质询来确定所述第四预期值。
[0027]方案19.根据方案11所述的诊断方法,还包括在所述第二处理器模块处,当诊断出所述故障时在存储器内设定预定诊断故障码(DTC)并点亮故障指示灯。
[0028]方案20.根据方案11所述的诊断方法,还包括:
在所述第一处理器模块处基于来自感测所述车辆外部特征的传感器的数据生成被处理数据,
其中所述第一微处理器包括图形微处理器;以及
在第三微处理器模块处,基于所述被处理数据选择性地致动电力转向马达、摩擦制动器和节气门中的至少一者。
[0029]从这里提供的具体说明将显而易见到本公开的应用的其他方面。应该理解的是,详细描述和特定示例旨在仅用于描述目的并且不试图限制本公开的范围。
【专利附图】

【附图说明】
[0030]从详细描述和附图将更加全面地理解本公开,附图中:
图1是示出根据本公开的示例性车辆系统的功能框图;
图2是示出根据本公开的示例性外部目标计算模块的功能框图;
图3是示出根据本公开的外部目标计算模块的示例性处理器模块的功能框图;以及 图4是示出根据本公开的诊断处理器模块的示例性方法的流程图。
【具体实施方式】
[0031]通常基于来自车辆驾驶员的输入来控制车辆转向、车辆制动和车辆加速/减速。主动安全系统是选择性调节车辆转向、车辆制动和/或车辆加速/减速以补充驾驶员输入、抵消驾驶员输入或者独立于驾驶员输入的系统。主动安全系统也可以被称为安全关键嵌入控制(SCEC (safety critical embedded control))系统和自主驾驶系统。
[0032]车辆可以包括主动安全系统,其选择性地调节车辆转向,例如,将车辆定位(例如居中)在车道中,改变车道、躲避物体,和/或出于一个或更多个其他原因。车辆可以另外或者替代性地包括主动安全系统,其选择性地调节车辆制动和/或车辆加速/减速,例如,用于避免碰撞、适应性巡航控制、碰撞准备和/或一个或更多个其他原因。
[0033]车辆制造商在车辆被制造成可用于销售给公众之前作出车辆的初步报告。初步报告可以指示出当车辆的系统的一个或更多个元件失效时会发生的危险。可以通过机动车硬件完整性标准,例如国际标准化组织(ISO)规定的26262标准,来限定系统的分类。主动安全系统可以被分类到例如ISO 26262标准的机动车安全完整性水平(ASIL) D。
[0034]机动车级微处理器(automotive grade microprocessor)已经被特定地设计成符合ISO 26262标准的一个或更多个ASIL分类。主动安全系统可以包括一个机动车级微处理器,其执行用于主动安全系统的处理及其操作。不过,所述一个机动车级微处理器不能单独实现ASIL D分类的一个或更多个要求。另外,机动车级微处理器是昂贵的且大型的,并且实现多个(例如三个)机动车级微处理器以及相关联的功能会是复杂的。
[0035]主动安全系统因此能够包括机动车级微处理器和至少一个图形微处理器。图形微处理器通常被用于具有一个或更多个显示器的处理密集型嵌入式系统,所述显示器例如智能电话、平板计算机、导航系统等等。图形微处理器不被用于车辆的主动安全系统,这是因为其不符合任意ASIL分类。
[0036]本公开描述了用于执行随机化质询-响应测试以使得处理器模块和外部目标计算模块(EOCM)符合ASIL分类中的一个或更多个的系统和方法。随机化质询-响应测试包括第一处理器模块执行多个(例如四个或更多个)与第二处理器模块不同类型的质询-响应测试。
[0037]每个质询-响应测试包括第一处理器模块发送质询(例如,种子(seed)或者记号)至第二处理器模块并且验证基于该质询确定的第二处理器模块的响应与预期响应相同。每个质询-响应测试还包括第一处理器模块验证该响应是在预定时段内被提供的。当响应不同于预期响应时和/或在传送质询之后的预定时段内第二处理器模块未能提供响应时,第一处理器模块可以诊断故障。
[0038]对于质询-响应测试中的至少一个,动态变量可以用于该测试的质询部分。动态变量可以例如使用传感器来测量、基于一个或更多个其他动态变量来确定,等等。
[0039]随机选择要被执行的质询-响应测试的类型通过减少当存在故障时第二处理器模块可能正确响应的可能性而增加每个质询-响应测试的可靠性和随机化质询-响应测试的可靠性。使用一个或更多个动态变量还通过减少当存在故障时第二处理器模块可能正确响应的可能性而增加质询-响应测试的可靠性和随机化质询-响应测试的可靠性。
[0040]将在车辆系统并且更具体地在主动安全系统的方面讨论本公开。然而,本公开也适用于其他的车辆系统和其他的系统。现在参考图1,示出了包括主动安全系统的车辆系统100的功能框图。发动机控制模块(ECM) 104基于一个或更多个驾驶员输入108来控制发动机致动器。驾驶员输入108可以包括加速器踏板位置(APP)、制动器踏板位置(BPP)、转向轮位置(也被称为转向角)、巡航控制输入和其他的驾驶员输入。
[0041]ECM 104可以例如基于一个或更多个驾驶员输入108来确定节气门112的所需开度。节气门致动器模块116可以基于所需开度来致动节气门112。虽然未示出,但是其他的发动机致动器包括但不限于燃料喷射器、火花塞、排气再循环(EGR)阀、增压装置、气门致动器和/或移相器等。
[0042]ECM 104也可以基于一个或更多个驾驶员输入108 (例如动力转向马达120和(摩擦)制动器124)来控制一个或更多个其他的致动器。ECM 104可以例如基于转向轮位置来确定所需转向角并且基于BPP来确定所需制动力。转向致动器模块128可以基于所需转向角来致动动力转向马达120。制动器致动器模块132可以基于所需制动力来致动制动器124。
[0043]作为驾驶员输入108的补充或替代,ECM 104可以基于由传感器136测量的一个或更多个参数来控制一个或更多个致动器。传感器136可以包括例如进气空气温度传感器、质量空气流速(MAF)传感器、歧管压力传感器、油和冷却剂温度传感器、轮速传感器和各种其他的温度、位置、压力和速度传感器。
[0044]车辆的ECM 104和其他模块可以经由一个或更多个车辆局域网(CAN)总线(例如CAN总线140)来传送和接收数据。车辆的ECM 104和其他模块可以经由一个或更多个数据总线(例如FlexRay总线144)来额外地或替代性地传送和接收数据。FlexRay总线144是根据FlexRay通信协议来实现通信的数据总线。
[0045]可以经由FlexRay总线144来接收来自传感器148的数据,其中该传感器148能够被用于确定车辆和车辆外部特征之间关系。也可以经由FlexRay总线144或者另一合适的总线来接收来自诸如全球定位系统(GPS)150的其他事物的数据。GPS 150确定车辆的地点。传感器148可以包括例如一个或更多个激光雷达(光探测及测距)传感器、一个或更多个基于雷达的传感器、一个或更多个基于激光的传感器、光学传感器、一个或更多个相机和/或一个或更多个能够被用于确定车辆和该车辆外部(即位于车辆外部)特征(例如,车道、物体等)之间的关系的其他传感器。
[0046]车辆可以包括一个或更多个主动安全系统,其基于一个或更多个测量参数来选择性地控制车辆转向、车辆制动和车辆加速/减速中的一个或更多个以便补充驾驶员输入108、抵消驾驶员输入108或者独立于驾驶员输入108。一种不例性主动安全系统经由动力转向马达120选择性地调节车辆转向,例如以便将车辆定位(例如居中)在车道中,改变车道、躲避物体,和/或出于一个或更多个其他原因。另一种示例性主动安全系统经由制动器124选择性地调节车辆制动和/或经由节气门112选择性地调节车辆加速/减速,例如,为了避免碰撞、自适应巡航控制、碰撞准备和/或出于一个或更多个其他原因。
[0047]主动安全系统是选择性地致动节气门112、动力转向马达120和/或制动器124以便补充驾驶员输入108、抵消驾驶员输入108或独立于驾驶员输入108的系统。主动安全系统可被称为半自主系统。本公开也适用于自主车辆系统。
[0048]示例性主动安全系统包括主外部目标计算模块(E0CM)152。主EOCM 152 (也参见图2)选择性地致动节气门112、动力转向马达120和/或制动器124以便补充驾驶员输入108、抵消驾驶员输入108或独立于驾驶员输入108。
[0049]示例性主动安全系统还包括备用E0CM156。备用EOCM 156的功能类似于或者相同于主EOCM 152。在主EOCM 152中探测到故障的情况下,控制从主EOCM 152转移到备用EOCM 156,并且备用EOCM 156选择性地致动节气门112、动力转向马达120和/或制动器124。因为主EOCM 152和备用EOCM 156在功能上是相似的或者相同的,所以将仅讨论主EOCM 152。
[0050]现在参考图2,示出了主EOCM 152的功能框图。主EOCM 152包括第一处理器模块204、第二处理器模块208、第三处理器模块212、CAN总线禁用模块216和FlexRay总线禁用模块220。图3包括第一处理器模块204、第二处理器模块208和第三处理器模块212的功能框图。
[0051]现在参考图2和图3,第一处理器模块204包括处理器304、存储器308,公共资源312、第一串行包接口(SPI) 316和第二 SPI 320。第一处理器模块204还包括CAN收发器324、FlexRay收发器328和以太网收发器332。存储器308可以包括例如外部随机存取存储器(RAM)、外部电可擦除可编程只读存储器(EEPROM)和/或其他合适类型的存储器。在存储器308中存储由第一处理器模块204执行以实现这里描述的功能/函数和其他功能/函数的代码。
[0052]第一处理器模块204可以是机动车级处理器模块,例如Freescale制造的Kimodo。第一处理器模块204可以满足下列最小特性中的每一个:
双核180兆赫(MHz)微处理器;
900 Dhrystone 百万条指令 / 秒(DMIPS);
I兆字节(MB)的快闪存储器/闪存;和 0.5 MB 的 RAM。
[0053]第一处理器模块204从传感器136经由CAN收发器324接收数据。第一处理器模块204传送数据至CAN总线并且经由CAN收发器324从CAN总线接收数据。第一处理器模块204传送数据至FlexRay总线144并且经由FlexRay收发器328从FlexRay总线144接收数据。第一处理器模块204可以经由FlexRay收发器328从一个或更多个传感器148接收数据。
[0054]第一处理器模块204可以经由以太网收发器332从一个或更多个传感器148接收数据。第一处理器模块204可以经由CAN收发器324、FlexRay收发器328、以太网收发器332或者以另一合适的方式接收车辆的地点。第一处理器模块204传送数据至第二处理器模块208并且经由以太网收发器332从第二处理器模块208接收数据。例如,第一处理器模块204可以经由以太网收发器332将从传感器(例如,传感器136和/或传感器148)和/或GPS 150接收的数据传送到第二处理器模块208。
[0055]第一处理器模块204也经由第二 SPI 320传送数据至第二处理器模块208并且从第二处理器模块208接收数据。例如,第一处理器模块204可以经由第二 SPI 320将从传感器(例如,传感器136和/或传感器148)和/或GPS 150接收的数据传送到第二处理器模块208。第一处理器模块204经由第一 SPI 316传送数据至第三处理器模块212并且从第三处理器模块212接收数据。
[0056]第二处理器模块208包括处理器340、存储器344、公共资源348、SPI 352和以太网收发器356。存储器344可以包括例如RAM、闪存和/或其他合适类型的存储器。在存储器344中存储由第二处理器模块208执行以实现这里描述的功能和其他功能的代码。第二处理器模块208可以包括图形微处理器,例如ARM制造的Cortex-A9或者Nvidia制造的Integra 4。第二处理器模块208可以满足下列最小特性中的每一个:
四核I千兆赫(GHz)微处理器;
9600 DMIPS ;
10 MB快闪存储器和ROM ;
0.5千兆字节(GB) RAM;
温度监视器;
看门狗;和 时钟和重置。
[0057]第二处理器模块208可以被轻度嵌入主动安全系统。轻度嵌入(lightlyembedded)可以意味着第二处理器模块208不用于硬时间(hard-time)系统并且可接受一秒或更长的响应时间。相比之下,第一处理器模块204可以是被嵌入的,这意味着不能接受大于一秒的响应时间并且甚至不能接受小于一秒的响应时间。
[0058]第二处理器模块208可以经由以太网收发器356从一个或更多个传感器148接收数据。第二处理器模块208经由以太网收发器356传送数据至第一处理器模块204并且从第一处理器模块204接收数据。第二处理器模块208也经由SPI 352传送数据至第一处理器模块204并且从第一处理器模块204接收数据。第二处理器模块经由SPI 352传送数据至第三处理器模块212并且从第三处理器模块212接收数据。
[0059]第三处理器模块212包括处理器370、存储器374、公共资源378、SPI 382、CAN总线收发器386和FlexRay收发器390。在存储器374中存储由第三处理器模块212执行以实现这里描述的功能和其他功能的代码。第三处理器模块212经由SPI 382传送数据至第一处理器模块204并且从第一处理器模块204接收数据。第三处理器模块212经由SPI382传送数据至第二处理器模块208并且从第二处理器模块208接收数据。
[0060]第二处理器模块208处理来自传感器(例如传感器136和148)的数据。例如,基于从传感器148和GPS 150接收到的数据,第二处理器模块208可以执行处理密集型的功能,例如识别车道线、确定车辆和车道线之间的关系(例如,车辆在车道线之间的位置)、识别车辆外部的物体、确定车辆和被识别物体之间的关系、确定物体的形状和尺寸、确定车辆的目标路径、确定车辆的实际路径、确定车辆路径中的障碍物等等。
[0061]第一处理器模块204基于源自第二处理器模块208所执行的处理的数据来确定是否致动节气门112、动力转向马达120和/或制动器124。当决定应该致动节气门112、动力转向马达120和/或制动器124时,第一处理器模块204确定致动的程度、致动应该被执行的速率、致动的时长(时段)等等。第一处理器模块204相应地向致动器模块输出命令。第一处理器模块204可以分别输出命令至致动器模块,以便补充基于驾驶员输入108所确定的所需值,抵消基于驾驶员输入108所确定的所需值,或者独立于驾驶员输入108。以此方式,第一处理器模块204可以提供至少半自主式驾驶。
[0062]第三处理器模块212执行各种功能以便使得第二处理器模块208和主EOCM 152的安全完整性水平符合ASIL分类中的一个或更多个,例如ASIL B标准、ASIL C标准或ASILD标准。基于第二处理器模块208的安全完整性水平(例如,ASIL B)和第一处理器模块204的安全完整性水平,主EOCM 152可以达到安全完整性水平ASIL D。[0063]例如,第三处理器模块212验证第二处理器模块208以预定次序调用函数/功能并验证第二处理器模块208在预定时段内完成每个函数/功能。第三处理器模块212也确保来自传感器的正被第二处理器模块208处理的数据与正被或可能正被一个或更多个其他模块使用的数据相同。这可以被称为计帧法。
[0064]第三处理器模块212也验证第二处理器模块208是健全的。验证第二处理器模块208是健全的包括如下文进一步描述的(见图4)执行随机化质询-响应测试。
[0065]大体而言,随机化质询-响应测试包括第三处理器模块212以随机次序执行N个不同类型的质询-响应测试,其中N是大于一的整数。例如,N可以是3、4、5、6或者大于一的另一适当整数。
[0066]每个质询-响应测试包括第三处理器212模块发送质询(例如,种子或者记号)至第二处理器模块208并且验证基于该质询确定的第二处理器模块208的响应与预期响应相同并且在预期时段内提供该响应。对于质询-响应测试中的至少一个,动态变量被用于该测试的质询部分,例如车辆速度或另一适当动态变量。动态变量能够是随时间改变的变量/参数或者能够随时间改变的变量/参数。动态变量可以例如使用传感器来测量、基于一个或更多个其他动态变量来确定,等等。
[0067]验证第二处理器模块208是健全的也可以包括提示第二处理器模块208报告其是健全的。第三处理器模块212也可以验证第一处理器模块204是健全的,第一处理器模块204也可以验证第三处理器模块212是健全的,和/或第二处理器模块208可以验证第三处理器模块212是健全的。
[0068]第三处理器模块212也可以响应来自第三处理器模块212的提示来验证第二处理器模块208比预定时段更短地结束。第三处理器模块212也可以验证第二处理器模块208的处理器核芯是同步的。
[0069]第三处理器模块212也可以验证第二处理器模块208的核芯中的两个正在执行被存储在存储器344的独立块内的冗余/相同函数/功能(代码的各部分)。可以例如通过在第三核芯处比较核芯中的两个所确定的结果并且验证第三核芯报告所述结果的比较表明所述结果是相同的来执行这种验证。
[0070]第三处理器模块212也可以验证第二处理器模块208满足如在ASIL B分类下所规定的串行数据完整性的串行数据传输要求。第三处理器模块212可以验证基于第二处理器模块208的非易失存储器(NVM)的存储器块内存储的数据所计算的校验和值(checksumvalue)等于预期校验和值。第三处理器模块212也可以执行在ASIL B分类下所规定的一个或更多个验证。当一个或更多个上述情况没有被验证时第三处理器模块212可以确定故障存在于主EOCM 152内。
[0071]当第三处理器模块212识别出在主EOCM 152内(例如,在第一处理器模块204或者第二处理器模块208内)的故障时,第三处理器模块212将第一和第二禁用信号400和404设定成活动状态/有效状态。当在主EOCM 152内没有被第三处理器模块212识别出故障时,第三处理器模块212可以将第一和第二禁用信号400和404设定成非活动状态/无效状态。
[0072]当第一处理器模块204识别出在主EOCM 152内(例如,在第二处理器模块208或者第三处理器模块212内)的故障时,第一处理器模块将第三和第四禁用信号408和412设定成活动状态。当在主EOCM 152内没有被第一处理器模块204识别出故障时,第一处理器模块204可将第三和第四禁用信号408和412设定成非活动状态。
[0073]当第一禁用信号400和/或第三禁用信号408处于活动状态时CAN总线禁用模块216选择性地禁用从主EOCM 152向CAN总线140的通信。当第一禁用信号400和/或第三禁用信号408处于活动状态时CAN总线禁用模块216可以例如禁用CAN收发器324。当第一禁用信号400和第三禁用信号408均处于非活动状态时CAN总线禁用模块216可以启用CAN收发器324。CAN总线禁用模块216可以经由启用/禁用信号416来启用和禁用CAN收发器324。
[0074]当第二禁用信号404和/或第四禁用信号412处于活动状态时FlexRay总线禁用模块220禁用从主EOCM 152向FlexRay总线144的通信。当第二禁用信号404和/或第四禁用信号412处于活动状态时FlexRay总线禁用模块220可以例如禁用FlexRay收发器328。当第二禁用信号404和第四禁用信号412均处于非活动状态时FlexRay总线禁用模块220可以启用FlexRay收发器328。FlexRay总线禁用模块220可以经由启用/禁用信号420来启用和禁用FlexRay收发器328。
[0075]以此方式,防止主EOCM 152致动动力转向马达120、节气门112和/或制动器124。当主EOCM 152内存在故障时,备用EOCM 156可以接管对主动安全系统的控制并且选择性地致动动力转向马达120、节气门112和/或制动器124,以便补充驾驶员输入108、抵消驾驶员输入108或独立于驾驶员输入108。
[0076]现在参考图4,呈现了示出执行随机化质询-响应测试以诊断主EOCM 152内的故障的示例性方法的流程图。虽然将在第三处理器模块212诊断第二处理器模块208的方面讨论图4,但是下面的描述可总体上适用于一个处理器模块诊断另一处理器模块。例如,图4也适用于第三处理器模块212诊断第一处理器模块204,第二处理器模块208诊断第三处理器模块212,以及第二处理器模块208诊断第一处理器模块204。图4也适用于第一处理器模块204诊断第二处理器模块208以及第一处理器模块204诊断第三处理器模块212。
[0077]在第二处理器模块208的控制回路的前期任务阶段执行图4的方法。第二处理器模块208以预定速率执行控制回路,例如每毫秒(ms)—个控制回路,每IOms —个控制回路,或者以另一速率来执行。第二处理器模块208可以在该控制回路的前期任务阶段完成之后每个控制回路执行一个或更多个任务(代码的各部分)。
[0078]控制开始于504,在此第三处理器模块212重置并且起动定时器。虽然讨论定时器,但是可以替换地使用计数器。在508处,第三处理器模块212从由M个不同类型的质询-响应测试构成的预定集合选择质询-响应测试类型,其中M是大于或等于N的整数。例如,M可以是3、4、5、6或者大于一且大于或等于N的另一适当整数。
[0079]质询-响应测试的类型包括例如算术逻辑单元(ALU)测试、随机存取存储器(RAM)健全测试、寄存器测试、功率/电压测试、时钟测试和循环冗余校验(CRC)测试。质询-响应测试的类型决定了第二处理器模块208应该怎样基于第三处理器模块212所传送的变量(质询)来计算响应以执行计算。
[0080]第三处理器模块212以随机次序从所述集合选择质询-响应测试类型。随机次序可以包括在针对第R次选择任意测试类型之前Q次选择不同测试类型中的每一个,其中Q是大于零的整数并且R等于Q+1。替代性地,随机次序可以包括独立于每个测试先前已经被选择的次数从由不同质询-响应测试类型构成的预定集合中随机地选择测试。随机选择要被执行的质询-响应测试的类型通过减少当存在故障时第二处理器模块208可能正确响应的可能性而增加每个质询-响应测试的可靠性和随机化质询-响应测试的可靠性。
[0081]在512,第三处理器模块212选择/设定用于质询-响应测试的变量。针对每个质询-响应测试可以使用一个动态变量。替代性地,变量可以选自由动态和/或静态变量构成的预定集合。使用一个或更多个动态变量还通过减少当存在故障时第二处理器模块208可能正确响应的可能性而增加质询-响应测试的可靠性和随机化质询-响应测试的可靠性。
[0082]在516,第三处理器模块212传送要被执行的质询-响应测试类型和变量至第二处理器模块208。如果正确地运行(即没有故障),则第二处理器模块208将以质询-响应测试类型所规定的方式在预定时段内基于变量确定/计算响应,并且该响应将与预期响应(针对变量和响应测试类型而言)相同。可以通过质询-响应测试类型和/或变量来改变预定时段。
[0083]在520,第三处理器模块212确定第二处理器模块208是否已经接收到响应。如果否,则控制继续到524。如果是,则控制转移到532,这将在下文被进一步讨论。在524,第三处理器模块212确定定时器跟踪的时段是否大于预定时段。如果是,则第三处理器模块212可以在528处指示出故障存在于第二处理器模块208中,并且控制回路可以结束。如果否,则控制可以返回520。以此方式,第二处理器模块208具有可配置的最后期限/结束时段以响应第三处理器模块212所传送的质询。第二处理器模块208没有在该最后期限/结束时段内响应质询可以是对主EOCM 152内的故障的指示。
[0084]在532(当第三处理器模块212从第二处理器模块208接收到对质询的响应时),第三处理器模块212确定接收到的响应是否相同于(相等于)对该质询的预期响应。如果是,则在536第三处理器模块212可以指示出没有故障存在于主EOCM 152。如果否,则第三处理器模块212可以在528处指示出故障存在于主EOCM 152中,并且控制回路可以结束。第三处理器模块212可以基于所选择的质询-响应类型和所使用的变量(质询)来确定/计算预期响应。
[0085]在各种实施方式中,第三处理器模块212可以响应于在第二预定数量的控制回路(Y)期间的至少第一预定数量的失效(X)指示出故障存在于主EOCM 152中。失效包括第二处理器模块208生成与预期响应不同的响应以及在预定时段内第二处理器模块没有响应。
[0086]当第二处理器模块208中诊断出故障时,第三处理器模块212可以采取一个或更多个补救措施。例如,第三处理器模块212可以在主EOCM 152中诊断出故障时(经由禁用信号400和404)禁用从主EOCM 152至车辆总线的通信,并且将对致动器的控制从主EOCM152转变到备用EOCM 156。当诊断出故障时,第三处理器模块212可以额外地采取一个或更多个其他补救措施,例如重置第二处理器模块208、在存储器中设定诊断故障码(DTC)和/或点亮故障指示灯(MIL)。
[0087]虽然图4仅示出了第三处理器模块212的一个控制回路,不过第三处理器模块212可以以第二预定速率执行多个控制回路。第二预定速率可以与第二处理器模块208执行控制回路的预定速率相同或不同(例如更慢)。因为从质询-响应测试的预定集合中随机选择给定控制回路期间要执行的质询-响应测试类型,所以四个或更多个不同类型的质询-响应测试将用于执行随机化质询-响应测试。[0088]前文描述实质上仅是说明性的并且决不试图限制本公开、其应用或使用。能够以各种形式来实施本公开的广泛教导。因此,虽然本公开包括具体示例,但是不应该将本公开的真实范围限制于此,这是因为一旦学习了附图、说明书以及所附权利要求,则将显而易见到其他改型。为了清楚的目的,在附图中将使用相同附图标记指代类似元件。如这里所述,短语“A、B和C中的至少一个”应被解释为使用非排他性逻辑“或”的逻辑(A或B或C)。应理解的是,方法中的一个或更多个步骤可以按不同次数(或同时)被执行而不改变本公开的原理。
[0089]如本文使用的,术语“模块”可以指以下器件的一部分或包含以下器件:专用集成电路(ASIC);电子电路;组合逻辑电路;现场可编程门阵列(FPGA);执行代码的处理器(共享、专用或成组);提供描述的功能的其他合适的硬件部件;或上述器件的一些或全部的组合,诸如在片上系统中。术语“模块”可以包含存储由处理器执行的代码的存储器(共享、专用或成组)。
[0090]上面使用的术语“代码”可以包含软件、固件和/或微代码,并且可以涉及程序、例程、函数、类和/或对象。上面使用的术语“共享”表示来自多个模块的一些或全部代码可以使用单个(共享)处理器来执行。此外,来自多个模块的一些或全部代码可以由单个(共享)存储器存储。上面使用的术语“成组”表示来自单个模块的一些或全部代码可以采用一组处理器来执行。此外,来自单个模块的一些或全部代码可以使用一组存储器来存储。
[0091]本文描述的设备和方法可以通过由一个或更多个处理器执行的一个或更多个计算机程序来实现。计算机程序包含存储在非暂时性有形计算机可读介质上的处理器可执行指令。计算机程序还可以包含存储的数据。非暂时性有形计算机可读介质的非限制性示例是非易失性存储器、磁存储装置和光学存储装置。
【权利要求】
1.一种用于车辆的诊断系统,所述诊断系统包括: 第一处理器模块,所述第一处理器模块包括第一微处理器和存储器;和 第二处理器模块,所述第二处理器模块包括第二微处理器和存储器并且: 针对第一质询-响应测试将第一质询选择性地发送到所述第一处理器模块; 针对第二质询-响应测试将第二质询选择性地发送到所述第一处理器模块; 针对第三质询-响应测试将第三质询选择性地发送到所述第一处理器模块; 针对第四质询-响应测试将第四质询选择性地发送到所述第一处理器模块;以及基于所述第一处理器模块对所述第一、第二、第三和第四质询的响应来选择性地诊断故障, 其中所述第一、第二、第三和第四质询-响应测试是各自不同的质询-响应测试类型。
2.根据权利要求1所述的诊断系统,其中所述第二处理器模块响应如下至少一者来诊断所述故障: 所述第一处理器模块在第一预定时段内没有响应所述第一质询的第一判定; 所述第一处理器模块在第二预定时段内没有响应所述第二质询的第二判定; 所述第一处理器模块在第三预定时段内没有响应所述第三质询的第三判定;以及 所述第一处理器模块在第四预定时段内没有响应所述第四质询的第四判定。
3.根据权利要求1所述的诊断系统,其中所述第二处理器模块从至少四种不同类型的质询-响应测试构成的组选择所述第一、第二、第三和第四质询-响应测试。
4.根据权利要求3所述的诊断系统,其中所述第二处理器模块以随机次序从所述组选择所述第一、第二、第三和第四质询-响应测试。
5.根据权利要求3所述的诊断系统,其中所述组包括如下至少四者: 算术逻辑单元(ALU)测试; 循环冗余校验(CRC)测试; 功率/电压测试; 寄存器测试; 时钟测试;和 随机存取存储器(RAM)健全测试。
6.根据权利要求1所述的诊断系统,其中所述第二处理器模炔基于随时间变化的变量来设定所述第一、第二、第三和第四质询中的至少一者。
7.根据权利要求1所述的诊断系统,其中所述第二处理器模块在如下至少一者时诊断所述故障: 所述第一质询-响应测试的第一预期值不同于所述第一处理器模块对所述第一质询的第一响应; 所述第二质询-响应测试的第二预期值不同于所述第一处理器模块对所述第二质询的第二响应; 所述第三质询-响应测试的第三预期值不同于所述第一处理器模块对所述第三质询的第三响应;以及 所述第四质询-响应测试的第四预期值不同于所述第一处理器模块对所述第四质询的第四响应。
8.根据权利要求7所述的诊断系统,其中所述第二处理器模块: 基于所述第一质询-响应测试的类型和所述第一质询来确定所述第一预期值; 基于所述第二质询-响应测试的类型和所述第二质询来确定所述第二预期值; 基于所述第三质询-响应测试的类型和所述第三质询来确定所述第三预期值;以及 基于所 述第四质询-响应测试的类型和所述第四质询来确定所述第四预期值。
9.一种车辆的系统,所述系统包括: 根据权利要求1所述的诊断系统, 其中所述第一处理器模炔基于来自感测车辆外部特征的传感器的数据来生成被处理数据,以及 其中所述第一微处理器包括图形微处理器;以及 第三处理器模块,所述第三处理器模炔基于所述被处理数据来选择性地致动电力转向马达、摩擦制动器和节气门中的至少一者。
10.一种用于车辆的诊断方法,所述诊断方法包括: 提供第一处理器模块,所述第一处理器模块具有第一微处理器和存储器;和 在包括第二微处理器和存储器的第二处理器模块处: 针对第一质询-响应测试将第一质询选择性地发送到所述第一处理器模块; 针对第二质询-响应测试将第二质询选择性地发送到所述第一处理器模块; 针对第三质询-响应测试将第三质询选择性地发送到所述第一处理器模块; 针对第四质询-响应测试将第四质询选择性地发送到所述第一处理器模块;以及基于所述第一处理器模块对所述第一、第二、第三和第四质询的响应来选择性地诊断故障, 其中所述第一、第二、第三和第四质询-响应测试是各自不同的质询-响应测试类型。
【文档编号】G05B23/02GK103676926SQ201310380355
【公开日】2014年3月26日 申请日期:2013年8月28日 优先权日:2012年8月28日
【发明者】M.A.尤苏夫 申请人:通用汽车环球科技运作有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1