KR101354007B1 - Interfacing system synchronizing a time process of a simulation system and a test system based on simulation time and test method for simulation model - Google Patents

Interfacing system synchronizing a time process of a simulation system and a test system based on simulation time and test method for simulation model Download PDF

Info

Publication number
KR101354007B1
KR101354007B1 KR1020120144159A KR20120144159A KR101354007B1 KR 101354007 B1 KR101354007 B1 KR 101354007B1 KR 1020120144159 A KR1020120144159 A KR 1020120144159A KR 20120144159 A KR20120144159 A KR 20120144159A KR 101354007 B1 KR101354007 B1 KR 101354007B1
Authority
KR
South Korea
Prior art keywords
test
simulation
timer
time
event
Prior art date
Application number
KR1020120144159A
Other languages
Korean (ko)
Inventor
심상흔
조병인
진종현
강석중
김준수
하재경
Original Assignee
국방과학연구소
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 국방과학연구소 filed Critical 국방과학연구소
Priority to KR1020120144159A priority Critical patent/KR101354007B1/en
Application granted granted Critical
Publication of KR101354007B1 publication Critical patent/KR101354007B1/en

Links

Images

Classifications

    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

The present invention relates to an inter-system connecting configuration and a method for testing a simulation model, wherein the configuration includes a discrete event-based simulation system progressing simulation time in an ASAP method, and a test system physically separated from the simulation system and controlling the simulation system and a system to be tested to conduct a test. The simulation system has a test clock interface module for managing the timer of the test system. The test system has a test clock manager module including a timer management queue for synchronization with the simulation time. The test clock manager module is connected to the test clock interface module. Thus, the progress of time between the simulation system and the test system can be synchronized on the basis of the simulation time. [Reference numerals] (10) Test system; (11) Test case; (12) Test execution management module; (13,23) Operating system; (14) Test clock manager; (20) Simulation system; (21) Simulation model; (22) Simulation kernel; (24) Test clock interface

Description

시뮬레이션 시간을 기반으로 시뮬레이션 시스템과 테스트 시스템의 시간 진행을 동기화하는 시스템 간 연동 구성 및 시뮬레이션 모델 테스트 방법{INTERFACING SYSTEM SYNCHRONIZING A TIME PROCESS OF A SIMULATION SYSTEM AND A TEST SYSTEM BASED ON SIMULATION TIME AND TEST METHOD FOR SIMULATION MODEL} INTERFACING SYSTEM SYNCHRONIZING A TIME PROCESS OF A SIMULATION SYSTEM AND A TEST SYSTEM BASED ON SIMULATION TIME AND TEST METHOD FOR SIMULATION MODEL }

본 발명은 테스트 시스템과 시뮬레이션 시스템으로 구성되는 시스템 연동 구성 및 시뮬레이션 모델 테스트 방법에 관한 발명으로서, 보다 상세하게는, 물리적으로 분리된, 테스트 시스템과, ASAP(As Soon As Possible) 방식으로 시간 진행을 수행하는 이산사건기반 시뮬레이션 시스템 간의 시뮬레이션 시간을 기반으로 연동 구성하여 시뮬레이션 모델 테스트를 수행하는 방법에 관한 발명이다. The present invention relates to a system interworking configuration and a simulation model test method consisting of a test system and a simulation system, and more particularly, a time progress in a physically separated test system and an AS Soon As Possible (ASAP) method. The present invention relates to a method of performing a simulation model test by interworking configuration based on simulation time between discrete event-based simulation systems.

시뮬레이션 모델 테스트 시, 테스트 실행 관리 모듈(12) 및 테스트 케이스(11)를 포함하고 있는 테스트 시스템(10)과, 시뮬레이션 모델(21)을 포함하고 있는 이산사건기반 시뮬레이션 시스템(이하 '시뮬레이션 시스템'이라 한다)(20)이 물리적으로 분리된 시뮬레이션 모델 테스트 방법이 도 11에서 도시된 바와 같이 널리 활용되고 있다.When testing a simulation model, a test system 10 including a test execution management module 12 and a test case 11 and a discrete event-based simulation system including a simulation model 21 (hereinafter referred to as a 'simulation system') A simulation model test method in which the 20 is physically separated is widely used as shown in FIG. 11.

이러한 방법은 테스트 관련 자원(테스트 실행관리, 인터페이스, 테스트 케이스 등)을 표준화하고, 시뮬레이션 모델에 대한 종속성을 최소화함으로써 보다 효율적이고 정확한 테스트를 가능하게 한다. This approach enables more efficient and accurate testing by standardizing test-related resources (test execution management, interfaces, test cases, etc.) and minimizing dependencies on simulation models.

그러나, 이러한 테스트 구성에서는 테스트 시스템과 시뮬레이션 시스템 간의 시간 동기화가 되지 않을 경우 테스트 시스템과 시뮬레이션 시스템에서의 시간 간격이 상이함으로 인해 타임아웃 시간 관리 등에 문제가 발생되어 정상적인 테스트 수행이 불가하다. 따라서, 보다 정확하고 효율적인 시뮬레이션 테스트를 위해서는 테스트 시스템과 시뮬레이션 시스템 간 시간 동기화가 필수적이다. However, in such a test configuration, when time synchronization is not performed between the test system and the simulation system, a time interval between the test system and the simulation system is different, so that a problem such as timeout time management may occur, and thus normal test execution may not be possible. Therefore, time synchronization between the test system and the simulation system is essential for more accurate and efficient simulation testing.

도 12는 상기한 테스트 시스템(10)과 시뮬레이션 시스템(20) 간의 시간 동기화 문제를 동기화 관점에서 3가지 경우로 분리하여 도시하고 있다. 테스트 시스템(10)과 시뮬레이션 시스템(20) 간 연동에서 테스트 시스템(10)이 메시지 A를 송신하고 1초 이내에 시뮬레이션 시스템(20)으로부터 메시지 B를 통해 응답을 수신해야만 프로토콜의 적합성을 만족하는 테스트 케이스에 대한 테스트를 수행한다고 가정할 때, 테스트 시스템(10)의 1초 시간 간격과 시뮬레이션 시스템(20)의 1초 시간 간격이 동일하지 않을 경우, 테스트 수행이 불가능하다. 테스트 시스템(10)은 자신이 생각하는 1초 이내에 응답 메시지 B가 수신되지 않으면, 테스트가 실패한 것으로 판단하게 되고, 시뮬레이션 시스템(20)은 자신이 생각하는 1초 이내에 응답 메시지 B를 송신하면 테스트가 성공할 수 있도록 구현된 것으로 판단하기 때문이다. FIG. 12 illustrates the time synchronization problem between the test system 10 and the simulation system 20 in three cases in terms of synchronization. In the interworking between the test system 10 and the simulation system 20, the test system 10 transmits the message A and receives a response through the message B from the simulation system 20 within 1 second to satisfy the protocol conformance. Assuming that the test is performed for 1, if the 1 second time interval of the test system 10 and the 1 second time interval of the simulation system 20 are not the same, it is impossible to perform the test. If the test system 10 does not receive a response message B within one second of its own thinking, the test system 10 determines that the test has failed, and the simulation system 20 transmits the response message B within one second of its own thinking. This is because it is determined to be successful.

도 12의 (a)의 경우, 두 시스템 모두 동일한 시간 간격으로 동기화되어 테스트가 가능하지만, 도 12의 (b)의 경우 테스트 시스템(10)이 시뮬레이션 시스템(20) 보다 느리게 시간이 진행되어, 이러한 상황에서의 테스트는 테스트 시스템(10) 시간을 기준으로 판단하면 1초 이내에 메시지 B가 수신되어 테스트가 성공되지만 시뮬레이션 시스템(20)의 시간에서 보면 1초 이후에 메시지 B가 송신되었기 때문에 테스트가 실패하게 된다. 마찬가지로, 도 12의 (c)의 경우에는 테스트 시스템(10)이 시뮬레이션 시스템(20)보다 빠르게 시간이 진행되어 이러한 상황에서의 테스트는 테스트 시스템(10) 시간에서 판단하면 1초 이후에 메시지 B가 수신되어 테스트가 실패하게 되지만, 시뮬레이션 시스템(20)의 시간을 기준으로 보면 1초 이내에 메시지 B가 송신되었기 때문에 테스트가 성공하게 된다. 따라서, 두 시스템 간의 연동을 통한 시뮬레이션 모델 테스트를 하는 경우, 테스트 시스템(10)과, 시뮬레이션 시스템(20) 간의 시간이 동기화되어야만 정상적인 테스트 수행이 가능하다. In the case of FIG. 12A, both systems are synchronized and tested at the same time interval, but in the case of FIG. 12B, the test system 10 is slower than the simulation system 20. In the situation, the test succeeds because message B is received within 1 second when the test system 10 is judged based on the time of the test system 10, but the test fails because the message B was sent after 1 second when the time of the simulation system 20 is viewed. Done. Similarly, in the case of FIG. 12C, the test system 10 progresses faster than the simulation system 20, so that the test in this situation is determined by the test system 10 time. When received, the test fails, but based on the time of the simulation system 20, the test succeeds because the message B was sent within 1 second. Therefore, when the simulation model test through the interworking between the two systems, the normal test can be performed only when the time between the test system 10 and the simulation system 20 is synchronized.

이러한 문제점을 해결하기 위하여, 종래에는 테스트 시스템이 실시간으로 동작하는 것으로 가정하여 테스트 대상 시스템 또한 실시간으로 동작시켜 테스트를 수행함으로써 문제를 해결하였다. 테스트 대상 시스템이 시뮬레이션 시스템인 경우에도, 시뮬레이션 수행 속도가 실시간보다 빠른 경우에 한하여 도 12의 (a)와 같이, 시뮬레이션 수행 속도를 실시간으로 유지하도록 시뮬레이션 커널을 동작시킴으로써 위와 같은 문제점을 해결하였다. 그러나, 이와 같은 해결 방식은 시뮬레이션이 실시간보다 빠르게 수행될 수 있는 경우에는 테스트 수행속도를 빠르게 할 수 있는 장점을 포기해야 하며 시뮬레이션 속도가 실시간보다 느린 복잡한 시뮬레이션에 대해서는 테스트가 불가능한 문제점을 가지고 있다. In order to solve this problem, conventionally, a test system is operated in real time, and the test target system is also operated in real time to solve the problem. Even when the test target system is a simulation system, the above-mentioned problem is solved by operating the simulation kernel to maintain the simulation execution speed in real time as shown in FIG. 12A only when the simulation execution speed is faster than the real time. However, such a solution has to give up the advantage of speeding up the test when the simulation can be performed faster than real time, and it is impossible to test a complex simulation whose simulation speed is slower than real time.

본 발명이 해결하고자 하는 과제는 테스트 시스템과 시뮬레이션 시스템이 물리적으로 분리되어 있는 환경에서의 시뮬레이션 테스트 시 실시간 클럭을 기반으로 동작하는 테스트 시스템과 시뮬레이션 클럭을 기반으로 동작하는 시뮬레이션 시스템 간의 상이한 시간 영역을 동기화할 수 있는 시스템 간 연동 구성 및 시뮬레이션 모델 테스트 방법을 제공하는 데 있다.The problem to be solved by the present invention is to synchronize different time domains between a test system that operates based on a real time clock and a simulation system that operates based on a simulation clock when performing a simulation test in an environment where the test system and the simulation system are physically separated. It is to provide a system-to-system interworking configuration and simulation model test method.

상기한 목적을 달성하기 위한 본 발명은 ASAP 방식으로 시뮬레이션 시간 진행을 수행하는 이산사건기반 시뮬레이션 시스템 및 상기 시뮬레이션 시스템과 물리적으로 분리되고, 상기 시뮬레이션 시스템과 테스트 대상 시스템을 제어하여 테스트를 수행하는 테스트 시스템을 포함하는 시뮬레이션 모델 테스트 연동 구성에 있어서, 시뮬레이션 시스템은 테스트 시스템의 타이머 관리를 위한 테스트 클럭 인터페이스 모듈을 구비하고, 테스트 시스템은 상기 시뮬레이션 시간과의 동기화를 위한 타이머 관리 큐를 포함하는 테스트 클럭 관리자 모듈을 구비하고, 테스트 클럭 관리자 모듈은 테스트 클럭 인터페이스 모듈과 연동되어, 시뮬레이션 시간을 기반으로 시뮬레이션 시스템과 테스트 시스템의 시간 진행을 동기화하는 것을 특징으로 한다The present invention for achieving the above object is a discrete event-based simulation system for performing the simulation time progress in an ASAP method and a test system that is physically separated from the simulation system, and performs the test by controlling the simulation system and the test target system In the simulation model test interlock configuration comprising a, the simulation system includes a test clock interface module for timer management of the test system, the test system includes a test clock manager module including a timer management queue for synchronization with the simulation time In addition, the test clock manager module is interlocked with the test clock interface module, characterized in that to synchronize the time progress of the simulation system and the test system based on the simulation time

바람직하게는 상기 테스트 시스템은 테스트 케이스 및 상기 테스트 케이스의 실행 및 관리하기 위한 테스트 실행 관리 모듈을 포함하고 있는 것을 특징으로 한다.Preferably, the test system includes a test case and a test execution management module for executing and managing the test case.

바람직하게는, 상기 시뮬레이션 시스템은 요구되는 특정 시뮬레이션을 수행하는 시뮬레이션 모델과 상기 시뮬레이션 모델의 제어를 위한 스케줄 제어명령을 생성, 제어하고, 시뮬레이션 결과를 수집 관리하는 시뮬레이션 커널을 포함하는 것을 특징으로 한다.Preferably, the simulation system is characterized in that it comprises a simulation model for performing a specific simulation required, and a simulation kernel for generating and controlling a schedule control command for controlling the simulation model, and collect and manage the simulation results.

상기한 목적을 달성하기 위하여 본 발명은 물리적으로 분리된 테스트 시스템과 이산사건기반 시뮬레이션 시스템 사이의 시뮬레이션 연동 테스트 방법에 있어서, In order to achieve the above object, the present invention provides a simulation interworking test method between a physically separated test system and a discrete event-based simulation system,

테스트 클럭 관리자가 테스트 실행 관리 모듈로부터 시뮬레이션 이벤트에 대한 타이머 등록 요청을 받아, 타이머 관리 큐에 상기 테스트 시스템의 시간을 기준으로 하는 상기 타이머와 관련된 정보를 저장하는 단계, 테스트 클럭 관리자가 상기 타이머 관련 정보를 시뮬레이션 시스템 상의 테스트 클럭 인터페이스 모듈로 전송하여 시뮬레이션 시스템 상에서의 타이머 등록을 요청하는 단계; 테스트 클럭 인터페이스 모듈이 테스트 클럭 관리자로부터 타이머 등록 요청을 수신하면 시뮬레이션 커널로부터 현재 시간을 취득하여 시뮬레이션 시간을 기준으로 타임아웃 기간을 산정하고 이를 시뮬레이션 커널에 타이머를 등록하는 단계를 포함하는 것에 의해, 상기 시뮬레이션 시간을 기반으로 상기 시뮬레이션 시스템과 상기 테스트 시스템의 시간 진행을 동기화하는 것을 특징으로 한다.A test clock manager receives a timer registration request for a simulation event from a test execution management module, and stores information related to the timer based on the time of the test system in a timer management queue. Sending a request to the test clock interface module on the simulation system to request timer registration on the simulation system; And when the test clock interface module receives the timer registration request from the test clock manager, obtains a current time from the simulation kernel, calculates a timeout period based on the simulation time, and registers the timer with the simulation kernel. It is characterized by synchronizing the time progress of the simulation system and the test system based on the simulation time.

바람직하게는 상기 테스트 실행 관리 모듈이 등록된 타임아웃 기간 전에 상기 시뮬레이션 시스템으로부터 이벤트 결과 메시지를 수신하는 경우, 상기 테스트 실행 관리 모듈은 상기 테스트 클럭 관리자에게 해당 타이머의 취소 요청을 하는 단계 테스트 클럭 관리자가 상기 타이머 취소 요청을 수신하면, 해당 타이머와 관련된 정보를 상기 타이머 관리 큐에서 삭제하는 단계를 포함하는 것을 특징으로 한다.Preferably, when the test execution management module receives an event result message from the simulation system before a registered timeout period, the test execution management module requests the test clock manager to cancel the timer. And upon receipt of the timer cancellation request, deleting information associated with the timer from the timer management queue.

바람직하게는, 상기 테스트 실행 관리 모듈이 상기 등록된 타임아웃 기간 전에 상기 시뮬레이션 시스템으로부터 이벤트 결과 메시지를 수신하지 못하는 경우, 시뮬레이션 커널이 타임아웃 이벤트를 테스트 클럭 인터페이스에 전달하는 단계; 타임아웃 이벤트를 전달받은 상기 테스트 클럭 인터페이스 모듈이, 테스트 클럭 관리자에게 타임아웃을 통보하는 단계; 테스트 클럭 관리자가 테스트 실행 관리 모듈에게 해당 타이머의 타임아웃 발생을 통보하는 단계; 테스트 클럭 관리자가 해당 타이머와 관련된 정보를 상기 타이머 관리 큐에서 삭제하는 단계를 포함하는 것을 특징으로 한다.Advantageously, if the test execution management module fails to receive an event result message from the simulation system before the registered timeout period, the simulation kernel forwarding a timeout event to a test clock interface; The test clock interface module receiving the timeout event, notifying a test clock manager of a timeout; A test clock manager notifying a test execution management module of occurrence of a timeout of a corresponding timer; And deleting, by the test clock manager, information related to the timer from the timer management queue.

바람직하게는, 상기 테스트 클럭 관리자가 테스트 실행 관리 모듈의 타이머 취소 요청에 따라 해당 타이머를 상기 타이머 관리 큐에서 삭제하는 단계는, 테스트 클럭 관리자가, 상기 테스트 클럭 인터페이스 모듈에 대하여 해당 타이머에 대한 취소 요청을 하는 단계 및 취소 요청을 수신한 테스트 클럭 인터페이스 모듈은 시뮬레이션 커널에 등록된 타이머를 삭제하는 단계를 포함하는 것을 특징으로 한다.Preferably, when the test clock manager deletes the timer from the timer management queue according to a timer cancellation request of a test execution management module, the test clock manager requests a cancellation of the corresponding timer to the test clock interface module. And the test clock interface module receiving the cancel request includes deleting a timer registered in the simulation kernel.

바람직하게는, 상기 타이머와 관련된 정보에는 타이머의 소유자, 타임아웃 시 동봉되는 파라미터 정보를 더 포함하는 것을 특징으로 한다.Preferably, the information related to the timer further includes the owner of the timer and parameter information enclosed at the timeout.

바람직하게는, 상기 테스트 클럭 인터페이스 모듈이 시뮬레이션 시간을 기준으로 타임아웃 기간을 산정하고 이를 시뮬레이션 커널 타이머에 등록하는 단계는, 산정된 타임아웃 기간을 이용하여 상기 시뮬레이션 커널에 타임아웃 이벤트를 등록하는 것을 특징으로 한다.Preferably, the step of calculating the timeout period based on the simulation time and registering the timeout period with the simulation kernel timer may include registering the timeout event with the simulation kernel using the calculated timeout period. It features.

바람직하게는, 상기 테스트 클럭 관리자가 상기 타이머와 관련된 정보를 저장하는 단계는, 테스트 클럭 관리자가 상기 테스트 실행 관리 모듈로부터 시뮬레이션 이벤트에 대한 타이머 등록을 요청받으면 타이머 식별자를 생성하고, 타이머 식별자, 이벤트 소유자 및 파라미터를 타이머 관리 큐에 저장하는 단계로 이루어지는 것을 특징으로 한다.Preferably, the storing of information related to the timer by the test clock manager may include generating a timer identifier when a test clock manager is requested to register a timer for a simulation event from the test execution management module, and includes a timer identifier and an event owner. And storing the parameter in a timer management queue.

바람직하게는, 상기 식별자는 테스트 시작 시점부터 타이머 등록 시 마다 순차적으로 증가하는 정수로 정의되고, 테스트 실행 관리 모듈은 상기 타이머 취소 요청 시에 상기 타이머 식별자를 사용하는 것을 특징으로 한다.Preferably, the identifier is defined as an integer that is sequentially incremented every time a timer is registered from a test start time, and the test execution management module uses the timer identifier when the timer cancel request is made.

본 발명에 따른 시뮬레이션 모델 테스트 연동 구성에서는 실시간보다 빠르게 진행되는 시뮬레이션 시스템을 사용하는 경우에, 실시간보다 빠르게 테스트를 진행함으로써, 테스트 수행 속도를 향상시킬 수 있으며, 또한, 실시간보다 느리게 진행되는 시뮬레이션 시스템을 연동한 테스트를 가능하게 한다. In the simulation model test linkage configuration according to the present invention, when using a simulation system that proceeds faster than real time, by performing the test faster than real time, it is possible to improve the test execution speed, and also to simulate a slower than the real-time simulation system Enable interlocked testing.

도 1은 본 발명에 따른 시뮬레이션 시스템의 이벤트 관리 구조를 도시한 도면
도 2는 실시간 진행 방식을 따르는 시뮬레이션 수행 절차를 도시한 도면
도 3은 실시간보다 빠른 경우의 ASAP 시간 진행 방식을 따르는 시뮬레이션 수행 절차를 도시한 도면
도 4는 실시간보다 느린 경우의 ASAP 시간 진행 방식을 따르는 시뮬레이션 수행 절차를 도시한 도면
도 5는 본 발명을 따르는 시뮬레이션 모델 테스트를 위한 테스트 시스템과 시뮬레이션 시스템 간의 연동 구성을 도시한 도면
도 6은 본 발명을 따르는 테스트 시스템을 도시한 도면
도 7은 본 발명을 따르는 시뮬레이션 시스템을 도시한 도면
도 8은 본 발명을 따르는 시뮬레이션 모델 테스트 방법에서의 테스트 시스템(10)과 시뮬레이션 시스템 사이의 시간 진행 동기화 방법에 대해서 도시한 도면
도 9는 본 발명에 따른 시뮬레이션 모델 테스트 방법에서의 테스트 시스템과 시뮬레이션 시스템 사이의 시간 진행 동기화 방법에 있어서, 타임아웃 이전에 등록된 타이머를 취소하는 절차에 대해서 도시한 도면
도 10은 본 발명에 따른 시뮬레이션 모델 테스트 방법에서의 테스트 시스템과 시뮬레이션 시스템 사이의 시간 진행 동기화 방법에 있어서, 타임아웃 처리 절차를 도시한 도면
도 11은 종래 시뮬레이션 모델 테스트를 위한 테스트 시스템과 시뮬레이션 시스템 간의 연동 구성을 도시한 도면
도 12는 시간 간격 측면에서의 테스트 시스템과 시뮬레이션 시스템 간의 시간 동기화 문제를 도시한 도면이다.
1 is a diagram illustrating an event management structure of a simulation system according to the present invention.
2 is a diagram illustrating a simulation performing procedure according to a real-time progression scheme.
FIG. 3 is a diagram illustrating a simulation performing procedure according to an ASAP time progress method when it is faster than real time.
4 is a diagram illustrating a simulation performing procedure according to an ASAP time progression method when it is slower than real time.
5 is a diagram illustrating an interlocking configuration between a test system and a simulation system for testing a simulation model according to the present invention.
6 illustrates a test system in accordance with the present invention.
7 shows a simulation system according to the invention.
8 is a diagram illustrating a time progress synchronization method between a test system 10 and a simulation system in a simulation model test method according to the present invention.
9 is a diagram illustrating a procedure of canceling a timer registered before timeout in a method of synchronizing time progress between a test system and a simulation system in a simulation model test method according to the present invention;
FIG. 10 is a diagram illustrating a timeout processing procedure in a time progress synchronization method between a test system and a simulation system in a simulation model test method according to the present invention.
11 is a diagram illustrating an interlocking configuration between a test system and a simulation system for a conventional simulation model test.
12 illustrates a time synchronization problem between a test system and a simulation system in terms of time intervals.

첨부한 도 1은 본 발명에 따른 시뮬레이션 시스템의 이벤트 관리 구조를 도시하고 있다. 시뮬레이션 시스템은 시뮬레이션의 시작 시점에서 시뮬레이션 시간을 0으로 설정하고, 시뮬레이션 커널이 시뮬레이션 시스템의 제어권을 갖고 작업을 수행한다. 시뮬레이션 커널이 해당 시뮬레이션 시간에서 수행해야 하는 작업이 완료되면 이벤트 리스트에서 현재의 시뮬레이션 시간으로부터 가장 빨리 발생하도록 등록된 이벤트 발생 시점으로 시뮬레이션 시간을 변경한다. 그리고 현재의 시뮬레이션 시간에 처리가 필요한 이벤트를 모델에게 전달하고, 시뮬레이션 시스템의 제어권을 모델에게 이관한다. 모델은 발생된 이벤트를 처리하고 처리가 종료되면, 시뮬레이션 시스템의 제어권을 다시 시뮬레이션 커널에게 이관한다. 모델이 이벤트를 처리하는 동안 시뮬레이션 시간은 변동되지 않는다. 제어권을 이관받은 시뮬레이션 커널은 다시 위의 처리 작업을 반복 수행함으로써 시뮬레이션 시간이 진행되게 된다.1 shows an event management structure of a simulation system according to the present invention. The simulation system sets the simulation time to zero at the start of the simulation, and the simulation kernel takes control of the simulation system to perform work. When the simulation kernel completes its work at the simulation time, it changes the simulation time from the event list to the time when the registered event occurs so that it occurs as soon as possible from the current simulation time. Then, events that need processing at the current simulation time are transferred to the model, and control of the simulation system is transferred to the model. The model handles the generated events and, when the processing is finished, transfers control of the simulation system back to the simulation kernel. The simulation time does not change while the model processes the event. The simulation kernel, which has been transferred to the control right, performs the above processing again, and the simulation time proceeds.

첨부한 도 2 내지 도 4는 시뮬레이션 시스템의 이벤트 진행 방식에 있어서 본 발명을 따르는 ASAP 시간 진행 방식과 실시간 진행 방식을 서로 대조하여 도시하고 있다. 2 to 4 show contrasts between the ASAP time progress method and the real time progress method according to the present invention in the event progress method of the simulation system.

도 2의 실시간 시간 진행 방식은 시뮬레이션을 실시간(Wall Clock) 시간으로 진행하기 위한 시간 진행 방식으로 이벤트를 처리하기 전에 실시간이 이벤트 처리 시간이 될 때까지 대기하였다가 이벤트를 처리하는 방식으로서, 시뮬레이션에서 이벤트를 처리할 때 실제시간이 이벤트 처리시간이 될 때까지 시뮬레이션을 지연시켜 실제시간과 시뮬레이션 시간이 동일한 속도로 진행되도록 시간 진행을 수행하는 방식이다. 이러한 실시간 시간 진행 방식에서는 시뮬레이션이 실시간보다 빠르게 진행되는 테스트에서는 사용 가능하지만, 시뮬레이션이 실시간보다 느리게 진행되는 시뮬레이션에서는 시간 진행이 불가하다. 현재의 테스트 시스템과 시뮬레이션 시스템 간을 연동한 테스트구조에서는 이러한 실시간 진행 방식을 이용하기 때문에 연동테스트에서 테스트 수행 시간을 실시간 진행 이상으로 빠르게 수행할 수 없는 문제점을 가지고 있다. The real-time time progression method of FIG. 2 is a time progression method for progressing the simulation to a wall clock time and waits until the real time becomes the event processing time and processes the event before processing the event. When processing an event, it delays the simulation until the actual time becomes the event processing time, so that the time progress is performed so that the real time and the simulation time proceed at the same speed. In this real-time time-driven approach, simulations can be used for tests that run faster than real-time, but not for simulations where simulations run slower than real-time. In the test structure that interoperates between the current test system and the simulation system, such a real-time progress method is used, and thus, a test execution time cannot be performed faster than the real-time progress in the interlock test.

반면, 도 3 및 도 4에 도시된 ASAP 시간 진행 방식은 실시간과 시뮬레이션 시간과의 연관관계를 배제하고 시뮬레이션을 최대한 빠르게 수행하기 위한 시간 진행 방법으로서, 실시간 진행이 필요한 특수한 상황을 제외한 모든 시뮬레이션은 ASAP 방식으로 수행된다. ASAP 방식의 시간 진행 방식에서는 시뮬레이션에서의 시간 진행과 실시간의 시간 진행은 상이하게 된다. 도 3에서는 실시간보다 빠르게 진행되는 시뮬레이션을 ASAP 방식으로 수행하는 경우를 도시하고 있는데, 이 경우 시뮬레이션 시간이 실시간보다 빠르게 진행되어 두 시스템간 시간 불일치로 인해 테스트 시스템과 시뮬레이션 시스템 간 연동테스트 수행이 불가하게 된다. 한편, 도 4에서는 시뮬레이션이 복잡하여 실시간보다 느리게 진행되는 시뮬레이션을 ASAP 방식으로 수행하는 경우를 도시하고 있다. 이 경우, 시뮬레이션 시간이 실시간보다 느리게 진행되어 두 시스템간 시간 불일치로 인해 테스트 시스템과 시뮬레이션 시스템간 연동테스트 수행이 불가하게 된다. 그러나, 본 발명에서는, ASAP 방식으로 시간 진행이 이뤄지는 시뮬레이션 시스템에 있어서, 테스트 시스템의 시간 진행을 시뮬레이션 시스템의 시간 진행과 동기화시켜, 시뮬레이션이 실시간보다 빠르게 진행되는 경우에도 보다 빠른 속도로 연동테스트 수행을 가능하게 하는 것과 더불어 시뮬레이션이 실시간보다 느리게 진행되는 경우에도 연동테스트 시간이 실시간보다 느려지지만 테스트 수행을 가능하게 한다.On the other hand, the ASAP time progression method shown in FIGS. 3 and 4 is a time progression method for performing the simulation as quickly as possible without removing the relationship between the real time and the simulation time, and all simulations except the special situation requiring the real time progression are performed in ASAP. Is done in a manner. In the time advance method of the ASAP method, the time progress in the simulation and the time progress in real time are different. FIG. 3 illustrates a case in which the ASAP method is used to perform a simulation that progresses faster than real time. In this case, the simulation time is faster than real time, and thus, the interworking test between the test system and the simulation system cannot be performed due to a time mismatch between the two systems. do. Meanwhile, FIG. 4 illustrates a case in which the simulation is performed in a ASAP manner because the simulation is complicated and slower than real time. In this case, the simulation time is slower than real time, and the interworking test between the test system and the simulation system is impossible due to the time mismatch between the two systems. However, in the present invention, in a simulation system in which time progress is performed by the ASAP method, the time progress of the test system is synchronized with the time progress of the simulation system, so that even when the simulation proceeds faster than real time, the interlock test is performed at a higher speed. In addition to enabling this, even if the simulation runs slower than real time, the interlock test time is slower than real time, but test execution is possible.

이하에서는 도 5를 참조하여, 본 발명을 따르는 시뮬레이션 모델 테스트를 위한 시스템 및 연동 구성을 상세히 설명한다. 도 5에서는 본 발명을 따르는 테스트 시스템(10)과 시뮬레이션 시스템(20)으로 구성되는 시뮬레이션 모델 테스트 구조를 도시하고 있다. 본 발명에 따른 테스트 시스템(10)은 테스트 케이스(11), 테스트 케이스(11)의 실행 관리를 위한 테스트 실행 관리 모듈(12) 및 시뮬레이션 시간과의 동기화를 위한 테스트 클럭 관리자 모듈(14)을 포함한다. 본 발명에 따른 시뮬레이션 시스템(20)은 시뮬레이션 모델(21)과, 테스트 시스템(11)의 타이머 관리를 위한 테스트 클럭 인터페이스 모듈(24) 및 시뮬레이션 커널(22)을 포함한다. 또한 테스트 시스템(10)과 시뮬레이션 시스템(20)은 모두 각각의 시스템을 운영하기 위한 운영체제(13,23)를 포함하고 있다. 도 5에서 도시된 바와 같이, 테스트 시스템(10)의 테스트 클럭 관리자 모듈(14)은 시뮬레이션 시스템(10)의 테스트 클럭 인터페이스 모듈(24)과 서로 연동되어 있다.Hereinafter, with reference to Figure 5, the system and interlocking configuration for the simulation model test according to the present invention will be described in detail. 5 shows a simulation model test structure composed of a test system 10 and a simulation system 20 according to the present invention. The test system 10 according to the present invention includes a test case 11, a test execution management module 12 for managing the execution of the test case 11, and a test clock manager module 14 for synchronizing with the simulation time. do. The simulation system 20 according to the present invention includes a simulation model 21, a test clock interface module 24 and a simulation kernel 22 for timer management of the test system 11. In addition, the test system 10 and the simulation system 20 both include operating systems 13 and 23 for operating the respective systems. As shown in FIG. 5, the test clock manager module 14 of the test system 10 is interlocked with the test clock interface module 24 of the simulation system 10.

도 6에서는 본 발명에 따른 테스트 시스템(10)을 구체적으로 도시하고 있다. 본 발명에 따른 테스트 시스템(10)은 복수 개의 테스트 케이스(11)와 상기 복수 개의 테스트 케이스(11)의 실행 관리를 위한 테스트 실행 관리 모듈(12)을 구비하고, 시뮬레이션 시간과의 동기화를 위한 테스트 클럭 관리자 모듈(14) 및 운영체제(13)를 포함한다. 테스트 클럭 관리자 모듈(14)은 타이머 관리 큐(15)를 더 구비하고, 상기 복수 개의 테스트 케이스(11) 각각의 타이머와 관련된 정보로써 각각의 테스트 케이스(11)에 대한 타이머 식별자를 생성하고, 상기 타이머 식별자와 테스트 케이스 발생 시간 및 타이머 소유자, 파라미터를 타이머 관리 큐(15)에 저장한다. 테스트 클럭 관리자 모듈(14)은 시뮬레이션 시스템의 이벤트들에 대한 타이머들을 관리하며, 테스트 시스템의 테스트 클럭 관리자 인터페이스 모듈(24)과 연동 되고, 다음과 같은 세가지 기능을 수행한다. 첫째, 타이머 등록 기능으로서 테스트 실행 관리 모듈(12)로부터 테스트 시스템 이벤트에 대한 타이머 등록 요청을 받으면 새로운 타이머 식별자를 부여한 후 타이머 관리 큐(15)에 관련 정보를 저장 관리한다. 또한, 등록된 타이며 관련 정보를 시뮬레이션 시스템(20) 상의 테스트 클럭 인터페이스 모듈(24)로 전송함으로써 시뮬레이션 시스템(20) 상에서의 타이머 등록을 요청한다. 둘째, 타이머 취소 기능으로 테스트 실행 관리 모듈(12)이 시뮬레이션 시스템(20)의 이벤트 결과 메시지를 타임아웃 시간 전에 수신할 경우, 테스트 클럭 관리자 모듈(14)은 테스트 실행 관리 모듈(12)의 타이머 취소 요청에 따라 해당 타이머를 삭제한다. 셋째, 타임아웃 통보 기능으로, 시뮬레이션 시스템(20)의 이벤트가 타임아웃 기간 내에 종료되지 않은 경우 테스트 클럭 관리자 모듈(14)은 테스트 실행관리 모듈(12)에게 타임아웃을 통보한다. 6 specifically illustrates a test system 10 according to the present invention. The test system 10 according to the present invention includes a plurality of test cases 11 and a test execution management module 12 for execution management of the plurality of test cases 11, and a test for synchronization with simulation time. A clock manager module 14 and an operating system 13. The test clock manager module 14 further includes a timer management queue 15, generates a timer identifier for each test case 11 as information related to timers of each of the plurality of test cases 11, and The timer identifier, the test case occurrence time, the timer owner, and the parameters are stored in the timer management queue 15. The test clock manager module 14 manages timers for events of the simulation system, and interworks with the test clock manager interface module 24 of the test system, and performs three functions as follows. First, when a timer registration request for a test system event is received from the test execution management module 12 as a timer registration function, a new timer identifier is assigned and then related information is stored and managed in the timer management queue 15. In addition, the registered registration information is transmitted to the test clock interface module 24 on the simulation system 20 by requesting registration of the timer on the simulation system 20. Second, when the test execution management module 12 receives the event result message of the simulation system 20 before the timeout time by the timer cancel function, the test clock manager module 14 cancels the timer of the test execution management module 12. Delete the timer as requested. Third, with the timeout notification function, the test clock manager module 14 notifies the test execution management module 12 of the timeout when the event of the simulation system 20 does not end within the timeout period.

도 7에서는 본 발명에 따른 시뮬레이션 시스템(20)의 구성을 구체적으로 도시하고 있다. 시뮬레이션 시스템(20)은 시뮬레이션 모델(21)과, 해당 시뮬레이션 모델(21)의 제어를 위한 스케줄 제어명령을 생성, 제어하고, 시뮬레이션 결과를 수집 관리하는 시뮬레이션 커널(22) 및 테스트 시스템(10)의 타이머 관리를 위한 테스트 클럭 인터페이스 모듈(24)과 운영체제(23)를 포함한다. 테스트 클럭 인터페이스 모듈(24)은 시뮬레이션 시간을 기준으로 하는 타임아웃 시간을 산정하고, 타임아웃 이벤트를 생성하며, 각각의 타임아웃 이벤트들에 대한 식별자 정보와 상기 타임아웃 이벤트를 시뮬레이션 커널(22)에 저장한다. 또한, 테스트 클럭 인터페이스 모듈(24)은 테스트 시스템(10)의 각 타이머의 타임아웃 이전의 타이머 취소 또는 타임아웃 이벤트 발생시 테스트 시스템으로 전달할 타이머 식별자를 유지하기 위해 타이머 테이블에 타이머 식별자와 시뮬레이션 커널(22)에서 계획된 이벤트 식별자 정보를 저장한다. 또한, 시뮬레이션 시스템(20)의 테스트 클럭 인터페이스 모듈(24)은 시뮬레이션 커널(22)과 연결되어 시뮬레이션 시스템(22) 상의 타이머 등록/최소 및 시뮬레이션 시간 기준에서의 타임아웃 시간 산정 기능을 수행한다. 또한, 테스트 클럭 인터페이스 모듈(24)은 테스트 클럭 관리자 모듈(14)의 요청에 대하여 시뮬레이션 시간을 측정하여 시뮬레이션 시간으로 테스트 클럭 관리자 모듈(14)이 요청한 시간이 되면 테스트 클럭 관리자 모듈(14)에게 요청된 시간이 도래하였음을 통보하는 역할을 수행한다. 7 illustrates the configuration of the simulation system 20 according to the present invention in detail. The simulation system 20 generates a simulation model 21, a schedule control command for the control of the simulation model 21, and generates a simulation control command and collects and manages simulation results of the simulation kernel 22 and the test system 10. A test clock interface module 24 and an operating system 23 for timer management are included. The test clock interface module 24 calculates a timeout time based on the simulation time, generates a timeout event, and sends identifier information for each timeout event and the timeout event to the simulation kernel 22. Save it. The test clock interface module 24 also includes a timer identifier and a simulation kernel 22 in the timer table to maintain a timer identifier to be passed to the test system when a timer cancels or timeout event occurs before each timer in the test system 10. ) Stores planned event identifier information. In addition, the test clock interface module 24 of the simulation system 20 is connected to the simulation kernel 22 to perform timer registration / minimum on the simulation system 22 and timeout time calculation based on the simulation time reference. In addition, the test clock interface module 24 measures the simulation time with respect to the request of the test clock manager module 14 and requests the test clock manager module 14 when the test clock manager module 14 reaches the requested time as the simulation time. It informs the arrival of the time.

도 8에서는 본 발명에 따른 시뮬레이션 모델 테스트 방법에서의 테스트 시스템(10)과 시뮬레이션 시스템(20) 사이의 시간 진행 동기화 방법에 대해서 도시하고 있다. 도 8에서 도시된 바와 같이, 본 발명의 테스트 클럭 관리자 모듈(14)은 다음과 같이 동작한다.8 illustrates a time progress synchronization method between the test system 10 and the simulation system 20 in the simulation model test method according to the present invention. As shown in Fig. 8, the test clock manager module 14 of the present invention operates as follows.

우선, ASAP 방식으로 동작하는 이산사건기반 시뮬레이션 시스템(20)과 연동된 상황에서 테스트 클럭 관리자 모듈(14)이 테스트 실행 관리 모듈(12)로부터 시뮬레이션 이벤트에 대한 타이머 등록 요청을 받으면 시뮬레이션 시스템(20)과 동일하게 관리할 특정 타이머 식별자를 생성하여, 이를 테스트 실행 관리 모듈(12)에게 통보하고, 타이머 식별자 이벤트 소유자, 파라미터를 타이머 관리 큐(15)에 저장한다(S10). 타이머 등록 요청에는 타이머의 소유자 타임아웃 기간 그리고 타임아웃 시 동봉될 파라미터 정보가 포함된다. 파라미터 정보는 테스트 케이스(11) 및 테스트 목적에 따라 다양한 형태와 내용이 될 수 있다. 또한, 타이머 식별자는 테스트 시작 시점부터 타이머 등록마다 순차적으로 증가하는 정수로 정의되고, 테스트 실행 관리 모듈(12)은 타이머 식별자를 타임아웃 이전에 타이머를 취소할 때 사용한다. 다음으로, 테스트 클럭 관리자 모듈(14)은 생성된 타이머 식별자와 타임아웃 기간을 포함하는 타이머 등록 요청 메시지를 제작하여 시뮬레이션 시스템(20)의 테스트 클럭 인터페이스 모듈(24)로 전달함으로써 타이머 등록 요청을 수행한다.(S20) First, when the test clock manager module 14 receives a timer registration request for a simulation event from the test execution management module 12 in a situation in which the discrete event-based simulation system 20 operates in the ASAP method, the simulation system 20 In step S10, a specific timer identifier to be managed is generated and notified to the test execution management module 12, and the timer identifier event owner and the parameters are stored in the timer management queue 15. The timer registration request includes the owner timeout period of the timer and parameter information to be enclosed at the timeout. The parameter information may be in various forms and contents depending on the test case 11 and the test purpose. In addition, the timer identifier is defined as an integer that is sequentially incremented for each timer registration from the test start time, and the test execution management module 12 uses the timer identifier when canceling the timer before timeout. Next, the test clock manager module 14 performs a timer registration request by generating a timer registration request message including a generated timer identifier and a timeout period, and delivering the message to the test clock interface module 24 of the simulation system 20. (S20)

다음으로, 테스트 클럭 인터페이스 모듈(24)은 테스트 시스템(10)의 테스트 클럭 관리자 모듈(14)로부터 타이머 등록 메시지를 수신하면, 시뮬레이션 커널(22)로부터 현재의 시뮬레이션 시간을 취득하여 시뮬레이션 시간 기준으로 타임아웃 시간을 산정하고, 이를 이용하여 시뮬레이션 커널(22)에 타임아웃 이벤트를 등록한다(S30). 이때, 테스트 클럭 인테페이스 모듈(24)은 해당 타이머의 타임아웃 이전 취소 또는 타임아웃 이벤트 발생 시, 테스트 시스템(10)으로 전달할 타이머 식별자를 유지하기 위하여 타이머 테이블에 타이머 식별자와 시뮬레이션 커널(22)에 계획된 이벤트 식별자 정보를 저장한다. Next, when the test clock interface module 24 receives the timer registration message from the test clock manager module 14 of the test system 10, the test clock interface module 24 obtains the current simulation time from the simulation kernel 22, and then determines the time based on the simulation time. The timeout event is calculated and the timeout event is registered in the simulation kernel 22 using the same (S30). At this time, the test clock interface module 24 is configured in the timer table and the simulation kernel 22 in the timer table to maintain a timer identifier to be delivered to the test system 10 when the timer cancels before the timeout or when a timeout event occurs. Stores event identifier information.

이러한 경량화된 테스트 클럭 인터페이스 프로토콜을 탑재한 ASAP 방식 이산사건기반 시뮬레이션 시스템은 테스트 시스템과 시간 동기를 위한 프로토콜 오버 헤드가 매우 작고, 특히 불필요한 시뮬레이션 지연을 제거하여 주기 때문에 시뮬레이션 수행 속도 및 테스트 수행 속도를 최대로 유지할 수 있는 장점이 있다. ASAP-based discrete event-based simulation system equipped with this lightweight test clock interface protocol has a very small protocol overhead for test system and time synchronization, and eliminates unnecessary simulation delays. There is an advantage that can be maintained.

도 9에서는, 본 발명에 따른 시뮬레이션 모델 테스트 방법에서의 테스트 시스템(10)과 시뮬레이션 시스템(20) 사이의 시간 진행 동기화 방법에 있어서, 타임아웃 이전에 등록된 타이머를 취소하는 절차(S50)에 대해서 도시하고 있다. 타임아웃 이전에 등록된 타이머 취소 처리 절차는 테스트 실행 관리 모듈(12)이 테스트 수행 중 정상적인 테스트 완료와 같은 상황이 발생되는 경우, 기 등록된 타이머를 해제할 때 사용된다. 상기 절차를 제외한 나머지 단계는 도 8 및 도 10에서 도시된 내용과 동일한바, 등록된 타이머를 취소하는 절차에 대해서만 도 9를 참조하여 상세하게 설명한다.In FIG. 9, in the time progress synchronization method between the test system 10 and the simulation system 20 in the simulation model test method according to the present invention, a procedure (S50) of canceling a timer registered before a timeout is described. It is shown. The timer cancellation processing procedure registered before the timeout is used when the test execution management module 12 releases the previously registered timer when a situation such as normal test completion occurs during the test execution. Except for the above procedure, the remaining steps are the same as those shown in FIGS. 8 and 10, and the procedure for canceling the registered timer will be described in detail with reference to FIG. 9.

등록된 타이머에 대해 타임아웃 시간이 도래하기 전에 시뮬레이션 시스템(20)이 이벤트 결과를 통보할 경우, 테스트 실행 관리 모듈(12)은 이전 타이머 등록 시 테스트 클럭 관리자 모듈(14)로부터 전달받은 타이머 식별자를 포함하는 타이머 취소 통보를 테스트 클럭 관리자 모듈(14)에게 전달하여, 해당 타이머에 대한 취소 요청을 한다(S51)When the simulation system 20 notifies the event result before the timeout time for the registered timer arrives, the test execution management module 12 receives the timer identifier received from the test clock manager module 14 when registering the previous timer. The timer cancellation notification is transmitted to the test clock manager module 14, and a cancellation request for the corresponding timer is performed (S51).

다음으로, 테스트 실행 관리 모듈(12)로부터 타이머의 삭제 요청을 수신한 테스트 클럭 관리자 모듈(14)은 타이머 관리 큐(15)에서 타이머 식별자가 동일한 타이머 정보를 삭제하여 등록된 타이머를 취소한다(S52)Next, the test clock manager module 14 receiving the request for deleting the timer from the test execution management module 12 cancels the registered timer by deleting timer information having the same timer identifier from the timer management queue 15 (S52). )

바람직하게는 테스트 클럭 관리자 모듈(14)은 타이머 관리 큐(15)에서 타이머의 정보를 삭제한 뒤, 타이머 삭제 요청 메시지를 제작하여 테스트 클럭 인터페이스 모듈(24)로 전달한다. 이러한 삭제 요청은 해당 타이머의 타임아웃 시간이 도래했을 때, 테스트 클럭 인터페이스 모듈(24)로부터 불필요한 메시지 전송을 없게 하기 위함이다. 테스트 클럭 인터페이스 모듈(24)은 상기 취소 요청을 수신하면, 타이머 식별자와 연관된 이벤트 식별자를 타이머 테이블에서 추출하고, 이벤트 식별자를 이용하여 시뮬레이션 커널(22)에 계획된 타임아웃 이벤트를 취소하고 타이머 테이블에서 취소된 타이머의 정보를 제거한다. Preferably, the test clock manager module 14 deletes the information of the timer from the timer management queue 15, and then, generates a timer deletion request message and transmits it to the test clock interface module 24. This deletion request is for avoiding unnecessary message transmission from the test clock interface module 24 when the timeout time of the corresponding timer arrives. Upon receiving the cancellation request, the test clock interface module 24 extracts an event identifier associated with the timer identifier from the timer table, cancels the timeout event scheduled in the simulation kernel 22 using the event identifier, and cancels from the timer table. Removes information about a used timer.

도 10에서는, 본 발명에 따른 시뮬레이션 모델 테스트 방법에서의 테스트 시스템과 시뮬레이션 시스템 사이의 시간 진행 동기화 방법에 있어서, 타임아웃 처리 절차(S60)에 대해서 도시하고 있다. 상기 절차를 제외한 나머지 단계는 도 8 및 도 9에서 도시된 내용과 동일한바, 타임아웃 처리 절차에 대해서만 도 10을 참조하여 상세하게 설명한다.In FIG. 10, the timeout processing procedure S60 is shown in the time progress synchronization method between the test system and the simulation system in the simulation model test method according to the present invention. The remaining steps except for the above procedure are the same as those shown in FIGS. 8 and 9, and the timeout processing procedure will be described in detail with reference to FIG. 10 only.

시뮬레이션 커널(22)은 요청된 타임아웃 시간이 경과하면, 타임아웃 이벤트를 테스트 클럭 인터페이스 모듈(24)에 전달한다(S61).When the requested timeout time elapses, the simulation kernel 22 transmits a timeout event to the test clock interface module 24 (S61).

다음으로, 타임아웃 이벤트를 수신한 테스트 클럭 인터페이스 모듈(24)은 타이머 테이블로부터 테스트 시스템(10)에서 관리하는 타이머 식별자를 추출하여, 타이머 종료 통보 메시지를 생성하여 테스트 시스템(10)의 테스트 클럭 관리자 모듈(14)에게 전달한다.(S62)Next, the test clock interface module 24 having received the timeout event extracts a timer identifier managed by the test system 10 from the timer table, generates a timer end notification message, and generates a test clock manager of the test system 10. Transfer to module 14 (S62).

다음으로, 타이머 종료 통보 메시지를 수신한 테스트 클럭 관리자 모듈(14)은 타이머 관리 큐(15)에 저장된 등록된 타이머 중 타이머 종료 통보 메시지에 기재된 타이머 식별자와 일치하는 타이머의 소유자인 테스트 실행 관리 모듈(12)에게 타이머 등록 시에 요청된 파라미터 정보를 포함하여 전달하고(S63), 타이머 관리 큐(15)에 저장된 타이머를 관리 큐에서 삭제한다(S64).
Next, the test clock manager module 14 having received the timer end notification message receives a test execution management module that is the owner of the timer that matches the timer identifier described in the timer end notification message among the registered timers stored in the timer management queue 15. 12, the controller transmits the parameter information requested at the time of registering the timer (S63), and deletes the timer stored in the timer management queue 15 from the management queue (S64).

10: 테스트 시스템 11: 테스트 케이스
12: 테스트 실행 관리 모듈 13: 운영체제
14: 테스트 클럭 관리자 모듈 15: 타이머 관리 큐
20: 시뮬레이션 시스템 21: 시뮬레이션 모델
22: 시뮬레이션 커널 23: 운영체제
24: 테스트 클럭 인터페이스 모듈
10: Test System 11: Test Case
12: Test Execution Management Module 13: Operating System
14: Test Clock Manager Module 15: Timer Management Queue
20: simulation system 21: simulation model
22: Simulation Kernel 23: Operating System
24: test clock interface module

Claims (11)

ASAP 방식으로 시뮬레이션 시간 진행을 수행하는 이산사건기반 시뮬레이션 시스템 및 상기 시뮬레이션 시스템과 물리적으로 분리되고, 상기 시뮬레이션 시스템과 테스트 대상 시스템을 제어하여 테스트를 수행하는 테스트 시스템을 포함하는 시뮬레이션 모델 테스트 시스템에 있어서,
상기 시뮬레이션 시스템은 테스트 시스템의 타이머 관리를 위한 테스트 클럭 인터페이스 모듈을 구비하고,
상기 테스트 시스템은 상기 시뮬레이션 시간과의 동기화를 위한 타이머 관리 큐를 포함하는 테스트 클럭 관리자 모듈을 구비하고,
상기 테스트 클럭 관리자 모듈은 상기 테스트 클럭 인터페이스 모듈과 연동되어, 상기 시뮬레이션 시간을 기반으로 상기 시뮬레이션 시스템과 상기 테스트 시스템의 시간 진행을 동기화하는 것을 특징으로 하는 시뮬레이션 모델 테스트 시스템.
In the simulation model test system including a discrete event-based simulation system for performing the simulation time progress in the ASAP method and a test system that is physically separated from the simulation system, and controls the simulation system and the test target system to perform the test,
The simulation system includes a test clock interface module for timer management of a test system,
The test system includes a test clock manager module including a timer management queue for synchronizing with the simulation time,
The test clock manager module is linked with the test clock interface module to synchronize the time progress of the simulation system and the test system based on the simulation time.
청구항 제1항에 있어서,
상기 테스트 시스템은 테스트 케이스 및 상기 테스트 케이스의 실행 및 관리하기 위한 테스트 실행 관리 모듈을 포함하고 있는 것을 특징으로 하는 시뮬레이션 모델 테스트 시스템.
The method of claim 1,
The test system includes a test case and a test execution management module for executing and managing the test case.
청구항 제1항 또는 청구항 제2항에 있어서,
상기 시뮬레이션 시스템은 요구되는 특정 시뮬레이션을 수행하는 시뮬레이션 모델과 상기 시뮬레이션 모델의 제어를 위한 스케줄 제어명령을 생성, 제어하고, 시뮬레이션 결과를 수집 관리하는 시뮬레이션 커널을 포함하는 것을 특징으로 하는 시뮬레이션 모델 테스트 시스템.
The method according to claim 1 or 2,
The simulation system includes a simulation model for performing a specific simulation required, and a simulation kernel for generating and controlling schedule control commands for controlling the simulation model, and collecting and managing simulation results.
물리적으로 분리된 테스트 시스템과 이산사건기반 시뮬레이션 시스템 사이의 시뮬레이션 연동 테스트 방법에 있어서,
테스트 클럭 관리자 모듈이 테스트 실행 관리 모듈로부터 시뮬레이션 이벤트에 대한 타이머 등록 요청을 받아, 타이머 관리 큐에 상기 테스트 시스템의 시간을 기준으로 하는 상기 타이머와 관련된 정보를 저장하는 단계;
상기 테스트 클럭 관리자 모듈이 상기 타이머 관련 정보를 시뮬레이션 시스템 상의 테스트 클럭 인터페이스 모듈로 전송하여 시뮬레이션 시스템 상에서의 타이머 등록을 요청하는 단계;
상기 테스트 클럭 인터페이스 모듈이 상기 테스트 클럭 관리자 모듈로부터 상기 타이머 등록 요청을 수신하면 시뮬레이션 커널로부터 현재 시간을 취득하여 시뮬레이션 시간을 기준으로 타임아웃 기간을 산정하고 이를 시뮬레이션 커널에 타이머를 등록하는 단계를 포함하는 것에 의해, 상기 시뮬레이션 시간을 기반으로 상기 시뮬레이션 시스템과 상기 테스트 시스템의 시간 진행을 동기화하는 것을 특징으로 하는 물리적으로 분리된 테스트 시스템과 이산사건기반 시뮬레이션 시스템 사이의 시뮬레이션 연동 테스트 방법.
In the simulation interlocking test method between the physically separated test system and discrete event-based simulation system,
A test clock manager module receiving a timer registration request for a simulation event from a test execution management module, and storing information related to the timer based on a time of the test system in a timer management queue;
Sending, by the test clock manager module, the timer related information to a test clock interface module on a simulation system to request a timer registration on the simulation system;
When the test clock interface module receives the timer registration request from the test clock manager module, obtaining a current time from a simulation kernel, calculating a timeout period based on a simulation time, and registering the timer with the simulation kernel; Thereby synchronizing time progress of the simulation system and the test system based on the simulation time.
청구항 제4항에 있어서,
상기 테스트 실행 관리 모듈이 등록된 타임아웃 기간 전에 상기 시뮬레이션 시스템으로부터 이벤트 결과 메시지를 수신하는 경우, 상기 테스트 실행 관리 모듈은 상기 테스트 클럭 관리자 모듈에게 해당 타이머의 취소 요청을 하는 단계;
상기 테스트 클럭 관리자 모듈이 상기 타이머 취소 요청을 수신하면, 해당 타이머와 관련된 정보를 상기 타이머 관리 큐에서 삭제하는 단계를 포함하는 것을 특징으로 하는 물리적으로 분리된 테스트 시스템과 이산사건기반 시뮬레이션 시스템 사이의 시뮬레이션 연동 테스트 방법.
The method according to claim 4,
When the test execution management module receives an event result message from the simulation system before a registered timeout period, the test execution management module requesting the test clock manager module to cancel a corresponding timer;
And when the test clock manager module receives the timer cancellation request, deleting information related to the timer from the timer management queue. The simulation between the physically separated test system and the discrete event-based simulation system. Interlock test method.
청구항 제4항에 있어서,
상기 테스트 실행 관리 모듈이 상기 등록된 타임아웃 기간 전에 상기 시뮬레이션 시스템으로부터 이벤트 결과 메시지를 수신하지 못하는 경우, 시뮬레이션 커널이 타임아웃 이벤트를 테스트 클럭 인터페이스에 전달하는 단계;
타임아웃 이벤트를 전달받은 상기 테스트 클럭 인터페이스 모듈이, 테스트 클럭 관리자 모듈에게 타임아웃을 통보하는 단계;
상기 테스트 클럭 관리자 모듈이 테스트 실행 관리 모듈에게 해당 타이머의 타임아웃 발생을 통보하는 단계;
상기 테스트 클럭 관리자 모듈이 해당 타이머와 관련된 정보를 상기 타이머 관리 큐에서 삭제하는 단계를 포함하는 것을 특징으로 하는 물리적으로 분리된 테스트 시스템과 이산사건기반 시뮬레이션 시스템 사이의 시뮬레이션 연동 테스트 방법.
The method according to claim 4,
If the test execution management module does not receive an event result message from the simulation system before the registered timeout period, the simulation kernel forwarding a timeout event to a test clock interface;
The test clock interface module receiving a timeout event, notifying a test clock manager module of a timeout;
Notifying, by the test clock manager module, of a timeout of a corresponding timer to a test execution management module;
And deleting, by the test clock manager module, information associated with a corresponding timer from the timer management queue, between the physically separated test system and the discrete event-based simulation system.
청구항 제5항에 있어서,
상기 테스트 클럭 관리자 모듈이 테스트 실행 관리 모듈의 타이머 취소 요청에 따라 해당 타이머를 상기 타이머 관리 큐에서 삭제하는 단계는,
상기 테스트 클럭 관리자 모듈이, 상기 테스트 클럭 인터페이스 모듈에 대하여 해당 타이머에 대한 취소 요청을 하는 단계 및
상기 취소 요청을 수신한 테스트 클럭 인터페이스 모듈은 시뮬레이션 커널에 등록된 타이머를 삭제하는 단계를 포함하는 것을 특징으로 하는 물리적으로 분리된 테스트 시스템과 이산사건기반 시뮬레이션 시스템 사이의 시뮬레이션 연동 테스트 방법.
The method according to claim 5,
The test clock manager module may delete the timer from the timer management queue in response to a timer cancellation request of a test execution management module.
Making, by the test clock manager module, a cancellation request for a corresponding timer to the test clock interface module; and
The test clock interface module receiving the cancellation request includes deleting a timer registered in a simulation kernel. The simulation interworking test method between the physically separated test system and the discrete event-based simulation system.
청구항 제4항에 있어서,
상기 타이머와 관련된 정보에는 타이머의 소유자, 타임아웃시 동봉되는 파라미터 정보를 더 포함하는 것을 특징으로 하는 물리적으로 분리된 테스트 시스템과 이산사건기반 시뮬레이션 시스템 사이의 시뮬레이션 연동 테스트 방법.
The method according to claim 4,
The information related to the timer further includes simulation information between a physically separated test system and a discrete event-based simulation system, wherein the timer further includes information about the owner of the timer and parameters enclosed at the timeout.
청구항 제5항 또는 제6항에 있어서,
상기 테스트 클럭 인터페이스 모듈이 시뮬레이션 시간을 기준으로 타임아웃 기간을 산정하고 이를 시뮬레이션 커널 타이머에 등록하는 단계는,
산정된 타임아웃 기간을 이용하여 상기 시뮬레이션 커널에 타임아웃 이벤트를 등록하는 것을 특징으로 하는 물리적으로 분리된 테스트 시스템과 이산사건기반 시뮬레이션 시스템 사이의 시뮬레이션 연동 테스트 방법.
The method according to claim 5 or 6,
The step of calculating the timeout period based on the simulation time by the test clock interface module and registering it with the simulation kernel timer,
A simulation interworking test method between a physically separated test system and a discrete event based simulation system, wherein the timeout event is registered in the simulation kernel using the calculated timeout period.
청구항 제9항에 있어서,
상기 테스트 클럭 관리자 모듈이 상기 타이머와 관련된 정보를 저장하는 단계는,
상기 테스트 클럭 관리자 모듈이 상기 테스트 실행 관리 모듈로부터 시뮬레이션 이벤트에 대한 타이머 등록을 요청 받으면 타이머 식별자를 생성하고, 상기 타이머 식별자, 이벤트 소유자 및 파라미터를 타이머 관리 큐에 저장하는 단계로 이루어지는 것을 특징으로 하는 물리적으로 분리된 테스트 시스템과 이산사건기반 시뮬레이션 시스템 사이의 시뮬레이션 연동 테스트 방법.
The method of claim 9,
The storing of the information related to the timer by the test clock manager module may include:
When the test clock manager module receives a timer registration request for a simulation event from the test execution management module, a timer identifier is generated, and the timer identifier, an event owner, and parameters are stored in a timer management queue. Simulation interlocking test method between the test system separated into discrete and event-based simulation system.
청구항 제10항에 있어서,
상기 식별자는 테스트 시작 시점부터 타이머 등록시 마다 순차적으로 증가하는 정수로 정의되고, 테스트 실행 관리 모듈은 상기 타이머 취소 요청 시에 상기 타이머 식별자를 사용하는 것을 특징으로 하는 물리적으로 분리된 테스트 시스템과 이산사건기반 시뮬레이션 시스템 사이의 시뮬레이션 연동 테스트 방법.
The method of claim 10,
The identifier is defined as an integer that is sequentially incremented at each timer registration starting from a test start time, and the test execution management module uses the timer identifier when the timer is canceled. Simulation linkage test method between simulation systems.
KR1020120144159A 2012-12-12 2012-12-12 Interfacing system synchronizing a time process of a simulation system and a test system based on simulation time and test method for simulation model KR101354007B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120144159A KR101354007B1 (en) 2012-12-12 2012-12-12 Interfacing system synchronizing a time process of a simulation system and a test system based on simulation time and test method for simulation model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120144159A KR101354007B1 (en) 2012-12-12 2012-12-12 Interfacing system synchronizing a time process of a simulation system and a test system based on simulation time and test method for simulation model

Publications (1)

Publication Number Publication Date
KR101354007B1 true KR101354007B1 (en) 2014-01-21

Family

ID=50146122

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120144159A KR101354007B1 (en) 2012-12-12 2012-12-12 Interfacing system synchronizing a time process of a simulation system and a test system based on simulation time and test method for simulation model

Country Status (1)

Country Link
KR (1) KR101354007B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180089926A (en) 2017-02-01 2018-08-10 국방과학연구소 An optimized time-synchronization Method and System for simulator interpretation

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040028599A (en) * 2001-08-14 2004-04-03 액시스 시스템즈, 인크. Timing-insensitive glitch-free logic system and method
KR20120105901A (en) * 2011-03-17 2012-09-26 한국과학기술원 Simulation method, system based on event-oriented for hierarchical devs model, recording medium for the same

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040028599A (en) * 2001-08-14 2004-04-03 액시스 시스템즈, 인크. Timing-insensitive glitch-free logic system and method
KR20120105901A (en) * 2011-03-17 2012-09-26 한국과학기술원 Simulation method, system based on event-oriented for hierarchical devs model, recording medium for the same

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
윤근수 외 2인, '이산사건 시뮬레이션에 기반한 전자상거래 모델링/해석 소프트웨어 개발', 한국시뮬레이션학회 추계학술대회논문집, 2000.11.11, pp.208-212 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180089926A (en) 2017-02-01 2018-08-10 국방과학연구소 An optimized time-synchronization Method and System for simulator interpretation
KR101964755B1 (en) * 2017-02-01 2019-04-03 국방과학연구소 An optimized time-synchronization Method and System for simulator interpretation

Similar Documents

Publication Publication Date Title
CN110399110A (en) Multi-screen synchronous display methods and system, display equipment and storage medium
US10785014B2 (en) Computation device, control device and control method
US9723070B2 (en) System to improve cluster machine processing and associated methods
WO2019104713A1 (en) Machine learning method, master node, work node, and system
KR20170059468A (en) Runtime environment configuration method, device and system
JP2011138184A (en) Virtual machine migration control apparatus, virtual machine migration control method, and virtual machine migration control program
US9733997B2 (en) Event management method and distributed system
CN111324046A (en) Method and system for performing cooperative operation on distributed simulation system
KR101354007B1 (en) Interfacing system synchronizing a time process of a simulation system and a test system based on simulation time and test method for simulation model
CN115576218B (en) Power information physical joint simulation method and system based on coordination event axis synchronization
CN107005434B (en) Method, device and equipment for synchronizing Virtual Network Function (VNF) state
JP2008187235A (en) Network system and slave synchronization method
Gaffurini et al. Virtual PLC in industrial edge platform: performance evaluation of supervision and control communication
Schiller et al. Emulating vehicular ad hoc networks for evaluation and testing of automotive embedded systems
D'souza et al. Quartz: Time-as-a-service for coordination in geo-distributed systems
CN115062448A (en) Cloud-collaboration-based digital twin collaboration experiment system and method
D'Souza et al. Quartzv: Bringing quality of time to virtual machines
McLean et al. Predictable time management for real-time distributed simulation
JP2010250684A (en) Simulation-executing method
JP2014211806A (en) Integrated simulator device, simulation method, and program
Ran et al. Modeling and verifying the ttcan protocol using timed csp
CN107317705A (en) A kind of limited optimistic emulation synchronous method based on Agent sensing regions
JP5530878B2 (en) Data replication management method in distributed system
Thibodeaux The specification and implementation of a model of computation
Li et al. Preliminary implementation of the real-time data sharing system based on RFM for EAST

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170102

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180103

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190103

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20200103

Year of fee payment: 7