CN108255540B - Nand flash element and loading control method and device thereof - Google Patents

Nand flash element and loading control method and device thereof Download PDF

Info

Publication number
CN108255540B
CN108255540B CN201711445827.3A CN201711445827A CN108255540B CN 108255540 B CN108255540 B CN 108255540B CN 201711445827 A CN201711445827 A CN 201711445827A CN 108255540 B CN108255540 B CN 108255540B
Authority
CN
China
Prior art keywords
nand flash
working mode
module
unit
basic
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.)
Active
Application number
CN201711445827.3A
Other languages
Chinese (zh)
Other versions
CN108255540A (en
Inventor
庄开锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhaoyi Innovation Technology Group Co.,Ltd.
Original Assignee
Beijing Zhaoyi Innovation Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Zhaoyi Innovation Technology Co Ltd filed Critical Beijing Zhaoyi Innovation Technology Co Ltd
Priority to CN201711445827.3A priority Critical patent/CN108255540B/en
Publication of CN108255540A publication Critical patent/CN108255540A/en
Application granted granted Critical
Publication of CN108255540B publication Critical patent/CN108255540B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

The embodiment of the invention provides a Nand flash element and a load control method and device thereof. The basic loading module is used for receiving data information and control information sent by an upper computer; the internal controller is used for performing read operation, write operation, erase operation, ECC check management, bad block management, address mapping management and wear leveling management on the Nand flash kernel. The Nand flash element of this embodiment just can realize the management to whole component through inside controller, no longer relies on main controller, consequently can solve the Nand flash element and rely on main controller to manage it and lead to the problem that main controller burden is heavier because of needing to rely on main controller.

Description

Nand flash element and loading control method and device thereof
Technical Field
The invention relates to the technical field of memories, in particular to a Nand flash element and a load control method and device thereof.
Background
The Nand flash is one of flash memories, and a nonlinear macro-unit mode is adopted in the Nand flash, so that a cheap and effective solution is provided for realizing a solid-state large-capacity memory. The Nand flash has the advantages of large capacity, high rewriting speed and the like, and is suitable for storing a large amount of data, so that the Nand flash is more and more widely applied in the industry, for example, embedded products comprise a digital camera, an MP3 walkman memory card, a small-sized U disk and the like.
The data of the Nand flash is stored in the memory cell in a bit mode, and generally, only one bit can be stored in each cell; these cells are connected into bit lines in units of 8 or 16 cells, forming so-called byte (x8)/word (x16), which is the bit width of the NAND Device. The bit lines form a Page, and the number of the bit lines in each Page is different according to different manufacturers or models; multiple pages form a Block, for example 32 pages. The number of blocks on a specific Nand flash is determined as required.
The Nand flash needs a controller to manage functions of the Nand flash, such as ECC (error correction code) checking, bad block management, address mapping, wear leveling and the like, however, a general Nand flash does not have a corresponding internal controller in a package body, so that the management of the functions of the Nand flash depends on a corresponding main controller to be realized, and the burden of the corresponding main controller is increased.
Disclosure of Invention
In view of this, the present invention provides a Nand flash element, and a load control method and device thereof, so as to solve the problem that a load of a host controller is heavy because the Nand flash element needs to be managed by the host controller.
In order to solve the problems, the invention discloses a Nand flash element, which comprises a packaging body, wherein a Nand flash core and an internal controller are packaged in the packaging body, the internal controller comprises a basic loading module, and the Nand flash element comprises:
the internal controller is used for performing read operation, write operation, erase operation, ECC (error correction code) check management, bad block management, address mapping management and wear leveling management on the Nand flash kernel;
and the basic loading module is used for receiving data information and control information sent by the upper computer.
Optionally, the basic loading module includes a mode control unit, a first loading unit, and a second loading unit, where:
the mode control unit is used for controlling the working modes of the basic loading module according to the control information of the upper computer, and the working modes comprise a common working mode and a Debug working mode;
the first loading unit is used for loading the product firmware into the RAM of the internal controller and controlling the product firmware to run when the basic loading module is in the common working mode;
and the second loading unit is used for receiving configuration information and a low-level control program from an upper computer when the basic loading module is in the Debug working mode, and controlling the low-level control program to run according to the configuration information.
Optionally, the internal control further includes a basic configuration module, a low-level module, and a product firmware module, wherein:
the basic configuration module is used for storing basic information and configuration information of the Nand flash kernel;
the low-level module is used for performing low-level formatting operation on the Nand flash kernel according to the control information;
and the product firmware module is used for performing read operation, write operation, erase operation, ECC (error correction code) check management, bad block management, address mapping management and wear leveling management on the Nand flash kernel according to the data information and the control information.
Optionally, the configuration information includes part or all of page size, block number, bad block check mode, and ECC check information.
Optionally, the low-level module includes a block management unit, a storage control unit, and a firmware downloading unit, where:
the block management unit is used for detecting the Nand flash element, calculating the configuration information, checking a bad block of the Nand flash kernel and generating a mapping table;
the storage control unit is used for storing the configuration information and the mapping table into the Nand flash kernel;
the firmware downloading unit is used for receiving product firmware sent by an upper computer and storing the product firmware into the Nand flash kernel.
Optionally, the product firmware module includes an instruction processing unit, a firmware updating unit, a mapping table updating unit, and an exception handling unit, where:
the instruction processing unit is used for processing the control instruction sent by the upper computer and returning data or an execution result to the upper computer;
the firmware updating unit is used for updating the product firmware;
the mapping table updating unit is used for updating the mapping table of the Nand flash element;
the exception handling unit is used for handling power failure exception, read-write error or ECC error of the Nand flash element.
In addition, a load control method is also provided, which is applied to the internal controller of the Nand flash element, and comprises the following steps:
when the Nand flash element is powered on, controlling a basic loading module of the internal controller to receive basic information and control information sent by an upper computer;
judging the working mode of the basic loading module according to the control information, wherein the working mode comprises a common working mode and a Debug working mode;
if the working mode is the common working mode, controlling the basic loading module to be used for loading product firmware from the Nand flash element into the RAM of the internal controller and running the product firmware;
and if the working mode is the Debug working mode, controlling the basic loading module to receive configuration information and a low-level control program from the upper computer, and operating the low-level control program according to the configuration information.
There is also provided a load control device applied to an internal controller of a Nand flash element as described above, the load control device including:
the first control module is used for controlling a basic loading module of the internal controller to receive basic information and control information sent by an upper computer when the Nand flash element is powered on;
the mode judging module is used for judging the working mode of the basic loading module according to the control information, wherein the working mode comprises a common working mode and a Debug working mode;
the second control module is used for controlling the basic loading module to load the product firmware into the RAM of the internal controller from the Nand flash element and running the product firmware if the working mode is the common working mode;
and the third control module is used for controlling the basic loading module to receive configuration information and a low-level control program from the upper computer and running the low-level control program according to the configuration information if the working mode is the Debug working mode.
According to the technical scheme, the invention provides a Nand flash element and a load control method and device thereof. The basic loading module is used for receiving data information and control information sent by the upper computer, loading product firmware into an RAM of the internal controller and running the product firmware; the internal controller is used for performing read operation, write operation, erase operation, ECC check management, bad block management, address mapping management and wear leveling management on the Nand flash kernel. The Nand flash element of this embodiment just can realize the management to whole component through inside controller, no longer relies on main controller, consequently can solve the Nand flash element and rely on main controller to manage it and lead to the problem that main controller burden is heavier because of needing to rely on main controller.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a block diagram of a Nand flash device according to an embodiment of the present invention;
FIG. 2 is a flowchart illustrating steps of a method for controlling loading of a Nand flash device according to an embodiment of the present invention;
fig. 3 is a block diagram of a load control device of a Nand flash element according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Example one
Fig. 1 is a structural block diagram of a Nand flash element according to an embodiment of the present invention.
Referring to fig. 1, the Nand flash element provided in the present embodiment includes a package 10, in which a Nand flash core 11 and an internal controller 12 are disposed. The Nand flash kernel comprises a plurality of blocks, each Block is composed of a plurality of pages, each Page is composed of a plurality of Cell lines, and the kernel further comprises a storage area for storing an ECC check code.
The internal controller is used for controlling the Nand flash kernel, and specifically comprises a basic configuration module 121, a basic loading module 122, a low level module 123 and a product firmware module 124.
The basic configuration module is used for storing basic information and configuration information of the Nand flash kernel, such as page size, block size, the number of blocks, a mode of searching for bad blocks, ECC (error correction code) and the like; the basic loading module is used for receiving data information and control information sent by the upper computer, loading the product firmware into the RAM of the internal controller and operating the product firmware; the low-grid module is used for performing low-level formatting operation on the Nand flash kernel according to the control information received from the upper computer, and the product firmware module is used for performing reading operation, writing operation, erasing operation, ECC (error correction code) check management, bad block management, address mapping management, wear leveling management and the like on the Nand flash kernel according to the data information and the control information sent by the upper computer.
According to the technical scheme, the embodiment provides the Nand flash element which comprises a packaging body, wherein a Nand flash core and an internal controller are packaged in the packaging body, and the internal controller comprises a basic loading module. The basic loading module is used for receiving data information and control information sent by an upper computer; the internal controller is used for carrying out ECC check management, bad block management, address mapping management and wear leveling management on the Nand flash kernel. The Nand flash element of this embodiment just can realize the management to whole component through inside controller, no longer relies on main controller, consequently can solve the Nand flash element and rely on main controller to manage it and lead to the problem that main controller burden is heavier because of needing to rely on main controller.
The basic loading module in this embodiment specifically includes a mode control unit, a first loading unit, and a second loading unit. The mode control unit is used for controlling the working modes of the basic loading module according to the control information of the upper computer, and the working modes comprise a common working mode and a Debug working mode, namely, the module can enter the common working mode or the Debug working mode according to the control of the upper computer.
The common working mode refers to that the element loads corresponding product firmware after being powered on, and then the product firmware is operated to support a user to carry out reading, writing or erasing operation; the Debug working mode is that after power is on, a user is supported to open the card of the element through the upper computer, namely, the Debug working mode is initialized, so that the Debug working mode can work normally.
The first loading unit is used for loading the product firmware into the RAM of the internal controller and running the product firmware when the basic loading module is in a common working mode; and the second loading unit is used for receiving the configuration information and the low-level control program from the upper computer when the basic loading module is in the Debug working mode, and controlling the low-level control program to run according to the configuration information so as to carry out low-level format operation on the Nand flash kernel of the element.
The low level module includes a block management unit, a storage control unit, and a firmware download unit. The block management unit is used for detecting the Nand flash element, namely detecting the number of Nand flash kernels in the Nand flash element, calculating configuration information, checking bad blocks of the Nand flash kernels and generating a corresponding mapping table; the storage control unit is used for storing the configuration information and the mapping table into a Nand flash kernel, in particular to a management area distributed by fast management; the firmware downloading unit is used for receiving the product firmware sent by the upper computer, storing the product firmware into the Nand flash kernel and also storing the product firmware into the management area of the Nand flash kernel.
The product firmware module comprises an instruction processing unit, a firmware updating unit, a mapping table updating unit and an exception handling unit. The instruction processing unit is used for processing the control instruction sent by the upper computer, returning data or an execution result to the upper computer and informing the upper computer that the instruction sent by the upper computer is effectively executed so that the upper computer can execute corresponding operation according to the corresponding result; the firmware updating unit is used for updating the product firmware; the mapping table updating unit is used for updating the mapping table of the Nand flash element to ensure that the address mapping is correct; the exception handling unit is used for handling power failure exception, read-write error or ECC error of the Nand flash element.
Example two
Fig. 2 is a flowchart illustrating steps of a load control method for a Nand flash device according to an embodiment of the present invention.
The load control method provided by the embodiment is applied to the internal controller of the Nand flash element provided by the previous embodiment, and is used for realizing corresponding firmware load control on the Nand flash element.
Referring to fig. 2, the load control method for the Nand flash element provided in this embodiment specifically includes the following steps:
s101: and receiving basic information and control information sent by the upper computer.
When the Nand flash element is powered on, the basic loading module of the internal controller is controlled to receive basic information and control information sent by the upper computer.
S102: and judging whether the working mode is a common working mode.
Specifically, the working mode of the basic loading module is judged, and since the working mode of the module includes a normal working mode and a Debug working mode, the module is specifically judged to be the normal working mode or the Debug working mode, and a task to be executed next step is determined according to a judgment result.
S103: and controlling the basic loading module to load the product firmware from the Nand flash element into the RAM of the internal controller.
Namely, when the working mode of the basic loading module is a common working mode, the basic loading module is controlled to load the product firmware from the Nand flash element to the RAM of the internal controller, and the product firmware is operated, so that the element works normally.
S104: and the control basic loading module receives configuration information and a low-level control program from the upper computer.
When the working mode of the basic loading module is a Debug working mode, the module is controlled to receive configuration information and a low-level control program from an upper computer, the low-level control program is operated according to the configuration information so as to perform low-level formatting operation on a Nand flash kernel of the Nand flash element, and the Nand flash element is enabled to enter a state capable of being normally used by performing low-level formatting operation on the Nand flash kernel.
It can be seen from the foregoing technical solutions that, the present embodiment provides a load control method, which is applied to an internal controller of a Nand flash element, and can enable the internal controller to perform normal firmware load control on the element without an off-chip main controller controlling the element, thereby reducing the burden of the main controller.
EXAMPLE III
Fig. 3 is a block diagram of a load control device of a Nand flash element according to an embodiment of the present invention.
The load control device provided by the embodiment is applied to the internal controller of the Nand flash element provided by the first embodiment, and is used for realizing corresponding firmware load control on the Nand flash element.
Referring to fig. 2, the load control apparatus for Nand flash components provided in this embodiment specifically includes a first control module 20, a mode determination module 30, a second control module 40, and a third control module 50.
The first control module is used for controlling the internal control basic loading module to receive the basic information and the control information sent by the upper computer.
When the Nand flash element is powered on, the basic loading module of the internal controller is controlled to receive basic information and control information sent by the upper computer.
The mode judging module is used for judging whether the working mode is a common working mode.
Specifically, the working mode of the basic loading module is judged, and since the working mode of the module includes a normal working mode and a Debug working mode, the module is specifically judged to be the normal working mode or the Debug working mode, and a task to be executed next step is determined according to a judgment result.
The second control module is used for controlling the basic loading module to load the product firmware from the Nand flash element into the RAM of the internal controller.
Namely, when the working mode of the basic loading module is a common working mode, the basic loading module is controlled to load the product firmware from the Nand flash element into the RAM of the internal controller, and the product firmware is operated, so that the element works normally.
And the third control module is used for controlling the basic loading module to receive the configuration information and the low-level control program from the upper computer.
When the working mode of the basic loading module is a Debug working mode, the module is controlled to receive configuration information and a low-level control program from an upper computer, the low-level control program is operated according to the configuration information so as to perform low-level formatting operation on a Nand flash kernel of the Nand flash element, and the Nand flash element is enabled to enter a state capable of being normally used by performing low-level formatting operation on the Nand flash kernel.
It can be seen from the foregoing technical solutions that, the present embodiment provides a load control apparatus, which is applied to an internal controller of a Nand flash element, and can enable the internal controller to perform normal firmware load control on the element without an off-chip main controller controlling the element, thereby reducing the burden of the main controller.
The embodiments in the present specification are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, apparatus, or computer program product. Accordingly, embodiments of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
Embodiments of the present invention are described with reference to flowchart illustrations and/or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing terminal to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing terminal to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing terminal to cause a series of operational steps to be performed on the computer or other programmable terminal to produce a computer implemented process such that the instructions which execute on the computer or other programmable terminal provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications of these embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the embodiments of the invention.
Finally, it should also be noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or terminal that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or terminal. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or terminal that comprises the element.
The technical solutions provided by the present invention are described in detail above, and the principle and the implementation of the present invention are explained in this document by applying specific examples, and the descriptions of the above examples are only used to help understanding the method and the core idea of the present invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present invention.

Claims (7)

1. A Nand flash element, which is characterized by comprising a packaging body, wherein a Nand flash core and an internal controller are packaged in the packaging body, and the internal controller comprises a basic loading module, wherein:
the internal controller is used for performing read operation, write operation, erase operation, ECC (error correction code) check management, bad block management, address mapping management and wear leveling management on the Nand flash kernel;
the basic loading module is used for receiving data information and control information sent by an upper computer;
wherein, the basic loading module comprises a mode control unit, a first loading unit and a second loading unit, wherein:
the mode control unit is used for controlling the working modes of the basic loading module according to the control information of the upper computer, and the working modes comprise a common working mode and a Debug working mode;
the first loading unit is used for loading the product firmware into the RAM of the internal controller and controlling the product firmware to run when the basic loading module is in the common working mode;
and the second loading unit is used for receiving configuration information and a low-level control program from an upper computer when the basic loading module is in the Debug working mode, and controlling the low-level control program to run according to the configuration information.
2. The Nand flash element of claim 1, wherein the internal control further comprises a base configuration module, a low-end module, and a product firmware module, wherein:
the basic configuration module is used for storing basic information and configuration information of the Nand flash kernel;
the low-level module is used for performing low-level formatting operation on the Nand flash kernel according to the control information;
and the product firmware module is used for performing read operation, write operation, erase operation, ECC (error correction code) check management, bad block management, address mapping management and wear leveling management on the Nand flash kernel according to the data information and the control information.
3. The Nand flash element of claim 2, wherein the configuration information includes part or all of page size, block size, number of blocks, bad block check mode, and ECC check information.
4. The Nand flash element of claim 2, wherein the low-shelf module comprises a block management unit, a storage control unit, and a firmware download unit, wherein:
the block management unit is used for detecting the Nand flash element, calculating the configuration information, checking a bad block of the Nand flash kernel and generating a mapping table;
the storage control unit is used for storing the configuration information and the mapping table into the Nand flash kernel;
the firmware downloading unit is used for receiving product firmware sent by an upper computer and storing the product firmware into the Nand flash kernel.
5. The Nand flash element of claim 2, wherein the product firmware module comprises an instruction processing unit, a firmware updating unit, a mapping table updating unit, and an exception handling unit, wherein:
the instruction processing unit is used for processing the control instruction sent by the upper computer and returning data or an execution result to the upper computer;
the firmware updating unit is used for updating the product firmware;
the mapping table updating unit is used for updating the mapping table of the Nand flash element;
the exception handling unit is used for handling power failure exception, read-write error or ECC error of the Nand flash element.
6. A load control method applied to an internal controller of an Nand flash element as claimed in any one of claims 1 to 5, the load control method comprising the steps of:
when the Nand flash element is powered on, controlling a basic loading module of the internal controller to receive basic information and control information sent by an upper computer;
judging the working mode of the basic loading module according to the control information, wherein the working mode comprises a common working mode and a Debug working mode;
if the working mode is the common working mode, controlling the basic loading module to load the product firmware into the RAM of the internal controller from the Nand flash element and run the product firmware;
and if the working mode is the Debug working mode, controlling the basic loading module to receive configuration information and a low-level control program from the upper computer, and operating the low-level control program according to the configuration information.
7. A load control device applied to an internal controller of a Nand flash device as claimed in any one of claims 1 to 4, the load control device comprising:
the first control module is used for controlling a basic loading module of the internal controller to receive basic information and control information sent by an upper computer when the Nand flash element is powered on;
the mode judging module is used for judging the working mode of the basic loading module according to the control information, wherein the working mode comprises a common working mode and a Debug working mode;
the second control module is used for controlling the basic loading module to load the product firmware into the RAM of the internal controller from the Nand flash element and running the product firmware if the working mode is the common working mode;
and the third control module is used for controlling the basic loading module to receive configuration information and a low-level control program from the upper computer and running the low-level control program according to the configuration information if the working mode is the Debug working mode.
CN201711445827.3A 2017-12-27 2017-12-27 Nand flash element and loading control method and device thereof Active CN108255540B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711445827.3A CN108255540B (en) 2017-12-27 2017-12-27 Nand flash element and loading control method and device thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711445827.3A CN108255540B (en) 2017-12-27 2017-12-27 Nand flash element and loading control method and device thereof

Publications (2)

Publication Number Publication Date
CN108255540A CN108255540A (en) 2018-07-06
CN108255540B true CN108255540B (en) 2021-02-05

Family

ID=62724339

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711445827.3A Active CN108255540B (en) 2017-12-27 2017-12-27 Nand flash element and loading control method and device thereof

Country Status (1)

Country Link
CN (1) CN108255540B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113050878A (en) * 2019-12-27 2021-06-29 北京兆易创新科技股份有限公司 Method and device for dividing blocks by opening cards

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102169462A (en) * 2011-04-27 2011-08-31 中国科学院光电技术研究所 NAND Flash-based data recording method and recording controller
CN104461401A (en) * 2014-12-25 2015-03-25 珠海煌荣集成电路科技有限公司 Data reading and writing management method and device for SPI flash memory

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102169462A (en) * 2011-04-27 2011-08-31 中国科学院光电技术研究所 NAND Flash-based data recording method and recording controller
CN104461401A (en) * 2014-12-25 2015-03-25 珠海煌荣集成电路科技有限公司 Data reading and writing management method and device for SPI flash memory

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"flash文件***及存储管理技术研究与实现";董永帅;《中国优秀硕士学位论文全文数据库 信息科技辑》;20100615;第三章 *

Also Published As

Publication number Publication date
CN108255540A (en) 2018-07-06

Similar Documents

Publication Publication Date Title
KR101375992B1 (en) Handling errors during device bootup from a non-volatile memory
CN109062827B (en) Flash memory control device, flash memory control system, and flash memory control method
US20090265505A1 (en) Data writing method, and flash storage system and controller using the same
US20140372668A1 (en) Data writing method, memory controller and memory storage apparatus
CN108345430B (en) Nand flash element and operation control method and device thereof
US9141530B2 (en) Data writing method, memory controller and memory storage device
US9063888B2 (en) Program code loading and accessing method, memory controller, and memory storage apparatus
US20150058531A1 (en) Data writing method, memory control circuit unit and memory storage apparatus
KR20160074025A (en) Operating method for data storage device
US20130179627A1 (en) Method for managing buffer memory, memory controllor, and memory storage device
US9823844B2 (en) Memory management method, memory control circuit unit, and memory storage apparatus
US20100262892A1 (en) Data access method for flash meory and storage system and controller thereof
CN108345429B (en) Nand flash element
CN108255540B (en) Nand flash element and loading control method and device thereof
CN106683698A (en) Memory device and method of operating the same
US10289334B2 (en) Valid data merging method, memory controller and memory storage apparatus
CN108231124B (en) Nand flash element and low-grid control method and device thereof
TWI738235B (en) Method for performing resuming management, and memory device and controller thereof and electronic device
CN110442300B (en) Sorting instruction recording method, memory control circuit unit and memory device
JP4818453B1 (en) Electronic device and data reading method
CN103412778A (en) Program boot method and device of SOC (system on a chip) NAND Flash memory
US9268554B2 (en) Controlling method, memory controller, and data transmission system
CN111435287B (en) Memory control method, memory storage device and memory control circuit unit
US10169224B2 (en) Data protecting method for preventing received data from losing, memory storage apparatus and memory control circuit unit
CN112181859A (en) Effective data merging method, memory control circuit unit and memory device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Room 101, Floor 1-5, Building 8, Yard 9, Fenghao East Road, Haidian District, Beijing 100094

Patentee after: Zhaoyi Innovation Technology Group Co.,Ltd.

Address before: 100083 12 Floors, Block A, Tiangong Building, Science and Technology University, 30 College Road, Haidian District, Beijing

Patentee before: GIGADEVICE SEMICONDUCTOR(BEIJING) Inc.