(57)【要約】【課題】回路レイアウトによる遅延調整が不要となり、コントローラの設計が容易となるメモリカードのカードコントローラを提供することである。【解決手段】ホスト機器２００からのデータが書き込まれて読み出されるメモリ部１５０と、ホスト機器からメモリ部への書き込み及び読み出しを制御するカードコントローラ１１０とを具備し、カードコントローラは、出力イネーブル信号に応じて書き込みと読み出しを切り替えることが可能なＩ／Ｏバッファ１０１と、ホスト機器からの読み出し命令である読み出しイネーブル信号に基づいてＩ／Ｏバッファの切り替えを可能とする出力イネーブル信号を生成するものであって、パラメータの設定によって読み出しイネーブル信号を遅延させる時間を変更可能にして出力イネーブル信号を生成する出力イネーブル信号生成手段１２１とを備えたものである。【選択図】図１
2009169690.tif 000002
【特許請求の範囲】
【請求項１】
ホスト機器からのデータが書き込まれて読み出されるメモリ部に対してその書き込み及び読み出しを制御するメモリカードのカードコントローラであって、
前記カードコントローラは、
出力イネーブル信号に応じて書き込みと読み出しを切り替えることが可能なＩ／Ｏバッファと、
ホスト機器からの読み出し命令である読み出しイネーブル信号に基づいて前記Ｉ／Ｏバッファの切り替えを可能とする前記出力イネーブル信号を生成するものであって、パラメータの設定によって前記読み出しイネーブル信号を遅延させる時間を変更可能にして前記出力イネーブル信号を生成する出力イネーブル信号生成手段と、
を備えたことを特徴とするメモリカードのカードコントローラ。
【請求項２】
前記出力イネーブル信号生成手段は、前記読み出しイネーブル信号の立ち下がりエッジ及び立ち上がりエッジを遅延させる時間をエッジ毎に変更可能とすることを特徴とする請求項１に記載のメモリカードのカードコントローラ。
【請求項３】
前記出力イネーブル信号生成手段は、立ち下がりエッジ及び立ち上がりエッジ毎に遅延時間を変更可能であることを特徴とする請求項２に記載のメモリカードのカードコントローラ。
【請求項４】
前記Ｉ／Ｏバッファは、ホスト機器が扱うデータが複数ビットで構成される場合、そのビット数に対応した数の複数のＩ／Ｏバッファで構成され、
前記出力イネーブル信号生成手段は、前記Ｉ／Ｏバッファの数と同数の複数の出力イネーブル信号生成手段で構成され、
前記読み出しイネーブル信号に基づいて前記複数の出力イネーブル信号生成手段で生成される複数の出力イネーブル信号それぞれの立ち下がりエッジ及び立ち上がりエッジの遅延時間を異ならせることを特徴とする請求項１乃至３のいずれか１つに記載のメモリカードのカードコントローラ。
【請求項５】
前記メモリ部は、ＮＡＮＤフラッシュメモリであることを特徴とする請求項１乃至４のいずれか１つに記載のメモリカードのカードコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホスト機器からのアクセスによりメモリ部へのデータの書き込み及び読み出しを行うメモリカードのカードコントローラに関する。
【背景技術】
【０００２】
近年、パーソナルコンピュータ、ＰＤＡ、デジタルカメラ、携帯電話等の様々な携帯用電子機器においては、リムーバブル記憶デバイスの１つであるメモリカードが多く用いられている。メモリカードとしては、ＰＣカード、及び小型のｘＤピクチャカードやＳＤＴＭカードなどがある。ｘＤピクチャカードやＳＤＴＭカードは、不揮発性のフラッシュメモリを内蔵したメモリカードであり、特に小型化、大容量化、及び高速化の要求に見合うように設計されている。
【０００３】
このようなメモリカードは、不揮発性の半導体メモリである例えばＮＡＮＤフラッシュメモリと、そのＮＡＮＤフラッシュメモリに対してホスト機器からデータを書き込み、また読み出すための制御を行うカードコントローラとを備えている。
【０００４】
ホスト機器を例えばデジタルカメラとし、メモリカードを例えばｘＤピクチャカードとした場合、カードコントローラは、ホスト機器で撮影した例えば８bitの写真データを、ホスト機器からのライトイネーブル信号(ＷＥ)を用いてメモリカードのカードコントローラ内の入出力(Ｉ／Ｏ)端子を含むＩ／Ｏバッファを経てＮＡＮＤフラッシュメモリに書き込み、またＮＡＮＤフラッシュメモリに書き込まれたデータを、ホスト機器からのリードイネーブル信号(ＲＥ)に基づいて作成された出力イネーブル信号(ＯＥ)を用いて前述のＩ／Ｏバッファを経てＩ／Ｏ端子からホスト機器へ出力し、ホスト機器の表示部に表示する。
【０００５】
Ｉ／Ｏバッファは、Ｉ／Ｏ端子と、書き込み時にホスト機器から出力されるデータをカードコントローラ内部に入力しＮＡＮＤフラッシュメモリ側へ出力する書き込みバッファと、読み出し時にＮＡＮＤフラッシュメモリ側から読み出されたデータを入力し出力径路を出力イネーブル信号(ＯＥ)を用いて導通させてホスト機器へ出力する読み出しバッファとを備えている。
【０００６】
Ｉ／Ｏ端子は、読み出し時にホスト機器から供給されるリードイネーブル信号(ＲＥ)に基づいて作成された出力イネーブル信号(ＯＥ)を用いて読み出しバッファが導通したときには、カードコントローラからホスト機器の方向に読み出されたデータを出力し、書き込み時は、出力イネーブル信号(ＯＥ)にて読み出しバッファが非導通とされた状態で、ホスト機器から送られたデータをホスト機器からＩ／Ｏバッファの書き込みバッファを経てカードコントローラ内部の方向へ入力する双方向の機能を有している。
【０００７】
ここで、メモリカードのＮＡＮＤフラッシュメモリに書き込まれたデータをホスト機器が読み出す場合について説明する。  
リードイネーブル信号(ＲＥ)は例えばローレベルのときが読み出し命令に相当しているとし、このリードイネーブル信号(ＲＥ)がメモリカード内のカードコントローラに入力されることによってカードコントローラはホスト機器の仕様で決められた遅延時間及び時間幅を備えた出力イネーブル信号(ＯＥ)を生成して、前述のＩ／Ｏバッファ内の読み出しバッファの制御端子(ＯＥ端子)に供給する。出力イネーブル信号(ＯＥ)は例えばローレベルのときに読み出しバッファをオンにして、メモリ部から読み出されたデータをホスト機器に出力するものとなっている。
【０００８】
出力イネーブル信号(ＯＥ)がハイレベル信号からローレベル信号へ立ち下がるときのタイミング(言い換えればメモリ部より読み出されたデータをホスト機器側へ出力開始するタイミング)は、読み出し命令であるリードイネーブル信号(ＲＥ)がハイレベルからローレベルへ立ち下がるときの立ち下がりエッジ(Fa11 Edge)のタイミングよりも、ホスト機器の仕様によって決められた所定の第１の遅延時間の範囲で遅延してもよいことが許容されている。また、出力イネーブル信号(ＯＥ)がローレベル信号からハイレベル信号へ立ち上がるときのタイミング(言い換えればメモリ部より読み出されたデータの出力終了タイミング)が、リードイネーブル信号(ＲＥ)がローレベルからハイレベルへ立ち上がるときの立ち上がりエッジ(Rise Edge)のタイミングよりもホスト機器の仕様によって決められた所定の第２の遅延時間の範囲で遅延してもよいことが許容されている。
【０００９】
これは、読み出し命令の開始を意味するリードイネーブル信号(ＲＥ)の立ち下がりエッジ(Fa11 Edge)のタイミングに対して、メモリ部より読み出された出力データを確定させるための第１の遅延許容期間を設ける一方、読み出し命令の終了を意味するリードイネーブル信号(ＲＥ)の立ち上がりエッジのタイミングに対して、安定した所定長の出力データを確保するための第２の遅延許容期間を設けることによって、出力データとして安定で必要なデータ長を備えたデータをホスト機器へ送出できるようにするためである。
【００１０】
このようにＮＡＮＤフラッシュメモリより読み出されたデータのホスト機器への出力タイミングが、出力イネーブル信号(ＯＥ)がハイレベル信号からローレベル信号へ立ち下がるときのタイミングを調整する一方ローレベル信号からハイレベル信号へ立ち上がるときのタイミングを調整することによって調整可能であることから、従来のメモリカードのカードコントローラでは、出力イネーブル信号(ＯＥ)の遅延値を、リードイネーブル信号(ＲＥ)の立ち下がり(Fa11 Edge)に対して遅延調整する立ち下がり調整回路を設ける一方、リードイネーブル信号(ＲＥ)の立ち上がりエッジ(Rise Edge)に対して遅延調整する立ち上がり調整回路を設けることによって調整していた。
【００１１】
ところで、従来、このような立ち下がり調整回路及び立ち上がり調整回路の遅延調整は、セル配置、セル追加、セル削除、配線調整などの回路レイアウトによって行うことで、カードコントローラの仕様を満たすようにしていた。  
しかしながら、 立ち下がり遅延と、立ち上がり遅延をカードコントローラのＡＣスペックに合うようにするために、セル配置や配線の調整に関して繰り返し作業が発生する。つまり、遅延調整は、セル配置、セル追加、セル削除、配線調整などを行うため、レイアウト時間が増大する問題があった。
【００１２】
一方、先行技術文献としての例えば特許文献１には、出力イネーブル信号を連続データ出力時のサスペンド命令と共用し、かつデータの出力制御と共にサスペンド状態か否かの通知信号を同期動作させる半導体記憶装置が記載されている。  
しかしながら、特許文献１には、出力イネーブル信号の遅延調整の設定値を、多く時間の掛かる回路レイアウトによらず、容易に設定する手法については述べられていない。
【特許文献１】特開２００４−２０６８３２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
そこで、本発明は上記の問題に鑑み、回路レイアウトによる遅延調整が不要となり、コントローラの設計が容易となるメモリカードのカードコントローラを提供することを目的とするものである。
【課題を解決するための手段】
【００１４】
本願発明の一態様によれば、ホスト機器からのデータが書き込まれて読み出されるメモリ部に対してその書き込み及び読み出しを制御するメモリカードのカードコントローラであって、前記カードコントローラは、出力イネーブル信号に応じて書き込みと読み出しを切り替えることが可能なＩ／Ｏバッファと、ホスト機器からの読み出し命令である読み出しイネーブル信号に基づいて前記Ｉ／Ｏバッファの切り替えを可能とする前記出力イネーブル信号を生成するものであって、パラメータの設定によって前記読み出しイネーブル信号を遅延させる時間を変更可能にして前記出力イネーブル信号を生成する出力イネーブル信号生成手段と、を備えたことを特徴とするメモリカードのコントローラが提供される。
【発明の効果】
【００１５】
本発明によれば、回路レイアウトによる遅延調整が不要となり、コントローラの設計が容易となるメモリカードのカードコントローラを提供することができる。
【発明を実施するための最良の形態】
【００１６】
発明の実施の形態について図面を参照して説明する。  
図１は本発明に係るカードコントローラが適用されるメモリカードの構成例を概略的に示すブロック図である。図１は８bitの並列ビット信号が入出力する構成例を示している。
【００１７】
図１において、メモリカード１００は、ホスト機器２００と複数本の信号線からなるデータバスを介して情報の授受を行う。メモリカード１００は、カードコントローラ１１０と、メモリ部としてのＮＡＮＤフラッシュメモリ１５０とを備えている。
【００１８】
カードコントローラ１１０は、ホスト機器２００側の複数(例えば８bitのデータ線であれば８個)のＩ／Ｏバッファ２０１〜２０８のＩ／Ｏ端子と電気的に接続可能な同数(例えば８個)のＩ／Ｏ端子を含むＩ／Ｏバッファ１０１〜１０８と、ホスト機器２００側のリードイネーブル信号出力端子２１１から出力されて、ＮＡＮＤ型フラッシュメモリ１５０に対してデータの読み出しを指示するリードイネーブル信号(ＲＥ)を入力する入力端子１１１と、ホスト機器２００側のライトイネーブル信号出力端子２１２から出力されて、ＮＡＮＤ型フラッシュメモリ１５０に対してデータの書き込みを指示するライトイネーブル信号(ＷＥ)を入力する入力端子１１２と、データ読み出し時にホスト機器２００より入力されるリードイネーブル信号に基づいて複数ビット(例えば８bit)の各ビットデータを出力する時間を調整するための複数の出力イネーブル信号ＯＥ1〜ＯＥ8を生成して複数のＩ／Ｏバッファ１０１〜１０８に供給するもので、出力イネーブル信号の立ち下がりエッジ(Fall Edge)や立ち上がりエッジ(Rise Edge)の遅延値を変更可能な機能を有する複数(例えば８個)のセル１２１〜１２８で構成される複数の出力イネーブル信号生成手段と、ホスト機器２００の仕様に準じたカードコントローラ１１０の信号をＮＡＮＤフラッシュメモリ１５０の仕様に変換したり、またその逆の変換をする信号処理部１３１と、を備えている。
【００１９】
［第１の実施形態］
図２は本発明の第１の実施形態のカードコントローラの要部の構成を示すブロック図である。図２は図１の８bitの並列ビット信号のうちの１bit分に相当する回路のみを示したものである。  
図２では、１つのＩ／Ｏバッファ１０１と、このＩ／Ｏバッファ１０１に供給する出力イネーブル信号(ＯＥ)を生成する１つのセル１２１で構成される１つの出力イネーブル信号生成手段を示している。
【００２０】
Ｉ／Ｏバッファ１０１は、ホスト機器２００からのデータをＮＡＮＤフラッシュメモリ１５０に書き込むためにデータ入力する一方ＮＡＮＤフラッシュメモリ１５０から読み出したデータをホスト機器２００へ出力するためにデータ出力するＩ／Ｏ端子１０１-1と、データ書き込み時にデータを入力し信号処理部１３１へ出力するための書き込みバッファ１０１-2と、データ読み出し時に読み出したデータを入力しホスト機器２００へ出力するための読み出しバッファ１０１-3とを備えている。
【００２１】
読み出しバッファ１０１-4は、読み出したデータを入力する端子と、その読み出したデータの導通及び非導通を制御するための出力イネーブル信号を入力する制御端子１０１-4と、導通しているときにデータを出力する端子と備え、出力イネーブル信号によって導通して読み出されたデータをＩ／Ｏ端子１０１-1を経てホスト機器２００へ出力しているときは、ホスト機器２００からの書き込みデータはＩ／Ｏ端子１０１-1を経て書き込みバッファ１０１-2へ入力することができず、読み出されたデータをＩ／Ｏ端子１０１-1を経てホスト機器２００へ出力していないときに、ホスト機器２００からの書き込みデータをＩ／Ｏ端子１０１-1を経て書き込みバッファ１０１-2へ入力することが可能とされる。
【００２２】
出力イネーブル信号生成手段としてのセル１２１は、入力ＩＮ121としてリードイネーブル信号若しくはそれとほぼ同等な信号を入力し、出力ＯＵＴ121として出力イネーブル信号(ＯＥ)を生成して出力するものであり、読み出したデータを出力する時間を調整するための出力イネーブル信号立ち下がりエッジ及び立ち上がりエッジそれぞれの遅延値を、パラメータ(ＭＦ0，ＭＦ1，ＭＲ0及びＭＲ1)の設定により変更可能な機能を備えている。
【００２３】
図３は遅延値変更可能セルにパラメータＭＲ／ＭＦを設定した際のセルの入出力のタイミングチャートの一例を示している。  
図３はホスト機器の仕様によって要求される、リードイネーブル信号の立ち下がりエッジ及び立ち上がりエッジのタイミングに対してメモリ部から読み出されてＩ／Ｏ出力されるデータの許容される遅延時間及びデータ長の調整範囲を示している。
【００２４】
図３において、図３(a)の−ＲＥはローレベルでアクティブであるリードイネーブル信号を示している。つまり、ローレベル部分が読み出し命令に相当している。図３(b)のＩ／Ｏ（７：０）は入出力されるデータが８bitの並列ビット信号であるとき８個のＩ／Ｏ端子に接続した８本の信号ラインが存在していることを示している。(b)にはそのうちの１本の信号ラインに出力されるデータが示されている。(b)の出力データで斜線部分は例えばｘＤピクチャカードのような特定のメモリカードに要求されるホスト機器の仕様で許容される調整範囲の一例を示している。リードイネーブル信号ＲＥの立ち下がりエッジ後の斜線部分の５nsの範囲内及び立ち上がりエッジ後の斜線部分の５nsの範囲内に出力データの前端部及び後端部が入っていれば、その出力データはホスト機器２００の仕様で許容されるものとしてホスト機器２００側に出力可能となる。図３(c)はセル１２１の入力ＩＮ121を示しており、この入力ＩＮ121は(a)のリードイネーブル信号(ＲＥ)と立ち上がりエッジ(Rise Edge)が同等若しくは若干遅延したローレベルでアンティブな信号である。図３(d)はセル１２１の出力ＯＵＴ121を示しており、この出力ＯＵＴ121は(c)の入力ＩＮ121の立ち下がりエッジ及び立ち上がりエッジの遅延値がそれぞれパラメータ(ＭＦ1，ＭＦ0，ＭＲ1，ＭＲ0)の設定のみで調整して生成されたものであって、ホスト機器の仕様で決められた遅延時間及び時間幅を備えた出力イネーブル信号(ＯＥ)として使用される。出力イネーブル信号(ＯＥ)は読み出しバッファ１０１-3に供給される結果、読み出しバッファ１０１-3からＩ／Ｏ端子１０１-1へ出力されるデータは(b)に示すようにホスト機器２００の仕様に準じたデータとなる。
【００２５】
なお、ここでのホスト機器の仕様は、リードイネーブル信号(ＲＥ)の立ち下がりエッジ(Fall Edge)からデータホールドは最小５ns で、データ確定最大時間は１０nsであり、リードイネーブル信号(ＲＥ)の立ち上がりエッジ(Rise Edge)から最小１５nsデータをホールドし、データバスの駆動は、最大２０nsまでを要求するものと仮定している。
【００２６】
図４はＭＲ／ＭＦの設定値表及び各エッジの遅延時間を示している。  
図４は図２における立ち下がりエッジ調整用パラメータMＦ1，MＦ0、及び立ち上がりエッジ調整用パラメータＭＲ1，ＭＲ0の設定値表、及び各設定値に対応する立ち下がりエッジ(Fall Edge)の遅延時間及び立ち上がりエッジ(Rise Edge)の遅延時間を示している。
【００２７】
入力ＩＮ121はリードイネーブル信号ＲＥから遅延なしで生成される信号とした場合、例えば、MR1=1,MR0=0 , MF1=0,MF0=1の場合、OUT121の遅延値はRise Edge=10ns , Fall Edge=5nsとなる(図４の例(1))。これを図示すると、図５のようになる。  
また、MR1=1,MR0=1 , MF1=0,MF0=1の場合、OUT121はFall Edge = 5ns , Rise Edge = 15ns遅延した信号となる(図４の例(2))。
【００２８】
図６は図２に示した立ち下がりエッジ及び立ち上がりエッジの遅延値変更可能なセル１２１のハードウェア構成例の回路図を示している。  
出力イネーブル信号生成手段である遅延値変更可能セル１２１は、入力ＩＮ121の立ち下がりエッジをパラメータＭＦ1，ＭＦ0の設定値に応じた遅延量だけ遅延させる立ち下がりエッジ遅延調整部１０と、入力ＩＮ121の立ち上がりエッジをパラメータＭＲ1，ＭＲ0の設定値に応じた遅延量だけ遅延させる立ち上がりエッジ遅延調整部２０と、入力ＩＮ121の立ち下がり又は立ち上がりに応じて立ち下がりエッジ遅延調整部１０の出力又は立ち上がりエッジ遅延調整部２０の出力の一方を選択して出力する選択出力部３０と、を備えている。
【００２９】
立ち下がりエッジ遅延調整部１０は、遅延値として０ns、５ns、１０ns、１５nsの遅延が可能な４本の遅延線路１１〜１４と、立ち上がり遅延量選択用パラメータＭＦ1及びＭＦ0の設定に基づき目標の遅延量を４本の遅延線路１１〜１４から選択するための複数(ここでは３つ)のセレクタ１５〜１７及びアンドゲート１８と、を備えている。  
立ち上がりエッジ遅延調整部２０は、遅延値として０ns、５ns、１０ns、１５nsの遅延が可能な４本の遅延線路２１〜２４と、立ち上がり遅延量選択用パラメータＭＲ1及びＭＲ0の設定に基づき目標の遅延量を４本の遅延線路２１〜２４から選択するための複数(ここでは３つ)のセレクタ２５〜２７及びアンドゲート２８と、を備えている。
【００３０】
選択出力部３０は、立ち下がりエッジ遅延調整部１０の出力と立ち上がりエッジ遅延調整部２０の出力の両方を入力し、入力ＩＮ121の立ち下がり及び立ち上がりに応じて一方の出力を選択して出力ＯＵＴ121とするセレクタ３１を備えている。  
４本の遅延線路１１〜１４及び４本の遅延線路２１〜２４は、遅延値が０nsである線路１１，２１を除いて、１個当たりの遅延量が１nsのバッファを遅延量に応じて複数個直列接続することにより構成している。５ns、１０ns、１５nsの遅延量であればそれぞれ、５個のバッファを直列接続したもの、１０個のバッファを直列接続したもの、１５個のバッファを直列接続したもので構成している。  
なお、説明を簡略化するため、遅延用のバッファ以外の配線、セレクタ、及びアンドゲートは遅延量は０としている。
【００３１】
図７は図６の遅延値変更可能なセル１２１の動作を説明する図である。ここでは、入力ＩＮ121に対して図５に示したような遅延(即ち、立ち下がりエッジにつき５ns遅延、立ち上がりエッジにつき１０ns遅延)をした出力ＯＵＴ121を得る場合について説明する。
【００３２】
このような立ち下がりエッジ及び立ち上がりエッジの遅延量を得るには、図４の設定値表の選択例として例(1)のパラメータの設定値を選択すればよい。すなわち、MR1=1,MR0=0 , MF1=0,MF0=1と設定すればよい。
【００３３】
図７で太い実線がMR1=1,MR0=0 , MF1=0,MF0=1の設定時の入力信号ＩＮ121の伝達ルートを示している。立ち下がりエッジ遅延調整部１０では、パラメータ設定値MF1=0,MF0=1に基づきセレクタ１５，１７にて５ns遅延線路１２の出力が選択されて最終段のセレクタ３１の‘０’側入力端子に入力される。また、立ち上がりエッジ遅延調整部２０では、パラメータ設定値MR1=1,MR0=0に基づきセレクタ２６，２７にて１０ns遅延線路２３の出力が選択されて最終段のセレクタ３１の‘１’側入力端子に入力される。
【００３４】
選択出力部３０に相当する最終段のセレクタ３１については、そのセレクト端子に入力ＩＮ121が供給されており、入力ＩＮ121の信号を構成するローレベル又はハイレベルのレベル変化に応じてセレクタ３１に入力する２つの入力の一方が選択されて出力される。
【００３５】
セレクタ３１では、入力ＩＮ121の立ち下がり時にハイレベルからローレベルへ立ち下がったとき(即ち‘０’のとき)に立ち下がりエッジ遅延調整部１０側の５ns遅延した出力が選択されて出力され、また入力ＩＮ121の立ち上がり時にローレベルからハイレベルへ立ち上がったとき(即ち‘１’のとき)に立ち上がりエッジ遅延調整部２０側の１０ns遅延した出力が選択されて出力される。
【００３６】
図８は本発明を適用した場合と従来例の場合とによるレイアウト設計のフローの違いを示している。  
図８(a)は本発明を適用した場合によるレイアウト設計のフローである。遅延値変更可能なセル１２１についてレイアウト設計を行う。例えば、セル(図６参照)のような回路レイアウト設計を行う（ステップＳ1）。そして、レイアウトの終了（ステップＳ2）後に、図４のようなパラメータの設定値表を参照して、ホスト機器２００の仕様に合う遅延値が得られるようにパラメータＭＲ及びＭＦの設定値に設定する（ステップＳ3）。
【００３７】
図８(b)は従来例によるレイアウト設計のフローである。従来は、立ち下がり用調整回路及び立ち上がり用調整回路を別々にレイアウト設計する手法であった。レイアウトを開始する（ステップＳ11）と、まず、セル配置、セル挿入、セル削除、配線調整などを複数回繰り返し行って立ち下がり遅延量の調整を行い（ステップＳ12）、次に同様にセル配置、セル挿入、セル削除、配線調整などを複数回繰り返し行って立ち上がり遅延量の調整を行い（ステップＳ13）、ホスト機器の仕様に合うよう調整し、レイアウトを終了する（ステップＳ14）。遅延調整は、セルの配置や配線調整などを行うため、レイアウト時間が増大する問題があった。
【００３８】
第１の実施形態によれば、パラメータの設定値を変えることによって立ち下がりエッジ及び立ち上がりエッジの遅延時間を容易に変更できるので、従来のようなセルの配置や配線長などの回路レイアウトによる遅延調整が不要となり、コントローラの設計が容易となる。従って、カードの汎用性が広がる利点を有する。
【００３９】
［第２の実施形態］
図９は本発明の第２の実施形態のカードコントローラの要部の構成を示すブロック図である。図２の第１の実施形態では、１ビット信号を入出力する１つのＩ／Ｏバッファに対して出力イネーブル信号(ＯＥ)を生成して供給する構成を説明した。
【００４０】
図９の第２の実施形態では、２bitの並列ビット信号を入出力する２つのＩ／Ｏ端子１０１-1，１０２-1に対して遅延値変更可能セル１２１，１２２を配置した例を示しており、２つのＩ／Ｏバッファ１０１，１０２の読み出しバッファ１０１-3，１０２-3に対してそれぞれ遅延値変更可能セル１２１，１２２から出力イネーブル信号ＯＥ1，ＯＥ2を生成して供給する構成となっている。図１の８bitの並列ビット信号のうちの２bit分の構成を取り出したものと同等である。
【００４１】
遅延値変更可能セル１２１，１２２のパラメータの設定値を別の値に設定することで、ホスト機器からのリードイネーブル信号（ＲＥ）に基づいて生成される２つの出力イネーブル信号ＯＥ1，ＯＥ2それぞれの立ち下がりエッジ及び立ち上がりエッジの遅延時間を異ならせることができ、Ｉ／Ｏバッファ１０１，１０２の同時スイッチングを防止する対策を実施できる。これにより、遅延値変更可能セル１２１，１２２における出力イネーブル信号が同時にハイレベルからローレベルに切り替わることによって、読み出しバッファ１０１-3，１０２-3が同時スイッチングして複数の並列ビット信号が同時にＩ／Ｏ端子１０１-1，１０２-1に出力することがなくなり、同時スイッチングに伴うノイズの発生や信号線間の信号干渉を無くすことが可能となる。
なお、図９の第２の実施形態では、同時スイッチングを防止するために２bitの並列ビット信号が入出力する構成例について説明しているが、図１のように８bitの並列ビット信号が入出力する場合や、更にビット数の多い１６bit，３２bit…といった多bitの並列ビット信号が入出力する構成にも適用できることは勿論である。
【００４２】
第２の実施形態によれば、複数のＩ／Ｏバッファが同じタイミングで同時にローレベルからハイレベルになるなどの同時スイッチング動作を無くして、ノイズ発生や信号線間の相互干渉を防ぐことが可能となる。
【図面の簡単な説明】
【００４３】
【図１】本発明に係るカードコントローラが適用されるメモリカードの構成例を概略的に示すブロック図。
【図２】本発明の第１の実施形態のカードコントローラの要部の構成を示すブロック図。
【図３】遅延値変更可能セルにパラメータＭＲ／ＭＦを設定した際のセルの入出力のタイミングチャートの一例を示す図。
【図４】ＭＲ／ＭＦの設定値表及び各エッジの遅延時間を示す図。
【図５】遅延値変更可能セルの入出力のタイミングチャートの他の例を示す図。
【図６】図２に示した立ち下がりエッジ及び立ち上がりエッジの遅延値変更可能なセルのハードウェア構成の回路図。
【図７】図６の遅延値変更可能なセルの動作を説明する図。
【図８】本発明を適用した場合と従来例の場合とによるレイアウト設計のフローの違いを示す図。
【図９】本発明の第２の実施形態のカードコントローラの要部の構成を示すブロック図。
【符号の説明】
【００４４】
１００…メモリカード
１０１〜１０８…Ｉ／Ｏバッファ
１０１-1，１０２-1…Ｉ／Ｏ端子
１０１-3，１０２-3…読み出しバッファ
１１０…カードコントローラ
１１１…リードイネーブル信号入力端子
１２１〜１２８…遅延値変更可能セル（出力イネーブル信号生成手段）
１５０…ＮＡＮＤフラッシュメモリ(メモリ部)
【図１】
2009169690.tif 000003
【図２】
2009169690.tif 000004
【図３】
2009169690.tif 000005
【図４】
2009169690.tif 000006
【図５】
2009169690.tif 000007
【図６】
2009169690.tif 000008
【図７】
2009169690.tif 000009
【図８】
2009169690.tif 000010
【図９】
2009169690.tif 000011