JP5056570B2 - データ処理装置、データ処理方法およびデータ処理プログラム - Google Patents

データ処理装置、データ処理方法およびデータ処理プログラム Download PDF

Info

Publication number
JP5056570B2
JP5056570B2 JP2008120136A JP2008120136A JP5056570B2 JP 5056570 B2 JP5056570 B2 JP 5056570B2 JP 2008120136 A JP2008120136 A JP 2008120136A JP 2008120136 A JP2008120136 A JP 2008120136A JP 5056570 B2 JP5056570 B2 JP 5056570B2
Authority
JP
Japan
Prior art keywords
logic circuit
configuration data
power consumption
total power
designed
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.)
Expired - Fee Related
Application number
JP2008120136A
Other languages
English (en)
Other versions
JP2009271649A (ja
Inventor
義弘 原田
真二 高尾
清 北村
勲 高田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008120136A priority Critical patent/JP5056570B2/ja
Priority to US12/320,995 priority patent/US8095338B2/en
Publication of JP2009271649A publication Critical patent/JP2009271649A/ja
Application granted granted Critical
Publication of JP5056570B2 publication Critical patent/JP5056570B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31721Power aspects, e.g. power supplies for test circuits, power saving during test
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R21/00Arrangements for measuring electric power or power factor
    • G01R21/01Arrangements for measuring electric power or power factor in circuits having distributed constants

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)

Description

この発明は、データ処理装置、データ処理方法およびデータ処理プログラムに関する。
従来より、データ処理を実行する複数のデバイスを集積化したパッケージ(PKG)には、デバイスにFPGA(Field Programmable Gate Array)を適用することで、各デバイスに設計される論理回路の再設計(再コンフィグ)を可能にしたものがある。
このパッケージは、パッケージが利用可能な総電力の内で、最良のデータ処理性能が発揮できるように、総電力をデバイスごとに割り当てる、言い換えると、デバイスごとに消費する消費電力を最適化する必要がある。そのため、従来のパッケージは、パッケージの開発者によって、以下に説明するような開発フローに基づいて開発および製造される。
まず、開発者は、デバイスごとに、デバイスに設計される論理回路を示したコンフィグデータを作成し、各論理回路が設計されたデバイスが動作したときに消費される消費電力を予め計測しておく。そして、開発者は、各デバイスによって消費される消費電力の合計(総消費電力)が、パッケージが利用可能な総電力の大きさとして予め設定されている目標電力値内で、目標電力値に近似することを確認する。
その後、開発者は、各デバイスに論理回路が設計されたテスト機(評価用パッケージ)を製造し、このテスト機によるデータ処理によって消費される総消費電力を実際に測定し、測定して得られた総消費電力の実測値が目標電力値内で、目標電力値に近似するか否かをテストする。
ここで、開発者は、「総消費電力の実測値が、目標電力値よりも大幅に少ない」旨のテスト結果を得た場合には、総消費電力の実測値が目標電力値に近づくように、テスト機の所定のデバイスに設計される論理回路をデータ処理性能が良い論理回路に変更する。そして、開発者は、論理回路が変更されたテスト機を製造して再びテストする。
一方では、開発者は、「総消費電力の実測値が、目標電力値よりも多い」旨のテスト結果を得た場合には、総消費電力の実測値が目標電力値内に収まるように、テスト機の所定のデバイスに設計される論理回路をデータ処理性能が悪い論理回路に変更する。そして、開発者は、論理回路が変更されたテスト機を製造して再びテストする。
このような試行錯誤を経て、開発者は、「総消費電力の実測値が目標電力値内で、目標電力値に近似する」旨のテスト結果を得た場合に、このテスト機を実機として製造する。
なお、パッケージやデバイスに発生する温度に基づいて、パッケージが実際にデータ処理を実行している最中に、デバイスに設計される論理回路を変更する発明もある(特許文献1および2参照)。しかしながら、この発明は、そもそも、総消費電力を実際に測定していないので、最大のデータ処理性能が得られるように、デバイスごとに消費する消費電力を最適化することができていなかった。
特開2006−244429号公報 特開2004−022724号公報
ところで、従来のパッケージには、パッケージの開発に手間および作業コストがかかるという課題があった。すなわち、従来のパッケージは、設計を変更するデバイスを選択し、設計を変更した別のテスト機を製造して再びテストするという試行錯誤をパッケージの開発者が行わなければならないので、パッケージの開発に手間がかかるという問題点があった。そして、従来のパッケージは、パッケージの開発に手間がかかるため、パッケージの開発に作業コストがかかるという問題点もあった。
そこで、このデータ処理装置、データ処理方法およびデータ処理プログラムは、上述した従来技術の課題を解決するためになされたものであり、パッケージの開発にかかる手間および作業コストを省くことが可能なデータ処理装置、データ処理方法およびデータ処理プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、開示のデータ処理装置は、各々に割り当てられたデータ処理を実行するデバイスごとに、当該デバイス上に設計されたときに発揮する処理性能が異なる論理回路がそれぞれ示されたコンフィグデータを記憶するコンフィグデータ記憶手段と、前記コンフィグデータ記憶手段から、各コンフィグデータ内、一のコンフィグデータをデバイスごとに読み込み、読み込んだ各コンフィグデータを各デバイスにそれぞれ入力して、各デバイスに論理回路を設計する論理回路設計手段と、前記論理回路設計手段によって論理回路が設計された各デバイスがデータ処理を実行した際に要する総消費電力を測定する総消費電力測定手段と、前記論理回路設計手段によって設計された論理回路の組合せのうち、前記総消費電力測定手段によって測定された総消費電力の実測値が予め設定されている総消費電力の目標値内で、最良の処理性能を発揮する組合せを、データ処理を実際に実行するときに各デバイス上に設計される論理回路として決定する論理回路決定手段とを備えることを要する。
また、開示のデータ処理方法は、各々に割り当てられたデータ処理を実行するデバイスごとに、当該デバイス上に設計されたときに発揮する処理性能が異なる論理回路がそれぞれ示されたコンフィグデータを記憶部に記憶するコンフィグデータ記憶ステップと、前記コンフィグデータ記憶ステップによって記憶部に記憶された情報から、各コンフィグデータ内、一のコンフィグデータをデバイスごとに読み込み、読み込んだ各コンフィグデータを各デバイスにそれぞれ入力して、各デバイスに論理回路を設計する論理回路設計ステップと、前記論理回路設計ステップによって論理回路が設計された各デバイスがデータ処理を実行した際に要する総消費電力を測定する総消費電力測定ステップと、前記論理回路設計ステップによって設計された論理回路の組合せのうち、前記総消費電力測定ステップによって測定された総消費電力の実測値が予め設定されている総消費電力の目標値内で、最良の処理性能を発揮する組合せを、データ処理を実際に実行するときに各デバイス上に設計される論理回路として決定する論理回路決定ステップとを含むことを要する。
また、開示のデータ処理プログラムは、各々に割り当てられたデータ処理を実行するデバイスごとに、当該デバイス上に設計されたときに発揮する処理性能が異なる論理回路がそれぞれ示されたコンフィグデータを記憶部に記憶するコンフィグデータ記憶手順と、前記コンフィグデータ記憶手順によって記憶部に記憶された情報から、各コンフィグデータ内、一のコンフィグデータをデバイスごとに読み込み、読み込んだ各コンフィグデータを各デバイスにそれぞれ入力して、各デバイスに論理回路を設計する論理回路設計手順と、前記論理回路設計手順によって論理回路が設計された各デバイスがデータ処理を実行した際に要する総消費電力を測定する総消費電力測定手順と、前記論理回路設計手順によって設計された論理回路の組合せのうち、前記総消費電力測定手順によって測定された総消費電力の実測値が予め設定されている総消費電力の目標値内で、最良の処理性能を発揮する組合せを、データ処理を実際に実行するときに各デバイス上に設計される論理回路として決定する論理回路決定手順とをコンピュータに実行させることを要する。
開示のデータ処理装置、データ処理方法およびデータ処理プログラムによれば、パッケージの開発にかかる手間および作業コストを省くことが可能である。
以下に添付図面を参照して、この発明に係るデータ処理装置、データ処理方法およびデータ処理プログラムの実施例を詳細に説明する。なお、以下では、例えば、GPON装置(Gigabit capable passive optical networks)に搭載されるパッケージ(データ処理装置)を実施例として説明する。
以下の実施例1では、実施例1に係るパッケージの概要、パッケージの構成、パッケージの処理の流れを順に説明し、最後に実施例1の効果を説明する。
[実施例1に係るパッケージの概要]
まず最初に、図1を用いて実施例1に係るパッケージの概要を説明する。図1は、実施例1に係るパッケージの概要を説明するための図である。
実施例1に係るパッケージは、データをデータ処理することを概要とし、パッケージの開発に手間および作業コストを省く。
すなわち、実施例1に係るパッケージは、各々に割り当てられたデータ処理を実行するデバイスを有するブロックごとに、デバイス上に設計されたときに発揮する処理性能が異なる論理回路がそれぞれ示されたコンフィグデータを記憶する。
このような前提の下、実施例1に係るパッケージは、処理性能が異なる各コンフィグデータ内、一のコンフィグデータをブロックごとに読み込み、読み込んだ各コンフィグデータを各ブロックにそれぞれ入力して、各ブロックが有するデバイスに論理回路を設計する。
続いて、実施例1に係るパッケージは、論理回路が設計された各デバイスがデータ処理を実行した際に要する総消費電力を測定する。
そして、実施例1に係るパッケージは、設計された論理回路の組合せのうち、測定された総消費電力の実測値が予め設定されている総消費電力の目標値内で、最良の処理性能を発揮する組合せを、データ処理を実際に実行するときに各デバイス上に設計される論理回路として決定する。
図1を用いて、具体的に説明すると、実施例1に係るパッケージは、ブロック1に入力されるコンフィグデータ「A」および「B」、ブロック2に入力されるコンフィグデータ「C」および「D」を記憶している。なお、コンフィグデータ「A」には、コンフィグデータ「B」よりもデータ処理性能が良い論理回路が示されており、コンフィグデータ「C」には、コンフィグデータ「D」よりもデータ処理性能が良い論理回路が示されている。
このような前提の下、実施例1に係るパッケージは、例えば、コンフィグデータ「A」をブロック1に入力するとともに、コンフィグデータ「C」をブロック2に入力して各ブロックのデバイスに論理回路を設計させて総消費電力を測定して、総消費電力が目標値内に収まっているか否かを判定する。
また、実施例1に係るパッケージは、例えば、コンフィグデータ「B」をブロック1に入力するとともに、コンフィグデータ「D」をブロック2に入力して各ブロックのデバイスに論理回路を設計させて総消費電力を測定して、総消費電力が目標値内に収まっているか否かを判定する。
そして、実施例1に係るパッケージは、コンフィグデータ「A」および「C」が入力されて論理回路が設計された各デバイスによる総消費電力が目標値内に収まっている旨の判定結果を得たものとする。この場合には、実施例1に係るパッケージは、コンフィグデータ「A」および「C」を入力して各デバイスに設計される論理回路を、データ処理を実際に実行するときに各デバイス上に設計される論理回路として決定する。
また、実施例1に係るパッケージは、コンフィグデータ「A」および「C」が入力されて設計された各デバイスによる総消費電力が目標値内に収まっておらず、コンフィグデータ「B」および「D」が入力されて設計された各デバイスによる総消費電力が目標値内に収まっている旨の判定結果を得たものとする。この場合には、実施例1に係るパッケージは、コンフィグデータ「B」および「D」を入力して各デバイスに設計される論理回路を、データ処理を実際に実行するときに各デバイス上に設計される論理回路として決定する。
このようなことから、実施例1に係るパッケージは、パッケージの開発に手間および作業コストを省くことが可能である。例えば、実施例1に係るパッケージは、目標とする消費電力内で最大の性能を発揮する組合せを自動設定することができるため、パッケージの開発に手間および作業コストを省くことが可能である。
[パッケージの構成]
次に、図2〜図6を用いて、図1に示したパッケージの構成を説明する。図2は、パッケージの構成を示すブロック図である。図3は、ROMに記憶される情報の一例を示した図である。図4は、優先順位テーブルに記憶される情報の一例を示した図である。図5は、電流測定部が有する回路の構成の一例を示した図である。図6は、全体制御部による制御を説明するための図である。
図2に示すように、このパッケージ10は、ブロック1〜8と、ROM(Read Only Memory)20と、優先順位テーブル30と、電流測定部40と、全体制御部50とを有する。
このうち、ブロック1〜8は、論理回路の再構成が可能なデバイス(例えば、FPGA)をそれぞれ有し、各々に割り当てられたデータ処理をデバイスに設計された論理回路によって実行する。
ROM20は、データおよびプログラムを記憶する記憶媒体に相当し、特に、デバイスごとに、デバイス上に設計されたときに発揮する処理性能が異なる論理回路がそれぞれ示されたコンフィグデータを記憶する。
具体的に一例をあげて説明すると、ROM20は、図3に示すように、ブロック1〜8ごとに、処理性能が良いコンフィグデータ(例えば、「A」)と、処理性能が悪いコンフィグデータ(例えば、「B」)とを記憶する。
優先順位テーブル30は、各デバイスにそれぞれ入力されるコンフィグデータの組合せを特定するための組合せ情報にそれぞれ対応付けて、ユーザによって予め設定された処理性能が良い順番を示す優先順位を記憶する。具体的に一例をあげて説明すると、優先順位テーブル30は、図4に示すように、優先順位(大、中、もしくは、小)ごとに、各優先順位に属するブロック1〜8を記憶する。
そして、優先順位テーブル30は、処理性能が良い順番を示す優先順位テーブル番号に対応付けて、組合せ情報を記憶する。
ここで、組合せ情報について説明すると、例えば、優先順位テーブル番号「No.3」に対応する組合せ情報は、ブロック1〜5に対して「性能:大」に対応するコンフィグデータがそれぞれ入力され、ブロック6〜8に対して「性能:小」に対応するコンフィグデータがそれぞれ入力されることを意味する。
なお、「優先順位:大(中もしくは小)」とは、各ブロック1〜8をグループ分けするためにユーザによって使用される情報であり、「優先順位:大」に属する各ブロック1〜3には、「優先順位:中」および「優先順位:小」に属する各ブロック4〜8に比べて、「性能:大」に対応するコンフィグデータを優先的に割り当てられることを意味する。
電流測定部40は、論理回路が設計されたデバイスを有する各ブロック1〜8に対して電流を送出し、各デバイスがデータ処理を実行した際に要する総消費電力を測定する。
例えば、電流測定部40は、図5に示すような回路を有する。ここで、電流測定部40は、電源から入力され、各ブロック1〜8に対して送出される電力について、電源から出力されたときの電圧と、抵抗Rを経由した後の電圧との電圧差を測定する。そして、電流測定部40は、測定された電圧差に基づいて、各ブロック1〜8のデバイスがデータ処理するために要する消費電力の合計(総消費電力)を算出する。
全体制御部50は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する。
特に、全体制御部50は、ROM20から、処理性能が異なる各コンフィグデータ内、一のコンフィグデータをデバイスごとに読み込み、読み込んだ各コンフィグデータを各ブロック1〜8にそれぞれ入力して、各デバイスに論理回路を設計する。
そして、全体制御部50は、電流測定部40に総消費電力を測定させ、設計された論理回路の組合せのうち、測定された総消費電力の実測値が予め設定されている総消費電力の目標値内で、最良の処理性能を発揮する組合せを、データ処理を実際に実行するときに各デバイス上に設計される論理回路として決定する。
図6を用いて、具体的に一例をあげて説明すると、全体制御部50は、データ処理の開始指令を受け付けると、記憶部(例えば、全体制御部50が有するレジスタ)から予め設定されている総消費電力の目標値を読み込む。
続いて、全体制御部50は、優先順位テーブル30に記憶されている各組合せ情報の中で、優先順位が最も高い優先順位テーブル番号「No.4(N=Max)」に対応する組合せ情報を参照して、各ブロック1〜8にそれぞれに入力される各コンフィグデータ(「A」、「C」、「E」、「G」、「I」、「K」、「M」、「O」)をROM20から読み込む(図6の(A)参照)。
より詳細には、全体制御部50は、優先順位テーブル30の優先順位テーブル番号「No.4」に対応する組合せ情報を参照し、「優先順位:大に対応する性能:大」、「優先順位:中に対応する性能:大」、および、「優先順位:小に対応する性能:大」を取得する。
続いて、全体制御部50は、優先順位:大に属するブロック1に入力されるコンフィグデータ「A」およびコンフィグデータ「B」の内、性能:大に相当するコンフィグデータ「A」をROM20から読み込む。
また、全体制御部50は、優先順位:大に属するブロック2に入力されるコンフィグデータ「C」およびコンフィグデータ「D」の内、性能:大に相当するコンフィグデータ「C」をROM20から読み込む。
また、全体制御部50は、優先順位:大に属するブロック3に入力されるコンフィグデータ「E」およびコンフィグデータ「F」の内、性能:大に相当するコンフィグデータ「E」をROM20から読み込む。
また、全体制御部50は、優先順位:中に属するブロック4に入力されるコンフィグデータ「G」およびコンフィグデータ「H」の内、性能:大に相当するコンフィグデータ「G」をROM20から読み込む。
また、全体制御部50は、優先順位:中に属するブロック5に入力されるコンフィグデータ「I」およびコンフィグデータ「J」の内、性能:大に相当するコンフィグデータ「I」をROM20から読み込む。
また、全体制御部50は、優先順位:小に属するブロック6に入力されるコンフィグデータ「K」およびコンフィグデータ「L」の内、性能:大に相当するコンフィグデータ「K」をROM20から読み込む。
また、全体制御部50は、優先順位:小に属するブロック7に入力されるコンフィグデータ「M」およびコンフィグデータ「N」の内、性能:大に相当するコンフィグデータ「M」をROM20から読み込む。
また、全体制御部50は、優先順位:小に属するブロック8に入力されるコンフィグデータ「O」およびコンフィグデータ「P」の内、性能:大に相当するコンフィグデータ「O」をROM20から読み込む。
各コンフィグデータをROM20から読み込んだ後、全体制御部50は、コンフィグデータを各ブロック1〜8にそれぞれ入力して論理回路を設計する。
続いて、全体制御部50は、各ブロック1〜8が有する各デバイス上に論理回路が設計されるまで処理を待機し、論理回路の設計が完了すると、電流測定部40に対して総消費電力を測定するように制御する。
そして、全体制御部50は、電流測定部40によって測定された総消費電力の実測値が、総消費電力の目標値によって算出される指定偏差内であるか否かを判定する。
ここで、全体制御部50は、総消費電力の実測値が指定偏差内であると判定された場合に、論理回路が設計されたデバイスを有する各ブロック1〜8を使用してデータ処理を開始する。
一方では、全体制御部50は、総消費電力の実測値が指定偏差内でないと判定された場合に、各デバイスにそれぞれ入力される各コンフィグデータを、優先順位が一位低いコンフィグデータの組合せに変更する。
具体的には、全体制御部50は、参照する優先順位テーブル番号を、「1」少ない優先順位テーブル番号「No.3」に変更する(N=N−1)。
続いて、全体制御部50は、優先順位テーブル30に記憶されている各組合せ情報の中で、優先順位テーブル番号「No.3」に対応する組合せ情報を参照して、各ブロック1〜8にそれぞれに入力される各コンフィグデータ(「A」、「C」、「E」、「G」、「I」、「L」、「N」、「P」)をROM20から読み込む(図6の(B)参照)。
続いて、全体制御部50は、コンフィグデータを各ブロック1〜8にそれぞれ入力して論理回路を設計する。
続いて、全体制御部50は、各ブロック1〜8が有する各デバイス上に論理回路が設計されるまで処理を待機し、論理回路の設計が完了すると、電流測定部40に対して総消費電力を測定するように制御する。
そして、全体制御部50は、電流測定部40によって測定された総消費電力の実測値が、指定偏差内であるか否かを再び判定し、総消費電力の実測値が指定偏差内であると判定された場合には、論理回路が設計されたデバイスを有する各ブロック1〜8を使用してデータ処理を開始する。
一方では、全体制御部50は、総消費電力の実測値が指定偏差内でないと判定された場合には、各デバイスにそれぞれ入力される各コンフィグデータを、優先順位が一位低いコンフィグデータの組合せに変更する。
具体的には、全体制御部50は、参照する優先順位テーブル番号を、「1」少ない優先順位テーブル番号「No.2」に変更する(N=N−1)。
続いて、全体制御部50は、優先順位テーブル30に記憶されている各組合せ情報の中で、優先順位テーブル番号「No.2」に対応する組合せ情報を参照して、各ブロック1〜8にそれぞれに入力される各コンフィグデータ(「A」、「C」、「E」、「H」、「J」、「L」、「N」、「P」)をROM20から読み込む(図6の(C)参照)。
続いて、全体制御部50は、コンフィグデータを各ブロック1〜8にそれぞれ入力して論理回路を設計する。
続いて、全体制御部50は、各ブロック1〜8が有する各デバイス上に論理回路が設計されるまで処理を待機し、論理回路の設計が完了すると、電流測定部40に対して総消費電力を測定するように制御する。
そして、全体制御部50は、電流測定部40によって測定された総消費電力の実測値が、指定偏差内であるか否かを再び判定し、総消費電力の実測値が指定偏差内であると判定された場合には、論理回路が設計されたデバイスを有する各ブロック1〜8を使用してデータ処理を開始する。
一方では、全体制御部50は、総消費電力の実測値が指定偏差内でないと判定された場合には、各デバイスにそれぞれ入力される各コンフィグデータを、優先順位が一位低いコンフィグデータの組合せに変更する。
具体的には、全体制御部50は、参照する優先順位テーブル番号を、「1」少ない優先順位テーブル番号「No.1」に変更する(N=N−1)。
続いて、全体制御部50は、優先順位テーブル30に記憶されている各組合せ情報の中で、優先順位テーブル番号「No.1」に対応する組合せ情報を参照して、各ブロック1〜8にそれぞれに入力される各コンフィグデータ(「B」、「D」、「F」、「H」、「J」、「L」、「N」、「P」)をROM20から読み込む(図6の(D)参照)。
続いて、全体制御部50は、コンフィグデータを各ブロック1〜8にそれぞれ入力して論理回路を設計する。
続いて、全体制御部50は、各ブロック1〜8が有する各デバイス上に論理回路が設計されるまで処理を待機し、論理回路の設計が完了すると、電流測定部40に対して総消費電力を測定するように制御する。
そして、全体制御部50は、電流測定部40によって測定された総消費電力の実測値が、指定偏差内であるか否かを再び判定し、総消費電力の実測値が指定偏差内であると判定された場合には、論理回路が設計されたデバイスを有する各ブロック1〜8を使用してデータ処理を開始する。
一方では、全体制御部50は、総消費電力の実測値が指定偏差内でないと判定された場合には、各デバイスにそれぞれ入力される各コンフィグデータを、優先順位が一位低いコンフィグデータの組合せに変更する。
このとき、全体制御部50は、優先順位テーブル番号「No.1」よりも優先順位が低い優先順位テーブル番号がないので(N=0)、アラームを鳴動させて、各ブロック1〜8ごとに消費する消費電力の最適化ができなかった旨をユーザに対して通知する。
[パッケージによる処理]
次に、図7を用いて、パッケージ10による処理の流れを説明する。図7は、パッケージによる処理の流れを示すフローチャート図である。
図7に示すように、パッケージ10は、データ処理の開始指令を受け付けると(ステップS1001肯定)、記憶部から予め設定されている総消費電力の目標値を読み込む(ステップS1002)。
続いて、パッケージ10は、優先順位が最も高い優先順位テーブル番号(N=Max)を参照して(ステップS1003)、ROM20から各ブロック1〜8それぞれに入力されるコンフィグデータを読み込む(ステップS1004)。
続いて、パッケージ10は、コンフィグデータを各ブロック1〜8にそれぞれ入力して論理回路を設計する(ステップS1005)。
ここで、パッケージ10は、論理回路の設計が完了するまで処理を待機し(ステップS1006)、論理回路の設計が完了すると、総消費電力を測定し(ステップS1007)、総消費電力の実測値が、指定偏差内であるか否かを判定する(ステップS1008)。
ここで、総消費電力の実測値が指定偏差内であると判定された場合には(ステップS1008肯定)、パッケージ10は、論理回路が設計されたデバイスを有する各ブロック1〜8を使用してデータ処理を開始し(ステップS1009)、データ処理の終了とともに処理を終了する。
一方では、総消費電力の実測値が指定偏差内でないと判定された場合には(ステップS1008否定)、パッケージ10は、参照する優先順位テーブル番号を、「1」少ない優先順位テーブル番号に変更する(N=N−1)(ステップS1010)。
ここで、参照すべき優先順位テーブル番号がない(N=0)場合には(ステップS1011肯定)、パッケージ10は、各ブロック1〜8ごとに消費する消費電力の最適化ができなかった旨をユーザに対して通知して(ステップS1012)、処理を終了する。
一方は、参照すべき優先順位テーブル番号がある場合には(ステップS1011否定)、パッケージ10は、再び優先順位テーブル30から各ブロック1〜8それぞれに入力されるコンフィグデータの性能情報を読み込み(ステップS1004)、上記した処理(ステップS1004〜ステップS1011)を繰り返し実行する。
[実施例1の効果]
上記したように、実施例1によれば、パッケージの開発に手間および作業コストを省くことが可能である。例えば、実施例1によれば、製造されたパッケージによって自動的に消費電力を最適化することができるため、パッケージの開発にかかる手間および作業コストを省くことが可能である。
また、実施例1によれば、短時間で消費電力を最適化することが可能である。例えば、実施例1では、パッケージの開発者によって設定されたコンフィグデータの組合せの順番で、総消費電力を測定するため、短時間で消費電力を最適化することが可能である。
また、実施例1によれば、パッケージを製造するときに発生する製造ミスをカバーすることが可能である。例えば、実施例1によれば、各ブロック1〜8が動作したときに消費される消費電力に誤差が生じた場合であっても、製造されたパッケージごとに消費電力を最適化することができるため、パッケージを製造するときに発生する製造ミスをカバーすることが可能である。
さて、これまで実施例1について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、実施例2として、他の実施例を説明する。
例えば、実施例1では、総消費電力の実測値が目標値に近似するという判定結果を得たときの論理回路を、データ処理を実際に実行するときに各デバイス上に設計される論理回路に決定する場合を説明した。
しかしながら、例えば、各デバイスに論理回路が設計されるごとに総消費電力を測定し、各デバイスの総消費電力の実測値が目標値に近似するという判定結果を得た論理回路の組合せの中から、最大のデータ処理性能が得られる論理回路をデータ処理を実際に実行するときに各デバイス上に設計される論理回路に決定するようにしてもよい。
また、実施例1では、ブロック1〜8ごとに、処理性能が良いコンフィグデータと、処理性能が悪いコンフィグデータとを記憶する場合を説明したが、処理性能が異なる3種類以上のコンフィグデータを記憶する場合であっても本発明に適用可能である。
また、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報(例えば、図3、4に示した記憶情報、図4に示した優先順位や優先順位テーブル番号など)については、特記する場合を除いて任意に変更することができる。
例えば、図8に示すように、優先順位(大、中、もしくは、小)とは無関係に、ユーザが任意に優先順位テーブル番号を設定した場合であっても本発明に適用可能である。なお、図8は、実施例2に係る優先順位テーブルに記憶される情報の一例を示した図である。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図2に示したROM20と、優先順位テーブル30とを統合して構成することができる。
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ハードウェアとして実現され得る。
ところで、本発明はあらかじめ用意されたプログラムを、パッケージ10を有したデータ処理装置としてのコンピュータで実行することによって実現するようにしてもよい。そこで、以下では、図9を用いて、上記の実施例に示したパッケージ10と同様の機能を有するデータ処理プログラムを実行するコンピュータを一例として説明する。図9は、データ処理プログラムを実行するコンピュータを示す図である。
同図に示すように、パッケージ10を有したデータ処理装置としてのコンピュータ110は、入力部111、出力部112、FPGA121〜128、電流測定部130、ROM140、CPU150、RAM160、HDD170をバス180などで接続して構成される。なお、FPGA121〜128は、図2に示したブロック1〜8にそれぞれ対応し、電流測定部130は、図2に示した電流測定部40に対応する。
ROM140には、コンフィグデータ141と、優先順位データ142と、上記の実施例1に示した全体制御部50と同様の機能を発揮する全体制御プログラム143とがあらかじめ記憶されている。なお、コンフィグデータ141と、優先順位データ142と、全体制御プログラム143とについては、図2に示したパッケージ10の各構成要素と同様、適宜統合または、分散してもよい。また、コンフィグデータ141は、図2に示した、ROM20に対応する。
そして、CPU150が全体制御プログラム143をROM140から読み出して実行することで、図9に示すように、全体制御プログラム143は、全体制御プロセス151として機能するようになる。なお、全体制御プロセス151は、図2に示した、全体制御部50に対応する。
そして、CPU150は、ROM140から優先順位データ142を読み出してRAM160に格納し、RAM160に格納された優先順位テーブルデータ161に基づいて処理を実行する。なお、優先順位テーブルデータ161は、図2に示した優先順位テーブル30に対応する。
なお、上記したコンフィグデータ141、優先順位データ142および全体制御プログラム143については、必ずしも最初からROM140に記憶させておく必要はない。例えば、コンピュータ110に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」、またはコンピュータ110の内外に備えられるHDDなどの「固定用の物理媒体」、さらには公衆回線、インターネット、LAN、WANなどを介してコンピュータ110に接続される「他のコンピュータ(またはサーバ)」などに各プログラムを記憶させておき、コンピュータ110がこれから各プログラムを読み出して実行するようにしてもよい。
なお、本実施例で説明したデータ処理方法は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
実施例1に係るパッケージの概要を説明するための図である。 パッケージの構成を示すブロック図である。 ROMに記憶される情報の一例を示した図である。 優先順位テーブルに記憶される情報の一例を示した図である。 電流測定部が有する回路の構成の一例を示した図である。 全体制御部による制御を説明するための図である。 パッケージによる処理の流れを示すフローチャート図である。 実施例2に係る優先順位テーブルに記憶される情報の一例を示した図である。 データ処理プログラムを実行するコンピュータを示す図である。
符号の説明
1〜8 ブロック
10 パッケージ
20 ROM(Read Only Memory)
30 優先順位テーブル
40 電流測定部
50 全体制御部
110 コンピュータ
111 入力部
112 出力部
121〜128 FPGA(Field Programmable Gate Array)
130 電流測定部
140 ROM(Read Only Memory)
141 コンフィグデータ
142 優先順位データ
143 全体制御プログラム
150 CPU(Central Processing Unit)
151 全体制御プロセス
160 RAM(Random Access Memory)
161 優先順位テーブルデータ
170 HDD(Hard Disk Drive)
180 バス

Claims (4)

  1. 各々に割り当てられたデータ処理を実行するデバイスごとに、当該デバイス上に設計されたときに発揮する処理性能が異なる論理回路がそれぞれ示されたコンフィグデータを記憶するコンフィグデータ記憶手段と、
    処理性能の高低に応じてコンフィグデータを割り当てるデバイスの優先順位を記憶する優先順位テーブルと、
    前記コンフィグデータ記憶手段から、各コンフィグデータ内、一のコンフィグデータをデバイスごとに読み込み、読み込んだ各コンフィグデータを各デバイスにそれぞれ入力して、各デバイスに論理回路を設計する論理回路設計手段と、
    前記論理回路設計手段によって論理回路が設計された各デバイスがデータ処理を実行した際に要する総消費電力を測定する総消費電力測定手段と、
    前記論理回路設計手段によって設計された論理回路の組合せのうち、前記総消費電力測定手段によって測定された総消費電力の実測値が予め設定されている総消費電力の目標値内で、前記優先順位テーブルにおいて優先順位の高いデバイスに処理性能の高いコンフィグデータを割り当てて最良の処理性能を発揮する組合せを、データ処理を実際に実行するときに各デバイス上に設計される論理回路として決定する論理回路決定手段と、
    を備えたことを特徴とするデータ処理装置。
  2. 前記優先順位テーブルは、各デバイスにそれぞれ入力されるコンフィグデータの組合せを特定するための組合せ情報にそれぞれ対応付けて、ユーザによって予め設定された処理性能が良い順番を示す優先順位をさらに記憶
    前記論理回路設計手段は、前記優先順位テーブルに記憶されている組合せ情報を処理性能が良い順番に参照し、各デバイスにそれぞれ入力される各コンフィグデータを前記コンフィグデータ記憶手段から読み込んで、各デバイスに論理回路を設計し、
    前記総消費電力測定手段は、前記論理回路設計手段によって各デバイスに論理回路が設計されるごとに総消費電力を測定し、
    論理回路決定手段は、前記総消費電力測定手段によって総消費電力が測定されるごとに、総消費電力の実測値が総消費電力の目標値内であるか否かを判定し、総消費電力の実測値が総消費電力の目標値内である旨の判定結果を得た場合には、前記論理回路設計手段によって設計された論理回路の組合せをデータ処理を実際に実行するときに各デバイス上に設計される論理回路として決定し、総消費電力の実測値が総消費電力の目標値内でない旨の判定結果を得た場合には、前記論理回路設計手段によって参照される組合せ情報を前記優先順位テーブルにおいて処理性能が良い順番を示す優先順位が一位低い組合せ情報に変更することを特徴とする請求項1に記載のデータ処理装置。
  3. 各々に割り当てられたデータ処理を実行するデバイスごとに、当該デバイス上に設計されたときに発揮する処理性能が異なる論理回路がそれぞれ示されたコンフィグデータを記憶部に記憶するコンフィグデータ記憶ステップと、
    前記コンフィグデータ記憶ステップによって記憶部に記憶された情報から、各コンフィグデータ内、一のコンフィグデータをデバイスごとに読み込み、読み込んだ各コンフィグデータを各デバイスにそれぞれ入力して、各デバイスに論理回路を設計する論理回路設計ステップと、
    前記論理回路設計ステップによって論理回路が設計された各デバイスがデータ処理を実行した際に要する総消費電力を測定する総消費電力測定ステップと、
    前記論理回路設計ステップによって設計された論理回路の組合せのうち、前記総消費電力測定ステップによって測定された総消費電力の実測値が予め設定されている総消費電力の目標値内で、処理性能の高低に応じてコンフィグデータを割り当てるデバイスの優先順位を記憶する優先順位テーブルにおいて優先順位の高いデバイスに処理性能の高いコンフィグデータを割り当てて最良の処理性能を発揮する組合せを、データ処理を実際に実行するときに各デバイス上に設計される論理回路として決定する論理回路決定ステップと、
    をコンピュータが実行することを特徴とするデータ処理方法。
  4. 各々に割り当てられたデータ処理を実行するデバイスごとに、当該デバイス上に設計されたときに発揮する処理性能が異なる論理回路がそれぞれ示されたコンフィグデータを記憶部に記憶するコンフィグデータ記憶手順と、
    前記コンフィグデータ記憶手順によって記憶部に記憶された情報から、各コンフィグデータ内、一のコンフィグデータをデバイスごとに読み込み、読み込んだ各コンフィグデータを各デバイスにそれぞれ入力して、各デバイスに論理回路を設計する論理回路設計手順と、
    前記論理回路設計手順によって論理回路が設計された各デバイスがデータ処理を実行した際に要する総消費電力を測定する総消費電力測定手順と、
    前記論理回路設計手順によって設計された論理回路の組合せのうち、前記総消費電力測定手順によって測定された総消費電力の実測値が予め設定されている総消費電力の目標値内で、処理性能の高低に応じてコンフィグデータを割り当てるデバイスの優先順位を記憶する優先順位テーブルにおいて優先順位の高いデバイスに処理性能の高いコンフィグデータを割り当てて最良の処理性能を発揮する組合せを、データ処理を実際に実行するときに各デバイス上に設計される論理回路として決定する論理回路決定手順と、
    をコンピュータに実行させることを特徴とするデータ処理プログラム。
JP2008120136A 2008-05-02 2008-05-02 データ処理装置、データ処理方法およびデータ処理プログラム Expired - Fee Related JP5056570B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008120136A JP5056570B2 (ja) 2008-05-02 2008-05-02 データ処理装置、データ処理方法およびデータ処理プログラム
US12/320,995 US8095338B2 (en) 2008-05-02 2009-02-10 Data processing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008120136A JP5056570B2 (ja) 2008-05-02 2008-05-02 データ処理装置、データ処理方法およびデータ処理プログラム

Publications (2)

Publication Number Publication Date
JP2009271649A JP2009271649A (ja) 2009-11-19
JP5056570B2 true JP5056570B2 (ja) 2012-10-24

Family

ID=41257651

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008120136A Expired - Fee Related JP5056570B2 (ja) 2008-05-02 2008-05-02 データ処理装置、データ処理方法およびデータ処理プログラム

Country Status (2)

Country Link
US (1) US8095338B2 (ja)
JP (1) JP5056570B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5677023B2 (ja) * 2010-10-22 2015-02-25 キヤノン株式会社 データ処理装置、及び、消費電力量管理方法
JP6810356B2 (ja) * 2017-04-26 2021-01-06 富士通株式会社 情報処理装置、情報処理方法及びプログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3321613A (en) * 1961-09-19 1967-05-23 Automation Man Inc Measuring instrument
EP0727728A1 (en) * 1995-02-15 1996-08-21 International Business Machines Corporation Computer system power management
US5727208A (en) * 1995-07-03 1998-03-10 Dell U.S.A. L.P. Method and apparatus for configuration of processor operating parameters
US6167524A (en) * 1998-04-06 2000-12-26 International Business Machines Corporation Apparatus and method for efficient battery utilization in portable personal computers
EP1182548A3 (en) * 2000-08-21 2003-10-15 Texas Instruments France Dynamic hardware control for energy management systems using task attributes
EP1182552A3 (en) * 2000-08-21 2003-10-01 Texas Instruments France Dynamic hardware configuration for energy management systems using task attributes
JP2002230065A (ja) * 2001-02-02 2002-08-16 Toshiba Corp システムlsi開発装置およびシステムlsi開発方法
US6986021B2 (en) * 2001-11-30 2006-01-10 Quick Silver Technology, Inc. Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements
US8412915B2 (en) * 2001-11-30 2013-04-02 Altera Corporation Apparatus, system and method for configuration of adaptive integrated circuitry having heterogeneous computational elements
JP2004022724A (ja) 2002-06-14 2004-01-22 Konica Minolta Holdings Inc 半導体集積回路装置、及び半導体集積回路の構成方法
US7134029B2 (en) * 2003-11-06 2006-11-07 International Business Machines Corporation Computer-component power-consumption monitoring and control
US7725848B2 (en) * 2005-01-27 2010-05-25 Wolfgang Nebel Predictable design of low power systems by pre-implementation estimation and optimization
JP2006244429A (ja) 2005-03-07 2006-09-14 Canon Inc データ処理装置及びその制御方法
US7562234B2 (en) * 2005-08-25 2009-07-14 Apple Inc. Methods and apparatuses for dynamic power control
JP4901561B2 (ja) * 2006-04-14 2012-03-21 パナソニック株式会社 設計支援システム、設計支援方法及び設計支援プログラム
EP2063366A4 (en) * 2006-08-31 2012-08-15 Fuji Xerox Co Ltd METHOD AND SYSTEM FOR MOUNTING A CIRCUIT MODEL ON A RECONFIGURABLE DEVICE
JP4980684B2 (ja) 2006-09-29 2012-07-18 富士通株式会社 基板情報取得変換方法とそのプログラムおよび装置

Also Published As

Publication number Publication date
JP2009271649A (ja) 2009-11-19
US20090276171A1 (en) 2009-11-05
US8095338B2 (en) 2012-01-10

Similar Documents

Publication Publication Date Title
US9684752B2 (en) Automating system on a chip customized design integration, specification, and verification through a single, integrated service
US7487477B2 (en) Parametric-based semiconductor design
US8892386B2 (en) Method and apparatus for post-silicon testing
TWI471747B (zh) 構成正準表示法之方法及設備
CN104834759B (zh) 电子设计的实现方法和装置
CN107403024A (zh) Ic的电压降和电迁移的分析方法及计算机可读存储介质
CN109426693A (zh) 开发电子器件的架构设计和制造电子器件的系统及方法
JP4654203B2 (ja) デジタルシステムのhdl記述ファイルを作成する方法、および得られるシステム
US8347260B2 (en) Method of designing an integrated circuit based on a combination of manufacturability, test coverage and, optionally, diagnostic coverage
JP5056570B2 (ja) データ処理装置、データ処理方法およびデータ処理プログラム
US10891411B2 (en) Hierarchy-driven logical and physical synthesis co-optimization
CN112906345B (zh) 验证逻辑电路中的路径的方法、系统和介质
US6389381B1 (en) Method and apparatus for calculating delay times in semiconductor circuit
JPWO2006006198A1 (ja) 電力算出装置、電力算出方法、耐タンパ性評価装置及び耐タンパ性評価方法
CN117725869A (zh) 断言开发方法、芯片验证方法、装置、设备及介质
JP2005071370A (ja) 回路設計のアクティビティファクタを決定するためのシステムおよび方法
US20090108863A1 (en) Method and circuit for detecting and compensating for a degradation of a semiconductor device
JP2006113052A (ja) 評価装置、評価システム及びプログラム
CN109145338B (zh) 一种修复电压降的方法及装置
US8352234B2 (en) Model generation based on a constraint and an initial model
JPWO2006025412A1 (ja) 論理検証方法、論理モジュールデータ、デバイスデータおよび論理検証装置
JP7057624B2 (ja) バッテリセル及び電気部品をスクリーニング及びマッチングするためのシステム及び方法
JP4921751B2 (ja) 故障検出シミュレーションシステム、故障検出シミュレーション方法及びプログラム
US20110208945A1 (en) Generating random addresses for verification of distributed computerized devices
US7698079B2 (en) Characterizing across-die process variation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120413

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

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

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

Free format text: PAYMENT UNTIL: 20150810

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees