CN105556402A - 用于影响控制设备的控制程序的方法 - Google Patents
用于影响控制设备的控制程序的方法 Download PDFInfo
- Publication number
- CN105556402A CN105556402A CN201480051803.8A CN201480051803A CN105556402A CN 105556402 A CN105556402 A CN 105556402A CN 201480051803 A CN201480051803 A CN 201480051803A CN 105556402 A CN105556402 A CN 105556402A
- Authority
- CN
- China
- Prior art keywords
- function
- variable
- value
- control program
- core
- 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
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
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0426—Programming the control sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1487—Generic software techniques for error detection or fault masking using N-version programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3024—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- 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
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/23—Pc programming
- G05B2219/23344—Changeable memory, program
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Automation & Control Theory (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明描述一种用于通过第二函数影响电子控制设备的控制程序的第一函数的方法。所述控制程序通过处理器的第一计算核心执行,而所述第二函数在控制程序的执行期间通过第二计算核心执行。所述第一函数给变量配属第一值并且将所述第一值在第一时刻写入到所述变量的存储器地址中。所述第二函数给变量配属第二值,所述第二值在第二时刻写入到所述变量的存储器地址中,其中,覆写由所述第一函数写入的第二值。在第三时刻,所述控制程序从所述变量的存储器地址读取所述第二值。管理实例这样在时间上彼此协调对所述变量的存储器地址的访问,使得所述第一时刻位于所述第二时刻之前并且所述第二时刻位于所述第三时刻之前。
Description
技术领域
本发明涉及一种根据权利要求1的前序部分所述的用于影响控制设备的控制程序的方法。
背景技术
控制设备大量用在技术的多种领域中。特别重要的应用领域此外可能是汽车中的马达控制、传动控制和行驶机构控制以及飞机中的驱动机构的控制。通常必需的是改变存储在已编程的且有运行能力的控制设备上的程序代码,例如用于以测试方式地通过具有改变的或扩展的功能的第二程序例程替换存储在所述程序代码中的第一程序例程。如果不存在程序代码的源代码,则为此必需的是对存储在控制设备上的二进制代码加以影响。为此的方法由文献DE102004027033A1已知。
一种已知的方法在于,第二程序例程这样整合到控制程序中,使得所述第二程序例程由也实施第一程序例程的同一处理器核心实施。所述方法的不利是,由于处理器核心的额外负荷使控制程序的处理减速。
另一已知的方法在于,第二程序例程能由设置在控制设备外部的第二处理器核心实施,例如在与控制设备连接的影响设备中。能够实现第二程序例程的并行执行。所述方法的不利是对于其实现所必需的附加的硬件耗费和在第二程序例程和控制程序之间的数据交换中的较高的延迟。
此外,学术文章“OperationamoffenenHerzen”(Elektroniknet.de,2008年10月6日,http://www.elektroniknet.de/automotive/technik-know-how/test-entwicklungstools/article/1129/0/Operation_am_offenen_Herzen/)提及第二程序例程在具有多个处理器核心的控制设备中的控制设备内部的并行实施的可能性。
专利US8074118B2描述了用于快速覆写控制设备中的变量的可能性。
由现有技术已知的用于影响控制设备的控制程序的方法的普遍缺点在于,为了其实施需要在控制程序的源代码方面或者在其机器代码方面改变控制程序。
控制程序大多模块化地构造,即其由预先产生的函数组成,所述函数特别是根据图形化编程的原理结合成控制程序。与此相应,不仅第一程序例程而且第二程序例程大多理解为一个函数或多个函数的结合。
发明内容
在此背景下,本发明的任务是,说明一种影响控制设备的控制程序的方法,所述方法进一步扩展现有技术。
所述任务通过具有权利要求1的特征的用于影响控制设备的控制程序的方法来解决。有利的实施方案是从属权利要求的主题。
根据本发明的第一主题,提出一种用于影响控制设备的控制程序的方法。所述控制设备具有用于容纳控制程序的第一存储器,而控制程序具有多个第一函数,其中,所述第一函数中的至少一个第一函数构造用于控制执行器。此外设置多个变量,其中,给所述变量中的每一个变量配属一个存储器地址并且在变量和第一函数之间构造预给定的配属。控制设备具有至少一个处理器,其中,控制设备的处理器整体具有多个计算核心并且在第一计算核心中实施具有第一函数的控制程序。根据本发明,在实施控制程序期间在控制设备的第二核心中执行第二函数,其中,第一函数给在确定的存储器地址处的变量配属第一值并且将所述第一值在第一时刻写入到变量的存储器地址中,第二函数给相同的变量配属第二值,在较迟的第二时刻以第二值覆写变量,并且在更迟的第三时刻,控制程序访问变量的经改变的值。
在此,第二函数至少部分具有与第一函数不同的程序代码。根据本发明设置管理实例,所述管理实例使对变量的存储器地址通过控制程序并且通过第二程序的访问、即对变量的控制器地址的读访问与写访问这样在时间上彼此协调,使得第一时刻位于第二时刻之前并且第二时刻位于第三时刻之前。
管理实例理解为以下控制例程:所述控制例程使第二函数通过第二计算核心的实施在时间上与控制程序通过第一计算核心的执行相协调。管理实例可以实现为硬件、软件或两者的组合。第二函数的执行在预给定时刻的开始特别是属于所述管理实例的任务,从而第一函数和第二函数的执行至少部分地并行进行,特别是与第一函数的执行的开始同时,以便确保数据一致性。为了确保数据一致性,管理实例至少构造用于使变量以第二值的覆写这样在时间上与控制程序通过第一计算核心的执行相协调,从而变量以第二值的覆写在时间上在第一函数的对变量的最后写访问之后进行,但是在在第一程序的执行后控制程序对变量的第一读访问之前。本发明的有利实施方案规定用于通过管理实例来确保数据一致性的其他措施,特别是这样使得管理实例确保不仅由第一函数而且由第二函数读取并且利用的变量或者作为参数(Argument)传递给两个函数的变量以统一的值传递给两个函数。
根据本发明的优点是,所述方法一方面能够以小的硬件耗费实现,因为第二函数的执行通过控制设备内部的处理器资源实现,而另一方面由于第二函数在第二处理器核心上的并行执行使控制程序通过第一处理器核心的执行仅仅最小地减速。在此不重要的是,第二计算核心是否自始没有加载控制程序的执行或者在实施根据本发明的方法之前是否这样相应地操作控制设备。
例如,首先计算核心可以加载控制程序的由于安全原因实现的冗余实施,所述冗余实施在开发过程期间变得不必要并且因此在开发过程的范畴内阻碍实施根据本发明的方法。
在本发明的一种进一步扩展方案中,管理实例至少部分通过管理程序实现,所述管理程序在不同于第一计算核心的其它计算核心上相对于控制设备的控制程序并行地实施。在此,所述其它计算核心可以涉及控制设备的计算核心或者涉及设置在控制设备外部的计算核心、例如在与控制设备电路连接的监控单元或接口单元中设置的计算核心。
在本发明的另一进一步扩展方案中,所述管理实例至少部分通过附加程序部分实现,所述附加程序部分补充地整合到控制程序的程序代码中并且由第一处理器核心实施,特别是通过至少一个补充地嵌入到控制程序中的服务例程实施。在此不重要的是,所述附加程序部分是已经在控制设备的初始程序化时在源代码层面上实现还是事后通过由现有技术已知的方法嵌入到控制程序的二进制代码中。就此而言,附加程序部分无论如何不是控制程序的以下部分:控制程序在没有附加程序部分的情况下也是有运行能力的且能运转的。
在本发明的另一进一步扩展方案中,所述管理实例至少部分通过与控制设备电路连接的监控单元实现,特别是通过构造为接口单元的监控单元实现。接口单元理解为以下单元:所述单元构造用于建立在控制设备与其它计算机系统、例如用于编程或配置控制设备的PC之间的数据连接。
如果管理实例没有以附加程序部分的形式实现,则其必须构造为用于在执行控制程序时监控第一计算核心,以便第二函数的执行在时间上与控制程序的执行相协调。所述管理实例优选构造为用于通过处理器的数据接口来监控第一处理器核心的运行。数据接口理解为处理器的以下接口:所述接口可以通过第二计算核心或监控单元读取并且其所输出的数据允许对通过第一计算核心当前处理的存储器地址进行推断,特别是用于监控程序计数器的接口、追踪接口或调试接口。
在本发明的一种扩展方案中,所述管理实例构造为用于通过处理器的数据接口探测控制程序的函数的调用或结束并且与第一函数同时地开始第二函数,从而实现第一函数和第二函数的并行执行。
在另一扩展方案中,所述管理实例构造为用于通过数据接口探测控制程序的函数的正在进行的执行。例如可能的是,数据接口的传输速率过小而不能精确探测第一函数的调用的时刻。如果处理器例如仅仅构造为用于通过数据接口通知控制程序的每隔九个存储器地址的处理,则对于管理实例而言不能求取调用确定的第一函数的准确时刻。但是,如果是通过第二计算核心开始第二函数的执行的情形,所述管理实例可以确定是否已经在所处理的最后十个存储器地址内调取了第一函数。此外可能的是,管理实例根据与函数明确联系的事件识别出控制程序的函数的正在进行的执行,例如根据对变量的访问,对所述变量仅仅通过所述函数访问,或者根据执行程序代码中的位置的到达来识别控制程序的函数的正在进行的执行,在所述程序代码处在控制设备的存储器中存储有函数。
在本发明的一个构造方案中,管理实例构造为用于识别第一函数的结束并且在第一函数结束之后引起以第二值覆写变量。
优选地,第二函数通过第二计算核心的执行通过触发信号开始,例如这样使得第二计算核心执行一无限循环,在每一个循环过程中检查触发信号的存在并且在所述检查的肯定结果时开始第二函数的执行。在一个实施方案中,所述触发信号由控制程序激活。在该实施方案中,可以将能够明确配属给第一函数的事件、例如确定的变量的覆写或确定的I/O引脚的操控作为触发器。在另一实施方案中,触发信号通过管理实例激活。在该实施方案中,可以将为此目的特意存储的触发变量的操控或者处理器的确定的寄存器的操控用作触发器。
在另一实施方式中,所述管理实例通过第二计算核心的程序计数器的置位开始第二函数通过第二计算核心的执行。例如,只要第二计算核心没有执行第二函数,就可以以无限循环的执行加载第二计算核心,并且管理实例开始第二函数的执行,其方式是,所述管理实例将第二计算核心的程序计数器置位成如下存储器地址,在所述存储器地址处存储第二函数的开始或第二函数的调用。
此外优选地,所述管理实例构造为用于通过第一计算核心识别第一函数的调用并且紧随在调用第一函数之后开始第二函数通过第二计算核心的执行,或者识别出从控制程序中先前于第一函数的函数回跳并且紧随实施回跳之后开始第二函数通过第二计算核心的执行,或者识别出第一函数通过第一计算核心的正在进行的执行并且紧随识别出第一函数通过第一计算核心正在进行的执行之后通过第二计算核心开始第二函数的执行,从而第一函数和第二函数至少部分地并行执行。
在一种可能的实施方案中,所述第二函数并行地由多个第二计算核心执行。特别地,如果第二函数单独地通过第二计算核心的执行比第一函数通过第一计算核心的执行持续更长时间并且第二函数这样实现使得在维持数据一致性时能够实现第二函数通过多个计算核心的并行执行,则可以规定,第二函数分布到多个第二计算核心上并且所述第二函数能由多个第二计算核心并行执行。优选地,管理实例构造为用于控制第二函数在一个或多个计算核心上的分布。
为了确保控制程序在第一函数的执行之后才访问变量的值,在已经以由第二函数计算的第二值来写变量之后,在本发明的一种实施方式中规定,所述管理实例延迟控制程序通过第一处理器核心的实施,特别是在第一函数执行之后停止控制程序的执行。例如可以规定,所述管理实例短时停止第一处理器核心或者借助中断使第一处理器核心执行无限循环,并且在第二函数已经以第二值来写变量之后,结束中断。在另一实施方式中,所述管理实例构造为用于这样选择第二时刻,使得变量以第二值的覆写紧随以第一值写变量的存储器地址之后进行。为此可以规定,第二函数将第二值写入到缓冲区域的地址存储器中,所述管理实例从缓冲区域的存储器地址读取第二值并且紧随通过第一函数写第一值之后以第二值覆写变量。备选地也可以规定,第二函数将第二值直接写到变量的存储器地址中,其中,管理实例构造为用于直接在写第二值之前中断第二函数通过第二计算核心的执行,直至第一函数已经将第一值写到变量的存储器地址中。在又一个实施方式中,设置所述特征的组合,即管理实例构造为用于这样选择第二时刻,使得以第二值覆写变量紧随通过第一函数写第一值之后进行,从而普遍不需要控制程序的执行的延迟。同时,管理实例构造为用于,当第一时刻和第二时刻之间的时间段过短而不能及时地、即在到达第三时刻之前以第二值覆写变量时,延迟控制程序通过第一计算核心的执行。
在本发明的一种特别优选的实施方案中,所述管理实例构造为用于通过处理器的数据接口识别控制程序对控制程序的变量的写访问,并且管理实例还构造为用于将已经由第一函数或第二函数配属的变量的值写入到存储器的缓冲区域中。管理实例特别是构造为用于在开始第二函数通过第二计算核心的执行之前将第二函数的输入变量的映射写入到缓冲区域的存储器地址中。在此,函数的输入变量理解为控制程序的以下每种变量:所述变量由函数读取以便使用所述变量的值来确定变量的第一值或第二值。在此规定,第二函数读取存储在缓冲区域中的输入变量的值。此外规定,管理实例确保第一函数和第二函数对于相同的输入变量读取相同的值。
在一种特别优选的实施方案中,管理实例构造为用于通过处理器的数据接口探测控制程序对第二函数的输入变量的写访问,例如通过监控第一计算核心的程序计数器或者通过读取处理器的调试接口或追踪接口。此外,管理实例构造为用于追踪第二函数在存储器的缓冲区域中对输入变量的所有写访问,即在对输入变量之一的每一次写访问时将输入变量的新值的映射写入到缓冲区域中。通过这种方式确保,在每一个时刻在存储器的缓冲区域中存储第二函数的所有输入变量的当前映射。在开始第二函数的执行时,管理实例中断输入变量的映射到缓冲区域中的写入,并且第二函数从缓冲区域读取输入变量的值。通过这种方式确保,第一函数和第二函数对于相同的输入变量读取相同的值。例如不能实现,在由第二函数已读取输入变量之前,通过第一函数覆写不仅由第一函数而且由第二函数读取的输入变量。在第二函数的执行之后,管理实例接受将第二函数的输入变量的映射写入到存储器的缓冲区域中。此外优选,第二函数将变量的所有第二值先写入缓冲区域中。通过这种方式不能进行,在第一函数已读取输入变量的值之前,第二函数覆写第一函数的输入变量。
在本发明的另一可能的实施方案中规定,所述管理实例分别直接在第二函数通过第二计算核心执行之前一次性地将第二函数的所有输入变量的映射写入到缓冲区域中。
根据本发明规定,管理实例将第一时刻、第二时刻和第三时刻在时间上彼此这样相协调,使得第一时刻位于第二时刻之前并且第二时刻位于第三时刻之前。这意味着,第一函数现首先将变量的第一值写入到变量的存储器地址中,随后以第二值覆写变量的存储器地址,并且此后控制程序从变量的存储器地址读取变量的第二值。
优选地,所述管理实例这样确保所述时间流程,使得第二函数将变量的第二值写入到缓冲区域的存储器地址中。所述管理实例构造为用于从缓冲区域的存储器地址读取变量的第二值,通过第一函数探测变量的第一值的写入并且紧随通过第一函数写第一值之后以第二值覆写变量。通过这种方式能够实现,在没有延迟控制程序的执行的情况下在时间上彼此协调第一时刻、第二时刻和第三时刻,只要第一时刻和第三时刻之间的时间段、即变量的第一值通过第一函数的写入和变量的值通过控制程序的下一次读取之间的时间段对于在所述时间段内以第二值覆写变量是足够短的。
在本发明的一种特别优选的实施方案中规定,例如借助测量或者借助基于控制程序的二进制代码的分析的时间估计来确定第一时刻和第三时刻之间的时间段的长度,并且给管理实例提供时间段的所确定的长度,其中,所述管理实例构造为用于当所述时间段的长度低于一预给定的值时延迟控制程序通过第一计算核心在第一时刻和第三时刻之间的执行,并且通过这种方式在需要时增大所述时间段的长度。
不言而喻地,在应用根据本发明的方法的情况下在控制设备上也存储多个第二函数。在一种可能的实施方案中,存储多个第二函数,以便依照根据本发明的方法来影响多个第一函数。在所述实施方案中优选,给每一个第二函数配属一个优先级并且所述管理实例根据第二函数的不同优先级来控制第二函数在不同计算核心上的分布,特别是这样使得给具有高优先级的第二函数比具有低优先级的第二函数提供更多的计算资源。在此,管理实例构造为用于,有利于具有较高优先级的其它第二函数地中断第二函数的执行,以便提供更多的计算资源来执行所述其它第二函数。
在一种可能的实施方案中设置多个第二函数,以便备选地影响一个唯一的第一函数。例如可以规定,并行地分别在自身的第二计算核心上执行所有第二函数,其中,每一个第二函数给变量配属一个值并且管理实例在第二时刻以多个第二值之一覆写变量。例如,每一个第二函数可以给变量配属一个第二值并且将相应的第二值写入到缓冲区域的相应地址中,并且管理实例构造为用于从存储在缓冲区域中的多个第二值读取确定的第二值并且在第二时刻写入到变量的存储器地址中。特别优选地,管理实例根据用户的输入选择第二值,其中,使用户能够在控制程序通过第一计算核心的执行的运行时间例如根据借助接口单元与控制设备连接的计算机来改变输入。通过这种方式使用户能够在多个第二函数之间进行切换以便影响第一函数,而为此不中断控制程序的执行。也可以规定,在存储器中存储多个第二函数,并且仅仅一个唯一的第二计算核心加载所述多个第二函数之一的执行,其中,管理实例根据用户的输入来开始所选择的第二函数通过第二计算核心的执行。
附图说明
下面参考附图进一步阐述本发明。在此,相同类型的部件标记有相同的附图标记。所示的实施形式是强烈示意性的,即间距以及横向与竖直延伸尺寸不是按比例的并且只要没有另外说明,也就没有彼此可导出的几何关系。图中:
图1示出控制设备的内部构造的根据本发明的第一实施形式,所述控制设备与传感器和执行器并且具有构造为附加程序部分的管理实例,
图2示出具有控制设备的内部构造的根据本发明的第二实施形式,所述控制设备具有构造为控制程序的管理实例,
图3示出具有控制设备的内部构造的根据本发明的第三实施形式,所述控制设备具有构造为监控单元的管理实例,
图4以时间图示出根据本发明的方法的示图,具有对变量的不同读访问和写访问,
图5以时间图的形式示出根据本发明的方法的第一优选实施方案,具有构造为附加程序部分的管理实例,
图6以时间图的形式示出根据本发明的方法的第二优选实施方案,具有构造为由附加程序部分和监控单元的组合的管理实例,
图7以时间图的形式示出根据本发明的方法的第三优选实施方案,具有构造为监控单元的管理实例。
具体实施形式
图1的示图示出控制设备ECU,其具有存储器SP1、处理器CPU、与控制设备ECU在电气作用连接的传感器SE以及与控制设备ECU在电气作用连接的执行器AK。存储器SP1包括存储为二进制代码的控制程序STP,所述控制程序包括多个第一函数F1A、F1B、…、F1N。存储器SP1由不同的存储器类型、例如易失值存储器和固定值存储器构造。存储器还包含多个第二函数F2A、F2B、…、F2N并且在存储器地址A1、A2、…、AN上包含控制程序STP的多个变量V1、V2、…、VN。
在多个第一函数F1A、…、F1N和多个第二函数F2A、…、F2N之间存在配属,这样使得每一个第二函数F2A、…、F2N设置用于影响确定的第一函数F1A、…、F1N,其中,每一个第二函数F2A、…、F2N的程序代码与分别配属给其的第一函数F1A、…、F1N至少部分不同。在存储器SP1上存储的第一函数和第二函数的数量通常不相同。不规定,给每一个第一函数配属一个第二函数。此外,在本发明的一种实施方案中可以给第一函数配属多个第二函数,以便备选地影响第一函数。
处理器CPU除第一计算核心P1和第二计算核心P2以外包含另外的多个计算核心P3、…、PN。此外,处理器具有没有示出的用于与构造在控制设备外部的、可以与控制设备电路连接的监控单元(同样没有示出)进行通信的接口。在控制设备ECU中,第一计算核心P1执行控制程序STP。控制程序STP作为二进制的程序代码存在并且包括第一函数F1A、…、F1N的多个调用。第一函数F1A、…、F1N的至少一部分的任务是读取传感器SE的数据或者控制执行器AK。在存储器SP1内给函数F1A、…、F1N配属地址A1、…、AN,在所述地址上存储变量V1、…、VN的值。第一函数F1A、…、F1N包含对分别配属给其的变量的读访问或写访问。换言之,从配属给变量的存储器地址A1、…、AN读取配属给变量的值或者将值写入到相应的存储器地址中。
第一计算核心P1加载控制程序STP的执行。第二计算核心P2加载第二函数F2A的执行,其中,第二函数F2A设置用于影响控制程序STP的第一函数F1A。
管理实例这样协调第二函数F2A对变量V1、…、VN的读访问和写访问,使得第二函数F2A这样影响第一函数F1A,使得以由第二函数F2A配属的值覆写至少一个由第一函数F1A以第一值写入的变量V1,并且使得此外确保数据一致性。在图1中的所示出的实施形式中,管理实例通过嵌入(einbinden)到控制程序STP中的附加程序部分实现,所述附加程序部分由第一服务例程S1AS和第二服务例程S1AE组成。
通过计算核心P1直接在第一函数F1A之前执行第一服务例程S1AS。所述第一服务例程读取所有对于第二函数F2A的执行所需要的输入变量并且在存储器SP1的或对于处理器CPU供使用的另一存储器所保留的缓冲区域中存储所述输入变量的存储的映射。随后,其通过触发信号TR开始第二函数F2A通过第二计算核心P2的执行。随后,第一服务例程S1AS结束,并且第一计算核心P1开始第一函数F1A的执行,而第二计算核心P2并行地执行第二函数F2A。第二函数F2A从缓冲区域读取器其输入变量的值。通过这种方式确保,第一函数F1A和第二函数F2A对于相同的输入变量读取相同的值。例如排除,第一函数F1A和第二函数F2A对于示例性的输入变量V2读取不同的值,因为在第二函数读取了新的值之前,第一函数F1A已经以所述新值覆写输入变量V2的存储器地址A2。第一函数F1A仅仅访问存储器地址A2,而第二函数F2A仅仅访问变量V2的存储在缓冲区域中的映射。
第一函数F1A给变量V1配属第一值并且将所述第一值写入存储器地址A1中。第二函数F2A给变量V1配属第二值并且将所述第二值写入到缓冲区域BU的存储器地址中。通过计算核心P1紧随第一函数F1A之后执行第二服务例程。所述第二服务例程从缓冲区域读取变量V1的通过第二函数F2A配属的第二值并且将所述第二值写入地址A1中,其中,覆写通过第一函数F1A配属的第一值。在需要时,第二服务例程等待,直至第二函数F2A给变量V1配属第二值并且已经将第二值写入到了缓冲区域中。随后,第二服务例程S1AE通过触发信号TR结束第二函数F2A通过第二计算核心P2的执行。
随后,第二服务例程S1AE结束,并且第一计算核心P1继续控制程序STP的执行。在对变量V1的存储器地址A1的下一次读访问时,控制程序读取通过第二函数F2A配属的第二值。如果变量V1限定执行器AK的行为,则执行器替代由第一函数F1A地由第二函数F2A控制。
不言而喻地,所述方法能够以相同的方式也应用在多个变量V1、…、VN上。
图2的示图示出根据本发明的方法的第二实施形式。下面仅仅阐述与图1中的示图的区别。管理实例构造为存储器SP1中的管理程序MON1并且由第三计算核心PN执行。
因为管理程序MON1与在图1中示出的服务例程S1AS、S1AE不同地没有嵌入到控制程序STP中,所以为了能够在时间上彼此协调控制程序STP的和第二函数F2A的变量访问,所述管理程序MON1构造为用于通过第一计算核心P1监控控制程序STP的执行并且探测第一函数F1A、…、F1N的调用或正在进行的执行以及对变量V1、…、VN的访问。这优选借助处理器CPU的数据接口、特别是调试接口、追踪接口或用于读取第一计算核心P1的程序计数器的接口来实现。
管理程序MON1构造为用于探测控制程序STP对第二函数F2A的输入变量V2的存储器地址A2的写访问,并且所述管理程序还构造为用于在控制程序STP对存储器地址A2的写访问之后将输入变量V2的新值的映射写入到缓冲区域BU中。优选地,管理程序MON1紧随控制程序STP对输入变量V2的存储器地址A2的每一次写访问之后将输入变量V2的映射写入到缓冲区域BU中,从而在那里在每一个时刻存在输入变量V2的当前映射。管理程序MON1此外构造为用于探测第一函数F1A、…、F1N的调用或者从第一函数F1A、…、F1N通过第一计算核心的回跳并且在第一函数F1A通过第一计算核心P1的执行的开始时开始第二函数F2A通过第二计算核心的执行。优选地,管理程序MON1借助触发信号TR开始第二函数F2A。
在第二函数F2A已经将变量V1的第二值存储在缓冲区域BU中之后,管理程序MON1从缓冲区域BU读取第二值。管理程序MON1此外构造为用于探测以变量V1的第一值通过第一函数F1A来写变量V1的存储器地址A1并且紧随以第一值来写之后以第二值来覆写变量V1的存储器地址A1。
要注意的是,在本发明的一种可能的实施方案中相应于多个第二函数F2A、F2B、…、F2N地设置多个管理程序MON1、MON2、…、MONN,其中,所述多个管理程序MON1、…、MONN分别可以在不同的处理器核心上运行。
在图2中示出的实施形式的优点是,其可以灵活地应用在每一个第一函数F1A、…、F1N上并且在没有操作控制程序STP的二进制代码的情况下也能够实现,而在图1中示出的服务例程S1AE、S2AE必须已经实现在控制程序STP的源代码中或者必须通过操作控制程序STP的二进制代码事后地嵌入到控制程序STP中。
图3的示图示出根据本发明的方法的第三实施形式。下面仅仅阐述与图1和图2中的示图的区别。管理实例构造为在控制设备ECU外部安装的并且可与控制设备ECU电路连接的监控单元GSI。监控单元GSI的功能相应于在图2中示出的管理程序MON1的功能。也就是说,监控单元GSI构造为用于借助处理器CPU的数据接口来探测第一函数F1A通过第一计算核心的调取、结束或正在进行的执行,并且所述监控单元此外优选构造为用于探测对控制程序STP的变量V1、…、VN的存储器地址A1、…、AN的写访问和读访问。在此,监控单元执行如下的程序例程,所述程序例程的功能相应于在图2中示出的管理程序MON1。在此,在一种可能的实施形式中,程序例程可以通过构建在监控单元GSI中的计算核心来执行。在另一可能的实施形式中,程序例程在监控单元GSI上作为硬件地实现,例如通过FPGA。
特别优选地,监控单元GSI构造为接口单元,所述接口单元允许控制设备ECU与设置在控制设备ECU外部的计算机系统连接,例如与PC或者与快速原型硬件连接,并且控制设备ECU由所述计算机系统控制或者影响。
图4的示图借助时间线阐明根据本发明的方法步骤。根据示出的时间轴T从左向右地在时间上排布控制设备ECU中的事件,即在示图中事件越靠右布置,所示出的事件就越迟地发生。在随后的描述中,根据其在时间轴上的位置以字母的顺序标记事件。因此,在示图中其在字母方面的分类相应于其时间上的顺序,具有相同的字母标记的事件根据其时间顺序以数字进行分类。
例如,具有标记B的事件比具有标记A的事件更迟地发生,并且具有标记A2的事件比具有标记A1的事件更迟地发生。
第一计算核心P1执行具有第一函数F1A的控制程序STP,而第二计算核心P2执行第二函数F2A。控制程序STP在时刻A写第一变量V1,即所述控制程序将新值写入到第一变量V1的存储器地址A1中。此外,在所述控制程序在时刻D调用第一函数F1A之前,所述控制程序在时刻B写第四变量V4并且在时刻C写第二变量V2。与第一函数F1A的调用同时地,借助触发信号TR开始第二函数F2A通过第二计算核心P2的执行。
不仅第一函数F1A而且第二函数F2A在不同的时刻E、F读取作为输入变量的变量V2的值。此外,第一函数F1A在时刻G读取作为输入变量的变量V1的值,并且第二函数F2A在时刻H读取作为输入变量的变量V4的值。随后,两个函数给变量V3配属值。第一函数F1A在第一时刻I将变量V3的第一值写入到存储器地址A3中。在时刻J,实现从第一函数F1A的回跳,即第一函数F1A结束并且通过第一计算核心P1继续控制程序STP的执行。在时刻K,第二函数F2A将用于变量V3的第二值写入到变量V3的存储器地址A3中并且由此覆写由第一函数F1A写入的值。在时刻L,控制程序读取变量V3的通过第二函数F2A写入的第二值。
在所示出的示图中,变量V2是不仅用于第一函数F1A而且用于第二函数F2A的输入变量。为了维持数据一致性,管理实例必须因此确保,两个函数F1A、F2A对于变量V2读取相同的值。此外,管理实例必须确保,时刻K位于时刻I之后但位于时刻L之前,因此控制程序STP在时刻L读取用于第三变量V3的由第二函数F2A配属的第二值。
图5的示图以另一时间图示出相应于在图1中示出的实施形式的方法步骤。下面仅仅阐述与图4中的示图的区别。第一计算核心P1直接在第一函数F1A的执行之前执行第一服务例程S1AS,并且所述第一计算核心紧随第一函数F1A的执行之后执行第二服务例程S1AE。此外设置缓冲区域BU,其用于存储变量V1、V4的第一或第二值。在时刻C1,第一计算核心开始第一服务例程S1AS的执行,所述第一服务例程随后读取第二函数F2A的输入变量V2、V4的值并且将其存储在缓冲区域BU中。在时刻C2,所述第一服务例程从存储器地址A2读取第一变量V2的值并且紧随其后在时刻C3将所述第一输入变量的值写入缓冲区域BU中。在时刻C4,所述第一服务例程从存储器地址A4读取第二变量V4的值并且紧随其后在时刻C5将所述第二输入变量的值写入缓冲区域BU中。在时刻F,第一服务例程S1AS借助触发信号TR开始第二函数F2A通过第二计算核心P2的执行。紧随其后,实现从第一服务例程S1AS的回跳,并且第一计算核心P1开始第一函数F1A的执行。因此,第一函数F1A和第二函数F2A实际上同时开始并且随后并行地执行。
第二函数F2A在时刻F1和H从缓冲区域BU读取其输入变量V2、V4的值,随后给变量V3配属第二值并且在时刻H1将所述第二值写入缓冲区域BU中。第一函数F1A在时刻I将用于变量V3的通过第一函数F1A配属的第一值写入存储器地址A3中。在时刻J,第一函数F1A结束,并且第一计算核心开始第二服务例程S1AE的执行。所述第二服务例程在时刻K读取通过第二函数F2A存储在缓冲区域BU中的用于变量V3的第二值并且将所述第二值在时刻K1写入到变量V3的存储器地址A3中。随后,第二服务例程S1AE在时刻K2结束,并且第一计算核心P1继续控制程序STP的执行,所述控制程序在时刻L从变量V3的存储器地址A3读取用于第三变量V3的通过第二服务例程S1AS存储的、通过第二函数F2A配属的第二值。
图6的示图示出用于在先前示图中没有示出的另一实施例的时间图,其中,管理实例通过由可与控制设备电路连接的监控单元GSI和以服务例程S1AE形式的附加程序部分的组合实现。优选地,监控单元GSI构造为接口单元,并且服务例程S1AE借助监控单元GSU和通过所述监控单元GSI与控制设备ECU电路连接的计算机整合到控制程序STP的二进制代码中。下面仅仅阐述与图4和5的区别。
监控单元GSI构造为用于探测控制程序STP对变量V1、…、V4的写访问以及第一函数F1A、…、F1N通过第一计算核心的调用。控制程序STP对变量在时刻A、B和C的所有写访问被探测出并且变量的相应新值存储在监控单元GSI的内部存储器中,从而在监控单元GSI的内部存储器中在每一个时刻存储控制程序STP的所有变量V1、…,V4的当前映射。在时刻C01,第一计算核心调用第一函数F1A。第一函数F1A的所述调用通过监控单元GSI探测。在监控单元探测出了函数F1A的调用之后,监控单元直接中断变量V1、…、V4的新值在其内部存储器中的存储并且在时刻E和F1将第二函数F2A的输入变量V2、V4的当前值写入缓冲区域BU中。在第二函数F2A的所有输入变量V2、V4的值存储在缓冲区域BU中之后,监控单元GSI借助触发信号TR开始第二函数F2A通过第二计算核心P2的执行。第二函数F2A在时刻H01和H02从缓冲区域BU读取其输入变量V2、V4的值。第一函数F1A和第二函数F2A通过这种方式对于共同使用的输入变量V2读取相同的值。
在另一可能的实施中,监控单元GSI将第二函数F2A的每一个输入变量V2、V4的值紧随控制程序对输入变量V2、V4的每一次写访问之后写入到缓冲区域BU中并且紧随第一函数F1A的调用之后中断输入变量V2、V4的值到缓冲区域中的写入,从而在缓冲区域BU中直至调用第一函数F1A在每一个时刻存在第二函数F2A的输入变量V2、V4的当前映射。
第二函数F2A给变量V3配属第二值并且将所述第二值在时刻H1写入到缓冲区域BU中。在时刻K,服务例程S1AE读取第二值并且将其在时刻K1写入变量V3的存储器地址A3中。在此,所述服务例程覆写在时刻I由第一函数F1A写入的第一值。
图7的示图以另一时间图示出相应于在图3中示出的实施形式的方法步骤。下面仅仅阐述与图4至6中的示图的区别。管理实例通过监控单元GSI构造。第二函数F2A在时刻H1将变量V3的第二值写入到缓冲区域BU中。监控单元GSI探测所述写访问并且将变量V3的存储在缓冲区域BU中的第二值的映射写入其内部存储器中。在时刻I,第一函数F1A将变量V3的第一值写入到变量V3的存储器地址A3中。监控单元GSI也探测所述写访问并且紧随在第一函数F1A将变量V3的第一值写入到了存储器地址A3中之后将所述变量的第二值写入到存储器地址A3中并且在此覆写由第一函数F1A在那里存储的第一值。
要注意的是,在图6和7中示出的监控单元GSI的功能可以完全或部分地通过存储在控制设备ECU上的管理程序MON1替代。
Claims (17)
1.用于影响控制设备(ECU)的控制程序(STP)的方法,其中,所述控制设备(ECU)具有用于容纳所述控制程序(STP)的第一存储器(SP1),并且所述控制程序(STP)具有多个第一函数(F1A,F1B,…,F1N),其中,所述第一函数(F1A,F1B,…,F1N)的至少一个第一函数构造用于控制执行器(AK),
其中,设置多个变量(V1,V2,…,VN)并且给所述变量(V1,V2,…,VN)中的每一个配属一个存储器地址(A1,A2,…,AN),其中,在所述变量(V1,V2,…,VN)和所述第一函数(F1A,F1B,…,F1N)之间构造预给定的配属,
其中,所述控制设备(ECU)具有至少一个处理器(CPU)并且所述控制设备(ECU)的处理器(CPU)整体上具有多个计算核心(P1,P2,…,PN),
其中,由第一计算核心(P1)执行具有所述第一函数(F1A,F1B,…,F1N)的控制程序(STP)并且在所述控制程序(STP)执行期间在所述控制设备(ECU)的第二计算核心(P2)中执行第二函数(F2A),
其中,第一函数(F1A)给变量(V1)配属第一值并且将所述第一值在第一时刻写入到所述变量(V1)的存储器地址(A1)中,
所述第二函数(F2A)给所述变量(V1)配属第二值,在第二时刻以所述第二值覆写所述变量(V1)并且在第三时刻所述控制程序(STP)访问所述变量(V1)的经改变的值,
其中,所述第二函数(F2A)至少部分具有与所述第一函数(F1A)不同的程序代码,
其特征在于,管理实例在时间上彼此协调对所述变量(V1)的存储器地址(A1)的访问,使得所述第一时刻位于所述第二时刻之前并且所述第二时刻位于所述第三时刻之前。
2.根据权利要求1所述的方法,其特征在于,所述管理实例部分地或完全地通过管理程序(MON1)或者通过补充所述控制程序(STP)的附加程序部分(S1AS,S1AE)实现,其中,所述管理程序(MON1)在与所述第一计算核心(P1)不同的其它计算核心(P2,P3,…,PN)上或者在设置在所述控制设备(ECU)外部的计算核心上执行。
3.根据权利要求1或2所述的方法,其特征在于,所述管理实例部分地或完全地通过能够与所述控制设备(ECU)电路连接的监控单元(GSI)、特别是构造为接口单元的监控单元(GSI)来实现。
4.根据以上权利要求中任一项所述的方法,其特征在于,所述管理实例构造为用于借助监控处理器(CPU)的数据接口、特别是用于读取程序计数器的接口、追踪接口或调试接口来探测所述控制程序(STP)的函数(F1A,F1B,…,F1N)通过所述第一计算核心(P1)的调用、正在进行的执行或者结束。
5.根据权利要求4所述的方法,其特征在于,所述管理实例在所述第一函数(F1A)结束之后引起以所述第二值覆写所述变量(V1)。
6.根据以上权利要求中任一项所述的方法,其特征在于,通过触发信号(TR)或通过所述第二计算核心的所述程序计数器的置位开始所述第二函数(F2A)的执行。
7.根据权利要求4至6中任一项所述的方法,其特征在于,所述管理实例紧随所述第一函数(F1A)通过所述第一计算核心(P1)调用之后或者紧随所述控制程序(STP)的在所述第一函数(F1A)之前的函数结束之后或者紧随识别到所述第一函数(F1A)通过所述第一计算核心(P1)正在进行执行之后开始所述第二函数(F2A)通过所述第二计算核心(P2)的执行。
8.根据以上权利要求中任一项所述的方法,其特征在于,所述第二函数(F2A)的执行并行地在多个第二计算核心(P2,…,PN)上执行,特别是其中,所述管理实例控制第二函数(F2A)在一个或多个计算核心上的分布。
9.根据以上权利要求中任一项所述的方法,其特征在于,所述管理实例借助所述控制程序(STP)的延迟或者借助所述第二时刻的选择来确保,所述第三时刻位于所述第二时刻之后。
10.根据以上权利要求中任一项所述的方法,其特征在于,所述管理实例构造为用于通过处理器(CPU)的数据接口、特别是用于读取程序计数器的接口、追踪接口或调试接口来探测所述控制程序(STP)对变量(V1,…,VN)的写访问并且将至少一个变量的第一值或第二值写入到缓冲区域(BU)的存储器地址中。
11.根据权利要求10所述的方法,其特征在于,所述管理实例在所述第二函数(F2A)通过所述第二计算核心的执行开始之前将所述第二函数的输入变量(V2)的映射写入到所述缓冲区域(BU)的存储器地址中,并且所述第二函数从所述缓冲区域的存储器地址读取所述输入变量(V2)的值,其中,所述管理实例确保所述第一函数(F1A)和所述第二函数(F2A)对于所述输入变量(V2)读取相同的值。
12.根据权利要求11所述的方法,其特征在于,所述管理实例构造为用于通过处理器(CPU)的数据接口、特别是用于读取程序计数器的接口、追踪接口或调试接口来探测所述控制程序(STP)对所述第二函数(F2A)的输入变量(V2)的写访问并且在所述控制程序(STP)对所述输入变量(V2)的写访问之后将所述输入变量(V2)的映射写入到所述缓冲区域(BU)的存储器地址中,并且所述管理实例在所述第二函数(F2A)通过所述第二计算核心(P2)的执行期间中断所述输入变量(V2)的映射到所述缓冲区域(BU)中的写入。
13.根据权利要求10所述的方法,其特征在于,所述第二函数(F2A)将所述变量(V1)的第二值写入到所述缓冲区域(BU)的存储器地址中,所述管理实例探测通过所述第一函数(F1A)将所述变量(V1)的第一值写到所述变量(V1)的存储器地址(A1)上,并且所述管理实例在所述变量(V1)的第一值通过所述第一函数写入之后以所述变量(V1)的存储在所述缓冲区域(BU)中的第二值覆写所述变量(V1)的存储器地址(A1),特别是紧随所述第一值写入之后覆写。
14.根据权利要求13所述的方法,所述方法具有以下附加的方法步骤:确定所述第一时刻和所述第三时刻之间的时间段的长度的值,特别是借助所述控制程序(STP)的二进制代码的测量或分析来确定,其中,所述管理实例构造为用于,当所估计的时间段低于预给定的长度时,延迟所述控制程序(STP)在所述第一时刻和所述第三时刻之间的执行。
15.根据以上权利要求中任一项所述的方法,其特征在于,设置多个第二函数(F2A,F2B,…,F2N)。
16.根据权利要求15所述的方法,其特征在于,所述多个第二函数(F2A,F2B,…,F2N)具有不同的优先级并且借助所述管理实例根据所述第二函数(F2A,F2B,…,F2N)的不同优先级来控制所述第二函数(F2A,F2B,…,F2N)在一个或多个计算核心(P2,…,PN)上的分布,并且所述管理实例构造为用于暂停由第二计算核心(P2)执行的一个第二函数(F2A)并且使所述第二计算核心(P2)执行具有较高优先级的其它第二函数(F2B)。
17.根据权利要求15所述的方法,其特征在于,所述多个第二函数(F2A,F2B,…,F2N)给所述变量(V1)分别配属不同的第二值,并且所述管理实例构造为用于在所述第二时刻以所述不同第二值中的一个第二值覆写所述变量(V1)。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP13196219.3 | 2013-12-09 | ||
EP13196219.3A EP2881814A1 (de) | 2013-12-09 | 2013-12-09 | Verfahren zur Beeinflussung eines Steuerprogramms eines Steuergerätes |
DE102013113686.9A DE102013113686A1 (de) | 2013-12-09 | 2013-12-09 | Verfahren zur Beeinflussung eines Steuerprogramms eines Steuergerätes |
DE102013113686.9 | 2013-12-09 | ||
PCT/EP2014/076067 WO2015086357A1 (de) | 2013-12-09 | 2014-12-01 | Verfahren zur beeinflussung eines steuerprogramms eines steuergeräts |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105556402A true CN105556402A (zh) | 2016-05-04 |
Family
ID=52016041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480051803.8A Pending CN105556402A (zh) | 2013-12-09 | 2014-12-01 | 用于影响控制设备的控制程序的方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10162324B2 (zh) |
EP (1) | EP3080668B1 (zh) |
CN (1) | CN105556402A (zh) |
WO (1) | WO2015086357A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109977633A (zh) * | 2019-03-28 | 2019-07-05 | 武汉斗鱼鱼乐网络科技有限公司 | 一种程序保护方法及相关装置 |
CN113553039A (zh) * | 2020-04-23 | 2021-10-26 | 杭州海康威视数字技术股份有限公司 | 算子的可执行代码的生成方法及装置 |
CN115291958A (zh) * | 2022-10-10 | 2022-11-04 | 广州市保伦电子有限公司 | 一种主控与外围芯片的更换方法及装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3071334B1 (fr) * | 2017-09-19 | 2019-08-30 | Psa Automobiles Sa | Procede pour assurer la stabilite des donnees d’un processeur multicoeur d’un vehicule automobile |
JP7431791B2 (ja) * | 2021-12-01 | 2024-02-15 | 株式会社日立製作所 | ストレージシステム及びデータ処理方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1337024A (zh) * | 1999-01-19 | 2002-02-20 | 西门子公司 | 跟踪数据的方法 |
US20030074650A1 (en) * | 2001-10-17 | 2003-04-17 | Tankut Akgul | Debugger operating system for embedded systems |
US20080065239A1 (en) * | 2004-03-15 | 2008-03-13 | Robert Leinfellner | Influencing Device for Control Apparatus |
CN101300545A (zh) * | 2005-11-08 | 2008-11-05 | 国际商业机器公司 | 进行异类处理联合体中的外部辅助调用的装置与方法 |
US20100192016A1 (en) * | 2009-01-28 | 2010-07-29 | Dspace Digital Signal Processing And Control Engineering Gmbh | Method For Controlling An Operating Mechanism And A Manipulation Unit |
CN102708013A (zh) * | 2011-03-07 | 2012-10-03 | 英飞凌科技股份有限公司 | 程序语句控制的指令流控制 |
CN103106145A (zh) * | 2011-08-09 | 2013-05-15 | 帝斯贝思数字信号处理和控制工程有限公司 | 用于在数据通信装置中处理控制装置的数据的方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4296996B2 (ja) * | 2004-06-15 | 2009-07-15 | 富士通株式会社 | マルチコアプロセサ制御方式 |
WO2009064864A1 (en) | 2007-11-13 | 2009-05-22 | Rockwell Automation Technologies, Inc. | Industrial controller using shared memory multicore architecture |
US8074118B2 (en) | 2009-01-28 | 2011-12-06 | Dspace Digital Signal Processing And Control Engineering Gmbh | Method for influencing a control unit and manipulation unit |
DE102011052511A1 (de) | 2011-08-09 | 2013-02-14 | Dspace Digital Signal Processing And Control Engineering Gmbh | Verfahren zur Verarbeitung von Daten in einem Beeinflussungsgerät |
US20170177345A1 (en) * | 2015-12-18 | 2017-06-22 | Intel Corporation | Instruction and Logic for Permute with Out of Order Loading |
-
2014
- 2014-12-01 CN CN201480051803.8A patent/CN105556402A/zh active Pending
- 2014-12-01 WO PCT/EP2014/076067 patent/WO2015086357A1/de active Application Filing
- 2014-12-01 EP EP14809323.0A patent/EP3080668B1/de active Active
-
2016
- 2016-06-09 US US15/177,372 patent/US10162324B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1337024A (zh) * | 1999-01-19 | 2002-02-20 | 西门子公司 | 跟踪数据的方法 |
US20030074650A1 (en) * | 2001-10-17 | 2003-04-17 | Tankut Akgul | Debugger operating system for embedded systems |
US20080065239A1 (en) * | 2004-03-15 | 2008-03-13 | Robert Leinfellner | Influencing Device for Control Apparatus |
CN101300545A (zh) * | 2005-11-08 | 2008-11-05 | 国际商业机器公司 | 进行异类处理联合体中的外部辅助调用的装置与方法 |
US20100192016A1 (en) * | 2009-01-28 | 2010-07-29 | Dspace Digital Signal Processing And Control Engineering Gmbh | Method For Controlling An Operating Mechanism And A Manipulation Unit |
CN102708013A (zh) * | 2011-03-07 | 2012-10-03 | 英飞凌科技股份有限公司 | 程序语句控制的指令流控制 |
CN103106145A (zh) * | 2011-08-09 | 2013-05-15 | 帝斯贝思数字信号处理和控制工程有限公司 | 用于在数据通信装置中处理控制装置的数据的方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109977633A (zh) * | 2019-03-28 | 2019-07-05 | 武汉斗鱼鱼乐网络科技有限公司 | 一种程序保护方法及相关装置 |
CN113553039A (zh) * | 2020-04-23 | 2021-10-26 | 杭州海康威视数字技术股份有限公司 | 算子的可执行代码的生成方法及装置 |
CN113553039B (zh) * | 2020-04-23 | 2024-05-31 | 杭州海康威视数字技术股份有限公司 | 算子的可执行代码的生成方法及装置 |
CN115291958A (zh) * | 2022-10-10 | 2022-11-04 | 广州市保伦电子有限公司 | 一种主控与外围芯片的更换方法及装置 |
CN115291958B (zh) * | 2022-10-10 | 2022-12-27 | 广州市保伦电子有限公司 | 一种主控与外围芯片的更换方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2015086357A1 (de) | 2015-06-18 |
US10162324B2 (en) | 2018-12-25 |
US20160282831A1 (en) | 2016-09-29 |
EP3080668A1 (de) | 2016-10-19 |
EP3080668B1 (de) | 2017-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105556402A (zh) | 用于影响控制设备的控制程序的方法 | |
US11003489B2 (en) | Cause exception message broadcast between processing cores of a GPU in response to indication of exception event | |
KR102025556B1 (ko) | 처리 장치, 추적 유닛 및 진단 장치 | |
US8190864B1 (en) | APIC implementation for a highly-threaded x86 processor | |
CN103109276B (zh) | 系统测试方法 | |
US20100017660A1 (en) | System and method for protecting memory stacks using a debug unit | |
JP2008225759A (ja) | 検出装置、システム、プログラムおよび検出方法 | |
CN103226499B (zh) | 一种恢复内部存储器中的异常数据的方法及装置 | |
CN101292226A (zh) | 线程通信和同步技术 | |
KR102181802B1 (ko) | 데이터 처리방법 및 프리페치 장치 | |
JP2009505186A (ja) | コンピュータシステムの機能監視方法および機能監視装置 | |
CN107608737B (zh) | 动画播放方法及装置 | |
JP2008513899A (ja) | コンピュータシステム上でコンピュータプログラムを処理する方法 | |
CN104932876B (zh) | 半导体装置及读取指令的控制方法 | |
CN115857651A (zh) | 用于外部显示器掉电检测的方法和装置 | |
JP2015067107A (ja) | 車両用制御装置 | |
US11210757B2 (en) | GPU packet aggregation system | |
CN103154919A (zh) | 多处理器系统中的异常控制 | |
CN102549510B (zh) | 用于检查操作系统的实时特性的方法 | |
US8468394B2 (en) | Method of tracing selected activities within a data processing system by tagging selected items and tracing the tagged items | |
CN103631571A (zh) | 一种进度条的控制方法和装置 | |
CN101989190B (zh) | 等待指令 | |
JP2018165873A (ja) | 車載用制御装置 | |
TWI515520B (zh) | Industrial robotic system and its control device | |
JP5505781B2 (ja) | トレース・障害観測システム、トレース・障害観測方法及びトレース・障害観測プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160504 |
|
WD01 | Invention patent application deemed withdrawn after publication |