JP4357331B2 - マイクロプロセッサブートアップ制御装置、及び情報処理システム - Google Patents

マイクロプロセッサブートアップ制御装置、及び情報処理システム Download PDF

Info

Publication number
JP4357331B2
JP4357331B2 JP2004086737A JP2004086737A JP4357331B2 JP 4357331 B2 JP4357331 B2 JP 4357331B2 JP 2004086737 A JP2004086737 A JP 2004086737A JP 2004086737 A JP2004086737 A JP 2004086737A JP 4357331 B2 JP4357331 B2 JP 4357331B2
Authority
JP
Japan
Prior art keywords
cpu
boot
code
memory
nonvolatile memory
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
JP2004086737A
Other languages
English (en)
Other versions
JP2005275697A (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.)
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
Priority to JP2004086737A priority Critical patent/JP4357331B2/ja
Priority to US11/084,039 priority patent/US7464259B2/en
Publication of JP2005275697A publication Critical patent/JP2005275697A/ja
Priority to US11/838,463 priority patent/US7616507B2/en
Priority to US11/838,484 priority patent/US7725706B2/en
Application granted granted Critical
Publication of JP4357331B2 publication Critical patent/JP4357331B2/ja
Priority to US12/756,836 priority patent/US8171281B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4403Processor initialisation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • 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
    • G11C16/10Programming or data input circuits
    • G11C16/20Initialising; Data preset; Chip identification
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/74Masking faults in memories by using spares or by reconfiguring using duplex memories, i.e. using dual copies
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5641Multilevel memory having cells with different number of storage levels

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Stored Programmes (AREA)
  • Detection And Correction Of Errors (AREA)
  • Memory System (AREA)

Description

本発明は、マイクロプロセッサブートアップ制御装置及び情報処理システムに関する。
不揮発性メモリ(例えばNAND型フラッシュメモリ)でブート・リード・オンリ・メモリ(ブートROM)を代用するシステムでは、一般的に、NANDリードデータをスタティック・ランダム・アクセス・メモリ(SRAM)に転送後、ホスト中央演算処理装置(ホストCPU)がSRAMをブートROMとしてアクセスする機構を採用する。
一方、NAND型不揮発性メモリからSRAMへのロードが完了し、SRAMが読み出し待機状態(リードレディ)になるまでの間、ホストCPUのSRAMアクセスを待たせて禁止しなければならない。従来技術では、ブート制御部とCPUのパワーオンリセット信号を独立に生成、供給し、ブート制御部のSRAMアクセスがレディー状態になるタイミングで、CPUのパワーオンリセット信号を解除する機構を設けている。
NANDフラッシュメモリを利用したブートシステム及びその方法については、既に開示されている(例えば、特許文献1)。又、ファイルメモリなどに利用されるNAND型フラッシュメモリにおいて、メモリ上の任意のアドレスにシステムブート用データを書き込む不揮発性半導体記憶装置についても既に開示されている(例えば、特許文献2)。又、ブートコードとNANDフラッシュメモリについても、既に開示されている(例えば、特許文献3及び特許文献4)。又、多値NANDセルの構成についても、既に開示されている(例えば、特許文献5)。
多値NAND型不揮発性メモリをブートROMに使用する場合、多値NAND型不揮発性メモリは2値NAND型不揮発性メモリに比べてデータ保持回路の経年劣化による微小なしきい値変動によってデータ化けが発生しやすく、信頼性が低いという問題点があり、エラーフリーに近い信頼性の高いブートシステムを実現することが困難である。
一方、ブート制御部とCPUのパワーオンリセット信号を独立に生成、供給し、ブート制御部のSRAMアクセスがレディー状態になるタイミングで、CPUのパワーオンリセット信号を解除する機構の問題点は、パワーオンリセット回路が複雑化する点にある。SRAMレディーのタイミングは、SRAMにロードするプログラム容量や、NANDリードデータのエラー有無によるリトライ、エラー訂正処理等で変動する。このため、常にワーストケースのタイミングでCPUリセットを解除する必要がある。従って、SRAMレディータイミングに合わせて最短時間でCPUリセットを解除することができず、結果として、システム立ち上がりの平均時間を短縮できないという問題点がある。
特開2003−271391号公報 特開2003−162453号公報 特開2003−114826号公報 米国特許第5,519,843号明細書 特開2002−313089号公報
本発明の目的は、揮発性メモリのレディータイミングに合わせてCPUの揮発性メモリへのアクセスを許可でき、システム立ち上がりの平均時間を短縮できるマイクロプロセッサブートアップ制御装置およびユーザの用途に応じた多機能の情報処理システムを提供することにある。
本発明の一態様によれば、CPU及び不揮発性メモリにそれぞれ接続され、前記不揮発性メモリに格納されたブートアップコードを読み込んで前記CPUをブートアップ制御するマイクロプロセッサブートアップ制御装置であって、前記不揮発性メモリに接続され、前記不揮発性メモリから前記ブートアップコードがロードされる揮発性メモリと、前記不揮発性メモリから前記揮発性メモリへの前記ブートアップコードのロードが完了するまでの間、前記CPUに対して無演算命令を送出し続けるブートアップ制御シーケンサと、前記不揮発性メモリから前記揮発性メモリへの前記ブートアップコードのロードが完了した後、前記CPUを前記ブートアップコードの実行ルーチンに移行させる分岐命令を、前記CPUに送出するホストインタフェース部とを備えるマイクロプロセッサブートアップ制御装置が提供される。
本発明の他の態様によれば、CPUと、ブートアップコードを格納する不揮発性メモリと、前記CPU及び前記不揮発性メモリに接続され、前記不揮発性メモリから前記ブートアップコードを読み込んで前記CPUをブートアップ制御するマイクロプロセッサブートアップ制御装置とを備え、前記マイクロプロセッサブートアップ制御装置は、前記不揮発性メモリに接続され、前記不揮発性メモリから前記ブートアップコードがロードされる揮発性メモリと、前記不揮発性メモリから前記揮発性メモリへの前記ブートアップコードのロードが完了するまでの間、前記CPUに対して無演算命令を送出し続けるブートアップ制御シーケンサと、前記不揮発性メモリから前記揮発性メモリへの前記ブートアップコードのロードが完了した後、前記CPUを前記ブートアップコードの実行ルーチンに移行させる分岐命令を、前記CPUに送出するホストインタフェース部とを備える情報処理システムが提供される。
本発明によれば、揮発性メモリのレディータイミングに合わせてCPUの揮発性メモリへのアクセスを許可でき、システム立ち上がりの平均時間を短縮できるマイクロプロセッサブートアップ制御装置を提供することができ、又、ユーザの用途に応じた多機能の情報処理システムを提供することができる。
次に、図面を参照して、本発明の第1乃至第5の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。ただし、図面は模式的なものであり、各ブロックの大きさの比率等は現実のものとは異なることに留意すべきである。又、図面相互間においても各ブロックの寸法の関係や比率が異なる部分が含まれていることはもちろんである。
また、以下に示す第1乃至第5の実施の形態は、この発明の技術的思想を具体化するための装置やシステムを例示するものであって、この発明の技術的思想は、構成部品の構成、構造、配置等を下記のものに特定するものでない。
(第1の実施の形態)
本発明の第1の実施の形態に係るマイクロプロセッサブートアップ制御装置は、図1に示すように、外部のCPU及び不揮発性メモリ38に接続され、不揮発性メモリ38のデータを読み込んでCPUをブートアップ制御するマイクロプロセッサブートアップ制御装置12である。そして、このマイクロプロセッサブートアップ制御装置12は、不揮発性メモリ38に接続された揮発性メモリ(SRAM)24と、不揮発性メモリ38からブートアップコードをSRAM24に転送するセレクタ36と、ブートアップコードの転送が完了するまで、CPUに対してCPU読み込みデータを送出し、CPUを待機状態にするブートアップ制御シーケンサ26とを備える。
ここで、CPU読み込みデータはCPU命令コードである。又、CPU命令コードは無演算命令(NOP)、算術論理演算命令、データ転送命令、分岐命令、或いは周辺機器に対する入出力命令の内のいずれかである。CPU読み込みデータはCPU出力アドレスに関わらず決定することができる。
又、本発明の第1の実施の形態に係るマイクロプロセッサブートアップ制御装置12は、図1に示すように、不揮発性メモリ38からブートアップコードをSRAM24に転送完了後、CPU出力アドレスに関わらず、分岐命令をCPUに読み込ませるホストインタフェース部10を備えていても良い。ホストインタフェース部10からブートアップ制御シーケンサ26に対しては、外部メモリアドレス信号EMAが供給され、ブートアップ制御シーケンサ26からホストインタフェース部10に対しては、外部メモリリードデータ信号EMRが供給される。
不揮発性メモリ38からブートアップコードをSRAM24に転送完了後、CPU出力アドレスに関わらず、分岐命令をCPUに読み込ませた後に、CPU出力アドレスに応じたデータをCPUに読み込ませる。ANDゲート32及びバッファ回路34はCPU出力アドレスに応じたデータをCPUに読み込ませる手段の駆動クロック信号CLKをホストCPUバス信号HBSから生成する手段である。
ANDゲート32にホストバス信号HBS(WE/OE)を供給しているため、ブートアップ制御装置12にクロック発生回路を設ける必要がないという利点もある。
ここで、外部のCPUを接続するホストCPUバス42とホストインタフェース部10の間には、ホストバス信号HBSが転送され、ANDゲート32に対しては、ホストCPUバス信号HBSから分岐されたライトイネーブル信号WE及びアウトプットイネーブル信号OEが入力される。バッファ回路34の出力信号であるクロック信号CLKはそれぞれ、ホストインタフェース部10、ブートアップ制御シーケンサ26及びエラー検出・訂正処理部40に入力される。
又、第1の実施の形態に係るマイクロプロセッサブートアップ制御装置12は、図1に示すように、SRAM24へのロードデータのエラー有無を検出し、エラーがあった場合、訂正する手段であるエラー検出・訂正処理部40を備え、不揮発性メモリ38の複数ブロックに同一ブートアッププログラムのセットを格納し、ロードしたブロックにデータエラーが発生した場合、エラー訂正処理を行い、エラー訂正不可能な場合、他のセットを逐次選択し、選択したセットをSRAM24に再ロードし、エラー検出とエラー訂正を実行する。
更に、CPU命令コードは、ブートアップコードを実行するまでに必要の無い装置に対する算術論理演算命令;ブートアップコードを実行するまでに影響の無い装置に対する算術論理演算命令;ブートアップコードを実行終了するまでに必要の無いメモリに対する算術論理演算命令;ブートアップコードを実行終了するまでに影響の無いメモリに対する算術論理演算命令、ブートアップコードを実行するまで必要の無いレジスタに対する算術論理演算命令;ブートアップコードを実行するまでに影響の無いレジスタに対する算術論理演算命令;ブートアップコードを実行するまでに必要の無い装置に対するデータ転送命令;ブートアップコードを実行するまでに影響の無い装置に対するデータ転送命令;ブートアップコードを実行終了するまでに必要の無いメモリに対するデータ転送命令;ブートアップコードを実行終了するまでに影響の無いメモリに対するデータ転送命令;ブートアップコードを実行するまで必要の無いレジスタに対するデータ転送命令、ブートアップコードを実行するまでに影響の無いレジスタに対するデータ転送命令;ブートアップコードを実行終了するまで必要の無い周辺機器に対する入出力命令及びブートアップコードを実行終了するまで影響の無い周辺機器に対する入出力命令の内、いずれであっても良い。
ここで、レジスタとは、CPUの命令セットに定義されているレジスタ類に対して無意味な操作をループで実行し、実効的なNOPのループ実行を実現する機能を有するものであって、例えば、無効データが格納されているアキュムレータレジスタにインクリメント命令を連続実行するなどの動作をするものである。
又、ここでメモリとは、汎用DRAM或いは汎用SRAMで構成されたメインメモリを意味する。
ここで周辺装置と周辺機器、更にメモリは、広義には全て周辺装置に分類される。ここで周辺装置とは、ボード形態で供給するものである。周辺機器とは大規模なセット機器を想定することができる。例えば、装置としては、汎用メモリ(DRAM,SRAM)、ビデオカード、USBインタフェース、PCカードインタフェース等である。機器としては、モニター、プリンタ、キーボード等の周辺端末機器等である。
更に、第1の実施の形態に係るマイクロプロセッサブートアップ制御装置12においては、分岐命令の示すアドレスがブートアップコードのスタート番地を示していても良く、分岐命令の示すアドレスを不揮発性メモリ38上の一部から提供しても良く、複数のブートアッププログラムセットを不揮発性メモリ38上に格納し、装置の入力ピンの状態によりブートアッププログラムセットを選択し、該選択されたブートアッププログラムをSRAM24へロードしても良い。
或いは、第1の実施の形態に係るマイクロプロセッサブートアップ制御装置12においては、不揮発性メモリ38からブートアップコードをSRAM24に転送完了後、CPU及び、マイクロプロセッサブートアップ制御装置12以外に対してリセット動作を行いブートアップコードを実行させても良い。
CPUバスインタフェースを構成するホストCPUバス42にはアドレス信号、データバス信号、ライトイネーブル信号(WE)、出力イネーブル信号(OE)、その他の信号が転送される。外部にCPUを接続するホストCPUバス42は、ホストCPUバス信号(HBS)を転送するデータバスを介して、ホストインタフェース部10及びANDゲート32に接続されている。ANDゲート32に対しては、ライトイネーブル信号(WE)、アウトプットイネーブル信号(OE)が供給されている。
ホストCPUバス42には、例えばメインメモリを構成するSRAM24を備えるブートアップ制御装置12、その他の周辺装置が複数接続されている。不揮発性メモリ38に対するブートアップ制御装置12は、ホストインタフェース部10、不揮発性メモリの制御装置であるブートアップ制御シーケンサ26、SRAM24、エラー検出・訂正処理部40から構成され、例えば、多値NAND型不揮発性メモリを除く部分を同一チップ上に形成してワンチップLSIで実現する。SRAM24には多値NAND型不揮発性メモリ38からロードしたプログラムを格納する。システムに電源が投入され、SRAM24へのNANDデータロードが終了した後、CPUはSRAM24をアクセスしてブートアップ処理を開始する。
[ブートアップ処理]
(a)システムに電源が投入されると、パワーオンリセットがホストCPUとブートアップ制御装置12にかかり、リセット解除後に動作開始する。
(b)CPUはブートプログラム実行目的でブートアップ制御装置12内のSRAM24をROMに見立ててアクセスする。
(c)次に、ブートアップ制御装置12はSRAM24へのNANDデータロードを開始し、SRAM24へのNANDデータロードが完了するまでの第1フェーズで、CPU出力アドレスに関係なく、CPUに無演算命令(NOP)コードを出力し続け、CPUを実効的に待機状態にする。
(d)次に、ブートアップ制御装置12は、SRAM24へのNANDデータロードが完了した第2フェーズで、CPU出力アドレスに関係なく、ジャンプ命令を出力する。
(e)次に、ブートアップ制御装置12は、ジャンプ命令出力後の第3フェーズでは、CPU出力アドレスに応じた命令を出力する。CPUは第1フェーズでプログラムカウンタがフリーラン状態で更新されているため、CPU出力アドレスはインバリッドな値になっているが、第2フェーズのジャンプ命令によってそのアドレスが確定し、正常なプログラム実行ルーチンに移行できる。
[NANDリードデータのエラー処理]
続いて、NANDリードデータのエラー処理について説明する。
本発明の第1の実施の形態に係るマイクロプロセッサブートアップ制御装置12に適用する多値NAND型不揮発性メモリ38の多値NANDブートコード格納ページアドレスは、図3に示すように、NANDページアドレスマップで、(0)〜(5)の6ページあり、各ページは528バイト(512バイト分のデータ記憶部+16バイト分の冗長部)の容量を備える。
(a)ブートアップ制御装置12においては、ページ0をエラー検出・訂正処理部40でエラーチェックを実行しつつ、SRAM24にロードし、エラーがなければロード処理完了とし、エラーが発生した場合は異常終了とする。ブートコードのセットがページ(0)に格納されており、このセットのコピーをページ(1)〜(5)にも冗長に格納している。図1に示すブートアップ制御装置12は、最初に多値NAND型不揮発性メモリ38のページ(0)にあるセット1をSRAM24にロードするが、多値NAND型不揮発性メモリ38からSRAM24へのデータロードと並列に、エラー検出・訂正処理部40でエラーチェック処理を行う。エラーがなければ、ロード処理完了し、上述フェーズ2,3に移行する。
(b)エラーがあった場合、エラー検出・訂正処理部40は、エラーが発生したバイトアドレスとエラー訂正情報を記憶し、これらの情報に基づいて、SRAM24にロードされているエラー発生アドレスのデータ訂正を行い、ロード処理完了し、上述フェーズ2,3に移行する。
(c)訂正不可能エラーの場合、予備の冗長セット2〜5を逐次ロードし、同様にエラー検出・訂正を行う。最終セット5までこれを繰り返しても訂正不可能ならば(全セット訂正不可能エラーだった場合)、ブートエラーとして異常終了する。冗長セット数は目標のブートエラー回避率に応じて任意に設定すればよく、設定数を予めブートアップ制御装置12に通知すればよい。或いは、冗長セットの中に、最終セットを識別させるコードを格納し、このコードでブートアップ制御装置12が再ロードを自動停止するようにしても良い。更に、不揮発性メモリ38の消去ブロック(例えば16キロバイト)の複数ブロックに冗長セットを設け、更にブートエラー回避率を上げることができる。
本発明の第1の実施の形態に係るマイクロプロセッサブートアップ制御装置においては、多値NAND型不揮発性メモリ38をブートROMに代用するシステムで、NANDリードデータをSRAM24に転送後、ホストCPUがSRAM24をブートROMとしてアクセスしてブート実行するもので、多値NAND型不揮発性メモリ38からSRAM24へのロードが完了しSRAM24がリードレディになるまでの間、ホストCPUにSRAMリードデータとして無演算(IDLE)命令(NOPなど)を出力し、CPUを実効的に待機(WAIT)状態にする動作を実行することができる。
以上のように、本発明の第1の実施の形態に係るマイクロプロセッサブートアップ制御装置によれば、ブートアップ制御装置12とCPUのパワーオンリセット信号を独立に生成、供給する必要がないため、パワーオンリセット回路を簡素化でき、SRAMレディータイミングに合わせて最短時間でCPUのSRAMアクセスを許可でき、システム立ち上がりの平均時間を短縮できるマイクロプロセッサブートアップ制御装置を実現することができる。
(第2の実施の形態)
本発明の第2の実施の形態に係る不揮発性メモリの制御装置26の構成は、図2に示すように、外部の不揮発性メモリ38,揮発性メモリであるSRAM24及びホストインタフェース部10に対して接続され、不揮発性メモリ38のアドレスを指定するアドレスジェネレータ18と、アドレスジェネレータ18に接続されアドレスジェネレータ18からアドレスジェネレータメモリアドレス信号AGMAを受信し、SRAM24に対して内部メモリアドレス信号IMAを供給する第1のセレクタ20と、SRAM24からの内部メモリリードデータ信号IMRを受信して、ホストインタフェース部10に対して外部メモリリードデータ信号EMRを供給する第2のセレクタ14と、第2のセレクタ14及び第1のセレクタ20に対して、内部制御信号SMSを供給し、アドレスジェネレータ18に対して、内部制御信号SAGを供給するステートマシン16と、第2のセレクタ14に対して無演算命令信号NOPを発生する無演算命令コード生成回路22とを備える。
又、セルの保持データを連続するページアドレスに割り当てる不揮発性メモリ38を更に備え、不揮発性メモリ38のアドレスが連続する偶数ページ、奇数ページに同一データを書き込み、一方のページのみをアクセスする不揮発性メモリの制御装置26の構成としても良い。
又、セルの保持データを連続するページアドレスに割り当てる多値NAND型不揮発性メモリ38を更に備え、多値NAND型不揮発性メモリ38のアドレスが連続する偶数ページ、奇数ページに同一データを書き込み、一方のページのみをアクセスする構成としても良い。
又、多値NAND型不揮発性メモリ38は、データの信頼性を要求するデータ、例えばブートアップ命令コード、システムを起動するのに必要なパラメータなどを格納することもできる。
本発明の第2の実施の形態に係る不揮発性メモリの制御装置(ブートアップ制御シーケンサ)26に適用する多値NAND型不揮発性メモリ38の多値NANDブートコード格納ページアドレスは、図3に示すように、NANDページアドレスマップで、(0)〜(5)の6ページあり、各ページは、例えば、512バイトの容量を備える。ブートコードのセットがページ1に格納されており、このセットのコピーがページ2にも格納されている。ブートアップ制御装置12はページ0をエラー検出・訂正処理部40でエラーチェックを実行しつつ、SRAM24にロードし、エラーがなければロード処理完了とし、エラーが発生した場合は異常終了とする。
本発明の第2の実施の形態に適用する多値NAND型不揮発性メモリ38は、図4に示すように、複数のメモリセルブロック28を備え、更に各メモリセルブロック28は、それぞれ、例えば0〜63ページからなるページ単位30を備えている。また、多値NAND型不揮発性メモリ38はデータ入出力を行うためのページバッファ31を備えている。ページバッファの記憶容量は、528バイト(512バイト+16バイト)である。データ書込などの際には、ページバッファは、自身の記憶容量に相当する1ページ分の単位でデータ入出力処理を実行する。ここで、「ページ」とは、ページバッファのデータ入出力処理により書き込み又は読み出しが可能な単位である。
多値NAND型不揮発性メモリ38において、各メモリセルは2のN乗(Nは2以上の整数)のしきい値状態を有している。つまり、各メモリセルはNビットの情報を記憶することができる。以下においては、説明の便宜上、各メモリセルが4つのしきい値状態を有する場合について説明する。ページ単位30へのアドレス発生回路は、例えば、図2中に示されるアドレスジェネレータ18を用いることもできる。
本発明の第2の実施の形態に適用する多値NAND型不揮発性メモリ38のページ単位において、奇数ページ及び偶数ページは、図5に示すように、連続したページ単位によって表される。例えば、1〜4096ビット、即ち、512バイトの偶数ページ(0)及び奇数ページ(1)が連続したページ単位として表されている。
本発明の第2の実施の形態に適用する多値NAND型不揮発性メモリにおいて、4値NANDセルの保持データしきい値分布は、図6に示すように、2ビット(bit)データの下位ビットをNANDデバイス外部から見た論理的偶数ページの1ビットデータに割り当て、上位ビットを奇数ページの1ビットデータに割り当てている。
偶数、奇数ページに同一データを書き込むので、セルのしきい値分布は“11”, “10”, “00”, “01”の4通り中、“11”,“00”のみになる。
読み出し動作は、まず、しきい値リード“1,0”をリファレンスに保持データを識別する。この判定でしきい値より低ければ保持データ“11”で判定処理終了する。この判定でしきい値より高ければ、しきい値リード“0,1”で判定し、低いかどうか確認する。論理的には2回目の判定結果は低くなる。物理的にも保持データが高い方に誤って経年変化することは通常ありえない。それは、メモリセル外部からメモリセルのフローティングゲートに対して電荷を注入しなければ、しきい値電圧は高いほうに遷移しない理由による。これにより、多値NAND型不揮発性メモリ38の電荷抜け等の経年劣化による読み出しデータエラーを大幅に低減することができる。
尚、図3に示した多値NAND型不揮発性メモリの多値NANDブートコード格納ページアドレスにおいて、セット2及びセット3はセット1にエラーがあった場合の予備セットであり、結果としてページ(1)〜ページ(5)にはページ(0)と同一データが格納されている。
本発明の第2の実施の形態に係る不揮発性メモリの制御装置(ブートアップ制御シーケンサ)26によれば、セルの保持データを連続するページアドレスに割り当てる多値NAND型不揮発性メモリを使用し、メモリのアドレスが連続する偶数、奇数ページに同一データを書き込み、一方のページのみをアクセスすることによって、多値NAND型不揮発性メモリをブートROMに使用する場合のデータ保持の経年劣化による微小なしきい値変動によるデータ化けの発生や、信頼性低下の問題点を解消し、エラーフリーに近い、信頼性の高い不揮発性メモリの制御装置(ブートアップ制御シーケンサ)を実現することができる。
(第3の実施の形態)
本発明の第3の実施の形態に係る情報処理システム60の構成は、図7に示すように、複数のワード線,複数のワード線の各々に接続されたN個(Nは2より大きい自然数)のしきい値状態を有する複数のメモリセルを具備し、プログラムコードとユーザデータとが格納された多値NAND型不揮発性メモリ38と、多値NAND型不揮発性メモリ38に接続され、多値NAND型不揮発性メモリ38からプログラムコードが転送される揮発性メモリであるSRAM24を備えるブートアップ制御装置12と、ブートアップ制御装置12に接続され、SRAM24に転送されたプログラムコードに基づいて動作するCPU50とを備える。各ワード線に接続された複数のメモリセルは複数のページを形成し、プログラムコードは、複数のページの一部のページのみに格納されている。
又、本発明の第3の実施の形態に係る情報処理システム60は、多値NAND型不揮発性メモリ38に接続され、多値NAND型不揮発性メモリ38を制御するNANDコントローラ58と、CPU50,ブートアップ制御装置12及びNANDコントローラ58を共通接続するCPUバス54と、CPUバス54に接続されたDRAM52とを更に備えていても良い。
更に、本発明の第3の実施の形態に係る情報処理システム60では、ブートアップ制御装置12内に配置されるアドレスジェネレータ18によって構成されるアドレス発生回路を備え、このアドレス発生回路により発生されたアドレス信号に基づいて、ページが指定される。
又、多値NAND型不揮発性メモリ38は、2つの領域に分割され、一方はN値で、他方はN/2値で使用すると共に、プログラムコードをN/2値で使用しても良い。
4値の場合の本発明の第3の実施の形態に係る情報処理システム60は、複数のワード線,複数のワード線の各々に接続された4つのしきい値状態を判別する4値メモリを有する複数のメモリセルを具備し、プログラムコードとユーザデータとが格納された多値NAND型不揮発性メモリ38と、システムの起動時に多値NAND型不揮発性メモリ38からプログラムコードが転送される揮発性メモリであるSRAM24を備えるブートアップ制御装置12と、SRAM24に転送されたプログラムコードに基づいて動作するCPU50とを備える。複数のワード線の内、1本のワード線に共通に接続された複数のメモリセルは、アドレス指定可能な奇数ページと偶数ページとを形成し、プログラムコードは、奇数ページまたは偶数ページの何れか一方のみに格納されている。
多値NAND型不揮発性メモリ38は、2つの領域に分割され、一方は4値で、他方は2値で使用すると共に、プログラムコードを2値で使用する。ユーザデータは、奇数ページと偶数ページとの両方に格納される。又、多値NAND型不揮発性メモリ38と揮発性メモリ24とは同一のパッケージに収められていても良い。
更に又、4値の場合の本発明の第3の実施の形態に係る情報処理システム60においては、ブートアップ制御装置12内に配置されるアドレスジェネレータ18によって構成されるアドレス発生回路を備え、このアドレス発生回路により発生されたアドレス信号に基づいて、起動時に奇数ページまたは偶数ページの何れか一方のみをアドレスする。
更に又、本発明の第3の実施の形態に係る情報処理システム60においては、4値の場合の簡単な構成としては、プログラムコードが格納された多値NAND型不揮発性メモリ38と、多値NAND型不揮発性メモリ38の連続するページアドレス空間に対して、偶数ページアドレス又は奇数ページアドレスのみに対してアクセスする多値NAND型不揮発性メモリの制御装置26を備えるブートアップ制御装置12と、CPUバス54と、CPUバス54を介して、多値NAND型不揮発性メモリの制御装置26に接続され、プログラムコードによってブートアップ制御されるCPU50とを備えていても良い。このような情報処理システムは、携帯電話端末に適用することもできる。
更に又、本発明の第3の実施の形態に係る情報処理システムに適用する多値NAND型不揮発性メモリ38の構成は、例えば、図9に示すように、複数のメモリセルブロック28から構成され、ブートコード用メモリセルブロック72と、多値メモリストレージ部70を備える。多値NAND型不揮発性メモリ38の物理メモリ空間は、第1及び第2の領域に分割され、第2の領域が不揮発性メモリの制御装置26によりアクセスされる構成を採用しても良い。第2の領域には、ブート時に使用されるプログラムが格納され、第1の領域には、画像データ,音声データ等のユーザデータが格納される。
本発明の第3の実施の形態に係る情報処理システムによれば、4値NAND型不揮発性メモリ38を2つの領域に分割し、一方は4値で、他方は2値で使用することにより、ユーザの用途に応じた多機能を実現することができる。更に一般化すれば、N値NAND型不揮発性メモリを2つの領域に分割し、一方はN値で、他方はN/2値で使用することにより、プログラム等の重要性の高いデータはN/2値で使用し、画像データ,音声データ等のユーザデータは蓄積情報量を確保するためにN値で使用することによって、ユーザの用途に応じた多機能情報処理システムを実現することができる。
(第4の実施の形態)
本発明の第4の実施の形態に係る情報処理システムは、図8に示すように、複数のワード線,複数のワード線の各々に接続されN個(Nは2より大きい自然数)のしきい値状態を有する複数のメモリセルを具備し、プログラムコードとユーザデータとが格納された多値NAND型不揮発性メモリ38と、多値NAND型不揮発性メモリ38に接続され、多値NAND型不揮発性メモリ38からプログラムコードが転送されるコントローラ59と、CPUバス54と、CPUバス54を介してコントローラ59に接続され、プログラムコードに基づいて動作するCPU50とを備える。
各ワード線に接続された複数のメモリセルは複数のページを形成し、プログラムコードは、複数のページの内、一部のページのみに格納される。
本発明の第4の実施の形態に係る情報処理システムにおいて、コントローラ59は、プログラムコードを記憶する揮発性メモリであるSRAM24を備えるブートアップ制御装置12,及びNANDインタフェースコントローラ62を備える。
本発明の第4の実施の形態に係る情報処理システムは、更に、多値NAND型不揮発性メモリ38に接続され、かつコントローラ59とも接続されるストレージメモリ56とブート用メモリ64を備える構成を有する。CPUバス54に接続されたDRAM52を更に備えていても良い。
多値NAND型不揮発性メモリ38,ストレージメモリ56及びブート用メモリ64は、それぞれ別々の半導体チップを用いて構成してもよいが、最も簡単には、多値NAND型不揮発性メモリ38と同一チップ上に配置することができる。この場合、多値NAND型不揮発性メモリ38の内部を多値NAND型不揮発性メモリ38,ストレージメモリ56,ブート用メモリ64としてそれぞれ分割して構成することもできる。
本発明の第4の実施の形態に係る情報処理システムにおいて、コントローラ59は、例えば、図1において、多値NAND型不揮発性メモリ38以外部分を示す。
本発明の第4の実施の形態に係る情報処理システムに適用する多値NAND型不揮発性メモリ38の構成は、例えば、図9に示すように、複数のメモリセルブロック28から構成され、ブートコード用メモリセルブロック72と、多値メモリストレージ部70を備える。多値NAND不揮発性メモリ38の物理メモリ空間は、例えば、合計1Gバイトであり、第1及び第2の領域に分割される。第2の領域はブートコード用メモリセルブロック72に対応し、第1の領域は多値メモリストレージ部70に対応する。勿論、第1の領域及び第2の領域に分割することは必須ではなく、多値NAND型不揮発性メモリ38の物理メモリ空間をブートROMとしてのみ使用しても良い。
NANDインタフェースコントローラ62は、多値NAND型不揮発性メモリ38のブロック管理やアドレス変換等を行う。ブートアップ制御装置12,NANDインタフェースコントローラ62及び多値NAND型不揮発性メモリ38は同一チップ上に配置することもできる。
情報処理システム60の応用例としては、例えば、携帯電話端末やPDAがある。即ち、情報処理システム60に対して、RF回路,ディスプレイ,キー入力手段等を備えることによって、携帯電話端末やPDAを実現できる。又、NAND型不揮発性メモリ38のデザインルールは、例えば、0.1μm未満である。
本発明の第4の実施の形態に係る情報処理システムによれば、多値NAND型不揮発性メモリ38を第1及び第2の2つの領域に分割し、多値メモリストレージ部70からなる第1の領域は、画像データや音声データ等の一般のユーザデータを格納し、ブートコード用メモリセルブロック72からなる第2の領域には情報処理システム60のブート時に使用されるプログラムを格納し、この第2の領域をNANDインタフェースコントローラ62によって管理することによって、ユーザの用途に応じた多機能情報処理システムを実現することができる。
(第5の実施の形態)
本発明の第5の実施の形態に係る情報処理システム60は、図10に示すように、複数のワード線,複数のワード線の各々に接続されN個(Nは2より大きい自然数)のしきい値状態を有する複数のメモリセルを具備し、プログラムコードとユーザデータとが格納された多値NAND型不揮発性メモリ38と、バス86と、多値NAND型不揮発性メモリ38に接続され、多値NAND型不揮発性メモリ38から、バス86を介してプログラムコードが転送されるコントローラ59と、バス86に接続されたシステムメモリ88とを備える。
コントローラ59の内部は、CPUバス54を介して接続されたCPU50と、メモリコントローラ82と、ブートアップローダー80と、更にメモリコントローラ82及びブートアップローダー80に対するインタフェース回路84をから構成されている。ここで、ブートアップローダー80は、外部ROMのブートコードを制御する機能を有する。
インタフェース回路84から多値NAND型不揮発性メモリ38に対しては、チップイネーブル信号CEバー、クロックイネーブル信号CLE、算術演算信号ALE、書き込みイネーブル信号WEバー、読み出しイネーブル信号REバー等の各種のメモリ制御信号が供給される。
多値NAND型不揮発性メモリ38の内部は、図10中に示されているように、領域1と領域2に分割されていて、例えば、領域1は2値コードを偶数ページ/奇数ページに記憶し、領域2は4値のユーザデータを偶数/奇数ページに記憶する。
本発明の第5の実施の形態に係る情報処理システム60に適用する多値NAND型不揮発性メモリ38の動作方法として、図11に示すように、偶数ページを割り当てる下位ビットに常にデータ“1”を書き込み、奇数ページを割り当てる上位ビットにデータを格納するようにすれば、4値のメモリセルを2値として使用することができる。このように構成することによって、しきい値変動によるデータエラーを防止することができる。
本発明の第5の実施の形態に係る情報処理システムに適用する多値NAND型不揮発性メモリの詳細な構成は、図12に示すように、2値コードを記憶する領域1と4値ユーザデータを記憶する領域2とから構成される。領域1内においては、奇数ページは不使用とし、偶数ページにのみ2値データとしてのコード情報を記憶している。一方、領域2内においては、4値データとしてユーザデータを偶数ページ,奇数ページのいずれにも記憶する構成を採用している。
本発明の第5の実施の形態に係る情報処理システムのよれば、第4の実施の形態と同様に、多値NAND型不揮発性メモリ38を第1及び第2の2つの領域に分割し、ユーザの用途に応じた多機能情報処理システムを実現することができると共に、更に、図11に示すような2値、4値データの記憶しきい値分布における偶数ページ/奇数ページの利用方式によって、しきい値変動によるデータエラーを防止することができる。
(その他の実施の形態)
上記のように、本発明は第1乃至第4の実施の形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなろう。
このように、本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。したがって、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
本発明の第1の実施の形態に係るマイクロプロセッサブートアップ制御装置の模式的ブロック構成図。 本発明の第2の実施の形態に係る多値不揮発性メモリの制御装置を構成するブートアップ制御シーケンサの模式的ブロック構成図。 本発明の第1及び第2の実施の形態に適用する多値NAND型不揮発性メモリの多値NANDブートコード格納ページアドレスを説明する模式図。 本発明の第2の実施の形態に適用する多値NAND型不揮発性メモリのページ単位及びメモリセルブロックの構成を説明する模式図。 本発明の第2の実施の形態に適用する多値NAND型不揮発性メモリのページ単位において、奇数ページ及び偶数ページについて説明する模式図。 本発明の第2の実施の形態に適用する多値NAND型不揮発性メモリにおいて、4値NANDセルのしきい値分布の例について説明する模式図。 本発明の第3の実施の形態に係る情報処理システムの模式的ブロック構成図。 本発明の第4の実施の形態に係る情報処理システムの模式的ブロック構成図。 本発明の第3及び第4の実施の形態に係る情報処理システムに適用する多値NAND型不揮発性メモリのブートコード用メモリセルブロックと多値メモリストレージ部とを共に備える構成を説明する模式図。 本発明の第5の実施の形態に係る情報処理システムの模式的ブロック構成図。 本発明の第5の実施の形態に適用する多値NAND型不揮発性メモリにおいて、4値NANDセルのしきい値分布の例について説明する模式図。 本発明の第5の実施の形態に係る情報処理システムに適用する多値NAND型不揮発性メモリの詳細な構成図であって、2値コードを記憶する領域1と4値ユーザデータを記憶する領域2を備える構成を説明する模式図。
符号の説明
10・・・ホストインタフェース部
12・・・(マイクロプロセッサ)ブートアップ制御装置
14・・・第2のセレクタ
16・・・ステートマシン
18・・・アドレスジェネレータ(アドレス発生回路)
20・・・第1のセレクタ
22・・・無演算命令コード生成回路
24・・・揮発性メモリ(SRAM)
26・・・不揮発性メモリの制御装置(ブートアップ制御シーケンサ)
28・・・メモリセルブロック
30・・・ページ単位
31・・・ページバッファ
32・・・ANDゲート
34・・・バッファ回路
36・・・セレクタ
38・・・(多値NAND型)不揮発性メモリ
40・・・エラー検出・訂正処理部
42・・・ホストCPUバス
50・・・CPU
52…DRAM
54…CPUバス
56…ストレージメモリ
58…NANDコントローラ
59…コントローラ
60…情報処理システム
62…NANDインタフェースコントローラ
64…ブート用メモリ
70…多値メモリストレージ部(第1の領域)
72…ブートコード用メモリセルブロック(第2の領域)
80…ブートアップローダー
84…インタフェース回路
86…バス
88…システムメモリ
WE…ライトイネーブル信号
OE…アウトプットイネーブル信号
HBS…ホストCPUバス信号
CLK…クロック信号
EMR…外部メモリリードデータ(信号)
EMA…外部メモリアドレス(信号)
IMR…内部メモリリードデータ(信号)
IMA…内部メモリアドレス(信号)
NCS…NAND制御信号
NMD…NANDメモリデータ信号
ND…NANDデータ信号
ECS…エラー検出・訂正信号
SMS…内部制御信号
SAG…内部制御信号
AGMA…アドレスジェネレータメモリアドレス(信号)
NOP…無演算命令(信号)

Claims (8)

  1. CPU及び不揮発性メモリにそれぞれ接続され、前記不揮発性メモリに格納されたブートアップコードを読み込んで前記CPUをブートアップ制御するマイクロプロセッサブートアップ制御装置であって、
    前記不揮発性メモリに接続され、前記不揮発性メモリから前記ブートアップコードがロードされる揮発性メモリと、
    前記不揮発性メモリから前記揮発性メモリへの前記ブートアップコードのロードが完了するまでの間、前記CPUに対して無演算命令を送出し続けるブートアップ制御シーケンサと、
    前記不揮発性メモリから前記揮発性メモリへの前記ブートアップコードのロードが完了した後、前記CPUを前記ブートアップコードの実行ルーチンに移行させる分岐命令を、前記CPUに送出するホストインタフェース部と
    を備えることを特徴とするマイクロプロセッサブートアップ制御装置。
  2. 前記ブートアップ制御シーケンサは、前記不揮発性メモリから前記揮発性メモリへの前記ブートアップコードのロードが完了するまでの間、前記CPUと前記ホストインタフェース部とを接続するCPUバス上に、前記CPUが前記CPUバス上に接続されたメモリにアクセスするためのCPU出力アドレスに関わらず、前記CPUに対しての前記無演算命令を送出し続けることを特徴とする請求項1記載のマイクロプロセッサブートアップ制御装置。
  3. 前記ホストインタフェース部は、前記不揮発性メモリから前記揮発性メモリへの前記ブートアップコードのロードが完了した後、前記CPUと前記ホストインタフェース部とを接続するCPUバス上に、前記CPUが前記CPUバス上に接続されたメモリにアクセスするためのCPU出力アドレスに関わらず、前記CPUに対して前記分岐命令を送出し、前記ブートアップコードの実行ルーチンへの移行に際しての前記CPU出力アドレスを確定することを特徴とする請求項1記載のマイクロプロセッサブートアップ制御装置。
  4. 前記分岐命令が示す前記CPU出力アドレスに応答する読み出しデータが、前記無演算命令から、ロードが完了した前記ブートアップコードのデータに切り替わることを特徴とする請求項3記載のマイクロプロセッサブートアップ制御装置。
  5. CPUと、
    ブートアップコードを格納する不揮発性メモリと、
    前記CPU及び前記不揮発性メモリに接続され、前記不揮発性メモリから前記ブートアップコードを読み込んで前記CPUをブートアップ制御するマイクロプロセッサブートアップ制御装置と
    を備え、前記マイクロプロセッサブートアップ制御装置は、前記不揮発性メモリに接続され、前記不揮発性メモリから前記ブートアップコードがロードされる揮発性メモリと、
    前記不揮発性メモリから前記揮発性メモリへの前記ブートアップコードのロードが完了するまでの間、前記CPUに対して無演算命令を送出し続けるブートアップ制御シーケンサと、前記不揮発性メモリから前記揮発性メモリへの前記ブートアップコードのロードが完了した後、前記CPUを前記ブートアップコードの実行ルーチンに移行させる分岐命令を、前記CPUに送出するホストインタフェース部とを備えることを特徴とする情報処理システム
  6. 前記ブートアップ制御シーケンサは、前記不揮発性メモリから前記揮発性メモリへの前記ブートアップコードのロードが完了するまでの間、前記CPUと前記ホストインタフェース部とを接続するCPUバス上に、前記CPUが前記CPUバス上に接続されたメモリにアクセスするためのCPU出力アドレスに関わらず、前記CPUに対して前記無演算命令を送出し続けることを特徴とする請求項5記載の情報処理システム。
  7. 前記ホストインタフェース部は、前記不揮発性メモリから前記揮発性メモリへの前記ブートアップコードのロードが完了した後、前記CPUと前記ホストインタフェース部とを接続するCPUバス上に、前記CPUが前記CPUバス上に接続されたメモリにアクセスするためのCPU出力アドレスに関わらず、前記CPUに対して前記分岐命令を送出し、前記ブートアップコードの実行ルーチンへの移行に要する前記CPU出力アドレスを確定することを特徴とする請求項5記載の情報処理システム。
  8. 前記分岐命令が示す前記CPU出力アドレスに応答する読み出しデータが、前記無演算命令から、ロードが完了した前記ブートアップコードのデータに切り替わることを特徴とする請求項7記載の情報処理システム。
