特許第5989281号(P5989281)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ マイクロン テクノロジー, インク.の特許一覧

特許5989281独立にアドレス指定可能なメモリアレイアドレス空間
<>
  • 特許5989281-独立にアドレス指定可能なメモリアレイアドレス空間 図000002
  • 特許5989281-独立にアドレス指定可能なメモリアレイアドレス空間 図000003
  • 特許5989281-独立にアドレス指定可能なメモリアレイアドレス空間 図000004
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】5989281
(24)【登録日】2016年8月19日
(45)【発行日】2016年9月7日
(54)【発明の名称】独立にアドレス指定可能なメモリアレイアドレス空間
(51)【国際特許分類】
   G11C 11/413 20060101AFI20160825BHJP
   G06F 12/00 20060101ALI20160825BHJP
【FI】
   G11C11/34 301E
   G06F12/00 560F
   G06F12/00 515A
【請求項の数】18
【全頁数】19
(21)【出願番号】特願2016-516011(P2016-516011)
(86)(22)【出願日】2014年8月13日
(86)【国際出願番号】US2014050816
(87)【国際公開番号】WO2015031051
(87)【国際公開日】20150305
【審査請求日】2016年3月18日
(31)【優先権主張番号】14/015,732
(32)【優先日】2013年8月30日
(33)【優先権主張国】US
【早期審査対象出願】
(73)【特許権者】
【識別番号】595168543
【氏名又は名称】マイクロン テクノロジー, インク.
(74)【代理人】
【識別番号】100074099
【弁理士】
【氏名又は名称】大菅 義之
(74)【代理人】
【識別番号】100106851
【弁理士】
【氏名又は名称】野村 泰久
(72)【発明者】
【氏名】マニング,トロイ エー.
【審査官】 後藤 彰
(56)【参考文献】
【文献】 特開平11−338767(JP,A)
【文献】 特開平 3− 44888(JP,A)
【文献】 特開昭63− 46581(JP,A)
【文献】 特開昭61−149989(JP,A)
【文献】 特開昭59−188764(JP,A)
【文献】 米国特許出願公開第2009/0141537(US,A1)
【文献】 米国特許出願公開第2004/0036508(US,A1)
【文献】 特開平 1− 91253(JP,A)
【文献】 特開平 2− 64990(JP,A)
【文献】 特開昭56− 19586(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G11C 11/413
G06F 12/00
G11C 7/10
(57)【特許請求の範囲】
【請求項1】
メモリアレイであって、
第1の本数の選択線及び複数のセンス線に結合されたメモリセルを含む第1のアドレス空間と、
第2の本数の選択線及び前記複数のセンス線に結合されたメモリセルを含む第2のアドレス空間とを備え、
前記第1のアドレス空間が、前記第2のアドレス空間に対して独立にアドレス指定可能であり、
前記第1の本数の選択線がデコーダに結合されており、前記第2の本数の選択線が、前記デコーダには結合されておらず、アドレス回路に直結されているメモリアレイ。
【請求項2】
前記第1の本数の選択線のうちの1本のみが所定の時間に活性化され、同時に、前記第2の本数の選択線が活性化される、請求項1に記載のメモリアレイ。
【請求項3】
前記第1の本数の選択線のある選択線と前記第2の本数の選択線のある選択線とが同時に活性化される、請求項2に記載のメモリアレイ。
【請求項4】
前記第1の本数の選択線の前記選択線と前記第2の本数の選択線の全てが同時に活性化される、請求項1から請求項3のいずれか一項に記載のメモリアレイ。
【請求項5】
前記第1の本数の選択線のうちの1本のみが所定の時間に活性化される、請求項1から請求項4のいずれか一項に記載のメモリアレイ。
【請求項6】
前記アドレス回路が前記デコーダに結合されている、請求項1から請求項5のいずれか一項に記載のメモリアレイ。
【請求項7】
前記第2の本数の選択線のそれぞれが個々にアドレス指定される、請求項1から請求項6のいずれか一項に記載のメモリアレイ。
【請求項8】
前記第1のアドレス空間を含む前記メモリセルが、前記複数のセンス線を通じて、前記第2のアドレス空間を含む前記メモリセルに結合されている、請求項1から請求項7のいずれか一項に記載のメモリアレイ。
【請求項9】
前記第1の本数の選択線が、前記第2の本数の選択線とは独立してデコードされる、請求項1から請求項8のいずれか一項に記載のメモリアレイ。
【請求項10】
前記第2のアドレス空間が、計算素子の一時記憶域として使用される、請求項1から請求項9のいずれか一項に記載のメモリアレイ。
【請求項11】
前記一時記憶域が、前記計算素子によってレジスタとして使用される、請求項10に記載のメモリアレイ。
【請求項12】
方法であって、
メモリアレイの第1の本数の選択線のある選択線を活性化すること、
前記メモリアレイのセンス線に結合された検出回路を介して、前記選択線に結合された第1の数のメモリセルに記憶されたデータを検出すること、及び
前記第1の本数の選択線の前記選択線に結合された前記第1の数のメモリセルに記憶された前記データを、前記メモリアレイの第2の本数の選択線のある選択線に結合された第2の数のメモリセルにコピーすることを含み、
前記第1の本数の選択線が、前記第2の本数の選択線に対して独立にアドレス指定可能であり、
前記第1の本数の選択線がデコーダに結合されており、前記第2の本数の選択線が、前記デコーダには結合されておらず、アドレス回路に直結されている方法。
【請求項13】
前記第1の数のメモリセルに記憶された前記データをコピーすることは、入出力(I/O)線にアクセスせずに、前記検出回路から前記第2の数のメモリセルに前記データをコピーすることを含む、請求項12に記載の方法。
【請求項14】
前記検出回路から前記第2の数のメモリセルに前記データをコピーすることは、前記検出回路から、前記第1の本数の選択線の別の選択線に結合された第3の数のメモリセルに前記データをコピーすることをさらに含む、請求項13に記載の方法。
【請求項15】
前記検出回路から前記第2の数のメモリセルに前記データをコピーすることと、前記検出回路から前記第3の数のメモリセルに前記データをコピーすることとが同時に行われる、請求項14に記載の方法。
【請求項16】
方法であって、
メモリアレイの第1の本数の選択線のある選択線を活性化することであって、前記第1の本数の選択線に結合されたメモリセルが、計算素子によって一時記憶域として使用されること、
前記メモリアレイのセンス線に結合された検出回路を介して、前記第1の本数の選択線の前記選択線に結合された第1の数のメモリセルに記憶されたデータを検出すること、及び
前記第1の数のメモリセルに記憶された前記データを、前記メモリアレイの第2の本数の選択線のある選択線に結合された第2の数のメモリセルにコピーすることを含み、
前記第1の本数の選択線が、前記第2の本数の選択線に対して独立にアドレス指定可能であり、
前記第1の本数の選択線がデコーダに結合されており、前記第2の本数の選択線が、前記デコーダには結合されておらず、アドレス回路に直結されている方法。
【請求項17】
前記第1の数のメモリセルに記憶された前記データをコピーすることは、一時記憶域として使用されている前記第1の数のメモリセルから前記検出回路に前記データをコピーすることを含む、請求項16に記載の方法。
【請求項18】
前記第1の数のメモリセルに記憶された前記データをコピーすることは、単一の検出サイクル内でコピーすることを含む、請求項16または請求項17のいずれか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、半導体メモリ装置及び方法に関し、より具体的には、独立にアドレス指定可能なメモリアレイアドレス空間に関連した装置及び方法に関する。
【背景技術】
【0002】
メモリデバイスは、通常、コンピュータまたは他の電子システムの内部に搭載された半導体集積回路として提供される。メモリには、揮発性メモリ及び不揮発性メモリを含む多くの異なる種類がある。揮発性メモリは、内部データ(例えば、ホストデータ、エラーデータなど)を維持するために電力が必要となり得る。揮発性メモリとしては、ランダムアクセスメモリ(random access memory:RAM)、ダイナミックランダムアクセスメモリ(dynamic random access memory:DRAM)、スタティックランダムアクセスメモリ(static random access memory:SRAM)、シンクロナスダイナミックランダムアクセスメモリ(synchronous dynamic random access memory :SDRAM)、及びサイリスタランダムアクセスメモリ(thyristor random access memory:TRAM)などが挙げられる。不揮発性メモリは、電力が供給されていないときにも記憶データを保持することにより、永続的なデータを提供することができる。不揮発性メモリとしては、NANDフラッシュメモリ、NORフラッシュメモリ、並びに、相変化ランダムアクセスメモリ(phase change random access memory:PCRAM)、抵抗変化型ランダムアクセスメモリ(resistive random access memory:RRAM)、及びスピントルクトランスファランダムアクセスメモリ(spin torque transfer random access memory:STT RAM)などの磁気抵抗変化型ランダムアクセスメモリ(magnetoresistive random access memory:MRAM)といった抵抗可変メモリなどを挙げることができる。
【0003】
電子システムには、複数の処理リソース(例えば、1つ以上のプロセッサ)が含まれることが多い。これらの処理リソースは、命令を取得して実行し、実行された命令の結果を適切な領域に記憶させることができる。プロセッサは、算術論理演算ユニット(arithmetic logic unit:ALU)回路、浮動小数点ユニット(floating point unit:FPU)回路、及び/または組み合わせ論理ブロックなどの複数の機能ユニットを含むことが可能である。組み合わせ論理ブロックは、例えば、AND、OR、NOT、NAND、NOR及びXOR論理演算などの論理演算をデータ(例えば、1つ以上のオペランド)に実行することによって命令を実行するのに使用可能である。例えば、機能ユニット回路(functional unit circuitry:FUC)を使用して、加算、減算、乗算及び/または除算などの算術演算をオペランドに実行してもよい。
【0004】
電子システム内の複数の構成要素は、実行用のFUCへの命令の提供に関わっている場合がある。命令は、例えば、コントローラ及び/またはホストプロセッサなどの処理リソースによって生成され得る。データ(例えば、命令の実行を受けるオペランド)は、FUCによってアクセス可能なメモリアレイに記憶され得る。命令及び/またはデータは、FUCがデータに対して命令を実行し始める前に、メモリアレイから取得されてもよく、さらには、順序付けられ、かつ/またはバッファされてもよい。さらに、各種演算が、FUCを通じて、1つまたは複数のクロックサイクル内で実行され得るとき、命令及び/またはデータの途中結果も、順序付けられ、かつ/またはバッファされ得る。
【0005】
多くの場合、処理リソース(例えば、プロセッサ及び/または関連FUC)は、メモリアレイの外部にあってよく、データには、(例えば、命令を実行するために)処理リソースとメモリアレイの間のバスを介してアクセスすることができる。データは、メモリアレイから当該メモリアレイの外部にあるレジスタに、バスを介して移動させることができる。
【図面の簡単な説明】
【0006】
図1】本開示のいくつかの実施形態に係るメモリデバイスを含む演算処理システムの形態をとった装置のブロック図である。
図2】本開示のいくつかの実施形態に係るメモリアレイの一部の概略図を示す図である。
図3】本開示のいくつかの実施形態に係る検出回路に結合されたメモリアレイの一部の概略図を示す図である。
【発明を実施するための形態】
【0007】
本開示は、メモリアレイアドレス空間へのアクセスに関連した装置及び方法を含む。例示的なメモリアレイは、第1の本数の選択線及び複数のセンス線に結合されたメモリセルを含む第1のアドレス空間、並びに第2の本数の選択線及び上記複数のセンス線に結合されたメモリセルを含む第2のアドレス空間を備える。第1のアドレス空間は、第2のアドレス空間に対して独立にアドレス指定可能である。
【0008】
本開示のいくつかの実施形態により、メモリアレイの外部にあり、論理演算実行中の途中結果を記憶するのに使用されるレジスタの数を低減させることができる。前述したPIMシステム、及び外部プロセッサ(例えば、メモリアレイの外部(別個の集積回路チップの上など)に配置された処理リソース)を備えたシステムなどの処理リソースによってアクセスされるレジスタに比べて、処理リソースがメモリアレイセルに結合されている(例えば、集積されている)ときには、レジスタへのアクセスに関連して並列処理及び/または省電力を向上させることが可能である。例えば、いくつかの実施形態は、整数の加算、減算、乗算、除算などの完全に揃った計算機能、及び連想メモリ(content addressable memory:CAM)機能を、メモリアレイ及び検出回路からバス(例えば、データバス、アドレスバス、制御バス)を介してデータを転送せずに、複数のレジスタからのデータを用いて実行するために提供することができる。このような計算機能には、複数の論理演算(例えば、AND、NOT、NOR、NAND、XORなど)の実行を含めることができる。しかしながら、実施形態は、これらの実施例に限定されない。いくつかの実施形態では、メモリアレイ内のメモリセルの各行は、計算機能の実行に関連して、レジスタとして機能することができる。レジスタとして機能するメモリセルの行は、例えば、メモリセルの他の行を含むアドレス空間に対して独立にアドレス指定可能なアドレス空間の一部とすることができる。
【0009】
従来の手法では、データは、メモリアレイ及び検出回路から(例えば、入出力(I/O)線を含むバスを介して)、処理リソースが使用可能な複数のレジスタに転送され得る。処理リソースは、プロセッサ、マイクロプロセッサ及び/または計算エンジンなどであり、これらの処理リソースは、ALU回路及び/または適切な論理演算を実行するように構成された他の機能ユニット回路を含み得る。しかしながら、メモリとレジスタの間でバスを介してデータを転送すると、消費電力及び所要時間の増大が避けられない可能性がある。処理リソースがメモリアレイと同一チップに位置しているとしても、メモリアレイから計算回路にデータを移動させる際には、例えば、センス線からI/O線にデータを転送するためにセンス線へのアドレスアクセスを実行すること(例えば、列デコード信号を発行すること)、データをアレイ周辺部に移動させること、及び計算機能に関連したレジスタにデータを提供することが必要となり得るため、電力消費が増大する可能性がある。
【0010】
本開示の以下の詳細な説明では、本明細書の一部をなす添付図面を参照する。これらの図面では、本開示の1つ以上の実施形態がどのように実施され得るかが一例として示されている。これらの実施形態は、本開示の実施形態を当業者が実施できる程度まで十分詳しく説明されている。さらには、他の実施形態を利用することも可能であること、並びに、プロセスの変更、電気的変更、及び/または構造上の変更を本開示の範囲から逸脱せずになし得ることを理解すべきである。本明細書で使用する場合、指示子「N」は、特に図面内の参照番号については、そのように指示された特定の特徴を複数含む可能性があることを示す。本明細書で使用する場合、「複数の」特定のものは、かかるものの1つ以上を指すことができる(例えば、複数のメモリアレイは、1つ以上のメモリアレイを指すことができる)。
【0011】
本明細書の図面は、先頭の数字(1桁または複数桁)が図面番号に対応し、残りの数字が図面内の要素または構成部分を識別するという付番規則に従っている。異なる図面間で類似の要素または構成部分は、類似の数字を使用することによって識別される場合がある。例えば、130は、図1の要素「30」を参照する場合があり、類似の要素は、図2では230として参照される場合がある。理解されるであろうが、本明細書の様々な実施形態に示した要素を追加し、交換し、かつ/または削除することができ、それによって本開示の別の実施形態がいくつか提供される。加えて、理解されるであろうが、図面内に記載された要素の比率及び相対的な大きさは、本発明のある実施形態を例示することを意図したものであり、限定的な意味として解釈されるべきではない。
【0012】
図1は、本開示のいくつかの実施形態に係るメモリデバイス120を含む演算処理システム100の形態をとった装置のブロック図である。本明細書で使用する場合、メモリデバイス120、メモリアレイ130及び/または検出回路150は、「装置」として別途考慮される場合もある。
【0013】
システム100は、メモリアレイ130を搭載したメモリデバイス120に結合されたホスト110を含む。ホスト110は、様々な異なる種類のホストの中でも、パーソナルラップトップコンピュータ、デスクトップコンピュータ、デジタルカメラ、携帯電話、またはメモリカードリーダーなどのホストシステムとすることができる。ホスト110は、システムマザーボード及び/またはバックプレーンを含むことができ、さらには、複数の処理リソース(例えば、1つ以上のプロセッサ、マイクロプロセッサ、または他の何らかの種類の制御回路)を含むことができる。システム100は、独立した集積回路で構成することができ、あるいは、ホスト110とメモリデバイス120の両方を同一の集積回路とすることもできる。システム100は、例えば、サーバーシステム、または高性能演算処理(high performance computing:HPC)システム、またはこれらの一部、あるいはこれらの組み合わせとすることができる。図1に示した実施例は、フォン・ノイマン・アーキテクチャを備えたシステムを示しているが、本開示の実施形態は、非フォン・ノイマン・アーキテクチャ(例えば、チューリングマシン)で実装することもできる。このアーキテクチャは、フォン・ノイマン・アーキテクチャに関わることの多い1つ以上の構成要素(例えば、CPU、ALUなど)を含まなくてもよい。
【0014】
分かりやすくするため、システム100は、本開示に特定の関連性を有する特徴に焦点を当てるために簡略化されている。メモリアレイ130は、例えば、DRAMアレイ、SRAMアレイ、STT RAMアレイ、PCRAMアレイ、TRAMアレイ、RRAMアレイ、NANDフラッシュアレイ、及び/またはNORフラッシュアレイとすることができる。メモリアレイ130は、選択線(本明細書では、ワード線またはアクセス線と呼ぶことがある)によって結合された各行と、センス線(本明細書では、桁線またはデータ線と呼ぶことがある)によって結合された各列とに配列されたメモリセルを含むことができる。図1には単一のアレイ130を示したが、実施形態はそのように限定されない。例えば、メモリデバイス120は、複数のアレイ130(例えば、DRAMセルからなる複数のバンク)を備えてもよい。図2に関連して、例示的なDRAMアレイについて説明する。
【0015】
メモリデバイス120は、I/Oバス156(例えば、データバス)を介し、I/O回路144を通じて提供されたアドレス信号をラッチするアドレス回路142を備える。メモリアレイ130にアクセスするためには、アドレス信号を受け取り、これらを行デコーダ146及び列デコーダ153によってデコードする。いくつかの実施例では、アドレス信号は、これよりも多くのまたは少ない行デコーダによってデコードすることができる。例えば、メモリデバイスは、3つの行デコーダを備えることができる。本明細書で使用する場合、行デコーダを選択デコーダと呼ぶことがある。いくつかの実施例では、行デコーダ146を使用して、メモリアレイ130内のメモリセルに対応するアドレス空間131をデコードしてもよい。図1では、アドレス空間132は、アドレス空間に対して独立にアドレス指定することができる。検出回路150を用いてセンス線での電圧及び/または電流の変化を検出することにより、メモリアレイ130からデータを読み出すことができる。検出回路150は、メモリアレイ130からの1ページ分(例えば、1行分)のデータを読み出してラッチすることができる。I/O回路144は、I/Oバス156を介してホスト110と双方向データ通信するのに使用することができる。書き込み回路148は、メモリアレイ130にデータを書き込むのに使用される。
【0016】
いくつかの実施形態では、行デコーダ146は、アドレス回路142から第1の本数の線を通じて第1の数のビットを受け取ることができる。第1の数のビットは、第2の本数の線(例えば、プリデコード線)を作動させるために、行デコーダ146内でプリデコードすることができる。第2の本数の線は、行デコーダ146内の複数の最終デコーダに結合することができる。最終デコーダのそれぞれは、各プリデコード線からなる一意の組み合わせに接続することができる。最終デコーダのそれぞれを使用して、アドレス空間131の各行を活性化することができる。このようにして、アドレス空間131の各行は、共有アドレス線を介してデコードされる。例えば、アドレス回路142から8本の線を通じて、行デコーダ146にて8ビットアドレスを受け取ることができる。この8ビットをプリデコードして、20本のプリデコード線を活性化することができる。最終デコーダのそれぞれを、20本のプリデコード線からなる一意の組み合わせに接続して、256行のいずれか(例えば、28)を活性化することができる。複数のビットを行デコーダ146にて受け取ってから複数の行を活性化するまでに行われるデコーディングの回数は、上記の実施例に示したものよりも多く、または少なくすることができる。例えば、行デコーダ146に関連したプリデコーディング及び最終デコーディングよりも多く、かつ/または少なくすることも可能である。
【0017】
いくつかの実施例では、デコーディングという用語には、プリデコーディング、最終デコーディング、並びに/または、行デコーダ146及び/もしくは列デコーダ153内で実施されるその他の種類のデコーディングを含めることができる。いくつかの実施例では、プリデコーディングという用語には、アドレスが別個にアドレス指定されないようにプリデコーディングプロセスを実装する回路が含まれる。プリデコーディング及びデコーディングという用語を本明細書で使用することにより、別個にアドレス指定可能な線及び/または個々にアドレス指定可能な線という各用語を区別することができる。
【0018】
いくつかの実施例では、アドレス空間132に関連した各行は、個々にアドレス指定され、かつ/またはメモリアレイ130の他の行から独立してデコードされる。本明細書で使用する場合、個別のアドレスは、特定の選択線を活性化するのにデコーディングを必要としないアドレスとすることができる。例えば、アドレス回路142は、アドレス空間132に関連したアドレスを受け取ることができ、アドレスをデコードせずに選択線を活性化することができる。いくつかの実施例では、個々にアドレス指定された行、及び/または別個にアドレス指定された行を、完全にデコードされた行と呼ぶことができる。アドレス空間131に関連したメモリセル及びアドレス空間132に関連したメモリセルは、通常であれば、数あるメモリ構成の中でも、例えば、DRAMアレイ、SRAMアレイ、STT RAMアレイ、PCRAMアレイ、TRAMアレイ、RRAMアレイ、NANDフラッシュアレイ、及び/またはNORフラッシュアレイに使用されるメモリセルで構成することができる。アドレス空間131とアドレス空間132の他の違いについては、図2及び図3に関連してさらに詳しく述べる。
【0019】
制御回路140は、ホスト110から制御バス154によって提供された信号をデコードする。これらの信号には、チップイネーブル信号、ライトイネーブル信号及びアドレスラッチ信号を含めることが可能であり、これらの信号を使用して、メモリアレイ130で実行される動作を制御する。このような動作としては、データの読み出し動作、データの書き込み動作、及びデータの消去動作などがある。様々な実施形態では、制御回路140は、ホスト110からの命令を実行する役割を果たす。制御回路140は、ステートマシン、シーケンサ、または他の何らかの種類のコントローラとすることができる。
【0020】
検出回路150の実施例については、図3に関連して以下でさらに説明する。例えば、いくつかの実施形態では、検出回路150は、複数のセンスアンプ及び複数の計算素子を備えることができる。これらの計算素子には、累算器(例えば、図3に示す計算素子333)を含めてもよく、これらの計算素子を使用して、(例えば、相補センス線に関連したデータに)論理演算を実行することができる。いくつかの実施形態では、検出回路(例えば、150)を使用することにより、アレイ130に記憶されたデータを入力として用いて論理演算を実行し、その論理演算の結果を、センス線へのアドレスアクセスを介して転送することなく(例えば、列デコード信号を発行することなく)メモリアレイ130に戻して記憶させることができる。アドレス空間132に対応する各行は、論理演算及び/または計算機能の実行中に、一時記憶域(例えば、レジスタ)として機能することができる。このようにして、検出回路の外部にある処理リソースによって(例えば、デバイス120に(例えば、制御回路140もしくは他の場所に)配置された、ホスト110及び/もしくはALU回路などの他の処理回路に関連したプロセッサによって)実行される以外に、かつ/またはそれに加えて、検出回路150を用いて様々な計算機能を実行することができる。
【0021】
従来の様々な手法では、オペランドに関連したデータを、例えば、検出回路を介してメモリから読み出し、外部のALUに提供する。外部のALU回路は、そのオペランドを用いて計算機能を実行し、その結果を、ローカルI/O線を介してメモリアレイに再度転送することができる。これに対して、本開示のいくつかの実施形態では、検出回路(例えば、150)は、アドレス空間131に関連したメモリセル及びアドレス空間132に関連したメモリセルに記憶されたデータに対して論理演算を実行するように構成されており、その結果を、検出回路に結合されたローカルI/O線をイネーブルにすることなく、メモリアレイ130に戻して記憶させる。
【0022】
このようにして、いくつかの実施形態では、計算機能を実行するのにアレイ130及び検出回路150の外部にあるレジスタを必要としなくてよい。というのも、検出回路150は、アレイ130のアドレス空間131及び132を用いて適切な論理演算を実行することができるためである。さらに、こうした計算機能は、外部の処理リソースを使用せずに実行することができる。従って、アドレス空間132を使用して、こうした複数の外部レジスタの少なくともある程度までを補完し、かつ/または置換してもよい。しかしながら、いくつかの実施形態では、アレイ130のアドレス空間132を、アレイ130の外部にある、かつ/またはメモリデバイス120の外部にある複数のレジスタと共に使用してもよい。
【0023】
本開示のいくつかの実施形態に係るメモリアレイ230の一部の概略図を図2に示す。本実施例では、メモリアレイ230は、1T1C(one transistor one capacitor)メモリセル270−0,270−1,270−2,270−3,…,270−N(例えば、総称してメモリセル270と呼ばれる)のDRAMアレイであり、各セルは、アクセスデバイス202(例えば、トランジスタ)及び記憶素子203(例えば、コンデンサ)で構成される。
【0024】
いくつかの実施形態では、メモリセル270は、破壊読み出し式のメモリセルである(例えば、メモリセルに記憶されたデータを読み出すと当該データが破壊されるため、読み出してから、そのセルに当初記憶されたデータのリフレッシュが行われる)。メモリセル270は、選択線204−0(行0),204−1(行1),204−2(行2),204−3(行3),…,204−N(行N)によって結合された各行と、センス線(例えば、桁線)205−1(D)及び205−2(D_)によって結合された各列とに配列されている。いくつかの実施形態では、メモリアレイ230は、別々の回路に結合されたアドレス空間を備えることができる。例えば、図2に示すように、アドレス空間231の選択線204−2,204−3,…,204−Nが選択デコーダ246に結合されており、アドレス空間232の選択線204−0及び204−1がアドレス回路242に結合されている。いくつかの実施例では、アドレス空間232の選択線204−0と選択線204−1の少なくとも一方を、選択デコーダ246とは独立している選択デコーダに結合することができる。
【0025】
本実施例では、セルの各列は、相補センス線205−1(D)及び205−2(D_)のペアに関連付けられている。図2にはメモリセル270の単一列のみを示したが、実施形態はそのように限定されない。例えば、ある特定のアレイは、複数列のセル及び/または複数のセンス線(例えば、4,096、8,192、16,384など)を備えてもよい。図2では、メモリセル270は、センス線205−1に結合されている。個々のセルトランジスタ202のゲートは、当該セルトランジスタに対応する選択線204−0から204−N(例えば、総称して選択線204と呼ばれる)にそれぞれ結合されており、個々のセルトランジスタにおいて、第1のソース/ドレイン領域は当該セルトランジスタに対応する選択線205−1に、第2のソース/ドレイン領域は当該セルトランジスタに対応するコンデンサ203に、それぞれ結合されている。図2には図示されていないが、センス線205−2も、これに結合されたメモリセルを有し得る。
【0026】
図2では、アドレス空間231の選択線204−2から204−Nは、複数の共有アドレス線を介してデコードされる。このようにして、選択線204−2から204−Nは、行デコーダ回路(例えば、行デコーダ246)に関連したプリデコーディングを介して活性化される。いくつかの実施形態では、プリデコードプロセスを行うことにより、選択線204−2から204−Nのうちの1本のみが、プリデコーディングの制約上、任意の時点に活性化される可能性がある。アドレス空間232の選択線204−0及び204−1は、アドレス回路242に直結されており、(例えば、アドレスをデコードせずに)アドレス回路242によってこれらの選択線を別個に活性化することができる。このようにして、選択線204−0と選択線204−1とを同時に活性化することができるが、プリデコードされた選択線204−2から204−Nのうちの1本と共にこれらの選択線を同時に活性化してもよい。
【0027】
いくつかの実施形態では、選択線204−2から204−Nは、選択線204−0及び204−1に対して独立にアドレス指定可能である。これは、選択線204−2から204−Nが行デコーダ246に結合されており、かつ選択線204−0及び204−1がアドレス回路242に直結されているためであり、かつ/または、選択線204−2から204−Nが行デコーダ246を介して複数の共有アドレス線に結合されており、かつ選択線204−0及び204−1が別個にアドレス指定可能であるためである。いくつかの実施形態では、第1のアドレス空間(例えば、選択線204−0及び204−1に対応するアドレス空間)は、第2のアドレス空間(例えば、選択線204−2から204−Nに対応するアドレス空間)に対して独立にアドレス指定可能である。これは、第1のアドレス空間に対応する複数の選択線が第1のデコーダに結合され、かつ第2のアドレス空間に対応する複数の選択線が第2のデコーダに結合されているためである。
【0028】
いくつかの実施形態では、第1のアドレス空間と第2のアドレス空間とが独立にアドレス指定可能であるため、第1のアドレス空間の選択線と第2のアドレス空間の選択線とを同時に活性化することができる。アドレス空間が共有アドレス線に結合されているいくつかの実施形態では、各選択線のうちの1本のみが所定の時間に活性化され得る。ただし、このような実施形態では、共有アドレス線に結合されたアドレス空間のある選択線を、別のアドレス空間に対応する1本以上の選択線と共に同時に活性化してもよい。
【0029】
いくつかの実施例では、アドレス空間232に対応する選択線に結合されたメモリセルを、レジスタとして使用することができる。すなわち、アドレス空間232の各行に結合されたメモリセルは、例えば、論理演算の実行に関連して、一時記憶域として機能することができる。ある実施例として、メモリセル270−0及び270−1は、計算素子による活性化が可能な一時記憶域として使用することができる。この計算素子は、論理演算を実行するために、センスアンプ206に結合されている。メモリセルをレジスタとして使用する実施例については、図3に関連してさらに説明する。
【0030】
デコーダ246は、デコーダ246の特定の選択線に対応するアドレスを、(例えば、アドレス回路242から)入力として受け取ることができる。デコーダ246は、プリデコードプロセスを介して、そのアドレスをデコードし、適切な共有アドレス線を活性化することにより、アドレス空間231の特定の選択線(例えば、選択線204−2から204−N)を活性化する。本実施例では、デコーダ246は、選択線204−2から204−Nに関するアドレスをデコードする。いくつかの実施例では、これよりも多くのまたは少ないデコーダを使用して、アドレス空間231に関連したアドレスをデコードすることができる。
【0031】
いくつかの実施例では、アドレス空間232の選択線を活性化するのに使用されるデコーダから、デコーダ246を独立させることができる。いくつかの実施形態では、ホストは、アドレス空間231にアクセスしてもよく、アドレス空間232にアクセスしなくてもよい。例えば、アドレス空間231の選択線204−2から204−Nに結合されたメモリセル270−2から270−Nにホストが直接アクセスできるようにしてもよいが、アドレス空間232の選択線204−0及び204−1に結合されたメモリセル270−0及び270−1にホストがアクセスできないようにしてもよい。
【0032】
いくつかの実施形態では、図2に示すように、アドレス空間232のメモリセルは、アドレス空間231のメモリセルと間隔を置いて配置されている。図2では、アドレス空間232の選択線がメモリアレイ230の端部に(例えば、外縁に)配置されているが、実施形態は、そのように限定されない。いくつかの実施形態では、アドレス空間232及び/またはアドレス空間231に対応する選択線は、連続番号からなる選択線としてまとめられていなくてもよい。例えば、アドレス空間231の複数の選択線の間に、アドレス空間232の複数の選択線を位置付けてもよい。
【0033】
いくつかの実施形態では、アドレス空間231及びアドレス空間232は、第1のアドレスブロック及び第2のアドレスブロックに、それぞれ関連付けることができる。各アドレスブロックは、例えば、複数のアドレスを含むことができる。連続アドレスは、先頭アドレスから最終アドレスまでアドレスの数が1つずつ増加するアドレスを参照することができる。アドレスブロックは、当該アドレスブロックの先頭アドレスと最終アドレスとの間にある全てのアドレスを含むことができる。アドレスブロックは、複数のアドレスサブブロックに分割することができる。例えば、メモリアレイ230は、アドレス空間231に関連した第1のアドレスサブブロックとアドレス空間232に関連した第2のアドレスサブブロックとで構成可能なアドレスブロックに関連付けることができる。
【0034】
アドレス空間232(例えば、ユーザーによってアクセス可能でなくてもよいアドレス空間232)に関連したアドレスにホストが直接アクセスする機能を限定してもよい。特定のアドレス空間(または、その一部)への限定的なアクセスを使用して、例えば、特定のアドレス空間の使用を確保することができる。例えば、アドレス空間232に関連したアドレスを、図3に関連してさらに説明される計算機能を用いた使用のために確保することができる。いくつかの実施形態では、アドレスを認識していないホストに対して、そのアドレスへのアクセスを限定することができる。いくつかの実施形態では、ホストは、アドレス空間231及びアドレス空間232に直接アクセスしてもよい。いくつかの実施形態では、ホストは、アドレス空間231、及び/またはアドレス空間232の一部に直接アクセスしてもよい。例えば、ホストは、メモリセル270−1及び行204−1には直接アクセスできるが、メモリセル270−0及び行204−0には直接アクセスできない。いくつかの実施例では、ホストは、アドレス空間231には直接アクセスしてもよく、アドレス空間232には直接アクセスしなくてもよい。
【0035】
本開示のいくつかの実施形態に係る検出回路に結合されたメモリアレイ330の一部の概略図を図3に示す。図3は、図2のメモリアレイ230に類似したメモリアレイ330を含む。
【0036】
本実施例では、検出回路は、センスアンプ306及び計算素子333を備える。この検出回路は、図1に示した検出回路150とすることができる。センスアンプ306は、メモリセルの特定の列に対応する相補センス線D、D_に結合されている。センスアンプ306は、選択されたセル(例えば、メモリセル370)に記憶された状態(例えば、論理データ値)を判別するように動作することができる。実施形態は、例示的なセンスアンプ306に限定されない。例えば、本明細書で説明されたいくつかの実施形態に係る検出回路は、電流モードセンスアンプ及び/またはシングルエンド型センスアンプ(例えば、1本のセンス線に結合されたセンスアンプ)を含むことができる。
【0037】
いくつかの実施形態では、計算素子(例えば、333)は、センスアンプ(例えば、306)及び/またはメモリアレイ(例えば、330)のメモリセル370を構成するトランジスタと間隔を置いて形成された複数のトランジスタを含むことができる。なお、これらのメモリセルは、特定の加工寸法(例えば、4F、6Fなど)に適合していてもよい。以下でさらに説明するように、計算素子333は、センスアンプ306と連携して、メモリアレイ330内のメモリセル370からのデータを入力として用いて様々な論理演算を実行するように動作することができ、その結果を、センス線へのアドレスアクセスを介してデータを転送することなく(例えば、列デコード信号を発行し、それによってメモリアレイ及び検出回路からローカルI/O線を介して外部回路にデータを転送することなく)、メモリアレイ330内のメモリセル370に戻して記憶させることができる。このようにして、本開示のいくつかの実施形態では、これらに関連した論理演算及び計算機能を、従来の様々な手法よりも少ない電力を使用して実行することが可能となる。さらに、いくつかの実施形態では、計算機能を実行するためにローカルI/O線を介してデータを転送する必要がないので、いくつかの実施形態では、従来の手法に比べて、計算素子(例えば、333)及びメモリセル370を用いた並列処理能力を高めることが可能となる。
【0038】
図3に示した実施例では、計算素子333に対応する回路は、センス線D及びD_のそれぞれに5つのトランジスタが結合された構成をとっている。ただし、実施形態は、この実施例に限定されない。トランジスタ307−1及び307−2は、センス線D及びD_にそれぞれ結合された第1のソース/ドレイン領域と、クロスカップル型ラッチに結合された(例えば、クロスカップル型NMOSトランジスタ308−1及び308−2並びにクロスカップル型PMOSトランジスタ309−1及び309−2などの、クロスカップル型トランジスタのペアの各ゲートに結合された)第2のソース/ドレイン領域とを有する。本明細書でさらに説明するように、トランジスタ308−1、308−2、309−1及び309−2を含むクロスカップル型ラッチは、2次ラッチと呼ぶことができる(センスアンプ306に対応するクロスカップル型ラッチは、本明細書では1次ラッチと呼ぶことができる)。
【0039】
トランジスタ307−1及び307−2は、パストランジスタと呼ぶことができる。これらのトランジスタは、各信号311−1(Passd)及び311−2(Passdb)を介してイネーブルにすることができ、それによって各センス線D及びD_の電圧または電流が、トランジスタ308−1、308−2、309−1及び309−2を含むクロスカップル型ラッチの入力(例えば、2次ラッチの入力)に送られるようになっている。本実施例では、トランジスタ307−1の第2のソース/ドレイン領域は、トランジスタ308−1及び309−1の第1のソース/ドレイン領域、並びにトランジスタ308−2及び309−2の各ゲートに結合されている。同様に、トランジスタ307−2の第2のソース/ドレイン領域は、トランジスタ308−2及び309−2の第1のソース/ドレイン領域、並びにトランジスタ308−1及び309−1の各ゲートに結合されている。
【0040】
トランジスタ308−1及び308−2の第2のソース/ドレイン領域は、負の制御信号312−1(Accumb)に共通に結合されている。トランジスタ309−1及び309−2の第2のソース/ドレイン領域は、正の制御信号312−2(Accum)に共通に結合されている。Accum信号312−2は電源電圧(例えば、Vcc)とすることができ、Accumb信号は基準電圧(例えば、グラウンド)とすることができる。信号312−1及び312−2をイネーブルにすると、2次ラッチに対応する、トランジスタ308−1、308−2、309−1及び309−2を含むクロスカップル型ラッチが活性化される。活性化されたセンスアンプのペアは、共通ノード317−1と共通ノード317−2の間の差動電圧を増幅するように動作し、それにより、ノード317−1は、Accum信号電圧とAccumb信号電圧の一方の電圧に(例えば、Vccとグラウンドの一方に)駆動され、ノード317−2は、Accum信号電圧とAccumb信号電圧の他方の電圧に駆動される。以下でさらに説明するように、2次ラッチは、論理演算の実行に使用されている間は累算器として機能することができるため、信号312−1は「Accumb」に、信号312−2は「Accum」にそれぞれラベル付けされている。いくつかの実施形態では、累算器は、2次ラッチを形成するクロスカップル型トランジスタ308−1、308−2、309−1及び309−2、並びにパストランジスタ307−1及び308−2を含む。本明細書でさらに説明するように、いくつかの実施形態では、センスアンプに結合された累算器を含む計算素子は、論理演算を実行するように構成することができる。この論理演算には、相補センス線のペアの少なくとも一方における信号(例えば、電圧または電流)によって表されたデータ値の累算演算を実行することが含まれる。
【0041】
計算素子333は、各桁線D及びD_に結合された第1のソース/ドレイン領域を有する反転トランジスタ314−1及び314−2も含む。反転トランジスタ314−1及び314−2の第2のソース/ドレイン領域は、トランジスタ316−1及び316−2の第1のソース/ドレイン領域にそれぞれ結合されている。トランジスタ314−1及び314−2の各ゲートは、信号313(InvD)に結合されている。トランジスタ316−1のゲートは、共通ノード317−1に結合されており、このノードに対しては、トランジスタ308−2のゲート、トランジスタ309−2のゲート、及びトランジスタ308−1の第1のソース/ドレイン領域も結合されている。相補的に、トランジスタ316−2のゲートは、共通ノード317−2に結合されており、このノードに対しては、トランジスタ308−1のゲート、トランジスタ309−1のゲート、及びトランジスタ308−2の第1のソース/ドレイン領域も結合されている。このようにして、信号InvDをイネーブルすると、2次ラッチに記憶されたデータ値が反転されるようになり、その反転値がセンス線305−1及び305−2へと駆動される。
【0042】
図3では、計算素子333は、AND、NAND、及び/またはNOT(例えば、反転)演算を実行するように構成されている。以下の実施例は、アレイ330に記憶されたデータ(例えば、アドレス空間331及びアドレス空間332に関連したデータ)を入力として用いて3入力NAND演算をどのように実行することができるか、及び、そのNAND演算の結果を、検出回路(例えば、センスアンプ306及び計算素子333)の動作を通じてメモリアレイにどのように記憶させることができるかを示すものである。この実施例は、選択線304−0から304−Nに結合され、かつセンス線305−1に共通に結合されたメモリセル370に記憶されたデータ値(例えば、論理1または論理0)を、NAND演算の各入力として使用することを含む。NAND演算の結果は、選択線304−0から304−Nの少なくとも1本におけるメモリセルに記憶させることができる。
【0043】
一実施例として、列304−1(例えば、セル370−1)の各メモリセルを、計算素子333のレジスタとして使用することができる。例えば、計算素子333は、アドレス空間331のある列に記憶されたデータを入力として使用することができる。さらに、計算機能の途中結果を、アドレス空間332のある列に保存することができる。本実施例では、算術演算の結果を、アドレス空間331のある列及び/またはアドレス空間332のある列に戻して記憶させることができる。いくつかの実施形態では、計算機能の結果を、アドレス空間332の1つ以上の列と、アドレス空間331のある列とに同時に記憶させることができる。
【0044】
アドレス空間332のメモリセルを一時記憶域に使用することにより、アドレス空間331のメモリセルを一時記憶域に使用しないようにすることができ、それによってアクセス可能なメモリ量を増加させることができる。例えば、計算素子333が、アドレス空間331のメモリセルを一時記憶域として使用する場合、アドレス空間331の当該セルは、他のデータを記憶するのに使用できなくなり、それによって(例えば、ホストによる)アドレス空間331の使用が禁止され得る。例えば、アドレス空間331を一時記憶域として使用することにより、ホストにとって使用可能なアドレス空間の総量が制限される可能性がある。これに対し、本明細書で説明された実施形態に関連して、アドレス空間332を一時記憶域として使用することにより、例えば、アドレス空間331をホストが使用する機能を制限しなくても、計算素子333による複数の論理演算の実行が可能となる。
【0045】
アドレス空間332をレジスタとして使用可能な論理演算の実施例を以下で説明する。例えば、3入力NAND演算の第1演算フェーズは、センスアンプ306を用いて行0(例えば、セル370−0)のメモリセルに検出動作を実行して、記憶されたデータ値を判別することを含むことができる。このデータ値は、NAND演算の第1入力として機能することができる。検出動作には、(例えば、アドレス回路342を介して)行0を活性化することが含まれる。この検出動作により、センス線Dには、論理1に対応する電圧(例えば、Vcc)または論理0に対応する電圧(例えば、グラウンド)が生じる(さらに、相補センス線D_にはもう一方の電圧が生じる)。これにより、検出データ値は、センスアンプ306に対応する1次ラッチに記憶される。行0のメモリセル370−0を検出すると、Passd及びPassdb信号311−1/311−2がイネーブルされると共に、Accumb及びAccum信号312−1/312−2がイネーブルされる。これにより、行0のメモリセル370−0に記憶されていた検出データ値が、計算素子333に対応する2次ラッチにコピーされる。次いで、Passd及びPassdb信号がディセーブルされるが、Accum及びAccumb信号は、(以下で説明する第2演算フェーズ、第3演算フェーズ及び第4演算フェーズの間は)イネーブルされたままとなる。次いで、行0がディセーブルされ、平衡状態が生じる。平衡状態を生じさせるには、相補センス線D及びD_を共に短絡して平衡電圧にすることが必要となり得る。この平衡電圧は、例えば、Vcc/2とすることができる。平衡状態は、例えば、メモリセルの検出動作の前に生じ得る。
【0046】
3入力NAND演算の第2フェーズは、センスアンプ306を用いて行1のメモリセル(例えば、370−1)に検出動作を実行することにより、当該セルに記憶されたデータ値を判別することを含む。このデータ値は、NAND演算の第2入力として機能する。このようにして、行1は、アドレス回路342によってイネーブルされ、センス線D及びD_は、Vccとグラウンドのうち、互いに異なる電圧にそれぞれ駆動される。本実施例では、センス線DのVcc電圧は、メモリセル370−1に記憶された論理1に対応し、センス線Dのグラウンド電圧は論理0に対応する。ただし、実施形態は、この実施例に限定されない。行1のメモリセル370−1を検出した後、Passd信号311−1はイネーブルされるが、Passdb信号311−2はディセーブルされたままである(例えば、Passdのみがイネーブルされる)。Accumb及びAccum信号312−1/312−2がイネーブルされたままであることを思い出すこと。行1のメモリセル370−1に記憶されたデータ値が論理0である場合、2次ラッチに関連した累算値がローにアサートされ、それによって2次ラッチは論理0を記憶する。行1のメモリセル370−1に記憶されたデータ値が論理0ではない場合、2次ラッチは、これに記憶された行0のデータ値(例えば、論理1または論理0)の記憶を保持する。このようにして、本実施例では、2次ラッチは、ゼロ(0)の累算器として機能する。次いで、Passd信号がディセーブルされ、行1がディセーブルされて、平衡状態が生じる。
【0047】
3入力NAND演算の第3フェーズは、センスアンプ306を用いて行2のメモリセル(例えば、370−2)に検出動作を実行することにより、当該セルに記憶されたデータ値を判別することを含む。このデータ値は、NAND演算の第3入力として機能する。このようにして、行2は、行デコーダ346によってイネーブルされ、センス線D及びD_は、Vccとグラウンドのうち、互いに異なる電圧にそれぞれ駆動される。行2のメモリセル370−2を検出した後、Passd信号311−1はイネーブルされるが、Passdb信号311−2はディセーブルされたままである(例えば、Passdのみがイネーブルされる)。Accumb及びAccum信号312−1/312−2がイネーブルされたままであることを思い出すこと。行2のメモリセル370−2に記憶されたデータ値が論理0である場合、2次ラッチに関連した累算値がローにアサートされ、それによって2次ラッチは論理0を記憶する。行2のメモリセル370−2に記憶されたデータ値が論理0ではない場合、2次ラッチは、以前に記憶された値(例えば、このラッチに記憶された値)を保持する。このようにして、2次ラッチに記憶された値(例えば、累算器の出力)は、行0のメモリセル370−0、行1のメモリセル370−1、及び行2のメモリセル370−2のそれぞれに記憶された各データ値のANDとなる。次いで、Passd信号がディセーブルされ、行2がディセーブルされて、平衡状態が生じる。
【0048】
3入力NAND演算の第4フェーズは、平衡状態を不可にして、センス線D及びD_をフローティングにすることを含む。次いで、InvD信号313をイネーブルにする。これにより、2次ラッチに記憶されたデータ値の反転(例えば、累算された出力の反転)が生じる。このようにして、メモリセル370−0、370−1及び370−2のいずれかが論理0を記憶していた場合(例えば、NAND演算の3入力のいずれかが論理0であった場合)、センス線D_は、論理0に対応する電圧(例えば、グラウンド電圧)を伝達し、センス線Dは、論理1に対応する電圧(例えば、Vcc)を伝達する。メモリセル370−0、370−1及び370−2の全てが論理1を記憶していた場合(例えば、NAND演算の3入力の全てが論理1であった場合)、センス線D_は、論理1に対応する電圧を伝達し、センス線Dは、論理0に対応する電圧を伝達する。次に、センスアンプ306の1次ラッチをイネーブルにするが、この時、行0から行2までのメモリセル370−0、370−1及び370−2の各入力データ値をNANDした結果が、センス線Dに保持されている。このようにして、行0から行2のメモリセルのいずれかが論理0を記憶していた場合にはセンス線DがVccとなり、行0から行2のメモリセルの全てが論理1を記憶していた場合にはセンス線Dがグラウンドとなる。次いで、NAND演算の結果を、アドレス空間332に関連するメモリセルに戻して記憶させることができる。いくつかの実施例では、NAND演算の結果は、アドレス空間331(例えば、共有アドレス線を介してデコードされたアドレス空間)に関連するメモリセルに戻して記憶させることができる。本実施例では、NAND演算の結果を、行1のメモリセル370−1に記憶させることができる。NAND演算の結果を行1のメモリセル370−1に記憶させることは、アドレス回路342を介して行1を活性化することを含む。行1のメモリセル370−1のコンデンサ303は、センス線Dのデータ値(例えば、論理1または論理0)に対応する電圧に駆動される。これにより、それまで行1のメモリセル370−1に記憶されていたどのようなデータ値も実質的に上書きされる。論理演算(例えば、NAND)の結果をレジスタに保存することは、例えば、その論理演算の結果が、より複雑な演算に関連した途中結果であるときに有用となり得る。例えば、行1のメモリセル370−1に保存されている結果は、後続の論理演算における入力として使用することができる。実施形態はそのように限定されない。
【0049】
いくつかの実施形態では、論理演算の結果を、アドレス空間331に関連するメモリセルに書き込んでもよい。例えば、上記結果を、行204−2から204−Nのメモリセルに戻して記憶させることができる。いくつかの実施形態では、論理演算の結果を、メモリアレイに(例えば、アドレス空間331のセルまたはアドレス空間332のセルのいずれかに)戻して記憶させなくてもよい。例えば、論理演算を実行した後、その結果を、累算器(例えば、計算素子333の累算器)から外部デバイスに(例えば、センスアンプに結合されたローカルI/O線を介して外部ホストに)転送してもよい。
【0050】
また、当業者は、NAND論理演算を実行できることにより、主要な数学的機能、及び/またはパターン比較機能の中でも、加算、減算及び乗算などのより複雑な演算処理機能の実行が可能となることを理解するであろう。例えば、一連のNAND演算を組み合わせて、全加算器機能を実行することができる。ある実施例として、キャリーイン及びキャリーアウトと共に2つのデータ値を加算するために12個のNANDゲートが全加算器に必要となった場合、2つの32ビット数を加算するためには、合計で384回のNAND演算(12×32)が実行される可能性がある。本開示の実施形態は、ブール代数となり得ない(例えば、コピー、比較など)、かつ/またはNAND演算よりも多少複雑となり得る論理演算を実行するために使用することもできる。
【0051】
いくつかの実施例では、アドレス空間331のある行に対応するメモリセルに記憶されているデータ値を、アドレス空間332のある行に対応するメモリセルにコピーすることができる。例えば、メモリセル370−3に記憶されたデータ値をメモリセル370−1にコピーすることは、メモリセル370−3からセンスアンプ306にデータ値をコピーすることを含むことができる。次いで、選択線204−1を活性化することにより、センスアンプ306からメモリセル370−1にそのデータ値をコピーすることができる。
【0052】
センスアンプ306からメモリセル370−1にデータ値をコピーすることは、I/O回路を活性化せずに実行することができる。I/O回路を活性化せずにセンスアンプ306からメモリセルにデータ値をコピーすることにより、時間とリソースを節約することができる。これは、I/O回路を活性化しないため、I/O回路を活性化した場合よりも速くコピーを実行することができるためである。
【0053】
別の実施例として、アドレス空間331のメモリセル370−3からアドレス空間332のメモリセル370−0とメモリセル370−1とに、データ値を同時にコピーすることができる。例えば、データ値を、メモリセル370−3からセンスアンプ306にコピーし、さらにセンスアンプ306からメモリセル370−0とメモリセル370−1とに同時にコピーすることができる。アドレス回路342は、メモリセル370−0とメモリセル370−1とを同時に活性化することができる。これは、アドレス空間332に関連したメモリセルは別個にアドレス指定されるためである。これに対して、アドレス空間331に対応する各行は、共有アドレス線を介してデコードされる。そのため、1回につき、センスアンプ306から、行304−2から304−Nのうちの1つのみにデータをコピーすることが可能となり得る。
【0054】
いくつかの実施形態では、アドレス空間331のある行から、アドレス空間331の別の行とアドレス空間332のある行とにデータ値をコピーすることができる。例えば、データ値を、メモリセル370−3からセンスアンプ306にコピーし、さらにセンスアンプ306からメモリセル370−1とメモリセル370−2とに同時にコピーすることができる。メモリセル370−3から、メモリセル370−1と370−2とにデータを同時にコピーすることができる。これは、メモリセル370−2に関連したアドレスは(例えば、プリデコーディングを介して)行デコーダ346によってデコードされ、メモリセル370−1に関連したアドレスは別個にアドレス指定されるためである。すなわち、アドレス回路342が選択線304−1を活性化することができるとき、同時に、行デコーダ346は選択線304−2を活性化することができる。
【0055】
いくつかの実施形態では、アドレス空間332のある行からアドレス空間331のある行にデータ値をコピーすることができる。例えば、データ値を、メモリセル370−1からセンスアンプ306にコピーし、さらにセンスアンプ306からメモリセル370−3にコピーすることができる。別の実施例として、アドレス空間332のある行からアドレス空間332の複数の行にデータ値をコピーすることができる。例えば、データ値を、メモリセル370−0からセンスアンプ306にコピーし、さらに、センスアンプ306から、アドレス空間332に関連する少なくとも2つの異なるメモリセルにコピーすることができる。いくつかの実施例では、アドレス空間332のある行から、アドレス空間332の同一行及び/またはアドレス空間332の複数の異なる行にデータ値をコピーすることができる。アドレス332のある行から、アドレス空間332の別の行とアドレス空間331のある行とにデータ値を同時にコピーすることができる。
【0056】
いくつかの実施形態では、上記のコピーは、(例えば、アレイの平衡化、行の活性化、及び/またはビット線の再検出を再度行わなくても)単一の検出サイクル内で実行することができる。例えば、アドレス空間331のある行からアドレス空間332のある行に単一の検出サイクル内でデータ値をコピーすることは、アドレス空間331の当該行を検出することを含み得る。このコピーは、アドレス空間331の当該行の検出を再度行うことなく、かつ、アドレス空間331の当該行からのデータ値の検出においてなされる平衡化を再度行うことなく、実行することができる。さらに、このコピーは、行へのアクセスを再度行うことなく実行することができる。例えば、アドレス空間331のある行から検出されたデータ値は、アドレス空間332の選択行を活性化する(例えば、作動させる)ことにより、アドレス空間332の1つ以上の行にコピーすることができるが、その選択されたセルに対応するビット線を再検出する必要はない。アドレス空間331のある行からアドレス空間332の複数の行にデータ値をコピーすること、アドレス空間332のある行からアドレス空間331のある行にデータ値をコピーすること、及び/または、単一の検出サイクル内でアドレス空間332のあるアドレスからアドレス空間332の複数のアドレスにデータ値をコピーすることが可能になるため、コピーの実行に必要とされる検出サイクル数が減少することにより、従来の手法に対して性能面で大幅な利点を得ることができる。
【0057】
本開示の実施形態は、図3に示した特定の検出回路構成に限定されない。例えば、本明細書で説明されたいくつかの実施形態に従って論理演算を実行するために、異なる計算素子回路を使用することができる。図3には示されていないが、いくつかの実施形態では、アレイ330、センスアンプ306、及び/または計算素子333に制御回路を結合することができる。このような制御回路は、例えば、当該アレイ及び検出回路と同一のチップに、かつ/または外部プロセッサなどの外部処理リソースに実装されてもよく、本明細書で説明された論理演算を実行するために、上記アレイ及び検出回路に対応する様々な信号のイネーブル/ディセーブルを制御することができる。
【0058】
結論
本開示は、メモリアレイアドレス空間にアクセスするためのデバイス及び方法を含む。例示的なメモリアレイは、第1の本数の選択線及び複数のセンス線に結合されたメモリセルを含む第1のアドレス空間、並びに第2の本数の選択線及び上記複数のセンス線に結合されたメモリセルを含む第2のアドレス空間を備える。第1の本数の選択線は、複数の共有アドレス線を介してデコードされる。第1のアドレス空間は、第2のアドレス空間に対して独立にアドレス指定可能である。
【0059】
本明細書では特定の実施形態について例示し、図示してきたが、当業者は、図示された特定の実施形態を、同一結果を得るために意図された配置構成で置き換えることができることを理解するであろう。本開示は、本開示の1つ以上の実施形態の適応または変形を包含することを意図したものである。上記の説明は、例示的になされたものであり、限定的になされたものではないことを理解すべきである。上記の実施形態と、本明細書に具体的に記載されていない他の実施形態との組み合わせは、上記の説明を考察すれば当業者にとって明らかとなるであろう。本開示の1つ以上の実施形態の範囲には、上記の構造及び方法を使用する他の適用例が含まれる。従って、本開示の1つ以上の実施形態の範囲は、添付された特許請求の範囲、並びにかかる特許請求の範囲の権利が与えられる均等物の全範囲を参照して定められるべきである。
【0060】
前述の詳細な説明では、本開示を簡素化するために、単一の実施形態にいくつかの特徴をまとめている。本開示方法は、開示された本開示の実施形態が、各請求項に明示的に記載されたものよりも多くの特徴を用いる必要があるという意図を反映したものとして解釈すべきではない。むしろ、以下の特許請求の範囲が反映するように、発明の主題は、単一の開示された実施形態の全ての特徴より少ないところにある。従って、以下の特許請求の範囲は、各請求項が別個の実施形態として独自に存在する状態で、本明細書によって発明を実施するための形態に援用される。
【要約】
本開示の実施例は、メモリアレイアドレス空間にアクセスするためのデバイス及び方法を提供する。例示的なメモリアレイは、第1の本数の選択線及び複数のセンス線に結合されたメモリセルを含む第1のアドレス空間、並びに第2の本数の選択線及び上記複数のセンス線に結合されたメモリセルを含む第2のアドレス空間を備える。第1のアドレス空間は、第2のアドレス空間に対して独立にアドレス指定可能である。
【選択図】図3
図1
図2
図3