(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-28
(45)【発行日】2024-01-12
(54)【発明の名称】単一のトランジスタ乗算器およびその方法
(51)【国際特許分類】
G06G 7/16 20060101AFI20240104BHJP
G06G 7/60 20060101ALI20240104BHJP
G06N 3/063 20230101ALI20240104BHJP
【FI】
G06G7/16 510
G06G7/60
G06N3/063
(21)【出願番号】P 2020568949
(86)(22)【出願日】2019-03-04
(86)【国際出願番号】 US2019020549
(87)【国際公開番号】W WO2019169388
(87)【国際公開日】2019-09-06
【審査請求日】2022-03-04
(32)【優先日】2019-03-04
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2018-03-02
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520332807
【氏名又は名称】エーアイストーム インコーポレイテッド
【氏名又は名称原語表記】AISTORM,INC.
(74)【代理人】
【識別番号】110000659
【氏名又は名称】弁理士法人広江アソシエイツ特許事務所
(72)【発明者】
【氏名】シー,デビッド
(72)【発明者】
【氏名】ガイテケビッチ,セルゲイ
(72)【発明者】
【氏名】ドラボス,ピーター
(72)【発明者】
【氏名】シブライ,アンドレアス
(72)【発明者】
【氏名】シブライ,エリック
【審査官】白石 圭吾
(56)【参考文献】
【文献】特公昭49-021818(JP,B1)
【文献】特開2010-061428(JP,A)
【文献】米国特許出願公開第2016/0315588(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06G 1/00-99/00
G06N 3/00-99/00
G06F 3/05
G06F 5/01;7/38-7/537;7/57-7/575;7/7
4-7/78
(57)【特許請求の範囲】
【請求項1】
乗算器であって、
Vt比較器閾値を有する比較器として使用される共通ソース構成のMOSFETと、
前記MOSFETのドレイン端子に結合された電流源と、
インバータであって、前記MOSFETの前記ドレイン端子に結合された入力と、電流の大きさが比例する2つの電流をゲートする前記インバータの出力を有する、インバータと、
前記2つの電流のうちの第1の電流を提供する第1の電流源と、
前記2つの電流のうちの第2の電流を提供する第2の電流源と、
前記第1の電流源と前記MOSFETのゲートとに結合された第1の端子、および接地された第2の端子を有する第1のコンデンサと、
第2の電流源に結合された第1の端子、および前記第1の電流源とMOSFETの前記ゲートとに結合された第2の端子を有する第2のコンデンサと、を備え、
前記乗算器が最初にリセットされ、その後、前記MOSFETの前記ゲートが前記MOSFETの閾値Vt未満にプルされ、前記インバータが前記電流をオフにするまでゲート容量を充電する前記第1の電流のみをオンにし、前記Vt比較器閾値に達すると、入力電荷が前記MOSFETの前記ゲートから除去されて、前記Vt比較器閾値未満に前記MOSFETの前記ゲート上の電圧を低下させ、前記Vt比較器閾値未満に低下させることは、前記比較器が前記Vt比較器閾値に達し、かつ前記インバータが前記2つの電流をオフにするまで、前記2つの電流を有効にすることであり、
その後、前記第2のコンデンサが、前記入力電荷の乗算値を保持し、前記乗算値が、前記第2のコンデンサの大きさによって電圧に変換されるか、または後続の段階の電荷入力として使用されるかのいずれか1つである、乗算器。
【請求項2】
前記乗算器に結合されたトランスコンダクタを備え、前記トランスコンダクタが、前記2つの電流のプログラミングを提供する、請求項1に記載の乗算器。
【請求項3】
前記乗算器を前記トランスコンダクタに結合するスイッチを備える、請求項2に記載の乗算器。
【請求項4】
前記トランスコンダクタが、サンプルアンドホールド回路と、2つのバイアス電流源と、を備え、前記2つのバイアス電流源のバイアス電流の差が、乗算器内の前記2つの電流のうちの前記第2の電流として使用され、前記トランスコンダクタへの入力がゼロになる段階で、前記バイアス電流の差をサンプリングする前記サンプルアンドホールド回路を使用して前記第1の電流源から電流が除去される、請求項2に記載の乗算器。
【請求項5】
前記トランスコンダクタが、抵抗器を備え、前記抵抗器が、前記2つの電流の誤差に対して調整される、請求項4に記載の乗算器。
【請求項6】
前記抵抗器が、アナログメモリデバイスである、請求項5に記載の乗算器。
【請求項7】
前記第1のコンデンサに結合された転送ゲートと、
前記MOSFETの前記ゲートと前記第1のコンデンサとに結合されたリセットトランジスタと、を備える、請求項1に記載の乗算器。
【請求項8】
前記転送ゲート上の電荷パケットが、前記乗算器の前記入力電荷の放電を引き起こす、請求項
7に記載の乗算器。
【請求項9】
乗算器であって、
共通ソース構成のMOSFETと、
前記MOSFETのドレイン端子に結合されたMOSFET電流源と、
インバータであって、前記MOSFETの前記ドレイン端子に結合された入力、および電流の大きさが比例する2つの電流をゲートする前記インバータの出力を有する、インバータと、
前記2つの電流のうちの第1の電流を提供する第1の電流源と、
前記2つの電流のうちの第2の電流を提供する第2の電流源と、
前記第1の電流源と前記MOSFETのゲートとに結合された第1の端子、および接地された第2の端子を有する第1のコンデンサと、
前記第2の電流に結合された第1の端子、および前記第1の電流源に結合された第2の端子を有する、第2のコンデンサと、を備え、
前記乗算器が、最初に、前記MOSFETのゲート容量を放電することによってリセットされ、次いで、Vt比較器閾値まで再充電できるようにされた後、前記MOSFETのゲート端子から電荷が除去され、前記ゲート端子上の電圧を前記Vt比較器閾値未満に低下させ、前記Vt比較器閾値が以前のVt比較器閾値に達し、かつ前記インバータが2つの電流をオフにするまで、前記2つの電流を有効にし、次のリセット段階で、前記第2のコンデンサは、乗算された電荷値を保持する、乗算器。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願
本特許出願は、2018年3月2日に出願され、David Schie名義の「SINGLE TRANSISTOR MULTIPLIER」と題する米国仮出願第62/637,507号に関連し、その全体が参照により本明細書に組み込まれる。本特許出願は、米国特許法第119条(e)に基づく利益を主張する。
【0002】
本発明は、一般に、乗算器回路に関し、より具体的には、減少した数のトランジスタを有する乗算器回路に関する。
【背景技術】
【0003】
機械学習は、乗算に大きく依存している。ニューラルネットワーク10内のニューロンは、例えば、
図1に示されるように、膨大な数の接続の各々における乗算器に依存する1対多のアーキテクチャと接続され得る。ニューラルネットワーク10では、円12は入力データを有するニューロンである。線14は、入力データに重み(w)を乗算する乗算器である。その結果は、決定回路または後続の層に供給され得、その出力は、次いで次の層に供給され得る。重み付けされた入力の加算器およびいくつかの場合には決定回路を含有する各ニューロンは、以下の層の多くのニューロンに接続され得るため、重みの数は非常に大きくなり得る。
【0004】
機械学習は、一般に、乗算および累積機能を実行するために大量のトランジスタを必要とするデジタル乗算器に依存している。必要に応じて、乗算されるデジタルワード内の各ビットは、少なくとも2つのトランジスタを必要とし、ビット乗算を実行するゲートは、各々少なくとも4つのトランジスタを必要とする。ビットの移動に関連する追加のトランジスタが考慮されると、ビット数の少ない入力ワードであっても、トランジスタの数は大きくなる可能性がある。さらに、通常、デジタルシステムにおいてローディングおよび乗算動作を実行するのに数サイクルを要し、これはかなりの時間である。
【発明の概要】
【発明が解決しようとする課題】
【0005】
スループットを向上させるために、デジタルアーキテクチャは、複数の乗算を同時に実行できるように複数の並列スレッドを利用し、シストリックアーキテクチャなどのローディングアーキテクチャを利用して、ローディングのオーバーヘッドを最小限に抑えている。それにもかかわらず、マルチスレッドアーキテクチャおよびシストリックアーキテクチャに対応し、問題を並列に実行できるストリームに分解するためには、さらに多くのオーバーヘッドが必要となる。
【0006】
したがって、上記の問題を克服するシステムおよび方法を提供することが望ましいであろう。システムおよび方法は、より少ない数のトランジスタを利用して作成され得る乗算デバイスを提供する。
【課題を解決するための手段】
【0007】
概要
一実施形態によると、乗算器が開示される。乗算器は、Vt比較器閾値と相関する比較器として使用される共通ソース構成のMOSFETを有する。電流源は、MOSFETのドレイン端子に結合される。インバータは、MOSFETのドレイン端子に結合された入力を有する。インバータゲートの出力は、電流の大きさが比例する2つの電流I1とI2をゲートする。第1のコンデンサは、2つの電流のうちの第1の電流I1とMOSFETのゲートとに結合された第1の端子と、接地された第2の端子とを有する。第2のコンデンサは、2つの電流のうちの第2の電流I2に結合された第1の端子、および2つの電流のうちの第1の電流I1とMOSFETの前記ゲートとに結合された第2の端子を有する。乗算器は、I1およびI2のMOSFETを使用することによって最初にリセットされて、第2のコンデンサを放電する。その後、MOSFETゲートはMOSFETの閾値(Vt)未満にプルされ、インバータが電流をオフにするまで、ゲート容量を充電するI1のみをオンにする。Vt比較器閾値に達すると、入力電荷がMOSFETのゲート端子から除去され、ゲート端子上の電圧をVt比較器閾値未満まで低下させる。Vt比較器閾値未満に低下させることは、比較器がVt比較器閾値に達し、かつインバータが2つの電流をオフにするまで、2つの電流I1およびI2を有効にする。この時点で、第2のコンデンサは、電圧に第2のコンデンサの大きさによって電圧に変換されるか、または後続の乗算器で使用されるかのいずれか1つのために使用される電荷の乗算値を保持する。あるいは、電流I1およびI2の両方を使用して、リセット中にVt比較器閾値を求めることができ、次いで、第2のコンデンサの第1の端子で接地するための追加のスイッチ、およびMOSFETのゲートから接地するためのリセットMOSFETによって、第2のコンデンサが放電され得る。
【0008】
第2の実施形態によると、重み付け加算器が開示される。第1のサイクルでは、MNRは、MN1のゲート上の電圧をVt比較器閾値未満にし、I1は、MN1のドレインを低下させ、かつインバータの電流源をオフにさせるVt比較器閾値まで、ゲートを充電する。その後、第1のサイクル中、重み値を表すようにI2に比例してプログラムされた1つ以上の電流源は、入力電荷に比例したパルスによってゲートされ、入力の重み付けされた和としてのMN1からの除去された電荷。第2のサイクルI2では、MN1のゲートをそのトリップ電圧に充電し、除去された重み付けされた電荷を置き換える。インバータの出力でパルスによって表される当該電荷を再充電するためにかかる時間は、後続の乗算器で電荷をゲートするための入力パルスとして使用され、乗算された出力電荷に比例するパルスを表すことができる。
【図面の簡単な説明】
【0009】
本出願は、以下の図面に関してさらに詳細に記載される。これらの図面は、本出願の範囲を限定することを意図したものではなく、むしろその特定の属性を例示するものである。同一または類似の部品を参照するために、図面全体を通して同じ参照番号が使用される。
【0010】
【
図1】本出願の一態様による、各接続エンジン内の乗算器に依存するニューラルネットワークアーキテクチャの例示的な実施形態を示すブロック図である。
【
図2】本出願の一態様による乗算器の例示的な実施形態を示すブロック図である。
【
図3】本出願の一態様に従ってオーバーラップ容量を低減するように最適化された空乏化接合構造の例示的な実施形態の断面図を示す。
【
図4】本出願の一態様による、トランスコンダクタに結合された乗算器の例示的な実施形態を示すブロック図である。
【
図5】本出願の一態様によるパルス出力を有する重み付け加算器の例示的な実施形態を示すブロック図である。
【発明を実施するための形態】
【0011】
添付の図面に関連して以下に記載する説明は、本開示の現在好ましい実施形態の説明として意図され、本開示が構築および/または利用され得る唯一の形態を表すことを意図しない。説明は、例示される実施形態に関連して本開示を構築し、動作させるための機能および一連のステップを記載する。しかしながら、同一または同等の機能および順序は、本開示の趣旨および範囲内に包含されることも意図される異なる実施形態によって達成され得ることを理解されたい。
【0012】
図2を参照すると、減少した数のトランジスタを有する乗算器20の一実施形態を見ることができる。一実施形態によれば、乗算器20は、MOSFET MN1を有し得る。MOSFET MN1は、共通のソース構成で配置され得る。電流源I
MN1は、MOSFET MN1のドレインに結合され得る。インバータ22は、MOSFET MN1のドレイン端子に結合され得る。インバータ22の出力は、電流の大きさが比例し得る2つの電流源I1およびI2をゲートするために使用され得る。
【0013】
コンデンサC1は、第1の電流源I1とMOSFET MN1のゲートとに結合された端子を有し得る。コンデンサC1の第2の端子は、接地され得る。第1の電流源I1は、コンデンサC2の第2の端子とMOSFET MN1のゲートとに結合され得る。第2の電流源I2は、第2のコンデンサC2の第1の端子に結合され得る。
【0014】
リセットスイッチは、MOSFET MN1のゲートに結合され得る。一実施形態によれば、リセットスイッチは、リセットトランジスタMOSFET MNRであり得る。本実施形態において、MOSFET MNRは、共通ソース構成で構成され得る。MOSFET MNRのゲート端子は、リセット信号RESETに結合され得る。
【0015】
転送ゲートTGは、MOSFET MN1のゲート端子、コンデンサC1の第1の端子、C2の第2の端子、および電流源I1に結合され得る。乗算器20は、以下の様式で動作し得る。最初に、転送ゲートTGが開放され、I1およびI2を生成する電流源MOSFETは、コンデンサC2をレールにプルすることによって放電させるか、または代替的に、追加の電流源がコンデンサC2の第2の端子に結合され、MOSFET MNRは低く保持される。コンデンサC2が放電されると、他のトランジスタはオフになる。リセットトランジスタMOSFET MNRは、ゲートをトリップ閾値Vt未満にプルし、電流源I1は、MN1ゲートノードの充電を開始するために有効にされる。ある時点で、MOSFET MN1のゲート上の電圧は、MOSFET MN1のドレインを反転させ、インバータ22の出力は、電流源I1をオフにする。ここで、MOSFET MN1のゲート端子は、比較器閾値Vtに対応する電圧である。あるいは、C2を2回リセットし、I1+I2を使用してVt閾値を確立し、一定の充電電流を維持し、傾斜関連誤差の変化を低減してもよい。
【0016】
図2に見られるように、電荷パケットは、転送ゲートTGの左側に導入され得る。一実施形態によれば、電荷パケットは、負の電荷パケットである。電流源I1およびI2は、互いに比例してプログラムされて、所望の乗算子を形成し得る。転送ゲートTGがオンになると、負の電荷パケット内の電荷に比例して電荷が除去される。したがって、負の電荷パケットが転送ゲートTGに導入されると、MOSFET MN1のゲートでの電荷は、負の電荷パケットに比例して除去される。これにより、印加される負の電荷に比例して、MOSFET MN1のゲート上の電圧が低下する。
【0017】
電荷パケットは、MN1ゲート容量を放電する電流源であり得る。電荷パケットはまた、アクティブ画素からのピンフォトダイオードの電荷貯留部に貯蔵された電荷、またはアクティブ画素からの浮遊拡散、またはCCDシフトレジスタの出力に適合されて除去された電荷であってもよい。場合によっては、ゲート電流源がMN1のゲート容量を放電するような場合には転送ゲートを必要としない。
【0018】
転送ゲートTGをオンにし、MOSFET MN1のゲート上の電圧が入力電荷に比例してVt比較器閾値未満に低下した後、電流源I1およびI2をオンにする。コンデンサC1は、Vt比較器閾値に達するまでI1+I2によって充電され、この時点で、インバータ22は電流源I1およびI2をオフにする。コンデンサC1をVt比較器閾値まで充電するのに要する時間は、式tcharge=Qin/(I1+I2)によって表され得る。この間、コンデンサC2は、電流源I2によってのみ充電される。これは、Qin*I2/(I1+I2)の電荷をコンデンサC2に投入する時間Qin/(I1+I2)にわたって発生する。このため、入力電荷にI2/(I1+I2)を乗算し、コンデンサC2に貯蔵する。
【0019】
ここで、C2は、乗算された電荷を含んでいる。電荷の大きさは、後続の和算段階または乗算段階で利用することができ、電圧として差分的に読み出すことができ、または読み出すために既知の容量に転送することができる。関心のある情報が純粋に電荷である場合、実際の容量値は、電荷を保持するのに十分な大きさでなければならない以外は無関係であり得るということに留意することが重要である。これは、例えば、積分された電荷を乗算器20への入力として直接使用することができるので、アクティブ画素用途において非常に有用な回路となり得る。
【0020】
コンデンサC1は、MOSFET MN1の寄生容量、MOSFET MNRのドレインコンデンサ、電流源I1のドレイン容量、転送ゲートTGのオーバーラップ容量であってもよいことに留意すべきである。このコンデンサは電荷レセプタクルとして使用されているだけなので、その値を制御する必要はない。コンデンサC2は、コンデンサC1の大きさ以下の電荷のみを積分しているため、非常に小さなコンデンサにすることができる。Vtトリップポイントへのサイクルバイサイクルリセットは、相関する二重サンプリング機構として機能し、プロセスまたは温度に起因するフリッカノイズおよびトリップポイントの変動を除去する。
【0021】
電荷注入を低減するために、転送ゲートTG、MOSFET MN1、MOSFET MNR、ならびに電流源I1およびI2は、オーバーラップ容量を低減するようにさらに最適化された空乏化接合構造を使用して作成されてもよい。このような構造の例は、
図3に見ることができる。これらの構造は、フェムトフェード(fF)またはfF範囲の部分のコンデンサを可能にするために使用することができ、したがって、それを行うために非常に速く充填することができ、非常にわずかな電力しか必要とされない。入力電荷を、例えば、光検出器からの直接入力として、アクティブ画素内のピンフォトダイオードから直接結合することによって、ノイズを改善する従来のシステムと比較して、電荷から電圧または電流への変換を節約することができる(各変換は、デジタル化と同様にノイズ、コスト、電力、および遅延を追加する)。
【0022】
乗算器20内の電流源I1およびI2は、直接プログラムすることが困難であり得る。
図4の回路は、この問題を克服するのに役立ち得る。4つの象限トランスコンダクタは、
図2に示される単一のトランジスタ乗算器20に結合され得る。
【0023】
図4に示されるように、トランスコンダクタ40を見ることができる。トランスコンダクタ40は、乗算器20に結合されている。スイッチ44は、トランスコンダクタ40を乗算器20に結合するために使用され得る。乗算器20への2つの電圧入力48は、非常に低い漏れコンデンサまたはNVMメモリである。
【0024】
電圧差による電流源I1+I2(乗算器10内の電流)の直接のプログラミングを達成するために、以下を実行することができる。トランスコンダクタ40内の電流の差は、スイッチ49およびサンプルをオンにして結果を保持することによって、トランスコンダクタ抵抗器46にわたる電圧降下を排除することによってサンプリングするべきである。この電流は、次いで、乗算器20のI2電流として使用される。次いで、同じサンプリングされた電流を使用し、第2の段階の充電段階中にMOSFET MNRでそれを除去してもよい。その後、入力48またはAVは、トランスコンダクタ40の入力にわたって差動電圧として抵抗器r46にわたって印加される。したがって、得られる入力電荷の乗算子は(I1-I2)/(ΔV/r)であり、この場合、I1-I2は、乗算器20の電流源ではないトランスコンダクタのバイアス電流の差である。
【0025】
較正段階(I2-I1)では、rの誤差について調整することができる。あるいは、rを可変抵抗器とすることでI2-I1を調整してもよい。その結果、(I2-I1)/(ΔV/r)に従って電荷乗算子を設定することができる。一実施形態によれば、トランスコンダクタ抵抗器46は、強磁性メムリスタであってもよい。それはまた、大きさI1の電流42によってバイアスされたダイオード接続デバイスの直列対から三極管領域にバイアスされたトランジスタであってもよい。I1およびI2がまた一定のトランスコンダクタンスのバイアス回路でもバイアスされている場合、(I2-I1)およびrは、形状依存性のみとなり、プロセス依存性および温度依存性が分割される。
【0026】
トランスコンダクタ40は、複数の乗算器間で共有され得る。例えば、ブロードキャストシストリックアーキテクチャでは、重みオペランドの複数の複製を生成するために、トランスコンダクタ電流の複数のコピーをファンアウトすることができる。
【0027】
入力電荷パケットの代わりに、ゲートされた電流源も使用され得る。この場合、転送ゲートは必要ない。電流源のゲーティングは、MOSFET MN1のゲートから電荷を除去し、ゲート電圧をVt比較器閾値未満にする。電流源をオフにした後、転送ゲートがオンになってから、回路は前述のように動作する。
【0028】
図5を参照すると、重み付け加算器20を示す実施形態が考慮され得る。ここでは、コンデンサC1(コンデンサまたは浮遊拡散であり得る)にも接続されているMOSFET MN1のゲート、ゲーティングMOSFET 42のドレイン、およびIoutとしても知られる電流源40からなる単一の電荷貯留部が示されている。w1およびwnとラベル付けされた電荷移動手段30およびバイアスb1は、所望の重み入力に適合し、かつ電流源Iout40に比例してプログラムされている。これらの重み入力は、MOSFET42のゲートを駆動するバッファに接続されている時間入力a1、an、およびbによってゲートされる。リセット中、MOSFET MN1のゲートは、そのVt比較器閾値未満にプルされ、これは、MOSFET M1のドレインを反転させ、MPSFTE MN1ゲートがその切り替え閾値に達し、その後それがオフに切り替えられるまで、インバータ41が電流源40をオンにすることを可能にする。第1のサイクルにおいて、時間的に複数のパルス入力a1...an、およびbは、重みが所与の時間量にわたって流れ、その結果、重み付けされた電荷がMN1のゲートで電荷貯留部から除去されることを効果的に可能にする。この電流が除去されると、MN1のドレインは再び反転し、インバータ41に電流源Ioutをオンにさせ、電流源Ioutは重み付けされた入力によって除去された電荷を置き換える。これに要する時間は、aoutでの加重み付けされた和出力パルスを表す。
【0029】
本開示の実施形態は、様々な特定の実施形態の観点から説明されてきたが、当業者は、本開示の実施形態が、特許請求の範囲の趣旨および範囲内の修正を伴って実施され得ることを認識するであろう。