2015年06月01日

5月度進捗

access1505.jpg5月度の弊社HPへのアクセス状況は図のようになりました。連休後は、ほぼ従来並みといえるでしょう。

5月度はふたたびコンサルティングの業務が立て込み、ソフト開発は遅々としております。また、今月度は、組み込みシステム開発技術展とテクフロンティア2015という二つの展示会を見学してまいりました。いずれも盛況、特にテクノフロンティアは、一角に設けられておりましたドローン展に黒山の人だかりでした。首相官邸の一件が大いに宣伝になったようですが、これを喜んでよいやらいけないやら、主催者も複雑な心境ではなかろうか、などと考えながら見てまいりました。

先月末から今月初めにかけて、弊社が出願した特許が二件公開されました。これらはいずれも、弊社のソフトの構成要素ではなく、より一般的な周辺技術に関するものです。

まず、特開2015-091045「プログラマブルロジックデバイスおよびこれを用いたコンピュータ」は、FPGAのRAMをコンピュータのメモリー空間にマッピングすることを特徴とするものです。

こういたしますと、FPGAの論理を決定するRAMをコード領域、データ格納用のRAMをデータ領域とみなすことで、CPUからは通常のCPUソフトにきわめて近い形でFPGAを取り扱うことができます。OS経由で論理と入力データをFPGA内部のRAMにロードしてFPGAのコントロールレジスタにクロック数を書き込むことで、FPGAは所定のクロック数だけ演算処理を行い結果をFPGAの内部RAMに残します。

この発明が狙っているのは、実用的な並列演算装置を安価に提供することです。数値演算を実行する論理は大規模となり、現実的な問題を解くような並列演算装置は非常に高価となるのですが、演算処理をいくつかのステップに分割して、それぞれのステップごとに論理を書き換えて実行すれば、小規模なFPGAでも複雑な演算処理が実行可能です。この場合、論理を規定するRAMを二重に設けて制御信号で使用側を切り替えるようにすれば、時間のかかる論理のロードを演算処理と並行して進めることもでき、高速処理が可能となります。

CPUを用いるコンピュータも、以前はメモリ領域の不足に悩まされたもので、今日ではバーチャルメモリーが一般的なのですが、古くはコード領域やデータ領域のオーバーレイという手法も使われておりました。この場合のオーバーレイとは、実行プログラムを複数のステップに分割し、それぞれのステップの実行コードのみを主記憶にロードして実行する手法です。この発明のデバイスは、論理がメモリーとして扱われますので、主記憶に対するオーバーレイはそのまま論理のオーバーレイとなり、少ない論理で大規模な演算処理が実行できることとなります。

弊社がFPGAを製造することは考えておらず、この発明はいずれかのFPGAメーカに採用していただきたい技術です。特許は他社の行動を制約するものですが、本特許に関しては、むしろ積極的に採用を働きかけたいところです。このようなFPGAが製造されることで、パイプライン処理はより一般的に行うことができるようになるはずですし、弊社のソフトもそれだけ市場が拡大するというものです。この特許の出願は、このような動きを推し進める際に何らかの力を与えてくれることを期待して行っております。

第二の公開特許は、特開2015-082152「誤差評価を伴う数値演算方法およびこのための装置」です。弊社の論理形成ソフトは、論理を簡素化するために有効桁のみを取り扱うことを特徴としておりますが、これにより、演算結果の有効性が保証されるという副次的効果もあります。

この副次的効果は、今日のコンピュータでも実現可能です。すなわち、ソフトで誤差を同時に演算すれば、演算結果の有効性を保証することが可能です。このようなことがなぜ行われていないかは、むしろ不思議なことですらあり、これが可能であることが広く知れ渡りますと、誤差の同時演算が一般的に行われるようになるかもしれません。

ソフトで値と誤差を別々に演算することは演算時間の増加を招くのですが、CPU自体に数値と誤差を同時に演算する機能を持たせれば、速度を落とすことなくこれを実現することができます。さらに、浮動小数点表現に改良を加え、値と誤差の双方を表現する数値型とすれば、プログラムを作成する際に何も考えなくても演算結果の有効性を保証することができます。

今回の出願は、このあたりをカバーするものです。この手の演算を弊社が独占するなどという大それたことを考えているわけではありませんが、誤差評価の重要性と技術的可能性に気づいているということはそれなりの優位性があるわけで、囲碁でいえば離れたところにぽつんと石を置いておくような、先々の展開を有利にとり進めるための一手と考えております。

ぜいたくを言えば、このような浮動小数点型仕様を決める際には、弊社がFPGA内部の数値表現に用いている浮動小数点型との変換が容易になるように配慮していただけると助かります。今日多く使用されているIEEE754浮動小数点フォーマットは、メモリーのビット幅節約を主眼に仕様を決めているようなところがあり、演算処理が複雑で処理に時間がかかるという問題があります。今日では、メモリーの価格は非常に低下しておりますので、メモリーのビット幅の圧縮よりも演算の簡素化を優先すべきところ。新しい浮動小数点型の規格検討が行われると致しますと、浮動小数点仕様自体を今日の技術的要請に合致させる良い機会となるように思われます。
posted by 管理人 at 10:23| Comment(0) | TrackBack(0) | 日記
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/136391318

この記事へのトラックバック
Powered by さくらのブログ