JPH11102381A - アーキテクチャ動作合成装置、アーキテクチャ動作合成方法、プロセッサの設計方法およびプロセッサのアーキテクチャ動作記述方法 - Google Patents

アーキテクチャ動作合成装置、アーキテクチャ動作合成方法、プロセッサの設計方法およびプロセッサのアーキテクチャ動作記述方法

Info

Publication number
JPH11102381A
JPH11102381A JP9263147A JP26314797A JPH11102381A JP H11102381 A JPH11102381 A JP H11102381A JP 9263147 A JP9263147 A JP 9263147A JP 26314797 A JP26314797 A JP 26314797A JP H11102381 A JPH11102381 A JP H11102381A
Authority
JP
Japan
Prior art keywords
description
architecture
processor
circuit
data path
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
JP9263147A
Other languages
English (en)
Inventor
裕司 ▲高▼井
Yuji Takai
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 JP9263147A priority Critical patent/JPH11102381A/ja
Publication of JPH11102381A publication Critical patent/JPH11102381A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 非アルゴリズム的な動作を含むプロセッサの
動作を記述するアーキテクチャ動作記述から論理合成可
能なRTL記述を生成可能とすることを目的とする。 【解決手段】 回路分割部10がプロセッサのアーキテ
クチャの動作を記述するアーキテクチャ動作記述1を入
力とし回路の動作の特徴に応じて回路を分割しデータパ
ス回路記述21とコントロール回路記述22とインタフ
ェース回路記述23を生成することによりプロセッサの
動作を記述するアーキテクチャ動作記述から論理合成可
能なRTL記述を生成する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、マイクロプロセッ
サの動作を記述するアーキテクチャ動作記述からの論理
合成可能な記述を生成することを可能とするアーキテク
チャ動作合成装置およびその方法とプロセッサ回路およ
びプロセッサの設計方法およびプロセッサのアーキテク
チャ動作記述方法に関する。
【0002】
【従来の技術】近年、設計期間を短縮するために、RT
L(レジスタトランスファーレベル)記述から実際の回
路を生成する論理合成が多く用いられる。
【0003】ところが、信号処理、画像処理等に代表さ
れるアルゴリズム的なアプリケーションは、膨大なデー
タ処理が必要であり、また処理のアルゴリズムが複雑で
あるため、RTL記述を作成すること自体が困難であ
る。
【0004】このため、ハードウェアを意識する必要が
なく目的とする動作のみを記述すれば足りる動作記述を
用いて設計し、動作合成ツールを用いてRTL記述を生
成する設計手法が用いられるようになってきた。
【0005】一般に、動作記述からRTL記述への合成
方法として、次の2つの方法がある。 (1)リソースの割り当ておよび処理時間を含まない形
式で、アルゴリズムを記述する動作記述からRTL記述
を合成する動作合成方法 (2)クロックを明確に意識したサイクルアキュレート
な動作記述によるステートマシンの動作記述からRTL
記述を合成する動作合成方法 (1)の方法をとるツールとしては、シノプシス社(Syn
opsys社)のビヘイビアラルコンパイラ(Behavioral Comp
iler)がある。(2)の方法をとるツールとしては、デ
イシス社(DASYS社)のラピッドパス(RapidPath)がある。
【0006】
【発明が解決しようとする課題】しかしながら、上記従
来の方法では、非アルゴリズム的な動作や非ステートマ
シン動作を含むプロセッサの動作を記述した動作記述を
RTL記述に合成できなかった。
【0007】上記問題点に鑑み、本発明は、上記従来の
問題点を解決するもので、非アルゴリズム的な動作およ
び非ステートマシン動作を含むプロセッサの動作記述か
らRTL記述を合成するアーキテクチャ動作合成装置を
提供することを目的とする。
【0008】
【課題を解決するための手段】上記課題を解決するため
に本発明に係るアーキテクチャ動作合成装置は、プロセ
ッサのアーキテクチャの動作を記述するアーキテクチャ
動作記述を入力とし、前記アーキテクチャ動作記述の内
部の動作の特徴に応じて前記アーキテクチャ動作記述を
分割し、論理合成可能な記述を生成する回路分割部を備
えることを特徴とする。
【0009】これにより、プロセッサの設計において、
論理合成可能なRTL記述よりも抽象度の高い記述から
の論理合成可能な記述を生成することが可能となる。
【0010】前記回路分割部は、アーキテクチャ動作記
述を入力として、前記アーキテクチャ動作記述を解析し
動作の特徴に応じて、データパス回路を分割しデータパ
ス回路記述を生成するデータパス回路分割部と、コント
ロール回路を分割しコントロール回路記述を生成するコ
ントロール回路分割部と、前記データパス回路と、前記
コントロール回路と、前記アーキテクチャ動作記述に含
まれるメモリ回路と、外部との信号の入出力を行う入出
力ピンとの間でインタフェースを行うインタフェース回
路に分割しインタフェース回路記述を生成するインタフ
ェース回路生成部とを有しているとしてもよい。
【0011】これにより、論理合成可能なRTL記述よ
りも抽象度の高い記述から、動作の特徴に応じてデータ
パス的動作に対してはデータパスコンパイラ向きのデー
タパス回路記述を生成可能であり、制御的動作に対して
はランダムロジック用の論理合成向きのコントロール回
路記述を生成可能であり、前記生成されたデータパス回
路記述と前記生成されたコントロール回路とアーキテク
チャ動作記述に含まれるメモリ回路と入出力ピンとのリ
ンクに必要なインタフェース回路を生成可能となる。
【0012】また前記アーキテクチャ動作記述は、プロ
セッサにおいて信号値を格納する手段と信号間での演算
を行なう演算手段から構成されるリソースに関する情報
を記述するリソース情報記述部と、プロセッサの命令パ
イプラインの各パイプラインステージでの動作を記述す
るパイプラインステージ動作記述部と、プロセッサのパ
イプライン動作を記述するパイプライン動作記述部と、
プロセッサへの割り込み動作を記述する割り込み動作記
述部とから構成されるとしてもよい。
【0013】これにより、プロセッサのアーキテクチャ
動作記述をプロセッサの基本動作を明確に切り分けて容
易に記述することが可能である。
【0014】また本発明に係るアーキテクチャ動作合成
方法は、プロセッサのアーキテクチャの動作を記述する
アーキテクチャ動作記述からデータパス系の動作を抽出
しデータパス回路記述を生成するデータパス回路分割工
程と、前記アーキテクチャ動作記述から制御系の動作を
抽出しコントロール回路記述を生成するコントロール回
路分割工程と、前記アーキテクチャ動作記述からメモリ
回路を抽出しメモリ回路記述と外部との信号の入出力の
ための入出力ピン情報とを生成し、前記データパス回路
分割工程で生成されたデータパス回路記述と前記コント
ロール回路分割工程で生成されたコントロール回路記述
と前記生成されたメモリ回路記述と前記生成された入出
力ピン情報とをリンクするインタフェース回路記述を生
成するインタフェース回路生成工程とを有することを特
徴とする。
【0015】これにより、論理合成可能なRTL記述よ
りも抽象度の高い記述から、動作の特徴に応じてデータ
パス的動作に対してはデータパスコンパイラ向きのデー
タパス回路記述を生成可能であり、制御的動作に対して
はランダムロジック用の論理合成向きのコントロール回
路記述を生成可能であり、前記生成されたデータパス回
路記述と前記生成されたコントロール回路とアーキテク
チャ動作記述に含まれるメモリ回路と入出力ピンとのリ
ンクに必要なインタフェース回路を生成可能となる。
【0016】前記アーキテクチャ動作記述は、プロセッ
サにおいて信号値を格納する手段と信号間での演算を行
なう演算手段から構成されるリソースに関する情報を記
述するリソース情報記述部と、プロセッサの命令パイプ
ラインの各パイプラインステージでの動作を記述するパ
イプラインステージ動作記述部と、プロセッサのパイプ
ライン動作を記述するパイプライン動作記述部と、プロ
セッサへの割り込み動作を記述する割り込み動作記述部
とから構成されるとしてもよい。
【0017】これにより、プロセッサのアーキテクチャ
の動作を記述するアーキテクチャ動作記述をプロセッサ
の基本動作を明確に切り分けて容易に記述可能であり、
切り分けられたアーキテクチャ動作記述からプロセッサ
の動作の特徴を解析容易となる。
【0018】さらに本発明に係るプロセッサの設計方法
は、プロセッサのアーキテクチャの動作を記述するアー
キテクチャ動作記述を記述するアーキテクチャ動作記述
作成工程と、前記アーキテクチャ動作記述の動作検証を
行なう動作検証工程と、前記アーキテクチャ動作記述を
用いてアーキテクチャの性能評価を行なう性能評価工程
と、前記アーキテクチャ動作記述を入力とし論理合成可
能な記述を生成するアーキテクチャ動作合成工程とを有
し、前記アーキテクチャ動作合成工程は、プロセッサの
アーキテクチャの動作を記述するアーキテクチャ動作記
述からデータパス系の動作を抽出しデータパス回路記述
を生成するデータパス回路分割工程と、前記アーキテク
チャ動作記述から制御系の動作を抽出しコントロール回
路記述を生成するコントロール回路分割工程と、前記ア
ーキテクチャ動作記述からメモリ回路を抽出しメモリ回
路記述と外部との信号の入出力のための入出力ピン情報
とを生成し、前記データパス回路分割工程で生成された
データパス回路記述と前記コントロール回路分割工程で
生成されたコントロール回路記述と前記生成されたメモ
リ回路記述と前記生成された入出力ピン情報とをリンク
するインタフェース回路記述を生成するインタフェース
回路生成工程とからなることを特徴とする。
【0019】これにより、RTL記述より抽象度の高い
アーキテクチャ動作記述を用いてプロセッサの動作検証
と性能評価とアーキテクチャ動作記述から合成可能なR
TL記述を生成可能となる。
【0020】前記アーキテクチャ動作記述は、プロセッ
サにおいて信号値を格納する手段と信号間での演算を行
なう演算手段から構成されるリソースに関する情報を記
述するリソース情報記述部と、プロセッサの命令パイプ
ラインの各パイプラインステージでの動作を記述するパ
イプラインステージ動作記述部と、プロセッサのパイプ
ライン動作を記述するパイプライン動作記述部と、プロ
セッサへの割り込み動作を記述する割り込み動作記述部
とから構成されるとしてもよい。
【0021】これにより、プロセッサのアーキテクチャ
の動作を記述するアーキテクチャ動作記述をプロセッサ
の基本動作を明確に切り分けて容易に記述可能であり、
切り分けられたアーキテクチャ動作記述からプロセッサ
の動作の特徴を解析容易となる。
【0022】また本発明に係るプロセッサのアーキテク
チャ動作記述方法は、プロセッサのアーキテクチャの動
作を記述するアーキテクチャ動作記述方法において、プ
ロセッサにおいて信号値を格納する手段と信号間での演
算を行なう演算手段から構成されるリソースに関する情
報を記述するリソース情報記述ステップと、プロセッサ
の命令パイプラインの各パイプラインステージでの動作
を記述するパイプラインステージ動作記述ステップと、
プロセッサのパイプライン動作を記述するパイプライン
動作記述ステップと、プロセッサへの割り込み動作を記
述する割り込み動作記述ステップとを有することを特徴
とする。
【0023】これにより、プロセッサの動作をRTL記
述より抽象度の高い記述形式で容易かつ明確にプロセッ
サの動作を記述可能となる。
【0024】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照しながら説明する。
【0025】この実施の形態は、従来と同じアーキテク
チャ動作記述を解析・分割することにより、アーキテク
チャ動作合成を可能とするものである。 (アーキテクチャ合成装置)図1は本発明の実施の形態
に係わるアーキテクチャ動作合成装置のブロック構成図
である。図1において、1はプロセッサの目的とする動
作を記述したアーキテクチャ動作記述であり、10はデ
ータパス回路分割部11とコントロール回路分割部12
とインタフェース回路生成部13とから構成され、アー
キテクチャ動作記述1を入力としてアーキテクチャ動作
記述1を解析し、データパス回路とコントロール回路と
インタフェース回路とに分割する回路分割部であり、デ
ータパス回路分割部11は、アーキテクチャ動作記述1
を入力とし、アーキテクチャ動作記述1を解析し、記述
からデータパス回路部分を抽出し、データパスコンパイ
ラ向きのデータパス回路を生成する。なお、データパス
回路部分は、主に信号の演算を行う回路で構成される。
コントロール回路分割部12は、アーキテクチャ動作記
述1を入力とし、アーキテクチャ動作記述1を解析し、
記述からコントロール回路部分を抽出し、論理合成向き
のコントロール回路を生成する。なお、コントロール回
路部分は、プロセッサの回路全体の制御を行う回路であ
る。インタフェース回路生成部13は、アーキテクチャ
動作記述1を入力とし、アーキテクチャ動作記述1を解
析し、記述からメモリ回路を抽出し、メモリ回路を生成
し、またデータパス回路分割部11で生成されるデータ
パス回路とコントロール回路分割部12で生成されるコ
ントロール回路とアーキテクチャ動作記述1に含まれる
メモリ回路と外部との信号のやり取りを行う入出力ピン
との接続に必要なインタフェース回路を生成する。な
お、入出力ピンには、入力ピン、出力ピン、双方向ピン
が含まれ、また外部との信号のやり取りの内容には、外
部割り込み、外部メモリ、外部の周辺装置とのデータの
やり取りが含まれる。
【0026】20は、回路分割部10により生成された
RTL記述であり、データパス回路記述21とコントロ
ール回路記述22とインタフェース回路記述23から構
成される。データパス回路記述21は、データパス回路
分割部11により生成され、アーキテクチャ動作記述1
のデータパス回路部分を記述している。データパス回路
記述21は、演算器、データレジスタ等のリソースを含
むデータを演算処理する回路部分に相当する記述であ
る。コントロール回路記述22は、コントロール回路分
割部12により生成され、アーキテクチャ動作記述1の
コントロール回路部分を記述している。コントロール回
路記述22は、デコーダ回路、パイプライン制御、割り
込み回路等のデータパスを制御する回路部分に相当する
記述である。インタフェース回路記述23は、インタフ
ェース回路生成部13により生成され、アーキテクチャ
動作記述1に含まれるメモリ回路部分とデータパス回路
記述21とコントロール回路記述22とアーキテクチャ
動作記述1に含まれるメモリ回路部分と外部との信号を
やり取りする入出力ピンとの接続に必要なインタフェー
ス回路部分に相当する記述である。インタフェース回路
記述23に含まれるメモリ回路部分を除く回路部分の記
述レベルは、ゲートレベルで生成することは容易である
ため論理合成ツールを使用する必要はない。メモリ回路
部分に関しては、予め用意されているメモリ回路を使用
すればよく、合成する必要はない。
【0027】30は、データパス回路記述21を入力と
し、ゲートレベルのデータパス回路を生成するデータパ
スコンパイラである。なお、データパスコンパイラ30
は公知の市販ツール、独自の内製ツールでよい。
【0028】40は、コントロール回路記述22を入力
として、ゲートレベルのコントロール回路を生成する論
理合成ツールである。なお、論理合成ツール40は公知
の市販ツール、独自の内製ツールでよい。 (アーキテクチャ動作記述1)次に、図2を用いて、ア
ーキテクチャ動作記述100の構成について説明する。
【0029】アーキテクチャ動作記述100は、リソー
ス情報記述部101とパイプラインステージ動作記述部
102とパイプライン動作記述部103と割り込み動作
記述部104とからなる。
【0030】リソース情報記述部101は、レジスタ、
メモリのデータ格納手段、入出力ピン、バス、信号線、
演算器(ALU、加算器、減算器、乗算器、バレルシフ
ター等)のリソースを定義する。なお、レジスタファイ
ル、メモリ等で二次元配列以上の次元をもつリソースに
関しては、アーキテクチャ動作記述100を記述する言
語の仕様に依存するが、一般的には必要な次元で定義す
ればよい。例えば、二次元配列を必要とするメモリは2
次元配列でメモリを定義すればよい。パイプラインステ
ージ動作記述部102は、プロセッサの各パイプライン
ステージで行なう動作を定義する。一般的には、パイプ
ラインステージは、インストラクションフェッチステー
ジ、デコードステージ、オペランドフェッチステージ、
実行ステージ等から構成されるが、プロセッサのアーキ
テクチャによって様々である。なお、パイプラインステ
ージの数には制限なく記述可能である。パイプライン動
作記述部103は、プロセッサのパイプライン動作を定
義する。このパイプライン動作記述部103では、パイ
プラインステージ動作記述部102で記述された各パイ
プラインステージでの動作の実行制御や資源競合や分岐
命令によるパイプラインハザードやパイプラインレジス
タの動作制御を記述する。パイプライン動作記述部10
3もパイプラインステージ動作記述部102と同様にパ
イプラインステージの数に制限なく記述可能である。割
り込み動作記述部104は、リセット等の外部からの割
り込み動作、外部メモリとのデータのやり取り、外部周
辺装置とのデータのやり取りのための制御を定義する。
なお、プロセッサの外部との信号のやり取りは、入出力
ピンを介して行えばよい。 (1)リソース情報記述部101 図3を用いて、リソース情報記述部101の記述例を示
す。
【0031】図3に示される様に、入出力ピン、レジス
タ、メモリ、バス、信号線、演算器に関する情報を定義
する。200は、プロセッサの外部との信号のやり取り
を行う入出力ピンのビット幅や入出力属性等の情報を定
義する入出力ピン定義である。201は、プロセッサの
内部に使用するレジスタ、メモリ、バス、信号線のビッ
ト幅、ワード数、属性等の情報を定義する内部リソース
定義である。202は、プロセッサ内部の演算器の動作
を定義する演算器動作定義である。例では、ALUの動
作を定義しているが、どのような演算器の動作にも対応
可能である。なお、記述はVerilogHDLを例として使用し
たが、他の記述言語でも構わない。 (2)パイプラインステージ動作記述部102 図4を用いて、パイプラインステージ動作記述部102
の記述例を示す。
【0032】図4に示される様に、各パイプラインステ
ージで行なわれる動作を各パイプラインステージで分離
して記述する。すなわち、図4では、インストラクショ
ンフェッチステージの動作、デコードステージの動作、
実行ステージの動作のように各パイプラインステージで
行なわれる動作を切り分けて記述する。300は、イン
ストラクションフェッチステージ動作である。301
は、インストラクションのデコードステージ動作であ
る。302は、実行ステージ動作である。なお、この例
ではインストラクションフェッチステージ、デコードス
テージ、実行ステージの3ステージのものを例として示
したが、ステージ数は任意の数にでも対応可能である。
また、記述はVerilogHDLを例として使用したが、他の記
述言語でも構わない。 (3)パイプライン動作記述部103 図5を用いて、パイプライン動作記述部103の記述例
を示す。
【0033】図5に示す様に、パイプラインステージ動
作記述部102で記述されている各パイプラインステー
ジで行なわれる動作を制御して、パイプライン動作を実
現する。図5では、図4の実行ステージの動作を制御す
る記述と図4のデコードステージの動作を制御する記述
と図4のインストラクションフェッチステージの動作を
制御する記述とパイプラインハザード検出処理とパイプ
ラインレジスタのシフト動作から構成される。400
は、パイプライン動作の同期信号であるクロック信号と
外部割り込み信号であるリセット信号による動作タイミ
ングを定義するパイプライン動作タイミング定義であ
る。なお、外部割り込み信号は、リセット以外にも対応
可能である。401は、実行ステージ動作302を制御
する実行ステージ動作制御である。402は、デコード
ステージ動作301を制御するデコードステージ動作制
御である。403は、インストラクションフェッチステ
ージ動作300を制御するインストラクションフェッチ
ステージ動作制御である。404は、パイプラインハザ
ードの発生を検出しハザード情報を生成するパイプライ
ンハザード検出動作である。405は、パイプラインレ
ジスタのデータ移動のためのシフト動作であるパイプラ
インレジスタシフト動作である。なお、この例ではイン
ストラクションフェッチステージ、デコードステージ、
実行ステージの3ステージのものを例として示したが、
ステージ数は任意の数にでも対応可能である。なお、記
述はVerilogHDLを例として使用したが、他の記述言語で
も構わない。 (4)割り込み動作記述部104 図6を用いて、割り込み動作記述部104の記述例を示
す。
【0034】図6に示すように、割り込み信号が入力さ
れた時の動作を記述する。500は、リセット信号であ
るresetが1の場合に起こる割り込み動作を記述す
る割り込み動作である。なお、リセット信号以外の割り
込み信号が入力された時の割り込み動作も記述可能であ
る。なお、記述はVerilogHDLを例として使用したが、他
の記述言語でも構わない。 (回路分割部10)図7を用いて、回路分割部10の処
理フローを説明する。
【0035】図7に示すように、データパス回路分割部
11により、データパス回路分割工程SA1において、
アーキテクチャ動作記述1からデータパス系の動作を抽
出し、データパス回路記述21を生成する。データパス
系の動作は、演算器を含むデータ処理回路で構成され
る。データパス系の動作は、アーキテクチャ動作記述1
では、条件文または制御文の内部に演算を含むデータ転
送文により記述されているので、アーキテクチャ動作記
述1からデータパス系の動作を抽出し、データパス回路
記述21を生成することができる。
【0036】次に、コントロール回路分割部12によ
り、コントロール回路分割工程SA2において、アーキ
テクチャ動作記述1から制御系の動作を抽出し、コント
ロール回路記述22を生成する。コントロール回路記述
22はデータパス回路分割部11の制御を行なう。制御
系の動作はVerilogHDLを使った場合には、IF文、CA
SE文等の制御文に含まれる条件式により記述される。
そのため、アーキテクチャ動作記述1から制御系の動作
を抽出し、コントロール回路記述22を生成することが
できる。
【0037】次に、インタフェース回路生成部13によ
り、インタフェース回路生成工程SA3において、アー
キテクチャ動作記述1からメモリ回路を抽出しメモリ回
路の記述と外部との信号の入出力のための入出力ピンを
生成し、データパス回路分割工程SA1で生成されたデ
ータパス回路記述21とコントロール回路分割工程SA
2で生成されたコントロール回路記述22と前記生成さ
れたメモリ回路の記述と前記生成された入出力ピンとを
リンクするインタフェース回路記述23を生成する。
【0038】図8を用いて、本発明のアーキテクチャ動
作合成装置を用いて生成されるプロセッサ回路の構成に
ついて説明する。
【0039】600は、本発明のアーキテクチャ動作合
成装置により生成されるプロセッサ回路である。プロセ
ッサ回路600は、データパス回路601とコントロー
ル回路602とインタフェース回路603から構成され
る。データパス回路601は、データパス回路分割部1
1により生成され、プロセッサ回路600の制御を行う
回路である。コントロール回路602は、コントロール
回路分割部12により生成され、プロセッサに含まれる
演算器により主に構成される。インタフェース回路60
3は、インタフェース回路生成部13により生成され、
メモリ回路604、入出力ピン605、データパス回路
601、コントロール回路602間接続に必要な回路で
ある。604は、インタフェース回路生成部13により
生成されるメモリ回路である。なお、本例では、メモリ
回路は1つのように表現されているが複数あってもよ
い。605は、プロセッサ回路と外部とのデータをやり
取りする入出力ピンである。なお、入出力ピンには、入
力ピン、出力ピン、双方向ピンがある。606は、デー
タパス回路601とコントロール回路602とメモリ回
路604と入出力ピン605とを接続するための信号線
やバスである。
【0040】(実施の形態2) (本装置を用いた設計フロー)図9を用いて、本発明の
アーキテクチャ動作合成装置を用いたプロセッサのアー
キテクチャ設計方法について説明する。
【0041】図9に示すように、アーキテクチャ動作記
述作成工程SB1において、手作業にて、記述言語を用
いてプロセッサのアーキテクチャ動作記述を記述する。
なお、記述言語には、ハードウェア記述言語やプログラ
ミング言語を用いることが可能である。次に、動作検証
工程SB2において、アーキテクチャ動作記述作成工程
SB1により記述されたアーキテクチャ動作記述の動作
検証を行なう。動作検証は、公知の市販または内製の検
証ツールを使用すればよい。動作検証工程SB2でアー
キテクチャ動作記述に動作エラーがなければ次の工程に
進み、もし動作エラーがあればアーキテクチャ動作記述
作成工程SB1にもどり、エラーを無くす。次に、性能
評価工程SB3において、アーキテクチャ動作記述を用
いてアーキテクチャの性能評価を行なう。仕様通りの性
能が出ていれば次の工程に進むが、もし出ていない場合
には、アーキテクチャの変更を検討しアーキテクチャ動
作記述作成工程SB1でアーキテクチャの変更を行な
う。次に、アーキテクチャ合成工程SB4において、ア
ーキテクチャ動作記述を本発明のアーキテクチャ動作合
成装置により論理合成可能なRTL記述に変換する。ア
ーキテクチャ合成工程SB4で生成されたRTL記述を
用いれば従来からある自動化された設計フローを利用可
能である。これにより、論理合成可能なRTL記述より
も抽象度の高いアーキテクチャ動作記述からの設計自動
化が実現できる。
【0042】
【発明の効果】以上の説明から明らかなように、本発明
の請求項1記載の発明に係るアーキテクチャ動作合成装
置によると、論理合成可能なRTL記述よりも抽象度の
高いアーキテクチャ動作記述からの論理合成可能な記述
を生成することが可能となるため、RTL記述よりも抽
象度が高く記述容易性が高いアーキテクチャ動作記述を
用いた上位レベルの設計からの設計自動化が可能とな
り、プロセッサの設計期間の短縮が可能となる。
【0043】請求項2記載の発明に係わるアーキテクチ
ャ動作合成装置によると、請求項1記載の発明に係わる
アーキテクチャ動作合成装置の効果が得られる上に、論
理合成可能なRTL記述よりも抽象度の高いアーキテク
チャ動作記述から、動作の特徴に応じてデータパス的動
作に対してはデータパスコンパイラ向きのデータパス回
路記述を生成可能であり、制御的動作に対してはランダ
ムロジック用の論理合成向きのコントロール回路記述を
生成可能であり、前記生成されたデータパス回路記述と
前記生成されたコントロール回路とアーキテクチャ動作
記述に含まれるメモリ回路と入出力ピンとのリンクに必
要なインタフェース回路を生成可能となるため、回路の
動作の特徴に応じて、最適な論理合成結果を得られる記
述が生成可能となり、プロセッサの設計期間短縮に加え
論理合成手法を用いた最適なプロセッサを生成できる。
【0044】請求項3記載の発明に係わるアーキテクチ
ャ動作合成装置によると、請求項1または2記載の発明
に係わるアーキテクチャ動作合成装置の効果が得られる
上に、プロセッサのアーキテクチャ動作記述をプロセッ
サの基本動作を明確に切り分けて容易に記述可能である
ため、短期間にアーキテクチャ動作記述を記述可能であ
り、他の人の解読も容易であり、またアーキテクチャ動
作記述からの回路の動作の特徴に応じた解析および回路
分割及び合成向の記述の生成も容易となり、設計の効率
化が可能である。
【0045】請求項4記載の発明に係わるアーキテクチ
ャ合成方法によると、論理合成可能なRTL記述よりも
抽象度の高い記述から、動作の特徴に応じてデータパス
的動作に対してはデータパスコンパイラ向きのデータパ
ス回路記述を生成可能であり、制御的動作に対してはラ
ンダムロジック用の論理合成向きのコントロール回路記
述を生成可能であり、前記生成されたデータパス回路記
述と前記生成されたコントロール回路とアーキテクチャ
動作記述に含まれるメモリ回路と入出力ピンとのリンク
に必要なインタフェース回路を生成可能となるため、R
TL記述よりも抽象度が高く記述容易性が高いアーキテ
クチャ動作記述を用いた上位レベルの設計からの設計自
動化が可能であり、回路の動作の特徴に応じて、最適な
論理合成結果を得られる記述が生成可能となり、アーキ
テクチャ動作記述から合成手法を用いて最適なプロセッ
サが合成可能でかつプロセッサの設計期間の短縮が可能
となる。
【0046】請求項5記載の発明に係わるアーキテクチ
ャ合成方法によると、請求項4記載の発明に係わるアー
キテクチャ動作合成方法の効果が得られる上に、プロセ
ッサのアーキテクチャ動作記述をプロセッサの基本動作
に明確に切り分けて容易に記述可能であるため、短期間
にアーキテクチャ動作記述を記述可能であり、他の人の
解読も容易であり、またアーキテクチャ動作記述からの
回路の動作の特徴に応じた解析および回路分割及び合成
向の記述の生成も容易となり、設計の効率化が可能であ
る。
【0047】請求項6記載の発明に係わるプロセッサの
設計方法によると、RTL記述より抽象度の高いアーキ
テクチャ動作記述を用いてプロセッサの動作検証と性能
評価とアーキテクチャ動作記述から論理合成可能なRT
L記述を生成可能となり、RTL記述よりも抽象度が高
いアーキテクチャ動作記述を用いてRTL記述を用いる
よりも高速に動作検証と動作のデバッグと性能評価が可
能であり、十分に動作検証と動作のデバッグと性能評価
を終えたアーキテクチャ動作記述から論理合成可能なR
TL記述を生成することによりRTL記述を用いた動作
検証を簡略化できるため、プロセッサの設計と修正が容
易であり、アーキテクチャ動作からの設計自動化が実現
でき、プロセッサの設計工数の削減が可能となる。
【0048】請求項7記載の発明に係わるプロセッサの
設計方法によると、請求項8記載の発明に係わるプロセ
ッサの設計方法の効果が得られる上に、プロセッサのア
ーキテクチャ動作記述をプロセッサの基本動作に明確に
切り分けて容易に記述可能であるため、短期間にアーキ
テクチャ動作記述を記述可能であり、他の人の解読も容
易であり、またアーキテクチャ動作記述からの回路の動
作の特徴に応じた解析および回路分割及び合成向の記述
の生成も容易となり、設計の効率化が可能である。
【0049】請求項8記載の発明に係わるプロセッサの
アーキテクチャ動作記述方法によると、プロセッサの動
作をRTL記述より抽象度の高い記述形式で記述可能と
なるため、プロセッサの動作検証と性能評価を目的とし
た動作記述を短期間で理解容易に記述可能であり、高速
検証可能であり、デバッグ容易であり、修正容易である
ためプロセッサの設計工数の削減が可能となる。
【図面の簡単な説明】
【図1】アーキテクチャ動作合成装置のブロック構成図
【図2】アーキテクチャ動作記述の構成図
【図3】リソース情報記述部の記述例の図
【図4】パイプラインステージ動作記述部の記述例の図
【図5】パイプライン動作記述部の記述例の図
【図6】割り込み動作記述部の記述例の図
【図7】回路分割部の処理フローの図
【図8】プロセッサ回路の構成図
【図9】プロセッサのアーキテクチャ設計方法の処理フ
ローの図
【符号の説明】
1 アーキテクチャ動作記述 10 回路分割部 20 RTL記述 30 データパスコンパイラ 40 論理合成ツール

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 プロセッサのアーキテクチャの動作を記
    述するアーキテクチャ動作記述を入力とし、前記アーキ
    テクチャ動作記述の内部の動作の特徴に応じて前記アー
    キテクチャ動作記述を分割し、論理合成可能な記述を生
    成する回路分割部を備えることを特徴とするアーキテク
    チャ動作合成装置。
  2. 【請求項2】 前記回路分割部は、 アーキテクチャ動作記述を入力として、前記アーキテク
    チャ動作記述を解析し動作の特徴に応じて、データパス
    回路を分割しデータパス回路記述を生成するデータパス
    回路分割部と、 コントロール回路を分割しコントロール回路記述を生成
    するコントロール回路分割部と、 前記データパス回路と、前記コントロール回路と、前記
    アーキテクチャ動作記述に含まれるメモリ回路と、外部
    との信号の入出力を行う入出力ピンとの間でインタフェ
    ースを行うインタフェース回路に分割しインタフェース
    回路記述を生成するインタフェース回路生成部とを有し
    ていることを特徴とする請求項1記載のアーキテクチャ
    動作合成装置。
  3. 【請求項3】 前記アーキテクチャ動作記述は、 プロセッサにおいて信号値を格納する手段と信号間での
    演算を行なう演算手段から構成されるリソースに関する
    情報を記述するリソース情報記述部と、 プロセッサの命令パイプラインの各パイプラインステー
    ジでの動作を記述するパイプラインステージ動作記述部
    と、 プロセッサのパイプライン動作を記述するパイプライン
    動作記述部と、 プロセッサへの割り込み動作を記述する割り込み動作記
    述部とから構成されることを特徴とする請求項1または
    2記載のアーキテクチャ動作合成装置。
  4. 【請求項4】 プロセッサのアーキテクチャの動作を記
    述するアーキテクチャ動作記述からデータパス系の動作
    を抽出しデータパス回路記述を生成するデータパス回路
    分割工程と、 前記アーキテクチャ動作記述から制御系の動作を抽出し
    コントロール回路記述を生成するコントロール回路分割
    工程と、 前記アーキテクチャ動作記述からメモリ回路を抽出しメ
    モリ回路記述と外部との信号の入出力のための入出力ピ
    ン情報とを生成し、前記データパス回路分割工程で生成
    されたデータパス回路記述と前記コントロール回路分割
    工程で生成されたコントロール回路記述と前記生成され
    たメモリ回路記述と前記生成された入出力ピン情報とを
    リンクするインタフェース回路記述を生成するインタフ
    ェース回路生成工程とを有することを特徴とするアーキ
    テクチャ動作合成方法。
  5. 【請求項5】 前記アーキテクチャ動作記述は、 プロセッサにおいて信号値を格納する手段と信号間での
    演算を行なう演算手段から構成されるリソースに関する
    情報を記述するリソース情報記述部と、 プロセッサの命令パイプラインの各パイプラインステー
    ジでの動作を記述するパイプラインステージ動作記述部
    と、 プロセッサのパイプライン動作を記述するパイプライン
    動作記述部と、 プロセッサへの割り込み動作を記述する割り込み動作記
    述部とから構成されることを特徴とする請求項4記載の
    アーキテクチャ動作合成方法。
  6. 【請求項6】 プロセッサのアーキテクチャの動作を記
    述するアーキテクチャ動作記述を記述するアーキテクチ
    ャ動作記述作成工程と、 前記アーキテクチャ動作記述の動作検証を行なう動作検
    証工程と、 前記アーキテクチャ動作記述を用いてアーキテクチャの
    性能評価を行なう性能評価工程と、 前記アーキテクチャ動作記述を入力とし論理合成可能な
    記述を生成するアーキテクチャ動作合成工程とを有し、 前記アーキテクチャ動作合成工程は、 プロセッサのアーキテクチャの動作を記述するアーキテ
    クチャ動作記述からデータパス系の動作を抽出しデータ
    パス回路記述を生成するデータパス回路分割工程と、 前記アーキテクチャ動作記述から制御系の動作を抽出し
    コントロール回路記述を生成するコントロール回路分割
    工程と、 前記アーキテクチャ動作記述からメモリ回路を抽出しメ
    モリ回路記述と外部との信号の入出力のための入出力ピ
    ン情報とを生成し、前記データパス回路分割工程で生成
    されたデータパス回路記述と前記コントロール回路分割
    工程で生成されたコントロール回路記述と前記生成され
    たメモリ回路記述と前記生成された入出力ピン情報とを
    リンクするインタフェース回路記述を生成するインタフ
    ェース回路生成工程とからなることを特徴とするプロセ
    ッサの設計方法。
  7. 【請求項7】 前記アーキテクチャ動作記述は、 プロセッサにおいて信号値を格納する手段と信号間での
    演算を行なう演算手段から構成されるリソースに関する
    情報を記述するリソース情報記述部と、 プロセッサの命令パイプラインの各パイプラインステー
    ジでの動作を記述するパイプラインステージ動作記述部
    と、 プロセッサのパイプライン動作を記述するパイプライン
    動作記述部と、 プロセッサへの割り込み動作を記述する割り込み動作記
    述部とから構成されることを特徴とする請求項6記載の
    プロセッサの設計方法。
  8. 【請求項8】 プロセッサのアーキテクチャの動作を記
    述するアーキテクチャ動作記述方法において、 プロセッサにおいて信号値を格納する手段と信号間での
    演算を行なう演算手段から構成されるリソースに関する
    情報を記述するリソース情報記述ステップと、 プロセッサの命令パイプラインの各パイプラインステー
    ジでの動作を記述するパイプラインステージ動作記述ス
    テップと、 プロセッサのパイプライン動作を記述するパイプライン
    動作記述ステップと、 プロセッサへの割り込み動作を記述する割り込み動作記
    述ステップとを有することを特徴とするプロセッサのア
    ーキテクチャ動作記述方法。
JP9263147A 1997-09-29 1997-09-29 アーキテクチャ動作合成装置、アーキテクチャ動作合成方法、プロセッサの設計方法およびプロセッサのアーキテクチャ動作記述方法 Pending JPH11102381A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9263147A JPH11102381A (ja) 1997-09-29 1997-09-29 アーキテクチャ動作合成装置、アーキテクチャ動作合成方法、プロセッサの設計方法およびプロセッサのアーキテクチャ動作記述方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9263147A JPH11102381A (ja) 1997-09-29 1997-09-29 アーキテクチャ動作合成装置、アーキテクチャ動作合成方法、プロセッサの設計方法およびプロセッサのアーキテクチャ動作記述方法

Publications (1)

Publication Number Publication Date
JPH11102381A true JPH11102381A (ja) 1999-04-13

Family

ID=17385467

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9263147A Pending JPH11102381A (ja) 1997-09-29 1997-09-29 アーキテクチャ動作合成装置、アーキテクチャ動作合成方法、プロセッサの設計方法およびプロセッサのアーキテクチャ動作記述方法

Country Status (1)

Country Link
JP (1) JPH11102381A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009032086A (ja) * 2007-07-27 2009-02-12 Hitachi Ltd 設計装置、設計方法及びプログラム
US7565632B2 (en) 2005-12-26 2009-07-21 Nec Corporation Behavioral synthesizer system, operation synthesizing method and program
WO2019186618A1 (ja) * 2018-03-26 2019-10-03 三菱電機株式会社 高位合成装置、高位合成方法および高位合成プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7565632B2 (en) 2005-12-26 2009-07-21 Nec Corporation Behavioral synthesizer system, operation synthesizing method and program
JP2009032086A (ja) * 2007-07-27 2009-02-12 Hitachi Ltd 設計装置、設計方法及びプログラム
WO2019186618A1 (ja) * 2018-03-26 2019-10-03 三菱電機株式会社 高位合成装置、高位合成方法および高位合成プログラム
JPWO2019186618A1 (ja) * 2018-03-26 2020-06-25 三菱電機株式会社 高位合成装置、高位合成方法および高位合成プログラム

Similar Documents

Publication Publication Date Title
US7472361B2 (en) System and method for generating a plurality of models at different levels of abstraction from a single master model
Gajski et al. Essential issues in codesign
JPH11513512A (ja) ディジタル信号プロセッサの製造方法
JP3803561B2 (ja) 論理回路設計方法
JP2006285333A (ja) 動作合成装置及び方法
JP2002140379A (ja) 高位合成方法および高位合成装置
EP0867820A2 (en) A design environment and a method for generating an implementable description of a digital system
Meredith High-level SystemC synthesis with forte's cynthesizer
US7111274B1 (en) Scheduling hardware generated by high level language compilation to preserve functionality of source code design implementations
JPH11102381A (ja) アーキテクチャ動作合成装置、アーキテクチャ動作合成方法、プロセッサの設計方法およびプロセッサのアーキテクチャ動作記述方法
Wakabayashi et al. “All-in-C” Behavioral Synthesis and Verification with CyberWorkBench: From C to Tape-Out with No Pain and A Lot of Gain
WO2022198447A1 (zh) 一种数字电路的综合方法及综合装置
Balboni et al. Tosca: A pragmatic approach to co-design automation of control-dominated systems
JP4730536B2 (ja) 動作合成システム、動作合成方法およびプログラム
JP4152659B2 (ja) データ処理システムおよび設計システム
Ditzel et al. Using CAD Tools in the Design of CRISP
Ecker et al. The design cube: A model for VHDL designflow representation and its application
Aditya et al. Algorithmic synthesis using PICO: An integrated framework for application engine synthesis and verification from high level C algorithms
Shewring et al. An integrated approach to the design and implementation of image filters
Srivastava et al. FPGA-Specific Compilers
Gauthier et al. Abstracting HW communications with channels for HDLRuby
Vossen Offloading Haskell functions onto an FPGA
Gajski System-level design methodology
Hänninen Intelin High Level Synthesis Compiler-ohjelman ominaisuudet
Deschamps et al. Development Tools