JP2023505178A - 容量性処理ユニット - Google Patents

容量性処理ユニット Download PDF

Info

Publication number
JP2023505178A
JP2023505178A JP2022533316A JP2022533316A JP2023505178A JP 2023505178 A JP2023505178 A JP 2023505178A JP 2022533316 A JP2022533316 A JP 2022533316A JP 2022533316 A JP2022533316 A JP 2022533316A JP 2023505178 A JP2023505178 A JP 2023505178A
Authority
JP
Japan
Prior art keywords
transistor
memory
cell
mos device
nmos transistor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022533316A
Other languages
English (en)
Inventor
ジョーシー、ラジブ
チャックラボーティ、スディプト
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2023505178A publication Critical patent/JP2023505178A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • G06N3/065Analogue means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/10Interfaces, programming languages or software development kits, e.g. for simulating neural networks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/402Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells with charge regeneration individual to each memory cell, i.e. internal refresh
    • G11C11/4023Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells with charge regeneration individual to each memory cell, i.e. internal refresh using field effect transistors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/403Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells with charge regeneration common to a multiplicity of memory cells, i.e. external refresh
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/54Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/16Storage of analogue signals in digital stores using an arrangement comprising analogue/digital [A/D] converters, digital memories and digital/analogue [D/A] converters 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/16Multiple access memory array, e.g. addressing one storage element via at least two independent addressing line groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C14/00Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down
    • G11C14/0009Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down in which the volatile element is a DRAM cell
    • G11C14/0036Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down in which the volatile element is a DRAM cell and the nonvolatile element is a magnetic RAM [MRAM] element or ferromagnetic cell

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Neurology (AREA)
  • Computer Hardware Design (AREA)
  • Semiconductor Memories (AREA)
  • Dram (AREA)
  • Mram Or Spin Memory Techniques (AREA)

Abstract

メモリ・デバイスの構造が説明される。構造は、メモリ・セルのアレイを含むことができる。メモリ・セルは、少なくとも1つの金属酸化物半導体(MOS)素子を含むことができ、少なくとも1つのMOS素子のソース端子がMOS素子のドレイン端子に接続される。ソース端子がドレイン端子に接続されることにより、少なくとも1つのMOS素子が、電気エネルギーを保存するための容量性挙動を示すことができる。第1のトランジスタを少なくとも1つのMOS素子に接続することができ、第1のトランジスタの活性化により、メモリ・セルへの書込み動作を容易にすることができる。第2のトランジスタを少なくとも1つのMOS素子に接続することができ、第2のトランジスタの活性化により、メモリ・セルからの読出し動作を容易にすることができる。

Description

本発明は、一般に、人工ニューラル・ネットワークを実装するために使用可能なニューロモーフィック・ハードウェアおよびシステムのメモリ・デバイスに関する。
人工ニューラル・ネットワーク(ANN)は、人間または動物の脳の生物学的ニューラル・ネットワークに着想を得た計算モデルである。ANNは、例を使用してタスクを累進的かつ自主的に学習する。ANNの応用には、音声認識、テキスト処理、および画像分類が含まれ得るが、これらに限定されない。ANNは、接続された1組のノード(またはニューロン)とエッジ(ノード間の接続)とを含む。ノード間のエッジに沿って、信号を伝送することができる。信号を受信したノードは、受信した信号を処理し、処理された信号(出力)を接続されたノードに伝達することができる。接続およびノードに重みを関連付けることができ、学習が進むにつれて重みを調整することができる。
一部の例では、メモリ・デバイスの構造が一般的に説明される。構造は、メモリ・セルのアレイを含むことができる。メモリ・セルは、少なくとも1つの金属酸化物半導体(MOS)素子を含むことができ、少なくとも1つのMOS素子のソース端子がMOS素子のドレイン端子に接続される。ソース端子がドレイン端子に接続されることにより、少なくとも1つのMOS素子が、電気エネルギーを保存するための容量性挙動(capacitive behavior)を示すことができる。第1のトランジスタを少なくとも1つのMOS素子に接続することができ、第1のトランジスタの活性化により、メモリ・セルへの書込み動作を容易にすることができる。第2のトランジスタを少なくとも1つのMOS素子に接続することができ、第2のトランジスタの活性化により、メモリ・セルからの読出し動作を容易にすることができる。
一部の例では、メモリ、プロセッサ、および構造を含むシステムが、一般的に説明される。プロセッサは、メモリと通信するように構成され得る。構造は、メモリおよびプロセッサと通信するように構成され得る。構造は、メモリ・セルのアレイを含むことができる。メモリ・セルは、少なくとも1つの金属酸化物半導体(MOS)素子を含むことができ、少なくとも1つのMOS素子のソース端子がMOS素子のドレイン端子に接続される。ソース端子がドレイン端子に接続されることにより、少なくとも1つのMOS素子が、電気エネルギーを保存するための容量性挙動を示すことができる。第1のトランジスタを少なくとも1つのMOS素子に接続することができ、第1のトランジスタの活性化により、メモリ・セルへの書込み動作を容易にすることができる。第2のトランジスタを少なくとも1つのMOS素子に接続することができ、第2のトランジスタの活性化により、メモリ・セルからの読出し動作が容易になる。プロセッサは、メモリ・セルのアレイの書込み動作および読出し動作を制御するための1つまたは複数の制御信号を生成するように構成され得る。
一部の例では、メモリ・デバイスが一般的に説明される。メモリ・デバイスは、データを保存するように構成された不揮発性メモリと、不揮発性メモリに結合された構造とを含むことができる。構造は、メモリ・セルのアレイを含むことができる。メモリ・セルは、少なくとも1つの金属酸化物半導体(MOS)素子を含むことができ、少なくとも1つのMOS素子のソース端子がMOS素子のドレイン端子に接続される。ソース端子がドレイン端子に接続されることにより、少なくとも1つのMOS素子が、電気エネルギーを保存するための容量性挙動を示すことができる。第1のトランジスタを少なくとも1つのMOS素子に接続することができ、第1のトランジスタの活性化により、メモリ・セルへの書込み動作が容易になる。第2のトランジスタを少なくとも1つのMOS素子に接続することができ、第2のトランジスタの活性化により、メモリ・セルからの読出し動作が容易になる。書込み動作により、少なくとも1つのMOS素子の容量を変更することができ、変更された容量は、不揮発性メモリに保存されているデータを更新することができる。
以下で、添付図面を参照しながら、様々な実施形態のさらなる特徴ならびに構造および動作について詳細に説明する。図中、同様の参照符号は同一または機能的に同様の要素を示す。
一実施形態における1つまたは複数の容量性処理(capacitive processing)ユニットを含むシステムの例を示す図である。 一実施形態における容量性処理ユニットを含む構造の追加の詳細を示す図である。 一実施形態における容量性処理ユニットの詳細を示す図である。 一実施形態における容量性処理ユニットにより実装可能な回路の詳細を示す図である。 一実施形態における容量性処理ユニットの例示的な実装形態を示す図である。 一実施形態における容量性処理ユニットの例示的な実装形態を示す表である。 一実施形態における統合容量性処理ユニットを含むメモリ・デバイスの例を示す図である。 本発明の一実施形態における容量性処理ユニットを実装可能なコンピュータまたは処理システムの例の概略図である。
様々なタイプのニューラル・ネットワークの例示的な実施形態の以下の説明は、例として提示される。本明細書に記載のニューラル・ネットワークの実施形態は、本明細書に記載の例に限定されないことに留意されたい。
深層ニューラル・ネットワーク(DNN)は、入力層と出力層との間に複数の層を有するANNである。DNNは、入力データと出力データとの関係を学習することができ、学習した関係を使用して将来の入力を出力に変換することができる。DNNは各出力の確率を計算する層を通って移動し、各機能操作は層と見なされる。DNNが画像認識に応用される例では、DNNの目標の例は、人間の入力を必要とせずに、画像の特徴を学習し、新しい入力画像を学習した特徴と比較することによって分類することである。DNNは、比較的複雑な非線形関係をモデル化するために使用することもでき、通常はフィードフォワード・ネットワークである。
フィードフォワード・ニューラル・ネットワーク(多層パーセプトロンなど)において、複数のノードを層状に配置することができる。隣接する層のノードは、それらの間に接続を有し、接続は重みに関連付けられている。フィードフォワード・ニューラル・ネットワークは、それぞれの層に配置された3種類のノード、すなわち、入力ノード、隠れノード、および出力ノードを含むことができる。入力ノードは入力層のノードであり、外部からネットワークに情報を提供するタスクを担う。一部の例では、入力ノードは、隠れ層の隠れノードに情報を渡し、計算を実行するように構成されていないことがある。隠れノードは1つまたは複数の隠れ層に配置され、ネットワークの外部から隠される。隠れノードは、計算を実行し、かつ入力層から出力ノードへ情報を転送するように構成されている。出力層の出力ノードは、計算を行い、ネットワークから外部へ情報を転送することができる。一例では、情報はフィードフォワード・ネットワークにおいて、隠れノードを通って一方向(順方向)に伝播する。順方向は、入力ノードから出力ノードへ向かう方向である。フィードフォワード・ネットワークは、サイクルまたはループが存在しなくてよく、これはノード間の循環接続を伴うリカレント・ニューラル・ネットワーク(RNN)とは異なる。リカレント・ニューラル・ネットワーク(RNN)は、データが任意の方向に流れることができるネットワークである。RNNは、言語モデリングなどの応用に使用することができる。
畳み込みニューラル・ネットワーク(CNN)は、深層ニューラル・ネットワークの一種である。CNNは、例えば、最小限の前処理を必要とするように設計された様々な多層パーセプトロンを使用する。CNNは、その重み共有構造および並進不変特性に基づいて、シフト不変または位置不変人工ニューラル・ネットワーク(SIANN)とも呼ばれる。一例では、CNNは、画像処理アプリケーションなどの様々なアプリケーションにおいてフィルタを学習することができ、学習は、事前の知識および人間の入力から独立している。CNNの応用には、画像および動画認識、コンピュータ・ビジョン、レコメンダ・システム、画像分類、医用画像解析、自動音声認識(ASR)のための音響モデリング、ならびに自然言語処理が含まれ得るが、これらに限定されない。
図1は、一実施形態における1つまたは複数の容量性処理ユニットを含むシステムの例を示す図である。図1に示す例では、システム100は、DNN102などのニューラル・ネットワークを実装するように構成されたデバイス101を含むことができる。デバイス101は、入力130を受信するように構成されたコンピュータ・デバイスであってよく、入力130は、限定されないが、ピクセル値を含む画像データなどの入力データを含むことができる。デバイス101は、ニューラル・ネットワーク(例えば、DNN102)を実装して出力132を生成することができ、出力132は、例えば、入力130の分類であってよい。デバイス102は、プロセッサ110と、プロセッサ110と通信するように構成されたメモリ・デバイス(またはメモリ)120と、プロセッサ110およびメモリ120と通信するように構成された構造150とを含むことができる。例示的な一実施形態において、構造150およびメモリ120を、同じメモリ・デバイス内に統合することができる。別の例示的な実施形態において、構造150は、メモリ・アクセラレータであってよい。
一例では、プロセッサ110は、入力130を受信し、入力130を構造150に送信することができる。構造150は、複数の容量性処理ユニットまたはデバイス160(「セル160」)を含むことができる。図1に示す例では、構造150は、N×M個の容量性処理ユニット160(行i=1、…、NのN行、および列j=1、…、MのM列)を含むことができる。構造150の中のいくつかの容量性処理ユニット160を、DNN102の所望の実装、DNN102の属性(例えば、サイズ、層数)、入力130および出力132の属性(例えば、サイズ)、または他の要因、あるいはその組合せに基づいて活性化することができる。例えば、構造150は、X個のメモリ・セルを含むことができ、N×M個のセルを活性化してDNN102をトレーニングすることができる。構造150は、容量性処理ユニット160を接続する複数の導電性ワイヤをさらに含むことができる。例えば、構造150は、N本の書込みワード線(WWL)ワイヤ、N本の読出しワード線(RWL)ワイヤ、およびM本の真ビット線(BLT)ワイヤを含むことができる。プロセッサ110は、構造150の動作を制御するための制御信号を生成するように構成され得る。例えば、プロセッサ110は、ロジック「1」信号をすべてのRWLワイヤに書き込んで読出し動作を実施することができ、容量性処理ユニット160に保存され得る電気エネルギーを蓄積することができ、蓄積された電気エネルギーをデジタル値として読み出すことができるようになっている。
構造150は、回路151、回路152、および複数の回路170をさらに含むことができる。回路151および回路152は、プロセッサ110から制御信号を受信し、WWLワイヤおよびRWLワイヤへの制御信号の書込みを容易にするように構成され得る。回路151は、セル160の1つまたは複数の行(行1~N)の選択または活性化を容易にするように構成されたデコーダ(行デコーダ)を含むことができる。回路152は、セル160の1つまたは複数の列(列1~M)の選択または活性化を容易にするように構成されたデコーダ(列デコーダ)を含むことができる。例えば、プロセッサ110は、行i=1およびi=2のWWLワイヤに対応するビット位置1および2におけるロジック「1」を有する制御信号を回路151に送信し、列j=2のBLTワイヤに対応するビット位置2におけるロジック「1」を有する制御信号を回路152に送信して、セル(1,2)および(2,2)への書込み動作を容易にすることができる。一部の例では、回路151は、デジタル入力をセル160に入力できるアナログ信号(または電流)に変換するために使用可能なデジタル-アナログ・コンバータ(DAC)などの追加の回路を含むことができる。一部の例では、回路152は、セル160に保存された電気エネルギーから蓄積されたデータの読出しを容易にするために使用可能なセンス増幅器などの追加の回路を含むことができる。プロセッサ110によって生成された制御信号を使用して、DNN102をトレーニングおよび実装するために、行列演算(例えば、加算、乗算)およびベクトル行列演算(例えば、乗算-累積など)などの演算を実行するように構造150を制御することができる。構造150によって実行されるこれらの演算は、DNN102の重みを更新すること、およびデバイス101により受信された入力データを分類するためにDNN102を実装することを含む、DNN102のトレーニングを容易にすることができる。複数の回路170は、アナログ回路であってよく、セル160から出力および蓄積された電気エネルギーを保存するように構成され得る。例示的な実施形態において、セル160の各列は、1つの回路170に接続される。図1に示す例では、M列のセル160に対応するM個の回路170がある。
本発明による実施形態において説明されるセル160は、処理能力および保存能力の両方を含む。セル160は、1つまたは複数の金属酸化物半導体(MOS)素子を含むことができ、1つまたは複数のMOS素子は、電気エネルギーを保存するように動作可能な1つまたは複数の容量性素子として構成され得る。さらに、1つまたは複数のクロック信号を使用して、1つまたは複数のMOS素子を異なるタイミングで切り替えて、計算を実行するように容量性処理デバイスを構成することができる。したがって、セル160は、ニューラル・ネットワークの実装においてインメモリ計算を提供することができる。インメモリ計算は、容量性処理デバイスの容量性素子に保存された電気エネルギーから重みを得ることができ、容量性処理デバイスを使用して計算を局所的に実行することもできる(インメモリ計算)ので、例えば、待ち時間を短縮することによって、ニューラル・ネットワークの実装における効率を高めることができる。
図2は、一実施形態における容量性処理ユニットを含む構造の追加の詳細を示す図である。図2は、図1の構成要素と同一名称の構成要素を含むことがあるが、明確にするために、これらについては再び説明しない。図2の説明は、図1の構成要素の少なくとも一部を参照することがある。
図2に示す例では、構造150は、セル160の異なる動作を容易にするための追加の構成要素およびワイヤを含むことができる。1つのセル160に注目すると、セル160に異なる動作を実行させるためにプロセッサ110によって提供される異なる信号を使用して制御可能な、通過ゲートまたは送信ゲートなどの複数の構成要素に、セル160を接続することができる。構造150によって受信できる複数の制御信号は、例えば、1)WRITE、2)WEIGHT、3)書込みワード線(WWL)信号、4)読出しワード線(RWL)信号、5)プリチャージ(PCH)信号、6)DATAと表記されたバイアス電圧、および7)DATA_Tと表記されたバイアス電圧である。追加の入力信号を構造150によって受信できることに留意されたい。PCH信号は1ビットであってよく、BLTワイヤなどの出力線を初期化するためのプリチャージ信号であってよい。WRITE信号は1ビットであってよく、WRITE=「1」である場合、DATA_Tを、セル160内の第1の組のMOS素子をバイアスするための信号BIAS_Tとして、パス・ゲート204を介してセル160に渡すことができる。同様に、WRITE=「1」である場合、DATAを、セル160内の第2の組のMOS素子をバイアスする信号BIAS_Bとして、パス・ゲート206を介してセル160に渡すことができる。DATAおよびDATA_Tは各々、構造150内のセル160の列数に対応するMビット長であってよい。WWL信号およびRWL信号は、構造150内のセル160の行数に対応するNビット長であってよい。WWL信号およびRWL信号は、構造150またはデバイス101の一部であり得るローカル・クロック発生器によって生成され得る。
WEIGHT信号は、Nビット長であってよく、メモリ120に書き込まれているか、またはメモリ120において更新されている重み値であってよい。WWL信号がロジック「1」である場合、パス・ゲート202により、WEIGHT信号をセル160に送信することが可能になり得る。例示的な実施形態において、DNN102の重みを、セル160に保存することができ、セル160に保存された電気エネルギーを蓄積することによって読み出すことができる。DNN102の重みは、書込み動作によって選択されたセル160内の容量性素子の充電または放電などによって、WEIGHT信号により更新され得る。したがって、重みの更新は、セル160内で局所的に実行され得る。セル160間の電気エネルギーの更新量を、相補ビット線(BLC)と表記された内部ノードに接続可能なWEIGHT_OUTピンを介して出力することができる。内部ノードBLCをBLTワイヤに接続することができ、BLTワイヤと内部BLCノードとの電圧差は、セル160に保存されている電気エネルギーの量を表すことができる。電気エネルギーの更新量は、回路170、152によって蓄積され、デジタル値としてメモリ120に出力され得る。
図3は、一実施形態における容量性処理ユニットの詳細を示す図である。このような構成は、回路部品の行列配置を含むことができる。図3は、図1、図2の構成要素と同一名称の構成要素を含むことがあるが、明確にするために、これらについては再び説明しない。図3の説明は、図1、図2の構成要素の少なくとも一部を参照することがある。
セル160は、複数のMOS素子、例えばN型MOS(NMOS)およびP型MOS(PMOS)トランジスタを含むことができる。図3に示す例では、NMOSトランジスタ302を、WWLワイヤから受信した信号によって制御することができる。別のNMOSトランジスタ304を、RWLワイヤから受信した信号によって制御することができる。WWLから受信した信号がロジック「1」である場合、電流がBLTワイヤからセル160内に流れ、書込み動作を容易にすることができることに留意されたい。同様に、RWLから受信した信号がロジック「1」である場合、電流がセル160からBLCワイヤに向かって流れ、読出し動作を容易にすることができる。
セル160は、PMOSトランジスタ310およびPMOSトランジスタ312をさらに含むことができる。PMOSトランジスタ310のソース端子を、PMOSトランジスタ310のドレイン端子、または同じ電圧源に接続することができる。同様に、PMOSトランジスタ312のソース端子を、PMOSトランジスタ312のドレイン端子、または同じ電圧源に接続することができる。図3に示す例では、PMOSトランジスタ310、312のソース端子は、それ自体のドレイン端子、それ自体のゲート、および同じ電圧源に接続されている。PMOSトランジスタ310、312は、WRITE信号がロジック「1」であることに応答してパス・ゲート204により渡されたBIAS_T信号によってバイアスされ得る。BIAS_T信号はDATA_T信号であってよい。
セル160は、NMOSトランジスタ314およびNMOSトランジスタ316をさらに含むことができる。NMOSトランジスタ314のソース端子を、NMOSトランジスタ314のドレイン端子、または同じ電圧源に接続することができる。同様に、NMOSトランジスタ316のソース端子を、NMOSトランジスタ316のドレイン端子、または同じ電圧源に接続することができる。図3に示す例では、NMOSトランジスタ314、316のソース端子は、それ自体のドレイン端子、それ自体のゲート、および同じ電圧源に接続されている。NMOSトランジスタ314、316は、WRITE信号がロジック「1」であることに応答してパス・ゲート206により渡されたBIAS_B信号によってバイアスされ得る。BIAS_B信号はDATA信号であってよい。
MOSのソース端子とドレイン端子とが互いに接続されると、MOSは、MOSのゲートに異なる電圧(ゲート電圧)が印加されることに応答して、異なるレベルの容量を示すことができる。したがって、MOSは、MOSキャパシタと呼ぶことができるキャパシタと同様に動作することができる。容量をゲート電圧と比較すると、MOSキャパシタの容量変化は、ゲート電圧領域0~1ボルト(V)、または0~-1Vで直線状になり得る。MOSキャパシタの容量は、これらの領域のゲート電圧に対して直線状に変化する。MOSキャパシタのこのような容量-電圧特性の直線性を利用して、メモリ・セル内の容量性素子として使用することができる。MOSキャパシタをメモリ・セル内の容量性素子として使用することにより、電気エネルギーを保存するように、かつ様々な制御信号を使用してインメモリ処理を行ってMOS素子を制御するように、メモリ・セルを制御することができる。
例示的な実施形態において、BLTワイヤとBLCワイヤとの間の電圧差330は、セル160に保存されている電気エネルギーの量を表すことができる。セル160の列は、それぞれの出力ワイヤBLTまたはBLCにおけるそれぞれの電圧差330を出力することができる。同じ列のセルから出力された電圧差を蓄積して、列の出力を生成することができる。構造150がN×M個のセル160を有する例を使用して、構造150は、M値を表すM個の蓄積された電圧差を並列に出力することができる。セル160のj番目の列からj番目のBLTワイヤまたはj番目のBLCワイヤに伝達された電気エネルギーは、回路152内のj番目のセンス増幅器によって差動増幅およびラッチされ得、これにより、セル160のj番目の列から蓄積された電気エネルギーが出力される。
図4は、一実施形態における容量性処理ユニットにより実装可能な回路の詳細を示す図である。図4は、図1~図3の構成要素と同一名称の構成要素を含むことがあるが、明確にするために、これらについては再び説明しない。図4の説明は、図1~図3の構成要素の少なくとも一部を参照することがある。
図4は、一実施形態における回路170の詳細を示す。analog_in(ana_in)ピン402を、対応する列のBLTワイヤに接続することができる。例えば、列M=1の回路170_1のピン402を、列M=1のBLTワイヤに接続することができる。回路170は、ピン404において選択信号を受信することができ、選択信号は回路170を活性化または非活性化することができる。例えば、SELピンがロジック「1」信号を受信すると、入力インピーダンスが高く、出力インピーダンスが低くなるため、回路170はアナログ・バッファとして動作し、回路170に電流を流すことができる。SELピンがロジック「0」信号を受信すると、回路170はオフになり、入力インピーダンスおよび出力インピーダンスの両方が高くなり、回路170に電流が流れない。j番目の回路170は、セル160のj番目の列から出力された電気エネルギーを集めることができ、読出し動作中に、j番目の回路170は、セル160のj番目の列から蓄積された保存電気エネルギーを、t_outピン406を介して出力することができる。t_outピン406を構造150の読出しピンに接続することができ、セル160の列から蓄積されたエネルギーを、この読出しピンを介して、構造150の外部の1つまたは複数のデバイスに出力することができる。
図5は、一実施形態における容量性処理ユニットの例示的な実装形態を示す図である。図5は、図1~図4の構成要素と同一名称の構成要素を含むことがあるが、明確にするために、これらについては再び説明しない。図5の説明は、図1~図4の構成要素の少なくとも一部を参照することがある。
図5の例示図を使用して、セル160のいくつかの電気的特性を表すことができる。図5のダイアグラムを図3と比較すると、スイッチSはPMOS312を表すことができ、スイッチSはPMOS310を表すことができ、スイッチSはNMOS316を表すことができ、スイッチSはNMOS314を表すことができる。NMOSトランジスタ310、312およびPMOSトランジスタ314、316を、スイッチS、S、S、Sとして実装することができる(例えば、それぞれのゲート端子にクロック信号を印加することによって、これらのスイッチをオンまたはオフにすることができる)。電圧V、VはBIAS_T電圧を表すことができ、電圧V、VはBIAS_B電圧を表すことができる。キャパシタCは、BLTワイヤとBLCワイヤとの間の電圧差330に対応する容量を表すことができる。一例では、スイッチS、Sが同じであり(例えば、両方ともNMOS)、スイッチS、Sが同じである(例えば、両方ともPMOS)ので、容量Cは、第1の差V-Vおよび第2の差V-Vに基づいており、セル160を差動入力差動出力増幅器(differential in, differential out amplifier)に類似して動作させることができる。
別の例では、スイッチS、Sが第1のタイプのMOSを表し、スイッチS、Sが第2のタイプのMOSを表す場合、電圧差(V-V)と(V-V)との間に同等の抵抗を形成することができる。S~Sを同じタイプのトランジスタから作ることもでき、正しい機能のために、SおよびSの両方を第1の位相でオンにすることができ、SおよびSの両方を第2の位相でオンにすることができるが、第1の位相と第2の位相とは重ならない。あるいは、SおよびSが同時にオンになり、SおよびSが同時にオンになり、SおよびSが本質的に相補的であり得ることを保証するために、SおよびSは、同じ位相で動作するトランジスタの反対の極性であってよい。別の例では、スイッチS、Sが第1のタイプのMOSを表し、スイッチS、Sが第2のタイプのMOSを表し、電圧V=V、かつ電圧V=Vである場合、V(またはV)とV(またはV)との間にT/Cの値を有する抵抗を形成することができ、ここで、Tは、スイッチS、S、S、Sとして実装されているトランジスタのゲート端子にクロック信号が印加される期間を示す。
図6は、一実施形態における容量性処理ユニットの例示的な実装形態を示す表である。図6は、図1~図5の構成要素と同一名称の構成要素を含むことがあるが、明確にするために、これらについては再び説明しない。図6の説明は、図1~図5の構成要素の少なくとも一部を参照することがある。
一例では、表600は、本明細書に記載のセル160の例示的な実装形態を示す。表600において、行T1、T2、T3は、WEIGHT信号「00」を第1のセル(CELL_0)および第2のセル(CELL_1)に書き込み、書き込まれた重みを電圧量として読み出す3つの演算である。T1では、CELL_0のWWLワイヤ(WWL_0)はロジック「1」を受信し、CELL_1のWWLワイヤ(WWL_1)はロジック「1」を受信しないため、CELL_0への書込み動作は容易になるが、CELL_1への書込み動作は容易にならない。T1では、RWL_0=「1」およびRWL_1=「0」であり、読出し動作を実行するためにはすべてのRWLワイヤがロジック「1」である必要があるので、読出し動作は行われないことに留意されたい。したがって、T1では、「0」がCELL_0に書き込まれる(CELL_0のMOS素子は充電されない)。T2では、CELL_1のWWLワイヤ(WWL_1)がロジック「1」を受信するため、CELL_1への書込み動作が容易になる。T2では、RWL_0=「0」およびRWL_1=「1」であり、読出し動作を実行するためにはすべてのRWLワイヤがロジック「1」である必要があるので、読出し動作は行われないことに留意されたい。したがって、T2では、「0」がCELL_1に書き込まれる。T3では、RWL_0およびRWL_1の両方がロジック「1」であり、セルCELL_0およびCELL_1に保存された電気エネルギーが電圧(0.38mV)として読み出され、これは、この場合、ロジック「0」を表す。
行T4、T5、T6は、WEIGHT信号「01」を第1のセル(CELL_0)および第2のセル(CELL_1)に書き込み、書き込まれた重みを電圧量として読み出す3つの演算である。T4では、CELL_0のWWLワイヤ(WWL_0)はロジック「1」を受信し、CELL_1のWWLワイヤ(WWL_1)はロジック「1」を受信しないため、CELL_0への書込み動作は容易になるが、CELL_1への書込み動作は容易にならない。T4では、RWL_0=「1」およびRWL_1=「0」であり、読出し操作を実行するためにはすべてのRWLワイヤがロジック「1」である必要があるので、読出し動作は行われないことに留意されたい。したがって、T4では、「0」がCELL_0に書き込まれる。T5では、CELL_1のWWLワイヤ(WWL_1)がロジック「1」を受信するため、CELL_1への書込み動作が容易になる。T5では、RWL_0=「0」およびRWL_1=「1」であり、読出し動作を実行するためにはすべてのRWLワイヤがロジック「1」である必要があるので、読出し動作は行われないことに留意されたい。したがって、T5では、「1」がCELL_1に書き込まれる。T6では、RWL_0およびRWL_1の両方がロジック「1」であり、セルCELL_0およびCELL_1に保存された電気エネルギーが電圧(0.550mV)として読み出され、これは、この場合、ロジック「1」を表す。T3をT6と比較すると、CELL_1が先にT2で「0」を保存し、その後T5で「1」を保存するように更新された(または充電された)ため、T6は、より高い電圧を出力することに留意されたい。
行T7、T8、T9は、WEIGHT信号「11」を第1のセル(CELL_0)および第2のセル(CELL_1)に書き込み、書き込まれた重みを電圧量として読み出す3つの演算である。T7では、CELL_0のWWLワイヤ(WWL_0)はロジック「1」を受信し、CELL_1のWWLワイヤ(WWL_1)はロジック「1」を受信しないため、CELL_0への書込み動作は容易になるが、CELL_1への書込み動作は容易にならない。T7では、RWL_0=「1」およびRWL_1=「0」であり、読出し動作を実行するためにはすべてのRWLワイヤがロジック「1」である必要があるので、読出し動作は行われないことに留意されたい。したがって、T7では、「1」がCELL_0に書き込まれる。T8では、CELL_1のWWLワイヤ(WWL_1)がロジック「1」を受信するため、CELL_1への書込み動作が容易になる。T8では、RWL_0=「0」およびRWL_1=「1」であり、読出し動作を実行するためにはすべてのRWLワイヤがロジック「1」である必要があるので、読出し動作は行われないことに留意されたい。したがって、T8では、「1」がCELL_1に書き込まれる。T9では、RWL_0およびRWL_1の両方がロジック「1」であり、セルCELL_0およびCELL_1に保存された電気エネルギーが電圧(0.799mV)として読み出され、これは、この場合、ロジック「1」を表す。T6をT9と比較すると、CELL_0が先にT5で「0」を保存し、その後T8で「1」を保存するように更新された(または充電された)ため、T9は、より高い電圧を出力することに留意されたい。
図7は、一実施形態における統合容量性処理ユニットを含むメモリ・デバイスの例を示す図である。図7は、図1~図6の構成要素と同一名称の構成要素を含むことがあるが、明確にするために、これらについては再び説明しない。図7の説明は、図1~図6の構成要素の少なくとも一部を参照することがある。
メモリ120に結合された構造150は、インメモリ処理を実行するように構成されたメモリ・デバイス700としてパッケージ化され得る。図7に示す例では、メモリ120は、磁気抵抗ランダムアクセス・メモリ(MRAM)などの不揮発性メモリ(NVM)、または他のタイプの不揮発性メモリ(例えば、ReRAM、RRAM、FLASHなど)であってよい。構造150がNVM120に結合されていることに基づいて、セル160内の容量性素子が充電または放電されていると、メモリ120に保存され得る重みもそれに応じて更新され得る。構造150を不揮発性メモリ(例えば、メモリ120)に結合することにより、構造150とメモリ120との間のデータの伝送を容易にするための追加の構成要素を有する必要なく、不揮発性メモリに保存された重みの更新をセル160内で局所的に行うことができる。一部の例示的な実施形態において、セル160を揮発性メモリ・セルとして実装することができる。メモリ・デバイス700を、揮発性ストレージおよび不揮発性ストレージの両方を提供するメモリ・デバイスとして実装することができ、揮発性ストレージ要素に対して行われている更新を、不揮発性ストレージ要素に直接転送することができる。
図7に示す例では、容量Cは、セル160の中の容量性素子のうちの1つまたは複数(例えば、PMOS310、312またはNMOS314、316あるいはその両方)を表すことができる。一部の例では、容量Cは、トランジスタ・ベースのキャパシタ、トレンチ・ベースのキャパシタ、誘電体ベースのキャパシタ、金属絶縁体金属(MIM)のようなワイヤ・キャパシタ、または他の形態のキャパシタ、あるいはその組合せなどの容量性素子の容量であってよい。一部の例では、セル160に実装されるキャパシタのタイプは、システム100の所望の実装形態に基づくことができる。トランジスタMはNMOS304を表すことができ、トランジスタMはNMOS302を表すことができ、クロック信号ClkはRWL信号を表すことができ、クロック信号ClkはWWL信号を表すことができる。Clkが高く(ロジック「1」)、Clkが低い(ロジック「0」)場合、トランジスタMを活性化することができ、トランジスタMは活性化されず、MRAM701は更新されない。さらに、トランジスタMが活性化され、トランジスタMが非活性化されることにより、保存されたエネルギーをセル160から電圧Vとして読み出す読出し動作を容易にすることができる。Clkが低く、Clkが高いとき、トランジスタMを非活性化することができ、トランジスタM2を活性化することができ、MRAMビット701を容量Cに応じて更新することができる。例示的な実施形態において、MRAMビット701(または他の不揮発性メモリ・ビット)は、BLTワイヤと対応するセル160との間に配置または接続され得ることに留意されたい。例えば、図3の例を参照すると、MRAMビット701をBLTワイヤとトランジスタ302との間に接続することができる。
図8は、本発明の一実施形態における容量性処理ユニットを実装可能なコンピュータまたは処理システムの例の概略図である。コンピュータ・システムは、適切な処理システムの一例に過ぎず、本明細書に記載の方法の実施形態の使用範囲または機能に関するいかなる制限も示唆するものではない。図示の処理システムは、多数の他の汎用もしくは専用コンピューティング・システム環境または構成と共に動作可能である。図8に示す処理システムと共に使用するのに適している可能性のある周知のコンピューティング・システム、環境、または構成、あるいはその組合せの例として、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、ハンドヘルド・デバイスまたはラップトップ・デバイス、マルチ・プロセッサシステム、マイクロプロセッサ・ベースのシステム、セット・トップ・ボックス、プログラマブル家庭用電子機器、ネットワークPC、ミニコンピュータ・システム、メインフレーム・コンピュータ・システム、スーパ・コンピュータ、および上記のシステムまたはデバイスのうちのいずれかを含む分散クラウド・コンピューティング環境などが挙げられ得るが、これらに限定されない。
コンピュータ・システムは、コンピュータ・システムによって実行されるプログラム・モジュールなどのコンピュータ・システム実行可能命令の一般的な文脈で説明することができる。一般に、プログラム・モジュールは、特定のタスクを実行するか、または特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、ロジック、データ構造などを含むことができる。コンピュータ・システムは、通信ネットワークを介してリンクされたリモート処理デバイスによってタスクが実行される分散クラウド・コンピューティング環境において実践され得る。分散クラウド・コンピューティング環境において、プログラム・モジュールは、メモリ・ストレージ・デバイスを含むローカルおよびリモートの両方のコンピュータ・システム記憶媒体内に配置され得る。
コンピュータ・システムのコンポーネントには、1つまたは複数のプロセッサまたは処理ユニット12、システム・メモリ16、およびシステム・メモリ16を含む様々なシステム・コンポーネントをプロセッサ12に結合するバス14が含まれ得るが、これらに限定されない。プロセッサ12は、本明細書に記載の方法を実行するモジュール30(例えば、機械学習モジュール30)を含むことができる。モジュール30は、プロセッサ12の集積回路にプログラムすることができ、あるいはメモリ16、ストレージ・デバイス18、もしくはネットワーク24、またはその組合せからロードすることができる。
バス14は、メモリ・バスまたはメモリ・コントローラ、周辺機器バス、アクセラレイティッド・グラフィックス・ポート、および、様々なバス・アーキテクチャのいずれかを使用するプロセッサまたはローカル・バスを含むいくつかのタイプのバス構造のうちのいずれかの1つまたは複数を表すことができる。限定ではなく例として、このようなアーキテクチャには、インダストリ・スタンダード・アーキテクチャ(ISA)・バス、マイクロ・チャネル・アーキテクチャ(MCA)・バス、エンハンストISA(EISA)・バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション(VESA)・ローカル・バス、およびペリフェラル・コンポーネント・インターコネクト(PCI)・バスが含まれる。
コンピュータ・システムは、様々なコンピュータ・システム可読媒体を含むことができる。このような媒体は、コンピュータ・システムによってアクセス可能な任意の利用可能な媒体であってよく、揮発性媒体および不揮発性媒体、取外し可能媒体および取外し不能媒体の両方を含むことができる。
システム・メモリ16は、ランダム・アクセス・メモリ(RAM)、またはキャッシュ・メモリ、あるいはその両方などの、揮発性メモリの形態のコンピュータ・システム可読媒体を含むことができる。コンピュータ・システムは、他の取外し可能/取外し不能な、揮発性/不揮発性のコンピュータ・システム記憶媒体をさらに含むことができる。単に例として、取外し不能な不揮発性磁気媒体(例えば「ハード・ドライブ」)に対する読出しおよび書込みを行うためのストレージ・システム18を設けることができる。図示しないが、取外し可能な不揮発性磁気ディスク(例えば「フロッピー(R)・ディスク」)に対する読出しおよび書込みを行うための磁気ディスク・ドライブ、および、CD-ROM、DVD-ROM、または他の光媒体などの取外し可能な不揮発性光ディスクに対する読出しおよび書込みを行うための光ディスク・ドライブを設けることができる。このような事例では、各々を、1つまたは複数のデータ媒体インターフェースによってバス14に接続することができる。一部の例では、システム・メモリ16は、本明細書に記載の1つまたは複数の容量性処理ユニットを含む構造を含むことができる。
コンピュータ・システムは、キーボード、ポインティング・デバイス、ディスプレイ28などの1つもしくは複数の外部デバイス26、ユーザがコンピュータ・システムと対話することを可能にする1つもしくは複数のデバイス、またはコンピュータ・システムが1つもしくは複数の他のコンピューティング・デバイスと通信することを可能にする任意のデバイス(例えば、ネットワーク・カード、モデムなど)、あるいはその組合せと通信することもできる。そのような通信は、入出力(I/O)インターフェース20を介して行うことができる。
さらに、コンピュータ・システムは、ネットワーク・アダプタ22を介して、ローカル・エリア・ネットワーク(LAN)、汎用ワイド・エリア・ネットワーク(WAN)、またはパブリック・ネットワーク(例えば、インターネット)、あるいはその組合せなどの1つまたは複数のネットワーク24と通信することができる。図示のように、ネットワーク・アダプタ22は、バス14を介してコンピュータ・システムの他のコンポーネントと通信する。図示しないが、他のハードウェア・コンポーネントまたはソフトウェア・コンポーネントあるいはその両方を、コンピュータ・システムと組み合わせて使用してもよいことを理解されたい。例として、マイクロコード、デバイス・ドライバ、冗長処理ユニット、外部ディスク・ドライブ・アレイ、RAIDシステム、テープ・ドライブ、およびデータ・アーカイバル・ストレージ・システムなどが挙げられるが、これらに限定されない。
本発明は、任意の可能な統合の技術的詳細レベルにおけるシステム、方法、またはコンピュータ・プログラム製品、あるいはその組合せであってよい。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を有する1つまたは複数のコンピュータ可読記憶媒体を含むことができる。
コンピュータ可読記憶媒体は、命令実行デバイスによって使用するための命令を保持し格納することができる有形デバイスであってよい。コンピュータ可読記憶媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光学ストレージ・デバイス、電磁ストレージ・デバイス、半導体ストレージ・デバイス、またはこれらの任意の適切な組合せであってよいが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストには、以下のもの、すなわち、携帯型コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、読取り専用メモリ(ROM)、消去可能なプログラマブル読取り専用メモリ(EPROMもしくはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、携帯型コンパクト・ディスク読取り専用メモリ(CD-ROM)、デジタル・バーサタイル・ディスク(DVD)、メモリ・スティック、フロッピー(R)・ディスク、パンチカードもしくは命令が記録されている溝内の隆起構造などの機械的に符号化されたデバイス、およびこれらの任意の適切な組合せが含まれる。本明細書で使用されるコンピュータ可読記憶媒体は、電波もしくは他の自由に伝搬する電磁波、導波路もしくは他の伝送媒体を伝搬する電磁波(例えば、光ファイバ・ケーブルを通過する光パルス)、または電線を介して伝送される電気信号などの、一過性の信号自体であると解釈されるべきではない。
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理デバイスにダウンロードすることができ、または、ネットワーク、例えばインターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、または無線ネットワーク、あるいはその組合せを介して、外部コンピュータまたは外部ストレージ・デバイスにダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはその組合せを含むことができる。各コンピューティング/処理デバイスにおけるネットワーク・アダプタ・カードまたはネットワーク・インターフェースが、ネットワークからコンピュータ可読プログラム命令を受信し、それらのコンピュータ可読プログラム命令を、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に格納するために転送する。
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路の構成データ、あるいはSmalltalk(R)、C++などのオブジェクト指向プログラミング言語および「C」プログラミング言語もしくは同様のプログラミング言語などの手続き型プログラミング言語を含む、1つまたは複数のプログラミング言語の任意の組合せで書かれたソース・コードまたはオブジェクト・コードであってよい。コンピュータ可読プログラム命令は、全体的にユーザのコンピュータ上で、一部がユーザのコンピュータ上で、独立型ソフトウェア・パッケージとして、一部がユーザのコンピュータ上かつ一部がリモート・コンピュータ上で、または全体的にリモート・コンピュータもしくはサーバ上で実行することができる。後者の場合、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN)もしくはワイド・エリア・ネットワーク(WAN)を含む任意の種類のネットワークを介してユーザのコンピュータに接続することができ、または(例えば、インターネット・サービス・プロバイダを使用してインターネットを介して)外部コンピュータに接続することができる。一部の実施形態において、本発明の態様を実行するために、例えば、プログラマブル論理回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)、またはプログラマブル・ロジック・アレイ(PLA)を含む電子回路が、コンピュータ可読プログラム命令の状態情報を利用して電子回路をパーソナライズすることにより、コンピュータ可読プログラム命令を実行することができる。
本発明の実施形態による方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照しながら、本発明の態様について本明細書で説明している。フローチャート図またはブロック図あるいはその両方の各ブロック、およびフローチャート図またはブロック図あるいはその両方におけるブロックの組合せは、コンピュータ可読プログラム命令によって実装できることが理解されるだろう。
これらのコンピュータ可読プログラム命令は、コンピュータまたは他のプログラマブル・データ処理装置のプロセッサを介して実行される命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/動作を実施する手段を作り出すべく、汎用コンピュータ、専用コンピュータ、または他のプログラマブル・データ処理装置のプロセッサに提供されてマシンを作り出すものであってよい。これらのコンピュータ可読プログラム命令は、命令が保存されたコンピュータ可読記憶媒体が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/動作の態様を実施する命令を含んだ製品を含むべく、コンピュータ可読記憶媒体に格納されて、コンピュータ、プログラマブル・データ処理装置、または他のデバイス、あるいはその組合せに特定の方式で機能するように指示できるものであってもよい。
コンピュータ可読プログラム命令は、コンピュータ、他のプログラマブル装置、または他のデバイスで実行される命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/動作を実施するように、コンピュータによって実行されるプロセスを作り出すべく、コンピュータ、他のプログラマブル・データ処理装置、または他のデバイスにロードされ、コンピュータ、他のプログラマブル装置、または他のデバイス上で一連の動作ステップを実行させるものであってもよい。
図中のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータ・プログラム製品の可能な実装形態のアーキテクチャ、機能、および動作を示す。これに関して、フローチャートまたはブロック図の各ブロックは、指定された論理機能を実施するための1つまたは複数の実行可能命令を含む、命令のモジュール、セグメント、または部分を表すことができる。一部の代替実装形態において、ブロックに示す機能を、図示する順序以外で行うことができる。例えば、連続して示す2つのブロックを、実際には略同時に実行することができ、または、関与する機能に応じて、それらのブロックを時として逆の順序で実行することができる。また、ブロック図またはフローチャート図あるいはその両方の各ブロック、およびブロック図またはフローチャート図あるいはその両方におけるブロックの組合せは、指定された機能もしくは動作を実行する、または専用ハードウェア命令とコンピュータ命令との組合せを実行する専用ハードウェア・ベースのシステムによって実装することができることにも留意されたい。
本明細書で使用されている用語は、特定の実施形態を説明することのみを目的としたものであり、本発明を限定することは意図していない。本明細書で使用されるとき、単数形「a」、「an」、および「the」は、文脈が他の解釈を明確に示していない限り複数形も含むことを意図している。「含む」または「含んでいる」という用語あるいはその両方は、本明細書で使用されるとき、記載されている特徴、整数、ステップ、動作、要素、または構成要素、あるいはその組合せの存在を明示するが、1つまたは複数の他の特徴、整数、ステップ、動作、要素、構成要素、またはこれらのグループ、あるいはその組合せの存在も追加も排除しないことがさらに理解されよう。
以下の特許請求の範囲内のすべてのミーンズまたはステップ・プラス・ファンクション要素の対応する構造、材料、動作、および均等物は、存在する場合、具体的に特許請求されるように、他の特許請求される要素と組み合わせて機能を実行するための任意の構造、材料、または動作を含むことが意図されている。本発明の説明は、例示および説明の目的で提示されているが、網羅的であることも、本発明を開示された形態に限定することも意図していない。本発明の範囲から逸脱することなく、多くの変更および変形形態が当業者には明らかになろう。実施形態は、本発明の原理および実際の応用を最もよく説明するために、かつ企図された特定の使用に適した様々な変更を含む様々な実施形態について、本発明を当業者が理解できるようにするために選択され説明された。

