JP3911252B2 - 演算要素セル及び複数の演算要素セルを含むセルラプロセッサ - Google Patents
演算要素セル及び複数の演算要素セルを含むセルラプロセッサ Download PDFInfo
- Publication number
- JP3911252B2 JP3911252B2 JP2003138721A JP2003138721A JP3911252B2 JP 3911252 B2 JP3911252 B2 JP 3911252B2 JP 2003138721 A JP2003138721 A JP 2003138721A JP 2003138721 A JP2003138721 A JP 2003138721A JP 3911252 B2 JP3911252 B2 JP 3911252B2
- Authority
- JP
- Japan
- Prior art keywords
- cell
- value
- ecp
- cells
- storage means
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Advance Control (AREA)
Description
【発明の属する技術分野】
この発明はセルベースのコンピュータに関する。特に、この発明は、大規模に並列化された進化可能なコンピュータの鍵となる要素であるセルラプロセッサ(ECP)に関する。
【0002】
【従来の技術】
変化の激しい今日の社会は、コンピュータに大きく依存している。このため、種々の要求を満たす高速で正確なコンピュータが常に必要とされている。これは、より強力なコンピュータに対する需要につながっている。
【0003】
コンピュータの能力はコンピュータを構成する半導体素子の数、コンピュータの動作速度を高める素子の微細化の程度、コンピュータのアーキテクチャ、及びコンピュータ上で実行されるソフトウェアの有効性から引出される。
【0004】
高度に集積化された半導体素子を製造する努力がなされてきた。今日ではこれにより驚くべき結果が達成され、2GHz以上のクロック速度が達成されている。
【0005】
【発明が解決しようとする課題】
しかしながら、半導体素子はいまや非常に高度に集積化されているので、今後の10年間で微細化をさらに進めるのは困難であろう。次世代コンピュータの鍵となる要素はそのアーキテクチャであろう。従来のコンピュータのほとんどはフォンノイマン型、すなわち、プログラムを記憶装置に記憶するプログラム記憶型のコンピュータであり、プログラムカウンタが示すプログラムの命令をシーケンシャルに実行する。
【0006】
現代のフォンノイマン型コンピュータは、ある程度までプログラムの並列性を利用してはいるが、その動作原理は本質的にはシーケンシャルである。従って、並列性を十分に利用することはできない。さらに、限られたものとはいえ並列処理の能力を備えたフォンノイマン型コンピュータは、構造が複雑である。このため、特定のニーズに応えてコンピュータをカスタマイズすることが困難となる。
【0007】
従って、この発明の目的は、処理の並列性を十分に利用することが可能な新たなアーキテクチャのコンピュータを提供することである。
【0008】
この発明の別の目的は、処理の並列性を十分に利用することが可能な新たなアーキテクチャのコンピュータであって、必要に応じて容易にカスタマイズできるコンピュータを提供することである。
【0009】
この発明のさらに別の目的は、計算装置の製造プロセスを簡素化できる、新たなアーキテクチャのコンピュータを提供することである。
【0010】
この発明のさらに別の目的は、処理の並列性を十分に利用することが可能な新たなアーキテクチャのコンピュータであって、ナノスケールで実現可能なコンピュータを提供することである。
【0011】
【課題を解決するための手段】
この発明のある局面によれば、演算要素セルは、所望の計算結果を表す伝播値を記憶するための第1の記憶手段と、演算要素セルの隣接セルへの接続設定を表す凍結値を記憶するための第2の記憶手段と、隣接セルから凍結値及び伝播値を受取るための一組の受信手段と、一組の受信手段が隣接セルから受信した凍結値に基づき、第2の記憶手段に記憶された凍結値を計算するための第1の計算手段と、第2の記憶手段に記憶された凍結値、第1の記憶手段に記憶された伝播値、及び一組の受信手段が隣接セルから受信した伝播値の、予め定められた遷移関数によって、第1の記憶手段に記憶された伝播値を計算するための第2の計算手段と、第1の記憶手段に記憶された伝播値および第2の記憶手段に記憶された凍結値を隣接セルに出力するための一組の出力手段とを含む。
【0012】
好ましくは、第1の計算手段は、凍結値を決定するための規則を規定する遺伝子コードを記憶するための第3の記憶手段と、遺伝子コードによって規定された規則を、隣接セルから一組の受信手段が受信した凍結値に適用して、第2の記憶手段に記憶された凍結値を決定するための決定手段とを含む。
【0013】
より好ましくは、演算要素セルは、隣接セルの一つから遺伝子コードを受取り、受信した遺伝子コードを第3の記憶手段に記憶し、その遺伝子コードを他の隣接セルに出力するための遺伝子コード伝搬手段をさらに含む。
【0014】
演算要素セルはさらに、第1の外部クロック信号に従って第1の計算手段を駆動するための第1の駆動手段と、第1の外部クロック信号と異なる第2の外部クロック信号に従って第2の計算手段を駆動する第2の駆動手段とを含んでもよい。
【0015】
演算要素セルは、ほぼ直方体の形状を有してもよい。
【0016】
さらに、この直方体の形状は、互いに平行な第1の面と第2の面とを有してもよく、受信手段の一つは、第1の表面のそれぞれ予め定められた位置に設けられた、第1の記憶手段および第2の記憶手段にそれぞれ接続された端子を含み、出力手段の一つは、第2の面の、それぞれ予め定められた位置に対応する位置にそれぞれ設けられた、第1の記憶手段および第2の記憶手段にそれぞれ接続された端子を含む。
【0017】
第1の計算手段によって計算される各凍結値は論理1または論理0のいずれかの値をとってもよい。
【0018】
さらに、第2の計算手段によって計算される伝播値は、予め定められた整数の組のうちいずれかの整数をとってもよい。例えば、これは、論理1または論理0のいずれかの値をとってもよい。
【0019】
好ましくは、予め定められた遷移関数は複数の入力を有し、入力と予め規定された式とに基づいて計算された整数を返す。例えば、これは、複数の入力のうち一つが論理1であるときのみ、論理1を返してもよい。
【0020】
この発明の別の局面に従ったセルラプロセッサは、上述の演算要素セルを多数含む。演算要素セルはアレイに配列され、演算要素セルの各々はそれぞれの受信手段の組とそれぞれの出力手段の組とによって、隣接する演算要素セルと接続される。
【0021】
好ましくは、演算要素セルは2次元のアレイに配列される。演算要素セルは3次元のアレイに配列されてもよい。または、演算要素セルは1次元のアレイに配列されてもよい。
【0022】
【発明の実施の形態】
−ECPおよびECPセルの概要−
以下に記載のこの発明の実施の形態はセルラプロセッサ(ECP)に関する。ECPははんだ付け無しで組立てられる一組の演算要素セルである。各セルは2種類の値を計算する。すなわち「凍結値」と「伝播値」とである。これらの用語については、具体的な例を挙げながら後に説明する。あるセルの新たな凍結値は、「遺伝子コード」と隣接セルの凍結値とに基づいて計算され、そのセルの伝播値はその凍結値と隣接セルの伝播値とに基づいて計算される。ECPの伝播値の最初の組と最終的な組とが、それぞれ入力データと計算結果とを表す。中間セルの伝播値は計算の中間結果を表す。あるセルの凍結値はそのセルの遷移関数のパラメータを与え、そのセルの伝播値を計算する際のセルの振舞いを規定する。言換えれば、以下の説明から明らかになるとおり、凍結値はECPセルの、隣接セルへの接続の設定を表す。
【0023】
以下の説明から明らかなとおり、ECPセルは従来のボードを用いず組合せることができる。それらは互いに接続され協働する。ECP全体における所与のセルの役割は、隣接要素の役割とその遺伝子コードとから導出される。
【0024】
ECPははんだ付け無しで組立てられる。組立てられると、セルはそれ自身でその設定を決定する。これらの特性により、計算装置の生産プロセスが簡素化され、カスタマイズが容易になる。中間にワイヤがないので、ECPをナノスケールで実現することができる。ECPは遺伝子メカニズムを用いて、世代を通して自己発展が可能である。
【0025】
凍結値の一つは、所与のセルが胚であるか否かを示す。この例では、胚はゼロでない初期凍結値を持つ単一のセルである。
【0026】
このECPには2つの動作サイクルがある。目的である計算のための高周波数サイクルと、装置の自己設定のための低周波数サイクルとである。
【0027】
高周波数サイクルでは、セルの新しい伝播値が外部装置によって定められるか、又はそのセルの直前の伝播値とその隣接要素の直前の伝播値とに基づいてPVC(Pulsed Value Calculator:伝播値計算装置)によって生成される。
【0028】
低周波数サイクルでは、セルの新たな凍結値が、そのセルの直前の凍結値と隣接要素の直前の凍結値とに基づいて、「遺伝子コード」に従い、「リボソーム」によって生成される。
【0029】
隣接要素がなく、胚でもないセルは、空のセルである。すなわち、その伝播値及び凍結値は共にゼロに等しい。
【0030】
胚または胚を含むECPセルのグループに新たに取付けられたセルはいずれも、その胚から遺伝子コードを得るので、そのリボソームがPVCにパラメータを提供できる。従って、完全な装置を得るために必要なのは、胚一つを用意し、順にいくつもの空のセルを装着していくことだけであり、この間に装置はそれ自身の設定を決定していき、より有用な計算装置となる。2種の異なる遺伝子コードは、遺伝子メカニズムによる交差の対象となる。この特性により、ECPは交配が可能である。
−ECPセルの構造−
図1はこの発明の一実施の形態に従ったECPセル30の構造を示す図である。セルを3次元のアレイに配置して6個の隣接要素を有するようにしてもよいが、図では同じ層の4個の隣接要素への接続のみを示す。実際には、セルは、上層および下層に位置する隣接セルとデータをやり取りすることもできる。
【0031】
図1を参照して、ECPセル30はほぼ直方体の形状を有し、最大で6個の隣接セルから凍結値を受取るための、凍結値(FV)入力端子50、64、72,82及び場合によりさらに2つの端子と、ECPセル30の凍結値を隣接セルに出力するためのFV出力端子52、62、70、84及び場合によりさらに2つの端子と、隣接セルの伝播値を受取るための伝播値(PV)入力端子54、60、76、78及び場合によりさらに2つの端子と、ECPセル30の伝播値を隣接セルに出力するためのPV出力端子56、58、74、80及び場合によりさらに2つの端子とを有する。
【0032】
PV入力端子60及びPV出力端子58は、ECPセル30本体の一側面上に形成される。PV出力端子80及びPV入力端子78は、端子58及び60が形成される面に対向しかつそれと平行な、ECPセル30本体の別の側面上に形成される。PV入力端子60及びPV出力端子80と、PV出力端子58及びPV入力端子78とは、対応する位置に形成され、隣接するセルが伝播値を交換することができるようになっている。FV入力端子50及びFV出力端子70、FV出力端子52及びFV入力端子72、PV入力端子54及びPV出力端子74、PV出力端子56及びPV入力端子76、FV出力端子62及びFV入力端子82、ならびにFV入力端子64及びFV出力端子84はすべて、互いに対向しかつ平行な側面の対応する位置に形成される。
【0033】
ECPセル30はさらに、リボソーム42を駆動する第1のクロック信号を受信するための第1のクロック入力端子66と、第1のクロック信号を出力するための第1のクロック出力端子86と、PVC46を駆動する第2のクロック信号を受信するための第2のクロック入力端子68と、第2のクロック信号を出力するための第2のクロック出力端子88と、それぞれの隣接セルから遺伝子コードを受信し、遺伝子コード記憶装置48に記憶された遺伝子コードをそれぞれの隣接セルに送るための遺伝子コード(GC)入出力端子90、92、94、96及び場合によりさらに2つの端子、とを有する。
【0034】
ECPセル30は、FV出力端子52、62、70および84に接続され、ECPセル30の凍結値を記憶するためのFV記憶装置40と、GC入出力端子90、92、94、96に接続され、ECPセル30の遺伝子コードを記憶するためのGC記憶装置48と、遺伝子コードから導出された計算規則をFV記憶装置40に記憶された凍結値とFV入力端子50、64、72及び82を介して受信された4個の隣接セルの凍結値とに適用して、ECPセル30の凍結値を計算するための「リボソーム」42とを含む。
【0035】
リボソーム42は凍結値計算装置である。これを「リボソーム」と呼ぶのは、これがGC記憶装置48に記憶された遺伝子コードから一組の規則を導出し、ECPセル30の挙動を規定することになるECPセル30の凍結値を計算するからである。通常の意味では、リボソームは生物学の分野で、RNA(リボ核酸)を構成する材料をさす。
【0036】
ECPセル30はさらに、ECPセル30の伝播値を記憶するためのPV記憶装置44と、PV入力端子54、60、76、78、PV記憶装置44及びFV記憶装置40に接続され、PV記憶装置44に記憶された伝播値と隣接セルの伝播値とFV記憶装置40に記憶された凍結値とに基づきPV記憶装置44に記憶された伝播値を計算し更新するためのPVC46とを含む。
【0037】
ECPセル30の凍結値は、FV出力端子52、62、70及び84を介して隣接するセルに与えられ、それぞれのセルの凍結値を計算するのに用いられる。ECPセル30の伝播値は、PV出力端子56、58、74及び80を介して隣接するセルに与えられ、それぞれのセルの伝播値を計算するのに用いられる。
【0038】
PVC46は、第2のクロック入力端子68から第2のクロック出力端子88へと伝搬する第2のクロック信号を受けるよう接続され、第2のクロック信号の各立上りエッジで動作する。リボソーム42は、第1のクロック入力端子66から第1のクロック出力端子86へと伝搬する第1のクロック信号を受けるよう接続され、第1のクロック信号の各立上りエッジで動作する。第2のクロック信号は第1のクロック信号より周波数が高い。
−ECPの構造−
図2は3次元のアレイ状に接続されたECPセル30A−30I(ECPセル30と総称する)を含むECPを示す。この例では、ECPセル30AはECPセル30Bおよび30Dに接続されている。ECPセル30BはECPセル30A、30Cおよび30Eに接続されている。ECPセル30CはECPセル30Bおよび30Fに接続されている。ECPセル30DはECPセル30A、30Eおよび30Gに接続されている。ECPセル30EはECPセル30B、30D、30Fおよび30Hに接続され、以下同様である。隣接する層の隣接するセルは互いに接続される。この配列では、各セルが、隣接するセルすべての凍結値と伝播値とを受信することができる。同様に、各セルは隣接するセルから遺伝子コードを受取ることができる。この例では、ECPセル30A、30Dおよび30Gのいずれかが外部から遺伝子コードを受取り、これらを後続のセルに送ることができる。
−凍結値と伝播値−
以下、凍結値と伝播値との詳細を説明する。図3は、この例で用いられる隣接要素の番号順を示す。図3を参照して、ECPセル30は1番目から4番目までの隣接要素142、144、146及び148に接続されている。ECPセル30の伝播値は、「a0」(a0∈{0, 1})で示される。ECPセル30の凍結値は5個の要素を含み、それぞれd0,0、d0,1、d0,2、d0,3、及びd0,4((d0,0, d0,1, d0,2, d0,3, d0,4)∈{0, 1}5)で示される。この例では、0及び1はそれぞれ論理1及び論理0を示す。
【0039】
図4はECPセル30の凍結値d0,0、d0,1、d0,2、d0,3、及びd0,4の役割を模式的に示す。図4を参照して、凍結値d0,0はECPセル30が胚であるか否かを表す。他の凍結値は、それぞれの隣接セルの伝播値がECPセル30の伝播値a0を計算するにあたって考慮されるか否かを表すのに用いられる。また、あるセルの凍結値は、一組の規則に従って、隣接するセルの凍結値に基づいて計算される。
【0040】
図5は、ECPセル30のリボソーム42がどのように凍結値を計算するかを示す。図5を参照して、リボソーム42は、1番目の隣接要素142の凍結値152と、2番目の隣接要素144の凍結値154と、3番目の隣接要素146の凍結値156と、4番目の隣接要素148の凍結値158とを受信し、さらにFV記憶装置40に記憶された凍結値を受取って、遺伝子コードから導出された一組の規則に従ってこれらの値に基づき凍結値を計算する。この規則の組の例を図15に示し、その詳細は、ECPの具体例に関連して後述する。
【0041】
図6を参照して、この例でのECPセル30の伝播値はPVC46内でPVC遷移関数S1によって計算される。関数S1は4個の入力を受取り、その4個の入力のうち一つが1に等しいときのみ、1を返す、基本的な対称関数である。ある時間tにおけるECPセル30及びその4個の隣接するセルの伝播値をそれぞれa0,t、a1,t、a2,t、a3,t、およびa4,t (ただしuは高周波数サイクルの周期。)とし、さらに、時間tにおけるECPセル30の凍結値をd0,0,t、d0,1,t、d0,2,t、d0,3,t、d0,4,t、とすると、時間t+u における伝播値a0,t+uは以下の関数で得られる:a0,t+u=S1(d0,1,ta1,t,d0,2,ta2,t,d0,3,ta3,t,d0,4,ta4,t)。従って、この例ではセル30の伝播値はセル30の凍結値40と、隣接するセル142、144、146及び148のそれぞれの伝播値172、174、176及び178とに基づいて計算される。セル30の凍結値40は低周波数サイクルにおいてリボソーム42(図1を参照)によって計算される。
−ECPの動作−
図2に示されるECPは二つのフェーズで動作する。第1のフェーズでは、これは第1のクロックで動作して自身の設定を決定し、第2のフェーズでは第2のクロックで動作して、意図された計算を行なう。図2に示されたECPの第1のフェーズでの動作を図7に示し、第2のフェーズでの動作を図8に示す。
【0042】
図7を参照して、自己設定サイクルにおいて、ステップ100で、ECPセル30はそれぞれのGC記憶装置に遺伝子コードを格納する。次に、ステップ102で、初期凍結値が胚に与えられる。与えるべき凍結値の詳細は後述する。
【0043】
ステップ104で、各セルがその凍結値を隣接セルの凍結値及びそれ自身の凍結値に基づいて計算する。この計算は各セルにおいてリボソームによって繰返される。この計算が完了するときには、ECPは動作可能となっている。
【0044】
図8を参照して、ECPが動作可能となると、ステップ120で入力データが適当なセルに与えられる。入力データが与えられるセルは、ECPの設定により、予め定められている。
【0045】
ステップ122で、第2のクロック信号の適当な数のパルスがECPに与えられる。各パルスに応答して、ECP内のセルのPVCが伝播値を再計算する。
【0046】
ステップ124で、ECP設定の最終セルの出力が観察されるが、それが所望の計算の結果である。最終セルは、ECPの設定により予め定められる。
【0047】
−EPCの具体例−
図9は以下の説明に関連して用いられるセルの状態を示す図であって、伝播値a0 = 1であり、凍結値はそれぞれd0,0,d0,1, d0,2, d0,3, およびd0,4 = 1である。
【0048】
例えば、図10に示されたセル210は、その1番目の隣接要素に対応する凍結値d0,1が1であり、他の凍結値d0,2、d0,3およびd0,4が0であることを示す。このセル210の伝播値は、1クロック前の1番目の隣接セルの伝播値と同じになるはずである。言い換えれば、所与のクロックにおいて1番目の隣接セルの伝播値が「x」で表される場合、次のクロックにおけるこのセル210の伝播値も「x」となる。
【0049】
図11に示されるセル212は、1番目と2番目の隣接要素に対応するその凍結値d0,1、d0,2が1であり、他の凍結値d0,3及びd0,4が0であることを示す。x及びyが1番目と2番目の隣接要素の所与のクロックにおける伝播値をそれぞれ示すとき、このセルの真理値表は以下の通りとなる。この表のブール式は「(~x∧y)∨(x∧~y)」である。ここで「〜」は否定を示す。
【0050】
【表1】
図12に示されるセル214は、その1番目、2番目及び4番目の隣接要素に対応する凍結値d0,1、d0,2 及びd 0 ,4が1であり、d0,3がゼロであることを示す。1番目と2番目のセルの伝播値が共にxであり4番目のセルの伝播値がyであるような特定の場合には、このセルの真理値表は以下の通りである。この表のブール式は「~x∧y」である。
【0051】
【表2】
図9から図12の表現を用いて、模式的に図13に示すANDゲート220と等価なECPの構造と動作とを説明する。
【0052】
ECP版のANDゲート220を図14に示す。図14を参照して、ECP100は、各々が隣接するセルに接続された8個のECPセル30Aから30Hを含む。各セルはそれ自身の凍結値を持つ。各セルの凍結値は、それぞれのセルの表現から分かる。
【0053】
図15は各セルのリボソーム42が凍結値の計算に用いる規則の組を示す。これらの規則は、GC記憶装置48に記憶された遺伝子コードから導出される。凍結値が3個の添字を有する文字dによって表されていることに注意すべきである。第1の添字はその凍結値が属する隣接セルを示し、0であれば凍結値がそのセル自身に属することを示す。隣接セルの番号順は図3に示すとおりである。第2の添字は図4に示すのと同様に用いられる。最後の添字は時間すなわちサイクルを示す。
【0054】
図15を参照して、第1の規則R1は(このセルの時間tにおける)凍結値d0,0,tが1であるか、または(1番目の隣接セルの、時間tにおける)凍結値d1,1,tが1であれば、(このセルの、時間t+T、ただしTは低周波数サイクルでの期間、における)新たな凍結値d0,1,t+Tが1となるべきことを述べている。第2の規則R2は、(4番目のセルの時間tにおける)凍結値d4,0,tが1であれば、(このセルの、時間t+Tにおける)凍結値d0,2,t+Tが1となるべきことを述べている。他の規則R3、R4およびR5も同様に解釈される。
【0055】
上述のとおり、この発明のセルを含むECPははんだ付け無しで組立てられる。組立てられると、ECPはそれ自身の設定を決定する。図16から図20を参照して、設定フェーズにおけるECPの動作を説明し、その後、こうして設定されたECPの動作を図21から図24を参照して説明する。
−ECPの自己設定−
図16はこの実施例の8個のセル30Aから30Hを含む、時間t−5TにおけるECPの初期状態を示す。この状態では、セル30Aを除くすべてのセルの凍結値は0である。伝播値はすべて0である。この状態で、セル30Aに初期値d0,0,t-4T = 1が与えられる。すなわち、ECP30Aが胚となる。規則R1の結果、時間t=−4TでのECPの状態は図17に示す様になる。
【0056】
次に、ECP内のセルに規則R2及びR1を適用した結果、時間t=−3TにおけるECP内のセルの凍結値の状態は図18に示す様になる。時間t=−2Tにおいて、規則R4、R3及びR1の結果、凍結値は図19に示す通りとなる。最後に、時間t=−Tで、規則R1及びR5の結果、凍結値は図20に示す通りとなる。
−意図した計算−
このように設定されたECPは以下のように動作する。図21を参照して、初期伝播値y及びxが時間t=0でセル30Aおよび30Gにそれぞれ与えられる。この結果、ECPセル30A及び30Gの伝播値aa0,0及びag0,0はそれぞれy及びxとなる。
【0057】
次のサイクルにおいて時間t=u(uは高周波数サイクルの期間を表す)で、セル30Aの伝播値がセル30Bに転送される。セル30Gの伝播値はセル30D及び30Hに転送される。
【0058】
セル30Eはその2つの入力(左及び上部)でxを受取り、その下部の入力でyを受取る。従って、セル30Eの論理値は「~x∧y」である。従って、時間T=2uでのセル30Eの伝播値は、「~x∧y」の結果となる。セル30Bの伝播値(=y)はセル30Cに転送される。これを図23に示す。
【0059】
最後に、時間t=3uにおいて、セル30Fはセル30Eから値「~x∧y」を受取り、セル30Cから「y」を受取る。これらの入力の論理結果は「(~(~x∧y)∧y)」∨((~x∧y)∧~y))」となり、x∧yが得られる。こうして、論理積x∧y = xyがセル30Fの伝播値として得られる。従って、セル30Fの出力を観察することで、xとyとの論理積の結果を得ることができる。
【0060】
上述のとおり、ECPセルは、凍結値、伝播値、遺伝子コード及びクロック信号用の入力を有する。しか、ECPははんだ付け無しで複数のECPセルから組立てることができる。ボードは不要である。組立てられると、ECPは遺伝子コードに従ってそれ自身の設定を決定する。従って、ECPを用いて計算装置を製造するプロセスが簡単となる。セルの接続に配線が不要であるため、ECPセルをナノスケールで実現できる。
【0061】
さらに、こうして設定されたECPの動作は、その性質上、並列性を伴っている。従って、ECPとECPセルとは、大規模に並列化された計算装置を実現するのに好適である。
【0062】
この発明を、ECPセルが3次元のアレイに配列された実施の形態に関連して説明したが、ECPセルを1次元のアレイ、すなわち線状に接続しても、2次元のアレイ形状に接続してもよいことが、当業者には容易に理解されるであろう。さらに、この実施の形態はANDゲートに関するものであるが、どのような論理回路を実現するにもECPセルを使用可能であることが、当業者には容易に理解されるであろう。
【0063】
上述の実施例は例示であって、限定するものと解釈してはならない。この発明の範囲は実施例の記載を適切に考慮して請求項の各々によって定められるものであり、請求項の文言の意味とその均等の範囲内で修正が可能である。
【図面の簡単な説明】
【図1】 この発明の1実施例に従ったECPセルを模式的に示す図である。
【図2】 図1に示されたECPセルを含むECPを模式的に示す図である。
【図3】 隣接セルの番号順を模式的に示す図である。
【図4】 セルの凍結値の機能を模式的に示す図である。
【図5】 凍結値がどのように計算されるかを模式的に示す図である。
【図6】 伝播値がどのように計算されるかを模式的に示す図である。
【図7】 この発明の実施の形態に従ったECPの自己設定決定プロセスのフローチャートである。
【図8】 ECPの目的とする計算プロセスのフローチャートである。
【図9】 ECPセルの図形表示である。
【図10】 特定の凍結値の組を備えたセルの図形表示である。
【図11】 別の凍結値の組を備えたセルの図形表示である。
【図12】 さらに別の凍結値の組を備えたセルの図形表示である。
【図13】 ANDゲートのシンボルである。
【図14】 ANDゲートを実現するECPを模式的に示す図である。
【図15】 遺伝子コードから導出された凍結値を計算するための規則の組を示す図である。
【図16】 ECPの初期状態を示す図である。
【図17】 ECPの遷移時の設定を示す図である。
【図18】 ECPの別の遷移時の設定を示す図である。
【図19】 ECPのさらに別の遷移時の設定を示す図である。
【図20】 AND機能を達成するように設定されたECPを模式的に示す図である。
【図21】 動作中のECPの遷移状態を示す図である。
【図22】 動作中のECPの別の遷移状態を示す図である。
【図23】 動作中のECPのさらに別の遷移状態を示す図である。
【図24】 動作中のECPの最終状態を示す図である。
【符号の説明】
30,30A−30I,142,144,146,148,190,192,194,196,198,200,210,212,214 ECPセル、40 凍結値記憶装置、42 リボソーム、44 伝播値記憶装置、46 伝播値計算装置、48 遺伝子コード記憶装置、50,64,72,82 FV入力端子、52,62,70,84 FV出力端子、54,60,76,78 PV入力端子、66 第1のクロック入力端子、68 第2のクロック入力端子、86 第1のクロック出力端子、88 第2のクロック出力端子、90,92,94,96 GC入出力端子、100 ECP、152,154,156,158 凍結値、172,174,176,178 伝播値
Claims (15)
- 演算要素セルであって、
所望の計算結果を表す伝播値を記憶するための第1の記憶手段と、
前記演算要素セルの隣接セルへの伝播値の接続設定を表す凍結値を記憶するための第2の記憶手段と、
隣接セルから凍結値及び伝播値を受取るための一組の受信手段と、
前記一組の受信手段が隣接セルから受信した凍結値に基づき、前記第2の記憶手段に記憶される凍結値を計算するための第1の計算手段と、
前記第2の記憶手段に記憶された凍結値、前記第1の記憶手段に記憶された伝播値、及び前記一組の受信手段が隣接セルから受信した伝播値の、予め定められた遷移関数によって、前記第1の記憶手段に記憶される伝播値を計算するための第2の計算手段と、
前記第1の記憶手段に記憶された伝播値および前記第2の記憶手段に記憶された凍結値を隣接セルに出力するための一組の出力手段とを含む、演算要素セル。 - 前記第1の計算手段は、
凍結値を決定するための規則を規定する遺伝子コードを記憶するための第3の記憶手段と、
前記遺伝子コードによって規定された規則を,隣接セルから前記一組の受信手段が受信した凍結値に適用して、前記第2の記憶手段に記憶される凍結値を決定するための決定手段とを含む、請求項1に記載の演算要素セル。 - 隣接セルの一つから遺伝子コードを受取り、受信した遺伝子コードを前記第3の記憶手段に記憶し、その遺伝子コードを他の隣接セルに出力するための遺伝子コード伝搬手段をさらに含む、請求項2に記載の演算要素セル。
- 第1の外部クロック信号に従って前記第1の計算手段を駆動するための第1の駆動手段と、
前記第1の外部クロック信号と異なる第2の外部クロック信号に従って前記第2の計算手段を駆動するための第2の駆動手段とをさらに含む、請求項1から請求項3のいずれかに記載の演算要素セル。 - 前記演算要素セルは直方体の形状を有する、請求項1から請求項4のいずれかに記載の演算要素セル。
- 前記直方体の形状は、互いに平行な第1の面と第2の面とを有し、
前記受信手段の一つは、前記第1の表面のそれぞれ予め定められた位置に設けられた、前記第1の記憶手段および前記第2の記憶手段にそれぞれ接続された端子を含み、
前記出力手段の一つは、前記第2の面の、前記それぞれ予め定められた位置に対応する位置にそれぞれ設けられた、前記第1の記憶手段および前記第2の記憶手段にそれぞれ接続された端子を含む、請求項5に記載の演算要素セル。 - 前記第1の計算手段によって計算され、前記第2の記憶手段に記憶される、前記演算要素セルの隣接セルへの伝播値の接続設定を表す凍結値の各々は論理1または論理0のいずれかの値をとる、請求項1から請求項6のいずれかに記載の演算要素セル。
- 前記第2の計算手段によって計算される伝播値は、予め定められた整数の組のうちいずれかの整数をとる、請求項1から請求項7のいずれかに記載の演算要素セル。
- 前記第2の計算手段によって計算された伝播値は、論理1または論理0のいずれかの値をとる、請求項8に記載の演算要素セル。
- 前記予め定められた遷移関数は複数の入力を有し、入力と予め規定された式とに基づいて計算された整数を返す、請求項1から請求項9のいずれかに記載の演算要素セル。
- 前記予め定められた遷移関数は、前記複数の入力のうちの一つが論理1であるときのみ、論理1を返す、請求項10に記載の演算要素セル。
- 請求項1から請求項11のいずれかに記載の演算要素セルを複数含むセルラプロセッサであって、前記演算要素セルはアレイに配列され、演算要素セルの各々は、それぞれの受信手段の組とそれぞれの出力手段の組とによって、隣接する演算要素セルと接続される、セルラプロセッサ。
- 前記演算要素セルは2次元のアレイに配列される、請求項12に記載のセルラプロセッサ。
- 前記演算要素セルは3次元のアレイに配列される、請求項12に記載のセルラプロセッサ。
- 前記演算要素セルは1次元のアレイに配列される、請求項12に記載のセルラプロセッサ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003138721A JP3911252B2 (ja) | 2003-05-16 | 2003-05-16 | 演算要素セル及び複数の演算要素セルを含むセルラプロセッサ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003138721A JP3911252B2 (ja) | 2003-05-16 | 2003-05-16 | 演算要素セル及び複数の演算要素セルを含むセルラプロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004341900A JP2004341900A (ja) | 2004-12-02 |
JP3911252B2 true JP3911252B2 (ja) | 2007-05-09 |
Family
ID=33528011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003138721A Expired - Fee Related JP3911252B2 (ja) | 2003-05-16 | 2003-05-16 | 演算要素セル及び複数の演算要素セルを含むセルラプロセッサ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3911252B2 (ja) |
-
2003
- 2003-05-16 JP JP2003138721A patent/JP3911252B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004341900A (ja) | 2004-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Thompson | Fourier transforms in VLSI | |
Okuyama et al. | An Ising computer based on simulated quantum annealing by path integral Monte Carlo method | |
Nejatollahi et al. | Cryptopim: In-memory acceleration for lattice-based cryptographic hardware | |
US8793300B2 (en) | Montgomery multiplication circuit | |
US20120025868A1 (en) | Asynchronous Logic Automata | |
US8959134B2 (en) | Montgomery multiplication method | |
Meher et al. | Low-Latency, Low-Area, and Scalable Systolic-Like Modular Multipliers for $ GF (2^{m}) $ Based on Irreducible All-One Polynomials | |
US20110225110A1 (en) | Software control of hardware accelerated DNA codeword searching | |
Pala et al. | Logic-in-memory architecture made real | |
Gyoten et al. | Area efficient annealing processor for ising model without random number generator | |
JP3911252B2 (ja) | 演算要素セル及び複数の演算要素セルを含むセルラプロセッサ | |
Ahn | Computation of deep belief networks using special-purpose hardware architecture | |
Pete | Corner percolation on ℤ2 and the square root of 17 | |
Namin et al. | High-speed hardware implementation of a serial-in parallel-out finite field multiplier using reordered normal basis | |
US11301212B1 (en) | Multimodal digital multiplication circuits and methods | |
Giri et al. | Parallel and serial computation in nanomagnet logic: An overview | |
Jeon et al. | Elliptic curve based hardware architecture using cellular automata | |
Liang et al. | A three-step decomposition method for the evolutionary design of sequential logic circuits | |
Meher | Systolic formulation for low-complexity serial-parallel implementation of unified finite field multiplication over GF (2 m) | |
Magar | Intelligent and Superior Vedic Multiplier for FPGA Based Arithmetic Circuits | |
Qiu et al. | Hybrid architecture for accelerating DNA codeword library searching | |
US11604913B2 (en) | Optimization processing unit having subunits that are programmably and partially connected | |
JP3936133B2 (ja) | 半導体集積回路およびその設計方法 | |
Letras et al. | A novel partition strategy for efficient implementation of 3D Cellular Genetic Algorithms | |
US20050021585A1 (en) | Parallel counter and a logic circuit for performing multiplication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060110 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060313 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061010 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061206 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070116 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070126 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |