JP2010518463A - 情報処理装置及び不揮発性半導体メモリドライブ - Google Patents

情報処理装置及び不揮発性半導体メモリドライブ Download PDF

Info

Publication number
JP2010518463A
JP2010518463A JP2009503769A JP2009503769A JP2010518463A JP 2010518463 A JP2010518463 A JP 2010518463A JP 2009503769 A JP2009503769 A JP 2009503769A JP 2009503769 A JP2009503769 A JP 2009503769A JP 2010518463 A JP2010518463 A JP 2010518463A
Authority
JP
Japan
Prior art keywords
storage area
semiconductor memory
address
physical address
logical
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
Application number
JP2009503769A
Other languages
English (en)
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Publication of JP2010518463A publication Critical patent/JP2010518463A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7207Details relating to flash memory management management of metadata or control data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

不揮発性半導体メモリは、所定の物理アドレス範囲が割り当てられた固定領域から構成され、論理ブロックアドレスそれぞれと不揮発性半導体メモリの物理アドレスそれぞれとの対応関係を示すアドレス管理テーブルを含む管理情報を格納する第1の記憶領域と、第1の論理アドレス範囲が割り当てられ、前記不揮発性半導体メモリドライブの動作状況を示すログデータを格納する第2の記憶領域とを含む。制御部は、前記所定の物理アドレス範囲に属する物理アドレスを用いて前記第1の記憶領域をアクセスし、前記アドレス管理テーブルを参照することによって得られる、前記第1の論理アドレス範囲に属する各論理ブロックアドレスに対応する物理アドレスを用いて、前記第2の記憶領域をアクセスする。

Description

本発明は、情報処理装置及び不揮発性半導体メモリドライブに関する。
メモリを管理するシステムとしては、例えば、特許文献1に開示されたメモリシステムが知られている。
このメモリシステムは、複数のメモリユニットを各々が有する複数メモリカードを管理する制御部を有している。制御部は、各メモリユニットの記憶容量情報を自己の記憶部内に保持している。あるメモリユニットが故障した場合、制御部は、その故障したユニットを無効化して、残りのメモリユニットに対してアドレス再割付を実施する。これにより、あるメモリユニットが故障した場合にも再び動作することができる。
特公平8−27758号公報
しかし、このメモリシステムにおいては、ユーザデータ以外の各種管理情報をどのように管理するかについては特に考慮されていない。情報処理装置の外部記憶装置として実装されて使用される不揮発性半導体メモリドライブにおいては、ユーザデータをリード/ライトするための動作に加え、各種管理情報やログデータを不揮発性半導体メモリドライブ内で管理することが必要とされる。したがって、管理情報およびログデータを効率よくアクセスするための新たな機能の実現が要求される。
本発明の目的は、管理情報およびログデータに対するアクセスを効率よく実行することができる情報処理装置および不揮発性半導体メモリドライブを提供することにある。
本発明の一態様によれば、情報処理装置本体と、前記情報処理装置内に収容される不揮発性半導体メモリドライブであって、不揮発性半導体メモリであって、所定の物理アドレス範囲が割り当てられた固定領域から構成され、論理ブロックアドレスそれぞれと不揮発性半導体メモリの物理アドレスそれぞれとの対応関係を示すアドレス管理テーブルを含む管理情報を格納する第1の記憶領域と、第1の論理アドレス範囲が割り当てられ、前記不揮発性半導体メモリドライブの動作状況を示すログデータを格納する第2の記憶領域とを含む不揮発性半導体メモリと、前記管理情報をリードまたはライトする場合には、前記所定の物理アドレス範囲に属する物理アドレスを用いて前記第1の記憶領域をアクセスし、前記ログデータをリードまたはライトする場合には、前記アドレス管理テーブルを参照することによって得られる、前記第1の論理アドレス範囲に属する各論理ブロックアドレスに対応する物理アドレスを用いて、前記第2の記憶領域をアクセスする制御手段とを含む不揮発性半導体メモリドライブとを具備する情報処理装置が提供される。
この情報処理装置によれば、管理情報およびログデータに対するアクセスを効率よく実行することができる。
図1は、本発明の一実施形態に係る情報処理装置の外観を示す斜視図である。 図2は、同実施形態に係る情報処理装置の概略構成を示すブロック図である。 図3は、同実施形態に係る情報処理装置で用いられるSSDの概略構成を示すブロック図である。 図4は、図3に示すSSDの記憶容量及び記憶領域の例を示す概略図である。 図5は、図3に示すSSDの製造工程時に実行される手順の例を示すフローチャートである。
以下、図面を参照して、本発明の実施形態を説明する。
<情報処理装置の構成>
図1は、本発明の一実施形態に係る情報処理装置の外観を示す斜視図である。
この情報処理装置1は、情報処理装置本体2と、この情報処理装置本体2に取り付けられた表示ユニット3とから構成されている。
本体2は、箱状の筐体4を有し、その筐体4は、上壁4a、周壁4b及び下壁(図示せず)を備える。筐体4の上壁4aは、情報処理装置1を操作するユーザに近い側から順にフロント部40、中央部41及びバック部42を有する。下壁は、この情報処理装置1が置かれる設置面に対向する。周壁4bは、前壁4ba、後壁4bb及び左右の側壁4bc,4bdを有する。
フロント部40は、ポインティングデバイスであるタッチパッド20と、パームレスト21と、情報処理装置1の各部の動作に連動して点灯するLED22とを備える。
中央部41は、文字情報等を入力可能なキーボード23aが取り付けられるキーボード載置部23を備える。
バック部42は、着脱可能に取り付けられたバッテリパック24を備えている。バッテリパック24の右側には、情報処理装置1の電源を投入するための電源スイッチ25が設けられている。バッテリパック24の左右には、表示ユニット3を回転可能に支持する一対のヒンジ部26a、26bが設けられている。
筐体4の左の側壁4bcには、筐体4内から外部に対して風Wを排出する排出口29が設けられている。また、右の側壁4bdには、例えば、DVD等の光記憶媒体にデータを読み書き可能なODD(光ディスクドライブ)27と、各種のカードが出し入されるカードスロット28とが配置されている。
筐体4は、周壁4bの一部及び上壁4aを含む筐体カバーと、周壁4bの一部及び下壁を含む筐体ベースとにより形成されている。筐体カバーは、筐体ベースに対して着脱自在に組み合わされ、筐体ベースとの間に収容空間を形成する。この収容空間には、例えば、不揮発性半導体メモリドライブとして機能するSSD(ソリッドステートドライブ)10が収容される。なお、SSD10の詳細は後述する。
表示ユニット3は、開口部30aを有するディスプレイハウジング30と、表示画面31aに画像を表示可能なLCD等からなる表示装置31とを備える。表示装置31はディスプレイハウジング30に収容され、表示画面31aは開口部30aを通じてディスプレイハウジング30の外部に露出している。
筐体4内には、上述のSSD10、バッテリパック24、ODD27及びカードスロット28の他に、図示しないメイン回路基板、拡張モジュール及びファン等が収容されている。
図2は、本発明の一実施形態に係る情報処理装置の概略構成を示すブロック図である。
この情報処理装置1は、図2に示すように、上述のSSD10、拡張モジュール12、ファン13、タッチパッド20、LED22、キーボード23a、電源スイッチ25、ODD27、カードスロット28及び表示装置31の他に、EC(組み込みコントローラ)111と、BIOS(Basic Input Output System)112aを格納するフラッシュメモリ112と、サウスブリッジ113と、ノースブリッジ114と、CPU(中央処理装置)115と、GPU(Graphic Processing Unit)116と、メインメモリ117とを備えている。
EC(組み込みコントローラ)111は各部を制御する組込システムである。ノースブリッジ114は、CPU115、GPU116、メインメモリ117及び各種バスそれぞれとの間を接続を制御するLSIである。CPU115は各種信号を演算処理するプロセッサであり、SSD10からメインメモリ117にロードされるオペレーティングシステムおよび各種アプリケーションプログラムを実行する。GPU116は映像信号を演算処理して表示制御を実行する表示コントローラである。
拡張モジュール12は、拡張回路基板と、この拡張回路基板に設けられたカードソケットと、このカードソケットに挿入された拡張モジュール基板とを備える。カードソケットは、例えば、Mini−PCI等の規格に対応している。拡張モジュール基板の例としては、3G(第3世代)モジュール、テレビチューナー、GPSモジュール、及びWimax(登録商標)モジュール等が挙げられる。
ファン13は、筐体4内を送風に基づいて冷却する冷却部であり、筐体4内の空気を排出口29を介して風Wとして外部に排出する。
なお、EC111、フラッシュメモリ112、サウスブリッジ113、ノースブリッジ114、CPU115、GPU116及びメインメモリ117は、メイン回路基板に実装された電子部品である。
SSD10は、データやプログラムを記憶し、電源を供給しなくても記憶内容が消えない外部記憶装置である。SSD10は、ハードディスクドライブとは異なり、磁気ディスク、ヘッド等の駆動機構を持たないが、不揮発性半導体メモリであるNANDメモリの記憶領域に、OS(オペレーティングシステム)等のプログラムと、ユーザまたはソフトウエアによって作成されたデータとを、読み書き可能に長期的に保存でき、情報処理装置1の起動ドライブとして動作することのできるドライブである。
図3は、本実施形態で用いられるSSDの概略構成を示すブロック図である。
メモリコントローラとして機能する制御部103は、温度センサ101、コネクタ102、8つのNANDメモリ104A〜104H、DRAM105、及び電源回路106にそれぞれ接続されている。また、制御部103は、コネクタ102を介してホスト装置8に接続され、必要に応じて外部装置9に接続される。
電源7は、バッテリパック24又は図示しないACアダプタであり、例えば、DC3.3Vの電力がコネクタ102を介して電源回路106に供給される。また、電源7は、情報処理装置1全体に対して電力を供給する。
ホスト装置8は、本実施形態では情報処理装置1(情報処理装置1の情報処理装置本体2)であり、メイン回路基板に実装されたサウスブリッジ113と制御部103との間が接続されている。サウスブリッジ113と制御部103との間は、例えば、シリアルATA等の規格に基づいてデータの送受信が行われる。また、ホスト装置8は、後述する図5においてはSSD10の製造時にSSD10に接続される機器である。
外部装置9は、情報処理装置1とは異なる他の情報処理装置である。外部装置9は、情報処理装置1から取り外されたSSD10に対して、例えば、RS−232C等の規格に基づいて制御部103に接続され、NANDメモリ104A〜104Hに記憶されたデータを読み出す機能を有する。
SSD10が実装される基板は、例えば、1.8インチタイプ又は2.5インチタイプのHDD(ハードディスクドライブ)と同等の外形サイズを有する。なお、本実施の形態では、1.8インチタイプと同等である。
温度センサ101は、基板上において、ともに熱源となる制御部103とNANDメモリ104A〜104Hとの間に設けられている。本実施形態においては、温度センサ101は、制御部103とNANDメモリ104A〜104Hによって囲まれるように基板の中央付近に設けられ、その位置における温度を測定する。温度センサ101により測定された測定温度は、温度情報として制御部103に送られる。なお、本実施形態では、温度センサ101としては、例えば、半導体のPN接合部の電圧が温度により変化する特性を利用した半導体温度センサを用いることがきるが、例えば、サーミスタ等の他の方式による温度センサを用いてもよい。
上記の位置に設けられた温度センサ101によって検出される測定温度は、SSD10が動作中の場合は、例えば、50℃〜60℃であり、基板の他の領域に比較して10℃程度高い。
制御部103は、NANDメモリ104A〜104Hに対する動作を制御する。具体的には、制御部103は、ホスト装置8からの要求(リードコマンド、ライトコマンド、等)に応じて、NANDメモリ104A〜104Hに対するデータの読み書きを制御する。データの転送速度は、例えば、データ読み出し時で100MB/Sec、データ書き込み時で40MB/Secである。
制御部103は、温度センサ101から温度情報を一定の周期で取得し、温度情報が示す測定温度が予め設定された規定値を超えているとき、ホスト装置8に対するレスポンスを低下させる。レスポンスを低下させる動作は、SSD10が有する処理能力の一部を制限する動作である。レスポンスを低下させる動作としては、例えば、NANDメモリ104A〜104Hから読み出したデータをホスト装置8に転送する際の転送速度の低下や、制御部103とNANDメモリメモリ104A〜104Hとの間の転送速度の低下等が挙げられる。
また、制御部103は、測定温度が規定値を超えているとき、その旨を示す情報として警告信号をホスト装置8に出力する。なお、制御部103は、警告信号の代わりに温度情報自体をホスト装置8に出力してもよい。
また、制御部103は、その取得した温度情報をその取得した取得日時とともにNANDメモリ104A〜104Hの所定のアドレスに書き込む。
NANDメモリ104A〜104Hの各々は、例えば記憶容量が16GBの不揮発性半導体メモリである。NANDメモリ104A〜104Hの各々は、例えば、1つのメモリセルに2ビットを記録可能なMLC(マルチレベルセル)−NANDメモリ(多値NANDメモリ)から構成されている。MLC−NANDメモリは、SLC(シングルレベルセル)−NANDメモリに比較して書き換え可能回数は少ないが、SLC(シングルレベルセル)−NANDメモリよりも記憶容量の大容量化は容易であるという特徴を有している。また、NANDメモリ104A〜104Hは、それらが設置された環境温度により、データを保持可能な期間が変動する特性を有する。
NANDメモリ104A〜104Hは、制御部103の制御により書き込まれたデータを記憶するとともに、温度情報及びその取得日時を温度履歴として記憶する。
DRAM105は、制御部103の制御によりNANDメモリ104A〜104Hに対するデータの読出し、書込みが行われる際に一時的にデータが格納されるバッファである。
コネクタ102は、例えばシリアルATAの規格に基づいた形状を有する。なお、制御部103及び電源回路106は、別々のコネクタによりホスト装置8及び電源7にそれぞれ接続されていてもよい。
電源回路106は、電源7から供給されたDC3.3Vを、例えば、DC1.8V、1.2V等に変換するとともに、それら3種類の電圧をSSD10の各部の駆動電圧に合わせて各部に供給する。
図4は、本実施形態で使用されるSSD10の記憶容量及び記憶領域の例を示す概略図である。
SSD10の制御部103は、図4に示す、7種類の記憶容量104a〜104gを管理する。
記憶容量104a(第1の記憶容量情報)は、NAND Capacityであり、すべてのNANDメモリ104A〜104Hの記憶領域を用いた最大の記憶容量である。つまり、記憶容量104aは、NANDメモリ104A〜104Hそれぞれの物理記憶容量の合計値である。例えば、NANDメモリ104A〜104Hの記憶容量がそれぞれ16GBであるとき、記憶容量104aは、128GBである。記憶容量104a、つまりNAND Capacityは、例えば、UART(Universal Asynchronous Receiver Transmitter)の製造情報書込みコマンドのNAND構成情報で与えられる。
記憶容量104b(第2の記憶容量情報)は、Max Logical Capacityであり、論理ブロックアドレス(LBA)でアクセスできる最大記憶容量である。
記憶容量104c(第3の記憶容量情報)は、S.M.A.R.Tログ領域開始LBAであり、記憶容量104bと以下に説明する記憶容量104dとを分割するために設けられる。S.M.A.R.Tログ領域開始LBAは、ログデータを格納する記憶領域の先頭LBAを示す。
記憶容量104d(第4の記憶容量情報)は、Vender Native Capacityであり、ユーザ使用領域として与えられる最大の記憶容量である。記憶容量104dは、例えば、ATA特殊コマンドの初期Identify Deviceデータで与えられる。また、記憶容量104dは、IDEMA(The International Disk Drive Equipment and Materials Association)標準に基づき、製造元(Vender)においてSSD10の設計段階で決定され、以下の式で表される。
LBA = 97,696,368 + (1,953,504,× ((Capacity in GB) - 50))
記憶容量104eは、OEM Native Capacityであり、OEM(Original Equipment Manufacturer)の要求により製造時に決定する記憶容量である。記憶容量104eは、例えば、ATA特殊コマンドの固有情報書込みで与えられる。また、記憶容量104eは、Device Configuration Overlay Feature Setがサポートされたとき、Device Configuration Identifyコマンドで返される値である。
記憶容量104fは、Native Capacityであり、初期値は記憶容量104eと同値である。Feature setがサポートされたときは、Device Configuration Setコマンドで変更することができる値である。また、記憶容量104fは、Read Native Max Address(EXT)コマンドで返される値である。
記憶容量104gは、Current Capacityであり、ユーザの使用中における記憶容量で、初期値は記憶容量104fと同値である。Set Max Addressコマンドで変更することができる。Identify DeviceコマンドのWord61:60、Word103:100で返される値である。
また、SSD10の記憶領域は、各記憶容量104a〜104gの間にそれぞれ存在する。
記憶容量104aと104bとの間の記憶領域(第1の記憶領域)には、SSD10を動作させるための管理情報が格納される。制御部103は、管理情報に基づいてNANDメモリ104A〜104Hに対するアクセスを制御する。管理情報は、アドレス変換テーブル(論理/物理テーブル)108aを含む。すなわち、記憶容量104aと104bとの間の記憶領域には、SSD10を動作させるための管理データ107aと、アドレス変換テーブル(論理/物理テーブル)108aとが格納される。アドレス変換テーブル(論理/物理テーブル)108aは、各LBAをNANDメモリ104A〜104Hの記憶単位であるセクタに対応する物理アドレスに変換するためのアドレス管理テーブルである。このアドレス変換テーブル(論理/物理テーブル)108aは、論理ブロックアドレスそれぞれとNANDメモリ104A〜104Hの物理アドレス(フラッシュアドレス)それぞれとの対応関係を示す。管理データ107a、および論理/物理テーブル108aの各々は、NANDメモリ104A〜104H内の固定領域に記録されるデータである。管理データ107a、および論理/物理テーブル108aの各々には、LBAは割り当てられていない。したがって、管理データ107a、および論理/物理テーブル108aの各々を、LBAをキーとしてアクセスすることはできない。制御部103は管理データ107a、および論理/物理テーブル108aの各々をアクセスするための固定アクセスパスを有しており、この固定アクセスパスを介して管理データ107a、および論理/物理テーブル108aの各々に対するアクセスを実行する。
すなわち、記憶容量104aと104bとの間の記憶領域(第1の記憶領域)は、NANDメモリ104A〜104Hの記憶領域(NAND記憶領域)の内、所定の物理アドレス範囲が割り当てられた固定領域から構成されている。管理情報(管理データ107a、および論理/物理テーブル108a)はNAND記憶領域内の常に同じ場所(第1の記憶領域)に存在する。制御部103のファームウェアは、第1の記憶領域に対応する物理アドレス範囲を保持しており、この物理アドレス範囲内の各物理アドレスを使用する固定アクセスパスによって第1の記憶領域をアクセスする。換言すれば、管理情報(管理データ107a、および論理/物理テーブル108a)をリードまたはライトする場合には、制御部103は、論理/物理テーブル108aを参照せずに、第1の記憶領域に対応する物理アドレス範囲に属する物理アドレスを用いて第1の記憶領域にアクセスする。
記憶容量104bと104cとの間の記憶領域(第2の記憶領域)には、S.M.A.R.T.(Self-Monitoring Analysis and Reporting Technology)ログデータ107bが格納される。S.M.A.R.T.ログデータ107bは、SSD10の動作状況を示すログデータである。このログデータ(メモリ検査履歴情報とも云う)は、制御部103が有する自己診断機能によって得られる診断結果データであるS.M.A.R.T関連データと、温度情報等の各種統計情報等を含む。第2の記憶領域には、所定の論理アドレス範囲(第1の論理アドレス範囲)が割り当てられている。つまり、第2の記憶領域には、第1の論理アドレス範囲内に属するLBAそれぞれが割り当てられている。S.M.A.R.T.ログデータ107bをリードまたはライトする場合には、制御部103は、論理/物理テーブル108aを参照することによって得られる、第1の論理アドレス範囲に属する各論理ブロックアドレスに対応する物理アドレスを用いて、第2の記憶領域をアクセスする。
例えば、S.M.A.R.T.ログデータ107bを構成する複数のログ項目には、それぞれLBAが割り当てられている。制御部103は、論理/物理テーブル108aを参照して、リード/ライトアクセス対象のログ項目に割り当てられたLBAに対応する物理アドレスを論理/物理テーブル108aから取得する。そして、制御部103は、取得した物理アドレスを用いてNAND記憶領域をアクセスし、取得した物理アドレスによって指定されるNAND記憶領域内の記憶場所に対するログ情報のリードまたはライトを実行する。
S.M.A.R.T.ログデータ107bに割り当てられた各LBAは、制御部103内で実行されるファームウエアがS.M.A.R.T.ログデータ107bをアクセスするためにローカルに使用されるものである。制御部103内で実行されるファームウエアはS.M.A.R.T.ログデータ107bをLBAをキーにしてアクセスことができるが、ホスト装置8は通常のRead又はWriteコマンドでS.M.A.R.T.ログデータ107bをアクセスすることはできない。
このように、第2の記憶領域にはLBAが割り当てられているので、S.M.A.R.T.ログデータ107bが格納されるNAND記憶領域内の物理的な記憶位置は固定ではなく、NAND記憶領域内の任意の記憶位置に変更することができる。SSD10内部においては、S.M.A.R.T.ログデータ107bのリード/ライトをユーザデータと同様の制御手順で制御することができる。
記憶容量104cと104dとの間の記憶領域には、例えば、記憶容量2MBの未使用の記憶領域が設定される。これは、LBAの最小記憶単位が8セクタであり、4KBに相当する記憶単位(大きな記憶単位は1MB)であるのに対して、実際のデータの最小記録単位は当然1セクタであるため、1MB以上の記憶容量の空き記憶領域を設けることで、S.M.A.R.Tログデータ107bと、記憶容量104d以下に記録されるデータとをそれぞれ独立して扱うためである。
記憶容量104dと104eとの間の記憶領域は、未使用であり特別な場合を除いて記
憶容量104dと104eは同値である。
記憶容量104eと104fとの間の記憶領域は、OEMに使用される記憶領域であり、上述したようにOEMの要求で決定される固有情報が書き込まれる。
記憶容量104fと104gとの間の記憶領域は、OEM又はユーザーに使用される記
憶領域であり、OEM又はユーザーの設定により情報が書き込まれる。
記憶容量104gの記憶領域は、ユーザーに使用される記憶領域であり、ユーザーの設定により情報が書き込まれる。
なお、記憶容量104a〜104gは、以下の式で表される関係を満たす。
記憶容量104a>記憶容量104b>記憶容量104c>記憶容量104d≧記憶容量104e≧記憶容量104f≧記憶容量104g
製造元(Vender)からの出荷時、記憶容量104d〜104gは同値となる。
NAND記憶領域の内、記憶容量ゼロから記憶容量104dまでの範囲の記憶領域は、ユーザデータを格納するための第3の記憶領域(ユーザ領域)として使用し得る。この第3の記憶領域には、第2の論理アドレス範囲が割り当てられる。ホスト装置8は第2の論理アドレス範囲内に属するLBAを用いて、NAND記憶領域に対するメモリアクセ要求をSSD10に送出する。制御部103は、ホスト装置8からのメモリアクセス要求を受信した場合、論理/物理テーブル108aを参照することによって得られる、メモリアクセス要求に含まれるLBAに対応する物理アドレスを用いて、第3の記憶領域をアクセスする。
すなわち、制御部103がホスト装置8からのメモリアクセス要求を受信した時、制御部103は、論理/物理テーブル108aを参照して、メモリアクセス要求に含まれるLBAに対応する物理アドレスを論理/物理テーブル108aから取得する。制御部103は、取得した物理アドレスを用いてNAND記憶領域をアクセスし、取得した物理アドレスによって指定されるNAND記憶領域内の記憶場所に対するユーザデータのリードまたはライトを実行する。
このように、本実施形態では、論理/物理テーブル108aを含む管理情報と、S.M.A.R.T.ログデータ107bとが異なる記憶領域にそれぞれ格納され、S.M.A.R.T.ログデータ107bを格納する第2記憶領域には、ユーザデータを格納する第3記憶領域に割り当てられたLBA群とは異なる専用のLBA群が割れ当てられている。したがって、制御部103は、S.M.A.R.T.ログデータ107bのリードおよびライトを、ユーザデータのリードおよびライトと同様の手順で容易に行うことが出来る。
<動作>
以下に、本実施形態の情報処理装置1の動作を各図を参照しつつ説明する。
図5は、SSD10の製造工程を示すフローチャートである。ここでは、SSD10の製造時に接続されるホスト装置8と電源7を用いる場合について説明する。
まず、SSD10に接続されたホスト装置8は、電源7をON状態にしてSSD10に電力を供給する(ステップS10)。
次に、ホスト装置8は、DRAM105等の動作の診断を指示する診断コマンドAをSSD10に対して送信する。SSD10の制御部103は、診断コマンドAを受信すると、DRAM105等の動作を診断するための診断処理Aを実行する(ステップS20)。SSD10は、診断処理Aの診断結果Aをホスト装置8に返し、ホスト装置8は、診断結果Aを保存する(ステップS11)。
次に、ホスト装置8は、記憶容量104a〜104eの間に相当する記憶領域に管理データ107a、論理/物理テーブル108a、S.M.A.R.T.ログ領域開始LBA等を書き込むための製品情報書き込みコマンドをSSD10に対して送信し、SSD10は、製品情報書き込みコマンドを受信すると、製品情報書き込みコマンドによって与えられる製品情報を保存する(ステップS21)。
次に、ホスト装置8は、NANDメモリ104A〜104Hの動作、及びLED22の点灯動作等の診断を指示する診断コマンドBをSSD10に対して送信する。SSD10の制御部103は、診断コマンドBを受信すると、NANDメモリ104A〜104Hの動作、及びLED22の点灯動作等を診断するための診断処理Bを実行する(ステップS22)。SSD10は、診断処理Bの診断結果Bをホスト装置8に返し、ホスト装置8は、診断結果Bを保存する(ステップS12)。
次に、ホスト装置8は、記憶容量104bと104cとの間の記憶領域へのS.M.A.R.T.ログデータ107bの書き込みを指示するログ管理データ書き込みコマンドをSSD10に送信する。SSD10は、ログ管理データ書き込みコマンドを受信すると、ログ管理データを保存する(ステップS23)。
次に、ホスト装置8は、SSD10からSignatureヘッダを受信すると、SSD10に対してリブート要求を送信し、SSD10は、通常起動する(ステップS24)。
次に、ホスト装置8は、記憶容量104e〜104fの間に相当する記憶領域に上述した固有情報を書き込むことを指示する固有情報書き込みコマンドをSSD10に対して送信し、SSD10は、固有情報書き込みコマンドを受信すると、固有情報を保存する(ステップS25)。
次に、ホスト装置8は、電源7をOFF状態にしてSSD10に対する電力供給を遮断し、SSD10の動作を終了する(ステップS13)。
上記した実施形態によれば、記憶容量104a〜104gを設定して情報を格納するようにしたため、情報を統括的に取り扱うことができる。
また、S.M.A.R.T.ログデータ107bを従来のように記憶容量104aと104bとの間の記憶領域に格納せずに、記憶容量104bと104cとの間の記憶領域に格納し、LBAをキーにしてアクセス可能としたことで、管理データ107a、論理/物理テーブル108aの設計を変更することなく、かつファームウエアを変更することなく、S.M.A.R.T.ログデータ107bの容量を製造時に変更することができる。
また、S.M.A.R.T.ログデータ107bを、NANDメモリ104A〜104Hの固定領域に格納せずに、論理/物理テーブル108aに対応付けられたメモリセルに格納するようにしたため、定期的にメモリセルの移動(リフレッシュ)が実行され、SLC−NANDメモリに比較して、一般に書き換え可能回数は劣るMLC−NANDメモリを用いた場合にも、特定のメモリセルの書き換え可能回数を不要に浪費することがない。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。

Claims (4)

  1. 情報処理装置本体と、
    前記情報処理装置内に収容される不揮発性半導体メモリドライブであって、不揮発性半導体メモリであって、所定の物理アドレス範囲が割り当てられた固定領域から構成され、論理ブロックアドレスそれぞれと不揮発性半導体メモリの物理アドレスそれぞれとの対応関係を示すアドレス管理テーブルを含む管理情報を格納する第1の記憶領域と、第1の論理アドレス範囲が割り当てられ、前記不揮発性半導体メモリドライブの動作状況を示すログデータを格納する第2の記憶領域とを含む不揮発性半導体メモリと、前記管理情報をリードまたはライトする場合には、前記所定の物理アドレス範囲に属する物理アドレスを用いて前記第1の記憶領域をアクセスし、前記ログデータをリードまたはライトする場合には、前記アドレス管理テーブルを参照することによって得られる、前記第1の論理アドレス範囲に属する各論理ブロックアドレスに対応する物理アドレスを用いて、前記第2の記憶領域をアクセスする制御手段とを含む不揮発性半導体メモリドライブとを具備する情報処理装置。
  2. 前記不揮発性半導体メモリは、第2の論理アドレス範囲が割り当てられ、ユーザデータを格納する第3の記憶領域をさらに含み、
    前記制御手段は、前記情報処理装置本体からのメモリアクセス要求を受信した場合、前記アドレス管理テーブルを参照することによって得られる、前記メモリアクセス要求に含まれる論理ブロックアドレスに対応する物理アドレスを用いて、前記第3の記憶領域をアクセスする請求項1記載の情報処理装置。
  3. 情報処理装置の外部記憶装置として使用される不揮発性半導体メモリドライブであって、
    不揮発性半導体メモリであって、所定の物理アドレス範囲が割り当てられた固定領域から構成され、論理ブロックアドレスそれぞれと不揮発性半導体メモリの物理アドレスそれぞれとの対応関係を示すアドレス管理テーブルを含む管理情報を格納する第1の記憶領域と、第1の論理アドレス範囲が割り当てられ、前記不揮発性半導体メモリドライブの動作状況を示すログデータを格納する第2の記憶領域とを含む不揮発性半導体メモリと、
    前記管理情報をリードまたはライトする場合には、前記所定の物理アドレス範囲に属する物理アドレスを用いて前記第1の記憶領域をアクセスし、前記ログデータをリードまたはライトする場合には、前記アドレス管理テーブルを参照することによって得られる、前記第1の論理アドレス範囲に属する各論理ブロックアドレスに対応する物理アドレスを用いて、前記第2の記憶領域をアクセスする制御手段とを具備する不揮発性半導体メモリドライブ。
  4. 前記不揮発性半導体メモリは、第2の論理アドレス範囲が割り当てられ、ユーザデータを格納する第3の記憶領域をさらに含み、
    前記制御手段は、前記情報処理装置からのメモリアクセス要求を受信した場合、前記アドレス管理テーブルを参照することによって得られる、前記メモリアクセス要求に含まれる論理ブロックアドレスに対応する物理アドレスを用いて、前記第3の記憶領域をアクセスする請求項3記載の不揮発性半導体メモリドライブ。
JP2009503769A 2008-02-29 2008-11-07 情報処理装置及び不揮発性半導体メモリドライブ Pending JP2010518463A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008050806 2008-02-29
PCT/JP2008/070718 WO2009107284A1 (en) 2008-02-29 2008-11-07 Information processing apparatus and nonvolatile semiconductor memory drive

Publications (1)

Publication Number Publication Date
JP2010518463A true JP2010518463A (ja) 2010-05-27

Family

ID=41015692

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009503769A Pending JP2010518463A (ja) 2008-02-29 2008-11-07 情報処理装置及び不揮発性半導体メモリドライブ

Country Status (2)

Country Link
JP (1) JP2010518463A (ja)
WO (1) WO2009107284A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015032317A (ja) * 2013-08-06 2015-02-16 慧榮科技股▲分▼有限公司 データ記憶装置とアクセス制御方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08235028A (ja) * 1995-02-28 1996-09-13 Toshiba Corp フラッシュメモリカードのデータ管理方法およびそのデータ管理方法を使用したデータ処理装置
JP2005071068A (ja) * 2003-08-25 2005-03-17 Renesas Technology Corp 記憶装置
JP2005222534A (ja) * 2004-02-03 2005-08-18 Samsung Electronics Co Ltd フラッシュメモリのデータ管理装置及び方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08235028A (ja) * 1995-02-28 1996-09-13 Toshiba Corp フラッシュメモリカードのデータ管理方法およびそのデータ管理方法を使用したデータ処理装置
JP2005071068A (ja) * 2003-08-25 2005-03-17 Renesas Technology Corp 記憶装置
JP2005222534A (ja) * 2004-02-03 2005-08-18 Samsung Electronics Co Ltd フラッシュメモリのデータ管理装置及び方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015032317A (ja) * 2013-08-06 2015-02-16 慧榮科技股▲分▼有限公司 データ記憶装置とアクセス制御方法

Also Published As

Publication number Publication date
WO2009107284A1 (en) 2009-09-03

Similar Documents

Publication Publication Date Title
JP4825789B2 (ja) 情報処理装置及び不揮発性半導体メモリドライブ
JP4372189B2 (ja) 情報処理装置及び不揮発性半導体メモリドライブ
JP4987962B2 (ja) 情報処理装置及び不揮発性半導体メモリドライブ
US7870446B2 (en) Information processing apparatus and nonvolatile semiconductor memory drive
US20090222613A1 (en) Information processing apparatus and nonvolatile semiconductor memory drive
JP4679656B2 (ja) 情報処理装置及び不揮発性半導体メモリドライブ
US20090228640A1 (en) Information processing apparatus and non-volatile semiconductor memory drive
US20090228641A1 (en) Information processing apparatus and non-volatile semiconductor memory drive
JP4886846B2 (ja) 情報処理装置および不揮発性半導体メモリドライブ
US20090222615A1 (en) Information Processing Apparatus and Nonvolatile Semiconductor Memory Drive
US8364930B2 (en) Information processing apparatus and storage drive adapted to perform fault analysis by maintenance of tracing information
US8099544B2 (en) Information processing apparatus and nonvolatile semiconductor memory drive
JP2009289278A (ja) 多値型半導体記憶装置
US20090228762A1 (en) Inforamtion Precessing Apparatus and Non-Volatile Semiconductor Memory Drive
US20090222614A1 (en) Information processing apparatus and nonvolatile semiconductor memory drive
JP2010518463A (ja) 情報処理装置及び不揮発性半導体メモリドライブ
JP4875148B2 (ja) 情報処理装置および記憶メディアドライブ
JP5296172B2 (ja) 不揮発性半導体メモリドライブ
JP2010511208A (ja) 情報処理装置及び不揮発性半導体メモリドライブ
JP2010513993A (ja) 情報処理装置および不揮発性半導体メモリドライブ
JP4875208B2 (ja) 情報処理装置
JP5498529B2 (ja) 記憶装置及び情報処理装置
JP2010512559A (ja) 情報処理装置及び不揮発性半導体メモリドライブ
JP2010513994A (ja) 情報処理装置および不揮発性半導体メモリドライブ
JP4996768B2 (ja) 記憶装置及びssd

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110830

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120110