CN107423160A - 一种提高NAND flash读速度的方法及装置 - Google Patents
一种提高NAND flash读速度的方法及装置 Download PDFInfo
- Publication number
- CN107423160A CN107423160A CN201710606312.0A CN201710606312A CN107423160A CN 107423160 A CN107423160 A CN 107423160A CN 201710606312 A CN201710606312 A CN 201710606312A CN 107423160 A CN107423160 A CN 107423160A
- Authority
- CN
- China
- Prior art keywords
- read
- module
- generation module
- parameter
- stressed
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开一种提高NAND flash读速度的方法及装置,本发明将重读操作放进硬件中实现,当出现错误比特数超出ECC纠错范围时,自动触发重读操作,不需软件再配置一遍命令,节省了CPU访问底层的时间;其次本发明允许CPU更新重读参数,动态调整重读参数,最大限度的提高重读命中率,硬件从最优的电压参数进行配置,减少重读次数,从而提高读速度。本装置保留原有传统软件控制重读的功能,同时也可以选择由硬件主动发起重读;硬件自动重读,省去了中断时间和CPU处理配置时间;CPU可以根据重读结果,对SRAM中的重读参数进行调整,也可以调整普通读命令时的读电压,双重保障,提高重读命中率,降低重读次数,从而提高flash的读速度。
Description
技术领域
本发明涉及一种提高NAND flash读速度的方法和装置,属于数字集成电路设计技术领域。
背景技术
由NAND flash特性决定,flash的每页数据划分成一个或多个ECC block,数据写入时,每个ECC block都要进行ECC纠错编码;读出数据时,每个ECC block进行ECC纠错解码,以保证这个ECC block的数据正确。ECC可纠错比特数有一定范围,超出该范围时,即发生了ECC无法纠正过来的错误。此时需要重读该ECC block,即通过参数调整,改变当前读电压的偏移量,重新读取数据。
P/E cycle是评断NAND flash生命周期的重要指标,而不论P/E cycle多少,NANDflash的读命令所需时间是一样的;而影响NAND flash的读速度的关键在于,flash操作过程中,默认的读电压有的时候不能正确的读出数据,需要调整读电压,重新读取数据。这个操作分为两步,第一步调整读电压;第二步重新发送读命令。而这个操作一般需要多次循环,每次都需要一个一个参数去试验,读一页数据的时间变成该页读多次的时间。即现有的依靠软件重新读取数据的方法会导致flash的读速度很慢。
发明内容
针对现有技术的缺陷,本发明提供一种提高NAND flash读速度的方法及装置,本发明将重读操作放进硬件中实现,从而提高flash的读速度。
为了解决所述技术问题,本发明采用的技术方案是:一种提高NAND flash读速度的方法,通过以下硬件***实现,该***包括NAND控制***和重读模块,NAND控制***包括NAND控制器和寄存器,NAND控制器内设置纠错模块,重读模块内置重读命令序列,纠错模块和寄存器通过逻辑与运算器连接至选择器,重读模块通过选择器连接至NAND控制器;工作时,由CPU配置寄存器,决定是否使能自动重读功能;如果不使能,则不开启重读模块;纠错模块发生错误溢出时,产生中断,由CPU控制整个***向寄存器重新写入新的命令;如果使能自动重读功能,发生错误溢出时,NAND控制***从重读模块读入重读命令序列,开始重读,当前页数据全部正确读出或读失败,结束重读过程,重读模块向寄存器中写入重读结果中断位、重读成功的参数,之后CPU控制整个***进行后续处理。
本发明所述提高NAND flash读速度的方法,所述重读模块还包括地址生成模块、命令生成模块和SRAM模块,地址生成模块的输入端与NAND控制器相连,用于接收NAND控制器传过来的info信号;命令生成模块的输入端与地址生成模块的输出端相连,用于接收地址生成模块输出的地址参数;重读命令序列中存放重读命令,并且重读命令序列的输入端与命令生成模块的输出端相连,用于接收更新重读命令的信息,重读命令序列的输出端连接NAND控制器,用于向NAND控制器输出重读命令序列;SRAM模块由CPU访问配置重读参数,并且SRAM模块的输出端与命令生成模块相连,用于向命令生成模块传输重读参数。
本发明所述提高NAND flash读速度的方法,重读模块被触发时,重读模块各部分的操作为:1、地址生成模块接收NAND控制器写入的当前页地址、当前页需要读出的数据长度、成功读出的数据长度以及数据缓存区的起始地址;然后地址生成模块输出当前操作页的重读地址、地址缓存区的新起始地址和剩余需要读出的数据长度;2、命令生成模块检测到地址生成模块输出有变,则将地址生成模块的输出信息更新到命令序列中;3、命令生成模块检测到CPU访问了SRAM,则重新读取SRAM,更新参数,写入命令序列中。
本发明所述提高NAND flash读速度的方法,命令生成模块按地址从低到高的顺序,依次读取SRAM中的参数。
本发明所述提高NAND flash读速度的方法,重读模块没有被触发时,命令生成模块始终读取SRAM最低地址所存放的参数并写入命令序列中;CPU根据上次重读结果,选择最优参数,随时更新SRAM,命令生成模块实时更新命令序列中的参数,为下次重读做准备。
本发明所述提高NAND flash读速度的方法,本方法实现自动重读的步骤为:1.CPU在寄存器中开启了自动重读功能;
2. 当前是读操作,发生错误溢出,启动重读,NAND控制***进行软复位,NAND控制***从重读模块中的重读命令序列中读入所有命令序列并执行;
3. 重读模块检测到NAND控制***访问了重读命令序列,从SRAM读出第二条参数,更新命令序列;
4. 地址生成模块根据NAND控制***传来的信号,重新计算输出的信号;同时命令生成模块检测到地址生成模块的输出变化了,更新命令序列中的内容;
5. 命令生成模块检测到地址生成模块输出的剩余需要读出数据长度为0时,复位读SRAM的地址,从最低地址读出参数,更新命令序列,至此完成一页的重读。向中断寄存器中写入重读成功中断、重读成功的参数;
6. 在执行步骤5的过程中,如果第一条参数对应的重读命令失败,再次发生错误溢出,重复步骤2-5;但是在执行步骤3时,依次从SRAM读出第三条参数,直到读到最后一条;
7. 如果SRAM中所有参数均没有成功读出该页,则结束重读,向中断寄存器中写入重读失败中断、重读成功的参数。
本发明所述提高NAND flash读速度的方法,NAND控制***进行软复位的操作包括清空命令队列、NAND控制器返回到IDLE状态、***内部缓存清空。
本发明所述提高NAND flash读速度的方法,清空命令队列时,如果命令队列中有多条命令,仅清除当前发送错误溢出的命令。
本发明还公开了一种提高NAND flash读速度的装置,包括NAND控制***, NAND控制器内部设有纠错模块,NAND控制***内设有由CPU配置自动重读使能命令的寄存器,纠错模块和寄存器的输出端连接至逻辑与运算器的输入端,逻辑与运算器的输出端连接至选择器,在NAND控制******添加一个重读模块,重读模块内设置重读命令序列,重读命令序列经选择器连接至NAND控制器。
本发明还公开了一种提高NAND flash读速度的装置,所述重读模块还包括地址生成模块、命令生成模块和SRAM模块,地址生成模块的输入端与NAND控制器相连,用于接收NAND控制器传过来的info信号;命令生成模块的输入端与地址生成模块的输出端相连,用于接收地址生成模块输出的地址参数;重读命令序列中存放重读命令,并且重读命令序列的输入端与命令生成模块的输出端相连,用于接收更新重读命令的信息,重读命令序列的输出端连接NAND控制器,用于向NAND控制器输出重读命令序列;SRAM模块由CPU访问配置重读参数,并且SRAM模块的输出端与命令生成模块相连,用于向命令生成模块传输重读参数。
本发明的有益效果:本发明将重读操作放进硬件中实现,当出现错误比特数超出ECC纠错范围时,自动触发重读操作,不需软件再配置一遍命令,节省了CPU访问底层的时间;其次本发明允许CPU更新重读参数,动态调整重读参数,最大限度的提高重读命中率,硬件从最优的电压参数进行配置,减少重读次数,从而提高读速度。本装置保留原有传统软件控制重读的功能,同时也可以选择由硬件主动发起重读;硬件自动重读,省去了中断时间和CPU处理配置时间;CPU可以根据重读结果,对SRAM中的重读参数进行调整,也可以调整普通读命令时的读电压,双重保障,提高重读命中率,降低重读次数,从而提高flash的读速度。
附图说明
图1为重读模块与NAND flash控制***连接的结构示意图;
图2为重读模块的结构示意图;
图3为自动重读时,重读命令序列的变化图。
具体实施方式
下面结合附图和具体实施例对本发明做进一步的说明。
实施例1
本实施例公开一种提高NAND flash读速度的方法,通过以下***实现,如图1所示,该***包括NAND控制***和重读模块,NAND控制***包括命令队列、选择器、NAND控制器、接口模块和NAND flash,命令队列通过选择器连接NAND控制器,NAND控制器通过接口模块连接NAND flash。为了提高NAND flash的读速度,NAND控制器内设置纠错模块,并在NAND控制***内增加寄存器,重读模块内置重读命令序列,纠错模块和寄存器通过逻辑与运算器连接至选择器,重读模块通过选择器连接至NAND控制器。工作时,由CPU配置寄存器,决定是否使能自动重读功能;如果不使能,则不开启重读模块;纠错模块发生错误溢出时,产生中断,由CPU控制整个***向寄存器重新写入新的命令;如果使能自动重读功能,发生错误溢出时,NAND控制***从重读模块读入重读命令序列,开始重读,当前页数据全部正确读出或读失败,结束重读过程,重读模块向寄存器中写入重读结果中断位、重读成功的参数,之后CPU控制整个***进行后续处理。
进一步的,如图2所示,重读模块内还设有地址生成模块、存放重读参数的SRAM模块和命令生成模块,其中存放重读参数的SRAM模块由CPU配置,模块的作用具体如下。
地址生成模块与NAND控制器相连,用于接收由NAND控制器传过来的info信号,包括当前页地址、当前页需要读出的数据长度、成功读出的数据长度(指已被缓存至指定缓存区的数据长度)以及数据缓存区的起始地址等;地址生成模块并用于输出操作页的重读地址、数据缓存区的新起始地址、剩余需要读出的数据长度等。
存放重读参数的SRAM模块由CPU访问配置,在初始化时,即可将默认参数写入,参数以retry table形式存放,每条参数按地址存放。参数形式以flash厂商提供为准。SRAM大小由实际需求决定。CPU可以随时更新其中内容。
命令生成模块接收地址生成模块的输出信号以及SRAM中的参数,刷新命令序列模块相应位置中的地址、参数等信息。
重读命令序列模块固定存放了读flash命令,读flash命令以用户自定义的微指令形式存在。其中读命令所涉及到的页地址、数据长度、数据缓存起始地址以及读电压参数等信息,由命令生成模块更新。
工作时,CPU初始化配置存放重读参数的SRAM、配置重读命令序列、配置NAND控制***中的寄存器,决定是否开启重读模块。
重读模块被触发时,重读模块各部分的操作为:
1. 当前是读flash操作时,以ECC block 为NAND flash页的一个sector为例,NAND控制***向地址生成模块写入当前页的row address (row_addr)、column address (col_addr)、当前页需要读出的sector数(sec_cnt)、成功读出的sector数(sec_red_cnt)、sector大小(sec_size)以及数据缓存区的起始地址main_data_addr等。
地址生成模块输出当前操作页的重读row address 和 column address(根据实际使用情况计算,可能还需要ECC校验位数等信息)、数据缓存区的新起始地址(main_data_addr + sec_size*sec_red_cnt)、剩余需要读出的sector数(sec_cnt- sec_red_cnt)等。
2. 命令生成模块检测到地址生成模块输出有变,则将地址生成模块的输出信息更新到命令序列中。
3. 命令生成模块检测到CPU访问了SRAM,则重新读取SRAM,更新参数,写入命令序列中。命令生成模块按地址从低到高的顺序,依次读取SRAM中的参数,因此优先级高的参数应存放在低地址中。
在重读模块没有被触发时,命令生成模块始终读取SRAM最低地址所存放的参数并写入命令序列中。在重读模块没有被触发时,CPU可以根据上次重读结果,选择最优参数,随时更新SRAM。命令生成模块实时更新命令序列中的参数,为下次重读做准备。
本方法中,实现自动重读的步骤为:
1. CPU在寄存器中开启了自动重读功能。
2. 当前是读操作,发生错误溢出,启动重读。NAND控制***进行软复位,操作包括清空命令队列(如果命令队列中有多条命令,仅清除当前发生错误溢出的命令)、NAND控制器返回到IDLE状态、***内部缓存清空。NAND控制***从重读模块中的命令序列中读入所有命令序列并执行。
3. 重读模块检测到NAND控制***访问了重读命令序列,从SRAM读出第二条参数,更新命令序列。
4. 地址生成模块根据NAND控制***传来的信号,重新计算输出的信号。同时命令生成模块检测到地址生成模块的输出变化了,更新命令序列中的内容。
5. 命令生成模块检测到地址生成模块输出的剩余需要读出数据长度为0时,复位读SRAM的地址,从最低地址读出参数,更新命令序列。至此完成一页的重读。向中断寄存器中写入重读成功中断、重读成功的参数。
6. 在执行步骤5的过程中,如果第一条参数对应的重读命令失败,再次发生错误溢出,重复步骤2-5。只不过步骤3,依次从SRAM读出第三条参数,直到读到最后一条。
7. 如果SRAM中所有参数均没有成功读出该页,则结束重读。向中断寄存器中写入重读失败中断、重读成功的参数(该值此时无效)。
图3为自动重读时,命令序列中参数变化时刻。每次NAND控制***读取重读命令序列之后,命令序列更新重读参数,为下一次重读做准备(还是当前页的重读操作)。地址、读取数据长度等信息则是每个ECC block被成功读出后就刷新。当重读结束时,命令序列中的重读参数写回最优值,等待下一页的重读触发。
实施例2
本实施例中公开一种提高NAND flash读速度的装置,包括NAND控制***, NAND控制器内部设有纠错模块,NAND控制***内设有由CPU配置自动重读使能命令的寄存器,纠错模块和寄存器的输出端连接至逻辑与运算器的输入端,逻辑与运算器的输出端连接至选择器,在NAND控制******添加一个重读模块,重读模块内设置重读命令序列,重读命令序列经选择器连接至NAND控制器。
进一步的,所述重读模块还包括地址生成模块、命令生成模块和SRAM模块,地址生成模块的输入端与NAND控制器相连,用于接收NAND控制器传过来的info信号;命令生成模块的输入端与地址生成模块的输出端相连,用于接收地址生成模块输出的地址参数;重读命令序列中存放重读命令,并且重读命令序列的输入端与命令生成模块的输出端相连,用于接收更新重读命令的信息,重读命令序列的输出端连接NAND控制器,用于向NAND控制器输出重读命令序列;SRAM模块由CPU访问配置重读参数,并且SRAM模块的输出端与命令生成模块相连,用于向命令生成模块传输重读参数。
以上描述的仅是本发明的基本原理和优选实施例,本领域技术人员根据本发明做出的改进和替换,属于本发明的保护范围。
Claims (10)
1.一种提高NAND flash读速度的方法,其特征在于:通过以下***实现,该***包括NAND控制***和重读模块,NAND控制***包括NAND控制器和寄存器,NAND控制器内设置纠错模块,重读模块内置重读命令序列,纠错模块和寄存器通过逻辑与运算器连接至选择器,重读模块通过选择器连接至NAND控制器;工作时,由CPU配置寄存器,决定是否使能自动重读功能;如果不使能,则不开启重读模块;纠错模块发生错误溢出时,产生中断,由CPU控制整个***向寄存器重新写入新的命令;如果使能自动重读功能,发生错误溢出时,NAND控制***从重读模块读入重读命令序列,开始重读,当前页数据全部正确读出或读失败,结束重读过程,重读模块向寄存器中写入重读结果中断位、重读成功的参数,之后CPU控制整个***进行后续处理。
2.根据权利要求1所述的提高NAND flash读速度的方法,其特征在于:所述重读模块还包括地址生成模块、命令生成模块和SRAM模块,地址生成模块的输入端与NAND控制器相连,用于接收NAND控制器传过来的info信号;命令生成模块的输入端与地址生成模块的输出端相连,用于接收地址生成模块输出的地址参数;重读命令序列中存放重读命令,并且重读命令序列的输入端与命令生成模块的输出端相连,用于接收更新重读命令的信息,重读命令序列的输出端连接NAND控制器,用于向NAND控制器输出重读命令序列;SRAM模块由CPU访问配置重读参数,并且SRAM模块的输出端与命令生成模块相连,用于向命令生成模块传输重读参数。
3.根据权利要求2所述的提高NAND flash读速度的方法,其特征在于:工作时,CPU初始化配置存放重读参数的SRAM、配置重读命令序列、配置NAND控制***中的寄存器,决定是否开启重读模块;重读模块被开启时,重读模块各部分的操作为:1、地址生成模块接收NAND控制器写入的当前页地址、当前页需要读出的数据长度、成功读出的数据长度以及数据缓存区的起始地址;然后地址生成模块输出当前操作页的重读地址、地址缓存区的新起始地址和剩余需要读出的数据长度;2、命令生成模块检测到地址生成模块输出有变,则将地址生成模块的输出信息更新到命令序列中;3、命令生成模块检测到CPU访问了SRAM,则重新读取SRAM,更新参数,写入命令序列中。
4.根据权利要求3所述的提高NAND flash读速度的方法,其特征在于:命令生成模块按地址从低到高的顺序,依次读取SRAM中的参数。
5.根据权利要求3所述的提高NAND flash读速度的方法,其特征在于:重读模块没有开启时,命令生成模块始终读取SRAM最低地址所存放的参数并写入命令序列中;CPU根据上次重读结果,选择最优参数,随时更新SRAM,命令生成模块实时更新命令序列中的参数,为下次重读做准备。
6.根据权利要求2所述的提高NAND flash读速度的方法,其特征在于:本方法实现自动重读的步骤为:1、 CPU在寄存器中开启了自动重读功能;
2、当前是读操作,发生错误溢出,启动重读,NAND控制***进行软复位,NAND控制***从重读模块中的重读命令序列中读入所有命令序列并执行;
3、重读模块检测到NAND控制***访问了重读命令序列,从SRAM读出第二条参数,更新命令序列;
4、地址生成模块根据NAND控制***传来的信号,重新计算输出的信号;同时命令生成模块检测到地址生成模块的输出变化了,更新命令序列中的内容;
5、命令生成模块检测到地址生成模块输出的剩余需要读出数据长度为0时,复位读SRAM的地址,从最低地址读出参数,更新命令序列,至此完成一页的重读,向中断寄存器中写入重读成功中断、重读成功的参数;
6、在执行步骤5的过程中,如果第一条参数对应的重读命令失败,再次发生错误溢出,重复步骤2-5;但是在执行步骤3时,依次从SRAM读出第三条参数,直到读到最后一条;
7、如果SRAM中所有参数均没有成功读出该页,则结束重读,向中断寄存器中写入重读失败中断、重读成功的参数。
7.根据权利要求6所述的提高NAND flash读速度的方法,其特征在于:NAND控制***进行软复位的操作包括清空命令队列、NAND控制器返回到IDLE状态、***内部缓存清空。
8.根据权利要求7所述的提高NAND flash读速度的方法,其特征在于:清空命令队列时,如果命令队列中有多条命令,仅清除当前发送错误溢出的命令。
9.一种提高NAND flash读速度的装置,其特征在于:包括NAND控制***, NAND控制器内部设有纠错模块,NAND控制***内设有由CPU配置自动重读使能命令的寄存器,纠错模块和寄存器的输出端连接至逻辑与运算器的输入端,逻辑与运算器的输出端连接至选择器,在NAND控制******添加一个重读模块,重读模块内设置重读命令序列,重读命令序列经选择器连接至NAND控制器。
10.根据权利要求9所述的提高NAND flash读速度的装置,其特征在于:所述重读模块还包括地址生成模块、命令生成模块和SRAM模块,地址生成模块的输入端与NAND控制器相连,用于接收NAND控制器传过来的info信号;命令生成模块的输入端与地址生成模块的输出端相连,用于接收地址生成模块输出的地址参数;重读命令序列中存放重读命令,并且重读命令序列的输入端与命令生成模块的输出端相连,用于接收更新重读命令的信息,重读命令序列的输出端连接NAND控制器,用于向NAND控制器输出重读命令序列;SRAM模块由CPU访问配置重读参数,并且SRAM模块的输出端与命令生成模块相连,用于向命令生成模块传输重读参数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710606312.0A CN107423160B (zh) | 2017-07-24 | 2017-07-24 | 一种提高NAND flash读速度的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710606312.0A CN107423160B (zh) | 2017-07-24 | 2017-07-24 | 一种提高NAND flash读速度的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107423160A true CN107423160A (zh) | 2017-12-01 |
CN107423160B CN107423160B (zh) | 2020-04-17 |
Family
ID=60430030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710606312.0A Active CN107423160B (zh) | 2017-07-24 | 2017-07-24 | 一种提高NAND flash读速度的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107423160B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108121509A (zh) * | 2017-12-19 | 2018-06-05 | 深圳忆联信息***有限公司 | 一种提高ssd读操作时raid效率的方法及ssd |
CN111145699A (zh) * | 2019-12-26 | 2020-05-12 | 深圳市华星光电半导体显示技术有限公司 | 代码读取方法、时序控制器和计算机可读存储介质 |
CN111382002A (zh) * | 2018-12-31 | 2020-07-07 | 美光科技公司 | 具有动态ecc电压和频率的方法和*** |
CN111522500A (zh) * | 2019-02-01 | 2020-08-11 | 睿宽智能科技有限公司 | 重复读取方法 |
CN111625194A (zh) * | 2020-05-26 | 2020-09-04 | 合肥康芯威存储技术有限公司 | 一种存储介质的数据读取方法、存储***及存储设备 |
WO2021076181A1 (en) * | 2019-10-16 | 2021-04-22 | Sandisk Technologies Llc | Positive feedback and parallel searching enhanced optimal read method for non-volatile memory |
CN114036096A (zh) * | 2021-11-04 | 2022-02-11 | 珠海一微半导体股份有限公司 | 一种基于总线接口的读控制器 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130080858A1 (en) * | 2011-09-28 | 2013-03-28 | Sang Hoon Lee | Method of reading data from a non-volatile memory and devices and systems to implement same |
CN103559146A (zh) * | 2013-11-05 | 2014-02-05 | 山东大学 | 一种提高NAND flash控制器读写速度的方法 |
US20150262659A1 (en) * | 2011-03-30 | 2015-09-17 | Stec, Inc. | Setting operating parameters for memory cells based on wordline address and cycle information |
CN105103131A (zh) * | 2013-04-12 | 2015-11-25 | 高通股份有限公司 | 用于改进闪存的可靠性和寿命的***和方法 |
CN106158038A (zh) * | 2015-04-14 | 2016-11-23 | 飞思卡尔半导体公司 | 从非易失性存储器读取数据的方法 |
CN106843771A (zh) * | 2017-01-26 | 2017-06-13 | 合肥兆芯电子有限公司 | 存储器重读方法、存储器控制电路单元及存储器存储装置 |
CN106951229A (zh) * | 2017-02-21 | 2017-07-14 | 珠海全志科技股份有限公司 | 一种boot‑rom兼容多种nand‑flash重读的方法 |
-
2017
- 2017-07-24 CN CN201710606312.0A patent/CN107423160B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150262659A1 (en) * | 2011-03-30 | 2015-09-17 | Stec, Inc. | Setting operating parameters for memory cells based on wordline address and cycle information |
US20130080858A1 (en) * | 2011-09-28 | 2013-03-28 | Sang Hoon Lee | Method of reading data from a non-volatile memory and devices and systems to implement same |
CN105103131A (zh) * | 2013-04-12 | 2015-11-25 | 高通股份有限公司 | 用于改进闪存的可靠性和寿命的***和方法 |
CN103559146A (zh) * | 2013-11-05 | 2014-02-05 | 山东大学 | 一种提高NAND flash控制器读写速度的方法 |
CN106158038A (zh) * | 2015-04-14 | 2016-11-23 | 飞思卡尔半导体公司 | 从非易失性存储器读取数据的方法 |
CN106843771A (zh) * | 2017-01-26 | 2017-06-13 | 合肥兆芯电子有限公司 | 存储器重读方法、存储器控制电路单元及存储器存储装置 |
CN106951229A (zh) * | 2017-02-21 | 2017-07-14 | 珠海全志科技股份有限公司 | 一种boot‑rom兼容多种nand‑flash重读的方法 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108121509A (zh) * | 2017-12-19 | 2018-06-05 | 深圳忆联信息***有限公司 | 一种提高ssd读操作时raid效率的方法及ssd |
CN108121509B (zh) * | 2017-12-19 | 2020-10-16 | 深圳忆联信息***有限公司 | 一种提高ssd读操作时raid效率的方法及ssd |
CN111382002B (zh) * | 2018-12-31 | 2024-05-28 | 北极星特许集团有限责任公司 | 具有动态ecc电压和频率的方法和*** |
CN111382002A (zh) * | 2018-12-31 | 2020-07-07 | 美光科技公司 | 具有动态ecc电压和频率的方法和*** |
US11740963B2 (en) | 2018-12-31 | 2023-08-29 | Micron Technology, Inc. | Methods and system with dynamic ECC voltage and frequency |
CN111522500A (zh) * | 2019-02-01 | 2020-08-11 | 睿宽智能科技有限公司 | 重复读取方法 |
WO2021076181A1 (en) * | 2019-10-16 | 2021-04-22 | Sandisk Technologies Llc | Positive feedback and parallel searching enhanced optimal read method for non-volatile memory |
US11250926B2 (en) | 2019-10-16 | 2022-02-15 | Sandisk Technologies Llc | Positive feedback and parallel searching enhanced optimal read method for non-volatile memory |
CN111145699A (zh) * | 2019-12-26 | 2020-05-12 | 深圳市华星光电半导体显示技术有限公司 | 代码读取方法、时序控制器和计算机可读存储介质 |
CN111625194B (zh) * | 2020-05-26 | 2023-03-24 | 合肥康芯威存储技术有限公司 | 一种存储介质的数据读取方法、存储***及存储设备 |
CN111625194A (zh) * | 2020-05-26 | 2020-09-04 | 合肥康芯威存储技术有限公司 | 一种存储介质的数据读取方法、存储***及存储设备 |
CN114036096A (zh) * | 2021-11-04 | 2022-02-11 | 珠海一微半导体股份有限公司 | 一种基于总线接口的读控制器 |
CN114036096B (zh) * | 2021-11-04 | 2024-05-03 | 珠海一微半导体股份有限公司 | 一种基于总线接口的读控制器 |
Also Published As
Publication number | Publication date |
---|---|
CN107423160B (zh) | 2020-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107423160A (zh) | 一种提高NAND flash读速度的方法及装置 | |
KR100673013B1 (ko) | 메모리 컨트롤러 및 그것을 포함한 데이터 처리 시스템 | |
JP6029923B2 (ja) | Nand型フラッシュメモリの読み込み方法及び装置 | |
US6421274B1 (en) | Semiconductor memory device and reading and writing method thereof | |
EP2443556B1 (en) | Parallel training of dynamic random access memory channel controllers | |
US9128822B2 (en) | On-chip bad block management for NAND flash memory | |
TWI424435B (zh) | 對快閃記憶體下達程式化指令的方法、控制器與儲存系統 | |
CN104238957B (zh) | 串行***接口控制器、串行***接口快闪存储器及其存取方法和存取控制方法 | |
US20090094411A1 (en) | Nand flash controller and data exchange method between nand flash memory and nand flash controller | |
US8234463B2 (en) | Data processing apparatus, memory controller, and access control method of memory controller | |
CN109783411A (zh) | 一种基于fpga的flash阵列控制方法及控制器 | |
CN106843771A (zh) | 存储器重读方法、存储器控制电路单元及存储器存储装置 | |
CN110442321A (zh) | 一种预取fifo电路及方法 | |
JP2017538206A (ja) | メモリウェアレベリング | |
CN110727543A (zh) | 一种商用非对称密码算法硬件模块 | |
TW201837713A (zh) | 記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置 | |
US8793540B2 (en) | Test apparatus and test method | |
TWI471731B (zh) | 記憶體存取方法、記憶體存取控制方法、spi快閃記憶體裝置以及spi控制器 | |
TW201403605A (zh) | 用於讀取nand快閃記憶體的方法和設備 | |
US7987301B1 (en) | DMA controller executing multiple transactions at non-contiguous system locations | |
CN210155649U (zh) | 一种固态硬盘 | |
CN108536475B (zh) | 完整编程命令处理方法与装置 | |
WO2021108098A1 (en) | Solid-state drive (ssd) with a storage controller employing differential two-wire serial buses to access flash memory | |
WO2020155545A1 (zh) | 一种可编程gpio装置及基于该装置的时序实现方法 | |
CN112395218A (zh) | 具有DDR高传输介面的新型SPI-NAND Flash存储芯片及操作方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |