JP2000082092A - Design method for integrated circuit - Google Patents

Design method for integrated circuit

Info

Publication number
JP2000082092A
JP2000082092A JP10345818A JP34581898A JP2000082092A JP 2000082092 A JP2000082092 A JP 2000082092A JP 10345818 A JP10345818 A JP 10345818A JP 34581898 A JP34581898 A JP 34581898A JP 2000082092 A JP2000082092 A JP 2000082092A
Authority
JP
Japan
Prior art keywords
processing
flip
integrated circuit
data
flop
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
JP10345818A
Other languages
Japanese (ja)
Inventor
Takayuki Minemaru
貴行 峯丸
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP10345818A priority Critical patent/JP2000082092A/en
Publication of JP2000082092A publication Critical patent/JP2000082092A/en
Pending legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

PROBLEM TO BE SOLVED: To easily design a wave pipeline circuit which can reduce its power consumption by performing a wave pipelining process including the partial deletion of component elements of a non-wave pipelining circuit that is generated in a simulation process and an adjustment process following by the partial deletion of component elements against the pupelining circuit. SOLUTION: A wave pipelining process including the partial deletion of component element and an adjustment process following to this partial direction of component elements is performed to a non-wave pipelining circuit which is generated in the synthesizing, layout and distribution and real distribution capacitance simulation processes. In a wave pipelining process, to perform deletion of a thip-tlop for example, an adjustment process is carried out to inset a delay circuit 306 according to the comparison result obtained between a stage delay time and the threshold. Under such conditions, the less significant bits are outputted from a signal line 313 to the circuit 306 and then inputted to a following pipeline stage 304 via a signal line 314 with a delay time equal to that of the most significant bit in an adjustment process.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は集積回路設計方法に
関し、特に、ハードウェア記述言語によるレジスタトラ
ンスファレベル記述を用いて、合成処理、配置配線処
理、および実配線容量シミュレーション処理を行う集積
回路設計方法に、中でもハードウェア記述言語を用いる
ASIC設計方法に従って、ウェーブパイプライン回路
を設計することができる集積回路設計方法に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to an integrated circuit design method, and more particularly to an integrated circuit design method for performing synthesis processing, placement and wiring processing, and real wiring capacity simulation processing using a register transfer level description in a hardware description language. More particularly, the present invention relates to an integrated circuit design method capable of designing a wave pipeline circuit in accordance with an ASIC design method using a hardware description language.

【0002】[0002]

【従来の技術】最近の集積回路の高速化、大容量化、お
よび微細化の傾向は顕著なものとなっており、人間がゲ
ートレベルでの設計を行うことが効率の向上を妨げた
り、あるいは困難な場合も多いものとなっている。従っ
て、集積回路の設計にあたっては、VHDLや、Ver
ilog−HDLのようなハードウェア記述言語(HD
L:Hardware Description Language )による記述を行
い、その記述に基づいて論理合成ツールや配置・配線ツ
ール等を用いてゲート回路を生成する設計手法が多く採
用されている。このようなHDLを用いる回路設計は、
特にASIC(特定用途向けIC:Application Specif
ic Integrated Circuit )においては重要な技術であ
る。
2. Description of the Related Art In recent years, the trend of high speed, large capacity, and miniaturization of integrated circuits has become remarkable, and it is difficult for humans to design at the gate level to improve efficiency, or It is often difficult. Therefore, when designing an integrated circuit, VHDL, Ver.
hardware description language such as ilog-HDL (HD
L: Hardware Description Language), and a design method of generating a gate circuit using a logic synthesis tool or a placement / wiring tool based on the description is often used. Circuit design using such HDL is as follows.
In particular, ASICs (Application Specif
This is an important technology in ic integrated circuits.

【0003】VHDLや、Verilog−HDLのよ
うなHDLは、プログラム言語と同様の高級言語であ
り、抽象度の高いレベルから、ゲートレベルに近いレベ
ルに至る様々な段階の記述をすることが可能である。代
表的なレベルとしては、システム全体のアルゴリズムを
記述するアーキテクチャレベル、アーキテクチャを構成
するモジュールの動作仕様をモデル化する動作(ビヘイ
ビア)レベル、レジスタの位置やクロック等を明確なも
のとし、レジスタからレジスタへのデータの流れ(デー
タフロー)を記述するものであって、ロジック回路生成
が可能なレベルであるレジスタトランスファーレベル
(Register Transfer Level :以下RTLと記載す
る。)がある。そして、上記のようなゲート回路を生成
するツールにおいては、現状ではRTL記述からの合成
が可能なものが主流であり、合成処理や配置配線処理の
前段においてはHDLにおいてRTL記述をすることを
要するものとなる。従って、一般的なASIC設計手法
においては、ハードウェア記述言語によりRTL記述を
行い、RTL記述に基づいて合成処理や配置配線処理を
行い、シミュレーション等によって遅延時間を調整する
ということが行われる。
HDL such as VHDL or Verilog-HDL is a high-level language similar to a programming language, and can describe various stages from a high abstraction level to a level close to a gate level. is there. Typical levels are an architecture level that describes the algorithm of the entire system, an operation (behavior) level that models the operation specifications of the modules that make up the architecture, and the location and clock of the registers. And a register transfer level (hereinafter referred to as RTL), which is a level at which a logic circuit can be generated. At present, a tool that can generate a gate circuit as described above can synthesize from an RTL description, and it is necessary to perform an RTL description in HDL at a stage prior to a synthesis process and a placement and routing process. It will be. Therefore, in a general ASIC design method, RTL description is performed in a hardware description language, synthesis processing and placement and routing processing are performed based on the RTL description, and delay time is adjusted by simulation or the like.

【0004】一方、マイクロプロセッサの高速化のため
に、複数の処理を同時並行的に実行するパイプラインの
手法が一般化している。例えばCPUであれば、命令フ
ェッチや命令デコード、命令実行等の処理をそれぞれス
テージ(段階)として、各ステージを並行処理するもの
とすることで、ある命令に対する数ステージの処理の終
了を待つことなく、後続する命令を処理対象とすること
で、高速化を図ることが可能となる。また、このような
処理を行う回路においては、電力消費の多くが、処理に
用いるクロックラインと、レジスタとして用いられるフ
リップフロップにおいてなされているものである。従っ
て、一旦設計したパイプライン回路から、削除可能なフ
リップフロップを削除するとともに、フリップフロップ
に対するクロック供給をも抑制するウェーブパイプライ
ン化の手法は、消費電力の低減のため有効なものとな
る。
[0004] On the other hand, in order to increase the speed of a microprocessor, a pipeline technique for executing a plurality of processes simultaneously in parallel has been generalized. For example, in the case of a CPU, processes such as instruction fetch, instruction decode, and instruction execution are each set as a stage (stage), and each stage is processed in parallel. By setting the following instruction as a processing target, it is possible to increase the speed. In a circuit that performs such processing, much of the power is consumed by a clock line used for the processing and a flip-flop used as a register. Therefore, the method of wave pipelining that eliminates the flip-flops that can be deleted from the designed pipeline circuit and suppresses the clock supply to the flip-flops is effective for reducing power consumption.

【0005】従来の技術によるウェーブパイプライン回
路の利用については、特開平8−263985号に開示
された半導体記憶装置があり、ウェーブパイプライン動
作を行うことで、SRAM(Static RAM)の高速化が図
られている。
As for the use of the wave pipeline circuit according to the prior art, there is a semiconductor memory device disclosed in Japanese Patent Application Laid-Open No. Hei 8-263985. It is planned.

【0006】[0006]

【発明が解決しようとする課題】しかしながら、一般に
論理回路においてウェーブパイプライン化を図る場合に
は、前述のSRAMの場合と比較して困難なものとな
る。このことは、データビット単位での遅延時間が、上
記のようなSRAM等のメモリ回路においては均一なも
のであるのに対し、論理回路においては必ずしも均一で
はなく、特に加算処理や乗算処理を行う場合には遅延時
間の差が大きなものであることに起因している。特に、
ウェーブパイプライン化された回路のように、レジスタ
(フリップフロップ)を欠く構成は、本来レジスタ間の
データ転送を定義するRTL記述に適しないものである
ことから、RTL記述を用いる回路設計においてウェー
ブパイプライン化処理を行うことは、本質的な困難さを
含んだものとなる。
However, in general, it is more difficult to implement a wave pipeline in a logic circuit than in the above-described SRAM. This means that the delay time in data bit units is uniform in a memory circuit such as an SRAM as described above, but is not always uniform in a logic circuit. In this case, the difference between the delay times is large. In particular,
A configuration that lacks a register (flip-flop), such as a wave pipelined circuit, is originally not suitable for an RTL description that defines data transfer between registers. Performing the line conversion process involves inherent difficulties.

【0007】図24〜図28は、RTL記述を用いる回
路設計において、ウェーブパイプライン化を行おうとす
る場合に生じる問題点を説明するための図である。図2
4は、ウェーブパイプライン処理を行わないパイプライ
ン回路、図25は図24に示す回路に対して特定のフリ
ップフロップ群を削除したウェーブパイプライン回路を
示すRTL記述の概念図である。
FIGS. 24 to 28 are diagrams for explaining a problem that arises when an attempt is made to make a wave pipeline in a circuit design using an RTL description. FIG.
4 is a conceptual diagram of an RTL description showing a pipeline circuit that does not perform wave pipeline processing, and FIG. 25 is a wave pipeline circuit in which a specific flip-flop group is deleted from the circuit shown in FIG.

【0008】図24のRTL記述は、入力フリップフロ
ップ群2401、パイプラインステージ2402、およ
び2404、中間フリップフロップ群2403、出力フ
リップフロップ群2405を含むものである。これらの
フリップフロップ群とパイプラインステージとはそれぞ
れ信号線2411〜2414で接続されており、フリッ
プフロップ群2401、2403、および2405に
は、クロック2421が供給されている。また、各フリ
ップフロップ群は、処理対象とするデータのビット数に
相当する個数以上のフリップフロップを有するものであ
る。
The RTL description of FIG. 24 includes an input flip-flop group 2401, pipeline stages 2402 and 2404, an intermediate flip-flop group 2403, and an output flip-flop group 2405. These flip-flop groups and the pipeline stages are connected by signal lines 2411 to 2414, respectively, and a clock 2421 is supplied to the flip-flop groups 2401, 2403, and 2405. Each flip-flop group has flip-flops equal to or more than the number of bits of data to be processed.

【0009】図26は、パイプライン回路が処理対象と
するデータと、該データを構成する各ビットに対しての
遅延時間の差を説明するための図である。同図(a) は、
それぞれがnビットであるデータSとデータTとに対し
ての加算処理が行われることを示している。この場合、
通常は、それぞれのデータを構成する最下位のビットs
nとtnとに対しての処理が最初に実行され、その後下
位のビットから順次上位のビットに対して、桁上がり処
理を含む処理が行われるものとなる。同図((b)に示すn
ビットのデータは、同図(a) の加算処理の結果出力され
るデータである。各ビットごとの出力までの遅延時間
は、図示するように、最下位のビットDの遅延時間tD
が最小のものであり、上位のビットほど遅延時間が大き
なものとなり、最上位ビットAの遅延時間tAが最大の
ものとなる。
FIG. 26 is a diagram for explaining the difference between the data to be processed by the pipeline circuit and the delay time for each bit constituting the data. FIG.
This indicates that addition processing is performed on data S and data T each having n bits. in this case,
Usually, the least significant bit s constituting each data
The process for n and tn is performed first, and then the process including the carry process is performed for the upper bits sequentially from the lower bits. N shown in FIG.
The bit data is data output as a result of the addition processing in FIG. As shown in the figure, the delay time till the output of each bit is the delay time tD of the least significant bit D.
Is the smallest, and the higher-order bit has a longer delay time, and the most significant bit A has the largest delay time tA.

【0010】図27は、図24に示すパイプライン回路
の動作を示すタイミングチャート図である。図におい
て、(a) は図24の2421に示すクロックであり、こ
のクロック信号の立ち上がりに合わせて処理は実行され
るものとなる。(b) は図24の入力フリップフロップ群
2401からの、(e) は同図の中間フリップフロップ群
2403からの、そして、(h) は同図の出力フリップフ
ロップ群2405からの出力を示している。
FIG. 27 is a timing chart showing the operation of the pipeline circuit shown in FIG. In the figure, (a) is the clock indicated by reference numeral 2421 in FIG. 24, and the processing is executed in accordance with the rise of this clock signal. (b) shows the output from the input flip-flop group 2401 in FIG. 24, (e) shows the output from the intermediate flip-flop group 2403 in FIG. 24, and (h) shows the output from the output flip-flop group 2405 in FIG. I have.

【0011】パイプラインステージ2402、および2
404においては、それぞれデータに対しての処理が実
行されるものであるが、図26を用いて説明したよう
に、処理対象データを構成する各ビットに対しての遅延
時間は異なるものとなる。図27の(c) 、および(d) は
パイプラインステージ2402における最大、および最
小の遅延時間となる経路からの出力を示している。同様
に同図(f) 、および(g)はパイプラインステージ240
4における最大、および最小の遅延時間となる経路から
の出力を示している。
[0011] Pipeline stages 2402 and 2
In 404, processing is performed on the data, respectively, but as described with reference to FIG. 26, the delay time for each bit constituting the data to be processed is different. (C) and (d) of FIG. 27 show the outputs from the paths that have the maximum and minimum delay times in the pipeline stage 2402. (F) and (g) of FIG.
4 shows the output from the path that has the maximum and minimum delay times.

【0012】以下、図27のタイミングチャートに従っ
て、図24に示すパイプライン回路における処理を説明
する。図27(a) に示すクロック2421の立ち上がり
に対応して、図24の入力フリップフロップ群2401
には処理対象となるデータが取り込まれ、図27(b) に
示す注目データD1として出力される。データD1は、
信号線2411を経由して、パイプラインステージ24
02に入力される。パイプラインステージ2402にお
ける処理において、上述のように各ビットごとの遅延時
間は異なるものとなる。従って、パイプラインステージ
2402から出力されるデータにおいては、図27の
(c) 、および(d) に示すように、最大遅延はdl11、
最小遅延はdl12となる。
Hereinafter, processing in the pipeline circuit shown in FIG. 24 will be described with reference to the timing chart of FIG. In response to the rising edge of the clock 2421 shown in FIG.
The data to be processed is fetched and output as attention data D1 shown in FIG. Data D1 is
Via the signal line 2411, the pipeline stage 24
02 is input. In the processing in the pipeline stage 2402, the delay time for each bit differs as described above. Therefore, in the data output from the pipeline stage 2402, FIG.
As shown in (c) and (d), the maximum delay is dl11,
The minimum delay is dl12.

【0013】図24に示すパイプラインステージ240
2において処理されたデータは、信号線2412を経由
して、中間フリップフロップ群2403に出力され、中
間フリップフロップ群2403は、供給されるクロック
2421の立ち上がりに対応してデータを入力する。中
間フリップフロップ群2403に入力されたデータは、
図27(e) に示す注目データD3として、図24の信号
線2413を介してパイプラインステージ2404に出
力される。パイプラインステージ2404に入力された
データは処理され、出力されることとなるが、この場合
にも、パイプラインステージ2402の場合と同様にビ
ットごとに遅延時間が異なるものとなるので、図27
(f) 、および(g) に示すように、パイプラインステージ
2404から出力されるデータは、最大遅延がdl3
1、最小遅延がdl32となる。
The pipeline stage 240 shown in FIG.
The data processed in 2 is output to the intermediate flip-flop group 2403 via the signal line 2412, and the intermediate flip-flop group 2403 inputs the data in response to the rising edge of the supplied clock 2421. The data input to the intermediate flip-flop group 2403 is
This is output to the pipeline stage 2404 via the signal line 2413 in FIG. 24 as the attention data D3 shown in FIG. Data input to the pipeline stage 2404 is processed and output. In this case as well, the delay time differs for each bit as in the case of the pipeline stage 2402.
As shown in (f) and (g), the data output from the pipeline stage 2404 has a maximum delay of dl3.
1. The minimum delay is dl32.

【0014】図24に示すように、パイプラインステー
ジ2404において処理されたデータは、信号線241
4を経由して、出力フリップフロップ群2405に出力
され、出力フリップフロップ群2405は、供給される
クロック2421の立ち上がりに対応してデータを入力
し、図27(h) に示す注目データD5として出力する。
出力されたデータD5は、図24に示すパイプライン回
路の出力となる。
As shown in FIG. 24, data processed in the pipeline stage 2404 is
4 and output to the output flip-flop group 2405. The output flip-flop group 2405 inputs data in response to the rising of the supplied clock 2421 and outputs the data as the attention data D5 shown in FIG. I do.
The output data D5 is the output of the pipeline circuit shown in FIG.

【0015】このように、図24のようなRTL記述が
されたパイプライン回路では、内包するパイプラインス
テージからの出力において、遅延時間のばらつきがあっ
ても、適切に処理されるものとなる。従って、このよう
なRTL記述に基づいて、ツール等を用いた合成処理や
配置配線処理を行うことができる。
As described above, in the pipeline circuit in which the RTL is described as shown in FIG. 24, the output from the included pipeline stage is appropriately processed even if there is a variation in the delay time. Therefore, based on such an RTL description, it is possible to perform synthesis processing and placement / wiring processing using a tool or the like.

【0016】図25は、図24のパイプライン回路(非
ウェーブパイプライン化回路)から、中間フリップフロ
ップ群2403を削除した、すなわちウェーブパイプラ
イン化を行ったウェーブパイプライン回路を示すRTL
記述の概念図である。このようなウェーブパイプライン
化によって、図25の回路においては、図24のフリッ
プフロップ群2403を削除した分小型化が図り得ると
ともに、当該フリップフロップ群2403において消費
する電力と、当該フリップフロップ群に対してクロック
2421を供給するための電力とを節減し得るものであ
る。図示するように、このウェーブパイプライン回路
は、図24に示す回路に基づき、パイプラインステージ
2502と2504とが信号線2512を介して直結さ
れ、両ステージの間にフリップフロップ群を有さないも
のとなっている。
FIG. 25 is an RTL showing a wave pipeline circuit in which the intermediate flip-flop group 2403 has been deleted from the pipeline circuit (non-wave pipelined circuit) of FIG.
It is a conceptual diagram of description. By such a wave pipeline, in the circuit of FIG. 25, the size can be reduced by eliminating the flip-flop group 2403 of FIG. On the other hand, power for supplying the clock 2421 can be saved. As shown, this wave pipeline circuit is based on the circuit shown in FIG. 24, in which pipeline stages 2502 and 2504 are directly connected via a signal line 2512 and has no flip-flop group between both stages. It has become.

【0017】図28は、図25に示すウェーブパイプラ
イン回路の動作を示すタイミングチャート図である。同
図において、(a) は図25の2521に示すクロックで
ある。(b) は図25の入力フリップフロップ群2501
からの、(g) は同図の出力フリップフロップ群2505
からの出力を示している。同図の(b) は、パイプライン
ステージ2502からの、また、(f) はパイプラインス
テージ2504からのデータ出力を、(d) 、および(e)
はパイプラインステージ2504における最大、および
最小の遅延時間となる経路からの出力を示している。
FIG. 28 is a timing chart showing the operation of the wave pipeline circuit shown in FIG. In the figure, (a) is the clock indicated by 2521 in FIG. (b) is an input flip-flop group 2501 in FIG.
(G) is the output flip-flop group 2505 in FIG.
Shows the output from. (B) of the figure shows the data output from the pipeline stage 2502, and (f) shows the data output from the pipeline stage 2504 as (d) and (e).
Indicates the output from the path that provides the maximum and minimum delay time in the pipeline stage 2504.

【0018】以下、図28のタイミングチャートに従っ
て、図25に示すウェーブパイプライン回路における処
理を説明する。図28(a) に示すクロック2521の立
ち上がりに対応して、図25の入力フリップフロップ群
2501には、処理対象となるデータが取り込まれ、図
28(b) に示す注目データD1として出力される。デー
タD1は、信号線2511を経由して、パイプラインス
テージ2502に入力される。パイプラインステージ2
502における処理において、前述のように各ビットご
との遅延時間は異なるものとなるので、パイプラインス
テージ2502から出力されるデータにおいては、図2
8(c) に示すように、最大遅延はdl11、最小遅延は
dl12となる。
The processing in the wave pipeline circuit shown in FIG. 25 will be described below with reference to the timing chart of FIG. In response to the rising edge of the clock 2521 shown in FIG. 28A, data to be processed is fetched into the input flip-flop group 2501 in FIG. 25 and output as the attention data D1 shown in FIG. . Data D1 is input to pipeline stage 2502 via signal line 2511. Pipeline stage 2
In the process at 502, the delay time for each bit is different as described above, so that the data output from the pipeline stage 2502 is the same as FIG.
As shown in FIG. 8 (c), the maximum delay is dl11 and the minimum delay is dl12.

【0019】このため、有効データD2は、クロック2
521の立ち上がりの後最大遅延であるdl11だけ遅
れた時間に出力開始され、クロック2521の次の立ち
上がりの後、最小遅延であるdl12だけ遅れた時間ま
で出力されることとなる。そして、有効データD2出力
後の期間は、データ無効期間tn_vとなる。
Therefore, the valid data D2 is the clock 2
Output is started at a time delayed by dl11 which is the maximum delay after the rise of 521, and is output until a time delayed by dl12 which is the minimum delay after the next rise of the clock 2521. Then, a period after outputting the valid data D2 is a data invalid period tn_v.

【0020】図25において、パイプラインステージ2
502から出力される有効データD2は信号線2512
を経由してパイプラインステージ2504に入力され、
パイプラインステージ2504における処理がなされ
る。図28(d) 、および(e) に示すように最大遅延はd
l21、最小遅延はdl22となる。従って、同図(f)
に示す、パイプラインステージ2504から出力される
有効データD4は、パイプラインステージ2502から
出力される有効データD2の開始からdl21(最大遅
延)だけ経過した時間に出力開始され、有効データD2
の最後からdl12(最小遅延)だけ遅れた時間まで出
力されることとなる。しかし、図示するように、有効デ
ータD4の出力期間中にクロック2521の立ち上がり
がないため、有効データD4を出力された出力フリップ
フロップ群2505は、このデータを取り込むことがで
きない。従って、当該ウェーブパイプライン回路からは
正しく処理されたデータは出力されないこととなってし
まう。
In FIG. 25, pipeline stage 2
The valid data D2 output from the signal line 502
Is input to the pipeline stage 2504 via
Processing in the pipeline stage 2504 is performed. As shown in FIGS. 28 (d) and (e), the maximum delay is d
l21 and the minimum delay are dl22. Therefore, FIG.
The valid data D4 output from the pipeline stage 2504 shown in (1) is started to be output at a time when dl21 (maximum delay) has elapsed from the start of the valid data D2 output from the pipeline stage 2502, and the valid data D2
From the end to the time delayed by dl12 (minimum delay). However, as shown, since the clock 2521 does not rise during the output period of the valid data D4, the output flip-flop group 2505 that has output the valid data D4 cannot capture this data. Therefore, correctly processed data is not output from the wave pipeline circuit.

【0021】このように、遅延時間差の調整が困難であ
るような回路においては、RTL記述において単純にフ
リップフロップの削除を指定してウェーブパイプライン
化を図ることは困難であるため、ウェーブパイプライン
回路の設計にあたっては、RTL記述を行って合成・配
置配線ツール等を用いることなく、人手によるゲートレ
ベルの設計を行うことなどがなされており、回路設計処
理の効率を向上することが困難である点が問題となって
いた。
As described above, in a circuit in which it is difficult to adjust the delay time difference, it is difficult to simply designate the elimination of the flip-flop in the RTL description to achieve the wave pipeline. In designing a circuit, it is difficult to improve the efficiency of circuit design processing by performing RTL description and manually performing a gate-level design without using a synthesis / placement / wiring tool or the like. The point was a problem.

【0022】かかるウェーブパイプライン化の困難を回
避するためには、特開平6−250817号に開示され
た技術を応用することが可能である。この公報において
開示されたパイプライン方式回路は、フリップフロップ
を削除するウェーブパイプライン化を行うことなく、フ
リップフロップの代替となるクロック同期スイッチを用
いることで回路規模の低減を図るものである。このよう
な回路を設計する場合、遅延時間差の調整は容易なもの
であり、かつ回路規模の低減はなし得るものとなるが、
ウェーブパイプライン化による場合と比較すると、クロ
ック分配を低減することができないものであるために、
消費電力を低減する効果はあまり大きなものとはならな
い。また、特開平6−250817号の図1に示される
ように、スイッチがMOSスイッチである場合には、ス
イッチがOFFになる場合にその出力がフローティング
状態となり、これによってノイズ生成が起こり得る点が
問題となる。
In order to avoid such difficulties in making a wave pipeline, it is possible to apply the technique disclosed in Japanese Patent Application Laid-Open No. 6-250817. The pipelined circuit disclosed in this publication is intended to reduce the circuit scale by using a clock synchronous switch instead of a flip-flop without performing wave pipelining for removing the flip-flop. When designing such a circuit, the adjustment of the delay time difference is easy, and the circuit scale can be reduced.
Compared to the case of wave pipelining, clock distribution cannot be reduced.
The effect of reducing power consumption is not very large. Also, as shown in FIG. 1 of JP-A-6-250817, when the switch is a MOS switch, its output is in a floating state when the switch is turned off, which may cause noise generation. It becomes a problem.

【0023】本発明はかかる問題点に鑑みてなされたも
のであり、RTL記述を伴う一般的なASIC設計フロ
ーに従った集積回路の設計において、ウェーブパイプラ
イン回路の設計を実現し、省電力を図ることができるウ
ェーブパイプライン回路を容易に設計し得る集積回路設
計方法を提供することを目的とする。
The present invention has been made in view of such a problem, and realizes a design of a wave pipeline circuit in the design of an integrated circuit according to a general ASIC design flow including an RTL description, thereby saving power. An object of the present invention is to provide an integrated circuit design method capable of easily designing a wave pipeline circuit that can be designed.

【0024】[0024]

【課題を解決するための手段】上記目的を達成するため
に、本発明の請求項1にかかる集積回路設計方法は、ハ
ードウェア記述言語によるレジスタトランスファレベル
記述を用いて、合成処理、配置配線処理、および実配線
容量シミュレーション処理を行うことにより、複数の処
理ステージを含むパイプライン回路を設計する集積回路
設計方法において、上記合成処理、配置配線処理、およ
び実配線容量シミュレーション処理によって生成された
非ウェーブパイプライン化回路に対して、その構成要素
の一部の削除と、上記削除に伴う調整処理とを含むウェ
ーブパイプライン化処理を行うものである。これによ
り、RTL記述を伴う一般的なASIC設計方法に従っ
て設計された非ウェーブパイプライン化回路に対して、
論理回路で起こり得る遅延時間の大きな差がもたらす不
都合を回避し得る調整処理を伴って、ウェーブパイプラ
イン化を行う。
In order to achieve the above object, an integrated circuit design method according to the first aspect of the present invention uses a register transfer level description in a hardware description language to perform synthesis processing, placement and wiring processing. And an integrated circuit design method for designing a pipeline circuit including a plurality of processing stages by performing a real wiring capacity simulation process. Wave pipeline processing including deletion of some of the components and adjustment processing accompanying the deletion is performed on the pipelined circuit. Thereby, for a non-wave pipelined circuit designed according to a general ASIC design method with an RTL description,
Wave pipelining is performed with adjustment processing that can avoid inconvenience caused by a large difference in delay time that can occur in a logic circuit.

【0025】また、請求項2にかかる集積回路設計方法
は、請求項1の方法において、上記ウェーブパイプライ
ン化処理においては、指定されたデータ一時保持手段の
削除を行うものである。これにより、消費電力の大きな
一時保持手段を省く構成とし、クロック供給を抑制する
設計を行う。
According to a second aspect of the present invention, in the method of the first aspect, the specified data temporary holding means is deleted in the wave pipeline processing. In this way, the design is made to omit the temporary holding means with large power consumption and to suppress the clock supply.

【0026】また、請求項3にかかる集積回路設計方法
は、請求項2の方法において、上記ウェーブパイプライ
ン化処理は、上記非ウェーブパイプライン化回路から、
上記指定されたデータ一時保持手段を抽出する指定一時
保持手段抽出処理と、上記抽出したデータ一時保持手段
を削除し、その前後の処理ステージを直結した場合に、
当該前後の処理ステージにおける特定データの処理につ
いての遅延時間を取得するステージ遅延時間取得処理
と、上記ステージ遅延時間取得処理において取得された
遅延時間を用いた比較処理を行い、上記比較処理の結果
に従って、上記指定されたデータ一時保持手段の削除に
伴う、上記遅延時間の調整を行う遅延時間調整処理とを
含むものである。これにより、削除するデータ一時保持
手段の前後における遅延時間に対応して、調整処理を行
う。
According to a third aspect of the present invention, there is provided an integrated circuit designing method, wherein the wave pipeline processing is performed from the non-wave pipeline circuit.
When the specified temporary holding means extraction processing for extracting the specified data temporary holding means and the extracted data temporary holding means are deleted and the processing stages before and after that are directly connected,
A stage delay time acquisition process for acquiring a delay time for the processing of specific data in the preceding and following processing stages, and a comparison process using the delay time acquired in the stage delay time acquisition process are performed, and according to the result of the comparison process. And a delay time adjustment process for adjusting the delay time accompanying the deletion of the designated data temporary holding means. Thus, the adjustment process is performed according to the delay time before and after the data temporary holding unit to be deleted.

【0027】また、請求項4にかかる集積回路設計方法
は、請求項3の方法において、上記遅延時間調整処理
は、上記指定されたデータ一時保持手段の前段に位置す
る処理ステージにおける特定データに対しての保持時間
が所定の値より小さな場合には、遅延手段を挿入するこ
とにより、上記保持時間を延長するものである。これに
より、遅延時間が短すぎることによって、有効データ出
力期間が短くなりすぎないように調整を行う。
According to a fourth aspect of the present invention, there is provided an integrated circuit designing method according to the third aspect, wherein the delay time adjusting processing is performed on specific data in a processing stage located before the designated data temporary holding means. If all the holding times are smaller than a predetermined value, the holding time is extended by inserting a delay means. Thereby, the adjustment is performed so that the valid data output period is not too short due to the delay time being too short.

【0028】また、請求項5にかかる集積回路設計方法
は、請求項3の方法において、上記遅延時間調整処理
は、上記指定されたデータ一時保持手段の前段に位置す
る処理ステージにおける特定データに対しての保持時間
が所定の値より小さな場合には、調整用一時保持手段を
挿入することにより、上記保持時間を延長するものであ
る。これにより、前段の処理ステージから出力されるデ
ータが、以降のクロックに対応して処理をされるように
調整を行う。
According to a fifth aspect of the present invention, there is provided an integrated circuit designing method according to the third aspect, wherein the delay time adjusting processing is performed on specific data in a processing stage located before the designated data temporary holding means. If all the holding times are smaller than a predetermined value, the holding time is extended by inserting a temporary holding means for adjustment. Thereby, adjustment is performed so that the data output from the preceding processing stage is processed in accordance with the subsequent clock.

【0029】また、請求項6にかかる集積回路設計方法
は、請求項3の方法において、上記遅延時間調整処理
は、上記指定されたデータ一時保持手段の前段に位置す
る処理ステージにおける特定データに対しての保持時間
が所定の値より小さな場合には、上記指定されたデータ
一時保持手段を削除せず、調整用一時保持手段として用
いるものである。これにより、削除しないデータ一時保
持手段を用いて、上記の調整を行う。
According to a sixth aspect of the present invention, in the integrated circuit designing method according to the third aspect, the delay time adjustment processing is performed on specific data in a processing stage located before the designated data temporary holding means. If all the holding times are smaller than a predetermined value, the designated data temporary holding means is not deleted and used as the adjustment temporary holding means. Thus, the above-described adjustment is performed using the data temporary holding unit that is not deleted.

【0030】また、請求項7にかかる集積回路設計方法
は、請求項5または6の方法において、上記遅延時間調
整処理は、上記調整用一時保持手段に対して供給するク
ロックの位相を調整するクロック調整処理をさらに含む
ものである。これにより、前段の処理ステージから出力
されるデータが、適切に遅延されたクロックに対応して
処理をされるように調整を行う。
According to a seventh aspect of the present invention, in the integrated circuit design method according to the fifth or sixth aspect, the delay time adjustment processing is performed by adjusting a phase of a clock supplied to the adjustment temporary holding means. It further includes an adjustment process. Thereby, adjustment is performed so that the data output from the preceding processing stage is processed in accordance with the appropriately delayed clock.

【0031】また、請求項8にかかる集積回路設計方法
は、請求項1の方法において、上記削除すべき構成要素
の一部を、評価処理により決定するものであり、上記ウ
ェーブパイプライン化処理においては、上記決定に従っ
てデータ一時保持手段の削除を行うものである。これに
より削除の対象を適切に選択する。
According to an eighth aspect of the present invention, there is provided an integrated circuit design method according to the first aspect, wherein a part of the component to be deleted is determined by an evaluation process. Is to delete the data temporary holding means in accordance with the above determination. Thereby, a deletion target is appropriately selected.

【0032】また、請求項9にかかる集積回路設計方法
は、請求項8の方法において、上記評価処理は、上記非
ウェーブパイプライン化回路内に含まれるデータ一時保
持手段ごとに、当該データ一時保持手段の特性を示す時
間特性値を取得する時間特性抽出処理と、上記取得した
時間特性値に基づいて、各データ一時保持手段を分類す
る分類処理とを含むものであり、上記ウェーブパイプラ
イン化処理においては、上記分類に従ってデータ一時保
持手段の削除を行うものである。これにより、時間特性
に対応して削除の対象を適切に選択する。
According to a ninth aspect of the present invention, in the method for designing an integrated circuit according to the eighth aspect, the evaluation processing is performed for each of the data temporary holding units included in the non-wave pipelined circuit. The method includes a time characteristic extraction process for acquiring a time characteristic value indicating the characteristic of the means, and a classification process for classifying each data temporary holding unit based on the acquired time characteristic value. In the above, the data temporary holding means is deleted according to the above classification. Thereby, a deletion target is appropriately selected according to the time characteristic.

【0033】また、請求項10にかかる集積回路設計方
法は、請求項9の方法において、上記評価処理は、上記
分類処理の結果に基づいて、データ一時保持手段ごと
に、当該データ一時保持手段を削除の対象とするか否か
と、上記削除に伴う調整処理の要・不要、および種類と
を示すレベル情報を付与するレベル決定処理をさらに含
み、上記ウェーブパイプライン化処理においては、上記
レベル情報に従ってデータ一時保持手段の削除と、調整
処理とを行うものである。これにより、時間特性に対応
して削除の対象を適切に選択してレベル情報を付与し、
レベル情報に対応した処理を実行する。
According to a tenth aspect of the present invention, in the method for designing an integrated circuit according to the ninth aspect, the evaluation processing includes, for each data temporary holding unit, the data temporary holding unit based on a result of the classification process. Whether or not to be subject to deletion and the necessity / unnecessity of the adjustment process accompanying the deletion, and further including a level determination process of giving level information indicating the type, in the wave pipelining process, according to the level information The temporary data holding means is deleted and the adjustment process is performed. With this, the target to be deleted is appropriately selected according to the time characteristic and the level information is given,
Execute the process corresponding to the level information.

【0034】また、請求項11にかかる集積回路設計方
法は、請求項1の方法において、上記ウェーブパイプラ
イン化処理においては、データ一時保持手段の削除を行
うものであり、上記削除の対象となるデータ一時保持手
段について、その入力側、および出力側における配線長
を抽出し、当該抽出した配線長が所定値を上回る場合に
は、当該データ一時保持手段を、バッファ回路をもって
置換するものである。これにより、データ一時保持手段
の削除による悪影響を、バッファ回路で置換することに
より回避する。
An integrated circuit design method according to claim 11 is the method according to claim 1, in which the data temporary holding means is deleted in the wave pipelining process, and is an object of the deletion. For the data temporary holding means, the wiring length on the input side and the output side is extracted, and when the extracted wiring length exceeds a predetermined value, the data temporary holding means is replaced with a buffer circuit. This avoids the adverse effect of deleting the temporary data holding means by replacing it with a buffer circuit.

【0035】また、請求項12にかかる集積回路設計方
法は、請求項11の方法において上記削除の対象となる
データ一時保持手段が、正転、及び反転出力信号を出力
するものである場合に、インバータ回路を含むバッファ
回路をもって上記置換を行うものである。これにより、
データ一時保持手段の削除による悪影響を、バッファ回
路とインバータ回路とで置換することにより回避する。
According to a twelfth aspect of the present invention, there is provided an integrated circuit designing method according to the eleventh aspect, wherein the data temporary holding means to be deleted outputs normal and inverted output signals. The above replacement is performed by a buffer circuit including an inverter circuit. This allows
An adverse effect due to the deletion of the temporary data holding means is avoided by replacing the buffer circuit with an inverter circuit.

【0036】また、請求項13にかかる集積回路設計方
法は、請求項1の方法において、上記ウェーブパイプラ
イン化処理においては、データ一時保持手段の削除を行
うものであり、上記削除の対象となるデータ一時保持手
段について、当該データ一時保持手段のライブラリ値と
は異なるライブラリ値を有する仮のデータ一時保持手段
への置換を行うライブラリ変換処理と、上記ライブラリ
変換処理に対応した最適化処理とを行うものである。こ
れにより、データ一時保持手段の削除による悪影響を、
ライブラリ変換処理に対応した最適化処理により回避す
る。
According to a thirteenth aspect of the present invention, in the integrated circuit design method according to the first aspect, in the wave pipelining process, the temporary data holding means is deleted, and the data is to be deleted. For the temporary data holding unit, a library conversion process for replacing the temporary data holding unit with a temporary data holding unit having a library value different from the library value of the temporary data holding unit, and an optimization process corresponding to the library conversion process are performed. Things. As a result, the adverse effects of deleting the temporary data storage
Avoid by the optimization processing corresponding to the library conversion processing.

【0037】また、請求項14にかかる集積回路設計方
法は、請求項13の方法において、当該パイプライン回
路内における各構成要素の配置を示す配置位置情報と、
当該パイプライン回路内における配線容量を示す実配線
容量情報とを抽出するものであり、上記抽出した配置位
置情報と、実配線容量情報とに基づいて上記最適化処理
を行うものである。これにより、データ一時保持手段の
削除による悪影響を、ライブラリ変換処理に対応した、
配置維持情報と実配線容量情報とに基づいた最適化処理
により回避する。
According to a fourteenth aspect of the present invention, there is provided an integrated circuit design method according to the thirteenth aspect, further comprising: arrangement position information indicating an arrangement of each component in the pipeline circuit;
This is for extracting actual wiring capacity information indicating the wiring capacity in the pipeline circuit, and performs the above-mentioned optimization processing based on the extracted arrangement position information and the actual wiring capacity information. As a result, the deleterious effect of deleting the temporary data holding means can be handled in the library conversion process.
It is avoided by an optimization process based on the placement maintaining information and the actual wiring capacity information.

【0038】また、請求項15にかかる集積回路設計方
法は、請求項13の方法において、上記最適化処理によ
る当該回路の変化を示す最適化変動量を取得するもので
あり、上記取得した最適化変動量に基づいて、上記最適
化処理実行の可否と、上記データ一時保持手段削除の可
否とを決定するものである。これにより、最適化処理の
影響を調べ、処理の実行の可否を適切に決定する。
According to a fifteenth aspect of the present invention, there is provided an integrated circuit designing method according to the thirteenth aspect, wherein an optimization variation indicating a change of the circuit due to the optimization processing is obtained. Based on the fluctuation amount, it is determined whether or not the above-described optimization processing can be executed and whether or not the above-mentioned data temporary holding unit can be deleted. Thus, the influence of the optimization processing is checked, and whether or not the processing can be executed is appropriately determined.

【0039】また、請求項16にかかる集積回路設計方
法は、請求項13の方法において、上記ライブラリ変換
処理は、上記仮のデータ一時保持手段への置換ととも
に、当該置換されるデータ一時保持手段の近傍において
遅延回路を挿入するものである。これにより、遅延時間
の相違を適切に調整する。
In the integrated circuit designing method according to a sixteenth aspect, in the method according to the thirteenth aspect, the library conversion process includes replacing the temporary data holding means with the temporary data holding means. A delay circuit is inserted in the vicinity. Thereby, the difference in delay time is appropriately adjusted.

【0040】[0040]

【発明の実施の形態1】実施の形態1.本発明の実施の
形態1による集積回路設計方法は、ASIC設計フロー
に従った集積回路設計方法において、特定のフリップフ
ロップを削除するウェーブパイプライン処理を行うもの
である。図1は、本実施の形態1における処理手順を示
すフローチャート図である。以下に、本実施の形態1に
よる集積回路設計の処理手順を図1のフローに従って説
明する。ステップ101において、RTL記述と設計制
約ファイルとを読み込む。次のステップ102の合成処
理ステップにおいては、これらを合成することにより、
合成結果ネットリストを生成する。次いで、ステップ1
03の配置配線処理ステップでは、ステップ102で生
成した合成結果ネットリストに基づいて、論理セルの配
置配線を行い、配置配線レイアウトを生成する。ステッ
プ103における配置配線処理は、レイアウトCAD等
を用いて行うものとすることができる。ステップ104
の実配線容量シミュレーションステップにおいては、合
成結果ネットリストと、配置配線結果とに基づいて、遅
延シミュレーションを行い、遅延時間を調整するために
回路およびレイアウトの修正を行って修正後ネットリス
トと修正後レイアウトを生成する。修正後ネットリスト
と修正後レイアウトとは、非ウェーブパイプライン化回
路を表現するものとなっている。
Embodiment 1 of the present invention. The integrated circuit design method according to the first embodiment of the present invention performs a wave pipeline process for deleting a specific flip-flop in the integrated circuit design method according to the ASIC design flow. FIG. 1 is a flowchart illustrating a processing procedure according to the first embodiment. Hereinafter, the processing procedure of the integrated circuit design according to the first embodiment will be described with reference to the flow of FIG. In step 101, an RTL description and a design constraint file are read. In the synthesis processing step of the next step 102, by synthesizing these,
Generate a synthesis result netlist. Then, Step 1
In the placement and routing processing step 03, the placement and routing of the logic cells is performed based on the synthesis result netlist generated in step 102, and a placement and routing layout is generated. The placement and routing processing in step 103 can be performed using a layout CAD or the like. Step 104
In the actual wiring capacitance simulation step, a delay simulation is performed based on the synthesis result netlist and the placement and routing results, and the circuit and layout are corrected to adjust the delay time, and the corrected netlist and the corrected Generate a layout. The modified netlist and the modified layout represent a non-wave pipelined circuit.

【0041】ステップ105においては、削除すべきフ
リップフロップを指定するウェーブパイプライン化指定
ファイルを読み込む。そして、ステップ106のウェー
ブパイプライン化ステップにおいて、修正後ネットリス
トと修正後レイアウトとに基づいて、パイプライン化指
定ファイルによって指定されたフリップフロップを削除
し、当該フリップフロップの入出力を短絡するとともに
必要な修正処理を行い、また、当該フリップフロップに
対するクロック配線を削除するウェーブパイプライン化
処理が行われる。この後出力ステップ107で、最終ネ
ットリストと最終レイアウトとが出力されることとな
る。最終ネットリストと最終レイアウトとは、ウェーブ
パイプライン回路を表現するものとなっている。
In step 105, a wave pipeline specification file for specifying a flip-flop to be deleted is read. Then, in the wave pipelining step of step 106, the flip-flop specified by the pipeline specification file is deleted based on the corrected netlist and the corrected layout, and the input / output of the flip-flop is short-circuited. A necessary correction process is performed, and a wave pipelining process of deleting a clock wiring for the flip-flop is performed. Thereafter, in the output step 107, the final net list and the final layout are output. The final netlist and the final layout represent a wave pipeline circuit.

【0042】図2は、図1のフローに示したウェーブパ
イプライン化ステップにおける詳細な処理手順を示すフ
ローチャート図である。以下に、本実施の形態1による
ウェーブパイプライン化の処理手順を図2のフローに従
って説明する。ステップ201の指定フリップフロップ
抽出ステップでは、修正後ネットリストと修正後レイア
ウトとが示す回路、すなわち非ウェーブパイプライン化
回路を対象として、ウェーブパイプライン化指定ファイ
ルにおいて指定されたフリップフロップが抽出される。
次いで、ステップ202のステージ遅延時間抽出ステッ
プにおいては、ステップ201において抽出されたフリ
ップフロップの前段に位置する処理ステージである演算
ステージ(パイプラインステージ)、および後段に位置
する演算ステージにおける遅延時間が抽出される。
FIG. 2 is a flowchart showing a detailed processing procedure in the wave pipelining step shown in the flow of FIG. Hereinafter, the processing procedure of the wave pipelining according to the first embodiment will be described with reference to the flow of FIG. In the designated flip-flop extraction step of step 201, the flip-flop designated in the wave pipelined designation file is extracted for the circuit indicated by the modified netlist and the modified layout, that is, for the non-wave pipelined circuit. .
Next, in the stage delay time extraction step of step 202, the delay times of the operation stage (pipeline stage), which is the processing stage located before the flip-flop extracted in step 201, and the operation stage located after, are extracted. Is done.

【0043】ステップ203において、後述するしきい
値が入力され、ステップ204のステージ遅延時間調整
ステップにおいては、ステップ202において抽出され
た遅延時間と、ステップ203において入力されたしき
い値の比較が行われる。そして、比較の結果ステップ2
02で抽出された演算ステージにおける遅延時間がしき
い値よりも大きいと判定された場合には、後述する調整
処理が実行される。
In step 203, a threshold value to be described later is input. In the stage delay time adjusting step in step 204, the delay time extracted in step 202 is compared with the threshold value input in step 203. Is Then, as a result of the comparison, step 2
When it is determined that the delay time in the calculation stage extracted in 02 is larger than the threshold value, an adjustment process described later is executed.

【0044】ステップ205の指定フリップフロップ削
除ステップにおいては、ステップ201において抽出さ
れたフリップフロップの削除と、当該フリップフロップ
に対するクロック配線との削除を実行する。そして、削
除したフリップフロップの前後に位置する演算ステージ
を結合し、最終レイアウトを生成する。後続するネット
リスト修正ステップ206においては、ネットリストに
対しての修正が実行され、最終ネットリストが生成され
る。
In the designated flip-flop deletion step of Step 205, the deletion of the flip-flop extracted in Step 201 and the deletion of the clock wiring for the flip-flop are executed. Then, the operation stages located before and after the deleted flip-flop are combined to generate a final layout. In a subsequent netlist modification step 206, the netlist is modified to generate a final netlist.

【0045】図4は、図2のフローのステップ203で
読み込まれるしきい値を説明するための図である。同図
は、前出の図26(b) と同様に、処理対象となるデータ
を構成する各ビットにおける遅延時間の相違を説明する
ための図である。図26(b)に示したと同様に、最下位
のビットDの遅延時間tDが最小のものであり、上位の
ビットほど遅延時間が大きなものとなり、最上位ビット
Aの遅延時間tAが最大のものとなる。同図においてt
MCは1マシンサイクルを示すものであり、本実施の形
態1においては、1マシンサイクルと遅延時間との差を
しきい値とするものである。従って、図2のフローのス
テップ204においては、ステップ202で取得したス
テージ遅延時間が、しきい値よりも大きいと判定された
場合には調整処理を行い、しきい値よりも小さい場合に
は、調整処理を行うことなく、指定されたフリップフロ
ップを削除するものとなる。
FIG. 4 is a diagram for explaining the threshold value read in step 203 of the flow of FIG. This figure is a diagram for explaining a difference in delay time between bits constituting data to be processed, similarly to FIG. 26B described above. As shown in FIG. 26 (b), the delay time tD of the least significant bit D is the minimum, the higher bit has a longer delay time, and the delay time tA of the most significant bit A is the largest. Becomes In the figure, t
MC indicates one machine cycle, and in the first embodiment, the difference between one machine cycle and the delay time is used as a threshold. Therefore, in step 204 of the flow of FIG. 2, when it is determined that the stage delay time acquired in step 202 is larger than the threshold value, an adjustment process is performed. The specified flip-flop is deleted without performing the adjustment processing.

【0046】図3、図6、および図7は、図2のフロー
のステップ204で行われる調整処理を説明するための
図である。また、図5、および図8は、図3、および図
6に示す調整処理を行った場合に得られる回路につい
て、その動作を説明するためのタイミングチャート図で
ある。
FIGS. 3, 6, and 7 are diagrams for explaining the adjustment processing performed in step 204 of the flow of FIG. FIGS. 5 and 8 are timing charts for explaining the operation of the circuit obtained when the adjustment processing shown in FIGS. 3 and 6 is performed.

【0047】本実施の形態1におけるウェーブパイプラ
イン処理においては、図24に示す回路(非ウェーブパ
イプライン化回路)から、データ一時保持手段として機
能する中間フリップフロップ群(図24の2403)を
削除するものである。前述の通り、図25に示すよう
に、単純に削除を行うのでは不都合を生じ得るものとな
るので、本実施の形態1においては、図3のように遅延
回路を挿入する調整処理を行うものである。また、遅延
時間の程度に応じては、図7のようにクロック調整のた
めのフリップフロップの挿入や、図5のようにクロック
調整のためのフリップフロップ、および遅延回路の挿入
を行う調整処理をすることも可能である。
In the wave pipeline processing according to the first embodiment, an intermediate flip-flop group (2403 in FIG. 24) functioning as data temporary holding means is deleted from the circuit (non-wave pipelined circuit) shown in FIG. Is what you do. As described above, as shown in FIG. 25, simple deletion may cause inconvenience. Therefore, in the first embodiment, adjustment processing for inserting a delay circuit as shown in FIG. 3 is performed. It is. Depending on the degree of the delay time, an adjustment process for inserting a flip-flop for clock adjustment as shown in FIG. 7 or for inserting a flip-flop for clock adjustment and a delay circuit as shown in FIG. It is also possible.

【0048】図3のような遅延回路を挿入する調整処理
においては、遅延時間の小さなデータを遅延回路を経由
させることによって、遅延時間の大きなデータとの遅延
時間の差を修正し、図28に示すデータ保持時間が短い
ことによる不具合を回避するものである。すなわち、図
4に示すnビットのデータの場合、下位n−1ビットの
データについては、いずれも最上位ビットのデータAよ
り遅延時間が小さなものとなっている。従って、遅延時
間の小さなものについては、遅延回路を経由させること
で、最上位ビットのデータAの遅延時間tAだけ遅延し
て出力されるように調整すれば、有効データが出力され
る時間を、クロックの立ち上がりに合致するに十分な長
さを有するものとすることができ、図28のタイミング
チャートに示す場合のように、有効データ出力期間が短
すぎるために起こる不具合を回避し得るものとなる。
In the adjustment process of inserting a delay circuit as shown in FIG. 3, the difference in delay time between the data having a large delay time and the data having a large delay time is corrected by passing data having a small delay time through the delay circuit. This is to avoid a problem due to the short data holding time shown. That is, in the case of the n-bit data shown in FIG. 4, the delay time of the lower-order n-1 bits of data is shorter than that of the data A of the most significant bit. Therefore, when the delay time of the effective data is reduced by adjusting the delay time of the data A of the most significant bit by delaying the delay time tA of the data A of the most significant bit by passing the delay data through the delay circuit, It is possible to have a length sufficient to match the rising edge of the clock, and to avoid a problem that occurs because the valid data output period is too short as shown in the timing chart of FIG. .

【0049】このような調整処理を伴って設計された、
図3に示すウェーブパイプライン回路の動作について、
図5のタイミングチャートに従って説明をする。同図に
おいて、(a) は図3の321に示すクロックであり、こ
のクロック信号の立ち上がりに合わせて処理は実行され
るものとなる。(b) は図3の入力フリップフロップ群3
01からの、(h) は同図の出力フリップフロップ群30
5からの出力を示している。同図の(c) は、パイプライ
ンステージ302からの、また、(g) はパイプラインス
テージ304からのデータ出力を、(d) はパイプライン
ステージ304への入力を、(e) 、および(f) はパイプ
ラインステージ304における最大、および最小の遅延
時間となる経路からの出力を示している。
Designed with such adjustment processing,
Regarding the operation of the wave pipeline circuit shown in FIG.
The description will be given according to the timing chart of FIG. In the figure, (a) is the clock indicated by 321 in FIG. 3, and the processing is executed in accordance with the rise of the clock signal. (b) is the input flip-flop group 3 of FIG.
(H) from the output flip-flop group 30 of FIG.
5 shows the output. 9C shows data output from the pipeline stage 302, FIG. 9G shows data output from the pipeline stage 304, FIG. 9D shows input to the pipeline stage 304, and FIGS. f) shows the output from the path that has the maximum and minimum delay time in the pipeline stage 304.

【0050】図5(a) に示すクロック321の立ち上が
りに対応して、図3の入力フリップフロップ群301は
処理対象となるデータを取り込み、取り込まれたデータ
は図5(b) に示す注目データD1として出力され、信号
線311を経由して、パイプラインステージ302に入
力される。パイプラインステージ302における処理に
おいて、各ビットごとの遅延時間は異なるものとなるこ
とから、パイプラインステージ302から出力されるデ
ータD2においては、図5の(c) に示すように、最大遅
延はdl11、最小遅延はdl12となる。
In response to the rising edge of the clock 321 shown in FIG. 5A, the input flip-flop group 301 shown in FIG. 3 fetches data to be processed, and the fetched data is the target data shown in FIG. The signal is output as D1 and is input to the pipeline stage 302 via the signal line 311. In the processing in the pipeline stage 302, since the delay time for each bit is different, the maximum delay of the data D2 output from the pipeline stage 302 is dl11 as shown in FIG. , The minimum delay is dl12.

【0051】例えば、図4に示すnビットのデータにお
いて、1マシンサイクル(tMC)と最上位ビットの遅
延時間(tA)との差t4をしきい値(図2のステップ
203)として設定するものとして、最上位ビットAは
信号線312を経由して遅延なしに後段のパイプライン
ステージ304に出力され、下位のビットについては信
号線313より遅延回路306に出力され、最上位ビッ
トAの遅延時間と同じだけの遅延時間をもって信号線3
14を経由して後段のパイプラインステージ304に入
力されるように調整処理を行うことができる。
For example, in the n-bit data shown in FIG. 4, a difference t4 between one machine cycle (tMC) and the delay time (tA) of the most significant bit is set as a threshold value (step 203 in FIG. 2). The most significant bit A is output to the subsequent pipeline stage 304 without delay via the signal line 312, and the lower bits are output to the delay circuit 306 from the signal line 313 without delay. Signal line 3 with the same delay time as
The adjustment processing can be performed so that the input is input to the subsequent pipeline stage 304 via the processing unit 14.

【0052】図5のタイミングチャートの(d) に示すよ
うに、パイプラインステージ304に対する入力データ
D40については、その終了の時点は、最小遅延である
dl12に対して、遅延回路312による遅延dl21
を加えたものとなる。この後、パイプラインステージ3
04から、信号線315を経由して出力フリップフロッ
プ群305に対してデータが出力される。
As shown in (d) of the timing chart of FIG. 5, for the input data D40 to the pipeline stage 304, the end time is determined by the delay dl21 by the delay circuit 312 with respect to the minimum delay dl12.
Is added. After this, pipeline stage 3
From 04, data is output to the output flip-flop group 305 via the signal line 315.

【0053】パイプラインステージ304からの出力
は、図5の(e) と(f) とに示すように、最大遅延がdl
41、最小遅延がdl42となる。これらによって決定
される、パイプラインステージ304からの有効データ
D43が出力される期間は、図5の(g) に示すものとな
る。従って、出力フリップフロップ群305において
は、図5(a) に示すクロック321の立ち上がりに対応
して、このデータを取り込むことができる。そして、図
5(h) に示すように、出力フリップフロップ群305か
らは、適切な有効データD5が出力されることとなる。
The output from the pipeline stage 304 has a maximum delay of dl as shown in FIGS. 5 (e) and 5 (f).
41, the minimum delay is dl42. The period during which the valid data D43 is output from the pipeline stage 304 is determined as shown in FIG. 5 (g). Therefore, the output flip-flop group 305 can capture this data in response to the rising edge of the clock 321 shown in FIG. Then, as shown in FIG. 5 (h), the output flip-flop group 305 outputs appropriate valid data D5.

【0054】図4のnビットのデータが処理対象である
場合、図24に示す非ウェーブパイプライン化回路が有
する中間フリップフロップ群は、少なくともn個のフリ
ップフロップを含むものであり、かつ、クロックの供給
を要するものである。図3のウェーブパイプライン回路
が有する遅延回路はnビットのうち、調整処理が必要な
ビットのみを遅延させれば良いものであるので、ウェー
ブパイプライン化によって回路規模を小型化し、必要な
電力量を低減させることが可能となるものである。
When the n-bit data shown in FIG. 4 is to be processed, the intermediate flip-flop group included in the non-wave pipelined circuit shown in FIG. 24 includes at least n flip-flops and a clock. Need to be supplied. Since the delay circuit included in the wave pipeline circuit of FIG. 3 only has to delay only the bits that need to be adjusted out of n bits, the circuit scale is reduced by wave pipelining, and the required power amount is reduced. Can be reduced.

【0055】本実施の形態1による集積回路設計方法に
おいては、図3に示す遅延回路のみを用いる調整処理を
専ら行うものとすることも可能である。ただし、図3に
示す調整処理においては、図4に示すデータについて、
中位のビットBのように、その遅延時間(tB)と、最
上位ビットAの遅延時間(tA)との差が比較的小さな
場合には、遅延回路306は小規模なもので良い。これ
に対して、中位ビットCや最下位ビットDのように、そ
の遅延時間(tC、tD)と最上位ビットAの遅延時間
(tA)との差が比較的大きなものとなる場合には、遅
延回路306としては回路規模がより大きなものを要す
ることとなる。このような場合には、図6、および図7
に示すように、フリップフロップを挿入することでデー
タ処理に対するクロックの位相を調整するものとして、
比較的規模が大きな遅延回路を用いる場合よりも全体的
な回路規模の小型化を図ることができる。
In the integrated circuit design method according to the first embodiment, it is possible to exclusively perform the adjustment processing using only the delay circuit shown in FIG. However, in the adjustment processing shown in FIG. 3, the data shown in FIG.
When the difference between the delay time (tB) of the middle-order bit B and the delay time (tA) of the most significant bit A is relatively small, the delay circuit 306 may be small. On the other hand, when the difference between the delay time (tC, tD) and the delay time (tA) of the most significant bit A becomes relatively large, such as the middle-order bit C and the least significant bit D, The delay circuit 306 needs to have a larger circuit scale. In such a case, FIGS. 6 and 7
As shown in the figure, by adjusting the phase of the clock for data processing by inserting a flip-flop,
The overall circuit size can be reduced as compared with the case where a relatively large delay circuit is used.

【0056】図6、および図7に示す調整処理において
は、図3の調整処理において遅延回路306で遅延され
るべきデータを、フリップフロップ606、または70
6に入力し、クロック信号に応じて後段のステージに出
力するものである。すなわち、挿入されるフリップフロ
ップ606、または706は、調整用一時保持手段とし
て機能するものである。図4の最下位ビットのように、
遅延時間の差が大きな場合には、クロック信号の次の立
ち上がりに出力するものとすることが可能であり、図7
に示す調整処理を行い得るものであるが、図4の中位ビ
ットCのように、中程度の遅延時間の差がある場合に
は、クロック信号の次の立ち上がりに応じるものとする
ことができない。このため、かかる場合には図6のよう
にクロック621をクロック遅延回路607において遅
延させてからフリップフロップ606に入力し、前段の
立ち上がりを用いるものとする。
In the adjustment processing shown in FIGS. 6 and 7, data to be delayed by delay circuit 306 in the adjustment processing of FIG.
6 and output to a subsequent stage according to a clock signal. That is, the inserted flip-flop 606 or 706 functions as a temporary holding unit for adjustment. Like the least significant bit of FIG.
If the difference between the delay times is large, the clock signal can be output at the next rising edge.
Can be performed, but if there is a medium delay time difference as in the middle bit C in FIG. 4, it cannot respond to the next rising of the clock signal. . Therefore, in such a case, as shown in FIG. 6, the clock 621 is delayed by the clock delay circuit 607 and then input to the flip-flop 606 to use the rising edge of the preceding stage.

【0057】図8は、図6のような調整処理を行って設
計されるウェーブパイプライン回路の動作を示すタイミ
ングチャート図である。同図において、(a) は図6の6
21に示すクロックである。(b) は図6の入力フリップ
フロップ群601からの、(j) は同図の出力フリップフ
ロップ群605からの出力を示している。同図の(c)
は、パイプラインステージ602からの、また、(i) は
パイプラインステージ604からのデータ出力を、(e)
はパイプラインステージ604への入力を、(g)、およ
び(h) はパイプラインステージ604における最大、お
よび最小の遅延時間となる経路からの出力を示してい
る。そして、(d) は、図6のクロック遅延回路607に
おいて遅延されるクロック信号を示すものである。以
下、図8に従って、ウェーブパイプライン回路の動作を
説明する。
FIG. 8 is a timing chart showing the operation of the wave pipeline circuit designed by performing the adjustment processing as shown in FIG. In the same figure, (a) is 6 in FIG.
21. (b) shows the output from the input flip-flop group 601 in FIG. 6, and (j) shows the output from the output flip-flop group 605 in FIG. (C) of FIG.
Represents the data output from the pipeline stage 602, (i) represents the data output from the pipeline stage 604, and (e) represents the data output from the pipeline stage 604.
Indicates the input to the pipeline stage 604, and (g) and (h) indicate the output from the path that provides the maximum and minimum delay time in the pipeline stage 604. (D) shows a clock signal delayed by the clock delay circuit 607 in FIG. Hereinafter, the operation of the wave pipeline circuit will be described with reference to FIG.

【0058】図8(a) に示すクロック621の立ち上が
りに対応して、図6の入力フリップフロップ群601か
らは、図8(b) に示す注目データD1が出力され、信号
線611を経由して、パイプラインステージ602に入
力される。パイプラインステージ602における処理に
おいて、各ビットごとの遅延時間は異なるものとなるこ
とから、パイプラインステージ602から出力されるデ
ータD2においては、図8の(c) に示すように、最大遅
延はdl11、最小遅延はdl12となる。このデータ
は図6において、信号線613を介してフリップフロッ
プ606に出力される。図示するように、クロック62
1の立ち上がりから、最小遅延dl12経過後より、有
効データD2の終わりの時点までが、最小遅延経路デー
タ有効期間(tmde)となる。
At the rising edge of the clock 621 shown in FIG. 8A, the target data D1 shown in FIG. 8B is output from the input flip-flop group 601 in FIG. And input to the pipeline stage 602. In the processing in the pipeline stage 602, since the delay time for each bit is different, the maximum delay of the data D2 output from the pipeline stage 602 is dl11 as shown in FIG. , The minimum delay is dl12. This data is output to the flip-flop 606 via the signal line 613 in FIG. As shown, clock 62
The period from the rise of 1 to the end of the valid data D2 after the lapse of the minimum delay dl12 is the minimum delay path data valid period (tmde).

【0059】一方、図6のフリップフロップ606に
は、クロック遅延回路607において遅延されたクロッ
ク622が入力される。遅延クロック622は図8の
(d) に示すものであり、この立ち上がりに合わせてフリ
ップフロップ606は、期間tmdeにデータを取り込
むことができる。従って、同図(e) 、および(f) に示す
フリップフロップ606の出力、および後段のパイプラ
インステージ604への入力は、図5を用いて説明した
遅延回路のみの調整処理を行う場合(図3)と同様に
(図5(d) のD40)、十分な長さにわたって入力され
る(図8の(d) のD40)ものとなる。
On the other hand, the clock 622 delayed by the clock delay circuit 607 is input to the flip-flop 606 in FIG. The delayed clock 622 of FIG.
(d), and the flip-flop 606 can take in data during the period tmde in accordance with the rise. Therefore, the output of the flip-flop 606 and the input to the subsequent pipeline stage 604 shown in FIGS. 9 (e) and 9 (f) are obtained when the adjustment processing of only the delay circuit described with reference to FIG. Similarly to (3) (D40 in FIG. 5D), the data is input over a sufficient length (D40 in FIG. 8D).

【0060】従って、図8(g) に示す最大の遅延dl4
1、および同図(h) に示す最小の遅延dl42によって
決定される、同図(i) に示すパイプラインステージ60
4からの出力D43については、図5に示す場合と同様
に、クロック621の立ち上がりに合わせて処理し得る
ものとなり、出力フリップフロップ群605からは、同
図(j) に示す適切な有効データD5が出力される。
Therefore, the maximum delay dl4 shown in FIG.
1 and the pipeline stage 60 shown in FIG. 6I determined by the minimum delay dl42 shown in FIG.
5, the output D43 can be processed at the rising edge of the clock 621, as in the case shown in FIG. Is output.

【0061】図7に示すウェーブパイプライン回路につ
いては、フリップフロップ706に対しては、遅延回路
を介さずにクロック721が供給されるものであり、フ
リップフロップ706が、クロック721の立ち上がり
に合わせてデータを処理するものであることを除いて図
6の回路と同様の動作を行うものとなる。
In the wave pipeline circuit shown in FIG. 7, the clock 721 is supplied to the flip-flop 706 without passing through a delay circuit. The same operation as that of the circuit of FIG. 6 is performed except that the data is processed.

【0062】本実施の形態1の集積回路設計方法で行わ
れるウェーブパイプライン化処理においては、図3、図
6、および図7に示した調整処理を混在させることも可
能である。例えば、図4に示す処理対象データを処理す
る回路において、上位の特定のビットに対しては調整処
理を行わず、上記特定のビットに後続する比較的上位の
特定のビットに対しては、図3に示した遅延回路のみを
用いる調整処理を行い、後続する中位の特定のビットに
対しては、図6に示したフリップフロップとクロック遅
延回路とを用いる調整処理を行い、下位の特定のビット
に対しては、図7に示したフリップフロップを用いる調
整処理を行うものとすることができ、それぞれに対し適
切に調整するものとなる。また、図6、および図7に示
した調整処理においては、調整用一時保持手段としての
フリップフロップを追加挿入するものとしているが、デ
ータ一時保持手段であるフリップフロップの削除を行わ
ずに、これを調整用一時保持手段として用いるものとす
る調整処理を行うことも可能である。例えば、図4に示
すnビットのデータを処理対象とする場合、図24に示
した少なくともn個のフリップフロップを有する中間フ
リップフロップ群の削除を企図する場合に、上位のビッ
トを処理するフリップフロップを削除し、必要ならば遅
延回路を挿入するものとし、中位、および下位のビット
を処理するフリップフロップは削除せずに図6、および
図7に示したフリップフロップとして用いるものとする
ことが可能である。
In the wave pipelining process performed by the integrated circuit design method according to the first embodiment, the adjustment processes shown in FIGS. 3, 6, and 7 can be mixed. For example, in the circuit for processing the data to be processed shown in FIG. The adjustment process using only the delay circuit shown in FIG. 3 is performed, and the adjustment process using the flip-flop and the clock delay circuit shown in FIG. The bits can be adjusted using the flip-flops shown in FIG. 7, and the respective bits are appropriately adjusted. Further, in the adjustment processing shown in FIGS. 6 and 7, a flip-flop as a temporary holding unit for adjustment is additionally inserted. However, the flip-flop as the temporary data holding unit is not deleted. It is also possible to perform an adjustment process in which is used as a temporary holding means for adjustment. For example, when the n-bit data shown in FIG. 4 is to be processed, a flip-flop that processes upper bits is intended to delete the intermediate flip-flop group having at least n flip-flops shown in FIG. And a delay circuit may be inserted if necessary, and the flip-flops for processing the middle and lower bits may be used as the flip-flops shown in FIGS. 6 and 7 without being deleted. It is possible.

【0063】このように、本実施の形態1の集積回路設
計方法によれば、フリップフロップの削除をおこなうウ
ェーブパイプライン化において、ステージ遅延時間とし
きい値の比較結果に対応して、遅延回路を挿入する調整
処理(図3)、フリップフロップを挿入する調整処理
(図7)、またはクロック遅延用回路とフリップフロッ
プとを挿入する調整処理(図6)を行うものとしたこと
で、通常のASIC設計手法に準じて容易に、節電効果
の大きなウェーブパイプライン回路を設計することが可
能となる。
As described above, according to the integrated circuit design method of the first embodiment, in the wave pipelining for eliminating the flip-flop, the delay circuit is set in accordance with the result of comparison between the stage delay time and the threshold value. By performing the adjustment process of inserting (FIG. 3), the adjustment process of inserting a flip-flop (FIG. 7), or the adjustment process of inserting a clock delay circuit and a flip-flop (FIG. 6), a normal ASIC is realized. According to the design method, it is possible to easily design a wave pipeline circuit having a large power saving effect.

【0064】実施の形態2.本発明の実施の形態2によ
る集積回路設計方法は、実施の形態1と同様に特定のフ
リップフロップを削除するウェーブパイプライン処理を
行うが、実施の形態1では指定されたフリップフロップ
を削除するのに対して、本実施の形態2では削除すべき
フリップフロップを選択するものである。
Embodiment 2 The integrated circuit design method according to the second embodiment of the present invention performs a wave pipeline process of deleting a specific flip-flop as in the first embodiment. However, in the first embodiment, the specified flip-flop is deleted. On the other hand, in the second embodiment, a flip-flop to be deleted is selected.

【0065】図9は、本実施の形態2における処理手順
を示すフローチャート図である。以下に、本実施の形態
2による集積回路設計の処理手順を図9のフローに従っ
て説明する。ステップ901において、RTL記述と設
計制約ファイルとを読み込む。次のステップ902の合
成処理ステップにおいては、これらを合成することによ
り、合成結果ネットリストを生成する。次いで、ステッ
プ903の配置配線処理ステップでは、ステップ902
で生成した合成結果ネットリストに基づいて、論理セル
の配置配線を行い、配置配線レイアウトを生成する。ス
テップ904の実配線容量シミュレーションステップに
おいては、合成結果ネットリストと、配置配線結果とに
基づいて、遅延シミュレーションを行い、遅延時間を調
整するために回路およびレイアウトの修正を行って修正
後ネットリストと修正後レイアウトを生成する。修正後
ネットリストと修正後レイアウトとは、非ウェーブパイ
プライン化回路を表現するものとなっている。
FIG. 9 is a flowchart showing a processing procedure according to the second embodiment. Hereinafter, the processing procedure of the integrated circuit design according to the second embodiment will be described with reference to the flow of FIG. In step 901, the RTL description and the design constraint file are read. In the synthesis processing step of the next step 902, a synthesis result net list is generated by synthesizing these. Next, in the placement and routing processing step of Step 903, Step 902
Based on the synthesis result netlist generated in step (1), the logic cells are placed and wired to generate a layout and wiring layout. In the actual wiring capacity simulation step of step 904, a delay simulation is performed based on the synthesis result netlist and the placement and routing results, and the circuit and layout are corrected to adjust the delay time, and the corrected netlist and Generate the modified layout. The modified netlist and the modified layout represent a non-wave pipelined circuit.

【0066】以上のステップ901からステップ904
までは、実施の形態1のステップ101〜104(図
1)と同様に行われるものである。そして、実施の形態
1では、ウェーブパイプライン化処理に先立って指定フ
ァイルの読み込みを行い、これによりウェーブパイプラ
イン化の対象となるフリップフロップが指定されるが、
本実施の形態2では、ステップ905〜908における
評価処理を行うことで、ウェーブパイプライン化の対象
となるフリップフロップを決定する。
The above steps 901 to 904
The steps up to this are performed in the same manner as steps 101 to 104 (FIG. 1) of the first embodiment. In the first embodiment, the designated file is read prior to the wave pipeline processing, whereby the flip-flop to be subjected to the wave pipeline processing is specified.
In the second embodiment, the flip-flop to be subjected to the wave pipeline is determined by performing the evaluation processing in steps 905 to 908.

【0067】本実施の形態2における評価処理では、ま
ずステップ905の分類方法・処理レベル読み込みステ
ップにおいて、分類方法と処理レベルとが指定される。
本実施の形態2では、後述のステップ907において、
各フリップフロップにつき、あらかじめ定められたグル
ープのうち、いずれかのグループに属するものとする分
類処理を行い、ステップ908においては、分類処理の
結果に基づいて、グループごとに、ウェーブパイプライ
ン化処理をどのように実行するかを定めるものであるの
で、このステップ905では、それらの処理のために、
分類をどのように行うかと、分類に従ってフリップフロ
ップをどのようにレベル化するかとが指定される。
In the evaluation processing according to the second embodiment, first, in a classification method / processing level reading step of step 905, a classification method and a processing level are designated.
In the second embodiment, in step 907 described later,
For each flip-flop, a classification process is performed to determine that the flip-flop belongs to any one of the predetermined groups. In this step 905, for the processing,
How to perform the classification and how to level the flip-flops according to the classification are specified.

【0068】ステップ906の時間特性抽出処理ステッ
プでは、各フリップフロップをいずれかのグループに分
類するための時間的特性が取得される。本実施の形態2
においては、各フリップフロップごとに、最大遅延時
間、最小遅延時間、遅延時間差分値、および処理ステー
ジサイクル時間が抽出される。
In the time characteristic extraction processing step of step 906, a time characteristic for classifying each flip-flop into any group is obtained. Embodiment 2
In, the maximum delay time, the minimum delay time, the delay time difference value, and the processing stage cycle time are extracted for each flip-flop.

【0069】続いて実行されるステップ907の分類処
理ステップと、ステップ908のレベル化処理ステップ
とは、先のステップ905において取得した、分類方法
と処理レベルとに従って行われる。ステップ907の分
類処理ステップでは、ステップ906において抽出した
各フリップフロップごとの時間的特性を用いて、各フリ
ップフロップをいずれかのグループに属するように分類
する。そして、ステップ908のレベル化処理ステップ
では、ステップ907での分類結果に従って、各フリッ
プフロップに対してレベルを決定する。レベルは、ウェ
ーブパイプライン化処理の処理対象とするか否かと、処
理対象とする場合に調整処理を行うか否か、又、いかな
る調整処理を行うかを示すものである。このステップ9
08の処理において、各フリップフロップにつき、その
レベルを示すレベル情報が付与される。
The classification processing step of step 907 and the leveling processing step of step 908 are performed according to the classification method and processing level acquired in step 905. In the classification processing step of step 907, each flip-flop is classified so as to belong to one of the groups using the temporal characteristics of each flip-flop extracted in step 906. Then, in the leveling processing step of step 908, the level is determined for each flip-flop according to the classification result in step 907. The level indicates whether or not the processing is to be performed in the wave pipeline processing, whether or not to perform the adjustment processing when the processing is to be performed, and what kind of adjustment processing is to be performed. This step 9
In the process 08, level information indicating the level is given to each flip-flop.

【0070】従って、本実施の形態2では、ステップ9
08のレベル化処理において、ウェーブパイプライン化
の対象であるとされたグループに属するフリップフロッ
プに対して、ステップ909におけるウェーブパイプラ
イン化処理が実行されることとなる。ステップ909の
ウェーブパイプライン処理ステップにおける詳細な処理
手順を図10に示す。以下図10のフローに従って、ウ
ェーブパイプライン化処理について説明する。
Therefore, in the second embodiment, step 9
In the leveling process 08, the wave pipelining process in step 909 is executed on the flip-flops belonging to the group to be subjected to the wave pipeline process. FIG. 10 shows a detailed processing procedure in the wave pipeline processing step of step 909. Hereinafter, the wave pipeline processing will be described with reference to the flow of FIG.

【0071】ステップ1001の対象フリップフロップ
抽出ステップでは、修正後ネットリストと修正後レイア
ウトとが示す回路、すなわち非ウェーブパイプライン化
回路を対象として、ステップ908のレベル化処理(図
9)において付与されたレベル情報を、各フリップフロ
ップごとに調べることによって、ウェーブパイプライン
処理の対象となるフリップフロップが抽出される。次い
で、ステップ1002の入出力配線長和抽出ステップに
おいては、ステップ1001において抽出されたフリッ
プフロップの入力側、および出力側について、修正後レ
イアウトにおける配線長の和が抽出される。
In the target flip-flop extraction step of step 1001, the circuit indicated by the corrected netlist and the corrected layout, that is, the non-wave pipelined circuit, is provided in the leveling process (FIG. 9) of step 908. By checking the level information for each flip-flop, the flip-flop to be subjected to the wave pipeline processing is extracted. Next, in the input / output wiring length sum extraction step of step 1002, the sum of the wiring lengths in the modified layout is extracted for the input side and the output side of the flip-flop extracted in step 1001.

【0072】ステップ1003の配線長所定値入力ステ
ップにおいては、後段における調整処理を実行するか否
かの判定に用いられる、配線長の所定値が入力される。
そして、ステップ1004のバッファ・インバータ置換
処理では、ステップ1002で取得された配線長の和
と、ステップ1003で入力された配線長の所定値とを
比較することにより、置換処理を行うか否かを決定す
る。本実施の形態2では、あるフリップフロップについ
て、ステップ1002で取得された配線長の和が、入力
された所定値を上回っていた場合には、当該フリップフ
ロップを、その出力の論理に対応したバッファ・インバ
ータ回路をもって置換するものである。
In the wire length predetermined value input step of step 1003, a wire length predetermined value used for determining whether or not to execute an adjustment process in a subsequent stage is input.
Then, in the buffer / inverter replacement processing in step 1004, the sum of the wiring length obtained in step 1002 is compared with a predetermined value of the wiring length input in step 1003 to determine whether to perform the replacement processing. decide. In the second embodiment, for a certain flip-flop, if the sum of the wiring lengths obtained in step 1002 exceeds the input predetermined value, the flip-flop is replaced with a buffer corresponding to the logic of its output. -Replace with an inverter circuit.

【0073】図11、および図12は、本実施の形態2
におけるバッファ・インバータ置換処理を説明するため
の図である。以下に、これらの図を用いて、図10のフ
ローのステップ1004で行われる、フリップフロップ
の、バッファ・インバータ回路への置換処理について説
明する。
FIGS. 11 and 12 show the second embodiment.
FIG. 7 is a diagram for explaining a buffer / inverter replacement process in FIG. Hereinafter, the replacement of the flip-flop with the buffer / inverter circuit performed in step 1004 of the flow of FIG. 10 will be described with reference to these drawings.

【0074】図11は、ウェーブパイプライン化処理の
対象となる、非ウェーブパイプライン化回路を示すRT
L記述の概念図である。図11のRTL記述は、入力フ
リップフロップ群1101、組み合わせ論理回路(パイ
プラインステージ)1102、および1104、処理対
象フリップフロップ1103、および出力フリップフロ
ップ群1105を含むものである。図示する組み合わせ
論理回路は、図3等に示したパイプラインステージとし
て機能するものである。フリップフロップ群とパイプラ
インステージとはそれぞれ信号線1111〜1114で
接続されており、各フリップフロップに対しては、クロ
ック1121が供給されている。
FIG. 11 shows a non-wave pipelined circuit RT to be subjected to the wave pipeline processing.
It is a conceptual diagram of L description. The RTL description in FIG. 11 includes an input flip-flop group 1101, combinational logic circuits (pipeline stages) 1102 and 1104, a processing target flip-flop 1103, and an output flip-flop group 1105. The combinational logic circuit shown functions as the pipeline stage shown in FIG. The flip-flop group and the pipeline stage are connected by signal lines 1111 to 1114, respectively, and a clock 1121 is supplied to each flip-flop.

【0075】フリップフロップ1103の前段に位置す
るパイプラインステージである組み合わせ論理回路11
02からは、信号線1112を経由してフリップフロッ
プ1103に対して対象FF入力信号が出力される。同
図に示すフリップフロップ1103は、正転信号と反転
信号とを出力するものであって、後段に位置するパイプ
ラインステージである組み合わせ論理回路1104に対
して、信号線1113により対象FF正転出力信号を、
また、信号線1114により対象FF反転出力信号を出
力する。
The combinational logic circuit 11 which is a pipeline stage located before the flip-flop 1103
From 02, the target FF input signal is output to the flip-flop 1103 via the signal line 1112. A flip-flop 1103 shown in FIG. 11 outputs a normal signal and an inverted signal. Signal
Further, a target FF inverted output signal is output through the signal line 1114.

【0076】本実施の形態2におけるウェーブパイプラ
イン処理において、図11に示す回路(非ウェーブパイ
プライン化回路)において、データ一時保持手段として
機能するフリップフロップ1103が、ウェーブパイプ
ライン化処理の対象となったものとする。
In the wave pipeline processing according to the second embodiment, in the circuit (non-wave pipelined circuit) shown in FIG. It has become.

【0077】ここで、フリップフロップ1103を除
き、フリップフロップ1103の入力信号を伝送する信
号線1112を、正転出力信号を伝送する信号線111
3と直結するものとするならば、後段の組み合わせ論理
回路1104における容量負荷は、入力信号を伝送する
信号線1112の配線負荷と、正転出力信号を伝送する
信号線1113の配線負荷との和となり、この負荷は、
削除されるべきフリップフロップ1103の入力である
信号線1112の配線容量よりも大きなもの(信号線1
113の配線負荷分だけ大きい)となる。従って、組み
合わせ論理回路1104の負荷に対する能力が十分でな
い場合には、当該論理回路の調整を行うか、または中継
バッファとしてリピータ回路を挿入するなどを行う必要
がある。また、フリップフロップ1103を除いて、そ
の入出力の配線を直結した場合の当該直結配線の長さが
原因となって配線遅延が大きくなる場合も同様である。
さらに、直結により入力信号を正転出力信号とするのみ
では、反転信号が後段の組み合わせ論理回路に入力され
ず、論理の整合性がとれないこととなる。
Except for the flip-flop 1103, the signal line 1112 for transmitting the input signal of the flip-flop 1103 is connected to the signal line 111 for transmitting the non-inverted output signal.
3, the capacitive load in the subsequent combinational logic circuit 1104 is the sum of the wiring load of the signal line 1112 transmitting the input signal and the wiring load of the signal line 1113 transmitting the non-inverted output signal. And this load is
A wiring capacitance larger than the wiring capacitance of the signal line 1112 which is the input of the flip-flop 1103 to be deleted (signal line 1
113 for the wiring load). Therefore, when the capacity of the combinational logic circuit 1104 with respect to the load is not sufficient, it is necessary to adjust the logic circuit or insert a repeater circuit as a relay buffer. Except for the flip-flop 1103, the same applies to a case where the wiring delay is increased due to the length of the directly connected wiring when the input / output wiring is directly connected.
Further, if only the input signal is used as the non-inverted output signal by direct connection, the inverted signal is not input to the combinational logic circuit at the subsequent stage, and the logic consistency cannot be maintained.

【0078】本実施の形態2におけるバッファ・インバ
ータ処理は、このような不都合を回避するために行われ
るものであり、バッファにより後段の回路の負荷を調整
するとともに、インバータにより反転信号を形成して論
理の整合性を確保する。図12は、本実施の形態2によ
る、フリップフロップ1103(図11)に対してのバ
ッファ・インバータ処理を示す図である。
The buffer / inverter process in the second embodiment is performed to avoid such inconvenience. The buffer adjusts the load of the subsequent circuit and forms an inverted signal by the inverter. Ensure logical consistency. FIG. 12 is a diagram showing a buffer / inverter process for flip-flop 1103 (FIG. 11) according to the second embodiment.

【0079】前述のように、図10のフロー中のステッ
プ1004では、対象とするフリップフロップの入出力
配線長の和が、所定値を上回った場合にはバッファ・イ
ンバータ置換処理を行うものであり、図11の場合、対
象FF1103の入力信号を伝送する信号線1112、
正転出力信号を伝送する信号線1113、および反転出
力信号を伝送する信号線1114の配線長の和が所定値
を上回った場合には、バッファ・インバータ置換を行う
ものである。
As described above, in step 1004 in the flow of FIG. 10, if the sum of the input / output wiring lengths of the target flip-flop exceeds a predetermined value, a buffer / inverter replacement process is performed. 11, the signal line 1112 for transmitting the input signal of the target FF 1103,
When the sum of the wiring lengths of the signal line 1113 for transmitting the normal output signal and the signal line 1114 for transmitting the inverted output signal exceeds a predetermined value, the buffer / inverter replacement is performed.

【0080】本実施の形態2におけるバッファ・インバ
ータ置換処理は、図11のフリップフロップ1103
を、図12の置換バッファ1201をもって置換するも
のである。これにより、配線容量や遅延時間が変化する
ことによる影響を回避することができ、置換バッファ1
201が有するインバータからの出力が、フリップフロ
ップ1103からの反転出力信号と同等のものとなるた
め、論理整合性が乱れることもないものとなる。
The buffer / inverter replacement process according to the second embodiment is performed by the flip-flop 1103 shown in FIG.
Is replaced by the replacement buffer 1201 in FIG. As a result, it is possible to avoid the influence of the change in the wiring capacity and the delay time, and the replacement buffer 1
Since the output from the inverter of the inverter 201 is equivalent to the inverted output signal from the flip-flop 1103, the logical consistency is not disturbed.

【0081】なお、置換バッファ1201は、対象フリ
ップフロップ1103より回路規模の小さなものであ
り、クロック1221の供給も不要である。従って、置
換バッファ1201を用いることで、単純に直結するよ
りは回路規模が若干増大するものの、フリップフロップ
1103の削除による回路規模の小型化と省電力化の効
果を大きく損なうものではない。
The replacement buffer 1201 has a smaller circuit size than the target flip-flop 1103, and does not need to supply the clock 1221. Therefore, although the use of the replacement buffer 1201 slightly increases the circuit size as compared with the case where the replacement buffer 1201 is directly connected, the effect of reducing the circuit size and saving power by removing the flip-flop 1103 is not significantly impaired.

【0082】図10のフローに戻り、ステップ1004
のバッファ・インバータ置換処理の後、ステップ100
5のステージ遅延時間調整ステップは、図9のフローの
ステップ908において取得したレベルに対応して実行
され、調整処理を伴い削除されるレベルのフリップフロ
ップに対して、当該削除に伴うステージ遅延時間の調整
処理が行われる。そして、ステップ1006では、未置
換のフリップフロップの入力と出力とが直結され、対象
となるフリップフロップの削除が行われる。
Returning to the flow of FIG. 10, step 1004
Step 100 after the buffer / inverter replacement process
The stage delay time adjustment step 5 is executed in accordance with the level acquired in step 908 of the flow in FIG. Adjustment processing is performed. Then, in step 1006, the input and output of the unsubstituted flip-flop are directly connected, and the target flip-flop is deleted.

【0083】その後のステップ1007のネットリスト
修正処理では、図9のフローのステップ904で生成さ
れたネットリストが修正され、図10のフローの処理手
順は終了する。図9のフローに戻り、最終ネットリスト
と最終レイアウトとが出力され、図9のフローに示す処
理手順が終了する。
In the subsequent netlist correction processing in step 1007, the netlist generated in step 904 in the flow in FIG. 9 is corrected, and the processing procedure in the flow in FIG. 10 ends. Returning to the flow of FIG. 9, the final netlist and the final layout are output, and the processing procedure shown in the flow of FIG. 9 ends.

【0084】以下に、図9のフローにおける、本実施の
形態2の評価処理(図9のステップ905〜908)
と、ウェーブパイプライン化処理(図9のステップ90
9、および図10)とについて、図13〜図18を用い
てさらに説明する。図13は、非ウェーブパイプライン
化回路の一部を示すRTL記述の概念図であり、一つの
組み合わせ論理回路(パイプラインステージ)と、その
前後に配置されたフリップフロップ群との関係を示すも
のである。図示するように、組み合わせ論理回路132
0の前段にはフリップフロップ群1310が、後段には
フリップフロップ群1330が配置されている。フリッ
プフロップ群1310は、フリップフロップ1311〜
1314を、組み合わせ論理回路1320は論理ゲート
1321〜1326を、又フリップフロップ群1330
はフリップフロップ1331〜1333をそれぞれ含ん
でいる。なお、この図においては、フリップフロップと
組み合わせ論理回路とに供給されるクロック信号につい
ては省略している。
The following is the evaluation processing of the second embodiment in the flow of FIG. 9 (steps 905 to 908 in FIG. 9).
And the wave pipeline processing (step 90 in FIG. 9).
9 and 10) will be further described with reference to FIGS. FIG. 13 is a conceptual diagram of an RTL description showing a part of a non-wave pipelined circuit, and shows a relationship between one combinational logic circuit (pipeline stage) and flip-flop groups arranged before and after it. It is. As shown, the combinational logic circuit 132
A flip-flop group 1310 is arranged at a stage preceding 0 and a flip-flop group 1330 is arranged at a stage subsequent to 0. The flip-flop group 1310 includes flip-flops 1311 to
1314; combinational logic circuit 1320; logic gates 1321 to 1326;
Include flip-flops 1331 to 1333, respectively. Note that, in this figure, clock signals supplied to the flip-flops and the combinational logic circuit are omitted.

