IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 東芝メモリ株式会社の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024106258
(43)【公開日】2024-08-07
(54)【発明の名称】電流検出回路及び情報処理装置
(51)【国際特許分類】
   G11C 15/04 20060101AFI20240731BHJP
   G06F 12/00 20060101ALI20240731BHJP
【FI】
G11C15/04 631F
G06F12/00 560F
【審査請求】未請求
【請求項の数】19
【出願形態】OL
(21)【出願番号】P 2023010509
(22)【出願日】2023-01-26
(71)【出願人】
【識別番号】318010018
【氏名又は名称】キオクシア株式会社
(74)【代理人】
【識別番号】100120031
【弁理士】
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100107582
【弁理士】
【氏名又は名称】関根 毅
(74)【代理人】
【識別番号】100118843
【弁理士】
【氏名又は名称】赤岡 明
(74)【代理人】
【識別番号】100103263
【弁理士】
【氏名又は名称】川崎 康
(72)【発明者】
【氏名】川澄 篤
【テーマコード(参考)】
5B160
【Fターム(参考)】
5B160MM20
(57)【要約】
【課題】半導体デバイスの配線に流れる電流とタイミングを精度よく検出できる。
【解決手段】電流検出回路は、それぞれが複数のビットを有する複数の第1データを保持する複数のメモリセルと、前記複数の第1データのそれぞれと、前記第1データと同じビット数を有する第2データとのビット演算結果を転送する複数の第1配線と、前記複数の第1配線のうち最小電流が流れる第1配線を検出する検出部と、を備える。
【選択図】図1
【特許請求の範囲】
【請求項1】
それぞれが複数のビットを有する複数の第1データを保持する複数のメモリセルと、
前記複数の第1データのそれぞれと、前記第1データと同じビット数を有する第2データとのビット演算結果を転送する複数の第1配線と、
前記複数の第1配線のうち最小電流が流れる第1配線を検出する検出部と、を備える、
電流検出回路。
【請求項2】
前記複数の第1配線は、前記複数の第1データのそれぞれと前記第2データとの一致するビット数に応じた電流を流す、
請求項1に記載の電流検出回路。
【請求項3】
前記複数の第1配線は、前記複数の第1データのそれぞれと前記第2データとの一致するビット数が多いほど、より小さい電流を流す、
請求項2に記載の電流検出回路。
【請求項4】
前記複数の第1配線は、前記複数の第1データのそれぞれと前記第2データとで、ビットごとに否定排他的論理和の演算を行った結果を転送する、
請求項1に記載の電流検出回路。
【請求項5】
前記複数の第1配線の電圧をセンスする複数のセンスアンプと、
前記検出部にて最小電流が流れる前記第1配線が検出されたタイミングで、前記複数のセンスアンプの出力信号を保持する複数の保持器と、を備える、
請求項1乃至4のいずれか一項に記載の電流検出回路。
【請求項6】
前記複数のセンスアンプのそれぞれは、対応する前記第1配線の電圧が閾値を超えたか否かで出力信号の論理を切り替える、
請求項5に記載の電流検出回路。
【請求項7】
前記閾値を時間に応じて制御する閾値制御回路を備える、
請求項6に記載の電流検出回路。
【請求項8】
前記複数の第1配線の電圧レベルは、前記複数の第1データのそれぞれと前記第2データとのビット演算結果に基づいて時間とともに変化し、
前記閾値制御回路は、初期状態では前記閾値を所定の電圧レベルに設定し、前記複数の第1配線の電圧が前記閾値と交差するタイミング以降に、前記閾値を時間に応じて変化させる、
請求項7に記載の電流検出回路。
【請求項9】
前記閾値制御回路は、前記複数の第1配線の電圧が前記閾値と交差する第1タイミングより遅い第2タイミング以降では、前記閾値を時間に応じて変化させる、
請求項8に記載の電流検出回路。
【請求項10】
前記閾値制御回路は、前記第2タイミング以降に、前記複数の第1配線の単位時間当たりの電圧変化量よりも大きい電圧変化量で前記閾値を変化させる、
請求項9に記載の電流検出回路。
【請求項11】
前記閾値制御回路は、前記第2タイミング以降では、前記閾値を時間に応じて線形に変化させる、
請求項9に記載の電流検出回路。
【請求項12】
前記検出部は、前記閾値制御回路が前記閾値を時間に応じて変化させる期間に、前記複数のセンスアンプの出力信号のうち最も早く論理が変化したタイミングで、最小電流が流れる前記第1配線を特定する、
請求項8に記載の電流検出回路。
【請求項13】
前記複数のセンスアンプのそれぞれは、
第1電圧ノードと第2電圧ノードとの間に接続される、互いに導電型の異なる第1トランジスタ及び第2トランジスタを含むインバータを有し、
前記閾値制御回路は、前記複数の第1配線の電圧が前記閾値と交差するまでは前記第1電圧ノード及び前記第2電圧ノードをそれぞれ予め定めた初期電圧に設定し、前記複数の第1配線の電圧が前記閾値と交差するタイミング以降に、前記第1電圧ノード及び前記第2電圧ノードをそれぞれ時間に応じて変化させる、
請求項8に記載の電流検出回路。
【請求項14】
前記複数の第1配線の電圧が前記閾値と交差する第1タイミングに合わせて、前記複数の第1配線の電圧レベルを保持する保持回路を備え、
前記閾値制御回路は、前記第1タイミング以降に、前記閾値をいったん引き上げた後に引き下げる制御を行い、
前記検出部は、前記第1タイミング以降に、前記保持回路で保持された前記複数の第1配線の電圧レベルと前記閾値制御回路で制御された前記閾値とが一致する第3タイミングで、最小電流が流れる第1配線を特定する、
請求項8に記載の電流検出回路。
【請求項15】
前記閾値制御回路は、前記第1タイミング以降に、前記閾値を線形に引き上げる第1期間と、前記第1期間の後に前記閾値を線形に引き下げる第2期間とを有し、
前記検出部は、前記第2期間内の前記第3タイミングで、最小の電流が流れる前記第1配線を特定する、
請求項14に記載の電流検出回路。
【請求項16】
前記複数の第1配線の電圧が前記閾値と交差するタイミングに合わせて、前記複数の第1配線の電圧レベルを所定の電圧ずつ低下させた電圧を保持する保持回路を備え、
前記検出部は、前記複数の第1配線の電圧が前記閾値と交差するタイミング以降では、前記保持回路で保持された前記複数の第1配線の電圧のうち、前記閾値制御回路で制御された前記閾値に最も早く一致するタイミングで、最小電流が流れる前記第1配線を特定する、
請求項8に記載の電流検出回路。
【請求項17】
前記複数のメモリセルは、互いに交差する第1方向及び第2方向に沿って配置され、
それぞれが前記第1方向に延びるとともに前記第2方向に沿って配置され、対応する前記メモリセルの書き込み及び読出しを制御し、前記第2データに応じた電圧に設定される複数の第2配線をさらに備え、
前記複数の第1配線のそれぞれは、前記第2方向に配置される複数の前記メモリセルから読み出された前記複数の第1データと、前記第2方向に配置される前記複数の第2配線の前記第2データとのビット演算結果を転送する、
請求項1乃至4のいずれか一項に記載の電流検出回路。
【請求項18】
前記複数のメモリセルは、互いに交差する第1方向及び第2方向に沿って配置され、
それぞれが前記第1方向に延びるとともに前記第2方向に沿って配置され、対応する前記メモリセルの書き込み及び読出しを制御し、前記第2データに応じた電圧に設定される複数の第2配線をさらに備え、
前記複数の第1配線のそれぞれは、前記第2方向に配置される複数の前記メモリセルから読み出された前記複数の第1データと、前記第2方向に配置される前記複数の第2配線の前記第2データとのビット演算結果を転送する、
請求項5に記載の電流検出回路。
【請求項19】
それぞれが複数のビットを有する複数の第1データを保持する複数のメモリセルと、
前記複数の第1データのそれぞれと、前記第1データと同じビット数を有する第2データとのビット演算結果を転送する複数の第1配線と、
前記複数の第1配線のうち最小電流が流れる第1配線を検出する検出部と、
前記検出部で検出された前記第1配線に流れる前記最小電流に基づいて、前記検出部で検出された前記第1配線に転送される前記第1データと前記第2データとの距離を計測する距離計測部と、を備える、
情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の一実施形態は、電流検出回路及び情報処理装置に関する。
【背景技術】
【0002】
半導体デバイスの微細化及び集積度が進むに従って、従来はソフトウェアで行われていた膨大な量の演算処理を半導体デバイスで高速に行うことが可能になった。特に、半導体メモリを利用して、大量の積和演算などを高速に行うCIM(Computing In Memory)が注目されている。
【0003】
CIMでは、例えば、演算結果に応じて、ビット線等の配線に流れる電流を変化させる。この場合、電流の大きさと電流が変化するタイミングを精度よく検出する必要があるが、半導体デバイスの製造ばらつきなどにより、電流の大きさが変動したり、電流が変化するタイミングがずれたりして、正しい演算結果が得られないおそれがある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】米国特許公開公報2012/0126783
【特許文献2】米国特許公開公報2018/03422291
【特許文献3】特表2022-516091号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の一実施形態では、半導体デバイスの配線に流れる電流とタイミングを精度よく検出できる電流検出回路及び情報処理装置を提供するものである。
【課題を解決するための手段】
【0006】
上記の課題を解決するために、本発明の一実施形態によれば、それぞれが複数のビットを有する複数の第1データを保持する複数のメモリセルと、前記複数の第1データのそれぞれと、前記第1データと同じビット数を有する第2データとのビット演算結果を転送する複数の第1配線と、前記複数の第1配線のうち最小電流が流れる第1配線を検出する検出部と、を備える、電流検出回路が提供される。
【図面の簡単な説明】
【0007】
図1】一実施形態に係る電流検出回路の基本概念を説明する図。
図2A】第1データを構成する各ビットを記憶するメモリセルと、ワード線と、ビット線との配置を示す図。
図2B】第1データの各ビットと第2データの対応ビットとの間で否定排他的論理和の演算を行う場合の真理値表を示す図。
図3】距離の分布の一例を示す図。
図4】各ビット線を流れる電流の検出方法を示す模式的なブロック図。
図5】ADCの代わりにセンスアンプを設ける例を示すブロック図。
図6】ビット線の電圧が時間とともに変化する様子を示す図。
図7】(a)(b)はセンスアンプの閾値の電圧レベルを複数通りに変化させる例を示す図。
図8】タイミング生成回路の一例を示す回路図。
図9】閾値制御が可能なセンスアンプの第1例を示す図。
図10図9のセンスアンプの閾値の大小関係を模式的に示す図。
図11】閾値制御が可能なセンスアンプの第2例を示す図。
図12図11のセンスアンプの閾値の大小関係を模式的に示す図。
図13】閾値制御が可能なセンスアンプの第3例を示す図。
図14】第1電圧と第2電圧の電圧波形図。
図15図13のセンスアンプ5の閾値の大小関係を模式的に示す図。
図16】(a)(b)はセンスアンプの閾値を時間に応じて線形に変化させる例を示す図。
図17】閾値を変化させるタイミングを説明する図。
図18】第1の実施形態に係る電流検出回路の概略構成を示すブロック図。
図19】1つのセンスアンプと対応するラッチ回路の接続を示す図。
図20】2本のビット線の電圧が時間に応じて変化する様子を示す図。
図21図20の不具合を解消する第1例を示す図。
図22図20の不具合を解消する第2例を示す図。
図23図21の第1例に対応する電流検出回路のブロック図。
図24図22の第2例に対応する電流検出回路のブロック図。
図25】第1又は第2の実施形態に係る電流検出回路と、距離計測部とを備える情報処理装置のブロック図。
【発明を実施するための形態】
【0008】
以下、図面を参照して、電流検出回路及び情報処理装置の実施形態について説明する。以下では、電流検出回路及び情報処理装置の主要な構成部分を中心に説明するが、電流検出回路及び情報処理装置には、図示又は説明されていない構成部分や機能が存在しうる。以下の説明は、図示又は説明されていない構成部分や機能を除外するものではない。
【0009】
(電流検出回路の基本概念)
図1は一実施形態に係る電流検出回路の基本概念を説明する図である。図1は、複数の第1データと第2データとの乗算を行う例を示す。第1データと第2データは、互いに同じビット数を有するビット列データである。図1では、第1方向Xに複数の第1データが配置されており、複数の第1データの各ビットは第2方向Yに配置されている。第2データは1個だけであり、第2データの各ビットは第2方向Yに配置されている。第2データはクエリと呼ばれることもある。後述するように、複数の第1データを構成する各ビットは、例えばメモリセルに記憶される。本明細書では、第1データ及び第2データの各ビットが2値である例を説明するが、多値でもよい。第2データを構成する各ビットは、例えばそれぞれ異なるワード線WLの信号論理に対応する。
【0010】
図1は、複数の第1データのそれぞれと第2データとで、ビット演算を行う例を示す。ビット演算とは、例えば否定排他的論理和(XNOR)の演算である。複数の第1データのそれぞれと第2データとのビット演算結果は、それぞれ異なる第1配線(例えばビット線)に出力される。複数の第1データの数と複数の第1配線の数は同じである。
【0011】
図1では、第1データの各ビットのうち、第2データの対応ビットと同じビット値であるものを太字で示している。太字のビットの数が多いほど、否定排他的論理和の演算結果は大きくなる。右から三番目の第1データは、全ビットが第2データと同じであり、否定排他的論理和の演算結果は最大になる。ビット線には、否定排他的論理和の演算結果に応じた電流が流れる。例えば、第1データと第2データの全ビットが異なっていれば、各ビットの否定排他的論理和はゼロになるため、ビット線から各メモリセルに流れ込む電流は最大になる。一方、第1データと第2データの全ビットが同じであれば、各ビットの否定排他的論理和はいずれも1になるため、ビット線から各メモリセルに流れ込む電流はゼロになる。
【0012】
図2Aは、第1データを構成する各ビットを記憶するメモリセルMCと、ワード線WL0、WL1と、ビット線BL0、BL1との配置を示す図である。図2Bは、第1データの各ビットと第2データの対応ビットとの間で否定排他的論理和の演算を行う場合の真理値表を示す図である。図2Bの真理値表における下向きの矢印は、否定排他的論理和の演算結果がゼロの場合を示す。この場合、ビット線BL0、BL1から該当メモリセルMCに電流が引き込まれる。各ビット線BL0、BL1には、対応する第1データと第2データとの間でビット演算を行った結果、一致するビット数に応じた電流が流れる。より具体的には、各ビット線BL0、BL1には、対応する第1データと第2データとの間でビット演算を行った結果、一致するビット数が多いほど、より小さい電流が流れる。すなわち、不一致のビット数が多いほど、より大きな電流がビット線を通って、不一致のビットに対応する各メモリセルMCに流れ込む。
【0013】
ビット線BL0、BL1から該当するメモリセルMCに電流が流れ込むと、そのビット線の電圧は低下する。よって、第1データと第2データとで、一致しないビット数が多いほど、対応するビット線の電圧はより低下する。
【0014】
第1データと第2データが、ビット数分の次元を持つベクトルである場合、第1データと第2データでビット演算を行うことで、第1データのベクトルと第2データのベクトルの距離を演算できる。第1データと第2データでビットごとに否定排他的論理和の演算を行う場合、ビット線を流れる電流が最小の場合は、第1データのベクトルと第2データのベクトルの距離が最小であることを示す。逆に、ビット線を流れる電流が最大の場合は、第1データのベクトルと第2データのベクトルの距離が最大であることを示す。
【0015】
図3は距離の分布の一例を示す図であり、横軸は距離、縦軸は出現頻度である。図3は、距離が正規分布の例を示す。第1データと第2データの距離が小さいほど、また距離が大きいほど、出現頻度は減少する。第1データと第2データの距離を演算する際、距離が最小又は最大となる第1データと第2データを検出したい場合がある。本実施形態では、第1データと第2データのビットごとの否定排他的論理和の演算結果が最小となる値、すなわち最小の距離を検出することを特徴とする。
【0016】
図4は各ビット線BLを流れる電流の検出方法を示す模式的なブロック図である。各ビット線BLを流れる電流を検出するには、各ビット線BLの一端にアナログ-デジタル変換器(以下、ADC)2を接続することが考えられる。しかしながら、ADC2は回路面積が大きいことから、ビット線BLごとに別々にADC2を接続すると、回路規模が大きくなる。そこで、図4は、複数のビット線BLのいずれか一つを選択する選択器3と、選択器3に接続されるADC2と、信号処理部4とを備える例を示す。選択器3で選択されたビット線BL上のデータがADC2に入力されてAD変換される。ADC2でAD変換されたデジタル信号は、信号処理部4に入力されて、例えば第1データと第2データの最短距離が演算される。
【0017】
ADC2は、デジタル信号のビット数にもよるが、回路面積が大きい。そこで、ADC2を用いずにAD変換することも考えられる。図5はADC2の代わりにセンスアンプ5を設ける例を示すブロック図である。図5では、第1方向Xに配列されて第2方向Yに延びる複数のビット線BLの各一端に複数のセンスアンプ5を接続して、ビット線BLを流れる電流を電圧に変換する。複数のセンスアンプ5は、各ビット線BLの電圧が所定の閾値を超えたか否かを示す2値の電圧信号を出力する。各センスアンプ5から出力された2値の電圧信号は、デジタル信号として扱うことができる。
【0018】
センスアンプ5は、少数のトランジスタで構成できるため、ADC2よりもはるかに回路規模を削減できる。そこで、第1の実施形態に係る電流検出回路では、センスアンプ5を用いることを特徴とする。
【0019】
センスアンプ5を用いることで、例えば複数の第1配線のうち、最大の電流が流れる第1配線、又は最小の電流が流れる第1配線を検出することができる。以下では、第1配線がビット線BLである例を説明する。
【0020】
図6はビット線の電圧が時間とともに変化する様子を示す図である。図6の横軸は時間、縦軸はビット線の電圧レベルである。ビット線の延びる方向に配置される複数のメモリセルMCからなるセル列と複数のワード線との否定排他的論理和の演算結果により、ビット線の電圧レベルは時間とともに変化する。より具体的には、否定排他的論理和の演算結果により、ビット線を流れる電流が変化し、それに応じてビット線の電圧は時間とともに線形に変化する。ビット線の電圧は、接地レベル以下にはならないため、図6に示すように、接地レベルでクリップされる。
【0021】
例えば、複数のビット線のうち最大の電流が流れるビット線BLaを検出するには、例えば時刻t1で各ビット線の電圧レベルを測定することが考えられる。時刻t1では、最大の電流が流れるビット線BLaの電圧レベルはクリップされるが、他のビット線の電圧レベルはクリップ電圧まで達していないため、各ビット線の電圧レベルを測定することで、クリップ電圧に達したビット線BLaを、最大の電流が流れるビット線として検出することができる。しかしながら、時刻t1では、複数のビット線の電圧レベルの差はわずかであり、センスアンプ5の製造ばらつきによるマージンを確保できないことから、最大の電流が流れるビット線BLaを正しく検出できないおそれがある。
【0022】
一方、複数のビット線のうち最小の電流が流れるビット線BLbを検出するには、例えば時刻t3で各ビット線の電圧レベルを測定することが考えられる。センスアンプ5の閾値Vthを、図6の破線で示す電圧レベルに設定すると、時刻t3において、最小の電流が流れるビット線BLbの電圧レベルが閾値と一致し、このビット線が接続されるセンスアンプ5の出力信号の論理が反転する。このとき、他のすべてのビット線が接続されるセンスアンプ5の出力信号の論理はすでに反転している。時刻t3では、最小の電流が流れるビット線BLbの電圧レベルと、2番目に小さな電流が流れるビット線BLcの電圧レベルとの間の電圧差は、センスアンプ5の製造ばらつきのマージンを確保できる以上の大きさである。また、最小電流が流れるビット線BLbが接続されるセンスアンプ5の出力信号の論理が反転する時刻t3と、2番目に小さな電流が流れるビット線BLcが接続されるセンスアンプ5の出力信号の論理が反転する時刻t2との時間差も、センスアンプ5の製造ばらつきのマージンを確保できる以上の大きさである。
【0023】
このように、最大の電流が流れるビット線BLaを精度よく検出するのは容易ではないが、最小の電流が流れるビット線BLbを精度よく検出するのは比較的容易である。
【0024】
上述したように、複数のビット線の中で最小の電流が流れるビット線BLbを検出するには、センスアンプ5の閾値の電圧レベルを適切に設定する必要がある。図7はセンスアンプ5の閾値の電圧レベルを複数通りに変化させる例を示す図である。図7(a)は、図6と同様に、ビット線の電圧が時間に応じて変化する様子を示す図である。図7(b)は、センスアンプ5の出力信号の電圧レベルが時間に応じて変化する様子を示す図である。図7(b)の横軸は時間、縦軸は電圧レベルである。
【0025】
図7からわかるように、閾値の電圧レベルを最適な電圧レベルよりも高く設定すると、すべてのセンスアンプ5の出力信号の論理が遷移し、どのビット線に最小の電流が流れるのかを正しく検出できない。また、複数のセンスアンプ5の出力信号の論理が遷移したか否かは、複数のセンスアンプ5の後段に接続されるタイミング生成回路を介して判断されるため、複数のセンスアンプ5の出力信号が遷移するタイミングよりも遅れてしまう。
【0026】
図8はタイミング生成回路6の一例を示す回路図である。図8のタイミング生成回路6は、各ビット線の電圧が閾値より大きいか否かを検出する複数のインバータからなる複数のセンスアンプ5の後段に接続されており、例えば複数のNOR回路と複数のNAND回路を組み合わせて構成される。NAND回路とNOR回路の接続段数が多くなるほど、タイミング生成回路6の出力信号が遷移するのに時間がかかり、閾値とビット線の電圧が交差したタイミングを遅れて検出することになる。
【0027】
このため、最小の電流が流れるビット線を検出するには、最小の電流が流れるビット線以外のすべてのビット線が接続される各センスアンプ5の出力信号の論理が遷移するタイミングから、最小の電流が流れるビット線が接続されるセンスアンプ5の出力信号の論理が遷移するタイミングまでの時間差が十分にないと、最小の電流が流れるビット線を精度よく検出できない。
【0028】
センスアンプ5の閾値を制御するには、複数の方法が考えられる。図9は閾値制御が可能なセンスアンプ5の第1例を示す図である。図9のセンスアンプ5は、閾値が互いに異なる2つのインバータ7a、7bを有し、いずれか一方のインバータを選択できるようにする。インバータ7a、7bの閾値は製造ばらつき等により変動するおそれがある。このため、図9のセンスアンプ5では、閾値Vth1を有するインバータ7aと、閾値Vth1よりも大きい閾値Vth2を有するインバータ7bを想定していたとしても、製造ばらつきにより、閾値Vth2が閾値Vth1よりも小さくなるおそれがある。
【0029】
図10図9のセンスアンプ5の閾値Vth1とVth2の大小関係を模式的に示す図である。図10の横軸は閾値Vth1、縦軸は閾値Vth2である。Vth2>Vth1となるように設計したとしても、製造ばらつき等により、図10の破線範囲r1でVth1とVth2が変動するため、場合によっては、Vth1とVth2の大小関係が逆転するおそれがある。
【0030】
図9のセンスアンプ5の不具合を回避するには、2つのインバータ7a、7bの閾値Vth1、Vth2を大きく相違させるように設計する必要があり、センスアンプ5の設計が複雑になる。
【0031】
図11は閾値制御が可能なセンスアンプ5の第2例を示す図である。図11のセンスアンプ5は、カスコード接続されるPMOSトランジスタQ1とNMOSトランジスタQ2からなるインバータ7と、インバータ7の出力ノードと接地ノードの間にカスコード接続される2つのNMOSトランジスタQ3、Q4とを有する。インバータ7内のPMOSトランジスタQ1及びNMOSトランジスタQ2と、NMOSトランジスタQ3のゲートには、ビット線BLが接続される。NMOSトランジスタQ3の閾値Vth2を、インバータ7の閾値Vth1よりも大きくし、NMOSトランジスタQ4のゲートには、NMOSトランジスタQ3を有効にするためのイネーブル信号Vth2_ENが入力される。
【0032】
図12図11のセンスアンプ5の閾値Vth1とVth2の大小関係を模式的に示す図である。
【0033】
図11のセンスアンプ5は、インバータ7内のNMOSトランジスタQ2とNMOSトランジスタQ3のゲート及びソースを共通化することで、Vth2>Vth1の関係を維持しやすくなるが、製造ばらつき等により、図12の破線範囲r2内で閾値Vth1、Vth2が変動するため、ビット線BLの電圧レベルにより、センスアンプ5の出力信号の論理が変化するおそれがある。
【0034】
図13は閾値制御が可能なセンスアンプ5の第3例を示す図である。図13のセンスアンプ5は、第1電圧ノードと第2電圧ノードの間にカスコード接続されるPMOSトランジスタQ1及びNMOSトランジスタQ2を有する。第1電圧ノードの第1電圧Vdと第2電圧ノードの第2電圧Vsは、閾値制御回路9により可変制御される。
【0035】
図14は第1電圧Vdと第2電圧Vsの電圧波形図である。図14に示すように、閾値制御回路9は、初期状態では第1電圧Vdと第2電圧Vsをそれぞれ固定の電圧レベルに設定し、すべてのビット線の電圧が閾値と交差するタイミングt1で第1電圧Vdと第2電圧Vsを時間に応じて変化させる。図14の例では、タイミングt1以降に、第1電圧Vdと第2電圧Vsをそれぞれ時間に応じて線形に低下させる例を示すが、第1電圧Vdと第2電圧Vsを非線形に変化させてもよい。
【0036】
図15図13のセンスアンプ5の閾値Vth1とVth2の大小関係を模式的に示す図である。図13のセンスアンプ5では、第1電圧Vdと第2電圧Vsを同期して変化させるため、図15に示すように、変更する前の閾値Vth1と変更後の閾値Vth2との電圧差を時間に応じて変化させることができ、製造ばらつきの影響を受けにくくなる。そこで、本実施形態では、例えば、図13の回路構成のセンスアンプ5を用いる。
【0037】
(第1の実施形態)
第1の実施形態に係る電流検出回路は、複数のビット線のうち最小の電流が流れるビット線を検出することを特徴とする。第1の実施形態に係る電流検出回路では、最小電流が流れるビット線を検出するために、複数のビット線が接続される複数のセンスアンプ5を用いる。
【0038】
図16はセンスアンプ(SA)5の閾値を時間に応じて線形に変化させる例を示す図である。図16(a)は、ビット線BLの電圧が時間に応じて変化する様子を示す図であり、横軸は時間、縦軸はビット線の電圧レベルである。図16(a)には、流れる電流がそれぞれ異なる複数のビット線の電圧変化が図示されている。傾きが最小のビット線が最小の電流が流れるビット線である。
【0039】
図16(b)は、センスアンプ5の出力信号の電圧レベルが時間に応じて変化する様子を示す図である。図16(b)の横軸は時間、縦軸は電圧レベルである。
【0040】
図16(a)の破線は、閾値制御回路9が制御する閾値の電圧レベルが時間に応じて変化する様子を示す。閾値とビット線の電圧とが交差するタイミングで、センスアンプ5の出力信号の論理が変化する。
【0041】
図16(a)の時刻t1で、最小の電流が流れるビット線の電圧と閾値が交差し、センスアンプ5の出力信号の論理が変化する。よって、センスアンプ5の出力信号の論理が変化したことを例えば図8のタイミング生成回路6で検出することで、最小電流が流れるビット線を検出できる。タイミング生成回路6を通過するのに時間を要するため、最小電流が流れるビット線を検出して、すべてのビット線の電圧をラッチ(保持)するタイミングは、時刻t2となる。
【0042】
図16(a)の場合、閾値制御回路9は、所定のタイミングt0以降で、閾値を線形に変化させる。最小の電流が流れるビット線を精度よく検出するには、閾値が変化し始める所定のタイミングt0と閾値の傾きを適切に設定する必要がある。
【0043】
図17は閾値を変化させるタイミングを説明する図である。図17の場合、閾値制御回路9は、初期状態では閾値を所定の電圧に設定する。所定の電圧は、すべてのビット線の電圧と交差するような電圧レベルに設定する。
【0044】
閾値制御回路9は、すべてのビット線の電圧が閾値と交差する第1タイミングt11より後の第2タイミングt12から閾値を時間に応じて線形に変化させる。その後、後述する検出部15は、第3タイミングt13で、複数のビット線の電圧のうち、閾値と最初に交差する電圧を有するビット線を最小の電流が流れるビット線として検出し、ラッチ群16は、第4タイミングt14でセンスアンプ群13の出力信号を保持する。
【0045】
第2タイミングt12から閾値を変化させる際に、閾値の傾きを急峻にすると、最小の電流が流れるビット線の電圧が閾値と一致するタイミングと、2番目に小さな電流が流れるビット線の電圧が閾値と一致するタイミングとの時間差が短くなり、製造ばらつき等によるマージンを確保できなくなるおそれがある。逆に閾値の傾きを緩くしすぎると、ビット線の電圧と閾値とが交差しなくなるおそれがある。よって、閾値制御回路9は、適切な傾きで閾値を変化させる。
【0046】
図18は第1の実施形態に係る電流検出回路10の概略構成を示すブロック図である。図18の電流検出回路10は、セルアレイ11と、ロウ制御回路12と、センスアンプ群13と、閾値制御回路9と、検出部15と、ラッチ群16とを備える。
【0047】
セルアレイ11は、図5に示すように、第1方向X及び第2方向Yに配列された複数のメモリセルMCを有する。各メモリセルMCはDRAM(Dynamic Random Access Memory)又はSRAM(Static Random Access Memory)等の揮発メモリである。あるいは、各メモリセルMCは、NANDフラッシュメモリ等の不揮発メモリで構成してもよい。
【0048】
セルアレイ11には、第2方向Yに配列された複数のメモリセルMCからなるセル列ごとに第1配線BLが配置されている。また、セルアレイ11には、第1方向Xに配列された複数のメモリセルMCからなるセル行ごとに第2配線WLが配置されている。本明細書では、第1配線をビット線、第2配線をワード線と呼ぶことがある。
【0049】
図1で説明したように、セルアレイ11内の各メモリセルMCは、複数のセル列のそれぞれと複数のワード線との間で、ビットごとに否定排他的論理和を演算する。本明細書では、セル列を第1データと呼び、複数のワード線を総称して第2データと呼び、各ワード線を第2データの各ビットと呼ぶことがある。
【0050】
セル列と複数のワード線との間での否定排他的論理和の演算結果によって、ビット線を流れる電流が変化する。具体的には、セル列を構成する第1データの各ビットと、複数のワードからなる第2データの各ビットとでビット演算を行い、ビット演算の結果によりビット線を流れる電流を変化させる。この場合、ビット同士が一致する割合が大きいほど、ビット線を流れる電流はより小さくなる。
【0051】
複数のワード線の電圧は、ロウ制御回路12により制御される。ロウ制御回路12は、外部から入力されるクエリに基づいて、各ワード線の電圧を制御する。センスアンプ群13は、複数のセンスアンプ5を有する。セルアレイ11の第1方向Xに配列される複数のビット線は、対応するセンスアンプ5に接続されている。
【0052】
ラッチ群16は、複数のラッチ回路を有する。複数のラッチ回路は、複数のセンスアンプ5に対応して設けられる。
【0053】
図19は1つのセンスアンプ5と対応するラッチ回路17の接続を示す図である。後述するように、複数のセンスアンプ5のうち、最小電流が流れるビット線が検出されたタイミングに合わせて、すべてのセンスアンプ5の出力信号が対応するラッチ回路17でラッチされる。
【0054】
各センスアンプ5は、対応するビット線の電圧を閾値と比較して、その比較結果を示す信号を出力する。より具体的には、各センスアンプ5は、対応するビット線のデータ(電圧)が閾値を超えたか否かで出力信号の論理を切り替える。
【0055】
各センスアンプ5の閾値は、閾値制御回路9により制御される。閾値制御回路9は、初期状態では所定の電圧レベルであり、すべてのビット線の電圧が閾値と交差するタイミング以降に、閾値を時間に応じて変化させる。すなわち、閾値制御回路9は、電流検出回路10が動作を開始してしばらくの間は、閾値の電圧レベルを固定にする。また、閾値制御回路9は、すべてのビット線の電圧が閾値と交差するタイミング以降では、閾値を時間とともに変化させる。
【0056】
例えば、閾値制御回路9は、すべてのビット線の電圧が閾値と交差する第1タイミングより遅い第2タイミング以降では、閾値を時間に応じて変化させる。
【0057】
より具体的には、閾値制御回路9は、第2タイミング以降では、複数のビット線上の単位時間当たりの電圧変化量よりも大きい電圧変化量で閾値を変化させる。これにより、閾値はビット線の電圧と必ず交差するようになる。
【0058】
閾値制御回路9は、すべてのビット線の電圧が閾値と交差するタイミング以降では、閾値を時間に応じて線形に変化させてもよい。
【0059】
検出部15は、複数のビット線のうち、最小電流が流れるビット線を検出する。検出部15は、閾値制御回路9が閾値を時間に応じて変化させる間に、複数のセンスアンプ5の出力信号のうち最も早く論理が変化したタイミングで、最小電流が流れるビット線を特定してもよい。より詳細には、検出部15は、閾値制御回路9が閾値を時間に応じて変化させる期間に、複数のセンスアンプ5の出力信号のうち最も早く論理が変化したタイミングで、最小電流が流れる第1配線を特定する。
【0060】
図18のセンスアンプ5の主要部は、例えば図13と同様の回路構成からなるインバータを有する。図13の第1電圧ノードの第1電圧Vdと第2電圧ノードの第2電圧Vsは、閾値制御回路9により制御される。閾値制御回路9は、すべてのビット線の電圧が閾値と交差するタイミング以降に、第1電圧Vdと第2電圧Vsを例えば図14のように変化させる。
【0061】
このように、第1の実施形態では、センスアンプ5の閾値の電圧レベルを固定にした状態ですべてのビット線の電圧が閾値と交差する第1タイミングの後の第2タイミング以降では、閾値を時間に応じて変化させる。その後、閾値と最初に電圧が交差するビット線を最小の電流が流れるビット線として検出する。これにより、簡易な回路構成にて、最小の電流が流れるビット線を精度よく検出できる。
【0062】
本実施形態によれば、第1データ及び第2データのビット数が多くても、また、第1データの数が多くても、回路規模を大きくすることなく、迅速に最小の電流を流す第1データを検出できる。
【0063】
また、第1データと第2データのビット演算はメモリセルMCを用いて行えるため、既存の揮発メモリ又は不揮発メモリを流用して電流検出回路10を構成できる。
【0064】
(第2の実施形態)
製造ばらつき等により、ビット線に流れる電流が変動し、結果としてビット線の電圧が変動する場合がある。
【0065】
図20は、2本のビット線の電圧が時間に応じて変化する様子を示す図である。図20は、2本のビット線BL1、BL2に本来は同じ電流が流れるべきところ、製造ばらつき等により互いに相違する電流が流れて、結果としてビット線BL1、BL2の電圧にずれが生じる例を示す。
【0066】
図20の場合、ビット線BL1、BL2では、それぞれ別個に閾値Vth1、Vth2を設定する必要がある。閾値制御回路9は、図17と同様に、初期状態では固定電圧レベルで、すべてのビット線の電圧が閾値と一致する第1タイミングの後に、時間に応じて電圧が変化する閾値Vth1、Vth2を生成する。第1タイミングt1は、ビット線BL1、BL2のいずれも同じである。これに対して、第2タイミングt2以降にビット線BL1、BL2の電圧と閾値が一致するタイミングt3a、t3bはそれぞれ相違する。これでは、最小の電流が流れるビット線を正しく検出することはできない。
【0067】
図21図20の不具合を解消する第1例を示す図である。図21では、閾値が固定電圧レベルのときにビット線BL1、BL2の電圧が閾値と交差する第1タイミングt1で、ビット線BL1、BL2の電圧を保持回路で保持する。また、第1タイミング以降、閾値制御回路9は、いったん閾値電圧を時間に応じて引き上げて、その後に第2タイミングt2において時間に応じて引き下げる制御を行う。
【0068】
検出部15は、第1タイミングt1で保持されたビット線BL1、BL2の電圧が閾値と交差する第3タイミングt3で、最小の電流が流れるビット線を検出する。
【0069】
第1タイミングt1以降、閾値電圧を引き上げてから引き下げることで、ビット線BL1、BL2の電圧レベルが製造ばらつきにより変化しても、いずれのビット線BL1、BL2でも第3タイミングt3は同じになる。これにより、製造ばらつき等によるビット線BL1、BL2の電圧変動の影響を受けることなく、最小の電流を流すビット線を検出できる。
【0070】
より詳細には、閾値制御回路9は、第1タイミング以降に、閾値を線形に引き上げる第1期間と、第1期間の後に閾値を線形に引き下げる第2期間とを有する。検出部15は、第2期間内の第3タイミングで、最小の電流が流れる第1配線(ビット線)を特定する。
【0071】
図22図20の不具合を解消する第2例を示す図である。図22では、閾値制御回路9が生成する閾値は図20と同じであるが、すべてのビット線の電圧が閾値と交差する第1タイミングt1で、すべてのビット線の電圧を所定の電圧ずつ引き下げて保持し、第2タイミングt2以降に閾値を線形に引き下げ、保持された各ビット線の電圧と閾値とを比較する。
【0072】
これにより、図21と同様に、ビット線BL1、BL2のいずれにおいても、同じ第3タイミングt3で、閾値と同じ電圧になり、最小の電流が流れるビット線を精度よく検出可能となる。
【0073】
図21の第1例は、図18の電流検出回路10に保持回路18を追加することにより実現できる。図23図21の第1例に対応する電流検出回路10のブロック図である。図23の保持回路18は、上述したように、閾値を固定の電圧レベルにした状態ですべてのビット線の電圧が閾値と交差する第1タイミングで、すべてのビット線の電圧を保持する。その後、閾値制御回路9は閾値を時間に応じて線形に変化させ、保持されたビット線の電圧が閾値と最初に交差する第3タイミングで、最小の電流が流れるビット線を検出する。
【0074】
図22の第2例は、閾値が固定の電圧レベルのときに全てのビット線の電圧が閾値と交差する第1タイミングで、各ビット線の電圧を所定の電圧ずつ引き下げた状態で保持する保持回路19が必要となる。図24図22の第2例に対応する電流検出回路10のブロック図である。図24の電流検出回路10は、図23の保持回路18とは異なる構成の保持回路19を有する。保持回路19は、すべてのビット線の電圧が閾値と交差する第1タイミングt1で、すべてのビット線の電圧を所定の電圧ずつ引き下げて保持する。図24の電流検出回路10内の閾値制御回路9は、図18と同様に、第2タイミングまでは固定の電圧レベルで、第2タイミング以降は時間に応じて電圧レベルが変化する閾値を生成する。
【0075】
このように、第2の実施形態では、ビット線を流れる電流が製造ばらつき等により変動しても、閾値を固定電圧レベルにしている状態ですべてのビット線の電圧が閾値に一致する第1タイミング以降に閾値を時間に応じて引き上げた後に、時間に応じて引き下げることで、すべてのビット線で同タイミングに閾値と一致させることができる。あるいは、閾値を固定電圧レベルにしている状態ですべてのビット線の電圧が閾値に一致する第1タイミングで、各ビット線の電圧を所定の電圧ずつ低下させた電圧を保持し、保持された電圧と、時間に応じて変化する閾値とを比較するため、すべてのビット線の電圧が閾値に一致するタイミングを揃えることができる。
【0076】
(第3の実施形態)
第1及び第2の実施形態に係る電流検出回路10は、第1データと第2データとの距離を計測する用途で使用することができる。
【0077】
図25は、第1又は第2の実施形態に係る電流検出回路10と、距離計測部21とを備える情報処理装置20のブロック図である。距離計測部21は、検出部で検出された第1配線に流れる最小電流に基づいて、検出部で検出された第1配線に転送される第1データと第2データとの距離を計測する。図25は、図18のブロック構成に距離計測部21を追加したブロック構成を示すが、図23又は図24のブロック構成に距離計測部21を追加したブロック構成にしてもよい。
【0078】
第1データの数が多い場合でも、第1データの各ビットをメモリセルMCに記憶し、メモリセルMCとワード線を用いて否定排他的論理和の演算を行い、その演算結果に応じてビット線を流れる電流を変化させることにより、簡易な構成で、最小の距離を迅速に計測できる。
[付記]
【0079】
[項目1]
それぞれが複数のビットを有する複数の第1データを保持する複数のメモリセルと、
前記複数の第1データのそれぞれと、前記第1データと同じビット数を有する第2データとのビット演算結果を転送する複数の第1配線と、
前記複数の第1配線のうち最小電流が流れる第1配線を検出する検出部と、を備える、
電流検出回路。
[項目2]
前記複数の第1配線は、前記複数の第1データのそれぞれと前記第2データとの一致するビット数に応じた電流を流す、
項目1に記載の電流検出回路。
[項目3]
前記複数の第1配線は、前記複数の第1データのそれぞれと前記第2データとの一致するビット数が多いほど、より小さい電流を流す、
項目2に記載の電流検出回路。
[項目4]
前記複数の第1配線は、前記複数の第1データのそれぞれと前記第2データとで、ビットごとに否定排他的論理和の演算を行った結果を転送する、
項目1乃至3のいずれか一項に記載の電流検出回路。
[項目5]
前記複数の第1配線の電圧をセンスする複数のセンスアンプと、
前記検出部にて最小電流が流れる前記第1配線が検出されたタイミングで、前記複数のセンスアンプの出力信号を保持する複数の保持器と、を備える、
項目1乃至4のいずれか一項に記載の電流検出回路。
[項目6]
前記複数のセンスアンプのそれぞれは、対応する前記第1配線の電圧が閾値を超えたか否かで出力信号の論理を切り替える、
項目5に記載の電流検出回路。
[項目7]
前記閾値を時間に応じて制御する閾値制御回路を備える、
項目6に記載の電流検出回路。
[項目8]
前記複数の第1配線の電圧レベルは、前記複数の第1データのそれぞれと前記第2データとのビット演算結果に基づいて時間とともに変化し、
前記閾値制御回路は、初期状態では前記閾値を所定の電圧レベルに設定し、前記複数の第1配線の電圧が前記閾値と交差するタイミング以降に、前記閾値を時間に応じて変化させる、
項目7に記載の電流検出回路。
[項目9]
前記閾値制御回路は、前記複数の第1配線の電圧が前記閾値と交差する第1タイミングより遅い第2タイミング以降では、前記閾値を時間に応じて変化させる、
項目8に記載の電流検出回路。
[項目10]
前記閾値制御回路は、前記第2タイミング以降に、前記複数の第1配線の単位時間当たりの電圧変化量よりも大きい電圧変化量で前記閾値を変化させる、
項目9に記載の電流検出回路。
[項目11]
前記閾値制御回路は、前記第2タイミング以降では、前記閾値を時間に応じて線形に変化させる、
項目9又は10に記載の電流検出回路。
[項目12]
前記検出部は、前記閾値制御回路が前記閾値を時間に応じて変化させる期間に、前記複数のセンスアンプの出力信号のうち最も早く論理が変化したタイミングで、最小電流が流れる前記第1配線を特定する、
項目8乃至11のいずれか一項に記載の電流検出回路。
[項目13]
前記複数のセンスアンプのそれぞれは、
第1電圧ノードと第2電圧ノードとの間に接続される、互いに導電型の異なる第1トランジスタ及び第2トランジスタを含むインバータを有し、
前記閾値制御回路は、前記複数の第1配線の電圧が前記閾値と交差するまでは前記第1電圧ノード及び前記第2電圧ノードをそれぞれ予め定めた初期電圧に設定し、前記複数の第1配線の電圧が前記閾値と交差するタイミング以降に、前記第1電圧ノード及び前記第2電圧ノードをそれぞれ時間に応じて変化させる、
項目8乃至12のいずれか一項に記載の電流検出回路。
[項目14]
前記複数の第1配線の電圧が前記閾値と交差する第1タイミングに合わせて、前記複数の第1配線の電圧レベルを保持する保持回路を備え、
前記閾値制御回路は、前記第1タイミング以降に、前記閾値をいったん引き上げた後に引き下げる制御を行い、
前記検出部は、前記第1タイミング以降に、前記保持回路で保持された前記複数の第1配線の電圧レベルと前記閾値制御回路で制御された前記閾値とが一致する第3タイミングで、最小電流が流れる第1配線を特定する、
項目8乃至13のいずれか一項に記載の電流検出回路。
[項目15]
前記閾値制御回路は、前記第1タイミング以降に、前記閾値を線形に引き上げる第1期間と、前記第1期間の後に前記閾値を線形に引き下げる第2期間とを有し、
前記検出部は、前記第2期間内の前記第3タイミングで、最小の電流が流れる前記第1配線を特定する、
項目14に記載の電流検出回路。
[項目16]
前記複数の第1配線の電圧が前記閾値と交差するタイミングに合わせて、前記複数の第1配線の電圧レベルを所定の電圧ずつ低下させた電圧を保持する保持回路を備え、
前記検出部は、前記複数の第1配線の電圧が前記閾値と交差するタイミング以降では、前記保持回路で保持された前記複数の第1配線の電圧のうち、前記閾値制御回路で制御された前記閾値に最も早く一致するタイミングで、最小電流が流れる前記第1配線を特定する、
項目8乃至13のいずれか一項に記載の電流検出回路。
[項目17]
前記複数のメモリセルは、互いに交差する第1方向及び第2方向に沿って配置され、
それぞれが前記第1方向に延びるとともに前記第2方向に沿って配置され、対応する前記メモリセルの書き込み及び読出しを制御し、前記第2データに応じた電圧に設定される複数の第2配線をさらに備え、
前記複数の第1配線のそれぞれは、前記第2方向に配置される複数の前記メモリセルから読み出された前記複数の第1データと、前記第2方向に配置される前記複数の第2配線の前記第2データとのビット演算結果を転送する、
項目1乃至16のいずれか一項に記載の電流検出回路。
[項目18]
それぞれが複数のビットを有する複数の第1データを保持する複数のメモリセルと、
前記複数の第1データのそれぞれと、前記第1データと同じビット数を有する第2データとのビット演算結果を転送する複数の第1配線と、
前記複数の第1配線のうち最小電流が流れる第1配線を検出する検出部と、
前記検出部で検出された前記第1配線に流れる前記最小電流に基づいて、前記検出部で検出された前記第1配線に転送される前記第1データと前記第2データとの距離を計測する距離計測部と、を備える、
情報処理装置。
【0080】
本開示の態様は、上述した個々の実施形態に限定されるものではなく、当業者が想到しうる種々の変形も含むものであり、本開示の効果も上述した内容に限定されない。すなわち、特許請求の範囲に規定された内容およびその均等物から導き出される本開示の概念的な思想と趣旨を逸脱しない範囲で種々の追加、変更および部分的削除が可能である。
【符号の説明】
【0081】
2 アナログ-デジタル変換器、3 選択器、4 信号処理部、5 センスアンプ、6 タイミング生成回路、7、7a、7b インバータ、9 閾値制御回路、10 電流検出回路、11 セルアレイ、12 ロウ制御回路、13 センスアンプ群、15 検出部、16 ラッチ群、17 ラッチ回路、18 保持回路、19 保持回路、20 情報処理装置、21 距離計測部
図1
図2A
図2B
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25