JP2012159977A - Behavioral synthesis device, behavioral synthesis method and behavioral synthesis program - Google Patents

Behavioral synthesis device, behavioral synthesis method and behavioral synthesis program Download PDF

Info

Publication number
JP2012159977A
JP2012159977A JP2011018664A JP2011018664A JP2012159977A JP 2012159977 A JP2012159977 A JP 2012159977A JP 2011018664 A JP2011018664 A JP 2011018664A JP 2011018664 A JP2011018664 A JP 2011018664A JP 2012159977 A JP2012159977 A JP 2012159977A
Authority
JP
Japan
Prior art keywords
register
description
variable
state
behavioral
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
JP2011018664A
Other languages
Japanese (ja)
Inventor
Hisahide Ezaki
尚英 江崎
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2011018664A priority Critical patent/JP2012159977A/en
Publication of JP2012159977A publication Critical patent/JP2012159977A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To solve the problem that a conventional behavioral synthesis device has a difficulty in producing a semiconductor device corresponding to state retention behavior.SOLUTION: The behavioral synthesis device in the invention comprises a behavioral synthesis part 10 and a power specification description extraction part 20. The behavioral synthesis part 10 determines a data flow graph for implementing behavior by behavioral descriptions, and operators and registers which implement an operation defined by the data flow graph; and generates a data path graph including the operators and the registers, and a control circuit for controlling processing orders based on the data flow graph; and generates RTL (Register Transfer Level) descriptions including the data path graph and the control circuit. The power specification description extraction part 20 specifies a variable to be controlled required for state retention behavior by processing attribute information included in behavioral descriptions, specifies a retention register corresponding to the variable to be controlled based on information about the register of the data path graph, and generates power specification descriptions including the retention register.

Description

本発明は動作合成装置、動作合成方法及び動作合成プログラムに関し、特に設計対象の半導体装置の動作を記述した動作記述に基づき半導体装置のRTL記述を生成する動作合成装置、動作合成方法及び動作合成プログラムに関する。   The present invention relates to a behavioral synthesis device, a behavioral synthesis method, and a behavioral synthesis program, and in particular, a behavioral synthesis device, a behavioral synthesis method, and a behavioral synthesis program for generating an RTL description of a semiconductor device based on a behavioral description that describes the behavior of a semiconductor device to be designed. About.

半導体装置の設計においては、複数の設計レベルが定義されている。この設計レベルでは、具体的な回路に近い設計情報による設計が低位レベルとされ、抽象度の高い設計情報による設計が高位レベルとされる。近年、半導体装置に実装される回路(特に論理回路)の回路規模の増大に伴い、設計レベルがより高位になってきている。例えば、近年では、高位言語設計として動作合成による設計提案されている。動作合成では、C言語、systemC言語等により回路動作を記述した動作記述に基づきRTL(Register Transfer Level)記述を合成する。このように、高位言語設計を進めることでより効率的に大規模な回路を設計することが可能になる。この動作記述に基づく動作合成の一例が特許文献1に開示されている。   In designing a semiconductor device, a plurality of design levels are defined. At this design level, design based on design information close to a specific circuit is set to a low level, and design based on design information having a high level of abstraction is set to a high level. In recent years, as the circuit scale of a circuit (particularly a logic circuit) mounted on a semiconductor device increases, the design level has become higher. For example, recently, design by behavioral synthesis has been proposed as high-level language design. In the behavioral synthesis, an RTL (Register Transfer Level) description is synthesized based on the behavioral description describing the circuit behavior in C language, systemC language or the like. In this way, a large-scale circuit can be designed more efficiently by proceeding with high-level language design. An example of behavioral synthesis based on this behavioral description is disclosed in Patent Document 1.

一方、近年では、半導体装置の低消費電力化が強く要求されている。この低消費電力化の一手法として、回路ブロック毎の電力制御が提案されている。例えば、複数の回路ブロックにより半導体装置が構成されている場合に、回路ブロックの利用状況に応じて、回路ブロック毎に電源の供給と遮断とを切り換える。さらに、このような回路ブロック毎の電源制御による電力削減をより効率よく行うために、ステートリテンション技術が提案されている。ステートリテンション技術は、回路ブロックの電源を遮断した場合に、回路ブロックの電源遮断後も当該回路ブロック内のレジスタの値を保持するように回路を構成するものである。これにより、値を保持するためだけに、演算が行われない回路ブロックへの電源供給を行う必要がなくなり、消費電力を削減することができる。このようなステートリテンション技術を実現するための言語としてCPF(Common Power Format)、UPF(Unified Power Format)等の電力仕様記述が提案されている。   On the other hand, in recent years, there is a strong demand for lower power consumption of semiconductor devices. As a technique for reducing the power consumption, power control for each circuit block has been proposed. For example, when a semiconductor device is configured by a plurality of circuit blocks, power supply is switched on and off for each circuit block in accordance with the usage status of the circuit block. Furthermore, a state retention technique has been proposed in order to more efficiently reduce power by controlling the power supply for each circuit block. In the state retention technique, when a circuit block is powered off, the circuit is configured so that the register value in the circuit block is held even after the circuit block is powered off. As a result, it is not necessary to supply power to a circuit block that is not subjected to computation only to hold a value, and power consumption can be reduced. Power specification descriptions such as CPF (Common Power Format) and UPF (Unified Power Format) have been proposed as languages for realizing such state retention technology.

ここで、CPFを用いた半導体装置の設計手法が非特許文献1に開示されている。より具体的には、非特許文献1では、CPFにより設計を行うことで、RTL記述で定義された電源遮断領域の電源を所定の状態で遮断状態とする場合に、当該電源遮断領域に含まれる所定の記憶素子については電源を遮断せずに値を保持することが可能な半導体装置の設計方法が開示されている。   Here, Non-Patent Document 1 discloses a design method of a semiconductor device using CPF. More specifically, in Non-Patent Document 1, when the power supply in the power cutoff area defined in the RTL description is shut down in a predetermined state by designing with CPF, it is included in the power cutoff area. A method for designing a semiconductor device capable of holding a value for a predetermined memory element without shutting off a power supply is disclosed.

特開平5−334466号公報JP-A-5-334466

"Common Power Format Language Reference", Version 1.1, April 2009, Cadence社"Common Power Format Language Reference", Version 1.1, April 2009, Cadence

上記した動作合成技術を用いて動作記述からRTL記述を作成した場合、RTL記述に含まれるインスタンス名は動作合成装置により自動的に割り振られる。そのため、動作合成技術により生成されたRTL記述のレジスタ名と動作記述中の変数との関係は不明である。そのため、動作合成によりRTL記述を作成した場合、電力仕様記述を作成することができない。つまり、従来の設計方法により動作記述から設計を行う場合、電力仕様記述を作成できず、ステートリテンション技術を適用した半導体装置を設計できない問題がある。また、高位言語に基づく従来の設計方法では、低消費電力の半導体装置を設計できない問題がある。   When an RTL description is created from a behavioral description using the behavioral synthesis technique described above, the instance name included in the RTL description is automatically assigned by the behavioral synthesis device. Therefore, the relationship between the register name of the RTL description generated by the behavioral synthesis technique and the variable in the behavior description is unknown. Therefore, when an RTL description is created by behavioral synthesis, a power specification description cannot be created. That is, when designing from an operation description by a conventional design method, there is a problem that a power specification description cannot be created and a semiconductor device to which the state retention technology is applied cannot be designed. In addition, the conventional design method based on a high-level language has a problem that a low power consumption semiconductor device cannot be designed.

