JP4960364B2 - ハードウェア支援されたデバイス設定検出 - Google Patents

ハードウェア支援されたデバイス設定検出 Download PDF

Info

Publication number
JP4960364B2
JP4960364B2 JP2008532347A JP2008532347A JP4960364B2 JP 4960364 B2 JP4960364 B2 JP 4960364B2 JP 2008532347 A JP2008532347 A JP 2008532347A JP 2008532347 A JP2008532347 A JP 2008532347A JP 4960364 B2 JP4960364 B2 JP 4960364B2
Authority
JP
Japan
Prior art keywords
memory device
volatile memory
page
command
size parameter
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.)
Expired - Fee Related
Application number
JP2008532347A
Other languages
English (en)
Other versions
JP2009509269A (ja
Inventor
マドダリ、スリニバス
ドーアフラー、スティーブン・ジェイ.
ウルマー、エリシャ・ジョン
ニウ、シンフイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2009509269A publication Critical patent/JP2009509269A/ja
Application granted granted Critical
Publication of JP4960364B2 publication Critical patent/JP4960364B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1694Configuration of memory controller to different memory types
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B82NANOTECHNOLOGY
    • B82YSPECIFIC USES OR APPLICATIONS OF NANOSTRUCTURES; MEASUREMENT OR ANALYSIS OF NANOSTRUCTURES; MANUFACTURE OR TREATMENT OF NANOSTRUCTURES
    • B82Y10/00Nanotechnology for information processing, storage or transmission, e.g. quantum computing or single electron logic

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Investigating Or Analyzing Materials By The Use Of Electric Means (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Description

本発明は、一般に、処理システムに関し、更に詳しくは、処理システムにおけるデバイスの設定を検出する方法および装置に関する。
例えば、モバイル通信デバイスのような計算デバイスにおけるブート・アップ手順および起動手順の一部として、プロセッサは、例えば不揮発性デバイスまたはフラッシュ・メモリ・デバイスのような1または複数のメモリ・デバイスにアクセスし、そのメモリ・デバイス内に格納されたアプリケーション・コードまたはデータをダウンロードする。幾つかのタイプのメモリ・デバイスは、一般に、そのような計算デバイスにおける実装のために利用することが可能であるので、プロセッサは、各メモリ・デバイスの設定を正確かつ効率的に確認する必要がある。検出された設定に基づいて、プロセッサは更に、所要のアプリケーション・コードをダウンロードするコマンドを生成することができる。
プロセッサに接続されたメモリ・デバイスの設定を確認するために、いくつかの実施が提案された。1つの実施では、メモリ・デバイス情報が、組立中にプロセッサ内に格納される。しかしながら、このアプローチは、サポートされるメモリ・デバイスの数を制限するように思われ、プロセッサの寿命中におけるメモリ・デバイスへのアップグレードの導入をより困難にする。
別の実施では、メモリ・デバイス情報が、多くの外部ピンを通ってプロセッサへ提供される。しかしながら、このアプローチは、専用の追加のピンを必要とするので、システムのコストを増加する。また、サポートされるメモリ・デバイスの数を制限するように思われる。
また別の周知の実施では、プロセッサは、例えばバイナリ・サーチのような周知のトライ・アンド・エラーによってメモリ・デバイスの設定を検出するように指示されうる。しかしながら、このアプローチは、ブート・アップ手順および起動手順に割り当てられた時間を増加させるように見え、これにより、システムの性能に悪影響を及ぼす。
したがって、必要なものは、計算デバイス内のプロセッサに接続された多数のメモリ・デバイスの設定の正確かつ効率的な検出のための方法および装置である。
発明の概要
処理システムにおけるデバイスの設定を検出するための方法および装置が記述される。1つの実施形態では、メモリ・デバイスに関連付けられたページ・サイズ・パラメータが識別される。更に、メモリ・デバイスに関連付けられた1または複数の設定パラメータも識別される。このページ・サイズ・パラメータと設定パラメータとは、メモリ・デバイスへのアクセスを可能にする。最後に、ページ・サイズ・パラメータおよび1または複数の設定パラメータに基づいて、メモリ・デバイスからアプリケーション・データをダウンロードする要求が、メモリ・デバイスに送られる。
詳細な説明
図1は、本発明の1つの実施形態に従って、処理システムにおけるデバイスの設定を検出する装置を例示する。図1に例示するように、例えば通信デバイスのような装置10は、1または複数のメモリ・デバイス30に接続された例えばマイクロプロセッサのような処理デバイス20を含む。
1つの実施形態では、処理デバイス20は更に、プロセッサ・モジュール24に接続されたコントローラ・モジュール22を含んでいる。コントローラ・モジュール22およびプロセッサ・モジュール24は、以下に更に詳細に説明するように、装置10内のメモリ・デバイス30の設定を検出するための動作を実行するように構成されたハードウェア・モジュールおよび/またはソフトウェア・モジュールである。別の実施形態では、コントローラ・モジュール22およびプロセッサ・モジュール24は、装置10内のメモリ・デバイス30の設定を検出する動作を行なうシングル・プロセッサを形成しうる。
1つの実施形態では、メモリ・デバイス30は、例えば、シリアル・フラッシュ・メモリ・デバイス(例えば、NAND/ORAND/SuperANDメモリ・デバイス)のような不揮発性メモリ・デバイスである。これらは、処理デバイス20からコマンドを受け取るとダウンロードされるアプリケーション・データを格納する。あるいは、その他の不揮発性メモリ・デバイスが、装置10内の処理デバイス20に接続されうる。
システムの電源がオフされた場合、不揮発性メモリ・コンポーネントおよびモジュールはデータを失わない。不揮発性半導体集積回路としてのフラッシュ・メモリ・デバイスのアーキテクチャは、メモリ・モジュールがめったに書き込まれないが、頻繁に読み取りがなされるという概念に基づく。アプリケーション・データは、対応するアドレスによって定義された特定の位置において、フラッシュ・メモリ・デバイス内30に存在する。
各メモリ・デバイス30内の実際のメモリ・モジュールおよび仮想的なメモリ・モジュールは、ページと呼ばれる等しいサイズのブロックへ分割される。1つのメモリ・ページは、1つのロー・アドレスからアクセス可能なビット数を表わす。メモリ・ページはそれぞれページ・サイズを持っている。それは、カラム・アドレスの数に依存する。例えば、10のカラム・アドレス・ピンを備えたメモリ・デバイスは、1024の位置を持っている。
ページ・サイズ・パラメータに加えて、メモリ・デバイス30はそれぞれ、インタフェース・バス幅パラメータによって特徴付けられる。そのパラメータは、同時に入力またはアクセスされうるデータ・ビットの数を示す。ページ・サイズ・パラメータおよびバス幅パラメータに基づいて、プロセッサは、以下に更に詳細に説明するように、ブート・アップ手順および起動手順中に、各メモリ・デバイス30のタイプを高い信頼性で識別する。
1つの実施形態では、図1に示すように、コントローラ・モジュール22は、例えば各メモリ・デバイス30に関連付けられたページ・サイズ・パラメータおよび/またはインタフェース・バス幅パラメータのようなメモリ・デバイス30の設定パラメータを格納するためのデータベースのような記憶モジュール26の保持およびアクセスを行う。あるいは、コントローラ・モジュール22は、装置10内の遠隔位置にあるメモリ・デバイス30に関連付けられたインタフェース・バス幅パラメータおよび/またはページ・サイズ・パラメータを格納する。
図2は、本発明の1つの実施形態に従って、処理システムにおけるデバイスの設定の検出のための手順を例示する相互作用ブロック図である。図2に例示するように、この手順は、処理デバイス20内のコントローラ・モジュール22がメモリ・デバイス30へリセット・コマンドを送るブロック105で始まる。1つの実施形態では、メモリ・デバイス30は、装置10の電源投入シーケンスおよびその後の動作中、メモリにアクセスする前に、リセット・コマンドの受取および実行を要求する。あるいは、例えば、メモリ・デバイス30がSuperANDシリアル・フラッシュ・メモリ・デバイスである場合、装置10がスタンバイ・モードにある時、メモリ・デバイス30は、リセット・コマンドをサポートしておらず、このコマンドを無視しうる。
ブロック110では、メモリ・デバイス30は、このリセット・コマンドの実行および完了を示す。1つの実施形態では、メモリ・デバイス30は、コマンド実行のステータスを示すビット信号を送る。コントローラ・モジュール22は、図4と関連して以下に更に詳しく説明するように、コマンド実行のステータスをモニタし、リセット・コマンド実行の完了を検知する。
次に、ブロック115では、コントローラ・モジュール22はメモリ・デバイス30に、自動検出コマンド・シーケンスを送り、メモリ・デバイス30のページ・サイズの読み取りおよび検出に必要な予め定めたデータの量を示す。1つの実施形態では、このリセット・コマンドおよび自動検出コマンドは、メモリ・デバイス30に連続的に送られる。この自動検出コマンド・シーケンスは、メモリ・デバイス30と関係するページ・サイズおよびその他のパラメータを検出するために使用されるフローである。図5と関連して以下に更に詳しく示すように、この自動検出シーケンスは、より高い値のページ・サイズを有するその他のフラッシュ・メモリ・デバイスに対する、256/512バイト・ページ・フラッシュ・メモリ・デバイスの挙動における違いを用いる。
ブロック120では、メモリ・デバイス30が、自動検出コマンド・シーケンスを受け取り、コマンドの実行および完了を示す。1つの実施形態では、メモリ・デバイス30は、自動検出シーケンス内の各コマンドの実行のステータスを示すビット信号を送る。コントローラ・モジュール22は、図5と関連して以下に更に詳しく示すように、コマンド実行のステータスをモニタし、自動検出シーケンスの完了を検出する。図5と関連して以下に更に詳しく示すように、コントローラ・モジュール22は、メモリ・デバイス30から送られ、自動検出シーケンスに対する応答を示すビット信号に基づいて、メモリ・デバイス30が、256/512バイト・ページ・デバイスであるか、または、例えば2Kバイト・ページ・デバイスのようなより大きなサイズ・ページ・デバイスであるかを識別する。コマンドの実行が一旦完了すると、メモリ・デバイス30は、例えば、メモリ・デバイス30上に存在する内部バッファ内のコントローラ・モジュール22に対してデータのページを利用可能にする。
ブロック125では、図6と関連して以下に更に詳しく示すように、コントローラ・モジュール22が、利用可能なページ・データにアクセスし、メモリ・デバイス30のページ・サイズ・パラメータを再び識別する。
ブロック130では、コントローラ・モジュール22が、メモリ・デバイス30に関連付けられたページ・サイズ・パラメータを、記憶モジュール26内に格納する。
ブロック135では、コントローラ・モジュール22が、利用可能なページ・データから、予め定めた量のデータを読み取る。ブロック140では、コントローラ・モジュール22が、読み取ったデータに基づいて、メモリ・デバイス30に関連付けられた1または複数の設定パラメータを検出する。1つの実施形態では、例えば、メモリ・デバイス30のインタフェース・バス幅パラメータのような設定パラメータを識別するために、コントローラ・モジュール22が、ページ・データから予め定めた複数のデータ・シーケンスを検索して復号する。代替実施形態では、コントローラ・モジュール22に対して利用可能とされたページ・データが、セキュリティ上の理由のために暗号化され、更に、コントローラ・モジュール22またはプロセッサ・モジュール24が、例えばインタフェース・バス幅パラメータやその他の必要な設定パラメータのような設定パラメータの識別情報の復号を行う前に、データを解読する。
1つの実施形態では、格納されたページ・サイズ・パラメータおよび識別された設定パラメータによって、処理デバイス20は、メモリ・デバイス30の設定を確認することができる。代替実施形態では、ページ・データが、例えばメモリ・デバイス30に接続されたその他の構成要素のようなメモリ・デバイス30に関連する他の情報を組み込むことができる。
ブロック145では、コントローラ・モジュール22が、記憶モジュール26内に格納されたページ・サイズ・パラメータを含むページ・データおよび設定パラメータをプロセッサ・モジュール24に送るか、あるいは、プロセッサ・モジュール24に対して利用可能にする。ブロック150では、プロセッサ・モジュール24が、コントローラ・モジュール22に対して、メモリ・デバイス30からアプリケーション・コードをダウンロードするように命令する。最後に、ブロック155では、ページ・サイズ・パラメータおよびインタフェース・バス幅パラメータに基づいて、処理デバイス20内のコントローラ・モジュール22が、メモリ・デバイス30からアプリケーション・コードをダウンロードする要求を送る。
図3は、本発明の1つの実施形態に従って、処理システムにおけるデバイスの設定を検出する方法を図示するフロー図である。図3の実施形態において例示するように、処理ブロック210では、リセット・コマンドが発行され、メモリ・デバイス30に送られる。処理ブロック220では、自動検出コマンド・シーケンスが発行され、メモリ・デバイス30に送られる。
処理ブロック230では、予め定めた量のデータを含んでいるページ・データが、メモリ・デバイス30においてアクセスされる。処理ブロック240では、メモリ・デバイス30に関連付けられたページ・サイズ・パラメータが、利用可能なページ・データから識別される。
処理ブロック250では、メモリ・デバイス30に関連付けられたページ・サイズ・パラメータが、記憶モジュール26に格納される。処理ブロック260では、例えばメモリ・デバイス30のインタフェース・バス幅パラメータのように、メモリ・デバイス30に関連付けられた1または複数の設定パラメータを識別するために、予め定めた多くのデータ・シーケンスが、ページ・データから検索され復号される。
処理ブロック270では、メモリ・デバイス30に関連付けられた設定パラメータが検出される。最後に、処理ブロック280では、識別されたページ・サイズ・パラメータと設定パラメータとに基づいて、アプリケーション・コードをダウンロードする要求が、メモリ・デバイス30へ送られる。
図4は、本発明の1つの実施形態に従って、処理システムにおけるデバイスの設定を検出する方法におけるリセット・コマンドの実行を図示するフロー図である。図4に例示するように、処理ブロック310では、リセット・コマンドの選択が受け取られる。1つの実施形態では、コントローラ・モジュール22は、メモリ・デバイス30への更なる送信のために、プロセッサ・モジュール24からリセット・コマンドの選択を受け取る。
処理ブロック320では、リセット・コマンドを送る命令が受け取られる。1つの実施形態では、プロセッサ・モジュール24は、コントローラ・モジュール22に対して、リセット・コマンドを発行し、そのリセット・コマンドをメモリ・デバイス30へ送るように促す。
処理ブロック330では、リセット・コマンドが、メモリ・デバイス30へ送られ、リセット・コマンドの実行のステータスがモニタされる。1つの実施形態では、コントローラ・モジュール22が、メモリ・デバイス30へリセット・コマンドを送り、更に、メモリ・デバイス30によって送られた、リセット・コマンド実行の完了を示すビット信号のアサートまたはデ・アサートをモニタすることによって、メモリ・デバイス30における実行のステータスをチェックする。
処理ブロック340では、リセット・コマンドの実行が完了したかの判定がなされる。リセット・コマンドの実行が完了していない場合、処理ブロック330および340が繰り返される。
一方、リセット・コマンドの実行が完了している場合、次に、処理ブロック350において、実行エラーが存在するかが判定される。もしも実行エラーが存在する場合、処理ブロック360において、コントローラ・モジュール22が、エラー・コマンドを発行し、実行エラーがあったことをプロセッサ・モジュール24に伝える。一方、リセット・コマンドの実行にエラーがない場合には、手順は、図3に関連して詳細に説明するブロック220にジャンプする。
図5は、本発明の1つの実施形態に従って、処理システムにおけるデバイスの設定を検出する方法における自動検出コマンド・シーケンスの実行を図示するフロー図である。図5に例示するように、図3に関連して詳細に説明したブロック210を処理することに続いて、処理ブロック405では、自動検出コマンドの選択が受け取られる。1つの実施形態では、コントローラ・モジュール22は、メモリ・デバイス30へ更に送るために、プロセッサ・モジュール24から、コマンドの選択を受け取る。
処理ブロック410では、自動検出コマンド・シーケンスを送る命令が受け取られる。1つの実施形態では、プロセッサ・モジュール24は、コントローラ・モジュール22に対して、自動検出コマンド・シーケンスを発行し、関連するコマンドをメモリ・デバイス30へ送るように促す。
処理ブロック415では、ページ読取コマンドがメモリ・デバイス30へ送られ、その後、ページ読取コマンドの実行のステータスがモニタされる。1つの実施形態では、コントローラ・モジュール22は、メモリ・デバイス30にページ読取コマンドを送る。
処理ブロック420では、ページ・アドレス座標がメモリ・デバイス30に送られる。1つの実施形態では、コントローラ・モジュール22が、メモリ・ページの開始のための例えば開始カラム・アドレスおよび開始ロー・アドレスのようなページ・アドレス座標を送る。
処理ブロック425では、予め定めた期間、ページ読取コマンドの実行ステータスがモニタされる。1つの実施形態では、コントローラ・モジュール22が更に、メモリ・デバイス30によって送られた、ページ読取コマンド実行の開始を示すビット信号のアサートまたはデ・アサートをモニタすることによって、メモリ・デバイス30におけるページ読取コマンドの実行のステータスをチェックする。1つの実施形態では、予め定めた期間は300ナノ秒である。あるいは、コントローラ・モジュール22は、その他の異なる期間、待機し、実行ステータスをモニタするようにプログラムされうる。
処理ブロック430では、ページ読取コマンドの実行が開始されたかの判定がなされる。ページ読取コマンドの実行が既に開始したとコントローラ・モジュール22が検出すると、処理ブロック460において、コントローラ・モジュール22は、メモリ・デバイス30が、256バイト/512バイト・ページ・サイズを有するものとして識別する。
1つの実施形態では、コントローラ・モジュール22が、ページ読取コマンドの実行がまだ開始されていないことを検出すると、処理ブロック435において、コントローラ・モジュール22が、読取開始コマンドをメモリ・デバイス30へ送る。
処理ブロック440では、読取開始コマンドの実行ステータスが、予め定めた期間モニタされる。1つの実施形態では、コントローラ・モジュール22は更に、メモリ・デバイス30によって送られた、読取開始コマンドの実行を示すビット信号のアサートまたはデ・アサートをモニタすることによって、メモリ・デバイス30における読取開始コマンドの実行のステータスをチェックする。1つの実施形態では、予め定めた期間は300ナノ秒である。あるいは、コントローラ・モジュール22は、その他の異なる期間、読取開始コマンドの実行をモニタするようにプログラムされうる。
処理ブロック445では、ページ読取コマンドの実行が開始されたかの判定がなされる。ページ読取コマンドの実行がまだ開始されていないのであれば、処理ブロック450において、コントローラ・モジュール22が、エラー・コマンドを発行し、プロセッサ・モジュール24に対して実行エラーを通知する。一方、1つの実施形態では、ページ読取コマンドの実行が開始されていれば、処理ブロック455において、コントローラ・モジュール22が、例えば2Kバイト・ページ・サイズのようなより高い値のバイト・ページ・サイズを有するものとしてメモリ・デバイス30を識別する。
メモリ・デバイス30のページ・サイズ・パラメータが確認された後、手順は処理ブロック465において継続する。このブロックでは、1つの実施形態では、自動検出コマンド・シーケンス実行が完了したかの判定がなされる。別の実施形態では、例えばSuperANDフラッシュ・メモリ・デバイスのようなあるシリアル・フラッシュ・メモリ・デバイスの場合、ページ読取を停止し、自動検出コマンド・シーケンスを完了するために、読取停止コマンドが発行されねばならない。
1つの実施形態では、自動検出コマンド・シーケンスの実行が完了した場合、手順は、図3に関連して詳細に説明されるブロック230にジャンプする。
図6は、本発明の1つの実施形態に従って、処理システムにおけるデバイスの設定を検出する方法におけるページ・サイズ・パラメータの識別を図示するフロー図である。図6に例示するように、図3に関連して詳細に説明された処理ブロック230の後、処理ブロック510では、ページ・サイズ情報が、利用可能なページ・データから検索される。1つの実施形態では、コントローラ・モジュール22が、メモリ・デバイス30において利用可能とされたページ・データにアクセスし、メモリ・デバイス30のページ・サイズに関する追加チェックを行い、それぞれのメモリ・デバイス30に関連付けられたページ・サイズ・パラメータを検出する。
1つの実施形態では、処理ブロック520において、ページ・サイズが、例えば512バイトのような予め定めた値に等しいかが判定される。メモリ・デバイスのページ・サイズが、この場合512バイトである予め定めた値に等しいとコントローラ・モジュール22が認識した場合、処理ブロック530において、コントローラ・モジュール22は、512バイト・ページ・メモリ・デバイス30のために設定される。一方、メモリ・デバイス30に関連付けられたページ・サイズが、例えば2Kバイトのように異なる値を有するのであれば、処理ブロック540において、コントローラ・モジュール22は、メモリ・デバイス30によって利用可能とされたページの適切なバイト値のために設定される。最後に、手順は、図3に関連して詳細に説明されるブロック250へジャンプする。
図7は、例えば、機械に対して、上述した方法のうちの何れか1つを実行させる命令のセットが実行されうるコンピュータ・システム600の典型的形態をした機械のブロック図表示である。他の実施形態では、機械は、ネットワーク・ルータ、ネットワーク・スイッチ、パーソナル・デジタル・アシスタント(PDA)、セルラ電話、ウェブ機器、その機械によって講じられる動作を特定する命令のシーケンスを実行することが可能な任意の機械または計算デバイスを備えうる。
コンピュータ・システム600は、プロセッサ602、メイン・メモリ604、およびスタティック・メモリ606を含んでいる。これらはバス608経由で互いに通信する。コンピュータ・システム600は更に、例えば液晶ディスプレイ(LCD)または陰極線管(CRT)のようなビデオ・ディスプレイ・ユニット610を含みうる。コンピュータ・システム600は更に、例えばキーボードのような英数字入力デバイス612、例えばマウスのようなカーソル制御デバイス614、ディスク・ドライブ・ユニット616、例えばスピーカのような信号生成デバイス620、およびネットワーク・インタフェース・デバイス622を含む。
ディスク・ドライブ・ユニット616は、その上に、上述した方法の何れか1つまたは全てを組み込んだ命令626のセット、すなわちソフトウェアが格納された機械読取可能媒体624を含む。ソフトウェア626はまた、メイン・メモリ604内、および/またはプロセッサ602内に、全体または少なくとも一部が存在するように示される。ソフトウェア626は更に、ネットワーク・インタフェース・デバイス622を経由して送信また受信されうる。
当業者であれば、これら情報および信号が、種々異なった技術や技法を用いて表されることを理解するであろう。例えば、上述した記載の全体で引用されているデータ、指示、命令、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場または磁性粒子、光学場または光学微粒子、あるいはこれら何れかの組み合わせによって表現されうる。
当業者であれば、更に、ここで開示された実施形態に関連して記載された様々な説明的論理ブロック、モジュール、回路、およびアルゴリズム・ステップが、電子工学ハードウェア、コンピュータ・ソフトウェア、あるいはこれらの組み合わせとして実現されることを理解するであろう。ハードウェアとソフトウェアとの相互互換性を明確に説明するために、様々に例示された部品、ブロック、モジュール、回路、およびステップが、それらの機能に関して一般的に記述された。それら機能がハードウェアとして又はソフトウェアとして実現されているかは、特定のアプリケーション及びシステム全体に課せられている設計制約に依存する。当業者であれば、各特定のアプリケーションに応じて変更した方法で上述した機能を実施しうる。しかしながら、この適用判断は、本発明の範囲から逸脱したものと解釈されるべきではない。
ここで開示された実施形態に関連して記述された様々の説明的論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、アプリケーションに固有の集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)あるいはその他のプログラマブル論理デバイス、ディスクリートゲートあるいはトランジスタロジック、ディスクリートハードウェア部品、又は上述された機能を実現するために設計された上記何れかの組み合わせを用いて実現又は実行されうる。汎用プロセッサとしてマイクロプロセッサを用いることが可能であるが、代わりに、従来技術によるプロセッサ、コントローラ、マイクロコントローラ、あるいは状態機器を用いることも可能である。プロセッサは、たとえばDSPとマイクロプロセッサとの組み合わせ、複数のマイクロプロセッサ、DSPコアに接続された1つ以上のマイクロプロセッサ、またはこのような任意の構成である計算デバイスの組み合わせとして実現することも可能である。
ここで開示された実施形態に関連して記述された方法やアルゴリズムのステップは、ハードウェアによって直接的に、プロセッサによって実行されるソフトウェア・モジュールによって、これらの組み合わせによって具現化される。これらの実施形態は、プロセッサまたは処理コア(例えば、コンピュータのCPU)の形態で実行されるか、あるいは、機械やコンピュータ読取可能媒体内で実施または実現されるソフトウェア・プログラムとして使用されるか、または、このようなソフトウェア・プログラムをサポートするために使用されうることが理解されるべきである。機械読取可能媒体は、機械(例えば計算機)によって読取可能な形態で情報を格納または送信する任意のメカニズムを含む。例えば、機械読取可能媒体は、RAMメモリ、フラッシュ・メモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハード・ディスク、リムーバブル・ディスク、CD−ROM、あるいは当該技術分野で知られているその他の型式の記憶媒体を含む。典型的な記憶媒体は、プロセッサがそこから情報を読み取り、またそこに情報を書き込むことができるようにプロセッサに結合される。または、記憶媒体はプロセッサに統合されうる。このプロセッサと記憶媒体は、ASIC内に存在することができる。ASICは、ユーザ端末内に存在することもできる。あるいはこのプロセッサと記憶媒体は、ユーザ端末内のディスクリート部品として存在しうる。
開示された実施形態における上述の記載は、当該技術分野におけるいかなる人であっても、本発明の活用または利用を可能とするように提供される。これらの実施形態への様々な変形例もまた、当業者に対しては明らかであって、ここで定義された一般的な原理は、本発明の主旨または範囲を逸脱せずに他の実施形態にも適用されうる。このように、本発明は、ここで示された実施形態に制限されるものではなく、ここで記載された原理と新規の特徴に一致した最も広い範囲に相当するものを意図している。
図1は、本発明の1つの実施形態に従って、処理システムにおけるデバイスの設定を検出する装置を例示する。 図2は、本発明の1つの実施形態に従って、処理システムにおけるデバイスの設定の検出のための手順を例示する相互作用ブロック図である。 図3は、本発明の1つの実施形態に従って、処理システムにおけるデバイスの設定を検出する方法を図示するフロー図である。 図4は、本発明の1つの実施形態に従って、処理システムにおけるデバイスの設定を検出する方法におけるリセット・コマンドの実行を図示するフロー図である。 図5は、本発明の1つの実施形態に従って、処理システムにおけるデバイスの設定を検出する方法における自動検出コマンド・シーケンスの実行を図示するフロー図である。 図6は、本発明の1つの実施形態に従って、処理システムにおけるデバイスの設定を検出する方法におけるページ・サイズ・パラメータの識別を図示するフロー図である。 図7は、命令のセットが実行されうるコンピュータ・システムの典型的形態をした機械のブロック図表示である。

Claims (55)

  1. 設定検出のための方法であって、
    不揮発性メモリ・デバイスにリセット・コマンドを送ることと、
    前記不揮発性メモリ・デバイスから受け取ったビット信号であって、前記リセット・コマンドの実行の完了を示す前記ビット信号をモニタすることにより、前記リセット・コマンドの実行のステータスをモニタすることと、
    ページ・サイズ・パラメータを検出するために必要とされる予め定めたデータ量を示す自動検出コマンド・シーケンスであって、
    前記不揮発性メモリ・デバイスへのページ読取コマンドと、
    前記不揮発性メモリ・デバイスへの第1のデータ・ページのページ・アドレス座標と、
    前記ページ読取コマンドの実行のステータスを予め定めた期間モニタするためのコマンドと
    をさらに備える前記自動検出コマンド・シーケンスを選択すること、および、前記不揮発性メモリ・デバイスに送ることと、
    前記不揮発性メモリ・デバイスから利用可能なページ・データであって、前記予め定めたデータ量を含む前記ページ・データにアクセスすることと、
    前記ページ読取コマンドを前記不揮発性メモリ・デバイスに送ること、および、前記不揮発性メモリ・デバイスが前記ページ読取コマンドを実行することの間の時間間隔に基づいて、前記不揮発性メモリ・デバイスに関連付けられたページ・サイズ・パラメータを識別することと、
    前記アクセスされたページ・データから複数の予め定めたデータ・シーケンスを検索すること、および、復号することにより、前記不揮発性メモリ・デバイスに関連付けられた少なくとも1つの設定パラメータを識別することとを備え、
    前記ページ・サイズ・パラメータおよび前記少なくとも1つの設定パラメータは、前記不揮発性メモリ・デバイスの設定検出を可能にし、
    前記方法は更に、前記ページ・サイズ・パラメータと前記少なくとも1つの設定パラメータとに基づいて、前記不揮発性メモリ・デバイスからアプリケーション・データをダウンロードする要求を送ることを備える方法。
  2. 前記ページ・サイズ・パラメータを識別することは更に、前記ページ・サイズ・パラメータを記憶モジュールに格納することを備える請求項1に記載の方法。
  3. 前記予め定めた期間は300ナノ秒である請求項1に記載の方法。
  4. 前記不揮発性メモリ・デバイスが、前記予め定めた期間内に前記ページ読取コマンドの実行を開始するのであれば、前記ページ・サイズ・パラメータについて256/512バイト値を識別し、前記不揮発性メモリ・デバイスを256/512バイト・ページ・サイズの不揮発性メモリ・デバイスとして識別することを更に備える請求項1に記載の方法。
  5. 前記モニタすることは更に、前記不揮発性メモリ・デバイスから受け取ったビット信号をモニタすることを備え、
    前記ビット信号は、前記ページ読取コマンドの実行の開始を示す請求項1に記載の方法。
  6. 前記不揮発性メモリ・デバイスが、前記予め定めた期間内に前記ページ読取コマンドの実行の開始に失敗したのであれば、前記不揮発性メモリ・デバイスへページ読取開始コマンドを送ることと、
    前記ページ読取開始コマンドの実行のステータスを、第2の予め定めた期間モニタすることとを更に備える請求項1に記載の方法。
  7. 前記不揮発性メモリ・デバイスが、前記第2の予め定めた期間内に前記ページ読取開始コマンドの実行を開始したのであれば、512バイト値よりも多いものとして、前記ページ・サイズ・パラメータのための予め定めた値を識別することを更に備える請求項6に記載の方法。
  8. 前記予め定めた値は、2Kバイト値である請求項7に記載の方法。
  9. 前記ページ読取開始コマンドの実行のステータスをモニタすることは更に、前記不揮発性メモリ・デバイスから受け取ったビット信号をモニタすることを備え、
    前記ビット信号は、前記ページ読取開始コマンドの実行の開始を示す請求項6に記載の方法。
  10. 前記少なくとも1つの設定パラメータは更に、前記不揮発性メモリ・デバイスに関連付けられたインタフェース・バス幅パラメータを備える請求項1に記載の方法。
  11. 前記ページ・サイズ・パラメータを識別することは更に、前記ページ・サイズ・パラメータが、512バイト値を持っているかを判定することを備える請求項1に記載の方法。
  12. 前記ページ・サイズ・パラメータの前記512バイト値に関連付けられた予め定めた設定をロードすることを更に備える請求項11に記載の方法。
  13. 前記ページ・サイズ・パラメータが、512バイト値を持っていないのであれば、前記ページ・サイズ・パラメータの検出された値に関連付けられた予め定めた設定をロードすることを更に備える請求項11に記載の方法。
  14. 前記アプリケーション・データをダウンロードする要求を送ることは更に、アプリケーション・データをダウンロードする命令をプロセッサ・モジュールから受け取ることを備える請求項1に記載の方法。
  15. 設定検出のための装置であって、
    不揮発性メモリ・デバイスにリセット・コマンドを送り、
    前記不揮発性メモリ・デバイスから受け取ったビット信号であって、前記リセット・コマンドの実行の完了を示す前記ビット信号をモニタすることにより、前記リセット・コマンドの実行のステータスをモニタし、
    ページ・サイズ・パラメータを検出するために必要とされる予め定めたデータ量を示す自動検出コマンド・シーケンスであって、
    前記不揮発性メモリ・デバイスへのページ読取コマンドと、
    前記不揮発性メモリ・デバイスへの第1のデータ・ページのページ・アドレス座標と、
    前記ページ読取コマンドの実行のステータスを予め定めた期間モニタするためのコマンドと
    を備える前記自動検出コマンド・シーケンスを選択し、および、前記不揮発性メモリ・デバイスに送り、
    前記不揮発性メモリ・デバイスから利用可能なページ・データであって、前記予め定めたデータ量を含む前記ページ・データにアクセスし、
    前記ページ読取コマンドを前記不揮発性メモリ・デバイスに送ること、および、前記不揮発性メモリ・デバイスが前記ページ読取コマンドを実行することの間の時間間隔に基づいて、前記不揮発性メモリ・デバイスに関連付けられたページ・サイズ・パラメータを識別し、
    前記アクセスされたページ・データから複数の予め定めたデータ・シーケンスを検索すること、および、復号することにより、前記不揮発性メモリ・デバイスに関連付けられた少なくとも1つの設定パラメータを識別するコントローラ・モジュールを備え、
    前記ページ・サイズ・パラメータおよび前記少なくとも1つの設定パラメータは、前記不揮発性メモリ・デバイスの検出を可能にし、
    前記装置は更に、前記ページ・サイズ・パラメータと前記少なくとも1つの設定パラメータとに基づいて、前記不揮発性メモリ・デバイスからアプリケーション・データをダウンロードするように前記コントローラ・モジュールに命令するプロセッサ・モジュールであって、前記コントローラ・モジュールに接続されたプロセッサ・モジュールとを備え、
    前記コントローラ・モジュールは更に、前記アプリケーション・データをダウンロードする要求を、前記不揮発性メモリ・デバイスへ送る装置。
  16. 前記コントローラ・モジュールは更に、前記ページ・サイズ・パラメータを記憶モジュールに格納する請求項15に記載の装置。
  17. 前記予め定めた期間は300ナノ秒である請求項15に記載の装置。
  18. 前記不揮発性メモリ・デバイスが、前記予め定めた期間内に前記ページ読取コマンドの実行を開始するのであれば、前記コントローラ・モジュールは更に、前記ページ・サイズ・パラメータについて256/512バイト値を識別し、前記不揮発性メモリ・デバイスを256/512バイト・ページ・サイズの不揮発性メモリ・デバイスとして識別する請求項15に記載の装置。
  19. 前記コントローラ・モジュールは更に、前記不揮発性メモリ・デバイスから受け取ったビット信号をモニタし、前記ビット信号は、前記ページ読取コマンドの実行の開始を示す請求項15に記載の装置。
  20. 前記不揮発性メモリ・デバイスが、前記予め定めた期間内に前記ページ読取コマンドの実行の開始に失敗したのであれば、前記コントローラ・モジュールは更に、前記不揮発性メモリ・デバイスへページ読取開始コマンドを送り、前記ページ読取開始コマンドの実行のステータスを、第2の予め定めた期間モニタする請求項15に記載の装置。
  21. 前記不揮発性メモリ・デバイスが、前記第2の予め定めた期間内に前記ページ読取開始コマンドの実行を開始したのであれば、前記コントローラ・モジュールは更に、512バイト値よりも多いものとして、前記ページ・サイズ・パラメータのための予め定めた値を識別する請求項20に記載の装置。
  22. 前記予め定めた値は、2Kバイト値である請求項21に記載の装置。
  23. 前記コントローラ・モジュールは更に、前記不揮発性メモリ・デバイスから受け取ったビット信号をモニタし、前記ビット信号は、前記ページ読取開始コマンドの実行の開始を示す請求項20に記載の装置。
  24. 前記少なくとも1つの設定パラメータは更に、前記不揮発性メモリ・デバイスに関連付けられたインタフェース・バス幅パラメータを備える請求項15に記載の装置。
  25. 前記コントローラ・モジュールは更に、前記ページ・サイズ・パラメータが、512バイト値を持っているかを判定する請求項15に記載の装置。
  26. 前記コントローラ・モジュールは更に、前記ページ・サイズ・パラメータの前記512バイト値に関連付けられた予め定めた設定をロードする請求項25に記載の装置。
  27. 前記ページ・サイズ・パラメータが、512バイト値を持っていないのであれば、前記コントローラ・モジュールは更に、前記ページ・サイズ・パラメータの検出された値に関連付けられた予め定めた設定をロードする請求項25に記載の装置。
  28. 設定検出のための装置であって、
    不揮発性メモリ・デバイスにリセット・コマンドを送る手段と、
    前記不揮発性メモリ・デバイスから受け取ったビット信号であって、前記リセット・コマンドの実行の完了を示す前記ビット信号をモニタすることにより、前記リセット・コマンドの実行のステータスをモニタする手段と、
    ページ・サイズ・パラメータを検出するために必要とされる予め定めたデータ量を示す自動検出コマンド・シーケンスであって、
    前記不揮発性メモリ・デバイスへのページ読取コマンドと、
    前記不揮発性メモリ・デバイスへの第1のデータ・ページのページ・アドレス座標と、
    前記ページ読取コマンドの実行のステータスを予め定めた期間モニタするためのコマンドと
    をさらに備える前記自動検出コマンド・シーケンスを選択し、および、前記不揮発性メモリ・デバイスに送る手段と、
    前記不揮発性メモリ・デバイスから利用可能なページ・データであって、前記予め定めたデータ量を含む前記ページ・データにアクセスする手段と、
    前記ページ読取コマンドを前記不揮発性メモリ・デバイスに送ること、および、前記不揮発性メモリ・デバイスが前記ページ読取コマンドを実行することの間の時間間隔に基づいて、前記不揮発性メモリ・デバイスに関連付けられたページ・サイズ・パラメータを識別する手段と、
    前記アクセスされたページ・データから複数の予め定めたデータ・シーケンスを検索する手段と、前記検索された複数の予め定めたデータ・シーケンスを復号する手段を備える前記不揮発性メモリ・デバイスに関連付けられた少なくとも1つの設定パラメータを識別する手段とを備え、
    前記ページ・サイズ・パラメータおよび前記少なくとも1つの設定パラメータは、前記不揮発性メモリ・デバイスの設定検出を可能にし、
    前記装置は更に、前記ページ・サイズ・パラメータと前記少なくとも1つの設定パラメータとに基づいて、前記不揮発性メモリ・デバイスからアプリケーション・データをダウンロードする要求を送る手段を備える装置。
  29. 前記ページ・サイズ・パラメータを記憶モジュールに格納する手段を更に備える請求項28に記載の装置。
  30. 前記予め定めた期間は300ナノ秒である請求項28に記載の装置。
  31. 前記不揮発性メモリ・デバイスが、前記予め定めた期間内に前記ページ読取コマンドの実行を開始するのであれば、前記ページ・サイズ・パラメータについて256/512バイト値を識別し、前記不揮発性メモリ・デバイスを256/512バイト・ページ・サイズの不揮発性メモリ・デバイスとして識別する手段を更に備える請求項28に記載の装置。
  32. 前記不揮発性メモリ・デバイスから受け取ったビット信号をモニタする手段を更に備え、前記ビット信号は、前記ページ読取コマンドの実行の開始を示す請求項28に記載の装置。
  33. 前記不揮発性メモリ・デバイスが、前記予め定めた期間内に前記ページ読取コマンドの実行の開始に失敗したのであれば、
    前記不揮発性メモリ・デバイスへページ読取開始コマンドを送る手段と、
    前記ページ読取開始コマンドの実行のステータスを、第2の予め定めた期間モニタする手段とを更に備える請求項28に記載の装置。
  34. 前記不揮発性メモリ・デバイスが、前記第2の予め定めた期間内に前記ページ読取開始コマンドの実行を開始したのであれば、512バイト値よりも多いものとして、前記ページ・サイズ・パラメータのための予め定めた値を識別する手段を更に備える請求項33に記載の装置。
  35. 前記予め定めた値は、2Kバイト値である請求項34に記載の装置。
  36. 前記不揮発性メモリ・デバイスから受け取ったビット信号をモニタする手段を更に備え、前記ビット信号は、前記ページ読取開始コマンドの実行の開始を示す請求項33に記載の装置。
  37. 前記少なくとも1つの設定パラメータは更に、前記不揮発性メモリ・デバイスに関連付けられたインタフェース・バス幅パラメータを備える請求項28に記載の装置。
  38. 前記ページ・サイズ・パラメータが、512バイト値を持っているかを判定する手段を更に備える請求項28に記載の装置。
  39. 前記ページ・サイズ・パラメータの前記512バイト値に関連付けられた予め定めた設定をロードする手段を更に備える請求項38に記載の装置。
  40. 前記ページ・サイズ・パラメータが、512バイト値を持っていないのであれば、前記ページ・サイズ・パラメータの検出された値に関連付けられた予め定めた設定をロードする手段を更に備える請求項38に記載の装置。
  41. アプリケーション・データをダウンロードする命令をプロセッサ・モジュールから受け取る手段を更に備える請求項28に記載の装置。
  42. コンピュータ実行可能命令を実行させるためのプログラムを記録したコンピュータ読取可能記録媒体であって、前記コンピュータ実行可能命令の実行は、コンピュータに、
    不揮発性メモリ・デバイスにリセット・コマンドを送ることと、
    前記不揮発性メモリ・デバイスから受け取ったビット信号であって、前記リセット・コマンドの実行の完了を示す前記ビット信号をモニタすることにより、前記リセット・コマンドの実行のステータスをモニタすることと、
    ページ・サイズ・パラメータを検出するために必要とされる予め定めたデータ量を示す自動検出コマンド・シーケンスであって、
    前記不揮発性メモリ・デバイスへのページ読取コマンドと、
    前記不揮発性メモリ・デバイスへの第1のデータ・ページのページ・アドレス座標と、
    前記ページ読取コマンドの実行のステータスを予め定めた期間モニタするためのコマンドと
    をさらに備える前記自動検出コマンド・シーケンスを選択すること、および、前記不揮発性メモリ・デバイスに送ることと、
    前記不揮発性メモリ・デバイスから利用可能なページ・データであって、前記予め定めたデータ量を含む前記ページ・データにアクセスすることと、
    前記ページ読取コマンドを前記不揮発性メモリ・デバイスに送ること、および、前記不揮発性メモリ・デバイスが前記ページ読取コマンドを実行することの間の時間間隔に基づいて、前記不揮発性メモリ・デバイスに関連付けられたページ・サイズ・パラメータを識別することと、
    前記アクセスされたページ・データから複数の予め定めたデータ・シーケンスを検索すること、および、復号することにより、前記不揮発性メモリ・デバイスに関連付けられた少なくとも1つの設定パラメータを識別することとによって設定検出を遂行させ、
    前記ページ・サイズ・パラメータおよび前記少なくとも1つの設定パラメータは、前記不揮発性メモリ・デバイスの設定検出を可能にし、
    前記コンピュータ実行可能命令の実行は更に、コンピュータに、前記ページ・サイズ・パラメータと前記少なくとも1つの設定パラメータとに基づいて、前記不揮発性メモリ・デバイスからアプリケーション・データをダウンロードする要求を送ることによって設定検出を遂行させるコンピュータ読取可能記録媒体。
  43. 前記ページ・サイズ・パラメータを識別することは更に、前記ページ・サイズ・パラメータを記憶モジュールに格納することを備える請求項42に記載のコンピュータ読取可能記録媒体。
  44. 前記予め定めた期間は300ナノ秒である請求項42に記載のコンピュータ読取可能記録媒体。
  45. 前記コンピュータ実行可能命令は更に、前記不揮発性メモリ・デバイスが、前記予め定めた期間内に前記ページ読取コマンドの実行を開始するのであれば、前記ページ・サイズ・パラメータについて256/512バイト値を識別し、前記不揮発性メモリ・デバイスを256/512バイト・ページ・サイズの不揮発性メモリ・デバイスとして識別するために実行される請求項42に記載のコンピュータ読取可能記録媒体。
  46. モニタするための前記コンピュータ実行可能命令の実行は更に、前記不揮発性メモリ・デバイスから受け取ったビット信号をモニタするためであり、
    前記ビット信号は、前記ページ読取コマンドの実行の開始を示す請求項42に記載のコンピュータ読取可能記録媒体。
  47. 前記コンピュータ実行可能命令は更に、
    前記不揮発性メモリ・デバイスが、前記予め定めた期間内に前記ページ読取コマンドの実行の開始に失敗したのであれば、前記不揮発性メモリ・デバイスへページ読取開始コマンドを送り、
    前記ページ読取開始コマンドの実行のステータスを、第2の予め定めた期間モニタするために実行される請求項42に記載のコンピュータ読取可能記録媒体。
  48. 前記コンピュータ実行可能命令は更に、前記不揮発性メモリ・デバイスが、前記第2の予め定めた期間内に前記ページ読取開始コマンドの実行を開始したのであれば、512バイト値よりも多いものとして、前記ページ・サイズ・パラメータのための予め定めた値を識別するために実行される請求項47に記載のコンピュータ読取可能記録媒体。
  49. 前記予め定めた値は、2Kバイト値である請求項48に記載のコンピュータ読取可能記録媒体。
  50. 前記ページ読取開始コマンドの実行のステータスをモニタするための前記コンピュータ実行可能命令の実行は更に、前記不揮発性メモリ・デバイスから受け取ったビット信号をモニタするためであり、
    前記ビット信号は、前記ページ読取開始コマンドの実行の開始を示す請求項47に記載のコンピュータ読取可能記録媒体。
  51. 前記少なくとも1つの設定パラメータは更に、前記不揮発性メモリ・デバイスに関連付けられたインタフェース・バス幅パラメータを備える請求項42に記載のコンピュータ読取可能記録媒体。
  52. 前記ページ・サイズ・パラメータを識別するための前記コンピュータ実行可能命令の実行は更に、前記ページ・サイズ・パラメータが、512バイト値を持っているかを判定するためである請求項42に記載のコンピュータ読取可能記録媒体。
  53. 前記コンピュータ実行可能命令は更に、前記ページ・サイズ・パラメータの前記512バイト値に関連付けられた予め定めた設定をロードするために実行される請求項52に記載のコンピュータ読取可能記録媒体。
  54. 前記コンピュータ実行可能命令は更に、前記ページ・サイズ・パラメータが、512バイト値を持っていないのであれば、前記ページ・サイズ・パラメータの検出された値に関連付けられた予め定めた設定をロードするために実行される請求項52に記載のコンピュータ読取可能記録媒体。
  55. 前記アプリケーション・データをダウンロードする要求を送るための前記コンピュータ実行可能命令の実行は更に、アプリケーション・データをダウンロードする命令をプロセッサ・モジュールから受け取るためである請求項42に記載のコンピュータ読取可能記録媒体。
JP2008532347A 2005-09-20 2006-09-20 ハードウェア支援されたデバイス設定検出 Expired - Fee Related JP4960364B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/231,389 US8171192B2 (en) 2005-09-20 2005-09-20 Hardware-assisted device configuration detection
US11/231,389 2005-09-20
PCT/US2006/036626 WO2007035811A1 (en) 2005-09-20 2006-09-20 Hardware-assisted device configuration detection

Publications (2)

Publication Number Publication Date
JP2009509269A JP2009509269A (ja) 2009-03-05
JP4960364B2 true JP4960364B2 (ja) 2012-06-27

Family

ID=37560907

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008532347A Expired - Fee Related JP4960364B2 (ja) 2005-09-20 2006-09-20 ハードウェア支援されたデバイス設定検出

Country Status (7)

Country Link
US (1) US8171192B2 (ja)
EP (1) EP1952232A1 (ja)
JP (1) JP4960364B2 (ja)
KR (1) KR100988157B1 (ja)
CN (1) CN101310255B (ja)
TW (1) TWI330318B (ja)
WO (1) WO2007035811A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7873779B2 (en) * 2007-05-14 2011-01-18 Qualcomm Incorporated Memory page size auto detection
US8549209B2 (en) * 2008-11-04 2013-10-01 Mosaid Technologies Incorporated Bridging device having a configurable virtual page size
CN102279757B (zh) * 2010-06-11 2016-08-17 无锡中感微电子股份有限公司 一种系统程序启动的方法及装置
US8417880B2 (en) 2010-11-01 2013-04-09 Hong Kong Applied Science and Technology Research Institute Company Limited System for NAND flash parameter auto-detection
KR20130134918A (ko) * 2012-05-31 2013-12-10 삼성전자주식회사 불휘발성 메모리를 포함하는 컴퓨터 시스템 및 컴퓨터 시스템의 동작방법
WO2015016926A1 (en) * 2013-07-31 2015-02-05 Hewlett-Packard Development Company, L.P. Versioned memory implementation
US10539989B1 (en) * 2016-03-15 2020-01-21 Adesto Technologies Corporation Memory device alert of completion of internally self-timed power-up and reset operations
CN106648807B (zh) * 2017-01-10 2020-12-01 北京电子工程总体研究所 一种基于flash存储器的dsp软件上传更新方法
US10394456B2 (en) 2017-08-23 2019-08-27 Micron Technology, Inc. On demand memory page size
US11210019B2 (en) 2017-08-23 2021-12-28 Micron Technology, Inc. Memory with virtual page size
CN110554928A (zh) * 2018-05-30 2019-12-10 北京兆易创新科技股份有限公司 一种非易失性半导体存储器参数上电读取方法及装置
US10990319B2 (en) * 2018-06-18 2021-04-27 Micron Technology, Inc. Adaptive watchdog in a memory device
US11137932B2 (en) 2019-12-02 2021-10-05 Western Digital Technologies, Inc. Pad indication for device capability
TWI779610B (zh) * 2021-05-17 2022-10-01 瑞昱半導體股份有限公司 偵測快閃記憶體模組的方法及相關的系統晶片

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5519843A (en) * 1993-03-15 1996-05-21 M-Systems Flash memory system providing both BIOS and user storage capability
US5991849A (en) * 1996-04-10 1999-11-23 Sanyo Electric Co., Ltd Rewriting protection of a size varying first region of a reprogrammable non-volatile memory
US5668760A (en) * 1996-04-23 1997-09-16 Intel Corporation Nonvolatile memory with a write protection circuit
FR2752992B1 (fr) * 1996-08-27 1998-10-30 Sgs Thomson Microelectronics Dispositif de protection de donnees memorisees
US6279069B1 (en) * 1996-12-26 2001-08-21 Intel Corporation Interface for flash EEPROM memory arrays
US6173382B1 (en) * 1998-04-28 2001-01-09 International Business Machines Corporation Dynamic configuration of memory module using modified presence detect data
US6857058B1 (en) * 1999-10-04 2005-02-15 Intel Corporation Apparatus to map pages of disparate sizes and associated methods
US6687815B1 (en) * 2000-02-01 2004-02-03 Sun Microsystems, Inc. Method and apparatus for storing non-volatile configuration information
US6647482B1 (en) * 2000-04-07 2003-11-11 Intel Corporation Method for optimized representation of page table entries
US6580659B1 (en) * 2000-08-25 2003-06-17 Micron Technology, Inc. Burst read addressing in a non-volatile memory device
US6779099B2 (en) * 2001-07-20 2004-08-17 Chien-Tzu Hou Operation method for controlling access attributes of a memorized page of a memory unit and its structure
US6976073B2 (en) * 2001-11-29 2005-12-13 Hewlett-Packard Development Company, L.P. Transparent remote data storage device and method
TW561353B (en) * 2002-02-05 2003-11-11 Via Tech Inc Automatic reset signal generator integrated into chipset and chipset with reset completion indication function
US7085879B2 (en) * 2002-02-27 2006-08-01 Microsoft Corporation Dynamic data structures for tracking data stored in a flash memory device
US7234052B2 (en) * 2002-03-08 2007-06-19 Samsung Electronics Co., Ltd System boot using NAND flash memory and method thereof
EP1345236B1 (en) * 2002-03-14 2011-05-11 STMicroelectronics Srl A non-volatile memory device
US7039796B2 (en) 2002-06-04 2006-05-02 Hewlett-Packard Development Company, L.P. Method and system of locating a position in memory at which to store incoming firmware image
KR100479170B1 (ko) * 2002-06-14 2005-03-28 주식회사 포인칩스 메모리 억세스 제어장치 및 방법
KR100448905B1 (ko) * 2002-07-29 2004-09-16 삼성전자주식회사 낸드플래쉬메모리를 시스템구동 및 저장용으로 사용하는장치
US20040024941A1 (en) * 2002-07-31 2004-02-05 Compaq Information Technologies Group, L.P. Method and apparatus for supporting hot-plug cache memory
US7155579B1 (en) * 2002-12-27 2006-12-26 Unisys Corporation Memory controller having programmable initialization sequence
US7257703B2 (en) * 2003-11-18 2007-08-14 Toshiba America Electronic Components, Inc. Bootable NAND flash memory architecture
JP2005301591A (ja) * 2004-04-09 2005-10-27 Toshiba Corp 不揮発性メモリを備えた装置及びメモリコントロ−ラ
US7296143B2 (en) * 2004-06-22 2007-11-13 Lenovo (Singapore) Pte. Ltd. Method and system for loading processor boot code from serial flash memory
US7427027B2 (en) * 2004-07-28 2008-09-23 Sandisk Corporation Optimized non-volatile storage systems
WO2006074793A1 (en) 2005-01-14 2006-07-20 Telefonaktiebolaget Lm Ericsson (Publ) Method and device for initializing a booting procedure of a mobile device
EP1681628B1 (en) 2005-01-14 2016-11-02 Telefonaktiebolaget LM Ericsson (publ) Method and device for initializing a booting procedure of a mobile device
US7657696B2 (en) * 2005-02-25 2010-02-02 Lsi Corporation Method to detect NAND-flash parameters by hardware automatically
KR100673027B1 (ko) * 2006-01-31 2007-01-24 삼성전자주식회사 고온 스트레스로 인해 감소된 읽기 마진을 보상할 수 있는불 휘발성 메모리 장치

Also Published As

Publication number Publication date
WO2007035811A1 (en) 2007-03-29
CN101310255B (zh) 2012-11-07
JP2009509269A (ja) 2009-03-05
TW200731074A (en) 2007-08-16
US20070067520A1 (en) 2007-03-22
KR20080048545A (ko) 2008-06-02
EP1952232A1 (en) 2008-08-06
TWI330318B (en) 2010-09-11
KR100988157B1 (ko) 2010-10-18
CN101310255A (zh) 2008-11-19
US8171192B2 (en) 2012-05-01

Similar Documents

Publication Publication Date Title
JP4960364B2 (ja) ハードウェア支援されたデバイス設定検出
JP5469254B2 (ja) プロセッサスワップ無しという条件を検出するメカニズムおよびブート中の高速バスキャリブレーションの修正変更
US7302518B2 (en) Method and system for managing a suspend request in a flash memory
JP2008047116A (ja) 入力/出力装置とメモリ間のデータ転送の融通性のある制御
US20080016415A1 (en) Evaluation system and method
CN114721493B (zh) 芯片启动方法、计算机设备及可读存储介质
WO2008020389A2 (en) Flash memory access circuit
US9542113B2 (en) Apparatuses for securing program code stored in a non-volatile memory
JP2002245022A (ja) マルチプロセッサシステムとその共有メモリ制御方法、及び共有メモリ制御プログラム
US20070005860A1 (en) Interrupt control system and method
US20050223292A1 (en) Single instruction type based hardware patch controller
WO2006136881A1 (en) Device and method for securing software
JP2016143422A (ja) シリアルデバイスの構成
CN110955885B (zh) 一种数据写入方法及装置
WO2023240941A1 (zh) 下载数据的方法、装置和安全元件
JP7355876B2 (ja) プログラム起動方法及び機器、記憶媒体
KR20180081236A (ko) 데이터 저장 장치 및 그것을 포함하는 데이터 처리 시스템
US20240176887A1 (en) Method for Running Startup Program of Electronic Device, and Electronic Device
EP2194458A2 (en) Request processing device, request processing system, and access testing method
KR100532417B1 (ko) 디지털 신호 처리장치의 저전력 소비형 캐시 메모리 장치및 이에 대한 제어방법
US9400758B2 (en) Reset method and network device
JP2008140124A (ja) データ処理装置
JP2003150458A (ja) 障害検出装置、障害検出方法、プログラム及びプログラム記録媒体
US20210373766A1 (en) Method facilitating data transmission, apparatus, and storage medium thereof
EP3502902A1 (en) Method and apparatus for managing a non-volatile random-access memory using a monitor

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110712

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111011

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120125

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120221

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120322

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150330

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4960364

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees