JP2005258767A - 情報処理システムの構成方法および半導体集積回路 - Google Patents

情報処理システムの構成方法および半導体集積回路 Download PDF

Info

Publication number
JP2005258767A
JP2005258767A JP2004068882A JP2004068882A JP2005258767A JP 2005258767 A JP2005258767 A JP 2005258767A JP 2004068882 A JP2004068882 A JP 2004068882A JP 2004068882 A JP2004068882 A JP 2004068882A JP 2005258767 A JP2005258767 A JP 2005258767A
Authority
JP
Japan
Prior art keywords
parameter
similarity
persistence
data dependency
programmable logic
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
JP2004068882A
Other languages
English (en)
Other versions
JP4471154B2 (ja
Inventor
Kazuhiro Okabayashi
和宏 岡林
Minoru 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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2004068882A priority Critical patent/JP4471154B2/ja
Priority to US11/071,465 priority patent/US7536289B2/en
Priority to CNB2005100537741A priority patent/CN100432981C/zh
Publication of JP2005258767A publication Critical patent/JP2005258767A/ja
Application granted granted Critical
Publication of JP4471154B2 publication Critical patent/JP4471154B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

【課題】 プログラマブルロジックを用いた半導体集積回路の面積は専用ハードウェアの面積に比べて大きくコストが大きい。
【解決手段】 複数個のアプリケーションの処理を、あるレベル毎にa)永続性、b)データ依存性、c)類似性のパラメータを与える。上記永続性が低く、データ依存性が高い処理をリコンフィギュラブルLSIで処理し、上記類似性の高い処理はハードウェアやプロセッサに処理を割り付ける方法。また、その方法によってシステムを実現する半導体集積回路は面積を最小にすることができ、コスト削減をすることが可能となる。
【選択図】 図24

Description

本発明は、半導体集積回路の製造後に回路構成を再構成することが可能であるプログラマブルロジックを使用してアプリケーションを実現する情報処理システムに関し、特にプログラマブルロジックを含む情報処理システムの構成方法に関する。また、情報処理システムの構成方法が適用された半導体集積回路に関する。
各種デジタル信号処理には、マイコン、DSP(Digital Signal Processor:デジタル信号処理プロセッサ)、特定用途向けの専用回路(ASIC(ApplicationSpecific Integrated Circuit)、記憶素子(メモリ)など様々な半導体集積回路が用いられる。近年、回路製造後にプログラムによって処理を変更できるプログラマブルロジック(マイコンやDSPなど)や、回路製造後に回路構成を自由に変更できるプログラマブルロジック、特に回路構成を高速に切り替えることができるリコンフィギュラブルロジック(Re-configurableLogic)が注目されている。
リコンフィギュラブルロジックは、規格や仕様の変更や回路不具合などがあった場合、半導体集積回路を新たに製造することなく、回路構成を自由に変更することが可能である。リコンフィギュラブルロジックの適用により、開発期間の短縮や半導体製造にかかるコストを低減することが可能となる。
従来技術として次のようなものがある。図1、図2に示すように、複数個の回路の全てに共通するものと、回路上で互いに共通せず回路構成領域を共有しない非排他的独立回路からなる部分を先行ベース回路とし、先行ベース回路をプログラマブル論理回路上に予め構成する第1の工程と、複数の回路について前記先行ベース回路との差分である回路情報により部分再構成して前記プログラマブル論理回路上に必要な機能回路を生成する第2の工程とを繰り返すものである(例えば、特許文献1参照)。
特開2001−51826号公報(第7−8頁、第1、6図)
しかしながら、一般にプログラマブルロジックは専用ハードウェアと比べて面積、消費電力が大きく、従来の技術では回路上で共通部分が少なく、非排他的独立回路が多い場合、回路を自由に切り替えて使う領域が小さくなる。従って集積した回路の面積利用効率が悪く、回路規模も大きくなり、プログラマブル論理回路の製造コストが高くなるという問題がある。
本発明は以上の問題を解決するものであり、回路規模を小さくし、プログラマブルロジックの面積利用効率を高め、製造コストを下げることを目的とする。
上記問題点を解決するために、第1の発明の情報処理システムの構成方法は、
1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
前記入力されたモデルに対する永続性パラメータを入力する工程と、
前記アプリケーションのモデルと前記永続性パラメータを入力情報とし、前記永続性パラメータを境界条件と比較する工程と、
前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
とを有するものである。
永続性パラメータとは、処理が将来に渡って変更する必要がないのか、あるいは頻繁に変更する必要があるかを示す指標のことである。
上記の第1の情報処理システムの構成方法に対応する半導体集積回路は、永続性パラメータの低い処理をプログラマブルロジックで実現する回路部分と、永続性パラメータの高い処理を専用ハードウェアで実現する回路部分とからなるものである。
上記構成によれば、アプリケーションを構成するモジュール毎にその処理に対する永続性パラメータを入力条件として判断し、今後変更の必要がないモジュールの場合には専用回路に割り当てる。これにより、最小の回路面積を実現する。一方、変更の必要性が高いモジュールについては、プログラマブルロジック(マイコン、DSP、リコンフィギュラブルLSIなど)に割り当てる。これにより、変更に対しては、プログラムを書き換えることにより、柔軟に対応することができる。結果として、プログラマブルロジックについてその回路規模を軽減し、面積利用効率を高めながら、製造コストを低減することができる。
第2の発明の情報処理システムの構成方法は、
1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
前記入力されたモデルに対するデータ依存性パラメータを入力する工程と、
前記アプリケーションのモデルと前記データ依存性パラメータを入力情報とし、前記データ依存性パラメータを境界条件と比較する工程と、
前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
とを有するものである。
データ依存性パラメータとは、処理するデータ量が一定であるのか、あるいは処理すべきデータ量が異なるかを示す指標のことである。
上記の第2の情報処理システムの構成方法に対応する半導体集積回路は、データ依存性パラメータの高い処理をプログラマブルロジックで実現する回路部分と、データ依存性パラメータの低い処理を専用ハードウェアで実現する回路部分とからなるものである。
上記構成によれば、アプリケーションを構成するモジュール毎にその処理に対するデータ依存性パラメータを入力条件として判断し、処理データ量が一定であるモジュールの場合には専用回路に割り当てる。これにより、最小の回路面積で消費電力の小さい回路を実現する。一方、データによって処理量が異なる可能性が高いモジュールについては、プログラマブルロジックを割り当てる。これにより、変更に対しては、データ量に応じてプログラムを書き換えるだけでプログラマブルロジックの回路構成を最適な構成にし、柔軟に対応することができる。データ依存性のある処理はプログラマブルロジックで構成し、データ依存性のない処理は専用ハードウェアで構成することによって、半導体集積回路の面積を最小にし、コストを低減できる。また、処理に合わせて最適な回路を構成するので、処理周波数を下げ、消費電力を削減できる。
第3の発明の情報処理システムの構成方法は、
1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
前記入力されたモデルに対する類似性パラメータを入力する工程と、
前記アプリケーションのモデルと前記類似性パラメータを入力情報とし、前記類似性パラメータを境界条件と比較する工程と、
前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
とを有するものである。
類似性パラメータとは、モジュール間で似通った処理があるかどうかを示す指標のことである。
上記の第3の情報処理システムの構成方法に対応する半導体集積回路は、類似性パラメータの低い処理をプログラマブルロジックで実現する回路部分と、類似性パラメータの高い処理を専用ハードウェアで実現する回路部分とからなるものである。
上記構成によれば、アプリケーションを構成するモジュール毎にその処理に対する類似性パラメータを入力条件として判断し、似通った処理を伴うモジュールの場合には専用回路に割り当てる。これにより、最小の回路面積で消費電力の小さい回路を実現する。一方、類似性の低いモジュールについては、プログラマブルロジックを割り当てる。これにより、変更に対しては、プログラムを書き換えるだけでプログラマブルロジックの回路構成を最適な構成にし、柔軟に対応することができる。共用化の可能なモジュールを専用回路で実現し、共用化の難しいモジュールをプログラマブルロジックで実現することにより、半導体集積回路の面積を最小にし、コストを低減できる。
第4の発明の情報処理システムの構成方法は、
1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
前記入力されたモデルに対して永続性パラメータとデータ依存性パラメータを入力する工程と、
前記永続性パラメータおよび前記データ依存性パラメータに対してそれぞれ重みを付ける工程と、
前記アプリケーションのモデルと前記永続性パラメータおよび前記データ依存性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
とを有するものである。
上記構成によれば、モジュール毎の永続性パラメータとデータ依存性パラメータとを入力条件として判断し、今後変更の必要がなくデータ依存性が低いモジュールの場合には専用回路に割り当てる。これにより、最小の回路面積を実現する。一方、変更の必要性が高くデータ依存性が高いモジュールについては、プログラマブルロジックに割り当てる。これにより、変更に対しては、プログラムを書き換えることにより、柔軟に対応することができる。結果として、プログラマブルロジックについてその回路規模を軽減し、面積利用効率を高めながら、製造コストを低減することができる。
第5の発明の情報処理システムの構成方法は、
1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
前記入力されたモデルに対して永続性パラメータと類似性パラメータを入力する工程と、
前記永続性パラメータおよび前記類似性パラメータに対してそれぞれ重みを付ける工程と、
前記アプリケーションのモデルと前記永続性パラメータおよび前記類似性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
とを有するものである。
上記構成によれば、モジュール毎の永続性パラメータと類似性パラメータとを入力条件として判断し、今後変更の必要がなく類似性が高いモジュールの場合には専用回路に割り当てる。これにより、最小の回路面積を実現する。一方、変更の必要性が高く類似性が低いモジュールについては、プログラマブルロジックに割り当てる。これにより、変更に対しては、プログラムを書き換えることにより、柔軟に対応することができる。結果として、プログラマブルロジックについてその回路規模を軽減し、面積利用効率を高めながら、製造コストを低減することができる。
第6の発明の情報処理システムの構成方法は、
1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
前記入力されたモデルに対してデータ依存性パラメータと類似性パラメータを入力する工程と、
前記データ依存性パラメータおよび前記類似性パラメータに対してそれぞれ重みを付ける工程と、
前記アプリケーションのモデルと前記データ依存性パラメータおよび前記類似性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
とを有するものである。
上記構成によれば、処理に対するデータ依存性パラメータと類似性パラメータとを入力条件として判断し、処理がデータ量に依存せず類似性が高いモジュールの場合には専用回路に割り当てる。これにより、最小の回路面積を実現し、データ依存が高く類似性が低いモジュールについては、プログラマブルロジックに割り当てる。これにより、変更に対しては、プログラムを書き換えることにより、柔軟に対応することができる。結果として、プログラマブルロジックについてその回路規模を軽減し、面積利用効率を高めながら、製造コストを低減することができる。
第7の発明の情報処理システムの構成方法は、
1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
前記入力されたモデルに対して永続性パラメータとデータ依存性パラメータと類似性パラメータを入力する工程と、
前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータに対してそれぞれ重みを付ける工程と、
前記アプリケーションのモデルと前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
とを有するものである。
上記の第7の情報処理システムの構成方法に対応する半導体集積回路は、永続性パラメータとデータ依存性パラメータと類似性パラメータ、および、永続性パラメータの重みとデータ依存性パラメータの重みと類似性パラメータの重みに従って比較した結果を、プログラマブルロジックで実現する回路部分と、専用ハードウェアで実現する回路部分とからなるものである。
上記構成によれば、モジュール毎の永続性パラメータとデータ依存性パラメータと類似性パラメータとを入力条件として判断し、処理が変更になる可能性が低くデータ量に依存せず類似性が高いモジュールの場合には専用回路に割り当てる。これにより、最小の回路面積を実現する。一方、変更の可能性が高くデータ依存が高く類似性が低いモジュールについては、プログラマブルロジックに割り当てる。これにより、変更に対しては、プログラムを書き換えることにより、柔軟に対応することができる。結果として、プログラマブルロジックについてその回路規模を軽減し、面積利用効率を高めながら、製造コストを低減することができる。
第8の発明の情報処理システムの構成方法は、
1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
前記入力されたモデルに対して永続性パラメータを入力する工程と、
前記入力されたモデルに対してデータ依存性パラメータを入力する工程と、
前記入力されたモデルに対して類似性パラメータを入力する工程と、
前記アプリケーションのモデルと前記永続性パラメータを入力情報として境界条件と比較選択し、前記永続性パラメータによる比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を前記データ依存性パラメータに基づく比較工程の入力とする工程と、
前記データ依存性パラメータと前記比較結果とを入力情報として境界条件と比較選択し、前記データ依存性パラメータによる比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を前記類似性パラメータに基づく比較工程の入力とする工程と、
前記類似性パラメータと前記比較結果を入力情報として境界条件と比較選択する工程と、
前記類似性パラメータによる比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割当てることを情報として出力する工程
とを有するものである。
これは、上記の第7の発明と同様に永続性パラメータとデータ依存性パラメータと類似性パラメータの3つのパラメータを用いるが、各パラメータの重みはなく、永続性パラメータによる判断、次いでデータ依存性パラメータによる判断、次いで類似性パラメータによる判断というように複数段階にわたって順次に判断を行うものとなっている。
上記の第8の情報処理システムの構成方法に対応する半導体集積回路は、永続性パラメータとデータ依存性パラメータと類似性パラメータを比較した結果を、プログラマブルロジックで実現する回路部分と、専用ハードウェアで実現する回路部分とからなるものである。
この構成によっても、処理が変更になる可能性が低くデータ量に依存せず類似性が高いモジュールの場合には専用回路に割り当てる。これにより、最小の回路面積を実現する。一方、変更の可能性が高くデータ依存が高く類似性が低いモジュールについては、プログラマブルロジックに割り当てる。これにより、変更に対しては、プログラムを書き換えることにより、柔軟に対応することができる。結果として、プログラマブルロジックについてその回路規模を軽減し、面積利用効率を高めながら、製造コストを低減することができる。
第9の発明の情報処理システムの構成方法は、
1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
全ての前記アプリケーションに対してある処理レベル毎にモデル化したC言語プログラム内部に永続性パラメータとデータ依存性パラメータと類似性パラメータとを記述する工程と、
前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータに対してそれぞれ重みを付ける工程と、
前記アプリケーションのモデルと前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
とを有するものである。
上記の第9の情報処理システムの構成方法に対応する半導体集積回路は、永続性パラメータとデータ依存性パラメータと類似性パラメータ、および、永続性パラメータの重みとデータ依存性パラメータの重みと類似性パラメータの重みに従って比較した結果を、プログラマブルロジックで実現する回路部分と、専用ハードウェアで実現する回路部分とからなるものである。
上記構成によれば、C言語プログラム内部に永続性パラメータとデータ依存性パラメータと類似性パラメータとを記述することによって、処理の効率を高めることができる。
第10の発明の情報処理システムの構成方法は、
1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
全ての前記アプリケーションに対してある処理レベル毎にモデル化したハードウェア記述言語内部に永続性パラメータとデータ依存性パラメータと類似性パラメータとを記述する工程と、
前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータに対してそれぞれ重みを付ける工程と、
前記アプリケーションのモデルと前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
とを有するものである。
上記構成によれば、ハードウェア記述言語内部に永続性パラメータとデータ依存性パラメータと類似性パラメータとを記述することによって、処理の効率を高めることができる。
第11の発明の情報処理システムの構成方法は、
1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
全ての前記アプリケーションに対してある処理レベル毎にモデル化したC言語プログラムまたはハードウェア記述言語内部に永続性パラメータとデータ依存性パラメータとを記述する工程と、
前記モデルを入力として類似性パラメータを自動で抽出する工程と、
前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータに対してそれぞれ重みを付ける工程と、
前記の自動抽出した類似性パラメータと前記モデル内部に記述した永続性パラメータと依存性パラメータと前記パラメータの重みを入力情報として比較選択する工程と、
前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
とを有するものである。
上記の第11の情報処理システムの構成方法に対応する半導体集積回路は、永続性パラメータとデータ依存性パラメータと類似性パラメータ、および、永続性パラメータの重みとデータ依存性パラメータの重みと類似性パラメータの重みに従って比較した結果を、プログラマブルロジックで実現する回路部分と、専用ハードウェアで実現する回路部分とからなるものである。
C言語またはハードウェア記述言語においてモジュールレベルで回路の共通性を類似性パラメータとして抽出する。類似性パラメータの記述は省略してよく、その分、処理の効率を高めることができる。
第12の発明の情報処理システムの構成方法は、
1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
全ての前記アプリケーションに対してある処理レベル毎にモデル化したC言語プログラム内部に永続性パラメータとデータ依存性パラメータと類似性パラメータとを記述する工程と、
前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータに対してそれぞれ重みを付ける工程と、
前記アプリケーションのモデルと前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
前記比較結果に基づいて一方をプログラマブルロジックに割り当て、プログラマブルロジックの回路形成情報を出力する工程と、
他方を専用ハードウェアに割り当て専用回路の回路形成情報を出力する工程
とを有するものである。
上記の第12の情報処理システムの構成方法に対応する半導体集積回路は、永続性パラメータとデータ依存性パラメータと類似性パラメータ、および、永続性パラメータの重みとデータ依存性パラメータの重みと類似性パラメータの重みに従って得られた結果を、プログラマブルロジックで実現する回路部分と、専用ハードウェアで実現する回路部分とからなるものである。
上記構成によれば、上記のようにプログラマブルロジックについてその回路規模を軽減するとともに面積利用効率を高めながら製造コストを低減するための、プログラマブルロジックの回路形成情報と専用回路の回路形成情報とを得ることができる。
本発明によれば、上記した構成及び方法によって面積効率を高め、最小のチップ面積でフレキシブルにアプリケーション処理を実施し、製造コストを下げることができる。
以下、本発明にかかわる情報処理システムの構成方法および半導体集積回路の実施の形態を図面に基づいて詳細に説明する。
(実施の形態1)
以下、本発明の実施の形態1における情報処理システムの構成方法について図面を用いて説明する。
図3は本発明の実施の形態1の情報処理システムの構成方法のフローチャートである。図4はアプリケーションの一例を示したものである。
ステップ310では、設計者があるアプリケーションを図や言語で記述する。例えば、C言語のような高級言語やレジスタ・トランスファ・レベル(RTL)を用いて複数の単位(モジュール)で記述する。
アプリケーションの一例として、CDMA(Code Division MultipleAccess:符号分割多元接続)通信における復調処理を図4に示す。
復調処理400は逆拡散401から誤り訂正405に至る5つのモジュールで構成され、この単位毎にある言語で記述することとなる。記述する単位はどのようなものであってもよい。
ステップ320では、上記したモジュール毎に各々の処理が将来に渡って変更する必要がないのか、あるいは頻繁に変更する必要があるかを示す指標としての永続性パラメータを入力する。
この入力は以下の態様でなされる。すなわち、図5に示すように、上記5つのモジュール名とそのモジュールの永続性パラメータを対応づけたファイル500を設計者が作成する。例えば、永続性が低い方を「10」とし、永続性が高い方を「1」とする。ファイル500に書かれた定義部501の表記「module401;ETNL=1」はモジュール401(本例では逆拡散を示す)の永続性パラメータが「1」であることを示し、これは、逆拡散の処理を変更する必要性が低いことを意味する。また、定義部505の表記「module405;ETNL=10」はモジュール405(本例では誤り訂正を示す)の永続性パラメータが「10」であることを示し、これは、誤り訂正の処理を変更する必要性が高いことを意味する。このような記述をアプリケーション400を構成する全てのモジュールについて行う。なお、永続性パラメータの表記は本例に限ったものではない。
ステップ330では、ステップ320で定義した永続性に関わる情報を基に、ステップ310で記述したモジュール401〜405の処理をプログラマブルロジック(例えば、マイコンやDSPやリコンフィギュラブルLSIなど)で処理させるべきか、専用回路で処理させるべきかの判断を行う。まず、ファイル500の定義部に記述された永続性パラメータ(ETNL)が予め決められた数値より大きいか小さいかの判定を行う。例えば、ETNLが「5」以上であればプログラマブルロジックに割り当て、「5」未満であれば専用回路に割り当てるという規則を予め定義している場合、モジュール401は専用回路で処理し、また、モジュール405はプログラマブルロジックで処理することが決定される。
次いで、アプリケーション400をモジュール毎に分解し、それぞれのモジュールの記述を、上記で決定した内容を基に後述のステップ340とステップ350とに分配する。本実施の形態の場合、モジュール401,402,404はステップ340に分配され、また、モジュール403,405はステップ350に分配されることとなる。
ステップ340では、ステップ330で割り当てられたモジュールを専用回路で実現するための設計を行う。例えば、モジュール401,402,404のRTL記述を基に論理合成等の方法を用いて回路を完成する。
ステップ350では、ステップ330で割り当てられたモジュールをプログラマブルロジックで実現する設計を行う。例えば、モジュール403,405の処理内容を基に特定のプログラマブルロジックが解釈できるプログラムを設計者が作成する。
上述したような手続きによれば、アプリケーションを構成するモジュール毎にその処理に対する変更の必要性を入力条件として適切な回路に割り当てることができる。換言すれば、今後変更の必要がないモジュールの場合には専用回路に割り当てることにより、最小の回路面積を実現できる。一方、変更の必要性が高いモジュールについては、マイコン、DSP、リコンフィギュラブルLSIなどのプログラマブルロジックでプログラムを書き換えるだけで、変更に対して柔軟に対応することができる。以上によって面積を削減し、回路を製造し直す必要がないため、製造コストを低減することができる。
(実施の形態2)
以下、本発明の実施の形態2における情報処理システムの構成方法について図面を用いて説明する。
図6は本発明の実施の形態2の情報処理システムの構成方法のフローチャートである。図7はアプリケーションの一例を示したものである。
ステップ610では、設計者があるアプリケーションを図や言語で記述する。例えば、C言語のような高級言語やレジスタ・トランスファ・レベル(RTL)を用いて複数の単位(モジュール)で記述する。アプリケーションの一例として、無線LAN(Local Area Network)通信における復調処理を図7に示す。
復調処理700は自動周波数制御(Automatic FrequencyControl)701からビタビ復号707に至る7つのモジュールで構成され、この単位毎にある言語で記述することとなる。記述する単位はどのようなものであってもよい。
ステップ620では、上記したモジュール毎に各々が処理するデータ量が一定であるのか、あるいは処理すべきデータ量が異なるかを示す指標としてのデータ依存性パラメータを入力する。
この入力は以下の態様でなされる。すなわち、図8に示すように、上記7つのモジュール名とそのモジュールのデータ依存性パラメータを対応づけたファイル800を設計者が作成する。例えば、データ依存性が高い方を「10」とし、低い方を「1」とする。ファイル800に書かれた定義部801の表記「module704;DATA=1」はモジュール704(本例ではFFT(Fast Fourier Transformation:高速フーリエ変換)を示す)のデータ依存性パラメータが「1」であることを示し、これは、FFTの処理量は転送レートに関係なく常に一定である(データ依存性がない)ことを意味する。また、定義部805の表記「module705;DATA=10」はモジュール705(本例ではサブキャリア復調を示す)のデータ依存性パラメータが「10」であることを示し、これは、サブキャリア復調の処理は、変調方式(BPSKやQPSK、16QAM、64QAM)によってデータ処理量が異なる可能性が高い(データ依存性が高い)ことを意味する。このような記述をアプリケーション700を構成する全てのモジュールについて行う。なお、データ依存性パラメータの表記は本例に限ったものではない。
ステップ630では、ステップ620で定義したデータ依存性に関わる情報を基に、ステップ610で記述したモジュール701〜707の処理をプログラマブルロジック(例えば、マイコンやDSPやリコンフィギュラブルLSIなど)で処理させるべきか、専用回路で処理させるべきかの判断を行う。まず、ファイル800の定義部に記述されたデータ依存性パラメータ(DATA)が予め決められた数値より大きいか小さいかの判定を行う。例えば、DATAが「5」以上であればプログラマブルロジックに割り当て、「5」未満であれば専用回路に割り当てるという規則を予め定義している場合、モジュール704は専用回路で処理し、また、モジュール705はプログラマブルロジックで処理することが決定される。
次いで、アプリケーション700をモジュール毎に分解し、それぞれのモジュールの記述を、上記で決定した内容を基に後述のステップ640とステップ650とに分配する。本実施の形態の場合、モジュール701,702,703,704はステップ640に分配され、また、モジュール705,706,707はステップ650に分配されることとなる。
ステップ640では、ステップ630で割り当てられたモジュールを専用回路で実現するための設計を行う。例えば、モジュール701,702,703,704のRTL記述を基に論理合成等の方法を用いて回路を完成する。
ステップ650では、ステップ630で割り当てられたモジュールをプログラマブルロジックで実現する設計を行う。例えば、モジュール705,706,707の処理内容を基に特定のプログラマブルロジックが解釈できるプログラムを設計者が作成する。
上述したような手続きによれば、アプリケーションを構成するモジュール毎にその処理に対するデータ依存性を入力条件として適切な回路に割り当てることができる。換言すれば、モジュールの処理データ量が一定である場合には、最適な回路構成を専用回路で構成することにより、最小の回路面積で消費電力の小さい回路を実現できる。一方、データによって処理量が異なる可能性が高いモジュールについては、データ量に応じてプログラマブルロジックの回路構成をプログラムの書き換えだけで最適にすることにより、変更に対して柔軟に対応できる。
従来の設計は、最も処理のきびしい場合に合わせて設計しているため、面積、消費電力が大きくなっていたが、このようにデータ依存性のある処理はプログラマブルロジックで構成する一方、データ依存性のない処理を専用ハードウェアで構成することによって、半導体集積回路の面積を最小にし、コストを低減できる。また、処理に合わせて最適な回路を構成することができ、処理周波数を下げ、消費電力を削減できる。
(実施の形態3)
以下、本発明の実施の形態3における情報処理システムの構成方法について図面を用いて説明する。
図9は本発明の実施の形態3の情報処理システムの構成方法のフローチャートである。図10はアプリケーションの一例を示したものである。
ステップ910では、設計者があるアプリケーションを図や言語で記述する。例えば、C言語のような高級言語やレジスタ・トランスファ・レベル(RTL)を用いて複数の単位(モジュール)で記述する。アプリケーションの一例として、CDMA通信の復調処理(1000)と無線LAN通信における復調処理(1010)を図10に示す。CDMA通信の復調処理1000は、逆拡散1001からビタビ復号1005までの5つのモジュールで構成され、復調処理1010は自動周波数制御(Automatic Frequency Control)1011からビタビ復号1017に至る7つのモジュールで構成され、この単位毎にある言語で記述することとなる。記述する単位はどのようなものであってもよい。
ステップ920では、上記したモジュール間で似通った処理があるかどうかを示す指標としての類似性パラメータを入力する。
この入力は以下の態様でなされる。すなわち、図11に示すように、上記12個のモジュール名とそのモジュールの類似性パラメータを対応づけたファイル1100を設計者が作成する。例えば、複数のモジュール間で似通った処理が多い方を「10」とし、似通った処理が少ない方を「1」とする。ファイル1100に書かれた定義部1105の表記「module1005;COMMON=10」はモジュール1005(本例ではCDMA通信のビタビ復号を示す)の類似性パラメータが「10」であることを示す。また、ファイル1100に書かれた定義部1112の表記「module1017;COMMON=10」はモジュール1017(本例では無線LAN通信のビタビ復号を示す)の類似性パラメータが「10」であることを示す。これは、CDMA通信のビタビ復号と無線LAN通信のビタビ復号は処理が似通っていることを意味している。また、定義部1101の表記「module1001;COMMON=1」はモジュール1001(本例ではCDMA通信の逆拡散を示す)の類似性パラメータが「1」であることを示し、これは、逆拡散の処理は、CDMA通信1000と無線LAN通信1010内に似通ったモジュールがないことを意味している。このような記述をアプリケーション1000とアプリケーション1010を構成する全てのモジュールについて行う。類似性パラメータの定義は少なくとも2つ以上のモジュール間で似通った処理かどうかを定義することとなる。なお、類似性パラメータの表記は本例に限ったものではない。
ステップ930では、ステップ920で定義した類似性に関わる情報を基に、ステップ910で記述したモジュール1001〜1005とモジュール1011〜1017の処理をプログラマブルロジック(例えば、マイコンやDSPやリコンフィギュラブルLSIなど)で処理させるべきか、専用回路で処理させるべきかの判断を行う。まず、ファイル1100の定義部に記述された類似性パラメータ(COMMON)が予め決められた数値より大きいか小さいかの判定を行う。例えば、COMMONが「5」より大きければ専用回路に割り当て、「5」以下であればプログラマブルロジックに割り当てるという規則を予め定義している場合、モジュール1005とモジュール1017は専用回路で処理し、また、モジュール1001はプログラマブルロジックで処理することが決定される。
次いで、アプリケーション1000とアプリケーション1010をモジュール毎に分解し、それぞれのモジュールの記述を、上記で決定した内容を基に後述のステップ940とステップ950とに分配する。本実施の形態の場合、モジュール1003,1005,1015,1017はステップ940に分配され、また、モジュール1001,1002,1004,1011,1012,1013,1014,1016はステップ950に分配されることとなる。
ステップ940では、ステップ930で割り当てられたモジュール全てを似通った部分を共用化する構成で実現するための専用回路の設計を行う。例えば、モジュール1003,1005,1015,1017のRTL記述を基に論理合成等の方法を用いて回路を完成する。
ステップ950では、ステップ930で割り当てられたモジュールをプログラマブルロジックで実現する設計を行う。例えば、モジュール1001,1002,1004,1011,1012,1013,1014,1016の処理内容を基に特定のプログラマブルロジックが解釈できるプログラムを設計者が作成する。
上述したような手続きによれば、アプリケーションを構成するモジュール間毎の類似性を入力条件として適切な回路に割り当てることができる。換言すれば、モジュール間で似通った処理がある場合は、回路の共用化を実施し、最適な回路構成を専用回路で構成することにより、最小の回路面積で消費電力の小さい回路を実現できる。一方、類似性の低いモジュールについては、回路の共用が困難である代わりに、プログラマブルロジックの回路構成をプログラムの書き換えだけで最適にすることにより、変更に対して柔軟に対応できる。
共用化の可能なモジュールを専用回路で実現し、共用化の難しいモジュールをプログラマブルロジックで実現することにより回路面積を最小にすることが可能となり、製造コストを低減することができる。
(実施の形態4)
以下、本発明の実施の形態4における情報処理システムの構成方法について図面を用いて説明する。
図12は本発明の実施の形態4の情報処理システムの構成方法のフローチャートである。図4はアプリケーションの一例を示したものである。
ステップ1210では、設計者があるアプリケーションを図や言語で記述する。例えば、C言語のような高級言語やレジスタ・トランスファ・レベル(RTL)を用いて複数の単位(モジュール)で記述する。アプリケーションの一例として、CDMA通信における復調処理を図4に示す。
復調処理400は逆拡散401から誤り訂正405に至る5つのモジュールで構成され、この単位毎にある言語で記述することとなる。記述する単位はどのようなものであってもよい。
ステップ1220では、上記したモジュール毎に永続性パラメータとデータ依存性パラメータを入力する。この入力は以下の態様でなされる。すなわち、図13に示すように、上記5つのモジュール名とそのモジュールの永続性パラメータとデータ依存性パラメータを対応づけたファイル1300を設計者が作成する。ファイル1300に書かれた定義部1301の表記「module401;ETNL=1 , DATA=3」はモジュール401(本例では逆拡散を示す)の永続性パラメータが「1」、データ依存性パラメータが「3」であることを示し、これは、逆拡散の処理を変更する必要性が低く、データ依存によって処理量が大幅に変わることがないことを意味する。また、定義部1305の表記「module405;ETNL=10, DATA=7」はモジュール405(本例では誤り訂正を示す)の永続性パラメータが「10」、データ依存性パラメータが「7」であることを示し、これは、誤り訂正の処理を変更する必要性が高く、データ依存によって処理量が大幅に変わることを意味する。このような記述をアプリケーション400を構成する全てのモジュールについて行う。なお、永続性パラメータ、データ依存性パラメータの表記は本例に限ったものではない。
ステップ1230では、上記した永続性パラメータとデータ依存性パラメータの重みを定義する。例として図14のファイル1400に示すように、定義部1401の表記「WEIGHT_ETNL : 0.8」は永続性パラメータの重みが「0.8」であることを示している。定義部1402の表記「WEIGHT_DATA: 0.2」はデータ依存性パラメータの重みが「0.2」であることを示している。なお、永続性パラメータの重み、データ依存性パラメータの重みはこれに限ったものではない。
ステップ1240では、ステップ1220で定義した永続性に関わる情報とデータ依存性に関わる情報とステップ1230で定義した永続性の重みとデータ依存性の重みを基に、ステップ1210で記述したモジュール401〜405の処理をプログラマブルロジック(例えば、マイコンやDSPやリコンフィギュラブルLSIなど)で処理させるべきか、専用回路で処理させるべきかの判断を行う。まず、ファイル1300の定義部に記述された永続性パラメータ(ETNL)とデータ依存性パラメータ(DATA)およびファイル1400の定義部に記述された永続性の重み(WEIGHT_ETNL)とデータ依存性の重み(WEIGHT_DATA)を要素として、予め決められた計算式に従って計算を行い、その計算の結果が予め決められた数値より大きいか小さいかの判定を行う。
例えば、計算式が
(ETNL x WEIGHT_ETNL + DATA x WEIGHT_DATA)
であるとする。これは、永続性とデータ依存性を足したものとなっている。
例えば、計算結果が「5」以上であればプログラマブルロジックに割り当て、「5」未満であれば専用回路に割り当てるという規則を予め定義している場合、モジュール401は計算結果が「1.4」となるので専用回路で処理し、また、モジュール405は計算結果が「9.4」になるのでプログラマブルロジックで処理することが決定される。なお、計算式はこれに限ったものではない。本例の計算結果を図15に示す。
次いで、アプリケーション400をモジュール毎に分解し、それぞれのモジュールの記述を、上記した計算結果を基に後述のステップ1250とステップ1260とに分配する。本実施の形態の場合、モジュール401,402,404はステップ1250に分配され、また、モジュール403,405はステップ1260に分配されることとなる。
ステップ1250では、ステップ1240で割り当てられたモジュールを専用回路で実現するための設計を行う。例えば、モジュール401,402,404のRTL記述を基に論理合成等の方法を用いて回路を完成する。
ステップ1260では、ステップ1240で割り当てられたモジュールをプログラマブルロジックで実現する設計を行う。例えば、モジュール403,405の処理内容を基に特定のプログラマブルロジックが解釈できるプログラムを設計者が作成する。
上述したような手続きによれば、アプリケーションを構成するモジュール毎にその処理に対する変更の必要性とデータ依存性を入力条件として適切な回路に割り当てることができる。換言すれば、モジュールの処理に今後変更の必要がなくデータ依存性が低い場合には専用回路に割り当てることにより、最小の回路面積を実現できる。一方、変更の必要性が高くかつデータ依存性が高いモジュールについては、マイコン、DSP、リコンフィギュラブルLSIなどのプログラマブルロジックでプログラムを書き換えるだけで、変更に対して柔軟に対応することができる。以上によって面積を削減し、回路を製造し直す必要がないため、製造コストを低減することができる。
(実施の形態5)
以下、本発明の実施の形態5における情報処理システムの構成方法について図面を用いて説明する。
図16は本発明の実施の形態5の情報処理システムの構成方法のフローチャートである。図10はアプリケーションの一例を示したものである。
ステップ1610では、設計者があるアプリケーションを図や言語で記述する。例えば、C言語のような高級言語やレジスタ・トランスファ・レベル(RTL)を用いて複数の単位(モジュール)で記述する。アプリケーションの一例として、CDMA通信の復調処理(1000)と無線LAN通信における復調処理(1010)を図10に示す。CDMA通信の復調処理1000は、逆拡散1001からビタビ復号1005までの5つのモジュールで構成され、復調処理1010は自動周波数制御(AFC)1011からビタビ復号1017に至る7つのモジュールで構成され、この単位毎にある言語で記述することとなる。記述する単位はどのようなものであってもよい。
ステップ1620では、上記したモジュール毎に永続性パラメータと類似性パラメータを入力する。この入力は以下の態様でなされる。すなわち、図17に示すように、上記アプリケーションを構成する各モジュール名とそのモジュールの永続性パラメータと類似性パラメータを対応づけたファイル1700を設計者が作成する。
ファイル1700に書かれた定義部1701の表記「module1001;ETNL=1, COMMON=1」はモジュール1001(本例では逆拡散を示す)の永続性パラメータが「1」、類似性パラメータが「1」であることを示している。
また、定義部1709の表記「module1014;ETNL=1 , COMMON=2」はモジュール1014(本例ではFFTを示す)の永続性パラメータが「1」、類似性パラメータが「2」であることを示している。このような記述をアプリケーション1000,1010を構成する全てのモジュールについて行う。なお、永続性パラメータ、類似性パラメータの表記は本例に限ったものではない。
ステップ1630では、上記した永続性パラメータと類似性パラメータの重みを定義する。例として図18のファイル1800に示すように、定義部1801の表記「WEIGHT_ETNL : 0.6」は永続性パラメータの重みが「0.6」であることを示している。定義部1802の表記「WEIGHT_COMMON: 0.4」は類似性パラメータの重みが「0.4」であることを示している。なお、永続性パラメータの重み、類似性パラメータの重みはこれに限ったものではない。
ステップ1640では、ステップ1620で定義した永続性に関わる情報と類似性に関わる情報とステップ1630で定義した永続性の重みと類似性の重みを基に、ステップ1610で記述したモジュール1001〜1017の処理をプログラマブルロジック(例えば、マイコンやDSPやリコンフィギュラブルLSIなど)で処理させるべきか、専用回路で処理させるべきかの判断を行う。まず、ファイル1700の定義部に記述された永続性パラメータ(ETNL)と類似性パラメータ(COMMON)およびファイル1800の定義部に記述された永続性の重み(WEIGHT_ETNL)と類似性の重み(WEIGHT_COMMON)を要素として、予め決められた計算式に従って計算を行い、その計算の結果が予め決められた数値より大きいか小さいかの判定を行う。
例えば、計算式が
(ETNL x WEIGHT_ETNL - COMMON xWEIGHT_COMMON)
であるとする。これは、永続性から類似性を引いたものとなっている。
例えば、計算結果が「0」より大きければプログラマブルロジックに割り当て、「0」以下であれば専用回路に割り当てるという規則を予め定義している場合、モジュール1001は計算結果が「0.2」となるのでプログラマブルロジックで処理し、また、モジュール1014は計算結果が「−0.2」になるので専用回路で処理することが決定される。なお、計算式はこれに限ったものではない。本例の計算結果を図19に示す。
次いで、アプリケーション1000,1010をモジュール毎に分解し、それぞれのモジュールの記述を、上記した計算結果を基に後述のステップ1650とステップ1660とに分配する。本実施の形態の場合、モジュール1011,1012,1014はステップ1650に分配され、また、モジュール1001〜1005,1013,1015〜1017はステップ1660に分配されることとなる。
ステップ1650では、ステップ1640で割り当てられたモジュールを専用回路で実現するための設計を行う。例えば、RTL記述を基に論理合成等の方法を用いて回路を完成する。
ステップ1660では、ステップ1640で割り当てられたモジュールをプログラマブルロジックで実現する設計を行う。例えば、モジュールの処理内容を基に特定のプログラマブルロジックが解釈できるプログラムを設計者が作成する。
上述したような手続きによれば、アプリケーションを構成するモジュール毎にその処理に対する変更の必要性と類似性を入力条件として適切な回路に割り当てることができる。換言すれば、モジュールの処理に今後変更の必要がなく類似性が高い場合には専用回路に割り当てることにより、最小の回路面積を実現できる。一方、変更の必要性が高く類似性が低いモジュールについては、マイコン、DSP、リコンフィギュラブルLSIなどのプログラマブルロジックでプログラムを書き換えるだけで、変更に対して柔軟に対応することができる。以上によって面積を削減し、回路を製造し直す必要がないため、製造コストを低減することができる。
(実施の形態6)
以下、本発明の実施の形態6における情報処理システムの構成方法について図面を用いて説明する。
図20は本発明の実施の形態6の情報処理システムの構成方法のフローチャートである。図10はアプリケーションの一例を示したものである。
ステップ2010では、設計者があるアプリケーションを図や言語で記述する。例えば、C言語のような高級言語やレジスタ・トランスファ・レベル(RTL)を用いて複数の単位(モジュール)で記述する。アプリケーションの一例として、CDMA通信の復調処理(1000)と無線LAN通信における復調処理(1010)を図10に示す。
ステップ2020では、上記したモジュール毎にデータ依存性パラメータと類似性パラメータを入力する。この入力は以下の態様でなされる。すなわち、図21に示すように、上記アプリケーションを構成する各モジュール名とそのモジュールのデータ依存性パラメータと類似性パラメータを対応づけたファイル2100を設計者が作成する。
ファイル2100に書かれた定義部2101の表記「module1001;DATA=1, COMMON=10」はモジュール1001(本例では逆拡散を示す)のデータ依存性パラメータが「1」、類似性パラメータが「10」であることを示している。
また、定義部2111の表記「module1016;DATA=8 , COMMON=4」はモジュール1016(本例ではデインタリーブを示す)のデータ依存性パラメータが「8」、類似性パラメータが「4」であることを示している。このような記述をアプリケーション1000,1010を構成する全てのモジュールについて行う。なお、データ依存性パラメータ、類似性パラメータの表記は本例に限ったものではない。
ステップ2030では、上記したデータ依存性パラメータと類似性パラメータの重みを定義する。例として図22のファイル2200に示すように、定義部2201の表記「WEIGHT_DATA : 1」はデータ依存性パラメータの重みが「1」であることを示している。定義部2202の表記「WEIGHT_COMMON: 1」は類似性パラメータの重みが「1」であることを示している。なお、データ依存性パラメータの重み、類似性パラメータの重みはこれに限ったものではない。
ステップ2040では、ステップ2020で定義したデータ依存性に関わる情報と類似性に関わる情報とステップ2030で定義したデータ依存性の重みと類似性の重みを基に、ステップ2010で記述したモジュール1001〜1017の処理をプログラマブルロジック(例えば、マイコンやDSPやリコンフィギュラブルLSIなど)で処理させるべきか、専用回路で処理させるべきかの判断を行う。まず、ファイル2100の定義部に記述されたデータ依存性パラメータ(DATA)と類似性パラメータ(COMMON)およびファイル2200の定義部に記述されたデータ依存性の重み(WEIGHT_DATA)と類似性の重み(WEIGHT_COMMON)を要素として、予め決められた計算式に従って計算を行い、その計算の結果が予め決められた数値より大きいか小さいかの判定を行う。
例えば、計算式が
(DATA x WEIGHT_DATA - COMMON xWEIGHT_COMMON)
であるとする。これは、データ依存性から類似性を引いたものとなっている。
例えば、計算結果が「0」より大きければプログラマブルロジックに割り当て、「0」以下であれば専用回路に割り当てるという規則を予め定義している場合、モジュール1001は計算結果が「0」となるので専用回路で処理し、また、モジュール1016は計算結果が「4」になるのでプログラマブルロジックで処理することが決定される。なお、計算式はこれに限ったものではない。本例の計算結果を図23に示す。
次いで、アプリケーション1000,1010をモジュール毎に分解し、それぞれのモジュールの記述を、上記した計算結果を基に後述のステップ2050とステップ2060とに分配する。
ステップ2050では、ステップ2040で割り当てられたモジュールを専用回路で実現するための設計を行う。例えば、RTL記述を基に論理合成等の方法を用いて回路を完成する。
ステップ2060では、ステップ2040で割り当てられたモジュールをプログラマブルロジックで実現する設計を行う。例えば、モジュールの処理内容を基に特定のプログラマブルロジックが解釈できるプログラムを設計者が作成する。
上述したような手続きによれば、アプリケーションを構成するモジュール毎にその処理に対するデータ依存性と類似性を入力条件として適切な回路に割り当てることができる。換言すれば、モジュールの処理がデータ量に依存せず類似性が高い場合には専用回路に割り当てることにより、最小の回路面積を実現できる。一方、データ依存が高く類似性が低いモジュールについては、マイコン、DSP、リコンフィギュラブルLSIなどのプログラマブルロジックでプログラムを書き換えるだけで、変更に対して柔軟に対応することができる。以上によって面積を削減し、回路を製造し直す必要がないため、製造コストを低減することができる。
(実施の形態7)
以下、本発明の実施の形態7における情報処理システムの構成方法について図面を用いて説明する。
図24は本発明の実施の形態7の情報処理システムの構成方法のフローチャートである。図10はアプリケーションの一例を示したものである。
ステップ2410では、設計者があるアプリケーションを図や言語で記述する。例えば、C言語のような高級言語やレジスタ・トランスファ・レベル(RTL)を用いて複数の単位(モジュール)で記述する。アプリケーションの一例として、CDMA通信の復調処理(1000)と無線LAN通信における復調処理(1010)を図10に示す。
ステップ2420では、上記したモジュール毎に永続性パラメータとデータ依存性パラメータと類似性パラメータを入力する。この入力は以下の態様でなされる。すなわち、図25に示すように、上記アプリケーションを構成する各モジュール名とそのモジュールの永続性パラメータとデータ依存性パラメータと類似性パラメータを対応づけたファイル2500を設計者が作成する。
ファイル2500に書かれた定義部2501の表記「module1001;ETNL=1, DATA=1 , COMMON=1」はモジュール1001(本例では逆拡散を示す)の永続性パラメータが「1」、データ依存性パラメータが「1」、類似性パラメータが「1」であることを示している。
また、定義部2509の表記「module1014;ETNL=1 , DATA=1 ,COMMON=2」はモジュール1014(本例ではFFTを示す)の永続性パラメータが「1」、データ依存性パラメータが「1」、類似性パラメータが「2」であることを示している。このような記述をアプリケーション1000,1010を構成する全てのモジュールについて行う。なお、永続性パラメータ、データ依存性パラメータ、類似性パラメータの表記は本例に限ったものではない。
ステップ2430では、上記した永続性パラメータとデータ依存性パラメータと類似性パラメータの重みを定義する。例として図26のファイル2600に示すように、定義部2601の表記「WEIGHT_ETNL : 2」は永続性パラメータの重みが「2」であることを示している。定義部2602の表記「WEIGHT_DATA :1」はデータ依存性パラメータの重みが「1」であることを示している。定義部2603の表記「WEIGHT_COMMON : 2」は類似性パラメータの重みが「2」であることを示している。なお、永続性パラメータの重み、データ依存性パラメータの重み、類似性パラメータの重みはこれに限ったものではない。
ステップ2440では、ステップ2420で定義した永続性に関わる情報とデータ依存性に関わる情報と類似性に関わる情報とステップ2430で定義した永続性の重みとデータ依存性の重みと類似性の重みを基に、ステップ2410で記述したモジュールの処理をプログラマブルロジック(例えば、マイコンやDSPやリコンフィギュラブルLSIなど)で処理させるべきか、専用回路で処理させるべきかの判断を行う。まず、ファイル2500の定義部に記述された永続性パラメータ(ETNL)とデータ依存性パラメータ(DATA)と類似性パラメータ(COMMON)およびファイル2600の定義部に記述された永続性パラメータの重み(WEIGHT_ETNL)とデータ依存性の重み(WEIGHT_DATA)と類似性の重み(WEIGHT_COMMON)を要素として、予め決められた計算式に従って計算を行い、その計算の結果が予め決められた数値より大きいか小さいかの判定を行う。
例えば、計算式が
(ETNL x WEIGHT_ETNL + DATA x WEIGHT_DATA -COMMON x WEIGHT_COMMON)
であるとする。これは、永続性とデータ依存性を足し、類似性を引いたものとなっている。
例えば、計算結果が「0」より大きければプログラマブルロジックに割り当て、「0」以下であれば専用回路に割り当てるという規則を予め定義している場合、モジュール1001は計算結果が「1」となるのでプログラマブルロジックで処理し、また、モジュール1014は計算結果が「−1」になるので専用回路で処理することが決定される。なお、計算式はこれに限ったものではない。本例の計算結果を図27に示す。
次いで、アプリケーション1000,1010をモジュール毎に分解し、それぞれのモジュールの記述を、上記した計算結果を基に後述のステップ2450とステップ2460とに分配する。
ステップ2450では、ステップ2440で割り当てられたモジュールを専用回路で実現するための設計を行う。例えば、RTL記述を基に論理合成等の方法を用いて回路を完成する。
ステップ2460では、ステップ2440で割り当てられたモジュールをプログラマブルロジックで実現する設計を行う。例えば、モジュールの処理内容を基に特定のプログラマブルロジックが解釈できるプログラムを設計者が作成する。
上述したような手続きによれば、アプリケーションを構成するモジュール毎にその処理に対する永続性とデータ依存性と類似性を入力条件として適切な回路に割り当てることができる。換言すれば、モジュールの処理が変更になる可能性が低くデータ量に依存せず類似性が高い場合には専用回路に割り当てることにより、最小の回路面積を実現できる。一方、変更の可能性が高くデータ依存が高く類似性が低いモジュールについては、マイコン、DSP、リコンフィギュラブルLSIなどのプログラマブルロジックでプログラムを書き換えるだけで、変更に対して柔軟に対応することができる。以上によって面積を削減し、回路を製造し直す必要がないため、製造コストを低減することができる。
(実施の形態8)
以下、本発明の実施の形態8における情報処理システムの構成方法について図面を用いて説明する。
図28は本発明の実施の形態8の情報処理システムの構成方法のフローチャートである。図10はアプリケーションの一例を示したものである。
ステップ2810では、設計者があるアプリケーションを図や言語で記述する。例えば、C言語のような高級言語やレジスタ・トランスファ・レベル(RTL)を用いて複数の単位(モジュール)で記述する。アプリケーションの一例として、CDMA通信の復調処理(1000)と無線LAN通信における復調処理(1010)を図10に示す。
ステップ2820では、上記したモジュール毎に永続性パラメータを入力する。この入力は以下の態様でなされる。すなわち、図29に示すように、上記アプリケーションを構成する各モジュール名とそのモジュールの永続性パラメータを対応づけたファイル2900を設計者が作成する。
ファイル2900に書かれた定義部2901の表記「module1001;ETNL=1」はモジュール1001(本例では逆拡散を示す)の永続性パラメータが「1」であることを示している。
また、定義部2905の表記「module1005;ETNL=10」はモジュール1005(本例ではCDMA通信のビタビ復号を示す)の永続性パラメータが「10」であることを示している。このような記述をアプリケーション1000,1010を構成する全てのモジュールについて行う。
ステップ2821では、上記したモジュール毎にデータ依存性パラメータを入力する。この入力は以下の態様でなされる。すなわち、図30に示すように、上記アプリケーションを構成する各モジュール名とそのモジュールのデータ依存性パラメータを対応づけたファイル3000を設計者が作成する。
ファイル3000に書かれた定義部3001の表記「module1001;DATA=1」はモジュール1001(本例では逆拡散を示す)のデータ依存性パラメータが「1」であることを示している。
また、定義部3003の表記「module1003;DATA=7」はモジュール1003のデータ依存性パラメータが「7」であることを示している。このような記述をアプリケーション1000,1010を構成する全てのモジュールについて行う。
ステップ2822では、上記したモジュール毎に類似性パラメータを入力する。この入力は以下の態様でなされる。すなわち、図31に示すように、上記アプリケーションを構成する各モジュール名とそのモジュールの類似性パラメータを対応づけたファイル3100を設計者が作成する。
ファイル3100に書かれた定義部3101の表記「module1001;COMMON=1」はモジュール1001(本例では逆拡散を示す)の類似性パラメータが「1」であることを示している。
また、定義部3011の表記「module1016;COMMON=10」はモジュール1016の類似性パラメータが「10」であることを示している。このような記述をアプリケーション1000,1010を構成する全てのモジュールについて行う。
ステップ2830では、ステップ2820で定義した永続性に関わる情報を基に、ステップ2810で記述したモジュールの処理をプログラマブルロジック(例えば、マイコンやDSPやリコンフィギュラブルLSIなど)で処理させるべきか、後述のステップ2831に処理を渡すかの判断を行う。まず、ファイル2900の定義部に記述された永続性パラメータ(ETNL)が予め決められた数値より大きいか小さいかの判定を行う。
例えば、数値が「5」以上であればプログラマブルロジックに割り当て、「5」未満であればステップ2831に処理をまわすという規則を予め定義している場合、モジュール1001は「1」となるのでステップ2831に進み、また、モジュール1005は「10」になるのでプログラマブルロジックで処理することが決定される。本例の結果を図32に示す。
次いで、アプリケーション1000,1010をモジュール毎に分解し、それぞれのモジュールの記述を、上記した計算結果を基に後述のステップ2840とステップ2831とに分配する。
ステップ2831では、ステップ2821で定義したデータ依存性に関わる情報を基に、ステップ2810で記述したモジュールの処理をプログラマブルロジック(例えば、マイコンやDSPやリコンフィギュラブルLSIなど)で処理させるべきか、後述のステップ2832に処理を渡すかの判断を行う。まず、ファイル3000の定義部に記述されたデータ依存性パラメータ(DATA)が予め決められた数値より大きいか小さいかの判定を行う。
例えば、数値が「5」以上であればプログラマブルロジックに割り当て、「5」未満であればステップ2832に処理をまわすという規則を予め定義している場合、モジュール1001は「1」となるのでステップ2832に進み、また、モジュール1003は「7」になるのでプログラマブルロジックで処理することが決定される。本例の結果を図33に示す。
次いで、アプリケーション1000,1010をモジュール毎に分解し、それぞれのモジュールの記述を、上記した計算結果を基に後述のステップ2841とステップ2832とに分配する。
ステップ2832では、ステップ2822で定義した類似性に関わる情報を基に、ステップ2810で記述したモジュールの処理をプログラマブルロジック(例えば、マイコンやDSPやリコンフィギュラブルLSIなど)で処理させるべきか、専用ハードウェアで処理するかの判断を行う。まず、ファイル3100の定義部に記述された類似性パラメータ(COMMON)が予め決められた数値より大きいか小さいかの判定を行う。
例えば、数値が「5」以上であれば専用回路に割り当て、「5」未満であればプログラマブルロジックに処理をまわすという規則を予め定義している場合、モジュール1001は「1」となるのでプログラマブルロジックで処理し、また、モジュール1016は「10」になるので専用ハードウェアで処理することが決定される。本例の結果を図34に示す。
次いで、アプリケーション1000,1010をモジュール毎に分解し、それぞれのモジュールの記述を、上記した計算結果を基に後述のステップ2842とステップ2850とに分配する。
ステップ2840では、ステップ2830で割り当てられたモジュールをプログラマブルロジックで実現する設計を行う。例えば、モジュールの処理内容を基に特定のプログラマブルロジックが解釈できるプログラムを設計者が作成する。
ステップ2841では、ステップ2831で割り当てられたモジュールをプログラマブルロジックで実現する設計を行う。例えば、モジュールの処理内容を基に特定のプログラマブルロジックが解釈できるプログラムを設計者が作成する。
ステップ2842では、ステップ2832で割り当てられたモジュールをプログラマブルロジックで実現する設計を行う。例えば、モジュールの処理内容を基に特定のプログラマブルロジックが解釈できるプログラムを設計者が作成する。
ステップ2850では、ステップ2832で割り当てられたモジュールを専用回路で実現するための設計を行う。例えば、RTL記述を基に論理合成等の方法を用いて回路を完成する。
上述したような手続きによれば、アプリケーションを構成するモジュール毎にその処理に対する永続性とデータ依存性と類似性を入力条件として適切な回路に割り当てることができる。換言すれば、モジュールの処理が変更になる可能性が低くデータ量に依存せず類似性が高い場合には専用回路に割り当てることにより、最小の回路面積を実現できる。一方、変更の可能性が高くデータ依存が高く類似性が低いモジュールについては、マイコン、DSP、リコンフィギュラブルLSIなどのプログラマブルロジックでプログラムを書き換えるだけで、変更に対して柔軟に対応することができる。以上によって面積を削減し、回路を製造し直す必要がないため、製造コストを低減することができる。
(実施の形態9)
以下、本発明の実施の形態9における情報処理システムの構成方法について図面を用いて説明する。
図35は本発明の実施の形態9の情報処理システムの構成方法のフローチャートである。図10はアプリケーションの一例を示したものである。
ステップ3510では、設計者があるアプリケーションを言語、例えば、C言語のような高級言語で記述する。アプリケーションの一例として、CDMA通信の復調処理(1000)と無線LAN通信における復調処理(1010)を図10に示す。上記各モジュール毎にある言語で記述することになる。
上記したモジュール毎に各々の永続性パラメータ、データ依存性パラメータ、類似性パラメータを記入する。例えば、図36に示したようにモジュール1001のモジュール呼び出し部に、
「a1001();/* ETNL=2、DATA=1、COMMON=8*/」
の表記を行う。「a1001();」はアプリケーションA(ここではCDMA通信1000)におけるモジュールa1001(逆拡散処理1001)の呼び出し部に相当する。「/*ETNL=2、DATA=1、COMMON=8*/」は、永続性パラメータ「ETNL」が「2」、データ依存性パラメータ「DATA」が「1」、類似性パラメータ「COMMON」が「8」であることを示している。
このようにしてアプリケーション1000,1010を構成するモジュール毎に永続性パラメータ、データ依存性パラメータ、類似性パラメータを記述する。
ステップ3520では、上記した永続性パラメータとデータ依存性パラメータと類似性パラメータの重みを定義する。例として図37のファイル3700に示すように、定義部3701の表記「WEIGHT_ETNL : 2」は永続性パラメータの重みが「2」であることを示している。定義部3702の表記「WEIGHT_DATA :1」はデータ依存性パラメータの重みが「1」であることを示している。定義部3703の表記「WEIGHT_COMMON : 2」は類似性パラメータの重みが「2」であることを示している。なお、永続性パラメータの重み、データ依存性パラメータの重み、類似性パラメータの重みはこれに限ったものではない。
ステップ3530では、ステップ3510で定義した永続性に関わる情報とデータ依存性に関わる情報と類似性に関わる情報とステップ3520で定義した永続性の重みとデータ依存性の重みと類似性の重みを基に各モジュールの処理をプログラマブルロジック(例えば、マイコンやDSPやリコンフィギュラブルLSIなど)で処理させるべきか、専用回路で処理させるべきかの判断を行う。まず、ファイル3610に記述された永続性パラメータ(ETNL)とデータ依存性パラメータ(DATA)と類似性パラメータ(COMMON)およびファイル3700の定義部に記述された永続性パラメータの重み(WEIGHT_ETNL)とデータ依存性の重み(WEIGHT_DATA)と類似性の重み(WEIGHT_COMMON)を要素として、予め決められた計算式に従って計算を行い、その計算の結果が予め決められた数値より大きいか小さいかの判定を行う。
例えば、計算式が
(ETNL x WEIGHT_ETNL + DATA x WEIGHT_DATA -COMMON x WEIGHT_COMMON)
であるとする。
例えば、計算結果が「0」より大きければプログラマブルロジックに割り当て、「0」未満であれば専用回路に割り当てるという規則を予め定義している場合、モジュール1001は計算結果が「−11」となるので専用回路で処理し、また、モジュール1005は計算結果が「15」になるのでプログラマブルロジックで処理することが決定される。なお、計算式はこれに限ったものではない。本例の計算結果を図38に示す。
次いで、アプリケーション1000,1010をモジュール毎に分解し、それぞれのモジュールの記述を、上記した計算結果を基に後述のステップ3540とステップ3550とに分配する。
ステップ3540では、ステップ3530で割り当てられたモジュールを専用回路で実現するための設計を行う。例えば、RTL記述を基に論理合成等の方法を用いて回路を完成する。
ステップ3550では、ステップ3530で割り当てられたモジュールをプログラマブルロジックで実現する設計を行う。例えば、モジュールの処理内容を基に特定のプログラマブルロジックが解釈できるプログラムを設計者が作成する。
上述したような手続きによれば、アプリケーションを構成するモジュール毎にその処理に対する永続性とデータ依存性と類似性を入力条件として適切な回路に割り当てることができる。換言すれば、モジュールの処理が変更になる可能性が低くデータ量に依存せず類似性が高い場合には専用回路に割り当てることにより、最小の回路面積を実現できる。一方、変更の可能性が高くデータ依存が高く類似性が低いモジュールについては、マイコン、DSP、リコンフィギュラブルLSIなどのプログラマブルロジックでプログラムを書き換えるだけで、変更に対して柔軟に対応することができる。以上によって面積を削減し、回路を製造し直す必要がないため、製造コストを低減することができる。
(実施の形態10)
以下、本発明の実施の形態10における情報処理システムの構成方法について図面を用いて説明する。
図39は本発明の実施の形態10の情報処理システムの構成方法のフローチャートである。ステップ3910では、設計者があるアプリケーションを回路記述言語、例えば、レジスタトランスファレベル(RTL)で記述する。例えば、図40に示すような構成であるとする。上記各モジュール毎にある言語で記述することになる。
上記したモジュール毎に各々の永続性パラメータ、データ依存性パラメータ、類似性パラメータを記入する。例えば、図40に示したようにモジュールa1のモジュール呼び出し部に
「a1 a1(.clock(clock), .reset(reset),.・・・・); /* ETNL =10, DATA=1 , COMMON = 1 */」
の表記を行う。これは、モジュールa1の永続性パラメータ「ETNL」が「10」、データ依存性パラメータ「DATA」が「1」、類似性パラメータ「COMMON」が「1」であることを示している。
このようにしてアプリケーションを構成するモジュール毎に永続性パラメータ、データ依存性パラメータ、類似性パラメータを記述する。
ステップ3920では、上記した永続性パラメータとデータ依存性パラメータと類似性パラメータの重みを定義する。例として図37のファイル3700に示すように、定義部3701の表記「WEIGHT_ETNL : 2」は永続性パラメータの重みが「2」であることを示している。定義部3702の表記「WEIGHT_DATA :1」はデータ依存性パラメータの重みが「1」であることを示している。定義部3703の表記「WEIGHT_COMMON : 2」は類似性パラメータの重みが「2」であることを示している。なお、永続性パラメータの重み、データ依存性パラメータの重み、類似性パラメータの重みはこれに限ったものではない。
ステップ3930では、ステップ3910で定義した永続性に関わる情報とデータ依存性に関わる情報と類似性に関わる情報とステップ3920で定義した永続性の重みとデータ依存性の重みと類似性の重みを基に各モジュールの処理をプログラマブルロジック(例えば、マイコンやDSPやリコンフィギュラブルLSIなど)で処理させるべきか、専用回路で処理させるべきかの判断を行う。まず、ファイル4010、4020、4030に記述された永続性パラメータ(ETNL)とデータ依存性パラメータ(DATA)と類似性パラメータ(COMMON)およびファイル3700の定義部に記述された永続性パラメータの重み(WEIGHT_ETNL)とデータ依存性の重み(WEIGHT_DATA)と類似性の重み(WEIGHT_COMMON)を要素として、予め決められた計算式に従って計算を行い、その計算の結果が予め決められた数値より大きいか小さいかの判定を行う。
例えば、計算式が
(ETNL x WEIGHT_ETNL + DATA x WEIGHT_DATA -COMMON x WEIGHT_COMMON)
であるとする。
例えば、計算結果が「0」より大きければプログラマブルロジックに割り当て、「0」未満であれば専用回路に割り当てるという規則を予め定義している場合、モジュールa3は計算結果が「−17」となるので専用回路で処理し、また、モジュールa1は計算結果が「19」になるのでプログラマブルロジックで処理することが決定される。なお、計算式はこれに限ったものではない。本例の計算結果を図41に示す。
次いで、アプリケーションをモジュール毎に分解し、それぞれのモジュールの記述を、上記した計算結果を基に後述のステップ3940とステップ3950とに分配する。
ステップ3940では、ステップ3930で割り当てられたモジュールを専用回路で実現するための設計を行う。例えば、RTL記述を基に論理合成等の方法を用いて回路を完成する。
ステップ3950では、ステップ3930で割り当てられたモジュールをプログラマブルロジックで実現する設計を行う。例えば、モジュールの処理内容を基に特定のプログラマブルロジックが解釈できるプログラムを設計者が作成する。
上述したような手続きによれば、アプリケーションを構成するモジュール毎にその処理に対する永続性とデータ依存性と類似性を入力条件として適切な回路に割り当てることができる。換言すれば、モジュールの処理が変更になる可能性が低くデータ量に依存せず類似性が高い場合には専用回路に割り当てることにより、最小の回路面積を実現できる。一方、変更の可能性が高くデータ依存が高く類似性が低いモジュールについては、マイコン、DSP、リコンフィギュラブルLSIなどのプログラマブルロジックでプログラムを書き換えるだけで、変更に対して柔軟に対応することができる。以上によって面積を削減し、回路を製造し直す必要がないため、製造コストを低減することができる。
(実施の形態11)
以下、本発明の実施の形態11における情報処理システムの構成方法について図面を用いて説明する。
図42は本発明の実施の形態11の情報処理システムの構成方法のフローチャートである。ステップ4210では、設計者があるアプリケーションを回路記述言語、例えば、レジスタトランスファレベル(RTL)で記述する。例えば、図43に示すような構成であるとする。上記各モジュール毎にある言語で記述することになる。
上記したモジュール毎に各々の永続性パラメータ、データ依存性パラメータを記入する。例えば、図43に示したようにモジュールa1のモジュール呼び出し部に
「a1 a1(.clock(clock), .reset(reset),.・・・・); /* ETNL =10, DATA=1*/」
の表記を行う。これは、モジュールa1の永続性パラメータ「ETNL」が「10」、データ依存性パラメータ「DATA」が「1」であることを示している。
このようにしてアプリケーションを構成するモジュール毎に永続性パラメータ、データ依存性パラメータを記述する。
ステップ4220では上記ステップ4210で記述したRTLからモジュールレベルで回路の共通性を類似性パラメータとして抽出する。たとえば図43のmodule a3,b3,c3は4311,321,4331に示すとおり回路が全く同じであるので類似性が「10」であると判断する。modulea1,a2,b1,b2,c1,c2に関しては共通性がなく類似性パラメータは「1」である。
ステップ4230では、上記した永続性パラメータとデータ依存性パラメータと抽出した類似性パラメータの重みを定義する。ここではファイル3700と同じとする。
ステップ4340では、ステップ4210で定義した永続性に関わる情報とデータ依存性に関わる情報とステップ4220で抽出した類似性に関わる情報とステップ4230で定義した永続性の重みとデータ依存性の重みと類似性の重みを基に各モジュールの処理をプログラマブルロジック(例えば、マイコンやDSPやリコンフィギュラブルLSIなど)で処理させるべきか、専用回路で処理させるべきかの判断を行う。まず、ファイル4310,4320,4330に記述された永続性パラメータ(ETNL)とデータ依存性パラメータ(DATA)とステップ4320で抽出した類似性パラメータ(COMMON)およびファイル3700の定義部に記述された永続性パラメータの重み(WEIGHT_ETNL)とデータ依存性の重み(WEIGHT_DATA)と類似性の重み(WEIGHT_COMMON)を要素として、予め決められた計算式に従って計算を行い、その計算の結果が予め決められた数値より大きいか小さいかの判定を行う。
例えば、計算式が
(ETNL x WEIGHT_ETNL + DATA x WEIGHT_DATA -COMMON x WEIGHT_COMMON)
であるとする。
例えば、計算結果が「0」より大きければプログラマブルロジックに割り当て、「0」未満であれば専用回路に割り当てるという規則を予め定義している場合、モジュールa3は計算結果が「−17」となるので専用回路で処理し、また、モジュールa1は計算結果が「19」になるのでプログラマブルロジックで処理することが決定される。なお、計算式はこれに限ったものではない。本例の計算結果を図44に示す。
次いで、アプリケーションをモジュール毎に分解し、それぞれのモジュールの記述を、上記した計算結果を基に後述のステップ4250とステップ4260とに分配する。
ステップ4250では、ステップ4240で割り当てられたモジュールを専用回路で実現するための設計を行う。例えば、RTL記述を基に論理合成等の方法を用いて回路を完成する。
ステップ4260では、ステップ4240で割り当てられたモジュールをプログラマブルロジックで実現する設計を行う。例えば、モジュールの処理内容を基に特定のプログラマブルロジックが解釈できるプログラムを設計者が作成する。
上述したような手続きによれば、アプリケーションを構成するモジュール毎にその処理に対する永続性とデータ依存性と類似性を入力条件として適切な回路に割り当てることができる。換言すれば、モジュールの処理が変更になる可能性が低くデータ量に依存せず類似性が高い場合には専用回路に割り当てることにより、最小の回路面積を実現できる。一方、変更の可能性が高くデータ依存が高く類似性が低いモジュールについては、マイコン、DSP、リコンフィギュラブルLSIなどのプログラマブルロジックでプログラムを書き換えるだけで、変更に対して柔軟に対応することができる。以上によって面積を削減し、回路を製造し直す必要がないため、製造コストを低減することができる。
(実施の形態12)
以下、本発明の実施の形態12における情報処理システムの構成方法について図面を用いて説明する。
図45は本発明の実施の形態12の情報処理システムの構成方法のフローチャートである。ステップ4510,4520,4530は実施の形態9と同様である。
ステップ4540では、ステップ4530で割り当てられたモジュールをゲートレベルのネットリストに変換して出力する。
ステップ4550では、ステップ4530で割り当てられたモジュールをプログラマブルロジックが解釈できるプログラムを出力する。
上述したような手続きによれば、アプリケーションを構成するモジュール毎にその処理に対する永続性とデータ依存性と類似性を入力条件として適切な回路に割り当てることができる。換言すれば、モジュールの処理が変更になる可能性が低くデータ量に依存せず類似性が高い場合には専用回路に割り当てることにより、最小の回路面積を実現できる。一方、変更の可能性が高くデータ依存が高く類似性が低いモジュールについては、マイコン、DSP、リコンフィギュラブルLSIなどのプログラマブルロジックでプログラムを書き換えるだけで、変更に対して柔軟に対応することができる。以上によって面積を削減し、回路を製造し直す必要がないため、製造コストを低減することができる。
本発明の半導体集積回路の構成方法および半導体集積回路は、回路構成の自由度を確保しながら有効に長期間使用し続けることが可能で、かつコスト削減の効果を有するもので、その技術は半導体開発ツールなどとして有用である。
従来技術におけるプログラマブル論理回路の再構成方法の説明図 従来技術の動作を示すフローチャート 本発明の実施の形態1の情報処理システムの構成方法を示すフローチャート 本発明の実施の形態1におけるアプリケーションモデルの構成図 本発明の実施の形態1における永続性パラメータを含むファイルの構成図 本発明の実施の形態2の情報処理システムの構成方法を示すフローチャート 本発明の実施の形態2におけるアプリケーションモデルの構成図 本発明の実施の形態2におけるデータ依存性パラメータを含むファイルの構成図 本発明の実施の形態3の情報処理システムの構成方法を示すフローチャート 本発明の実施の形態3におけるアプリケーションモデルの構成図 本発明の実施の形態3における類似性パラメータを含むファイルの構成図 本発明の実施の形態4の情報処理システムの構成方法を示すフローチャート 本発明の実施の形態4における永続性、データ依存性の各パラメータを含むファイルの構成図 本発明の実施の形態4における永続性、データ依存性の重みを含むファイルの構成図 本発明の実施の形態4における結果を示すモジュール別割り当て結果の図 本発明の実施の形態5の情報処理システムの構成方法を示すフローチャート 本発明の実施の形態5における永続性、類似性の各パラメータを含むファイルの構成図 本発明の実施の形態5における永続性、類似性の重みを含むファイルの構成図 本発明の実施の形態5における結果を示すモジュール別割り当て結果の図 本発明の実施の形態6の情報処理システムの構成方法を示すフローチャート 本発明の実施の形態6におけるデータ依存性、類似性の各パラメータを含むファイルの構成図 本発明の実施の形態6におけるデータ依存性、類似性の重みを含むファイルの構成図 本発明の実施の形態6における結果を示すモジュール別割り当て結果の図 本発明の実施の形態7の情報処理システムの構成方法を示すフローチャート 本発明の実施の形態7における永続性、データ依存性、類似性の各パラメータを含むファイルの構成図 本発明の実施の形態7における永続性、データ依存性、類似性の重みを含むファイルの構成図 本発明の実施の形態7における結果を示すモジュール別割り当て結果の図 本発明の実施の形態8の情報処理システムの構成方法を示すフローチャート 本発明の実施の形態8における永続性パラメータを含むファイルの構成図 本発明の実施の形態8におけるデータ依存性パラメータを含むファイルの構成図 本発明の実施の形態8における類似性パラメータを含むファイルの構成図 本発明の実施の形態8における永続性パラメータについての結果を示すモジュール別割り当て結果の図 本発明の実施の形態8におけるデータ依存性パラメータについての結果を示すモジュール別割り当て結果の図 本発明の実施の形態8における類似性パラメータについての結果を示すモジュール別割り当て結果の図 本発明の実施の形態9の情報処理システムの構成方法を示すフローチャート 本発明の実施の形態9における永続性、データ依存性、類似性の各パラメータを含むファイルの構成図 本発明の実施の形態9における永続性、データ依存性、類似性の重みを含むファイルの構成図 本発明の実施の形態9における結果を示すモジュール別割り当て結果の図 本発明の実施の形態10の情報処理システムの構成方法を示すフローチャート 本発明の実施の形態10における永続性、データ依存性、類似性の各パラメータを含むファイルの構成図 本発明の実施の形態10における結果を示すモジュール別割り当て結果の図 本発明の実施の形態11の情報処理システムの構成方法を示すフローチャート 本発明の実施の形態11における永続性、データ依存性の各パラメータを含むファイルの構成図 本発明の実施の形態11における結果を示すモジュール別割り当て結果の図 本発明の実施の形態12の情報処理システムの構成方法を示すフローチャート
符号の説明
310〜350 フローチャートの各ステップ
400,1000 CDMA通信における復調処理のアプリケーション
401〜405 アプリケーションのモジュール
501〜505 パラメータ定義
610〜650 フローチャートの各ステップ
700,1010 無線LAN通信における復調処理のアプリケーション
701〜707 アプリケーションのモジュール
801〜807 パラメータ定義
910〜950 フローチャートの各ステップ
1001〜1017 アプリケーションの各モジュール
1101〜1112 パラメータ定義
1210〜1260 フローチャートの各ステップ
1301〜1305 パラメータ定義
1401〜1402 重みの定義
1610〜1660 フローチャートの各ステップ
1701〜1712 パラメータ定義
1801〜1802 重みの定義
2010〜2060 フローチャートの各ステップ
2101〜2112 パラメータ定義
2201〜2202 重みの定義
2410〜2460 フローチャートの各ステップ
2501〜2512 パラメータの定義
2601〜2603 重みの定義
2810〜2850 フローチャートの各ステップ
2901〜2912 パラメータ定義
3001〜3012 パラメータ定義
3101〜3112 パラメータ定義
3510〜3550 フローチャートの各ステップ
3701〜3703 重みの定義
3910〜3950 フローチャートの各ステップ
4210〜4260 フローチャートの各ステップ
4510〜4550 フローチャートの各ステップ

Claims (20)

  1. 1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
    全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
    前記入力されたモデルに対する永続性パラメータを入力する工程と、
    前記アプリケーションのモデルと前記永続性パラメータを入力情報とし、前記永続性パラメータを境界条件と比較する工程と、
    前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
    とを有する情報処理システムの構成方法。
  2. 1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
    全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
    前記入力されたモデルに対するデータ依存性パラメータを入力する工程と、
    前記アプリケーションのモデルと前記データ依存性パラメータを入力情報とし、前記データ依存性パラメータを境界条件と比較する工程と、
    前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
    とを有する情報処理システムの構成方法。
  3. 1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
    全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
    前記入力されたモデルに対する類似性パラメータを入力する工程と、
    前記アプリケーションのモデルと前記類似性パラメータを入力情報とし、前記類似性パラメータを境界条件と比較する工程と、
    前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
    とを有する情報処理システムの構成方法。
  4. 1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
    全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
    前記入力されたモデルに対して永続性パラメータとデータ依存性パラメータを入力する工程と、
    前記永続性パラメータおよび前記データ依存性パラメータに対してそれぞれ重みを付ける工程と、
    前記アプリケーションのモデルと前記永続性パラメータおよび前記データ依存性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
    前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
    とを有する情報処理システムの構成方法。
  5. 1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
    全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
    前記入力されたモデルに対して永続性パラメータと類似性パラメータを入力する工程と、
    前記永続性パラメータおよび前記類似性パラメータに対してそれぞれ重みを付ける工程と、
    前記アプリケーションのモデルと前記永続性パラメータおよび前記類似性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
    前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
    とを有する情報処理システムの構成方法。
  6. 1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
    全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
    前記入力されたモデルに対してデータ依存性パラメータと類似性パラメータを入力する工程と、
    前記データ依存性パラメータおよび前記類似性パラメータに対してそれぞれ重みを付ける工程と、
    前記アプリケーションのモデルと前記データ依存性パラメータおよび前記類似性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
    前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
    とを有する情報処理システムの構成方法。
  7. 1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
    全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
    前記入力されたモデルに対して永続性パラメータとデータ依存性パラメータと類似性パラメータを入力する工程と、
    前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータに対してそれぞれ重みを付ける工程と、
    前記アプリケーションのモデルと前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
    前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
    とを有する情報処理システムの構成方法。
  8. 1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
    全ての前記アプリケーションをある処理レベル毎にモデル化して入力する工程と、
    前記入力されたモデルに対して永続性パラメータを入力する工程と、
    前記入力されたモデルに対してデータ依存性パラメータを入力する工程と、
    前記入力されたモデルに対して類似性パラメータを入力する工程と、
    前記アプリケーションのモデルと前記永続性パラメータを入力情報として境界条件と比較選択し、前記永続性パラメータによる比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を前記データ依存性パラメータに基づく比較工程の入力とする工程と、
    前記データ依存性パラメータと前記比較結果とを入力情報として境界条件と比較選択し、前記データ依存性パラメータによる比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を前記類似性パラメータに基づく比較工程の入力とする工程と、
    前記類似性パラメータと前記比較結果を入力情報として境界条件と比較選択する工程と、
    前記類似性パラメータによる比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割当てることを情報として出力する工程を有する情報処理システムの構成方法。
  9. 1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
    全ての前記アプリケーションに対してある処理レベル毎にモデル化したC言語プログラム内部に永続性パラメータとデータ依存性パラメータと類似性パラメータとを記述する工程と、
    前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータに対してそれぞれ重みを付ける工程と、
    前記アプリケーションのモデルと前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
    前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
    とを有する情報処理システムの構成方法。
  10. 1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
    全ての前記アプリケーションに対してある処理レベル毎にモデル化したハードウェア記述言語内部に永続性パラメータとデータ依存性パラメータと類似性パラメータとを記述する工程と、
    前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータに対してそれぞれ重みを付ける工程と、
    前記アプリケーションのモデルと前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
    前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
    とを有する情報処理システムの構成方法。
  11. 1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
    全ての前記アプリケーションに対してある処理レベル毎にモデル化したC言語プログラムまたはハードウェア記述言語内部に永続性パラメータとデータ依存性パラメータとを記述する工程と、
    前記モデルを入力として類似性パラメータを自動で抽出する工程と、
    前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータに対してそれぞれ重みを付ける工程と、
    前記の自動抽出した類似性パラメータと前記モデル内部に記述した永続性パラメータと依存性パラメータと前記パラメータの重みを入力情報として比較選択する工程と、
    前記比較結果に基づいて、一方をプログラマブルロジックに割り当て、他方を専用ハードウェアに割り当てることを情報として出力する工程
    とを有する情報処理システムの構成方法。
  12. 1つまたは複数のアプリケーションを実現する情報処理システムにおいて、
    全ての前記アプリケーションに対してある処理レベル毎にモデル化したC言語プログラム内部に永続性パラメータとデータ依存性パラメータと類似性パラメータとを記述する工程と、
    前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータパラメータに対してそれぞれ重みを付ける工程と、
    前記アプリケーションのモデルと前記永続性パラメータ、前記データ依存性パラメータおよび前記類似性パラメータと前記それぞれの重みを入力情報として比較選択する工程と、
    前記比較結果に基づいて一方をプログラマブルロジックに割り当て、プログラマブルロジックの回路形成情報を出力する工程と、
    他方を専用ハードウェアに割り当て専用回路の回路形成情報を出力する工程
    とを有する情報処理システムの構成方法。
  13. 請求項1に記載の情報処理システムの構成方法に基づいて、
    永続性パラメータの低い処理をプログラマブルロジックで実現する回路部分と、
    永続性パラメータの高い処理を専用ハードウェアで実現する回路部分と、
    からなる半導体集積回路。
  14. 請求項2に記載の情報処理システムの構成方法に基づいて、
    データ依存性パラメータの高い処理をプログラマブルロジックで実現する回路部分と、
    データ依存性パラメータの低い処理を専用ハードウェアで実現する回路部分と、
    からなる半導体集積回路。
  15. 請求項3に記載の情報処理システムの構成方法に基づいて、
    類似性パラメータの低い処理をプログラマブルロジックで実現する回路部分と、
    類似性パラメータの高い処理を専用ハードウェアで実現する回路部分と、
    からなる半導体集積回路。
  16. 請求項7に記載の情報処理システムの構成方法に基づいて、
    永続性パラメータとデータ依存性パラメータと類似性パラメータ、および、永続性パラメータの重みとデータ依存性パラメータの重みと類似性パラメータの重みに従って比較した結果を、
    プログラマブルロジックで実現する回路部分と、
    専用ハードウェアで実現する回路部分と、
    からなる半導体集積回路。
  17. 請求項8に記載の情報処理システムの構成方法に基づいて、
    永続性パラメータとデータ依存性パラメータと類似性パラメータを比較した結果を、
    プログラマブルロジックで実現する回路部分と、
    専用ハードウェアで実現する回路部分と、
    からなる半導体集積回路。
  18. 請求項9に記載の情報処理システムの構成方法に基づいて、
    永続性パラメータとデータ依存性パラメータと類似性パラメータ、および、永続性パラメータの重みとデータ依存性パラメータの重みと類似性パラメータの重みに従って比較した結果を、
    プログラマブルロジックで実現する回路部分と、
    専用ハードウェアで実現する回路部分と、
    からなる半導体集積回路。
  19. 請求項11に記載の情報処理システムの構成方法に基づいて、
    永続性パラメータとデータ依存性パラメータと類似性パラメータ、および、永続性パラメータの重みとデータ依存性パラメータの重みと類似性パラメータの重みに従って比較した結果を、
    プログラマブルロジックで実現する回路部分と、
    専用ハードウェアで実現する回路部分と、
    からなる半導体集積回路。
  20. 請求項12に記載の情報処理システムの構成方法に基づいて、
    永続性パラメータとデータ依存性パラメータと類似性パラメータ、および、永続性パラメータの重みとデータ依存性パラメータの重みと類似性パラメータの重みに従って得られた結果を、
    プログラマブルロジックで実現する回路部分と、
    専用ハードウェアで実現する回路部分と、
    からなる半導体集積回路。


JP2004068882A 2004-03-11 2004-03-11 情報処理システムの構成方法および半導体集積回路 Expired - Lifetime JP4471154B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004068882A JP4471154B2 (ja) 2004-03-11 2004-03-11 情報処理システムの構成方法および半導体集積回路
US11/071,465 US7536289B2 (en) 2004-03-11 2005-03-04 Method of configuring information processing system and semiconductor integrated circuit
CNB2005100537741A CN100432981C (zh) 2004-03-11 2005-03-11 配置信息处理系统的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004068882A JP4471154B2 (ja) 2004-03-11 2004-03-11 情報処理システムの構成方法および半導体集積回路

Publications (2)

Publication Number Publication Date
JP2005258767A true JP2005258767A (ja) 2005-09-22
JP4471154B2 JP4471154B2 (ja) 2010-06-02

Family

ID=34918458

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004068882A Expired - Lifetime JP4471154B2 (ja) 2004-03-11 2004-03-11 情報処理システムの構成方法および半導体集積回路

Country Status (3)

Country Link
US (1) US7536289B2 (ja)
JP (1) JP4471154B2 (ja)
CN (1) CN100432981C (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009025953A (ja) * 2007-07-18 2009-02-05 Fuji Xerox Co Ltd 演算処理装置及び演算処理プログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8266571B2 (en) * 2008-06-10 2012-09-11 Oasis Tooling, Inc. Methods and devices for independent evaluation of cell integrity, changes and origin in chip design for production workflow
US8555219B2 (en) 2011-06-10 2013-10-08 Oasis Tooling, Inc. Identifying hierarchical chip design intellectual property through digests

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230307B1 (en) 1998-01-26 2001-05-08 Xilinx, Inc. System and method for programming the hardware of field programmable gate arrays (FPGAs) and related reconfiguration resources as if they were software by creating hardware objects
JP2000222452A (ja) * 1999-02-02 2000-08-11 Toshiba Corp 論理合成最適化方法及びその装置
US6526563B1 (en) * 2000-07-13 2003-02-25 Xilinx, Inc. Method for improving area in reduced programmable logic devices
CN1159725C (zh) * 2000-11-28 2004-07-28 Agc科技股份有限公司 可扩充存储器的集成电路装置
US7142316B2 (en) * 2002-05-16 2006-11-28 Hewlett-Packard Development Company, L.P. Supporting multiple print engine configurations through compatible delay window storage modes

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009025953A (ja) * 2007-07-18 2009-02-05 Fuji Xerox Co Ltd 演算処理装置及び演算処理プログラム

Also Published As

Publication number Publication date
US20050204326A1 (en) 2005-09-15
US7536289B2 (en) 2009-05-19
CN1667603A (zh) 2005-09-14
CN100432981C (zh) 2008-11-12
JP4471154B2 (ja) 2010-06-02

Similar Documents

Publication Publication Date Title
Cho et al. BoxRouter: A new global router based on box expansion and progressive ILP
US20220222404A1 (en) Optimization of parameters for synthesis of a topology using a discriminant function module
US8930867B2 (en) Scheduling for parallel processing of regionally-constrained placement problem
JP2008547135A (ja) プリミティブ構築標準セルを作成するための方法
CN113408225B (zh) 一种提升运行速度的fpga芯片设计方法
CN113408222B (zh) 文件生成方法、装置、电子设备及存储介质
Sllame et al. An efficient list-based scheduling algorithm for high-level synthesis
US8972923B2 (en) Method and apparatus and software code for generating a hardware stream processor design
CN112997156A (zh) 用于电子设计自动化操作的计算资源的动态分配
JP2002157291A (ja) 半導体集積回路装置の設計方法
US20080244221A1 (en) Exposing system topology to the execution environment
JP5157534B2 (ja) 動作合成装置、および、プログラム
JP4471154B2 (ja) 情報処理システムの構成方法および半導体集積回路
Menard et al. High‐Level Synthesis under Fixed‐Point Accuracy Constraint
JPH10256383A (ja) 半導体装置及びその回路構成方法
JP2007034888A (ja) 機能ユニットにおいて不必要な電力消費を最小限に抑えるためのデータ経路の割振りのための方法および装置
JP2005071370A (ja) 回路設計のアクティビティファクタを決定するためのシステムおよび方法
US8117572B2 (en) Data processing device, behavioral synthesis device, data processing method, and recording medium
US20180246997A1 (en) Design method, design program, and design apparatus
US20060190890A1 (en) Cell instance generating method
Papa et al. Automatic large-scale integrated circuit synthesis using allocation-based scheduling algorithm
Thepayasuwan et al. Layout conscious approach and bus architecture synthesis for hardware/software codesign of systems on chip optimized for speed
Hara-Azumit et al. Clock-constrained simultaneous allocation and binding for multiplexer optimization in high-level synthesis
CN115017851A (zh) 一种网表的处理方法及装置
CN114330205A (zh) 高层次综合方法、其综合装置以及电子设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091027

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091225

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: 20100126

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: 20100224

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

Free format text: PAYMENT UNTIL: 20130312

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150