TOP > 国内特許検索 > ハードウエア記述言語合成ツール及びそれを利用した集積回路の設計方法

ハードウエア記述言語合成ツール及びそれを利用した集積回路の設計方法

国内特許コード P06A008352
整理番号 KUTLO-2004-020
掲載日 2006年4月7日
出願番号 特願2004-260466
公開番号 特開2006-079226
登録番号 特許第3735723号
出願日 平成16年9月8日(2004.9.8)
公開日 平成18年3月23日(2006.3.23)
登録日 平成17年11月4日(2005.11.4)
発明者
  • 北川 章夫
  • 尾形 秀範
  • 秋田 純一
出願人
  • 学校法人金沢大学
発明の名称 ハードウエア記述言語合成ツール及びそれを利用した集積回路の設計方法
発明の概要


【課題】C言語などの高位レベル言語で記述されたプログラムから自動的にハードウエア記述言語で記述されたハードウエア設計ファイルを形成することができるハードウエア記述言語合成ツール及びそれを利用した集積回路の設計方法を提供する。
【解決手段】 マイクロプロセッサのプログラムメモリとプログラムコードなどを除くハードウエアコンポーネントを、ハードウエア記述言語で記述したハードウエアファイルと、高級レベル言語プログラムをコンパイルして得られたアセンブリレベル言語プログラムを解析して、その命令コードをハードウエアコンポーネントに対応させてハードエウア記述言語で記述したソフトウエアファイルに変換するアセンブリレベル合成プログラムとを有するハードウエア記述言語合成ツールである。そして、このツールは、ハードウエアファイルとソフトウエアファイルとを、ハードウエア設計ファイルとして出力する。
【選択図】 図1

従来技術、競合技術の概要


半導体集積回路の設計において、近年、C言語をもとにしたハードウエア記述言語(Hardware Description Language:HDL)によりハードウエア回路を記述し、それを論理合成して集積回路のネットリストを作成し、集積回路を作成することが行われている。それに伴って、Verilog-HDLやVHDLなどの標準化されたHDLが普及してきており、このようなHDLにより記述されたハードウエア設計ファイルをネットリストに変換する論理合成ツールも開発され、実用化されている。



ハードウエアを記述するHDLは、レジスタ・トランスファ・レベル(RTL:Register Transfer Level)でハードウエア回路を具体的に記述する独特の記述法が用いられており、ハードウエア回路の知識をもつハードウエア開発者によってハードウエア回路がHDL記述により開発されているのが現状である。一方、一般的なC言語などの高位レベル言語は、HDLにより記述されるハードウエア回路に比較するとより抽象的な記述になりがちであり、かかる抽象度の違いから、ソフトウエアツールによってC言語で記述されたプログラムからHDLで記述されたハードウエアに合成することは、一般的に困難である。



一般的なC言語で記述されたアルゴリズム記述から、HDLによるレジスタ・トランスファ・レベル(RTレベル)の記述に変換することは一部で提案されている。例えば、特許文献1に示される通りである。この提案によれば、C言語で記述されたアルゴリズム記述を、機能C記述に変換し、更に、この機能C記述に時間の概念であるクロック記述を挿入して、RTレベルのC記述に変換する。

【特許文献1】特開平2003-16122号公報

産業上の利用分野


本発明は、ハードウエア記述言語合成ツール及びそれを利用した集積回路の設計方法に関し、特に、高級レベル言語で記述された高級言語プログラムから集積回路設計用のハードウエア記述言語ファイルを自動的に生成することを可能にするハードウエア記述言語合成ツール及びそれを利用した集積回路の設計方法に関する。

特許請求の範囲 【請求項1】
少なくとも入出力端子と、レジスタ群と、演算ユニットと、プログラムカウンタと、プログラムメモリと、プログラムデコーダとを有するマイクロプロセッサの、前記プログラムメモリ及びプログラムデコーダを除く前記入出力端子と、レジスタ群と、演算ユニットと、プログラムカウンタとを含むハードウエアコンポーネントを、ハードウエア記述言語で記述したプロセッサハードウエアファイルと、
アセンブリレベル合成プログラムとを有し、
前記アセンブリレベル合成プログラムは、
高位レベル言語で記述された高位レベル言語プログラムを当該マイクロプロセッサに対応するコンパイラにより変換した前記マイクロプロセッサが実行可能なアセンブリレベル言語プログラムの命令コードを、解析する手順と、
前記解析したアセンブリレベル言語プログラムの命令コードを、前記プロセッサハードウエアファイルに含まれるハードウエアコンポーネントに対応させて前記ハードウエア記述言語で記述したプロセッサソフトウエアファイルに、変換する手順と、
前記プロセッサハードウエアファイルと前記プロセッサソフトウエアファイルとを出力する手順とをコンピュータに実行させることを特徴とするハードウエア記述言語合成プログラム

【請求項2】
請求項1において、
更に、複数の前記命令コードにそれぞれ対応して、前記ハードウエア記述言語で記述された複数のプロセッサソフトウエアモジュールを有する対応テーブルを有し、
前記変換手順は、当該対応テーブルを参照して、前記アセンブリレベル言語プログラムの命令コードを、それぞれ対応するプロセッサソフトウエアモジュールに変換して前記プロセッサソフトウエアファイルを生成し、
当該プロセッサソフトウエアファイルは、前記アセンブリレベル言語プログラムの命令コードに対応する前記プロセッサソフトウエアモジュールを有することを特徴とするハードウエア記述言語合成プログラム

【請求項3】
請求項2において、
前記プロセッサソフトウエアモジュールは、前記プログラムカウンタのカウント値が前記アセンブリレベル言語プログラムのプログラムアドレスと一致する時に、当該プログラムアドレスの命令コードに対応する所定の動作を行う制御回路の記述、を有することを特徴とするハードウエア記述言語合成プログラム

【請求項4】
請求項1において、
更に、複数の前記命令コードそれぞれに対応して、及び複数の一連の命令コードからなる複合命令コードに対応して、前記ハードウエア記述言語で記述された複数のプロセッサソフトウエアモジュールを有する対応テーブルを有し、
前記変換手順は、当該対応テーブルを参照して、前記アセンブリレベル言語プログラムの命令コード及び複合命令コードを、それぞれ対応するプロセッサソフトウエアモジュールに変換して前記プロセッサソフトウエアファイルを生成し、
当該プロセッサソフトウエアファイルは、前記アセンブリレベル言語プログラムの命令コード及び複合命令コードに対応する前記プロセッサソフトウエアモジュールを有することを特徴とするハードウエア記述言語合成プログラム

【請求項5】
請求項4において、
前記変換手順は、前記複合命令コードを個別の命令コードに優先して、当該複合命令コードに対応するプロセッサソフトウエアモジュールに変換することを特徴とするハードウエア記述言語合成プログラム

【請求項6】
請求項1において、
前記アセンブリレベル合成プログラムは、更に、
前記アセンブリレベル言語プログラムの命令コードを解析して、前記プロセッサハードウエアファイルから、使用されないハードウエアコンポーネントに対応するハードウエア記述言語による記述を削除したプロセッサハードウエアファイルを作成する手順を有し、
前記出力手順は、当該削除されたプロセッサハードウエアファイルを出力することを特徴とするハードウエア記述言語合成プログラム

【請求項7】
請求項1において、
前記プロセッサソフトウエアファイルは、前記プログラムカウンタのカウントが前記アセンブリレベル言語プログラムのプログラムアドレスと一致する時に、当該プログラムアドレスの命令コードに対応する所定の動作を行う制御回路の記述、を有することを特徴とするハードウエア記述言語合成プログラム

【請求項8】
請求項2または4において、
前記プロセッサハードウエアファイルと前記対応テーブルとを、複数のマイクロプロセッサに対応して、複数組有することを特徴とするハードウエア記述言語合成プログラム

【請求項9】
請求項2または4において、
前記プロセッサハードウエアファイルと前記対応テーブルとを、仮想的マイクロプロセッサに対応して有すると共に、
更に、前記仮想マイクロプロセッサに対応して前記高位レベル言語プログラムを前記アセンブリレベル言語プログラムに変換する仮想コンパイラプログラムを有することを特徴とするハードウエア記述言語合成プログラム

【請求項10】
少なくとも入出力端子と、レジスタ群と、演算ユニットと、プログラムカウンタと、プログラムメモリと、プログラムデコーダとを有するマイクロプロセッサの、前記プログラムメモリとプログラムデコーダを除く前記入出力端子と、レジスタ群と、演算ユニットと、プログラムカウンタとを含むハードウエアコンポーネントを、ハードウエア記述言語で記述したプロセッサハードウエアファイルがあらかじめ生成され、集積回路をハードウエア記述言語で記述したハードウエア記述言語ファイルを生成する集積回路の設計方法において、
高位レベル言語で記述された高位レベル言語プログラムを、当該マイクロプロセッサに対応するコンパイラにより前記マイクロプロセッサが実行可能なアセンブリレベル言語プログラムの命令コードに変換する工程と、
前記アセンブリレベル言語プログラムの命令コードを、前記プロセッサハードウエアファイルに含まれるハードウエアコンポーネントに対応させて前記ハードウエア記述言語で記述したプロセッサソフトウエアファイルに、変換する工程と、
前記プロセッサハードウエアファイルと前記プロセッサソフトウエアファイルを、前記ハードウエア記述言語ファイルとして出力する工程とを有する集積回路の設計方法。

【請求項11】
請求項10において、
更に、前記ハードウエア記述言語ファイルを、論理合成ツールにより、前記集積回路のネットリストに変換する工程を有することを特徴とする集積回路の設計方法。

【請求項12】
請求項10において、
更に、複数の前記命令コードにそれぞれ対応して、前記ハードウエア記述言語で記述された複数のプロセッサソフトウエアモジュールを有する対応テーブルがあらかじめ生成され、
前記変換工程は、当該対応テーブルを参照して、前記アセンブリレベル言語プログラムの命令コードを、それぞれ対応するプロセッサソフトウエアモジュールに変換して前記プロセッサソフトウエアファイルを生成する工程を含み、
当該プロセッサソフトウエアファイルは、前記アセンブリレベル言語プログラムの命令コードに対応する前記プロセッサソフトウエアモジュールを複数有することを特徴とする集積回路の設計方法。

【請求項13】
高位レベル言語で記述された高位レベル言語プログラムを、所定のマイクロプロセッサに対応するコンパイラにより変換した前記マイクロプロセッサが実行可能なアセンブリレベル言語プログラムの命令コードを、解析する手順と、
前記アセンブリレベル言語プログラムの命令コードを、前記プロセッサハードウエアファイルに含まれるハードウエアコンポーネントに対応させて前記ハードウエア記述言語で記述したプロセッサソフトウエアファイルに、変換する手順と、
前記プロセッサソフトウエアファイルを、前記マイクロプロセッサの少なくともプログラムメモリとプログラムデコーダを除くハードウエアコンポーネントをハードウエア記述言語で記述したプロセッサハードウエアファイルと共に、出力する手順とをコンピュータに実行させることを特徴とするハードウエア記述言語合成プログラム

【請求項14】
請求項13において、
更に、複数の前記命令コードにそれぞれ対応して、前記ハードウエア記述言語で記述された複数のプロセッサソフトウエアモジュールを有する対応テーブルを有し、
前記変換手順は、当該対応テーブルを参照して、前記アセンブリレベル言語プログラムの命令コードを、それぞれ対応するプロセッサソフトウエアモジュールに変換して前記プロセッサソフトウエアファイルを生成することを特徴とするハードウエア記述言語合成プログラム

【請求項15】
請求項13において、
更に、複数の前記命令コードそれぞれに対応して、及び複数の一連の命令コードからなる複合命令コードに対応して、前記ハードウエア記述言語で記述された複数のプロセッサソフトウエアモジュールを有する対応テーブルを有し、
前記変換手順は、当該対応テーブルを参照して、前記アセンブリレベル言語プログラムの命令コード及び複合命令コードを、それぞれ対応するプロセッサソフトウエアモジュールに変換して前記プロセッサソフトウエアファイルを生成することを特徴とするハードウエア記述言語合成プログラム

【請求項16】
請求項15において、
前記変換手順は、前記複合命令コードを個別の命令コードに優先して、当該複合命令コードに対応するプロセッサソフトウエアモジュールに変換することを特徴とするハードウエア記述言語合成プログラム

【請求項17】
請求項13において、
前記アセンブリレベル合成プログラムは、更に、
前記アセンブリレベル言語プログラムの命令コードを解析して、前記プロセッサハードウエアファイルから、使用されないハードウエアコンポーネントに対応するハードウエア記述言語による記述を削除したプロセッサハードウエアファイルを作成する手順を有し、
前記出力手順は、当該削除されたプロセッサハードウエアファイルを出力することを特徴とするハードウエア記述言語合成プログラム
産業区分
  • 計算機応用
国際特許分類(IPC)
Fターム
画像

※ 画像をクリックすると拡大します。

JP2004260466thum.jpg
出願権利状態 権利存続中
(有)金沢大学ティ・エル・オーは、金沢大学の研究者の出願特許を産業界へ技術移転することを主目的として、金沢大学の教官の出資により設立された技術移転機関です。
ご興味のある方は、下記「問合せ先」へ整理番号と共にご連絡願います。
なお、既に活用のお申し込み・お打合わせ等の段階に入っている場合もございますので、予めご承知おきください。


PAGE TOP

close
close
close
close
close
close
close