JP2001184377A - Operation delay computer and operation delay computing method - Google Patents

Operation delay computer and operation delay computing method

Info

Publication number
JP2001184377A
JP2001184377A JP36783599A JP36783599A JP2001184377A JP 2001184377 A JP2001184377 A JP 2001184377A JP 36783599 A JP36783599 A JP 36783599A JP 36783599 A JP36783599 A JP 36783599A JP 2001184377 A JP2001184377 A JP 2001184377A
Authority
JP
Japan
Prior art keywords
delay
type
calculation
bit width
calculating
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.)
Granted
Application number
JP36783599A
Other languages
Japanese (ja)
Other versions
JP3816286B2 (en
Inventor
Hiroshi Imai
浩史 今井
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 JP36783599A priority Critical patent/JP3816286B2/en
Publication of JP2001184377A publication Critical patent/JP2001184377A/en
Application granted granted Critical
Publication of JP3816286B2 publication Critical patent/JP3816286B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To precisely calculate the delay of a continuous operation and to accurately conduct scheduling. SOLUTION: A continuous operation analysis part analyzes the type of the operation of a continuous operation formula and bit width, which are inputted from a continuous operation input part. A calculation type selection part selects a calculation type by referring to a calculation type library in accordance with the type of the operation of the inputted continuous operation formula. A calculation method selection part selects a calculation method in accordance with the type of the inputted continuous operation formula by referring to a calculation method library. A delay calculation part calculates the additional delay of the inputted continuous operation formula by using the calculation method selected in accordance with the type, adds the additional delay to the delay of the first operation and calculates the delay of the continuous operation. Thus, the delay of the continuous operation can more precisely be calculated and scheduling can more accurately be conducted compared to a conventional method where the delays of the first and second operations are simply added.

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 technique for synthesizing a logic circuit from an operation description, and more particularly to an arithmetic delay calculating apparatus and method used for a scheduling process for synthesizing a logic circuit by the high-level synthesis technique. .

【0002】[0002]

【従来の技術】近年、製品サイクルが短くなり、設計か
ら市場投入までの時間の短縮が求められている。この設
計期間短縮のため、論理設計のレベルを従来のレジスタ
転送レベル(以下RTレベルと記す)より抽象度の高い
動作レベルヘ上げた設計技術が現れてきている。特に、
動作レベルの記述(以下動作記述と記す)から論理回路
を合成する高位合成技術が注目されてきている。
2. Description of the Related Art In recent years, product cycles have been shortened, and there has been a demand for a reduction in time from design to introduction to the market. In order to shorten the design period, a design technique has emerged in which the logic design level is raised to an operation level having a higher abstraction level than the conventional register transfer level (hereinafter, referred to as an RT level). In particular,
Attention has been paid to a high-level synthesis technique for synthesizing a logic circuit from a description of an operation level (hereinafter referred to as an operation description).

【0003】この高位合成技術により性能の良い回路を
合成するためには、性能の良いスケジューリング処理が
必要である。スケジューリングとは動作記述中の演算を
クロック・サイクル毎に実行されるグルーブに分割する
処理である。1クロック・サイクル内で実行できる演算
列はひとつのグループに入れることができる。
In order to synthesize a high-performance circuit using this high-level synthesis technique, a high-performance scheduling process is required. Scheduling is a process of dividing an operation in an operation description into grooves that are executed every clock cycle. The operation sequence that can be executed within one clock cycle can be put into one group.

【0004】[0004]

【発明が解決しようとする課題】ところで、上記したス
ケジューリングは、演算のディレイに基づいてグループ
分けするので、ディレイ計算の正確さがスケジューリン
グ結果に大きく影響する。特に、連続した演算のディレ
イを従来では個々の演算のディレイの合計として計算し
ているため、実際のディレイ値との誤差が大きく、本来
なら連続した演算を1クロック・サイクルで実行できる
にも拘らず、1クロック・サイクルで実行できないとい
う誤判定が生じ、連続した演算を別々のグループヘ分割
するといった状況が起っている。このため、動作終了ま
でのクロック・サイクル数が多い、即ち処理速度が遅い
論理回路が合成されるといった問題があった。
In the above-described scheduling, since the grouping is performed based on the operation delay, the accuracy of the delay calculation greatly affects the scheduling result. In particular, since the delay of a continuous operation is conventionally calculated as the sum of the delays of the individual operations, there is a large error from the actual delay value, and although a continuous operation can be normally performed in one clock cycle, However, an erroneous determination that execution cannot be performed in one clock cycle has occurred, and a situation has occurred in which a continuous operation is divided into separate groups. For this reason, there has been a problem that the number of clock cycles until the end of the operation is large, that is, a logic circuit having a low processing speed is synthesized.

【0005】本発明は、上述の如き従来の課題を解決す
るためになされたもので、その目的は、連続した演算の
ディレイを精度よく計算することができ、従ってスケジ
ューリングを正確に行うことができる演算ディレイ計算
装置及び方法を提供することである。
SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned conventional problems, and an object of the present invention is to accurately calculate a delay of a continuous operation, and to accurately perform scheduling. An operation delay calculating apparatus and method are provided.

【0006】[0006]

【課題を解決するための手段】上記目的を達成するため
に、請求項1の発明の特徴は、第1の演算と第2の演算
から成る連続演算を論理回路で行わせる際のディレイを
計算する演算ディレイ計算方法において、前記第1の演
算の種類と前記第2の演算の種類のペア及び前記第1の
演算のビット幅と前記第2の演算のビット幅のペアによ
り一意的に決まる追加ディレイを計算する過程と、前記
第1の演算の種類とビット幅で決まる予め知られいてる
第1の演算のディレイに前記算出された追加ディレイを
加算して、前記第1、第2の演算から成る連続演算のデ
ィレイを算出する過程とを具備することにある。 請求
項2の発明の特徴は、前記第1の演算の種類と前記第2
の演算の種類のペアで決まる計算タイプを設定し、この
計算タイプと前記第1の演算のビット幅と前記第2の演
算のビット幅のペアにより一意的に決まる追加ディレイ
を計算することにある。
In order to achieve the above object, a feature of the present invention is to calculate a delay when a continuous operation including a first operation and a second operation is performed by a logic circuit. In the operation delay calculation method, the pair of the type of the first operation and the type of the second operation and the pair of the bit width of the first operation and the bit width of the second operation are uniquely determined. Calculating the delay, adding the calculated additional delay to a delay of the first operation, which is determined in advance by the type and bit width of the first operation, and calculating the delay from the first and second operations. And calculating the delay of the continuous operation. A feature of the invention according to claim 2 is that the type of the first operation and the second operation
And a calculation type determined by a pair of the operation types described above, and calculating an additional delay uniquely determined by a pair of the calculation type, the bit width of the first operation, and the bit width of the second operation. .

【0007】請求項3の発明の特徴は、第1の演算と第
2の演算から成る連続演算を論理回路で行わせる際のデ
ィレイを計算する演算ディレイ計算装置において、前記
第1の演算と前記第2の演算から成る連続演算の各演算
の種類及びビット幅を求める解析手段と、前記第1の演
算と前記第2の演算の種類のペアに対応する計算タイプ
を求めるタイプ選択手段と、前記求まった計算タイプに
対応する追加ディレイの計算方法を選択する計算方法選
択手段と、前記選択された計算方法を用い且つ前記求ま
った各演算のビット幅をパラメータとして追加ディレイ
を算出し、得られた追加ディレイを前記第1の演算のデ
ィレイに加算して前記連続演算のディレイを算出するデ
ィレイ計算手段とを具備することにある。
According to a third aspect of the present invention, there is provided an operation delay calculator for calculating a delay when a continuous operation including a first operation and a second operation is performed by a logic circuit. Analysis means for obtaining the type and bit width of each operation of a continuous operation comprising a second operation; type selection means for obtaining a calculation type corresponding to a pair of the first operation and the second operation type; A calculation method selecting means for selecting a calculation method of an additional delay corresponding to the obtained calculation type; and calculating the additional delay by using the selected calculation method and using the obtained bit width of each operation as a parameter. Delay calculation means for adding the additional delay to the delay of the first calculation to calculate the delay of the continuous calculation.

【0008】請求項4の発明の前記タイプ選択手段は、
前記第1の演算と前記第2の演算のビット幅を変えて求
めた前記第1の演算と前記第2の演算の種類のペアに対
応する計算タイプを保持する第1の保持手段を有し、こ
の保持手段を参照して前記第1の演算と前記第2の演算
の種類のペアに対応する計算タイプを求め、前記計算方
法選択手段は、前記タイプ別に予め求められた前記第1
の演算と前記第2の演算のビット幅の関数で表される追
加ディレイの計算方法を保持する第2の保持手段を有
し、この保持手段を参照して前記計算タイプに対応する
追加ディレイの計算方法を求める。
According to a fourth aspect of the present invention, the type selecting means includes:
A first holding unit that holds a calculation type corresponding to a pair of the first operation and the second operation obtained by changing the bit width of the first operation and the second operation. The calculation type corresponding to the pair of the type of the first operation and the type of the second operation is determined with reference to the holding unit, and the calculation method selection unit determines the first type determined in advance for each type.
And a second holding means for holding a calculation method of the additional delay expressed by a function of the bit width of the second operation, and referring to the holding means, the additional delay of the additional delay corresponding to the calculation type is referred to. Find the calculation method.

【0009】請求項5の発明の特徴は、前記連続演算の
計算タイプ毎に前記第1、第2の演算の各ビット幅を変
化させて、前記連続演算を論理合成で得られた論理回路
により実行することで得られるディレイデータを収集
し、これら収集したディレイデータに基づいて前記追加
ディレイの計算方法で用いる定数を求める定数生成手段
を設けたことにある。
According to a fifth aspect of the present invention, the bit width of the first and second operations is changed for each calculation type of the continuous operation, and the continuous operation is performed by a logic circuit obtained by logic synthesis. There is provided a constant generation means for collecting delay data obtained by the execution and obtaining a constant used in the method of calculating the additional delay based on the collected delay data.

【0010】動作記述から論理回路を合成する高位合成
の処理の一つであるスケジューリングは、演算のディレ
イを見積もる必要がある。この見積もり値と実際の値と
の差がスケジューリング結果に大きく影響する。特に、
連続した演算のディレイを個々の演算のディレイの合計
として見積もっていたのでは、実際の値との差が大き
い。この差がスケジューリング結果に悪い影響を与え
る。そこで、連続した演算のディレイ値の正確な計算方
法を提供することにより、性能の良いスケジューリング
処理を可能にする。
In scheduling, which is one of the high-level synthesis processes for synthesizing a logic circuit from an operation description, it is necessary to estimate an operation delay. The difference between the estimated value and the actual value greatly affects the scheduling result. In particular,
If the delay of successive calculations is estimated as the sum of the delays of the individual calculations, the difference from the actual value is large. This difference adversely affects the scheduling result. Therefore, by providing an accurate calculation method of the delay value of the continuous operation, it is possible to perform a scheduling process with high performance.

【0011】上記発明によれば、第1の演算と第2の演
算から成る連続演算のディレイを計算するに際し、前記
第1の演算の種類と前記第2の演算の種類のペア及び前
記第1の演算のビット幅と前記第2の演算のビット幅の
ペアにより一意的に決まる追加ディレイを計算し、この
追加ディレイを第1の演算のデイレイに加算することに
より、連続演算のディレイを求めている。
According to the above invention, when calculating the delay of the continuous operation consisting of the first operation and the second operation, a pair of the type of the first operation and the type of the second operation and the first The additional delay uniquely determined by the pair of the bit width of the operation and the bit width of the second operation is calculated, and the additional delay is added to the delay of the first operation to obtain the delay of the continuous operation. I have.

【0012】[0012]

【発明の実施の形態】以下、本発明の実施形態を図面に
基づいて説明する。図1は、本発明の演算ディレイ計算
装置の一実施形態に係る構成を示したブロック図であ
る。演算ディレイ計算装置は、連続演算式100を入力
する連続演算入力部1、入力された連続演算式100の
演算の種類とビット幅を解析する連続演算解析部2、入
力された連続演算式100の演算の種類に応じて計算タ
イプを選択する計算タイプ選択部3、演算の種類に応じ
た計算タイプを保持する計算タイプライブラリ4、入力
された連続演算式100の計算タイプに従って計算方法
を選択する計算方法選択部5、計算タイプに応じた追加
ディレイの計算方法を保持する計算方法ライブラリ6、
入力された連続演算式100のディレイを計算して連続
演算のディレイ200を出力するディレイ計算部7を有
している。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a configuration according to an embodiment of the operation delay calculation device of the present invention. The operation delay calculation device includes a continuous operation input unit 1 for inputting a continuous operation expression 100, a continuous operation analysis unit 2 for analyzing the type of operation and the bit width of the input continuous operation expression 100, A calculation type selection unit 3 for selecting a calculation type according to the type of operation, a calculation type library 4 for holding a calculation type according to the type of operation, and a calculation for selecting a calculation method according to the input calculation type of the continuous operation expression 100 A method selection unit 5, a calculation method library 6 for holding a calculation method of an additional delay according to a calculation type,
A delay calculator 7 calculates a delay of the input continuous operation expression 100 and outputs a delay 200 of the continuous operation.

【0013】次に本実施の形態の動作について説明す
る。連続演算式100はディレイ計算対象となる演算式
である。連続演算入力部1は、連続演算式100を連続
演算解析部2に入力する。連続演算解析部2は連続演算
式100の各演算の種類やビット幅を解析する。例え
ば、連続演算式100が「(x+y)×z」であり、そ
の加算のビット幅が16で、掛け算のビット幅が32の
場合、その解析結果は図2に示す如くである。
Next, the operation of this embodiment will be described. The continuous operation expression 100 is an operation expression to be subjected to delay calculation. The continuous operation input unit 1 inputs the continuous operation expression 100 to the continuous operation analysis unit 2. The continuous operation analysis unit 2 analyzes the type and bit width of each operation of the continuous operation expression 100. For example, when the continuous arithmetic expression 100 is “(x + y) × z”, the bit width of the addition is 16 and the bit width of the multiplication is 32, the analysis result is as shown in FIG.

【0014】計算タイプ選択部3は連続演算解析部2で
解析された各演算の種類に応じて、計算タイプライブラ
リ4に登録されている計算タイプを選択する。この計算
タイプライブラリ4に登録されている演算の種類と計算
タイプの対応関係は例えば図3に示す如くである。
The calculation type selection unit 3 selects a calculation type registered in the calculation type library 4 according to the type of each operation analyzed by the continuous operation analysis unit 2. The correspondence between the type of operation registered in the calculation type library 4 and the calculation type is, for example, as shown in FIG.

【0015】計算方法選択部5は計算タイプ選択部3で
選択された計算タイプに従って計算方法ライブラリ6に
登録されている計算方法を選択する。ディレイ計算部7
は計算方法選択部5で選択された計算方法を用い、連続
演算解析部2で解析された各演算のビット幅をパラメー
タとして連続演算式100のディレイを計算する。連続
演算のディレイ200は上記のように計算された結果で
ある。
The calculation method selection unit 5 selects a calculation method registered in the calculation method library 6 according to the calculation type selected by the calculation type selection unit 3. Delay calculator 7
Calculates the delay of the continuous operation expression 100 using the calculation method selected by the calculation method selection unit 5 and using the bit width of each operation analyzed by the continuous operation analysis unit 2 as a parameter. The delay 200 of the continuous operation is the result calculated as described above.

【0016】次に上記した連続演算解析部2、計算タイ
プ選択部3、計算方法選択部5及びディレイ計算部7の
処理方法を図4のフローチャートを参照して詳しく説明
する。
Next, the processing method of the continuous operation analysis unit 2, calculation type selection unit 3, calculation method selection unit 5, and delay calculation unit 7 will be described in detail with reference to the flowchart of FIG.

【0017】図4は連続演算解析部2からディレイ計算
部7に至るまでの処理の流れを示したフローチャートで
ある。このフローチャートでは、連続演算式100は2
つの演算の連続した構成を有している場合を想定してい
る。
FIG. 4 is a flowchart showing the flow of processing from the continuous operation analysis unit 2 to the delay calculation unit 7. In this flowchart, the continuous operation expression 100 is 2
It is assumed that there is a continuous configuration of one operation.

【0018】まず、連続演算解析部2はステップ401
で、連続演算の第一演算の種類をop1、ビット幅をw
1、第二演算の種類をop2、ビット幅をw2と解析す
る。計算タイプ選択部3はステップ402で、連続演算
の種類op1とop2に基づいて計算タイプを計算タイ
プライブラリ4から選択する。
First, the continuous operation analysis unit 2 executes step 401
The type of the first operation of the continuous operation is op1 and the bit width is w.
1. Analyze the type of the second operation as op2 and the bit width as w2. In step 402, the calculation type selection unit 3 selects a calculation type from the calculation type library 4 based on the types of continuous operations op1 and op2.

【0019】例えば、図3に示したように計算タイプは
タイプ1からタイプ3までの三種類がある。これらの計
算タイプは、予め計算タイプライブラリ4に登録されて
いる。これら計算タイプにより追加ディレイの計算方法
が異なる。計算タイプ選択部3はステップ403で計算
タイプに従って計算方法を計算方法ライブラリ6から選
択する。この実施例では、2つの連続した演算のディレ
イを「第一演算のディレイ+追加ディレイΔ」の形で計
算する。
For example, as shown in FIG. 3, there are three types of calculation from type 1 to type 3. These calculation types are registered in the calculation type library 4 in advance. The calculation method of the additional delay differs depending on these calculation types. In step 403, the calculation type selection unit 3 selects a calculation method from the calculation method library 6 according to the calculation type. In this embodiment, the delay of two consecutive calculations is calculated in the form of “delay of first calculation + additional delay Δ”.

【0020】図5は計算タイプ毎の追加ディレイの計算
方法例を示した表図である。但し、図中、d、d1,d
2は関数で、cは定数である。タイプ1の場合、追加デ
ィレイΔは、定数cおよび第二演算のビット幅w2と第
一演算のビット幅w1の差(w2−w1)の関数の和に
よって計算される。差(w2−w1)の関数として、w
1とw2の大小関係によって異なる関数d1又はd2が
用いられる。
FIG. 5 is a table showing an example of a method of calculating an additional delay for each calculation type. However, in the figure, d, d1, d
2 is a function and c is a constant. In the case of Type 1, the additional delay Δ is calculated by the constant c and the sum of functions of the difference (w2−w1) between the bit width w2 of the second operation and the bit width w1 of the first operation. As a function of the difference (w2-w1), w
A different function d1 or d2 is used depending on the magnitude relationship between 1 and w2.

【0021】定数cは第一演算の種類op1と第二演算
の種類op2によって異なる値を取る。関数d1、d2
は図6に示すような第二演算のビット幅w2と第一演算
のビット幅w1の差(w2−w1)の関数である。関数
d1、d2に現れる定数a、bは第一演算の種類op1
と第二演算の種類op2によって異なる値を取る。
The constant c takes different values depending on the type of the first operation op1 and the type of the second operation op2. Functions d1, d2
Is a function of the difference (w2-w1) between the bit width w2 of the second operation and the bit width w1 of the first operation as shown in FIG. The constants a and b appearing in the functions d1 and d2 are the types of the first operation op1
And a different value depending on the type op2 of the second operation.

【0022】タイプ2の場合、追加ディレイΔは、第一
演算のビット幅w1の関数dと、第二演算のビット幅w
2と第一演算のビット幅w1の差(w2−w1)の関数
との和によって計算される。関数dは図7に示すような
w1の関数である。関数dに現れる定数c1とc2は第
一演算の種類op1と第二演算の種類op2によって異
なる値を取る。差(w2−w1)の関数としては、w1
とw2の大小関係によって異なる関数d1またはd2が
用いられる。関数d1、d2はタイプ1の場合と同様に
図6に示した関数である。
In the case of type 2, the additional delay Δ is a function d of the bit width w1 of the first operation and a bit width w of the second operation.
2 and a function of the difference (w2-w1) between the bit widths w1 of the first operation. The function d is a function of w1 as shown in FIG. The constants c1 and c2 appearing in the function d take different values depending on the type of the first operation op1 and the type of the second operation op2. As a function of the difference (w2-w1), w1
A different function d1 or d2 is used depending on the magnitude relation between w1 and w2. The functions d1 and d2 are the functions shown in FIG.

【0023】タイプ3の場合、追加ディレイΔは、定数
cおよび第二演算のビット幅w2と第一演算のビット幅
w1の差(w2−W1)の関数の和によって計算され
る。但し、w2がw1より大きい場合は追加ディレイΔ
は定数cとして計算される。関数d1は図6に示したも
のである。
In the case of type 3, the additional delay Δ is calculated by the constant c and the sum of the functions of the difference (w2−W1) between the bit width w2 of the second operation and the bit width w1 of the first operation. However, if w2 is greater than w1, the additional delay Δ
Is calculated as a constant c. The function d1 is shown in FIG.

【0024】上記のように選択した計算方法に従ってス
テップ404で第一演算のビット幅w1と第二演算のビ
ット幅w2をパラメータとして追加ディレイΔを計算す
る。最後に、ディレイ計算部7はステップ405で第一
演算のディレイ(計算方法ライブラリ6等に格納されて
いる)とステップ404で計算した追加ディレイΔの和
を取って連続演算のディレイを計算する。
In step 404, the additional delay Δ is calculated using the bit width w1 of the first operation and the bit width w2 of the second operation as parameters according to the calculation method selected as described above. Finally, the delay calculator 7 calculates the delay of the continuous calculation by taking the sum of the delay of the first calculation (stored in the calculation method library 6 or the like) and the additional delay Δ calculated at step 404 in step 405.

【0025】関数Δ(w1,w2)、d1(w2−w
1)、d2(w2−w1)に現れる定数c、a、bの値
の例を図8に示す。これらの値は実際に論理合成したデ
ィレイ値に基づいて計算される。例として、連続演算
(x+y+z)のディレイ計算結果を図9に示す。図9
に示した例は第一演算のビット幅が16、第二演算のビ
ット幅が32の場合である。図9には従来のディレイ計
算の結果も示してある。例えば、制約としてクロック・
サイクルが10NS秒であるとして、スケジューリング
を実行する際、従来のディレイ計算方法を用いた場合、
15.17NS秒と計算され、連続した加算を同じクロ
ック・サイクルで実行するようにスケジューリングでき
ない。
The functions Δ (w1, w2) and d1 (w2-w)
FIG. 8 shows examples of values of the constants c, a, and b appearing in 1) and d2 (w2-w1). These values are calculated based on the delay values actually logically synthesized. As an example, FIG. 9 shows a delay calculation result of the continuous operation (x + y + z). FIG.
In the example shown in the above, the bit width of the first operation is 16 and the bit width of the second operation is 32. FIG. 9 also shows the result of the conventional delay calculation. For example, the clock
Assuming that the cycle is 10 NS seconds, when performing scheduling, using a conventional delay calculation method,
Calculated as 15.17 NS seconds and cannot schedule successive additions to be performed in the same clock cycle.

【0026】しかし、本発明の計算方法を用いた場合、
9.37NS秒と計算され、連続した加算を同じクロッ
ク・サイクルで実行できるようにスケジューリングが可
能である。実際、関数Δ(w1、w2)等に現れる定数
の計算に用いる実際のディレイ値の収集時と同じ条件下
での論理合成後のディレイは9.26NS秒であり、合
成後の論理回路を制約で与えたクロック・サイクルで動
作させることが可能である。このように本発明のディレ
イ計算装置を用いることにより、より良いスケジューリ
ングが可能となる。
However, when the calculation method of the present invention is used,
It is calculated to be 9.37 NS seconds and can be scheduled so that successive additions can be performed in the same clock cycle. Actually, the delay after logic synthesis under the same conditions as when collecting the actual delay values used for calculating the constants appearing in the functions Δ (w1, w2) and the like is 9.26 NS seconds, which limits the logic circuit after synthesis. Can be operated in the clock cycle given by. As described above, the use of the delay calculation device of the present invention enables better scheduling.

【0027】次に上記した計算方法ライブラリ6に登録
されている計算方法で使用する定数の生成について図1
0を参照して説明する。
Next, the generation of constants used in the calculation methods registered in the calculation method library 6 described above will be described with reference to FIG.
0 will be described.

【0028】図10は上記計算方法で使用する定数の生
成手順を示したフローチャートである。ステップ101
で計算方法を生成する連続演算を指定する。そして、第
一演算の種類をop1、第二演算の種類をop2とす
る。ステップ102で連続演算の計算タイプを指定し、
それをtypeとする。演算の種類と計算タイプの対応
例は図3に示してある。ステップ103で第一演算のビ
ット幅と第二演算のビット幅を変えて計算タイプtyp
e用のデータを収集する。計算タイプ毎の収集データの
一覧を図11に示す。
FIG. 10 is a flowchart showing a procedure for generating constants used in the above calculation method. Step 101
Specifies the continuous operation that generates the calculation method. Then, the type of the first operation is op1 and the type of the second operation is op2. In step 102, specify the calculation type of the continuous operation,
Let it be type. FIG. 3 shows an example of the correspondence between the type of operation and the calculation type. In step 103, the calculation type typ is changed by changing the bit width of the first operation and the bit width of the second operation.
Collect data for e. FIG. 11 shows a list of collected data for each calculation type.

【0029】例えば、タイプ1の場合、演算(列)欄の
演算に対して、第一演算のビット幅と第二演算のビット
幅欄の値を変化させたディレイ値を収集する。これらの
ディレイは、例えば論理合成を実行して収集する。ステ
ップ104において、ステップ103で収集したデータ
に基づいて追加ディレイΔに現れる定数を計算する。こ
れらの定数の計算方法例を図12に示す。ステップ10
5でステップ104で計算された定数を持った追加ディ
レイΔを計算方法ライブラリ6に登録する。
For example, in the case of Type 1, delay values obtained by changing the values of the bit width of the first operation and the values of the bit width of the second operation for the operation in the operation (column) column are collected. These delays are collected, for example, by executing logic synthesis. In step 104, a constant appearing in the additional delay Δ is calculated based on the data collected in step 103. FIG. 12 shows an example of a method of calculating these constants. Step 10
In step 5, the additional delay Δ having the constant calculated in step 104 is registered in the calculation method library 6.

【0030】例として連続演算(x+y+z)の追加デ
ィレイΔに現れる定数の計算に必要なデータを図13
に、そのデータを用いた定数の計算結果を図14に示
す。第一演算の種類が「加算」、第二演算の種類が「加
算」である連続演算は「タイプ1」である。この場合の
図14に示す結果は図8に示した値と一致している。
As an example, data necessary for calculating a constant appearing in the additional delay Δ in the continuous operation (x + y + z) is shown in FIG.
FIG. 14 shows a calculation result of a constant using the data. A continuous operation in which the type of the first operation is “addition” and the type of the second operation is “addition” is “type 1”. In this case, the result shown in FIG. 14 matches the value shown in FIG.

【0031】一般に追加ディレイΔに現れる定数は論理
合成で用いる論理ライブラリ毎に異なる。論理ライブラ
リ毎に人手で計算する方法でライブラリ6を構築してい
たのでは時間が掛かり、また、間違いが混入する恐れが
ある。そこで、本実施例で示した方法で追加ディレイ関
数を自動生成することにより、間違いがなく、時間を掛
けることなく、計算方法ライブラリ6を構築することが
可能となる。
In general, the constant appearing in the additional delay Δ differs for each logic library used in logic synthesis. If the library 6 is constructed by a method of calculating manually for each logical library, it takes a long time, and there is a possibility that errors may be mixed. Therefore, by automatically generating the additional delay function by the method described in the present embodiment, the calculation method library 6 can be constructed without error and without taking much time.

【0032】本実施の形態によれば、連続した第一の演
算と第二の演算のディレイを第一の演算のディレイに別
途計算して得た追加ディレイΔを加算して算出すること
により、従来よりも連続演算のディレイを精度よく計算
することができ、スケジューリングを正確に行うことが
できる。このため、従来の計算方法では、同じクロック
・サイクルで実行できないディレイ値が出たものを、本
例の方法で計算すると、同じクロック・サイクルで実行
できるディレイ値が出ることがあり、これを用いて高位
合成することにより、処理時間の速い高性能の論理回路
を得ることができる。
According to the present embodiment, the delay of the continuous first operation and the second operation is calculated by adding the additional delay Δ obtained by separately calculating the delay of the first operation to the delay of the first operation. The delay of the continuous operation can be calculated more accurately than before, and scheduling can be performed more accurately. For this reason, when the conventional calculation method produces a delay value that cannot be executed in the same clock cycle, when calculated by the method of this example, a delay value that can be executed in the same clock cycle may be obtained. By performing high-level synthesis, a high-performance logic circuit with a short processing time can be obtained.

【0033】尚、本発明の演算ディレイ計算方法は典型
的には図4のフローチャートに示した各ステップをプロ
グラム化してコンピュータに実行させることにより実現
でき、同様に連続演算のディレイを精度よく計算するこ
とができる。その際、コンピュータプログラムは、フロ
ッピーディスクやハードディスク等のディスク型記録媒
体、半導体メモリやカード型メモリ等の各種メモリ、或
いは通信ネットワークなどの各種のプログラム記録媒体
を通じてコンピューターに供給することができる。
The operation delay calculation method of the present invention can be typically realized by programming each step shown in the flowchart of FIG. 4 and causing a computer to execute the steps. Similarly, the delay of the continuous operation is accurately calculated. be able to. At that time, the computer program can be supplied to the computer through a disk-type recording medium such as a floppy disk or a hard disk, various memories such as a semiconductor memory or a card-type memory, or various program recording media such as a communication network.

【0034】[0034]

【発明の効果】以上詳細に説明したように、本発明の演
算ディレイ計算装置及び方法によれば、連続演算のディ
レイを精度よく計算することができ、従ってスケジュー
リングを正確に行うことができる。
As described above in detail, according to the operation delay calculating apparatus and method of the present invention, the delay of the continuous operation can be calculated with high accuracy, and thus the scheduling can be performed accurately.

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

【図1】本発明の演算ディレイ計算装置の一実施形態に
係る構成を示したブロック図である。
FIG. 1 is a block diagram showing a configuration according to an embodiment of an operation delay calculation device of the present invention.

【図2】図1に示した連続演算解析部の解析結果例を示
した表図である。
FIG. 2 is a table illustrating an example of an analysis result of a continuous operation analysis unit illustrated in FIG. 1;

【図3】図1に示した計算タイプライブラリに登録され
ている演算の種類と計算タイプの対応例を示した表図で
ある。
FIG. 3 is a table showing an example of correspondence between types of calculations and calculation types registered in a calculation type library shown in FIG. 1;

【図4】図1に示した連続演算解析部からディレイ計算
部に至るまでの処理の流れを示したフローチャートであ
る。
FIG. 4 is a flowchart illustrating a flow of processing from a continuous operation analysis unit to a delay calculation unit illustrated in FIG. 1;

【図5】図1の計算方法ライブラレに登録されている計
算タイプ毎の計算方法例を示した表図である。
FIG. 5 is a table showing an example of a calculation method for each calculation type registered in the calculation method library of FIG. 1;

【図6】図5に示した関数d1、d2の具体例を示した
表図である。
FIG. 6 is a table showing specific examples of functions d1 and d2 shown in FIG. 5;

【図7】図5に示した関数dの具体例を示した表図であ
る。
FIG. 7 is a table showing a specific example of a function d shown in FIG. 5;

【図8】図1に示したディレイ計算部で扱った関数Δ
(w1,w2)、d1(w2−w1)、d2(w2−w
1)に現れる定数c、a、bの値を示した表図である。
FIG. 8 is a function Δ used in the delay calculator shown in FIG. 1;
(W1, w2), d1 (w2-w1), d2 (w2-w)
FIG. 3 is a table showing values of constants c, a, and b appearing in 1).

【図9】図1に示した装置で連続演算(x+y+z)の
ディレイ計算を行った結果と従来の計算方法で行った結
果例を示した表図である。
9 is a table showing a result of delay calculation of continuous operation (x + y + z) performed by the apparatus shown in FIG. 1 and a result example obtained by a conventional calculation method.

【図10】図1に示した計算方法ライブラリに登録され
ている計算方法で使用する定数の生成手順を示したフロ
ーチャートである。
FIG. 10 is a flowchart showing a procedure for generating constants used in the calculation method registered in the calculation method library shown in FIG.

【図11】図10のステップ103で収集する計算タイ
プ毎の収集データ例を一覧とした表図である。
11 is a table showing a list of examples of collected data for each calculation type collected in step 103 of FIG.

【図12】図10のステップ104で扱う追加ディレイ
Δに現れる定数の計算方法を示した表図である。
FIG. 12 is a table showing a method of calculating a constant appearing in an additional delay Δ handled in step 104 of FIG. 10;

【図13】図10のステップ104で扱う追加ディレイ
Δに現れる定数の計算に必要なデータ例を示した表図で
ある。
FIG. 13 is a table showing an example of data necessary for calculating a constant appearing in an additional delay Δ handled in step 104 of FIG. 10;

【図14】図10に示した方法で生成した定数計算の結
果例を示した表図である。
FIG. 14 is a table showing an example of a result of a constant calculation generated by the method shown in FIG. 10;

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

1 連続演算入力部 2 連続演算解析部 3 計算タイプ選択部 4 計算タイプライブラリ 5 計算方法選択部 6 計算方法ライブラリ 7 ディレイ計算部 100 連続演算式 200 連続演算のディレイ DESCRIPTION OF SYMBOLS 1 Continuous calculation input part 2 Continuous calculation analysis part 3 Calculation type selection part 4 Calculation type library 5 Calculation method selection part 6 Calculation method library 7 Delay calculation part 100 Continuous calculation formula 200 Continuous calculation delay

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 第1の演算と第2の演算から成る連続演
算を論理回路で行わせる際のディレイを計算する演算デ
ィレイ計算方法において、 前記第1の演算の種類と前記第2の演算の種類のペア及
び前記第1の演算のビット幅と前記第2の演算のビット
幅のペアにより一意的に決まる追加ディレイを計算する
過程と、 前記第1の演算の種類とビット幅で決まる予め知られい
てる第1の演算のディレイに前記算出された追加ディレ
イを加算して、前記第1、第2の演算から成る連続演算
のディレイを算出する過程と、 を具備することを特徴とする演算ディレイ計算方法。
1. An operation delay calculating method for calculating a delay when a continuous operation including a first operation and a second operation is performed by a logic circuit, wherein the type of the first operation and the second operation A step of calculating an additional delay uniquely determined by a pair of a type and a bit width of the first operation and a bit width of the second operation; and a priori knowledge determined by the type and the bit width of the first operation. Calculating the delay of the continuous operation including the first and second operations by adding the calculated additional delay to the delay of the first operation. Method of calculation.
【請求項2】 前記第1の演算の種類と前記第2の演算
の種類のペアで決まる計算タイプを設定し、この計算タ
イプと前記第1の演算のビット幅と前記第2の演算のビ
ット幅のペアにより一意的に決まる追加ディレイを計算
することを特徴とする請求項1記載の演算ディレイ計算
方法。
2. A calculation type determined by a pair of a type of the first operation and a type of the second operation is set, and the calculation type, a bit width of the first operation, and a bit of the second operation are set. 2. The method according to claim 1, wherein an additional delay uniquely determined by the pair of widths is calculated.
【請求項3】 第1の演算と第2の演算から成る連続演
算を論理回路で行わせる際のディレイを計算する演算デ
ィレイ計算装置において、 前記第1の演算と前記第2の演算から成る連続演算の各
演算の種類及びビット幅を求める解析手段と、 前記第1の演算と前記第2の演算の種類のペアに対応す
る計算タイプを求めるタイプ選択手段と、 前記求まった計算タイプに対応する追加ディレイの計算
方法を選択する計算方法選択手段と、 前記選択された計算方法を用い且つ前記求まった各演算
のビット幅をパラメータとして追加ディレイを算出し、
得られた追加ディレイを前記第1の演算のディレイに加
算して前記連続演算のディレイを算出するディレイ計算
手段と、 を具備することを特徴とする演算ディレイ計算装置。
3. An operation delay calculation device for calculating a delay when a continuous operation including a first operation and a second operation is performed by a logic circuit, wherein the continuous operation includes the first operation and the second operation. Analysis means for obtaining the type and bit width of each operation of the operation; type selection means for obtaining the calculation type corresponding to the pair of the first operation and the second operation; and corresponding to the obtained calculation type Calculating method selecting means for selecting a calculating method of the additional delay, calculating an additional delay using the selected calculation method and using the bit width of each of the calculated operations as a parameter,
A delay calculating means for adding the obtained additional delay to the delay of the first calculation to calculate the delay of the continuous calculation.
【請求項4】 前記タイプ選択手段は、前記第1の演算
と前記第2の演算のビット幅を変えて求めた前記第1の
演算と前記第2の演算の種類のペアに対応する計算タイ
プを保持する第1の保持手段を有し、この保持手段を参
照して前記第1の演算と前記第2の演算の種類のペアに
対応する計算タイプを求め、 前記計算方法選択手段は、前記計算タイプ別に予め求め
られた前記第1の演算と前記第2の演算のビット幅の関
数で表される追加ディレイの計算方法を保持する第2の
保持手段を有し、この保持手段を参照して前記計算タイ
プに対応する追加ディレイの計算方法を求めることを特
徴とする請求項3記載の演算ディレイ計算装置。
4. A calculation type corresponding to a pair of a type of the first operation and the type of the second operation obtained by changing a bit width of the first operation and the second operation. A first holding unit for holding a calculation type, and by referring to the holding unit, a calculation type corresponding to a pair of the type of the first operation and the type of the second operation is obtained. A second holding unit for holding a calculation method of an additional delay expressed as a function of a bit width of the first operation and the second operation determined in advance for each calculation type; 4. The operation delay calculation device according to claim 3, wherein a calculation method of an additional delay corresponding to the calculation type is obtained by calculation.
【請求項5】 前記連続演算の計算タイプ毎に前記第
1、第2の演算の各ビット幅を変化させて、前記連続演
算を論理合成で得られた論理回路により実行することで
得られるディレイデータを収集し、これら収集したディ
レイデータに基づいて前記追加ディレイの計算方法で用
いる定数を求める定数生成手段を設けたことを特徴とす
る請求項3又は4記載の演算ディレイ計算装置。
5. A delay obtained by changing each bit width of the first and second operations for each calculation type of the continuous operation and executing the continuous operation by a logic circuit obtained by logic synthesis. 5. The arithmetic delay calculating apparatus according to claim 3, further comprising a constant generation unit that collects data and obtains a constant used in the method of calculating the additional delay based on the collected delay data.
JP36783599A 1999-12-24 1999-12-24 Arithmetic delay calculation apparatus and method Expired - Fee Related JP3816286B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP36783599A JP3816286B2 (en) 1999-12-24 1999-12-24 Arithmetic delay calculation apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP36783599A JP3816286B2 (en) 1999-12-24 1999-12-24 Arithmetic delay calculation apparatus and method

Publications (2)

Publication Number Publication Date
JP2001184377A true JP2001184377A (en) 2001-07-06
JP3816286B2 JP3816286B2 (en) 2006-08-30

Family

ID=18490322

Family Applications (1)

Application Number Title Priority Date Filing Date
JP36783599A Expired - Fee Related JP3816286B2 (en) 1999-12-24 1999-12-24 Arithmetic delay calculation apparatus and method

Country Status (1)

Country Link
JP (1) JP3816286B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007317080A (en) * 2006-05-29 2007-12-06 Nec Corp Circuit analysis apparatus, method and program
JP2009217778A (en) * 2008-03-13 2009-09-24 Nec Corp Behavioral synthesis device, behavioral synthesis method and program
JP2011039636A (en) * 2009-08-07 2011-02-24 Nec Corp Operation composition device, operation composition method and program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007317080A (en) * 2006-05-29 2007-12-06 Nec Corp Circuit analysis apparatus, method and program
JP2009217778A (en) * 2008-03-13 2009-09-24 Nec Corp Behavioral synthesis device, behavioral synthesis method and program
JP2011039636A (en) * 2009-08-07 2011-02-24 Nec Corp Operation composition device, operation composition method and program

Also Published As

Publication number Publication date
JP3816286B2 (en) 2006-08-30

Similar Documents

Publication Publication Date Title
De Man et al. Architecture-driven synthesis techniques for VLSI implementation of DSP algorithms
JPH113254A (en) Full chip power profiler capable of configuration of module
JPH10171857A (en) Method for designing integrated circuit, data base device for integrated circuit design and device for supporting integrated circuit design
JP2001124836A (en) Event type semiconductor testing system
WO2004034290A9 (en) Method of using clock cycle-time in determining loop schedules during circuit design
JP2001229217A (en) Higher-order synthesizing method and recording medium used for its implementation
Baghdadi et al. Design space exploration for hardware/software codesign of multiprocessor systems
JP2001184377A (en) Operation delay computer and operation delay computing method
Horstmannshoff et al. Mapping multirate dataflow to complex RT level hardware models
US7131087B2 (en) Multi-cycle path analyzing method
Venkataramani et al. System-level retiming and pipelining
JP2002108958A (en) System and method for designing circuit and computer readable recording medium stored with circuit design program
US7269812B2 (en) Apparatus and method for performing static timing analysis of an integrated circuit design
JP5146087B2 (en) Power consumption estimation method, circuit design support apparatus and program
Horstmannshoff et al. Optimized system synthesis of complex RT level building blocks from multirate dataflow graphs
Xu et al. On the design of high performance hw accelerator through high-level synthesis scheduling approximations
US7334201B1 (en) Method and apparatus to measure hardware cost of adding complex instruction extensions to a processor
Benso et al. Online self-repair of FIR filters
Jervis Advances in DSP design tool flows for FPGAs
JP2000057188A (en) Hardware and software cooperative evaluating device
JP2953431B2 (en) High-level synthesis device and recording medium thereof
JPH1196203A (en) Method for designing logical circuit
JPH06251103A (en) High order synthesizing device
US6405352B1 (en) Method and system for analyzing wire-only changes to a microprocessor design using delta model
JP2005258917A (en) Design support system and program for integrated circuit

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060307

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060427

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: 20060530

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060607

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090616

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100616

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100616

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110616

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees