JPH07129333A - 半導体ディスク装置 - Google Patents

半導体ディスク装置

Info

Publication number
JPH07129333A
JPH07129333A JP5292822A JP29282293A JPH07129333A JP H07129333 A JPH07129333 A JP H07129333A JP 5292822 A JP5292822 A JP 5292822A JP 29282293 A JP29282293 A JP 29282293A JP H07129333 A JPH07129333 A JP H07129333A
Authority
JP
Japan
Prior art keywords
address
memory
block
unit
register
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
JP5292822A
Other languages
English (en)
Inventor
Yukihiko Kitazawa
幸彦 北沢
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP5292822A priority Critical patent/JPH07129333A/ja
Publication of JPH07129333A publication Critical patent/JPH07129333A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【構成】 第1のセクタアドレス変換部104は、ホス
トからのシリンダ番号に対応したセクタアドレスを変換
する。第2のセクタアドレス変換部105は、ホストか
らのヘッド番号に対応したセクタアドレスを変換する。
変換されたセクタアドレスとホストからのセクタ番号と
が加算器106で加算され、この加算値がメモリアドレ
ス変換部107でメモリアドレスに変換される。マスク
制御部109は、マイクロプロセッサ1からのマスクイ
ネーブル信号に基づき、ブロックサイズマスク部108
から出力されるマスクビットでマスクした場合は、メモ
リ部8の書換えブロックのブロック内先頭メモリアドレ
スをメモリアドレスレジスタ&カウンタ7にセットす
る。また、マスクビットでマスクしない場合は、メモリ
アドレスをセットする。 【効果】 アドレス変換を高速に行うことができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、フラッシュメモリを用
いた半導体ディスク装置に関し、特に、ホストから与え
られたディスクアドレスをフラッシュメモリで構成され
たメモリ部をアクセスするためのメモリアドレスに変換
する変換方式と、メモリ部のブロックの書換え回数の管
理に関する。
【0002】
【従来の技術】半導体ディスク装置とは、半導体メモリ
素子で構成されているが、ホスト側(入出力制御装置)
から見た場合、見かけ上、磁気ディスク装置と同様のイ
ンタフェースとなっており、ホスト側からは磁気ディス
ク装置への操作と全く同じ手順でアクセスすることがで
きる装置である。即ち、磁気ディスク装置の操作手順
と、半導体ディスク装置固有の操作手順との変換は、半
導体ディスク装置内の制御装置が行う。従って、半導体
ディスク装置は、ホスト側で実行するソフトウェアから
は、磁気ディスク装置と全く同じ扱いとなり、オペレー
ティングシステムのデータ管理機能やユーザのプログラ
ムに全く影響を及ぼすことなく半導体記憶媒体の持つ高
速性を利用することができる。
【0003】しかしながら、従来の半導体ディスク装置
は、揮発性メモリを使用していたため、ディスク装置と
しての不揮発性を備えるために主電源がオフした場合に
電池等によりバックアップする必要がある。ところが、
このようなバックアップ方式では長期の電源断等にはそ
のバックアップを保証することができず、完全な不揮発
性を保証できるものではなかった。
【0004】一方、近年、不揮発性メモリ素子として、
フラッシュメモリ、即ちフラッシュEEPROMが実用
化されるようになり、このメモリ素子を使用した半導体
ディスク装置の開発が盛んに行われている。このフラッ
シュメモリとは、EEPROM(電気的消去、再書込み
可能リード・オンリ・メモリ)の一種であり、電気的に
消去ができ、かつ、バイト毎にプログラム書込みがで
き、また電源を必要とせず、メモリの内容が保証できる
という特長を持ち、半導体ディスク装置として最適な特
性を有している。
【0005】
【発明が解決しようとする課題】しかしながら、フラッ
シュメモリは、上述した長所を有する反面、次のような
短所を有している。即ち、メモリへの書込みの際に、上
書きができないため、一旦消去してからブロック毎に書
込み(データを書換える)を行う必要がある。そして、
この書換えブロックの大きさは、セクタ長に比べて大き
いものになっている。そこで、ホストからライトコマン
ドを受信した場合、先ずホストから指定されたディスク
アドレスを対応するメモリ部の書換えブロックの先頭メ
モリアドレスに変換し、このメモリアドレスに基づきラ
イト処理を行う必要がある。また、フラッシュメモリ素
子には、書換え回数制限があり、所定の書換え制限回数
を超えると、書換えが保証されなくなるという性質をも
っている。
【0006】ところが、このようなアドレス変換や書換
え回数の管理を、例えばマイクロプログラムで行うこと
を考えた場合、そのステップ数が多いため、メモリ部の
データ転送速度が高ければ、相対的にそのアドレス変換
と書換え回数の管理のための処理時間の損失が大きいも
のとなってしまい、従って、高速アクセスが可能という
半導体ディスク装置の特長を損なってしまうという問題
点があった。
【0007】本発明は、上記従来の問題点を解決するた
めになされたもので、高速アクセスが可能な半導体ディ
スク装置を提供することを目的とする。
【0008】
【課題を解決するための手段】第1発明の半導体ディス
ク装置は、メモリ部にフラッシュメモリを用い、ホスト
からディスクアドレスとしてシリンダ番号とヘッド番号
を入力し、このディスクアドレスに対応した前記メモリ
部のデータをアクセスする半導体ディスク装置におい
て、前記ホストからのシリンダ番号に対応するセクタア
ドレスを出力する第1のセクタアドレス変換部と、前記
ホストからのヘッド番号に対応するセクタアドレスを出
力する第2のセクタアドレス変換部と、前記第1のアド
レス変換部と、前記第2のアドレス変換部の出力と、前
記ホストからのセクタ番号とを加算する加算器と、前記
加算器の出力に対応する前記メモリ部のメモリアドレス
を出力するメモリアドレス変換部と、前記メモリ部の書
換えブロックサイズに対応したマスクビットをセットす
るブロックサイズマスク部と、前記ブロックサイズマス
ク部でマスクビットがセットされない場合は、前記メモ
リ部のメモリアドレスを出力し、前記ブロックサイズマ
スク部でマスクビットがセットされた場合は、ブロック
内先頭メモリアドレスを出力するマスク制御部とを備え
たことを特徴とするものである。
【0009】第2発明の半導体ディスク装置は、第1発
明の半導体ディスク装置において、マスク制御部から出
力されるブロック内先頭メモリアドレスに基づき、メモ
リ部における任意のブロックの書換回数を保持する書換
回数記憶部と、書換制限回数の値を保持する制限回数レ
ジスタと、任意のブロックの書き換えを行う場合、前記
書換回数記憶部に記憶されている当該ブロックの書換回
数と、前記書換制限回数とを比較し、書換回数が書換制
限回数を超えている場合は、エラー通知を出力する比較
部と、前記比較部によって書換回数が書換制限回数を超
えていない場合は、前記書換回数記憶部の書換回数を更
新する書換回数更新部とを備えたことを特徴とするもの
である。
【0010】
【作用】第1発明の半導体ディスク装置においては、ホ
ストからのシリンダ番号、ヘッド番号、セクタ番号は、
各々シリンダレジスタ、ヘッドレジスタ、セクタレジス
タにセットされる。第1のセクタアドレス変換部は、シ
リンダレジスタにセットされたシリンダ番号に対応した
セクタアドレスを出力し、第2のセクタアドレス変換部
は、ヘッドレジスタにセットされたヘッド番号に対応し
たセクタアドレスを出力する。そして、これらのセクタ
アドレスとセクタレジスタにセットされたセクタ番号
は、加算器で加算され、更に、メモリアドレス変換部で
メモリアドレスに変換される。
【0011】マスク制御部は、マスクイネーブル信号が
“1”であった場合は、ブロックサイズマスク部から出
力される書換えブロックサイズ分のマスクビットで、メ
モリアドレス変換部からのメモリアドレスをマスクし、
ブロック内先頭メモリアドレスとしてメモリアドレスレ
ジスタ&カウンタにセットする。一方、マスクイネーブ
ル信号が“0”であった場合は、メモリアドレス変換部
からのメモリアドレスをそのまま、メモリアドレスとし
てメモリアドレスレジスタ&カウンタにセットする。例
えば、ホストからのリードコマンド受信時では、マスク
ビットでマスクしないメモリアドレスをメモリアドレス
レジスタ&カウンタにセットし、ホストからのライトコ
マンド受信時におけるメモリ部のデータをライト用バッ
ファに退避させる場合では、ブロック内先頭メモリアド
レスをメモリアドレスレジスタ&カウンタにセットす
る。
【0012】また、第2発明の半導体ディスク装置にお
いては、メモリ部における任意のブロックにライトを行
う場合、書換回数制御部は、先ず、アドレス変換部から
のブロック内先頭メモリアドレスに基づき、書換回数記
憶部に格納されている該当ブロックの書換回数をリード
レジスタに読出す。比較部は、このリードレジスタに読
出した書換回数の値と、制限回数レジスタの書換制限回
数の値とを比較し、書換回数が書換制限回数以上であっ
た場合は、書換回数エラーとしてマイクロプロセッサに
通知を行う。一方、書換回数が書換制限回数を下回って
いた場合は、これを書換回数更新部に通知し、書換回数
更新部は、そのブロックの書換回数を+1して書換回数
記憶部に書込む。
【0013】
【実施例】以下、本発明の実施例を図面を用いて詳細に
説明する。図1は本発明の半導体ディスク装置の第1実
施例を示すブロック図である。図の装置は、マイクロプ
ロセッサ1、マイクロプログラム格納用ROM2、イン
タフェース制御部3、バッファ4、バッファアドレスレ
ジスタ&カウンタ5、アドレス変換部6、メモリアドレ
スレジスタ&カウンタ7、メモリ部8、ライト用バッフ
ァ9、DMA(ダイレクト・メモリ・アクセス)コント
ローラ10、ベリファイコントローラ11からなる。
【0014】マイクロプロセッサ1は、半導体ディスク
装置としての各種の処理を行うもので、マイクロプログ
ラム格納用ROM2は、このマイクロプロセッサ1が実
行するためのマイクロプログラムを格納するROMであ
る。インタフェース制御部3は、ホストとのインタフェ
ース制御を行うための制御を行う制御部である。また、
バッファ4は、ホストとのデータ転送を行うためのバッ
ファであり、バッファアドレスレジスタ&カウンタ5
は、このバッファ4に対してアドレスを与えるためのデ
バイスである。アドレス変換部6は、本実施例の特徴を
なすものであり、これについては後に詳述する。
【0015】メモリアドレスレジスタ&カウンタ7は、
アドレス変換部6で変換されたアドレスに基づき、メモ
リ部8およびライト用バッファ9に対してアドレスを与
えるためのデバイスである。メモリ部8は、フラッシュ
メモリで構成され、半導体ディスク装置のメモリ部をな
すデバイスである。また、ライト用バッファ9は、メモ
リ部8の1ブロック分のデータを、その書換え時に退避
させるためのS(スタティック)RAM等からなるバッ
ファである。更に、ベリファイコントローラ11は、メ
モリ部8のイレーズおよびプログラミング後のベリファ
イ処理を制御するためのコントローラである。
【0016】アドレス変換部6は、シリンダレジスタ1
01、ヘッドレジスタ102、セクタレジスタ103、
第1のセクタアドレス変換部104、第2のセクタアド
レス変換部105、加算器106、メモリアドレス変換
部107、ブロックサイズマスク部108、マスク制御
部109からなる。シリンダレジスタ101は、ホスト
からのシリンダ番号をマイクロプロセッサ1がセットす
るレジスタ、ヘッドレジスタ102は、ホストからのヘ
ッド番号をマイクロプロセッサ1がセットするレジス
タ、セクタレジスタ103は、ホストからのセクタ番号
をマイクロプロセッサ1がセットするレジスタである。
【0017】また、第1のセクタアドレス変換部104
は、ROM等から構成され、シリンダレジスタ101の
内容から、それに対応するセクタアドレスに変換する変
換テーブル、第2のセクタアドレス変換部105は、第
1のセクタアドレス変換部104と同様に、ROM等か
ら構成され、ヘッドレジスタ102の内容から、それに
対応するセクタアドレスに変換する変換テーブルであ
る。加算器106は、第1のセクタアドレス変換部10
4の出力と第2のセクタアドレス変換部105の出力
と、セクタレジスタ103の出力とを加算し、その加算
結果をメモリアドレス変換部107に出力する加算器で
ある。
【0018】そして、メモリアドレス変換部107は、
ROM等からなり、加算器106の出力したセクタアド
レスからメモリアドレスに変換する変換テーブルであ
る。また、ブロックサイズマスク部108は、マイクロ
プロセッサ1によりメモリ部8の書換えブロックサイズ
に対応するマスクビットをセットするためのブロックサ
イズマスクレジスタである。マスク制御部109は、マ
スクイネーブル信号(MASK EN)に基づき、メモ
リアドレス変換部107の出力したメモリアドレスをブ
ロックサイズマスク部108の出力でマスクし、その出
力をメモリアドレスレジスタ&カウンタ7にセットする
制御部である。
【0019】次に上記構成の半導体ディスク装置の動作
について説明する。図2は、半導体ディスク装置のリー
ドコマンド受信時の動作フローチャートである。先ず、
リードコマンド受信時においては、ホストからリードコ
マンドを受信すると(ステップS1)、その受信したシ
リンダ番号、ヘッド番号、セクタ番号をマイクロプロセ
ッサ1がインタフェース制御部3よりリードし、これら
の番号を、シリンダレジスタ101、ヘッドレジスタ1
02、セクタレジスタ103に格納する。これにより、
アドレス変換部6はディスクアドレスをメモリアドレス
に変換する(ステップS2)。尚、このアドレス変換動
作は、後で詳述する。
【0020】その後、アドレス変換部6で求められたメ
モリアドレスより、DMA制御でホストから指定された
セクタ数分のデータをメモリ部8より読出し、インタフ
ェース制御部3配下のバッファ4にライトする(ステッ
プS3)。バッファ4にデータが格納されると、インタ
フェース制御部3は、バッファ4よりデータを読出し、
これをホストに対して転送する(ステップS4)。そし
て、全てのデータ転送が終了すると、インタフェース制
御部3がホストに対して終了割込みを上げる(ステップ
S5)。
【0021】次にライトコマンド受信時の動作を説明す
る。図3はそのフローチャートである。ライトコマンド
受信時では、先ず上記リード時の場合と同様に、ホスト
よりライトコマンドを受信すると(ステップS1)、マ
イクロプロセッサ1は、ホストから受信したシリンダ番
号、ヘッド番号、セクタ番号を、インタフェース制御部
3内の図示しないレジスタよりリードし、これをアドレ
ス変換部6のシリンダレジスタ101、ヘッドレジスタ
102、セクタレジスタ103に格納する。これによ
り、アドレス変換部6は、与えられたディスクアドレス
に該当するブロックの先頭アドレスへと変換する(ステ
ップS2)。尚、このアドレス変換動作も、後で詳述す
る。
【0022】書換えブロックに対応する先頭メモリアド
レスが求められると、DMA制御で、その書換えブロッ
クのデータを読出し、ライト用バッファ9にライトする
(ステップS3)。書換えブロックの全てのデータが、
ライト用バッファ9に退避されると、ホストからの書換
えデータを、インタフェース制御部3配下のバッファ4
に格納する(ステップS4)。そして、上記のデータを
退避させたライト用バッファ9上で書換えを行うため、
アドレス変換部6からの出力された、その書換え領域に
対応するメモリアドレスをメモリアドレスレジスタ&カ
ウンタ7にセットする(ステップS5)。
【0023】書換え領域に対応するメモリアドレスがセ
ットされると、DMAコントローラ10は、書換えデー
タをDMA制御でバッファ4より読出し、これをライト
用バッファ9にライトする(ステップS6)。ライト用
バッファ9上での書換えが終了すると、上述したメモリ
部8の書換えブロックに対して、イレーズ処理および正
常にイレーズされたかどうかを検証するため、ベリファ
イコントローラ11により、ベリファイ処理が実行され
る(ステップS7)。
【0024】その後、正常にイレーズ処理が終了する
と、上記のメモリ部8の書換えブロックに対して、上記
の該当ブロック内先頭メモリアドレスにより、DMA制
御でライト用バッファ9からデータをリードし、これを
メモリ部8にプログラミングする(ステップS8)。そ
して、正常にプログラミングが行われると、ホストに対
して終了割込みを上げ(ステップS9)、一連のライト
動作を終了する。
【0025】次に、アドレス変換動作を説明する。図4
は、アドレス変換の説明図である。最初に、ライト時に
おけるアドレス変換について説明する。ライト時におい
ては、ディスクアドレスから該当する書換えブロックの
先頭メモリアドレスへの変換と、ディスクアドレスをそ
のまま対応するメモリアドレスに変換する2通りの変換
がある。
【0026】先ず、ディスクアドレスから該当するメモ
リ部8のブロック先頭メモリアドレスへのアドレス変換
の場合、マイクロプロセッサ1は、インタフェース制御
部3内のレジスタより、シリンダ番号、ヘッド番号、セ
クタ番号のディスクアドレスをリードし、各々シリンダ
レジスタ101、ヘッドレジスタ102、セクタレジス
タ103にセットする。これらレジスタ101〜103
にディスクアドレスがセットされると、第1のセクタア
ドレス変換部104および第2のセクタアドレス変換部
105により、各々シリンダ番号に対応するセクタアド
レス、ヘッド番号に対応するセクタアドレスに変換さ
れ、セクタレジスタ103の内容と共に加算器106で
加算される。
【0027】ここで、図中に示すように、C,H,S
を、各々ホストから受信したシリンダ番号、ヘッド番
号、セクタ番号(/トラック)とし、Hn,Snを、各
々半導体ディスク装置としてのヘッド数、1トラック当
りのセクタ数とすると、第1のセクタアドレス変換部1
04のアドレス変換処理は、C×Hn×Sn、第2のセ
クタアドレス変換部105のアドレス変換処理は、H×
Snと見なされる。そして、セクタアドレスを示す加算
器106の出力は、C×Hn×Sn+H×Sn+Sとな
る。
【0028】加算器106の出力から、メモリアドレス
変換部107により、対応するメモリアドレスに変換さ
れる。即ち、このアドレス変換は、 {セクタアドレス(加算器106の出力)−1}×L 但し、Lはセクタ長(バイト単位)である。と見なすこ
とができる。そして、予め、マイクロプロセッサ1によ
りセットされていたブロックサイズマスク部108の内
容により、マスク制御部109でマスクし、その結果、
該当ブロックの先頭メモリアドレスが得られ、これがメ
モリアドレスレジスタ&カウンタ7にセットされる。
【0029】次に、ディスクアドレスから、そのディス
クアドレスに対応するメモリアドレスへの変換である
が、これは、上述したデータのライト用バッファ9への
退避時に既に求められているメモリアドレス変換部10
7の出力を、マスクイネーブル信号によりマスクするこ
となく、そのままマスク制御部109から出力し、メモ
リアドレスレジスタ&カウンタ7にセットすることで行
うことができる。
【0030】例えば、マスクイネーブル信号=1の場
合、マスク制御部109はメモリアドレス変換部107
からのメモリアドレスをブロックサイズマスク部108
の出力でマスクする。従って、マスク制御部109から
の出力は、メモリアドレスでブロックサイズ分の下位ビ
ットがマスクされたブロック先頭メモリアドレスとな
る。また、マスクイネーブル信号=0の場合、マスク制
御部109は、メモリアドレス変換部107からのメモ
リアドレスをそのまま出力する。
【0031】図5に、ブロックサイズとマスク対象ビッ
トとの関係を示す。例えば、ブロックサイズが512B
(ビット)であった場合は、ブロックサイズマスク部1
08のマスク対象ビットは、下位9ビットであり、ブロ
ックサイズが1KBである場合は、マスク対象ビットは
下位10ビットといったように、ブロックサイズが異な
る場合も容易に対応が可能である。
【0032】次に、リード時におけるアドレス変換は、
ライト時のディスクアドレスから対応するメモリ部8の
メモリアドレスを求める場合と同様に、先ず、マイクロ
プロセッサ1がインタフェース制御部3内のレジスタよ
り、ホストから与えられたディスクアドレスをリード
し、シリンダレジスタ101、ヘッドレジスタ102、
セクタレジスタ103にセットする。各レジスタ101
〜103にディスクアドレスがセットされると、第1の
セクタアドレス変換部104および第2のセクタアドレ
ス変換部105により、各々シリンダ番号に対応するセ
クタアドレス、ヘッド番号に対応するセクタアドレスに
変換され、これらのセクタアドレスとセクタレジスタ1
03の出力とが加算器106で加算される。そして、加
算器106の出力がメモリアドレス変換部107で、対
応するメモリアドレスに変換され、マスク制御部109
では、このメモリアドレスをマスクせず、そのままの出
力がメモリアドレスレジスタ&カウンタ7にセットされ
る。
【0033】図6に、上記のリード/ライト時のアドレ
ス変換の原理を示す。即ち、ライトおよびリードのいず
れの場合であっても、マイクロプロセッサ1は、最初に
ホストからのディスクアドレスを各レジスタ101〜1
03にセットするだけで、図示のようなメモリアドレス
やブロック先頭アドレスに変換されるものである。
【0034】次に、書換回数制御部を備えた第2の実施
例を説明する。図7は第2の実施例を示すブロック図で
ある。図において、書換回数制御部12は、アドレス変
換部6から出力されたブロック内先頭メモリアドレスに
基づき、メモリ部8の任意のブロックの書換回数を管理
するもので、以下のような構成となっている。
【0035】図8は、書換回数制御部12の内部構成を
示すブロック図である。書換回数制御部12は、書換回
数記憶部201、リードレジスタ202、制限回数レジ
スタ203、比較部204、書換回数更新部205から
なる。書換回数記憶部201は、NVRAM等の不揮発
メモリで構成され、アドレス変換部6におけるマスク制
御部109から出力されるブロック内先頭メモリアドレ
スに基づき、メモリ部8における任意のブロックの書換
回数を保持するものである。リードレジスタ202は、
書換回数記憶部201から任意のブロックの書換回数を
リードして保持するためのレジスタであり、制限回数レ
ジスタ203は、マイクロプロセッサ1により、任意の
書換制限回数を設定するためのレジスタである。
【0036】図9に、制限回数レジスタ203の内容と
実際の書換制限回数の関係を示す。図のように、書換制
限回数が103 回で制限回数レジスタ203の値が
“0”、104 回で“1”といったように、任意の書換
制限回数を設定できるようになっている。比較部204
は、任意のブロックの書き換えを行う場合に、リードレ
ジスタ202からそのブロックの書換回数を読出すと共
に、制限回数レジスタ203から書換制限回数を読出し
てこれらの値を比較し、その結果、書換回数が書換制限
回数を超えていない場合は、書換回数更新部205に対
して正常通知を行い、一方、書換回数が書換制限回数を
超えている場合は、マイクロプロセッサ1にエラー通知
を出力する機能を有している。
【0037】書換回数更新部205は、+1制御部20
6とライトレジスタ207とから構成されている。+1
制御部206は、比較部204から正常通知を受け取っ
た場合、リードレジスタ202の値を+1してライトレ
ジスタ207に書込む機能を有している。ライトレジス
タ207は、+1された書換回数を保持し、対応するブ
ロックアドレスに書込むためのレジスタである。
【0038】次に第2実施例の動作を説明する。ライト
時においては、先ず、書換ブロックのデータのライト用
バッファ9への退避に先立ってディスクアドレスから該
当するメモリ部8における先頭メモリアドレスへのアド
レス変換と、そのブロックの書換回数チェックおよび更
新が行われる。
【0039】図10は、その動作説明図である。先ず、
ディスクアドレスから、マスクイネーブル信号(MAS
K EN)が“0”の場合はメモリアドレスが得られ、
マスクイネーブル信号が“1”の場合は、ブロック内先
頭メモリアドレスが得られるのは、上記第1実施例と同
様であるため、ここでの詳細な説明は省略する。
【0040】そして、ブロック内先頭メモリアドレス
は、メモリアドレスレジスタ&カウンタ7にセットされ
るが、それと同時に、このブロック内先頭メモリアドレ
スのブロックアドレス分をアドレスとして書換回数記憶
部201をアクセスし、そのブロックの書換回数をリー
ドし、これをリードレジスタ202に保持する。次い
で、比較部204は、リードレジスタ202に保持され
た値と、予め任意の書換制限回数が設定されている制限
回数レジスタ203の値とを比較する。この比較の結果
リードレジスタ202の値が制限回数レジスタ203の
値を超えていた場合は、マイクロプロセッサ1に対して
制限回数エラーの通知を行う。マイクロプロセッサ1
は、このエラー通知を受信すると、ホストに対してライ
トコマンドの終了割込みを上げ、ステータスとして書換
回数エラー報告を行う。
【0041】また、リードレジスタ202の値が制限回
数以下の場合は、+1制御部205に対して正常通知を
行い、+1制御部205は、リードレジスタ202の値
を更新(+1)し、これをライトレジスタ207に保持
する。そして、ライトレジスタ207の内容を書換回数
記憶部201の該当するブロックアドレスにライトす
る。また、書換回数のチェックおよび更新が終了した後
の動作は、上記第1実施例と同様であるため、ここでの
説明は省略する。更に、リード時の動作も上記第1実施
例と同様であり、その説明は省略する。
【0042】
【発明の効果】以上説明したように、第1発明の半導体
ディスク装置によれば、ホストからのシリンダ番号とヘ
ッド番号とに対応したセクタアドレスを求め、これらの
セクタアドレスと、ホストからのセクタ番号とを加算
し、この加算値に対応したメモリアドレスを求め、これ
をメモリ部の書換えブロックに対応したマスクビットで
マスクするようにしたので、半導体ディスク装置として
のアドレス変換が高速に行え、不揮発性でかつ高速アク
セスが可能な半導体ディスク装置を提供することが可能
となる。しかも、ブロックマスクサイズ部の設定値を変
更することにより、異なるブロックサイズのメモリデバ
イスにも容易に対応することができる。
【0043】また、第2発明の半導体ディスク装置によ
れば、第1発明の半導体ディスク装置に加えて、任意の
ブロックの書換回数を記憶する書換回数記憶部と、予め
設定した書換制限回数を保持する制限回数レジスタを設
け、これらの値を比較部で比較して書換回数の管理を行
うようにしたので、第1発明の効果に加えて、書換回数
の管理も高速に行うことができる。更に、制限回数レジ
スタの設定値を変更することにより、異なる書換制限回
数のメモリデバイスにも簡単に対応することができる。
【図面の簡単な説明】
【図1】本発明の第1実施例における半導体ディスク装
置のブロック図である。
【図2】本発明の半導体ディスク装置におけるリードコ
マンド受信時の動作フローチャートである。
【図3】本発明の半導体ディスク装置におけるライトコ
マンド受信時の動作フローチャートである。
【図4】本発明の半導体ディスク装置におけるアドレス
変換の説明図である。
【図5】本発明の半導体ディスク装置におけるブロック
サイズとマスクビットとの関係を示す図である。
【図6】本発明の半導体ディスク装置におけるアドレス
変換の原理説明図である。
【図7】本発明の第2実施例における半導体ディスク装
置のブロック図である。
【図8】本発明の第2実施例における書換回数制御部の
内部構成図である。
【図9】本発明の第2実施例における書換制限回数と制
限回数レジスタの内容との関係を示す図である。
【図10】本発明の第2実施例の動作説明図である。
【符号の説明】
6 アドレス変換部 8 メモリ部 12 書換回数制御部 101 シリンダレジスタ 102 ヘッドレジスタ 103 セクタレジスタ 104 第1のセクタアドレス変換部 105 第2のセクタアドレス変換部 106 加算器 107 メモリアドレス変換部 108 ブロックサイズマスク部 109 マスク制御部 201 書換回数記憶部 203 制限回数レジスタ 204 比較部 205 書換回数更新部

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 メモリ部にフラッシュメモリを用い、ホ
    ストからディスクアドレスとしてシリンダ番号とヘッド
    番号を入力し、このディスクアドレスに対応した前記メ
    モリ部のデータをアクセスする半導体ディスク装置にお
    いて、 前記ホストからのシリンダ番号に対応するセクタアドレ
    スを出力する第1のセクタアドレス変換部と、 前記ホストからのヘッド番号に対応するセクタアドレス
    を出力する第2のセクタアドレス変換部と、 前記第1のアドレス変換部と、前記第2のアドレス変換
    部の出力と、前記ホストからのセクタ番号とを加算する
    加算器と、 前記加算器の出力に対応する前記メモリ部のメモリアド
    レスを出力するメモリアドレス変換部と、 前記メモリ部の書換えブロックサイズに対応したマスク
    ビットをセットするブロックサイズマスク部と、 前記ブロックサイズマスク部でマスクビットがセットさ
    れない場合は、前記メモリ部のメモリアドレスを出力
    し、前記ブロックサイズマスク部でマスクビットがセッ
    トされた場合は、ブロック内先頭メモリアドレスを出力
    するマスク制御部とを備えたことを特徴とする半導体デ
    ィスク装置。
  2. 【請求項2】 マスク制御部から出力されるブロック内
    先頭メモリアドレスに基づき、メモリ部における任意の
    ブロックの書換回数を保持する書換回数記憶部と、 書換制限回数の値を保持する制限回数レジスタと、 任意のブロックの書き換えを行う場合、前記書換回数記
    憶部に記憶されている当該ブロックの書換回数と、前記
    書換制限回数とを比較し、書換回数が書換制限回数を超
    えている場合は、エラー通知を出力する比較部と、 前記比較部によって書換回数が書換制限回数を超えてい
    ない場合は、前記書換回数記憶部の書換回数を更新する
    書換回数更新部とを備えたことを特徴とする請求項1記
    載の半導体ディスク装置。
