EP0945796A2

Simulation method, simulation apparatus and storage medium storing a simulation program

Abstract

In the simulation method and apparatus: even if a process varies in processing time each time it is executed, it is possible to simulate the process at high processing speed with high accuracy; and, an interruption occurring during the execution of routine processes (311 to 31n) is also simulated. In the simulation method: native version routine processes (231 to 23n) which a simulation means (24) may execute without interpretation are sequentially executed; and, a plurality of instructions which constitute non-routine processes having not passed a check are sequentially executed by a non-routine process simulation means (25). Based on a coefficient α representing a difference in performance between a target CPU and a host CPU, a host time measuring means (30) measures: a first time immediately before the execution of the native version routine processes (231 to 23n); and, a second time immediately before completion or interruption of the execution of the native version routine processes. Based on the first and the second time, a target time measuring means (27) measures a target time taken for the target CPU to execute the target program.

EP0945796A2, drawing sheet 1
Sheet 1 of 8

Term

Term ended

Projected expiry passed 24 March 2019, 7.5 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

32 claims: 5 independent, 27 dependent

  1. 1
    A simulation method for simulating in operation a system intended to be developed, by executing a program which a first central processing unit constituting the system should execute, the method comprising the steps of:constructing said program out of: a plurality of routine processes (31 1 to 31 n ) which are of general-purpose type and have passed a check;and, a plurality of non-routine processes still not passed said check, said non-routine processes being constructed of a plurality of instructions;sequentially carrying out, in a first process, a plurality of native version routine processes (23 1 to 23 n ) which are executable without interpretation, said native version routine processes (23 1 to 23 n ) corresponding to said plurality of routine processes (31 1 to 31 n );carrying out, in a second process, said plurality of said instructions one by one with interpretation;measuring, in a third process, on the basis of a coefficient representing a difference in performance between said first central processing unit and a second central processing unit, a first time-immediately before said native version routine processes (23 1 to 23 n ) are carried out;and, a second time immediately before completion of execution of said native version routine processes (23 1 to 23 n ), or immediately before said second process is interrupted, said second central processing unit carrying out said first and said second process;measuring, in a fourth process, on the basis of said first and said second time and said coefficient, a time taken for said second central processing unit to execute said program.
  2. 2
    A simulation method for simulating in operation a system intended to be developed, by executing a program which a first central processing unit constituting said system should execute, the method comprising the steps of:constructing said program out of: a plurality of routine processes (31 1 to 31 n ) which are of general-purpose type and have passed a check;and, a plurality of non-routine processes which still do not pass said check, said non-routine processes being constructed of a plurality of instructions;sequentially carrying out, in a first process, a plurality of native version routine processes (23 1 to 23 n ) which are executable without interpretation, said native version routine processes (23 1 to 23 n ) corresponding to said plurality of routine processes (31 1 to 31 n );carrying out, in a second process, said plurality of said instructions one by one with interpretation;wherein: in said first process, a first time point immediately before the execution of said native version routine processes (23 1 to 23 n ) is measured;during the execution of said native version routine processes (23 1 to 23 n ), a first period of time between said first time point and a first interruption time when a first interruption occurs is calculated;a coefficient representing a difference in performance between said first central processing unit and said second central processing unit which carries out said first and said second processes is calculated;and, a second period of time between said first time point and a second interruption time when a second interruption occurs is calculated in said first central processing unit on the basis of said first period of time during the execution of said routine processes (31 1 to 31 n ) corresponding to said native version routine processes (23 1 to 23 n );a second time point immediately before completion or interruption of the execution of said native version routine processes (23 1 to 23 n ) is measured after the start in execution of said native version routine processes (23 1 to 23 n ) until said second period of time has elapsed, or until said native version routine processes (23 1 to 23 n ) have been completed;and, a third time point which is required of said first central processing unit for executing said program is calculated on the basis of said first and said second time point and said coefficient.
  3. 15
    A simulation apparatus for simulating in operation a system intended to be developed, by executing a program which a first central processing unit constituting said system should execute, said program being constructed of a plurality of routine processes (31 1 to 31 n ) and a plurality of non-routine processes still not passed said check, wherein said plurality of routine processes (31 1 to 31 n ) are of general-purpose type and have passed a check, and said non-routine processes are constructed of a plurality of instructions, said apparatus comprising:a first simulation means (24) for sequentially carrying out, in a first process, a plurality of native version routine processes (23 1 to 23 n ) which are executable without interpretation, said native version routine processes (23 1 to 23 n ) corresponding to said plurality of routine processes (31 1 to 31 n );a second simulation means (25) for carrying out, in a second process, said plurality of said instructions one by one with interpretation;a coefficient storage portion (29) in which a coefficient representing a difference in performance between said first central processing unit and said first and said second simulation means (24, 25) is previously stored;a first time measuring means (30) for determining a first and a second time point on the basis of said coefficient, wherein said first time point is a time immediately before said first simulation means (24) executes said native version routine processes (23 1 to 23 n ), and, said second time is a time immediately before completion, or interruption of execution of said native version routine processes (23 1 to 23 n );and a second time measuring means (27) for measuring a period of time taken for said central processing unit to execute said program on the basis of said first and said second time point and said coefficient.
  4. 16
    A simulation apparatus for simulating in operation a system intended to be developed, by executing a program which a first central processing unit constituting said system should execute, said program being constructed of a plurality of routine processes (31 1 to 31 n ) and a plurality of non-routine processes still not passed said check, wherein said plurality of routine processes (31 1 to 31 n ) are of general-purpose type and have passed a check, and said non-routine processes are constructed of a plurality of instructions, the apparatus comprising:a first simulation means (24) for sequentially carrying out, in a first process, a plurality of native version routine processes (23 1 to 23 n ) which are executable without interpretation, said native version routine processes (23 1 to 23 n ) corresponding to said plurality of routine processes (31 1 to 31 n );a second simulation means (25) for carrying out, in a second process, said plurality of said instructions one by one with interpretation;a coefficient storage portion (29) in which a coefficient representing a difference in performance between said first central processing unit and said first and said second simulation means (24, 25) is previously stored;a first time measuring means (30) for determining a first and a second time point and for calculating a first period of time and a second period of time on the basis of said coefficient and said first period of time, wherein: said first time point is a time immediately before said first simulation means (24) executes said native version routine processes (23 1 to 23 n );said second time point is a time immediately before completion or interruption of execution of said native version routine processes (23 1 to 23 n );said first period of time is a time from said first time point to an interruption time when an interruption occurs during the execution of said native version routine processes (23 1 to 23 n );and, said second period of time is a time from said first time point to an interruption time when an interruption occurs when said central processing unit executes said routine processes (31 1 to 31 n ) corresponding to said native version routine processes (23 1 to 23 n );and a second time measuring means (27) for measuring a third period of time taken for said central processing unit to execute said program on the basis of said first and said second time point and said coefficient;wherein said first simulation means (24) executes said native version routine processes (23 1 to 23 n ) until said second period of time has elapsed, or until said native version routine processes (23 1 to 23 n ) have been completed.
  5. 31
    A storage medium storing thereon a simulation program for realizing a function described in any one of claims 1 to 30.
  6. 32
    A computer program product directly loadable into the internal memory of a digital computer, comprising software code portions for performing the steps of the method according to any one of claims 1 to 14 when said product is run on a computer