(57)【要約】【課題】積和演算を行うアナログ方式の回路において、回路構成を簡素化するとともに積和演算の消費電力を低減することが可能な演算装置及び積和演算システムを提供する。【解決手段】演算装置は、複数の入力線と複数の積和演算装置とを具備する。各入力線には、所定の入力期間内に入力値に応じた電気信号が入力される。積和演算装置の乗算部は、入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、荷重値の絶対値の総和に対する正の荷重値の総和の比率が０から１００％までの間のいずれかの比率となるように構成される。積和演算装置の出力部は、正荷重電荷と負荷重電荷とをそれぞれ蓄積可能な蓄積部を有し、蓄積部の電圧に基づいて乗算値の和を電圧で表す電圧信号を生成し、電圧信号に基づいて積和信号を出力する。【選択図】図１４
2020126426.tif 000002
【特許請求の範囲】
【請求項１】
所定の入力期間内に、入力値に応じた電気信号がそれぞれ入力される複数の入力線と、
各々が、
前記複数の入力線の各々に入力される前記電気信号に基づいて、前記入力値に荷重値を乗算した乗算値に対応する電荷を生成する複数の乗算部と、
前記複数の乗算部の各々により生成された前記乗算値に対応する電荷を蓄積し、前記蓄積された電荷に基づいて、前記乗算値の和を表す積和信号を出力する出力部と
を有し、
前記複数の乗算部は、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は前記入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、前記荷重値の絶対値の総和に対する前記正の荷重値の総和の比率が０％から１００％までの間のいずれかの比率となるように構成され、
前記出力部は、前記正荷重電荷と前記負荷重電荷とをそれぞれ蓄積可能な蓄積部を有し、前記蓄積部の電圧に基づいて前記乗算値の和を電圧で表す電圧信号を生成し、前記電圧信号に基づいて前記積和信号を出力する
複数の積和演算装置と
を具備し、
前記複数の積和演算装置は、各々が有する前記複数の乗算部の前記荷重値の絶対値の総和が互いに等しくなるように構成される
演算装置。
【請求項２】
請求項１に記載の演算装置であって、
前記蓄積部は、前記正荷重電荷を蓄積する正荷重蓄積部と、前記負荷重電荷を蓄積する負荷重蓄積部とを含み、
前記出力部は、前記正荷重蓄積部により保持される正荷重電圧と、前記負荷重蓄積部により保持される負荷重電圧との差分電圧に基づいて前記電圧信号を生成する
演算装置。
【請求項３】
請求項２に記載の演算装置であって、
前記出力部は、前記差分電圧を所定の増幅率で増幅して前記電圧信号を生成する
演算装置。
【請求項４】
請求項１に記載の演算装置であって、
前記出力部は、前記乗算値の和を表す前記積和信号として前記乗算値の和を電圧で表す前記電圧信号を出力する
演算装置。
【請求項５】
請求項４に記載の演算装置であって、
前記出力部は、前記電圧信号を、所定の出力期間内におけるタイミング又はパルス幅により前記乗算値の和を表す前記積和信号に変換する
演算装置。
【請求項６】
請求項５に記載の演算装置であって、
前記出力部は、前記複数の積和演算装置の各々で生成された前記電圧信号に基づいて、前記出力期間内において正規化された前記積和信号を出力する
演算装置。
【請求項７】
請求項５に記載の演算装置であって、さらに、
前記複数の積和演算装置の各々が有する前記出力部にランプ電圧を供給する電圧供給部を具備し、
前記出力部は、前記電圧信号の電圧を閾値として前記ランプ電圧の閾値判定を実行することで、前記積和信号を出力する
演算装置。
【請求項８】
請求項７に記載の演算装置であって、
前記出力部は、前記ランプ電圧が前記電圧信号の電圧を過ぎて大きくなる又は小さくなるタイミングに基づいて、前記積和信号を出力する
演算装置。
【請求項９】
請求項７に記載の演算装置であって、さらに、
前記複数の積和演算装置の各々で生成された前記電圧信号の電圧のうち、最大の電圧を参照電圧として検出する検出部を具備し、
前記電源供給部は、前記参照電圧に基づいて前記ランプ電圧の傾きを設定する
演算装置。
【請求項１０】
請求項９に記載の演算装置であって、
前記電源供給部は、前記ランプ電圧を第１の傾きに設定し、
前記出力部は、前記第１の傾きの前記ランプ電圧が前記電圧信号の電圧を過ぎて大きくなる又は小さくなるタイミングで論理状態が切り替わる中間信号を生成し、
前記検出部は、前記複数の積和演算装置の各々で生成された前記中間信号の論理和又は論理積に基づいて前記参照電圧を検出する
演算装置。
【請求項１１】
請求項９に記載の演算装置であって、
前記電源供給部は、前記出力期間が終了するタイミングにおいて前記ランプ電圧が前記参照電圧と一致するように前記ランプ電圧を第２の傾きに設定し、
前記出力部は、前記第２の傾きの前記ランプ電圧が前記電圧信号の電圧を過ぎて大きくなる又は小さくなるタイミングで論理状態が切り替わる前記積和信号を出力する
演算装置。
【請求項１２】
請求項１に記載の演算装置であって、
前記出力部は、前記電圧信号の電圧を一時的に保存する
演算装置。
【請求項１３】
請求項１に記載の演算装置であって、
前記出力部は、前記電圧信号の電圧を保持するアナログメモリを有する
演算装置。
【請求項１４】
請求項１に記載の演算装置であって、
前記正の荷重値及び前記負の荷重値の絶対値は、同じ値で固定されており、
前記複数の積和演算装置は、各々が有する前記複数の乗算部の総数が互いに等しくなるように構成される
演算装置。
【請求項１５】
請求項１４に記載の演算装置であって、
前記入力期間は、前記電気信号の入力により前記蓄積部の電圧が連続的に変化する過渡状態となる期間に設定される
演算装置。
【請求項１６】
請求項１に記載の演算装置であって、
前記電気信号は、前記入力期間内の前記入力値に応じたタイミングから前記入力期間の終了タイミングまでの期間に応じたパルス幅を有する
演算装置。
【請求項１７】
所定の入力期間内に、入力値に応じた電気信号がそれぞれ入力される複数の入力線と、
各々が、
前記複数の入力線の各々に入力される前記電気信号に基づいて、前記入力値に荷重値を乗算した乗算値に対応する電荷を生成する複数の乗算部と、
前記複数の乗算部の各々により生成された前記乗算値に対応する電荷を蓄積し、前記蓄積された電荷に基づいて、前記乗算値の和を表す積和信号を出力する出力部と
を有し、
前記複数の乗算部は、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は前記入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、前記荷重値の絶対値の総和に対する前記正の荷重値の総和の比率が０％から１００％までの間のいずれかの比率となるように構成され、
前記出力部は、前記正荷重電荷と前記負荷重電荷とをそれぞれ蓄積可能な蓄積部を有し、前記蓄積部の電圧に基づいて前記乗算値の和を電圧で表す電圧信号を生成し、前記電圧信号に基づいて前記積和信号を出力する
複数の積和演算装置と、
前記複数の積和演算装置を接続して構成されたネットワーク回路と
を具備し、
前記複数の積和演算装置は、各々が有する前記複数の乗算部の前記荷重値の絶対値の総和が互いに等しくなるように構成される
積和演算システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、アナログ方式を用いた積和演算に適用可能な演算装置、及び積和演算システムに関する。
【背景技術】
【０００２】
従来、積和演算を行う技術が開発されている。積和演算は、複数の入力値のそれぞれに荷重を乗算し、各乗算結果を互いに加算する演算であり、例えばニューラルネットワーク等による画像や音声等の認識処理に用いられる。
【０００３】
例えば特許文献１には、積和演算の処理をアナログ方式によって行うアナログ回路について記載されている。このアナログ回路では、複数の電気信号のそれぞれに対応した荷重が設定される。また、対応する電気信号と荷重とに応じた電荷がそれぞれ出力され、出力された電荷がキャパシタに適宜蓄えられる。そして、電荷が蓄えられたキャパシタの電圧に基づいて積和結果を表す算出対象値が算出される。これにより、例えばデジタル方式による処理と比べて積和演算に要する消費電力を抑制することが可能となっている（特許文献１の明細書段落［０００３］［００４９］〜［００５３］［００６２］図３等）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１８／０３４１６３号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このようなアナログ方式の回路を用いることで、ニューラルネットワーク等の低消費電力化につながると期待されており、回路構成を簡素化するとともに積和演算の消費電力を低減することが可能な技術が求められている。
【０００６】
以上のような事情に鑑み、本技術の目的は、積和演算を行うアナログ方式の回路において、回路構成を簡素化するとともに積和演算の消費電力を低減することが可能な演算装置、及び積和演算システムを提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本技術の一形態に係る演算装置は、複数の入力線と、複数の積和演算装置とを具備する。
前記複数の入力線には、所定の入力期間内に、入力値に応じた電気信号がそれぞれ入力される。
前記複数の積和演算装置は、各々が、前記複数の入力線の各々に入力される前記電気信号に基づいて、前記入力値に荷重値を乗算した乗算値に対応する電荷を生成する複数の乗算部と、前記複数の乗算部の各々により生成された前記乗算値に対応する電荷を蓄積し、前記蓄積された電荷に基づいて、前記乗算値の和を表す積和信号を出力する出力部とを有し、前記複数の乗算部は、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は前記入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、前記荷重値の絶対値の総和に対する前記正の荷重値の総和の比率が０％から１００％までの間のいずれかの比率となるように構成され、前記出力部は、前記正荷重電荷と前記負荷重電荷とをそれぞれ蓄積可能な蓄積部を有し、前記蓄積部の電圧に基づいて前記乗算値の和を電圧で表す電圧信号を生成し、前記電圧信号に基づいて前記積和信号を出力する。
前記複数の積和演算装置は、各々が有する前記複数の乗算部の前記荷重値の絶対値の総和が互いに等しくなるように構成される。
【０００８】
この演算装置では、複数の積和演算装置において、入力値と正及び負の荷重値との乗算値に対応する正荷重電荷及び負荷重電荷が蓄積部に蓄積され、蓄積部の電圧に基づいて乗算値の和を電圧で表す電圧信号が生成される。また各積和演算装置の荷重値の絶対値の総和は互いに等しくなるように設定される。これにより電圧信号の歪みが低減され、積和演算を適正に実行することが可能となる。このように電圧信号を用いることで、回路構成を簡素化するとともに積和演算の消費電力を低減することが可能となる。
【０００９】
前記蓄積部は、前記正荷重電荷を蓄積する正荷重蓄積部と、前記負荷重電荷を蓄積する負荷重蓄積部とを含んでもよい。この場合、前記出力部は、前記正荷重蓄積部により保持される正荷重電圧と、前記負荷重蓄積部により保持される負荷重電圧との差分電圧に基づいて前記電圧信号を生成してもよい。
【００１０】
前記出力部は、前記差分電圧を所定の増幅率で増幅して前記電圧信号を生成してもよい。
【００１１】
前記出力部は、前記乗算値の和を表す前記積和信号として前記乗算値の和を電圧で表す前記電圧信号を出力してもよい。
【００１２】
前記出力部は、前記電圧信号を、所定の出力期間内におけるタイミング又はパルス幅により前記乗算値の和を表す前記積和信号に変換してもよい。
【００１３】
前記出力部は、前記複数の積和演算装置の各々で生成された前記電圧信号に基づいて、前記出力期間内において正規化された前記積和信号を出力してもよい。
【００１４】
前記演算装置であって、さらに、前記複数の積和演算装置の各々が有する前記出力部にランプ電圧を供給する電圧供給部を具備してもよい。この場合、前記出力部は、前記電圧信号の電圧を閾値として前記ランプ電圧の閾値判定を実行することで、前記積和信号を出力してもよい。
【００１５】
前記出力部は、前記ランプ電圧が前記電圧信号の電圧を過ぎて大きくなる又は小さくなるタイミングに基づいて、前記積和信号を出力してもよい。
【００１６】
前記演算装置は、さらに、前記複数の積和演算装置の各々で生成された前記電圧信号の電圧のうち、最大の電圧を参照電圧として検出する検出部を具備してもよい。この場合、前記電源供給部は、前記参照電圧に基づいて前記ランプ電圧の傾きを設定してもよい。
【００１７】
前記電源供給部は、前記ランプ電圧を第１の傾きに設定してもよい。この場合、前記出力部は、前記第１の傾きの前記ランプ電圧が前記電圧信号の電圧を過ぎて大きくなる又は小さくなるタイミングで論理状態が切り替わる中間信号を生成してもよい。また、前記検出部は、前記複数の積和演算装置の各々で生成された前記中間信号の論理和又は論理積に基づいて前記参照電圧を検出してもよい。
【００１８】
前記電源供給部は、前記出力期間が終了するタイミングにおいて前記ランプ電圧が前記参照電圧と一致するように前記ランプ電圧を第２の傾きに設定してもよい。この場合、前記出力部は、前記第２の傾きの前記ランプ電圧が前記電圧信号の電圧を過ぎて大きくなる又は小さくなるタイミングで論理状態が切り替わる前記積和信号を出力してもよい。
【００１９】
前記出力部は、前記電圧信号の電圧を一時的に保存してもよい。
【００２０】
前記出力部は、前記電圧信号の電圧を保持するアナログメモリを有してもよい。
【００２１】
前記正の荷重値及び前記負の荷重値の絶対値は、同じ値で固定されていてもよい。この場合、前記複数の積和演算装置は、各々が有する前記複数の乗算部の総数が互いに等しくなるように構成されてもよい。
【００２２】
前記入力期間は、前記電気信号の入力により前記蓄積部の電圧が連続的に変化する過渡状態となる期間に設定されてもよい。
【００２３】
前記電気信号は、前記入力期間内の前記入力値に応じたタイミングから前記入力期間の終了タイミングまでの期間に応じたパルス幅を有してもよい。
【００２４】
本技術の一形態に係る積和演算システムは、前記複数の入力線と、前記複数の積和演算装置を含むネットワーク回路とを具備する。
前記複数の積和演算装置は、前記複数の乗算部と、前記出力部とを有する。
【図面の簡単な説明】
【００２５】
【図１】本技術の第１の実施形態に係る演算装置の構成例を示す模式図である。
【図２】アナログ回路に入力される電気信号の一例を示す模式図である。
【図３】演算装置の具体的な構成例を示す模式図である。
【図４】ニューロン回路の構成例を示す模式図である。
【図５】アナログ回路の一例を示す模式的な回路図である。
【図６】図５に示すアナログ回路による積和信号の算出例を説明するための図である。
【図７】複数のシナプス回路に入力される入力信号の一例を示す模式図である。
【図８】図７に示すキャパシタの電圧の時間変化の一例を示す模式的なグラフである。
【図９】入力期間の終了タイミングにおけるキャパシタの電圧について説明するための模式的なグラフである。
【図１０】本実施形態に係るアナログ回路の構成例を示す回路図である。
【図１１】１つの階層に含まれる複数のアナログ回路の構成例を示す模式図である。
【図１２】正荷重電圧及び負荷重電圧と正負の荷重比率との関係の一例を示すグラフである。
【図１３】差分電圧と正負の荷重比率との関係の一例を示すグラフである。
【図１４】本実施形態に係る演算装置の具体的な構成例を示す回路図である。
【図１５】演算装置の動作の一例を示すタイミングチャートである。
【図１６】ランプ電圧の閾値判定の一例を示す模式図である。
【図１７】ランプ電圧の閾値判定の一例を示す模式図である。
【図１８】演算装置の接続例を示す回路図である。
【図１９】第２の実施形態に係る演算装置の構成例を示す模式図である。
【図２０】最大値検出処理について説明するためのグラフである。
【図２１】正規化出力処理について説明するためのグラフである。
【図２２】演算装置の接続例を示す模式図である。
【発明を実施するための形態】
【００２６】
以下、本技術に係る実施形態を、図面を参照しながら説明する。
【００２７】
＜第１の実施形態＞
［演算装置の構成］
図１は、本技術の第１の実施形態に係る演算装置の構成例を示す模式図である。演算装置１００は、積和演算を含む所定の演算処理を実行するアナログ方式の演算装置である。演算装置１００を用いることで、例えばニューラルネットワーク等の数学モデルに従った演算処理を実行することが可能である。
【００２８】
演算装置１００は、複数の信号線１と、複数の入力部２と、複数のアナログ回路３とを有する。各信号線１は、所定の方式の電気信号を伝送する線である。電気信号としては、例えばパルスのタイミングや幅等のアナログ量を用いて信号値を表すアナログ信号が用いられる。図１には電気信号が伝送される方向が、矢印を用いて模式的に図示されている。本実施形態では、アナログ回路３は、積和演算装置に相当する。
【００２９】
例えば、１つのアナログ回路３には、複数の信号線１が接続される。アナログ回路３に電気信号を伝送する信号線１は、その信号線１が接続されたアナログ回路３にとって、電気信号が入力される入力信号線となる。また、アナログ回路３から出力される電気信号を伝送する信号線１は、その信号線１が接続されたアナログ回路３にとって、電気信号が出力される出力信号線となる。本実施形態では、入力信号線は、入力線に相当する。
【００３０】
複数の入力部２は、入力データ４に応じた複数の電気信号をそれぞれ生成する。入力データ４は、例えば演算装置１００によって実装されるニューラルネットワーク等を用いた処理の対象となるデータである。従って入力データ４に応じた複数の電気信号の各信号値は、演算装置１００に対する入力値であるとも言える。
【００３１】
入力データ４としては、例えば演算装置１００の処理対象となる画像データ、音声データ、統計データ等の任意のデータが用いられる。例えば、入力データ４として画像データが用いられる場合等には、画像データの各画素の画素値（ＲＧＢ値や輝度値等）を信号値とする電気信号が生成される。この他、入力データ４の種類や演算装置１００による処理の内容に応じて、入力データ４に応じた電気信号が適宜生成されてよい。
【００３２】
アナログ回路３は、入力される電気信号に基づいて、積和演算を行うアナログ方式の回路である。積和演算は、例えば複数の入力値と、各入力値に対応する荷重値とをそれぞれ乗算して得られる複数の乗算値を足し合わせる演算である。従って積和演算は、各乗算値の和（以下積和結果と記載する）を算出する処理であるとも言える。
【００３３】
図１に示すように、１つのアナログ回路３には、複数の入力信号線が接続され、複数の電気信号が与えられる。これら複数の入力信号線とアナログ回路とにより、本実施形態に係る積和演算回路が構成される。また各入力信号線から複数の電気信号が入力されることで、積和演算回路（アナログ回路３）により、本実施形態に係る積和演算方法が実行される。
【００３４】
以下では、１つのアナログ回路３に入力される電気信号の総数をＮとする。なお、各アナログ回路３に入力される電気信号の個数Ｎは、例えば演算処理のモデルや精度等に応じて回路ごとに適宜設定される。
【００３５】
アナログ回路３では、例えばｉ番目の入力信号線から入力される電気信号により表される信号値ｘiと、信号値ｘiに対応する荷重値ｗiとの乗算値であるｗi・ｘiが算出される。ここでｉはＮ以下の自然数（ｉ＝１、２、・・・、Ｎ）である。乗算値の演算は、各電気信号（入力信号線）ごとに実行され、Ｎ個の乗算値が算出される。このＮ個の乗算値をそれぞれ足し合わせた値が積和結果（Ｎ個の乗算値の和）として算出される。従って、１つのアナログ回路３で算出される積和結果は、以下の式で表される。
【００３６】
【数１】
2020126426.tif 000003
【００３７】
荷重値ｗiは、例えば−α≦ｗi≦＋αの範囲に設定される。ここでαは、任意の実数値である。従って荷重値ｗiには、正の荷重値ｗiや負の荷重値ｗi、あるいはゼロの荷重値ｗi等が含まれる。このように、荷重値ｗiを所定の範囲に設定することで、積和結果が発散するといった事態を回避することが可能である。
【００３８】
また例えば、荷重値ｗiが設定される範囲が規格化されてもよい。この場合、荷重値ｗiは、−１≦ｗi≦１の範囲に設定される。これにより、例えば積和結果の最大値や最小値等を調整することが可能となり、所望の精度で積和演算を実行することが可能となる。
【００３９】
ニューラルネットワーク等では、荷重値ｗiを＋α及び−αのどちらかに設定するバイナリコネクトと呼ばれる手法を用いることが可能である。バイナリコネクトは、例えば深層ニューラルネットワーク（多層ニューラルネットワーク）を用いた画像認識等の様々な分野に用いられる。バイナリコネクタを用いることで、認識精度等を劣化させることなく、荷重値ｗiの設定を簡略化することが可能である。
【００４０】
上記したように、バイナリコネクトでは、荷重値ｗiがバイナリ値（±α）に２値化される。従って例えば、荷重値ｗiの正負を切り替えることで、所望の荷重値ｗiを容易に設定することが可能である。また、２値化された荷重値ｗiを規格化して、荷重値ｗiを±１に設定してもよい。この他、荷重値ｗiの設定範囲や値等は限定されず、例えば所望の処理精度が実現されるように適宜設定されてよい。
【００４１】
信号値ｘiは、例えば入力部２から出力された電気信号や、アナログ回路３から出力された積和結果である。このように、入力部２及びアナログ回路３は、信号値ｘiを出力する信号源として機能するとも言える。
【００４２】
図１に示す例では、１つの信号源（入力部２、アナログ回路３）から、単一の電気信号（単一の信号値ｘi）が出力される。従って、１つの信号源の出力側に接続された複数の信号線１には、それぞれ同じ電気信号が入力される。また、１つの信号源と、その信号源から出力された電気信号が入力されるアナログ回路３とが、単一の入力信号線で接続される。
【００４３】
従って例えば、図１に示す演算装置１００では、Ｍ個の信号源と接続されるアナログ回路３には、Ｍ個の入力信号線が接続されることになる。この場合、アナログ回路３に入力される電気信号の総数Ｎは、Ｎ＝Ｍとなる。なお、１つの信号源から、正負に対応した１対の電気信号（１対の信号値ｘi+、ｘi-）が出力される構成もあり得る。
【００４４】
図１に示すように、演算装置１００は、複数の階層のそれぞれに、複数のアナログ回路３が設けられた階層構造を有する。アナログ回路３の層構造を構成することで、例えば多層パーセプトロン型のニューラルネットワーク等が構築される。各階層に設けられるアナログ回路３の数や、階層の数等は、例えば所望の処理が実行可能となるように適宜設計される。以下では、ｊ段目の層に設けられるアナログ回路３の数をＮjと記載する場合がある。
【００４５】
例えば１段目の層（最下位層）に設けられた各アナログ回路３には、Ｎ個の入力部２により生成されたＮ個の電気信号がそれぞれ入力される。１段目の各アナログ回路３により、入力データの信号値ｘiに関する積和結果がそれぞれ算出され、非線形変換処理後に次の階層（２段目）に設けられたアナログ回路３に出力される。
【００４６】
２段目の層（上位層）に設けられた各アナログ回路３には、１段目で算出された各積和結果を表すＮ1個の電気信号がそれぞれ入力される。従って２段目の各アナログ回路３から見ると、１段目で算出された各積和結果の非線形変換処理結果が電気信号の信号値ｘiとなる。２段目の各アナログ回路３により、１段目から出力された信号値ｘiに関する積和結果が算出され、さらに上位層のアナログ回路３に出力される。
【００４７】
このように、演算装置１００では、下位層のアナログ回路３で算出された積和結果に基づいて、上位層のアナログ回路３の積和結果が算出される。このような処理が複数回実行され、最上位層（図１では３段目の層）に含まれるアナログ回路３から処理結果が出力される。これにより、例えば猫が撮影された画像データ（入力データ４）から、被写体が猫であることを判定するといった画像認識等の処理が可能となる。
【００４８】
このように、複数のアナログ回路３を適宜接続することで所望のネットワーク回路を構成することが可能である。ネットワーク回路は、例えば信号を通過させることで演算処理を行うデータフロー型の処理システムとして機能する。ネットワーク回路では、例えば荷重値（シナプス結合）を適宜設定することで、様々な処理機能を実現することが可能となる。このネットワーク回路により、本実施形態に係る積和演算システムが構築される。
【００４９】
なお、各アナログ回路３を接続する方法等は限定されず、例えば所望の処理が可能となるように、複数のアナログ回路３が適宜接続されてもよい。例えば、各アナログ回路３が階層構造とは異なる他の構造を構成するように接続される場合であっても、本技術は適用可能である。
【００５０】
上記では、下位層で算出された積和結果をそのまま上位層に入力する構成について説明した。これに限定されず、例えば積和結果についての変換処理等が実行されてもよい。例えばニューラルネットワークモデルでは、各アナログ回路３の積和結果に対して、活性化関数を用いて非線形変換を行い、その変換結果を上位層に入力するといった処理が実行される。
【００５１】
演算装置１００では、例えば電気信号に対して活性化関数による非線形変換を行う関数回路５等が用いられる。関数回路５は、例えば下位層と上位層との間に設けられ、入力する電気信号の信号値を適宜変換して、変換結果に応じた電気信号を出力する回路である。関数回路５は、例えば信号線１ごとに設けられる。関数回路５の数や配置等は、例えば演算装置１００に実装される数学モデル等に応じて適宜設定される。
【００５２】
活性化関数としては、例えばＲｅＬＵ関数（ランプ関数）等が用いられる。ＲｅＬＵ関数は、例えば信号値ｘiが０以上である場合には、信号値ｘiをそのまま出力し、それ以外の場合には０を出力する。例えばＲｅＬＵ関数を実装した関数回路５が各信号線１に適宜接続される。これにより、演算装置１００の処理を実現することが可能である。
【００５３】
図２は、アナログ回路３に入力される電気信号の一例を示す模式図である。図２には、複数の電気信号の波形を表すグラフが模式的に図示されている。グラフの横軸は時間軸であり、縦軸は電気信号の電圧である。なお各グラフの時間軸は共通である。
【００５４】
図２には、スパイクタイミング方式（以下、ＴＡＣＴ方式と記載する）の電気信号の波形の一例が示されている。ＴＡＣＴ方式では、電気信号としてパルスの立ち上がりタイミングを用いて信号値ｘiを表す信号が用いられる。例えば所定のタイミングを基準として、信号値に応じたタイミングでパルスが入力される。
【００５５】
本実施形態では、所定の入力期間Ｔ内に、電気信号（パルス）が入力される。この入力期間Ｔにおける、パルスの入力タイミングにより信号値ｘiが表される。従って、例えば入力期間Ｔの開始と同時に入力されたパルスが最も大きい信号値ｘiを表すことになる。入力期間Ｔの終了と同時に入力されたパルスが最も小さい信号値ｘiを表すことになる。
【００５６】
言い換えると、パルスの入力タイミングから入力期間Ｔの終了タイミングまでの長さにより、信号値ｘiが表されるということも可能である。この場合、パルスの入力タイミングから入力期間Ｔの終了タイミングまでの長さが入力期間Ｔと等しいパルスが、最も大きい信号値ｘiを表すことになる。パルスの入力タイミングから入力期間Ｔの終了タイミングまでの長さがゼロのパルスが、最も小さい信号値ｘiを表すことになる。
【００５７】
図２では、信号値に応じたタイミングに立ち上がり、積和結果が得られるまでＯＮレベルを維持する継続的なパルス信号が用いられる。これに限定されず、電気信号として、所定のパルス幅を持った矩形パルス等が用いられてもよい。
【００５８】
本実施形態に係るアナログ回路３をＴＡＣＴ方式のアナログ回路３と言うことも可能である。本実施形態では、ＴＡＣＴ方式のアナログ回路３を用いた時間軸アナログ積和演算が実行可能である。
【００５９】
以下では、各電気信号により表される信号値ｘiが０以上１以下の変数であるとして説明を行う。
【００６０】
図３は、演算装置１００の具体的な構成例を示す模式図である。図３は、例えば図１に示す演算装置１００を実現する回路の配置例であり、演算装置１００のうち１つの階層に設けられる複数のアナログ回路３が模式的に図示されている。
【００６１】
アナログ回路３は、１対の出力線７と、複数のシナプス回路８と、ニューロン回路９とを有する。図３に示すように、１つのアナログ回路３は、所定の方向（図中の縦方向）に延在するように構成される。この縦方向に延在するアナログ回路３が、横方向に複数並んで配置されることで、１つの階層が構成される。以下では、図中の最も左側に配置されたアナログ回路３を１番目のアナログ回路３とする。またアナログ回路３が延在する方向を延在方向と記載する場合がある。本実施形態では、ニューロン回路９は、出力部に相当する。
【００６２】
１対の出力線７は、延在方向に沿って互いに離間して配置される。１対の出力線７は、正電荷出力線７ａと、負電荷出力線７ｂとを有する。正電荷出力線７ａ及び負電荷出力線７ｂの各々は、複数のシナプス回路８を経由してニューロン回路９に接続される。
【００６３】
シナプス回路８は、電気信号により表される信号値ｘiと荷重値ｗiとの乗算値（ｗi・ｘi）を算出する。具体的には、乗算値に対応する電荷（電流）を正電荷出力線７ａ及び負電荷出力線７ｂのどちらか一方に出力する。
【００６４】
後述するように、シナプス回路８には正の荷重値ｗi+及び負の荷重値ｗi-のどちらか一方が設定される。例えば正の荷重値ｗi+との乗算値に対応する正荷重電荷は、正電荷出力線７ａに出力される。また例えば負の荷重値ｗi-との乗算値に対応する負荷重電荷は、負電荷出力線７ｂに出力される。
【００６５】
なおシナプス回路８では、乗算値に対応する電荷として、荷重値ｗiの正負に係らず同符号の電荷（例えば正の電荷）が出力される。すなわち、正荷重電荷及び負荷重電荷は、互いに同符号の電荷となる。
【００６６】
このように、シナプス回路８は、乗算結果に対応する電荷を荷重値ｗiの符号に応じてそれぞれ別の出力線７ａ又は７ｂに出力するように構成される。シナプス回路８の具体的な構成については、後に詳しく説明する。本実施形態において、シナプス回路８は、乗算部に相当する。
【００６７】
本実施形態では、１つのシナプス回路８に対して、単一の入力信号線６と、１対の出力線７とが接続される。すなわち１つのシナプス回路８には、単一の電気信号が入力され、入力された電気信号に基づいて算出された乗算値に対応する電荷が、いずれか一方の出力線７ａ又は７ｂに出力される。このように、シナプス回路８は、単一の入力信号線６と１対の出力線７（正電荷出力線７ａ及び負電荷出力線７ｂ）とに接続された１入力２出力の回路となる。
【００６８】
１つのアナログ回路３では、複数のシナプス回路８が、１対の出力線７に沿って配置される。各シナプス回路８は、正電荷出力線７ａ（負電荷出力線７ｂ）に対してそれぞれ並列に接続される。以下では、最も下流側（ニューロン回路９に接続される側）に配置されるシナプス回路８を１番目のシナプス回路とする。
【００６９】
図３に示すように、複数の入力信号線６は、複数のアナログ回路３の各々が有する１対の出力線７に対して交差するように配線される。典型的には、入力信号線６は各出力線７と直交するように設けられる。すなわち、演算装置１００は、入力信号線６と出力線７とが交差したクロスバー構成を有する。クロスバー構成を用いることで、例えばアナログ回路３等を高密度に集積化することが可能となる。
【００７０】
また演算装置１００では、ｊ番目の入力信号線６に対して、各アナログ回路３に含まれるｊ番目のシナプス回路８がそれぞれ並列に接続される。従って、同じ入力信号線６に接続されるシナプス回路８には、互いに同様の電気信号が入力される。これにより、下位層に含まれる１つの信号源が、上位層に含まれる複数のアナログ回路３に接続される構成を実装することが可能である。
【００７１】
なお図３に示す例では、各入力信号線６に電気信号を入力する信号源として、下位層に含まれるアナログ回路３（プレニューロン）が模式的に図示されている。これに限定されず、例えば信号源として、入力部２が用いられる場合にも、クロスバー構成を用いることが可能である。
【００７２】
このように、演算装置１００では、複数のアナログ回路３が、複数の入力信号線６の各々に並列に接続される。これにより、例えば、各アナログ回路３（各シナプス回路８）に対して並列に電気信号を入力することが可能となり、演算処理の高速化を図ることが可能である。この結果、優れた演算性能を発揮することが可能となる。
【００７３】
ニューロン回路９は、各シナプス回路８で算出された乗算値に基づいて、（数１）式に示す積和結果を算出する。具体的には、１対の出力線７を介して入力された電荷に基づいて、積和結果（積和信号）を表す電気信号を出力する。
【００７４】
図４は、ニューロン回路９の構成例を示す模式図である。ニューロン回路９は、蓄積部１１と、信号出力部１２とを有する。図４には、１対の出力線７と、単一の出力信号線１０とに接続された２入力１出力のニューロン回路９が示されている。なお、ニューロン回路９として２入力２出力の回路等が用いられる場合もあり得る。
【００７５】
蓄積部１１は、複数のシナプス回路８の各々により生成された乗算値に対応する電荷を蓄積する。蓄積部１１は、２つのキャパシタ１３ａ及び１３ｂを有する。キャパシタ１３ａは、正電荷出力線７ａとＧＮＤとの間に接続される。またキャパシタ１３ｂは、負電荷出力線７ｂとＧＮＤとの間に接続される。従って各キャパシタ１３ａ及び１３ｂには、正電荷出力線７ａ及び負電荷出力線７ｂから流れ込む電荷がそれぞれ蓄積される。
【００７６】
例えば電気信号の入力期間Ｔが経過した際に、キャパシタ１３ａに蓄積された電荷は、正の荷重値ｗi+との乗算値に対応する正荷重電荷の総和σ+となる。また同様に、キャパシタ１３ｂに蓄積された電荷は、負の荷重値ｗi-との乗算値に対応する負荷重電荷の総和σ-となる。このように蓄積部１１は、正荷重電荷と負荷重電荷とをそれぞれ蓄積可能である。
【００７７】
例えばキャパシタ１３ａに正荷重電荷が蓄積されると、ＧＮＤを基準とする正電荷出力線７ａの電位が上昇する。従って、正電荷出力線７ａの電位は、正の荷重値ｗi+との乗算値に対応する電荷の総和σ+に応じた値となる。なお、正電荷出力線７ａの電位は、キャパシタ１３ａにより保持される電圧に相当する。
【００７８】
同様に、キャパシタ１３ｂに負荷重電荷が蓄積されると、ＧＮＤを基準とする負電荷出力線７ｂの電位が上昇する。従って、負電荷出力線７ｂの電位は、負の荷重値ｗi-との乗算値に対応する電荷の総和σ-に応じた値となる。なお、負電荷出力線７ｂの電位は、キャパシタ１３ｂにより保持される電圧に相当する。
【００７９】
信号出力部１２は、蓄積部１１に蓄積された電荷に基づいて、乗算値（ｗi・ｘi）の和を表す積和信号を出力する。積和信号は、例えば正負合わせたすべての荷重値ｗiと信号値ｘiとの乗算値の和である全体の積和結果を表す信号である。例えば、（数１）式で表される積和結果は、以下のように書き表すことが可能である。
【００８０】
【数２】
2020126426.tif 000004
【００８１】
ここで、Ｎ+及びＮ-は、それぞれ正の荷重値ｗi+の総数及び負の荷重値ｗi-の総数である。（数２）式に示すように、全体の積和結果は、正の荷重値ｗi+との乗算値（ｗi+・ｘi）の総和である正荷重電荷の積和結果と、負の荷重値ｗi-との乗算値（｜ｗi-｜・ｘi）の総和である負荷重電荷の積和結果との差分として算出可能である。
【００８２】
図４に示す例では、信号出力部１２は、積和信号として、例えば全体の積和結果を表す１つの信号を生成する。具体的には、蓄積部１１（キャパシタ１３ａ及び１３ｂ）に蓄積された電荷を適宜参照して、正の積和結果及び負の積和結果を算出し、これらの差分から全体の積和結果が算出される。
【００８３】
蓄積部１１に蓄積された電荷を参照する方法は限定されない。一例として、１つのキャパシタ１３に蓄積された電荷を検出する方法について説明する。ここでは、図２に例示するようなＴＡＣＴ方式の電気信号が用いられるとする。すなわち入力期間Ｔの終了後にもＯＮレベルが維持されるので、キャパシタ１３に電荷が蓄積される。
【００８４】
この電荷の蓄積に対して、比較器（コンパレータ等）を用いて、キャパシタ１３が接続された出力線の電位が所定の閾値電位に到達するタイミングを検出する。例えば入力期間Ｔの終了時の電荷が多いほど、閾値電位に達するタイミングが早くなる。従ってタイミングに基づいて、入力期間Ｔの間に蓄積された電荷（積和結果）を表すことが可能となる。なお、この閾値判定は、キャパシタ１３に保持される電圧が、閾値電圧に到達するタイミングを検出することに相当する。
【００８５】
このように閾値判定を行うことで、積和結果を表すタイミングが検出される。この検出結果に基づいて、正荷重電荷の積和信号や負荷重電荷の積和信号、あるいは全体の積和信号が適宜生成される。この他にも、例えば入力期間Ｔの終了時のキャパシタ１３の電位を直接読み出して、各積和結果が算出されてもよい。
【００８６】
図５は、アナログ回路の一例を示す模式的な回路図である。アナログ回路３は、複数の入力信号線６に対して、直交する方向に延在して設けられる。すなわち図５に示す例では、クロスバー構成が採用されている。以下では、各入力信号線６に入力される電気信号を入力信号と記載する。
【００８７】
アナログ回路３は、１対の出力線（正電荷出力線７ａ、負電荷出力線７ｂ）と、複数のシナプス回路（複数の乗算部）８と、ニューロン回路９とを有する。図５に示す例では、ニューロン回路９は、蓄積部１１、及び信号出力部１２を含んでいる。
【００８８】
複数の入力信号線６には、入力信号ｉｎ1〜ｉｎ6として、信号値ｘiに応じたタイミングでパルス信号（ＴＡＣＴ信号）が入力される。図５に示す例では、６本の入力信号線６が図示されているが、入力信号線６の数は限定されない。入力信号ｉｎ1〜ｉｎ6は、所定の長さを有する入力期間Ｔ内に入力される（図６参照）。
【００８９】
正電荷出力線７ａは、信号値ｘiに正の荷重値ｗi+を乗算した乗算値（ｗi+・ｘi ）に対応する正荷重電荷を出力する。負電荷出力線７ｂは、信号値ｘiに負の荷重値ｗi-を乗算した乗算値（｜ｗi-｜・ｘi ）に対応する負荷重電荷を出力する。
【００９０】
複数のシナプス回路８は、複数の入力信号線６に対応してそれぞれ設けられる。本実施形態では、１つの入力信号線６に対して、１つのシナプス回路８が設けられる。複数のシナプス回路８の各々は、複数の入力信号線６のうちの対応する入力信号線６と、正電荷出力線７ａ及び負電荷出力線７ｂのいずれか１つとの間に接続される抵抗器１７を含む。この抵抗器１７は、非線形特性を有してもよく、電流の逆流防止機能を有してもよい。そして抵抗器１７が接続された出力線７ａ（又は７ｂ）に、乗算値（ｗi+・ｘi ）（又は（｜ｗi-｜・ｘi ））に対応する電荷を出力する。
【００９１】
例えば、各シナプス回路８において、信号値ｘiに対して正の荷重値ｗi+を乗算したい場合には、入力信号線６と正電荷出力線７ａとの間に抵抗器１７を接続し、正電荷出力線７ａに、正荷重電荷を出力させる。図５に示す例では、入力信号ｉｎ1 、ｉｎ3 、ｉｎ6 が入力されるシナプス回路８が、正荷重電荷を生成する正荷重乗算部として構成されたシナプス回路８ａとなる。シナプス回路８ａは、正荷重が設定された乗算部ともいえる。
【００９２】
各シナプス回路８において、信号値ｘiに対して負の荷重値ｗi-を乗算したい場合には、入力信号線６と負電荷出力線７ｂとの間に抵抗器１７を接続し、負電荷出力線７ｂに、負荷重電荷を出力させる。図５に示す例では、入力信号ｉｎ2 、ｉｎ4 、ｉｎ5 が入力されるシナプス回路８が、負荷重電荷を生成する負荷重乗算部として構成されたシナプス回路８ｂとなる。シナプス回路８ｂは、負荷重が設定された乗算部ともいえる。
【００９３】
このように、複数のシナプス回路８は、複数の入力線の各々に入力される電気信号に基づいて、信号値に荷重値を乗算した乗算値に対応する電荷を生成し、各出力線に出力する。これにより積和演算の乗算処理を、同一のタイミングで高速に実行することが可能となる。
【００９４】
なお抵抗器１７は、設定したい荷重値ｗiに応じた抵抗値を有するものが用いられる。すなわち抵抗器１７は、積和演算をアナログ回路３で実行する演算装置１００において、荷重値ｗiを規定する素子として機能する。
【００９５】
抵抗器１７としては、例えば、固定抵抗素子、可変抵抗素子、又はサブスレッショルド領域で動作するＭＯＳトランジスタ等が用いられる。例えば、抵抗器１７として、サブスレッショルド領域で動作するＭＯＳトランジスタを用いることで、低消費電力化を実現することが可能となる。もちろん、他の任意の抵抗器が用いられてもよい。本実施形態では、同じ抵抗値を有する抵抗器１７が用いられる。すなわち、各荷重値ｗiは、同一の抵抗値を用いて表される。これにより、正の荷重値ｗi+及び負の荷重値ｗi-の絶対値は互いに等しく設定され、荷重値が２値化されたバイナリコネクトが実現される。
【００９６】
蓄積部１１は、複数のシナプス回路８の各々により生成された、乗算値（ｗi・ｘi ）に対応する電荷を蓄積する。本実施形態では、蓄積部１１として、２つのキャパシタ１３ａ及び１３ｂが設けられる。
【００９７】
キャパシタ１３ａは、正電荷出力線７ａに接続され、シナプス回路８ａにより生成された正荷重電荷を蓄積する。本実施形態において、キャパシタ１３ａは、正荷重蓄積部として機能する。キャパシタ１３ｂは、負電荷出力線７ｂに接続され、シナプス回路８ｂにより生成された負荷重電荷を蓄積する。本実施形態において、キャパシタ１３ｂは、負荷重蓄積部として機能する。
【００９８】
時間の経過にともなって、正電荷出力線７ａの電位（キャパシタ１３ａに保持された電圧）Ｖ+、及び負電荷出力線７ｂの電位（キャパシタ１３ｂに保持された電圧）Ｖ-が、それぞれ増加される。
【００９９】
信号出力部１２は、入力期間Ｔの終了後、蓄積部１１により保持される電圧に対して、所定の閾値により閾値判定を実行することで、乗算値（ｗi・ｘi ）の和を表す積和信号を出力する。図５に示す例では、信号出力部１２として、２つのコンパレータ２０ａ及びコンパレータ２０ｂと、信号生成部２１とが設けられる。
【０１００】
コンパレータ２０ａは、キャパシタ１３ａにより保持される電圧が、所定の閾値θ１よりも大きくなるタイミングを検出する。なおキャパシタ１３ａにより保持される電圧の大きさは、キャパシタ１３ａに蓄積された正荷重電荷の総量により定まる。
【０１０１】
コンパレータ２０ｂは、キャパシタ１３ｂにより保持される電圧が、所定の閾値θ２よりも大きくなるタイミングを検出する。なおキャパシタ１３ｂにより保持される電圧の大きさは、キャパシタ１３ｂに蓄積された負荷重電荷の総量により定まる。
【０１０２】
なお本実施形態では、キャパシタ１３ａ及び１３ｂの各々に対して、同じ閾値より閾値判定を実行することで、積和信号が出力される。すなわち閾値θ１＝閾値θ２に設定される。
【０１０３】
信号生成部２１は、コンパレータ２０ａにより検出されたタイミング、及びコンパレータ２０ｂにより検出されたタイミングに基づいて、乗算値（ｗi・ｘi ）の和を表す積和信号を出力する。すなわち信号生成部２１は、キャパシタ１３ａにより保持される電圧が閾値θ１に達したタイミングと、キャパシタ１３ｂにより保持される電圧が閾値θ２（＝θ１）に達したタイミングとに基づいて、積和信号を出力する。
【０１０４】
本実施形態では、全体の乗算値の和である積和結果を時間情報として表す積和信号が出力される。例えば積和信号として、入力タイミングが変調されたパルス信号である、ＴＡＣＴ信号が出力される（図２参照）。また例えば積和信号として、パルス幅が変調されたパルス信号である、ＰＭＷ信号が出力される。信号生成部２１の具体的な回路構成等は限定されず、任意に設計されてよい。
【０１０５】
図６は、図５に示すアナログ回路３による積和信号の算出例を説明するための図である。本実施形態では、キャパシタ１３ａに蓄積された正荷重電荷に基づいた正荷重電荷の積和結果と、キャパシタ１３ｂに蓄積された負荷重電荷に基づいた負荷重電荷の積和結果とに基づいて、正負を含めた全体の積和結果を表す信号が算出される。
【０１０６】
正荷重電荷の積和結果、及び負荷重電荷の積和結果の算出は、互いに等しい処理となる。まず図６を参照しながら、正負の区別なく、キャパシタ１３に蓄積された電荷に基づいた
積和結果の算出方法の一例について説明する。
【０１０７】
図６の中で記載されているパラメータを説明する。「ｔ」は時間である。「Ｔ」は入力期間及び出力期間の各々を表す。「ｔn 」は入力期間Ｔの終了タイミングであり、「ｔm 」は出力期間Ｔの終了タイミングである。
【０１０８】
本実施形態では、入力期間Ｔの長さと、出力期間Ｔの長さとが、互いに等しく設定される。また図６に示す例では、入力期間Ｔの終了タイミングｔnから出力期間Ｔが開始される。従って、入力期間Ｔの終了タイミングｔnは、出力期間Ｔの開始タイミングに相当する。
【０１０９】
「Ｓi（ｔ）」は、ｉ番目の入力信号線６に入力される入力信号（ＴＡＣＴ信号）である。「τi 」は、入力信号Ｓi（ｔ）の入力タイミングから入力期間Ｔの終了タイミングｔnまでの長さである。以下、「τi 」を、入力期間Ｔにおける入力信号Ｓi（ｔ）のパルス幅と記載する場合がある。「τi 」が大きいほど、その入力信号i（ｔ）は、大きい信号値ｘiを表す信号となる。
【０１１０】
「Ｐi（ｔ）」は、図５に示す各シナプス回路８における、内部状態（電位）の変化量である。「ｗi 」は、荷重値であり、図５に示す抵抗器１７の抵抗値により規定される。ここでは、各シナプス回路８に対応する電位が時間とともに線形に増加するものとして説明を行う。このとき抵抗器１７の抵抗値は、例えば電位の傾きが「ｗi 」となるように設定される。
【０１１１】
「α」は、入力期間Ｔの後の出力期間Ｔにおけるキャパシタ１３の電位上昇の傾きであり、キャパシタ１３の充電速度である。図６に示す例では、入力期間Ｔが経過後に各シナプス回路８がＯＮレベルに維持されることで、キャパシタ１３の電位が傾き「α」で上昇する。なお出力期間中にキャパシタ１３を充電する場合には、αは充電速度に応じた値となる。「θ」は、信号出力部１２（コンパレータ２０）による閾値判定に用いられる閾値である。
【０１１２】
「Ｖn（ｔ）」は、「Ｐi（ｔ）」の総和であり、キャパシタ１３に蓄積される電荷の総量に相当する。「Ｓn（ｔ）」は、積和結果を表す積和信号（ＰＷＭ信号）である。「τn 」は、出力される積和信号のパルス幅である。具体的には、「τn」は、出力期間Ｔ内における、キャパシタ１３により保持される電圧が閾値θより大きくなるタイミングから、出力期間Ｔの終了タイミングｔmまでの長さに応じた値となる。
【０１１３】
ここで以下の式に示すように、入力値（信号値）ｘｉは、入力期間Ｔにおける入力信号Ｓi（ｔ）のパルス幅τiと入力期間Ｔとのデューティ比Ｒi（＝τi／Ｔ）で与えられる。
【０１１４】
【数３】
2020126426.tif 000005
【０１１５】
図５に示すシナプス回路８により、信号値ｘiに荷重値ｗiを乗算した乗算値に対応する電荷が生成される。具体的には、抵抗器１７の抵抗により、一定の傾きｗiで内部状態（電位）が増加される。
【０１１６】
そして、入力期間Ｔの終了タイミングｔnにおける各シナプス回路８の内部電位の変化量Ｐi（ｔn ）は、以下の式で与えられる。なお、入力信号Ｓi（ｔ）のハイレベルの値は１とする。
【０１１７】
【数４】
2020126426.tif 000006
【０１１８】
キャパシタ１３に蓄積される電荷の総量Ｖn（ｔn ）は、Ｐｉ（ｔn ）の総和となるので、以下の式で与えられる。
【０１１９】
【数５】
2020126426.tif 000007
【０１２０】
図５に示す例では、入力期間Ｔの終了タイミングｔnからは、全てのシナプス回路８にて、傾きｗiで内部状態（電位）が増加される。従って出力期間Ｔでは、各「ｗi」の総和となる傾き（充電速度）で、電位が増加される。この場合、各「ｗi」の総和となる傾きが「α」となる。そして出力期間Ｔ内における、キャパシタ１３により保持される電圧が閾値θより大きくなるタイミングから、出力期間Ｔの終了タイミングｔmまでの長さに応じたパルス幅τnを有する積和信号（ＰＷＭ信号）が生成される。
【０１２１】
積和信号のパルス幅τnと出力期間Ｔとのデューティ比をＲn（＝τn／Ｔ）とすると、Ｒnは、以下の式で与えられる。なお、閾値θは、電荷の総量Ｖn（ｔn ）以上であるとする。
【０１２２】
【数６】
2020126426.tif 000008
【０１２３】
従って、信号値ｘiに荷重値ｗiを乗算した乗算値（ｗi・ｘi ）を足し合わせた積和結果は、以下の式で与えられる。
【０１２４】
【数７】
2020126426.tif 000009
【０１２５】
すなわち積和結果は、αＲn＝α・（τn／Ｔ）に、充電速度α、閾値θ、及び出力期間Ｔにより定められる定数を減算した値となる。このように、所定の長さ出力期間Ｔにおける、蓄積部１１により保持された電圧が閾値θより大きくなるタイミングに基づいて、積和結果を表す積和信号を出力することが可能となる。
【０１２６】
図５に示す例では、（数７）式に示す積和結果を表す積和信号が、正荷重電荷及び負荷重電荷のそれぞれについて算出される。例えばコンパレータ２０ａ及び２０ｂにより正荷重電荷の積和結果を表す積和信号Ｓn+（ｔ）及び負荷重電荷の積和結果を表す積和信号Ｓn-（ｔ）が生成される。このとき、Ｓn+（ｔ）のパルス幅τn+は正荷重電荷の積和結果に対応する値となり、Ｓn−（ｔ）のパルス幅τn−は負荷重電荷の積和結果に対応する値となる。
【０１２７】
このパルス幅τn+及びτn−を、上記した（数７）式に代入することで、正荷重電荷及び負荷重電荷の積和結果を算出することが可能である。そして（数２）式に基づいて、正荷重電荷の積和結果から負荷重電荷の積和結果を差し引くことで、アナログ回路３における全体の積和結果が算出される。このような演算は、例えば信号生成部２１を適宜構成することで実現可能である。
【０１２８】
図６に示す例では、出力期間Ｔ中にキャパシタ１３を充電しその電圧を閾値判定することで、積和結果をパルス幅により表す積和信号Ｓn（ｔ）が生成された。言い換えれば、出力期間Ｔ中の電荷の蓄積は、積和結果を時間軸上（パルス幅）で表す信号を生成するために実行されるとも言える。すなわち、出力期間Ｔは、入力期間Ｔの終了タイミングで蓄積された電荷（電圧）を閾値判定するための充電期間である。
【０１２９】
ここで発明者は、アナログ回路３において蓄積される電荷について考察した。そして、各入力信号が入力される入力期間Ｔの終了タイミングでのキャパシタ１３の電圧に着目し、キャパシタ１３の電圧を用いて積和信号を出力する新たな技術を考案した。以下詳しく説明する。
【０１３０】
図７は、複数のシナプス回路８に入力される入力信号の一例を示す模式図である。図７の右側には、６つのシナプス回路８で生成される電荷を蓄積する回路（以下蓄積回路２５と記載する）の模式的な回路図が示されている。また図７の左側には、各シナプス回路８に入力される入力信号が模式的に図示されている。なお入力信号は、入力期間Ｔの終了後もＯｎ状態が維持される信号であるとする。
【０１３１】
蓄積回路２５は、キャパシタ１３に並列に接続された６つの抵抗器１７（シナプス回路８）を含み、抵抗器１７とキャパシタ１３との接続点（出力点Ｐ）にはコンパレータ２０が接続される。蓄積回路２５は、例えば図５に示すアナログ回路３の一部分を構成する回路である。なおＧＮＤを基準とした出力点Ｐの電位は、キャパシタ１３の電圧であり、蓄積部の電圧に相当する。
【０１３２】
各シナプス回路８の抵抗器１７により生成された電荷は、出力線７側の寄生容量を充電して出力点Ｐに出力され、キャパシタ１３にも同時に蓄積される。すなわちキャパシタ１３は、出力線７側の寄生容量と一体化して充電される。この時、出力点Ｐの電位は、各抵抗器１７の合成抵抗と合成容量（すなわち出力線７側の全ての寄生容量とキャパシタ１３との合成容量）とに応じた時定数で上昇する。なお図７には、入力信号線側の寄生容量と出力線側の寄生容量とがともに図示されている。
【０１３３】
ここでは発明者は、出力線７（出力点Ｐ）の電位に関連するパラメータとして、出力線７の時定数について考察した。その結果、以下に説明するように、出力線７について、複数の入力信号線との間に配置される抵抗器１７の数にかかわらず、時定数を一定にする構成を見出した。
【０１３４】
まず、キャパシタ１３は、上記したように出力線７に発生する寄生容量も機能的に含んでいるものとする。この場合、キャパシタ１３ａ及び１３ｂが取り得る容量の最小値は出力線７に発生する寄生容量となる。例えばキャパシタ１３が設けられない場合でも、出力線７に発生する寄生容量に基づいて電荷は蓄積される。
【０１３５】
出力線７の時定数は、時間とともに逐次入力される入力信号数と、出力線７に信号を伝達できる状態の抵抗器１７の数（ＯＮ抵抗）により逐次変化する。ここで入力期間Ｔの終了時ｔnにおける時定数に着目する。図７に示すように、蓄積回路２５では、入力期間Ｔの終了時ｔnには、全ての入力信号線（シナプス回路８）に対して信号が入力される。従って、入力期間Ｔの終了時ｔnにおける入力信号数は最大値となり、一定の値となる。この結果、入力期間Ｔの終了時ｔnにおける時定数は、ＯＮ抵抗の数により逐次変化することになる。
【０１３６】
ここで、抵抗器１７の抵抗値を同じ抵抗値Ｒとする。すなわちバイナリコネクトの構成を採用する。また各シナプス回路８の寄生容量が一定の容量Ｃとなるように設計する。１つの出力線７に対して抵抗器１７は並列に接続されるので、Ｎ個の抵抗器１７が接続される（ＯＮ抵抗がＮ個となる）場合は、合成抵抗はＲ／Ｎとなる。一方、シナプス回路８は抵抗器１７の数と同じＮ個となるので、合成容量はＮＣとなる。
【０１３７】
例えば、キャパシタ１３を設けることなく、各シナプス回路８の寄生容量に基づいて積和信号を生成する。この場合、抵抗器１７の数（ＯＮ抵抗の数）にかかわらず、合成抵抗×合成容量の値は、ＲＣとなる。従って、入力期間Ｔの終了時ｔnにおける出力線７の時定数は、抵抗器１７の数にかかわらず、同じＲＣとなる。
【０１３８】
キャパシタ１３を設置する場合、各キャパシタ１３の容量を、所定の定数Ｃ0を抵抗器１７の数（ＯＮ抵抗の数）だけ乗算した値（抵抗器１７の数×Ｃ0）に設定する。これにより時定数は、Ｒ／Ｎ×（ＮＣ＋ＮＣ0）＝Ｒ×（Ｃ＋Ｃ0）となり、抵抗器１７の数にかかわらず一定となる。このように抵抗器１７の数にかかわらず、時定数を一定にすることが可能である。
【０１３９】
従って、出力点Ｐの電位Ｖout（キャパシタ１３の電圧）は、以下の式により近似することが可能である。
【０１４０】
【数８】
2020126426.tif 000010
【０１４１】
ここでＶinは、電圧の収束値となる定数であり、典型的には入力信号の電圧値（パルス高）である。（数８）式は、以下に示すように、時間ｔの経過とともにＶinに漸近する関数である。また時定数ＲＣは、電圧Ｖoutが収束値Ｖinの約６３％に到達する時間である。
【０１４２】
本実施形態では、入力期間Ｔは、電気信号の入力によりキャパシタ１３の電圧が連続的に上昇する過渡状態となる期間に設定される。これは、例えば（数８）式に応じた連続的な電圧の上昇等が発生する期間である。後述するように、本発明者らの考案した構成は、このような過渡状態での特性を積極的に利用した回路となっている。
【０１４３】
図８は、図７に示すキャパシタ１３の電圧の時間変化の一例を示す模式的なグラフである。グラフの横軸は時間であり、縦軸はキャパシタ１３の電圧Ｖoutである。
【０１４４】
図８に示すように、（数８）式に対応する曲線に基づいて、入力期間Ｔと閾値θとを定める。すなわち、（数８）式において時間ｔ＝ＴとしたときのＶoutを閾値θに設定する。なお図８には、入力期間Ｔの開始タイミング（ｔ＝０）から、入力期間Ｔに連続する出力期間Ｔの終了タイミング（ｔ＝ｔm＝２Ｔ）までのグラフが図示されている。
【０１４５】
図７に示す蓄積回路２５において、入力期間Ｔの終了タイミングｔnでのキャパシタ１３の電圧は、各シナプス回路８に入力される入力信号のパルス幅τの平均値を（数８）式に代入した結果となる。すなわち、入力期間Ｔの終了タイミングｔnでは、全てのシナプス回路８に各パルス幅τの平均値と同様の幅をもったパルスを入力した場合と同様の電位が出力点Ｐに生じる。
【０１４６】
例えば、各入力信号線に最大パルス（τ＝Ｔ）が入力された場合には、入力期間Ｔの開始タイミングｔ＝０からＶoutが上昇する。この場合、Ｖoutは（数８）式に対応する曲線に沿って増加し、入力期間Ｔの終了タイミングｔn（出力期間Ｔの開始タイミング）で閾値θを超えることになる。
【０１４７】
一方、各入力信号線に最も小さい信号値ｘiに対応するパルス（以下最小パルスと記載する）が入力されたとする。最小パルスは、例えばパルス幅が０の入力信号である。この場合、入力期間Ｔの終了タイミングｔnからＶoutが上昇し、出力期間Ｔの終了タイミングｔmで閾値θを超える。この結果、出力期間Ｔ内にて、積和信号を高い分解能で精度よく算出することが可能となる。
【０１４８】
実際の演算では、図７の右側に示すように、各シナプス回路８に入力期間Ｔ以下の様々なパルス幅τの入力信号が入力されることが考えられる。図７には、これらのパルス幅の分布を示すヒストグラムが模式的に図示されている。
【０１４９】
各入力信号のパルス幅τが一定でない場合、キャパシタ１３の電圧（出力点Ｐの電位）は、（数８）式に対応する曲線に沿って上昇するとは限らず、例えば図８に示すように、各入力信号のパルス幅τに応じて電位が上昇する。また、入力期間Ｔの終了タイミングｔn以降は、全ての入力信号がＯＮ状態となり、全てのシナプス回路８から電荷が供給される。このため、入力信号のパルス幅に係らず、出力期間Ｔでのキャパシタ１３の電圧は（数８）式に対応する曲線に沿って上昇することになる。
【０１５０】
このように、キャパシタ１３の電圧は、合成された時定数ＲＣと各入力信号のパルス幅τの平均値とから求めることが可能である。言い換えれば、キャパシタ１３の電圧は、入力期間Ｔから各入力信号のパルス幅τの平均値を引いたタイミングを起点として、（数８）式に対応する曲線に沿って上昇するものと見做すことが可能である。
【０１５１】
図９は、入力期間Ｔの終了タイミングにおけるキャパシタ１３の電圧について説明するための模式的なグラフである。グラフの縦軸はキャパシタ１３の電圧Ｖout（キャパシタの電圧）であり、横軸は時間ｔである。このグラフは、例えば図８に示すグラフと等価なグラフである。
【０１５２】
例えば入力信号のパルス幅τ（信号値ｘi）の平均値が最大パルスの５０％であったとする。この場合、キャパシタ１３の電圧は、入力期間Ｔの中間のタイミング（ｔ＝０．５Ｔ）から（数８）式に対応する曲線に沿って上昇するものと見做すことができる。
【０１５３】
従って、キャパシタ１３の電圧が閾値θを超えるタイミングは、出力期間Ｔの中間のタイミング（ｔ＝１．５Ｔ）となる。これは、積和結果の最大値の５０％に対応するタイミングである。すなわち、信号値ｘiを時間（パルス幅）で表す入力信号は、積和結果を時間で表す積和信号に線形に変換されると言える。
【０１５４】
ここで、入力期間Ｔの終了タイミングｔnでのキャパシタ１３の電圧（キャパシタの電圧）について考察する。上記したように、入力信号により表される信号値ｘiは、入力期間Ｔにおける入力信号のパルス幅τに対応する。従って、入力期間Ｔが終了した時点で、積和結果を算出するための電荷の蓄積は完了しており、そのときのキャパシタ１３の電圧を積和結果として扱うことが可能である。すなわち終了タイミングｔnでのキャパシタ１３の電圧から積和結果を電圧で表す積和信号を生成することが可能である。
【０１５５】
一方で、終了タイミングｔnでのキャパシタ１３の電圧を用いて表される積和結果には、（数８）式の時定数に伴う歪みが含まれる。例えば各入力信号のパルス幅の平均値が最大パルスの５０％である場合、入力期間Ｔの終了タイミングｔnでのキャパシタ１３の電圧は、終了タイミングｔnにおいて積和結果の最大値を表す電圧（閾値θ）の５０％の値（０．５θ）よりも大きくなる。すなわち、信号値ｘiを時間（パルス幅）で表す入力信号は、積和結果を電圧で表す積和信号に非線形に変換されると言える。
【０１５６】
例えば図６に示す例では、電荷が線形に蓄積される場合を仮定して説明したが、実際の回路では、キャパシタ１３の電圧は時定数に応じた曲線に従って非線形に増大することが考えられる。このため、積和結果を電圧で表す積和信号を用いた場合には、積和演算の精度が低下するといった可能性があった。
【０１５７】
発明者は、このような非線形性に伴うキャパシタ１３の電圧（出力点Ｐの電位）の歪みを抑制し、積和結果を電圧で表す積和信号を適正に出力する構成を見出した。以下具体的に説明する。
【０１５８】
図１０は、本実施形態に係るアナログ回路の構成例を示す回路図である。アナログ回路３０は、例えば図４及び図５を参照して説明したニューロン回路９において、信号出力部１２として差動アンプ３１が用いられる構成となっている。図１０では、各シナプス回路８における寄生容量Ｃの図示が省略されている。なお差動アンプ３１の後段には後述するアナログメモリやコンパレータ等（図１４参照）が接続される。
【０１５９】
図１０に示すように、正電荷出力線７ａには正荷重電荷を蓄積するキャパシタ１３ａが接続され、負電荷出力線７ｂには負荷重電荷を蓄積するキャパシタ１３ｂが接続される。従って、正電荷出力線７ａの電位は、キャパシタ１３ａの電圧（正荷重電圧Ｖ＋）となり、負電荷出力線７ｂの電位は、キャパシタ１３ｂの電圧（負荷重電圧Ｖ−）となる。
【０１６０】
上記したように、キャパシタ１３の電圧は、キャパシタ１３に接続された各シナプス回路８での積和結果を表す電圧である。すなわち、キャパシタ１３ａが保持する正荷重電圧Ｖ＋は、正荷重電荷の積和結果を表し、キャパシタ１３ｂが保持する負荷重電圧Ｖ−は、負荷重電荷の積和結果を表す。
【０１６１】
アナログ回路３０のニューロン回路９では、これら正荷重電圧Ｖ＋と負荷重電圧Ｖ−とに基づいて、正負両方を含めたアナログ回路全体の積和結果を電圧で表す電圧信号が生成される。また、この電圧信号を用いて積和信号が出力される。すなわちニューロン回路９は、キャパシタ１３の電圧に基づいて乗算値の和を電圧で表す電圧信号を生成し、電圧信号に基づいて積和信号が出力する回路である。
【０１６２】
なお本開示において、積和信号は、積和結果を表す信号であり、積和結果を表す方法等は限定されない。例えば上記したように、積和結果を時間情報（パルス幅や入力タイミング等）で表す信号や、積和結果を電圧値で表す信号は、いずれも積和信号に含まれる。従って、上記した電圧信号も積和信号の一例である。
【０１６３】
差動アンプ３１は、正入力端子及び負入力端子を有し、正入力端子の電位と負入力端子の電位との差分電圧を増幅して出力する素子である。図１０では、「＋」側が正入力端子であり「―」側が負入力端子である。正入力端子には、スイッチ３２ａを介して正電荷出力線７ａが接続され、負入力端子には、スイッチ３２ｂを介して負電荷出力線７ｂが接続される。スイッチ３２ａ及び３２ｂは、例えば１回の積和演算処理が実行されている間はＯＮであり、処理の終了とともにＯＦＦに切り替わる。
【０１６４】
なお、差動アンプ３１には、増幅率を設定するための抵抗器が接続される。例えばこれらの抵抗器の抵抗値を変更することで増幅率を調整することが可能である。差分電圧の増幅率は限定されず、例えば差動アンプ３１の出力が適正に検出可能となるように適宜設定されてよい。
【０１６５】
差動アンプ３１は、正電荷出力線７ａの電位と負電荷出力線７ｂの電位との差分電圧を所定の増幅率で増幅する。この差分電圧は、正荷重電圧Ｖ＋と負荷重電圧Ｖ−との差分電圧（ΔＶ＝Ｖ＋−Ｖ−）であり、正負両方を含めたアナログ回路全体の積和結果を表す電圧となる。すなわち、差動アンプ３１は、差分電圧ΔＶを所定の増幅率で増幅して電圧信号を生成する。これにより、差分電圧ΔＶを精度よく検出することが可能となり、ノイズレベルを抑制することが可能である。
【０１６６】
このように、ニューロン回路９（差動アンプ３１）は、キャパシタ１３ａに保持される正荷重電圧Ｖ＋と、キャパシタ１３ｂに保持される負荷重電圧Ｖ−との差分電圧に基づいて電圧信号を生成する。これにより、例えば単一の差動アンプ３１を用いて全体の積和結果を表す電圧を得ることが可能であり、回路構成を十分に簡素化することが可能である。
【０１６７】
なお、差動アンプ３１を設ける場合に限定されず、例えば正荷重電圧Ｖ＋及び負荷重電圧Ｖ−を同じ増幅率で増幅した上でその差分電圧を検出する回路等が用いられてもよい。また、差分電圧を増幅せずに出力する増幅率が１の回路（ボルテージフォロワ等）が用いられてもよい。この他、電圧信号を生成する方法等は限定されない。
【０１６８】
図１１は、１つの階層に含まれる複数のアナログ回路３０の構成例を示す模式図である。図１１には、１つの階層に入力される複数の入力信号線に、並列に接続された複数のアナログ回路３０が模式的に図示されている。
【０１６９】
アナログ回路３０では、複数のシナプス回路８は、信号値に正の荷重値を乗算した正荷重電荷を生成するシナプス回路８ａ、又は信号値に負の荷重値を乗算した負荷重電荷を生成するシナプス回路８ｂの少なくとも一方を含み、荷重値ｗiの絶対値の総和（図１１では｜ｗi｜×８）に対する正の荷重値ｗi＋の総和の比率が０％〜１００％までの間のいずれかの比率となるように構成される。以下では、シナプス回路８ａを正荷重と記載し、シナプス回路８ｂを負荷重と記載する場合がある。
【０１７０】
例えば図１１に示す例では、左端のアナログ回路３０は、正荷重電荷を生成するシナプス回路８ａ（正荷重）のみを含み、正の荷重値ｗi＋の総和の比率は全体の荷重値ｗiの絶対値の総和に対して１００％となる。また右端のアナログ回路３０は、負荷重電荷を生成するシナプス回路８ｂ（負荷重）のみを含み、正の荷重値ｗi＋の総和の比率は全体の荷重値ｗiの絶対値の総和に対して０％となる。他のアナログ回路３０は、正荷重及び負荷重を両方含む。
【０１７１】
また、複数のアナログ回路３０は、各々が有する複数のシナプス回路８の荷重値ｗiの絶対値の総和が互いに等しくなるように構成される。すなわち、各アナログ回路３０に含まれる正負の荷重値ｗi＋及びｗi‐の絶対値の総和は一定の値に設定される。
【０１７２】
本実施形態では、各アナログ回路３０は、バイナリコネクトの構成を有する。すなわち、正の荷重値ｗi＋及び負の荷重値ｗi‐の絶対値は、同じ値で固定されており、各シナプス回路８の抵抗器１７は、正負に寄らずそれぞれ同じ抵抗値Ｒに設定される。また複数のアナログ回路３０は、各々が有する複数のシナプス回路８の総数が互いに等しくなるように構成される。例えばＮ個の入力信号が入力される構成では、いずれのアナログ回路３０においても、シナプス回路８の総数がＮとなるように構成される。すなわち、正荷重及び負荷重の総数は全てＮに一致するように設定される。
【０１７３】
なお、各アナログ回路３０には、荷重値ｗiが０に設定されたシナプス回路８（ゼロ荷重）を設定することもの可能である。この場合、上記の条件を満たすために、各アナログ回路３０に設定されるゼロ荷重の数は、互いに同数に設定される。例えばあるアナログ回路３０にゼロ荷重が１つ設定される場合には、他の全てのアナログ回路３０にもゼロ荷重が１つ設定される。これにより、正負のシナプス回路８ａ及び８ｂの総数は一定の値に維持される。
【０１７４】
図１２は、正荷重電圧及び負荷重電圧と正負の荷重比率との関係の一例を示すグラフである。グラフの縦軸は正荷重電圧（負荷重電圧）であり、横軸は荷重比率である。荷重比率は、負荷重の個数／正負荷重の総数Ｎであり、負荷重の比率である。例えば荷重比率が０．４の場合、負荷重の割合が全体の４０％であることを意味する。なお、図１２のグラフには、アナログ回路３０の全てのシナプス回路８に対して、それぞれ指定された所定の条件を満たすパルス群（入力信号のセット）が、同じ設定で図１２の横軸の全ての荷重比率で入力された場合に、入力期間Ｔの終了タイミングでの電圧がプロットされている。
【０１７５】
例えば正荷重電圧Ｖ＋は、荷重比率が０（正荷重の比率が１００％）の場合に最大値をとり、荷重比率が１（正荷重の比率が０％）の場合に最小値０となる。この時、正荷重電圧Ｖ＋には、図９等を参照して説明した非線形性に伴い歪みが生じる。具体的には、正荷重電圧Ｖ＋は、その最大値と最小値とを結ぶ直線よりも大きい値をとるように、弓形に変形した特性を示す。
【０１７６】
同様に、負荷重電圧Ｖ-についても非線形性に伴う歪みが生じる。図１０や図１１に示すように、負荷重電圧Ｖ-を発生させる回路は、正荷重電圧Ｖ＋を発生させる回路と同等の回路と見做すことができる。このため、負荷重電圧Ｖ-は、荷重比率０．５を境に正荷重電圧Ｖ＋と左右対称となる特性を示す。
【０１７７】
図１３は、差分電圧と正負の荷重比率との関係の一例を示すグラフである。グラフの縦軸は正荷重電圧（負荷重電圧）であり、横軸は荷重比率（負荷重の比率）である。図１３には、図１２に示す正荷重電圧Ｖ＋と負荷重電圧Ｖ-との差分電圧ΔＶがプロットされている。
【０１７８】
図１３に示すように、差分電圧ΔＶは、荷重比率に対して略線形に変化する。すなわち、正荷重電圧Ｖ＋と負荷重電圧Ｖ-との差分をとることで、図１２に示すような非線形性に伴う電圧の歪みが抑制される。従って、差分電圧ΔＶは、荷重の個数に係らず、入力信号に対して略線形に変化する電圧と見做すことが可能である。
【０１７９】
図１２に示すように、例えばある荷重比率において、正荷重電圧Ｖ＋及び負荷重電圧Ｖ-の歪み量、すなわち最大値と最小値とを結ぶ直線からのずれ量は、互いに略同様の値となる。従って、正荷重電圧Ｖ＋と負荷重電圧Ｖ-との差分をとることで、互いの歪み量が相殺されるために、差分電圧ΔＶの歪み量が低減すると考えられる。
【０１８０】
なお、正荷重及び負荷重の総数が他とは異なるアナログ回路３０では、図１２に示す関係が成立しなくなる。この場合、例えば正荷重電圧Ｖ＋及び負荷重電圧Ｖ-の歪み量は左右対称ではなくなり、各歪みを相殺することが難しくなると考えられる。
【０１８１】
このように、複数のアナログ回路３０に含まれる正負の荷重の総数（シナプス回路８ａ及び８ｂの総数）を等しく構成することで、差分電圧ΔＶの歪みを抑制することが可能である。また、歪みが抑制された差分電圧ΔＶを用いることで、入力信号に対して線形に対応する積和信号等を容易に算出することが可能である。
【０１８２】
アナログ回路３０では、差分電圧ΔＶが検出された時点で、全体の積和結果を得ることが可能である。すなわち、入力期間Ｔの終了と同様のタイミングで、積和演算の結果を表す信号を生成することが可能である。このため、入力期間Ｔに連続する出力期間Ｔにおいて、キャパシタ１３の充電等をおこなう必要がなく、入力信号は入力期間Ｔの後もＯＮ状態を維持する必要はない。
【０１８３】
図１１に示すように、例えばアナログ回路３０には、入力期間Ｔの終了タイミングでＯＦＦとなる入力信号等が入力される。このように本実施形態では、入力信号は、入力期間Ｔ内の信号値に応じたタイミングから入力期間の終了タイミングまでの期間に応じたパルス幅を有する。この信号は、例えば立ち上りのタイミングが信号値に対応しているとともに、そのパルス幅が信号値に対応している信号である。
【０１８４】
図１４は、本実施形態に係る演算装置１００の具体的な構成例を示す回路図である。演算装置１００は、複数の入力信号線６と、複数のアナログ回路３０と、積分回路４０とを有する。図１４には、３つの入力信号線６ａ〜６ｃを備えた構成が示されている。もちろん入力信号線６の数、すなわち荷重の総数等は適宜設定可能である。
【０１８５】
アナログ回路３０は、図１０等を参照して説明した回路である。アナログ回路３０は、さらにオフセット抵抗３３を有する。またアナログ回路３０のニューロン回路９（出力部）は、さらにアナログメモリ３４と、コンパレータ３５とを有する。なお図１０等に示すアナログ回路３０では、オフセット抵抗３３と、アナログメモリ３４と、コンパレータ３５の図示が省略されている。また図１４では各シナプス回路８を構成する抵抗器１７として、ダイオード特性を有する抵抗器が用いられる。
【０１８６】
オフセット抵抗３３は、所定の電源ライン３６と、正電荷出力線７ａ及び負電荷出力線７ｂとの間に接続される。オフセット抵抗３３は、キャパシタ１３の電圧を所定のオフセット値まで上昇させるための抵抗器である。オフセット値を設定することで、キャパシタ１３の電圧が低い場合であっても、適正に電圧値を読み取ることが可能である。
【０１８７】
アナログメモリ３４は、スイッチ３２ｃ及びスイッチ３２ｄを介して差動アンプ３１の出力端子に接続される。またアナログメモリ３４は、スイッチ３２ｅを介してコンパレータ３５に接続される。アナログメモリ３４は、差動アンプ３１により生成された電気信号の電圧を保持する。アナログメモリ３４としては、例えば所定の静電容量を有するキャパシタ等が用いられる。この他、電気信号の電圧を読み出し可能に保持する任意のメモリ素子がアナログメモリ３４として用いられてよい。
【０１８８】
コンパレータ３５は、差動アンプ３１から出力された電気信号の電圧を閾値として、後述するランプ電圧の閾値判定を実行することで、積和信号を出力する。この場合、コンパレータ３５からは、電気信号の電圧で表される積和結果を時間情報により表す積和信号が出力される。コンパレータ３５から出力された積和信号は、例えば後段の階層の入力信号として用いられる。
【０１８９】
積分回路４０は、複数のアナログ回路３０の各々が有するニューロン回路９にランプ電圧を供給する。具体的には、ランプ電圧は、各ニューロン回路９のコンパレータ３５に供給される。また積分回路４０は、ランプ電圧の傾きを変更可能なように構成される。積分回路４０の具体的な構成は限定されない。本実施形態では、積分回路４０は、電圧供給部に相当する。
【０１９０】
図１５は、演算装置１００の動作の一例を示すタイミングチャートである。図１５には、図１４に示すポイントｐ１〜ｐ１１の電圧の変化を示すタイミングチャートが図示されている。以下では図１５を参照して、演算装置１００の動作について説明する。
【０１９１】
ポイントｐ１〜ｐ３は、それぞれ入力信号線６ａ、６ｂ、及び６ｃ上のポイントである。ポイントｐ４及びｐ５は、左端のアナログ回路３０のキャパシタ１３ａ及び１３ｂの出力点である。ポイントｐ６は、差動アンプ３１の出力であり、ポイントｐ７はアナログメモリ３４の出力である。ポイントｐ８は、スイッチ３２ｃ及び３２ｄの制御端子であり、ポイントｐ９はスイッチ３２ｅの制御端子である。ポイントｐ１０は、積分回路４０の出力であり、ポイントｐ１１は、コンパレータ３５の出力である。
【０１９２】
まず入力期間Ｔに、入力信号線６ａ、６ｂ、及び６ｃに入力信号Ｓa、Ｓb、及びＳcが入力される。なお、図１５に示す例では、各入力信号の入力タイミングは、入力信号Ｓa、Ｓb、及びＳcの順番で早いタイミングである。
【０１９３】
例えば左端のアナログ回路３０には、入力信号線６ｂに正荷重（シナプス回路８ａ）が接続され、入力信号線６ａ及び６ｃに負荷重（シナプス回路８ｂ）が接続される。従って左端のアナログ回路３０では、入力信号Ｓbの入力タイミングと同時に正側のキャパシタ１３ａの電圧（ｐ４）が上昇する。また負側のキャパシタ１３ｂの電圧（ｐ５）は、入力信号Ｓaの入力タイミングと同時に上昇を開始する。また入力信号Ｓcの入力タイミングからは、入力信号Ｓa及びＳcに応じた電荷の蓄積が開始される。
【０１９４】
入力期間Ｔ中は、差動アンプ３１は、正電荷出力線７ａ及び負電荷出力線７ｂに接続される。従って差動アンプ３１の出力（ｐ６）からは、差動電圧ΔＶが所定の増幅率で増幅された電圧を有する電圧信号が出力される。また入力期間Ｔ中は、スイッチ３２ｃ及びスイッチ３２ｄの制御端子（ｐ８）がＯＮ状態に設定され、スイッチ３２ｃ及びスイッチ３２ｄがＯＮとなる。従って、差動アンプ３１から出力された電圧信号は、アナログメモリ３４（ｐ７）に入力される。なお、入力期間Ｔの間スイッチ３２ｅはＯＦＦである。
【０１９５】
入力期間Ｔの終了タイミングで、入力信号Ｓa、Ｓb、及びＳcはゼロとなる。この時点でキャパシタ１３ａ及びキャパシタ１３ｂには、正荷重電荷の積和結果を表す正荷重電圧Ｖ+及び負荷重電荷の積和結果を表す負荷重電圧Ｖ-が保持される。従って、入力期間Ｔが過ぎると差動アンプ３１からは、全体の積和結果を表す電圧信号が出力される。
【０１９６】
図１５に示す例では、入力期間Ｔの後に、一定の待機時間Ｔ'が設けられる。待機時間Ｔ'の間、全体の積和結果を表す電圧は、アナログメモリ３４により一時的に保持される。またアナログメモリ３４の電圧は、出力期間Ｔの開始タイミング（待機時間Ｔ'の終了タイミング）で適宜参照される。このように本実施形態では電圧信号の電圧が一時的に保存される。
【０１９７】
これにより、例えば積和結果を表す電圧を適宜参照することが可能となる。この結果、例えば他の演算処理との処理タイミングを合わせるといったことを容易に実現することが可能である。また電圧信号の電圧は、単一のキャパシタ等を用いて保存することが可能であり、回路構成を十分に簡略化することが可能である。
【０１９８】
出力期間Ｔが開始されると、積分回路４０から所定の傾きで変化するランプ電圧が出力される。図１５では、出力期間Ｔの開始と同時に電圧が線形に上昇する正の傾きをもったランプ電圧が出力される。
【０１９９】
またスイッチ３２ｃ及びスイッチ３２ｄがＯＦＦに切り替えられ、スイッチ３２ｅがＯＮに切り替えられる。この結果、アナログメモリ３４に保存されていた電圧信号の電圧が、コンパレータ３５の閾値として出力される。コンパレータ３５では、電圧信号の電圧、すなわち全体の積和結果を閾値としたランプ電圧の閾値判定が実行される。
【０２００】
図１６及び図１７は、ランプ電圧の閾値判定の一例を示す模式図である。図１６に示す例では、積分回路４０により、傾きが正のランプ電圧、すなわち一定の割合で増加する電圧が出力される。図１６には、差動アンプ３１とコンパレータ３５とのペアが３つ図示されている。各ペアは、図１４に示す各アナログ回路３０の後段の構成である。
【０２０１】
図１６の実線で囲まれたグラフは、連続的に上昇するランプ電圧の一例である。また点線で囲まれたグラフは、階段状のステップを伴って上昇するランプ電圧の一例である。いずれのランプ電圧が用いられる場合であっても、本技術は適用可能である。以下では、連続的に上昇するランプ電圧を例に、ランプ電圧についての閾値判定について説明する。
【０２０２】
ランプ電圧は、出力期間Ｔの開始タイミングから電圧が所定の傾きで増加するように生成される。ここでは、出力期間Ｔの開始タイミングに０Ｖであり、出力期間Ｔの終了タイミングにおいてデフォルトの電圧Ｖdefとなるように上昇するランプ電圧が生成されるとする。この時ランプ電圧の傾きβは、β＝Ｖdef／Ｔとなる。
【０２０３】
デフォルトの電圧Ｖdef、すなわちデフォルトの傾きβ等を設定する方法は限定されない。例えば想定される差分電圧ΔＶの大きさや、差動アンプ３１の増幅率等に応じて、差動アンプ３１の出力を適正に判定することが可能となるように、傾きβ等が設定される。
【０２０４】
なお開始タイミングより前では、積分回路４０の出力は、０Ｖよりも低い値に設定される。これにより後段のコンパレータ３５には、十分に低い電圧が供給されることになり、例えばノイズ等によるコンパレータ３５の誤作動を抑制することが可能である。
【０２０５】
各コンパレータ３５の下には、各コンパレータ３５に入力される信号と、各コンパレータ３５の閾値判定により出力される積和信号とを示すグラフがそれぞれ図示されている。図１６では、左端、中央、及び右端のコンパレータ３５に、それぞれ電気信号の電圧（閾値Ｖθ）としてＶθ１、Ｖθ２、及びＶθ３が入力される。各コンパレータ３５は、ランプ電圧が上昇し閾値Ｖθを超えて大きくなるタイミングで順次発火し、出力の論理状態が切り替わる。
【０２０６】
例えば図１６に示すコンパレータ３５では、閾値Ｖθを超えたタイミングでＨｉｇｈレベルとなる信号が出力される。またコンパレータ３５の後段にはスイッチを介してインバータ（ＮＯＴ回路）が設けられる。出力期間Ｔの間、コンパレータ３５とインバータとをつなぐスイッチはＯＮ状態に設定される。なお図１４では、インバータの図示が省略されている。
【０２０７】
コンパレータ３５の出力はインバータにより反転される。この結果、図１６に示すように、出力期間Ｔの開始タイミングから閾値Ｖθを超えるまでＨｉｇｈレベルとなる信号が出力される。この信号は、パルス幅（Ｈｉｇｈレベルの幅）で全体の積和結果を表す積和信号となる。
【０２０８】
またインバータが設けられない場合でも、積和信号を生成することが可能である。この場合、ＬＯＷレベルの幅で全体の積和結果を表す積和信号が生成される。なお、ＬＯＷレベルの幅で全体の積和結果を表す信号は、立ち上がりのタイミングで積和結果を表す信号であるとも言える。すなわち図１６においてインバータが設けられない場合には、出力期間Ｔ内のタイミングで乗算値の和を表す、ＴＡＣＴ方式の積和信号が生成されるとも言える。
【０２０９】
また、コンパレータ３５自体が閾値θを超えたタイミングでＬｏｗレベルとなるように構成されてもよい。これにより、インバータを設けることなく図１６に示すような積和信号を生成可能である。この他、閾値処理を用いて積和信号を生成する方法や、積和信号の形式等は限定されない。また上記した異なる種類の積和信号が複数生成されてもよい。
【０２１０】
このように、コンパレータ３５は、ランプ電圧が電圧信号の電圧を過ぎて大きくなるタイミングに基づいて、積和信号を出力する。すなわち、コンパレータ３５は、全体の積和結果を電圧で表す電圧信号を、時間情報により積和結果を表す積和信号に変換するとも言える。
【０２１１】
図１７に示す例では、積分回路４０により、傾きが負のランプ電圧、すなわち一定の割合で減少する電圧が出力される。図１７の実線で囲まれたグラフは、連続的に下降するランプ電圧の一例である。また点線で囲まれたグラフは、階段状のステップを伴って下降するランプ電圧の一例である。このようにランプ電圧が下降する場合であっても本技術は適用可能である。
【０２１２】
例えばランプ電圧は、出力期間Ｔの開始タイミングから電圧が所定の傾きで減少するように生成される。ここでは、出力期間Ｔの開始タイミングにデフォルトの電圧Ｖdefであり、出力期間Ｔの終了タイミングにおいて０Ｖとなるように上昇するランプ電圧が生成される。この時ランプ電圧の傾きβは、β＝−Ｖdef／Ｔとなる。
【０２１３】
ランプ電圧が減少する場合、コンパレータ３５は、ランプ電圧が電圧信号の電圧を過ぎて小さくなるタイミングに基づいて、積和信号を出力する。これにより、コンパレータ３５は、全体の積和結果を電圧で表す電圧信号を、時間情報により積和結果を表す積和信号に変換することが可能である。
【０２１４】
このように、演算装置１００では、全体の積和結果を電圧で表す電圧信号が生成される。そして、生成された電圧信号が、出力期間Ｔ内におけるタイミング又はパルス幅により乗算値の和を表す積和信号に変換される。これにより、後段の回路等に出力する積和信号を容易に生成することが可能となる。また電圧信号を用いることで、時間情報（タイミングやパルス幅等）を用いた積和信号に変換する構成を簡素化することが可能である。このように、シンプルな構成を採用することが可能となるため、装置全体の消費電力を抑制することが可能となる。
【０２１５】
図１８は、演算装置１００の接続例を示す回路図である。図６に示すように、コンパレータ３５で生成された積和信号は、後段に接続された上位階層の入力信号として用いられる。図１８に示す例では２階層分の回路が図示されているが、もちろんこれに限定されるわけではく、３階層や４階層の接続が可能である。
【０２１６】
また、コンパレータ３５の判定処理の期間、すなわち積和信号の出力期間Ｔは、後段のアナログ回路３０に入力信号が入力される入力期間Ｔとなる。演算装置１００では、上記したように、電圧信号の電圧がアナログメモリ３４に保存されるため、一つの階層において、入力期間Ｔと出力期間Ｔとを連続させる必要がない。これにより、出力期間Ｔ、すなわち後段の入力期間Ｔを任意のタイミングで設定することが可能である。
【０２１７】
例えば複数のアナログ回路３０が縦続接続して構成される場合、縦続接続されたアナログ回路３０の間には、通常入力信号の正規化やPoolingなどの中間演算が必要となる。従って各階層間には、これらの演算を行うための回路等（図示省略）が設けられる。この場合、中間演算のタイミング等を合わせるための構成がさらに必要になる可能性がある。
【０２１８】
本実施形態では、積和結果が電圧として保存されるため、保存や読み出しを行う構成を十分に簡素化することが可能である。また、後段の入力期間Ｔを任意のタイミングで設定可能である。これにより、回路を複雑化することなく、中間演算のタイミング等を容易に合わせることが可能となる。また例えば、後段の動作や、他の回路の動作が終了するまで、出力処理をしないといったことが可能となり、装置設計が容易になる。
【０２１９】
なお上記では、主に後段の回路に対して積和結果（乗算値の和）を時間情報で表す積和信号を出力する構成について説明した。これに限定されず、乗算値の和を表す積和信号として乗算値の和を電圧で表す電圧信号が出力されてもよい。すなわち電圧信号の電圧を時間情報に変換することなく、そのまま出力する構成も可能である。
【０２２０】
例えばアナログメモリ３４に保存された電圧値を用いることで、各シナプス回路８での乗算値の和を容易に出力することが可能である。電圧信号の電圧は、例えば閾値判定や最大値検出等に利用される。あるいは電圧信号の電圧をデジタル化して用いるといったことも可能である。もちろん、電圧信号が演算装置１００の最終的な出力値として出力されてもよい。これにより回路設計の自由度を高めることや、デジタル回路との親和性を向上するといったことが可能である。
【０２２１】
以上、本実施形態に係る演算装置１００では、複数のアナログ回路３０において、信号値ｘiと正及び負の荷重値ｗi+及びｗi‐との乗算値に対応する正荷重電荷及び負荷重電荷がキャパシタ１３に蓄積され、キャパシタ１３の電圧に基づいて乗算値の和を電圧で表す電圧信号が生成される。また各アナログ回路３０の荷重値ｗiの絶対値の総和は互いに等しくなるように設定される。これにより電圧信号の歪みが低減され、積和演算を適正に実行することが可能となる。このように電圧信号を用いることで、回路構成を簡素化するとともに積和演算の消費電力を低減することが可能となる。
【０２２２】
時間軸アナログ積和演算を行う方法として、蓄積電荷に相当する電圧をさらに充電し、電圧を時間軸の時間幅に変換して、積和演算の結果を出力する方法が考えられる。この場合、時間電圧変換と電圧時間変換の複数の変換工程を構成する必要がある。このため回路が複雑化し、コアとなるアナログ積和演算回路よりもその周辺回路の規模が大きくなるといった可能性がある。
【０２２３】
本実施形態では、各アナログ回路３０の荷重値ｗiの絶対値の総和を等しく設定することで、乗算値の和である積和結果を表す電圧を精度よく検出することが可能となる。例えばバイナリコネクタの構成では、アナログ回路３０に設定される荷重の総数を一定に設定することで、荷重の時定数に応じた過渡応答状態の時間区間における指数関数に依存した非線形性を抑制することが可能となる。これにより、蓄積電荷に相当する過渡応答の電圧を用いて積和結果を精度よく出力することが可能となる。
【０２２４】
電圧信号を用いることで、時間情報を保存するためのＴＤ（Time to Digital）変換用のロジック回路や、バッファーメモリ等の保存回路、時間情報を再現するためのＤＴ（Digital to Time）変換回路等が不要となる。これにより、回路構成を大幅に簡素化するとともに、積和演算で消費される電力を十分に低減することが可能である。
【０２２５】
また積和信号を電圧で表すことで、シンプルな構成で積和結果の保存・読み出しを行うことが可能となる。これにより、例えば正規化やPoolingなどの中間演算が行われる場合であっても、周辺回路を増大させることなく、適正に演算処理を実行することが可能となる。また回路構成を簡素化することで、積和演算の消費電力を抑制することが可能である。
【０２２６】
例えば、複数の積和演算処理や中間処理の各ステップ間で、出入力信号として時間情報を用いた積和信号を用いる場合、処理時間を全て一定に設定する必要がある。本実施形態では、積和結果が電圧として保存されるため、処理時間を容易に合わせることが可能である。これにより回路の設計自由度を高めることが可能である。
【０２２７】
＜第２の実施形態＞
本技術に係る第２の実施形態の演算装置について説明する。これ以降の説明では、上記の実施形態で説明した演算装置１００における構成及び作用と同様な部分については、その説明を省略又は簡略化する。
【０２２８】
図１９は、第２の実施形態に係る演算装置２００の構成例を示す模式図である。演算装置２００は、図１４に示す演算装置１００に検出部４１を追加した構成となっている。演算装置２００では、検出部４１及び積分回路４０により、積和信号を正規化する処理が実行される。
【０２２９】
検出部４１は、複数のアナログ回路３０の各々で生成された電圧信号の電圧のうち、最大の電圧を参照電圧として検出する。本実施形態では、検出部４１によりコンパレータ３５から出力される積和信号に基づいて、各電圧信号のうち最大の電圧を有する電圧信号が検出される。
【０２３０】
検出部４１としては、例えば複数の入力の論理和を算出するＯＲ回路（論理和回路）が用いられる。ＯＲ回路は、各入力に対応するゲートを有し、すべての入力にＯＦＦ信号が入力された場合に所定の伝達信号を出力する回路である。図１９に示すように、検出部４１にはスイッチ３２ｄを介して各コンパレータ３５（インバータ）から出力された積和信号が入力される。また、検出部４１から出力された信号は、積分回路４０のスイッチ３２ｇの制御端子に入力される。
【０２３１】
検出部４１の具体的な構成は限定されない。例えば縦続接続されたｎＭＯＳトランジスタやｐＭＯＳトランジスタ等を含むＯＲ回路が検出部４１として用いられる。この場合各ＭＯＳトランジスタのゲートがＯＲ回路の入力端子となる。また複数の入力の論理積を算出するＡＮＤ回路を用いても検出部４１を構成可能である。この他、電圧信号の最大値を検出可能な任意の論理回路等が検出部４１として用いられてよい。
【０２３２】
また本実施形態では、積分回路４０は、検出部４１により検出された参照電圧に基づいてランプ電圧の傾きを設定する。ランプ電圧の傾きは、例えば図１６及び図１７を参照して説明したランプ電圧の変化の割合である。例えば積分回路４０は、参照電圧を記憶し、参照電圧に応じてランプ電圧の傾きを設定するように構成される。この点については、後に詳しく説明する。
【０２３３】
本実施形態では、コンパレータ３５から出力される積和信号を正規化する処理として、最大値検出処理と正規化出力処理とが実行される。最大値検出処理は、正規化の基準となる参照電圧を検出する処理であり、正規化処理は、参照電圧を用いて積和信号を正規化する処理である。まず最大値検出処理が実行され、次に正規化処理が実行される。
【０２３４】
図２０は、最大値検出処理について説明するためのグラフである。図２０Ａは、最大値検出処理時のランプ電圧を示すグラフであり、図２０Ｂは、図２０Ａに示すランプ電圧の閾値判定により出力された中間信号を示すグラフである。
【０２３５】
最大値検出処理では、スイッチ３２ｆがＯＮに切り替えられる。また積分回路４０により、ランプ電圧がデフォルトの傾きに設定される。デフォルトの傾きは、例えば図１６及び図１７等を参照して説明した傾きβであり、例えば予め設定された値が用いられる。本実施形態では、デフォルトの傾きは、第１の傾きに相当する。
【０２３６】
例えば積和信号を出力する旨を指示する信号等が積分回路４０に入力され、積分回路４０からデフォルトの傾きで変化するランプ電圧が出力される。この時、積分回路４０のスイッチ３２ｇはＯＮとなる。そして、各差動アンプ３１から出力された電気信号の電圧を閾値（Ｖθ１、Ｖθ２、Ｖθ３）として、各コンパレータ３５で閾値判定が実行される。
【０２３７】
コンパレータ３５からは、図２０Ｂに示すように、デフォルトの傾きのランプ電圧が各閾値を超えたタイミング（ｔ１、ｔ２、ｔ３）で立ち上がる信号が生成され、後段のインバータにより反転された中間信号が出力される。すなわち、コンパレータ３５は、デフォルトの傾きのランプ電圧が電圧信号の電圧を過ぎて大きくなるタイミングで論理状態が切り替わる中間信号を生成する。なおランプ電圧の傾きが負の場合には、ランプ電圧が電圧信号の電圧を過ぎて小さくなるタイミングで中間信号が生成される。
【０２３８】
各中間信号は、スイッチ３２ｆを介して検出部４１に入力される。検出部４１では、例えばあるゲート（入力端子）にＬｏｗレベルの信号が入力された場合に、対応するゲートが導通可能となるように構成される。検出部４１は、入力される全ての入力が完了した時点で、伝達信号を出力する。例えば図１８に示す例では、３つの中間信号の入力が全てＬｏｗレベルになった場合に、全てのゲートが導通可能となり、伝達信号が出力される。
【０２３９】
図２０Ｂに示す例では、ｔ１＜ｔ２＜ｔ３であり、すべての中間信号の入力が完了するのは時刻ｔ３となる。時刻ｔ３に３番目の中間信号が立ち下がると、検出部４１からは伝達信号が出力されスイッチ３２ｇの制御端子に入力される。そしてスイッチ３２ｇがＯＦＦとなり、積分回路４０への入力線が遮断される。
【０２４０】
このとき積分回路４０では、入力線が遮断されるタイミングでの出力電圧を参照電圧として保存する。ここで、入力線が遮断されるタイミングで出力されていた電圧とは、最後に入力が完了した電圧信号の電圧（図２０では閾値Ｖθ３）と略等しい値であり、電圧信号の電圧の最大値である。つまり正の傾きのランプ電圧が最後に超えた閾値Ｖθが、電圧信号の中で最も高い電圧となる。
【０２４１】
このように、検出部４１は、複数のアナログ回路３０の各々で生成された中間信号の論理和に基づいて参照電圧を検出する。すなわち、検出部４１は、最大の電圧信号が入力されたタイミングでランプ電圧を止めることで、その時の値を検出するとも言える。参照電圧が検出されると、正規化出力処理が実行される。
【０２４２】
図２１は、正規化出力処理について説明するためのグラフである。図２１Ａは、正規化出力処理時のランプ電圧を示すグラフであり、図２１Ｂは、図２１Ａに示すランプ電圧の閾値判定により出力された正規化された積和信号を示すグラフである。
【０２４３】
正規化出力処理では、積分回路４０は、出力期間Ｔが終了するタイミングにおいてランプ電圧が参照電圧と一致するようにランプ電圧を正規化用の傾きに設定する。図２１Ａに示すように、正規化用の傾きに設定されたランプ電圧は、出力期間Ｔの開始タイミングｔn'では０Ｖであり、終了タイミングｔmでは、参照電圧となるように構成される。このように、本実施形態では、最大電圧（参照電圧）が次の積和演算期間の入力期間Ｔ（出力期間Ｔ）に一致するように積分回路の設定が変更され、ランプ電圧が出力される。本実施形態では、正規化用の傾きは、第２の傾きに相当する。
【０２４４】
コンパレータ３５からは、図２１Ｂに示すように、正規化用の傾きのランプ電圧が各閾値を超えたタイミング（ｔ１'、ｔ２'、ｔ３'）で立ち上がる信号が生成され、後段のインバータにより反転された中間信号が出力される。すなわち、コンパレータ３５は、正規化用の傾きのランプ電圧が電圧信号の電圧を過ぎて大きくなるタイミングで論理状態が切り替わる積和信号を生成する。なおランプ電圧の傾きが負の場合には、ランプ電圧が電圧信号の電圧を過ぎて小さくなるタイミングで積和信号が生成される
【０２４５】
ランプ電圧の傾きは、典型的には最大値検出時と比べ小さく設定されることになる。これにより、ランプ電圧が各閾値に到達するタイミングは、全体的に長くなる。
【０２４６】
また正規化用の傾きでは、各電圧信号の最大電圧が出力期間Ｔの終了タイミングにおける閾値に設定される。すなわち、演算装置１００から出力される積和信号は、各アナログ回路３０における積和結果の最大値を基準として正規化（規格化）される。このように、本実施形態では、複数のアナログ回路の各々で生成された電圧信号に基づいて、出力期間Ｔ内において正規化された積和信号が出力される。これにより、各積和信号の精度が向上して高精度な積和演算を実現することが可能となる。
【０２４７】
このように、参照電圧を検出することで電圧次元での正規化を行うための基準値を容易に取得することが可能である。またランプ電圧の傾きは参照電圧に従って容易に変更可能である。このように電圧次元での各パラメータを調整することで、時間軸で規格化された積和信号を容易に実現することが可能である。すなわち、ランプ電圧の傾きを調整することで、電圧次元での正規化を時間軸に反映させることが可能となる。
【０２４８】
正規化された積和信号は、後段の回路に適宜出力される。例えば演算装置２００は、図１７と同様に縦続接続される。また各層の間には、所定の中間処理等をおこなう回路が適宜設けられてもよい。また縦列接続の他に、ループ接続等が実現されてもよい。
【０２４９】
図２２は、演算装置２００の接続例を示す模式図である。図２２では、入力信号線に同層のコンパレータ３５から出力された積和信号が入力されるループ接続が実現される。例えば演算装置２００をこのように接続することで、所定の入力信号のグループについての演算を繰り返し行うといった処理が可能である。
【０２５０】
また複数回の演算の後、出力結果を他の回路に出力することも可能である。これにより、繰り返し演算の精度等を試験するテスト回路を構成することが可能である。この他、スター型の接続形態や、バックプロパゲーション等を含む接続形態が実現されてもよい。
【０２５１】
＜その他の実施形態＞
本技術は、以上説明した実施形態に限定されず、他の種々の実施形態を実現することができる。
【０２５２】
上記では、正負のシナプス回路の抵抗値が同一の値に固定された、バイナリコネクトの構成について説明した。本技術は、バイナリコネクトに限定されず、例えば荷重値として多値の値が用いられるような場合であっても適用可能である。
【０２５３】
例えば荷重値として−１、−１／２、０、１／２、１といった、２値以上の値を設定して積和演算を行う場合がある。このような場合、各アナログ回路において、荷重値の絶対値の総和が一定になるように設定することで、非線形性に伴う電圧の歪みを抑制し、積和結果を電圧で表すことが可能である。
【０２５４】
また、正荷重及び負荷重が蓄積されて生じる正荷重電圧及び負荷重電圧の差分電圧を検出することで、入力信号の信号値（入力値）に対して略線形な歪みの少ない積和結果を電圧により表すことが可能である。これにより、周辺回路の大規模化等を回避しつつ、積和演算の応用範囲を広げることが可能である。
【０２５５】
本開示において、「中心」「中央」「均一」「等しい」「略中央」「垂直」「平行」「矩形状」「円形状」「同一平面形状」「線対称」等は、「実質的に中心」「実質的に中央」「実質的に均一」「実質的に等しい」「実質的に略中央」「実質的に線対称」を含む概念とする。例えば「完全に中心」「完全に中央」「完全に均一」「完全に等しい」「完全に略中央」「完全に垂直」「完全に平行」「完全に矩形状」「完全に円形状」「完全に同一平面形状」「完全に線対称」等を基準とした所定の範囲（例えば±１０％の範囲）に含まれる状態も含まれる。
【０２５６】
以上説明した本技術に係る特徴部分のうち、少なくとも２つの特徴部分を組み合わせることも可能である。すなわち各実施形態で説明した種々の特徴部分は、各実施形態の区別なく、任意に組み合わされてもよい。また上記で記載した種々の効果は、あくまで例示であって限定されるものではなく、また他の効果が発揮されてもよい。
【０２５７】
なお、本技術は以下のような構成も採ることができる。
（１）所定の入力期間内に、入力値に応じた電気信号がそれぞれ入力される複数の入力線と、
各々が、
前記複数の入力線の各々に入力される前記電気信号に基づいて、前記入力値に荷重値を乗算した乗算値に対応する電荷を生成する複数の乗算部と、
前記複数の乗算部の各々により生成された前記乗算値に対応する電荷を蓄積し、前記蓄積された電荷に基づいて、前記乗算値の和を表す積和信号を出力する出力部と
を有し、
前記複数の乗算部は、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は前記入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、前記荷重値の絶対値の総和に対する前記正の荷重値の総和の比率が０％から１００％までの間のいずれかの比率となるように構成され、
前記出力部は、前記正荷重電荷と前記負荷重電荷とをそれぞれ蓄積可能な蓄積部を有し、前記蓄積部の電圧に基づいて前記乗算値の和を電圧で表す電圧信号を生成し、前記電圧信号に基づいて前記積和信号を出力する
複数の積和演算装置と
を具備し、
前記複数の積和演算装置は、各々が有する前記複数の乗算部の前記荷重値の絶対値の総和が互いに等しくなるように構成される
演算装置。
（２）（１）に記載の演算装置であって、
前記蓄積部は、前記正荷重電荷を蓄積する正荷重蓄積部と、前記負荷重電荷を蓄積する負荷重蓄積部とを含み、
前記出力部は、前記正荷重蓄積部により保持される正荷重電圧と、前記負荷重蓄積部により保持される負荷重電圧との差分電圧に基づいて前記電圧信号を生成する
演算装置。
（３）（２）に記載の演算装置であって、
前記出力部は、前記差分電圧を所定の増幅率で増幅して前記電圧信号を生成する
演算装置。
（４）（１）から（３）のうちいずれか１つに記載の演算装置であって、
前記出力部は、前記乗算値の和を表す前記積和信号として前記乗算値の和を電圧で表す前記電圧信号を出力する
演算装置。
（５）（１）から（４）のうちいずれか１つに記載の演算装置であって、
前記出力部は、前記電圧信号を、所定の出力期間内におけるタイミング又はパルス幅により前記乗算値の和を表す前記積和信号に変換する
演算装置。
（６）（５）に記載の演算装置であって、
前記出力部は、前記複数の積和演算装置の各々で生成された前記電圧信号に基づいて、前記出力期間内において正規化された前記積和信号を出力する
演算装置。
（７）（５）又は（６）に記載の演算装置であって、さらに、
前記複数の積和演算装置の各々が有する前記出力部にランプ電圧を供給する電圧供給部を具備し、
前記出力部は、前記電圧信号の電圧を閾値として前記ランプ電圧の閾値判定を実行することで、前記積和信号を出力する
演算装置。
（８）（７）に記載の演算装置であって、
前記出力部は、前記ランプ電圧が前記電圧信号の電圧を過ぎて大きくなる又は小さくなるタイミングに基づいて、前記積和信号を出力する
演算装置。
（９）（７）又は（８）に記載の演算装置であって、さらに、
前記複数の積和演算装置の各々で生成された前記電圧信号の電圧のうち、最大の電圧を参照電圧として検出する検出部を具備し、
前記電源供給部は、前記参照電圧に基づいて前記ランプ電圧の傾きを設定する
演算装置。
（１０）（９）に記載の演算装置であって、
前記電源供給部は、前記ランプ電圧を第１の傾きに設定し、
前記出力部は、前記第１の傾きの前記ランプ電圧が前記電圧信号の電圧を過ぎて大きくなる又は小さくなるタイミングで論理状態が切り替わる中間信号を生成し、
前記検出部は、前記複数の積和演算装置の各々で生成された前記中間信号の論理和又は論理積に基づいて前記参照電圧を検出する
演算装置。
（１１）（９）又は（１０）に記載の演算装置であって、
前記電源供給部は、前記出力期間が終了するタイミングにおいて前記ランプ電圧が前記参照電圧と一致するように前記ランプ電圧を第２の傾きに設定し、
前記出力部は、前記第２の傾きの前記ランプ電圧が前記電圧信号の電圧を過ぎて大きくなる又は小さくなるタイミングで論理状態が切り替わる前記積和信号を出力する
演算装置。
（１２）（１）から（１１）のうちいずれか１つに記載の演算装置であって、
前記出力部は、前記電圧信号の電圧を一時的に保存する
演算装置。
（１３）（１）から（１２）のうちいずれか１つに記載の演算装置であって、
前記出力部は、前記電圧信号の電圧を保持するアナログメモリを有する
演算装置。
（１４）（１）から（１３）のうちいずれか１つに記載の演算装置であって、
前記正の荷重値及び前記負の荷重値の絶対値は、同じ値で固定されており、
前記複数の積和演算装置は、各々が有する前記複数の乗算部の総数が互いに等しくなるように構成される
演算装置。
（１５）（１）から（１４）のうちいずれか１つに記載の演算装置であって、
前記入力期間は、前記電気信号の入力により前記蓄積部の電圧が連続的に変化する過渡状態となる期間に設定される
演算装置。
（１６）（１）から（１５）のうちいずれか１つに記載の演算装置であって、
前記電気信号は、前記入力期間内の前記入力値に応じたタイミングから前記入力期間の終了タイミングまでの期間に応じたパルス幅を有する
演算装置。
（１７）所定の入力期間内に、入力値に応じた電気信号がそれぞれ入力される複数の入力線と、
各々が、
前記複数の入力線の各々に入力される前記電気信号に基づいて、前記入力値に荷重値を乗算した乗算値に対応する電荷を生成する複数の乗算部と、
前記複数の乗算部の各々により生成された前記乗算値に対応する電荷を蓄積し、前記蓄積された電荷に基づいて、前記乗算値の和を表す積和信号を出力する出力部と
を有し、
前記複数の乗算部は、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は前記入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、前記荷重値の絶対値の総和に対する前記正の荷重値の総和の比率が０％から１００％までの間のいずれかの比率となるように構成され、
前記出力部は、前記正荷重電荷と前記負荷重電荷とをそれぞれ蓄積可能な蓄積部を有し、前記蓄積部の電圧に基づいて前記乗算値の和を電圧で表す電圧信号を生成し、前記電圧信号に基づいて前記積和信号を出力する
複数の積和演算装置と、
前記複数の積和演算装置を接続して構成されたネットワーク回路と
を具備し、
前記複数の積和演算装置は、各々が有する前記複数の乗算部の前記荷重値の絶対値の総和が互いに等しくなるように構成される
積和演算システム。
【符号の説明】
【０２５８】
３、３０…アナログ回路
６、６ａ〜６ｃ…入力信号線
８、８ａ、８ｂ…シナプス回路
９…ニューロン回路
１１…蓄積部
１３、１３ａ、１３ｂ…キャパシタ
１７…抵抗器
２０…コンパレータ
３１…差動アンプ
３４…アナログメモリ
３５…コンパレータ
４０…積分回路
４１…検出部
１００、２００…演算装置
【図１】
2020126426.tif 000011
【図２】
2020126426.tif 000012
【図３】
2020126426.tif 000013
【図４】
2020126426.tif 000014
【図５】
2020126426.tif 000015
【図６】
2020126426.tif 000016
【図７】
2020126426.tif 000017
【図８】
2020126426.tif 000018
【図９】
2020126426.tif 000019
【図１０】
2020126426.tif 000020
【図１１】
2020126426.tif 000021
【図１２】
2020126426.tif 000022
【図１３】
2020126426.tif 000023
【図１４】
2020126426.tif 000024
【図１５】
2020126426.tif 000025
【図１６】
2020126426.tif 000026
【図１７】
2020126426.tif 000027
【図１８】
2020126426.tif 000028
【図１９】
2020126426.tif 000029
【図２０】
2020126426.tif 000030
【図２１】
2020126426.tif 000031
【図２２】
2020126426.tif 000032