CN110727543A - Commercial asymmetric cryptographic algorithm hardware module - Google Patents

Commercial asymmetric cryptographic algorithm hardware module Download PDF

Info

Publication number
CN110727543A
CN110727543A CN201910885731.1A CN201910885731A CN110727543A CN 110727543 A CN110727543 A CN 110727543A CN 201910885731 A CN201910885731 A CN 201910885731A CN 110727543 A CN110727543 A CN 110727543A
Authority
CN
China
Prior art keywords
module
ecc
error
check code
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910885731.1A
Other languages
Chinese (zh)
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.)
707th Research Institute of CSIC
Original Assignee
707th Research Institute of CSIC
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 707th Research Institute of CSIC filed Critical 707th Research Institute of CSIC
Priority to CN201910885731.1A priority Critical patent/CN110727543A/en
Publication of CN110727543A publication Critical patent/CN110727543A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error

Abstract

The invention relates to a commercial asymmetric cryptographic algorithm hardware module, which is technically characterized in that: the system comprises a check code generation module, an error positioning module and a finite state control logic module which are arranged on an FPGA (field programmable gate array), wherein the modules are connected with an NAND Flash main controller and an NAND Flash chip, read-write signals and data are captured through a control line and a data line, and the ECC (error correction code) check function is enabled and disabled by setting or resetting a corresponding register. The invention has reasonable design, adopts an FPGA hardware structure, realizes the ECC function by the mutual matching of the check code generating module, the error positioning module and the finite state control logic module with the NAND Flash main controller and the NAND Flash chip, has good error correction capability, remarkably improves the read-write performance of the storage system, and can be widely applied to a large-capacity solid-state memory.

Description

Commercial asymmetric cryptographic algorithm hardware module
Technical Field
The invention belongs to the technical field of large-capacity solid-state memories, and particularly relates to a commercial asymmetric cryptographic algorithm hardware module.
Background
In recent years, in high-speed data exchange devices, solid-state memories have been increasingly used because they can perform very fast data exchange at high frequencies because they use transistors to store data. The problem of data dislocation exists in the use process of the large-capacity solid-state memory. For the problem of data dislocation in a large-capacity solid-state memory, a software ECC model is usually used for checking and correcting, but the software ECC model is used for checking and correcting, which inevitably affects the read-write performance of the storage system.
Disclosure of Invention
The invention aims to overcome the defects in the prior art and provide a commercial asymmetric cryptographic algorithm hardware module which is reasonable in design, high in processing speed and stable in performance.
The technical problem to be solved by the invention is realized by adopting the following technical scheme:
a commercial asymmetric cryptographic algorithm hardware module comprises a check code generation module, an error positioning module and a finite state control logic module which are arranged on an FPGA (field programmable gate array), wherein the modules are connected with a NAND Flash main controller and a NAND Flash chip, read-write signals and data are captured through a control line and a data line, and the ECC (error correction code) check function is enabled and disabled by setting or resetting a corresponding register.
The ECC check code generation module divides each page of data with the size of 4KB into 8 groups of 512-byte data blocks, each group corresponds to 3-byte parity check codes, 8 registers with the size of 3 bytes in the check code generation module update parity check values in a response mode according to the sent address and data, and finally the ECC check code is generated.
When the NAND Flash chip is read, the first 4KB data read out by the error positioning module is recalculated by the ECC check code generation module, and finally 24 bytes are shifted by the error positioning module and stored in the ECC storage value register, and compared with the ECC calculated value newly generated by the ECC check code generation module, whether a data bit has an error is judged, and the type and the position of the error are stored in the error information register.
The finite state control logic module controls the working time sequence of the check code generation module and the error positioning module, and simultaneously outputs a state signal according to the current state information.
The invention has the advantages and positive effects that:
the invention adopts FPGA hardware structure, realizes ECC function by the mutual cooperation of the check code generation module, the error positioning module and the finite state control logic module with the NAND Flash main controller and the NAND Flash chip, has good error correction capability, remarkably improves the read-write performance of the storage system, and can be widely used in large-capacity solid-state memories.
Drawings
FIG. 1 is a schematic structural view of the present invention;
Detailed Description
The following describes the embodiments of the present invention in detail with reference to the accompanying drawings.
A commercial asymmetric cryptographic algorithm hardware module is shown in figure 1 and comprises a check code generation module, an error positioning module and a finite state control logic module, wherein the modules are realized by an FPGA chip and connected with an NAND Flash main controller and an NAND Flash chip. The module captures read-write signals and data through a control line and a data line, enables and disables an ECC (error correction code) check function through setting or resetting a corresponding register, directly receives signals of the NANDFlash main controller and transmits the signals to the NAND Flash chip when the module does not need to work, intercepts control signals of the NAND Flash main controller when the module needs to work, analyzes and processes the control signals, and then transmits the control signals to the NANN Flash chip. The following explains three modules separately:
1. an ECC check code generation module: since the NAND Flash is performed by taking a page as a unit when data is read and written, the module is combined with an ECC (error correction code) checking algorithm to divide data with the size of 4KB on each page into 8 groups of 512-byte data blocks, and each group corresponds to 3-byte parity check codes. According to the sent address and data, 8 registers with the size of 3 bytes in the check code generation module update the parity check value in response, and finally generate the ECC check code.
2. An error positioning module: when the NAND Flash chip carries out reading operation, the read-out first 4KB data is recalculated with the ECC value by the ECC check code generation module. Finally, the 24 bytes are shifted and stored into an ECC storage value register by the error positioning module, compared with an ECC calculated value newly generated by the ECC check code generation module, whether a data bit has an error is judged, and the type and the position of the error are stored into an error information register.
3. A finite state control logic module: the ECC finite state control logic controls the working time sequence of the whole ECC functional module and outputs a state signal according to the current state information.
Nothing in this specification is said to apply to the prior art.
It should be emphasized that the embodiments described herein are illustrative rather than restrictive, and thus the present invention is not limited to the embodiments described in the detailed description, but also includes other embodiments that can be derived from the technical solutions of the present invention by those skilled in the art.

Claims (4)

1. A commercial asymmetric cryptographic algorithm hardware module, comprising: the system comprises a check code generation module, an error positioning module and a finite state control logic module which are arranged on an FPGA (field programmable gate array), wherein the modules are connected with an NAND Flash main controller and an NAND Flash chip, read-write signals and data are captured through a control line and a data line, and the ECC (error correction code) check function is enabled and disabled by setting or resetting a corresponding register.
2. The commercial asymmetric cryptographic algorithm hardware module of claim 1, wherein: the ECC check code generation module divides each page of data with the size of 4KB into 8 groups of 512-byte data blocks, each group corresponds to 3-byte parity check codes, 8 registers with the size of 3 bytes in the check code generation module update parity check values in a response mode according to the sent address and data, and finally the ECC check code is generated.
3. The commercial asymmetric cryptographic algorithm hardware module of claim 1, wherein: when the NAND Flash chip is read, the first 4KB data read out by the error positioning module is recalculated by the ECC check code generation module, and finally 24 bytes are shifted by the error positioning module and stored in the ECC storage value register, and compared with the ECC calculated value newly generated by the ECC check code generation module, whether a data bit has an error is judged, and the type and the position of the error are stored in the error information register.
4. The commercial asymmetric cryptographic algorithm hardware module of claim 1, wherein: the finite state control logic module controls the working time sequence of the check code generation module and the error positioning module, and simultaneously outputs a state signal according to the current state information.
CN201910885731.1A 2019-09-19 2019-09-19 Commercial asymmetric cryptographic algorithm hardware module Pending CN110727543A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910885731.1A CN110727543A (en) 2019-09-19 2019-09-19 Commercial asymmetric cryptographic algorithm hardware module

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910885731.1A CN110727543A (en) 2019-09-19 2019-09-19 Commercial asymmetric cryptographic algorithm hardware module

Publications (1)

Publication Number Publication Date
CN110727543A true CN110727543A (en) 2020-01-24

Family

ID=69219192

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910885731.1A Pending CN110727543A (en) 2019-09-19 2019-09-19 Commercial asymmetric cryptographic algorithm hardware module

Country Status (1)

Country Link
CN (1) CN110727543A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538622A (en) * 2020-04-24 2020-08-14 上海航天电子通讯设备研究所 Error correction method for satellite-borne solid-state memory
WO2023019742A1 (en) * 2021-08-19 2023-02-23 无锡中微亿芯有限公司 Fpga having automatic error checking and correcting function for programmable logic module
US11604692B2 (en) 2021-08-19 2023-03-14 Wuxi Esiontech Co., Ltd. Field programmable gate array (FPGA) with automatic error detection and correction function for programmable logic modules
WO2023244733A1 (en) * 2022-06-16 2023-12-21 Advanced Micro Devices, Inc. Host-level error detection and fault correction

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7398449B1 (en) * 2004-06-16 2008-07-08 Azul Systems, Inc. Encoding 64-bit data nibble error correct and cyclic-redundancy code (CRC) address error detect for use on a 76-bit memory module
CN102142282A (en) * 2011-02-21 2011-08-03 北京理工大学 Method for identifying ECC verification algorithm of NAND Flash memory chip
CN109036493A (en) * 2018-06-11 2018-12-18 西北工业大学 A kind of NAND Flash controller with error detection correction mechanism

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7398449B1 (en) * 2004-06-16 2008-07-08 Azul Systems, Inc. Encoding 64-bit data nibble error correct and cyclic-redundancy code (CRC) address error detect for use on a 76-bit memory module
CN102142282A (en) * 2011-02-21 2011-08-03 北京理工大学 Method for identifying ECC verification algorithm of NAND Flash memory chip
CN109036493A (en) * 2018-06-11 2018-12-18 西北工业大学 A kind of NAND Flash controller with error detection correction mechanism

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王轩等: "基于FPGA的NAND Flash ECC校验系统设计与实现", 《电子设计工程》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538622A (en) * 2020-04-24 2020-08-14 上海航天电子通讯设备研究所 Error correction method for satellite-borne solid-state memory
WO2023019742A1 (en) * 2021-08-19 2023-02-23 无锡中微亿芯有限公司 Fpga having automatic error checking and correcting function for programmable logic module
US11604692B2 (en) 2021-08-19 2023-03-14 Wuxi Esiontech Co., Ltd. Field programmable gate array (FPGA) with automatic error detection and correction function for programmable logic modules
WO2023244733A1 (en) * 2022-06-16 2023-12-21 Advanced Micro Devices, Inc. Host-level error detection and fault correction

Similar Documents

Publication Publication Date Title
CN110727543A (en) Commercial asymmetric cryptographic algorithm hardware module
US9015553B2 (en) Data integrity in memory controllers and methods
EP2811392B1 (en) Method and device for reducing read delay
KR101626084B1 (en) Multi-chip memory system and data transfer method thereof
TWI595492B (en) Data transmitting method, memory control circuit unit and memory storage device
TWI396202B (en) Error correcting controller and flash memory chip system and error correcting method thereof
CN109491588B (en) Memory management method, memory control circuit unit and memory storage device
TW201703052A (en) Wear leveling method, memory storage device and memory control circuit unit
TW201514697A (en) Data processing method, memory storage device and memory controlling circuit unit
KR20150029402A (en) Data storing system and operating method thereof
US20200065190A1 (en) Data storage device and method for sharing memory of controller thereof
TWI534607B (en) Memory control circuit unit, data transmitting method and memory storage apparatus
TWI658361B (en) Memory management method, memory control circuit unit and memory storage apparatus
US8898420B2 (en) Non-volatile storage device and a memory controller controlling parity tables of recording regions of the non-volatile storage device
US20160253239A1 (en) Data storage device and operating method thereof
TW201523616A (en) Memory management method, memory controlling circuit unit, and memory storage device
TWI591640B (en) Memory management method, memory control circuit unit and memory storage device
CN103531246A (en) Quick memory error correction method with reading replacing writing
TWI629590B (en) Memory management method, memory control circuit unit and memory storage device
TW201913384A (en) Memory management method, memory control circuit unit and memory storage apparatus
TW201903779A (en) Memory management method, memory control circuit unit and memory storage apparatus
TWI733375B (en) Data transfer method and memory storage device
TW201643721A (en) Method of accessing buffer memory, memory controller and memory storage device
CN113467709A (en) Memory system and operating method thereof
TWI494944B (en) Method of detecting memory modules, memory control circuit unit and storage appartus

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200124

RJ01 Rejection of invention patent application after publication