CN102341787B - 模拟方法、系统 - Google Patents

模拟方法、系统 Download PDF

Info

Publication number
CN102341787B
CN102341787B CN201080010432.0A CN201080010432A CN102341787B CN 102341787 B CN102341787 B CN 102341787B CN 201080010432 A CN201080010432 A CN 201080010432A CN 102341787 B CN102341787 B CN 102341787B
Authority
CN
China
Prior art keywords
mentioned
continuous
simulator
peripherals
discrete
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.)
Active
Application number
CN201080010432.0A
Other languages
English (en)
Other versions
CN102341787A (zh
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN102341787A publication Critical patent/CN102341787A/zh
Application granted granted Critical
Publication of CN102341787B publication Critical patent/CN102341787B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric
    • 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
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Computer Hardware Design (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

在模拟系统中,通过降低连续类系统和离散类系统之间的通信成本,提高模拟系统的工作速度。根据本发明,将作为离散类系统的ECU仿真器的外设的至少一部分分离,使其在连续类系统的线程工作。连续类系统和外设取得大致同步,因此疏散地通信。做成这样的结构,在由连续类系统和离散类系统构成的模拟系统中,与连续时钟响应的连续类系统和离散类系统之间的线程之间通信的频率显著减少,通信成本降低。由此,能够提高模拟系统的工作速度。

Description

模拟方法、系统
技术领域
本发明涉及汽车等的物理系统的模拟,更详细而言涉及基于软件的模拟系统。
背景技术
汽车在其初期时代的20世纪初,由包括作为动力的发动机、制动器、加速装置、方向盘、传动装置、悬架在内的机构部件构成,除了发动机的火花塞的点火、头灯以外,几乎不采用电气结构。
但是,自七十年代以来,由于大气污染、石油危机等,需要高效控制发动机,因此发动机的控制上开始使用ECU。ECU通常包括对来自传感器的输入信号进行例如A/D转换的输入接口;按照预定逻辑对数字输入信号进行处理的逻辑运算部(微型计算机);将其处理结果转换为执行器工作信号的输出接口。
现在,不仅发动机、传动装置等的控制系统、Anti-lock Breaking System(ABS)、Electronic Stability Control(ESC)、动力转向装置应用ECU,甚至连刮水器控制、安全监控系统等都应用ECU,最近的汽车中,不仅机构部件,电子部件,软件也占有重要的比例。关于后者的研发费用占据全体费用的25%、40%,混合动力型汽车中占到70%。
电子控制是配置多个ECU而进行的。ECU之间通过车载网络例如Controller Area Network(CAN)而相互连接。作为控制对象的发动机、传动装置等通过线缆直接与各个ECU连接。
ECU是小型计算机,根据来自传感器输入等的中断(强制接入)而进行工作。另一方面,发动机等进行连续的机械工作。即,作为计算机类的数字系统和作为机械类物理系统在汽车这样的单一系统中并行地进行协调工作。当然,支持这些工作的软件愈加复杂,要求实 现不仅用ECU单独验证工作、还同时验证多个工作的构造。
另一方面,受ECU的输出信号驱动的执行器包括电磁螺线管及电动机等。螺线管例如在发动机的喷射器、传动装置的位移控制器、制动器的阀控制、门锁等中使用。
为了进行这样的测试以往所采用的方法有HILS(Hardware In the Loop Simulation,硬件在环仿真)。尤其是测试汽车整体的ECU的环境被称为整车HILS(Whole Vehicle Hardware In the Loop Simulation)。在整车HILS中,在实验室内,真实汽车的ECU与对发动机、传动装置机构等仿真的专用的硬件装置连接,按照预定脚本进行测试。来自ECU的输出被输入到监视用计算机,进而显示在显示器上,测试担当者一边观察显示器,一边确认是否有异常工作。
但是,HILS必须使用专用的硬件装置,并且在硬件装置与真实汽车的ECU之间物理连线,准备工作比较麻烦。要更换其他ECU进行测试,也必须重新物理连接,费时费力。而且,由于是使用真实汽车的ECU进行测试,测试花费时间。因此,若要测试很多脚本,则花费很多时间。而且,HILS的仿真用硬件装置通常价格非常高昂。
因此,近年来,存在不使用高价的仿真用硬件装置,而用软件构成的方法。该方法被称为SILS(Soft ware In the Loop Simulation,软件在环仿真),是将搭载于ECU的微型计算机、输入输出电路、控制的脚本等全部用软件模拟器构成的技术。由此,即使不存在ECU的硬件,也能执行测试。
但是,汽车用模拟系统有连续类(continuous series)模拟器和离散类(discrete series)模拟器。作为连续类模拟器的例子,有模拟发动机的机械系统部分的模拟器。作为离散事件类模拟器的例子,有在发动机旋转的脉冲定时进行工作,控制燃料喷射、点火的定时的ECU的模拟器。
在具有四轮驱动(4WD)的模拟时,作为连续类模拟器的例子,有根据对各轮胎的转矩分配反复计算车的工作的模拟器,作为离散事件类模拟器的例子,有模拟如下的ECU的模拟器:该ECU以每隔10 毫秒的定期脉冲信号进行工作,根据车的偏航速率等传感器输入来决定对各轮胎的转矩分配。
而且,离散类模拟器与连续类模拟器的时间片不同步,除了脉冲信号输入之外,还通过I/O端口进行数据的读写。典型例子是读取来自传感器的数据,并将其更新。
图1表示以往的典型的离散类/连续类模拟器系统结构的框图。该系统的离散类模拟器由ECU仿真器102、104及106构成。实际具有更多的ECU仿真器,但在此作为例示仅表示3个。
ECU仿真器102、104及106功能上大致相同,代表性地仅说明ECU仿真器102,ECU仿真器102由CPU仿真器102a和外设仿真器102b构成。CPU仿真器102a是仿真原来的ECU的逻辑功能的模组。
外设仿真器102b接收来自作为发动机模拟器等连续类模拟器的设备模拟器108的连续脉冲信号,转换为中断事件信号,发送至离散类的CPU仿真器102a,或者,将从CPU仿真器102a接收的中断事件信号转换为连续脉冲信号。
图1中用虚线矩形框包围的是模拟程序的各个线程(thread)。在多核或多处理器环境下,优选是将各个线程分配给各个核或处理器。
图2表示ECU仿真器102、104及106与设备模拟器108之间的通信的时序图。从该图可以看出,在图1的构成中,作为离散类系统的ECU仿真器和作为连续类系统的设备模拟器在每个时钟同步。
但是,从图1的虚线框可以看出,设备模拟器108与ECU仿真器102、104及106是用不同线程执行的,因此在每个时钟产生线程之间通信。在为了并行执行而将各线程分配给各个核或处理器时,成为处理器之间通信,无论是何状态,在每个时钟发生这样的线程之间通信或处理器之间通信都需要非常大的成本,这妨碍提高模拟系统的工作速度。
日本特开2001-290860号公报中公开了如下内容:目的在于提供一种通过用模拟器求出模拟器之间的不需要的同步处理,并减少该 同步处理,从而谋求提高模拟速度的硬件/软件协调模拟器,包括:使CPU模拟机构和外围电路模拟机构同步的模拟协调机构、和决定是否抑制利用模拟协调机构进行的同步的判断机构,基于判断机构抑制利用上述模拟协调机构进行的同步。
日本特开平8-227367号公报中公开了如下内容:目的在于得到如下这样的调试器,其使用可将除了预期有设计错误的系统工作之外的所有系统工作无视的高速模拟器来提高排错速度,包括:用于将各模拟器相互连接的提供与总线周期对应的信号的总线的总线模拟器和省略模拟所不需要的总线周期的机构,将与模拟无关的CPU总线周期省略,或,明确地不模拟周期性时钟信号而仅生成时钟信号的时间表。
日本特开2004-30228号公报中公开了如下内容:包括CPU模拟器、1个以上的外围宏模拟器以及控制这些模拟器执行同步的同步执行控制处理部,外围宏模拟器在基于CPU模拟器的模拟而输入到端子的信号发生了变化时,执行基于该端子信号的模拟,并且外围宏模拟器检测所输入的端子信号的变化,将变化的端子信号登记于端子信号列表22,仅对所登记的端子信号执行模拟。
日本特开2006-65758号公报中公开了如下内容:在电路模拟方法中,对根据电路数据做出的第一离散时间模型施加响应函数而生成第二离散时间模型,使用第二离散模型计算时钟沿的定时及在该定时对时钟同步电路输入输出的信号的有效信号值,由此执行模拟。
专利文献1:日本特开2001-290860号公报
专利文献2:日本特开平8-227367号公报
专利文献3:日本特开2004-30228号公报
专利文献4:日本特开2006-65758号公报
发明内容
上述现有技术中,利用有条件地使模拟器同步,或选取时钟沿定时等技术,谋求降低模拟器之间的通信成本,但不能说充分解决了模 拟系统中连续类系统与离散类系统之间的线程间通信或处理器间通信的成本问题。
因此,本发明的目的在于在模拟系统中降低连续类系统与离散类系统之间的通信成本。
本发明的另一目的在于提供一种仅通过连续类系统和离散类系统取得大致同步就能适当工作的模拟系统。
为了解决上述课题而反复研究,本申请发明人着眼于ECU仿真器等的离散类模拟器的外设部分。即,如图1所示,ECU仿真器由CPU仿真器部分和外设部分构成。认为可能这方面存在通信成本的瓶颈。
并且,本申请发明人经过研究之后想到,使ECU仿真器的外设的至少一部分在与连续类系统的线程相同的线程内进行工作这一想法。若做成这样的结构,则连续类系统和外设的一部分在同一线程内工作,因此通信成本低。
然而,外设与ECU仿真器之间的线程之间通信依然是必须的,但这样的通信只是在中断事件、或每隔较长期间的周期性访问那样的稀疏的定时出现,因此在通信成本方面不会成为负担。
根据本发明的另一特征,连续类系统和离散类系统只要取得大致同步就能适当工作。即,根据本发明的第一实施例,离散类系统与连续类系统的时钟无关地独立工作。离散类系统可访问连续类系统的时钟模组,仅在需要其时刻时,访问时钟模组,因此在通信成本上几乎不存在负担。
根据本发明的第二实施例,离散类系统通过连续类系统的时钟中间取的某时钟(例如,1/1000)取得同步,因此可访问连续类系统的时钟模组。在离散类系统中使用软件的定时器(时间计算)时采用第二实施例。在此,通过以比定时器的最小刻度小的周期取得同步,从而软件定时器的工作得以保证。
根据该发明,通过使离散类系统的外设的至少一部分编入连续类系统一侧以使其与连续类系统在同一线程工作,连续类从而离散类系 统与连续类系统之间的线程之间通信的频率大幅度降低。由此,大幅度减少线程之间通信的成本,从而能够显著提高模拟系统的工作速度。
附图说明
图1是表示具有离散类和连续类的以往的典型模拟系统的功能框图的图。
图2是表示图1的模拟系统的时序图的图。
图3是表示ECU的典型控制即反馈闭环系统的例子的图。
图4是反馈闭环系统的响应函数的记述的例子。
图5是为了实施本发明而使用的计算机的硬件的框图。
图6是表示本发明的实施例的模拟系统的功能框图的图。
图7是表示图6的模拟系统的时序图的图。
图8是表示本发明的实施例的模拟系统的更详细的功能框图的图。
图9是表示连续类和混合外设的工作处理的流程图的图。
图10是表示混合外设的构成要素的顺序列表的图。
图11是表示中断控制器的工作处理的流程图的图。
图12是表示多功能定时器单元的工作的处理的流程图的图。
图13是表示另一实施例的连续类和混合外设的工作处理的流程图的图。
附图标记的说明
602、604、606...ECU仿真器
602b、604b、606b...混合外设
具体实施方式
以下,参照附图说明本发明的一实施例的结构及处理。在以下的记载中,只要不特别声明,在附图中对同一要素表述同一附图标记。应理解,在此说明的结构和处理是作为一实施例而说明的,不是用于 将本发明的保护范围限定解释为该实施例。
在说明用于实现本发明的结构之前,作为其前提说明ECU。ECU通常包括对来自传感器的输入信号进行例如A/D转换的输入接口;按照预定的逻辑处理数字输入信号的逻辑运算部(微型计算机);以及将其处理结果转换为执行器工作信号的输出接口。
为了便于说明,以下,本发明说明汽车的ECU,但应理解,本发明不限于此,也能适用于航空器、机器人等其他的具有ECU的所有机械机构。
ECU用传感器检测周边、环境状态、发动机等驱动机构的状态及人类的指示操作的内容,作为信号而输入。具体而言,有来自水温传感器、进气温度传感器、过供压传感器、泵角度传感器、曲轴角度传感器、车速传感器、加速装置位置传感器、A/T档位、启动开关、空调ECU等的信号。
ECU输入这些信号,输出驱动电磁溢流阀、燃油切断螺线管、定时控制阀、进气节流VSV、辉光火花塞继电器、速度计及空调继电器等的信号。
要做成1个ECU输出用于控制多个不同机构的驱动信号不是不可能,但例如用单一ECU控制如发动机和空调那样的、响应性和其控制的严密性不同的构件,是不合理的,因此,通常在汽车中设置多个ECU。
图3是表示作为ECU的典型控制的反馈闭环系统的例子的图。即,在图3中,某目标信号被输入至作为ECU的控制器302,ECU对目标信号进行内部处理,从而输出驱动信号,驱动作为控制对象模型的发动机等设备304,设备304的输出经由传感器306反馈到控制器102的输入。
在此,作为目标信号而输入的例如是节气门开度、怠速控制、制动器、换挡、起动ON/OFF、电池电压、喷射通电时间、喷射通电次数、积碳、停顿角度、提前角值、进气完成标记、点火完成标记、大气压、车辆重量、滚动阻力系数、道路坡度、粘结系数、进气温度等 的参数。
作为传感器信号而反馈的是节气门开度、进气压力、吸入空气量、换挡、发动机转速、车速、排气温度、O2、冷却水温、空燃比、爆燃、点火异常等。
ECU要控制的对象是用牛顿力学方程式求出的机构系统、用电路的响应方程式求出的电驱动电路、或它们的组合。这些基本上是微分方程式,在控制工学中,能够利用拉普拉斯变换变换为响应函数来记述。
图4是采用这样的响应函数记述的例子。图4中虚线402所包围的部位对应图3的控制器302,虚线404所包围的部位对应图3的控制对象模型304,传感器306对应方框406。图4是响应函数的表现的一个例子,应理解并不是特别限定本发明。
接着,参照图5,说明为了实施本发明所使用的计算机的硬件。图5中,主机总线502连接有多个CPU0504a、CPU1504b、CPU2504c、CPU3504d。主机总线502还连接有用于进行CPU0504a、CPU1504b、CPU2504c、CPU3504d的运算处理的主存储器506。
另一方面,I/O总线508上连接有键盘510、鼠标512、显示器514及硬盘驱动器516。I/O总线508经由I/O桥518与主机总线502连接。键盘510及鼠标512用于操作者敲入指令、单击菜单等进行操作。显示器514根据需要而显示用于用GUI操作后述的本发明的程序的菜单。
作为为了该目的而使用的优选计算机系统的硬件有IBM(R)SystemX。此时,CPU0504a、CPU1504b、CPU2504c、CPU3504d例如是英特尔(R)Core 2 DUO,操作系统是Windows(商标)Server2003。操作系统保存于硬盘驱动器516,在计算机系统起动时,从硬盘驱动器516读取到主存储器506。
在此图示的CPU的个数是4个,但不限于此,可以是单处理器的系统,或任意个数的多核,或多处理器的系统。
为了实施本发明而可使用的计算机系统的硬件不限于IBM(R) SystemX,只要是能运行本发明的模拟程序,则可以使用任意计算机系统。操作系统也不限于Windows(R),可以使用Linux(R)、Mac OS(R)等任意的操作系统。而且,为了使ECU仿真器程序、设备模拟器等的逻辑进程高速工作,可以基于POWER(商标)6,操作系统使用AIX(商标)的IBM(R)SystemP等的计算机系统。
硬盘驱动器516还保存有ECU仿真器、设备模拟器等的多个逻辑进程及用于使多个逻辑进程协作工作的程序,可利用键盘510及鼠标512进行起动操作。
优选是,为了实现整车SILS,将1台汽车使用的全部的ECU仿真器程序保存于硬盘驱动器516。
硬盘驱动器516中还保存有:用于后述的ECU仿真器程序的时间表、发动机、传动装置、转向装置、刮水器等的设备模拟器程序、用于管理整个系统的时刻的全球时间管理器(global time manager)及保存有用于测试上坡道、高速道路、曲折山路等各种道路的脚本的脚本生成程序。
在此分别使用“仿真器(emulator)”和“模拟器(simulator)”的技术词汇,以CPU0~CPU3等为目标使其运行原本假定利用其他处理器进行工作而写入的ECU的代码,将此称为仿真,将进行仿真的程序称为仿真器。另一方面,将假想发动机等物理系统的工作而进行计算的系统称为模拟器。
接着,参照图6,说明由离散类系统和连续类系统构成的本发明的模拟系统的功能逻辑框图。该系统的离散类模拟器由ECU仿真器602、604及606构成。实际上具有更多ECU仿真器,但在此作为例示仅表示3个。
图6所示的系统的程序模组保存于硬盘驱动器516,在模拟系统起动时,通过操作系统的运转,从硬盘驱动器516载入到主存储器506进行工作。
ECU仿真器602、604及606功能上大致相同,因此代表性地仅说明ECU仿真器602,ECU仿真器602由CPU仿真器602a和混合 外设602b构成。
桥608、610及612是发动机模拟器等的设备模拟器中的执行数据的输入输出部分功能的逻辑模块,每隔连续类的设备模拟器的时钟间隔Δt而分别与混合外设602b、604b及606b通信。
图6中,虚线矩形方框表示模拟程序的各个线程。在多核或多处理器环境下,优选是将各个线程分配给各个核或各个处理器。
如图6所示,从功能上看,混合外设602b、604b及606b分别起到ECU仿真器602、604及606中将CPU仿真器602a、604a及606a与桥608、610及612之间接口的作用,但从模组结构上看,混合外设602b、604b及606b被控制为跨过存在桥608、610及612的设备模拟器工作的线程和ECU仿真器602、604及606工作的线程地进行工作。混合外设的“混合”这一名称来自这样的混合存在。即,混合外设的某部分位于与ECU仿真器602、604及606相同的线程,混合外设的其他部分位于与设备模拟器相同的线程。
而且如图所示,混合外设602b、604b及606b分别具有用于读写数据的共享存储器602c、604c及606c。这些存储器602c、604c及606c优选是主存储器506的一部分。存储器可利用混合外设的构成模块及ECU仿真器读写数据。
图7是表示图6的功能框图所示的模拟系统的时序图的概要的图。如图所示,设备模拟器等的连续类模拟器与混合外设之间每隔时钟间隔Δt进行通信,因此成为密集通信。但是,根据本发明,设备模拟器和混合外设的一部分处于同一线程内,因此二者之间不会引起线程之间通信,不会带来过大的通信成本。
另一方面,混合外设与作为离散类模拟器的ECU仿真器之间的通信仅是在离散类模拟器产生中断的定时或者时间表中的疏散定时产生。从混合外设对ECU仿真器的通信是通过发送事件信号而进行的。
图8是表示功能框图的更详细的功能框图的图。在此尤其表示ECU仿真器602及桥608,但应理解,对于ECU仿真器604、606及 桥610、612也是同样的。
图8中,CPU仿真器602a上连接有ROM802和RAM804。在此说明的模拟系统基本上是SILS,因此所有的功能模块由软件模组实现。由此,ROM802仅是常数说明的集合,RAM804是分配给主存储器506的存储器区域。
CPU仿真器602a的工作可以是将原来的仿真器程序的二进制反汇编而成的代码再次汇编,执行汇编后的二进制,也可以是一边按步骤依次对仿真器程序的二进制命令进行转换,一边执行。
如图8所示,混合外设602b包括中断控制器(INT-C)806、多功能定时器单元(ATU)808、插件控制器(PFC)810、以及看门狗定时器(WDT)812。
应理解,由INT-C806、ATU808、PFC810和WDT812构成的结构只是混合外设602b的结构的一个例子,并不限定于此。
桥608利用变量映射的功能将对桥608输入的输入信号转换为向PFC810的插件提供的值。将这些用C语言的模拟代码表示,则例如下面所示。
即,利用赋予link_type的值,向data这一构造体不同的要素提供值。在此,NE_PULSE是指在表示发动机的旋转的脉冲中,实际汽车的一例中,曲柄的每1次旋转发生24次脉冲。A_F是空燃比,是进入汽缸的空气量与燃料之比。应理解,这些都只是作为一例子而 表示,实际上还有很多信号。
PFC810具有如下功能:对利用变量映射的功能从桥608赋予的作为与插件对应的变量的数据多路复用,将其提供给INT-C806或ATU808。
INT-C806与赋予PFC810的值或每时钟的状态变化响应,向CPU仿真器602a发送事件。其事件包括由PFC810提供的参数值。
ATU808利用来自桥的信号更新其时刻。另一方面,CPU仿真器602a基于其计算结果,在ATU808设置开始定时和持续时间。并且,ATU808基于所接收的开始定时和持续时间,生成脉冲,与时间分段对应地发送至连续类系统。作为这样计算的例子,有燃料喷射的开始定时和持续时间。
WDT812是始终进行计时累计,与来自CPU仿真器602a的信号响应,将计数值清除的定时器,由于一定时间以上从CPU仿真器602a未发来信号,因此计数值超过阈值,从而输出表示CPU仿真器602a的工作不正常的信号。
图9是表示混合外设602b和CPU仿真器602a的工作的处理的流程图。应理解,混合外设604b和CPU仿真器604a的工作等实质上也相同。在此,代表性地说明混合外设602b和CPU仿真器602a。
在每个时间分段Δt调出该处理。在脉冲上连续类模拟器与离散类模拟器并不同步,从这个意义上讲,该处理可以说是非同步进程。
图9中,在步骤902及步骤908,按照标记了顺序的外设的构成模块的顺序进行构成模块的固有处理。关于在此所说的构成模块,图8的例子中是INT-C806、ATU808、PFC810及WDT812,该预定顺序按照图10所示那样的顺序列表1002决定。该列表优选是配置在主存储器506的固定部位。该列表表示是PFC→ATU→WDT→INT-C的顺序。图10还表示从连续类的输入到输出,应按照该列表的顺序进行处理。
尤其是在步骤902,进行步骤904的、从混合外设602b的共享存储器602c读取作为CPU仿真器602a的输出的数据的处理、和步骤 906的、以覆盖的方式向混合外设602b的共享存储器602c写入数据作为CPU仿真器602a的输入的处理。
如此,全部构成模块的处理完成时,混合外设602b的处理(尤其是连续类的部分)结束。
另一方面,关于CPU仿真器602a,CPU仿真器602a在步骤910执行到向I/O的访问,在步骤912,进行混合外设602b向共享存储器602c的I/O访问。此时,向共享存储器602c访问之间进行排他控制,以使得其他处理模块不改写共享存储器602c的值。
图11是表示混合外设602b的INT-C806的处理流程图的图。这是图9的外设构成模块固有的处理步骤910中的INT-C806的固有处理。图11中,在步骤1102,INT-C从PFC810取得输入数据。在步骤1104,INT-C判断是否将输入数据转换为中断。该判断例如是保持某值的上次值,判断该值是否与上次值发生变化。典型的是检测脉冲的下降沿。
若判断为将输入数据转换为中断,则INT-C在步骤1106向CPU仿真器发送中断事件消息,结束处理。
图12是表示混合外设602b的ATU808流程图的图。这是图9的外设构成模块固有的处理步骤910中的ATu808的固有处理。图12中,在步骤1202,ATU从PFC取得输入数据。
在步骤1204,ATU判断定时器是否达到要求,即判断定时器的值是否达到设定的预定值。若达到,则在步骤1206,ATU改变输出的状态。如未达到,则直接进入步骤1208。
接着在步骤1208,ATU将输出数据写入PFC,处理结束。
进一步详细而言,可以在ATU808设定从CPU仿真器602a起的开始时刻和期间,于是,步骤1204的定时器达到要求是指从该开始时刻起的期间内。于是,ATU808的作用例如是在从开始时刻起的期间内通过PFC输出逻辑1,除此之外的情况则输出逻辑0。
图13是表示与外设和ECU仿真器之间的处理工作相关的另一实施例的处理流程图的图。与图9的处理不同,在该实施例中,按所指 定的周期进行同步处理。图13的流程图的处理也可以在每个时间分段Δt调出。在离散类系统中使用软件的定时器(时间计算)时采用该实施例。在此,通过以比定时器的最小刻度小的周期取得同步,从而软件定时器的工作得以保证。
图13中,在步骤1302及步骤1308,按照标记了顺序的外设的构成模块的顺序进行构成模块的固有处理。关于在此所说的构成模块,图8的例子中是INT-C806、ATU808、PFC810及WDT812,该预定顺序按照图10所示那样的顺序列表1002决定。该列表优选是配置在主存储器506的固定部位。该列表表示是PFC→ATU→WDT→INT-C的顺序。图10还表示从连续类的输入到输出,应按照该列表的顺序进行处理。
INT-C806及ATu808的固有处理如参照图11及图12已经说明的内容所示。
尤其是在步骤1302,进行步骤1304的、从混合外设602b的共享存储器602c读取作为CPU仿真器602a的输出的数据的处理、和步骤1306的、以覆盖的方式向混合外设602b的共享存储器602c写入数据作为CPU仿真器602a的输入的处理。
如此,全部构成模块的处理完成,则混合外设602b的处理进入步骤1310,因此,判断是否是t<=T<t+Δt。若判断为否,则直接结束处理。在此,t表示连续类模拟器的当前时刻,Δt表示时间分段的大小,T表示CPU仿真器的同步时刻。
在步骤1310,若判断为t<=T<t+Δt,则在步骤1312,混合外设602b等待来自CPU仿真器602a的通知,当有通知时,在步骤1314更新T,向CPU仿真器602a通知。
另一方面,关于CPU仿真器602a的这一方,CPU仿真器602a在步骤1316执行到向I/O的访问,在步骤1318进行混合外设602b向共享存储器602c的I/O访问。此时,在向共享存储器602c访问之间进行排他控制,以使得其他处理模块不改写共享存储器602c的值。
在步骤1320判断是否结束所指定的周期,若不是,则处理返回 步骤1316。
在步骤1320,若判断为所指定的周期已结束,则在步骤1322,CPU仿真器602a将已结束这一内容向混合外设602b通知。该通知是上述步骤1312的来自CPU仿真器602a的通知。
在步骤1324,CPU仿真器602a等待下一周期的指定。在此等待的是来自上述步骤1314的通知。接着,处理返回步骤1316。
以上,关于汽车用的多个模拟系统,说明了本发明的特定实施例,但本发明不限于这样的特定实施例,作为本领域技术人员,应理解,也可将本发明应用于飞行器用的模拟系统等一般的电子机械控制系统的模拟系统。
在上述实施例中,说明了ECU仿真器的外设部分和连续类系统在同一线程内,但不限于线程,若是能够分配给单一处理器或核这样的单位,可以是更广的、进程这样的单位。

Claims (11)

1.一种模拟系统,利用计算机的处理进行模拟,其特征在于,包括:
利用连续脉冲而工作的连续类模拟器;
利用离散事件消息而工作的离散类模拟器;以及
用于将来自上述连续类模拟器的连续脉冲信号转换为事件消息并发送至上述离散类模拟器的外围设备,
上述连续类模拟器和上述外围设备的至少一部分被控制成在同一线程内工作,
上述外围设备以比上述连续脉冲信号的周期长的每个指定周期同步地通信。
2.根据权利要求1所述的模拟系统,其特征在于,
上述外围设备还具有将来自离散类模拟器的事件消息信号转换为连续时钟的信号并向上述连续类模拟器发送的功能。
3.根据权利要求1所述的模拟系统,其特征在于,
上述离散类模拟器的事件是中断。
4.根据权利要求1所述的模拟系统,其特征在于,
上述外围设备和上述离散类模拟器以非同步的方式通信。
5.根据权利要求4所述的模拟系统,其特征在于,
上述外围设备具有能够读写数据的存储器,上述外围设备和上述离散类模拟器通过向该存储器读写来交换数据。
6.根据权利要求1所述的模拟系统,其特征在于,
上述模拟系统是汽车的模拟系统,上述连续类模拟器包括发动机模拟器,上述离散类模拟器包括用于控制该发动机模拟器的ECU仿真器。
7.一种模拟方法,利用计算机的处理进行模拟,其特征在于,包括:
使利用连续脉冲而工作的连续类模拟器工作的步骤;
使利用离散事件消息而工作的离散类模拟器工作的步骤;以及
使外围设备工作的步骤,所述外围设备用于将来自上述连续类模拟器的连续脉冲信号转换为事件消息并发送至上述离散类模拟器,
上述连续类模拟器和上述外围设备被控制成在同一线程内工作,
上述外围设备以比上述连续脉冲信号的周期长的每个指定周期同步地通信。
8.根据权利要求7所述的模拟方法,其特征在于,
上述外围设备还具有将来自离散类模拟器的事件消息信号转换为连续时钟的信号并向上述连续类模拟器发送的功能。
9.根据权利要求7所述的模拟方法,其特征在于,
上述离散类模拟器的事件是中断。
10.根据权利要求7所述的模拟方法,其特征在于,
上述外围设备和上述离散类模拟器以非同步的方式通信。
11.根据权利要求7所述的模拟方法,其特征在于,
上述模拟方法是汽车的模拟方法,上述连续类模拟器包括发动机模拟器,上述离散类模拟器包括用于控制该发动机模拟器的ECU仿真器。
CN201080010432.0A 2009-03-12 2010-03-10 模拟方法、系统 Active CN102341787B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009059790 2009-03-12
JP2009-059790 2009-03-12
PCT/JP2010/054056 WO2010104135A1 (ja) 2009-03-12 2010-03-10 シミュレーション方法、システム及びプログラム

Publications (2)

Publication Number Publication Date
CN102341787A CN102341787A (zh) 2012-02-01
CN102341787B true CN102341787B (zh) 2015-06-17

Family

ID=42728423

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080010432.0A Active CN102341787B (zh) 2009-03-12 2010-03-10 模拟方法、系统

Country Status (5)

Country Link
US (1) US8670967B2 (zh)
EP (1) EP2407886A4 (zh)
JP (1) JP5295355B2 (zh)
CN (1) CN102341787B (zh)
WO (1) WO2010104135A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102011105141A1 (de) * 2011-06-09 2012-12-13 Dmg Electronics Gmbh Verfahren und system zur simulation eines arbeitsprozesses an einer werkzeugmaschine
JP2013084163A (ja) * 2011-10-12 2013-05-09 Hitachi Ltd 協調シミュレーション装置及び協調シミュレーション方法
US9251308B2 (en) * 2012-07-23 2016-02-02 International Business Machines Corporation Simulation method, system, and program
US9442716B2 (en) * 2013-09-24 2016-09-13 GM Global Technology Operations LLC Methods and apparatus for adjusting a variable rate of requesting software data from a vehicle
JP6462329B2 (ja) * 2014-11-19 2019-01-30 日立オートモティブシステムズ株式会社 故障シミュレーションシステム
JP6831193B2 (ja) * 2016-08-26 2021-02-17 トヨタ自動車株式会社 ハイブリッド車両の制御装置
US20180189896A1 (en) * 2016-12-30 2018-07-05 Paccar Inc Systems and methods for improving electronic component quality during the manufacture of vehicles
US10652256B2 (en) * 2017-06-20 2020-05-12 International Business Machines Corporation Real-time active threat validation mechanism for vehicle computer systems
JP6770935B2 (ja) * 2017-07-03 2020-10-21 日立オートモティブシステムズ株式会社 車両制御装置用の検証装置
WO2019214802A1 (en) * 2018-05-07 2019-11-14 Siemens Industry Software Nv Method for simulating the operation of an electronic control unit

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003228496A (ja) * 2002-02-05 2003-08-15 Fujitsu Ltd 制御プログラム開発支援装置
CN1641505A (zh) * 2005-01-07 2005-07-20 清华大学 一种整车控制器仿真测试系统
JP2008065640A (ja) * 2006-09-07 2008-03-21 Toshiba Corp シミュレーション装置およびそのシミュレーション制御方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5678028A (en) 1994-10-25 1997-10-14 Mitsubishi Electric Information Technology Center America, Inc. Hardware-software debugger using simulation speed enhancing techniques including skipping unnecessary bus cycles, avoiding instruction fetch simulation, eliminating the need for explicit clock pulse generation and caching results of instruction decoding
US6425762B1 (en) * 1998-02-24 2002-07-30 Wind River Systems, Inc. System and method for cosimulation of heterogeneous systems
JP2001290860A (ja) 2000-04-10 2001-10-19 Matsushita Electric Ind Co Ltd ハードウエア/ソフトウエア協調シミュレータ
JP3638255B2 (ja) * 2001-03-26 2005-04-13 富士通テン株式会社 通信シミュレーション装置および方法
JP2004030228A (ja) 2002-06-26 2004-01-29 Nec Electronics Corp Lsiシミュレータ及びシミュレーション方法
WO2005091177A2 (en) * 2004-03-10 2005-09-29 Renault S.A.S. A validation method for embedded systems
JP4259398B2 (ja) * 2004-05-27 2009-04-30 日産自動車株式会社 車両走行制御システムの悪路走行シミュレーション装置、および、車両走行制御システム作動感度評価装置
JP4509699B2 (ja) 2004-08-30 2010-07-21 富士通株式会社 回路解析方法および回路解析装置
JP4906286B2 (ja) * 2005-08-17 2012-03-28 富士通テン株式会社 ソフトウェア開発環境システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003228496A (ja) * 2002-02-05 2003-08-15 Fujitsu Ltd 制御プログラム開発支援装置
CN1641505A (zh) * 2005-01-07 2005-07-20 清华大学 一种整车控制器仿真测试系统
JP2008065640A (ja) * 2006-09-07 2008-03-21 Toshiba Corp シミュレーション装置およびそのシミュレーション制御方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DAIKIBO HAN"YO HEIRETSU SHORI NO JITSUGEN NI MUKETE;KAZUO TAKI;《BIT,KYORITSU SHUPPAN CO.,LTD.》;19910201;第23卷(第2期);第45页 *
System ASIC Shijo Kakudai o Mikomi/Kensho Tool ga Zokuzoku Tojo suru;SHUN"ICHI NAKAYAMA;《NIKKEI ELECTRONICS, NIKKEI BUSINESS PUBLICATIONS,INC.》;19970901(第697期);第82页 *

Also Published As

Publication number Publication date
JP5295355B2 (ja) 2013-09-18
US8670967B2 (en) 2014-03-11
EP2407886A1 (en) 2012-01-18
CN102341787A (zh) 2012-02-01
WO2010104135A1 (ja) 2010-09-16
US20120029893A1 (en) 2012-02-02
EP2407886A4 (en) 2014-04-02
JPWO2010104135A1 (ja) 2012-09-13

Similar Documents

Publication Publication Date Title
CN102341787B (zh) 模拟方法、系统
JP5179249B2 (ja) 制御装置シミュレーション方法、システム及びプログラム
JP5153465B2 (ja) シミュレーション方法、システム及びプログラム
JP5065344B2 (ja) シミュレーション方法、システム及びプログラム
Reif Automotive Mechatronics
US8036761B2 (en) Simulation hardware apparatus comprising vehicle model
CN102591327B (zh) 一种面向汽车车身控制开发的虚实结合测试方法
JP4978285B2 (ja) 電子制御ユニットの自動検査装置、および電子制御ユニットの自動検査方法
JP5224957B2 (ja) シミュレーション方法、システム及びプログラム
CN103543739B (zh) 一种用于验证发动机怠速启停控制的仿真系统和方法
CN103135545B (zh) 一种自动变速器控制器半实物仿真测试系统
JP5186290B2 (ja) シミュレーション方法、システム及びプログラム
JP2010282291A (ja) シミュレーション・システム、方法及びプログラム
JP5460010B2 (ja) シミュレーション方法、システム及びプログラム
KR101205247B1 (ko) Hils 시스템 기반 하이브리드 상용차의 연료소모량 및 배출가스 산출시스템
JP5186307B2 (ja) シミュレーション方法、システム及びプログラム
Gaglio Design and realization of an open-loop simulator for ICE control unit, developing the crankshaft and camshaft sensors simulation
Ishikawa et al. CPU model-based hardware/software co-design for real-time embedded control systems
JP5500820B2 (ja) シミュレーション方法、システム及びプログラム
CN203250212U (zh) 自动变速器控制器半实物仿真测试系统
Abbondanza Employment of Real-Time/FPGA Architectures for Test and Control of Automotive Engines
Zheng Research and Implementation of Automated HIL Simulation Test Platform for ECU of Automotive Engine
Viele et al. A PC and FPGA hybrid approach to hardware-in-the-loop simulation
Oho et al. Model-based implementation design of automotive controllers
CN106814635A (zh) 一种液化石油气发动机电控系统硬件在环实验平台

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant