1.はじめに

PCAというと会計ソフトを思い出す人もいるだろう。それとはまったく違い、一言で言うとNTTが現在開発している世界初の回路構成 を自己改変できるLSIのことである。しかしこれでは何のことかさっぱりであると思う。そこで、このPCAの構造や特徴についてこれから 述べる。


2.PCAの意義

PCAの前にもFPGA(Field Programmable Gate Array)に代表されるようにユーザの手元で任意の論理回路を構成できる、いわゆるプログラマブルハードウェアは存在していた。プログラマブルハードウェアには次の利点がある。

  1. アプリケーション毎の専用回路を論理的に構成することができ、処理の高性能化、低コスト化を図ることができる。
  2. 物理的なハードウェアを交換することなく、仕様変更、バージョンアップへの対応ができることから、Time to Marketの製品開発が可能となり、省資源化にも役立つ。
  3. ハードウェア(すなわち論理回路構成情報)を論理的な電子データとして、ネットワーク上で流通させることが可能となる。

上記は静的な再構成のみで生じる利点であるが、さらに動作中の動的な再構成が可能になれば、以下のような利点も生まれてくる。

  1. 回路機能をオンデマンドで切り替えながら処理することにより、ハードウェア資源のサイズを仮想化できる。
  2. 環境の変化に応じて、回路を動的にチューニングできる。
FPGAに関しては、外部から部分的な再構成を可能とするものや、メモリを何面か持って切り替えることにより、あらかじめ用意されていた機能の切り替えを可能とするものが、それぞれ提案・試作されているにすぎない。つまり、デバイス内部のみで、動作中に構成情報を参照・生成するような、真の意味で動的再構成可能なデバイスは存在しなかったといえる。


3.PCAとは

PCAとはPlastic Cell ArchitectureのことでPlasticはこの場合材質のことではなく、「形成力のある」や「やわらかい」という意味で使われていて、用途・機能・仕様・環境などの変化に対応して自ら回路構成を自在に変えることのできる、という構造を表現したものである。では「自ら回路構成を自在に変える」とはどういうことか。 コンピュータは、ハードウェアとソフトウェアに大きく分けられ、ソフトウェアを取り替えることにより、任意の機能を実現できる。またハードウェアはメモリとプロセッサの2つに分けられる。メモリは任意の機能を実現するための可変構造の役目を担い、あらかじめ機能が組込まれたプロセッサはメモリに意味を与えることになるのである。 PCAは従来のコンピュータとは全く異なり、「可変部=論理回路」、「組込部=パケット通信網」として、図に示すように単位セルを2次元的に規則的に並べることで、この二重構造を実現している。


図 PCAの構造


さらに可変部自体も記憶素子を要素とする規則正しい構造で構成し、任意の論理回路を形成することが可能である。メモリとプロセッサの組合せではプロセッサ、すなわち組込部で処理が行われるのに対し、PCAでは論理回路、すなわち可変部で処理が行われる点が大きく異なる。


4.PCAの特徴

PCAは、これまでメモリとプロセッサで行っていたすべての機能を実現することができ、かつ処理を行う部分を動的に(回路を働かせながら)再構成できるという利点がある。各組込部(BP)はメッシュネットワークを形成し、可変部(PP)に構成される 回路モジュール(オブジェクト)の機能設定やオブジェクト間で通信されるメッセージのルーチングを行う。なお、各PPは隣接するセルのPPとの接続を持ち、複数のセルにまたがって任意の大きさのオブジェクトを構成できる。オブジェクト自体は大きさや形を変えないが、ネットワークを通じて、処理に必要なオブジェクトを新たに生成したり、複数のオブジェクトを並列処理することができる。例えば、過負荷となった処理に対応するため、自らのクローンであるオブジェクトを作り出し、そこに処理を分配することなどが可能である。


また、均質で拡張性の高い構造は、集積回路技術の進展の恩恵を最大限に得ることができる。さらにPCAでは、すべての信号の伝達をハンドシェイクという非同期回路で行うこととし、隣接セル間の配線しか存在しないように構成することができた。従来のコンピュータは、クロック信号に同期させることで高速な信号のやりとりを行っていたので、従来と比較して低消費電力にも有効である。 PCAは、環境の変化に適応するハードウェアなど、高性能で、低コストなシステムを構築するための革新的な技術と考えられる。


5.PCAの可能性

つまりPCAを簡単に述べると必要なときに必要な回路を創り出しながら処理するシステムが実現できる技術であるということなのだ。ではこのPCAという技術でいったい何ができると考えられているのだろうか。 例えば、携帯電話に使用すれば、規格の違うさまざまな通信方式に1台で柔軟に対応することができる。もしくは、処理するデータが文字情報であるか動画情報であるかに応じて、それぞれの処理に適切な回路に変化させて機能することも可能である。また、処理量の増大に対して回路が自己増殖することで処理能力を倍増させる、回路自身が自己改変しながら最適なハードウェアへと進化していく、故障に対して自己修復で対応するといった、従来のコンピュータ像やネットワーク像を一新する自律的なシステムの実現も見込まれている。


6.まとめ

PCAはここ最近開発された技術であり、まだまだ安定した技術としては言えないかもしれないが、逆にいうとまだまだ大きな可能性を秘めている技術だとも言えるのではないだろうか。これは勝手な妄想であるが、このPCAの機能を考えると、この技術が発展すればソフトウェアという概念がなくなってしまうというのも大げさな話ではないかもしれない。





トップページへ