JP5328447B2 - 高位合成装置および高位合成方法、半導体集積回路の製造方法、制御プログラム、可読記憶媒体 - Google Patents
高位合成装置および高位合成方法、半導体集積回路の製造方法、制御プログラム、可読記憶媒体 Download PDFInfo
- Publication number
- JP5328447B2 JP5328447B2 JP2009083459A JP2009083459A JP5328447B2 JP 5328447 B2 JP5328447 B2 JP 5328447B2 JP 2009083459 A JP2009083459 A JP 2009083459A JP 2009083459 A JP2009083459 A JP 2009083459A JP 5328447 B2 JP5328447 B2 JP 5328447B2
- Authority
- JP
- Japan
- Prior art keywords
- communication
- hardware
- level synthesis
- description
- calculation
- 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
(実施形態1)
図3は、ハードウェアの動作記述例を示す図である。
図3で示す動作を、図2の制御プログラムとしてのハードウェア高位合成プログラムにおけるCDFG生成手段513を用いて得られるCDFGの一例を図4に示している。
(実施形態2)
本実施形態2では、複数の並列動作をする機能ブロックを含むハードウェアの動作をサイクル精度で検証する場合について説明する。
図12において説明を簡単にするために、この2つの機能ブロックは共に8個のノードを持ち、CDFGの1つのステップで1つのノードの動作を計算するものとする。機能ブロックAでは、6個の非通信ノードを実行したのち、2個の通信ノードを連続して実行する。これらの通信ノードでは、同一の通信路を用いて、機能ブロックBにデータを送信する。ただし、それぞれの通信では、異なるデータが送信されるものとする。例えば、1回目の通信ではデータXを送信し、2回目の通信ではデータYを送信する。
前述した特許文献3で述べられている手法を用いて、複数の並列動作する機能ブロックのサイクル精度のシミュレーションでは、計算を実行する機能ブロックの実行順序は任意である。本発明の実施形態2の場合でも同様であり、機能ブロックの実行順序は任意である。図12で示した事例においては、まず、機能ブロックAの計算を実行し、次に、機能ブロックBの計算を実行するものとする。特許文献3で述べられている手法では、各機能ブロックの計算を順番に実行し、全ての計算が終わった時点で1クロックサイクル分のサイクル精度のハードウェア動作の計算が行えることを意味しており、同様の手法を用いて図12で示す機能ブロックの計算を行うと、以下のような順番で計算を行う。
2 操作入力部(入力装置)
3 表示部(モニタ装置)
3a 表示画面
4 CPU(制御部)
5 ROM(可読記録媒体)
51 高位合成手段
511 構文解析・字句解析手段
512 機能ブロック分割手段
513 CDFG生成手段
514 スケジューリング・ステップ割り振り手段
515 非通信ステップ抽出手段
516 ステップサイクル精度検証記述生成手段
517 機能ブロック実行順序制御記述生成手段
6 RAM
Claims (20)
- ハードウェアの構造に関する情報を含まず、処理動作のみが記述されたハードウェアの動作記述から、当該ハードウェアを機能ブロックに分割する機能ブロック分割手段と、
該機能ブロック分割手段で分割された機能ブロック毎に、該動作記述を解析した動作情報から該ハードウェアのコントロールデータフローグラフを生成するコントロールデータフローグラフ生成手段と、
ハードウェア仕様として要求される動作周波数で該コントロールデータフローグラフをスケジューリングして各ステップに割り振るスケジューリング・ステップ割り振り手段と、
該コントロールデータフローグラフから通信を行う動作が含まれない非通信ステップを抽出する非通信ステップ抽出手段と、
該非通信ステップのハードウェアの動作を統合した計算式を生成してサイクル精度で検証可能なプログラミング記述を生成するステップサイクル精度検証記述生成手段とを有し、
該通信は、機能ブロック間通信および共有リソースアクセスのいずれかである高位合成装置。 - 前記ステップサイクル精度検証記述生成手段は、
前記非通信ステップのハードウェアの動作を統合した計算式を生成する計算式生成手段と、
該計算式を用いて、該ハードウェアを汎用プログラミング言語で表現した記述として、サイクル精度で検証する動作モデルを生成する動作モデル生成手段とを有する請求項1に記載の高位合成装置。 - 前記非通信ステップ抽出手段は、前記コントロールデータフローグラフに含まれる各ノードの動作情報を用いて、前記通信を行う動作を表すノードが含まれないステップを選び出す請求項1に記載の高位合成装置。
- 前記非通信ステップ抽出手段は、前記コントロールデータフローグラフの中から通信ステップを抽出することにより、該通信ステップ以外を前記非通信ステップとして抽出する請求項1に記載の高位合成装置。
- 前記計算式生成手段は、前記通信を行う動作を表すノードが含まれない非通信ステップの中で、最終のステップに含まれるレジスタの出力結果を計算するための計算式を生成する請求項2に記載の高位合成装置。
- 前記計算式生成手段は、前記コントロールデータフローグラフの中のセレクタの選択条件によって不要となる演算を行わないように計算式を生成する請求項2または5に記載の高位合成装置。
- 前記ハードウェアの機能ブロック間で計算を実行する機能ブロックの実行順序を制御する制御記述を生成する機能ブロック実行順序制御記述生成手段を更に有する請求項1に記載の高位合成装置。
- 前記実行順序制御記述生成手段は、前記ハードウェアの機能ブロック毎に、前記計算を終了したステップを数えるカウンタを有しており、該カウンタのカウント値が最小である機能ブロックから順番に次の計算を行う制御記述を生成する請求項7に記載の高位合成装置。
- 通信を行うステップの1ステップ前までの非通信ステップは、前記機能ブロック内で連続して前記計算を実行する請求項7または8に記載の高位合成装置。
- 機能ブロック分割手段とコントロールデータフローグラフ生成手段とスケジューリング・ステップ割り振り手段と非通信ステップ抽出手段とステップサイクル精度検証記述生成手段とを備える高位合成装置において実行される高位合成方法であって、
該機能ブロック分割手段が、ハードウェアの構造に関する情報を含まず、処理動作のみが記述されたハードウェアの動作記述から、当該ハードウェアを機能ブロックに分割する機能ブロック分割工程と、
該コントロールデータフローグラフ生成手段が、該機能ブロック分割工程で分割した機能ブロック毎に、該動作記述を解析した動作情報から該ハードウェアのコントロールデータフローグラフを生成するコントロールデータフローグラフ生成工程と、
該スケジューリング・ステップ割り振り手段が、ハードウェア仕様として要求される動作周波数で該コントロールデータフローグラフをスケジューリングして各ステップに割り振るスケジューリング・ステップ割り振り工程と、
該非通信ステップ抽出手段が、該コントロールデータフローグラフから通信を行う動作が含まれない非通信ステップを抽出する非通信ステップ抽出工程と、
該ステップサイクル精度検証記述生成手段が、該非通信ステップのハードウェアの動作を統合した計算式を生成してサイクル精度で検証する動作モデルを生成するステップサイクル精度検証記述生成工程とを有し、
該通信は、機能ブロック間通信および共有リソースアクセスのいずれかである高位合成方法。 - 前記ステップサイクル精度検証記述生成工程は、
前記非通信ステップのハードウェアの動作を統合した計算式を生成する計算式生成工程と、
該計算式を用いて、ハードウェアを汎用プログラミング言語で表現した記述として、サイクル精度で検証する動作モデルを生成する動作モデル生成工程とを有する請求項10に記載の高位合成方法。 - 前記非通信ステップ抽出工程は、前記コントロールデータフローグラフに含まれる各ノードの動作情報を用いて、前記通信を行う動作を表すノードが含まれないステップを選び出す請求項10に記載の高位合成方法。
- 前記非通信ステップ抽出工程は、前記コントロールデータフローグラフの中から通信ステップを抽出することにより、該通信ステップ以外を前記非通信ステップとして抽出する請求項10に記載の高位合成方法。
- 前記計算式生成工程は、前記通信を行う動作を表すノードが含まれないステップの中で、最終のステップに含まれるレジスタの出力結果を計算するための計算式を生成する請求項11に記載の高位合成方法。
- 前記計算式生成工程は、前記コントロールデータフローグラフの中のセレクタの選択条件によって不要となる演算を行わないように計算式を生成する請求項11に記載の高位合成方法。
- 前記高位合成装置は、機能ブロック実行順序制御記述生成手段を更に備え、
前記高位合成方法は、該機能ブロック実行順序制御記述生成手段が、前記ハードウェアの機能ブロック間で計算を実行する機能ブロックの実行順序を制御する制御記述を生成する機能ブロック実行順序制御記述生成工程を更に有する請求項10に記載の高位合成方法。 - 前記実行順序制御記述生成手段は、前記ハードウェアの機能ブロック毎に、前記計算を終了したステップを数えるカウンタを有しており、該カウンタのカウント値が最小である機能ブロックから順番に次の計算を行う制御記述を生成する請求項16に記載の高位合成方法。
- 請求項1〜9のいずれかに記載の高位合成装置を用いてハードウェア動作をシミュレーションした論理合成回路情報に基づいて、半導体集積回路の製造に用いられるレジストパターンを設計する方法。
- 請求項10〜17のいずれかに記載の高位合成方法の各工程をコンピュータに実行させるための処理手順が記述された制御プログラム。
- 請求項19に記載の制御プログラムが格納されたコンピュータ読み取り可能な可読記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009083459A JP5328447B2 (ja) | 2009-03-30 | 2009-03-30 | 高位合成装置および高位合成方法、半導体集積回路の製造方法、制御プログラム、可読記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009083459A JP5328447B2 (ja) | 2009-03-30 | 2009-03-30 | 高位合成装置および高位合成方法、半導体集積回路の製造方法、制御プログラム、可読記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010237858A JP2010237858A (ja) | 2010-10-21 |
JP5328447B2 true JP5328447B2 (ja) | 2013-10-30 |
Family
ID=43092123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009083459A Expired - Fee Related JP5328447B2 (ja) | 2009-03-30 | 2009-03-30 | 高位合成装置および高位合成方法、半導体集積回路の製造方法、制御プログラム、可読記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5328447B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10896272B2 (en) | 2017-02-07 | 2021-01-19 | Mitsubishi Electric Corporation | High-level synthesis device, high-level synthesis method, and computer readable medium |
JP7215244B2 (ja) * | 2019-03-08 | 2023-01-31 | 富士通株式会社 | 記述変換方法、シミュレーション方法及び記述変換プログラム |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3763700B2 (ja) * | 1998-06-04 | 2006-04-05 | シャープ株式会社 | 高位合成装置 |
JP2003006265A (ja) * | 2001-06-26 | 2003-01-10 | Matsushita Electric Ind Co Ltd | 動作モデル生成方法および動作モデル生成装置 |
JP4175953B2 (ja) * | 2003-05-23 | 2008-11-05 | シャープ株式会社 | 高位合成装置、ハードウェア検証用モデル生成方法、ハードウェア検証方法、制御プログラムおよび可読記録媒体 |
JP2006048525A (ja) * | 2004-08-06 | 2006-02-16 | Toshiba Corp | シミュレーション方法 |
JP2006139729A (ja) * | 2004-11-15 | 2006-06-01 | Sharp Corp | ハードウェア検証用プログラミング言語モデル生成装置、ハードウェア検証用プログラミング言語モデル生成方法、コンピュータシステム、ハードウェアシミュレーション方法、制御プログラムおよび可読記憶媒体 |
EP1962210A4 (en) * | 2005-11-30 | 2010-03-17 | Ip Flex Inc | STYLE RECONSTRUCTION METHOD AND COMPUTER SYSTEM HAVING THE SAME |
US7472361B2 (en) * | 2005-12-30 | 2008-12-30 | Cadence Design Systems, Inc. | System and method for generating a plurality of models at different levels of abstraction from a single master model |
-
2009
- 2009-03-30 JP JP2009083459A patent/JP5328447B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010237858A (ja) | 2010-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Habibi et al. | Design and verification of SystemC transaction-level models | |
US7945894B2 (en) | Implementing a design flow for a programmable hardware element coupled to a processor | |
JP4994393B2 (ja) | 単一のマスターモデルから異なる抽象化レベルの複数のモデルを生成するシステムと方法 | |
US8527972B2 (en) | Method for forming a parallel processing system | |
US20020152061A1 (en) | Data processing system and design system | |
CN115315702A (zh) | 早期阶段电路设计中基于机器学习的度量的预测 | |
US20230120227A1 (en) | Method and apparatus having a scalable architecture for neural networks | |
JP2006139729A (ja) | ハードウェア検証用プログラミング言語モデル生成装置、ハードウェア検証用プログラミング言語モデル生成方法、コンピュータシステム、ハードウェアシミュレーション方法、制御プログラムおよび可読記憶媒体 | |
JP4293562B2 (ja) | ハードウェア検証用プログラミング記述生成装置、高位合成装置、ハードウェア検証用プログラミング記述生成方法、ハードウェア検証用プログラム生成方法、制御プログラムおよび可読記録媒体 | |
JP2004348606A (ja) | 高位合成装置、ハードウェア検証用モデル生成方法およびハードウェア検証方法 | |
JP5328447B2 (ja) | 高位合成装置および高位合成方法、半導体集積回路の製造方法、制御プログラム、可読記憶媒体 | |
JP2009140388A (ja) | 性能評価モデル生成方法、システム性能評価方法、及び性能評価モデル生成装置 | |
US11995386B2 (en) | Verification of hardware design for data transformation component | |
US9135376B2 (en) | Input space reduction for verification test set generation | |
US7257786B1 (en) | Method and apparatus for solving constraints | |
US9223910B1 (en) | Performance and memory efficient modeling of HDL ports for simulation | |
JP5147801B2 (ja) | ハードウェア検証用プログラミング記述生成装置、ハードウェア検証用プログラミング記述生成方法、及び制御プログラム | |
JP2003067438A (ja) | シミュレーションモデルの生成方法及びシミュレーション方法及びその記録媒体 | |
Petry et al. | A spectrum of MPSoC models for design space exploration and its use | |
Gajski | System-level design methodology | |
KR100928181B1 (ko) | 디지털 시스템 설계 방법 | |
JP2009140028A (ja) | ハードウェア検証用プログラミング記述生成装置、ハードウェア検証用プログラミング記述生成方法、制御プログラムおよび可読記録媒体 | |
JP6761182B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
CN116911219A (zh) | 用于逻辑系统设计的仿真的方法、电子设备和存储介质 | |
Mendias et al. | Efficient verification of scheduling, allocation and binding in high-level synthesis |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110223 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120529 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120607 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120713 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130221 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130321 |
|
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: 20130702 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130723 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D04 |
|
LAPS | Cancellation because of no payment of annual fees |