(57)【要約】【課題】積和演算結果を精度よく検出することが可能な演算装置等を提供すること。【解決手段】演算装置は複数の入力線と複数の積和演算装置とを具備する。複数の入力線は、所定の入力期間内に入力値に応じた電気信号が入力される。積和演算装置の乗算部は、入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、荷重値の絶対値の総和に対する正の荷重値の総和の比率である正荷重比率が０％から１００％までの間のいずれかの比率となるように構成される。積和演算装置の出力部は、正荷重乗算部により生成された正荷重電荷又は負荷重乗算部により生成された負荷重電荷の少なくとも一方を蓄積することで、乗算値の和を表す積和信号を出力する。入力期間の長さは複数の積和演算装置の正荷重比率の分布に基づいて設定される。【選択図】図１２
2020126427.tif 000002
【特許請求の範囲】
【請求項１】
所定の入力期間内に、入力値に応じた電気信号がそれぞれ入力される複数の入力線と、
各々が、
前記複数の入力線の各々に入力される前記電気信号に基づいて、前記入力値に荷重値を乗算した乗算値に対応する電荷を生成する複数の乗算部と、
前記複数の乗算部の各々により生成された前記乗算値に対応する電荷を蓄積し、前記蓄積された電荷に基づいて、前記乗算値の和を表す積和信号を出力する出力部と
を有し、
前記複数の乗算部は、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は前記入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、前記荷重値の絶対値の総和に対する前記正の荷重値の総和の比率である正荷重比率が０％から１００％までの間のいずれかの比率となるように構成され、
前記出力部は、前記正荷重乗算部により生成された前記正荷重電荷、又は前記負荷重乗算部により生成された前記負荷重電荷の少なくとも一方を蓄積することで、前記積和信号を出力する
複数の積和演算装置と
を具備し、
前記入力期間の長さは、前記複数の積和演算装置の前記正荷重比率の分布に基づいて設定される
演算装置。
【請求項２】
請求項１に記載の演算装置であって、
前記入力値に応じた電気信号は、前記入力期間に対するＯＮ時間の長さが前記入力値に対応しているパルス信号である
演算装置。
【請求項３】
請求項１に記載の演算装置であって、
前記入力期間の長さは、前記正荷重比率の平均又は分散の少なくとも一方に基づいて設定される
演算装置。
【請求項４】
請求項１に記載の演算装置であって、
前記入力期間の長さは、前記正荷重比率が５０％の付近に多く分布するほど、長く設定される
演算装置。
【請求項５】
請求項１に記載の演算装置であって、
前記入力期間の長さは、前記正荷重比率の平均が５０％に近いほど、長く設定される
演算装置。
【請求項６】
請求項１に記載の演算装置であって、
前記入力期間の長さは、前記正荷重比率の平均が５０％に近い場合、前記正荷重比率の分散が小さいほど、長く設定される
演算装置。
【請求項７】
請求項１に記載の演算装置であって、
前記入力期間の長さは、前記複数の積和演算装置のうち前記出力部から出力される前記積和信号がノイズレベルよりも小さくなる可能性の高い積和演算装置の数に基づいて設定される
演算装置。
【請求項８】
請求項７に記載の演算装置であって、さらに、
前記複数の積和演算装置のうち、前記出力部から出力される前記積和信号がノイズレベルよりも小さくなる可能性の高い積和演算装置の数を判定するための判定回路を具備する
演算装置。    
【請求項９】
請求項８に記載の演算装置であって、
前記判定回路は、
前記複数の入力線の各々に入力される前記電気信号に基づいて、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷と、前記入力値に絶対値が前記正の荷重値と同じになる負の荷重値を乗算した乗算値に対応する負荷重電荷とをそれぞれ生成する複数の判定用乗算部と、
前記複数の判定用乗算部の各々により生成された前記正荷重電荷の総数、及び前記複数の判定用乗算部の各々により生成された前記負荷重電荷の総数の差に対応する電荷に基づいて、判定用信号を出力する判定用出力部と
前記複数の演算装置から出力される複数の積和信号のうち、前記判定用信号よりも小さい積和信号の数を判定するための判定部と
を有する
演算装置。
【請求項１０】
請求項９に記載の演算装置であって、
前記出力部から出力される前記積和信号がノイズレベルよりも小さくなる可能性の高い積和演算装置の数は、前記複数の入力線に同じ入力値に対応する電気信号が入力された際の前記判定部により判定された数に基づいて判定される
演算装置。    
【請求項１１】
請求項１に記載の演算装置であって、
前記出力部は、前記正荷重乗算部により生成された前記正荷重電荷、又は前記負荷重乗算部により生成された前記負荷重電荷の少なくとも一方を蓄積する蓄積部を有し、前記蓄積部により保持される電圧に対して所定の閾値により閾値判定を実行することで、前記乗算値の和を表す積和信号を出力する
演算装置。
【請求項１２】
請求項１１に記載の演算装置であって、
前記蓄積部は、前記正荷重乗算部により生成された前記正荷重電荷を蓄積可能な正電荷蓄積部と、前記負荷重乗算部により生成された前記負荷重電荷を蓄積可能な負電荷蓄積部とを有し、
前記出力部は、前記正電荷蓄積部、及び前記負電荷蓄積部の各々に対して、前記所定の閾値により閾値判定を実行することで、前記積和信号を出力する
演算装置。
【請求項１３】
請求項１１に記載の演算装置であって、
前記所定の閾値は、前記入力期間の長さに基づいて設定される
演算装置。
【請求項１４】
請求項１に記載の演算装置であって、
前記正の荷重値、及び前記負の荷重値の絶対値は、同じ値で固定されており、
前記正荷重比率は、前記複数の乗算部の数に対する前記正荷重乗算部の数の比率である
演算装置。
【請求項１５】
請求項１に記載の演算装置であって、
前記複数の積和演算装置の各々は、正電荷出力線と、負電荷出力線とを有し、
前記複数の乗算部は、前記複数の入力線に対応して設けられ、
前記正荷重乗算部は、前記複数の入力線のうちの対応する入力線と、前記正電荷出力線との間に接続され前記正の荷重値を規定し非線形特性を有する抵抗器を含み、前記正電荷出力線に前記乗算値に対応する正荷重電荷を出力し、
前記負荷重乗算部は、前記複数の入力線のうちの対応する入力線と、前記負電荷出力線との間に接続され前記負の荷重値を規定し非線形特性を有する抵抗器を含み、前記負電荷出力線に前記乗算値に対応する負荷重電荷を出力する
演算装置。
【請求項１６】
請求項１５に記載の演算装置であって、
前記正荷重乗算部が有する抵抗器、及び前記負荷重乗算部が有する抵抗器は、同じ抵抗値を有し、
前記正荷重比率は、前記抵抗器の総数に対する前記正荷重乗算部が有する抵抗器の数の比率である
演算装置。
【請求項１７】
請求項８に記載の演算装置であって、
前記判定回路は、正電荷出力線と、負電荷出力線とを有し、
前記複数の判定用乗算部は、前記複数の入力線に対応して設けられ、
前記複数の判定用乗算部の各々は、前記複数の入力線のうちの対応する入力線と前記正電荷出力線との間、及び前記複数の入力線のうちの対応する入力線と前記負電荷出力線との間の各々に接続され非線形特性を有する共通の抵抗器を含む
演算装置。
【請求項１８】
請求項１５に記載の積和演算装置であって、
前記抵抗器は、固定抵抗素子、可変抵抗素子、又はサブスレッショルド領域で動作するＭＯＳトランジスタである
積和演算装置。
【請求項１９】
所定の入力期間内に、入力値に応じた電気信号がそれぞれ入力される複数の入力線と、
各々が、
前記複数の入力線の各々に入力される前記電気信号に基づいて、前記入力値に荷重値を乗算した乗算値に対応する電荷を生成する複数の乗算部と、
前記複数の乗算部の各々により生成された前記乗算値に対応する電荷を蓄積し、前記蓄積された電荷に基づいて、前記乗算値の和を表す積和信号を出力する出力部と
を有し、
前記複数の乗算部は、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は前記入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、前記荷重値の絶対値の総和に対する前記正の荷重値の総和の比率である正荷重比率が０％から１００％までの間のいずれかの比率となるように構成され、
前記出力部は、前記正荷重乗算部により生成された前記正荷重電荷、又は前記負荷重乗算部により生成された前記負荷重電荷の少なくとも一方を蓄積することで、前記積和信号を出力する
複数のアナログ回路と
前記複数のアナログ回路を接続して構成されたネットワーク回路と
を具備し、
前記入力期間の長さは、前記複数の積和演算装置の前記正荷重比率の分布に基づいて設定される
積和演算システム。
【請求項２０】
各々が、
複数の入力線の各々に入力される入力値に応じた電気信号に基づいて、前記入力値に荷重値を乗算した乗算値に対応する電荷を生成する複数の乗算部と、
前記複数の乗算部の各々により生成された前記乗算値に対応する電荷を蓄積し、前記蓄積された電荷に基づいて、前記乗算値の和を表す積和信号を出力する出力部と
を有し、
前記複数の乗算部は、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は前記入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、前記荷重値の絶対値の総和に対する前記正の荷重値の総和の比率である正荷重比率が０％から１００％までの間のいずれかの比率となるように構成され、
前記出力部は、前記正荷重乗算部により生成された前記正荷重電荷、又は前記負荷重乗算部により生成された前記負荷重電荷の少なくとも一方を蓄積することで、前記積和信号を出力する
複数の積和演算装置の前記正荷重比率の分布に基づいて、前記複数の入力線に前記電気信号を入力する入力期間を設定する
設定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、アナログ方式を用いた積和演算に適用可能な演算装置、積和演算システム、及び設定方法に関する。
【背景技術】
【０００２】
従来、積和演算を行う技術が開発されている。積和演算は、複数の入力値のそれぞれに荷重を乗算し、各乗算結果を互いに加算する演算であり、例えばニューラルネットワーク等による画像や音声等の認識処理に用いられる。
【０００３】
例えば特許文献１には、積和演算の処理をアナログ方式によって行うアナログ回路について記載されている。このアナログ回路では、複数の電気信号のそれぞれに対応した荷重が設定される。また、対応する電気信号と荷重とに応じた電荷がそれぞれ出力され、出力された電荷がキャパシタに適宜蓄えられる。そして、電荷が蓄えられたキャパシタの電圧に基づいて積和結果を表す算出対象値が算出される。これにより、例えばデジタル方式による処理と比べて積和演算に要する消費電力を抑制することが可能となっている（特許文献１の明細書段落［０００３］［００４９］〜［００５３］［００６２］図３等）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１８／０３４１６３号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このようなアナログ方式の回路を用いることで、ニューラルネットワーク等の低消費電力化につながると期待されており、演算結果を精度よく検出することが可能な技術が求められている。
【０００６】
以上のような事情に鑑み、本技術の目的は、積和演算を行うアナログ方式の回路において、演算結果を精度よく検出することが可能な演算装置、積和演算システム、及び設定方法を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本技術の一形態に係る演算装置は、複数の入力線と、複数の積和演算装置とを具備する。
前記複数の入力線は、所定の入力期間内に、入力値に応じた電気信号がそれぞれ入力される。
前記複数の積和演算装置の各々は、複数の乗算部と、出力部とを有する。
前記複数の乗算部は、前記複数の入力線の各々に入力される前記電気信号に基づいて、前記入力値に荷重値を乗算した乗算値に対応する電荷を生成する。
前記出力部は、前記複数の乗算部の各々により生成された前記乗算値に対応する電荷を蓄積し、前記蓄積された電荷に基づいて、前記乗算値の和を表す積和信号を出力する。
また前記複数の乗算部は、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は前記入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、前記荷重値の絶対値の総和に対する前記正の荷重値の総和の比率である正荷重比率が０％から１００％までの間のいずれかの比率となるように構成される。
また前記出力部は、前記正荷重乗算部により生成された前記正荷重電荷、又は前記負荷重乗算部により生成された前記負荷重電荷の少なくとも一方を蓄積することで、前記積和信号を出力する。
また前記入力期間の長さは、前記複数の積和演算装置の前記正荷重比率の分布に基づいて設定される。
【０００８】
この演算装置では、複数の積和演算装置の正荷重比率の分布に基づいて、入力値に応じた電気信号の入力期間の長さが設定される。これにより、消費電力を抑えつつ、各積和演算装置から出力される積和信号のレベルを増加させることが可能となる。この結果、演算結果を精度よく検出することが可能となる。
【０００９】
前記入力値に応じた電気信号は、前記入力期間に対するＯＮ時間の長さが前記入力値に対応しているパルス信号であってもよい。
【００１０】
前記入力期間の長さは、前記正荷重比率の平均又は分散の少なくとも一方に基づいて設定されてもよい。
【００１１】
前記入力期間の長さは、前記正荷重比率が５０％の付近に多く分布するほど、長く設定されてもよい。
【００１２】
前記入力期間の長さは、前記正荷重比率の平均が５０％に近いほど、長く設定されてもよい。
【００１３】
前記入力期間の長さは、前記正荷重比率の平均が５０％に近い場合、前記正荷重比率の分散が小さいほど、長く設定されてもよい。
【００１４】
前記入力期間の長さは、前記複数の積和演算装置のうち前記出力部から出力される前記積和信号がノイズレベルよりも小さくなる可能性の高い積和演算装置の数に基づいて設定されてもよい。
【００１５】
前記演算装置は、さらに、前記複数の積和演算装置のうち、前記出力部から出力される前記積和信号がノイズレベルよりも小さくなる可能性の高い積和演算装置の数を判定するための判定回路を具備してもよい。
【００１６】
前記判定回路は、
前記複数の入力線の各々に入力される前記電気信号に基づいて、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷と、前記入力値に絶対値が前記正の荷重値と同じになる負の荷重値を乗算した乗算値に対応する負荷重電荷とをそれぞれ生成する複数の判定用乗算部と、
前記複数の判定用乗算部の各々により生成された前記正荷重電荷の総数、及び前記複数の判定用乗算部の各々により生成された前記負荷重電荷の総数の差に対応する電荷に基づいて、判定用信号を出力する判定用出力部と
前記複数の演算装置から出力される複数の積和信号のうち、前記判定用信号よりも小さい積和信号の数を判定するための判定部と
を有してもよい。
【００１７】
前記出力部から出力される前記積和信号がノイズレベルよりも小さくなる可能性の高い積和演算装置の数は、前記複数の入力線に同じ入力値に対応する電気信号が入力された際の前記判定部により判定された数に基づいて判定されてもよい。
【００１８】
前記出力部は、前記正荷重乗算部により生成された前記正荷重電荷、又は前記負荷重乗算部により生成された前記負荷重電荷の少なくとも一方を蓄積する蓄積部を有し、前記蓄積部により保持される電圧に対して所定の閾値により閾値判定を実行することで、前記乗算値の和を表す積和信号を出力してもよい。
【００１９】
前記蓄積部は、前記正荷重乗算部により生成された前記正荷重電荷を蓄積可能な正電荷蓄積部と、前記負荷重乗算部により生成された前記負荷重電荷を蓄積可能な負電荷蓄積部とを有してもよい。この場合、前記出力部は、前記正電荷蓄積部、及び前記負電荷蓄積部の各々に対して、前記所定の閾値により閾値判定を実行することで、前記積和信号を出力してもよい。
【００２０】
前記所定の閾値は、前記入力期間の長さに基づいて設定されてもよい。
前記正の荷重値、及び前記負の荷重値の絶対値は、同じ値で固定されていてもよい。この場合、前記正荷重比率は、前記複数の乗算部の数に対する前記正荷重乗算部の数の比率であってもよい。
【００２１】
前記複数の積和演算装置の各々は、正電荷出力線と、負電荷出力線とを有してもよい。この場合、前記複数の乗算部は、前記複数の入力線に対応して設けられてもよい。また前記正荷重乗算部は、前記複数の入力線のうちの対応する入力線と、前記正電荷出力線との間に接続され前記正の荷重値を規定し非線形特性を有する抵抗器を含み、前記正電荷出力線に前記乗算値に対応する正荷重電荷を出力してもよい。また前記負荷重乗算部は、前記複数の入力線のうちの対応する入力線と、前記負電荷出力線との間に接続され前記負の荷重値を規定し非線形特性を有する抵抗器を含み、前記負電荷出力線に前記乗算値に対応する負荷重電荷を出力してもよい。
【００２２】
前記正荷重乗算部が有する抵抗器、及び前記負荷重乗算部が有する抵抗器は、同じ抵抗値を有してもよい。この場合、前記正荷重比率は、前記抵抗器の総数に対する前記正荷重乗算部が有する抵抗器の数の比率であってもよい。
【００２３】
前記判定回路は、正電荷出力線と、負電荷出力線とを有してもよい。この場合、前記複数の判定用乗算部は、前記複数の入力線に対応して設けられてもよい。また前記複数の判定用乗算部の各々は、前記複数の入力線のうちの対応する入力線と前記正電荷出力線との間、及び前記複数の入力線のうちの対応する入力線と前記負電荷出力線との間の各々に接続され非線形特性を有する共通の抵抗器を含んでもよい。
【００２４】
本技術の一形態に係る積和演算システムは、前記複数の入力線と、複数のアナログ回路と、ネットワーク回路とを具備する。
前記複数のアナログ回路の各々は、前記複数の乗算部と、前記出力部とを有する。
前記ネットワーク回路は、前記複数のアナログ回路を接続して構成される。
また前記入力期間の長さは、前記複数の積和演算装置の前記正荷重比率の分布に基づいて設定される。
【００２５】
本技術の一形態に係る設定方法は、前記複数の積和演算装置の前記正荷重比率の分布に基づいて、前記複数の入力線に前記電気信号を入力する入力期間を設定する
【図面の簡単な説明】
【００２６】
【図１】本技術の一実施形態に係る演算装置の構成例を示す模式図である。
【図２】アナログ回路に入力される電気信号の一例を示す模式図である。
【図３】演算装置の具体的な構成例を示す模式図である。
【図４】ニューロン回路の構成例を示す模式図である。
【図５】ＰＷＭ方式のアナログ回路の一例を示す模式的な回路図である。
【図６】図５に示すアナログ回路による積和信号の算出例を説明するための図である。
【図７】全体の積和結果を示す積和信号の算出例を示す模式図である。
【図８】ＰＷＭ方式のアナログ回路の他の例を示す模式的な回路図である。
【図９】図８に示すアナログ回路による積和信号の算出例を説明するための図である。
【図１０】ＴＡＣＴ方式のアナログ回路の一例を示す模式的な回路図である。
【図１１】入力期間の終了時における各出力線の電位について説明するための模式的なグラフである。
【図１２】、時間軸アナログ積和演算に関するシミュレーションについて説明するための、演算装置の構成例を示す模式図である。
【図１３】ノイズ埋没判定回路の構成例を示す模式図である。
【図１４】テスト信号の一例を示す模式図である。
【図１５】ニューラルネットワークの構成例を示す模式図である。
【発明を実施するための形態】
【００２７】
以下、本技術に係る実施形態を、図面を参照しながら説明する。
【００２８】
［演算装置の構成］
図１は、本技術の一実施形態に係る演算装置の構成例を示す模式図である。演算装置１００は、積和演算を含む所定の演算処理を実行するアナログ方式の演算装置である。演算装置１００を用いることで、例えばニューラルネットワーク等の数学モデルに従った演算処理を実行することが可能である。
【００２９】
演算装置１００は、複数の信号線１と、複数の入力部２と、複数のアナログ回路３とを有する。各信号線１は、所定の方式の電気信号を伝送する線である。電気信号としては、例えばパルスのタイミングや幅等のアナログ量を用いて信号値を表すアナログ信号が用いられる。図１には電気信号が伝送される方向が、矢印を用いて模式的に図示されている。本実施形態では、アナログ回路３は、積和演算装置に相当する。
【００３０】
例えば、１つのアナログ回路３には、複数の信号線１が接続される。アナログ回路３に電気信号を伝送する信号線１は、その信号線１が接続されたアナログ回路３にとって、電気信号が入力される入力信号線となる。また、アナログ回路３から出力される電気信号を伝送する信号線１は、その信号線１が接続されたアナログ回路３にとって、電気信号が出力される出力信号線となる。本実施形態では、入力信号線は、入力線に相当する。
【００３１】
複数の入力部２は、入力データ４に応じた複数の電気信号をそれぞれ生成する。入力データ４は、例えば演算装置１００によって実装されるニューラルネットワーク等を用いた処理の対象となるデータである。従って入力データ４に応じた複数の電気信号の各信号値は、演算装置１００に対する入力値であるとも言える。
【００３２】
入力データ４としては、例えば演算装置１００の処理対象となる画像データ、音声データ、統計データ等の任意のデータが用いられる。例えば、入力データ４として画像データが用いられる場合等には、画像データの各画素の画素値（ＲＧＢ値や輝度値等）を信号値とする電気信号が生成される。この他、入力データ４の種類や演算装置１００による処理の内容に応じて、入力データ４に応じた電気信号が適宜生成されてよい。
【００３３】
アナログ回路３は、入力される電気信号に基づいて、積和演算を行うアナログ方式の回路である。積和演算は、例えば複数の入力値と、各入力値に対応する荷重値とをそれぞれ乗算して得られる複数の乗算値を足し合わせる演算である。従って積和演算は、各乗算値の和（以下積和結果と記載する）を算出する処理であるとも言える。
【００３４】
図１に示すように、１つのアナログ回路３には、複数の入力信号線が接続され、複数の電気信号が与えられる。これら複数の入力信号線とアナログ回路とにより、本実施形態に係る積和演算回路が構成される。また各入力信号線から複数の電気信号が入力されることで、積和演算回路（アナログ回路３）により、本実施形態に係る積和演算方法が実行される。
【００３５】
以下では、１つのアナログ回路３に入力される電気信号の総数をＮとする。なお、各アナログ回路３に入力される電気信号の個数Ｎは、例えば演算処理のモデルや精度等に応じて回路ごとに適宜設定される。
【００３６】
アナログ回路３では、例えばｉ番目の入力信号線から入力される電気信号により表される信号値ｘiと、信号値ｘiに対応する荷重値ｗiとの乗算値であるｗi・ｘiが算出される。ここでｉはＮ以下の自然数（ｉ＝１、２、・・・、Ｎ）である。乗算値の演算は、各電気信号（入力信号線）ごとに実行され、Ｎ個の乗算値が算出される。このＮ個の乗算値をそれぞれ足し合わせた値が積和結果（Ｎ個の乗算値の和）として算出される。従って、１つのアナログ回路３で算出される積和結果は、以下の式で表される。
【００３７】
【数１】
2020126427.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をそのまま出力し、それ以外の場合には０を出力する。例えばＲｅＬＵ関数を実装した関数回路５が各信号線１に適宜接続される。これにより、演算装置１００の処理を実現することが可能である。
【００５４】
図２は、アナログ回路３に入力される電気信号の一例を示す模式図である。図２Ａ及びＢには、複数の電気信号の波形を表すグラフが模式的に図示されている。グラフの横軸は時間軸であり、縦軸は電気信号の電圧である。
【００５５】
図２Ａには、パルス幅変調（ＰＷＭ：Pulse Width Modulation）方式の電気信号の波形の一例が示されている。ＰＷＭ方式は、例えばパルス波形のパルス幅τ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+及び負の荷重値ｗi-のどちらか一方が設定される。例えば正の荷重値ｗi+との乗算値に対応する正荷重電荷は、正電荷出力線７ａに出力される。また例えば負の荷重値ｗi-との乗算値に対応する負荷重電荷は、負電荷出力線７ｂに出力される。
【００７０】
なおシナプス回路８では、乗算値に対応する電荷として、荷重値ｗiの正負にかかわらず同符号の電荷（例えば正の電荷）が出力される。すなわち、正荷重電荷及び負荷重電荷は、互いに同符号の電荷となる。
【００７１】
このように、シナプス回路８は、乗算結果に対応する電荷を荷重値ｗiの符号に応じてそれぞれ別の出力線７ａ又は７ｂに出力するように構成される。シナプス回路８の具体的な構成については、後に詳しく説明する。本実施形態において、複数のシナプス回路８は、複数の入力線の各々に入力される電気信号に基づいて、入力値に荷重値を乗算した乗算値に対応する電荷を生成する複数の乗算部として機能する。
【００７２】
本実施形態では、１つのシナプス回路８に対して、単一の入力信号線６と、１対の出力線７とが接続される。すなわち１つのシナプス回路８には、単一の電気信号が入力され、入力された電気信号に基づいて算出された乗算値に対応する電荷が、いずれか一方の出力線７ａ又は７ｂに出力される。このように、シナプス回路８は、単一の入力信号線６と１対の出力線７（正電荷出力線７ａ及び負電荷出力線７ｂ）とに接続された１入力２出力の回路となる。
【００７３】
１つのアナログ回路３では、複数のシナプス回路８が、１対の出力線７に沿って配置される。各シナプス回路８は、正電荷出力線７ａ（負電荷出力線７ｂ）に対してそれぞれ並列に接続される。以下では、最も下流側（ニューロン回路９に接続される側）に配置されるシナプス回路８を１番目のシナプス回路とする。
【００７４】
図３に示すように、複数の入力信号線６は、複数のアナログ回路３の各々が有する１対の出力線７に対して交差するように配線される。典型的には、入力信号線６は各出力線７と直交するように設けられる。すなわち、演算装置１００は、入力信号線６と出力線７とが交差したクロスバー構成を有する。クロスバー構成を用いることで、例えばアナログ回路３等を高密度に集積化することが可能となる。
【００７５】
また演算装置１００では、ｊ番目の入力信号線６に対して、各アナログ回路３に含まれるｊ番目のシナプス回路８がそれぞれ並列に接続される。従って、同じ入力信号線６に接続されるシナプス回路８には、互いに同様の電気信号が入力される。これにより、下位層に含まれる１つの信号源が、上位層に含まれる複数のアナログ回路３に接続される構成を実装することが可能である。
【００７６】
なお図３に示す例では、各入力信号線６に電気信号を入力する信号源として、下位層に含まれるアナログ回路３（プレニューロン）が模式的に図示されている。これに限定されず、例えば信号源として、入力部２が用いられる場合にも、クロスバー構成を用いることが可能である。
【００７７】
このように、演算装置１００では、複数のアナログ回路３が、複数の入力信号線６の各々に並列に接続される。これにより、例えば、各アナログ回路３（各シナプス回路８）に対して並列に電気信号を入力することが可能となり、演算処理の高速化を図ることが可能である。この結果、優れた演算性能を発揮することが可能となる。
【００７８】
ニューロン回路９は、各シナプス回路８で算出された乗算値に基づいて、（数１）式に示す積和結果を算出する。具体的には、１対の出力線７を介して入力された電荷に基づいて、積和結果（積和信号）を表す電気信号を出力する。
【００７９】
図４は、ニューロン回路９の構成例を示す模式図である。ニューロン回路９は、蓄積部１１と、信号出力部１２とを有する。図４には、１対の出力線７と、単一の出力信号線１０とに接続された２入力１出力のニューロン回路９が示されている。なお、ニューロン回路９として２入力２出力の回路等が用いられる場合もあり得る。
【００８０】
蓄積部１１は、複数のシナプス回路８により１対の出力線７に出力された電荷を蓄積する。蓄積部１１は、２つのキャパシタ１３ａ及び１３ｂを有する。キャパシタ１３ａは、正電荷出力線７ａとＧＮＤとの間に接続される。またキャパシタ１３ｂは、負電荷出力線７ｂとＧＮＤとの間に接続される。従って各キャパシタ１３ａ及び１３ｂには、正電荷出力線７ａ及び負電荷出力線７ｂから流れ込む電荷がそれぞれ蓄積される。
【００８１】
例えば電気信号の入力期間Ｔが経過した際に、キャパシタ１３ａに蓄積された電荷は、正の荷重値ｗi+との乗算値に対応する正荷重電荷の総和σ+となる。また同様に、キャパシタ１３ｂに蓄積された電荷は、負の荷重値ｗi-との乗算値に対応する負荷重電荷の総和σ-となる。
【００８２】
例えばキャパシタ１３ａに正荷重電荷が蓄積されると、ＧＮＤを基準とする正電荷出力線７ａの電位が上昇する。従って、正電荷出力線７ａの電位は、正の荷重値ｗi+との乗算値に対応する電荷の総和σ+に応じた値となる。なお、正電荷出力線７ａの電位は、キャパシタ１３ａにより保持される電圧に相当する。
【００８３】
同様に、キャパシタ１３ｂに負荷重電荷が蓄積されると、ＧＮＤを基準とする負電荷出力線７ｂの電位が上昇する。従って、負電荷出力線７ｂの電位は、負の荷重値ｗi-との乗算値に対応する電荷の総和σ-に応じた値となる。なお、負電荷出力線７ｂの電位は、キャパシタ１３ｂにより保持される電圧に相当する。
【００８４】
信号出力部１２は、蓄積部１１に蓄積された電荷に基づいて、乗算値（ｗi・ｘi ）の和を表す積和信号を出力する。積和信号は、例えば正負合わせたすべての荷重値ｗiと信号値ｘiとの乗算値の和である全体の積和結果を表す信号である。例えば、（数１）式で表される積和結果は、以下のように書き表すことが可能である。
【００８５】
【数２】
2020126427.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 ）の和を表す積和信号を出力する。すなわち信号生成部２１は、キャパシタ１３ａにより保持される電圧が閾値θ１に達したタイミングと、キャパシタ１３ｂにより保持される電圧が閾値θ２（＝θ１）に達したタイミングとに基づいて、積和信号を出力する。
【０１１５】
本実施形態では、積和信号として、パルス幅が変調されたパルス信号である、ＰＭＷ信号が出力される。信号生成部２１の具体的な回路構成等は限定されず、任意に設計されてよい。
【０１１６】
図６及び図７は、図５に示すアナログ回路３による積和信号の算出例を説明するための図である。本実施形態では、キャパシタ１３ａに蓄積された正荷重電荷に基づいた正荷重電荷の積和結果と、キャパシタ１３ｂに蓄積された負荷重電荷に基づいた負荷重電荷の積和結果とに基づいて、正負を含めた全体の積和結果を表す信号が算出される。
【０１１７】
正荷重電荷の積和結果、及び負荷重電荷の積和結果の算出は、互いに等しい処理となる。まず図６を参照しながら、正負の区別なく、キャパシタ１３に蓄積された電荷に基づいた積和結果の算出方法（積和演算方法）を説明する。
【０１１８】
図６の中で記載されているパラメータを説明する。「ｔ」は時間である。「Ｔ」は入力期間及び出力期間の各々を表す。「ｔn 」は入力期間Ｔの終了タイミングであり、「ｔm 」は出力期間Ｔの終了タイミングである。
【０１１９】
本実施形態では、入力期間Ｔの長さと、出力期間Ｔの長さとが、互いに等しく設定される。また入力期間Ｔの終了タイミングｔnから出力期間Ｔが開始される。従って、入力期間Ｔの終了タイミングｔnは、出力期間Ｔの開始タイミングに相当する。
【０１２０】
「θ」は、信号出力部１２（コンパレータ２０）による閾値判定に用いられる閾値である。
【０１２１】
「Ｓi（ｔ）」は、ｉ番目の入力信号線６に入力される入力信号（ＰＷＭ信号）である。「τi 」は、入力信号Ｓi（ｔ）のパルス幅である。「Ｐi（ｔ）」は、図５に示す各シナプス回路８における、内部状態（電位）の変化量である。「ｗi 」は、荷重値であり、図５に示す抵抗器１７の抵抗値により規定される。
【０１２２】
「Ｖn（ｔ）」は、「Ｐi（ｔ）」の総和であり、キャパシタ１３に蓄積される電荷の総量に相当する。「Ｓn（ｔ）」は、積和結果を表す積和信号（ＰＷＭ信号）である。「τn 」は、出力される積和信号のパルス幅である。具体的には、「τn」は、出力期間Ｔ内における、キャパシタ１３により保持される電圧が閾値θより大きくなるタイミングから、出力期間Ｔの終了タイミングｔmまでの長さに応じた値となる。
【０１２３】
本実施例では、スイッチ１６ｂ及び１６ｃを備えており、特に、このスイッチで出力線を切り離すことで、低消費電力化と充電精度の向上が可能となっている。
【０１２４】
ここで以下の式に示すように、入力値（信号値）ｘｉは、入力信号Ｓi（ｔ）のパルス幅τiと入力期間Ｔとのデューティ比Ｒi（＝τi／Ｔ）で与えられる。
【０１２５】
【数３】
2020126427.tif 000005
【０１２６】
図５に示すシナプス回路８により、信号値ｘiに荷重値ｗiを乗算した乗算値に対応する電荷が生成される。具体的には、抵抗器１７の抵抗により、一定の傾きｗiで内部状態（電位）が増加される。
【０１２７】
そして、入力期間Ｔの終了タイミングｔnにおける各シナプス回路８の内部電位の変化量Ｐi（ｔn ）は、以下の式で与えられる。なお、入力信号Ｓi（ｔ）のハイレベルの値は１とする。
【０１２８】
【数４】
2020126427.tif 000006
【０１２９】
キャパシタ１３に蓄積される電荷の総量Ｖn（ｔn ）は、Ｐｉ（ｔn ）の総和となるので、以下の式で与えられる。
【０１３０】
【数５】
2020126427.tif 000007
【０１３１】
入力期間Ｔの終了タイミングｔnで、図５に示すスイッチ１６ａ及び１６ｄがＯＮに切替えられ、またスイッチ１６ｂ及び１６ｃがＯＦＦに切替えられる。そして、入力期間Ｔの終了タイミングｔnで、充電部１５（電流源１８）による充電が開始される。従って本実施形態では、充電部１５による充電の開始タイミングで、出力期間Ｔが開始される。すなわち入力期間Ｔの終了タイミングｔnで、充電及び出力期間が同時に開始される。
【０１３２】
電流源１８により、入力期間Ｔの終了タイミングｔnから、各シナプス回路８の内部電位を、傾き（充電速度）αで増加させる。そして出力期間Ｔ内における、キャパシタ１３により保持される電圧が閾値θより大きくなるタイミングから、出力期間Ｔの終了タイミングｔmまでの長さに応じたパルス幅τnを有する積和信号（ＰＷＭ信号）が生成される。
【０１３３】
積和信号のパルス幅τnと出力期間Ｔとのデューティ比をＲn（＝τn／Ｔ）とすると、Ｒnは、以下の式で与えられる。なお、閾値θは、電荷の総量Ｖn（ｔn ）以上であるとする。
【０１３４】
【数６】
2020126427.tif 000008
【０１３５】
従って、信号値ｘiに荷重値ｗiを乗算した乗算値（ｗi・ｘi ）を足し合わせた積和結果は、以下の式で与えられる。
【０１３６】
【数７】
2020126427.tif 000009
【０１３７】
すなわち積和結果は、αＲn＝α・（τn／Ｔ）に、充電速度α、閾値θ、及び出力期間Ｔにより定められる定数を減算した値となる。このように、所定の長さ出力期間Ｔにおける、蓄積部１１により保持された電圧が閾値θより大きくなるタイミングに基づいて、積和結果を表す積和信号を出力することが可能となる。
【０１３８】
図７は、正荷重電荷及び負荷重電荷の両方の積和結果をふまえた全体の積和結果を示す積和信号の算出例を示す模式図である。図７では、正荷重電荷の積和結果を表す積和信号を「Ｓn+（ｔ）」とし、そのパルス幅を「τn+」とする。また負荷重電荷の積和結果を表す積和信号を「Ｓn-（ｔ）」とし、そのパルス幅を「τn-」とする。さらに、全体の積和結果を表す積和信号を「Ｓn（ｔ）」とし、そのパルス幅を「τn」とする。
【０１３９】
入力期間Ｔの終了タイミングｔnにおける、キャパシタ１３ａに蓄積される正荷重電荷の総量Ｖn+（ｔn ）は、以下の式で与えられる。なおｗi+は正の荷重値である。
【０１４０】
【数８】
2020126427.tif 000010
【０１４１】
入力期間Ｔの終了タイミングｔnにおける、キャパシタ１３ｂに蓄積される負荷重電荷の総量Ｖn-（ｔn ）は、以下の式で与えられる。なおｗi-は負の荷重値である。
【０１４２】
【数９】
2020126427.tif 000011
【０１４３】
正の積和信号Ｓn+（ｔ）のデューティ比をＲn+（＝τn+／Ｔ）とすると、信号値ｘiに正の荷重値ｗi+を乗算した乗算値（ｗi+・ｘi ）を足し合わせた正の積和結果は、以下の式で与えられる。なお、閾値θは、正荷重電荷の総量Ｖn+（ｔn ）以上であるとする。
【０１４４】
【数１０】
2020126427.tif 000012
【０１４５】
負の積和信号Ｓn-（ｔ）のデューティ比をＲn-（＝τn-／Ｔ）とすると、入力値ｘiに負の荷重値ｗi-を乗算した乗算値（｜ｗi-｜・ｘi ）を足し合わせた負の積和結果は、以下の式で与えられる。なお、充電速度α及び閾値θは、（数１０）式で用いらる値と等しい。また閾値θは、負荷重電荷の総量Ｖn-（ｔn ）以上であるとする。
【０１４６】
【数１１】
2020126427.tif 000013
【０１４７】
従って、上記した（数２）式を用いると、全体の積和結果は以下の式で与えられる。
【０１４８】
【数１２】
2020126427.tif 000014
【０１４９】
すなわち全体の積和結果は、充電速度α、積和信号Ｓn+（ｔ）のパルス幅τn+、積和信号Ｓn-（ｔ）のパルス幅τn-、及び出力期間Ｔにより求められる。すなわち、コンパレータ２０ａにより検出されるタイミング、及びコンパレータ２０ｂにより検出されるタイミングに基づいて、容易に積和結果を算出することが可能となる。
【０１５０】
そして図７に示すように、全体の積和結果を表す積和信号として、パルス幅「τn 」を有する積和信号「Ｓn（ｔ）」を容易に出力することが可能となる。なお、積和信号Ｓn+（ｔ）のパルス幅τn+と、積和信号Ｓn-（ｔ）のパルス幅τn-とのいずれが大きいかを判定可能であってもよい。そしてパルス幅τn+の方が大きい場合の積和信号「Ｓn（ｔ）」を正の積和信号として出力し、パルス幅τn-の方が大きい場合の積和信号「Ｓn（ｔ）」を負の積和信号として出力することも可能である。パルス幅τn+と、パルス幅τn-とを比較する回路は、アンド回路やノット回路等を適宜用いることで実現することが可能である。
【０１５１】
例えばＲｅＬＵ関数（ランプ関数）等が用いられる場合等において、正の積和信号「Ｓn（ｔ）」となる場合はそのまま出力され、負の積和信号「Ｓn（ｔ）」となる場合は０を出力する、といった設定も可能である。
【０１５２】
充電速度α及び閾値θの設定として、出力期間Ｔに対して、α＝θ／Ｔとする。これにより、（数６）式、（数７）式、（数１０）式、（数１１）式に含まれる、充電速度α、閾値θ、及び出力期間Ｔにより定められる定数をゼロにすることが可能となり、処理の簡素化を図ることが可能となる。すなわち閾値θを、入力期間Ｔの長さに基づいて設定することで、有利な効果を発揮することが可能となる。
【０１５３】
図８は、ＰＷＭ方式のアナログ回路３の他の例を示す模式的な回路図である。図９は、図８に示すアナログ回路３による積和信号の算出例を説明するための図である。
【０１５４】
図８に例示するアナログ回路３では、差動増幅回路２３により、正荷重電荷の総量と、負荷重電荷の総量との差に対応する電荷（Ｖ+−Ｖ-）が出力され、蓄積部１１に含まれるキャパシタ１３に蓄積される。差動増幅回路２３の具体的な構成は限定されず、任意に設計されてよい。
【０１５５】
入力期間Ｔの開始タイミングでは、スイッチ１６ａ、１６ｂ、及び１６ｃがＯＮとなり、スイッチ１６ｂがＯＦＦとなる。そして、入力期間Ｔ内に、入力信号が入力される。キャパシタ１３には、差動増幅回路２３により出力される電荷（Ｖ+−Ｖ-）が蓄積される。なお図９では、入力期間Ｔにおける電荷の蓄積状態の図示は省略されている。
【０１５６】
入力期間Ｔの終了タイミングｔnでは、スイッチ１６ｃがＯＦＦに切替えられ、またスイッチ１６ｄがＯＮに切替えられる。そして図９に示すように、入力期間Ｔの終了タイミングｔnで、充電部１５（電流源１８）による充電が開始される。
【０１５７】
また信号出力部１２のコンパレータ２０により、キャパシタ１３により保持される電圧が閾値θより大きくなるタイミングが検出される。検出されたタイミングに基づいて、信号生成部２１により積和信号（ＰＷＭ信号）「Ｓn（ｔ）」が算出される。
【０１５８】
このように、正荷重電荷の総量と、負荷重電荷の総量との差に対応する電荷（Ｖ+−Ｖ-）に対して閾値判定を実行することで、積和信号「Ｓn（ｔ）」を出力することが可能である。
【０１５９】
なお上記のＰＷＭ方式のアナログ回路３による積和演算の説明では、各シナプス回路８における内部状態（電位）の変化や、充電によるキャパシタ１３の電圧の増加を一次関数的な直線の変化として近似している。もちろんこのような近似がなければ積和演算が難しくなるという訳では全くなく、逆にシナプス回路８の寄生容量等を考慮にいれて積和演算の精度を向上させることも可能である。
【０１６０】
いずれにせよ本技術に係るアナログ回路３（積和演算装置）では、正電荷出力線７ａの電位（キャパシタ１３ａに保持された電圧）Ｖ+、及び負電荷出力線７ｂの電位（キャパシタ１３ｂに保持された電圧）Ｖ-に基づいて、積和演算の結果を得ることが可能である。
【０１６１】
［ＴＡＣＴ方式のアナログ回路］
図１０は、ＴＡＣＴ方式のアナログ回路３の一例を示す模式的な回路図である。複数の入力信号線６には、入力信号ｉｎ1〜ｉｎ6として、信号値ｘiに応じたタイミングでパルス信号（ＴＡＣＴ信号）が入力される。
【０１６２】
ここでは、図２Ｂに例示する、入力値に応じたタイミングに立ち上がりＯＮレベルが維持される継続的なパルス信号が入力される。このパルス信号は、入力期間Ｔ内において、入力期間Ｔに対するＯＮ時間の長さがに入力値に対応している。以下、入力期間Ｔ内におけるＯＮ時間の長さを、入力期間Ｔにおけるパルス幅と記載する場合がある。
【０１６３】
入力期間Ｔが経過したタイミングでは、キャパシタ１３ａに蓄積された電荷は、正の荷重値ｗi+との乗算値に対応する正荷重電荷の総和σ+となる。また同様に、キャパシタ１３ｂに蓄積された電荷は、負の荷重値ｗi-との乗算値に対応する負荷重電荷の総和σ-となる。
【０１６４】
入力期間Ｔの終了後にも電気信号のＯＮレベルが維持されるので、キャパシタ１３ａ及びキャパシタ１３ｂに電荷が蓄積される。そしてキャパシタ１３ａにより保持される電圧が閾値θより大きくなるタイミングに基づいて、正荷重電荷の積和結果を表す積和信号（ＰＷＭ信号）が生成される。
【０１６５】
またキャパシタ１３ｂにより保持される電圧が閾値θより大きくなるタイミングに基づいて、負荷重電荷の積和結果を表す積和信号（ＰＷＭ信号）が生成される。これら正負の積和信号に基づいて、全体の積和結果を表す積和信号を生成することが可能である。
【０１６６】
ここでは発明者は、正電荷出力線７ａの電位Ｖ+、及び負電荷出力線７ｂの電位Ｖ-に関連するパラメータとして、正電荷出力線７ａ及び負電荷出力線７ｂの時定数について考察した。すなわち出力線７の時定数について考察した。その結果、以下に説明するように、出力線７について、複数の入力信号線６との間に配置される抵抗器１７の数にかかわらず、時定数を一定にする構成を見出した。
【０１６７】
まず、キャパシタ１３ａ及び１３ｂは、出力線７ａ及び７ｂに発生する寄生容量（図示省略）も機能的に含んでいるものとする。この場合、キャパシタ１３ａ及び１３ｂが取り得る容量の最小値は出力線７に発生する寄生容量となる。例えばキャパシタ１３が設けられない場合でも、出力線７ａ及び７ｂに発生する寄生容量に基づいて電荷は蓄積され、閾値判定に基づいて積和信号を生成することが可能である。このことは、図８等に例示するＰＷＭ方式のアナログ回路３でも同様である。
【０１６８】
出力線７の時定数は、時間とともに逐次入力される入力信号数と、出力線７に信号を伝達できる状態の抵抗器１７の数（ＯＮ抵抗）により逐次変化する。ここで入力期間Ｔの終了時における時定数に着目する。本実施形態に係るＴＡＣＴ方式のアナログ回路３では、入力期間Ｔの終了時には、全ての入力信号線６に対して信号が入力される。従って、入力期間Ｔの終了時における入力信号数は最大値となり、一定の値となる。この結果、入力期間Ｔの終了時における時定数は、ＯＮ抵抗の数により逐次変化することになる。
【０１６９】
ここで、抵抗器１７の抵抗値を同じ抵抗値Ｒとする。すなわちバイナリコネクトの構成を採用する。また各シナプス回路８の寄生容量が一定の容量Ｃとなるように設計する。１つの出力線７に対して抵抗器１７は並列に接続されるので、Ｎ個の抵抗器１７が接続される（ＯＮ抵抗がＮ個となる）場合は、合成抵抗はＲ／Ｎとなる。一方、シナプス回路８は抵抗器１７の数と同じＮ個となるので、合成容量はＮＣとなる。
【０１７０】
例えば、キャパシタ１３を設けることなく、各シナプス回路８の寄生容量に基づいて積和信号を生成する。この場合、抵抗器１７の数（ＯＮ抵抗の数）にかからわず、合成抵抗×合成容量の値は、ＲＣとなる。従って、入力期間Ｔの終了時における出力線７の時定数は、抵抗器１７の数にかかわらず、同じＲＣとなる。
【０１７１】
キャパシタ１３を設置する場合、各キャパシタ１３の容量を、所定の定数Ｃ0を抵抗器１７の数（ＯＮ抵抗の数）だけ乗算した値（抵抗器１７の数×Ｃ0）に設定する。これにより時定数は、Ｒ／Ｎ×（ＮＣ＋ＮＣ0）＝Ｒ×（Ｃ＋Ｃ0）となり、抵抗器１７の数にかかわらず一定となる。このように抵抗器１７の数にかかわらず、時定数を一定にすることが可能である。
【０１７２】
従って、入力期間Ｔの終了時における各出力線７の電位Ｖは、以下の式により近似することが可能である。
【０１７３】
【数１３】
2020126427.tif 000015
【０１７４】
図１１は、入力期間Ｔの終了時における各出力線７の電位Ｖについて説明するための模式的なグラフである。（数１３）式及び図１１を参照して、入力期間Ｔの終了時における各出力線７の電位Ｖについて説明する。なお図１１のグラフ中の曲線は、（数１３）式に対応する曲線である。
【０１７５】
「Ｖｃ」は、定数であり、時定数以上の時間が経過した後の電位の収束値に応じた値となる。
「ｔave」は、各入力信号線６に入力されるパルス信号の、入力期間Ｔにおけるパルス幅の平均である。
【０１７６】
図１１に示すように、（数１３）式に対応する曲線に基づいて、入力期間Ｔと閾値θとを定める。すなわち（数１３）の「ｔave」に入力期間Ｔを代入した場合の電位Ｖを、閾値θとする。これにより全ての入力信号線６に、入力期間Ｔにおけるパルス幅が最大となる最大パルスが入力された場合には、入力期間Ｔの終了タイミング（出力期間Ｔの開始タイミング）で、出力線７の電位が閾値を超える。
【０１７７】
一方、全ての入力信号線６に、入力期間Ｔにおけるパルス幅が０となるパルスが入力された場合には、出力期間Ｔの終了タイミングで、出力線７の電位が閾値を超える。この結果、出力期間Ｔ内にて、積和信号を高い分解能で精度よく算出することが可能となる。すなわち閾値θを、入力期間Ｔの長さに基づいて設定することで、有利な効果を発揮することが可能となる。
【０１７８】
図１１に示すように、閾値θにより、キャパシタ１３ａ及び１３ｂの各々に対して閾値判定を実行する。これにより、各パルス信号の入力期間Ｔにおけるパルス幅の平均である「ｔave」をパルス幅「τn 」とする積和信号「Ｓn（ｔ）」を精度よく生成して出力することが可能となる。なお各出力線７の電荷の変化が、図１１に示す曲線に沿って行われるとは限らない。少なくとも、入力期間Ｔの終了時における各出力線７の電位Ｖと、積和信号「Ｓn（ｔ）」のパルス幅「τn 」について、（数１３）式にて近似することが可能であることが見出された。
【０１７９】
各アナログ回路３において、入力信号線６と正電荷出力線７ａとを接続する抵抗器１７の数（すなわち正荷重乗算部の数）、及び入力信号線６と負電荷出力線７ｂとを接続する抵抗器１７の数（すなわち負重乗算部の数）をどのように組み合わせたとしても、正電荷出力線７ａの電位Ｖ+、及び負電荷出力線７ｂの電位Ｖ-について、図１１に説明した積和演算が実現される。
【０１８０】
従って、図７に例示するのと同様に、積和信号Ｓn+（ｔ）のパルス幅τn+、及び積和信号Ｓn-（ｔ）のパルス幅τn-に基づいて、全体の積和結果を表す積和信号「Ｓn（ｔ）」を算出することが可能である。
【０１８１】
もちろんＴＡＣＴ方式のアナログ回路３として、他の構成や他の清和演算が実行されてもよい。いずれにせよ正電荷出力線７ａの電位（キャパシタ１３ａに保持された電圧）Ｖ+、及び負電荷出力線７ｂの電位（キャパシタ１３ｂに保持された電圧）Ｖ-に基づいて、積和演算の結果を得ることが可能である。
【０１８２】
ＰＷＭ方式のアナログ回路３、及びＴＡＣＴ方式のアナログ回路３のいずれにおいても、ニューロン回路９は、正荷重乗算部により生成された正荷重電荷、又は負荷重乗算部により生成された負荷重電荷の少なくとも一方を蓄積する蓄積部１１を有し、蓄積部１１により保持される電圧に対して所定の閾値により閾値判定を実行することで、乗算値の和を表す積和信号を出力することが可能である。
【０１８３】
また蓄積部１１は、正荷重乗算部により生成された正荷重電荷を蓄積可能な正電荷蓄積部と、負荷重乗算部により生成された前記負荷重電荷を蓄積可能な負電荷蓄積部とを有する。そしてニューロン回路９は、正電荷蓄積部、及び負電荷蓄積部の各々に対して、所定の閾値により閾値判定を実行することで、積和信号を出力することが可能である。なお所定の閾値は、前記入力期間の長さに基づいて設定されてもよい。
【０１８４】
ここで発明者は、積和演算の結果として出力される積和信号「Ｓn（ｔ）」と、熱等に起因するノイズ（以下、単に熱ノイズと記載する）との関係について考察した。ＰＷＭ方式の時間軸アナログ積和演算、及びＴＡＣＴ方式の時間軸アナログ積和演算では、入力値が時間情報として入力期間Ｔを基準として正規化される。
【０１８５】
例えばＰＷＭ方式では、パルス幅τiと入力期間Ｔとのデューティ比Ｒiを用いて、入力値が規格される。ＴＡＣＴ方式では、入力期間Ｔ内の所定のタイミングにて入力値が規格化される。例えば図２Ｂに示すパルス信号が用いられる場合には、入力期間Ｔにおけるパルス幅を用いて、入力値が規格化される。
【０１８６】
また積和演算の結果に対応する出力線７の電位Ｖは、閾値θを基準として規格化される。すなわち入力される情報量にかかわらず、積和演算の結果は閾値以下の一定の電荷量に規格化される。従って、入力される情報量にかかわらず積和演算の結果は縮小されるため、演算精度及び演算結果の検出精度について、考察の余地が残っている。
【０１８７】
例えば図７にて例示した全体の積和結果を表す積和信号「Ｓn（ｔ）」の検出について、熱ノイズのノイズレベルが検出の限界を制限している。すなわち熱ノイズ以下の出力はノイズ埋没として自動的に棄却されており、積和演算の精度の低下が懸念されている。一方、演算装置１００に含まれる複数のアナログ回路３から出力される積和演算値の最小値が、どの程度熱ノイズに埋没するか定量的に予測するのは、現状難しい。
【０１８８】
発明者は、ＰＷＭ方式の時間軸アナログ積和演算、及びＴＡＣＴ方式の時間軸アナログ積和演算について、入力時間Ｔを制御することに着目した。例えば図５〜図９を参照して説明したＰＷＭ方式の時間軸アナログ積和演算において、入力時間Ｔを長くする。説明を分かりやすくするために、例えば入力時間Ｔを１．２倍の長さにしたとする。
【０１８９】
入力信号線６に入力されるＰＷＭ方式のパルス信号は、パルス幅τiと入力期間Ｔとのデューティ比Ｒiに入力値が対応しているので、パルス幅τiも１．２倍に拡張される。これにより、正電荷出力線７ａの電位（キャパシタ１３ａに保持された電圧）Ｖ+、及び負電荷出力線７ｂの電位（キャパシタ１３ｂに保持された電圧）Ｖ-も高くなる。
【０１９０】
これにより図７に例示する正荷重電荷の積和結果を表す積和信号「Ｓn+（ｔ）」のパルス幅「τn+」、及び負荷重電荷の積和結果を表す積和信号を「Ｓn-（ｔ）」のパルス幅「τn-」も１．２倍に拡張される。この結果、全体の積和結果を表す積和信号「Ｓn（ｔ）」のパルス幅「τn」も１．２倍に拡張される。なお閾値θは、例えばα＝θ／Ｔが成り立つように設定される。
【０１９１】
また図１０及び図１１を参照して説明したＴＡＣＴ方式の時間軸アナログ積和演算において、例えば入力時間を１．２倍の長さにしたとする。そうすると、入力信号線６に入力されるＴＡＣＴ方式のパルス信号の、入力期間Ｔにおけるパルス幅が１．２倍に拡張される。これにより、正電荷出力線７ａの電位（キャパシタ１３ａに保持された電圧）Ｖ+、及び負電荷出力線７ｂの電位（キャパシタ１３ｂに保持された電圧）Ｖ-も高くなる。
【０１９２】
これにより図１１に示す各パルス信号の入力期間Ｔにおけるパルス幅の平均である「ｔave」が１．２倍に拡張される。この結果、正荷重電荷の積和結果を表す積和信号「Ｓn+（ｔ）」のパルス幅「τn+」、及び負荷重電荷の積和結果を表す積和信号を「Ｓn-（ｔ）」のパルス幅「τn-」も１．２倍に拡張される。この結果、全体の積和結果を表す積和信号「Ｓn（ｔ）」のパルス幅「τn」も１．２倍に拡張される。なお閾値θは、例えば（数１３）式に対応する曲線に基づいて、入力期間Ｔに応じて定められる。
【０１９３】
このように、ＰＷＭ方式の時間軸アナログ積和演算、及びＴＡＣＴ方式の時間軸アナログ積和演算において、入力期間Ｔの長さを拡張し、それに応じて入力値に応じたパルス信号のＯＮ時間の長さも拡張する。また閾値θは、入力期間Ｔの長さに基づいて適宜設定する。
【０１９４】
これにより、正電荷出力線７ａの電位（キャパシタ１３ａに保持された電圧）Ｖ+、及び負電荷出力線７ｂの電位（キャパシタ１３ｂに保持された電圧）Ｖ-を高くすることが可能となる。この結果、全体の積和結果を表す積和信号「Ｓn（ｔ）」の値（パルス幅「τn」）を拡張することが可能となる。これにより、ノイズ埋没数を低減させることが可能となり、積和演算結果を精度よく検出することが可能となる。
【０１９５】
一方で、入力期間Ｔを長くすると、消費電力や処理時間の増加の原因となってしまう可能性がある。発明者は、消費電力や処理時間を抑えつつ、積和演算の結果の検出精度を向させるためにさらに検討を重ね、以下に説明する技術を新たに考案した。
【０１９６】
図１２は、時間軸アナログ積和演算に関するシミュレーションについて説明するための、演算装置の構成例を示す模式図である。例えば、図１０に例示するようなＴＡＣＴ方式のアナログ回路３が複数並べられた演算装置１００を用いて、以下の条件にて、シミュレーションを実行する。
【０１９７】
入力数…５００
入力信号の値…中間値を平均とする正規分布（分散は固定）により規定
入力信号の配置…試行ごとに乱数により設定
荷重…正負２値
正荷重比率…５０％を平均とする正規分布（分散は固定）により規定
荷重の配置…試行ごとに乱数により設定
積和演算値…絶対値で算出
【０１９８】
この条件について説明する。入力信号の値は、入力期間Ｔ／２のタイミングで入力されるパルス（中間値）を平均とする正規分布により規定される（分散は所定の固定値）。すなわちこれらの分布に従う入力値に応じたパルス信号が、５００個の入力信号線６に入力される。
【０１９９】
正規分布に従う５００個の入力値に応じたパルス信号の各々が、どの入力信号線６に入力されるかは、試行ごとに乱数により設定される。
【０２００】
荷重として、同じ抵抗値を有する抵抗器１７が、各アナログ回路３において、正側（入力信号線６と正電荷出力線７ａとの間）、又は負側（入力信号線６と正電荷出力線７ｂとの間）に接続される。
【０２０１】
抵抗器１７が正側に接続されると、正荷重乗算部として機能するシナプス回路８ａが構成される。抵抗器１７が負側に接続されると、正荷重乗算部として機能するシナプス回路８ｂが構成される。以下、シナプス回路８ａ及び８ｂを、正荷重乗算部８ａ及び負荷重乗算部８ｂと記載する場合がある。
【０２０２】
正荷重比率は、各アナログ回路３における、荷重値の絶対値の総和に対する正の荷重値の総和の比率である。このシミュレーションでは、バイナリコネクトの構成が採用されている。従って、正荷重比率は、抵抗器１７の総数（５００個）に対する正側に接続される抵抗器１７の数の比率となる。この正荷重比率は、複数のシナプス回路８の数に対する正荷重乗算部８ａの数の比率とも言える。
【０２０３】
例えば全ての入力信号線６と正電荷出力線７ａとの間に抵抗器１７が接続される場合、すなわち全ての乗算部８が正荷重乗算部８ａとなる場合には、正荷重比率は１００％となる。全ての入力信号線６と負電荷出力線７ｂとの間に抵抗器１７が接続される場合、すなわち全ての乗算部８が負荷重乗算部８ｂとなる場合には、正荷重比率は０％となる。
【０２０４】
入力信号線６と正電荷出力線７ａとの間に接続される抵抗器１７の数と、入力信号線６と負電荷出力線７ｂとの間に接続される抵抗器１７の数とが同数である場合、正荷重比率は５０％となる。すなわち正荷重乗算部８ａの数と、負荷重乗算部８ｂの数とが同数である場合、正荷重比率は５０％となる。
【０２０５】
すなわち演算装置１００において、複数の乗算部８は、正荷重乗算部８ａ、又は負荷重乗算部８ｂの少なくとも一方を含み、荷重値の絶対値の総和に対する正の荷重値の総和の比率である正荷重比率が０％から１００％までの間のいずれかの比率となるように構成されている。またニューロン回路９は、正荷重乗算部８ａにより生成された正荷重電荷、又は負荷重乗算部８ｂにより生成された負荷重電荷の少なくとも一方を蓄積することで、積和信号を出力する。
【０２０６】
本シミュレーションでは、複数のアナログ回路３の正荷重比率の分布が、５０％を平均とする正規分布により規定される（分散は所定の固定値）。すなわち正荷重比率が５０％となるアナログ回路３が最も多く存在することになる。
【０２０７】
なお各アナログ回路３における、荷重値の絶対値の総和に対する負の荷重値の総和の比率を、負荷重比率とする。また各アナログ回路３における、正の荷重値の総和と、負の荷重値の総和のと比率を、正負荷重比率とする。本開示では、正荷重比率、負荷重比率、及び正負荷重比率は、互いに同等のパラメータと見做すことが可能である。
【０２０８】
正荷重比率が定められたアナログ回路３において、抵抗器１７が配置される位置は、試行ごとに乱数により設定される。例えは便宜的に、図１２に示す演算装置１００の入力数を８と見做す。中央に図示されているアナログ回路３の正荷重比率は５０％である。すなわち正側と負側とにそれぞれ４つの抵抗器１７が接続される。これら正側の４つの抵抗器１７の位置、負側の４つの抵抗器１７の位置は、試行ごとに乱数により設定される。このことは、正荷重乗算部８ａの位置、及び負荷重乗算部８ｂの位置が、乱数により設定されることに相当する。
【０２０９】
積和演算値は絶対値で算出され、例えば図７に例示する全体の積和結果を表す積和信号を「Ｓn（ｔ）」のパルス幅「τn」に相当する。
【０２１０】
このような条件にてシミュレーションを複数回試行した。その結果、積和演算値の平均値、中央値、最大値については、ある範囲に含まれる傾向が見受けられた。すなわち積和演算値の平均値、中央値、最大値については、予測可能な範囲を見出すことが可能であった。一方、積和演算値の最小値については、試行ごとにばらつきが見受けられ、予測が困難であった。
【０２１１】
ここでは発明者は、複数のアナログ回路３の正荷重比率の分布に着目した。そして、シミュレーションの条件である正荷重比率について、正規分布の平均は５０％で固定し、分散を変動させて複数回シミュレーションを試行した。その結果、正荷重比率の分布と、積和演算値の最小値との間に依存性があることを新たに見出した。
【０２１２】
具体的には、正荷重比率の正規分布の分散が小さくなるほど、積和演算値の最小値が小さくなる傾向が見受けられた。逆に言えば、正荷重比率の正規分布が大きくなるほど、積和演算値の最小値が大きくなる傾向が見受けられた。また正荷重比率の正規分布の平均が５０％に近くなるほど、積和演算値の最小値が小さくなる傾向も見受けられた。
【０２１３】
例えば、正荷重比率が５０％であり、正荷重の総和（抵抗器の数）と負荷重の総和（抵抗器の数）とが等しいとする。この場合、正荷重乗算部８ａに入力されるパルス信号の入力期間Ｔにおけるパルス幅の平均と、負荷重乗算部８ｂに入力されるパルス信号の入力期間Ｔにおけるパルス幅の平均との差が、積和演算値の最小値に関連するパラメータとなる。
【０２１４】
おそらく、互いに同数となる入力信号線６（本シミュレーションで２５０個ずつ）にランダムにパルス信号を入力した場合、入力期間Ｔにおけるパルス幅の平均は、互いに近い値となることが多いと考えられる。従って、正荷重比率の正規分布の平均が５０％に近くなるほど、積和演算値の最小値が小さくなる傾向が表れるのではないかと考えらえる。もちろんこの考えは、新たに見出された傾向についての推論である。
【０２１５】
また、この傾向は、バイナリコネクトとは異なる多値の荷重が設定される場合にも、見受けられると考えられる。正荷重の総和と負荷重の総和とが互いに近い値になるほど、積和演算値は小さくなると考えられる。
【０２１６】
このような傾向をもとに、積和演算装値の最小値を、正荷重比率により大まかに予測することが可能となる。そして、消費電力を抑えつつ、熱ノイズの埋没数を効率よく低減させることが可能となる。
【０２１７】
具体的には、複数のアナログ回路３の正荷重比率が５０％の付近に多く分布するほど、入力期間Ｔを長く設定する。これにより、ノイズ埋没数を低減させることが可能となり、積和演算結果を高精度に検出することが可能となる。また必要以上に入力期間Ｔを長くしてしまうことを防ぐことが可能となる。すなわち適正に入力期間Ｔを調整することが可能となるので、消費電力及び処理時間を抑えつつ、積和信号のレベルを増加させることが可能となる。
【０２１８】
例えばニューラルネットワーク等を構築する場合には、サーバ装置等のコンピュータにの学習処理により、入力数、出力数、荷重値、荷重比等のパラメータが決定される場合が多い。決定されたパラメータに基づいて、アナログ回路３を適宜設計することで、所望の積和演算が可能な演算装置１００が実現される。
【０２１９】
例えば、アナログ回路３の設計時に、決定されているパラメータに基づいて、複数のアナログ回路３の正荷重比率の分布に基づいて、入力時間Ｔを設定する。例えば、複数のアナログ回路３の正荷重比率の平均又は分散の少なくとも一方に基づいて、入力期間Ｔを設定する。
【０２２０】
具体的には、複数のアナログ回路３の正荷重比率が５０％の付近に多く分布するほど、入力時間Ｔを長く設定する。例えば、複数のアナログ回路３の正荷重比率の平均が５０％に近いほど、入力時間Ｔを長く設定する。また複数のアナログ回路３の正荷重比率の平均が５０％に近い場合、正荷重比率の分散が小さいほど、入力期間Ｔを長く設定する。このような設定方法を実行することで、消費電力を抑えつつ、各アナログ回路３から出力される積和信号のレベルを増加させることが可能となる。この結果、演算結果を精度よく検出することが可能となる。
【０２２１】
［ノイズ埋没判定回路］
図１３は、ノイズ埋没判定回路の構成例を示す模式図である。例えば、演算装置１００内に、ニューロン回路９から出力される積和信号がノイズレベルよりも小さくなる可能性の高いアナログ回路３の数を判定するためのノイズ埋没判定回路４０を設ける。そして、複数のアナログ回路３のうち、ニューロン回路９から出力される積和信号がノイズレベルよりも小さくなる可能性の高いアナログ回路３の数に基づいて、入力期間Ｔが設定されてよい。
【０２２２】
ここでは、図８に示す差動増幅回路２３までの構成からなるアナログ回路３が用いられる場合を例に挙げる。すなわち図１３に示すニューロン回路９は、図８に示すスイッチ１６ａ及び１６ｂ、キャパシタ１３ａ及び１３ｂ、及び差動増幅回路２３を有し、正荷重電荷の総量と負荷重電荷の総量との差に対応する電荷（Ｖ+−Ｖ-）を、積和信号として出力するとする。
【０２２３】
すなわち本技術において、乗算値の和を表す積和信号は、図７に例示する積和信号「Ｓn（ｔ）」（パルス信号）のみならず、正荷重電荷の総量と負荷重電荷の総量との差に対応する電荷（Ｖ+−Ｖ-）に基づいた電荷信号（電圧信号）も含まれる。
【０２２４】
またバイナリコネクトの構成が採用されているとする。すなわち抵抗器１７として、同じ抵抗値を有する抵抗器が用いられるとする。
【０２２５】
図１３に示すように、ノイズ埋没判定回路４０は、正電荷出力線４１ａと、負電荷出力線４１ｂと、複数のシナプス回路４２と、ニューロン回路４３と、複数のコンパレータ４４とを有する。
【０２２６】
正電荷出力線４１ａ、及び負電荷出力線４１ｂは、複数のアナログ回路３と同様に、複数の入力信号線６に対して直交するように設けられる。図１３では、複数のアナログ回路３と、ノイズ埋没判定回路４０とに、同じテスト信号が入力される旨が表現されている。実際の構成としては、共通の入力信号線６に対して、複数のアナログ回路３と、ノイズ埋没判定回路４０（複数のコンパレータ４４を除く部分）とが、並列となるように構成される。これに限定されず、ノイズ埋没判定回路４０が、複数のアナログ回路３とは接続されずに構成されてもよい。
【０２２７】
複数のシナプス回路４２は、複数の入力信号線６に対応してそれぞれ設けられる。複数のシナプス回路４２の各々は、複数の入力信号線６のうちの対応する入力信号線６と正電荷出力線４１ａとの間、及び数の入力信号線６のうちの対応する入力信号線６と負電荷出力線４１ｂとの間に接続される共有の抵抗器４５を含む。この抵抗器４５は、非線形特性を有してもよく、電流の逆流防止機能を有してもよい。抵抗器４５の抵抗値は、アナログ回路３に設けられる抵抗器１７の抵抗値と同じである。
【０２２８】
従って、各シナプス回路４２により、正電荷出力線４１ａに乗算値（ｗi+・ｘi ）対応する電荷が生成されて出力される。また正電荷出力線４１ｂに乗算値（｜ｗi-｜・ｘi ）対応する電荷が生成されて出力される。すなわちノイズ埋没判定回路４０では、各シナプス回路４２から、乗算値（ｗi+・ｘi ）対応する電荷と、乗算値（｜ｗi-｜・ｘi ）対応する電荷とがともに出力される。本実施形態において、複数のシナプス回路４２は、複数の判定用乗算部として機能する。
【０２２９】
ニューロン回路４３は、アナログ回路３のニューロン回路９と同様の構成を有する。すなわちニューロン回路４３は、、図８に示すスイッチ１６ａ及び１６ｂ、キャパシタ１３ａ及び１３ｂ、及び差動増幅回路２３を有し、正荷重電荷の総量と負荷重電荷の総量との差に対応する電荷（Ｖ+−Ｖ-）を、判定用信号として用いられる。
【０２３０】
複数のコンパレータ４４は、複数のアナログ回路３に対応してそれぞれ設けられる。コンパレータ４４の一方の端子は、対応するアナログ回路３の出力に接続される。コンパレータ４４の他の端子には、ノイズ埋没判定回路４０の出力が接続される。
【０２３１】
本実施形態では、各アナログ回路３から積和信号として出力される電位が、ノイズ埋没判定回路４０から判定用信号として出力される電位よりも大きくなる場合に、コンパレータ４４から信号が出力される。もちろんこれに限定されず、ノイズ埋没判定回路４０から判定用信号として出力される電位が、各アナログ回路３から積和信号として出力される電位よりも大きくなる場合に、コンパレータ４４から信号が出力されてもよい。
【０２３２】
本実施形態において、複数のコンパレータ４４は、複数のアナログ回路３から出力される複数の積和信号のうち、判定用信号よりも小さい積和信号の数を判定するための判定部として機能する。本実施形態では、アナログ回路３の総数から、信号を出力したコンパレータ４４の数を差し引いた数が、判定用信号よりも小さい積和信号の数となる。
【０２３３】
図１４は、テスト信号の一例を示す模式図である。ノイズ埋没数の判定が実行される際には、複数の入力信号線６に、同じ入力値に対応する電気信号が入力される。図１４に示す例では、テスト信号として、パルス幅がＴ／２となるＰＷＭ信号が用いられる。これに限定されず、同じ入力値に対応する任意の電気信号が用いられてよい。
【０２３４】
複数の入力信号線６にテスト信号が入力されると、各アナログ回路３からは、積和信号として電荷（Ｖ+−Ｖ-）が出力される。ノイズ埋没判定回路４０からは、判定用信号として（Ｖ+−Ｖ-）が出力される。
【０２３５】
図１３に示すように、ノイズ埋没判定回路４０では、各シナプス回路４２にて正側及び負側の両方に同じ抵抗器４５が接続される。従って、正荷重電荷の総量と負荷重電荷の総量との差に対応する電荷（Ｖ+−Ｖ-）は、ノイズ成分と見做すことが可能となる。従って判定用信号の大きさは、ノイズレベルと見做すことが可能である。
【０２３６】
複数のコンパレータ４４により、積和信号がノイズレベルよりも小さくなるアナログ回路３の数が判定される。この複数の入力信号線６にテスト信号が入力された際の、複数のコンパレータ４４により判定された数に基づいて、複数のアナログ回路３のうち、ニューロン回路９から出力される積和信号がノイズレベルよりも小さくなる可能性の高いアナログ回路３の数を判定することが可能である。
【０２３７】
ノイズ埋没判定回路４０は、各アナログ回路３の出力が、検出限界以下となる出力数「Ｍｘ」と検出可能な回路ともいえる。複数のアナログ回路３の総数「Ｍ」に対する、出力数「Ｍｘ」の比率により、入力期間Ｔの長さを制御する。例えば総数「Ｍ」に対する出力数「Ｍｘ」の比率が、所定の閾値よりも大きい場合には、入力期間Ｔを長く設定する。これにより、ノイズ埋没数を低減させることが可能となり、積和演算結果を精度よく検出することが可能となる。
【０２３８】
なお、複数のコンパレータ４４からの出力に基づいて、自動的に入力期間Ｔ及び閾値θが設定可能な回路が構成されてもよい。あるいは、演算装置１００の設計時に、オペレータ等により、入力期間Ｔ及び閾値θが設定されてもよい。
【０２３９】
積和信号として、図７に例示するパルス信号が出力される場合にも、ノイズ埋没判定回路４０は実現可能である。各アナログ回路３から積和信号として出力されるパルス信号のパルス幅と、ノイズ埋没判定回路４０により判定用信号として出力されるパルス信号のパルス幅を比較する。これにより、複数のアナログ回路３のうち、ニューロン回路９から出力される積和信号がノイズレベルよりも小さくなる可能性の高いアナログ回路３の数を判定することが可能である。
【０２４０】
また、バイナリコネクトの構成が採用されない場合にも、ノイズ埋没判定回路４０は実現可能である。例えば、ノイズ埋没判定回路４０の判定用乗算部において、互いに同じ値となる正荷重及び負荷重を両方構成させる。これにより、ノイズ成分に対応する判定用信号を出力可能なノイズ埋没判定回路４０を実現することが可能となる。
【０２４１】
図１５は、ニューラルネットワークの構成例を示す模式図である。例えば、図１５に示すように、複数の積和演算、複数の正規化処理、及び複数のプーリング処理を実行することで、ニューラルネットワークが実現される。
【０２４２】
ここで積和演算は、複数のアナログ回路３を含む演算装置１００による、複数の積和結果の出力に相当する。正規化処理は、次段の積和演算の入力のために、入力信号を正規化する処理である。プーリング処理は、次段の積和演算の入力数に合わせて、入力信号の数を減らす処理である。正規化処理及びプーリング処理により、処理の簡素化や処理時間の短縮を図ることが可能となる。
【０２４３】
図１２に示すように、各々の積和演算が実行される際には、複数のアナログ回路３の正荷重比率の分布や、ノイズ埋没数の判定結果に基づいて、入力期間Ｔ及び閾値θを最適化することが可能である。この結果、非常に高い精度で、積和演算結果を検出することが可能となる。
【０２４４】
なお図１２では、積和演算１〜８をそれぞれ実行する演算装置１００が、共通の時定数にて設計された複数のアナログ回路３により構成されている場合が図示されている。従って、各演算装置１００において、共通の時定数曲線に基づいて、入力期間Ｔ及び閾値θが設定されている。図１２では、各演算装置１００にて、入力期間Ｔが異なるように設定されている。これに限定されず、共通の入力期間Ｔ及び閾値θが採用されてもよい。
【０２４５】
もちろん、他の構成を有するアナログ回路３により演算装置１００が構成され、積和演算が実行されてもよい。この場合でも、複数のアナログ回路３の正荷重比率の分布や、ノイズ埋没数の判定結果に基づいて、入力期間Ｔ及び閾値θを適正設定することで、演算結果を精度よく検出することが可能となる。
【０２４６】
以上、本実施形態に係る演算装置１００では、複数のアナログ回路３の正荷重比率の分布に基づいて、入力値に応じた電気信号の入力期間の長さが設定される。これにより、消費電力を抑えつつ、各アナログ回路３から出力される積和信号のレベルを増加させることが可能となる。この結果、演算結果を精度よく検出することが可能となる。
【０２４７】
＜その他の実施形態＞
本技術は、以上説明した実施形態に限定されず、他の種々の実施形態を実現することができる。
【０２４８】
上記では、蓄積部により保持された電圧が閾値を過ぎて大きくなるタイミングに基づいて、積和信号を出力する場合を例に挙げた。しかしながら、蓄積部により保持された電圧が閾値を過ぎて小さくなるタイミングに基づいて、積和信号を出力する構成が採用されてもよい。例えば、蓄積部として機能するキャパシタの電圧が、所定のプリセット値となるまで予め充電される。そして信号値と荷重値との乗算値に対応する電荷の和が蓄積された後に、キャパシタを所定の速度で放電する。このような場合、キャパシタにより保持された電圧が閾値を過ぎて小さくなるタイミングに基づいて、積和信号を出力することが可能である。もちろんこのような構成に限定される訳ではない。なお本開示では、キャシタの放電は、キャシタに負の電荷を充電することに含まれる。
【０２４９】
上記では、１対の出力線が用いられる場合を説明した。これに限定されず、３以上の出力線が設けられてもよい。すなわち１以上の任意の数の出力線が用いられる場合でも、上記で説明した本技術は適用可能である。例えば乗算部は、対応する入力線と、１以上の出力線のいずれか１つとの間に接続され荷重値を規定する抵抗器を含み、抵抗器が接続された出力線に乗算値に対応する電荷を出力する。もちろんこれに限定される訳ではない。
【０２５０】
各図面を参照して説明した演算装置、積和演算装置、アナログ回路、シナプス回路、ニューロン回路等の各構成、積和信号の生成方法等はあくまで一実施形態であり、本技術の趣旨を逸脱しない範囲で、任意に変形可能である。すなわち本技術を実施するための他の任意の構成や方法等が採用されてよい。
【０２５１】
本開示において、「同じ」「等しい」「直交」等は、「実質的に同じ」「実質的に等しい」「実質的に直交」等を含む概念とする。例えば「完全に同じ」「完全に等しい」「完全に直交」等を基準とした所定の範囲（例えば±１０％の範囲）に含まれる状態も含まれる。
【０２５２】
以上説明した本技術に係る特徴部分のうち、少なくとも２つの特徴部分を組み合わせることも可能である。すなわち各実施形態で説明した種々の特徴部分は、各実施形態の区別なく、任意に組み合わされてもよい。また上記で記載した種々の効果は、あくまで例示であって限定されるものではなく、また他の効果が発揮されてもよい。
【０２５３】
なお、本技術は以下のような構成も採ることができる。
（１）所定の入力期間内に、入力値に応じた電気信号がそれぞれ入力される複数の入力線と、
各々が、
前記複数の入力線の各々に入力される前記電気信号に基づいて、前記入力値に荷重値を乗算した乗算値に対応する電荷を生成する複数の乗算部と、
前記複数の乗算部の各々により生成された前記乗算値に対応する電荷を蓄積し、前記蓄積された電荷に基づいて、前記乗算値の和を表す積和信号を出力する出力部と
を有し、
前記複数の乗算部は、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は前記入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、前記荷重値の絶対値の総和に対する前記正の荷重値の総和の比率である正荷重比率が０％から１００％までの間のいずれかの比率となるように構成され、
前記出力部は、前記正荷重乗算部により生成された前記正荷重電荷、又は前記負荷重乗算部により生成された前記負荷重電荷の少なくとも一方を蓄積することで、前記積和信号を出力する
複数の積和演算装置と
を具備し、
前記入力期間の長さは、前記複数の積和演算装置の前記正荷重比率の分布に基づいて設定される
演算装置。
（２）（１）に記載の演算装置であって、
前記入力値に応じた電気信号は、前記入力期間に対するＯＮ時間の長さが前記入力値に対応しているパルス信号である
演算装置。
（３）（１）又は（２）に記載の演算装置であって、
前記入力期間の長さは、前記正荷重比率の平均又は分散の少なくとも一方に基づいて設定される
演算装置。
（４）（１）から（３）のうちいずれか１つに記載の演算装置であって、
前記入力期間の長さは、前記正荷重比率が５０％の付近に多く分布するほど、長く設定される
演算装置。
（５）（１）から（４）のうちいずれか１つに記載の演算装置であって、
前記入力期間の長さは、前記正荷重比率の平均が５０％に近いほど、長く設定される
演算装置。
（６）（１）から（５）のうちいずれか１つに記載の演算装置であって、
前記入力期間の長さは、前記正荷重比率の平均が５０％に近い場合、前記正荷重比率の分散が小さいほど、長く設定される
演算装置。
（７）（１）から（６）のうちいずれか１つに記載の演算装置であって、
前記入力期間の長さは、前記複数の積和演算装置のうち前記出力部から出力される前記積和信号がノイズレベルよりも小さくなる可能性の高い積和演算装置の数に基づいて設定される
演算装置。
（８）（７）に記載の演算装置であって、さらに、
前記複数の積和演算装置のうち、前記出力部から出力される前記積和信号がノイズレベルよりも小さくなる可能性の高い積和演算装置の数を判定するための判定回路を具備する
演算装置。    
（９）（８）に記載の演算装置であって、
前記判定回路は、
前記複数の入力線の各々に入力される前記電気信号に基づいて、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷と、前記入力値に絶対値が前記正の荷重値と同じになる負の荷重値を乗算した乗算値に対応する負荷重電荷とをそれぞれ生成する複数の判定用乗算部と、
前記複数の判定用乗算部の各々により生成された前記正荷重電荷の総数、及び前記複数の判定用乗算部の各々により生成された前記負荷重電荷の総数の差に対応する電荷に基づいて、判定用信号を出力する判定用出力部と
前記複数の演算装置から出力される複数の積和信号のうち、前記判定用信号よりも小さい積和信号の数を判定するための判定部と
を有する
演算装置。
（１０）（９）に記載の演算装置であって、
前記出力部から出力される前記積和信号がノイズレベルよりも小さくなる可能性の高い積和演算装置の数は、前記複数の入力線に同じ入力値に対応する電気信号が入力された際の前記判定部により判定された数に基づいて判定される
演算装置。    
（１１）（１）から（１０）のうちいずれか１つに記載の演算装置であって、
前記出力部は、前記正荷重乗算部により生成された前記正荷重電荷、又は前記負荷重乗算部により生成された前記負荷重電荷の少なくとも一方を蓄積する蓄積部を有し、前記蓄積部により保持される電圧に対して所定の閾値により閾値判定を実行することで、前記乗算値の和を表す積和信号を出力する
演算装置。
（１２）（１１）に記載の演算装置であって、
前記蓄積部は、前記正荷重乗算部により生成された前記正荷重電荷を蓄積可能な正電荷蓄積部と、前記負荷重乗算部により生成された前記負荷重電荷を蓄積可能な負電荷蓄積部とを有し、
前記出力部は、前記正電荷蓄積部、及び前記負電荷蓄積部の各々に対して、前記所定の閾値により閾値判定を実行することで、前記積和信号を出力する
演算装置。
（１３）（１１）又は（１２）に記載の演算装置であって、
前記所定の閾値は、前記入力期間の長さに基づいて設定される
演算装置。
（１４）（１）から（１３）のうちいずれか１つに記載の演算装置であって、
前記正の荷重値、及び前記負の荷重値の絶対値は、同じ値で固定されており、
前記正荷重比率は、前記複数の乗算部の数に対する前記正荷重乗算部の数の比率である
演算装置。
（１５）（１）から（１４）のうちいずれか１つに記載の演算装置であって、
前記複数の積和演算装置の各々は、正電荷出力線と、負電荷出力線とを有し、
前記複数の乗算部は、前記複数の入力線に対応して設けられ、
前記正荷重乗算部は、前記複数の入力線のうちの対応する入力線と、前記正電荷出力線との間に接続され前記正の荷重値を規定し非線形特性を有する抵抗器を含み、前記正電荷出力線に前記乗算値に対応する正荷重電荷を出力し、
前記負荷重乗算部は、前記複数の入力線のうちの対応する入力線と、前記負電荷出力線との間に接続され前記負の荷重値を規定し非線形特性を有する抵抗器を含み、前記負電荷出力線に前記乗算値に対応する負荷重電荷を出力する
演算装置。
（１６）（１５）に記載の演算装置であって、
前記正荷重乗算部が有する抵抗器、及び前記負荷重乗算部が有する抵抗器は、同じ抵抗値を有し、
前記正荷重比率は、前記抵抗器の総数に対する前記正荷重乗算部が有する抵抗器の数の比率である
演算装置。
（１７）（８）から（１０）のうちいずれか１つに記載の演算装置であって、
前記判定回路は、正電荷出力線と、負電荷出力線とを有し、
前記複数の判定用乗算部は、前記複数の入力線に対応して設けられ、
前記複数の判定用乗算部の各々は、前記複数の入力線のうちの対応する入力線と前記正電荷出力線との間、及び前記複数の入力線のうちの対応する入力線と前記負電荷出力線との間の各々に接続され非線形特性を有する共通の抵抗器を含む
演算装置。
（１８）（１５）から（１７）のうちいずれか１つに記載の積和演算装置であって、
前記抵抗器は、固定抵抗素子、可変抵抗素子、又はサブスレッショルド領域で動作するＭＯＳトランジスタである
積和演算装置。
（１９）所定の入力期間内に、入力値に応じた電気信号がそれぞれ入力される複数の入力線と、
各々が、
前記複数の入力線の各々に入力される前記電気信号に基づいて、前記入力値に荷重値を乗算した乗算値に対応する電荷を生成する複数の乗算部と、
前記複数の乗算部の各々により生成された前記乗算値に対応する電荷を蓄積し、前記蓄積された電荷に基づいて、前記乗算値の和を表す積和信号を出力する出力部と
を有し、
前記複数の乗算部は、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は前記入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、前記荷重値の絶対値の総和に対する前記正の荷重値の総和の比率である正荷重比率が０％から１００％までの間のいずれかの比率となるように構成され、
前記出力部は、前記正荷重乗算部により生成された前記正荷重電荷、又は前記負荷重乗算部により生成された前記負荷重電荷の少なくとも一方を蓄積することで、前記積和信号を出力する
複数のアナログ回路と
前記複数のアナログ回路を接続して構成されたネットワーク回路と
を具備し、
前記入力期間の長さは、前記複数の積和演算装置の前記正荷重比率の分布に基づいて設定される
積和演算システム。
（２０）各々が、
複数の入力線の各々に入力される入力値に応じた電気信号に基づいて、前記入力値に荷重値を乗算した乗算値に対応する電荷を生成する複数の乗算部と、
前記複数の乗算部の各々により生成された前記乗算値に対応する電荷を蓄積し、前記蓄積された電荷に基づいて、前記乗算値の和を表す積和信号を出力する出力部と
を有し、
前記複数の乗算部は、前記入力値に正の荷重値を乗算した乗算値に対応する正荷重電荷を生成する正荷重乗算部、又は前記入力値に負の荷重値を乗算した乗算値に対応する負荷重電荷を生成する負荷重乗算部の少なくとも一方を含み、前記荷重値の絶対値の総和に対する前記正の荷重値の総和の比率である正荷重比率が０％から１００％までの間のいずれかの比率となるように構成され、
前記出力部は、前記正荷重乗算部により生成された前記正荷重電荷、又は前記負荷重乗算部により生成された前記負荷重電荷の少なくとも一方を蓄積することで、前記積和信号を出力する
複数の積和演算装置の前記正荷重比率の分布に基づいて、前記複数の入力線に前記電気信号を入力する入力期間を設定する
設定方法。
【符号の説明】
【０２５４】
Ｔ…入力期間
θ…閾値
１…信号線
３…アナログ回路
６…入力信号線
７…１対の出力線
７ａ…正電荷出力線
７ｂ…負電荷出力線
８…シナプス回路（乗算部）
８ａ…シナプス回路（正荷重乗算部）
８ｂ…シナプス回路（負荷重乗算部）
９…ニューロン回路
１０…出力信号線
１１…蓄積部
１２…信号出力部
１３…キャパシタ
１７…抵抗器
２０…コンパレータ
２１…信号生成部
２３…差動増幅回路
４０…ノイズ埋没判定回路
４１ａ…ノイズ埋没判定回路の正電荷出力線
４１ｂ…ノイズ埋没判定回路の負電荷出力線
４２…ノイズ埋没判定回路のシナプス回路
４３…ノイズ埋没判定回路のニューロン回路
４４…ノイズ埋没判定回路のコンパレータ
４５…ノイズ埋没判定回路の抵抗器
１００…演算装置
【図１】
2020126427.tif 000016
【図２】
2020126427.tif 000017
【図３】
2020126427.tif 000018
【図４】
2020126427.tif 000019
【図５】
2020126427.tif 000020
【図６】
2020126427.tif 000021
【図７】
2020126427.tif 000022
【図８】
2020126427.tif 000023
【図９】
2020126427.tif 000024
【図１０】
2020126427.tif 000025
【図１１】
2020126427.tif 000026
【図１２】
2020126427.tif 000027
【図１３】
2020126427.tif 000028
【図１４】
2020126427.tif 000029
【図１５】
2020126427.tif 000030