JP2020512633A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2020512633A5 JP2020512633A5 JP2019551437A JP2019551437A JP2020512633A5 JP 2020512633 A5 JP2020512633 A5 JP 2020512633A5 JP 2019551437 A JP2019551437 A JP 2019551437A JP 2019551437 A JP2019551437 A JP 2019551437A JP 2020512633 A5 JP2020512633 A5 JP 2020512633A5
- Authority
- JP
- Japan
- Prior art keywords
- data
- shared
- lines
- array
- memory
- 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.)
- Granted
Links
- 230000000295 complement Effects 0.000 description 54
- 230000001537 neural Effects 0.000 description 48
- 230000000875 corresponding Effects 0.000 description 18
- 239000000203 mixture Substances 0.000 description 18
- 238000010586 diagram Methods 0.000 description 15
- 239000003990 capacitor Substances 0.000 description 9
- 241000282326 Felis catus Species 0.000 description 8
- 230000003213 activating Effects 0.000 description 3
- UIIMBOGNXHQVGW-UHFFFAOYSA-M buffer Substances [Na+].OC([O-])=O UIIMBOGNXHQVGW-UHFFFAOYSA-M 0.000 description 3
- 238000011067 equilibration Methods 0.000 description 3
- 241000282472 Canis lupus familiaris Species 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 230000001066 destructive Effects 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 239000001993 wax Substances 0.000 description 2
- 241000209134 Arundinaria Species 0.000 description 1
- 230000002457 bidirectional Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000003139 buffering Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000005755 formation reaction Methods 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000004301 light adaptation Effects 0.000 description 1
- 230000002085 persistent Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static Effects 0.000 description 1
- 230000001360 synchronised Effects 0.000 description 1
- 108060008071 tama Proteins 0.000 description 1
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)デバイスは、外部通信を減少させ排除することによって時間を節約することができ、温存することもできる。
本開示は、ニューラルネットワークを動作させるための装置及び方法を含む。例示的な装置は、複数のニューラルネットワークを含み、複数のニューラルネットワークは、特定のデータ部分を受信するように構成され、複数のニューラルネットワークのそれぞれは、特定の期間中に特定のデータ部分に演算を行って、この特定のデータ部分の特徴についての決定を行うように構成される。いくつかの実施形態において、複数のニューラルネットワークは、プロセッシングインメモリ(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対の相補的メモリセルは、6F2(たとえば、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などの計算エンジン)の回路は、メモリアレイと関連するピッチルールを準拠していない可能性がある。たとえば、メモリアレイのメモリセルは、4F2または6F2のセルサイズを有することができる。このようなものとして、従来のシステムの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つ以上の実施形態の範囲は、これらのような請求項が権利を与えられる均等物の全範囲に加えて、添付の特許請求の範囲を参照して決定される。
前述の発明を実施するための形態において、いくつかの特徴は、本開示を合理化する目的のために単一の実施形態にまとめられる。開示のこの方法は、本開示の開示された実施形態が各請求項に明白に列挙されるより多くの特徴を使用しなければならない意図を反映すると解釈されてはならない。むしろ、下記の特許請求の範囲が反映する場合、本発明の主題は、単一の開示された実施形態のすべての特徴より少ない特徴にある。したがって、下記の特許請求の範囲は、各請求項が別々の実施形態としてそれ自体を主張しながら、発明を実施するための形態に本明細書により援用される。
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 true JP2020512633A5 (ja) | 2021-05-13 |
JP6931712B2 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)
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)
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 |
JP3353786B2 (ja) | 1990-01-24 | 2002-12-03 | 株式会社日立製作所 | 情報処理装置 |
JP3260357B2 (ja) * | 1990-01-24 | 2002-02-25 | 株式会社日立製作所 | 情報処理装置 |
EP0446721B1 (en) | 1990-03-16 | 2000-12-20 | Texas Instruments Incorporated | Distributed processing memory |
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 |
EP0584783A3 (en) | 1992-08-25 | 1994-06-22 | Texas Instruments Inc | Method and apparatus for improved processing |
KR950004854B1 (ko) | 1992-10-08 | 1995-05-15 | 삼성전자 주식회사 | 반도체 메모리 장치 |
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 |
US5485373A (en) | 1993-03-25 | 1996-01-16 | Taligent, Inc. | Language-sensitive text searching system with modified Boyer-Moore process |
US5369622A (en) | 1993-04-20 | 1994-11-29 | Micron Semiconductor, Inc. | Memory with isolated digit lines |
US5754478A (en) | 1993-04-20 | 1998-05-19 | Micron Technology, Inc. | Fast, low power, write scheme for memory circuits using pulsed off isolation device |
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 | 半導体記憶装置 |
US7318051B2 (en) | 2001-05-18 | 2008-01-08 | Health Discovery Corporation | Methods for feature selection in a learning machine |
US6999950B1 (en) * | 1998-06-23 | 2006-02-14 | 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 | 주식회사 하이닉스반도체 | 고속동작용디램 |
US6389507B1 (en) | 1999-01-15 | 2002-05-14 | Gigabus, Inc. | Memory device search system and method |
US5999435A (en) | 1999-01-15 | 1999-12-07 | Fast-Chip, Inc. | Content addressable memory device |
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 |
WO2001065359A2 (en) | 2000-02-29 | 2001-09-07 | Peter Petrov | Method and apparatus for building a memory image |
JP3983969B2 (ja) | 2000-03-08 | 2007-09-26 | 株式会社東芝 | 不揮発性半導体記憶装置 |
US7028170B2 (en) | 2000-03-08 | 2006-04-11 | Sun Microsystems, Inc. | Processing architecture having a compare capability |
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 |
KR100869870B1 (ko) | 2000-07-07 | 2008-11-24 | 모사이드 테크놀로지스, 인코포레이티드 | 메모리 소자에서의 읽기 명령 수행 방법 및 dram액세스 방법 |
US6466499B1 (en) | 2000-07-11 | 2002-10-15 | Micron Technology, Inc. | DRAM sense amplifier having pre-charged transistor body nodes |
US7302582B2 (en) | 2000-08-21 | 2007-11-27 | United States Postal Service | 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 |
US6807614B2 (en) | 2001-07-19 | 2004-10-19 | Shine C. Chung | Method and apparatus for using smart memories in computing |
US7546438B2 (en) | 2001-07-19 | 2009-06-09 | Chung Shine C | Algorithm mapping, specialized instructions and architecture features for smart memory 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 |
AU2003221680A1 (en) | 2002-04-09 | 2003-10-27 | The Research Foundation Of State University Of New York | 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 |
US20050015557A1 (en) | 2002-12-27 | 2005-01-20 | Chih-Hung Wang | 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 |
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 |
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 |
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 | 삼성전자주식회사 | 메모리 장치 및 메모리 그 동작 방법 |
WO2007069295A1 (ja) | 2005-12-13 | 2007-06-21 | Spansion Llc | 半導体装置およびその制御方法 |
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 |
US7443729B2 (en) | 2006-07-20 | 2008-10-28 | Sandisk Corporation | System that compensates for coupling based on sensing a neighbor using coupling |
US7885119B2 (en) | 2006-07-20 | 2011-02-08 | Sandisk Corporation | Compensating for coupling during programming |
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 | ルネサスエレクトロニクス株式会社 | 半導体信号処理装置 |
US20090254694A1 (en) | 2008-04-02 | 2009-10-08 | Zikbit Ltd. | Memory device with integrated parallel processing |
US8332580B2 (en) | 2008-04-02 | 2012-12-11 | Zikbit Ltd. | System, method and apparatus for memory with embedded associative section for computations |
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 |
US8555037B2 (en) | 2008-08-15 | 2013-10-08 | Apple Inc. | Processing vectors using wrapping minima and maxima instructions in the macroscalar architecture |
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 |
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 |
US20120246380A1 (en) | 2009-10-21 | 2012-09-27 | Avidan Akerib | 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 |
US9317536B2 (en) | 2010-04-27 | 2016-04-19 | Cornell University | 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 |
US20140247673A1 (en) | 2011-10-28 | 2014-09-04 | Naveen Muralimanohar | 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 |
CN103959237B (zh) | 2011-11-30 | 2016-09-28 | 英特尔公司 | 用于提供向量横向比较功能的指令和逻辑 |
US20140108480A1 (en) | 2011-12-22 | 2014-04-17 | Elmoustapha Ould-Ahmed-Vall | Apparatus and method for vector compute and accumulate |
KR20130072869A (ko) | 2011-12-22 | 2013-07-02 | 에스케이하이닉스 주식회사 | 프리차지 회로 및 비휘발성 메모리 장치 |
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 |
WO2015171914A1 (en) | 2014-05-08 | 2015-11-12 | Micron Technology, Inc. | Hybrid memory cube system interconnect directory-based cache coherence methodology |
KR101887797B1 (ko) | 2014-05-08 | 2018-09-10 | 마이크론 테크놀로지, 인크. | 메모리 내 가벼운 일관성 |
US9704540B2 (en) | 2014-06-05 | 2017-07-11 | Micron Technology, Inc. | Apparatuses and methods for parity determination using sensing circuitry |
US10074407B2 (en) | 2014-06-05 | 2018-09-11 | Micron Technology, Inc. | Apparatuses and methods for performing invert operations using sensing circuitry |
US9496023B2 (en) | 2014-06-05 | 2016-11-15 | Micron Technology, Inc. | Comparison operations on logical representations of values in memory |
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 |
US9830999B2 (en) | 2014-06-05 | 2017-11-28 | Micron Technology, Inc. | Comparison operations in memory |
US9711206B2 (en) | 2014-06-05 | 2017-07-18 | Micron Technology, Inc. | Performing logical operations using sensing circuitry |
US9779019B2 (en) | 2014-06-05 | 2017-10-03 | Micron Technology, Inc. | Data storage layout |
US9455020B2 (en) | 2014-06-05 | 2016-09-27 | Micron Technology, Inc. | Apparatuses and methods for performing an exclusive or operation using sensing circuitry |
US9786335B2 (en) | 2014-06-05 | 2017-10-10 | Micron Technology, Inc. | Apparatuses and methods for 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ホールディングス | 分類器構築方法、画像分類方法および画像分類装置 |
US9747961B2 (en) | 2014-09-03 | 2017-08-29 | Micron Technology, Inc. | Division operations in memory |
US9904515B2 (en) | 2014-09-03 | 2018-02-27 | 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 |
US9898252B2 (en) | 2014-09-03 | 2018-02-20 | Micron Technology, Inc. | Multiplication operations in memory |
US9589602B2 (en) | 2014-09-03 | 2017-03-07 | Micron Technology, Inc. | Comparison 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 |
US9740607B2 (en) | 2014-09-03 | 2017-08-22 | Micron Technology, Inc. | Swap 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 |
US9747960B2 (en) | 2014-12-01 | 2017-08-29 | Micron Technology, Inc. | Apparatuses and methods for converting a mask to an index |
US10073635B2 (en) | 2014-12-01 | 2018-09-11 | Micron Technology, Inc. | Multiple endianness compatibility |
US10032493B2 (en) | 2015-01-07 | 2018-07-24 | Micron Technology, Inc. | Longest element length determination in memory |
US10061590B2 (en) | 2015-01-07 | 2018-08-28 | Micron Technology, Inc. | Generating and executing a control flow |
US9583163B2 (en) | 2015-02-03 | 2017-02-28 | Micron Technology, Inc. | Loop structure for operations in memory |
US9741399B2 (en) | 2015-03-11 | 2017-08-22 | Micron Technology, Inc. | Data shift by elements of a vector in memory |
US9898253B2 (en) | 2015-03-11 | 2018-02-20 | Micron Technology, Inc. | Division operations on variable length elements 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 |
-
2017
- 2017-03-22 US US15/466,296 patent/US11222260B2/en active Active
-
2018
- 2018-03-12 WO PCT/US2018/021936 patent/WO2018175130A1/en unknown
- 2018-03-12 CN CN202311494686.XA patent/CN117436477A/zh active Pending
- 2018-03-12 KR KR1020197030239A patent/KR102447788B1/ko active IP Right Grant
- 2018-03-12 JP JP2019551437A patent/JP6931712B2/ja active Active
- 2018-03-12 EP EP18770579.3A patent/EP3602416A4/en active Pending
- 2018-03-12 CN CN201880020107.9A patent/CN110447043B/zh active Active
- 2018-03-20 TW TW107109411A patent/TWI710975B/zh active
-
2021
- 2021-12-06 US US17/543,498 patent/US11769053B2/en active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6931712B2 (ja) | ニューラルネットワークを動作させる装置及び方法 | |
JP2020512633A5 (ja) | ||
US10929023B2 (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 | |
US11011220B2 (en) | Apparatuses and methods for compute in data path | |
US11048652B2 (en) | Apparatus and methods for in data path compute operations |