2019 Fiscal Year Annual Research Report
Memory access optimizations for VLSI design with high-level synthesis
Project/Area Number |
16K00084
|
Research Institution | Tokyo City University |
Principal Investigator |
瀬戸 謙修 東京都市大学, 工学部, 講師 (10420241)
|
Project Period (FY) |
2016-04-01 – 2020-03-31
|
Keywords | 高位合成 / メモリアクセス最適化 / スカラリプレイス / メモリ分割 |
Outline of Annual Research Achievements |
高位合成技術を用いることで、ソフトウェア向けCプログラムから、ハードウェアアクセラレータを自動生成できるが、高品質なハードウェアアクセラレータを生成するには、高位合成技術を適用する前に、入力Cプログラムのチューニングを行う必要がある。Cプログラムの重要なチューニングとしてメモリアクセス最適化があり、中でも、研究代表者はスカラリプレイスが重要な技術と考え、研究を進めてきた。スカラリプレイスは、配列(メモリ)アクセスによって取得したデータをシフトレジスタに保存し次回以降の同じアドレスへの配列アクセスをシフトレジスタから実施することで、メモリアクセス競合を削減できる技術である。前年度までに、配列の添え字に定数が含まれる場合のスカラリプレイス、シフトレジスタをRAMベースの循環バッファを使用して生成するスカラリプレイスを研究し、論文として発表した。令和元年度は、それまでの技術をベースとして、シフトレジスタの初期化に伴うオーバーヘッドを削減する方法を研究した。スカラリプレイスを行う際、場合によって、シフトレジスタを複数の配列アクセスによって特定の条件のもとで初期化する必要があり、性能向上の足かせとなっていた。このような初期化の問題点を解決するために、従来技術ではループピーリングを行っていたが、コードサイズが増大し、回路性能や回路面積に悪影響を与えていた。スカラリプレイス前に、前処理のコード変換を行うことで、ループピーリングのようなコードサイズ増大のオーバーヘッドを抑えながら、初期化を削減する方法を提案した。提案手法を適用して評価した結果、生成されたハードウェアにおいて、最大で、40%の実行時間削減、27%の面積削減を達成できた。また、配列の添え字が不規則に変化する場合のメモリ分割技術と、スカラリプレイスとメモリ分割を組合せる方法を考案した。
|