JP2005292912A - シミュレーション装置 - Google Patents

シミュレーション装置 Download PDF

Info

Publication number
JP2005292912A
JP2005292912A JP2004103073A JP2004103073A JP2005292912A JP 2005292912 A JP2005292912 A JP 2005292912A JP 2004103073 A JP2004103073 A JP 2004103073A JP 2004103073 A JP2004103073 A JP 2004103073A JP 2005292912 A JP2005292912 A JP 2005292912A
Authority
JP
Japan
Prior art keywords
module
cpu
memory
emulation
program
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.)
Granted
Application number
JP2004103073A
Other languages
English (en)
Other versions
JP4345545B2 (ja
Inventor
Koji Matsuoka
康二 松岡
Hirofumi Okamoto
弘文 岡本
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP2004103073A priority Critical patent/JP4345545B2/ja
Publication of JP2005292912A publication Critical patent/JP2005292912A/ja
Application granted granted Critical
Publication of JP4345545B2 publication Critical patent/JP4345545B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Programmable Controllers (AREA)

Abstract

【課題】 マルチCPU構成のプログラマブルコントローラにおいて、1つのCPUモジュールでI/Oをエミュレートするようにして、I/Oモジュールや外部接続なしで、実際のラダープログラムを動作させながら実機に近いデバッグを行うことができるシミュレーション装置を提供する。
【解決手段】 エミュレーションCPUモジュールは、シミュレーションするための他のCPUモジュールであるシーケンスCPUモジュールからのI/Oモジュールアクセスを自己のCPU内でのアクセスとして処理可能なエミュレーション用I/Oプロセッサと、I/Oメモリとを備え、前記I/Oメモリには、予め登録されたI/O情報をもとに前記複数のCPUモジュールの各々に備えてあるI/Oモジュールと同等なデータテーブルを有すると共に、I/Oモジュールの動作をエミュレートするためのプログラムを動作させる仕組みを備えたことである。
【選択図】 図2

Description

本発明は、シミュレーション装置に関し、詳しくはマルチCPU構成機能を持つプログラマブルコントローラにおいて、ユーザプログラムのデバッグを効率化するシミュレーション装置に関する。
従来技術において、プログラマブルコントローラのユーザプログラムをデバッグするためのシミュレーション機能を備えた装置は、下記に示すものがある。
構成1;PC(Personal Computer)上でラダー命令を実行する方式
ユーザがプログラミングツールで作成したラダープログラムをPC上で実行する。PC上のシミュレーション用ソフトウェアは、ラダー命令をインタプリタ方式で実行する。入力データはユーザがデータ作成又はオンデマンド方式で行う。
構成2;外部機器を使用する方式
ターゲットとなるプログラマブルコントローラとI/Oをエミュレートするための装置を実配線し、ユーザのラダープログラムをターゲット上で走らせながら、シミュレート装置でターゲット装置のI/Oをエミュレートしてデバッグを行う。
特開平9−330250号公報(第5頁〜7頁 第1図)
しかし、従来技術で説明したシミュレーション機能を備えたシミュレーション装置において、構成1の場合は、実行スピードが実際と異なるため、ユーザプログラムのロジックのデバッグしかできず、タイミング等を含めたシステムとしてのテスト、デバッグができないという問題がある。
又、構成2の場合は、I/Oをエミュレートするための装置が必要となり、また、ターゲットのプログラマブルコントローラとI/Oエミュレート装置間が実配線をしなければならず、その配線に時間と手間がかかるという問題がある。
従って、I/Oのエミュレート装置を使用せず、且つ実行速度を保った状態でユーザプログラムのデバッグ、システムテストを行うことができるシミュレーション装置に解決しなければならない課題を有する。
上記課題を解決するために、本願発明のシミュレーション装置は、次に示す構成にしたことである。
(1)シミュレーション装置は、外部バスに接続されている複数のCPUモジュールで構成されているプログラマブルコントローラであって、前記複数のCPUモジュールの内の1つのCPUモジュールをエミュレーションCPUモジュールとし、前記エミュレーションCPUモジュールは、シミュレーションするための他のCPUモジュールであるシーケンスCPUモジュールからのI/Oモジュールアクセスを自己のCPU内でのアクセスとして処理可能なエミュレーション用I/Oプロセッサと、I/Oメモリとを備え、前記I/Oメモリには、予め登録されたI/O情報をもとに前記複数のCPUモジュールの各々に備えてあるI/Oモジュールと同等なデータテーブルを有すると共に、I/Oモジュールの動作をエミュレートするためのプログラムを動作させる仕組みを備えたことである。
(2)前記I/Oモジュールの動作をエミュレートするためのプログラムは、前記I/Oメモリの情報をもとに接続されるべき機器の動作をシミュレーションし、その結果を前記I/Oメモリに書き込む又は予め設定された時間に設定されたデータを前記I/Oメモリに書き込むことを特徴とする(1)に記載のシミュレーション装置。
(3)前記I/Oモジュールの動作をエミュレートするためのプログラムは、前記シミュレーション用I/Oプロセッサと内部バスで接続されているシーケンスデバイス用メモリに蓄積することを特徴とする(1)又は(2)に記載のシミュレーション装置。
(4)前記エミュレーション用I/Oプロセッサと前記I/Oメモリとは、内部バスで接続されていることを特徴とする(1)又は(3)に記載のシミュレーション装置。
(5)前記I/Oメモリには、データを格納するデータ領域と、フラグ等を格納するレジスタ領域とを備えたことを特徴とする(1)、(2)、(3)又は(4)に記載のシミュレーション装置。
本発明のシミュレーション装置は、I/Oをエミュレートするため、I/Oモジュールや外部接続なしで、実際のラダープログラムを動作させながら実機に近いデバッグを行うことができる。
又、タイミングがずれた場合の動作検証など、異常処理のデバッグが簡単にできるという効果がある。
以下、本発明のシミュレーション装置について、図面を用いて詳細に説明する。
本発明のシミュレーション装置は、図1及び図2に示すように、外部バスに接続されている複数のCPUモジュールで構成されているプログラマブルコントローラであって、電源モジュール11と、デバッグするターゲットプログラムが格納されているシーケンスCPUモジュール12と、エミュレーションを行うためのエミュレーションCPUモジュール13とから構成されている。各モジュール11、12、13は外部バスであるI/Oバス14で接続されている。
エミュレーションCPUモジュール13は、図2に示すように、シーケンスCPUモジュール12から送出されたI/Oアクセスデータに従って、I/Oメモリ23のデータをアクセスすると共に、シーケンスCPUモジュール12にデータを返信するエミュレーション用I/Oプロセッサ15と、プログラミングツールとのRS232C仕様に基づく通信、I/Oメモリ23とシーケンスデバイスメモリ22とのデータ交換(内部レフレッシュ処理)などを行う汎用プロセッサ17、システムプログラムを格納してあるROM18、RAM19と、I/Oエミュレーション用ラダープログラムを動作させるために使用するシーケンス処理用プロセッサ16、マイクロプログラムを格納してあるROM20、シーケンスプログラムが格納されているROM21と、I/Oエミュレーション用ラダープログラムを動作させるために使用するシーケンスデバイス用メモリ22と、I/O空間にマッピングされており、予め登録されたI/Oモジュール構成に基づき、エミュレートするI/Oモジュールと同じテーブルを構成するI/Oメモリ23と、から大略構成されている。この中で、I/Oメモリ23のI/O空間にはデータを格納するデータ領域とフラグ等を格納するレジスタ領域があり、本I/Oメモリ23は両方の領域テーブルを持つ。
エミュレーションCPUモジュール13を構成するエミュレーション用I/Oプロセッサ15、汎用プロセッサ17、ROM18、RAM19、シーケンス処理用プロセッサ16、ROM20、ROM21、シーケンスデバイス用メモリ22、I/Oメモリ23のそれぞれは内部バスに接続され、それぞれデータ及び命令の指示等が内部バスを介して行う構成になっている。
このような構成からなるシミュレーション装置において、先ず、シーケンスCPUモジュール12ではデバッグするターゲットプログラムが動作し、I/Oレフレッシュなど通常と同じ動作を行う。
エミュレーションCPUモジュール13では、シーケンスCPUモジュール12がI/Oバス14上に送出したアドレスデータをエミュレート用I/Oプロセッサ15が解釈し、I/Oメモリ23上の該当するメモリ番地に対してシーケンスCPUモジュール12がアクセスしたアドレスのデータ書込み/読み出しを行う。
エミュレーションCPUモジュール13内のROM21に格納されているI/Oエミュレーション用シーケンスプログラムは、I/Oをエミュレーションするためのプログラムをユーザがラダーで作成する。例えば、接続されるべき機器であるスロット3の出力モジュールの接点1が出力されると、一定時間後にスロット3の入力モジュールの接点1が入力されるというようなI/O動作をラダーで作成し、エミュレーションCPUモジュール13内で動作させる。また、レジスタデータについては、例えば、アナログ入力値のデータを任意のタイミングで任意のデータに変更することができる。
エミュレーションCPUモジュール13内では、I/Oエミュレーション用プログラムのI/Oアクセスを内部のI/Oメモリ23に対して行う。従って、通常のI/Oレフレッシュ、READ/WRITE命令動作なども、I/Oメモリ23に対して行う。エミュレーション用シーケンスプログラムでは、全デバイスに対するアクセスが可能である。
シーケンスCPUモジュール12へのI/O割り込みは、汎用プロセッサ17がエミュレーション用I/Oプロセッサ15に対して割り込み要求を出すことで行う。尚、この際、I/Oメモリ23のレジスタ領域に割り込みフラグをセットしておく。
マルチCPU構成のプログラマブルコントローラにおいて、1つのCPUモジュールでI/Oをエミュレートするようにして、I/Oモジュールや外部接続なしで、実際のラダープログラムを動作させながら実機に近いデバッグを行うことができるシミュレーション装置を提供する。
本願発明のシミュレーション装置の構成を示した説明図である 同、エミュレーションCPUモジュールの構成を示した説明図である。
符号の説明
11 電源モジュール
12 シーケンスCPUモジュール
13 エミュレーションCPUモジュール
14 I/Oバス
15 エミュレーション用I/Oプロセッサ
16 シーケンス処理用プロセッサ
17 汎用プロセッサ
18 ROM
19 RAM
20 ROM
21 ROM
22 シーケンスデバイスメモリ
23 I/Oメモリ。

Claims (5)

  1. 外部バスに接続されている複数のCPUモジュールで構成されているプログラマブルコントローラであって、
    前記複数のCPUモジュールの内の1つのCPUモジュールをエミュレーションCPUモジュールとし、
    前記エミュレーションCPUモジュールは、シミュレーションするための他のCPUモジュールであるシーケンスCPUモジュールからのI/Oモジュールアクセスを自己のCPU内でのアクセスとして処理可能なエミュレーション用I/Oプロセッサと、I/Oメモリとを備え、
    前記I/Oメモリには、予め登録されたI/O情報をもとに前記複数のCPUモジュールの各々に備えてあるI/Oモジュールと同等なデータテーブルを有すると共に、I/Oモジュールの動作をエミュレートするためのプログラムを動作させる仕組みを備えたことを特徴とするシミュレーション装置。
  2. 前記I/Oモジュールの動作をエミュレートするためのプログラムは、前記I/Oメモリの情報をもとに接続されるべき機器の動作をシミュレーションし、その結果を前記I/Oメモリに書き込む又は予め設定された時間に設定されたデータを前記I/Oメモリに書き込むことを特徴とする請求項1に記載のシミュレーション装置。
  3. 前記I/Oモジュールの動作をエミュレートするためのプログラムは、前記シミュレーション用I/Oプロセッサと内部バスで接続されているシーケンスデバイス用メモリに蓄積することを特徴とする請求項1又は2に記載のシミュレーション装置。
  4. 前記エミュレーション用I/Oプロセッサと前記I/Oメモリとは、内部バスで接続されていることを特徴とする請求項1又は3に記載のシミュレーション装置。
  5. 前記I/Oメモリには、データを格納するデータ領域と、フラグ等を格納するレジスタ領域とを備えたことを特徴とする請求項1、2、3又は4に記載のシミュレーション装置。
JP2004103073A 2004-03-31 2004-03-31 シミュレーション装置 Expired - Fee Related JP4345545B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004103073A JP4345545B2 (ja) 2004-03-31 2004-03-31 シミュレーション装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004103073A JP4345545B2 (ja) 2004-03-31 2004-03-31 シミュレーション装置

Publications (2)

Publication Number Publication Date
JP2005292912A true JP2005292912A (ja) 2005-10-20
JP4345545B2 JP4345545B2 (ja) 2009-10-14

Family

ID=35325815

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004103073A Expired - Fee Related JP4345545B2 (ja) 2004-03-31 2004-03-31 シミュレーション装置

Country Status (1)

Country Link
JP (1) JP4345545B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015137505A1 (ja) * 2014-03-14 2015-09-17 オムロン株式会社 プログラマブルコントローラおよびプログラマブルコントローラによるデバイス制御方法
WO2018074590A1 (ja) * 2016-10-21 2018-04-26 株式会社東芝 コントローラ
US11505223B2 (en) 2016-08-19 2022-11-22 Kabushiki Kaisha Toshiba Train position detection apparatus and method

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015137505A1 (ja) * 2014-03-14 2015-09-17 オムロン株式会社 プログラマブルコントローラおよびプログラマブルコントローラによるデバイス制御方法
JP2015176340A (ja) * 2014-03-14 2015-10-05 オムロン株式会社 プログラマブルコントローラおよびプログラマブルコントローラによるデバイス制御方法
CN106068480A (zh) * 2014-03-14 2016-11-02 欧姆龙株式会社 可编程序逻辑控制器及基于可编程序逻辑控制器的设备控制方法
US11505223B2 (en) 2016-08-19 2022-11-22 Kabushiki Kaisha Toshiba Train position detection apparatus and method
WO2018074590A1 (ja) * 2016-10-21 2018-04-26 株式会社東芝 コントローラ
CN109313426A (zh) * 2016-10-21 2019-02-05 株式会社东芝 控制器
CN109313426B (zh) * 2016-10-21 2021-10-08 株式会社东芝 控制器

Also Published As

Publication number Publication date
JP4345545B2 (ja) 2009-10-14

Similar Documents

Publication Publication Date Title
US9921949B2 (en) Software testing
US9898388B2 (en) Non-intrusive software verification
US9092570B2 (en) Memory management for remote software debuggers and methods
JP6550269B2 (ja) プログラム作成支援装置、制御方法およびプログラム
US20100280817A1 (en) Direct pointer access and xip redirector for emulation of memory-mapped devices
CN103793263B (zh) 一种基于PowerPC处理器的DMA事务级建模方法
CN113868174B (zh) 验证平台搭建方法、装置及存储介质
JP4345545B2 (ja) シミュレーション装置
CN115878266A (zh) ARM Cortex-A7处理器仿真方法、系统、介质及设备
CN101441600A (zh) 一种微处理器验证中快速换页的装置和方法
CN115185638A (zh) 一种仿真运行应用程序时获取调用栈的方法及计算设备
JP2013020425A (ja) オープンソースソフトウェアを利用したハードウェア・ソフトウェア協調検証方法
JP2005353020A (ja) コンピュータプログラムのシミュレーション方式
JP2006146412A (ja) マルチコアプロセッサ及びデバッグ方法
JPS6349851A (ja) シミユレ−シヨンシステム
KR101412576B1 (ko) 가상 보드 플랫폼, 시스템-온-칩 시뮬레이션 장치, 시스템-온-칩 시뮬레이션 방법 및 시스템-온-칩 검증 방법
JP5469106B2 (ja) コンピュータシステム、試験装置、試験方法、及び試験プログラム
Ogawa et al. Reconfigurable IBM PC compatible SoC for computer architecture education and research
JP3270729B2 (ja) 拡張命令セット・シミュレータ
JP2009244952A (ja) モーションコントローラ、シミュレーション方法及びシミュレーションプログラム
JP5906800B2 (ja) Lsiモデルの記述ファイル、シミュレーションシステム、デバッグ方法
Goldberg et al. The PRIM System: An alternative architecture for emulator development and use
JP2001209555A (ja) 入出力エミュレーション装置、入出力装置のエミュレーション方法および入出力装置エミュレーションプログラムを記録した記録媒体
Heath et al. Development of a test environment for pre-and post-synthesis verification of correct VHDL description of core processor systems
JP3674936B2 (ja) データ処理方法および処理ユニット

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060802

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090302

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090309

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090507

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090623

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090706

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120724

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130724

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140724

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees