[go: up one dir, main page]

JP2019066913A - Software verification apparatus - Google Patents

Software verification apparatus Download PDF

Info

Publication number
JP2019066913A
JP2019066913A JP2017188382A JP2017188382A JP2019066913A JP 2019066913 A JP2019066913 A JP 2019066913A JP 2017188382 A JP2017188382 A JP 2017188382A JP 2017188382 A JP2017188382 A JP 2017188382A JP 2019066913 A JP2019066913 A JP 2019066913A
Authority
JP
Japan
Prior art keywords
synchronization
simulation
software
simulator
control
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
JP2017188382A
Other languages
Japanese (ja)
Inventor
弘子 國本
Hiroko Kunimoto
弘子 國本
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2017188382A priority Critical patent/JP2019066913A/en
Publication of JP2019066913A publication Critical patent/JP2019066913A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

To provide a software verification apparatus for comparing and verifying an operation of verification target software and an operation of comparison target.SOLUTION: A verification target CPU simulator 101 simulates an operation of software of control target apparatus. Comparison target control simulation means 102 simulates an operation of software that is comparison target. A control target simulator 107 and 108 simulate an operation of the control target apparatus of the software. HUB 103 connects a plurality of simulation applications, and synchronization means 104 sets a verification target CPU simulator and the control target simulator 107 as a first group, sets the comparison target control simulation means and the control target simulator 108 as a second group, synchronizes in each of the groups before reaching an operation origin, and synchronizes between the groups after reaching the operation origin. Result display means 109 overlaps and displays operations of control target controlled by the verification target CPU simulator and the comparison target control simulation means.SELECTED DRAWING: Figure 1

Description

本発明は、制御ソフトウエアを検証するソフトウエア検証装置に関する。   The present invention relates to a software verification apparatus that verifies control software.

ソフトウエアは、不正な動作を行っていないかテストをし、デバッグ作業を経てリリースされる。特許文献1は、2つのプログラムを比較検証する検証方法を開示している。特許文献1では、ユーザが比較対象プログラムと検証対象プログラムに同期点を設定し、同期点に同期コマンドを挿入した検証用プログラムを生成し、プログラム検証を行っている。また、特許文献2は、ソフトウエアで制御したメカの動きをアニメーションで見ながらソフトウエアのデバッグを行う方法が提案されている。このように、メカ装置を制御するソフトウエアのデバッグや検証に、機器制御シミュレーションを用いることがある。   The software is tested for improper behavior and released after debugging. Patent Document 1 discloses a verification method for comparing and verifying two programs. In Patent Document 1, a user sets a synchronization point in a comparison target program and a verification target program, generates a verification program in which a synchronization command is inserted in the synchronization point, and performs program verification. Further, Patent Document 2 proposes a method of debugging software while seeing the motion of a mechanism controlled by software in animation. As described above, device control simulation may be used for debugging and verification of software that controls mechanical devices.

特開2010−165121号公報JP, 2010-165121, A 特開平11−327956号公報Japanese Patent Application Laid-Open No. 11-327956

ソフトウエアに何かしらの変更を加えた場合、変更箇所以外のソフトウエア動作が、変更前のソフトウエア動作と同じであるか動作検証を行う。ここで、例えば、画像形成装置の制御ソフトウエアの画像形成動作に変更を加えた場合、画像形成以外の動作である用紙搬送動作に弊害がないか確認する必要がある。変更前の制御ソフトウエアでは、正常に用紙搬送されていたが、変更後の制御ソフトウエアの用紙搬送動作の確認時に、用紙が異常な状態(例えばジャム)になると、ソフトウエア変更による弊害を認識できる。しかし、用紙が異常な状態にならずとも、変更前後の2つのソフトウエアによる用紙搬送状態の遷移が一致しなければ、実際はソフトウエア変更による弊害が出ていることになる。上記のような異常動作にならない弊害を発見するには、変更前後の2つのソフトウエアによる用紙搬送状態の遷移を比較し、用紙動作の不一致を認識しやすくする必要がある。
検証対象の動作である用紙搬送状態の遷移を比較するためには、ソフトウエアの制御対象物である用紙動作について、2つのソフトウエアでの検証起点を合わせる必要がある。
しかしながら、特許文献1は、2つのソフトウエアの制御対象物動作の起点を合わせることを開示するものではなく、制御対象物動作の比較はできない。
また、特許文献2のように、変更前後の2つのソフトウエアを各々シミュレーションし、検証動作の起点を合わせてシミュレーション結果ログを保存後、シミュレーション結果ログから検証動作を再生、及び比較する方法が考えられる。しかし、1回のシミュレーション実行でソフトウエアの検証とデバッグを同時に行うことはできないため、検証に多くの時間を要する。
When some change is made to the software, operation verification is performed to see if the software operation other than the change is the same as the software operation before the change. Here, for example, when a change is made to the image forming operation of the control software of the image forming apparatus, it is necessary to confirm whether the sheet conveying operation, which is an operation other than the image forming operation, is not adversely affected. In the control software before the change, although the sheet was conveyed normally, when the sheet becomes abnormal (for example, jam) at the time of confirmation of the sheet conveyance operation of the control software after the change, the adverse effect due to the software change is recognized it can. However, even if the sheet is not in an abnormal state, if the transition of the sheet conveyance state by the two software before and after the change does not coincide, the problem is that the software change actually causes an adverse effect. In order to detect the adverse effect that the abnormal operation does not occur as described above, it is necessary to compare the transition of the sheet conveyance state by the two software before and after the change and to easily recognize the mismatch of the sheet operation.
In order to compare the transition of the sheet conveyance state, which is the operation to be verified, it is necessary to match the verification start points of the two software with respect to the sheet operation which is the control object of the software.
However, Patent Document 1 does not disclose that the start points of the controlled object operation of the two software are matched, and comparison of the controlled object operation can not be performed.
In addition, as in Patent Document 2, after simulating the two software before and after the change, combining the starting point of the verification operation and storing the simulation result log, a method of reproducing and comparing the verification operation from the simulation result log is considered. Be However, since verification and debugging of software can not be performed simultaneously in one simulation execution, verification requires much time.

本発明は、検証対象の制御ソフトウエアの制御対象物動作と比較対象動作を比較し、制御ソフトウエアの動作を検証する検証装置及びプログラムを提供するものである。   The present invention provides a verification apparatus and program for verifying the operation of control software by comparing the control object operation of the control software to be verified and the operation to be compared.

上記目的を達成するために、本発明に係るソフトウエア検証装置は、
検証対象ソフトウエアが実行されるターゲットCPUの動作をシミュレーションするCPUシミュレータと、
前記検証対象ソフトウエアによって制御される制御対象物の動作の変化を解析し、該制
御対象物の動作を視覚化する第一の視覚化データを生成する第一の制御対象物シミュレータと、
前記検証対象ソフトウエアによる制御と比較される比較対象の制御機能をシミュレーションする比較制御シミュレータと、
前記比較制御シミュレータによってシミュレーションされる制御機能に基づく前記制御対象物の動作の変化を解析し、該制御対象物の動作を視覚化する第二の視覚化データを生成する第二の制御対象物シミュレータと、
前記第一の視覚化データと、前記第二の視覚化データに基づいて、前記検証対象ソフトウエアによって制御される前記制御対象物の動作と、前記比較制御シミュレータによってシミュレーションされる制御機能に基づく前記制御対象物の動作とを重ね合わせて表示する結果表示手段と、
前記CPUシミュレータと前記第一の制御対象物シミュレータを第一のシミュレーショングループとし、前記比較制御シミュレータと前記第二の制御対象物シミュレータを第二のシミュレーショングループとしたときに、各シミュレーショングループのシミュレーションの結果から、該シミュレーショングループにおけるシミュレーション実行が、前記制御対象物の動作における起点となる動作起点に到達しているか否かを判断する到達判断手段と、
複数の前記シミュレータ間における時間同期を行う同期手段と、
を備え、
前記同期手段は、前記第一及び前記第二のシミュレーショングループのいずれもが前記動作起点に到達したと判断されると、前記第一及び前記第二のシミュレーショングループの間で時間同期を行うよう時間同期の方法を変更する同期変更手段を有することを特徴とする。
In order to achieve the above object, a software verification device according to the present invention is:
A CPU simulator that simulates the operation of a target CPU on which the software to be verified is executed;
A first controlled object simulator that analyzes a change in the movement of the controlled object controlled by the verification target software and generates first visualization data that visualizes the movement of the controlled object;
A comparison control simulator that simulates the control function of the comparison object to be compared with the control by the verification object software;
A second controlled object simulator that analyzes a change in the movement of the controlled object based on a control function simulated by the comparison control simulator and generates second visualization data that visualizes the movement of the controlled object When,
Based on the first visualization data and the second visualization data, the operation of the controlled object controlled by the verification target software and the control function simulated by the comparison control simulator Result display means for displaying the operation of the control object in an overlapping manner;
When the CPU simulator and the first controlled object simulator are set as a first simulation group, and the comparison control simulator and the second controlled object simulator are set as a second simulation group, the simulation of each simulation group is performed. Arrival determination means for determining whether or not the simulation execution in the simulation group has reached an operation starting point which is a starting point in the operation of the controlled object from the result;
Synchronization means for performing time synchronization among a plurality of the simulators;
Equipped with
The synchronization means is configured to perform time synchronization between the first and second simulation groups when it is determined that both the first and second simulation groups have reached the operation start point. It is characterized in that it has synchronization changing means for changing the method of synchronization.

また、本発明に係るプログラムは、上記ソフトウエア検証装置としてコンピュータを機能させることを特徴とする。   A program according to the present invention causes a computer to function as the software verification device.

以上説明したように、本発明によれば、検証対象動作と比較対象動作の起点を同期させ、検証対象ソフトウエアの動作と比較対象動作を視覚情報で比較できるため、検証者は異常動作を発見しやすくなる。また、1回のシミュレーション実行で動作比較とデバッグができる。結果として、検証者の検証工数を削減できる。   As described above, according to the present invention, since the verification target operation and the comparison target operation can be synchronized and the operation of the verification target software and the comparison target operation can be compared by visual information, the verifier finds an abnormal operation. It becomes easy to do. In addition, operation comparison and debugging can be performed by one simulation execution. As a result, the number of verification steps of the verifier can be reduced.

本発明に係るソフトウエア検証装置の機能構成図Functional configuration diagram of software verification device according to the present invention 本発明に係るソフトウエア検証装置のハードウェア構成図Hardware configuration diagram of software verification device according to the present invention 検証対象ソフトウエアの制御対象装置である電子写真装置の断面図Sectional view of an electrophotographic apparatus that is a control target device of verification target software 実施例に挙げる検証対象及び比較対象ソフトウエアの実施処理の概念図Conceptual diagram of the implementation process of the software to be verified and compared, which is given in the embodiment 実施例1に係る動作起点到達情報の例を示す図FIG. 6 shows an example of operation start point arrival information according to the first embodiment. 実施例1に係る動作起点到達判断機能の処理のフローチャートFlowchart of the process of the movement start arrival determination function according to the first embodiment 画像形成装置シミュレータの出力イメージの説明図Illustration of output image of image forming device simulator シミュレーショングループ情報の例を示す図Diagram showing an example of simulation group information 同期手段での処理のフローチャートFlow chart of processing by synchronization means 本発明に係る結果表示手段の出力イメージの説明図Explanatory drawing of the output image of the result display means which concerns on this invention 実施例2に係るソフトウエア検証装置の機能構成図Functional configuration diagram of software verification device according to the second embodiment 実施例2に係る動作起点到達情報の例を示す図FIG. 6 shows an example of operation start point arrival information according to the second embodiment. 実施例2に係る動作差異検出機能の処理のフローチャートFlow chart of processing of operation difference detection function according to the second embodiment 実施例3に係るソフトウエア検証装置の機能構成図Functional configuration diagram of software verification device according to the third embodiment 実施例3に係る判断実施可否状態決定部の処理のフローチャートFlowchart of the process of the determination execution state determination unit according to the third embodiment

以下に図面を参照して、この発明を実施するための形態を、実施例に基づいて例示的に詳しく説明する。ただし、この実施の形態に記載されている構成部品の寸法、材質、形状それらの相対配置などは、発明が適用される装置の構成や各種条件により適宜変更されるべきものである。すなわち、この発明の範囲を以下の実施の形態に限定する趣旨のものではない。
なお、以下の各図においては、実施形態の説明に必要ではない構成要素については図から省略する。
Hereinafter, with reference to the drawings, modes for carrying out the present invention will be exemplarily described in detail based on examples. However, the dimensions, materials, shapes, etc. of the components described in this embodiment should be changed as appropriate depending on the configuration of the apparatus to which the invention is applied and various conditions. That is, the scope of the present invention is not intended to be limited to the following embodiments.
In the following drawings, components not necessary for the description of the embodiment will be omitted from the drawings.

本実施形態によるソフトウエア検証装置は、コンピュータシステム上でプログラムを実行することで実現でき、そのハードウェア構成を図2に示す。図2の本体部202のハードディスク202cには、検証装置の各機能を実現するためのプログラムや、制御対象装置に関する情報を含む各種データや、検証対象の制御ソフトウエアが格納される。中央処理部202aは、プログラム及び各種データを主記憶部202bにロードして実行し、これによりコンピュータシステム201は検証装置として動作する。なお、表示装置203は、本体部202からの指示により画面表示を行う。また、キーボード204は、このコンピュータシステム201にユーザの指示や文字情報を入力するためのものである。さらに、マウス205は、表示装置203上の任意の位置を指定することによりその位置に表示されていたアイコン等に応じた指示を入力するためのものである。
これらコンピュータシステム201の基本動作は、基本プログラムであるオペレーティングシステム(以下、OSと記す)を介して実行される。
The software verification apparatus according to the present embodiment can be realized by executing a program on a computer system, the hardware configuration of which is shown in FIG. The hard disk 202c of the main unit 202 in FIG. 2 stores a program for realizing each function of the verification device, various data including information on the control target device, and control software to be verified. The central processing unit 202a loads the program and various data into the main storage unit 202b and executes it, whereby the computer system 201 operates as a verification device. The display device 203 performs screen display according to an instruction from the main body unit 202. A keyboard 204 is for inputting user's instructions and character information into the computer system 201. Furthermore, the mouse 205 is for designating an arbitrary position on the display device 203 to input an instruction according to an icon or the like displayed at that position.
The basic operations of the computer system 201 are executed via an operating system (hereinafter referred to as an OS) which is a basic program.

本実施形態では、制御ソフトウエアの制御対象装置(制御対象物)が画像形成装置であり、検証対象動作が用紙搬送動作であるものとして説明を行うものの、制御対象装置は、画像形成装置以外の装置であってもよい。さらに、検証対象動作は用紙搬送動作以外でもよく、制御ソフトウエアの制御対象物の動作で、後述の制御対象物シミュレータ上で視覚化データが生成されるものであればよい。   In this embodiment, although the control target device (control target object) of the control software is the image forming device and the verification target operation is the sheet conveyance operation, the control target device is other than the image forming device. It may be an apparatus. Furthermore, the operation to be verified may be other than the sheet conveyance operation, as long as the operation to be controlled by the control software generates visualization data on a control object simulator to be described later.

ここで、ソフトウエアの制御対象装置について説明する。図3はソフトウエアの制御対象装置である画像形成装置301の断面図である。画像形成装置301は図3に示すように用紙Sを収納するカセット302を有する。前記カセット302上には、用紙をピックアップするピックアップローラ303、更にピックアップされた用紙をくり出す給紙ローラ304が設けられている。そして、給紙ローラ304の下流には給紙された用紙Sを後述のレジストローラまで搬送する搬送ローラ305が配設されている。前記搬送ローラ305の下流には、画像の副走査同期信号に用紙Sを同期させて搬送するレジストローラ307が配設されており、該レジストローラ307の直前には用紙センサであるレジ前センサ306が配設されている。レジストローラ307の下流には、レーザスキャナ部309からのレーザ光により画像を形成する画像形成部308が配設されている。さらに、該画像形成部308の下流には定着器310が配設されており、定着器310の下流には定着排紙ローラ311が、その下流には定着排紙センサ312が配設されている。定着排紙センサ312の下流には排紙トレイ315への搬送路がある。排紙トレイ315への搬送路下流には排紙搬送ローラ313、314が配設されて、排紙トレイ315まで用紙Sを搬送する。   Here, a control target device of software will be described. FIG. 3 is a cross-sectional view of the image forming apparatus 301 which is a software control target apparatus. The image forming apparatus 301 has a cassette 302 for storing the sheet S as shown in FIG. On the cassette 302, a pickup roller 303 for picking up a sheet, and a sheet feeding roller 304 for drawing out the picked up sheet are provided. A conveying roller 305 is disposed downstream of the sheet feeding roller 304 for conveying the fed sheet S to a registration roller described later. A registration roller 307 is provided downstream of the conveyance roller 305 for conveying the sheet S in synchronization with the sub-scanning synchronization signal of the image, and immediately before the registration roller 307, a pre-registration sensor 306 which is a sheet sensor. Is provided. An image forming unit 308 for forming an image by the laser beam from the laser scanner unit 309 is disposed downstream of the registration roller 307. Further, a fixing unit 310 is disposed downstream of the image forming unit 308, a fixing discharge roller 311 is disposed downstream of the fixing unit 310, and a fixing discharge sensor 312 is disposed downstream thereof. . A conveyance path to the discharge tray 315 is provided downstream of the fixing discharge sensor 312. At the downstream of the conveyance path to the sheet discharge tray 315, sheet discharge conveyance rollers 313 and 314 are disposed, and the sheet S is conveyed to the sheet discharge tray 315.

画像形成装置301は、前記の機能の他に下記の機能を有し、画像形成装置の制御ソフトウエアは、下記機能を制御している。ピックアップローラ303、給紙ローラ304、搬送ローラ305は不図示の給紙モータを駆動源としている。そして、レジストローラ307から下流の用紙搬送ローラ(画像形成部308の感光ドラム、転写ローラ、定着器310の定着ローラを含む)は全て不図示のメインモータを駆動源としている。ピックアッ
プローラ303は不図示のカム機構によって上下動する構成になっており、カム機構駆動のトリガを不図示のピックアップソレノイドによってコントロールする。レジストローラ307は不図示のレジストローラクラッチを介してメインモータからの駆動力を受けており、レジストローラクラッチの制御によって駆動・停止が制御される。画像形成部308の光学機構は半導体レーザと半導体レーザからのレーザ光を反射させるポリゴンミラーを回転させ感光ドラム上にレーザ光を照射させるスキャナモータとを有している。また、定着器には定着器を加熱するための定着ヒータ、定着器の温度を測定するサーミスタ、ヒータへの通電接続又は遮断をコントロールするリレーを有している。
The image forming apparatus 301 has the following functions in addition to the functions described above, and the control software of the image forming apparatus controls the following functions. The pickup roller 303, the sheet feeding roller 304, and the conveying roller 305 use a sheet feeding motor (not shown) as a driving source. The sheet conveyance rollers (including the photosensitive drum of the image forming unit 308, the transfer roller, and the fixing roller of the fixing unit 310) downstream of the registration roller 307 all use a main motor (not shown) as a driving source. The pickup roller 303 is configured to move up and down by a cam mechanism (not shown), and controls the trigger of the cam mechanism drive by a pickup solenoid (not shown). The registration roller 307 receives a driving force from the main motor via a registration roller clutch (not shown), and the drive / stop is controlled by the control of the registration roller clutch. The optical mechanism of the image forming unit 308 includes a semiconductor laser and a scanner motor that rotates a polygon mirror that reflects laser light from the semiconductor laser and irradiates the laser light onto the photosensitive drum. Further, the fixing device has a fixing heater for heating the fixing device, a thermistor for measuring the temperature of the fixing device, and a relay for controlling energization connection or interruption to the heater.

以上に示した構成、機能を有する画像形成装置301の制御ソフトウエアは以下に示す制御を行う。すなわち、画像形成装置の外部機器より画像形成の指示を受けると、カセット302内に用紙Sがあるかをチェックし、定着器310の加熱処理を実施し、定着器310が所定温度に達すると、画像形成処理を実行する。画像形成処理においては、まず、カセット302から用紙Sをピックアップし、ピックアップに続き用紙Sを給紙し、画像形成部308の感光ドラム上にレーザ光を照射し、レーザ照射部分に電荷を帯びたトナーを載せてトナー画像を形成する。そして、搬送した用紙Sに感光ドラム上に載ったトナー画像を転写し、用紙Sを定着器310へ搬送し、転写されたトナー画像を熱で用紙Sに定着させ、用紙Sを排紙トレイ315へ排紙し、印刷物を作成する処理を行う。   The control software of the image forming apparatus 301 having the above-described configuration and functions performs the following control. That is, when an instruction for image formation is received from an external device of the image forming apparatus, whether or not the sheet S is present in the cassette 302 is checked, heat treatment of the fixing device 310 is performed, and when the fixing device 310 reaches a predetermined temperature, Execute image formation processing. In the image forming process, first, the sheet S is picked up from the cassette 302, the sheet S is fed following the pickup, and the photosensitive drum of the image forming unit 308 is irradiated with laser light, and the laser irradiation portion is charged. Toner is applied to form a toner image. Then, the toner image placed on the photosensitive drum is transferred onto the conveyed sheet S, the sheet S is conveyed to the fixing device 310, the transferred toner image is fixed on the sheet S by heat, and the sheet S is ejected The sheet is discharged to a printed matter to be processed.

続いて、本実施形態によるソフトウエア検証装置のシステム構成を説明する。なお、本実施例では、検証対象ソフトウエアと比較対象ソフトウエアとで、画像形成装置301で1ページ分の印刷を実施し、用紙Sの搬送動作に差異がないことを確認する検証を実施するものとする。
図1は、本実施形態による制御ソフトウエア検証装置(以下、単に検証装置と記す)の構成図である。本実施形態の検証装置は、検証対象CPUシミュレータ101と比較対象制御模擬手段102と第一の制御対象物シミュレータ107と第二の制御対象物シミュレータ108とシミュレータハブ(以下、HUBと記す)103と結果表示手段109を備えている。ここで、比較対象模擬手段102は、比較制御シミュレータに相当する。なお、検証対象CPUシミュレータ101、比較対象制御模擬手段102、制御対象物シミュレータ107、108、及び結果表示手段109では、時間同期を取る。
ここで、シミュレーション上の時間について説明する。検証装置を構成する各アプリケーションは、各々が模擬時間の概念をもっている。模擬時間とは、シミュレーション対象物の模擬状態の変化に伴い進行する時間のことである。例えば、移動速度が時速10キロメートルである物体の動きをシミュレーションする場合、物体の移動量が10キロメートル分のシミュレーションをすると、シミュレーションに要する実際の時間にかかわらず、模擬時間は1時間進行する。本実施形態による検証装置では、各々異なる模擬対象に対応する複数のシミュレータが連係する形態である。この場合、同一の模擬時間分の解析処理に要する実時間は、シミュレータごとに異なる。言い換えると、実時間の経過に伴う模擬時間の進行度合いは、シミュレータによって異なる。従って、本検証装置では、シミュレータ間における模擬時間同期処理を行うことで模擬時間の進行を一致させ連携シミュレーションを可能としている。以下の説明において、特に指定しない限り、「時間」とは「模擬時間」を示すものとする。
Subsequently, a system configuration of the software verification device according to the present embodiment will be described. In the present embodiment, the image forming apparatus 301 performs printing for one page between the verification target software and the comparison target software, and performs verification to confirm that there is no difference in the conveyance operation of the sheet S. It shall be.
FIG. 1 is a block diagram of a control software verification device (hereinafter simply referred to as a verification device) according to the present embodiment. The verification apparatus of this embodiment includes a verification target CPU simulator 101, a comparison target control simulation unit 102, a first control target simulator 107, a second control target simulator 108, and a simulator hub (hereinafter referred to as HUB) 103. A result display means 109 is provided. Here, the comparison target simulation unit 102 corresponds to a comparison control simulator. The verification target CPU simulator 101, the comparison target control simulation means 102, the control object simulators 107 and 108, and the result display means 109 synchronize time.
Here, simulation time will be described. Each application which constitutes a verification device has a concept of simulated time. The simulation time is a time that proceeds with a change in the simulation state of the simulation object. For example, when simulating the movement of an object whose movement speed is 10 kilometers per hour, if the amount of movement of the object is simulated for 10 kilometers, the simulation time advances by one hour regardless of the actual time required for the simulation. In the verification device according to the present embodiment, a plurality of simulators respectively corresponding to different simulation targets are linked. In this case, the actual time required for the analysis processing for the same simulation time differs from one simulator to another. In other words, the progress of the simulation time with the passage of real time differs depending on the simulator. Therefore, in the verification device, the simulation time synchronization processing is performed between the simulators to make the progress of the simulation time coincide with each other, thereby enabling cooperative simulation. In the following description, “time” indicates “simulated time” unless otherwise specified.

検証対象CPUシミュレータ101は、制御対象装置のソフトウエアのプログラムの動きを模擬する。つまり、検証対象CPUシミュレータ101は、制御対象装置の制御部(ターゲットCPU)が実行する制御ソフトウエアをホストPC上で実行する。そして、検証対象CPUシミュレータ101は、制御対象装置のセンサ等が出力する制御対象装置の動作状態を示す信号を受け取り、制御対象装置の各部品に制御信号を出力する。前記制御ソフトウエアが検証対象ソフトウエア111に相当する。
比較対象制御模擬手段102は、検証対象ソフトウエアの比較対象となるソフトウエア
(以下、単に比較対象ソフトウエアと記す)の動作、すなわち比較対象の制御機能を模擬する。比較対象制御模擬手段102は、比較対象となるソフトウエアのプログラムをホストPC上実行するCPUシミュレータ(比較対象CPUシミュレータ)であってもよい。また、比較対象制御模擬手段102は、比較対象ソフトウエアの機能を模擬する手段でもよい。本例では、比較対象制御模擬手段102は比較対象ソフトウエアを実行するCPUシミュレータであるものとして説明を行う。
The verification target CPU simulator 101 simulates the movement of the software program of the control target device. That is, the verification target CPU simulator 101 executes control software executed by the control unit (target CPU) of the control target device on the host PC. Then, the verification target CPU simulator 101 receives a signal indicating an operation state of the control target device output by a sensor or the like of the control target device, and outputs a control signal to each component of the control target device. The control software corresponds to the verification target software 111.
The comparison target control simulation unit 102 simulates the operation of software to be compared with the verification target software (hereinafter, simply referred to as comparison target software), that is, the control function of the comparison target. The comparison target control simulation unit 102 may be a CPU simulator (comparison target CPU simulator) that executes a program of software to be compared on the host PC. Further, the comparison target control simulation unit 102 may be a unit that simulates the function of the comparison target software. In this example, the comparison target control simulation unit 102 is described as a CPU simulator that executes comparison target software.

画像形成装置301の制御ソフトウエアにおいて、用紙搬送制御に無関係な変更が加えられた場合、制御結果としての用紙搬送動作は、変更前後で違いが発生しないはずである。もし、ソフトウエアの変更前後で用紙搬送動作に違いがあるとすれば、ソフトウエア変更による弊害であるといえる。このような弊害確認のためには変更前後のソフトウエアを実行して、用紙の動きを重ね合わせて表示し直接目視確認するのが、最も明快な方法であるといえる。そこで、ソフトウエア検証装置において、用紙搬送動作を検証対象として、2つのソフトウエアの動作を比較する処理について説明する。
検証対象ソフトウエア及び比較対象ソフトウエアが、検証対象の動作である用紙搬送を実施するまでに行う処理について説明する。図4は、2つのソフトウエアの実施処理の概念図である。どちらのソフトウエアも画像形成装置の外部機器から画像形成指示を受け付けると、カセット302内に用紙Sがあるかをチェックし、定着器310の加熱処理を実施し、定着器310が所定温度に達すると、用紙搬送処理を開始する。ただし、検証対象ソフトウエアと比較対象ソフトウエアでは、定着器310の加熱処理の処理内容が異なる。検証対象ソフトウエアでは、定着器310の加熱処理に新たな機能が加わり、比較対象ソフトウエアの方が、定着器加熱処理に要する実時間が少ない。この処理内容の違いにより、画像形成指示を受け付けてから、用紙搬送処理は、比較対象ソフトウエアの方が早く開始する。なお、検証対象ソフトウエア及び比較対象ソフトウエアは、ピックアップソレノイド駆動信号がハイになったことをもって、用紙搬送動作を開始する。
以上のような制御の違いがある検証対象ソフトウエアと比較対象ソフトウエアに対して、単純に同じタイミングで画像形成指示を出して並列に実行しても、検証対象である用紙搬送動作を重ね合わせることはできない。そこで、本実施例におけるソフトウエア検証装置においては、検証対象物の動作起点から検証対象と比較対象のソフトウエアのシミュレーションを同期させることにより、検証対象物の動作を重ね合わせて表示し、比較できるようにしている。
なお、本実施例では、検証対象ソフトウエアは、検証対象動作である用紙搬送の処理以外の箇所に変更を加えたものとして説明を行うが、本発明の検証対象ソフトウエアは、検証対象動作の処理に変更を加えたものでもよい。例えば、ソフトウエアの用紙搬送制御に変更は加えるものの、制御対象の用紙搬送動作は同じである場合、本検証装置を用いて検証対象物である用紙の搬送動作を比較することができる。
In the control software of the image forming apparatus 301, when an unrelated change is added to the sheet conveyance control, the sheet conveyance operation as a control result should not have a difference before and after the change. If there is a difference in the sheet transport operation before and after the software change, it can be said that the software change is a bad effect. In order to confirm such an adverse effect, it may be said that the clearest method is to execute software before and after the change, superimpose and display the movement of the sheet, and directly visually check it. Therefore, in the software verification apparatus, processing for comparing the operation of two pieces of software with the sheet conveyance operation as a verification target will be described.
A process to be performed until the verification target software and the comparison target software perform the sheet conveyance which is the operation to be verified will be described. FIG. 4 is a conceptual view of an implementation process of two software. When both of the software receives an image formation instruction from an external device of the image forming apparatus, it checks whether the sheet S is present in the cassette 302, heats the fixing unit 310, and the fixing unit 310 reaches a predetermined temperature. Then, the sheet conveyance process is started. However, the processing content of the heat processing of the fixing unit 310 is different between the verification target software and the comparison target software. In the software to be verified, a new function is added to the heat treatment of the fixing device 310, and the software to be compared has less real time required for the heat treatment of the fixing device. Due to the difference in processing content, after receiving the image formation instruction, the paper conveyance processing starts earlier in the comparison target software. The verification target software and the comparison target software start the sheet conveyance operation when the pickup solenoid drive signal becomes high.
The paper transport operation to be verified is superimposed even if image formation instructions are simply issued at the same timing and executed in parallel with software to be verified and software to be compared that have differences in control as described above. It is not possible. Therefore, in the software verification apparatus according to the present embodiment, the operation of the verification object can be displayed superimposed and compared by synchronizing the simulation of the software to be verified and the comparison object from the operation starting point of the verification object. It is like that.
In the present embodiment, the software to be verified is described as being modified except for the sheet conveyance process which is the operation to be verified. However, the software to be verified according to the present invention is an operation to be verified. Processing may be modified. For example, although a change is made to the sheet conveyance control of software, when the sheet conveyance operation of the control target is the same, the conveyance operation of the sheet which is the object to be verified can be compared using the present verification device.

図1の説明に戻る。検証対象CPUシミュレータ101及び比較対象制御模擬手段102は、検証動作の起点(以下、動作起点と記す)に到達したかを判断する動作起点到達判断機能114及び115を有している。ここでは、動作起点到達判断機能114及び115が到達判断手段に相当する。動作起点を指定する起点指定情報(以下、動作起点指定情報と記す)としては、ソフトウエアの扱う制御情報を用いる。この制御情報とは、例えば、ソフトウエア内の変数や、ソフトウエアの制御対象装置に搭載されるCPU(以下、ターゲットCPUと記す)のレジスタや、ソフトウエアのプログラムカウンタである。図5はターゲットCPUのレジスタ信号を用いて検証動作起点を定義する例である。前述のように、検証動作起点がソフトウエアの制御対象装置である画像形成装置の構成部品のピックアップソレノイド駆動信号がハイレベルである場合、図5(a)に示すように、
‐ソフトウエアの制御情報は、ピックアップソレノイド駆動信号
‐検証動作起点到達条件は、制御情報がハイレベル
として設定される。図5(b)は動作起点到達判断機能114及び115内で扱われる動
作起点情報の設定例であり、検証動作起点に用いる制御情報と、前記制御情報の検証動作起点到達条件の情報で設定する。検証動作起点に用いる制御情報は、ターゲットCPU上のアドレス、制御情報のビット長とビット位置で指定され、検証動作起点到達条件は、制御情報の条件を指定する。ピックアップソレノイド信号がアドレス0x0001の2ビット目の1ビット長さの制御情報である場合、図5(b)のように設定され、この情報は、動作起点情報116及び117に格納される。図6は動作起点到達判断機能114及び115の処理のフローチャートである。検証対象CPUシミュレータ101及び比較対象制御模擬手段102でシミュレーションを開始後、動作起点指定情報の変化を監視する(S601)。動作起点指定情報の変化である場合、動作起点成立条件を満たしているかチェックする(S602)。S602にて条件成立と判断の場合、HUB103に検証動作起点到達を通知(以下、動作起点到達通知と記す)する(S603)。なお、動作起点情報と動作起点成立条件は、動作起点情報116及び117に格納されている。検証動作起点到達を定める制御情報は、ソフトウエアの扱う制御情報が画像形成装置を構成する機械部品の駆動信号ではなく、ソフトウエア内の変数でも、ターゲットCPUのプログラムカウンタでもよい。
It returns to the explanation of FIG. The verification target CPU simulator 101 and the comparison target control simulation means 102 have operation origin arrival determination functions 114 and 115 that determine whether the origin of the verification operation (hereinafter referred to as the operation origin) has been reached. Here, the movement start arrival determination functions 114 and 115 correspond to arrival determination means. As start point specification information (hereinafter referred to as operation start point specification information) for specifying an operation start point, control information handled by software is used. The control information is, for example, a variable in software, a register of a CPU (hereinafter referred to as a target CPU) mounted on a software control target device, or a software program counter. FIG. 5 shows an example of defining the verification operation start point using the register signal of the target CPU. As described above, as shown in FIG. 5A, when the pickup solenoid drive signal of the component of the image forming apparatus whose verification operation start point is the control target device of software is at the high level,
In the control information of software, the pickup solenoid drive signal and the verification operation starting point reaching condition are set such that the control information is at the high level. FIG. 5B is a setting example of operation start point information handled in the operation start point arrival judging functions 114 and 115, which is set by control information used as a verification operation start point and information of a verification operation start point attainment condition of the control information. . The control information used for the verification operation start point is designated by the address on the target CPU and the bit length and bit position of the control information, and the verification operation start point reaching condition specifies the condition of the control information. When the pickup solenoid signal is control information of the 1 bit length of the 2nd bit of the address 0x0001, it is set as shown in FIG. 5B, and this information is stored in the operation start point information 116 and 117. FIG. 6 is a flowchart of the processing of the movement start arrival determination functions 114 and 115. After the simulation is started by the verification target CPU simulator 101 and the comparison target control simulation means 102, the change of the operation start point specification information is monitored (S601). If it is a change in the operation start point specification information, it is checked whether the operation start point satisfaction condition is satisfied (S602). If it is determined that the condition is satisfied in S602, the HUB 103 is notified of arrival of the verification operation starting point (hereinafter referred to as operation starting point arrival notification) (S603). The operation start point information and the operation start point establishment condition are stored in the operation start point information 116 and 117. The control information for determining the arrival at the verification operation start point may be a variable in software or a program counter of the target CPU, instead of control signals handled by the software, which are drive signals of mechanical parts constituting the image forming apparatus.

制御対象物シミュレータ107及び108は、ソフトウエアの制御対象装置、本例では、画像形成装置の各部品の動作を模擬する。制御対象物シミュレータ107及び108は、各部品の動作の変化を連続的に解析し、解析結果から視覚化データを生成する。制御対象物シミュレータ107が生成する視覚化データは、第一の視覚化データに相当し、制御対象シミュレータ108が生成する視覚化データは、第二の視覚化データに相当する。そして、表示装置203上に各部品の動作状態を表示する。なお、画像形成装置の各部品とは、画像形成装置を構成するモータやローラ、クラッチ等の機械部品に加え、画像転写材の紙など機械部品以外の画像形成装置で取扱われる物体、及び、定着器温度といった物性も含まれる。
図7に、制御対象物シミュレータ107及び108のコンピュータシステム201の表示装置203上の出力イメージの例を示す。701は給紙カセット、702は給紙カセット上の給紙待ち用紙、704は給紙クラッチ、705は給紙センサ、706は給紙モータ、707はピックアップソレノイド、708はピックアップローラ、709は給紙ローラを示している。また、710は搬送パス、711は搬送ローラ、712はレジストローラ、713はレジセンサ、714はレジストローラクラッチ、715は感光ドラム、716は転写ローラ、717はレーザ光表示、718はメインモータを示している。そして、719は定着ローラ、720は定着排紙ローラ、721、722、723は排紙搬送ローラ、728は画像形成装置から排出された用紙、729は排紙トレイを示している。太い実線は用紙を示し、太い破線はトナー像形成領域を示す。トナー像形成領域は、画像データの出力タイミング、画像マスク解除設定、各種高圧制御信号の設定値と設定タイミングからトナー像が正常に形成できる範囲を求めて表示される。そして、転写位置以降用紙上のトナー像形成領域が斜線で表示される。
The control object simulators 107 and 108 simulate the operation of each component of the software control target device, in this example, the image forming apparatus. The control object simulators 107 and 108 continuously analyze the change in operation of each part and generate visualization data from the analysis result. The visualization data generated by the controlled object simulator 107 corresponds to first visualization data, and the visualization data generated by the controlled object simulator 108 corresponds to second visualization data. Then, the operation state of each component is displayed on the display device 203. The parts of the image forming apparatus are, in addition to mechanical parts such as a motor, a roller, and a clutch that constitute the image forming apparatus, objects handled by the image forming apparatus other than mechanical parts such as paper of image transfer material, and fixing Physical properties such as temperature are also included.
FIG. 7 shows an example of an output image on the display device 203 of the computer system 201 of the control object simulators 107 and 108. Reference numeral 701 denotes a sheet cassette, 702 denotes a sheet waiting for sheet feeding on the sheet cassette, 704 denotes a sheet feeding clutch, 705 denotes a sheet feeding sensor, 706 denotes a sheet feeding motor, 707 denotes a pickup solenoid, 708 denotes a pickup roller, and 709 denotes sheet feeding. Shows a roller. Further, 710 indicates a conveyance path, 711 indicates a conveyance roller, 712 indicates a registration roller, 713 indicates a registration sensor, 714 indicates a registration roller clutch, 715 indicates a photosensitive drum, 716 indicates a transfer roller, 717 indicates a laser light display, and 718 indicates a main motor. There is. Further, 719 is a fixing roller, 720 is a fixing discharge roller, 721, 722, and 723 are discharge conveyance rollers, 728 is a sheet discharged from the image forming apparatus, and 729 is a discharge tray. A thick solid line indicates a sheet, and a thick broken line indicates a toner image forming area. The toner image formation area is displayed by obtaining a range in which the toner image can be normally formed from the output timing of the image data, the image mask release setting, the set values of various high voltage control signals and the setting timing. Then, after the transfer position, the toner image forming area on the sheet is displayed by oblique lines.

制御対象物シミュレータ107及び108は、生成した視覚化データを結果表示手段109に通知する。制御対象物シミュレータ107及び108は、少なくとも検証時に動作比較する制御対象物の視覚化データを結果表示手段109に通知する。ここで、制御対象物シミュレータ107及び108の視覚化データ生成及び管理方法について説明する。制御対象物シミュレータ107及び108は、各部品の視覚化データを制御対象物シミュレータ107及び108の制御対象物描画エリア内の基準点からの座標で管理する。座標はX座標とY座標で示され、以降ではX座標の値とY座標の値を(X座標値、Y座標値)と記す。搬送パス710は、複数の直線をつなぎ合わせて定義され、直線は始点と終点の2つの座標で構成される。始点は用紙搬送路上の上流であり、終点は、用紙搬送路上の下流である。また、用紙の視覚化データは、用紙先端と用紙後端の座標で構成される。制御対象物シミュレータ107及び108は、単位時間分の用紙移動量を算出し、現在(単位時
間分処理実行前の時点)の用紙位置から移動後の用紙先端、後端の座標値を算出して、用紙搬送路上での用紙位置を決定する。なお、上述の視覚化データ生成及びデータ管理方法は一例であり、本発明は、上述の視覚化データ生成方法に限定されるものではない。
The control object simulators 107 and 108 notify the result display means 109 of the generated visualization data. The control object simulators 107 and 108 notify the result display means 109 of visualization data of the control object to be compared at least at the time of verification. Here, a method of generating and managing visualization data of the control object simulators 107 and 108 will be described. The controlled object simulators 107 and 108 manage the visualization data of each part by coordinates from a reference point in the controlled object drawing area of the controlled object simulators 107 and 108. The coordinates are indicated by an X coordinate and a Y coordinate, and hereinafter, the value of the X coordinate and the value of the Y coordinate are referred to as (X coordinate value, Y coordinate value). The transport path 710 is defined by connecting a plurality of straight lines, and the straight line is configured by two coordinates of a start point and an end point. The start point is upstream on the sheet conveyance path, and the end point is downstream on the sheet conveyance path. Further, the visualization data of the sheet is constituted by the coordinates of the sheet front end and the sheet rear end. The control object simulators 107 and 108 calculate the sheet movement amount for the unit time, and calculate the coordinate values of the leading and trailing ends of the sheet after movement from the current sheet position (at the time before the processing for the unit time). , Determine the sheet position on the sheet conveyance path. In addition, the above-mentioned visualization data generation and data management method are an example, and the present invention is not limited to the above-mentioned visualization data generation method.

制御対象物シミュレータ107は、検証対象ソフトウエアの制御対象物の動作をシミュレーションし、制御対象物シミュレータ108は、比較対象ソフトウエアの制御対象物の動作をシミュレーションする。具体的には、制御対象物シミュレータ107は、検証対象CPUシミュレータ101から出力される制御対象装置の制御情報で検証対象ソフトウエア111の制御対象物の動作を模擬する。そして、制御対象物シミュレータ108は、比較対象制御模擬手段102から出力される制御対象装置の制御情報で比較対象ソフトウエアの制御対象物の動作をシミュレーションする。
なお、検証対象CPUシミュレータ101と制御対象物シミュレータ107は、検証対象ソフトウエアの動作を模擬するためのシミュレーショングループである。そのため、検証対象CPUシミュレータ101と制御対象物シミュレータ107を検証対象シミュレーショングループと定義する。同様に、比較対象制御模擬手段102と制御対象物シミュレータ108は、比較対象ソフトウエアの動作を模擬するための比較対象シミュレーショングループと定義する。
The control target simulator 107 simulates the operation of the control target of the verification target software, and the control target simulator 108 simulates the operation of the control target of the comparison target software. Specifically, the control target simulator 107 simulates the operation of the control target of the verification target software 111 with the control information of the control target device output from the verification target CPU simulator 101. Then, the control object simulator 108 simulates the operation of the control object of the comparison target software with the control information of the control target device output from the comparison target control simulation means 102.
The verification target CPU simulator 101 and the control target simulator 107 are simulation groups for simulating the operation of the verification target software. Therefore, the verification target CPU simulator 101 and the control target simulator 107 are defined as a verification target simulation group. Similarly, the comparison target control simulation unit 102 and the control target simulator 108 are defined as a comparison target simulation group for simulating the operation of the comparison target software.

HUB103は、独立プロセスとして動作する複数のシミュレータアプリケーションを接続し、連携動作させる。HUB103は、同期手段104と配線データ管理手段105から構成される。各シミュレータアプリケーションは、他アプリケーションに結線されているデータが変化すると、データをHUB103に出力する。配線データ管理手段105は、各シミュレータ間でのデータのつながりを、配線情報として管理し、各シミュレータ間でのデータやりとりを行う。   The HUB 103 connects a plurality of simulator applications operating as independent processes to operate in cooperation with each other. The HUB 103 comprises synchronization means 104 and wiring data management means 105. Each simulator application outputs data to the HUB 103 when data connected to another application changes. The wiring data management unit 105 manages, as wiring information, the connection of data among the simulators, and exchanges data between the simulators.

同期手段104は、検証装置を構成するアプリケーション間の同期をとる機能である。同期手段104は、2つの同期モードを有している。1つは、検証対象シミュレーショングループと比較対象シミュレーショングループの両シミュレーショングループが検証動作の起点到達前の起点到達前同期モード、もう1つは、両シミュレーショングループが検証動作の起点到達後の起点到達後同期モードである。シミュレーション実行中、検証対象及び比較対象シミュレーショングループの各々のグループ内は、常に時間同期が必要であり、各グループ間の時間同期は、動作起点到達以降のみ必要である。なぜなら、時間経過に伴うソフトウエアの制御対象物の動作を比較検証するには、2つのシミュレーショングループの検証動作起点を同期させる必要がある。しかし、検証動作起点に至るまでは各々のグループ内で時間同期がとれていればよく、グループ間の同期は不要だからである。一方、動作起点到達以降は、2つの検証動作の比較を行うため、グループ間での時間同期をとる必要があるからである。そのため、検証動作起点到達前後で、同期モードを変更し、シミュレーションを実行している。すなわち、同期手段104は、同期方法を変更する同期変更手段を有している。本例では、起点到達前同期モードとして、シミュレーショングループ内のシミュレータのみで同期するグループ内同期、起点到達後同期モードとして、シミュレーショングループ間のすべてのシミュレータで同期するグループ間同期として説明する。なお、1つのシミュレーショングループ内での時間同期方法は公知であるので詳述は避ける。   The synchronization means 104 is a function to synchronize the applications constituting the verification device. The synchronization means 104 has two synchronization modes. One is the pre-arrival synchronization mode before reaching the starting point of the verification operation, and the other simulation group is after the starting point after the starting point of the verification operation. It is a synchronous mode. During simulation, time synchronization is always required in each of the verification target and comparison target simulation groups, and time synchronization between the groups is necessary only after reaching the operation start point. Because, in order to compare and verify the operation of the control object of the software over time, it is necessary to synchronize the verification operation starting points of the two simulation groups. However, it is sufficient that time synchronization is achieved within each group until the verification operation start point, and synchronization between the groups is unnecessary. On the other hand, after reaching the operation start point, it is necessary to synchronize time between the groups in order to compare two verification operations. Therefore, the simulation is performed by changing the synchronization mode before and after reaching the verification operation start point. That is, the synchronization means 104 includes synchronization change means for changing the synchronization method. In this example, an intra-group synchronization synchronized with only the simulators in the simulation group is described as the pre-start point synchronization mode, and an inter-group synchronization synchronized with all the simulators among the simulation groups as the inter-group synchronization synchronized with only the simulators in the simulation group. In addition, since the time synchronization method in one simulation group is known, the detail is avoided.

同期手段104は、動作起点同期機能106を有している。動作起点同期機能106は、検証対象ソフトウエアと比較対象ソフトウエアの検証対象動作の起点を同期させる機能である。動作起点同期機能106は、シミュレーショングループ情報112と動作起点到達情報113を有している。シミュレーショングループ情報112は、検証対象シミュレーショングループ及び比較対象シミュレーショングループのシミュレータ構成を示す情報である。具体的には、シミュレーショングループ情報112はシミュレーショングループ
とそのグループを構成するシミュレータアプリケーションを関連付けた情報である。動作起点到達情報113は、各シミュレーショングループの動作起点到達状態を示す情報であり、シミュレーショングループと動作起点到達状態を関連付けた情報である。図8(a)にシミュレーショングループ情報112の具体例を、図8(b)に動作起点到達情報113の具体例を示す。検証対象CPUシミュレータ101及び比較対象制御模擬手段102が有する動作起点到達判断機能114及び115より動作起点到達通知を受領すると、動作起点到達通知の通知元アプリケーションが、どのシミュレーショングループに属するかチェックする。そして、動作起点到達情報113において、動作起点到達したシミュレーショングループの動作起点到達状態を更新する。
The synchronization means 104 has an operation origin synchronization function 106. The operation start synchronization function 106 is a function to synchronize the start of the verification target operation of the verification target software and the comparison target software. The movement start synchronization function 106 has simulation group information 112 and movement start arrival information 113. The simulation group information 112 is information indicating the simulator configuration of the verification target simulation group and the comparison target simulation group. Specifically, simulation group information 112 is information in which a simulation group is associated with a simulator application that configures the group. The operation starting point arrival information 113 is information indicating the operation starting point reaching state of each simulation group, and is information in which the simulation group and the operation starting point reaching state are associated. FIG. 8A shows a specific example of the simulation group information 112, and FIG. 8B shows a specific example of the operation start point arrival information 113. As shown in FIG. When the operation start point arrival notices are received from the operation start point arrival judging functions 114 and 115 possessed by the verification target CPU simulator 101 and the comparison target control simulation means 102, it is checked to which simulation group the notification source application of the operation start point arrival notice belongs. Then, in the movement start point arrival information 113, the movement start point arrival state of the simulation group that has reached the movement start point is updated.

図9は、検証対象シミュレーショングループと比較対象シミュレーショングループの検証動作起点を同期するための同期手段104の処理フローチャートである。同期手段104は、各々のシミュレーショングループ内で同期をとる(S901)。全シミュレーショングループが動作起点到達したかをチェックし(S902)、両シミュレーショングループが動作起点に到達していれば、全アプリケーションで同期を行う(S903)。なお、検証装置全体のシミュレーション時間は、2つのシミュレーショングループの動作起点到達を起点に管理する。   FIG. 9 is a process flowchart of the synchronization means 104 for synchronizing the verification operation starting point of the verification target simulation group and the comparison target simulation group. The synchronization unit 104 synchronizes within each simulation group (S901). Whether all simulation groups have reached the operation start point is checked (S902), and if both simulation groups have reached the operation start point, synchronization is performed in all applications (S903). In addition, the simulation time of the whole verification apparatus manages the operation starting point arrival of two simulation groups as a starting point.

ここで、S901とS903の同期方法について、具体例を挙げて説明する。同期手段104は、1つのシミュレーショングループを構成するシミュレータ間で時間同期をする同期モジュールを複数有している。S901では、第一の同期モジュールが検証対象シミュレーショングループ内で時間同期をとり、第二の同期モジュールが比較対象シミュレーショングループ内で時間同期とることで、各々のシミュレーショングループが並行にシミュレーションを進行する。当該シミュレーショングループが動作起点に到達以降、2つのシミュレーショングループの動作起点到達を待って、全アプリケーションで時間同期をとる。
動作起点到達以降、全アプリケーションで時間同期をとる方法は2つある。
1つは、動作起点到達以降、第一の同期モジュール又は第二の同期モジュールが、同期対象のアプリケーションを全アプリケーションに変更し、検証装置を構成する全アプリケーション間で時間同期をとる方法である。第一及び第二の同期モジュールは、どのアプリケーション間で時間同期をするか同期アプリケーション情報を有している。このため、シミュレーショングループが動作起点に到達すると、当該同期モジュールは、他方のシミュレーショングループの動作起点到達を待つ。もう一方のシミュレーショングループが動作起点に到達すると、一方のシミュレーショングループの同期モジュールは、同期アプリケーション情報を全アプリケーションに更新する。このとき、他方のシミュレーショングループの同期モジュールは同期アプリケーション情報を同期アプリケーションなしに更新する。2つのシミュレーショングループが動作起点に到達した後は、同期アプリケーション情報が全アプリケーションに更新された第一もしくは第二の同期モジュールのいずれか一方が、検証装置を構成する全アプリケーション間で時間同期をとる方法である。
もう1つは、第一の同期モジュールと第二の同期モジュールを同期させる第三の同期モジュール(統括同期モジュール)を有し、検証装置を構成する全アプリケーション間で時間同期をとる方法である。第一及び第二の同期モジュールの同期対象のシミュレーショングループが動作起点に到達すると、第三の同期モジュールは、第一と第二の同期モジュールの時間同期処理を同期させる。なお、第一及び第二の同期モジュールのいずれか一方は、動作起点到達時に、同期処理対象のアプリケーションに結果表示手段109を加える。
ここで、同期方法の一例をあげる。同期手段104が所定時間の実行を検証装置の構成アプリケーションに指示し、各アプリケーションが同期手段104から指示された所定時間分の処理を終了すると、HUB103に対して実行終了を通知する同期方法の場合である。
本実施例で示した時間同期の方法は一例であって、本発明の同期方法に限定されるもの
ではなく、関連するアプリケーション間で模擬時間を同期させる方法であれば、本発明での同期方法は問わない。
Here, the synchronization method of S901 and S903 will be described by taking a specific example. The synchronization means 104 has a plurality of synchronization modules for performing time synchronization between the simulators constituting one simulation group. In S901, the first synchronization module synchronizes time in the verification target simulation group, and the second synchronization module synchronizes time in the comparison target simulation group, so that each simulation group proceeds with the simulation in parallel. After the simulation group reaches the operation start point, all the applications are synchronized in time after waiting for the operation start points of the two simulation groups.
After reaching the operation start point, there are two methods for time synchronization in all applications.
One is a method in which the first synchronization module or the second synchronization module changes the application to be synchronized to all applications and achieves time synchronization among all the applications constituting the verification device after reaching the operation start point. The first and second synchronization modules have synchronization application information as to which applications to perform time synchronization. Therefore, when the simulation group reaches the operation start point, the synchronization module waits for the operation start point of the other simulation group to arrive. When the other simulation group reaches the operation start point, the synchronization module of one simulation group updates synchronous application information to all applications. At this time, the synchronization module of the other simulation group updates the synchronization application information without the synchronization application. After the two simulation groups have reached the operation start point, one of the first and second synchronization modules whose synchronization application information has been updated for all applications synchronizes time among all the applications constituting the verification device. It is a method.
The other is a method having a third synchronization module (general synchronization module) for synchronizing the first synchronization module and the second synchronization module, and time synchronization among all the applications constituting the verification device. When the synchronization target simulation groups of the first and second synchronization modules reach the operation start point, the third synchronization module synchronizes the time synchronization processing of the first and second synchronization modules. Note that one of the first and second synchronization modules adds result display means 109 to the application to be subjected to synchronization processing when the operation start point is reached.
Here, an example of the synchronization method is given. In the case of the synchronization method of notifying the HUB 103 of the end of execution when the synchronization means 104 instructs the configuration application of the verification apparatus to execute the predetermined time, and each application finishes the processing for the predetermined time instructed from the synchronization means 104 It is.
The method of time synchronization shown in the present embodiment is an example, and is not limited to the synchronization method of the present invention, and the synchronization method of the present invention is a method of synchronizing simulated time between related applications. It does not matter.

配線データ管理手段105は、シミュレータ間を結ぶデータに関する各種設定情報(不図示)より各シミュレータ間のデータ伝達を行う。
結果表示手段109は、制御対象物シミュレータ107及び制御対象物シミュレータ108が生成する視覚化データを重ね合わせて表示する結果表示手段である。なお、視覚化データを重ね合わせて表示する手法に関しては公知技術であるので詳述は省略する。図10に結果表示手段109のコンピュータシステム201の表示装置203上の出力イメージの例を示す。制御対象物シミュレータ107及び108の搬送用紙を重ねて表示している。2枚の用紙のうち一方の用紙7021を太線で、もう一方の用紙7022を破線と点線の組み合わせで表示している。
The wiring data management unit 105 performs data transmission between the simulators based on various setting information (not shown) regarding data connecting the simulators.
The result display means 109 is a result display means which superimposes and displays the visualization data which the control object simulator 107 and the control object simulator 108 produce | generate. In addition, since it is a well-known technique regarding the method of superimposing and displaying visualization data, detailed description is abbreviate | omitted. An example of an output image on the display device 203 of the computer system 201 of the result display means 109 is shown in FIG. The conveyance sheets of the control object simulators 107 and 108 are superimposed and displayed. Of the two sheets, one sheet 7021 is indicated by a thick line, and the other sheet 7022 is indicated by a combination of a broken line and a dotted line.

以下、本実施例のシミュレーション同期動作について、本実施例での具体例を挙げて説明する。
同期手段104は、S901で、検証対象ソフトウエアのシミュレータと検証対象ソフトウエアから出力される制御信号により動作する画像形成装置シミュレータとで時間同期をとりシミュレーションを実行する。同様に、同期手段104は、S901で、比較対象ソフトウエアのシミュレータと比較対象ソフトウエアから出力される制御信号により動作する画像形成装置シミュレータとで時間同期をとりシミュレーションを実行する。検証対象シミュレーショングループのシミュレーション実行が進み、検証対象ソフトウエア111がピックアップソレノイド駆動信号へハイレベル信号を出力する。そうすると、検証対象ソフトウエアのシミュレータが有する動作起点判断機能114が動作起点到達と判断し、HUB103へ動作起点到達通知を行う。動作起点到達通知を受領したHUB103は、動作起点同期機能106のシミュレーショングループ情報112より、動作起点到達通知したアプリケーション(検証対象ソフトウエアシミュレータ)が検証対象シミュレーショングループであると判断する。そして、検証対象シミュレーショングループは動作起点到達と判断し、動作起点到達情報113を変更する。検証対象シミュレーショングループの同期モジュールは、同期アプリケーション情報を検証対象シミュレーショングループと比較対象シミュレーショングループ及び結果表示手段を含めた全アプリケーションを同期処理対象に変更する。ここで、検証対象シミュレーショングループはシミュレーション時間が一時停止の状態になる。比較対象ソフトウエアがピックアップソレノイド駆動信号へハイレベル信号を出力すると、比較対象ソフトウエアのシミュレータが有している動作起点到達判断機能115が動作起点到達と判断し、HUB103へ動作起点到達通知を行う。動作起点到達通知を受領したHUB103は、動作起点同期機能106のシミュレーショングループ情報112より、動作起点到達通知したアプリケーション(比較対象ソフトウエアシミュレータ)が比較対象シミュレーショングループであると判断する。そして、比較対象シミュレーショングループは動作起点到達と判断し、動作起点到達情報113を変更する。比較対象シミュレーショングループの同期モジュールは、同期アプリケーション情報を同期アプリケーションなしに変更する。S902で、動作起点同期機能106は、動作起点到達情報113をチェックし、検証対象シミュレーショングループと比較対象シミュレーショングループのどちらもが動作起点に到達しているので、S903へ進む。そして、S903で、全アプリケーションで同期をとり、シミュレーション時間を進めてゆく。
The simulation synchronization operation of the present embodiment will be described below with reference to a specific example of the present embodiment.
In step S901, the synchronization unit 104 synchronizes time with the simulator of the software to be verified and the image forming apparatus simulator operated by the control signal output from the software to be verified and executes the simulation. Similarly, in step S901, the synchronization unit 104 synchronizes time with the simulator of the software to be compared and the image forming apparatus simulator operated by the control signal output from the software to be compared and executes simulation. The simulation execution of the verification target simulation group proceeds, and the verification target software 111 outputs a high level signal to the pickup solenoid drive signal. Then, the operation start point determination function 114 of the simulator of the software to be verified determines that the operation start point is reached, and notifies the HUB 103 of the operation start point arrival. From the simulation group information 112 of the operation start synchronization function 106, the HUB 103 that has received the operation start arrival notification determines that the application (verification target software simulator) notified of the operation start arrival is the verification target simulation group. Then, the verification target simulation group determines that the operation start point is reached, and changes the operation start point arrival information 113. The synchronization module of the verification target simulation group changes all the applications including the verification target simulation group, the comparison target simulation group, and the result display means to the synchronous processing target. Here, the simulation time of the verification target simulation group is suspended. When the comparison target software outputs a high level signal to the pick-up solenoid drive signal, the operation start attainment determination function 115 of the simulator of the comparison target software determines that the operation start has arrived and notifies the HUB 103 of the operation start attainment. . The HUB 103 that has received the operation start point arrival notification determines from the simulation group information 112 of the operation start point synchronization function 106 that the application notified of the operation start point arrival (comparison target software simulator) is a comparison target simulation group. Then, the comparison target simulation group determines that the operation start point is reached, and changes the operation start point arrival information 113. The synchronization module of the comparison target simulation group changes the synchronization application information to no synchronization application. In step S902, the operation start synchronization function 106 checks the operation start arrival information 113, and since both the verification target simulation group and the comparison target simulation group have reached the operation start, the processing proceeds to step S903. Then, in step S903, synchronization is established for all the applications, and the simulation time is advanced.

なお、本実施例では、動作起点到達判断機能114及び115を検証対象CPUシミュレータ101及び比較対象制御模擬手段102が有している構成で説明を行ったが、HUB103が動作起点到達判断機能114及び115を有していてもよい。その場合には、検証対象CPUシミュレータ101及び比較対象制御模擬手段102は、動作起点到達判断に必要なソフトウエアの制御情報をHUB103へ伝達する機能を有する。
また、検証対象ソフトウエアと比較対象ソフトウエアは異なるソフトウエアであるとして説明を行ったが、検証対象ソフトウエアと比較対象ソフトウエアが同じソフトウエアでもよい。例えば、画像形成装置301の定着器310の温度上昇率が異なるシミュレーションモデルで制御対象物シミュレータ107と108を動作させることがある。これは、定着器310の加熱処理において制御ソフトウエアにおける用紙搬送以外の処理が異なる条件でも、用紙搬送動作に差異がないことを確認する場合である。
In the present embodiment, the operation start point arrival judging functions 114 and 115 are described as having the verification target CPU simulator 101 and the comparison object control simulation means 102, but the HUB 103 has the operation start point arrival judgment function 114 and It may have 115. In that case, the verification target CPU simulator 101 and the comparison target control simulation unit 102 have a function of transmitting control information of software necessary for the operation start point arrival determination to the HUB 103.
Although the software to be verified and the software to be compared are different from each other, the software to be verified and the software to be compared may be the same software. For example, the control object simulators 107 and 108 may be operated with simulation models in which the temperature rise rates of the fixing unit 310 of the image forming apparatus 301 are different. This is a case where it is confirmed that there is no difference in the sheet conveyance operation even under the condition that the process other than the sheet conveyance in the control software is different in the heating process of the fixing device 310.

以上、ソフトウエアの制御情報に変化がある度に、予め定めた動作起点の情報に基づき、動作起点に到達したかを判断し、検証対象シミュレーショングループと比較対象シミュレーショングループとの検証動作起点を同期させる。そして、検証動作について、2つのソフトウエアの制御対象物の動きを重ね合わせて視覚化データを表示する。この構成により、2つの制御ソフトウエアの制御結果である制御対象物の動きの差異を検証することができる。したがって、ソフトウエアの動作検証時に、2つのソフトウエアの動作の違いを認識しやすくなり、ソフトウエア検証の作業効率が向上する。また、2つのソフトウエア動作の違いが認識しやすくなるため、想定外動作の検出率が向上し、ソフトウエア開発工程において後工程への想定外動作の流出防止につながる。   As described above, whenever there is a change in the control information of software, it is determined whether the operation start point is reached based on the information of the operation start point determined in advance, and the verification operation start point of the verification target simulation group and the comparison target simulation group is synchronized. Let Then, in the verification operation, the movement of the control object of the two softwares is superimposed to display the visualization data. According to this configuration, it is possible to verify the difference in the movement of the controlled object which is the control result of the two control software. Therefore, at the time of software operation verification, it becomes easy to recognize the difference between the operation of the two software, and the working efficiency of software verification is improved. In addition, since the difference between the two software operations can be easily recognized, the detection rate of the unexpected operation is improved, which leads to the prevention of the outflow of the unexpected operation to the post process in the software development process.

実施例1では、検証動作の起点がソフトウエアの制御情報を用いて定められていた。しかし、検証動作起点がソフトウエアの制御情報を用いて定義できない場合がある。例えば、ソフトウエアの制御対象物が所定の状態になることが検証動作起点の場合である。そこで、実施例2では、検証装置においてソフトウエアの制御情報ではなく、ソフトウエアの制御対象物の動作を決める情報を用いて検証動作起点を定め、制御対象物の動作を決める情報の変化をトリガに検証動作起点到達の判断を行う。また、検証動作の差異発生を検証装置が自動検出し、差異発生検出後シミュレーション実行を一時停止させる。以下、実施例1との相違点を中心に説明する。   In the first embodiment, the starting point of the verification operation is determined using control information of software. However, there are cases where the verification operation start point can not be defined using software control information. For example, in the case of the verification operation starting point, the control object of software is brought into a predetermined state. Therefore, in the second embodiment, the verification apparatus determines the start point of the verification operation using information that determines the operation of the control object of the software, not the control information of the software, and triggers a change in the information that determines the operation of the control object. The judgment of the verification operation starting point arrival is performed. Further, the verification device automatically detects the occurrence of the difference in the verification operation, and temporarily suspends the simulation execution after the detection of the difference. Hereinafter, differences from the first embodiment will be mainly described.

図11は、実施例2における検証装置の機能構成図である。実施例1の検証装置の機能構成との相違点は、動作起点到達判断機能が、ソフトウエアの制御情報ではなく、ソフトウエアの制御結果としての制御対象物の状態変化から動作起点を検出する点である。このため、動作起点到達判断機能1114、1115は、各々、制御対象物シミュレータ1107及び1108に有する構成となっている。   FIG. 11 is a functional configuration diagram of the verification device in the second embodiment. The difference from the functional configuration of the verification device of the first embodiment is that the action start arrival determination function detects the action start from the change in state of the control object as the control result of the software, not the control information of the software. It is. Therefore, the operation start point arrival determination functions 1114 and 1115 are configured to be included in the control object simulators 1107 and 1108, respectively.

以下、機能構成の相違点の詳細を説明する。
動作起点到達判断機能1114及び1115は、ソフトウエアの制御対象物の動作が動作起点として予め定められた状態になったことを判断し、HUB103へ動作起点到達を通知する機能である。実施例2では、画像形成装置301の用紙搬送路上のレジストローラ307のへの用紙先端到達が検証動作の起点である場合を例に挙げて、制御対象物シミュレータ1107及び1108の処理を説明する。
図12は、ソフトウエアの制御対象物である用紙702先端のレジストローラ712への到達が動作起点である場合の検証動作の起点情報の設定例である。動作起点を示す情報は、部品を示す情報と動作起点到達時の部品状態を示す情報の2つの情報で構成される。部品を示す情報として部品IDと部品部位を、部品状態を示す情報として前記部品と接する部品及び条件を設定する。図12は、検証対象物である用紙を示す部品ID“PAP”、用紙先端を示す“LEAD”、レジストローラを示す“ROL4”が設定されていることを示す。なお、制御対象物シミュレータ1107及び1108では、レジストローラ712は部品IDが“ROL4”とする。さらに、用紙先端位置がレジストローラの外周位置と等しくなる、すなわち用紙先端が前記レジストローラの外周位置に到達を示す条件“==”が設定されていることを示す。なお、“==”は2つの情報が等しくなることを示す。
制御対象物シミュレータ1107及び1108は、各部品の配設位置及び他部品との接点位置を座標情報で管理する。例えば、レジストローラ712は、ローラ中心点座標でローラの配設位置を定義し、用紙搬送路上に配設される接点ポイント(不図示)の座標でローラと用紙との接点を定義する。及び動作起点情報1116及び1117が図12に示される情報である場合、動作起点到達判断機能1114及び1115は、レジストローラ712の接点ポイントの座標に用紙先端の座標が到達したことを検知して、動作起点到達と判断する。
Hereinafter, the details of the difference in functional configuration will be described.
The action start point arrival determination functions 1114 and 1115 are functions for determining that the action of the control object of software is in a predetermined state as the action start point, and notifying the HUB 103 of the action start point arrival. In the second embodiment, the processing of the control object simulators 1107 and 1108 will be described by taking, as an example, the case where the leading end of the sheet at the registration roller 307 on the sheet conveyance path of the image forming apparatus 301 is the starting point of the verification operation.
FIG. 12 is a setting example of starting point information of verification operation in the case where the arrival of the leading end of the sheet 702, which is a control object of software, reaches the registration roller 712 is the operation starting point. The information indicating the operation start point is composed of two pieces of information indicating the part and information indicating the state of the part at the time of reaching the operation start point. A part ID and a part part are set as information indicating a part, and a part and a condition in contact with the part are set as information indicating a part state. FIG. 12 shows that the part ID “PAP” indicating the sheet to be verified, “LEAD” indicating the leading end of the sheet, and “ROL 4” indicating the registration roller are set. In the controlled object simulators 1107 and 1108, the registration roller 712 has the part ID “ROL4”. Further, it indicates that the condition “==” indicating that the sheet front end position is equal to the outer peripheral position of the registration roller, that is, the sheet front end reaches the outer peripheral position of the registration roller. “==” indicates that the two pieces of information are equal.
The control object simulators 1107 and 1108 manage the arrangement position of each component and the contact position with other components using coordinate information. For example, the registration roller 712 defines the disposition position of the roller in the roller center point coordinates, and defines the contact point between the roller and the sheet in the coordinates of a contact point (not shown) disposed on the sheet conveyance path. If the operation start point information 1116 and 1117 is the information shown in FIG. 12, the operation start point arrival judging functions 1114 and 1115 detect that the coordinates of the leading end of the sheet have reached the coordinates of the contact point of the registration roller 712, It is determined that the movement starting point is reached.

図6の動作起点到達判断機能の処理フローチャートを用いて動作起点到達判断機能1114及び1115の処理を説明する。S601では、動作起点の指定に用いられる部品の動きを決める情報に変化があるかをチェックする。本実施例では、用紙を用いて動作起点を指定しているので、用紙の動きを決める情報に変化があるかをチェックすることになる。前述の通り、制御対象物シミュレータ1107及び1108では、単位時間分の用紙移動量を算出しており、用紙の動きを決める情報として用紙移動量を用いる。用紙移動量がゼロであれば、用紙の動きを決める情報に変化なしと判断し、用紙移動量がゼロ以外であれば、用紙の動きを決める情報に変化ありと判断する。S601で用紙の動きを決める情報に変化ありと判断すると、S602にて、用紙搬送路上での用紙先端位置の座標がレジストローラ712の接点ポイントの座標に到達したかを判断する。
なお、用紙先端の座標がレジストローラ712の接点ポイントより搬送パス710上の下流に位置している場合に、レジストローラに到達と判断する。S602にてレジストローラ712の接点ポイントに用紙先端到達と判断すると、検証動作起点到達をHUB103に通知する(S603)。レジストローラ712の接点ポイントより用紙先端が搬送パス710上の下流に位置しているかの判断は、以下の方法で行う。搬送パス710は前述の通り複数の直線をつなぎ合わせて定義されている。レジストローラ712の接点ポイントが存在する搬送パスを構成する1つの直線上で用紙先端の座標とレジストローラ712の接点ポイントの座標のいずれが直線の終点座標に近いかにより、用紙先端がレジストローラ712より下流に位置しているかを判断する。すなわち、用紙先端の座標とレジストローラ712の接点ポイントの座標のいずれが用紙搬送路の下流側座標との距離が短いかにより、用紙先端がレジストローラ712より下流に位置しているかを判断する。
The processing of the movement start arrival judgment functions 1114 and 1115 will be described using the processing flowchart of the movement start arrival judgment function of FIG. In step S601, it is checked whether there is a change in the information that determines the movement of the component used to specify the operation start point. In this embodiment, since the operation start point is designated using the sheet, it is checked whether there is a change in the information for determining the movement of the sheet. As described above, the control object simulators 1107 and 1108 calculate the sheet movement amount for the unit time, and use the sheet movement amount as the information for determining the movement of the sheet. If the paper movement amount is zero, it is determined that the information for determining the movement of the paper is not changed, and if the paper movement amount is other than zero, it is determined that the information for determining the movement of the paper is changed. If it is determined in S601 that there is a change in the information that determines the movement of the sheet, it is determined in S602 whether the coordinates of the leading end of the sheet on the sheet conveyance path have reached the coordinates of the contact point of the registration roller 712.
When the coordinates of the leading end of the sheet are located on the downstream of the conveyance path 710 from the contact point of the registration roller 712, it is determined that the registration roller is reached. If it is determined that the leading edge of the sheet is reached at the contact point of the registration roller 712 in S602, the HUB 103 is notified that the verification operation starting point is reached (S603). Whether the leading end of the sheet is positioned on the conveyance path 710 downstream from the contact point of the registration roller 712 is determined by the following method. The transport path 710 is defined by connecting a plurality of straight lines as described above. Depending on which of the coordinates of the leading end of the sheet and the coordinates of the contact point of the registration roller 712 are closer to the end point of the straight line on one straight line constituting the conveyance path in which the contact point of the registration roller 712 exists, Determine if it is located further downstream. That is, it is determined whether the leading end of the sheet is located downstream of the registration roller 712 depending on which of the coordinates of the leading end of the sheet and the coordinates of the contact point of the registration roller 712 is shorter than the downstream coordinate of the sheet conveyance path.

結果表示手段1109は、動作差異検出機能1118を有する。動作差異検出機能1118は、比較する2つの動作の差異を検出する機能である。検証動作制御対象物シミュレータ1107及び1108から、視覚化データを受領し、前記視覚化データから2つの検証動作の差異を検出する。
図13は動作差異検出機能1118の処理フローチャートである。結果表示手段1109は、制御対象物シミュレータ1107及び1108から視覚化データを受領するまで待つ(S1301)。制御対象物シミュレータ1107及び1108から視覚化データを受領すると、制御対象物シミュレータ1107及び1108の2つから視覚化データを受領したかをチェックする(S1302)。S1302で2つの視覚化データ受領と判断すると、2つの視覚化データを比較する(S1303)。S1303の比較処理の結果、2つの視覚化データに差異があるかをチェックする(S1304)。S1304で、比較結果に差異がなければ、S1301に戻り、新たな視覚化データを受領するまで待つ。S1304で、比較結果に差異があれば、表示部203に動作差異発生を表示する(S1305)。
なお、結果表示手段1109は、動作差異検出機能1118が動作差異を検出すると、結果表示手段1109のシミュレーション時間の進行を停止する。結果表示手段1109がシミュレーション時間を止めることで、同期手段104は検証対象シミュレーショングループ及び比較対象シミュレーショングループの時間同期を一時停止する。結果として検証装置全体のシミュレーション時間が一時停止し、検証対象動作の差異発生時点で、シミュレーションを一時停止することができる。
The result display means 1109 has an operation difference detection function 1118. The operation difference detection function 1118 is a function to detect a difference between two operations to be compared. Verification operation Control unit receives visualization data from controlled object simulators 1107 and 1108 and detects a difference between the two verification operations from the visualization data.
FIG. 13 is a processing flowchart of the operation difference detection function 1118. The result display unit 1109 waits until visualization data is received from the control object simulators 1107 and 1108 (S1301). When visualization data is received from the control object simulators 1107 and 1108, it is checked whether visualization data is received from two of the control object simulators 1107 and 1108 (S1302). If it is determined in S1302 that two visualization data are received, the two visualization data are compared (S1303). As a result of the comparison processing of S1303, it is checked whether there is a difference between the two visualization data (S1304). If there is no difference in the comparison result in S1304, the process returns to S1301 and waits until new visualization data is received. If there is a difference in the comparison result in S1304, the operation difference occurrence is displayed on the display unit 203 (S1305).
When the operation difference detection function 1118 detects an operation difference, the result display unit 1109 stops the progress of the simulation time of the result display unit 1109. When the result display unit 1109 stops the simulation time, the synchronization unit 104 suspends time synchronization of the verification target simulation group and the comparison target simulation group. As a result, the simulation time of the entire verification apparatus is temporarily stopped, and the simulation can be temporarily stopped at the time when the difference of the operation to be verified occurs.

以下、本実施例の具体例を挙げて、動作差異検出機能1118の処理を説明する。制御対象物シミュレータ1107及び1108から、視覚化データとして用紙先端と用紙後端の座標情報を通知される。よって、S1303では、制御対象物シミュレータ407から通知される用紙先端座標と用紙後端座標と制御対象物シミュレータ408から通知される用紙先端座標と用紙後端座標を比較する。具体的には、制御対象物シミュレータ407から通知される用紙先端座標は(Plx1,Ply1)、用紙後端座標は(Ptx1,Pty1)である。そして、制御対象物シミュレータ408から通知される用紙先端座標は(Plx2,Ply2)、用紙後端座標は(Ptx2,Pty2)である。Plx1==Plx2、Ply1==Ply2、Ptx1==Ptx2、Pty1==Pty2が全て成立する場合は、制御対象物シミュレータ1107及び1108とで用紙位置が同じである、すなわち、S1304にて検証動作に差異なしと判断する。Plx1==Plx2、Ply1==Ply2、Ptx1==Ptx2、Pty1==Pty2のどれか1つでも成立しない場合は、S1304にて検証動作に差異ありと判断し、動作差異発生を表示部203に表示する(S1305)。
なお、本実施例では、動作起点到達判断機能1114及び1115を制御対象物シミュレータ1107及び1108が有している構成で説明を行ったが、HUB103が動作起点到達判断機能1114及び1115を有していてもよい。その場合には、制御対象物シミュレータ1107及び1108は、動作起点到達判断に必要な制御装置を構成する部品の動作を決める情報をHUB103へ伝達する機能を有する。
Hereinafter, the process of the operation difference detection function 1118 will be described by taking a specific example of the present embodiment. Coordinate information of the sheet front end and the sheet rear end is notified from the control object simulators 1107 and 1108 as visualization data. Therefore, in step S1303, the sheet leading end coordinates notified from the control target simulator 407, the sheet trailing end coordinates, and the sheet leading end coordinates notified from the control target simulator 408 are compared with the sheet trailing end coordinates. Specifically, the sheet front end coordinates notified from the control target simulator 407 are (Plx1, Ply1), and the sheet rear end coordinates are (Ptx1, Pty1). The sheet front end coordinates notified from the control object simulator 408 are (Plx2, Ply2), and the sheet rear end coordinates are (Ptx2, Pty2). If Plx1 == Plx2, Ply1 == Ply2, Ptx1 == Ptx2, Pty1 == Pty2 are all satisfied, the control object simulators 1107 and 1108 have the same sheet position, that is, the verification operation is performed in S1304. Judge as no difference. If any one of Plx1 == Plx2, Ply1 == Ply2, Ptx1 == Ptx2, Pty1 == Pty2 is not satisfied, it is determined in S1304 that there is a difference in the verification operation, and the occurrence of the operation difference is displayed on the display unit 203. It displays (S1305).
In this embodiment, although the operation target arrival simulators 1107 and 1108 have the operation origin arrival judgment functions 1114 and 1115 in the configuration, the HUB 103 has the operation origin arrival judgment functions 1114 and 1115. May be In that case, the control object simulators 1107 and 1108 have a function of transmitting to the HUB 103 information that determines the operation of the component that constitutes the control device necessary for the operation start point arrival determination.

本実施例では、動作起点を定める部品が用紙であるとして説明を行ったが、動作起点を定める部品は用紙以外の部品でもよい。用紙以外の部品とは、例えばローラであり、ピックアップローラ303がカセット302内にある給紙前の用紙Sと接することを動作起点と定めてもよい。この場合、ピックアップローラの外周が用紙と接すること示すデータで動作起点を設定する。また、動作起点到達時の部品状態を示す情報は、部品自体の動作状態を示す情報でもよく、例えば、用紙Sが停止状態から移動状態になることを動作起点のとして定める。この場合、動作起点到達判断機能1114及び1115は、用紙先端と用紙後端の座標がシミュレーション開始時点での用紙配設位置座標と異なることをチェックすればよい。   In the present embodiment, the description has been made on the assumption that the component for determining the operation start point is a sheet, but the component for determining the operation start point may be a component other than the sheet. The parts other than the sheet are, for example, rollers, and it may be defined that the pickup roller 303 contacts the sheet S in the cassette 302 before feeding, as the operation starting point. In this case, the operation start point is set with data indicating that the outer periphery of the pickup roller contacts the sheet. Further, the information indicating the state of the part at the time of arrival of the movement start point may be information indicating the movement state of the part itself, and for example, the movement of the sheet S from the stop state to the movement state is defined as the movement start point. In this case, the operation start point arrival judging functions 1114 and 1115 may check that the coordinates of the front end and the rear end of the sheet are different from the sheet arrangement position coordinates at the start of the simulation.

以上、検証装置が検証動作の差異を自動検出することで、ソフトウエア検証者がシミュレーション実行開始から終了まで、シミュレーション結果を一部始終チェックせずに、ソフトウエアの想定外動作を発見でき、ソフトウエアの検証工数削減につながる。また、検証動作の差異検出時に、シミュレーション実行を一時停止することで、制御対象物動作の差異発生時点での検証対象ソフトウエア及び比較対象ソフトウエアのソフトウエア実行状況をチェックでき、動作差異の原因を見つけるための工数を削減できる。   As described above, since the verification device automatically detects the difference in the verification operation, the software verifier can discover unexpected operation of the software without completely checking the simulation result from start to finish of the simulation execution. It leads to the reduction of the verification time of the wear. In addition, by temporarily stopping simulation execution when detecting a difference in verification operation, it is possible to check the software execution status of the verification target software and the comparison target software at the time of occurrence of a difference in controlled object operation. The man-hours to find out can be reduced.

画像形成装置で10ページ分の連続印刷を実施し、1ページ目から10ページ目までの用紙搬送動作を、1ページずつの用紙搬送状態の遷移比較ではなく、10ページ分の用紙搬送動作を一連の検証動作として、用紙搬送状態の遷移比較を行う場合がある。例えば、用紙の搬送路上の所定位置到達が検証動作起点の場合、用紙1枚ずつに対して動作起点到達判断機能が動作起点到達と判断するため、10ページ分を一連の用紙搬送動作として比較することができない。
そこで実施例3では、動作起点到達判断の実行にマスクを設け、所定条件下では動作起点判断を実施しない。以下、実施例2との相違点を中心に説明を行う。
Consecutive printing of 10 pages is performed by the image forming apparatus, and the sheet conveying operation from the first page to the 10th page is a series of sheet conveying operations for 10 pages, not the transition comparison of the sheet conveyance state for each page. As a verification operation of (1), transition comparison of the sheet conveyance state may be performed. For example, when arrival at a predetermined position on the sheet conveyance path is the verification operation start point, the operation start point arrival determination function determines that the operation start point is reached for each sheet, so 10 pages are compared as a series of sheet conveyance operations. I can not do it.
Therefore, in the third embodiment, a mask is provided to execute the operation start point determination, and the operation start point determination is not performed under predetermined conditions. The following description will focus on the differences from the second embodiment.

図14は、実施例3における検証装置の機能構成図である。実施例2の検証装置の機能構成図との相違点は、動作起点到達判断機能1414及び1415が判断実施可否状態決
定部1416及び1417を有していることである。
判断実施可否状態決定部1416及び1417は、図6に示した動作起点到達判断を実施するか否かの状態(以下、判断実施可否状態と記す)を決定する。判断実施可否状態決定部1416及び1417は、マスク情報1418及び1419を有しており、マスク情報1418及び1419は、動作起点到達判断を実施する条件を定めるための情報が格納されている。判断実施可否状態決定部1416及び1417は、マスク情報1418及び1419に従い、判断実施可否状態を切り替える。ここでは、判断実施可否状態決定部1416及び1417が効力切替手段に相当する。
マスク情報1418及び1419は、マスク開始条件とマスク解除条件の2つの情報を対にして定める。例えば、用紙先端がレジストローラ712に到達後、搬送パス710内に用紙が存在しなくなるまで、動作起点到達判断を実施しない場合、マスク情報1418及び1419は、
マスク開始条件:用紙先端がレジストローラ712に到達
マスク解除条件:搬送パス上の用紙0枚
となる。
動作起点到達判断機能1414及び1415は、判断実施可否状態によって、図6の処理のフローを実施するか否かを変更する。判断実施可否状態が“判断実施可能”の場合、図6の処理を実施し、“判断実施不可”の場合、図6の処理は実施しない。
FIG. 14 is a functional configuration diagram of the verification device in the third embodiment. The difference from the functional configuration diagram of the verification device of the second embodiment is that the action start point arrival judging functions 1414 and 1415 have judgment execution availability state determination units 1416 and 1417.
Judgment enable / disable state determination units 1416 and 1417 determine a state (hereinafter referred to as a judgment execution availability state) as to whether or not to perform the operation start point arrival determination shown in FIG. 6. Judgment enable / disable state determination units 1416 and 1417 have mask information 1418 and 1419, and mask information 1418 and 1419 stores information for defining a condition for performing operation start arrival determination. Determination implementation status determination units 1416 and 1417 switch the determination implementation status according to mask information 1418 and 1419. Here, the judgment execution state determination units 1416 and 1417 correspond to the effect switching means.
The mask information 1418 and 1419 are defined by pairing two information of mask start condition and mask release condition. For example, after the leading edge of the sheet reaches the registration roller 712, the mask information 1418 and 1419 indicate that the operation start point arrival determination is not performed until the sheet does not exist in the conveyance path 710.
Mask start condition: The leading end of the sheet reaches the registration roller 712 Mask release condition: There are 0 sheets on the conveyance path.
The operation start arrival determination functions 1414 and 1415 change whether to execute the process flow of FIG. 6 according to the determination possibility state. If the judgment implementation possibility state is "judgement possible", the process of FIG. 6 is performed, and if the judgment is "impossible to perform", the process of FIG.

図15は、判断実施可否状態決定部1418及び1419の処理のフローである。シミュレーション開始後、判断実施可否状態を判断実施可能に設定する(S1501)。その後、マスク開始条件が成立するかをチェックし(S1502)、マスク開始条件が成立すると、判断実施可否状態を判断実施不可に設定する(S1503)。S1503の後は、マスク解除条件が成立するかをチェックし(S1504)、マスク解除条件が成立するとS1501に戻り、判断実施可否状態を判断実施可能に設定し、以降S1502の処理を続ける。S1502とS1504の処理で、マスク開始条件又はマスク解除条件の成立をチェックする際に、マスク情報1418及び1419を参照する。   FIG. 15 is a flow of processing of the determination execution state determination unit 1418 and 1419. After the simulation is started, the determination possibility state is set to be determination possible (S1501). Thereafter, it is checked whether the mask start condition is satisfied (S1502), and when the mask start condition is satisfied, the determination implementation possibility state is set to determination impossibility (S1503). After S1503, it is checked whether the mask release condition is satisfied (S1504), and when the mask release condition is satisfied, the process returns to S1501 to set the determination possibility state to determination possible, and subsequently the process of S1502 is continued. When checking the establishment of the mask start condition or the mask release condition in the processes of S1502 and S1504, the mask information 1418 and 1419 is referred to.

画像形成装置で10ページ分の連続印刷を実施し、1ページ目から10ページ目までの用紙搬送動作を、一連の検証動作として比較検証する場合、本検証装置は以下のように動作する。ここで、用紙搬送状態の遷移比較を行う場合、マスク情報1418及び1419が前述の例であり、かつ、動作起点到達がマスク開始条件と同様に、用紙先端のレジストローラ712への到達であるとする。シミュレーション実行の結果、制御対象物シミュレータ1407及び1408において、用紙1枚目が給紙カセットから給紙され、レジストローラ712に到達する。すると、動作起点到達判断機能1414及び1415は、動作起点到達、かつ、マスク開始条件成立(S1502)と判断し、判断実施可否状態を判断実施不可(S1503)とする。その後、シミュレーション実行が進行し、制御対象物シミュレータ1407及び1408において、用紙2枚目が給紙カセットから給紙される。しかし、給紙された2枚目の用紙がレジストローラ712に到達しても、判断実施可否状態は判断実施不可であり、動作起点到達判断の実行が無効であるため、動作起点到達と判断しない。よって、同期手段104は、動作起点を同期させないので、用紙1枚目と2枚目の用紙搬送状態遷移を1連の用紙搬送動作として比較することができる。用紙2枚目と同様に、用紙3枚目から10枚目までも給紙カセットから給紙され、搬送パス710上を通り排紙トレイ729に排紙される。用紙10枚目が排紙されると、判断実施可否状態決定部1416及び1417が搬送パス710上に存在する用紙がなくなったことをもって、マスク解除条件成立と判断し(S1504)、判断実施可否状態は判断実施可能(S1501)とする。このように動作起点到達判断の実行を再び有効とすることで、継続してソフトウエアの検証をおこなうことができる。   When continuous printing of 10 pages is performed by the image forming apparatus, and the sheet conveyance operation from the first page to the 10th page is compared and verified as a series of verification operations, the verification apparatus operates as follows. Here, when making a transition comparison of the sheet conveyance state, it is assumed that the mask information 1418 and 1419 is the above-mentioned example, and the arrival at the operation start point is the arrival of the leading end of the sheet to the registration roller 712 like the mask start condition Do. As a result of the simulation, in the control object simulators 1407 and 1408, the first sheet is fed from the sheet feeding cassette and reaches the registration roller 712. Then, the operation start point arrival determination functions 1414 and 1415 determine that the operation start point is reached and the mask start condition is satisfied (S1502), and makes the determination possibility state impossible (S1503). Thereafter, simulation execution proceeds, and the second sheet is fed from the sheet feeding cassette in the control object simulators 1407 and 1408. However, even if the fed second sheet reaches the registration roller 712, the judgment implementation status can not be judged and execution of the operation start arrival judgment is invalid, so it is not judged to be the operation start arrival. . Therefore, since the synchronization means 104 does not synchronize the operation start point, it is possible to compare the sheet conveyance state transition of the first sheet and the second sheet as one sheet conveyance operation. Similar to the second sheet, the third to tenth sheets are also fed from the sheet feeding cassette, passed over the conveyance path 710, and discharged onto the sheet discharge tray 729. When the tenth sheet is discharged, the determination implementation status determination units 1416 and 1417 determine that the mask release condition is satisfied based on the absence of the sheets existing on the conveyance path 710 (S1504), and the determination implementation status Is determined to be executable (S1501). As described above, by making execution of the operation start point arrival determination valid again, software verification can be continuously performed.

以上、制御ソフトウエアの検証動作の動作起点到達判断の実施にマスクを設けることで
、本実施例で挙げたようなソフトウエアの制御対象物の一連動作の比較が可能になる。これは、ソフトウエアの制御対象物のさまざまな動作の検証を可能にし、結果、ソフトウエアの検証可能動作の範囲を拡大することができる。
As described above, by providing a mask for performing the determination of arrival of the operation start point of the verification operation of the control software, it is possible to compare a series of operations of the control objects of the software as described in this embodiment. This enables verification of various operations of the software control object, and as a result, the range of software verifiable operations can be expanded.

101…検証対象CPUシミュレータ、102…比較対象制御模擬手段、104…同期手段、106…動作起点同期機能、107…制御対象物シミュレータ、108…制御対象物シミュレータ、109…結果表示手段、111…検証対象ソフトウエア、112…シミュレータグループ情報、114…動作起点到達判断機能、115…動作起点到達判断機能 101 ... verification target CPU simulator, 102 ... comparison control simulation means, 104 ... synchronization means, 106 ... operation starting point synchronization function, 107 ... control object simulator, 108 ... control object simulator, 109 ... result display means, 111 ... verification Target software, 112: Simulator group information, 114: Operation start arrival determination function, 115: Operation start arrival determination function

Claims (17)

検証対象ソフトウエアが実行されるターゲットCPUの動作をシミュレーションするCPUシミュレータと、
前記検証対象ソフトウエアによって制御される制御対象物の動作の変化を解析し、該制御対象物の動作を視覚化する第一の視覚化データを生成する第一の制御対象物シミュレータと、
前記検証対象ソフトウエアによる制御と比較される比較対象の制御機能をシミュレーションする比較制御シミュレータと、
前記比較制御シミュレータによってシミュレーションされる制御機能に基づく前記制御対象物の動作の変化を解析し、該制御対象物の動作を視覚化する第二の視覚化データを生成する第二の制御対象物シミュレータと、
前記第一の視覚化データと、前記第二の視覚化データに基づいて、前記検証対象ソフトウエアによって制御される前記制御対象物の動作と、前記比較制御シミュレータによってシミュレーションされる制御機能に基づく前記制御対象物の動作とを重ね合わせて表示する結果表示手段と、
前記CPUシミュレータと前記第一の制御対象物シミュレータを第一のシミュレーショングループとし、前記比較制御シミュレータと前記第二の制御対象物シミュレータを第二のシミュレーショングループとしたときに、各シミュレーショングループのシミュレーションの結果から、該シミュレーショングループにおけるシミュレーション実行が、前記制御対象物の動作における起点となる動作起点に到達しているか否かを判断する到達判断手段と、
複数の前記シミュレータ間における時間同期を行う同期手段と、
を備え、
前記同期手段は、前記第一及び前記第二のシミュレーショングループのいずれもが前記動作起点に到達したと判断されると、前記第一及び前記第二のシミュレーショングループの間で時間同期を行うよう時間同期の方法を変更する同期変更手段を有することを特徴とするソフトウエア検証装置。
A CPU simulator that simulates the operation of a target CPU on which the software to be verified is executed;
A first controlled object simulator that analyzes a change in the movement of the controlled object controlled by the verification target software and generates first visualization data that visualizes the movement of the controlled object;
A comparison control simulator that simulates the control function of the comparison object to be compared with the control by the verification object software;
A second controlled object simulator that analyzes a change in the movement of the controlled object based on a control function simulated by the comparison control simulator and generates second visualization data that visualizes the movement of the controlled object When,
Based on the first visualization data and the second visualization data, the operation of the controlled object controlled by the verification target software and the control function simulated by the comparison control simulator Result display means for displaying the operation of the control object in an overlapping manner;
When the CPU simulator and the first controlled object simulator are set as a first simulation group, and the comparison control simulator and the second controlled object simulator are set as a second simulation group, the simulation of each simulation group is performed. Arrival determination means for determining whether or not the simulation execution in the simulation group has reached an operation starting point which is a starting point in the operation of the controlled object from the result;
Synchronization means for performing time synchronization among a plurality of the simulators;
Equipped with
The synchronization means is configured to perform time synchronization between the first and second simulation groups when it is determined that both the first and second simulation groups have reached the operation start point. A software verification apparatus characterized by comprising synchronization changing means for changing a method of synchronization.
前記同期手段は、各シミュレーショングループにおけるシミュレーションが前記動作起点に到達したと判断されるまでは各グループ内で時間同期を行い、前記第一及び第二のシミュレーショングループのいずれもが前記動作起点に到達したと判断されると、前記同期変更手段によって、前記第一及び前記第二のシミュレーショングループを構成するシミュレータ及び前記結果表示手段で時間同期を行うことを特徴とする請求項1に記載のソフトウエア検証装置。   The synchronization means performs time synchronization within each group until it is determined that the simulation in each simulation group has reached the operation start point, and both of the first and second simulation groups reach the operation start point 2. The software according to claim 1, wherein said synchronization changing means performs time synchronization with the simulators constituting said first and said second simulation group and said result display means when it is judged that Verification device. 前記比較制御シミュレータは、前記検証対象ソフトウエアと比較される比較対象ソフトウエアが実行されるターゲットCPUの動作のシミュレーションを行う比較対象CPUシミュレータであることを特徴とする請求項1又は2に記載のソフトウエア検証装置。   The comparison control simulator according to claim 1 or 2, wherein the comparison control simulator is a comparison target CPU simulator that simulates the operation of a target CPU on which comparison target software to be compared with the verification target software is executed. Software verification device. 前記到達判断手段は、前記検証対象ソフトウエアが扱う制御情報又は比較対象の制御機能が扱う制御情報により、前記動作起点を定めることを特徴とする請求項1ないし3のいずれか1項に記載のソフトウエア検証装置。   The said arrival judging means defines the said operation | movement starting point by the control information which the said software for verification handles, or the control information which the control function of comparison object handles. Software verification device. 前記到達判断手段は、前記制御対象物の動作又は状態により、前記動作起点を定めることを特徴とする請求項1ないし3のいずれか1項に記載のソフトウエア検証装置。   The software verification device according to any one of claims 1 to 3, wherein the arrival determination means determines the operation starting point according to an operation or a state of the control object. 前記CPUシミュレータ又は前記比較制御シミュレータが、前記到達判断手段を有し、該到達判断手段は、前記動作起点に到達したことを表す情報を前記同期変更手段に通知することを特徴とする請求項1ないし3のいずれか1項に記載のソフトウエア検証装置。   The CPU simulator or the comparison control simulator has the reaching determination means, and the reaching determination means notifies the synchronization changing means of information indicating that the movement starting point has been reached. The software verification device according to any one of to 3. 前記第一の制御対象物シミュレータ又は前記第二の制御対象物シミュレータが、前記到達判断手段を有し、該到達判断手段は、前記動作起点に到達したことを表す情報を前記同期変更手段に通知することを特徴とする請求項1ないし3のいずれか1項に記載のソフトウエア検証装置。   The first controlled object simulator or the second controlled object simulator has the reach determining means, and the reach determining means notifies the synchronization changing means of information indicating that the movement starting point has been reached. The software verification device according to any one of claims 1 to 3, wherein: 前記同期手段が、前記到達判断手段を有し、該同期手段の外部から通知される前記動作起点を定める情報の変化により、前記動作起点に到達したか否かを判断することを特徴とする請求項1ないし5のいずれか1項に記載のソフトウエア検証装置。   The synchronization means has the arrival determination means, and determines whether or not the movement start point has been reached by a change in information defining the movement start point notified from the outside of the synchronization means. The software verification device according to any one of Items 1 to 5. 前記到達判断手段は、前記動作起点へ到達したか否かの判断の有効及び無効を切り替える効力切替手段を有することを特徴とする請求項1ないし8のいずれか1項に記載のソフトウエア検証装置。   The software verification device according to any one of claims 1 to 8, characterized in that the arrival judging means has a validity switching means for switching between valid and invalid of judgment as to whether or not the movement starting point is reached. . 前記効力切替手段は、検証対象ソフトウエアの制御情報又は前記比較対象の制御機能が扱う制御情報が所定条件を満たしたか否かにより、前記動作起点へ到達したか否かの判断の有効及び無効を切り替えることを特徴とする請求項9に記載のソフトウエア検証装置。   The effectiveness switching means determines whether the operation starting point has been reached valid or invalid according to whether the control information of the software to be verified or the control information handled by the control function to be compared satisfies a predetermined condition. The software verification device according to claim 9, characterized by switching. 前記効力切替手段は、前記制御対象物の動作又は状態を決定する情報が所定条件を満たしたか否かにより、前記動作起点へ到達したか否かの判断の有効及び無効を切り替えることを特徴とする請求項9に記載のソフトウエア検証装置。   The effectiveness switching means switches between valid and invalid of the determination as to whether or not the operation starting point has been reached based on whether the information for determining the operation or state of the control object satisfies a predetermined condition. The software verification device according to claim 9. 前記結果表示手段は、前記第一及び前記第二のシミュレーショングループのシミュレーションの結果である前記制御対象物の動作の差異を検出することを特徴とする請求項1ないし11のいずれか1項に記載のソフトウエア検証装置。   The said result display means detects the difference of the operation | movement of the said control object which is a result of simulation of the said, 1st and 2nd simulation group, It is characterized by the above-mentioned. Software verification device. 前記結果表示手段は、前記第一及び前記第二のシミュレーショングループの前記制御対象物の動作の差異を検出したことを表す情報を前記同期手段に通知し、
前記同期手段は、前記第一及び前記第二のシミュレーショングループの前記制御対象物の動作の差異を検出された後は、前記第一及び前記第二のシミュレーショングループを構成する各シミュレータの時間同期を一時停止することを特徴とする請求項12に記載のソフトウエア検証装置。
The result display means notifies the synchronization means of information indicating that a difference in operation of the controlled object of the first and second simulation groups is detected.
After detecting the difference in the operation of the controlled object of the first and second simulation groups, the synchronization means synchronizes the time synchronization of each of the simulators constituting the first and second simulation groups. The software verification device according to claim 12, wherein the software verification is suspended.
前記同期手段は、一つの前記シミュレーショングループを構成する複数のシミュレータ間で時間同期を行う複数の同期モジュールを有し、
前記同期変更手段は、
前記第一及び前記第二のシミュレーショングループのいずれもが動作起点に到達したと判断されるまでは、一つの前記同期モジュールで一つの前記シミュレーショングループ内での時間同期を行い、
前記第一及び前記第二のシミュレーショングループのいずれもが動作起点に到達したと判断された後は、いずれかの前記同期モジュールで、第一及び第二のシミュレーショングループの時間同期を行うよう時間同期の方法を切り替えることを特徴とする請求項1ないし13のいずれか1項に記載のソフトウエア検証装置。
The synchronization means includes a plurality of synchronization modules for performing time synchronization among a plurality of simulators constituting one simulation group,
The synchronization changing means is
One of the synchronization modules performs time synchronization within one simulation group until it is determined that both the first and second simulation groups have reached the operation start point,
After it is determined that both the first and second simulation groups have reached the operation starting point, time synchronization is performed so that time synchronization of the first and second simulation groups is performed in any of the synchronization modules. The software verification device according to any one of claims 1 to 13, wherein the method is switched.
前記同期手段は、一つのシミュレーショングループを構成する複数のシミュレータ間で時間同期を行なう複数の同期モジュールと、該同期モジュールの間での時間同期を行う統括同期モジュールを有し、
前記同期変更手段は、
前記第一及び前記第二のシミュレーショングループのいずれもが動作起点に到達したと判断されるまでは、前記同期モジュールが各グループ内での時間同期を行い、
前記第一及び前記第二のシミュレーショングループのいずれもが動作起点に到達したと判断された後は、前記統括同期モジュールで前記第一及び前記第二のシミュレーショングループ間の時間同期を行うよう時間同期の方法を切り替えることを特徴とする請求項1ないし13のいずれか1項に記載のソフトウエア検証装置。
The synchronization means includes: a plurality of synchronization modules performing time synchronization among a plurality of simulators constituting one simulation group; and a general synchronization module performing time synchronization among the synchronization modules,
The synchronization changing means is
The synchronization module performs time synchronization in each group until it is determined that both the first and second simulation groups have reached the operation start point,
After it is determined that both the first and second simulation groups have reached the operation start point, time synchronization is performed so that time synchronization is performed between the first and second simulation groups in the general synchronization module. The software verification device according to any one of claims 1 to 13, wherein the method is switched.
前記同期モジュールは、時間同期の対象となるシミュレータに所定時間分の処理実行を指示する機能を有し、
前記CPUシミュレータ、前記比較制御シミュレータ、前記第一及び前記第二の制御対象物シミュレータ並びに前記結果表示手段は、前記同期モジュールから指示を受けた所定時間分の処理を終了すると、前記同期モジュールへ実行終了を通知する機能を有し、
前記同期変更手段は、前記第一及び前記第二のシミュレーショングループのいずれか一方が前記動作起点に到達した後に、該動作起点に到達したグループのシミュレーション実行の指示を一時停止し、前記第一及び前記第二のシミュレーショングループのいずれもが前記動作起点に到達した時点で、前記CPUシミュレータ、前記比較制御シミュレータ、前記第一及び前記第二の制御対象物シミュレータ並びに前記結果表示手段へシミュレーションの実行を指示することを特徴とする請求項14又は15に記載のソフトウエア検証装置。
The synchronization module has a function of instructing a simulator to be subjected to time synchronization to execute processing for a predetermined time period,
When the CPU simulator, the comparison control simulator, the first and second controlled object simulators, and the result display unit finish processing for a predetermined time received from the synchronization module, they execute the synchronization module. Has a function to notify the end,
The synchronization changing unit suspends an instruction to execute simulation of a group which has reached the operation start point, after one of the first and second simulation groups has reached the operation start point, and When any of the second simulation group reaches the operation starting point, the CPU simulator, the comparison control simulator, the first and second controlled object simulators, and the result display means execute simulation The software verification device according to claim 14 or 15, wherein the instruction is made.
請求項1ないし16のいずれか1項に記載のソフトウエア検証装置としてコンピュータを機能させることを特徴とするプログラム。   A program causing a computer to function as the software verification device according to any one of claims 1 to 16.
JP2017188382A 2017-09-28 2017-09-28 Software verification apparatus Pending JP2019066913A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017188382A JP2019066913A (en) 2017-09-28 2017-09-28 Software verification apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017188382A JP2019066913A (en) 2017-09-28 2017-09-28 Software verification apparatus

Publications (1)

Publication Number Publication Date
JP2019066913A true JP2019066913A (en) 2019-04-25

Family

ID=66339644

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017188382A Pending JP2019066913A (en) 2017-09-28 2017-09-28 Software verification apparatus

Country Status (1)

Country Link
JP (1) JP2019066913A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111273440A (en) * 2020-02-13 2020-06-12 湖南迈克森伟电子科技有限公司 Target simulator field of view enlarges device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111273440A (en) * 2020-02-13 2020-06-12 湖南迈克森伟电子科技有限公司 Target simulator field of view enlarges device
CN111273440B (en) * 2020-02-13 2022-02-11 湖南迈克森伟电子科技有限公司 Target simulator field of view enlarges device

Similar Documents

Publication Publication Date Title
JP2019066913A (en) Software verification apparatus
JP2010128722A (en) Simulation system, simulation method and program
GB2518753A (en) Sheet binding processing apparatus, image forming system and binding method
US20060088323A1 (en) Design support program and design support method
JP5686609B2 (en) Information processing apparatus and program
JP7283181B2 (en) Image forming apparatus and control program
JP5885420B2 (en) Information processing apparatus and program
JP2009120300A (en) Inspection support method and program
JP2020172365A (en) Image forming apparatus and image forming system
JP4054790B2 (en) Design support program and design support method
JP2007179262A (en) Image formation system, simulated print action achieving method, program, and storage medium
JP2008097282A (en) Sequence control system and sequencer device
JP4054792B2 (en) Design support program
JP5939873B2 (en) Design support apparatus, program, and computer-readable storage medium
JP2012032567A (en) Image forming device, and control program of the same
JP7456168B2 (en) Machine learning method, conveyance device, image forming device, and machine learning program
JP2019113936A (en) Software verification device
JP4940457B2 (en) Design support system, design support method, and design support program
JP2006168879A (en) Planning support program and planning support method
JP5475274B2 (en) Simulation method and information processing apparatus for realizing the same
JP5305944B2 (en) Information processing apparatus, information processing system, and control method thereof
JP2015054747A (en) Sheet feeder and image forming apparatus with sheet feeder
JP5340363B2 (en) Image forming apparatus
JP2006110756A (en) Design support program and method
JP2006139479A (en) Design support program and design support method

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20181116