JP5009243B2 - 動作合成装置、動作合成方法、プログラム、記録媒体、および半導体集積回路の製造方法 - Google Patents
動作合成装置、動作合成方法、プログラム、記録媒体、および半導体集積回路の製造方法 Download PDFInfo
- Publication number
- JP5009243B2 JP5009243B2 JP2008174004A JP2008174004A JP5009243B2 JP 5009243 B2 JP5009243 B2 JP 5009243B2 JP 2008174004 A JP2008174004 A JP 2008174004A JP 2008174004 A JP2008174004 A JP 2008174004A JP 5009243 B2 JP5009243 B2 JP 5009243B2
- Authority
- JP
- Japan
- Prior art keywords
- constraint
- behavioral synthesis
- violation
- node
- scheduling
- 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
Links
Images
Description
図11では、データフローグラブGf2は、2つの乗算を表す節点21、22と、1つの加算を表す節点23を含み、節点21で入力データaと入力データbとを乗算して得れらた結果と、節点22で入力データbと入力データcを乗算して得られた結果とが節点23で加算され、その加算結果が出力データxとして出力されることが表されている。
以下、本発明の実施の形態を図面を用いて説明する。
図2は、本実施形態の動作合成装置1000におけるスケジューリング制約違反検出手段805の処理フローについて説明する図である。
802 動作合成手段
803 出力装置
804 データベース
805 スケジューリング制約違反検出手段
805a 制約グラフ生成手段
805b 繰り返し間制約生成手段
805c 制約違反検出手段
805d 違反箇所検出・出力手段
805e 違反量検出・出力手段
1000 動作合成装置
Claims (12)
- 回路で実行される演算処理のアルゴリズムを記述した動作記述から、各種演算処理を行う演算処理部を示す各節点と、該節点間でのデータの流れを示す入出力枝とを含むデータフローグラフを生成し、該データフローグラフに基づいて動作合成を行なってハードウェア回路構成を作成する動作合成装置であって、
複数の節点を含むループ処理をパイプライン化したデータフローグラフを作成する動作合成手段と、
該ループ処理のパイプライン化により該データフローグラフのスケジューリング制約違反が発生するか否かを検出するスケジューリング違反検出手段とを備え、
該スケジューリング違反検出手段は、
該ループ処理をパイプライン化したデータフローグラフに、該ループ処理の開始を表す開始節点と終了を表す終了節点を設定してなるグラフの各枝に、該各枝で接続された節点間の演算の時間関係を表す重みを付与することにより得られた制約グラフを用い、該制約グラフの節点間の演算の時間関係と、該ループ処理の繰り返し時間間隔の制約である繰り返し間制約とに基づいて、該スケジューリング制約違反が発生するか否かを検出する動作合成装置。 - 請求項1に記載の動作合成装置において、
前記ループ処理における第1節点で生成した値を、該ループ処理のn回後の繰り返し時に、該ループ処理における第2節点で使用するとき、該ループ処理の繰り返し時間間隔であるスループットの値をtpとして、該第1節点での演算開始から該第2節点での演算開始までに必要な時間である重みに対してtp×nの値を減算して前記繰り返し間制約を生成する繰り返し間制約生成手段を備えた動作合成装置。 - 請求項2に記載の動作合成装置において、
前記繰り返し間制約生成手段で生成した繰り返し間制約を含む、演算の順序と時間関係を表す前記制約グラフ中に、前記重みの合計が正である閉ループがあるか否かの判断により制約違反があるかを判断する制約違反検出手段を備えた動作合成装置。 - 請求項2に記載の動作合成装置において、
前記繰り返し間制約生成手段を、前記ループ処理の前記第1節点から前記第2節点に向かう繰り返し間制約枝を前記繰り返し間制約として複数生成するよう構成し、
生成した繰り返し間制約枝のうち1つを前記制約グラフから削除し、該削除により制約違反がなくなればその枝がスケジューリング制約違反の原因と判断し、あるいは該削除後に制約違反があれば、別の繰り返し間制約枝を該制約グラフから削除する処理の繰り返しにより、スケジューリング制約違反の原因箇所を検出する原因箇所検出手段を備えた動作合成装置。 - 請求項4に記載の動作合成装置において、
前記スケジューリング制約違反の原因となっている繰り返し間制約枝に対して、前記重みを1減らし、該重み削減により、制約違反がなくなれば減らした重みの合計値をスケジューリング制約違反の量として検出し、あるいは、該重み削減後に制約違反がまだあるならば、さらに重みを1減らす処理の繰り返しにより、スケジューリング制約違反量を検出する制約違反量検出手段を備えた動作合成装置。 - コンピュータシステムにより、回路で実行される演算処理のアルゴリズムを記述した動作記述から、各種演算処理を行う演算処理部を示す各節点と、該節点間でのデータの流れを示す入出力枝とを含むデータフローグラフを生成し、該データフローグラフに基づいて動作合成を行なってハードウェア回路構成を作成する動作合成方法であって、
該コンピュータシステムにおける動作合成手段が複数の節点を含むループ処理をパイプライン化したデータフローグラフを作成する動作合成ステップと、
該コンピュータシステムにおけるスケジューリング違反検出手段が該ループ処理のパイプライン化により該データフローグラフのスケジューリング制約違反が発生するか否かを検出するスケジューリング違反検出ステップとを含み、
該スケジューリング違反検出ステップでは、
該スケジューリング違反検出手段が、該ループ処理をパイプライン化したデータフローグラフに、該ループ処理の開始を表す開始節点と終了を表す終了節点を設定してなるグラフの各枝に、該各枝で接続された節点間の演算の時間関係を表す重みを付与することにより得られた制約グラフを用い、該制約グラフの節点間の演算の時間関係と、該ループ処理の繰り返し時間間隔の制約である繰り返し間制約とに基づいて、該スケジューリング制約違反が発生するか否かを検出する動作合成方法。 - 請求項6に記載の動作合成方法において、
前記コンピュータシステムにおける繰り返し間制約生成手段が、前記ループ処理における第1節点で生成した値を、該ループ処理のn回後の繰り返し時に、該ループ処理における第2節点で使用するとき、該ループ処理の繰り返し時間間隔であるスループットの値をtpとして、該第1節点での演算開始から該第2節点での演算開始までに必要な時間である重みに対してtp×nの値を減算して前記繰り返し間制約を生成する繰り返し間制約生成ステップを含む動作合成方法。 - 請求項7に記載の動作合成方法において、
前記コンピュータシステムにおける制約違反検出手段が、前記繰り返し間制約生成ステップで生成した繰り返し間制約を含む、演算の順序と時間関係を表す前記制約グラフ中に前記重み合計が正である閉ループがあるか否かの判断により制約違反があるかを判断する制約違反検出ステップを含む動作合成方法。 - 請求項7に記載の動作合成方法において、
前記繰り返し間制約生成ステップを、前記繰り返し間制約生成手段が、前記ループ処理の前記第1節点から前記第2節点に向かう繰り返し間制約枝を前記繰り返し間制約として複数生成するステップとし、
前記コンピュータシステムにおける原因箇所検出手段が、生成した繰り返し間制約枝のうち1つを前記制約グラフから削除し、該削除により制約違反がなくなればその枝がスケジューリング制約違反の原因と判断し、あるいは該削除後に制約違反があれば、別の繰り返し間制約枝を該制約グラフから削除する処理の繰り返しにより、スケジューリング制約違反の原因箇所を検出する原因箇所検出ステップを含む動作合成方法。 - 請求項9に記載の動作合成方法において、
前記コンピュータシステムにおける制約違反量検出手段が、制約違反の原因となっている繰り返し間制約枝に対して、前記重みを1減らし、該重み削減により、制約違反がなくなれば減らした重みの合計値をスケジューリング制約違反の量として検出し、あるいは、該重み削減後に制約違反がまだあるならば、さらに重みを1減らす処理の繰り返しにより、スケジューリング制約違反量を検出する制約違反量検出ステップを含む動作合成方法。 - 請求項6から10のいずれかに記載の動作合成方法の各ステップをコンピュータに実行させるための処理手順が記述されたプログラム。
- 請求項11に記載のプログラムが格納されたコンピュータ読み取り可能な可読記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008174004A JP5009243B2 (ja) | 2008-07-02 | 2008-07-02 | 動作合成装置、動作合成方法、プログラム、記録媒体、および半導体集積回路の製造方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008174004A JP5009243B2 (ja) | 2008-07-02 | 2008-07-02 | 動作合成装置、動作合成方法、プログラム、記録媒体、および半導体集積回路の製造方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010015339A JP2010015339A (ja) | 2010-01-21 |
JP5009243B2 true JP5009243B2 (ja) | 2012-08-22 |
Family
ID=41701409
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008174004A Expired - Fee Related JP5009243B2 (ja) | 2008-07-02 | 2008-07-02 | 動作合成装置、動作合成方法、プログラム、記録媒体、および半導体集積回路の製造方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5009243B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6246445B1 (ja) * | 2016-03-17 | 2017-12-13 | 三菱電機株式会社 | 高位合成装置、高位合成方法及び高位合成プログラム |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2831790B2 (ja) * | 1990-03-29 | 1998-12-02 | 株式会社東芝 | 演算スケジューリング支援装置 |
US6745160B1 (en) * | 1999-10-08 | 2004-06-01 | Nec Corporation | Verification of scheduling in the presence of loops using uninterpreted symbolic simulation |
US7096438B2 (en) * | 2002-10-07 | 2006-08-22 | Hewlett-Packard Development Company, L.P. | Method of using clock cycle-time in determining loop schedules during circuit design |
US7107199B2 (en) * | 2002-10-31 | 2006-09-12 | Hewlett-Packard Development Company, L.P. | Method and system for the design of pipelines of processors |
JP4204039B2 (ja) * | 2003-04-24 | 2009-01-07 | シャープ株式会社 | 動作合成システム、動作合成方法、制御プログラム、可読記録媒体、論理回路の製造方法および論理回路 |
JP2004288206A (ja) * | 2004-05-10 | 2004-10-14 | Matsushita Electric Ind Co Ltd | 半導体集積回路装置の設計方法 |
JP2009025973A (ja) * | 2007-07-18 | 2009-02-05 | Sharp Corp | 動作合成装置、半導体集積回路の製造方法、動作合成方法、動作合成制御プログラムおよび可読記録媒体 |
-
2008
- 2008-07-02 JP JP2008174004A patent/JP5009243B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010015339A (ja) | 2010-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7739635B2 (en) | Conjunctive BDD building and variable quantification using case-splitting | |
US9483597B1 (en) | Opportunistic candidate path selection during physical optimization of a circuit design for an IC | |
JP5040758B2 (ja) | シミュレーション装置、シミュレーション方法及びプログラム | |
JP4396987B2 (ja) | 動作合成装置および動作合成方法、ディジタル回路の製造方法、動作合成制御プログラム、可読記録媒体 | |
US8146041B1 (en) | Latch based optimization during implementation of circuit designs for programmable logic devices | |
Raudvere et al. | Application and verification of local nonsemantic-preserving transformations in system design | |
JP2004326463A (ja) | 動作合成システム、動作合成方法、制御プログラム、可読記録媒体、論理回路の製造方法および論理回路 | |
Guzel et al. | Using high-level synthesis for rapid design of video processing pipes | |
Gill et al. | Performance estimation and slack matching for pipelined asynchronous architectures with choice | |
JP2009025973A (ja) | 動作合成装置、半導体集積回路の製造方法、動作合成方法、動作合成制御プログラムおよび可読記録媒体 | |
Kam et al. | Correct-by-construction microarchitectural pipelining | |
JP4293562B2 (ja) | ハードウェア検証用プログラミング記述生成装置、高位合成装置、ハードウェア検証用プログラミング記述生成方法、ハードウェア検証用プログラム生成方法、制御プログラムおよび可読記録媒体 | |
JP5009243B2 (ja) | 動作合成装置、動作合成方法、プログラム、記録媒体、および半導体集積回路の製造方法 | |
JP5644344B2 (ja) | 設計データ生成装置、設計データ生成方法及びプログラム | |
JP2008299464A (ja) | 消費電力計算方法、消費電力計算プログラムおよび消費電力計算装置 | |
JP2007233842A (ja) | リセット動作検証回路の生成方法 | |
US8352234B2 (en) | Model generation based on a constraint and an initial model | |
JP6081832B2 (ja) | 動作合成装置及び動作合成プログラム | |
GB2366414A (en) | A method of identifying false paths in circuit synthesis | |
US11023633B2 (en) | High-level synthesis method, high-level synthesis apparatus, and high-level synthesis system | |
US6532584B1 (en) | Circuit synthesis method | |
JP2017041085A (ja) | プログラム仕様推定装置、推定方法、および推定プログラム | |
JP4702357B2 (ja) | 動作レベル記述とレジスタ転送レベル記述間の等価性検証方法及び装置並びにプログラム | |
JP4779908B2 (ja) | 回路設計支援システム、回路設計支援方法及びプログラム | |
JP2009129367A (ja) | 動作合成システム、動作合成方法および動作合成用プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100826 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111220 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111227 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120125 |
|
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: 20120509 |
|
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: 20120530 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5009243 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150608 Year of fee payment: 3 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D04 |
|
LAPS | Cancellation because of no payment of annual fees |