演算器構成を実行時に動的に変更できるVLIWプロセッサ"EVLIW Processor"を提案し、学会にて発表を行った。提案のVLIWプロセッサについて、同一構成の演算器を複数個チップに搭載することはチップの面積だけが問題である。そこで、演算器どうしを接続する命令により動的に変更するためのスイッチを加えてやれば、演算器間のデータの移動は演算パイプライン上で行えるため、レジスタへのアクセス頻度が減少することになる。つまり、レジスタファイルのポート数制限が緩和されることになる。あるいは、より少ないポート数のレジスタファイルとすることでレジスタ数の増加や速度の向上を目指すことも可能となる。例としてアプリケーションで2つの値の和と差を同時に求めたい場合、従来のプロセッサではソースとなる値をレジスタに保存しつつ和と差を求める必要があるが、提案のプロセッサではそのような演算器の接続とすることでソースのレジスタへのアクセスだけで同時に和と差が求まる。積和演算に付いても同様である。DSPのように専用の命令を用意する、という解決方法は従来からあったが、考えられるそのような時間を消費しがちな簡単な演算についてすべてを用意するわけにはいかず、そのような命令の有無がDSPと汎用プロセッサの違いの一つでもある。汎用プロセッサに見られるように、多数の演算器へ効率良くデータを流し込むためには、CPUコアとメモリの同一チップ化が必要であると考えている。それ用のコンパイラについてはこれから研究を進めていくことになる。
|