JP6931712B2 - ニューラルネットワークを動作させる装置及び方法 - Google Patents

ニューラルネットワークを動作させる装置及び方法 Download PDF

Info

Publication number
JP6931712B2
JP6931712B2 JP2019551437A JP2019551437A JP6931712B2 JP 6931712 B2 JP6931712 B2 JP 6931712B2 JP 2019551437 A JP2019551437 A JP 2019551437A JP 2019551437 A JP2019551437 A JP 2019551437A JP 6931712 B2 JP6931712 B2 JP 6931712B2
Authority
JP
Japan
Prior art keywords
neural networks
data
training
memory
shared
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.)
Active
Application number
JP2019551437A
Other languages
English (en)
Other versions
JP2020512633A5 (ja
JP2020512633A (ja
Inventor
ヴィ. リー,ペリー
ヴィ. リー,ペリー
Original Assignee
マイクロン テクノロジー,インク.
マイクロン テクノロジー,インク.
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 マイクロン テクノロジー,インク., マイクロン テクノロジー,インク. filed Critical マイクロン テクノロジー,インク.
Publication of JP2020512633A publication Critical patent/JP2020512633A/ja
Publication of JP2020512633A5 publication Critical patent/JP2020512633A5/ja
Application granted granted Critical
Publication of JP6931712B2 publication Critical patent/JP6931712B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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/54Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron

Description

本開示は、一般にメモリデバイスに関し、特に、ニューラルネットワークを動作させることに関する。
メモリデバイスは、コンピュータまたは他の電子システムにおける内部半導体集積回路として一般的に提供される。揮発性及び不揮発性メモリを含む、多くの異なるタイプのメモリがある。揮発性メモリは、そのデータ(たとえば、ホストデータ、エラーデータなど)を維持する電力を必要とする可能性があり、とりわけ、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)、及びサイリスタランダムアクセスメモリ(TRAM)を含む。不揮発性メモリは、電力を供給されないときに、格納されたデータを保持することによって永続データを提供することが可能であり、NANDフラッシュメモリ、NORフラッシュメモリ、ならびに抵抗可変メモリ、たとえば、とりわけ、相変化メモリ(PCRAM)、抵抗変化型メモリ(RRAM)、及びスピントルク注入メモリ(STT RAM)などの磁気抵抗メモリ(MRAM)を含むことが可能である。
電子システムは、インストラクション(命令)を取得して実行し、実行されたインストラクションの結果を適切な位置へ格納することができる、幾つかの処理リソース(たとえば、1つ以上のプロセッサ)を含むことが多い。プロセッサは、たとえば、データ(たとえば、1つ以上のオペランド)への演算を実行することによってインストラクションを実行するために使用されることが可能である、算術論理ユニット(ALU)回路、浮動小数点ユニット(FPU)回路、及び組み合わせ論理ブロックなどの幾つかの機能ユニットを含むことが可能である。本明細書に使用される場合、演算は、たとえば、AND、OR、NOT、NOT、NAND、NOR、及びXORなどのブール演算、及び/または他の演算(たとえば、多くの他の可能な演算の中で、反転、シフト、算術、統計)であることが可能である。たとえば、機能ユニット回路を使用して、幾つかの演算を介して、オペランドへの加算、減算、乗算、及び除算などの算術演算を実行することができる。
電子システム中の幾つかの要素は、実行のための機能ユニット回路へインストラクションを提供する際に伴われることができる。これらのインストラクションは、たとえば、コントローラ及び/またはホストプロセッサなどの処理リソースによって、実行されることができる。データ(たとえば、インストラクションを実行するオペランド)は、機能ユニット回路によってアクセス可能であるメモリアレイ中に格納されることができる。これらのインストラクション及び/またはデータは、メモリアレイから取得され、データに対してインストラクションを実行することを機能ユニット回路が開始する前に、シーケンシングを行われる、及び/またはバッファリングされることができる。さらに、異なるタイプの動作は、1つ、または複数のクロック周期において機能ユニット回路を介して実行されることができ、また、これらのインストラクション及び/またはデータの中間結果は、シーケンシングを行われる、及び/またはバッファリングされることができる。1つ以上のクロック周期において演算を完了するシーケンスは、演算周期と称されることができる。コンピューティング装置及び/またはシステムの、処理及び計算性能、ならびに消費電力の観点から、演算周期を完了するために消費される時間がかかる。
多くの例において、処理リソース(たとえば、プロセッサ及び関連した機能ユニット回路)は、メモリアレイの外側にあることができ、処理リソースとメモリアレイとの間のバスを介してデータにアクセスし、1セットのインストラクションを実行する。処理性能は、プロセッシングインメモリ(PIM)デバイスにおいて改善されることができ、この中で、処理及び/または論理リソースは、メモリ内部に、及び/またはメモリ近くに(たとえば、メモリアレイと同一のチップ上に直接に)実装されることができる。プロセッシングインメモリ(PIM)デバイスは、外部通信を減少させ排除することによって時間を節約することができ、温存することもできる。
本開示の幾つかの実施形態に従う、メモリデバイスを含む電子システムの形態における装置のブロック図である。 本開示の幾つかの実施形態に従う、アレイのバンクセクションへローカルなデータパスにおいて共有された入力/出力(I/O)線を有するメモリデバイスを含む電子システムの形態における装置の別のブロック図である。 本開示の幾つかの実施形態に従う、ニューラルネットワークを図示する概略図である。 本開示の幾つかの実施形態に従う、メモリデバイスのセンシング回路を図示する概略図であり、センシング回路が計算コンポーネントを含む。 本開示の幾つかの実施形態に従う、アレイのデータパス中で複数の共有されたI/O線についての回路を図示する概略図である。 本開示の幾つかの実施形態に従う、メモリデバイスへのコントローラの実施例を図示するブロック図である。 本開示の幾つかの実施形態に従う、メモリデバイスへのセンシング回路を図示する概略図である。 本開示の幾つかの実施形態に従う、図3に示されるセンシング回路によって実装される選択可能な論理演算結果を図示する論理テーブルである。
本開示は、ニューラルネットワークを動作させるための装置及び方法を含む。例示的な装置は、複数のニューラルネットワークを含み、複数のニューラルネットワークは、特定のデータ部分を受信するように構成され、複数のニューラルネットワークのそれぞれは、特定の期間中に特定のデータ部分に演算を行って、この特定のデータ部分の特徴についての決定を行うように構成される。いくつかの実施形態において、複数のニューラルネットワークは、プロセッシングインメモリ(PIM)アーキテクチャを含むことができる。
本開示は、独立したニューラルネットワークを使用して、データを分類することを説明する。幾つかの実施形態において、複数のニューラルネットワークは、特定のデータ部分上で同時に動作することが可能である。特定のデータ部分は、画像、画像の部分、音声、または感情であることが可能である。各ニューラルネットワークは、1つの大規模なネットワークがトレーニングされるのとは対照的に、独立してトレーニングされることが可能である。これは、各独立したニューラルネットワークが同様の、または全く異なる結果を返すことが可能であるため、より良い精度を提供することが可能である。
幾つかの実施形態において、複数のニューラルネットワークは、PIMアーキテクチャを含むことが可能である。このようなものとして、複数のニューラルネットワークは、固定点またはバイナリ重み付きネットワークをPIMデバイス上で動作させることが可能であり、複数のニューラルネットワークは、シングルビットネットワークであることが可能である。従来のアプローチは、単一の32ビットネットワークを使用して、ニューラルネットワーク機能を実行する。
幾つかの実施形態において、複数のニューラルネットワークは、特定のデータ部分を受信することが可能であり、複数のニューラルネットワークに結合されるコントローラは、複数のニューラルネットワークの結果に基づきデータ認識の精度を評価することが可能である。幾つかの実施形態において、コントローラは、投票方式を使用して、データ認識の精度を評価する。コントローラは、複数のニューラルネットワークのそれぞれから投票を受信することが可能であり、この投票は、複数のニューラルネットワークのそれぞれの特定のトレーニングに基づき重み付けされることが可能である。
幾つかの実施形態において、複数のニューラルネットワークは、センスアンプ及び計算コンポーネントを含むセンシング回路に結合されるメモリセルアレイを含むことが可能であり、センシング回路が特定のデータ部分の特徴についての決定を行う。幾つかの実施形態において、複数のニューラルネットワークは、メモリセルアレイを含み、このメモリセルアレイは、特定のデータ部分の特徴についての決定を行う、アレイと関連するデータパス計算動作についてのデータパスとして共有される複数の入力/出力(I/O)線を介してセンシング回路に結合される。
本開示の以下の詳細な説明において、参照は、本明細書の一部を形成する添付の図面に行われ、そしてその中で本開示の1つ以上の実施形態を実施することができる方法の説明として示される。これらの実施形態は、当業者が本開示のこれらの実施形態を実施することが可能であるように十分に詳細に記載され、そして本開示の範囲から逸脱することなく、他の実施形態を利用することができること、ならびにプロセスの変化、電気的な変化、及び構造的な変化を行うことができることが理解されるであろう。
本明細書に使用される場合、特に図面中の参照番号に関する、「X」、「Y」、「N」、「M」などの指定子は、そのように指定される幾つかの特定の特徴を含むことが可能であることを示す。また、本明細書に使用される専門用語が特定の実施形態のみを説明する目的のためのものであり、限定的であることが意図されないことを理解するであろう。本明細書に使用される場合、単数形態、「a」、「an」、及び「the」は、文脈が明らかに別段に指示しない限り、単数及び複数の両方の指示対象を含むことが可能である。加えて、「幾つかの(a number of)」、「少なくとも1つの」、及び「1つ以上の」(たとえば、幾つかのメモリアレイ(a number of memory arrays))は、1つ以上のメモリアレイを指すことが可能であるが、「複数の(a plurality of)」は、のようなもののうちの1つよりも多くを指すことが意図される。さらに、単語「ことが可能である」、及び「ことができる」は、強制的な意味(すなわち、しなければならない)ではなく、許容的な意味(すなわち、可能性を有する、ことができる)で本出願全体を通して使用される。用語「含む」、及びその派生語は、「それを含むが、それに限定されない」ことを意味する。用語「結合される」、及び「結合する」は、文脈に応じて、物理的に、またはコマンド及び/またはデータへのアクセス、及びこれらの移動(伝送)のために、直接的に、もしくは間接的に接続されることを意味する。用語「データ」及び「データ値」は、文脈に応じて、本明細書において互換的に使用され、同一の意味を有することが可能である。
本明細書に記載されるように、複数の共有されたI/O線155は、各アレイに結合される選択論理を介してメモリセルの、複数のサブアレイ、バンクセクション、象限、ロウ、及び/または特定のカラムによって選択可能に共有されることが可能である。たとえば、センシング回路150及び/または追加のラッチ170は、幾つかのカラム(たとえば、八(8)、十六(16)など、カラムの総数のカラムサブセット)の選択可能なサブセットのそれぞれについて、センスアンプ及び選択論理を含み、複数の共有されたI/O線のデータパス中の、計算ユニット中の複数の計算コンポーネント131−1、...、131−M、及び/または論理ストライプ124−1、...、124−Nへ移動するデータ値について複数の共有されたI/O線155のそれぞれに選択可能に結合されることが可能である。いくつかの実施形態において、複数の共有されたI/O線155のそれぞれに選択可能に結合される複数の計算コンポーネント131−1、...、131−Mは、複数の共有されたI/O線に選択可能に結合されるカラム数、たとえば、2K、1Kなどに対応することが可能である。単数形態「a」、「an」、及び「the」が本明細書において単数形及び複数形の両方の指示対象を含むことが可能であるため、文脈が明確に別段に指示しない限り、「共有されたI/O線」を使用して、「共有されたI/O線の相補対」を指すことが可能である。さらに、「共有されたI/O線」は、「複数の共有されたI/O線」の省略形である。
本明細書において図面は、最初の単一の数字、または複数の数字が図番に対応し、残りの数字が図面中の要素または構成要素を識別する、番号付け慣習に従う。異なる図面間の類似した要素または構成要素は、類似した数字の使用によって識別されることができる。たとえば、108は、図1A中の要素「08」を参照することができ、類似した要素は、図2中の208として参照されることができる。理解されるように、本明細書においてさまざまな実施形態に示される要素は、本開示の幾つかの追加の実施形態を提供するために、加えられる、交換される、及び/または除外されることが可能である。加えて、図面に提供される要素の比例尺度及び/または相対尺度は、本開示のある特定の実施形態を図示することを意図し、限定的な意味に取るべきではない。
図1Aは、本開示の幾つかの実施形態に従う、メモリアレイ130を含むメモリデバイス120を含むコンピューティングシステム100の形態における装置のブロック図である。本明細書に使用される場合、メモリデバイス120、コントローラ140、メモリアレイ130、センシング回路150、及び/または幾つかの追加のラッチ170も、別々に「装置」とみなされることができる。
本明細書に使用される場合、追加のラッチは、アレイ中でメモリセルのデータ値を感知する、結合する、及び/または移動させる(たとえば、読み出す、格納する、キャッシュする)追加の機能(たとえば、増幅器、選択論理)と、図1B、図3〜図4及び図6〜図7に示される複数の共有されたI/O線155のデータパス中の計算ユニット中の、複数の計算コンポーネント131−1、...、131−M及び/または論理ストライプ124−1、...、124−Nと異なる追加の機能とを意味することが意図される。図1Bに示されるように、アレイにローカルな複数の共有された入力/出力(I/O)線155のデータパス中の論理ストライプ124−1、...、124−Nは、バンク121−1中のメモリセルのさまざまなバンクセクション123−1、...、123−Nと関連することができる。バンク121−1は、メモリデバイス120上の複数のバンクのうちの1つであることができる。
図1A中のシステム100は、メモリデバイス120に結合される(たとえば、接続される)ホスト110を含む。ホスト110は、さまざまなタイプのホストの中の、パーソナルラップトップコンピュータ、デスクトップコンピュータ、デジタルカメラ、スマートフォン、またはメモリカードリーダーなどのホストシステムであることが可能である。ホスト110は、システムマザーボード及び/またはバックプレーンを含むことが可能であり、幾つかの処理リソース(たとえば、1つ以上のプロセッサ、マイクロプロセッサ、またはいくつかの他のタイプの制御回路)を含むことが可能である。システム100は、別々の集積回路を含むことが可能である、またはホスト110及びメモリデバイス120の両方は、同一の集積回路上にあることが可能である。このシステム100は、たとえば、サーバシステム及び/またはハイパフォーマンスコンピューティング(HPC)システム及び/またはそれらの一部であることが可能である。図1Aに示される実施例は、ノイマン型を有するシステムを図示するが、本開示の実施形態は、ノイマン型と関連することが多い1つ以上のコンポーネント(たとえば、CPU、ALUなど)を含まないことができる、非ノイマン型に実装されることが可能である。
明確さのために、システム100は、本開示に特に関連する特徴に焦点を合わせるために簡略化されている。メモリアレイ130は、アレイのタイプの中の、DRAMアレイ、SRAMアレイ、STT RAMアレイ、PCRAMアレイ、TRAMアレイ、RRAMアレイ、NANDフラッシュアレイ、及び/またはNORフラッシュアレイであることが可能である。アレイ130は、アクセス線(ワード線または選択線と本明細書において称されることができる)によって結合されるロウ(行)、及びセンス線(データ線またはデジット線と本明細書において称されることができる)によって結合されるカラム(列)に配置されるメモリセルを含むことが可能である。単一アレイ130が図1Aに示されるが、実施形態は、そのように限定されない。たとえば、メモリデバイス120は、幾つかのアレイ130(たとえば、DRAMセル、NANDフラッシュセルなどの幾つかのバンク)を含むことができる。
メモリデバイス120は、I/O回路144によってデータバス156(たとえば、ホスト110に接続されるI/Oバス)経由で提供される(たとえば、外部ALU回路へ、及び/またはDRAM DQへローカルI/O線及びグローバルI/O線を介して提供される)アドレス信号をラッチするアドレス回路142を含むことが可能である。本明細書に使用される場合、DRAM DQは、バンクへのデータの入力及び/またはバンクからのデータの出力(たとえば、コントローラ140及び/またはホスト110から、及び/またはこれらへ)を、バス(たとえば、データバス156)を介して可能にすることができる。書き込み動作中に、電圧(high=1、low=0)は、DQ(たとえば、ピン)へ印加されることが可能である。この電圧は、適切な信号に変換され、選択されたメモリセルに格納されることが可能である。読み出し動作中に、アクセスが完了し、出力が有効にされる(たとえば、出力イネーブル信号がlowになることによって)と、選択されたメモリセルから読み出されるデータ値は、DQに現れることが可能である。他のときに、DQが電流を供給せず、または下げず、信号をシステムへ提示しないように、DQは、高インピーダンス状態にあることが可能である。また、本明細書に記載されるように、2つ以上のデバイス(たとえば、バンク)が組み合わされたデータバスを共有するときに、これは、DQ競合を減少させることができる。これらのようなDQは、アレイ130にローカルなデータパス中で複数の共有されたI/O線155(図1B中の)とは別であり、これらと異なる。
ステータス及び例外情報は、順にチャネルコントローラ143からホスト110へ提供されることが可能である、たとえば、高速インタフェース(HSI)などのアウトオブバンド(OOB)バス157を介して、メモリデバイス120のコントローラ140からチャネルコントローラ143へ提供されることが可能である。チャネルコントローラ143は、論理コンポーネントを含むことが可能であり、論理コンポーネントは、各それぞれのバンクのアレイ中の複数の位置(たとえば、サブアレイについてのコントローラ)を割り当て、複数のメモリデバイス120のそれぞれについての動作と関連するさまざまなバンクについての、バンクコマンド、(たとえば、動作シーケンスについての)アプリケーションインストラクション、及び実引数(PIMコマンド)を格納する。チャネルコントローラ143は、コマンド(たとえば、PIMコマンド)を複数のメモリデバイス120へディスパッチし、これらのプログラムインストラクションをメモリデバイス120の所与のバンク121(図1B)内に格納することが可能である。
アドレス回路142を介してアドレス信号を受信し、ロウ復号器(行デコーダ)146、及びカラム復号器(列デコーダ)152によってアドレス信号を復号し、メモリアレイ130にアクセスする。センシング回路150の、本明細書に記載されるような、幾つかのセンスアンプを使用してセンス線(デジット線)上での電圧及び/または電流の変化を感知することによって、データをメモリアレイ130から感知する(読み出す)ことが可能である。センスアンプは、データのページ(たとえば、ロウ)をメモリアレイ130から読み出し、ラッチすることが可能である。追加の計算回路は、本明細書に記載されるように、センシング回路150に結合されることが可能であり、センスアンプと組み合わせて使用され、データを感知する、データを格納する(たとえば、キャッシュする、及び/またはバッファリングする)、データの計算機能(たとえば、演算)を実行する、及び/またはデータを移動させることが可能である。I/O回路144は、データバス156(たとえば、64ビット幅データバス)経由でホスト110との双方向データ通信のために使用されることが可能である。書き込み回路148を使用して、データをメモリアレイ130へ書き込むことが可能である。
コントローラ140(たとえば、図5に示されるバンク制御論理、シーケンサ及びタイミング回路)は、ホスト110から制御バス154によって提供される信号(たとえば、コマンド)を復号することが可能である。これらの信号は、チップイネーブル信号、書き込みイネーブル信号、及び/またはアドレスラッチ信号を含むことが可能であり、これらの信号は、動作の中でも、データ感知、データ格納、データ移動(たとえば、データ値をコピーすること、転送すること、及び/または移送すること)、データ書き込み、及び/またはデータ消去の動作を含む、メモリアレイ130上で実行される動作を制御するために使用されることが可能である。さまざまな実施形態において、コントローラ140は、ホスト110からのインストラクションを実行し、メモリアレイ130にアクセスすることに応答可能であることができる。コントローラ140は、ステートマシン、シーケンサ、またはいくつかの他のタイプのコントローラであることが可能である。コントローラ140は、アレイ(たとえば、メモリアレイ130)のロウ中のデータをシフトする(たとえば、右方向または左方向)ことを制御し、マイクロコードインストラクションを実行し、たとえば、AND、OR、NOR、XOR、加算、減算、乗算、除算などの計算動作(演算)などの動作を実行することが可能である。
センシング回路150の実施例は、さらに以下に(たとえば、図3及び図4中に)記載される。たとえば、いくつかの実施形態において、センシング回路150は、幾つかのセンスアンプ、及び幾つかの計算コンポーネントを含むことが可能であり、これらは、アキュムレータとして機能することができ、各サブアレイ中で(たとえば、相補的センス線と関連するデータへの演算を実行するために使用されることが可能である。
いくつかの実施形態において、センシング回路150を使用して、センス線アドレスアクセスを介してデータを転送することなく(たとえば、カラム復号信号を発することなく)、入力としてメモリアレイ130に格納されデータを使用して演算を実行し、メモリアレイ130中の異なる位置へコピー、転送、移送、書き込み、論理、及び/またはストレージ動作についてのデータの移動に関与することが可能である。このようなものとして、さまざまな計算機能は、センシング回路150の外部の処理リソースによって(たとえば、コントローラ140または他の箇所の上など、デバイス120上に位置している、ホスト110と関連するプロセッサ、及び/またはALU回路などの他の処理回路によって)実行されるよりもむしろ(またはこれらによって実行されることと関連して)、センシング回路150を使用し、センシング回路150内で実行されることが可能である。しかしながら、さらに、本開示に従う実施形態は、アレイのロウから計算ユニット中の複数の計算コンポーネント131−1、...、131−M、及び/または論理ストライプ124−1、...、124−Nへ移動するデータ値に対して計算機能を実行する。そして一例として、実施形態に従えば、計算動作(演算)、アレイ中ロウを起動するために必要とされる60ナノ秒(ns)の例示的な時間と比較して、データ値を移動させロウに返すことを必要とせずに、2ナノ秒(ns)の速度で計算ユニットにおいて制御されることができる。
さまざまな従来のアプローチにおいて、オペランドと関連するデータは、たとえば、センシング回路を介してメモリから読み出され、外部ALU回路へI/O線を介して(たとえば、ローカルI/O線、及び/またはグローバルI/O線を介して)提供される。外部ALU回路は、幾つかのレジスタを含むことが可能であり、オペランドを使用して計算機能を実行し、結果は、I/O回路144を介してアレイへ転送され、返される。
これに対し、本開示に従う実施形態は、アレイにローカルなデータパス中の計算ユニットにおいて、複数の共有されたI/O線155を介してアレイのロウから、複数の計算コンポーネント131−1、...、131−M、及び/または論理ストライプ124−1、...、124−Nへ移動したデータ値に対して計算機能を実行する。加えて、センシング回路150は、センシング回路150に結合されI/O線(たとえば、ローカルI/O線)を有効にせずに、メモリアレイ130に格納されデータ演算を実行し、その結果をメモリアレイ130へ返して格納するように構成されることができる。しかしながら、ロードされると、計算動作は、アレイ中のロウを起動するために必要とされる例示的な時間、たとえば、60ナノ秒(ns)と比較して、データ値をロウに移動させて返すことを必要とせずに、さらにより高速に、たとえば、2ナノ秒(ns)の速度で、計算ユニットにおいて制御されることができる。センシング回路150は、アレイのメモリセルに関するピッチ上に形成されることが可能である。複数の共有されたI/O線155のデータパスと関連する、複数の計算コンポーネント131−1、...、131−M、及び/または論理ストライプ124−1、...、124−Nは、データパスのピッチと等しいピッチを有し、それは、メモリセルのアレイへのデジット線のピッチの関数である。たとえば、計算コンポーネントは、メモリセルのアレイへのデジット線のピッチの整数倍であるピッチを有する。
たとえば、本明細書に記載されるセンシング回路150は、1対の相補的センス線(たとえば、デジット線)と同一のピッチ上に形成されることが可能である。実施例として、1対の相補的メモリセルは、6F(たとえば、3F×2F)ピッチを有するセルサイズを有することができ、ここでFは、フィーチャサイズである。相補的メモリセルについての1対の相補的センス線のピッチが3Fである場合、ピッチ上にあるセンシング回路は、センシング回路(たとえば、相補的センス線のそれぞれの対ごとのセンスアンプ、及び対応する計算コンポーネント)が相補的センス線の3Fピッチ内で適合するように形成されることを示す。同様に、複数の共有されたI/O線155のデータパスと関連する、計算コンポーネント131−1、...、131−M、及び/または論理ストライプ124−1、...、124−Nは、相補的センス線の3Fピッチの関数であるピッチを有する。たとえば、計算コンポーネント131−1、...、131−M、及び/または論理ストライプ124−1、...、124−Nは、メモリセルのアレイへのデジット線の3Fピッチの整数倍であるピッチを有する。
これに対し、さまざまな従来のシステムの処理リソース(複数可)(たとえば、ALUなどの計算エンジン)の回路は、メモリアレイと関連するピッチルールを準拠していない可能性がある。たとえば、メモリアレイのメモリセルは、4Fまたは6Fのセルサイズを有することができる。このようなものとして、従来のシステムのALU回路と関連するデバイス(たとえば、論理ゲート)は、メモリセルに関するピッチ上に(たとえば、センス線と同一のピッチ上に)形成されることができない可能性があり、これは、たとえば、チップサイズ及び/またはメモリ密度に影響する可能性がある。いくつかのコンピューティングシステム及びサブシステム(たとえば、中央処理装置(CPU))のコンテキストにおいて、データは、本明細書に記載されるように、メモリ(たとえば、アレイ中のメモリセル)に関する、ピッチ上に、及び/またはチップ上ではない位置において処理されることができる。たとえば、データは、たとえば、メモリに関するピッチ上よりもむしろ、ホストと関連する処理リソースによって処理されることができる。
このようなものとして、幾つかの実施形態において、センシング回路150がそのような計算機能を実行するための適切な動作を実行することが可能である場合に、または外部処理リソースの使用なしでアレイにローカルな複数の共有されたI/O線のデータパスにおいてそのような動作を実行することが可能である場合に、アレイ130及びセンシング回路150の外部の回路は、計算機能を実行するために必要とされない。したがって、複数の共有されたI/O線155のデータパス中の計算ユニットにおいて、センシング回路150、及び/または複数の計算コンポーネント131−1、...、131−M、及び/または論理ストライプ124−1、...、124−Nを使用して、そのような外部処理リソース(またはそのような外部処理リソースの少なくとも帯域幅消費)を、少なくともある程度、相補する、または置換することができる。いくつかの実施形態において、複数の共有されたI/O線155のデータパス中の計算ユニットにおいてセンシング回路150、及び/または複数の計算コンポーネント131−1、...、131−M、及び/または論理ストライプ124−1、...、124−Nは、外部処理リソース(たとえば、ホスト110)によって実行される動作に加えて、(たとえば、インストラクションを実行するための動作を実行するのに使用されることができる。たとえば、ホスト110及び/またはセンシング回路150は、ある特定の動作、及び/またはある特定の数の動作のみを実行するように限定される可能性がある。
本明細書に記載される演算は、プロセッシングインメモリ(PIM)対応デバイスと関連する演算を含むことが可能である。PIM対応デバイスの演算は、ビットベクトルベースの演算を使用することが可能である。本明細書に使用される場合、用語「ビットベクトル」は、メモリセルのアレイのロウ中に物理的に連続して格納されるビットベクトルメモリデバイス(たとえば、PIMデバイス)上で物理的に連続したビット数を意味することが意図される。したがって、本明細書に使用される場合、「ビットベクトル演算」は、仮想アドレス空間の連続した部分(たとえば、PIMデバイスによって使用される)であるビットベクトルに対して実行される演算を意味することが意図される。たとえば、PIMデバイス中の仮想アドレス空間のロウは、16Kビットのビット長(たとえば、DRAM構成中のメモリセルの16Kの相補対に対応する)を有することができる。本明細書に記載されるような、このような16Kビットロウについてのセンシング回路150は、16ビットロウ中の対応するメモリセルに選択可能に結合されるセンス線に関するピッチ上に形成される、対応する16Kの処理要素(たとえば、本明細書に記載されるような、計算コンポーネント)を含むことができる。PIMデバイス中の計算コンポーネントは、センシング回路150によって感知される(たとえば、本明細書に記載されるように、計算コンポーネントと対になるセンスアンプによって感知される、及び/またはこれに格納される)メモリセルのロウのビットベクトルの単一ビット上の1ビット処理要素(PE)として演算することができる。同様に、複数の共有されたI/O線155のデータパス中の計算ユニットにおける複数の計算コンポーネント131−1、...、131−M、及び/または論理ストライプ124−1、...、124−Nは、アレイにおいて感知されるメモリセルのロウのビットベクトルの単一ビット上で1ビット処理要素(PE)として演算することができる。
I/O線を有効にすることは、復号信号(たとえば、カラム復号信号)に結合されるゲートと、I/O線に結合されるソース/ドレインとを有するトランジスタを有効にする(たとえば、オンにする、起動させる)ことを含むことが可能である。しかしながら、実施形態は、I/O線を有効にしないことに限定されない。たとえば、幾つかの実施形態において、センシング回路(たとえば、150)を使用して、アレイのカラム復号線を有効にすることなく演算を実行することが可能である。
しかしながら、計算動作がさらにより高速に制御されることができる複数の共有されたI/O線155のデータパス中の計算ユニットにおいて、複数の計算コンポーネント131−1、...、131−M、及び/または論理ストライプ124−1、...、124−Nへデータ値をロードするために、複数の共有されたI/O線155を有効にすることができる。たとえば、計算ユニット中の複数の計算コンポーネント131−1、...、131−M、及び/または論理ストライプ124−1、...、124−Nにおいて、計算動作は、2ナノ秒(ns)の速度で実行されることができる。この速度向上は、アレイ中のロウを起動する際に使用される関連した時間、たとえば、60ナノ秒(ns)でロウにデータ値を移動させて返す必要がないことに起因することが可能である。
図1Bは、本開示の幾つかの実施形態に従う、メモリデバイスのバンク121−1のブロック図である。たとえば、バンク121−1は、メモリデバイス120の例示的なバンクを表すことが可能である。図1Bに示されるように、バンク121−1は、複数のメインメモリカラム(Xとして水平方向に示される)(たとえば、例示的なDRAMバンク中の16,384個のカラム)を含むことが可能である。加えて、バンク121−1は、バンクセクション(たとえば、32個のサブアレイの象限)123−1、123−2、...、123−Nまで分割されることができる。各バンクセクションは、複数の共有されたI/O線155のデータパス中の計算ユニット中の論理ストライプ124−1、...、124−Nにおける複数の計算コンポーネント131−1、...、131−Mと関連することができる。バンクセクション123−1、...、123−Nのそれぞれは、複数のロウ(Yとして垂直方向に示される)(たとえば、各セクションは例示的なDRAMバンク中に512個のロウをそれぞれ含むことができる32個のサブアレイを含む象限であることができる)を含むことが可能である。例示的な実施形態は、本明細書に記載されるカラム及びロウの例示的な水平方向及び/または垂直方向、またはそれらの例示的な数に限定されない。
図1Bに示されるように、バンク121−1は、複数のバンクセクション123−1、...、123−Nに分割されることが可能である。各バンクセクションは、それらと関連する複数の共有されたI/O線155のデータパス中の計算ユニットにおいて複数の計算コンポーネント131−1、...、131−M、及び論理ストライプ124−1、...、124−Nを有することが可能である。バンク121−1は、コントローラ140を含み、該コントローラは、複数の共有されたI/O線155のデータパス中の計算ユニット中の論理ストライプ124−1、...、124−Nにおいて複数の計算コンポーネント131−1、...、131−Mへロードされるデータ値への演算を指示することが可能である。
図2は、本開示の幾つかの実施形態に従うニューラルネットワークを示す概略図である。コントローラ240は、図1Aに示されるコントローラ140に対応することが可能である。
図2の例示的な実施形態に示されるように、メモリデバイス220中の複数のニューラルネットワーク296−1、...、296−Mは、特定のデータ部分を受信することが可能であり、複数のニューラルネットワーク296−1、...、296−Mに結合されるコントローラ240は、複数のニューラルネットワーク296−1、...、296−Mの結果に基づきデータ認識の精度を評価することが可能である。幾つかの実施形態において、複数のニューラルネットワーク296−1、...、296−Mは、特定のデータ部分に演算を行うインストラクションを同時に受信することが可能である。
幾つかの実施形態において、コントローラ240は、投票方式を使用して、データ認識の精度を評価する。コントローラ240は、複数のニューラルネットワーク296−1、...、296−Mのそれぞれから投票を受信することが可能である。複数のニューラルネットワーク296−1、...、296−Mのそれぞれからの投票は、コントローラ240によって重み付けされることが可能である。複数のニューラルネットワーク296−1、...、296−Mのそれぞれからの投票は、複数のニューラルネットワーク296−1、...、296−Mのそれぞれの特定のトレーニングに基づき重み付けされることが可能である。画像データについての複数のニューラルネットワーク296−1、...、296−Mのそれぞれの特定のトレーニングは、たとえば、ぼやけた画像、低照度画像、人物の画像、ネコの画像、ナンバープレート(license plate)の画像などのデータ認識を含むことが可能である。複数のニューラルネットワーク296−1、...、296−Mのうちの1つは、イヌを識別することに関して精度が高く、ネコを識別する際に精度が低いようにトレーニングされ、画像がネコを示していることを投票し、かつ複数のニューラルネットワーク296−1、...、296−Mのうちの2番目は、ネコに関して精度が高いようにトレーニングされ、かつ画像がネズミを示していることを投票する場合、コントローラは、複数のニューラルネットワーク296−1、...、296−Mのそれぞれの特定のトレーニングに基づき投票を評価し、出力を提供することが可能である。この場合、複数のニューラルネットワーク296−1、...、296−Mの1番目は犬を識別する精度が高いようにトレーニングされ、ネコを識別しており、かつ複数のニューラルネットワーク296−1、...、296−Mの2番目は猫を識別する精度が高いようにトレーニングされ、ネコを識別しなかったため、コントローラは、ネコに有利に評価しないであろう。投票方式は、多数決原理であることが可能であり、そこで複数のニューラルネットワーク296−1、...、296−Mの大多数は、結果に賛成する。投票方式は、平均であることが可能であり、そこで各ニューラルネットワークの結果を平均する。代替に、複数のニューラルネットワーク296−1、...、296−Mの中で結果に一律の決定がない場合、出力を破棄することが可能である。この投票方式の下で、複数のニューラルネットワーク296−1、...、296−Mのそれぞれは、コントローラ240に対して同一の結果を投票で決定し、出力を提供しなければならない。
幾つかの実施形態において、複数のニューラルネットワーク296−1、...、296−Mは、データの一部を受信し、特定のデータ部分の特徴を決定し、この特徴のトレーニング信頼係数を決定する。複数のニューラルネットワーク296−1、...、296−Mは、複数のニューラルネットワークのそれぞれのトレーニングに基づき特徴のトレーニング信頼係数を決定することが可能である。複数のニューラルネットワーク296−1、...、296−Mに結合されるコントローラ240は、複数のニューラルネットワークのそれぞれのトレーニング信頼係数に基づきデータ認識の精度を評価することが可能である。コントローラ240は、データ認識の精度に基づき特定のデータ部分の特徴を決定することが可能である。
幾つかの実施形態において、複数のニューラルネットワーク296−1、...、296−Mのそれぞれは、128メガバイト(MB)以下であることが可能である。加えて、複数のニューラルネットワーク296−1、...、296−Mをオフラインでトレーニングすることが可能である。
図3は、本開示の幾つかの実施形態に従う、センシング回路350を示す概略図である。センシング回路350は、図1Aに示されるセンシング回路150に対応することが可能である。
図3の例示的な実施形態に示されるように、メモリセルは、ストレージ要素(たとえば、コンデンサ)及びアクセスデバイス(たとえば、トランジスタ)を含むことが可能である。たとえば、第一メモリセルは、トランジスタ302−1及びコンデンサ(キャパシタ)303−1を含むことが可能であり、第二メモリセルは、トランジスタ302−2及びコンデンサ303−2などを含むことが可能である。この実施形態において、メモリアレイ330は、1T1B(トランジスタ1個、コンデンサ1個)メモリセルのDRAMアレイであるが、構成の他の実施形態は、使用されることが可能である(たとえば、メモリセル1個あたりトランジスタ2個及びコンデンサ2個を含む2T2C)。幾つかの実施形態において、メモリセルは、破壊読み出しメモリセルであることができる(たとえば、読み出された後に、セルに最初に格納されていたデータをリフレッシュするように、セルに格納されているデータを読み出し、データを破壊する)。
メモリアレイ330のセルは、アクセス(ワード)線304−X(Row X)、304−Y(Row Y)などによって結合されるロウと、相補的センス線(たとえば、図3に示されるデジット線DIGIT(D)及びDIGIT(D)_)の対によって結合されるカラムとに配置されることが可能である。また、相補的センス線の各対に対応する個々のセンス線は、それぞれ、DIGIT(D)についてのデジット線305−1、及びDIGIT(D)_についてのデジット線305−2、または図4中の対応する参照番号と称されることが可能である。相補的デジット線の1対のみを図3に示すが、本開示の実施形態は、そのように限定されず、メモリセルのアレイは、メモリセルの追加のカラム及びデジット線(たとえば、4,096、8,192、16,384など)を含むことが可能である。
平面において直交方向に向けられるようにロウ及びカラムを図示するが、実施形態は、そのように限定されない。たとえば、ロウ及びカラムは、いずれかの実現可能な三次元構成において互いに関して向けられることができる。たとえば、ロウ及びカラムは、可能な三次元構成の中でも、互いに関していずれかの角度に向けられることができ、実質的に水平面、または実質的に垂直面に向けられることができ、及び/または折り畳みトポロジに向けられることができる。
メモリセルは、異なるデジット線及びワード線に結合されることが可能である。たとえば、トランジスタ302−1の第一ソース/ドレイン領域は、デジット線305−1(D)に結合されることが可能であり、トランジスタ302−1の第二ソース/ドレイン領域は、コンデンサ303−1に結合されることが可能であり、トランジスタ302−1のゲートは、ワード線304−Yに結合されることが可能である。トランジスタ302−2の第一ソース/ドレイン領域は、デジット線305−2(D)_に結合されることが可能であり、トランジスタ302−2の第二ソース/ドレイン領域は、コンデンサ303−2に結合されることが可能であり、トランジスタ302−2のゲートは、ワード線304−Xに結合されることが可能である。セルプレートは、図3に示されるように、コンデンサ303−1及び303−2のそれぞれに結合されることが可能である。セルプレートは、共通ノードであることが可能であり、さまざまなメモリアレイ構成において基準電圧(たとえば、接地)をこの共通ノードへ印加することが可能である。
メモリアレイ330は、本開示の幾つかの実施形態に従う、センシング回路350に結合するように構成される。この実施形態において、センシング回路350は、メモリセルのそれぞれのカラムに対応する(たとえば、相補的デジット線のそれぞれの対に結合される)、センスアンプ306及び計算コンポーネント331を備える。センスアンプ306は、1対の相補的デジット線305−1及び305−2に結合されることが可能である。計算コンポーネント331は、パスゲート307−1及び307−2を介してセンスアンプ306へ結合されることが可能である。パスゲート307−1及び307−2のゲートは、動作選択論理313に結合されることが可能である。
動作選択論理313は、センスアンプ306と計算コンポーネント331との間で置換されない1対の相補的デジット線を結合するパスゲートを制御するためのパスゲート論理と、センスアンプ306と計算コンポーネント331との間で置換される1対の相補的デジット線を結合するスワップゲートを制御するためのスワップゲート論理とを含むように構成されることが可能である。また動作選択論理313は、1対の相補的デジット線305−1及び305−2に結合されることが可能である。動作選択論理313は、選択された動作に基づきパスゲート307−1及び307−2の連続性を制御するように構成されることが可能である。
センスアンプ306は、選択されたメモリセルに格納されるデータ値(たとえば、論理状態)を決定するように動作することが可能である。センスアンプ306は、本明細書において一次ラッチと称されることが可能である、交差結合されたラッチを備えることが可能である。図3に示される実施例において、センスアンプ306に対応する回路は、1対の相補的デジット線D305−1及び(D)_305−2に結合される、4個のトランジスタを含む、ラッチ315を備える。しかしながら、実施形態は、この実施例に限定されない。ラッチ315は、nチャネルトランジスタ(たとえば、NMOSトランジスタ)327−1及び327−2などの、交差結合されたラッチ(たとえば、1対のトランジスタのゲート)であることが可能であり、pチャネルトランジスタ(たとえば、PMOSトランジスタ)329−1及び329−2などの、別の1対のトランジスタのゲートと交差結合される。トランジスタ327−1、327−2、329−1、及び329−2を備える交差結合されたラッチ315は、一次ラッチと称されることが可能である。
動作中に、メモリセルを感知している(たとえば、読み出している)ときに、デジット線305−1(D)または305−2(D)_のうちの1つにおける電圧は、デジット線305−1(D)または305−2(D)_のうちのもう1つにおける電圧よりわずかに大きい。ACT信号及びRNL信号は、センスアンプ306を有効にする(たとえば、起動させる)ためにlowで駆動されることが可能である。より低電圧を有するデジット線305−1(D)または305−2(D)_は、PMOSトランジスタ329−1または329−2のうちの一方を、PMOSトランジスタ329−1または329−2の他方より大きい程度へオンにすることにより、より高電圧を有するデジット線305−1(D)または305−2(D)_を、他方のデジット線305−1(D)または305−2(D)_がhighで駆動するより大きい程度へhighで駆動する。
同様に、より高電圧を有するデジット線305−1(D)または305−2(D)_は、NMOSトランジスタ327−1または327−2のうちの一方を、NMOSトランジスタ327−1または327−2のうちの他方より大きい程度へオンにすることにより、より低電圧を有するデジット線305−1(D)または305−2(D)_を、他方のデジット線305−1(D)または305−2(D)_がlowで駆動するより大きい程度へlowで駆動する。結果として、短い遅延後、わずかにより大きな電圧を有するデジット線305−1(D)または305−2(D)_は、ソーストランジスタを通して供給電圧VCCの電圧へ駆動され、他方のデジット線305−1(D)または305−2(D)_は、シンクトランジスタを通して基準電圧(たとえば、接地)の電圧へ駆動される。したがって、交差結合されたNMOSトランジスタ327−1及び327−2、ならびにPMOSトランジスタ329−1及び329−2は、センスアンプ対として機能し、それはデジット線305−1(D)及び305−2(D)_上で電圧を増幅させ、選択されたメモリセルから感知されるデータ値をラッチするように動作する。
実施形態は、図3に示されるセンスアンプ306の構成に限定されない。実施例として、センスアンプ306は、電流モードセンスアンプ、及びシングルエンドセンスアンプ(たとえば、1つのデジット線に結合されるセンスアンプ)であることが可能である。また、本開示の実施形態は、図3に示されるもののような、折り畳みデジット線アーキテクチャに限定されない。
センスアンプ306は、計算コンポーネント331と合わせて、入力としてアレイからのデータを使用してさまざまな演算を実行するように動作することが可能である。幾つかの実施形態において、演算の結果は、デジット線アドレスアクセスを介してデータを転送することなく(たとえば、ローカルI/O線を介してアレイ及びセンシング回路から外部の回路へデータを転送するようにカラム復号信号を発することなく)アレイへ返され格納されることが可能である。よって、本開示の幾つかの実施形態は、さまざまな従来のアプローチより少ない電力を使用してそれらと関連する動作及び計算機能を実行することを可能にすることができる。加えて、幾つかの実施形態では、(たとえば、メモリと別個のプロセッサとの間で)計算機能を実行するためにローカル及びグローバルI/O線を介してデータを転送する必要排除されることから、幾つかの実施形態従来のアプローチと比較して、増加した(たとえば、より高速の)処理能力を可能にすることができる。
センスアンプ306は、デジット線305−1(D)及び305−2(D)_を平衡にするように構成されることが可能である、平衡化回路314をさらに含むことが可能である。この実施例において、平衡化回路314は、デジット線305−1(D)と305−2(D)_との間に結合されるトランジスタ324を備える。また、平衡化回路314は、平衡電圧(たとえば、VDD/2)に結合される第一ソース/ドレイン領域をそれぞれ有するトランジスタ325−1及び325−2を備え、ここでVDDは、アレイと関連する供給電圧である。トランジスタ325−1の第二ソース/ドレイン領域は、デジット線305−1(D)に結合されることが可能であり、トランジスタ325−2の第二ソース/ドレイン領域は、デジット線305−2(D)_に結合されることが可能である。トランジスタ324、325−1、及び325−2のゲートは、互いに結合されかつ、平衡化(EQ)制御信号線326に結合されることが可能である。よって、EQをアクティブにすること、トランジスタ324、325−1、及び325−2を有効にし、これにより、デジット線305−1(D)及び305−2(D)_を互いに短絡させ、かつ、平衡電圧(たとえば、VCC/2)へ事実上短絡させる。
図3が平衡化回路314を備えるセンスアンプ306を示すが、実施形態は、そのように限定されず、平衡化回路314は、センスアンプ306から別個に実装される、図3に示されるものと異なる構成に実装される、または全く実装されないことができる。
さらに以下に記載されるように、幾つかの実施形態において、センシング回路350(たとえば、センスアンプ306及び計算コンポーネント331)は、ローカルまたはグローバルI/O線を介してセンシング回路からデータを転送することなく(たとえば、カラム復号信号などのアクティベーションを介してセンス線アドレスアクセスを実行することなく)、選択された演算を実行し、まずは、その結果をセンスアンプ306または計算コンポーネント331のうちの1つに格納するように動作することが可能である。
演算(たとえば、データ値を含むブール論理演算)の実行は、基本であり、一般的に使用される。ブール論理演算は、多くのより高水準の動作に使用される。その結果、改善された動作によって実現されることが可能である速度及び/または電力効率は、より高次の機能性の速度及び/または電力効率に変換することが可能である。
図3に示されるように、計算コンポーネント331は、二次ラッチ364と本明細書において称されることが可能である、ラッチをも備えることが可能である。二次ラッチ364は、二次ラッチを連続して有効にするように、二次ラッチ中に含まれる1対の交差結合されたpチャネルトランジスタ(たとえば、PMOSトランジスタ)が供給電圧(たとえば、VDD)に結合されるそれらのそれぞれのソースを有することが可能であることと、二次ラッチの1対の交差結合されたnチャネルトランジスタ(たとえば、NMOSトランジスタ)が基準電圧(たとえば、接地)に選択的に結合されるそれらのそれぞれのソースを有することが可能であることとを除き、一次ラッチ315に関連して上述されるものと同様に構成され、動作することが可能である。計算コンポーネント331の構成は、図2に示されるものに限定されず、さまざまな他の実施形態は、実現可能である。
本明細書に記載されるように、メモリデバイス(たとえば、図1A中の120)は、データバス(たとえば、156)及び制御バス(たとえば、154)を介してホスト(たとえば、110)に結合されるように構成されることが可能である。メモリデバイス120中のバンク121は、メモリセルの複数のバンクセクション(図1B中の123−1、...、123−N)を含むことが可能である。バンク121は、メモリセルの複数のカラム(図1B)を介して複数のアレイに結合されるセンシング回路(たとえば、図1A中の150、ならびに図3及び図4中の対応する参照番号)を含むことが可能である。センシング回路は、各カラムに結合されるセンスアンプ及び計算コンポーネント(たとえば、図3中のそれぞれ306及び331)を含むことが可能である。
各バンクセクション123は、アレイ330にローカルな複数の共有されたI/O線(図1B中の155)のデータパス中の計算ユニットにおいて複数の論理ストライプ(たとえば、図1B中の124−0、124−1、...、124−N−1)と関連することが可能である。バンクに結合されるコントローラ(たとえば、図1A〜図1B中の140)は、本明細書に記載されるように、アレイ330にローカルな共有されたI/O線455(図4)のデータパス中の計算ユニット460(図4)中の論理ストライプにおける計算コンポーネントへのデータ値の移動を指示するように構成されることが可能である。
メモリデバイスは、メモリセルの複数のカラム(図1B)の数に対応することが可能である複数の計算コンポーネントを有する論理ストライプ(たとえば、図1B中の124)を含むことが可能である。図4にさらに関連して考察されるように、センシング回路350中の幾つかのセンスアンプ306及び/または計算コンポーネント331は、複数の共有されたI/O線455(図4)に選択的に結合される(たとえば、図4中のカラム選択回路458−1及び458−2を介して)ことが可能である。カラム選択回路は、複数(たとえば、可能性がある中の、4、8、及び16個)のセンスアンプ及び/または計算コンポーネントに選択可能に結合されることによってアレイのメモリセルの特定のカラム中のデータを選択的に感知するように構成されることが可能である。
いくつかの実施形態において、バンク中の複数の論理ストライプ(たとえば、図1B中の124−1、...、124−N)の数は、バンク中の図1B(たとえば、複数のサブアレイを有する象限)におけるバンクセクション123−1、...、123−Nの数に対応することが可能である。論理ストライプは、図3に示される計算コンポーネント331のようであるアレイ330にローカルな共有されたI/Oのデータパス中の複数の計算コンポーネントを含むことが可能である。図4に示されるように、アレイのロウから感知されるデータ値は、複数の共有されたI/O線455(図4)のデータパスの計算ユニット460(図4)中の複数の計算コンポーネントへ複数の共有されたI/O線455(図4)を介してカラム選択論理によって平行に移動することが可能である。いくつかの実施形態において、データ量は、複数の共有されたI/O線の少なくとも1000ビット幅に対応することが可能である。
本明細書に記載されるように、メモリセルのアレイは、コマンドに応答して、ソース位置から宛先位置へ共有されたI/O線を介してデータを移動させる(たとえば、コピーする、転送する、及び/または移送する)ように構成される、DRAMメモリセルの実装を含むことが可能である。さまざまな実施形態において、ソース位置は、第一バンク中にあることが可能であり、宛先位置は、アレイ330にローカルな共有されたI/O線455(図4)のデータパス中の計算ユニット460(図4)中にあることが可能である。
図4に記載されるように、装置は、センスアンプ及び計算コンポーネントの第一の数と関連する特定のロウ(たとえば、図4中の419)及びカラムアドレスを含むソース位置から、共有されたI/O線(たとえば、図4中の455)へデータを移動させる(たとえば、コピーする、転送する、及び/または移送する)ように構成されることが可能である。加えて、装置は、共有されたI/O線455(図4)のデータパス中の計算ユニット460(図4)と関連する特定の論理ストライプを含む、宛先位置へデータを移動させるように構成されることが可能である。読者は、各共有されたI/O線455(図4)が、相補的な1対の共有されたI/O線(たとえば、図4中の、共有されたI/O線、及び共有されたI/O線)を実際に含むことが可能であることを理解するであろう。本明細書に記載される、いくつかの実施形態において、2048個の共有されたI/O線(たとえば、共有されたI/O線の相補対)は、2048ビット幅の共有されたI/O線として構成されることが可能である。本明細書に記載される、いくつかの実施形態において、1024個の共有されたI/O線(たとえば、共有されたI/O線の相補対)は、1024ビット幅の共有されたI/O線として構成されることが可能である。
図4は、本開示の幾つかの実施形態に従う、メモリデバイスにおけるデータの移動についての回路を示す概略図である。図4は、それぞれ1対の相補的に共有されたI/O線455(たとえば、共有されたI/O線、及び共有されたI/O線)にそれぞれ結合される、8個のセンスアンプ(たとえば、406−0、406−1、...、406−7にそれぞれ示されるセンスアンプ0、1、...、7)を示す。また、図4は、それぞれパスゲート407−1及び407−2、ならびにデジット線405−1及び405−2を介してそれぞれセンスアンプ(たとえば、406−0でセンスアンプ0について示されるように)にそれぞれ結合される、8個の計算コンポーネント(たとえば、431−0、431−1、...、431−7に示される計算コンポーネント0、1、...、7)を示す。たとえば、パスゲートは、図3に示されるように接続されることが可能であり、動作選択信号、Passによって制御されることが可能である。たとえば、選択論理の出力は、パスゲート407−1及び407−2、ならびにデジット線405−1及び405−2のゲートに結合されることが可能である。センスアンプ及び計算コンポーネントの対応する対は、450−0、450−1、...、450−7に示されるセンシング回路の形成に寄与することが可能である。
1対の相補的なデジット線405−1及び405−2上に存在するデータ値は、図3に関連して記載されるような、計算コンポーネント431−0中へロードされることが可能である。たとえば、パスゲート407−1及び407−2を有効にするときに、1対の相補的なデジット線405−1及び405−2上のデータ値は、センスアンプから計算コンポーネント(たとえば、406−0から431−0)へ渡されることが可能である。1対の相補的なデジット線405−1及び405−2上のデータ値は、センスアンプが起動するときにセンスアンプ406−0に格納されるデータ値であることが可能である。
図4中のセンスアンプ406−0、406−1、...、406−7は、図3に示されるセンスアンプ306にそれぞれ対応することが可能である。図4に示される計算コンポーネント431−0、431−1、...、431−7は、図3に示される計算コンポーネント331にそれぞれ対応することが可能である。1つのセンスアンプの1つの計算コンポーネントとの組み合わせは、共有されたI/O線455のデータパス中の幾つかの論理ストライプによって共有される、共有されたI/O線455に結合されるDRAMメモリサブアレイ425の一部のセンシング回路(たとえば、450−0、450−1、...、450−7)に寄与することが可能である。
図4に示される実施形態の構成は、明確さの目的のために示され、これらの構成に限定されない。たとえば、計算コンポーネント431−0、431−1、...、431−7、及び共有されたI/O線455との組み合わせでセンスアンプ406−0、406−1、...、406−7について図4に示される構成は、メモリセル(示されない)のカラム422より上に形成されるセンシング回路の計算コンポーネント431−0、431−1、...、431−7とのセンスアンプ406−0、406−1、...、406−7の半分の組み合わせ、及びメモリセルのカラム422より下に形成される半分に限定されない。そして、共有されたI/O線に結合するように構成されるセンシング回路を形成する計算コンポーネントとのセンスアンプのこれらのような組み合わせの数も、8個に限定されない。加えて、共有されたI/O線455の構成は、2セットの相補的なデジット線405−1及び405−2のそれぞれに別々に結合するために2つに分割されることに限定されず、そして、共有されたI/O線455の位置決めも、センシング回路を形成するセンスアンプ及び計算コンポーネントの組み合わせの中央にあることに限定されない(たとえば、むしろ、センスアンプ及び計算コンポーネントの組み合わせのいずれか一方の端部にあってもよい)
また、図4に示される回路は、サブアレイ425の特定のカラム422、それらと関連する相補的なデジット線405−1及び405−2、ならびに共有されたI/O線455(たとえば、図1A〜図1Bに示されるコントローラ140によって指示されるように)に関するデータ移動動作を実施するように構成されるカラム選択回路458−1及び458−2を示す。たとえば、カラム選択回路458−1は、カラム0(432−0)、カラム2、カラム4、及びカラム6などの、対応するカラムと結合するように構成される選択線0、2、4、及び6を有する。カラム選択回路458−2は、カラム1、カラム3、カラム5、及びカラム7などの、対応するカラムと結合するように構成される選択線1、3、5、及び7を有する。図4と関連して記載されるカラム選択回路458は、さまざまな実施形態において、たとえば、八(8)ウェイのマルチプレクサ、十六(16)ウェイのマルチプレクサなどの、マルチプレクサによって機能的に具現化され、またこれらのマルチプレクサに含まれる、少なくとも一部を表すことが可能である。
コントローラ140は、カラム選択回路458に結合され、センスアンプ、計算コンポーネントに格納されるデータ値にアクセスする、及び/または1対の相補的なデジット線(たとえば、選択トランジスタ459−1及び459−2が選択線0からの信号を介して起動するときに405−1及び405−2)を提示するように、選択線(たとえば、選択線0)を制御することが可能である。選択トランジスタ459−1及び459−2(たとえば、コントローラ140によって指示されるように)を起動させることにより、カラム0(422−0)のセンスアンプ406−0、計算コンポーネント431−0、及び/または相補的なデジット線405−1及び405−2を結合し、デジット線0及びデジット線0上のデータ値を共有されたI/O線455へ移動させることが可能である。たとえば、移動したデータ値は、センスアンプ406−0及び/または計算コンポーネント431−0に格納され(キャッシュされ)特定のロウ419からのデータ値であることができる。カラム0から7のそれぞれからのデータ値は、適切な選択トランジスタを起動させるコントローラ140によって同様に選択されることが可能である。
さらに、アンプ及び/または計算コンポーネントによって格納されデータ値が共有されたI/O線455へ移動する(たとえば、この線上に置く、及び/またはこの線へ転送される)ことが可能であるように、選択トランジスタ(たとえば、選択トランジスタ459−1及び459−2)を有効にする(たとえば、起動させる)ことにより、特定のセンスアンプ及び/または計算コンポーネント(たとえば、それぞれ406−0及び/または431−0)が共有されたI/O線455と結合されることを可能にすることができる。いくつかの実施形態において、一度に1つのカラム(たとえば、カラム422−0)を選択し、特定の共有されたI/O線455に結合させ、格納されたデータ値を移動させる(たとえば、コピーする、転送する、及び/または移送する)。図4の例示的な構成において、共有されたI/O線455は、共有された、差動I/O線対(たとえば、共有されたI/O線、及び共有されたI/O線)として図示される。したがって、カラム0(422−0)の選択は、2つのデータ値(たとえば、0及び/または1の値を有する2ビット)をロウ(たとえば、ロウ419)からもたらすこと、及び/または相補的なデジット線405−1及び405−2と関連するセンスアンプ及び/または計算コンポーネントに格納されるように生じることが可能である。これらのデータ値は、共有された差動I/O線455のそれぞれの共有された差動I/O対(たとえば、共有されたI/O、及び共有されたI/O)に平行に入力されることが可能である。
図5は、本開示の幾つかの実施形態に従う、メモリデバイスへのコントローラの実施例を示すブロック図である。いくつかの実施態様において、ブロック図は、図1A〜図2におけるメモリデバイス120などのPIM対応デバイスの1つの実施例の一部をより詳細に提供する。図5の実施例において、コントローラ540−1、...、540−7(一般的にコントローラ540と称される)は、PIM対応デバイス520への各バンク521−1、...、521−7(一般的に521と称される)と関連することができる。8個のバンクが、図5の実施例に示される。しかしながら、実施形態は、この例示的な数に限定されない。コントローラ540は、図1Aに示されるコントローラ140を表すことができる。各バンクは、メモリセル(示されない)の1つ以上のアレイを含むことができる。たとえば、各バンクは、図1Aにおけるアレイ130などの1つ以上のアレイを含むことができ、図1Aに示される復号器、他の回路及びレジスタを含むことが可能である。図5に示される例示的なPIM対応デバイス520において、コントローラ540−1、...、540−7は、メモリデバイス520の1つ以上のメモリバンク521上のコントローラ540の部分として、制御論理531−1、...、531−7、シーケンサ532−1、...、532−7、及びタイミング回路533−1、...、533−7を有するように示される。PIM対応デバイス520は、図1Aに示されるメモリデバイス120の部分を表すことができる。
図5の実施例に示されるように、PIM対応デバイス520は、PIM対応デバイス520においてデータ、アドレス、制御信号、及び/またはコマンドを受信する、高速インタフェース(HSI)541を含むことができる。さまざまな実施形態において、HSI541は、PIM対応デバイス520と関連するバンクアービタ545に結合されることができる。HSI541は、図1A中のように、ホスト、たとえば、110からコマンド及び/またはデータを受信するように構成されることができる。図5の実施例に示されるように、バンクアービタ545は、複数のバンク521−1、...、521−7に結合されることができる。
図5に示される実施例において、制御論理531−1、...、531−7は、各バンク521−1、...、521−7の部分である、メモリセルのアレイ、たとえば、図1Aにおけるアレイ130としてのアレイからマシンインストラクション、たとえば、マイクロコードインストラクションをフェッチして実行することに応答可能なマイクロコード化されたエンジンの形式にあることができる。また、シーケンサ532−1、...、532−7は、マイクロコード化されたエンジンの形式にあることができる。代替に、制御論理531−1、...、531−7は、超長命令語(VLIW)タイプの処理リソースの形式にあることができ、シーケンサ532−1、...、532−7、及びタイミング回路533−1、...、533−7は、ステートマシン及びトランジスタ回路の形式にあることができる。
制御論理531−1、...、531−7は、シーケンサ532−1、...、532−7によって実行される関数呼び出し、たとえば、マイクロコード関数呼び出し(uCODE)にマイクロコードインストラクションを復号することができる。これらのマイクロコード関数呼び出しは、シーケンサ532−1、...、532−7が受信して実行する演算であり、図1Aにおけるセンシング回路150などのセンシング回路を使用して、または計算コンポーネントを使用して、PIMデバイス520に特定の論理演算を実行させることが可能である。タイミング回路533−1、...、533−7は、論理演算のパフォーマンスを調整するタイミングを提供し、図1Aにおけるアレイ130などのアレイへ競合のないアクセスを提供することを担うことができる。
図1Aに関連して記載されるように、コントローラ540−1、...、540−7は、図5に555−1、555−7として示される制御線及びデータパスを介して、メモリセルのアレイと関連する、キャッシュ、バッファ、センスアンプ、拡張されたロウアドレス(XRA)ラッチ、及び/またはレジスタを含む、センシング回路150、計算ユニット、及び/または追加の論理回路170に結合されることができる。このようなものとして、図1Aに示されるセンシング回路150、計算ユニット、及び論理170は、図5において555−1、...、555−7として示される共有されたI/O線を使用して、メモリセル130のアレイに関連付けられることが可能である。コントローラ540−1、...、540−7は、読み出し、書き込み、コピー、及び/または消去動作などのようなアレイについて通常のDRAM動作を制御することができる。しかしながら、加えて、マイクロコードインストラクションが制御論理531−1、...、531−7によって取得され実行され、そしてマイクロコード関数呼び出しがシーケンサ532−1、...、532−7によって受信されて実行され、通常のDRAM読み出し及び書き込み動作と異なる、たとえば、これらの動作よりさらに複雑である、加算、乗算、またはより具体的な実施例として、AND、OR、XORなどのブール演算などのような、追加の論理演算を、図1Aに示されるセンシング回路150及び/または計算ユニットに実行させる。したがって、このPIM対応デバイス520の実施例において、マイクロコードインストラクション実行及び論理演算は、PIM対応デバイス520のバンク521−1、...、521−7上で実行されることが可能である。
実施形態に従い、制御論理531−1、...、531−7、シーケンサ532−1、...、532−7、及びタイミング回路533−1、...、533−7は、共有されたI/O線のデータパス中の計算ユニットに含む、メモリデバイス520上で、たとえば、バンク521−1、...、521−7上で、DRAMアレイについての演算周期のシーケンスを生成するように、及び/または演算、たとえば、論理演算の実行を指示するように動作することが可能である。PIM対応デバイス520の実施例において、各シーケンスは、特定の機能を合わせて達成する、ブール論理演算AND、OR、XORなどのような、演算を実行するように設計されることができる。たとえば、演算シーケンスは、複数のビット総和を計算するための一(1)ビット加算についての論理演算を繰り返し実行することができる。各演算シーケンスは、タイミング回路533−1、...、533−7に結合され、図1Aに示される、メモリセル130のアレイ、たとえば、DRAMアレイと関連する、センシング回路150、計算ユニット、及び/または追加の論理回路170に関するタイミング調整を提供する、先入れ/先出し(FIFO)バッファに供給されることができる。
図5に示される例示的なPIM対応デバイス520において、タイミング回路533−1、...、533−7は、タイミングを提供することが可能であり、四(4)個のFIFOキューからアイレへ競合のないアクセスを提供することが可能であり、及び/または計算ユニットにおける動作へのタイミングを調整することが可能である。この実施例において、1つのFIFOキューは、アレイ計算をサポートすることができ、あるものは、インストラクションフェッチのために、あるものは、マイクロコード(たとえば、Ucode)インストラクションフェッチのために、そしてあるものは、DRAM I/Oのためにあることができる。制御論理531−1、...、531−7、及びシーケンサ532−1、...、532−7の両方は、FIFOインタフェースを介してバンクアービタ545へルーティングして返す、ステータス情報を生成することが可能である。バンクアービタ545は、このステータスデータを集約し、それをインタフェース(HSI)541を介してホスト110へ報告して返すことができる。
図6は、本開示の幾つかの実施形態に従う、XOR論理演算を実行することができる計算ユニット回路を示す概略図である。図6は、1対の相補的な共有されたI/O線655−1及び655−2に結合されるセンスアンプ606、論理演算選択論理613、ならびにセンスアンプ606にパスゲート607−1及び607−2を介して結合される計算コンポーネント631を示す。図6に示されるセンスアンプ606は、センシング回路350と関連するように図3に示されセンスアンプ306、たとえば一次ラッチ、と同様に機能することが可能である。図6に示される計算コンポーネント631は、センシング回路350と関連するように図3に示され計算コンポーネント331、たとえば二次ラッチ、と同様に機能することが可能である。図6に示される論理演算選択論理613は、センシング回路350と関連する図3に示され論理演算選択論理313と同様に機能することが可能である。パスゲート607−1及び607−2のゲートは、論理演算選択論理613信号(たとえば、Pass)によって制御されることが可能である。たとえば、論理演算選択論理613の出力は、パスゲート607−1及び607−2のゲートに結合されることが可能である。さらに、計算コンポーネント631は、データ値を左方向及び右方向にシフトさせるように構成されるロード可能なシフトレジスタを備えることが可能である。
図6に示される実施形態に従い、計算コンポーネント631は、データ値を左方向及び右方向にシフトさせるように構成されるロード可能なシフトレジスタのそれぞれのステージ(たとえば、シフトセル)を備えることが可能である。たとえば、図6に示されるように、シフトレジスタの各計算コンポーネント631(たとえば、ステージ)は、1対の右方向シフトトランジスタ681及び686、1対の左方向シフトトランジスタ689及び690、ならびに1対のインバータ687及び688を備える。信号PHASE 1R、PHASE 2R、PHASE 1L、及びPHASE 2Lを、それぞれの制御線682、683、691及び692に印加し、本明細書に記載される実施形態に従い、論理演算を実行すること、及び/またはデータをシフトさせることと関連して、対応する計算コンポーネント631のラッチ上でフィードバックを有効にする/無効にすることが可能である。
図6に示される計算ユニット回路は、ISO、TF、TT、FT、及びFFを含む、幾つかの論理選択制御入力制御線に結合される演算選択論理613を示す。複数の論理演算からの1つの論理演算の選択は、アサートされるISO制御信号を介して絶縁トランジスタ650−1及び650−2を有効にするときに、1対の相補的な共有されたI/O線655−1及び655−2上に存在するデータ値と同様に、論理選択制御入力線上で論理選択制御信号の状態から決定される。
さまざまな実施形態に従い、演算選択論理613は、スワップトランジスタ642のゲートとTF信号制御線との間に結合される論理選択トランジスタ662、パスゲート607−1及び607−2のゲートとTT信号制御線との間に結合される論理選択トランジスタ652、パスゲート607−1及び607−2のゲートとFT信号制御線との間に結合される論理選択トランジスタ654、ならびにスワップトランジスタ642のゲートとFF信号制御線との間に結合される論理選択トランジスタ664の4個の論理選択トランジスタを含むことが可能である。論理選択トランジスタ662及び652のゲートは、絶縁トランジスタ650−1(ISO信号制御線に結合されるゲートを有する)を通して真のセンス線に結合される。論理選択トランジスタ664及び654のゲートは、絶縁トランジスタ650−2(ISO信号制御線に結合されるゲートをも有する)を通して相補的なセンス線に結合される。
1対の相補的な共有されたI/O線655−1及び655−2上に存在するデータ値は、パスゲート607−1及び607−2を介して計算コンポーネント631中へロードされることが可能である。計算コンポーネント631は、ロード可能なシフトレジスタを備えることが可能である。パスゲート607−1及び607−2がOPENであるときに、1対の相補的な共有されたI/O線655−1及び655−2上のデータ値(「A」)を計算コンポーネント631へ渡すことにより、ロード可能なシフトレジスタ中へロードする。センスアンプが起動するときに、1対の相補的な共有されたI/O線655−1及び655−2上のデータ値は、センスアンプ606に格納されるデータ値(「B」)であることが可能である。この実施例において、論理演算選択論理信号Passは、パスゲート607−1及び607−2をOPENするためにhighである。
ISO、TF、TT、FT、及びFF制御信号は、センスアンプ606中のデータ値(「B」)、及び計算コンポーネント631中のデータ値(「A」)に基づき実行すべき論理関数を選択するように動作させることが可能である。特に、ISO、TF、TT、FT、及びFF制御信号は、1対の相補的な共有されたI/O線655−1及び655−2上に存在するデータ値から独立して実行する論理関数を選択するように構成される(実行された論理演算の結果は1対の相補的な共有されたI/O線655−1及び655−2上に存在するデータ値に依存していることが可能であるが)。たとえば、1対の相補的な共有されたI/O線655−1及び655−2上に存在するデータ値がパスゲート607−1及び607−2のゲートを動作させる論理を通して渡されないため、ISO、TF、TT、FT、及びFF制御信号は、直接に実行する論理演算を選択する。
加えて、図6は、センスアンプ606と計算コンポーネント631との間に1対の相補的な共有されたI/O線655−1及び655−2の方向を交換するように構成されるスワップトランジスタ642を示す。スワップトランジスタ642がOPENであるときに、スワップトランジスタ642のセンスアンプ606側上の1対の相補的な共有されたI/O線655−1及び655−2上のデータ値は、スワップトランジスタ642の計算コンポーネント631側上に1対の相補的な共有されたI/O線655−1及び655−2に対向して結合されることにより、計算コンポーネント631のロード可能なシフトレジスタ中へロードされる。
ISO制御信号線が起動し、かつ、真の共有されたI/O線上のデータ値が「1」でありながらTT制御信号が起動させる(たとえば、highにする)か、相補的な共有されたI/O線上のデータ値が「1」でありながらFT制御信号が起動させる(たとえば、highにする)かのいずれか一方のときに、論理演算選択論理613の信号Passは、起動させて(たとえば、highにして)、パスゲート607−1及び607−2をOPENする(たとえば、導通する)ことが可能である。
「1」である真の共有されたI/O線上のデータ値は、論理選択トランジスタ652及び662をOPENする。「1」である相補的な共有されたI/O線上のデータ値は、論理選択トランジスタ654及び664をOPENする。ISO制御信号、若しくは対応する共有されたI/O線(たとえば、特定の論理選択トランジスタのゲートを結合する、共有されたI/O線)上のそれぞれTT/FT制御信号、またはデータ値のいずれか一方がhighではない場合、特定の論理選択トランジスタによって、パスゲート607−1及び607−2をOPENしない。
ISO制御信号線が起動し、かつ、真の共有されたI/O線上のデータ値が「1」でありながらTF制御信号が起動させる(たとえば、highにする)か、相補的な共有されたI/O線上のデータ値が「1」でありながらFF制御信号が起動させる(たとえば、highにする)かのいずれか一方であるときに、論理演算選択論理信号Passが起動させ(たとえば、highにし)、スワップトランジスタ642をOPENする(たとえば、導通する)ことが可能である。対応する共有されたI/O線(たとえば、特定の論理選択トランジスタのゲートを結合する、共有されたI/O線)上のそれぞれの制御信号またはデータ値のいずれか一方がhighではない場合、特定の論理選択トランジスタによって、スワップトランジスタ642をOPENしない。
Pass制御信号は、必ずしもPass制御信号に対して相補的ではない。Pass及びPass制御信号について、同時に、両方を起動する、または両方を停止することが可能である。しかしながら、同時にPass及びPassの両方の制御信号起動することは、1対の相補的な共有されたI/O線を互いに短絡させることがあり、これは、回避されるべき破壊構成であり得る
図6に示される計算ユニット回路は、複数の論理演算のうちの1つを選択して、4個の論理選択制御信号(たとえば、論理演算選択は1対の相補的な共有されたI/O線上に存在するデータ値に依存しない)から直接に実行するように構成される。論理選択制御信号のいくつかの組み合わせは、パスゲート607−1及び607−2、ならびにスワップトランジスタ642の両方を同時にOPENさせることが可能であり、1対の相補的な共有されたI/O線655−1及び655−2を互いに短絡させる。本開示の幾つかの実施形態に従い、図6に示される計算ユニット回路によって実装されることが可能である論理演算は、図7に示される論理テーブルに要約される論理演算であることが可能である。
図7は、本開示の幾つかの実施形態に従う、図6に示される複数の共有されたI/O線655−1及び655−2のデータパス中の計算ユニット回路によって実装される選択可能な論理演算結果を図示する論理テーブルである。4個の論理選択制御信号(たとえば、TF、TT、FT、及びFF)を、相補的な共有されたI/O線上に存在する特定のデータ値と組み合わせて使用し、複数の論理演算のうちの1つを選択し、計算ユニット回路の、センスアンプ606、たとえば一次ラッチ、及び計算コンポーネント631、たとえば二次ラッチに格納され開始データ値(「A」及び「B」)を含むように実行することが可能である。4個の制御信号は、相補的な共有されたI/O線上に存在する特定のデータ値と組み合わせて、起動する前/後に計算コンポーネント631及び/またはセンスアンプ606中のデータ値に順に影響する、パスゲート607−1及び607−2、ならびにスワップトランジスタ642の連続性を制御する。スワップトランジスタ642の連続性を選択可能に制御する能力は、とりわけ、逆のデータ値(たとえば、逆のオペランド、及び/または逆の結果)を含む論理演算を実行することを促進する。
図7に示される論理テーブル7−1は、744でカラムAに示される計算コンポーネント631、たとえば二次ラッチに格納され開始データ値と、745でカラムBに示されるセンスアンプ606、たとえば一次ラッチに格納され開始データ値とを示す。論理テーブル7−1中の他の3つのカラムの項目は、図6に示されるパスゲート607−1及び607−2、ならびにスワップトランジスタ642の連続性を指し、これは、1対の相補的な共有されたI/O線655−1及び655−2上に存在する特定のデータ値と組み合わせて、4個の論理選択制御信号(たとえば、TF、TT、FT、及びFF)の状態に依存する、OPENまたはCLOSEDであるようにそれぞれ制御されることが可能である。「Not Open」カラムは、非導通状態にある、パスゲート607−1及び607−2、ならびにスワップトランジスタ642の両方に対応し、「Open True」は、導通状態にあるパスゲート607−1及び607−2に対応し、「Open Invert」は、導通状態にあるスワップトランジスタ642に対応する。これが合わせて短絡するセンス線をもたらすため、導通状態にあるパスゲート607−1及び607−2、ならびにスワップトランジスタ642の両方に対応する構成は、論理テーブル7−1に反映されない。
パスゲート607−1及び607−2、ならびにスワップトランジスタ642の連続性の選択的制御を介して、論理テーブル7−1の上部の3つのカラムのそれぞれは、論理テーブル7−1の下部の3カラムのそれぞれと組み合わされ、775で示されるさまざまな接続するパスによって示されるように、9個の異なる論理演算に対応する、3×3=9の異なる結果の組み合わせを提供することが可能である。計算ユニット回路によって実行されることが可能である、9個の異なる選択可能な論理演算は、XOR論理演算を含む、図7に示される論理テーブル7−2に要約される。
図7に示される論理テーブル7−2のカラムは、論理選択制御信号の状態を含む項目780を示す。たとえば、第一論理選択制御信号の状態は、テーブル7−2のロウ776に提供され、第二論理選択制御信号の状態は、テーブル7−2のロウ777に提供され、第三論理選択制御信号の状態は、テーブル7−2のロウ778に提供され、第四論理選択制御信号の状態は、テーブル7−2のロウ779に提供される。これらの結果に対応する特定の論理演算は、テーブル7−2のロウ747に要約される。
センシング回路、センスアンプ、計算コンポーネント、論理ストライプ、共有されたI/O線、カラム選択回路、マルチプレクサ、ラッチコンポーネント、ラッチストライプ、及び/またはラッチなどのさまざまな組み合わせ及び構成を含む例示的な実施形態は、本明細書に示され、記載されているが、本開示の実施形態は、本明細書において明示的に列挙される、これらの組み合わせに限定されない。本明細書に開示される、センシング回路、センスアンプ、計算コンポーネント、論理ストライプ、共有されたI/O線、カラム選択回路、マルチプレクサ、ラッチコンポーネント、ラッチストライプ、及び/またはラッチなどの、他の組み合わせ及び構成は、本開示の範囲内に明白に含まれる。
特定の実施形態が本明細書に図示され記載されているが、当業者は、同一の結果を得るために計算される配置が示される特定の実施形態に対して置換されることが可能であることを理解するであろう。本開示は、本開示の1つ以上の実施形態の適合または変形にわたることが意図される。上記の説明が限定的なものではなく、例示的な方式において行われていることを理解するであろう。上記の実施形態の組み合わせ、及び本明細書に具体的に記載されていない他の実施形態は、上記の説明を再検討すると、当業者に明らかになるであろう。本開示の1つ以上の実施形態の範囲は、上記の構造及びプロセスが使用される他の用途を含む。したがって、本開示の1つ以上の実施形態の範囲は、これらのような請求項が権利を与えられる均等物の全範囲に加えて、添付の特許請求の範囲を参照して決定される。
前述の発明を実施するための形態において、いくつかの特徴は、本開示を合理化する目的のために単一の実施形態にまとめられる。開示のこの方法は、本開示の開示された実施形態が各請求項に明白に列挙されるより多くの特徴を使用しなければならない意図を反映すると解釈されてはならない。むしろ、下記の特許請求の範囲が反映する場合、本発明の主題は、単一の開示された実施形態のすべての特徴より少ない特徴にある。したがって、下記の特許請求の範囲は、各請求項が別々の実施形態としてそれ自体を主張しながら、発明を実施するための形態に本明細書により援用される。

Claims (9)

  1. 複数のニューラルネットワークと、
    前記複数のニューラルネットワークに結合されたコントローラと、
    を備えた装置であって
    前記複数のニューラルネットワークの各ニューラルネットワークは、プロセッシングインメモリ(PIM)デバイス上の複数のバンクのうちの対応するバンク内で動作し、
    各ニューラルネットワークは、
    異なるトレーニングを受信し、
    前記異なるトレーニングを受信するのに応答して、同時に特定のデータ部分の特徴を決定し、
    前記複数のニューラルネットワークの各々の前記異なるトレーニングに基づいて、前記特定のデータ部分の前記特徴のトレーニング信頼係数を決定する、
    ように構成され、
    前記コントローラは、
    投票方式を使用して、前記複数のニューラルネットワークの各々の前記トレーニング信頼係数に基づきデータ認識の精度を決定し、
    前記データ認識の前記精度に基づき前記特定のデータ部分の前記特徴を決定する、
    ように構成される、装置。
  2. 前記複数のニューラルネットワークは、センシング回路に結合されメモリセルのアレイを含み、前記センシング回路は、センスアンプ及び計算コンポーネントを含む、請求項1に記載の装置。
  3. 前記メモリセルのアレイ、前記メモリセルのアレイと関連するデータパス計算動作におけるデータパスとして共有される複数の入力/出力(I/O)線を介して前記センシング回路に結合され、前記センシング回路が、前記特定のデータ部分の前記特徴についての前記決定を行うように構成される、、請求項に記載の装置。
  4. 前記複数のニューラルネットワークは、独立してトレーニングされるように構成される、請求項1〜のいずれか1項に記載の装置。
  5. 数のニューラルネットワークと、
    前記複数のニューラルネットワークに結合されコントローラと、
    を備えた装置であって、
    前記複数のニューラルネットワークの各ニューラルネットワークは、プロセッシングインメモリ(PIM)デバイス上の複数のバンクのうちの対応するバンク内で動作し、
    各ニューラルネットワークは、
    異なるトレーニングを受信し、
    特定のデータ部分を受信し、
    前記異なるトレーニングを受信するのに応答して、同時に前記特定のデータ部分の特徴を決定し、
    前記複数のニューラルネットワークの各々の前記異なるトレーニングに基づいて、前記特定のデータ部分の前記特徴のトレーニング信頼係数を決定する、
    ように構成され、
    前記コントローラは、
    投票方式を使用して、前記複数のニューラルネットワークの各々の前記トレーニング信頼係数に基づきデータ認識の精度を決定し、
    前記データ認識の前記精度に基づき前記特定のデータ部分の前記特徴を決定する、
    ように構成される、装置。
  6. 前記コントローラは、前記複数のニューラルネットワークの各々から投票を受信するように構成される、請求項に記載の装置。
  7. 前記複数のニューラルネットワークの各々からの前記投票は、前記複数のニューラルネットワークの各々の特定のデータ部分及び特定のトレーニングのタイプに基づき重み付けされる、請求項に記載の装置。
  8. 複数のニューラルネットワークの各々別々にトレーニングすることであって、前記複数のニューラルネットワークの各ニューラルネットワークは、プロセッシングインメモリ(PIM)デバイス上の複数のバンクのうちの対応するバンク内で動作する、ことと、
    前記複数のニューラルネットワークの各々を別々にトレーニングすることに応答して、同時に、前記複数のニューラルネットワークの各々における特定のデータ部分の特徴を決定することと、
    前記複数のニューラルネットワークの各々の前記別々のトレーニングに基づいて、前記特定のデータ部分の前記特徴のトレーニング信頼係数を決定することと、
    コントローラにて、投票方式を使用して、前記複数のニューラルネットワークの各々の前記トレーニング信頼係数に基づきデータ認識の精度を決定することと、
    前記コントローラにて、前記データ認識の前記精度に基づき前記特定のデータ部分の前記特徴を決定することと、
    を含む方法。
  9. 複数のニューラルネットワークの各々を別々にトレーニングすることであって、前記複数のニューラルネットワークの各ニューラルネットワークは、プロセッシングインメモリ(PIM)デバイス上の複数のバンクのうちの対応するバンク内で動作する、ことと、
    前記複数のニューラルネットワークの各々を別々にトレーニングすることに応答して、同時に前記複数のニューラルネットワークを動作させることであって、前記複数のニューラルネットワークの各々特定のデータ部分を受信し、前記特定のデータ部分の特徴を決定し、かつ、前記複数のニューラルネットワークの各々の前記別々のトレーニングに基づき前記特定のデータ部分の前記特徴のトレーニング信頼係数を決定する、ことと、
    コントローラを動作させることであって、前記コントローラは、投票方式を使用して、前記複数のニューラルネットワークの各々前記トレーニング信頼係数に基づきデータ認識の精度を決定し、前記コントローラは、前記データ認識の前記精度に基づき前記特定のデータ部分の前記特徴を決定する、ことと、
    含む方法。
JP2019551437A 2017-03-22 2018-03-12 ニューラルネットワークを動作させる装置及び方法 Active JP6931712B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/466,296 2017-03-22
US15/466,296 US11222260B2 (en) 2017-03-22 2017-03-22 Apparatuses and methods for operating neural networks
PCT/US2018/021936 WO2018175130A1 (en) 2017-03-22 2018-03-12 Apparatuses and methods for operating neural networks

Publications (3)

Publication Number Publication Date
JP2020512633A JP2020512633A (ja) 2020-04-23
JP2020512633A5 JP2020512633A5 (ja) 2021-05-13
JP6931712B2 true JP6931712B2 (ja) 2021-09-08

Family

ID=63582760

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019551437A Active JP6931712B2 (ja) 2017-03-22 2018-03-12 ニューラルネットワークを動作させる装置及び方法

Country Status (7)

Country Link
US (2) US11222260B2 (ja)
EP (1) EP3602416A4 (ja)
JP (1) JP6931712B2 (ja)
KR (1) KR102447788B1 (ja)
CN (2) CN117436477A (ja)
TW (1) TWI710975B (ja)
WO (1) WO2018175130A1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10552733B2 (en) * 2017-04-03 2020-02-04 Gyrfalcon Technology Inc. Memory subsystem in CNN based digital IC for artificial intelligence
US10331367B2 (en) * 2017-04-03 2019-06-25 Gyrfalcon Technology Inc. Embedded memory subsystems for a CNN based processing unit and methods of making
US11403518B2 (en) * 2018-04-25 2022-08-02 Denso Corporation Neural network circuit
KR20200025200A (ko) * 2018-08-29 2020-03-10 삼성전자주식회사 전자 장치 및 전자 장치의 동작 방법
US10867399B2 (en) 2018-12-02 2020-12-15 Himax Technologies Limited Image processing circuit for convolutional neural network
TWI694413B (zh) * 2018-12-12 2020-05-21 奇景光電股份有限公司 影像處理電路
US10904637B2 (en) * 2018-12-17 2021-01-26 Qualcomm Incorporated Embedded rendering engine for media data
KR102368962B1 (ko) 2019-03-22 2022-03-03 국민대학교산학협력단 멤리스터 어레이 회로를 제어하기 위한 게이트 회로를 포함하는 뉴럴 네트워크 시스템
KR20200129457A (ko) 2019-05-08 2020-11-18 삼성전자주식회사 학습을 수행하는 뉴럴 네트워크 시스템, 그것의 학습 방법 및 뉴럴 네트워크 프로세서의 전이 학습 방법
KR20210008776A (ko) 2019-07-15 2021-01-25 삼성전자주식회사 반도체 메모리 장치 및 이를 포함하는 전자 시스템
KR102279563B1 (ko) * 2019-11-06 2021-07-21 한국과학기술원 레이더 신호 처리 장치 및 레이더 신호 처리 방법
KR102410166B1 (ko) * 2019-11-27 2022-06-20 고려대학교 산학협력단 이종 곱셈-누셈 유닛을 이용하는 심층 신경망의 가속기
KR20210092078A (ko) * 2020-01-15 2021-07-23 삼성전자주식회사 병렬 연산 처리를 수행하는 메모리 장치 및 그 동작방법, 그리고 메모리 장치를 제어하는 메모리 컨트롤러의 동작방법
US11176043B2 (en) * 2020-04-02 2021-11-16 International Business Machines Corporation Distributed memory-augmented neural network architecture
US20210357739A1 (en) * 2020-05-14 2021-11-18 Micron Technology, Inc. Memory device to train neural networks
US20220051078A1 (en) * 2020-08-14 2022-02-17 Micron Technology, Inc. Transformer neural network in memory

Family Cites Families (322)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4380046A (en) 1979-05-21 1983-04-12 Nasa Massively parallel processor computer
JPS6032911B2 (ja) 1979-07-26 1985-07-31 株式会社東芝 半導体記憶装置
US4435792A (en) 1982-06-30 1984-03-06 Sun Microsystems, Inc. Raster memory manipulation apparatus
US4727474A (en) 1983-02-18 1988-02-23 Loral Corporation Staging memory for massively parallel processor
EP0214718A3 (en) 1985-07-22 1990-04-04 Alliant Computer Systems Corporation Digital computer
US5201039A (en) 1987-09-30 1993-04-06 Mitsubishi Denki Kabushiki Kaisha Multiple address-space data processor with addressable register and context switching
US4843264A (en) 1987-11-25 1989-06-27 Visic, Inc. Dynamic sense amplifier for CMOS static RAM
US5276643A (en) 1988-08-11 1994-01-04 Siemens Aktiengesellschaft Integrated semiconductor circuit
JPH0713858B2 (ja) 1988-08-30 1995-02-15 三菱電機株式会社 半導体記憶装置
US5023838A (en) 1988-12-02 1991-06-11 Ncr Corporation Random access memory device with integral logic capability
US4958378A (en) 1989-04-26 1990-09-18 Sun Microsystems, Inc. Method and apparatus for detecting changes in raster data
US5253308A (en) 1989-06-21 1993-10-12 Amber Engineering, Inc. Massively parallel digital image data processor using pixel-mapped input/output and relative indexed addressing
JP3260357B2 (ja) * 1990-01-24 2002-02-25 株式会社日立製作所 情報処理装置
JP3353786B2 (ja) 1990-01-24 2002-12-03 株式会社日立製作所 情報処理装置
DE69132495T2 (de) 1990-03-16 2001-06-13 Texas Instruments Inc Verteilter Verarbeitungsspeicher
US5034636A (en) 1990-06-04 1991-07-23 Motorola, Inc. Sense amplifier with an integral logic function
US5210850A (en) 1990-06-15 1993-05-11 Compaq Computer Corporation Memory address space determination using programmable limit registers with single-ended comparators
JP3361825B2 (ja) 1990-08-22 2003-01-07 テキサス インスツルメンツ インコーポレイテツド メモリ・アレイ・アーキテクチャ
JPH06103599B2 (ja) 1990-11-16 1994-12-14 三菱電機株式会社 半導体集積回路装置
US5222193A (en) * 1990-12-26 1993-06-22 Intel Corporation Training system for neural networks and the like
US5325519A (en) 1991-10-18 1994-06-28 Texas Microsystems, Inc. Fault tolerant computer with archival rollback capabilities
FR2685973B1 (fr) 1992-01-03 1994-02-25 France Telecom Point memoire pour memoire associative.
KR950005095Y1 (ko) 1992-03-18 1995-06-22 문정환 양방향성 그로벌 비트 라인을 갖는 dram
JPH06215160A (ja) 1992-08-25 1994-08-05 Texas Instr Inc <Ti> データ処理方法および装置
KR950004854B1 (ko) 1992-10-08 1995-05-15 삼성전자 주식회사 반도체 메모리 장치
US5485373A (en) 1993-03-25 1996-01-16 Taligent, Inc. Language-sensitive text searching system with modified Boyer-Moore process
US5440482A (en) 1993-03-25 1995-08-08 Taligent, Inc. Forward and reverse Boyer-Moore string searching of multilingual text having a defined collation order
US5754478A (en) 1993-04-20 1998-05-19 Micron Technology, Inc. Fast, low power, write scheme for memory circuits using pulsed off isolation device
US5369622A (en) 1993-04-20 1994-11-29 Micron Semiconductor, Inc. Memory with isolated digit lines
JP2663838B2 (ja) 1993-07-27 1997-10-15 日本電気株式会社 半導体集積回路装置
JP3082530B2 (ja) 1993-09-13 2000-08-28 松下電器産業株式会社 ニューラルネットワーク回路
JP3252306B2 (ja) 1993-08-10 2002-02-04 株式会社日立製作所 半導体不揮発性記憶装置
JP3904244B2 (ja) 1993-09-17 2007-04-11 株式会社ルネサステクノロジ シングル・チップ・データ処理装置
JP3251421B2 (ja) 1994-04-11 2002-01-28 株式会社日立製作所 半導体集積回路
US5655113A (en) 1994-07-05 1997-08-05 Monolithic System Technology, Inc. Resynchronization circuit for a memory system and method of operating same
JPH0831168A (ja) 1994-07-13 1996-02-02 Hitachi Ltd 半導体記憶装置
US5481500A (en) 1994-07-22 1996-01-02 International Business Machines Corporation Precharged bit decoder and sense amplifier with integrated latch usable in pipelined memories
US5615404A (en) 1994-10-31 1997-03-25 Intel Corporation System having independently addressable bus interfaces coupled to serially connected multi-ported signal distributors generating and maintaining frame based polling schedule favoring isochronous peripherals
US5638128A (en) 1994-11-08 1997-06-10 General Instrument Corporation Of Delaware Pixel interpolation filters for video decompression processor
US5724366A (en) 1995-05-16 1998-03-03 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device
KR0146530B1 (ko) 1995-05-25 1998-09-15 김광호 단속제어회로를 구비한 반도체 메모리 장치와 제어방법
US7301541B2 (en) 1995-08-16 2007-11-27 Microunity Systems Engineering, Inc. Programmable processor and method with wide operations
JP2812262B2 (ja) 1995-08-31 1998-10-22 日本電気株式会社 連想記憶装置
US6385634B1 (en) 1995-08-31 2002-05-07 Intel Corporation Method for performing multiply-add operations on packed data
JP2817836B2 (ja) 1995-11-30 1998-10-30 日本電気株式会社 半導体メモリ装置
JP3356612B2 (ja) 1996-02-29 2002-12-16 インターナショナル・ビジネス・マシーンズ・コーポレーション 高速な輪郭スムージング方法及び装置
US6092186A (en) 1996-05-07 2000-07-18 Lucent Technologies Inc. Apparatus and method for aborting un-needed instruction fetches in a digital microprocessor device
US5915084A (en) 1996-09-30 1999-06-22 Advanced Micro Devices, Inc. Scannable sense amplifier circuit
US5991209A (en) 1997-04-11 1999-11-23 Raytheon Company Split sense amplifier and staging buffer for wide memory architecture
JP3592887B2 (ja) 1997-04-30 2004-11-24 株式会社東芝 不揮発性半導体記憶装置
US6510098B1 (en) 1997-05-28 2003-01-21 Cirrus Logic, Inc. Method and apparatus for transferring data in a dual port memory
JPH1115773A (ja) 1997-06-24 1999-01-22 Matsushita Electron Corp 半導体集積回路、コンピュータシステム、データ処理装置及びデータ処理方法
US5935263A (en) 1997-07-01 1999-08-10 Micron Technology, Inc. Method and apparatus for memory array compressed data testing
US6195734B1 (en) 1997-07-02 2001-02-27 Micron Technology, Inc. System for implementing a graphic address remapping table as a virtual register file in system memory
US6181698B1 (en) 1997-07-09 2001-01-30 Yoichi Hariguchi Network routing table using content addressable memory
US6025221A (en) 1997-08-22 2000-02-15 Micron Technology, Inc. Processing methods of forming integrated circuitry memory devices, methods of forming DRAM arrays, and related semiconductor masks
US5991785A (en) 1997-11-13 1999-11-23 Lucent Technologies Inc. Determining an extremum value and its index in an array using a dual-accumulation processor
US5867429A (en) 1997-11-19 1999-02-02 Sandisk Corporation High density non-volatile flash memory without adverse effects of electric field coupling between adjacent floating gates
US6163862A (en) 1997-12-01 2000-12-19 International Business Machines Corporation On-chip test circuit for evaluating an on-chip signal using an external test signal
JP3488612B2 (ja) 1997-12-11 2004-01-19 株式会社東芝 センス増幅回路
US5986942A (en) 1998-01-20 1999-11-16 Nec Corporation Semiconductor memory device
JPH11260057A (ja) 1998-03-13 1999-09-24 Nec Corp 半導体記憶装置
JPH11265995A (ja) 1998-03-17 1999-09-28 Mitsubishi Electric Corp 半導体記憶装置
JPH11306751A (ja) 1998-04-22 1999-11-05 Toshiba Corp 半導体記憶装置
WO2002095534A2 (en) 2001-05-18 2002-11-28 Biowulf Technologies, Llc Methods for feature selection in a learning machine
EP1093638B1 (en) * 1998-06-23 2002-11-27 Intellix A/S N-tuple or ram based neural network classification system and method
US6005799A (en) 1998-08-06 1999-12-21 Silicon Aquarius Methods and circuits for single-memory dynamic cell multivalue data storage
US6141286A (en) 1998-08-21 2000-10-31 Micron Technology, Inc. Embedded DRAM architecture with local data drivers and programmable number of data read and data write lines
US7409694B2 (en) 1998-09-09 2008-08-05 Microsoft Corporation Highly componentized system architecture with loadable virtual memory manager
JP2000173269A (ja) 1998-12-08 2000-06-23 Mitsubishi Electric Corp 半導体記憶装置
KR100381968B1 (ko) 1998-12-30 2004-03-24 주식회사 하이닉스반도체 고속동작용디램
US5999435A (en) 1999-01-15 1999-12-07 Fast-Chip, Inc. Content addressable memory device
US6389507B1 (en) 1999-01-15 2002-05-14 Gigabus, Inc. Memory device search system and method
US6134164A (en) 1999-04-22 2000-10-17 International Business Machines Corp. Sensing circuit for a memory cell array
US6741104B2 (en) 1999-05-26 2004-05-25 Micron Technology, Inc. DRAM sense amplifier for low voltages
US6157578A (en) 1999-07-15 2000-12-05 Stmicroelectronics, Inc. Method and apparatus for accessing a memory device
US6208544B1 (en) 1999-09-09 2001-03-27 Harris Corporation Content addressable memory cell providing simultaneous read and compare capability
US6578058B1 (en) 1999-10-06 2003-06-10 Agilent Technologies, Inc. System and method for comparing values from target systems
US7124221B1 (en) 1999-10-19 2006-10-17 Rambus Inc. Low latency multi-level communication interface
US6418498B1 (en) 1999-12-30 2002-07-09 Intel Corporation Integrated system management memory for system management interrupt handler independent of BIOS and operating system
JP4627103B2 (ja) 2000-01-18 2011-02-09 富士通セミコンダクター株式会社 半導体記憶装置及びその制御方法
US6687175B1 (en) 2000-02-04 2004-02-03 Renesas Technology Corporation Semiconductor device
US20010042069A1 (en) 2000-02-29 2001-11-15 Petrov Peter D. Method and apparatus for building a memory image
US7028170B2 (en) 2000-03-08 2006-04-11 Sun Microsystems, Inc. Processing architecture having a compare capability
JP3983969B2 (ja) 2000-03-08 2007-09-26 株式会社東芝 不揮発性半導体記憶装置
US6678678B2 (en) 2000-03-09 2004-01-13 Braodcom Corporation Method and apparatus for high speed table search
JP3822412B2 (ja) 2000-03-28 2006-09-20 株式会社東芝 半導体記憶装置
US6965648B1 (en) 2000-05-04 2005-11-15 Sun Microsystems, Inc. Source synchronous link integrity validation
AU2001270400A1 (en) 2000-07-07 2002-01-21 Mosaid Technologies Incorporated A high speed dram architecture with uniform access latency
US6466499B1 (en) 2000-07-11 2002-10-15 Micron Technology, Inc. DRAM sense amplifier having pre-charged transistor body nodes
AU2001285161A1 (en) 2000-08-21 2002-03-04 United States Postal Services Delivery point validation system
US6301164B1 (en) 2000-08-25 2001-10-09 Micron Technology, Inc. Antifuse method to repair columns in a prefetched output memory architecture
US6704828B1 (en) 2000-08-31 2004-03-09 Micron Technology, Inc. System and method for implementing data pre-fetch having reduced data lines and/or higher data rates
US6948056B1 (en) 2000-09-28 2005-09-20 Intel Corporation Maintaining even and odd array pointers to extreme values by searching and comparing multiple elements concurrently where a pointer is adjusted after processing to account for a number of pipeline stages
US6304477B1 (en) 2001-01-31 2001-10-16 Motorola, Inc. Content addressable magnetic random access memory
US6563754B1 (en) 2001-02-08 2003-05-13 Integrated Device Technology, Inc. DRAM circuit with separate refresh memory
US6650158B2 (en) 2001-02-21 2003-11-18 Ramtron International Corporation Ferroelectric non-volatile logic elements
US7546438B2 (en) 2001-07-19 2009-06-09 Chung Shine C Algorithm mapping, specialized instructions and architecture features for smart memory computing
US6807614B2 (en) 2001-07-19 2004-10-19 Shine C. Chung Method and apparatus for using smart memories in computing
ITRM20010531A1 (it) 2001-08-31 2003-02-28 Micron Technology Inc Dispositivo rilevatore a bassa potenza e alta tensione per memorie ditipo flash.
US7260672B2 (en) 2001-09-07 2007-08-21 Intel Corporation Using data stored in a destructive-read memory
US7062689B2 (en) 2001-12-20 2006-06-13 Arm Limited Method and apparatus for memory self testing
US20040073773A1 (en) 2002-02-06 2004-04-15 Victor Demjanenko Vector processor architecture and methods performed therein
US6707729B2 (en) 2002-02-15 2004-03-16 Micron Technology, Inc. Physically alternating sense amplifier activation
WO2003088033A1 (en) 2002-04-09 2003-10-23 University Of Rochester Multiplier-based processor-in-memory architectures for image and graphics processing
JP2003331598A (ja) 2002-05-13 2003-11-21 Mitsubishi Electric Corp 半導体記憶装置
US7406494B2 (en) 2002-05-14 2008-07-29 Texas Instruments Incorporated Method of generating a cycle-efficient bit-reverse index array for a wireless communication system
JP2003346484A (ja) 2002-05-23 2003-12-05 Mitsubishi Electric Corp 不揮発性半導体記憶装置
US6789099B2 (en) 2002-06-10 2004-09-07 International Business Machines Corporation Sense-amp based adder with source follower evaluation tree
US7054178B1 (en) 2002-09-06 2006-05-30 Etron Technology, Inc. Datapath architecture for high area efficiency
US6987693B2 (en) 2002-09-24 2006-01-17 Sandisk Corporation Non-volatile memory and method with reduced neighboring field errors
US7079407B1 (en) 2002-10-18 2006-07-18 Netlogic Microsystems, Inc. Content addressable memory (CAM) device including match line sensing
US6765834B2 (en) 2002-11-19 2004-07-20 Hewlett-Packard Development Company, L.P. System and method for sensing memory cells of an array of memory cells
US6731542B1 (en) 2002-12-05 2004-05-04 Advanced Micro Devices, Inc. Circuit for accurate memory read operations
KR100546307B1 (ko) 2002-12-05 2006-01-26 삼성전자주식회사 글로벌 입출력라인을 프리차지 및/또는 이퀄라이징하기위한 프리차지 회로를 구비하는 반도체 장치 및프리차지 및/또는 이퀄라이즈하는 트랜지스터의 레이아웃
US6888372B1 (en) 2002-12-20 2005-05-03 Altera Corporation Programmable logic device with soft multiplier
AU2002353406A1 (en) 2002-12-27 2004-07-22 Solid State System Co., Ltd. Nonvolatile memory unit with specific cache
US7346903B2 (en) 2003-02-04 2008-03-18 Sun Microsystems, Inc. Compiling and linking modules of a cycle-based logic design
US6768679B1 (en) 2003-02-10 2004-07-27 Advanced Micro Devices, Inc. Selection circuit for accurate memory read operations
US6819612B1 (en) 2003-03-13 2004-11-16 Advanced Micro Devices, Inc. Apparatus and method for a sense amplifier circuit that samples and holds a reference voltage
US6865122B2 (en) 2003-04-11 2005-03-08 Intel Corporation Reclaiming blocks in a block-alterable memory
US7447720B2 (en) 2003-04-23 2008-11-04 Micron Technology, Inc. Method for finding global extrema of a set of bytes distributed across an array of parallel processing elements
US7454451B2 (en) 2003-04-23 2008-11-18 Micron Technology, Inc. Method for finding local extrema of a set of values for a parallel processing element
US7574466B2 (en) 2003-04-23 2009-08-11 Micron Technology, Inc. Method for finding global extrema of a set of shorts distributed across an array of parallel processing elements
US9015390B2 (en) 2003-04-25 2015-04-21 Micron Technology, Inc. Active memory data compression system and method
DE10319271A1 (de) 2003-04-29 2004-11-25 Infineon Technologies Ag Speicher-Schaltungsanordnung und Verfahren zur Herstellung
JP3898152B2 (ja) 2003-05-27 2007-03-28 ローム株式会社 演算機能付き記憶装置および演算記憶方法
WO2005024843A1 (en) 2003-09-04 2005-03-17 Koninklijke Philips Electronics N.V. Integrated circuit and a method of cache remapping
US6956770B2 (en) 2003-09-17 2005-10-18 Sandisk Corporation Non-volatile memory and method with bit line compensation dependent on neighboring operating modes
US7177183B2 (en) 2003-09-30 2007-02-13 Sandisk 3D Llc Multiple twin cell non-volatile memory array and logic block structure and method therefor
US7913125B2 (en) 2003-11-04 2011-03-22 Lsi Corporation BISR mode to test the redundant elements and regular functional memory to avoid test escapes
US6950771B1 (en) 2003-12-09 2005-09-27 Xilinx, Inc. Correlation of electrical test data with physical defect data
US20050129306A1 (en) 2003-12-12 2005-06-16 Xianglin Wang Method and apparatus for image deinterlacing using neural networks
US7631236B2 (en) 2004-01-29 2009-12-08 International Business Machines Corporation Hybrid built-in self test (BIST) architecture for embedded memory arrays and an associated method
US7401281B2 (en) 2004-01-29 2008-07-15 International Business Machines Corporation Remote BIST high speed test and redundancy calculation
JP4819316B2 (ja) 2004-02-23 2011-11-24 ルネサスエレクトロニクス株式会社 半導体装置
US7088606B2 (en) 2004-03-10 2006-08-08 Altera Corporation Dynamic RAM storage techniques
US7020017B2 (en) 2004-04-06 2006-03-28 Sandisk Corporation Variable programming of non-volatile memory
US7120063B1 (en) 2004-05-07 2006-10-10 Spansion Llc Flash memory cell and methods for programming and erasing
US8522205B2 (en) 2004-05-18 2013-08-27 Oracle International Corporation Packaging multiple groups of read-only files of an application's components into multiple shared libraries
JP2006127460A (ja) 2004-06-09 2006-05-18 Renesas Technology Corp 半導体装置、半導体信号処理装置、およびクロスバースイッチ
US7061817B2 (en) 2004-06-30 2006-06-13 Micron Technology, Inc. Data path having grounded precharge operation and test compression capability
US7116602B2 (en) 2004-07-15 2006-10-03 Micron Technology, Inc. Method and system for controlling refresh to avoid memory cell data losses
US7434024B2 (en) 2004-08-30 2008-10-07 Ati Technologies, Inc. SIMD processor with register addressing, buffer stall and methods
US20060069849A1 (en) 2004-09-30 2006-03-30 Rudelic John C Methods and apparatus to update information in a memory
US7685365B2 (en) 2004-09-30 2010-03-23 Intel Corporation Transactional memory execution utilizing virtual memory
JP4252028B2 (ja) * 2004-11-25 2009-04-08 住友電気工業株式会社 交通音識別装置、コンピュータを交通音識別装置として機能させるための交通音判定プログラム、記録媒体および交通音判定方法
US20060149804A1 (en) 2004-11-30 2006-07-06 International Business Machines Corporation Multiply-sum dot product instruction with mask and splat
US7230851B2 (en) 2004-12-23 2007-06-12 Sandisk Corporation Reducing floating gate to floating gate coupling effect
KR100673901B1 (ko) 2005-01-28 2007-01-25 주식회사 하이닉스반도체 저전압용 반도체 메모리 장치
US7543119B2 (en) 2005-02-10 2009-06-02 Richard Edward Hessel Vector processor
US20060224532A1 (en) 2005-03-09 2006-10-05 Case Western Reserve University Iterative feature weighting with neural networks
US7624313B2 (en) 2005-03-28 2009-11-24 Hewlett-Packard Development Company, L.P. TCAM BIST with redundancy
US7187585B2 (en) 2005-04-05 2007-03-06 Sandisk Corporation Read operation for non-volatile storage that includes compensation for coupling
US7196928B2 (en) 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling during read operations of non-volatile memory
US7809722B2 (en) * 2005-05-09 2010-10-05 Like.Com System and method for enabling search and retrieval from image files based on recognized information
US7193898B2 (en) 2005-06-20 2007-03-20 Sandisk Corporation Compensation currents in non-volatile memory read operations
KR100720644B1 (ko) 2005-11-17 2007-05-21 삼성전자주식회사 메모리 장치 및 메모리 그 동작 방법
JP4804479B2 (ja) 2005-12-13 2011-11-02 スパンション エルエルシー 半導体装置およびその制御方法
JP5129450B2 (ja) 2006-01-16 2013-01-30 ルネサスエレクトロニクス株式会社 情報処理装置
US8077533B2 (en) 2006-01-23 2011-12-13 Freescale Semiconductor, Inc. Memory and method for sensing data in a memory using complementary sensing scheme
JP4989900B2 (ja) 2006-01-31 2012-08-01 ルネサスエレクトロニクス株式会社 並列演算処理装置
US7400532B2 (en) 2006-02-16 2008-07-15 Micron Technology, Inc. Programming method to reduce gate coupling interference for non-volatile memory
KR100755370B1 (ko) 2006-04-17 2007-09-04 삼성전자주식회사 반도체 메모리 장치
TW200828333A (en) 2006-04-28 2008-07-01 Samsung Electronics Co Ltd Sense amplifier circuit and sense amplifier-based flip-flop having the same
US7752417B2 (en) 2006-06-05 2010-07-06 Oracle America, Inc. Dynamic selection of memory virtualization techniques
US7372715B2 (en) 2006-06-14 2008-05-13 Micron Technology, Inc. Architecture and method for NAND flash memory
US8069377B2 (en) 2006-06-26 2011-11-29 Micron Technology, Inc. Integrated circuit having memory array including ECC and column redundancy and method of operating the same
US7724559B2 (en) 2006-07-14 2010-05-25 International Business Machines Corporation Self-referenced match-line sense amplifier for content addressable memories
US7885119B2 (en) 2006-07-20 2011-02-08 Sandisk Corporation Compensating for coupling during programming
US7443729B2 (en) 2006-07-20 2008-10-28 Sandisk Corporation System that compensates for coupling based on sensing a neighbor using coupling
US7692466B2 (en) 2006-08-18 2010-04-06 Ati Technologies Ulc Sense amplifier based flip-flop
US7805587B1 (en) 2006-11-01 2010-09-28 Nvidia Corporation Memory addressing controlled by PTE fields
US8151082B2 (en) 2007-12-06 2012-04-03 Fusion-Io, Inc. Apparatus, system, and method for converting a storage request into an append data storage command
US7471536B2 (en) 2006-12-08 2008-12-30 Texas Instruments Incorporated Match mismatch emulation scheme for an addressed location in a CAM
US7460387B2 (en) 2007-01-05 2008-12-02 International Business Machines Corporation eDRAM hierarchical differential sense amp
US7743303B2 (en) 2007-01-22 2010-06-22 Micron Technology, Inc. Defective memory block remapping method and system, and memory device and processor-based system using same
US7937535B2 (en) 2007-02-22 2011-05-03 Arm Limited Managing cache coherency in a data processing apparatus
US7804718B2 (en) 2007-03-07 2010-09-28 Mosaid Technologies Incorporated Partial block erase architecture for flash memory
US7492640B2 (en) 2007-06-07 2009-02-17 Sandisk Corporation Sensing with bit-line lockout control in non-volatile memory
JP2009009665A (ja) 2007-06-29 2009-01-15 Elpida Memory Inc 半導体記憶装置
US7996749B2 (en) 2007-07-03 2011-08-09 Altera Corporation Signal loss detector for high-speed serial interface of a programmable logic device
US7489543B1 (en) 2007-07-25 2009-02-10 Micron Technology, Inc. Programming multilevel cell memory arrays
US7694195B2 (en) 2007-08-14 2010-04-06 Dell Products L.P. System and method for using a memory mapping function to map memory defects
US7869273B2 (en) 2007-09-04 2011-01-11 Sandisk Corporation Reducing the impact of interference during programming
US7787319B2 (en) 2007-09-06 2010-08-31 Innovative Silicon Isi Sa Sense amplifier circuitry for integrated circuit having memory cell array, and method of operating same
US8042082B2 (en) 2007-09-12 2011-10-18 Neal Solomon Three dimensional memory in a system on a chip
US7965564B2 (en) 2007-09-18 2011-06-21 Zikbit Ltd. Processor arrays made of standard memory cells
US7663928B2 (en) 2007-10-09 2010-02-16 Ememory Technology Inc. Sense amplifier circuit having current mirror architecture
US8156299B2 (en) 2007-10-19 2012-04-10 Virident Systems Inc. Managing memory systems containing components with asymmetric characteristics
US7924628B2 (en) 2007-11-14 2011-04-12 Spansion Israel Ltd Operation of a non-volatile memory array
US7979667B2 (en) 2007-12-10 2011-07-12 Spansion Llc Memory array search engine
US7755960B2 (en) 2007-12-17 2010-07-13 Stmicroelectronics Sa Memory including a performance test circuit
US8495438B2 (en) 2007-12-28 2013-07-23 Texas Instruments Incorporated Technique for memory imprint reliability improvement
US7808854B2 (en) 2008-02-19 2010-10-05 Kabushiki Kaisha Toshiba Systems and methods for data transfers between memory cells
JP5194302B2 (ja) 2008-02-20 2013-05-08 ルネサスエレクトロニクス株式会社 半導体信号処理装置
US8332580B2 (en) 2008-04-02 2012-12-11 Zikbit Ltd. System, method and apparatus for memory with embedded associative section for computations
US20090254694A1 (en) 2008-04-02 2009-10-08 Zikbit Ltd. Memory device with integrated parallel processing
US7957206B2 (en) 2008-04-04 2011-06-07 Micron Technology, Inc. Read circuitry for an integrated circuit having memory cells and/or a memory cell array, and method of operating same
US8339824B2 (en) 2008-07-02 2012-12-25 Cooke Laurence H Nearest neighbor serial content addressable memory
US8417921B2 (en) 2008-08-15 2013-04-09 Apple Inc. Running-min and running-max instructions for processing vectors using a base value from a key element of an input vector
US8555037B2 (en) 2008-08-15 2013-10-08 Apple Inc. Processing vectors using wrapping minima and maxima instructions in the macroscalar architecture
US8259509B2 (en) 2008-08-18 2012-09-04 Elpida Memory, Inc. Semiconductor memory device and method with auxiliary I/O line assist circuit and functionality
ITRM20080543A1 (it) 2008-10-09 2010-04-10 Micron Technology Inc Architettura e metodo per la programmazione di memorie.
KR101596283B1 (ko) 2008-12-19 2016-02-23 삼성전자 주식회사 개선된 로컬 입출력라인 프리차아지 스킴을 갖는 반도체 메모리 장치
KR101622922B1 (ko) 2009-03-06 2016-05-20 삼성전자 주식회사 개선된 로컬 입출력라인 프리차아지 스킴을 갖는 반도체 메모리 장치
US8484276B2 (en) 2009-03-18 2013-07-09 International Business Machines Corporation Processing array data on SIMD multi-core processor architectures
JP5353443B2 (ja) * 2009-05-25 2013-11-27 株式会社Jvcケンウッド データ分類器作成装置、データ分類装置、データ分類器作成方法、データ分類方法、データ分類器作成プログラム、データ分類プログラム
KR20100134235A (ko) 2009-06-15 2010-12-23 삼성전자주식회사 반도체 메모리 장치
US7898864B2 (en) 2009-06-24 2011-03-01 Sandisk Corporation Read operation for memory with compensation for coupling based on write-erase cycles
US8412987B2 (en) 2009-06-30 2013-04-02 Micron Technology, Inc. Non-volatile memory to store memory remap information
US8412985B1 (en) 2009-06-30 2013-04-02 Micron Technology, Inc. Hardwired remapped memory
US9076527B2 (en) 2009-07-16 2015-07-07 Mikamonu Group Ltd. Charge sharing in a TCAM array
US8238173B2 (en) 2009-07-16 2012-08-07 Zikbit Ltd Using storage cells to perform computation
JP4951041B2 (ja) 2009-08-06 2012-06-13 株式会社東芝 半導体記憶装置
US8059438B2 (en) 2009-08-28 2011-11-15 International Business Machines Corporation Content addressable memory array programmed to perform logic operations
US8077532B2 (en) 2009-09-02 2011-12-13 Micron Technology, Inc. Small unit internal verify read in a memory device
US8482975B2 (en) 2009-09-14 2013-07-09 Micron Technology, Inc. Memory kink checking
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US9477636B2 (en) 2009-10-21 2016-10-25 Micron Technology, Inc. Memory having internal processors and data communication methods in memory
WO2011048522A2 (en) 2009-10-21 2011-04-28 Zikbit Ltd. Neighborhood operations for parallel processing
US8650232B2 (en) 2009-10-26 2014-02-11 Via Technologies, Inc. System and method for determination of a horizontal minimum of digital values
KR101634340B1 (ko) 2009-11-03 2016-06-28 삼성전자주식회사 반도체 메모리 장치의 프로그램 방법
US8583896B2 (en) 2009-11-13 2013-11-12 Nec Laboratories America, Inc. Massively parallel processing core with plural chains of processing elements and respective smart memory storing select data received from each chain
KR20110054773A (ko) 2009-11-18 2011-05-25 삼성전자주식회사 비트라인 디스털번스를 개선하는 반도체 메모리 장치
US8089815B2 (en) 2009-11-24 2012-01-03 Sandisk Technologies Inc. Programming memory with bit line floating to reduce channel-to-floating gate coupling
US8605015B2 (en) 2009-12-23 2013-12-10 Syndiant, Inc. Spatial light modulator with masking-comparators
JP2011146102A (ja) 2010-01-15 2011-07-28 Elpida Memory Inc 半導体装置及びデータ処理システム
CN102141905B (zh) 2010-01-29 2015-02-25 上海芯豪微电子有限公司 一种处理器体系结构
US8164942B2 (en) 2010-02-01 2012-04-24 International Business Machines Corporation High performance eDRAM sense amplifier
US8533245B1 (en) 2010-03-03 2013-09-10 Altera Corporation Multipliers with a reduced number of memory blocks
WO2011137189A1 (en) 2010-04-27 2011-11-03 Cornell Research Foundation System and methods for mapping and searching objects in multidimensional space
KR101119371B1 (ko) 2010-04-29 2012-03-06 주식회사 하이닉스반도체 반도체 메모리 장치 및 이의 동작 방법
US8559232B2 (en) 2010-05-03 2013-10-15 Aplus Flash Technology, Inc. DRAM-like NVM memory array and sense amplifier design for high temperature and high endurance operation
US8351278B2 (en) 2010-06-23 2013-01-08 International Business Machines Corporation Jam latch for latching memory array output data
KR101143471B1 (ko) 2010-07-02 2012-05-11 에스케이하이닉스 주식회사 센스앰프 및 이를 포함하는 반도체 장치
US20120017039A1 (en) 2010-07-16 2012-01-19 Plx Technology, Inc. Caching using virtual memory
US8462532B1 (en) 2010-08-31 2013-06-11 Netlogic Microsystems, Inc. Fast quaternary content addressable memory cell
US8347154B2 (en) 2010-09-21 2013-01-01 International Business Machines Corporation Use of hashing function to distinguish random and repeat errors in a memory system
US8904115B2 (en) 2010-09-28 2014-12-02 Texas Instruments Incorporated Cache with multiple access pipelines
US8332367B2 (en) 2010-10-20 2012-12-11 International Business Machines Corporation Parallel data redundancy removal
KR101148352B1 (ko) 2010-11-02 2012-05-21 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그의 동작 방법
JP5528987B2 (ja) 2010-11-11 2014-06-25 ピーエスフォー ルクスコ エスエイアールエル 半導体装置
US8553482B2 (en) 2010-11-29 2013-10-08 Apple Inc. Sense amplifier and sense amplifier latch having common control
US8892487B2 (en) * 2010-12-30 2014-11-18 International Business Machines Corporation Electronic synapses for reinforcement learning
US9165023B2 (en) 2011-01-31 2015-10-20 Freescale Semiconductor, Inc. Integrated circuit device and method for determining an index of an extreme value within an array of values
KR20120088973A (ko) 2011-02-01 2012-08-09 삼성전자주식회사 로컬 센스앰프 회로 및 이를 포함하는 반도체 메모리 장치
JP2012174016A (ja) 2011-02-22 2012-09-10 Renesas Electronics Corp データ処理装置およびそのデータ処理方法
JP5259765B2 (ja) 2011-03-29 2013-08-07 株式会社東芝 不揮発性半導体メモリ
US8725730B2 (en) 2011-05-23 2014-05-13 Hewlett-Packard Development Company, L.P. Responding to a query in a data processing system
US8706958B2 (en) 2011-09-01 2014-04-22 Thomas Hein Data mask encoding in data bit inversion scheme
GB2510286B (en) 2011-10-28 2015-08-19 Hewlett Packard Development Co Row shifting shiftable memory
US8891297B2 (en) 2011-11-01 2014-11-18 Micron Technology, Inc. Memory cell sensing
US9830158B2 (en) 2011-11-04 2017-11-28 Nvidia Corporation Speculative execution and rollback
KR101321481B1 (ko) 2011-11-04 2013-10-28 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이를 위한 테스트 회로
KR20130052971A (ko) 2011-11-14 2013-05-23 삼성전자주식회사 비휘발성 메모리 장치의 동작 방법
WO2013078085A1 (en) 2011-11-22 2013-05-30 Mips Technologies, Inc. Processor with kernel mode access to user space virtual addresses
US9665371B2 (en) 2011-11-30 2017-05-30 Intel Corporation Providing vector horizontal compare functionality within a vector register
KR20130072869A (ko) 2011-12-22 2013-07-02 에스케이하이닉스 주식회사 프리차지 회로 및 비휘발성 메모리 장치
WO2013095592A1 (en) 2011-12-22 2013-06-27 Intel Corporation Apparatus and method for vector compute and accumulate
US20130286705A1 (en) 2012-04-26 2013-10-31 David B. Grover Low power content addressable memory hitline precharge and sensing circuit
US8938603B2 (en) 2012-05-31 2015-01-20 Samsung Electronics Co., Ltd. Cache system optimized for cache miss detection
US20130332707A1 (en) 2012-06-07 2013-12-12 Intel Corporation Speed up big-number multiplication using single instruction multiple data (simd) architectures
KR102062301B1 (ko) 2013-01-03 2020-01-03 삼성전자주식회사 메모리 장치의 페이지 복사 방법 및 메모리 시스템의 페이지 관리 방법
US20140215185A1 (en) 2013-01-29 2014-07-31 Atmel Norway Fetching instructions of a loop routine
US9158667B2 (en) 2013-03-04 2015-10-13 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9171153B2 (en) 2013-05-17 2015-10-27 Hewlett-Packard Development Company, L.P. Bloom filter with memory element
US8964496B2 (en) 2013-07-26 2015-02-24 Micron Technology, Inc. Apparatuses and methods for performing compare operations using sensing circuitry
US8971124B1 (en) 2013-08-08 2015-03-03 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9153305B2 (en) 2013-08-30 2015-10-06 Micron Technology, Inc. Independently addressable memory array address spaces
US9019785B2 (en) 2013-09-19 2015-04-28 Micron Technology, Inc. Data shifting via a number of isolation devices
US9449675B2 (en) 2013-10-31 2016-09-20 Micron Technology, Inc. Apparatuses and methods for identifying an extremum value stored in an array of memory cells
US9430191B2 (en) 2013-11-08 2016-08-30 Micron Technology, Inc. Division operations for memory
US10535014B2 (en) 2014-03-10 2020-01-14 California Institute Of Technology Alternative training distribution data in machine learning
US20150270015A1 (en) 2014-03-19 2015-09-24 Micron Technology, Inc. Memory mapping
US9934856B2 (en) 2014-03-31 2018-04-03 Micron Technology, Inc. Apparatuses and methods for comparing data patterns in memory
US9317785B1 (en) * 2014-04-21 2016-04-19 Video Mining Corporation Method and system for determining ethnicity category of facial images based on multi-level primary and auxiliary classifiers
US10838865B2 (en) 2014-05-08 2020-11-17 Micron Technology, Inc. Stacked memory device system interconnect directory-based cache coherence methodology
WO2015171905A1 (en) 2014-05-08 2015-11-12 Micron Technology, Inc. In-memory lightweight coherency
US9711207B2 (en) 2014-06-05 2017-07-18 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9449674B2 (en) 2014-06-05 2016-09-20 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9455020B2 (en) 2014-06-05 2016-09-27 Micron Technology, Inc. Apparatuses and methods for performing an exclusive or operation using sensing circuitry
US9779019B2 (en) 2014-06-05 2017-10-03 Micron Technology, Inc. Data storage layout
US10074407B2 (en) 2014-06-05 2018-09-11 Micron Technology, Inc. Apparatuses and methods for performing invert operations using sensing circuitry
US9830999B2 (en) 2014-06-05 2017-11-28 Micron Technology, Inc. Comparison operations in memory
US9704540B2 (en) 2014-06-05 2017-07-11 Micron Technology, Inc. Apparatuses and methods for parity determination using sensing circuitry
US9786335B2 (en) 2014-06-05 2017-10-10 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9496023B2 (en) 2014-06-05 2016-11-15 Micron Technology, Inc. Comparison operations on logical representations of values in memory
US9711206B2 (en) 2014-06-05 2017-07-18 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9910787B2 (en) 2014-06-05 2018-03-06 Micron Technology, Inc. Virtual address table
US20160026912A1 (en) * 2014-07-22 2016-01-28 Intel Corporation Weight-shifting mechanism for convolutional neural networks
JP6472621B2 (ja) * 2014-08-12 2019-02-20 株式会社Screenホールディングス 分類器構築方法、画像分類方法および画像分類装置
US9904515B2 (en) 2014-09-03 2018-02-27 Micron Technology, Inc. Multiplication operations in memory
US9747961B2 (en) 2014-09-03 2017-08-29 Micron Technology, Inc. Division operations in memory
US9847110B2 (en) 2014-09-03 2017-12-19 Micron Technology, Inc. Apparatuses and methods for storing a data value in multiple columns of an array corresponding to digits of a vector
US9898252B2 (en) 2014-09-03 2018-02-20 Micron Technology, Inc. Multiplication operations in memory
US10068652B2 (en) 2014-09-03 2018-09-04 Micron Technology, Inc. Apparatuses and methods for determining population count
US9740607B2 (en) 2014-09-03 2017-08-22 Micron Technology, Inc. Swap operations in memory
US9589602B2 (en) 2014-09-03 2017-03-07 Micron Technology, Inc. Comparison operations in memory
US9940026B2 (en) 2014-10-03 2018-04-10 Micron Technology, Inc. Multidimensional contiguous memory allocation
US9836218B2 (en) 2014-10-03 2017-12-05 Micron Technology, Inc. Computing reduction and prefix sum operations in memory
US10163467B2 (en) 2014-10-16 2018-12-25 Micron Technology, Inc. Multiple endianness compatibility
US10147480B2 (en) 2014-10-24 2018-12-04 Micron Technology, Inc. Sort operation in memory
US9779784B2 (en) 2014-10-29 2017-10-03 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US10073635B2 (en) 2014-12-01 2018-09-11 Micron Technology, Inc. Multiple endianness compatibility
US9747960B2 (en) 2014-12-01 2017-08-29 Micron Technology, Inc. Apparatuses and methods for converting a mask to an index
US10061590B2 (en) 2015-01-07 2018-08-28 Micron Technology, Inc. Generating and executing a control flow
US10032493B2 (en) 2015-01-07 2018-07-24 Micron Technology, Inc. Longest element length determination in memory
US9583163B2 (en) 2015-02-03 2017-02-28 Micron Technology, Inc. Loop structure for operations in memory
US9898253B2 (en) 2015-03-11 2018-02-20 Micron Technology, Inc. Division operations on variable length elements in memory
US9741399B2 (en) 2015-03-11 2017-08-22 Micron Technology, Inc. Data shift by elements of a vector in memory
US10146537B2 (en) 2015-03-13 2018-12-04 Micron Technology, Inc. Vector population count determination in memory
US10049054B2 (en) 2015-04-01 2018-08-14 Micron Technology, Inc. Virtual register file
US10140104B2 (en) 2015-04-14 2018-11-27 Micron Technology, Inc. Target architecture determination
US9959923B2 (en) 2015-04-16 2018-05-01 Micron Technology, Inc. Apparatuses and methods to reverse data stored in memory
US10387770B2 (en) 2015-06-10 2019-08-20 Samsung Electronics Co., Ltd. Spiking neural network with reduced memory access and reduced in-network bandwidth consumption
EP3104309B1 (en) 2015-06-10 2020-04-01 Samsung Electronics Co., Ltd. Spiking neural network with reduced memory access and reduced in-network bandwidth consumption
US9704541B2 (en) 2015-06-12 2017-07-11 Micron Technology, Inc. Simulating access lines
US9921777B2 (en) 2015-06-22 2018-03-20 Micron Technology, Inc. Apparatuses and methods for data transfer from sensing circuitry to a controller
US10474950B2 (en) 2015-06-29 2019-11-12 Microsoft Technology Licensing, Llc Training and operation of computational models
US9996479B2 (en) 2015-08-17 2018-06-12 Micron Technology, Inc. Encryption of executables in computational memory
US10423879B2 (en) * 2016-01-13 2019-09-24 International Business Machines Corporation Efficient generation of stochastic spike patterns in core-based neuromorphic systems

Also Published As

Publication number Publication date
CN117436477A (zh) 2024-01-23
EP3602416A1 (en) 2020-02-05
CN110447043A (zh) 2019-11-12
KR102447788B1 (ko) 2022-09-27
WO2018175130A1 (en) 2018-09-27
EP3602416A4 (en) 2021-01-13
US11769053B2 (en) 2023-09-26
CN110447043B (zh) 2023-11-21
TW201841131A (zh) 2018-11-16
US11222260B2 (en) 2022-01-11
US20180276539A1 (en) 2018-09-27
US20220092422A1 (en) 2022-03-24
KR20190121859A (ko) 2019-10-28
JP2020512633A (ja) 2020-04-23
TWI710975B (zh) 2020-11-21

Similar Documents

Publication Publication Date Title
JP6931712B2 (ja) ニューラルネットワークを動作させる装置及び方法
JP2020512633A5 (ja)
US11755206B2 (en) Bank to bank data transfer
US20210142845A1 (en) Apparatuses and methods for logic/memory devices
US10482948B2 (en) Apparatuses and methods for data movement
US11372550B2 (en) Apparatuses and methods for simultaneous in data path compute operations
US20210272622A1 (en) Apparatuses and methods for compute in data path
US11048652B2 (en) Apparatus and methods for in data path compute operations
US10878856B2 (en) Data transfer between subarrays in memory

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191025

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191025

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210325

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20210325

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210720

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210816

R150 Certificate of patent or registration of utility model

Ref document number: 6931712

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150