(57)【特許請求の範囲】
【請求項１】
第１、第２の半導体装置を備え、
前記第１の半導体装置は、
第１の外部データバスの状態に応じて第１の動作モードの選択を行なう第１の機能選択回路と、
前記第１の動作モードが主動作モードのときに、ホストシステムから読出要求および指定されたアドレス信号を受けて対応する第１の読出制御信号および第１の変換アドレス信号を出力し、かつ、前記第１の変換アドレス信号に対応する第１の読出データを受けて前記ホストシステムに出力する第１の制御回路と、
前記第１の読出制御信号、前記第１の変換アドレス信号および前記第１の読出データを授受するための第１の内部データバスと、
前記第１の動作モードが副動作モードのときに、前記第１の外部データバスと前記第１の内部データバスとを接続する第１の接続回路と、
前記第１の内部データバスから前記第１の読出制御信号および前記第１の変換アドレス信号を受けて、対応する前記第１の読出データを前記第１の内部データバスに出力する第１の不揮発性メモリとを含み、
前記第２の半導体装置は、
第２の外部データバスの状態に応じて第２の動作モードの選択を行なう第２の機能選択回路と、
前記第２の動作モードが主動作モードのときに、前記ホストシステムから前記読出要求および指定された前記アドレス信号を受けて対応する第２の読出制御信号および第２の変換アドレス信号を出力し、かつ、前記第２の変換アドレス信号に対応する第２の読出データを受けて前記ホストシステムに出力する第２の制御回路と、
前記第２の読出制御信号、前記第２の変換アドレス信号および前記第２の読出データを授受するための第２の内部データバスと、
前記第２の動作モードが副動作モードのときに、前記第２の外部データバスと前記第２の内部データバスとを接続する第２の接続回路と、
前記第２の内部データバスから前記第２の読出制御信号および前記第２の変換アドレス信号を受けて、対応する前記第２の読出データを前記第２の内部データバスに出力する第２の不揮発性メモリとを含み、
前記第１の機能選択回路が前記主動作モードを選択する状態に前記第１の外部データバスを固定する外部配線と、
前記第１の制御回路が出力する前記副動作モードの選択に対応する所定の初期状態を前記第１の内部データバスから前記第２の外部データバスに伝達し、前記第２の機能選択回路に与える拡張データバスとをさらに備える、半導体装置を搭載する記憶装置。
【請求項２】
前記外部配線は、前記第１の外部データバスを前記所定の初期状態と異なる状態に固定し、
前記第１の機能選択回路は、リセット解除されると前記第１の外部データバスと前記所定の初期状態との不一致を検出して前記主動作モードを選択し、
前記第１の制御回路は、
前記第１の動作モードが前記主動作モードのときに、電源が前記第１の半導体装置に投入された後に、前記第１の内部データバスを前記所定の初期状態にする第１のメモリインターフェース回路を含み、
前記第２の機能選択回路は、リセット解除されると前記第２の外部データバスの状態と前記所定の初期状態との一致を検出し前記副動作モードを選択する、請求項１に記載の半導体装置を搭載する記憶装置。
【請求項３】
前記第１の半導体装置は、
前記第１の動作モードに対応する第１のモードデータを保持する不揮発性の第１のデータレジスタをさらに含み、
前記第１の機能選択回路は、前記第１のモードデータが所定の設定値と一致したときには、前記第１のモードデータに基づいて前記第１の動作モードを決定し、前記第１のモードデータが前記所定の設定値と不一致であるときは、前記第１の外部データバスの状態に応じて前記第１の動作モードの決定を行ない、
前記第２の半導体装置は、
前記第２の動作モードに対応する第２のモードデータを保持する不揮発性の第２のデータレジスタをさらに含み、
前記第２の機能選択回路は、前記第２のモードデータが前記所定の設定値と一致したときには、前記第２のモードデータに基づいて前記第２の動作モードを決定し、前記第２のモードデータが前記所定の設定値と不一致であるときは、前記第２の外部データバスの状態に応じて前記第２の動作モードの決定を行なう、請求項１に記載の半導体装置を搭載する記憶装置。
【請求項４】
前記第１のデータレジスタは、前記主動作モードに対応する前記所定の設定値を保持し、
前記第２のデータレジスタは、前記副動作モードに対応する前記所定の設定値を保持する、請求項３に記載の半導体装置を搭載する記憶装置。
【請求項５】
前記第１の制御回路は、前記第１の動作モードが前記主動作モードのときに、前記ホストシステムから書込要求を受けると、前記ホストシステムから指定された書込アドレス信号および書込データを受けて前記第１の変換アドレス、第１の書込データおよび第１の書込制御信号を前記第１の内部データバスに出力し、
前記第１の不揮発性メモリは、前記第１の内部データバスから前記第１の書込制御信号、前記第１の変換アドレス信号および前記第１の書込データを受けて、前記第１の書込データを保持し、
前記第２の不揮発性メモリは、前記第２の動作モードが副動作モードのときに、前記第２の内部データバスから前記第１の書込制御信号、前記第１の変換アドレス信号および前記第１の書込データを受けて、前記第１の書込データを保持する、請求項１に記載の半導体装置を搭載する記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、半導体装置および半導体装置を搭載する記憶装置に関し、より特定的には、フラッシュメモリを内蔵する半導体装置およびその半導体装置を搭載する記憶装置に関する。
【０００２】
【従来の技術】
近年、フラッシュメモリの大容量化が進み、ハードディスク装置などと比べて振動に強いという特性を生かして携帯型の情報機器の外部記憶装置としてフラッシュメモリが用いられるようになってきた。しかし、フラッシュメモリの製品仕様は各社ごとに異なっており、携帯型情報機器と直接接続するのは困難であった。
【０００３】
この問題を解決するために、採用されている方式の１つとしてＰＣＭＣＩＡ−ＡＴＡ方式（Personal Computer Memory Card International Association-AT Attachment）がある。ＰＣＭＣＩＡ−ＡＴＡ仕様準拠のＰＣカードやコンパクトフラッシュ等（以降、ＡＴＡカードと称する）は、データの書換単位がハードディスク装置と同じである。これは、ＡＴＡカード内でハードディスク装置のエミュレーションが実行されるためである。
【０００４】
したがって、ＡＴＡカードは、ハードディスクと同様な方法でアクセスすることが可能になる。
【０００５】
この互換性を保つためには、ＡＴＡコントローラＬＳＩをカードに内蔵する必要がある。このため、ＡＴＡカードの価格が高くなってしまう。そこで、ＡＴＡカードの価格を低く抑えるために、フラッシュメモリとＡＴＡコントローラＬＳＩとを１チップに集積したフラッシュメモリ内蔵型ワンチップＡＴＡコントローラが開発されている。
【０００６】
ＡＴＡカードは、通常はフラッシュメモリ単品とそれらを制御、管理するためのＡＴＡコントローラＬＳＩおよび周辺回路とで構成される。カードの記憶容量は、このＡＴＡコントローラＬＳＩが制御可能な記憶容量分の個数のフラッシュメモリを接続することで決定される。
【０００７】
このＡＴＡコントローラＬＳＩと、外部接続していたフラッシュメモリを内蔵しワンチップ化することで、ＡＴＡカードに搭載する部品数を少なくでき、ＡＴＡカードの小型化、コスト削減を行なうことができる。
【０００８】
図７は、従来のワンチップＡＴＡコントローラ１００の構成を示すブロック図である。
【０００９】
図７を参照して、ワンチップＡＴＡコントローラ１００は、内蔵フラッシュメモリ１１４と、ホストシステムと内蔵フラッシュメモリ１１４との間のデータ授受を行なうためのＡＴＡコントローラ部１０２とを含む。
【００１０】
ＡＴＡコントローラ部１０２は、ホストシステムとの間でデータ授受を行なうためのデータバスＩＯＢおよび複数の制御信号群ＣＳＩＧからなるＰＣカードスタンダード準拠のインターフェースを備えるホストインターフェース１０３と、ホストインターフェース１０３から読出および書込要求に伴う割込信号ＩＲＱを受けてＡＴＡコントローラ部１０２の制御を行なうＣＰＵ１０６と、ＣＰＵ１０６が実行するプログラムが格納されているＲＯＭ１１６と、プログラム実行に伴う各種データの授受をＣＰＵ１０６との間で行なうＲＡＭ１１８と、ＣＰＵ１０６からの指令に応じて各種回路の制御を行なうシーケンサ１０８と、シーケンサ１０８によって制御され内蔵フラッシュメモリ１１４に対して必要な制御信号を出力するフラッシュＩ／Ｆ用回路部１１０と、ホストインターフェース１０３と内蔵フラッシュメモリ１１４との間のデータ授受を行なう際のデータバッファとなるバッファメモリ１１２とを含む。
【００１１】
【発明が解決しようとする課題】
しかしながら、図７に示した従来のワンチップＡＴＡコントローラ１００のような構成では、内蔵されたフラッシュメモリの容量がＡＴＡカードの記憶容量となるため、用途に応じたさまざまな記憶容量を備えるメモリカード等を実現するためには、記憶容量が異なる内蔵フラッシュメモリを備える複数のワンチップＡＴＡコントローラを開発し生産する必要があった。
【００１２】
一般に、半導体装置は、品種数が多くなれば、大量生産によるコストメリットが少なくなってしまう。したがって、ワンチップ化によるコストダウンの効果があまり得られないという問題点が生じていた。
【００１３】
この発明の目的は、半導体装置の大量生産によるコストメリットを生かしつつも、種々の記憶容量を実現することができるＡＴＡカードを提供することであり、それを可能にする半導体装置を提供することである。
【００２０】
【課題を解決するための手段】
この発明の主たる局面における、半導体装置を搭載する記憶装置は、第１、第２の半導体装置を備え、第１の半導体装置は、第１の外部データバスの状態に応じて第１の動作モードの選択を行なう第１の機能選択回路と、第１の動作モードが主動作モードのときに、ホストシステムから読出要求および指定されたアドレス信号を受けて対応する第１の読出制御信号および第１の変換アドレス信号を出力し、かつ、第１の変換アドレス信号に対応する第１の読出データを受けてホストシステムに出力する第１の制御回路と、第１の読出制御信号、第１の変換アドレス信号および第１の読出データを授受するための第１の内部データバスと、第１の動作モードが副動作モードのときに、第１の外部データバスと第１の内部データバスとを接続する第１の接続回路と、第１の内部データバスから第１の読出制御信号および第１の変換アドレス信号を受けて、対応する第１の読出データを第１の内部データバスに出力する第１の不揮発性メモリとを含み、第２の半導体装置は、第２の外部データバスの状態に応じて第２の動作モードの選択を行なう第２の機能選択回路と、第２の動作モードが主動作モードのときに、ホストシステムから読出要求および指定されたアドレス信号を受けて対応する第２の読出制御信号および第２の変換アドレス信号を出力し、かつ、第２の変換アドレス信号に対応する第２の読出データを受けてホストシステムに出力する第２の制御回路と、第２の読出制御信号、第２の変換アドレス信号および第２の読出データを授受するための第２の内部データバスと、第２の動作モードが副動作モードのときに、第２の外部データバスと第２の内部データバスとを接続する第２の接続回路と、第２の内部データバスから第２の読出制御信号および第２の変換アドレス信号を受けて、対応する第２の読出データを第２の内部データバスに出力する第２の不揮発性メモリとを含み、第１の機能選択回路が主動作モードを選択する状態に第１の外部データバスを固定する外部配線と、第１の制御回路が出力する副動作モードの選択に対応する所定の初期状態を第１の内部データバスから第２の外部データバスに伝達し、第２の機能選択回路に与える拡張データバスとをさらに備える。
【００２１】
好ましくは、外部配線は、第１の外部データバスを所定の初期状態と異なる状態に固定し、第１の機能選択回路は、リセット解除されると第１の外部データバスと所定の初期状態との不一致を検出して主動作モードを選択し、第１の制御回路は、第１の動作モードが主動作モードのときに、電源が第１の半導体装置に投入された後に、第１の内部データバスを所定の初期状態にする第１のメモリインターフェース回路を含み、第２の機能選択回路は、リセット解除されると第２の外部データバスの状態と所定の初期状態との一致を検出し副動作モードを選択する。
【００２２】
好ましくは、第１の半導体装置は、第１の動作モードに対応する第１のモードデータを保持する不揮発性の第１のデータレジスタをさらに含み、第１の機能選択回路は、第１のモードデータが所定の設定値と一致したときには、第１のモードデータに基づいて第１の動作モードを決定し、第１のモードデータが所定の設定値と不一致であるときは、第１の外部データバスの状態に応じて第１の動作モードの決定を行ない、第２の半導体装置は、第２の動作モードに対応する第２のモードデータを保持する不揮発性の第２のデータレジスタをさらに含み、第２の機能選択回路は、第２のモードデータが所定の設定値と一致したときには、第２のモードデータに基づいて第２の動作モードを決定し、第２のモードデータが所定の設定値と不一致であるときは、第２の外部データバスの状態に応じて第２の動作モードの決定を行なう。
【００２３】
より好ましくは、第１のデータレジスタは、主動作モードに対応する所定の設定値を保持し、第２のデータレジスタは、副動作モードに対応する所定の設定値を保持する。
【００２４】
好ましくは、第１の制御回路は、第１の動作モードが主動作モードのときに、ホストシステムから書込要求を受けると、ホストシステムから指定された書込アドレス信号および書込データを受けて第１の変換アドレス、第１の書込データおよび第１の書込制御信号を第１の内部データバスに出力し、第１の不揮発性メモリは、第１の内部データバスから第１の書込制御信号、第１の変換アドレス信号および第１の書込データを受けて、第１の書込データを保持し、第２の不揮発性メモリは、第２の動作モードが副動作モードのときに、第２の内部データバスから第１の書込制御信号、第１の変換アドレス信号および第１の書込データを受けて、第１の書込データを保持する。
【００２５】
【発明の実施の形態】
以下において、本発明の実施の形態について図面を参照して詳しく説明する。なお、図中同一符号は同一または相当部分を示す。
【００２６】
図１は、本発明の半導体装置１の構成を示す概略ブロック図である。
図１を参照して、半導体装置１は、内蔵フラッシュメモリ１４と、外部と内蔵フラッシュメモリ１４との間のデータ授受の制御を行なうＡＴＡコントローラ部２と、リセット信号ＣＲＳＴを受けリセット信号ＣＲＳＴがリセット解除状態になったそのときに入力されている制御信号群ＦＣ１およびデータバスＦＩＯＢ１の状態に応じて動作モードを認識するコントローラ接続インターフェース２０とを含む。
【００２７】
コントローラ接続インターフェース２０は、ＡＴＡコントローラ部２に対してモード信号を出力し、かつ制御信号群ＦＣ１を動作モードに応じて内部制御信号群ＩＦＣ１としてＡＴＡコントローラ部２に伝達し、データバスＦＩＯＢ１を動作モードに応じてデータバスＦＩＯＢ２に接続する。
【００２８】
ＡＴＡコントローラ部２は、ＡＴＡコントローラＬＳＩをチップに搭載した部分である。ＡＴＡコントローラ部２は、データバスＩＯＢ１および制御信号群ＣＳＩＧとを含むＰＣカードスタンダード準拠のインターフェースでホストシステムとデータ授受を行なうホストインターフェース３と、ホストシステムが読出および書込要求をしたときに割込信号ＩＲＱをホストインターフェース３から受けるＣＰＵ６と、ＣＰＵ６が動作するためのプログラムを格納するＲＯＭ１６と、プログラム実行に伴う各種データの授受をＣＰＵ６との間で行なうＲＡＭ１８とを含む。ＣＰＵ６とＲＯＭ１６、ＲＡＭ１８とはアドレスおよびデータを授受するためのバスＡＤＢで接続されている。
【００２９】
ＡＴＡコントローラ部２は、さらに、ＣＰＵ６との間で制御信号ＳＧ２の授受を行ないＡＴＡコントローラ部２の全体の制御を行なうシーケンサ８と、シーケンサ８から制御信号ＳＧ３を受けて内蔵フラッシュメモリ１４に対して制御信号ＦＣ２を出力するフラッシュＩ／Ｆ用回路部１０と、シーケンサ８から制御信号ＳＧ４を受けてそれに応じてホストインターフェース３と内蔵フラッシュメモリ１４との間のデータ授受の仲介をするバッファメモリ１２とを含む。
【００３０】
コントローラ接続インターフェース２０からＡＴＡコントローラ部２へはモード信号ＭＯＤＥが入力されている。モード信号ＭＯＤＥがフラッシュメモリ内蔵ＡＴＡコントローラとして動作する主動作モードを示す場合はＡＴＡコントローラ部２は上記動作をする。一方、モード信号ＭＯＤＥがフラッシュメモリとして動作する副動作モードを示す場合は、ホストインターフェース３、ＣＰＵ６、シーケンサ８、バッファメモリ１２は非動作状態となり、また、フラッシュＩ／Ｆ用回路部１０は、制御信号ＩＦＣ１を受けてそれをそのまま制御信号ＦＣ２として出力する。
【００３１】
コントローラ接続インターフェース２０は、制御信号群ＦＣ１を制御信号群ＩＦＣ１として内部に入力し、かつ、データバスＦＩＯＢ１をデータバスＦＩＯＢ２と接続するためのスイッチ回路２４と、制御信号群ＦＣ１およびデータバスＦＩＯＢ１の状態を監視しリセット信号ＣＲＳＴが入力されその後リセットが解除されるタイミングに応じて動作モードを決定してモード信号ＭＯＤＥを出力し、かつ、スイッチ回路２４を制御する機能選択用回路部２２とを含む。このリセット解除は通常電源投入直後に行なわれる。
【００３２】
図２は、図１におけるコントローラ接続インターフェース２０のより詳細な構成を示すブロック図である。
【００３３】
図２を参照して、コントローラ接続インターフェース２０は、制御信号群ＦＣ１を制御信号群ＩＦＣ１として内部に入力し、かつ、データバスＦＩＯＢ１をデータバスＦＩＯＢ２と接続するためのスイッチ回路２４と、制御信号群ＦＣ１およびデータバスＦＩＯＢ１の状態を検知し、リセット信号ＣＲＳＴに応じて動作モードを決定し、モード信号ＭＯＤＥを出力するとともにスイッチ回路２４を制御する機能選択用回路部２２とを含む。制御信号群ＦＣ１およびデータバスＦＩＯＢ１は、図１に示したＡＮＤ型の内蔵フラッシュメモリ１４のインターフェース用入出力ノードに対応する信号群であり、信号ＲＥＳＥＴ、ＯＥ♯、ＣＥ♯、ＷＥ♯、ＣＤＥ♯、クロック信号ＳＣ、データバスＩ／Ｏを含んでいる。スイッチ回路２４は、これらそれぞれの信号に対応するＭＯＳトランジスタ２４♯１〜２４♯ｎを含む（ｎは自然数）。
【００３４】
機能選択用回路部２２は、制御信号群ＦＣ１およびデータバスＦＩＯＢ１の状態が所定の組合せと一致するかを検出する組合せ検出回路３２と、リセット信号ＣＲＳＴによるリセット解除に応じて組合せ検出回路３２の出力を保持する保持回路３４と、図１に示したホストインターフェース３に内蔵されているレジスタ４のビットＭ１に保持されているデータと保持回路３４の出力データとのいずれかをレジスタ４のビットＭ０に保持されているデータに応じて選択して出力するセレクタ３６と、セレクタ３６の出力を増幅してモード信号ＭＯＤＥを出力するバッファ３８とを含む。セレクタ３６の出力は、ＭＯＳトランジスタ２４♯１〜２４♯ｎのゲートにも与えられる。
【００３５】
次に、動作を簡単に説明する。レジスタ４には、電源がＯＦＦ状態になってもデータを保持しておくことができるビットＭ０、Ｍ１があり、ファクトリーフォーマット前はＭ０、Ｍ１はともに“０”が記憶されている。ファクトリフォーマットとは、カードの初期化のことである。メモリカードをメーカーの工場からユーザに対して出荷するときの状態にする初期化のことを総称してファクトリフォーマットという。
【００３６】
半導体装置１に電源が投入され、リセット信号ＣＲＳＴが与えられると、コントローラ接続用インターフェース２０は、制御信号群ＦＣ１を制御信号群ＩＦＣ１として内部に入力し、かつ、データバスＦＩＯＢ１をデータバスＦＩＯＢ２と接続するか否かを決定する。
【００３７】
コントローラ接続用インターフェース２０においては、機能選択用回路部２２に含まれる組合せ検出回路３２が外部バスの信号線のレベルを監視し、外部バスの状態が所定の組合せと一致するかを監視している。リセット信号ＣＲＳＴによってリセットが解除されると、そのときの組合せ検出回路３２の出力が保持回路３４に保持される。
【００３８】
保持回路３４の出力と、レジスタ４のビットＭ１のデータとがセレクタ３６に与えられる。セレクタ３６がいずれの入力信号を選択するかはレジスタ４のビットＭ０のデータによって定まる。
【００３９】
ビットＭ０に“０”が設定されているときは、セレクタ３６は保持回路３４の出力を選択する。保持回路３４の出力はスイッチ回路２４の制御信号として与えられるとともにバッファ３８によって増幅され動作モードを決定する信号ＭＯＤＥとして半導体装置１の各ブロックに向けて出力される。
【００４０】
ビットＭ０に“１”が設定されているときは、セレクタ３６はビットＭ１のデータを選択する。ビットＭ１に設定されたデータにしたがって、スイッチ回路２４は制御され、動作モードが決定され信号ＭＯＤＥが半導体装置１の各ブロックに向けて出力される。
【００４１】
図３は、図２に示した組合せ検出回路３２の入力信号の組合せを説明するための図である。
【００４２】
図３を参照して、組合せ検出回路３２は、信号Ｉ／Ｏ、ＲＥＳＥＴ、ＯＥ♯、ＣＥ♯、ＷＥ♯、ＣＤＥ♯、ＳＣがすべてＬレベルの場合には、図１に示した半導体装置１がＡＴＡコントローラとして動作する主動作モードを検出する。また、信号Ｉ／Ｏがハイインピーダンス状態であり、信号ＲＥＳＥＴ、ＯＥ♯、ＣＥ♯、ＷＥ♯、ＣＤＥ♯がＨレベルであり、信号ＳＣがＬレベルであるときには、半導体装置１が内蔵フラッシュメモリ１４のみ使用可能となる副動作モードを検出する。
【００４３】
図４は、図２に示した機能選択回路部２２の動作を説明するためのフローチャートである。
【００４４】
図２、図４を参照して、レジスタ４のビットＭ１、Ｍ０は初期状態においてはともに“０”に設定されている。このレジスタ４は、電源がオフ状態となってもデータ消去されることがない不揮発性の書換可能なレジスタである。
【００４５】
まず、ステップＳ１において、電源が半導体装置に投入され、その後、リセット信号ＣＲＳＴが保持回路３４に与えられリセットが解除される。
【００４６】
次にステップＳ２において、カードに搭載された各デバイス毎に、組合せ検出回路３２が組合せ検出を行ない、その結果に基づき保持回路が動作モードに対応するデータを保持する。
【００４７】
信号ＲＥＳＥＴ、ＯＥ♯、ＣＥ♯、ＷＥ♯、ＣＤＥ♯、ＳＣは、図１に示したフラッシュＩ／Ｆ用回路部１０が内蔵フラッシュメモリ１４に対して与える制御信号であり、データバスＩ／Ｏは、バッファメモリ１２と内蔵フラッシュメモリ１４との間のデータ授受を行なうためのデータバスである。電源投入直後には、これらは図３下欄に示したフラッシュメモリ動作をするための信号の組合せとなる。
【００４８】
たとえば、１つのＡＴＡカードにこの半導体装置１が２個使用されたとする。第１の半導体装置の制御信号群ＦＣ２が第２の半導体装置の制御信号群ＦＣ１として与えられ、第１の半導体装置のデータバスＦＩＯＢ２が第２の半導体装置データバスＦＩＯＢ１と接続されたときに、フラッシュメモリ動作を行なうための組合せ検出が第２の半導体装置側になされる。
【００４９】
ステップＳ２において、制御信号群ＦＣ１およびデータバスＦＩＯＢ１がフラッシュメモリ動作の信号の組合せと一致した場合は、ステップＳ４に進み、コントローラ接続インターフェース２０においてスイッチ回路２４が導通状態となる。このときＡＴＡコントローラ部２は、モード信号ＭＯＤＥによってコントローラとしての動作を行なわない。そして、半導体装置１は内蔵フラッシュメモリ１４のみを動作させる副動作モードになる。
【００５０】
一方、ステップＳ２において、フラッシュメモリ動作を行なう組合せと一致しないときには、ステップＳ３に進み、半導体装置１においてＡＴＡコントローラ部２がコントローラとして機能する。
【００５１】
そして、図２のレジスタのビットＭ０が０のデータを保持している間は、ステップＳ５において電源がオフされるとモード設定のデータはクリアされ再び、ステップＳ１に進み電源が投入されると同様な動作が繰返される。
【００５２】
メモリカード上の基板に実装されている複数の半導体装置は、以上説明したようにパワーオン時に動作設定が行なわれ、それぞれ機能が決定される。この機能決定は、パワーオフした時点で解除されるため、ファクトリーフォーマットを行なうまでは、各半導体装置の実装の配置を自由に入換えることができる。
【００５３】
図５は、本発明の半導体装置を４つ搭載したＡＴＡカード４０の構成を示す図である。
【００５４】
図５を参照して、ＡＴＡカード４０は、ＡＴＡコントローラとして働く半導体装置１ａと、増設されたフラッシュメモリとして動作する半導体装置１ｂ♯１〜１ｂ♯３と、半導体装置１ａとホストシステムとの間で制御信号群ＣＳＩＧ１の授受を行なうための端子群Ｐ１と、半導体装置１ａとホストシステムとの間で記憶データ等の授受を行なうための端子群Ｐ２と、ホストシステムからリセット信号ＣＲＳＴを受ける端子Ｐ３とを含む。半導体装置１ａ、１ｂ♯１〜１ｂ♯３は、図１に示した構成と同様の構成をそれぞれ有しており、これらの構成の説明は繰返さない。
【００５５】
ＡＴＡカード４０は、さらに、プリント基板上に設けられる拡張用データバスＥＤＢ、制御信号用バスＥＦＣおよび外部配線Ｗ１を備える。
【００５６】
半導体装置１ａのデータバスＦＩＯＢ２は、拡張用データバスＥＤＢに接続される。また、制御信号群ＦＣ２は、制御信号用バスＥＦＣに接続される。また、半導体装置１ａは、コントローラチップとして働くため、制御信号群ＣＳＩＧがホストシステムから端子群Ｐ１を介して与えられ、端子群Ｐ２を介してデータバスＩＯＢ１がホストシステムに接続される。また、制御信号群ＦＣ１およびデータバスＦＩＯＢ１は、外部配線Ｗ１によってＬレベルに固定される。半導体装置１ｂ♯１〜１ｂ♯３では、各々のデータバスＦＩＯＢ１は拡張用データバスＥＤＢと接続され、各々の制御信号群ＦＣ１は制御信号用バスＥＦＣから与えられる。
【００５７】
このように構成されたメモリカードには、その後、ファクトリーフォーマットと呼ばれるカードの初期化が行なわれる。通常、ＡＴＡカードでは、カードとして機能させるためにこの作業が行なわれる。
【００５８】
図６は、ファクトリフォーマットを実施する手順を示すフローチャートである。
【００５９】
図５、図６を参照して、まずステップＳ１１において、カードに電源が投入される。続いて、カードに搭載されている各フラッシュメモリ内蔵型ワンチップＡＴＡコントローラごとに入力されている信号レベルを検出する。この検出は、図１に示した機能選択用回路部２２にて行なわれる。そして、所定のピン設定と一致したデバイスはステップ１７に進みコントローラ接続用インターフェース２０においてスイッチ回路２４が導通し外部バスＥＤＢおよび制御バスＥＦＣのデータを内部に取込むようになる。
【００６０】
ステップＳ１２において、所定の組合せとピン設定が一致しない場合は、デバイスはコントローラ（ＡＴＡカードのホスト）として機能する。
【００６１】
そしてコントローラとして機能するデバイスはステップＳ１４においてＡＴＡカード全体のファクトリフォーマットを実施する。
【００６２】
通常、メモリカード組立完了後の状態は、ホストシステムと接続しても外部記憶装置として認識されず動作しない。このメモリカードをハードディスク装置やフロッピーディスク装置と同じように動作させるためにホストシステムとコントローラとの間で以下の動作が行なわれる。
【００６３】
（１）  連続した論理アドレスとメモリ内の物理アドレスとを管理するためのテーブルの作成。このテーブルはＡＴＡコントローラ部内に作成される。つまり、ホストシステムから見た場合は、メモリカードは１つの連続したアドレス空間のメモリになっているが、実際には、実装されるメモリが複数あることや、不良セクタが存在することなどのため物理的な内部のアドレス（セクタ）は連続していない。このため、カード内のメモリのセクタ情報を管理するテーブルがコントローラ内に作成され、コントローラは、コントローラ内のテーブルを参照することで、以降ホストシステムが指定するアドレスを実際のフラッシュメモリのアドレスに変換する。
【００６４】
（２）  ホストシステムが使用するユーザ領域の作成が行なわれる。このユーザ領域以外として、他にも管理用のテーブルや代替領域が確保されるが、ホストシステムからは見ることができないようになっている。
【００６５】
（３）  ＤＯＳフォーマットが行なわれる。このフォーマットにはＦＡＴシステム用のアンフォーマット情報の作成と、ＤＯＳのフォーマットコマンドによるフォーマットが含まれる。ここで、ＦＡＴシステムとは、通常、ハードディスク装置やフロッピーディスク装置が使用しているファイル管理システムのことである。
【００６６】
以上の（１）〜（３）の３つの作業段階を経て工場で生産されたメモリカードは初めてホストシステムの外部記憶装置として使用が可能となる。
【００６７】
このファクトリフォーマットの実施の際に、ステップＳ１５において、各チップに対して動作モードのレジスタの書込がなされる。
【００６８】
たとえば、図２のレジスタ４において、ビットＭ０は、以降“１”に設定され、セレクタ３６は、ビットＭ１の出力に従ってスイッチ２４の制御を行ないモード信号ＭＯＤＥを出力するようになる。レジスタ４のビットＭ１は、そのチップがコントローラとして動作する場合は“０”が書込まれる。
【００６９】
また、そのチップが内蔵するフラッシュメモリのみを使用するチップであればビットＭ１には“１”が書込まれる。
【００７０】
このレジスタにセットした内容は、その後レジスタ内容を意図的に変更するまで不揮発に保持され、そのチップの動作モードを決定する。つまり、一度ファクトリフォーマットを行なったＡＴＡカードでは、その中に実装されている各半導体装置の動作モードが固定されている。そして、電源がオフ状態となっても、この固定された動作モードは保持される。
【００７１】
次いで、増設用フラッシュメモリとして動作する半導体装置はステップＳ１８において、内蔵メモリのみ使用可能状態に固定され、コントローラとして働くチップはステップＳ１６においてカードの初期化を行なう。しかる後に、ステップＳ１９に進みＡＴＡカードとして機能する。
【００７２】
次に、再び図５を参照して、ＡＴＡカードにおける各半導体装置の働きを説明する。
【００７３】
半導体装置１ａはＡＴＡコントローラとして動作するチップである。ＡＴＡコントローラは、ホストシステムとのインターフェースを提供する。
【００７４】
すなわち、カードをホストシステムに差込んだときに、ホストシステムがカード内のコンフィグレーション情報を読取る。その情報の内容によってホストシステムがコントローラのホストインターフェース２内に存在する各種レジスタ（図示せず）を設定し、インターフェースのモードが決定される。このインターフェースのモードには、メモリカードモード、Ｉ／ＯカードモードおよびＩＤＥモードがある。
【００７５】
半導体装置１ａは、自身が保持するセクタ情報管理テーブルを参照し、ホストシステムが指定するアドレスを実際の各フラッシュメモリのアドレスに変換しアクセスを行なう。
【００７６】
半導体装置１ａのレジスタ４ａにはファクトリフォーマット時にＡＴＡコントローラ内蔵メモリとして動作する主動作モード設定が記憶されており、したがって、コントローラ接続インターフェース２０ａ内のスイッチ回路は非導通状態となっている。一方、半導体装置１ｂ♯１〜１ｂ♯３のレジスタ４ｂ♯１〜４ｂ♯３には単体のフラッシュメモリとして動作する副動作モードが記憶されているため、コントローラ接続インターフェース２０ｂ♯１〜２０ｂ♯３に含まれるスイッチ回路は導通状態となっている。このように、各チップがモード設定されているので、ホストシステムとの間のデータの授受は次のように行なわれる。
【００７７】
たとえば、ホストシステムから読出が要求されると、半導体装置１ａの内部のＣＰＵ６が各ブロックに対してアドレスのセットおよびシーケンサ８に対する制御信号を出力する。これを受けてシーケンサ８は、各タイミングパターンを作成し各ブロックに制御信号を出力する。そして、フラッシュメモリ１４ａ、１４ｂ♯１〜１４ｂ♯３からのデータの読出、およびバッファ１２への転送、バッファ１２からホストインターフェース４ａへのデータの転送という一連の動作が行なわれる。
【００７８】
すなわち、内蔵フラッシュメモリ１４ｂ♯１からデータを読出す場合は、フラッシュＩ／Ｆ用回路部１０ａから制御信号が出力され外部制御バスＥＦＣを通じてコントローラ接続インターフェース２０ｂ♯１を経由してフラッシュＩ／Ｆ用回路部１０ｂ♯１にその制御信号が入力される。
【００７９】
フラッシュメモリとして動作する副動作モードでは、フラッシュＩ／Ｆ用回路部１０ｂ♯１はコントローラ接続インターフェース２０ｂ♯１から受けた制御信号をそのままスルーさせて内蔵フラッシュメモリ１４ｂ♯１に対して出力する。
【００８０】
応じて、データはフラッシュメモリ１４ｂ♯１から読出され、コントローラ接続インターフェース２０ｂ♯１、外部データバスＥＤＢを経由して半導体装置１ａ内のバッファメモリ１２に入力される。その後、データはバッファメモリ１２から読出され、ホストインターフェース４ａを経由し、ホストシステムに対して出力される。
【００８１】
データを書込む場合は、読出の場合に説明したルートをホストシステムからフラッシュメモリ１４ｂ＃１に向けて読出時と逆順でデータが流れる。
【００８２】
以上説明したように、本発明の半導体装置を用いれば、１種類の半導体装置を多数連結させることによってメモリカードの容量の増設が容易に可能となる。そして、ＡＴＡコントローラ内蔵チップとフラッシュメモリ専用チップとの２品種を生産する必要がないため、１品種当りの生産数を増やすことができ、大量生産によるコストメリットを享受することができる。また、生産するメモリカードの記憶容量に応じた各品種の在庫調整が不要となるため生産管理面においてもメリットがある。
【００８３】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【００８４】
【発明の効果】
本発明のある局面における半導体装置は、ＡＴＡコントローラ内蔵チップとフラッシュメモリ専用チップとの２品種を生産する必要がないため、１品種当りの生産数を増やすことができ、大量生産によるコストメリットを享受することができる。また、生産するメモリカードの記憶容量に応じた各品種の在庫調整が不要となるため生産管理面においても有利である。
【００８５】
また、本発明における半導体装置は、加えて、複数個使用し相互に接続すると動作モードを認識することができる。
【００８６】
また、本発明における半導体装置は、加えて、内部レジスタにデータ設定することで動作モードを設定することができる。
【００８７】
また、本発明における半導体装置は、加えて、搭載する不揮発性メモリを書換えることが可能である。
【００８８】
本発明の半導体装置を搭載する記憶装置は、ＡＴＡコントローラ内蔵チップとフラッシュメモリ専用チップとの２品種を搭載する必要がないため、１品種当りの生産数を増やすことができ、大量生産によるコストメリットを享受することができ、安価な記憶装置を提供することができる。
【００８９】
また、本発明の半導体装置を搭載する記憶装置は、加えて、半導体装置を複数個使用し相互に接続すると各半導体装置が動作モードを認識することができ、記憶装置として動作することができる。
【００９０】
また、本発明の半導体装置を搭載する記憶装置は、加えて、各半導体装置の内部レジスタにデータ設定することで各半導体装置の動作モードを決定し、記憶装置としての動作をすることができる。
【００９１】
また、本発明の半導体装置を搭載する記憶装置は、加えて、各半導体装置が内蔵する不揮発性メモリを書換えることが可能である。
【図面の簡単な説明】
【図１】  本発明の半導体装置１の構成を示す概略ブロック図である。
【図２】  図１におけるコントローラ接続インターフェース２０のより詳細な構成を示すブロック図である。
【図３】  図２に示した組合せ検出回路３２の入力信号の組合せを説明するための図である。
【図４】  図２に示した機能選択回路部２２の動作を説明するためのフローチャートである。
【図５】  本発明の半導体装置を４つ搭載したＡＴＡカード４０の構成を示す図である。
【図６】  ファクトリフォーマットを実施する手順を示すフローチャートである。
【図７】  従来のワンチップＡＴＡコントローラ１００の構成を示すブロック図である。
【符号の説明】
１，１ａ，１ｂ♯１〜１ｂ♯３，１００  半導体装置、２  ＡＴＡコントローラ部、３  ホストインターフェース、４，４ａ，４ｂ♯１〜４ｂ♯３  レジスタ、６  ＣＰＵ、８  シーケンサ、１０，１０ａ，１０ｂ♯１〜１０ｂ♯３  フラッシュＩ／Ｆ用回路部、１２  バッファメモリ、１４，１４ａ，１４ｂ♯１〜１４ｂ♯３  内蔵フラッシュメモリ、２０，２０ａ，２０ｂ♯１〜２０ｂ♯３  コントローラ接続インターフェース、２２  機能選択用回路部、２４  スイッチ回路、Ｍ１，Ｍ０  レジスタビット、３２  組合せ検出回路、３４  保持回路、３６  セレクタ、３８  バッファ、２４♯１〜２４♯ｎ  ＭＯＳトランジスタ、Ｓ１〜Ｓ５，Ｓ１１〜Ｓ１９  ステップ、ＥＤＢ  外部データバス、ＥＦＣ  外部制御バス、４０  ＡＴＡカード、Ｗ１  外部配線。
【図１】
0004164192.tif 000002
【図２】
0004164192.tif 000003
【図３】
0004164192.tif 000004
【図４】
0004164192.tif 000005
【図５】
0004164192.tif 000006
【図６】
0004164192.tif 000007
【図７】
0004164192.tif 000008