Top > Search of Japanese Patents > HARDWARE DESCRIPTION LANGUAGE SYNTHESIS TOOL AND DESIGN METHOD USING IT FOR INTEGRATED CIRCUIT

HARDWARE DESCRIPTION LANGUAGE SYNTHESIS TOOL AND DESIGN METHOD USING IT FOR INTEGRATED CIRCUIT

Patent code P06A008352
File No. KUTLO-2004-020
Posted date Apr 7, 2006
Application number P2004-260466
Publication number P2006-079226A
Patent number P3735723
Date of filing Sep 8, 2004
Date of publication of application Mar 23, 2006
Date of registration Nov 4, 2005
Inventor
  • (In Japanese)北川 章夫
  • (In Japanese)尾形 秀範
  • (In Japanese)秋田 純一
Applicant
  • (In Japanese)国立大学法人金沢大学
Title HARDWARE DESCRIPTION LANGUAGE SYNTHESIS TOOL AND DESIGN METHOD USING IT FOR INTEGRATED CIRCUIT
Abstract PROBLEM TO BE SOLVED: To provide a hardware description language synthesis tool capable of automatically forming a hardware design file described in a hardware description language from a program described in a higher-level language such as C language, and a design method using the tool for an integrated circuit.
SOLUTION: The hardware description language synthesis tool includes a hardware file describing a hardware component excluding a program memory, program code and the like of a microprocessor in the hardware description language, and an assembly level synthesis language which analyzes an assembly level language program obtained by compiling a high-level language program to associate instruction code thereof with the hardware component, and converts the instruction code into a software file described in the hardware description language. In addition, the tool outputs the hardware file and the software file as hardware design files.
Outline of related art and contending technology (In Japanese)


半導体集積回路の設計において、近年、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号公報

Field of industrial application (In Japanese)


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

Scope of claims (In Japanese)
【請求項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(International Patent Classification)
F-term
Drawing

※Click image to enlarge.

JP2004260466thum.jpg
State of application right Registered
Please contact us by E-mail or facsimile if you have any interests on this patent.


PAGE TOP

close
close
close
close
close
close
close