(57)【要約】コマンド解析／制御部（２４）が、入出力バッファ（２３）を介してデータ転送コマンドを受けると、メモリセルアレイ（２１）のデータを第２のデータレジスタ（２５）に転送する。アドレス変換部（２６）は、ＣＰＵ（１）から入力された論理アドレスを第２のデータレジスタ（２５）の物理アドレスに変換して、第２のデータレジスタ（２５）へ出力するので、ＣＰＵ（１）は第２のデータレジスタ（２５）にランダムにアクセスすることが可能となる。その結果、ＣＰＵ（１）はメモリセルアレイ（２１）にランダムにアクセスすることができ、記憶装置を搭載した携帯電話等の装置の処理速度を向上させることが可能となる。
2003009301.tif 000002
【特許請求の範囲】
【請求項１】
メモリセルアレイ（２１）と、
前記メモリセルアレイ（２１）のデータを一時的に格納し、外部からパラレルでアクセス可能なデータレジスタ（２５）と、
外部から入力されたシリアルデータをパラレルデータに変換する入出力バッファ（２３）と、
前記入出力バッファ（２３）によってパラレルデータに変換されたコマンドを解析して、前記メモリセルアレイ（２１）と前記データレジスタ（２５）との間のデータ転送を制御するコマンド解析／制御部（２４，２７）と、
外部から入力された論理アドレスを前記データレジスタ（２５）の物理アドレスに変換して、前記データレジスタ（２５）へ出力するアドレス変換部（２６）とを含む記憶装置。
【請求項２】
前記記憶装置はさらに、前記メモリセルアレイ（２１）の論理先頭アドレス、前記メモリセルアレイ（２１）の論理最後尾アドレス、および前記データレジスタ（２５）の物理先頭アドレスが、前記メモリセルアレイ（２１）の領域毎に登録されるアドレス変換テーブルを含み、
前記アドレス変換部（２６）は、外部から入力された論理アドレスと前記アドレス変換テーブルに登録された論理先頭アドレスとの減算結果、前記アドレス変換テーブルに登録された論理最後尾アドレスと前記外部から入力された論理アドレスとの減算結果、および前記アドレス変換テーブルに登録された物理先頭アドレスに基づいて、前記データレジスタ（２５）の物理アドレスを算出する、請求項１記載の記憶装置。
【請求項３】
前記記憶装置はさらに、前記メモリセルアレイ（２１）のデータを一時的に格納する、前記データレジスタ（２５）とは異なるデータバッファ（２２）を含み、
前記入出力バッファ（２３）は、前記データバッファ（２２）に格納されたデータをシリアルデータに変換して外部へ出力する、請求項１記載の記憶装置。
【請求項４】
前記コマンド解析／制御部（２４，２７）は、前記入出力バッファ（２３）から第１のデータ転送コマンドを受けると、前記メモリセルアレイ（２１）のデータを前記データバッファ（２２）に転送した後、前記データバッファ（２２）に格納されるデータを前記データレジスタ（２５）に転送する、請求項３記載の記憶装置。
【請求項５】
前記コマンド解析／制御部（２４，２７）は、前記入出力バッファ（２３）から第２のデータ転送コマンドを受けると、前記データレジスタ（２５）のデータを前記データバッファ（２２）に転送した後、前記データバッファ（２２）に格納されるデータを前記メモリセルアレイ（２１）に転送する、請求項３記載の記憶装置。
【請求項６】
メモリセルアレイ（２１）と、前記メモリセルアレイ（２１）のデータを一時的に格納し、外部からパラレルでアクセス可能なデータレジスタ（２５）とを含んだ記憶装置の制御方法であって、
外部から入力されたシリアルデータをパラレルデータのコマンドに変換するステップと、
前記コマンドを解析して、前記メモリセルアレイ（２１）と前記データレジスタ（２５）との間のデータ転送を制御するステップと、
外部から入力された論理アドレスを前記データレジスタ（２５）の物理アドレスに変換して、前記データレジスタ（２５）へ出力するステップとを含む、記憶装置の制御方法。
【請求項７】
前記外部から入力された論理アドレスを前記データレジスタ（２５）の物理アドレスに変換して、前記データレジスタ（２５）へ出力するステップは、前記外部から入力された論理アドレスと予め登録された前記メモリセルアレイ（２１）の論理先頭アドレスとの減算結果、予め登録された前記メモリセルアレイ（２１）の論理最後尾アドレスと前記外部から入力された論理アドレスとの減算結果、および予め登録された前記データレジスタ（２５）の物理先頭アドレスに基づいて、前記データレジスタ（２５）の物理アドレスを算出するステップを含む、請求項６記載の記憶装置の制御方法。
【請求項８】
前記記憶装置はさらに、前記メモリセルアレイ（２１）のデータを一時的に格納する、前記データレジスタ（２５）とは異なるデータバッファ（２２）を含み、
前記記憶装置の制御方法はさらに、前記データバッファ（２２）に格納されたデータをシリアルデータに変換して外部へ出力するステップを含む、請求項６記載の記憶装置の制御方法。
【請求項９】
前記コマンドを解析して、前記メモリセルアレイ（２１）と前記データレジスタ（２５）との間のデータ転送を制御するステップは、第１のデータ転送コマンドを受けると、前記メモリセルアレイ（２１）のデータを前記データバッファ（２２）に転送した後、前記データバッファ（２２）に格納されるデータを前記データレジスタ（２５）に転送するステップを含む、請求項８記載の記憶装置の制御方法。
【請求項１０】
前記コマンドを解析して、前記メモリセルアレイ（２１）と前記データレジスタ（２５）との間のデータ転送を制御するステップは、第２のデータ転送コマンドを受けると、前記データレジスタ（２５）のデータを前記データバッファ（２２）に転送した後、前記データバッファ（２２）に格納されるデータを前記メモリセルアレイ（２１）に転送するステップを含む、請求項８記載の記憶装置の制御方法。
【発明の詳細な説明】
技術分野
本発明は、携帯電話等で使用される記憶装置に関し、特に、シリアルでデータを入出力する記憶装置に関する。
背景技術
近年、携帯電話が広く普及し、それに伴って携帯電話の小型化、多機能化などの要望がさらに高まりつつある。携帯電話の小型化に対する要望を満たすためには、携帯電話に搭載されるＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）を高集積化してＬＳＩの数を減らしたり、ＬＳＩのピン数を少なくしてチップサイズを小さくしたりすることが必要となる。また、携帯電話の多機能化に対する要望を満たすためには、アプリケーションの処理速度を向上させることが必要となる。
図５は、従来の携帯電話における回路構成の一例を示す図である。この携帯電話は、携帯電話全体の制御を行なうＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１００と、アプリケーションや動画などが格納される記憶装置２００と、記憶装置２００との間でシリアルデータの入出力を行なうシリアルインタフェース回路３００と、携帯電話の主要な機能を実現するプログラムが記憶されるプログラムメモリ４００と、ワークエリアとして使用されるワークメモリ５００とを含む。
ＣＰＵ１００がプログラムメモリ４００またはワークメモリ５００にアクセスする場合には、パラレルバスであるＣＰＵバスを介してアクセスを行なう。また、ＣＰＵ１００が記憶装置２００にアクセスする場合には、シリアルインタフェース回路３００がシリアル／パラレル変換を行なうことによって、そのアクセスを可能にしている。
記憶装置２００は、ユーザデータであるアプリケーションプログラムや動画データなどを記憶するメモリセルアレイ２０１と、メモリセルアレイ２０１に対するアクセス時にデータが一時的に格納されるデータレジスタ２０２と、シリアルインタフェース回路３００との間でシリアルデータの入出力を行なう入出力制御部２０３と、入出力制御部２０３を介して入力されたコマンドを解析して記憶装置２００全体の制御を行なうコマンド解析／制御部２０４とを含む。メモリセルアレイ２０１は、ＮＡＮＤ型またはＡＮＤ型のフラッシュメモリによって構成される。
ＣＰＵ１００が記憶装置２００にデータを書込む場合には、ＣＰＵ１００がＣＰＵバスを介してシリアルインタフェース回路３００にライトコマンドを発行した後、メモリセルアレイ２０１のアドレスと、ライトデータとをシリアルインタフェース回路３００に出力する。シリアルインタフェース回路３００は、ＣＰＵ１００からライトコマンド、メモリセルアレイ２０１のアドレスおよびライトデータを受けると、それらをシリアルデータに変換して入出力制御部２０３へ出力する。
入出力制御部２０３は、シリアルインタフェース回路３００から受けたライトコマンドおよびメモリセルアレイ２０１のアドレスをパラレルデータに変換して、コマンド解析／制御部２０４へ出力する。また、入出力制御部２０３は、シリアルインタフェース回路３００から受けたライトデータをパラレルデータに変換してデータレジスタ２０２に書込む。
コマンド解析／制御部２０４は、入出力制御部２０３から受けたコマンドを解析して、ライトコマンドであることを認識すると、メモリセルアレイ２０１にアドレスを出力して、データレジスタ２０２に格納されたライトデータをメモリセルアレイ２０１に書込む。
ＣＰＵ１００が記憶装置２００からデータを読出す場合には、ＣＰＵ１００がＣＰＵバスを介してシリアルインタフェース回路３００にリードコマンドを発行した後、メモリセルアレイ２０１のアドレスをシリアルインタフェース回路３００に出力する。シリアルインタフェース回路３００は、ＣＰＵ１００からリードコマンドおよびメモリセルアレイ２０１のアドレスを受けると、それらをシリアルデータに変換して入出力制御部２０３へ出力する。
入出力制御部２０３は、シリアルインタフェース回路３００から受けたリードコマンドおよびメモリセルアレイ２０１のアドレスをパラレルデータに変換して、コマンド解析／制御部２０４へ出力する。コマンド解析／制御部２０４は、入出力制御部２０３から受けたコマンドを解析して、リードコマンドであることを認識すると、メモリセルアレイ２０１にアドレスを出力して、メモリセルアレイ２０１からデータを読出して、データレジスタ２０２に書込む。
入出力制御部２０３は、データレジスタ２０２に書込まれたデータを読出してシリアルデータに変換し、シリアルインタフェース回路３００へ出力する。シリアルインタフェース回路３００は、入出力制御部２０３から受けたシリアルデータをパラレルデータに変換して、リードデータとしてＣＰＵ１００へ出力する。
記憶装置２００には、ユーザデータとしてアプリケーションプログラムや動画データなどが格納されるが、上述したようにＣＰＵ１００が記憶装置２００からデータを読出す場合には、リードコマンドを発行してデータを読出す必要がある。したがって、ＣＰＵ１００は記憶装置２００に格納されたデータをランダムにアクセスすることができないため、記憶装置２００に格納されたアプリケーションプログラムを実行する場合には、一旦ランダムアクセスが可能な記憶装置にアプリケーションプログラムを転送した後、そのアプリケーションプログラムを実行する必要があり、処理速度が低下するといった問題点があった。
また、記憶装置のデータの入出力がシリアルで行なわれるため、記憶装置に格納されているアプリケーションプログラムや動画データなどを入替えるのに時間がかかり、処理速度が低下するといった問題点もあった。
さらには、ＣＰＵ１００が記憶装置２００に格納されたデータをランダムにアクセスすることができないため、携帯電話の主要な機能を実現するプログラムが記憶されるプログラムメモリ４００と、記憶装置２００内のメモリセルアレイ２０１とを統合することができず、部品のコストおよび実装面積を削減することができないといった問題点があった。
本発明は、上記問題点を解決するためになされたものであり、第１の目的は、携帯電話等の処理速度を向上させることが可能な記憶装置を提供することである。
第２の目的は、携帯電話等の装置内の部品のコストおよび実装面積を削減することが可能な記憶装置を提供することである。
発明の開示
本発明のある局面に従えば、記憶装置は、メモリセルアレイと、メモリセルアレイのデータを一時的に格納し、外部からパラレルでアクセス可能なデータレジスタと、外部から入力されたシリアルデータをパラレルデータに変換する入出力バッファと、入出力バッファによってパラレルデータに変換されたコマンドを解析して、メモリセルアレイとデータレジスタとの間のデータ転送を制御するコマンド解析／制御部と、外部から入力された論理アドレスをデータレジスタの物理アドレスに変換して、データレジスタへ出力するアドレス変換部とを含む。
アドレス変換部が外部から入力された論理アドレスをデータレジスタの物理アドレスに変換して、データレジスタへ出力するので、外部のＣＰＵはデータレジスタにランダムにアクセスすることが可能となる。その結果、外部のＣＰＵはメモリセルアレイにランダムにアクセスすることができ、記憶装置を搭載した携帯電話等の装置の処理速度を向上させることが可能となる。また、外部のＣＰＵはメモリセルアレイにランダムにアクセスすることができるので、主要な機能を実現するプログラム等をメモリセルアレイに格納することができ、携帯電話等の装置の部品のコストおよび実装面積を削減することが可能となる。
好ましくは、記憶装置はさらにメモリセルアレイの論理先頭アドレス、メモリセルアレイの論理最後尾アドレス、およびデータレジスタの物理先頭アドレスが、メモリセルアレイの領域毎に登録されるアドレス変換テーブルを含み、アドレス変換部は、外部から入力された論理アドレスとアドレス変換テーブルに登録された論理先頭アドレスとの減算結果、アドレス変換テーブルに登録された論理最後尾アドレスと外部から入力された論理アドレスとの減算結果、およびアドレス変換テーブルに登録された物理先頭アドレスに基づいて、データレジスタの物理アドレスを算出する。
したがって、外部から入力された論理アドレスをデータレジスタの物理アドレスに容易に変換することが可能となる。
好ましくは、記憶装置はさらにメモリセルアレイのデータを一時的に格納する、データレジスタとは異なるデータバッファを含み、入出力バッファは、データバッファに格納されたデータをシリアルデータに変換して外部へ出力する。
したがって、メモリセルアレイに格納されたデータをシリアルデータに変換して、外部へ出力することが可能となる。
さらに好ましくは、コマンド解析／制御部は、入出力バッファから第１のデータ転送コマンドを受けると、メモリセルアレイのデータをデータバッファに転送した後、データバッファに格納されるデータをデータレジスタに転送する。
メモリセルアレイのデータをデータレジスタに転送するので、外部のＣＰＵがデータレジスタにアクセスすることによって、メモリセルアレイのデータをランダムにアクセスすることが可能となる。
さらに好ましくは、コマンド解析／制御部は、入出力バッファから第２のデータ転送コマンドを受けると、データレジスタのデータをデータバッファに転送した後、データバッファに格納されるデータをメモリセルアレイに転送する。
したがって、外部のＣＰＵが書換えたデータレジスタのデータをメモリセルアレイに書き戻すことが可能となる。
本発明の別の局面に従えば、メモリセルアレイと、メモリセルアレイのデータを一時的に格納し、外部からパラレルでアクセス可能なデータレジスタとを含んだ記憶装置の制御方法であって、外部から入力されたシリアルデータをパラレルデータのコマンドに変換するステップと、コマンドを解析して、メモリセルアレイとデータレジスタとの間のデータ転送を制御するステップと、外部から入力された論理アドレスをデータレジスタの物理アドレスに変換して、データレジスタへ出力するステップとを含む。
外部から入力された論理アドレスをデータレジスタの物理アドレスに変換して、データレジスタへ出力するので、外部のＣＰＵはデータレジスタにランダムにアクセスすることが可能となる。その結果、外部のＣＰＵはメモリセルアレイにランダムにアクセスすることができ、記憶装置を搭載した携帯電話等の装置の処理速度を向上させることが可能となる。また、外部のＣＰＵはメモリセルアレイにランダムにアクセスすることができるので、主要な機能を実現するプログラム等をメモリセルアレイに格納することができ、携帯電話等の装置の部品のコストおよび実装面積を削減することが可能となる。
好ましくは、外部から入力された論理アドレスをデータレジスタの物理アドレスに変換して、データレジスタへ出力するステップは、外部から入力された論理アドレスと予め登録されたメモリセルアレイの論理先頭アドレスとの減算結果、予め登録されたメモリセルアレイの論理最後尾アドレスと外部から入力された論理アドレスとの減算結果、および予め登録されたデータレジスタの物理先頭アドレスに基づいて、データレジスタの物理アドレスを算出するステップを含む。
したがって、外部から入力された論理アドレスをデータレジスタの物理アドレスに容易に変換することが可能となる。
好ましくは、記憶装置はさらにメモリセルアレイのデータを一時的に格納する、データレジスタとは異なるデータバッファを含み、記憶装置の制御方法はさらに、データバッファに格納されたデータをシリアルデータに変換して外部へ出力するステップを含む。
したがって、メモリセルアレイに格納されたデータをシリアルデータに変換して、外部へ出力することが可能となる。
さらに好ましくは、コマンドを解析して、メモリセルアレイとデータレジスタとの間のデータ転送を制御するステップは、第１のデータ転送コマンドを受けると、メモリセルアレイのデータをデータバッファに転送した後、データバッファに格納されるデータをデータレジスタに転送するステップを含む。
メモリセルアレイのデータをデータレジスタに転送するので、外部のＣＰＵがデータレジスタにアクセスすることによって、メモリセルアレイのデータをランダムにアクセスすることが可能となる。
さらに好ましくは、コマンドを解析して、メモリセルアレイとデータレジスタとの間のデータ転送を制御するステップは、第２のデータ転送コマンドを受けると、データレジスタのデータをデータバッファに転送した後、データバッファに格納されるデータをメモリセルアレイに転送するステップを含む。
したがって、外部のＣＰＵが書換えたデータレジスタのデータをメモリセルアレイに書き戻すことが可能となる。
発明を実施するための最良の形態
本発明をより詳細に説明するために、添付の図面にしたがってこれを説明する。
図１は、本発明の実施例における携帯電話の回路構成を示す図である。この携帯電話は、携帯電話全体の制御を行なうＣＰＵ１と、携帯電話の主要な機能を実現するプログラム、アプリケーションプログラム、動画データなどが格納される記憶装置２と、記憶装置２との間でシリアルデータの入出力を行なうシリアルインタフェース回路３とを含む。
記憶装置２は、携帯電話の主要な機能を実現するプログラム、ユーザデータであるアプリケーションプログラムや動画データなどを記憶するメモリセルアレイ２１と、メモリセルアレイ２１に対するアクセス時にデータが一時的に格納される第１のデータレジスタ２２と、シリアルインタフェース回路３との間でシリアルデータの入出力を行なう入出力バッファ２３と、入出力バッファ２３を介して入力されたコマンドを解析して記憶装置２全体の制御を行なうコマンド解析／制御部２４と、ＣＰＵ１がメモリセルアレイ２１に格納されたプログラムやデータをパラレルでアクセスする際に、プログラムやデータが一時的に格納される第２のデータレジスタ２５と、ＣＰＵ１が第２のデータレジスタ２５に格納されたプログラムまたはデータを読出すときの第２のデータレジスタ２５のアドレスを生成するアドレス変換部２６と、コマンド解析／制御部２４からの指示に応じて第２のデータレジスタ２５およびアドレス変換部２６を制御する制御部２７とを含む。
メモリセルアレイ２１は、ＮＡＮＤ型またはＡＮＤ型のフラッシュメモリによって構成される。このメモリセルアレイ２１は、３２ＭＢ程度の大容量のフラッシュメモリによって構成されるが、これに限られるものではない。
第１のデータレジスタ２２は、ＣＰＵ１がシリアルインタフェース回路３を介して記憶装置２からデータを読出す場合や、メモリセルアレイ２１に格納されたデータを第２のデータレジスタ２５へ転送する場合にデータを一時的に格納する。この第１のデータレジスタは、５１２ｂｉｔ程度のＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）によって構成されるが、これに限られるものではない。なお、第１のデータレジスタ２２と、メモリセルアレイ２１との間のデータ転送は、５１２ビット単位で一度に行なわれる。
入出力バッファ２３は、シリアルインタフェース回路３から出力されるシリアルデータをバッファリングすることによって、シリアルデータをパラレルデータに変換する。また、第１のデータレジスタ２２から入出力バッファ２３へデータが転送されると、入出力バッファ２３はバッファリングされたデータを１ビットずつシリアルインタフェース回路３へ出力することによって、パラレルデータをシリアルデータに変換する。
第２のデータレジスタ２５は、ＣＰＵ１がメモリセルアレイ２１に格納されたデータをパラレルでアクセスする場合にデータを一時的に格納する。この第２のデータレジスタ２５は、２ＭＢ〜８ＭＢ程度のＳＲＡＭによって構成される。なお、第２のデータレジスタ２５と、第１のデータレジスタ２１との間のデータ転送は、制御部２７による制御によって５１２ビット単位で一度に行なわれる。
アドレス変換部２６は、ＣＰＵ１が出力するメモリセルアレイ２１の論理アドレスを、第２のデータレジスタ２５の物理アドレスに変換する。アドレス変換部２６は、内部にアドレス変換テーブルを有しており、このアドレス変換テーブルの内容に応じて、論理アドレスを物理アドレスに変換する。メモリセルアレイ２１は、幾つかの領域に分割され、その領域単位でメモリセルアレイ２１のデータが第２のデータレジスタ２５にマッピングされる。
アドレス変換テーブルには、ＣＰＵ１がアクセスしようとするメモリセルアレイ２１の領域の論理先頭アドレスと、ＣＰＵ１がアクセスしようとするメモリセルアレイ２１の領域の論理最後尾アドレスと、メモリセルアレイ２１の領域が第２のデータレジスタ２５に転写された場合の第２のデータレジスタ２５における物理先頭アドレスと、メモリセルアレイ２１の領域が第２のデータレジスタ２５に転写された場合の第２のデータレジスタ２５における物理最後尾アドレスとが領域毎に予め登録される。ＣＰＵ１から論理アドレスが出力されると、アドレス変換部２６は以下の手順でアドレス変換を行なう。
▲１▼  ＣＰＵ１が出力した論理アドレスから、アドレス変換テーブルに登録されている全ての論理先頭アドレスのそれぞれを減算する。
▲２▼  アドレス変換テーブルに登録されている全ての論理最後尾アドレスのそれぞれから、ＣＰＵ１が出力した論理アドレスを減算する。
▲３▼  上記▲１▼と▲２▼との結果が共に正となる領域を特定し、その領域に対応する物理先頭アドレスを特定する。
▲４▼  特定された物理先頭アドレスに▲１▼で算出された減算結果を加算して、その値を第２のデータレジスタ２５の物理アドレスとして出力する。
制御部２７は、第１のデータレジスタ２２と第２のデータレジスタ２５との間のデータ転写を制御する。第１のデータレジスタ２２から第２のデータレジスタ２５へデータを転写する場合には、コマンド解析／制御部２４から、第１のデータレジスタ２２から第２のデータレジスタ２５へのデータ転写要求が通知される。制御部２７は、アドレス変換部２６内のアドレス変換テーブルを参照し、第２のデータレジスタ２５の空き領域の物理先頭アドレスを抽出する。
制御部２７は、第１のデータレジスタ２２に格納されているデータを、第２のデータレジスタ２５の空き領域の物理先頭アドレスから順に、第２のデータレジスタ２５へ転送する。コマンド解析／制御部２４から指示があった全てのデータを、第１のデータレジスタ２２から第２のデータレジスタ２５へ転送したときに、データを転写した第２のデータレジスタ２５の領域の物理先頭アドレスおよび物理最後尾アドレスをアドレス変換テーブルに登録する。最後に、制御部２７は、コマンド解析／制御部２４に対してデータ転写の完了を通知する。
第２のデータレジスタ２５から第１のデータレジスタ２２へデータを転写する場合には、コマンド解析／制御部２４から、第２のデータレジスタ２５から第１のデータレジスタ２２へのデータ転写要求が通知される。制御部２７は、指定された第２のデータレジスタ２５の領域のデータを第１のデータレジスタ２２に転写する。データの転写が完了したときに、制御部２７はコマンド解析／制御部２４にデータ転写の完了を通知する。
図２Ａ〜図２Ｆは、コマンド解析／制御部２４のコマンドシーケンスを説明するための図である。図２Ａは、メモリセルアレイ２１のデータリードのコマンドシーケンスを示している。入出力バッファ２３からコマンド解析／制御部２４にデータリードコマンド（１０ｈ）が入力された後、メモリセルアレイ２１のアドレスが入力されると、コマンド解析／制御部２４は指定されたメモリセルアレイ２１のデータを第１のデータレジスタ２２へ転送する。そして、コマンド解析／制御部２４は第１のデータレジスタ２２に格納されたデータを順次入出力バッファ２３へ転送することによって、シリアルバスを介してシリアルインタフェース回路３へシリアルデータを出力する。
図２Ｂは、メモリセルアレイ２１のデータライトのコマンドシーケンスを示している。入出力バッファ２３からコマンド解析制御部２４にデータライトコマンド（２０ｈ）およびメモリセルアレイ２１のアドレスが入力されると、それに続くデータが第１のデータレジスタ２２に書込まれる。コマンド解析／制御部２４は、第１のデータレジスタ２２に格納されているデータを、指定されたメモリセルアレイ２１のアドレスに書込む。最後に、処理が正常に終了したか否かを示すステータスがシリアルインタフェース回路３へ出力される。
図２Ｃは、メモリセルアレイ２１の全消去のコマンドシーケンスを示している。入出力バッファ２３からコマンド解析／制御部２４に全消去コマンド（Ｆ０ｈ）が入力されると、コマンド解析／制御部２４はメモリセルアレイ２１を制御して、メモリセルアレイ２１の全てのデータを消去する。最後に、処理が正常に終了したか否かを示すステータスがシリアルインタフェース回路３へ出力される。
図２Ｄは、メモリセルアレイ２１のブロック消去のコマンドシーケンスを示す図である。入出力バッファ２３からコマンド解析／制御部２４にブロック消去コマンド（３０ｈ）およびメモリセルアレイ２１のブロック指定が入力されると、コマンド解析／制御部２４はメモリセルアレイ２１を制御して、指定されたメモリセルアレイ２１のブロックのデータを消去する。最後に、処理が正常に終了したか否かを示すステータスがシリアルインタフェース回路３へ出力される。
図２Ｅは、メモリセルアレイ２１から第２のデータレジスタ２５へのデータ転送のコマンドシーケンスを示す図である。入出力バッファ２３からコマンド解析／制御部２４に、メモリセルアレイ２１から第２のデータレジスタ２５へのデータ転送コマンド（４０ｈ）、メモリセルアレイ２１のアドレスおよび論理アドレスが入力されると、コマンド解析／制御部２４はメモリセルアレイ２１の指定されたアドレスのデータを第１のデータレジスタ２２に転送する。そして、コマンド解析／制御部２４は、制御部２７に対して第１のデータレジスタ２２から第２のデータレジスタ２５へのデータ転写の要求を通知する。このとき、コマンド解析／制御部２４は、指定された論理アドレスをアドレス変換部２６へ出力する。最後に、処理が正常に終了したか否かを示すステータスがシリアルインタフェース回路３へ出力される。
図２Ｆは、第２のデータレジスタ２５からメモリセルアレイ２１へのデータ転送のコマンドシーケンスを示す図である。入出力バッファ２３からコマンド解析／制御部２４に、第２のデータレジスタ２５からメモリセルアレイ２１へのデータ転送コマンド（４Ｄｈ）、メモリセルアレイ２１のアドレスおよび論理アドレスが入力されると、コマンド解析／制御部２４は指定された論理アドレスをアドレス変換部２６へ出力する。コマンド解析／制御部２４は、制御部２７に対して第２のデータレジスタ２５から第１のデータレジスタ２２へのデータ転写の要求を通知する。そして、第１のデータレジスタ２２に格納されたデータをメモリセルアレイ２１の指定されたアドレスに転送する。最後に、処理が正常に終了したか否かを示すステータスがシリアルインタフェース回路３へ出力される。
図３は、本発明の実施例における記憶装置２のリードデータ時の処理手順を説明するためのフローチャートである。まず、ＣＰＵ１がシリアルインタフェース回路３を介してメモリセルアレイ２１から第２のデータレジスタ２５へのデータ転送コマンド、メモリセルアレイ２１の物理アドレス範囲およびＣＰＵバスを介して読出そうとする論理アドレスを、入出力バッファ２３に出力する（Ｓ１１）。
コマンド解析／制御部２４は、メモリセルアレイ２１を制御して、指定された物理アドレス範囲のデータを第１のデータレジスタ２２に転送させるとともに、アドレス変換部２６にＣＰＵバスを介して読出そうとする論理アドレスを出力する（Ｓ１２）。
次に、コマンド解析／制御部２４は、制御部２７に第１のデータレジスタ２２に格納されているデータを第２のデータレジスタ２５に転写させるとともに、アドレス変換部２６に第２のデータレジスタ２５への転写先となる物理アドレスを出力する（Ｓ１３）。
アドレス変換部２６は、ＣＰＵ１がアクセスしようとするメモリセルアレイ２１の領域の論理先頭アドレスおよび論理最後尾アドレスと、データ転写先である第２のデータレジスタ２５における物理先頭アドレスおよび物理最後尾アドレスとを関連付けて、アドレス変換テーブルに登録する（Ｓ１４）。そして、コマンド解析／制御部２４は、入出力バッファ２３およびシリアルインタフェース回路３を介して、ＣＰＵ１に第２のデータレジスタ２５へのデータ書込みが完了したことを通知する（Ｓ１５）。
ＣＰＵ１がアドレスバスに論理アドレスを出力して、第２のデータレジスタ２５へのアクセスを行なうと（Ｓ１６）、アドレス変換部２６がアドレス変換テーブルを参照して、論理アドレスをデータが転写されている第２のデータレジスタ２５の物理アドレスに変換し、第２のデータレジスタ２５へ出力する（Ｓ１７）。ＣＰＵ１は、第２のデータレジスタ２５が出力したデータをＣＰＵバスを介して読込む（Ｓ１８）。そして、ステップＳ１６に戻って以降の処理を繰返す。
図４は、本発明の実施例における記憶装置２のライトデータ時の処理手順を説明するためのフローチャートである。まず、ＣＰＵ１がシリアルインタフェース回路３を介して第２のデータレジスタ２５からメモリセルアレイ２１へのデータ転送コマンド、メモリセルアレイ２１へ書込もうとするデータの論理アドレス範囲、およびメモリセルアレイ２１の物理アドレスを、入出力バッファ２３に出力する（Ｓ２１）。
コマンド解析／制御部２４は、制御部２７に対して第２のデータレジスタ２５のデータを第１のデータレジスタ２２に転写するよう指示する（Ｓ２２）。制御部２７は、書込み対象のデータが存在する第２のデータレジスタ２５の物理アドレス範囲をアドレス変換部２６から取得し、第２のデータレジスタ２５から第１のデータレジスタ２２へ書込み対象のデータが転写される（Ｓ２３）。
第１のデータレジスタ２２へのデータ書込みが完了すると、制御部２７はデータの書込みが完了したことをコマンド解析／制御部２４に通知する（Ｓ２４）。コマンド解析／制御部２４が制御部２７から通知を受けると、第１のデータレジスタ２２に書込まれたデータを、メモリセルアレイ２１の指定された物理アドレスに書込むように制御信号をメモリセルアレイ２１に出力することにより（Ｓ２５）、メモリセルアレイ２１にデータが書込まれる（Ｓ２６）。
このように本実施の形態においては、例えばランダムアクセスできない構造を有したＮＡＮＤ型やＡＮＤ型のメモリセルアレイ２１に記憶されたデータの一部を、シリアル入力されたコマンドに応じて、ランダムアクセス可能な構造を有したＳＲＡＭ等の第２のデータレジスタ２５に転送する。ＣＰＵ１がその転送データを読出そうとする際に出力する論理アドレスとその転送データの第２のデータレジスタ２５における物理アドレスとの関係をアドレス変化情報として記憶する。ＣＰＵ１からアドレスバスを介してアドレス変換部２６に論理アドレスが入力された場合に、当該論理アドレスを前記アドレス変換情報に基づき第２のデータレジスタ２５における物理アドレスに変換し、該物理アドレスに記憶されたデータをデータバス等を介してＣＰＵ１までパラレルに伝送する。
以上説明したように、本実施の形態における記憶装置によれば、コマンド解析／制御部２４がメモリセルアレイ２１からパラレルでアクセス可能な第２のデータレジスタ２５にデータを転送し、アドレス変換部２６がＣＰＵ１がメモリセルアレイ２１にアクセスする際に出力した論理アドレスを第２のデータレジスタ２５の物理アドレスに変換して第２のデータレジスタ２５に出力するようにしたので、ＣＰＵ１はメモリセルアレイ２１に格納されたデータをランダムにアクセスすることができ、記憶装置が搭載された携帯電話等の処理速度を向上させることが可能となった。
また、ＣＰＵ１がメモリセルアレイ２１に格納されたデータをランダムにアクセスすることができるので、携帯電話の主要な機能を実現するプログラム等をメモリセルアレイ２１に格納することができ、別個のプログラムメモリを搭載する必要がなくなった。したがって、携帯電話等の部品のコストおよび実装面積を削減することが可能となった。
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
図１は、本発明の実施例における携帯電話の回路構成を示す図である。
図２Ａ〜図２Ｆは、本発明の実施例における記憶装置２のコマンドシーケンスを説明するための図である。
図３は、本発明の実施例における記憶装置２のリードデータ時の処理手順を説明するためのフローチャートである。
図４は、本発明の実施例における記憶装置２のライトデータ時の処理手順を説明するためのフローチャートである。
図５は、従来の携帯電話の回路構成を示す図である。
【図１】
2003009301.tif 000003
【図２Ａ】
2003009301.tif 000004
【図２Ｂ】
2003009301.tif 000005
【図２Ｃ】
2003009301.tif 000006
【図２Ｄ】
2003009301.tif 000007
【図２Ｅ】
2003009301.tif 000008
【図２Ｆ】
2003009301.tif 000009
【図３】
2003009301.tif 000010
【図４】
2003009301.tif 000011
【図５】
2003009301.tif 000012
【国際公開パンフレット（コレクトバージョン）】
2003009301.tif 000013
2003009301.tif 000014
2003009301.tif 000015
2003009301.tif 000016
2003009301.tif 000017
2003009301.tif 000018
2003009301.tif 000019
2003009301.tif 000020
2003009301.tif 000021
2003009301.tif 000022
2003009301.tif 000023
2003009301.tif 000024
2003009301.tif 000025
2003009301.tif 000026
2003009301.tif 000027
2003009301.tif 000028
2003009301.tif 000029
2003009301.tif 000030
2003009301.tif 000031
2003009301.tif 000032
2003009301.tif 000033
2003009301.tif 000034
2003009301.tif 000035
2003009301.tif 000036
【国際調査報告】
2003009301.tif 000037
2003009301.tif 000038