JP2002366596A - 高位合成装置および高位合成方法、高位合成方法による論理回路の製造方法、記録媒体 - Google Patents
高位合成装置および高位合成方法、高位合成方法による論理回路の製造方法、記録媒体Info
- Publication number
- JP2002366596A JP2002366596A JP2001176375A JP2001176375A JP2002366596A JP 2002366596 A JP2002366596 A JP 2002366596A JP 2001176375 A JP2001176375 A JP 2001176375A JP 2001176375 A JP2001176375 A JP 2001176375A JP 2002366596 A JP2002366596 A JP 2002366596A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- power consumption
- partial
- clock
- standby state
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
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)
- Power Sources (AREA)
- Logic Circuits (AREA)
Abstract
路を生成する。 【解決手段】高位合成装置100は、論理回路に、低消
費電力化回路生成手段11により、論理回路の部分回路
(スレッド)が待機状態のときに部分回路(スレッド)
の動作を止める低消費電力化回路を合成する。これによ
り、その部分回路のスイッチング率を下げることができ
て、その論理回路の消費電力が回路のスイッチング率に
比例することからその消費電力を削減することができる
低消費電力化回路を合成することができる。
Description
支援するべく、論理回路の処理動作を記述した動作記述
(設計データ)によって表現された半導体集積回路(L
SI)の論理回路を自動生成する高位合成装置および、
その高位合成装置を用いた高位合成方法、この高位合成
方法による論理回路の製造方法、その高位合成方法を実
行するための制御プログラムが記録されたコンピュータ
読み取り可能な記録媒体に関する。
化により大規模なシステムLSIが実現可能になってお
り、このようなシステムLSIを効率的に設計およびそ
の検証を行うことができる環境が求められている。
始めた論理合成ツールに続き、ハードウェアの構造に関
する情報は含まず、動作のみを記述した動作記述から、
レジスタトランスファレベル(以下RTレベルという)
の記述を合成する動作合成ツールが実用段階に入り、人
手設計に比べて遜色のないLSIの設計が短期間で行わ
れることが可能になっている。
には、LSIの本質的な動作を決定するアルゴリズム設
計が人手設計の大部分を占めるため、設計者はアルゴリ
ズム設計に集中することができ、回路の品質をも向上さ
せることができる。
LSIの上流設計においては、まずシステム全体のアル
ゴリズムを検討し、それの検証を行う「アルゴリズム設
計」が行われる。ここでは、プログラミング言語である
「C言語」などのソフトウェア記述用語を用い、ワーク
ステーションやパーソナルコンピュータ上で設計、検証
を行い、アルゴリズムの検討が行われる。
について、ハードウェア記述用言語で動作記述を行い、
検証を行うことになる。このため、始めにソフトウェア
記述用言語を用いて記述したアルゴリズムを、再度、ハ
ードウェア記述言語で回路動作を書き直す必要がある。
たシステム全体のアルゴリズム、または動作記述から回
路を合成する手法(高位合成)が提案されている。この
ような従来技術として、例えば特開平10−11630
2号公報「集積回路の設計方法及びそれによって設計さ
れた集積回路」が挙げられる。
象度の高い言語を用いて、音声処理や画像処理などのア
プリケーションを実現するハードウェアの動作を記述
し、回路を合成してハードウェア化する高位合成が行わ
れている。
明する。以下では、動作記述用C言語として、C言語に
以下の拡張を行った言語を用いるものとする。即ち、明
示的な並列動作を記述するためのpar構文、並列動作
間のデータ通信命令と通信路(チャネル)がある。
h;C言語を用いたLSI設計環境」第11回 回路とシ
ステム(軽井沢)ワークショップ]、および[「ハード
ウェアコンパイラBach,」信学技報Technical Report of
IEICECRSY97-87(1997-10)]に記載されているBachC言
語がある。図15にハードウェア記述用のC言語の一例
を示す。この例では、以下の動作が記述されている。
目は、int型の同期通信路chの宣言である。
示するpar構文であって、その構文内の2つのブロッ
クが並列に動作することを示す。
れており、データ通信命令「send」を用いて通信路
chに対して数値10を送信することを示す。
ており、データ通信命令「receive」を用いて通
信路chから受信し、受信したデータを変数xに代入す
ることを示す。
の実行が終った後に、変数xの内容を整数型10進数と
して「stdout」に出力することを示す。
る。高位合成の一例として、前述の特開平10−l16
302号公報「集積回路の設計方法及びそれによって設
計された集積回路」に提案されている高位合成の動作の
概要(N1)〜(N4)について、以下に図16の機能
ブロックを参照しながら説明する。 (N1)回路の処理動作のアルゴリズムを記述した動作
記述を解析する。 (N2)処理動作を、非同期で並列に動作するスレッド
に分割する。 (N3)分割されたスレッド毎に、次の(N3a)〜
(N3f)の処理を行う。
や入出力を節点とし、データ依存関係を有向枝とする、
演算間の実行順序の依存関係を表現するグラフである。
るクロックに対応した時間に順次割り当てる。
器、レジスタおよび入出力ピンを生成し、CDFG中の
演算を演算器に、クロック境界を横切るデータ依存枝を
レジスタに、入出力を入出力ピンに割り当てる。
成する。
器、レジスタ、マルチプレクサを制御するコントローラ
を生成する。
[VHSIC(Very High Speed Integrated Circuit) Hardwa
re Description Language]などのハードウェア記述言
語を用いて回路記述として生成する。(N4)部分回路
であるスレッド毎のRTL回路を一つのRTL回路とし
てまとめる。
ついて説明する。
下同期チャネル通信)は、送り側スレッド(以下送信ス
レッド)と受け側スレッド(以下受信スレッド)の双方
が通信可能な状態になるまで待ってからデータ転送を行
うものとする。
して、図17に示すように、ハンドシェーク用制御信号
を用いた回路構成がある。この回路構成において、送信
スレッドの回路は以下のポートを持つ。回路中のポート
名の(I)は入力ポート、(O)は出力ポートを示して
いる。「wtx」は、相手側への送信要求信号(または
送信完了信号)用の制御線ポートを表す。「wrx」は
相手側からの受信要求信号(または受信完了信号)用の
制御線ポートを表す。「wdata」は送信側のデータ
線ポートを表す。
を持つ。回路中のポート名の(I)は入力ポート、
(O)は出力ポートを示している。「rrx」は、相手
側への受信要求信号(または受信完了信号)用の制御線
ポートを表す。「rtx」は、相手側からの送信要求信
号(または送信完了信号)用の制御線ポートを表す。
「rdata」は受信側のデータ線ポートを表す。
ングチャートの一例を図18に示している。なお、各制
御線の初期状態の電圧は「Low」レベル(ローレベ
ル)とする。
その後、「rcceive命令」の実行が行なわれる場
合を考える。図18に示すように、例えば、送信スレッ
ド(スレッド1)はクロックサイクルclにおいて「s
end命令」を実行し、受信スレッド(スレッド2)は
クロックサイクルc3において「receive命令」
を実行するものとする。
おいて、データd1をデータ線ポート「wdata」に
出力し、制御線ポート「wtx(O)」の電圧を「Hi
gh」レベル(ハイレベル)にする。さらに、制御線ポ
ート「wrx(I)」の電圧が「High」レベルにな
るまで待機し、制御線ポート「wrx(I)」の電圧が
「High」レベルになると、次のクロックサイクル
(c4)で制御線ポート「wtx(O)」の電圧を「L
ow」レベルにし、データ線ポート「wdata」への
データ出力を終了する。
c3において、制御線ポート「rrx(O)」の電圧を
「High」レベルにする。ここで、制御線ポート「r
tx(I)」の電圧が「High」レベルなので、次の
クロックサイクルc4でデータ線ポート「rdata」
のデータd1を参照し、制御線ポート「rrx(O)」
の電圧を「Low」レベルにする。これでデータ通信が
終了する。
され、その後に、「send命令」が実行される場合を
考える。
ドはクロックサイクルc7において「receive命
令」を実行し、送信スレッドはクロックサイクルc9に
おいて「send命令」を実行するものとする。
おいて、制御線ポート「rrx(O)」の電圧を「Hi
gh」レベルにする。さらに、制御線ポート「rtx
(I)」の電圧が「High」レベルになるまで待機
し、制御線ポート「rtx(I)」の電圧が「Hig
h」レベルになると、次のクロックサイクルc10でデ
ータ線ポート「rdata」のデータd2を参照し、制
御線ポート「rrx(O)」の電圧を「Low」レベル
にする。
おいて、データd2をデータ線ポート「wdata」に
出力し、制御線ポート「wtx(O)」の電圧を「Hi
gh」レベルにする。ここで、制御線ポート「rrx
(O)」の電圧が「High」レベルなので、次のクロ
ックサイクルc10で制御線ポート「wtx(O)」の
電圧を「Low」レベルにし、データ線ポート「wda
ta」へのデータ出力を終了する。これでデータ通信が
終了する。
「wtx(O)」の電圧を[High」レベルにした
後、制御線ポート「wrx(I)」の電圧が[Hig
h」レベルになると、「send命令」の実行が終了
し、受信スレッドが制御線ポート「rrx(O)」の電
圧を「High」レベルにした後、制御線ポート「rt
x(I)」の電圧が「High」レベルになると、「r
eceive命令」が終了する。これらの「send命
令」と「receive命令」が同じクロックサイクル
Cnで実行される場合、クロックサイクルCn+1でデー
タ通信が終了する。
信機器の分野では、バッテリを長持ちさせること、LS
Iの信頼性を高めること、発熱を下げ、LSIの冷却コ
ストやパッケージコストを下げること、といった要求か
ら、回路の低消費電力化が必要である。
は、回路のスイッチング率α、負荷容量C、動作電圧
V、動作周波数fとすると、以下の式で表される。
力を削減することができる。
期で並列に動作するスレッドに対応する複数の部分回路
で構成され、常時,クロックにより駆動されている。
う場合、送信スレッドまたは受信スレッドの一方がデー
タ通信を開始しても、他方が準備ができるまで待機状態
になることがある。例えば、図18のクロックサイクル
c2,c3は送信スレッドが待機状態であり、クロック
サイクルc8,c9は受信スレッドが待機状態である。
スレッドが待機状態のときには、その部分回路は動作し
なくても回路の出力に影響を与えない筈である。
ッドが待機状態になっても常にクロックが供給されてお
り、その結果、回路の出力に影響を与えないにも関わら
ず部分回路において、クロック供給によって無駄に電力
が消費されるという問題を有していた。
ので、スレッド待機時に無駄に消費される電力を削減す
る低消費電力化回路構成を生成することができる高位合
成装置および、この高位合成装置を用いた高位合成方
法、この高位合成方法による論理回路の製造方法、その
高位合成方法を実行するための制御プログラムが記録さ
れたコンピュータ読み取り可能な記録媒体を提供するこ
とを目的とする。
は、回路の処理動作を記述した動作記述情報からレジス
タトランスファレベルの論理回路を合成する高位合成装
置において、該論理回路を構成する部分回路が待機状態
のときのみ、低消費電力化を実現するべく該部分回路の
回路動作を止めるかまたは抑制する低消費電力化回路を
生成する低消費電力化回路生成手段を有し、該低消費電
力化回路生成手段を該論理回路と共に合成するものであ
り、そのことにより上記目的が達成される。本発明の高
位合成方法は、所望の論理回路を構築するべく、回路の
処理動作を記述した動作記述情報からレジスタトランス
ファレベルの論理回路を合成し、その合成した論理回路
を製造する高位合成方法による論理回路の製造方法にお
いて、この論理回路を構成する部分回路が待機状態のと
きに低消費電力化を行うべく部分回路の回路動作を止め
るかまたは抑制する低消費電力化回路を論理回路と共に
合成するものであり、そのことにより上記目的が達成さ
れる。
きにその部分回路の動作を止めるかまたは抑制するの
で、その部分回路のスイッチング率または動作電圧レベ
ルを下げることが可能となり、その論理回路の消費電力
が回路のスイッチング率や動作電圧レベルに比例するこ
とからその消費電力が削減される。
において、部分回路が待機状態のときに、その部分回路
へのクロックの供給を止めるかまたは抑制する低消費電
力化処理を行う低消費電力化回路を合成する。また、好
ましくは、本発明の高位合成方法において、部分回路が
待機状態のときに、その待機状態を示す信号を用いて部
分回路へのクロック供給を制御する低消費電力化回路を
合成する。ここで、「クロックの供給を止める」とは、
ハイレベルかまたはローレベルの供給電圧とする場合で
ある。
きにその部分回路へのクロック供給を止めるかまたは抑
制することができるので、その部分回路が待機状態のと
きに消費されていたクロックに起因する消費電力が削減
される。
法において、部分回路間のデータ転送において、データ
の送信側回路または受信側回路が待機状態のときに、部
分回路の動作を止めるかまたは抑制する低消費電力化処
理を行う低消費電力化回路を合成する。
が待機状態になると、その部分回路の動作を止めるかま
たは抑制することができるので、その部分回路のスイッ
チング率を下げることが可能となって、消費電力が削減
される。
法において、クロックによる同期通信の制御信号を用い
て、前記部分回路が待機状態を表す信号を生成し、その
信号を用いて生成したゲーティッドクロックで該部分回
路を駆動する低消費電力化処理を行う前記低消費電力化
回路を合成する。
きにはパルスを発生しないゲーティッドクロックでその
部分回路を駆動することができ、クロックに起因する消
費電力を削減することが可能となる。
置における低消費電力化回路生成手段は、クロックによ
る同期通信を含む動作記述情報から抽出された同期処理
情報に基づいて、部分回路が待機状態のときに部分回路
へのクロック供給を停止制御するかまたはレベル低下制
御する低消費電力化回路を生成する。また、好ましく
は、本発明の高位合成方法において、同期通信を含む動
作記述情報から抽出された同期処理情報に基づいて低消
費電力化回路を生成する処理を有し、この処理は、低消
費電力化を実現するべく、部分回路が待機状態のときに
部分回路へのクロック供給を制御する前記低消費電力化
回路を合成する。
きにクロックの供給を止めるかまたはクロックの電圧レ
ベルの抑制をすることができ、待機状態に消費されてい
たクロックに起因する消費電力を削減することが可能と
なる。
法において、同期通信を含む動作記述情報から抽出され
た同期処理情報に基づいて部分回路毎に該部分回路が待
機状態であることを示す信号を生成する処理と、その信
号を用いた部分回路毎のゲーティッドクロックを生成す
る処理とを有し、生成された該ゲーティッドクロックで
該部分回路を駆動することにより、部分回路が待機状態
のときに、部分回路に供給されていた該ゲーティッドク
ロック出力を止める低消費電力化回路を生成する。
待機状態のときにクロックの供給を止めるかまたは抑制
することができるので、部分回路毎に待機状態に消費さ
れていたクロックに起因する消費電力が削減される。
造方法は、請求項3〜9の何れかに記載の高位合成方法
を回路設計に用いたものである。
に消費される電力を削減する低消費電力化回路を生成す
る高位合成方法を用いて論理回路を設計し、その設計し
た論理回路を製造すると、低消費電力化回路を持った論
理回路が得られる。
媒体には、上記請求項3〜9の何れかに記載の高位合成
方法を実行するための制御プログラムが記録されてい
る。
に消費される電力を削減する低消費電力化回路を生成す
る高位合成方法を実現することが可能となる。
成装置およびそれを用いた高位合成方法について、図面
を参照しながら説明する。
合成装置の要部機能構成を示すブロック図である。図1
において、高位合成装置100は、動作記述格納手段2
0と、動作記述解析手段3と、スレッド分割手段4と、
同期処理情報格納手段5と、CDFG(コントロールデ
ータフローグラフ)生成手段6と、スケジューリング手
段7と、アロケーション手段8と、データパス生成手段
9と、コントローラ生成手段10と、低消費電力化回路
生成手段11と、RTレベル回路記述生成手段12と、
RTレベル回路格納手段13とを備えている。
法のアルゴリズムが記述された論理回路(LSIデジタ
ル回路)の動作記述(例えば図2(a))を格納するも
のである。
アルゴリズムを記述した例えば図2(a)のような動作
記述を抽出して解析し、その動作記述中の同期処理情報
を抽出するものである。この同期処理情報とは、スレッ
ド間で同期を取る必要がある処理に関する情報で、例え
ば同期チャネルを用いた通信に関する情報がある。つま
り、同期処理情報とは、同期チャネルにおける同期処理
情報だけではなく、その他の処理情報についても対象を
含んでいる。その他の処理情報には、例えば、並列に動
作するPar構文中の複数のブロックが同時に処理を開
始したり、全てのブロックが終了するのを待ってPar
構文の次に処理を進めるための同期を取る処理に関する
情報である。
非同期に並列動作する複数のスレッドに分割し、スレッ
ド毎に、そのスレッドが送信「send」を行う同期チ
ャネル情報のリストと、そのスレッドが受信「rece
ive」を行う同期チャネル情報のリストとを生成する
ものである。なお、図2(a)の動作記述では、第7行
目〜第14行目がスレッド1に、第15行目〜第19行
目までがスレッド2に割り当てられている。
手段4でスレッド毎に生成された例えば図2(b)に示
すような同期チャネルに関する同期処理やその他の同期
処理情報を格納するものである。
が、例えば、図2(a)の動作記述に基づいて、図3に
示すようなCDFG(コントロールデータフローグラ
フ)の生成処理を行う。
Gを複数のステップで分割した図4に示すようなスケジ
ューリング結果を生成する。
DFGに対する図5に示すような演算器の割り当てと、
図6に示すようなレジスタの割り当てを行う。
タが割り当てられた回路要素に対して図7の太線部分に
示すようなデータバス(データパス)を生成(結線)す
る。
部分に示すように、データバスを結線した回路にコント
ローラが加えられ、各制御線にて結線される。
理情報格納手段5に格納した例えば図2(b)に示すよ
うな同期チャネル情報に関する同期処理情報に基づい
て、スレッド毎に、そのスレッドが待機状態のときに部
分回路へのクロック供給を停止する例えば図9の低消費
電力化回路11A,11Bを生成するものである。
生成手段)12は、例えば図10の部分回路(スレッド
1,2)と低消費電力化回路11A,11Bとを接続し
てRTレベル回路を生成するものである。
たRTレベル回路情報を格納するものである。
式の一例として、AND論理素子やOR論理素子を用い
たゲーティッドクロック方式について説明する。これ
は、図11のように、制御信号(イネーブル信号)を変
化させることにより、所望のタイミングでクロックパル
スを出力するものである。このゲーティッドクロック方
式は、部分回路の動作を止める方式の一例として用いる
ことができるが、その他の方式によって部分回路の動作
を止めるようにしてもよい。
ィッドクロック方式を適用すると、例えば図12のよう
な回路構成になり、この回路のタイミングチャートは図
13に示すようになる。図8のタイミングチャートに示
すように、スレッド1(送信)へのクロックはクロック
サイクルc2,c3で、また、スレッド2(受信)への
クロックはクロックサイクルc8、c9で止まり、クロ
ックに起因する消費電力はそれぞれ9/11に削減でき
る。
電力化回路により、スレッドが待機状態のときに部分回
路へのクロック供給を停止(ハイレベルかローレベルで
変化しない)させ、部分回路のスイッチング率を小さく
して低消費電力化を実現することができるものである。
説明する。
した動作記述として、図2(a)が与えられた場合を考
える。この場合、動作記述解析手段3は、動作記述格納
手段20から得た所定の動作記述を解析し、スレッド分
割手段4により、図2(a)の動作記述のpar構文に
おける最初のブロックがスレッド1に、2番目のブロッ
クがスレッド2に割り当てられる。各スレッド1,2が
アクセスする同期チャネルは、例えば図2(b)の(表
1)のようになり、この同期チャネルに関する情報が同
期処理情報格納手段5に格納される。
(コントロールデータフローグラフ)の生成処理を行
う。例えば、図2(a)の動作記述に基づいて、図3に
示すコントロールデータフローグラフのように、「se
nd」や「receive(rcv)」などの通信路へ
の入出力や、加算「+」、減算「−」、乗算「×」など
の各種演算を節点とし、各節点のデータ依存関係を有向
枝とするCDFG(コントロールデータフローグラフ)
が生成される。
ケジューリング処理を行う。例えば、図3に示されたC
DFGの各節点を、スレッド1はステップ1〜4に、ス
レッド2はステップ1,2に割り当てると、図4に示す
ようなスケジューリング結果が得られる。
路要素としての演算器とレジスタの割り当てを行う。演
算器の割り当てでは、図5に示すように、「send」
や「recive(rcv)」は通信の制御線ポート
「rtx」,「rrx」,「wtx」,「wrx」やデ
ータ線ポート「rdata」,「wdata」に割り当
てると共に、加算「+」は加算器「ADD」に、減算
「−」は減算器「SUB」に、乗算「×」は乗算器「M
ULT」に割り当てる。
プを横切る枝をレジスタ「regx」〜「regz」,
「regA」に割り当てて、図6に示すようなアロケー
ション結果が得られる。
タバス(データパス)を生成する。図5および図6の各
処理に基づいて、図7の太線に示すようなデータバス生
成結果が得られる。
り、図8の太線に示すように、コントローラ「CTRL
1」とコントローラ「CTRL2」、通信やレジスタ
「regx」〜「regz」,「regA」を制御する
各制御線が生成される。
力化回路生成手段11により、図9に示すような低消費
電力化回路11A,11Bをそれぞれ生成する。ここで
は、クロックのゲーティング素子としてOR論理ゲート
を用いるゲーティッドクロック方式でスレッド1,2に
供給するクロックを制御するものとする。スレッド分割
手段4により抽出された、各スレッド1,2がアクセス
するチャネル情報に基づいて、 (1)読み出しチャネル「rch」に対して、通信の制
御線「rrx rch」と制御線「rtx rch」を
用いて、wait rch<=rrx rch AND
(not rtx rch);という論理を生成する。 (2)書き込みチャネル「wch」に対して、通信の制
御線「wtx rch」と制御線「wrx rch」を
用いて、wait wch<=wtx wch AND
(not wrx wch);という論理を生成する。 (3)上記で生成した論理とクロック「clk」から、
ゲーティッドクロック「gclk」を生成する。ここ
で、スレッドが読み出すチャネルや書き込むチャネルが
複数ある場合、それぞれのチャネルに対応する「wai
t rch]や「wait wch」の論理和(OR)
を取る。
ch OR wait wch); 図2(b)の(表1)からは、図9のようなゲーティッ
ドクロック生成回路11A,11Bが生成される。
により、スレッド1,2の部分回路や低消費電力化回路
11A,11Bを相互に接続し、図10に示すようなR
TL回路が生成される。
の一例を図14に示している。
である。
クルclで同期チャネルiから受信しようとする(rr
x iを「High」レベルにする)が、外部からデー
タが送信されていないので、クロックサイクルc6まで
待たされる。
ルiからデータx1を受信する。
ネルiからデータy1を受信して演算を行う。
z1を同期チャネルchに送信する。このデータはスレ
ッド2に受信され、直ちに通信は終了する。
ネルiに対して再び受信要求を出す。
ャネルiからデータx2を受信する。
ャネルiからデータy2を受信して演算を行う。
果z2を同期チャネルchに送信し、スレッド2に受信
される。
部に対して受信要求を出す。
ネルchの受信要求を出すが、スレッド1がクロックサ
イクルc9でデータを送信するまで待つ。
ルchからデータz1を受信し、そのデータを同期チャ
ネルOへ送信する。
ャネルOの送信を終了し、再び同期チャネルchへ受信
要求を出す.さらに、クロックサイクルc14で同期チ
ャネルchからデータz1を受信し、そのデータを同期
チャネルOへ送信する。
供給されるクロック方式では、スレッド1,2共に14
回のクロック動作が発生し、クロックが駆動する回路内
の負荷容量が充放電され、電力が消費される。
1,2が同期通信で待機状態になるときにクロック供給
を制御すると、ゲーティッドクロック方式を用いた場
合、スレッド1とスレッド2に供給するクロック(クロ
ックの立ち上がり回数)はそれぞれ8回と3回で済む。
起因する消費電力は、常時、クロックを供給する方式に
比べてそれぞれ8/14、3/14となる。このよう
に、部分回路が動作するクロックサイクル数をT、その
うち待機状態になるクロックサイクル数をNとすると、
本発明の高位合成方法では、クロックに起因するスイッ
チング率をN/Tに削減することができるものである。
の回路設計では、ゲーティッドクロック方式を適用する
ためにHDL記述やネットリストなどの設計データを変
更する必要があったが、本発明による低消費電力化は、
元の設計データ(動作記述)を全く変更することなく適
用できるため、低消費電力化のための設計期間が不要で
ある。
ったが、本発明の高位合成装置を用いた高位合成方法に
よって、設計データとしての動作記述から自動構築した
論理回路構成は、その後に製造されるが、その製造され
た論理回路自体の消費電力も、低消費電力化回路によっ
て削減することができるという本発明の効果を奏するも
のである。
析手段3と、スレッド分割手段4と、CDFG生成手段
6と、スケジューリング手段7と、アロケーション手段
8と、データパス生成手段9と、コントローラ生成手段
10と、低消費電力化回路生成手段11と、RTレベル
回路記述生成手段12と、RTレベル回路格納手段13
とを有する高位合成装置100のハード構成について
は、特に説明しなかったが、ユーザが入力操作を行う入
力手段(キーボードとマウスなど)と、本発明の高位合
成方法を制御する制御プログラムおよびそのデータが格
納された記憶手段(ワークメモリとしてのRAMと、可
読記録媒体としてのROM)と、データベース(動作記
述格納手段20と同期処理情報格納手段5など)と、入
力手段からの入力操作指令によって制御され、ROM内
の制御プログラムに基づいて本発明の高位合成方法を実
行する制御手段(CPU;中央演算処理装置)とを有す
るものである。更に、高位合成装置100のハード構成
として、初期画面、案内画面および実行結果などを表示
する液晶表示装置などの表示手段を有する。
率αを低減することにより消費電力を削減するべく、部
分回路(スレッド)が待機状態のときに部分回路の動作
を止める低消費電力化回路を合成するように構成した
が、これに限らず、CMOS論理回路の消費電力Pは、
回路のスイッチング率α、負荷容量C、動作電圧V2、
動作周波数fに比例することから、部分回路(スレッ
ド)が待機状態のときに部分回路の動作電圧を抑制する
低消費電力化回路を合成するように構成してもよく、こ
の場合にも、消費電力を削減することができる。特に、
部分回路が待機状態のときにその部分回路への供給クロ
ックの電圧レベルを抑制する低消費電力化回路を合成す
るように構成してもよい。この場合にも、クロックに起
因する消費電力が削減される低消費電力化回路を合成す
ることができる。
路が待機状態のときに部分回路の動作を止めるかまたは
抑制するため、その部分回路のスイッチング率または動
作電圧レベルを下げることができて、その論理回路の消
費電力が回路のスイッチング率や動作電圧レベルに比例
することからその消費電力を削減することができる低消
費電力化回路を合成することができる。
分回路へのクロック供給を止めるかまたは抑制するた
め、その部分回路が待機状態のときに消費されていたク
ロックに起因する消費電力が削減される低消費電力化回
路を合成するすることができる。
態になると、その部分回路の動作を止めるかまたは抑制
するため、その部分回路のスイッチング率または動作電
圧レベルを下げることで、消費電力が削減される低消費
電力化回路を合成することができる。
ルスを発生しないゲーティッドクロックでその部分回路
を駆動して、クロックに起因する消費電力が削減される
低消費電力化回路を合成することができる。
ックの供給を止めるまたは抑制することができ、待機状
態に消費されていたクロックに起因する消費電力が削減
される低消費電力化回路を合成することができる。
のときにクロックの供給を止めるまたは抑制するため、
部分回路毎に待機状態に消費されていたクロックに起因
する消費電力が削減される低消費電力化回路を合成する
ことができる。
れる電力を削減する低消費電力化回路を生成する高位合
成方法を用いて論理回路を設計し、その設計した論理回
路を製造すれば、低消費電力化回路を持った論理回路を
得ることができる。
て、無駄に消費される電力を削減する低消費電力回路が
生成される高位合成方法を実現することができる。
部機能構成を示すブロック図である。
期チャネルに関する同期処理情報を示す図ある。
を模式的に示す図である。
グ結果を模式的に示す図である。
(演算器)結果を模式的に示す図である。
(レジスタ)結果を模式的に示す図である。
果を模式的に示す回路図である。
結果を模式的に示す回路図である。
1の低消費電力化回路生成結果を模式的に示す回路図、
(b)はスレッド2の低消費電力化回路生成結果を模式
的に示す回路図である。
結果を模式的に示す回路図である。
ある。
信例に適用させた場合の回路図である。
ミングチャート図である
ングチャート図である。
る。
ロック図である。
路図である。
ングチャート図である。
成手段 7 スケジューリング手段 8 アロケーション手段 9 データパス生成手段 10 コントローラ生成手段 11 低消費電力化回路生成手段 12 RTレベル回路記述生成手段 13 RTレベル回路格納手段
Claims (11)
- 【請求項1】 回路の処理動作を記述した動作記述情報
からレジスタトランスファレベルの論理回路を合成する
高位合成装置において、該論理回路を構成する部分回路
が待機状態のときのみ、低消費電力化を実現するべく該
部分回路の回路動作を止めるかまたは抑制する低消費電
力化回路を生成する低消費電力化回路生成手段を有し、
該低消費電力化回路生成手段を該論理回路と共に合成す
る高位合成装置。 - 【請求項2】 前記低消費電力化回路生成手段は、クロ
ックによる同期通信を含む動作記述情報から抽出された
同期処理情報に基づいて、前記部分回路が待機状態のと
きに該部分回路へのクロック供給を停止制御するかまた
はレベル低下制御する低消費電力化回路を生成する請求
項1記載の高位合成装置。 - 【請求項3】 所望の論理回路を構築するべく、回路の
処理動作を記述した動作記述情報からレジスタトランス
ファレベルの論理回路を合成し、その合成した論理回路
を製造する高位合成方法において、該論理回路を構成す
る部分回路が待機状態のときに低消費電力化を行うべく
該部分回路の回路動作を止めるかまたは抑制する低消費
電力化回路を該論理回路と共に合成する高位合成方法。 - 【請求項4】 前記部分回路が待機状態のときに、その
部分回路へのクロックの供給を止めるかまたは抑制する
低消費電力化処理を行う前記低消費電力化回路を合成す
る請求項3記載の高位合成方法。 - 【請求項5】 前記部分回路が待機状態のときに、その
待機状態を示す信号を用いて該部分回路へのクロック供
給を制御する前記低消費電力化回路を合成する請求項3
または4記載の高位合成方法。 - 【請求項6】 前記部分回路間のデータ転送において、
データの送信側回路または受信側回路が待機状態のとき
に、該部分回路の動作を止めるかまたは抑制する低消費
電力化処理を行う前記低消費電力化回路を合成する請求
項3〜5の何れかに記載の高位合成方法。 - 【請求項7】 クロックによる同期通信の制御信号を用
いて、前記部分回路が待機状態を表す信号を生成し、そ
の信号を用いて生成したゲーティッドクロックで該部分
回路を駆動する低消費電力化処理を行う前記低消費電力
化回路を合成する請求項3〜6の何れかに記載の高位合
成方法。 - 【請求項8】 同期通信を含む動作記述情報から抽出さ
れた同期処理情報に基づいて低消費電力化回路を生成す
る処理を有し、該処理は、低消費電力化を実現するべ
く、前記部分回路が待機状態のときに該部分回路へのク
ロック供給を制御する前記低消費電力化回路を合成する
請求項3〜7の何れかに記載の高位合成方法。 - 【請求項9】 前記同期通信を含む動作記述情報から抽
出された同期処理情報に基づいて前記部分回路毎に該部
分回路が待機状態であることを示す信号を生成する処理
と、その信号を用いた部分回路毎のゲーティッドクロッ
クを生成する処理とを有し、生成された該ゲーティッド
クロックで該部分回路を駆動することにより、該部分回
路が待機状態のときに、該部分回路に供給されていた該
ゲーティッドクロック出力を止める前記低消費電力化回
路を生成する請求項8記載の高位合成方法。 - 【請求項10】 請求項3〜9の何れかに記載の高位合
成方法を回路設計に用いた論理回路の製造方法。 - 【請求項11】 請求項3〜9の何れかに記載の高位合
成方法を実行するための制御プログラムが記録されたコ
ンピュータ読み取り可能な記録媒体。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001176375A JP2002366596A (ja) | 2001-06-11 | 2001-06-11 | 高位合成装置および高位合成方法、高位合成方法による論理回路の製造方法、記録媒体 |
DE60221462T DE60221462T2 (de) | 2001-06-11 | 2002-06-06 | Vorrichtung und Verfahren zur High-Level-Synthese, Verfahren zur Produktion von logischen Schaltungen unter Verwendung des Verfahrens zur High-Level-Synthese,und Aufzeichnungsmedium |
EP02253932A EP1267287B1 (en) | 2001-06-11 | 2002-06-06 | High-level synthesis apparatus and method, method for producing logic circuit using the high-level synthesis method, and recording medium |
US10/166,094 US6832363B2 (en) | 2001-06-11 | 2002-06-11 | High-level synthesis apparatus, high-level synthesis method, method for producing logic circuit using the high-level synthesis method, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001176375A JP2002366596A (ja) | 2001-06-11 | 2001-06-11 | 高位合成装置および高位合成方法、高位合成方法による論理回路の製造方法、記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2002366596A true JP2002366596A (ja) | 2002-12-20 |
Family
ID=19017371
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001176375A Pending JP2002366596A (ja) | 2001-06-11 | 2001-06-11 | 高位合成装置および高位合成方法、高位合成方法による論理回路の製造方法、記録媒体 |
Country Status (4)
Country | Link |
---|---|
US (1) | US6832363B2 (ja) |
EP (1) | EP1267287B1 (ja) |
JP (1) | JP2002366596A (ja) |
DE (1) | DE60221462T2 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008102619A (ja) * | 2006-10-17 | 2008-05-01 | Nec Corp | 回路生成システム、回路生成方法及び回路生成プログラム |
JP2009271818A (ja) * | 2008-05-09 | 2009-11-19 | Fujitsu Ltd | 設計支援プログラム、設計支援装置、および設計支援方法 |
US7725843B2 (en) | 2006-02-08 | 2010-05-25 | Sharp Kabushiki Kaisha | Behavioral synthesis apparatus, behavioral synthesis method, method for manufacturing digital circuit, behavioral synthesis control program and computer-readable recording medium |
WO2012120760A1 (ja) * | 2011-03-09 | 2012-09-13 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
JP2018197745A (ja) * | 2017-04-24 | 2018-12-13 | テクトロニクス・インコーポレイテッドTektronix,Inc. | コンピューティング装置、物理的な入力信号を解釈する方法及びそのためのコンピュータ・プログラム |
US10684862B2 (en) | 2016-01-08 | 2020-06-16 | Mitsubishi Electric Corporation | Processor synthesis device, processor synthesis method, and computer readable medium |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0215034D0 (en) * | 2002-06-28 | 2002-08-07 | Critical Blue Ltd | Architecture generation method |
US7107568B2 (en) * | 2002-10-07 | 2006-09-12 | Hewlett-Packard Development Company, Lp. | System and method for reducing wire delay or congestion during synthesis of hardware solvers |
US7552042B1 (en) | 2004-01-30 | 2009-06-23 | Xilinx, Inc. | Method for message processing on a programmable logic device |
US7770179B1 (en) | 2004-01-30 | 2010-08-03 | Xilinx, Inc. | Method and apparatus for multithreading on a programmable logic device |
US7823162B1 (en) * | 2004-01-30 | 2010-10-26 | Xilinx, Inc. | Thread circuits and a broadcast channel in programmable logic |
JP2006155533A (ja) * | 2004-12-01 | 2006-06-15 | Matsushita Electric Ind Co Ltd | 回路情報生成装置および回路情報生成方法 |
US7310785B2 (en) * | 2004-12-10 | 2007-12-18 | Micronas Usa, Inc. | Video processing architecture definition by function graph methodology |
US20060236278A1 (en) * | 2005-04-19 | 2006-10-19 | International Business Machines Corporation | Method of automatic generation of micro clock gating for reducing power consumption |
JP4891807B2 (ja) * | 2007-02-28 | 2012-03-07 | パナソニック株式会社 | 高位合成装置および高位合成方法 |
US7669166B1 (en) * | 2007-06-14 | 2010-02-23 | Xilinx, Inc. | Generation of a specification of a processor of network packets |
JP2009157440A (ja) * | 2007-12-25 | 2009-07-16 | Toshiba Corp | 高位合成装置、高位合成システム、及び高位合成方法 |
US9619601B1 (en) * | 2015-01-22 | 2017-04-11 | Xilinx, Inc. | Control and data flow graph generation for hardware description languages |
US11668750B2 (en) * | 2021-09-17 | 2023-06-06 | Nvidia Corporation | Performing testing utilizing staggered clocks |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL78542A0 (en) * | 1986-04-18 | 1986-08-31 | Yeda Res & Dev | Electronic controller based on the use of statecharts as an abstract model |
US5935253A (en) * | 1991-10-17 | 1999-08-10 | Intel Corporation | Method and apparatus for powering down an integrated circuit having a core that operates at a speed greater than the bus frequency |
DE4213504C1 (ja) * | 1992-04-24 | 1993-06-24 | Micronas Intermetall Gmbh | |
US5686767A (en) * | 1994-12-29 | 1997-11-11 | Thomson Consumer Electronics, Inc. | Apportioning minimal standby power |
GB2317245A (en) | 1996-09-12 | 1998-03-18 | Sharp Kk | Re-timing compiler integrated circuit design |
JPH10187786A (ja) * | 1996-12-26 | 1998-07-21 | Ricoh Co Ltd | Lsi設計支援装置 |
US6195786B1 (en) * | 1997-12-23 | 2001-02-27 | Nec Usa, Inc. | Constrained register sharing technique for low power VLSI design |
-
2001
- 2001-06-11 JP JP2001176375A patent/JP2002366596A/ja active Pending
-
2002
- 2002-06-06 EP EP02253932A patent/EP1267287B1/en not_active Expired - Lifetime
- 2002-06-06 DE DE60221462T patent/DE60221462T2/de not_active Expired - Lifetime
- 2002-06-11 US US10/166,094 patent/US6832363B2/en not_active Expired - Fee Related
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7725843B2 (en) | 2006-02-08 | 2010-05-25 | Sharp Kabushiki Kaisha | Behavioral synthesis apparatus, behavioral synthesis method, method for manufacturing digital circuit, behavioral synthesis control program and computer-readable recording medium |
JP2008102619A (ja) * | 2006-10-17 | 2008-05-01 | Nec Corp | 回路生成システム、回路生成方法及び回路生成プログラム |
US8091053B2 (en) | 2006-10-17 | 2012-01-03 | Nec Corporation | System, method, and program for generating circuit |
JP2009271818A (ja) * | 2008-05-09 | 2009-11-19 | Fujitsu Ltd | 設計支援プログラム、設計支援装置、および設計支援方法 |
WO2012120760A1 (ja) * | 2011-03-09 | 2012-09-13 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
US10684862B2 (en) | 2016-01-08 | 2020-06-16 | Mitsubishi Electric Corporation | Processor synthesis device, processor synthesis method, and computer readable medium |
JP2018197745A (ja) * | 2017-04-24 | 2018-12-13 | テクトロニクス・インコーポレイテッドTektronix,Inc. | コンピューティング装置、物理的な入力信号を解釈する方法及びそのためのコンピュータ・プログラム |
JP7237457B2 (ja) | 2017-04-24 | 2023-03-13 | テクトロニクス・インコーポレイテッド | コンピューティング装置 |
Also Published As
Publication number | Publication date |
---|---|
US20020188923A1 (en) | 2002-12-12 |
US6832363B2 (en) | 2004-12-14 |
DE60221462D1 (de) | 2007-09-13 |
EP1267287A2 (en) | 2002-12-18 |
DE60221462T2 (de) | 2008-04-17 |
EP1267287B1 (en) | 2007-08-01 |
EP1267287A3 (en) | 2003-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002366596A (ja) | 高位合成装置および高位合成方法、高位合成方法による論理回路の製造方法、記録媒体 | |
Yen | Hardware-software co-synthesis of distributed embedded systems | |
Ogras et al. | Voltage-frequency island partitioning for GALS-based networks-on-chip | |
Wolf | An architectural co-synthesis algorithm for distributed, embedded computing systems | |
USRE40925E1 (en) | Methods for automatically pipelining loops | |
US6021266A (en) | Method of designing an integrated circuit using scheduling and allocation with parallelism and handshaking communication, and an integrated circuit designed by such method | |
Cong et al. | Architecture and synthesis for on-chip multicycle communication | |
US10901490B2 (en) | Operating point controller for circuit regions | |
JP2002123563A (ja) | コンパイル方法および合成装置ならびに記録媒体 | |
Bezati et al. | High-level synthesis of dataflow programs for signal processing systems | |
US8645117B2 (en) | Clock simulation device and methods thereof | |
Qamar et al. | LP-HLS: Automatic power-intent generation for high-level synthesis based hardware implementation flow | |
Saito et al. | A floorplan method for asynchronous circuits with bundled-data implementation on FPGAs | |
Bergamaschi et al. | A system for production use of high-level synthesis | |
Cong et al. | Architectural synthesis integrated with global placement for multi-cycle communication | |
Nielsen et al. | Behavioral synthesis of asynchronous circuits using syntax directed translation as backend | |
Benini et al. | Synthesis of low-power selectively-clocked systems from high-level specification | |
Koch et al. | Modeling and synthesis of hardware-software morphing | |
Kucukcakar et al. | A methodology and design tools to support system-level VLSI design | |
JP5057509B2 (ja) | 動作合成装置、動作合成方法、半導体集積回路の製造方法、動作合成プログラムおよび可読記憶媒体 | |
JP2003114914A (ja) | ソフトウェア/ハードウェア協調設計方法 | |
Ruggiero et al. | Reducing the abstraction and optimality gaps in the allocation and scheduling for variable voltage/frequency MPSoC platforms | |
Grun et al. | System level memory size estimation | |
Millican et al. | Optimal test scheduling formulation under power constraints with dynamic voltage and frequency scaling | |
Coussy et al. | A more efficient and flexible DSP design flow from Matlab-Simulink [FFT algorithm example] |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060228 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060428 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060714 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060911 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061205 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070201 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070402 |