(57)【特許請求の範囲】
【請求項１】
クロック信号に同期して動作する動作仕様の異なる第１および第２のメモリチップと、
前記メモリチップを動作させるためにコントローラから出力されるコントローラ出力信号を、前記各メモリチップの動作仕様に応じた該メモリチップが受信可能なメモリ入力信号に変換するとともに、前記メモリチップから出力されるメモリ出力信号を前記コントローラが受信可能なコントローラ入力信号に変換するメモリコントローラと、
前記メモリチップと前記メモリコントローラとを接続し、前記メモリ入力信号および前記メモリ出力信号を伝達する共通バスとを備え、
前記メモリコントローラは、
読み出しレイテインシおよびデータのバースト長を含む前記メモリチップの動作仕様を記憶する動作記憶部と、
前記コントローラに対して前記コントローラ出力信号および前記コントローラ入力信号を入出力し、前記メモリチップに対して前記メモリ入力信号および前記メモリ出力信号を入出力する入出力制御回路と、
前記動作記憶部の情報に応じて前記入出力制御回路を動作させる変換制御回路とを備え、
前記メモリコントローラは、
前記第１のメモリチップに対する前記コントローラ出力信号を受信したら前記動作記憶部に記憶された前記第１のメモリチップの動作仕様に基づき前記第１のメモリチップに前記メモリ入力信号を送信し読み出し動作または書き込み動作を開始させ、続いて前記第２のメモリチップに対する前記コントローラ出力信号を受信したら、前記動作記憶部に記憶された前記第２のメモリチップの動作仕様に基づき、前記第２のメモリチップへの前記メモリ入力信号を前記第１のメモリチップが前記読み出し動作または前記書き込み動作を実行中に送信するか前記読み出し動作または前記書き込み動作を完了後に送信するかを判定し、判定結果に基づき前記第２のメモリチップの読み出し動作または書き込み動作を開始するために前記第２のメモリチップへ前記メモリ入力信号を送信することを特徴とするメモリシステム。
【請求項２】
請求項１記載のメモリシステムにおいて、
前記メモリコントローラおよび前記メモリチップが前記共通バスに入力する前記メモリ入力信号および前記メモリ出力信号の入力タイミング仕様は、動作させる前記メモリチップによらず同一であり、
前記共通バスを介して前記メモリコントローラおよび前記メモリチップに出力される前記メモリ出力信号および前記メモリ入力信号の出力タイミング仕様は、動作させる前記メモリチップによらず同一であることを特徴とするメモリシステム。
【請求項３】
請求項１記載のメモリシステムにおいて、
前記変換制御回路は、前記入出力制御回路の動作タイミングおよび入出力方向を制御することを特徴とするメモリシステム。
【請求項４】
請求項１記載のメモリシステムにおいて、
前記入出力制御回路で受信した前記コントローラ出力信号および前記メモリ出力信号を一時保持する信号保持部を備えていることを特徴とするメモリシステム。
【請求項５】
請求項４記載のメモリシステムにおいて、
前記信号保持部は、前記メモリコントローラが一つの前記メモリチップの動作中に別の前記メモリチップを動作させるための前記コントローラ出力信号を受けたときに、該コントローラ出力信号を一時保持することを特徴とするメモリシステム。
【請求項６】
請求項４記載のメモリシステムにおいて、
前記メモリチップに対するアクセスが重複したときに、前記メモリチップへのアクセス順を調整する調停回路を備えていることを特徴とするメモリシステム。
【請求項７】
請求項１記載のメモリシステムにおいて、
前記メモリコントローラおよび前記コントローラは、同一チップ上に搭載されていることを特徴とするメモリシステム。
【請求項８】
請求項７記載のメモリシステムにおいて、
前記共通バスは、前記コントローラと前記メモリチップとを搭載するプリント基板上に形成されていることを特徴とするメモリシステム。
【請求項９】
請求項７記載のメモリシステムにおいて、
前記コントローラと前記メモリチップとは、三次元積層され、
前記共通バスは、前記コントローラと前記メモリチップと接続する相互接続配線として形成されていることを特徴とするメモリシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数種のメモリチップとこれ等メモリチップを制御するメモリコントローラを有するメモリシステムに関する。
【０００２】
【従来の技術】
半導体製造技術および半導体設計技術の進展により、一つのシステムが、一つの半導体チップ上に実現できるようになってきている。一つのシステムとして動作可能な半導体は、一般にシステムLSIと称されている。システムLSIは、例えば、システム全体を制御するMPUコア、所定の機能を有する周辺コア（IPコア）、メモリコアを有している。メモリコアには、システムの動作に必要なプログラムおよびシステムで扱うデータ等が格納される。
【０００３】
近時、動画情報等の大量のデータを扱う携帯機器が開発されている。これ等携帯機器で使用するメモリ容量が、システムLSI内に搭載されるメモリコアだけでは不十分な場合、通常、半導体メモリ（メモリチップ）をシステムLSIに外付けすることでシステムが構成される。これは、システムLSIに大容量のメモリコアを組み込むと、システムLSIのチップサイズが大きくなり、歩留（良品率）が低下してしまうためである。
【０００４】
さらに、MPU等のロジック製品とDRAM等のメモリ製品は、それぞれの特徴を生かすために最適に設計され、最適な条件で製造される。したがって、メモリチップをシステムLSI（ロジックチップ）とは別に設計・製造した方が、システムの性能が向上する場合もある。
図１７は、複数種のメモリチップをシステムLSIに外付けしたシステム（メモリシステム）の例を示している。ここで、メモリシステムとは、上述した携帯機器等を構成するシステムのうち、メモリを動作させるために必要な機能の集合である。
【０００５】
メモリシステムは、プリント基板１上に搭載されるシステムLSI２および複数種のメモリチップ３ａ、３ｂ、３ｃで構成されている。システムLSI２は、システム全体を制御するMPU４、所定の機能を有する周辺コア（IP）５ａ、５ｂ、およびメモリチップ３ａ、３ｂ、３ｃにそれぞれ対応したメモリコントローラ６ａ、６ｂ、６ｃを有している。メモリチップ３ａ、３ｂ、３ｃは、プリント基板１上に配線されたバス７ａ、７ｂ、７ｃを介して、それぞれメモリコントローラ６ａ、６ｂ、６ｃに接続されている。
【０００６】
【発明が解決しようとする課題】
従来、システムLSI２と複数種のメモリチップ３ａ、３ｂ、３ｃでメモリシステムを構成する場合、上述したように、メモリチップ３ａ、３ｂ、３ｃ毎にメモリコントローラ６ａ、６ｂ、６ｃを用意する必要があった。例えば、SDRAMおよびフラッシュメモリは、書き込み動作・読み出し動作を実行するためのコマンド体系および動作タイミングがそれぞれ異なる。このため、システムLSIにSDRAMおよびフラッシュメモリを外付けする場合、SDRAMおよびフラッシュメモリについてそれぞれメモリコントローラが必要であった。この結果、システムLSI２のチップサイズが増加し、チップコストが増加するという問題があった。
【０００７】
メモリチップ３ａ、３ｂ、３ｃの端子は、バス７ａ、７ｂ、７ｃを介してそれぞれシステムLSI２の端子に接続されるため、システムLSI２の端子数は、膨大になる。この結果、システムLSI２のチップサイズが、端子数に依存して大きくなる場合があった。最悪の場合、システムLSI２の端子数に合わせて、新たにパッケージを開発しなくてはならなかった。
【０００８】
複数のメモリコントローラメモリコントローラ６ａ、６ｂ、６ｃが、システムLSI２に搭載されるため、システムLSI２の回路規模が増加し、設計検証に膨大な時間が掛かっていた。
バス７ａ、７ｂ、７ｃを形成するために膨大な数の配線が、プリント基板１上に必要である。この結果、プリント基板１の配線層の数が増え、プリント基板１の設計コスト、製造コストが増加するという問題があった。
【０００９】
クロック同期式のSDRAMは、DRAMのデータ転送レートを向上するために開発された。クロック非同期の他の半導体メモリ（不揮発性メモリ等）についても、今後クロック同期式の製品が開発されると予想される。
本発明の目的は、複数種のメモリチップとこれ等メモリチップを制御するメモリコントローラを有するメモリシステムのコストを低減することにある。
【００１０】
本発明の別の目的は、システムLSIに複数種のメモリチップを外付けすることにより構成されたメモリシステムにおいて、メモリチップとこれ等メモリチップを制御するシステムLSIとを接続するための共通のインタフェースを提供することにある。
本発明のさらなる別の目的は、クロック同期式の不揮発性メモリをシステムLSIに容易に低コストで外付けすることにある。
【００１１】
【課題を解決するための手段】
本発明のメモリシステムは、クロック信号に同期して動作する複数種のメモリチップと、メモリチップを制御するメモリコントローラと、メモリチップとメモリコントローラとを接続し、メモリ入力信号およびメモリ出力信号を伝達する共通バスとを有している。メモリチップには、例えば、シンクロナスＤＲＡＭ等の揮発性メモリおよびクロック同期式のNAND型フラッシュメモリ等の不揮発性メモリが含まれる。
【００１２】
メモリコントローラは、コントローラがメモリチップを動作させる際にメモリコントローラに出力するコントローラ出力信号を、動作させるメモリチップの動作仕様に応じてメモリチップが受信可能なメモリ入力信号に変換する。メモリチップは、メモリ入力信号を受けて読み出し動作または書き込み動作等を実行する。コントローラ出力信号およびメモリ入力信号は、アドレス信号、コマンド信号、書き込みデータ信号等である。
【００１３】
メモリチップは、読み出し動作を実行したとき、読み出しデータ信号をメモリ出力信号として共通バスに出力する。メモリコントローラは、読み出しデータ信号を共通バスを介して受け、受けた信号をコントローラが受信可能な読み出しデータ信号（コントローラ入力信号）に変換する。そして、コントローラがコントローラ入力信号を受信することで、メモリシステムの読み出し動作が完了する。
【００１４】
上述したように、メモリコントローラは、コントローラ出力信号を各メモリチップが受信可能なメモリ入力信号に変換する。このため、一つのメモリコントローラで複数種のメモリチップをアクセスできる。この結果、複数のメモリチップを共通バスを介してメモリコントローラに接続でき、信号線の数が最小限になる。また、メモリコントローラの回路規模を小さくできる。従来のように、メモリチップを開発する毎にメモリコントローラを設計する必要はない。
【００１５】
本発明のメモリシステムでは、メモリコントローラおよびメモリチップが共通バスに入力するメモリ入力信号およびメモリ出力信号の入力タイミング仕様は、動作させるメモリチップによらず同一である。同様に、共通バスを介してメモリコントローラおよびメモリチップに出力されるメモリ出力信号およびメモリ入力信号の出力タイミング仕様は、動作させるメモリチップによらず同一である。このため、メモリコントローラが、メモリチップのコマンド仕様等に応じて、メモリ入力信号の出力順およびメモリ出力信号の受け取り順を調整するだけで、動作仕様の異なる複数種のメモリチップを確実にアクセスできる。
【００１６】
例えば、入力タイミング仕様は、クロック信号のエッジに対するセットアップ時間tISおよびホールド時間tIHで規定される。同様に、出力タイミング仕様は、クロック信号のエッジに対するセットアップ時間tOSおよびホールド時間tOHで規定される。セットアップ時間tOSおよびホールド時間tOHをセットアップ時間tISおよびホールド時間tIHより長くすることで、メモリコントローラおよび各メモリチップは、共通バスを介してメモリ出力信号およびメモリ入力信号をそれぞれ確実に受け取ることができる。
【００１７】
本発明のメモリシステムでは、メモリコントローラは、動作記憶部、入出力制御回路、および変換制御回路を有している。動作記憶部は、各メモリチップの動作仕様を記憶している。変換制御回路は、動作記憶部の情報に応じて入出力制御回路を動作させる。例えば、変換制御回路は、動作記憶部の情報に応じて、入出力制御回路の動作タイミングおよび入出力方向を制御するだけでよい。入出力制御回路は、変換制御回路の指示に応じて動作し、コントローラに対してコントローラ出力信号およびコントローラ入力信号を入出力し、メモリチップに対してメモリ入力信号およびメモリ出力信号を入出力する。メモリチップとのインタフェースである入出力制御回路を、各メモリチップの動作仕様に応じて動作することで、複雑な制御回路を用いることなくメモリチップを確実に動作できる。
【００１８】
本発明のメモリシステムでは、メモリコントローラは、信号保持部を有している。信号保持部は、入出力制御回路で受信したコントローラ出力信号およびメモリ出力信号を一時保持する。例えば、アクセスするメモリチップが、アドレスマルチプレクス方式のシンクロナスDRAMの場合、信号保持部に保持されたアドレス信号（コントローラ出力信号）は、変換制御回路の指示により分割され、行アドレス信号および列アドレス信号として順次出力される。同様に、アクセスするメモリチップが、クロック同期式のNAND型フラッシュメモリの場合、信号保持部に保持された開始アドレス（コントローラ出力信号）は、変換制御回路の指示により分割され、複数のパケットとして順次出力される。すなわち、各メモリチップの動作仕様に応じて、メモリチップに信号を出力できる。
【００１９】
本発明のメモリシステムでは、信号保持部は、メモリコントローラが一つのメモリチップの動作中に、別のメモリチップを動作させるためのコントローラ出力信号を受けたときに、このコントローラ出力信号を一時保持する。すなわち、コントローラから出力されたコントローラ出力信号を、共通バスが空くまでの期間、保持できる。コントローラ出力信号が、メモリコントローラの信号保持部で保持されるため、コントローラは、別のメモリチップの動作待ちと無関係に、周辺回路等の別のデバイスまたは周辺コアをアクセスできる。コントローラが無駄なサイクルを実行することがなくなるため、システム全体の動作効率が向上する。
【００２０】
本発明のメモリシステムでは、メモリコントローラは、調停回路を有している。調停回路は、メモリチップの動作状態および信号保持部に保持された複数のメモリチップに対応するコントローラ出力信号の保持順に応じて、メモリチップへのアクセス順を調整する。調停回路は、例えば、自身の回路機能をそれぞれ再構築可能なプログラマブルロジックで構成されている。
【００２１】
あるメモリチップが共通バスを使用中に、別のメモリチップが、コントローラによりアクセスされた場合、調停回路により、共通バスが空くまで別のメモリチップのアクセスが待たされる。別のメモリチップをアクセスするためにコントローラが出力したコントローラ出力信号は、信号保持部に一時保持される。
あるいは、コントローラが複数のメモリチップをアクセスし、読み出し動作を実行する場合、あるメモリチップが動作を開始してから読み出しデータ信号が出力されるまでの期間に、別のメモリチップの読み出し動作を完了できる場合がある。このようなときに、調停回路は、あるメモリチップの動作期間における共通バスの空きを利用して別のメモリチップを動作させる。
【００２２】
調停回路により、一つのメモリコントローラで複数種のメモリチップを効率よく動作させることができる。この結果、メモリシステムにおけるデータ転送レートを向上できる。
本発明のメモリシステムでは、メモリコントローラおよびコントローラは、同一チップ上に搭載され、例えば、システムLSIとして形成されている。メモリコントローラは、複数種のメモリチップに対して一つで対応できるため、その回路規模を小さくできる。この結果、メモリコントローラを搭載するシステムLSI等のチップサイズを小さくでき、メモリシステムのコストを低減できる。システムLSIの回路規模が小さくなるため、システムLSIの設計検証にかかる時間を低減できる。
【００２３】
本発明のメモリシステムでは、共通バスは、コントローラとメモリチップとを搭載するプリント基板上に形成されている。メモリコントローラを複数のメモリチップで共用することで、プリント基板上に配線される信号線の数を減らすことができ、プリント基板の設計コストおよび製造コストを低減できる。
【００２４】
本発明のメモリシステムでは、コントローラとメモリチップとは、三次元積層されている。共通バスは、コントローラとメモリチップと接続する相互接続配線として形成されている。メモリコントローラを複数のメモリチップで共用することで、相互接続配線の数を減らすことができ、三次元積層されたメモリシステムの信頼性を向上できる。
【００２５】
【発明の実施の形態】
以下、本発明の実施形態を図面を用いて説明する。
図１は、本発明のメモリシステムの第１の実施形態を示している。
メモリシステムは、プリント基板１０上に搭載されたシステムLSI１２および３つのクロック同期式のメモリチップ１４（SDRAM１４ａ、NOR型フラッシュメモリ１４ｂ、およびNAND型フラッシュメモリ１４ｃ）により構成されている。システムLSI１２とメモリチップ１４ａ、１４ｂ、１４ｃとは、プリント基板１０に形成された共通バス１６および後述する信号線を介して接続されている。なお、プリント基板１０は、図示しない他の電子部品を搭載しており、例えば、携帯型のインターネット端末等のメイン基板として動作する。すなわち、プリント基板１０は、所定の機能を有する携帯型システムとして動作する。メモリシステムは、この携帯型システムのうちメモリを動作させるために必要な機能の集合である。
【００２６】
図２は、システムLSI１２の詳細を示している。
システムLSIは、メモリチップ１４ａ、１４ｂ、１４ｃを制御するMPU１８（コントローラ）、所定の機能を有する周辺（IP）コア２０ａ、２０ｂ、２０ｃ、およびメモリチップ１４ａ、１４ｂ、１４ｃに共通のメモリコントローラ２２を有している。メモリコントローラ２２は、動作記憶部２４、調停回路２６、変換制御回路２８、信号保持部３０、および入出力制御回路３２を有している。
【００２７】
動作記憶部２４は、メモリチップ１４ａ、１４ｂ、１４ｃの動作仕様を記憶している。例えば、MPU１８がメモリチップ１４ａ（SDRAM）をアクセスし、読み出し動作を実行するとき、動作記憶部２４は、SDRAMに供給するコマンドの順序、アドレスの順序、およびコマンドを供給してからデータが出力されるまでのクロック数（レイテインシ）等の情報を、変換制御回路２８に出力する。
【００２８】
調停回路２６は、複数のメモリチップ１４に対するアクセスが重なったとき、メモリチップ１４へのアクセス順を調整する。具体的には、MPU１８が、メモリチップ１４ａ（SDRAM）の読み出しを指示した後、その読み出し動作が完了する前にメモリチップ１４ｂ（NOR型フラッシュメモリ）の読み出しを指示したとき、調停回路２６は、変換制御回路２８に対して、メモリチップ１４ｂに対する処理を実行しないように指示する。同時に、調停回路２６は、信号保持部３０に対して、メモリチップ１４ｂのアクセスに関してMPU１８から供給された信号を保持するように指示する。
【００２９】
動作記憶部２４は、自身が記憶する情報を再書き込み可能なプログラマブルロジックで構成されている。調停回路２６は、回路を再構築可能なプログラマブルロジックで構成されている。動作記憶部２４の情報および調停回路２６の回路機能は、共通バス１６に接続されるメモリチップ１４に応じてプログラムされる。このため、メモリコントローラ２２は、汎用のIPコアとして利用可能である。プログラマブルロジックを構成する素子は、揮発性でも不揮発性でもよい。
【００３０】
変換制御回路２８は、動作記憶部２４からの情報および調停回路２６からの指示に応じて入出力制御回路３２および信号保持部３０を制御する。例えば、MPU１８がメモリチップ１４ａ（SDRAM）をアクセスし読み出し動作を実行するとき、変換制御回路２８は、保持しているアドレス信号を行アドレス信号および列アドレス信号に分けて出力することを、信号保持部３０に指示する。また、読み出し動作を指示するコマンド信号を、アクティブコマンドおよび読み出しコマンドに分けて出力することを指示する。同時に、変換制御回路２８は、信号保持部３０から出力されるアドレス信号およびコマンド信号の出力タイミングを、入出力回路３２ｂに対して指示する。
【００３１】
変換制御回路２８は、動作記憶部２４からの情報（読み出しレイテンシ）に基づいて、SDRAM１４ａから出力される読み出しデータ信号（共通バス１６のメモリ出力信号MOUT）を入出力回路３２ｂ（後述）に取り込むタイミングを指示する。さらに、変換制御回路２８は、MPU１８がビジー状態のとき、取り込んだ読み出しデータ信号を一時保持することを信号保持部３０に指示する。MPU１８がレディー状態のとき、読み出しデータ信号は、信号保持部３０を経由して直接コントローラ入力信号CINとして出力される。このとき、変換制御回路２８は、読み出しデータ信号をコントローラ入力信号CINとして出力するタイミングを、入出力回路３２ａ（後述）に指示する。
【００３２】
信号保持部３０は、上述したように、調停回路２６および変換制御回路２８からの指示に応じてMPU１８から出力されるコントローラ出力信号COUTおよびメモリチップ１４から出力されるメモリ出力信号MOUTを一時保持し、あるいは保持していたコントローラ出力信号COUT、メモリ出力信号MOUTを、それぞれ入出力回路３２ｂ、３２ａに出力する。
【００３３】
入出力制御回路３２は、MPU１８（システムバス）に対して信号を入出力する入出力回路３２ａと、メモリチップ１４（共通バス１６）に対して信号を入出力する入出力回路３２ｂとを有している。入出力回路３２ａは、MPU１８から出力されるコントローラ出力信号COUTを変換制御回路２８から出力されるタイミング信号に同期して受信し、受信した信号を信号保持部３０に出力する。また、入出力回路３２ａは、信号保持部３０に保持されたメモリ出力信号MOUTを、変換制御回路２８から出力されるタイミング信号に同期して、コントローラ入力信号CINとして出力する。
【００３４】
入出力回路３２ｂは、メモリチップ１４から出力されるメモリ出力信号MOUTを変換制御回路２８から出力されるタイミング信号に同期して受信し、受信した信号を信号保持部３０に出力する。また、入出力回路３２ｂは、信号保持部３０に保持されたコントローラ出力信号COUTを、変換制御回路２８から出力されるタイミング信号に同期して、各メモリチップ１４が受信可能（認識可能）なメモリ入力信号MINとして出力する。
【００３５】
すなわち、変換制御回路２８は、入出力回路３２ａ、３２ｂの動作タイミングおよび入出力方向を制御する。
コントローラ出力信号COUTは、MPU１８が出力するアドレス信号、コマンド信号、書き込みデータ信号等を含む。コントローラ入力信号CINは、メモリチップ１４からMPU１８に供給される読み出しデータ信号等を含む。MPU１８が出力するアドレス信号は、メモリチップ１４ａ、１４ｂ、１４ｃのデコード信号（後述するチップイネーブル信号）を作成するための上位のアドレス信号を含んでいる。
【００３６】
メモリ出力信号MOUTは、メモリチップ１４が出力する読み出しデータ信号等を含む。メモリ入力信号MINは、メモリチップ１４に供給されるアドレス信号、コマンド信号、書き込みデータ信号等を含む。なお、メモリ出力信号MOUTのうち共通バス１６に含まれない信号として、フラッシュメモリ１４ｂ、１４ｃから出力されるステータス信号（ビジー信号）等がある。メモリ入力信号MINのうち共通バス１６に含まれない信号として、チップイネーブル信号、チップセレクト信号等がある。
【００３７】
このように、メモリコントローラ２２は、プロセッサ１８が出力するコントローラ出力信号COUTを、動作させるメモリチップ１４の動作仕様に応じてメモリチップ１４が受信可能なメモリ入力信号MINに変換する。メモリチップ１４は、共通バス１６を介してメモリ入力信号MINを受けて読み出し動作または書き込み動作等を実行する。また、メモリコントローラ２２は、メモリチップ１４が出力するメモリ出力信号MOUTを共通バス１６を介して受け、受けた信号をMPU１８が受信可能なコントローラ入力信号CINに変換する。
【００３８】
図３は、メモリコントローラ２２とメモリチップ１４ａ、１４ｂ、１４ｃとを接続する信号の詳細を示している。図中、網掛けで示した太い矢印およびシステムクロック信号線SCLKが、共通バス１６に含まれる。
メモリコントローラ２２（システムLSI１２）は、入力端子としてクロック端子CLK、複数のステータス端子STS0、STS1、...、出力端子として複数のチップイネーブル端子CE0、CE1、CE2、...、４ビットのコマンド端子COM0-COM3、２３ビットのアドレス端子ADD0-ADD22、入出力端子として８ビットのデータ入出力端子DQ0-DQ7を有している。
【００３９】
SDRAM１４ａは、入力端子としてクロック端子CLK、チップセレクト端子/CS、コマンド端子/RAS、/CAS、/WE、アドレス端子ADD0-ADD13（バンクアドレス端子を含む）、入出力端子としてデータ入出力端子DQ0-DQ7を有している。SDRAM１４ａは、アドレスマルチプレクス方式を採用しているため、アドレス端子ADD0-ADD13には、行アドレスRA0-RA13および列アドレスCA0-CA8が順次供給される。行アドレス信号の上位２ビット（RA12、RA13）は、バンクアドレス信号として使用される。
【００４０】
NOR型フラッシュメモリ１４ｂは、入力端子としてクロック端子CLK、チップイネーブル端子/CE、コマンド端子/WE、/OE、アドレス端子ADD0-ADD22、出力端子としてステータス端子STS、入力端子としてデータ入出力端子DQ0-DQ7を有している。
NAND型フラッシュメモリ１４ｃは、入力端子としてクロック端子CLK、チップイネーブル端子CE、コマンド端子CLE、ALE、/RE、/WE、出力端子としてステータス端子STS、入出力端子としてデータ入出力端子DQ0-DQ7を有している。
【００４１】
なお、端子名の頭の"／"は、負論理を示している。以降の説明では、"クロック信号CLK"のように、端子を介して供給される信号には、端子の符号と同じ符号を使用する。また、"クロック端子CLK"を"CLK端子"、"クロック信号CLK"を"CLK信号"というように、端子名、信号名を略すことがある。
メモリコントローラ２２およびメモリチップ１４ａ、１４ｂ、１４ｃのCLK端子には、図１に示したプリント基板１０上で生成されたシステムクロック信号SCLKが供給されている。メモリコントローラ２２のCE0-CE2端子は、それぞれSDRAM１４ａの/CS端子、フラッシュメモリ１４ｂの/CE端子、およびフラッシュメモリ１４ｃのCE端子に接続されている。
【００４２】
メモリコントローラ２２は、図２に示した動作記憶部２４の情報に基づいて、CE0、CE1端子から負論理の信号を出力し、CE2端子から正論理の信号を出力する。メモリコントローラ２２のCOM0-COM3端子は、SDRAM１４ａ、フラッシュメモリ１４ｂ、１４ｃのコマンド端子に接続されている。SDRAM１４ａがアクセスされるとき、COM3端子は使用されない。同様にフラッシュメモリ１４ｂがアクセスされるとき、COM2端子およびCOM3端子は使用されない。
【００４３】
メモリコントローラ２２のアドレス端子ADD0-ADD22は、SDRAM１４ａ、フラッシュメモリ１４ｂのアドレス端子に接続されている。フラッシュメモリ１４ｃ（NAND型）は、アドレス端子を有していないため、アドレス端子ADD0-ADD22は、接続されていない。
メモリコントローラ２２のデータ入出力端子DQ0-DQ7は、SDRAM１４ａ、フラッシュメモリ１４ｂ、１４ｃのデータ入出力端子DQ0-DQ7、I/O0-I/O7に接続されている。メモリコントローラ２２のSTS0、STS1端子は、それぞれフラッシュメモリ１４ｂ、１４ｃのSTS端子に接続されている。
【００４４】
上述のように、メモリコントローラ２２とSDRAM１４ａ、フラッシュメモリ１４ｂ、１４ｃとを接続するコマンド信号線、アドレス信号線、およびデータ入出力信号線が共有され、共通バスが形成されているため、プリント基板１０に形成する配線の数は、従来に比べ低減される。この結果、例えば、プリント基板１０の配線層の数が減り、プリント基板１０の設計コストおよび製造コストが低減される。
【００４５】
メモリコントローラ２２の端子数が従来に比べて減るため、端子数に依存してシステムLSI１２のチップサイズが大きくなることはない。
システムLSI１２の回路規模が小さくなるため、設計検証に必要な時間が短縮される。
図４は、共通バス１６のインタフェース仕様を示している。
【００４６】
共通バス１６に入力される入力信号は、SCLK信号の立ち上がりエッジに対して、セットアップ時間tISより前に確定し、確定したレベル（VIHまたはVIL）をホールド時間tIHまで維持する必要がある（入力タイミング仕様）。共通バス１６から出力される出力信号は、SCLK信号の立ち上がりエッジからアクセス時間tAC後までに出力が確定し、SCLK信号の立ち上がりエッジからホールド時間tOHまで維持される（出力タイミング仕様）。
【００４７】
この実施形態では、共通バス１６のクロック周期tCLKは、10nsにされている。このとき、セットアップ時間tIS、ホールド時間tIH、アクセス時間tAC、およびホールド時間tOHは、それぞれ1.5ns、0.8ns、5.4ns、1.8nsに決められている。クロック周期tCLKは10nsであるから、出力信号のSCLK信号の立ち上がりエッジに対するセットアップ時間tOSは、4.6nsになる。
【００４８】
メモリコントローラ２２およびメモリチップ１４ａ、１４ｂ、１４ｃは、上記インタフェース仕様にしたがい共通バス１６に信号を入出力すればよい。すなわち、セットアップ時間tIS、ホールド時間tIH、セットアップ時間tOS、およびホールド時間tOHの４つを定義するだけで、メモリコントローラ２２とメモリチップ１４ａ、１４ｂ、１４ｃとの間で、共通バス１６を介してコマンド、アドレス、データを送受信できる。または、メモリチップ１４ａ、１４ｂ、１４ｃ間で、共通バス１６を介してデータを送受信できる。このインターフェース仕様の特徴は、入力タイミング仕様および出力タイミング仕様が、メモリチップ１４ａ、１４ｂ、１４ｃによらず同じことである。すなわち、インターフェース仕様は、メモリチップ１４ａ、１４ｂ、１４ｃ固有の動作仕様に依存しない。
【００４９】
クロック同期式のメモリチップを新たに開発する際には、図４に示したインタフェース仕様に沿って入出力回路を設計することで、そのメモリチップをメモリコントローラ２２に接続できる。すなわち、メモリコントローラ２２を新たに開発することなく、メモリチップをシステムLSIに外付けできる。
なお、クロック周期tCLKは、この例に限定されずMPUコア１８およびメモリチップ１４ａ、１４ｂ、１４ｃの動作周波数に応じて決めてもよい。この際、入力信号および出力信号のセットアップ時間およびホールド時間は、クロック周期tCLKに応じて若干変更することが可能である。
【００５０】
図１に示したプリント基板１０上において、共通バス１６の配線長等のルールは、図４に示したインタフェース仕様を満足するように定められている。これ等ルールを従うことで、入力タイミング仕様の規定にしたがいシステムLSI１２から共通バス１６に供給された信号は、出力タイミング仕様の規定内にメモリチップ１４ａ（または１４ｂ、１４ｃ）に出力される。同様に、入力タイミング仕様の規定にしたがいメモリチップ１４ａ（または１４ｂ、１４ｃ）から共通バス１６に供給された信号は、出力タイミング仕様の規定内にシステムLSI１２に出力される。
【００５１】
図５は、メモリシステムのインタフェース階層を示している。
図において、第１階層は、信号の立ち上がり、立ち下がりの特性を規定したインタフェースレベルである。この階層では、信号の入出力特性が、VLTTL、SSTL等に決められる。第２階層は、クロック信号に対する信号の入出力タイミングを規定したタイミングレベルである。第３階層は、各メモリチップの動作仕様に応じて規定される動作レベル（コマンドレベル）である。
【００５２】
本実施形態では、メモリコントローラ２２およびメモリチップ１４ａ、１４ｂ、１４ｃは、第２階層（タイミングレベル）でインタフェースされている。このため、コマンド信号、アドレス信号およびデータ入出力信号を、共通バス１６として、複数種類のメモリチップ１４ａ、１４ｂ、１４ｃで共用できる。図１７に示した従来のメモリシステムは、第３階層（動作レベル）でインタフェースされている。このため、従来は、メモリチップ毎にバス配線が必要であった。
【００５３】
図６は、システムLSIが、NOR型のフラッシュメモリ１４ｂとSDRAM１４ａとを順次アクセスし、読み出し動作を実行する例を示している。図中の"システムバス"は、MPU１８とメモリコントローラ２２との間で伝達される信号を示している。"共通バス16"は、メモリコントローラ２２とSDRAM１４ａ（またはフラッシュメモリ１４ｂ）との間で伝達される信号を示している。
【００５４】
MPU１８は、最初のSCLK信号（０番目）に同期して、読み出しコマンドRDとアドレス（１４ｂ）を出力する（図６（ａ））。メモリコントローラ２２は、システムバスに供給されたアドレス（１４ｂ）のうち、上位アドレスをデコードし、MPU１８がフラッシュメモリ１４ｂへのアクセスを要求していることを検出する。
図２に示した変換制御回路２８は、例えば、フラッシュメモリ１４ｂの読み出し動作仕様（１）-（３）を動作記憶部２４から受信する。
【００５５】
（１）読み出し動作は、読み出しコマンドRDおよび読み出しアドレスADDを受信したときに開始される。
（２）読み出しレイテンシは、"８"である。すなわち、読み出しコマンドRDの供給後、８クロック目に最初のデータが出力される。
（３）読み出しデータのバースト長は、"４"である。
【００５６】
メモリコントローラ２２は、次のSCLK信号（１番目）の立ち上がりエッジに同期して、CE1信号（/CE信号）を活性化し、フラッシュメモリ１４ｂに対して読み出しコマンドRDおよび読み出しアドレスADDを出力する（図６（ｂ））。ここで、メモリコントローラ２２は、図４に示した入力信号のインタフェース仕様にしたがいCE1信号、読み出しコマンドRD、および読み出しアドレスADDを出力する。フラッシュメモリ１４ｂは、共通バス１６を介して読み出しコマンドRDおよび読み出しアドレスADDを受信し（図６（ｃ））、読み出し動作を実行する。このとき、フラッシュメモリ１４ｂが共通バス１６から受け取る読み出しコマンドRDおよび読み出しアドレスADD、およびCE1信号は、図４に示した出力信号のインタフェース仕様を満足している。
【００５７】
MPU１８は、１番目のSCLK信号に同期して、読み出しコマンドRDとアドレス（１４ａ）を出力する（図６（ｄ））。メモリコントローラ２２は、システムバスに供給されたアドレス（１４ａ）のうち、上位アドレスをデコードし、MPU１８がSDRAM１４ａへのアクセスを要求していることを検出する。
図２に示した変換制御回路２８は、例えば、SDRAM１４ａの読み出し動作仕様（１）-（４）を動作記憶部２４から受信する。
【００５８】
（１）読み出し動作は、アクティブコマンドACTおよび行アドレス信号RAを受信したときに開始される。行アドレス信号RAは、アドレスの上位１４ビットであり、バンクアドレス信号BA0、BA1を含む。
（２）読み出しコマンドRDおよび列アドレス信号CAは、アクティブコマンドACTの供給後、１クロック以上後に受信可能になる。列アドレス信号CAは、アドレスの下位９ビットである。
【００５９】
（３）読み出しレイテンシは、"２"である。すなわち、読み出しコマンドRDの供給後、２クロック目に最初のデータが出力される。
（４）読み出しデータのバースト長は、"４"である。
メモリコントローラ２２は、次のSCLK信号（２番目）の立ち上がりエッジに同期して、CE0信号（/CS信号）を活性化し、SDRAM１４ａに対してアクティブコマンドACTおよび行アドレスRAを出力する（図６（ｅ））。ここで、メモリコントローラ２２は、図４に示した入力信号のインタフェース仕様にしたがいCE0信号、アクティブコマンドACT、および行アドレスRAを出力する。SDRAM１４ａは、共通バス１６を介してアクティブコマンドACTおよび行アドレスRAを受信し（図６（ｆ））、行デコーダ、センスアンプ等の内部回路を動作させる。このとき、フラッシュメモリ１４ｂが共通バス１６から受け取る読み出しコマンドRDおよび読み出しアドレスADD、およびCE0信号は、図４に示した出力信号のインタフェース仕様を満足している。なお、SDRAM１４ａの内部回路の動作は、/CE信号が非活性化されても実行される。
【００６０】
図２に示した変換制御回路２８は、動作記憶部２４からの情報に基づいて、SDRAM１４ａへの読み出しコマンドRDが、フラッシュメモリ１４ｂからのデータ出力後でなければ供給できないと判断する。このため、メモリコントローラ２２は、CE1信号を引き続き活性化する（図６（ｇ））。
フラッシュメモリ１４ｂは、読み出しデータ信号D0-D3を順次共通バス１６に出力する（図６（ｈ））。ここで、フラッシュメモリ１４ｂは、図４に示した入力信号のインタフェース仕様にしたがい読み出しデータ信号D0-D3を出力する。メモリコントローラ２２は、図２の入出力回路３２ｂで読み出しデータ信号D0-D3を順次受け、受けたデータを信号保持部３０に一時記憶する。このとき、メモリコントローラ２２が共通バス１６から受け取る読み出しデータ信号D0-D3は、図４に示した出力信号のインタフェース仕様を満足している。変換制御回路２８は、信号保持部３０および入出力回路３２ａを制御し、保持しているデータを、１０番目以降のSCLK信号に同期して、順次システムバスに出力する（図６（ｉ））。そして、フラッシュメモリ１４ｂの読み出し動作が完了する。
【００６１】
次に、メモリコントローラ２２は、１３番目のSCLK信号に同期して、CE0信号を活性化し、読み出しコマンドRDおよび列アドレス信号CAを出力する（図６（ｊ））。SDRAM１４ａは、読み出しコマンドRDの供給後２クロック目に読み出しデータ信号D0-D3を順次共通バス１６に出力する（図６（ｋ））。メモリコントローラ２２は、入出力回路３２ｂで読み出しデータ信号DQ0-DQ3を順次受け、受けたデータを信号保持部３０に一時記憶する。このとき、メモリコントローラ２２が共通バス１６から受け取る読み出しデータ信号DQ0-DQ3は、図４に示した出力信号のインタフェース仕様を満足している。変換制御回路２８は、信号保持部３０および入出力回路３２ａを制御し、保持しているデータは、１６番目以降のSCLK信号に同期して、順次システムバスに出力する（図６（ｌ））。そして、SDRAM１４ａの読み出し動作が完了する。
【００６２】
図７は、システムLSIが、NOR型のフラッシュメモリ１４ｂとSDRAM１４ａとを順次アクセスし、フラッシュメモリ１４ｂの読み出し動作とSDRAM１４ａの書き込み動作を実行する例を示している。図６と同様の動作については、詳細な説明を省略する。
MPU１８は、最初のSCLK信号（０番目）に同期して、読み出しコマンドRDとアドレス（１４ｂ）を出力する（図７（ａ））。メモリコントローラ２２は、次のSCLK信号（１番目）の立ち上がりエッジに同期して、CE1信号（/CE信号）を活性化し、フラッシュメモリ１４ｂに対して読み出しコマンドRDおよび読み出しアドレスADDを出力する（図７（ｂ））。フラッシュメモリ１４ｂは、共通バス１６を介して読み出しコマンドRDおよび読み出しアドレスADDを受信し（図７（ｃ））、読み出し動作を実行する。
【００６３】
MPU１８は、１番目のSCLK信号に同期して、書き込みコマンドWRと書き込みアドレス（１４ａ）を出力する（図７（ｄ））。MPU１８は、１-4番目のSCLK信号に同期して、書き込みデータD0-D3を順次出力する。これ等コマンド、アドレス、データは、信号保持部３０に一時記憶される。メモリコントローラ２２は、システムバスに供給されたアドレス（１４ａ）のうち、上位アドレスをデコードし、MPU１８がSDRAM１４ａへのアクセスを要求していることを検出する。
【００６４】
図２に示した変換制御回路２８は、例えば、SDRAM１４ａの書き込み動作仕様（１）-（４）を動作記憶部２４から受信する。
（１）書き込み動作は、アクティブコマンドACTおよび行アドレス信号RAを受信したときに開始される。行アドレス信号RAは、アドレスの上位１４ビットであり、バンクアドレス信号BA0、BA1を含む。
【００６５】
（２）書き込みコマンドWRおよび列アドレス信号CAは、アクティブコマンドACTの供給後、１クロック以上後に受信可能になる。列アドレス信号CAは、アドレスの下位９ビットである。
【００６６】
（３）書き込みレイテンシは、"０"である。すなわち、書き込みデータ信号は、書き込みコマンドWRとともに順次出力する。
（４）書き込みデータのバースト長は、"４"である。
メモリコントローラ２２は、２番目のSCLK信号の立ち上がりエッジに同期して、CE0信号（/CS信号）を活性化し、SDRAM１４ａに対してアクティブコマンドACTおよび行アドレスRAを出力する（図７（ｅ））。SDRAM１４ａは、共通バス１６を介してアクティブコマンドACTおよび行アドレスRAを受信し（図７（ｆ））、行デコーダ、センスアンプ等の内部回路を動作させる。
【００６７】
図２に示した変換制御回路２８は、動作記憶部２４からの情報に基づいて、SDRAM１４ａへの書き込みコマンドWRが、フラッシュメモリ１４ｂからのデータ出力前に供給可能と判断する。このため、メモリコントローラ２２は、CE0信号を再び活性化し（図７（ｇ））、４番目のSCLK信号に同期して、書き込みコマンドWRおよび列アドレス信号CAを共通バス１６に出力する（図７（ｈ））。メモリコントローラ２２は、４-７番目のSCLK信号に同期して、書き込みデータ信号D0-D3を共通バス１６に順次出力する（図７（ｉ））。SDRAM１４ａは、書き込みデータ信号D0-D3を順次取り込み、書き込み動作を実行する（図７（ｊ））。
【００６８】
この後、図６と同様に、読み出しコマンドRDの供給後８クロック目以降に、フラッシュメモリ１４ｂは、読み出しデータ信号D0-D3を順次共通バス１６に出力し、読み出し動作が実行される（図７（ｋ））。
図８は、システムLSIが、SDRAM１４ａとNOR型のフラッシュメモリ１４ｂとを順次アクセスし、SDRAM１４ａの書き込み動作とフラッシュメモリ１４ｂの書き込み動作とを実行する例を示している。図６および図７と同様の動作については、詳細な説明を省略する。
【００６９】
MPU１８は、最初のSCLK信号（０番目）に同期して、書き込みコマンドWRとアドレス（１４ａ）を出力する（図８（ａ））。MPU１８は、０-３番目のSCLK信号に同期して、書き込みデータ信号D0-D3を順次出力する。メモリコントローラ２２は、システムバスに供給されたアドレス（１４ａ）のうち、上位アドレスをデコードし、MPU１８がSDRAM１４ａへのアクセスを要求していることを検出する。
【００７０】
メモリコントローラ２２は、１番目のSCLK信号の立ち上がりエッジに同期して、CE0信号（/CS信号）を活性化し、SDRAM１４ａに対してアクティブコマンドACTおよび行アドレスRAを出力する（図８（ｂ））。SDRAM１４ａは、アクティブコマンドACTおよび行アドレスRAを受信し（図８（ｃ））、行デコーダ、センスアンプ等の内部回路を動作させる。
【００７１】
システムバスに次のコマンドが供給されていないため、メモリコントローラ２２は３番目のSCLK信号に同期して、CE0信号を再び活性化し（図８（ｄ））、書き込みコマンドWRおよび列アドレス信号CAを共通バス１６に出力する（図８（ｅ））。メモリコントローラ２２は、３-６番目のSCLK信号に同期して、書き込みデータ信号D0-D3を共通バス１６に順次出力する（図８（ｆ））。SDRAM１４ａは、書き込みデータ信号D0-D3を順次取り込み、書き込み動作を実行する（図８（ｇ））。
【００７２】
MPU１８は、４番目のSCLK信号に同期して、書き込みコマンドWRとアドレス（１４ｂ）を出力する（図８（ｈ））。MPU１８は、４-７番目のSCLK信号に同期して、書き込みデータ信号D0-D3を順次出力する。メモリコントローラ２２は、システムバスに供給されたアドレス（１４ｂ）のうち、上位アドレスをデコードし、MPU１８がフラッシュメモリ１４ｂへのアクセスを要求していることを検出する。
【００７３】
図２に示した変換制御回路２８は、例えば、フラッシュメモリ１４ｂの書き込み動作仕様（１）-（５）を動作記憶部２４から受信する。
（１）書き込み動作は、書き込みコマンドWRおよび書き込みアドレスADDを受信したときに開始される。
【００７４】
（２）書き込みレイテンシは、"０"である。すなわち、書き込みデータ信号は、書き込みコマンドWRとともに順次出力する。
（３）書き込みデータのバースト長は、"４"である。
（４）書き込みデータ信号の受信後、データの書き込みが完了するまでSTS信号を高レベルに維持する（BUSY期間）。
【００７５】
（５）BUSY期間は、コマンド、アドレス、データは入力できない。
変換制御回路２８は、調停回路２６からSDRAM１４ａが動作中であることを示す情報を受け、MPU１８から供給されたフラッシュメモリ１４ｂ用のコマンド、アドレス、データを、信号保持部３０で保持する。信号保持部３０は、変換制御回路２８により制御され、保持している書き込みコマンドWR、書き込みアドレスADD、および書き込みデータ信号D0-D3を、SDRAM１４ａの動作が完了した７番目以降のSCLK信号に同期して出力する（図８（ｉ））。そして、フラッシュメモリ１４ｂの書き込み動作が実行される（図８（ｊ））。
【００７６】
フラッシュメモリ１４ｂは、書き込み動作を実行している間STS信号を活性化し、ビジー状態であることをメモリコントローラ２２に知らせる（図８（ｋ））。メモリコントローラ２２は、SCLK信号に同期してSTS信号をモニタする。メモリコントローラ２２は、STS信号が低レベルに変化したことを検出した後、フラッシュメモリ１４ｂがレディ状態になったことをMPU１８に通知する。レディ状態は、例えば、システムバスに形成されたBUSY信号の信号線を介してMPU１８に通知される。
【００７７】
MPU１８は、フラッシュメモリ１４ｂに正しいデータが書き込まれたことを確認するため、書き込みアドレスと同じアドレスで読み出し動作を指示する（図８（ｌ））。そして、図６と同じタイミングでフラッシュメモリ１４ｂの読み出し動作が実行される（図８（ｍ））。
図９は、システムLSIが、NAND型のフラッシュメモリ１４ｃとSDRAM１４ａとを順次アクセスし、読み出し動作を実行する例を示している。図６と同様の動作については、詳細な説明を省略する。
【００７８】
MPU１８は、最初のSCLK信号（０番目）に同期して、読み出しコマンドRDとアドレス（１４ｃ）を出力する（図９（ａ））。メモリコントローラ２２は、システムバスに供給されたアドレス（１４ｃ）のうち、上位アドレスをデコードし、MPU１８がフラッシュメモリ１４ｃへのアクセスを要求していることを検出する。
図２に示した変換制御回路２８は、例えば、フラッシュメモリ１４ｃの読み出し動作仕様（１）-（５）を動作記憶部２４から受信する。
【００７９】
（１）読み出し動作は、コマンドラッチ信号CLおよび読み出しコマンドRDを、クロック信号に同期して、それぞれコマンド端子COM0-COM3およびデータ入出力端子DQ0-DQ7で受信したときに開始される。
（２）２-４番目のクロック信号に同期して、アドレスラッチ信号ALおよび読み出しアドレス信号ADD（開始アドレス）を受信する。
【００８０】
（３）読み出しデータ長は、モードレジスタ等に設定されている（この例では、"４"）。
（４）読み出しアドレスの受信後、読み出しデータ信号の出力が可能になるまで、STS信号を高レベルに維持する（BUSY期間）。
（５）BUSY期間は、コマンド、アドレス、データは入力できない。
【００８１】
MPU１８は、１番目のSCLK信号に同期して、読み出しコマンドRDとアドレス（１４ａ）を出力する（図９（ｂ））。メモリコントローラ２２は、システムバスに供給されたアドレス（１４ａ）のうち、上位アドレスをデコードし、MPU１８がSDRAM１４ａへのアクセスを要求していることを検出する。読み出しコマンドRDおよびアドレス（１４ａ）は、信号保持部３０に一時保持される。
【００８２】
メモリコントローラ２２は、１番目のSCLK信号の立ち上がりエッジに同期して、CE2信号（CE信号）を活性化し、フラッシュメモリ１４ｃにコマンドラッチ信号CLおよび読み出しコマンドRDを出力する（図９（ｃ））。メモリコントローラ２２は、２番目-４番目のSCLK信号に同期して、アドレスラッチ信号ALおよびアドレス信号ADD（開始アドレス）を順次出力する（図９（ｄ））。
【００８３】
フラッシュメモリ１４ｃは、共通バス１６を介してコマンドラッチ信号CL、読み出しコマンドRD、アドレスラッチ信号AL、およびアドレス信号ADDを順次受信し（図９（ｅ））、読み出し動作を実行する。なお、読み出し動作（フラッシュメモリ１４ｃの内部動作）は、CE信号が非活性化されても実行される。
フラッシュメモリ１４ｃは、読み出しデータ信号が出力可能になるまでSTS信号を活性化し、ビジー状態であることをメモリコントローラ２２に知らせる（図９（ｆ））。
【００８４】
変換制御回路２８は、動作記憶部２４からの情報に基づいて、フラッシュメモリ１４ｃからの読み出しデータ信号を受信する前に、SDRAM１４ａの読み出し動作を実行できると判断する。メモリコントローラ２２は、５番目のSCLK信号の立ち上がりエッジに同期して、CE0信号（/CS信号）を活性化し、SDRAM１４ａに対してアクティブコマンドACTおよび行アドレスRAを出力する（図９（ｇ））。SDRAM１４ａは、アクティブコマンドACTおよび行アドレスRAを受信し（図９（ｈ））、行デコーダ、センスアンプ等の内部回路を動作させる。
【００８５】
メモリコントローラ２２は、７番目のSCLK信号に同期して、CE0信号を再び活性化し（図９（ｉ））、読み出しコマンドRDおよび列アドレス信号CAを出力する（図９（ｊ））。SDRAM１４ａは、読み出しコマンドRDの供給後２クロック目に読み出しデータ信号D0-D3を順次共通バス１６に出力する（図９（ｋ））。変換制御回路２８は、信号保持部３０および入出力回路３２ａを制御し、信号保持部３０に保持されたSDRAM１４ａからの読み出しデータ信号D0-D3を、９番目以降のSCLK信号に同期して、順次システムバスに出力する（図９（ｌ））。そして、SDRAM１４ａの読み出し動作が完了する。
【００８６】
次に、メモリコントローラ２２は、SCLK信号に同期してSTS信号をモニタする。メモリコントローラ２２は、STS信号が低レベルに変化したことを検出した後、CE2信号を活性化し、読み出しコマンドRDを出力する（図９（ｍ））。フラッシュメモリ１４ｃは、読み出しコマンドRDの受信から２クロック後に、読み出しデータ信号D0-D3を順次出力する（図９（ｎ））。
【００８７】
読み出しデータ信号D0-D3は、１６番目以降のSCLK信号に同期して、順次システムバスに出力される（図９（ｏ））。そして、SDRAM１４ａの読み出し動作が完了する。
図１０は、システムLSIが、NAND型のフラッシュメモリ１４ｃとSDRAM１４ａとを順次アクセスし、フラッシュメモリ１４ｃの書き込み動作とSDRAM１４ａの読み出し動作を実行する例を示している。図６と同様の動作については、詳細な説明を省略する。
【００８８】
MPU１８は、最初のSCLK信号（０番目）に同期して、書き込みコマンドWRとアドレス（１４ｃ）を出力する（図１０（ａ））。また、MPU１８は、０番目およびそれ以降のSCLK信号に同期して、書き込みデータ信号DQ0-DQｎを順次出力する（図１０（ｂ））。メモリコントローラ２２は、システムバスに供給されたアドレス（１４ｃ）のうち、上位アドレスをデコードし、MPU１８がフラッシュメモリ１４ｃへのアクセスを要求していることを検出する。
【００８９】
図２に示した変換制御回路２８は、例えば、フラッシュメモリ１４ｃの書き込み動作仕様（１）-（７）を動作記憶部２４から受信する。
（１）書き込み動作は、コマンドラッチ信号CLおよび書き込みコマンドWRを、クロック信号に同期して、それぞれコマンド端子COM0-COM3およびデータ入出力端子DQ0-DQ7で受信したときに開始される。
【００９０】
（２）２-４番目のクロック信号に同期して、アドレスラッチ信号ALおよび書き込みアドレス信号ADD（開始アドレス）を受信する。
（３）５番目以降のクロック信号に同期して、データラッチ信号DSおよび書き込みデータ信号D0-Dnを、それぞれコマンド端子COM0-COM3およびデータ入出力端子DQ0-DQ7で受信する。
【００９１】
（４）書き込みデータ長は、フラッシュメモリ１４ｃのモードレジスタ等に設定されている（この例では、"ｎ個"）。
（５）書き込みデータ信号Dnの受信した次のクロック信号に同期して、コマンドラッチ信号CLおよびプログラム開始信号PSTを、それぞれコマンド端子COM0-COM3およびデータ入出力端子DQ0-DQ7で受信する。
【００９２】
（６）プログラム開始信号PSTの受信後、データの書き込みが完了するまで、STS信号を高レベルに維持する（BUSY期間）。
（７）BUSY期間は、コマンド、アドレス、データは入力できない。
メモリコントローラ２２は、次のSCLK信号（１番目）の立ち上がりエッジに同期して、CE2信号（CE信号）を活性化し、フラッシュメモリ１４ｃにコマンドラッチ信号CLおよび書き込みコマンドWRを出力する（図１０（ｃ））。メモリコントローラ２２は、２番目-４番目のSCLK信号に同期して、アドレスラッチ信号ALおよびアドレス信号ADDを順次出力する（図１０（ｄ））。メモリコントローラ２２は、５番目およびそれ以降のSCLK信号に同期して、データラッチ信号DLおよび書き込みデータ信号DQ0-DQｎを順次出力する（図１０（ｅ））。CE2信号は、プログラム開始信号PSTが出力されるまで高レベルに維持される（図１０（ｆ））。
【００９３】
フラッシュメモリ１４ｃは、共通バス１６を介してコマンドラッチ信号CL、書き込みコマンドWR、アドレスラッチ信号AL、アドレス信号ADD、データラッチ信号DL、および書き込みデータ信号DQ0-DQｎを順次受信し（図１０（ｇ））、書き込み動作を実行する。
フラッシュメモリ１４ｃは、書き込み動作を完了するまでSTS信号を活性化し、ビジー状態であることをメモリコントローラ２２に知らせる（図１０（ｈ））。
【００９４】
MPU１８は、フラッシュメモリ１４ｃに書き込みデータ信号DQnを出力した後のSCLK信号に同期して、読み出しコマンドRDとアドレス（１４ａ）を出力する（図１０（ｉ））。メモリコントローラ２２は、システムバスに供給されたアドレス（１４ａ）のうち、上位アドレスをデコードし、MPU１８がSDRAM１４ａへのアクセスを要求していることを検出する。読み出しコマンドRDおよびアドレス（１４ａ）は、信号保持部３０に一時保持される。
【００９５】
変換制御回路２８は、動作記憶部２４からの情報に基づいて、フラッシュメモリ１４ｃへの書き込みデータ信号を出力した後、SDRAM１４ａの読み出し動作を実行できると判断する。
メモリコントローラ２２は、プログラム開始信号PSTを出力した後のSCLK信号の立ち上がりエッジに同期して、CE0信号（/CS信号）を活性化し、SDRAM１４ａに対してアクティブコマンドACTおよび行アドレスRAを出力する（図１０（ｊ））。この後、図９と同様に、読み出しコマンドRDおよび列アドレス信号CAが、メモリコントローラ２２から出力され（図１０（ｋ））、SDRAM１４ａの読み出し動作が実行される。
【００９６】
以上、本実施形態では、メモリコントローラ２２は、MPU１８が出力するコントローラ出力信号COUTを各メモリチップ１４の動作仕様に応じて、メモリチップ１４が受信可能なメモリ入力信号MINに変換した。このため、一つのメモリコントローラ２２で複数種のメモリチップ１４をアクセスできる。複数のメモリチップ１４を共通バス１６を介してメモリコントローラ２２に接続できるため、信号線の数を最小限にできる。また、メモリコントローラ２２の回路規模を小さくできる。
【００９７】
メモリコントローラ２２およびメモリチップ１４が共通バス１６に入力するメモリ入力信号MINおよびメモリ出力信号MOUTの入力タイミング仕様を、動作させるメモリチップ１４によらず同一にした。同様に、共通バス１６を介してメモリコントローラ２２およびメモリチップ１４に出力されるメモリ出力信号MOUTおよびメモリ入力信号MINの出力タイミング仕様を、動作させるメモリチップ１４によらず同一した。このため、メモリコントローラ２２が、メモリチップ１４のコマンド仕様に応じて、メモリ入力信号MINの出力順およびメモリ出力信号MOUTの受け取り順を調整するだけで、動作仕様の異なる複数種のメモリチップ１４を確実にアクセスできる。
【００９８】
出力タイミング仕様のセットアップ時間tOSおよびホールド時間tOHを、入力タイミング仕様のセットアップ時間tISおよびホールド時間tIHより長くした。このため、メモリコントローラ２２および各メモリチップ１４は、共通バス１６を介してメモリ出力信号MOUTおよびメモリ入力信号MINをそれぞれ確実に受け取ることができる。
【００９９】
メモリチップ１４とのインタフェースである入出力制御回路３２は、各メモリチップ１４の動作仕様に応じたタイミングで動作することで、メモリ入力信号MINを出力し、メモリ出力信号MOUTを受信した。このため、複雑な制御回路を用いることなくメモリチップ１４を確実に動作できる。
信号保持部３０により、入出力制御回路３２で受信したコントローラ出力信号COUTおよびメモリ出力信号MOUTを一時保持した。したがって、各メモリチップ１４の動作仕様に応じて、メモリチップ１４に信号を出力できる。
【０１００】
信号保持部３０は、共通バス１６が空くまでの期間、コントローラ出力信号COUTを保持できるため、MPU１８は、メモリチップ１４の動作待ちと無関係に、周辺回路等の別のデバイスまたは周辺コア２０ａ、２０ｂ、２０ｃをアクセスできる。MPU１８が無駄なサイクルを実行することがなくなるため、システム全体の動作効率を向上できる。
【０１０１】
動作記憶部２４を、自身が記憶する情報を再書き込み可能なプログラマブルロジックで構成した。また、調停回路２６を、自身の回路機能をそれぞれ再構築可能なプログラマブルロジックで構成した。このため、メモリコントローラ２２に接続されるメモリチップ１４に応じて動作記憶部２４および調停回路２６をプログラムすることで、メモリコントローラ２２の制御タイミングを容易に変更できる。この結果、メモリコントローラ２２を、多数種類のメモリチップ１４に対する共通のコントローラとして利用できる。
【０１０２】
複数のメモリチップ１４にアクセス要求があった場合に、調停回路２６および信号保持部３０により、メモリチップ１４の動作順を調整した。このため、一つのメモリコントローラ２２で複数種のメモリチップ１４を効率よく動作できる。メモリシステムにおけるデータの転送レートを向上できる。
メモリコントローラ２２は、複数種のメモリチップ１４に対して一つで対応できるため、その回路規模を小さくできる。この結果、メモリコントローラ２２を搭載するシステムLSI１２のチップサイズを小さくでき、メモリシステムのコストを低減できる。システムLSI１２の回路規模が小さくなるため、システムLSI１２の設計検証にかかる時間を低減できる。
【０１０３】
メモリコントローラ２２を、プリント基板１０上に搭載される複数のメモリチップ１４で共用したので、プリント基板１０上に配線される信号線の数を減らすことができ、プリント基板１０の設計コストおよび製造コストを低減できる。
図１１は、本発明のメモリシステムの第２の実施形態を示している。第１の実施形態で説明した回路・信号と同一の回路・信号については、同一の符号を付し、これ等については、詳細な説明を省略する。
【０１０４】
この実施形態では、メモリコントローラ３４は、メモリチップ１４ａ、１４ｂ、１４ｃにそれぞれ対応してコマンド端子COM0-COM2、COM3-COM4、COM5-COM8を有している。すなわち、図中、網掛けで示した太い矢印およびシステムクロック信号線SCLKが、共通バス１６に含まれる。また、メモリコントローラ３４は、図示しないMPU１８が出力する制御信号DMAを受けている。DMA信号は、MPU１８がメモリコントローラ３４にDMA（Direct Memory Access）転送を指示するときに活性化（高レベル）される。その他の構成は、上述した第１の実施形態とほぼ同一である。
【０１０５】
図１２は、システムLSIが、NOR型のフラッシュメモリ１４ｂとSDRAM１４ａとを順次アクセスし、読み出し動作を実行する例を示している。図１２は、第１の実施形態の図６に対応する動作である。図６と同様の動作については、詳細な説明を省略する。
まず、図６と同様にフラッシュメモリ１４ｂの読み出し動作が実行される。メモリコントローラ３４は、１１番目のSCLK信号に同期して、SDRAM１４ａに読み出しコマンドRDおよび列アドレス信号RAを出力する。このタイミングは、第１の実施形態に比べ２クロックだけ早い。このとき、CE0信号およびCE1信号が同時に活性化されるが、共通バス１６において信号が衝突することはない。そして、１４番目-１７番目のSCLK信号に同期して、SDRAM１４ａからの読み出しデータ信号D0-D3が出力される。他のタイミングは、図６と同一である。
【０１０６】
フラッシュメモリ１４ｂからの読み出しデータ信号と、SDRAM１４ａからの読み出しデータ信号D0-D3とが、連続して出力されるため、第１の実施形態に比べメモリシステムのデータ転送効率が向上する。
図１３は、システムLSIが、NAND型のフラッシュメモリ１４ｃとSDRAM１４ａとを順次アクセスし、読み出し動作を実行する例を示している。図１３は、第１の実施形態の図９に対応する動作である。図９と同様の動作については、詳細な説明を省略する。
【０１０７】
まず、図９と同様にフラッシュメモリ１４ｃおよびSDRAM１４ａの読み出し動作が開始される。メモリコントローラ３４は、１１番目のSCLK信号に同期して、フラッシュメモリ１４ｃに読み出しコマンドRDを出力する。このタイミングは、第１の実施形態に比べ２クロックだけ早い。このとき、CE0信号およびCE2信号が同時に活性化されるが、共通バス１６において信号が衝突することはない。そして、１４番目-１７番目のSCLK信号に同期して、フラッシュメモリ１４ｃからの読み出しデータ信号D0-D3が出力される。他のタイミングは、図９と同一である。この例においても、第１の実施形態に比べメモリシステムのデータ転送効率が向上する。
【０１０８】
図１４は、システムLSIが、NAND型のフラッシュメモリ１４ｃとSDRAM１４ａとを順次アクセスし、フラッシュメモリ１４ｃの書き込み動作とSDRAM１４ａの読み出し動作を実行する例を示している。図１４は、第１の実施形態の図１０に対応する動作である。図１０と同様の動作については、詳細な説明を省略する。
まず、図１０と同様にフラッシュメモリ１４ｃおよびSDRAM１４ａの読み出し動作が開始される。メモリコントローラ３４は、フラッシュメモリ１４ｃへの書き込みデータ信号の出力中に、SDRAM１４ａにアクティブコマンドACTおよび読み出しコマンドRDを出力する。このタイミングは、第１の実施形態に比べ４クロックだけ早い。このとき、CE0信号およびCE2信号が同時に活性化されるが、共通バス１６において信号が衝突することはない。他のタイミングは、図１０と同一である。この例においても、第１の実施形態に比べメモリシステムのデータ転送効率が向上する。
【０１０９】
図１５は、フラッシュメモリ１４ｃからSDRAM１４ａにDMA転送する例を示している。フラッシュメモリ１４ｃおよびSDRAM１４ａの基本動作は、上述した図９および図１０と同じであるため、動作の詳細な説明は省略する。
DMA転送する場合、MPU１８は、フラッシュメモリ１４ｃに対する読み出しコマンドRDとSDRAM１４ａに対する書き込みコマンドWRの出力時にDMA信号を高レベルにする（図１５（ａ））。DMA転送であるため、MPU１８は、書き込みデータ信号を出力しない。すなわち、書き込みアドレスADと書き込みコマンドWRのみが、SDRAMに供給される。メモリコントローラ３４は、１番目のSCLK信号の立ち上がりエッジに同期して、CE2信号（CE信号）を活性化し、フラッシュメモリ１４ｂに対して読み出しコマンドRDおよび読み出しアドレスADDを順次出力する（図１５（ｂ））。フラッシュメモリ１４ｃは、読み出しコマンドRDおよび読み出しアドレスADDを受信し（図１５（ｃ））、読み出し動作を実行する。
【０１１０】
メモリコントローラ３４は、１０番目のSCLK信号に同期して、SDRAM１４ａにアクティブコマンドACTおよび行アドレス信号RAを出力する（図１５（ｄ））。メモリコントローラ２２は、１１番目のSCLK信号に同期して、フラッシュメモリ１４ｃに読み出しコマンドRDを出力する（図１５（ｅ））。
読み出しコマンドRDの供給から２クロック後（１３番目のSCLK信号）に、フラッシュメモリ１４ｃは、読み出しデータ信号D0-D3を出力する（図１５（ｆ））。メモリコントローラ３４は、この１３番目のSCLK信号に同期して、SDRAM１４ａに書き込みコマンドWRおよび列アドレス信号CAを出力する（図１５（ｇ））。この結果、フラッシュメモリ１４ｃから出力される読み出しデータ信号D0-D3は、共通バス１６を介してSDRAM１４ａに書き込まれる。すなわち、DMA転送が実行される。DMA転送の間、メモリコントローラ３４は、読み出しデータ信号D0-D3を取り込まない。
【０１１１】
以上、この実施形態においても、上述した第１の実施形態と同様の効果を得ることができる。さらに、この実施形態では、コマンド信号の信号線を共通バス１６から分離し、メモリチップ毎に配線した。このため、メモリコントローラ３４は、複数のチップイネーブル信号CE0-CE2を同時に活性化できる。例えば、あるメモリチップが共通バス１６にデータ信号を入出力しているときでも、別のメモリチップに読み出しコマンドを供給できる。この結果、メモリシステムのデータ転送レートを向上できる。
【０１１２】
アドレス信号ADD0-ADD22およびデータ信号DQ0-DQ7の信号線を共通バス１６に含め、コマンド信号の信号線を共通バス１６から分離してメモリチップ毎に配線した。このため、メモリチップ間でのDMA転送を容易に実行できる。DMA転送の間、MPU１８は別の周辺回路またはIPコアをアクセスできる。このため、システムの性能が向上する。
【０１１３】
図１６は、本発明のメモリシステムの第３の実施形態を示している。
この実施形態では、システムLSI３６、SDRAM３８ａ、およびフラッシュメモリ３８ｂ、３８ｃが、３次元積層され、一つのパッケージ（図示せず）にモールドされている。共通バス１６は、各チップの周囲に形成されたスルーホールを介して各チップを接続する相互接続配線として形成されている。共通バス１６のインタフェース仕様は、図４と同一である。
【０１１４】
システムLSI３６、SDRAM３８ａ、およびフラッシュメモリ３８ｂ、３８ｃの回路構成は、第１の実施形態のシステムLSI１２、SDRAM１４ａ、およびフラッシュメモリ１４ｂ、１４ｃの回路構成と同一である。すなわち、システムLSI３６は、メモリコントローラ２２を有し、メモリチップ３８ａ、３８ｂ、３８ｃは、クロック同期式の半導体メモリである。
【０１１５】
この実施形態においても、上述した第１の実施形態と同様の効果を得ることができる。さらに、この実施形態では、共通バス１６を、各チップ３６、３８ａ、３８ｂ、３８ｃの周囲に形成されたスルーホールを介して各チップを接続する相互接続配線として形成したので、実装面積が最小限なメモリシステムを構成できる。メモリコントローラを複数のメモリチップで共用することで、相互接続配線の数を減らすことができ、三次元積層されたメモリシステムの信頼性を向上できる。
【０１１６】
なお、上述した第１および第２の実施形態では、メモリチップ１４ａ、１４ｂ、１４ｃのデータ入出力端子を全て８ビットにした例について述べた。本発明はかかる実施形態に限定されるものではない。例えば、データ入出力端子は、１６ビットでもよく、８ビットのメモリチップと１６ビットのメモリチップを混在してもよい。この場合、共通バスのデータ入出力信号線は、１６ビットになる。
【０１１７】
上述した第１の実施形態では、メモリシステムをクロック同期式のSDRAM１４ａ、NOR型フラッシュメモリ１４ｂ、およびNAND型フラッシュメモリ１４ｃで構成した例について述べた。本発明はかかる実施形態に限定されるものではない。例えば、メモリシステムをクロック同期式のSSRAM（Synchronous SRAM）を含めて構成してもよい。
【０１１８】
以上の実施形態において説明した発明を整理して、付記として開示する。
（付記１）  クロック信号に同期して動作する複数種のメモリチップと、
前記メモリチップを動作させるためにコントローラから出力されるコントローラ出力信号を、前記各メモリチップの動作仕様に応じた該メモリチップが受信可能なメモリ入力信号に変換するとともに、前記メモリチップから出力されるメモリ出力信号を前記コントローラが受信可能なコントローラ入力信号に変換するメモリコントローラと、
前記メモリチップと前記メモリコントローラとを接続し、前記メモリ入力信号および前記メモリ出力信号を伝達する共通バスとを備えていることを特徴とするメモリシステム。
【０１１９】
（付記２）  付記１記載のメモリシステムにおいて、
前記メモリコントローラおよび前記メモリチップが前記共通バスに入力する前記メモリ入力信号および前記メモリ出力信号の入力タイミング仕様は、動作させる前記メモリチップによらず同一であり、
前記共通バスを介して前記メモリコントローラおよび前記メモリチップに出力される前記メモリ出力信号および前記メモリ入力信号の出力タイミング仕様は、動作させる前記メモリチップによらず同一であることを特徴とするメモリシステム。
【０１２０】
（付記３）  付記２記載のメモリシステムにおいて、
前記入力タイミング仕様および前記出力タイミング仕様は、それぞれ前記クロック信号のエッジに対するセットアップ時間およびホールド時間で規定され、
前記出力タイミング仕様の前記セットアップ時間および前記ホールド時間は、前記入力タイミング仕様の前記セットアップ時間および前記ホールド時間より長いことを特徴とするメモリシステム。
【０１２１】
（付記４）  付記１記載のメモリシステムにおいて、
前記メモリコントローラは、
前記メモリチップの動作仕様を記憶する動作記憶部と、
前記コントローラに対して前記コントローラ出力信号および前記コントローラ入力信号を入出力し、前記メモリチップに対して前記メモリ入力信号および前記メモリ出力信号を入出力する入出力制御回路と、
前記動作記憶部の情報に応じて前記入出力制御回路を動作させる変換制御回路とを備えていることを特徴とするメモリシステム。
【０１２２】
（付記５）  付記４記載のメモリシステムにおいて、
前記変換制御回路は、前記入出力制御回路の動作タイミングおよび入出力方向を制御することを特徴とするメモリシステム。
（付記６）  付記４記載のメモリシステムにおいて、
前記入出力制御回路で受信した前記コントローラ出力信号および前記メモリ出力信号を一時保持する信号保持部を備えていることを特徴とするメモリシステム。
【０１２３】
（付記７）  付記６記載のメモリシステムにおいて、
前記信号保持部は、前記メモリコントローラが一つの前記メモリチップの動作中に別の前記メモリチップを動作させるための前記コントローラ出力信号を受けたときに、該コントローラ出力信号を一時保持することを特徴とするメモリシステム。
【０１２４】
（付記８）  付記６記載のメモリシステムにおいて、
前記メモリチップに対するアクセスが重複したときに、前記メモリチップへのアクセス順を調整する調停回路を備えていることを特徴とするメモリシステム。
（付記９）  付記８記載のメモリシステムにおいて、
前記調停回路は、自身の回路機能をそれぞれ再構築可能なプログラマブルロジックで構成されていることを特徴とするメモリシステム。
【０１２５】
（付記１０）  付記１記載のメモリシステムにおいて、
前記メモリコントローラおよび前記コントローラは、同一チップ上に搭載されていることを特徴とするメモリシステム。
（付記１１）  付記１０記載のメモリシステムにおいて、
前記共通バスは、前記コントローラと前記メモリチップとを搭載するプリント基板上に形成されていることを特徴とするメモリシステム。
【０１２６】
（付記１２）  付記１０記載のメモリシステムにおいて、
前記コントローラと前記メモリチップとは、三次元積層され、
前記共通バスは、前記コントローラと前記メモリチップと接続する相互接続配線として形成されていることを特徴とするメモリシステム。
（付記１３）  付記１記載のメモリシステムにおいて、
前記メモリチップには、揮発性メモリおよび不揮発性メモリが含まれることを特徴とするメモリシステム。
【０１２７】
（付記１４）  付記１３記載のメモリシステムにおいて、
前記揮発性メモリは、クロック同期式のＤＲＡＭであり、前記不揮発性メモリは、クロック同期式のNAND型フラッシュメモリであることを特徴とするメモリシステム。
（付記１５）  付記１記載のメモリシステムにおいて、
前記動作記憶部は、自身が記憶する情報を再書き込み可能なプログラマブルロジックで構成されていることを特徴とするメモリシステム。
【０１２８】
以上、本発明について詳細に説明してきたが、上記の実施形態およびその変形例は発明の一例に過ぎず、本発明はこれに限定されるものではない。本発明を逸脱しない範囲で変形可能であることは明らかである。
【０１２９】
【発明の効果】
本発明のメモリシステムでは、一つのメモリコントローラで複数種のメモリチップをアクセスできる。この結果、信号線の数が最小限になる。また、メモリコントローラの回路規模を小さくできる。従来のように、メモリチップを開発する毎にメモリコントローラを設計する必要はない。
【０１３０】
本発明のメモリシステムでは、メモリコントローラが、メモリチップのコマンド仕様等に応じて、メモリ入力信号の出力順およびメモリ出力信号の受け取り順を調整するだけで、動作仕様の異なる複数種のメモリチップを確実にアクセスできる。
本発明のメモリシステムでは、メモリチップとのインタフェースである入出力制御回路を、各メモリチップの動作仕様に応じて動作することで、複雑な制御回路を用いることなくメモリチップを確実に動作できる。
【０１３１】
本発明のメモリシステムでは、信号保持部に信号を一時保持することで、各メモリチップの動作仕様に応じて、メモリチップに信号を出力できる。
本発明のメモリシステムでは、コントローラは、別のメモリチップの動作待ちと無関係に、周辺回路等の別のデバイスまたは周辺コアをアクセスできる。コントローラが無駄なサイクルを実行することがなくなるため、システム全体の動作効率が向上する。
【０１３２】
本発明のメモリシステムでは、調停回路により、一つのメモリコントローラで複数種のメモリチップを効率よく動作させることができる。この結果、メモリシステムにおけるデータ転送レートを向上できる。
本発明のメモリシステムでは、メモリコントローラは、複数種のメモリチップに対して一つで対応できるため、その回路規模を小さくできる。この結果、メモリコントローラを搭載するシステムLSI等のチップサイズを小さくでき、メモリシステムのコストを低減できる。システムLSIの回路規模が小さくなるため、システムLSIの設計検証にかかる時間を低減できる。
【０１３３】
本発明のメモリシステムでは、プリント基板上に配線される信号線の数を減らすことができ、プリント基板の設計コストおよび製造コストを低減できる。
本発明のメモリシステムでは、相互接続配線の数を減らすことができ、三次元積層されたメモリシステムの信頼性を向上できる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態を示すシステム構成図である。
【図２】図１のシステムLSIの詳細を示すブロック図である。
【図３】図１の共通バスの詳細を示す配線図である。
【図４】図１の共通バスのインタフェース仕様を示す波形図である。
【図５】メモリシステムのインタフェース階層を示す説明図である。
【図６】第１の実施形態におけるNOR型フラッシュメモリおよびSDRAMの読み出し動作を示すタイミング図である。
【図７】第１の実施形態におけるNOR型フラッシュメモリの読み出し動作およびSDRAMの書き込み動作を示すタイミング図である。
【図８】第１の実施形態におけるNOR型フラッシュメモリおよびSDRAMの書き込み動作を示すタイミング図である。
【図９】第１の実施形態におけるNAND型フラッシュメモリおよびSDRAMの読み出し動作を示すタイミング図である。
【図１０】第１の実施形態におけるNAND型フラッシュメモリの書き込み動作およびSDRAMの読み出し動作を示すタイミング図である。
【図１１】本発明の第２の実施形態における共通バスの詳細を示す配線図である。
【図１２】第２の実施形態におけるNOR型フラッシュメモリおよびSDRAMの読み出し動作を示すタイミング図である。
【図１３】第２の実施形態におけるNAND型フラッシュメモリおよびSDRAMの読み出し動作を示すタイミング図である。
【図１４】第２の実施形態におけるNAND型フラッシュメモリの書き込み動作およびSDRAMの読み出し動作を示すタイミング図である。
【図１５】第２の実施形態におけるNAND型フラッシュメモリからSDRAMへのDMA転送を示すタイミング図である。
【図１６】本発明の第３の実施形態を示すシステム構成図である。
【図１７】従来のメモリチップを有するメモリシステムを示すブロック図である。
【符号の説明】
１０  プリント基板
１２  システムLSI
１４  メモリチップ
１４ａ  SDRAM
１４ｂ  NOR型フラッシュメモリ
１４ｃ  NAND型フラッシュメモリ
１６  共通バス
１８  MPU
２０ａ、２０ｂ、２０ｃ  周辺（IP）コア
２２  メモリコントローラ
２４  動作記憶部
２６  調停回路
２８  変換制御回路
３０  信号保持部
３２  入出力制御回路
３２ａ、３２ｂ  入出力回路
ACT  アクティブコマンド
ADD0-ADD22  アドレス端子（信号）
AL  アドレスラッチ信号
ALE  コマンド端子（信号）
CA  列アドレス信号
/CAS  コマンド端子（信号）
/CE、CE、CE0、CE1、CE2  チップイネーブル端子（信号）
CIN  コントローラ入力信号
CL  コマンドラッチ信号
CLE  コマンド端子（信号）
CLK  クロック端子
COM0-COM3  コマンド端子（信号）
COUT  コントローラ出力信号
/CS  チップセレクト端子（信号）
D0-D3、...Dn  データ信号
DL  データラッチ信号
DMA  制御信号
DQ0-DQ7  データ入出力端子（信号）
MIN  メモリ入力信号
MOUT  メモリ出力信号
/OE  コマンド端子（信号）
PST  プログラム開始信号
RA  行アドレス信号
/RAS  コマンド端子（信号）
RD  読み出しコマンド
/RE  コマンド端子（信号）
SCLK  システムクロック信号
STS、STS0、STS1  ステータス端子（信号）
tAC  アクセス時間
tCLK  クロック周期
tIH、tOH  ホールド時間
tIS、tOS  セットアップ時間
/WE  コマンド端子（信号）
WR  書き込みコマンド
【図１】
0004722305.tif 000002
【図２】
0004722305.tif 000003
【図３】
0004722305.tif 000004
【図４】
0004722305.tif 000005
【図５】
0004722305.tif 000006
【図６】
0004722305.tif 000007
【図７】
0004722305.tif 000008
【図８】
0004722305.tif 000009
【図９】
0004722305.tif 000010
【図１０】
0004722305.tif 000011
【図１１】
0004722305.tif 000012
【図１２】
0004722305.tif 000013
【図１３】
0004722305.tif 000014
【図１４】
0004722305.tif 000015
【図１５】
0004722305.tif 000016
【図１６】
0004722305.tif 000017
【図１７】
0004722305.tif 000018