Claims (11)

  1. メモリ・セルのアレイを含む構造であって、メモリ・セルが、
    少なくとも1つの金属酸化物半導体(MOS)素子であって、前記少なくとも1つのMOS素子のソース端子が前記MOS素子のドレイン端子に接続され、前記ソース端子が前記ドレイン端子に接続されることにより、前記少なくとも1つのMOS素子が、電気エネルギーを保存するための容量性挙動を示す、前記MOS素子と、
    前記少なくとも1つのMOS素子に接続された第1のトランジスタであって、前記第1のトランジスタの活性化により、前記メモリ・セルへの書込み動作を容易にする、前記第1のトランジスタと、
    前記少なくとも1つのMOS素子に接続された第2のトランジスタであって、前記第2のトランジスタの活性化により、前記メモリ・セルからの読出し動作を容易にする、前記第2のトランジスタと
    を含む、構造。
  2. 前記メモリ・セルの列に保存されている前記電気エネルギーが蓄積されて、人工ニューラル・ネットワークの重みを表す、請求項1に記載の構造。
  3. 前記少なくとも1つのMOS素子が、第1のpチャネル金属酸化物半導体(PMOS)トランジスタ、第2のPMOSトランジスタ、第1のnチャネル金属酸化物半導体(NMOS)トランジスタ、および第2のNMOSトランジスタを含む、請求項1に記載の構造。
  4. 前記第1のPMOSトランジスタと前記第2のPMOSトランジスタとが並列に接続され、前記第1のNMOSトランジスタと前記第2のNMOSトランジスタとが並列に接続されている、請求項3に記載の構造。
  5. 前記第1のトランジスタが第1のNMOSトランジスタであり、
    前記第2のトランジスタが第2のNMOSトランジスタであり、
    前記第1のNMOSトランジスタのドレイン端子が、真ビット線(BLT)ワイヤに接続され、
    前記第1のNMOSトランジスタのソース端子が、前記少なくとも1つのMOS素子に接続され、
    前記第2のNMOSトランジスタのドレイン端子が、前記少なくとも1つのMOS素子に接続され、
    前記第2のNMOSトランジスタのソース端子が、相補ビット線(BLC)ワイヤに接続されている、請求項1に記載の構造。
  6. 前記第1のNMOSトランジスタのゲートが、第1のクロック信号によって制御され、
    前記第2のNMOSトランジスタのゲートが、第2のクロック信号によって制御され、
    前記第1のクロック信号が前記第1のNMOSトランジスタを活性化することに応答して、前記BLTワイヤからの入力が前記少なくとも1つのMOS素子に送信され、
    前記第2のクロック信号が前記第2のNMOSトランジスタを活性化することに応答して、前記BLTワイヤと前記BLCワイヤとの間の電圧差が出力される、請求項5に記載の構造。
  7. 前記少なくとも1つのMOS素子の容量をバイアスするように構成された少なくとも1つの回路をさらに含む、請求項1に記載の構造。
  8. メモリ・セルの前記アレイが不揮発性メモリと統合されている、請求項1に記載の構造。
  9. メモリ・セルの対応する列から出力された電気エネルギーを蓄積および保存するように構成された複数のアナログ回路をさらに含む、請求項1に記載の構造。
  10. メモリと、
    前記メモリと通信するように構成されたプロセッサと、
    前記メモリおよび前記プロセッサと通信するように構成された、請求項1ないし9のいずれか一項に記載の構造と
    を含む、システム。
  11. データを保存するように構成された不揮発性メモリと、
    前記不揮発性メモリに結合された、請求項1ないし9のいずれか一項に記載の構造と
    を含む、メモリ・デバイス。
JP2022533316A 2019-12-09 2020-11-20 容量性処理ユニット Pending JP2023505178A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/707,838 US11120864B2 (en) 2019-12-09 2019-12-09 Capacitive processing unit
US16/707,838 2019-12-09
PCT/IB2020/060964 WO2021116803A1 (en) 2019-12-09 2020-11-20 Capacitive processing unit

Publications (1)

Publication Number Publication Date
JP2023505178A true JP2023505178A (ja) 2023-02-08

Family

ID=76210994

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022533316A Pending JP2023505178A (ja) 2019-12-09 2020-11-20 容量性処理ユニット

Country Status (8)

Country Link
US (1) US11120864B2 (ja)
JP (1) JP2023505178A (ja)
KR (1) KR20220092524A (ja)
CN (1) CN114761973A (ja)
AU (1) AU2020399273B2 (ja)
DE (1) DE112020005262T5 (ja)
GB (1) GB2605097A (ja)
WO (1) WO2021116803A1 (ja)

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10103297A1 (de) * 2001-01-25 2002-08-22 Infineon Technologies Ag MOS-Transistor
US6911964B2 (en) * 2002-11-07 2005-06-28 Duke University Frame buffer pixel circuit for liquid crystal display
US6992927B1 (en) 2004-07-08 2006-01-31 National Semiconductor Corporation Nonvolatile memory cell
US20080310237A1 (en) 2007-06-18 2008-12-18 Nantronics Semiconductor. Inc. CMOS Compatible Single-Poly Non-Volatile Memory
US7515478B2 (en) 2007-08-20 2009-04-07 Nantronics Semiconductor, Inc. CMOS logic compatible non-volatile memory cell structure, operation, and array configuration
US10133430B2 (en) 2016-05-11 2018-11-20 Microsoft Technology Licensing, Llc Encoding data in capacitive tags
US10331190B2 (en) 2016-11-09 2019-06-25 Microsoft Technology Licensing, Llc Detecting user focus on hinged multi-screen device
US20180336139A1 (en) 2017-05-16 2018-11-22 Sandisk Technologies Llc Systems and methods for a highly-available memory
CN108073984B (zh) 2017-12-27 2021-12-31 上海闪易半导体有限公司 一种基于神经网络的存储模块及存储模组
CN110245749A (zh) 2018-03-08 2019-09-17 三星电子株式会社 用于执行同或运算的计算单元、神经网络及方法
JP2019160371A (ja) * 2018-03-14 2019-09-19 株式会社東芝 メモリ回路および電子機器
US11537841B2 (en) * 2019-04-08 2022-12-27 Samsung Electronics Co., Ltd. System and method for compact neural network modeling of transistors

Also Published As

Publication number Publication date
AU2020399273B2 (en) 2023-11-23
WO2021116803A1 (en) 2021-06-17
AU2020399273A1 (en) 2022-05-26
KR20220092524A (ko) 2022-07-01
DE112020005262T5 (de) 2022-07-28
GB202208634D0 (en) 2022-07-27
US11120864B2 (en) 2021-09-14
CN114761973A (zh) 2022-07-15
GB2605097A (en) 2022-09-21
US20210174858A1 (en) 2021-06-10

Similar Documents

Publication Publication Date Title
US20240086697A1 (en) Counter based resistive processing unit for programmable and reconfigurable artificial-neural-networks
US11361216B2 (en) Neural network circuits having non-volatile synapse arrays
JP6858870B2 (ja) 不揮発性半導体記憶素子を用いたニューラルネットワーク演算回路
US9779355B1 (en) Back propagation gates and storage capacitor for neural networks
US10755170B2 (en) Resistive processing unit with hysteretic updates for neural network training
US10360971B1 (en) Artificial neural network functionality within dynamic random-access memory
Gokmen et al. Training LSTM networks with resistive cross-point devices
US11531898B2 (en) Training of artificial neural networks
US11301752B2 (en) Memory configuration for implementing a neural network
US10692573B2 (en) Controlling aggregate signal amplitude from device arrays by segmentation and time-gating
US20190325291A1 (en) Resistive processing unit with multiple weight readers
WO2019049842A1 (ja) 不揮発性半導体記憶素子を用いたニューラルネットワーク演算回路
TWI699711B (zh) 記憶體裝置及其製造方法
US10698754B2 (en) Digital backed flash refresh
US11797833B2 (en) Competitive machine learning accuracy on neuromorphic arrays with non-ideal non-volatile memory devices
TW201937413A (zh) 具有非揮發性突觸陣列的神經網路電路
CN110651330A (zh) 二分忆阻网络中的深度学习
US11610101B2 (en) Formation failure resilient neuromorphic device
Liao et al. Weighted synapses without carry operations for RRAM-based neuromorphic systems
US11120864B2 (en) Capacitive processing unit
US11487990B2 (en) Resistive crossbar arrays with reduced numbers of elements
US20230053948A1 (en) Apparatus and method with in-memory computing
Chen Design of resistive synaptic devices and array architectures for neuromorphic computing
KR20240076869A (ko) 비트 라인의 전압 변화를 이용한 뉴런 회로

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240514