WO2007148778A1 - Memory controller, nonvolatile memory device, nonvolatile memory system, and memory control method - Google Patents
Memory controller, nonvolatile memory device, nonvolatile memory system, and memory control method Download PDFInfo
- Publication number
- WO2007148778A1 WO2007148778A1 PCT/JP2007/062569 JP2007062569W WO2007148778A1 WO 2007148778 A1 WO2007148778 A1 WO 2007148778A1 JP 2007062569 W JP2007062569 W JP 2007062569W WO 2007148778 A1 WO2007148778 A1 WO 2007148778A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- program
- memory
- unit
- nonvolatile
- interface unit
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Definitions
- the present invention relates to a nonvolatile memory device such as a semiconductor memory card including a nonvolatile memory such as a flash memory as a main memory, and a memory controller built in the nonvolatile memory device. Furthermore, a nonvolatile storage system in which an access device is added to the nonvolatile storage device as a constituent element, and a memory control method are also included.
- Nonvolatile memory devices including a rewritable nonvolatile memory are in increasing demand mainly for semiconductor memory cards.
- Semiconductor memory cards are very expensive compared to optical discs and tape media, but due to their merits such as small size, light weight, earthquake resistance, and ease of handling, digital still cameras, video recording devices, etc.
- the demand is growing mainly for communication equipment such as AV equipment and mobile phones.
- This nonvolatile storage device includes a flash memory as a nonvolatile main storage memory, and has a memory controller that controls the flash memory.
- the memory controller performs read / write control on the flash memory in response to read / write instructions from an access device such as a digital still camera body.
- Patent Document 1 Japanese Patent Application Laid-Open No. 2003-58377
- the present invention provides a memory controller, a nonvolatile storage device, and a nonvolatile storage system that can cope with a change in flash memory by selectively downloading a processing program of the memory interface unit. And a memory control method.
- the memory controller of the present invention writes data to and reads data from a nonvolatile memory holding a plurality of programs in addition to user data.
- a non-volatile memory comprising a host interface unit that communicates with the outside and a program download unit that selectively downloads the program from the non-volatile memory in response to a program selection instruction;
- a memory interface unit that performs read / write control on the memory, and a program selection unit that instructs the memory interface unit to select a program necessary for read / write control of the memory interface unit, and controls the operation of each unit of the memory controller Controller section and the program Those comprising a RAM which holds a program downloaded, the by download unit.
- the nonvolatile memory device of the present invention is provided in addition to user data.
- a nonvolatile memory that holds a plurality of programs, and a memory controller that writes data to the nonvolatile memory and reads data from the nonvolatile memory
- the memory has a host interface unit that communicates with the outside, and a program download unit that selectively downloads the program from the nonvolatile memory in response to a program selection instruction, and performs read / write control to the nonvolatile memory
- a memory interface unit for controlling the memory interface unit, and a program selection unit for instructing the memory interface unit to select a program necessary for read / write control of the memory interface unit.
- the controller controls the operation of each unit of the memory controller. Nore part and the program Those comprising a RAM which holds a program downloaded, the by download unit.
- the program selection unit may select the program according to an operation mode.
- a nonvolatile storage system of the present invention is a nonvolatile storage system having a host device and a nonvolatile storage device connected to the host device, the nonvolatile storage system
- the storage device includes a nonvolatile memory that holds a plurality of programs in addition to user data, and a memory controller that writes data to the nonvolatile memory and reads data from the nonvolatile memory
- the memory controller includes a host interface unit that communicates with the host device, and a program download unit that selectively downloads the program from the nonvolatile memory in response to a program selection instruction, and the nonvolatile memory
- a memory interface unit for performing read / write control on the memory, and the memory interface
- a program selection unit for selecting and instructing the memory interface unit a program necessary for read / write control of the memory unit, which is downloaded by the control unit for controlling the operation of each unit of the memory controller and the program download unit.
- RAM for holding the program
- the program selection unit may select the program according to the type of instruction designated by the host device or the operation mode.
- the memory control method of the present invention provides a method for a non-volatile memory.
- a memory control method that selectively reads a program that reads and writes data from the nonvolatile memory in accordance with a data read and write instruction, and downloads the read program to the RAM The download process is performed at the same time as the process other than the download process.
- the program of the nonvolatile memory may be selected by a data read / write instruction or an operation of the memory controller.
- the program download unit selectively downloads a program in response to a selection instruction from the program selection unit.
- the processing of the interface unit for the non-volatile memory can be made programmable, and it is possible to deal with a plurality of types of non-volatile memories, and the RAM capacity can be reduced.
- FIG. 1 is a block diagram showing a configuration of a nonvolatile storage system in an embodiment of the present invention.
- FIG. 2A is a flowchart showing processing contents of the nonvolatile memory system.
- FIG. 2B is a flowchart showing the processing contents of the nonvolatile memory system.
- FIG. 3 is a time chart showing processing contents of the nonvolatile memory system.
- FIG. 4 is a flowchart showing the contents of read processing in the memory interface unit.
- FIG. 5 is a flowchart showing the contents of write processing in the memory interface section.
- FIG. 6 is a flowchart showing the contents of erasure processing in the memory interface unit.
- FIG. 7A is a diagram showing register specifications.
- FIG. 7B is a diagram showing the contents of each bit of the register.
- FIG. 1 is a block diagram showing the main configuration of the nonvolatile memory system according to the embodiment of the present invention.
- the nonvolatile storage system according to the present embodiment includes a host device (hereinafter referred to as a host) 160 and a nonvolatile storage device 150.
- the host 160 and the nonvolatile storage device 150 are connected by a bus 1.
- the non-volatile storage device 150 includes a memory controller 100 and a non-volatile memory 110.
- the memory controller 100 includes a host interface (IF) unit 101, a controller unit 102, a memory A re-interface (IF) unit 103 and a RAM 104 are included.
- the host interface unit 101 communicates with the host 160 via the bus 1.
- the control unit 102 includes a program selection unit 105, a logical physical conversion table 106, and a register 107.
- the memory interface unit 103 is an interface unit that communicates with the nonvolatile memory 110 via the bus 2, and includes a program download unit 108.
- the non-volatile memory 110 includes a program area 120 and a normal area 140.
- the normal area 140 includes the table area 130.
- the table area 130 is an area for holding a table such as a logical physical conversion table.
- a program describing the processing contents of the memory interface unit 103 is written in advance before product shipment.
- This program is, for example, a first processing program 121, a second processing program 122, and a third processing program 123. These processing programs are written in the program area 120 with a unique number assigned to the first byte.
- the logical-physical conversion table 106 is read from the table area 130 of the nonvolatile memory 110 and temporarily stored in the RAM in the control unit 102. It is updated after data is written or erased by the host 160 write or erase command, and is written back to the tape area 130.
- FIG. 2A and 2B are flowcharts showing the processing contents of the nonvolatile storage system in the embodiment of the present invention
- FIG. 3 is a time chart showing the processing contents of the nonvolatile storage system in the embodiment of the present invention. It is a chart. 7A and 7B show the contents of the register 107.
- the control unit 102 that senses a change in voltage when the power is turned on sets 0, 1, 0, 0 to BITO, BIT1, BIT2, and BIT3 of the register 107, respectively. This is because initialization is always performed after power-on.
- the program selection unit 105 continues to monitor the value of the register 107 to select an operation mode and a processing program, and performs the same processing as S230 in FIG. 2 described later.
- the control unit 102 sets BIT0 of the register 107 to 1, and sets BIT1 to BIT3 to 0 to return to normal operation.
- the register 107 during normal operation sets the value of the command force, the BIT0 force, and the BIT3 received by the control unit 102.
- Two or more of bits BIT1 to BIT3 in register 107 cannot be 1.
- the host 160 transmits a command to the host interface unit 101 (S200), and the host interface unit 101 receives the command (S201).
- the program selection unit 105 continues to monitor the register 107 to determine the operation mode and the processing program to be selected. (S202).
- the operation mode is classified into two types: initialization and normal operation depending on the type of command sent from the host 160.
- the value of the first byte in program area 120 is 0x01 for read, 0x02 for write, and 0x03 for erase.
- the initialization means that the memory interface unit 103 starts from the table area 130 to the RAM in the control unit 102 in response to an initialization command received from the host 160 immediately after the nonvolatile storage device 150 is powered on.
- the operation of reading the logical-physical conversion table 106 is described below.
- the normal operation refers to an operation in which the memory interface unit 103 writes, reads, or erases the normal area 140 in accordance with a command from the host 160 after initialization.
- Reading is an operation of reading data recorded at a physical address in the normal area 140 corresponding to a logical address designated by the host 160.
- the memory interface unit 103 sends an address input command to the nonvolatile memory 110. Transmit (S400), output a physical address (S401), and finally execute a read by transmitting a read start command (S402).
- the writing is an operation of writing data designated at a physical address in the normal area 140 corresponding to a logical address designated by the host 160.
- the memory interface unit 103 transmits a data address input command to the nonvolatile memory 110 (S500), outputs a physical address (S501), outputs further data (S502), and finally transmits a write start command (S503). By doing so, the writing is executed.
- the erasing is an operation of erasing data of the physical address in the normal area 140 corresponding to the logical address designated by the host 160 from the normal area 140.
- the memory interface unit 103 transmits an address input command to the nonvolatile memory 110 (S600), outputs a physical address (S601), and finally transmits an erase start command (S602) to execute erasure.
- the host interface unit 101 determines whether or not the operation mode is normal operation (S203). If it is a normal operation, the host interface unit 101 retrieves the logical address of the command argument (S204), and the host interface unit 101 transmits the command and logical address to the control unit 102 (S205). The control unit 102 converts the logical address into a physical address using the logical / physical conversion table 106 (S206), and the control unit 102 transmits the physical address to the memory interface unit 103 (S207). Next, the memory interface unit 103 accesses the normal area 140 based on the program on the RAM 104 (S213).
- the logical-physical conversion process described above refers to a logical block and a physical block while performing so-called wear leveling to cope with the limit (lifetime) of the number of writes in the nonvolatile memory 110. Since this process can be realized using a known technique, the explanation is omitted.
- the program selection unit 105 executes Select a program.
- select the program for example, if the operation mode is initialized from the value in register 107 and the processing program required for the RAM is read, select the “read” program whose first byte in the program area 120 is 0x01. To do. If the operation mode is normal operation and the processing program necessary for the RAM 104 is erasure, the “erase” program in which the first byte of the program area 120 is 0x03 is selected.
- the program selection unit 105 holds the data of the first byte (hereinafter referred to as a new first byte).
- the program download unit 108 acquires the first 1 byte (hereinafter referred to as the old first byte) of the program already downloaded from the RAM 104 and holds it. Then, the program download unit 108 compares the data of the new first byte and the old first byte. If they are different, it is determined that the download has not yet been made, and the program is downloaded (S210). If these are the same, it is determined that the download has been performed and the processing of S210 is not executed. In S209, for example, if the host 160 command is executed twice in succession and the operation mode is normal operation and the program is erased, the program is judged to have already been downloaded the second time and the processing of S210 is skipped. Do not download.
- processing from S205 force to S207 is S220
- processing from S208 force to S210 is S230.
- control unit 102 With reference to FIG. 3, the time relationship between the control unit 102 and its program selection unit 105, the memory interface unit 103 and its program download unit 108 will be described.
- the memory interface unit 103 accesses the nonvolatile memory 110 based on the physical address.
- the host 160 accesses the nonvolatile storage device 150 based on the logical address. Therefore, the control unit 102 must convert the logical address to a physical address and output the physical address to the memory interface unit 103. Nanare ,. In other words, in order for the memory interface unit 103 to access the nonvolatile memory 110, the physical address must be determined by the logical-physical conversion process of the control unit 102.
- the program selection unit 105 selects a program using the period during which the control unit 102 performs logical-physical conversion processing, and the program download unit 108 downloads the program. Then, access to the normal area based on the program.
- the program download unit 108 selectively downloads a program in accordance with a selection instruction from the program selection unit 105. Can be reduced.
- the download process of the program download unit 108 is performed in parallel with the process such as the logical-physical conversion of the control unit 102, so the download process is performed within the time required for the process of the control unit 102. It can be performed. In other words, the time overhead required for downloading becomes unnecessary.
- a program for operating the memory interface unit 130 prior to product shipment is given a number in the first byte and written in the program area 120 in advance, so that the program selected by the program selection unit 105 is programmed.
- the programs on the RAM 104 can be compared. Result of comparison Downloading to RAM can be done only when is different. In this way, power saving can be realized by minimizing the download from the program area 120 to the RAM 104.
- the non-volatile storage memory which is useful in the present invention proposes a cost reduction of a memory controller and a non-volatile storage device or a non-volatile storage system on which the memory controller is mounted, and a non-volatile storage device such as a semiconductor memory card. This is useful in still image recording / playback devices, moving image recording / playback devices, and mobile phones.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
- Stored Programmes (AREA)
- Memory System (AREA)
Abstract
A program download unit (108) downloads, in accordance with a selecting instruction of a program selecting unit (105), a program to be executed by a memory interface unit (103), selectively from a nonvolatile memory (140). The download of the program is performed in parallel with the operation in a control unit (102), so that a time overhead can be made unnecessary for the download. In accordance with a command from a host (160), the necessary program is selected so that the unnecessary program need not be downloaded every time, thereby to realize a power economy. As a result, the operations of the interface unit on the nonvolatile memory can be made programmable thereby to correspond to a plurality of kinds of nonvolatile memories, to reduce the capacity of a program storing RAM and to realize a high-speed access and the power economy.
Description
明 細 書 Specification
メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ 制御方法 MEMORY CONTROLLER, NONVOLATILE STORAGE DEVICE, NONVOLATILE STORAGE SYSTEM, AND MEMORY CONTROL METHOD
技術分野 Technical field
[0001] 本発明は、フラッシュメモリ等の不揮発性メモリを主記憶メモリとして備える半導体メ モリカード等の不揮発性記憶装置、及びそれに内蔵されるメモリコントローラに関する ものである。さらに、不揮発性記憶装置にアクセス装置を構成要件として加えた不揮 発性記憶システム、ならびにメモリ制御方法も含む。 The present invention relates to a nonvolatile memory device such as a semiconductor memory card including a nonvolatile memory such as a flash memory as a main memory, and a memory controller built in the nonvolatile memory device. Furthermore, a nonvolatile storage system in which an access device is added to the nonvolatile storage device as a constituent element, and a memory control method are also included.
背景技術 Background
[0002] 書き換え可能な不揮発性メモリを備える不揮発性記憶装置は、半導体メモリカード を中心にその需要が広まっている。半導体メモリカードは、光ディスクやテープメディ ァなどと比較して非常に高価格なものではあるが、小型 ·軽量 ·耐震性 ·取り扱いの簡 便さ等のメリットにより、デジタルスチルカメラや動画記録機器などの AV機器や携帯 電話などの通信機器を中心にその需要が広まってきている。 BACKGROUND [0003] Nonvolatile memory devices including a rewritable nonvolatile memory are in increasing demand mainly for semiconductor memory cards. Semiconductor memory cards are very expensive compared to optical discs and tape media, but due to their merits such as small size, light weight, earthquake resistance, and ease of handling, digital still cameras, video recording devices, etc. The demand is growing mainly for communication equipment such as AV equipment and mobile phones.
[0003] この不揮発性記憶装置は、不揮発性の主記憶メモリとしてフラッシュメモリを備え、 それを制御するメモリコントローラを有している。メモリコントローラは、デジタルスチル カメラ本体等のアクセス装置からの読み書き指示に応じて、フラッシュメモリに対する 読み書き制御を行うものとなっている。 [0003] This nonvolatile storage device includes a flash memory as a nonvolatile main storage memory, and has a memory controller that controls the flash memory. The memory controller performs read / write control on the flash memory in response to read / write instructions from an access device such as a digital still camera body.
[0004] このような不揮発性記憶装置に記録する AVコンテンツの高品質化のニーズに伴い 、近年フラッシュメモリの大容量化と低コスト化が急速に進んでいる。具体的にはフラ ッシュメモリに内蔵されるメモリセルアレイに対するメモリセルアレイの周辺回路の占 有面積を削減するために、消去単位である物理ブロックのサイズ力 例えば、 256k バイトや 512kバイトなどと、年々大きくなつてきている。 [0004] Accompanying the need for higher quality AV content recorded in such a nonvolatile storage device, flash memory capacity and cost have been rapidly increasing in recent years. Specifically, in order to reduce the area occupied by the peripheral circuit of the memory cell array with respect to the memory cell array built in the flash memory, the size of the physical block that is the erasing unit, for example, 256 kbytes or 512 kbytes is increasing year by year. It is coming.
[0005] また、ひとつのメモリセルに記憶できる情報量を 1ビットから多ビットに増加させるェ 夫もなされている。 1ビットのメモリセルの不揮発性メモリとしては、例えば 2値 NAND フラッシュメモリがあり、多ビットの代表的なものとしては多値 NANDフラッシュメモリ がある。多値 NANDフラッシュメモリは 2値 NANDフラッシュメモリよりも低コストであ
る力 その反面アクセス速度が遅レ、あるいは信頼性が低レ、などのデメリットを有してレヽ る。そのため、例えば高速性や高信頼性が求められる用途においては、依然として 2 値 NANDフラッシュメモリが使用されている。 [0005] Further, there is a method for increasing the amount of information that can be stored in one memory cell from 1 bit to multiple bits. As a non-volatile memory of a 1-bit memory cell, for example, there is a binary NAND flash memory, and as a typical multi-bit memory, there is a multi-value NAND flash memory. Multi-level NAND flash memory is less expensive than binary NAND flash memory On the other hand, it has disadvantages such as slow access speed or low reliability. For this reason, binary NAND flash memory is still used in applications that require high speed and high reliability, for example.
[0006] なお、この関連技術としては、特許文献 1のようにマイクロコントローラの機能拡張方 式が知られている。 [0006] As a related technique, a function expansion method of a microcontroller as in Patent Document 1 is known.
特許文献 1 :特開 2003— 58377号公報 Patent Document 1: Japanese Patent Application Laid-Open No. 2003-58377
発明の開示 Disclosure of the invention
発明が解決しょうとする課題 Problems to be solved by the invention
[0007] このような状況に鑑み、様々な種類のフラッシュメモリに対応できる汎用性に富んだ メモリコントローラが求められている。しかし半導体メモリカードに実装するフラッシュメ モリの品種が変わればその制御が異なるため、容易にフラッシュメモリの変更に対応 できないとレ、う問題点があった。 In view of such a situation, there is a demand for a versatile memory controller that can handle various types of flash memories. However, because the control differs depending on the type of flash memory mounted on the semiconductor memory card, there was a problem that it was not possible to easily adapt to flash memory changes.
[0008] そこで本発明は上記問題点に鑑み、メモリインターフェイス部の処理プログラムを選 択的にダウンロードすることによりフラッシュメモリの変更に対応することができるメモリ コントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ制御方法を提供 することを目的とする。 [0008] In view of the above problems, the present invention provides a memory controller, a nonvolatile storage device, and a nonvolatile storage system that can cope with a change in flash memory by selectively downloading a processing program of the memory interface unit. And a memory control method.
課題を解決するための手段 Means for solving the problem
[0009] この課題を解決するために、本発明のメモリコントローラは、ユーザデータに加えて 、複数のプログラムを保持する不揮発性メモリへのデータの書き込み及び該不揮発 性メモリからのデータの読み出しを行うメモリコントローラであって、外部との通信を行 うホストインターフェイス部と、プログラムの選択指示に応じて前記不揮発性メモリから 前記プログラムを選択的にダウンロードするプログラムダウンロード部を有し、前記不 揮発性メモリへの読み書き制御を行うメモリインターフェイス部と、前記メモリインター フェイス部の読み書き制御に必要なプログラムを前記メモリインターフェイス部に対し て選択指示するプログラム選択部を有し、メモリコントローラの各部の動作を制御する コントローノレ部と、前記プログラムダウンロード部によってダウンロードされたプログラ ムを保持する RAMと、を具備するものである。 [0009] In order to solve this problem, the memory controller of the present invention writes data to and reads data from a nonvolatile memory holding a plurality of programs in addition to user data. A non-volatile memory comprising a host interface unit that communicates with the outside and a program download unit that selectively downloads the program from the non-volatile memory in response to a program selection instruction; A memory interface unit that performs read / write control on the memory, and a program selection unit that instructs the memory interface unit to select a program necessary for read / write control of the memory interface unit, and controls the operation of each unit of the memory controller Controller section and the program Those comprising a RAM which holds a program downloaded, the by download unit.
[0010] この課題を解決するために、本発明の不揮発性記憶装置は、ユーザデータに加え
て、複数のプログラムを保持する不揮発性メモリと、前記不揮発性メモリへのデータの 書き込み及び前記不揮発性メモリからのデータの読み出しを行うメモリコントローラと を具備する不揮発性記憶装置であって、前記メモリコントローラは、外部との通信を 行うホストインターフェイス部と、プログラムの選択指示に応じて前記不揮発性メモリか ら前記プログラムを選択的にダウンロードするプログラムダウンロード部を有し、前記 不揮発性メモリへの読み書き制御を行うメモリインターフェイス部と、前記メモリインタ 一フェイス部の読み書き制御に必要なプログラムを前記メモリインターフェイス部に対 して選択指示するプログラム選択部を有し、メモリコントローラの各部の動作を制御す るコントローノレ部と、前記プログラムダウンロード部によってダウンロードされたプログ ラムを保持する RAMと、を具備するものである。 [0010] In order to solve this problem, the nonvolatile memory device of the present invention is provided in addition to user data. A nonvolatile memory that holds a plurality of programs, and a memory controller that writes data to the nonvolatile memory and reads data from the nonvolatile memory, the memory The controller has a host interface unit that communicates with the outside, and a program download unit that selectively downloads the program from the nonvolatile memory in response to a program selection instruction, and performs read / write control to the nonvolatile memory A memory interface unit for controlling the memory interface unit, and a program selection unit for instructing the memory interface unit to select a program necessary for read / write control of the memory interface unit. The controller controls the operation of each unit of the memory controller. Nore part and the program Those comprising a RAM which holds a program downloaded, the by download unit.
[0011] ここで前記プログラム選択部は、動作モードに応じて前記プログラムを選択するよう にしてもよい。 Here, the program selection unit may select the program according to an operation mode.
[0012] この課題を解決するために、本発明の不揮発性記憶システムは、ホスト機器と、前 記ホスト機器と接続される不揮発性記憶装置とを有する不揮発性記憶システムであ つて、前記不揮発性記憶装置は、ユーザデータに加えて、複数のプログラムを保持 する不揮発性メモリと、前記不揮発性メモリへのデータの書き込み及び前記不揮発 性メモリからのデータの読み出しを行うメモリコントローラとを具備し、前記メモリコント ローラは、前記ホスト機器との通信を行うホストインターフェイス部と、プログラムの選 択指示に応じて前記不揮発性メモリから前記プログラムを選択的にダウンロードする プログラムダウンロード部を有し、前記不揮発性メモリへの読み書き制御を行うメモリ インターフェイス部と、前記メモリインターフェイス部の読み書き制御に必要なプロダラ ムを前記メモリインターフェイス部に対して選択指示するプログラム選択部を有し、メ モリコントローラの各部の動作を制御するコントロール部と、前記プログラムダウンロー ド部によってダウンロードされたプログラムを保持する RAMと、を具備するものである [0012] In order to solve this problem, a nonvolatile storage system of the present invention is a nonvolatile storage system having a host device and a nonvolatile storage device connected to the host device, the nonvolatile storage system The storage device includes a nonvolatile memory that holds a plurality of programs in addition to user data, and a memory controller that writes data to the nonvolatile memory and reads data from the nonvolatile memory, and The memory controller includes a host interface unit that communicates with the host device, and a program download unit that selectively downloads the program from the nonvolatile memory in response to a program selection instruction, and the nonvolatile memory A memory interface unit for performing read / write control on the memory, and the memory interface A program selection unit for selecting and instructing the memory interface unit a program necessary for read / write control of the memory unit, which is downloaded by the control unit for controlling the operation of each unit of the memory controller and the program download unit. RAM for holding the program
[0013] ここで前記プログラム選択部は、前記ホスト機器から指定された命令の種類あるい は動作モードのレ、ずれかに応じて前記プログラムを選択するようにしてもょレ、。 [0013] Here, the program selection unit may select the program according to the type of instruction designated by the host device or the operation mode.
[0014] この課題を解決するために、本発明のメモリ制御方法は、不揮発性メモリに対するメ
モリ制御方法であって、データの読み書き命令に応じて、前記不揮発性メモリからデ ータの読み書きを実行するプログラムを該不揮発性メモリから選択的に読み出し、読 み出した前記プログラムを RAMにダウンロードを行うダウンロード処理を、前記ダウン ロード処理以外の処理と同時に実行するものである。 [0014] In order to solve this problem, the memory control method of the present invention provides a method for a non-volatile memory. A memory control method that selectively reads a program that reads and writes data from the nonvolatile memory in accordance with a data read and write instruction, and downloads the read program to the RAM The download process is performed at the same time as the process other than the download process.
[0015] ここでデータの読み書き命令またはメモリコントローラの動作によって前記不揮発性 メモリのプログラムを選択するようにしてもよい。 Here, the program of the nonvolatile memory may be selected by a data read / write instruction or an operation of the memory controller.
発明の効果 The invention's effect
[0016] 本発明によれば、プログラムダウンロード部がプログラム選択部の選択指示に応じ てプログラムを選択的にダウンロードする。これにより不揮発性メモリに対するインタ 一フェイス部の処理をプログラマブルにすることができ、複数種の不揮発性メモリに対 応が可能となり、 RAMの容量を削減することができる。 [0016] According to the present invention, the program download unit selectively downloads a program in response to a selection instruction from the program selection unit. As a result, the processing of the interface unit for the non-volatile memory can be made programmable, and it is possible to deal with a plurality of types of non-volatile memories, and the RAM capacity can be reduced.
[0017] さらに、コントロール部力 S、各部の動作の制御と並行して、プログラムのダウンロード を実行するので、ダウンロードに要する時間的オーバーヘッドを減らすことができる。 Furthermore, since the program download is executed in parallel with the control unit force S and the operation control of each unit, the time overhead required for the download can be reduced.
[0018] さらに、外部から指定された命令の種類あるいは動作モードのいずれかに応じて必 要なプログラムを選択してダウンロードするようにしたので、毎回全てのプログラムを ダウンロードする必要がなぐ結果的に省電力を実現することができる。 [0018] Furthermore, since the necessary programs are selected and downloaded according to either the type of instruction or the operation mode specified from the outside, it is not necessary to download all the programs every time. Power saving can be realized.
図面の簡単な説明 Brief Description of Drawings
[0019] [図 1]図 1は本発明の実施の形態における不揮発性記憶システムの構成を示すプロ ック図である。 FIG. 1 is a block diagram showing a configuration of a nonvolatile storage system in an embodiment of the present invention.
[図 2A]図 2Aは同不揮発性記憶システムの処理内容を示すフローチャートである。 FIG. 2A is a flowchart showing processing contents of the nonvolatile memory system.
[図 2B]図 2Bは同不揮発性記憶システムの処理内容を示すフローチャートである。 FIG. 2B is a flowchart showing the processing contents of the nonvolatile memory system.
[図 3]図 3は同不揮発性記憶システムの処理内容を示すタイムチャートである。 FIG. 3 is a time chart showing processing contents of the nonvolatile memory system.
[図 4]図 4はメモリインターフェイス部の読み出し処理内容を示すフローチャートである [FIG. 4] FIG. 4 is a flowchart showing the contents of read processing in the memory interface unit.
[図 5]図 5はメモリインターフェイス部の書き込み処理内容を示すフローチャートである [FIG. 5] FIG. 5 is a flowchart showing the contents of write processing in the memory interface section.
[図 6]図 6はメモリインターフェイス部の消去処理内容を示すフローチャートである。 FIG. 6 is a flowchart showing the contents of erasure processing in the memory interface unit.
[図 7A]図 7Aはレジスタの仕様を示す図である。
[図 7B]図 7Bはレジスタの各ビットの内容を示す図である。 [FIG. 7A] FIG. 7A is a diagram showing register specifications. FIG. 7B is a diagram showing the contents of each bit of the register.
符号の説明 Explanation of symbols
[0020] 100 メモリコントローラ [0020] 100 memory controller
101 ホストインターフェイスき B 101 Host interface B
102 コントロール部 102 Control section
103 メモリインターフェイスき 103 Memory interface
104 RAM 104 RAM
105 プログラム選択部 105 Program selector
106 論理物理変換テーブル 106 Logical physical conversion table
107 レジスタ 107 registers
108 プログラムダウンロード部 108 Program Download Department
110 不揮発性メモリ 110 Nonvolatile memory
120 プログラム領域 120 program area
121 第 1の処理プログラム 121 First processing program
122 第 2の処理プログラム 122 Second processing program
123 第 3の処理プログラム 123 Third processing program
130 テーブル領域 130 Table area
140 通常領域 140 Normal area
150 不揮発性記憶装置 150 Nonvolatile storage
160 ホスト 160 hosts
発明を実施するための最良の形態 BEST MODE FOR CARRYING OUT THE INVENTION
[0021] 以下、本発明の実施の形態について、図面を用いて説明する。図 1は、本発明の 実施の形態における不揮発性記憶システムの主要構成を示すブロック図である。本 実施の形態による不揮発性記憶システムは、ホスト機器 (以下、ホストという) 160と、 不揮発性記憶装置 150から構成される。ホスト 160と不揮発性記憶装置 150はバス 1 により接続される。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing the main configuration of the nonvolatile memory system according to the embodiment of the present invention. The nonvolatile storage system according to the present embodiment includes a host device (hereinafter referred to as a host) 160 and a nonvolatile storage device 150. The host 160 and the nonvolatile storage device 150 are connected by a bus 1.
[0022] 不揮発性記憶装置 150は、メモリコントローラ 100と不揮発性メモリ 110を含む。メ モリコントローラ 100は、ホストインターフェイス(IF)部 101、コントローノレ部 102、メモ
リインターフェイス(IF)部 103、及び RAM104を含む。ホストインターフェイス部 101 はバス 1を介してホスト 160と通信を行うものである。コントロール部 102はプログラム 選択部 105、論理物理変換テーブル 106、レジスタ 107を含んでいる。メモリインター フェイス部 103はバス 2を介して不揮発性メモリ 110と通信を行うインターフェイス部で あって、プログラムダウンロード部 108を含んでいる。 The non-volatile storage device 150 includes a memory controller 100 and a non-volatile memory 110. The memory controller 100 includes a host interface (IF) unit 101, a controller unit 102, a memory A re-interface (IF) unit 103 and a RAM 104 are included. The host interface unit 101 communicates with the host 160 via the bus 1. The control unit 102 includes a program selection unit 105, a logical physical conversion table 106, and a register 107. The memory interface unit 103 is an interface unit that communicates with the nonvolatile memory 110 via the bus 2, and includes a program download unit 108.
[0023] 不揮発性メモリ 110は、プログラム領域 120と通常領域 140とから構成される。通常 領域 140はテーブル領域 130を含んでいる。テーブル領域 130は論理物理変換テ 一ブル等のテーブルを保持する領域である。 The non-volatile memory 110 includes a program area 120 and a normal area 140. The normal area 140 includes the table area 130. The table area 130 is an area for holding a table such as a logical physical conversion table.
[0024] プログラム領域 120には、製品出荷前にメモリインターフェイス部 103の処理内容を 記述したプログラムを予め書き込んでおく。このプログラムは、例えば、第 1の処理プ ログラム 121、第 2の処理プログラム 122、第 3の処理プログラム 123である。これらの 処理プログラムは先頭バイトに固有の番号を付してプログラム領域 120に書き込まれ ている。 [0024] In the program area 120, a program describing the processing contents of the memory interface unit 103 is written in advance before product shipment. This program is, for example, a first processing program 121, a second processing program 122, and a third processing program 123. These processing programs are written in the program area 120 with a unique number assigned to the first byte.
[0025] 論理物理変換テーブル 106は、不揮発性メモリ 110のテーブル領域 130から読み 出されてコントロール部 102内の RAMに一時記憶される。又ホスト 160力 の書き込 みや消去コマンドによるデータの書き込みや消去が行われた後に更新され、テープ ル領域 130に書き戻されるものである。 The logical-physical conversion table 106 is read from the table area 130 of the nonvolatile memory 110 and temporarily stored in the RAM in the control unit 102. It is updated after data is written or erased by the host 160 write or erase command, and is written back to the tape area 130.
[0026] 以上のように構成された不揮発性記憶システムの動作について説明する。図 2A, 図 2Bは、本発明の実施の形態における不揮発性記憶システムの処理内容を示すフ ローチャートであり、図 3は、本発明の実施の形態における不揮発性記憶システムの 処理内容を示すタイムチャートである。又図 7A,図 7Bはレジスタ 107の内容を示す 。まず、電源投入時に電圧の変化を感知したコントロール部 102がレジスタ 107の BI TO, BIT1, BIT2, BIT3に夫々 0, 1 , 0, 0を設定する。これは、電源投入後には必 ず初期化を行うためである。初期化中は、プログラム選択部 105がレジスタ 107の値 を監視し続けることで動作モードと処理プログラムを選択し、後述する図 2の S230と 同様の処理を行う。初期化完了後、コントロール部 102がレジスタ 107の BIT0を 1、 BIT1から BIT3に 0を設定することで通常動作になる。通常動作中のレジスタ 107は 、コントロール部 102が受信したコマンド力、ら BIT0力、ら BIT3の値を設定する。なお、
レジスタ 107の BIT1から BIT3のうち 2つ以上のビットが 1になることはなレ、。 The operation of the nonvolatile storage system configured as described above will be described. 2A and 2B are flowcharts showing the processing contents of the nonvolatile storage system in the embodiment of the present invention, and FIG. 3 is a time chart showing the processing contents of the nonvolatile storage system in the embodiment of the present invention. It is a chart. 7A and 7B show the contents of the register 107. FIG. First, the control unit 102 that senses a change in voltage when the power is turned on sets 0, 1, 0, 0 to BITO, BIT1, BIT2, and BIT3 of the register 107, respectively. This is because initialization is always performed after power-on. During initialization, the program selection unit 105 continues to monitor the value of the register 107 to select an operation mode and a processing program, and performs the same processing as S230 in FIG. 2 described later. After initialization is completed, the control unit 102 sets BIT0 of the register 107 to 1, and sets BIT1 to BIT3 to 0 to return to normal operation. The register 107 during normal operation sets the value of the command force, the BIT0 force, and the BIT3 received by the control unit 102. In addition, Two or more of bits BIT1 to BIT3 in register 107 cannot be 1.
[0027] さて、ホスト 160からコマンド受信後の処理について図 2A,図 2Bを用いて説明する 。ホスト 160がホストインターフェイス部 101にコマンドを送信し (S200)、ホストインタ 一フェイス部 101がコマンドを受信する (S201)。プログラム選択部 105がレジスタ 10 7を監視し続けることで、動作モードと選択する処理プログラムを決定する。(S202)。 [0027] Now, processing after receiving a command from the host 160 will be described with reference to FIGS. 2A and 2B. The host 160 transmits a command to the host interface unit 101 (S200), and the host interface unit 101 receives the command (S201). The program selection unit 105 continues to monitor the register 107 to determine the operation mode and the processing program to be selected. (S202).
[0028] ここで、表 1を用いて S202の処理について詳細に説明する。動作モードはホスト 1 60から送信されるコマンドの種類により初期化、通常動作の 2種類に分別される。ま たプログラム領域 120での先頭バイトの値は、読み出しの場合が 0x01、書き込みの 場合が 0x02、消去の場合が 0x03とする。 [0028] Here, the processing of S202 will be described in detail using Table 1. The operation mode is classified into two types: initialization and normal operation depending on the type of command sent from the host 160. The value of the first byte in program area 120 is 0x01 for read, 0x02 for write, and 0x03 for erase.
[表 1] [table 1]
[0029] ここで初期化とは、不揮発性記憶装置 150の電源立ち上げ直後にホスト 160から受 信した初期化コマンドに応じて、メモリインターフェイス部 103がテーブル領域 130か らコントロール部 102内の RAMに論理物理変換テーブル 106を読み出す動作のこ とを言う。一方、通常動作とは、初期化の後にホスト 160からのコマンドに応じてメモリ インターフェイス部 103が通常領域 140に対して書き込みまたは読み出しまたは消去 を行う動作のことを言う。 [0029] Here, the initialization means that the memory interface unit 103 starts from the table area 130 to the RAM in the control unit 102 in response to an initialization command received from the host 160 immediately after the nonvolatile storage device 150 is powered on. The operation of reading the logical-physical conversion table 106 is described below. On the other hand, the normal operation refers to an operation in which the memory interface unit 103 writes, reads, or erases the normal area 140 in accordance with a command from the host 160 after initialization.
[0030] 次に通常動作のうち、メモリインターフェイス部 103の読み出し処理について、図 4 のフローチャートを用いて説明する。読み出しとは、ホスト 160から指定された論理ァ ドレスに対応する通常領域 140内の物理アドレスに記録されたデータを読み出す動 作である。メモリインターフェイス部 103は不揮発性メモリ 110にアドレス入力命令を
送信し (S400)、物理アドレスを出力し (S401)、最後に読み出し開始命令を送信(S 402)することにより読み出しを実行する。 Next, reading processing of the memory interface unit 103 in normal operation will be described with reference to the flowchart of FIG. Reading is an operation of reading data recorded at a physical address in the normal area 140 corresponding to a logical address designated by the host 160. The memory interface unit 103 sends an address input command to the nonvolatile memory 110. Transmit (S400), output a physical address (S401), and finally execute a read by transmitting a read start command (S402).
[0031] 次に通常動作のうち、メモリインターフェイス部 103の書き込み処理について、図 5 のフローチャートを用いて説明する。書き込みとは、ホスト 160から指定された論理ァ ドレスに対応する通常領域 140内の物理アドレスに指定されたデータを書き込む動 作である。メモリインターフェイス部 103は不揮発性メモリ 110にデータ'アドレス入力 命令を送信し (S500)、物理アドレスを出力し (S501)、更にデータを出力し (S502) 、最後に書き込み開始命令を送信(S503)することによりに書き込みを実行する。 Next, the writing process of the memory interface unit 103 in the normal operation will be described with reference to the flowchart of FIG. The writing is an operation of writing data designated at a physical address in the normal area 140 corresponding to a logical address designated by the host 160. The memory interface unit 103 transmits a data address input command to the nonvolatile memory 110 (S500), outputs a physical address (S501), outputs further data (S502), and finally transmits a write start command (S503). By doing so, the writing is executed.
[0032] 次に通常動作のうち、メモリインターフェイス部 103の消去処理について、図 6のフ ローチャートを用いて説明する。消去とは、ホスト 160から指定された論理アドレスに 対応する通常領域 140内の物理アドレスのデータを通常領域 140から消去する動作 である。メモリインターフェイス部 103は不揮発性メモリ 110にアドレス入力命令を送 信し (S600)、物理アドレスを出力し (S601)、最後に消去開始命令を送信する(S6 02)ことによりに消去を実行する。 Next, erase processing of the memory interface unit 103 in normal operation will be described with reference to the flowchart of FIG. The erasing is an operation of erasing data of the physical address in the normal area 140 corresponding to the logical address designated by the host 160 from the normal area 140. The memory interface unit 103 transmits an address input command to the nonvolatile memory 110 (S600), outputs a physical address (S601), and finally transmits an erase start command (S602) to execute erasure.
[0033] さて、図 2において S202で動作モードを決定した後、 S203以降の処理と S208以 降の処理とを並行して行う。ホストインターフェイス部 101は、動作モードが通常動作 であるか否かの判定を行う(S203)。通常動作であれば、ホストインターフェイス部 10 1はコマンドの引数力も論理アドレスを取り出し(S204)、ホストインターフェイス部 10 1がコマンドと論理アドレスをコントロール部 102へ送信する(S205)。コントロール部 102は論理物理変換テーブル 106を用いて論理アドレスを物理アドレスに変換し(S 206)、コントロール部 102が物理アドレスをメモリインターフェイス部 103に送信する( S207)。次いでメモリインターフェイス部 103は RAM104上のプログラムに基づいて 通常領域 140にアクセスする(S213)。 [0033] Now, in FIG. 2, after the operation mode is determined in S202, the processing after S203 and the processing after S208 are performed in parallel. The host interface unit 101 determines whether or not the operation mode is normal operation (S203). If it is a normal operation, the host interface unit 101 retrieves the logical address of the command argument (S204), and the host interface unit 101 transmits the command and logical address to the control unit 102 (S205). The control unit 102 converts the logical address into a physical address using the logical / physical conversion table 106 (S206), and the control unit 102 transmits the physical address to the memory interface unit 103 (S207). Next, the memory interface unit 103 accesses the normal area 140 based on the program on the RAM 104 (S213).
[0034] なお、上述した論理物理変換処理とは、不揮発性メモリ 110の書き込み回数の制 限(寿命)に対応するためのレ、わゆるウェアレべリングを行レ、つつ論理ブロックと物理 ブロックとを対応づける処理であり、既知の技術を用いて実現することができるので説 明を省略する。 Note that the logical-physical conversion process described above refers to a logical block and a physical block while performing so-called wear leveling to cope with the limit (lifetime) of the number of writes in the nonvolatile memory 110. Since this process can be realized using a known technique, the explanation is omitted.
[0035] 次に、 S208からの動作を説明する。 S208では、プログラム選択部 105が実行する
プログラムを選択する。プログラムの選択において、例えばレジスタ 107の値から動 作モードが初期化で且つ RAMに必要な処理プログラムの読出しであれば、前述し たプログラム領域 120の先頭バイトが 0x01である「読み出し」プログラムを選択する。 又動作モードが通常動作であり、 RAM104に必要な処理プログラムが消去であれ ば、プログラム領域 120の先頭バイトが 0x03である「消去」プログラムを選択する。こ こでプログラム選択部 105はこの先頭バイト(以下、新規先頭バイトという)のデータを 保持する。 Next, the operation from S208 will be described. In S208, the program selection unit 105 executes Select a program. When selecting the program, for example, if the operation mode is initialized from the value in register 107 and the processing program required for the RAM is read, select the “read” program whose first byte in the program area 120 is 0x01. To do. If the operation mode is normal operation and the processing program necessary for the RAM 104 is erasure, the “erase” program in which the first byte of the program area 120 is 0x03 is selected. Here, the program selection unit 105 holds the data of the first byte (hereinafter referred to as a new first byte).
[0036] その後、該プログラムがダウンロード未了であるか判定を行い(S209)、ダウンロー ドが未だなされていなければプログラムダウンロード部 108がプログラム領域 120上 のプログラムを各プログラムの先頭バイトから RAM104にダウンロードする(S210)。 [0036] After that, it is determined whether the program has not been downloaded (S209). If the download has not been completed, the program download unit 108 downloads the program in the program area 120 from the first byte of each program to the RAM 104. (S210).
[0037] ここで、 S209及び S210の処理について、詳細に説明する。まず、プログラムダウ ンロード部 108が既にダウンロードしたプログラムの先頭 1バイト(以下、旧先頭バイト という)を RAM104から取得し保持する。そしてプログラムダウンロード部 108は新規 先頭バイトと旧先頭バイトのデータを比較する。それらが異なっていればダウンロード が未だなされていないと判断してプログラムをダウンロードする(S210)。これらが同 じであれば、ダウンロードがなされていると判定して S210の処理を実行しなレ、。 S20 9において、例えばホスト 160力 のコマンドが 2回連続で動作モードが通常動作で ありプログラムが消去であった場合、 2回目でダウンロード済みと判定して S210の処 理はスキップされるため、プログラムをダウンロードしない。 [0037] Here, the processing of S209 and S210 will be described in detail. First, the program download unit 108 acquires the first 1 byte (hereinafter referred to as the old first byte) of the program already downloaded from the RAM 104 and holds it. Then, the program download unit 108 compares the data of the new first byte and the old first byte. If they are different, it is determined that the download has not yet been made, and the program is downloaded (S210). If these are the same, it is determined that the download has been performed and the processing of S210 is not executed. In S209, for example, if the host 160 command is executed twice in succession and the operation mode is normal operation and the program is erased, the program is judged to have already been downloaded the second time and the processing of S210 is skipped. Do not download.
[0038] なお、 S205力ら S207までの処理を S220し、 S208力ら S210までの処理を S230 とする。 Note that the processing from S205 force to S207 is S220, and the processing from S208 force to S210 is S230.
[0039] 次に、 S203の判定で動作モードが初期化の場合の処理を説明する。初期化処理 の場合には S211において読出しのプログラムがダウンロード済であるかの判定を行 う。初期化に必要なプログラムは、表 1に示すように「読み出し」となるため、 RAM10 4の先頭バイトを取得し 0x01であるかをチェックする。 0x01の場合には S212に進み 、 0x01ではなかった場合、ダウンロード済でないためもう一度 RAM104の先頭バイ トを取得して判定を行う。この時、同時に S230の処理が動作している。 S230は動作 モードが初期化であることから読み出しのプログラムをダウンロードする。このためプ
ログラムのダウンロードが完了すると、 S211ではダウンロード済みとなる。そしてダウ ンロード済み又はダウンロードが終了すれば、コントロール部 102がテーブル領域 13 0のデータをコントロール部 102内の論理物理変換テーブル 106に読み出す(S212 [0039] Next, processing in the case where the operation mode is initialization based on the determination in S203 will be described. In the case of initialization processing, it is determined in S211 whether the read program has already been downloaded. Since the program required for initialization is “read” as shown in Table 1, the first byte of the RAM 104 is acquired to check whether it is 0x01. If it is 0x01, the process proceeds to S212. If it is not 0x01, it is not already downloaded, so the first byte of the RAM 104 is obtained again and a determination is made. At this time, the process of S230 is simultaneously operating. S230 downloads the reading program because the operation mode is initialization. For this reason When downloading of the program is completed, it is already downloaded in S211. When the download is completed or the download is completed, the control unit 102 reads the data in the table area 130 into the logical-physical conversion table 106 in the control unit 102 (S212).
[0040] 図 3を用レ、てコントローノレ部 102とそのプログラム選択部 105、メモリインターフェイ ス部 103とそのプログラムダウンロード部 108の時間関係について説明する。 With reference to FIG. 3, the time relationship between the control unit 102 and its program selection unit 105, the memory interface unit 103 and its program download unit 108 will be described.
[0041] まず、メモリインターフェイス部 103は物理アドレスに基づいて不揮発性メモリ 110 にアクセスする。通常動作の場合、ホスト 160は論理アドレスに基づいて不揮発性記 憶装置 150にアクセスするため、コントロール部 102では論理アドレスを物理アドレス に変換して、物理アドレスをメモリインターフェイス部 103に出力しなければならなレ、。 つまり、メモリインターフェイス部 103が不揮発性メモリ 110にアクセスするためには、 コントロール部 102の論理物理変換処理によって物理アドレスを確定しなければなら ない。 First, the memory interface unit 103 accesses the nonvolatile memory 110 based on the physical address. In normal operation, the host 160 accesses the nonvolatile storage device 150 based on the logical address. Therefore, the control unit 102 must convert the logical address to a physical address and output the physical address to the memory interface unit 103. Nanare ,. In other words, in order for the memory interface unit 103 to access the nonvolatile memory 110, the physical address must be determined by the logical-physical conversion process of the control unit 102.
[0042] そこで、図 3に示すようにコントロール部 102が論理物理変換処理をする期間を利 用してプログラム選択部 105がプログラムを選択し、プログラムダウンロード部 108が プログラムをダウンロードする。その後、そのプログラムに基づいて通常領域にァクセ スする。 Therefore, as shown in FIG. 3, the program selection unit 105 selects a program using the period during which the control unit 102 performs logical-physical conversion processing, and the program download unit 108 downloads the program. Then, access to the normal area based on the program.
[0043] 以上のように、本発明の実施の形態に示す不揮発性記憶システムは、プログラムダ ゥンロード部 108がプログラム選択部 105の選択指示に応じてプログラムを選択的に ダウンロードするので、 RAM104の容量を削減することができる。 [0043] As described above, in the nonvolatile storage system according to the embodiment of the present invention, the program download unit 108 selectively downloads a program in accordance with a selection instruction from the program selection unit 105. Can be reduced.
[0044] また、通常動作の場合、コントロール部 102の論理物理変換などの処理に並行して プログラムダウンロード部 108のダウンロード処理を行うようにしたので、コントロール 部 102の処理に要する時間内でダウンロード処理を行うことができる。すなわち、ダウ ンロードに要する時間的オーバーヘッドが不要になる。 [0044] Also, in the normal operation, the download process of the program download unit 108 is performed in parallel with the process such as the logical-physical conversion of the control unit 102, so the download process is performed within the time required for the process of the control unit 102. It can be performed. In other words, the time overhead required for downloading becomes unnecessary.
[0045] また、製品出荷前にメモリインターフェイス部 130を動作させるためのプログラムを 先頭バイトに番号を付与してプログラム領域 120に予め書き込んでおくことで、プログ ラム選択部 105が選択したプログラムをプログラムダウンロード部 108がダウンロード する前に RAM104上のプログラムを比較することができる。これにより比較した結果
が違う場合にのみ RAM上にダウンロードするという処理が出来る。このようにプロダラ ム領域 120から RAM104へのダウンロードを必要最低限にすることで省電力を実現 できる。 [0045] In addition, a program for operating the memory interface unit 130 prior to product shipment is given a number in the first byte and written in the program area 120 in advance, so that the program selected by the program selection unit 105 is programmed. Before the download unit 108 downloads, the programs on the RAM 104 can be compared. Result of comparison Downloading to RAM can be done only when is different. In this way, power saving can be realized by minimizing the download from the program area 120 to the RAM 104.
産業上の利用可能性 Industrial applicability
本発明に力かる不揮発性記憶メモリは、メモリコントローラ及びそれを搭載した不揮 発性記憶装置や不揮発性記憶システムの低コスト化を提案したものであり、半導体メ モリカード等の不揮発性記憶装置を使用した静止画記録再生装置や動画記録再生 装置、あるいは携帯電話において有益である。
The non-volatile storage memory which is useful in the present invention proposes a cost reduction of a memory controller and a non-volatile storage device or a non-volatile storage system on which the memory controller is mounted, and a non-volatile storage device such as a semiconductor memory card. This is useful in still image recording / playback devices, moving image recording / playback devices, and mobile phones.
Claims
[1] ユーザデータに加えて、複数のプログラムを保持する不揮発性メモリへのデータの 書き込み及び該不揮発性メモリからのデータの読み出しを行うメモリコントローラであ つて、 [1] A memory controller that writes data to and reads data from a nonvolatile memory that holds a plurality of programs in addition to user data.
外部との通信を行うホストインターフェイス部と、 A host interface that communicates with the outside;
プログラムの選択指示に応じて前記不揮発性メモリから前記プログラムを選択的に ダウンロードするプログラムダウンロード部を有し、前記不揮発性メモリへの読み書き 制御を行うメモリインターフェイス部と、 A memory interface unit that has a program download unit that selectively downloads the program from the non-volatile memory according to a program selection instruction, and that performs read / write control on the non-volatile memory;
前記メモリインターフェイス部の読み書き制御に必要なプログラムを前記メモリインタ 一フェイス部に対して選択指示するプログラム選択部を有し、メモリコントローラの各 部の動作を制御するコントロール部と、 A control unit for controlling the operation of each part of the memory controller, including a program selection unit for selecting and instructing the memory interface unit a program necessary for read / write control of the memory interface unit;
前記プログラムダウンロード部によってダウンロードされたプログラムを保持する RA Mと、を具備するメモリコントローラ。 A memory controller comprising: a RAM that holds a program downloaded by the program download unit.
[2] 前記プログラム選択部は、動作モードに応じて前記プログラムを選択する請求項 1 に記載のメモリコントローラ。 2. The memory controller according to claim 1, wherein the program selection unit selects the program according to an operation mode.
[3] ユーザデータに加えて、複数のプログラムを保持する不揮発性メモリと、 [3] In addition to user data, non-volatile memory that holds multiple programs,
前記不揮発性メモリへのデータの書き込み及び前記不揮発性メモリからのデータ の読み出しを行うメモリコントローラとを具備する不揮発性記憶装置であって、 前記メモリコントローラは、 A non-volatile storage device comprising a memory controller that writes data to the non-volatile memory and reads data from the non-volatile memory, the memory controller comprising:
外部との通信を行うホストインターフェイス部と、 A host interface that communicates with the outside;
プログラムの選択指示に応じて前記不揮発性メモリから前記プログラムを選択的に ダウンロードするプログラムダウンロード部を有し、前記不揮発性メモリへの読み書き 制御を行うメモリインターフェイス部と、 A memory interface unit that has a program download unit that selectively downloads the program from the non-volatile memory according to a program selection instruction, and that performs read / write control on the non-volatile memory;
前記メモリインターフェイス部の読み書き制御に必要なプログラムを前記メモリインタ 一フェイス部に対して選択指示するプログラム選択部を有し、メモリコントローラの各 部の動作を制御するコントロール部と、 A control unit for controlling the operation of each part of the memory controller, including a program selection unit for selecting and instructing the memory interface unit a program necessary for read / write control of the memory interface unit;
前記プログラムダウンロード部によってダウンロードされたプログラムを保持する RA Mと、を具備するものである不揮発性記憶装置。
A non-volatile storage device comprising: a RAM that holds the program downloaded by the program download unit;
[4] 前記プログラム選択部は、動作モードに応じて前記プログラムを選択する請求項 3 に記載の不揮発性記憶装置。 4. The nonvolatile memory device according to claim 3, wherein the program selection unit selects the program according to an operation mode.
[5] ホスト機器と、前記ホスト機器と接続される不揮発性記憶装置とを有する不揮発性 記憶システムであって、 [5] A nonvolatile storage system having a host device and a nonvolatile storage device connected to the host device,
前記不揮発性記憶装置は、 The nonvolatile memory device is
ユーザデータに加えて、複数のプログラムを保持する不揮発性メモリと、 前記不揮発性メモリへのデータの書き込み及び前記不揮発性メモリからのデータ の読み出しを行うメモリコントローラとを具備し、 A nonvolatile memory that holds a plurality of programs in addition to user data; and a memory controller that writes data to the nonvolatile memory and reads data from the nonvolatile memory;
前記メモリコントローラは、 The memory controller is
前記ホスト機器との通信を行うホストインターフヱイス部と、 A host interface unit for communicating with the host device;
プログラムの選択指示に応じて前記不揮発性メモリから前記プログラムを選択的に ダウンロードするプログラムダウンロード部を有し、前記不揮発性メモリへの読み書き 制御を行うメモリインターフェイス部と、 A memory interface unit that has a program download unit that selectively downloads the program from the non-volatile memory according to a program selection instruction, and that performs read / write control on the non-volatile memory;
前記メモリインターフェイス部の読み書き制御に必要なプログラムを前記メモリインタ 一フェイス部に対して選択指示するプログラム選択部を有し、メモリコントローラの各 部の動作を制御するコントロール部と、 A control unit for controlling the operation of each part of the memory controller, including a program selection unit for selecting and instructing the memory interface unit a program necessary for read / write control of the memory interface unit;
前記プログラムダウンロード部によってダウンロードされたプログラムを保持する RA Mと、を具備するものである不揮発性記憶システム。 A non-volatile storage system comprising: a RAM that holds the program downloaded by the program download unit;
[6] 前記プログラム選択部は、前記ホスト機器から指定された命令の種類あるいは動作 モードのいずれかに応じて前記プログラムを選択する請求項 5に記載の不揮発性記 憶システム。 6. The nonvolatile storage system according to claim 5, wherein the program selection unit selects the program in accordance with either the type of instruction or the operation mode specified from the host device.
[7] 不揮発性メモリに対するメモリ制御方法であって、 [7] A memory control method for nonvolatile memory,
データの読み書き命令に応じて、前記不揮発性メモリからデータの読み書きを実行 するプログラムを該不揮発性メモリから選択的に読み出し、 In response to a data read / write command, a program for performing data read / write from the nonvolatile memory is selectively read from the nonvolatile memory,
読み出した前記プログラムを RAMにダウンロードを行うダウンロード処理を、前記ダ ゥンロード処理以外の処理と同時に実行するメモリ制御方法。 A memory control method for executing a download process for downloading the read program into a RAM simultaneously with a process other than the download process.
[8] データの読み書き命令またはメモリコントローラの動作によって前記不揮発性メモリ のプログラムを選択する請求項 7に記載のメモリ制御方法。
8. The memory control method according to claim 7, wherein a program of the nonvolatile memory is selected by a data read / write instruction or a memory controller operation.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006173324A JP2009205187A (en) | 2006-06-23 | 2006-06-23 | Memory controller, nonvolatile storage device, nonvolatile storage system, and memory control method |
JP2006-173324 | 2006-06-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2007148778A1 true WO2007148778A1 (en) | 2007-12-27 |
Family
ID=38833515
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2007/062569 WO2007148778A1 (en) | 2006-06-23 | 2007-06-22 | Memory controller, nonvolatile memory device, nonvolatile memory system, and memory control method |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2009205187A (en) |
WO (1) | WO2007148778A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5644202B2 (en) * | 2010-06-17 | 2014-12-24 | 富士通株式会社 | Control device, control method, and storage system |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002207715A (en) * | 2001-01-11 | 2002-07-26 | Mitsubishi Electric Corp | Micro-computer, and method of controlling memory used therefor |
JP2004258946A (en) * | 2003-02-26 | 2004-09-16 | Renesas Technology Corp | Memory card |
WO2005066773A1 (en) * | 2003-12-31 | 2005-07-21 | Sandisk Corporation | Flash memory system startup operation |
-
2006
- 2006-06-23 JP JP2006173324A patent/JP2009205187A/en active Pending
-
2007
- 2007-06-22 WO PCT/JP2007/062569 patent/WO2007148778A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002207715A (en) * | 2001-01-11 | 2002-07-26 | Mitsubishi Electric Corp | Micro-computer, and method of controlling memory used therefor |
JP2004258946A (en) * | 2003-02-26 | 2004-09-16 | Renesas Technology Corp | Memory card |
WO2005066773A1 (en) * | 2003-12-31 | 2005-07-21 | Sandisk Corporation | Flash memory system startup operation |
Also Published As
Publication number | Publication date |
---|---|
JP2009205187A (en) | 2009-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8964468B2 (en) | Data storage system having multi-bit memory device and operating method thereof | |
US8606987B2 (en) | Data writing method for flash memory and controller using the same | |
JP4480571B2 (en) | Efficient read / write method for pipeline memory | |
US9075709B2 (en) | Flash memory controller | |
US20110119431A1 (en) | Memory system with read-disturb suppressed and control method for the same | |
US20080172521A1 (en) | Memory System Determining Storage Mode According to Host Provided Data Information | |
US20080172520A1 (en) | Nonvolatile memory devices including multiple user-selectable program modes and related methods of operation | |
US9524781B2 (en) | Nonvolatile memory device and operating method thereof | |
US20050278480A1 (en) | Method of writing data into flash memory | |
JPWO2007000862A1 (en) | MEMORY CONTROLLER, NONVOLATILE MEMORY DEVICE, NONVOLATILE MEMORY SYSTEM, AND DATA WRITE METHOD | |
US8127072B2 (en) | Data storage device and method for accessing flash memory | |
US7979625B2 (en) | SPI bank addressing scheme for memory densities above 128Mb | |
US20090248981A1 (en) | Semiconductor storage device | |
US8332577B2 (en) | Program control of a non-volatile memory | |
JP2009003569A (en) | Semiconductor memory | |
US20090210612A1 (en) | Memory controller, nonvolatile memory device, and nonvolatile memory system | |
JP2007094639A (en) | Memory controller and flash memory system | |
JP2009175877A (en) | Semiconductor memory | |
WO2006021838A1 (en) | Method and system for accessing performance parameters in memory devices | |
WO2006051779A1 (en) | Nonvolatile storage device control method, memory controller and nonvolatile storage device | |
JP2008097132A (en) | Memory controller, nonvolatile storage device, and nonvolatile storage system | |
US20050204115A1 (en) | Semiconductor memory device, memory controller and data recording method | |
WO2007148778A1 (en) | Memory controller, nonvolatile memory device, nonvolatile memory system, and memory control method | |
JP4910426B2 (en) | Non-volatile memory device writing method | |
JP2007052558A (en) | Flash memory rewrite device, flash memory rewrite method and flash memory rewrite program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 07790414 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 07790414 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |