特許第6916119号(P6916119)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ サントル ナシオナル ドゥ ラ ルシェルシェサイアンティフィク(セエヌエールエス)の特許一覧 ▶ コルジュ ドゥ フランスの特許一覧

<>
  • 特許6916119-並列確率的マイクロプロセッサ 図000003
  • 特許6916119-並列確率的マイクロプロセッサ 図000004
  • 特許6916119-並列確率的マイクロプロセッサ 図000005
  • 特許6916119-並列確率的マイクロプロセッサ 図000006
  • 特許6916119-並列確率的マイクロプロセッサ 図000007
  • 特許6916119-並列確率的マイクロプロセッサ 図000008
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6916119
(24)【登録日】2021年7月19日
(45)【発行日】2021年8月11日
(54)【発明の名称】並列確率的マイクロプロセッサ
(51)【国際特許分類】
   G06F 7/70 20060101AFI20210729BHJP
【FI】
   G06F7/70
【請求項の数】9
【全頁数】13
(21)【出願番号】特願2017-568453(P2017-568453)
(86)(22)【出願日】2016年6月17日
(65)【公表番号】特表2018-525726(P2018-525726A)
(43)【公表日】2018年9月6日
(86)【国際出願番号】EP2016064023
(87)【国際公開番号】WO2017001212
(87)【国際公開日】20170105
【審査請求日】2019年5月17日
(31)【優先権主張番号】1556102
(32)【優先日】2015年6月29日
(33)【優先権主張国】FR
(73)【特許権者】
【識別番号】501089863
【氏名又は名称】サントル ナシオナル ドゥ ラ ルシェルシェ サイアンティフィク
(73)【特許権者】
【識別番号】518000899
【氏名又は名称】コルジュ ドゥ フランス
(74)【代理人】
【識別番号】100099759
【弁理士】
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【弁理士】
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100112357
【弁理士】
【氏名又は名称】廣瀬 繁樹
(74)【代理人】
【識別番号】100160705
【弁理士】
【氏名又は名称】伊藤 健太郎
(72)【発明者】
【氏名】ジャック ドルレ
(72)【発明者】
【氏名】ピエール ベシエール
【審査官】 白石 圭吾
(56)【参考文献】
【文献】 米国特許第06745219(US,B1)
【文献】 特開平07−334478(JP,A)
【文献】 特開2002−024000(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 7/58 − 7/72
(57)【特許請求の範囲】
【請求項1】
入力として、それぞれが2つの所与の入力確率値のバイナリコーディングをそれぞれ表す2つのランダムかつ独立バイナリ入力信号(A、B)を受信でき、出力として、2つの入力信号(A、B)から少なくとも1つのランダムバイナリ出力信号(C)を生成できる、少なくとも1つの確率的計算基本モジュール(1)を備えるマイクロプロセッサであって、前記確率的計算基本モジュール(1)は、
前記出力信号(C)が、前記所与の入力確率値の関数として出力確率値のバイナリコーディングを表すように、2つの入力信号(A、B)を合成して、少なくとも1つの決定されたロジック関数に従う前記出力信号(C)を生成できる、少なくとも1つのプログラマブルロジックユニット(2)と、
前記ロジックユニット(2)により生成された出力信号(C)によりコード化された出力確率値を格納できる少なくとも1つのアドレス指定可能メモリ(3)と、
前記ロジックユニット(2)により生成された前記出力信号(C)によりコード化された出力確率値の、前記メモリ(3)における書き込み速度を制御するための第1ランダムインパルスクロック信号(CLK1)を作成できる少なくとも1つの第1確率的クロック(4)と、
前記メモリ(3)に格納された出力確率値の、所与の時間帯における現在の評価を提供するように、前記メモリ(3)の読み取り速度を制御するための第2ランダムインパルスクロック信号(CLK2)を作成できる少なくとも1つの第2確率的クロック(5)と、を備える、マイクロプロセッサ。
【請求項2】
前記確率的計算基本モジュール(1)は、一方では、入力として、それぞれが前記2つの所与の入力確率値の確率的インパルスバイナリコーディングまたは電信時間バイナリコーディングをそれぞれ表すランダムかつ独立バイナリ入力信号(A、B)を受信でき、他方では、出力として、前記出力信号(C)を生成でき、
前記ロジックユニット(2)は、前記出力信号(C)が、前記所与の入力確率値の関数として前記出力確率値の確率的インパルスバイナリコーディングまたは電信時間バイナリコーディングを表すように、前記2つの入力信号(A、B)を合成して、前記決定されたロジック関数に従う前記出力信号(C)を生成できる、請求項1に記載のマイクロプロセッサ。
【請求項3】
前記ロジックユニット(2)は、前記出力信号(C)によりコード化された前記出力確率値が、前記2つの入力信号(A、B)によりそれぞれコード化された前記入力確率値の積、和、および除法にそれぞれ対応するように、前記2つの入力信号(A、B)を合成して、積、和、および除法関数の1つまたは複数に従う前記出力信号(C)を生成できる、請求項1または2に記載のマイクロプロセッサ。
【請求項4】
前記マイクロプロセッサは、請求項1〜3のいずれか一項に記載の少なくとも1つの確率的計算基本モジュール(1)のうちの複数の確率的計算基本モジュール(1)を備え、前記マイクロプロセッサは、少なくとも2つの対応する確率的計算を並列して実施できるように、前記複数の確率的計算基本モジュール(1)から決定された少なくとも2つの確率的計算基本モジュール(1)を介して、少なくとも2つの出力信号(C)を並列して生成できる、請求項1〜3のいずれか一項に記載のマイクロプロセッサ。
【請求項5】
前記少なくとも2つの決定された確率的計算基本モジュール(1)は、2つの確率的計算基本モジュール(1)間で信号が交換されることを可能にするように相互接続される、請求項4に記載のマイクロプロセッサ。
【請求項6】
前記相互接続された2つの確率的計算基本モジュール(1)の少なくとも1つの前記メモリ(3)は、前記相互接続された2つの確率的計算基本モジュール(1)間の相互接続と入力および出力信号(A、B、C)の交換とに関する相互接続指令を格納できる、請求項5に記載のマイクロプロセッサ。
【請求項7】
前記マイクロプロセッサは、少なくとも2つの離れた確率的計算基本モジュール(1)と、2つの離れた確率的計算基本モジュール(1)間で入力および出力信号(A、B、C)が交換されることを可能にするように、1つまたは複数のアドレス指定可能スイッチボックスと、を備える、請求項4〜6のいずれか一項に記載のマイクロプロセッサ。
【請求項8】
前記マイクロプロセッサは、それぞれが二進数と関連付けられた確率値のバイナリコーディングを表すランダムバイナリ信号を生成できる1つまたは複数のランダム信号生成器を備え、
前記確率的計算基本モジュール(1)は、入力として、前記ランダム信号生成器により生成された2つのランダムかつ独立バイナリ入力信号(A、B)を受信できる、請求項1〜7のいずれか一項に記載のマイクロプロセッサ。
【請求項9】
指令を格納できる少なくとも1つの中央メモリと、前記中央メモリに格納された指令を実行できる少なくとも1つの中央演算装置と、を備えるコンピュータシステムであって、前記中央演算装置は、請求項1〜8のいずれか一項に記載の少なくとも1つのマイクロプロセッサを備える、コンピュータシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、確率的タイプ(type stochastique)のマイクロプロセッサに関し、特に、並列計算を行うことを可能にするマイクロプロセッサに関する。本発明は、金融市場、マクロ経済モデル、天気予報、ロングタームエボルーションモデルなどの、確率の計算(calcul de probabilite’)および不確定性の管理(la gestion de l'incertitude)が頻繁に使用される分野に対して特に適用可能である。本発明は、また、学習法(me’thodes d'apprentissage)が使用される分野、例えば、特に、ロボット工学および人工知能における遺伝的アルゴリズム(algorithmes ge’ne’tiques)の場合にも適用可能である。また、暗号化の分野に対しても適用可能である。一般的に、本発明は、確率のまたは確率的性質の集中計算(calculs intensifs de nature probabiliste ou stochastique)が必要とされるいかなる分野にも適用可能である。
【背景技術】
【0002】
現在、周知のコンピュータシステムにおいて使用されるクラシックマイクロプロセッサ(microprocesseurs classiques)は、計算速度の点において物理的上限に達している。
【0003】
実際には、光の速度は、クロックタイミングに上限境界(borne supe’rieure)を課す。2000年代以降、クラシックマイクロプロセッサのクロックのタイミングは、3または4GHz程度で停滞している。
【0004】
更に、これらのクラシックマイクロプロセッサは、小型化(miniaturisation)の点においても物理的下限に達する。
【0005】
実際には、集積回路のエッチング寸法は、10nmのレベルより下がらず、それより下では、ロジック回路の動作が不安定になり確定的でなくなる(non de’terministe)。したがって、ロジック回路は、その信頼性を損ねることなく更に小型化することはできない。
【0006】
これらの限界を越え、計算力に対してますます高まる需要に対応するために、多数のプロセッサを並列に動作させることができる。しかし、この動作に基づくシステムは、高額かつ煩雑であり(volumineux)、適切な基盤(infrastructure)を必要とし、大量のエネルギを消費する。
【0007】
更に、より具体的にはエネルギ消費に関して、熱雑音(bruit thermique)の概念が重要な役割を果たす。実際には、熱雑音「レベル」より下では、クラシックマイクロプロセッサの構成要素の大半を構成するトランジスタから、確定的動作を得ることはもはや不可能である。
【0008】
更に現在、増大しつつあるアプリケーションは、確率の計算および不確定性の管理(gestion de l'incertitude)を大量に引き起こす。これらのアプリケーションは、クラシックコンピュータシステム上で実施される場合、コンピュータシステムが完全に確定的に作用する(fonctionner)ように設計されているので、計算能力の点において非常に高額なものとなる。
【0009】
しかし、実際、アプリケーションの分野に関係なく、大規模な確率モデルのシミュレーションは、特に「マルチコア」の空調および冷却をかなり必要とするインフラおよびエネルギ消費の点で非常に高額な設備において、クラスタまたはスーパーコンピュータタイプのアーキテクチャに従って、相互接続された多数のプロセッサを備える確定的マシンにより実現されている。
【発明の概要】
【発明が解決しようとする課題】
【0010】
したがって、本発明の目的の1つは、上述した問題を解決することである。このように、本発明は、特に、完全に確定的な動作の制約を放棄することにより、上記の技術的障壁を解決することを可能にするマイクロプロセッサを提案することを目的とする。
【課題を解決するための手段】
【0011】
したがって、本発明は、第1態様によれば、入力として、それぞれが2つの所与の入力確率値のバイナリコーディングをそれぞれ表す(repre’sant chacun un codage binaire respectivement de deux valeurs de probabilite’ en entre’e donne’es)、少なくとも2つのランダムかつ独立バイナリ入力信号を受信でき、出力として、2つの入力信号から少なくとも1つのランダムバイナリ出力信号を生成できる、少なくとも1つの確率的計算基本モジュールを備えるマイクロプロセッサに関する。
【0012】
基本モジュールは、出力信号が、所与の入力確率値に関連する出力確率値(une valeur de probabilite en sortie fonction des valeurs de probabilite’ en entre’e donne’es)のバイナリコーディングを表すように、2つの入力信号を合成して、少なくとも1つの決定されたロジック関数に従う(selon)出力信号を生成できる、少なくとも1つのプログラマブルロジックユニットを備える。
【0013】
基本モジュールは、また、ロジックユニットにより生成された出力信号によりコード化された出力確率値を格納(stocker)できる少なくとも1つのアドレス指定可能メモリ(me’moire adressable)も備える。
【0014】
基本モジュールは、更に、ロジックユニットにより生成された出力信号によりコード化された出力確率値の、メモリにおける書き込み速度を制御するための第1ランダムインパルスクロック信号を作成できる少なくとも1つの第1確率的クロックを備える。
【0015】
基本モジュールは、また、メモリに格納された出力確率値の、所与の時間帯における現在の評価(e’valuation courante)を提供するように、メモリの読み取り速度を制御するための第2ランダムインパルスクロック信号を作成できる少なくとも1つの第2確率的クロックも備える。
【0016】
ある実施の形態によれば、マイクロプロセッサは、更に、単独で考察されるか、またはすべての技術的に可能な組み合わせによる、下記の特徴の1つまたは複数を有する。
【0017】
−基本モジュールは、一方では、入力として、それぞれが2つの所与の入力確率値の確率的インパルスバイナリコーディング(codage binaire impulsionnel stochastique)または電信時間バイナリコーディング(codage binaire temporel te’le’graphique)をそれぞれ表すランダムかつ独立バイナリ入力信号を受信でき、他方では、出力として、電信またはインパルスタイプのランダムバイナリ出力信号を生成でき、ロジックユニットは、出力信号が、所与の入力確率値に関連する出力確率値の確率的インパルスバイナリコーディングまたは電信時間バイナリコーディングを表すように、2つの入力信号を合成して、決定されたロジック関数に従う出力信号を生成できる。
【0018】
−ロジックユニットは、出力信号によりコード化された出力確率値が2つの入力信号によりそれぞれコード化された入力確率値の積、和、および除法にそれぞれ対応するように、2つの入力信号を合成して、積、和、および除法関数の1つまたは複数に従う出力信号を生成できる。
【0019】
−マイクロプロセッサは、複数の上記のような基本モジュールを備えており、少なくとも2つの対応する確率的計算を並列して実施できるように、前記基本モジュールから決定された少なくとも2つの基本モジュールを介して、少なくとも2つの出力信号を並列して生成できる。
【0020】
−少なくとも2つの決定された基本モジュールは、それらの間で信号が交換されることを可能とするように相互接続される。
【0021】
−相互接続された2つの基本モジュールの少なくとも1つのメモリは、相互接続された2つの基本モジュール間の相互接続と入力および出力信号の交換とに関する相互接続指令を格納できる。
【0022】
−マイクロプロセッサは、少なくとも2つの離れた基本モジュールと、2つの離れた基本モジュール間で、入力および出力信号が交換されることを可能にするように、1つまたは複数のアドレス指定可能スイッチボックス(boi^tes d’interrupteurs)と、を備える。
【0023】
−マイクロプロセッサは、1つまたは複数のランダム信号生成器を備えており、各信号生成器は、二進数と関連付けられた確率値のバイナリコーディングを表すランダムバイナリ信号を生成でき、基本モジュールは、入力として、ランダム信号生成器により生成された2つのランダムかつ独立バイナリ入力信号を受信できる。
【0024】
本発明は、また、第2態様によれば、コンピュータシステム(syste’me informatique)にも関し、コンピュータシステムは、指令を格納できる少なくとも1つの中央メモリ(me’moire centrale)と、中央メモリに格納された指令を実行できる少なくとも1つの中央演算装置と、を備えており、中央演算装置は、上記のような、少なくとも1つのマイクロプロセッサを備える。
【発明の効果】
【0025】
このように、本発明に係るマイクロプロセッサは、ロジックゲート、アドレス指定可能メモリおよびスイッチなどの確定的動作を有するクラシック構成要素と、ランダム動作を有するナノ構成要素(nano-composants)と、を同一基板上で合成して、製造、保守、運用およびエネルギ消費のコストを削減しつつ、確率計算における性能レベルを相当に増大させることを可能にする。
【0026】
複数の基本モジュールが並列に動作するアーキテクチャの場合、本発明の確率的マイクロプロセッサは、多数のメモリおよびロジック回路と共に、多数のクロックおよびランダム事象を生成する構成要素を同一集積回路内に集約する。
【0027】
事象の確率的性質は、同期ロックを除去し(supprime)、多数の動作を並列に行うことを可能にする。
【0028】
実際、ランダムクロックを使用できる高度な並行処理(le haut degre’ de paralle’lisme qu'autorise l'utilisation d'horloges ale’atoires)は、性能レベルを大幅に増大する。
【0029】
このように、従来のアーキテクチャを有するマイクロプロセッサに対して、本発明に係るマイクロプロセッサは、確率および確率的計算を、格段に速く行う(effectuer)ことを可能にする。
【0030】
より一般的には、クラシックマイクロプロセッサの完全に確定的および予測可能な作用(fonctionnement)の制約を放棄することより、本発明に係るマイクロプロセッサを、非常に大きな規模で、確率的プロセスを生成かつシミュレートするために使用することを可能にし、それにより、複雑な現象のモンテカルロタイプのシミュレーションの適用分野を大幅に拡大し、金融市場、マクロ経済モデル、天気予報、またはロングタームエボルーションモデルにより示されるような、多数のランダム変数に関連する確率推論問題を解決またはそれにアプローチすることを可能にする。
【0031】
本発明に係るマイクロプロセッサは、更に、非アルゴリズム的、または部分的にアルゴリズム的な方法で、任意の分布から引き出される乱数を生成することを可能にする。
【図面の簡単な説明】
【0032】
図1】本発明に係るマイクロプロセッサの一例における確率的計算基本モジュールのアーキテクチャを示す概略図である。
図2】本発明に係るマイクロプロセッサにおける確率的計算基本モジュールのプログラマブルロジックユニットのすべてまたは一部を形成する基本ロジック構成要素の例を示す概略図である。
図3】本発明に係るマイクロプロセッサにおける推論計算基本モジュールのプログラマブルロジックユニットのすべてまたは一部を形成する基本ロジック構成要素の例を示す概略図である。
図4】本発明に係るマイクロプロセッサにおける推論計算基本モジュールのプログラマブルロジックユニットのすべてまたは一部を形成する基本ロジック構成要素の例を示す概略図である。
図5】本発明に係るマイクロプロセッサにおける推論計算基本モジュールのプログラマブルロジックユニットのすべてまたは一部を形成する基本ロジック構成要素の例を示す概略図である。
図6】本発明に係るマイクロプロセッサにおける推論計算基本モジュールのプログラマブルロジックユニットのすべてまたは一部を形成する基本ロジック構成要素の例を示す概略図である。
【発明を実施するための形態】
【0033】
本発明の特徴と利点は、非制限的な例としてのみのために提供される下記の記述を、下記の付随する図面を参照して読むことにより明白となろう。
【0034】
本発明に係るマイクロプロセッサは、図1における1つの例に例示されるように、少なくとも1つの確率的計算基本モジュール1を備える。
【0035】
この基本モジュールは、入力として、2つの入力信号AおよびB、またはそれ以上の信号を受信できる。
【0036】
これらの入力信号AおよびBは、ランダムかつ独立バイナリ信号であり、それぞれは、2つの所与の入力確率値(deux valeurs de probabilite’ en entre’e donne’es)のバイナリコーディングをそれぞれ表す。
【0037】
確率値に対する基本コーディングの2つのタイプ、すなわち、確率的インパルスコーディング(codage impulsionnel stochastique)および電信時間コーディング(codage temporel te’le’graphique)を使用できる。
【0038】
確率的インパルスコーディングでは、任意の時間にパルスを観測する可能性がコード化された確率値に関連するように、信号は、一連の超短パルスを有する。
【0039】
このように、このタイプのコーディングでは、決定された時間間隔の間に観測されるパルス数は、コード化された確率の値の推定値を提供する。パルスの平均周波数を考慮すると、決定された時間間隔が長いほど、確率値のコーディングの精度はより高くなる。
【0040】
電信時間コーディングでは、決定された観測時間間隔の合計持続時間に対する、信号が状態1である累積時間の比が、コード化された確率値に等しくなるように、信号は、0の状態と1の状態との2つの状態間でランダムに切り替わる。
【0041】
確率値のコーディングのこれらの2つのタイプは相補的である。両者はバイナリ電気信号に基づいており、したがって、クラシックロジック回路と互換性がある。
【0042】
インパルス信号における2つの連続するパルス間の、または電信信号における2つの状態遷移間の時間間隔の統計的分布に対する理論的制約はない。
【0043】
特に、ポアソン統計に従う分布は、完全に適切である。この場合、確率的パルスを生成するクロックは、単一のパラメータ、すなわち、平均周波数により定義される。パルスの持続時間は、可能な限り短くてよいが、スイッチの状態遷移を可能にする程度には十分でなければならない。
【0044】
構成要素のランダム動作の原因となる物理プロセスは、互いに対して独立でなければならない。特に、物理プロセスは、2つの個別の信号間で時間的相関をなしてはならない。
【0045】
本発明に係るマイクロプロセッサは、図1には示されていないが、それぞれが、例えば、上記のタイプの1つに従う、二進数に関連付けられた確率値のバイナリコーディングを表すランダムバイナリ信号を生成することを可能にする1つまたは複数のランダム信号生成器を備えてもよい。そして、基本モジュール1は、入力として、ランダム信号生成器により生成された入力信号AおよびBを受信する。
【0046】
基本モジュール1は、出力として、2つの入力信号AおよびBから、少なくとも1つのランダムバイナリ出力信号Cを生成できる。
【0047】
この基本モジュール1は、また、少なくとも1つのプログラマブルロジックユニット2を備える。
【0048】
このロジックユニット2は、入力信号AおよびBの組み合わせから決定される少なくとも1つのロジック関数に従う出力信号Cを生成することを可能にするように、決定されたロジックアーキテクチャに従って編成された、一定数のクラシックロジック構成要素を備える。
【0049】
このように、出力信号Cは、入力信号AおよびBによりそれぞれコード化された入力確率値の関数である出力確率値のバイナリコーディングを表す。
【0050】
ロジックユニット2により実現される関数に従って、および入力信号Aの性質および入力信号Bの性質に従って、出力信号Cは、入力確率値に関連する出力確率値の確率的インパルスバイナリコーディングまたは電信時間バイナリコーディングを表す。
【0051】
図2図6は、基本モジュール1のロジックユニット2のすべてまたは一部を形成できる基本ロジック構成要素の例を示す。
【0052】
一般的に、本発明に係るマイクロプロセッサは、ランダム信号AおよびBを使用する確率計算のいかなるタイプをも行うことを可能にしなければならない。しかし、確率論においては、すべての計算は、記述するのは容易であるが、従来のマイクロプロセッサで実装するにはコストがかかる3つの規則(re`gles)の組み合わせに基づいている。
【0053】
第1の規則は、積の規則、またはベイズの規則であり、それに従うと、2つの変数AおよびBの結合確率(probabilite’ conjointes)は、2つの変数AおよびBのうちの第1の変数の確率に、第1の変数による条件付きの他方の変数の確率を掛けた積に等しい。
P(A&B)=P(A)・P(B|A)=P(B)・P(A|B)
【0054】
第2の規則は、和の規則、または周辺化(marginalisation)規則であり、それに従うと、第1変数A上の確率分布は、第1変数Aと第2変数Bのすべての可能な値に対する第2変数Bとの結合確率の和(la somme des probabilite’ conjointes de la premie`re variable A et d'une deuxie`me variable B pour toutes les valeurs possibles de la deuxie`me variable B)に等しい。このように、第2変数Bが1からnのn個の値を取ることができる場合、和の規則により、
P(A)=P(A&B=1)+P(A&B=2)+・・・+P(A&B=n−1)+P(A&B=n)
となる。
【0055】
第3の規則は、正規化の規則である。これは、確率論において課せられる制約に起因し、それによると、変数の可能な値のすべての確率の和は1に等しくなければならない。しかし、計算を乗法因子内で(a` un facteur multiplicatif pre`s)行うと、より容易であることがよくある。したがって、この正規化の規則は、該変数の可能な値のすべてに対する確率の最終的な和が1に等しくなるように、比例中間計算(calcul interme’diaires proportionnels)の結果を正規化因子で割ることを課する。
【0056】
このように、本発明に係るマイクロプロセッサは、確率値を表すランダム物理信号に、積、和、および除法演算と同等なことを行うことを可能にしなければならない。
【0057】
これら3つの演算は、前に見たように、入力として電信またはインパルスタイプの2つの確率的またはランダム信号を使用するロジックユニット2において実装されたロジック回路により行うことができる。
【0058】
例として、図2および3に例示されるが、積は、入力として両方とも電信タイプの(図3)、または1つが電信タイプで他方がインパルスタイプの(図2)2つの独立ランダム信号を使用する「AND」ロジックゲートにより行うことができる。
【0059】
このように、図2の例においては、「AND」ロジックゲートは、入力として、1である確率がP(A=1)と記述される電信信号Aと、平均周波数がFBと記述されるインパルス信号Bを受信する。この2つの入力信号AおよびBはランダムかつ独立である。
【0060】
そして、出力信号Cは、平均周波数FCが、入力インパルス信号Bの平均周波数と入力電信信号Aの1である確率(probabilite’)との積であるランダムインパルス信号である。
C=FB・P(A=1)
【0061】
言い換えれば、出力信号Cの平均周波数FCは、入力信号Bの平均周波数FBに、合計観測時間に対する入力信号Aが状態1で経た時間(temps passe’ par le signal d'entre’e A dans l'e’tat 1)の比を掛けた積に等しい。
【0062】
更に、図2における例により例示されるように、「AND」ロジックゲートは、電信タイプの入力信号AまたはBを、インパルスタイプの出力信号Cに変換することを可能にする基本ロジック構成要素を構成する。
【0063】
図3の例においては、「AND」ロジックゲートは、入力として、1である確率がそれぞれP(A=1)とP(B=1)と記述される2つの電信信号AおよびBを受信する。この2つの入力信号AおよびBはランダムで独立である。
【0064】
そして、出力信号Cは、1である確率が、入力電信信号Aの1である確率と入力電信信号Bの1である確率との積であるランダム電信信号である。
P(C=1)=P(A=1)・P(B=1)
【0065】
言い換えれば、出力信号Cは、合計観測時間に対する状態1で経た時間の比が、それぞれが合計観測時間に対する入力信号Aが状態1で経た時間の比と、入力信号Bが経た時間の比と、の積に等しい。
【0066】
上述した、ランダム信号AおよびBの生成のベースとなる(sous-jacents)物理プロセスの時間的独立の条件が遵守される限りは、上記のことは真実であるということが思い起こされるであろう。
【0067】
例として、図4に例示されるが、和は、入力として、2つの独立ランダム信号AおよびB、すなわち、時間的に相関を解消され(de’corre’le’s)両方ともインパルスタイプの信号を使用する「OR」ロジックゲートにより行うことができる。
【0068】
このように、図4のこの例においては、「OR」ロジックゲートは、入力として、それぞれの平均周波数がFAおよびFBと記述されるこれらの2つのインパルス信号AおよびBを受信する。この2つの信号AおよびBはランダムかつ独立である。
【0069】
そして出力信号Cは、その平均周波数FCが、入力インパルス信号AおよびBそれぞれの平均周波数の和であるランダムインパルス信号である。
C=FA+FB
【0070】
例として、図5に例示されるが、除法演算は、入力として、1つが入力S(「set(セット)」)上で、他方が入力R(「reset(リセット)」)上にある、共にインパルスタイプの2つの時間的に相関を解消されたランダム信号AおよびBを使用するスイッチロジックゲート(1ビットメモリ)により行うことができる。
【0071】
図5のこの例において、スイッチは、入力として、それぞれの平均周波数がFAおよびFBとして記述される2つのインパルス信号AおよびBを受信する。この2つの入力信号AおよびBはランダムかつ独立である。
【0072】
そして、出力信号Cは、そのスコア(co^te)、すなわち、出力信号Cが0である確率に対する、この出力信号Cが1である確率の比が、入力信号Bの平均周波数に対する、入力信号Aの平均周波数の比に等しいランダム電信信号である。
P(C=1)/P(C=0)=FA/FB
【0073】
言い換えれば、電信タイプの出力信号Cは、平均して、状態0において費やされた時間に対する、状態1において費やされた時間の比が、入力インパルス信号AおよびBの平均周波数FAおよびFBの商に等しいように得られる。
【0074】
更に、図5における例により例示されるように、スイッチまたは1ビットメモリは、インパルスタイプの入力信号AまたはBを、電信タイプの出力信号Cに変換することを可能にする基本ロジック構成要素を構成する。
【0075】
図6の例において、2つのランダムかつ独立な入力電信信号AおよびBは、すべて、図3の例においてと同様に、第1「AND」ロジックゲートを通過することによりまず合成される。
【0076】
並列して、それぞれが入力信号AおよびBに対して相補的である2つの入力電信信号
もまたランダムかつ独立であり、図3の例においてと同様に、第2「AND」ロジックゲートを通過することにより合成される。
【0077】
第1および第2「AND」ロジックゲートの出力ランダム電信信号は、それぞれ、2つの他の「AND」ロジックゲートにおいてランダムインパルス信号と再合成される。これらの2つの他の「AND」ロジックゲートの出力として、2つのランダムインパルス信号が得られ、図5の例においてと同様に、スイッチ(または1ビットメモリ)を通過することにより合成される。
【0078】
そして、このスイッチの出力信号Cは、そのスコア、すなわち、出力信号Cが0である確率に対する、この出力信号Cが1である確率の比が、入力電信信号AおよびBのスコアの積に等しいランダム電信信号である。
P(C=1)/P(C=0)=[P(A=1)/P(A=0)]・[P(B=1)/P(B=0)]
【0079】
図1に再び戻って、基本モジュール1は、また、ロジックユニット2により生成された出力信号Cによりコード化された出力確率値を格納することを可能にする、少なくとも1つのアドレス指定可能メモリ3を備える。
【0080】
第1確率的クロック4は、メモリ3における書き込みを制御するために使用される。この目的のため、第1クロック4は、ロジックユニット2の出力信号Cと並列して、メモリ3により入力として受信される第1ランダムインパルスクロック信号CLK1を作成する。したがって、信号CLK1のインパルスは、出力信号Cによりコード化された出力確率値の書き込みを制御することを可能にする。
【0081】
第2確率的クロック5は、メモリ3における読み取りを制御するために使用される。この目的のため、第2クロック5は、メモリ3により受信される第2ランダムインパルスクロック信号CLK2を作成する。したがって、信号CLK2のインパルスは、メモリ3に格納された出力確率値の、所与の時間帯における現在の評価を提供することを可能にする。
【0082】
複雑な確率計算を行うためには、大量の和、積、および除法演算子が必要である。この場合、上述したように、本発明に係るマイクロプロセッサは、相互接続される複数の基本モジュール1を備える。このように、各基本モジュール1は、確率的計算基本ユニットを構成する。
【0083】
この場合、並列確率的マイクロプロセッサ(microprocesseur paralle`le stochastique)について話す。並列確率的マイクロプロセッサは、決定された基本モジュール1の1つにそれぞれが対応する複数の確率的計算を並列して実施できるように、自体が備える基本モジュール1のセットにより決定された複数の基本モジュール1を介して複数の出力信号Cを並列して生成できる。
【0084】
したがって、複数の相互接続される基本モジュール1を有する本発明に係るマイクロプロセッサは、1つまたは複数の確率的構成要素と、1つまたは複数のスイッチと、複数のアドレス指定可能メモリ3と、種々のプログラマブルロジックユニット2において実装される種々のロジック回路を備える。
【0085】
ロジックユニット2において実装されるロジック回路は、対応する基本モジュール1により行うことができる関数を定義する。
【0086】
基本モジュール1間の相互接続は、基板上で物理的に隣接する2つの基本モジュール1が、入力および出力信号A、B、およびCを交換できるように実現される。
【0087】
具体的には、他方の基本モジュール1と相互接続される基本モジュール1のメモリ3は、2つの基本モジュール1が入力および出力信号A、B、およびCを交換して、これらの信号を1つの基本モジュール1から他方の基本モジュール1に搬送する方法に関連する相互接続指令を含む。
【0088】
更に、任意の基本モジュール1のメモリ3は、出力信号Cを得るための、ロジックユニット2より入力信号AおよびBに適用される関数の指定を含む。
【0089】
更に、マイクロプロセッサは、また、確率的基本モジュール1の外部に、1つまたは複数のアドレス復号回路と、メモリ3の読み取りおよび書き込みサイクルの同期のための確定的クロックも備える。
【0090】
離れた基本モジュール1間の交換のために、これらの離れた基本モジュール1間の入力および出力信号A、B、およびCの交換を可能にするアドレス指定可能スイッチボックスを設けることができる。
【0091】
隣接または離れた基本モジュール1間の相互接続は、2つのタイプの信号、すなわち、スイッチの出力として作成されるものと類似するランダム電信信号と、確率的クロックにより作成されるものと類似するランダムインパルス信号と、を搬送することを可能にする。
【0092】
アドレス指定可能メモリ3の内容を初期化および修正するために、種々の特定入力/出力モジュールを使用できる。このように、プログラミングのために、本発明に係るマイクロプロセッサと従来のコンピュータとの間のインタフェースを取ることができる。この場合、マイクロプロセッサは、集中確率計算における特殊化周辺機器とみなされる。
【0093】
したがって、本発明に係る並列確率的マイクロプロセッサは、同じ基板上で、ロジックゲート、アドレス指定可能メモリ、およびスイッチなどの、典型的な電界効果トランジスタ技術(FET、MOSFET)に従って作成可能な、確定的動作を伴うクラシック構成要素と、クラシックロジック回路により合成および操作することが可能な信号であるランダム信号を生成するための、ランダム動作を有するナノ構成要素を合成する。
【0094】
異なる物理プロセッサを、トンネル効果、光子の捕捉もしくは送信、または、パワー不足もしくはナノメトリックサイズのトランジスタの不安定な動作の単なる利用(effet tunnel, capture ou e’mission de photons, ou simplement exploitation du comportement instable des transistors sous-alimente’s ou de taille nanome’trique)のための、ナノメトリックサイズの確率的クロックおよび構成要素を実現するために使用できる。
【0095】
そのような並列確率的マイクロプロセッサは、確率分布を最も基本的なレベル、すなわち電気信号およびナノ構成要素のレベルで記述および操作することを可能にする。実際には、確率的電気信号は、確率情報に対する本来の媒体(support naturel)を構成する。
【0096】
本記述は例として提供され、本発明に関して制限的でない。
【0097】
特に、図2から6に示される簡単なロジック回路は、本発明に係るマイクロプロセッサの基本モジュール1のプログラマブルロジックユニット2において実装できるロジック回路の例に過ぎない。
図1
図2
図3
図4
図5
図6