JP2008158991A - NAND flash memory control system - Google Patents
NAND flash memory control system Download PDFInfo
- Publication number
- JP2008158991A JP2008158991A JP2006350203A JP2006350203A JP2008158991A JP 2008158991 A JP2008158991 A JP 2008158991A JP 2006350203 A JP2006350203 A JP 2006350203A JP 2006350203 A JP2006350203 A JP 2006350203A JP 2008158991 A JP2008158991 A JP 2008158991A
- Authority
- JP
- Japan
- Prior art keywords
- flash memory
- nand flash
- data
- nand
- memory controller
- 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
Links
Images
Landscapes
- Read Only Memory (AREA)
Abstract
【課題】NAND型フラッシュメモリコントローラを種々のNAND型フラッシュメモリに対応可能とし、機能やスペックを落とさずに制御基板を長いライフサイクルで使えるようにする。
【解決手段】システム電源をONして、メインCPUを起動させると共に、NAND型フラッシュメモリコントローラ12を起動させる。NAND型フラッシュメモリコントローラ12の起動においては、NAND型フラッシュメモリ13からNAND ID20を読み込んで、メモリアクセスに必要な個別仕様を設定すると共に、コンフィグデータ21を読み込んで、メモリアクセス時におけるスピード(アクセスタイム)を設定する。そして、NAND型フラッシュメモリ13のユーザデータ22をDRAMへコピーして、メインCPUがメインプログラムを実行する。
【選択図】 図2A NAND-type flash memory controller is compatible with various NAND-type flash memories, and a control board can be used in a long life cycle without degrading functions and specifications.
A system power supply is turned on to activate a main CPU and to activate a NAND flash memory controller. When the NAND flash memory controller 12 is activated, the NAND ID 20 is read from the NAND flash memory 13 to set individual specifications necessary for memory access, and the configuration data 21 is read to speed the memory access (access time). ) Is set. Then, the user data 22 of the NAND flash memory 13 is copied to the DRAM, and the main CPU executes the main program.
[Selection] Figure 2
Description
本発明は、NAND型フラッシュメモリの制御システムに関し、より詳しくは、プログラムデータを格納するNAND型フラッシュメモリに対してNAND型フラッシュメモリコントローラを用いて制御を行うNAND型フラッシュメモリの制御システムに関する。 The present invention relates to a control system for a NAND flash memory, and more particularly to a control system for a NAND flash memory that controls a NAND flash memory storing program data using a NAND flash memory controller.
従来、複写機、ファクシミリ、プリンタ等の機器において、メモリに格納されたプログラムデータを実行する場合、ランダムアクセス可能なメモリであることが必須であるため、プログラム格納用の不揮発メモリとしてはNOR型フラッシュメモリを採用するのが一般的であった。 Conventionally, when executing program data stored in a memory in a machine such as a copying machine, a facsimile machine, or a printer, it is essential that the memory be randomly accessible. Therefore, a NOR flash is used as a nonvolatile memory for storing a program. It was common to use memory.
しかし、最近では各機器におけるアプリケーションの増大によりプログラム容量が肥大化してきており、単位ビットあたりの単価が安く、書き込み速度の速いNAND型フラッシュメモリをプログラム格納用に採用するケースが増えている。 Recently, however, the program capacity has been enlarged due to an increase in applications in each device, and the number of NAND flash memories with low unit cost per unit bit and high writing speed is increasing for storing programs.
但し、NAND型フラッシュメモリの採用にあたっては、不良ブロックの管理、論理物理アドレスの変換、ブロックの均一化(ウエアレベリング)等の機能が必要になってくる。そこで、これらの機能をホスト側のソフトウェアを用いて行うことも可能であるが、ソフトドライバ処理の負荷を低減させるため、上記機能が搭載された汎用のNAND型フラッシュメモリコントローラが使われている。 However, in adopting the NAND flash memory, functions such as management of defective blocks, conversion of logical physical addresses, and uniformization of blocks (wear leveling) are required. Thus, although these functions can be performed using host-side software, a general-purpose NAND flash memory controller equipped with the above functions is used to reduce the load of software driver processing.
そして、このNAND型フラッシュメモリには、メモリの仕様を示すデバイスIDがあって、接続されているNAND型フラッシュメモリコントローラがこのデバイスIDを読み込むことで、NAND型フラッシュメモリの仕様に合わせた設定を行っている。 The NAND flash memory has a device ID indicating the memory specification, and the connected NAND flash memory controller reads the device ID to set the device according to the NAND flash memory specification. Is going.
このようなNAND型フラッシュメモリは、チップサイズを縮小するプロセスシュリンクによって大容量化と高速化が達成できるが、これを制御するNAND型フラッシュメモリコントローラの仕様を最新のNAND型フラッシュメモリが使える様にスケーラブルに対応させることが要請されている。 Such NAND flash memory can achieve high capacity and high speed by process shrink that reduces the chip size, but the specifications of the NAND flash memory controller that controls this can be used so that the latest NAND flash memory can be used There is a demand for scalable support.
しかしながら、NAND型フラッシュメモリで使われているデバイスIDは、メーカによって微妙に異なり、サイズが限られていることから(例えば、4Byte)、拡張機能等のスペックを読み取ることができないという課題があった。そこで、NAND型フラッシュメモリの進化と共にデバイスIDのスペックが拡張されると、NAND型フラッシュメモリコントローラの開発時に未定義の情報が必要となる場合が出てくる。 However, the device ID used in the NAND flash memory is slightly different depending on the manufacturer, and the size is limited (for example, 4 bytes), so there is a problem that the specifications such as the extended function cannot be read. . Therefore, if the specifications of the device ID are expanded with the evolution of the NAND flash memory, undefined information may be required when developing the NAND flash memory controller.
また、NAND型フラッシュメモリの変動要素には、容量、ブロックサイズ、ページサイズ、アクセス速度、あるいはバス幅などがあるが、これらを設定するにあたり、NAND型フラッシュメモリコントローラの外部端子、あるいは、他の不揮発性デバイス(例えば、EEPROM等)から設定可能な冗長的な仕様にすると、NAND型フラッシュメモリコントローラのコストアップにつながるという課題があった。 In addition, the variation factors of NAND flash memory include capacity, block size, page size, access speed, or bus width. In setting these, external terminals of the NAND flash memory controller or other If a redundant specification that can be set from a nonvolatile device (for example, EEPROM) is used, there is a problem that the cost of the NAND flash memory controller is increased.
さらに、NAND型フラッシュメモリコントローラ内のファームウェアをマスクROMからフラッシュROMに変えることによって、ハードウェアを変更せずに機能を拡張することが可能になるが、フラッシュROMへの変更はNAND型フラッシュメモリコントローラをコストアップさせるという課題があった。 Furthermore, by changing the firmware in the NAND flash memory controller from the mask ROM to the flash ROM, it becomes possible to expand the function without changing the hardware. There was a problem of increasing costs.
また、汎用のNAND型メモリモジュール(SDカード、USBメモリ)は、ライフサイクルが短いため、製品毎にNAND型コントロールICを見直すことで対応が可能である。しかし、複写機や複合機等にNAND型フラッシュメモリを組み込む場合は、機器のライフサイクルが長い上、コントローラの共通化により、後発のモデルでは最新の容量や速度を持ったNAND型フラッシュメモリの搭載を検討することが必要となるが、その時にNAND型フラッシュメモリコントローラの仕様が対応していないと、NAND型フラッシュメモリの変更によって評価や品質保証をやり直さなければならず、都合が悪いという課題があった。 In addition, general-purpose NAND type memory modules (SD card, USB memory) have a short life cycle, and can be handled by reviewing the NAND type control IC for each product. However, when NAND flash memory is incorporated into copiers, multifunction devices, etc., the life cycle of the device is long, and the use of NAND flash memory with the latest capacity and speed in later models due to the common use of controllers. However, if the specifications of the NAND flash memory controller are not compatible at that time, the evaluation and quality assurance must be repeated by changing the NAND flash memory, which is inconvenient. there were.
本発明は、上記に鑑みてなされたものであって、NAND型フラッシュメモリコントローラを幅広いNAND型フラッシュメモリに対応可能にすると共に、機能やスペックを落とすことなく制御基板を長いライフサイクルで使用することのできるNAND型フラッシュメモリの制御システムを提供することを目的とする。 The present invention has been made in view of the above, and enables a NAND flash memory controller to support a wide range of NAND flash memories and uses a control board in a long life cycle without degrading functions and specifications. An object of the present invention is to provide a control system for a NAND flash memory that can be used.
上述した課題を解決し、目的を達成するために、発明は、プログラムデータを格納するNAND型フラッシュメモリに対してNAND型フラッシュメモリコントローラを用いて制御を行うNAND型フラッシュメモリの制御システムであって、前記NAND型フラッシュメモリコントローラは、前記NAND型フラッシュメモリの特定領域に格納された設定データを読み込むことにより、当該NAND型フラッシュメモリに応じた動作仕様に変更することを特徴とする。 In order to solve the above-described problems and achieve the object, the present invention is a NAND flash memory control system that controls a NAND flash memory storing program data using a NAND flash memory controller. The NAND flash memory controller reads the setting data stored in a specific area of the NAND flash memory, and changes the operation specification according to the NAND flash memory.
また、本発明の好ましい態様によれば、前記NAND型フラッシュメモリに対して外部メディアからプログラムデータを書き込む際に、前記外部メディアに格納されている設定データを前記特定領域に書き込むことが望ましい。 Further, according to a preferred aspect of the present invention, when program data is written from an external medium to the NAND flash memory, it is desirable to write setting data stored in the external medium to the specific area.
また、本発明の好ましい態様によれば、前記NAND型フラッシュメモリの設定データが格納された書込み治具をさらに備え、前記書込み治具を前記NAND型フラッシュメモリのインターフェースに接続し、前記特定領域へ設定データを書き込むことが望ましい。 According to a preferred aspect of the present invention, the apparatus further comprises a writing jig storing setting data of the NAND flash memory, the writing jig is connected to an interface of the NAND flash memory, and the specific area is accessed. It is desirable to write setting data.
また、本発明の好ましい態様によれば、前記NAND型フラッシュメモリに格納されたプログラムデータに設定データが含まれている場合は、システムのブート後に前記NAND型フラッシュメモリコントローラがプログラムデータ内の設定データをコピーして、前記NAND型フラッシュメモリの特定領域に書き込むことが望ましい。 According to a preferred aspect of the present invention, when the program data stored in the NAND flash memory includes setting data, the NAND flash memory controller sets the setting data in the program data after the system is booted. Is preferably copied and written into a specific area of the NAND flash memory.
また、本発明の好ましい態様によれば、前記NAND型フラッシュメモリコントローラが前記NAND型フラッシュメモリの特定領域に設定データをコピーして書き込んだ後、前記NAND型フラッシュメモリコントローラをリセットしてリブートすることにより、設定データの設定値を反映させることが望ましい。 According to a preferred aspect of the present invention, after the NAND flash memory controller copies and writes setting data to a specific area of the NAND flash memory, the NAND flash memory controller is reset and rebooted. Therefore, it is desirable to reflect the setting value of the setting data.
また、本発明の好ましい態様によれば、前記設定データにフラグを設け、該設定データをコピーする否かをフラグに基づいて判断することが望ましい。 According to a preferred aspect of the present invention, it is desirable to provide a flag for the setting data and to determine whether to copy the setting data based on the flag.
また、本発明の好ましい態様によれば、前記設定データにバージョン情報を設け、該設定データを更新する否かをバージョン情報に基づいて判断することが望ましい。 According to a preferred aspect of the present invention, it is desirable to provide version information in the setting data and determine whether to update the setting data based on the version information.
本発明によれば、プログラムデータを格納するNAND型フラッシュメモリとNAND型フラッシュメモリコントローラとを備え、NAND型フラッシュメモリコントローラがNAND型フラッシュメモリの特定領域に格納された設定データを読み込むことで、当該NAND型フラッシュメモリの動作仕様に応じた設定変更を行うようにする。このように、個々のNAND型フラッシュメモリの設定データを、自身の特定領域に格納することにより、従来のデバイスIDのような容量やデータ形式による制約が無くなり、接続されたNAND型フラッシュメモリコントローラがNAND型フラッシュメモリ内の特定領域の設定データを読み込んで、様々なNAND型フラッシュメモリに応じた動作仕様に容易に設定を変更することができるという効果を奏する。 According to the present invention, a NAND flash memory for storing program data and a NAND flash memory controller are provided, and the NAND flash memory controller reads the setting data stored in a specific area of the NAND flash memory, thereby The setting is changed according to the operation specification of the NAND flash memory. In this way, by storing the setting data of each NAND flash memory in its own specific area, there is no restriction due to the capacity and data format like the conventional device ID, and the connected NAND flash memory controller There is an effect that setting data of a specific area in the NAND flash memory can be read, and settings can be easily changed to operation specifications corresponding to various NAND flash memories.
また、本発明によれば、外部メディアを使ってNAND型フラッシュメモリに対しプログラムデータを書き込む場合は、その外部メディアに格納されている設定データを特定領域に書き込むようにする。このように、製品化後に外部メディアを使ってNAND型フラッシュメモリにプログラムデータを書き込む場合は、その外部メディアに格納された設定データを特定領域に書き込み、NAND型フラッシュメモリコントローラがここから設定データを読み込むことによって、NAND型フラッシュメモリに合った動作仕様に容易に設定を変更することができるという効果を奏する。 According to the present invention, when program data is written to the NAND flash memory using an external medium, the setting data stored in the external medium is written to a specific area. As described above, when program data is written to the NAND flash memory using an external medium after commercialization, the setting data stored in the external medium is written to a specific area, and the NAND flash memory controller stores the setting data from here. By reading, there is an effect that the setting can be easily changed to the operation specification suitable for the NAND flash memory.
また、本発明によれば、NAND型フラッシュメモリの設定データが格納された書込み治具を具備し、その書込み治具を使って製品化後のNAND型フラッシュメモリのインターフェースに接続し、書込み治具に格納されている設定データをNAND型フラッシュメモリの特定領域に書き込むようにする。このように、NAND型フラッシュメモリコントローラは、NAND型フラッシュメモリの特定領域に書き込まれた設定データを読み込むことによって、NAND型フラッシュメモリに合った動作仕様に容易に設定を変更することができるという効果を奏する。 In addition, according to the present invention, the writing jig storing the setting data of the NAND flash memory is provided, and the writing jig is used to connect to the interface of the NAND flash memory after commercialization. Is stored in a specific area of the NAND flash memory. As described above, the NAND flash memory controller can easily change the setting to the operation specification suitable for the NAND flash memory by reading the setting data written in the specific area of the NAND flash memory. Play.
また、本発明によれば、NAND型フラッシュメモリに格納されたプログラムデータに設定データが含まれている場合は、システムのブート(起動)後にNAND型フラッシュメモリコントローラがNAND型フラッシュメモリのプログラムデータ内の設定データをコピーして、特定領域へ書き込むようにする。このように、NAND型フラッシュメモリコントローラは、プログラムデータ内に格納された設定データを、システムの通常起動時に特定領域へ書き込むことができるという効果を奏する。 Further, according to the present invention, when the setting data is included in the program data stored in the NAND flash memory, the NAND flash memory controller includes the program data in the NAND flash memory after the system is booted (started up). The setting data is copied and written to a specific area. As described above, the NAND flash memory controller has an effect that the setting data stored in the program data can be written to the specific area at the normal startup of the system.
また、本発明によれば、NAND型フラッシュメモリコントローラがNAND型フラッシュメモリの特定領域に設定データをコピーして書き込んだ後、NAND型フラッシュメモリコントローラをリセットしてリブート(再起動)することにより、設定データの設定値を反映させるようにする。このように、設定データの設定値を反映させる場合、システム全体の電源をON/OFFさせてブートするのではなく、NAND型フラッシュメモリコントローラにのみリセットをかけ、リブートすることにより、設定データの設定値の反映を効率良く行うことができるという効果を奏する。 Further, according to the present invention, after the NAND flash memory controller copies and writes the setting data to the specific area of the NAND flash memory, the NAND flash memory controller is reset and rebooted (restarted). Reflect the setting value of the setting data. As described above, when reflecting the setting value of the setting data, the setting data is set by resetting only the NAND flash memory controller and rebooting instead of turning on / off the entire system and booting. There is an effect that the reflection of the value can be performed efficiently.
また、本発明によれば、設定データをコピーしてNAND型フラッシュメモリの特定領域に書き込むか否かを判断するフラグを設定データに設け、NAND型フラッシュメモリコントローラが設定データのフラグの状態を見て、特定領域への設定データの書き込み判断を行うようにする。このように、フラグを使って設定データの特定領域への書き込み判断を行うため、これまで通常起動時毎に設定データの書き込み処理を行っていた無駄な処理を無くすことができるという効果を奏する。 In addition, according to the present invention, the setting data is provided with a flag for determining whether to copy the setting data and write it to a specific area of the NAND flash memory, and the NAND flash memory controller checks the status of the setting data flag. Thus, it is determined to write the setting data to the specific area. As described above, since the flag is used to determine whether to write the setting data to the specific area, there is an effect that it is possible to eliminate the useless processing that has been performed to write the setting data at each normal startup.
また、本発明によれば、設定データにバージョン情報を設け、NAND型フラッシュメモリコントローラが設定データのバージョン情報に基づいて、設定データを更新する否かの判断を行うようにする。このように、バージョン情報を使って設定データの更新判断を行うため、これまで通常起動時毎に設定データの書き込み処理を行っていた無駄な処理を無くすことができるという効果を奏する。 Also, according to the present invention, version information is provided in the setting data, and the NAND flash memory controller determines whether or not to update the setting data based on the version information of the setting data. As described above, since the update of the setting data is performed using the version information, there is an effect that it is possible to eliminate the useless processing that has been performed to write the setting data at each normal startup until now.
以下に、本発明にかかるNAND型フラッシュメモリの制御システムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。 Embodiments of a NAND flash memory control system according to the present invention will be described below in detail with reference to the drawings. Note that the present invention is not limited to the embodiments.
(第1の実施の形態)
図1は、本実施の形態にかかる複写機の制御基板の概略構成を説明するブロック図である。図1に示す制御基板は、CPU10、DRAM11、NAND型フラッシュメモリコントローラ12、NAND型フラッシュメモリ13、NOR型フラッシュメモリ14、SDカード15、およびHDD16などにより構成されている。
(First embodiment)
FIG. 1 is a block diagram illustrating a schematic configuration of a control board of the copying machine according to the present embodiment. The control board shown in FIG. 1 includes a
CPU10は、複写機全体の制御を行う制御部である。DRAM11は、NAND型フラッシュメモリ13などに格納されたプログラムデータをコピーし、このDRAM上でプログラムの実行に用いられるメモリである。NAND型フラッシュメモリコントローラ12とNAND型フラッシュメモリ13は、本発明の制御システムを構成する主要部であって、NANDインターフェース(I/F)を介して接続されている。NOR型フラッシュメモリ14は、CPU10の起動用プログラムが格納されていて、システムの電源ON時にCPU10がNOR型フラッシュメモリ14のプログラムにより起動する。SDカード15は、プログラムデータや設定データとしてのコンフィグデータを格納する着脱可能な外部メディアである。HDD16は、CPU10とATAを介して接続され、種々のデータを格納できる大容量の不揮発性メモリである。
The
図2は、図1のNAND型フラッシュメモリコントローラとNAND型フラッシュメモリとの詳細構成図である。図2に示すように、NAND型フラッシュメモリコントローラ12は、NANDインターフェースを介してNAND型フラッシュメモリ13と接続され、NAND型フラッシュメモリ13に対する制御を行うものである。NAND型フラッシュメモリコントローラ12は、CPU121、ROM122、RAM123、NANDコントローラモジュール124、USBインターフェース125、および汎用入出力ポートとしてのGPIO(General purpose Input/Output)126などを備えている。また、NAND型フラッシュメモリ13は、デバイスIDとしてのNAND ID20を格納するブロック、拡張デバイスIDとして設定データなどのコンフィグデータ(Config Data)21を格納するブロック、およびプログラムデータなどのユーザデータ22を格納するブロックなどを備えている。
FIG. 2 is a detailed configuration diagram of the NAND flash memory controller and the NAND flash memory of FIG. As shown in FIG. 2, the NAND
図3は、図2のNAND型フラッシュメモリのNAND IDの構成を説明する図である。NAND ID20は、図3の上表に示すように、メーカコード、デバイスコード、ページサイズ、ブロックサイズ、バス幅、およびスピード(アクセスタイム)などで構成されている。そして、これらのNAND IDは、図3の下表に示すように、4バイト内に収められている。
FIG. 3 is a diagram for explaining the configuration of the NAND ID of the NAND flash memory of FIG. As shown in the upper table of FIG. 3, the
図4は、図2のNAND型フラッシュメモリのコンフィグデータの構成を説明する図である。このコンフィグデータ21は、NAND型フラッシュメモリコントローラ12で決められたNAND型フラッシュメモリ13の特定領域に書き込まれる。図4の上表では、コンフィグデータ21に読み出し(Read)タイミングと書き込み(Write)タイミングのデータが書き込まれていることを示し、図4の下表では、NAND型フラッシュメモリ毎のタイミング仕様とそれに対する設定値との関係を示している。図5は、コンフィグデータをNAND型フラッシュメモリコントローラからNAND型フラッシュメモリの特定領域に書き込む際に必要な専用のコマンド構成図である。図5の専用コマンドを使ってコンフィグデータの書き込みを行うと、通常のフォーマットされたメモリ空間からはアクセスできなくなる。
FIG. 4 is a diagram for explaining the configuration of configuration data of the NAND flash memory of FIG. The
図12は、第1の実施の形態にかかるNAND型フラッシュメモリの制御システムの動作を説明するフローチャートであり、図13は、図12のステップS101のサブルーチンを示すフローチャートである。図12に示すように、システムの電源がONされると、図1のCPU10がNOR型フラッシュメモリ14からの起動(boot)処理が行われると共に(ステップS100)、本発明のNAND型フラッシュメモリコントローラ12の起動(boot)処理が行われる(ステップS101)。
FIG. 12 is a flowchart for explaining the operation of the NAND flash memory control system according to the first embodiment, and FIG. 13 is a flowchart showing a subroutine of step S101 in FIG. As shown in FIG. 12, when the system power is turned on, the
NAND型フラッシュメモリコントローラ12における起動処理では、図13に示すように、NAND型フラッシュメモリコントローラ12がNAND型フラッシュメモリ13からNAND ID20を読み込むことによって、メモリアクセスに必要な個別仕様(例えば、ページサイズ、ブロックサイズ、バス幅、アクセスタイム)を設定することができる(ステップS1010)。
In the start-up process in the NAND
続いて、NAND型フラッシュメモリコントローラ12は、図13に示すように、NAND型フラッシュメモリ13からコンフィグデータ21を読み込むことにより、メモリアクセス時におけるスピード(アクセスタイム)を設定する(ステップS1011)。
Subsequently, as shown in FIG. 13, the NAND
例えば、NAND型フラッシュメモリ13のアクセスタイムが20nsで、NAND ID20からはその情報が得られない場合、あるいは、得られたとしてもNAND型フラッシュメモリコントローラ12のファームウェアがその20nsという追加された情報を認識する仕様になっていない場合は、コンフィグデータのByte1に図4下表の0x3Bをセットすることにより、アクセスタイムに応じた最大速度30MHzの動作周波数に切替えることができる。
For example, when the access time of the
続くステップS102では、NAND型フラッシュメモリ13のユーザデータ22を図1のDRAM11へコピーする。そして、DRAM11上のアドレスにプログラムカウンタをジャンプさせてCPU10がメインプログラムを実行する(ステップS103)。そして、システムのパワーOFFによって処理が終了する(ステップS104)。
In subsequent step S102, the
このように、本発明の第1の実施の形態によれば、NAND型フラッシュメモリコントローラ12は、NAND型フラッシュメモリ13の特定領域に格納された設定データとしてのコンフィグデータ21を読み込むことにより、様々なNAND型フラッシュメモリ13に応じた動作仕様に変更することができる。
As described above, according to the first embodiment of the present invention, the NAND
(第2の実施の形態 )
第2の実施の形態では、プログラムデータと設定データ(コンフィグデータ)が格納された外部メディアとしてのSDカードを用いて、NAND型フラッシュメモリ13にプログラムデータを書き込む場合に、設定データも特定領域に書き込むようにする点に特徴がある。
(Second Embodiment)
In the second embodiment, when writing program data to the
図6は、SDカードを用いてNAND型フラッシュメモリにデータを書き込む第2の実施の形態にかかる概略構成図である。図6に示すように、SDカード15には、プログラムデータ23とコンフィグデータ21とが格納されている。これを図1に示すSDインターフェース(I/F)を介してSDカード15を制御基板に挿入した状態でシステムの電源がONされると、CPU10とNAND型フラッシュメモリコントローラ12とが起動され、SDカード15内のデータ(プログラムデータ23とコンフィグデータ21)がDRAM11にコピーされる。そして、DRAM11内のプログラムデータ23をNAND型フラッシュメモリ13にコピーすると共に、DRAM11内のコンフィグデータ21もNAND型フラッシュメモリ13の特定領域へ専用コマンドを使って書き込むものである。以下、図14を用いて動作を説明する。
FIG. 6 is a schematic configuration diagram according to the second embodiment in which data is written to a NAND flash memory using an SD card. As shown in FIG. 6,
図14は、第2の実施の形態にかかるNAND型フラッシュメモリの制御システムの動作を説明するフローチャートである。SDカード15を制御基板に挿入した状態でシステムの電源がONされると、図14に示すように、CPU10がNOR型フラッシュメモリ14から起動処理を行うと共に(ステップS200)、NAND型フラッシュメモリコントローラ12の起動処理が行われる(ステップS201)。
FIG. 14 is a flowchart for explaining the operation of the control system of the NAND flash memory according to the second embodiment. When the system power is turned on with the
ここで、SDカード15内のプログラムデータ23の有無が判断され(ステップS202)、プログラムデータ23が有る場合は、SDカード15のデータ(プログラムデータ23とコンフィグデータ21)をDRAM11へコピーする(ステップS203)。
Here, the presence / absence of the
そして、DRAM11内のプログラムデータ23をNAND型フラッシュメモリ13のユーザデータ22の領域へDMA転送にてコピーする(ステップS204)。
Then, the
次いで、DRAM11内のコンフィグデータ21をNAND型フラッシュメモリ13のコンフィグデータ21用の特定領域へ専用コマンドを使って書き込み(ステップS205)、パワーOFFにより終了する(ステップS206)。
Next, the
また、上記ステップS202において、SDカード15内にプログラムデータ23が無い場合は、通常起動と初期化が行われ(ステップS207)、NAND型フラッシュメモリ13のユーザデータ22であるプログラムデータ23をDMA転送にてDRAM11へコピーする(ステップS208)。
In step S202, if there is no
そして、CPU10は、DRAM11上のアドレスにプログラムカウンタをジャンプさせて、プログラムを実行する(ステップS209)。
Then, the
このように、本発明の第2の実施の形態によれば、製品化後に外部のSDカード15のプログラムデータとコンフィグデータ21とをNAND型フラッシュメモリ13に書き込むことができる。これにより、NAND型フラッシュメモリコントローラ12は、起動時にNAND型フラッシュメモリ13のコンフィグデータ21を読み込むことで、NAND型フラッシュメモリ13に応じた動作仕様に設定変更することができる。
Thus, according to the second embodiment of the present invention, program data and
(第3の実施の形態)
第3の実施の形態では、設定データ(コンフィグデータ21)を格納したコンフィグデータ書込み治具30をさらに備えている点に特徴がある。
(Third embodiment)
The third embodiment is characterized in that a configuration
図7は、コンフィグデータ書込み治具を用いてNAND型フラッシュメモリの特定領域にコンフィグデータの書き込みを行う第3の実施の形態にかかる概略構成図である。制御基板のフィクスチャーを使い、NANDI/Fにコンフィグデータ書込み治具21を接続し、コンフィグデータ書込み治具21のコンフィグデータ21をNAND型フラッシュメモリ13の特定領域(コンフィグデータ21の領域)へ直接書き込むことができる。
FIG. 7 is a schematic configuration diagram according to the third embodiment in which configuration data is written to a specific area of the NAND flash memory using a configuration data writing jig. Using the fixture of the control board, the configuration
このように、本発明の第3の実施の形態によれば、製品化時にコンフィグデータ書込み治具21を使うことにより、所望のコンフィグデータ21をNAND型フラッシュメモリ13の特定領域に書き込むことができる。これにより、NAND型フラッシュメモリコントローラ12は、起動時にNAND型フラッシュメモリ13のコンフィグデータ21を読み込むことで、NAND型フラッシュメモリ13に応じた動作仕様に設定変更することができる。
As described above, according to the third embodiment of the present invention, the desired
(第4の実施の形態)
第4の実施の形態では、NAND型フラッシュメモリ13に書き込まれるプログラムデータの一部に設定データ(コンフィグデータ24)が含まれている点に特徴がある。
(Fourth embodiment)
The fourth embodiment is characterized in that setting data (configuration data 24) is included in a part of program data written to the
図8は、コンフィグデータを含むプログラムデータがNAND型フラッシュメモリに書き込まれた場合の第4の実施の形態にかかる概略構成図である。図8に示すように、ROMライター40やSDカード15などを使って、コンフィグデータ24を含むプログラムデータ23をNAND型フラッシュメモリ13に書き込むことが可能である。
FIG. 8 is a schematic configuration diagram according to the fourth embodiment when program data including configuration data is written to the NAND flash memory. As shown in FIG. 8, it is possible to write
図15は、第4〜第6の実施の形態の動作を説明するフローチャートである。第4の実施の形態では、システムの電源がONされると、図15に示すように、CPU10がNOR型フラッシュメモリ14から起動処理を行うと共に(ステップS300)、NAND型フラッシュメモリコントローラ12の起動処理が行われる(ステップS301)。
FIG. 15 is a flowchart for explaining the operation of the fourth to sixth embodiments. In the fourth embodiment, when the system power is turned on, as shown in FIG. 15, the
ここで、制御基板にバージョンアップ用のSDカード15が挿入されている場合は、そのSDカード15内のプログラムデータの有無を判断し(ステップS302)、プログラムデータが有る場合は、SDカード15内にあるコンフィグデータ24を含むプログラムデータ23をDRAM11へコピーする(ステップS303)。
Here, when the
そして、DRAM11内のコンフィグデータ24を含むプログラムデータ23をNAND型フラッシュメモリ13のユーザデータ22の領域へDMA転送にてコピーし(ステップS304)、パワーOFFにより終了する(ステップS305)。
Then, the
また、システムの製造工程にあっては、ROMライター40を使ってNAND型フラッシュメモリ13のユーザデータ22の領域へコンフィグデータ24を含むプログラムデータ23を書き込むようにしても良い。
In the manufacturing process of the system, the
NAND型フラッシュメモリ13のユーザデータ22領域に書き込まれたコンフィグデータ24を含むプログラムデータ23は、図15で再度システムの電源がONされ、通常起動が行われると(ステップS300および301)、NAND型フラッシュメモリコントローラ12がユーザデータ22内のコンフィグデータ24を読み込み、専用コマンドを使ってNAND型フラッシュメモリ13の特定領域にコンフィグデータ21が書き込まれる(図8中の破線矢印参照)。
The
このように、本発明の第4の実施の形態によれば、コンフィグデータ24を含むプログラムデータ23がNAND型フラッシュメモリ13のユーザデータ22領域に書き込まれている場合、システムの通常起動時にNAND型フラッシュメモリコントローラ12がNAND型フラッシュメモリ13のユーザデータ22内のコンフィグデータ24を読み込んで、特定領域のコンフィグデータ21が書き込まれる。これにより、NAND型フラッシュメモリコントローラ12は、起動時にNAND型フラッシュメモリ13の特定領域に書き込まれたコンフィグデータ21を読み込んで、NAND型フラッシュメモリ13に応じた動作仕様に設定を変更することができる。
As described above, according to the fourth embodiment of the present invention, when the
(第5の実施の形態)
第5の実施の形態では、上記第4の実施の形態において、システムの通常起動時にユーザデータ22内のコンフィグデータ24を読み込み、専用コマンドを使って特定領域に書き込んだコンフィグデータ21の設定値を反映させる手段に特徴がある。
(Fifth embodiment)
In the fifth embodiment, in the fourth embodiment, the
すなわち、専用コマンドを使ってNAND型フラッシュメモリ13の特定領域に書き込んだコンフィグデータ21の設定値を反映させる際に、制御基板全体の電源をON/OFFして再起動させても良い。しかし、これでは特定領域内のコンフィグデータ21の設定値を反映させる以外の起動処理も行われるため、非効率となる。そこで、第5の実施の形態では、NAND型フラッシュメモリコントローラ12にのみリセットをかけ、再起動(リブート)することで、コンフィグデータ21の設定値を反映させつつ、不必要な起動処理が行われないため、効率良く処理することができる。
That is, when reflecting the set value of the
このように、本発明の第5の実施の形態によれば、NAND型フラッシュメモリ13の特定領域に書き込んだコンフィグデータ21の設定値を反映させる場合は、NAND型フラッシュメモリコントローラ12にのみリセットをかけて再起動させるため、コンフィグデータ21の設定値を反映させることができると共に、制御基板全体の電源をON/OFFする必要が無いことから、効率良く処理することができる。
As described above, according to the fifth embodiment of the present invention, when the set value of the
(第6の実施の形態)
第6の実施の形態では、上記第4の実施の形態において、NAND型フラッシュメモリ13のユーザデータ22の領域に格納されたプログラムデータ23に含まれるコンフィグデータ24を通常起動時毎に特定領域へコピーしていたが、非効率であるため、コンフィグデータにコピーをするか否かを判断するフラグを設けた点に特徴がある。
(Sixth embodiment)
In the sixth embodiment, in the fourth embodiment, the
図10は、第6の実施の形態にかかるFLAGビットを含むコンフィグデータの構成図である。図10に示すように、FLAGビットは、コンフィグデータ内のByte7のbit7に設けられていて、初期値が「1」である。
FIG. 10 is a configuration diagram of configuration data including the FLAG bit according to the sixth embodiment. As shown in FIG. 10, the FLAG bit is provided in
上記第4の実施の形態において、CPU10は、コンフィグデータ24内のFLAGビットを読み込んで確認する(図15のステップS307)。FLAGビットが「1」の場合は(ステップS308)、ユーザデータ内のコンフィグデータ24を読み込み、NAND型フラッシュメモリ13のコンフィグデータ21に専用コマンドで書き込む(ステップS309)。その後、FLAGビットに「0」を書き込んでクリアする(ステップS310)。FLAGビットが「0」の場合は、コンフィグデータ21への書き込みが行われず、通常のメインプログラムの実行に移る。
In the fourth embodiment, the
すなわち、CPU10は、NAND型フラッシュメモリコントローラ12をリセットし(ステップS311)、NAND型フラッシュメモリコントローラ12の起動と初期化を行って(ステップS312)、NAND型フラッシュメモリ13のユーザデータ22をDRAM11へコピーし(ステップS313)、DRAM11上のアドレスにプログラムカウンタをジャンプさせ、メインプログラムを実行する。
That is, the
このように、本発明の第6の実施の形態によれば、通常起動時にNAND型フラッシュメモリ13のユーザデータ内のコンフィグデータ24を特定領域のコンフィグデータ21へコピーするか否かを判断するフラグをコンフィグデータに設けることにより、無駄なコピー動作を省略して、処理を効率化することができる。
As described above, according to the sixth embodiment of the present invention, the flag for determining whether or not to copy the
(第7の実施の形態)
第7の実施の形態では、上記第4の実施の形態において、NAND型フラッシュメモリ13のユーザデータ22の領域に格納されたプログラムデータ23に含まれるコンフィグデータ24を通常起動時毎に特定領域へコピーしていたが、非効率であるため、コンフィグデータを更新する必要があるか否かをコンフィグデータのバージョン情報を使って判断するようにした点に特徴がある。
(Seventh embodiment)
In the seventh embodiment, in the fourth embodiment, the
図9は、第7の実施の形態にかかるNAND型フラッシュメモリコントローラとNAND型フラッシュメモリとの詳細構成図であり、図11は、第7の実施の形態にかかるバージョン情報を含むコンフィグデータの構成図である。まず、図9に示すように、NAND型フラッシュメモリ13のユーザデータ22内にコンフィグバージョン25というブロックが設けられる(初期値は「0」とする)。また、図9のユーザデータ22内のコンフィグデータ24には、図11に示すように、コンフィグデータ24内のByte7にバージョン情報としてのVersionデータが設けられる(初期値は「1」とする)。
FIG. 9 is a detailed configuration diagram of a NAND flash memory controller and a NAND flash memory according to the seventh embodiment, and FIG. 11 is a configuration of configuration data including version information according to the seventh embodiment. FIG. First, as shown in FIG. 9, a block called a configuration version 25 is provided in the
第7の実施の形態では、このように構成されており、図15のステップS306に相当する通常起動時において、CPU10が図9のコンフィグデータ24内のVersionデータ(図11参照)を読み込む(このバージョン値をAとする)。
In the seventh embodiment, the configuration is as described above, and the
続いて、CPU10は、NAND型フラッシュメモリ13内のユーザデータ22内のコンフィグバージョン25を読み込む(このバージョン値をBとする)。そして、両方のバージョン値を比較して、A>Bの場合のみコンフィグデータ24を読み込み、NAND型フラッシュメモリ13のコンフィグデータ21に専用コマンドで書き込む(ステップS309に相当)。
Subsequently, the
その後、バージョン値Aをコンフィグバージョン25に書き込むことによって、バージョン値Bが更新される。更新時点では、A=Bとなるため、通常起動時にNAND型フラッシュメモリ13のユーザデータ内のコンフィグデータ24は、特定領域のコンフィグデータ21へコピーされない。
Thereafter, the version value B is updated by writing the version value A into the configuration version 25. Since A = B at the time of update, the
このように、本発明の第7の実施の形態によれば、通常起動時であってもコンフィグデータのバージョン情報を見ることにより、コンフィグデータのバージョンが更新された場合のみコンフィグデータ24を特定領域のコンフィグデータ21へコピーすることが許可され、無駄なコピー動作を省略することによって、処理を効率化することができる。
As described above, according to the seventh embodiment of the present invention, the
本発明に係るNAND型フラッシュメモリの制御システムは、プログラムデータを格納する種々のNAND型フラッシュメモリに応じて動作仕様が変更可能なNAND型フラッシュメモリコントローラを備えた画像形成装置やネットワーク機器などに有用である。特に、NAND型フラッシュメモリのデバイスIDでは機能拡張できなかった仕様変更にも対応することのできるNAND型フラッシュメモリの制御システムに適している。 INDUSTRIAL APPLICABILITY The NAND flash memory control system according to the present invention is useful for an image forming apparatus or a network device having a NAND flash memory controller whose operation specifications can be changed according to various NAND flash memories storing program data. It is. In particular, the present invention is suitable for a NAND flash memory control system that can cope with specification changes that could not be expanded with the device ID of the NAND flash memory.
10 CPU
11 DRAM
12 NAND型フラッシュメモリコントローラ
13 NAND型フラッシュメモリ
14 NOR型フラッシュメモリ
15 SDカード
20 NAND ID
21 コンフィグデータ
22 ユーザデータ
23 プログラムデータ
24 コンフィグデータ
30 コンフィグデータ書込み治具
40 ROMライター
50 コンフィグバージョン
121 CPU
122 ROM
123 RAM
124 NANDコントローラモジュール
125 USBインターフェース
126 GPIO
10 CPU
11 DRAM
12 NAND
21
122 ROM
123 RAM
124
Claims (7)
前記NAND型フラッシュメモリコントローラは、前記NAND型フラッシュメモリの特定領域に格納された設定データを読み込むことにより、当該NAND型フラッシュメモリに応じた動作仕様に変更することを特徴とするNAND型フラッシュメモリの制御システム。 A NAND flash memory control system that controls a NAND flash memory storing program data using a NAND flash memory controller,
The NAND flash memory controller reads the setting data stored in a specific area of the NAND flash memory and changes the operation specifications according to the NAND flash memory. Control system.
前記書込み治具を前記NAND型フラッシュメモリのインターフェースに接続し、前記特定領域へ設定データを書き込むことを特徴とする請求項1に記載のNAND型フラッシュメモリの制御システム。 A writing jig in which setting data of the NAND flash memory is stored;
2. The NAND flash memory control system according to claim 1, wherein the writing jig is connected to an interface of the NAND flash memory, and setting data is written to the specific area.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006350203A JP2008158991A (en) | 2006-12-26 | 2006-12-26 | NAND flash memory control system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006350203A JP2008158991A (en) | 2006-12-26 | 2006-12-26 | NAND flash memory control system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2008158991A true JP2008158991A (en) | 2008-07-10 |
Family
ID=39659798
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006350203A Pending JP2008158991A (en) | 2006-12-26 | 2006-12-26 | NAND flash memory control system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2008158991A (en) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010061371A (en) * | 2008-09-03 | 2010-03-18 | Fujitsu Ltd | Flash memory control device, flash memory control method and flash memory control program |
| JP2012507763A (en) * | 2008-11-04 | 2012-03-29 | モサイド・テクノロジーズ・インコーポレーテッド | Bridge device with configurable virtual page size |
| JP2012099096A (en) * | 2010-11-03 | 2012-05-24 | Nvidia Corp | Programmable memory controller |
| US8737105B2 (en) | 2008-10-14 | 2014-05-27 | Conversant Intellectual Property Management Inc. | Bridge device architecture for connecting discrete memory devices to a system |
| US9208108B2 (en) | 2008-12-19 | 2015-12-08 | Nvidia Corporation | Method and system for improved flash controller commands selection |
| US9594675B2 (en) | 2009-12-31 | 2017-03-14 | Nvidia Corporation | Virtualization of chip enables |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005301831A (en) * | 2004-04-14 | 2005-10-27 | Renesas Technology Corp | Nonvolatile storage device, semiconductor storage device, and storage system |
| WO2006101123A1 (en) * | 2005-03-23 | 2006-09-28 | Matsushita Electric Industrial Co., Ltd. | Nonvolatile storage device and method for loading control information for nonvolatile storage device |
| JP2006331233A (en) * | 2005-05-27 | 2006-12-07 | Tdk Corp | Memory controller, flash memory system, and control method for flash memory |
-
2006
- 2006-12-26 JP JP2006350203A patent/JP2008158991A/en active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005301831A (en) * | 2004-04-14 | 2005-10-27 | Renesas Technology Corp | Nonvolatile storage device, semiconductor storage device, and storage system |
| WO2006101123A1 (en) * | 2005-03-23 | 2006-09-28 | Matsushita Electric Industrial Co., Ltd. | Nonvolatile storage device and method for loading control information for nonvolatile storage device |
| JP2006331233A (en) * | 2005-05-27 | 2006-12-07 | Tdk Corp | Memory controller, flash memory system, and control method for flash memory |
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010061371A (en) * | 2008-09-03 | 2010-03-18 | Fujitsu Ltd | Flash memory control device, flash memory control method and flash memory control program |
| US8737105B2 (en) | 2008-10-14 | 2014-05-27 | Conversant Intellectual Property Management Inc. | Bridge device architecture for connecting discrete memory devices to a system |
| JP2012507763A (en) * | 2008-11-04 | 2012-03-29 | モサイド・テクノロジーズ・インコーポレーテッド | Bridge device with configurable virtual page size |
| US9977731B2 (en) | 2008-11-04 | 2018-05-22 | Conversant Intellectual Property Management Inc. | Bridging device having a configurable virtual page size |
| US9208108B2 (en) | 2008-12-19 | 2015-12-08 | Nvidia Corporation | Method and system for improved flash controller commands selection |
| US9594675B2 (en) | 2009-12-31 | 2017-03-14 | Nvidia Corporation | Virtualization of chip enables |
| JP2012099096A (en) * | 2010-11-03 | 2012-05-24 | Nvidia Corp | Programmable memory controller |
| US9465728B2 (en) | 2010-11-03 | 2016-10-11 | Nvidia Corporation | Memory controller adaptable to multiple memory devices |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110032403B (en) | Memory device and start program loading method of electronic device | |
| US20060075395A1 (en) | Flash card system | |
| CN113254286B (en) | Log output method and system of server and related device | |
| TWI722269B (en) | Firmware updating method and electronic device using the same | |
| JPWO2008117520A1 (en) | MEMORY CONTROLLER, NONVOLATILE MEMORY SYSTEM, AND HOST DEVICE | |
| JP2004133881A (en) | Interface circuit of card type memory, asic (application specified ic) mounted with its circuit and image forming apparatus mounted with its asic | |
| JP2007206885A (en) | Computer system and system startup method | |
| JP2005157528A (en) | Memory device | |
| CN102043638A (en) | Computer system and computer startup setting method | |
| US20060047938A1 (en) | Method and apparatus to initialize CPU | |
| TWI397007B (en) | System support storage and computer system | |
| CN100444115C (en) | Apparatus and method for controlling initialization of imaging device using non-flash memory | |
| JP2008158991A (en) | NAND flash memory control system | |
| JP5970867B2 (en) | Information processing apparatus, image forming apparatus, and program | |
| JP2005182812A (en) | System and method for storing image file in computer system | |
| JP5468061B2 (en) | Electronic device system and electronic device | |
| US11722616B2 (en) | Control device, startup method, and electric apparatus | |
| JP2004220575A (en) | Interface circuit for card-type memory, ASIC with the circuit, and image forming apparatus with the ASIC | |
| JP2001195246A (en) | Information processor and device and system and method for writing basic data | |
| JP2008009799A (en) | Image forming device | |
| JP2006126987A (en) | Image processing device | |
| JP5321438B2 (en) | Electronic device, activation control method, activation control program, and recording medium | |
| JP2008269380A (en) | Information processing device | |
| JP2004302631A (en) | Information processor | |
| US10768846B2 (en) | Information processing apparatus and control method of information processing apparatus |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090723 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120125 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120131 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120529 |