88
シミュレーション する

単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

単電子回路シミュレーション技術に関する研究

1999年

桐原 正治

Page 2: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

内容梗概

 本論文は,著者が大阪大学大学院工学研究科電子工学専攻在学中に,電子情報エネルギー工学専攻

量子デバイス工学講座量子デバイス工学領域 (谷口研究室)においておこなった,単電子回路シミュ

レーション技術に関する研究の成果をまとめたものであり,本文は 5章で構成されている.

第 1章では,単電子素子の特徴と問題点,そして本研究の主題である単電子回路シミュレーション

の背景について述べ,本研究の目的を明確にする.単電子素子は既存素子とは違う原理で動作するた

め,今までになく高感度なトランジスタなどが作製されてきた.しかし多数の単電子素子を組合せて

情報処理をさせる時,低電圧増幅率および低電流駆動能力の問題が顕著になってくる.この問題解決

法の一つに既存素子との融合が考えられる.そして,本研究の目的として,そのようなハイブリッド

回路の特性予測を行うシミュレータの開発であることを述べている.また,単電子素子特有の性質を

生かした新しい回路の提案も含まれている.

第 2章では,単電子素子と既存素子を組合せたハイブリッド回路のシミュレーション方法について

説明をする.既存素子回路シミュレータで最も使われている SPICEは電荷を流体として取り扱う回

路方程式を基本原理としている.一方単電子回路シミュレータは,マスター方程式法,モンテカルロ

法と二通りあるが,どちらも電荷を粒子として取り扱って計算している.この両方のシミュレータ

を連携させる方法について述べる.マスター方程式法では出力の平均値がそのまま計算結果となる

ので,半古典的理論の範囲では SPICEとの連携に必要な電流やコンダクタンスが解析的に求めるこ

とができる.そのためマスター方程式法はそのまま SPICEに組み込むことができる.一方,モンテ

カルロ法では電荷の離散的性質が計算結果に表れるため,厳密な意味での電流が定義できない.そ

こでトンネル間隔時間の間一定の電流を仮定したモデルを導入して SPICEとの融合を図った.実際

に SPICE内で単電子素子の特性計算を行ったところ,単電子トランジスタなどゲート非同期電流素

子で負荷容量が大きい場合はマスター方程式法,ターンスタイル等のゲート同期電流素子や小さな

負荷容量に接続されたゲート非同期電流素子の場合はモンテカルロ法が適していることがわかった.

また,単電子素子を CMOS インバータや CMOS差動アンプに接続したハイブリッド回路の特性計

算を行った.その過程で単電子素子だけでなく SPICE側にある既存素子のモデリングも重要である

ことがわかった.

第 3章では,非対称型ターンスタイルとそれを用いたカウンター回路,そしてそれを応用した回

路の提案をする.非対称ターンスタイルは通常のターンスタイルと違いダイオードのように電荷の

移動に方向性がある.このため入力が Highレベルの個数を数えるカウンター回路が簡単に構成でき

る.そしてカウンター回路はノイズ除去を行う画像処理回路に応用できた.また XOR回路とイン

バータ,メモリと組合せてWinner-Take-All回路に,非対称型ターンスタイルとメモリ,AND回路

と組合せてニューロン回路に発展させることができた.

第 4章では,単電子インバータを応用したニューロン回路の提案をする.ニューロンは荷重係数積

算部,総和部,非線形関数部の三つの部分にモデル化される.荷重係数の記憶は二つのターンスタイ

Page 3: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

ルで構成され,既存素子による記憶回路より素子数を大幅に削減することができた.積算は単電子イ

ンバータを改良して用いた.総和はキャパシタカップリング,非線形関数は単電子インバータで構成

した.回路全体は電圧で制御するため消費電力が非常に低く抑えられ,また単電子素子という微細素

子を用いるため高集積化が期待できる.

第 5章では,本論文の内容のまとめを述べる.

Page 4: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

i

目 次

第 1章 序論 1

1.1 研究の背景 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 1

1.2 研究の目的 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 2

第 2章 単電子素子と既存回路素子を組合せたハイブリッド回路シミュレータ 7

2.1 はじめに : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 7

2.2 単電子素子のモデル化 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 7

2.2.1 マスター方程式法 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 9

2.2.2 モンテカルロ法 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 10

2.3 マスター方程式法とモンテカルロ法との比較 : : : : : : : : : : : : : : : : : : : : : : 12

2.3.1 ゲート非同期電流素子 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 12

2.3.2 ゲート同期電流素子 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 13

2.4 ハイブリッド回路の特性計算 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 17

2.4.1 CMOSインバータによるカウンター回路 : : : : : : : : : : : : : : : : : : : : 17

2.4.2 CMOS差動アンプによる論理回路 : : : : : : : : : : : : : : : : : : : : : : : : 19

2.5 まとめ : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 20

第 3章 非対称型ターンスタイルおよびその応用回路 23

3.1 はじめに : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 23

3.2 非対称型ターンスタイル : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 23

3.3 カウンター回路 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 25

3.3.1 クロックマージン : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 28

3.3.2 浮遊電荷の影響 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 29

3.3.3 温度と動作速度 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 29

3.4 応用回路 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 30

3.4.1 画像処理回路 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 30

3.4.2 Winner-Take-All回路 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 30

3.4.3 ニューロン回路 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 32

3.5 まとめ : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 33

第 4章 単電子インバータによるニューロン回路 36

4.1 はじめに : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 36

4.2 ニューロンモデル : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 36

4.3 単電子ニューロン回路 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 37

4.3.1 荷重係数のメモリ回路 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 37

4.3.2 積算回路 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 38

4.3.3 和・非線形関数 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 40

Page 5: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

ii

4.3.4 単電子ニューロン回路 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 41

4.4 まとめ : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 42

第 5章 結論 45

付録 A 単電子素子の基礎と特性計算方法 47

A.1 基本理論 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 47

A.2 シミュレーション方法 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 48

A.2.1 マスター方程式法 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 49

A.2.2 モンテカルロ法 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 52

A.2.3 シミュレーション手法の比較 : : : : : : : : : : : : : : : : : : : : : : : : : : 55

付録 B キャパシタ行列 60

付録 C SPICEの過渡解析ルーチンとユーザー定義素子 63

C.1 回路方程式と過渡解析アルゴリズム : : : : : : : : : : : : : : : : : : : : : : : : : : : 63

C.1.1 回路方程式 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 63

C.1.2 後退オイラー法 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 64

C.1.3 台形公式 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 65

C.1.4 電圧依存非線形素子の取り扱い : : : : : : : : : : : : : : : : : : : : : : : : : 65

C.1.5 LU分解 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 66

C.2 Berkeley SPICEの拡張 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 66

C.2.1 ユーザー定義素子の追加 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 67

C.2.2 出力データを間引く方法 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 78

謝辞 81

研究業績 82

Page 6: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

1

第1章

序論

1.1 研究の背景

現代社会で必要とされている膨大な情報処理を担っているコンピュータの多くは CMOS LSI (Com-

plementary Metal-Oxide-Semiconductor Large Scale Integrated circuits)で構成されている.CMOS

論理回路はMOSトランジスタの微細化によりその性能を上げてゆき,21世紀には 0:15�mルールに

より数 GHzの動作周波数をもつようになると予測されている.1) しかしその微細化に限界がないわ

けではない.微細構造になるとこれまで無視してきた量子効果が顕著になる.また動作に関与する電

子数が少なくなり,統計的な揺らぎも無視できなくなる.従来型の素子ではこれらの量子効果は素子

の物理的限界を決める要因と考えられてきた.しかし視点を変え,これらの現象を積極的に利用する

新しい動作原理に基づく素子を考察することにより,これまでにない高性能な電子デバイスが作製さ

れる可能性がある.そのような素子の一つとして,単電子素子が注目されている.

単電子素子はトンネル接合とキャパシタから構成されている.トンネル接合は電子がトンネルでき

る程度の障壁を有するキャパシタであり,それ自身電荷を蓄えることができる.そのため,接合に電

圧を印加すると静電エネルギーが生じる.接合に蓄えられた電子のトンネリングで静電エネルギー

が損失する場合,電子はトンネル接合を通過することができない.これはクーロンブロッケイド現象

とよばれ,単電子素子はこの現象を動作原理の基本にしている.

クーロンブロッケイド現象そのものは約半世紀前に観測されている.2) それ以後もいくつかの実験

および理論提案3{7)がなされてきたが,各論のようにバラバラな取り扱いしかなされず統一的な理論

予測までは至らなかった.しかし,1986年に単電子素子の基本的理論8)が確立し,単電子トランジス

タの提案8{10)および動作実証11)がなされてからは単電子素子は注目されるようになった.その理由

の一つとして,単電子トランジスタが超高感度のエレクトロメータとして使えることが挙げられる.

すでにいくつかの実験12{18)では 10�4e=pHzかそれ以上の電荷分解能が得られており,光検出19)や

節点中の電荷の読み取り20{23)に使われている.また,少数電子の動きを利用しているので明らかに

超低消費電力で動作可能ある.そのため現在の LSIの抱える問題点を解決する可能性を秘めている.

しかし,ゲート容量と接合容量の比で決まる単電子トランジスタの電圧増幅率はMOSFET(MOS

Field E�ect Transistor)に比べると非常に低く,せいぜい一桁のオーダーである.14, 24, 25) このため

単電子素子で論理回路を構成し多段につなげる場合,最終出力段において十分な論理振幅が得られ

ない可能性がある.その上,動作に関与する電子数が少ないことは電流駆動能力が低いことを意味

し,多段につなげた回路での応答速度は非常に遅くなる.

この問題を解決する一つの方法として,外部回路とのインターフェース部分に MOSFETを用い

Page 7: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

2 第 1章 序論

るハイブリッド回路が考えられる.回路の大部分を単電子素子で構成し最終出力段にMOSFETを用

いることで,全体で低消費電力,高集積でありながら出力の電圧利得と駆動能力が大きな回路ができ

る.ハイブリッド回路の基礎的実験26)では良好な結果が得られており,将来このような回路が増え

てくるものと思われる.

単電子素子は既存素子にない独特の性質を示すので,ユニークな素子が提案,実現されている.単

電子ターンスタイル27{29)やポンプ30{32)はその典型的な例で,ゲートクロックに同期して電荷が一個

ずつ素子間を移動する.その結果,ゲートクロック周波数が素子を流れる電流に変換されるので,電

流標準素子として期待されている.ほかにも超低消費電力の論理回路33{36)やメモリ20{22, 37{40),さ

らに電荷一個で 1ビットを表す究極の論理回路41{46)が実験および提案されている.

1.2 研究の目的

単電子素子の実用化を考えると,電流駆動能力の大きな素子とのハイブリッド化は必至である.す

ると現在の LSIの設計・製造と同じく素子性能の予測や製造期間の短縮,コスト削減のためにシミュ

レータの開発が重要となる.本研究の目的の一つは,このような単電子素子とMOSFETをはじめと

する既存素子が混在したハイブリッド回路の特性計算をするシミュレータCAMSET(Circuit Analysis

program including a Model of Single Electron Tunneling)の開発である.

単電子素子の特性計算を行うシミュレータは数多く発表されている.47{51) それらはマスター方程

式法もしくはモンテカルロ法で計算されている.その中で SET-SPICE51)は,現在広く使われている

回路シミュレータ SPICEと連携をとった最初のハイブリッド回路シミュレータである.しかし,扱

える単電子素子が単電子トランジスタだけであり,その上マスター方程式法により計算しているため

電荷の離散的性質が計算結果に表れてこない.本研究では,任意の単電子素子が扱え,マスター方程

式法だけでなくモンテカルロ法でも計算ができるハイブリッド回路シミュレータを開発する.

また,超低消費電力で高集積化が期待できる単電子素子には,トンネル電荷の離散的性質という

デジタル的な性質とキャパシタに蓄えられた連続電荷というアナログ的な性質が混在しているため,

今までにない新しい動作の回路が考えられる.そこで,単電子素子の特徴を生かした回路の提案を行

うことが本研究の第二の目的である.具体的には電荷の離散的性質を利用したカウンター回路,高集

積化を狙った単電子ニューロン回路を提案する.

Page 8: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

3

参考文献

1) 日経エレクトロニクス,pp. 125,1998年 10月 19日号.

2) C. J. Gorter, \A Possible Explanation of the Increase of the Electrical Resistance of Thin

Metal Films at Low Temperature and Small Field Strengths," Physica 17, 777 (1951).

3) C. A. Neugebauer and M. B. Webb, \Electrical Conduction Mechanism in Ultrathin, Evapo-

rated Metal Films," J. Appl. Phys. 33, 74 (1962).

4) I. Giaever and H. R. Zeller, \Superconductivity of Small Tin Particles Measured by Tunneling,"

Phys. Rev. Lett. 20, 1504 (1968).

5) H. R. Zeller and I. Giaever, \Tunneling, Zero-Bias Anomalies, and Small Superconductors,"

Phys. Rev. 181, 789 (1969).

6) J. Lambe and R. C. Jaklevic, \Charge-Quantization Studies Using a Tunnel Capacitor," Phys.

Rev. Lett. 22, 1371 (1969).

7) I. O. Kulik and R. I. Shekhter, \Kinetic Phenomena and Charge Discreteness E�ects in Gran-

ulated Media," Sov. Phys. JETP 41, 308 (1975).

8) D. V. Averin and K. K. Likharev, \Coulomb Blockade of Single-Electron Tunneling, and

Coherent Oscillations in Small Tunnel Junctions," J. Low. Temp. Phys. 62, 345 (1986).

9) K. K. Likharev, \Single-Electron Transistors: Electrostatic Analogs of the DC SQUIDs," IEEE

Trans. Magn. MAG-23, 1142 (1987).

10) K. K. Likharev, \Correlated Discrete Transfer of Single Electrons in Ultrasmall Tunnel Junc-

tions," IBM J. Res. Develop. 32, 144 (1988).

11) T. A. Fulton and G. C. Dolan, \Observation of Single-Electron Charging E�ects in Small

Tunnel Junctions," Phys. Rev. Lett. 59, 109 (1987).

12) L. S. Kuzmin, P. Delsing, T. Claeson and K. K. Likharev, \Single-Electron Charging E�ects in

One-Dimensional Arrays of Ultrasmall Tunnel Junctions," Phys. Rev. Lett. 62, 2539 (1989).

13) L. J. Geerligs, V. F. Anderegg and J. E. Mooij, \Tunneling Time and O�set Charging in Small

Tunnel Junctions," Physica B 165-166, 973 (1990).

14) E. H. Visscher, S. M. Verbrugh, J. Lindeman, P. Hadley and J. E. Mooij, \Fabrication of

Multilayer Single-Electron Tunneling Devices," Appl. Phys. Lett. 66, 305 (1995).

Page 9: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

4 第 1章 序論

15) L. S. Kuzmin, Yu. A. Pashkin, A. N. Tavkhelidze, F.-J. Ahlers, T. Weimann, D. Quenter and

J. Niemeyer, \An all-Chromium Single Electron Transistor: A Possible New Element of Single

Electronics," Appl. Phys. Lett. 68, 2902 (1996).

16) A. B. Zorin, F.-J. Ahlers, J. Niemeyer, T. Weimann, H. Wolf, V. A. Krupenin and

S. V. Lotkhov, \Background Charge Noise in Metallic Single-Electron Tunneling Devices,"

Phys. Rev. B 53, 13682 (1996).

17) V. A. Krupenin, D. E. Presnov, M. N. Savvateev, H. Scherer, A. B. Zorin and J. Niemeyer,

\Noise in Al Single Electron Transistors of Stacked Design," J. Appl. Phys. 84, 3212 (1998).

18) B. Starmark, T. Henning, A. N. Korotkov, T. Claeson and P. Delsing, \Gain Dependence of

the Noise in the Single Electron Transistor," cond-mat/9806354.

19) A. N. Cleland, D. Esteve, C. Urbina and M. H. Devoret, \Very Low Noise Photodetector Based

on the Single Electron Transistor," Appl. Phys. Lett. 61, 2820 (1992).

20) K. Nakazato, R. J. Blaikie, J. R. A. Cleaver and H. Ahmed, \ Single-Electron Memory,"

Electron Lett. 29, 384 (1993).

21) P. D. Dresselhaus, L. Ji, S. Han, J. E. Lukens and K. K. Likharev, \Measurement of Single

Electron Lifetimes in a Multijunction Trap," Phys. Rev. Lett. 72, 3226 (1994).

22) N. J. Stone and H. Ahmed, \Silicon Single Electron Memory Cell," Appl. Phys. Lett. 73, 2134

(1998).

23) Y. Y. Wei, J. Weis, K. v. Klitzing and K. Eberl, \Single-Electron Transistor as an Electrometer

Measuring Chemical Potential Variations," Appl. Phys. Lett. 71, 2514 (1997).

24) G. Zimmerli, R. L. Kautz and J. M. Martinis, \Voltage Gain in the Single-Electron Transistor,"

Appl. Phys. Lett. 61, 2616 (1992).

25) R. A. Smith and H. Ahmed, \A Silicon Coulomb Blockade Device with Voltage Gain," Appl.

Phys. Lett. 71, 3838 (1997).

26) A. Ohata, A. Toriumi and K. Uchida, \Coulomb Blockade E�ects in Edge Quantum Wire SOI

MOSFETs," Jpn. J. Appl. Phys. 36, 1686 (1997).

27) L. J. Geerligs, V. F. Anderegg, P. A. M. Holweg, J. E. Mooij, H. Pothier, D. Esteve, C. Urbina

and M. H. Devoret, \Frequency-Locked Turnstile Device for Single Electrons," Phys. Rev.

Lett. 64, 2691 (1990).

28) V. F. Anderegg, L. J. Geerligs and J. E. Mooij, \Frequency-Determined Current with a Turn-

stile Device for Single Electrons," Physica B 165&166, 61 (1990).

29) L. J. Geerligs, \The Frequency-Locked Turnstile Device for Single Electrons," Surface Science

263, 396 (1992).

Page 10: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

1.2. 研究の目的 5

30) H. Pothier, P. Lafarge, P. F. Or�la, C. Urbina, D. Esteve and M. H. Devoret, \Single Electron

Pump Fabricated with Ultrasmall Normal Tunnel Junctions," Physica B 169, 573 (1991).

31) C. Urbina, H. Pothier, P. Lafarge, P. F. Or�la, D. Esteve, M. H. Devoret, L. J. Geerligs,

V. F. Anderegg, P. A. M. Holweg and J. E. Mooij, \Controlled Transfer of Single Charge

Carriers," IEEE Trans. Magn. MAG-27, 2578 (1991).

32) H. Pothier, P. Lafarge, C. Urbina, D. Esteve and M. H. Devoret, \Single Electron Pump Based

on Charging E�ects," Europhys. Lett. 17, 249 (1992).

33) J. R. Tucker, \Complementary Digital Logic Based on the \Coulomb Blockade"," J. Appl.

Phys. 72 4399 (1992).

34) R. H. Chen, A. N. Korotkov and K. K. Likharev, \Single-Electron Transistor Logic," Appl.

Phys. Lett. 68, 1954 (1996).

35) N. Asahi, M. Akazawa and Y. Amemiya, \Binary-Decision-Diagram Device," IEEE Trans.

Electron Devices ED-42, 1999 (1995).

36) K. Tsukagoshi, B. W. Alphenaar and K. Nakazato, \Operation of Logic Function in a Coulomb

Blockade Device," Appl. Phys. Lett. 73, 2515 (1998).

37) K. Yano, T. Ishii, T. Hashimoto, T. Kobayashi, F. Murai and K. Seki, \Room-Temperature

Single-Electron Memory," IEEE Trans. Electron Devices ED-41, 1628 (1994).

38) S. Tiwari, F. Rana, H. Hana�, A. Hartstein, E. F. Crabb�e and K. Chan, \A Silicon Nanocrys-

tals Based Memory," Appl. Phys. Lett. 68, 1377 (1996).

39) L. Guo, E. Leobandung and S. Y. Chou, \A Room-Temperature Silicon Single-Electron

Metal-Oxide-Semiconductor Memory with Nanoscale Floating-Gate and Ultranarrow Chan-

nel," Appl. Phys. Lett. 70, 850 (1997); \A Silicon Single-Electron Transistor Memory Oper-

ating at Room Temperature," Science 275, 649 (1997).

40) C. D. Chen, Y. Nakamura and J. S. Tsai, \Aluminum Single-Electron Nonvolatile Floating

Gate Memory Cell," Appl. Phys. Lett. 71, 2038 (1997).

41) K. K. Likharev and V. K. Semenov, \Possible Logic Circuits Based on the Correlated Single-

Electron Tunneling in Ultrasmall Junctions," Ext. Abst. of ISEC'87, 182 (1987).

42) K. Nakazato and J. D. White, \Single-Electron Switch for Phase-Locked Single-Electron Logic

Devices," IEDM Tech. Digest, 487 (1992).

43) C. S. Lent, P. D. Tougaw, W. Porod and G. H. Bernstein, \Quantum Cellular Automata,"

Nanotechnology 4, 49 (1993).

44) M. G. Ancona, \Design of Computationally Useful Single-Electron Digital Circuits," J. Appl.

Phys. 79, 526 (1996).

Page 11: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

6 第 1章 序論

45) A. N. Korotkov, \Wireless Single-Electron Logic Biased by Alternating Electric Field," Appl.

Phys. Lett. 67, 2412 (1995).

46) K. K. Likharev and A. N. Korotkov \Single-Electron Parametron: Reversible Computation in

a Discrete State System," Science 273, 763 (1996).

47) N. Kuwamura, K. Taniguchi and C. Hamaguchi, \Simulation of Single-Electron Logic Cir-

cuits," Electron & Commun. Jpn. 77, Pt. 2, 65 (1994);「単一電子論理回路のシミュレーショ

ン」, 電子情報通信学会論文誌 77-C-II, 221 (1994).

48) MOSES: R. H. Chen (1995), http://hana.physics.sunysb.edu/set/software/

49) SENECA: L. R. C. Fonseca, A. N. Korotkov, K. K. Likharev and A. A. Odintsov, \A Numerical

Study of the Dynamics and Statistics of Single Electron Systems," J. Appl. Phys. 78, 3238

(1995).

50) SIMON: C.Wasshuber, H. Kosina and S. Selberherr, \SIMON { a Simulator for Single-Electron

Tunnel Devices and Circuits," IEEE Trans. Computer-Aided Design CAD-16, 937 (1997);

http://home1.gte.net/kittypaw/simon.htm

51) SET-SPICE: S. Amakawa, H. Majima, H. Fukui, M. Fujishima and K. Hoh, \Single-Electron

Circuit Simulation," IEICE Trans. Electron E81-C, 21 (1998).

Page 12: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

7

第2章

単電子素子と既存回路素子を組合せたハイブリッド回路シミュレータ

2.1 はじめに

微細・超低消費電力といった長所を持つ単電子素子には,低電圧増幅率,低駆動能力といった本質

的な短所がある.そのため単電子回路を外部回路に接続することは非常に難しい.この問題を解決す

る方法の一つとして,入出力部にMOSFETを用いたハイブリッド回路が考えられる.1) 本章ではそ

のようなハイブリッド回路の特性を予測する時に必要なシミュレータについて説明する.単電子素子

の特性計算に使用されるマスター方程式法とモンテカルロ法の適用範囲についても述べる.そして

作成したハイブリッド回路シミュレータの適用例として,CMOSインバータおよび CMOS差動アン

プと組合せたハイブリッド回路のシミュレーション結果を示す.

2.2 単電子素子のモデル化

SPICE(Simulation Program with Integrated Circuit Emphasis)2)は集積回路の設計において最も

よく使われている回路シミュレータである.SPICEは回路方程式

YV = I (2.1)

を数値的に解くことで回路の特性計算をしている.3{5) ここでYはアドミッタンス行列,Vは電圧ベ

クトル,Iは電流ベクトルである.抵抗やMOSFETなどの素子モデルのサブルーチンでは,接続先

の節点電位をおよび蓄積電荷量など内部状態のデータをもとに,次式で与えられるアドミッタンス行

列および電流ベクトルの要素を計算し,メインルーチンへの戻り値としている.

(Y)ij =Xd=素子

@Ii;d@Vj

; (2.2)

(I)i =Xd=素子

(Xk

�@Ii;d@Vk

Vk

�� Ii;d

)(2.3)

ここで Ii;dは素子 dから節点 iへ向かう電流,Vj は節点 jの電位である.

単電子トランジスタやポンプ,メモリなどの単電子素子は,トンネル接合とキャパシタから構成さ

れる.キャパシタはすでに SPICEが取り扱える素子として存在するので,トンネル接合を一つの素

子として SPICEに組み込むことでハイブリッド回路シミュレータが作成できるように思われる.し

Page 13: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

8 第 2章 単電子素子と既存回路素子を組合せたハイブリッド回路シミュレータ

(a)

(b)

(c)

図 2.1: 単電子素子から流れる電流.(a)トンネル電子に起因するトンネル電流 Itun.(b)他接合におけるトンネルする電子で生じる蓄積電荷量変化による電流 Icha.(c)外部節点の電位変化で生じる蓄積電荷量変化による電流 Ivol.

かし,トンネル接合における電荷のトンネリングは外部環境に影響されるため,接合に接続されてい

る素子の情報がなければトンネリングの予測ができない.そこで複数のトンネル接合とキャパシタか

ら構成されている電子回路を一つの素子として SPICEに組み込むことにする.この時,その単電子

素子と外部素子とが結合する節点の電位変化は,単電子素子内のトンネル接合の特性に影響しない

ように小さくなければならない.また,単電子トランジスタの中央の節点のように電荷の離散的性質

が動作特性に大きく関わる節点は単電子素子内に含めなければならない.これは,SPICEが管理す

る節点の電位変化は電流の流入・流出量で決まるため,その節点の電位は連続的に変化し,電荷の離

散的性質が消えるからである.以下,SPICE内部に取り込まれる単電子素子はトンネル接合とキャ

パシタから構成され,抵抗や他の素子は含まないものと仮定する.

単電子素子に流れる電流は三つの電流要素から構成される.6)

I = Itun + Icha + Ivol (2.4)

Itunは図 2.1(a)に示すように,注目している節点に接続されたトンネル接合を通るトンネリング電

子による電流である.Ichaは図 2.1(b)に示すように,注目している節点以外に接続されたトンネル

接合を通ったトンネリング電子によって蓄積電荷量が変化することによって生じる電流である.Ivol

は図 2.1(c)に示すように,外部節点 (注目している節点でなくてもよい)の電位変化から蓄積電荷量

が変化することによって生じる電流である.Ivolは通常のキャパシタで構成される回路でもみられ

る.SPICEに組込む単電子素子モデルのサブルーチンは,これらの電流およびその偏微分量を計算

し,その値を SPICEのメインルーチンへ返せばよい.

Page 14: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

2.2. 単電子素子のモデル化 9

2.2.1 マスター方程式法

マスター方程式法では,節点中の電荷の配置状態ベクトルに対する存在確率 (出現確率)を次の行

列形式で表現する.dP

dt= �P (2.5)

ここで Pは状態の確率のベクトルで,次元は状態数である.�は状態の遷移確率,つまりトンネル

頻度を行列で表したものである.状態 iから jへ遷移する時のトンネル頻度を �i;j とすれば,行列の

要素は (�)ij = �j;i,(�)ii = �P

j 6=i �i;j で与えられる.

外部節点 nに流れる電流を Itunn ,Ichan ,Ivoln とする.トンネル電流 Itunn は次式で与えられる.

Itunn = eXi;j;s

�(s)i;j PiÆi;j;s (2.6)

ここで eは単位電荷量,�(s)i;j は節点 nに接続されているトンネル接合 sを通るトンネリングにより

状態 iから jへ遷移する時のトンネル頻度,Piは状態 iの出現確率を表す.この遷移により節点 nに

は eÆi;j;sの電荷量が流れ出る.コ・トンネリングを考えない半古典的理論の範囲では Æi;j;sは �1である.

節点中の電荷配置の変化によって引き起こされる電流 Ichan は次式で与えられる.

Ichan =Xi;l;s

ni;lQl;n;s

dPidt

(2.7)

ni;lは状態 iでの節点 l中の電荷数,Ql;n;sは,単位電荷を節点 lに置いた時に節点 nに接続された

キャパシタやトンネル接合に誘起される電荷量を表す (付録 B参照).式 (2.5)より Ichaは次のよう

に書き換えられる.

Ichan =Xi;j;l;s

ni;lQl;n;s(�)ijPj (2.8)

外部節点の電位変化により引き起こされる電流 Ivolはトンネル接合をキャパシタに置き換えた回

路で発生するものと等価であり,

Ivoln =Xm;s

Cm;n;sdVmdt

(2.9)

で与えられる.ここで Vmは外部節点mの電位,Cm;n;sは外部節点mを単位電位に,他の外部節点

の電位を 0にした時に,節点 nに接続されたトンネル接合もしくはキャパシタに誘起される電荷量

である (付録 B参照).

これらの電流の偏微分量は次のように求まる.

@Itunn

@Vm= e

Xi;j;s

@�(s)i;j

@VmPiÆi;j;s (2.10)

@Ichan

@Vm=Xi;j;l;s

ni;lQl;n;s

@(�)ij@Vm

Pj (2.11)

@Ivoln

@Vm=Xm;s

Cm;n;sd

dt(2.12)

Page 15: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

10 第 2章 単電子素子と既存回路素子を組合せたハイブリッド回路シミュレータ

式 (2.10),(2.11)は半古典的理論では解析的に求めることができる.半古典的理論において,電荷が

トンネル接合 sを通って節点 nからもう一方の節点へトンネルする頻度は次式で与えられる.

�(n;s) =1

e2RTs

�En;s1� exp(��En;s=kBT ) (2.13)

ここで RTsはトンネル抵抗である.トンネル前後の自由エネルギーの差�En;sは接合に蓄えられた

電荷量 qn;s,およびその接合の臨界電荷量7{9)qcs (付録 A参照)を用いて

�En;s =e(qn;s � qcs)

CTs(2.14)

で与えられる.ここで CTsは接合の容量である.蓄積電荷量 qn;sは式 (2.7),(2.9)で使われるQl;n;s

と Cm;n;sを用いることで次式で与えられる.

qn;s =Xi;l

ni;lQl;n;s +Xm

Cm;n;sVm (2.15)

これらよりトンネル頻度の偏微分量が計算できる.

@�(n;s)

@Vm=

Cm;n;seCTsRTs

1� (1 +�En;s=kBT ) exp(��En;s=kBT )[1� exp(��En;s=kBT )]2

(2.16)

これを用いて @Itunn =@tと @Ichan =@tを算出することができる.

@Ivoln =@tは SPICEにおけるキャパシタのモデルと同様に取扱える.本ハイブリッド回路シミュレー

タでは,次式の後退オイラー法を用いた.

@Ivoln

@Vm=

Pm;s Cm;n;s

�t(2.17)

SPICEでは過渡解析の前に DC解析を行い動作点を求める.Icha や Ivol は定常状態では時間平

均をとると 0となるので,DC 解析においてアドミッタンス行列や電流ベクトルには Itun および

@Itun=@V に関する量のみ戻している.また,Itun,@Itun=@V は定常状態マスター方程式10, 11)によ

り計算する.

2.2.2 モンテカルロ法

単電子素子では電荷がトンネル接合をトンネルするのに無限小の時間がかかると仮定している.そ

のためモンテカルロ法での計算では電流値はデルタ関数のように表現される (図 2.2(a)).このままで

は電流およびその偏微分量を数値的に取り扱えず,SPICEに単電子素子モデルを組み込めない.そ

こで図 2.2(b)に示すように,トンネル間隔時間�tnの間一定の電流が流れ,その積分値が電荷一個

分になるようにモデル化を行う.

実際に SPICEと融合する場合,SPICEのメインルーチンでは計算を行う時間刻み (Time Step)を

決めるので,時間刻みをトンネル時間に合わせる操作が必要となる.また,モンテカルロ法による単

電子素子の計算において,電荷のトンネリングより前に電圧源の電位の変化がある場合は電圧源側

を優先してトンネリング事象は破棄する12)操作をする.これらを実現するため SPICE内部では以下

のようにプログラムを組む.SPICEでは,電圧源の急激な変化点 (図 2.3)でブレークポイントが設

定される13, 14)が,各素子のルーチンが呼ばれる時には既にそのブレークポイントを考慮した時間刻

みが計算されており,その時点では時間刻みを操作することはできない.そこで単電子素子のルー

Page 16: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

2.2. 単電子素子のモデル化 11

(a)

(b)

図 2.2: (a)モンテカルロ法での本来の電流.(b)モデル化された電流.

図 2.3: 電圧源でブレークポイントが設定される点.

チンではトンネル間隔時間を計算し,そのトンネル間隔時間を考慮したブレークポイントを電圧源

と同じように設定する.その後 SPICEメインルーチンで時間刻みが設定され,各素子のルーチンを

呼ぶ.単電子素子ルーチンでは,前回の計算の時刻との差より自分の設定したブレークポイントが

採用されたかどうかを調べ,もし採用されていると電荷のトンネリングを起こし,採用されていな

ければなにも行わない.この方法では次の場合問題が起こる.図 2.3のように変化する電圧源と点A

で安定な単電子素子から構成される回路で,AB間のように電圧源のブレークポイント間で電位が緩

やかに変化している途中でその単電子素子が動作するような場合,適切な時間刻みの最大値を設定

していなければ点 Aの次の時刻は点 Bになり単電子素子の正確な動作追従が不可能となる.この場

合,時間刻みの最大値を小さく設定すればよいが計算時間が長くなるので,AB間に適切なブレーク

ポイントを設定する.また,トンネル間隔時間は乱数によって非常に小さな値になる可能性がある.

その場合,SPICEの時間刻みも小さくなり,SPICE内部の非収束や数値計算における丸め誤差の問

題が起こりうる.そのためプログラムではトンネル間隔時間に最小値を設けている.

このようにモンテカルロ法では素子側からブレークポイントを設定する必要がある.SILVACO社

Page 17: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

12 第 2章 単電子素子と既存回路素子を組合せたハイブリッド回路シミュレータ

表 2.1: 電流のゲート操作性による単電子素子の分類.

ゲート同期電流素子 単電子ポンプ16{18) (ヒステリシスなし)

単電子ターンスタイル7{9) (ヒステリシスあり)

ゲート非同期電流素子 単電子トランジスタ19, 20) (ヒステリシスなし)

フラッシュメモリ型単電子メモリ21, 22) (ヒステリシスあり)

の SmartSpiceではユーザーが任意の素子をモデル化できるようにユーザー定義素子が用意されてい

る.15) しかし,そのユーザー定義素子はアドミッタンス行列や電流ベクトルの要素が戻り値として

渡せるだけでブレークポイントの設定ができない.そのためプログラムソースコードが自由に入手

できる Berkeley SPICEにユーザー定義素子を作成し (付録 C参照),その中でモンテカルロ法の単

電子素子をモデル化している.マスター方程式法による単電子素子は SmartSpice,Berkeley SPICE

両方において使える.

2.3 マスター方程式法とモンテカルロ法との比較

ゲートで特性を操作する単電子素子は,表 2.1のようにゲート同期電流素子とゲート非同期電流素

子に分類される.ゲート同期電流素子は,ゲートの動きに合わせて電荷が一個もしくは複数個ずつ移

動する素子であり,ゲートに電圧変化があって初めて電流が流れる.このような素子には,単電子ポ

ンプ16{18)や単電子ターンスタイル7{9)がある.一方,ゲート非同期電流素子はゲート電圧がある値

に固定されていても電流が流れる素子であり,単電子トランジスタ19, 20)やフラッシュメモリ型単電

子メモリ21, 22)などがある.

2.3.1 ゲート非同期電流素子

ゲート非同期電流素子におけるマスター方程式法とモンテカルロ法の計算結果を比較するために,

図 2.4で示す単電子インバータ23)の特性計算を行った.図の点線で囲まれた pおよび n型の単電子

トランジスタがそれぞれ SPICEに組み込まれたユーザー定義単電子素子で,負荷容量 CLは SPICE

で既にモデル化されているキャパシタである.図 2.5に入出力特性を示す.負荷容量の大きさを 10

個の電荷で 1ビットを表すような小さな値にしているので,個々の電荷の蓄積に相当する 10個の階

段状の変化が出力に現れる.図 2.5(b)に示すようにモンテカルロ法ではその様子が計算結果に表れ

ているが,図 2.5(a)で示すようにマスター方程式法では消えている.これは,マスター方程式法で

はトランジスタ内から,もしくはトランジスタ内へのトンネリングする電荷量が状態確率 Pを使っ

て平均化され,電荷の離散的性質がなくなるためである.これらの結果から,負荷容量が小さい場合

はモンテカルロ法が適していると言える.

一方,負荷容量の値が大きい場合は,負荷容量に一個の電荷が蓄積した時の電位の変化 e=CLが非

常に小さくなり階段状の変化がなめらかになる.そのため,入出力特性はマスター方程式の計算結

果 (図 2.5(a))とほぼ同じようになる.そして,モンテカルロ法で計算を行う場合,その巨大な負荷

容量に蓄えられる,もしくは負荷容量から排出される電荷すべてのトンネリング事象を追わなけれ

ばならず,計算時間が長くなる.つまり,負荷容量が大きい場合はシミュレーション時間の面でマス

Page 18: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

2.3. マスター方程式法とモンテカルロ法との比較 13

図 2.4: 単電子インバータ回路23).点線で囲まれた二つの単電子トランジスタが SPICEにおいてそれぞれ一つのモデル化された単電子素子として取り扱われる.

0 1

0

1

VIN/VDD

VO

UT/V

DD

CL=10e/VDD

T=0.1K

(a)

0 1

0

1

VIN/VDD

VO

UT/V

DD

CL=10e/VDD

T=0.1K

(b)

図 2.5: ハイブリッド回路シミュレータで計算した単電子インバータ23)の入出力特性.(a) マスター方程式法.(b) モンテカルロ法.図 2.4 中の容量等のパラメータは以下の値を用いた.VDD = 10mV,C0 = e=24VDD = 0:668aF,C1 = 2C0,C2 = C0,C3 = 8C0,C4 = 7C0(マスター方程式法)6:9C0(モンテカルロ法),CL = 10e=VDD.温度 0.1K.モンテカルロ法においてC4 は過渡変化における安定性確保のため小さなヒステリシスを描くような値を用いている.

ター方程式法が適している.さらに,素子内部にヒステリシスがなく,微小時間における過渡特性の

計算が不要の場合は,通常のマスター方程式より簡単に解ける定常状態マスター方程式法10, 11)が使

える.天川らは定常状態マスター方程式法で単電子トランジスタをモデル化し,その単電子トランジ

スタで構成される比較的大きな回路を高速に特性計算を行う SET-SPICEを開発している.

2.3.2 ゲート同期電流素子

図 2.6で示す非対称型ターンスタイルでゲート同期電流素子の特性計算をして,マスター方程式法

とモンテカルロ法の比較を行う.(非対称型ターンスタイルの詳細は第 3章で記述する.) 非対称型

ターンスタイルは一方向にのみ電荷が移動するターンスタイルである.図の回路でゲートクロックを

入力するごとに電荷が負荷容量に蓄えられる.この様子の計算結果を図 2.7に示す.計算に用いたパ

Page 19: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

14 第 2章 単電子素子と既存回路素子を組合せたハイブリッド回路シミュレータ

図 2.6: 非対称ターンスタイルと負荷容量.

0 10

20

40

60

Time (µs)

VC

L (m

V)

SET stand–alonesimulator

∆t = 10–11

10–12 (sec)∆t = 10–10 (sec)

∆t = 10–9 (sec)

∆t = 10–8 (sec)

(a)

0 10

20

40

60

Time (µs)

VO

UT (

mV

)

SET stand–alonesimulator

∆t = 10–7 (sec)

∆t = 10–8

10–9 (sec)

(b)

図 2.7: ハイブリッド回路シミュレータで計算した非対称ターンスタイルの入出力特性.(a)マスター方程式法.(b)モンテカルロ法.VDD = 0:1V.温度 0.1K.容量等は式 (3.7),(3.8)の値を使用.

ラメータは VDD = 0:1V,温度 0.1K,ゲート周波数 1MHz,および式 (3.7)に示したキャパシタンス

を用いている.図 2.6の回路はトンネル接合とキャパシタ,電圧源から構成されるので単電子回路シ

ミュレータ単独で特性計算ができ,その結果を図 2.7に白丸で示している.ゲート一周期 (1�s)の間

に二回縦方向に VCLが変化している.最初の変化は電子の VCLの節点からターンスタイルの中央の

節点へのトンネリングによるものであり,後の変化は電子がターンスタイルの中央の節点から電源電

圧 VDD へトンネリングすることによるものである.それぞれ時間刻み �tを変化させて計算させて

いるが,この時間刻みは SPICEメインルーチンで収束状況や回路の安定度により変化し,実際の時

間刻みはこの 0:1 � 40倍程度の範囲で変化している.

図 2.7(a)に示すマスター方程式法の場合,時間刻み �tが 10�11 秒以下の非常に小さな値で計算

しなければ正しい計算結果が得られないことがわかる.一方,図 2.7((b)のモンテカルロ法では �t

は 10�8 秒といった比較的大きな時間刻みで正しい結果が得られている.時間刻みを小さくすれば

計算量が多くなり計算時間が長くなる.図 2.7の計算をするのにかかった時間を表 2.2に示す.マス

ター方程式法に比べモンテカルロ法は 3桁大きな時間刻みで正しい計算ができるため,計算時間も

約 3桁短縮されている.24) これは,モンテカルロ法では確実に電荷一個を電流として流すモデル化

により時間刻みに関係なく電荷のトンネリングを追っていくことができるためである.一方,マス

ター方程式では算出される電流がその時刻での平均値であるため,電流が流れる時間の間を細かく

Page 20: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

2.3. マスター方程式法とモンテカルロ法との比較 15

表 2.2: 計算時間.Pentium R II 300MHz,FreeBSD2.2.7,gcc2.7.2にて計算.

マスター方程式法 モンテカルロ法

�t (秒) 10�12 10�11 10�9 10�8

計算時間 (秒) 10025 982 3.0 0.4

300 310 320

0

2

4

6

∆t=10–12

10–13

∆t=10–11

∆t=10–10

(sec)

Time (ns)

Cur

rent

(pA

)

(a)

710 720 730

0

2

4

6

∆t=10–12

10–13

∆t=10–11

∆t=10–10

(sec)

Time (ns)

Cur

rent

(pA

)

(b)

図 2.8: マスター方程式法における電荷移動に伴う電流.(a)ゲート電圧が上がってターンスタイル中央節点から負荷容量側へ電荷が移動した時.(b)ゲート電圧が下がって電源から中央節点へ電荷が移動した時.

追う必要がある.図 2.7(a)の時間刻み �t = 10�8秒では,ターンスタイルから流れる電流の時間が

それ以下のため,電荷の移動が検知できず Ivolから生じる電位変化のみが表れている.時間刻みが

10�10秒以下の時の電荷移動に伴う電流を図 2.8に示す.�t = 10�10秒の時は電流計算が荒く,そ

の積分値が電荷一個のトンネリングに相当しないことがわかる.この計算では電流が流れている時

間は 1:5� 10�8秒程度であるが,この値は温度や計算対象の回路によって変わるので,計算に必要

な時間刻みの大きさの決定は一概には言えない.図 2.8(a),(b)それぞれの電流の積分値はおおよそ

電荷 0.5個分 (� 0:8� 10�19C)であるが,図 2.8(a)の変化が Itun+ Ichaによるもの,図 2.8(b)の変

化が Ichaによるもので,その両方の変化を合わせることで電荷一個分の電流の流れになる.またそ

れら電荷のトンネリングによる電流が発生する前に図 2.8(a)で約 0:1pA,図 2.8(b)で約 �0:1pAの電流が流れている.これはゲート電圧の変化によって生じる Ivolの影響である.

さらに図 2.7(a)において,VCLが 60mV以上であるところでは小さな時間刻みであっても計算結

果は一致していない.その様子を拡大したものを図 2.9に示す. これは,クーロンブロッケイド領

域の計算から導かれる VCLの上限がここで用いた容量のパラメータで 0:6VDDとなることに起因す

る.(第 3章で詳しく述べる.) この電位の変化は,ターンスタイルの中央節点から電源側へ電荷が

トンネルすることによって発生する.この時のターンスタイルのバイアス状況は図 2.10で示される

双安定クーロンブロッケイド領域図で H3付近である.VCLが 0:6VDDになる前の通常のトンネリン

グ (図 2.9M1 �M2 間)では VCLの変化に対して図 2.10の N1 � N2のように変化する.ところが,

Page 21: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

16 第 2章 単電子素子と既存回路素子を組合せたハイブリッド回路シミュレータ

5 6 7 8

50

60

70

Time (µs)

VO

UT (

mV

)

SET stand–aloneME ∆t = 10–11

MC ∆t = 10–8

M1

M2

M3

M4

M5

図 2.9: 非対称ターンスタイルの「飽和領域」での特性.

図 2.10: 非対称ターンスタイルの双安定クーロンブロッケイド領域 (図 3.5)の点 H3 付近の拡大.

図 2.9M3 �M4間のように VCLが 0:6VDD 付近になると,図 2.10の N3から電荷のトンネリングが

始まるが,電荷一個分のトンネリングが完了するN5に到達する前に N4でターンスタイルがエネル

ギー的に安定状態に入り,電荷一個がトンネルする前にトンネル事象が終了してしまう.この結果,

VCLが 0:6VDD 以上になる前にトンネリングが終わり,計算結果の違いが出てくる.

以上より,ハイブリッド回路シミュレーションで単電子素子の最適な計算方法は表 2.3のようにま

とめられる.単電子トランジスタなどのゲート非同期電流素子は,負荷容量が小さく電荷の離散的性

質が重要となるような回路ではその離散的性質が表現できなるモンテカルロ法が適している.一方,

負荷容量が大きい場合はその離散的性質が重要でなくなり,また計算時間の観点からもマスター方程

式法が適している.ターンスタイルなどゲート同期電流素子では,個々の電荷の動きが重要となるの

でモンテカルロ法がよい.ゲート同期電流素子をマスター方程式法で計算すると,時間刻みを細かく

表 2.3: 単電子素子の最適計算方法.

ゲート非同期電流素子 負荷容量:小 モンテカルロ法

負荷容量:大 マスター方程式法

ゲート同期電流素子 モンテカルロ法

Page 22: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

2.4. ハイブリッド回路の特性計算 17

図 2.11: CMOSインバータを用いたカウンター回路.VDD = 1:5V,VSS = �1:5V,VIN = 0:1V,VG = 0 � 0:5V.Ca = 0:801aF,Cb = 1:335aF,Cg = 0:267aF,CL = 1fF.

しなければならないため長い計算時間が必要となり,また場合によっては電荷一個分のトンネリング

が中断されてしまうので適していない.

2.4 ハイブリッド回路の特性計算

ハイブリッド回路の計算を例として,CMOSインバータを用いたカウンター回路と CMOS差動ア

ンプを用いた論理回路の二つを取り上げる.

2.4.1 CMOSインバータによるカウンター回路

図 2.11に CMOSインバータと非対称型ターンスタイルを用いたカウンター回路を示す.(カウン

ター回路の詳細は第 3章で述べる.) カウンター回路は,非対称型ターンスタイルで負荷容量に蓄え

られた電荷によって生じる電圧をインバータで増幅する.最終段のインバータの出力の変化からター

ンスタイルに印加したゲートクロックが所望の回数を超えたことを知らせる回路である.この回路で

はインバータ (出力バッファ)の増幅率は大きいほど性能が上がるので,単電子インバータを用いる

より増幅率の大きい CMOSインバータの方が適している.

図 2.12はカウンター回路の特性をマスター方程式法で計算したものである.図で上から順にゲー

トクロック,非対称型ターンスタイルの出力 (インバータ 1の入力),インバータ 2の出力を示してい

る.それぞれ SILVACO社 SmartSpiceとの組合せ (図 2.12(a)) および Berkeley SPICEとの組合せ

(図 2.12(b))による結果である.SmartSpiceによる結果は非対称型ターンスタイルの動作が図 2.7に

示したものとほぼ同じであり,SPICEと単電子部の計算の融合が成功していると言える.図 2.12(a)

より,インバータ 1のゲート容量が小さく (約 55aF) 負荷容量が大きい (1fF)ため,インバータの

出力電位が変化してもターンスタイルの出力電位 VOT には影響がないことがわかる.また,この回

路では 39個目のゲートクロックが入った時に出力が反転することがわかる.一方 Berkeley SPICE

による結果は,解析が始まる時点ですでにターンスタイルの出力電位 VOT が 0:6VDDを超えており,

まったく正常動作していない.これは MOSFETのモデリングの違いに起因している.同じレベル

1の MOSFETモデルを用いているが,SmartSpiceの MOSFETモデルは改良されていると考えら

れる.Berkeley SPICEのMOSFETモデルは 0.1Kの極低温では 0除算エラーが発生するため,図

2.12(b)の計算における温度は単電子素子側は 0.1K,MOSFET等 SPICE側で管理する素子は 30K

としている.このことは,ハイブリッド回路シミュレーションを行う上で,既存素子のモデルの最適

Page 23: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

18 第 2章 単電子素子と既存回路素子を組合せたハイブリッド回路シミュレータ

36 38 40

00.5

34

34.5

–1

0

1

Time (µs)

(V)

(mV)

(V)

VG

VOT

VO2

(a)

0 20 40

00.5

80

100

–1

0

1

Time (µs)

(V)

(mV)

(V)

VG

VOT

VO2

(b)

図 2.12: マスター方程式法で計算したCMOSインバータと組合せたカウンター回路の入出力特性.レベル 1の MOSFETともモデルを使った.酸化膜厚 tox = 10nm,しきい値は VpT0 = �0:7V,VnT0 = 0:75V である.インバータ 1 は L = 0:1�m,Wp = 0:3�m, Wn = 0:1�m,インバータ 2は L = 0:1�m,Wp = 6�m,Wn = 2�m.計算に用いた時間刻みは �t = 10�12秒.(a)SILVACO社 SmartSpiceと組合せたハイブリッド回路シミュレータによる計算.温度 0.1K.�t = 10�13秒.(b)Berkeley SPICEと組合せたハイブリッド回路シミュレータによる計算.温度は単電子素子は 0.1K,MOSFETは 30K.

30 32 34

00.5

36.5

37

–1

0

1

Time (µs)

(V)

(mV)

(V)

VG

VOT

VO2

(a)

0 20 40

00.5

80

100

–1

0

1

Time (µs)

(V)

(mV)

(V)

VG

VOT

VO2

(b)

図 2.13: Berkeley SPICE での CMOS インバータと組合せたカウンター回路の入出力特性.MOSFETのしきい値は VpT0 = �0:65V,VnT0 = 0:65V.それ以外のパラメータは図 2.12と同じ.(a)モンテカルロ法による計算結果.時間刻みは �t = 10�9秒.実線と点線はそれぞれ違う乱数列による結果である.(b)マスター方程式法による計算結果.時間刻みは �t = 10�12秒.

化が必要なことを意味している.

図 2.13(a)にモンテカルロ法で計算したカウンター回路の特性を示す.また,比較のため同じパラ

メータを使ってマスター方程式法で計算した結果を図 2.13(b)に示す.図 2.12の時とはしきい値を

変えて計算を行っている.これは図 2.12(b)でわかるように計算開始時点ですでに出力が反転するこ

とを回避するためである.モンテカルロ法でのターンスタイルの出力は図 2.7とよく似ている.し

かし矢印における電位変化が十分表れていない.単電子インバータ回路および非対称型ターンスタ

Page 24: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

2.4. ハイブリッド回路の特性計算 19

図 2.14: 差動アンプを用いたハイブリッド AND 回路.単電子部はカスケード電圧スイッチ論理による AND 回路である.単電子トランジスタの容量値は CS = 0:67aF,CD = 1:33aF,CG = 5:34aF,CB = 4:67aF.VSET = 10mV,VDD = 2V,VSS = �2V,VBIAS = 2V.トンネル抵抗は p型単電子トランジスタは 2M,n型単電子トランジスタは 1Mである.

イルと負荷容量からなる回路の計算では正しく計算できたことを考慮すると,この原因もMOSFET

のモデルに問題があると考えられる.将来,単電子素子と組合せたハイブリッド回路用のMOSFET

モデルが必要になるであろう.

図 2.13(a)の実線と点線は違う乱数列による計算結果である.ターンスタイルの準静的な動作では

電荷のトンネリングが確実に行われるのでほぼ同じ結果にならなければならない.異なる結果が得

られた原因は,(1)トンネリングによる電流変化が不十分,および (2)計算開始時点 (DC解析後)の

初期値の違うことから生じている.ここでも単電子素子以外の素子のモデリングがハイブリッド回路

シミュレーションにとって重要であることがわかる.

2.4.2 CMOS差動アンプによる論理回路

図 2.11に示すカウンター回路では MOSFETのしきい値のばらつきが回路の特性に影響する.そ

のため,ハイブリッド回路を実現する時は図 2.14に示す差動アンプを用いた回路になると考えられ

る.差動アンプでは入力のMOSFET(隣接する素子)間のしきい値の差はほとんどなくしきい値の変

化の影響が抑えられる.また反転信号との組で与えられる差動入力は雑音にも強い.図 2.14の単電

子部は正論理と負論理の両方を出力とするカスケード電圧スイッチ論理25)をベースに,単電子トラ

ンジスタで組み上げた AND回路である.カスケード電圧スイッチ論理の入力は正論理 (VA,VB)と

負論理 (VA,VB)の二組からなる.この AND回路の特性のシミュレーション結果を図 2.15に示す.

入力 VA,VB に対して差動アンプの出力 VOUT が正しく AND論理の出力を行っている.また,単

電子部での信号の振幅は 10mVであるが,それが差動アンプ一段で 3Vまで振幅が増幅されている.

この程度の電位差があれば十分外部回路を駆動することができる.

Page 25: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

20 第 2章 単電子素子と既存回路素子を組合せたハイブリッド回路シミュレータ

0 500

10m

0

10m

0

10m

0

2

–1

(V)

Time (ns)

VA

VB

VAND

VOUT

VAND

図 2.15: ハイブリッド AND回路の特性の計算結果.単電子素子はマスター方程式法で計算.温度は単電子部を 0.1K,CMOSアンプ部を 77Kとしている.MOSFETはレベル 3を用い,tox = 10nm,Vto = �0:75Vである.入力節点につながれたトランジスタは L = 0:1�m,W = 0:1�m,それ以外のトランジスタは L = 1�m,W = 5�mである.

2.5 まとめ

本章では,マスター方程式法とモンテカルロ法を用いたハイブリッド回路シミュレータについて述

べた.はじめに,広く使われている既存回路シミュレータ SPICEで用いている基礎理論について説

明し,単電子素子の SPICEへの組み込みに必要な物理量について述べた.次にマスター方程式法で

用いる素子に流れる電流および印加電圧に対する電流の偏微分量の導出を行った.そしてモンテカル

ロ法に対しては,トンネル間隔時間の間一定の電流が流れるモデルを提案した.このようにしてモデ

ル化した単電子素子についてマスター方程式法とモンテカルロ法のそれぞれが適している素子につ

いて調べた.その結果,ゲート同期電流素子および負荷容量の小さい回路でのゲート非同期電流素子

はモンテカルロ法が,負荷容量の大きい回路でのゲート非同期電流素子はマスター方程式法が適し

ていることがわかった.さらに,CMOSインバータと組合せたカウンター回路や CMOS差動アンプ

と組合せた AND回路などのハイブリッド回路の動作特性を計算した.そしてそれらが所望の通り動

作することが示された.

Page 26: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

21

参考文献

1) A. Ohata, A. Toriumi and K. Uchida, \Coulomb Blockade E�ects in Edge Quantum Wire SOI

MOSFETs," Jpn. J. Appl. Phys. 36, 1686 (1997).

2) http://infopad.eecs.berkeley.edu/~icdesign/SPICE/

3) L. T. Pillage, R. A. Rohrer and C. Visweswariah, Electronic Circuit and System Simulation

Methods, McGraw-Hill, 1994.

4) R. Kielkowski, Inside SPICE, McGraw-Hill, 1994.

5) K. S. Kundert, The Designer's Guide to SPICE & SPECTRE R , Kluwer Academic, 1995.

6) L. R. C. Fonseca, A. N. Korotkov and K. K. Likharev, \A Numerical Study of the Accuracy

of Single-Electron Current Standards," J. Appl. Phys. 79, 9155 (1996).

7) L. J. Geerligs, V. F. Anderegg, P. A. M. Holweg, J. E. Mooij, H. Pothier, D. Esteve, C. Urbina

and M. H. Devoret, \Frequency-Locked Turnstile Device for Single Electrons," Phys. Rev.

Lett. 64, 2691 (1990).

8) V. F. Anderegg, L. J. Geerligs and J. E. Mooij, \Frequency-Determined Current with a Turn-

stile Device for Single Electrons," Physica B 165&166, 61 (1990).

9) L. J. Geerligs, \The Frequency-Locked Turnstile Device for Single Electrons," Surface Science

263, 396 (1992).

10) S. Amakawa, H. Majima, H. Fukui, M. Fujishima and K. Hoh, \Single-Electron Circuit Sim-

ulation," IEICE Trans. Electron E81-C, 21 (1998).

11) M. Fujishima, S. Amakawa and K. Hoh, \Circuit Simulators Aiming at Single-Electron Inte-

gration," Jpn. J. Appl. Phys. 37, 1478 (1998).

12) N. Kuwamura, K. Taniguchi and C. Hamaguchi, \Simulation of Single-Electron Logic Cir-

cuits," Electron & Commun. Jpn. 77, Pt. 2, 65 (1994);「単一電子論理回路のシミュレーショ

ン」, 電子情報通信学会論文誌 77-C-II, 221 (1994).

13) SPICE 3f4 program sources (ftp://ic.eecs.berkeley.edu/pub/Spice3/sp3f4.kit.tar.Z).

14) in Ref. 4, pp. 133.

15) SmartSpice User's Manual, Volume 2, Chapter 6, SILVACO International (1997).

Page 27: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

22 第 2章 単電子素子と既存回路素子を組合せたハイブリッド回路シミュレータ

16) H. Pothier, P. Lafarge, P. F. Or�la, C. Urbina, D. Esteve and M. H. Devoret, \Single Electron

Pump Fabricated with Ultrasmall Normal Tunnel Junctions," Physica B 169, 573 (1991).

17) C. Urbina, H. Pothier, P. Lafarge, P. F. Or�la, D. Esteve, M. H. Devoret, L. J. Geerligs,

V. F. Anderegg, P. A. M. Holweg and J. E. Mooij, \Controlled Transfer of Single Charge

Carriers," IEEE Trans. Magn. MAG-27, 2578 (1991).

18) H. Pothier, P. Lafarge, C. Urbina, D. Esteve and M. H. Devoret, \Single Electron Pump Based

on Charging E�ects," Europhys. Lett. 17, 249 (1992).

19) K. K. Likharev, \Single-Electron Transistors: Electrostatic Analogs of the DC SQUIDs," IEEE

Trans. Magn. MAG-23, 1142 (1987).

20) K. K. Likharev, \Correlated Discrete Transfer of Single Electrons in Ultrasmall Tunnel Junc-

tions," IBM J. Res. Develop. 32, 144 (1988).

21) K. Yano, T. Ishii, T. Hashimoto, T. Kobayashi, F. Murai and K. Seki, \Room-Temperature

Single-Electron Memory," IEEE Trans. Electron Devices ED-41, 1628 (1994).

22) A. Fujiwara, Y. Takahashi, K. Murase and M. Tabe, \Time-Resolved Measurement of Single-

Electron Tunneling in a Si Single-Electron Transistor with Satellite Si Islands," Appl. Phys.

Lett. 67, 2957 (1995).

23) J. R. Tucker, \Complementary Digital Logic Based on the \Coulomb Blockade"," J. Appl.

Phys. 72, 4399 (1992).

24) Pentium R アーキテクチャー上での gcc(GNU C コンパイラ)はメモリの取り方により 2倍程度

の計算時間の差が出るので,表 2.2に示すのは目安である.EGCSを使えばこの問題は回避され

る.(天川修平,私信による.)

25) John P. Uyemura, Circuit design for CMOS VLSI, pp. 193, Kluwer Academic, 1992.

Page 28: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

23

第3章

非対称型ターンスタイルおよびその応用回路

3.1 はじめに

CMOS回路を単純に単電子トランジスタに置きかえる方法を使えば,現行の CMOS回路設計の資

産を生かして単電子回路の設計ができる.しかし単電子素子が本質的にもつ動作速度のばらつきの

ため,確実な動作を保証する場合はMOSFETより回路動作速度を遅くしなければならない.そのた

め単電子素子の特徴を生かした新しい回路の提案が重要である.ここでは個々の電荷の動きが操れる

ターンスタイルを改良した非対称型ターンスタイルについて説明し,それを用いたカウンター回路,

カウンター回路を応用した画像処理回路,Winner-Take-All回路,ニューロン回路について述べる.

3.2 非対称型ターンスタイル

単電子ターンスタイル1{6)は図 3.1に示すように左右にトンネル接合列,その間にゲートキャパシ

タのある構造をしている.

いま,図にあるように左のトンネル接合列の各容量を Caでそれぞれ等しく,右の接合列の各容量

を Cbでそれぞれ等しいとする.そして,ゲートキャパシタの容量を Cg,中央の節点中の電荷を ne,

トンネル接合列に印加される電圧を V,ゲート電圧を Vg とする.また,温度 0Kで浮遊電荷がない

と仮定する.n = 0で左の接合列を構成するトンネル接合のクーロンブロッケイド領域は接合容量が

図 3.1: 単電子ターンスタイル.通常のターンスタイル1)ではトンネル接合の容量がすべて同じである.

Page 29: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

24 第 3章 非対称型ターンスタイルおよびその応用回路

(a) (b)

図 3.2: ターンスタイルのクーロンブロッケイド図.グレー領域は n = 0および n = �1の両方でクーロンブロッケイド状態である双安定領域である.実線の矢印は電荷がターンスタイルを通り抜ける場合のゲート電圧の軌跡,点線の矢印はトンネル接合列に逆バイアスを加えた場合の軌跡を示す.(a)通常のターンスタイル (Ca = Cb).(b)非対称ターンスタイル (Ca > Cb).

等しいためどれも同じになり,次式で与えられる.

�2Ca + Cb + 2Cg4Ca

<(Cb + Cg)V

2e� CgV

e<

2Ca + Cb + 2Cg4Ca

(n = 0,左側) (3.1)

同様に n = 0で右の接合列の各トンネル接合のクーロンブロッケイド領域は

�Ca + 2Cb + 2Cg4Cb

< � (Ca + Cg)V

2e� CgV

e<

Ca + 2Cb + 2Cg4Cb

(n = 0,右側) (3.2)

で与えられる.n = �1の場合はそれぞれ

�6Ca + Cb + 2Cg4Ca

<(Cb + Cg)V

2e� CgV

e<

�2Ca + Cb + 2Cg4Ca

(n = �1,左側)

(3.3)

�Ca + 6Cb + 2Cg4Cb

< � (Ca + Cg)V

2e� CgV

e<

Ca � 2Cb + 2Cg4Cb

(n = �1,右側)

(3.4)

となる.これらの式をもとにして,通常のターンスタイルの場合 (Ca = Cb) および非対称型の場合

(Ca > Cb)のそれぞれの場合で計算したクーロンブロッケイド領域を図 3.2に示す.

図において,下側の四角形が n = 0,上側が n = �1のクーロンブロッケイド領域である.グレー領域がそのどちらでもクーロンブロッケイド状態にある双安定領域である.それぞれのクーロンブ

ロッケイド領域は,左側のトンネル接合 Caで決まる右上{左下のブロッケイド境界線と,右側のト

ンネル接合 Cbで決まる左上{右下のブロッケイド境界線とに囲まれる.それぞれの図において実線

の矢印は,ゲートクロックにより電荷がターンスタイルを通り抜ける時のバイアス状態 (V; Vg)の軌

跡の一例を示す.ゲート電圧 Vgが減少しバイアス点が双安定領域から太線のブロッケイド境界線を

Page 30: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

3.3. カウンター回路 25

図 3.3: n入力単電子カウンター回路.

交差する時に,左側のトンネル接合列 (Ca側)のブロッケイドが破れ,左の電圧源 (V=2側)からター

ンスタイルの中央の節点へ電荷がトンネルして移動する (n = �1 ! 0).その後,Vgが増加して双

安定領域から点線のブロッケイド境界線を交差する時に,右側のトンネル接合列 (Cb 側)でトンネリ

ングが起こり,中央節点から右側の電圧源 (�V=2側)へ電荷が移動する (n = 0! �1).この一連のゲート電圧の周期動作により,電荷が一個づつターンスタイルを通り抜ける.

通常のターンスタイルの場合は,Ca = Cbゆえ回路が左右対称になり,図 3.2(a)に示すようにクー

ロンブロッケイド領域も Vg 軸に対して対称となる.そのため図の点線の矢印のように符号が逆で同

じ大きさのバイアス電圧を印加しても逆向きに電荷が流れる.一方,非対称型ターンスタイルでは図

3.2(b)に示すように,ある適当なゲートの変化に対して逆バイアスに変えるとその軌跡が n = �1のクーロンブロッケイド領域内に収まるため,電荷の移動は起こらなくなる.言い換えると電荷が一方

向にのみ流れるダイオードに類似した素子になる.

3.3 カウンター回路

非対称ターンスタイルおよび負荷容量,単電子トランジスタ,インバータを用いて図 3.3に示すカ

ウンター回路が構成できる.この回路は入力が Highレベルの数を数えることができる.ゲートク

ロックを入力すると,カウンター回路の入力が Highレベルのターンスタイルに電荷が一個移動し負

荷容量 CLに蓄えられる.一方,入力が Lowレベルのターンスタイルでは,電荷が入力側から負荷

容量側へ移動しないだけでなく負荷容量側から入力節点側へも移動しない.これはターンスタイル

が非対称であり,電荷移動の方向性をもつからである.その結果,一回のクロックで入力の Highレ

ベルの数と同数の電荷が負荷容量に蓄えられる.複数回クロックが入力されると,負荷容量には入力

の Highレベルの数とクロックの数の積の個数の電荷が蓄えられる.入力の Highレベルの数が多い

場合は,負荷容量の電荷数は大きく増加し,節点 nLの電位上昇が速くなる.この電位の変化をイン

バータが増幅し,インバータの出力が変化するタイミングで入力の Highの個数を検知することがで

きる.節点 nLに接続されている単電子トランジスタは負荷容量に蓄えられた電荷を排出し初期状態

にするために用いられる.

このカウンター回路を構成する際に使うターンスタイルのキャパシタの組について計算を行う.カ

ウンター回路で容量値を決めるのに必要な部分を取り出した回路を図 3.4に示す.入力が Highレベ

Page 31: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

26 第 3章 非対称型ターンスタイルおよびその応用回路

図 3.4: 負荷容量が接続された非対称ターンスタイル.

図 3.5: カウンター回路で用いられる非対称ターンスタイルの双安定領域.矢印のついたループはゲート電圧の軌跡の一例を示している.四角形 H1 �H2 �H3 �H4,L1 � L2 � L3 � L4 はそれぞれ入力が Highレベル,Lowレベルの時の双安定領域を示す.

ル,Lowレベルの両方の場合において,図に示すような回路での非対称ターンスタイルのクーロン

ブロッケイド領域を計算するには,式 (3.1)から (3.4)で次のような変換を行えばよい.

V ! (VDD � VCL); Vg !�Vg � VDD + VCL

2

�(入力が Highレベルの場合) (3.5)

V ! �VCL; Vg !�Vg � VCL

2

�(入力が Lowレベルの場合) (3.6)

ここで VDDは電源電圧 (=入力の Highレベル),VCLは図 3.4に示すような負荷容量の電位である.

図 3.5にカウンター回路で使われる非対称ターンスタイルの双安定領域を示す.縦軸はゲート電圧,

横軸は負荷容量の電位で,電荷の蓄積によりこの電位が増加する.二つの四角形H1�H2�H3�H4,

L1 �L2 �L3 �L4はそれぞれ入力が Highレベル,Lowレベルの時の双安定領域を示す.以後の動

作説明および特性計算においては次の容量値を用いる.

Ca = 3Cg; Cb = 5Cg; Cg = e=(6VDD) (3.7)

入力が Highレベルの時に電荷がターンスタイル中を移動するためには,ゲート電圧の軌跡が双安

定領域を横切るようにしなければならない.言い換えると,ゲート電圧の軌跡が H1 � H4 および

Page 32: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

3.3. カウンター回路 27

0 100Time (ns)

Cou

nter

out

put

Gateclock

4 high inputs

3 high inputs

2 high inputs

1 high input

No high input

30 40

図 3.6: モンテカルロ法による 4入力カウンター回路の入出力特性の計算結果.VDD = 0:1V(Cg =0:267aF),CL = 21e=VDD,RT = 1M,インバータ増幅率は 8,温度 0.1K.ゲートクロックの振幅は 5VDD,その他の振幅は VDD である.

H3 �H4と交わるように電位を変化させるとよい.一方,入力が Lowレベルの時は電荷が移動しな

いようにゲート電圧の軌跡が L1 � L2 および L2 � L3を横切らないようにする.ただし,L2 � L3

と L1 � L4を交差するゲート電圧の軌跡の場合は,電荷が負荷容量とターンスタイルの中央の節点

(node C)との間を往復するだけなので許される.これらのことから,ゲート電圧の振幅の最大値は

4:5VDDから 5VDD までとなる.また最小値は 1:5VDD 以下となる.これらの条件よりゲート電圧は

0 � Vg � 5VDD (3.8)

の範囲を選択する.このゲート電圧の範囲では図 3.5より VCLは 0から 0:6VDD まで増加すること

が可能である.

図 3.6に 4入力カウンター回路の入出力特性のモンテカルロ法による計算結果を示す.上からゲー

トクロック,Highレベルの入力数が 4,3,2,1,0の場合のそれぞれの出力を表している.以下,入

力の Highレベルの数が 4および 3の場合について説明をする.Highレベルが 4つの場合,3クロッ

ク後には 12個 (= 4� 3)の電荷が負荷容量に蓄えられる.一方 3つの場合は 9個 (= 3� 3)しか蓄積

されない.その結果,4つの場合は図 3.3の節点 nLの電位が高くインバータのしきい値を超えるの

で出力が反転する.しかし 3つの場合はしきい値を超えないので出力は反転しないままでいる.この

ようにして 3クロック目で入力の Highレベルの数が 4つか 3つ以下かが判断できる.同様にして,

Highレベルの数が 3つ,2つ,1つの判断はそれぞれ 4クロック目,6クロック目,12クロック目

にできる.

Page 33: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

28 第 3章 非対称型ターンスタイルおよびその応用回路

図 3.7: クロックマージンの負荷容量,インバータ増幅率依存性.縦軸は 1ビットを表すのに必要な電荷数を表している.クロックマージンは 4入力カウンター回路において入力の Highレベル数が 4であるかどうかが決定できるクロック数で定義される.この計算では電子の熱エネルギーや量子的な揺らぎは無視している.

3.3.1 クロックマージン

図 3.6の計算例では入力の Highレベルの数が 4つか 3つかを 3クロック目だけで判断でき,その

1クロック以外にはない.これは熱的な揺らぎや協調トンネリング (コ・トンネリング6{8)) などによ

るエラーに対する耐性が低いことになる.判断できるクロック数を多くしてマージンを大きくする

には,負荷容量とインバータ増幅率を大きくすればよい.図 3.7は,4入力カウンター回路において

Highレベル入力数判断のクロックマージンが最も少ない 4つと 3つの Highレベル入力判断をする

場合における負荷容量の大きさとインバータ増幅率の関係をマージンクロック数ごとに示している.

この計算において,インバータの入出力特性は (入力;出力) = (0:5VDD; 0:5VDD)を通るものと仮定

している.またカウンター回路の出力は Lowレベルは 0:2VDD 以下,Highレベルは 0:8VDD 以上と

し,4つの Highレベル入力の時出力が Lowレベルに変わり,3つの Highレベル入力の時は出力が

Highレベルのままである場合にその 2つの入力数の違いが判断できるとしている.\One"とある領

域は,図 3.6の計算例のように Highレベル入力数が 4か 3かが判断できるクロック数が 1の場合を

表す.マージンクロックを 3以上にするためには,負荷容量の大きさが 80e=VDD 以上,インバータ

増幅率が 8以上でなければならないことがわかる.しかし,負荷容量が大きいと多くの電荷が動作に

必要となり,その結果必要クロック数が増え回路全体の動作が遅くなる.

Page 34: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

3.3. カウンター回路 29

–0.05e 0.05e–0.06e

0.06e

node A

node B

–0.35e –0.30e –0.25e –0.20e

–0.15e –0.10e –0.05e 0.00e

0.05e 0.10e 0.15e 0.20e

node C

図 3.8: 非対称ターンスタイルにおける浮遊電荷の影響.10回のゲートクロック印加に対して正常動作した浮遊電荷の組を黒い点で表している.CL = 10e=VDD,ゲートクロック周波数は 1kHz.他のパラメータは図 3.6の値と同じである.

3.3.2 浮遊電荷の影響

図 3.8にカウンター回路で用いられる非対称ターンスタイルにおける浮遊電荷の影響を示してい

る.図中の node A,B,Cはそれぞれ図 3.4に示している節点を表している.黒い領域がそれぞれ

正常動作する浮遊電荷の組を表している.節点 Cに比べ節点 A,Bが非常に浮遊電荷の影響を受け

やすいことがわかる.これはターンスタイルの動作の本質であるクーロンブロッケイドの双安定状態

が多重接合によってできるためである.それらの節点に存在するわずかな浮遊電荷は双安定状態を壊

す.この図から節点 A,Bに関しては �0:03e � 0:03e,節点 Cに関しては �0:25e � 0:10eの範囲の

浮遊電荷で動作することが見積もられ,なんらかの浮遊電荷の補償を行わなければターンスタイル

は正常な動作をしないことになる.

3.3.3 温度と動作速度

図 3.9にカウンター回路の動作エラー率の温度依存性を示す.浮遊電荷は 0と仮定した.計算はマ

スター方程式法を用いている.この図によると,10�3e2=C�kBK以下の温度でターンスタイルは正

常動作をする.一方,単電子トランジスタの場合は 10�2e2=CkBK程度でよい.9) これは,ターンス

タイルに流れる電荷はゲートクロックによって操作されるので,ゲート電位によって決まる中央の節

点の電位が電荷の移動に関して重要となってくるが,単電子トランジスタの場合はゲート電位は固定

されており,トンネル電荷によりアイランドの電位は絶えず変動しているのでターンスタイルに比べ

れば温度の影響が小さいためである.

図 3.10にカウンター回路の動作エラー率のゲートクロック周波数依存性を示す.動作周波数に極

Page 35: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

30 第 3章 非対称型ターンスタイルおよびその応用回路

3 2 110–8

10–4

1000.4 0.6 0.8 1

Err

or r

ate

Temperature (K)

Temperature (1/K)

0.001e2/CΣ0.002e2/CΣ

1kHz

10kHz

100kHz

1MHz

10MHz

図 3.9: 温度変化に対する動作エラー率.容量値,エラーの評価方法は図 3.8と同じである.

値が現れている.これはゲートクロック周波数が高い時は電荷のトンネリングが追いつかず電荷転送

エラーとなり,低周波の時はターンスタイルの中央節点中の電荷がゲートによって操作できないこと

が原因である.図より極低温でさえ 1=105RTC�Hz以下のクロック速度でなければならないことが

わかる.

3.4 応用回路

ここでは,単電子カウンター回路の応用例について述べる.

3.4.1 画像処理回路

カウンター回路はそのまま画像処理回路として応用できる.図 3.11にノイズ除去回路を示す.画

像ピクセル中のあるドットとその周りのドットの情報をカウンター回路に入力し,点灯しているドッ

トの数を数え,その個数があるしきい値以上であると出力が ONになる.これをすべての画像ピク

セルについて行うことで,ノイズの少ない画像が得られる.

3.4.2 Winner-Take-All回路

カウンター回路は図 3.12 に示すような Winner-Take-All 回路の一部として使うことができる.

Winner-Take-All回路とは,ある参照データに一番近いデータの記憶場所を検知する回路である.視

覚でとらえた物体の認識は過去の経験データから一番近いものから判断するが,これを電気回路で

Page 36: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

3.4. 応用回路 31

104 106 108 101010–8

10–4

100

Frequency (Hz)

Err

or r

ate

1K

2K

104RTCΣ

3K

0K, 0.2K

図 3.10: クロック周波数と動作エラー率の関係.容量値,エラーの評価方法は図 3.8と同じである.

図 3.11: ノイズ低減をする画像処理回路.

実現する場合などにWinner-Take-All回路が用いられる.単電子Winner-Take-All回路の動作は次

の通りである.メモリデータの各ビットを参照データの各ビットと XORおよび NOT演算を行う.

その演算結果は同じビットは 1,違うビットは 0となる.その結果をカウンター回路に入力し,1の

数,つまり同じビットになっている個数を数える.参照データに近いデータほど同じビットになって

いる個数が多いので,最初にカウンター回路の出力が変化したところのデータが一番参照データに

近いことになる.

ブール代数では,参照データと同じデータを調べることは簡単にできるが,参照データに近いデー

タを調べ上げることは非常に難しい.CMOS論理回路など既存素子によるWinner-Take-All回路は

Page 37: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

32 第 3章 非対称型ターンスタイルおよびその応用回路

図 3.12: 単電子カウンター回路を用いたWinner-Take-All回路.

配線が複雑になり,大規模な回路となる.しかし単電子素子で構成した場合は図 3.12に示すように

構造が簡単となる.

3.4.3 ニューロン回路

カウンター回路はニューロン回路にも適用できる.ニューロンは荷重係数との積算 (シナプス),和,

飽和型非線形関数によりモデル化される10{15)(詳しくは次章参照).図 3.13にカウンター回路を用い

たニューロン回路を示す.積算回路は非対称型ターンスタイルにより実現する.ニューロンの興奮,

抑制の両方の状態の実現ため,正の荷重係数積算と負の荷重係数積算の両方を別々に行うようにして

いる.ここで,図にある逆向きの非対称ターンスタイルの容量値は式 (3.7)とは別に新たに計算して

求める必要がある.

このニューロン回路の動作は次に示す通りである.まず,クロック 1を入れると負の積算が行われ

る.シナプスへの入力が 1の時,負の荷重係数メモリが 1のビットから負荷容量へ電荷が移動する.

その結果,他のシナプスからの積算結果との和が負荷容量の電荷数として蓄えられる.次にクロック

2を入れると,正の荷重係数のメモリが 0のビットへ負荷容量から電荷が移動し,負の積算の結果と

は逆に負荷容量に蓄えられた電荷が排出される.その結果,すべての積算の和は負荷容量に蓄積され

た電荷数として表される.負荷容量の節点間電位が非線形関数として機能するインバータに入力さ

れ,その出力がニューロンの出力となる.

既存 LSIによるシナプスの演算精度はアナログ回路で 6ビット程度,デジタル回路で 12ビット程

度である.13) それを考慮すると一つのシナプスあたり必要な非対称ターンスタイルは約 100 � 4000

と考えられる.素子数は多いが,消費電力に寄与する電荷数がそのターンスタイルの個数程度である

ため,既存素子によるニューロン回路の消費電力と比べ非常に消費電力が少なくなる.

Page 38: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

3.5. まとめ 33

図 3.13: 単電子カウンター回路を用いたニューロン回路.点線の四角で囲まれた部分がシナプスである.非対称ターンスタイルの上に描かれている矢印は電荷の移動方向である.

3.5 まとめ

電荷の移動方向性のある非対称ターンスタイル,およびそれを用いたカウンター回路を提案した.

非対称ターンスタイルのクーロンブロッケイド領域をもとに,カウンター回路に用いる容量値を計

算した.その容量値のカウンター回路の入出力特性,クロックマージン,浮遊電荷の影響,動作温

度,動作速度を計算した.その結果,3クロック以上のマージンを必要とするなら負荷容量の大きさ

は 80e=VDD 以上,インバータ増幅率は 8以上必要なことがわかった.浮遊電荷は最も影響のある節

点では �0:03eの範囲でなければ正常動作しないことがわかった.また,たとえ浮遊電荷が存在しない場合でも動作温度は 10�3e2=C�kBK以下,クロック周波数は 1=105RTC�Hz以下に抑える必要が

あることがわかった.カウンター回路の画像処理回路,Winner-Take-All回路,ニューロン回路への

応用を提案した.

Page 39: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

34

参考文献

1) L. J. Geerligs, V. F. Anderegg, P. A. M. Holweg, J. E. Mooij, H. Pothier, D. Esteve, C. Urbina

and M. H. Devoret, \Frequency-Locked Turnstile Device for Single Electrons," Phys. Rev.

Lett. 64, 2691 (1990).

2) V. F. Anderegg, L. J. Geerligs and J. E. Mooij, \Frequency-Determined Current with a Turn-

stile Device for Single Electrons," Physica B 165&166, 61 (1990).

3) L. J. Geerligs, \The Frequency-Locked Turnstile Device for Single Electrons," Surface Science

263, 396 (1992).

4) L. P. Kouwenhoven, A. T. Johnson, N. C. van der Vaart, C. J. P. M. Harmans and C. T. Foxon,

\Quantized Current in a Quantum-Dot Turnstile Using Oscillating Tunnel Barriers," Phys.

Rev. Lett. 67, 1626 (1991).

5) L. P. Kouwenhoven, A. T. Johnson, N. C. van der Vaart, D. J. Maas, C. J. P. M. Harmans

and C. T. Foxon, \Quantized Current in a Quantum Dot Turnstile," Surface Science 263, 405

(1992).

6) D. V. Averin, A. A. Odintsov and S. V. Vyshenskii, \Ultimate Accuracy of Single-Electron

DC Current Standards," J. Appl. Phys. 73, 1297 (1993).

7) D. V. Averin and A. A. Odintsov, \Macroscopic Quantum Tunneling of the Electric Charge

in Samll Tunnel Junctions," Phys. Lett. A 140, 251 (1989).

8) D. V. Averin and YU. V. Nazarov, in Single Charge Tunneling edited by H. Gravert and

M. H. Devoret, Chapter 6, Plenum, New York, 1992.

9) A. N. Korotkov, R. H. Chen and K. K. Likharev, \Possible Performance of Capacitively

Coupled Single-Electron Transistors in Digital Circuits," J. Appl. Phys. 78, 2520 (1995).

10) Handbook of Neural Computation edited by E. Fiesler and R. Beale, Part A, IOP and Oxford

Univ., Bristol and New York, 1997.

11) The Handbook of Brain Theory and Neural Networks edited by M. A. Arbib, Part I, MIT

Press, Cambridge, 1995.

12) L. P. J. Veelenturf, Analysis and Applications of Arti�cial Neural Networks, Prentice Hall,

London, 1995.

13) 岩田穆,雨宮好仁,ニューラルネットワーク LSI,第 1章,電子通信情報学会,1995.

Page 40: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

3.5. まとめ 35

14) J. E. Dayho� 著,桂井浩 訳,ニューラルネットワークアーキテクチャ入門,pp. 8,森北出版,

1992.

15) 中野馨,飯沼一元,ニューロンネットグループ,桐谷滋,入門と実習ニューロコンピュータ,pp. 15,

技術評論社,1989.

Page 41: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

36

第4章

単電子インバータによるニューロン回路

4.1 はじめに

単電子素子はトンネリング現象を動作の基本原理としているため,動作特性にはいくらかのばら

つきがあり,通常の決定論的な論理回路への応用には不向きである.そこで出力に曖昧さを許容する

ニューラルネットワークへの適用を念頭に置き,単電子ニューロン回路を提案する.

4.2 ニューロンモデル

ニューロン (神経細胞)はいくつかのモデルが提案されているが,現在よく使われているニューロ

ンモデルは図 4.1に示すようなものである.1{6) 一つのニューロンには多数の入力端子と一つの出力

端子がある.入力端子にはそれぞれ荷重係数が備わっており,入力された信号とその荷重係数の積が

計算される.この部分は実際の生物の神経細胞に対応させてシナプスと呼ばれる.その積の総和をと

り,しきい値特性をもつ非線形関数を通して出力信号を得る.このようなニューロンを多数接続する

ことによりニューラルネットワークを構成し,複雑な情報処理を行う.

ニューラルネットワークの性能は荷重係数の設定値に大きく依存する.ネットワークが巨大になる

と荷重係数の最適値を理論的に求めることはほぼ不可能となる.そのため,いろいろな入力に対する

出力結果をフィードバックさせることにより荷重係数を調整していく.実装時は荷重係数は書き換え

可能なメモリ (RAM)で実現される.

既存素子によるニューラルネットワークの LSI化は非常に難しい.これは,荷重係数はニューロ

図 4.1: 荷重係数との積算部,総和部,飽和型非線形関数部からなるニューロンモデル.

Page 42: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

4.3. 単電子ニューロン回路 37

図 4.2: 単電子アナログメモリ.記憶される値は負荷容量 CLW に蓄えられる電荷数によって表される.節点 nLW の電位を読み出す構造となっている.ターンスタイル Aおよび Bは CLW へ電荷を注入したり排出したりする目的で使われる.

ンのそれぞれの入力に必要であるため,ニューラルネットワークにおけるメモリ数は膨大になるから

である.既存素子でニューロンを構成すると,荷重係数を記憶するメモリ部は大面積を要する4, 7)た

め一つのニューロンの規模が大きくなり,高集積化が困難である.

4.3 単電子ニューロン回路

ニューロンモデルをもとに,アナログメモリ部,積算部,総和部,非線形関数部の四つの構成要素

からなる単電子ニューロン回路を提案する.今までに単電子素子によるニューロン回路はいくつか

提案がなされている.8, 9) しかし,それらは定常時でも単電子トランジスタに電流が流れているため,

低消費電力ネットワークに組み込めない.今回提案する単電子ニューロン回路はクロックによる電圧

制御動作を基本としている.

4.3.1 荷重係数のメモリ回路

荷重係数を記憶する単電子アナログメモリは図 4.2に示すように節点 nLW に接続された二つの

ターンスタイル10{12)と負荷容量 CLW により構成される.電源側に接続されたターンスタイル Aは

負荷容量に電荷の蓄積,アース側に接続されたターンスタイル Bは電荷の排出に使われる.負荷容

量に蓄えられた電荷数,つまり節点 nLW の電位 VLW が荷重係数となる.読み出しに際してデータ

破壊が起こらないように,読み出し回路の入力インピーダンスは高くなければならない.負荷容量を

大きくすれば多くの蓄積電荷を必要とするため動作速度が落ちるが,アナログメモリとしての分解

能は向上する.

単電子アナログメモリの動作に必要なゲート電圧の振幅幅について述べる.ターンスタイル Aお

よび Bともトンネル接合の容量はすべて C,またどちらのゲート容量も Cg = C=2と仮定する.こ

のときの,ターンスタイル Aおよび Bのクーロンブロッケイド領域はそれぞれ図 4.3(a),(b)のよ

うになる.ターンスタイル A,Bの中央節点中の電荷数を na および nbとする.それぞれの図の左

側のグレー領域は na = 0,nb = 0の,右側のグレー領域は na = �1,nb = �1のクーロンブロッケイド領域を表す.それらに挟まれた斜線領域は双安定クーロンブロッケイド領域である.ターンスタ

イル Aのクーロンブロッケイド領域図 (図 4.3(a)) において,矢印で示すようにゲート電圧 Vgaを変

化させると,電荷は双安定領域から左のグレー領域へ入る時に電源から中央節点へ,双安定領域から

右のグレー領域へ入る時に中央節点から負荷容量へトンネルする.ターンスタイル Bでの電荷の移

動も同様に説明できる.

Page 43: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

38 第 4章 単電子インバータによるニューロン回路

(a) (b)

図 4.3: クーロンブロッケイド領域図.それぞれの左右のグレー領域が中央節点中の電荷数が 0もしくは �1個の安定領域,間の斜線領域が双安定領域である.斜線領域を通過するように,左右のグレー領域を往復するゲート電圧を印加させた時に電荷が一個転送されて正しい動作が行われる.(a) 負荷容量 CLW に電荷を注入するターンスタイル Aのクーロンブロッケイド領域図,(b)CLW 中の電荷を排出するターンスタイル Bのクーロンブロッケイド領域図.

図 4.3(a)から,ターンスタイル Aを経由した電荷の移動により VLW は電源電圧 VDD まで上昇さ

せることができる.一方,図 4.3(b)より VLW が 2e=3C より高くなると,ゲート振幅は斜線領域を

超えクーロンブロッケイドされない状態ができるので正常動作が行えない.そのため VDDは 2e=3C

以下となる.0から VDDの範囲で変化する VLW の全域に対してターンスタイル A,Bとも電荷の移

動が行えるためには,それぞれのクーロンブロッケイド領域図の左右のグレー領域に達するように

ゲート振幅を決めなければならない.ゲート電圧の振幅の最大値を VgMAX,最小値を VgMIN とす

ると,ターンスタイル Aに対しては,

�2eC

+ 2VDD < VgMIN < VDD;2e

C+ VDD < VgMAX <

4e

C� VDD ; (4.1)

ターンスタイル Bに対しては

�2eC

+ 2VDD < VgMIN < 0;2e

C< VgMAX <

4e

C� VDD ; (4.2)

を満たさなければならない.CLWVDD=eで与えられる負荷容量に蓄積できる電荷数が多ければメモ

リの精度は高くなる.高精度を得るには高い電源電圧がよいので VDD = 2e=3Cとする.また,ター

ンスタイル A,Bとも同じゲート電圧の範囲で使うものとする.その時,VgMIN およびは VgMAX

の範囲はそれぞれ �VDD � 0,4VDD � 5VDD となる.よってゲート電圧 Vga,Vgb は少なくとも

0 � 4VDD の振幅が必要である.

4.3.2 積算回路

積算回路は図 4.4に示す単電子インバータ回路13)を使う.単電子インバータ回路は CMOS イン

バータと同じく相補型にできているため,貫通電流パスがなく消費電力は非常に小さい.通常の単電

子インバータ回路では節点Weightは接地されているが,この節点の電位 VWeightを変化させること

で出力の振幅を制限している.

モンテカルロ法を用いた積算回路特性の計算結果を図 4.5に示す.図 4.5(a)は VWeightを変化させ

た時の入出力特性である.ある VWeightでの特性は太線のようにヒステリシスを描く.このため入力

電位は確実に VDD まで上げる必要がある.図 4.5(b)は入力が High(VDD)の時の VWeightと出力と

の関係を示している.荷重係数に対してほぼ線形な変化になっていることがわかる.出力が階段状に

Page 44: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

4.3. 単電子ニューロン回路 39

図 4.4: 単電子インバータを応用した積算回路.入力が Highの時の出力は節点Weightの電位に応じて変化する.

0 10

1

T = 0

CLM = 10 × e/VDD

Input (/VDD)

Out

put (

/VD

D)

(a)

0 0.5 10

0.5

1

T = 0

CLM = 10 × e/VDD

VWeight (/VDD)

Out

put (

/VD

D)

(b)

図 4.5: 半古典的理論によるモンテカルロ法での積算回路の計算特性.図 4.4の回路で計算に用いた容量値は C0 = e=(24VDD)として C1 = 4C0,C2 = 3C0,C3 = 8C0,C4 = 6C0 である.(a)VWeight を 0:13VDD から 0:34VDD まで 0:01VDD ごとに変化させた時の入出力特性.(b)入力が VDD の時の VWeight と出力との関係.

なっているのは出力節点に接続された負荷容量 CLM に蓄えられる電荷の離散的性質によるものであ

る.この CLM の大きさは積算計算の精度に大きく影響する.今回の計算では CLM の大きさを電荷

10個で 1ビットを表す値にしているが,CLM を大きくすることで離散的性質が減少し,よりなめら

かな特性が得られるようになる.

図 4.5(a)においてインバータの入出力特性がヒステリシスを描く理由は,図 4.4のインバータ回路

を構成している n-typeと p-typeの単電子トランジスタのクーロンブロッケイド状態図から説明でき

る.単電子インバータ回路の特性は,図 4.6(a)に示す p-typeと図 4.6(b)に示す n-typeの,それぞ

れの単電子トランジスタのクーロンブロッケイド状態図を重ねた図 4.6(c)により決まる.インバータ

特性は両方のトランジスタがクーロンブロッケイドである領域に沿って入出力特性が決まり,準静的

な入力の変化に対しては図 4.6(c)の太線の入出力特性になる.VWeithtの電位が変化すると図 4.6(d)

のように n-type単電子トランジスタのクーロンブロッケイド領域がずれてゆき,その結果,荷重係

数が加えられた単電子積算回路のクーロンブロッケイド状態図は図 4.6(e)のようになる.この状態

Page 45: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

40 第 4章 単電子インバータによるニューロン回路

(a) (b) (c)

(d) (e)

図 4.6: 単電子積算回路のクーロンブロッケイド領域の変化.(a)p-type 単電子トランジスタ.(b)n-type単電子トランジスタ.(c)単電子インバータの入出力特性 (VWeight = 0).(d)荷重係数が加えられた状態の n-type単電子トランジスタ.(e)荷重係数が加えられた積算回路のクーロンブロッケイド領域と入出力特性.

で入力を変化させると太線の入出力特性になり,これが図 4.5(a)の入出力特性に対応する.

4.3.3 和・非線形関数

各シナプスからの出力電位の総和は図 4.7に示すように,容量 Ccを通したキャパシタカップリン

グにより行う.キャパシタカップリングにすると直流電流成分が流れないため消費電力が小さいとい

う長所がある.しかし,シナプスの数が増加すると各シナプスの出力から非線形関数部に入力され

る電位への影響力が小さくなるため,一つのニューロンには多くの入力を持たせることはできない.

これは次のインバータの増幅率と関係がある.

非線形関数は単電子インバータ回路13)を用いる.前節の説明にあるように,次段に接続されるニュー

ロンの入力を確実に 0および VDD のどちらかに電位を決定させなければならないため,インバータ

の出力が飽和する領域に入力範囲がくるようにしなければならない.その範囲はインバータの増幅

率が大きい場合は広くなり,多数のシナプスからの入力が可能となる.キャパシタカップリングによ

る総和回路の場合,インバータ増幅率と許容シナプス数は同程度となる.しかし,単電子インバータ

の増幅率は大きくてもせいぜい 1桁程度である.14{16) これはトンネル接合に比べゲートを非常に大

きく作製することが困難なためである.このため一つのニューロン中のシナプス数,つまりニューロ

ンの入力数は 2,3となる.

Page 46: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

4.3. 単電子ニューロン回路 41

図 4.7: 単電子ニューロン回路.A,Bで示された四角がターンスタイルを表す.点線の四角で囲まれた部分がシナプスである.各シナプスからの出力は容量 Ccによるキャパシタカップリングを通して総和され,非線形関数の機能をするインバータ Nに入力される.

4.3.4 単電子ニューロン回路

図 4.7に今回提案する単電子ニューロン回路の全体図を示す.点線の四角で囲まれた部分がシナプ

スであり,荷重係数の記憶回路と積算回路からなる.ターンスタイル Aおよび Bで調節される荷重

係数は負荷容量 CLW に蓄えられる.荷重係数の情報はバッファDを通ったあとに積算回路のイン

バータ Cに入力される.もし CLW を直接インバータ Cに接続すると,インバータ Cの出力負荷容

量 CLM に蓄えられた電荷の情報が破壊されてしまう.これを防ぐためにバッファDが必要となる.

ニューロンの入力の一つと荷重係数の積はキャパシタカップリング Ccにより総和され,その結果が

インバータ Nを通ってニューロンの出力となる.

消費電力について評価する.10ビットの精度のあるニューロン回路の消費電力は,入力数を n,ト

ンネル接合の容量を C Fとすれば一回の処理に対して 10�36 � n=C Jのオーダーになる.n = 10,

C � 1aFとすれば約 10�17Jとなる.既存素子のニューロン回路では,ニューロンあたり一回の処理

で 10�12J程度電力消費される.4) このことから,単電子ニューロン回路は非常に低消費電力である

ことがわかる.

さらに単電子ニューロン回路は非常に少ない素子数で実現できる.この理由は荷重係数を記憶す

る回路が 2つのターンスタイルで実現できるからである.小占有面積かつ低消費電力ゆえ,単電子

ニューロン回路は超高集積化が可能となる.ただし,キャパシタカップリングを用いているため入力

数が限定され,また浮遊節点が存在するため動作が不安定になる可能性がある.しかし単電子 A/D

および D/Aコンバータ17, 18)により,この問題は回避できると考えられる.

Page 47: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

42 第 4章 単電子インバータによるニューロン回路

4.4 まとめ

本章では,単電子インバータを用いた単電子ニューロン回路の提案を行った.荷重係数の記憶回路

は 2つのターンスタイルを用いることで既存素子より少ない素子数で実現できることを示した.単

電子インバータを用いた積算回路を提案し,その入出力特性を計算により明らかにした.総和回路お

よび非線形関数回路はそれぞれキャパシタカップリング,インバータ回路で実現する.消費電力およ

び素子数の見積りにより,既存素子より高集積化が期待できることを示した.

Page 48: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

43

参考文献

1) Handbook of Neural Computation edited by E. Fiesler and R. Beale, Part A, IOP and Oxford

Univ., Bristol and New York, 1997.

2) The Handbook of Brain Theory and Neural Networks edited by M. A. Arbib, Part I, MIT

Press, Cambridge, 1995.

3) L. P. J. Veelenturf, Analysis and Applications of Arti�cial Neural Networks, Prentice Hall,

London, 1995.

4) 岩田穆,雨宮好仁,ニューラルネットワーク LSI,第 1章,電子通信情報学会,1995.

5) J. E. Dayho� 著,桂井浩 訳,ニューラルネットワークアーキテクチャ入門,pp. 8,森北出版,

1992.

6) 中野馨,飯沼一元,ニューロンネットグループ,桐谷滋,入門と実習ニューロコンピュータ,pp. 15,

技術評論社,1989.

7) in Ref.1, Part E.

8) M. J. Goossens, C. J. M. Verhoeven and A. H. M. Roermund, \Single Electron Tunneling

Technology for Neural Networks," Proc. Fifth Int. Conf. Microelectronics for Neural Networks

and Fuzzy Systems, pp. 125 (Lausanne, 1996).

9) M. Akazawa and Y. Amemiya, \Boltzmann Machine Neuron Circuit Using Single-Electron

Tunneling," Appl. Phys. Lett. 70, 670 (1997).

10) L. J. Geerligs, V. F. Anderegg, P. A. M. Holweg, J. E. Mooij, H. Pothier, D. Esteve, C. Urbina

and M. H. Devoret, \Frequency-Locked Turnstile Device for Single Electrons," Phys. Rev.

Lett. 64, 2691 (1990).

11) V. F. Anderegg, L. J. Geerligs and J. E. Mooij, \Frequency-Determined Current with a Turn-

stile Device for Single Electrons," Physica B 165&166, 61 (1990).

12) L. J. Geerligs, \The Frequency-Locked Turnstile Device for Single Electrons," Surface Science

263, 396 (1992).

13) J. R. Tucker, \Complementary Digital Logic Based on the \Coulomb Blockade"," J. Appl.

Phys. 72, 4399 (1992).

14) G. Zimmerli, R. L. Kautz and J. M. Martinis, \Voltage Gain in the Single-Electron Transistor,"

Appl. Phys. Lett 61, 2616 (1992).

Page 49: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

44 第 4章 単電子インバータによるニューロン回路

15) E. H. Visscher, S. M. Verbrugh, J. Linderman, P. Hadley and J. E. Mooij, \Fabrication of

Multilayer Single-Electron Tunneling Devices," Appl. Phys. Lett. 66, 305 (1995).

16) R. A. Smith and H. Ahmed, \A Silicon Coulomb Blockade Device with Voltage Gain," Appl.

Phys. Lett. 71, 3838 (1997).

17) S. J. Ahn and D. M. Kim, \Asynchronous Analogue-to-Digital Converter for Single-Electron

Circuits," Electron Lett. 34, 172 (1998).

18) S. J. Ahn and D. M. Kim, \A Simple Digital-to-Analog Conversion Technique Using Single-

Electron Transistor," IEICE Trans. Electron E81-C, 608 (1998).

Page 50: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

45

第5章

結論

 単電子素子と既存素子を組合せたハイブリッド回路の特性予測の計算をするシミュレータ関する

研究内容を第 2章に,単電子素子特有の性質を生かした新しい回路の提案とその研究内容を第 3章,

第 4章に述べた.

第 2章では,単電子素子をモデル化し既存素子回路シミュレータ SPICEへ組み込む方法,および

それを用いた回路特性計算について示した.各素子を記述するサブルーチンは SPICEのメインルー

チンから与えられた節点電圧をもとに電流およびその電圧に対する偏微分量 (コンダクタンス)を計

算し,メインルーチンに返す.モデル化された単電子素子をハイブリッド回路シミュレータに組み込

み,それらを計算する方法について述べた.単電子素子の特性を数値的に計算する方法にマスター方

程式法とモンテカルロ法がある.マスター方程式法では半古典的理論の範囲では解析的に電流やコ

ンダクタンスが計算できるので,容易にモデル化ができた.一方,モンテカルロ法ではトンネル間

隔時間の間,一定の電流が流れるモデルを SPICEに組み込んだ.両方法を使ってハイブリッド回路

の特性を計算したところ,ターンスタイルのようなゲート同期電流素子では計算時間の観点からモ

ンテカルロ法が適していることがわかった.また,ゲート非同期電流素子 (単電子トランジスタ)が

小さな負荷容量の出力に接続されている場合は電荷の離散的性質が明確に現れるモンテカルロ法が,

負荷容量が大きい場合は計算時間の観点からマスター方程式法が適していることがわかった.続い

て,CMOSインバータと組合せた単電子カウンター回路,および CMOS差動アンプと組合せた論理

回路の特性計算例を示した.ここではMOSFETモデルの精度により結果が大きく違うことがわかっ

た.そのためハイブリッド回路シミュレータの完成度を高めるには既存素子も含め,更に高精度な素

子モデルが必要になると考えられる.

第 3章では,非対称型ターンスタイルを提案し,それを用いたカウンター回路の動作特性の解析,

カウンター回路を用いた応用回路の提案を行った.非対称型ターンスタイルは通常のターンスタイル

と違い電荷の移動に方向性があり,ゲートの動きに同期したダイオードと考えることができる.こ

の非対称型ターンスタイルと電荷を蓄える負荷容量,電位を増幅するインバータ,電荷を排出する単

電子トランジスタを組合せてカウンター回路を考え,それに必要な非対称型ターンスタイルの容量

値を計算した.安定動作に必要なクロックマージンの解析を行い,負荷容量の大きさは 80e=VDD 以

上,インバータ増幅率は 8以上必要なことがわかった.また,このカウンター回路の浮遊電荷の影

響,動作温度,動作速度について解析を行った.その結果,許容される浮遊電荷は最も厳しい節点

で �0:03e以内,10�3e2=C�kB K以下,1=105RTC� Hz以下で安定動作することがわかった.更に,

カウンター回路の画像処理回路,Winner-Take-All回路,ニューロン回路への応用を提案した.

Page 51: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

46 第 5章 結論

第 4章では,単電子インバータを応用した単電子ニューロン回路の提案をした.ニューロンは重み

積算部,総和部,非線形関数部の三つの部分に分割される.荷重係数のメモリ部は既存素子によるア

ナログメモリより簡単な二つのターンスタイルにより構成される.インバータ構成の積算回路部で

はソース電位の変化を利用している.総和はキャパシタカップリングにより構成され,非線形関数

は単電子トランジスタからなる.上記のニューロンは単電子素子で構成されているので,大規模な

ニューラルネットワークを構築しても超低消費電力で動作させることができる.

単電子素子は単に物理的興味のみならず,MOSFET等既存素子の限界を打ち破る次世代素子とし

て検討されている.本研究によって作成,提案されたシミュレータおよび素子がこれからの単電子素

子分野の発展の一助になることを願う.

Page 52: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

47

付録 A

単電子素子の基礎と特性計算方法

A.1 基本理論

電子は素電荷量 eをもつ粒子としての性質と,トンネル現象を引き起こす波動性を持ち合わせてい

る.この二つの性質が観察されるメゾスコピック領域で単電子現象が現れる.

トンネル接合はこの現象を観測するのに使われる基本素子である.二つの電極を絶縁物で挟んだ

トンネル接合は,キャパシタと同様に容量が存在する.ただしキャパシタとは違い,絶縁障壁が数

nm程度と薄いので電荷はトンネルして通り抜けることができる.

いま,容量 C のトンネル接合に電荷Qが蓄積していると仮定する.この時,トンネル接合には

E =Q2

2C(A.1)

の静電エネルギーが蓄えられている.一個の電子が接合をトンネルし蓄積電荷が Qから Q� eに変

化した時,静電エネルギーは

�E =Q2

2C� (Q� e)2

2C=

e

C

�Q� e

2

�(A.2)

だけ減少する.この式から接合に蓄えられた電荷Qが e=2より小さい時はエネルギー的に損になり,

0Kでは電子のトンネリングが起こらない.逆向きのトンネルを考えると同様に �e=2より Qが大き

い時はトンネリングが起こらない.その結果 �e=2 < Q < e=2の範囲ではどちら向きのトンネリン

グも発生しないことがわかる.このトンネルが起こらない現象は,静電エネルギーを生ずるクーロン

力に起因することからクーロンブロッケイド現象1{5)と呼ばれる.そしてブロッケイドが起こる電荷

のしきい値 e=2は臨界電荷量Qcと呼ばれる.実際には電子がトンネルしても,トンネル先の電極に

繋がれた他の接合やキャパシタに電荷の一部が配分されるので,蓄積電荷は Q � eにならない.実

際には注目している接合の周りの等価キャパシタを Cextとして

Qc =e

2

C

C + Cext(A.3)

で与えられる.6{8) (Cextの算出方法は付録 Bを参照.)

ここで,トンネルする電荷量は eを単位とした離散値であるが,接合に蓄えられる電荷量 Qは連

続量である.電界のかかっていない電極では電子と陽イオンがほぼ同じ位置にあり全体的に中性と

なっている.電界を加えると電子が一方に片寄る.そこで生じる実効的な電荷量の差,つまり接合に

蓄えられる電荷量は eを単位としない連続量になる.

Page 53: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

48 付録 A 単電子素子の基礎と特性計算方法

クーロンブロッケイド現象を観測するには熱的な揺らぎと量子的な揺らぎを抑えなければならな

い.熱エネルギーにより電子は kBT 程度のエネルギーをもつ.ブロッケイド状態を確保するにはこ

の値が電子がトンネリングするのに必要なエネルギーより低いことが要請される.ここで kBはボル

ツマン定数である.式 (A.2)より,ブロッケイド状態でトンネリングが起こるには e2=C 程度のエネ

ルギーが必要となるのでe2

C� kBT (A.4)

でなければならない.簡単な数値計算によると右辺と左辺の比は 1=100程度以下であることがわかっ

ており,これを用いると C = 1aFの時,10K程度以下に冷やさなければならないことになる.

トンネル接合に電圧V を印加してブロッケイド状態を解除した時の I�V 特性から定義される抵抗をトンネル抵抗RTと呼ぶ.量子的な揺らぎを抑えるにはトンネル抵抗が量子化抵抗RK = h=e2 ' 25:8

より大きくなければならない.

RT � RK (A.5)

物理的に意味するところは次の通りである.電荷がトンネルする頻度を �とすれば I = e� = V=Rと

なるので,一回のトンネリングにかかる時間はおおよそ 1=� = eR=V である.一方,電位差 V を電

荷一個が乗り越えるのに必要なエネルギーは �" = eV なので不確定性原理により帯電エネルギーが

確定するのに必要な時間は �t � h=eV 程度である.ここで hはプランク定数である.式 (A.5)が満

たされていれば接合の帯電効果とトンネル効果を別々に取り扱うことができ,個々のトンネル事象は

重ならず別々に起こると仮定できる.このような仮定の下での理論は半古典的理論9, 10)と呼ばれる.

単位時間に起こるトンネリングの回数をトンネル頻度と呼ぶ.半古典的理論下におけるトンネル頻

度は以下のようにして導かれる.11)トンネル前後の状態の存在確率がエネルギー差に応じたボルツマ

ン分布に従うものと仮定する.順方向のトンネル頻度を �+,逆方向のトンネル頻度を ��とすれば

�+

��= exp

��E

kBT

�(A.6)

となる.接合間を移動する電荷全体のトンネル頻度を �totとすれば

�tot = �+ � �� = �+�1� exp

�� �E

kBT

��(A.7)

となり,これから順方向のトンネル頻度は次式のように求まる.

�+ =�E

e2RT

h1� exp

�� �EkBT

�i (A.8)

A.2 シミュレーション方法

半古典的理論での単電子素子の特性はすべて式 (A.8)から計算できる.しかしトンネリングが確率

事象のため,計算にそれを取り入れる必要がある.ここで二通りのアプローチがある.一つはそれぞ

れの電荷の存在状態の確率を計算して実際の電荷の動きを平均値で追っていく方法,もう一つは個別

の電荷の挙動を計算するたびに答えが変わることで確率的事象を表現する方法である.単電子回路

シミュレーションにおいて,前者はマスター方程式法9, 10, 12, 14{19),後者はモンテカルロ法17{26)と呼

ばれている.

図 A.1に単電子インバータ11)の出力特性の計算結果を示す.入力を Highレベルから Lowレベル

にステップ関数状に変化させた直後の出力の変化の様子が描かれている.太線がマスター方程式法に

Page 54: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

A.2. シミュレーション方法 49

0 0.5 1

0

0.5

1

Time (ns)

VO

UT/V

DD

D

C

M

B

A

図 A.1: 入力を Highレベルから Lowレベルに変化させた直後の単電子インバータ11)の出力特性.太線がマスター方程式法,その他がモンテカルロ法による結果である.モンテカルロ法は 5回計算を行った.出力節点に接続された負荷容量の大きさは 4e=VDD である.

よる結果,他の線が 5回行ったモンテカルロ法による結果である.出力節点に接続された負荷容量の

大きさを 4e=VDDとしているため,電荷の離散的性質により,出力電位は VDDをほぼ 4等分したあ

たりになる.モンテカルロ法ではその様子が現れており,出力電位が階段状に変化している.一方,

マスター方程式法では平均化されているため離散的性質がかき消され滑らかな曲線で描かれている.

例えばステップ入力の 0.3ns後の出力電位は,今回行った 5回のモンテカルロ法では点 A,B,Cの

値にそれぞれ一回ずつ,点 Dの値に二回到達している.モンテカルロ法はこのように計算毎に値を

ちらばらせることで確率的事象を表現している.このモンテカルロ法の計算回数を無限回行い,点A

~Dおよびそれ以外の値に到達した回数をもとに平均値を求めるとマスター方程式法による結果の

点Mの値になる.

以下,それぞれの具体的な計算方法について説明する.ここではトンネル接合,キャパシタ,電圧

源によって構成される回路について扱い,抵抗を含んだ回路計算27{29)については省略する.

A.2.1 マスター方程式法

単電子回路におけるマスター方程式法は,アイランド中の電荷の状態それぞれの存在確率を計算す

る.アイランドとは電圧源が接続されていない節点のことである.図 A.2は二つのアイランドのあ

る単電子トランジスタを示す.この回路でアイランドにある (正)電荷を図に示すように me,neで

表すと,状態はこの電荷の組 (m;n)によって表現できる.例えば図 A.3では (m;n) = (0; 0),(1; 0),

(0; 1),(1; 1)の四つの状態が描かれている.状態 (m;n)の存在確率を P(m;n),状態 (m;n)から状態

Page 55: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

50 付録 A 単電子素子の基礎と特性計算方法

図 A.2: 二つのアイランドのある単電子トランジスタ.

図 A.3: 状態変化の様子.

(x; y)への遷移頻度を �(m;n)!(x;y)とすると,マスター方程式は次式で表される.

dP(x;y)

dt=

X(m;n)=すべての状態

�(m;n)!(x;y)P(m;n) �X

(m;n)=すべての状態

�(x;y)!(m;n)P(x;y) (A.9)

右辺第一項は状態 (x; y)に遷移しようとする頻度,第二項は状態 (x; y)から他の状態に遷移しようと

する頻度である.また X(m;n)=すべての状態

P(m;n) = 1 (A.10)

である.式 (A.9),(A.10)で算出される P(m;n)を用いれば,アイランド l内の平均電荷数 nl,平均

電位 Vlは以下のようになる.

nl =X

(m;n)=すべての状態

(状態 (m;n)での l内の電荷数)P(m;n) (A.11)

Vl =X

(m;n)=すべての状態

(状態 (m;n)での lの電位)P(m;n) (A.12)

接合 jを流れるトンネル電流 I は式 (2.6)で示した通り,

I = eX

(m;n);(x;y)=すべての状態

n(接合 jに関する�(m;n)!(x;y))� P(m;n)

Page 56: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

A.2. シミュレーション方法 51

�(方向を考慮した (m;n)! (x; y)の遷移で jに流れた電荷数)o

(A.13)

で与えられる.

一例として図 A.3の dP(1;0)=dtを示すと

dP(1;0)

dt=��(0;0)!(1;0)P(0;0) + �(0;1)!(1;0)P(0;1)

�� ��(1;0)!(0;0)P(1;0) + �(1;0)!(0;1)P(1;0)�

(A.14)

となる.ここで接合 1における電荷のトンネル頻度を図 A.2に示すように �+1 などで表すものとす

る.また接合 2,3で起こるコ・トンネリングを ��2;3で表す.すると式 (A.14)のそれぞれの �は図

A.3で示されるように次式で表される.

�(0;0)!(1;0) = (状態 (0; 0)の�+1 ) + (状態 (0; 0)の��2;3) (A.15)

�(0;1)!(1;0) = (状態 (0; 1)の��2 ) (A.16)

�(1;0)!(0;0) = (状態 (1; 0)の��1 ) (A.17)

�(1;0)!(0;1) = (状態 (1; 0)の�+2 ) (A.18)

式 (A.15)でわかるように,同じ状態変化があるトンネル頻度は加算される.(図A.2の回路ではたま

たま古典的理論の範囲ではそのような状態変化がないのでコ・トンネリングを持ち出したが,回路に

よっては古典的理論の範囲でもそのような変化がある.) また,電圧源 VDDに流れる電流 I は接合

1の電流で計算でき,電圧源の +から �への方向を正にとると

I = en�(状態 (0; 0)の�+1 )P(0;0) + (状態 (1; 0)の��1 )P(1;0)

�(状態 (0; 1)の�+1 )P(0;1) + (状態 (1; 1)の��1 )P(1;1)

o(A.19)

で算出される.

微分方程式で表されるマスター方程式の数値計算は微小時間�tに時間を区切って行う.以後簡単

のために状態を (m;n)の代わりに iなどで表すものとする.時刻 tにおける状態 iの存在確率を Pi(t)

とすると,�tを用いてマスター方程式は次式のように書き換えられる.

Pi(t+�t) =Xj

�j!i�tPi(t) +

0@1�X

j

�i!j�t

1APi(t) (A.20)

これを所望の時刻まで繰り返す.

マスター方程式は式 (2.5)で示されるように行列形式に書き換えられる.

dP

dt= �P (A.21)

ここで行列 �,ベクトル Pは次式で与えられる.

� =

0BBBBB@

��ij � �ik � � � � �ji �ki � � ��ij ��ji � �jk � � � � �kj � � ��ik �jk ��ki � �kj � � � � � � �...

......

. . .

1CCCCCA ; P =

0BBBBB@

Pi

Pj

Pk...

1CCCCCA (A.22)

ただし �ij は状態 iから j への遷移頻度である.もし時間 �tの間行列の各要素が変化しないなら,

式 (A.21)の解は次式のようになる.

P(t+�t) = P(t) exp(��t) (A.23)

Page 57: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

52 付録 A 単電子素子の基礎と特性計算方法

ここで,トンネル頻度の行列の各要素が変化しないことは,回路の外部電源電圧が変化しないことに

相当する.また,

exp(A) = I+A+A2

2+A3

3+ � � � (A.24)

である.式 (A.24)の計算は Pad�e近似13, 30{32)がよく使われている.

マスター方程式法では状態の数だけ行列の行,列が必要となる.そのため数値計算で取り扱うには

なんらかの形で状態数に制限を加える必要がある.回路動作のおおよその動作がわかっている場合は

事前に各アイランド中の電荷数の最大値,最小値を決めておく方法がある.その他,あるしきい値以

上 (以下)の存在確率の状態を生成 (破棄)したり,あるしきい値以下のトンネル頻度の遷移を破棄し

たりする方法が考えられている.

A.2.2 モンテカルロ法

モンテカルロ法では状態はただ一つに決めて,その状態変遷を確率的に行う.式 (A.9)に示すマス

ター方程式を再記述する.dPi(t)

dt=Xj

�jiPj(t)�Xj

�ijPi(t) (A.25)

現在 (t = 0)の状態が iであるとする.

Pi(0) = 1; Pj(0) = 0 (j 6= i) (A.26)

これを式 (A.25)に代入する.dPi(t)

dt= �

Xj

�ijPi(t) (A.27)

この微分方程式を解くと次式が得られる.

Pi(t) = exp

0@�X

j

�ijt

1A (A.28)

ここで式 (A.26)から積分定数を決定した.この式から時間を求めると次式になる.

t = � 1Pj �ij

ln (Pi(t)) (A.29)

この式から状態が遷移する時刻,つまり次のトンネリングが発生する時間 (トンネル間隔時間)を決

める.その時間は,結論を先に書くと,Pi(t)を 0 < r � 1なる一様乱数に置換えた

t = � 1Pj �ij

ln(r) (A.30)

で求まる.以下にこの理由を説明する.

今,ある歪んださいころがあり,その出る目の確率分布は図 A.4(a)であるとする.この確率分布

をもとに歪んださいころの出る目を乱数で決める場合,図 A.4(b)のようにそれぞれの目に対する確

率を並べ,それに対して 0から 1までの乱数を振ることによって決める.その結果,乱数の値と出る

目の関数は図 A.4(c)のようになる.

単電子素子の場合はさいころの目が連続量である場合に相当する.式 (A.28)で表される状態が遷

移するまでの時間とその時まで状態が遷移しない確率の関係を図 A.5(a)に示す.ここで時間を微小

Page 58: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

A.2. シミュレーション方法 53

(a)

(b)

(c)

図 A.4: (a)歪んださいころの目の確率分布.(b)確率を横軸にならべたもの.もしこのさいころの出る目をシミュレーションする場合,乱数を振り,図のように当たった目を出る目とする.(c)乱数の値と出る目との関係.

(a)(b)

図 A.5: (a)状態が遷移するまでの時間と状態が遷移しない確率の関係 (式 (A.28)).(b)状態が遷移する時間を乱数で決定する方法.

時間�tで区切る.時刻 0 � �tの間に遷移する確率は Pi(0) � Pi(�t),時刻 �t � 2�tの間に遷移

する確率は Pi(�t)� Pi(2�t)などで与えられ,これらがさいころの目に対応する.乱数で状態遷移

する時刻を決めるには図 A.5(b)で示すようにそれぞれの時刻の確率を並べて決める.今ある乱数の

値 rが

Pi((n+ 1)�t) < r � Pi(n�t) (n = 0; 1; 2; � � �) (A.31)

にある時,その時の状態遷移時刻 tは n�tと (n + 1)�tの間になる.(ここで同じ rであっても �t

の大きさによって nが変わることに注意する.)

n�t � t < (n+ 1)�t (A.32)

式 (A.28),(A.31)より

exp (��(n+ 1)�t) < r � exp (��n�t) (A.33)

対数をとる.

� 1

�ln(r) ��t < n�t � � 1

�ln(r) (A.34)

式 (A.32),(A.34)より n�tを消去する.(前述の通り nは �tに依存するので,�tの極限をとる関

Page 59: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

54 付録 A 単電子素子の基礎と特性計算方法

図 A.6: 一つの乱数 (r = 0:383)からトンネリングが起こる接合,方向,およびトンネル間隔時間の計算に使われる乱数 (rnew = 0:188)の算出方法.

係で消去する.)

� 1

�ln(r) ��t < t < � 1

�ln(r) + �t (A.35)

ここで �t! 0の極限をとれば式 (A.30)が求まる.

式 (A.30)より状態 iから他の状態へ遷移するまでの時間はわかるが,どのトンネル接合でどちら

の方向に電荷がトンネリングしてどの状態になったかの情報はない.これを決める方法は二つある.

一つは,接合および方向を決めて計算する方法である.22) 今,接合 sで +方向のトンネリングによ

り状態が変化したとする.このトンネリングのトンネル頻度を �+s とすると,逆の方向および他の接

合でのトンネリングは発生しないのでそれらのトンネル頻度は 0となり

Xj

�ij = �+s (A.36)

から,式 (A.30)は接合 sで +方向のトンネルが起こるまでの時間 t+s を表している.同様に逆方向,

他の接合でトンネルするまでの時間 t�s ,t+s0,t

�s0,� � �が (それぞれ別々の乱数を振ることで)求まる.

それらの中から最小のトンネル間隔時間のトンネリングを選び,他のトンネル事象は破棄する.なぜ

なら,他のトンネル事象が起こる前に最小時間のトンネリングが発生することになるので,自分以外

のトンネル頻度が 0という条件に反するからである.このようにして決めた接合と方向に電荷をト

ンネリングさせて次の電荷配置の状態にして,次のトンネル事象の計算を繰り返す.

もう一つは,接合および方向を確率的に決める方法である.20) 状態 iから他の状態へ遷移する頻度

はP

j �ijで与えられる.その中で接合 sで +方向のトンネリング確率は �+s =P

j �ij で与えられる.

よって,図 A.4(b),図 A.5(b)と同様の方法でトンネル事象の発生する接合,方向を決定する.通常

はトンネル間隔時間の決定,および接合と方向の決定のために二回乱数を振る必要があるが,図 A.6

に示す方法を使えば一回でよい.

両方の方法を比較する.前者の方法では,一つのトンネル事象の決定のために (接合数) � 2回乱

数を振る必要があるので時間がかかる.しかし計算中に保持しておかなければならないデータは最

小のトンネル間隔時間とそのトンネリングの接合,方向のみであり,メモリが少なくてすむ.一方,

後者の方法では,乱数を振る回数は一回もしくは二回ですむので比較的短時間で済む.しかし,すべ

ての接合と方向に関するトンネル頻度を記憶する必要があり,メモリの使用量は多い.またトンネル

頻度の和の計算で丸め誤差が発生する可能性がある.

Page 60: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

A.2. シミュレーション方法 55

今までの議論でわかるように,トンネリングが起こる前に電源電圧の変化があった場合はすべての

トンネル頻度が変化するので,そのトンネル間隔時間は破棄し,電源電圧を変化させて時間を進めた

後に新しいトンネル間隔時間を計算する.デバイスシミュレーションでは自己散乱 (self scattering)33)

という手法,つまり式 (A.30)において状態 iから状態 iへの遷移を含めることでP

j �ij を一定にす

る手法があるが,単電子回路においては電荷がトンネルするまでは回路全体のエネルギーの変化は

なくトンネル頻度の変化がないので,そのような手法は不要である.また,乱数の範囲は 0 < r � 1

としたが,r = 1ではトンネル間隔時間が 0ということになり取り扱いが難しくなるので,実際の数

値計算では 0 < r < 1を用いる.

モンテカルロ法では周期が長く前後の数との相関がない「良い」乱数の発生が必要である.計算機

上ではメモリ資源や計算時間の関係で疑似乱数が用いられ,「良い」乱数を発生させるための研究も多

くなされている.34) 本ハイブリッド回路シミュレータでは長周期で相関も非常に小さいMT法35, 36)

を用いている.

A.2.3 シミュレーション手法の比較

モンテカルロ法の長所は,単電子回路の動作をそのままシミュレーションするので,実際の動作

の様子を把握しやすい.しかし,滅多に起こらない事象の動作解析は実際問題不可能である.例え

ば,分や時間単位の単電子メモリのデータ保持時間の計算には年単位の計算時間が必要となる.ま

た,コ・トンネリングといった極小頻度のトンネル事象の解析にはモンテカルロ法が用いられること

はない.また,一次微分不可能な飛び飛びの値になるため,結果の二次利用がしにくいことも欠点で

ある.

一方,マスター方程式法では状態の確率が求まるので,少頻度のトンネリングの見積りも可能であ

る.しかし状態数の二乗に比例して行列が大きくなるので,計算機のメモリ容量および計算能力の面

から多節点の大規模回路の特性計算が実際問題不可能となる.また確率が重みとしてかけられた平

均値で結果が得られるので,特性のばらつきがわかりにくい.図 A.7(a)に示す単電子インバータの

入出力結果をマスター方程式法で求めたもの14)とモンテカルロ法で求めたものを図 A.7(b)に示す.

マスター方程式法による結果は綺麗なインバータ特性を示しており,この結果から文献 14ではトラ

ンジスタ A,Bとも「閉じて」いてクーロンブロッケイド状態にある,と間違った解釈をしている.

出力負荷容量 CLが無限大の時のトランジスタA,Bのクーロンブロッケイド領域を解析的に計算す

ると,図 A.7(b)のグレー領域で示す A,A'および B,B'にそれぞれなる.このことからインバー

タは両方のトランジスタとも「開いて」いるままであることがわかる.黒丸もしくは白丸で示すモン

テカルロ法による結果では,両トランジスタが「開いて」いるために出力が揺らいでいる様子がはっ

きりとわかる.このようにマスター方程式法の結果のみで判断することは危険である.その改良の一

つの方法として,マスター方程式における揺らぎの視覚化が提案されている.17, 18)

また,両方の方法を融合して少頻度の状態を計算する方法も提案されている.17{19) これは,モン

テカルロ法で存在確率の高い「親」の状態を調べ,そこからマスター方程式で存在確率の低い「子」

の状態を調べる方法である.この方法では通常の方法に比べて短時間で少頻度の状態が計算できる.

Page 61: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

56 付録 A 単電子素子の基礎と特性計算方法

(a)

0 0.1 0.2 0.3

0.1

0.2

0.3

A

A’

B’

B

Vin/(e/C)

Vou

t/(e/

C)

(b)

図 A.7: (a)サブゲートのない単電子トランジスタを用いた単電子インバータ.(b)入出力特性.太線がマスター方程式による結果 (文献 14図 13),白丸および黒丸がモンテカルロ法による計算を二回行った結果である.CL = 50e=VDD.グレー領域は,Aおよび A'はトランジスタ Aのクーロンブロッケイド領域,Bおよび B'はトランジスタ Bのクーロンブロッケイド領域である.これはインバータのトランジスタが両方とも「開いて」いることを示す.

Page 62: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

57

参考文献

1) D. V. Averin and K. K. Likharev, Mesoscopic Phenomena in Solids edited by B. L. Altshuler,

P. A. Lee and R. A. Webb, Chapter 6, Elsevier, Amsterdam, 1991.

2) M. H. Devoret and H. Grabert, Single Charge Tunneling edited by H. Grabert and M. H. De-

voret, Chapter 1, Plenum, New York, 1992.

3) K. K. Likharev and T. Claeson, \Single Electronics," Scienti�c American, pp. 50, June 1992.

4) H. Grabert \Single Charge Tunneling: a Brief Introduction," Z. Phys. B 85, 319 (1991).

5) A. N. Korotkov, \Coulomb Blockade and Digital Single-Electron Devices" in Molecular Elec-

tronics edited by J. Jortner and M. A. Ratner, pp. 157, Blackwell, Oxford; cond-mat/9602165.

6) L. J. Geerligs, V. F. Anderegg, P. A. M. Holweg, J. E. Mooij, H. Pothier, D. Esteve, C. Urbina

and M. H. Devoret, \Frequency-Locked Turnstile Device for Single Electrons," Phys. Rev.

Lett. 64, 2691 (1990).

7) V. F. Anderegg, L. J. Geerligs and J. E. Mooij, \Frequency-Determined Current with a Turn-

stile Device for Single Electrons," Physica B 165&166, 61 (1990).

8) L. J. Geerligs, \The Frequency-Locked Turnstile Device for Single Electrons," Surface Science

263, 396 (1992).

9) D. V. Averin and K. K. Likharev, \Coulomb Blockade of Single-Electron Tunneling, and

Coherent Oscillations in Small Tunnel Junctions," J. Low Temp. Phys. 62, 345 (1986).

10) K. K. Likharev, \Correlated Discrete Transfer of Single Electrons in Ultrasmall Tunnel Junc-

tions," IBM J. Res. Develop. 32, 144 (1988).

11) J. R. Tucker, \Complementary Digital Logic Based on the \Coulomb Blockade"," J. Appl.

Phys. 72, 4399 (1992).

12) K. Mullen, E. Ben-Jacob, R. C. Jaklevic and Z. Schuss, \I-V Characteristics of Coupled

Ultrasmall-Capacitance Normal Tunnel Junctions," Phys. Rev. B 37, 98 (1988).

13) H. D. Jensen and J. M. Martinis, \Accuracy of the Electron Pump," Phys. Rev. B 46, 13407

(1992).

14) A. N. Korotkov, R. H. Chen and K. K. Likharev, \Possible Performance of Capacitively

Coupled Single-Electron Transistors in Digital Circuits," J. Appl. Phys. 78, 2520 (1995).

Page 63: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

58 付録 A 単電子素子の基礎と特性計算方法

15) L. R. C. Fonseca, A. N. Korotkov, K. K. Likharev and A. A. Odintsov, \A Numerical Study

of the Dynamics and Statistics of Single Electron Systems," J. Appl. Phys. 78, 3238 (1995).

16) N. Mokhlesi, R. Jazayeri and D. B. Janes, \A Solution for Current-Voltage Characteristics of

Multiple Coupled Mesoscopic Tunnel Junctions," Superlatt. Microstr. 21, 15 (1997).

17) S. Amakawa, H. Majima, H. Fukui, M. Fujishima and K. Hoh, \Single-Electron Circuit Sim-

ulation," IEICE Trans. Electron E81-C, 21 (1998).

18) M. Fujishima, S. Amakawa and K. Hoh, \Circuit Simulators Aiming at Single-Electron Inte-

gration," Jpn. J. Appl. Phys. 37, 1478 (1998).

19) C. Wasshuber, H. Kosina and S. Selberherr, \SIMON { a Simulator for Single-Electron Tunnel

Devices and Circuits," IEEE Trans. Computer-Aided Design CAD-16, 937 (1997).

20) N. S. Bakhvalov, G. S. Kazacha, K. K. Likharev and S. I. Serdyukova, \Single-Electron Solitons

in One-Dimensional Tunnel Structures," Sov. Phys. JETP 68, 581 (1989).

21) S. A. Roy, \Simulation Tools for the Analysis of Single Electronic Systems," Ph. D thesis,

Chapter 5, University of Glasgow, 1994.

22) N. Kuwamura, K. Taniguchi and C. Hamaguchi, \Simulation of Single-Electron Logic Cir-

cuits," Electron & Commun. Jpn. 77, Pt. 2, 65 (1994);「単一電子論理回路のシミュレーショ

ン」, 電子情報通信学会論文誌 77-C-II, 221 (1994).

23) W. Roesner, F. Hofmann, T. Vogelsang and L. Risch, \Simulation of Single Electron Circuits,"

Microelectronic Engineering 27, 55 (1995).

24) C. Wasshuber and H. Kosina, \Single-Electron Device and Circuit Simulator," Superlatt.

Microstr. 21, 37 (1997).

25) X. Wang, V. P. Roychowdhury and P. Balasingam, \Scalable Massively Parallel Algorithms

for Computational Nanoelectronics," Prallel Computing 22, 1931 (1997).

26) K. A. Matsuoka and K. K. Likharev, \Shot Noise of Single-Electron Tunneling in One-

Dimensional Arrays," Phys. Rev. B 57, 15613 (1998).

27) K. K. Likharev, \Single-Electron Transistors: Electrostatic Analogs of the DC SQUIDs," IEEE

Trans. Magn. MAG-23, 1142 (1987).

28) A. N. Korotkov, \Single-Electron Transistor Controlled with a RC Circuit," Phys. Rev. B 49,

16518 (1994).

29) A. N. Korotkov, \Theoretical Analysis of the Resistively Coupled Single-Electron Transistor,"

Appl. Phys. Lett. 72, 3227 (1998).

30) G. H. Golub and C. F. Van Loan,Matrix Computations, Chapter 11, Johns Hopkins University

Press, 1996.

Page 64: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

A.2. シミュレーション方法 59

31) G. A. Baker, Jr., P. Graves-Morris, Pad�e Approximants, Chapter 1, Cambridge Unversity

Press, 1996.

32) C. Wasshuber, \About Single-Electron Devices and Circuits,"

Ph. D thesis, Appendix G, Vienna University of Technology, 1997.

(http://www.iue.tuwien.ac.at/diss/wasshuber/diss/diss.html)

33) C. Moglestue, Monte Carlo Simulation of Semiconductor Devices, pp. 123, Chapman & Hall,

London, 1993.

34) 宮武修,脇本和昌,乱数とモンテカルロ法,森北出版 (1978).

35) M. Matsumoto and T. Nishimura, \Mersenne Twister: A 623-Dimensionally Equidistributed

Uniform Pseudo-Random Number Generator," ACM Trans. on Modeling and Computer Sim-

ulation 8, 3 (1998).

36) 松本眞,数学セミナー 1998年 3月号,pp. 27.

Page 65: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

60

付録 B

キャパシタ行列

 トンネル接合とキャパシタ,電圧源からなる回路において,節点電位Vと接合やキャパシタに蓄

えられた電荷Qとの関係は次式で表される.

CV = Q (B.1)

ここで Cは容量に関する節点行列で,

(C)ij =

(i = j : 節点 iにつながる容量の和

i 6= j : �(節点 i,j 間の容量の和)(B.2)

で与えられる.行列の次元は,電圧源がつながっていない節点 (アイランド )の数を Ni,電圧源がつ

ながっている節点 (バイアス節点)の数を Nbとして (Ni +Nb)� (Ni +Nb)となる.(SPICEに組み

込む単電子素子の外部節点はバイアス節点として取り扱う.) アイランドがバイアス節点より前にな

るように行列の行,列を入れ替えると,次式のように書き換えられる. CII CIB

CBI CBB

! VI

VB

!=

QI

QB

!(B.3)

ここで CIIは Ni �Niの次元をもつアイランド相互間の容量に関する行列,CBBは Nb �Nbの次元

をもつバイアス節点相互間の容量に関する行列,CIBは Ni �Nbの次元をもつアイランド・バイア

ス節点間の容量に関する行列を表す.また CBI = CTIBとなる.以後,式中に現れる行列はどれもこ

のような行,列の並び替えを行った (Ni +Nb)� (Ni +Nb)の次元をもつものとする.式 (B.3)より

アイランドの電位は次式で与えられる.

VI = C�1II QI �C�1II CIBVB (B.4)

接合 sが節点 n,n0 間に接続されているとする.バイアス節点の電位をすべて 0とし,アイラン

ド lに電荷 qを置き,他の節点の電荷を 0とすれば,節点 nおよび n0の電位 Vl;n,Vl;n0 はそれぞれ

Vl;n =

C�1II 0

0 0

!nl

q; Vl;n0 =

C�1II 0

0 0

!n0l

q (B.5)

である.よって,式 (2.7)の Ql;m;sは接合 sの容量を CTsとし q = eを代入して次式で与えられる.

Ql;n;s = CTs(Vl;n � Vl;n0) = eCTs

( C�1II 0

0 0

!nl

� C�1II 0

0 0

!n0l

)(B.6)

Page 66: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

61

同様にバイアス節点mの電位を vとし,他のバイアス節点の電位を 0,アイランド中の電荷を 0

とすれば,節点 n,n0の電位は次式で与えられる.

Vm;n =

0 �C�1II CIB

0 1

!nm

v; Vm;n0 =

0 �C�1II CIB

0 1

!n0m

v (B.7)

よって式 (2.9)で用いられる Cm;n;sは v = 1を代入して次式で与えられる.

Cm;n;s = CTs(Vm;n � Vm;n0) = CTs

( 0 �C�1II CIB

0 1

!nm

� 0 �C�1II CIB

0 1

!n0m

)(B.8)

式 (2.14)で用いられる接合 sの臨界電荷量 qcsは

qcs =eCTs

2(CTs + CEXTs)(B.9)

となる.1{3) ここで CEXTsはバイアス節点の電位をすべて 0とした時のトンネル接合 sに接続され

た等価容量である.いま,接合が接続されている節点 n,n0にそれぞれ電荷 q,�qを蓄積させたとする.この時の節点間の電位を V とすれば

q = (CTs + CEXTs)V (B.10)

が成り立つ.V は式 (B.5)より導かれ,その結果臨界電荷量は

qcs =eCTs2

( C�1II 0

0 0

!nn

� C�1II 0

0 0

!nn0

� C�1II 0

0 0

!n0n

+

C�1II 0

0 0

!n0n0

)

(B.11)

となる.これでわかるように,バイアス節点だけにつながれたトンネル接合の臨界電荷量は 0になっ

てしまうので,そのような場合は別に計算する必要がある.単独の単電子回路シミュレータにおいて

は,これは電圧源に直接トンネル接合をつなぐ場合に相当するので問題とならない.

Page 67: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

62

参考文献

1) L. J. Geerligs, V. F. Anderegg, P. A. M. Holweg, J. E. Mooij, H. Pothier, D. Esteve, C. Urbina

and M. H. Devoret, \Frequency-Locked Turnstile Device for Single Electrons," Phys. Rev.

Lett. 64, 2691 (1990).

2) V. F. Anderegg, L. J. Geerligs and J. E. Mooij, \Frequency-Determined Current with a Turn-

stile Device for Single Electrons," Physica B 165&166, 61 (1990).

3) L. J. Geerligs, \The Frequency-Locked Turnstile Device for Single Electrons," Surface Science

263, 396 (1992).

Page 68: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

63

付録 C

SPICEの過渡解析ルーチンとユーザー定義素子

C.1 回路方程式と過渡解析アルゴリズム

C.1.1 回路方程式

回路シミュレータでの過渡解析は回路方程式1, 2)

ZI = V (C.1)

もしくは

YV = I (C.2)

を計算している.ここで I,V,Z,Yはそれぞれ電流ベクトル,電圧ベクトル,インピーダンス行

列,アドミッタンス行列を表す.SPICEは式 (C.2)を用いて解析をしているが,式 (C.1)を用いるも

のもある.3) ここでは式 (C.2)による過渡解析の方法について説明をする.4, 5)

図 C.1に示す抵抗 Rとキャパシタ C の回路において,電圧源 V の +端子と抵抗が接続している

節点を 1,抵抗とコンデンサが接続している節点を 2,それぞれの電位を V1および V2,電圧源を +

端子から �端子へ流れる電流を I とすれば,回路方程式は以下の通りになる.0BBBBBBB@

1R � 1

R 0

� 1R

1R + C d

dt �C ddt

0 �C ddt

C ddt

1CCCCCCCA

0BBBBBBB@

V1

V2

0

1CCCCCCCA

=

0BBBBBBB@

�I

0

I

1CCCCCCCA

� � � � � �

� � � � � �

� � � � � �

節点 1に関する行

節点 2に関する行

アースに関する行

(C.3)

V1 = V (C.4)

式 (C.3)左辺行列が一次従属であること,アース電位が 0であることから,アースに関する行およ

び第 3列目が消去できる.そして式 (C.4)を行列に組み込むことにより次式のように変形できる.0BBBBBBB@

1R � 1

R 1

� 1R

1R + C d

dt0

1 0 0

1CCCCCCCA

0BBBBBBB@

V1

V2

I

1CCCCCCCA

=

0BBBBBBB@

0

0

V

1CCCCCCCA

� � � � � �

� � � � � �

� � � � � �

節点 1に関する行

節点 2に関する行

電圧源に関する行

(C.5)

Page 69: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

64 付録 C SPICEの過渡解析ルーチンとユーザー定義素子

図 C.1: 抵抗とキャパシタ,電圧源からなる回路.

C.1.2 後退オイラー法

式 (C.5)は時間に関する微分方程式であるが,数値計算で解くために近似を行う.後退オイラー法

はその近似法の一つである.キャパシタに流れる電流を Icとし,現在のキャパシタの節点間の電位

差を V 現,�t時間後の未来の電位を V 未 のようにすると,

I未c =C(V 未 � V 現)

�t(C.6)

で表される.ここで現在の値は既知で,電圧源の電位 V を除く未来の値は未知である.抵抗に流れ

る未来の電流が (V 未1 �V 未2 )=Rで与えられることを考慮すると,式 (C.5)は次式のように書き換えら

れる. 0BBBBBBB@

1R � 1

R 1

� 1R

1R + C

�t 0

1 0 0

1CCCCCCCA

0BBBBBBB@

V 未1

V 未2

I未

1CCCCCCCA

=

0BBBBBBBB@

0

C(V 現2 � 0)�t

V 未

1CCCCCCCCA

(C.7)

左辺の行列の各要素は既知で,右辺のベクトルの各要素も既知なので,行列の逆行列を左からかけれ

ば未知の V 未1 ,V未2 ,I

未が求まる.

0BBBBBBB@

V 未1

V 未2

I未

1CCCCCCCA

=

0BBBBBBB@

1R � 1

R 1

� 1R

1R + C

�t 0

1 0 0

1CCCCCCCA

�10BBBBBBBB@

0

C(V 現2 � 0)�t

V 未

1CCCCCCCCA

=

0BBBBBBBBB@

0 0 1

0 11=R+ C=�t

� 1=R1=R+ C=�t

11=R

1=R+ C=�t� C=�tR1=R+ C=�t

1CCCCCCCCCA

0BBBBBBBB@

0

C(V 現2 � 0)�t

V 未

1CCCCCCCCA

(C.8)

ここで,例えば t < 0において電圧源の電位が 0,t � 0で V0とすれば,t = 0+において V1 = V0,

V2 = 0となり,それを初期値として式 (C.8)で計算すれば t = �tの時点の電位がわかり,またそれ

Page 70: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

C.1. 回路方程式と過渡解析アルゴリズム 65

を用いて t = 2�tの電位がわかる.これを繰り返すことによって図 C.1の回路特性が計算できる.

C.1.3 台形公式

後退オイラー法より精度の高い近似法として台形公式がある.台形公式ではキャパシタに流れる

電流は

I未c =2C(V 未 � V 現)

�t� I現c (C.9)

で表される.式 (C.8)を台形公式で書き換えると次式のようになる.

0BBBBBBB@

V 未1

V 未2

I未

1CCCCCCCA

=

0BBBBBBBBB@

0 0 1

0 11=R+ C=�t

� 1=R1=R+ C=�t

11=R

1=R+ C=�t� C=�tR1=R+ C=�t

1CCCCCCCCCA

0BBBBBBBB@

0

2C(V 現2 � 0)�t + I現c

V 未

1CCCCCCCCA

(C.10)

右辺電流ベクトルに I現c が含まれていることに注意する.I現c には式 (C.9)でわかるように過去の電

位差 V 過 を含む.そのため解析開始直後の計算では台形公式は使えない.SPICEでは解析開始直後

は後退オイラー法で計算を行い,それ以後は基本的に台形公式を用いて計算をしている.

台形公式は過去の電流を用いて修正を行っているため,急激な変化に対しては本来の値から大き

くずれることがあり,場合によっては計算結果が発振してしまう.6, 7) そのため図 2.3で示すような電

源電圧が急激に変化する点では後退オイラー法が用いられる.

C.1.4 電圧依存非線形素子の取り扱い

図 C.1の例では抵抗,キャパシタともアドミッタンス行列の要素に関係する値 (1=R,C=�tなど)

は素子の両端電位差に依存しない.そのため式 (C.8)や (C.10)からすぐに式を満たす未来の値 V 未

が求まる.しかしダイオードに寄生するキャパシタなど半導体材料から生じるキャパシタは電圧依存

性がある.その場合は,式 (C.8)や (C.10)を一度用いて計算した値にまだ誤差が含まれていると考

えられる.図 C.1のキャパシタに電圧依存性があると仮定する.後退オイラー法での近似は

I未c =C未(V 未 � V 現)

�t(C.11)

となるので,式 (C.8)は次式のように書き換えられる.

0BBBBBBB@

V 未1

V 未2

I未

1CCCCCCCA

=

0BBBBBBBBBB@

0 0 1

0 11=R+ C未=�t

� 1=R

1=R+ C未=�t

11=R

1=R+ C未=�t� C未=�tR

1=R+ C未=�t

1CCCCCCCCCCA

0BBBBBBBB@

0

C未(V 現2 � 0)�t

V 未

1CCCCCCCCA

(C.12)

ここで右辺のアドミッタンス行列の逆行列および電流ベクトルに V 未がわからないと決まらない C未

が含まれていることに注意する.つまり右辺にも左辺にも未知変数があり,通常このままでは解けな

Page 71: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

66 付録 C SPICEの過渡解析ルーチンとユーザー定義素子

い.SPICEでは次のようにして計算をしている.解析開始直後は C未 = C現 で一旦計算しそれで求

まった V 未 を用いてもう一度計算をする.そしてそれを繰り返し V 未 の値が収束したら時間を進め

る.それ以外では過去の電位 V 過がすでにわかっているので V 過と V 現と時間刻み�t過!現,�t現!未により V 未を予測し,その値を用いて C未 を計算する.そしてその C未により式 (C.12)の最初の答

え V 未を求める.そして解析開始直後と同様に,その V 未を用いて収束するまで繰り返し計算を行っ

た後,時間を進める.(このような繰り返しにより解を求める方法はニュートン・ラフソン法と呼ば

れる.)

以上の説明でわかるように,過渡解析の計算は解析開始直後,直後以外の繰り返しの最初,繰り

返しの途中の三つの状態を持つ.SPICEでは ckt�>CKTmode変数にその状態が記憶されている.つまり解析直後は MODEINITTRAN,繰り返しの最初は MODEINITPRED,繰り返しの途中は

MODEINITFLOATのビットが立っている.

時間依存のあるキャパシタの台形公式による近似は

I未c =2C未(V 未 � V 現)

�t� C未

C現I現c (C.13)

となり8),後退オイラー法と同様にアドミッタンス行列の逆行列および電流ベクトルに C未があるた

め,同様の手法がとられる.

C.1.5 LU分解

大規模回路ではアドミッタンス行列の次元が大きくなる一方で素子の接続状況を考慮すると行列

の零要素が増加するため,SPICEではスパース行列で取り扱いメモリ効率をよくしている.しかし

アドミッタンス行列の逆行列を求めると,逆行列には非零要素が多くメモリ効率が悪くなる.

式 (C.7)に戻ると,今までは逆行列を求めて V 未 などを計算した.しかし,我々が必要とする値は

逆行列ではなくて V 未 である.そこで SPICEでは逆行列から V 未 を求めるのではなく,行列の LU

分解から V 未 を求めている.

LU 分解5, 9)とは行列 Aを単位左下三角行列 L ((L)ii = 1,(L)ij = 0(i < j))と右上三角行列

U((L)ij = 0(i < j))との積A = LUの形に表すことである.ベクトル xに関する方程式Ax = bに

対し,Ly = bとなる yを計算し,Ux = yとなる xを計算することで解を求める.Lおよび Uの

特徴より,ガウス・ジョルダン法などの逆行列を求める方法に比べて約 3分の 1の計算量で解が求ま

る.10) また,大規模回路でのアドミッタンス行列は零要素の多い疎構造であるが,Lおよび Uはそ

の構造を継承するため同じく疎構造となり,逆行列を求める場合に比べメモリ効率がよくなる.

C.2 Berkeley SPICEの拡張

この節では Berkeley SPICEにユーザー定義素子の追加する方法,および出力データを間引いて減

らす方法について,Berkeley SPICEバージョン 3f411)を基にして説明をする.オリジナルのプログ

ラムを修正する場合は行頭に「(行番号)>>」を,追加する場合は行番号なしに行頭に「>>」を記述し

ている.新たに作成するファイルはファイル名の後に「(新)」と記述している.

Page 72: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

C.2. Berkeley SPICEの拡張 67

C.2.1 ユーザー定義素子の追加

ユーザー定義素子は任意の単電子素子が取り扱えるようにするため,動的リンク形式により柔軟

性を持たせて作成している.このユーザー定義素子のプログラムは主に大阪大学工学部小川徹氏 (現

大阪大学大学院工学研究科)により作成された.

ユーザー定義素子は Yで始まる素子で作る.SPICEのプログラムの制限により,素子一つのノー

ド数は最大 5,インスタンスの数は最大 5とする.またモデルの数も最大 5とする素子の記述フォー

マットは以下の通りである.

y<device_name> <the_number_of_nodes> <the_number_of_instances>

<node1> ... <model_name> <instance1> ...

実装の都合上モデル名は省略できない.モデルの記述は次の通りである.

.model <model_name> y(mudef1=... mudef2=...)

モデルのパラメータ名は mudef1,...,mudef5とする.モデルを使わないなら ()の中は空にする.

まず SPICEの字句解析部分にユーザー定義素子を追加する.

src/include/inpdefs.h

13: #include "inpptree.h"

>> #include "ystructs.h"

14:

129: void INP2W(GENERIC*,INPtables*,card*);

>> void INP2Y(GENERIC*,INPtables*,card*);

130: void INP2Z(GENERIC*,INPtables*,card*);

190: void INP2W();

>> void INP2Y();

191: void INP2Z();

src/lib/inp/inppass2.c

144: break;

145:

>> case 'Y': /* Yname <#node> <#instance> <node1> ... */

>> INP2Y(ckt,tab,current);

>> break;

146: case '.': /* .<something> Many possibilities */

src/lib/inp/inpdomod.c

157: INPmakeMod(modname,type,image);

>> }else if(strcmp(typename,"y") == 0) {

>> type = INPtypelook("UserDefined");

>> if(type < 0) {

>> err = INPmkTemp(

>> "Device type UserDefined not available in this binary\n");

>> }

>> INPmakeMod(modname,type,image);

158: } else {

src/include/ystructs.h (新)

typedef struct sYOUdefinition {

int NODE_num;

int INSTANCEPARAM_num;

int MODELPARAM_num;

} YOUdefinition;

Page 73: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

68 付録 C SPICEの過渡解析ルーチンとユーザー定義素子

src/lib/inp/inp2y.c (新)

#include "spice.h"

#include <stdio.h>

#include "ifsim.h"

#include "inpdefs.h"

#include "inpmacs.h"

#include "fteext.h"

#include "suffix.h"

/***

#include <stdlib.h>

*** `setnev' in stdlib.h conflicts that in cpstd.h ***

***/

#define MAX_NODES_NUMBER 5

#define MAX_INSTANCE_NUMBER 5

void

INP2Y(ckt,tab,current)

GENERIC *ckt;

INPtables *tab;

card *current;

{

/*

parse Y definition card

Yname <#node> <#instance> <node>*x <modelname> <val>*x

*/

int i;

int mytype;

int type;

char *line;

char *name;

char *model;

double *val;

int error;

int error1;

int sumerror=0;

INPmodel *thismodel;

GENERIC *mdfast;

GENERIC *fast;

IFvalue ptemp;

int waslead;

double leadval;

IFuid uid;

YOUdefinition YOUdefine;

char **nname, *numname;

GENERIC **node;

char *YOUkey[] = {

"udef1",

"udef2",

"udef3",

"udef4",

"udef5"

};

mytype = INPtypelook("UserDefined");

if(mytype < 0 ) {

LITERR("Device type UserDefine not supported by this binary\n")

return;

}

line = current->line;

INPgetTok(&line,&name,1); /** read the device name from a circuit file **/

INPinsert(&name,tab); /** insert the device name into the symbol table **/

INPgetTok(&line,&numname,1); /** read the number of nodes **/

YOUdefine.NODE_num = numname[0] - '0';

#if 0 /*** comment out ***/

YOUdefine.NODE_num = atoi(numname);

#endif

free(numname);

if(YOUdefine.NODE_num <= 1 || YOUdefine.NODE_num > MAX_NODES_NUMBER){

Page 74: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

C.2. Berkeley SPICEの拡張 69

LITERR("DEV[Y]:ERROR Bad number of nodes\n");

return;

}

INPgetTok(&line,&numname,1); /** read the number of instances **/

YOUdefine.INSTANCEPARAM_num = numname[0] - '0';

#if 0 /*** comment out ***/

YOUdefine.INSTANCEPARAM_num = atoi(numname);

#endif

free(numname);

if(YOUdefine.INSTANCEPARAM_num < 0 ||

YOUdefine.INSTANCEPARAM_num > MAX_INSTANCE_NUMBER){

LITERR("DEV[Y]:ERROR Your Instance Number is too large\n");

return;

}

nname = (char **) calloc((YOUdefine.NODE_num),sizeof( char * ));

if(!nname) {

LITERR("DEV[Y]:ERROR Can't malloc for nname\n");

return;

}

node = (GENERIC **) calloc((YOUdefine.NODE_num),sizeof( GENERIC * ));

if(!node) {

LITERR("DEV[Y]:ERROR Can't malloc for node\n");

free(nname);

return;

}

val = (double *) calloc((YOUdefine.INSTANCEPARAM_num),sizeof( double ));

if(!val) {

LITERR("DEV[Y]:ERROR Can't malloc for val\n");

free(nname);

free(node);

return;

}

for(i = 0;i < (YOUdefine.NODE_num);i++) {

INPgetTok(&line,(nname+i),1);

INPtermInsert(ckt,(nname+i),tab,(node+i));

}

free(nname);

INPgetTok(&line,&model,1);

for(i = 0;i < (YOUdefine.INSTANCEPARAM_num);i++) {

*(val+i) = INPevaluate(&line,&error1,1);

sumerror += error1;

}

if(*model) {

INPinsert(&model,tab);

thismodel = (INPmodel *)NULL;

current->error = INPgetMod(ckt,model,&thismodel,tab);

if(thismodel != NULL) {

if(mytype != thismodel->INPmodType) {

LITERR("incorrect model type")

free(node);

free(val);

return;

}

mdfast = thismodel->INPmodfast;

type = thismodel->INPmodType;

} else {

type = mytype;

if(!tab->defYmod) {

IFnewUid(ckt,&uid,(IFuid)NULL,"Y",UID_MODEL,(GENERIC**)NULL);

IFC(newModel, (ckt,type,&(tab->defYmod),uid))

}

mdfast = tab->defYmod;

}

IFC(newInstance,(ckt,mdfast,&fast,name))

} else {

type = mytype;

if(!tab->defYmod) {

IFnewUid(ckt,&uid,(IFuid)NULL,"Y",UID_MODEL,(GENERIC**)NULL);

IFC(newModel, (ckt,type,&(tab->defYmod),uid))

Page 75: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

70 付録 C SPICEの過渡解析ルーチンとユーザー定義素子

}

IFC(newInstance,(ckt,tab->defYmod,&fast,name))

}

if(sumerror == 0) {

for(i = 0;i < (YOUdefine.INSTANCEPARAM_num);i++) {

ptemp.rValue = *(val+i);

GCA(INPpName,(YOUkey[i],&ptemp,ckt,type,fast))

}

}

else{

LITERR("DEV[Y]:ERROR Instance Parameter Reading")

free(val);

free(node);

return;

}

free(val);

for(i = 0;i < (YOUdefine.NODE_num);i++) {

IFC(bindNode,(ckt,fast,i+1,*(node+i)))

}

((GENinstance *)fast)->YOUnumNode = (YOUdefine.NODE_num);

free(node);

return;

}

次にユーザー定義素子を追加する.ただしこの部分は数値解析を行うメインルーチンとのインター

フェース部分であり,実際に素子の特性を記述する部分ではない.

src/lib/dev/you/you.c (新)

#include "spice.h"

#include <stdio.h>

#include "../mos6/mos6defs.h"

#include "devdefs.h"

#include "ifsim.h"

#include "suffix.h"

IFparm YOUpTable[] = {

IOPP( "udef1",1, IF_REAL,"User Define Parameter"),

IOPP( "udef2",2, IF_REAL,"User Define Parameter"),

IOPP( "udef3",3, IF_REAL,"User Define Parameter"),

IOPP( "udef4",4, IF_REAL,"User Define Parameter"),

IOPP( "udef5",5, IF_REAL,"User Define Parameter")

};

IFparm YOUmPTable[] = {

IOPQ( "mudef1",101, IF_REAL,"User Define Parameter"),

IOPQ( "mudef2",102, IF_REAL,"User Define Parameter"),

IOPQ( "mudef3",103, IF_REAL,"User Define Parameter"),

IOPQ( "mudef4",104, IF_REAL,"User Define Parameter"),

IOPQ( "mudef5",105, IF_REAL,"User Define Parameter"),

IP( "y", 106, IF_FLAG,"Device is a User Define Model")

};

char *YOUnames[] = {"Y1","Y2","Y3","Y4","Y5"};

int YOUnSize = NUMELEMS(YOUnames);

int YOUpTSize = NUMELEMS(YOUpTable);

int YOUmPTSize = NUMELEMS(YOUmPTable);

int YOUiSize = sizeof(MOS6instance);

int YOUmSize = sizeof(MOS6model);

src/lib/dev/you/youext.h (新)

#ifdef __STDC__

extern int YOUask(CKTcircuit*,GENinstance*,int,IFvalue*,IFvalue*);

extern int YOUdelete(GENmodel*,IFuid,GENinstance**);

extern void YOUdestroy(GENmodel**);

extern int YOUload(GENmodel*,CKTcircuit*);

extern int YOUmodAsk(CKTcircuit*,GENmodel*,int,IFvalue*);

extern int YOUmDelete(GENmodel**,IFuid,GENmodel*);

extern int YOUmParam(int,IFvalue*,GENmodel*);

extern int YOUparam(int,IFvalue*,GENinstance*,IFvalue*);

Page 76: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

C.2. Berkeley SPICEの拡張 71

extern int YOUpzLoad(GENmodel*,CKTcircuit*,SPcomplex*);

extern int YOUsAcLoad(GENmodel*,CKTcircuit*);

extern int YOUsLoad(GENmodel*,CKTcircuit*);

extern int YOUsSetup(SENstruct*,GENmodel*);

extern void YOUsPrint(GENmodel*,CKTcircuit*);

extern int YOUsetup(SMPmatrix*,GENmodel*,CKTcircuit*,int*);

extern int YOUtemp(GENmodel*,CKTcircuit*);

extern int YOUnoise(int,int,GENmodel*,CKTcircuit*,Ndata*,double*);

extern int YOUunsetup(GENmodel*,CKTcircuit*);

extern int YOUtrunc(GENmodel*,CKTcircuit*,double*);

extern int YOUfindBranch(CKTcircuit*,GENmodel*,IFuid);

extern int YOUaccept(CKTcircuit*,GENmodel*);

extern int YOUsetic(GENmodel*,CKTcircuit*);

extern int YOUconvTest(GENmodel*,CKTcircuit*);

extern int YOUsenUpdate(GENmodel*,CKTcircuit*);

extern int YOUsenTrunc(GENmodel*,CKTcircuit*,double*);

extern int YOUdisto(int,GENmodel*,CKTcircuit*);

extern int YOUacLoad(GENmodel*,CKTcircuit*);

#else /* stdc */

extern int YOUask();

extern int YOUdelete();

extern void YOUdestroy();

extern int YOUload();

extern int YOUmodAsk();

extern int YOUmDelete();

extern int YOUmParam();

extern int YOUparam();

extern int YOUpzLoad();

extern int YOUsAcLoad();

extern int YOUsLoad();

extern int YOUsSetup();

extern void YOUsPrint();

extern int YOUsetup();

extern int YOUtemp();

extern int YOUnoise();

extern int YOUunsetup();

extern int YOUtrunc();

extern int YOUfindBranch();

extern int YOUaccept();

extern int YOUsetic();

extern int YOUconvTest();

extern int YOUsetUpdate();

extern int YOUsenTrunc();

extern int YOUdisto();

extern int YOUacLoad();

#endif /* stdc */

src/lib/dev/you/youitf.h (新)

#ifdef DEV_you

#ifndef DEV_YOU

#define DEV_YOU

#include "youext.h"

extern IFparm YOUpTable[ ];

extern IFparm YOUmPTable[ ];

extern char *YOUnames[ ];

extern int YOUpTSize;

extern int YOUmPTSize;

extern int YOUnSize;

extern int YOUiSize;

extern int YOUmSize;

SPICEdev YOUinfo = {

{

"UserDefined",

"User Defined Device",

&YOUnSize,

&YOUnSize,

Page 77: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

72 付録 C SPICEの過渡解析ルーチンとユーザー定義素子

YOUnames,

&YOUpTSize,

YOUpTable,

&YOUmPTSize,

YOUmPTable,

0

},

YOUparam,

YOUmParam,

YOUload,

YOUsetup,

YOUunsetup,

YOUsetup,

YOUtemp,

YOUtrunc,

YOUfindBranch,

YOUacLoad, /* ac load and normal load are identical */

YOUaccept,

YOUdestroy,

#ifdef DELETES

YOUmDelete,

YOUdelete,

#else /* DELETES */

NULL,

NULL,

#endif /* DELETES */

YOUsetic,

YOUask,

YOUmodAsk,

#ifdef AN_pz

YOUpzLoad,

#else /* AN_pz */

NULL,

#endif /* AN_pz */

YOUconvTest,

#ifdef AN_sense2

YOUsSetup,

YOUsLoad,

YOUsenUpdate,

YOUsAcLoad,

YOUsPrint,

YOUsenTrunc,

#else /* AN_sense2 */

NULL,

NULL,

NULL,

NULL,

NULL,

NULL,

#endif /* AN_sense2 */

YOUdisto, /* Disto */

#ifdef AN_noise

YOUnoise,

#else /* AN_noise */

NULL,

#endif /* AN_noise */

&YOUiSize,

&YOUmSize

};

#endif

#endif

その他,ユーザー定義素子に関する追加を行う.

src/bin/bconf.c

31: #define DEV_vsrc

>> #define DEV_you

32:

Page 78: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

C.2. Berkeley SPICEの拡張 73

115: #include "urcitf.h"

>> #include "youitf.h"

116:

147: #include "urc/urcitf.h"

>> #include "you/youitf.h"

148: #endif

282: #ifdef DEV_vsrc

283: &VSRCinfo,

284: #endif

>> #ifdef DEV_you

>> &YOUinfo,

>> #endif

285: };

src/bin/cconf.c

29: #define DEV_vsrc

>> #define DEV_you

30:

113: #include "urcitf.h"

>> #include "youitf.h"

114:

145: #include "urc/urcitf.h"

>> #include "you/youitf.h"

146: #endif

280: #ifdef DEV_vsrc

281: &VSRCinfo,

282: #endif

>> #ifdef DEV_you

>> &YOUinfo,

>> #endif

283: };

src/bin/config.c

77: #include "urcitf.h"

>> #include "youitf.h"

78:

109: #include "urc/urcitf.h"

>> #include "you/youitf.h"

110: #endif

244: #ifdef DEV_vsrc

245: &VSRCinfo,

246: #endif

>> #ifdef YOU_vsrc

>> &YOUinfo,

>> #endif

247: };

src/include/gendefs.h

25: int GENnode5; /* appropriate node numbers */

>> int YOUnumNode;

26: } GENinstance ;

プログラムソースをコンパイルするのに必要なファイルにユーザー定義素子関連の内容を追加する.

まず LDFALGSの設定をする.conf/以下にあるコンパイルするマシンのアーキテクチャーに関

するファイルもしくは conf/defaultsに,後述する素子のライブラリのパス,およびライブラリ名

SPICEyを記述する.パスが/usr/local/libの場合,DEC Alphaマシンでは

conf/alpha

6>> LDFLAGS = -lm -ltermlib -lbsd -G 0 -non_shared -ldnet_stub\

>> -L/usr/local/lib -lSPICEy

Page 79: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

74 付録 C SPICEの過渡解析ルーチンとユーザー定義素子

のようにする.マシンのアーキテクチャーのファイルが存在しない場合は,

conf/defaults

153>> LDFLAGS = -lm -ltermlib -L/usr/local/lib -lSPICEy

のように記述する.その他,以下の修正,追加を行う.

conf/defaults

262: DEVICES = asrc bjt bsim1 bsim2 cap cccs ccvs csw dio ind isrc \

263: jfet ltra mes mos1 mos2 mos3 mos6 res sw tra urc \

264>> vccs vcvs vsrc you

util/skeleton/make def.db

117: ALL_DEVICES = asrc bjt bsim1 bsim2 cap cccs ccvs csw dio ind isrc \

118: jfet ltra mes mos1 mos2 mos3 mos6 res sw tra urc \

119>> vccs vcvs vsrc you

src/lib/inp/makedefs

14>> inpgstr.c inp2y.c

15:

25>> inpgstr.o inp2y.o

26:

51: inp2w.o: inp2w.c

>> inp2y.o: inp2y.c

52: inp2z.o: inp2z.c

src/lib/dev/you/makedefs (新)

CFILES = you.c

COBJS = you.o

MODULE = you

LIBRARY = dev

MODULE_TARGET = $(OBJLIB_DIR)/$(MODULE)

NUMBER = 1

you.o: you.c

src/lib/dev/you/response.lib (新)

+you.obj&

+youask.obj&

+youdel.obj&

+youdest.obj&

+youload.obj&

+youmask.obj&

+youmdel.obj&

+youmpar.obj&

+younoise.obj&

+youparam.obj&

+youpzld.obj&

+yousacl.obj&

+yousetup.obj&

+yousload.obj&

+yousprt.obj&

+yousset.obj&

+youtemp.obj;

次に素子の特性を記述する動的ライブラリの作成を行う.素子特性の記述の仕方の説明は,変

数の説明などが必要となるので割愛する.(詳細は文献 12,13を参照せよ.) ここでは例として,

src/lib/dev/res/にある抵抗をユーザー定義素子として作成する方法について述べる.

まず src/lib/dev/res/にあるファイル群を適当なディレクトリ (youlib/)にコピーする.この中

で makedefs,msc51.bat,res.c,response.libは不要である.

Page 80: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

C.2. Berkeley SPICEの拡張 75

これからヘッダーファイルをユーザー定義素子用に修正を行う.ただし,resext.hおよび resitf.h

は修正せず,それぞれ前述の youext.h,youitf.hを用いる.src/lib/dev/res/resdefs.hを参考

に youdefs.hを作成する.だいたいはRES/resをYOU/youに置換することで済む.ただし sYOUin-

stance構造体でノードの数は必ず 5つ定義し,int YOU5Node;の直後に int YOUnumNode;を記述

しなければならない.(これは src/include/gendefs.hの変更と関係がある.)

youlib/youdefs.h (新)

#ifndef YOU

#define YOU

#include "ifsim.h"

#include "cktdefs.h"

#include "gendefs.h"

#include "complex.h"

#include "noisedef.h"

/* definitions used to describe YOUistors */

/* information used to describe a single instance */

typedef struct sYOUinstance {

struct sYOUmodel *YOUmodPtr; /* backpointer to model */

struct sYOUinstance *YOUnextInstance; /* pointer to next instance of

* current model*/

IFuid YOUname; /* pointer to character string naming this instance */

int YOUstate; /* not used */

int YOU1Node; /* number of positive node of YOUistor */

int YOU2Node; /* number of negative node of YOUistor */

int YOU3Node;

int YOU4Node;

int YOU5Node;

int YOUnumNode; /* number of nodes */

double YOUtemp; /* temperature at which this YOUistor operates */

double YOUconduct; /* conductance at current analysis temperature */

double YOUresist; /* YOUistance at temperature Tnom */

double YOUwidth; /* width of the YOUistor */

double YOUlength; /* length of the YOUistor */

double *YOUposPosptr; /* pointer to sparse matrix diagonal at

* (positive,positive) */

double *YOUnegNegptr; /* pointer to sparse matrix diagonal at

* (negative,negative) */

double *YOUposNegptr; /* pointer to sparse matrix offdiagonal at

* (positive,negative) */

double *YOUnegPosptr; /* pointer to sparse matrix offdiagonal at

* (negative,positive) */

unsigned YOUresGiven : 1; /* flag to indicate YOUistance was specified */

unsigned YOUwidthGiven : 1; /* flag to indicate width given */

unsigned YOUlengthGiven : 1; /* flag to indicate length given */

unsigned YOUtempGiven : 1; /* indicates temperature specified */

int YOUsenParmNo; /* parameter # for sensitivity use;

set equal to 0 if not a design parameter*/

#ifndef NONOISE

double YOUnVar[NSTATVARS];

#else /* NONOISE */

double *YOUnVar;

#endif /* NONOISE */

} YOUinstance ;

/* per model data */

typedef struct sYOUmodel { /* model structure for a YOUistor */

int YOUmodType; /* type index of this device type */

struct sYOUmodel *YOUnextModel; /* pointer to next possible model in

* linked list */

YOUinstance * YOUinstances; /* pointer to list of instances that have this

Page 81: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

76 付録 C SPICEの過渡解析ルーチンとユーザー定義素子

* model */

IFuid YOUmodName; /* pointer to character string naming this model */

double YOUtnom; /* temperature at which YOUistance measured */

double YOUtempCoeff1; /* first temperature coefficient of YOUistors */

double YOUtempCoeff2; /* second temperature coefficient of YOUistors */

double YOUsheetRes; /* sheet YOUistance of devices in ohms/square */

double YOUdefWidth; /* default width of a YOUistor */

double YOUnarrow; /* amount by which device is narrower than drawn */

unsigned YOUtnomGiven: 1; /* flag to indicate nominal temp. was given */

unsigned YOUtc1Given : 1; /* flag to indicate tc1 was specified */

unsigned YOUtc2Given : 1; /* flag to indicate tc2 was specified */

unsigned YOUsheetResGiven :1; /* flag to indicate sheet YOUistance given*/

unsigned YOUdefWidthGiven :1; /* flag to indicate default width given */

unsigned YOUnarrowGiven :1; /* flag to indicate narrow effect given */

} YOUmodel;

/* device parameters */

#define YOU_RESIST 1

#define YOU_WIDTH 2

#define YOU_LENGTH 3

#define YOU_CONDUCT 4

#define YOU_RESIST_SENS 5

#define YOU_CURRENT 6

#define YOU_POWER 7

#define YOU_TEMP 8

/* model parameters */

#define YOU_MOD_TC1 101

#define YOU_MOD_TC2 102

#define YOU_MOD_RSH 103

#define YOU_MOD_DEFWIDTH 104

#define YOU_MOD_NARROW 105

#define YOU_MOD_R 106

#define YOU_MOD_TNOM 107

/* device questions */

#define YOU_QUEST_SENS_REAL 201

#define YOU_QUEST_SENS_IMAG 202

#define YOU_QUEST_SENS_MAG 203

#define YOU_QUEST_SENS_PH 204

#define YOU_QUEST_SENS_CPLX 205

#define YOU_QUEST_SENS_DC 206

/* model questions */

#include "youext.h"

#endif /*YOU*/

次に上記 src/lib/dev/you/youext.hに書かれている関数すべてを定義する.その時,インクルードファイルに youdefs.hを追加する.もし使わない関数があっても

int

YOUaccept(ckt,inModel)

CKTcircuit *ckt;

GENmodel *inModel;

{

return(OK);

}

のように必ず定義する.変数名が YOUで始まっているので,RESをすべて YOUに置換すればよ

い.ただし,ノード名は次に示すように RESposNodeから YOU1Nodeのように変更する.

(例) youlib/yousetup.c (src/lib/dev/res/ressetup.cを修正.)

44: TSTALLOC(YOUposPosptr, YOU1Node, YOU1Node);

45: TSTALLOC(YOUnegNegptr, YOU2Node, YOU2Node);

46: TSTALLOC(YOUposNegptr, YOU1Node, YOU2Node);

Page 82: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

C.2. Berkeley SPICEの拡張 77

47: TSTALLOC(YOUnegPosptr, YOU2Node, YOU1Node);

最後にコンパイルの手順を記述する Makefileを作成する.FreeBSDにおける Makefileの一例

を示す.CFLAGSに記述している SPICEのインクルードファイルのパス,ユーザー定義素子のラ

イブラリをインストールするパス (/usr/local/lib)等は適当に変更しなければならない.

youlib/Makefile (新)

CC = gcc

CFLAGS = -g -O2 -pipe -Dbsd -I. -I../spice3f4/src/include

LDFLAGS1 = -Bshareable

INSTALL = /usr/bin/install

YOULIB = libSPICEy.so.0.1

SRCS = youask.c youdel.c youdest.c youload.c youmask.c \

youmdel.c youmpar.c younoise.c youparam.c youpzld.c \

yousacl.c yousetup.c yousload.c yousprt.c yousset.c \

youtemp.c youacld.c youuset.c youtrunc.c youfindb.c \

youaccept.c yousetic.c youconvt.c youdisto.c \

youstrunc.c yousupd.c

OBJS = $(SRCS:.c=.o)

$(YOULIB): object

$(LD) -o $(YOULIB) $(LDFLAGS1) $(OBJS)

object: $(OBJS)

$(OBJS): $(SRCS)

clean:

rm -f ./*.o; \

rm -f ./$(YOULIB)

install: $(YOULIB)

$(INSTALL) -c -o root -g bin $(YOULIB) /usr/local/lib

SPICEおよびユーザー定義素子のコンパイル方法であるが,最初にユーザー定義素子のコンパイ

ルを行う.その後,SPICEのドキュメントに沿って SPICE本体のコンパイルを行う.一度 SPICE

の実行ファイルが出来上がれば,ユーザー定義素子のライブラリはコンパイルし直すなど変更しても

よい.

ユーザー定義素子で作成した抵抗を使った回路ファイルの一例を示す.

youlib/y-example.cir (新)

Basic RC circuit

yres 2 1 A B test 3

cap B 0 1.0

vin A 0 pulse (0 1) dc 0 ac 1 2

.tran 0.1 7.0

.model test y()

.end

ユーザー定義素子を表す \yres 2 1 A B test 3"の最初の yresは適当なデバイス名を表す.ユーザー

定義素子のため yから始まる.次の 2は端子数を表す.次の 1はインスタンスの数を表す.その次か

らノードの情報が続き,端子数が 2のため Aと Bと二つのパラメータが続く.これはこのユーザー

定義素子がノード Aとノード Bに接続していることを示す.次の testは適当なモデル名を表す.そ

して最後にインスタンスが続き,インスタンス数は 1なので一つだけ値書かれ,この場合は抵抗値が

3()であることを示す.インスタンスの順番とその意味の関係は youlib/youdefs.hの \/* device

parameters */"のコメント以下にある \#de�ne YOU RESIST 1"と youlib/youparam.cファイル

中の case文との関係で決まる.

Page 83: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

78 付録 C SPICEの過渡解析ルーチンとユーザー定義素子

C.2.2 出力データを間引く方法

Berkeley SPICEでは計算結果はすべてメモリに記憶しており,計算後 writeコマンドなどで書き

出す.そのためマスター方程式法による計算では時間刻みを小さくするためデータ数が非常に大きく

なり計算中にメモリ不足が発生する.それを防ぐために出力データを適当に間引く必要がある.ここ

ではその方法を説明する.

データを間引く数は.optionコマンドで与えるようにする.例えば,回路を記述したファイルに

.option rawstore=100

と記述すれば 1回データを出力した後 99回スキップすることを繰り返す.これに対する修正は,(1)

データを間引く部分と (2).optionに新しいパラメータを追加する部分にわけられる.

まず,データ数をカウントする変数と間引く数を記憶する変数を追加する.

src/include/cktdefs.h

206: GENinstance *CKTtroubleElt; /* Non-convergent device instance */

>> int CKTrawstore;

>> int CKTrawstoreCounter;

207:

次に計算ルーチン中のデータ書き出しの部分に間引くプログラムを追加する.計算終了時はカウ

ンターの値が間引く値になっていなくても書き出すようにしている.また,カウンターの変数が int

型であることからわかるように,間引く数の上限はは約 2億 (int型が 4ビットの場合) もしくは約 3

万 (int型が 2ビットの場合)となる.

src/lib/ckt/dctran.c

95: ckt->CKTbreak=1;

>> ckt->CKTrawstoreCounter=0;

96: firsttime = 1;

212: }

213>> if(ckt->CKTtime >= ckt->CKTinitTime){

>> if(ckt->CKTrawstoreCounter==0

>> || FABS(ckt->CKTtime - ckt->CKTfinalTime) < ckt->CKTminBreak){

>> CKTdump(ckt,ckt->CKTtime,

214: (((TRANan*)ckt->CKTcurJob)->TRANplot));

>> }

>> }

215: ckt->CKTstat->STAToldIter = ckt->CKTstat->STATnumIter;

.optionに rawstoreを追加する.まず,間引く値を記憶する変数を追加する.

src/include/tskdefs.h

58: unsigned int TSKkeepOpInfo:1; /* flag for small signal analyses */

>> int TSKrawstore;

59: }TSKtask;

.optionのパラメータそれぞれにつけられた通し番号に rawstoreに対する値を追加する.

src/include/optdefs.h

78: #define OPT_KEEPOPINFO 45

>> #define OPT_RAWSTORE 46

79:

rawstoreの値を記憶する変数に.optionに書かれた値を代入する.また,rawstoreに関する情報

を追加する.ここで.optionに記述するパラメータ名が \rawstore"に決められる.

Page 84: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

C.2. Berkeley SPICEの拡張 79

src/lib/ckt/cktsopt.c

126: break;

>> case OPT_RAWSTORE:

>> tsk->TSKrawstore = val->iValue;

>> break;

127: default:

193: { "keepopinfo", OPT_KEEPOPINFO, IF_SET|IF_FLAG,

194: "Record operating point for each small-signal analysis" }

>> ,{"rawstore",OPT_RAWSTORE,IF_SET|IF_INTEGER,

>> "number of steps storing data"}

195: };

もし.optionで値が与えられなかった時の初期値 (デフォルト値)を設定する.ここでは通常の

SPICEと同じ動作をするように間引く数は 1としている.

src/lib/ckt/cktntask.c

58: tsk->TSKkeepOpInfo=0;

>> tsk->TSKrawstore=1;

59: return(OK);

最後に間引く値を実際の計算ルーチンで記憶する変数に代入する.

src/lib/ckt/cktdojob.c

78: #endif /* NEWTRUNC */

>> ckt->CKTrawstore = task->TSKrawstore;

79:

Page 85: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

80

参考文献

1) C. A. Desoer and E. S. Kuh, Basic Circuit Theory, Chapter 10, McGraw-Hill, New York, 1969.

2) 白川功,篠田庄司,回路理論の基礎,第 6章,コロナ社,1990.

3) 四井源吾,C言語による回路シミュレータの作製,トランジスタ技術 SPECIAL No. 35,CQ出

版,1992.

4) L. T. Pillage, R. A. Rohrer and C. Visweswariah, Electronic Circuit and System Simulation

Methods, Chapters 1 and 4, McGraw-Hill, 1994.

5) 富士総合研究所編,半導体素子設計シミュレータ,第 5章,丸善,1991.

6) R. Kielkowski, Inside SPICE, Chapter 4, McGraw-Hill, 1994.

7) K. S. Kundert, The Designer's Guide to SPICE & SPECTRE R , Chapter 4, Kluwer Academic,

1995.

8) in Ref. 4, pp. 310.

9) in Ref. 4, Chapter 3.

10) 伊理正夫,藤野和建,数値計算の常識,第 5章,共立出版,1985.

11) ftp://ic.eecs.berkeley.edu/pub/Spice3/sp3f4.kit.tar.Z

12) Thomas L. Quarles, The SPICE3 Implementation Guide, Memorandum No. UCB/ERL

M89/44, University of California, Berkeley, 1989.

13) Thomas L. Quarles, Adding Devices to SPICE3, Memorandum No. UCB/ERL M89/45, Uni-

versity of California, Berkeley, 1989.

文献 12,13は http://diva.eecs.berkeley.edu/~erl/publication.htmlから入手可能.

Page 86: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

81

謝辞

 本研究は,大阪大学大学院工学研究科電子情報エネルギー工学専攻 谷口研二教授のご指導とご鞭

撻のもとに行われたものであり,本研究を遂行するにあたり終始有益なご助言を賜りましたことに衷

心より御礼申し上げます.

著者が大阪大学工学部電子工学科および大阪大学大学院工学研究科電子工学研究科博士前期課程

に在学中に懇篤なるご指導を頂き,その後も多くの有益なご助言を頂きました濱口智尋教授に深く

感謝の意とお礼の言葉を申し上げます.

著者が大阪大学大学院工学研究科電子工学研究科に在学中にご指導を賜りました吉野勝美教授,尾

浦憲治郎教授,西原浩教授,森田清三教授,福西宏有教授に深く感謝の意を表します.

本研究過程において終始有意義かつ適切なご助言をいただいた鎌倉良成助手に感謝いたします.

著者にハイブリッド回路シミュレータ開発の機会を与えて頂き,またハイブリッド回路シミュレー

タの単電子部のシミュレータを開発・提供して頂き,そして懇切なるご指導を頂いた日立ケンブリッ

ジ研究所 中里和郎博士に心から感謝いたします.また多くの有益なご助言と活発な議論を頂いた日

立ケンブリッジ研究所 Dr. Mathias Wagner,塚越一仁博士,水田博博士,Dr. Heinz-Olaf M�uller,

Cambridge University Mr. Mansoor B. A. Jalil に感謝いたします.

ハイブリッド回路シミュレータ開発にあたり,多くのご協力と有益な議論を頂いた東洋大学工学部

鳥谷部達教授,株式会社東芝先端半導体デバイス研究所 松澤一也博士に深く感謝いたします.

本研究のマスター方程式法によるハイブリッド回路シミュレータの開発は,通商産業省の産業科学

技術研究開発制度に基づき新エネルギー・産業技術総合開発機構から新機能素子研究開発協会に委託

された量子化機能素子プロジェクトの成果が含まれています.

回路シミュレータ SmartSpiceの利用とハイブリッド回路シミュレータの開発にあたり多くのご協

力とご助言を頂いた SILVACO社の方々に感謝します.ハイブリッド回路シミュレータのプログラム

整備とドキュメント作成にご協力頂いた Betima Ltd.の方々に感謝します.

本研究の遂行にあたり有益な議論を頂いた東北大学電気通信研究所 益一哉助教授,東京大学大学

院工学系研究科 天川修平氏に深謝いたします.

本研究で提案した回路の特性解析に使用したモンテカルロ法単電子回路シミュレータを開発した

桑村信博氏 (現日立製作所)に深く感謝の意を申し上げます.Berkeley SPICEの拡張のプログラムを

作成していただいた小川徹氏に深く感謝いたします.吉村隆治氏,宮川修一氏 (現阪神電車),金良守

氏,多田憲史氏をはじめとする谷口研究室の方々には在学中大変親切なご助言とご協力をいただきい

ました.感謝の意を表します.事務的な面のみならず常に親切な心遣いを頂きました古田典子秘書に

感謝いたします.

末筆ながら,著者が本研究を遂行するにあたり終始支援して頂いた両親,兄に感謝いたします.

Page 87: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

82

研究業績

学術論文

1. Masaharu Kirihara and Kenji Taniguchi: \A Single Electron Neuron Device," Jpn. J. Appl.

Phys., Vol.36, No.6B, pp. 4172-4175 (June 1997).

2. Masaharu Kirihara and Kenji Taniguchi: \Asymmetric Single Electron Turnstile and Its Elec-

tronic Circuit Applications," IEICE Trans. Electron., Vol. E81-C, No.1, pp. 57-62 (January

1998).

3. Masaharu Kirihara, Kazuo Nakazato and Mathias Wagner: \Hybrid circuit simulator includ-

ing a model for single electron tunneling devices," submitted to Jpn. J. Appl. Phys.

国際会議

1. M. Kirihara, N. Kuwamura, K. Taniguchi, and C. Hamaguchi: \Monte Carlo Study of Single

Electron Devices," International Conference of Solid State Devices and Materials (SSDM '94),

Paci�co Yokohama, Kanagawa, Japan (August 1994), pp. 328-330.

2. R. Yoshimura, M. Kirihara, S. Miyakawa, K. Taniguchi, and C. Hamaguchi: \Performance of

Novel Side Gate FETs," Topical Workshop on Heterostructure Microelectronics (TWHM '96),

Sapporo Therme International Hotel, Hokkaido, Japan (August 1996), pp. 42.

3. M. Kirihara and K. Taniguchi: \Single electron neuron circuit," International Symposium on

Formation, Physics and Device Application of Quantum Dot Structures (QDS '96), Hokkaido

Univ., Hokkaido, Japan (November 1996), pp. 158.

4. M. Kirihara and K. Taniguchi: \Monte Carlo simulation for single electron circuits," Asia and

South Paci�c Design Automatic Conference (ASP-DAC '97), Makuhari-Messe, Chiba, Japan

(January 1997), pp. 333-337.

5. M. Kirihara and K. Taniguchi: \Numerical analysis of asymmetric single electron turnstiles

using Monte Carlo simulation," International Workshop on Computational Electronics (IWCE-

5), Univ. of Notre Dame, Indiana, USA (May 1997), pp. FrP3.

6. Masaharu Kirihara and Kenji Taniguchi: \Asymmetric single electron turnstile and its elec-

tronic circuit applications," International Workshop on Quantum Functional Devices (QFD

'97), Gaithersburg, Maryland, USA (November 1997), pp. 229-232.

7. Masaharu Kirihara and Kenji Taniguchi: \Asymmetric single electron turnstile and its elec-

tronic circuit aplications," International Symposium on Formation, Physics and Device Appli-

cation of Quantum Dot Structures (QDS '98), Hokkaido Univ., Hokkaido, Japan (June 1998),

Page 88: 単電子回路シミュレーション技術に 関する研究 · ゲート非同期電流素子: 12 2.3.2 ゲート同期電流素子: 13 2.4 ハイブリッド回路の特性計算:

83

pp. 14.

8. Masaharu Kirihara and Kenji Taniguchi: \Hybrid circuit simulator for combined single elec-

tronic and conventional circuit elements," International Workshop on Computational Elec-

tronics (IWCE-6), Osaka Univ., Osaka, Japan (Oct 1998), pp. 21-22.

学会発表

1. 桐原正治, 桑村信博, 谷口研二, 濱口智尋 : 「単一電子素子を用いたメモリセル特性のモンテカル

ロ法による解析」第 41回応用物理学関係連合講演会 29a-2M-10, 1994年 3月, 神奈川 (明治大).

2. 桐原正治, 谷口研二, 濱口智尋 : 「擬似 CMOS単電子回路特性の解析」第 43回応用物理学関係

連合講演会 27a-ZA-1, 1996年 3月, 埼玉 (東洋大).

3. 桐原正治, 谷口研二 : 「単電子回路を用いたニューロンの構成」第 57回応用物理学界学術講演

会 9p-B-13, 1996年 9月, 福岡 (九州産業大).

4. 桐原正治, 谷口研二 : 「非対称型単電子ターンスタイルを用いたWinner-Take-All 回路特性の

シミュレーション」第 44回応用物理学関係連合講演会 29p-B-16, 1997年 3月, 千葉 (日本大).

5. 桐原正治, 谷口研二 : 「マスター方程式法およびモンテカルロ法によるハイブリッド単電子回路

シミュレータ」第 59回応用物理学界学術講演会 17p-ZK-13, 1998年 9月, 広島 (広島大).

解説記事

1. 谷口研二, 桑村信博, 桐原正治, 濱口智尋 : 「単一電子トンネル素子を用いた電子回路の可能性」

FEDジャーナル, vol.6, No.2, pp. 11-22 (1995年 6月).

2. K. Taniguchi and M. Kirihara: \Future Prospects of Single-Electron-Tunneling (SET)-Based

Digital Cirsuits," FED Journal, Vol.7, Suppl.2, pp. 32-37 (March 1997).

研究会等

1. K. Taniguchi, M. Kirihara, N. Kuwamura, and C. Hamaguchi: \Digital Circuit Applications

of Single Electron Tunneling Devices," 13th Symposium on Future Electron Devices, October

24, pp. 34-39, 1994 (Nihon Toshi Center, Tokyo, Japan).

2. 谷口研二, 桑村信博, 桐原正治, 濱口智尋 : 「単一電子トンネル現象を用いたデバイスの可能性」

応用電子物性分科会研究報告, No.454, pp. 11-16, 1994年 7月 1日.

3. 谷口研二, 桑村信博, 桐原正治, 濱口智尋 : 「シリコンナノスケールデバイス」第 15回応用物理

学会スクール, pp. 53-67, 1994年 9月 20日.

4. 谷口研二, 桐原正治 : 「単電子集積回路システムの課題 { 回路シミュレーションによる検証 {」

日本学術振興会 極限構造電子物性 第 151委員会 第 38回研究会, pp. 17-26, 1996年 6月 20日,

北海道.

5. 谷口研二, 桐原正治 : 「単電子エレクトロニクスによる情報処理回路」1996年電子情報通信学

会ソサイエティ大会, SC-9-2, pp. 249-250, 1996年 9月 19日, 石川 (金沢大).