JP2004086737A 2004-03-24 2004-03-24 マイクロプロセッサブートアップ制御装置、及び情報処理システム Expired - Fee Related JP4357331B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2004086737A JP4357331B2 (ja) 2004-03-24 2004-03-24 マイクロプロセッサブートアップ制御装置、及び情報処理システム
US11/084,039 US7464259B2 (en) 2004-03-24 2005-03-21 Microprocessor boot-up controller, nonvolatile memory controller, and information processing system
US11/838,463 US7616507B2 (en) 2004-03-24 2007-08-14 Microprocessor boot-up controller, nonvolatile memory controller, and information processing system
US11/838,484 US7725706B2 (en) 2004-03-24 2007-08-14 Microprocessor boot-up controller, nonvolatile memory controller, and information processing system
US12/756,836 US8171281B2 (en) 2004-03-24 2010-04-08 Microprocessor boot-up controller connected to a processor and NAND flash memory for controlling the boot-up of a computer device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004086737A JP4357331B2 (ja) 2004-03-24 2004-03-24 マイクロプロセッサブートアップ制御装置、及び情報処理システム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2009142432A Division JP4719290B2 (ja) 2009-06-15 2009-06-15 情報処理システム

Publications (2)

Publication Number Publication Date
JP2005275697A JP2005275697A (ja) 2005-10-06
JP4357331B2 true JP4357331B2 (ja) 2009-11-04

Family

ID=35055744

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004086737A Expired - Fee Related JP4357331B2 (ja) 2004-03-24 2004-03-24 マイクロプロセッサブートアップ制御装置、及び情報処理システム

Country Status (2)

Country Link
US (4) US7464259B2 (ja)
JP (1) JP4357331B2 (ja)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7279718B2 (en) * 2002-01-28 2007-10-09 Philips Lumileds Lighting Company, Llc LED including photonic crystal structure
US7730368B2 (en) * 2003-10-31 2010-06-01 Sandisk Il Ltd. Method, system and computer-readable code for testing of flash memory
US20060205513A1 (en) * 2005-03-09 2006-09-14 Igt MRAM as nonvolatile safe storage for power hit and ESD tolerance in gaming machines
JP2006277395A (ja) * 2005-03-29 2006-10-12 Matsushita Electric Ind Co Ltd 情報処理装置及び情報処理方法
US7752382B2 (en) * 2005-09-09 2010-07-06 Sandisk Il Ltd Flash memory storage system and method
US8291295B2 (en) * 2005-09-26 2012-10-16 Sandisk Il Ltd. NAND flash memory controller exporting a NAND interface
US7631245B2 (en) * 2005-09-26 2009-12-08 Sandisk Il Ltd. NAND flash memory controller exporting a NAND interface
KR20050107369A (ko) * 2005-10-27 2005-11-11 서운식 모바일 기기를 위한 코드 직접 수행기능을 갖는 대용량저장장치 및 제어 방법
US7388781B2 (en) 2006-03-06 2008-06-17 Sandisk Il Ltd. Multi-bit-per-cell flash memory device with non-bijective mapping
US8848442B2 (en) 2006-03-06 2014-09-30 Sandisk Il Ltd. Multi-bit-per-cell flash memory device with non-bijective mapping
JP2008009919A (ja) * 2006-06-30 2008-01-17 Toshiba Corp カードコントローラ
US20080046630A1 (en) * 2006-08-21 2008-02-21 Sandisk Il Ltd. NAND flash memory controller exporting a logical sector-based interface
US20080046641A1 (en) * 2006-08-21 2008-02-21 Sandisk Il Ltd. NAND flash memory controller exporting a logical sector-based interface
JP2008090519A (ja) * 2006-09-29 2008-04-17 Toshiba Corp 記憶装置
JP2008140027A (ja) * 2006-11-30 2008-06-19 Toshiba Corp 情報処理装置及び情報処理装置の電源制御方法
KR100896181B1 (ko) * 2007-01-26 2009-05-12 삼성전자주식회사 임베디드 낸드 플래시 메모리 제어 장치 및 방법
US7818597B2 (en) * 2007-03-26 2010-10-19 International Business Machines Corporation Computer system fault detection
JP2008299919A (ja) * 2007-05-30 2008-12-11 Sony Corp 記憶装置及びデータの書き込み方法
JP4973408B2 (ja) * 2007-09-12 2012-07-11 コニカミノルタビジネステクノロジーズ株式会社 情報処理装置およびプログラム
US7633798B2 (en) * 2007-11-21 2009-12-15 Micron Technology, Inc. M+N bit programming and M+L bit read for M bit memory cells
JP2009157632A (ja) * 2007-12-26 2009-07-16 Toshiba Corp 情報処理装置
US8024557B2 (en) * 2007-12-31 2011-09-20 Icera, Inc. Booting an integrated circuit
US20090172380A1 (en) * 2007-12-31 2009-07-02 Icera Inc. Booting an integrated circuit
KR101466698B1 (ko) * 2008-02-19 2014-11-28 삼성전자주식회사 메모리 장치 및 메모리 데이터 읽기 방법
JP2010026650A (ja) * 2008-07-16 2010-02-04 Mitsubishi Electric Corp 制御装置
TWI389031B (zh) * 2008-09-15 2013-03-11 Mstar Semiconductor Inc 嵌入式電子裝置與其開機方法
US8316201B2 (en) 2008-12-18 2012-11-20 Sandisk Il Ltd. Methods for executing a command to write data from a source location to a destination location in a memory device
US8443263B2 (en) 2009-12-30 2013-05-14 Sandisk Technologies Inc. Method and controller for performing a copy-back operation
US8595411B2 (en) 2009-12-30 2013-11-26 Sandisk Technologies Inc. Method and controller for performing a sequence of commands
JP5556189B2 (ja) * 2010-01-20 2014-07-23 ソニー株式会社 記憶装置およびデータの書込み方法
TWI537826B (zh) * 2011-05-05 2016-06-11 聯詠科技股份有限公司 主晶片開機方法
US8706955B2 (en) 2011-07-01 2014-04-22 Apple Inc. Booting a memory device from a host
DE112012005589B8 (de) * 2012-01-05 2025-07-10 Mitsubishi Electric Corporation Informationsverarbeitungsvorrichtung, Informationsverarbeitungsverfahren und Computerprogramm
CN103514096B (zh) * 2012-06-18 2016-06-08 群联电子股份有限公司 数据储存方法、存储器控制器与存储器储存装置
US9081666B2 (en) * 2013-02-15 2015-07-14 Seagate Technology Llc Non-volatile memory channel control using a general purpose programmable processor in combination with a low level programmable sequencer
US9135472B2 (en) 2013-10-31 2015-09-15 Square, Inc. Systems and methods for secure processing with embedded cryptographic unit
US10410202B1 (en) * 2016-12-31 2019-09-10 Square, Inc. Expedited booting with brownout monitoring
US10410189B2 (en) 2017-09-30 2019-09-10 Square, Inc. Scanning system with direct access to memory
US11850712B1 (en) 2018-11-06 2023-12-26 Robert Carl Shields Securing tool
US10981263B1 (en) 2018-11-06 2021-04-20 Robert Carl Shields Securing tool
US10915329B2 (en) * 2019-02-24 2021-02-09 Winbond Electronics Corporation Delayed reset for code execution from memory device
US10714163B2 (en) * 2019-05-13 2020-07-14 Intel Corporation Methods for mitigating transistor aging to improve timing margins for memory interface signals

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5809531A (en) * 1992-09-21 1998-09-15 Intel Corporation Computer system for executing programs using an internal cache without accessing external RAM
WO1995006280A2 (en) * 1993-08-26 1995-03-02 Electronic Arts, Inc. Data transfer accelerating apparatus and method
JPH07302176A (ja) 1994-05-09 1995-11-14 Toshiba Corp 半導体ディスク装置
JP3980094B2 (ja) 1995-09-13 2007-09-19 株式会社東芝 不揮発性半導体記憶装置
JP3798476B2 (ja) * 1996-08-30 2006-07-19 株式会社東芝 コンピュータシステムおよびそのシステムにおけるキャッシュメモリのパワーダウン制御方法
KR100332950B1 (ko) * 1998-04-10 2002-08-21 삼성전자 주식회사 단일비트동작모드와다중비트동작모드를갖는불휘발성반도체메모리장치및그것의기입/독출방법
US6263399B1 (en) * 1998-06-01 2001-07-17 Sun Microsystems, Inc. Microprocessor to NAND flash interface
US6216224B1 (en) * 1998-06-05 2001-04-10 Micron Technology Inc. Method for read only memory shadowing
US6356965B1 (en) 1998-09-08 2002-03-12 Compaq Computer Corporation Hotkey for network service boot
JP4154771B2 (ja) * 1998-11-10 2008-09-24 ソニー株式会社 不揮発性半導体記憶装置およびそのデータ書き込み方法
JP2000173281A (ja) 1998-12-04 2000-06-23 Sony Corp 半導体記憶装置
JP2000173289A (ja) * 1998-12-10 2000-06-23 Toshiba Corp エラー訂正可能なフラッシュメモリシステム
US6601167B1 (en) * 2000-01-14 2003-07-29 Advanced Micro Devices, Inc. Computer system initialization with boot program stored in sequential access memory, controlled by a boot loader to control and execute the boot program
US7165137B2 (en) * 2001-08-06 2007-01-16 Sandisk Corporation System and method for booting from a non-volatile application and file storage device
JP3816788B2 (ja) 2001-11-22 2006-08-30 株式会社東芝 不揮発性半導体記憶装置
JP2003242787A (ja) 2002-02-14 2003-08-29 Mitsubishi Electric Corp 不揮発性半導体記憶装置
TWI228220B (en) 2002-03-08 2005-02-21 Samsung Electronics Co Ltd System boot using NAND flash memory and method thereof
US7234052B2 (en) * 2002-03-08 2007-06-19 Samsung Electronics Co., Ltd System boot using NAND flash memory and method thereof
JP4050548B2 (ja) 2002-04-18 2008-02-20 株式会社ルネサステクノロジ 半導体記憶装置
JP2004005343A (ja) 2002-04-23 2004-01-08 Sony Corp 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
KR100448905B1 (ko) * 2002-07-29 2004-09-16 삼성전자주식회사 낸드플래쉬메모리를 시스템구동 및 저장용으로 사용하는장치
JP4259922B2 (ja) * 2002-07-30 2009-04-30 シャープ株式会社 半導体記憶装置
JP2004102508A (ja) * 2002-09-06 2004-04-02 Renesas Technology Corp 半導体記憶装置
US7082525B2 (en) * 2002-10-02 2006-07-25 Sandisk Corporation Booting from non-linear memory
US7340566B2 (en) * 2002-10-21 2008-03-04 Microsoft Corporation System and method for initializing a memory device from block oriented NAND flash
JP3920768B2 (ja) * 2002-12-26 2007-05-30 株式会社東芝 不揮発性半導体メモリ
US8108588B2 (en) * 2003-04-16 2012-01-31 Sandisk Il Ltd. Monolithic read-while-write flash memory device
JP4287222B2 (ja) * 2003-09-03 2009-07-01 株式会社東芝 不揮発性半導体記憶装置
US7287154B1 (en) * 2004-02-02 2007-10-23 Trimble Navigation Limited Electronic boot up system and method
US7177977B2 (en) * 2004-03-19 2007-02-13 Sandisk Corporation Operating non-volatile memory without read disturb limitations
US7336531B2 (en) * 2004-06-25 2008-02-26 Micron Technology, Inc. Multiple level cell memory device with single bit per cell, re-mappable memory block
JP2006031871A (ja) * 2004-07-20 2006-02-02 Toshiba Corp 半導体記憶装置
KR100634436B1 (ko) * 2004-09-23 2006-10-16 삼성전자주식회사 멀티 칩 시스템 및 그것의 부트코드 페치 방법

Also Published As

Publication number Publication date
US20070291537A1 (en) 2007-12-20
US20100199082A1 (en) 2010-08-05
US20050223211A1 (en) 2005-10-06
US7616507B2 (en) 2009-11-10
US7464259B2 (en) 2008-12-09
US7725706B2 (en) 2010-05-25
US8171281B2 (en) 2012-05-01
US20070291540A1 (en) 2007-12-20
JP2005275697A (ja) 2005-10-06

Similar Documents

Publication Publication Date Title
JP4357331B2 (ja) マイクロプロセッサブートアップ制御装置、及び情報処理システム
US8180953B2 (en) Data accessing method for flash memory, and storage system and controller system thereof
US7308567B2 (en) Information processing apparatus for performing a system boot by using programs stored in a non-voltile storage device
US8255614B2 (en) Information processing device that accesses memory, processor and memory management method
US7721147B2 (en) Method and apparatus for managing bad run-time block in MLC flash memory
US20140304497A1 (en) Electronic device having function of booting operating system by bootloader, method of performing the same function, and storage medium
US10126953B2 (en) Memory management method for buffer memory, and memory control circuit unit and memory storage device using the same
US20100011158A1 (en) Memory controller, memory system, and control method for memory system
US11714656B2 (en) Memory system executing loading of software at startup and control method
CN118796557A (zh) 用于与部分保存相关的存储器操作的系统和方法
US7257703B2 (en) Bootable NAND flash memory architecture
JP4373943B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
US12182419B2 (en) Storage controller receiving read data and distribution information, method of operating the same, and method of operating storage device including the same
US7640398B2 (en) High-speed interface for high-density flash with two levels of pipelined cache
JP4719290B2 (ja) 情報処理システム
US20060143368A1 (en) Method for using a multi-bit cell flash device in a system not designed for the device
JP2007206775A (ja) メモリコントローラおよびフラッシュメモリシステム
JP2006178909A (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
EP4310847B1 (en) Storage controller
US11650738B2 (en) Integrity check of a memory
JP2011150461A (ja) 記憶装置およびデータの書込み方法
JP2013069054A (ja) 情報処理装置、プログラムおよび画像形成装置
CN116521060A (zh) 存储控制器、操作存储控制器和存储装置的方法
JP2006209625A (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060202

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080716

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20090205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090414

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090615

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: 20090707

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: 20090804

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

Free format text: PAYMENT UNTIL: 20120814

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120814

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130814

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees