CN117149345A - 用于在第二计算单元中模拟第一计算单元的方法 - Google Patents
用于在第二计算单元中模拟第一计算单元的方法 Download PDFInfo
- Publication number
- CN117149345A CN117149345A CN202310629528.4A CN202310629528A CN117149345A CN 117149345 A CN117149345 A CN 117149345A CN 202310629528 A CN202310629528 A CN 202310629528A CN 117149345 A CN117149345 A CN 117149345A
- Authority
- CN
- China
- Prior art keywords
- computing unit
- action
- simulation
- module
- time point
- 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
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000009471 action Effects 0.000 claims abstract description 109
- 238000004088 simulation Methods 0.000 claims abstract description 64
- 230000036962 time dependent Effects 0.000 claims abstract description 17
- 230000008569 process Effects 0.000 claims description 20
- 238000013213 extrapolation Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 8
- 238000002485 combustion reaction Methods 0.000 claims description 2
- 230000000875 corresponding effect Effects 0.000 description 16
- 230000006870 function Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000015654 memory Effects 0.000 description 3
- 230000000737 periodic effect Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45508—Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/15—Vehicle, aircraft or watercraft design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Automation & Control Theory (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Debugging And Monitoring (AREA)
Abstract
用于在第二计算单元中模拟第一计算单元的方法。本发明涉及用于在第二计算单元中模拟第一计算单元的方法,其中在所要模拟的第一计算单元中执行的软件在第二计算单元中被执行,所述方法包括:通过在第二计算单元中的计时模块来确定(310)随时间的运行计划,按照所述运行计划,在所要模拟的第一计算单元中处理软件的进程;通过在第二计算单元中的至少一个模拟模块来执行(330)软件以用于对第一计算单元的模拟,其中至少一个模拟模块基于随时间的运行计划分别在指定的动作时间点执行指定的动作,以便获得动作结果;基于动作结果,确定将来的、尤其是下一个动作的动作时间点;并且使用所确定的动作时间点用于所述随时间的运行计划。
Description
技术领域
本发明涉及一种用于在第二计算单元中模拟第一计算单元的方法以及一种用于执行该方法的计算单元和一种用于执行该方法的计算机程序。
背景技术
诸如(机动)车辆中的控制设备等计算单元可以在如PC等其它计算单元中被建模或模拟,例如其方式是:通过特殊的模拟软件来对所要模拟的计算单元或该计算单元的功能进行仿真,例如作为虚拟机。例如,所要模拟的计算单元在其正常运行时执行的软件可以在该模拟的范围内在计算单元中或在虚拟机中被执行。
发明内容
按照本发明,提出了具有专利独立权利要求的特征的一种用于在第二计算单元中模拟第一计算单元的方法以及一种用于执行该方法的计算单元和一种用于执行该方法的计算机程序。有利的设计方案是从属权利要求以及随后的描述的主题。
本发明提出了一种即使关于时间顺序也尽可能逼真地执行对所要模拟的计算单元(以下也称为第一计算单元)的模拟并且在该模拟中能够关于时间顺序足够准确地仿真第一计算单元对软件的执行或处理的可能性。在该模拟的范围内,软件的各个进程特别适宜地以与在实际的第一计算单元中相同或者至少基本上相同的等待时间或处理时间来被执行。因此,适宜地,在该模拟的范围内在模拟计算单元(以下也称为第二计算单元)上对软件的执行在时间上与在实际的、所要模拟的(第一)计算单元中对同一软件的执行相协调。
在本说明书的范围内,尤其是应区分术语“所要模拟的计算单元”和“经过模拟的计算单元”。“所要模拟的计算单元”尤其应被理解成应该以数字方式被仿真的实际的物理单元,即例如具有微处理器/微控制器(硬件)、应用程序软件以及可能操作系统(调度器)的控制设备。相对应地,“经过模拟的计算单元”应该被理解成在第二计算单元中以数字方式或以虚拟方式仿真的第一计算单元,即,该第一计算单元借此仅以软件存在而且并不作为实际的物理单元存在。
在该模拟的范围内,在所要模拟的(第一)计算单元中执行的软件在第二计算单元中被执行。尤其是,实际开发平台在该模拟的范围内在第二计算单元中以虚拟方式或以数字方式借助于相对应的模拟软件来被仿真,例如作为虚拟机,该开发平台包括硬件单元和操作系统(调度器)。特别适宜地,该模拟软件模块化地构造,而且具有多个不同的软件模块。
计时模块(Zeitablaufmodul),尤其是作为模拟软件的第一软件模块,在第二计算单元中确定随时间的运行计划,按照该运行计划,在所要模拟的、实际的第一计算单元中处理该软件的进程或任务或者部分、组件或模块。因此,该计时模块尤其是确定在所要模拟的第一计算单元中何时执行哪些任务或者哪些任务何时被完成执行。该运行计划尤其描述了在第一计算单元正常运行时各个软件进程的顺序和处理时间。特别适宜地,该运行计划描述了各个进程何时完全被处理以及何时存在各个进程的结果或输出,这些结果或输出又可能被需要作为其它进程的输入。在此,该运行计划尤其也动态地产生或者动态地被产生,以便例如能够对系统状态的变化(例如高转速)做出反应。
优选地,还使用动作模块,尤其是作为模拟软件的第二软件模块,借助于该动作模块,在第二计算单元中根据随时间的运行计划来确定动作事件,其中按照这些动作事件,应该在对第一计算单元的模拟的范围内分别在指定的动作时间点执行指定的动作。动作例如可以包括读入数据和/或写数据和/或开始对进程的处理。尤其是,该动作模块在该运行计划中标识或确定在第一计算单元的正常运行时在该软件的执行的范围内发生的特殊事件,例如各个进程的处理的开始或结束、数据的交换、将各个进程的输出作为输入传送给其它进程、第一计算单元的各个组件彼此间的通信等等。此外,适宜地,该动作模块标识或确定这些单独的事件在第一计算单元运行时相对于彼此在何时发生。特别适宜地,该动作模块将在第一计算单元的正常运行时在该软件的执行的范围内发生的这些事件转换成相对应的动作事件,这些动作事件应该在对第一计算单元的模拟的范围内被执行。
至少一个模拟模块,尤其是以模拟软件的至少一个第三软件模块为形式,在第二计算单元中执行该软件以用于模拟或者在该模拟的范围内或作为第一计算单元的模拟来执行该软件。在此,该至少一个模拟模块按照所确定的动作事件在指定的动作时间点执行相应的指定动作。
还可以提供多个模拟模块,其中每个模拟模块例如都对第一计算单元的特殊硬件和/或软件组件进行仿真。此外,例如还可以通过多个模拟模块对第一计算单元的每个组件进行仿真。尤其是,该动作模块与每个这样的模拟模块耦合,使得可以向每个模拟模块分别单独地指定相对应的动作事件。
虽然这种随时间的运行计划原则上能够实现对真实的、即所要模拟的第一计算单元的更精确的模拟,但是在真实的第一计算单元正常运行时,某些动作事件可能有时是必要的,这些动作事件又取决于先前的动作结果。这种动作结果尤其可以是所要模拟的第一计算单元的输出数据,诸如内燃机的转速和/或曲轴转角(或者这些参量的相对应的值)。例如,可能的是:在(例如发动机的)转速的特定值的情况下应该执行特定动作。但是,该转速例如又取决于先前的动作结果。
在该背景下,在本发明的范围内提出:基于动作结果,确定将来的、尤其是下一个动作的动作时间点,并且接着将该动作时间点用于随时间的运行计划,即例如基于该动作时间点来调整该随时间的运行计划(这可以接着在计时模块中进行)。借此,尤其可以在运行计划中生成下一个增量、即下一个值。将来的动作的动作时间点尤其可以通过在第二计算单元中的外推模块来被确定。
此外,将来的动作的动作时间点尤其也可以基于外推逻辑来被确定。这种外推逻辑可以将例如所估计的将来的例如应该角度同步的动作在功能模块中映射到一时间点,在该时间点,在两个事件之间的时间段不必是恒定的,原因在于转速可能发生变化。
还特别优选的是:确定在当前的动作时间点与将来的动作的动作时间点之间的时间间隔和在上一个动作时间点与当前的动作时间点之间的时间间隔的差值。接着,该差值可以被用于随时间的运行计划,尤其是用于调整该随时间的运行计划。即,该优选变体在于:向计时模块(即时间模块的计时模块)报告所估计的下一个(在当前动作与下一个动作之间的)间隔与上一个(在当前动作与上一个动作之间的)间隔的差值。接着,该时间模拟例如可以使用该差值,以便调整所保存的或所存储的(并且当前使用的)并且可能周期性的间隔。
该变体的另一优点在于:在开始该模拟时由于第一个动作、即动作时间点的未知/不准确的发生而发生的延迟在运行时期间被修正。此外,固定的周期性动作的特殊情况,例如在运行时期间周期没有发生变化,可以利用与可调整或可设定的周期性动作相同的实现方案来被处理;那么,该“差值”始终为零。
由于模拟软件的以计时模块、必要时动作模块和模拟模块以及必要时外推模块为形式的模块化构造,各个组块或模块可以特别简单且灵活地被调整,以便使该模拟尽可能准确。特别适宜地,计时模块经由动作模块和/或外推模块来与模拟模块耦合。因此,在该动作模块中可以特别简单且灵活地尝试不同的机制,以便在软件模块中将来自随时间的运行计划中的信息转换成具体的动作事件,使得第一计算单元的运行可以尽可能准确且一致地被仿真。经由外推模块,又可以评估动作结果,对动作结果进行外推并且将动作结果反馈给时间模块。以这种方式,提供了以不复杂且成本低廉的方式创建对第一计算单元的有效的、一致的模拟的可能性。
有利地,计时模块根据所要模拟的第一计算单元的硬件组件来确定随时间的运行计划。如所阐述的那样,在实际的第一计算单元中执行软件时的处理和等待时间尤其可能取决于具体的所安装的硬件组件,例如取决于具体使用的处理器单元或处理器内核、存储单元等等。适宜地,考虑第一计算单元的特殊硬件配置,以便能够创建尽可能准确且精确的随时间的运行计划。
本发明有利地适合于模拟多个不同的技术应用领域的(第一)计算单元。特别有利地,所要模拟的第一计算单元是控制设备或者控制设备复合体,优选地在(机动)车辆中的控制设备或者控制设备复合体。特别适宜地,可以借助于本方法对控制设备中的过程在时间上准确地进行仿真。例如,控制设备可以通过一个模拟模块或通过多个模拟模块来被仿真,例如通过至少一个FMU模块(FMU表示“功能模型单元(Functional Mock-up Unit)”)。例如,在对多个控制设备的复合体进行仿真的情况下,每个这样的控制设备都可以分别通过一个模拟模块或者也可以分别通过多个模拟模块来被映射,适宜地分别以FMU模块的形式。各个控制设备可以分别单独地被设计,例如分别被设计得具有单核处理器或多核处理器。此外,各个控制设备可以彼此间分别经由单独的网络来连接,例如分别有线或无线地连接。此外,还可以提供单独的模拟模块,以便映射其它车辆组件,例如通信系统、比如总线系统,或者例如传感器、执行器等等。
所要模拟的第一计算单元尤其可以是真实的、实际存在的(第一)计算单元。例如,第一计算单元可以在该模拟的过程中被检查,例如以便在受控测试框架内检查(第一)计算单元的软件的变化。此外,所要模拟的第一计算单元也可能不存在或者至少还不存在于现实中。然而,在这种情况下,尤其是存在关于具体的硬件和软件组件的至少一个构造计划,最终应该按照该构造计划来构造和运行第一计算单元。例如,通过该模拟,可以检查如资源分配或调度算法等设计决策对整个系统的随时间的行为有哪些影响。
按照本发明的计算单元被设立为、尤其是以程序技术方式被设立为执行按照本发明的方法。该计算单元尤其是所提及的第二计算单元。
尤其是当执行的控制设备还被用于其它任务并且因而总归存在时,按照本发明的方法的以具有用于执行所有方法步骤的程序代码的计算机程序或计算机程序产品的形式的实现方案也是有利的,因为这引起了特别低的成本。在该具体情况下,优点还在于:所要模拟的计算单元仍不必物理上存在。最后,提供了一种机器可读存储介质,在其上存储有如上所述的计算机程序。尤其是,适合于提供该计算机程序的存储介质或数据载体是磁存储器、光存储器和电存储器,诸如硬盘、闪速存储器、EEPROM、DVD以及其它等等。通过计算机网络(因特网、内联网等等)来下载程序也是可行的。在此,这种下载可以以有线方式或以线缆方式或者以无线方式(例如经由WLAN网络,3G、4G、5G或6G连接,等等)实现。
本发明的其它优点和设计方案从说明书以及随附的附图中得出。
本发明依据实施例在附图中示意性示出并且在下文参考附图予以描述。
附图说明
图1示意性示出了第一计算单元,该第一计算单元可以作为按照本发明的方法的优选实施方式的基础。
图2示意性示出了第二计算单元,该第二计算单元被设立为执行按照本发明的方法的优选实施方式。
图3作为框图示意性示出了按照本发明的方法的一个优选实施方式。
图4示意性示出了按照本发明的方法的另一优选实施方式。
具体实施方式
在图1中,第一计算单元被示意性示出并且用100来表示,该第一计算单元被设计成(机动)车辆中的控制设备复合体。
第一计算单元100具有多个控制设备111、112、113、114,这些控制设备例如可以被提供用于发动机控制、变速器控制、对驾驶辅助功能的控制、信息娱乐系统等等。为了该目的,在这些控制设备111、112、113、114中的每个控制设备中,执行相对应的软件。
这些控制设备111、112、113、114可以经由全局通信系统121彼此保持数据传输连接,例如经由如CAN、以太网/IP、ProfiNet、Sercos2、Sercos III、EtherCAT、FlexRay、LIN、MOST等现场总线。
个别控制设备,这里例如是控制设备111,还可以与如传感器131、132或执行器141、142等外围设备连接。例如,控制设备111可以经由另一、本地通信系统122、例如本地现场总线与这些外围设备连接。易于理解的是:可以是多个控制设备或者也可以是所有控制设备分别与相对应的外围设备连接。还易于理解的是:硬件单元100还可具有其它控制设备和其它组件。
在模拟的范围内,第一计算单元100应该在第二计算单元中以数字方式被仿真,例如以便在受控测试框架内检查各个控制设备的软件的变化。例如,在该模拟中应该对由所有控制设备111、112、113、114构成的整个复合体进行仿真。备选地,也可以仅对这些控制设备中的个别控制设备或者一个控制设备进行仿真。
在此,在正常运行时在相应的所要模拟的控制设备111、112、113、114上执行的软件应该在该模拟中在时间上准确和一致地被执行,尤其是使得软件任务或软件进程在该模拟中可以以与在这些控制设备111、112、113、114正常运行时相同或至少基本上相同的等待时间来被处理。
为了该目的,在按照本发明的方法的一个优选实施方式的范围内,借助于模块化构造的模拟软件对第一计算单元100进行模拟,如随后应解释的那样。
在图2中,示意性示出了第二计算单元200,该第二计算单元例如可以被设计成PC,而且该第二计算单元被设立为、尤其是以程序技术方式被设立为:执行按照本发明的方法的优选实施方式。为了该目的,在第二计算单元200中执行相对应的模块化构造的模拟软件205。
提供第一功能或模块块210,用于对在所要仿真的第一计算单元100中执行的软件进行时间分析。为了该目的,提供计时模块211作为模拟软件205的第一软件模块,该计时模块确定随时间的运行计划,按照该运行计划,在所要模拟的第一计算单元100中或在相应的控制设备111、112、113、114中分别处理进程或任务。该随时间的运行计划尤其用作在该模拟的过程中执行软件的时间参考。
例如提供第二功能或模块块220,以便将该随时间的运行计划转用于该模拟,尤其是以便将该随时间的运行计划的特殊事件转换成用于该模拟的相对应的动作事件。为了该目的,提供动作模块221作为模拟软件205的第二软件模块,该动作模块确定动作事件,在对第一计算单元100的模拟的过程中,应该按照这些动作事件分别在指定的动作时间点执行指定的动作。
提供第三功能或模块块230,用于对第一计算单元100的实际模拟并且用于对所要仿真的控制设备111、112、113、114的软件的执行。为了该目的,提供多个模拟模块231、232、233、234,这些模拟模块分别执行第一计算单元100的软件。例如,这些模拟模块231、232、233、234中的每个模拟模块可以被提供用于对这些控制设备111、112、113、114中的分别一个控制设备进行仿真,其中这些模拟模块231、232、233、234中的每个模拟模块都执行相应的所要模拟的控制设备111、112、113、114的软件。在此过程中,这些模拟模块231、233、233、234分别按照所确定的动作事件在指定的动作时间点执行相应的指定的动作。
提供第四功能或模块块240,用于确定或外推将来的或下一个动作及其动作时间点,以便接着提供该动作时间点用于该随时间的运行计划。为了该目的,提供外推模块241,作为模拟软件205的第四软件模块,该外推模块确定将来的、尤其是分别接下来或随后的动作的动作时间点。
计时模块211和动作模块221,以及动作模块221和模拟模块231、232、233、234,分别经由接口来彼此连接。这样,为了该目的,第一模块块210和第二模块块220分别包括相对应的接口215或225,经由所述接口,计时模块211与动作模块221保持数据传输连接。第二模块块220还包括第二接口226。此外,针对这些模拟模块231、232、233、234中的每个模拟模块分别提供接口235、236、237、238。经由该第二接口226并且经由第三模块块230的这些接口235、236、237、238,动作模块221与各个模拟模块231、232、233、234保持数据传输连接。
同样,计时模块211和外推模块241,以及外推模块241和模拟模块231、232、233、234,分别经由接口来彼此连接。这样,为了该目的,第一模块块210和第四模块块240分别包括相对应的接口215或245,经由所述接口,计时模块211与外推模块241保持数据传输连接。第四模块块240还包括第二接口246。此外,针对这些模拟模块231、232、233、234中的每个模拟模块分别提供接口235、236、237、238。经由该第二接口246并且经由第三模块块230的这些接口235、236、237、238,外推模块241与各个模拟模块231、232、233、234保持数据传输连接。
虽然在该示例中,第一和第三模块块的接口不仅被用于与第二模块块的连接而且被用于与第四模块块的连接,但是第一和/或第三模块块可以分别具有其它接口,这些其它接口可以单独被用于与第二或第四模块块的连接。
按照本发明的一个特别优选的实施方式,按照“功能模型接口(Functional Mock-up Interfaces)”(FMI)来模拟第一计算单元100,该“功能模型接口”定义标准化接口,以便使不同模拟软件或者多个不同的软件模型或软件模块彼此耦合并且组合成整体模型或整体模拟。
适宜地,提供各个接口215、225、226、235、236、237、238、245、246分别作为相对应的FMI接口。此外,各个软件模块211、221、231、232、233、234、241分别按照“功能模型单元”(FMU)来被设计,尤其是分别被设计为软件容器,这些软件容器例如包括用于定义变量的XML文件,以及被定义为C函数的公式,而且还包括如参数表格、用户界面、文档等其它数据,这些数据在相应的软件模块中被需要用于对第一计算单元100的模拟。
图3作为框图示出了按照本发明的方法的一个优选实施方式,并且随后还参考图1和图2被阐述。
在步骤310中,运行模块(Ablaufmodul)211确定随时间的运行计划,这尤其是取决于所要模拟的第一计算单元100的特殊硬件组件,尤其是取决于安装在各个控制设备111、112、113、114中的如处理器、存储器等组件。
该随时间的运行计划尤其描述了各个软件进程的顺序和处理或等待时间。该运行计划尤其描述了各个进程何时开始并且完全被处理以及何时存在各个进程的结果或输出,这些结果或输出又作为输入被转交给其它进程。
在方框320中,动作模块221确定动作事件,更确切地说根据随时间的运行计划来确定这些动作事件,在对硬件单元100的模拟的范围内,应该按照这些动作事件分别在指定的动作时间点执行指定的动作。
在步骤330中,各个模拟模块231、232、233、234执行相应的软件。如果例如模拟模块231应该在指定的动作时间点执行相应的指定的动作,则动作模块221经由接口226和235向该模拟模块231传送相对应的指令,尤其是借助于按照“功能模型接口”的通信点。
在执行该步骤330时,获得动作结果,例如具有关于转速或曲轴角度的值的数据。接着,在步骤340中,基于这种动作结果,确定将来的、尤其是下一个动作的动作时间点。接着,该动作时间点可以重新被供应给步骤310;接着,在那里重新确定或调整随时间的运行计划。即,这尤其可以是一种循环。
图4示意性示出了按照本发明的另一优选实施方式,更确切地说依据时间图表,在该时间图表中随着时间t绘制动作结果W、例如诸如转速等物理量的值。动作例如应该总是在动作时间点t1、t2、t3等等被执行。动作时间点例如应通过特定值、例如动作结果或物理量的最大值Wmax来被确定。
如果当前的动作时间点例如为t2,则现在可以基于在先前的动作时间点t1与当前的动作时间点t2之间的时间间隔T1来确定或估计下一个动作时间点t3。在此,例如时间间隔T1可以作为基础,但是同样例如一定的外推逻辑也可以作为基础,据此例如已知转速(如果这是物理量或动作结果的话)会变得更慢。
这样,在当前的动作时间点t2与下一个当前的动作时间点t3之间的时间间隔T2例如将比时间间隔T1长差值dT。接着,基于该差值dT,可以(针对将来的动作时间点,接下来的增量)调整随时间的运行计划。
Claims (11)
1.一种用于在第二计算单元(200)中模拟第一计算单元(100)的方法,其中在所要模拟的第一计算单元(100)中执行的软件在所述第二计算单元(200)中被执行,所述方法包括:
通过在所述第二计算单元(200)中的计时模块(211)来确定(310)随时间的运行计划,按照所述运行计划,在所要模拟的第一计算单元(100)中处理所述软件的进程;
通过在所述第二计算单元(200)中的至少一个模拟模块(231、232、233、234)来执行(330)所述软件以用于对所述第一计算单元(100)的模拟,其中所述至少一个模拟模块(231、232、233、234)基于所述随时间的运行计划分别在指定的动作时间点(t1、t2、t3)执行指定的动作,以便获得动作结果(Wmax);
基于所述动作结果,确定(240)将来的、尤其是下一个动作的动作时间点;并且
使用所确定的动作时间点用于所述随时间的运行计划,尤其是用来在所述运行计划中生成下一个增量。
2.根据权利要求1所述的方法,其中将来的动作的动作时间点还基于外推逻辑来被确定,尤其是通过在所述第二计算单元(200)的外推模块(241)。
3.根据权利要求1或2所述的方法,所述方法还包括:
确定在当前的动作时间点(t2)与将来的动作的动作时间点(t3)之间的时间间隔(T2)和在上一个动作时间点(t1)与当前的动作时间点(t2)之间的时间间隔(T1)的差值(dT);并且
使用所述差值(dT)用于所述随时间的运行计划,尤其是用来生成下一个增量。
4.根据上述权利要求中任一项所述的方法,其中所述动作结果包括所要模拟的第一计算单元的输出数据,尤其是内燃机的转速和/或曲轴角度。
5.根据上述权利要求中任一项所述的方法,其中所述计时模块(211)根据所要模拟的第一计算单元(100)的硬件组件来确定所述随时间的运行计划。
6.根据上述权利要求中任一项所述的方法,其中所述指定的动作包括读入数据和/或写数据和/或开始对进程的处理。
7.根据上述权利要求中任一项所述的方法,所述方法还包括:
通过在所述第二计算单元(200)中的动作模块(221)根据所述随时间的运行计划来确定(320)动作事件,在对所述第一计算单元(100)的模拟的范围内,应该按照所述动作事件分别在指定的动作时间点执行指定的动作,
其中所述至少一个模拟模块(231、232、233、234)按照所确定的动作事件在指定的动作时间点执行相应的指定的动作。
8.根据上述权利要求中任一项所述的方法,其中所要模拟的第一计算单元(100)是控制设备(111、112、113、114)或控制设备(111、112、113、114)的复合体,尤其是车辆的控制设备或控制设备的复合体。
9.一种计算单元,所述计算单元被设立为执行根据上述权利要求中任一项所述的方法的所有方法步骤。
10.一种计算机程序,当所述计算机程序在计算单元(200)上被执行时,所述计算机程序促使所述计算单元(200)执行根据权利要求1至8中任一项所述的方法的所有方法步骤。
11.一种机器可读存储介质,其具有被存储在其上的根据权利要求10所述的计算机程序。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022205520.9 | 2022-05-31 | ||
DE102022205520.9A DE102022205520A1 (de) | 2022-05-31 | 2022-05-31 | Verfahren zur Simulation einer ersten Recheneinheit in einer zweiten Recheneinheit |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117149345A true CN117149345A (zh) | 2023-12-01 |
Family
ID=88697081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310629528.4A Pending CN117149345A (zh) | 2022-05-31 | 2023-05-30 | 用于在第二计算单元中模拟第一计算单元的方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230385482A1 (zh) |
CN (1) | CN117149345A (zh) |
DE (1) | DE102022205520A1 (zh) |
-
2022
- 2022-05-31 DE DE102022205520.9A patent/DE102022205520A1/de active Pending
-
2023
- 2023-05-17 US US18/319,117 patent/US20230385482A1/en active Pending
- 2023-05-30 CN CN202310629528.4A patent/CN117149345A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230385482A1 (en) | 2023-11-30 |
DE102022205520A1 (de) | 2023-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103098032B (zh) | 仿真方法和系统 | |
CN106095654B (zh) | 性能验证装置、性能验证系统以及性能验证方法 | |
EP1530137A1 (en) | Simulation system and computer-implemented method for simulation and verifying a control system | |
US20210081585A1 (en) | Method for event-based simulation of a system | |
CN102124448B (zh) | 控制嵌入式系统开发期间的实时性 | |
Cremona et al. | TRES: a modular representation of schedulers, tasks, and messages to control simulations in simulink | |
US8670967B2 (en) | Simulation method, system and article of manufacture | |
WO2021008163A1 (zh) | 基于TrueTime的航空发动机分布式控制系统仿真模型建模方法 | |
US11022967B2 (en) | Method for generating a technical system model, executable on a test unit, and the test unit | |
US20170045865A1 (en) | Method for connecting an input/output interface of a tester equipped for control unit development | |
US20190102149A1 (en) | Method for providing an integrated process for control unit development and a simulation device for control unit development | |
WO2013099438A1 (ja) | 協調シミュレーション用計算機システム、組込みシステムの検証方法及びプログラム | |
CN114881233A (zh) | 一种基于容器的分布式模型推理服务方法 | |
CN111191336B (zh) | 航空发动机控制原型闭环仿真方法和系统、存储介质 | |
CN117149345A (zh) | 用于在第二计算单元中模拟第一计算单元的方法 | |
JP4476228B2 (ja) | シミュレーション装置 | |
Mohamed et al. | Optimising multiprocessor image-based control through pipelining and parallelism | |
JP2007233930A (ja) | 分散制御システム用シミュレータ | |
Nossal et al. | Model-based system development | |
CN114816653A (zh) | 电子控制单元定时仿真 | |
US20210089280A1 (en) | Method for generating source code with service-based communication | |
CN110414021A (zh) | 工业物联网的边缘设备事件规则产生系统、装置和方法 | |
JP2007536659A (ja) | 自動化システムのシミュレーションのための方法及び装置 | |
Morelli et al. | A system-level framework for the evaluation of the performance cost of scheduling and communication delays in control systems | |
EP1489531A1 (en) | Simulation system and computer-implemented method for simulation and verifying a control system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |