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

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

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

<>
  • 特開-メモリシステム 図1
  • 特開-メモリシステム 図2
  • 特開-メモリシステム 図3
  • 特開-メモリシステム 図4
  • 特開-メモリシステム 図5
  • 特開-メモリシステム 図6
  • 特開-メモリシステム 図7
  • 特開-メモリシステム 図8
  • 特開-メモリシステム 図9
  • 特開-メモリシステム 図10
  • 特開-メモリシステム 図11
  • 特開-メモリシステム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022141178
(43)【公開日】2022-09-29
(54)【発明の名称】メモリシステム
(51)【国際特許分類】
   G06F 12/00 20060101AFI20220921BHJP
   G06F 13/16 20060101ALI20220921BHJP
   G11C 7/10 20060101ALI20220921BHJP
   G11C 8/12 20060101ALI20220921BHJP
   G06F 13/36 20060101ALI20220921BHJP
   G06F 13/38 20060101ALI20220921BHJP
   G06F 13/42 20060101ALI20220921BHJP
【FI】
G06F12/00 564A
G06F13/16 510B
G11C7/10 100
G11C7/10 455
G11C8/12 200
G06F13/36 530C
G06F13/38 350
G06F13/42 310
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2021041369
(22)【出願日】2021-03-15
(71)【出願人】
【識別番号】318010018
【氏名又は名称】キオクシア株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】坂上 健二
【テーマコード(参考)】
5B061
5B077
5B160
【Fターム(参考)】
5B061SS01
5B077NN02
5B077NN03
5B160CC01
5B160MB00
(57)【要約】      (修正有)
【課題】信号を適切に伝送できるメモリシステムを提供する。
【解決手段】メモリシステム1は、コントローラ2と複数のメモリチップ3-1~3-4とチャネルCHとを有する。コントローラは、クロック、タイミング制御信号及びデータ信号を出力する。複数のメモリチップのそれぞれは、少なくともクロック入力端子、タイミング制御入力端子、タイミング制御出力端子、データ入力端子及びデータ出力端子を有する。チャネルは、ループバスLBを含む。ループバスは、コントローラ及び複数のメモリチップをリング状に接続する。コントローラは、チャネルを介してクロック信号及びタイミング制御信号を複数のメモリチップに伝送し、メモリチップの動作タイミングを制御可能である。
【選択図】図1
【特許請求の範囲】
【請求項1】
クロック信号、タイミング制御信号、及びデータ信号を出力するコントローラと、
それぞれが少なくともクロック入力端子、タイミング制御入力端子、タイミング制御出力端子、データ入力端子、データ出力端子を有する複数のメモリチップと、
前記コントローラ及び前記複数のメモリチップをリング状に接続するループバスを含むチャネルと、
を備え、
前記コントローラは、前記チャネルを介して前記クロック信号及び前記タイミング制御信号を前記複数のメモリチップに伝送し、前記メモリチップの動作タイミングを制御可能である
メモリシステム。
【請求項2】
前記コントローラは、前記チャネルを介して前記複数のメモリチップに一括してアクセスしてデータのライト及びリードの少なくとも一方を行わせることが可能である
請求項1に記載のメモリシステム。
【請求項3】
前記コントローラは、前記チャネルを介して前記複数のメモリチップのうち少なくとも1つのメモリチップに選択的にアクセスしてデータのライト及びリードの少なくとも一方を行わせることが可能である
請求項1に記載のメモリシステム。
【請求項4】
前記コントローラは、イネーブルにするメモリチップを指定するコマンドを前記データ信号として前記チャネルへ出力し、前記指定されたメモリチップにアクセスする
請求項2又は3に記載のメモリシステム。
【請求項5】
前記メモリチップは、チップイネーブル入力端子をさらに有し、
前記コントローラは、イネーブルにするメモリチップを指定するチップイネーブル信号を前記チャネルへ出力し、
前記メモリチップは、前記チップイネーブル入力端子から入力されたチップイネーブル信号によって指定される
請求項2又は3に記載のメモリシステム。
【請求項6】
前記チャネルは、前記コントローラに対して前記複数のメモリチップを並列に接続する並列バスをさらに含み、
前記並列バスは、前記チップイネーブル信号を前記複数のメモリチップに並列に伝送し、
前記ループバスは、前記タイミング制御信号及び前記データ信号のそれぞれを前記複数のメモリチップに順次に伝送する
請求項5に記載のメモリシステム。
【請求項7】
前記メモリチップは、
伝送されたクロック信号に応じたクロック信号を生成するクロック生成回路と、
前記タイミング制御入力端子を介して入力された前記タイミング制御信号を前記生成されたクロック信号に同期して前記タイミング制御出力端子の側へ転送する第1の転送回路と、
前記データ入力端子を介して入力された前記データ信号を前記生成されたクロック信号に同期して前記データ出力端子の側へ転送する第2の転送回路と、
をさらに有する
請求項1に記載のメモリシステム。
【請求項8】
前記メモリチップは、クロック出力端子をさらに有し、
前記ループバスは、前記クロック信号に応じたクロック信号、前記タイミング制御信号、前記データ信号のそれぞれを前記複数のメモリチップに順次に伝送する
請求項7に記載のメモリシステム。
【請求項9】
前記チャネルは、前記コントローラに対して前記複数のメモリチップを並列に接続する並列バスをさらに含み、
前記並列バスは、前記クロック信号を前記複数のメモリチップに並列に伝送し、
前記ループバスは、前記タイミング制御信号、前記データ信号のそれぞれを前記複数のメモリチップに順次に伝送する
請求項7に記載のメモリシステム。
【請求項10】
前記メモリチップは、SPI(Serial Peripheral Interface)規格に準拠したコマンドを実行可能である
請求項1に記載のメモリシステム。
【請求項11】
Nを4以上の整数するとき、前記メモリチップは、N個の前記データ入力端子、N個の前記データ出力端子を有し、
前記チャネルは、Nビット幅で前記データ信号を伝送可能であり、
前記コントローラは、前記チャネルを介して前記複数のメモリチップのうち少なくとも1つのメモリチップにアクセスし、前記クロック信号の1サイクル当たりNビットのデータのライト及びリードの少なくとも一方を行うことが可能である
請求項1に記載のメモリシステム。
【請求項12】
前記コントローラは、前記チャネルを介して前記複数のメモリチップに、前記SPI規格に準拠したコマンドを一括実行させることが可能である
請求項10に記載のメモリシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本実施形態は、メモリシステムに関する。
【背景技術】
【0002】
コントローラとメモリチップとを有するメモリシステムでは、コントローラからチャネルを介してメモリチップへ信号が伝送される。このとき、信号を適切に伝送することが望まれる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第5467134号公報
【特許文献2】特開2006-127653号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
一つの実施形態は、信号を適切に伝送できるメモリシステムを提供することを目的とする。
【課題を解決するための手段】
【0005】
一つの実施形態によれば、コントローラと複数のメモリチップとチャネルとを有するメモリシステムが提供される。コントローラは、クロック、タイミング制御信号、及びデータ信号を出力する。複数のメモリチップのそれぞれは、少なくともクロック入力端子、タイミング制御入力端子、タイミング制御出力端子、データ入力端子、データ出力端子を有する。チャネルは、ループバスを含む。ループバスは、コントローラ及び複数のメモリチップをリング状に接続する。コントローラは、チャネルを介してクロック信号及びタイミング制御信号を複数のメモリチップに伝送し、メモリチップの動作タイミングを制御可能である。
【図面の簡単な説明】
【0006】
図1】第1の実施形態に係るメモリシステムの構成を示す図。
図2】第1の実施形態におけるコマンドの構成を示す図。
図3】第1の実施形態におけるチップイネーブルコマンドの構成を示す図。
図4】第1の実施形態におけるメモリチップの構成を示す図。
図5】第1の実施形態に係るメモリシステムの動作を示す波形図。
図6】第2の実施形態におけるメモリチップの構成を示す図。
図7】第3の実施形態に係るメモリシステムの構成を示す図。
図8】第3の実施形態におけるメモリチップの構成を示す図。
図9】第4の実施形態に係るメモリシステムの構成を示す図。
図10】第4の実施形態におけるメモリチップの構成を示す図。
図11】第5の実施形態に係るメモリシステムの構成を示す図。
図12】第5の実施形態におけるメモリチップの構成を示す図。
【発明を実施するための形態】
【0007】
以下に添付図面を参照して、実施形態にかかるメモリシステムを詳細に説明する。なお、これらの実施形態により本発明が限定されるものではない。
【0008】
(第1の実施形態)
第1の実施形態にかかるメモリシステムは、コントローラとメモリチップとを有する。メモリシステムでは、コントローラからチャネルを介してメモリチップへ信号が伝送される。メモリシステムは、SPI(Serial Peripheral Interface)規格などの低速シリアルインターフェース規格に準拠して構成され得る。低速インターフェース規格では、低速の通信で十分に機能し得るマスター及びスレーブに対して、パッケージの小型化及び省ピン化できる形態を提供することが想定されている。
【0009】
例えば、コントローラとNAND型フラッシュメモリであるメモリチップとに対してSPI規格を適用することで、バス配線数の少ないSPI_NAND型のメモリシステムが構成され得る。SPI_NAND型のメモリシステムは、主にNOR型フラッシュメモリの代替で、ブートコード格納等に使うことを前提とした仕様になっている。SPI_NAND型のメモリシステムでは、コントローラがマスターとして、メモリチップがスレーブとして構成される。
【0010】
低速シリアルインターフェース規格では、マスターからシステムクロックとタイミング制御信号とがスレーブへ供給される。スレーブは、システムクロックに同期して、タイミング制御信号がアクティブベルになったタイミングでバリッドとなり動作可能な状態になる。これにより、マスターがスレーブの動作タイミングを制御できる。
【0011】
メモリシステムでは、SPI規格等の低速シリアルインターフェース規格に応じて、1チャネルに直接接続可能なチップ数が1個に制限され得る。このため、メモリ容量を増やすために、追加したいチップ数の個数でチャネルをコントローラに追加的に設けると、実装コストが大幅に増加する可能性がある。例えば、単一のメモリチップのみ実装し、ブートコードを格納している状況で、読み出しエラーが発生した場合のバックアップ機構を複数メモリチップで構築したいことがある。この場合、コントローラに複数個のチャネルを追加すると、コントローラのハードウェア構成を大幅に変更することになり、実装コストが大幅に増加し得る。
【0012】
また、要求される実装コストを満たすために、追加可能なチャネル数が制限されると、追加可能なチップ数がそのチャネル数に制限され、メモリ容量の拡張が困難になる。例えば、システム開発中に、ブートコードが1個のメモリチップに収まらない等の問題が発生したときに、拡張性に乏しく、柔軟に対応しにくい。
【0013】
そこで、本実施形態では、メモリシステムにおいて、コントローラ及び複数のメモリチップをループバスでリング接続する。コントローラは、システムクロック及びタイミング制御信号をループバス経由で複数のメモリチップに順次に伝送し各メモリチップの動作タイミングを制御可能に構成される。これにより、実装コストの抑制とメモリ容量の拡張性向上との両立化が図られる。
【0014】
具体的には、メモリシステム1は、図1に示すように構成され得る。図1は、メモリシステム1の構成を示す図である。メモリシステム1は、コントローラ2、複数のメモリチップ3-1~3-4及びチャネルCHを有する。
【0015】
コントローラ2は、出力端子2a~2c、出力端子群2g、及び入力端子2d~2fを有する。各メモリチップ3-1~3-4は、入力端子3a~3c、入力端子群3g、及び出力端子3d~3fを有する。各出力端子及び各入力端子は、SPI等の低速シリアルインターフェース規格に応じて構成され得る。チャネルCHは、ループバスLB及び並列バスPBを含む。
【0016】
ループバスLBは、コントローラ2及び複数のメモリチップ3-1~3-4をリング状に接続する。図1では、ループバスLBでリング状に接続されるメモリチップ3の数が4個の場合が例示されているが、ループバスLBでリング状に接続されるメモリチップ3の数は、2個でもよいし、3個でもよいし、5個以上でもよい。ループバスLBは、複数の信号線SL1~SL3を含む。
【0017】
信号線SL1は、コントローラ2の出力端子2aからメモリチップ3-1の入力端子3a、出力端子3d、メモリチップ3-2の入力端子3a、出力端子3d、メモリチップ3-3の入力端子3a、出力端子3d、メモリチップ3-4の入力端子3a、出力端子3dを経由して、コントローラ2の入力端子2dへ戻るように延びる。
【0018】
信号線SL1は、コントローラ2から出力されるシリアルデータ信号をメモリチップ3-1,3-2,3-3,3-4へ順次に伝送し、コントローラ2へ戻す。シリアルデータ信号は、例えば、シリアル形式のデータ信号である。コントローラ2の出力端子2a及び各メモリチップ3の出力端子3dから出力されるシリアルデータ信号をシリアルデータ出力SOと呼び、各メモリチップ3の入力端子3a及びコントローラ2の入力端子2dに入力されるシリアルデータ信号をシリアルデータ出力SIと呼ぶことがある。
【0019】
信号線SL2は、コントローラ2の出力端子2bからメモリチップ3-1の入力端子3b、出力端子3e、メモリチップ3-2の入力端子3b、出力端子3e、メモリチップ3-3の入力端子3b、出力端子3e、メモリチップ3-4の入力端子3b、出力端子3eを経由して、コントローラ2の入力端子2eへ戻るように延びる。
【0020】
信号線SL2は、コントローラ2から出力されるチップセレクト信号をメモリチップ3-1,3-2,3-3,3-4へ順次に伝送し、コントローラ2へ戻す。チップセレクト信号は、ローアクティブのタイミング制御信号であり、ローレベルになったタイミングで出力先のメモリチップ3がバリッドとなる。コントローラ2の出力端子2b及び各メモリチップ3の出力端子3eから出力されるチップセレクト信号をチップセレクト出力/CSOと呼び、各メモリチップ3の入力端子3b及びコントローラ2の入力端子2eに入力されるチップセレクト信号をチップセレクト入力/CSIと呼ぶことがある。
【0021】
信号線SL3は、コントローラ2の出力端子2cからメモリチップ3-1の入力端子3c、出力端子3f、メモリチップ3-2の入力端子3c、出力端子3f、メモリチップ3-3の入力端子3c、出力端子3f、メモリチップ3-4の入力端子3c、出力端子3fを経由して、コントローラ2の入力端子2eへ戻るように延びる。
【0022】
信号線SL3は、コントローラ2から出力されるシステムクロック信号をメモリチップ3-1,3-2,3-3,3-4へ順次に伝送し、コントローラ2へ戻す。システムクロック信号は、出力先のメモリチップ3で使用されるべきクロック信号となる。コントローラ2の出力端子2c及び各メモリチップ3の出力端子3fから出力されるシステムクロック信号をシステムクロック出力SCKOと呼び、各メモリチップ3の入力端子3c及びコントローラ2の入力端子2fに入力されるシステムクロック信号をシステムクロック入力SCKIと呼ぶことがある。
【0023】
並列バスPBは、コントローラ2に対して複数のメモリチップ3-1~3-4を並列に接続する。図1では、並列バスPBで並列に接続されるメモリチップ3の数が4個の場合が例示されているが、並列バスPBで並列に接続されるメモリチップ3の数は、2個でもよいし、3個でもよいし、5個以上でもよい。並列バスPBは、複数の信号線SL4,SL5を含む。
【0024】
信号線SL4,SL5は、コントローラ2の出力端子群2gから、メモリチップ3-1の入力端子群3g、メモリチップ3-2の入力端子群3g、メモリチップ3-3の入力端子群3g、メモリチップ3-4の入力端子群3gへそれぞれ延びる。
【0025】
信号線SL4は、コントローラ2から出力されるライトプロテクト信号を複数のメモリチップ3-1~3-4へ並行して伝送する。ライトプロテクト信号は、ローアクティブの信号であり、出力先のメモリチップ3への書き込みの禁止設定を抑止する際にローレベルにされる。
【0026】
信号線SL5は、コントローラ2から出力されるホールド信号を複数のメモリチップ3-1~3-4へ並行して伝送する。ホールド信号は、ローアクティブの信号であり、コントローラ2と出力先のメモリチップ3との間の通信を一時的に停止する際にローレベルにされる。
【0027】
メモリシステム1では、コントローラ2及び各メモリチップ3間がループバスLBを介して接続されていることで、SPI等の低速シリアルインターフェース規格を遵守しながら、1つのチャネルCHに接続可能なチップ数を拡張可能である。これにより、コントローラ2のハードウェア構成の大幅な変更を避けることができ、実装コストを抑制できる。また、コントローラ2は、信号を出力してからループバスLBを介して信号が戻ってくるまでの時間について(1チップのレイテンシー)×(チップ数分)に相当するレイテンシーを把握しておけば、信号の処理も問題なく行うことができる。
【0028】
例えば、コントローラ2は、システムクロック信号及びチップセレクト信号(タイミング制御信号)をループバスLBにより複数のメモリチップ3-1~3-4に順次に伝送し、メモリチップ3の動作タイミングを制御可能である。システムクロック信号及びチップセレクト信号は、SPI等の低速シリアルインターフェース規格に準拠した信号である。
【0029】
なお、各メモリチップ3は、レディービジー(R/B)端子を有しない。コントローラ2は、所定のメモリチップ3の指定を含むステータスリード指令を信号線SL1経由で複数のメモリチップ3-1~3-4に順次に伝送する。自チップの指定を含むステータスリード指令を受けると、メモリチップ3は、自チップがイネーブルされているか否かに関わらず、自チップのR/B状態を示すレスポンスを生成して出力する。コントローラ2は、信号線SL1を介してメモリチップ3からのレスポンスを受けることで、メモリチップ3のR/B状態を検知可能である。
【0030】
また、コントローラ2は、チップイネーブルコマンドCM16をループバスLBにより複数のメモリチップ3-1~3-4に順次に伝送し、複数のメモリチップ3-1~3-4のうちアクセスするメモリチップ3を指定することが可能である。チップイネーブルコマンドCM16は、SPI等の低速シリアルインターフェース規格に準拠して構成され得る。
【0031】
SPI等の低速シリアルインターフェース規格に準拠したコマンドシーケンスは、基本的に、先頭から、コマンド部CMD、アドレス部ADD、データ部DTを含む。コマンドによっては、データ部DTが省略されたり、アドレス部ADD及びデータ部DTが省略されることがある。また、コマンドによっては、さらに、コマンド部CMD及びアドレス部ADDの間やアドレス部ADD及びデータ部DTにダミー部DMを含むことがある。
【0032】
コマンド部CMDは、コマンドの識別子が含められる。アドレス部ADDは、出力先におけるアクセス位置を示すアドレスが含められる。データ部DTは、コマンドで処理すべきデータが含められる。ダミー部DMは、出力先のタイミング調整のために設けられている。
【0033】
例えば、各メモリチップ3は、図2に示す複数のコマンドCM1~CM15を実行可能である。図2は、コマンドCM1~CM15の構成を示す図であり、コマンドシーケンスを示している。各コマンドCM1~CM15は、SPI等の低速シリアルインターフェース規格に準拠している。各コマンドCM1~CM15のByte1は、コマンド部CMDを示している。Byte2以降は、コマンドごとに異なり得る。「Dummy」は、ダミー部DMを示し、「A(数字)」は、アドレス部ADDを示し、「D(数字)」、「D*」又は「ID」は、データ部DTを示す。
【0034】
各メモリチップ3が実行可能なコマンドとしてチップイネーブルコマンドCM16が追加される。チップイネーブルコマンドCM16のコマンドシーケンスは、例えば、図3に示すように、コマンド部CMD及びデータ部DTを含む。図3は、チップイネーブルコマンドCM16の構成を示す図である。コマンド部CMDは、CE_SET_CMD識別子を含む。CE_SET_CMD識別子は、そのコマンドがチップイネーブルコマンドであることを示し、例えば16進表記でFCに相当するビットパターンを含む。データ部DTは、イネーブルすべきメモリチップ3を指定する情報/CE[3:0]を含む。情報/CE[3:0]は、ローアクティブ(0アクティブ)の情報である。
【0035】
例えば、コントローラ2は、複数のメモリチップ3-1~3-4のうちメモリチップ3-2に選択的にアクセスする場合、/CE[3:0]=1101bのビットパターンを含むチップイネーブルコマンドCM16を生成する。コントローラ2は、出力端子2aからループバスLBの信号線SL1へチップイネーブルコマンドCM16を出力し、その後、ループバスLBの信号線SL1へライトコマンド及び/又はリードコマンドを出力する。チップイネーブルコマンドCM16がループバスLBの信号線SL1を介して複数のメモリチップ3-1~3-4へ順次に伝送され、それに続けて、ライトコマンド及び/又はリードコマンドがループバスLBの信号線SL1を介して複数のメモリチップ3-1~3-4へ順次に伝送される。これにより、コントローラ2は、ループバスLBの信号線SL1を介して複数のメモリチップ3-1~3-4のうち少なくとも1つのメモリチップ3に選択的にアクセスしてデータのライト及び/又はリードの少なくとも一方を行わせることが可能である。
【0036】
また、各メモリチップ3は、ループバスLBに対応した構成を有し、また、チップイネーブルコマンドCM16に対応した構成を有する。各メモリチップ3は、図4に示すように構成され得る。図4は、各メモリチップ3の構成を示す図である。
【0037】
各メモリチップ3は、メモリセルアレイ31、制御回路32、クロック生成回路33、転送回路34、及び転送回路35を有する。
【0038】
メモリセルアレイ31は、複数のメモリセルが配列されている。各メモリセルは、不揮発性のメモリセルであり、例えばNAND型フラッシュメモリセルである。複数のメモリセルは、複数行(複数ロウ)及び複数列(複数カラム)を構成するように2次元的に配列され、それぞれがロウアドレス及びカラムアドレスに対応付けられる。同一行にあるメモリセルは同一のワード線に接続され、同一列にあるメモリセルは同一のビット線に接続される。データの読み出し及び書き込みは、ページ単位で行われる。また、データの消去は、ブロック単位で行われる。同一のワード線に接続された複数のメモリセルを含む1つのメモリセルグループは、n個(nは、1以上の整数)のページに対応する。複数のメモリセルグループは、ブロックに対応する。
【0039】
制御回路32は、メモリチップ3の各部を統括的に制御する。制御回路32は、制御部321、データバッファ322、/CEレジスタ323、ステータスレジスタ324、コマンドレジスタ325、アドレスレジスタ326、インターフェース(I/F)部327、インターフェース(I/F)部328を有する。
【0040】
クロック生成回路33は、入力端子3c、制御回路32、転送回路34、転送回路35及び出力端子3fの間に電気的に接続される。クロック生成回路33は、入力端子3cを介して伝送されたシステムクロック信号を受け、伝送されたシステムクロック信号に応じたシステムクロック信号を生成する。クロック生成回路33は、システムクロック信号をバッファリングし、バッファリング期間に応じた遅延が付加されたシステムクロック信号を生成する。クロック生成回路33は、システムクロック信号を制御回路32、転送回路34及び転送回路35へ供給する。これにより、制御回路32、転送回路34、転送回路35は、共通のシステムクロック信号に同期して動作でき、互いに動作が同期され得る。また、クロック生成回路33は、システムクロック信号をさらにバッファリングし、バッファリング期間に応じた遅延がさらに付加されたシステムクロック信号を出力端子3fからシステムクロック信号SCKとして出力する。
【0041】
例えば、クロック生成回路33は、ドライバ331及びドライバ332を有する。ドライバ331は、入力ノードが入力端子3cに接続され、出力ノードが制御回路32、転送回路34、転送回路35、ドライバ332に接続される。ドライバ332は、入力ノードが制御回路32、転送回路34、転送回路35、ドライバ331に接続され、出力ノードが出力端子3fに接続される。
【0042】
ドライバ331は、入力端子3cを介してシステムクロック信号を受け、システムクロック信号をドライブするとともにバッファリングし、バッファリング期間に応じた遅延が付加されたシステムクロック信号を生成する。これにより、ドライバ331は、受けたシステムクロック信号に対して、波形が整形されタイミングが調整されたシステムクロック信号を生成できる。ドライバ331は、生成されたシステムクロック信号を制御回路32、転送回路34、転送回路35、ドライバ332へ供給する。これにより、制御回路32、転送回路34、転送回路35は、共通のシステムクロック信号に同期して動作でき、互いに動作が同期され得る。
【0043】
ドライバ332は、ドライバ331からシステムクロック信号を受け、システムクロック信号をさらにバッファリングし、バッファリング期間に応じた遅延がさらに付加されたシステムクロック信号を生成する。ドライバ332は、生成されたシステムクロック信号を出力端子3fから出力する。
【0044】
転送回路34は、入力端子3bを介して入力されたチップセレクト信号/CSをクロック生成回路33で生成されたクロック信号に同期して出力端子3eの側へ転送する。転送回路34は、ドライバ341、フリップフロップ342、遅延回路343、及びドライバ344を有する。
【0045】
ドライバ341は、入力ノードが入力端子3bに接続され、出力ノードが制御回路32及びフリップフロップ342に接続されている。フリップフロップ342は、データ入力端子がドライバ341に接続され、クロック入力端子がクロック生成回路33のドライバ331に接続され、データ出力端子が遅延回路343に接続されている。遅延回路343は、一端がフリップフロップ342に接続され、他端がドライバ344に接続されている。ドライバ344は、入力ノードが遅延回路343に接続され、出力ノードが出力端子3eに接続されている。
【0046】
ドライバ341は、入力端子3bを介してチップセレクト信号を受け、チップセレクト信号をドライブして制御回路32及びフリップフロップ342へ転送する。
【0047】
制御回路32において、チップセレクト信号をドライバ341からI/F部328経由で受けると、制御部321は、チップセレクト信号のレベルに応じて動作タイミングが制御され得る。制御部321は、チップセレクト信号がノンアクティブレベル(例えば、Hレベル)であれば、動作可能なタイミングになっていないと認識する。これにより、制御部321は、自チップがイネーブルされているかどうかに関わらずコマンドを受信しても処理しない。制御部321は、チップセレクト信号がアクティブレベル(例えば、Lレベル)であれば、動作可能なタイミングになったと認識する。これにより、制御部321は、自チップがイネーブルされていれば、コマンドを受信した際にそのコマンドを処理する。
【0048】
フリップフロップ342は、チップセレクト信号をドライバ331から受け、システムクロック信号をクロック生成回路33から受ける。フリップフロップ342は、システムクロック信号に同期してチップセレクト信号を遅延回路343経由でドライバ344へ転送する。遅延回路343は、クロック生成回路33との内部的な伝送遅延の違いを調整するための遅延量を有し、その遅延量が付与されたチップセレクト信号をドライバ344が受ける。これにより、ドライバ332がシステムクロック信号を受けるタイミングとドライバ344がチップセレクト信号を受けるタイミングとをほぼ同期させることができる。ドライバ344は、チップセレクト信号をドライブして出力端子3eから出力する。
【0049】
転送回路35は、入力端子3aを介して入力されたデータ信号Sをクロック生成回路33で生成されたクロック信号に同期して出力端子3dの側へ転送する。転送回路35は、ドライバ351、セレクタ352、フリップフロップ353、遅延回路354、及びドライバ355を有する。
【0050】
ドライバ351は、入力ノードが入力端子3aに接続され、出力ノードが制御回路32及びセレクタ352に接続されている。セレクタ352は、第1の入力ノードがドライバ351に接続され、第2の入力ノードが制御回路32に接続され、セレクトノードが制御回路32に接続され、出力ノードがフリップフロップ353に接続されている。フリップフロップ353は、データ入力端子がセレクタ352に接続され、クロック入力端子がクロック生成回路33のドライバ331に接続され、データ出力端子が遅延回路354に接続されている。遅延回路354は、一端がフリップフロップ353に接続され、他端がドライバ355に接続されている。ドライバ355は、入力ノードが遅延回路354に接続され、出力ノードが出力端子3dに接続されている。
【0051】
ドライバ351は、入力端子3aを介してデータ信号を受け、データ信号をドライブして制御回路32及びセレクタ352へ転送する。制御回路32において、チップイネーブルコマンドCM16をデータ信号としてI/F部327経由で受けた場合、制御部321は、そのデータ部DTに含まれた情報/CE[3:0]を/CEレジスタ323に格納する。他のコマンドCMをデータ信号として受けた場合、制御部321は、そのコマンド部CMDをコマンドレジスタ325へ格納し、そのアドレス部ADDをアドレスレジスタ326へ格納し、そのデータ部DTをデータバッファ322へ格納する。
【0052】
制御回路32において、制御部321は、/CEレジスタ323に格納された情報/CE[3:0]を参照し、情報/CE[3:0]に応じて自チップがディスエーブルされていると判断すると、第1の入力ノードを選択するセレクト信号を生成してセレクタ352のセレクトノードへ供給する。このとき、セレクタ352の第1の入力ノードには、ドライバ351からデータ信号が供給されている。
【0053】
制御部321は、/CEレジスタ323に格納された情報/CE[3:0]を参照し、情報/CE[3:0]に応じて自チップがイネーブルされていると判断すると、第2の入力ノードを選択するセレクト信号を生成してセレクタ352のセレクトノードへ供給する。それとともに、制御部321は、転送すべきデータ信号がデータバッファ322にあれば、データ信号をデータバッファ322から取得してセレクタ352の第2の入力ノードへ転送する。
【0054】
セレクタ352は、ドライバ351又は制御回路32から転送されたデータ信号をフリップフロップ353へさらに転送する。フリップフロップ353は、データ信号をセレクタ352から受け、システムクロック信号をクロック生成回路33から受ける。フリップフロップ353は、システムクロック信号に同期してデータ信号を遅延回路354経由でドライバ355へ転送する。遅延回路354は、クロック生成回路33との内部的な伝送遅延の違いを調整するための遅延量を有し、その遅延量が付与されたデータ信号をドライバ355が受ける。これにより、ドライバ332がシステムクロック信号を受けるタイミングとドライバ355がデータ信号を受けるタイミングとをほぼ同期させることができる。ドライバ355は、データ信号をドライブして出力端子3dから出力する。
【0055】
次に、メモリシステム1の動作について図5を用いて説明する。図5は、メモリシステム1の動作を示す波形図である。
【0056】
タイミングt1より前から、コントローラ2は、システムクロック信号SCKを出力端子2cから信号線SL3へ出力しており、システムクロック信号SCKが複数のメモリチップ3-1~3-4へ順次に伝送されている。例えば、コントローラ2は、メモリチップ3-2に選択的にアクセスして所定のコマンドを実行させたい場合、メモリチップ3-2のチップ指定を含むステータスリード指令を信号線SL1経由で複数のメモリチップ3-1~3-4へ順次に伝送する。コントローラ2は、メモリチップ3-2がレディー(R)状態であることを検知すると、情報“/CE[3:0]=1101b”を含むチップイネーブルコマンドCM1を信号線SL1経由で各メモリチップ3-1~3-4へ順次に伝送する。情報“/CE[3:0]=1101b”は、メモリチップ3-2を選択的にイネーブルすることを示している。各メモリチップ3-1~3-4の/CEレジスタ323には、情報“/CE[3:0]=1101b”を格納される。
【0057】
なお、コントローラ2の出力端子2c、各メモリチップ3-1~3-4の出力端子3eから出力されるシステムクロック信号SCKは、そのエッジタイミングに互いにずれがある。この場合でも、各メモリチップ3-1~3-4内の信号転送は、そのバッファリングした共通のシステムクロック信号SCKで適切に行われ得る。
【0058】
また、信号線SLによる伝送遅延は無視できるものとし、ループバスLBにおける伝送遅延は、実質的に各メモリチップ3-1~3-4内の信号転送に伴う遅延が支配的であるとする。
【0059】
タイミングt1において、コントローラ2は、出力端子2bから信号線SL2へ出力するチップセレクト信号CSをノンアクティブレベル(例えば、Hレベル)からアクティブレベル(例えば、Lレベル)へ遷移させ、出力端子2aから信号線SL1へデータ信号b0を出力し始める。これに応じて、メモリチップ3-1は、信号線SL2を介して入力端子3bで受けるチップセレクト信号CSがノンアクティブレベルからアクティブレベルへ遷移し、バリッド状態になる。バリッド状態になると、メモリチップ3-1は、/CEレジスタ323に格納された情報/CE[3:0]を確認する。メモリチップ3-1は、情報/CE[3:0]=1101bに基づき、自チップがイネーブルされていないことに応じて、データ信号b0を処理せずスルー(すなわち、そのまま内部転送)させる。
【0060】
タイミングt2において、メモリチップ3-1は、出力端子3eから信号線SL2へ出力するチップセレクト信号CSをノンアクティブレベル(例えば、Hレベル)からアクティブレベル(例えば、Lレベル)へ遷移させ、出力端子3dから信号線SL1へデータ信号b0を出力し始める。これに応じて、メモリチップ3-2は、信号線SL2を介して入力端子3bで受けるチップセレクト信号CSがノンアクティブレベルからアクティブレベルへ遷移し、バリッド状態になる。バリッド状態になると、メモリチップ3-2は、/CEレジスタ323に格納された情報/CE[3:0]を確認する。メモリチップ3-2は、情報/CE[3:0]=1101bに基づき、自チップがイネーブルされていないことに応じて、データ信号b0を処理せずスルー(すなわち、そのまま内部転送)させる。
【0061】
タイミングt3において、メモリチップ3-2は、出力端子3eから信号線SL2へ出力するチップセレクト信号CSをノンアクティブレベル(例えば、Hレベル)からアクティブレベル(例えば、Lレベル)へ遷移させ、出力端子3dから信号線SL1へデータ信号b0を出力し始める。これに応じて、メモリチップ3-3は、信号線SL2を介して入力端子3bで受けるチップセレクト信号CSがノンアクティブレベルからアクティブレベルへ遷移し、バリッド状態になる。バリッド状態になると、メモリチップ3-3は、/CEレジスタ323に格納された情報/CE[3:0]を確認する。メモリチップ3-3は、情報/CE[3:0]=1101bに基づき、自チップがイネーブルされていることに応じて、データ信号b0を処理する。メモリチップ3-3は、クロック生成回路33で生成された(例えば、バッファリングされた)システムクロックSCKに同期して、データ信号b0を処理する。
【0062】
例えば、データ信号b0がリードコマンドであれば、リードコマンドに従ってメモリセルアレイ31からデータをリードし、リードデータをデータ信号b1とする。データ信号b0がライトコマンドであれば、ライトコマンドに従ってメモリセルアレイ31にデータをライトし、完了すると、ライト完了通知をデータ信号b1とする。
【0063】
タイミングt4において、メモリチップ3-3は、出力端子3eから信号線SL2へ出力するチップセレクト信号CSをノンアクティブレベル(例えば、Hレベル)からアクティブレベル(例えば、Lレベル)へ遷移させ、出力端子3dから信号線SL1へデータ信号b0を出力し始める。これに応じて、メモリチップ3-4は、信号線SL2を介して入力端子3bで受けるチップセレクト信号CSがノンアクティブレベルからアクティブレベルへ遷移し、バリッド状態になる。バリッド状態になると、メモリチップ3-4は、/CEレジスタ323に格納された情報/CE[3:0]を確認する。メモリチップ3-4は、情報/CE[3:0]=1101bに基づき、自チップがイネーブルされていないことに応じて、データ信号b0を処理せずスルー(すなわち、そのまま内部転送)させる。
【0064】
タイミングt5において、メモリチップ3-3は、出力端子3dから信号線SL1へデータ信号b0の出力を完了し、出力端子3dから信号線SL1へ次のデータ信号b1を出力し始める。
【0065】
タイミングt6において、メモリチップ3-4は、出力端子3eから信号線SL2へ出力するチップセレクト信号CSをノンアクティブレベル(例えば、Hレベル)からアクティブレベル(例えば、Lレベル)へ遷移させ、出力端子3dから信号線SL1へデータ信号b0を出力し始める。これに応じて、コントローラ2は、信号線SL2を介して入力端子2eで受けるチップセレクト信号CSがノンアクティブレベルからアクティブレベルへ遷移する。
【0066】
ここで、コントローラ2がチップセレクト信号CSを出力してから戻ってきて入力されるまでの時間Δtは、ループバスLBでリング接続されたチップ数Nに対応している。コントローラ2に1チップの基準レイテンシーΔtCSとリング接続されたチップ数Nとが設定されているとする。許容誤差の絶対値をΔtm(>0)とすると、コントローラ2は、次の数式1が満たされる場合、チップセレクト信号CSが各メモリチップ3で適正に送受信できていると判断できる。
ΔtCS×N-Δtm≦Δt≦ΔtCS×N+Δtm・・・数式1
【0067】
図5では、N=4、Δt=Δt14の場合が例示されている。
【0068】
なお、コントローラ2は、他の信号(例えば、データ信号、システムクロック信号など)についても同様にして、(1チップ分のレイテンシー)×(チップ数)の値の把握することで、各メモリチップ3で適正に送受信できているか否かを判断できる。
【0069】
例えば、各メモリチップ3は、図2に示す複数のコマンドCM1~CM15のうち、ライト、イレーズ等、メモリセルアレイ31からデータをリードしないコマンドに関しては、コントローラ2は、各メモリチップ3に対して、数式1と同様にして、タイミング制御を実施することができる。
【0070】
一方、メモリセルアレイ31からデータをリードする系統のコマンド等(バッファリードコマンドCM2~CM4、ステータスリード指令など)については、コントローラ2側は、若干のタイミング制御変更が必要になる。NANDCはリードデータをDCの末尾チップN3のSO経由で入力する。この際、リング接続された最後尾のメモリチップ(N3)3-4が出力するシステムクロック出力SCKOとチップセレクト出力/CSO信号とをケアする。すなわち、システムクロック出力SCKOとチップセレクト出力/CSO信号と同期して、最後尾のメモリチップ(N3)3-4が出力するデータ出力SOのデータ内容を検知することで、NANDC内に正確にデータを取り込むことができる。例えば、図2に示すバッファリードコマンドCM2~CM4における「Dummy」バイトであるByte4の先頭ビット位置、又はデータ「D*-D*」バイトであるByte5の先頭ビット位置を検知することで、コントローラ2は、正確にデータ信号を取り込むことが可能である。この機構により、ループバスLBに任意数のメモリチップ3をリング接続しても、コントローラ2はメモリチップ数を意識することなく、リードデータを読み込むことができる。
【0071】
以上のように、第1の実施形態では、メモリシステム1において、コントローラ2及び複数のメモリチップ3-1~3-4がループバスLBでリング状に接続される。コントローラ2は、ループバスLB経由でシステムクロック信号及びチップセレクト信号を複数のメモリチップ3-1~3-4に順次に伝送し各メモリチップ3の動作タイミングを制御可能にする。これにより、SPI規格等の低速シリアルインターフェース規格の準拠しながら1チャンネルに接続可能なチップ数を可変にでき、メモリシステム1の構成にスケーラビリティーを持たせることができる。この結果、メモリシステム1の実装コストを抑制でき、メモリシステム1のメモリ容量の拡張性を向上できる。
【0072】
なお、図1では、メモリシステム1において、リング接続されるチップ数が4個の構成が例示されているが、リング接続されるチップ数は、2個又は3個であってもよく、5個以上であってもよい。例えば、チップイネーブルコマンドCM16のデータ部DTの情報/CE[3:0]でイネーブル可能なチップ数が最大16個であることに応じて、リング接続されるチップ数は、5個~16個であってもよい。あるいは、例えば、チップイネーブルコマンドCM16のデータ部DTの情報/CEのビット数をN(N>4)に増加させれば、リング接続されるチップ数は、2個以下の個数であってもよい。
【0073】
あるいは、複数のメモリチップ3に一括してアクセスしてもよい。コントローラ2は、複数のメモリチップ3-1~3-4に一括してアクセスする場合、/CE[3:0]=0000bのビットパターンを含むチップイネーブルコマンドCM16を生成する。情報“/CE[3:0]=0000b”は、全メモリチップ3-1~3-4をイネーブルすることを示している。この場合、コントローラ2は、発行した1個のコマンドがメモリチップ3外へのデータ出力を伴わないコマンドであれば、そのコマンドを全メモリチップ3-1~3-4で並列に実行させることが可能である。すなわち、コントローラ2は、チップイネーブルコマンドCM16をループバスLB経由で複数のメモリチップ3-1~3-4に順次に伝送し、全メモリチップ3をイネーブルした後、チップセレクト信号と一括実行させたいコマンドとを複数のメモリチップ3-1~3-4に順次に伝送する。これにより、各メモリチップ3-1~3-4は、チップセレクト信号がアクティブレベルになった後にシステムクロックに同期してコマンドを実行する。このため、全メモリチップ3-1~3-4でコマンドが並行して実行され得るので、メモリシステム1におけるコマンド処理のスループットを容易に向上できる。
【0074】
例えば、コントローラ2は、図2に示す複数のコマンドCM1~CM15のうち、リード・セル・アレイコマンドCM1、プログラム・ロードコマンドCM5、プログラム・エクスキュートコマンドCM6、プロテクト・エクスキュートコマンドCM7、プログラム・ロード・ランダム・データコマンドCM8、リセットコマンドCM10、ライトイネーブルコマンドCM11、ライトディスエーブルコマンドCM12、セットフィーチャーコマンドCM14は、全メモリチップ3-1~3-4で並列実行させることが可能である。
【0075】
(第2の実施形態)
次に、第2の実施形態にかかるメモリシステムについて説明する。以下では、第1の実施形態と異なる部分を中心に説明する。
【0076】
第1の実施形態では、各メモリチップ3において、リードバッファコマンドCM2~CM4を実行中に、次のコマンドを実行できないため、処理効率が低下する可能性がある。例えば、メモリシステム1において、ブートコードを連続読み出し行う際のメモリセルアレイ31からのデータの読み出し速度が低下する可能性がある。
【0077】
そこで、第2の実施形態では、図6に示すように、メモリシステム1iの各メモリチップ3iにおいて、データ信号入力SIとデータ信号出力SOとが独立していることに着目し、制御部321と独立してコマンド処理可能な処理部330iを設ける。処理部330iは、リードバッファコマンドCM2~CM4専用のステートマシーンであってもよい。
【0078】
例えば、処理部330iは、入力端子3a、ドライバ351、I/F部237経由でリードバッファコマンドCM2~CM4を受けると、第2の入力ノードを選択するセレクト信号をセレクタ352へ供給する。それとともに、処理部330iは、データバッファ322におけるリードバッファとして確保された領域からリードデータを取得してセレクタ352の第2の入力ノードへ転送する。
【0079】
処理部330iによるリードバッファコマンドCM2~CM4の処理と並行して、制御部321は、入力端子3a、ドライバ351、I/F部237経由でコマンドを受けると、そのコマンドがメモリチップ3外へのデータ出力を伴わないコマンドであれば、コマンド処理を行う。例えば、制御部321は、図2に示す複数のコマンドCM1~CM15のうち、リード・セル・アレイコマンドCM1、プログラム・ロードコマンドCM5、プログラム・エクスキュートコマンドCM6、プロテクト・エクスキュートコマンドCM7、プログラム・ロード・ランダム・データコマンドCM8、リセットコマンドCM10、ライトイネーブルコマンドCM11、ライトディスエーブルコマンドCM12、セットフィーチャーコマンドCM14であれば、処理部330iによるコマンド処理と並行してコマンド処理を行うことが可能である。
【0080】
以上のように、第2の実施形態では、メモリシステム1iの各メモリチップ3iにおいて、リードバッファコマンドCM2~CM4を実行中に、次のコマンドを実行可能である。これにより、各メモリチップ3iにおけるコマンド処理の効率を向上できる。
【0081】
(第3の実施形態)
次に、第3の実施形態にかかるメモリシステムについて説明する。以下では、第1の実施形態及び第2の実施形態と異なる部分を中心に説明する。
【0082】
第1の実施形態では、チップイネーブルコマンドCM16でイネーブルするメモリチップ3を指定する構成が例示されるが、第3の実施形態では、チップイネーブル信号でイネーブルするメモリチップ3jを指定する構成を例示する。
【0083】
具体的には、メモリシステム1jは、図7に示すように構成され得る。図7は、メモリシステム1jの構成を示す図である。メモリシステム1jは、コントローラ2、複数のメモリチップ3-1~3-4及びチャネルCH(図1参照)に代えて、コントローラ2j、複数のメモリチップ3j-1~3j-4及びチャネルCHjを有する。
【0084】
コントローラ2jは、出力端子2hが追加され、入力端子2eが省略されている。チャネルCHjは、ループバスLBj及び並列バスPBjを含む。
【0085】
ループバスLBjは、信号線SL2がライン状に複数のメモリチップ3j-1~3j-4を接続し、最終段のメモリチップ3j-4の出力端子3eからコントローラ2jへ接続されていた部分が省略されている。
【0086】
並列バスPBkは、信号線SL6をさらに含む。信号線SL6は、コントローラ2jの出力端子2hから、メモリチップ3j-1の入力端子3h、メモリチップ3j-2の入力端子3h、メモリチップ3j-3の入力端子3h、メモリチップ3j-4の入力端子3hへそれぞれ延びる。信号線SL6は、コントローラ2jから出力されるチップイネーブル信号を複数のメモリチップ3j-1~3j-4へ並行して伝送する。チップイネーブル信号は、ローアクティブの信号であり、出力先のメモリチップ3jをイネーブルする際にローレベル(又は0)にされる。
【0087】
例えば、コントローラ2jは、複数のメモリチップ3j-1~3j-4のうちメモリチップ3j-2に選択的にアクセスする場合、/CE[3:0]=1101bのチップイネーブル信号を出力端子2hから信号線SL6へ出力する。
【0088】
これに応じて、各メモリチップ3jにおいて、図8に示すように、制御回路32jの制御部321jは、入力端子3hからI/F部328経由でチップイネーブル信号/CEを受けて/CEレジスタ323に格納する。図8は、メモリチップ3jの構成を示す図である。制御回路32jは、コマンドを受けた際に、/CEレジスタ323に格納された情報/CE[3:0]を参照し、情報/CE[3:0]に応じて自チップがイネーブルされていると判断すると、コマンド処理を実行可能である点は、第1の実施形態と同様である。
【0089】
以上のように、第3の実施形態では、メモリシステム1jにおいて、コントローラ2jは、イネーブルにするメモリチップ3jを指定するチップイネーブル信号をチャネルCHjへ出力し、指定されたメモリチップ3jにアクセスする。これによっても、コントローラ2jは、チャネルCHjを介して複数のメモリチップ3jのうち少なくとも1つのメモリチップ3jに選択的にアクセスしてデータのライト及びリードの少なくとも一方を行わせることが可能である。
【0090】
(第4の実施形態)
次に、第4の実施形態にかかるメモリシステムについて説明する。以下では、第1の実施形態~第3の実施形態と異なる部分を中心に説明する。
【0091】
第1の実施形態では、各メモリチップ3がシステムクロック入力SCKIをバッファリングして次段にシステムクロック出力SCKOとして送出しているが、タイミング設計に余裕がある場合(例えば、システムクロック信号SCKの周波数が低い場合)、複数のメモリチップ3間での若干のタイミングばらつきが許容され得る。
【0092】
そこで、第4の実施形態では、コントローラ2kがシステムクロック信号SCKを全メモリチップ3kに並行して分配する構成を例示する。
【0093】
具体的には、メモリシステム1kは、図9に示すように構成され得る。図9は、メモリシステム1kの構成を示す図である。メモリシステム1kは、コントローラ2、複数のメモリチップ3-1~3-4及びチャネルCH(図1参照)に代えて、コントローラ2k、複数のメモリチップ3k-1~3k-4及びチャネルCHkを有する。
【0094】
コントローラ2kは、入力端子2fが省略される。各メモリチップ3k-1~3k-4は、出力端子3fが省略される。チャネルCHkは、ループバスLBk及び並列バスPBkを含む。ループバスLBkは、信号線SL3が省略される。並列バスPBkは、信号線SL7をさらに含む。信号線SL7は、コントローラ2kの出力端子2cから、メモリチップ3k-1の入力端子3c、メモリチップ3k-2の入力端子3c、メモリチップ3k-3の入力端子3c、メモリチップ3k-4の入力端子3cへそれぞれ延びる。信号線SL7は、コントローラ2kから出力されるシステムクロック信号SCKを複数のメモリチップ3k-1~3k-4へ並行して伝送する。
【0095】
これに応じて、各メモリチップ3kにおいて、図10に示すように、クロック生成回路33kは、入力端子3cからシステムクロック信号SCKを受け、伝送されたシステムクロック信号に応じたシステムクロック信号を生成する。図10は、メモリチップ3kの構成を示す図である。クロック生成回路33kは、システムクロック信号をバッファリングし、バッファリング期間に応じた遅延が付加され論理反転されたシステムクロック信号を生成する。
【0096】
例えば、クロック生成回路33kは、ドライバ332が省略され、インバータ333が追加される。インバータ333は、入力ノードがドライバ331に接続され、出力ノードが転送回路34、転送回路35、ドライバ332に接続される。これにより、メモリチップ3k内では、コントローラ2kからのシステムクロック信号SCKの立下り同期でデータ出力SO及びチップセレクト出力/CSOを次段のメモリチップ3kに送出するように実装される。なお、制御回路32は、論理反転前のシステムクロック信号SCKを受ける点は、第1の実施形態と同様である。
【0097】
以上のように、第4の実施形態では、メモリシステム1kにおいて、コントローラ2kがシステムクロック信号SCKを全メモリチップ3kに並行して分配する。すなわち、コントローラ2kは、並列バスPBk経由でシステムクロック信号を複数のメモリチップ3k-1~3k-4に並列に伝送し、ループバスLB経由でチップセレクト信号を複数のメモリチップ3k-1~3k-4に順次に伝送することで、各メモリチップ3kの動作タイミングを制御可能である。
【0098】
(第5の実施形態)
次に、第5の実施形態にかかるメモリシステムについて説明する。以下では、第1の実施形態~第4の実施形態と異なる部分を中心に説明する。
【0099】
第1の実施形態では、データ信号を1ビットで伝送する構成を例示するが、第5の実施形態では、データ信号を複数ビットで並列伝送する構成を例示する。例えば、コントローラ、メモリチップのデータ信号を処理するための構成を複数ビットに拡張し、合わせてSO出力端子を複数個の出力端子に拡張することで、複数ビットの書き込み機能を容易に実装できる。拡張すべきビット数は、例えば、4ビット、8ビット、16ビット、32ビット等であってもよい。
【0100】
具体的には、メモリシステム1nは、図11に示すように構成され得る。図11は、メモリシステム1nの構成を示す図である。図11では、並列伝送すべきデータ信号のビット数が4ビットの構成が例示される。メモリシステム1nは、コントローラ2、複数のメモリチップ3-1~3-4及びチャネルCH(図1参照)に代えて、コントローラ2n、複数のメモリチップ3n-1~3n-4及びチャネルCHnを有する。
【0101】
コントローラ2nは、出力端子2aが4ビット用の出力端子群2anに拡張され、入力端子2dが4ビット用の入力端子群2dnに拡張される。各メモリチップ3n-1~3n-4は、入力端子3aが4ビット用の入力端子群3anに拡張され、出力端子3dが4ビット用の出力端子群3dnに拡張される。チャネルCHnは、ループバスLBn及び並列バスPBを含む。ループバスLBnは、信号線SL1が4ビット幅の信号線群SL1nに拡張される。信号線群SL1nは、コントローラ2nの出力端子群2anからメモリチップ3n-1の入力端子群3an、出力端子群3dn、メモリチップ3n-2の入力端子群3an、出力端子群3dn、メモリチップ3n-3の入力端子群3an、出力端子群3dn、メモリチップ3n-4の入力端子群3an、出力端子群3dnを経由して、コントローラ2nの入力端子2dへ戻るように延びる。
【0102】
これに応じて、各メモリチップ3nにおいて、図12に示すように、転送回路33nは、4ビット用に拡張される。図12は、メモリチップ3nの構成を示す図である。入力端子群3anは、入力端子3a0~3a3を含み、出力端子群3dnは、出力端子3d0~3d3を含む。データ信号の0ビット目に対応した構成として、入力端子3a0から出力端子3d0に至る経路上には、ドライバ341-0、フリップフロップ342-0、遅延回路343-0、及びドライバ344-0が順に接続される。データ信号の1ビット目に対応した構成として、入力端子3a1から出力端子3d1に至る経路上には、ドライバ341-1、フリップフロップ342-1、遅延回路343-1、及びドライバ344-1が順に接続される。データ信号の2ビット目に対応した構成として、入力端子3a2から出力端子3d2に至る経路上には、ドライバ341-2、フリップフロップ342-2、遅延回路343-1、及びドライバ344-2が順に接続される。データ信号の3ビット目に対応した構成として、入力端子3a3から出力端子3d3に至る経路上には、ドライバ341-3、フリップフロップ342-3、遅延回路343-3、及びドライバ344-3が順に接続される。
【0103】
転送回路33nが4ビット用に拡張されることに応じて、制御回路32nにおいて、IF部327nは、パラレル・シリアル返還を行う。すなわち、IF部327nは、4ビットのデータ信号をパラレル形式で受けるとシリアル形式に変換し、4ビットのデータ信号をシリアル形式で制御部321及び/又はデータバッファ322へ供給する。また、IF部327nは、制御部321及び/又はデータバッファ322から4ビットのデータ信号をシリアル形式で受けるとパラレル形式に変換し、4ビットのデータ信号をパラレル形式でセレクタ352-0~352-3へ供給する。それ以外の各構成の機能は、第1の実施形態と同様である。
【0104】
以上のように、第5の実施形態では、メモリシステム1nがデータ信号を複数ビットで並列伝送するように構成される。これにより、データ信号の伝送効率を向上できる。
【0105】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0106】
1,1i,1j,1k,1n メモリシステム、3,3-1~3-4,3i,3j,3j-1~3j-4,3k,3k-1~3k-4,3n,3n-1~3n-4 メモリチップ、CH,CHj,CHk,CHn チャネル。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12