JP2007226798A - フラッシュメモリを制御する装置および方法 - Google Patents

フラッシュメモリを制御する装置および方法 Download PDF

Info

Publication number
JP2007226798A
JP2007226798A JP2007040389A JP2007040389A JP2007226798A JP 2007226798 A JP2007226798 A JP 2007226798A JP 2007040389 A JP2007040389 A JP 2007040389A JP 2007040389 A JP2007040389 A JP 2007040389A JP 2007226798 A JP2007226798 A JP 2007226798A
Authority
JP
Japan
Prior art keywords
flash memory
control information
memory
control
controlling
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
JP2007040389A
Other languages
English (en)
Inventor
Jae-Hyuck Yoo
在 革 兪
Song-Ho Yoon
松 虎 尹
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2007226798A publication Critical patent/JP2007226798A/ja
Pending legal-status Critical Current

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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4239Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with asynchronous protocol
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)

Abstract

【課題】 フラッシュメモリを制御する装置および方法に関し、所定の揮発性メモリに格納されたフラッシュメモリの制御情報をフラッシュメモリの種類が変わる毎に更新し、更新された制御情報を用いて変更されたフラッシュメモリを制御するフラッシュメモリを制御する装置および方法を提供する。
【解決手段】 フラッシュメモリを制御する装置は、自身の制御情報を格納するフラッシュメモリと、前記フラッシュメモリを制御するためのプログラミングコードを格納する第1メモリと、前記プログラミングコードに前記制御情報を代入することによって、前記フラッシュメモリを制御するための制御コードを生成する制御部と、および前記制御コードを送信する送受信部とを含む。
【選択図】 図2

Description

本発明は、フラッシュメモリ(登録商標)を制御する装置および方法に関し、より詳しくは、所定の揮発性メモリに格納されたフラッシュメモリの制御情報をフラッシュメモリの種類が変わる毎に更新して、更新された制御情報を用いて変更されたフラッシュメモリを制御するフラッシュメモリを制御する装置および方法に関するものである。
フラッシュメモリは、持続的に電源が供給される非揮発性メモリとして、ブロック単位で内容を消去することができ、再びプログラムすることもできる。フラッシュメモリは、EEPROM(Electrically Erasable Programmable Read−Only Memory)の変形のうちの1つであるが、バイトレベルで消去することもできて修正することもできるEEPROMとは異なり、ブロック単位で修正されるために速度が速い。フラッシュメモリは、度々パーソナルコンピュータ(PC)のバイオス(BIOS)のような制御コードを格納するのに用いられる。バイアスを修正しなければならない必要がある時、フラッシュメモリはバイト単位でないブロック単位で記録されるために修正が易しい。一方、フラッシュメモリが一般のラムのように流用できない理由は、ラムがブロックでないバイト単位のアドレス指定が可能でなければならないためである。
フラッシュメモリは、メモリセルの一部分が閃光(フラッシュ)のように、ただ一度の動作によって消去することができるようにマイクロチップが組織化されているために、このような名前を得た。削除はファウラーノルドハイム(Fowler−Nordheim)トンネル効果によって生じるが、電子が薄い誘電体物質を貫通して、各メモリセルと結合している浮遊ゲートから電荷を除去する。
フラッシュメモリは、DRAMのように単純に記憶装置とリフレッシュ(refresh)回路、エラー訂正回路だけを有する受動的なデバイスではなく、プログラマーの命令を受けてこれを行う能動的なデバイスである。命令はCUI(Command User Interface)を介して形成され、システム全体の状態はWSM(Write State Machine)が管理する。提供されている命令の種類には、読み出し命令、書き込み命令およびその他の制御命令がある。
図1は、従来のフラッシュメモリ制御システムを示す図面であり、フラッシュメモリ制御システムはフラッシュメモリコントローラ10およびフラッシュメモリ20を含んで構成される。
ここで、フラッシュメモリコントローラ10は、コアプロセッサ11、OTPメモリ(One−Time−Programmable Memory)12、状態確認部13および制御コード送信部14を含んで構成される。
OTPメモリ12は、フラッシュメモリ20を制御するための制御コードを格納する役割をする。制御コードには、読み出し制御コード、書き込み制御コード、リセット制御コードおよびブロックロック(Block Locking)制御コードなどが含まれる。
状態確認部13は、フラッシュメモリ20の状態を確認する役割をする。すなわち、フラッシュメモリ20が現在動作中であるか待機中であるかを確認するものである。
制御コード送信部14は、OTPメモリ12に格納された制御コードをフラッシュメモリ20に送信する役割をする。
コアプロセッサ11は、状態確認部13によって確認されたフラッシュメモリ20の状態を参照してOTPメモリ12から制御コードを抽出し、制御コード送信部14によって抽出される制御コードを送信させるようにする。そして、コアプロセッサ11は、OTPメモリ12、状態確認部13および制御コード送信部14に対する全般的な制御を行う。
ここで、特定フラッシュメモリに対する制御コードだけを格納しているため、フラッシュメモリの種類が変わる場合、フラッシュメモリコントローラ10は新しいフラッシュメモリを制御できなくなる。
したがって、互いに異なる制御情報を有するフラッシュメモリを制御するためには対応する制御コードを格納しているOTPメモリが備えられた別のフラッシュメモリコントローラが必要であり、これによる費用の損失が発生する。
特許文献1は、メモリ要求に応答して、非揮発性メモリおよび揮発性メモリのアクセスを制御し、揮発性メモリに格納されたデータのアドレス情報を格納するメモリを含むメモリコントローラと、ナンドフラッシュメモリと、ナンドフラッシュメモリのデータを格納するラム等から構成されているメモリシステムを開示している。
しかし、これはラムにナンドフラッシュメモリのデータを格納するためには別の作業を行わなければならない不便さが存在する。例えば、互いに異なるフラッシュメモリを順次制御するために、ユーザはフラッシュメモリを交換する度毎にラムに新しいナンドフラッシュメモリのデータを格納しなければならないのである。
したがって、互いに異なるフラッシュメモリに対する制御を簡便に行えるようにする発明の登場が要求される。
米国公開特許第2005−182893号公報
本発明は、所定の揮発性メモリに格納されたフラッシュメモリの制御情報をフラッシュメモリの種類が変わる毎に更新し、更新された制御情報を用いて変更されたフラッシュメモリを制御することにその目的がある。
また、本発明は、制御情報を格納しているフラッシュメモリから制御情報を抽出し、抽出された制御情報を用いてフラッシュメモリを制御できるようにすることにその目的がある。
本発明の目的は、以上で言及した目的に制限されず、言及していないまた他の目的は下記記載によって当業者が明確に理解できるものである。
前記目的を達成するために、本発明の一態様に係わるフラッシュメモリを制御する装置は、自身の制御情報を格納するフラッシュメモリと、前記フラッシュメモリを制御するためのプログラミングコードを格納する第1メモリと、前記プログラミングコードに前記制御情報を代入することによって、前記フラッシュメモリを制御するための制御コードを生成する制御部と、および前記制御コードを送信する送受信部とを含む。
本発明の他の態様に係わるフラッシュメモリを制御する方法は、(a)フラッシュメモリから制御情報を受信するステップと、(b)所定のプログラミングコードに前記制御情報を代入することによって、前記フラッシュメモリを制御するための制御コードを生成するステップと、(c)前記制御コードを送信するステップとを含む。
前記のような本発明のフラッシュメモリを制御する装置および方法によれば、次のような効果が1つあるいはそれ以上ある。
第1に、所定の揮発性メモリに格納されたフラッシュメモリの制御情報をフラッシュメモリの種類が変わる毎に更新し、更新された制御情報を用いて変更されたフラッシュメモリを制御することによって、フラッシュメモリの種類に応じた別のフラッシュメモリコントローラを備えなければならない費用を節減できる利点がある。
第2に、制御情報を格納しているフラッシュメモリから制御情報を抽出し、抽出された制御情報を用いてフラッシュメモリを制御することによって、互いに異なるフラッシュメモリに対する制御を簡便に行える利点もある。
その他、実施形態の具体的な事項は、詳細な説明および図面に含まれている。
本発明の利点および特徴、そしてそれらを達成する方法は、添付する図面と共に詳細に後述する実施形態を参照すれば明確になる。しかし、本発明は以下にて開示する実施形態に限定されず、互いに異なる多様な形態によって実施され、単に本実施形態は本発明の開示が完全なものとなるようにし、本発明が属する技術分野で通常の知識を有する者に発明の範疇を完全に知らせるために提供されるものであって、本発明は請求項の範疇によってのみ定義されるものである。明細書の全体に亘り、同一参照符号は同一構成要素を示す。
以下、添付した図面を参照して、本発明の好ましい実施形態を詳細に説明することにする。
図2は、本発明の実施形態に係わるフラッシュメモリを制御する装置を示すブロック図であって、フラッシュメモリを制御する装置(以下、フラッシュメモリ制御装置という)100はフラッシュメモリ制御部200およびフラッシュメモリ300を含んで構成され、フラッシュメモリ制御部200は制御情報受信部210、制御部220、状態確認部230、第1メモリ240および第2メモリ250、送受信部260を含んで構成される。
フラッシュメモリ300は、自身の制御情報を格納する役割をする。フラッシュメモリ300は、持続的に電源が供給される非揮発性メモリとして、ブロック単位で内容を消去することができ、再びプログラムすることもできるが、ここで、制御情報はフラッシュメモリ300を制御するために必要な情報としてダイ(die)の数、ダイ別プレーン(plane)の数、ブロック(block)の数、ページ(page)の大きさ、ブロック別前記ページの数、ページ別セクタの数、バッドマーク(bad mark)の位置、キャッシュオペレーション(cache operation)の支援有無およびコピーバックオペレーション(copy back operation)の支援有無のうち少なくとも1つを含む。
例えば、フラッシュメモリ300のデータを読み取る作業、フラッシュメモリ300にデータを書き込む作業、フラッシュメモリ300のデータを消去する作業、フラッシュメモリ300のリセットおよびブロックのロック作業などのための情報が制御情報に含まれている。
ここで、ブロックのロックとは、フラッシュメモリ300にデータを書き込んだり、フラッシュメモリ300のデータを削除する場合に必要とする時間に、格納されたデータが読み取られたり、他の命令が実行されたりしないようにブロックの接近を制限することを意味する。
第1メモリ240は、フラッシュメモリ300を制御するためのプログラミングコードを格納する役割をする。プログラミングコードは、フラッシュメモリ300に対する読み出し、書き込みおよびその他の制御のためのコードであって、特定のフラッシュメモリのみに限定されて使われず、すべてのフラッシュメモリに適用されるためにフラッシュメモリの固有情報は含まれないことがある。
また、第1メモリ240は、ユーザによって任意に選択された特定フラッシュメモリに対する制御情報を格納することもできる。例えば、ユーザは自身が主に作業する特定の1つのフラッシュメモリに対する制御情報を第1メモリ240に格納させることによって、フラッシュメモリに格納された制御情報を第2メモリ250に格納する過程が省約されるようにできる。ここで、第1メモリ240は複数の特定フラッシュメモリに対する制御情報を格納することもできる。
第1メモリ240は、非揮発性メモリであることが好ましいが、費用節減のためにOTP(One−Time Programmable)メモリであることがより好ましい。これによって、第1メモリ240に格納されたプログラミングコードおよび特定フラッシュメモリの制御情報は、一旦格納されると更新されないことがあり得る。
第2メモリ250は、フラッシュメモリ300の制御情報を臨時的に格納する役割をする。ここで、フラッシュメモリ300の制御情報はフラッシュメモリ300から受信したものであり得、別に入力されたものでもあり得る。例えば、フラッシュメモリ300を制御するためにフラッシュメモリ300に格納された制御情報が受信され、これが第2メモリ250に臨時的に格納されることもでき、フラッシュメモリ300を更新するために入力された制御情報がフラッシュメモリ300に送信される前に臨時的に格納されることもできる。
制御部220は、プログラミングコードに制御情報を代入することによって、フラッシュメモリ300を制御するための制御コードを生成する役割をする。ここで、制御情報は第1メモリ240に格納されたものでもあり得、第2メモリ250に格納されたものでもあり得るし、フラッシュメモリ300から直接抽出されたものでもあり得る。
例えば、第2メモリ250が備わっていない場合、制御部220はフラッシュメモリ300に格納された制御情報と第1メモリ240に格納された制御情報とを比較し、その結果、2つが同じであれば第1メモリ240に格納された制御情報をプログラミングコードに代入して制御コードを生成し、2つが同じでなければフラッシュメモリ300から抽出した制御情報をプログラミングコードに代入して制御コードを生成する。
一方、第2メモリ250が備わっている場合制御部220は、フラッシュメモリ300に格納された制御情報と第1メモリ240に格納された制御情報とを比較し、その結果、2つが同じであれば第1メモリ240に格納された制御情報をプログラミングコードに代入して制御コードを生成し、2つが同じでなければフラッシュメモリ300から抽出した制御情報を第2メモリ250に格納した後に第2メモリ250に格納された制御情報をプログラミングコードに代入して制御コードを生成する。
また、制御部220は、制御情報受信部210、状態確認部230、第1メモリ240、第2メモリ250、送受信部260、フラッシュメモリ300およびフラッシュメモリ制御装置100の全般的な制御を行う。
送受信部260は、制御部220で生成された制御コードをフラッシュメモリ300に送信する役割をする。また、送受信部260は、フラッシュメモリ300に格納された制御情報を第2メモリ250に格納するためにフラッシュメモリ300の制御情報を受信する役割も行い、フラッシュメモリ300を更新するための更新された制御情報をフラッシュメモリ300に送信する役割も行う。
制御情報受信部210は、フラッシュメモリ300を更新するための新しい制御情報を受信する役割をする。受信した制御情報は、送受信部260を介して直接フラッシュメモリ300に伝達されることができ、第2メモリ250に臨時的に格納された後にフラッシュメモリ300に伝達されることもできる。フラッシュメモリ300が更新されれば、更新されたフラッシュメモリ300は新しい制御情報を格納するようになるが、以後更新されたフラッシュメモリ300が制御される場合、新しい制御情報に対応する制御コードが制御部220によって生成されて更新されたフラッシュメモリ300に伝達される。
状態確認部230は、フラッシュメモリ300の状態を確認する。すなわち、フラッシュメモリ300が現在読み出し作業中であるか、書き込み作業中であるか、またはその他の制御作業中であるかを確認するものであり、制御部220は状態確認部230によって確認されたフラッシュメモリ300の状態を参照し、フラッシュメモリ300での制御コード送信有無を決定する。
図3は、本発明の実施形態に係わる制御情報が格納されたフラッシュメモリを示す図面である。
フラッシュメモリ300は、大ブロックフラッシュメモリ(Large Block Flash Memory)310と小ブロックフラッシュメモリ(Small Block Flash Memory)320とに区分されるが、これによって各ブロックに含まれたセクタの配置が変われる。すなわち、大ブロックフラッシュメモリ310の場合に1つのページに複数のセクタが存在する一方、ブロックフラッシュメモリ320の場合に1つのページに1つのセクタが存在する。
したがって、フラッシュメモリ300の制御情報は、最初のブロック311,321の最初のページ312,322のうちの最初のセクタ313,323に格納されることが好ましい。なぜならば、フラッシュメモリ300の制御情報が任意の位置に格納されている場合にフラッシュメモリ300の制御情報を知らないフラッシュメモリ制御部200は、その制御情報を抽出するための制御コードを送信できないためである。
また、制御情報はユーザによって設定された任意の位置に格納されることもできるが、この時フラッシュメモリ制御部200はすべてのフラッシュメモリに対してユーザによって設定された位置で制御情報を抽出することができる。
そして、制御情報を格納しているフラッシュメモリ300は、その他のデータを格納するにおいて制御情報が格納されている領域を除いた領域だけを用いて、その他のデータを格納して更新することができる。
図4は、本発明の実施形態に係わる制御情報がフラッシュメモリに伝達されることを示す概念図である。
フラッシュメモリ300を製作するにおいて、ユーザはフラッシュメモリ300に制御情報430を挿入することができる。この時、フラッシュメモリ制御部200を用いて制御情報430を挿入することができるが、フラッシュメモリ制御部200の制御情報受信部210は制御情報420を受信し、受信した制御情報420は第2メモリ250に臨時的に格納されながら、臨時的に格納された制御情報420は送受信部260を介してフラッシュメモリ300に送信される。
この時、制御情報420は、図3を介して前述したように最初のブロック311,321の最初のページ312,322のうちの最初のセクタ313,323に格納され、ユーザによって設定された別途の位置に格納されることもできる。
フラッシュメモリ制御部200は、特定フラッシュメモリだけでなく、すべてのフラッシュメモリに対する制御情報挿入を行うこともできるため、これによって送受信部260とフラッシュメモリ300とが連結する結合手段においては、フラッシュメモリ300の結合および結合解除が容易であることが好ましい。そして、フラッシュメモリ制御部200は、結合したフラッシュメモリ300に対応する制御情報420をユーザから受信してフラッシュメモリ300に挿入する。
一方、フラッシュメモリ制御部200は、結合したフラッシュメモリ300がユーザによって任意に選択された特定フラッシュメモリである場合、第1メモリ240に格納している特定フラッシュメモリの制御情報を結合したフラッシュメモリ300の所定領域に挿入することもできる。この時、第1メモリ240に格納されている制御情報は、複数の特定フラッシュメモリに対する制御情報でもあり得る。すなわち、互いに異なる複数の制御情報が第1メモリ240に格納されているものであるが、この時、フラッシュメモリ制御部200は、フラッシュメモリ300から受信したフラッシュメモリ300の固有ID410を用いて伝達しなければならない制御情報430を抽出することができる。
例えば、フラッシュメモリ300は、フラッシュメモリ制御部200との連結と同時に自身の固有ID410を送信し、これを受信したフラッシュメモリ制御部200は固有ID410に対応する制御情報があるかを確認した後に、対応する制御情報があればこれを抽出してフラッシュメモリ300に送信し、対応する制御情報がなければ制御情報受信部210を介してユーザから入力された制御情報420をフラッシュメモリ300に送信する。
上述したように、フラッシュメモリ300は、大ブロックフラッシュメモリ310と小ブロックフラッシュメモリ320とに区分され、各々のフラッシュメモリ310,320に対する書き込み方式が異なり得る。したがって、制御情報430をフラッシュメモリ300に挿入するにおいて、フラッシュメモリ制御部200はフラッシュメモリ300の種類に対応する2つの方式を試みることができる。
図5は、本発明の実施形態に係わる制御情報が第2メモリ250に格納されることを示す概念図である。
フラッシュメモリ300を制御するために、フラッシュメモリ制御部200は先ずフラッシュメモリ300から固有ID510を受信する。そうして受信した固有ID510に対応する制御情報が第1メモリ240に格納されているかを確認して、格納されていれば格納された制御情報とプログラミングコードを用いて連結されたフラッシュメモリ300に対する制御コードを生成し、生成された制御コードを用いてフラッシュメモリ300を制御する。
一方、受信した固有ID510に対応する制御情報が第1メモリ240に格納されていない場合、フラッシュメモリ制御部200はフラッシュメモリ300の所定領域に格納されている制御情報520を抽出する。この時、フラッシュメモリ制御部200は、フラッシュメモリ300の格納領域のうちの最初のブロック311,321の最初のページ312,322のうちの最初のセクタ313,323で制御情報520を抽出することができ、事前に設定された位置で制御情報520を抽出することもできる。
また、フラッシュメモリ300は、大ブロックフラッシュメモリ310と小ブロックフラッシュメモリ320とに区分され、各々のフラッシュメモリ310,320に対する読み出し方式が異なり得る。したがって、制御情報520をフラッシュメモリ300で抽出するにおいて、フラッシュメモリ制御部200はフラッシュメモリ300の種類に対応する2つの方式を試みることができる。
図6は、本発明の一実施形態によりフラッシュメモリが制御される過程を示すフローチャートである。
フラッシュメモリ300を制御するためにフラッシュメモリ制御部200の送受信部260は、先ずフラッシュメモリ300から固有IDを受信する(S610)。受信した固有IDは制御部220に伝達され、制御部220は第1メモリ240に格納された複数の特定フラッシュメモリの制御情報のうちの固有IDに対応する制御情報があるかを確認する(S620)。ここで、特定フラッシュメモリは、ユーザによって任意に選択されたフラッシュメモリであり、例えばユーザは自身が希望するフラッシュメモリに対する制御情報を第1メモリ240に格納することによってフラッシュメモリの制御情報が第2メモリ250に格納される過程が省約されるようにできる。
ここで、第1メモリ240は非揮発性メモリであり得、そのうちのOTPメモリであり得る。そして、制御情報はダイの数、前記ダイ別プレーンの数、ブロックの数、ページの大きさ、前記ブロック別前記ページの数、前記ページ別セクタの数、バッドマークの位置、キャッシュオペレーションの支援有無およびコピーバックオペレーションの支援有無のうち少なくとも1つを含む。
そして、対応する制御情報が格納されている場合、制御部220は対応する制御情報と第1メモリ240に格納されたプログラミングコードを用いて制御コードを生成する(S650)。
そして、状態確認部230は、フラッシュメモリ300の状態を確認する。すなわち、フラッシュメモリ300が読み出しまたは書き込みなどの作業を実行中であるかを確認するものであり、状態確認結果は制御部220に伝達される。
そして、フラッシュメモリ300が作業中である場合、制御部220は制御コード送信を保留し、フラッシュメモリ300が作業中でない場合、送受信部260を介して制御コードを送信する(S660)。
一方、第1メモリ240に対応する制御情報が格納されていない場合、送受信部260はフラッシュメモリ300から制御情報を抽出する(S630)。そして、抽出された制御情報を揮発性メモリの第2メモリ250に格納する(S640)。
制御情報が第2メモリ250に格納されれば、制御部220は第1メモリ240に格納されたプログラミングコードと第2メモリ250に格納された制御情報を用いてフラッシュメモリ300を制御するための制御コードとを生成する(S650)。
そして、制御部220は状態確認部230を介して確認されたフラッシュメモリ300の状態を参照して、フラッシュメモリ300が動作中でなければ送受信部260を介して生成された制御コードを送信する(S660)。
図2のブロック図の各ブロックと図6のフローチャートの各ステップの組合せは、コンピュータプログラムインストラクションによって実行される可能性があることを理解できる。これらのコンピュータプログラムインストラクションは、汎用コンピュータ、特殊用コンピュータ、または、その他のプログラム可能なデータプロセシング装備のプロセッサに搭載されるため、コンピュータ、または、その他のプログラム可能なデータプロセシング装備のプロセッサを介して実行されるそのインストラクションが、ブロック図の各ブロックまたはフローチャートの各ステップで説明された機能を行う手段を生成するようになる。これらのコンピュータプログラムインストラクションは、特定の方式で機能を実現するためにコンピュータ、または、その他のプログラム可能なデータプロセシング装備を指向できるコンピュータ利用可能またはコンピュータ読取可能メモリに格納されることも可能であるため、そのコンピュータ利用可能またはコンピュータ読取可能メモリに格納されたインストラクションは、ブロック図の各ブロックまたはフローチャートの各ステップで説明された機能を行うインストラクション手段を内包する製造品目を生産することも可能である。コンピュータプログラムインストラクションは、コンピュータ、または、その他のプログラム可能なデータプロセシング装備上に搭載されることも可能であるため、コンピュータ、または、その他のプログラム可能なデータプロセシング装備上で一連の動作ステップが実行され、コンピュータで実行されるプロセスを生成し、コンピュータ、または、その他のプログラム可能なデータプロセシング装備を行うインストラクションは、ブロック図の各ブロックおよびフローチャートの各ステップで説明された機能を実行するためのステップを提供することも可能である。
また、各ブロックまたは各ステップは、特定された論理的機能を実行するための1つ以上の実行可能なインストラクションを含むモジュール、セグメントまたはコードの一部を示すことができる。また、いくつかの代替実行例においては、ブロックまたはステップで言及した機能が、順序を外れ出て発生することも可能であることに注目しなければならない。例えば、続けて図示されている2つのブロックまたはステップは、実質的に同時に実行することも可能であり、または、そのブロックまたはステップが時折該当する機能によって逆順に実行されることも可能である。
以上、添付した図面を参照して本発明の実施形態を説明したが、本発明が属する技術分野で通常の知識を有する者であれば、本発明がその技術的思想や必須の特徴を変更せず、他の具体的な形態によって実施することができるということを理解できる。したがって、以上で記述した実施形態はすべての面で例示的なものであり、限定的なものではないことを理解しなければならない。
従来のフラッシュメモリ制御システムを示す図である。 本発明の実施形態に係わるフラッシュメモリを制御する装置を示すブロック図である。 本発明の実施形態に係わる制御情報が格納されたフラッシュメモリを示す図である。 本発明の実施形態に係わる制御情報がフラッシュメモリに伝達されることを示す概念図である。 本発明の実施形態に係わる制御情報が第2メモリに格納されることを示す概念図である。 本発明の一実施形態によりフラッシュメモリが制御される過程を示すフローチャートである。
符号の説明
200 フラッシュメモリ制御部
210 制御情報受信部
220 制御部
230 状態確認部
240 第1メモリ
250 第2メモリ
260 送受信部
300 フラッシュメモリ

Claims (14)

  1. 自身の制御情報を格納するフラッシュメモリと、
    前記フラッシュメモリを制御するためのプログラミングコードを格納する第1メモリと、
    前記プログラミングコードに前記制御情報を代入することによって、前記フラッシュメモリを制御するための制御コードを生成する制御部と、
    前記制御コードを送信する送受信部とを含むフラッシュメモリを制御する装置。
  2. 前記制御情報は、ダイの数、前記ダイ別プレーンの数、ブロックの数、ページの大きさ、前記ブロック別前記ページの数、前記ページ別セクタの数、バッドマークの位置、キャッシュオペレーションの支援有無およびコピーバックオペレーションの支援有無のうち少なくとも1つを含む請求項1に記載のフラッシュメモリを制御する装置。
  3. 前記第1メモリは、非揮発性メモリを含む請求項1に記載のフラッシュメモリを制御する装置。
  4. 前記第1メモリは、ユーザによって任意に選択された特定フラッシュメモリに対する制御情報を格納する請求項1に記載のフラッシュメモリを制御する装置。
  5. 前記制御部は、前記フラッシュメモリと前記特定フラッシュメモリとが同一である場合、前記プログラミングコードに前記特定フラッシュメモリに対する制御情報を代入することによって、前記フラッシュメモリを制御するための制御コードを生成する請求項4に記載のフラッシュメモリを制御する装置。
  6. 前記制御情報を臨時的に格納する第2メモリをさらに含む請求項1に記載のフラッシュメモリを制御する装置。
  7. 前記第2メモリは、揮発性メモリを含む請求項6に記載のフラッシュメモリを制御する装置。
  8. (a)フラッシュメモリから制御情報を受信するステップと、
    (b)所定のプログラミングコードに前記制御情報を代入することによって、前記フラッシュメモリを制御するための制御コードを生成するステップと、
    (c)前記制御コードを送信するステップとを含むフラッシュメモリを制御する方法。
  9. 前記制御情報は、ダイの数、前記ダイ別プレーンの数、ブロックの数、ページの大きさ、前記ブロック別前記ページの数、前記ページ別セクタの数、バッドマークの位置、キャッシュオペレーションの支援有無およびコピーバックオペレーションの支援有無のうち少なくとも1つを含む請求項8に記載のフラッシュメモリを制御する方法。
  10. 前記プログラミングコードは、非揮発性メモリの第1メモリに格納されている情報である請求項8に記載のフラッシュメモリを制御する方法。
  11. 前記第1メモリに、ユーザによって任意に選択された特定フラッシュメモリに対する制御情報を格納するステップを含む請求項10に記載のフラッシュメモリを制御する方法。
  12. 前記(b)ステップは、前記フラッシュメモリと前記特定フラッシュメモリとが同一である場合、前記プログラミングコードに前記特定フラッシュメモリに対する制御情報を代入することによって、前記フラッシュメモリを制御するための制御コードを生成するステップを含む請求項11に記載のフラッシュメモリを制御する方法。
  13. 前記制御情報を臨時的に格納するステップをさらに含む請求項8に記載のフラッシュメモリを制御する方法。
  14. 前記臨時的に格納される制御情報は揮発性メモリに格納される請求項13に記載のフラッシュメモリを制御する方法。
JP2007040389A 2006-02-23 2007-02-21 フラッシュメモリを制御する装置および方法 Pending JP2007226798A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060017771A KR100746036B1 (ko) 2006-02-23 2006-02-23 플래시 메모리를 제어하는 장치 및 방법

Publications (1)

Publication Number Publication Date
JP2007226798A true JP2007226798A (ja) 2007-09-06

Family

ID=38370498

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007040389A Pending JP2007226798A (ja) 2006-02-23 2007-02-21 フラッシュメモリを制御する装置および方法

Country Status (5)

Country Link
US (1) US7809878B2 (ja)
EP (1) EP1843357A3 (ja)
JP (1) JP2007226798A (ja)
KR (1) KR100746036B1 (ja)
CN (1) CN101025711B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8214714B2 (en) * 2005-03-23 2012-07-03 Panasonic Corporation Nonvolatile storage device, controller of nonvolatile memory, and nonvolatile storage system
CN101751338B (zh) * 2008-12-15 2012-03-07 中芯国际集成电路制造(上海)有限公司 数据存取控制装置及数据存取方法
US8423722B1 (en) * 2011-08-26 2013-04-16 Western Digital Technologies, Inc. System and method for high performance command processing in solid state drives
KR102491068B1 (ko) 2017-11-17 2023-01-19 에스케이하이닉스 주식회사 메모리 장치에 대한 태스크들을 스케줄링하는 반도체 장치 및 이를 포함하는 시스템
CN108595124A (zh) * 2018-04-27 2018-09-28 江苏华存电子科技有限公司 一种提升多颗闪存平行写入校能的管理方法
KR20200115102A (ko) 2019-03-28 2020-10-07 에스케이하이닉스 주식회사 유사도에 따라 후보 선택을 가속하는 방법 및 후보 선택을 수행하는 가속기
US11636173B2 (en) 2019-03-28 2023-04-25 SK Hynix Inc. Method for candidate selection and accelerator for performing candidate selection

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005301831A (ja) * 2004-04-14 2005-10-27 Renesas Technology Corp 不揮発性記憶装置、半導体記憶装置及び記憶システム

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3259232B2 (ja) 1992-07-06 2002-02-25 清水建設株式会社 カードによる入退管理システム
JPH06250827A (ja) * 1993-02-23 1994-09-09 Nippon Steel Corp コンピュータシステム
JP3796837B2 (ja) 1996-09-20 2006-07-12 株式会社デンソー 電子装置のメモリ書込装置
US5937423A (en) * 1996-12-26 1999-08-10 Intel Corporation Register interface for flash EEPROM memory arrays
US6279069B1 (en) * 1996-12-26 2001-08-21 Intel Corporation Interface for flash EEPROM memory arrays
US7707354B2 (en) * 1999-08-04 2010-04-27 Super Talent Electronics, Inc. SRAM cache and flash micro-controller with differential packet interface
US20050160218A1 (en) * 2004-01-20 2005-07-21 Sun-Teck See Highly integrated mass storage device with an intelligent flash controller
US20060161725A1 (en) * 2005-01-20 2006-07-20 Lee Charles C Multiple function flash memory system
US7676640B2 (en) * 2000-01-06 2010-03-09 Super Talent Electronics, Inc. Flash memory controller controlling various flash memory cells
JP2002203217A (ja) 2000-12-28 2002-07-19 Denso Corp 不揮発性メモリ及び電子機器並びに不正監視システム
JP4722305B2 (ja) 2001-02-27 2011-07-13 富士通セミコンダクター株式会社 メモリシステム
JP3574078B2 (ja) 2001-03-16 2004-10-06 東京エレクトロンデバイス株式会社 記憶装置と記憶装置制御方法
CN1529847A (zh) 2001-07-16 2004-09-15 任宇清 内嵌软件更新系统
GB0123422D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Improved memory controller
JP4238514B2 (ja) 2002-04-15 2009-03-18 ソニー株式会社 データ記憶装置
JP4136646B2 (ja) 2002-12-20 2008-08-20 スパンション エルエルシー 半導体記憶装置及びその制御方法
KR100547809B1 (ko) 2003-10-31 2006-01-31 삼성전자주식회사 소프트웨어 다운로드를 위한 임베디드 시스템을 구비한이동통신단말기 및 소프트웨어 다운로드 방법
KR101085406B1 (ko) 2004-02-16 2011-11-21 삼성전자주식회사 불 휘발성 메모리를 제어하기 위한 컨트롤러
US7406559B2 (en) * 2004-08-23 2008-07-29 Macronix International Co., Ltd. In-circuit programming architecture with processor, delegable flash controller, and code generator
CN1331068C (zh) 2005-02-04 2007-08-08 威盛电子股份有限公司 一种驱动闪存的方法及其装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005301831A (ja) * 2004-04-14 2005-10-27 Renesas Technology Corp 不揮発性記憶装置、半導体記憶装置及び記憶システム

Also Published As

Publication number Publication date
EP1843357A2 (en) 2007-10-10
CN101025711B (zh) 2011-04-13
US20070198767A1 (en) 2007-08-23
CN101025711A (zh) 2007-08-29
EP1843357A3 (en) 2010-10-06
US7809878B2 (en) 2010-10-05
KR100746036B1 (ko) 2007-08-06

Similar Documents

Publication Publication Date Title
KR100531192B1 (ko) 비휘발성 메모리의 제어방법
JP4713867B2 (ja) メモリコントローラ,メモリ装置及びメモリコントローラの制御方法
JP2007226798A (ja) フラッシュメモリを制御する装置および方法
US20040202024A1 (en) Memory card
JP2006350430A (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP4921174B2 (ja) フラッシュメモリのデータ書込み方法
JP2004295865A (ja) 自動ブーティングシステム及び自動ブーティング方法
JPWO2009004674A1 (ja) 記憶装置、ディスク装置、書込み判定方法、制御装置
JP2008533574A (ja) セクタ単位での消去の可能な半導体メモリ手段の第1のセクタへの再書き込み方法および装置
JP2008225672A (ja) 半導体メモリ装置
JP2009093528A (ja) メモリデータ管理装置
US8085593B2 (en) Method of inputting address in nonvolatile memory device and method of operating the nonvolatile memory device
JP2008251154A (ja) 不揮発性半導体記憶装置
JP2008047155A (ja) 一括消去型不揮発性メモリおよび携帯電話
JP6040895B2 (ja) マイクロコンピュータ及び不揮発性メモリのブロック管理方法
JP2007148695A (ja) 情報処理装置およびブートプログラムの書き換え方法
JP2008084288A (ja) メモリ制御装置
JP4452158B2 (ja) 不揮発性メモリシステム
JP2006323499A (ja) 半導体装置
JP2005321843A (ja) ファームウェアの書換え方法
JP2009276883A (ja) 半導体補助記憶装置
JP4910402B2 (ja) 不揮発性メモリの書き換え装置及び書き換え方法
JP4710274B2 (ja) メモリ装置、メモリ装置の制御方法およびデータ処理システム
JP4332134B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP2006504202A (ja) メモリ構造を駆動するための方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100430

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100518

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100818

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100823

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100917

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110301