本発明にかかる動作合成装置の一態様は、動作記述からRTL(Register Transfer Level)記述を生成する動作合成装置であって、前記動作記述による動作を実現するデータフローグラフと、前記データフローグラフにより定義される演算を実現する演算器及びレジスタを決定して前記演算器及び前記レジスタによるデータパスグラフと、前記データフローグラフに基づく処理順序を制御する制御回路と、を生成し、前記データパスグラフと前記制御回路とを含むRTL記述を生成する動作合成部と、前記動作記述に含まれる処理属性情報によりステートリテンション動作に必要な被制御変数を特定し、前記データパスグラフの前記レジスタに関する情報に基づき前記被制御変数に対応するリテンションレジスタを特定し、前記リテンションレジスタを含む電力仕様記述を生成する電力仕様記述抽出部と、を有する。   One aspect of the behavioral synthesis device according to the present invention is a behavioral synthesis device that generates an RTL (Register Transfer Level) description from a behavior description, and includes a data flow graph that realizes the behavior according to the behavior description, and the data flow graph. A data path graph generated by determining an arithmetic unit and a register for realizing a defined operation, and a control circuit for controlling a processing order based on the data flow graph, and generating the data path graph And a behavioral synthesis unit that generates an RTL description including the control circuit, a controlled variable necessary for a state retention operation is specified by processing attribute information included in the behavioral description, and information related to the register of the data path graph And a retention register corresponding to the controlled variable is identified based on the retention register. Having a power specification description extracting unit generating a power specification description including.

本発明にかかる動作合成方法の一態様は、動作記述からRTL(Register Transfer Level)記述を生成する動作合成方法であって、前記動作記述による動作を実現するデータフローグラフと、前記データフローグラフにより定義される演算を実現する演算器及びレジスタを決定して前記演算器及び前記レジスタによるデータパスグラフと、前記データフローグラフに基づく処理順序を制御する制御回路と、を生成し、前記データパスグラフと前記制御回路とを含むRTL記述を生成し、前記動作記述に含まれる処理属性情報によりステートリテンション動作に必要な被制御変数を特定し、前記データパスグラフの前記レジスタに関する情報に基づき前記被制御変数に対応するリテンションレジスタを特定し、前記リテンションレジスタを含む電力仕様記述を生成する。   An aspect of the behavioral synthesis method according to the present invention is a behavioral synthesis method for generating an RTL (Register Transfer Level) description from a behavioral description, and includes a dataflow graph that realizes an behavior based on the behavioral description, and the dataflow graph. A data path graph generated by determining an arithmetic unit and a register for realizing a defined operation, and a control circuit for controlling a processing order based on the data flow graph, and generating the data path graph And an RTL description including the control circuit, specifying a controlled variable necessary for a state retention operation based on processing attribute information included in the operation description, and controlling the controlled based on information on the register of the data path graph The retention register corresponding to the variable is specified, and the power function including the retention register is specified. To generate a description.

本発明にかかる動作合成プログラムの一態様は、演算装置において実行され、記憶装置に格納された動作記述からRTL(Register Transfer Level)記述を生成し、前記RTL記述を前記記憶装置に格納する動作合成プログラムであって、前記記憶装置から前記動作記述を読み込み、前記動作記述による動作を実現するデータフローグラフと、前記データフローグラフにより定義される演算を実現する演算器及びレジスタを決定して前記演算器及び前記レジスタによるデータパスグラフと、前記データフローグラフに基づく処理順序を制御する制御回路と、を生成し、前記データパスグラフと前記制御回路とを含むRTL記述を生成して前記記憶装置に格納し、前記動作記述に含まれる処理属性情報によりステートリテンション動作に必要な被制御変数を特定し、前記データパスグラフの前記レジスタに関する情報に基づき前記被制御変数に対応するリテンションレジスタを特定し、前記リテンションレジスタを含む電力仕様記述を生成して、前記電力仕様記述を前記記憶装置に格納する。   One aspect of the behavioral synthesis program according to the present invention is a behavioral synthesis in which an RTL (Register Transfer Level) description is generated from a behavioral description stored in a storage device, and the RTL description is stored in the storage device. A program that reads the behavioral description from the storage device, determines a dataflow graph that realizes an operation based on the behavioral description, and an arithmetic unit and a register that realizes an operation defined by the dataflow graph. And a control circuit for controlling a processing order based on the data flow graph, and generates an RTL description including the data path graph and the control circuit in the storage device. Stored and controlled by the processing attribute information included in the behavior description Identifying a number, identifying a retention register corresponding to the controlled variable based on information about the register of the data path graph, generating a power specification description including the retention register, and storing the power specification description in the storage device To store.

本発明にかかる動作合成装置、動作合成方法及び動作合成プログラムによれば、動作記述中の処理属性情報により指定された被制御変数が格納される被制御レジスタとRTL記述に含まれるレジスタとの関係を特定できる。これにより、本発明にかかる動作合成装置、動作合成方法及び動作合成プログラムは、特定された被制御レジスタをリテンションレジスタとして含む電力仕様記述を作成することができる。   According to the behavioral synthesis apparatus, behavioral synthesis method, and behavioral synthesis program of the present invention, the relationship between the controlled register storing the controlled variable specified by the processing attribute information in the behavioral description and the register included in the RTL description Can be identified. Accordingly, the behavioral synthesis device, behavioral synthesis method, and behavioral synthesis program according to the present invention can create a power specification description including the specified controlled register as a retention register.

本発明にかかる動作合成装置、動作合成方法及び動作合成プログラムによれば、動作合成方法及び動作合成プログラムによれば、動作記述からRTL記述と当該RTL記述に対応する電力仕様記述とを生成することができる。   According to the behavioral synthesis apparatus, behavioral synthesis method, and behavioral synthesis program of the present invention, the behavioral synthesis method and behavioral synthesis program generate an RTL description and a power specification description corresponding to the RTL description from the behavioral description. Can do.

実施の形態1にかかる半導体装置の設計手順を示すフローチャートである。3 is a flowchart showing a design procedure of the semiconductor device according to the first embodiment; 実施の形態1にかかる動作合成装置のブロック図である。1 is a block diagram of a behavioral synthesis device according to a first exemplary embodiment; 実施の形態1にかかる動作合成装置の動作手順を示すフローチャートである。3 is a flowchart illustrating an operation procedure of the behavioral synthesis device according to the first exemplary embodiment; 実施の形態1にかかる動作合成装置で扱う動作記述の一例である。3 is an example of behavioral descriptions handled by the behavioral synthesis device according to the first exemplary embodiment; 図4の動作記述に基づき生成されるデータフローグラフを示す図である。It is a figure which shows the data flow graph produced | generated based on the action description of FIG. 図4の動作記述に基づき生成される状態遷移図である。FIG. 5 is a state transition diagram generated based on the behavioral description of FIG. 4. 図4の動作記述に基づき生成される状態−変数対応表である。5 is a state-variable correspondence table generated based on the behavioral description of FIG. 図4の動作記述に基づき生成されるデータパスグラフを示す図である。FIG. 5 is a diagram showing a data path graph generated based on the behavioral description of FIG. 4. 図8のデータパスグラフに基づき生成される変数−レジスタ対応表である。9 is a variable-register correspondence table generated based on the data path graph of FIG. 図4の動作記述に基づき生成される電力制御−状態対応表である。5 is a power control-state correspondence table generated based on the behavioral description of FIG. 図4の動作記述に基づき生成される電力仕様記述の一例を示す図である。FIG. 5 is a diagram illustrating an example of a power specification description generated based on the operation description of FIG. 4.

実施の形態1
以下、図面を参照して本発明の実施の形態について説明する。実施の形態1にかかる動作合成装置は、半導体装置の設計段階で用いられる。動作合成処理は、高位合成処理とも呼ばれ、半導体装置の設計の初期の段階で行われる処理である。そこで、半導体装置の設計手順を示すフローチャートを図1に示す。なお、図1に示すフローチャートは、動作記述等の高位言語に基づく半導体装置の設計手順を示すものである。
Embodiment 1
Embodiments of the present invention will be described below with reference to the drawings. The behavioral synthesis device according to the first embodiment is used in the design stage of a semiconductor device. The behavioral synthesis process is also called a high-level synthesis process, and is a process performed at an early stage of designing a semiconductor device. Therefore, FIG. 1 shows a flowchart showing the design procedure of the semiconductor device. Note that the flowchart shown in FIG. 1 shows a design procedure of a semiconductor device based on a high-level language such as a behavioral description.

図1に示すフローチャートでは、まず、作成する半導体装置の動作をC言語等の高位言語を用いて記述した動作記述F1を作成する(ステップS1)。続いて。動作記述F1を読み込み、動作合成処理を行う(ステップS2)。動作合成処理では、RTL(Register Transfer Level)記述F2と電力仕様記述F3が生成される。ここで、RTL記述F2は、動作記述F1に基づく演算を行うための演算器とレジスタとを含む回路構成を記述したものである。また、動作合成処理によって電力仕様記述F3を生成する点が実施の形態1にかかる動作合成処理の特徴の1つである。   In the flowchart shown in FIG. 1, first, an operation description F1 in which the operation of the semiconductor device to be generated is described using a high-level language such as C language is generated (step S1). continue. The behavioral description F1 is read and behavioral synthesis processing is performed (step S2). In the behavioral synthesis process, an RTL (Register Transfer Level) description F2 and a power specification description F3 are generated. Here, the RTL description F2 describes a circuit configuration including an arithmetic unit and a register for performing an operation based on the operation description F1. Also, one of the features of the behavioral synthesis process according to the first embodiment is that the power specification description F3 is generated by the behavioral synthesis process.

続いて、RTL記述F2と電力仕様記述F3とを読み込んで、論理合成処理を行い、ネットリストF4を生成する(ステップS3)。このネットリストF4では、RTL記述F2に記載された演算器及びレジスタ等を実現するためのゲートと、これらゲート間の接続関係と、が記載される。このネットリストF4は、ゲートレベルネットリストとも呼ばれる。続いて、ネットリストF4に基づきレイアウト工程が行われる(ステップS4)。レイアウト工程ではネットリストF4に基づきゲートに対応するライブラリを読み込み、当該ライブラリに基づきトランジスタを配置する。そして、レイアウト工程によってレイアウトデータF5が生成され、このレイアウトデータF5に基づき半導体装置の製造が行われる(ステップS5)。   Subsequently, the RTL description F2 and the power specification description F3 are read, a logic synthesis process is performed, and a netlist F4 is generated (step S3). In the netlist F4, gates for realizing the arithmetic units, registers, and the like described in the RTL description F2 and connection relationships between these gates are described. This netlist F4 is also called a gate level netlist. Subsequently, a layout process is performed based on the netlist F4 (step S4). In the layout process, a library corresponding to the gate is read based on the netlist F4, and transistors are arranged based on the library. Then, layout data F5 is generated by the layout process, and the semiconductor device is manufactured based on the layout data F5 (step S5).

以下の説明では、図1に示すように、動作合成処理によって、RTL記述F2と電力仕様記述F3とを別々に生成する例について説明する。しかし、電力仕様記述F3において記述される内容は、RTL記述F2に含めることもできる。また、電力仕様記述F3に基づく構成を半導体装置の構成に反映させるのは、論理合成処理(ステップS3)に限られず、動作合成処理(ステップS2)、レイアウト工程(ステップS4)であっても可能である。つまり、電力仕様記述F3に関連する情報を回路構成に反映させる工程は、利用する設計支援ツールの仕様、工程管理上の理由によって適宜変更することが可能である。   In the following description, as shown in FIG. 1, an example will be described in which RTL description F2 and power specification description F3 are separately generated by behavioral synthesis processing. However, the contents described in the power specification description F3 can also be included in the RTL description F2. The configuration based on the power specification description F3 is not limited to the logic synthesis process (step S3), but can be reflected in the behavioral synthesis process (step S2) and the layout process (step S4). It is. That is, the process of reflecting the information related to the power specification description F3 in the circuit configuration can be appropriately changed depending on the specification of the design support tool to be used and the reason for process management.

続いて、実施の形態1にかかる動作合成装置1のブロック図を図2に示す。図2に示すように、動作合成装置1は、動作合成部10と、電力仕様記述抽出部20と、を有する。なお、動作合成装置1では、処理に用いるデータを格納するために記憶装置を用いる、図2に示す例では、符号としてMを付したブロックが記憶装置に該当する。この記憶装置は、演算部に用いられるメモリ(主記憶装置)でも良く、より大容量の情報を格納できるハードディスク(HDD)、ソリッドステートディスク(SSD)等であっても良い。また、以下の説明では、動作合成装置1は、図1のステップS2で示した動作合成処理を行う専用のハードウェアとして説明するが、CPU等の演算装置上で実行されるソフトウェア(動作合成プログラム)であっても良い。   FIG. 2 is a block diagram of the behavioral synthesis device 1 according to the first embodiment. As illustrated in FIG. 2, the behavioral synthesis device 1 includes a behavioral synthesis unit 10 and a power specification description extraction unit 20. In the behavioral synthesis device 1, a storage device is used to store data used for processing. In the example illustrated in FIG. 2, a block with a symbol M corresponds to the storage device. This storage device may be a memory (main storage device) used for the calculation unit, or may be a hard disk (HDD), a solid state disk (SSD), or the like that can store a larger amount of information. In the following description, the behavioral synthesis device 1 will be described as dedicated hardware for performing the behavioral synthesis processing shown in step S2 of FIG. 1, but software (behavioral synthesis program) executed on an arithmetic device such as a CPU. ).

動作合成部10は、記憶装置M1から動作記述を読み込む。そして、動作合成部10は、動作記述による動作を実現するデータフローグラフと、データフローグラフにより定義される演算を実現する演算器及びレジスタを決定して、演算器及びレジスタによるデータパスグラフと、データフローグラフに基づく処理順序を制御する制御回路と、を生成し、データパスグラフと制御回路とを含むRTL記述を生成する。このRTL記述は、記憶装置M2に格納される。   The behavioral synthesis unit 10 reads the behavioral description from the storage device M1. Then, the behavioral synthesis unit 10 determines a data flow graph that realizes an operation based on the behavioral description, an arithmetic unit and a register that realize an operation defined by the data flow graph, a data path graph by the arithmetic unit and the register, A control circuit for controlling the processing order based on the data flow graph is generated, and an RTL description including the data path graph and the control circuit is generated. This RTL description is stored in the storage device M2.

この動作合成部10についてさらに詳細について説明する。図2に示すように動作合成部10は、スケジューリング処理部11と、バインディング処理部12と、RTL記述生成部と、を有する。   Further details of the behavioral synthesis unit 10 will be described. As shown in FIG. 2, the behavioral synthesis unit 10 includes a scheduling processing unit 11, a binding processing unit 12, and an RTL description generation unit.

スケジューリング処理部11は、動作記述で示された演算を行うタイミングを決定する。より具体的には、スケジューリング処理部11は、動作記述による動作を複数の状態に分解して、演算をいずれの状態で行うかを示したデータフローグラフと、データフローフラグ中の状態と当該状態で用いられる変数との関係を示した状態−変数対応表とを作成する。データフローグラフと状態−変数対応表は、記憶装置M11に格納される。また、スケジューリング処理部11は、データフローグラフで示される状態の遷移過程を示す状態遷移図を生成する。有限状態マシーン(FSM:Finite State Machine)を生成する。   The scheduling processing unit 11 determines the timing for performing the operation indicated by the behavioral description. More specifically, the scheduling processing unit 11 decomposes the behavior according to the behavior description into a plurality of states, shows a data flow graph indicating in which state the operation is performed, a state in the data flow flag, and the state A state-variable correspondence table showing the relationship with the variables used in the above is created. The data flow graph and the state-variable correspondence table are stored in the storage device M11. In addition, the scheduling processing unit 11 generates a state transition diagram showing a state transition process indicated by the data flow graph. A finite state machine (FSM) is generated.

バインディング処理部12は、データフローグラフにより定義される演算を実現する演算器及びレジスタを決定して、演算器及びレジスタによるデータパスグラフと、データフローグラフに基づく処理順序を制御する制御回路と、を生成する。この制御回路は、回路の状態遷移を制御する有限状態マシーン(FSM:Finite State Machine)として実現される。また、バインディング処理部12では、データパスグラフ内のレジスタと、当該レジスタに対応する動作記述中の変数と、の関係を示す変数−レジスタ対応表を生成する。データパスグラフと変数−レジスタ対応表とは記憶装置M12に格納される。なお、データパスグラフのファイルには制御回路に関する情報も含むものとする。RTL記述生成部13は、データパスグラフと制御回路とを含むRTL記述を生成する。   The binding processing unit 12 determines an arithmetic unit and a register that realize an operation defined by the data flow graph, a data path graph by the arithmetic unit and the register, a control circuit that controls a processing order based on the data flow graph, Is generated. This control circuit is realized as a finite state machine (FSM) that controls circuit state transition. In addition, the binding processing unit 12 generates a variable-register correspondence table indicating the relationship between the registers in the data path graph and the variables in the operation description corresponding to the registers. The data path graph and the variable-register correspondence table are stored in the storage device M12. Note that the data path graph file also includes information on the control circuit. The RTL description generation unit 13 generates an RTL description including a data path graph and a control circuit.

続いて、電力仕様記述抽出部20の詳細について説明する。図2に示すように電力仕様記述抽出部20は、電力制御解析部21と、電力仕様記述生成部22とを有する。   Next, details of the power specification description extraction unit 20 will be described. As shown in FIG. 2, the power specification description extraction unit 20 includes a power control analysis unit 21 and a power specification description generation unit 22.

電力制御解析部21は、動作記述とデータフローグラフとを読み込み、動作記述中の処理属性情報からステートリテンション動作が行われる制御対象状態を示す電力制御−状態対応表を生成する。電力制御−状態対応表は記憶装置M21に格納される。   The power control analysis unit 21 reads the behavior description and the data flow graph, and generates a power control-state correspondence table indicating the control target state in which the state retention operation is performed from the processing attribute information in the behavior description. The power control-state correspondence table is stored in the storage device M21.

電力仕様記述生成部22は、電力制御−状態対応表と、状態−変数対応表と、変数−レジスタ対応表と、を読み込む。そして、電力仕様記述生成部22は、状態−変数対応表と電力制御−状態対応表とに基づき被制御変数を特定し、被制御変数に対応する被制御レジスタを変数−レジスタ対応表から特定し、被制御レジスタをリテンションレジスタとして明示する電力仕様記述を生成する。   The power specification description generation unit 22 reads a power control-state correspondence table, a state-variable correspondence table, and a variable-register correspondence table. Then, the power specification description generation unit 22 identifies the controlled variable based on the state-variable correspondence table and the power control-state correspondence table, and identifies the controlled register corresponding to the controlled variable from the variable-register correspondence table. Then, a power specification description is generated that specifies the controlled register as a retention register.

続いて、実施の形態1にかかる動作合成装置1の動作について具体例を用いて説明する。そこで、図3に動作合成装置1の動作手順を示すフローチャートを示す。また、図4に説明に用いる動作記述の例を示す。図4に示す動作記述では、1行目から3行目で入力信号と出力信号とが定義される。そして、4行目から13行目に具体的な演算が逐次演算処理として記載される。このとき、図4に示す動作記述では、8行目と10行目とに変数s1、s2が0の間は動作を待機する旨の記述がある。そして、変数s2が0以外の値になるまでの時間が長い場合(例えば、入力i7が入力されるまでの時間が長いことが仕様上判明している場合)、変数s2が0以外の値になるまでの期間は電力制御を行った方が消費電力を低減できる。このような場合、10行目の処理に対して電力仕様を作成する。そこで、本実施の形態では、動作記述中において電力仕様記述の作成を希望する箇所に処理属性情報(例えば、アトリビュート)を付加する。図4に示す例では、付加される処理属性情報を下線で明示した。以下で行う動作合成装置1では、図4で示した動作記述に基づきRTL記述及び電力仕様記述を生成する手順について説明する。   Next, the operation of the behavioral synthesis device 1 according to the first exemplary embodiment will be described using a specific example. FIG. 3 is a flowchart showing the operation procedure of the behavioral synthesis device 1. FIG. 4 shows an example of behavioral description used for explanation. In the behavioral description shown in FIG. 4, an input signal and an output signal are defined in the first to third lines. Then, specific calculations are described as sequential calculation processing from the fourth line to the thirteenth line. At this time, in the behavioral description shown in FIG. 4, there is a description in the 8th and 10th lines that the operation waits while the variables s1 and s2 are 0. When the time until the variable s2 becomes a value other than 0 is long (for example, when the specification reveals that the time until the input i7 is input is long), the variable s2 becomes a value other than 0. The power consumption can be reduced by performing the power control during the period up to. In such a case, a power specification is created for the processing on the 10th row. Therefore, in the present embodiment, processing attribute information (for example, an attribute) is added to a location where it is desired to create a power specification description in the operation description. In the example shown in FIG. 4, the process attribute information to be added is indicated by an underline. In the behavioral synthesis device 1 to be described below, a procedure for generating an RTL description and a power specification description based on the behavioral description shown in FIG. 4 will be described.

図3に示すように、動作合成装置1は、まず図4で示した動作記述を読み込む(ステップS10)。続いて、スケジューリング処理部11においてスケジューリング処理(ステップS11)が行われ、データフローグラフと変数−状態対応表が出力される。   As shown in FIG. 3, the behavioral synthesis device 1 first reads the behavioral description shown in FIG. 4 (step S10). Subsequently, scheduling processing (step S11) is performed in the scheduling processing unit 11, and a data flow graph and a variable-state correspondence table are output.

ここで、図4の動作記述に対応したデータフローグラフの例を図5に示す。図5に示したデータフローグラフは、状態ST1〜ST4を有する。図4の動作記述では5行目から7行目の処理を並列して処理可能である。そのため、状態ST1では、5行目から7行目の処理が行われる。続いて、動作記述の8行目の待機処理後の9行目の処理が状態ST2で行われる。なお、9行目の処理と並行して行うことが可能な演算はないため、状態ST2で、他の処理は行われない。続いて、動作記述の10行目の待機処理後の11行目と12行目の処理が行われるが、12行目の処理は、11行目の処理の演算結果を利用するものである。従って、状態ST3では、11行目の処理が行われる。そして、状態ST3に続く状態ST4において12行目の処理が行われる。また、図6に、図5で示したデータフローグラフに対応する状態遷移図を示す。図6に示すように、図5でデータフローグラフに基づく処理を行うためには、状態ST1、ST2において、処理が完了するまで現状態を維持する状態遷移を有する。また、図5でデータフローグラフに基づく処理では、状態ST1から状態ST4まで順に状態を遷移させる。   Here, FIG. 5 shows an example of a data flow graph corresponding to the behavioral description of FIG. The data flow graph shown in FIG. 5 has states ST1 to ST4. In the behavioral description of FIG. 4, the processing from the fifth line to the seventh line can be processed in parallel. Therefore, in the state ST1, the processing from the fifth line to the seventh line is performed. Subsequently, the process on the ninth line after the standby process on the eighth line of the behavior description is performed in the state ST2. Since there is no operation that can be performed in parallel with the process on the ninth line, no other process is performed in state ST2. Subsequently, the processing on the 11th and 12th lines after the standby processing on the 10th line of the behavior description is performed. The processing on the 12th line uses the calculation result of the processing on the 11th line. Accordingly, in the state ST3, the process on the 11th row is performed. Then, in the state ST4 following the state ST3, the process on the 12th row is performed. FIG. 6 shows a state transition diagram corresponding to the data flow graph shown in FIG. As shown in FIG. 6, in order to perform the processing based on the data flow graph in FIG. 5, the states ST1 and ST2 have state transitions that maintain the current state until the processing is completed. Further, in the processing based on the data flow graph in FIG. 5, the state is sequentially changed from the state ST1 to the state ST4.

また、状態−変数対応表の例を図7に示す。図7に示すように、図4の動作記述に基づく動作では、状態ST1において変数a、b、cが保持されている必要がある。状態ST2では、変数a、dが保持されている必要がある。状態ST3では、変数a、eが保持されている必要がある。状態ST4では、変数として保持される必要がある値はない。言い換えると、変数aは、状態ST1、ST2、ST3において保持されている必要があり、変数b、cは、状態ST1で保持されている必要があり、変数dは状態ST2で保持されている必要があり、変数eは状態ST3で保持されている必要がある。   An example of the state-variable correspondence table is shown in FIG. As shown in FIG. 7, in the operation based on the behavioral description of FIG. 4, the variables a, b, and c need to be held in the state ST1. In the state ST2, the variables a and d need to be held. In the state ST3, the variables a and e need to be held. In state ST4, there is no value that needs to be held as a variable. In other words, the variable a needs to be held in the states ST1, ST2, and ST3, the variables b and c need to be held in the state ST1, and the variable d needs to be held in the state ST2. And the variable e needs to be held in the state ST3.

続いて、動作合成装置1は、データフローグラフを読み込み(ステップS13)、バインディング処理部12によるバインディング処理を行う(ステップS14)。このバインディング処理では、データパスグラフと変数−レジスタ対応表とが出力される(ステップS15)。   Subsequently, the behavioral synthesis device 1 reads the data flow graph (step S13), and performs the binding process by the binding processing unit 12 (step S14). In this binding process, a data path graph and a variable-register correspondence table are output (step S15).

ここで、図4の動作記述に対応したデータパスグラフの例を図8に示す。図8に示す例では、データパスグラフ40と、有限状態マシーン(以下FSMと称す)30と、を示した。データパスグラフ40は、演算器として、AND回路41、OR回路42、減算器43、XOR回路44、加算器45、乗算器46、セレクタ47〜49、レジスタ50〜52を有する。ここで、データパスグラフ40では、動作記述中の5つの変数に対して3つのレジスタが対応付けられている。これは、データフローグラフの処理を行う場合に、併存する必要のない変数については、レジスタを共用した方が回路規模を抑制できるとの判断に基づきレジスタの共用化処理が行われたためである。なお、レジスタ50は変数aを格納するものであり、レジスタ51は変数b、eを格納するものであり、レジスタ52は変数c、dを格納するものである。   Here, FIG. 8 shows an example of a data path graph corresponding to the behavioral description of FIG. In the example shown in FIG. 8, a data path graph 40 and a finite state machine (hereinafter referred to as FSM) 30 are shown. The data path graph 40 includes an AND circuit 41, an OR circuit 42, a subtractor 43, an XOR circuit 44, an adder 45, a multiplier 46, selectors 47 to 49, and registers 50 to 52 as arithmetic units. Here, in the data path graph 40, three registers are associated with five variables in the behavioral description. This is because, for variables that do not need to coexist when data flow graph processing is performed, register sharing processing is performed based on the determination that the circuit scale can be reduced by sharing the registers. The register 50 stores the variable a, the register 51 stores the variables b and e, and the register 52 stores the variables c and d.

AND回路41は、動作記述の5行目の演算に対応して設けられるものであり、入力i1と入力i2との論理積を出力する。OR回路42は、動作記述の6行目の演算に対応して設けられるものであり、入力i3と入力i4との論理和を出力する。減算器43は、動作記述の11行目の演算に対応して設けられるものであり、変数dから入力i7を減算した値を出力する。XOR回路44は、動作記述の7行目の演算に対応して設けられるものであり、入力i5と入力i6の排他的論理和を出力する。加算器45は、動作記述の9行目の演算に対応して設けられるものであり、変数bに変数cを加算して出力する。乗算器46は、動作記述の12行目の動作に対応して設けられるものであり、変数aに変数eを加算して出力値o1として出力する。また、FSM30は、レジスタ31を有する。FSM30は、レジスタ31の値に基づきセレクタ47〜49がいずれの入力を選択するかを制御する。レジスタ50〜52は、セレクタ47〜49が出力した値を格納する。   The AND circuit 41 is provided corresponding to the operation on the fifth line of the behavioral description, and outputs a logical product of the input i1 and the input i2. The OR circuit 42 is provided corresponding to the operation on the sixth line of the behavioral description, and outputs a logical sum of the input i3 and the input i4. The subtracter 43 is provided corresponding to the calculation on the eleventh line of the behavioral description, and outputs a value obtained by subtracting the input i7 from the variable d. The XOR circuit 44 is provided corresponding to the operation on the seventh line of the behavioral description, and outputs an exclusive OR of the input i5 and the input i6. The adder 45 is provided corresponding to the calculation on the ninth line of the behavioral description, and adds the variable c to the variable b and outputs it. The multiplier 46 is provided corresponding to the action on the 12th line of the action description, adds the variable e to the variable a, and outputs the result as an output value o1. Further, the FSM 30 has a register 31. The FSM 30 controls which input the selectors 47 to 49 select based on the value of the register 31. The registers 50 to 52 store values output from the selectors 47 to 49.

また、図8のデータパスグラフに基づき生成された変数−レジスタ対応表の一例を図9に示す。図9に示すように、図8のデータパスグラフでは、レジスタ50(a_reg)が変数aに対応し、レジスタ51(b_e_reg)が変数b、eに対応し、レジスタ52(c_d_reg)が変数c、dに対応していることを示している。   FIG. 9 shows an example of the variable-register correspondence table generated based on the data path graph of FIG. As shown in FIG. 9, in the data path graph of FIG. 8, the register 50 (a_reg) corresponds to the variable a, the register 51 (b_e_reg) corresponds to the variables b and e, and the register 52 (c_d_reg) corresponds to the variable c, It corresponds to d.

続いて、動作合成装置1は、データフローグラフとデータパスグラフとを読み込み(ステップS16)、RTL記述生成部13によるRTL記述生成処理を行う(ステップS17)。このRTL記述生成処理では、RTL記述が出力される(ステップS18)。続いて、動作合成装置1では、電力仕様記述抽出部20の動作が開始される。電力仕様記述抽出部20は、動作記述とデータフローグラフとを読み込み(ステップS20)、電力制御解析処理を行う(ステップS21)。この電力制御解析処理では、電力制御−状態対応表が出力される(ステップS22)。   Subsequently, the behavioral synthesis device 1 reads the data flow graph and the data path graph (step S16), and performs RTL description generation processing by the RTL description generation unit 13 (step S17). In this RTL description generation process, the RTL description is output (step S18). Subsequently, in the behavioral synthesis device 1, the operation of the power specification description extraction unit 20 is started. The power specification description extraction unit 20 reads the operation description and the data flow graph (step S20), and performs power control analysis processing (step S21). In this power control analysis process, a power control-state correspondence table is output (step S22).

ここで、図4の動作記述に基づき生成される電力制御−状態対応表の例を図10に示す。図4に動作記述では、10行目に処理属性情報が付されている。この10行目の処理は状態ST2の処理に対応することがデータフローグラフと動作記述より導きさせる。従って、図10に示す電力制御−状態対応表では、状態ST2に対応してステートリテンション動作が行われるべきことが示される。   Here, FIG. 10 shows an example of a power control-state correspondence table generated based on the behavioral description of FIG. In the behavioral description in FIG. 4, processing attribute information is attached to the 10th line. The processing of the 10th line corresponds to the processing of the state ST2 from the data flow graph and the operation description. Therefore, the power control-state correspondence table shown in FIG. 10 indicates that the state retention operation should be performed corresponding to the state ST2.

続いて、動作合成装置1は、変数−状態対応表と、変数−レジスタ対応表と、電力制御−状態対応表とを読み込み(ステップS23)、電力仕様記述生成部22による電力仕様記述生成処理を行う(ステップS24)。この電力仕様記述生成処理では、電力仕様記述が出力される(ステップS25)。   Subsequently, the behavioral synthesis device 1 reads the variable-state correspondence table, the variable-register correspondence table, and the power control-state correspondence table (step S23), and performs power specification description generation processing by the power specification description generation unit 22. It performs (step S24). In this power specification description generation process, a power specification description is output (step S25).

ここで、図4の動作記述に基づき生成される電力仕様記述の一例を図11に示す。図10に示す電力制御−状態対応表より、状態ST2が本動作例における制御対象状態であることわかる。そして、図7に示す状態−変数対応表より、状態ST2において変数a、dがステートリテンション動作の対象となる被制御変数であることがわかる。さらに、図9に示す変数−レジスタ対応表より、被制御変数である変数a、dには、それぞれレジスタ50(a_reg)とレジスタ52(c_d_reg)とが対応することがわかる。このようなことから、本動作例にかかる電力仕様記述では、インスタンスa_reg、c_d_reg、fsm_regとして、ステートリテンションレジスタ(例えば、ライブラリst_ret_1で定義されるレジスタ)を利用することが記述される。   Here, an example of the power specification description generated based on the operation description of FIG. 4 is shown in FIG. From the power control-state correspondence table shown in FIG. 10, it can be seen that the state ST2 is the state to be controlled in this operation example. From the state-variable correspondence table shown in FIG. 7, it can be seen that in the state ST2, the variables a and d are controlled variables that are targets of the state retention operation. Furthermore, it can be seen from the variable-register correspondence table shown in FIG. 9 that the variables a and d, which are controlled variables, correspond to the register 50 (a_reg) and the register 52 (c_d_reg), respectively. For this reason, in the power specification description according to this operation example, it is described that a state retention register (for example, a register defined in the library st_ret_1) is used as the instances a_reg, c_d_reg, and fsm_reg.

上記説明より、実施の形態1にかかる動作合成装置1では、動作記述に含まれる処理属性情報に基づき、当該処理属性情報が付された処理に付随する被制御変数を特定する。さらに、動作合成装置1では、データパスグラフ上のレジスタのうち当該被制御変数に対応する被制御レジスタを特定することができる。つまり、実施の形態1にかかる動作合成装置1によれば、従来動作合成処理において動作記述から合成されるRTL記述上で特定できなかった所定の変数に対応するレジスタを特定することが可能になる。さらに、動作合成装置1によれば、当該特定したレジスタに基づきステートリテンション動作に用いるレジスタを記載した電力仕様記述を生成することができる。   From the above description, the behavioral synthesis device 1 according to the first exemplary embodiment specifies the controlled variable associated with the process to which the process attribute information is attached based on the process attribute information included in the behavioral description. Furthermore, the behavioral synthesis device 1 can specify a controlled register corresponding to the controlled variable among the registers on the data path graph. That is, according to the behavioral synthesis device 1 according to the first exemplary embodiment, it is possible to identify a register corresponding to a predetermined variable that could not be identified on the RTL description synthesized from the behavioral description in the conventional behavioral synthesis process. . Furthermore, according to the behavioral synthesis device 1, it is possible to generate a power specification description describing a register used for the state retention operation based on the specified register.

このように、動作記述からRTL記述とRTL記述に対応する電力仕様記述とを生成することで、低消費電力な半導体装置の設計を実現することができる。また、動作記述に基づき電力仕様記述を自動的に生成できることから低消費電力な半導体装置の設計にかかる手順を簡略化し、設計期間を短縮することができる。   As described above, by generating the RTL description and the power specification description corresponding to the RTL description from the behavior description, the design of the semiconductor device with low power consumption can be realized. Further, since the power specification description can be automatically generated based on the operation description, the procedure for designing a low power consumption semiconductor device can be simplified and the design period can be shortened.

