JP2006107049A - 半導体装置及びその半導体装置を備えたメモリカード - Google Patents
半導体装置及びその半導体装置を備えたメモリカード Download PDFInfo
- Publication number
- JP2006107049A JP2006107049A JP2004291661A JP2004291661A JP2006107049A JP 2006107049 A JP2006107049 A JP 2006107049A JP 2004291661 A JP2004291661 A JP 2004291661A JP 2004291661 A JP2004291661 A JP 2004291661A JP 2006107049 A JP2006107049 A JP 2006107049A
- Authority
- JP
- Japan
- Prior art keywords
- terminals
- circuit
- substrate
- pull
- terminal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/067—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
- G06K19/07—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Memory System (AREA)
Abstract
【課題】スタンバイ状態に達する前に外部へ所定の情報を通知できるようにする。
【解決手段】基板2は、複数の端子を有する。コントローラ4は、基板2上に設けられ、複数の端子30を有し、外部とのインタフェース処理を行うとともに不揮発性半導体メモリを制御することが可能である。この構成において、コントローラ4に設けられる個々の端子がそれぞれ基板2上の個々の端子に電気的に接続されているか否かに応じて、外部へ通知すべき情報が決定される。
【選択図】 図12
【解決手段】基板2は、複数の端子を有する。コントローラ4は、基板2上に設けられ、複数の端子30を有し、外部とのインタフェース処理を行うとともに不揮発性半導体メモリを制御することが可能である。この構成において、コントローラ4に設けられる個々の端子がそれぞれ基板2上の個々の端子に電気的に接続されているか否かに応じて、外部へ通知すべき情報が決定される。
【選択図】 図12
Description
本発明は、外部との情報の送受を行うことが可能なコントローラを備えた半導体装置に関し、特に電源投入時点から一定期間内に外部から受けるコマンドに応じることが可能な半導体装置およびその半導体装置を備えたメモリカードに関する。
近年、種々なメモリカードが登場してきている。ある種類のメモリカードにおいては、ホスト機器から電源供給を受けた直後に所定のコマンドを受けた場合、メモリの容量などを示す情報をホスト機器側へ即座に通知しなければならない。この情報の通知は、当該メモリカードの仕様に規定された期間内に行う必要がある。
ホスト機器から送られてくるコマンドの処理は、一般に、メモリを制御するコントローラに搭載されるCPU等を通じて行われる。電源供給直後においては、CPUの動作に必要なクロックの発振及びPLLの設定に関するセットアップ処理が行われ、CPUはそのセットアップ処理の完了後に通常の動作が可能となる。このため、メモリカードがスタンバイ状態(ホスト機器からのアクセスコマンドに応じることが可能な状態)となるまでにかなりの時間を費やしてしまい、メモリカードの仕様に規定された期間内にメモリの容量などを示す情報をホスト機器へ通知することができない場合があり得る。
なお、特許文献1には、電源電圧が所定動作電圧に達するまでの不安定な動作を改善する技術が開示されている。
特開平9−062808号公報
しかしながら、上記文献の技術では、電源電圧が一定値以下となっている期間において内部回路をリセットすることによって当該内部回路の正常動作を保証しているが、電源が投入された後スタンバイ状態に達する前にホスト機器から送られてくるコマンドを処理することができず、そのコマンドが要求しているメモリの容量などを示す情報をホスト機器へ通知することができない。
本発明は上記課題を解決するためになされたものであり、スタンバイ状態に達する前に外部へ所定の情報を通知することが可能な半導体装置及びメモリカードを提供することを目的とする。
本発明に係る半導体装置は、内部クロックに従って動作する第1の回路と、外部へ通知すべき情報を生成する第2の回路と、外部から所定のコマンドを受けた場合、前記第1の回路を用いずに、前記第2の回路によって生成される前記情報を外部へ通知するインタフェース部と、基板上に設けられた電源端子または接地端子に接続可能な複数の端子とを具備し、前記複数の端子がそれぞれ前記基板上の電源端子と接地端子のいずれに電気的に接続されているか否かに応じて、前記情報が決定されることを特徴とする。
また、本発明に係る半導体装置は、内部クロックに従って動作する第1の回路と、外部へ通知すべき情報を生成する第2の回路と、外部から所定のコマンドを受けた場合、前記第1の回路を用いずに、前記第2の回路によって生成される前記情報を外部へ通知するインタフェース部と、基板上に設けられた複数の第1の端子に接続可能な複数の第2の端子とを具備し、前記複数の第2の端子がそれぞれ前記基板上の個々の第1の端子に電気的に接続されているか否かに応じて、前記情報が決定されることを特徴とする。
また、本発明に係るメモリカードは、電源端子及び接地端子を有する基板と、前記基板上に設けられる不揮発性半導体メモリと、前記基板上に設けられ、複数の端子を有し、外部とのインタフェース処理を行うとともに前記不揮発性半導体メモリを制御することが可能なコントローラとを具備し、前記コントローラに設けられる個々の端子がそれぞれ前記基板上の電源端子と接地端子とのいずれに電気的に接続されているかに応じて、外部へ通知すべき情報が決定されることを特徴とする。
また、本発明に係るメモリカードは、複数の端子を有する基板と、前記基板上に設けられる不揮発性半導体メモリと、前記基板上に設けられ、複数の端子を有し、外部とのインタフェース処理を行うとともに前記不揮発性半導体メモリを制御することが可能なコントローラとを具備し、前記コントローラに設けられる個々の端子がそれぞれ前記基板上の個々の端子に電気的に接続されているか否かに応じて、外部へ通知すべき情報が決定されることを特徴とする。
スタンバイ状態に達する前に外部へ所定の情報を通知することができる。
以下、図面を参照して、本発明の一実施形態について説明する。
図1は、本発明の一実施形態に係るメモリカードに搭載されるデバイス類の概略構成を示す斜視図である。
本実施形態に係るメモリカード1は、図示のように、PCB(Printed Circuit Board)基板2上にNAND型フラッシュメモリ3及びコントローラ4が配置されたものとなっている。上記コントローラ4には、CPU(Central Processing Unit)8やROM(Read-Only Memory)9などの機能ブロックが搭載されている。各デバイスの詳細については後で述べる。なお、NAND型フラッシュメモリ3は、1つのメモリセルに1ビットの情報を記憶する2値メモリであっても良いし、1つのメモリセルに1ビットより多い情報(例えば2ビット)を記憶する多値メモリであっても良い。また、図1では、PCB(Printed Circuit Board)基板2上にNAND型フラッシュメモリ3及びコントローラ4が配置された場合を示したが、NAND型フラッシュメモリ3及びコントローラ4は、同一のLSI(Large-scale Integration)基板上に配置されても良い。
図1は、本発明の一実施形態に係るメモリカードに搭載されるデバイス類の概略構成を示す斜視図である。
本実施形態に係るメモリカード1は、図示のように、PCB(Printed Circuit Board)基板2上にNAND型フラッシュメモリ3及びコントローラ4が配置されたものとなっている。上記コントローラ4には、CPU(Central Processing Unit)8やROM(Read-Only Memory)9などの機能ブロックが搭載されている。各デバイスの詳細については後で述べる。なお、NAND型フラッシュメモリ3は、1つのメモリセルに1ビットの情報を記憶する2値メモリであっても良いし、1つのメモリセルに1ビットより多い情報(例えば2ビット)を記憶する多値メモリであっても良い。また、図1では、PCB(Printed Circuit Board)基板2上にNAND型フラッシュメモリ3及びコントローラ4が配置された場合を示したが、NAND型フラッシュメモリ3及びコントローラ4は、同一のLSI(Large-scale Integration)基板上に配置されても良い。
以下の説明において使用する用語「論理ブロックアドレス」,「物理ブロックアドレス」は、それぞれ、ブロック自体の論理アドレス,物理アドレスを意味するものである。また、「論理アドレス」,「物理アドレス」は、主に、ブロック自体の論理アドレス,物理アドレスを意味するものではあるが、ブロック単位よりも細かい分解能の単位に相当するアドレスである場合もあり得ることを示すものである。
図2は、ホストと上記メモリカードとを含む構成を示すブロック図である。なお、図1と共通する要素には同一の符号を付している。
ホスト機器(以下、ホストと称す)20は、接続されるメモリカードに対してアクセスを行うためのハードウェア及びソフトウェア(システム)を備えている。このホスト20は、メモリカード内部の物理状態(何処の物理ブロックアドレスに、何番目の論理セクタアドレスデータが含まれているか、或いは、何処のブロックが消去状態であるか)を管理し、メモリカード内のフラッシュメモリを直接制御するものとして構築されている。
また、ホスト20は、消去時の消去ブロックサイズが16kByteに定められているNAND型フラッシュメモリを使用することを前提として、16kByte単位で論理・物理アドレスの割当を行い、多くの場合、論理アドレス16kByte分に関してシーケンシャルにライトアクセスもしくはリードアクセスを行う(該当するコマンドを発行する)。
メモリカード1は、ホスト20に接続されたときに電源供給を受けて動作し、ホスト20からのアクセスに応じた処理を行う。このメモリカード1は、前述したようにNAND型フラッシュメモリ3及びコントローラ4を有する。
NAND型フラッシュメモリ3は、消去時の消去ブロックサイズ(消去単位のブロックサイズ)が256kByteに定められている不揮発性メモリであり、例えば16kByte単位でデータの書込・読出を行うようになっている。このNAND型フラッシュメモリ3は、例えば0.09μmプロセス技術を用いて製作される。即ち、NAND型フラッシュメモリ3のデザインルールは、0.1μm未満となっている。
コントローラ4は、前述したCPU8及びROM9のほかに、メモリインタフェース部5、ホストインタフェース部6、バッファ7、及びRAM(Random Access Memory)10を搭載している。
メモリインタフェース部5は、コントローラ4とNAND型フラッシュメモリ3との間のインタフェース処理を行うものである。ホストインタフェース部6は、コントローラ4とホスト20との間のインタフェース処理を行うものである。
バッファ7は、ホスト20から送られてくるデータをNAND型フラッシュメモリ3へ書き込む際に、一定量のデータ(例えば1ページ分)を一時的に記憶したり、NAND型フラッシュメモリ3から読み出されるデータをホスト20へ送り出す際に、一定量のデータを一時的に記憶したりするものである。
CPU8は、メモリカード1全体の動作を司るものである。このCPU8は、例えば、メモリカード1が電源供給を受けた際に、ROM9の中に格納されているファームウェア(制御プログラム)をRAM10上にロードして所定の処理を実行することにより、各種のテーブルをRAM10上で作成したり、ホスト20から書込コマンド,読出コマンド,消去コマンドを受けてNAND型フラッシュメモリ3上の該当領域に対するアクセスを実行したり、バッファ7を通じたデータ転送処理を制御したりする。
ROM9は、CPU8により使用される制御プログラムなどを格納するメモリである。RAM10は、CPU8の作業エリアとして使用され、制御プログラムや各種のテーブルを記憶する揮発性メモリである。
図3は、ホスト20が想定しているフラッシュメモリと、実際に使用するフラッシュメモリ(即ち、メモリカード1内のNAND型フラッシュメモリ3)との、データ配置の違いを示している。
ホスト20が想定しているフラッシュメモリでは、各ページは528Byte(512Byte分のデータ記憶部+16Byte分の冗長部)を有しており、32ページ分が1つの消去単位(即ち、16kByte+0.5kByte(ここで、kは1024))となる。以下では、このようなフラッシュメモリを搭載したカードを、「小ブロックカード」と称す場合がある。
ホスト20が想定しているフラッシュメモリでは、各ページは528Byte(512Byte分のデータ記憶部+16Byte分の冗長部)を有しており、32ページ分が1つの消去単位(即ち、16kByte+0.5kByte(ここで、kは1024))となる。以下では、このようなフラッシュメモリを搭載したカードを、「小ブロックカード」と称す場合がある。
一方、実際に使用するフラッシュメモリ3では、各ページは2112Byte(例えば512Byte分のデータ記憶部×4+10Byte分の冗長部×4+24Byte分の管理データ記憶部)を有しており、128ページ分が1つの消去単位(即ち、256kByte+8kByte)となる。以下では、このようなフラッシュメモリ3を搭載したカードを、「大ブロックカード」と称す場合がある。なお、以下の説明においては、便宜上、小ブロックカードの消去単位を16kByteと呼び、大ブロックカードの消去単位を256kByteと呼ぶ。
また、ホスト20が想定しているフラッシュメモリと、実際に使用するフラッシュメモリ3とは、それぞれ、フラッシュメモリへのデータ入出力を行うためのページバッファを備えている。ホスト20が想定しているフラッシュメモリに備えられるページバッファの記憶容量は、528Byte(512Byte+16Byte)である。一方、実際に使用するフラッシュメモリ3に備えられるページバッファの記憶容量は、2112Byte(2048Byte+64Byte)である。データ書込などの際には、各ページバッファは、フラッシュメモリに対するデータ入出力処理を、自身の記憶容量に相当する1ページ分の単位で実行する。
図3の例では、実際に使用するフラッシュメモリ3の消去ブロックサイズが、ホスト20が想定しているフラッシュメモリの消去ブロックサイズの16倍である場合を示したが、本発明はこれに限定されるものではなく、略整数倍であれば別の倍率となるように構成することも可能である。
大ブロックカードを実用上有効な製品とするためには、図3に示したフラッシュメモリ3の記憶容量は1Gビット以上であることが望ましい。フラッシュメモリ3の記憶容量が例えば1Gビットである場合、256kByteブロック(消去単位)の数は、512個となる。
また、図3においては消去単位が256kByteブロックである場合を例示しているが、消去単位が例えば128kByteブロックとなるように構築することも実用上有効である。この場合、128kByteブロックの数は、1024個となる。
また、図3の例では、実際に使用するフラッシュメモリ3の消去ブロックサイズが、ホスト20が想定しているフラッシュメモリの消去ブロックサイズよりも大きい場合を示したが、本発明はこれに限定されるものではなく、実際に使用するフラッシュメモリ3の消去ブロックサイズが、ホスト20が想定しているフラッシュメモリの消去ブロックサイズよりも小さいものとして構成することも可能である。
図4は、ホスト20側システム及びメモリカード1(大ブロックカード)の各コミュニケーション階層を示す図である。
ホスト20側のシステムは、アプリケーションソフト21、ファイルシステム22、ドライバソフト23、及び小ブロックカード物理アクセス層24を有する。一方、メモリカード1(大ブロックカード)は、小ブロックカード物理アクセス層11、小ブロックカード物理・小ブロックカード論理変換層12、小ブロックカード論理・大ブロックカード物理変換層13、及び大ブロックカード物理アクセス層14を有する。
例えば、ホスト20側のアプリケーションソフト21がファイルの書込をファイルシステム22に要求すると、ファイルシステム22は、小ブロックカードの論理ブロックアドレスに基づきシーケンシャルなセクタ書込をドライバソフト23に指示する。これを受けて、ドライバソフト23は、小ブロックカードの論理ブロックアドレスに基づく16kByteブロック毎のシーケンシャルな書込を実現するにあたり、論理・物理ブロック変換を行い、小ブロックカード物理アクセス層24を通じて、小ブロックカードの物理ブロックアドレスによるランダムな書込コマンドを大ブロックカードに対して発行し、データ転送を行う。
なお、ライトアクセスにおいては、小ブロックカードの場合も大ブロックカードの場合も、プロトコル上、(1)コマンド、(2)ページアドレス(ロウアドレス)、(3)カラムアドレス、(4)データ、(5)プログラム確認コマンド、といった順序で情報の送受が行われることが前提となっている。
大ブロックカード側における小ブロックカード物理アクセス層11は、ホスト20から小ブロックカードの物理ブロックアドレスによる書込コマンドを受けると、物理ブロックアドレスやデータのほか、これに付随する付随データに含まれている論理ブロックアドレスを取得する。
小ブロックカード物理・小ブロックカード論理変換層12は、データ読出などの際に小ブロックカードの物理ブロックアドレス(16kByteブロック分に対応)から小ブロックカードの論理ブロックアドレス(16kByteブロック分に対応)への変換処理を行うための第1のテーブルを有している。変換層12は、小ブロックカード物理アクセス層11が書込コマンドを受けて小ブロックカードの論理ブロックアドレスを取得したときにはこれを上記第1のテーブルに反映させる。物理ブロックアドレスに関しても、上記第1のテーブルに反映させる。
小ブロックカード論理・大ブロックカード物理変換層13は、データ読出などの際に小ブロックカードの論理ブロックアドレス(シーケンシャルな16kByteブロック×16個分に対応)から大ブロックカードの物理ブロックアドレス(256kByte物理ブロック分に対応)への変換処理を行うための第2のテーブルを有している。変換層12は、小ブロックカード物理アクセス層11が書込コマンドを受けて小ブロックカードの論理ブロックアドレスを取得したときにはこれを上記第2のテーブルに反映させる。
大ブロックカード物理アクセス層14は、小ブロックカード物理アクセス層11が書込コマンドを受けて取得した小ブロックカードの論理ブロックアドレスに基づき、フラッシュメモリ3内部のデータ配置を決定し、256kByte物理ブロック内において2kByte(1ページ)単位でシーケンシャルに16kByte分のデータを書き込む。また、大ブロックカード物理アクセス層14は、取得した小ブロックカードの論理ブロックアドレスや物理ブロックアドレスをフラッシュメモリ3内部における管理データ領域内の所定の領域に格納する。
このようにホスト20は小ブロックカードの物理ブロックアドレスに基づくコマンドを発行するので、大ブロックカード側では、小ブロックカードの物理ブロックアドレスに対応するデータがどの256kByte物理ブロックの中に存在するのかが分かるように管理する。具体的には、16kByteブロック毎に小ブロックカードの論理・物理ブロックアドレスの対応関係を管理すると共に、小ブロックカードの連続した256kByteブロック分の論理ブロックアドレスに対応するデータが大ブロックカード内のどの256kByte物理ブロックに格納されているかが分かるように管理する。
図5は、ホスト20側から送られてくるコマンドのフォーマットを示す図である。
ホスト20側から送られてくるコマンドのパケットは、図5(a)に示されるように、コマンド種別情報(ここでは「書込」),アドレス(物理ブロックアドレス),データ(コンテンツなどの実データ及び付随データ(512Byte+16Byte))といった各種情報を含んでいる。
このようなフォーマットのパケットにおいては、図5(b)に示されるように、付随データ16Byte中の所定の位置に小ブロックカードの「論理ブロックアドレス」(アクセス対象となる16kByteブロックに対応する論理アドレス)が配置されている。大ブロックカードは、コマンド種別情報,物理ブロックアドレス,データを取得するほか、特に上記「論理ブロックアドレス」を取得する。なお、この「論理ブロックアドレス」は、読出コマンドの場合には付加されない。
ホスト20側から送られてくるコマンドのパケットは、図5(a)に示されるように、コマンド種別情報(ここでは「書込」),アドレス(物理ブロックアドレス),データ(コンテンツなどの実データ及び付随データ(512Byte+16Byte))といった各種情報を含んでいる。
このようなフォーマットのパケットにおいては、図5(b)に示されるように、付随データ16Byte中の所定の位置に小ブロックカードの「論理ブロックアドレス」(アクセス対象となる16kByteブロックに対応する論理アドレス)が配置されている。大ブロックカードは、コマンド種別情報,物理ブロックアドレス,データを取得するほか、特に上記「論理ブロックアドレス」を取得する。なお、この「論理ブロックアドレス」は、読出コマンドの場合には付加されない。
図6は、ホスト20側が想定しているブロック書込操作と、メモリカード1(大ブロックカード)側が実際に行う書込処理とを、対比して示す図である。
ホスト20側(同図の左側)では、小ブロックカードの論理アドレスに基づく16kByteブロック単位のシーケンシャルな書込操作の発生時に、小ブロックカードの物理ブロックアドレスによる16kByteブロック単位のランダムな書込操作を行う。
ホスト20側(同図の左側)では、小ブロックカードの論理アドレスに基づく16kByteブロック単位のシーケンシャルな書込操作の発生時に、小ブロックカードの物理ブロックアドレスによる16kByteブロック単位のランダムな書込操作を行う。
一方、大ブロックカード側(同図の右側)では、ホスト20側から書込コマンドを受けた場合、小ブロックカードの論理ブロックアドレスに基づく16kByteブロック単位のデータをフラッシュメモリ3内にシーケンシャルに書き込む。
前述のように、ホスト20は、小ブロックの物理アドレスによる16Byte単位のランダムな書込操作を行う。このようなランダムな書込操作では、一般に、大ブロック(256kByte)の一部のみを書き換えるための処理が多発する。NAND型フラッシュメモリではブロック単位でしか消去を行えないため、ブロックの一部のみを書き換える場合は、書き換える新データを消去済みの新ブロックに書き込み、新データに書き換えられる旧データを含む旧ブロックから、書き換えられない残りのデータを新ブロックにコピーする必要がある。このように、ブロックの一部のみを書き換える処理は、書き換えられないデータのコピー動作(以下、「巻き添えデータコピー」と称す)を伴うため、ブロックの一部のみを書き換える処理が多発すると、オーバーヘッドが非常に増大することになる。そこで、本実施形態では、ホスト20側から得られる論理アドレスの順序に従って、大ブロックカード側で物理アドレスを再度割り当てることにより、ブロックの一部のみの書込の発生を低減し、オーバーヘッドの増大を抑制している。
図7は、本実施形態のメモリカード1に対してホスト20が書込を行う際の、当該メモリカード1のI/OピンとR/Bピンとの信号の例を示すタイミングチャートである。
ホスト20は、メモリカードは16kByteの消去ブロックサイズを有する不揮発性メモリであると仮定してメモリカードを制御している。例えば、メモリカードに対する書込の際には、ホスト20は、シリアルデータインプットコマンド80H(Hは16進を示す)をI/Oピン1〜8へ入力する。次に、ホスト20は、カラムアドレスC/AおよびページアドレスP/Aを、I/Oピン1〜8へ入力する。なお、ここでカラムアドレスC/AおよびページアドレスP/Aは、ホスト20がメモリカード1に対して想定している仮想物理アドレス空間におけるカラムアドレスおよびページアドレスである。
更に、ホスト20は、書込データを、I/Oピン1〜8の個々に対し、528回入力する。具体的には、ホスト20はライトイネーブルピンへの入力信号を528回クロッキングしながら、それぞれのI/Oピンに対し528ビット(すべてのI/Oピン合計で528バイト)のデータを順次シフトインする。データのシフトインが完了すると、ホスト20は、プログラムコマンド10HをI/Oピン1〜8へ入力する。これに応答してメモリカードは、そのR/Bピンにロウレベルの信号を出力し、メモリカードがビジー状態であることを示す。その後、所定期間後にR/Bピンにハイレベルの信号を出力することでメモリカードがレディ状態になったことを示す。
しかしながら、図7におけるR/Bピンの状態は、あくまでもホスト20に対してメモリカード1がどのような状態かを示すものである。つまり、図7において、プログラムコマンド10Hの入力に応答して、R/Bピンがビジー状態(つまりロウレベルを出力)を示したとしても、内部でNAND型フラッシュメモリ3に対する書込動作(つまり、ページバッファからメモリセルアレイへのデータ転送)が実際に行われているとは限らない。また、R/Bピンがレディ状態に復帰したとしても、内部でNAND型フラッシュメモリ3に対する書込動作が実際に完了しているとは限らない。
図8は、本実施形態のメモリカード1内のNAND型フラッシュメモリ3に対して、当該メモリカード1内のコントローラ4が書込を行う際の、NAND型フラッシュメモリ3のI/OピンとR/Bピンとの信号の例を示すタイミングチャートである。
コントローラ4は、NAND型フラッシュメモリ3は256kByteの消去ブロックサイズを有する不揮発性メモリであると認識している。例えば、NAND型フラッシュメモリ3に対する書込の際には、コントローラ4は、シリアルデータインプットコマンド80H(Hは16進を示す)をI/Oピン1〜8へ入力する。次に、コントローラ4は、カラムアドレスC/AおよびページアドレスP/Aを、I/Oピン1〜8へ入力する。なお、ここでカラムアドレスC/AおよびページアドレスP/Aは、コントローラ4がNAND型フラッシュメモリ3に対して想定している実物理アドレス空間におけるカラムアドレスおよびページアドレスである。したがって、図7におけるカラムアドレスC/AおよびページアドレスP/Aとは必ずしも一致していない。
更に、コントローラ4は、書込データを、I/Oピン1〜8の個々に対し、2112回入力する。具体的には、コントローラ4は、ライトイネーブルピンへの入力信号を2112回クロッキングしながら、それぞれのI/Oピンに対し2112ビット(すべてのI/Oピン合計で2112バイト)のデータを順次シフトインする。データのシフトインが完了すると、コントローラ4は、プログラムコマンド10HをI/Oピン1〜8へ入力する。これに応答してメモリカードは、そのR/Bピンにロウレベルの信号を出力し、メモリカードがビジー状態であることを示す。その後、所定期間後にR/Bピンにハイレベルの信号を出力することでメモリカードがレディ状態になったことを示す。図8におけるR/Bピンの状態は、コントローラ4に対してNAND型フラッシュメモリ3が実際にどのような状態かを示すものである。
なお、上記図7および図8においては、カラムアドレスC/AおよびページアドレスP/Aの入力をそれぞれ1つのサイクルで示しているが、メモリカード1の容量またはNAND型フラッシュメモリ3の容量に応じて、適宜2サイクル以上になる場合もある。
上記図7および図8からわかるように、メモリカードがビジー状態でいられる時間には制約があるため、その間にデータ書込を行い、所定期間後には当該メモリカードがレディ状態になったことをホスト側に示さなければならない。
図9は、本実施形態のメモリカード1に対して電源投入直後にホスト20が発行するコマンドとR/Bピンの信号との関係を示すタイミングチャートである。
例えば、メモリカード1がホスト20にスロットに挿入されると、ホスト20からメモリカード1への電源投入(電源供給)が行われる。メモリカード1においては、電源投入後(具体的には電源が安定する電圧レベル(例えば、3.0V)に達してから)、期間「tPWON(min)」(例えば、少なくとも2ms)の経過時もしくはその後に、初期化のためのリセットコマンド「FF」(もしくは、メモリカードの識別情報などの読出を要求するIDリードコマンド「90H,91H,又は9AH」)がホスト20から送られてくることが想定されている。この時点では、CPU8に必要なクロックはまた形成されておらず、CPU8は上記リセットコマンドもしくはIDリードコマンドを受け付けることができない。
本実施形態のメモリカード1は、上記リセットコマンドもしくはIDリードコマンドを受けた場合には、当該コマンドの要求に応じ、所定の情報(例えば、フラッシュメモリの記憶容量を示す情報)を、CPU8等を経由せずに、ホスト20へ通知することができるものとなっている。その詳細については後で述べる。
メモリカード1は、上記コマンドを受けた後、初期化処理等が完了するまでの期間「tRST(Ready)」が経過するまでの間は、ホスト20からのアクセスコマンド(フラッシュメモリ3に対するデータのライトやリードなどのコマンド)は受け付けない。この期間においては、コントローラ4は、R/Bピンにロウレベルの信号を出力することでメモリカード1がビジー状態であることを示し、CPU8等の動作に必要なクロックの発振やPLLの設定に関するセットアップ処理を実行する。
期間「tRST(Ready)」が経過すると、メモリカード1はホスト20からのアクセスコマンドの受け付けが可能なスタンバイ状態となる。このとき、コントローラ4は、R/Bピンにハイレベルの信号を出力することでメモリカード1がレディ状態であることを示し、ホスト20から送られてくるアクセスコマンドに応じた処理を行う。
図10は、コントローラ4の構成の一例を示す図である。なお、図1や図2と共通する要素には同一の符号を付している。
コントローラ4には、前述の図1に示されるPCB基板2上の端子群(又はパッド)とのボンディング(又はバンプ)による配線接続を可能とする端子群30(電源端子、接地端子など)が設けられている。また、コントローラ4には、前述のホストインタフェース部6のほか、IDリード回路(第1の回路)31、メイン回路(第2の回路)32、発振器(OSC)35、PLL(Phase Locked Loop)回路36などが設けられている。
コントローラ4には、前述の図1に示されるPCB基板2上の端子群(又はパッド)とのボンディング(又はバンプ)による配線接続を可能とする端子群30(電源端子、接地端子など)が設けられている。また、コントローラ4には、前述のホストインタフェース部6のほか、IDリード回路(第1の回路)31、メイン回路(第2の回路)32、発振器(OSC)35、PLL(Phase Locked Loop)回路36などが設けられている。
上記IDリード回路31は、メモリカード1がスタンバイ状態になるまでの期間にホスト20が発行するコマンド(例えば、前述のIDリードコマンド)を処理するために使用される。一方、メイン回路32は、メモリカード1がスタンバイ状態になった後にホスト20が発行するコマンド(例えば、前述のアクセスコマンド)を処理するために使用される。このメイン回路32は、前述のCPU8、ROM9、RAM10などを含んでいる。
IDリード回路31は、デコーダ33やシーケンサ34などを含んでいる。また、端子群30のうち、デコーダ33に比較的近い位置に存在するいくつかの端子(例えば、3つの端子30A,30B,30C)は、それぞれ配線などを通じてデコーダ33に電気的に接続されている。特に、上記3つの端子30A,30B,30CとPCB基板2(図1参照)上の3つの端子との間の電気的な接続関係(8通りの接続形態のうちの1つ)に基づいて、例えばフラッシュメモリ3の記憶容量(8種類の記憶容量のうちの1つ)を示す情報が決定されるようになっている。なお、この接続関係は、例えば製品出荷前のアセンブリ工程でのボンディング処理(またはバンプ処理)の段階で確定される。
デコーダ33は、上記3つの端子30A,30B,30Cの信号レベルの高/低の組合せに基づき、8ビットデータ(後述)を生成してシーケンサ34へ送る。シーケンサ34は、デコーダ33から得られる情報とその他の必要な情報(フラッシュメモリ3の記憶容量以外にホスト20に通知すべき情報)とを、シーケンシャルにホストインタフェース6へ送る。
発振器(OSC)35は、コントローラ4における内部クロック(基準周波数)を生成するものである。PLL回路36は、発振器35から得られる基準周波数に基づき、CPU8が使用するための高周波化された信号を生成するものである。
ホストインタフェース6は、ホスト20から送られてくるコマンドの種類を判定し、その判別結果に応じて、上記IDリード回路31を用いて当該コマンドを処理すべきか、それとも上記メイン回路32を用いて処理すべきかを決定する。例えば、メモリカード1がスタンバイ状態となる前に前述のIDリードコマンドを受けた場合には、メイン回路32を用いることなく、IDリード回路31から得られる情報をホスト20へ通知する。一方、メモリカード1がスタンバイ状態となった後に前述のアクセスコマンドを受けた場合には、メイン回路32に当該コマンドの処理を実行させ、その処理結果をホスト20へ通知する。
次に、上記3つの端子30A,30B,30CとPCB基板2上の3つの端子との間の接続関係の具体例を2つ挙げて説明する。
図11は、PCB基板2上に複数の電源端子と接地端子との組合せを設ける形態(第1のボンディングオプション)を示す図である。また、図12は、PCB基板2上に複数の接地端子(又は電源端子)を設ける形態(第2のボンディングオプション)を示す図である。
図11に示される第1のボンディングオプション40Aによれば、PCB基板2上に、複数の電源端子と接地端子との組合せが設けられる。ボンディングによる配線接続の際には、コントローラ4側の端子30A,30B,30Cを、それぞれ、PCB基板2側の電源端子又は接地端子に選択的に配線接続する。例えば、数値「1」を表現する場合には電源端子との配線接続を行い、数値「0」を表現する場合には接地端子との配線接続を行う(勿論、逆の形態を採用してもよい)。図示の例では、端子30A,30Cがそれぞれ電源端子に接続され、端子30Bが接地端子に接続されている。
この第1のボンディングオプション40Aによれば、配線接続の際に、PCB基板2上に用意された電源端子/接地端子を選択するだけで、容易に8通りの情報を表現することができる。
一方、図12に示される第2のボンディングオプション40Bによれば、PCB基板2上に、複数の接地端子(又は電源端子)が設けられる。また、コントローラ4側において、端子30A,30B,30Cと電源(又はグランド)との間に、それぞれ、プルアップ抵抗(又はプルダウン抵抗)41が設けられる。ボンディングによる配線接続の際には、コントローラ4側の端子30A,30B,30Cを、それぞれ、PCB基板2側の接地端子(又は電源端子)に配線接続するか、配線接続しない状態(オープン)にする。例えば、数値「1」を表現する場合にはオープンにし、数値「0」を表現する場合には接地端子との配線接続を行う(勿論、逆の形態を採用してもよい)。図示の例では、端子30A,30Cがそれぞれオープンにされ、端子30Bが接地端子に接続されている。
この第2のボンディングオプション40Bによれば、前述した第1のボンディングオプション40Aに比べ、PCB基板2に用意する端子群の数を減らすことができ、その専有面積を縮小できる。また、ボンディングの処理における歩留まりの低下を低減することができる。但し、図12の構成では、端子30Bのように接地端子へのボンディングがなされていると、プルアップ抵抗41を介して電源側から接地側へスタティックな電流が流れてしまい、端子からデコーダ33へ送られる信号のレベル等に悪影響を及ぼす可能性がある。このため、上記電流の流れを抑制し、信号レベルを安定させるための制御機構を設けることが望ましい。その詳細については、後で述べる。
図13は、フラッシュメモリ3の記憶容量を示す情報を説明するための図である。
フラッシュメモリ3の記憶容量としては、「16MByte」,「32MByte」,「64MByte」,「128MByte」,「256MByte」,「512MByte」,「1GByte」,「2GByte」の8種類が想定されており、それぞれが、例えば8ビットデータ(D7〜D0)で定義される。当該8ビットデータは、IDリード回路31からホストインタフェース6へ渡され、I/Oピン1〜8を通じてホスト20へ伝えられることになる。
フラッシュメモリ3の記憶容量としては、「16MByte」,「32MByte」,「64MByte」,「128MByte」,「256MByte」,「512MByte」,「1GByte」,「2GByte」の8種類が想定されており、それぞれが、例えば8ビットデータ(D7〜D0)で定義される。当該8ビットデータは、IDリード回路31からホストインタフェース6へ渡され、I/Oピン1〜8を通じてホスト20へ伝えられることになる。
図示の例では、記憶容量「16MByte」がビットデータ「01110011」で表現され、記憶容量「32MByte」がビットデータ「01110101」で表現され、記憶容量「64MByte」がビットデータ「01110110」で表現され、記憶容量「128MByte」がビットデータ「01111001」で表現され、記憶容量「256MByte」がビットデータ「01110001」で表現され、記憶容量「512MByte」がビットデータ「11011100」で表現され、記憶容量「1GByte」がビットデータ「11010011」で表現され、記憶容量「2GByte」がビットデータ「11010101」で表現されている。
図14は、ホストインタフェース6及びIDリード回路31の詳細な構成を示すブロック図である。
ホストインタフェース6は、各種のピンを通じてホスト20との間で各種の信号(前述のR/BやD0〜D7のほか、CLE,CE,WE,ALE,RE)の送受を行う。
ホストインタフェース6は、各種のピンを通じてホスト20との間で各種の信号(前述のR/BやD0〜D7のほか、CLE,CE,WE,ALE,RE)の送受を行う。
CLE(Command Latch Enable)信号は、ホストインタフェース6内部のコマンドレジスタへのコマンドの取り込みを制御するために使用される信号である。CE信号(但し、ロウ・アクティブ)は、カード選択のための信号である。この信号がハイレベルになったときには、メモリカードは動作モードとなる。WE(但し、ロウ・アクティブ)は、D0〜D7に対応するI/Oピンを通じてコマンド,アドレス,データを取得するための制御に使用される信号である。
ALE(Address Latch Enable)信号は、ホストインタフェース6内部のアドレス/データレジスタへのアドレスの取り込みを制御するために使用される信号である。RE信号(但し、ロウ・アクティブ)は、データのシリアルな出力を制御するために使用される信号である。
ホストインタフェース6は、ホスト20から送られてくるコマンドの種類を判定するコマンド判定回路60を有する。このコマンド判定回路60は、受信されるコマンドがもしIDリードコマンドである場合には、コマンドイネーブル信号をIDリード回路31側へ出力する。また、コマンド判定回路60は、データをホスト20へデータを出力させるためのRE信号(但し、ロウ・アクティブ)をIDリード回路31側へ出力する。ホストインタフェース6は、マルチプレクサ56からデータが送られてきた場合には、当該データを、D0〜D7ピンを通じてホスト20へ送る。
一方、IDリード回路31の中には、前述したデコーダ33やシーケンサ34のほか、AND回路57、カウンタ58などが設けられる。上記シーケンサ34には、フリップフロップ群51〜55及びマルチプレクサ56が含まれる。各フリップフロップ群は、8個のフリップフロップからなる。AND回路57の入力端には、コマンドイネーブル信号及びRE信号が供給される。AND回路57の出力信号は、フリップフロップ群51〜55のクロック端子に供給される。また、AND回路57の出力信号は、カウンタ58の入力端に供給される。
デコーダ33は、前述したように、3つの端子30A,30B,30Cの信号レベルの高/低の組合せに対応した8ビットデータを生成してシーケンサ34へ送る。
フリップフロップ群51〜55のうち、フリップフロップ群52は、デコーダ33から送られてくる8ビットデータを入力し、AND回路57から供給される信号に応じて、当該8ビットデータを出力する。その他のフリップフロップ群51,53〜55は、それぞれ、固定値としての8ビットデータを入力し、AND回路57からの信号に応じて、当該8ビットデータを出力する。上記固定値としてのデータの例としては、例えば、メモリカードの特性を表すコードや、メモリカードのIDを表すコードなどが挙げられる。フリップフロップ群51〜55から出力される8ビットデータは、それぞれ「1st Byte」,「2nd Byte」,「3rd Byte」,「4th Byte」,「5th Byte」と称することで識別する場合がある。
マルチプレクサ56は、フリップフロップ群51〜55から出力されてくる8ビットデータを順次取り込み、それらをシーケンシャルにホストインタフェース6へ出力する。
AND回路57は、ホストインタフェース6側から送られてくるRE信号とコマンドイネーブル信号との論理積処理を行って出力する。カウンタ58は、AND回路57の出力信号に応じて、計時処理を実行し、マルチプレクサ56の動作タイミングを制御する。
次に、図15のタイミングチャートを参照して、コントローラ4中のホストインタフェース6がIDリードコマンドを受けた場合の動作を説明する。
ホストインタフェース6がホスト20からIDリードコマンドなどを受ける際、CLE信号はハイとなり、IDリードコマンドのコマンドレジスタへの取り込みが行われる。このとき、CE信号はロウとなり、メモリカードがスタンバイ状態に変わるまでの期間は当該ロウの状態が維持される。また、WE信号に従って、D0〜D7に対応するI/Oピンを通じて上記コマンド及びアドレスが取得される。更に、ALE信号に従って、アドレスの内部アドレスレジスタへの取り込みなどが行われる。最後に、RE信号に従って、IDリード回路31から出力されるデータが、Data0,Data1,Data2,Data3,…(例えば、前述の「1st Byte」,「2nd Byte」,「3rd Byte」,「4th Byte」,…にそれぞれ該当)として、D0〜D7に対応するI/Oポートを通じてホスト20側へシリアルに送られる。
次に、図16〜図18を参照して、前述の図12にて説明したプルアップ抵抗41(もしくはプルダウン抵抗)を介して電源側から接地側へ流れるスタティックな電流の流れを抑制するための手法について説明する。
図16は、図12に示される構成においてプルアップ抵抗41を介して電源側から接地側へ流れるスタティックな電流の流れを抑制するための回路の一例を示す図である。ここでは、図12に示される端子群30のうちの1つの端子に関して説明する。なお、この端子は、図示のようにグランドに配線接続されている場合と、解放(オープン)にされている場合(不図示)とがあり得るものとする。
図16に示される回路は、前述のコントローラ4内に設けられ、スイッチャブルなプルアップ抵抗41Aを有するスイッチャブル・プルアップI/Oセル61Aや、端子30から入力される信号を伝送する信号線70の信号レベルを監視するとともに上記I/Oセル61Aの動作を制御する監視/制御回路62、この監視/制御回路62の動作期間を制御するカウンタ回路63などを備えている。監視/制御回路62やカウンタ回路63は、例えばIDリード回路31の中に設けられていてもよい。
スイッチャブル・プルアップI/Oセル61Aは、スイッチャブルなプルアップ抵抗41Aのほか、信号処理器71を含む。プルアップ抵抗41Aは、端子30に接続された信号線70と電源VDDとの間に接続され、信号線70の信号レベルをプルアップするプルアップ動作の有効/無効(enable/disable)の切替ができるように構成されている。信号処理器71は、監視/制御回路62から送られてくる制御信号に応じた信号Znをプルアップ抵抗41Aへ送ることにより、プルアップ抵抗41Aのプルアップ動作の有効/無効を切替制御する。なお、電源投入の時点においては、プルアップ動作は有効に設定される。
監視/制御回路62は、信号処理器72を含む。信号処理器72は、電源投入時などに、カウンタ回路63から送られてくるリセット信号Resetに応じて監視/制御の動作を開始し、上記プルアップ動作を有効とするための制御信号を信号処理器71へ送る。また、信号処理器72は、カウンタ回路63から送られてくるカウント信号に従って、一定期間、信号線70の信号レベルを監視し、当該信号レベルがハイであれば上記プルアップ動作を有効とするための制御信号をそのまま維持し、一方、当該信号レベルがロウであれば上記プルアップ動作を無効とするための制御信号に切り替える。特に、端子30が図示のようにグランドに配線接続されている場合には、信号レベルがロウとなるため、プルアップ動作は無効に切り替えられ、プルアップ抵抗を通じてスタティックな電流が電源からグランドへ流れることが防止される。また、信号処理器72は、上記一定期間が経過した時点で、上記制御信号の状態を確定する。
カウンタ回路63は、カウンタ73を含んでいる。このカウンタ73は、電源投入時などにリセット信号を信号処理器72へ送るとともに、ホスト20側から供給されるクロックなどに基づいて、信号線70の信号レベルを監視すべき一定の時間(10msec以下)をカウントする。監視時間の開始及び終了は、OR回路74を通じて信号処理器72に伝えられる。
図17は、図16に示される回路の変形例を示す図である。ここでは、図16と異なる部分について説明する。
図16に示される回路ではスイッチャブルなプルアップ抵抗41Aを使用しているのに対し、図17に示される回路では代わりにスイッチャブルなプルダウン抵抗41Bを使用している。この例においても、図12に示される端子群30のうちの1つの端子に関して説明する。なお、この端子は、図17のように電源端子に配線接続されている場合と、解放(オープン)にされている場合(不図示)とがあり得るものとする。
図16に示される回路ではスイッチャブルなプルアップ抵抗41Aを使用しているのに対し、図17に示される回路では代わりにスイッチャブルなプルダウン抵抗41Bを使用している。この例においても、図12に示される端子群30のうちの1つの端子に関して説明する。なお、この端子は、図17のように電源端子に配線接続されている場合と、解放(オープン)にされている場合(不図示)とがあり得るものとする。
プルダウン抵抗41Bは、端子30に接続された信号線70とグランドとの間に接続され、信号線70の信号レベルをプルダウンするプルダウン動作の有効/無効の切替ができるように構成されている。信号処理器71は、監視/制御回路62から送られてくる制御信号に応じた信号Znをプルダウン抵抗41Bへ送ることにより、プルダウン抵抗41Bのプルダウン動作の有効/無効を切替制御する。なお、電源投入の時点においては、プルダウン動作は有効に設定される。
また、監視/制御回路62中の信号処理器72は、動作中においては、信号線70の信号レベルがロウであれば上記プルダウン動作を有効とするための制御信号を維持し、一方、当該信号レベルがハイであれば上記プルダウン動作を無効とするための制御信号に切り替える。特に、端子30が図示のように電源端子に配線接続されている場合には、信号レベルがハイとなるため、プルダウン動作は無効に切り替えられ、プルダウン抵抗を通じてスタティックな電流が電源からグランドへ流れることが防止される。
なお、カウンタ回路63の構成に関しては、図16の場合と同様であるため、その説明を省略する。
なお、カウンタ回路63の構成に関しては、図16の場合と同様であるため、その説明を省略する。
図18は、図16に示される回路の動作を示すタイミングチャートである。但し、図18のタイミングチャートは、対象とされる端子30がオープンの状態である場合の動作を示している。
例えば電源投入時に、カウンタ回路63から監視/制御回路62中の信号処理器72に入力されるリセット信号がアクティブとなる。同時に、クロックCLK信号に基づき、カウンタ73によって監視時間(10msec以下)の計時が開始され、監視時間であることを示す信号CPが信号処理器72に入力される。このとき、信号処理器72から信号処理器71に入力される信号AENがアクティブとなり、プルアップ抵抗41Aをプルアップ動作させるための信号Znがアクティブとなる。これによりプルアップ動作が有効となるため、信号線70の信号レベル80はハイとなる。
監視時間の開始から終了までの間は、監視/制御回路62により信号線70の信号レベル80が監視される。この例では端子30がオープンにされているため、信号線70の信号レベル80はハイのままとなっている。
監視時間が終了すると、信号処理器72に入力される信号CPが監視時間の終了を示す。このとき、信号処理器72から信号処理器71に入力される信号AENの状態が確定される。この例では、信号AENがアクティブの状態で確定されるため、信号Znはアクティブであり、プルアップ動作は有効である。このため、信号レベル80がハイである信号がIDリード回路31の内部へと伝えられることになる。
一方、端子30がオープンではなく、グランドに配線接続されている場合には、上記監視時間において信号線70の信号レベル80がロウであることが検出される。この場合、信号AENはインアクティブに切り替わるため、信号Znはインアクティブに切り替わり、プルアップ動作は無効に切り替わる。この動作により、プルアップ抵抗を通じてスタティックな電流が電源からグランドへ流れることが防止される。そして、監視時間が終了した時点では、信号AENがインアクティブの状態で確定されるため、信号Znはインアクティブであり、プルアップ動作は無効となっている。このため、信号レベル80がロウである信号がIDリード回路31の内部へと伝えられることになる。
このように本実施形態によれば、例えば電源供給直後において、CPUの動作に必要なクロックの発振及びPLLの設定に関するセットアップ処理が完了する前であっても、ホストからのリセットコマンドもしくはIDリードコマンドに応じることができ、メモリカードの仕様に規定された期間内にメモリの容量などを示す情報をホストへ通知することができる。
なお、上記実施形態の説明では、実際に使用するフラッシュメモリ3の消去ブロックサイズが、ホスト20が想定しているフラッシュメモリの消去ブロックサイズよりも大きい場合を示したが、勿論、実際に使用するフラッシュメモリ3の消去ブロックサイズが、ホスト20が想定しているフラッシュメモリの消去ブロックサイズと同じであってもよい。
また、上記実施形態の説明では、不揮発性メモリとしてNAND型フラッシュメモリを例に挙げて説明したが、不揮発性メモリはNAND型フラッシュメモリに限られず、他の種類のメモリを適用してもよい。
また、本発明はメモリカード以外のカード(通信カードなど)にも適用することが可能である。更には、カード形状でなくても適用することが可能である。
本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
1…メモリカード(大ブロックカード)、2…PCB基板、3…NAND型フラッシュメモリ、4…コントローラ、5…メモリインタフェース部、6…ホストインタフェース部、7…バッファ、8…CPU、9…ROM、10…RAM、11…小ブロックカード物理アクセス層、12…小ブロックカード物理・小ブロックカード論理変換層、13…小ブロックカード論理・大ブロックカード物理変換層、14…大ブロックカード物理アクセス層、20…ホスト機器、21…アプリケーションソフト、22…ファイルシステム、23…ドライバソフト、24…小ブロックカード物理アクセス層、30…端子群、31…IDリード回路(第1の回路)、32…メイン回路(第2の回路)、33…デコーダ、34…シーケンサ、35…発振器(OSC)、36…PLL回路、40A…第1のボンディンングオプション、40B…第2のボンディンングオプション、41…プルアップ抵抗、43…プルダウン抵抗、51〜55…フリップフロップ群、56…マルチプレクサ、57…AND回路、58…カウンタ、60…コマンド判定回路、61A…スイッチャブル・プルアップI/Oセル、61B…スイッチャブル・プルダウンI/Oセル、62…監視/制御回路、63…カウンタ回路。
Claims (7)
- 内部クロックに従って動作する第1の回路と、
外部へ通知すべき情報を生成する第2の回路と、
外部から所定のコマンドを受けた場合、前記第1の回路を用いずに、前記第2の回路によって生成される前記情報を外部へ通知するインタフェース部と、
基板上に設けられた電源端子または接地端子に接続可能な複数の端子と
を具備し、前記複数の端子がそれぞれ前記基板上の電源端子と接地端子のいずれに電気的に接続されているか否かに応じて、前記情報が決定されることを特徴とする半導体装置。 - 内部クロックに従って動作する第1の回路と、
外部へ通知すべき情報を生成する第2の回路と、
外部から所定のコマンドを受けた場合、前記第1の回路を用いずに、前記第2の回路によって生成される前記情報を外部へ通知するインタフェース部と、
基板上に設けられた複数の第1の端子に接続可能な複数の第2の端子と
を具備し、前記複数の第2の端子がそれぞれ前記基板上の個々の第1の端子に電気的に接続されているか否かに応じて、前記情報が決定されることを特徴とする半導体装置。 - 前記複数の第1の端子は接地端子であり、
前記複数の第2の端子と電源との間にそれぞれ接続され、当該端子から得られる信号レベルをプルアップするプルアップ動作の有効/無効の切替が可能なプルアップ抵抗と、
前記信号レベルの高/低に応じて前記プルアップ抵抗によるプルアップ動作の有効/無効を切替制御する制御回路と
を更に具備することを特徴とする請求項2に記載の半導体装置。 - 前記複数の第1の端子は電源端子であり、
前記複数の第2の端子とグランドとの間にそれぞれ接続され、当該端子から得られる信号レベルをプルダウンするプルダウン動作の有効/無効の切替が可能なプルダウン抵抗と、
前記信号レベルの低/高に応じて前記プルダウン抵抗によるプルダウン動作の有効/無効を切替制御する制御回路と
を更に具備することを特徴とする請求項2に記載の半導体装置。 - 電源端子及び接地端子を有する基板と、
前記基板上に設けられる不揮発性半導体メモリと、
前記基板上に設けられ、複数の端子を有し、外部とのインタフェース処理を行うとともに前記不揮発性半導体メモリを制御することが可能なコントローラと
を具備し、前記コントローラに設けられる個々の端子がそれぞれ前記基板上の電源端子と接地端子とのいずれに電気的に接続されているかに応じて、外部へ通知すべき情報が決定されることを特徴とするメモリカード。 - 複数の端子を有する基板と、
前記基板上に設けられる不揮発性半導体メモリと、
前記基板上に設けられ、複数の端子を有し、外部とのインタフェース処理を行うとともに前記不揮発性半導体メモリを制御することが可能なコントローラと
を具備し、前記コントローラに設けられる個々の端子がそれぞれ前記基板上の個々の端子に電気的に接続されているか否かに応じて、外部へ通知すべき情報が決定されることを特徴とするメモリカード。 - 前記情報は、前記不揮発性半導体メモリの記憶容量を示す情報を含むことを特徴とする請求項5又は6のいずれか1項に記載のメモリカード。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004291661A JP2006107049A (ja) | 2004-10-04 | 2004-10-04 | 半導体装置及びその半導体装置を備えたメモリカード |
PCT/JP2005/017429 WO2006038470A1 (en) | 2004-10-04 | 2005-09-15 | Semiconductor device and memory card having the same |
US11/513,025 US7370810B2 (en) | 2004-10-04 | 2006-08-31 | Semiconductor device and memory card having the same |
US12/115,418 US7744006B2 (en) | 2004-10-04 | 2008-05-05 | Semiconductor device and memory card having the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004291661A JP2006107049A (ja) | 2004-10-04 | 2004-10-04 | 半導体装置及びその半導体装置を備えたメモリカード |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006107049A true JP2006107049A (ja) | 2006-04-20 |
Family
ID=35892624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004291661A Pending JP2006107049A (ja) | 2004-10-04 | 2004-10-04 | 半導体装置及びその半導体装置を備えたメモリカード |
Country Status (3)
Country | Link |
---|---|
US (2) | US7370810B2 (ja) |
JP (1) | JP2006107049A (ja) |
WO (1) | WO2006038470A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006107049A (ja) * | 2004-10-04 | 2006-04-20 | Toshiba Corp | 半導体装置及びその半導体装置を備えたメモリカード |
US20100005225A1 (en) * | 2006-07-26 | 2010-01-07 | Panasonic Corporation | Nonvolatile memory device, nonvolatile memory system, and host device |
JP4544263B2 (ja) * | 2007-05-07 | 2010-09-15 | ソニー株式会社 | 通信システム、並びにメモリカード |
KR20150000228A (ko) * | 2013-06-24 | 2015-01-02 | 에스케이하이닉스 주식회사 | 반도체 집적 회로 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63237191A (ja) * | 1987-03-25 | 1988-10-03 | Nec Corp | メモリicカ−ド |
JPH04178791A (ja) * | 1990-11-13 | 1992-06-25 | Mitsubishi Electric Corp | Icカード |
JPH05233901A (ja) * | 1992-02-18 | 1993-09-10 | Mitsubishi Electric Corp | Icカード、icカード搭載用メモリic及びicカードのメモリ容量の確認方法 |
JPH0652376A (ja) * | 1992-07-29 | 1994-02-25 | Rohm Co Ltd | Icメモリカード |
JP2000194598A (ja) * | 1998-12-25 | 2000-07-14 | Toshiba Corp | 半導体集積回路装置 |
JP2000250661A (ja) * | 1999-02-26 | 2000-09-14 | Hitachi Ltd | 半導体集積回路及びメモリカード |
JP2004185273A (ja) * | 2002-12-03 | 2004-07-02 | Renesas Technology Corp | メモリカード及び電子デバイス |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0764866A (ja) * | 1993-08-27 | 1995-03-10 | Sharp Corp | メモリ・カードの記憶容量識別方法 |
EP0646892A3 (en) * | 1993-09-30 | 1996-03-06 | Toppan Printing Co Ltd | Memory card. |
JPH0962808A (ja) | 1995-08-25 | 1997-03-07 | Mitsubishi Electric Corp | 非接触icカード及び非接触icカードシステム |
JPH10149283A (ja) | 1996-09-20 | 1998-06-02 | Fujitsu Ltd | 情報処理装置、可換記憶媒体、ライセンス発行システム、およびライセンス発行/移動方法 |
JPH10149238A (ja) | 1996-11-18 | 1998-06-02 | Mitsubishi Electric Corp | 入力回路 |
JPH10173508A (ja) | 1996-12-16 | 1998-06-26 | Toshiba Corp | 信号入力回路及び信号入力方法 |
JP2001297038A (ja) * | 2000-04-11 | 2001-10-26 | Toshiba Corp | データ記憶装置および記録媒体並びに記録媒体制御方法 |
US6543690B2 (en) * | 2000-12-04 | 2003-04-08 | Schlumberger Malco, Inc. | Method and apparatus for communicating with a host |
JP2004247026A (ja) * | 2003-01-24 | 2004-09-02 | Renesas Technology Corp | 半導体集積回路及びicカード |
JP2006107049A (ja) * | 2004-10-04 | 2006-04-20 | Toshiba Corp | 半導体装置及びその半導体装置を備えたメモリカード |
-
2004
- 2004-10-04 JP JP2004291661A patent/JP2006107049A/ja active Pending
-
2005
- 2005-09-15 WO PCT/JP2005/017429 patent/WO2006038470A1/en active Application Filing
-
2006
- 2006-08-31 US US11/513,025 patent/US7370810B2/en active Active
-
2008
- 2008-05-05 US US12/115,418 patent/US7744006B2/en not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63237191A (ja) * | 1987-03-25 | 1988-10-03 | Nec Corp | メモリicカ−ド |
JPH04178791A (ja) * | 1990-11-13 | 1992-06-25 | Mitsubishi Electric Corp | Icカード |
JPH05233901A (ja) * | 1992-02-18 | 1993-09-10 | Mitsubishi Electric Corp | Icカード、icカード搭載用メモリic及びicカードのメモリ容量の確認方法 |
JPH0652376A (ja) * | 1992-07-29 | 1994-02-25 | Rohm Co Ltd | Icメモリカード |
JP2000194598A (ja) * | 1998-12-25 | 2000-07-14 | Toshiba Corp | 半導体集積回路装置 |
JP2000250661A (ja) * | 1999-02-26 | 2000-09-14 | Hitachi Ltd | 半導体集積回路及びメモリカード |
JP2004185273A (ja) * | 2002-12-03 | 2004-07-02 | Renesas Technology Corp | メモリカード及び電子デバイス |
Also Published As
Publication number | Publication date |
---|---|
US7370810B2 (en) | 2008-05-13 |
WO2006038470A1 (en) | 2006-04-13 |
US20090008461A1 (en) | 2009-01-08 |
US20060289660A1 (en) | 2006-12-28 |
US7744006B2 (en) | 2010-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3892851B2 (ja) | メモリカード及び半導体装置 | |
US7793035B2 (en) | Memory system and controller | |
JP4406339B2 (ja) | コントローラ、メモリカード及びその制御方法 | |
US6792501B2 (en) | Universal serial bus flash memory integrated circuit device | |
CN110032520A (zh) | ***开机代码存储器管理方法、存储器装置及其制造方法 | |
US8055833B2 (en) | System and method for increasing capacity, performance, and flexibility of flash storage | |
CN110795027B (zh) | 固态存储设备及包括该固态存储设备的电子*** | |
JP4828816B2 (ja) | メモリカード、半導体装置、及びメモリカードの制御方法 | |
JP4059002B2 (ja) | メモリ装置 | |
KR100871184B1 (ko) | 카드, 저장 디바이스, 및 메모리 시스템의 제어 방법 | |
KR100687151B1 (ko) | 메모리 카드, 반도체 장치, 및 반도체 메모리의 제어 방법 | |
US20020147882A1 (en) | Universal serial bus flash memory storage device | |
US7245539B2 (en) | Memory card, semiconductor device, and method of controlling semiconductor memory | |
JP2010152913A (ja) | セクタ書き込み操作時間を効果的に減少させるための不揮発性メモリユニット内のブロックの構成 | |
US20080028165A1 (en) | Memory device, its access method, and memory system | |
JP4460967B2 (ja) | メモリカード、不揮発性半導体メモリ、及び半導体メモリの制御方法 | |
CN112395232A (zh) | 用于优化设备功率和效率的方法、***和设备 | |
JP2006195565A (ja) | 半導体記憶装置の制御方法、メモリカード、及びホスト機器 | |
JP2007011872A (ja) | メモリカードとその制御方法 | |
US7744006B2 (en) | Semiconductor device and memory card having the same | |
JP2004021867A (ja) | 情報処理システム | |
JP2019160204A (ja) | 制御装置、画像形成装置および回路装置 | |
JP4498341B2 (ja) | メモリシステム | |
JP2007317078A (ja) | 不揮発性メモリ、メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070412 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100518 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100716 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100824 |