【0085】フリップフロップ群1310と組み合わせ
論理回路1320との接続関係は、フリップフロップ1
311からの出力は論理ゲート1331に、フリップフ
ロップ1312からの出力は論理ゲート1331と13
32とに、フリップフロップ1313からの出力は論理
ゲート1332と1333とに、そしてフリップフロッ
プ1314からの出力は論理ゲート1333に入力され
るものとなる。
The connection relationship between the flip-flop group 1310 and the combinational logic circuit 1320 is as follows.
The output from 311 is to logic gate 1331 and the output from flip-flop 1312 is to logic gates 1331 and 1331.
32, the output from flip-flop 1313 is input to logic gates 1332 and 1333, and the output from flip-flop 1314 is input to logic gate 1333.

【0086】組み合わせ論理回路内部の接続関係は、論
理ゲート1321の出力は論理ゲート1324と132
5とに、論理ゲート1322の出力は論理ゲート132
5に、論理ゲート1323の出力は論理ゲート1324
に、論理ゲート1324と論理ゲート1325との出力
は論理ゲート1326に入力される。
The connection inside the combinational logic circuit is such that the output of logic gate 1321 is
5, the output of the logic gate 1322 is
5, the output of the logic gate 1323 is
The outputs of the logic gates 1324 and 1325 are input to the logic gate 1326.

