(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022145009
(43)【公開日】2022-10-03
(54)【発明の名称】半導体集積回路及びアナログデジタル変換器
(51)【国際特許分類】
G06G 7/60 20060101AFI20220926BHJP
H03M 1/50 20060101ALI20220926BHJP
H03H 17/02 20060101ALI20220926BHJP
G06F 7/523 20060101ALI20220926BHJP
【FI】
G06G7/60
H03M1/50
H03H17/02 655A
G06F7/523
【審査請求】未請求
【請求項の数】19
【出願形態】OL
(21)【出願番号】P 2021046249
(22)【出願日】2021-03-19
(71)【出願人】
【識別番号】318010018
【氏名又は名称】キオクシア株式会社
(74)【代理人】
【識別番号】100091487
【弁理士】
【氏名又は名称】中村 行孝
(74)【代理人】
【識別番号】100120031
【弁理士】
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100107582
【弁理士】
【氏名又は名称】関根 毅
(74)【代理人】
【識別番号】100118843
【弁理士】
【氏名又は名称】赤岡 明
(74)【代理人】
【識別番号】100103263
【弁理士】
【氏名又は名称】川崎 康
(72)【発明者】
【氏名】川澄 篤
【テーマコード(参考)】
5J022
【Fターム(参考)】
5J022AA11
5J022BA06
5J022CA10
5J022CB01
5J022CD02
5J022CD03
5J022CD04
5J022CE04
5J022CF01
(57)【要約】
【課題】ハードウェア構成を複雑化することなく、積和演算をハードウェアで精度よく行うことができるようにする。
【解決手段】半導体集積回路は、メモリセルに記憶された第1データと第1配線上の第2データとの乗算データが第1論理のときにディスチャージされる第2配線のディスチャージ量に応じたタイミングで論理が遷移する2値信号を生成するデジタル信号生成器と、2値信号の論理が遷移するタイミングを検出する遷移タイミング検出器と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
メモリセルに記憶された第1データと第1配線上の第2データとの乗算データが第1論理のときにディスチャージされる第2配線のディスチャージ量に応じたタイミングで論理が遷移する2値信号を生成するデジタル信号生成器と、
前記2値信号の論理が遷移するタイミングを検出する遷移タイミング検出器と、を備える、半導体集積回路。
【請求項2】
前記遷移タイミング検出器は、前記2値信号を、前記第2配線のそれぞれ異なるディスチャージ量に応じたタイミングで論理が遷移する複数の参照2値信号と比較する複数の論理演算器を有する、請求項1に記載の半導体集積回路。
【請求項3】
前記2値信号の論理が変化するタイミングより早いタイミングで論理が遷移する前記参照2値信号が入力される前記論理演算器と、前記2値信号の論理が変化するタイミングより遅いタイミングで論理が遷移する前記参照2値信号が入力される前記論理演算器とでは、出力論理が異なる、請求項2に記載の半導体集積回路。
【請求項4】
前記2値信号の論理が変化するタイミングより早いタイミングで論理が遷移する前記参照2値信号が入力される前記論理演算器は、第1論理の信号を出力し、
前記2値信号の論理が変化するタイミングより遅いタイミングで論理が遷移する前記参照2値信号が入力される前記論理演算器は、第2論理の信号を出力する、請求項3に記載の半導体集積回路。
【請求項5】
前記複数の論理演算器から出力された複数の信号を保持する複数の保持器を備える、請求項2乃至4のいずれか一項に記載の半導体集積回路。
【請求項6】
前記複数の保持器で保持された複数の信号に基づいて、前記第2配線のディスチャージ量に応じたデジタル信号を生成するエンコーダを備える、請求項5に記載の半導体集積回路。
【請求項7】
前記複数の論理演算器から出力された複数の信号を保持する複数の保持器と、
前記複数の保持器で保持された複数の信号に基づいて、所定のタイミングで、前記第1論理の信号を出力する前記論理演算器の数と、前記第2論理の信号を出力する前記論理演算器の数とにより、前記第2配線のディスチャージ量に応じたデジタル信号を生成するエンコーダと、を備える、請求項4に記載の半導体集積回路。
【請求項8】
前記複数の論理演算器から出力された複数の信号を保持する複数の保持器と、
前記複数の保持器で保持された複数の信号に基づいて、前記複数の論理演算器の出力が前記第2論理から前記第1論理に変わるタイミングにより、前記第2配線のディスチャージ量に応じたデジタル信号を生成するエンコーダと、を備える、請求項4に記載の半導体集積回路。
【請求項9】
前記デジタル信号生成器は、前記第2配線の電位が所定の閾値電圧以下になると前記2値信号の論理を遷移させる論理反転器を有する、請求項1乃至8のいずれか一項に記載の半導体集積回路。
【請求項10】
前記デジタル信号生成器は、出力論理が遷移する以前の状態のときに前記第2配線をプルアップするプルアップ回路を有する、請求項9に記載の半導体集積回路。
【請求項11】
前記デジタル信号生成器は、出力論理が遷移すると、前記プルアップ回路による前記第2配線のプルアップを解除するプルアップ制御回路を有する、請求項10に記載の半導体集積回路。
【請求項12】
第1方向に配置され、それぞれが前記第1データを記憶する複数の前記メモリセルと、
前記第1方向に配置された前記複数のメモリセルのそれぞれに対応して設けられ、前記第1データと乗算される前記第2データを供給する複数の前記第1配線と、
前記第1方向に配置された前記複数のメモリセルに対応して設けられ、前記複数のメモリセルのそれぞれに記憶された前記第1データと対応する前記第1配線にて供給される前記第2データとの乗算データが第1論理のときにディスチャージされる一方の前記第2配線と、前記乗算データが第2論理のときにディスチャージされる他方の前記第2配線とを含む第2配線対と、を備える、請求項1乃至11のいずれか一項に記載の半導体集積回路。
【請求項13】
前記デジタル信号生成器は、
前記一方の第2配線のディスチャージ量に応じたタイミングで論理が遷移する2値信号を生成する第1デジタル信号生成器と、
前記他方の第2配線のディスチャージ量に応じたタイミングで論理が遷移する2値信号を生成する第2デジタル信号生成器と、を有する、請求項12に記載の半導体集積回路。
【請求項14】
前記第1デジタル信号生成器で生成された前記2値信号を前記複数の参照2値信号と比較する前記複数の論理演算器は、前記第2デジタル信号生成器で生成された前記2値信号を前記複数の参照2値信号と比較する前記複数の論理演算器とは別個に設けられる、請求項13に記載の半導体集積回路。
【請求項15】
前記複数の参照2値信号を生成する参照信号生成器を備え、
前記参照信号生成器で生成された前記複数の参照2値信号は、前記第1デジタル信号生成器で生成された前記2値信号との比較に用いられるとともに、前記第2デジタル信号生成器で生成された前記2値信号との比較に用いられる、請求項13又は14に記載の半導体集積回路。
【請求項16】
前記参照信号生成器は、
前記第1方向に配置され、それぞれが前記第1データを記憶する複数の参照メモリセルと、
前記第1方向に配置された前記複数の参照メモリセルのそれぞれに対応して設けられ、前記第1データと乗算される前記第2データを供給する複数の前記第1配線と、
前記第1方向に配置された前記複数の参照メモリセルに対応して設けられ、前記複数の参照メモリセルのそれぞれに記憶された前記第1データと対応する前記第1配線にて供給される前記第2データとの乗算データが第1論理のときにディスチャージされる一方の参照配線と、前記乗算データが第2論理のときにディスチャージされる他方の参照配線とを含む参照配線対と、
前記一方の参照配線のディスチャージ量に応じたタイミングで論理が遷移する参照2値信号を生成する第1参照デジタル信号生成器と、
前記他方の参照配線のディスチャージ量に応じたタイミングで論理が遷移する参照2値信号を生成する第2参照デジタル信号生成器と、を備える、請求項15に記載の半導体集積回路。
【請求項17】
前記デジタル信号生成器、前記複数のメモリセル及び前記第2配線対は、前記第1方向に交差する第2方向に複数ずつ配置される、請求項12乃至14のいずれか一項に記載の半導体集積回路。
【請求項18】
前記第2方向に前記複数の参照2値信号を生成する参照信号生成器を備え、
前記参照信号生成器は、
前記第1方向に配置され、それぞれが前記第1データを記憶する複数の参照メモリセルと、
前記第1方向に配置された前記複数の参照メモリセルのそれぞれに対応して設けられ、前記第1データと乗算される前記第2データを供給する複数の前記第1配線と、
前記第1方向に配置された前記複数の参照メモリセルに対応して設けられ、前記複数の参照メモリセルのそれぞれに記憶された前記第1データと対応する前記第1配線にて供給される前記第2データとの乗算データが第1論理のときにディスチャージされる一方の参照配線と、前記乗算データが第2論理のときにディスチャージされる他方の参照配線とを含む参照配線対と、
前記一方の参照配線のディスチャージ量に応じたタイミングで論理が遷移する参照2値信号を生成する第1参照デジタル信号生成器と、
前記他方の参照配線のディスチャージ量に応じたタイミングで論理が遷移する参照2値信号を生成する第2参照デジタル信号生成器と、を備え、
前記複数の参照メモリセルと、前記参照配線対と、前記第1参照デジタル信号生成器と、前記第2参照デジタル信号生成器とは、前記第2方向に複数ずつ配置される、請求項17に記載の半導体集積回路。
【請求項19】
メモリセルに記憶された第1データと第1配線上の第2データとの乗算データが第1論理のときにディスチャージされる第2配線のディスチャージ量に応じたタイミングで論理が遷移する2値信号を生成するデジタル信号生成器と、
前記2値信号の論理が遷移するタイミングを検出する複数の論理演算器と、
前記複数の論理演算器から出力された複数の信号を保持する複数の保持器と、
前記複数の保持器で保持された複数の信号に基づいて、前記第2配線のディスチャージ量に応じたデジタル信号を生成するエンコーダと、を備える、アナログデジタル変換器。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の一実施形態は、半導体集積回路及びアナログデジタル変換器に関する。
【背景技術】
【0002】
最近、機械学習を用いた情報処理が様々な分野で行われている。機械学習では、例えばCNN(Convolutional Neural Network)で用いられる重み係数を更新する学習処理を行うが、重み係数の更新には多数の積和演算処理を繰り返す必要がある。積和演算処理をソフトウェアではなく、ハードウェアで行うことができれば、機械学習を迅速かつ効率よく行うことができる。
【0003】
積和演算の結果は2値以上の多値のデータになるため、積和演算の結果を出力する配線は3段階以上の電位レベルになりうる。従って、積和演算の結果を出力する配線の電位レベルから積和演算値を正しく特定できるようにする必要がある。
【0004】
また、積和演算をハードウェアで行う場合、積和演算値を表す配線の電位レベルをデジタル信号に変換し、デジタル信号処理を行えるようにするのが望ましい。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】米国特許公開公報US2019/0042160
【発明の概要】
【発明が解決しようとする課題】
【0006】
そこで、本発明の一実施形態では、ハードウェア構成を複雑化することなく、積和演算をハードウェアで精度よく行うことが可能な半導体集積回路及びアナログデジタル変換器を提供するものである。
【課題を解決するための手段】
【0007】
上記の課題を解決するために、本発明の一実施形態によれば、メモリセルに記憶された第1データと第1配線上の第2データとの乗算データが第1論理のときにディスチャージされる第2配線のディスチャージ量に応じたタイミングで論理が遷移する2値信号を生成するデジタル信号生成器と、
前記2値信号の論理が遷移するタイミングを検出する遷移タイミング検出器と、を備える、半導体集積回路が提供される。
【図面の簡単な説明】
【0008】
【
図1】一実施形態による半導体集積回路を備えたアナログデジタル変換器の概略構成を示すブロック図。
【
図2】
図1のメモリセルアレイの概略的な内部構成を示すブロック図。
【
図4】
図1のメモリセル内の重み係数を示す第1データとワード線の論理を示す第2データとの乗算結果とビット線対のディスチャージとの対応関係を示す図。
【
図5】
図1の積和演算処理部内のデジタル信号生成器と、複数の論理演算器と、複数の保持器の具体的構成の一例を示す回路図。
【
図8】参照信号生成器の内部構成の一例を示すブロック図。
【
図9】一比較例によるアナログデジタル変換器の概略構成を示すブロック図。
【
図10】
図9のAD変換部の具体的な構成を示す回路図。
【
図11】ビット線の電位をコンパレータで比較するタイミングを示す図。
【
図12】
図1のデジタル信号生成器の具体的構成の第1例を示す回路図。
【
図13】
図12のデジタル信号生成器の入出力信号のタイミング図。
【
図14】
図1のデジタル信号生成器の具体的構成の第2例を示す回路図。
【
図15】
図14のデジタル信号生成器の入出力信号のタイミング図。
【
図16】
図1のデジタル信号生成器の具体的構成の第3例を示す回路図。
【
図17】
図16のデジタル信号生成器の入出力信号のタイミング図。
【
図18】
図17とは一部の信号のタイミングが異なるタイミング図。
【
図19】NANDフラッシュメモリセルを用いて本実施形態による半導体集積回路を構成する場合の概念図。
【発明を実施するための形態】
【0009】
以下、図面を参照して、半導体集積回路及びアナログデジタル変換器の実施形態について説明する。以下では、半導体集積回路及びアナログデジタル変換器の主要な構成部分を中心に説明するが、半導体集積回路及びアナログデジタル変換器には、図示又は説明されていない構成部分や機能が存在しうる。以下の説明は、図示又は説明されていない構成部分や機能を除外するものではない。
【0010】
図1は一実施形態による半導体集積回路1を備えたアナログデジタル変換器2の概略構成を示すブロック図である。
図1の半導体集積回路1は、メモリセルアレイ3と、複数の積和演算処理部4と、参照信号生成器5とを備えている。
【0011】
メモリセルアレイ3は、二次元方向に配置された複数のメモリセルMCを有する。なお、本実施形態では、一方向に配置された2以上のメモリセルMCを最低限含んでいればよく、複数のメモリセルMCを二次元方向に配置することは必ずしも必須ではない。また、三次元方向に配置された複数のメモリセルMCを有していてもよい。メモリセルMCは、SRAM(Static Random Access Memory)セルやDRAM(Dynamic Random Access Memory)セル等の揮発メモリでもよいし、NANDフラッシュメモリセルMCやMRAM(Magnetoresistive Random Access Memory)等の不揮発メモリでもよい。
【0012】
複数の積和演算処理部4のそれぞれは、メモリセルアレイ3から出力されるビット線に接続されている。本実施形態による半導体集積回路1は、最小構成として、1本のビット線に接続された1つの積和演算処理部4を備えている。よって、必ずしも複数の積和演算処理部4を備えている必要はない。
【0013】
積和演算処理部4は、必須の構成部分として、デジタル信号生成器6と、複数の論理演算器7とを有する。
【0014】
デジタル信号生成器6は、対応するメモリセルMCに記憶された第1データと第1配線(例えばワード線)上の第2データとの乗算データが第1論理のときにディスチャージされる第2配線(例えばビット線)のディスチャージ量に応じたタイミングで論理が遷移する2値信号を生成する。第1論理とは例えば1である。
【0015】
複数の論理演算器7は総称して遷移タイミング検出器とも呼ばれる。遷移タイミング検出器は、2値信号の論理が遷移するタイミングを検出する。より詳細には、遷移タイミング検出器を構成する複数の論理演算器7は、デジタル信号生成器6から出力された2値信号を、ビット線のそれぞれ異なるディスチャージ量に応じたタイミングで論理が遷移する複数の参照2値信号と比較する。
【0016】
このように、複数の論理演算器7のそれぞれには、論理が遷移するタイミングがそれぞれ異なる参照2値信号が入力される。デジタル信号生成器6からの2値信号の論理が変化するタイミングより早いタイミングで論理が遷移する参照2値信号が入力される論理演算器7と、2値信号の論理が変化するタイミングより遅いタイミングで論理が遷移する参照2値信号が入力される論理演算器7とでは、出力論理が異なるようにしている。
【0017】
すなわち、2値信号の論理が変化するタイミングより早いタイミングで論理が遷移する参照2値信号が入力される論理演算器7は、第1論理の信号を出力する。2値信号の論理が変化するタイミングより遅いタイミングで論理が遷移する参照2値信号が入力される論理演算器7は、第2論理の信号を出力する。第1論理の信号を出力する論理演算器7の数と、第2論理の信号を出力する論理演算器7の数とにより、第2配線のディスチャージ量が特定される。
【0018】
これにより、複数の論理演算器7の出力論理をモニタすることで、デジタル信号生成器6からの2値信号の論理が遷移したタイミングを把握することができる。
【0019】
積和演算処理部4は、複数の保持器8と、エンコーダ9とを有していてもよい。積和演算処理部4内にデジタル信号生成器6と、複数の論理演算器7と、複数の保持器8と、エンコーダ9とを有することで、アナログデジタル変換器2を構成することができる。
【0020】
複数の保持器8は、複数の論理演算器7から出力された複数の信号を保持する。複数の保持器8で複数の信号を保持することで、その後に複数の論理演算器7の出力が変化しても、複数の論理演算器7の出力信号が最初に遷移したときの状態を保持できる。
【0021】
エンコーダ9は、複数の保持器8で保持された複数の信号に基づいて、ビット線のディスチャージ量に応じたデジタル信号を生成する。
【0022】
参照信号生成器5は、複数の参照2値信号を生成する。参照信号生成器5で生成された複数の参照2値信号は、複数の積和演算処理部4に供給される。このように、参照信号生成器5は、複数の積和演算処理部4で共有することができる。
【0023】
図2は
図1のメモリセルアレイ3の概略的な内部構成を示すブロック図である。
図2のメモリセルアレイ3は、それぞれが第1方向Xに延びる複数のビット線対BL<+>、BL<->が第2方向Yに配置されている。各ビット線対BL<+>、BL<->には、第1方向Xに沿って配置される複数のメモリセルMCが接続されている。各ビット線対BL<+>、BL<->の一端側には、デジタル信号生成器6が接続されている。
図2では、第2方向Yに複数のビット線対BL<+>、BL<->を配置しているが、ビット線対BL<+>、BL<->は最低限1組あればよい。
【0024】
図2の矢印線は、ビット線対BL<+>、BL<->に流れるディスチャージ電流の方向を示している。一方のビット線BL<+>又は他方のビット線BL<->から各メモリセル回路10に対してディスチャージ電流が流れることにより、一方のビット線BL<+>又は他方のビット線BL<->はディスチャージされる。
図2に示すように、
図1の半導体集積回路1では、一方のビット線BL<+>と他方のビット線BL<->のいずれか一方がディスチャージされるか、あるいは双方のビット線BL<+>、BL<->ともディスチャージされない。
【0025】
図3はメモリセルMCの内部構成の一例を示す回路図である。
図3のメモリセルMCは、書込ビット線対WBL<+>、WBL<->に接続されている。書込ビット線対WBL<+>、WBL<->も、ビット線対BL<+>、BL<->と同様に、第1方向Xに配置されている。
【0026】
図3のメモリセルMCはSRAMセルの例を示している。
図3のメモリセルMCは、6つのトランジスタQ1~Q6を有する。トランジスタQ1とQ3はPMOSトランジスタであり、トランジスタQ2、Q4~Q6はNMOSトランジスタである。トランジスタQ1、Q2は電源電圧ノードと接地ノードの間にカスコード接続されている。同様に、トランジスタQ3、Q4は電源電圧ノードと接地ノードの間にカスコード接続されている。トランジスタQ1、Q2の両ゲートは、トランジスタQ3、Q4の両ドレインとトランジスタQ6のソースに接続されている。同様に、トランジスタQ3、Q4の両ゲートは、トランジスタQ1、Q2の両ドレインとトランジスタQ5のソースに接続されている。
【0027】
トランジスタQ5、Q6の両ゲートは、書き込みワード線WWLに接続されている。トランジスタQ5、Q6の両ドレインは書き込みビット線対WBL<+>、WBL<->に接続されている。
【0028】
図1のメモリセルアレイ3は、メモリセルMCごとに演算制御回路11を有する。演算制御回路11は、ビット線対BL<+>、BL<->と対応するメモリセルMCの出力ノードn1、n2との間に接続されている。演算制御回路11は、対応するメモリセルMCから出力された第1データと、対応するワード線から供給される第2データとの乗算を行うとともに、乗算結果に基づいて一方のビット線BL<+>又は他方のビット線BL<->をディスチャージする。一方のビット線BL<+>又は他方のビット線BL<->のディスチャージは、乗算結果同士の和演算、すなわち積和演算を行うことと等価である。本明細書では、メモリセルMCと、対応する演算制御回路11とを合わせてメモリセル回路10と呼ぶ。
【0029】
演算制御回路11は、トランジスタQ7~Q10を有する。トランジスタQ7~Q10はNMOSトランジスタである。一方のビット線BL<+>と接地ノードの間には、トランジスタQ7、Q8がカスコード接続されている。トランジスタQ7のゲートはワード線WL<+>に接続されている。トランジスタQ8のゲートは、トランジスタQ1、Q2のゲートと、トランジスタQ3、Q4の両ドレインに接続されている。
【0030】
他方のビット線BL<->と接地ノードの間には、トランジスタQ9、Q10がカスコード接続されている。トランジスタQ9のゲートはワード線WL<->に接続されている。トランジスタQ10のゲートは、トランジスタQ3、Q4のゲートと、トランジスタQ1、Q2の両ドレインに接続されている。
【0031】
上述したように、
図1の半導体集積回路1は、積和演算を行うために利用できる。メモリセルMCは、積和演算のための重み係数を第1データとして記憶することができる。ワード線WL<+>、WL<->の論理は、積和演算の際に重み係数に掛け合わされる第2データに対応する。このように、1個のメモリセルMCを用いて、重み係数を表す第1データとワード線から供給される第2データとの乗算を行うことができる。ビット線対BL<+>、BL<->に接続された複数のメモリセル回路10にて、重み係数を表す第1データとワード線から供給される第2データとの乗算を複数回行うことができ、これら乗算の和である積和演算結果はビット線対BL<+>、BL<->のディスチャージ量で表すことができる。よって、ビット線対BL<+>、BL<->から、積和演算の結果を出力することができる。
【0032】
図4は
図1のメモリセルMC内の重み係数を示す第1データとワード線WL<+>、WL<->の論理を示す第2データとの乗算結果とビット線対BL<+>、BL<->のディスチャージとの対応関係を示す図である。
図4に示すように、第1データと第2データはともに2値(0と1)のデータを取りうる。ビット線BL<+>は、第1データと第2データがともに1のときのみディスチャージされる。第2データが1になるのは、ワード線WL<+>が選択された場合である。ビット線BL<->は、第1データが0で、第2データが0のときのみディスチャージされる。第2データが0になるのは、ワード線WL<->が選択された場合である。例えば、ワード線WL<+>が選択されたときにメモリセルMCに1が記憶されていれば、トランジスタQ7、Q8がともにオンし、一方のビット線BL<+>は、トランジスタQ7、Q8を通って接地ノードにディスチャージされ、電位が下がる。また、ワード線WL<->が選択されたときにメモリセルMCに0が記憶されていれば、トランジスタQ9、Q10がともにオンし、他方のビット線BL<->は、トランジスタQ9、Q10を通って接地ノードにディスチャージされ、電位が下がる。
【0033】
図5は、
図1の積和演算処理部4内のデジタル信号生成器6と、複数の論理演算器7と、複数の保持器8の具体的構成の一例を示す回路図である。
図5は、1本のビット線に接続されるデジタル信号生成器6と、このデジタル信号生成器6からの出力信号が入力される複数の論理演算器7と、これら複数の論理演算器7の出力信号が入力される複数の保持器8と、これら複数の保持器8の出力信号が入力されるエンコーダ9とを示している。なお、デジタル信号生成器6は、ビット線対BL<+>に対応する第1デジタル信号生成器と、BL<->に対応する第2デジタル信号生成器を含むことができる。複数の論理演算器7は、第1デジタル信号生成器及び第2デジタル信号生成器それぞれに対応して別個に設けることができる。同様に複数の保持器8も、第1デジタル信号生成器及び第2デジタル信号生成器それぞれに対応して別個に設けることができる。
【0034】
図5の例では、デジタル信号生成器6がインバータ(論理反転器)12を含む例を示している。後述するように、デジタル信号生成器6は、インバータ12だけでなく、他の回路部品を含んで構成されるが、
図5では、最も簡易的な構成としてデジタル信号生成器6をインバータ12で構成する例を示している。
図5のインバータ12の入力ノードには、ビット線BLが接続されている。インバータ12は、ビット線BLの電位が閾値電圧以下になった場合に、出力論理を遷移させる。インバータ12の出力論理が遷移するタイミングは、ビット線BLのディスチャージ量によって異なる。ビット線BLのディスチャージ量が大きいほど、ビット線BLの電位はより早く低下する。このため、インバータ12の出力論理が遷移するタイミングも速くなる。このように、インバータ12の出力論理が遷移するタイミングによって、ビット線BLのディスチャージ量を把握することができる。
【0035】
複数の論理演算器7は、複数の二入力NANDゲート13で構成することができる。各NANDゲート13の一方の入力ノードにはインバータ12の出力信号が入力され、各NANDゲート13の他方の入力ノードには、対応する参照2値信号が入力される。複数のNANDゲート13に入力される複数の参照2値信号の論理が遷移するタイミングはそれぞれ異なっている。
【0036】
各論理演算器7は、インバータ12の出力信号と、対応する参照2値信号とがともにハイレベルのときのみ、ローレベル信号を出力する。すなわち、各論理演算器7は、インバータ12の出力信号がローレベルか、又は対応する参照2値信号がローレベルのときは、ハイレベル信号を出力する。
【0037】
インバータ12の出力信号は、ビット線のディスチャージ量に応じたタイミングで、ローレベルからハイレベルに遷移する。よって、インバータ12の出力信号がハイレベルに遷移したタイミングで、すでにハイレベルの参照2値信号が入力されるNANDゲート13の出力は、ローレベルに遷移し、まだローレベルの参照2値信号が入力されるNANDゲート13の出力は、ハイレベルを維持する。
【0038】
よって、複数の論理演算器7の出力信号のうち、ハイレベル又はローレベルの信号の数をカウントすることで、ビット線のディスチャージ量を特定することができる。複数の論理演算器7の出力信号は、初期状態ではハイレベルである。また、複数の論理演算器7の出力がハイレベルからローレベルに遷移するタイミングによっても、ビット線のディスチャージ量を特定することができる。
【0039】
図5では、7個の論理演算器7を有する例を示しているが、論理演算器7の数には特に制限はない。以下では、7個の論理演算器7に7つの参照2値信号SAE0~SAE6が入力される例を説明する。
【0040】
図5における複数の保持器8は、対応する論理演算器7の出力信号を保持する。各保持器8は、例えば2つのNANDゲート14、15の入出力ノードを交互に接続するとともに、一方のNANDゲート14に対応する論理演算器7の出力ノードを接続し、かつ他方のNANDゲート15にクロック信号CKを入力する。なお、保持器8の内部構成は、
図5に示したものに限定されない。
【0041】
図6は複数の論理演算器7の演算処理を説明する図である。
図6の横軸は時間、縦軸はビット線の電位である。参照2値信号SAE0~SAE6のうち、参照2値信号SAE6が最も早くローレベルからハイレベルに遷移し、参照2値信号SAE5~SAE0の順にそれぞれ遅れてハイレベルに遷移する。
図6の7つの破線は、参照2値信号SAE0~SAE6がハイレベルに遷移するタイミングを示している。
【0042】
少なくとも一回ディスチャージされたビット線の電位は、時間の経過とともに徐々に低下する。ビット線の電位の低下量は、ビット線のディスチャージ量に依存し、ディスチャージ量が大きいほど、ビット線の電位の低下量がより大きくなる。
図6は、ビット線のディスチャージを0~7回行った場合のビット線の電位変化波形V1~V7を示している。
図6では、簡略化のため、ビット線の電位が時間に応じて線形に変化する例を示している。
【0043】
図6では、インバータ12の閾値電圧Vthを破線で示している。インバータ12に入力されるビット線の電位が、
図6に破線で示す閾値電圧Vthを下回ると、インバータ12の出力はローレベルからハイレベルに遷移する。
図6に示すように、ビット線のディスチャージ回数が多いほど、ビット線の電位はより早く低下するため、より速いタイミングでインバータ12の閾値電圧以下になる。
【0044】
図7は
図6の一部を拡大した図である。ビット線電位V1~V7が閾値電圧Vth以下になると、インバータ12の出力論理はローレベルからハイレベルに遷移する。
図7に示すように、参照2値信号SAE0~SAE6は、対応するビット線電位が閾値電圧Vthと交差するタイミングより少し前にローレベルからハイレベルに遷移するようにしておく。これにより、インバータ12の出力がローレベルからハイレベルに遷移したタイミングで、必ず一つ多くのNANDゲート13の出力をハイレベルからローレベルに遷移させることができる。
【0045】
なお、各論理演算器7の出力がハイレベルからローレベルに遷移するタイミングは、ビット線のディスチャージ量に応じて変化する。例えば、ビット線のディスチャージ量が大きくて、ビット線の電位が非常に低い場合には、参照2値信号SAE6が入力される論理演算器7から参照2値信号SAE0が入力される論理演算器7まで、順にタイミングをずらして、出力がハイレベルからローレベルに遷移する。これに対して、ビット線のディスチャージ量が小さくて、ビット線の電位が少ししか低下していない場合には、参照2値信号SAE0が入力される論理演算器7の出力がハイレベルからローレベルに遷移するタイミングで、他のすべての論理演算器7がほぼ同時にハイレベルからローレベルに遷移する。このように、複数の論理演算器7の出力は、必ずしもタイミングをずらしてハイレベルからローレベルに遷移するとは限らない。ビット線のディスチャージ量に応じた電位により、2以上の論理演算器7の出力がほぼ同時にハイレベルからローレベルに変化する場合がある。
【0046】
エンコーダ9は、複数の保持器8で保持された複数の信号に基づいて、所定のタイミングで、ローレベル(第1論理)の信号を出力する論理演算器7の数と、ハイレベル(第2論理)の信号を出力する論理演算器7の数とにより、ビット線のディスチャージ量に応じたデジタル信号を生成する。あるいは、エンコーダ9は、複数の保持器8で保持された複数の信号に基づいて、複数の論理演算器7の出力がハイレベルからローレベルに変わるタイミングにより、ビット線のディスチャージ量に応じたデジタル信号を生成する。
【0047】
上述したように、参照信号生成器5は、複数の積和演算処理部4で共有することができる。
図8は参照信号生成器5の内部構成の一例を示すブロック図である。
図8の参照信号生成器5は、メモリセルアレイ3から出力される各ビット線の想定されうるすべてのディスチャージ量に対応する複数の参照2値信号を生成する。例えば、
図8は、メモリセルアレイ3内のビット線対BL<+>、BL<->で1~7回ディスチャージされる場合に対応した参照信号生成器5の内部構成の一例を示している。
【0048】
図8の参照信号生成器5は、4組の参照ビット線対RBL<+>、RBL<->を有し、各参照ビット線対RBL<+>、RBL<->には8つのメモリセルMCが接続されている。また、合計4組の参照ビット線対RBL<+>、RBL<->のうち、7本の参照ビット線RBL<+>、RBL<->のそれぞれの一端には、参照デジタル信号生成器17が接続されている。これら8つの参照デジタル信号生成器17から参照2値信号SAE0~SAE6が出力される。各参照ビット線対RBL<+>、RBL<->には、複数の参照メモリセル回路16が接続されている。8本の参照ビット線のうち7本の参照ビット線は、1~7回ディスチャージされた電位にそれぞれ設定される。
【0049】
参照デジタル信号生成器17は、
図5のデジタル信号生成器6と同様に、例えばインバータを含んで構成することができる。これにより、参照ビット線のディスチャージ回数に応じたタイミングでローレベルからハイレベルに遷移する参照2値信号SAE0~SAE6を生成することができる。参照2値信号SAE0~SAE6は、第1デジタル信号生成器に対応する論理演算器7及び第2デジタル信号生成器に対応する論理演算器7それぞれに対して出力することが可能である。
【0050】
図9は一比較例によるアナログデジタル変換器20の概略構成を示すブロック図である。
図9のアナログデジタル変換器20は、複数のビット線対BL<+>、BL<->と、各ビット線対BL<+>、BL<->に接続された複数のメモリセルMCと、複数のビット線のいずれか1本を選択するビット線選択器21と、選択されたビット線の電位をデジタル信号に変換するAD変換部(ADC)22とを有する。
【0051】
図10は
図9のAD変換部22の具体的な構成を示す回路図である。
図10のAD変換部22は、複数の基準電圧を生成する基準電圧発生器23と、複数のコンパレータ24と、エンコーダ25とを有する。
【0052】
基準電圧発生器23は、電源電圧ノードと接地電圧ノードの間に直列に接続された複数の抵抗Rを有し、複数の抵抗Rの間から、抵抗分圧された複数の基準電圧を出力する。複数のコンパレータ24は、ビット線選択器21で選択されたビット線の電位と、対応する基準電圧とを比較する。
【0053】
図10のAD変換部22は、ビット線選択器21で選択されたビット線の電位を複数の基準電圧と比較するため、コンパレータ24の個数を増やすほど、ビット線の電位を精度よく検出できるが、コンパレータ24を多数設けなければならず、また、ビット線選択器21も必要であるため、回路面積が大きくなる。さらに、コンパレータ24には常に電流が流れるため、消費電力が多くなる。
【0054】
ビット線の電位は、
図6に示したように、ディスチャージ量に応じた速度で変化する。このため、
図11に示すように、コンパレータ24で比較を行う最適なタイミングをt1とし、t1より遅れたタイミングt2でコンパレータ24で比較を行うとすると、ビット線のディスチャージ量が異なるにもかかわらず、ビット線の電位が同じになるおそれがある。その逆に、コンパレータ24で比較を行うタイミングが早すぎると(
図11のt0)、ビット線のディスチャージ量が異なっていても、ビット線の電位の違いがわずかになり、また、ビット線の電位と基準電圧との電圧差もわずかになるため、コンパレータ24での比較を誤るおそれがある。このため、
図10のAD変換部22では、正しいAD変換結果が得られる保証がない。
【0055】
これに対して、本実施形態では、ビット線選択器21を設けることなく、各ビット線をインバータ12の入力ノードに接続して、インバータ12の出力論理が遷移するタイミングの違いにより、ビット線のディスチャージ量を特定するため、ビット線選択器21や複数のコンパレータ24を設ける必要がなくなり、小さい回路面積で、かつ低消費電力で、ビット線の電位をデジタル信号に変換できる。しかも、本実施形態によれば、ビット線の電位を検出するタイミングを気に掛ける必要もなく、
図9及び
図10に示す一比較例に比べて、タイミング制御が容易である。
【0056】
図5では、デジタル信号生成器6をインバータ12で構成する例を示したが、インバータ12に他の回路部品を付加した構成が種々考えられる。
【0057】
図12は
図1のデジタル信号生成器6の具体的構成の第1例を示す回路図である。
図12のデジタル信号生成器6は、インバータ12と、PMOSトランジスタ31と、NANDゲート32とを有する。PMOSトランジスタ31は、ビット線BLt/BLbをプルアップするプルアップ回路を構成する。PMOSトランジスタ31のソースは電源電圧ノードに接続され、ドレインはビット線BLt/BLbに接続されている。PMOSトランジスタ31のゲートがローレベルのときにPMOSトランジスタ31はオンし、ビット線BLt/BLbを電源電圧ノードにプルアップする。
【0058】
NANDゲート32は、プルアップ回路であるPMOSトランジスタ31を制御するプルアップ制御回路を構成している。NANDゲート32は、インバータ12の出力信号とイネーブル信号enableとがともにハイレベルのときのみ、ローレベルになる。これにより、PMOSトランジスタ31はオンし、ビット線BLt/BLbは電源電圧ノードにプルアップされる。インバータ12の出力信号とイネーブル信号enableの少なくとも一方がローレベルの場合には、NANDゲート32の出力信号はハイレベルになる。これにより、PMOSトランジスタ31はオフし、ビット線BLt/BLbのプルアップが解除される。
【0059】
図13は
図12のデジタル信号生成器6の入出力信号のタイミング図である。ビット線BLt/BLbは初期状態ではローレベルであり、インバータ12の出力はハイレベルである。時刻t1でイネーブル信号enableがハイレベルになると、NANDゲート32の出力がローレベルになり、PMOSトランジスタ31がオンする。これにより、ビット線BLt/BLbの電位はハイレベルにプルアップされる。これにより、ビット線BLt/BLbの電位は上昇し、時刻t2で、インバータ12の出力は、ローレベルに遷移する。
【0060】
インバータ12の出力がローレベルになると、NANDゲート32の出力はハイレベルになり、PMOSトランジスタ31がオフする。よって、ビット線BLt/BLbのプルアップは解除される。また、時刻t3でイネーブル信号enableがローレベルになった場合も、NANDゲート32の出力がハイレベルになって、PMOSトランジスタ31がオフすることから、ビット線BLt/BLbのプルアップは解除される。
【0061】
時刻t4でワード線がハイレベルになり、メモリセルMCと演算制御回路11は積和演算を開始する。積和演算の結果に従ってビット線BLt/BLbはディスチャージされる。ビット線BLt/BLbは、ディスチャージされるたびに電位が下がる。時刻t5でビット線BLt/BLbの電位がインバータ12の閾値電圧以下になると、インバータ12の出力はハイレベルに遷移する(時刻t5)。
【0062】
上述したように、ビット線BLt/BLbの電位は、ディスチャージ回数が増えるほど下がる。このため、ディスチャージ回数を正しく検出するには、インバータ12の閾値をできるだけ低く設定するのが望ましい。
【0063】
図14は
図1のデジタル信号生成器6の具体的構成の第2例を示す回路図である。
図14のデジタル信号生成器6は、
図12のインバータ12よりも閾値電圧の低いインバータ12を有する。また、
図14のデジタル信号生成器6は、NANDゲート32の出力ノードに接続される遅延回路33を有する。NANDゲート32の出力信号は、遅延回路33で遅延された後に、PMOSトランジスタ31のゲートに入力される。これにより、PMOSトランジスタ31がビット線のプルアップを解除するタイミングを遅らせることができる。
【0064】
図15は
図14のデジタル信号生成器6の入出力信号のタイミング図である。時刻t1でイネーブル信号enableがハイレベルになると、NANDゲート32の出力はローレベルになるが、遅延回路33があるために、PMOSトランジスタ31がオンするタイミングは
図13よりも少し遅れる。
【0065】
その後、時刻t3でワード線がハイになると、積和演算が開始され、ビット線BLt/BLbの電位は、ディスチャージ量に応じた電位になる。また、時刻t3付近でイネーブル信号enableがローレベルに遷移するため、NANDゲート32の出力はハイレベルになる。遅延回路33があるために、時刻t3から少し遅れて、PMOSトランジスタ31はオフし、ビット線BLt/BLbのプルアップが解除される。遅延回路33にてプルアップを再開するタイミングを遅らせることで、デジタル信号生成器6の出力論理を安定化させることができる。
【0066】
インバータ12の閾値電圧は、
図13より低く設定されているため、ビット線BLt/BLbの電位が閾値電圧以下になるまでの時間が長くなる。ただし、ビット線BLt/BLbのディスチャージ量が大きいほど、ビット線BLt/BLbの電位は低くなるため、ビット線BLt/BLbの電位が閾値電圧以下になるタイミングは、ビット線BLt/BLbのディスチャージ量に応じて変化する。
【0067】
図15には、ディスチャージ量が大きいビット線BLt/BLbの電位波形と、ディスチャージ量が小さいビット線BLt/BLbの電位波形とが図示されている。ディスチャージ量が大きいビット線BLt/BLbについては、時刻t4でインバータ12の閾値電圧以下になり、時刻t5のときにインバータ12の出力はハイレベルに遷移する。また、ディスチャージ量が小さいビット線BLt/BLbについては、時刻t6でインバータ12の閾値電圧以下になり、時刻t7のときにインバータ12の出力はハイレベルになる。
【0068】
図16は
図1のデジタル信号生成器6の具体的構成の第3例を示す回路図である。
図16のデジタル信号生成器6は、インバータ12と、NORゲート34と、NANDゲート35と、PMOSトランジスタ36と、NMOSトランジスタ37とを有する。
【0069】
NORゲート34は、インバータ12の出力信号とプルアップ信号/pullupの少なくとも一方がハイレベルのときにローレベルになり、それ以外ではハイレベルになる。NORゲート34の出力がローレベルになると、PMOSトランジスタ36がオンし、NANDゲート35に電源電圧が供給される。NANDゲート35は、PMOSトランジスタ36を介して電源電圧が供給されると、否定論理積演算を行う。より詳細には、NANDゲート35の出力信号は、インバータ12の出力信号とイネーブル信号enableがともにハイレベルのときにローレベルになり、それ以外ではハイレベルになる。NMOSトランジスタ37は、write信号がハイレベルのときにオンする。NMOSトランジスタ37がオンすると、書込データがNMOSトランジスタ37を介してビット線BLt/BLbに供給される。インバータ12の出力信号は、積和演算結果を出力する読出し信号である。
【0070】
図17は
図16のデジタル信号生成器6の入出力信号のタイミング図である。プルアップ信号/pullupがハイレベルの期間内(時刻t4~t5以外)はNORゲート34の出力がローレベルであり、PMOSトランジスタ36がオンして、NANDゲート35に電源電圧が供給される。時刻t1~t2の期間内はイネーブル信号enableがローレベルであり、NANDゲート35の出力信号はハイレベルになり、ビット線BLt/BLbはプルアップされる。
【0071】
時刻t2付近でワード線WLがハイレベルになり、積和演算結果に応じて、ビット線BLt/BLbはディスチャージされる。時刻t3でビット線BLt/BLbの電位がインバータ12の閾値電圧以下になると、インバータ12の出力信号はハイレベルに遷移し、NANDゲート35の出力がローレベルに遷移し、ビット線BLt/BLbの電位が低下する。
【0072】
一方、ビット線BLt/BLbがディスチャージされないときは、時刻t4までビット線BLt/BLbのプルアップが継続される。時刻t4になったときにビット線BLt/BLbの電位がインバータ12の閾値電圧以上であれば、NORゲート34の出力がハイレベルに遷移し、PMOSトランジスタ36はオフし、NANDゲート35の出力は不定になる。
【0073】
時刻t5付近でwrite信号がハイレベルになると、NMOSトランジスタ37がオンし、書込データが外部からNMOSトランジスタ37を介してビット線BLt/BLbに供給される。
【0074】
図18は
図17とは一部の信号のタイミングが異なるタイミング図である。時刻t1~t2はイネーブル信号enableがローレベルであるため、NANDゲート35の出力はハイレベルになり、ビット線BLt/BLbはプルアップされる。時刻t3でプルアップ信号/pullupがローレベルに遷移すると、NORゲート34の出力はハイレベルになり、PMOSトランジスタ36がオフして、NANDゲート35の出力は不定になる。
【0075】
時刻t3になると、ビット線BLt/BLbの電位は、ビット線BLt/BLbのディスチャージ量に応じて低下する。ビット線BLt/BLbが全くディスチャージされていない場合は、ビット線BLt/BLbの電位はわずかに上昇する。
【0076】
また、時刻t2付近で、write信号がハイレベルに遷移すると、NMOSトランジスタ37がオンして、書込データが外部からNMOSトランジスタ37を介してビット線BLt/BLbに供給される。
【0077】
上述したように、本実施形態によるメモリセルアレイ3内のメモリセルMCは、SRAMやDRAM等の揮発メモリセルでもよいし、フラッシュメモリやMRAM等の不揮発メモリセルでもよい。
図19はNANDフラッシュメモリセルMCを用いて本実施形態による半導体集積回路1を構成する場合の概念図である。
図19は、複数のNANDフラッシュメモリセルトランジスタが縦続接続された1つのメモリストリングを示している。
図19のメモリストリングは、ビット線BLt/BLbと接地ノードとの間に縦続接続される選択トランジスタ41、複数のNANDフラッシュメモリセルトランジスタ(以下、メモリセルトランジスタと呼ぶ)42、及び選択トランジスタ43を有する。各メモリセルトランジスタ42で構成される各NANDフラッシュメモリセルMCは、例えば、積和演算のためのそれぞれ異なる重み係数を記憶する。複数のメモリセルトランジスタ42のゲートには、対応するワード線が接続されている。選択トランジスタ41のゲートには選択ゲート線SDSが接続され、選択トランジスタ43のゲートには選択ゲート線SGSが接続されている。選択トランジスタ41,43をオンさせた状態で、メモリセルトランジスタ42の各ワード線をハイレベルにすることで、各メモリセルトランジスタ42がオンして、各NANDフラッシュメモリセルMCに記憶されているデータに応じて、ビット線BLt/BLbがディスチャージされる。
【0078】
このように、本実施形態では、ビット線のディスチャージ量に応じて、ビット線の電位がインバータ12の閾値電圧以下になるタイミングが異なることに着目して、インバータ12の出力が遷移するタイミングに基づいてビット線のディスチャージ量を特定する。これにより、それぞれ異なる電圧レベルの基準電圧とビット線の電位とを比較する複数のコンパレータ24を設ける必要がなくなる。よって、本実施形態によれば、小さい回路面積で、かつ低消費電力で、ビット線のディスチャージ量をデジタル信号に変換できる。また、本実施形態によれば、ビット線の電位をモニタするタイミングを気に掛ける必要がなくなり、タイミング制御が容易になる。
【0079】
本開示の態様は、上述した個々の実施形態に限定されるものではなく、当業者が想到しうる種々の変形も含むものであり、本開示の効果も上述した内容に限定されない。すなわち、特許請求の範囲に規定された内容およびその均等物から導き出される本開示の概念的な思想と趣旨を逸脱しない範囲で種々の追加、変更および部分的削除が可能である。
【符号の説明】
【0080】
1 半導体集積回路、2 アナログデジタル変換器、3 メモリセルアレイ、4 積和演算処理部、5 参照信号生成器、6 デジタル信号生成器、7 論理演算器、8 保持器、9 エンコーダ、10 メモリセル回路、11 演算制御回路、12 インバータ(論理反転器)、12 インバータ、13、14、15 NANDゲート、16 参照メモリセル回路、17 参照デジタル信号生成器、20 アナログデジタル変換器、21 ビット線選択器、22 AD変換部、23 基準電圧発生器、24 コンパレータ、25 エンコーダ、31 PMOSトランジスタ、32 NANDゲート、33 遅延回路、34 NORゲート、35 NANDゲート、36 PMOSトランジスタ、37 NMOSトランジスタ、41 選択トランジスタ、42 メモリセルトランジスタ、42 メモリセルトランジスタ、43 選択トランジスタ