JP6317603B2 - 情報処理装置、情報処理装置の制御方法及びプログラム - Google Patents
情報処理装置、情報処理装置の制御方法及びプログラム Download PDFInfo
- Publication number
- JP6317603B2 JP6317603B2 JP2014049312A JP2014049312A JP6317603B2 JP 6317603 B2 JP6317603 B2 JP 6317603B2 JP 2014049312 A JP2014049312 A JP 2014049312A JP 2014049312 A JP2014049312 A JP 2014049312A JP 6317603 B2 JP6317603 B2 JP 6317603B2
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- storage element
- processing apparatus
- information processing
- stage
- 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.)
- Active
Links
Images
Description
本発明は、LSIなどの半導体設計における論理合成を行う情報処理装置、情報処理装置の制御方法及びプログラムに関する。
Large Scale Integration(以下、LSI)の設計手順として、一般的に、以下のフローが知られている。最初に、要求仕様にあった論理回路をVerilog-HDLなどの専用のハードウェア記述言語で記述し、Register Transfer Level(以下、RTL)の論理回路を作成する。RTL論理回路は、フリップフロップ(以下、FF)と呼ばれる記憶素子と記憶素子を持たない組み合わせ回路で構成される。
RTL論理回路は、FFを基準とした同期設計で組まれることが多く、FF間は1クロックサイクルでタイミングが間に合うことが基本となる。RTL論理回路作成の際には、タイミングが間に合うかどうかを、適応する半導体プロセス、動作周波数などを加味して、検討し、必要に応じてタイミングを間に合わすためにFFを冗長に組み込んで作成する。次に、作成したRTL論理回路が要求仕様にあっていることを確認後、製造する半導体プロセスを有するベンダーから提供される半導体プロセスの物理特性を反映したセルライブラリ、及び、生成されるゲートレベル回路の動作周波数などを設定したタイミング制約ファイルを使用して、RTL論理回路を、セルライブラリに含まれているスタンダードセルから構成されるゲートレベル回路に変換する論理合成を行い、ゲートレベル回路を生成する。
ここで、論理合成の結果を見て、この後行われるタイミング検証で問題になるかどうかを判断し、タイミングが間に合わないと判断した場合は、RTL論理回路作成フェーズまで戻り、FFを冗長に組み込んで、再度、論理合成を行う。次に、生成されたゲートレベル回路において、回路内の信号が決められた時間内で動作するかを検証するタイミング検証を行う。最後に、ゲートレベル回路の各素子を物理的に配置配線し、配置配線が終了すると製造工程に移行する。
近年の半導体プロセスの微細化に伴い、LSIの回路規模は肥大化し、実装されるFFの数も膨大な数となっている。肥大化する回路規模や、それに伴う配置配線作業の増大に対して、FF間のタイミング調整を必要としないフォルスパス設定を自動で抽出して、回路規模削減や配置配線作業の軽減を行う技術が知られている(特許文献1)。
しかしながら、特許文献1の技術は、フォルスパスを設定することで回路規模削減を行うことができるが、FF間の組み合わせ回路に関して削減するものであって、FFそのものを削除することができないといった問題があった。FFが削除されないため、FFへ供給するクロックラインやFFへの配線、物理的なFFの領域は必要となり、回路規模削減や配置配線作業の軽減は限られていた。
本発明は上記問題点に鑑み、タイミング緩和が可能な回路を検出し、FFを削除して、ゲートレベル回路を生成することを目的とする。
上記課題を解決するための本発明は、論理回路の動作を記述したハードウェア記述ファイルに基づき論理合成を行う情報処理装置であって、
前記論理回路から、記憶素子間に記憶素子を含む回路構成を抽出する抽出手段と、
抽出された前記回路構成のそれぞれについて、初段の記憶素子の出力信号から最終段の記憶素子への入力までのいずれかの信号が、他の回路構成と接続されているか否かを判定する判定手段と、
前記他の回路構成と接続されていないと判定された前記回路構成につき、当該回路構成における前記初段と前記最終段の記憶素子を除く他の少なくとも1つの記憶素子を削除してゲートレベル回路を生成する生成手段とを備える。
前記論理回路から、記憶素子間に記憶素子を含む回路構成を抽出する抽出手段と、
抽出された前記回路構成のそれぞれについて、初段の記憶素子の出力信号から最終段の記憶素子への入力までのいずれかの信号が、他の回路構成と接続されているか否かを判定する判定手段と、
前記他の回路構成と接続されていないと判定された前記回路構成につき、当該回路構成における前記初段と前記最終段の記憶素子を除く他の少なくとも1つの記憶素子を削除してゲートレベル回路を生成する生成手段とを備える。
本発明によれば、冗長なFFを削除することができ、回路規模が縮小し、配置配線作業の軽減、消費電力の削減が可能となる。
以下、図面を参照しながら本発明の好適な実施の形態を説明する。
[実施形態1]
図1に本発明の実施形態に対応する情報処理装置のハードウェア構成図を示す。当該情報処理装置は例えばパーソナルコンピュータ(PC)として実現することができるが、計算機性能を有する機器であればよく、PCに限定されるものではない。
図1において、CPU101は、HD(ハードディスク)103に格納されているOS、アプリケーションプログラム等を実行し、RAM102にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。RAM102は、CPU101の主メモリ、ワークエリア等として機能する。HD103は、アプリケーションプログラム、ドライバプログラム、OS、制御プログラム、本実施形態に対応する論理合成処理を実行するための処理プログラム等を格納している。
図1に本発明の実施形態に対応する情報処理装置のハードウェア構成図を示す。当該情報処理装置は例えばパーソナルコンピュータ(PC)として実現することができるが、計算機性能を有する機器であればよく、PCに限定されるものではない。
図1において、CPU101は、HD(ハードディスク)103に格納されているOS、アプリケーションプログラム等を実行し、RAM102にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。RAM102は、CPU101の主メモリ、ワークエリア等として機能する。HD103は、アプリケーションプログラム、ドライバプログラム、OS、制御プログラム、本実施形態に対応する論理合成処理を実行するための処理プログラム等を格納している。
ディスプレイ104は、操作部109から入力したコマンドや、外部から取得した情報等を表示するための表示部である。インターフェイス(以下、I/Fという)105は、外部装置やネットワークと接続するための通信インターフェイスである。ROM106には、基本I/Oプログラム等のプログラムを記憶する。
外部記憶ドライブ107は、メディア108に記憶されたプログラム等を本コンピュータシステムにロードすることができる。記録媒体としてのメディア108は、所定のプログラムおよび関連データを格納する。操作部109は、本装置の操作者が、指示入力を行うためのユーザインタフェースであり、キーボードやマウスで構成される。システムバス110は、装置内のデータの流れを司る。
次に図2を参照して、本実施形態に対応する論理合成処理を実行する論理合成部の機能ブロック図を示す。例えばHD103に格納されている論理合成処理用プログラムをCPU101が実行する場合、当該CPU101が図2に記載の各機能ブロックとして機能する。
図2において、論理合成部200は生成部201、回路抽出部202、判定部203を含む。生成部201は、回路のタイミング情報を記載した論理合成制約ファイルと回路、配線の遅延情報が書かれた物理情報を用いて論理合成して、回路を構成する基本単位であるベーシックセルを使用した回路記述ファイルであるゲートレベル回路を生成する。また、ゲートレベル回路の修正を行う。回路抽出部202は、生成されたゲートレベル回路に基づき論理回路から所定の回路構成を抽出する。判定部203は、回路抽出部202が抽出した回路構成について、削除すべき記憶素子を特定するための判定を行う。
以下、具体的な論理合成処理について説明するが、それに先だって図3を参照して本実施形態における論理合成処理の対象となる論理回路の構成を説明する。図3(a)に示す回路315は、本実施形態に対応する処理を適応する前の回路全体を示す。回路315は、記憶素子であるフリップ・フロップ(FF)300、303、304、308、309、310、312、314を含む。また、組み合わせ回路301、302、305、306、307、311、313を含む。また、図3(b)の回路317は本実施形態に対応する処理を適応した後の回路全体を示す。回路317は、FF300、309、310、312、314と、組み合わせ回路301、302、305、306、307、311、313と共に、バッファ316を含む。FFは、情報を保持することができるため記憶素子として機能することが可能であり、情報を保持して後段の回路に渡す際に使用される。組み合わせ回路は、加算、減算、乗算、除算、セレクタなどの単なる組み合わせ論理で構成され、各情報の演算や選択を行う際に使用される。バッファは、タイミング調整や信号の駆動能力調整を行う際に使用される。
次に図4を参照して、本実施形態に対応する論理合成処理を説明する。図4は本実施形態に対応する論理合成処理の一例を説明するフローチャートである。図4に対応する処理は、例えばHD103に格納されている論理合成処理用プログラムをCPU101が実行することにより実現される。
まず、S400において、生成部201が論理回路の動作が記述されたハードウェア記述ファイルを読み込みS401に進む。S401において、生成部201は回路のタイミング情報を記載した論理合成制約ファイルと回路、配線の遅延情報が書かれた物理情報を用いて論理合成して、回路を構成する基本単位であるベーシックセルを使用した回路記述ファイルであるゲートレベル回路を生成し、S402に進む。S402において、回路抽出部202は、記憶素子間に別の記憶素子が入る以下の回路構成を抽出し、S403に進む。
・FF300とFF308、FF300とFF309、FF300とFF310、FF300とFF312、FF300とFF314
・FF303とFF312、FF303とFF314
・FF304とFF312、FF304とFF314
・FF308とFF314
・FF309とFF314
・FF310とFF314
S403において、判定部203は、S402で回路抽出部202が抽出した各回路構成について、当該回路構成の初段のFFの出力信号から最終段のFFへの入力信号までの全信号が、他の回路と接続(信号が共用)されているかどうかを判定する。上記回路構成のそれぞれについて判定すると、具体的に以下のようになる。
・FF300とFF308の回路構成と、FF300とFF309の回路構成とでは、FF303からの出力信号を共用している。
・FF300とFF308又はFF309の回路構成と、FF300とFF310の回路構成とでは、FF300からの出力信号を共用している。
・FF303とFF312の回路構成と、FF303とFF312の回路構成とでは、FF312への入力信号が共用されている。
・FF303とFF314の回路構成と、FF303とFF314の回路構成とでは、FF314への入力信号が共用されている。
・FF303とFF312の回路構成と、FF304とFF312の回路構成とでは、FF312への入力信号が共用されている。
・FF303とFF314の回路構成と、FF304とFF314の回路構成とでは、FF314への入力信号が共用されている。
・FF308とFF314の回路構成と、FF309とFF314の回路構成とでは、FF314への入力信号が共用されている。
・FF308とFF314の回路構成と、FF310とFF314の回路構成とでは、FF314への入力信号が共用されている。
・FF300とFF312の回路構成は、FF300とFF312の間の信号は外部に出力されていない。
・FF300とFF314の回路構成では、FF314に入力される組み合わせ回路313からの出力信号が分岐している。
まず、S400において、生成部201が論理回路の動作が記述されたハードウェア記述ファイルを読み込みS401に進む。S401において、生成部201は回路のタイミング情報を記載した論理合成制約ファイルと回路、配線の遅延情報が書かれた物理情報を用いて論理合成して、回路を構成する基本単位であるベーシックセルを使用した回路記述ファイルであるゲートレベル回路を生成し、S402に進む。S402において、回路抽出部202は、記憶素子間に別の記憶素子が入る以下の回路構成を抽出し、S403に進む。
・FF300とFF308、FF300とFF309、FF300とFF310、FF300とFF312、FF300とFF314
・FF303とFF312、FF303とFF314
・FF304とFF312、FF304とFF314
・FF308とFF314
・FF309とFF314
・FF310とFF314
S403において、判定部203は、S402で回路抽出部202が抽出した各回路構成について、当該回路構成の初段のFFの出力信号から最終段のFFへの入力信号までの全信号が、他の回路と接続(信号が共用)されているかどうかを判定する。上記回路構成のそれぞれについて判定すると、具体的に以下のようになる。
・FF300とFF308の回路構成と、FF300とFF309の回路構成とでは、FF303からの出力信号を共用している。
・FF300とFF308又はFF309の回路構成と、FF300とFF310の回路構成とでは、FF300からの出力信号を共用している。
・FF303とFF312の回路構成と、FF303とFF312の回路構成とでは、FF312への入力信号が共用されている。
・FF303とFF314の回路構成と、FF303とFF314の回路構成とでは、FF314への入力信号が共用されている。
・FF303とFF312の回路構成と、FF304とFF312の回路構成とでは、FF312への入力信号が共用されている。
・FF303とFF314の回路構成と、FF304とFF314の回路構成とでは、FF314への入力信号が共用されている。
・FF308とFF314の回路構成と、FF309とFF314の回路構成とでは、FF314への入力信号が共用されている。
・FF308とFF314の回路構成と、FF310とFF314の回路構成とでは、FF314への入力信号が共用されている。
・FF300とFF312の回路構成は、FF300とFF312の間の信号は外部に出力されていない。
・FF300とFF314の回路構成では、FF314に入力される組み合わせ回路313からの出力信号が分岐している。
以上に基づき、以下の回路構成を除外してS404に進む。
・FF300とFF308、FF300とFF309、FF300とFF310、FF300とFF314
・FF303とFF312、FF303とFF314
・FF304とFF312、FF304とFF314
・FF308とFF314
・FF309とFF314
・FF310とFF314
この結果、FF300とFF312の回路構成のみが除外されずに残る。S404において、生成部201は、回路構成に含まれるFFのうち、削除すべきFFを判定する。上記の例ではFF300とFF312の間のFFは他の回路に接続されていないことから、タイミング調整用FFであって、機能を実現するためのFFではないと判定できる。よって、削除対象に選ばれるFFの候補は304、304、308、309、310である。
・FF300とFF308、FF300とFF309、FF300とFF310、FF300とFF314
・FF303とFF312、FF303とFF314
・FF304とFF312、FF304とFF314
・FF308とFF314
・FF309とFF314
・FF310とFF314
この結果、FF300とFF312の回路構成のみが除外されずに残る。S404において、生成部201は、回路構成に含まれるFFのうち、削除すべきFFを判定する。上記の例ではFF300とFF312の間のFFは他の回路に接続されていないことから、タイミング調整用FFであって、機能を実現するためのFFではないと判定できる。よって、削除対象に選ばれるFFの候補は304、304、308、309、310である。
生成部201は、候補となるFFを削除した場合の信号遅延が、論理回路が動作するためのタイミングとの関連で許容できる範囲であるかを判定する。具体的にFF300とFF312間のFFに対して、FF間の周期を規定するクロックサイクルよりも、組み合わせ回路による遅延情報と物理情報による配線遅延が大きいかどうかを比較する。仮にクロックサイクルよりも大きな遅延が生ずる場合には論理回路の動作タイミングにずれが生じてしまうため、そのような遅延は許容できないこととなる。よって、組み合わせ回路による遅延情報と物理情報による配線遅延の合計値が規定されたクロックサイクルより小さい場合は削除可能なFFとして抽出するが、クロックサイクル以上の場合は当該FFは削除しない。その後S405に進む。本実施形態では、FF303、FF304、FF308、FF309が抽出できる。一方、FF310は、削除してしまうとFF300から組み合わせ回路302、307、311を通ってFF312にいくパスが規定のクロックサイクルに間に合わないため抽出できなかったとする。
S405において生成部201は、削除したFFの代わりに遅延素子を挿入するか否かの判定を行う。具体的に、FFを削除したことによって到達するタイミングが早くなってしまいFF削除前の論理と変わってしまい、論理回路の動作に影響を与える場合は、バッファ挿入の判定を行う。その後S406に進む。本実施形態では、FF303、FF304、FF308、FF309に対してバッファ挿入を行うとの判定が成された場合を想定している。
S406において、生成部201は、FFを削除してバッファと置き換えた場合の消費電力について判定する。本実施形態ではFFを使用した場合よりもバッファに置き換えた場合の方が消費電力が小さい場合にFFを削除してバッファに置き換える。具体的に、405で挿入したバッファの消費電力増加分と削除したFFの消費電力減少分とを比較し、バッファによる消費電力増加分の方が大きい場合には、FFの削除を取りやめてS407に進む。本実施形態では、FF309の削除を取りやめたとする。
S407において、生成部201は、S401で生成されたゲートレベル回路にS402からS406までの処理を施した回路317を最終のゲートレベル回路としてゲートレベル回路を完成させ、本処理を終了する。
本実施形態のS406における挿入したバッファの消費電力増加分と削除したFFの消費電力減少分との比較には、回路構造から静的に比較してもよいし、Switching Activity Interchange formatファイルやValue Change Dumpファイルのようなデータのスイッチングがわかるパターンファイルを用いて比較してもよい。
以上、説明したように、RTLから存在する回路内のタイミング調整用FFにおいて、削減可能なFFを削除することで、回路規模が小さく、消費電力の少ないゲートレベル回路を生成することが可能となる。
[変形例]
上述の実施形態1では、抽出された各回路構成につき、初段のFFの出力信号から最終段のFFへの入力までの全信号が他の回路構成と接続されているかどうかを判定した。これに対し、FF間に対して、クロック信号、リセット信号、モード信号などの共通の制御信号を除いてもよい。なお、クロック信号は各FFに供給され、リセット信号は各FFと各組み合わせ回路に供給され、制御信号は各組み合わせ回路に供給される。
上述の実施形態1では、抽出された各回路構成につき、初段のFFの出力信号から最終段のFFへの入力までの全信号が他の回路構成と接続されているかどうかを判定した。これに対し、FF間に対して、クロック信号、リセット信号、モード信号などの共通の制御信号を除いてもよい。なお、クロック信号は各FFに供給され、リセット信号は各FFと各組み合わせ回路に供給され、制御信号は各組み合わせ回路に供給される。
これにより、削除可能なFFを削除する際に、回路内で共通に使用されているクロック信号、リセット信号、制御信号を除外して判定するので、正確に削減可能なFFを抽出可能となる。
[実施形態2]
上記実施形態では削除可能とした記憶素子(FF)を遅延素子(バッファ)に置き換えていた。本実施形態では、その代わりに、或いは、それに追加して当該削除される記憶素子の入力に対してマルチサイクルパスを設定するか、或いはクロックゲーティング回路を利用する。以下の本実施形態では、記憶素子を削除可能と判定したFF間に対してマルチサイクルパスを設定する場合、削除可能と判定した記憶素子(FF)を、クロックゲーティング回路に変更する場合をそれぞれ説明する。
上記実施形態では削除可能とした記憶素子(FF)を遅延素子(バッファ)に置き換えていた。本実施形態では、その代わりに、或いは、それに追加して当該削除される記憶素子の入力に対してマルチサイクルパスを設定するか、或いはクロックゲーティング回路を利用する。以下の本実施形態では、記憶素子を削除可能と判定したFF間に対してマルチサイクルパスを設定する場合、削除可能と判定した記憶素子(FF)を、クロックゲーティング回路に変更する場合をそれぞれ説明する。
図5は本発明の一実施形態を説明する回路構成を示す図である。本実施形態に対応する処理を適応する前の回路は、図3(a)に示したものと同様である。回路517は本実施形態に対応する処理を適応した後の回路全体を示し、FF300、308、309、310、312、314を含む。また、組み合わせ回路301、302、305、306、307、311、313と、クロックゲーティング用のANDゲート501を含む。
次に図6を参照して、本実施形態に対応する論理合成処理を説明する。図6は本実施形態に対応する論理合成処理の一例を説明するフローチャートである。図6に対応する処理は、例えばHD103に格納されている論理合成処理用プログラムをCPU101が実行することにより実現される。図6はS601を除いて基本的に図4の動作と同様であり、同一の参照番号を付している個所については図4と同様の処理が行われることとして、繰り返しとなる説明は省略する。
S601において、生成部201は削除されるFFの代わりに設定するマルチサイクル及びクロックゲーティングについて判定する。具体的に、本実施形態ではS404における削除素子の判定において削除可能なFFとしてFF503、FF504が抽出され、これらについてマルチサイクル設定、クロックゲーティング回路の判定を行う。マルチサイクル設定かクロックゲーティング回路の挿入のどちらを選択するかは、マルチサイクル設定によるタイミング緩和による消費電力削減効果と、クロックゲーティング回路の挿入による消費電力削減効果で大きい方を選択する。
また、クロックゲーティング回路に用いるイネーブル信号は、FF500のデータをラッチするタイミング信号を必要なFF段数で叩いた信号を使用することができる。本実施形態では、FF503を削除するために、FF500からFF508とFF500からFF509のパスにマルチサイクルパス設定を行い、FF504を削除するためにFF510にクロックゲーティング回路を挿入したとする。その後、S407に進む。
S407では、S401で生成されたゲートレベル回路にS402からS404及びS601の処理を施した回路517を最終のゲートレベル回路として完成させ、本処理を終了する。
以上、説明したように、削除可能と判定したFFに対してマルチサイクル設定、クロックゲーティング回路挿入を行うことで、削除した場合に近い効果を得られることが可能となる。削除可能と判定したFFを削除した場合、実際の物理レイアウト工程ではタイミング収束できず、FFが必要になる場合も考えられる。その場合、論理回路にFFを追加し、回路の再検証が必要となり効率が悪い。本実施形態は、そのような場合に有効となる。
なお、本発明は、RTLを読み込んでゲートレベル回路を出力する場合の論理合成に関して説明したが、RTLを読み込んでRTLを出力する場合、ゲートレベル回路を読み込んでゲートレベル回路を出力する場合も適応するべきものである。なお、本発明は、本発明の技術思想の範囲内において、上記実施形態に限定されるものではなく、対象となる回路形態により適時変更されて適応するべきものである。
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
Claims (11)
- 論理回路の動作を記述したハードウェア記述ファイルに基づき論理合成を行う情報処理装置であって、
前記論理回路から、記憶素子間に記憶素子を含む回路構成を抽出する抽出手段と、
抽出された前記回路構成のそれぞれについて、初段の記憶素子の出力信号から最終段の記憶素子への入力までのいずれかの信号が、他の回路構成と接続されているか否かを判定する判定手段と、
前記他の回路構成と接続されていないと判定された前記回路構成につき、当該回路構成における前記初段と前記最終段の記憶素子を除く他の少なくとも1つの記憶素子を削除してゲートレベル回路を生成する生成手段と、
を備えることを特徴とする情報処理装置。 - 前記生成手段は、前記初段と前記最終段の記憶素子を除く他の記憶素子を削除した場合の信号の遅延が、前記論理回路が動作するためのタイミングとの関連で許容できる範囲であるか否かに基づき、削除すべき記憶素子を判定することを特徴とする請求項1に記載の情報処理装置。
- 前記生成手段は、記憶素子間の周期を規定するサイクルよりも、前記記憶素子を削除した場合の遅延が大きいかどうかに基づいて、該遅延が前記論理回路が動作するためのタイミングとの関連で許容できる範囲であるか否かを判定することを特徴とする請求項2に記載の情報処理装置。
- 前記生成手段は、削除された記憶素子を遅延素子と置き換えて前記ゲートレベル回路を生成することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
- 前記生成手段は、前記記憶素子の削除により前記回路構成の動作タイミングが早くなり、前記論理回路の動作に影響を与える場合に前記削除された記憶素子を前記遅延素子と置き換えることを特徴とする請求項4に記載の情報処理装置。
- 前記生成手段は、前記回路構成における前記初段と前記最終段の記憶素子を除く他の記憶素子のうち、削除して前記遅延素子に置き換えた場合に消費電力が減少する記憶素子を削除することを特徴とする請求項4又は5に記載の情報処理装置。
- 前記生成手段は、前記記憶素子を削除する場合に、該記憶素子に入力されるパスに対してマルチサイクルパスを設定して前記ゲートレベル回路を生成することを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。
- 前記生成手段は、前記記憶素子を削除する場合に、該記憶素子の後段の記憶素子にクロックゲーティング回路を追加して前記ゲートレベル回路を生成することを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
- 前記判定手段は、前記初段の記憶素子の出力信号から最終段の記憶素子への入力までの信号につき、前記回路構成に供給されるクロック信号、リセット信号及び制御信号を除いた信号について前記判定を行うことを特徴とする請求項1から8のいずれか1項に記載の情報処理装置。
- 論理回路の動作を記述したハードウェア記述ファイルに基づき論理合成を行う情報処理装置の制御方法であって、
前記論理回路から、記憶素子間に記憶素子を含む回路構成を抽出する抽出工程と、
抽出された前記回路構成のそれぞれについて、初段の記憶素子の出力信号から最終段の記憶素子への入力までのいずれかの信号が、他の回路構成と接続されているか否かを判定する判定工程と、
前記他の回路構成と接続されていないと判定された前記回路構成につき、当該回路構成における前記初段と前記最終段の記憶素子を除く他の少なくとも1つの記憶素子を削除してゲートレベル回路を生成する生成工程と、
を備えることを特徴とする情報処理装置の制御方法。 - コンピュータを請求項1乃至9のいずれか1項に記載の情報処理装置の各手段として動作させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014049312A JP6317603B2 (ja) | 2014-03-12 | 2014-03-12 | 情報処理装置、情報処理装置の制御方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014049312A JP6317603B2 (ja) | 2014-03-12 | 2014-03-12 | 情報処理装置、情報処理装置の制御方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015172915A JP2015172915A (ja) | 2015-10-01 |
JP6317603B2 true JP6317603B2 (ja) | 2018-04-25 |
Family
ID=54260183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014049312A Active JP6317603B2 (ja) | 2014-03-12 | 2014-03-12 | 情報処理装置、情報処理装置の制御方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6317603B2 (ja) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000208636A (ja) * | 1998-11-12 | 2000-07-28 | Matsushita Electric Ind Co Ltd | 半導体集積回路の設計方法 |
JP4108418B2 (ja) * | 2002-09-10 | 2008-06-25 | 松下電器産業株式会社 | 半導体集積回路の設計方法 |
JP4044083B2 (ja) * | 2004-09-15 | 2008-02-06 | 東芝マイクロエレクトロニクス株式会社 | 論理回路、クロックスキュー削減システム、及びクロックスキュー削減方法 |
JP4886559B2 (ja) * | 2007-03-15 | 2012-02-29 | 株式会社リコー | 半導体設計支援装置、半導体設計支援方法および半導体設計支援プログラム |
-
2014
- 2014-03-12 JP JP2014049312A patent/JP6317603B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2015172915A (ja) | 2015-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9026978B1 (en) | Reverse interface logic model for optimizing physical hierarchy under full chip constraint | |
US8594988B1 (en) | Method and apparatus for circuit simulation using parallel computing | |
KR20040034613A (ko) | 계층적 집적회로 디자인 시스템에서 변조하기 위한 디자인제약을 생성하는 방법 | |
JP2007183932A (ja) | タイミング解析方法及びタイミング解析装置 | |
US20100058275A1 (en) | Top Level Hierarchy Wiring Via 1xN Compiler | |
US9201996B2 (en) | Behavioral synthesis apparatus, behavioral synthesis method, data processing system including behavioral synthesis apparatus, and non-transitory computer readable medium storing behavioral synthesis program | |
JP2014238836A (ja) | 計算流体動力学モデルの準備のための方法及び装置 | |
US10248746B1 (en) | Method and apparatus for estimating ideal power of an integrated circuit design | |
US9842187B1 (en) | Representation of complex timing characteristics of startpoint-endpoint pairs in a circuit design | |
US10437946B1 (en) | Using implemented core sources for simulation | |
US20040210861A1 (en) | System and method for optimizing exceptions | |
US9047434B2 (en) | Clustering for processing of circuit design data | |
US10664561B1 (en) | Automatic pipelining of memory circuits | |
US8332798B2 (en) | Using synthesis to place macros | |
JP2007004563A (ja) | ライブラリ作成装置、ライブラリ作成プログラムおよびライブラリ作成方法 | |
US10162917B1 (en) | Method and system for implementing selective transformation for low power verification | |
KR102611888B1 (ko) | 스위칭 액티비티에 기초한 반도체 장치의 배치 방법 및 이에 의해 제조된 반도체 장치 | |
US9639644B1 (en) | Method and apparatus for master-clone optimization during circuit analysis | |
JP2002108958A (ja) | 回路設計システム、回路設計方法および回路設計プログラムを格納したコンピュータ読取り可能な記録媒体 | |
JP5979965B2 (ja) | 回路設計支援装置及び回路設計支援方法及びプログラム | |
JP6317603B2 (ja) | 情報処理装置、情報処理装置の制御方法及びプログラム | |
US10152566B1 (en) | Constraint based bit-stream compression in hardware for programmable devices | |
US10296686B1 (en) | Switching-activity-based selection of low-power sequential circuitry | |
US6532584B1 (en) | Circuit synthesis method | |
US9489480B1 (en) | Techniques for compiling and generating a performance analysis for an integrated circuit design |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170309 |
|
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: 20180302 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180330 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6317603 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |