JP2007286811A - 情報処理システム - Google Patents

情報処理システム Download PDF

Info

Publication number
JP2007286811A
JP2007286811A JP2006112043A JP2006112043A JP2007286811A JP 2007286811 A JP2007286811 A JP 2007286811A JP 2006112043 A JP2006112043 A JP 2006112043A JP 2006112043 A JP2006112043 A JP 2006112043A JP 2007286811 A JP2007286811 A JP 2007286811A
Authority
JP
Japan
Prior art keywords
information
information processing
circuit
algorithm
circuit information
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
JP2006112043A
Other languages
English (en)
Inventor
Kiyoshi Takagi
潔 高木
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.)
Konica Minolta Inc
Original Assignee
Konica Minolta 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 Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2006112043A priority Critical patent/JP2007286811A/ja
Publication of JP2007286811A publication Critical patent/JP2007286811A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】接続情報に基づいた回路の接続に限定されず、動作中の装置からの情報に応じたアルゴリズムに適切に対応して再構築可能な情報処理システムを提供する。
【解決手段】外部とデータを送受信する通信手段と、アプリケーションプログラム実行中に前記通信手段を介して外部から得られた回路情報によりハードウェアの構成が動的に変更され得るプロセッサとを有する情報処理装置と、前記情報処理装置からの動作情報に応じてアルゴリズムを作成し、このアルゴリズムを論理合成して回路情報を生成し、この回路情報を前記情報処理装置に送信する回路情報生成装置と、を有する。
【選択図】図1

Description

本発明は、外部から得られた回路情報によりハードウェアの構成を動的に変更可能なプロセッサを有する情報処理装置と、情報処理装置からの動作情報に応じ回路情報を情報処理装置に送信する回路情報生成装置とを有する情報処理システムに関する。
装置に組み込まれた状態においてコンフィギュレーションを実行可能なデバイスが登場している。
そして、アプリケーションプログラムを実行中に、そのハードウェアの構成を再構築できるプロセッサを利用した技術が存在している。これはネットワークを経由した外部からの情報により、ハードウェアの構成を動的に再構築するものである。なお、この種の技術に関しては、以下の特許文献1などに提案されている。
特開2005-316957公報(第1頁、図1)
以上の特許文献1に記載された装置では、再構築される回路情報は、再構築に用いる回路の最小単位の接続情報であり、これは回路を動作させるまえに準備しておくものである。そのため、想定された条件内で、接続を変更することによるハードウェアの再構築までしか行うことができないという問題を含んでいる。
本発明は、以上のような課題を解決するためになされたものであって、接続情報に基づいた回路の接続に限定されず、動作中の装置からの情報に応じたアルゴリズムに適切に対応して再構築可能な情報処理システムを提供することを目的とする。
以上の課題を解決する本発明は、以下に記載するようなものである。
(1)請求項1記載の発明は、外部とデータを送受信する通信手段と、アプリケーションプログラム実行中に前記通信手段を介して外部から得られた回路情報によりハードウェアの構成が動的に変更され得るプロセッサとを有する情報処理装置と、前記情報処理装置からの動作情報に応じてアルゴリズムを作成し、このアルゴリズムを論理合成して回路情報を生成し、この回路情報を前記情報処理装置に送信する回路情報生成装置と、を有することを特徴とする情報処理システムである。
(2)請求項2記載の発明は、前記回路情報生成装置は、前記情報処理装置からの動作情報に応じて、ハードウェア記述言語で構築されたアルゴリズムを作成する、ことを特徴とする請求項1記載の情報処理システムである。
(3)請求項3記載の発明は、前記回路情報生成装置は、前記情報処理装置からの動作情報に応じて、ソフトウェアで構築されたアルゴリズムを作成する、ことを特徴とする請求項1記載の情報処理システムである。
(4)請求項4記載の発明は、前記回路情報生成装置は、ソフトウェアで構築されたアルゴリズムを、高位合成を行ってから論理合成する、ことを特徴とする請求項3記載の情報処理システムである。
本発明によると以下のような効果が得られる。
(1)請求項1記載の発明では、情報処理装置からの動作情報に応じてアルゴリズムを作成し、このアルゴリズムを論理合成して回路情報を生成し、この回路情報を回路情報生成装置から情報処理装置に送信することで、情報処理装置側では、アプリケーションプログラム実行中に外部から得られた回路情報によりハードウェアの構成が動的に変更される。
この結果、情報処理装置では、動作中の情報処理装置からの情報に適切に対応したアルゴリズムから生成された回路情報が、回路情報生成装置で生成されて情報処理装置に対して送られるため、接続情報に基づいた回路の接続に限定されず、動作中の情報処理装置からの情報に応じたアルゴリズムに適切に対応した再構築が可能になる。
(2)請求項2記載の発明では、上記(1)において、回路情報生成装置は、情報処理装置からの動作情報に応じて、ハードウェア記述言語で構築されたアルゴリズムを作成するため、適切な回路情報を生成できるという利点がある。
(3)請求項3記載の発明では、上記(1)において、回路情報生成装置は、情報処理装置からの動作情報に応じて、アルゴリズムをソフトウェアで構築して作成するため、各種の条件や動作についての変更に対しても、ソフトウェアにより柔軟に対応することができるという利点がある。
(4)請求項4記載の発明では、上記(3)において、回路情報生成装置は、アルゴリズムをソフトウェアで構築し、高位合成を行ってから論理合成するため、各種の条件や動作についての変更に対してもソフトウェアによって柔軟に対応することができるという利点がある。
以下、図面を参照して本発明を実施するための最良の形態(以下、実施形態)を詳細に説明する。
〈情報処理システムの電気的構成〉
図1は本発明の第1の実施形態の情報処理システム100内の詳細構成を示すブロック図である。
なお、この図1では、本実施形態の動作説明に必要な部分の周囲を中心に記載してあり、その他の情報処理システム100として既知の電源部などの各種の部分については省略してある。
情報処理システム100は、情報処理装置110と、回路情報生成装置120とを有して構成されている。
ここで、情報処理装置110は、アプリケーションプログラム実行中に通信手段を介して外部から得られた回路情報によりハードウェアの構成が動的に変更(再構築)され得るプロセッサを有するものである。
また、回路情報生成装置120は、情報処理装置110からの動作情報に応じてアルゴリズムを作成し、このアルゴリズムを論理合成して回路情報を生成し、この回路情報を前記情報処理装置110に送信するものである。
また、情報処理装置110は、以下のものを有する。MPU111は、情報処理装置110の各部を制御する制御手段である。通信部112は、情報処理装置110と回路情報生成装置120との通信を行う通信手段である。メモリ114は情報処理装置110が動作時に必要とする各種データが展開される一時記憶手段である。不揮発性メモリ115は、情報処理装置110において必要とされる各種データや各種プログラムを、電源オンオフにかかわらず保持する不揮発性の記憶手段である。プロセッサ116は、情報処理装置110としてアプリケーションプログラム実行中に、通信部112を介して外部(たとえば、回路情報生成装置120)から得られた回路情報により、ハードウェアの構成が動的に変更され得るプロセッサである。インタフェース117は、情報処理装置110として各種周辺装置との接続を行うための接続手段である。
なお、情報処理装置110は実際にアプリケーションプログラムを実動する装置であり、その動作はMPU111により制御され、書き換え可能ハードウェア部としてのプロセッサ116により実際に動作する。ここで、初期回路データは不揮発性メモリ115に格納されている。通信部112は、無線または有線などで他の装置と繋がれており、これにより回路情報生成装置120の通信部122から送信された回路情報を受信する。情報処理装置110では、受信された回路情報に基づき、書き換え可能ハードウェア部としてのプロセッサ116が再構築される。
また、回路情報生成装置120は、以下のものを有する。MPU121は、回路情報生成装置120の各部を制御する制御手段である。通信部122は、回路情報生成装置120と情報処理装置110との通信を行う通信手段である。メモリ124は回路情報生成装置120が動作時に必要とする各種データが展開される一時記憶手段である。不揮発性メモリ125は、回路情報生成装置120において必要とされる各種データや各種プログラムを、電源オンオフにかかわらず保持する不揮発性の記憶手段である。インタフェース127は、回路情報生成装置120として各種周辺装置との接続を行うための接続手段である。なお、回路情報生成装置120は、一般的なコンピュータの構成を有するものであってもよい。
〈第1の実施形態の動作状態〉
以下、第1の実施形態の情報処理システムの動作について、図2以下のフローチャートを参照して、詳細な動作説明を行う。
情報処理システム100の電源が投入されると、MPU111は、不揮発性メモリ115から初期回路データを読み込み、書き換え可能ハードウェア部としてのプロセッサ116を構築する(図2中のステップS201)。
構築された書き換え可能ハードウェア部としてのプロセッサ116は、MPU111の制御に従って初期動作を行い(図2中のステップS202)、その後、実動作を開始する(図2中のステップS203)。
そして、プロセッサ116は、実動作中(図2中のステップS203)に得られた情報(動作情報)を、通信部112を介して回路情報生成装置120に対して送信する(図2中のステップS204)。
ここで、情報処理装置110からの動作情報を受けた回路情報生成装置120側の動作を、図3のフローチャートにより説明する。
情報処理装置110から送信された動作情報を通信部122を介して受信(図3中のステップS301)した回路情報生成装置120では、動作情報に基づいてMPU121がメモリ124上でアルゴリズムの作成を行う(図3中のステップS302)。
ここで、MPU121は、アルゴリズムをハードウェア記述言語(以降HDL)で構築する。このため、MPU121は、そのHDLを論理合成して回路情報を生成する(図3中のステップS303)。このようにして生成された回路情報は、通信部122を介して、情報処理装置110に対して送信される(図3中のステップS304)。
なお、回路情報生成装置120側では、情報処理装置110から送信される動作情報を受信するたびに、アルゴリズムから回路情報を生成して情報処理装置110に対して送信する。
このようにして、情報処理装置110での動作情報に応じて回路情報生成装置120で生成された回路情報を、情報処理装置110は通信部112を介して受信する(図2中のステップS205)。
ここで、情報処理装置110では、受信した回路情報に基づいて、MPU111が、書き換え可能ハードウェア部としてのプロセッサ116を再構築する(図2中のステップS206)。
再構築されたプロセッサ116は、動作情報に応じて回路情報生成装置120で新たなアルゴリズムに基づいて生成された回路情報に応じたものであるため、すなわち、新たなアルゴリズムに基づいた新たな実動作(新規実動作)を行う(図2中のステップS207)。
なお、情報処理装置110は、新たな実動作(図2中のステップS207)を行った場合の動作情報を回路情報生成装置120に送信し(図2中のステップS204)、以上の動作(回路情報の受信、回路の再構築)を繰り返して、更に新たなアルゴリズムに基づいた新たな実動作(新規実動作)を行う(図2中のステップS207)動作を繰り返す。
図4は、MPU121が実行する図3中のアルゴリズムの生成(ステップS302)の詳細手順を示したものである。
すなわち、MPU121は、アルゴリズムの過程が何らかの繰り返し動作か、条件分岐動作かの判断を行い(図4中のステップS401)、繰り返し動作であるならば、繰り返しの条件の設定(図4中のステップS402)、繰り返し動作の設定(図4中のステップS403)、繰り返し動作のなかにさらに繰り返し動作がないかどうかの判定(図4中のステップS404)、等を行う。
これらは各々のステップで、あらかじめ準備してあるHDLの雛形ファイルに、上記ステップの動作が書き加えられる。
また、MPU121は、アルゴリズムの過程が何らかの繰り返し動作か、条件分岐動作かの判断を行い(図4中のステップS401)、条件分岐であった場合は、分岐の条件の設定(図4中のステップS405)、分岐後の動作の設定(図4中のステップS406)、分岐後にさらに分岐するかどうかの判定(図4中のステップS407)、等を行う。繰り返し動作と同様に、各々のステップで、あらかじめ準備してあるHDLの雛形ファイルに、上記ステップの動作が書き加えられる。
これらの工程後、さらに動作を行わせたいかどうかを判別し(図4中のステップS408)、さらに行わせたい場合はステップS401に戻り、行わせたくない場合はアルゴリズム作成を終了し、HDLを出力する。
図5は、回路情報生成装置120のMPU121における実際のアルゴリズム作成の具体例を示したものである。ここでは、例として、図4中の繰り返し条件の設定(図4中のステップS402)、繰り返し動作の設定(図4中のステップS403)の工程の詳細の一例を示す。
もし乗算を10000回行うという繰り返し動作であった場合(図5中のステップS501)、10000を数えることのできるカウンタを、HDLによるカウンタ表記の雛形に、10000を計測することが出来るように表記を書き加える(図5中のステップS502)。また乗算器の精度等を書き加え(図5中のステップS503)、カウンタを監視して、カウンタの出力する数のみ動作を行うHDLの表記の雛形に、上記のカウンタ、乗算器の入出力を書き加える(図5中のステップS504)。以上の工程により、あらたなアルゴリズムの動作を行うHDLが生成される(図5中のステップS505)。
以上の工程により、動作中の機器からの情報により、アルゴリズムレベルから機器の再構築を行うことが可能になる。これにより、従来のように想定の範囲での接続情報のみよって接続を変えることによってハードウェアを再構築していたシステムよりも、実際の動作環境により自発的にその動作を変更させることが可能になる。
すなわち、動作中の情報処理装置からの情報に適切に対応したアルゴリズムから生成された回路情報が、回路情報生成装置で生成されて情報処理装置に対して送られるため、接続情報に基づいた回路の接続に限定されず、動作中の情報処理装置からの情報に応じたアルゴリズムに適切に対応した再構築が可能になる。
〈第2の実施形態の動作〉
第2の実施形態では、上述した第1の実施形態でアルゴリズム作成においてHDLを出力していた部分に対し、ソフトウェアソース(例えばCまたはC++など)を出力するものである。
この場合、情報処理装置110から送信された動作情報を通信部122を介して受信(図6中のステップS601)した回路情報生成装置120では、動作情報に基づいてMPU121がメモリ124上でソフトウェアによるアルゴリズムの作成を行う(図6中のステップS602)。
そして、出力されたソフトウェアソースに対し、MPU121は高位合成を行いHDLを作成し、さらに、MPU121により論理合成を行ってHDLから回路情報を生成する(図6中のステップS603)。
このようにしてソフトウェアによってアルゴリズムからHDLへと変換されて生成された回路情報は、通信部122を介して、情報処理装置110に対して送信される(図6中のステップS604)。
なお、回路情報生成装置120側では、情報処理装置110から送信される動作情報を受信するたびに、ソフトウェアによってアルゴリズムから回路情報を生成して情報処理装置110に対して送信する。
図7は、第2実施形態において、MPU121がソフトウェアソースによりアルゴリズムを生成する場合(図6中のステップS602)の詳細を示したものである。HDLの場合と同様に繰り返し動作を例にとると、ソフトウェアソースがC言語で構成する場合、あらかじめ準備してあるC言語の、For Next文の雛形に、繰り返し条件、繰り返し動作などを書き加え(図7中のステップS702)、これによりあらたなアルゴリズムのソフトウェアソースが生成される(図7中のステップS703)。
この第2実施形態の例の場合は、ソフトウェアソースからの変更により、HDLソースからの第1実施形態の場合よりも、更に柔軟な変更に対応することが可能になる。このため、より適切な回路情報を生成することが可能になる。
また、情報処理装置110から動作情報が再び送られてきた場合には、ソフトウェアに対してフィードバックして新たなアルゴリズム、新たなHDL、新たな回路情報を生成するため、HDLの雛形を用意しておく必要がなくなる。
〈その他の実施形態〉
以上の情報処理システム100では、情報処理装置110と回路情報生成装置120とが1:1で対応した具体例を示したが、これに限定されるものではない。すなわち、複数の情報処理装置110と1つの回路情報生成装置120とで情報処理システム100を構成していてもよいし、複数M個の情報処理装置110と複数N個の回路情報生成装置120とで、M≠Nの状態で情報処理システム100を構成していてもよい。
本発明の実施形態の情報処理システムの電気的な構成を示す機能ブロック図である。 本発明の実施形態の情報処理システムの基本動作を示すフローチャートである。 本発明の実施形態の詳細動作を示すフローチャートである。 本発明の実施形態の詳細動作を示すフローチャートである。 本発明の実施形態の詳細動作を示すフローチャートである。 本発明の実施形態の詳細動作を示すフローチャートである。 本発明の実施形態の詳細動作を示すフローチャートである。
符号の説明
100 情報処理システム
110 情報処理装置
111 MPU
112 通信部
114 メモリ
115 不揮発性メモリ
116 プロセッサ(書き換え可能ハードウェア部)
117 インタフェース
120 回路情報生成装置
121 MPU
122 通信部
124 メモリ
125 不揮発性メモリ
127 インタフェース

Claims (4)

  1. 外部とデータを送受信する通信手段と、アプリケーションプログラム実行中に前記通信手段を介して外部から得られた回路情報によりハードウェアの構成が動的に変更され得るプロセッサとを有する情報処理装置と、
    前記情報処理装置からの動作情報に応じてアルゴリズムを作成し、このアルゴリズムを論理合成して回路情報を生成し、この回路情報を前記情報処理装置に送信する回路情報生成装置と、
    を有することを特徴とする情報処理システム。
  2. 前記回路情報生成装置は、前記情報処理装置からの動作情報に応じて、ハードウェア記述言語で構築されたアルゴリズムを作成する、
    ことを特徴とする請求項1記載の情報処理システム。
  3. 前記回路情報生成装置は、前記情報処理装置からの動作情報に応じて、ソフトウェアで構築されたアルゴリズムを作成する、
    ことを特徴とする請求項1記載の情報処理システム。
  4. 前記回路情報生成装置は、ソフトウェアで構築されたアルゴリズムを、高位合成を行ってから論理合成する、
    ことを特徴とする請求項3記載の情報処理システム。
JP2006112043A 2006-04-14 2006-04-14 情報処理システム Pending JP2007286811A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006112043A JP2007286811A (ja) 2006-04-14 2006-04-14 情報処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006112043A JP2007286811A (ja) 2006-04-14 2006-04-14 情報処理システム

Publications (1)

Publication Number Publication Date
JP2007286811A true JP2007286811A (ja) 2007-11-01

Family

ID=38758534

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006112043A Pending JP2007286811A (ja) 2006-04-14 2006-04-14 情報処理システム

Country Status (1)

Country Link
JP (1) JP2007286811A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010097390A (ja) * 2008-10-16 2010-04-30 Mitsubishi Electric Corp データ書換システム
CN105144112A (zh) * 2013-04-11 2015-12-09 甲骨文国际公司 Java堆使用的季节趋势、预报、异常检测和端点预测
US10248561B2 (en) 2015-06-18 2019-04-02 Oracle International Corporation Stateless detection of out-of-memory events in virtual machines
US10417111B2 (en) 2016-05-09 2019-09-17 Oracle International Corporation Correlation of stack segment intensity in emergent relationships
US10740358B2 (en) 2013-04-11 2020-08-11 Oracle International Corporation Knowledge-intensive data processing system

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010097390A (ja) * 2008-10-16 2010-04-30 Mitsubishi Electric Corp データ書換システム
US10740358B2 (en) 2013-04-11 2020-08-11 Oracle International Corporation Knowledge-intensive data processing system
CN105144112A (zh) * 2013-04-11 2015-12-09 甲骨文国际公司 Java堆使用的季节趋势、预报、异常检测和端点预测
US10205640B2 (en) 2013-04-11 2019-02-12 Oracle International Corporation Seasonal trending, forecasting, anomaly detection, and endpoint prediction of java heap usage
US10333798B2 (en) 2013-04-11 2019-06-25 Oracle International Corporation Seasonal trending, forecasting, anomaly detection, and endpoint prediction of thread intensity statistics
US11468098B2 (en) 2013-04-11 2022-10-11 Oracle International Corporation Knowledge-intensive data processing system
US10248561B2 (en) 2015-06-18 2019-04-02 Oracle International Corporation Stateless detection of out-of-memory events in virtual machines
US10467123B2 (en) 2016-05-09 2019-11-05 Oracle International Corporation Compression techniques for encoding stack trace information
US10534643B2 (en) 2016-05-09 2020-01-14 Oracle International Corporation Correlation of thread intensity and heap usage to identify heap-hoarding stack traces
US11093285B2 (en) 2016-05-09 2021-08-17 Oracle International Corporation Compression techniques for encoding stack trace information
US11144352B2 (en) 2016-05-09 2021-10-12 Oracle International Corporation Correlation of thread intensity and heap usage to identify heap-hoarding stack traces
US11327797B2 (en) 2016-05-09 2022-05-10 Oracle International Corporation Memory usage determination techniques
US10417111B2 (en) 2016-05-09 2019-09-17 Oracle International Corporation Correlation of stack segment intensity in emergent relationships
US11614969B2 (en) 2016-05-09 2023-03-28 Oracle International Corporation Compression techniques for encoding stack trace information
US11640320B2 (en) 2016-05-09 2023-05-02 Oracle International Corporation Correlation of thread intensity and heap usage to identify heap-hoarding stack traces

Similar Documents

Publication Publication Date Title
JP4490392B2 (ja) 初期化回路を自動構築するリコンフィグ可能な集積回路装置
US9811361B2 (en) Flexible allocation of I/O channels of a hardware component
JP2007286811A (ja) 情報処理システム
CN110647332A (zh) 基于容器云的软件部署方法和装置
US9929734B2 (en) Method for changing the configuration of a programmable logic module
CN110795353B (zh) 快应用的调试方法、装置、设备及存储介质
CN116861470B (zh) 加解密方法、装置、计算机可读存储介质和服务器
US20180210718A1 (en) Efficient compilation for link time optimization
US10318687B2 (en) Implementing a constant in FPGA code
WO2019171794A1 (ja) サポート装置およびサポートプログラム
US20220044121A1 (en) Training device, inferring device, training method, inferring method, and non-transitory computer readable medium
WO2015171855A1 (en) Analog behavior modeling within event-driven digital simulator background
JP2010039526A (ja) コンピュータプログラムおよびマスター計算機
EP2336883B1 (en) Programming system in multi-core environment, and method and program of the same
JP2007004301A (ja) コンピュータ、データ処理方法、プログラムおよび通信方法
JP4915779B2 (ja) 装置間の接続方式および接続装置
KR101249251B1 (ko) 플래시 메모리 컨트롤러
CN109634653B (zh) 一种基于组件化架构的资源配置方法及装置
Park et al. Non-invasive rapid and efficient firmware update for wireless sensor networks
JP2009075875A (ja) カウンタ回路、動的再構成回路およびループ処理制御方法
US9021234B2 (en) Indirect designation of physical configuration number as logical configuration number based on correlation information, within parallel computing
JP5267099B2 (ja) フィールドバス型電磁流量計
JPWO2019021898A1 (ja) 開発支援装置
KR20150000652A (ko) 운영 프로그램의 다운 로드 장치 및 방법
US20150378698A1 (en) Integrated compilation modes for data flow code generation