(57)【特許請求の範囲】
【請求項１】
相互作用モデルにおけるノード間の相互作用を模擬する半導体装置において、
前記相互作用モデルを構成する各前記ノードにそれぞれ対応させて設けられた複数の単位素子と、
各前記単位素子の品質を管理する品質管理部と
を備え、
前記単位素子は、
当該単位素子と対応付けられた前記ノードの状態を示す値を保持するための第１のメモリセルと、
当該ノードに相互作用を及ぼす他の各前記ノードとの間の各相互作用係数をそれぞれ保持するための１以上の第２のメモリセルと、
各前記第２のメモリセルにそれぞれ保持された前記相互作用係数と、対応する他の各前記単位素子からそれぞれ与えられる、当該単位素子と対応付けられた前記ノードに相互作用を及ぼす他の各前記ノードの状態を示す値とに基づいて、当該単位素子と対応付けられた前記ノードの次の状態を示す値を決定する論理回路と
を有し、
前記品質管理部は、
各前記単位素子に対する所定の品質テストをそれぞれ実行し、
当該品質テストのテスト結果と、予め与えられた当該品質テストにより得られるべき結果とを比較し、
比較結果に基づいて不良の前記第１及び又は第２のメモリセル並びに不良の前記単位素子を検出する
ことを特徴とする半導体装置。
【請求項２】
前記品質テストは、
各前記単位素子の各前記第１及び第２のメモリセルにそれぞれ所定の値をライト／リードするメモリセルテストと、
各前記単位素子に対して所定パターンで対応する前記ノードの状態を示す値及び各前記相互作用係数をそれぞれ設定し、各前記単位素子において相互作用動作をそれぞれ実行させ、当該相互作用動作の結果と、予め与えられた当該相互作用動作により得られるべき結果とを比較する相互作用テストとを含む
ことを特徴とする請求項１に記載の半導体装置。
【請求項３】
前記品質管理部は、
前記品質テストのテスト結果に基づいて、不良の前記第２のメモリセルを有する不良の前記単位素子から出力される前記ノードの状態を示す値を入力する他の各前記単位素子における、当該ノードに対応する前記相互作用係数を保持する前記第２のメモリセルに所定値をそれぞれ設定する
ことを特徴とする請求項１に記載の半導体装置。
【請求項４】
前記単位素子は、
冗長な第３のメモリセルを備え、
前記品質管理部は、
前記品質テストにおいて検出した不良の前記第２のメモリセルに関する第１の情報を、当該第２のメモリセルを有する前記単位素子に送信し、
前記第１の情報を受信した前記単位素子は、
当該第１の情報に基づいて、不良の前記第２のメモリセルに代えて前記第３のメモリセルを利用するように、対応する他の各前記単位素子からそれぞれ与えられる当該単位素子と対応付けられた前記ノードに相互作用を及ぼす他の各前記ノードの状態を示す値と、前記第２及び第３のメモリセルとの対応関係を切り替える
ことを特徴とする請求項１に記載の半導体装置。
【請求項５】
前記単位素子は、
各前記第２のメモリセルにそれぞれ対応させて設けられた第１のスイッチ回路を備え、
前記品質管理部からの前記第１の情報を受信した前記単位素子では、
当該第１の情報に基づいて、必要な前記第１のスイッチ回路が、他の前記単位素子から与えられる、当該単位素子と対応付けられた前記ノードに相互作用を及ぼす他の各前記ノードの状態を示す値の対応先を、現在の前記第２のメモリセルから、予め定められた他の前記第２のメモリセルにそれぞれ切り替える
ことを特徴とする請求項４に記載の半導体装置。
【請求項６】
前記単位素子は、
前記第１のメモリセルに対応させて設けられた冗長な第４のメモリセルと、
前記第１のメモリセルに対応させて設けられ、当該第１のメモリセルが保持する前記ノードの状態を示す値を対応する他の前記単位素子に出力する第２のスイッチ回路と、
を備え、
前記第４のメモリセルは、
前記第１のメモリセルが保持する前記ノードの状態を示す値と同じ値を保持し、
前記品質管理部は、
前記品質テストにおいて検出した不良の前記第１のメモリセルに関する第２の情報を、当該第１のメモリセルを有する前記単位素子に送信し、
前記第２の情報を受信した前記単位素子では、
当該第２の情報に基づいて、前記第２のスイッチ回路が、他の前記単位素子に出力する前記ノードの状態を示す値を、前記第１のメモリセルが保持する前記ノードの状態を示す値から、前記第４のメモリセルが保持する前記ノードの状態を示す値に切り替える
ことを特徴とする請求項４に記載の半導体装置。
【請求項７】
相互作用モデルにおけるノード間の相互作用を模擬する半導体装置の品質管理方法において、
前記半導体装置は、
前記相互作用モデルを構成する各前記ノードにそれぞれ対応させて設けられた複数の単位素子と、
各前記単位素子の品質を管理する品質管理部と
を有し、
前記単位素子は、
当該単位素子と対応付けられた前記ノードの状態を示す値を保持するための第１のメモリセルと、
当該ノードに相互作用を及ぼす他の各前記ノードとの間の各相互作用係数をそれぞれ保持するための１以上の第２のメモリセルと、
各前記第２のメモリセルにそれぞれ保持された前記相互作用係数と、対応する他の各前記単位素子からそれぞれ与えられる、当該単位素子と対応付けられた前記ノードに相互作用を及ぼす他の各前記ノードの状態を示す値とに基づいて、当該単位素子と対応付けられた前記ノードの次の状態を示す値を決定する論理回路と
を有し、
前記品質管理部が、各前記単位素子に対する所定の品質テストをそれぞれ実行する第１のステップと、
前記品質管理部が、当該品質テストのテスト結果と、予め与えられた当該品質テストにより得られるべき結果とを比較する第２のステップと、
比較結果に基づいて不良の前記第１及び又は第２のメモリセル並びに不良の前記単位素子を検出する第３のステップと
を備えることを特徴とする半導体装置の品質管理方法。
【請求項８】
前記品質テストは、
各前記単位素子の各前記第１及び第２のメモリセルにそれぞれ所定の値をライト／リードするメモリセルテストと、
各前記単位素子に対して所定パターンで対応する前記ノードの状態を示す値及び各前記相互作用係数をそれぞれ設定し、各前記単位素子において相互作用動作をそれぞれ実行させ、当該相互作用動作の結果と、予め与えられた当該相互作用動作により得られるべき結果とを比較する相互作用テストとを含む
ことを特徴とする請求項７に記載の半導体装置の品質管理方法。
【請求項９】
前記品質管理部が、前記品質テストのテスト結果に基づいて、不良の前記第２のメモリセルを有する不良の前記単位素子から出力される前記ノードの状態を示す値を入力する他の各前記単位素子における、当該ノードに対応する前記相互作用係数を保持する前記第２のメモリセルに所定値をそれぞれ設定する第４のステップを備える
ことを特徴とする請求項７に記載の半導体装置の品質管理方法。
【請求項１０】
前記単位素子は、
冗長な第３のメモリセルを有し、
前記品質管理部が、前記品質テストにおいて検出した不良の前記第２のメモリセルに関する第１の情報を、当該第２のメモリセルを有する前記単位素子に送信する第４のステップと、
前記第１の情報を受信した前記単位素子が、当該第１の情報に基づいて、不良の前記第２のメモリセルに代えて前記第３のメモリセルを利用するように、対応する他の各前記単位素子からそれぞれ与えられる当該単位素子と対応付けられた前記ノードに相互作用を及ぼす他の各前記ノードの状態を示す値と、前記第２及び第３のメモリセルとの対応関係を切り替える第５のステップとを備える
ことを特徴とする請求項７に記載の半導体装置の品質管理方法。
【請求項１１】
前記単位素子は、
各前記第２のメモリセルにそれぞれ対応させて設けられた第１のスイッチ回路を有し、
前記第５のステップでは、
前記品質管理部からの前記第１の情報を受信した前記単位素子において、当該第１の情報に基づいて、必要な前記第１のスイッチ回路が、他の前記単位素子から与えられる、当該単位素子と対応付けられた前記ノードに相互作用を及ぼす他の各前記ノードの状態を示す値の対応先を、現在の前記第２のメモリセルから、予め定められた他の前記第２のメモリセルにそれぞれ切り替える
ことを特徴とする請求項１０に記載の半導体装置の品質管理方法。
【請求項１２】
前記単位素子は、
前記第１のメモリセルに対応させて設けられた冗長な第４のメモリセルと、
前記第１のメモリセルに対応させて設けられ、当該第１のメモリセルが保持する前記ノードの状態を示す値を対応する他の前記単位素子に出力する第２のスイッチ回路と、
を有し、
前記第４のメモリセルは、
前記第１のメモリセルが保持する前記ノードの状態を示す値と同じ値を保持し、
前記第４のステップにおいて、
前記品質管理部は、前記品質テストにおいて検出した不良の前記第１のメモリセルに関する第２の情報を、当該第１のメモリセルを有する前記単位素子に送信し、
前記第５のステップにおいて、
前記第２の情報を受信した前記単位素子では、当該第２の情報に基づいて、前記第２のスイッチ回路が、他の前記単位素子に出力する前記ノードの状態を示す値を、前記第１のメモリセルが保持する前記ノードの値から、前記第４のメモリセルが保持する前記ノードの状態を示す値に切り替える
ことを特徴とする請求項１０に記載の半導体装置の品質管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置及びその品質管理方法に関し、例えば、イジングモデルにおけるスピン間の相互作用を模擬する半導体装置及びその品質管理方法に適用して好適なものである。
【背景技術】
【０００２】
種々の物理現象や社会現象は相互作用モデルで表現することができる。相互作用モデルとは、モデルを構成する複数個のノードと、ノード間の相互作用、さらに必要であればノード毎のバイアスで定義されるモデルである。物理学や社会科学では種々のモデルが提案されているが、いずれも相互作用モデルの一形態であると解釈できる。また相互作用モデルの特徴として、ノード間の影響を２個のノード間の相互作用に限定している（２体間の相互作用）ことが挙げられる。例えば、宇宙空間にある惑星の力学を考えてみると、惑星というノードの間に万有引力による相互作用がある点で相互作用モデルの一種とも解釈できるが、惑星間の影響は２個の惑星間にとどまらず、３個以上の惑星が互いに影響し合って複雑な挙動を示す（いわゆる３体問題や多体問題と言われる問題になる）。
【０００３】
生物学の世界では、脳をモデル化したニューラルネットワークを相互作用モデルの一例として挙げることができる。ニューラルネットワークは神経細胞のニューロンを模した人工ニューロンをノードとしており、人工ニューロン間はシナプス結合という相互作用を持つ。また、ニューロン毎にバイアスを与える場合もある。社会科学の世界では、例えば人間のコミュニケーションを考えると、人間というノードと言語や通信で成される相互作用があることは容易に理解できよう。また、各人間には個別にバイアスがあることも想像できる。そのため人間のコミュニケーションを相互作用モデルに模してその特性を明らかにしようという研究もなされている（例えば特許文献１）。
【０００４】
一方、物理学の世界で代表的な相互作用モデルの例として、イジングモデルを挙げることができる。イジングモデルは磁性体の振舞いを説明するための統計力学のモデルである。イジングモデルは＋１／−１（ないしは、０／１、上／下）の２値をとるスピンと、スピン間の相互作用を示す相互作用係数と、スピン毎にある外部磁場係数とで定義される。
【０００５】
イジングモデルは与えられたスピン配列、相互作用係数、及び、外部磁場係数から、その時のエネルギーを計算することができる。イジングモデルのエネルギー関数は一般的に次式で表わされる。
【０００６】
【数１】
0005894645.tif 000002
【０００７】
なお、σｉ，σｊはそれぞれｉ番目とｊ番目のスピンの値、Ｊｉ，ｊはｉ番目とｊ番目のスピンの間の相互作用係数、ｈｉはｉ番目のスピンに対する外部磁場係数、σはスピンの配列を表わすものとする。
【０００８】
（１）式において、第一項は、スピン間の相互作用に起因するエネルギーを計算するものである。一般的にイジングモデルは無向グラフとして表現され、ｉ番目スピンからｊ番目スピンへの相互作用と、ｊ番目スピンからｉ番目スピンへの相互作用を区別することはない。そのため、第一項ではｉ＜ｊを満たすσｉ，σｊの組み合わせについて、相互作用係数の影響を計算している。また第二項は、各スピンに対する外部磁場に起因するエネルギーを計算するものである。
【０００９】
イジングモデルの基底状態探索とは、イジングモデルのエネルギー関数を最小化するスピンの配列を求める最適化問題である。相互作用係数及び外部磁場係数の値域に制限を付けないときには、トポロジが非平面グラフになるイジングモデルの基底状態を求めることはＮＰ困難問題であることが知られている。
【００１０】
イジングモデルの基底状態探索は、元々イジングモデルが対象としていた磁性体の振る舞いを説明することのみならず、様々な用途に用いられている。これは、イジングモデルが相互作用に基づく最も単純なモデルであり、同様に相互作用に起因する様々な事象を表現する能力を持っているためであると言える。例えば、特許文献１には、イジングモデルの基底状態探索を用いて、職場組織などの集団におけるストレス度を推定する方法が開示されている。
【００１１】
また、イジングモデルの基底状態探索は、ＮＰ困難なグラフ問題として知られている最大カット問題とも対応している。このようなグラフ問題は、ソーシャルネットワークにおけるコミュニティの検出や、画像処理におけるセグメンテーションなど、幅広い応用を持っている。そのため、イジングモデルの基底状態探索を行うソルバがあれば、このような様々な問題に適用することができる。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２０１２−２１７５１８号公報
【特許文献２】国際公開第２０１２／１１８０６４号パンフレット
【発明の概要】
【発明が解決しようとする課題】
【００１３】
イジングモデルの基底状態を求めることは、上述のようにＮＰ困難問題であることから、ノイマン型コンピュータで解くことは計算時間の面で困難を伴う。ヒューリステックを導入して高速化を図るアルゴリズムが提案されている一方で、ノイマン型コンピュータではなく物理現象をより直接的に利用した計算、すなわちアナログコンピュータでイジングモデルの基底状態を高速に求める方法が提案されている（例えば特許文献２）。
【００１４】
このような装置では、解くべき問題に対応した並列度が必要になってくる。イジングモデルの場合では、基底状態を探索すべきイジングモデルのスピン数に対応して、それぞれ１つのスピンや、当該スピンにおける他のスピンとの相互作用を表現する素子（以下、これを単位素子と呼ぶ）が必要となる。例えば特許文献２に開示された装置では、スピンとレーザを対応させているため、スピン数に比例した数のレーザが必要となる。すなわち、多数の単位素子を搭載可能なスケーラビリティの高さが必要となる。
【００１５】
以上のことを考慮した場合、単位素子を規則的に多数並べて実現できる半導体装置のような固体素子でイジングモデルの基底状態探索を行えることが望ましい。特に、ＤＲＡＭ（Dynamic Random Access Memory）やＳＲＡＭ（Static Random Access Memory）などの記憶装置に代表されるようなアレイ構造であり、かつ集積性を高められるように単位素子が単純な構造であることが望ましい。そこで、近年、このような半導体装置（半導体チップ）の開発が本願特許出願人により進められている。
【００１６】
ところで、このような半導体装置として、例えば、多数のスピンを含む大規模なイジングモデルの基底状態を探索可能な半導体装置を構築するためには、単位素子をスピン数に応じた数だけ半導体チップに搭載する必要があるが、多数の単位素子を半導体チップに搭載する場合、個々の単位素子の不良の発生確率に応じて半導体装置全体としての不良品の発生確率も高まる。
【００１７】
このため、かかる半導体装置を構築するに際しては、不良な単位を簡易かつ適切に検出し、そのような単位素子が他の単位素子に悪影響を及ばさないように何らかの対応を行い得る構造や品質管理方法の実現が望まれる。しかしながら、現時点では、このような半導体装置について、不良な単位素子を簡易かつ適切に検出し得る構造や品質管理方法は提案されていない。
【００１８】
本発明は以上の点を考慮してなされたもので、不良な単位素子を簡易かつ適切に検出し得る半導体装置及びその品質管理方法を提案しようとするものである。
【課題を解決するための手段】
【００１９】
かかる課題を解決するため本発明においては、相互作用モデルにおけるノード間の相互作用を模擬する半導体装置において、前記相互作用モデルを構成する各前記ノードにそれぞれ対応させて設けられた複数の単位素子と、各前記単位素子の品質を管理する品質管理部とを設け、前記単位素子は、当該単位素子と対応付けられた前記ノードの状態を示す値を保持するための第１のメモリセルと、当該ノードに相互作用を及ぼす他の各前記ノードとの間の各相互作用係数をそれぞれ保持するための１以上の第２のメモリセルと、各前記第２のメモリセルにそれぞれ保持された前記相互作用係数と、対応する他の各前記単位素子からそれぞれ与えられる、当該単位素子と対応付けられた前記ノードに相互作用を及ぼす他の各前記ノードの状態を示す値とに基づいて、当該単位素子と対応付けられた前記ノードの次の状態を示す値を決定する論理回路とを有し、前記品質管理部が、各前記単位素子に対する所定の品質テストをそれぞれ実行し、当該品質テストのテスト結果と、予め与えられた当該品質テストにより得られるべき結果とを比較し、比較結果に基づいて不良の前記第１及び又は第２のメモリセル並びに不良の前記単位素子を検出するようにした。
【００２０】
また本発明においては、相互作用モデルにおけるノード間の相互作用を模擬する半導体装置の品質管理方法において、前記半導体装置は、前記相互作用モデルを構成する各前記ノードにそれぞれ対応させて設けられた複数の単位素子と、各前記単位素子の品質を管理する品質管理部とを有し、前記単位素子は、当該単位素子と対応付けられた前記ノードの状態を示す値を保持するための第１のメモリセルと、当該ノードに相互作用を及ぼす他の各前記ノードとの間の各相互作用係数をそれぞれ保持するための１以上の第２のメモリセルと、各前記第２のメモリセルにそれぞれ保持された前記相互作用係数と、対応する他の各前記単位素子からそれぞれ与えられる、当該単位素子と対応付けられた前記ノードに相互作用を及ぼす他の各前記ノードの状態を示す値とに基づいて、当該単位素子と対応付けられた前記ノードの次の状態を示す値を決定する論理回路とを有し、前記品質管理部が、各前記単位素子に対する所定の品質テストをそれぞれ実行する第１のステップと、前記品質管理部が、当該品質テストのテスト結果と、予め与えられた当該品質テストにより得られるべき結果とを比較する第２のステップと、比較結果に基づいて不良の前記第１及び又は第２のメモリセル並びに不良の前記単位素子を検出する第３のステップと設けるようにした。
【００２１】
本半導体装置及び半導体装置の品質管理方法によれば、煩雑な作業を行うことなく品質管理部により不良の第１及び又は第２のメモリセル並びに不良の単位素子を検出することができる。
【発明の効果】
【００２２】
本発明によれば、不良な単位素子を簡易かつ適切に検出し得る半導体装置及びその品質管理方法を実現できる。
【図面の簡単な説明】
【００２３】
【図１】第１〜第３の実施の形態による情報処理装置の構成を示すブロック図である。
【図２】第１の実施の形態によるイジングチップの構成を示すブロック図である。
【図３】イジングモデルの説明に供する概念図である。
【図４】スピンユニットの説明に供する概念図である。
【図５】スピンユニットの説明に供する概念図である。
【図６】第１の実施の形態によるスピンユニットの構成を示す回路図である。
【図７】第１の実施の形態によるスピンユニットの構成を示すブロック図である。
【図８】メモリセルの構成を示す回路図である。
【図９】第１の実施の形態による品質テスト処理の処理手順を示すフローチャートである。
【図１０】第２及び第３の実施の形態によるイジングチップの構成を示すブロック図である。
【図１１】第２の実施の形態によるスピンユニットの構成を示す回路図である。
【図１２】第２の実施の形態によるスピンユニットの動作説明に供する回路図である。
【図１３】第２の実施の形態における各メモリの特徴の説明に供する図表である。
【図１４】メモリセルのレイアウト例の説明に供する略線的な平面図である。
【図１５Ａ】第２の実施の形態による品質テスト処理の処理手順を示すフローチャートである。
【図１５Ｂ】第２の実施の形態による品質テスト処理の処理手順を示すフローチャートである。
【図１６】相互作用前処理の処理手順を示すフローチャートである。
【図１７】第３の実施の形態によるスピンユニットの構成を示す回路図である。
【図１８】第３の実施の形態によるスピンユニットの動作説明に供する回路図である。
【図１９】第３の実施の形態における各メモリの特徴の説明に供する図表である。
【図２０Ａ】第３の実施の形態による品質テスト処理の処理手順を示すフローチャートである。
【図２０Ｂ】第３の実施の形態による品質テスト処理の処理手順を示すフローチャートである。
【図２１】イジングチップの品質テストのテスト手法の説明に供する略線図である。
【図２２】他の実施の形態の説明に供する略線図である。
【発明を実施するための形態】
【００２４】
以下図面について、本発明の一実施の形態を詳述する。
【００２５】
（１）第１の実施の形態
（１−１）有向グラフに拡張したイジングモデル
本実施の形態では、イジングモデルを拡張した、以下の（２）式で示されるモデルを、これ以降イジングモデルと呼ぶものとする。
【数２】
0005894645.tif 000003
【００２６】
（１）式で示したイジングモデルとの違いは、（２）式では有向グラフで示されるような相互作用が許されることにある。一般的にイジングモデルはグラフ理論では無向グラフとして描画することができる。それは、イジングモデルの相互作用は、ｉ番目スピンからｊ番目スピンへの相互作用係数Ｊｉ，ｊとｊ番目スピンからｉ番目スピンへの相互作用係数Ｊｊ，ｉとを区別していないことによる。
【００２７】
本発明はイジングモデルを拡張し、Ｊｉ，ｊとＪｊ，ｉとを区別しても適用できるため、本実施の形態でも有向グラフ化したイジングモデルを取り扱う。なお、無向グラフのイジングモデルを有向グラフのイジングモデルで取り扱う場合には、単にＪｉ，ｊとＪｊ，ｉとの双方向に同じ相互作用係数を定義することで可能である。この場合、同じモデルでも（１）式のエネルギー関数に対して（２）式のエネルギー関数ではエネルギーの値が２倍になる。
【００２８】
（１−２）本実施の形態による情報処理装置の構成
（１−２−１）情報処理装置の全体構成
図１において、１は全体として本実施の形態による情報処理装置を示す。この情報処理装置１は、パーソナルコンピュータやワークステーション又はサーバなどから構成され、例えばＰＣＩ  ＥｘｐｒｅｓｓやＱＰＩなどから構成されるシステムバス２を介して相互に接続されたＣＰＵ（Central Processing Unit）３、メモリ４、記憶装置５、ＮＩＣ（Network Interface Card）６及びイジングチップコントローラ７と、イジングチップコントローラ７に接続された複数のイジングチップ８とを備える。
【００２９】
ＣＰＵ３は、情報処理装置１全体の動作制御を司るプロセッサである。またメモリ４は、例えば揮発性の半導体メモリから構成され、各種プログラムを記憶するために利用される。記憶装置５は、例えばハードディスク装置やＳＳＤ（Solid State Drive）などから構成され、プログラムやデータを長期間保持するために利用される。さらにＮＩＣ６は、ネットワーク９を介して外部機器との間で行われる通信時におけるプロトコル制御を行うインタフェースである。
【００３０】
イジングチップコントローラ７及びイジングチップ８はアクセラレータに相当するものであり、例えばＰＣＩ  Ｅｘｐｒｅｓｓのようなペリフェラル拡張用インタフェースに挿入して使用する拡張カードのような形態を取る。イジングチップコントローラ７は、システムバス２のプロトコルをイジングチップ８のインタフェースに合わせて変換する機能を有する。ＣＰＵ３が実行するプログラムは、一般的には特定のアドレスに対して例えばＭＭＩＯ（Memory Mapped Input/Output）方式でリード／ライトを行うことでイジングチップコントローラ７を経由してイジングチップ８を制御することができる。イジングチップ８は、それぞれイジングモデルの基底状態探索を行う専用のハードウェアである。
【００３１】
（１−２−２）イジングチップの構成
イジングチップ８は、図２に示すように、複数のサブアレイ１０と、品質管理部１１とを備えて構成される。本実施の形態では、イジングチップ８は現在広く用いられているＣＭＯＳ（Complementary Metal-Oxide Semiconductor）集積回路として実装されていることを想定して説明するが、他の固体素子でも実現可能である。
【００３２】
サブアレイ１０は、スピンユニット群２０、コントロールデコーダ２１、複数のワード線ドライバ２２及びローカルＩ／Ｏ（Input/Output）回路２３を備えて構成される。またサブアレイ１０は、スピンユニット群２０にリード／ライトを行うためのＳＲＡＭ互換インタフェースとしてアドレスバス２４、データバス２５、Ｉ／Ｏクロック線２６及びＲ／Ｗ制御線２７を備えており、これらがコントロールデコーダ２１と接続されている。またサブアレイ１０は、イジングモデルの基底状態探索の制御を行うための相互作用制御インタフェースとして、相互作用アドレス線２８及び相互作用クロック線２９をも備える。
【００３３】
サブアレイ１０では、イジングモデルのスピンσｉ、相互作用係数Ｊｉ，ｊ及び外部磁場係数ｈｉをすべてスピンユニット群１０内の後述するメモリセルに記憶する情報で表現する。スピンσｉの初期状態の設定や基底状態探索完了後の解読み出しはＳＲＡＭ互換インタフェースを介して行う。またサブアレイ１０では、基底状態を探索すべきイジングモデルをスピンユニット群２０に設定するための相互作用係数Ｊｉ，ｊ及び外部磁場係数ｈｉのリード／ライトもＳＲＡＭ互換インタフェースを介して行う。
【００３４】
そのため、スピンユニット群２０内のスピンσｉ、相互作用係数Ｊｉ，ｊ及び外部磁場係数ｈｉを保持する各メモリセルにはそれぞれアドレスが付与されている。そしてスピンユニット群２０にスピンσｉ、相互作用係数Ｊｉ，ｊ又は外部磁場係数ｈｉをリード／ライトする場合、対応するアドレス（図２の「ＡＤＤ」）がＣＰＵ３からイジングチップコントローラ７（図１）及びアドレスバス２４を介してコントロールデコーダ２１に与えられると共に、リード／ライトを制御するＲ／Ｗ制御信号（図２の「Ｒ／Ｗ」）がＣＰＵ３からイジングチップコントローラ７及びＲ／Ｗ制御線２７を介してコントロールデコーダ２１に与えられる。
【００３５】
コントロールデコーダ２１は、アドレスバス２４を介して与えられるアドレスに基づいて、対応するワード線ドライバ２２を制御することによりスピンユニット群２０内のワード線３０をアクティベートすると共に、Ｒ／Ｗ制御線２７を介して与えられたＲ／Ｗ制御信号に基づいてローカルＩ／Ｏ回路２３を制御することにより、スピンユニット群２０内の対応するビット線３１を駆動する。これによりＣＰＵ３からイジングチップコントローラ７及びデータバス２５を介してコントロールデコーダ２１に与えられたスピンσｉの初期値や、相互作用係数Ｊｉ，ｊ及び外部磁場係数ｈｉの値（図２の「Ｄ」）がスピンユニット群２０に設定され、又は、スピンユニット群２０から読み出された基底状態探索完了後の解（図２の「Ｑ」）がデータバス２５及びイジングチップコントローラ７を介してＣＰＵ３に送信される。
【００３６】
なお、ＳＲＡＭ互換インタフェースを構成するアドレスバス２４、データバス２５及びＲ／Ｗ制御線２７は、イジングチップコントローラ７からＩ／Ｏクロック線２６を介してイジングチップ８内の各サブアレイ１０に与えられるＩ／Ｏクロック（図２の「ＣＬＫ」）に同期して動作する。ただし、本発明においてインタフェースが同期式である必要はなく、非同期式のインタフェースでも良い。本実施の形態では、同期式のインタフェースであるという前提で説明を行う。
【００３７】
さらにイジングチップ８は、基底状態探索を行うために、各サブアレイ１０のスピンユニット群２０の内部でスピン間の相互作用を実現する。この相互作用をＣＰＵ３がイジングチップコントローラ７を介して制御するために利用するのが相互作用制御インタフェースである。具体的に、ＣＰＵ３は、相互作用を行うスピン群を指定する相互作用アドレス（図２の「ＩＡＤＤ」）と、相互作用クロック（図２の「ＣＬＫＩ」）とをイジングチップコントローラ７及び相互作用制御インタフェースを介して各サブアレイ１０のスピンユニット群２０にそれぞれ与えることにより、この相互作用クロックに同期してスピンユニット群２０において相互作用を行わせる。
【００３８】
加えて、イジングチップ８は、後述のようにイジングモデルのスピンを表現するメモリセルの値を確率的に反転させる乱数を発生させる乱数発生器（図示せず）を備えている。そして、この乱数発生器により発生された乱数が各サブアレイ１０内のスピンユニット群２０に与えられ、この乱数によりスピンユニット群２０におけるイジングモデルの各スピンの値が確率的に反転されることにより、相互作用の実行時における局所最適解からの脱出を図ることができる。
【００３９】
品質管理部１１は、自イジングチップ８に対して予め設定された所定の品質テストを実行し、当該品質テストにおいてイジングチップ８内の後述するスピンユニット３２（図３）のいずれかに不良があることを検出した場合に、相互作用の実行時にそのスピンユニット３２が他のスピンユニット３２に悪影響を及ばさないように自イジングチップ８及びＣＰＵ３を制御する機能を有する機能部である。品質管理部１１の詳細については後述する。
【００４０】
（１−２−３）スピンユニット群の構成
スピンユニット群２０は、１個のスピンσｉ並びにそれに付随する相互作用係数Ｊｉ，ｊ及び外部磁場係数ｈｉの保持と、基底状態探索演算とを実現するスピンユニット３２を単位素子として、スピンユニット３２を多数個並べた構成を有する。
【００４１】
図３は、スピンユニット３２を複数個並べることで、３次元格子状のトポロジを持つイジングモデルを構成する例を示している。図３の例は、３（Ｘ軸方向）×３（Ｙ軸方向）×２（Ｚ軸方向）の大きさの３次元格子である。座標軸の定義は図示した通り、図面右方向をＸ軸、図面下方向をＹ軸、図面奥行き方向をＺ軸としているが、この座標軸は実施の形態の説明上便宜的に必要なだけであり、本発明とは関係しない。３次元格子以外のトポロジ、例えばツリー状のトポロジなどを利用する場合には、座標軸とは別にツリーの段数等で表現することになる。図３の３次元格子状のトポロジにおいて、スピン間の相互作用をグラフとしてとらえると、最大で次数５のスピン（頂点）が必要となる。なお、外部磁場係数の接続も含めて考えると、最大で次数６が必要となる。
【００４２】
図３に示す１個のスピンユニット３２には、隣接するスピン（例えば隣接するスピンが５個の場合σｊ、σｋ、σｌ、σｍ、σｎ）の値が入力される。このためスピンユニット３２は、これら入力する隣接するスピンの値を保持するためのメモリセルを有している。またスピンユニット３２は、かかるスピンの値に加え、外部磁場係数と、上述した隣接するスピンとの相互作用係数（隣接する５スピンとの相互作用係数Ｊｊ，ｉ，Ｊｋ，ｉ，Ｊｌ，ｉ，Ｊｍ，ｉ，Ｊｎ，ｉ）とをそれぞれ保持するメモリセルをも有している。
【００４３】
ところで、先に述べたようにイジングモデルは一般的に無向グラフで表現される相互作用を有している。上述した（１）式では、相互作用を表わす項として、Ｊｉ，ｊ×σｉ×σｊがあるが、これはｉ番目スピンからｊ番目スピンへの相互作用を示している。この場合、一般的なイジングモデルではｉ番目スピンからｊ番目スピンへの相互作用と、ｊ番目スピンからｉ番目スピンへの相互作用を区別することはない。つまり、Ｊｉ，ｊとＪｊ，ｉは同一である。しかし、本実施の形態のイジングチップ１３では、先に述べたようにこのイジングモデルを有向グラフに拡張し（（２）式）、ｉ番目スピンからｊ番目スピンへの相互作用と、ｊ番目スピンからｉ番目スピンへの相互作用を非対称にすることを実現している。これにより、モデルの表現能力が高まり、多くの問題をより小規模のモデルで表現することが可能になる。
【００４４】
そのため、１個のスピンユニットをｉ番目スピンσｉと考えた時に、このスピンユニット３２が保持する相互作用係数であるＪｊ，ｉ、Ｊｋ，ｉ、Ｊｌ，ｉ、Ｊｍ，ｉ、Ｊｎ，ｉは、隣接するｊ番目、ｋ番目、ｌ番目、ｍ番目、ｎ番目のスピンσｊ，σｋ、σｌ，σｍ，σｎから、ｉ番目スピンσｉへの相互作用を決めるものである。このことは、図３において、スピンユニット３２に含まれている相互作用係数が対応する矢印（相互作用）が、図示されているスピンユニット３２の外部のスピンから、スピンユニット３２の内部のスピンに向かっていることに対応している。
【００４５】
（１−２−４）スピンユニットの構成
スピンユニット３２の構成例を図６及び図７を用いて説明する。スピンユニット３２は２つの側面をもっており、便宜上、図６及び図７に分けて説明するが、１個のスピンユニット３２は図６及び図７の構成の双方を含む。図６はスピンユニット３２間の相互作用を実現するための回路を示し、図７はスピンユニット３２が備えるメモリセルＮ，ＩＳ０，ＩＳ１，ＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０，ＩＦ１にイジングチップ８外からアクセスするためのインタフェースであるワード線３０とビット線３１とに注目してスピンユニット３２の構成を図示したものである。
【００４６】
スピンユニット３２は、イジングモデルのスピンσｉ、相互作用係数Ｊｊ，ｉ〜Ｊｎ，ｉ及び外部磁場係数ｈｉを保持するために、複数の１ビットのメモリセルＮ，ＩＳ０，ＩＳ１，ＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０，ＩＦ１を備える。なお、メモリセルＩＳ０及びＩＳ１、メモリセルＩＵ０及びＩＵ１、メモリセルＩＬ０及びＩＬ１、メモリセルＩＲ０及びＩＲ１、メモリセルＩＤ０及びＩＤ１、並びに、メモリセルＩＦ０及びＩＦ１は、それぞれ２個１組で役割を果たすものであるため、適宜、これらをそれぞれまとめてメモリセル対ＩＳｘ，ＩＵｘ，ＩＬｘ，ＩＲｘ，ＩＤｘ又はＩＦｘと略記する（図４参照）。
【００４７】
スピンユニット３２が有する各メモリセルＮ，ＩＳ０，ＩＳ１，ＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０，ＩＦ１の具体的な構成例を図８に示す。メモリセルは、一対のＣＭＯＳ（Complementary Metal Oxide Semiconductor）インバータ５０Ａ，５０Ｂから構成されるデータ保持部５１を有し、パスゲートトランジスタ５２Ａ，５２Ｂをワード線３０及びビット線３１で制御することによりデータ保持部５１へのデータのリード／ライトを実現する。各ＣＭＯＳインバータ５０Ａ，５０Ｂは、それぞれｐチャネル型ＭＯＳトランジスタ５３Ａ，５３Ｂと、ｎチャネル型ＭＯＳトランジスタ５４Ａ，５４Ｂとで構成される。
【００４８】
ここで、スピンユニット３２はｉ番目のスピンを表現するものとして説明を行う。メモリセルＮはスピンを表現するためのメモリセルであり、スピンの値を保持する。スピンの値はイジングモデルでは＋１／−１（＋１を上、−１を下とも表現する）であるが、これをメモリセルが保持可能な２値である０／１に対応させる。例えば、＋１を１、−１を０に対応させる。
【００４９】
図４を用いて、スピンユニット３２が有するメモリセル対ＩＳｘ，ＩＵｘ，ＩＬｘ，ＩＲｘ，ＩＤｘ及びＩＦｘと、図３に示したイジングモデルのトポロジとの対応関係を示す。メモリセル対ＩＳｘは外部磁場係数を記憶する。また、メモリセル対ＩＵｘ，ＩＬｘ，ＩＲｘ，ＩＤｘ及びＩＦｘは、それぞれ相互作用係数を記憶する。具体的に、メモリセル対ＩＵｘは上側のスピン（Ｙ軸方向で−１）、メモリセル対ＩＬｘは左側のスピン（Ｘ軸方向で−１）、メモリセル対ＩＲｘは右側のスピン（Ｘ軸方向で＋１）、メモリセル対ＩＤｘは下側のスピン（Ｙ軸方向で＋１）、メモリセル対ＩＦｘは奥行き方向に接続するスピン（Ｚ軸方向で＋１ないしは−１）との相互作用係数をそれぞれ記憶する。
【００５０】
また、イジングモデルを有向グラフとして捉えた場合に、あるスピンから見ると他のスピンが自スピンに及ぼす影響の係数を持つことになる。自スピンが他のスピンに与える影響の係数は、それぞれの他のスピンに属する。すなわち、このスピンユニット３２は最大で５個のスピンと接続される。本実施の形態のイジングチップ８では、外部磁場係数及び相互作用係数として＋１／０／−１の３値に対応する。そのため、外部磁場係数及び相互作用係数を表わすためには、それぞれ２ビットのメモリセルが必要となる。
【００５１】
メモリセル対ＩＳｘ，ＩＵｘ，ＩＬｘ，ＩＲｘ，ＩＤｘ及びＩＦｘは、末尾の数字が０と１の２つのメモリセル（例えばメモリセル対ＩＳｘの場合にはメモリセルＩＳ０及びＩＳ１）の組合せで、＋１／０／−１の３値を表現する。例えば、メモリセル対ＩＳｘの場合には、メモリセルＩＳ１で＋１／−１を表現し、メモリセルＩＳ１が保持する値が１の時は＋１、メモリセルＩＳ１が保持する値が０の時には−１を表す。
【００５２】
これに加えて、メモリセルＩＳ０が保持する値が０の時には外部磁場係数を０と見なし、メモリセルＩＳ０が保持する値が１の時にはメモリセルＩＳ１が保持する値で決まる＋１／−１のいずれかを外部磁場係数とする。外部磁場係数が０の時は外部磁場係数をディセーブルしていると考えれば、メモリセルＩＳ０に保持された値は外部磁場係数のイネーブルビットであると言うことができる（ＩＳ０＝１の時に、外部磁場係数がイネーブルされる）。相互作用係数を記憶するメモリセル対ＩＵｘ，ＩＬｘ，ＩＲｘ，ＩＤｘ及びＩＦｘも同様に係数とビットの値とを対応させている。
【００５３】
スピンユニット３２内のメモリセルＮ，ＩＳ０，ＩＳ１，ＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０及びＩＦ１は、それぞれイジングチップ８の外部からリード／ライト可能でなければならない。そのために、図７に示すように、スピンユニット３２はワード線３０とビット線３１とをそれぞれ有している。
【００５４】
そしてサブアレイ１０では、図２に示すように、各スピンユニット３２が半導体基板上にタイル状に並べられ、これらがビット線３１とワード線３０とで接続されることによりスピンユニット群２０が構成されており、ワード線ドライバ２２とローカルＩ／Ｏ回路２３とでこれらのスピンユニット３２を制御することにより、一般的なＳＲＡＭと同様にイジングチップ８のＳＲＡＭ互換インタフェースを介して各スピンユニット３２内の個々のメモリセルに対してデータをリード／ライトすることができるようになされている。
【００５５】
なお図２上で表現されている個々のスピンユニット３２（ＮxyzというようにＸ軸、Ｙ軸及びＺ軸上の位置によって符号を付与している）が、３次元格子のトポロジでどの頂点に対応するかを図５に示す。３×３×２の３次元格子頂点を２次元平面上に配置するために、Ｘ軸方向の格子頂点配列の間隔にＺ軸方向の格子頂点配列の各格子頂点を挿入するように配置している。すなわち、図２の２次元平面上でのＹ軸方向（図面下側がＹ軸の正方向）にはＮx0z、Ｎx1z、Ｎx2z、……というように配置されるが、Ｘ軸方向（図面右側がＸ軸の正方向）にはＮ0y0、Ｎ0y1、Ｎ1y0、Ｎ1y1、Ｎ2y0、Ｎ2y1、……というように、Ｚ軸方向座標が０と１のスピンユニットが交互に配置される。
【００５６】
またスピンユニット３２は同時に更新を行うために、相互作用を計算して次のスピンの状態を決定するための回路を、スピンユニット３２毎に独立して持っている。図６では、スピンユニット３２は、外部とのインタフェースとして、信号線ＥＮ，ＮＵ，ＮＬ，ＮＲ，ＮＤ，ＮＦ，ＯＮ及びＲＮＤを有する。信号線ＥＮは当該スピンユニット３２のスピンの更新を許可する切替え信号を入力するインタフェースである。この切替え信号でセレクタ４０を制御することで、メモリセルＮに保持されたスピンの値を、後述の多数決論理回路４１からＯＲ回路４２を介してセレクタ４０に与えられる値に更新することができる。
【００５７】
信号線ＯＮは、当該スピンユニット３２が保持するスピンの値を他のスピンユニット３２（図３のトポロジで隣接するユニット）に出力するインタフェースである。信号線ＮＵ，ＮＬ，ＮＲ，ＮＤ及びＮＦは、それぞれ他のスピンユニット３２（図３のトポロジで隣接するユニット３２）が保持するスピンの値を入力するためのインタフェースである。信号線ＮＵは上側のスピン（Ｙ軸方向で−１）、信号線ＮＬは左側のスピン（Ｘ軸方向で−１）、信号線ＮＲは右側のスピン（Ｘ軸方向で＋１）、信号線ＮＤは下側のスピン（Ｙ軸方向で＋１）、信号線ＮＦは奥行き方向に接続するスピン（Ｚ軸方向で＋１ないしは−１）からの入力である。
【００５８】
スピンユニット３２では隣接スピンとの間でエネルギーを最小化するようにスピンの次状態を決定するが、それは隣接スピンと相互作用係数の積、及び、外部磁場係数を見たときに、正の値と負の値のどちらが支配的か判断することと等価である。例えば、ｉ番目スピンσｉに、スピンσｊ、σｋ、σｌ、σｍ及びσｎが隣接しているとして、スピンσｉの次状態は以下のように決まる。
【００５９】
まず、隣接スピンの値はσｊ＝＋１、σｋ＝−１、σｌ＝＋１、σｍ＝−１、σｎ＝＋１とし、相互作用係数はＪｊ，ｉ＝＋１、Ｊｋ，ｉ＝＋１、Ｊｌ，ｉ＝＋１、Ｊｍ，ｉ＝−１、Ｊｎ，ｉ＝−１、外部磁場係数ｈｉ＝＋１とする。このとき、相互作用係数と隣接スピンの積、及び、外部磁場係数をそれぞれ並べると、σｊ×Ｊｊ，ｉ＝＋１、σｋ×Ｊｋ，ｉ＝−１、σｌ×Ｊｌ，ｉ＝＋１、σｍ×Ｊｍ，ｉ＝＋１、σｎ×Ｊｎ，ｉ＝−１、ｈｉ＝＋１となる。外部磁場係数は、常に値が＋１のスピンとの相互作用係数と読み替えて良い。
【００６０】
ここで、ｉ番目のスピンと隣接スピンとの間での局所的なエネルギーは、前述した係数にそれぞれｉ番目スピンの値を乗じて、さらに符号を反転させたものになる。例えば、ｊ番目スピンとの間での局所的なエネルギーは、ｉ番目スピンを＋１とした時には−１、ｉ番目スピンを−１としたときには＋１となるので、ｉ番目スピンを＋１にするほうが、ここでの局所的なエネルギーを小さくする方向に働く。
【００６１】
このような局所的なエネルギーを全ての隣接スピン間と外部磁場係数について考えたときに、ｉ番目スピンを＋１／−１のどちらにしたほうがエネルギーを小さくできるかを計算する。これは、先程示した相互作用係数及び隣接スピンの積と、外部磁場係数とをそれぞれ並べたものにおいて、＋１と−１のどちらが多いか数えれば良い。先程の例では、＋１が４個、−１が２個である。仮に、ｉ番目スピンを＋１とすると、エネルギーの総和は−２、ｉ番目スピンを−１とするとエネルギーの総和は＋２になる。よって、＋１の個数が多い時にはｉ番目スピンの次状態を＋１とし、−１の個数が多い時にはｉ番目スピンの次状態を−１にするという多数決で、エネルギーを最小化するｉ番目スピンの次状態を決定することができる。
【００６２】
図６に示した論理回路４５は、上述の相互作用を行うための回路である。まず、隣接スピンの状態と、相互作用係数の＋１／−１を示すメモリセルＩＵ１，ＩＬ１，ＩＲ１，ＩＤ１，ＩＦ１が保持する値との排他的論理和の否定（ＸＮＯＲ）をＸＮＯＲ回路４３で求める。これにより、その相互作用だけを見た時にエネルギーを最小化するスピンの次状態を計算することができる（＋１は１、−１は０にエンコードされているものとする）。
【００６３】
もし、相互作用係数が＋１／−１だけであれば、ＸＮＯＲ回路４３の出力のうち＋１／−１のどちらが多いかを多数決論理回路４４において多数決論理で判定すればスピンの次状態を決定することができる。外部磁場係数に関しては、常に状態＋１のスピンとの相互作用係数に相当するものと考えれば、単に外部磁場係数の値がスピンの次状態を決定する多数決論理回路４１に入力すべき値となる。
【００６４】
次に、係数０の実現方法について考える。ｎ入力の多数決論理ｆ（Ｉ１，Ｉ２，Ｉ３，……，Ｉｎ）があるとき、以下の命題は真であると言える。まず、入力Ｉ１，Ｉ２，Ｉ３，……，Ｉｎの複製Ｉ’１，Ｉ’２，Ｉ’３，……，Ｉ’ｎがあるとする（任意のｋについて、Ｉｋ＝Ｉ’ｋである）。このとき、ｆ（Ｉ１，Ｉ２，Ｉ３，……，Ｉｎ）の出力は、複製もあわせて入力したｆ（Ｉ１，Ｉ２，Ｉ３，……，Ｉｎ、Ｉ’１，Ｉ’２，Ｉ’３，……，Ｉ’ｎ）と等しい。つまり、各入力変数をそれぞれ２個ずつ入れても、出力は不変である。さらに、入力Ｉ１、Ｉ２、Ｉ３，……，Ｉｎの他に、もう一つの入力Ｉｘと、その反転！Ｉｘがあるとする。このとき、ｆ（Ｉ１，Ｉ２，Ｉ３，……，Ｉｎ，Ｉｘ，！Ｉｘ）の出力は、ｆ（Ｉ１，Ｉ２，Ｉ３，……，Ｉｎ）と等しい。つまり、入力変数とその反転を入力すると、多数決においてその入力変数の影響をキャンセルするように働く。多数決論理のこの性質を利用して係数０を実現する。
【００６５】
具体的には、図６に示すように、ＸＯＲ回路４４を利用して、係数のイネーブルを決めるビット（メモリセルＩＳ０，ＩＵ０，ＩＬ０，ＩＲ０，ＩＤ０及びＩＦ０にそれぞれ保持されたビット）の値により、多数決論理回路４１に、先に述べたスピン次状態の候補となる値の複製か、その反転を同時に入力する。例えば、メモリセルＩＳ０が保持するビットの値が０の場合、メモリセルＩＳ１が保持するビットの値と、メモリセルＩＳ１が保持するビットの値を反転させた値が同時に多数決論理回路４１に入力されるので、外部磁場係数の影響は無い（外部磁場係数が０に相当する）ことになる。また、メモリセルＩＳ０が保持するビットの値が１の場合には、メモリセルＩＳ１が保持するビットの値と、その値と同じ値（複製）が同時に多数決論理回路４１に入力されることになる。
【００６６】
上述したスピン間の相互作用によるエネルギー最小化で、適用されたイジングモデルの基底状態探索を実現することができるが、これだけでは局所最適解に陥ってしまう可能性がある。基本的に、エネルギーを小さくする方向の動きしかないため、一旦局所最適解に陥るとそこから抜け出すことができず、大域最適解に到達しない。そのため、局所最適解から脱出するための作用として、スピンを表現するメモリセルの値を確率的に反転されるために、スピンユニット３２はインタフェースとして乱数入力線ＲＮＤを備える。
【００６７】
そしてスピンユニット３２には、上述のようにイジングチップ８内の図示しない乱数発生器により発生された乱数がこの乱数入力線ＲＮＤを介して各スピンユニット３２に与えられ、この乱数がＯＲ回路４２に入力することで、スピンの値が確率的に反転される。
【００６８】
（１−３）品質管理部の構成
品質管理部１１は、図２に示すように、ＢＩＳＴ（Build In Self Test）回路６０、フェイルアドレスメモリ６１及び係数設定回路６２を備えて構成される。
【００６９】
ＢＩＳＴ回路６０は、予め設定された複数種類の品質テストのテスト内容にそれぞれ対応させて、品質テストごとに各スピンユニット３２の各メモリセル（Ｎ，ＩＳ０，ＩＳ１，ＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０及びＩＦ１）にデータ（０又は１）をそれぞれライト／リードするためのアドレス（ＡＤＤ）、データ（Ｄ）及び又はＲ／Ｗ制御信号（Ｒ／Ｗ）を生成したり、各スピンユニット３２において相互作用を行わせるための相互作用クロック（ＣＬＫＩ）及び相互作用アドレス（ＩＡＤＤ）を生成し、生成したアドレス、データ、Ｒ／Ｗ制御信号、相互作用クロック及び又は相互作用アドレスを各スピンユニット３２に送信する機能を有するハードウェアである。
【００７０】
またフェイルアドレスメモリ６１は、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）やフラッシュメモリ等の不揮発性メモリから構成され、ＢＩＳＴ回路６０が実行した品質テストにより検出されたスピンユニット群２０内の不良なメモリセル（以下、これを不良メモリセルと呼ぶ）を有するスピンユニット３２（以下、これを不良スピンユニット３２と呼ぶ）の識別子を記憶するために利用される。
【００７１】
係数設定回路６２は、イジングチップ８が実際の相互作用を実行する際に、品質テストにおいて検出した不良スピンユニット３２の影響が他のスピンユニット３２に及ばないようにするための処理を実行する機能を有するハードウェアである。具体的に、係数設定回路６２は、その不良スピンユニット３２から出力されるスピンの値を入力するスピンユニット３２（イジングモデルにおいて不良スピンユニット３２が値を保持するスピンに隣接するスピンの値を保持するスピンユニット３２）におけるそのスピンの値に対応する相互作用係数を保持するメモリセルに所定値（具体的には０）を設定する。
【００７２】
ここで、イジングチップ８の品質テストは、図２１に示すように、イジングチップが搭載されたＬＳＩ（Large Scale Integration）ボード１２２を接続ケーブル１２１を介してテスタ１２０と接続し、テスタ１２０から接続ケーブル１２１を介してテスト開始信号をＬＳＩボード１２２に送信し、この結果実行された品質テストのテスト結果をテスタ１２０が接続ケーブル１２１を介してＬＳＩボード１２２から読み出すことにより行われる。
【００７３】
そしてＢＩＳＴ回路６０は、かかるテスト開始信号が与えられた場合、品質テストとしてメモリセルテストと、複数パターンの相互作用テストとを実行する。メモリセルテストは、各スピンユニット３２内の各メモリセルに実際に１及び０のデータをそれぞれライト／リードし、これらのメモリセルに正しく１や０をライト／リードできたか否かを判定するテストである。また相互作用テストは、各スピンユニット３２に所定パターンでスピン値、外部磁場係数及び相互作用係数を設定すると共に、各スピンユニット３２に１サイクル分（相互作用クロックの１クロック分）の相互作用を実行させ、その結果と、予め記憶しているそのテストパターンで得られるべき結果とを比較することにより正しく相互作用が実行されたか否かを判定するテストである。相互作用テストは、各スピンユニット３２にそれぞれ設定するスピン値、外部磁場係数及び相互作用係数を異ならせながら複数回行われる。
【００７４】
実際上、ＢＩＳＴ回路６０は、テスト開始信号が与えられるとメモリセルテストを開始し、まず、各スピンユニット３２の各メモリセルにそれぞれ１をライトするためのアドレス、データ（ここでは１）及びＲ／Ｗ制御信号を生成し、これらを各サブアレイ１０のコントロールデコーダ２１にそれぞれ送信する。またＢＩＳＴ回路６０は、この後、各スピンユニット３２の各メモリセルにそれぞれ格納されている値を読み出すためのアドレス及びＲ／Ｗ制御信号を生成し、これらを各サブアレイ１０のコントロールデコーダ２１に送信する。かくして各サブアレイ１０のコントロールデコーダ２１は、ＢＩＳＴ回路６０から与えられるアドレス、データ及びＲ／Ｗ制御信号に基づいて、各スピンユニット３２の各メモリセルにそれぞれ１を格納する一方、この後、ＢＩＳＴ回路６０から与えられるアドレス及びＲ／Ｗ制御信号に基づいて、各スピンユニット３２の各メモリセルにそれぞれ格納されている値をリードし、リードしたこれらの値をテスト結果（Ｑ）としてＢＩＳＴ回路６０に送信する。
【００７５】
さらにＢＩＳＴ回路６０は、この後、各スピンユニット３２の各メモリセルにそれぞれライトする値を０に変えて同様の処理を実行する。そしてＢＩＳＴ回路６０は、各スピンユニット３２の各メモリセルにそれぞれ１や０をライト／リードしたときのテスト結果に基づいて、各サブアレイ１０内に存在するすべてのスピンユニット３２のすべてのメモリセルに１及び０を正しくライト／リードできたか否かを判定し、１及び０を正しくライト／リードできなかったメモリセル（不良メモリセル）を検出した場合には、その不良メモリセルを有する不良スピンユニット３２の識別子をフェイルアドレスメモリ６１に格納する。
【００７６】
またＢＩＳＴ回路６０は、この後、相互作用テストを開始し、そのとき実行する相互作用テストのテスト内容に応じた所定パターンで各サブアレイ１０内の各スピンユニット３２の各メモリセルにデータ（１又は０）をそれぞれライトするためのアドレス、データ及びＲ／Ｗ制御信号を生成して、これらを各サブアレイ１０のコントロールデコーダ２１にそれぞれ送信する。そしてＢＩＳＴ回路６０は、この後、各スピンユニット３２に１サイクル分の相互作用を行わせるための相互作用クロック及び相互作用アドレスを生成し、これらを各サブアレイ１０内の各スピンユニット３２にそれぞれ送信する。かくして各サブアレイ１０のコントロールデコーダ２１は、ＢＩＳＴ回路６０から与えられるアドレス、データ及びＲ／Ｗ制御信号に基づいて、ワード線ドライバ２２及びローカルＩ／Ｏ回路２３を制御することにより、各スピンユニット３２の各メモリセルにそれぞれ指定されたデータをライトする一方、各スピンユニット３２は、この後与えられる相互作用クロック及び相互作用アドレスに基づいて１サイクル分の相互作用を実行する。
【００７７】
この後、ＢＩＳＴ回路６０は、各サブアレイ１０内の各スピンユニット３２のメモリセルＮがそれぞれ保持するスピンの値をリードするためのアドレス及びＲ／Ｗ制御信号を生成し、これを各サブアレイ１０のコントロールデコーダ２１にそれぞれ送信する。かくして各サブアレイ１０のコントロールデコーダ２１は、ＢＩＳＴ回路６０から与えられるアドレス及びＲ／Ｗ制御信号に基づいて、各スピンユニット３２のメモリセルＮがそれぞれ保持するスピンの値をリードし、リードしたこれらスピンの値をテスト結果（Ｑ）としてＢＩＳＴ回路６０に送信する。
【００７８】
ＢＩＳＴ回路６０は、かかる相互作用テストのテスト結果を受信すると、当該テスト結果と、予め記憶しているそのテストパターンの相互作用テストにより得られるべき結果とを比較する。そしてＢＩＳＴ回路６０は、実際のテスト結果と、予め記憶している得られるべき結果とが相違するスピンユニット３２を不良スピンユニット３２として、その識別子をフェイルアドレスメモリ６１に格納する。
【００７９】
一方、係数設定回路６２は、上述のような品質テストの後に、自イジングチップが図１のように情報処理装置１に装着されたときや、その後、ＣＰＵ３から相互作用の実行命令が与えられたときなどの所定のタイミングで、上述の品質テストにおいて検出された不良スピンユニット３２の識別子をフェイルアドレスメモリ６１から読み出し、その不良スピンユニット３２の影響を受けるスピンユニット３２（不良スピンユニット３２から出力されるスピンの値を入力するスピンユニット３２）における、そのスピンの値に対応する相互作用係数を保持するメモリセルに０を設定するようコントロールデコーダ２１を制御する。
【００８０】
また係数設定回路６２は、これと併せて不良スピンユニット３２の識別子をＣＰＵ３に通知する。かくして、ＣＰＵ３は、この後、そのイジングチップ８に相互作用を実行させるに際して、各イジングチップ８の各スピンユニット３２の各メモリセルに相互作用係数等を設定するときに、上述のように係数設定回路６２により０が設定されたメモリセルには相互作用係数を上書きしないように、当該メモリセル以外のメモリセルに相互作用係数等を設定する。
【００８１】
（１−４）品質テスト処理
図９は、図２１について上述したテスタ１２０からのテスト開始信号を受信したイジングチップ８の品質管理部１１により実行される品質テスト処理の具体的な所定手順を示す。ＢＩＳＴ回路６０は、かかるテスト開始信号を受信すると、この図９に示す品質テスト処理を開始し、まず、上述したメモリセルテストを実行する（ＳＰ１）。
【００８２】
そしてＢＩＳＴ回路６０は、このメモリセルテストのテスト結果に基づいて、不良メモリセルを検出したか否かを判断する（ＳＰ２）。ＢＩＳＴ回路６０は、この判断で否定結果を得るとステップＳＰ４に進み、これに対して肯定結果を得ると、その不良メモリセルを備えるスピンユニット３２を不良スピンユニット３２として、その識別子をフェイルアドレスメモリ６１に格納する（ＳＰ３）。
【００８３】
続いて、ＢＩＳＴ回路６０は、相互作用テストを開始し、予め設定された複数のテストパターンの中から１つのテストパターンに応じたスピン値、外部磁場係数及び相互作用係数と、アドレス及びＲ／Ｗ制御信号とを各サブアレイ１０のコントロールデコーダ２１にそれぞれ送信することにより、これらのスピン値、外部磁場係数及び相互作用係数を各スピンユニット３２内の対応する各メモリセルにそれぞれ設定する（ＳＰ４）。
【００８４】
続いて、ＢＩＳＴ回路６０は、各スピンユニット３２に乱数を入力させないため、自イジングチップ８内の乱数発生器を、乱数を発生させいないように制御し（ＳＰ５）、この後、相互作用クロックを１クロック分だけ各スピンユニット３２に与えることにより、これらのスピンユニット３２に相互作用を１サイクル分実行させる（ＳＰ６）。
【００８５】
次いで、ＢＩＳＴ回路６０は、各サブアレイ１０のコントロールデコーダ２１に各スピンユニット３２がそれぞれ保持するスピンの値をリードさせることにより、かかる相互作用テストのテスト結果を取得し（ＳＰ７）、かくして得られた各サブアレイ１０の各スピンユニット３２がそれぞれ保持するスピンの値が、それぞれそのとき実行したテストパターンの結果として予め記憶している値と異なるか（不良結果があるか）否かを判断する（ＳＰ８）。
【００８６】
そしてＢＩＳＴ回路６０は、この判断で否定結果を得るとステップＳＰ１０に進み、これに対して肯定結果を得ると、そのとき実行したテストパターンのテスト結果として保持すべきスピンの値と異なる値を保持するスピンユニット３２を不良スピンユニット３２として、その識別子をフェイルアドレスメモリ６１に格納する（ＳＰ９）。
【００８７】
続いて、ＢＩＳＴ回路６０は、すべてのテストパターンの相互作用テストを完了したか否かを判断する（ＳＰ１０）。そしてＢＩＳＴ回路６０は、この判断で否定結果を得るとステップＳＰ４に戻り、この後、ステップＳＰ４〜ステップＳＰ１０の処理を繰り返す。そしてＢＩＳＴ回路６０は、やがてすべてのテストパターンの相互作用テストが完了することによりステップＳＰ１０で肯定結果を得ると、この品質テスト処理を終了する。
【００８８】
（１−５）本実施の形態の効果
以上のように本実施の形態では、イジングチップ８内に設けられた品質管理部１１が各スピンユニット３２に対する品質テストを実行し、そのテスト結果と、予め与えられた当該品質テストにより得られるべき結果とを比較し、比較結果に基づいて不良メモリセルを検出するようにしているため、不良スピンユニット３２を簡易かつ適切に検出することができる。
【００８９】
また本実施の形態では、かかる品質テストの結果に基づいて、不良スピンユニット３２から出力されるスピンの値を入力する他の各スピンユニット３２における、当該スピンに対応する相互作用係数を保持するメモリセルに０を設定するようにしているため、かかる不良スピンユニット３２が他のスピンユニット３２に悪影響を及ぼすのを未然に防止することができる。
【００９０】
（２）第２の実施の形態
図２との対応部分に同一符号を付して示す図１０は、第１の実施の形態によるイジングチップ８（図２）に代えて、図１の情報処理装置１に適用される第２の実施の形態のイジングチップ７０を示す。このイジングチップ７０は、サブアレイ７１のスピンユニット群７２を構成する各スピンユニット７３の構成と、品質管理部７４の構成とが異なる点を除いて第１の実施の形態のイジングチップ８と同様に構成されている。
【００９１】
実際上、本実施の形態の場合、スピンユニット７３には、図６との対応部分に同一符号を付した図１１に示すように、相互作用係数を保持するメモリセル対ＩＵｘ，ＩＬｘ，ＩＲｘ，ＩＤｘ，ＩＦｘに加えて、それぞれ他のメモリセルと同様の構成を有する２つの冗長なメモリセルＩＢ０、ＩＢ１から構成されるメモリセル対（以下、これを冗長メモリセル対ＩＢｘと呼ぶ）が設けられている。また本スピンユニット７３には、相互作用係数を保持するメモリセル対ＩＵｘ，ＩＬｘ，ＩＲｘ，ＩＤｘ，ＩＦｘにそれぞれ対応させて第１のスイッチ回路８０が設けられると共に、冗長メモリセル対ＩＢｘに対応させて冗長メモリセル対用スイッチ回路８１が設けられている。さらにスピンユニット７３には、切替えアドレスメモリ８２が設けられている。
【００９２】
そして冗長メモリセル対ＩＢｘの一方のメモリセルＩＢ１は、隣接スピンの状態とメモリセルＩＢ１が保持する値との排他的論理和の否定（ＸＮＯＲ）を出力するＸＮＯＲ回路８３の一方の入力端と接続されている。また、冗長メモリセル対ＩＢｘの他方のメモリセルＩＢ０は、当該メモリセルＩＢ０が保持する値と、かかるＸＮＯＲ回路８３の出力との排他的論理和を出力するＸＯＲ回路８４の一方の入力端と接続されており、当該ＸＯＲ回路８４の出力と、ＸＮＯＲ回路８３の出力とが多数決論理回路４１に与えられる。
【００９３】
また第１のスイッチ回路８０には、それぞれ連番のアドレスが付与される。例えば、メモリセル対ＩＵｘと対応付けられた第１のスイッチ回路８０には「１」、メモリセル対ＩＬｘと対応付けられた第１のスイッチ回路８０には「２」、メモリセル対ＩＲｘと対応付けられた第１のスイッチ回路８０には「３」、メモリセル対ＩＤｘと対応付けられた第１のスイッチ回路８０には「４」、メモリセル対ＩＦｘと対応付けられた第１のスイッチ回路８０には「５」というアドレスが付与される。
【００９４】
なお以下においては、ある第１のスイッチ回路８０に対して、当該第１のスイッチ回路８０のアドレスよりも１つ大きいアドレスが付与された第１のスイッチ回路８０を「隣接する第１のスイッチ回路８０」と呼び、ある第１のスイッチ回路８０と対応付けられたメモリセル対に対して、隣接する第１のスイッチ回路８０と対応付けられたメモリセル対を「隣接するメモリセル対」と呼ぶものとする。
【００９５】
第１のスイッチ回路８０は、それぞれ常閉端子８０Ａ及び常開端子８０Ｂを備えるＣ接点型のスイッチ構造を有する。そして第１のスイッチ回路８０の常閉端子８０Ａは、それぞれ対応するメモリセル対ＩＵｘ、ＩＬｘ、ＩＲｘ，ＩＤｘ，ＩＦｘのメモリセルＩＵ１，ＩＬ１，ＩＲ１，ＩＤ１，ＩＦ１と一方の入力端が接続されたＸＮＯＲ回路４３の他方の入力端と接続されると共に、第１のスイッチ回路８０の常開端子８０Ｂは、それぞれ隣接する第１のスイッチ回路８０の常閉端子８０Ａと接続され（メモリセル対ＩＵｘ，ＩＬｘ，ＩＲｘ，ＩＤｘの場合）、又は、冗長メモリセル対用スイッチ回路８１（メモリセル対ＩＦｘの場合）の一方の端子８１Ａと接続されている。また第１のスイッチ回路８０の共通端子８０Ｃには、それぞれ図３について上述したイジングモデルの隣接するスピンの値が他のスピンユニット７３から与えられる。
【００９６】
さらに冗長メモリセル対用スイッチ回路８１は、ｂ接点型のスイッチ構造を有し、一方の端子８１Ａが、冗長メモリセル対のメモリセルＩＢ１と一方の入力端が接続されたＸＮＯＲ回路８３の他方の入力端と接続され、他方の端子８１Ｂがグランドと接続されている。
【００９７】
切替えアドレスメモリ８２は、例えばＳＲＡＭから構成される。この切替えアドレスメモリ８２には、後述のように品質管理部７４（図１０）のＢＩＳＴ回路９０（図１０）により検出された不良メモリセルが構成するメモリセル対ＩＵｘ，ＩＬｘ，ＩＲｘ，ＩＤｘ又はＩＦｘと対応付けられた第１のスイッチ回路８０のアドレスが格納される。
【００９８】
一方、図１０に示すように、品質管理部７４は、ＢＩＳＴ回路９０、フェイルアドレスメモリ９１及び切替えアドレス生成回路９２から構成される。フェイルアドレスメモリ９１は、図２について上述した第１の実施の形態のフェイルアドレスメモリ６１と同様の構成を有するものであるため、ここでの説明は省略する。
【００９９】
ＢＩＳＴ回路９０は、図２について上述した第１の実施の形態のＢＩＳＴ回路５０と同様にして自イジングチップ７０の品質テストを行う機能を有するハードウェアである。ＢＩＳＴ回路９０は、メモリセルテストにおいて検出した不良メモリセルが相互作用係数を保持するためのメモリセル（ＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０及びＩＦ１）であり、かつ当該不良メモリセルから構成されるメモリセル対（以下、これを不良メモリセル対と呼ぶ）の数が冗長メモリセル対ＩＢｘの数（図１１では１）よりも少ないスピンユニット７３が存在する場合には、当該不良メモリセルのアドレスをフェイルアドレスメモリ９１に格納する。
【０１００】
またＢＩＳＴ回路９０は、メモリセルテストにおいて検出した不良メモリセルがスピンの値又は外部磁場係数を保持するためのメモリセル（Ｎ，ＩＳ０，ＩＳ１）である場合や、不良メモリセル対の数が冗長メモリセル対ＩＢｘの数よりも多い場合には、その不良メモリセルを備えるスピンユニット７３を不良スピンユニットとして、その識別子をフェイルアドレスメモリ９１に格納する。さらにＢＩＳＴ回路９０は、相互作用テストにおいて不良結果が得られたスピンユニット７３が存在する場合にも、そのスピンユニット７３を不良スピンユニットとして、その識別子をフェイルアドレスメモリ９１に格納する。
【０１０１】
切替えアドレス生成回路９２は、フェイルアドレスメモリ９１に不良スピンユニット７３の識別子が格納されている場合に、自イジングチップ７０が図１のように情報処理装置１に装着されたときや、その後、ＣＰＵ３から相互作用の実行命令が与えられたときなどの所定のタイミングで、第１の実施の形態の係数設定回路６２（図２）と同様の処理を実行する機能を有するハードウェアである。
【０１０２】
また切替えアドレス生成回路９２は、フェイルアドレスメモリ９１に不良メモリセルのアドレスが格納されている場合には、かかる所定のタイミングで、該当するスピンユニット７３（その不良メモリセルを備える不良スピンユニット７３）内のその不良メモリセルと対応付けられた第１のスイッチ回路８０のアドレスを切替えアドレスとして生成し、生成した切替えアドレスをその不良スピンユニット７３の切替えアドレスメモリ８２（図１１）に格納する機能をも有する。この際、切替えアドレス生成回路９２は、フェイルアドレスメモリ９１に格納されている不良メモリセルのアドレスをＣＰＵ３に通知する。
【０１０３】
他方、本実施の形態のスピンユニット７３では、上述のようにして切替えアドレスメモリ８２に切替えアドレスが格納された場合、その切替えアドレスが第１のスイッチ回路８０及び冗長メモリセル対用スイッチ回路８１に通知される。
【０１０４】
この場合、第１のスイッチ回路８０は、切替えアドレスメモリ８２から通知された切替えアドレスが自己に付与されたアドレスよりも大きいときには何もせず、かかる切替えアドレスが自己に付与されたアドレスと同じ又は当該アドレスよりも小さいときには、接続先を常閉端子８０Ａから常開端子８０Ｂに切り替える。また冗長メモリセル対用スイッチ回路８１は、切替えアドレスメモリ８２から切替えアドレスが通知された場合には、閉状態から開状態に状態を変化させる。
【０１０５】
例えば、図１２に示すように、品質管理部７４のＢＩＳＴ回路９０によりメモリセルＩＲ１が不良であると検出された場合、上述の例では「３」という切替えアドレスが切替えアドレスメモリ８２に格納されることになるが、この場合、対応付けられた切替えアドレスが「３」以上である、メモリセル対ＩＲｘと対応付けられた第１のスイッチ回路８０と、メモリセル対ＩＤｘと対応付けられた第１のスイッチ回路８０と、メモリセル対ＩＦｘと対応付けられた第１のスイッチ回路８０とが接続先を常閉端子８０Ａから常開端子８０Ｂに切り替え、冗長メモリセル対用スイッチ回路８１が開状態となる。
【０１０６】
これにより対応する他の各スピンユニット７３からそれぞれ与えられる、イジングモデルにおいて隣接するスピンの値の対応先が、不良メモリセル対以降の各メモリセル対（不良メモリセル対及び当該不良メモリセル対に順次隣接する各メモリセル対）については、順次隣接するメモリセル対に切り替えられる。
【０１０７】
また不良メモリセルのアドレスが切替えアドレス生成回路９２から通知されたＣＰＵ３は、相互作用の実行時に、不良メモリセル対以降の各メモリセル対にそれぞれ格納すべき相互作用係数を、それぞれそのメモリセル対に隣接するメモリセル対（冗長メモリセル対ＩＢｘを含む）に順次ずらして格納するようそのイジングチップ７０を制御する。
【０１０８】
例えば、図１２の例の場合、メモリセルＩＲ０及びＩＲ１から構成されるメモリセル対ＩＲｘに格納すべき相互作用係数を、これに隣接するメモリセル対ＩＤｘに格納し、当該メモリセル対ＩＤｘに格納すべき相互作用係数を、これに隣接するメモリセル対ＩＦｘに格納し、当該メモリセル対ＩＦｘに格納すべき相互作用係数を、これに隣接する冗長メモリセルＩＢｘ対に格納する。
【０１０９】
この結果、相互作用の実行時に、不良メモリセル対以降のメモリセル対に格納された相互作用係数を用いて行われるべき相互作用が、不良メモリセルに順次隣接する各メモリセル対にそれぞれ格納された相互作用係数を用いて行われることになる。
【０１１０】
このように本実施の形態では、品質管理部７４のＢＩＳＴ回路９０により実行されたメモリセルテストにおいて不良メモリセルを検出した場合においても、１つのスピンユニット７３に含まれる不良メモリセル対の数がそのスピンユニット７３に形成された冗長メモリセル対ＩＢｘの数よりも少ない場合には、当該冗長メモリセル対ＩＢｘを用いて相互作用を実行することができるようになされている。
【０１１１】
図１３は、本実施の形態のスピンユニット７３の各メモリセル（Ｎ，ＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０及びＩＦ１）及び切替えアドレスメモリ８２と、品質管理部７４のフェイルアドレスメモリ９１との特徴を示す。図１３において、「スピンの値」の列は、スピンユニット７３においてスピンの値を保持するメモリセルＮの特徴を示し、「係数値」の列は、スピンユニット７３において相互作用係数を保持するメモリセルＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０，ＩＦ１，ＩＢ０及びＩＢ１の特徴を示す。また「切替えアドレス」の列は、切替えアドレスメモリ８２の特徴を示し、「フェイルアドレス」の列は、フェイルアドレスメモリ９１の特徴を示す。
【０１１２】
この図１３に示すように、本実施の形態では、スピンユニット７３内の各メモリセル及び切替えアドレスメモリ８２をＳＲＡＭなどの揮発性メモリから構成し、フェイルアドレスメモリ９１を不揮発性メモリから構成する。また本実施の形態の場合、スピンユニット７３においてスピンの値を保持するメモリセルＮについては、冗長構成でないため、不良になり難い大きいメモリサイズとする必要があるが、相互作用係数を保持するメモリセルＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０及びＩＦ１については、冗長構成を有するためメモリサイズが小さくても良い。また切替えアドレスメモリ８２及びフェイルアドレスメモリ９１についても、メモリサイズが小さくても良い。
【０１１３】
図１４（Ａ）及び（Ｂ）は、スピンユニット７３内の各メモリセルＮ，ＩＳ０，ＩＳ１，ＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０，ＩＦ１，ＩＢ０及びＩＢ１のレイアウト例を示す。図１４（Ａ）は各スピンユニット７３内に冗長メモリセル対ＩＢｘを設ける場合のメモリセルのレイアウト例であり、図１４（Ｂ）は各スピンユニット７３内に冗長メモリセル対ＩＢｘを設けない場合のメモリセルのレイアウト例である。
【０１１４】
この図１４（Ａ）及び（Ｂ）に示すように、各スピンユニット７３内に冗長メモリセル対ＩＢｘを設けない場合、メモリセルが不良となり難いようにメモリセルのサイズを大きくして対応する必要があるが、各スピンユニット７３内に冗長メモリセル対ＩＢｘを設ける場合には、不良メモリセルがあっても冗長メモリセル対ＩＢｘで代替できるため、相互作用係数を保持するメモリセルＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０，ＩＦ１，ＩＢ０及びＩＢ１のサイズを小さくすることができる。
【０１１５】
図１５Ａ及び図１５Ｂは、図２１のように接続ケーブル１２１を介して接続されたテスタ１２０からのテスト開始信号を受信した本実施の形態のイジングチップ７０において品質管理部７４のＢＩＳＴ回路９０により実行される本実施の形態の品質テスト処理の具体的な処理手順を示す。
【０１１６】
ＢＩＳＴ回路９０は、かかるテスト開始信号を受信すると、この図１５に示す品質テスト処理を開始し、まず、上述したメモリセルテストを実行する（ＳＰ２０）。そしてＢＩＳＴ回路９０は、このメモリセルテストのテスト結果に基づいて、不良メモリセルを検出したか否かを判断する（ＳＰ２１）。そしてＢＩＳＴ回路９０は、この判断で否定結果を得るとステップＳＰ２８に進む。
【０１１７】
これに対して、ＢＩＳＴ回路９０は、ステップＳＰ２１の判断で肯定結果を得ると、かかるメモリセルテストにおいて検出した不良メモリセルの中から１つの不良メモリセルを選択し（ＳＰ２２）、その不良メモリセルが相互作用係数を保持するためのメモリセルＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０，ＩＦ１，ＩＢ０又はＩＢ１であるか否かを判断する（ＳＰ２３）。
【０１１８】
ＢＩＳＴ回路９０は、この判断で否定結果を得ると、その不良メモリセルを備えるスピンユニット３２を不良スピンユニットとして、その識別子をフェイルアドレスメモリ６１に格納した後（ＳＰ２６）、ステップＳＰ２７に進む。
【０１１９】
これに対して、ＢＩＳＴ回路９０は、ステップＳＰ２３の判断で肯定結果を得ると、ステップＳＰ２２で選択した不良メモリセルを備える不良スピンユニット７３において、不良メモリセル対の数がそのスピンユニット７３内に設けられた冗長メモリセル対ＩＢｘの数以下であるか否かを判断する（ＳＰ２４）。そしてＢＩＳＴ回路９０は、この判断で否定結果を得ると、上述と同様にしてステップＳＰ２６の処理を実行し、この後、ステップＳＰ２７に進む。
【０１２０】
またＢＩＳＴ回路９０は、ステップＳＰ２４の判断で肯定結果を得ると、ステップＳＰ２２で選択した不良メモリセルのアドレスをフェイルアドレスメモリ９１に格納し（ＳＰ２５）、この後、ステップＳＰ２０のメモリセルテストで検出したすべての不良メモリセルについてステップＳＰ２２〜ステップＳＰ２６の処理を実行し終えたか否かを判断する（ＳＰ２７）。
【０１２１】
ＢＩＳＴ回路９０は、この判断で否定結果を得るとステップＳＰ２２に戻り、この後、ステップＳＰ２２で選択する不良メモリセルを未処理の他の不良メモリセルに順次切り替えながら、ステップＳＰ２２〜ステップＳＰ２７の処理を繰り返す。
【０１２２】
そしてＢＩＳＴ回路９０は、やがてステップＳＰ２０のメモリセルテストにおいて検出したすべての不良メモリセルについてステップＳＰ２２〜ステップＳＰ２６の処理を実行し終えることによりステップＳＰ２７で肯定結果を得ると、そのときフェイルアドレスメモリ９１に格納されている不良メモリセルのアドレスに対応する切替えアドレスを生成し、生成した切替えアドレスを該当するスピンユニット７３の切替えアドレスメモリ８２に格納するよう切替えアドレス生成回路９２を制御する（ＳＰ２８）。
【０１２３】
この結果、そのスピンユニット７３において、不良メモリセル対以降の各メモリセル対とそれぞれ対応付けられた第１のスイッチ回路８０の接続先が常開端子に切り替えられ、これにより他の各スピンユニット７３からそれぞれ与えられる隣接スピンの値の対応先が、不良メモリセル対以降の各メモリセル対については、順次隣接するメモリセル対に切り替えられる。
【０１２４】
続いて、ＢＩＳＴ回路９０は、ステップＳＰ２９〜ステップＳＰ３２を図９について上述した第１の実施の形態の品質テスト処理のステップＳＰ４〜ステップＳＰ７と同様に処理する。またＢＩＳＴ回路９０は、この後、そのとき実行したテストパターンの結果として予め記憶している値と異なる値を保持しているスピンユニット７３があるか否か（不良結果があるか否か）を判断する（ＳＰ３３）。
【０１２５】
ＢＩＳＴ回路９０は、この判断で否定結果を得るとステップＳＰ３５に進み、これに対して肯定結果を得ると、そのとき実行したテストパターンの結果として予め記憶している値と異なる値を保持しているスピンユニット７３を不良スピンユニットとして、その識別子をフェイルアドレスメモリ９１に格納する（ＳＰ３４）。
【０１２６】
次いで、ＢＩＳＴ回路９０は、すべてのテストパターンの相互作用テストを完了したか否かを判断する（ＳＰ３５）。そしてＢＩＳＴ回路９０は、この判断で否定結果を得るとステップＳＰ２９に戻り、この後、ステップＳＰ２９〜ステップＳＰ３５の処理を繰り返す。そしてＢＩＳＴ回路９０は、やがてすべてのテストパターンの相互作用テストが完了することによりステップＳＰ３５で肯定結果を得ると、この品質テスト処理を終了する。
【０１２７】
一方、図１６は、自イジングチップ７０が図１のように情報処理装置１に装着されたときや、その後、ＣＰＵ３から相互作用の実行命令が与えられたときなどに、イジングチップ７０において実行される相互作用前処理の処理手順を示す。イジングチップ７０は、この図１６に示す処理手順に従って、上述のメモリセルテストにおいて検出した不良メモリセルを含むスピンユニット７３について、不良メモリセル対以降の各メモリセル対を順次隣接するメモリセル対に置き換える相互作用前処理を実行する。
【０１２８】
実際上、イジングチップ７０では、かかる相互作用前処理として、まず、品質管理部７４の切替えアドレス生成回路９２（図１０）が不良メモリセルのアドレスをフェイルアドレスメモリ９１（図１０）から読み出し（ＳＰ４０）、読み出したアドレスを対応する第１のスイッチ回路８０（図１１）のアドレスに変換することにより上述の切替えアドレスを生成する（ＳＰ４１）。そして切替えアドレス生成回路９２は、生成した切替えアドレスを該当するスピンユニット７３の切替えアドレスメモリ８２（図１１）に格納する（ＳＰ４２）。
【０１２９】
この結果、切替えアドレスメモリ８２に切替えアドレスが格納されたスピンユニット７３において、該当する第１のスイッチ回路８０以降の各第１のスイッチ回路８０の接続先が常開端子８０Ｂ（図１１）に切り替えられると共に、冗長メモリセル対用スイッチ回路８１（図１１）が開状態に状態が切り替えられることにより、不良メモリセル対以降のメモリセル対が順次隣接メモリセル対に置き換えられる（ＳＰ４３）。そして、この後、この相互作用前処理が終了する。
【０１３０】
なお、本実施の形態の場合、切替えアドレス生成回路９２は、上述の相互作用前処理と並行して、不良スピンユニット７３の識別子をフェイルアドレスメモリ９１から読み出し、その不良スピンユニット７３から出力されるスピンの値を入力するスピンユニット７３における、そのスピンの値に対応する相互作用係数を保持するメモリセルに０を設定すると共に、不良スピンユニット７３の識別子をＣＰＵ３に通知する処理も実行する。
【０１３１】
かくして、ＣＰＵ３は、そのイジングチップ７０に相互作用を実行させる前に、各イジングチップ７０の各スピンユニット７３の各メモリセルに相互作用係数等を設定する際、切替えアドレス生成回路９２により０が設定されたメモリセルには相互作用係数を上書きしないように、当該メモリセル以外のメモリセルに相互作用係数等を設定する。
【０１３２】
以上のように本実施の形態によれば、冗長メモリセル対ＩＢｘをスピンユニット７３内に設け、メモリセルテストにおいて相互作用係数を保持するメモリセルの中に不良メモリセルを検出した場合には、その不良メモリセルが構成する不良メモリセル対ＩＵｘ，ＩＬｘ，ＩＲｘ，ＩＤｘ，ＩＦｘに代えて冗長メモリセル対ＩＢｘを利用するように、必要な第１のスイッチ回路８０を切り替えるようにしているため、第１の実施の形態により得られる効果と同様の効果に加えて、不良メモリセルを含むスピンユニット７３についても使用することができるという効果をも得ることができる。
【０１３３】
（３）第３の実施の形態
図１０において、１００は全体として第３の実施の形態のイジングチップを示す。このイジングチップ１００は、各サブアレイ１０１内のスピンユニット群１０２を構成する各スピンユニット１０３の構成と、品質管理部１０４の構成とが異なる点を除いて第１の実施の形態のイジングチップ７０と同様に構成されている。
【０１３４】
図１１との対応部分に同一符号を付して示す図１７は、第３の実施の形態によるスピンユニット１０３を示す。本実施の形態のスピンユニット１０３は、スピンの値を保持するメモリセルＮに対応させて冗長なメモリセルＮＢ（以下、これを冗長メモリセルＮＢと呼ぶ）が設けられ、スピンユニット１０３が保持するスピンの値としてメモリセルＮが保持するスピンの値と、冗長メモリセルＮＢが保持するスピンの値とを第２のスイッチ回路１０５により切り替え得るようになされている点が第２の実施の形態のスピンユニット７３（図１１）と相違する。
【０１３５】
実際上、本実施の形態のスピンユニット１０３では、スピンの値を保持するメモリセルＮの出力端がｃ接点型のスイッチ構造を有する第２のスイッチ回路１０５の常閉端子１０５Ａと接続されている。また冗長メモリセルＮＢの入力端はメモリセルＮの入力端と共にセレクタ４０の出力端と接続され、冗長メモリセルＮＢの出力端は第２のスイッチ回路１０５の常開端子１０５Ｂと接続されている。そして本スピンユニット１０３では、切替えアドレスメモリ８２に格納された切替えアドレスが第２のスイッチ回路１０５にも通知される。
【０１３６】
一方、本実施の形態の品質管理部１０４（図１０）の場合、ＢＩＳＴ回路１１０（図１）は、メモリセルテストにより検出した不良メモリセルがスピンの値を保持するためのメモリセルＮである場合にも、当該不良メモリセルのアドレスをフェイルアドレスメモリ９１に格納する。
【０１３７】
また切替えアドレス生成部１１１は、第２の実施の形態の切替えアドレス生成回路９２（図１０）と同様の機能に加えて、自イジングチップが図１のように情報処理装置１に装着されたときや、その後、ＣＰＵ３から相互作用の実行命令が与えられたときなどに、スピンの値を保持するためのメモリセルＮのアドレスがフェイルアドレスメモリ９１に格納されている場合には、第２のスイッチ回路１０５のアドレスを生成し、生成したアドレスを切替えアドレスとして該当するスピンユニット１０３の切替えアドレスメモリ８２に格納すると共に、スピンの値を保持するためのメモリセルＮのアドレスをＣＰＵ３に通知する機能をも有する。
【０１３８】
そして本実施の形態のスピンユニット１０３では、切替えアドレスメモリ８２に第２のスイッチ回路１０５のアドレスが切替えアドレスとして格納された場合、上述のようにその切替えアドレスが第２のスイッチ回路１０５にも通知される。かくして、第２のスイッチ回路１０５は、自己に付与されたアドレスが切替えアドレスとして与えられた場合、接続先を常閉端子から常開端子に切り替える。
【０１３９】
また不良メモリセルのアドレスが切替えアドレス生成部１１１から通知されたＣＰＵ３は、相互作用の実行時に、メモリセルＮに格納すべきスピンの値を冗長メモリセルＮＢに格納するようそのイジングチップ１００を制御する。
【０１４０】
この結果、そのスピンユニット１０３では、相互作用の実行時に、メモリセルＮに代えて冗長メモリセルＮＢが利用されて相互作用係数を用いて行われ、最終的にこの冗長メモリセルＮＢが保持するスピンの値が相互作用の結果として出力される。
【０１４１】
このように本実施の形態では、品質管理部１０４のＢＩＳＴ回路１１０により実行されたメモリセルテスト時にスピンの値を保持するメモリセルＮを不良メモリセルとして検出した場合においても、冗長メモリセルＮＢを用いて相互作用を実行し得るようになされている。
【０１４２】
図１９は、本実施の形態のスピンユニット１０３の各メモリセル（Ｎ，ＮＢ，ＩＳ０，ＩＳ１，ＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０及びＩＦ１）及び切替えアドレスメモリ８２と、フェイルアドレスメモリ９１との特徴を示す。本実施の形態の場合、スピンユニット１０３においてスピンの値を保持するメモリセルＮが冗長構成であるため、メモリサイズを小さくすることができる点が図１３について上述した第２の実施の形態と相違する。
【０１４３】
図２０は、図２１のように接続ケーブル１２１を介して接続されたテスタ１２０からのテスト開始信号を受信した本実施の形態のイジングチップ１００（図１０）において品質管理部１０４（図１０）のＢＩＳＴ回路１１０（図１０）により実行される本実施の形態の品質テスト処理の具体的な所定手順を示す。
【０１４４】
ＢＩＳＴ回路１１０は、かかるテスト開始信号を受信すると、この図２０に示す品質テスト処理を開始し、まず、ステップＳＰ５０及びステップＳＰ５１を、図１５について上述した第２の実施の形態の品質テスト処理のステップＳＰ２０及びステップＳＰ２１と同様に処理する。
【０１４５】
そしてＢＩＳＴ回路１１０は、ステップＳＰ５１の判断で肯定結果を得ると、ステップＳＰ５０のメモリセルテストにおいて検出した不良メモリセルの中から１つの不良メモリセルを選択し（ＳＰ５２）、その不良メモリセルがスピンの値を保持するメモリセルＮ又は相互作用係数を保持するためのメモリセルＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０，ＩＦ１，ＩＢ０若しくはＩＢ１のいずれかであるか否かを判断する（ＳＰ５３）。
【０１４６】
ＢＩＳＴ回路１１０は、この判断で肯定結果を得ると、ステップＳＰ５２で選択した不良メモリセルが相互作用係数を保持するメモリセルである場合にのみ、当該不良メモリセルを備える不良スピンユニット７３において、不良メモリセル対の数がそのスピンユニット１０３内に設けられた冗長メモリセル対ＩＢｘの数以下であるか否かを判断する（ＳＰ５４）。
【０１４７】
そしてＢＩＳＴ回路１１０は、この後、ステップＳＰ５５〜ステップＳＰ６５を上述の第２の実施の形態の品質テスト処理のステップＳＰ２５〜ステップＳＰ３５と同様に処理し、この後、この品質テスト処理を終了する。
【０１４８】
以上のように本実施の形態によれば、スピンの値を保持するメモリセルＮに対応させて冗長メモリセルＮＢをスピンユニット１０３内に設け、メモリセルテストの際にメモリセルＮの不良を検出した場合には、そのメモリセルＮに代えて冗長メモリセルＮＢを利用するように、第２のスイッチ回路１０５を切り替えるようにしているため、第１及び第２の実施の形態により得られる効果と同様の効果に加えて、スピンの値を保持するメモリセルＮに不良がある場合においてもスピンユニット１０３を使用することができるという効果を得ることができる。
【０１４９】
（４）他の実施の形態
なお上述の第１〜第３の実施の形態においては、本発明をイジングモデルにおけるスピン間の相互作用を模擬するイジングチップ８に適用するようにした場合について述べたが、本発明はこれに限らず、イジングモデル以外の相互作用モデルにおけるノード間の相互作用を模擬する半導体装置にも広く適用することができる。このような半導体装置は、図１〜図２０Ｂについて上述した第１〜第３の実施の形態のイジングチップ８，７０，１００と同様に構成することができる。この場合、ノードごとのバイアスが存在しない場合には、そのバイアスの係数（以下、これをバイアス係数と呼ぶ）を保持するメモリセル対ＩＳｘを単位素子から省略することができ、またかかるバイアスが存在する場合には、外部磁場係数に代えてかかるバイアス係数をメモリセル対ＩＳｘに保持するようにすれば良い。
【０１５０】
また上述の第１〜第３の実施の形態においては、乱数発生器を各イジングチップ８，７０，１００内にそれぞれ設けるようにした場合について述べたが、本発明はこれに限らず、乱数発生器をイジングチップ８，７０，１００の外部に設けるようにしもて良い。
【０１５１】
また上述の第１〜第３の実施の形態においては、品質テストにおいて不良メモリセルを検出した場合に、その不良メモリセルを備える不良スピンユニット３２の影響を受ける他のスピンユニット３２の対応するメモリセルに０を格納し（第１の実施の形態）、若しくは、不良メモリセル以降のメモリセル対を順次隣接するメモリセル対（冗長メモリセル対）に置き換えるように第２のスイッチ回路８０や冗長メモリセル対用スイッチ回路８１に切り替え（第２の実施の形態）、又はスピンの値を保持するメモリセルＮを冗長メモリセルＮＢに置き換えるように第３のスイッチ回路１０５を切り替えるようにした場合について述べたが、本発明はこれに限らず、例えば、不良メモリセルを検出したイジングチップ８，７０，１１０については、使用しないようにしても良い。
【０１５２】
さらに上述の第１〜第３の実施の形態においては、イジングチップ８，７０，１００（図２、図１０）の内部に品質管理部１１，７４，１０４（図２、図１０）を設けるようにした場合について述べたが、本発明はこれに限らず、これら品質管理部１１，７４，１０４の機能を外部の機器に持たせるようにしても良い。例えば、図２１において、これら品質管理部１１，７４，１０４と同様の機能をテスタ１２に持たせて図９、図１５又は図２０について上述した品質テスト処理や、図１６について上述した相互作用前処理の一部をテスタ１２０において実行するようにしても良い。
【０１５３】
さらに上述の第１〜第３の実施の形態においては、図２１のように１つのＬＳＩボード１２２に１つのイジングチップ８，７０，１１０が搭載されている場合について述べたが、本発明はこれに限らず、図２２に示すように、例えばＬＳＩボード１２５上に複数のイジングチップ８，７０，１００が形成されている場合にも本発明を適用することができる。この場合、かかる機能を有するテスタ１２３を接続ケーブル１２４を介してＬＳＩボード１２５と接続し、ＬＳＩボード１２５上の各イジングチップ８，７０，１００に対してテスタ１２３により並列的又は順番に品質テストや相互作用前処理の一部を行うようにすれば良い。
【０１５４】
さらに上述の第２及び第３の実施の形態においては、品質テストにおいて検出した不良メモリセルに関する第１の情報として、その不良メモリセルが構成する不良メモリセル対と対応付けられた第１又は第２のスイッチ回路８０，１０５のアドレスを切替えアドレスとして該当するスピンユニット７３，１０３に通知するようにした場合について述べたが、本発明はこれに限らず、不良メモリセルのアドレスをそのまま該当するスピンユニット７３，１０３に通知し、当該スピンユニット７３，１０３において、その不良メモリセルのアドレスに基づいて該当する第１又は第２のスイッチ回路８０，１０５を特定して、その第１又は第２のスイッチ回路８０，１０５の接続先を切り替えるようにしても良い。
【産業上の利用可能性】
【０１５５】
本発明は、相互作用モデルを表現する半導体装置に広く適用することができる。
【符号の説明】
【０１５６】
１……情報処理装置、３……ＣＰＵ、７……イジングチップコントローラ、８，７０，１００……イジングチップ、１０，１０１……サブアレイ、１１，７４，１０４……品質管理部、２０，７２，１０２……スピンユニット群、２１……コントロールデコーダ、２２……ワード線ドライバ、２３……ローカルＩ／Ｏ回路、３２，７３，１０３……スピンユニット、６０，９０，１１０……ＢＩＳＴ回路、６１，９１……フェイルアドレスメモリ、６２……係数設定回路、８０……第１のスイッチ回路、８０Ａ，１０５Ａ……常閉端子、８０Ｂ，１０５Ｂ…常開端子、８１……冗長メモリセル対用スイッチ回路、８２……切替えアドレスメモリ、９２，１１１……切替えアドレス生成回路、１０５……第２のスイッチ回路、１２０，１２３……テスタ、１２１，１２５……接続ケーブル、Ｎ，ＮＢ，ＩＳ０，ＩＳ１，ＩＵ０，ＩＵ１，ＩＬ０，ＩＬ１，ＩＲ０，ＩＲ１，ＩＤ０，ＩＤ１，ＩＦ０，ＩＦ１，ＩＢ０，ＩＢ１……メモリセル。
【要約】
【課題】
不良な単位素子を簡易かつ適切に検出し得る半導体装置及びその品質管理方法を提案する。
【解決手段】
相互作用モデルにおけるノード間の相互作用を模擬する半導体装置において、各ノードにそれぞれ対応させて設けられた各単位素子の品質を管理する品質管理部を設け、品質管理部が、各単位素子に対する所定の品質テストを実行し、当該品質テストのテスト結果と、予め与えられた当該品質テストにより得られるべき結果とを比較し、比較結果に基づいて不良のメモリセルと不良の単位素子とを検出するようにした。
【選択図】        図９【図１】
0005894645.tif 000004
【図２】
0005894645.tif 000005
【図３】
0005894645.tif 000006
【図４】
0005894645.tif 000007
【図５】
0005894645.tif 000008
【図６】
0005894645.tif 000009
【図７】
0005894645.tif 000010
【図８】
0005894645.tif 000011
【図９】
0005894645.tif 000012
【図１０】
0005894645.tif 000013
【図１１】
0005894645.tif 000014
【図１２】
0005894645.tif 000015
【図１３】
0005894645.tif 000016
【図１４】
0005894645.tif 000017
【図１５Ａ】
0005894645.tif 000018
【図１５Ｂ】
0005894645.tif 000019
【図１６】
0005894645.tif 000020
【図１７】
0005894645.tif 000021
【図１８】
0005894645.tif 000022
【図１９】
0005894645.tif 000023
【図２０Ａ】
0005894645.tif 000024
【図２０Ｂ】
0005894645.tif 000025
【図２１】
0005894645.tif 000026
【図２２】
0005894645.tif 000027