JP5292822A 1993-10-28 1993-10-28 半導体ディスク装置 Pending JPH07129333A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5292822A JPH07129333A (ja) 1993-10-28 1993-10-28 半導体ディスク装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5292822A JPH07129333A (ja) 1993-10-28 1993-10-28 半導体ディスク装置

Publications (1)

Publication Number Publication Date
JPH07129333A true JPH07129333A (ja) 1995-05-19

Family

ID=17786800

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5292822A Pending JPH07129333A (ja) 1993-10-28 1993-10-28 半導体ディスク装置

Country Status (1)

Country Link
JP (1) JPH07129333A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001337786A (ja) * 2000-05-26 2001-12-07 Matsushita Electric Ind Co Ltd 記憶装置用アダプタ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001337786A (ja) * 2000-05-26 2001-12-07 Matsushita Electric Ind Co Ltd 記憶装置用アダプタ

Similar Documents

Publication Publication Date Title
US5966720A (en) Flash memory accessed using only the logical address
US5832493A (en) Flash file management system
US6134151A (en) Space management for managing high capacity nonvolatile memory
US7424593B2 (en) Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
JP3898305B2 (ja) 半導体記憶装置、半導体記憶装置の制御装置及び制御方法
JP3171901B2 (ja) 不揮発性メモリカードの書換え方法
JP2004342126A (ja) 複数のデバイスへ同時書き込み操作を行うことにより高まるフラッシュメモリデバイスにおけるメモリ性能
US5715423A (en) Memory device with an internal data transfer circuit
JPH08328762A (ja) 半導体ディスク装置及びそのメモリ管理方法
JP2003257132A (ja) 1回プログラム可能な不揮発性メモリデバイスのファイル管理
JP3421581B2 (ja) 不揮発性半導体メモリを用いた記憶装置
JP2768618B2 (ja) 半導体ディスク装置
JP2003076605A (ja) ブロック消去型不揮発メモリを搭載した半導体記憶装置とそのデータの書込み・読出し方法
JP2000276402A (ja) フラッシュメモリ駆動方法及びフラッシュメモリ装置
JPH07153284A (ja) 不揮発性半導体記憶装置及びその制御方法
JPH07129333A (ja) 半導体ディスク装置
JP2004326523A (ja) 書き換え可能な不揮発性メモリを備えた記憶装置及び記憶装置用不揮発性メモリの制御方法
JP3166659B2 (ja) 記憶装置
JP4019306B2 (ja) Eepromへの記録方法
JP4031693B2 (ja) 不揮発性メモリおよびこれを有したデータ記憶装置
JP4183237B2 (ja) 記憶装置
JPH06230904A (ja) 半導体ディスク装置
JP4146581B2 (ja) フラッシュメモリ
JP2746978B2 (ja) 書き込み保護機構付き外部記憶装置
JP2003297088A (ja) 半導体記憶装置