(57)【要約】【課題】ハードウェア的な構成をソフトウェア的な構成に置換する際の指標となる情報を簡便に提供できるようにする。【解決手段】本発明に係るシステムは、ハードウェア要素に関する情報を入力するハードウェア情報入力手段２と、ハードウェア要素に関する情報と、マイクロプロセッサの構成要素に関する情報とが関連付けられてなる換算データベース３と、換算データベース３に基づいて、ハードウェア構成部に相当する処理能力を備えるマイクロプロセッサの構成を想定するソフトウェア構成部想定手段４と、ハードウェア情報入力手段２により入力された情報、及びソフトウェア構成部想定手段４により生成された情報に基づいて、見積情報を生成する見積情報生成手段５とを備える。【選択図】図１
2010181942.tif 000002
【特許請求の範囲】
【請求項１】
論理回路を含むハードウェア要素により構成されるハードウェア構成部を、プログラムに従い動作するマイクロプロセッサを含んで構成されるソフトウェア構成部に置換する際の指標となる見積情報を提供するＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供システムであって、
前記ハードウェア要素に関する情報を入力するハードウェア情報入力手段と、
前記ハードウェア要素に関する情報と、前記マイクロプロセッサの構成要素に関する情報とが関連付けられてなる換算データベースと、
前記換算データベースに基づいて、前記ハードウェア構成部に相当する処理能力を備える前記マイクロプロセッサの構成を想定するソフトウェア構成部想定手段と、
前記ハードウェア情報入力手段により入力された情報、及び前記ソフトウェア構成部想定手段により生成された情報に基づいて、前記見積情報を生成する見積情報生成手段と、
を備えるＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供システム。
【請求項２】
前記換算データベースは、前記ハードウェア要素の機能単位毎に、その処理と同等の処理を行うプログラムのサイズが設定されてなる、
請求項１記載のＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供システム。
【請求項３】
前記ソフトウェア構成部想定手段は、前記プログラムのサイズに基づいて、前記マイクロプロセッサのメモリ容量を想定する、
請求項２記載のＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供システム。
【請求項４】
前記換算データベースは、前記ハードウェア要素の機能単位毎に、その処理に要する処理時間が設定されてなる、
請求項１〜３のいずれか１つに記載のＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供システム。
【請求項５】
前記ソフトウェア構成部想定手段は、前記処理時間に基づいて、前記マイクロプロセッサの合計処理時間を想定する、
請求項４記載のＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供システム。
【請求項６】
前記ソフトウェア構成部想定手段は、前記換算データベースに基づいて、前記マイクロプロセッサの端子数を想定する、
請求項１〜５のいずれか１つに記載のＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供システム。
【請求項７】
論理回路を含むハードウェア要素により構成されるハードウェア構成部を、プログラムに従い動作するマイクロプロセッサを含んで構成されるソフトウェア構成部に置換する際の指標となる見積情報を提供するＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供方法であって、
前記ハードウェア要素に関する情報を入力するステップと、
前記ハードウェア要素に関する情報と、前記マイクロプロセッサの構成要素に関する情報とが関連付けられてなる換算データベースを参照し、前記ハードウェア構成部に相当する処理能力を備える前記マイクロプロセッサの構成を想定するステップと、
前記入力されたハードウェア構成部に関する情報、及び前記想定されたソフトウェア構成部に関する情報に基づいて、前記見積情報を生成するステップと、
を備えるＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供方法。
【請求項８】
前記換算データベースは、前記ハードウェア要素の機能単位毎に、その処理と同等の処理を行うプログラムのサイズが設定されてなる、
請求項７記載のＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供方法。
【請求項９】
前記プログラムのサイズに基づいて、前記マイクロプロセッサのメモリ容量を想定するステップ、
を備える請求項８記載のＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供方法。
【請求項１０】
前記換算データベースは、前記ハードウェア要素の機能単位毎に、その処理に要する処理時間が設定されてなる、
請求項７〜９のいずれか１つに記載のＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供方法。
【請求項１１】
前記処理時間に基づいて、前記マイクロプロセッサの合計処理時間を想定するステップ、
を備える請求項１０記載のＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供方法。
【請求項１２】
前記換算データベースに基づいて、前記マイクロプロセッサの端子数を想定するステップ、
を備える請求項７〜１１のいずれか１つに記載のＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の情報処理を行う電子機器において、ハードウェア的な構成をソフトウェア的な構成に置換する際の指標となる見積情報を提供するＰＬＤ／ＣＰＬＤからマイコンへの置換え見積の情報提供システム及び方法に関するものである。
【背景技術】
【０００２】
所定の情報処理を行う電子機器においては、ＰＬＤ(Programmable Logic Device)／ＣＰＬＤ(Complex Programmable Logic Device)等のハードウェア的な構成を、プログラムの制御により動作するマイクロプロセッサを用いたソフトウェア的な構成に置換することができる。このようなハードウェアからソフトウェアへの置換を行うことにより、ミリ秒オーダーの制御なら複雑な制御ができたり、処理内容を容易に変更したりすることが可能となる。また、近年コストパフォーマンスのよいマイクロプロセッサが普及されていることにより、コストダウン等を図る上でもソフトウェアへの置き換えが有効となっている。
【０００３】
このような置き換え技術に関して、いくつかの先行技術が開示されている。特許文献１は、ラダー言語、ＳＦＣ等のプログラマブルコントローラ用言語で記述したシーケンス制御記述を与えるだけで、集積回路の積和論理回路部に対するプログラミングを行う構成を開示している。特許文献２は、ＦＰＧＡ用に作成した回路図の各階層に対して階層接続用のコネクタを入力することにより、各階層単位に論理合成ツールへ読み込ませること等が可能となる構成を開示している。特許文献３は、設計済みの部分回路と対応するＰＬＤの実回路の組み合わせをデータベースに多数記憶し、設計された論理回路を部分回路に分割し、該部分回路に対応するＰＬＤの実回路を割り付けていくことにより、論理回路全体を実際の回路に変換する構成を開示している。特許文献４は、予め演算毎、プロセッサ毎に所要実行時間を算出し、更に演算毎、テクノロジ毎に所要回路規模を算出しておき、所望のプログラムを構成する演算毎に、該当するプロセッサの上記所要実行時間、或いは該当するテクノロジの所要回路規模を当てはめることで、装置全体についての所要実行時間、及び所要回路規模を算出する構成を開示している。特許文献５は、論理システム全体をプログラム言語にて記述した論理システム記述プログラムから中間コードを生成し、専用ハードウェア性能テーブルとプロセッサの命令毎の性能テーブルを参照しながら中間コードからプロセッサで実行される命令系列の生成と性能見積値を算出する構成を開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−５０６０９号公報
【特許文献２】特開平１０−３２０４５１号公報
【特許文献３】特開平２−２９１０８０号公報
【特許文献４】特開２００５−２４２５６９号公報
【特許文献５】特開２００１−２９０８５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
機器の設計者等は、上記のような置き換え作業を行うに際して、機能面、コスト面等から様々な判断をするための情報が必要となる。しかしながら、上記先行技術によっては、複雑なデータベースを管理したり、様々な設定条件を入力したりといった多大な手間、設備等が必要であり、設計者等は、上記のような情報を簡便に入手することができなかった。
【課題を解決するための手段】
【０００６】
上記課題の解決を図る本発明は、論理回路を含むハードウェア要素により構成されるハードウェア構成部を、プログラムに従い動作するマイクロプロセッサを含んで構成されるソフトウェア構成部に置換する際の指標となる見積情報を提供する情報提供システムであって、前記ハードウェア要素に関する情報を入力するハードウェア情報入力手段と、前記ハードウェア要素に関する情報と、前記マイクロプロセッサの構成要素に関する情報とが関連付けられてなる換算データベースと、前記換算データベースに基づいて、前記ハードウェア構成部に相当する処理能力を備える前記マイクロプロセッサの構成を想定するソフトウェア構成部想定手段と、前記ハードウェア情報入力手段により入力された情報、及び前記ソフトウェア構成部想定手段により生成された情報に基づいて、前記見積情報を生成する見積情報生成手段とを備えるものである。
【０００７】
上記本発明によれば、利用者がハードウェア構成部に関する情報をコンピュータのキーボード等の手段により入力することにより、新しく搭載されるべきマイクロプロセッサの構成（仕様）が自動的に想定され、このマイクロプロセッサ等に関する見積情報が、コンピュータのディスプレイ等を通して利用者に提供される。これにより、利用者は、置き換え作業に際して有効な指標となる見積情報を、簡便に入手することが可能となる。
【０００８】
また、本発明は、論理回路を含むハードウェア要素により構成されるハードウェア構成部を、プログラムに従い動作するマイクロプロセッサを含んで構成されるソフトウェア構成部に置換する際の指標となる見積情報を提供する情報提供方法であって、前記ハードウェア要素に関する情報を入力するステップと、前記ハードウェア要素に関する情報と、前記マイクロプロセッサの構成要素に関する情報とが関連付けられてなる換算データベースを参照し、前記ハードウェア構成部に相当する処理能力を備える前記マイクロプロセッサの構成を想定するステップと、前記入力されたハードウェア構成部に関する情報、及び前記想定されたソフトウェア構成部に関する情報に基づいて、前記見積情報を生成するステップとを備えるものである。
【０００９】
この方法による作用効果は、上記システムによるものと同様である。
【発明の効果】
【００１０】
本発明によれば、ＰＬＤ／ＣＰＬＤ等のハードウェア的な構成を、マイクロプロセッサを用いたソフトウェア的な構成に置換する際の指標となる有効な情報を、機器の設計者等に対し簡便に提供することが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本発明の情報提供システムの構成を示す機能ブロック図である。
【図２】本実施の形態に係る情報提供システムにおける処理の流れを示す図である。
【図３】マイクロプロセッサによる処理の流れを示す機能ブロック図である。
【図４】論理回路及びソフト処理における処理の相違を示す図である。
【図５】換算表の例を示す図である。
【図６】ＮＯＴ回路と同等の処理を行うプログラム、このプログラムのサイズ、及びクロック数の例を示す図である。
【図７】ＡＮＤ回路と同等の処理を行うプログラム、このプログラムのサイズ、及びクロック数の例を示す図である。
【図８】ＯＲ回路と同等の処理を行うプログラム、このプログラムのサイズ、及びクロック数の例を示す図である。
【図９】ＸＯＲ回路と同等の処理を行うプログラム、このプログラムのサイズ、及びクロック数の例を示す図である。
【図１０】Ｄ−ＦＦ回路と同等の処理を行うプログラム、このプログラムのサイズ、及びクロック数の例を示す図である。
【図１１】ＩＮＰＵＴ回路と同等の処理を行うプログラム、このプログラムのサイズ、及びクロック数の例を示す図である。
【図１２】ＯＵＴＰＵＴ回路と同等の処理を行うプログラム、このプログラムのサイズ、及びクロック数の例を示す図である。
【図１３】想定されたマイクロプロセッサの仕様を例示する図である。
【図１４】置換時における有効な参考情報を例示する図である。
【発明を実施するための形態】
【００１２】
実施の形態１
以下に、本発明の実施の形態を、添付した図面を参照して説明する。図１は、本実施の形態に係る情報提供システム１の構成を示す機能ブロック図である。この情報提供システム１は、論理回路を含むハードウェア要素により構成されるハードウェア構成部を、プログラムに従い動作するマイクロプロセッサを含んで構成されるソフトウェア構成部に置換する際の指標となる見積情報を提供するものである。尚、ここで言うマイクロプロセッサには、ＣＰＵだけでなく入出力等の周辺回路やメモリも同一パッケージ化されるものも含まれる。この情報提供システム１は、ハードウェア情報入力手段２、換算データベース３、ソフトウェア構成部想定手段４、見積情報生成手段５を備える。
【００１３】
ハードウェア情報入力手段２は、上記ハードウェア要素に関する情報を入力するためのものであり、本システム１の利用者による操作を受け付け、対象となるハードウェア要素に関する情報を蓄積する。ハードウェア要素としては、ＮＯＴ回路、ＡＮＤ回路、ＯＲ回路、ＦＦ(Flip Flop)回路等の各種論理回路が挙げられる。
【００１４】
換算データベース３は、ハードウェア要素に関する情報と、上記ソフトウェア構成部を構成するマイクロプロセッサの構成要素に関する情報とが関連付けられてなる情報を格納するものである。
【００１５】
ソフトウェア構成部想定手段４は、換算データベース３に基づいて、ハードウェア構成部に相当する処理能力を備えるマイクロプロセッサの構成を想定するものである。即ち、このソフトウェア構成部想定手段４は、ハードウェア情報入力手段２により入力された情報と、換算データベース３に格納された情報とに基づいて、置換前に搭載されていたハードウェア構成部の処理能力を、置換後に搭載されるマイクロプロセッサに必要とされる処理能力に換算し、この換算結果に基づいて、マイクロプロセッサの具体的な構成を提案するものである。
【００１６】
見積情報生成手段５は、ハードウェア情報入力手段２に入力された情報、及びソフトウェア構成部想定手段４により生成された情報に基づいて、上記見積情報を生成するものである。
【００１７】
上記のような構成は、中央処理装置（ＣＰＵ等）、記憶装置（ＲＡＭ，ＲＯＭ等）、入力装置（キーボード、マウス等）、出力装置（ディスプレイ、プリンタ等）を備えるコンピュータを利用することにより実現される。例えば、汎用のコンピュータに上記手段２〜５による機能を持たせるアプリケーションソフトをインストールすることにより実現することができる。また、本システム１の提供者が管理するサーバと利用者が使用するユーザ端末とが通信ネットワークを介して接続し、互いに情報の送受が可能な状態においても実現することができる。このような状態においては、例えば利用者がユーザ端末を操作し、置換しようとするハードウェア要素に関する情報を入力すると、この情報が通信ネットワークを介してサーバに送信される。サーバは、自らの記憶装置に換算データベース３を保有し、ユーザ端末から送信された情報と換算データベース３の情報とに基づいて、上述したソフトウェア構成部想定手段４の処理を実行し、更に見積情報を生成する。これにより、見積情報を、通信ネットワークを介してサーバからユーザ端末に提供することができる。尚、本発明は、これらの構成に限定されるものではなく、様々なインフラ的変更を許容するものである。
【００１８】
図２は、本実施の形態に係る情報提供システム１における処理の流れを示す図である。先ず、利用者によりハードウェア情報の入力が行われる（Ｓ１１）。ここで入力される情報は、ＰＬＤ／ＣＰＬＤのメーカ名・品名（Ａ社・Ｂ）、ＮＯＴ回路の個数（Ｃ１）、ＡＮＤ回路の個数（Ｃ２）、ＯＲ回路の個数（Ｃ３）、ＦＦ回路の個数（Ｄ）、入力端子数（Ｅ）、出力端子数（Ｆ）等である。このハードウェア情報を受信したホスト側の処理機能部では、ハードウェア的な構成をソフトウェア的な構成へと換算する処理を行う（Ｓ１２）。具体的には、入力されたＰＬＤ／ＣＰＬＤの処理内容（ゲート数及びＦＦ個数）を、上記換算データベース３に格納された情報を参照することにより、マイクロプロセッサの合計処理時間、メモリ容量（バイト数）、端子数に換算する。そして、この換算された情報に基づいて、マイクロプロセッサの仕様、即ち処理性能（時間）、プログラムサイズＲＯＭ容量、Ｉ／Ｏピン数等が想定される（Ｓ１３）。更に、ホスト側の処理機能部は、このように想定された情報に基づいて、実在する（又は製造する）マイクロプロセッサを選定し（Ｓ１４）、このマイクロプロセッサを使用する際の費用を見積り（Ｓ１５）、その時のＶＥ(Value Engineering)効果を計算し（Ｓ１６）、これらの結果を利用者に提供する。そして、利用者は、これらの情報がまとめられた見積情報を受理する（Ｓ１７）。
【００１９】
図３は、マイクロプロセッサによる処理の流れを示す機能ブロック図である。同図が示すように、マイクロプロセッサにおいては、データを取り込む入力処理部２１、ＡＮＤ，ＯＲ，ＦＦ等のハードウェア構成部としての論理回路と同等の処理をソフト処理により行う論理処理部２２、論理処理された結果を出力する出力処理部２３を備える。
【００２０】
図４は、論理回路及びソフト処理における処理の相違を示す図である。論理回路においては、全ての論理が並列的に実行されるため、パスの最大値のみで性能を規定することが可能である。即ち、論理回路を構成する各要素が全て同じ遅延時間を有するものとした場合には、図４中Ａで示す回路パスのみを考えることにより、論理回路の最大処理時間ＭＡＸ(hard)を求めることができる。即ち、ＭＡＸ(hard)＝ＡＮＤ１＋ＸＯＲ１＋ＡＮＤ２となる。一方、マイクロプロセッサ（ノイマン型）においては、命令を逐次実行するため、その処理時間は、入力端子、ＡＮＤ−ＯＲ、出力端子等から構成される全ての機能単位毎の最大処理時間の合計となる。即ち、図４中Ｂで示す全ての回路パスを考える必要があり、プログラムソフトにより実行した時の最大処理時間ＭＡＸ(soft)は、ＭＡＸ(soft)＝ＡＮＤ１＋ＸＯＲ１＋ＡＮＤ２＋ＯＲ１＋ＯＲ２となる。
【００２１】
上記のように、マイクロプロセッサによる処理は、同時並行処理が可能な論理回路とは異なり、１命令を逐次処理する必要があることから、性能面でデメリットがあると言える。しかし、入力処理部２１と論理処理部２２とを分割することにより、そのデメリットを最小限にすることができる。即ち、入力処理部２１において、入力信号をビット処理からバイト処理に変換し、論理処理部２２において、論理回路と同等の処理をソフト処理し、出力処理部２３において、バイト処理からビット処理に変換して出力すればよい。
【００２２】
本発明においては、上記のような論理回路からソフト処理への変換方法を基に、予め論理回路の機能単位毎の処理時間やＲＯＭ容量を計算しておき、換算表を作成しておく。この換算表が、上記換算データベース３に格納される情報となる。
【００２３】
図５は、換算表の例を示す図である。この換算表においては、処理内容（機能単位）毎に、バイト数及び処理時間が設定されている。処理内容（機能単位）の欄には、ＮＯＴ回路、ＡＮＤ回路等の論理回路の種類が記載される。バイト数は、各機能単位と同等の処理を行うプログラムのサイズを示している。このバイト数の設定に関しては、後述する。処理時間の欄には、各機能単位の処理に要する時間が記載され、それぞれ最小値及び最大値が記載される。
【００２４】
図６〜図１２は、各種論理回路（機能単位）と同等の処理を行うプログラム、このプログラムのサイズ、及びクロック数の例を示す図である。各図において、表の左半分はアセンブラ言語の命令を示し、右半分中バイト数の欄の数値は、各命令のプログラムサイズを示し、ＣＬＫ数の欄の数値は、各命令のＣＰＵ処理において必要なクロック数を示している。図６に示すＮＯＴ回路を例としてみると、合計のプログラムサイズは１０バイトであり、クロック数の最小値が１６μｓ、最大値が２２μｓとなっている。これらの数値は、上述した図５に示す換算表のバイト数及び処理時間に反映されている（この換算表における処理時間は８ＭＨｚでの動作時を例示したものである）。
【００２５】
図１３は、想定されたマイクロプロセッサの仕様を例示する図である。このマイクロプロセッサの仕様は、上記図５に示す換算表と、上記ハードウェア情報入力手段２により入力されたハードウェア情報とに基づいて生成される。図１３において、処理内容（機能単位）の欄には、利用者が入力したハードウェア要素が記載され、要求仕様の欄には、これらの機能単位の個数が記載される。基本処理時間は、機能単位の１つが処理に要する時間を示し、換算表（図５参照）中の処理時間欄の最小値又は最大値から決定される。総処理時間は、要求仕様に記載された個数に、基本処理時間を乗じた数値である。単位バイト数は、各機能単位と同等の処理を行うプログラムのサイズを示し、換算表（図５参照）中のバイト数の欄に記載された数値により決定される。総バイト数は、要求仕様に記載された個数に、単位バイト数を乗じた数値である。必要端子数は、入力端子数、出力端子数、及び他の機能単位の種類により決定される数値である。合計処理時間は、総処理時間を合計した数値であり、マイクロプロセッサの性能を示すものとして捉えることができる。必要ＲＯＭ容量は、総バイト数を合計した数値であり、プログラムを格納するのに必要とされるメモリ容量を示すものである。このように、ハードウェア構成部をソフトウェア構成部に置換する際に必要となるマイクロプロセッサの端子数、合計処理時間、メモリ容量が想定される。
【００２６】
図１４は、置換時における有効な参考情報を例示する図である。この情報においては、ハードウェア情報欄３１と、ソフトウェア情報欄３２とが設けられ、両情報を比較できるようになされている。両欄３１，３２には、置換対象となるＰＬＤ／ＣＰＬＤ、又は上記のように想定(提案)されたマイクロプロセッサのメーカ名、デバイス名、単価の欄が設けられている。更に、生産計画欄（生産数／月、生涯月）、総費用欄、及び置換時の総費用減額欄が設けられている。これらの欄により、利用者はソフトウェアへの置換を行うべきか否か、どのようなデバイスを選択するべきか等を、的確に判断することが可能となる。
【符号の説明】
【００２７】
１  情報提供システム
２  ハードウェア情報入力手段
３  換算データベース
４  ソフトウェア構成部想定手段
５  見積情報生成手段
Ｓ１１  ハードウェア情報の入力
Ｓ１２  ハードウェア的な構成をソフトウェア的な構成へと換算する処理
Ｓ１３  マイクロプロセッサの使用選択情報
Ｓ１４  マイクロプロセッサ選定
Ｓ１５  置換時見積
Ｓ１６  ＶＥ効果計算
Ｓ１７  見積情報の受理
２１  入力処理部
２２  論理処理部
２３  出力処理部
３１  ハードウェア情報欄
３２  ソフトウェア情報欄
【図１】
2010181942.tif 000003
【図２】
2010181942.tif 000004
【図３】
2010181942.tif 000005
【図４】
2010181942.tif 000006
【図５】
2010181942.tif 000007
【図６】
2010181942.tif 000008
【図７】
2010181942.tif 000009
【図８】
2010181942.tif 000010
【図９】
2010181942.tif 000011
【図１０】
2010181942.tif 000012
【図１１】
2010181942.tif 000013
【図１２】
2010181942.tif 000014
【図１３】
2010181942.tif 000015
【図１４】
2010181942.tif 000016