CN113474779A - 仿真方法和记录介质 - Google Patents

仿真方法和记录介质 Download PDF

Info

Publication number
CN113474779A
CN113474779A CN202080016366.1A CN202080016366A CN113474779A CN 113474779 A CN113474779 A CN 113474779A CN 202080016366 A CN202080016366 A CN 202080016366A CN 113474779 A CN113474779 A CN 113474779A
Authority
CN
China
Prior art keywords
simulation
processor
code
execution result
model
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
CN202080016366.1A
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.)
Hitachi Solutions Ltd
Original Assignee
Hitachi Solutions Ltd
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 Hitachi Solutions Ltd filed Critical Hitachi Solutions Ltd
Publication of CN113474779A publication Critical patent/CN113474779A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/15Vehicle, aircraft or watercraft design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/24Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/45Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
    • G06F8/457Communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2117/00Details relating to the type or aim of the circuit design
    • G06F2117/08HW-SW co-design, e.g. HW-SW partitioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种仿真方法和记录介质,其中处理器执行:设定第一进程的第一设定处理,其中第一进程执行多个代码中的除特定代码以外的代码组的动作的仿真;设定第二进程的第二设定处理,其中第二进程执行将特定代码模型化而得到的模型的动作的仿真的第二进程;第一仿真处理,在第一进程中执行到特定代码为止的代码的第一仿真;第二仿真处理,通过第一进程与第二进程的进程间通信,使用第一仿真的执行结果,来在第二进程中执行特定的模型的第二仿真;和第三仿真处理,通过进程间通信,使用第二仿真的执行结果,来在第一进程中执行特定代码之后的代码的第三仿真。

Description

仿真方法和记录介质
本申请主张令和1年(2019年)9月12日提交的日本申请特愿2019-165886的优先权,通过参考其内容而并入本申请。
技术领域
本发明涉及仿真方法和记录介质。
背景技术
基于模型的开发是采用了仿真技术的系统开发方法。基于模型的开发中,在各工序中准备仿真环境,在各工序中实施仿真而在设计阶段提高品质和开发速度。将基于模型的开发应用于软件开发的情况下,仿真环境的各工序分为设计调研~设计、实现、检查这3个工序。设计调研~设计中,使用MILS(Model In the Loop Simulation:模型在环仿真)环境,进行需求分析和需求定义、基本设计和功能设计。MILS是使按模型描述的设计书保持模型的状态运行的仿真环境。
设计调研~设计结束后,基于设计调研~设计中生成的模型,进行实现。在实现中,使用SILS(Software In the Loop Simulation:软件在环仿真)环境,进行详细设计和单体测试。SILS是用根据模型自动生成的C语言等的源代码生成目标代码并使其运行的仿真环境。
实现结束后,在不使用实际设备的虚拟环境上进行检查。在检查中,使用HILS(Hardware In the Loop Simulation:硬件在环仿真)环境,进行结合测试和系统测试。HILS是使实现作为开发对象的软件的硬件与专用硬件中实现的受控体模型(如果是车载则是车辆模型)连接并使其运行的仿真环境,能够进行电子验证。
另外,专利文献1中,公开了使用抽象度不同的描述混合存在的源程序和抽象度不同的输入数据进行仿真的性能评价用仿真系统。该性能评价用仿真系统由具有将抽象度不同的描述混合存在的源程序分离为多个模型运行单元各自的描述并生成目标代码的编译器单元、和多个解释并执行输入事件和目标代码的模型运行单元、它们相互协调地运行的仿真模型构成。
现有技术文献
专利文献
专利文献:日本特开2004-21907号公报
发明内容
发明要解决的课题
车辆制造商和供应商都正在转移至基于模型的开发,但现存软件大多仅由代码构成,难以一次使全部模型化。另外,当前的仿真环境是在单一进程中运行为前提的,存在代码与模型混合存在的情况下不能容易地进行仿真的问题。
为了在现有的SILS环境内(单一进程中)使代码处理的一部分作为模型执行,可以考虑在其前后将代码分割、分别作为模型的一部分嵌入、并且在其间加入作为对象的模型的方法等。但是,如果能够单纯地将代码的处理分割则没有问题,但大规模且复杂的代码的情况下难以进行代码的分割。这样复杂的代码的情况下,放弃代码与模型混合的仿真,对模型进行自动编码(C编码等)之后在SILS环境中进行动作确认,软件开发效率降低。
本发明目的在于实现软件开发效率的提高。
用于解决课题的技术方案
本申请中公开的发明的一个方面的仿真方法,是一种由处理器执行构成程序的多个代码的仿真的仿真方法,其中所述程序能够对控制对象进行控制,所述仿真方法的特征在于:所述处理器执行:设定第一进程的第一设定处理,其中所述第一进程执行所述多个代码中的除特定代码以外的代码组的动作的仿真;设定第二进程的第二设定处理,其中所述第二进程执行将所述特定代码模型化而得到的模型的动作的仿真;第一仿真处理,在所述第一进程中执行所述代码组中的到所述特定代码为止的代码的第一仿真;第二仿真处理,通过所述第一进程与所述第二进程的进程间通信,使用所述第一仿真的执行结果,来在所述第二进程中执行所述特定的模型的第二仿真;和第三仿真处理,通过所述第一进程与所述第二进程的进程间通信,使用所述第二仿真的执行结果,来在所述第一进程中执行所述特定代码之后的代码的第三仿真。
发明效果
根据本发明的代表性的实施方式,能够实现软件开发效率的提高。上述以外的课题、结构和效果将通过以下实施例的说明而说明。
附图说明
图1是表示仿真装置的硬件结构例的框图。
图2是表示SILS环境进程的一例的说明图。
图3是表示联动仿真环境例的说明图。
图4是表示图3所示的联动仿真环境中的联动仿真执行例1的流程图。
图5是表示图3所示的联动仿真环境中的联动仿真执行例2的流程图。
具体实施方式
<仿真装置的硬件结构>
图1是表示仿真装置的硬件结构例的框图。仿真装置具有处理器101、存储器102、输入设备103、输出设备104和通信接口(通信IF)105。处理器101、存储器102、输入设备103、输出设备104和通信IF105通过总线106连接。处理器101控制仿真装置。存储器102是处理器101的工作区域。另外,存储器102是存储各种程序和数据的非暂时性或暂时性的记录介质。作为存储器102,例如有ROM(Read Only Memory:只读存储器)、RAM(Random AccessMemory:随机存取存储器)、HDD(Hard Disk Drive:硬盘驱动器)、闪存。输入设备103输入数据。作为输入设备103,例如有键盘、鼠标、触摸面板、数字键盘、扫描仪。输出设备104输出数据。作为输出设备104,例如有显示器、打印机。通信IF105与网络连接来收发数据。
<SILS环境进程例>
图2是表示SILS环境进程的一例的说明图。SILS环境进程200是在SILS环境中执行仿真的进程。SILS环境进程200被存储在存储器102中,通过被处理器101起动而在存储器102中构建。
SILS环境进程200具有仿真用BSW(Basic Software:基础软件)201、车辆模型202和GUI(Graphical User Interface:图形用户界面)203。
仿真用BSW201是对作为仿真对象的ECU(Electronic Control Unit:电子控制单元)应用程序220进行仿真用的虚拟的硬件结构。也称为平台软件。
仿真用BSW201具有处理器模型211、存储器模型212、IF模型213和总线模型214。处理器模型211执行ECU应用程序220,控制车辆模型202。存储器模型212是处理器模型211的工作区域。另外,存储器模型212存储ECU应用程序220。IF模型213与车辆模型202连接,在处理器模型211与车辆模型202之间收发数据。总线模型214使处理器模型211、存储器模型212和IF模型213可通信地连接。
车辆模型202是将加速和刹车、发动机、点火开关、空调、灯、雨刷等能够电子地控制动作的车辆内的结构模型化得到的数据。车辆是乘用车、公交车、卡车等机动车、摩托车、电动自行车、电动轮椅、工程机械等能够在地面上行驶的移动体。另外,车辆模型202是控制对象的一例,也可以是冰箱和电饭锅、微波炉等家用电器这样的、车辆以外的其他模型。
GUI203将来自车辆模型202的输出结果显示在输出设备104上。接着,对于存储器模型212中存储的ECU应用程序220进行说明。
ECU应用程序220是作为仿真对象的应用程序的一例。例如,是基于来自摄像机的动态图像数据进行物体识别的应用程序。作为仿真对象的应用程序是与作为控制对象的模型相应地决定的。
ECU应用程序220具有第一组件代码C1~第n组件代码Cn(n是2以上的整数)。将第一组件代码C1~第n组件代码Cn中的任意的组件代码称为第i组件代码(i是满足1≤i≤n的整数)。第一组件代码C1~第n组件代码Cn是按i从小到大的顺序执行的。
<联动仿真环境例>
图3是表示联动仿真环境例的说明图。联动仿真环境300是SILS环境进程200与MILS环境进程301联动的仿真环境。MILS环境进程301是在MILS环境中执行仿真的进程。MILS环境进程301被存储在存储器102中,通过被处理器101起动而在存储器102中构建。
图3中,在存储器模型212中构建将ECU应用程序220中的第二组件代码C2模型化得到的第二组件模型M2,代替第二组件代码C2地将其用作仿真对象。从而,SILS环境进程200中,在ECU应用程序220中,第二组件代码C2被排除在仿真对象之外。
此处,例如将第二组件代码C2排除在仿真对象之外,将第二组件模型M2作为仿真对象,但也可以将第二组件代码Ci排除在仿真对象之外,将第二组件模型Mi作为仿真对象。另外,仿真对象之外的组件代码不限于1个,也可以是2个以上。该情况下,与仿真对象之外的2个以上组件代码分别对应的2个以上组件模型成为仿真对象。
另外,联动仿真环境300中,在SILS环境进程200中,在存储器模型212中构建SILS方进程间通信同步模块320,在MILS环境进程301中,在存储器模型212中构建MILS方进程间通信同步模块310。
SILS方进程间通信同步模块320与第一组件代码C1、第三组件代码C3和MILS方进程间通信同步模块310可通信地连接。MILS方进程间通信同步模块310与第二组件模型M2和SILS方进程间通信同步模块320可通信地连接。
处理器模型211得到的第一组件代码C1的执行结果,被经由SILS方进程间通信同步模块320和MILS方进程间通信同步模块310发送至第二组件模型M2,成为第二组件模型M2的输入数据。
处理器模型211得到的第二组件模型M2的执行结果,被经由MILS方进程间通信同步模块310和SILS方进程间通信同步模块320发送至第三组件代码C3,成为第三组件代码C3的输入数据。
另外,对SILS方进程间通信同步模块320和MILS方进程间通信同步模块310应用TCP/IP、UDP的情况下,MILS环境进程301也可以构建在其他仿真装置中。该情况下,MILS环境进程301在其他仿真装置中构建的仿真用BSW201中执行。
<联动仿真执行例>
图4是表示图3所示的联动仿真环境300中的联动仿真执行例1的流程图。图4是对SILS方进程间通信同步模块320和MILS方进程间通信同步模块310进行的进程间通信应用了TCP/IP、UDP的情况下的联动仿真执行例。
SILS环境进程200在SILS方进程间通信同步模块320中生成SILS方套接字(步骤S411),准备与MILS方套接字的连接而待机(步骤S412)。另一方面,MILS环境进程301在MILS方进程间通信同步模块310中生成MILS方套接字(步骤S421),请求与SILS方套接字的连接(步骤S422)。具体而言,例如对SILS环境进程200发送该连接请求。
SILS环境进程200在步骤S412中等待与MILS方套接字连接,通过从MILS环境进程301接收连接请求,而建立SILS方套接字与MILS方套接字的连接。由此,SILS环境进程200和MILS环境进程301被设定为能够执行。
连接建立之后,SILS环境进程200执行步骤S413~S416的循环处理,MILS环境进程301执行步骤S423~S425的循环处理。两个循环处理执行规定次数(例如从对车辆接入电源而开始移动直到行驶规定距离并停止的时间)。
具体而言,例如SILS环境进程200用处理器模型211执行第一组件代码C1的处理(步骤S413)。然后,SILS环境进程200用SILS方进程间通信同步模块320将步骤S413的执行结果的数据经由MILS方进程间通信同步模块310发送至第二组件模型M2(步骤S414)。
MILS环境进程301用MILS方进程间通信同步模块310接收步骤S413的执行结果的数据(步骤S423)。MILS环境进程301将步骤S423中接收到的数据输入至第二组件模型M2,用处理器模型211执行第二组件模型M2的处理(步骤S424)。然后,MILS环境进程301用MILS方进程间通信同步模块310将步骤S424的执行结果的数据经由SILS方进程间通信同步模块320发送至第三组件代码C3(步骤S425)。
SILS环境进程200用SILS方进程间通信同步模块320接收步骤S425的执行结果的数据(步骤S415)。SILS环境进程200将步骤S415中接收到的数据输入至第三组件代码C3,用处理器模型211执行第三组件代码C3的处理。之后,SILS环境进程200用处理器模型211顺次执行第四组件代码C4~第n组件代码Cn的处理(步骤S416)。
循环处理结束时,SILS环境进程200切断与MILS方套接字的连接(步骤S417),结束一系列处理。同样地,循环处理结束时,MILS环境进程301切断与SILS方套接字的连接(步骤S426),结束一系列处理。
另外,图4中,说明了对进程间通信应用了TCP/IP、UDP的例子,但也可以应用管道处理和消息队列。
图5是表示图3所示的联动仿真环境300中的联动仿真执行例2的流程图。图5是对进程间通信应用了共享存储器模型的情况下的联动仿真执行例。共享存储器模型是存储器模型212内的规定的存储区域,能够由SILS环境进程200和MILS环境进程301访问。共享存储器模型的互斥控制用信号量管理。图5的情况下,不构建图3所示的SILS方进程间通信同步模块320和MILS方进程间通信同步模块310。
SILS环境进程200生成与MILS环境进程301同步用的信号量的对象(步骤S511)。另一方面,MILS环境进程301生成与SILS环境进程200同步用的信号量的对象(步骤S421)。
SILS环境进程200执行步骤S512~S517的循环处理,MILS环境进程301执行步骤S522~S526的循环处理。两个循环处理执行规定次数(例如从对车辆接入电源而开始移动直到行驶规定距离并停止的时间)。
具体而言,例如SILS环境进程200用处理器模型211执行第一组件代码C1的处理(步骤S512)。然后,SILS环境进程200将步骤S512的执行结果的数据写入共享存储器模型(步骤S513)。然后,SILS环境进程200释放步骤S511中生成的MILS同步用信号量(步骤S514)。
MILS环境进程301等待SILS环境进程200释放MILS同步用信号量(步骤S522)。MILS同步用信号量被释放时,因为能够访问共享存储器模型,所以MILS环境进程301从共享存储器模型中读取步骤S513中写入共享存储器模型的数据(步骤S523)。
MILS环境进程301将步骤S523中读取的数据输入至第二组件模型M2,用处理器模型211执行第二组件模型M2的处理(步骤S524)。然后,MILS环境进程301将步骤S524的执行结果的数据写入共享存储器模型(步骤S525)。然后,SILS环境进程200释放步骤S521中生成的MILS同步用信号量(步骤S526)。
SILS环境进程200等待MILS环境进程301释放SILS同步用信号量(步骤S515)。SILS同步用信号量被释放时,因为能够访问共享存储器模型,所以SILS环境进程200从共享存储器模型中读取步骤S525中写入共享存储器模型中的数据(步骤S516)。
SILS环境进程200将步骤S516中读取的数据输入至第三组件代码C3,用处理器模型211执行第三组件代码C3的处理。之后,SILS环境进程200用处理器模型211顺次执行第四组件代码C4~第n组件代码Cn的处理(步骤S517)。
循环处理结束时,SILS环境进程200结束一系列处理。同样地,循环处理结束时,MILS环境进程301结束一系列处理。
这样,根据本实施例,能够实现代码与模型混合的软件的仿真的容易化,能够容易地构建代码与模型混合的环境。由此,能够实现代码与模型混合的软件的开发的高效率化。
另外,通过构建代码与模型混合的环境,能够使代码的模型化适用范围灵活地扩大,用仿真进行动作验证,所以能够实现在进行等价验证的同时对代码全体进行模型变换这样的方法。
另外,通过使代码和模型的仿真中执行的进程分离,并对于跨各进程的双向数据交换用进程间通信使各进程同步,能够实现仿真时间的统一。
另外,本发明不限定于上述实施例,包括附带的要求的权利范围的主旨内的各种变形例和同等的结构。例如,上述实施例是为了易于理解地说明本发明而详细说明的,本发明并不限定于必须具备说明的全部结构。另外,也可以将某个实施例的结构的一部分置换为其他实施例的结构。另外,也可以在某个实施例的结构上添加其他实施例的结构。另外,对于各实施例的结构的一部分,也可以追加、删除、或置换其他结构。
另外,对于上述各结构、功能、处理部、处理单元等,例如可以通过在集成电路中设计等而用硬件实现其一部分或全部,也可以通过处理器解释并执行实现各功能的程序而用软件实现。
实现各功能的程序、表、文件等信息,能够保存在存储器、硬盘、SSD(Solid StateDrive:固态硬盘)等存储装置、或者IC(Integrated Circuit:集成电路)卡、SD卡、DVD(Digital Versatile Disc:数字多功能盘)等记录介质中。
另外,控制线和信息线示出了认为说明上必要的,并不一定示出了实现上必要的全部控制线和信息线。实际上也可以认为几乎全部结构都相互连接。

Claims (10)

1.一种由处理器执行构成程序的多个代码的仿真的仿真方法,其中所述程序能够对控制对象进行控制,所述仿真方法的特征在于:
所述处理器执行:
设定第一进程的第一设定处理,其中所述第一进程执行所述多个代码中的除特定代码以外的代码组的动作的仿真;
设定第二进程的第二设定处理,其中所述第二进程执行将所述特定代码模型化而得到的模型的动作的仿真;
第一仿真处理,在所述第一进程中执行所述代码组中的到所述特定代码为止的代码的第一仿真;
第二仿真处理,通过所述第一进程与所述第二进程的进程间通信,使用所述第一仿真的执行结果,来在所述第二进程中执行所述特定的模型的第二仿真;和
第三仿真处理,通过所述第一进程与所述第二进程的进程间通信,使用所述第二仿真的执行结果,来在所述第一进程中执行所述特定代码之后的代码的第三仿真。
2.如权利要求1所述的仿真方法,其特征在于:
在所述第一设定处理中,所述处理器在所述第一进程中设定能够与所述第二进程通信的第一通信模块,
在所述第二设定处理中,所述处理器在所述第二进程中设定能够与所述第一进程通信的第二通信模块,
在所述第一仿真处理中,所述处理器使用所述第一通信模块将所述第一仿真的执行结果经由所述第二通信模块发送至所述特定模型,
在所述第二仿真处理中,所述处理器使用所述第二通信模块接收所述第一仿真的执行结果,来在所述第二进程中执行所述特定模型的仿真,并使用所述第二通信模块将所述第二仿真的执行结果经由所述第二通信模块发送至所述特定代码之后的代码,
在所述第三仿真处理中,所述处理器使用所述第一通信模块接收所述第二仿真的执行结果,来在所述第一进程中执行所述特定代码之后的代码的仿真。
3.如权利要求2所述的仿真方法,其特征在于:
第一计算机的处理器执行所述第一设定处理、所述第一仿真处理和所述第三仿真处理,
与所述第一计算机不同的第二计算机的处理器执行所述第二设定处理和所述第二仿真处理。
4.如权利要求1所述的仿真方法,其特征在于:
在所述第一设定处理中,所述处理器在所述第一进程中设定用于管理所述第二进程的互斥控制的第一信号量,并设定为所述第一进程能够对所述第二进程能够访问的共享的存储区域进行访问,
在所述第二设定处理中,所述处理器在所述第二进程中设定用于管理所述第一进程的互斥控制的第二信号量,并设定成所述第二进程能够访问所述共享的存储区域,
在所述第一仿真处理中,所述处理器将所述第一仿真的执行结果存储在所述共享的存储区域中,来对所述第二进程释放所述第一信号量,
在所述第二仿真处理中,所述处理器在所述第一信号量已被释放的情况下,获取存储在所述共享的存储区域中的所述第一仿真的执行结果,来在所述第二进程中执行所述特定模型的仿真,并将所述第二仿真的执行结果存储在所述共享的存储区域中,来对所述第一进程释放所述第二信号量,
在所述第三仿真处理中,所述处理器在所述第二信号量已被释放的情况下,获取存储在所述共享的存储区域中的所述第二仿真的执行结果,来在所述第一进程中执行所述特定代码之后的代码的仿真。
5.如权利要求1所述的仿真方法,其特征在于:
所述控制对象是车辆模型。
6.一种记录有仿真程序的能够被计算机读取的记录介质,其中所述仿真程序使处理器执行构成能够对控制对象进行控制的程序的多个代码的仿真,其特征在于:
所述仿真程序使所述处理器执行:
设定第一进程的第一设定处理,其中所述第一进程执行所述多个代码中的除特定代码以外的代码组的动作的仿真;
设定第二进程的第二设定处理,其中所述第二进程执行将所述特定代码模型化而得到的模型的动作的仿真;
第一仿真处理,在所述第一进程中执行所述代码组中的到所述特定代码为止的代码的第一仿真;
第二仿真处理,通过所述第一进程与所述第二进程的进程间通信,使用所述第一仿真的执行结果,来在所述第二进程中执行所述特定的模型的第二仿真;和
第三仿真处理,通过所述第一进程与所述第二进程的进程间通信,使用所述第二仿真的执行结果,来在所述第一进程中执行所述特定代码之后的代码的第三仿真。
7.如权利要求6所述的记录有仿真程序的能够被计算机读取的记录介质,其特征在于:
在所述第一设定处理中,使所述处理器在所述第一进程中设定能够与所述第二进程通信的第一通信模块,
在所述第二设定处理中,使所述处理器在所述第二进程中设定能够与所述第一进程通信的第二通信模块,
在所述第一仿真处理中,使所述处理器使用所述第一通信模块将所述第一仿真的执行结果经由所述第二通信模块发送至所述特定模型,
在所述第二仿真处理中,使所述处理器使用所述第二通信模块接收所述第一仿真的执行结果,来在所述第二进程中执行所述特定模型的仿真,并使用所述第二通信模块将所述第二仿真的执行结果经由所述第二通信模块发送至所述特定代码之后的代码,
在所述第三仿真处理中,使所述处理器使用所述第一通信模块接收所述第二仿真的执行结果,来在所述第一进程中执行所述特定代码之后的代码的仿真。
8.如权利要求7所述的记录有仿真程序的能够被计算机读取的记录介质,其特征在于:
使第一计算机的处理器执行所述第一设定处理、所述第一仿真处理和所述第三仿真处理,
使与所述第一计算机不同的第二计算机的处理器执行所述第二设定处理和所述第二仿真处理。
9.如权利要求6所述的记录有仿真程序的能够被计算机读取的记录介质,其特征在于:
在所述第一设定处理中,使所述处理器在所述第一进程中设定用于管理所述第二进程的互斥控制的第一信号量,并设定为所述第一进程能够对所述第二进程能够访问的共享的存储区域进行访问,
在所述第二设定处理中,使所述处理器在所述第二进程中设定用于管理所述第一进程的互斥控制的第二信号量,并设定为所述第二进程能够访问所述共享的存储区域,
在所述第一仿真处理中,使所述处理器将所述第一仿真的执行结果存储在所述共享的存储区域中,来对所述第二进程释放所述第一信号量,
在所述第二仿真处理中,使所述处理器在所述第一信号量已被释放的情况下,获取存储在所述共享的存储区域中的所述第一仿真的执行结果,来在所述第二进程中执行所述特定模型的仿真,并将所述第二仿真的执行结果存储在所述共享的存储区域中,来对所述第一进程释放所述第二信号量,
在所述第三仿真处理中,使所述处理器在所述第二信号量已被释放的情况下,获取存储在所述共享的存储区域中的所述第二仿真的执行结果,来在所述第一进程中执行所述特定代码之后的代码的仿真。
10.如权利要求6所述的记录有仿真程序的能够被计算机读取的记录介质,其特征在于:
所述控制对象是车辆模型。
CN202080016366.1A 2019-09-12 2020-06-24 仿真方法和记录介质 Pending CN113474779A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2019-165886 2019-09-12
JP2019165886A JP7225064B2 (ja) 2019-09-12 2019-09-12 シミュレーション方法およびシミュレーションプログラム
PCT/JP2020/024897 WO2021049130A1 (ja) 2019-09-12 2020-06-24 シミュレーション方法および記録媒体

Publications (1)

Publication Number Publication Date
CN113474779A true CN113474779A (zh) 2021-10-01

Family

ID=74861670

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080016366.1A Pending CN113474779A (zh) 2019-09-12 2020-06-24 仿真方法和记录介质

Country Status (5)

Country Link
US (1) US11989535B2 (zh)
EP (1) EP4030298A4 (zh)
JP (1) JP7225064B2 (zh)
CN (1) CN113474779A (zh)
WO (1) WO2021049130A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117408060A (zh) * 2023-10-13 2024-01-16 上海同星智能科技有限公司 整车模型仿真性能优化方法、存储介质和电子设备
CN117408061A (zh) * 2023-10-13 2024-01-16 上海同星智能科技有限公司 整车模型仿真性能优化系统及计算机装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220035611A (ko) * 2020-09-14 2022-03-22 현대자동차주식회사 모의 시험 장치 및 그 제어 방법
WO2023194938A1 (en) * 2022-04-06 2023-10-12 New York University In Abu Dhabi Corporation System, method and computer-accessible medium for a zero-copy data-coherent shared-memory inter-process communication system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050060133A1 (en) * 2003-09-11 2005-03-17 International Business Machines Corporation Method, apparatus, and computer program product for implementing dynamic cosimulation
JP2008305019A (ja) * 2007-06-05 2008-12-18 Mitsubishi Electric Corp シミュレーション装置及びシミュレーション方法及びプログラム
US20170206290A1 (en) * 2014-07-11 2017-07-20 Hitachi, Ltd. Simulation system and simulation method
EP3291112A1 (en) * 2016-09-01 2018-03-07 Omron Corporation Master and slave architecture for co-simulation of control systems

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1173814A2 (en) * 1999-04-16 2002-01-23 Entelos, Inc. Method and apparatus for conducting linked simulation operations utilizing a computer-based system model
CA2412816C (en) * 2000-06-19 2012-01-17 P.C. Krause And Associates, Inc. Distributed simulation
JP2004021907A (ja) 2002-06-20 2004-01-22 Matsushita Electric Ind Co Ltd 性能評価用シミュレーションシステム
JP2006024006A (ja) * 2004-07-08 2006-01-26 Denso Corp テストケース生成装置、テストケース生成プログラム、モデルベース開発プログラム、ソースコード生成妥当性診断装置、ソースコード生成妥当性診断プログラム、およびモデルベース開発方法。
US7849362B2 (en) * 2005-12-09 2010-12-07 International Business Machines Corporation Method and system of coherent design verification of inter-cluster interactions
US8463589B2 (en) * 2006-07-28 2013-06-11 Synopsys, Inc. Modifying a virtual processor model for hardware/software simulation
US9152393B1 (en) * 2011-12-06 2015-10-06 The Mathworks, Inc. Dynamic entities for a model of a graphical modeling environment
JP6378128B2 (ja) 2015-04-28 2018-08-22 ルネサスエレクトロニクス株式会社 性能検証装置、システム、方法、およびコンピュータに当該方法を実行させるためのプログラム
US10200399B2 (en) * 2017-05-17 2019-02-05 Threatmodeler Software Inc. Threat model chaining and attack simulation systems and methods
US10310822B1 (en) * 2017-11-30 2019-06-04 Dspace Digital Signal Processing And Control Engineering Gmbh Method and system for simulating a control program
JP7006426B2 (ja) 2018-03-22 2022-01-24 王子ホールディングス株式会社 吸収性物品
CN110069414B (zh) 2019-04-25 2023-05-30 浙江吉利控股集团有限公司 回归测试方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050060133A1 (en) * 2003-09-11 2005-03-17 International Business Machines Corporation Method, apparatus, and computer program product for implementing dynamic cosimulation
JP2008305019A (ja) * 2007-06-05 2008-12-18 Mitsubishi Electric Corp シミュレーション装置及びシミュレーション方法及びプログラム
US20170206290A1 (en) * 2014-07-11 2017-07-20 Hitachi, Ltd. Simulation system and simulation method
EP3291112A1 (en) * 2016-09-01 2018-03-07 Omron Corporation Master and slave architecture for co-simulation of control systems

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117408060A (zh) * 2023-10-13 2024-01-16 上海同星智能科技有限公司 整车模型仿真性能优化方法、存储介质和电子设备
CN117408061A (zh) * 2023-10-13 2024-01-16 上海同星智能科技有限公司 整车模型仿真性能优化系统及计算机装置
CN117408061B (zh) * 2023-10-13 2024-05-03 上海同星智能科技有限公司 整车模型仿真性能优化系统及计算机装置
CN117408060B (zh) * 2023-10-13 2024-05-14 上海同星智能科技有限公司 整车模型仿真性能优化方法、存储介质和电子设备

Also Published As

Publication number Publication date
JP2021043749A (ja) 2021-03-18
EP4030298A1 (en) 2022-07-20
US11989535B2 (en) 2024-05-21
EP4030298A4 (en) 2023-10-04
WO2021049130A1 (ja) 2021-03-18
US20220164166A1 (en) 2022-05-26
JP7225064B2 (ja) 2023-02-20

Similar Documents

Publication Publication Date Title
CN113474779A (zh) 仿真方法和记录介质
CN106095654B (zh) 性能验证装置、性能验证系统以及性能验证方法
JP2015060600A (ja) 仮想制御装置をリアルタイムテストするためのテスト装置
US20120101791A1 (en) Controlling simulation systems
CN103744684B (zh) 一种异构软硬件协同开发的方法及系统
WO2013099438A1 (ja) 協調シミュレーション用計算機システム、組込みシステムの検証方法及びプログラム
JP7441981B2 (ja) 切り替え可能モデルを有する自律運転シミュレーションアーキテクチャを提供するためのシステムと方法
CN116711279A (zh) 用于多个虚拟ecu的模拟和测试的系统和方法
US8688428B2 (en) Performance evaluation device, performance evaluation method and simulation program
US20210141710A1 (en) Development support device
JP7215244B2 (ja) 記述変換方法、シミュレーション方法及び記述変換プログラム
CN107037803A (zh) 用于仿真残余总线控制仪组合的计算机实现的方法和设备
JP2828590B2 (ja) マイクロプログラム検証方法
Rafique et al. Generating hardware specific code at different abstraction levels using Averest
JP6770935B2 (ja) 車両制御装置用の検証装置
JP7017871B2 (ja) 車両制御模擬装置
CN112799787A (zh) 一种在仿真运行中改进的并行行为执行冲突消解方法及其存储介质
JP2004021907A (ja) 性能評価用シミュレーションシステム
JP6411897B2 (ja) 配線図データの検査方法
KR101567313B1 (ko) 임베디드 시뮬레이션 시스템을 위한 영상처리 장치 및 그 방법
Bauer et al. Usage of Operating System Kernel Paradigms to Build Modern Simulation Platforms for Autonomous Driving
Shakhmatov et al. A functional verification system of IP-blocks in network protocols
Jung et al. Virtual development on mixed abstraction levels: an agricultural vehicle case study
KR20240009766A (ko) 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 네트워크 가상화 장치 및 방법
Mubeen et al. On timing analysis of component-based vehicular distributed embedded systems at various abstraction levels

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