また、従来の動作合成方法では、1つのレジスタに複数の変数を割り当てることで、回路規模を削減することが行われていた。このような場合、ステートリテンション動作で必要なレジスタを特定することが極めて難しくなる。しかしながら、実施の形態1にかかる動作合成装置1によれば、RTL記述の生成過程において、レジスタと変数との関係を明確に特定できるため、従来の動作合成方法のように、レジスタがどの変数に対応しているかが特定できなくなる不具合はない。このようなことから、実施の形態1にかかる動作合成装置1によれば、回路規模を抑制しながら、ステートリテンション動作に対応した半導体装置を効率よく設計できる。   In the conventional behavioral synthesis method, the circuit scale is reduced by assigning a plurality of variables to one register. In such a case, it becomes extremely difficult to specify a register necessary for the state retention operation. However, according to the behavioral synthesis device 1 according to the first exemplary embodiment, since the relationship between the register and the variable can be clearly specified in the generation process of the RTL description, the register is assigned to which variable as in the conventional behavioral synthesis method. There is no defect that makes it impossible to determine whether it is compatible. For this reason, according to the behavioral synthesis device 1 according to the first embodiment, it is possible to efficiently design a semiconductor device corresponding to the state retention operation while suppressing the circuit scale.

なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。   Note that the present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention.

1 動作合成装置
10 動作合成部
11 スケジューリング処理部
12 バインディング処理部
13 RTL記述生成部
20 電力仕様記述抽出部
21 電力制御解析部
22 電力仕様記述生成部
30 有限状態マシーン
31 レジスタ
40 データパスグラフ
41 AND回路
42 OR回路
43 減算器
44 XOR回路
45 加算器
46 乗算器
47〜49 セレクタ
50〜52 レジスタ
DESCRIPTION OF SYMBOLS 1 Behavior synthesizer 10 Behavior synthesizer 11 Scheduling processor 12 Binding processor 13 RTL description generator 20 Power specification description extractor 21 Power control analyzer 22 Power specification description generator 30 Finite state machine 31 Register 40 Data path graph 41 AND Circuit 42 OR circuit 43 Subtractor 44 XOR circuit 45 Adder 46 Multiplier 47 to 49 Selector 50 to 52 Register

Claims (9)

動作記述からRTL(Register Transfer Level)記述を生成する動作合成装置であって、
前記動作記述による動作を実現するデータフローグラフと、前記データフローグラフにより定義される演算を実現する演算器及びレジスタを決定して前記演算器及び前記レジスタによるデータパスグラフと、前記データフローグラフに基づく処理順序を制御する制御回路と、を生成し、前記データパスグラフと前記制御回路とを含むRTL記述を生成する動作合成部と、
前記動作記述に含まれる処理属性情報によりステートリテンション動作に必要な被制御変数を特定し、前記データパスグラフの前記レジスタに関する情報に基づき前記被制御変数に対応するリテンションレジスタを特定し、前記リテンションレジスタを含む電力仕様記述を生成する電力仕様記述抽出部と、
を有する動作合成装置。
A behavioral synthesis device for generating an RTL (Register Transfer Level) description from a behavior description,
A data flow graph that realizes an operation according to the behavioral description, an arithmetic unit and a register that realize an operation defined by the data flow graph, a data path graph by the arithmetic unit and the register, and a data flow graph A control circuit that controls a processing order based on the behavioral synthesis unit that generates an RTL description including the data path graph and the control circuit;
The controlled variable required for the state retention operation is specified by the processing attribute information included in the behavior description, the retention register corresponding to the controlled variable is specified based on the information about the register of the data path graph, and the retention register A power specification description extractor that generates a power specification description including
A behavioral synthesis device.
前記動作合成部は、
前記データフローグラフと共に、データフローグラフ中の状態と前記動作記述中の変数とを関連付ける状態−変数対応表を生成し、
前記データパスグラフと共に前記データパスグラフ中のレジスタと前記動作記述中の変数とを関連付ける変数−レジスタ対応表を生成する請求項1に記載の動作合成装置。
The behavioral synthesis unit
Along with the data flow graph, a state-variable correspondence table that associates the state in the data flow graph with the variable in the behavior description is generated,
The behavioral synthesis apparatus according to claim 1, wherein a variable-register correspondence table that associates a register in the data path graph with a variable in the behavioral description together with the data path graph is generated.
前記電力仕様記述抽出部は、
前記処理属性情報から前記ステートリテンション動作が行われる制御対象状態を示す電力制御−状態対応表を生成し、
前記状態−変数対応表と前記電力制御−状態対応表とに基づき前記被制御変数を特定し、
前記被制御変数に対応する被制御レジスタを前記変数−レジスタ対応表から特定し、
被制御レジスタを前記リテンションレジスタとして明示する前記電力仕様記述を生成する請求項2に記載の動作合成装置。
The power specification description extraction unit
Generating a power control-state correspondence table indicating a control target state in which the state retention operation is performed from the processing attribute information;
Identifying the controlled variable based on the state-variable correspondence table and the power control-state correspondence table;
A controlled register corresponding to the controlled variable is identified from the variable-register correspondence table;
The behavioral synthesis device according to claim 2, wherein the power specification description that specifies a controlled register as the retention register is generated.
動作記述からRTL(Register Transfer Level)記述を生成する動作合成方法であって、
前記動作記述による動作を実現するデータフローグラフと、前記データフローグラフにより定義される演算を実現する演算器及びレジスタを決定して前記演算器及び前記レジスタによるデータパスグラフと、前記データフローグラフに基づく処理順序を制御する制御回路と、を生成し、
前記データパスグラフと前記制御回路とを含むRTL記述を生成し、
前記動作記述に含まれる処理属性情報によりステートリテンション動作に必要な被制御変数を特定し、
前記データパスグラフの前記レジスタに関する情報に基づき前記被制御変数に対応するリテンションレジスタを特定し、
前記リテンションレジスタを含む電力仕様記述を生成する動作合成方法。
A behavioral synthesis method for generating an RTL (Register Transfer Level) description from a behavior description,
A data flow graph that realizes an operation according to the behavioral description, an arithmetic unit and a register that realize an operation defined by the data flow graph, a data path graph by the arithmetic unit and the register, and a data flow graph And a control circuit for controlling the processing order based on
Generating an RTL description including the data path graph and the control circuit;
Identify controlled variables required for state retention behavior from the processing attribute information included in the behavior description,
Identifying a retention register corresponding to the controlled variable based on information about the register of the data path graph;
A behavioral synthesis method for generating a power specification description including the retention register.
前記データフローグラフと共に、データフローグラフ中の状態と前記動作記述中の変数とを関連付ける状態−変数対応表を生成し、
前記データパスグラフと共に前記データパスグラフ中のレジスタと前記動作記述中の変数とを関連付ける変数−レジスタ対応表を生成する請求項4に記載の動作合成方法。
Along with the data flow graph, a state-variable correspondence table that associates the state in the data flow graph with the variable in the behavior description is generated,
5. The behavioral synthesis method according to claim 4, wherein a variable-register correspondence table that associates a register in the data path graph with a variable in the behavior description together with the data path graph.
前記処理属性情報から前記ステートリテンション動作が行われる制御対象状態を示す電力制御−状態対応表を生成し、
前記状態−変数対応表と前記電力制御−状態対応表とに基づき前記被制御変数を特定し、
前記被制御変数に対応する被制御レジスタを前記変数−レジスタ対応表から特定し、
被制御レジスタを前記リテンションレジスタとして明示する前記電力仕様記述を生成する請求項5に記載の動作合成方法。
Generating a power control-state correspondence table indicating a control target state in which the state retention operation is performed from the processing attribute information;
Identifying the controlled variable based on the state-variable correspondence table and the power control-state correspondence table;
A controlled register corresponding to the controlled variable is identified from the variable-register correspondence table;
The behavioral synthesis method according to claim 5, wherein the power specification description that specifies a controlled register as the retention register is generated.
演算装置において実行され、記憶装置に格納された動作記述からRTL(Register Transfer Level)記述を生成し、前記RTL記述を前記記憶装置に格納する動作合成プログラムであって、
前記記憶装置から前記動作記述を読み込み、
前記動作記述による動作を実現するデータフローグラフと、前記データフローグラフにより定義される演算を実現する演算器及びレジスタを決定して前記演算器及び前記レジスタによるデータパスグラフと、前記データフローグラフに基づく処理順序を制御する制御回路と、を生成し、
前記データパスグラフと前記制御回路とを含むRTL記述を生成して前記記憶装置に格納し、
前記動作記述に含まれる処理属性情報によりステートリテンション動作に必要な被制御変数を特定し、
前記データパスグラフの前記レジスタに関する情報に基づき前記被制御変数に対応するリテンションレジスタを特定し、
前記リテンションレジスタを含む電力仕様記述を生成して、前記電力仕様記述を前記記憶装置に格納する動作合成プログラム。
A behavioral synthesis program that generates an RTL (Register Transfer Level) description from a behavioral description that is executed in an arithmetic device and is stored in a storage device, and stores the RTL description in the storage device,
Reading the behavior description from the storage device;
A data flow graph that realizes an operation according to the behavioral description, an arithmetic unit and a register that realize an operation defined by the data flow graph, a data path graph by the arithmetic unit and the register, and a data flow graph And a control circuit for controlling the processing order based on
An RTL description including the data path graph and the control circuit is generated and stored in the storage device;
Identify controlled variables required for state retention behavior from the processing attribute information included in the behavior description,
Identifying a retention register corresponding to the controlled variable based on information about the register of the data path graph;
A behavioral synthesis program for generating a power specification description including the retention register and storing the power specification description in the storage device.
前記データフローグラフと共に、データフローグラフ中の状態と前記動作記述中の変数とを関連付ける状態−変数対応表を生成し、
前記データパスグラフと共に前記データパスグラフ中のレジスタと前記動作記述中の変数とを関連付ける変数−レジスタ対応表を生成する請求項7に記載の動作合成プログラム。
Along with the data flow graph, a state-variable correspondence table that associates the state in the data flow graph with the variable in the behavior description is generated,
8. The behavioral synthesis program according to claim 7, wherein a variable-register correspondence table that associates a register in the data path graph with a variable in the behavioral description together with the data path graph is generated.
前記処理属性情報から前記ステートリテンション動作が行われる制御対象状態を示す電力制御−状態対応表を生成し、
前記状態−変数対応表と前記電力制御−状態対応表とに基づき前記被制御変数を特定し、
前記被制御変数に対応する被制御レジスタを前記変数−レジスタ対応表から特定し、
被制御レジスタを前記リテンションレジスタとして明示する前記電力仕様記述を生成する請求項8に記載の動作合成プログラム。
Generating a power control-state correspondence table indicating a control target state in which the state retention operation is performed from the processing attribute information;
Identifying the controlled variable based on the state-variable correspondence table and the power control-state correspondence table;
A controlled register corresponding to the controlled variable is identified from the variable-register correspondence table;
The behavioral synthesis program according to claim 8, wherein the power specification description that specifies a controlled register as the retention register is generated.
JP2011018664A 2011-01-31 2011-01-31 Behavioral synthesis device, behavioral synthesis method and behavioral synthesis program Pending JP2012159977A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011018664A JP2012159977A (en) 2011-01-31 2011-01-31 Behavioral synthesis device, behavioral synthesis method and behavioral synthesis program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011018664A JP2012159977A (en) 2011-01-31 2011-01-31 Behavioral synthesis device, behavioral synthesis method and behavioral synthesis program

Publications (1)

Publication Number Publication Date
JP2012159977A true JP2012159977A (en) 2012-08-23

Family

ID=46840468

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011018664A Pending JP2012159977A (en) 2011-01-31 2011-01-31 Behavioral synthesis device, behavioral synthesis method and behavioral synthesis program

Country Status (1)

Country Link
JP (1) JP2012159977A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107844329A (en) * 2017-11-17 2018-03-27 上海华虹集成电路有限责任公司 A kind of method of system power modes switching

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259683A (en) * 1999-03-04 2000-09-22 Nec Corp Logical simulation method and system
JP2006285333A (en) * 2005-03-31 2006-10-19 Nec Corp Operation composition device and method
JP2006285865A (en) * 2005-04-04 2006-10-19 Nec Electronics Corp Correspondence relation specification method, device and program between register transfer level description and operation description

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259683A (en) * 1999-03-04 2000-09-22 Nec Corp Logical simulation method and system
JP2006285333A (en) * 2005-03-31 2006-10-19 Nec Corp Operation composition device and method
JP2006285865A (en) * 2005-04-04 2006-10-19 Nec Electronics Corp Correspondence relation specification method, device and program between register transfer level description and operation description

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107844329A (en) * 2017-11-17 2018-03-27 上海华虹集成电路有限责任公司 A kind of method of system power modes switching

Similar Documents

Publication Publication Date Title
US10691856B1 (en) System design flow with runtime customizable circuits
US8656337B2 (en) Optimization method and device for netlist used in logic circuit design for semiconductor integrated circuit
KR20190022858A (en) Controlling the operation speed of the stage of the asynchronous pipeline
JP2010238054A (en) Apparatus for supporting semiconductor design, high-order synthesis method and program for supporting semiconductor design
US9824172B1 (en) Performance of circuitry generated using high-level synthesis
US9710584B1 (en) Performance of circuitry generated using high-level synthesis
JP2007213265A (en) Device and method for operation synthesis, method for manufacturing digital circuit, operation synthesis control program, and readable storage medium
TWI503685B (en) Systems and methods of electronic design automation
JP5632651B2 (en) Semiconductor circuit and design apparatus
US9965581B1 (en) Fanout optimization to facilitate timing improvement in circuit designs
JP2012159977A (en) Behavioral synthesis device, behavioral synthesis method and behavioral synthesis program
JP4756002B2 (en) Semiconductor integrated circuit design support apparatus, design support method thereof, manufacturing method thereof, program, and recording medium
JP5262435B2 (en) Circuit design apparatus and circuit design method
JP2006268165A (en) Timing analyzing device for integrated circuit, timing optimizing device for integrated circuit, timing analyzing method for integrated circuit, timing optimizing method for integrated circuit, method for manufacturing integrated circuit board, control program and readable recording medium
US20160246601A1 (en) Technique for translating dependent instructions
JP2018041301A (en) RTL optimization system and RTL optimization program
JP5541011B2 (en) Optimized netlist creation program, optimized netlist creation device, and optimized netlist creation method
JP5143061B2 (en) Semiconductor integrated circuit design support system and program
JP6468743B2 (en) Information processing apparatus and control method thereof
US10157164B2 (en) Hierarchical synthesis of computer machine instructions
JP6266183B2 (en) Circuit design support device and circuit design support program
JP2011022863A (en) Apparatus and method for synthesizing action
JP2014095955A (en) Design device and design method for semiconductor integrated circuit
Sotiriou-Xanthopoulos et al. A reconfigurable ip characterization technique improving high-level synthesis results
JP2010205084A (en) Operation synthesis system, operation synthesis method and operation synthesis program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130919

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140410

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140507

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140909