アセンブリコードを中間表現とする高位合成における関数の併合(高位合成と演算応用,FPGA応用及び一般)
スポンサーリンク
概要
- 論文の詳細を見る
本稿では,アセンブリコードを中間表現とする高位合成における関数の併合手法を提案する.Cプログラム中の指定された関数をハードウェアに合成する手法はいくつかの高位合成システムで実装されているが,関数間の呼出しが頻繁に行われる場合には,制御や引数,返り値の受渡しのオーバヘッドが無視できなくなる.これに対し本稿では,複数関数を併合して単一ハードウェアに合成することにより,関数呼出しのオーバヘッドを削減する手法を提案する.本手法では,goto変換に基づいて,ハードウェア化する関数がソフトウェアからもハードウェアからも呼び出せるように,高位合成の入力コードを変換する.Goto変換には,引数や返り値の受け渡しの他,レジスタの退避/復帰の処理の追加も必要になるが,コンパイラはアセンブリコード中にこれらの処理を行うコードを最適化した形で生成するので,これを利用して処理系を実装する.関数の併合により,関数呼出しのオーバヘッドが抑制できるだけでなく,関数間で資源共有が行えるため,ハードウェアのコストも削減できる.本手法を高位合成システムACAPに実装し,実験的な回路で評価を行った結果,実行サイクル数を約15%, FPGA上のLUT数を約60%削減することができた.
- 2012-01-18
著者
-
石浦 菜岐佐
関西学院大学理工学部
-
石浦 菜岐佐
関西学院大
-
冨山 宏之
名古屋大学大学院情報科学研究科
-
冨山 宏之
九州大学大学院システム情報科学研究科
-
冨山 宏之
名古屋大学
-
冨山 宏之
財団法人九州システム情報技術研究所
-
神原 弘之
京都高度技術研究所
-
冨山 宏之
立命館大学理工学部
-
高島 史明
関西学院大学理工学部
-
織野 真琴
関西学院大学理工学部
-
冨山 宏之
立命館大学
-
織野 真琴
関西学院大学 理工学部
-
高島 史明
関西学院大学 理工学部
関連論文
- コンフィギュラブルプロセッサの命令セット拡張に対応したGCCの自動生成(オペレーティング・システム/コンパイラ)
- コンフィギュラブルプロセッサの命令セット拡張に対応したGCCの自動生成(オペレーティング・システム/コンパイラ)
- VLIW型DSP SPXK5の条件実行を考慮した最適コードスケジューリング(コンパイラ,システムオンシリコンを支える設計技術)
- 算術式の最適化を対象としたCコンパイラのランダムテスト(コンパイラ,システムオンシリコンを支える設計技術)
- CPUと密に結合したコプロセッサによるハードウェア/ソフトウェア協調設計 (集積回路)
- MIPSアセンブリを中間表現とする高位合成システムの実装 (ディペンダブルコンピューティング)
- MIPSアセンブリを中間表現とする高位合成システムの実装 (コンピュータシステム)
- ソフトウェア開発環境自動構築ツールArchCのVLIW拡張(プロセッサ向け最適化と開発環境)
- 高位合成を有効活用するか?活用をあきらめるか?(システム設計及び一般)
- 高位合成を有効活用するか?活用をあきらめるか?(パネル討論,システム設計及び一般)
- 高位合成システムCCAPのAMPマルチコアシステム設計のための拡張(高位合成,FPGA応用及び一般)
- AS-1-2 入力プログラムと中間表現の実行に基づく高位合成システムのテスト(AS-1.高位設計・検証,シンポジウムセッション)
- コンフィギュラブルプロセッサの命令セット拡張に対応したGCCの自動生成
- ソフトウェア開発環境自動構築ツールArchCのVLIW拡張(プロセッサ向け最適化と開発環境,FPGA応用及び一般)
- ソフトウェア開発環境自動構築ツールArchCのVLIW拡張(プロセッサ向け最適化と開発環境,FPGA応用及び一般)
- ソフトウェア開発環境自動構築ツールArchCのVLIW拡張(プロセッサ向け最適化と開発環境,FPGA応用及び一般)
- VLIW型プロセッサ用リターゲッタブル・リニアアセンブラ(アーキテクチャとコンパイラ,デザインガイア2007-VLSI設計の新しい大地を考える研究会-)
- VLIW型プロセッサ用リターゲッタブル・リニアアセンブラ(アーキテクチャとコンパイラ,デザインガイア2007-VLSI設計の新しい大地を考える研究会-)
- VLIW型プロセッサ用リターゲッタブル・リニアアセンブラ(アーキテクチャとコンパイラ,デザインガイア2007-VLSI設計の新しい大地を考える研究会-)
- リターゲッタブル・コンパイラのための命令パターン生成(プロセッサ/コンパイラ, FRGAとその応用及び一般)
- プロセッサ仕様記述からの命令依存距離抽出(プロセッサ/コンパイラ, FRGAとその応用及び一般)
- リターゲッタブル・コンパイラのための命令パターン生成(プロセッサ/コンパイラ, FRGAとその応用及び一般)
- プロセッサ仕様記述からの命令依存距離抽出(プロセッサ/コンパイラ, FRGAとその応用及び一般)
- リターゲッタブル・コンパイラのための命令パターン生成(プロセッサ/コンパイラ, FRGAとその応用及び一般)
- プロセッサ仕様記述からの命令依存距離抽出(プロセッサ/コンパイラ, FRGAとその応用及び一般)
- MIPSアセンブリを中間表現とする高位合成システムの実装
- MIPSアセンブリを中間表現とする高位合成システムの実装
- MIPSアセンブリを中間表現とする高位合成システムの実装
- MIPSアセンブリを中間表現とする高位合成システムの実装
- CPUと密に結合したコプロセッサによるハードウェア/ソフトェア協調設計
- CPUと密に結合したコプロセッサによるハードウェア/ソフトェア協調設計
- 高位合成システムCCAPのAMPマルチコアシステム設計のための拡張(高位合成,FPGA応用及び一般)
- 高位合成システムCCAPのAMPマルチコアシステム設計のための拡張(高位合成,FPGA応用及び一般)
- 高位合成システムCCAPのAMPマルチコアシステム設計のための拡張(高位合成,FPGA応用及び一般)
- 不定サイクル演算を考慮した高位合成の可変スケジューリング・バインディング(高位合成,デザインガイア2008-VLSI設計の新しい大地)
- 不定サイクル演算を考慮した高位合成の可変スケジューリング・バインディング(高位合成,デザインガイア2008-VLSI設計の新しい大地)
- 不定サイクル演算を考慮した高位合成の可変スケジューリング・バインディング(高位合成,デザインガイア2008-VLSI設計の新しい大地-)
- AS-1-1 不定サイクル演算を考慮した高位合成のスケジューリング(AS-1.高位設計・検証,シンポジウムセッション)
- 組込みプロセッサの命令セット拡張に適したソフトウェア開発ツール生成手法(システム設計・高位論理設計,システムオンシリコンを支える設計技術)
- Cコンパイラ用テストスイートおよびその生成ツールtestgen(FPGAとその応用及び一般)
- Cコンパイラ用テストスイートおよびその生成ツールtestgen(FPGAとその応用及び一般)
- Cコンパイラ用テストスイートおよびその生成ツールtestgen(FPGAとその応用及び一般)
- Cコンパイラ用テストスイートおよびその生成ツールtestgen(FPGAとその応用及び一般)
- Cコンパイラ用テストスイートおよびその生成ツール testgen
- 命令セット拡張に対するGCC及びGNU Tool Chainのリターゲッティング(FPGAとその応用及び一般)
- 命令セット拡張に対するGCC及びGNU Tool Chainのリターゲッティング(FPGAとその応用及び一般)
- 命令セット拡張に対するGCC及びGNU Tool Chainのリターゲッティング(FPGAとその応用及び一般)
- 命令セット拡張に対するGCC及びGNU Tool Chainのリターゲッティング(FPGAとその応用及び一般)
- 命令セット拡張に対するGCC及び GNU Tool Chain のリターゲッティング
- 命令セット拡張に対するGCC及び GNU Tool Chain のリターゲッティング
- 命令セット拡張に対するGCC及び GNU Tool Chain のリターゲッティング
- 命令セット拡張に対するGCC及び GNU Tool Chain のリターゲッティング
- CPUと密に結合したコプロセッサによるハードウェア/ソフトェア協調設計
- CPUと密に結合したコプロセッサによるハードウェア/ソフトェア協調設計
- 高位合成システムCCAPにおけるハードウェア関数からのソフトウェア関数の呼び出し(高位合成)
- 高位合成処理システムCCAPを用いたAES暗号処理の高速化(高位合成)
- 高位合成システムCCAPにおけるハードウェア関数からのソフトウェア関数の呼び出し(高位合成)
- 高位合成処理システムCCAPを用いたAES暗号処理の高速化(高位合成)
- 高位合成システムCCAPにおけるハードウェア関数からのソフトウェア関数の呼び出し
- 高位合成処理システムCCAPを用いたAES暗号処理の高速化
- ソフトウェア互換ハードウェアを合成する高位合成システムCCAPにおける変数と関数の扱い(VLSIの設計/検証/テスト及び一般(デザインガイア))
- ソフトウェア互換ハードウェアを合成する高位合成システムCCAPにおける変数と関数の扱い(VLSIの設計/検証/テスト及び一般(デザインガイア))
- MIPSアセンブリを中間表現とする高位合成システムの実装
- MIPSアセンブリを中間表現とする高位合成システムの実装
- MIPSアセンブリを中間表現とする高位合成システムの実装
- 準ブール充足可能性判定によるクラスタ型VLIW DSPの最適コードスケジューリング(FPGAとその応用及び一般)
- 準ブール充足可能性判定によるクラスタ型VLIW DSPの最適コードスケジューリング(FPGAとその応用及び一般)
- 準ブール充足可能性判定によるクラスタ型VLIW DSPの最適コードスケジューリング(FPGAとその応用及び一般)
- 準ブール充足可能性判定によるクラスタ型VLIW DSPの最適コードスケジューリング(FPGAとその応用及び一般)
- VLIW型DSPのコード最適化のためのサイクル分割スケジューリング(アーキテクチャとコンパイラ,デザインガイア2007-VLSI設計の新しい大地を考える研究会-)
- VLIW型DSPのコード最適化のためのサイクル分割スケジューリング(アーキテクチャとコンパイラ,デザインガイア2007-VLSI設計の新しい大地を考える研究会-)
- ソフトウェア互換ハードウェアを合成する高位合成システムCCAPにおける変数と関数の扱い(VLSIの設計/検証/テスト及び一般(デザインガイア))
- ソフトウェア互換ハードウェアを合成する高位合成システムCCAPにおける変数と関数の扱い(VLSIの設計/検証/テスト及び一般(デザインガイア))
- VLIW型DSPのコード最適化のためのサイクル分割スケジューリング(アーキテクチャとコンパイラ,デザインガイア2007-VLSI設計の新しい大地を考える研究会-)
- 組込みプロセッサの命令セット拡張に適したソフトウェア開発ツール生成手法
- プラグイン方式に基づくBinutilsおよびGDBの自動リターゲッティング(コンパイラと設計,FPGA応用及び一般)
- プラグイン方式に基づくBinutilsおよびGDBの自動リターゲッティング(コンパイラと設計,FPGA応用及び一般)
- プラグイン方式に基づくBinutilsおよびGDBの自動リターゲッティング(コンパイラと設計,FPGA応用及び一般)
- プログラム併合によるコンパイラのリグレッションテストの高速化(コンパイラと設計,FPGA応用及び一般)
- プログラム併合によるコンパイラのリグレッションテストの高速化(コンパイラと設計,FPGA応用及び一般)
- プログラム併合によるコンパイラのリグレッションテストの高速化(コンパイラと設計,FPGA応用及び一般)
- Simulinkモデルにもとづいた並列Cコード生成(コード生成と通信技術,組込み技術とネットワークに関するワークショップETNET2011)
- Simulinkモデルにもとづいた並列Cコード生成(コード生成と通信技術,組込み技術とネットワークに関するワークショップETNET2011)
- 高位合成における可変スケジューリングの近似手法(VLSI設計技術,FPGA応用及び一般)
- 高位合成における可変スケジューリングの近似手法(VLSI設計技術,FPGA応用及び一般)
- 高位合成における可変スケジューリングの近似手法(VLSI設計技術,FPGA応用及び一般)
- A-3-4 Cコンパイラの算術式を対象としたランダムテストにおけるエラープログラムの最小化(A-3.VLSI設計技術,一般セッション)
- A-3-5 併合したCコンパイラ用テストスイートにおけるエラープログラムの同定(A-3.VLSI設計技術,一般セッション)
- システムと信号処理サブソの新たな展開を目指して(システムと信号処理及び一般)
- システムと信号処理サブソの新たな展開を目指して(システムと信号処理及び一般)
- システムと信号処理サブソの新たな展開を目指して(システムと信号処理及び一般)
- システムと信号処理サブソの新たな展開を目指して(システムと信号処理及び一般)
- A-3-14 メモリ使用量最小化を目的としたコンパイラの最適化オプションセットの探索(A-3.VLSI設計技術,一般セッション)
- A-3-6 高位合成のバインディングにおける演算器の部分共有(A-3.VLSI設計技術,一般セッション)
- ソフトウェアと再リンク可能なハードウェアの高位合成(高位合成と演算応用,FPGA応用及び一般)
- アセンブリコードを中間表現とする高位合成における関数の併合(高位合成と演算応用,FPGA応用及び一般)
- ソフトウェアと再リンク可能なハードウェアの高位合成(高位合成と演算応用,FPGA応用及び一般)
- アセンブリコードを中間表現とする高位合成における関数の併合(高位合成と演算応用,FPGA応用及び一般)
- ソフトウェアと再リンク可能なハードウェアの高位合成(高位合成と演算応用,FPGA応用及び一般)
- アセンブリコードを中間表現とする高位合成における関数の併合(高位合成と演算応用,FPGA応用及び一般)