IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 株式会社ソリトンシステムズの特許一覧

<>
  • 特開-差動型ニューロン素子 図1
  • 特開-差動型ニューロン素子 図2
  • 特開-差動型ニューロン素子 図3
  • 特開-差動型ニューロン素子 図4
  • 特開-差動型ニューロン素子 図5
  • 特開-差動型ニューロン素子 図6
  • 特開-差動型ニューロン素子 図7
  • 特開-差動型ニューロン素子 図8
  • 特開-差動型ニューロン素子 図9
  • 特開-差動型ニューロン素子 図10
  • 特開-差動型ニューロン素子 図11
  • 特開-差動型ニューロン素子 図12
  • 特開-差動型ニューロン素子 図13
  • 特開-差動型ニューロン素子 図14
  • 特開-差動型ニューロン素子 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022177841
(43)【公開日】2022-12-01
(54)【発明の名称】差動型ニューロン素子
(51)【国際特許分類】
   G06G 7/60 20060101AFI20221124BHJP
   G06G 7/184 20060101ALI20221124BHJP
   G06N 3/063 20060101ALI20221124BHJP
   G06F 1/3296 20190101ALI20221124BHJP
【FI】
G06G7/60
G06G7/184
G06N3/063
G06F1/3296
【審査請求】未請求
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2022131421
(22)【出願日】2022-08-21
(62)【分割の表示】P 2021144356の分割
【原出願日】2021-01-18
(71)【出願人】
【識別番号】591071230
【氏名又は名称】株式会社ソリトンシステムズ
(74)【代理人】
【識別番号】100115716
【弁理士】
【氏名又は名称】山本 隆雄
(72)【発明者】
【氏名】橋元 謙一
(72)【発明者】
【氏名】高村 和久
(72)【発明者】
【氏名】梶原 邦弘
(72)【発明者】
【氏名】林 輝彦
(57)【要約】
【課題】入力信号の情報欠落及び消費電力を抑制することができる差動型ニューロン素子を提供する。
【解決手段】ニューロン素子10Cは、第1の信号が入力されることによって電荷が蓄積され、第1の信号の対となる信号であって第1の信号の逆相となる第2の信号が入力されることによって電荷が蓄積されるキャパシタCと、キャパシタCに蓄積された電荷が第1の所定量を超えた場合に、キャパシタCから第2の所定量の電荷を排出し、第1のパルス信号を生成するスイッチSWA1、SWB1及び負荷抵抗Rと、キャパシタCに蓄積された電荷が第3の所定量を超えた場合に、キャパシタCから第4の所定量の電荷を排出し、第1のパルス信号の対となる信号であって第1のパルス信号の逆相となる第2のパルス信号を生成するスイッチSWA2、SWB2及び負荷抵抗Rと、を備えている。
【選択図】図9

【特許請求の範囲】
【請求項1】
第1の信号が入力されることによって電荷が蓄積される第1の電荷蓄積部と、
前記第1の信号の対となる信号であって前記第1の信号の逆相となる第2の信号が入力されることによって電荷が蓄積される第2の電荷蓄積部と、
前記第1の電荷蓄積部に蓄積された電荷が第1の所定量を超えた場合に、前記第1の電荷蓄積部から第2の所定量の電荷を排出し、第1のパルス信号を生成する第1の信号処理部と、
前記第2の電荷蓄積部に蓄積された電荷が第3の所定量を超えた場合に、前記第2の電荷蓄積部から第4の所定量の電荷を排出し、前記第1のパルス信号の対となる信号であって前記第1のパルス信号の逆相となる第2のパルス信号を生成する第2の信号処理部と、
を備えた差動型ニューロン素子。
【請求項2】
前記第1の信号処理部は、前記第1の電荷蓄積部から前記第2の所定量の電荷を排出する第1の電荷排出部と、前記第1の電荷排出部によって排出された前記第2の所定量の電荷から変換された電圧信号を直接用いて前記第1のパルス信号を生成する第1のパルス信号生成部と、を備え、
前記第2の信号処理部は、前記第2の電荷蓄積部から前記第4の所定量の電荷を排出する第2の電荷排出部と、前記第2の電荷排出部によって排出された前記第4の所定量の電荷から変換された電圧信号を直接用いて前記第2のパルス信号を生成する第2のパルス信号生成部と、を備える
請求項1に記載の差動型ニューロン素子。
【請求項3】
前記第1の信号処理部は、前記第1のパルス信号を生成する第1のパルス信号生成部と、前記第1のパルス信号生成部で生成された前記第1のパルス信号に基づいて、前記第1の電荷蓄積部から前記第2の所定量の電荷を排出する第1の電荷排出部と、を備え、
前記第2の信号処理部は、前記第2のパルス信号を生成する第2のパルス信号生成部と、前記第2のパルス信号生成部で生成された前記第2のパルス信号に基づいて、前記第2の電荷蓄積部から前記第4の所定量の電荷を排出する第2の電荷排出部と、を備える
請求項1に記載の差動型ニューロン素子。
【請求項4】
前記第1及び第2の電荷蓄積部は、一体に形成された共通電荷蓄積部であり、
前記共通電荷蓄積部の一方の端子には前記第1の信号が入力され、前記共通電荷蓄積部の他方の端子には前記第2の信号が入力される
請求項2又は請求項3に記載の差動型ニューロン素子。






【発明の詳細な説明】
【技術分野】
【0001】
本発明は、差動型ニューロン素子に関する。
【背景技術】
【0002】
従来、重み付けされた入力スパイク信号から動作信号を生成するように構成されたシナプスと、当該動作信号の入力によって生成された膜信号の電圧と所定の閾値との比較に基づいて出力スパイク信号を生成するように構成されたニューロンとで構成されるスパイクニューラルネットワーク回路が開示されている(特許文献1参照)。
【0003】
特許文献1では、当該動作信号は電流信号として与えられ、各ニューロンは、前段の複数のニューロンから入力される当該電流信号によって内部キャパシタが充電された結果、当該内部キャパシタに電圧が発生し、その電圧が所定の閾値を超えた時に出力スパイク信号を発生させるといった振る舞いをする。
【0004】
また、ΔΣ変調を用いてアナログ信号をデジタル信号に変換するADコンバータが知られている(非特許文献1及び非特許文献2参照)。
【0005】
図15は、従来のΔΣ変調型ADコンバータの基本構成を示す回路図である。
ΔΣ変調型ADコンバータは、入力アナログ入力信号にΔΣ変調を実施し、1ビット変調パルス信号を生成するΔΣ変調部と、当該変調パルス信号を受信し、例えば時間軸上の所定範囲のパルスの受け数を数えてnビットの出力デジタル信号へと変換するデジタルフィルタと、を備えている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】米国特許出願公開第2020/0160146号明細書
【非特許文献1】谷口研二,“LSI設計のためのCMOSアナログ回路入門”,CQ出版、2004年12月1日
【非特許文献2】“デルタ・シグマADCの基礎:デルタ・シグマ変調器について”,[ONLINE],[令和3年1月12日検索],インターネット<https://e2e.ti.com/blogs_/japan/b/analog/archive/2017/02/03/1-adc>
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1の技術では、搭載されている内部キャパシタは高々1つである。その結果、当該内部キャパシタに、その電荷蓄積量の上限を超える電荷が流れ込んだ場合、当該内部キャパシタから溢れる電荷が廃棄される。すなわち、特許文献1の技術には、所定の閾値を超える電流が入力された場合、入力電流の過剰分に相当する電荷がすべて廃棄されてしまうことから、廃棄された電荷に相当する情報が欠落する問題がある。
【0008】
非特許文献1又は非特許文献2のΔΣ変調型ADコンバータは、基準値近傍のパルス密度が高くなる。したがって、ΔΣ変調型ADコンバータは、例えば基準値がゼロVに設定された場合、入力アナログ信号がほとんどない場合であっても高パルス密度の変調パルス信号を生成する必要がある。すなわち、ΔΣ変調型ADコンバータには、入力信号がほとんどない状態であっても、徒に電力を消費してしまう問題がある。
【0009】
本発明は、このような実情を鑑みて提案されたものであり、入力信号の情報欠落及び消費電力を抑制することができる差動型ニューロン素子を提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明に係る差動型ニューロン素子は、第1の信号が入力されることによって電荷が蓄積される第1の電荷蓄積部と、前記第1の信号の対となる信号であって前記第1の信号の逆相となる第2の信号が入力されることによって電荷が蓄積される第2の電荷蓄積部と、前記第1の電荷蓄積部に蓄積された電荷が第1の所定量を超えた場合に、前記第1の電荷蓄積部から第2の所定量の電荷を排出し、第1のパルス信号を生成する第1の信号処理部と、前記第2の電荷蓄積部に蓄積された電荷が第3の所定量を超えた場合に、前記第2の電荷蓄積部から第4の所定量の電荷を排出し、前記第1のパルス信号の対となる信号であって前記第1のパルス信号の逆相となる第2のパルス信号を生成する第2の信号処理部と、を備えている。
【発明の効果】
【0011】
本発明は、入力信号の情報欠落及び消費電力を抑制することができる。
【図面の簡単な説明】
【0012】
図1】第1実施形態に係るニューロン素子の機能的な構成を示すブロック図である。
図2】ニューロン素子の動作手順を示すフローチャートである。
図3】ニューロン素子の構成例を示す回路図である。
図4】ニューロン素子内の各信号の時間変化を示すタイミングチャートである。
図5】遅延時間が長くなった場合のニューロン素子内の各信号の時間変化を示すタイミングチャートである。
図6】第2実施形態に係るニューロン素子の構成例を示す回路図である。
図7】ニューロン素子内の各信号の時間変化を示すタイミングチャートである。
図8】正常に動作しない状態を引き起こす蓋然性が最も高い場合のニューロン素子内の各信号の時間変化を示すタイミングチャートである。
図9】第3実施形態に係るニューロン素子の構成例を示す回路図である。
図10】第4実施形態に係るADコンバータの機能的な構成を示すブロック図である。
図11】従来のΔΣ変調型ADコンバータの入力アナログ信号、変調パルス信号、出力デジタル信号を示す波形図である。
図12】第4実施形態に係るADコンバータの入力アナログ信号、変調パルス信号、出力デジタル信号を示す波形図である。
図13】ニューラルネットワークの構成例を示す図である。
図14】ニューロン素子の出力信号xi(i=1,2,3)と重みづけ係数wi(i=1,2,3)との関係を示す図である。
図15】従来のΔΣ変調型ADコンバータの基本構成を示す回路図である。
【発明を実施するための形態】
【0013】
以下、本発明の実施形態について図面を参照しながら詳細に説明する。
[第1実施形態]
図1は、第1実施形態に係るニューロン素子10の機能的な構成を示すブロック図である。
ニューロン素子10は、入力部11と、電荷蓄積部12と、電荷排出部13と、パルス信号生成部14と、出力部15と、制御部16と、を備える。
【0014】
入力部11は、外部から入力される電流信号(入力信号)を電荷蓄積部12に供給する。なお、入力部11は、例えば入力信号が電圧信号の場合は、その電圧信号を所定の手法を用いてそれと等価な電流信号に変換する。
【0015】
電荷蓄積部12は、入力部11から電流信号が供給され、電荷を蓄積する。
電荷排出部13は、制御部16の指示に基づいて又はパルス信号生成部14で生成されるパルス信号に応じて、電荷蓄積部12に蓄積された電荷を排出する。
【0016】
パルス信号生成部14は、制御部16の指示に基づいて又は電荷排出部13から排出される電荷に応じて、パルス信号を生成し、そのパルス信号を出力部15へ供給する。
【0017】
出力部15は、パルス信号生成部14から供給されるパルス信号を外部へ出力する。なお、出力部15は、必要があれば、パルス信号生成部14から供給されるパルス信号の波形を所定の形に整形してから外部へ出力してもよい。
【0018】
制御部16は、電荷蓄積部12の電荷蓄積量を例えば電圧などとして測定する。制御部16は、測定した電荷蓄積量(測定電荷蓄積量)が所定の閾値を超えた場合、パルス信号生成部14に対してパルス信号の生成を指示し、測定電荷蓄積量が閾値を超えなくなった場合、パルス信号生成部14に対してパルス信号の生成停止を指示する。
【0019】
または、制御部16は、測定電荷蓄積量が所定の閾値を超えた場合、電荷排出部13に対して、電荷蓄積部12からの所定量の電荷の排出を指示し、測定電荷蓄積量が閾値を超えなくなった場合、電荷排出部13に対して電荷の排出停止を指示する。
【0020】
なお、電荷排出部13及びパルス信号生成部14は、制御部16から指示を受けて直ちに所定の処理を実施するのでなく、ある一定期間を経てから所定の処理を実施する。また、電荷排出部13、パルス信号生成部14は及び制御部16は、先述のように互いに連携しており、電荷蓄積部12の測定電荷蓄積量が所定の閾値を超えた場合に、それらがまとまったかたちで、電荷蓄積部12から所定量の電荷を排出し、パルス信号を生成する信号処理部20として機能する。
【0021】
図2は、ニューロン素子10の動作手順を示すフローチャートである。
入力部11は、外部から入力信号があった場合(ステップS1)、その入力信号を受信して電荷蓄積部12に供給する(ステップS2)。なお、入力部11は、入力信号が電圧信号の場合、その電圧信号を所定の手法を用いてそれと等価な電流信号に変換して、変換された電流信号を電荷蓄積部12へ供給する。
【0022】
電荷蓄積部12は、入力部11から入力信号が供給されると電荷を蓄積する(ステップS3)。
制御部16は、電荷蓄積部12の電荷蓄積量を例えば電圧として測定し(ステップS4)、その測定電荷蓄積量が所定の閾値を超えた場合は(ステップS5)、電荷排出部13に対して、所定量の電荷の排出を指示する。これにより、電荷排出部13は、電荷蓄積部12から所定量の電荷を排出する(ステップS6)。なお、電荷蓄積部12の測定電荷蓄積量が所定の閾値を超えていない場合は、電荷蓄積部12の電荷は排出されずに、ステップS1へ戻る。
【0023】
次に、制御部16は、パルス信号生成部14に対して、パルス信号の生成を指示する。これにより、パルス信号生成部14は、パルス信号を生成する(ステップS7)。なお、パルス信号生成部14は、制御部16からの指示を受けることなく、電荷排出部13によって排出された電荷に応じて、パルス信号を生成してもよい。
【0024】
出力部15は、パルス信号生成部14で生成されたパルス信号を外部へ出力する(ステップS7)。そして、ステップS4へ戻る。なお、出力部15は、必要に応じて、パルス信号生成部14で生成されたパルス信号の波形を所定の形に整形してから外部へ出力してもよい。
【0025】
なお、制御部16は、電荷蓄積部12の測定電荷蓄積量が閾値を超えた場合に、まずはパルス信号生成部14に指示を出し、続いて電荷排出部13に指示を出してもよい。あるいは、電荷排出部13は、制御部16からの指示を受けることなく、パルス信号生成部14で生成されるパルス信号に応じて、所定量の電荷を排出してもよい。
【0026】
ここで、電荷蓄積部12の測定電荷蓄積量が閾値を超えた時から、電荷蓄積部12から電荷が排出される時までに、所定の遅延時間がある。よって、この遅延時間では、電荷蓄積部12には引き続き電荷が蓄積される。同様に、電荷蓄積部12の測定電荷蓄積量が閾値を下回った時から、電荷蓄積部12からの電荷の排出が停止する時までにも、所定の遅延時間がある。よって、この後者の遅延時間では、電荷蓄積部12からは引き続き電荷が排出される。
【0027】
このように、ニューロン素子10は、電荷蓄積部12に蓄積された電荷蓄積量が所定の閾値を超えた場合、パルス信号を外部へ出力すると同時に、電荷蓄積部12から所定量の電荷を排出させることで、電荷蓄積部12の電荷が溢れないようにしている。換言すれば、ニューロン素子10は、電荷蓄積部12から溢れる電荷の量に応じたパルス信号を外部へ出力することで、廃棄された電荷に相当する情報の欠落が発生する問題を回避できる。
【0028】
図3は、本実施形態に係るニューロン素子10Aの構成例を示す回路図である。ニューロン素子10Aは、図1に示したニューロン素子10の一構成例である。
【0029】
ニューロン素子10Aは、キャパシタC、キャパシタC、コンパレータCMP、スイッチSWA、SWB、負荷抵抗Rを備えている。スイッチSWAは、例えばMOSトランジスタを用いたSPDT(Single-Pole Double-Throw)スイッチであり、3つの端子SW1、SW2、SW3を有している。スイッチSWAは、コンパレータCMPからの制御(選択信号)に応じて、端子SW1及び端子SW3の間、又は端子SW2及び端子SW3の間が導通する。なお、スイッチSWBもスイッチSWAと同じ構成である。
【0030】
キャパシタCの一方の端子は入力端子INに接続され、その他方の端子は接地されている。キャパシタCの一方の端子はスイッチSWAの端子SW3に接続され、その他方の端子はスイッチSWBの端子SW3に接続されている。
【0031】
スイッチSWAの端子SW1は、入力端子INに接続されている。スイッチSWBの端子SW1は接地されている。
【0032】
スイッチSWAの端子SW2は、負荷抵抗R及び出力端子OUTに接続されている。スイッチSWBの端子SW2は接地されている。
【0033】
負荷抵抗Rの一方の端子はスイッチSWAの端子SW2及び出力端子OUTに接続されており、その他方の端子は接地されている。このため、負荷抵抗Rは、スイッチSWAを介してキャパシタCから排出される電荷に応じてパルス信号を生成する機能を有する。
【0034】
コンパレータCMPは、キャパシタCに蓄積された電荷蓄積量を、入力端子INの電圧(=キャパシタCで発生する電圧)として測定し、測定した電圧(測定電圧v)が所定の閾値電圧Vthを超えたか否かを判定する。コンパレータCMPは、測定電圧vが閾値電圧Vthを超えている場合は選択信号SW1をスイッチSWA、SWBに供給し、測定電圧vが閾値電圧Vthを超えていない場合は選択信号SW2をスイッチSWA、SWBに供給する。
【0035】
スイッチSWA、SWBは、コンパレータCMPから選択信号が供給されると、次のように切り替わる。すなわち、スイッチSWA、SWBは、選択信号SW1が供給された場合は、端子SW1及び端子SW3の間が導通する(SW1に切り替わる)。また、スイッチSWA、SWBは、選択信号SW2が供給された場合は、端子SW2及び端子SW3の間が導通する(SW2に切り替わる)。
【0036】
このため、スイッチSWA、SWBに選択信号SW1が供給された場合、キャパシタCとキャパシタCは並列に接続される。他方、スイッチSWA、SWBに選択信号SW2が供給された場合、キャパシタCと負荷抵抗Rは並列に接続され、キャパシタCに蓄積された電荷が負荷抵抗Rを通じて放電する。
【0037】
なお、キャパシタCの他方の端子、スイッチSWBの端子SW1、SW2、負荷抵抗Rの他方の端子は、等電位であればよく、本実施形態のように接地される場合に限定されるものではない。
【0038】
ところで、スイッチSWA、SWBは、増加中の測定電圧vが閾値電圧Vthを超えた時、又は減少中の測定電圧vが閾値電圧Vthを下回った時に、直ちに切り替わるものではない。すなわち、増加中又は減少中の測定電圧vが閾値電圧Vthを過ぎた又は下回った時から、実際にスイッチSWA、SWBが切り替わる時まで、所定の遅延時間Dcmpがある。
【0039】
よって、測定電圧vは、閾値電圧Vthを超えた時から遅延時間Dcmpを経過するまでは上昇し続ける。そして、遅延時間Dcmp経過後にスイッチSWA、SWBがSW1に切り替わる時点でキャパシタC、Cが並列に接続されると、キャパシタCに蓄積されていた電荷がキャパシタCに流れ込み、その結果、測定電圧vは急激に低下する。
【0040】
キャパシタCの測定電圧vが閾値電圧Vthを下回った場合も同様である。すなわち、スイッチSWA、SWBがSW1に切り替わって測定電圧vが急激に低下し閾値電圧Vthを下回っても、その時から遅延時間Dcmpを経過するまではキャパシタC、Cの並列接続状態は保持される。そして、遅延時間Dcmp経過後にスイッチSWA、SWBがSW2に切り替わる時点で、キャパシタCは、キャパシタCから分離され、負荷抵抗Rと並列接続される。
【0041】
遅延時間Dcmpは、配線遅延、スイッチSWA、SWBを構成するMOSトランジスタのゲート遅延、コンパレータCMPに起因した遅延等の総和時間である。特に、コンパレータCMPに起因した遅延は、その出力容量Coutや相互コンダクタンスgなどから決定される。従って、それらを適切に設計することによって、遅延時間Dcmpが最適化される。
【0042】
以上のように構成されたニューロン素子10Aでは、外部から信号が入力されると、次のように動作する。
【0043】
図4は、ニューロン素子10A内の各信号の時間変化を示すタイミングチャートである。なお、初期状態において、図3に示すキャパシタC、Cに蓄積されている電荷はゼロである。よって、キャパシタCの測定電圧vは0である。そして、測定電圧vが閾値電圧Vthを下回っていることから、スイッチSWA、SWBは、共にSW2に切り替わっている。
【0044】
図4では、時刻t=0において、入力端子INに定電流i=Iが入力される。なお、実際には、入力端子INに入力される電流は一定ではない。
【0045】
ところで、ニューロン素子10Aの正常動作条件とは、最も厳しい状態、具体的には、許容される最大瞬間入力電流Imaxが定電流として連続して入力される状態であっても、ニューロン素子10Aが正常に動作する条件をいう。ニューロン素子10Aは、この正常動作条件を満たす限り、Imaxを超えない任意に変化する電流が入力される場合であっても正常に動作することが保証される。なお、正常動作条件の詳細については後述する。
【0046】
入力端子INに定電流i=Iが入力されると、キャパシタCに電荷が蓄積され、キャパシタCの測定電圧vが次第に上昇する。
【0047】
時刻t=TtS1において、測定電圧vが閾値電圧Vthを超えると、コンパレータCMPは、選択信号SW1をスイッチSWA、SWBに供給する。その結果、スイッチSWA、SWBは、SW2からSW1への切り替え動作を開始する。
【0048】
但し、先述したように、スイッチSWA、SWBのSW2からSW1への切り替えは直ちには実行されない。SW2からSW1へ切り替わる時刻tは、時刻t=TtS1から遅延時間Dcmpを経た時刻t=TS1である。
【0049】
すなわち時刻t=TtS1から時刻t=TS1においては、キャパシタCには引き続き電荷が蓄積される。その結果、測定電圧vは閾値電圧Vthを超えてもそのまま上昇し、時刻t=TS1直前にピーク電圧Vpkに到達する。
【0050】
時刻t=TS1において、スイッチSWA、SWBがSW2からSW1へ切り替わると、キャパシタCとキャパシタCが並列に接続され、キャパシタCに蓄積されていた電荷がキャパシタCに流れ込む。このため、キャパシタCの測定電圧vは、指数関数的に低下する。また、キャパシタCで発生する電圧vは、指数関数的に上昇する。
【0051】
但し、キャパシタC、C間の寄生抵抗rが十分小さく、キャパシタC、C間の時定数τは遅延時間Dcmpと比較して無視できるものとする。この結果、時刻t=TS1を超えた瞬間、キャパシタCに蓄積された電荷の一部がキャパシタCに流れ込み、キャパシタC、Cのそれぞれで発生する電圧v、vは等しくVshになる。
【0052】
またこの時、測定電圧v(=v=Vsh)は閾値電圧Vthを下回るため、コンパレータCMPが選択信号SW2をスイッチSWA、SWBに供給し、スイッチSWA、SWBがSW1からSW2への切り替え動作を開始する。この時の時刻をt=TtS2とする。
【0053】
但し、先述したように、測定電圧v(=v=Vsh)が閾値電圧Vthより低下しても、スイッチSWA、SWBのSW1からSW2への切り替えは直ちには実行されない。SW1からSW2へ切り替わる時刻tは、時刻t=TtS2から遅延時間Dcmpを経た時刻t=TS2である。
【0054】
すなわち時刻t=TtS2から時刻t=TS2においては、キャパシタC、Cの両方には引き続き電荷が蓄積される。その結果、測定電圧v(=v)はそのまま上昇し、時刻t=TS2の直前に電圧Vbkに到達する。
【0055】
なお、この時の測定電圧vの上昇速度(傾き)はI/(C+C)であり、時刻t=0から時刻t=TtS1までの測定電圧vの上昇速度(=I/C)よりは小さい。その理由は、入力定電流i=Iによって流れ込む電荷が、並列接続されたキャパシタC、Cの両方に蓄積されるためである。
【0056】
スイッチSWA、SWBがSW1からSW2への切り替わると、キャパシタCは負荷抵抗Rと並列に接続される。その結果、キャパシタCに蓄積された電荷は、負荷抵抗Rを通じて排出され、キャパシタCで発生する電圧vは、時定数τ(=R・C)を持つ指数関数に従って急激に低下する。この電圧vが、出力端子OUTを介して、パルス信号として外部負荷に供給される。
【0057】
他方、キャパシタCは、キャパシタCから分離される。その結果、キャパシタCには入力定電流i=Iによる電荷が流れ込み、キャパシタCの測定電圧vは上昇する。この時の測定電圧vの上昇速度は、時刻t=0から時刻t=TtS1までの測定電圧vの上昇速度(=I/C)と同じである。
【0058】
2回目の時刻t=TtS1において、測定電圧vは再び閾値電圧Vthを超えて、スイッチSWA、SWBがSW2からSW1への切り替え動作を開始する。そして、2回目の時刻t=TtS1から遅延時間Dcmpを経た時刻t=TS1において、スイッチSWA、SWBがSW2からSW1へ切り替わる。その結果、キャパシタCに蓄積された電荷が、キャパシタCに流れ込む。
【0059】
以上のように、第1実施形態のニューロン素子10Aは、定電流i=Iが入力端子INに入力された場合、ピーク電圧がVbk、周期が2・Dcmp+(TtS1-TS2)であるパルス電圧を出力端子OUTから出力する。
【0060】
つぎに、時刻t=0において定電流i=Iが入力端子INに入力される場合の、ニューロン素子10Aの2つの正常動作条件について説明する。
【0061】
第1の正常動作条件は、時刻t=TS1での測定電圧v(=Vpk)が電源電圧VDDを超えないことである。すなわち第1の正常動作条件は、式(1)で与えられる。
【0062】
DD>Vpk= Vth+(I・Dcmp)/C …(1)
【0063】
ここで右側の等式の第2項は、時刻t=TtS1から時刻t=TS1までの間に、キャパシタCに流れ込んだ電荷によって、測定電圧vが上昇した分を表す。
【0064】
第2の正常動作条件については、遅延時間Dcmpが十分長くなった場合を考える。このとき、キャパシタCのピーク電圧Vpkが電源電圧VDDを超えないように、閾値電圧Vthを大きく下げたとする。
【0065】
しかし、その結果、スイッチSWA、SWBがSW1に切り替わっている状態、すなわちキャパシタCとキャパシタCが並列接続された状態で、測定電圧v(=v)が閾値電圧Vthを超える状況が起こり得る。
【0066】
図5は、遅延時間Dcmpが長くなった場合のニューロン素子10A内の各信号の時間変化を示すタイミングチャートである。
【0067】
図5では、測定電圧v(=v)が閾値電圧Vthを超えても、キャパシタCとキャパシタCの並列接続が保持されている状況が示されている。その後、時刻t=TS2において、キャパシタCとキャパシタCが分離される。この直前の測定電圧v(=v)の値はVbkである。
【0068】
一方、コンパレータCMPは、キャパシタCとキャパシタCの並列接続が保持された状況であっても、測定電圧v(=v)が閾値電圧Vthを超えた段階(時刻t=TtS1)で、選択信号SW1を出力する。その後、時刻t=TS1において、スイッチSWA、SWBは、SW1に切り替わる。
【0069】
これより、スイッチSWA、SWBによるSW1からSW2への切り替えと、SW2からSW1への切り替えとの各々において、SW切り替え動作の開始から実際にSWの切り替えが有効になるまでの期間がオーバーラップする。具体的には、図5において、時刻t=TtS1から時刻t=TS1までの期間と、時刻t=TtS2から時刻t=TS2までの期間において、時刻t=TtS1から時刻t=TS2までの期間が、オーバーラップする。
【0070】
その結果、スイッチSWA、SWBが実際にSW2に切り替わっている期間が短くなる。そして、キャパシタCの放電時間が短くなるため、電荷が十分に排出されなくなり、キャパシタCに残留電荷が存在することになる。
【0071】
その後、スイッチSWA、SWBが実際にSW1に切り替わってキャパシタCとキャパシタCが並列に接続された時、当該残留電荷は両者で共有されることになり、キャパシタC、Cで発生する電圧Vshは、その残留電荷の分だけ底上げされる。
【0072】
その結果、測定電圧v(=v)が閾値電圧Vthを超える時刻t=TtS1は前倒しになる(早くなる)。しかし、時刻t=TS2は変わらない。その理由は、時刻t=TS2が、スイッチSWA、SWBがSW2からSW1へ切り替わって測定電圧vが急激に低下し、測定電圧vが閾値電圧Vthを下回った時刻であるt=TtS2によって決定されるからである。
【0073】
これより、上述のオーバーラップの期間が更に長くなり、スイッチSWA、SWBが実際にSW2に切り替わっている期間が更に短くなる。このようにして、キャパシタC内の残留電荷は次第に増加し、最終的には、キャパシタCとキャパシタCが並列に接続されても両者で発生する電圧Vshが閾値電圧Vthを下回らなくなり、ニューロン素子10Aが正常に動作しなくなる。
【0074】
すなわち、第2の正常動作条件は、スイッチSWA、SWBが実際にSW2に切り替わっている間に、キャパシタCに蓄積されていた電荷が完全に排出されることである。
【0075】
いま、k回目にスイッチSWA、SWBがSW1からSW2に切り替わり、キャパシタCとキャパシタCの並列接続が分離される直前にキャパシタC、Cで発生していた電圧をVbk(k)とすると、この条件は式(2)の通りである。
【0076】
cmp-((C+C)・(Vbk(k)-Vth))/I>τ…(2)
【0077】
ここで左辺第2項は、測定電圧v(=v)が閾値電圧Vthを超えてから電圧Vbk(k)に至るまでの時間、すなわち、図5で示した時刻t=TtS1から時刻t=TS2までの期間に相当する。またτは、先述したようにキャパシタC及び負荷抵抗Rで構成された放電回路の時定数であって、式(3)で表される。
【0078】
τ=R・C…(3)
【0079】
ところで電圧Vbk(k)は、図5で示した1回目の電圧Vbk(1)を最大値とし、回数が進むごとに振動しつつ所定の値に収束していく。他方、測定電圧v(=v)=Vbk(1)の時点において蓄積された電荷の総量は、最初のt=TtS1の時点でCに蓄積された電荷C・Vthと、その後の2・Dcmpの間に流れ込んだ電荷2・I・Dcmpとの和である。よって、Vbk(k)とVbk(1)の関係は式(4)で表される。
【0080】
bk(k)≦Vbk(1)=(C・Vth+2・I・Dcmp)/(C+C)…(4)
【0081】
一方、式(2)において左辺が最小になるのは、Vbk(k)が最大値すなわちVbk(1)となる時である。これより式(2)においてVbk(k)をVbk(1)とし、式(3)及び式(4)を式(2)式に代入して整理すると、式(5)が得られる。
【0082】
(C・Vth)/I-Dcmp>R・C…(5)
【0083】
いま、想定される最大瞬間入力電流をImaxとした場合、入力定電流IをImaxとすることで、ここでの議論はImaxなる定電流が連続して入力されるという最も厳しい状態での解析となり、式(1)及び式(5)は、ニューロン素子10Aを安定動作させるための素子パラメータ間の正常動作条件を与えることになる。そこで、I=Imaxとして式(1)及び式(5)をVthについて整理すると、式(6)となる。
【0084】
max・(R+Dcmp/C)<Vth
<VDD-(Imax・Dcmp)/C…(6)
【0085】
式(6)より、閾値電圧Vthの許容設定範囲が得られる。さらに式(6)の最左辺及び最右辺に着目すれば、遅延時間Dcmpが満たすべき制約条件は、式(7)となる。
【0086】
cmp<(C・C)/(C+C)(VDD/Imax-R)…(7)
【0087】
すなわち式(6)及び式(7)が、想定される最大瞬間入力電流をImaxとした場合に、ニューロン素子10Aを正常に動作させるために、遅延時間Dcmp及び閾値電圧Vthが満たすべき正常動作条件となる。
【0088】
[第2実施形態]
つぎに、第2実施形態について説明する。なお、第1実施形態と同一の部分には同一の符号を付し、重複する説明は省略する。
【0089】
図6は、第2実施形態に係るニューロン素子10Bの構成例を示す回路図である。ニューロン素子10Bは、図1に示したニューロン素子10の一構成例である。
【0090】
ニューロン素子10Bは、キャパシタC、コンパレータCMP、パルス信号生成部PG、電圧制御電流源VCCSを備えている。キャパシタCの一方の端子は入力端子INに接続され、その他方の端子は接地されている。
【0091】
コンパレータCMPは、キャパシタCに蓄積された電荷蓄積量を、入力端子INの電圧(=キャパシタCで発生する電圧)として測定し、測定した電圧(測定電圧v)が所定の閾値電圧Vthを超えたか否かを判定する。コンパレータCMPは、測定電圧vが閾値電圧Vthを超えている場合はハイレベルの信号(H信号)をパルス信号生成部PGに供給し、測定電圧vが閾値電圧Vthを超えていない場合はローレベルの信号(L信号)をパルス信号生成部PGに供給する。
【0092】
パルス信号生成部PGは、コンパレータCMPからH信号が供給された場合に、デューティ比α(0<α<1)の矩形波であるパルス信号を生成する。また、パルス信号生成部PGは、コンパレータCMPからL信号が供給された場合は、パルス信号を生成しない。パルス信号生成部PGで生成されたパルス信号は、出力端子OUTを介して外部に出力されると共に、電圧制御電流源VCCSに供給される。
【0093】
電圧制御電流源VCCSは、キャパシタCと並列に接続されている。具体的には、電圧制御電流源VCCSの電流入力端子は入力端子INに接続されており、その電流出力端子は接地されている。そして、電圧制御電流源VCCSは、パルス信号生成部PGで生成されたパルス信号に基づいて、電流入力端子から電流出力端子に流れる電流を制御する。
【0094】
具体的には、電圧制御電流源VCCSは、パルス信号生成部PGで生成されたパルス信号のハイレベルに応答して強制的に定電流i=Iを流し、そのパルス信号のローレベルに応答して電流を遮断する。
【0095】
電圧制御電流源VCCSが強制的に定電流i=Iを流し、その定電流Iが入力端子INから流れ込む電流より大きい場合、入力端子INに接続されているキャパシタCから電荷が排出され、キャパシタCの測定電圧vが低下する。また、電圧制御電流源VCCSが電流を遮断する場合、入力端子INからのすべての電流がキャパシタCに流れ込み、キャパシタCの測定電圧vが上昇する。
【0096】
なお、キャパシタCの他方の端子及び電圧制御電流源VCCSの電流出力端子は、等電位であればよく、本実施形態のように接地される場合に限定されるものではない。
【0097】
ところで、パルス信号生成部PGは、増加中の測定電圧vが閾値電圧Vthを超えた時、又は減少中の測定電圧vが閾値電圧Vthを下回った時に、直ちに、パルス信号の生成動作を開始、または停止するものではない。すなわち、増加中又は減少中の測定電圧vが閾値電圧Vthを過ぎた又は下回った時から、実際にパルス信号生成部PGの動作が開始あるいは停止する時まで、所定の遅延時間Dcmpがある。
【0098】
よって、測定電圧vは、閾値電圧Vthを超えた時から遅延時間Dcmpを経過するまでは上昇し続け、遅延時間Dcmp経過後にパルス信号生成部PGの動作が開始し、それに連動して電圧制御電流源VCCSがキャパシタCから電荷を排出すると、低下する。
【0099】
キャパシタCの測定電圧vが下降しながら閾値電圧Vthを下回った場合も同様である。すなわち、測定電圧vは、閾値電圧Vthを下回った時から遅延時間Dcmpを経過するまでは下降し続け、遅延時間Dcmp経過後にパルス信号生成部PGの動作が停止し、それに連動して電圧制御電流源VCCSがキャパシタCからの電荷の排出を停止すると、上昇する。
【0100】
遅延時間Dcmpは、配線遅延、パルス信号生成部PGの動作遅延、コンパレータCMPに起因した遅延等の総和時間である。特に、コンパレータCMPに起因した遅延は、その出力容量Coutや相互コンダクタンスgなどから決定される。従って、それらを適切に設計することによって、遅延時間Dcmpが最適化される。
【0101】
以上のように構成されたニューロン素子10Bでは、外部から信号が入力されると、次のように動作する。
【0102】
図7は、ニューロン素子10B内の各信号の時間変化を示すタイミングチャートである。なお、初期状態において、図6に示すキャパシタCに蓄積されている電荷はゼロである。よって、キャパシタCの測定電圧vは0である。そして、測定電圧vが閾値電圧Vthを下回っていることから、コンパレータCMPはL信号を出力し、パルス信号生成部PGの動作は停止している。
【0103】
図7では、時刻t=0において、入力端子INに定電流i=Iが入力される。なお、実際には、入力端子INに入力される電流は一定ではない。また、本実施形態のニューロン素子10Bの正常動作条件の詳細については後述する。
【0104】
入力端子INに定電流i=Iが入力されると、キャパシタCに電荷が蓄積され、キャパシタCの測定電圧vが次第に上昇する。
【0105】
時刻t=TtOnにおいて、測定電圧vが閾値電圧Vthを超えると、コンパレータCMPの出力信号がL信号からH信号に切り替わる。その結果、パルス信号生成部PGは、パルス信号の生成動作を開始する。そして電圧制御電流源VCCSは、パルス信号生成部PGからパルス信号が供給されると、そのハイレベルに応答して強制的に定電流i=Iを流す(後述の時刻t=TOnを参照)。この結果、キャパシタCから電荷が排出され、測定電圧vが低下する。
【0106】
但し、先述したように、パルス信号生成部PGは、測定電圧vが閾値電圧Vthを超えても直ちには動作しない。パルス信号生成部PGがパルス信号の生成動作を開始する時刻tは、時刻t=TtOnから遅延時間Dcmpを経た時刻t=TOnである。
【0107】
すなわち時刻t=TtOnから時刻t=TOnにおいては、キャパシタCには引き続き電荷が蓄積される。その結果、測定電圧vは閾値電圧Vthを超えてもそのまま上昇し、時刻t=TOn直前にピーク電圧Vpkに到達する。
【0108】
時刻t=TOnにおいて、パルス信号生成部PGがパルス信号生成動作を開始すると、電圧制御電流源VCCSは、パルス信号生成部PGから供給されたパルス信号のハイレベルに応答して強制的に定電流i=Iを流す。この結果、キャパシタCから電荷が排出され、測定電圧vが低下する。
【0109】
また、電圧制御電流源VCCSは、当該パルス信号のローレベルに応答して電流を遮断する。このとき、キャパシタCに電荷が蓄積され、測定電圧vは再び上昇する。なお、この時の測定電圧vの上昇速度(傾き)は、時刻t=0から時刻t=TtOnまでの測定電圧vの上昇速度(=I/C)と同じである。
【0110】
この結果、パルス信号生成部PGによるパルス信号の生成期間では、測定電圧vは、低下と上昇を周期的に繰り返しながら、平均的には低下する。
【0111】
時刻t=TtOffにおいて、測定電圧vは、閾値電圧Vthを下回る。このとき、コンパレータCMPから出力されパルス信号生成部PGに提供される信号がH信号からL信号に切り替わる。そして、パルス信号生成部PGはパルス信号の生成動作を停止する。この結果、電圧制御電流源VCCSは、電流を遮断する。
【0112】
但し、先述したように、パルス信号生成部PGは、測定電圧vが閾値電圧Vthを下回っても直ちには停止しない。パルス信号生成部PGがパルス信号生成動作を停止する時刻tは、時刻t=TtOffから遅延時間Dcmpを経た時刻t=TOffである。すなわち時刻t=TtOffから時刻t=TOffにおいては、キャパシタCからは引き続き電荷が排出される。その結果、測定電圧vは、閾値電圧Vthを下回ってもそのまま下降する。
【0113】
なお、パルス信号生成部PGは、その特性上、パルス信号の生成動作中にコンパレータCMPからL信号が供給されても、その生成動作を直ちには中断せずに、1周期分の完全なパルス信号を生成した後に停止する。
【0114】
時刻t=TOffにおいて、パルス信号生成部PGの動作が停止し、電圧制御電流源VCCSが停止して電流を遮断する。すると、入力端子INからの定電流i=IでキャパシタCに電荷が蓄積され、キャパシタCの測定電圧vが再び上昇する。
【0115】
その後、2度目の時刻t=TtOnにおいて、測定電圧vは再び閾値電圧Vthを超える。そして、2度目の時刻t=TtOnから遅延時間Dcmpを経た時刻t=TOnにおいて、パルス信号生成部PG及び電圧制御電流源VCCSが再び動作を開始する。そして、上述した動作が繰り返される。
【0116】
以上のように、第2実施形態のニューロン素子10Bは、定電流i=Iが入力端子INに入力された場合、所定の電圧を有し、周期がD、デューティ比がαの矩形波であるパルス信号を出力端子OUTから断続的に出力する。
【0117】
つぎに、ニューロン素子10Bの2つの正常動作条件について説明する。
第1の正常動作条件では、時刻t=0において定電流i=Iが入力端子INに入力される場合を考える。ここでは、正常動作条件の導出のため、定電流i=Iの代わりに、最大瞬間入力電流i=Imaxを用いる。
【0118】
先述したように、キャパシタCの測定電圧vが平均的に低下し続けるためには、定電流i=ImaxによってキャパシタCに流れ込む電荷の量よりも、電圧制御電流源VCCSによってキャパシタCから排出される電荷の量の方が多くなる必要がある。
【0119】
ここで、時刻t=TOnの直後に、パルス信号生成部PGによって生成される1周期分のパルス信号について考える。
【0120】
当該パルス信号の1周期において、キャパシタCに流れ込む電荷の総量は、パルス信号の1周期がDであることから、D・Imaxとなる。その1周期において、電圧制御電流源VCCSによってキャパシタCから排出される電荷の総量は、電圧制御電流源VCCSの動作時間がα・Dとなることから、α・D・Iとなる。そして後者が前者よりも大きいことから、第1の正常動作条件は式(8)となる。
【0121】
>1/α・Imax…(8)
【0122】
ところで、キャパシタCに蓄積された電荷蓄積量がゼロになっても、電圧制御電流源VCCSがキャパシタCから電荷を強制的に排出しようとすると、正常に動作しないことが想定される。そこで第2の正常動作条件は、この正常に動作しない状態を回避するための条件である。
【0123】
図8は、正常に動作しない状態を引き起こす蓋然性が最も高い場合のニューロン素子10B内の各信号の時間変化を示すタイミングチャートである。
【0124】
図8では、時刻t=0において、入力端子INに定電流i=Imaxが入力される。これより、キャパシタCに電荷が蓄積され、キャパシタCの測定電圧vが速度Imax/Cで上昇する。
【0125】
時刻t=TtOnにおいて、測定電圧vが閾値電圧Vthを超えた直後に、定電流i=Imaxが停止したとする。その結果、キャパシタCの電荷蓄積量は一定の状態を維持する。その後、パルス信号生成部PGがパルス信号生成動作を開始し、それに応答して電圧制御電流源VCCSが定電流i=Iを流すと、キャパシタCから電荷が強制的に排出される。
【0126】
但し、電圧制御電流源VCCSが実際に動作を開始するのは、時刻t=TtOnから遅延時間Dcmpを経て時刻t=TOnになった時点であり、パルス信号生成部PGがパルス信号生成動作を開始してからである。なお、時刻t=TOnの直前では、キャパシタCには、C・Vthなる電荷が蓄積されている。
【0127】
時刻t=TOnにおいて、電圧制御電流源VCCSは、パルス信号生成部PGから供給されたパルス信号のハイレベルに応答して定電流i=Iを流す。その結果、1周期分のパルス信号において、キャパシタCからは(α・D・I)なる量の電荷が強制的に排出され、測定電圧vは(α・D・I/C)だけ低下する。また、電圧制御電流源VCCSは、当該パルス信号のローレベルに応答して電流を遮断する。このとき、キャパシタCから電荷は排出されず、測定電圧vは変化しない。
【0128】
このように、パルス信号がハイレベルの時は測定電圧vが低下し、パルス信号がローレベルの時は測定電圧vが低下せず一定のままである。よって、図8に示すように、時刻t=TOn以降、測定電圧vは、周期的かつ断続的に低下する。
【0129】
ところで、先述したように、時刻t=TOnの直前にて、キャパシタCには、C・Vthなる電荷が蓄積されている。そして時刻t=TOn直後のパルス信号においてキャパシタCから電荷が排出されることから、測定電圧vは直ちに閾値電圧Vthを下回り、コンパレータCMPからパルス信号生成部PGに提供される信号がH信号からL信号に切り替わる。この時の時刻をt=TtOffとする。
【0130】
但し、先述したように、パルス信号生成部PGのパルス信号生成動作は、測定電圧vが閾値電圧Vthを下回っても直ちには停止しない。パルス信号生成部PGが当該動作を停止する時刻tは、時刻t=TtOffから遅延時間Dcmpを経た時刻t=TOffである。すなわち時刻t=TtOffから時刻t=TOffにおいては、キャパシタCからは電圧制御電流源VCCSによって周期的かつ断続的に電荷が排出される。換言すれば、上述した測定電圧vの下降は、時刻t=TOffまでの期間、継続する。
【0131】
ここで、電圧制御電流源VCCSに供給されたパルス信号がn周期を経て、測定電圧vがゼロ近傍まで低下した場合を考える。このとき、キャパシタCから排出された電荷の総量は、(n・α・D・I)となる。他方、先述したように、パルス信号生成部PGがパルス信号生成動作を開始するまでにキャパシタCに蓄積された電荷蓄積量は(C・Vth)である。
【0132】
キャパシタCから排出される電荷の総量は、キャパシタCに蓄積された電荷蓄積量を超えてはならない。すなわち、式(9)を満たす必要がある。
【0133】
(n・α・D・I)/C<Vth<VDD…(9)
【0134】
ここで、式(9)の右側の不等式は、閾値電圧Vthの上限が電源電圧VDDであることを示している。
【0135】
つぎに、電圧制御電流源VCCSの継続的な動作による電荷排出期間と遅延時間Dcmpとの関係について述べる。
【0136】
図8において、仮に、遅延時間Dcmpが電荷排出期間より短い場合、時刻t=TOffの位置が左に移動する結果、キャパシタCに蓄積された電荷はゼロにはならない。よって、ニューロン素子10Bは正常に動作する。
【0137】
逆に、遅延時間Dcmpが電荷排出期間より長い場合、キャパシタCに蓄積された電荷蓄積量を超えて電荷が排出されることになる。よって、ニューロン素子10Bは正常に動作しない。これより、遅延時間Dcmpが満たすべき条件は、電圧制御電流源VCCSに供給されるパルス信号の周期Dが遅延時間Dcmpよりも十分小さい場合、式(10)で与えられる。
cmp≦n・D…(10)
【0138】
ここでnは、ある実数xに対してx以下の最大の整数がガウス記号[]を用いて[x]で表されるとすると、式(11)で与えられる。
n=[(C・Vth)/(α・D・I)]…(11)
【0139】
そして式(11)を式(10)に代入し、更に式(9)の右側の不等式及び式(8)を考慮すると、式(10)は式(12)となる。
cmp<C・VDD/Imax…(12)
【0140】
また、式(10)を式(9)の左側の不等式に代入し、更に式(8)を考慮すると、式(9)は式(13)となる。
(Dcmp・Imax)/C<Vth<VDD…(13)
【0141】
すなわち式(12)及び式(13)が、想定される最大瞬間入力電流をImaxとした場合に、ニューロン素子10Bを正常に動作させるために、遅延時間Dcmp及び閾値電圧Vthが満たすべき正常動作条件となる。
【0142】
また、パルス信号生成部PGは、電圧制御電流源VCCSによって制御される定電流i=Iが式(8)を満たすように設定されるデューティ比αと、所望のnから式(10)を満たすように設定される周期Dと、を有するパルス信号を生成するように設計すればよい。
【0143】
なお、第1及び第2実施形態では、キャパシタCの基準電位を0Vとし、キャパシタCに電流が流れ込み、キャパシタCで発生する測定電圧vが電源電圧VDDに向かって上昇する場合を説明した。但し、これらの実施形態に限定されるものではない。
【0144】
例えば、後述するように、キャパシタCの基準電位は0Vのままとし、キャパシタCから電流が流れ出し、キャパシタCで発生する測定電圧vが負の電源電圧VDDに向かって下降していくものでもよい。
【0145】
さらには、電源電圧VDDをキャパシタCの基準電位とし、キャパシタCに電流が流れ込んだ結果、キャパシタCで発生する測定電圧vが0Vに向けて下降していくものであってもよい。
【0146】
[第3実施形態]
つぎに、第3実施形態について説明する。なお、上述した実施形態と同一の部分には同一の符号を付し、重複する説明は省略する。
【0147】
図9は、第3実施形態に係るニューロン素子10Cの構成例を示す回路図である。ニューロン素子10Cは、図3に示すニューロン素子10Aに相当する回路と、ニューロン素子10Aに相当する回路を反転させた回路と、を有している。すなわち、ニューロン素子10Cは、キャパシタC、CB1、CB2、コンパレータCMP、スイッチSWA1、SWB1、SWA2、SWB2、負荷抵抗R、Rを備えている。
【0148】
キャパシタCの一端側は入力端子IN1に接続され、その他端側は入力端子IN2に接続されている。すなわち、キャパシタCは接地されていない。よって、入力端子IN1からキャパシタCへ電流が流れ込むと、流れ込んだ電流と等しい大きさの電流が入力端子IN2から流れ出す。このため、キャパシタCの両端には入力端子IN2の電位を基準とした電圧vが発生する。このように、キャパシタCは1個にまとめられるため、部品数を抑制することができる。
【0149】
キャパシタCB1及びキャパシタCB2の一方の端子はそれぞれスイッチSWA1及びSWA2の端子SW3に接続され、その他方の端子はそれぞれスイッチSWB1及びSWB2の端子SW3に接続されている。
【0150】
スイッチSWA1及びスイッチSWA2の端子SW1は、それぞれ入力端子IN1及び入力端子IN2に接続されている。スイッチSWB1及びスイッチSWB2の端子SW1は互いに接続されている。
【0151】
スイッチSWA1の端子SW2は、負荷抵抗R及び出力端子OUT1に接続されている。スイッチSWA2の端子SW2は、負荷抵抗R及び出力端子OUT2に接続されている。スイッチSWB1及びスイッチSWB2の端子SW2は接地されている。
【0152】
負荷抵抗Rの一方の端子はスイッチSWA1の端子SW2及び出力端子OUT1に接続されており、その他方の端子は接地されている。また負荷抵抗Rの一方の端子はスイッチSWA2の端子SW2及び出力端子OUT2に接続されており、その他方の端子は接地されている。
【0153】
コンパレータCMPの反転入力端子は所定の参照電圧Vthを供給する定電圧源Vthの正極に接続され、その非反転入力端子は入力端子IN1に接続されている。定電圧源Vthの負極は、入力端子IN2に接続されている。そして、定電圧源Vthは、入力端子IN2の電位を基準とした参照電圧Vthを、閾値電圧Vthとして、コンパレータCMPの反転入力端子に供給する。
【0154】
コンパレータCMPは、キャパシタCに蓄積された電荷蓄積量を、入力端子IN2の電位を基準とした入力端子IN1の電圧(キャパシタCの電圧)として測定し、測定した電圧(測定電圧v)が所定の閾値電圧Vthを超えたか否かを判定する。コンパレータCMPは、測定電圧vが閾値電圧Vthを超えている場合は選択信号SW1をスイッチSWA1、SWB1、SWA2、SWB2に供給し、測定電圧vが閾値電圧Vthを超えていない場合は選択信号SW2をスイッチSWA1、SWB1、SWA2、SWB2に供給する。
【0155】
スイッチSWA1、SWB1、SWA2、SWB2は、コンパレータCMPから選択信号が供給されると、次のように切り替わる。すなわち、スイッチSWA1、SWB1、SWA2、SWB2は、選択信号SW1が供給された場合は、端子SW1及び端子SW3の間が導通する(SW1に切り替わる)。また、スイッチSWA1、SWB1、SWA2、SWB2は、選択信号SW2が供給された場合は、端子SW2及び端子SW3の間が導通する(SW2に切り替わる)。
【0156】
このため、スイッチSWA1、SWB1、SWA2、SWB2に選択信号SW1が供給される場合、キャパシタCと、キャパシタCB1とCB2とを直列接続したものと、が並列に接続される。他方、スイッチSWA1、SWB1、SWA2、SWB2に選択信号SW2が供給された場合、キャパシタCB1及びキャパシタCB2がそれぞれ負荷抵抗R及び負荷抵抗Rに並列に接続され、キャパシタCB1及びキャパシタCB2に蓄積された電荷が、それぞれ負荷抵抗R及び負荷抵抗Rを通じて放電する。
【0157】
なお、スイッチSWB1、スイッチSWB2の端子SW2、負荷抵抗R及び負荷抵抗Rの他方の端子は、等電位であればよく、本実施形態のように接地される場合に限定されるものではない。
【0158】
以上のように構成されたニューロン素子10Cでは、外部から信号が入力されると、次のように動作する。なお、初期状態において、キャパシタC、CB1、CB2に蓄積されている電荷はゼロである。よって、キャパシタCの測定電圧vは0である。測定電圧vが閾値電圧Vthを下回っていることから、すべてのスイッチSWA1、SWB1、SWA2、SWB2は、SW2に切り替わっている。よって、キャパシタCB1及びキャパシタCB2は、キャパシタCから分離される。
【0159】
いま、入力端子IN1に定電流i=Iが入力されると、入力端子IN2からはそれと等価な定電流i=Iが流れ出し、キャパシタCに電荷が蓄積され、キャパシタCの測定電圧vが次第に上昇する。
【0160】
測定電圧vが閾値電圧Vthを超えると、コンパレータCMPは、選択信号SW1をスイッチSWA1、SWB1、SWA2、SWB2に供給する。その結果、スイッチSWA1、SWB1、SWA2、SWB2は、SW2からSW1へ切り替え動作を開始する。
【0161】
但し、第1実施形態の場合と同様に、スイッチSWA1、SWB1、SWA2、SWB2のSW2からSW1への切り替えは直ちには実行されない。SW2からSW1への切り替わる時刻tは、測定電圧vが閾値電圧Vthを超えた時刻t=TtS1から遅延時間Dcmpを経た時刻t=TS1である。
【0162】
すなわち時刻t=TtS1から時刻t=TS1においては、キャパシタCには引き続き電荷が蓄積される。その結果、測定電圧vは閾値電圧Vthを超えてもそのまま上昇し、時刻t=TS1直前にピークに到達する。
【0163】
時刻t=TS1において、スイッチSWA1、SWB1、SWA2、SWB2がSW2からSW1へ切り替わると、キャパシタCと、キャパシタCB1とキャパシタCB2とを直列接続したものと、が並列に接続される。そして、キャパシタCに蓄積されていた電荷が、キャパシタCB1とキャパシタCB2とを直列接続したもの、に流れ込む。このため、キャパシタCの測定電圧vは、指数関数的に低下する。また、キャパシタCB1及びキャパシタCB2で発生する電圧vB1及びvB2は、それぞれ指数関数的に上昇及び低下する。
【0164】
但し、キャパシタC、CB1、CB2間の寄生抵抗rが十分小さく、キャパシタC、CB1、CB2間の時定数τは遅延時間Dcmpと比較して無視できるものとする。この結果、時刻t=TS1を超えた瞬間、キャパシタCに蓄積された電荷の一部がキャパシタCB1及びキャパシタCB2に流れ込み、キャパシタC、キャパシタCB1とキャパシタCB2とを直列接続したもの、のそれぞれで発生する電圧v(=vB1+vB2)は等しくなる。
【0165】
またこの時、測定電圧v(=vB1+vB2)は閾値電圧Vthを下回るため、コンパレータCMPが選択信号SW2をスイッチSWA1、SWB1、SWA2、SWB2に供給し、スイッチSWA1、SWB1、SWA2、SWB2が、SW1からSW2への切り替え動作を開始する。
【0166】
測定電圧vが閾値電圧Vthを下回った時点から遅延時間Dcmpが経過すると、スイッチSWA1、SWB1、SWA2、SWB2が、SW1からSW2へ切り替わる。これにより、キャパシタCB1とキャパシタCB2とを直列接続したものは、キャパシタCから分離される。そして、キャパシタCB1及びCB2に蓄積されていた電荷は、それぞれ負荷抵抗R及びRを通じて排出される。
【0167】
キャパシタCB1及びCB2のそれぞれで発生する電圧vB1及びvB2は、それぞれ時定数τ21(=R・CB1)及びτ22(=R・CB2)を持つ指数関数に従ってそれぞれ急激に低下及び上昇する。この電圧vB1及びvB2が、それぞれ出力端子OUT1及びOUT2を介して、パルス信号として外部負荷に供給される。
【0168】
ここで、キャパシタC、CB1、CB2のそれぞれの静電容量をC、CB1、CB2、負荷抵抗R、Rのそれぞれの抵抗値をR、Rすると、第1実施形態で用いたキャパシタCの静電容量C並びに負荷抵抗Rの抵抗値Rとの間にそれぞれ、式(14)及び式(15)が成立している。
B1=CB2=2・C ・・・(14)
=R=R/2 ・・・(15)
【0169】
式(14)及び式(15)が成立する場合、図9の上半分の回路(キャパシタC、CB1、コンパレータCMP、負荷抵抗R)は、図3の回路(キャパシタC、C、コンパレータCMP、負荷抵抗R)と完全に等価となる。また、図9の下半分の回路(キャパシタC、CB2、コンパレータCMP、負荷抵抗R)は、図3の回路の極性を反転させたものと完全に等価となる。すなわち、出力端子OUT2から出力される信号は、出力端子OUT1から出力される信号の極性が反転したものとなる。
【0170】
この結果、ニューロン素子10Cは、図3の場合と比較して、上下の回路に等しく加わる雑音の影響を打ち消すことが可能となり、より低雑音、高精度なパルス信号を生成できる。
【0171】
なお、本実施形態は、第1実施形態のニューロン素子10Aをベースとしたものに限定されず、第2実施形態のニューロン素子10Bをベースとしたものにも適用可能である。すなわち、本実施形態は、図1のニューロン素子10と同様の機能を有するすべてのものに適用可能である。
【0172】
[第4実施形態]
つぎに、第4実施形態について説明する。なお、上述した実施形態と同一の部分には同一の符号を付し、重複する説明は省略する。
【0173】
図10は、第4実施形態に係るADコンバータ100の構成を示すブロック図である。ADコンバータ100は、変調パルス信号生成部50と、パルス波形整形部60と、デジタルフィルタ70と、を備えている。変調パルス信号生成部50は、図1に示すニューロン素子10と同じ構成である。
【0174】
パルス波形整形部60は、変調パルス信号生成部50から受信したパルス信号の波形が矩形でない場合、それを整形し、矩形波として出力する。デジタルフィルタ70は、例えば、多段階接続されたT型フリップフロップで構成されるパルスカウンタである。デジタルフィルタ70は、パルス波形整形部60から受信した矩形波について、例えば時間軸上の所定範囲の矩形の受け数を数えてnビットの出力デジタル信号へと変換するなどといった処理をおこなう。
【0175】
図11は、従来(例えば図15)のΔΣ変調型ADコンバータの入力アナログ信号、変調パルス信号、出力デジタル信号を示す波形図である。
【0176】
図11において、上段の入力アナログ信号は、周波数1Hz、振幅0.5V(0.0V~1.0V)の正弦波電圧信号である。
中段の波形図は、この入力アナログ信号に対し、サンプリング周波数500HzでΔΣ変調を実施した結果得られる1ビット変調パルス信号を示す。
下段の波形図は、後段のデジタルフィルタにおいて、この1ビット変調パルス信号に対して所定のデジタル処理をおこなうことで得られる、入力アナログ信号のAD変換結果としての出力デジタル信号である。
【0177】
図11中段の波形図に示すように、従来のΔΣ変調型ADコンバータにおいては、振幅の基準値(図11の場合は0.5V)近傍のパルス密度が高くなっている。これにより、従来のΔΣ変調型ADコンバータでは、例えば入力信号の振幅幅が-1.0V~1.0Vに設定された場合、その基準値である0V近傍においてパルス密度が最も高くなる。
【0178】
換言すれば、従来のΔΣ変調型ADコンバータにおいては、入力アナログ信号がほとんどない状態(入力アナログ信号が基準値(ゼロ)近傍にある場合)においても、高密度のパルス信号が発生する。このため、入力アナログ信号がほとんどないにも関わらず、徒に電力を消費してしまうといった問題がある。
【0179】
図12は、図10に示すADコンバータ100の入力アナログ信号、変調パルス信号、出力デジタル信号を示す波形図である。
【0180】
図12において、上段の入力アナログ信号は、周波数1Hz、振幅5nA(0nA~10nA)の正弦波電流信号である。
中段の波形図は、このアナログ信号を入力として、ADコンバータ100の変調パルス信号生成部50で得られる1ビット変調パルス信号を示す。なお、変調パルス信号生成部50は、本来であれば、入力信号があった場合に受動的に処理をおこなうイベント駆動型の動作をおこなうが、本実施形態では、従来のΔΣ変調型ADコンバータとの比較のため、500Hzなるサンプリング周波数に基づく同期型の動作をおこなった結果を示している。
下段の波形図は、デジタルフィルタ70において、この1ビット変調パルス信号に対して所定のデジタル処理をおこなうことで得られる、入力アナログ信号のAD変換結果としての出力デジタル信号である。
【0181】
図12中段の波形図に示すように、ADコンバータ100においては、入力アナログ信号がゼロ近傍の時のパルス密度が大幅に低下している。
【0182】
換言すれば、ADコンバータ100においては、入力アナログ信号がほとんどない場合には、パルス信号の密度を疎にすることにより、入力アナログ信号の強度に応じて消費電力を抑制することができる。
【0183】
なお、本実施形態では、ADコンバータ100は、入力アナログ信号である正弦波電流信号をAD変換する事例が示されているが、このような事例に限定されるものではない。
【0184】
例えば、図1に示すニューロン素子10は、先述したように、本来は信号入力があった時のみ動作するイベント駆動型素子として機能する。すなわち、ニューロン素子10は、一般の同期処理とは異なり、入力信号がない時には無駄な回路が一切動作しないので、電力消費を著しく抑制することができる。
【0185】
[第5実施形態]
つぎに、第5実施形態について説明する。なお、上述した実施形態と同一の部分には同一の符号を付し、重複する説明は省略する。
【0186】
図13は、ニューラルネットワーク200の構成例を示す図である。ニューラルネットワーク200は、多段で構成された複数のニューロン素子10を備えている。図14は、ニューロン素子10の出力信号xi(i=1、2、3)と重みづけ係数wi(i=1、2、3)を示す図である。
【0187】
任意のニューロン素子10の入力信号は、複数のニューロン素子10の出力信号xiがそれぞれ重み付け係数wiにより重みづけされ、それらが重畳されたものである。その入力信号が、ニューロン素子10の電荷蓄積部12に蓄積される。そして、ニューロン素子10は、図2に示す処理を経て、出力信号を次段のニューロン素子10に供給する。
【0188】
なお、任意のニューロン素子10の入力信号は、他のニューロン素子10の出力信号である場合に限らず、外部からの入力信号(外部入力信号)であってもよいし、当該出力信号及び外部入力信号の両方であってもよい。さらに、当該出力信号及び外部入力信号は、単数でも複数でもよい。
【0189】
また、任意のニューロン素子10の出力信号は、他のニューロン素子10の入力信号である場合に限らず、外部への出力信号(外部出力信号)であってもよいし、当該入力信号及び外部出力信号の両方であってもよい。さらに、当該入力信号及び外部出力信号は、単数でも複数でもよい。
【0190】
以上のような構成のニューラルネットワーク200は、所望の目的に応じて、予め準備した教師データに基づいて重み付け係数wiを最適化することで、いわゆるディープラーニングを実現することができる。
【0191】
なお、本発明は、先述した実施形態に限定されるものではなく、特許請求の範囲に記載事項の範囲内で設計変更されたものにも適用可能である。
【符号の説明】
【0192】
10、10A、10B、10C ニューロン素子
12 電荷蓄積部
13 電荷排出部
14 パルス信号生成部
16 制御部
20 信号処理部
50 変調パルス信号生成部
70 デジタルフィルタ
100 ADコンバータ
200 ニューラルネットワーク
、C、CB1、CB2 キャパシタ
CMP コンパレータ
PG パルス信号生成部
R、R、R 負荷抵抗
SWA、SWA1、SWA2、SWB、SWB1、SWB2 スイッチ
VCCS 電圧制御電流源
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15