(57)【要約】【課題】ソフトウエア負荷を低減することが可能な情報処理装置を提供すること。【解決手段】複数の機器との通信を制御する通信制御手段と、通信制御手段に対して情報送信指示を行う一以上の処理手段と、通信制御設定が格納される複数の制御レジスタと、を備え、処理手段は、通信先の機器を特定する通信先特定情報を付加して情報送信指示を行い、通信制御手段は、処理手段から供給される通信先特定情報を用いて複数の制御レジスタから特定の制御レジスタを選択し、選択した特定の制御レジスタに格納された通信制御設定に従って通信先特定情報により特定される機器への情報送信を行うことを特徴とする情報処理装置。【選択図】図３
2012247907.tif 000002
【特許請求の範囲】
【請求項１】
複数の機器と通信可能に接続された情報処理装置であって、
前記複数の機器との通信を制御する通信制御手段と、
該通信制御手段に対して情報送信指示を行う一以上の処理手段と、
通信制御設定が格納される複数の制御レジスタと、を備え、
前記処理手段は、通信先の機器を特定する通信先特定情報を付加して前記情報送信指示を行い、
前記通信制御手段は、前記処理手段から供給される通信先特定情報を用いて前記複数の制御レジスタから特定の制御レジスタを選択し、該選択した特定の制御レジスタに格納された通信制御設定に従って前記通信先特定情報により特定される機器への情報送信を行うことを特徴とする、
情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記通信制御手段は、
前記複数の機器と、前記複数の制御レジスタとの対応付けを規定したテーブルを備え、
前記処理手段から供給される通信先特定情報を用いて前記テーブルを参照し、前記処理手段から供給される通信先特定情報に対応付けられた制御レジスタに格納された通信制御設定に従って、前記通信先特定情報により特定される機器への情報送信を行う手段である、
情報処理装置。
【請求項３】
請求項１又は２に記載の情報処理装置であって、
前記複数の機器からの情報受信は、当該情報処理装置から前記複数の機器への情報送信に付随して行われる、
情報処理装置。
【請求項４】
請求項１又は２に記載の情報処理装置であって、
前記通信制御手段は、前記複数の機器に対応した入力端子を備え、前記複数の機器から情報受信する際にいずれの機器から情報を受信したかを判別可能であり、該判別した結果に従って前記複数の制御レジスタから特定の制御レジスタを選択し、該選択した特定の制御レジスタに格納された通信制御設定に従って前記複数の機器のいずれかからの情報受信を行う手段である、
情報処理装置。
【請求項５】
請求項１又は２に記載の情報処理装置であって、
前記通信制御手段は、情報受信に先立って前記複数の機器から受信した通信元特定情報を用いて前記複数の制御レジスタから特定の制御レジスタを選択し、該選択した特定の制御レジスタに格納された通信制御設定に従って、前記通信元特定情報により特定される機器からからの情報受信を行う手段である、
情報処理装置。
【請求項６】
マルチコア・プロセッサとして構成される請求項１ないし５のいずれか１項に記載の情報処理装置であって、
前記一以上の処理手段は、ＣＰＵコアである、
情報処理装置。
【請求項７】
請求項１ないし６のいずれか１項に記載の情報処理装置であって、
外部機器からの入力信号に応じて、前記一以上の処理手段に対して割り込み信号を出力する割り込みコントローラを更に備える、
情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＰＵ等の処理手段からの指示により周辺機器との通信を行う情報処理装置に関する。
【背景技術】
【０００２】
従来、ＣＰＵ（Central  Processing  Unit）、ＲＯＭ（Read  Only  Memory）、ＲＡＭ（Random  Access  Memory）等を有する情報処理装置が、家庭用及び業務用として広く用いられている。こうした情報処理装置は、ＩＣ（Integrated  Circuit）等の周辺機器や他の情報処理装置との間で通信を行う機能を有している場合があり、この場合、通信制御を行う専用の手段を有するのが通常である。
【０００３】
特許文献１には、ＤＭＡ動作種類の指定、メモリ上のデータの先頭アドレスの指定、転送するデータの長さの指定、その他の制御情報（通信相手のＩＤ等）を格納するための制御レジスタを備える分散メモリ型並列計算機について記載されている。この計算機では、プロセッサからＤＭＡ転送を起動されると、メモリから読み出したデータに含まれるデータ等を制御レジスタに格納し、これを用いてメッセージ通信を行っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平７−２００５０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、情報処理装置が通信を行う相手先の機器が複数個存在する場合、それぞれに対して異なる通信制御設定が採用される場合がある。通信制御設定には、例えば、一度に送受信するビット幅、ボウレート、連続送信／個別送信の種別等が含まれ得る。上記特許文献１に記載の計算機では、送信データに通信制御設定を含ませる必要があるため、送信データのボリュームが増大し、ソフトウエア負荷が増大する可能性がある。
【０００６】
また、近年では、特に自動車に搭載される制御装置の分野において、複数の情報処理装置が有する機能を一つの情報処理装置に統合する動きが見られる。こうした機能統合には、複数のＣＰＵコアを一チップ上に搭載したマルチコア・プロセッサ等、処理手段を複数備えるものが好適に用いられる。
【０００７】
機能統合が行われた情報処理装置では、通信機能を担うハードウエアは、複数の処理手段間で共用されるのが通常である。そうでなければ、単に複数の情報処理装置が並列的に用いられるのと同じことであり、統合のメリット（サイズダウン、コストダウン）が小さくなってしまうからである。
【０００８】
また、機能統合が行われた情報処理装置では、各ＣＰＵコアが、元々固有の周辺機器と通信を行っており、それぞれの通信における通信制御設定が異なっていた可能性がある。このような場合、通信機能を担うハードウエアが各ＣＰＵコアで共用されるものとすれば、各ＣＰＵコアが実行していた元々のソフトウエアに修正を加える必要性が生じることになる。
【０００９】
図１及び図２は、情報処理装置の機能統合によりソフトウエア処理の流れを修正する必要が生じる場面を説明するための説明図である。
【００１０】
図１においてソフトＡ、ソフトＢ、ソフトＣと表記したものは、機能統合前に各情報処理装置によって実行されていた処理の内容を示す簡易なフローチャートである。ここで、ソフトＡを実行する情報処理装置は、制御設定Ａを採用して周辺機器等（周辺機器や他の情報処理装置をいう）と通信を行っていた。同様に、ソフトＢを実行する情報処理装置は、制御設定Ｂを採用して周辺機器等と通信を行い、ソフトＣを実行する情報処理装置は、制御設定Ｃを採用して周辺機器等と通信を行っていた。
【００１１】
この場合、ソフトＡを実行する情報処理装置は、制御設定Ａを制御レジスタ等に格納した後に、データ送信Ａを繰り返し行うというソフトウエア構造となっていたことが想定される。同様に、ソフトＢを実行する情報処理装置は、制御設定Ｂを制御レジスタ等に格納した後にデータ送信Ｂを繰り返し行うというソフトウエア構造となっており、ソフトＣを実行する情報処理装置は、制御設定Ｃを制御レジスタ等に格納した後にデータ送信Ｃを繰り返し行うというソフトウエア構造となっていたことが想定される。
【００１２】
こうしたソフトウエア構造を有する複数の情報処理装置を機能統合すると、機能統合後にソフトＡ、ソフトＢ、ソフトＣをそのまま実行した場合、制御設定が通信相手に適合しない可能性が生じる。
【００１３】
図２（Ａ）は、機能統合後に、ソフトＡ、ソフトＢ、ソフトＣをそのまま実行した場合に実現され得る処理の流れを示す簡易なフローチャートである。図示するように、ソフトＡの実行に係るデータ送信Ａを行おうとした時点で、制御設定Ｃが制御レジスタにセットされている可能性がある。従って、機能統合後には、図２（Ｂ）に示すように、データ送信の度に制御設定を書き換えるように（或いは、制御設定がこれから行う通信に適合しているか否か確認した上で、適合しなければ書き換えるように）、ソフトウエアを変更しなければならない。また、変更後のソフトウエアは、変更前のソフトウエアに比してボリュームが大きくなるため、ソフトウエア負荷が増大してしまう。
【００１４】
本発明はこのような課題を解決するためのものであり、ソフトウエア負荷を低減することが可能な情報処理装置を提供することを、主たる目的とする。
【課題を解決するための手段】
【００１５】
上記目的を達成するための本発明の一態様は、
複数の機器と通信可能に接続された情報処理装置であって、
前記複数の機器との通信を制御する通信制御手段と、
該通信制御手段に対して情報送信指示を行う一以上の処理手段と、
通信制御設定が格納される複数の制御レジスタと、を備え、
前記処理手段は、通信先の機器を特定する通信先特定情報を付加して前記情報送信指示を行い、
前記通信制御手段は、前記処理手段から供給される通信先特定情報を用いて前記複数の制御レジスタから特定の制御レジスタを選択し、該選択した特定の制御レジスタに格納された通信制御設定に従って前記通信先特定情報により特定される機器への情報送信を行うことを特徴とする、
情報処理装置である。
【００１６】
この本発明の一態様によれば、処理手段がデータ送信の度に通信制御設定を指定する必要がないため、ソフトウエア負荷を低減することができる。
【００１７】
本発明の一態様において、
前記通信制御手段は、例えば、
前記複数の機器と、前記複数の制御レジスタとの対応付けを規定したテーブルを備え、
前記処理手段から供給される通信先特定情報を用いて前記テーブルを参照し、前記処理手段から供給される通信先特定情報に対応付けられた制御レジスタに格納された通信制御設定に従って、前記通信先特定情報により特定される機器への情報送信を行う手段である。
【００１８】
また、本発明の一態様において、
前記複数の機器からの情報受信は、当該情報処理装置から前記複数の機器への情報送信に付随して行われるものとしてもよい。
【００１９】
また、本発明の一態様において、
前記通信制御手段は、前記複数の機器に対応した入力端子を備え、前記複数の機器から情報受信する際にいずれの機器から情報を受信したかを判別可能であり、該判別した結果に従って前記複数の制御レジスタから特定の制御レジスタを選択し、該選択した特定の制御レジスタに格納された通信制御設定に従って前記複数の機器のいずれかからの情報受信を行う手段であるものとしてもよい。
【００２０】
また、本発明の一態様において、
前記通信制御手段は、情報受信に先立って前記複数の機器から受信した通信元特定情報を用いて前記複数の制御レジスタから特定の制御レジスタを選択し、該選択した特定の制御レジスタに格納された通信制御設定に従って、前記通信元特定情報により特定される機器からからの情報受信を行う手段であるものとしてもよい。
【００２１】
また、マルチコア・プロセッサとして構成される本発明の一態様において、
前記一以上の処理手段は、例えば、ＣＰＵコアである。
【００２２】
また、本発明の一態様において、
外部機器からの入力信号に応じて、前記一以上の処理手段に対して割り込み信号を出力する割り込みコントローラを更に備えるものとしてもよい。
【発明の効果】
【００２３】
本発明によれば、ソフトウエア負荷を低減することが可能な情報処理装置を提供することができる。
【図面の簡単な説明】
【００２４】
【図１】情報処理装置の機能統合によりソフトウエア処理の流れを修正する必要が生じる場面を説明するための説明図である。
【図２】情報処理装置の機能統合によりソフトウエア処理の流れを修正する必要が生じる場面を説明するための説明図である。
【図３】本発明の一実施例に係る情報処理装置１のシステム構成例である。
【図４】制御設定対応テーブル３４の一例である。
【図５】本実施例の情報処理装置１により実行される処理の流れを示すフローチャートの簡易な例である。
【発明を実施するための形態】
【００２５】
以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。
【実施例】
【００２６】
以下、図面を参照し、本発明の一実施例に係る情報処理装置１について説明する。
【００２７】
［基本構成］
図３は、本発明の一実施例に係る情報処理装置１のシステム構成例である。情報処理装置１は、主要な構成として、ＣＰＵコアユニット１０と、周辺バス２０と、通信機能部３０と、割り込みコントローラ４０と、を備える。
【００２８】
ＣＰＵコアユニット１０は、複数のＣＰＵコア１０＃０、１０＃１、１０＃２を備える。各ＣＰＵコアは、例えば、プログラムカウンタ、命令フェッチユニット、命令キュー、命令発行部、汎用レジスタ、ＡＬＵ（Arithmetic  Logic  Unit）、ＭＵＬ（乗算器）、ＤＩＶ（除算器）、ＬＳＵ（Load  Store  Unit）その他の演算器を備える。各ＣＰＵコアは、図示しないＲＯＭやＨＤＤ（Hard  Disk  Drive）等の補助記憶装置から命令をフェッチし、演算結果や他の機器からロードした結果等を、内蔵する汎用レジスタやＲＡＭ等に格納する。また、各コアは、通信バス２０によって通信機能部３０と接続されている。
【００２９】
なお、本発明の適用上、コアの個数については特段の制約はなく、如何なる個数であってもよい。また、本発明は、マルチコア・プロセッサに限定されるものではなく、他の種類の情報処理装置にも適用可能である。例えば、ハードウエア・マルチスレッディング処理を行うマルチスレッド処理装置、マルチプロセッサ、或いは単なるシングルプロセッサ装置であっても構わない。
【００３０】
［データ送信］
通信機能部３０は、例えば、周辺機器であるＩＣ５０＃０、５０＃１、５０＃２、５０＃３と通信を行うためのハードウエア手段である。通信機能部３０は、送信バッファ３１と、受信バッファ３２と、複数の制御レジスタ３３＃０、３３＃１、３３＃２と、制御設定対応テーブル３４と、セレクタ３５と、通信制御部３６と、チップセレクト機能部３７と、を備える。本発明の適用上、ＩＣ及び制御レジスタの個数に特段の制約はなく、如何なる個数であってもよい。
【００３１】
送信バッファ３１は、例えばキャッシュメモリやレジスタ等であり、いずれかのＣＰＵコアからいずれかのＩＣへ送信される送信データが格納される。送信バッファ３１は、ＦＩＦＯ（First  In，First  Out）によって入出力制御される。同様に、受信バッファ３２には、いずれかのＩＣから受信され、いずれかのＣＰＵコアを送信先とする受信データが格納される。
【００３２】
送信バッファ３１に格納される送信データ３１Ａは、図３に示すように、ヘッダとして送信先ＩＤ部３１Ａａが格納され、その後にデータ本体部３１Ａｂが格納されている。送信データ３１Ａのデータ本体部３１Ａｂは、典型的には、各ＣＰＵコアがＲＯＭやＲＡＭからロードしたデータ、或いは各ＣＰＵコアが演算を行った結果を示す値である。
【００３３】
複数の制御レジスタ３３＃０、３３＃１、３３＃２には、異なる通信制御設定が、それぞれ格納されている。本実施例では三個の制御レジスタによって、三通りの通信制御設定が格納されている。通信制御設定には、前述のように、一度に送受信するビット幅、ボウレート、連続送信／個別送信の種別等が含まれ得る。制御レジスタ３３＃０、３３＃１、３３＃２の内容は、例えば情報処理装置１の起動時に、図示しないＲＯＭ等からロードされる。
【００３４】
制御設定対応テーブル３４は、送信データに含まれる送信先ＩＤと、いずれかの制御レジスタとを対応付けている。図４は、制御設定対応テーブル３４の一例である。図示するように、送信先ＩＤが「０」のＩＣ５０＃０にデータ送信する場合は、レジスタＩＤが「０」の制御レジスタ３３＃０に格納された通信制御設定に従ってデータ送信を行うように制御される。また、送信先ＩＤが「１」のＩＣ５０＃１にデータ送信する場合は、レジスタＩＤが「１」の制御レジスタ３３＃１に格納された通信制御設定に従ってデータ送信を行うように制御される。また、送信先ＩＤが「２」又は「３」のＩＣ５０＃２又は５０＃３にデータ送信する場合は、レジスタＩＤが「２」の制御レジスタ３３＃２に格納された通信制御設定に従ってデータ送信を行うように制御される。
【００３５】
制御設定対応テーブル３４は、次に送信される送信データ３１Ａに含まれる送信先ＩＤ部３１Ａａが入力されると、対応する制御レジスタのＩＤ（レジスタＩＤ）をセレクタ３５に出力する。なお、図示しない制御主体が、送信データに含まれる送信先ＩＤ部を検索キーとして制御設定対応テーブル３４を検索しても構わない。
【００３６】
セレクタ３５は、制御レジスタ３３＃０、３３＃１、３３＃２のうち、入力されたレジスタＩＤに対応する制御レジスタに書き込まれた内容を読み込み、選択的に通信制御部３６に出力する。
【００３７】
通信制御部３６は、セレクタ３５により、いずれかの制御レジスタから読み込まれた通信制御設定に従って、いずれかのＩＣに対して送信データ３１Ａのデータ本体部３１Ａｂを送信する。
【００３８】
チップセレクト機能部３７は、各ＩＣに対応した複数の入力端子３７＃０、３７＃１、３７＃２、３７＃３を有し、通信制御部３６から送信データ３１Ａのデータ本体部３１Ａｂを送信する際に、いずれかのＩＣを選択するスイッチとして機能する。
【００３９】
このような構成によって、本実施例の情報処理装置１は、ソフトウエア負荷を低減することができる。図５は、本実施例の情報処理装置１により実行される処理の流れを示すフローチャートの簡易な例である。
【００４０】
図示するように、本実施例の情報処理装置１では、まず制御レジスタ３３＃０、３３＃１、３３＃２に通信制御設定を書き込む初期設定を行う。
【００４１】
そして、以降のデータ送信においては、各ＣＰＵコアがフェッチして実行する処理は、「通信相手を指定してデータ送信を指示する処理」のみとなる。従って、データ送信の度に通信制御設定を指定する必要がないため、ソフトウエア負荷を低減することができる。
【００４２】
この際に、通信機能部３０は、送信先ＩＤ部３１Ａａを用いて制御設定対応テーブル３４を参照し、選択される制御レジスタに切替えた上で、データ送信を実行することになる。
【００４３】
［データ受信］
割り込みコントローラ４０には、センサ等のアナログ機器に接続されたＡ／Ｄ変換器６０＃０、６０＃１、６０＃２が接続される。割り込みコントローラ４０は、所定の周期でＡ／Ｄ変換器６０＃０、６０＃１、６０＃２からセンサ出力値等が入力されると、割り込み信号を生成して各ＣＰＵコアに通知する。このような構成は、本実施例の情報処理装置１が、自動車等の制御装置として用いられる場合に、好適な構成となり得る。
【００４４】
例えば、数［ｍｓ］毎にセンサ出力値をサンプリングして車両制御を行う制御装置にあっては、センサ出力値をポーリング等によって取得する手法と、センサ及びＡ／Ｄ変換器からの割り込みによって取得する手法が採用し得る。これらのうち、割り込みによってセンサ出力値を取得する方が、リアルタイム性を維持しやすい等の利点がある。なお、図３に示した各Ａ／Ｄ変換器の他にも、各ＣＰＵコアにデータ送信する機器が接続されてよい。
【００４５】
本実施例において、各ＩＣから情報処理装置１へのデータ送信は、情報処理装置１から各ＩＣへのデータ送信に付随して行われ、各ＩＣから自発的に情報処理装置１へデータ送信を行わないものとする。
【００４６】
例えば、ＣＰＵコア１０＃０からＩＣ５０＃０にデータが送信されると、ＩＣ５０＃０は演算や他の機器との通信等を行って、その結果をＣＰＵコア１０＃０に対して送信する。このように、情報処理装置１から各ＩＣへのデータ送信と各ＩＣから情報処理装置１へのデータ送信が１セットで行われるため、各ＩＣから情報処理装置１へのデータ送信に際して、いずれのＩＣからデータ送信が行われたかを判別する必要はない。
【００４７】
以上説明した本実施例の情報処理装置１によれば、データ送信の度に通信制御設定を指定する必要がないため、ソフトウエア負荷を低減することができる。
【００４８】
また、この結果、機能統合が行われる際にソフトウエア変更の必要性を低減することができる。
【００４９】
［その他の構成］
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【００５０】
例えば、実施例とは異なり、各ＩＣから自発的に情報処理装置１へデータ送信が行われるものとしてもよい。この場合、通信機能部３０は、例えば入力端子のいずれにデータが入力されているかを検知することにより、送信元のＩＣを判別することができる。通信機能部３０は、送信元のＩＣを判別すると、制御設定対応テーブル３４を参照して得られたレジスタＩＤをセレクタ３５に出力することによって、通信制御設定を決定する。
【００５１】
また、各ＩＣが、受信データに先立って自己の識別データを情報処理装置１に送信する構成であっても構わない。この場合、通信機能部３０は、受信した識別データを用いて制御設定対応テーブル３４を参照し、得られたレジスタＩＤをセレクタ３５に出力することによって、受信において採用される通信制御設定を決定する。
【００５２】
また、通信機能部３０は、割り込みコントローラ４０が有する機能を統合し、入出力に関する広範囲な制御を行うものであってもよい。
【符号の説明】
【００５３】
１    情報処理装置
１０  ＣＰＵコアユニット
１０＃０、１０＃１、１０＃２  ＣＰＵコア
２０  周辺バス
３０  通信機能部
３１  送信バッファ
３１Ａ  送信データ
３１Ａａ  送信先ＩＤ部
３１Ａｂ  データ本体部
３２  受信バッファ
３３＃０、３３＃１、３３＃２  制御レジスタ
３４  制御設定対応テーブル
３５  セレクタ
３６  通信制御部
３７  チップセレクト機能部
３７＃０、３７＃１、３７＃２、３７＃３  入力端子
４０  割り込みコントローラ
５０＃０、５０＃１、５０＃２、５０＃３  ＩＣ
６０＃０、６０＃１、６０＃２、  Ａ／Ｄ変換器
【図１】
2012247907.tif 000003
【図２】
2012247907.tif 000004
【図３】
2012247907.tif 000005
【図４】
2012247907.tif 000006
【図５】
2012247907.tif 000007