JP2018041129A - 高位合成用記述変換装置及び高位合成用記述変換プログラム - Google Patents

高位合成用記述変換装置及び高位合成用記述変換プログラム Download PDF

Info

Publication number
JP2018041129A
JP2018041129A JP2016172538A JP2016172538A JP2018041129A JP 2018041129 A JP2018041129 A JP 2018041129A JP 2016172538 A JP2016172538 A JP 2016172538A JP 2016172538 A JP2016172538 A JP 2016172538A JP 2018041129 A JP2018041129 A JP 2018041129A
Authority
JP
Japan
Prior art keywords
circuit
unit
clock gating
state
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2016172538A
Other languages
English (en)
Inventor
寛人 伊藤
Hiroto Ito
寛人 伊藤
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.)
Mitsubishi Electric Engineering Co Ltd
Original Assignee
Mitsubishi Electric Engineering 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 Mitsubishi Electric Engineering Co Ltd filed Critical Mitsubishi Electric Engineering Co Ltd
Priority to JP2016172538A priority Critical patent/JP2018041129A/ja
Publication of JP2018041129A publication Critical patent/JP2018041129A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】分岐以外の部分についてもクロックゲーティングを行って低消費電力化を図る高位合成用記述変換装置及び高位合成用記述変換プログラムを提供する。【解決手段】設定パラメータを解析し、指示されたステート探索方法に従って対象回路の動作記述を元にステート毎に区切り、この区切られた各ステートにおけるプロセス毎の分割プロセス情報を生成した回路構造情報からクロックを供給するためのクロックゲーティングプロセス情報を生成し、分割プロセス情報とクロックゲーティングプロセス情報とを用いてクロックゲーティング回路を生成し、元の対象回路の動作記述から前記クロックゲーティング回路だけ差し替えた新たな回路の動作記述を生成して出力する。【選択図】図3

Description

本発明は、半導体集積回路(以後、LSIと略称する。)の高位言語設計に係り、特に低消費電力化のためのソースコード記述変換方法である高位合成用記述変換装置及び高位合成用記述変換プログラムに関する。
LSIの設計技術として高位言語で記述した動作アルゴリズム(以後、動作記述という。)からハードウェア記述言語(HDL:Hardware Description Language)(以後、HDLと略称する。)へ変換する動作合成技術が用いられている。この技術によりHDLより高い抽象度から設計することが可能となるため、LSIの大規模化及び複雑化が進む現在、開発効率やメンテナンスの向上が見込まれている。
また近年のプロセス技術やSoC(System on a Chip)の発展に伴い、LSIの設計において一層の低消費電力化が求められてきている。消費電力の削減に効果的な手法の一つとして動作していない回路に対してクロックの供給を遮断するクロックゲーティングが挙げられるが、前述のとおり動作記述は抽象度の高い設計を前提としているため、人手で回路の動作状態に応じてクロックの供給を制御することには困難が伴う。
このような問題に対して、クロックゲーティング回路を自動的に付加する低消費電力回路用高位合成装置及び高位合成方法及びそのプログラムを開示したものがある(例えば、特許文献1参照)。
この特許文献1は、排他的な条件で競合することがない分岐において選択されない不要な回路のクロック動作を停止させるものである。これを、図1に示す上記の特許文献1におけるクロックゲーティング対象1を参照して説明する。
同図(1)に示す、開始ステップ10から終了ステップ16までのプロセスA〜プロセスDの各ステップ11〜15(以下、単に「プロセス」とだけ称することがある。)についてのフローチャートでは、白抜きのプロセスA,B,及びCにおいてクロックが供給される。従って、条件分岐ステップ13によってプロセスCのステップ14に遷移するとき、網掛で示すプロセスDのステップ15は選択されない条件となるためクロックゲーティングとしてクロックが停止される。
一方、同図(2)に示す、開始ステップ17から始まり終了ステップ113で終わるプロセスA〜Dについての各ステップ18〜112でも、条件分岐ステップ110によってプロセスDのステップ112に遷移するとき、網掛で示すプロセスCのステップ111は選択されない。従って、条件分岐ステップ110の遷移先によって、プロセスDのステップ112においてクロックが供給され、プロセスCのステップ111においてクロックが停止される。すなわち、クロックの停止対象がプロセスCのステップ111とプロセスDのステップ112とで入れ替わっただけで他は同様である。
特開2008−282360号公報
上記の特許文献1では、分岐以外のプロセスについてはクロックゲーティングが行われないため、一層の低消費電力化を追求するためには分岐以外の部分についてもクロックゲーティングを行う必要がある。
本発明は、斯かる課題を解決するために為されたもので、分岐以外の部分についてもクロックゲーティングを行って低消費電力化を図ることが可能な高位合成用記述変換装置及び高位合成用記述変換プログラムを提供することを目的とする。
上記の目的を達成するため、本発明に係る高位合成用記述変換装置は、予め定義した設定パラメータ及び対象回路の動作記述を入力する入力部と、演算部と、記憶部と、出力部とを備え、前記演算部は、前記設定パラメータを解析するステート解析設定部と、前記ステート解析設定部から指示されたステート探索方法に従って前記対象回路の動作記述をステート毎に区切った回路構造情報を生成して前記記憶部に記憶する回路構造解析部と、前記回路構造情報から前記区切られた各ステートにおけるプロセス毎の分割プロセス情報を生成して前記記憶部に記憶する分割プロセス生成部と、前記回路構造情報からクロックを供給するためのクロックゲーティングプロセス情報を生成して前記記憶部に記憶するクロックゲーティング制御部と、前記分割プロセス情報と、前記クロックゲーティングプロセス情報とを用いてクロックゲーティング回路を生成し、前記回路構造情報から元の前記対象回路の動作記述を抽出し、対象部分だけ前記クロックゲーティング回路に差し替えた新たな回路の動作記述を生成して前記出力部に与える回路変換部とを有する。
また、本発明では、コンピュータを、予め定義した設定パラメータ及び対象回路の動作記述を入力する入力部として機能させ、前記設定パラメータを解析するステート解析設定部として機能させ、前記ステート解析設定部から指示されたステート探索方法に従って前記対象回路の動作記述をステート毎に区切った回路構造情報を生成する回路構造解析部として機能させ、前記回路構造情報から前記区切られた各ステートにおけるプロセス毎の分割プロセス情報を生成する分割プロセス生成部として機能させ、前記回路構造情報からクロックを供給するためのクロックゲーティングプロセス情報を生成するクロックゲーティング制御部として機能させ、前記分割プロセス生成部で生成した分割プロセス情報と、前記クロックゲーティング制御部で生成したクロックゲーティングプロセス情報とを用いてクロックゲーティング回路を生成し、前記回路構造情報から元の前記対象回路の動作記述を抽出し、対象部分だけ前記クロックゲーティング回路に差し替えた新たな回路の動作記述を生成して出力部に与える回路変換部として機能させる高位合成用記述変換プログラムが提供される。
本発明は、設定パラメータを解析し、指示されたステート探索方法に従って対象回路の動作記述を元にステート毎に区切り、この区切られた各ステートにおけるプロセス毎の分割プロセス情報を生成した回路構造情報からクロックを供給するためのクロックゲーティングプロセス情報を生成し、分割プロセス情報とクロックゲーティングプロセス情報とを用いてクロックゲーティング回路を生成し、元の対象回路の動作記述から前記クロックゲーティング回路だけ差し替えた新たな回路の動作記述を生成して出力するように構成したので、高位合成を行う際の動作記述のメリットを損なうことなく、分岐以外の部分についてもステート単位で動作不要な回路のクロック動作を停止させるクロックゲーティング制御を自動的に組込むことができ、消費電力を抑えることが可能となる。
特許文献1に開示されたクロックゲーティング対象を示したフローチャートであり、同図(1)及び(2)は、分岐処理のみについてクロックゲーティングが行われる様子をそれぞれ示すフローチャートである。 本発明に係る高位合成用記述変換装置及び高位合成用記述変換プログラムに使用されるクロックゲーティング対象を示したフローチャートであり、同図(1)〜(3)は、分岐処理を含む種々の処理についてクロックゲーティングが行われるステートをそれぞれ示すフローチャートである。 本発明の実施の形態1に係る高位合成用記述変換装置及び高位合成用記述変換プログラムの構成をデータの流れで示した図である。 本発明の実施の形態1に係る高位合成用記述変換装置及び高位合成用記述変換プログラムにおけるステート解析とステート分割の概要を示した図である。 本発明の実施の形態1に係る高位合成用記述変換装置及び高位合成用記述変換プログラムの実行手順を示すフローチャートである。 本発明の実施の形態2に係る高位合成用記述変換装置及び高位合成用記述変換プログラムに使用されるプラグマの記述例であって、ステート解析モードが手動モード時のプロセス区切りの記述例を示した図である。
以下、本発明に係る高位合成用記述変換装置及び高位合成用記述変換プログラムの実施の形態を、上記の添付図面を参照して説明する。
まず、図2に示す本発明に係る高位合成用記述変換装置及び高位合成用記述変換プログラムによるクロックゲーティング対象の概要を説明する。
或るステート、すなわち動作状態、である図2(1)に示す開始ステップ20から終了ステップ26までのプロセスA〜プロセスDに対する各ステップ21〜25のフローチャートでは、白抜きのプロセスAのステップ21の動作中をクロックゲーティングの対象としている。次のステートである同図(2)に示す開始ステップ27から終了ステップ213までのプロセスA〜Dの各ステップ28〜212のフローチャートでは、白抜きのプロセスBのステップ29の動作中をクロックゲーティングの対象としている。そして、次のステートである同図(3)に示す開始ステップ214から終了220までのプロセスA〜Dの各ステップ215〜219のフローチャートでは、白抜きのプロセスCのステップ218の動作中をクロックゲーティングの対象としている。
すなわち、図2におけるステート(1)では、プロセスAのステップ21を実行している間、プロセスAのステップ21のみクロックを供給し、網掛を付した他のプロセスBのステップ22、プロセスCのステップ24、及びプロセスDのステップ25のクロックを停止させる。また、ステート(2)では、プロセスBのステップ29のみクロックを供給し、網掛を付した他のプロセスではクロックを停止させる。さらに、ステート(3)では、分岐ステップ217及びプロセスCのステップ218でクロックを停止し、網掛を付した他のプロセスではクロックを供給する。
このようにステート単位にクロックゲーティングを行い、必要最低限のプロセスのみにクロック供給させることで、消費電力を抑えることが可能となる。
実施の形態1.
図3は、本発明の実施の形態1による高位合成用記述変換装置3の構成を示す。図3において、高位合成用記述変換装置3は、入力部311、演算部312、記憶部313、及び出力部314で構成され、高位合成用記述変換プログラムを構成するものである。このうち、入力部311は、入力用の設定パラメータ30及び対象回路32の動作記述を入力するものである。演算部312は、ステート解析設定部31、回路構造解析部33、分割プロセス生成部35、クロックゲーティング制御部37、及び回路変換部39で構成される。記憶部313は、演算部312で得られる演算結果である回路構造情報34、分割プロセス情報36、及びクロックゲーティングプロセス情報38の各情報(データ)を記憶するものである。さらに、出力部314は、演算部312から得られる新たな回路である動作記述を出力するものである。
なお、この高位合成用記述変換装置3は、コンピュータを、上記の各部として機能させる高位合成用記述変換プログラムを構成している。
図4は、高位合成用記述変換装置3による動作概要を示しており、これはステート解析とステート分析についてのものである。
以下、図3による高位合成用記述変換装置3の動作を、図4を参照しながら、まず概略的に説明する。
まず、本実施の形態の準備として、予め定義した設定パラメータ30と対象回路32の各情報を入力部311に用意する。設定パラメータ30は、図4に示す記述変換を行う際のステート解析モードを示しており、本実施の形態では、自動モードで設定した例を扱っている。対象回路32は、変換対象となる実際の回路(一例として、図2に示すステート(1)〜(3)のフローチャートに対応する回路)の動作記述のデータである。
ステート解析設定部31では、上記の予め定義した設定パラメータ30の解析を行う。これは、図4に示すように、演算部312における回路構造解析部33と分割プロセス生成部35とクロックゲーティング制御部37と回路変換部39とに対してステートの分割方法や分割対象を指示するためである。分割方法には、基本的に1つのステートを、図4のようにプロセスA〜Dに分割する境界を探索するためのキーワードが必要である。これは、例えば、プロセスAとBの接続箇所、プロセスBとCの接続箇所等が、各プロセスにキーワードとして含まれている。分割対象は対象回路の名称であるモジュール名又はプロセス名である。
なお、上記のプロセスとは、1つのステート内に存在するものであり、例えば、図2のステート(1)の場合、プロセスA〜プロセスDはそれぞれを別々のプロセスとし、開始ステップ21〜終了ステップ26までが1ステートとなる。
回路構造解析部33では、ステート解析設定部31から指示されたステート分割方法に従って、対象回路32の動作記述の解析を行う。ここでは、その動作記述に対してステート解析設定部31から指示された、対象回路の名称である対象モジュール又は対象プロセスの探索と対象回路の動作記述に対するキーワードの探索を行う。回路構造解析部33では、対象回路におけるステート間の境界の位置と、図2(1)〜(3)に対応するステートの数を取得し回路構造情報34へ保存する。
分割プロセス生成部35では、回路構造解析部33にて取得した回路構造情報34を用いて1ステートを構成するプロセスの数だけ1ステートを分割して分割プロセスとし、分割プロセス情報36として記憶部313に記憶する。生成した分割プロセス情報36は、基本的に回路構造解析部33で探索したステート間の境界を新たなプロセスとして関数化しただけである。
クロックゲーティング制御部37では、回路構造解析部33で取得した回路構造情報34を用いてクロックゲーティングを行うプロセス(以下、クロックゲーティングプロセスと称する。)を生成する。このクロックゲーティングプロセスは、図4において符号51で示し、太い矢印で示すように、プロセスA〜Dから成る分割前のステート50から回路構造情報34に基づき生成され、クロックゲーティングプロセス情報38として記憶部313に記憶される。クロックゲーティングプロセス51では、回路構造情報34に含まれるステート数分(例えば、図2(1)〜(3)に相当)、すなわち分割プロセスの数分のステートを持つ。クロックゲーティングプロセス51では、各分割プロセス52〜55(プロセスA〜D)の完了を入力してステートの遷移条件として使用し、クロックゲーティングプロセス51のプロセスに応じて各分割プロセス52〜55へクロックを供給する。
すなわち、図4では、本発明の高位合成用記述変換装置3に入力される対象回路32に含まれる1つのステート(分割前のステート50)を、分割プロセス生成部35で分割することで、クロックゲーティングプロセス51と、分割プロセスA(ステップ52)、分割プロセスB(ステップ53)、分割プロセスC(ステップ54)、及び分割プロセスD(ステップ55)で構成された回路(動作記述)とに変換する。この場合のクロックゲーティングプロセス51は、4つに分割された分割プロセス52〜55に対して、4つのキーワードを用いてクロック生成の指示を行っている。
回路変換部39では、分割プロセス生成部35で生成した分割プロセス52〜55の分割プロセス情報36と、クロックゲーティング制御部37で生成したクロックゲーティングプロセス51のクロックゲーティングプロセス情報38とを用いて図4に示すクロックゲーティング回路5を生成する。回路変換部39は、対象回路32の情報を含んだ回路構造情報34からオリジナルの回路を抽出し、対象部分のみ、生成したクロックゲーティング回路5に差し替えを行い、新たな回路310の動作記述の生成を行う。
次に、以上説明した本発明による図3における演算部312内の各部31、33、35、37、及び39の動作の内容を、図3に対応する図5の具体的な処理フローに沿い、図2のクロックゲーティング対象及び図4のプロセス分割を参照して、より詳細に説明する。
まず、ステップS100において、入力部311から対象回路32(図2(1)〜(3)に示すステート、すなわち、図4で示す分割前のステート50で示される回路)と予め定義した設定パラメータ30を入力する。
ステップS101では、入力した設定パラメータ30の解析をステート解析設定部31にて行い、対象回路32におけるステート間の上述した境界キーワード(探索ワード)を回路構造解析部33で設定する。また、対象回路32は複数設定可能とし、後述するステップS117までの処理を繰り返し行う。なお、回路構造解析部33で解析された対象回路32は、その名称(モジュール名又はプロセス名)が取得され、回路構造情報34として記憶部313に記憶される。
ステップS102において、回路構造解析部33は、対象回路32をモジュール名又はプロセス名を探索キーワードとして探索し、この探索キーワードを検出(ステップS103)するまで対象回路32の探索を続ける。このとき、設定パラメータ30の設定誤り等の原因で探索キーワードが検出できずに動作記述の全ての探索が完了した場合(ステップS104のYes)は、エラー(ステップS105)として処理を中断する。
1つの対象回路32を検出した後(ステップS103のYes)は、ステップS106において、1つの対象回路32についてのステート探索を行う。すなわちステート境界のキーワード探索を開始する。この場合、対象回路32におけるステート間の境界、すなわち、例えば、図2のステート(1)〜(3)同士間の境界となる境界キーワードを回路構造情報34から探索する。図2の例では、ステート(1)におけるプロセスAとBの境界点、ステート(2)では、プロセスBから分岐ステップを経てプロセスCに至る境界点を境界キーワードとする。
1つの対象回路32のステートを境界キーワードにより検出した後(ステップS108のYes)は、上記の境界点である、検出した検知ポイント(以後、位置情報という。)を回路構造情報34へ保存し(ステップS109)、ステート数を+1する(ステップS110)。この処理を、1つの対象回路32における全ステートの探索が完了(図2(3)を例に取ると、次の境界キーワード検出前に終了ステップ220に到達)するまで繰り返し行う(ステップS107)。ステート探索完了時(ステップS107のYes)、ステート数を回路構造情報34へ保存する(ステップS111)。最初であれば、ステート数は“1”である。このステート数は、各対象回路32を構成するプロセスの数に相当している。
この後、ステップS112において、回路構造情報34からステート境界点の位置情報と予めコピーしておいた対象回路32のオリジナル回路(図4の分割前のステート50に対応する回路)とを抽出し、図4に示すように、分割プロセスの生成を行って分割プロセス情報36とする(ステップS113)。
図4に示すような分割プロセス52〜55は、基本的にステート境界の位置情報の間を新たなプロセスとして関数化しただけである。分割プロセスの生成は回路構造情報34に基づき、ステート境界の探索時にカウントしていたステートの数だけ繰り返し行う(ステップS114)。
ステップS115において、図4に示したクロックゲーティングプロセス51の生成を行ってクロックゲーティングプロセス情報38として記憶部313に記憶する。このクロックゲーティングプロセス51は、ステート境界の探索時にカウント(ステップS110)していたステート数分を有するプロセスとなる。クロックゲーティングプロセス51では、各分割プロセス52〜55の処理完了(例えば、図2に示すステップS21,S29,S218)を入力し、これらをステートの遷移条件として使用する。そして、クロックゲーティングプロセス51の各プロセスに応じて、必要な各分割プロセス52〜55へクロックを供給するための構成を生成する。すなわち、図2を例に取ると、ステート(1)ではプロセスAにクロックを供給し、ステート(2)ではプロセスBにクロックを供給し、そしてステート(3)ではプロセスCにクロックを供給するための構成を生成する。
ステップS116において、ステップS113で生成した分割プロセス52〜55の分割プロセス情報36と、ステップS115で生成したクロックゲーティングプロセス51のクロックゲーティングプロセス情報38とを用いて対象回路部分のクロックゲーティング回路5(図4参照。)を生成する。分割プロセス52〜55とクロックゲーティングプロセス51との間の信号の受け渡しは、図4の説明で述べたとおりである。これらは、回路変換部39で実行される。
そして、ステップS118において、回路構造情報34に含まれる対象回路32を、クロックゲーティング対象回路の部分のみ生成したクロックゲーティング回路5へ差し替えることで、クロックゲーティング制御を追加した動作記述(新たな回路310)の生成が完了となる。
以上のステップS102〜S117を対象回路の数分だけ実行する。
以上のとおり、高位合成を行う際の動作記述のメリットを損なうことなく、ステート単位で動作不要な回路を停止させるクロックゲーティング制御を自動的に組込み、消費電力を抑えることが可能となる。
なお、ここで述べている動作記述のメリットとは、開発効率やメンテナンスの向上である。ユーザが手動でクロックゲーティング制御を組込むことも可能ではあるが、自動的に制御を組込むことでユーザ自身の記述は抽象度の高い設計を維持することができるため、結果的に開発効率や汎用性が向上する。
実施の形態2.
上記の実施の形態1では、ステート解析(探索)モードが自動モードの場合として説明してきたが、ステート解析モードはこの限りではない。ステート解析モードは自動モードの他、ステートの区切りをユーザが任意で行うことができる。このモードを手動モードとする。
手動モードでは、ステートの区切り位置をプラグマにて指定することが可能となる。
図6はステート解析モードが手動モード時のステートの区切りの記述例を示し、回路の先頭に[Clock_gate_mode=manual]を記述し、ステートの区切りを行う上段に[Clock_gate_punctuation]を記述することで回路構造解析時にステートの区切りとして検出することができる。
なお、手動モードはステート解析設定部31にてモードの解析を行い、回路構造情報34に情報を保存する構成となる。
実施の形態3.
上記の実施の形態1では、ステート解析モードが自動モードの場合について、また上記の実施の形態2ではステート解析モードが手動モードの場合について説明したが、いずれのモードにおいても全ての回路に対してクロックゲーティングを行うとは限らない。この場合はクロックゲーティングの対象を指定することが可能である。
クロックゲーティングの対象は、別のプラグマにて指定することが可能となる。指定方法の一例としては、[Clock_gate_off=1]又は[Clock_gate_off=0]とし、“1”と指定した以降の行から次に“0”と指定する行までの回路はクロックゲーティングの対象としないとすればよい。
なお、この場合、[Clock_gate_off]はディフォルト0とする。
1 従来のクロックゲーティング対象
2 本発明のクロックゲーティング対象
3 本発明の高位合成用記述変換装置
5 クロックゲーティング回路
30 入力用設定パラメータ
31 ステート解析設定部
32 入力用対象回路
33 回路構造解析部
34 回路構造情報
35 分割プロセス生成部
36 分割プロセス情報
37 クロックゲーティング制御部
38 クロックゲーティングプロセス情報
39 回路変換部
310 新たな回路
311 入力部
312 演算部
313 記憶部
314 出力部
50 分割前のステート
51 クロックゲーティングプロセス
52〜55 分割プロセス

Claims (7)

  1. 予め定義した設定パラメータ及び対象回路の動作記述を入力する入力部と、
    演算部と、
    記憶部と、
    出力部とを備え、
    前記演算部は、
    前記設定パラメータを解析するステート解析設定部と、
    前記ステート解析設定部から指示されたステート探索方法に従って前記対象回路の動作記述をステート毎に区切った回路構造情報を生成して前記記憶部に記憶する回路構造解析部と、
    前記回路構造情報から前記区切られた各ステートにおけるプロセス毎の分割プロセス情報を生成して前記記憶部に記憶する分割プロセス生成部と、
    前記回路構造情報からクロックを供給するためのクロックゲーティングプロセス情報を生成して前記記憶部に記憶するクロックゲーティング制御部と、
    前記分割プロセス情報と、前記クロックゲーティングプロセス情報とを用いてクロックゲーティング回路を生成し、前記回路構造情報から元の前記対象回路の動作記述を抽出し、対象部分だけ前記クロックゲーティング回路に差し替えた新たな回路の動作記述を生成して前記出力部に与える回路変換部とを有する
    高位合成用記述変換装置。
  2. 前記回路構造解析部は、前記ステート探索方法として前記対象回路の動作記述に対する境界キーワードの探索を行ってステート境界の位置情報を取得して前記クロックゲーティング制御部へ通知する自動探索モードを含む
    請求項1に記載の高位合成用記述変換装置。
  3. 前記回路構造解析部は、前記ステート解析設定部の解析結果に従ってプラグマにて記述された区切りを探索し、検知ポイントの到達条件を前記クロックゲーティング制御部へ通知する手動探索モードを含む
    請求項1に記載の高位合成用記述変換装置。
  4. 前記回路構造解析部では、前記ステート解析設定部の解析結果に従ってプラグマにて記述されたポイント間のみ探索する
    請求項1に記載の高位合成用記述変換装置。
  5. 前記分割プロセス生成部は、前記回路構造解析部で解析された前記回路構造情報のプロセス群を1ステートとした前記クロックゲーティング制御部から供給されるクロックで動作するプロセスを生成する
    請求項1に記載の高位合成用記述変換装置。
  6. 前記クロックゲーティング制御部は、前記回路構造解析部で解析した構造情報と、各プロセスから出力される検知ポイントの到達条件を基に実際に動作するプロセスのみへクロックを供給するクロックゲーティング制御を行う
    請求項1に記載の高位合成用記述変換装置。
  7. コンピュータを、
    予め定義した設定パラメータ及び対象回路の動作記述を入力する入力部として機能させ、
    前記設定パラメータを解析するステート解析設定部として機能させ、
    前記ステート解析設定部から指示されたステート探索方法に従って前記対象回路の動作記述をステート毎に区切った回路構造情報を生成する回路構造解析部として機能させ、
    前記回路構造情報から前記区切られた各ステートにおけるプロセス毎の分割プロセス情報を生成する分割プロセス生成部として機能させ、
    前記回路構造情報からクロックを供給するためのクロックゲーティングプロセス情報を生成するクロックゲーティング制御部として機能させ、
    前記分割プロセス生成部で生成した分割プロセス情報と、前記クロックゲーティング制御部で生成したクロックゲーティングプロセス情報とを用いてクロックゲーティング回路を生成し、前記回路構造情報から元の前記対象回路の動作記述を抽出し、対象部分だけ前記クロックゲーティング回路に差し替えた新たな回路の動作記述を生成して出力部に与える回路変換部として機能させる
    高位合成用記述変換プログラム。
JP2016172538A 2016-09-05 2016-09-05 高位合成用記述変換装置及び高位合成用記述変換プログラム Pending JP2018041129A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016172538A JP2018041129A (ja) 2016-09-05 2016-09-05 高位合成用記述変換装置及び高位合成用記述変換プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016172538A JP2018041129A (ja) 2016-09-05 2016-09-05 高位合成用記述変換装置及び高位合成用記述変換プログラム

Publications (1)

Publication Number Publication Date
JP2018041129A true JP2018041129A (ja) 2018-03-15

Family

ID=61626173

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016172538A Pending JP2018041129A (ja) 2016-09-05 2016-09-05 高位合成用記述変換装置及び高位合成用記述変換プログラム

Country Status (1)

Country Link
JP (1) JP2018041129A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11012075B2 (en) 2019-06-04 2021-05-18 Samsung Electronics Co., Ltd. Electronic system including FPGA and operation method thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11012075B2 (en) 2019-06-04 2021-05-18 Samsung Electronics Co., Ltd. Electronic system including FPGA and operation method thereof
US11967952B2 (en) 2019-06-04 2024-04-23 Samsung Electronics Co., Ltd. Electronic system including FPGA and operation method thereof

Similar Documents

Publication Publication Date Title
JP5769900B2 (ja) シーケンスプログラム部品作成プログラムおよびシーケンスプログラム部品作成装置
US10198543B2 (en) Sub-module physical refinement flow
US7263678B2 (en) Method of identifying floorplan problems in an integrated circuit layout
US7707530B2 (en) Incremental timing-driven, physical-synthesis using discrete optimization
JP2009116648A (ja) ソフトウェアの設計支援方法、設計支援装置及び設計支援プログラム
CN113901079A (zh) 用于基于内容的医学宏分类和搜索系统的系统和方法
JP3765923B2 (ja) ハードウェア合成方法およびハードウェア合成装置並びにハードウェア合成プログラムを記録した記録媒体
JP2005018114A (ja) プログラム保守支援装置、プログラム保守支援方法、およびプログラム
US8069026B2 (en) Clock gating analyzing apparatus, clock gating analyzing method, and computer product
US6834379B2 (en) Timing path detailer
US10311192B2 (en) System and method for power verification using efficient merging of power state tables
JP2008097130A (ja) タイミング解析方法および装置
CN116738925B (zh) 一种fpga详细布局方法及系统
JP2018041129A (ja) 高位合成用記述変換装置及び高位合成用記述変換プログラム
JP2014106639A (ja) 高位合成装置、高位合成方法、及び高位合成プログラム
US8701062B2 (en) Apparatus and method for generating a netlist using non-uniquified module during logic synthesis stage
JP2006268165A (ja) 集積回路のタイミング解析装置、集積回路のタイミング最適化装置、集積回路のタイミング解析方法、集積回路のタイミング最適化方法、集積回路基板の製造方法、制御プログラムおよび可読記録媒体
US9213794B2 (en) System and method for routing buffered interconnects in an integrated circuit
US8607175B1 (en) Identifying logic blocks in a synthesized logic design that have specified inputs
JP2005293349A (ja) 回路設計支援システム、設計方法及びプログラム
US20100223596A1 (en) Data processing device and method
Beaumont et al. Compositional design of asynchronous circuits from behavioural concepts
Gao et al. Interactive analog layout editing with instant placement legalization
JP2008250636A (ja) 論理設計支援システム及びプログラム
Reddy et al. A novel and unified digital ic design and automation methodology with reduced NRE cost and time-to-market