【0087】組み合わせ論理回路1320とフリップフ
ロップ群1330との接続関係は、論理ゲート1326
からの出力がフリップフロップ1331に、論理ゲート
1325からの出力がフリップフロップ1332に、そ
して、フリップフロップ1323からの出力がフリップ
フロップ1333に入力される。
The connection between the combinational logic circuit 1320 and the flip-flop group 1330 is determined by the logic gate 1326.
Is output to the flip-flop 1331, the output from the logic gate 1325 is input to the flip-flop 1332, and the output from the flip-flop 1323 is input to the flip-flop 1333.

【0088】処理されるデータは、上記のような接続関
係において、いずれかの経路を通るものとなるが、組み
合わせ論理回路1320における入力から出力までの遅
延時間については、通過する論理ゲートの数に概ね比例
し、通過する論理ゲートの数が多いほど大きなものとな
る。従って、例えば、フリップフロップ1313から組
み合わせ論理回路の論理ゲート1322に入力され、論
理ゲート1325を経由してフリップフロップ1332
に至る場合の遅延時間は、フリップフロップ1314〜
論理ゲート1323〜フリップフロップ1333を経由
する場合の遅延時間より大きく、フリップフロップ13
11〜論理ゲート1321〜論理ゲート1324〜論理
ゲート1326〜フリップフロップ1331を経由する
場合の遅延時間より小さいものとなる。
The data to be processed passes through one of the paths in the connection relationship as described above. It is approximately proportional and becomes larger as the number of logic gates passing therethrough increases. Therefore, for example, the data is input from the flip-flop 1313 to the logic gate 1322 of the combinational logic circuit, and the flip-flop 1332
, The delay time when the flip-flop 1314
The delay time when the signal passes through the logic gate 1323 to the flip-flop 1333 is larger than the delay time,
11 to the logic gate 1321 to the logic gate 1324 to the logic gate 1326 to the flip-flop 1331.

【0089】図14は、図13のように構成された回路
においてあるタイミングにより信号が伝送される場合の
動作を示すタイミングチャート図である。図14(a) は
クロックを示しており、このクロック信号の立ち上がり
に合わせて処理は実行されるものとなる。図示するよう
に、クロック信号における1単位は、組み合わせ論理回
路1320における1サイクルとなり、これを処理ステ
ージサイクル時間(Tstage時間)とする。図14(b) は
図13のフリップフロップ群1310から、(f) は同図
のフリップフロップ群1330からの出力を示してい
る。また、(c) 、(d) 、および(e) は、図13のフリッ
プフロップ群1330に含まれる各フリップフロップ1
331、1332、および1333への入力を示してい
る。
FIG. 14 is a timing chart showing the operation when a signal is transmitted at a certain timing in the circuit configured as shown in FIG. FIG. 14A shows a clock, and the processing is executed in accordance with the rise of the clock signal. As shown in the figure, one unit in the clock signal is one cycle in the combinational logic circuit 1320, which is referred to as a processing stage cycle time (Tstage time). FIG. 14B shows the output from the flip-flop group 1310 in FIG. 13, and FIG. 14F shows the output from the flip-flop group 1330 in FIG. Further, (c), (d) and (e) show each flip-flop 1 included in the flip-flop group 1330 in FIG.
331, 1332, and 1333 are shown.

【0090】図13に示す組み合わせ論理回路1320
では、図14(b) に示すフリップフロップ群1310か
らの出力が入力される。図14(a) に示すクロック信号
の立ち上がりに合わせて、同図(b) に示すフリップフロ
ップ群1310からの出力が変化し(データ1410)
このデータが組み合わせ論理回路1320において処理
され、フリップフロップ群1330に出力され、取り込
まれる。従って、図14(a) に示す処理ステージサイク
ル時間の経過後に、同図f)に示すフリップフロップ群
1330からの出力は、データ1410に対応したデー
タ1420となる。すなわち、データ1420は、デー
タ1410に対する組み合わせ論理回路1320におけ
る処理の結果を、フリップフロップ群1330(フリッ
プフロップ1331〜1333)において保持し、クロ
ック信号(図14(a) )の立ち上げに合わせて出力した
ものである。
The combinational logic circuit 1320 shown in FIG.
Then, the output from the flip-flop group 1310 shown in FIG. In accordance with the rise of the clock signal shown in FIG. 14A, the output from the flip-flop group 1310 shown in FIG. 14B changes (data 1410).
This data is processed in the combinational logic circuit 1320, output to the flip-flop group 1330, and captured. Accordingly, after the elapse of the processing stage cycle time shown in FIG. 14A, the output from the flip-flop group 1330 shown in FIG. 14F becomes data 1420 corresponding to the data 1410. That is, the data 1420 holds the processing result of the combinational logic circuit 1320 on the data 1410 in the flip-flop group 1330 (the flip-flops 1331 to 1333) and outputs the data at the rising edge of the clock signal (FIG. 14A). It was done.

【0091】ここで図14(c) 〜(e) に示す、フリップ
フロップ群1330に含まれる各フリップフロップにつ
いて考察する。フリップフロップ1331に対する入力
は、組み合わせ論理回路1320内部において3段以内
の論理ゲートを通過するものであるので、図14(c) に
示すように、最大T1時間後に変化が現れる。同様に、
2段以内の論理ゲートを通過する、フリップフロップ1
332の入力については、図14(d) に示すように最大
T2時間後に、1段の論理ゲートを通過する、フリップ
フロップ1333の入力については、図14(e) に示す
ように最大T3時間後に変化が現れる。前述のように、
通過する論理ゲート数が多いほど遅延時間が大きなもの
となるので、T1>T2>T3となる。
Here, each flip-flop included in the flip-flop group 1330 shown in FIGS. 14C to 14E will be considered. Since the input to the flip-flop 1331 passes through the logic gates within three stages in the combinational logic circuit 1320, a change appears after a maximum of T1 time as shown in FIG. Similarly,
Flip-flop 1 passing through logic gates within two stages
The input of 332 passes through the one-stage logic gate after a maximum of T2 time as shown in FIG. 14 (d). The input of the flip-flop 1333 has a maximum of T3 time as shown in FIG. 14 (e). Change appears. As aforementioned,
The greater the number of logic gates that pass, the greater the delay time, so that T1>T2> T3.

【0092】ここで、フリップフロップ群1330をウ
ェーブパイプライン化の対象とする場合を考える。フリ
ップフロップ群1330を単純に削除し、組み合わせ論
理回路1320の出力をそのまま後段の組み合わせ論理
回路(パイプラインステージ)に直結することとした場
合、図14(f) に示すデータ1420に相当する信号
は、図示するT4の期間しか発生しないこととなる。こ
こでT4は、組み合わせ論理回路1320に処理すべき
データ(データ1410)が与えられてから時間T1時
間経過後に始まり、後続のデータ(データ1411)が
与えられてから時間T3経過後に終わる期間であり、処
理ステージサイクル時間より短いものとなっている。従
って、単純な削除と直結とを行うのでは、後段の処理、
すなわち後段のパイプラインステージにおける処理タイ
ミングを乱すこととなる。
Here, a case is considered where the flip-flop group 1330 is to be subjected to wave pipeline processing. If the flip-flop group 1330 is simply deleted and the output of the combinational logic circuit 1320 is directly connected to the subsequent combinational logic circuit (pipeline stage), the signal corresponding to the data 1420 shown in FIG. , Only occurs in the period T4 shown in FIG. Here, T4 is a period that starts after the lapse of the time T1 after the data to be processed (data 1410) is provided to the combinational logic circuit 1320 and ends after the lapse of the time T3 after the subsequent data (data 1411) is provided. , The processing stage is shorter than the cycle time. Therefore, if simple deletion and direct connection are performed, the subsequent processing,
That is, the processing timing in the subsequent pipeline stage is disturbed.

【0093】このような乱れを回避するためには、図1
4に示す遅延時間T2と、遅延時間T3とを、より長い
遅延時間である遅延時間T1に揃えるという調整処理が
考えられる。このように調整すれば、期間T4の長さは
処理ステージサイクル時間に等しいものとなるので、後
段の処理タイミングを乱すことはない。
In order to avoid such disturbance, FIG.
4, the delay time T2 and the delay time T3 may be adjusted to the longer delay time T1. With such an adjustment, the length of the period T4 becomes equal to the processing stage cycle time, so that the subsequent processing timing is not disturbed.

【0094】以上のように、遅延時間の大きさと、処理
ステージサイクル時間との差の大きさは、ウェーブパイ
プライン化処理において問題となるものであり、フリッ
プフロップ削除の可否と、調整処理の要・不要とを決定
する要因となる。従って、本実施の形態2においては前
述のように(図9のステップ906)時間特性として、
最大遅延時間と、処理ステージサイクル時間とを抽出す
るものであり、両者の差であるサイクル・遅延時間差分
値を分類処理に用いるものである。本実施の形態2にお
いては後述する(図16)のように、この差について大
・中・小の3分類を行うものであり、これによりフリッ
プフロップを削除対象とするか否かを、又、調整処理の
要・不要とその調整方法とを決定する。
As described above, the magnitude of the difference between the delay time and the processing stage cycle time poses a problem in the wave pipelining process.・ It is a factor to determine that it is unnecessary. Therefore, in the second embodiment, as described above (step 906 in FIG. 9),
The maximum delay time and the processing stage cycle time are extracted, and the difference between the two is used in the classification process. In the second embodiment, as will be described later (FIG. 16), the difference is classified into three categories, large, medium, and small. The necessity / unnecessity of the adjustment process and the adjustment method are determined.

【0095】図13に示す回路におけるウェーブパイプ
ライン化に伴う他の問題点について、図15を用いて説
明する。同図は、図13の回路において図14の場合と
同様の(図の比率は異なる)タイミングにより信号を伝
送する場合のタイミングチャート図であり、図13に示
すフリップフロップ群1330に含まれるフリップフロ
ップ1332に着目し、当該フリップフロップに対する
異なる経路からの入力について示すものである。同図
(a) に示すクロック信号と、(b) に示すフリップフロッ
プ群1310からの出力については、図14と同様であ
る。図15の(c)から(f) は、いずれもフリップフロッ
プ1332に入力される信号であり、組み合わせ論理回
路1320中の異なる経路から入力されるものである。
Another problem associated with the wave pipelining in the circuit shown in FIG. 13 will be described with reference to FIG. 13 is a timing chart of a case where signals are transmitted at the same timing as in FIG. 14 (different ratios in the drawing) in the circuit of FIG. 13, and the flip-flop included in the flip-flop group 1330 shown in FIG. Focusing on 1332, this shows input from different paths to the flip-flop. Same figure
The clock signal shown in (a) and the output from the flip-flop group 1310 shown in (b) are the same as in FIG. 15 (c) to (f) are signals input to the flip-flop 1332, which are input from different paths in the combinational logic circuit 1320.

【0096】図15(c) は、図13において、フリップ
フロップ1312〜論理ゲート1311〜論理ゲート1
325〜フリップフロップ1332という経路P1を経
由する場合であり、遅延時間はT2である。この経路P
1はフリップフロップ1332に至る最も遅延時間の大
きな経路であり、この場合の遅延時間が図14(d) に示
したフリップフロップ1332入力についての最大の遅
延時間T2となる。
FIG. 15 (c) is a circuit diagram of FIG.
This is a case where the signal passes through a path P1 from 325 to the flip-flop 1332, and the delay time is T2. This route P
Reference numeral 1 denotes a path having the largest delay time to the flip-flop 1332, and in this case, the delay time is the maximum delay time T2 for the input of the flip-flop 1332 shown in FIG.

【0097】図15(d) は、フリップフロップ1313
〜論理ゲート1321〜論理ゲート1325〜フリップ
フロップ1332という経路P2を経由する場合であり
遅延時間はT5である。同図(e) は、フリップフロップ
1312〜論理ゲート1322〜論理ゲート1325〜
フリップフロップ1332という経路P3を経由する場
合であり遅延時間はT6である。同図(f) は、フリップ
フロップ1314〜論理ゲート1322〜論理ゲート1
325〜フリップフロップ1332という経路P4を経
由する場合であり遅延時間はT7である。これらの遅延
時間T5〜T7は、図示するように、いずれも最大の遅
延時間T2より小さく、互いに大きさが異なるものとな
り、T6が最も遅延時間が小さなものとなっている。
FIG. 15D shows the state of the flip-flop 1313.
Through the path P2 from the logic gate 1321 to the logic gate 1325 to the flip-flop 1332, and the delay time is T5. FIG. 14E shows a flip-flop 1312, a logic gate 1322, and a logic gate 1325.
This is the case where the signal passes through the path P3 of the flip-flop 1332, and the delay time is T6. FIG. 11F shows the flip-flop 1314 to the logic gate 1322 to the logic gate 1
The delay time is T7 through a route P4 from 325 to the flip-flop 1332. As shown, these delay times T5 to T7 are all smaller than the maximum delay time T2, and have different sizes from each other, and T6 has the shortest delay time.

【0098】ここで、図13に示す回路において、単純
にフリップフロップ1332を削除し、当該フリップフ
ロップの入出力を短絡するウェーブパイプライン処理を
行うとするならば、図14(f) に示すデータ1420の
一部に相当する信号は、図15に示すT8の期間しか発
生しないこととなる。ここでT8は、組み合わせ論理回
路1320に処理すべきデータ(データ1410)が与
えられてから時間T2時間経過後に始まり、後続のデー
タ(データ1411)が与えられてから時間T6経過後
に終わる期間であり、処理ステージサイクル時間より短
いものとなっている。従って、単純な削除と直結とを行
うのでは、図13の回路においてフリップフロップ13
32の出力を用いる後段の処理、すなわち後段のパイプ
ラインステージにおける処理タイミングを乱すこととな
る。
In the circuit shown in FIG. 13, if the flip-flop 1332 is simply deleted and a wave pipeline process for short-circuiting the input and output of the flip-flop is performed, the data shown in FIG. A signal corresponding to a part of 1420 occurs only in the period of T8 shown in FIG. Here, T8 is a period that starts after the lapse of the time T2 after the data to be processed (data 1410) is provided to the combinational logic circuit 1320 and ends after the lapse of the time T6 after the subsequent data (data 1411) is provided. , The processing stage is shorter than the cycle time. Therefore, if simple deletion and direct connection are performed, the flip-flop 13 in the circuit of FIG.
The subsequent processing using the output of 32, that is, the processing timing in the subsequent pipeline stage is disturbed.

【0099】このような乱れを回避するために、図15
に示す遅延時間T5〜T7を、より長い遅延時間である
遅延時間T2に揃えるという調整処理が考えられる。最
大の遅延時間T2の大きさにより、図示するT8が十分
処理ステージサイクル時間に近いものとなる場合には、
このように調整することのみで、後段の処理に対する影
響を回避し得るものとなる。また、T2の大きさによっ
ては、さらに前述のように遅延時間T2をT1に揃える
よう調整することで、期間T8の長さを処理ステージサ
イクル時間に等しいものとして、後段の処理タイミング
を乱すことたないようにできる。
To avoid such a disturbance, FIG.
The adjustment process of adjusting the delay times T5 to T7 shown in (1) to the longer delay time T2 is considered. If the maximum delay time T2 makes the illustrated T8 sufficiently close to the processing stage cycle time,
The effect on the subsequent processing can be avoided only by adjusting in this way. Further, depending on the size of T2, by further adjusting the delay time T2 to be equal to T1, as described above, the length of the period T8 is made equal to the processing stage cycle time, and the subsequent processing timing is disturbed. You can not.

【0100】以上のように、あるフリップフロップにつ
き、当該フリップフロップに入力される信号の遅延時間
のばらつきは、ウェーブパイプライン化処理において問
題となるものであり、フリップフロップ削除の可否と、
調整処理の要・不要とを決定する要因となる。従って、
本実施の形態2においては前述のように(図9のステッ
プ906)時間特性として、遅延時間差分値(最大遅延
時間と最小遅延時間との差分値)を抽出し、分類処理に
用いるものである。本実施の形態2においては後述する
(図16)のように、この差について大・中・小の3分
類を行うものであり、これによりフリップフロップを削
除対象とするか否かを、又調整処理の要・不要とその調
整方法とを決定する。
As described above, for a certain flip-flop, the variation in the delay time of the signal input to the flip-flop is a problem in the wave pipeline processing.
This is a factor that determines whether adjustment processing is necessary or not. Therefore,
In the second embodiment, as described above (step 906 in FIG. 9), a delay time difference value (difference value between the maximum delay time and the minimum delay time) is extracted as the time characteristic and used for the classification process. . In the second embodiment, as will be described later (FIG. 16), the difference is classified into three types, large, medium, and small, and whether or not the flip-flop is to be deleted is adjusted. The necessity / unnecessity of the processing and the adjustment method are determined.

【0101】図16は本実施の形態2における分類処理
と、レベル化とを説明するための図である。図示するよ
うに、本実施の形態2では、サイクル・遅延時間差分値
と、遅延時間差分値とにつき、それぞれ大・中・小と分
類し、この両者を組み合わせた分類を行うものである。
そして、図示するように、組み合わせにより得られた分
類ごとにレベルが定められる。
FIG. 16 is a diagram for explaining the classification processing and leveling according to the second embodiment. As shown in the figure, in the second embodiment, the cycle / delay time difference value and the delay time difference value are classified into large, medium, and small, respectively, and the classification is performed by combining the two.
Then, as shown, a level is determined for each classification obtained by the combination.

【0102】サイクル・遅延時間差分値と、遅延時間差
分値とが双方「小」に分類される場合にはレベル1とす
る。この場合には、図14(c) (図13のフリップフロ
ップ1831)に示すように最大遅延時間T1が、処理
ステージサイクル時間Tstageに近い値となるものであ
り、また、図15に示すような異なる経路からの入力ご
との遅延時間についてもばらつきが少ないものである。
このようなフリップフロップは単純な削除と短絡を行っ
ても、後段の処理に与える影響は少ない。従って、図1
6に示すように本実施の形態2では、このレベルについ
ては調整処理を行うことなくウェーブパイプライン化を
行うものとしている。
When both the cycle / delay time difference value and the delay time difference value are classified as "small", the level is set to level 1. In this case, the maximum delay time T1 becomes a value close to the processing stage cycle time Tstage as shown in FIG. 14C (the flip-flop 1831 in FIG. 13), and as shown in FIG. The delay time for each input from different paths also has little variation.
Even if such a flip-flop is simply deleted and short-circuited, it has little effect on subsequent processing. Therefore, FIG.
As shown in FIG. 6, in the second embodiment, wave pipelining is performed on this level without performing adjustment processing.

【0103】サイクル・遅延時間差分値が「中」であ
り、遅延時間差分値が「小」である場合は、レベル2と
する。この場合は、図14(d) (図13のフリップフロ
ップ1832)に示すように、最大遅延時間が処理ステ
ージサイクル時間とある程度差があり、図15に示すよ
うな入力の遅延時間のばらつきは小さなものである。本
実施の形態2では、このレベルの場合には、図14の例
でいえば、T2等をT1に揃えるような調整処理を伴う
ウェーブパイプライン化を行う。これを調整タイプ1の
ウェーブパイプライン化処理とする。
When the cycle / delay time difference value is “medium” and the delay time difference value is “small”, the level is set to level 2. In this case, as shown in FIG. 14D (flip-flop 1832 in FIG. 13), the maximum delay time is somewhat different from the processing stage cycle time, and the variation in input delay time as shown in FIG. 15 is small. Things. In the second embodiment, in the case of this level, in the example of FIG. 14, a wave pipeline including an adjustment process for making T2 and the like equal to T1 is performed. This is referred to as adjustment type 1 wave pipeline processing.

【0104】サイクル・遅延時間差分値が「小」であ
り、遅延時間差分値が「中」である場合は、レベル3と
する。この場合は、図15に示すような入力の遅延時間
のばらつきがある程度あり、図14(c) (図13のフリ
ップフロップ1831)に示すように最大遅延時間T1
が、処理ステージサイクル時間Tstageに近い値となるも
のである。本実施の形態2では、このレベルの場合に
は、図15の例でいえば、T5等をT2に揃えるような
調整処理を行う。これを調整タイプ2のウェーブパイプ
ライン化処理とする。
When the cycle / delay time difference value is “small” and the delay time difference value is “medium”, the level is set to level 3. In this case, there is some variation in the input delay time as shown in FIG. 15, and as shown in FIG. 14 (c) (the flip-flop 1831 in FIG.
Is a value close to the processing stage cycle time Tstage. In the second embodiment, in the case of this level, in the example of FIG. 15, an adjustment process is performed such that T5 and the like are aligned with T2. This is referred to as adjustment type 2 wave pipeline processing.

【0105】調整タイプ1、および2の調整処理として
は、図17、および図18に示すような調整回路の挿入
を行うものとすることができる。図17は、レベル2の
場合における調整タイプ1の例を示す図である。同図と
図13とを比較すると、この例においては、組み合わせ
論理回路1720からフリップフロップ1732(ウェ
ーブパイプライン化における削除の対象)に至る経路に
調整回路1750を追加したものとなっている。レベル
2の場合、対象となるフリップフロップ1732に対す
る入力については、組み合わせ論理回路1720内にお
ける経路に依存したばらつきは少ないものであり、調整
を要しないものである。これに対して、フリップフロッ
プ1732への入力の遅延時間と、処理ステージサイク
ル時間との差は調整を要する程度のものであるので、調
整回路1750により、当該フリップフロップ1732
を削除することによる後段の処理への影響を回避するも
のである。
As the adjustment processing of the adjustment types 1 and 2, an adjustment circuit as shown in FIGS. 17 and 18 can be inserted. FIG. 17 is a diagram illustrating an example of the adjustment type 1 in the case of the level 2. Comparing FIG. 13 with FIG. 13, in this example, an adjustment circuit 1750 is added to the path from the combinational logic circuit 1720 to the flip-flop 1732 (the object to be deleted in the wave pipelining). In the case of level 2, the input to the target flip-flop 1732 has little variation depending on the path in the combinational logic circuit 1720 and does not require adjustment. On the other hand, the difference between the delay time of the input to the flip-flop 1732 and the processing stage cycle time is such that adjustment is required.
To avoid affecting the subsequent processing.

【0106】図18は、レベル3の場合における調整タ
イプ2の例を示す図である。同図と図13とを比較する
と、この例においては、組み合わせ論理回路1720内
部において、論理ゲート1821、1822、および1
825との前段に調整回路1851、1852、および
1853を追加したものとなっている。これにより、論
理ゲート1821、または1822から論理ゲート18
25を経由してフリップフロップ1732(ウェーブパ
イプライン化における削除の対象)に至る経路における
遅延時間を調整する。レベル3の場合、対象となるフリ
ップフロップ1732に対する入力について、組み合わ
せ論理回路1820内における経路に依存したばらつき
がある程度あり、調整を要する。これに対して、フリッ
プフロップ1732への入力の遅延時間と、処理ステー
ジサイクル時間との差は調整を要しない程度のものであ
る。従って、組み合わせ論理回路1820内部における
調整回路1751〜1753により、当該フリップフロ
ップ1832を削除することによる後段の処理への影響
を回避するものである。
FIG. 18 is a diagram showing an example of the adjustment type 2 in the case of level 3. Comparing FIG. 13 with FIG. 13, in this example, the logic gates 1821, 1822, and 1 in the combinational logic circuit 1720
Adjustment circuits 1851, 1852, and 1853 are added to the stage preceding 825. This allows the logic gate 1821 or 1822 to switch from the logic gate 18
25, the delay time in the path leading to the flip-flop 1732 (to be deleted in the wave pipeline) is adjusted. In the case of level 3, the input to the target flip-flop 1732 has some variation depending on the path in the combinational logic circuit 1820 and needs to be adjusted. On the other hand, the difference between the delay time of the input to the flip-flop 1732 and the processing stage cycle time is such that no adjustment is required. Therefore, the adjustment circuits 1751 to 1753 inside the combinational logic circuit 1820 avoid the influence on the subsequent processing due to the deletion of the flip-flop 1832.

【0107】図16に戻り、サイクル・遅延時間差分値
か、遅延時間差分値のいずれか一方、又は双方が「大」
に分類される場合にはレベル4となる。また、双方が
「中」に分類される場合にもレベル4となる。このよう
な場合には、もしウェーブパイプライン化の対象とする
ならば、前述のような調整処理を要するものとなり、図
17や図18のような調整回路を多数挿入せねばならな
いものとなるために、フリップフロップ削除によるウェ
ーブパイプライン化の効果が大きく損なわれるものとな
る。従って、本実施の形態2では、レベル4に該当する
フリップフロップに対しては、ウェーブパイプライン化
の対象としない。
Referring back to FIG. 16, one or both of the cycle / delay time difference value and the delay time difference value are “large”.
If it is classified as, it will be level 4. Also, when both are classified as "medium", the level is level 4. In such a case, if the target is to be made into a wave pipeline, the above-described adjustment processing is required, and a large number of adjustment circuits as shown in FIGS. 17 and 18 must be inserted. In addition, the effect of wave pipelining by removing flip-flops is greatly impaired. Therefore, in the second embodiment, the flip-flop corresponding to level 4 is not subjected to the wave pipelining.

【0108】このように本実施の形態2の集積回路設計
方法によれば、評価処理(図9のステップ905〜90
8)を行うことで、ウェーブパイプライン化の対象とす
るフリップフロップを決定するものであり、評価処理に
おいては、図16に示すように各フリップフロップにつ
いての時間的性に対応して分類とレベル化とを行うこと
で、適切に調整を行うことが可能となる。また、ウェー
ブパイプライン化処理(図9のステップ909、図1
0)においては、ウェーブパイプライン化の対象となる
フリップフロップごとに入出力配線長に基づいて、バッ
ファ・インバータ置換処理(図10のステップ150
4)を行うことで、分類、およびレベル化処理を補完し
て、論理の整合性を確保して、適切なウェーブパイプラ
イン化を行い得るものとすることが可能となる。
As described above, according to the integrated circuit design method of the second embodiment, the evaluation processing (steps 905 to 90 in FIG. 9) is performed.
By performing 8), the flip-flop to be subjected to the wave pipeline is determined. In the evaluation process, as shown in FIG. 16, the classification and the level corresponding to the temporality of each flip-flop are performed. By performing the conversion, it is possible to perform appropriate adjustment. In addition, the wave pipeline processing (step 909 in FIG. 9, FIG.
0), the buffer / inverter replacement process (step 150 in FIG. 10) is performed based on the input / output wiring length for each flip-flop to be wave pipelined.
By performing 4), it is possible to complement the classification and leveling processing, secure the consistency of logic, and perform appropriate wave pipelining.

【0109】実施の形態3.本発明の実施の形態3によ
る集積回路設計方法は、ウェーブパイプライン化に伴
い、ライブラリ値を用いた最適化処理(調整処理)を行
うものである。本実施の形態3においても、実施の形態
2と同様に図9に示す処理手順に従って集積回路の設計
を行うものであるが、同図のステップ909の処理が実
施の形態2とは異なるものとなる。実施の形態2におい
ては、ウェーブパイプライン化ステップ(図9のステッ
プ909)において図10の処理手順を実行するもので
あったが、本実施の形態3では図19のフローチャート
に示す処理手順を実行するものである。以下に、本実施
の形態3によるウェーブパイプライン化処理の処理手順
を、図19のフローに従って説明する。
Embodiment 3 The integrated circuit design method according to the third embodiment of the present invention performs an optimization process (adjustment process) using a library value along with the wave pipeline. Also in the third embodiment, an integrated circuit is designed in accordance with the processing procedure shown in FIG. 9 as in the second embodiment. Become. In the second embodiment, the processing procedure shown in FIG. 10 is executed in the wave pipelining step (step 909 in FIG. 9). In the third embodiment, the processing procedure shown in the flowchart in FIG. Is what you do. Hereinafter, the processing procedure of the wave pipeline processing according to the third embodiment will be described with reference to the flow of FIG.

【0110】ステップ1901における対象フリップフ
ロップ抽出、ステップ1902における入出力配線長和
抽出、およびステップ1903における配線長所定長入
力は、図10のフローのステップ1001〜1003と
同様に実行される。実施の形態2においては、この後に
バッファ・インバータ置換処理を行うものであるが、本
実施の形態3では直ちに該処理を行わない。
The extraction of the target flip-flop in step 1901, the extraction of the sum of the input / output wiring length in step 1902, and the input of the predetermined wiring length in step 1903 are executed in the same manner as steps 1001 to 1003 in the flow of FIG. In the second embodiment, the buffer / inverter replacement processing is performed thereafter, but in the third embodiment, the processing is not immediately performed.

【0111】後続のステップ1904においては、仮ラ
イブラリ変換処理を行う。ここでライブラリ値とは、論
理合成において用いられるセルライブラリと呼ばれるデ
ータベース(ライブラリ)において。各フリップフロッ
プの特性値として設定されているセットアップ時間、ホ
ールド時間、遅延時間等である。セットアップ時間、ホ
ールド時間等については後述する。本実施の形態3にお
いても、実施の形態2と同様の評価処理(図9のステッ
プ905〜908)が行われるものであるので、ウェー
ブパイプライン化処理ステップ(同図ステップ909)
においては、各フリップフロップに対して、分類とレベ
ル化がされたものとなっている。そこで、このステップ
1904においては、ウェーブパイプライン化処理の対
象となるフリップフロップ(ステップ1901で抽出)
につき、当該決定されたレベル(分類)に対応したライ
ブラリ値を有する仮のフリップフロップに置換するもの
である。この、ステップ1904の処理においては、単
にフリップフロップを置換するのみとすることも可能で
あるが、ここでは、当該置換に伴い、仮フリップフロッ
プの入力端子に対する遅延回路挿入をともなうものとす
る。
In the following step 1904, a temporary library conversion process is performed. Here, the library value is a database (library) called a cell library used in logic synthesis. The setup time, the hold time, the delay time, and the like set as the characteristic value of each flip-flop. The setup time, hold time, and the like will be described later. Also in the third embodiment, since the same evaluation processing as in the second embodiment (steps 905 to 908 in FIG. 9) is performed, a wave pipeline processing step (step 909 in FIG. 9) is performed.
In, each flip-flop is classified and leveled. Therefore, in this step 1904, the flip-flop to be subjected to the wave pipeline processing (extracted in step 1901)
Is replaced with a temporary flip-flop having a library value corresponding to the determined level (classification). In the process of step 1904, it is possible to simply replace the flip-flop. However, here, the replacement involves the insertion of a delay circuit to the input terminal of the temporary flip-flop.

【0112】続くステップ1905の配置配線情報入力
ステップにおいては、ウェーブパイプライン処理前のレ
イアウトより、セル配置や、配線の容量を抽出し、当該
抽出した情報を読み込む。ステップ1906の遅延時間
調整ステップでは、ステップ1904において置換され
た仮のフリップフロップに至る経路につき、それぞれの
仮のライブラリ値に基づく制約に対応させて遅延時間を
調整する。この調整処理は、自動論理合成ツール等を用
いて行うことが可能である。
In the subsequent placement and wiring information input step of step 1905, cell layout and wiring capacity are extracted from the layout before the wave pipeline processing, and the extracted information is read. In the delay time adjustment step of step 1906, the delay time of the path to the temporary flip-flop replaced in step 1904 is adjusted in accordance with the constraint based on each temporary library value. This adjustment process can be performed using an automatic logic synthesis tool or the like.

【0113】ステップ1907の面積・消費電力増加抽
出ステップにおいては、ステップ1906の調整処理に
おける回路面積の増加や消費電力の増加分を抽出する。
そして、後続のステップ1908の判定ステップにおい
ては、ステップ1907で取得した面積・消費電力の増
加分と、フリップフロップ削除に伴う低減分とが比較さ
れ、増加分が上回る場合は当該フリップフロップに対す
る削除を行わないものとする。従って、ステップ190
8における判定が「処理不要」を示す場合には、後続の
処理を実行しないことによって、実質的にステップ19
04におけるフリップフロップの置換と、ステップ19
05における調整処理との結果を元に戻すこととして、
ウェーブパイプライン化処理を終了する。
In the area / power consumption increase extraction step of step 1907, an increase in circuit area and an increase in power consumption in the adjustment processing in step 1906 are extracted.
Then, in the determination step of the subsequent step 1908, the increase in the area / power consumption obtained in step 1907 is compared with the decrease due to the elimination of the flip-flop. Shall not be performed. Therefore, step 190
If the determination in step 8 indicates "processing unnecessary", the subsequent processing is not executed, thereby substantially eliminating step 19.
Replacement of flip-flop in step 04 and step 19
To undo the result of the adjustment process in 05,
The wave pipelining process ends.

【0114】ステップ1908における判定が「処理
要」を示す場合、すなわち、フリップフロップ削除によ
る低減分が上回る場合には、図19のフローの後続のス
テップが実行される。続くステップ1909のバッファ
・インバータ置換処理は、図10のフローのステップ1
004と同様に実行されるので、本実施の形態3におい
ても、実施の形態2と同様に、入出力配線長の和が所定
値より大きい場合のみバッファ・インバータ回路を用い
た置換処理が行われるものとなる。ステップ1910の
対象フリップフロップ削除と、ステップ1911のネッ
トリスト修正とは、図10のフローのステップ100
6、および1007と同様に実行され、本実施の形態3
におけるウェーブパイプライン化処理は終了する。
If the determination in step 1908 indicates "processing required", that is, if the reduction due to the flip-flop deletion exceeds, the subsequent step of the flow in FIG. 19 is executed. Subsequent buffer / inverter replacement processing in step 1909 is performed in step 1 of the flow in FIG.
Therefore, in the third embodiment, the replacement process using the buffer / inverter circuit is performed only when the sum of the input / output wiring lengths is larger than a predetermined value, as in the second embodiment. It will be. The deletion of the target flip-flop in step 1910 and the modification of the netlist in step 1911 correspond to step 100 in FIG.
6 and 1007, and the third embodiment is executed.
Is completed.

【0115】ここで、ステップ1904の仮ライブラリ
変換について図20、および図21を用いて説明する。
図20は、ウェーブパイプライン化の対象となる回路の
一部を示す図、図21は、図20の回路に含まれるフリ
ップフロップに入力される信号についてその遅延状態を
説明するためのタイミングチャート図である。
Here, the temporary library conversion in step 1904 will be described with reference to FIGS. 20 and 21.
FIG. 20 is a diagram showing a part of a circuit to be wave pipelined, and FIG. 21 is a timing chart for explaining a delay state of a signal input to a flip-flop included in the circuit of FIG. It is.

【0116】図20に示す回路は、パイプラインステー
ジである組み合わせ論理回路2020と、その入力側、
および出力側のフリップフロップ群2010、および2
030とを含むものである。入力側のフリップフロップ
群2010にはフリップフロップ2011〜2014
が、出力側のフリップフロップ群2030には、フリッ
プフロップ2031〜2034が含まれる。図13等と
同様に、各部分に供給されるクロック信号については省
略している。
The circuit shown in FIG. 20 has a combinational logic circuit 2020 which is a pipeline stage and its input side,
And output side flip-flop groups 2010 and 2
030. The flip-flop groups 2010 on the input side include flip-flops 2011 to 2014.
However, the flip-flop group 2030 on the output side includes flip-flops 2031 to 2034. As in FIG. 13 and the like, the clock signal supplied to each part is omitted.

【0117】図21は、図20の回路における信号の遅
延状態を示すものである。同図(a)はクロック信号であ
り、組み合わせ論理回路2020(パイプラインステ
ー)の1サイクルとなる処理ステージサイクル時間は、
図示するTstageとなっている。
FIG. 21 shows a signal delay state in the circuit of FIG. FIG. 7A shows a clock signal, and the processing stage cycle time, which is one cycle of the combinational logic circuit 2020 (pipeline stay), is as follows.
It is Tstage shown in the figure.

【0118】図20に示す出力側フリップフロップ群の
各フリップフロップ2031〜2034は、組み合わせ
論理回路2020からの出力をこのクロック信号の立ち
上がりに合わせて取り込むものとなる。
Each of the flip-flops 2031 to 2034 of the output-side flip-flop group shown in FIG. 20 takes in the output from the combinational logic circuit 2020 in synchronization with the rise of this clock signal.

【0119】図21の(b) 〜(e) は、フリップフロップ
2031〜2034に入力する信号についての遅延時間
を示すものである。前述のように各フリップフロップに
入力する信号は、経路によって遅延時間が異なるものと
なり、フリップフロップ2031については、最大の遅
延時間は同図(b) に示すTD(2031,max)となり、最小の遅
延時間はTD(2031,min)となる。フリップフロップ203
2〜2034についても同様であり、最大・最小の遅延
時間は同図(c) 〜(e) に示すものとなる。
FIGS. 21B to 21E show delay times of signals input to the flip-flops 2031 to 2034. FIG. As described above, the signal input to each flip-flop has a different delay time depending on the path. For the flip-flop 2031, the maximum delay time is TD (2031, max) shown in FIG. The delay time is TD (2031, min). Flip-flop 203
The same applies to 2 to 2034, and the maximum and minimum delay times are as shown in FIGS.

【0120】本実施の形態3では、仮ライブラリ変換に
あたり、各フリップフロップを二つの基準に従って分類
する。第一の基準は、処理ステージサイクル時間と当該
フリップフロップ入力の最大遅延時間との差が、第一の
所定値より大きいか否かであり、第二の基準は、当該フ
リップフロップ入力の最大遅延時間と最小遅延時間との
差が、第二の所定値より大きいか否かである。図21に
おいては、第一の所定値をTa、第二の所定値をTbとして
いる。そして、同図(b) 〜(e) に示す4つの場合が、第
一、および第二の基準を用いる4つの分類を示す例とな
っている。
In the third embodiment, each of the flip-flops is classified according to two criteria in the temporary library conversion. The first criterion is whether the difference between the processing stage cycle time and the maximum delay time of the flip-flop input is greater than a first predetermined value, and the second criterion is the maximum delay of the flip-flop input. Whether the difference between the time and the minimum delay time is greater than a second predetermined value. In FIG. 21, the first predetermined value is Ta, and the second predetermined value is Tb. The four cases shown in FIGS. 4B to 4E are examples showing four classifications using the first and second criteria.

【0121】同図(b) に示すフリップフロップ2031
は、第一の基準については、処理ステージサイクル時間
Tstageと当該フリップフロップ入力の最大遅延時間であ
るTD(2031,max)との差が第一の所定値Taよりも小さく、
第二の基準については、当該フリップフロップ入力の最
大遅延時間TD(2031,max)と最小遅延時間TD(2031,min)と
の差Ts2031が、第二の所定値Tbより小さいものとなって
いる。このような場合には、当該フリップフロップを単
純に削除するのみでも、後段の処理に与える影響が小さ
いものとなるので、本実施の形態3においては、図19
のステップ1904の仮ライブラリ変換において置換を
行わず、ステップ1906の調整処理を実質的に行わな
いものとする。
The flip-flop 2031 shown in FIG.
For the first criterion, the processing stage cycle time
The difference between Tstage and TD (2031, max), which is the maximum delay time of the flip-flop input, is smaller than a first predetermined value Ta,
Regarding the second criterion, the difference Ts2031 between the maximum delay time TD (2031, max) and the minimum delay time TD (2031, min) of the flip-flop input is smaller than a second predetermined value Tb. . In such a case, even if the flip-flop is simply deleted, the influence on the subsequent processing is small. Therefore, in the third embodiment, FIG.
No replacement is performed in the temporary library conversion in step 1904, and the adjustment processing in step 1906 is not substantially performed.

【0122】同図(c) に示すフリップフロップ2032
は、第一の基準については、処理ステージサイクル時間
Tstageと当該フリップフロップ入力の最大遅延時間であ
るTD(2032,max)との差が第一の所定値Taよりも小さく、
第二の基準については、当該フリップフロップ入力の最
大遅延時間TD(2032,max)と最小遅延時間TD(2032,min)と
の差Ts2032が、第二の所定値Tbより大きいものとなって
いる。このような場合には、後段の処理に影響を与える
ものとなるので、図19のステップ1904において、
仮のフリップフロップへの置換を行う。ここで置換に用
いる仮のフリップフロップは、その特性の一つであるホ
ールド時間が、処理ステージサイクル時間Tstageから第
二の所定値Tbを減じて得られる時間Thとなるものであ
る。これにより、図19のステップ1906で調整処理
を行うことで、図21(c) に示すTs2032に相当する時間
がTbより小さくなるようにするものとして、後段の処理
に対しての影響を回避する。
The flip-flop 2032 shown in FIG.
For the first criterion, the processing stage cycle time
The difference between Tstage and TD (2032, max), which is the maximum delay time of the flip-flop input, is smaller than a first predetermined value Ta,
Regarding the second criterion, the difference Ts2032 between the maximum delay time TD (2032, max) and the minimum delay time TD (2032, min) of the flip-flop input is larger than the second predetermined value Tb. . In such a case, the subsequent processing is affected.
Replace with a temporary flip-flop. Here, the temporary flip-flop used for the replacement has a hold time, which is one of its characteristics, a time Th obtained by subtracting the second predetermined value Tb from the processing stage cycle time Tstage. As a result, by performing the adjustment processing in step 1906 of FIG. 19, the time corresponding to Ts2032 shown in FIG. 21C is set to be smaller than Tb, thereby avoiding the influence on the subsequent processing. .

【0123】同図(d) に示すフリップフロップ2033
は、第一の基準については、処理ステージサイクル時間
Tstageと当該フリップフロップ入力の最大遅延時間であ
るTD(2033,max)との差Td2033が第一の所定値Taよりも大
きく、第二の基準については、当該フリップフロップ入
力の最大遅延時間TD(2033,max)と最小遅延時間TD(2033,
min)との差Ts2033が、第二の所定値Tbより小さいものと
なっている。前述のように、ここでは図19のステップ
1904の置換処理において、遅延回路挿入をも行うも
のとしているので、このような場合には、当該時間差Td
2033だけの遅延を生じさせるような遅延回路をフリップ
フロップ2033の前段に挿入する。これにより、後段
の処理への影響を回避し、図19のステップ1904の
仮ライブラリ変換において置換を行わず、ステップ19
06の調整処理を実質的に行わないものとする。
The flip-flop 2033 shown in FIG.
For the first criterion, the processing stage cycle time
The difference Td2033 between Tstage and the maximum delay time TD (2033, max) of the flip-flop input is larger than the first predetermined value Ta, and for the second reference, the maximum delay time TD ( 2033, max) and the minimum delay time TD (2033,
min) is smaller than the second predetermined value Tb. As described above, in the replacement process in step 1904 in FIG. 19, a delay circuit is also inserted. In such a case, the time difference Td
A delay circuit that causes a delay of 2033 is inserted before the flip-flop 2033. This avoids the influence on the subsequent processing, and does not perform the replacement in the temporary library conversion in step 1904 in FIG.
06 is not substantially performed.

【0124】同図(e) に示すフリップフロップ2034
は、第一の基準については、処理ステージサイクル時間
Tstageと当該フリップフロップ入力の最大遅延時間であ
るTD(2034,max)との差Td2034が第一の所定値Taよりも大
きく、第二の基準については、当該フリップフロップ入
力の最大遅延時間TD(2034,max)と最小遅延時間TD(2034,
min)との差Ts2034が、第二の所定値Tbより大きいものと
なっている。このような場合には、当該時間差Td2034だ
けの遅延を生じさせるような遅延回路をフリップフロッ
プ2034の前段に挿入するとともに、仮フリップフロ
ップへの置換を行う。ここで置換に用いる仮のフリップ
フロップは、その特性の一つであるホールド時間が、処
理ステージサイクル時間Tstageから第二の所定値Tbを減
じて得られる時間Thとなるものである。これにより、フ
リップフロップ2032、および2033の場合と同様
に後段の処理への影響を回避する。
The flip-flop 2034 shown in FIG.
For the first criterion, the processing stage cycle time
The difference Td2034 between Tstage and the maximum delay time TD (2034, max) of the flip-flop input is larger than the first predetermined value Ta, and for the second reference, the maximum delay time TD ( 2034, max) and the minimum delay time TD (2034, max)
min) is larger than the second predetermined value Tb. In such a case, a delay circuit that causes a delay corresponding to the time difference Td2034 is inserted before the flip-flop 2034, and is replaced with a temporary flip-flop. Here, the temporary flip-flop used for the replacement has a hold time, which is one of its characteristics, a time Th obtained by subtracting the second predetermined value Tb from the processing stage cycle time Tstage. As a result, similarly to the case of the flip-flops 2032 and 2033, the influence on the subsequent processing is avoided.

【0125】ここで、ライブラリ値の変更について、図
22、および図23を用いて説明する。図22は、ウェ
ーブパイプライン化処理の対象となる回路の一部を示す
図、図23は、図22の回路において出力側フリップフ
ロップの状態を示すタイミングチャート図である。
Here, the change of the library value will be described with reference to FIGS. 22 and 23. FIG. 22 is a diagram showing a part of a circuit to be subjected to the wave pipeline processing, and FIG. 23 is a timing chart showing a state of the output side flip-flop in the circuit of FIG.

【0126】図22に示す回路は、パイプラインステー
ジである組み合わせ論理回路2220と、その入力側フ
リップフロップ2211、および2212、そして出力
側のフリップフロップ2231を含むものであり、それ
ぞれに対して、クロック信号2251が供給されてい
る。
The circuit shown in FIG. 22 includes a combinational logic circuit 2220 which is a pipeline stage, its input side flip-flops 2211 and 2212, and its output side flip-flop 2231. A signal 2251 is provided.

【0127】入力側フリップフロップ2211からは信
号Aが、入力側フリップフロップ2212からは信号B
が組み合わせ論理回路2220に入力され、組み合わせ
論理回路は、入力信号AとBとを変数とする組み合わせ
論理に従って、出力信号Cを生成し、これを出力側フリ
ップフロップ2231に出力する。出力側フリップフロ
ップ2231は、組み合わせ論理回路2220からの出
力を、供給されるクロック信号2251の立ち上がりに
合わせて取り込む。
The signal A is input from the input side flip-flop 2211 and the signal B is output from the input side flip-flop 2212.
Is input to the combinational logic circuit 2220, which generates an output signal C according to the combinational logic using the input signals A and B as variables and outputs this to the output-side flip-flop 2231. The output side flip-flop 2231 captures the output from the combinational logic circuit 2220 in accordance with the rising of the supplied clock signal 2251.

【0128】図22のような回路のRTL記述に対し
て、論理合成を行う場合について考える。前述のよう
に、一般に論理合成においては、ライブラリ(セルライ
ブラリと呼ばれるデータベース)を用いるものである。
ライブラリを用いる論理合成においては、まず、図22
のような構成のRTL記述から、図示する各フリップフ
ロップに相当する部分と、組み合わせ論理回路に相当す
る部分とを抽出し、分離する。そして、分離した各フリ
ップフロップ相当部分については、ライブラリ内のフリ
ップフロップセルに割り付け、組み合わせ論理回路相当
部分については、ライブラリ内の論理回路セル(例えば
NAND回路セルやNOR回路セル等)に置換する。
Consider a case where logic synthesis is performed on an RTL description of a circuit as shown in FIG. As described above, a library (database called a cell library) is generally used in logic synthesis.
In logic synthesis using a library, first, FIG.
A portion corresponding to each flip-flop illustrated and a portion corresponding to a combinational logic circuit are extracted and separated from the RTL description having the above configuration. Then, each separated flip-flop equivalent portion is assigned to a flip-flop cell in the library, and the combinational logic circuit equivalent portion is replaced with a logic circuit cell (for example, a NAND circuit cell or a NOR circuit cell) in the library.

【0129】このような論理構成が完了したならば、各
セルについて、ライブラリより遅延情報を抽出し、タイ
ミング制約と呼ばれる制約条件を満足するか否かを調
べ、満足しない場合には、セルの交換や論理の等価変換
等を行い、タイミング制約を満足するように変形処理を
行う。制約条件が満足されたならば、構成された論理回
路についてネットリストを出力する。必要に応じて、ネ
ットリスト出力の前に、面積を最小化するための処理等
を実行する場合もある。また、ライブラリよりの遅延情
報抽出の際には、仮配線容量モデルを利用して負荷容量
を推定し、遅延時間における負荷容量依存成分を算出す
ることが行われる。
When such a logical configuration is completed, delay information is extracted from each library for each cell, and it is checked whether or not a constraint called a timing constraint is satisfied. Or equivalent conversion of logic or the like, and performs a deformation process so as to satisfy the timing constraint. If the constraints are satisfied, a netlist is output for the configured logic circuit. If necessary, processing for minimizing the area may be executed before outputting the netlist. In addition, when delay information is extracted from the library, the load capacity is estimated using the temporary wiring capacity model, and the load capacity dependent component in the delay time is calculated.

【0130】図23は、合成後の動作状態を示すもので
ある。図22において、組み合わせ論理回路2220
は、入力側フリップフロップ2211、および2212
から入力した信号A、およびBに対して演算処理を実行
する。この際に、組み合わせ論理回路2220を構成す
る論理回路セル等における遅延に起因して、ある程度の
データ未確定期間が生じ、組み合わせ論理回路2220
内の最大の遅延時間を生じる経路(クリティカルパス)
に相当する、クリティカルパス時間が経過したならば、
組み合わせ論理回路2220の出力するデータは確定す
る。
FIG. 23 shows an operation state after the combination. In FIG. 22, a combinational logic circuit 2220
Are input side flip-flops 2211 and 2212
The arithmetic processing is performed on the signals A and B input from the. At this time, due to a delay in a logic circuit cell or the like constituting the combinational logic circuit 2220, a certain data indefinite period occurs, and the combinational logic circuit 2220
Path that produces the largest delay time in the network (critical path)
If the critical path time elapses,
The data output from the combinational logic circuit 2220 is determined.

【0131】出力側フリップフロップ2231では、ク
ロック信号2251の立ち上がりに合わせて組み合わせ
論理回路2220の出力するデータを取り込み、保持す
るが、一般にフリップフロップにおいては、クロック信
号立ち上がりの前後に、セットアップ時間とホールド時
間と呼ばれるデータ確定期間を要するものである。この
セットアップ時間とホールド時間は、フリップフロップ
の時間特性を示すものであり、図23においては、セッ
トアップ時間Tsetupとホールド時間Thold として図示す
る期間となっている。
The output-side flip-flop 2231 captures and holds the data output from the combinational logic circuit 2220 in accordance with the rise of the clock signal 2251. Generally, the flip-flop generally has a setup time and a hold time before and after the rise of the clock signal. This requires a data confirmation period called time. The set-up time and the hold time indicate the time characteristic of the flip-flop, and in FIG. 23, the set-up time Tsetup and the hold time Thold are periods illustrated.

【0132】これらを考慮した場合、論理合成における
タイミング制約条件は、以下に示す2つの連立不等式と
して与えられるものとなる。 入力フリップフロップ遅延時間+組み合わせ論理回路遅
延時間 +セットアップ時間 ≦ 1サイクル時間 入力フリップフロップ遅延時間+組み合わせ論理回路遅
延時間 ≧ ホールド時間 フリップフロップセルが登録されたライブラリにおいて
は、一般に当該登録された各フリップフロップセルごと
に、セットアップ時間やホールド時間の値が設定されて
いるものとなっている。すなわち、セットアップ時間や
ホールド時間等のライブラリ値が変更された場合には、
その変更によってタイミング制約条件を満足しないもの
となってしまう可能性がある。
When these are taken into consideration, the timing constraints in the logic synthesis are given as the following two simultaneous inequalities. Input flip-flop delay time + combinational logic circuit delay time + setup time ≦ 1 cycle time Input flip-flop delay time + combinational logic circuit delay time ≧ hold time In a library in which flip-flop cells are registered, generally, each registered flip-flop cell is registered. The setup time and the hold time are set for each time. That is, when library values such as setup time and hold time are changed,
The change may not satisfy the timing constraints.

【0133】従って、本実施の形態3のように仮のフリ
ップフロップへの置換を行う仮ライブラリ変換処理(図
19のステップ1904を行うと、この段階においては
タイミング制約条件を満足しないものとなる可能性が高
いものとなる。これは、後段の最適化処理において再調
整することを前提としたものである。ここで、最適化処
理とは、近年におけるLSIの微細化に伴って普及した
手法である。LSIの微細化により、レイアウト後の実
配線容量遅延シミュレーション(図9のステップ90
4)を実施した場合に、上述の仮配線容量モデルから著
しく逸脱したものとなっていることによって、論理合成
の段階では予測し得ない突発的な配線容量の増加が起こ
り得ることとなり、このような配線容量の増加によっ
て、タイミング制約条件が満足されないような場合が、
かなりの頻度で発生することとなっている。そこで、実
配線容量情報や、セルの配置情報を用いる、合成後の回
路の最適化(Location Based Optimization : LBO,In P
lace Optimization : IPO)手法が考案されることとなっ
た。この手法によれば、実配線容量情報やセルの配置情
報を読み込み、実際の配線容量を用いて、過負荷状態の
セルに対して、負荷容量に見合うドライブ能力を有する
セルへの交換を行ったり、長い配線を分割したりするこ
とにより、タイミング制約条件を満足しない部分のみを
変更するように調整するものである。
Therefore, as in the third embodiment, the provisional library conversion processing for performing the replacement with the provisional flip-flop (when the step 1904 in FIG. 19 is performed, the timing constraint condition may not be satisfied at this stage. This is based on the premise that readjustment will be performed in the subsequent optimization processing, where optimization processing is a method that has become popular with the recent miniaturization of LSIs. Due to the miniaturization of the LSI, the actual wiring capacitance delay simulation after layout (step 90 in FIG. 9)
When 4) is performed, the wiring capacity deviates significantly from the above-described temporary wiring capacity model, and a sudden increase in wiring capacity that cannot be predicted at the stage of logic synthesis may occur. In some cases, timing constraints may not be satisfied due to a large increase in wiring capacitance.
It is supposed to occur quite frequently. Therefore, optimization of a circuit after synthesis using actual wiring capacity information and cell placement information (Location Based Optimization: LBO, In P
lace Optimization (IPO) method was devised. According to this method, the actual wiring capacity information and cell arrangement information are read, and the actual wiring capacity is used to replace the overloaded cell with a cell having a driving capacity corresponding to the load capacity, or By dividing a long wiring or the like, adjustment is made so that only a portion that does not satisfy the timing constraint condition is changed.

【0134】本実施の形態3では、必要なタイミングを
仮のフリップフロップのセットアップ時間やホールド時
間として割り付け、当該仮のフリップフロップをウェー
ブパイプライン化の対象とするフリップフロップと置換
する(図19のステップ1904)ことにより、一旦タ
イミング制約条件を満足しない条件を作り出し、上記の
最適化手法による処理を行うことで、その部分のみを変
更することで適切にタイミング制約条件を満足するよう
にして、最終的にパイプライン処理に必要なタイミング
を実現し得るよう図るものである。
In the third embodiment, the necessary timing is assigned as a setup time or a hold time of the temporary flip-flop, and the temporary flip-flop is replaced with the flip-flop to be subjected to the wave pipeline (see FIG. 19). In step 1904), a condition that does not satisfy the timing constraint condition is once created, and processing is performed by the above-described optimization method. By changing only that part, the timing constraint condition is appropriately satisfied and the final condition is satisfied. The purpose is to achieve the timing necessary for the pipeline processing.

【0135】すなわち、本実施の形態3では、実施の形
態2と同様の、入出力配線長に基づいたバッファ・イン
バータ置換処理を最適化処理として実行するものであ
る。又、かかる最適化処理に先立って、最適化処理によ
る変動量(最適化変動量)として、面積増加と消費電力
増加の量を取得し、これを評価して最適化実行の可否を
決定するものである。
That is, in the third embodiment, a buffer / inverter replacement process based on the input / output wiring length is executed as an optimization process, similar to the second embodiment. Prior to such optimization processing, the amount of increase in area and increase in power consumption is acquired as the amount of variation (optimization variation) by the optimization process, and the obtained amount is evaluated to determine whether or not to execute the optimization. It is.

【0136】このように本実施の形態3の集積回路設計
方法によれば、ウェーブパイプライン化処理(図9のス
テップ909)において、仮ライブラリ変換ステップ
(図19のステップ1904)を実行して、ウェーブパ
イプライン化の対象となるフリッププロップの仮のフリ
ップフロップへの置換をするものとしたことで、実施の
形態2と同様に、評価処理によって、適切なウェーブパ
イプライン化を行い得ることに加え、回路の微細化や複
雑化によってシミュレーションに基づく十分な調整が困
難な場合にも、後段の最適化処理により、実配線容量等
の条件に適応して必要なタイミング状態を実現すること
が可能となる。
As described above, according to the integrated circuit design method of the third embodiment, in the wave pipelining process (step 909 in FIG. 9), the temporary library conversion step (step 1904 in FIG. 19) is executed. By replacing the flip-props to be subjected to the wave pipeline with temporary flip-flops, it is possible to perform appropriate wave pipeline by the evaluation processing as in the second embodiment. Even if it is difficult to make sufficient adjustments based on simulations due to the miniaturization and complexity of circuits, it is possible to realize the necessary timing state by adapting to the conditions such as the actual wiring capacity by the subsequent optimization processing. Become.

【0137】なお、本実施の形態3では図9に示す処理
手順中のウェーブパイプライン化ステップ(ステップ9
09)において、ライブラリ変換処理を行うものとした
が、図1(実施の形態1)に示す処理手順中のウェーブ
パイプライン化ステップ(ステップ106)において同
様のライブラリ変換処理を行うものとすることも可能で
ある。この場合には、図2に示すウェーブパイプライン
化の手順のステージ遅延時間調整処理(ステップ20
4)に後続して、本実施の形態3と同様にライブラリ変
換処理を行い、これに伴って、図19のステップ190
6のような調整処理を実行することとして、同様の効果
を得ることができる。
In the third embodiment, the wave pipelining step (step 9) in the processing procedure shown in FIG.
09), the library conversion processing is performed. However, the same library conversion processing may be performed in the wave pipelining step (step 106) in the processing procedure shown in FIG. 1 (Embodiment 1). It is possible. In this case, the stage delay time adjustment processing (step 20) in the procedure of the wave pipeline shown in FIG.
Subsequent to 4), library conversion processing is performed in the same manner as in the third embodiment, and accordingly, step 190 in FIG.
The same effect can be obtained by executing the adjustment processing as shown in FIG.

【0138】また、実施の形態2、および本実施の形態
3では、図16のような分類を行うため、図9のステッ
プ905において指定を読み込み、同図のステップ10
6で取得した時間特性に基づいて、ステップ907にお
いて各フリップフロップを分類するものであるが、先に
時間特性値を全て取得した後に、分類方法と処理レベル
とを読み込むものとすることも可能である。ただし、実
施の形態2に示したような処理手順に従って、先に分類
方法等を所得しておくものとするならば、この情報を用
いることで、例えば処理対象レベルにないフリップフロ
ップについての処理の一部を省略する等により、処理の
効率化を図ることが可能となる。
In the second embodiment and the third embodiment, the designation is read in step 905 in FIG. 9 to perform the classification as shown in FIG.
Although each flip-flop is classified in step 907 based on the time characteristic acquired in step 6, it is also possible to read the classification method and the processing level after first acquiring all the time characteristic values. is there. However, if it is assumed that the classification method and the like are to be obtained in advance according to the processing procedure shown in the second embodiment, this information can be used, for example, to process the flip-flop that is not at the processing target level. By omitting a part or the like, it is possible to improve the processing efficiency.

【0139】また、実施の形態2、および本実施の形態
3では、図10のステップ1003、および図19のス
テップ1903で配線長の所定値を入力し、これを用い
るものであるが、設計する回路の特定の部分等におい
て、全てのフリップフロップを削除の対象としたい場合
などには、当該ステップにおいて入力する所定値を値0
として一括削除をすることも可能である。また、かかる
場合には、ステップ1002(図10)やステップ19
02(図19)における入出力配線長和の抽出処理を省
略することとして、処理の効率化を図ることも可能であ
る。
In the second embodiment and the third embodiment, a predetermined value of the wiring length is input in step 1003 of FIG. 10 and step 1903 of FIG. 19, and this value is used. When it is desired to delete all flip-flops in a specific portion of the circuit, the predetermined value input in the step is set to a value of 0.
It is also possible to delete all at once. In such a case, step 1002 (FIG. 10) or step 19
It is also possible to improve the efficiency of the process by omitting the process of extracting the sum of the input / output wiring lengths in step 02 (FIG. 19).

【0140】[0140]

【発明の効果】請求項1の集積回路設計方法によれば、
ハードウェア記述言語によるレジスタトランスファレベ
ル記述を用いて、合成処理、配置配線処理、および実配
線容量シミュレーション処理を行うことにより、複数の
処理ステージを含むパイプライン回路を設計する集積回
路設計方法において、上記合成処理、配置配線処理、お
よび実配線容量シミュレーション処理によって生成され
た非ウェーブパイプライン化回路に対して、その構成要
素の一部の削除と、上記削除に伴う調整処理とを含むウ
ェーブパイプライン化処理を行うものとしたことで、R
TL記述を伴う一般的なASIC設計方法に従って設計
された非ウェーブパイプライン化回路に対して、論理回
路で起こり得る遅延時間の大きな差がもたらす不都合を
回避し得る調整処理を伴って、ウェーブパイプライン化
を行うので、省電力効果の大きなウェーブパイプライン
回路を容易に設計することが可能となる。
According to the integrated circuit design method of the first aspect,
An integrated circuit design method for designing a pipeline circuit including a plurality of processing stages by performing synthesis processing, placement and wiring processing, and real wiring capacity simulation processing using register transfer level description in a hardware description language, Wave pipeline processing including non-wave pipeline processing circuits generated by the synthesis processing, the placement and wiring processing, and the real wiring capacity simulation processing, including the deletion of some of the components and the adjustment processing accompanying the deletion. By performing processing, R
For a non-wave pipelined circuit designed according to a general ASIC design method with a TL description, a wave pipeline including an adjustment process that can avoid inconvenience caused by a large difference in delay time that can occur in a logic circuit. Therefore, it is possible to easily design a wave pipeline circuit having a large power saving effect.

【0141】請求項2の集積回路設計方法によれば、請
求項1の方法において、上記ウェーブパイプライン化処
理においては、指定されたデータ一時保持手段の削除を
行うものとしたことで、消費電力の大きな一時保持手段
を省く構成とし、クロック供給を抑制する設計を行って
上記の効果が得られる。
According to the integrated circuit design method of the second aspect, in the method of the first aspect, in the wave pipelining process, the designated data temporary holding means is deleted, so that power consumption is reduced. The above-mentioned effect can be obtained by designing so as to omit the temporary holding means having a large size, and by designing to suppress the clock supply.

【0142】請求項3の集積回路設計方法によれば、請
求項2の方法において、上記ウェーブパイプライン化処
理は、上記非ウェーブパイプライン化回路から、上記指
定されたデータ一時保持手段を抽出する指定一時保持手
段抽出処理と、上記抽出したデータ一時保持手段を削除
し、その前後の処理ステージを直結した場合に、当該前
後の処理ステージにおける特定データの処理についての
遅延時間を取得するステージ遅延時間取得処理と、上記
ステージ遅延時間取得処理において取得された遅延時間
を用いた比較処理を行い、上記比較処理の結果に従っ
て、上記指定されたデータ一時保持手段の削除に伴う、
上記遅延時間の調整を行う遅延時間調整処理とを含むも
のとしたことで、削除するデータ一時保持手段の前後に
おける遅延時間に対応して、調整処理を行うので、通常
のASIC設計方法に従って、単純な削除処理を行った
場合に起こり得る、遅延時間の相違に起因する不具合
を、調整処理によって回避することが可能となる。
According to the integrated circuit design method of the third aspect, in the method of the second aspect, the wave pipelining process extracts the specified data temporary holding means from the non-wave pipelined circuit. The designated temporary holding means extraction processing and the stage delay time for obtaining the delay time for the processing of specific data in the preceding and following processing stages when the extracted data temporary holding means is deleted and the preceding and following processing stages are directly connected. Acquisition processing, performing a comparison process using the delay time acquired in the stage delay time acquisition process, according to the result of the comparison process, accompanying the deletion of the specified data temporary holding unit,
By including the delay time adjustment processing for adjusting the delay time, the adjustment processing is performed according to the delay time before and after the data temporary holding unit to be deleted. It is possible to avoid a problem caused by a difference in delay time, which may occur when a proper deletion process is performed, by the adjustment process.

【0143】請求項4の集積回路設計方法によれば、請
求項3の方法において、上記遅延時間調整処理は、上記
指定されたデータ一時保持手段の前段に位置する処理ス
テージにおける特定データに対しての保持時間が所定の
値より小さな場合には、遅延手段を挿入することによ
り、上記保持時間を延長するものとしたことで、遅延時
間が短すぎることによって、有効データ出力期間が短く
なりすぎないように調整を行うので、ウェーブパイプラ
イン化による不具合を回避することが可能となる。
According to the integrated circuit design method of the fourth aspect, in the method of the third aspect, the delay time adjustment processing is performed on specific data in a processing stage located before the designated data temporary holding means. If the holding time is smaller than a predetermined value, the holding time is extended by inserting a delay means, so that the effective data output period is not too short because the delay time is too short. Since the adjustment is performed as described above, it is possible to avoid a problem due to the wave pipeline.

【0144】請求項5の集積回路設計方法によれば、請
求項の方法において、上記遅延時間調整処理は、上記指
定されたデータ一時保持手段の前段に位置する処理ステ
ージにおける特定データに対しての保持時間が所定の値
より小さな場合には、調整用一時保持手段を挿入するこ
とにより、上記保持時間を延長するものとしたことで、
前段の処理ステージから出力されるデータが、以降のク
ロックに対応して処理をされるように調整を行うので、
ウェーブパイプライン化による不具合を回避し、遅延時
間の差が比較的大きな場合には、遅延手段を挿入するよ
りも回路規模を小型化することが可能となる。
According to the integrated circuit design method of the fifth aspect, in the method of the first aspect, the delay time adjustment processing is performed for specific data in a processing stage located before the designated data temporary holding means. When the holding time is smaller than the predetermined value, by inserting the temporary holding means for adjustment, the holding time is extended,
Since the data output from the preceding processing stage is adjusted so that it is processed according to the subsequent clock,
When the problem due to the wave pipeline is avoided and the difference between the delay times is relatively large, the circuit scale can be made smaller than when a delay unit is inserted.

【0145】請求項6の集積回路設計方法によれば、請
求項3のにおいて、上記遅延時間調整処理は、上記指定
されたデータ一時保持手段の前段に位置する処理ステー
ジにおける特定データに対しての保持時間が所定の値よ
り小さな場合には、上記指定されたデータ一時保持手段
を削除せず、調整用一時保持手段として用いるものとし
たことで、削除しないデータ一時保持手段を用いて、上
記の調整を行うので、ウェーブパイプライン化による不
具合を回避し、遅延時間の差が比較的大きな場合には、
遅延手段を挿入するよりも回路規模を小型化することが
可能となる。
According to a sixth aspect of the present invention, in the third aspect of the present invention, the delay time adjustment processing is performed for a specific data in a processing stage located before the designated data temporary holding means. If the holding time is smaller than a predetermined value, the specified data temporary holding unit is not deleted, and is used as an adjustment temporary holding unit. Since adjustments are made, problems due to wave pipelining can be avoided, and if the difference in delay time is relatively large,
It is possible to reduce the circuit size more than inserting delay means.

【0146】請求項7の集積回路設計方法によれば、請
求項5または6の方法において、上記遅延時間調整処理
は、上記調整用一時保持手段に対して供給するクロック
の位相を調整するクロック調整処理をさらに含むものと
したことで、前段の処理ステージから出力されるデータ
が、適切に遅延されたクロックに対応して処理をされる
ように調整を行うので、ウェーブパイプライン化による
不具合を回避し、遅延時間の差が比較的大きな場合に
は、遅延手段を挿入するよりも回路規模を小型化するこ
とが可能となる。
According to a seventh aspect of the present invention, in the method of the fifth or sixth aspect, the delay time adjusting process includes adjusting a phase of a clock supplied to the temporary holding means for adjustment. By further including processing, data output from the preceding processing stage is adjusted so that it is processed in response to the appropriately delayed clock, so that problems due to wave pipelining can be avoided. However, when the difference between the delay times is relatively large, it is possible to reduce the circuit size more than inserting delay means.

【0147】請求項8の集積回路設計方法によれば、請
求項1の方法において、上記削除すべき構成要素の一部
を、評価処理により決定するものであり、上記ウェーブ
パイプライン化処理においては、上記決定に従ってデー
タ一時保持手段の削除を行うものとしたことで、非ウェ
ーブパイプライン化回路に対して、論理回路で起こり得
る遅延時間の大きな差がもたらす不都合を回避し得る調
整処理を伴って、評価処理に従って特定した構成要素を
削除をするウェーブパイプライン化を行うので、省電力
効果の大きなウェーブパイプライン回路を容易に設計す
ることが可能となる。
According to the integrated circuit design method of the eighth aspect, in the method of the first aspect, a part of the components to be deleted is determined by an evaluation process. And the fact that the data temporary holding means is deleted in accordance with the above-mentioned determination, with an adjustment process for the non-wave pipelined circuit, which can avoid inconvenience caused by a large difference in delay time that can occur in the logic circuit. Since a wave pipeline is formed to delete the specified component according to the evaluation processing, it is possible to easily design a wave pipeline circuit having a large power saving effect.

【0148】請求項9の集積回路設計方法によれば、請
求項8の方法において、上記評価処理は、上記非ウェー
ブパイプライン化回路内に含まれるデータ一時保持手段
ごとに、当該データ一時保持手段の特性を示す時間特性
値を取得する時間特性抽出処理と、上記取得した時間特
性値に基づいて、各データ一時保持手段を分類する分類
処理とを含むものであり、上記ウェーブパイプライン化
処理においては、上記分類に従ってデータ一時保持手段
の削除を行うものとしたことで、分類に従って消費電力
の大きな一時保持手段を省く構成とし、クロック供給を
抑制する設計を行って上記の効果が得られる。
According to a ninth aspect of the present invention, in the method of the eighth aspect, the evaluation processing is performed for each of the data temporary holding units included in the non-wave pipelined circuit. And a classification process for classifying each data temporary holding means based on the acquired time characteristic value. Is to delete the temporary data holding means according to the above classification, so that the temporary holding means consuming a large amount of power is omitted according to the classification, and the above-mentioned effect is obtained by designing to suppress the clock supply.

【0149】請求項10の集積回路設計方法によれば、
請求項9の方法において、上記評価処理は、上記分類処
理の結果に基づいて、データ一時保持手段ごとに、当該
データ一時保持手段を削除の対象とするか否かと、上記
削除に伴う調整処理の要・不要、および種類とを示すレ
ベル情報を付与するレベル決定処理をさらに含み、上記
ウェーブパイプライン化処理においては、上記レベル情
報に従ってデータ一時保持手段の削除と、調整処理とを
行うものとしたことで、分類処理とレベル決定処理とに
より、削除の可否と必要な調整処理とを決定して、適切
なウェーブパイプライン化を行うことが可能となる。
According to the integrated circuit design method of claim 10,
10. The method according to claim 9, wherein the evaluation processing includes, for each of the data temporary holding means, whether or not the data temporary holding means is to be deleted, and an adjustment processing associated with the deletion, based on a result of the classification processing. The method further includes a level determination process for giving level information indicating whether or not it is necessary or unnecessary, and the type. In the wave pipelining process, the data temporary holding unit is deleted and the adjustment process is performed according to the level information. Thus, it is possible to determine whether or not deletion is possible and necessary adjustment processing based on the classification processing and the level determination processing, and perform appropriate wave pipelining.

【0150】請求項11の集積回路設計方法によれば、
請求項1の方法において、上記ウェーブパイプライン化
処理においては、データ一時保持手段の削除を行うもの
であり、上記削除の対象となるデータ一時保持手段につ
いて、その入力側、および出力側における配線長を抽出
し、当該抽出した配線長が所定値を上回る場合には、当
該データ一時保持手段を、バッファ回路をもって置換す
るものとしたことで、データ一時保持手段の削除によ
る、容量負荷の増大の影響を回避して適切なウェーブパ
イプライン化を行うことが可能となる。
According to the integrated circuit design method of claim 11,
2. The method according to claim 1, wherein, in the wave pipelining process, the temporary data holding means is deleted, and the wiring lengths of the data temporary holding means to be deleted on the input side and the output side thereof are set. If the extracted wiring length exceeds a predetermined value, the temporary data holding means is replaced with a buffer circuit, thereby removing the temporary data holding means and increasing the capacity load. , It is possible to perform appropriate wave pipeline processing.

【0151】請求項12の集積回路設計方法によれば、
請求項11の方法において上記削除の対象となるデータ
一時保持手段が、正転、及び反転出力信号を出力するも
のである場合に、インバータ回路を含むバッファ回路を
もって上記置換を行うものとしたことで、データ一時保
持手段の削除による、論理整合性に対する悪影響を回避
して適切なウェーブパイプライン化を行うことが可能と
なる。
According to the integrated circuit design method of the twelfth aspect,
12. The method according to claim 11, wherein when the temporary data holding means to be deleted outputs normal and inverted output signals, the replacement is performed by a buffer circuit including an inverter circuit. In addition, it is possible to perform an appropriate wave pipeline by avoiding the adverse effect on the logical consistency due to the deletion of the temporary data holding unit.

【0152】請求項13の集積回路設計方法によれば、
請求項1の方法において、上記ウェーブパイプライン化
処理においては、データ一時保持手段の削除を行うもの
であり、上記削除の対象となるデータ一時保持手段につ
いて、当該データ一時保持手段のライブラリ値とは異な
るライブラリ値を有する仮のデータ一時保持手段への置
換を行うライブラリ変換処理と、上記ライブラリ変換処
理に対応した最適化処理とを行うものとしたことで、回
路の微細化当により、シミュレーションに基づいた調整
が困難な場合にも、データ一時保持手段の削除による悪
影響を回避して適切なウェーブパイプライン化を行うこ
とが可能となる。
According to the integrated circuit design method of claim 13,
2. The method according to claim 1, wherein in the wave pipeline processing, the temporary data holding unit is deleted, and the library value of the temporary data holding unit to be deleted is By performing the library conversion processing for replacing the temporary data holding means having a different library value with the temporary data holding means and the optimization processing corresponding to the library conversion processing, the circuit can be miniaturized and the simulation can be performed based on the simulation. Even when the adjustment is difficult, it is possible to perform an appropriate wave pipeline by avoiding the adverse effect of deleting the data temporary holding unit.

【0153】請求項14の集積回路設計方法によれば、
請求項13の方法において、当該パイプライン回路内に
おける各構成要素の配置を示す配置位置情報と、当該パ
イプライン回路内における配線容量を示す実配線容量情
報とを抽出するものであり、上記抽出した配置位置情報
と、実配線容量情報とに基づいて上記最適化処理を行う
ものとしたことで、適切な最適化処理が可能となる。
According to the method of designing an integrated circuit of claim 14,
14. The method according to claim 13, wherein arrangement position information indicating an arrangement of each component in the pipeline circuit and actual wiring capacitance information indicating a wiring capacitance in the pipeline circuit are extracted. Since the above-described optimization processing is performed based on the arrangement position information and the actual wiring capacity information, appropriate optimization processing can be performed.

【0154】請求項15の集積回路設計方法によれば、
請求項13の方法において、上記最適化処理による当該
回路の変化を示す最適化変動量を取得するものであり、
上記取得した最適化変動量に基づいて、上記最適化処理
実行の可否と、上記データ一時保持手段削除の可否とを
決定するものとしたことで、基本的に局所的な処理であ
る最適化処理により、全体の面積量や消費電力量が増加
することとなる事態を回避することが可能となる。
According to the integrated circuit designing method of claim 15,
14. The method according to claim 13, wherein an optimization variation amount indicating a change of the circuit due to the optimization processing is obtained.
By deciding whether or not to execute the above-mentioned optimization processing and whether or not to delete the above-mentioned temporary data holding means based on the above-mentioned obtained optimization fluctuation amount, the optimization processing which is basically a local processing is performed. Thereby, it is possible to avoid a situation in which the total area and power consumption increase.

【0155】請求項16の集積回路設計方法によれば、
請求項13の方法において、上記ライブラリ変換処理
は、上記仮のデータ一時保持手段への置換とともに、当
該置換されるデータ一時保持手段の近傍において遅延回
路を挿入するものとしたことで、より柔軟な調整を行う
ことが可能となる。
According to the integrated circuit design method of claim 16,
14. The method according to claim 13, wherein the library conversion process is performed more flexibly by replacing the temporary data holding means and inserting a delay circuit near the replaced data temporary holding means. Adjustment can be performed.

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

【図1】本発明の実施の形態1による集積回路設計方法
の処理手順を示すフローチャート図である。
FIG. 1 is a flowchart showing a processing procedure of an integrated circuit design method according to a first embodiment of the present invention.

【図2】同実施の形態の集積回路設計方法におけるウェ
ーブパイプライン化処理の詳細な処理手順を示すフロー
チャート図である。
FIG. 2 is a flowchart showing a detailed processing procedure of a wave pipelining process in the integrated circuit design method of the embodiment.

【図3】同実施の形態の集積回路設計方法におけるウェ
ーブパイプライン化処理に含まれる調整処理の第一の例
を示す図である。
FIG. 3 is a diagram showing a first example of an adjustment process included in the wave pipelining process in the integrated circuit design method according to the embodiment;

【図4】同実施の形態の集積回路設計方法における回路
の処理対象となるデータと、ウェーブパイプライン化に
おけるしきい値とを説明するための図である。
FIG. 4 is a diagram for explaining data to be processed by a circuit in the integrated circuit design method according to the embodiment and threshold values in wave pipelining;

【図5】同実施の形態の集積回路設計方法における第一
例の調整処理がされたウェーブパイプライン回路の動作
を示すタイミングチャート図である。
FIG. 5 is a timing chart showing an operation of the wave pipeline circuit that has been subjected to the adjustment processing of the first example in the integrated circuit design method according to the embodiment;

【図6】同実施の形態の集積回路設計方法におけるウェ
ーブパイプライン化処理に含まれる調整処理の第二の例
を示す図である。
FIG. 6 is a diagram illustrating a second example of the adjustment processing included in the wave pipeline processing in the integrated circuit design method according to the embodiment;

【図7】同実施の形態の集積回路設計方法におけるウェ
ーブパイプライン化処理に含まれる調整処理の第三の例
を示す図である。
FIG. 7 is a diagram illustrating a third example of the adjustment processing included in the wave pipeline processing in the integrated circuit design method according to the embodiment;

【図8】同実施の形態の集積回路設計方法における第二
例の調整処理がされたウェーブパイプライン回路の動作
を示すタイミングチャート図である。
FIG. 8 is a timing chart showing an operation of the wave pipeline circuit that has been subjected to the adjustment process of the second example in the integrated circuit design method of the embodiment.

【図9】本発明の実施の形態2による集積回路設計方法
の処理手順を示すフローチャート図である。
FIG. 9 is a flowchart illustrating a processing procedure of an integrated circuit design method according to a second embodiment of the present invention;

【図10】同実施の形態の集積回路設計方法におけるウ
ェーブパイプライン化処理の詳細な処理手順を示すフロ
ーチャート図である。
FIG. 10 is a flowchart showing a detailed processing procedure of a wave pipelining process in the integrated circuit design method of the embodiment.

【図11】同実施の形態の集積回路設計方法におけるバ
ッファ・インバータ置換処理を説明するための、置換前
の回路を示す図である。
FIG. 11 is a diagram showing a circuit before replacement for explaining a buffer / inverter replacement process in the integrated circuit design method according to the embodiment;

【図12】同実施の形態の集積回路設計方法におけるバ
ッファ・インバータ置換処理を説明するための、置換後
の回路を示す図である。
FIG. 12 is a diagram showing a circuit after replacement for describing a buffer / inverter replacement process in the integrated circuit design method according to the embodiment;

【図13】同実施の形態の集積回路設計方法における遅
延時間調整処理を説明するための、ウェーブパイプライ
ン処理の対象となる回路を示す図である。
FIG. 13 is a diagram showing a circuit to be subjected to a wave pipeline process for explaining a delay time adjustment process in the integrated circuit design method according to the embodiment;

【図14】同実施の形態の集積回路設計方法における遅
延時間調整処理を説明するためのタイミングチャート図
である。
FIG. 14 is a timing chart illustrating a delay time adjustment process in the integrated circuit design method according to the embodiment;

【図15】同実施の形態の集積回路設計方法における遅
延時間調整処理を説明するためのタイミングチャート図
である。
FIG. 15 is a timing chart for explaining a delay time adjustment process in the integrated circuit design method according to the embodiment;

【図16】同実施の形態の集積回路設計方法における分
類方法と処理レベルとを説明するための図である。
FIG. 16 is a diagram for explaining a classification method and a processing level in the integrated circuit design method of the embodiment.

【図17】同実施の形態の集積回路設計方法における遅
延時間調整処理を説明するための、調整タイプ1の調整
を行った回路を示す図である。
FIG. 17 is a diagram showing a circuit in which adjustment of adjustment type 1 has been performed, for describing a delay time adjustment process in the integrated circuit design method according to the embodiment;

【図18】同実施の形態の集積回路設計方法における遅
延時間調整処理を説明するための、調整タイプ2の調整
を行った回路を示す図である。
FIG. 18 is a diagram showing a circuit in which adjustment of adjustment type 2 has been performed, for explaining a delay time adjustment process in the integrated circuit design method of the embodiment.

【図19】本発明の実施の形態3による集積回路設計方
法におけるウェーブパイプライン化処理の処理手順を示
すフローチャート図である。
FIG. 19 is a flowchart showing a processing procedure of a wave pipelining process in the integrated circuit design method according to the third embodiment of the present invention.

【図20】同実施の形態の集積回路設計方法における仮
ライブラリ変換処理を説明するための、ウェーブパイプ
ライン処理の対象となる回路を示す図である。
FIG. 20 is a diagram showing a circuit to be subjected to a wave pipeline process for explaining a temporary library conversion process in the integrated circuit design method according to the embodiment;

【図21】同実施の形態の集積回路設計方法における仮
ライブラリ変換処理を説明するためのタイミングチャー
ト図である。
FIG. 21 is a timing chart for explaining temporary library conversion processing in the integrated circuit design method of the embodiment.

【図22】同実施の形態の集積回路設計方法における仮
ライブラリ変換処理を説明するための、ウェーブパイプ
ライン処理の対象となる回路を示す図である。
FIG. 22 is a diagram showing a circuit to be subjected to a wave pipeline process for describing a temporary library conversion process in the integrated circuit design method according to the embodiment.

【図23】同実施の形態の集積回路設計方法における仮
ライブラリ変換処理を説明するためのタイミングチャー
ト図である。
FIG. 23 is a timing chart for explaining temporary library conversion processing in the integrated circuit design method of the embodiment.

【図24】従来の技術による集積回路設計方法に従っ
た、パイプライン回路のRTL記述を説明するための図
である。
FIG. 24 is a diagram for describing an RTL description of a pipeline circuit according to a conventional integrated circuit design method.

【図25】従来の技術による集積回路設計方法に従っ
た、ウェーブパイプライン回路のRTL記述を説明する
ための図である。
FIG. 25 is a diagram for explaining an RTL description of a wave pipeline circuit according to a conventional integrated circuit design method.

【図26】パイプライン回路の処理対象となるデータの
構成と、遅延時間の差を説明するための図である。
FIG. 26 is a diagram for explaining a configuration of data to be processed by the pipeline circuit and a difference in delay time.

【図27】従来の技術による集積回路設計方法で設計さ
れたパイプライン回路の動作を示すタイミングチャート
図である。
FIG. 27 is a timing chart showing an operation of a pipeline circuit designed by an integrated circuit design method according to a conventional technique.

【図28】従来の技術による集積回路設計方法で設計さ
れたウェーブパイプライン回路の動作を示すタイミング
チャート図である。
FIG. 28 is a timing chart showing an operation of a wave pipeline circuit designed by an integrated circuit design method according to a conventional technique.

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

S101,S901 RTL記述・設計制約ファイ
ル読み込みステップ S102,S902 合成処理ステップ S103,S903 配置配線処理ステップ S104,S904 実配線容量シミュレーション
ステップ S105 ウェーブパイプライン化指定
ファイル 読み込みステップ S106,S909 ウェーブパイプライン化処理
ステップ S107,S9010 結果出力ステップ S201 指定フリップフロップ抽出ス
テップ S202 ステージ遅延時間抽出ステッ
プ S203 しきい値入力ステップ S204 ステージ遅延時間調整ステッ
プ S205 指定フリップフロップ削除ス
テップ S206 ネットリスト修正ステップ S905 分類方法・処理レベル読み込
みステップ S906 時間特性抽出処理ステップ S907 分類処理ステップ S910 レベル化処理ステップ S1001,S1901 対象フリップフロップ抽出ス
テップ S1002,S1902 入出力配線長和抽出ステップ S1003,S1903 配線長所定値入力ステップ S1004,S1909 バッファ・インバータ置換処
理ステップ S1005,S1906 ステージ遅延時間調整ステッ
プ S1006,S1910 対象フリップフロップ削除ス
テップ S1007,S1911 ネットリスト修正ステップ S1904 仮ライブラリ変換ステップ S1905 配置配線情報入力ステップ S1907 面積・消費電力増加抽出ステ
ップ S1918 判定ステップ 301,601,701,901,1101,240
1,2501入力フリップフロップ群 302,602,702,902,1102,240
2,2502パイプラインステージ 2403 中間フリップフロップ群 304,604,704,904,1104,240
4,2504パイプラインステージ 305,605,705,905,1105,240
5,2505出力フリップフロップ群 308,607,1750,1801,1802,18
03遅延回路 606,706 フリップフロップ 1103 対象フリップフロップ 1310,1710,1810,2010 入力側
フリップフロップ群 1320,1720,1820,2020,2220組
み合わせ論理回路 1330,1730,1830,2030 出力側
フリップフロップ群 1311,1312,1313,1314,1331,
1332,1333,1711,1712,1713,
1714,1731,1732,1733,1811,
1812,1813,1814,1831,1832,
1833,2011,2012,2013,2014,
2031,2032,2033,2034,2211,
2212,2231フリップフロップ 1321,1322,1323,1324,1325,
1326,1721,1722,1723,1724,
1725,1726,1821,1822,1823,
1824,1825,1826論理ゲート 321,621,721,921,1121,225
1,2421,2521クロック 311,312,313,314,315,611,6
12,613,614,615,711,712,71
3,714,715,1111,1112,1113,
1114,1116,2411,2412,2413,
2414,2511,2512,2514信号線
S101, S901 RTL description / design constraint file reading step S102, S902 synthesis processing step S103, S903 placement and wiring processing step S104, S904 real wiring capacity simulation step S105 Wave pipeline creation designation file reading step S106, S909 Wave pipeline processing step S107, S9010 Result output step S201 Designated flip-flop extraction step S202 Stage delay time extraction step S203 Threshold value input step S204 Stage delay time adjustment step S205 Designated flip-flop deletion step S206 Netlist modification step S905 Classification method / processing level reading step S906 Time characteristic extraction processing step S907 Classification processing step 910 Leveling processing step S1001, S1901 Target flip-flop extraction step S1002, S1902 Input / output wiring length sum extraction step S1003, S1903 Wiring length predetermined value input step S1004, S1909 Buffer / inverter replacement processing step S1005, S1906 Stage delay time adjustment step S1006 S1910 Target flip-flop deletion step S1007, S1911 Netlist correction step S1904 Temporary library conversion step S1905 Placement and wiring information input step S1907 Area / power consumption increase extraction step S1918 Judgment step 301, 601, 701, 901, 1101, 240
1,2501 input flip-flop group 302,602,702,902,1102,240
2,2502 pipeline stage 2403 intermediate flip-flops 304,604,704,904,1104,240
4,2504 pipeline stage 305,605,705,905,1105,240
5,2505 output flip-flop group 308,607,1750,1801,1802,18
03 delay circuit 606, 706 flip-flop 1103 target flip-flop 1310, 1710, 1810, 2010 input-side flip-flop group 1320, 1720, 1820, 2020, 2220 combinational logic circuit 1330, 1730, 1830, 2030 output-side flip-flop group 1311 1312, 1313, 1314, 1331,
1332, 1333, 1711, 1712, 1713,
1714, 1731, 1732, 1733, 1811,
1812, 1813, 1814, 1831, 1832,
1833, 2011, 1021, 2013, 2014
2031, 2032, 2033, 2034, 2211,
2212, 2231 flip-flops 1321, 1322, 1323, 1324, 1325
1326, 1721, 1722, 1723, 1724,
1725, 1726, 1821, 1822, 1823,
1824, 1825, 1826 logic gates 321, 621, 721, 921, 1121, 225
1,221,5211 clocks 311,312,313,314,315,611,6
12,613,614,615,711,712,71
3,714,715,1111,1112,1113
1114, 1116, 2411, 2412, 2413,
2414, 2511, 2512, 2514 signal lines

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) H01L 21/82 W ──────────────────────────────────────────────────続 き Continued on the front page (51) Int.Cl. 7 Identification symbol FI Theme coat ゛ (Reference) H01L 21/82 W

Claims (16)

【特許請求の範囲】[Claims] 【請求項1】 ハードウェア記述言語によるレジスタト
ランスファレベル記述を用いて、合成処理、配置配線処
理、および実配線容量シミュレーション処理を行うこと
により、複数の処理ステージを含むパイプライン回路を
設計する集積回路設計方法において、 上記合成処理、配置配線処理、および実配線容量シミュ
レーション処理によって生成された、上記複数の処理ス
テージと、上記処理ステージ間のデータ一時保持手段と
を含む非ウェーブパイプライン化回路に対して、その構
成要素の一部の削除と、上記削除に伴う調整処理とを含
むウェーブパイプライン化処理を行うことを特徴とする
集積回路設計方法。
An integrated circuit for designing a pipeline circuit including a plurality of processing stages by performing synthesis processing, placement and wiring processing, and real wiring capacity simulation processing using a register transfer level description in a hardware description language. In the design method, a non-wave pipelined circuit including the plurality of processing stages and the data temporary holding unit between the processing stages, which is generated by the synthesis processing, the placement and routing processing, and the actual wiring capacity simulation processing, And performing a wave pipelining process including a deletion of a part of the constituent elements and an adjustment process accompanying the deletion.
【請求項2】 請求項1に記載の集積回路設計方法にお
いて、 上記ウェーブパイプライン化処理においては、指定され
たデータ一時保持手段の削除を行うものであることを特
徴とする集積回路設計方法。
2. The integrated circuit design method according to claim 1, wherein the specified data temporary holding means is deleted in the wave pipeline processing.
【請求項3】 請求項2に記載の集積回路設計方法にお
いて、 上記ウェーブパイプライン化処理は、 上記非ウェーブパイプライン化回路から、上記指定され
たデータ一時保持手段を抽出する指定一時保持手段抽出
処理と、 上記抽出したデータ一時保持手段を削除し、その前後の
処理ステージを直結した場合に、当該前後の処理ステー
ジにおける特定データの処理についての遅延時間を取得
するステージ遅延時間取得処理と、 上記ステージ遅延時間取得処理において取得された遅延
時間を用いた比較処理を行い、上記比較処理の結果に従
って、上記指定されたデータ一時保持手段の削除に伴
う、上記遅延時間の調整を行う遅延時間調整処理とを含
むものであることを特徴とする集積回路設計方法。
3. The integrated circuit design method according to claim 2, wherein the wave pipelining process includes extracting the designated temporary data holding unit from the non-wave pipelined circuit. Processing, when the extracted data temporary holding means is deleted, and when the preceding and following processing stages are directly connected, a stage delay time obtaining process for obtaining a delay time for processing of specific data in the preceding and following processing stages; A delay time adjustment process that performs a comparison process using the delay time acquired in the stage delay time acquisition process, and adjusts the delay time in accordance with the result of the comparison process when the designated data temporary holding unit is deleted. And a method of designing an integrated circuit.
【請求項4】 請求項3に記載の集積回路設計方法にお
いて、 上記遅延時間調整処理は、上記指定されたデータ一時保
持手段の前段に位置する処理ステージにおける特定デー
タに対しての保持時間が所定の値より小さな場合には、
遅延手段を挿入することにより、上記保持時間を延長す
るものであることを特徴とする集積回路設計方法。
4. The integrated circuit design method according to claim 3, wherein the delay time adjustment processing is performed by setting a holding time for specific data in a processing stage located before the designated data temporary holding means. If the value is less than
A method for designing an integrated circuit, wherein the holding time is extended by inserting a delay means.
【請求項5】 請求項3に記載の集積回路設計方法にお
いて、 上記遅延時間調整処理は、上記指定されたデータ一時保
持手段の前段に位置する処理ステージにおける特定デー
タに対しての保持時間が所定の値より小さな場合には、
調整用一時保持手段を挿入することにより、上記保持時
間を延長するものであることを特徴とする集積回路設計
方法。
5. The integrated circuit design method according to claim 3, wherein the delay time adjustment processing is performed by setting a holding time for specific data in a processing stage located before the designated data temporary holding means. If the value is less than
A method for designing an integrated circuit, wherein the holding time is extended by inserting a temporary holding means for adjustment.
【請求項6】 請求項3に記載の集積回路設計方法にお
いて、 上記遅延時間調整処理は、上記指定されたデータ一時保
持手段の前段に位置する処理ステージにおける特定デー
タに対しての保持時間が所定の値より小さな場合には、
上記指定されたデータ一時保持手段を削除せず、調整用
一時保持手段として用いるものであることを特徴とする
集積回路設計方法。
6. The integrated circuit design method according to claim 3, wherein the delay time adjustment processing is performed by setting a holding time for specific data in a processing stage positioned before the designated data temporary holding means. If the value is less than
An integrated circuit design method, wherein the designated data temporary holding means is used as an adjustment temporary holding means without being deleted.
【請求項7】 請求項5または6に記載の集積回路設計
方法において、 上記遅延時間調整処理は、上記調整用一時保持手段に対
して供給するクロックの位相を調整するクロック調整処
理をさらに含むものであることを特徴とする集積回路設
計方法。
7. The integrated circuit designing method according to claim 5, wherein the delay time adjusting process further includes a clock adjusting process for adjusting a phase of a clock supplied to the adjusting temporary holding unit. An integrated circuit design method characterized by the above-mentioned.
【請求項8】 請求項1に記載の集積回路設計方法にお
いて、 上記削除すべき構成要素の一部を、評価処理により決定
するものであり、 上記ウェーブパイプライン化処理においては、上記決定
に従ってデータ一時保持手段の削除を行うものであるこ
とを特徴とする集積回路設計方法。
8. The integrated circuit design method according to claim 1, wherein a part of the constituent elements to be deleted is determined by an evaluation process. An integrated circuit design method for deleting temporary holding means.
【請求項9】 請求項8に記載の集積回路設計方法にお
いて、 上記評価処理は、 上記非ウェーブパイプライン化回路内に含まれるデータ
一時保持手段ごとに、当該データ一時保持手段の特性を
示す時間特性値を取得する時間特性抽出処理と、 上記取得した時間特性値に基づいて、各データ一時保持
手段を分類する分類処理とを含むものであり、 上記ウェーブパイプライン化処理においては、上記分類
に従ってデータ一時保持手段の削除を行うものであるこ
とを特徴とする集積回路設計方法。
9. The integrated circuit design method according to claim 8, wherein the evaluation processing includes, for each data temporary holding unit included in the non-wave pipelined circuit, a time indicating a characteristic of the data temporary holding unit. The method includes a time characteristic extraction process for acquiring a characteristic value, and a classification process for classifying each data temporary holding unit based on the acquired time characteristic value. An integrated circuit design method for deleting temporary data holding means.
【請求項10】 請求項9に記載の集積回路設計方法に
おいて、 上記評価処理は、 上記分類処理の結果に基づいて、データ一時保持手段ご
とに、当該データ一時保持手段を削除の対象とするか否
かと、上記削除に伴う調整処理の要・不要、および種類
とを示すレベル情報を付与するレベル決定処理をさらに
含み、 上記ウェーブパイプライン化処理においては、上記レベ
ル情報に従ってデータ一時保持手段の削除と、調整処理
とを行うものであることを特徴とする集積回路設計方
法。
10. The integrated circuit design method according to claim 9, wherein, in the evaluation process, whether the data temporary holding unit is to be deleted for each data temporary holding unit based on a result of the classification process. And a level determination process for giving level information indicating whether or not the adjustment process is necessary and the type of the deletion process, and the type of the adjustment process. In the wave pipelining process, the data temporary holding unit is deleted according to the level information. And an adjustment process.
【請求項11】 請求項1に記載の集積回路設計方法に
おいて、 上記ウェーブパイプライン化処理においては、データ一
時保持手段の削除を行うものであり、 上記削除の対象となるデータ一時保持手段について、そ
の入力側、および出力側における配線長を抽出し、当該
抽出した配線長が所定値を上回る場合には、当該データ
一時保持手段を、バッファ回路をもって置換するもので
あることを特徴とする集積回路設計方法。
11. The integrated circuit design method according to claim 1, wherein in the wave pipelining process, the temporary data holding unit is deleted. An integrated circuit for extracting a wiring length on an input side and an output side thereof and, when the extracted wiring length exceeds a predetermined value, replacing the data temporary holding means with a buffer circuit; Design method.
【請求項12】 請求項11に記載の集積回路設計方法
において、 上記削除の対象となるデータ一時保持手段が、正転、及
び反転出力信号を出力するものである場合に、インバー
タ回路を含むバッファ回路をもって上記置換を行うもの
であることを特徴とする集積回路設計方法。
12. The integrated circuit designing method according to claim 11, wherein the data temporary holding unit to be deleted outputs a normal output signal and an inverted output signal, and the buffer includes an inverter circuit. An integrated circuit design method, wherein the above replacement is performed by a circuit.
【請求項13】 請求項1に記載の集積回路設計方法に
おいて、 上記ウェーブパイプライン化処理においては、データ一
時保持手段の削除を行うものであり、 上記削除の対象となるデータ一時保持手段について、当
該データ一時保持手段のライブラリ値とは異なるライブ
ラリ値を有する仮のデータ一時保持手段への置換を行う
ライブラリ変換処理と、上記ライブラリ変換処理に対応
した最適化処理とを行うものであることを特徴とする集
積回路設計方法。
13. The integrated circuit design method according to claim 1, wherein in the wave pipelining process, the data temporary holding unit is deleted. A library conversion process for performing replacement with a temporary data holding unit having a library value different from the library value of the data temporary holding unit, and an optimization process corresponding to the library conversion process are performed. Integrated circuit design method.
【請求項14】 請求項13に記載の集積回路設計方法
において、 当該パイプライン回路内における各構成要素の配置を示
す配置位置情報と、当該パイプライン回路内における配
線容量を示す実配線容量情報とを抽出するものであり、 上記抽出した配置位置情報と、実配線容量情報とに基づ
いて上記最適化処理を行うものであることを特徴とする
集積回路設計方法。
14. The integrated circuit design method according to claim 13, wherein arrangement position information indicating an arrangement of each component in the pipeline circuit, and actual wiring capacitance information indicating a wiring capacitance in the pipeline circuit. Wherein the optimization processing is performed based on the extracted arrangement position information and the actual wiring capacity information.
【請求項15】 請求項13に記載の集積回路設計方法
において、 上記最適化処理による当該回路の変化を示す最適化変動
量を取得するものであり、 上記取得した最適化変動量に基づいて、上記最適化処理
実行の可否と、上記データ一時保持手段削除の可否とを
決定するものであることを特徴とする集積回路設計方
法。
15. The integrated circuit design method according to claim 13, wherein an optimization variation indicating a change in the circuit due to the optimization processing is acquired. Based on the acquired optimization variation, An integrated circuit design method for determining whether the above-described optimization processing can be executed and whether the above-mentioned temporary data holding means can be deleted.
【請求項16】 請求項13に記載の集積回路設計方法
において、 上記ライブラリ変換処理は、上記仮のデータ一時保持手
段への置換とともに、当該置換されるデータ一時保持手
段の近傍において遅延回路を挿入するものであることを
特徴とする集積回路設計方法。
16. The integrated circuit designing method according to claim 13, wherein in said library conversion processing, said temporary data holding means is replaced with said temporary data holding means and a delay circuit is inserted near said replaced data temporary holding means. A method for designing an integrated circuit.
JP10345818A 1998-06-29 1998-12-04 Design method for integrated circuit Pending JP2000082092A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10345818A JP2000082092A (en) 1998-06-29 1998-12-04 Design method for integrated circuit

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP10-181301 1998-06-29
JP18130198 1998-06-29
JP10345818A JP2000082092A (en) 1998-06-29 1998-12-04 Design method for integrated circuit

Publications (1)

Publication Number Publication Date
JP2000082092A true JP2000082092A (en) 2000-03-21

Family

ID=26500543

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10345818A Pending JP2000082092A (en) 1998-06-29 1998-12-04 Design method for integrated circuit

Country Status (1)

Country Link
JP (1) JP2000082092A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009237727A (en) * 2008-03-26 2009-10-15 Fujitsu Microelectronics Ltd Method for designing semiconductor integrated circuit
JP2011180841A (en) * 2010-03-01 2011-09-15 Ricoh Co Ltd Semiconductor design support apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009237727A (en) * 2008-03-26 2009-10-15 Fujitsu Microelectronics Ltd Method for designing semiconductor integrated circuit
JP2011180841A (en) * 2010-03-01 2011-09-15 Ricoh Co Ltd Semiconductor design support apparatus

Similar Documents

Publication Publication Date Title
CN110192192B (en) Neural network based physical synthesis for circuit design
US5883808A (en) Logic circuit optimization apparatus and its method
JP3331968B2 (en) Register transfer level power consumption optimization circuit, method and recording medium with emphasis on glitch analysis and reduction
US20030101419A1 (en) Logic circuit design method and cell library for use therewith
JP2002500435A (en) Timing closure method
US7254796B2 (en) Method for synthesizing domino logic circuits cross reference to related patent application using partition
US6622290B1 (en) Timing verification method employing dynamic abstraction in core/shell partitioning
JP2000057201A (en) Method and system for sharing limited register for low power vlsi design
US8539414B1 (en) Automatic asynchronous signal pipelining
US6574781B1 (en) Design methodology for inserting RAM clock delays
US6484292B1 (en) Incremental logic synthesis system for revisions of logic circuit designs
US8042074B2 (en) Circuit design device, circuit design program, and circuit design method
US7634748B2 (en) Special engineering change order cells
US6463576B1 (en) Method for designing an ASIC and ASIC designing apparatus
US8271922B2 (en) System and method for clock optimization to achieve timing signoff in an electronic circuit and electronic design automation tool incorporating the same
US7603646B1 (en) Method and apparatus for power optimization using don't care conditions of configuration bits in lookup tables
Takizawa et al. A design support tool set for asynchronous circuits with bundled-data implementation on FPGAs
JP2000082092A (en) Design method for integrated circuit
WO2017104149A1 (en) Design method, design program, and design device
JP3660241B2 (en) Gated clock design support device, gated clock design support method, and recording medium
US8037337B2 (en) Structures including circuits for noise reduction in digital systems
JP2006201825A (en) Delay analysis method and delay analysis program of integrated circuit
US20040015790A1 (en) Method of designing and making an integrated circuit
JP2010113405A (en) Device for synthesizing semiconductor integrated circuit
CN117933157A (en) Time sequence optimization method, device, equipment and medium based on logic synthesis