CN107025940A - 非易失性存储器装置及其实时自适应读取电压调整方法 - Google Patents

非易失性存储器装置及其实时自适应读取电压调整方法 Download PDF

Info

Publication number
CN107025940A
CN107025940A CN201610878546.6A CN201610878546A CN107025940A CN 107025940 A CN107025940 A CN 107025940A CN 201610878546 A CN201610878546 A CN 201610878546A CN 107025940 A CN107025940 A CN 107025940A
Authority
CN
China
Prior art keywords
corresponding data
voltage
voltage parameter
page
controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610878546.6A
Other languages
English (en)
Other versions
CN107025940B (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.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
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
Priority claimed from US15/172,162 external-priority patent/US9747974B2/en
Application filed by Via Technologies Inc filed Critical Via Technologies Inc
Publication of CN107025940A publication Critical patent/CN107025940A/zh
Application granted granted Critical
Publication of CN107025940B publication Critical patent/CN107025940B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits

Landscapes

  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明涉及一种非易失性存储器装置及其实时自适应读取电压调整方法。非易失性存储器装置包括非易失性存储电路以及控制器。非易失性存储电路读取一组对应数据电压,以及依照控制器的读取电压参数将该组对应数据电压转换为对应数据。依据对应数据的错误位数量,控制器决定是否执行实时自适应读取电压调整。实时自适应读取电压调整包括:提供左(或低)读取电压参数给非易失性存储电路以将该组对应数据电压转换为左对应数据;提供右(或高)读取电压参数给非易失性存储电路以将该组对应数据电压转换为右对应数据;以及依照对应数据、左对应数据与右对应数据的关系,而决定读取电压参数的调整方向与调整量。

Description

非易失性存储器装置及其实时自适应读取电压调整方法
技术领域
本发明涉及一种非易失性存储器,特别是涉及一种非易失性存储器装置及其实时自适应读取电压调整的方法。
背景技术
与传统的硬盘设备相比,闪存(FLASH memory)具有快速读/写性能和低功耗等特性。闪存是一种常用的数据存储设备。闪存可以依据控制器所发出的读取命令的读取电压参数来设定读取电压。闪存还可以依据读取命令的地址来读取数据电压。闪存依照所述读取电压将该数据电压转换为对应数据给控制器。为了降低成本,闪存技术发展至越来越小的几何形状和越来越高的密度(每一个单元有更多位),使得读取错误成为闪存可靠性的一个主要的问题。因为数据保持特性(Data Retention)、读取干扰(read disturb)或编程干扰(program disturb)等因素会引起单元所输出的数据电压偏移至较低(或较高)的电压,而经偏移的数据电压可能会造成数据读取错误。如果所述读取电压未处于适当的水平,则可能在经读取/转换后的对应数据中造成更多的错误位。
发明内容
本发明提供一种非易失性存储器装置及其实时自适应读取电压调整的方法,可以适应性决定读取电压参数的调整方向与调整量。
本发明的实施例提供一种非易失性存储器装置。非易失性存储器装置包括非易失性存储电路以及控制器。非易失性存储电路用以依据读取命令的读取电压参数设定至少一读取电压,依据读取命令的地址读取一组对应数据电压,以及依照所述至少一读取电压将该组对应数据电压转换为对应数据。控制器耦接至非易失性存储电路,以提供读取命令并接收该对应数据。依据该对应数据的错误位数量,控制器决定是否执行实时自适应读取电压调整(On-The-Fly Self-Adaptive Read Voltage Adjustment)。其中,所述实时自适应读取电压调整包括:提供左(或较低)读取电压参数以使非易失性存储电路依照左读取电压参数将该组对应数据电压转换为左对应数据;提供右(或较高)读取电压参数以使非易失性存储电路依照右读取电压参数将该组对应数据电压转换为右对应数据;以及依照该对应数据与左对应数据的关系以及该对应数据与右对应数据的关系而适应性决定读取电压参数的调整方向与调整量。其中,左读取电压参数所对应的至少一左读取电压小于所述至少一读取电压,以及右读取电压参数所对应的至少一右读取电压大于所述至少一读取电压。
本发明的实施例提供一种非易失性存储器装置的实时自适应读取电压调整的方法。所述实时自适应读取电压调整的方法包括:由控制器提供读取命令给非易失性存储电路,以接收非易失性存储电路所回传的对应数据,其中非易失性存储电路依据该读取命令的读取电压参数设定至少一读取电压,依据读取命令的地址读取一组对应数据电压,以及依照所述至少一读取电压将该组对应数据电压转换为对应数据;由控制器提供左(或较低)读取电压参数给非易失性存储电路,以使非易失性存储电路依照左读取电压参数将该组对应数据电压转换为左对应数据,其中左读取电压参数所对应的至少一左读取电压小于所述至少一读取电压;由控制器提供右(或较高)读取电压参数给非易失性存储电路,以使非易失性存储电路依照右读取电压参数将该组对应数据电压转换为右对应数据,其中右读取电压参数所对应的至少一右读取电压大于所述至少一读取电压;以及依照对应数据与左对应数据的关系以及对应数据与右对应数据的关系而适应性决定读取电压参数的调整方向与调整量。
基于上述,本发明的实施例所提供的非易失性存储器装置及其实时自适应读取电压调整的方法可以提供读取电压参数、左(或较低)读取电压参数与右(或较高)读取电压参数给非易失性存储电路,以使非易失性存储电路分别依照读取电压参数、左读取电压参数与右读取电压参数将该组对应数据电压转换为对应数据、左对应数据与右对应数据。控制器可以依照对应数据、左对应数据与右对应数据的关系而适应性决定所述读取电压参数(阈值电压参数)的调整方向与调整量。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
附图说明
图1是依照本发明一实施例所绘示的一种非易失性存储器装置100的电路方块示意图。
图2是说明多层单元闪存的对应数据电压的分布示意图。
图3是说明多层单元闪存的对应数据电压的偏移示意图。
图4是依照本发明一实施例说明一种实时自适应读取电压调整的方法的流程示意图。
图5与图6是依照本发明一实施例说明在进行“实时自适应读取电压调整”时,多层单元闪存的对应数据电压的分布示意图。
附图标记说明
10:主机
100:非易失性存储器装置
110:非易失性存储电路
111:对应数据
120:控制器
121:控制电路
122:计算电路
123:数据缓冲器
124:错误检查和纠正(ECC)译码器
201、202、203、204、201’、202’、203’、204’、201”、202”、203”、204”:常态分布曲线
S410~S460:步骤
VtL:下页读取电压
VtL-left:下页左读取电压
VtL-right:下页右读取电压
VtU1、VtU2:上页读取电压
VtU1-left、VtU2-left:上页左读取电压
VtU1-right、VtU2-right:上页右读取电压
具体实施方式
在本申请说明书全文(包括权利要求)中所使用的“耦接(或连接)”一词可指任何直接或间接的连接手段。举例而言,若文中描述第一装置耦接(或连接)于第二装置,则应该被解释成该第一装置可以直接连接于该第二装置,或者该第一装置可以通过其他装置或某种连接手段而间接地连接至该第二装置。另外,凡可能之处,在附图及实施方式中使用相同标号的部件/构件/步骤代表相同或类似部分。不同实施例中使用相同标号或使用相同用语的部件/构件/步骤可以相互参照相关说明。
图1是依照本发明一实施例所绘示的一种非易失性存储器装置100的电路方块示意图。依照设计需求,非易失性存储器装置100可以是随身盘、固态硬盘(solid statedisc,SSD)或是其他存储装置。非易失性存储器装置100可以耦接至主机(host)10。此主机10可以是计算机、手持式电话、多媒体播放器、相机或是其他电子装置。当主机10发出一个读取命令(read command)给非易失性存储器装置100时,非易失性存储器装置100可以依据此读取命令的寻址来回传对应数据给主机10。
于图1所示实施例中,非易失性存储器装置100包括非易失性存储电路110与控制器120。依照设计需求,非易失性存储电路110可以是与非闪存(NAND flash memory)或是其他非易失性存储电路/部件。当主机10发出一个读取命令时,控制器120依据该读取命令来寻址非易失性存储电路110,以便从非易失性存储电路110中读取一笔对应数据111,然后将此对应数据回传给主机10。
详而言之,非易失性存储电路110可以依据读取命令的一个(或一组)读取电压参数来设定至少一读取电压(或称阈值电压),以及依据该读取命令的地址来读取一组对应数据电压。依照所述至少一读取电压,非易失性存储电路110可以将该组对应数据电压转换为对应数据111。在此以多层单元(Multi-Level Cell,MLC)闪存作为图1所示非易失性存储电路110的说明例。其他类型的闪存,例如单层单元(Single Level Cell,SLC)、三层单元(Triple Level Cell,TLC)、四层单元(Quadruple Level Cell,QLC)或其他类型闪存,可以依照多层单元闪存的相关说明而类推。非易失性存储电路110可以依据控制器120的命令来设定上页(upper page)读取电压VtU1、上页读取电压VtU2与下页(lower page)读取电压VtL。依照这些读取电压VtU1、VtU2与VtL,非易失性存储电路110可以将该组对应数据电压转换为对应数据111。
举例来说,图2是说明多层单元闪存的对应数据电压的分布示意图。图2所示横轴表示电压,纵轴表示分布量。图1所示非易失性存储电路110可以参照图2的相关说明而类推。多层单元闪存的读取电压(或称阈值电压)包含上页读取电压VtU1、上页读取电压VtU2与下页读取电压VtL。图2绘示了四条常态分布(normal distribution)曲线201、202、203与204,其中常态分布曲线201表示具有上页数据为“1”且下页数据为“1”的单元的数据电压分布,常态分布曲线202表示具有上页数据为“0”且下页数据为“1”的单元的数据电压分布,常态分布曲线203表示具有上页数据为“0”且下页数据为“0”的单元的数据电压分布,常态分布曲线204表示具有上页数据为“1”且下页数据为“0”的单元的数据电压分布。当某一单元的数据电压小于读取电压VtL时,非易失性存储电路110即可获知此单元的下页数据为“1”。当此单元的数据电压大于读取电压VtL时,非易失性存储电路110即可获知此单元的下页数据为“0”。当此单元的数据电压小于读取电压VtU1与VtU2时,或是当此单元的数据电压大于读取电压VtU1与VtU2时,非易失性存储电路110即可获知此单元的上页数据为“1”。当此单元的数据电压在读取电压VtU1与VtU2之间时,非易失性存储电路110即可获知此单元的上页数据为“0”。因此,依照这些读取电压VtU1、VtU2与VtL,非易失性存储电路110可以将对应数据电压转换为对应数据111。
公知读取电压是固定的,这些读取电压VtU1、VtU2与VtL并不会随着经转换后的对应数据111来适应性地调整。因为数据保持特性(Data Retention)、读取干扰(readdisturb)或编程干扰(program disturb)等因素会引起单元所输出的数据电压偏移至较低(或较高)的电压,而经偏移的数据电压可能会造成数据读取错误。举例来说,图3是说明多层单元闪存的对应数据电压的偏移示意图。图3所示横轴表示电压,纵轴表示分布量。比较图2与图3可以发现,单元所输出的数据电压已偏移至较低的电压,造成常态分布曲线201偏移至常态分布曲线201’,常态分布曲线202偏移至常态分布曲线202’,常态分布曲线203偏移至常态分布曲线203’,以及常态分布曲线204偏移至常态分布曲线204’。若读取电压VtU1、VtU2与VtL不会随着经转换后的对应数据111来适应性地调整,则可能在经读取/转换后的对应数据111中造成更多的错误位。
控制器120耦接至非易失性存储电路110。控制器120可以提供读取命令给非易失性存储电路110,以及从非易失性存储电路110接收对应数据111。控制器120可以对所述对应数据111进行错误检查和纠正(Error Checking and Correcting,以下称ECC)操作。此ECC操作可以检查对应数据111的错误位数量。在对应数据111的错误位数量不超过容忍范围的情况下,此ECC操作还可以修正对应数据111的错误位。控制器120可以依据对应数据111的错误位数量而决定是否执行“实时自适应读取电压调整”(On-The-Fly Self-Adaptive Read Voltage Adjustment)。例如,当对应数据111的错误位数量超过容忍范围时,控制器120可以执行“实时自适应读取电压调整”。
所述“实时自适应读取电压调整”包括下述步骤。控制器120提供读取命令给非易失性存储电路110,其中非易失性存储电路110依据读取命令的读取电压参数设定读取电压,依据读取命令的地址读取一组对应数据电压,以及依照所述读取电压将该组对应数据电压转换为对应数据。控制器120还可以提供左(或较低)读取电压参数给非易失性存储电路110,以使非易失性存储电路110依照左读取电压参数将所述同一组对应数据电压转换为左对应数据。控制器120还可以提供右(或较高)读取电压参数给非易失性存储电路110,以使非易失性存储电路110依照右读取电压参数将所述同一组对应数据电压转换为右对应数据。其中,左读取电压参数所对应的左读取电压小于所述读取电压,以及右读取电压参数所对应的右读取电压大于所述读取电压。也就是说,控制器120可以控制非易失性存储电路110去以不同的读取电压对相同地址进行数据读取(或以不同的读取电压将同一组对应数据电压转换为不同对应数据),而获得三笔对应数据,即所述对应数据、所述左对应数据与所述右对应数据。依照所述对应数据与所述左对应数据的关系,以及依照所述对应数据与所述右对应数据的关系,控制器120可以适应性决定所述读取电压参数的调整方向与调整量,以便控制非易失性存储电路110去调整读取电压(例如去调整图2与图3所示读取电压VtU1、VtU2与/或VtL)。
于图1所示实施例中(其他实施例不限于图1所示),控制器120包括控制电路121、计算电路122、数据缓冲器123以及错误检查和纠正(ECC)译码器124。控制电路121耦接至非易失性存储电路110,以提供读取命令。非易失性存储电路110依照控制电路121来决定读取电压Vt(例如图2与图3所示读取电压VtU1、VtU2与VtL)的水平。非易失性存储电路110将依据读取电压Vt而从对应的多个快闪单元中读取一笔对应数据111。数据缓冲器123耦接至非易失性存储电路110,以接收对应数据111。ECC译码器124耦接至数据缓冲器123,以检查对应数据111的错误位数量。在对应数据111的错误位数量不超过容忍范围的情况下,此ECC译码器124还可以修正对应数据111的错误位,然后将经修正的对应数据回传给主机10。本实施例并不限制ECC译码器124所执行的纠错码算法。例如,在一些实施例中,ECC译码器124可以执行BCH(Bose-Chaudhuri-Hocquengh)码算法、低密度奇偶校验(Low Density ParityCheck,LDPC)码算法或是其他ECC算法。
藉由ECC译码器124的检查,控制电路121可以依据对应数据111的错误位数量而决定是否执行“实时自适应读取电压调整”。例如,当对应数据111的错误位数量超过容忍范围时,控制电路121可以执行“实时自适应读取电压调整”。计算电路122耦接至数据缓冲器123。基于控制电路121的控制,计算电路122可以执行“实时自适应读取电压调整”,以决定所述读取电压参数的调整方向与调整量,并将所述调整方向与所述调整量回传给控制电路121。控制电路121可以基于计算电路122所提供的所述调整方向与所述调整量去适应性调整所述读取电压参数,以便将调整后的读取电压参数提供给非易失性存储电路110。基于控制电路121所提供的调整后的读取电压参数的控制,非易失性存储电路110可以适应性调整读取电压Vt(例如去调整图2与图3所示读取电压VtU1、VtU2与/或VtL)。
图4是依照本发明一实施例说明一种实时自适应读取电压调整的方法的流程示意图。请参照图1与图4,在非易失性存储电路110以读取电压Vt读出对应数据111(例如对应数据R1)后,ECC译码器124在步骤S410中将对此读出的对应数据R1进行纠错(errorcorrection)。控制电路121可以在步骤S420判断ECC译码器124是否纠错成功。如果ECC译码器124纠错成功(对应数据R1的错误位数量不超过容忍范围),则控制器120进入步骤S430,亦即不执行“实时自适应读取电压调整”。如果ECC译码器124纠错失败,则控制器120进入步骤S440,亦即执行“实时自适应读取电压调整”。
于图4所示实施例中,步骤S440包括子步骤S441与S442。于步骤S441中,控制器120可以控制非易失性存储电路110去以不同的读取电压对相同地址进行数据读取(或以不同的读取电压将同一组对应数据电压转换为不同对应数据),而获得三笔对应数据,在此称为对应数据R1、左对应数据R2与右对应数据R3。详而言之,控制器120的控制电路121可以在步骤S441中提供读取命令给非易失性存储电路110,以接收非易失性存储电路110所回传的对应数据R1。其中,非易失性存储电路110依据该读取命令的读取电压参数设定读取电压Vt,依据该读取命令的地址读取一组对应数据电压,以及依照所述读取电压Vt将该组对应数据电压转换为对应数据R1。控制器120的控制电路121在步骤S441中还提供左(或较低)读取电压参数给非易失性存储电路110,以使非易失性存储电路110依照左读取电压参数将该组对应数据电压转换为左对应数据R2,其中左读取电压参数所对应的左读取电压Vt_left小于所述读取电压Vt。控制器120的控制电路121在步骤S441中还提供右(或较高)读取电压参数给非易失性存储电路110,以使非易失性存储电路110依照右读取电压参数将该组对应数据电压转换为右对应数据R3,其中右读取电压参数所对应的右读取电压Vt_right大于所述读取电压Vt。非易失性存储电路110分别使用读取电压Vt左侧(低侧)的一个左读取电压Vt_left以及在读取电压Vt右侧(高侧)的一个右读取电压Vt_right来将同一组对应数据电压转换为不同对应数据,即左对应数据R2和右对应数据R3。
于步骤S442中,依照所述对应数据R1与所述左对应数据R2的关系,以及依照所述对应数据R1与所述右对应数据R3的关系,控制器120的计算电路122可以执行自适应Vt计算(Self-Adaptive Vt Calculation),以适应性决定所述读取电压参数的调整方向与调整量,进而控制非易失性存储电路110去调整读取电压Vt(例如去调整图2与图3所示读取电压VtU1、VtU2与/或VtL)。因此,控制器120可以动态地找出一个更好的读取电压Vt。
完成读取电压Vt的调整后,控制器120的控制电路121可以控制非易失性存储电路110去使用经调整后的读取电压Vt去读取对应数据111。在非易失性存储电路110以经调整后的读取电压Vt读出对应数据111(例如对应数据R1’)后,ECC译码器124在步骤S450中将对此读出的对应数据R1’进行纠错。控制电路121可以在步骤S460判断ECC译码器124是否纠错成功。如果ECC译码器124纠错成功(对应数据R1’的错误位数量不超过容忍范围),则控制器120进入步骤S430,亦即不执行“实时自适应读取电压调整”。如果ECC译码器124纠错失败,则控制器120进入步骤S440,亦即再一次执行“实时自适应读取电压调整”。
以下将以多层单元(MLC)闪存作为说明范例,以说明“实时自适应读取电压调整”的实施例。所述“实时自适应读取电压调整”可以参照以下实施例的相关说明而类推/扩展到单层单元(SLC)、三层单元(TLC)、四层单元(QLC)或其他类型闪存。
在此针对下页(Lower Page)数据说明控制器120对非易失性存储电路110(例如MLC闪存)进行“实时自适应读取电压调整”的实施例。多层单元闪存的读取电压(或称阈值电压)Vt包含上页读取电压VtU1、上页读取电压VtU2与下页读取电压VtL。图5与图6是依照本发明一实施例说明在进行“实时自适应读取电压调整”时,多层单元闪存的对应数据电压的分布示意图。图5与图6所示横轴表示电压,纵轴表示分布量。比较图2与图5(或比较图2与图6)可以发现,单元所输出的数据电压已偏移至较低的电压,造成常态分布曲线201偏移至常态分布曲线201”,常态分布曲线202偏移至常态分布曲线202”,常态分布曲线203偏移至常态分布曲线203”,以及常态分布曲线204偏移至常态分布曲线204”。当非易失性存储电路110以读取电压Vt读出的数据R1进行ECC译码失败时,控制器120的控制电路121可以控制计算电路122去进行“实时自适应读取电压调整”。
首先,控制器120的控制电路121可以在不同时间提供读取电压参数、左(或较低)读取电压参数与右(或较高)读取电压参数给非易失性存储电路110,以使非易失性存储电路110分别依照所述读取电压参数、所述左读取电压参数与所述右读取电压参数将同一组对应数据电压转换为对应数据R1、左对应数据R2与右对应数据R3。其中,所述读取电压参数包括下页读取电压参数(对应于图5所示下页读取电压VtL)、第一上页读取电压参数(对应于图6所示上页读取电压VtU1)与第二上页读取电压参数(对应于图6所示上页读取电压VtU2),所述左读取电压参数包括下页左读取电压参数(对应于图5所示下页左读取电压VtL-left)、第一上页左读取电压参数(对应于图6所示上页左读取电压VtU1-left)与第二上页左读取电压参数(对应于图6所示上页左读取电压VtU2-left),而所述右读取电压参数包括下页右读取电压参数(对应于图5所示下页右读取电压VtL-right)、第一上页右读取电压参数(对应于图6所示上页右读取电压VtU1-right)与第二上页右读取电压参数(对应于图6所示上页右读取电压VtU2-right)。所述对应数据R1包括下页对应数据R1L与上页对应数据R1U,所述左对应数据R2包括下页左对应数据R2L与上页左对应数据R2U,而所述右对应数据R3包括下页右对应数据R3L与上页右对应数据R3U。
控制器120的控制电路121提供下页读取电压参数给非易失性存储电路110,以使非易失性存储电路110依照所述下页读取电压参数将所述对应数据电压转换为下页对应数据R1L。控制器120的控制电路121还提供下页左读取电压参数给非易失性存储电路110,以使非易失性存储电路110依照该下页左读取电压参数将所述对应数据电压转换为下页左对应数据R2L。控制器120的控制电路121更提供下页右读取电压参数给非易失性存储电路110,以使非易失性存储电路110依照该下页右读取电压参数将所述对应数据电压转换为下页右对应数据R3L。
在获得下页对应数据R1L、下页左对应数据R2L和下页右对应数据R3L后,控制器120的计算电路122可以进行下述计算。控制器120的计算电路122可以计算R12L=R1L XORR2L而获得计算结果R12L,以及计算R13L=R1L XOR R3L而获得计算结果R13L,其中“XOR”表示“异或”(exclusive OR)运算。控制器120的计算电路122可以计数计算结果R12L中逻辑1的位个数N12,以及计数计算结果R13L中逻辑1的位个数N13。举例来说,假设计算结果R12L为“01001010”(以8位为例,但不限于此),则计算结果R12L中逻辑1的位个数N12为3。控制器120的计算电路122可以依据位个数N12与位个数N13的关系而决定所述下页读取电压参数的调整方向与调整量。
在此说明计算电路122如何依据位个数N12与位个数N13的关系来决定所述下页读取电压参数(对应于图5所示下页读取电压VtL)的调整方向。当N12-N13>0时,控制器120的计算电路122可以通知控制电路121去调高下页读取电压参数,亦即将图5所示下页读取电压VtL往右移动。当N12-N13<0时,控制器120的计算电路122可以通知控制电路121去调低下页读取电压参数,亦即将图5所示下页读取电压VtL往左移动。若以图5所示情境为例,位个数N12将小于位个数N13,致使控制器120的计算电路122可以通知控制电路121去调低下页读取电压参数(将图5所示下页读取电压VtL往左移动)。
在此说明计算电路122如何依据位个数N12与位个数N13的关系来决定所述下页读取电压参数(对应于图5所示下页读取电压VtL)的调整量。基于闪存的特征数据(characterization data)、方程式(equation)或查找表(lookup table),计算电路122可以获得下页读取电压参数的调整量AdjL,其中调整量AdjL正比于|N12-N13|。举例来说,控制器120的计算电路122可以计算AdjL=kL*|N12-N13|,其中系数kL为实数,而获得下页读取电压参数的调整量AdjL。系数kL可以视设计需求来决定。
在此针对上页(Upper Page)数据说明控制器120对非易失性存储电路110(例如MLC闪存)进行“实时自适应读取电压调整”的实施例。请参照图1与图6,控制器120的控制电路121提供第一上页读取电压参数以及第二上页读取电压参数给非易失性存储电路110,以使非易失性存储电路110依照所述第一上页读取电压参数以及第二上页读取电压参数将所述对应数据电压转换为上页对应数据R1U。控制器120的控制电路121还提供第一上页左读取电压参数(对应于图6所示上页左读取电压VtU1-left)与第二上页左读取电压参数(对应于图6所示上页左读取电压VtU2-left)给非易失性存储电路110,以使非易失性存储电路110依照第一上页左读取电压参数与第二上页左读取电压参数将该组对应数据电压转换为上页左对应数据R2U。控制器120的控制电路121还提供第一上页右读取电压参数(对应于图6所示上页右读取电压VtU1-right)与第二上页右读取电压参数(对应于图6所示上页右读取电压VtU2-right)给非易失性存储电路110,以使非易失性存储电路110依照第一上页右读取电压参数与第二上页右读取电压参数将该组对应数据电压转换为上页右对应数据R3U。
在获得上页对应数据R1U、上页左对应数据R2U和上页右对应数据R3U后,控制器120的计算电路122可以进行下述计算。控制器120的计算电路122可以比较上页对应数据R1U与上页左对应数据R2U,以计数上页对应数据R1U与上页左对应数据R2U之间位从逻辑1变至逻辑0的位个数NA12以及位从逻辑0变至逻辑1的位个数NC12。举例来说,假设上页对应数据R1U为“0100 1010”而上页左对应数据R2U为“0110 1100”(以8位为例,但不限于此),则从逻辑1变至逻辑0的位个数NA12为1,而从逻辑0变至逻辑1的位个数NC12为2。相类似的计算方式,控制器120的计算电路122还可以比较上页对应数据R1U与上页右对应数据R3U,以计数上页对应数据R1U与上页右对应数据R3U之间位从逻辑0变至逻辑1的位个数NA13以及位从逻辑1变至逻辑0的位个数NC13。举例来说,假设上页对应数据R1U为“0100 1010”而上页右对应数据R3U为“1110 0101”(以8位为例,但不限于此),则从逻辑1变至逻辑0的位个数NC13为2,而从逻辑0变至逻辑1的位个数NA13为4。控制器120的计算电路122可以依据位个数NA12与位个数NA13的关系,而决定第一上页读取电压参数(对应于图6所示上页读取电压VtU1)的调整方向与调整量。控制器120的计算电路122可以依据位个数NC12与位个数NC13的关系,而决定第二上页读取电压参数(对应于图6所示上页读取电压VtU2)的调整方向与调整量。
在此说明计算电路122如何依据位个数NA12与位个数NA13的关系来决定所述第一上页读取电压参数(对应于图6所示上页读取电压VtU1)的调整方向,以及如何依据位个数NC12与位个数NC13的关系来决定所述第二上页读取电压参数(对应于图6所示上页读取电压VtU2)的调整方向。当NA12-NA13>0时,控制器120的计算电路122可以通知控制电路121去调高第一上页读取电压参数,亦即将图6所示上页读取电压VtU1往右移动。当NA12-NA13<0时,控制器120的计算电路122可以通知控制电路121去调低第一上页读取电压参数,亦即将图6所示上页读取电压VtU1往左移动。若以图6所示情境为例,位个数NA12将大于位个数NA13,致使控制器120的计算电路122可以通知控制电路121去调高第一上页读取电压参数(将图6所示上页读取电压VtU1往右移动)。当NC12-NC13>0时,控制器120的计算电路122可以通知控制电路121去调高第二上页读取电压参数,亦即将图6所示上页读取电压VtU2往右移动。当NC12-NC13<0时,控制器120的计算电路122可以通知控制电路121去调低该第二上页读取电压参数,亦即将图6所示上页读取电压VtU2往左移动。若以图6所示情境为例,位个数NC12将大于位个数NC13,致使控制器120的计算电路122可以通知控制电路121去调高第二上页读取电压参数(将图6所示上页读取电压VtU2往右移动)。
在此说明计算电路122如何依据位个数NA12与位个数NA13的关系来决定所述第一上页读取电压参数(对应于图6所示上页读取电压VtU1)的调整量,以及如何依据位个数NC12与位个数NC13的关系来决定所述第二上页读取电压参数(对应于图6所示上页读取电压VtU2)的调整量。基于闪存的特征数据、方程式或查找表,计算电路122可以获得第一上页读取电压参数的调整量AdjU1以及第二上页读取电压参数的调整量AdjU2,其中调整量AdjU1正比于|NA12–NA13|,而调整量AdjU2正比于|NC12–NC13|。举例来说,控制器120的计算电路122可以计算AdjU1=kU1*|NA12-NA13|而获得第一上页读取电压参数的调整量AdjU1,以及计算AdjU2=kU2*|NC12-NC13|而获得第二上页读取电压参数的调整量AdjU2,其中系数kU1与系数kU2为实数。系数kU1与系数kU2可以视设计需求来决定。
值得注意的是,在不同的应用情境中,控制器120、控制电路121、计算电路122、数据缓冲器123及/或ECC译码器124的相关功能可以利用一般的编程语言(programminglanguages,例如C或C++)、硬件描述语言(hardware description languages,例如VerilogHDL或VHDL)或其他合适的编程语言来实现为软件、固件或硬件。可执行所述相关功能的软件(或固件)可以被布置为任何已知的计算机可存取介质(computer-accessible medias),例如磁带(magnetic tapes)、半导体(semiconductors)存储器、磁盘(magnetic disks)或光盘(compact disks,例如CD-ROM或DVD-ROM),或者可通过互联网(Internet)、有线通信(wired communication)、无线通信(wireless communication)或其它通信介质传送所述软件(或固件)。所述软件(或固件)可以被存放在计算机的可存取介质中,以便于由计算机的处理器来存取/执行所述软件(或固件)的编程码(programming codes)。另外,本发明的装置和方法可以通过硬件和软件的组合来实现。
综上所述,本发明诸实施例所提供非易失性存储器装置100及其实时自适应读取电压调整的方法可以提供读取电压参数、左(或较低)读取电压参数与右(或较高)读取电压参数给非易失性存储电路110,以使非易失性存储电路110分别依照读取电压参数、左读取电压参数与右读取电压参数将同一组对应数据电压转换为对应数据R1、左对应数据R2与右对应数据R3。控制器120可以依照对应数据R1、左对应数据R2与右对应数据R3的关系而适应性决定所述读取电压参数(阈值电压参数)的调整方向与调整量。所述非易失性存储器装置100及其实时自适应读取电压调整的方法可以实时自适应地调整读取电压,以涵盖所有的变异,例如页对页、字线对字线、块对块、芯片对芯片、信道对信道与驱动器对驱动器的变异。所述非易失性存储器装置100及其实时自适应读取电压调整的方法可以有效地减少从非易失性存储电路110所读取的对应数据111的错误位数量。
虽然本发明已以实施例公开如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当以所附的权利要求为准。

Claims (12)

1.一种非易失性存储器装置,包括:
一非易失性存储电路,用以依据一读取命令的一读取电压参数设定至少一读取电压,依据该读取命令的一地址读取一组对应数据电压,以及依照所述至少一读取电压将该组对应数据电压转换为一对应数据;以及
一控制器,耦接至该非易失性存储电路以提供该读取命令并接收该对应数据,以及依据该对应数据的错误位数量而决定是否执行一实时自适应读取电压调整,其中该实时自适应读取电压调整包括:提供一左读取电压参数以使该非易失性存储电路依照该左读取电压参数将该组对应数据电压转换为一左对应数据,提供一右读取电压参数以使该非易失性存储电路依照该右读取电压参数将该组对应数据电压转换为一右对应数据,以及依照该对应数据与该左对应数据的关系以及该对应数据与该右对应数据的关系而适应性决定该读取电压参数的调整方向与调整量,其中该左读取电压参数所对应的至少一左读取电压小于所述至少一读取电压,以及该右读取电压参数所对应的至少一右读取电压大于所述至少一读取电压。
2.如权利要求1所述的非易失性存储器装置,其中该非易失性存储电路为多层单元闪存,该对应数据包括一下页对应数据R1L,该控制器提供该左读取电压参数的一下页左读取电压参数以使该非易失性存储电路依照该下页左读取电压参数将该组对应数据电压转换为该左对应数据的一下页左对应数据R2L,该控制器提供该右读取电压参数的一下页右读取电压参数以使该非易失性存储电路依照该下页右读取电压参数将该组对应数据电压转换为该右对应数据的一下页右对应数据R3L,该控制器计算R1L XOR R2L而获得一计算结果R12L,该控制器计数该计算结果R12L中逻辑1的位个数N12,该控制器计算R1L XOR R3L而获得一计算结果R13L,该控制器计数该计算结果R13L中逻辑1的位个数N13,该控制器依据该位个数N12与该位个数N13的关系而决定该读取电压参数的一下页读取电压参数的调整方向与调整量。
3.如权利要求2所述的非易失性存储器装置,其中当N12-N13>0时该控制器调高该下页读取电压参数,当N12-N13<0时该控制器调低该下页读取电压参数,以及该控制器计算AdjL=kL*|N12-N13|而获得该读取电压参数的该下页读取电压参数的调整量AdjL,其中kL为实数。
4.如权利要求1所述的非易失性存储器装置,其中该非易失性存储电路为多层单元闪存,该对应数据包括一上页对应数据R1U,该控制器提供该左读取电压参数的一第一上页左读取电压参数与一第二上页左读取电压参数以使该非易失性存储电路依照该第一上页左读取电压参数与该第二上页左读取电压参数将该组对应数据电压转换为该左对应数据的一上页左对应数据R2U,该控制器提供该右读取电压参数的一第一上页右读取电压参数与一第二上页右读取电压参数以使该非易失性存储电路依照该第一上页右读取电压参数与该第二上页右读取电压参数将该组对应数据电压转换为该右对应数据的一上页右对应数据R3U,该控制器计数该上页对应数据R1U与该上页左对应数据R2U之间位从逻辑1变至逻辑0的位个数NA12以及位从逻辑0变至逻辑1的位个数NC12,该控制器计数该上页对应数据R1U与该上页右对应数据R3U之间位从逻辑0变至逻辑1的位个数NA13以及位从逻辑1变至逻辑0的位个数NC13,该控制器依据该位个数NA12与该位个数NA13的关系而决定该读取电压参数的一第一上页读取电压参数的调整方向与调整量,以及该控制器依据该位个数NC12与该位个数NC13的关系而决定该读取电压参数的一第二上页读取电压参数的调整方向与调整量。
5.如权利要求4所述的非易失性存储器装置,其中当NA12-NA13>0时该控制器调高该第一上页读取电压参数,当NA12-NA13<0时该控制器调低该第一上页读取电压参数,当NC12-NC13>0时该控制器调高该第二上页读取电压参数,当NC12-NC13<0时该控制器调低该第二上页读取电压参数,该控制器计算AdjU1=kU1*|NA12-NA13|而获得该读取电压参数的该第一上页读取电压参数的调整量AdjU1,以及该控制器计算AdjU2=kU2*|NC12-NC13|而获得该读取电压参数的该第二上页读取电压参数的调整量AdjU2,其中kU1与kU2为实数。
6.如权利要求1所述的非易失性存储器装置,其中该控制器包括:
一数据缓冲器,耦接至该非易失性存储电路以接收该对应数据;
一错误检查和纠正译码器,耦接至该数据缓冲器以检查该对应数据的错误位数量;
一计算电路,耦接至该数据缓冲器,用以执行该实时自适应读取电压调整以决定该读取电压参数的该调整方向与该调整量;以及
一控制电路,耦接至该非易失性存储电路以提供该读取命令,以及依据该计算电路所提供的该调整方向与该调整量来调整该读取电压参数,以便将该读取电压参数提供给该非易失性存储电路。
7.一种非易失性存储器装置的实时自适应读取电压调整的方法,包括:
由一控制器提供一读取命令给一非易失性存储电路,以接收该非易失性存储电路所回传的一对应数据,其中该非易失性存储电路依据该读取命令的一读取电压参数设定至少一读取电压,依据该读取命令的一地址读取一组对应数据电压,以及依照所述至少一读取电压将该组对应数据电压转换为该对应数据;
由该控制器提供一左读取电压参数给该非易失性存储电路,以使该非易失性存储电路依照该左读取电压参数将该组对应数据电压转换为一左对应数据,其中该左读取电压参数所对应的至少一左读取电压小于所述至少一读取电压;
由该控制器提供一右读取电压参数给该非易失性存储电路,以使该非易失性存储电路依照该右读取电压参数将该组对应数据电压转换为一右对应数据,其中该右读取电压参数所对应的至少一右读取电压大于所述至少一读取电压;以及
依照该对应数据与该左对应数据的关系以及该对应数据与该右对应数据的关系而适应性决定该读取电压参数的调整方向与调整量。
8.如权利要求7所述的实时自适应读取电压调整的方法,其中该非易失性存储电路为多层单元闪存,该对应数据包括一下页对应数据R1L,所述适应性决定该读取电压参数的调整方向与调整量的步骤包括:
由该控制器提供该左读取电压参数的一下页左读取电压参数给该非易失性存储电路,以使该非易失性存储电路依照该下页左读取电压参数将该组对应数据电压转换为该左对应数据的一下页左对应数据R2L;
由该控制器提供该右读取电压参数的一下页右读取电压参数给该非易失性存储电路,以使该非易失性存储电路依照该下页右读取电压参数将该组对应数据电压转换为该右对应数据的一下页右对应数据R3L;
由该控制器计算R1L XOR R2L而获得一计算结果R12L;
由该控制器计数该计算结果R12L中逻辑1的位个数N12;
由该控制器计算R1L XOR R3L而获得一计算结果R13L;
由该控制器计数该计算结果R13L中逻辑1的位个数N13;以及
由该控制器依据该位个数N12与该位个数N13的关系而决定该读取电压参数的一下页读取电压参数的调整方向与调整量。
9.如权利要求8所述的实时自适应读取电压调整的方法,其中所述决定该读取电压参数的该下页读取电压参数的调整方向与调整量的步骤包括:
当N12-N13>0时,由该控制器调高该下页读取电压参数;
当N12-N13<0时,由该控制器调低该下页读取电压参数;以及
由该控制器计算AdjL=kL*|N12-N13|而获得该读取电压参数的该下页读取电压参数的调整量AdjL,其中kL为实数。
10.如权利要求7所述的实时自适应读取电压调整的方法,其中该非易失性存储电路为多层单元闪存,该对应数据包括一上页对应数据R1U,所述适应性决定该读取电压参数的调整方向与调整量的步骤包括:
由该控制器提供该左读取电压参数的一第一上页左读取电压参数与一第二上页左读取电压参数给该非易失性存储电路,以使该非易失性存储电路依照该第一上页左读取电压参数与该第二上页左读取电压参数将该组对应数据电压转换为该左对应数据的一上页左对应数据R2U;
由该控制器提供该右读取电压参数的一第一上页右读取电压参数与一第二上页右读取电压参数给该非易失性存储电路,以使该非易失性存储电路依照该第一上页右读取电压参数与该第二上页右读取电压参数将该组对应数据电压转换为该右对应数据的一上页右对应数据R3U;
由该控制器计数该上页对应数据R1U与该上页左对应数据R2U之间位从逻辑1变至逻辑0的位个数NA12;
由该控制器计数该上页对应数据R1U与该上页左对应数据R2U之间位从逻辑0变至逻辑1的位个数NC12;
由该控制器计数该上页对应数据R1U与该上页右对应数据R3U之间位从逻辑0变至逻辑1的位个数NA13;
由该控制器计数该上页对应数据R1U与该上页右对应数据R3U之间位从逻辑1变至逻辑0的位个数NC13;
由该控制器依据该位个数NA12与该位个数NA13的关系而决定该读取电压参数的一第一上页读取电压参数的调整方向与调整量;以及
由该控制器依据该位个数NC12与该位个数NC13的关系而决定该读取电压参数的一第二上页读取电压参数的调整方向与调整量。
11.如权利要求10所述的实时自适应读取电压调整的方法,其中所述决定该读取电压参数的该第一上页读取电压参数的调整方向与调整量的步骤包括:
当NA12-NA13>0时,由该控制器调高该第一上页读取电压参数;
当NA12-NA13<0时,由该控制器调低该第一上页读取电压参数;以及
由该控制器计算AdjU1=kU1*|NA12-NA13|而获得该读取电压参数的该第一上页读取电压参数的调整量AdjU1,其中kU1为实数。
12.如权利要求10所述的实时自适应读取电压调整的方法,其中所述决定该读取电压参数的该第二上页读取电压参数的调整方向与调整量的步骤包括:
当NC12-NC13>0时,由该控制器调高该第二上页读取电压参数;
当NC12-NC13<0时,由该控制器调低该第二上页读取电压参数;以及
由该控制器计算AdjU2=kU2*|NC12-NC13|而获得该读取电压参数的该第二上页读取电压参数的调整量AdjU2,其中kU2为实数。
CN201610878546.6A 2016-01-19 2016-10-09 非易失性存储器装置及其实时自适应读取电压调整方法 Active CN107025940B (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201662280129P 2016-01-19 2016-01-19
US62/280,129 2016-01-19
US15/172,162 US9747974B2 (en) 2016-01-19 2016-06-03 Non-volatile memory apparatus and on-the-fly self-adaptive read voltage adjustment method thereof
US15/172,162 2016-06-03
TW105119428A TWI603332B (zh) 2016-01-19 2016-06-21 非揮發性記憶體裝置及其即時自適應讀取電壓調整方法
TW105119428 2016-06-21

Publications (2)

Publication Number Publication Date
CN107025940A true CN107025940A (zh) 2017-08-08
CN107025940B CN107025940B (zh) 2020-11-20

Family

ID=59524560

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610878546.6A Active CN107025940B (zh) 2016-01-19 2016-10-09 非易失性存储器装置及其实时自适应读取电压调整方法

Country Status (1)

Country Link
CN (1) CN107025940B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110364207A (zh) * 2018-04-11 2019-10-22 深圳大心电子科技有限公司 解码方法以及储存控制器

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101325089A (zh) * 2007-06-14 2008-12-17 三星电子株式会社 非易失性存储器件及其编程和读取方法
CN102314949A (zh) * 2010-07-05 2012-01-11 群联电子股份有限公司 数据读取方法、控制电路与存储器控制器
CN103578523A (zh) * 2012-07-23 2014-02-12 三星电子株式会社 存储器件、存储系统及控制存储器件的读取电压的方法
US20140101519A1 (en) * 2012-10-08 2014-04-10 Samsung Electronics Co., Ltd. Non-volatile memory device having adjustable read voltage, memory system comprising same, and method of operating same
US20140119113A1 (en) * 2012-10-31 2014-05-01 Lsi Corporation Threshold Acquisition and Adaption in NAND Flash Memory
CN104282339A (zh) * 2013-07-08 2015-01-14 群联电子股份有限公司 读取电压设定方法、控制电路与存储器储存装置
CN104616695A (zh) * 2013-11-05 2015-05-13 光宝科技股份有限公司 固态存储装置及其读取电压设定方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101325089A (zh) * 2007-06-14 2008-12-17 三星电子株式会社 非易失性存储器件及其编程和读取方法
CN102314949A (zh) * 2010-07-05 2012-01-11 群联电子股份有限公司 数据读取方法、控制电路与存储器控制器
CN103578523A (zh) * 2012-07-23 2014-02-12 三星电子株式会社 存储器件、存储系统及控制存储器件的读取电压的方法
US20140101519A1 (en) * 2012-10-08 2014-04-10 Samsung Electronics Co., Ltd. Non-volatile memory device having adjustable read voltage, memory system comprising same, and method of operating same
US20140119113A1 (en) * 2012-10-31 2014-05-01 Lsi Corporation Threshold Acquisition and Adaption in NAND Flash Memory
CN104282339A (zh) * 2013-07-08 2015-01-14 群联电子股份有限公司 读取电压设定方法、控制电路与存储器储存装置
CN104616695A (zh) * 2013-11-05 2015-05-13 光宝科技股份有限公司 固态存储装置及其读取电压设定方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110364207A (zh) * 2018-04-11 2019-10-22 深圳大心电子科技有限公司 解码方法以及储存控制器
CN110364207B (zh) * 2018-04-11 2022-01-11 深圳大心电子科技有限公司 解码方法以及储存控制器

Also Published As

Publication number Publication date
CN107025940B (zh) 2020-11-20

Similar Documents

Publication Publication Date Title
US11334413B2 (en) Estimating an error rate associated with memory
US10581458B2 (en) Data storage apparatus and operating method thereof
US9268638B2 (en) Flash memory control method, controller and electronic apparatus
US8832526B2 (en) Data reading method, memory controller, and memory storage device
US8625347B2 (en) Memory device and control method of memory device
EP2210257B1 (en) Systematic error correction for multi-level flash memory
KR101990971B1 (ko) 메모리, 메모리 시스템, 및 메모리에 대한 에러 검출/정정 방법
US9405624B2 (en) On-die error detection and correction during multi-step programming
US11257546B2 (en) Reading of soft bits and hard bits from memory cells
US12009040B2 (en) Detection of an incorrectly located read voltage
EP3614569A1 (en) Determining soft data using a classification code
US11636908B2 (en) Global-local read calibration
US9747974B2 (en) Non-volatile memory apparatus and on-the-fly self-adaptive read voltage adjustment method thereof
TW201243856A (en) Methods, devices, and systems for data sensing
US11875846B2 (en) Optimization of soft bit windows based on signal and noise characteristics of memory cells
US11670396B2 (en) Determine bit error count based on signal and noise characteristics centered at an optimized read voltage
CN106448741A (zh) 用于从sram存储器中读取数据的集成电路装置和方法
CN107025940A (zh) 非易失性存储器装置及其实时自适应读取电压调整方法
US10055293B2 (en) High performance memory controller
US11528038B2 (en) Content aware decoding using shared data statistics

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