(57)【要約】【課題】過去の信号レベルが現在の信号レベルと干渉する信号間干渉による信号レベルの劣化を低減することに適した入力回路及び半導体記憶装置を提供する。【解決手段】入力回路は、外部から入力された信号をそれぞれ受けるように、複数のＰＭＯＳトランジスタ及び複数のＮＭＯＳトランジスタを含む複数のＣＭＯＳインバータが並列接続された入力バッファと、前記複数のＰＭＯＳトランジスタから１以上のＰＭＯＳトランジスタを選択して動作可能な状態に制御するとともに、前記複数のＮＭＯＳトランジスタから１以上のＮＭＯＳトランジスタを選択して動作可能な状態に制御する制御部と、前記入力バッファから転送された信号のレベルをクロックに同期して保持し、保持している信号のレベルを出力する保持部と、前記保持部から出力された信号のレベルを前記制御部へフィードバックするフィードバック部とを備えている。【選択図】図３
2012029256.tif 000002
【特許請求の範囲】
【請求項１】
外部から入力された信号をそれぞれ受けるように、複数のＰＭＯＳトランジスタ及び複数のＮＭＯＳトランジスタを含む複数のＣＭＯＳインバータが並列接続された入力バッファと、
前記複数のＰＭＯＳトランジスタから１以上のＰＭＯＳトランジスタを選択して動作可能な状態に制御するとともに、前記複数のＮＭＯＳトランジスタから１以上のＮＭＯＳトランジスタを選択して動作可能な状態に制御する制御部と、
前記入力バッファから転送された信号のレベルをクロックに同期して保持し、保持している信号のレベルを出力する保持部と、
前記保持部から出力された信号のレベルを前記制御部へフィードバックするフィードバック部と、
を備えたことを特徴とする入力回路。
【請求項２】
前記制御部は、前記入力バッファの回路閾値を前記フィードバック部によりフィードバックされた信号のレベルに近づく値へ変更するように、前記１以上のＰＭＯＳトランジスタの利得係数の合計を前記１以上のＮＭＯＳトランジスタの利得係数の合計で割ることで求められる比率を制御する
ことを特徴とする請求項１に記載の入力回路。
【請求項３】
前記制御部は、前記フィードバック部によりフィードバックされた信号のレベルがＨレベルである場合、前記入力バッファの回路閾値が基準値より高くなるように前記比率を上げ、前記フィードバック部によりフィードバックされた信号のレベルがＬレベルである場合、前記入力バッファの回路閾値が前記基準値より低くなるように前記比率を下げる
ことを特徴とする請求項２に記載の入力回路。
【請求項４】
前記制御部は、前記フィードバック部によりフィードバックされた信号のレベルがＨレベルである場合、前記１以上のＰＭＯＳトランジスタのディメンジョンの合計を増やす動作と前記１以上のＮＭＯＳトランジスタのディメンジョンの合計を減らす動作との少なくとも一方を行い、前記フィードバック部によりフィードバックされた信号のレベルがＬレベルである場合、前記１以上のＰＭＯＳトランジスタのディメンジョンの合計を減らす動作と前記１以上のＮＭＯＳトランジスタのディメンジョンの合計を増やす動作との少なくとも一方を行う
ことを特徴とする請求項３に記載の入力回路。
【請求項５】
請求項１から４のいずれか１項に記載の入力回路を含むＮＡＮＤメモリと、
前記入力回路の初期設定時に、テストパターンを前記入力回路へ供給するコントローラと、
を備え、
前記入力回路は、前記コントローラにより供給されたテストパターンを用いて、前記入力回路における入力バッファの回路閾値が基準値に一致するように調整する
ことを特徴とする半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施の形態は、入力回路及び半導体記憶装置に関する。
【背景技術】
【０００２】
ＮＡＮＤメモリやそのコントローラの入力回路には、並列接続された複数のＣＭＯＳインバータが入力バッファとして用いられることがある。入力バッファの要求動作速度の高速化に伴い、出力回路を構成するＰＭＯＳトランジスタのドレインとＮＭＯＳトランジスタのドレインとが接続された出力ノードにおけるジャンクション容量等の寄生容量の影響が無視できないレベルになりつつある。すなわち、入力バッファにおいて、信号を伝達する際に、ジャンクション容量の充電／放電に時間がかかるために、過去の信号レベルが現在の信号レベルと干渉する信号間干渉（Ｉｎｔｅｒ  Ｓｙｍｂｏｌ  Ｉｎｔｅｒｆｅｒｅｎｃｅ）が発生し、この信号間干渉により信号レベルが劣化する傾向にある。通常、ＮＡＮＤメモリはＭＣＰパッケージ中に複数チップ積層されて使用されるため、この影響はコントローラからＮＡＮＤチップ側にデータを転送する際に顕著になる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−３３６０１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の実施の形態は、例えば、過去の信号レベルが現在の信号レベルと干渉する信号間干渉による信号レベルの劣化を低減することに適した入力回路及び半導体記憶装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
実施の形態によれば、外部から入力された信号をそれぞれ受けるように、複数のＰＭＯＳトランジスタ及び複数のＮＭＯＳトランジスタを含む複数のＣＭＯＳインバータが並列接続された入力バッファと、前記複数のＰＭＯＳトランジスタから１以上のＰＭＯＳトランジスタを選択して動作可能な状態に制御するとともに、前記複数のＮＭＯＳトランジスタから１以上のＮＭＯＳトランジスタを選択して動作可能な状態に制御する制御部と、前記入力バッファから転送された信号のレベルをクロックに同期して保持し、保持している信号のレベルを出力する保持部と、前記保持部から出力された信号のレベルを前記制御部へフィードバックするフィードバック部とを備えたことを特徴とする入力回路が提供される。
【図面の簡単な説明】
【０００６】
【図１】実施の形態にかかる入力回路が適用された半導体記憶装置の構成を示す図。
【図２】実施の形態にかかる入力回路が適用された半導体記憶装置の構成を示す図。
【図３】実施の形態にかかる入力回路の構成を示す図。
【図４】実施の形態にかかる入力回路の構成を示す図。
【図５】実施の形態にかかる入力回路が適用された半導体記憶装置の動作を示すフローチャート。
【図６】実施の形態にかかる入力回路が適用された半導体記憶装置の動作を示すフローチャート。
【図７】実施の形態にかかる入力回路が適用された半導体記憶装置の動作を示すフローチャート。
【図８】実施の形態にかかる入力回路の動作を説明するための図。
【図９】実施の形態にかかる入力回路の動作を説明するための図。
【図１０】実施の形態にかかる入力回路の動作を説明するための図。
【図１１】実施の形態の変形例にかかる入力回路の構成を示す図。
【図１２】実施の形態の他の変形例における半導体記憶装置の動作を示すフローチャート。
【図１３】実施の形態の他の変形例における半導体記憶装置の動作を示すフローチャート。
【図１４】実施の形態の他の変形例における半導体記憶装置の動作を示すフローチャート。
【図１５】比較例にかかる入力回路の構成を示す図。
【図１６】比較例にかかる入力回路の動作を説明するための図。
【図１７】比較例にかかる入力回路の動作を説明するための図。
【発明を実施するための形態】
【０００７】
以下に添付図面を参照して、本発明の実施の形態にかかる入力回路を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。
【０００８】
（実施の形態）
実施の形態にかかる入力回路が適用された半導体記憶装置１００について、図１及び図２を用いて説明する。図１（ａ）は、実施の形態に係る入力回路が適用された半導体記憶装置の概略構成を示すブロック図であり、図１（ｂ）は、半導体記憶装置におけるＮＡＮＤメモリ内の構成を示す図である。図２は、半導体記憶装置におけるＮＡＮＤメモリの実装形態を示す斜視図である。
【０００９】
半導体記憶装置１００は、図１（ａ）に示すように、コントローラ１と、ｎ（ｎは２以上の整数）個のＮＡＮＤメモリ３−１〜３−ｎとを備える。半導体記憶装置１００は、例えば、メモリカードやＳＳＤなどのストレージデバイスとして用いられる。
【００１０】
コントローラ１は、ＮＡＮＤメモリ３−１〜３−ｎのドライブ制御を行う。なお、ＮＡＮＤメモリ３−１〜３−ｎのドライブ制御としては、例えば、ＮＡＮＤメモリ３−１〜３−ｎの読み書き制御、ブロック選択、誤り訂正、ウェアレベリングなどを挙げることができる。
【００１１】
コントローラ１には、半導体チップ（図示せず）が設けられ、その半導体チップには、パッド電極が形成されている。そして、その半導体チップには、入力バッファを含む入力回路ＲＸ０、出力バッファを含む出力回路ＴＸ０、および内部回路ＩＣ０が搭載されている。
【００１２】
入力回路ＲＸ０は、ＮＡＮＤメモリ３−１〜３−ｎから送られた読み出しデータ（入力された信号）を入力バッファでバッファリングして内部回路ＩＣ０などに受け渡す。出力回路ＴＸ０は、内部回路ＩＣ０から供給された書き込みデータやアドレスなどの制御信号を出力バッファでバッファリングしてＮＡＮＤメモリ３−１〜３−ｎへ受け渡す。
【００１３】
ＮＡＮＤメモリ３−１〜３−ｎはチャネル（バス）２を介して互いに並列にコントローラ１に接続されている。例えば、ＮＡＮＤメモリ３−１には、ｍ（ｍは２以上の整数）個の半導体チップＣＰ１〜ＣＰｍが設けられ、半導体チップＣＰ１〜ＣＰｍには、パッド電極ＰＤ１〜ＰＤｍがそれぞれ形成されている。そして、例えば、半導体チップＣＰ１には、図１（ｂ）に示すように、入力バッファを含む入力回路ＲＸ１、出力バッファを含む出力回路ＴＸ１、およびＮＡＮＤフラッシュメモリ（内部回路）ＩＣ１が搭載されている。なお、ＮＡＮＤフラッシュメモリＩＣ１には、例えば、ユニットセルアレイ、デコーダ、センスアンプ、チャージポンプ回路およびページバッファなどを設けることができる。
【００１４】
入力回路ＲＸ１は、コントローラ１から送られた書き込みデータ（入力された信号）やアドレスなどの制御信号（入力された信号）を入力バッファでバッファリングしてＮＡＮＤフラッシュメモリＩＣ１などに受け渡す。出力回路ＴＸ１は、ＮＡＮＤフラッシュメモリＩＣ１などから読み出された読み出しデータを出力バッファでバッファリングしてコントローラ１に受け渡す。半導体チップＣＰ２〜ＣＰｍのそれぞれにも、入力回路ＲＸ１、出力回路ＴＸ１、及びＮＡＮＤフラッシュメモリＩＣ１が搭載されている。図１（ａ）には、各半導体チップに搭載された構成をＮＡＮＤメモリ３−１内の構成として示している。
【００１５】
そして、ｍ個の半導体チップＣＰ１〜ＣＰｍは、１個の半導体パッケージＰＫ１上に実装され、この半導体パッケージＰＫ１の外部端子ＴＭは、ｍ個の半導体チップＣＰ１〜ＣＰｍのパッド電極ＰＤ１〜ＰＤｍにて共有されている。
【００１６】
なお、半導体チップＣＰ１〜ＣＰｍを半導体パッケージＰＫ１上に実装する方法としては、半導体チップＣＰ１〜ＣＰｍを積層させる方法でもよいし、半導体チップＣＰ１〜ＣＰｍを同一平面上に配列する方法でもよい。また、半導体チップＣＰ１〜ＣＰｍは、フェースダウン実装でもよいし、フェースアップ実装でもよい。また、ｍ個のパッド電極ＰＤ１〜ＰＤｍにて１個の外部端子ＴＭを共有させる方法としては、ｍ個のパッド電極ＰＤ１〜ＰＤｍと１個の外部端子ＴＭとをボンディングワイヤＢＷにて接続することができる。あるいは、半導体チップＣＰ１〜ＣＰｍをフリップ実装し、パッド電極ＰＤ１〜ＰＤｍに形成されたバンプ電極を介してパッド電極ＰＤ１〜ＰＤｍと外部端子ＴＭとを互いに接続するようにしてもよい。あるいは、半導体チップＣＰ１〜ＣＰｍに貫通電極を形成し、この貫通電極を介してパッド電極ＰＤ１〜ＰＤｍと外部端子ＴＭとを互いに接続するようにしてもよい。
【００１７】
例えば、ＮＡＮＤメモリ３−１では、半導体チップＣＰ１〜ＣＰ４が、図２に示すような形態で実装される。半導体チップＣＰ１〜ＣＰ４には、パッド電極ＰＤ１〜ＰＤ４がそれぞれ形成されている。なお、パッド電極ＰＤ１〜ＰＤ４は、例えば、アドレス端子、リード／ライト端子、チップセレクト端子またはデータ端子として用いることができる。また、半導体パッケージＰＫ１には、外部端子ＴＭ１〜ＴＭ１７が形成されている。そして、４個分の半導体チップＣＰ１〜ＣＰ４を積層させて半導体パッケージＰＫ１上に実装する場合、パッド電極ＰＤ１〜ＰＤ４が露出するように半導体チップＣＰ１〜ＣＰ４をずらして積層させることができる。そして、ボンディングワイヤＢＷを介して、例えば、パッド電極ＰＤ１〜ＰＤ４を外部端子ＴＭ１に共通に接続することで、４個分の半導体チップＣＰ１〜ＣＰ４のパッド電極ＰＤ１〜ＰＤ４にて１個の外部端子ＴＭ１を共有させることができる。
【００１８】
ＮＡＮＤメモリ３−１と同様に、図１（ａ）に示すように、ＮＡＮＤメモリ３−２〜ＮＡＮＤメモリ３−ｎのそれぞれでは、各半導体チップに、入力回路ＲＸ２〜ＲＸｎ、出力回路ＴＸ２〜ＴＸｎ、及びＮＡＮＤフラッシュメモリ（内部回路）ＩＣ２〜ＩＣｎが搭載されている。
【００１９】
このように、実施の形態にかかる入力回路は、コントローラ１における内部回路ＩＣ０に対する入力回路ＲＸ０として用いられたり、ＮＡＮＤメモリ３−１〜３−ｎにおけるＮＡＮＤフラッシュメモリ（内部回路）ＩＣ１〜ＩＣｎに対する入力回路ＲＸ１〜ＲＸｎとして用いられたりする。以下では、入力回路ＲＸ０や入力回路ＲＸ１〜ＲＸｎのそれぞれを代表して入力回路ＲＸとして説明し、内部回路ＩＣ０やＮＡＮＤフラッシュメモリ（内部回路）ＩＣ１〜ＩＣｎのそれぞれを代表して内部回路ＩＣとして説明することにする。
【００２０】
次に、実施の形態にかかる入力回路ＲＸの構成について図３を用いて説明する。図３は、入力回路ＲＸの構成を示す図である。
【００２１】
入力回路ＲＸは、入力端子ＴＭｉｎ、入力バッファ１０、保持部３０、出力端子ＴＭｏｕｔ、フィードバック部４０、及び制御部２０を備える。
【００２２】
入力端子ＴＭｉｎには、外部から信号が入力される。例えば、入力回路ＲＸがコントローラ１における入力回路ＲＸ０である場合、入力端子ＴＭｉｎには、ＮＡＮＤメモリ３−１〜３−ｎから信号が入力される。あるいは、例えば、入力回路ＲＸがＮＡＮＤメモリ３−１〜３−ｎにおける入力回路ＲＸ１〜ＲＸｎである場合、入力端子ＴＭｉｎには、コントローラ１から信号が入力される。
【００２３】
入力バッファ１０は、入力端子ＴＭｉｎを介して、外部から入力された信号を受ける。入力バッファ１０は、受けた信号のバッファリング動作を行い保持部３０へ転送する。入力バッファ１０では、複数のＣＭＯＳインバータＩＮＶ１〜ＩＮＶ３が並列接続されている。すなわち、等価的には、各ＣＭＯＳインバータＩＮＶ１〜ＩＮＶ３の入力ノードが入力端子ＴＭｉｎに接続され、各ＣＭＯＳインバータＩＮＶ１〜ＩＮＶ３の出力ノードＮ１〜Ｎ３が保持部３０に接続されている。これにより、複数のＣＭＯＳインバータＩＮＶ１〜ＩＮＶ３は、外部から入力された信号をそれぞれ受ける。
【００２４】
複数のＣＭＯＳインバータＩＮＶ１〜ＩＮＶ３は、複数のＰＭＯＳトランジスタＰＭ１〜ＰＭ３と複数のＮＭＯＳトランジスタＮＭ１〜ＮＭ３とを含む。すなわち、各ＣＭＯＳインバータＩＮＶ１〜ＩＮＶ３では、ＰＭＯＳトランジスタＰＭ１〜ＰＭ３とＮＭＯＳトランジスタＮＭ１〜ＮＭ３とがインバータ接続されている。各ＰＭＯＳトランジスタＰＭ１〜ＰＭ３は、例えば、ゲート電極が入力端子ＴＭｉｎに接続され、ソース電極が制御部２０を介して電源電圧Ｖｃｃｑに接続され、ドレイン電極が出力ノードＮ１〜Ｎ３に接続されている。各ＮＭＯＳトランジスタＮＭ１〜ＮＭ３は、例えば、ゲート電極が入力端子ＴＭｉｎに接続され、ソース電極が制御部２０を介して基準電圧（例えば、グランド電圧）Ｖｓｓに接続され、ドレイン電極が出力ノードＮ１〜Ｎ３に接続されている。
【００２５】
制御部２０は、複数のＰＭＯＳトランジスタＰＭ１〜ＰＭ３から１以上のＰＭＯＳトランジスタを選択して動作可能な状態に制御するとともに、複数のＮＭＯＳトランジスタＮＭ１〜ＮＭ３から１以上のＮＭＯＳトランジスタを選択して動作可能な状態に制御する。制御部２０は、初期設定時に、入力バッファ１０の回路閾値が基準値に一致するように調整する。基準値は、例えば、基準電圧Ｖｓｓ（例えば、０Ｖ）と電源電圧Ｖｃｃｑとの中間の値である（Ｖｃｃｑ／２）とする。なお、初期設定後における制御部２０については後述する。
【００２６】
具体的には、制御部２０は、制御部２０ｂ及び制御部２０ａを有する。
【００２７】
制御部２０ｂは、デコーダ２１ｂ及び複数のスイッチＳＷ１ｂ、ＳＷ２ｂ、ＳＷ３ｂを有する。デコーダ２１ｂは、所定の制御信号を受けてデコードすることにより、各スイッチＳＷ１ｂ〜ＳＷ３ｂをオン／オフさせるための制御信号を生成して各スイッチＳＷ１ｂ〜ＳＷ３ｂの制御端子（ゲート電極）へ供給する。
【００２８】
各スイッチＳＷ１ｂ〜ＳＷ３ｂは、例えば、対応するＰＭＯＳトランジスタＰＭ１〜ＰＭ３のソースと電源電圧Ｖｃｃｑとの間に配されている。各スイッチＳＷ１ｂ〜ＳＷ３ｂは、オンさせる制御信号が制御端子に供給された際にオンすることにより、対応するＰＭＯＳトランジスタＰＭ１〜ＰＭ３のソースと電源電圧Ｖｃｃｑとを接続して、対応するＰＭＯＳトランジスタＰＭ１〜ＰＭ３を動作可能な状態に制御する。各スイッチＳＷ１ｂ〜ＳＷ３ｂは、オフさせる制御信号が制御端子に供給された際にオフすることにより、対応するＰＭＯＳトランジスタＰＭ１〜ＰＭ３のソースと基準電圧Ｖｓｓとを電気的に遮断して、対応するＰＭＯＳトランジスタＰＭ１〜ＰＭ３を動作不能な状態に制御する。
【００２９】
同様に、制御部２０ａは、デコーダ２１ａ及び複数のスイッチＳＷ１ａ、ＳＷ２ａ、ＳＷ３ａを有する。デコーダ２１ａは、所定の制御信号を受けてデコードすることにより、各スイッチＳＷ１ａ〜ＳＷ３ａをオン／オフさせるための制御信号を生成して各スイッチＳＷ１ａ〜ＳＷ３ａの制御端子（ゲート電極）へ供給する。
【００３０】
各スイッチＳＷ１ａ〜ＳＷ３ａは、例えば、対応するＮＭＯＳトランジスタＮＭ１〜ＮＭ３のソースと基準電圧Ｖｓｓとの間に配されている。各スイッチＳＷ１ａ〜ＳＷ３ａは、オンさせる制御信号が制御端子に供給された際にオンすることにより、対応するＮＭＯＳトランジスタＮＭ１〜ＮＭ３のソースと基準電圧Ｖｓｓとを接続して、対応するＮＭＯＳトランジスタＮＭ１〜ＮＭ３を動作可能な状態に制御する。各スイッチＳＷ１ａ〜ＳＷ３ａは、オフさせる制御信号が制御端子に供給された際にオフすることにより、対応するＮＭＯＳトランジスタＮＭ１〜ＮＭ３のソースと基準電圧Ｖｓｓとを電気的に遮断して、対応するＮＭＯＳトランジスタＮＭ１〜ＮＭ３を動作不能な状態に制御する。
【００３１】
例えば、複数のＰＭＯＳトランジスタＰＭ１〜ＰＭ３の間でディメンジョン（＝Ｗ／Ｌ、Ｗ：チャネル幅、Ｌ：チャネル長）が均等な値であり特性（例えば、キャリア移動度、ゲート容量）も均等であるとともに、複数のＮＭＯＳトランジスタＮＭ１〜ＮＭ３の間でディメンジョンが均等であり特性も均等である場合、制御部２０は、図９（ａ）に示すように制御することができる。すなわち、制御部２０は、スイッチＳＷ２ｂ、ＳＷ２ａをオンし、スイッチＳＷ１ｂ、ＳＷ３ｂ、ＳＷ１ａ、ＳＷ３ａをオフすることにより、ＰＭＯＳトランジスタＰＭ２及びＮＭＯＳトランジスタＮＭ２を動作可能な状態に制御し、ＰＭＯＳトランジスタＰＭ１、ＰＭ３及びＮＭＯＳトランジスタＮＭ１、ＮＭ３を動作不能な状態に制御する。これにより、例えば、入力バッファ１０のベータ比（βｐ／βｎ）が略１に等しくなり（図８（ａ）参照）、入力バッファ１０の回路閾値が基準値（例えば、Ｖｃｃｑ／２）に一致するようになる。ベータ比（βｐ／βｎ）は、例えば、選択されたＰＭＯＳトランジスタの利得係数の合計（βｐ）を、選択されたＮＭＯＳトランジスタの利得係数の合計（βｎ）で割ることで求められる比率である。
【００３２】
図３に示す保持部３０は、入力バッファ１０から転送された信号のレベルをクロックＲＥＬＡＴに同期して保持し、保持している信号のレベルを出力端子ＴＭｏｕｔ及びフィードバック部４０へ出力する。クロックＲＥＬＡＴは、例えば、コントローラ１（図１参照）により（例えば、チップ外部から与えられる読み出しイネーブル信号から）内部的に生成されコントローラ１から入力回路ＲＸのクロック端子ＴＭｃｋへ供給された内部クロック信号である。具体的には、保持部３０は、フリップフロップ回路３１、アンプ３２、及びアンプ３３を有する。
【００３３】
フリップフロップ回路３１のデータ入力端子は、各ＣＭＯＳインバータＩＮＶ１〜ＩＮＶ３の出力ノードＮ１〜Ｎ３に接続されている。フリップフロップ回路３１のクロック入力端子は、クロック端子ＴＭｃｋに接続されている。フリップフロップ回路３１の出力端子は、アンプ３２及びアンプ３３に接続されている。フリップフロップ回路３１は、例えば、クロック入力端子で受けたクロックＲＥＬＡＴの立ち上がり（又は立ち下がり）タイミングで、出力ノードＮ１〜Ｎ３を介して入力バッファ１０から転送された信号のレベルをラッチする（保持する）。そして、フリップフロップ回路３１は、ラッチしている（保持している）信号のレベルを出力端子からアンプ３２及びアンプ３３へ出力する。例えば、フリップフロップ回路３１は、クロックＲＥＬＡＴの立ち上がり（又は立ち下がり）タイミングでＨレベルの信号をラッチしたら、Ｈレベルの信号を出力端子から出力する。例えば、フリップフロップ回路３１は、クロックＲＥＬＡＴの立ち上がり（又は立ち下がり）タイミングでＬレベルの信号をラッチしたら、Ｌレベルの信号を出力端子から出力する。
【００３４】
アンプ３２は、フリップフロップ回路３１から転送された信号を増幅してその信号のレベルを出力端子ＴＭｏｕｔへ出力する。アンプ３３は、フリップフロップ回路３１から転送された信号を増幅してその信号のレベルをフィードバック部４０へ出力する。
【００３５】
出力端子ＴＭｏｕｔから出力された信号は、その後段に接続された内部回路ＩＣへ供給される。例えば、入力回路ＲＸがコントローラ１における入力回路ＲＸ０である場合、出力端子ＴＭｏｕｔの後段には、内部回路ＩＣ０が接続されている。あるいは、例えば、入力回路ＲＸがＮＡＮＤメモリ３−１〜３−ｎにおける入力回路ＲＸ１〜ＲＸｎである場合、出力端子ＴＭｏｕｔの後段には、ＮＡＮＤフラッシュメモリ（内部回路）ＩＣ１〜ＩＣｎが接続されている。
【００３６】
フィードバック部４０は、保持部３０から出力された信号のレベルを制御部２０へフィードバックする。フィードバック部４０は、例えば、フィードバックライン４０ａ及びフィードバックライン４０ｂを有する。フィードバックライン４０ａは、保持部３０から出力された信号のレベルを制御部２０ａへフィードバックする。フィードバックライン４０ｂは、保持部３０から出力された信号のレベルを制御部２０ｂへフィードバックする。
【００３７】
制御部２０は、初期設定後すなわち実動作を行う際に、フィードバック部４０によりフィードバックされた信号のレベルに応じて、複数のＰＭＯＳトランジスタＰＭ１〜ＰＭ３から選択して動作可能な状態に制御するＰＭＯＳトランジスタを動的に変更するとともに、複数のＮＭＯＳトランジスタＮＭ１〜ＮＭ３から選択して動作可能な状態に制御するＮＭＯＳトランジスタを動的に変更する。すなわち、制御部２０は、クロックＲＥＬＡＴの１クロックサイクル前の信号のレベルに応じて、複数のＰＭＯＳトランジスタＰＭ１〜ＰＭ３から選択して動作可能な状態に制御するＰＭＯＳトランジスタを動的に変更するとともに、複数のＮＭＯＳトランジスタＮＭ１〜ＮＭ３から選択して動作可能な状態に制御するＮＭＯＳトランジスタを動的に変更する。
【００３８】
具体的には、制御部２０は、入力バッファ１０の回路閾値がフィードバック部４０によりフィードバックされた信号のレベルに近づく方向へ入力バッファ１０の回路閾値を変更するように、入力バッファ１０のベータ比（βｐ／βｎ）を制御する。ベータ比（βｐ／βｎ）は、例えば、選択されたＰＭＯＳトランジスタの利得係数の合計（βｐ）を、選択されたＮＭＯＳトランジスタの利得係数の合計（βｎ）で割ることで求められる比率である。
【００３９】
さらに具体的には、制御部２０は、フィードバック部４０によりフィードバックされた信号のレベルがＨレベルである場合、入力バッファ１０の回路閾値が基準値（例えば、Ｖｃｃｑ／２）より高くなるようにベータ比（βｐ／βｎ）を上げる（図８（ａ）参照）。ここで、各ＰＭＯＳトランジスタの利得特性はそのＰＭＯＳトランジスタのディメンジョン（＝Ｗ／Ｌ、Ｗ：チャネル幅、Ｌ：チャネル長）に比例し、各ＮＭＯＳトランジスタの利得特性はそのＮＭＯＳトランジスタのディメンジョンに比例する。すなわち、制御部２０は、フィードバック部４０によりフィードバックされた信号のレベルがＨレベルである場合、選択すべきＰＭＯＳトランジスタのディメンジョンの合計を増やす動作と選択すべきＮＭＯＳトランジスタのディメンジョンの合計を減らす動作との少なくとも一方を行う。
【００４０】
例えば、複数のＰＭＯＳトランジスタＰＭ１〜ＰＭ３の間でディメンジョン（＝Ｗ／Ｌ、Ｗ：チャネル幅、Ｌ：チャネル長）が均等な値であり特性（例えば、キャリア移動度、ゲート容量）も均等であるとともに、複数のＮＭＯＳトランジスタＮＭ１〜ＮＭ３の間でディメンジョンが均等であり特性も均等である場合、制御部２０は、図９（ｂ）に示すように制御することができる。すなわち、制御部２０は、スイッチＳＷ１ｂ、ＳＷ２ｂ、ＳＷ２ａをオンし、スイッチＳＷ３ｂ、ＳＷ１ａ、ＳＷ３ａをオフすることにより、ＰＭＯＳトランジスタＰＭ１、ＰＭ２及びＮＭＯＳトランジスタＮＭ２を動作可能な状態に制御し、ＰＭＯＳトランジスタＰＭ３及びＮＭＯＳトランジスタＮＭ１、ＮＭ３を動作不能な状態に制御する。
【００４１】
一方、制御部２０は、フィードバック部４０によりフィードバックされた信号のレベルがＬレベルである場合、入力バッファ１０の回路閾値が基準値（例えば、Ｖｃｃｑ／２）より低くなるようにベータ比（βｐ／βｎ）を下げる（図８（ａ）参照）。すなわち、制御部２０は、フィードバック部４０によりフィードバックされた信号のレベルがＬレベルである場合、選択すべきＰＭＯＳトランジスタのディメンジョンの合計を減らす動作と選択すべきＮＭＯＳトランジスタのディメンジョンの合計を増やす動作との少なくとも一方を行う。
【００４２】
例えば、複数のＰＭＯＳトランジスタＰＭ１〜ＰＭ３の間でディメンジョン（＝Ｗ／Ｌ、Ｗ：チャネル幅、Ｌ：チャネル長）が均等な値であり特性（例えば、キャリア移動度、ゲート容量）も均等であるとともに、複数のＮＭＯＳトランジスタＮＭ１〜ＮＭ３の間でディメンジョンが均等であり特性も均等である場合、制御部２０は、図９（ｃ）に示すように制御することができる。すなわち、制御部２０は、スイッチＳＷ２ｂ、ＳＷ１ａ、ＳＷ２ａをオンし、スイッチＳＷ１ｂ、ＳＷ３ｂ、ＳＷ３ａをオフすることにより、ＰＭＯＳトランジスタＰＭ２及びＮＭＯＳトランジスタＮＭ１、ＮＭ２を動作可能な状態に制御し、ＰＭＯＳトランジスタＰＭ１、ＰＭ３及びＮＭＯＳトランジスタＮＭ３を動作不能な状態に制御する。
【００４３】
なお、制御部２０において、デコーダ２１ｂ及びデコーダ２１ａは共通化された構成であってもよい。この場合、フィードバック部４０において、フィードバックライン４０ａ及びフィードバックライン４０ｂが共通化された構成になる。さらに、各スイッチＳＷ１ｂ〜ＳＷ３ｂは、例えば、対応するＰＭＯＳトランジスタＰＭ１〜ＰＭ３のドレインと出力ノードＮ１〜Ｎ３との間に配されていてもよい。各スイッチＳＷ１ａ〜ＳＷ３ａは、例えば、対応するＮＭＯＳトランジスタＮＭ１〜ＮＭ３のドレインと出力ノードＮ１〜Ｎ３との間に配されていてもよい。
【００４４】
次に、制御部２０におけるデコーダ２１ａ、２１ｂの内部構成について図４を用いて説明する。図４は、デコーダ２１ａ、２１ｂの内部構成の一例を示す回路図である。
【００４５】
デコーダ２１ｂは、例えば、インバータＩＮＶｂと、制御部２０ｂ内のスイッチＳＷ１ｂ〜ＳＷ３ｂに対応した複数のＮＯＲゲートＮＯＲ１〜ＮＯＲ６とを有する。例えば、ＮＯＲゲートＮＯＲ１及びＮＯＲ４がスイッチＳＷ１ｂに対応している。インバータＩＮＶｂは、フィードバック部４０のフィードバックライン４０ｂによりフィードバックされた信号を論理反転させてＮＯＲゲートＮＯＲ１〜ＮＯＲ３へそれぞれ供給する。ＮＯＲゲートＮＯＲ１〜ＮＯＲ３は、それぞれ、インバータＩＮＶｂから供給された信号と、制御信号ＥＮｂ１、ＥＮｂ２、ＥＮｂ３とのＮＯＲ演算を実行し、演算結果を対応するＮＯＲゲートＮＯＲ４〜ＮＯＲ６へ供給する。ＮＯＲゲートＮＯＲ４〜ＮＯＲ６は、それぞれ、ＮＯＲゲートＮＯＲ１〜ＮＯＲ３から供給された信号と、制御信号ＲＥＮ１、ＲＥＮ２、ＲＥＮ３とのＮＯＲ演算を実行し、オン／オフさせる制御信号として演算結果をスイッチＳＷ１ｂ〜ＳＷ３ｂの制御端子（ゲート電極）へ供給する。
【００４６】
制御信号ＲＥＮ１、ＲＥＮ２、ＲＥＮ３は、入力バッファ１０の回路閾値の基準値（例えば、Ｖｃｃｑ／２）に対応したディメンジョン（Ｗ／Ｌ）を決めるための制御信号である。制御信号ＥＮｂ１、ＥＮｂ２、ＥＮｂ３は、クロックＲＥＬＡＴの１クロックサイクル前の信号のレベルに応じて変更すべきディメンジョン（Ｗ／Ｌ）を決めるための制御信号である。制御信号ＲＥＮ１、ＲＥＮ２、ＲＥＮ３及び制御信号ＥＮｂ１、ＥＮｂ２、ＥＮｂ３は、それぞれ、例えば、（例えば、対応するＮＡＮＤメモリ内の）ＲＯＭＦＵＳＥに格納されているデータに基づいてコントローラ１（図１参照）により内部的に生成されコントローラ１から入力回路ＲＸへ供給された制御信号である。
【００４７】
デコーダ２１ａは、例えば、インバータＩＮＶａと、制御部２０ａ内のスイッチＳＷ１ａ〜ＳＷ３ａに対応した複数のＮＡＮＤゲートＮＡＮＤ１〜ＮＡＮＤ６とを有する。例えば、ＮＡＮＤゲートＮＡＮＤ１及びＮＡＮＤ４がスイッチＳＷ１ａに対応している。インバータＩＮＶａは、フィードバック部４０のフィードバックライン４０ａによりフィードバックされた信号を論理反転させてＮＡＮＤゲートＮＡＮＤ１〜ＮＡＮＤ３へそれぞれ供給する。ＮＡＮＤゲートＮＡＮＤ１〜ＮＡＮＤ３は、それぞれ、インバータＩＮＶａから供給された信号と、制御信号ＥＮ１、ＥＮ２、ＥＮ３とのＮＡＮＤ演算を実行し、演算結果を対応するＮＡＮＤゲートＮＡＮＤ４〜ＮＡＮＤ６へ供給する。ＮＡＮＤゲートＮＡＮＤ４〜ＮＡＮＤ６は、それぞれ、ＮＡＮＤゲートＮＡＮＤ１〜ＮＡＮＤ３から供給された信号と、制御信号ＲＥＮｎ１、ＲＥＮｎ２、ＲＥＮｎ３とのＮＡＮＤ演算を実行し、オン／オフさせる制御信号として演算結果をスイッチＳＷ１ａ〜ＳＷ３ａの制御端子（ゲート電極）へ供給する。
【００４８】
制御信号ＲＥＮｎ１、ＲＥＮｎ２、ＲＥＮｎ３は、入力バッファ１０の回路閾値の基準値（例えば、Ｖｃｃｑ／２）に対応したディメンジョン（Ｗ／Ｌ）を決めるための制御信号である。制御信号ＥＮ１、ＥＮ２、ＥＮ３は、クロックＲＥＬＡＴの１クロックサイクル前の信号のレベルに応じて変更すべきディメンジョン（Ｗ／Ｌ）を決めるための制御信号である。制御信号ＲＥＮｎ１、ＲＥＮｎ２、ＲＥＮｎ３及び制御信号ＥＮ１、ＥＮ２、ＥＮ３は、それぞれ、例えば、（例えば、対応するＮＡＮＤメモリ内の）ＲＯＭＦＵＳＥに格納されているデータに基づいてコントローラ１（図１参照）により内部的に生成されコントローラ１から入力回路ＲＸへ供給された制御信号である。
【００４９】
次に、制御部２０におけるデコーダ２１ａ、２１ｂの動作について、図４を用いて説明する。
【００５０】
例えば、初期設定時において、制御信号ＥＮｂ１、ＥＮｂ２、ＥＮｂ３がいずれもＨレベル固定の信号としてＮＯＲゲートＮＯＲ１〜ＮＯＲ３に供給される。ＮＯＲゲートＮＯＲ１〜ＮＯＲ３は、それぞれ、フィードバックライン４０ｂによりフィードバックされる信号のレベルに関わらず、対応するＮＯＲゲートＮＯＲ４〜ＮＯＲ６へＬレベルの信号を供給する。このとき、例えば、Ｌレベルの制御信号ＲＥＮ１、Ｈレベルの制御信号ＲＥＮ２、Ｌレベルの制御信号ＲＥＮ３がそれぞれＮＯＲゲートＮＯＲ４、ＮＯＲ５、ＮＯＲ６へ供給される。そして、ＮＯＲゲートＮＯＲ４、ＮＯＲ５、ＮＯＲ６は、それぞれ、Ｈレベル、Ｌレベル、Ｈレベルの信号を、対応するスイッチＳＷ１ｂ、ＳＷ２ｂ、ＳＷ３ｂへ供給する。
【００５１】
同様に、制御信号ＥＮ１、ＥＮ２、ＥＮ３がいずれもＬレベル固定の信号としてＮＡＮＤゲートＮＡＮＤ１〜ＮＡＮＤ３に供給される。ＮＡＮＤゲートＮＡＮＤ１〜ＮＡＮＤ３は、それぞれ、フィードバックライン４０ａによりフィードバックされる信号のレベルに関わらず、対応するＮＡＮＤゲートＮＡＮＤ４〜ＮＡＮＤ６へＨレベルの信号を供給する。このとき、例えば、Ｈレベルの制御信号ＲＥＮｎ１、Ｌレベルの制御信号ＲＥＮｎ２、Ｈレベルの制御信号ＲＥＮｎ３がそれぞれＮＡＮＤゲートＮＡＮＤ４、ＮＡＮＤ５、ＮＡＮＤ６へ供給される。そして、ＮＡＮＤゲートＮＡＮＤ４、ＮＡＮＤ５、ＮＡＮＤ６は、それぞれ、Ｌレベル、Ｈレベル、Ｌレベルの信号を、対応するスイッチＳＷ１ａ、ＳＷ２ａ、ＳＷ３ａへ供給する。
【００５２】
すなわち、制御部２０は、スイッチＳＷ２ｂ、ＳＷ２ａをオンし、スイッチＳＷ１ｂ、ＳＷ３ｂ、ＳＷ１ａ、ＳＷ３ａをオフする（図９（ａ）参照）ことにより、ＰＭＯＳトランジスタＰＭ２及びＮＭＯＳトランジスタＮＭ２を動作可能な状態に制御し、ＰＭＯＳトランジスタＰＭ１、ＰＭ３及びＮＭＯＳトランジスタＮＭ１、ＮＭ３を動作不能な状態に制御する。この結果、例えば、入力バッファ１０のベータ比（βｐ／βｎ）が略１に等しくなり（図８（ａ）参照）、入力バッファ１０の回路閾値が基準値（例えば、Ｖｃｃｑ／２）に一致するようになる。
【００５３】
例えば、初期設定後の実動作時において、Ｌレベルの制御信号ＥＮｂ１、Ｈレベルの制御信号ＥＮｂ２、Ｈレベルの制御信号ＥＮｂ３がそれぞれＮＯＲゲートＮＯＲ１、ＮＯＲ２、ＮＯＲ３に供給される。ＮＯＲゲートＮＯＲ１、ＮＯＲ２、ＮＯＲ３は、それぞれ、フィードバックライン４０ｂによりフィードバックされる信号がＨレベルの場合、Ｈレベル、Ｌレベル、Ｌレベルの信号を、対応するＮＯＲゲートＮＯＲ４、ＮＯＲ５、ＮＯＲ６へ供給する。このとき、初期設定時と同様に、Ｌレベルの制御信号ＲＥＮ１、Ｈレベルの制御信号ＲＥＮ２、Ｌレベルの制御信号ＲＥＮ３がそれぞれＮＯＲゲートＮＯＲ４、ＮＯＲ５、ＮＯＲ６へ供給されている。そして、ＮＯＲゲートＮＯＲ４、ＮＯＲ５、ＮＯＲ６は、それぞれ、Ｌレベル、Ｌレベル、Ｈレベルの信号を、対応するスイッチＳＷ１ｂ、ＳＷ２ｂ、ＳＷ３ｂへ供給する。
【００５４】
同様に、Ｈレベルの制御信号ＥＮ１、Ｌレベルの制御信号ＥＮ２、Ｌレベルの制御信号ＥＮ３がそれぞれＮＡＮＤゲートＮＡＮＤ１、ＮＡＮＤ２、ＮＡＮＤ３に供給される。ＮＡＮＤゲートＮＡＮＤ１、ＮＡＮＤ２、ＮＡＮＤ３は、それぞれ、フィードバックライン４０ａによりフィードバックされる信号がＨレベルの場合、Ｈレベルの信号を、対応するＮＡＮＤゲートＮＡＮＤ４、ＮＡＮＤ５、ＮＡＮＤ６へ供給する。このとき、初期設定時と同様に、Ｈレベルの制御信号ＲＥＮｎ１、Ｌレベルの制御信号ＲＥＮｎ２、Ｈレベルの制御信号ＲＥＮｎ３がそれぞれＮＡＮＤゲートＮＡＮＤ４、ＮＡＮＤ５、ＮＡＮＤ６へ供給されている。そして、ＮＡＮＤゲートＮＡＮＤ４、ＮＡＮＤ５、ＮＡＮＤ６は、それぞれ、Ｌレベル、Ｈレベル、Ｌレベルの信号を、対応するスイッチＳＷ１ａ、ＳＷ２ａ、ＳＷ３ａへ供給する。
【００５５】
このように、実動作時において、制御部２０は、フィードバック部４０によりフィードバックされた信号のレベルがＨレベルである場合、スイッチＳＷ１ｂ、ＳＷ２ｂ、ＳＷ２ａをオンし、スイッチＳＷ３ｂ、ＳＷ１ａ、ＳＷ３ａをオフする（図９（ｂ）参照）ことにより、ＰＭＯＳトランジスタＰＭ１、ＰＭ２及びＮＭＯＳトランジスタＮＭ２を動作可能な状態に制御し、ＰＭＯＳトランジスタＰＭ３及びＮＭＯＳトランジスタＮＭ１、ＮＭ３を動作不能な状態に制御する。
【００５６】
一方、ＮＯＲゲートＮＯＲ１、ＮＯＲ２、ＮＯＲ３は、それぞれ、フィードバックライン４０ｂによりフィードバックされる信号がＬレベルの場合、Ｌレベルの信号を、対応するＮＯＲゲートＮＯＲ４、ＮＯＲ５、ＮＯＲ６へ供給する。このとき、初期設定時と同様に、Ｌレベルの制御信号ＲＥＮ１、Ｈレベルの制御信号ＲＥＮ２、Ｌレベルの制御信号ＲＥＮ３がそれぞれＮＯＲゲートＮＯＲ４、ＮＯＲ５、ＮＯＲ６へ供給されている。そして、ＮＯＲゲートＮＯＲ４、ＮＯＲ５、ＮＯＲ６は、それぞれ、Ｈレベル、Ｌレベル、Ｈレベルの信号を、対応するスイッチＳＷ１ｂ、ＳＷ２ｂ、ＳＷ３ｂへ供給する。
【００５７】
同様に、ＮＡＮＤゲートＮＡＮＤ１、ＮＡＮＤ２、ＮＡＮＤ３は、それぞれ、フィードバックライン４０ａによりフィードバックされる信号がＬレベルの場合、Ｌレベル、Ｈレベル、Ｈレベルの信号を、対応するＮＡＮＤゲートＮＡＮＤ４、ＮＡＮＤ５、ＮＡＮＤ６へ供給する。このとき、初期設定時と同様に、Ｈレベルの制御信号ＲＥＮｎ１、Ｌレベルの制御信号ＲＥＮｎ２、Ｈレベルの制御信号ＲＥＮｎ３がそれぞれＮＡＮＤゲートＮＡＮＤ４、ＮＡＮＤ５、ＮＡＮＤ６へ供給されている。そして、ＮＡＮＤゲートＮＡＮＤ４、ＮＡＮＤ５、ＮＡＮＤ６は、それぞれ、Ｈレベル、Ｈレベル、Ｌレベルの信号を、対応するスイッチＳＷ１ａ、ＳＷ２ａ、ＳＷ３ａへ供給する。
【００５８】
このように、実動作時において、制御部２０は、フィードバック部４０によりフィードバックされた信号のレベルがＬレベルである場合、スイッチＳＷ２ｂ、ＳＷ１ａ、ＳＷ２ａをオンし、スイッチＳＷ１ｂ、ＳＷ３ｂ、ＳＷ３ａをオフする（図９（ｃ）参照）ことにより、ＰＭＯＳトランジスタＰＭ２及びＮＭＯＳトランジスタＮＭ１、ＮＭ２を動作可能な状態に制御し、ＰＭＯＳトランジスタＰＭ１、ＰＭ３及びＮＭＯＳトランジスタＮＭ３を動作不能な状態に制御する。
【００５９】
次に、実施の形態にかかる入力回路ＲＸの動作について図５を用いて説明する。図５は、入力回路ＲＸの概略動作を示すフローチャートである。
【００６０】
ステップＳ１では、入力回路ＲＸが、初期設定を行う。具体的には、コントローラ１が、入力回路ＲＸへテストパターンを供給する。入力回路ＲＸの制御部２０は、コントローラ１により供給されたテストパターンを用いて、入力バッファ１０の回路閾値が基準値に一致するように調整する。基準値は、例えば、基準電圧Ｖｓｓ（例えば、０Ｖ）と電源電圧Ｖｃｃｑとの中間の値である（Ｖｃｃｑ／２）とする。
【００６１】
ステップＳ２では、入力回路ＲＸが、実動作を行なう。具体的には、入力回路ＲＸの制御部２０は、入力バッファ１０の回路閾値を、ステップＳ１で調整された基準値（例えば、Ｖｃｃｑ／２）から、フィードバック部４０によりフィードバックされた信号のレベルに近づく値へ変更するように、ベータ比（βｐ／βｎ）を制御する。ベータ比（βｐ／βｎ）は、例えば、選択されたＰＭＯＳトランジスタの利得係数の合計（βｐ）を、選択されたＮＭＯＳトランジスタの利得係数の合計（βｎ）で割ることで求められる比率である。
【００６２】
次に、初期設定（図５のステップＳ１）の詳細について図６を用いて説明する。図６は、初期設定における入力回路ＲＸの動作を示すフローチャートである。以下では、入力回路ＲＸがＮＡＮＤメモリ３−１〜３−ｎにおける入力回路ＲＸ１〜ＲＸｎである場合を例示的に説明する。また、ＮＡＮＤメモリ３−１〜３−ｎを代表してＮＡＮＤメモリ３として説明することにする。
【００６３】
ステップＳ１１では、半導体記憶装置１００が起動され、コントローラ１による制御システムが起動する。これに伴い、コントローラ１において、ＮＡＮＤメモリ３内の入力回路ＲＸを初期設定するためのシステム（初期設定システム）も起動する。
【００６４】
ステップＳ１２では、コントローラ１が、初期設定システムに従って、ＮＡＮＤ側のテスト動作の開始を通知するための開始コマンドをＮＡＮＤメモリ３内の比較回路（図示せず）へ転送する。このとき、コントローラ１は、ＮＡＮＤメモリ３へ転送する際の開始コマンドのデータ転送レートを、開始コマンドを正しいレベルで転送するのに十分な低い速度（例えば、４０Ｍｂｐｓ）に制御する。比較回路は、開始コマンドを受けたことに応じて、内部回路（ＮＡＮＤフラッシュメモリ）ＩＣ内のＲＯＭ領域に予め格納されている正解パターンを読み出し保持しておく。
【００６５】
ステップＳ１３では、コントローラ１が、上記の正解パターンに対応したテストパターンを生成する。また、コントローラ１は、ＮＡＮＤメモリ３内のＲＯＭＦＵＳＥに格納されている入力バッファ１０に関する複数の動作条件からまだ選択されていない１つの動作条件を選択する。コントローラ１は、選択された動作条件に従って、制御信号ＥＮｂ１、ＥＮｂ２、ＥＮｂ３、ＲＥＮ１、ＲＥＮ２、ＲＥＮ３、ＥＮ１、ＥＮ２、ＥＮ３、ＲＥＮｎ１、ＲＥＮｎ２、ＲＥＮｎ３を生成する。コントローラ１は、テストパターンと制御信号ＥＮｂ１〜ＲＥＮｎ３とをＮＡＮＤメモリ３内の入力回路ＲＸへ転送する。コントローラ１は、例えば、ＮＡＮＤメモリ３内の入力回路ＲＸの入力端子ＴＭｉｎへテストパターンを転送するとともに、入力回路ＲＸにおけるデコーダ２１ａ、２１ｂの制御端子（図４参照）へ制御信号を転送する。このとき、コントローラ１は、ＮＡＮＤメモリ３へ転送する際のテストパターンのデータ転送レートを、実動作時と同様の速度にするために、ステップＳ１２より高い速度（例えば、４００Ｍｂｐｓ）に制御する。
【００６６】
そして、入力回路ＲＸの制御部２０は、受けた制御信号ＥＮｂ１〜ＲＥＮｎ３に応じて、複数のＰＭＯＳトランジスタＰＭ１〜ＰＭ３及び複数のＮＭＯＳトランジスタＮＭ１〜ＮＭ３の動作条件を設定する。すなわち、制御部２０は、複数のＰＭＯＳトランジスタＰＭ１〜ＰＭ３から１以上のＰＭＯＳトランジスタを選択して動作可能な状態に制御するとともに、複数のＮＭＯＳトランジスタＮＭ１〜ＮＭ３から１以上のＮＭＯＳトランジスタを選択して動作可能な状態に制御する。そして、入力回路ＲＸにおいて、入力バッファ１０が入力されたテストパターンのバッファリングを行い、保持部３０が入力バッファ１０から転送された信号をクロックＲＥＬＡＴに同期して保持するとともに保持している信号を出力端子ＴＭｏｕｔへ出力する。
【００６７】
ステップＳ１４では、ＮＡＮＤメモリ３内の比較回路が、入力回路ＲＸから出力された信号のパターン（出力信号パターン）と保持しておいた正解パターンとを比較し、比較結果をフラグとして保持しておく。フラグは、例えば、一致していたか否かを示す値を有している。そして、コントローラ１は、そのフラグをＮＡＮＤメモリ３内の比較回路から読み出し、フラグの値に応じて、出力信号パターンと正解パターンとが一致していると判断した場合、処理を終了し、出力信号パターンと正解パターンとが一致していないと判断した場合、処理をステップＳ１５へ進める。
【００６８】
ステップＳ１５では、コントローラ１が、動作条件を変更すべきであることを通知するための変更コマンドをＮＡＮＤメモリ３内の比較回路（図示せず）へ転送する。このとき、コントローラ１は、ＮＡＮＤメモリ３へ転送する際の変更コマンドのデータ転送レートを、変更コマンドを正しいレベルで転送するのに十分な低い速度（例えば、４０Ｍｂｐｓ）に制御する。比較回路は、変更コマンドを受けたことに応じて、内部回路（ＮＡＮＤフラッシュメモリ）ＩＣ内のＲＯＭ領域に予め格納されている正解パターンを再び読み出し保持しておく。
【００６９】
このステップＳ１３〜Ｓ１５は、出力信号パターンと正解パターンとが一致するまで繰り返される。出力信号パターンと正解パターンとが一致すると初期設定（図５のステップＳ１）が終了する。これにより、入力回路ＲＸの入力バッファ１０の回路閾値が基準値（例えば、Ｖｃｃｑ／２）に一致するように調整される。
【００７０】
次に、実動作（図５のステップＳ２）の詳細について図７を用いて説明する。図７は、実動作時における入力回路ＲＸの動作を示すフローチャートである。以下では、入力回路ＲＸがＮＡＮＤメモリ３−１〜３−ｎにおける入力回路ＲＸ１〜ＲＸｎである場合を例示的に説明する。また、ＮＡＮＤメモリ３−１〜３−ｎを代表してＮＡＮＤメモリ３として説明することにする。
【００７１】
ステップＳ２１では、コントローラ１が、クロックＲＥＬＡＴの以前の（例えば、１クロックサイクル前の）信号のレベルに応じて変更すべきディメンジョン（Ｗ／Ｌ）を決めるための制御信号ＥＮｂ１〜ＥＮｂ３、ＥＮ１〜ＥＮ３を、初期設定（ステップＳ１）用の値から実動作（ステップＳ２）用の値へ変更してＮＡＮＤメモリ３内の入力回路ＲＸへ転送する。
【００７２】
例えば、図４に示す構成では、初期設定（ステップＳ１）において、制御信号ＥＮｂ１、ＥＮｂ２、ＥＮｂ３がいずれもＨレベル固定の信号であり、制御信号ＥＮ１、ＥＮ２、ＥＮ３がいずれもＬレベル固定の信号となっている。それに対して、ステップＳ２１において、例えば、制御信号ＥＮｂ１、ＥＮｂ２、ＥＮｂ３を、それぞれ、Ｌレベル、Ｈレベル、Ｈレベルにし、制御信号ＥＮ１、ＥＮ２、ＥＮ３を、それぞれ、Ｈレベル、Ｌレベル、Ｌレベルにする。
【００７３】
ステップＳ２２では、コントローラ１が、ＮＡＮＤメモリ３内の内部回路（ＮＡＮＤフラッシュメモリ）ＩＣへ書き込むべきデータ（書き込みデータ）を、ＮＡＮＤメモリ３内の入力回路ＲＸへ転送する。このとき、コントローラ１は、ＮＡＮＤメモリ３へ転送する際の書き込みデータのデータ転送レートを、ステップＳ１３と同様の高い速度（例えば、４００Ｍｂｐｓ）に制御する。
【００７４】
そして、入力回路ＲＸにおいて、入力バッファ１０が入力されたテストパターンのバッファリングを行い、保持部３０が入力バッファ１０から転送された信号をクロックＲＥＬＡＴに同期して保持するとともに保持している信号を出力端子ＴＭｏｕｔ及びフィードバック部４０へ出力する。フィードバック部４０は、保持部３０から出力された信号のレベルを制御部２０へフィードバックする。
【００７５】
ステップＳ２３では、入力回路ＲＸの制御部２０が、フィードバック部４０によりフィードバックされた信号のレベル（以前の（例えば、１クロックサイクル前の）信号のレベル）がＨレベルであるのかＬレベルであるのかを判断する。制御部２０は、以前の信号のレベルがＨレベルである場合、処理をステップＳ２４へ進め、以前の信号のレベルがＬレベルである場合、処理をステップＳ２５へ進める。
【００７６】
ステップＳ２４では、入力回路ＲＸの制御部２０が、入力バッファ１０の回路閾値が基準値（例えば、Ｖｃｃｑ／２）より高い値Ｖ１となるようにベータ比（βｐ／βｎ）を上げる（図８（ａ）参照）。すなわち、制御部２０は、選択すべきＰＭＯＳトランジスタのディメンジョンの合計を増やす動作と選択すべきＮＭＯＳトランジスタのディメンジョンの合計を減らす動作との少なくとも一方を行う。
【００７７】
例えば、制御部２０は、スイッチＳＷ１ｂ、ＳＷ２ｂ、ＳＷ２ａをオンし、スイッチＳＷ３ｂ、ＳＷ１ａ、ＳＷ３ａをオフする（図９（ｂ）参照）ことにより、ＰＭＯＳトランジスタＰＭ１、ＰＭ２及びＮＭＯＳトランジスタＮＭ２を動作可能な状態に制御し、ＰＭＯＳトランジスタＰＭ３及びＮＭＯＳトランジスタＮＭ１、ＮＭ３を動作不能な状態に制御する。
【００７８】
ステップＳ２５では、入力回路ＲＸの制御部２０が、入力バッファ１０の回路閾値が基準値（例えば、Ｖｃｃｑ／２）より低い値Ｖ２となるようにベータ比（βｐ／βｎ）を下げる（図８（ａ）参照）。すなわち、制御部２０は、選択すべきＰＭＯＳトランジスタのディメンジョンの合計を増やす動作と選択すべきＮＭＯＳトランジスタのディメンジョンの合計を減らす動作との少なくとも一方を行う。
【００７９】
例えば、制御部２０は、スイッチＳＷ２ｂ、ＳＷ１ａ、ＳＷ２ａをオンし、スイッチＳＷ１ｂ、ＳＷ３ｂ、ＳＷ３ａをオフする（図９（ｃ）参照）ことにより、ＰＭＯＳトランジスタＰＭ２及びＮＭＯＳトランジスタＮＭ１、ＮＭ２を動作可能な状態に制御し、ＰＭＯＳトランジスタＰＭ１、ＰＭ３及びＮＭＯＳトランジスタＮＭ３を動作不能な状態に制御する。
【００８０】
ここで、仮に、初期設定時だけでなく実動作時においても、入力バッファ１０の回路閾値が基準値（例えば、Ｖｃｃｑ／２）に一致した状態で入力回路ＲＸが動作する場合について考える。この場合、入力バッファ１０の要求動作速度の高速化、すなわちクロックサイクルの短期化に伴い、ＰＭＯＳトランジスタのドレインとＮＭＯＳトランジスタのドレインとが接続された出力ノードにおけるジャンクション容量の影響が無視できないレベルになる可能性がある。例えば、コントローラからＮＡＮＤメモリへデータを高速に書き込むときや、ＮＡＮＤメモリからコントローラへデータを高速に読み出すときなど、高速で通信する際に、入力バッファにおける出力ノードのジャンクション容量の充電／放電に時間がかかるために、過去の信号レベルが現在の信号レベルと干渉する信号間干渉（Ｉｎｔｅｒ  Ｓｙｍｂｏｌ  Ｉｎｔｅｒｆｅｒｅｎｃｅ）が発生し、この信号間干渉により信号レベルが劣化する傾向にある。この傾向は、特に同一チャネル（バス）に接続されるＮＡＮＤメモリ（半導体チップ）の数が多くなるほど顕著になる。
【００８１】
例えば、データ転送レートを１５０Ｍｂｐｓとし、書き込みデータを‘１００００１０１１１１１００１０１０１０１１１００１１００１０１０００１０'とした場合に入力回路ＲＸから出力される波形は、出力ノードにおけるジャンクション容量Ｃｊ（図１６（ｅ）参照）を大きくするに従い図１６（ａ）〜（ｄ）に示すように変化する。すなわち、出力ノードにおけるジャンクション容量Ｃｊが５ｐＦ（図１６（ａ））、３０ｐＦ（図１６（ｂ））、６０ｐＦ（図１６（ｃ））、９０ｐＦ（図１６（ｄ））と増えるに従い、現在の信号レベルが過去の信号レベル（例えば、１クロックサイクル前の信号レベル）に引きづられて減衰する傾向にある。この結果、動作波形における立ち上がり時や立下り時のスルーレートが遅くなるので、信号間干渉による信号の劣化が顕著になる。
【００８２】
例えば、出力抵抗Ｒｏｕｔを１８Ω又は２５Ωとし、データ転送レートを１３３Ｍｂｐｓとして、書き込みデータを上記の同様とした場合に入力回路ＲＸから出力される波形を１クロックサイクルごとに切り出して重ね合わせた結果が図１７に示すようになる。すなわち、ＮＡＮＤメモリからコントローラへデータを転送する場合（実線、破線の場合）も、コントローラからＮＡＮＤメモリへデータを転送する場合（１点鎖線、２点鎖線の場合）も、スルーレートが遅くなっている。実線は、コントローラに最も近いＮＡＮＤメモリからコントローラへデータを転送する場合を示し、破線は、コントローラから最も遠いＮＡＮＤメモリからコントローラへデータを転送する場合を示している。１点鎖線は、コントローラからコントローラに最も近いＮＡＮＤメモリへデータを転送する場合を示し、２点鎖線は、コントローラから、コントローラから最も遠いＮＡＮＤメモリへデータを転送する場合を示している。これにより、動作波形におけるタイミングマージン（時間軸方向における動作マージン）と振幅マージン（振幅軸方向における動作マージン）とが狭くなり、誤書き込みが発生する可能性があり、ひいては誤読み出しが発生する可能性がある。
【００８３】
それに対して、実施の形態では、制御部２０は、入力バッファ１０の回路閾値がフィードバック部４０によりフィードバックされた信号のレベルに近づく方向へ入力バッファ１０の回路閾値を変更するように、入力バッファ１０のベータ比（βｐ／βｎ）を制御する。具体的には、制御部２０は、フィードバック部４０によりフィードバックされた信号のレベルがＨレベルである場合、入力バッファ１０の回路閾値が基準値（例えば、Ｖｃｃｑ／２）より高くなるようにベータ比（βｐ／βｎ）を上げる（図８（ａ）参照）。制御部２０は、フィードバック部４０によりフィードバックされた信号のレベルがＬレベルである場合、入力バッファ１０の回路閾値が基準値（例えば、Ｖｃｃｑ／２）より低くなるようにベータ比（βｐ／βｎ）を下げる（図８（ａ）参照）。これにより、図１０に破線の波形で示されるように、入力バッファ１０の回路閾値が基準値である場合（実線の波形）に比べて、仮想的にスルーレートを速くすることができる。この結果、信号間干渉による信号の劣化を低減でき、動作波形におけるタイミングマージン（図１０の矢印ＴＭ参照）と振幅マージン（図１０の矢印ＡＭ１〜ＡＭ６参照）とを広く確保できるので、誤書き込みを抑制でき、ひいては誤読み出しを抑制できる。また、出力回路の負担を小さくすることが可能になると同時に、出力バッファサイズを小さくすることが可能になることにより消費電流を削減することも可能になる。
【００８４】
特に、制御部２０は、フィードバック部４０によりフィードバックされた信号のレベルがＨレベルである場合、選択すべきＰＭＯＳトランジスタのディメンジョン（Ｗ／Ｌ）の合計を増やす動作と選択すべきＮＭＯＳトランジスタのディメンジョン（Ｗ／Ｌ）の合計を減らす動作との少なくとも一方を行う。すなわち、制御部２０は、入力バッファ１０の回路閾値が基準値に一致している場合（図９（ａ）参照）に比べて、駆動可能な状態にするＮＭＯＳトランジスタの数を変えずに、駆動可能な状態にするＰＭＯＳトランジスタの数を増やしている。これにより、例えば、選択すべきＮＭＯＳトランジスタのディメンジョン（Ｗ／Ｌ）の合計が変わらずに、選択すべきＰＭＯＳトランジスタのディメンジョン（Ｗ／Ｌ）の合計が増えるので、ベータ比（βｐ／βｎ）が（例えば１より）上がり、入力バッファ１０の回路閾値が基準値（例えば、Ｖｃｃｑ／２）より高くなる（図８（ａ）参照）ように制御できる。
【００８５】
また、制御部２０は、フィードバック部４０によりフィードバックされた信号のレベルがＬレベルである場合、選択すべきＰＭＯＳトランジスタのディメンジョンの合計を減らす動作と選択すべきＮＭＯＳトランジスタのディメンジョンの合計を増やす動作との少なくとも一方を行う。すなわち、制御部２０は、入力バッファ１０の回路閾値が基準値に一致している場合（図９（ａ）参照）に比べて、駆動可能な状態にするＰＭＯＳトランジスタの数を変えずに、駆動可能な状態にするＮＭＯＳトランジスタの数を増やしている。これにより、例えば、選択すべきＰＭＯＳトランジスタのディメンジョン（Ｗ／Ｌ）の合計が変わらずに、選択すべきＮＭＯＳトランジスタのディメンジョン（Ｗ／Ｌ）の合計が増えるので、ベータ比（βｐ／βｎ）が（例えば１より）下がり、入力バッファ１０の回路閾値が基準値（例えば、Ｖｃｃｑ／２）より低くなる（図８（ａ）参照）ように制御できる。
【００８６】
あるいは、仮に、図１５に示すように、フィードバック部４０（図３参照）を有していない入力回路ＲＸ９００について考える。この入力回路ＲＸ９００では、入力バッファ９１０から転送された信号を保持部９３０がクロックに同期して保持するととともに保持している信号を出力するが、保持部９３０からどのようなレベルの信号が出力されているのかを制御部２０が把握できない。この構成では、信号間干渉による信号レベルの劣化を低減することが困難である。
【００８７】
それに対して、実施の形態にかかる入力回路ＲＸでは、入力バッファ１０から転送された信号を保持部３０がクロックに同期して保持するととともに保持している信号を出力し、保持部３０から出力された信号をフィードバック部４０が制御部２０へフィードバックしている。この構成は、上記のように、制御部２０が、入力バッファ１０の回路閾値がフィードバック部４０によりフィードバックされた信号のレベルに近づく方向へ入力バッファ１０の回路閾値を変更するような制御を行なうのに適した構成である。すなわち、実施の形態によれば、信号間干渉による信号レベルの劣化を低減することに適した入力回路ＲＸを提供できる。
【００８８】
なお、フィードバック部４０によりフィードバックされた信号のレベルがＨレベルかＬレベルかで変更するＰＭＯＳトランジスタ及びＮＭＯＳトランジスタの数は、コントローラ１における入力回路ＲＸ０とＮＡＮＤメモリ３−１〜３−ｎにおける入力回路ＲＸ１〜ＲＸｎとの全てに対して、共通に設定されていてもよいし、個別に設定されていても良い。これらの設定のためのデータは、対応するＮＡＮＤメモリのＲＯＭＦＵＳＥに格納されている。例えば、複数ＮＡＮＤメモリ（半導体チップ）が同一チャネル（バス）に接続されている場合は、それぞれのＮＡＮＤメモリ（半導体チップ）それぞれが、同一の設定値を有していても良いし、異なる設定値を有していてもよい。
【００８９】
また、図７に示す実動作（図５のステップＳ２）において、コントローラ１は、ＮＡＮＤメモリの入力回路へ、書き込みデータを転送する前に、所定のデータを少なくとも１クロックサイクル分送信してもよい。この場合、初期設定から実動作までの間に入力バッファにおける各トランジスタ特性が径時変化した場合でも、入力バッファの回路閾値が基準値（Ｖｃｃｑ／２）になる動作条件を正確に設定し、その基準値から入力バッファの回路閾値を変更することが可能になる。
【００９０】
また、図３に示す保持部３０は、フリップフロップ回路３１に代えて、出力ノードＮ１〜Ｎ３とアンプ３２、３３との間で直列接続されたｋ（ｋは２以上の整数）個のフリップフロップ回路を有していても良い。この場合、制御部２０は、クロックＲＥＬＡＴのｋクロックサイクル前の信号のレベルに応じて、複数のＰＭＯＳトランジスタＰＭ１〜ＰＭ３から選択して動作可能な状態に制御するＰＭＯＳトランジスタを動的に変更するとともに、複数のＮＭＯＳトランジスタＮＭ１〜ＮＭ３から選択して動作可能な状態に制御するＮＭＯＳトランジスタを動的に変更することになる。
【００９１】
さらに、フィードバック部４０は、直列接続されたｋ個のフリップフロップ回路の出力のうちｐ個（２≦ｐ≦ｋ）のフリップフロップ回路の出力をパラレルに制御部２０へフィードバックさせても良い。この場合、制御部２０は、新しい信号のレベルほど、その信号のレベルに応じて変化させるトランジスタのディメンジョンを大きくしてもよい。例えば、フィードバック部４０が１段目のフリップフロップ回路の出力と２段目のフリップの出力とを制御部２０にフィードバックする場合、制御部２０は、１クロックサイクル前の信号のレベルと、２クロックサイクル前の信号のレベルとを受ける。このとき、制御部２０は、１クロックサイクル前の信号のレベルに応じて変更するトランジスタのディメンジョンを、２クロックサイクル前の信号のレベルに応じて変更するトランジスタのディメンジョンより大きくする。これにより、２クロックサイクル前の信号のレベルよりも１クロックサイクル前の信号のレベルの方が現在の信号レベルに与える影響度合いが大きい、すなわち新しい信号のレベルほど現在の信号レベルに与える影響度合いが大きいことに応じたディメンジョンの変更を行なうことができる。
【００９２】
また、入力バッファにおいて、複数のＰＭＯＳトランジスタの間でディメンジョン（Ｗ／Ｌ）が異なり、複数のＮＭＯＳトランジスタの間でディメンジョン（Ｗ／Ｌ）が異なっていても良い。例えば、図８（ｂ）に示すように、入力バッファ１０ｉは、チャネル長がいずれも均等な値ｌでありチャネル幅がそれぞれｗ、２ｗ、４ｗ、８ｗである複数のＰＭＯＳトランジスタＰＭ１ｉ、ＰＭ２ｉ、ＰＭ３ｉ、ＰＭ４ｉと、チャネル長がいずれも均等な値ｌ’でありチャネル幅がそれぞれｗ’、２ｗ’、４ｗ’、８ｗ’である複数のＮＭＯＳトランジスタＮＭ１ｉ、ＮＭ２ｉ、ＮＭ３ｉ、ＮＭ４ｉとを有していても良い。この場合、複数のＰＭＯＳトランジスタＰＭ１ｉ〜ＰＭ４ｉにおける動作可能な状態にするＰＭＯＳトランジスタのディメンジョンの合計を、ｗ／ｌの整数倍（１倍、２倍、３倍、４倍、５倍、・・・）で（トランジスタ数より多い段階数で）変更することができる。同様に、複数のＮＭＯＳトランジスタＮＭ１ｉ〜ＮＭ４ｉにおける動作可能な状態にするＮＭＯＳトランジスタのディメンジョンの合計を、ｗ’／ｌ’ の整数倍（１倍、２倍、３倍、４倍、５倍、・・・）で（トランジスタ数より多い段階数で）変更することができる。
【００９３】
あるいは、例えば、図示しないが、入力バッファは、チャネル幅がいずれも均等な値ｗでありチャネル長がそれぞれ８ｌ、４ｌ、２ｌ、ｌである複数のＰＭＯＳトランジスタと、チャネル幅がいずれも均等な値ｗ’でありチャネル長がそれぞれ８ｌ’、４ｌ’、２ｌ’、ｌ’である複数のＮＭＯＳトランジスタとを有していても良い。この場合、複数のＰＭＯＳトランジスタにおける動作可能な状態にするＰＭＯＳトランジスタのディメンジョンの合計を、ｗ／（８ｌ）の整数倍（１倍、２倍、３倍、４倍、５倍、・・・）で（トランジスタ数より多い段階数で）変更することができる。同様に、複数のＮＭＯＳトランジスタにおける動作可能な状態にするＮＭＯＳトランジスタのディメンジョンの合計を、ｗ’／（８ｌ’） の整数倍（１倍、２倍、３倍、４倍、５倍、・・・）で（トランジスタ数より多い段階数で）変更することができる。
【００９４】
また、コントローラ１やＮＡＮＤメモリ３−１〜３−ｎは、それぞれ、入力回路ＲＸとは別に、入力バッファ１０の回路閾値を基準値（例えば、Ｖｃｃｑ／２）に自動で設定するためのダミー入力回路ＲＸｄをさらに有していても良い。ダミー入力回路ＲＸｄは、入力バッファ１０、制御部２０、及びフィードバック部４０を有している点で入力回路ＲＸと同様であるが、設定部５０ｄを有している点で入力回路ＲＸと異なる。設定部５０ｄは、コントローラ１から転送されたテストイネーブル信号（テストパターン）ＴＥＳＴＥＮｎを受ける。トランスファーゲートＴＧは、テストイネーブル信号ＴＥＳＴＥＮｎとインバータＩＮＶｄにより論理反転された信号とを受けてオンし、入力バッファ１０の出力ノードと入力ノードとをショートさせる。これにより、入力バッファ１０の回路閾値がコンパレータＣＯＭＰの第１入力端子へ供給される。一方、コンパレータＣＯＭＰの第２の入力端子には、ＮＡＮＤメモリの内部回路（ＮＡＮＤフラッシュメモリ）に予め格納されたＶｃｃｑ／２を示す信号が供給されている。コンパレータＣＯＭＰから出力された比較結果を示す信号は、フィードバック部４０により制御部２０へフィードバックされる。これにより、制御部２０は、フィードバックされた比較結果に応じて、入力バッファ１０の回路閾値を基準値（例えば、Ｖｃｃｑ／２）に自動で設定することができる。そして、ダミー入力回路ＲＸｄは設定に使用した制御信号（ＲＥＮ１〜ＲＥＮ３、ＲＥＮｎ１〜ＲＥＮｎ３）を入力回路ＲＸの制御部２０へ供給できる。これにより、入力回路ＲＸは、入力バッファ１０の回路閾値を基準値に設定できる。
【００９５】
このとき、予め定められたデータパターンを出力するコントローラ又はＮＡＮＤメモリにおける出力回路は、通常の駆動能力よりあらかじめ定められた分だけ劣化させて（厳しい条件にして）入力回路の動作条件の設定を行ってもよい。これにより、実動作時にはより緩和された条件で動作するので、出力回路を安定した状態で動作させることが容易になる。
【００９６】
さらに、初期設定（図５のステップＳ１）において、ＮＡＮＤ側の入力回路のテスト動作に加えて、コントローラ側の入力回路のテスト動作が行なわれてもよい。すなわち、図６に示す動作に代えて図１２に示す動作が行なわれてもよい。図１２では、次の点で図６と異なる動作が行なわれる。
【００９７】
ステップＳ１４では、コントローラ１が、出力信号パターンと正解パターンとが一致していると判断した場合、処理をステップＳ２１へ進める。
【００９８】
ステップＳ２１では、コントローラ１が、初期設定システムに従って、コントローラ側のテスト動作の開始を通知するための開始コマンドをＮＡＮＤメモリ３内のテスト回路（図示せず）へ転送する。このとき、コントローラ１は、ＮＡＮＤメモリ３へ転送する際の開始コマンドのデータ転送レートを、開始コマンドを正しいレベルで転送するのに十分な低い速度（例えば、４０Ｍｂｐｓ）に制御する。一方、コントローラ１内の比較回路（図示せず）は、内部回路ＩＣ内のＲＯＭ領域に予め格納されている正解パターンを読み出し保持しておく。
【００９９】
ステップＳ２２では、ＮＡＮＤメモリ３内のテスト回路が、開始コマンド（又は変更コマンド）を受けたことに応じて、上記の正解パターンに対応したテストパターンとして、内部回路（ＮＡＮＤフラッシュメモリ）ＩＣ内のＲＯＭ領域に予め格納されているテストパターンを読み出す。また、ＮＡＮＤメモリ３内のテスト回路は、ＮＡＮＤメモリ３内のＲＯＭＦＵＳＥに格納されている入力バッファ１０に関する複数の動作条件からまだ選択されていない１つの動作条件を選択する。ＮＡＮＤメモリ３内のテスト回路は、選択された動作条件に従って、制御信号ＥＮｂ１、ＥＮｂ２、ＥＮｂ３、ＲＥＮ１、ＲＥＮ２、ＲＥＮ３、ＥＮ１、ＥＮ２、ＥＮ３、ＲＥＮｎ１、ＲＥＮｎ２、ＲＥＮｎ３を生成する。ＮＡＮＤメモリ３内のテスト回路は、テストパターンと制御信号ＥＮｂ１〜ＲＥＮｎ３とをコントローラ１内の入力回路ＲＸへ転送する。ＮＡＮＤメモリ３のテスト回路は、例えば、コントローラ１内の入力回路ＲＸの入力端子ＴＭｉｎへテストパターンを転送するとともに、入力回路ＲＸにおけるデコーダ２１ａ、２１ｂの制御端子（図４参照）へ制御信号を転送する。このとき、ＮＡＮＤメモリ３のテスト回路は、コントローラ１へ転送する際のテストパターンのデータ転送レートを、実動作時と同様の速度にするために、ステップＳ２１より高い速度（例えば、４００Ｍｂｐｓ）に制御する。
【０１００】
そして、入力回路ＲＸの制御部２０は、受けた制御信号ＥＮｂ１〜ＲＥＮｎ３に応じて、複数のＰＭＯＳトランジスタＰＭ１〜ＰＭ３及び複数のＮＭＯＳトランジスタＮＭ１〜ＮＭ３の動作条件を設定する。すなわち、制御部２０は、複数のＰＭＯＳトランジスタＰＭ１〜ＰＭ３から１以上のＰＭＯＳトランジスタを選択して動作可能な状態に制御するとともに、複数のＮＭＯＳトランジスタＮＭ１〜ＮＭ３から１以上のＮＭＯＳトランジスタを選択して動作可能な状態に制御する。そして、入力回路ＲＸにおいて、入力バッファ１０が入力されたテストパターンのバッファリングを行い、保持部３０が入力バッファ１０から転送された信号をクロックＲＥＬＡＴに同期して保持するとともに保持している信号を出力端子ＴＭｏｕｔへ出力する。
【０１０１】
ステップＳ２３では、コントローラ１内の比較回路が、入力回路ＲＸから出力された信号のパターン（出力信号パターン）と保持しておいた正解パターンとを比較し、比較結果をフラグとして保持しておく。フラグは、例えば、一致していたか否かを示す値を有している。そして、コントローラ１は、そのフラグの値に応じて、出力信号パターンと正解パターンとが一致していると判断した場合、処理を終了し、出力信号パターンと正解パターンとが一致していないと判断した場合、処理をステップＳ２４へ進める。
【０１０２】
ステップＳ２４では、コントローラ１が、動作条件を変更すべきであることを通知するための変更コマンドをＮＡＮＤメモリ３内のテスト回路（図示せず）へ転送する。このとき、コントローラ１は、ＮＡＮＤメモリ３へ転送する際の変更コマンドのデータ転送レートを、変更コマンドを正しいレベルで転送するのに十分な低い速度（例えば、４０Ｍｂｐｓ）に制御する。テスト回路は、変更コマンドを受けたことに応じて、処理をステップＳ２２へ進める。
【０１０３】
このステップＳ２２〜Ｓ２４は、出力信号パターンと正解パターンとが一致するまで繰り返される。出力信号パターンと正解パターンとが一致すると初期設定（図５のステップＳ１）が終了する。これにより、ＮＡＮＤ側の入力回路ＲＸに加えてコントローラ１側の入力回路ＲＸにおいて、入力バッファ１０の回路閾値が基準値（例えば、Ｖｃｃｑ／２）に一致するように調整される。
【０１０４】
あるいは、初期設定（図５のステップＳ１）において、ＮＡＮＤ側の入力回路のテスト動作において、正解パターンがコントローラ１からＮＡＮＤメモリ３へ転送されてもよい。すなわち、図６に示す動作に代えて図１３に示す動作が行なわれてもよい。図１３では、次の点で図６と異なる動作が行なわれる。
【０１０５】
ステップＳ１２では、ＮＡＮＤメモリ３内の比較回路が、開始コマンドを受けたことに応じて、正解パターンの転送を待つ待機状態に入る。
【０１０６】
ステップＳ３１は、ステップＳ１２の後であってステップＳ１３の前に行なわれる。ステップＳ３１では、コントローラ１が、内部回路ＩＣ内のＲＯＭ領域に予め格納されている正解パターンを読み出す。コントローラ１は、正解パターンをＮＡＮＤメモリ３内の比較回路へ転送する。このとき、コントローラ１は、ＮＡＮＤメモリ３へ転送する際の正解パターンのデータ転送レートを、正解パターンを正しいレベルで転送するのに十分な低い速度（例えば、４０Ｍｂｐｓ）に制御する。ＮＡＮＤメモリ３内の比較回路は、受けた正解パターンを保持しておく。
【０１０７】
このように、正解パターンがコントローラ１からＮＡＮＤメモリ３へ転送されるので、ＮＡＮＤメモリ３における内部回路（ＮＡＮＤフラッシュメモリ）ＩＣ内のＲＯＭ領域に正解パターンを格納しておく必要がない。これにより、ＮＡＮＤメモリ３におけるＲＯＭ領域が正解パターンで消費されることを抑制できる。
【０１０８】
あるいは、初期設定（図５のステップＳ１）において、正解パターンが転送される動作が、ＮＡＮＤ側の入力回路のテスト動作に加えて、コントローラ側の入力回路のテスト動作で行なわれてもよい。すなわち、図１２及び図１３に示す動作に代えて図１４に示す動作が行なわれてもよい。図１４では、次の点で図１２及び図１３と異なる動作が行なわれる。
【０１０９】
ステップＳ４１は、ステップＳ２１の後であってステップＳ２２の前に行なわれる。ステップＳ４１では、コントローラ１が、上記の正解パターンに対応したテストパターンを生成する。コントローラ１は、テストパターンをＮＡＮＤメモリ３内のテスト回路へ転送する。このとき、コントローラ１は、ＮＡＮＤメモリ３内のテスト回路へ転送する際のテストパターンのデータ転送レートを、テストパターンを正しいレベルで転送するのに十分な低い速度（例えば、４０Ｍｂｐｓ）に制御する。ＮＡＮＤメモリ３内のテスト回路は、受けたテストパターンを保持しておく。
【０１１０】
このように、テストパターンがコントローラ１からＮＡＮＤメモリ３へ転送されるので、ＮＡＮＤメモリ３における内部回路（ＮＡＮＤフラッシュメモリ）ＩＣ内のＲＯＭ領域にテストパターンを格納しておく必要がない。これにより、ＮＡＮＤメモリ３におけるＲＯＭ領域が正解パターンで消費されることを抑制できることに加えてテストパターンで消費されることも抑制できる。
【符号の説明】
【０１１１】
１  コントローラ、  ２  チャネル、  ３、３−１〜３−ｎ  ＮＡＮＤメモリ、  １０、１０ｉ、９１０  入力バッファ、  ２０、２０ａ、２０ｂ、９２０  制御部、  ２１ａ、２１ｂ  デコーダ、  ３０、９３０  保持部、  ３１  フリップフロップ回路、  ３２、３３  アンプ、  ４０  フィードバック部、  ４０ａ、４０ｂ  フィードバックライン、  ５０ｄ  設定部、  ＢＷ  ボンディングワイヤ、  ＣＯＭＰ  コンパレータ、  ＣＰ１〜ＣＰｍ  半導体チップ、  ＩＣ０〜ＩＣｎ  内部回路、  ＩＮＶ１〜ＩＮＶ３  ＣＭＯＳインバータ、  ＩＮＶａ、ＩＮＶｂ、ＩＮＶｄ  インバータ、  Ｎ１〜Ｎ３  出力ノード、  ＮＡＮＤ１〜ＮＡＮＤ６  ＮＡＮＤゲート、  ＮＭ１〜ＮＭ３、ＮＭ１ｉ〜ＮＭ４ｉ  ＮＭＯＳトランジスタ、  ＮＯＲ１〜ＮＯＲ６  ＮＯＲゲート、  ＰＤ１〜ＰＤｍ  パッド電極、  ＰＫ１  半導体パッケージ、  ＰＭ１〜ＰＭ３、ＰＭ１ｉ〜ＰＭ４ｉ  ＰＭＯＳトランジスタ、  ＲＸ、ＲＸ０〜ＲＸｎ、ＲＸ９００  入力回路、  ＲＸｄ  ダミー入力回路、  ＳＷ１ａ〜ＳＷ３ａ、ＳＷ１ｂ〜ＳＷ３ｂ  スイッチ、  ＴＧ  トランスファーゲート、  ＴＭ、ＴＭ１〜ＴＭ１７  外部端子、  ＴＭｃｋ  クロック端子、  ＴＭｉｎ  入力端子、  ＴＭｏｕｔ  出力端子、  ＴＸ０〜ＴＸｎ  出力回路。
【図１】
2012029256.tif 000003
【図２】
2012029256.tif 000004
【図３】
2012029256.tif 000005
【図４】
2012029256.tif 000006
【図５】
2012029256.tif 000007
【図６】
2012029256.tif 000008
【図７】
2012029256.tif 000009
【図８】
2012029256.tif 000010
【図９】
2012029256.tif 000011
【図１０】
2012029256.tif 000012
【図１１】
2012029256.tif 000013
【図１２】
2012029256.tif 000014
【図１３】
2012029256.tif 000015
【図１４】
2012029256.tif 000016
【図１５】
2012029256.tif 000017
【図１６】
2012029256.tif 000018
【図１７】
2012029256.tif 000019