JP2002222228A - High order synthesizing system and high order synthesizing method - Google Patents

High order synthesizing system and high order synthesizing method

Info

Publication number
JP2002222228A
JP2002222228A JP2001018366A JP2001018366A JP2002222228A JP 2002222228 A JP2002222228 A JP 2002222228A JP 2001018366 A JP2001018366 A JP 2001018366A JP 2001018366 A JP2001018366 A JP 2001018366A JP 2002222228 A JP2002222228 A JP 2002222228A
Authority
JP
Japan
Prior art keywords
constraint
unit
input
level synthesis
logic circuit
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
JP2001018366A
Other languages
Japanese (ja)
Inventor
Tsutomu Takei
勉 武井
Shintaro Haba
信太郎 幅
Seiichi Nishio
誠一 西尾
Toru Fujita
透 藤田
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2001018366A priority Critical patent/JP2002222228A/en
Publication of JP2002222228A publication Critical patent/JP2002222228A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To produce hardware with enhanced circuit parallel operability by providing minimum constraint information without changing an operation description to be an input of high order synthesizing, a register transfer level description to be an output, or the like. SOLUTION: This system has a C/DFG generating part (an operation description analyzing part) 103 analyzing the operation description 101 describing an operation of an object logical circuit or the like, a constraint analyzing part 104 analyzing a constraint or the like of the operation of the object logical circuit or the like to an input signal and an output signal, a displaying/editing part 108 displaying an analysis result of the constraint or the like and modifying it, and synthesizing parts 105-107 performing high order synthesizing based on an analysis result by the C/DFG generating part 103, the analysis result by the constraint analyzing part 104 or an editing result of the displaying/editing part 108. A displaying part displays variables during description and the input and output signals of the logical circuit per cycle or it displays them on a CDFG diagram in coordination with the input and output signals.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、論理回路等の設計
に用いられ、動作記述から論理回路を自動合成する高位
合成システム及び高位合成方法に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a high-level synthesis system and a high-level synthesis method used for designing a logic circuit or the like and automatically synthesizing a logic circuit from an operation description.

【0002】[0002]

【従来の技術】システムLSI等の論理回路の設計にお
いては、動作記述からRTL(Register Transfar Leve
l)設計に移行する際に高位合成が行われる。この高位
合成としては、例えば、C/C++言語等のシーケンシ
ャル動作のソフトウェアプログラミング言語によるアル
ゴリズム記述(動作記述)を入力として、並列動作をす
るハードウェア論理回路(Register Transfar LevelH
DL(Hardware Description Language)記述またはGat
e LeverHDL(Hardware Description Language)記
述)を生成するものがある。
2. Description of the Related Art In designing a logic circuit such as a system LSI, an RTL (Register Transfer Level) is described from an operation description.
l) High-level synthesis is performed when moving to design. As the high-level synthesis, for example, a hardware logic circuit (Register Transfar Level H) that performs parallel operation by inputting an algorithm description (operation description) in a software programming language of a sequential operation such as C / C ++ language is input.
DL (Hardware Description Language) description or Gat
Some generate eLever HDL (Hardware Description Language) description.

【0003】この高位合成において、従来指定する制約
(“入力信号に対する回路動作タイミング制約”,“出
力信号更新タイミング制約”等)としては、「入力端子
信号、そのビット幅、出力端子信号、そのビット幅、動
作クロック周波数(または1サイクル時間)」等であ
る。
In this high-level synthesis, constraints ("circuit operation timing constraints on input signals", "output signal update timing constraints", etc.) conventionally specified include "input terminal signals, their bit widths, output terminal signals, and their bit Width, operating clock frequency (or one cycle time).

【0004】この場合に実現される回路動作としては、
入力信号の値がセットされて、アルゴリズム記述関数と
等価である回路動作を実行し、結果が出力信号の値とな
る、つまり、回路動作実行中に入力信号が変化しないと
想定した回路が生成される。
The circuit operation realized in this case includes:
The value of the input signal is set, and a circuit operation equivalent to the algorithm description function is executed, and the result is the value of the output signal. That is, a circuit is generated that assumes that the input signal does not change during the execution of the circuit operation. You.

【0005】しかし、一般に、論理回路の設計では、ハ
ードウェア化により回路ゲート数増加を抑えつつ、全体
の並列動作,処理スループット向上などをはかる場合
に、入力信号の時分割設定やパイプライン的動作に対す
る入力設定などの回路動作を実現するようにしたい。
However, in general, in designing a logic circuit, when an increase in the number of circuit gates is suppressed by hardware, an overall parallel operation, an improvement in processing throughput, and the like are performed, a time division setting of an input signal and a pipeline operation are performed. I want to realize circuit operation such as input setting for.

【0006】[0006]

【発明が解決しようとする課題】しかしながら、現状で
は、上記のような回路動作を実現するためには、ハード
ウェアの入出力構造をレジスタトランスファレベルHD
L記述等で、人手設計する必要があり、その作業が繁雑
であるという問題があった。
However, at present, in order to realize the above-described circuit operation, the input / output structure of the hardware must be changed to the register transfer level HD.
There is a problem that it is necessary to manually design an L description or the like, and the work is complicated.

【0007】そこで、本発明では、高位合成の入力とな
る動作記述や、出力となるレジスタトランスファレベル
記述等を変更することなく、必要最小限の制約情報を与
えることで、回路並列動作性を高めたハードウェアを生
成することができる高位合成システム及び高位合成方法
を提供することを課題とする。
Therefore, the present invention improves the circuit parallel operability by giving the minimum necessary constraint information without changing the operation description as the input of the high-level synthesis or the register transfer level description as the output. It is an object to provide a high-level synthesis system and a high-level synthesis method capable of generating hardware.

【0008】[0008]

【課題を解決するための手段】本発明は、上記課題を解
決すべくなされたものであり、論理回路等の設計に用い
られる高位合成システムにおいて、対象論理回路等の動
作を記述した動作記述を解析する動作記述解析部と、前
記対象論理回路等の入力信号及び出力信号に対する動作
の制約等を解析する制約解析部と、前記制約等の解析結
果を表示する表示部と、前記制約等の解析結果を修正す
る編集部と、前記動作記述解析部による解析結果と、前
記制約解析部による解析結果または前記編集部における
編集結果に基づいて高位合成を行う合成部とを有するこ
とを特徴とするものである。
SUMMARY OF THE INVENTION The present invention has been made in order to solve the above-mentioned problem, and in a high-level synthesis system used for designing a logic circuit or the like, an operation description describing the operation of a target logic circuit or the like is provided. An operation description analysis unit for analyzing, a constraint analysis unit for analyzing constraints on operations of input signals and output signals of the target logic circuit and the like, a display unit for displaying an analysis result of the constraints and the like, and analysis of the constraints and the like An editing unit for correcting the result, and a synthesizing unit for performing high-level synthesis based on the analysis result by the behavioral description analyzing unit and the analysis result by the constraint analyzing unit or the editing result in the editing unit. It is.

【0009】また、他の発明は、論理回路の設計に用い
られる高位合成方法において、設計対象である論理回路
の動作を記述した動作記述を解析し、前記論理回路の入
力信号及び出力信号に対する動作の制約を解析し、前記
制約の解析結果を表示し、この表示に基づいて前記制約
の解析結果を修正し、前記動作記述についての解析結果
と、前記制約についての解析結果または前記編集部にお
ける編集結果に基づいて高位合成を行うことを特徴とす
るものである。
According to another aspect of the present invention, in a high-level synthesis method used for designing a logic circuit, an operation description describing an operation of a logic circuit to be designed is analyzed, and an operation for an input signal and an output signal of the logic circuit is performed. Analyzing the constraint, displaying the analysis result of the constraint, correcting the analysis result of the constraint based on the display, analyzing the operation description, the analysis result of the constraint, or editing in the editing unit. High-level synthesis is performed based on the result.

【0010】これらの発明によれば、高位合成の入力と
なる動作記述は変更せずに、制約として、必要最小限の
制約情報を与えること、或いは、変更することで、回路
の並列動作性等ハードウェア構成及び動作を考慮したハ
ードウェアを生成することができる。
According to these inventions, by giving or changing the minimum necessary constraint information as a constraint without changing the operation description which is the input of the high-level synthesis, the parallel operation of the circuit can be performed. It is possible to generate hardware in consideration of the hardware configuration and operation.

【0011】なお、本発明において、前記編集部は、表
示部により表示された画面上の操作によって、前記制約
等の解析結果を修正するインターフェース部を有するこ
とが好ましい。
In the present invention, it is preferable that the editing unit has an interface unit for correcting an analysis result of the restriction or the like by an operation on a screen displayed by a display unit.

【0012】また、画面上の操作で制約を修正するイン
ターフェース部を設けた場合には、解析結果がグラフィ
カルに表示されることにより、視覚的に制約の確認をす
ることができ、修正作業が容易になる。特に、前記イン
ターフェース部を設けた場合には、データ転送入力信号
及び出力信号動作の対応をデータフローグラフ上で表示
することなどができ、データ転送動作のハードウェアの
入力信号及び出力信号のサイクルタイミングの関係を容
易に把握確認し、より適切なハードウェアの入力信号及
び出力信号のサイクルタイミング及び、ハードウェア化
変換を実現することができる。
In the case where an interface section for correcting constraints by operation on the screen is provided, the analysis results are displayed graphically, so that the constraints can be visually confirmed and the correction work is easy. become. In particular, when the interface unit is provided, the correspondence between the data transfer input signal and the output signal operation can be displayed on a data flow graph, and the cycle timing of the input signal and the output signal of the hardware for the data transfer operation can be displayed. Can be easily grasped and confirmed, and more appropriate hardware input signal and output signal cycle timing and hardware conversion can be realized.

【0013】本発明では、前記表示部に、前記対象論理
回路等に対する入力信号及び出力信号等に関する動作の
制約である動作記述中の変数と、前記対象論理回路等の
入力信号及び出力信号とを、サイクル動作毎に表示する
機能を設けることができる。
According to the present invention, the display unit displays, in the operation description, a variable in an operation description which is a constraint on an input signal and an output signal of the target logic circuit and the like, and an input signal and an output signal of the target logic circuit and the like. , A function of displaying each cycle operation can be provided.

【0014】この場合には、高位合成の入力となる動作
記述は変更せずに、制約として入出力タイミングの各サ
イクル動作を指定することにより、回路のハードウェア
構成及び動作を考慮したハードウェアを生成することが
できる。
In this case, the operation description which is an input of the high-level synthesis is not changed, and each cycle operation of the input / output timing is designated as a constraint, so that hardware considering the hardware configuration and operation of the circuit can be realized. Can be generated.

【0015】さらに、本発明では、前記表示部に、デー
タフロー図上で、スケジューリングと、動作記述中の変
数と、ハードウェアの入力信号及び出力信号との対応を
表示する機能を設けてもよい。
Further, in the present invention, the display unit may be provided with a function of displaying, on a data flow diagram, the correspondence between the scheduling, the variables in the operation description, and the input and output signals of the hardware. .

【0016】この場合には、動作記述とハードウェアの
入力信号及び出力信号との各サイクル動作を、データフ
ローグラフ上で表示することにより、指定されているサ
イクル動作を容易に理解確認できると共に、動作記述を
考慮した制約の指定変更、および、制約動作を考慮した
ハードウェア生成をすることができる。
In this case, by displaying each cycle operation of the operation description and the hardware input signal and output signal on a data flow graph, the specified cycle operation can be easily understood and confirmed. It is possible to change designation of a constraint in consideration of an operation description and generate hardware in consideration of a constraint operation.

【0017】さらに、本発明においては、前記表示部
に、データフロー図上で、前記対象論理回路等の入力信
号及び出力信号毎に対応をつけて表示する機能を設ける
ことができる。
Further, in the present invention, the display section may be provided with a function of displaying the input signal and the output signal of the target logic circuit etc. in association with each other on the data flow diagram.

【0018】この場合には、データフローグラフ表示上
で、各入出力端子毎に区別して表示することにより、動
作記述中の各変数との信号の授受と、各入出力端子のリ
ソース関係を、容易に把握することができ、入出力端子
リソースの衝突、つまり、リソース不足、あるいは、入
出力端子リソースの冗長さ、つまり、リソース共有化の
可能性を、把握することが可能となる。
In this case, on the data flow graph display, each input / output terminal is distinguished and displayed, so that transmission / reception of signals to / from each variable in the operation description and resource relationship of each input / output terminal can be performed. It is possible to easily grasp the collision of the input / output terminal resources, that is, the resource shortage, or the redundancy of the input / output terminal resources, that is, the possibility of sharing the resources.

【0019】また、本発明においては、前記表示部に、
データフロー図上で、前記対象論理回路等の入力信号及
び出力信号値の保持の有無と更新の有無の対応を区別し
て表示する機能を設けてもよい。
Also, in the present invention, the display unit includes:
A function may be provided on the data flow diagram for displaying the correspondence between the presence / absence of the holding of the input signal and the output signal value of the target logic circuit and the presence / absence of the updating.

【0020】この場合には、データフローグラフ表示上
で、クロックサイクルを渡るデータ保持動作を陽にデー
タフローグラフ上で表示することにより、ハードウェア
内部動作と、制約で与えられている入出力端子の値の授
受の関係を容易に理解確認できると共に、動作記述を考
慮した制約の指定変更、および、制約動作を考慮したハ
ードウェア生成をすることができる。
In this case, the data holding operation over the clock cycle is explicitly displayed on the data flow graph on the data flow graph, so that the internal operation of the hardware and the input / output terminals given by the restrictions are performed. , It is possible to easily understand and confirm the relationship between the transmission and reception of the value, and to change the designation of the constraint in consideration of the operation description and generate the hardware in consideration of the constraint operation.

【0021】また、本発明においては、前記表示部に、
データフロー図上で、動作記述中の変数と、ハードウェ
アのデータ転送入力信号及び出力信号動作の対応を表示
する機能を設けてもよい。
Further, in the present invention, the display unit includes
On the data flow diagram, a function for displaying the correspondence between the variable in the operation description and the data transfer input signal and output signal operation of the hardware may be provided.

【0022】この場合には、データフローグラフ上で、
動作記述中の変数と、ハードウェアの入力信号及び出力
信号の対応を修正することにより、高位合成による動作
記述のハードウェア化変換と、ハードウェアの入力信号
及び出力信号のサイクルタイミングの関係を容易に把握
確認し、より適切なハードウェアの入力信号及び出力信
号のサイクルタイミング及び、ハードウェア化変換を実
現することができる。
In this case, on the data flow graph,
By modifying the correspondence between the variables in the behavioral description and the input and output signals of the hardware, it is easy to convert the behavioral description into hardware by high-level synthesis and the relationship between the cycle timing of the input and output signals of the hardware. It is possible to realize more appropriate hardware input signal and output signal cycle timing and hardware conversion.

【0023】さらに、本発明においては、前記表示部
に、前記制約解析部による解析結果を状態遷移図として
表示する機能を設けるとともに、前記編集部に、表示画
面に表示された状態遷移図を修正することにより前記制
約等の解析結果を修正する機能を設けることが好まし
い。
Further, in the present invention, the display unit has a function of displaying an analysis result by the constraint analysis unit as a state transition diagram, and the editing unit corrects the state transition diagram displayed on the display screen. Thus, it is preferable to provide a function of correcting the analysis result such as the restriction.

【0024】この場合には、制約指定として与えられた
入力信号及び出力信号動作等を状態遷移図として表示、
及び、修正できることにより、制約の確認及び修正が容
易になる。
In this case, the input signal and output signal operation given as the constraint designation are displayed as a state transition diagram.
And, by being able to make corrections, it is easy to confirm and correct the constraints.

【0025】[0025]

【発明の実施の形態】[高位合成システムの構成]本発
明の高位合成システムの第1実施形態について以下に説
明する。図1は、本実施形態に係る高位合成システムの
構成を示すブロック図である。
DESCRIPTION OF THE PREFERRED EMBODIMENTS [Configuration of High-Level Synthesis System] A first embodiment of a high-level synthesis system of the present invention will be described below. FIG. 1 is a block diagram illustrating the configuration of the high-level synthesis system according to the present embodiment.

【0026】同図に示すように、本実施形態に係る高位
合成装置は、C/DFG生成部103と、制約解析部1
04と、スケジューリング部105と、ハードウェアロ
ケーション部106と、RTL記述生成部107と、表
示/編集部108と、ディスプレイ109と、入力装置
110とを有している。
As shown in FIG. 1, the high-level synthesis device according to the present embodiment includes a C / DFG generation unit 103 and a constraint analysis unit 1.
04, a scheduling unit 105, a hardware location unit 106, an RTL description generation unit 107, a display / editing unit 108, a display 109, and an input device 110.

【0027】C/DFG生成部103は、入力された動
作記述101を解析する動作記述解析部であり、本実施
形態では、ここでの解析結果に基づいて、動作記述10
1中の変数間のデータ依存関係を示すデータフローグラ
フを生成し、制約解析104及びスケジューリング部1
05に対して出力する。
The C / DFG generation unit 103 is an operation description analysis unit for analyzing the input operation description 101. In the present embodiment, the C / DFG generation unit 103 performs the operation description 10 based on the analysis result.
1 generates a data flow graph showing the data dependency between variables in the constraint analysis unit 104 and the scheduling unit 1
05 is output.

【0028】ここで、動作記述101とは、設計対象の
論理回路がどのような動作をするかを表すものである。
図2は、動作記述の簡単な例であり、高位合成の入力と
なるものであり、図1における動作記述101に相当す
る。なお、同図に示す動作記述では、入力変数1とa
2、及びa2とa3をそれぞれ乗算し、出力変数b1及
びb2とする旨、記述されている。
Here, the operation description 101 represents what operation the logic circuit to be designed performs.
FIG. 2 is a simple example of a behavioral description, which is an input for high-level synthesis and corresponds to the behavioral description 101 in FIG. In the operation description shown in FIG.
2, and that a2 and a3 are multiplied to output variables b1 and b2, respectively.

【0029】制約解析部104は、入力された制約指定
102を解析する制約解析部であり、本実施形態では、
ここでの解析結果に基づいて、動作記述103から生成
されたデータフローグラフの変数等と、制約指定102
の解析結果である制約との対応をとり、対応がとられた
データフローグラフ及び制約を表示/編集部108に出
力する。
The constraint analysis unit 104 is a constraint analysis unit for analyzing the input constraint specification 102. In this embodiment,
Based on the analysis result here, the variables and the like of the data flow graph generated from the behavioral description 103 and the constraint specification 102
And outputs the corresponding data flow graph and constraint to the display / editing unit 108.

【0030】ここで、制約指定102とは、動作記述1
01中の変数と設計対象論理回路のハードウェアモジュ
ールの入出力端子情報を示したものである。図3は、制
約指定の例であり、図1における制約指定102に相当
する。ただし、図3に示した制約指定の例は、変数a1
とa2及びa3のビット幅が16ビットの入力端子、変
数b1とb2のビット幅が16ビットの出力信号と指定
されており、従来の高位合成で指定するレベルの制約で
ある。
Here, the constraint specification 102 is an operation description 1
3 shows input / output terminal information of a hardware module of a logic circuit to be designed and variables in 01. FIG. 3 is an example of the constraint designation, and corresponds to the constraint designation 102 in FIG. However, the example of constraint specification shown in FIG.
, A2 and a3 are designated as input terminals having a bit width of 16 bits, and variables b1 and b2 are designated as output signals having a bit width of 16 bits. This is a level constraint designated in the conventional high-level synthesis.

【0031】また、制約解析部104は、表示/編集部
108において、データフローグラフ並びに制約に修正
追加が有った場合は、その変更された情報を、制約指定
記述102に反映する。
In the display / editing unit 108, when there is a modification and addition to the data flow graph and the constraint in the display / editing unit 108, the changed information is reflected in the constraint designation description 102.

【0032】スケジューリング部105は、高位合成を
行う合成部を構成するものであり、上記データフローグ
ラフをC/DFG生成部103から取得し、表示/編集
部108から取得した制約に論理回路中のクロック数を
調整する。なお、このスケジューリング部105による
スケジューリング結果は、ハードウェアロケーション部
106に出力される。
The scheduling section 105 constitutes a synthesizing section for performing high-level synthesis. The scheduling section 105 obtains the data flow graph from the C / DFG generating section 103 and applies the data flow graph to the constraints obtained from the display / editing section 108 in the logic circuit. Adjust the number of clocks. The result of scheduling by the scheduling unit 105 is output to the hardware location unit 106.

【0033】ハードウェアロケーション部106も、合
成部を構成するものであり、スケジューリング部105
から取得したスケジューリング結果と、表示/編集部1
08から取得したデータフローグラフに基づいて回路割
付けを行うものである。なお、このハードウェアロケー
ション部106によるハードウェアロケーション結果は
RTL記述生成部107に出力される。
The hardware location unit 106 also constitutes a synthesizing unit, and the scheduling unit 105
And the display / editing unit 1
Circuit assignment is performed based on the data flow graph acquired from step 08. The result of the hardware location by the hardware location unit 106 is output to the RTL description generation unit 107.

【0034】RTL記述生成部107も、合成部を構成
するものであり、ハードウェアロケーション結果に基づ
いて高位合成処理を行い、RTL記述111を出力する
ものである。
The RTL description generation unit 107 also constitutes a synthesis unit, performs high-level synthesis processing based on the hardware location result, and outputs the RTL description 111.

【0035】表示/編集部108は、制約等の解析結果
を表示する表示部であるとともに、制約等の解析結果を
修正する編集部である。すなわち、本実施形態では、制
約解析部104から入力されたデータフローグラフ及び
制約に基づいてグラフィックデータを生成し、ディスプ
レイ109に表示し、ディスプレイ109に表示された
グラフィック上で、入力装置110により制約の修正や
追加を行うインターフェース部を有している。
The display / edit section 108 is a display section for displaying the analysis result of the constraint and the like, and is an editing section for correcting the analysis result of the constraint and the like. That is, in the present embodiment, graphic data is generated based on the data flow graph and the constraint input from the constraint analysis unit 104, displayed on the display 109, and displayed on the display 109 by the input device 110. It has an interface unit for modifying and adding to.

【0036】また、この表示/編集部108において、
データフローグラフ並びに制約に修正追加が有った場合
は、その変更された情報は、C/DFG生成部103、
スケジューリング部105、及びハードウェアロケーシ
ョン部106に出力されるとともに、制約解析部104
にも出力され、制約指定記述102に反映される。
In the display / editing unit 108,
If the data flow graph and the constraints have been modified, the changed information is sent to the C / DFG generation unit 103,
The output to the scheduling unit 105 and the hardware location unit 106 and the constraint analysis unit 104
And is reflected in the constraint specification description 102.

【0037】ディスプレイ109は、表示/編集部10
8で生成されたグラフィックデータに基づいて、データ
フローグラフや制約の状態を可視的に表示するものであ
る。入力装置110は、本システムに対する外部入力イ
ンターフェースであり、キーボードやマウス等が用いら
れる。
The display 109 includes the display / editing unit 10
Based on the graphic data generated in step 8, the data flow graph and the state of the constraint are visually displayed. The input device 110 is an external input interface to the present system, and uses a keyboard, a mouse, and the like.

【0038】[高位合成システムの動作]以上説明した
構成を有する本実施形態に係る高位合成システムは以下
のように動作する。ここでは、図2及び図3に示した動
作記述と制約指定を例に説明する。
[Operation of High-Level Synthesis System] The high-level synthesis system having the above-described configuration according to the present embodiment operates as follows. Here, the operation description and constraint specification shown in FIGS. 2 and 3 will be described as an example.

【0039】先ず、図3に示したような制約指定102
が制約解析104に入力されるとともに、図2に示した
ような動作記述101がC/DFG生成部103に入力
される。
First, the constraint designation 102 as shown in FIG.
Is input to the constraint analysis 104, and the behavioral description 101 as shown in FIG. 2 is input to the C / DFG generation unit 103.

【0040】次に、C/DFG生成部103により、動
作記述101を解析し、解析結果として、動作記述10
1中の変数間のデータ依存関係を示すデータフローグラ
フを生成し、制約解析104及びスケジューリング部1
05に対して出力する。
Next, the behavior description 101 is analyzed by the C / DFG generation unit 103, and the behavior description 10
1 generates a data flow graph showing the data dependency between variables in the constraint analysis unit 104 and the scheduling unit 1
05 is output.

【0041】図4は、C/DFG生成部103で生成さ
れたコントロールデータフローグラフ図である。同図に
示すように、本実施形態におけるデータフローでは、入
力変数a1とa2、及びa2とa3を、ノード201及
び202においてそれぞれ乗算し、入力変数b1及びb
2とする旨、記述されている。
FIG. 4 is a control data flow graph generated by the C / DFG generator 103. As shown in the figure, in the data flow in the present embodiment, input variables a1 and a2 and a2 and a3 are multiplied at nodes 201 and 202, respectively, and input variables b1 and b
2 is described.

【0042】一方、制約解析部104は、制約指定10
2を解析するとともに、動作記述103から生成された
データフローグラフの変数等と、制約指定102の解析
結果である制約との対応をとり、対応がとられたデータ
フローグラフ及び制約を表示/編集部108に出力す
る。表示/編集部108では、データフローグラフ及び
制約に基づいてグラフィックデータが生成され、ディス
プレイ109に表示される。
On the other hand, the constraint analysis unit 104
2 is analyzed, and the variables and the like of the data flow graph generated from the operation description 103 are associated with the constraints that are the analysis results of the constraint specification 102, and the corresponding data flow graph and constraints are displayed / edited. Output to the unit 108. The display / editing unit 108 generates graphic data based on the data flow graph and the constraints, and displays the graphic data on the display 109.

【0043】また、上記データフローグラフは、C/D
FG生成部103からスケジューリング部105に出力
され、スケジューリング結果はハードウェアロケーショ
ン部106に出力される。
Further, the data flow graph is represented by C / D
The FG generation unit 103 outputs the result to the scheduling unit 105, and the scheduling result is output to the hardware location unit 106.

【0044】ここで、本実施形態におけるデータフロー
グラフでは、コントロール部が表されていない。また、
合成結果は、組合せ回路となり、クロック及びコントロ
ール部がない1クロック内の動作となり、図1における
スケジューリング部105でスケジューリングされた後
のデータフローグラフも図4と同様のものとなる。
Here, the control section is not shown in the data flow graph in the present embodiment. Also,
The result of the synthesis is a combinational circuit, which is an operation within one clock without a clock and a control unit. The data flow graph after being scheduled by the scheduling unit 105 in FIG. 1 is the same as that in FIG.

【0045】そして、ハードウェアロケーション部10
6における、ハードウェアロケーション結果はRTL記
述生成部107に出力され、このRTL記述生成部10
7において、論理回路のRTL記述111が出力され
る。なお、図5はここで合成された論理回路の論理回路
図例であり、入力変数a1とa2、及びa2とa3を、
乗算器203及び204においてそれぞれ乗算し、出力
変数b1及びb2とする旨、表されている。
Then, the hardware location unit 10
6 is output to the RTL description generation unit 107, and the RTL description generation unit 10
At 7, the RTL description 111 of the logic circuit is output. FIG. 5 is an example of a logic circuit diagram of the logic circuit synthesized here. The input variables a1 and a2 and a2 and a3 are
The multipliers 203 and 204 respectively multiply and output the output variables b1 and b2.

【0046】なお、表示/編集部108では、入力装置
110により、表示されたグラフィック上で制約の修正
や追加を行うことができる。そして、表示/編集部10
8において、データフローグラフ並びに制約に修正追加
が有った場合は、その変更された情報が、C/DFG生
成部103、スケジューリング部105、及びハードウ
ェアロケーション部106に出力され、その変更を反映
して高位合成が継続される。また、変更情報は、制約解
析部104にも出力され、制約指定記述102に反映さ
れる。
In the display / editing section 108, the input device 110 can correct or add restrictions on the displayed graphic. And a display / editing unit 10
8, when there is a correction addition to the data flow graph and the constraint, the changed information is output to the C / DFG generation unit 103, the scheduling unit 105, and the hardware location unit 106, and the change is reflected. High-level synthesis is continued. The change information is also output to the constraint analysis unit 104 and is reflected in the constraint specification description 102.

【0047】[編集操作]以上説明した制約指定を実際
に編集する例を以下に示す。ここでは、上記の図3の制
約指定に代わって、図6に示すような制約に指定する。
[Editing Operation] An example of actually editing the above-described constraint specification will be described below. Here, instead of the above-described constraint designation in FIG. 3, the constraint is designated as shown in FIG.

【0048】図6に示した制約指定では、入力端子aが
16ビットのビット幅、入力端子resetが1ビット、さ
らにDummyInとして動作記述中の入力変数a1,a2及
びa3とビット幅を宣言し、出力端子bが16ビットの
ビット幅、DummyOutとして動作記述中の出力変数b1と
b2とビット幅を宣言し、次に入力端子と入力変数およ
び出力端子と出力変数の授受のタイミングを示してい
る。
In the constraint specification shown in FIG. 6, the input terminal a declares a bit width of 16 bits, the input terminal reset declares the bit width of the input variables a1, a2 and a3 in the operation description as DummyIn, The output terminal b declares the bit width of the output variables b1 and b2 in the operation description as a 16-bit bit width and DummyOut, and the timing of transfer of the input terminal and the input variable, and the output terminal and the output variable.

【0049】ここでは、1サイクル目に、入力端子aの
値を変数a1に与え、2サイクル目に、入力端子aの値
を変数a2に与え、変数b1の値を出力端子bに与え、
3サイクル目に、入力端子aの値を変数a3に与え、変
数b2の値を出力端子bに与え、次は、1サイクル目の
動作を繰り返す。そして、リセット信号である入力端子
resetがゼロになると、クロックに同期して1サイクル
目の動作、入力端子aの値を変数a1に与える、という
動作を表している。
Here, in the first cycle, the value of the input terminal a is given to the variable a1, and in the second cycle, the value of the input terminal a is given to the variable a2, and the value of the variable b1 is given to the output terminal b.
In the third cycle, the value of the input terminal a is given to the variable a3, and the value of the variable b2 is given to the output terminal b. Then, the operation in the first cycle is repeated. And an input terminal which is a reset signal
When the reset becomes zero, the operation in the first cycle is synchronized with the clock, and the value of the input terminal a is given to the variable a1.

【0050】図7及び図8は、異なるタイミングを指定
した制約である。図9は、図6の制約指定で合成された
結果の一例を示す論理回路図である。
FIGS. 7 and 8 show constraints specifying different timings. FIG. 9 is a logic circuit diagram showing an example of a result synthesized by the constraint designation of FIG.

【0051】上述したような、図6の制約指定が与えら
れた場合、表示/編集部108は、ディスプレイ109
に、図10に示すようなデータフローグラフを表示す
る。図10では、図2に示された動作記述、及び図4に
示されたデータフローグラフに対して、制約として与え
られた入出力端子の値の授受関係とサイクルタイミング
をデータフローグラフ上に表している。
When the constraint designation of FIG. 6 is given as described above, the display / editing unit 108
FIG. 10 shows a data flow graph as shown in FIG. FIG. 10 shows on the data flow graph the transfer relationship and the cycle timing of the values of the input / output terminals given as constraints with respect to the operation description shown in FIG. 2 and the data flow graph shown in FIG. ing.

【0052】詳述すると、図9に示すように、入力信号
としてCLK及びresetが制御回路205に入力されてお
り、この制御回路205によってタイミング制御回路2
06及び207が、入力変数を乗算器208に対して転
送するタイミングを調整している。
More specifically, as shown in FIG. 9, CLK and reset are input to the control circuit 205 as input signals, and the control circuit 205 controls the timing control circuit 2.
06 and 207 adjust the timing of transferring the input variables to the multiplier 208.

【0053】具体的には、タイミング制御回路206及
び207によって、1サイクル目に入力端子aの値が変
数a1として乗算器208に渡され、次いで、2サイク
ル目に、入力端子aの値が変数a2として乗算器208
に渡されるとともに、変数b1の値が出力端子bから出
力される。さらに、3サイクル目に、入力端子aの値が
変数a3として乗算器208に渡されるとともに、変数
b2の値が出力端子bに渡される。
More specifically, the timing control circuits 206 and 207 pass the value of the input terminal a as a variable a1 to the multiplier 208 in the first cycle, and then change the value of the input terminal a to the variable in the second cycle. Multiplier 208 as a2
And the value of the variable b1 is output from the output terminal b. Further, in the third cycle, the value of the input terminal a is passed to the multiplier 208 as the variable a3, and the value of the variable b2 is passed to the output terminal b.

【0054】そして、図9に示した論理回路は、図10
に示すように、上述した乗算器208で行われる乗算処
理及びデータの入出力を、ノード209及び210とし
て表示される。
The logic circuit shown in FIG.
As shown in (2), the multiplication processing and data input / output performed by the multiplier 208 described above are displayed as nodes 209 and 210.

【0055】[高位合成システムによる作用・効果]こ
のように、本実施形態にかかる高位合成システムによれ
ば、高位合成の入力となる動作記述101は変更せず
に、表示/編集部108におい、必要最小限の制約情報
を与えること、或いは、変更することで、回路の並列動
作性等ハードウェア構成及び動作を考慮したハードウェ
ア(RTL記述)を生成することができる。制約が解析
されて、グラフィカルに表示されることにより、制約の
確認及び修正が容易になる。
[Operation and Effect of High-Level Synthesis System] As described above, according to the high-level synthesis system according to the present embodiment, the operation description 101 which is an input of the high-level synthesis is not changed in the display / editing unit 108, and By giving or changing the minimum constraint information, it is possible to generate hardware (RTL description) in consideration of the hardware configuration and operation such as the parallel operability of the circuit. The constraints are analyzed and displayed graphically, which facilitates checking and correcting the constraints.

【0056】また、本実施形態によれば、動作記述とハ
ードウェアの入力信号及び出力信号との各サイクル動作
を、データフローグラフ上で表示することにより、指定
されているサイクル動作を容易に理解確認できるととも
に、動作記述を考慮した制約の指定変更、および、制約
動作を考慮したハードウェア生成をすることができる。
According to the present embodiment, the specified cycle operation can be easily understood by displaying each cycle operation of the operation description and the hardware input signal and output signal on a data flow graph. In addition to confirmation, it is possible to change the designation of a constraint in consideration of the operation description and generate hardware in consideration of the constraint operation.

【0057】さらに、本実施形態に係る高位合成システ
ムによれば、高位合成の入力となる動作記述は変更せず
に、制約として入出力タイミングの各サイクル動作を指
定することにより、回路のハードウェア構成及び動作を
考慮したハードウェアを生成することができる。
Further, according to the high-level synthesis system according to the present embodiment, the operation description which is the input of the high-level synthesis is not changed, and each cycle operation of the input / output timing is specified as a constraint, thereby realizing the hardware of the circuit. Hardware that considers the configuration and operation can be generated.

【0058】[変更例]なお、本発明は、上述した実施
形態に限定されるものではなく、以下のような変更を加
えることができる。
[Modifications] The present invention is not limited to the above-described embodiment, and the following modifications can be made.

【0059】(変更例1)例えば、動作記述に対応した
データフローグラフと、制約に対応した入出力端子の値
の授受関係のサイクル動作を合わせてデータフローグラ
フとして表示する場合に、図11に示すように、各入力
端子と各出力端子と各双方向入出力端子を、データフロ
ーグラフ表示の各カラムに割振って表示するようにして
もよい。
(Modification 1) For example, when a data flow graph corresponding to an operation description and a cycle operation related to the transfer of the value of an input / output terminal corresponding to a constraint are displayed together as a data flow graph, FIG. As shown, each input terminal, each output terminal, and each bidirectional input / output terminal may be assigned to each column of the data flow graph display and displayed.

【0060】詳述すると、同図に示すように、乗算器で
行われる乗算処理をノード211及び212として表示
し、これに対する入力を左側のカラムaに表示し、出力
を右側のカラムbに表示する。
More specifically, as shown in the figure, the multiplication process performed by the multiplier is displayed as nodes 211 and 212, the input corresponding thereto is displayed in the left column a, and the output is displayed in the right column b. I do.

【0061】このような変更例によれば、データフロー
グラフ表示上で、各入出力端子毎に区別して表示するこ
とにより、動作記述中の各変数との信号の授受と各入出
力端子のリソース関係を、容易に把握することができ、
入出力端子リソースの衝突、つまり、リソース不足、あ
るいは、入出力端子リソースの冗長さ、つまり、リソー
ス共有化の可能性を、把握することが可能となる。
According to such a modification, the input / output terminals are distinguished and displayed on the data flow graph display, so that signals can be transmitted / received to / from each variable in the operation description and the resources of each input / output terminal can be used. Relationships can be easily understood,
It is possible to understand the collision of the input / output terminal resources, that is, the resource shortage, or the redundancy of the input / output terminal resources, that is, the possibility of resource sharing.

【0062】(変更例2)また、データフローグラフ表
示する場合に、図12に示すように、入力変数あるいは
出力変数等の変数がクロックサイクルを渡ってデータ値
を保持している動作を、データフローグラフ上で表示す
るようにしてもよい。
(Modification 2) When displaying a data flow graph, as shown in FIG. 12, an operation in which a variable such as an input variable or an output variable holds a data value over a clock cycle is referred to as a data flow graph. You may make it display on a flow graph.

【0063】例えば、同図においては、乗算器で行われ
る乗算処理をノード213及び214として表示し、こ
れへの入出力を時系列に従ってサイクル毎に区分して表
示し、サイクル間におけるデータ保持をマーク313及
び314として表示する。
For example, in the figure, the multiplication process performed by the multiplier is displayed as nodes 213 and 214, and the input and output to and from the nodes are displayed in a time-series manner for each cycle, and data retention between cycles is displayed. It is displayed as marks 313 and 314.

【0064】このような変更例によれば、データフロー
グラフ表示上で、クロックサイクルを渡るデータ保持動
作をデータフローグラフ上で表示することにより、ハー
ドウェア内部動作と、制約で与えられている入出力端子
の値の授受の関係を容易に理解確認できるとともに、動
作記述を考慮した制約の指定変更、および、制約動作を
考慮したハードウェア生成をすることができる。
According to such a modification, the data holding operation over the clock cycle is displayed on the data flow graph on the data flow graph, so that the internal operation of the hardware and the input given by the constraint are restricted. It is possible to easily understand and confirm the relationship between the transfer of the values of the output terminals, change the designation of constraints in consideration of the operation description, and generate hardware in consideration of the constraint operation.

【0065】(変更例3)図2に示す動作記述に対し
て、図13に示す制約を指定した場合の、データフロー
グラフが図14に示すようなものになる。ここで、高位
合成のスケジューリング部において、16ビット乗算器
の演算処理(ノード215及び216)の時間を見積っ
たところ、クロックCLKの周期10nSより演算処理
時間が長くかかり、16ビット乗算器の演算処理が2サ
イクル必要な旨のメッセージを出力する。
(Modification 3) When the constraints shown in FIG. 13 are specified for the operation description shown in FIG. 2, the data flow graph becomes as shown in FIG. Here, in the scheduling unit of the high-level synthesis, when the time of the operation processing (nodes 215 and 216) of the 16-bit multiplier is estimated, the operation processing time is longer than the period 10 ns of the clock CLK, and the operation processing of the 16-bit multiplier is performed. Outputs a message that two cycles are required.

【0066】これに対して、高位合成を実行している設
計者は、データフローグラフ表示上で制約の修正をする
ことが可能であり、図15に示すデータフローグラフの
ように、入力端子in2の値が入力変数a2に渡される
タイミングを、2サイクル目から1サイクル目に変更し
たとする。
On the other hand, a designer who is executing high-level synthesis can correct the constraint on the data flow graph display. As shown in the data flow graph shown in FIG. Is changed from the second cycle to the first cycle.

【0067】図15では、図14において2サイクル目
に示されている入力端子in2の値を入力変数a2に渡
す部分の、変数a2が、設計者によって、2サイクル目
から1サイクル目に、ドラッグ&ドロップされて、1サ
イクル目で入力端子in2の値を入力変数a2に渡すよ
うに修正されている。また、図15では、16ビット乗
算器の演算処理が2サイクルかかることを反映して、乗
算器による演算処理を表すノード217及び218が、
クロックの区切りを跨って2サイクルかかるように表示
されている。
In FIG. 15, the variable a2 of the portion that passes the value of the input terminal in2 shown in the second cycle in FIG. 14 to the input variable a2 is dragged by the designer from the second cycle to the first cycle. It is corrected so that the value of the input terminal in2 is passed to the input variable a2 in the first cycle. In FIG. 15, nodes 217 and 218 representing the arithmetic processing by the multiplier reflect the fact that the arithmetic processing of the 16-bit multiplier takes two cycles.
It is shown that it takes two cycles across the clock break.

【0068】また、図16は、同じデータフローグラフ
の表示において、表示オプションを変更して、クロック
サイクルを渡るデータ値の保持並びに、演算器等とのデ
ータの授受関係を、マークによって表示するようにした
場合の表示例の1つである。
FIG. 16 shows a display of the same data flow graph in which the display options are changed so that the data value retention over the clock cycle and the data transfer relationship with the arithmetic unit and the like are indicated by marks. This is one of the display examples in the case of "1".

【0069】このデータフローグラフ表示では、1サイ
クル目の変数a1および変数a2の値が乗算器(ノード
221)に入力され、2サイクル目でも変数a1および
変数a2の1サイクル目の値がそれぞれ保持され(マー
ク221,222,223a)、乗算器に入力されてい
ること、更に、3サイクル目でも変数a2の値が保持さ
れ(マーク223b)、変数a3の値と変数a2の値が
乗算器(ノード220)に入力されていること、4サイ
クル目でも変数a3及び変数a2の3サイクル目の値が
それぞれ保持され(マーク224及び225)、乗算器
(ノード220)に入力されていることを示している。
In this data flow graph display, the values of the variables a1 and a2 in the first cycle are input to the multiplier (node 221), and the values of the variables a1 and a2 in the first cycle are held in the second cycle, respectively. (Marks 221, 222, 223 a), being input to the multiplier, the value of the variable a 2 is held even in the third cycle (mark 223 b), and the value of the variable a 3 and the value of the variable a 2 are multiplied by the multiplier ( Node 220), the values of the variables a3 and a2 in the third cycle are held (marks 224 and 225) in the fourth cycle, respectively, and are input to the multiplier (node 220). ing.

【0070】図17は、図15上のデータフローグラフ
において修正された制約指定を反映して出力された制約
指定例である。そして、このように修正された制約指定
に基づいて、図18に示すような論理回路が生成され
る。すなわち、同図に示すように、制御回路226によ
ってタイミング制御回路227及び228を制御され、
これらのタイミング制御回路227及び228からの出
力が乗算器229に入力されるという簡単な構造に適正
化されている。
FIG. 17 is an example of a constraint specification output reflecting the constraint specification modified in the data flow graph of FIG. Then, a logic circuit as shown in FIG. 18 is generated based on the constraint specification thus modified. That is, as shown in the figure, the timing control circuits 227 and 228 are controlled by the control circuit 226,
The output from these timing control circuits 227 and 228 is optimized for a simple structure in which the output is input to a multiplier 229.

【0071】このような変更例によれば、データフロー
グラフ上で、動作記述中の変数と、ハードウェアの入力
信号及び出力信号の対応を修正することにより、高位合
成による動作記述のハードウェア化変換と、ハードウェ
アの入力信号及び出力信号のサイクルタイミングの関係
を容易に把握確認し、より適切なハードウェアの入力信
号及び出力信号のサイクルタイミング及び、ハードウェ
ア化変換を実現することができる。
According to such a modification, the correspondence between the variables in the operation description and the input and output signals of the hardware is modified on the data flow graph, whereby the operation description by the high-level synthesis is implemented in hardware. The relationship between the conversion and the cycle timing of the input signal and the output signal of the hardware can be easily grasped and confirmed, and more appropriate cycle timing of the input signal and the output signal of the hardware and the conversion to hardware can be realized.

【0072】(変更例4)また、図2に示す動作記述に
対して、図22に示すようなデータ転送入出力動作の実
現を行う場合には、以下のような変更を加えることがで
きる。
(Modification 4) In the case where a data transfer input / output operation as shown in FIG. 22 is realized with respect to the operation description shown in FIG. 2, the following changes can be made.

【0073】図22において、入力信号req_inがデータ
転送を知らせる信号であり、req_inが値1になった後
に、入力データが入力d_inに連続して入力され、req_in
が値0に戻ると、d_inへの入力データ転送が止まる。ま
た、演算処理結果は、出力信号d_outとして、各クロッ
クサイクル毎に連続してデータ出力転送される。d_out
からデータ出力されることを知らせる信号として、出力
信号req_outが出力される。このようなデータ転送入出
力動作のハードウェアを生成するための制約指定の一例
が、図19である。
In FIG. 22, an input signal req_in is a signal for notifying data transfer, and after req_in has a value of 1, input data is continuously input to input d_in, and req_in
Returns to the value 0, the input data transfer to d_in stops. Further, the result of the arithmetic processing is continuously output as an output signal d_out in each clock cycle. d_out
An output signal req_out is output as a signal notifying that data is output from. FIG. 19 shows an example of a constraint specification for generating hardware for such a data transfer input / output operation.

【0074】図19の制約指定では、7状態(State S0
〜State S6)を用いて、待機状態や各データ処理状態で
の信号入力出力動作と次状態の指定が示されている。図
20のデータフローグラフ表示は、上述した実施形態の
図10或いは変更例1の図11で説明したものと同様
の、動作記述中の変数と入力信号及び出力信号端子の対
応、及び演算処理(ノード230及び231)を表示し
たデータフローグラフを表示したものである。
In the constraint designation shown in FIG. 19, seven states (State S0
~ State S6), the signal input / output operation in the standby state or each data processing state and the designation of the next state are shown. The data flow graph display of FIG. 20 shows the correspondence between the variable in the operation description, the input signal and the output signal terminal, and the arithmetic processing (the same as that described in FIG. 10 of the above-described embodiment or FIG. 11 of the first modification). This is a data flow graph displaying the nodes 230 and 231).

【0075】図21は、図20のデータフローグラフ表
示において、制約指定で与えられた他の入出力動作もデ
ータフローグラフ上に表示した一例である。図20のデ
ータフローグラフ表示では、図19の制約指定における
State S1,State S2,StateS3,State S6の各状態に対
応する動作のデータフローグラフが表示されている。
FIG. 21 shows an example in which, in the data flow graph display of FIG. 20, other input / output operations given by designating constraints are also displayed on the data flow graph. In the data flow graph display of FIG. 20, in the constraint specification of FIG.
The data flow graph of the operation corresponding to each state of State S1, State S2, StateS3, and State S6 is displayed.

【0076】図21では、枠334で示した部分におい
て、State S4,State S2,State S3の状態を挿入したデ
ータフローグラフ、つまり、State S1,State S2,Stat
e S3,State S4,State S2,State S3,State S6の各状
態に対応する動作のデータフローグラフが表示されてい
る。
In FIG. 21, a data flow graph in which the states of State S4, State S2, and State S3 are inserted in the portion indicated by a frame 334, that is, State S1, State S2, and Stat
The data flow graph of the operation corresponding to each state of eS3, State S4, State S2, State S3, and State S6 is displayed.

【0077】表示指定を変更することにより、State S
1,State S2,State S3,State S4,State S2,State S
5の各状態に対応する動作のデータフローグラフを表示
したり、他の遷移可能な各状態に対応するデータフロー
グラフを表示できる。
By changing the display designation, the State S
1, State S2, State S3, State S4, State S2, State S
The data flow graph of the operation corresponding to each state of 5 can be displayed, and the data flow graph corresponding to each of the other transitionable states can be displayed.

【0078】図23は、この場合に合成された論理回路
の簡略な論理回路図である。すなわち、図23に示すよ
うに、制御回路236によってタイミング制御回路23
7,238及び240を制御することにより、乗算器2
39に対して入出力されるデータを制御している。
FIG. 23 is a simplified logic circuit diagram of the logic circuit synthesized in this case. That is, as shown in FIG.
7, 238 and 240, the multiplier 2
It controls the data input to and output from 39.

【0079】このような変更例によれば、データフロー
グラフ上で、データ転送入出力動作に対応した各状態シ
ーケンスを表示できることにより、動作記述中の変数
と、高位合成による動作記述のハードウェア化変換と、
ハードウェアの入力信号及び出力信号のデータ転送動作
の関係を容易に把握確認し、より適切なハードウェアの
入力信号及び出力信号のサイクルタイミング及び、ハー
ドウェア化変換を実現することができる。
According to such a modification, each state sequence corresponding to the data transfer input / output operation can be displayed on the data flow graph, so that the variables in the operation description and the operation description by high-level synthesis can be implemented in hardware. Conversion and
The relationship between the data transfer operation of the input signal and the output signal of the hardware can be easily grasped and confirmed, and the more appropriate cycle timing of the input signal and the output signal of the hardware and the conversion to hardware can be realized.

【0080】(変更例5)上記の変更例4において、図
19の制約指定が与えられた場合に、制約指定を解析
し、図24に示すような状態遷移図を表示するようにし
てもよい。図24では、各状態(S0〜S6)間での遷移関
係を示す矢印と、遷移条件(req_in)が表示されてい
る。
(Fifth Modification) In the fourth modification, when the constraint designation shown in FIG. 19 is given, the constraint designation may be analyzed and a state transition diagram as shown in FIG. 24 may be displayed. . In FIG. 24, an arrow indicating a transition relationship between the respective states (S0 to S6) and a transition condition (req_in) are displayed.

【0081】このような変更例によれば、与えられた制
約の状態遷移動作を、状態遷移図として表示することに
より、制約動作の状態遷移関係を容易に把握することが
でき、適切な制約動作の指定、および、制約動作を考慮
した適切なハードウェアの入力信号及び出力信号のサイ
クルタイミング及び、ハードウェア化変換を実現するこ
とができる。
According to such a modification, by displaying the state transition operation of the given constraint as a state transition diagram, the state transition relationship of the constraint operation can be easily grasped, and the appropriate constraint operation can be performed. , And appropriate hardware input signal and output signal cycle timing and hardware conversion in consideration of the restricted operation.

【0082】[0082]

【発明の効果】本発明に係る高位合成システムによれ
ば、現状の高位合成において、高位合成の入力となる動
作記述は変更せずに(ソフトウェアのアルゴリズム動作
記述そのままで)、また、出力となるレジスタトランス
ファレベル記述等は変更せずに、制約として、必要最小
限の制約情報を与えることで、回路並列動作性を高めた
ハードウェアを生成することができる。
According to the high-level synthesis system of the present invention, in the current high-level synthesis, the operation description which is the input of the high-level synthesis is not changed (as is, the algorithm operation description of the software) and is output. By giving the minimum necessary constraint information as a constraint without changing the register transfer level description and the like, it is possible to generate hardware with improved circuit parallel operability.

【0083】また、本発明によれば、与えた制約が解析
されて、グラフィカル表示されることにより、視覚的に
制約の確認しつつ、制約の修正を容易にすることができ
る。
Further, according to the present invention, the given constraint is analyzed and graphically displayed, so that the constraint can be easily corrected while visually confirming the constraint.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本実施形態に係る高位合成システムの概略構成
を示すブロック図である。
FIG. 1 is a block diagram illustrating a schematic configuration of a high-level synthesis system according to an embodiment.

【図2】本実施形態に係る動作記述例を示す説明図であ
る。
FIG. 2 is an explanatory diagram showing an operation description example according to the embodiment;

【図3】本実施形態に係る制約指定例を示す説明図であ
る。
FIG. 3 is an explanatory diagram illustrating an example of a constraint specification according to the embodiment;

【図4】本実施形態に係るデータフローグラフ図であ
り、図2及び図3に示された動作記述例及び制約指定例
に基づいて表示されたものである。
FIG. 4 is a data flow graph according to the embodiment, which is displayed based on the operation description example and the constraint specification example shown in FIGS. 2 and 3.

【図5】本実施形態に係る論理回路図であり、図4に示
したデータフローグラフに基づいて合成されたものであ
る。
5 is a logic circuit diagram according to the present embodiment, which is synthesized based on the data flow graph shown in FIG.

【図6】本実施形態において修正後された制約指定例を
示す説明図である。
FIG. 6 is an explanatory diagram showing an example of a constraint specification corrected in this embodiment.

【図7】本実施形態に係る制約指定例を示す説明図であ
り、異なるタイミングを制約として修正した制約指定例
を示す説明図である。
FIG. 7 is an explanatory diagram showing a constraint specification example according to the embodiment, and is an explanatory diagram showing a constraint specification example in which different timings are corrected as constraints.

【図8】本実施形態に係る制約指定例を示す説明図であ
り、異なるタイミングを制約として修正した制約指定例
を示す説明図である。
FIG. 8 is an explanatory diagram showing a constraint designation example according to the embodiment, and is an explanatory diagram showing a constraint designation example in which different timings are modified as constraints.

【図9】本実施形態において、図6に示した修正後の制
約指定に基づいて合成された論理回路の論理回路図であ
る。
9 is a logic circuit diagram of a logic circuit synthesized based on the modified constraint designation shown in FIG. 6 in the present embodiment.

【図10】本実施形態において、図6に示した制約指定
に基づいて表示されたデータフローグラフ図である。
FIG. 10 is a data flow graph displayed based on the constraint designation shown in FIG. 6 in the present embodiment.

【図11】変更例1において表示されたデータフローグ
ラフ図である。
FIG. 11 is a data flow graph displayed in the first modification.

【図12】変更例2において表示されたデータフローグ
ラフ図である。
FIG. 12 is a data flow graph displayed in Modification Example 2.

【図13】変更例3に係る制約指定例を示す説明図であ
る。
FIG. 13 is an explanatory diagram illustrating an example of a constraint specification according to a third modification.

【図14】変更例3おいて表示された、修正前のデータ
フローグラフ図である。
FIG. 14 is a data flow graph before modification displayed in Modification Example 3.

【図15】変更例3において表示された、修正後のデー
タフローグラフ図である。
FIG. 15 is a data flow graph after correction displayed in Modification Example 3.

【図16】変更例3において、表示オプションを変更し
て表示したデータフローグラフ図である。
FIG. 16 is a data flow graph diagram in which display options are changed and displayed in Modification Example 3.

【図17】変更例3に係る制約指定例を示す説明図であ
る。
FIG. 17 is an explanatory diagram illustrating a constraint specification example according to a third modification.

【図18】変更例3において合成された論理回路の論理
回路図である。
FIG. 18 is a logic circuit diagram of a logic circuit synthesized in Modification Example 3.

【図19】変更例4に係る制約指定例を示す説明図であ
る。
FIG. 19 is an explanatory diagram illustrating an example of constraint specification according to Modification Example 4.

【図20】変更例4において表示されたデータフローグ
ラフ図である。
FIG. 20 is a data flow graph displayed in Modification Example 4.

【図21】変更例4において表示されたデータフローグ
ラフ図である。
FIG. 21 is a data flow graph displayed in Modification Example 4.

【図22】変更例4における、入力信号及び出力信号の
関係を示す説明図である。
FIG. 22 is an explanatory diagram showing a relationship between an input signal and an output signal in a fourth modification.

【図23】変更例4において合成された論理回路の論理
回路図である。
FIG. 23 is a logic circuit diagram of a logic circuit synthesized in Modification Example 4.

【図24】変更例5において、図19の制約指定が与え
られた場合の状態遷移図である。
FIG. 24 is a state transition diagram when the constraint designation of FIG. 19 is given in the fifth modification.

【符号の説明】[Explanation of symbols]

101…動作記述 102…制約指定 103…C/D
FG生成部(動作記述解析部) 104…制約解析部
105…スケジューリング部(合成部) 106…ハー
ドウェアロケーション部(合成部) 107…RTL記
述生成部(合成部) 108…表示/編集部(表示部、
編集部) 109…ディスプレイ部(表示部) 110
…入力装置 111…RTL記述
101: operation description 102: constraint specification 103: C / D
FG generation unit (operation description analysis unit) 104: constraint analysis unit
105: scheduling unit (synthesizing unit) 106: hardware location unit (synthesizing unit) 107: RTL description generating unit (synthesizing unit) 108: display / editing unit (display unit,
Editing unit) 109 Display unit (display unit) 110
... input device 111 ... RTL description

───────────────────────────────────────────────────── フロントページの続き (72)発明者 西尾 誠一 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝マイクロエレクトロニクスセン ター内 (72)発明者 藤田 透 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝マイクロエレクトロニクスセン ター内 Fターム(参考) 5B046 AA08 BA02 DA06 GA01 HA05 HA09  ──────────────────────────────────────────────────続 き Continuing on the front page (72) Inventor Seiichi Nishio 1st address, Komukai Toshiba-cho, Saiwai-ku, Kawasaki-shi, Kanagawa Prefecture Inside the Toshiba Microelectronics Center Co., Ltd. No. 1 Toshiba-cho F-term in Toshiba Microelectronics Center Co., Ltd. (reference) 5B046 AA08 BA02 DA06 GA01 HA05 HA09

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】 論理回路の設計に用いられる高位合成シ
ステムにおいて、 設計対象である論理回路の動作を記述した動作記述を解
析する動作記述解析部と、 前記論理回路の入力信号及び出力信号に対する動作の制
約を解析する制約解析部と、 前記制約の解析結果を表示する表示部と、 前記制約の解析結果を修正する編集部と、 前記動作記述解析部による解析結果と、前記制約解析部
による解析結果または前記編集部における編集結果に基
づいて高位合成を行う合成部とを有することを特徴とす
る高位合成システム。
1. A high-level synthesis system used for designing a logic circuit, comprising: an operation description analysis unit for analyzing an operation description describing an operation of a logic circuit to be designed; and an operation for an input signal and an output signal of the logic circuit. A constraint analysis unit for analyzing the constraint, a display unit for displaying the constraint analysis result, an editing unit for correcting the constraint analysis result, an analysis result by the operation description analysis unit, and an analysis by the constraint analysis unit A high-level synthesis system comprising: a high-level synthesis unit that performs high-level synthesis based on the result or the editing result in the editing unit.
【請求項2】 前記編集部は、表示部により表示された
画面上の操作によって、前記制約の解析結果を修正する
インターフェース部を有することを特徴とする請求項1
に記載の高位合成システム。
2. The editing unit according to claim 1, wherein the editing unit includes an interface unit that corrects an analysis result of the constraint by an operation on a screen displayed by a display unit.
2. The high-level synthesis system according to 1.
【請求項3】 前記表示部は、前記論理回路に対する入
力信号及び出力信号に関する動作の制約である動作記述
中の変数と、前記論理回路の入力信号及び出力信号と
を、サイクル動作毎に表示する機能を有することを特徴
とする請求項1または2に記載の高位合成システム。
3. The display unit displays, in each cycle operation, a variable in an operation description that is a restriction on an operation related to an input signal and an output signal to the logic circuit, and an input signal and an output signal of the logic circuit. 3. The high-level synthesis system according to claim 1, having a function.
【請求項4】 前記表示部は、データフロー図上で、ス
ケジューリングと、動作記述中の変数と、ハードウェア
の入力信号及び出力信号との対応を表示する機能を有す
ることを特徴とする請求項1乃至3に記載の高位合成シ
ステム。
4. The display unit has a function of displaying, on a data flow diagram, a correspondence between a scheduling, a variable in an operation description, and an input signal and an output signal of hardware. 4. The high-level synthesis system according to any one of 1 to 3.
【請求項5】 前記表示部は、データフロー図上で、前
記論理回路の入力信号及び出力信号毎に対応をつけて表
示する機能を有することを特徴とする請求項4の高位合
成システム。
5. The high-level synthesis system according to claim 4, wherein the display unit has a function of displaying the input and output signals of the logic circuit in association with each other on a data flow diagram.
【請求項6】 前記表示部は、データフロー図上で、前
記論理回路の入力信号及び出力信号値の保持の有無と更
新の有無の対応を区別して表示する機能を有することを
特徴とする請求項4または5記載の高位合成システム。
6. The display unit according to claim 1, wherein the display unit has a function of distinguishing, on a data flow diagram, a correspondence between an input signal and an output signal value of the logic circuit and whether the input signal and the output signal value are updated or not. Item 6. The high-level synthesis system according to item 4 or 5.
【請求項7】 前記表示部は、データフロー図上で、動
作記述中の変数と、ハードウェアのデータ転送入力信号
及び出力信号動作の対応を表示する機能を有することを
特徴とする請求項4乃至6に記載の高位合成システム。
7. The display unit according to claim 4, wherein the display unit has a function of displaying, on a data flow diagram, a correspondence between a variable in an operation description and a data transfer input signal and an output signal operation of hardware. 7. The high-level synthesis system according to any one of items 1 to 6.
【請求項8】 前記表示部は、前記制約解析部による解
析結果を状態遷移図として表示する機能を有し、 前記編集部は、表示画面に表示された状態遷移図を修正
することにより前記制約等の解析結果を修正する機能を
有することを特徴とする請求項1乃至7に記載の高位合
成システム。
8. The display unit has a function of displaying an analysis result by the constraint analyzing unit as a state transition diagram, and the editing unit corrects the constraint by modifying the state transition diagram displayed on a display screen. 8. The high-level synthesis system according to claim 1, wherein the system has a function of correcting the analysis result.
【請求項9】 論理回路の設計に用いられる高位合成方
法において、 設計対象である論理回路の動作を記述した動作記述を解
析し、 前記論理回路の入力信号及び出力信号に対する動作の制
約を解析し、 前記制約の解析結果を表示し、 この表示に基づいて前記制約の解析結果を修正し、 前記動作記述についての解析結果と、前記制約について
の解析結果または前記修正の結果に基づいて高位合成を
行うことを特徴とする高位合成方法。
9. A high-level synthesis method used for designing a logic circuit, comprising: analyzing an operation description describing an operation of a logic circuit to be designed; analyzing an operation constraint on an input signal and an output signal of the logic circuit; Displaying the analysis result of the constraint, correcting the analysis result of the constraint based on the display, and performing high-level synthesis based on the analysis result of the operation description and the analysis result of the constraint or the result of the correction. A high-level synthesis method characterized by performing.
JP2001018366A 2001-01-26 2001-01-26 High order synthesizing system and high order synthesizing method Pending JP2002222228A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001018366A JP2002222228A (en) 2001-01-26 2001-01-26 High order synthesizing system and high order synthesizing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001018366A JP2002222228A (en) 2001-01-26 2001-01-26 High order synthesizing system and high order synthesizing method

Publications (1)

Publication Number Publication Date
JP2002222228A true JP2002222228A (en) 2002-08-09

Family

ID=18884404

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001018366A Pending JP2002222228A (en) 2001-01-26 2001-01-26 High order synthesizing system and high order synthesizing method

Country Status (1)

Country Link
JP (1) JP2002222228A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100395758C (en) * 2002-10-14 2008-06-18 英业达股份有限公司 Method for setting and activating group display of circuit distribution engineering
JP2009217778A (en) * 2008-03-13 2009-09-24 Nec Corp Behavioral synthesis device, behavioral synthesis method and program
JP2011108164A (en) * 2009-11-20 2011-06-02 Nec Corp System, method, and program for synthesizing behavior
JP2014174940A (en) * 2013-03-13 2014-09-22 Renesas Electronics Corp Operation composition device and operation composition program
JP2015049560A (en) * 2013-08-30 2015-03-16 株式会社日立情報通信エンジニアリング Method for connecting new design data created by high-level synthesis to existing design data

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100395758C (en) * 2002-10-14 2008-06-18 英业达股份有限公司 Method for setting and activating group display of circuit distribution engineering
JP2009217778A (en) * 2008-03-13 2009-09-24 Nec Corp Behavioral synthesis device, behavioral synthesis method and program
JP2011108164A (en) * 2009-11-20 2011-06-02 Nec Corp System, method, and program for synthesizing behavior
JP2014174940A (en) * 2013-03-13 2014-09-22 Renesas Electronics Corp Operation composition device and operation composition program
JP2015049560A (en) * 2013-08-30 2015-03-16 株式会社日立情報通信エンジニアリング Method for connecting new design data created by high-level synthesis to existing design data

Similar Documents

Publication Publication Date Title
US6318911B1 (en) Gated clock design supporting method, gated clock design supporting apparatus, and computer readable memory storing gated clock design supporting program
US20070168902A1 (en) Method for high-level synthesis of semiconductor integrated circuit
US6647539B1 (en) Method of designing semiconductor integrated circuit device
EP2098969A1 (en) Logic circuit designing device for asynchronous logic circuit, logic circuit designing method, and logic circuit designing program
JP6910198B2 (en) How to create an FPGA netlist
JP2001229217A (en) Higher-order synthesizing method and recording medium used for its implementation
JP2002222228A (en) High order synthesizing system and high order synthesizing method
Bergamaschi et al. A system for production use of high-level synthesis
Poole Self-timed logic circuits
US5740070A (en) Apparatus for automatically generating logic circuit
JPH10133768A (en) Clock system and semiconductor device, and method for testing semiconductor device, and cad device
US8176451B2 (en) Behavioral synthesis apparatus, behavioral synthesis method, and computer readable recording medium
JP2011164740A (en) Apparatus and method for circuit design
JP2000057180A (en) High-order synthesizing device, its method, and medium for recording high-order synthesizing program
JP4891807B2 (en) High level synthesis apparatus and high level synthesis method
JP2020160650A (en) High-order synthesis method, high-order synthesis apparatus, and high-order synthesis system
JP2007287088A (en) High-level synthesis method and high-level synthesis system
JP2003067438A (en) Method for generating simulation model, method of simulation and its recording medium
JP2006099678A (en) Simulation model generating device, device and system and method for simulation and program
JP2005078402A (en) Action composite method for electronic circuit
JP2002073712A (en) Circuit generating device, circuit generating method and cad designing device
JP2000322458A (en) Optimizing processing method for logic circuit and logic design system using the same
JP3071882B2 (en) Logic circuit synthesizer
JPH117458A (en) Logical synthesis method
KIM et al. Automatic process-oriented asynchronous control unit generation from control data flow graphs

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050308

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080304

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080701