输出nand接口的nand闪存控制器的制作方法

文档序号:6569065阅读:228来源:国知局
专利名称:输出nand接口的nand闪存控制器的制作方法
技术领域
本发明涉及一种NAND (与非)闪存控制器,其向主计^4^出与标准 NAND (与非)闪^i殳4^T出的接口相同类型的接口。
背景技术
单比特与多比特闪存单元
多年来,闪存设备已经成为;C^斤周知的。通常,闪^i殳备中的每个闪存单 it^一比特的信息。通过支持絲器单元的两种状态是传统的在闪存单元中 絲比特的方法。 一种状态^JJE辑"0",另外一种状态^4it辑"l"。
在闪存单元中,所述两种状态通过具有位于单itit道(连接单元晶体管的 源^p漏^L件之处)上的浮动门,以;s^示在浮动门中务賭的电荷数量的有
效状态实现。通常, 一种状态是在浮动门中有零电荷并脉单;^皮擦除后为未 写入状态(通常定义为表示"l,,的状态),另一种状态是在浮动门中含有一定数 量的负电荷(通常定义为表示"O"的状态)。在门中具有负电荷使单元晶体管的 临界电压(也,^t^为了能够使晶体管导电而加栽于晶体管控制门的电压)增高。 可以通过检查单元的临界电压^Jij所,的比特。如果临界电压处于较高状 态,贝'J比特值为O,如果临界电压位于较寸姚态贝'J比特值为1。实际上没有必要 精确地读財元的临界电压。所需要的^Li确地识别单元当前正处于两种状 态中的哪一种。为了这个目的,必须将本单元的临界电压与一个处于两种状态 之间的参考电W目》嫩,从而判断林元的临界电压是否低于或高于参考值。
图1A 图示了工作原理。特别地,图1A示出了大量单元的临
界电压的分布情况。因为闪存设备中的单4絲性以及性能上并不A^全相 同(例如,由于杂质的浓变的不同,或者硅结构的缺陷),对所有的单元应用 同样的编程,不^f射斤有的单元具有完全相同的临界电压。作为^(戈的是, 临界电压的分布如图1A所示。^^值为"l"的单;^i常具有负的临界电压,使 得大多数单元的临界电压接近图1A的左波命(标注为1)的中心电压,而少数
单元的临界电压高于或低于左波辆中心电压。类似地,存储值为"0"的单通常具有正的临界电压,使得大多数单元的临界电压接近图1A的右波峰(标注为0)的中心电压,而少数单元的临界电压高于或低于右波峰的中心电压。
近年来,市场上出现了一种使用"多级单元"(MLC)的新的闪存殳备。术 译'多级单元"容易被鄉,因为如上文所述,每单元比特的闪存使用多级, 也就是两级。因此,术语单比特单元"(SBC)在下文中用于指两级^4^单元,而 术译'多比特单元"(MBC)在下文中用于指多于两级的、也^i每单元多于一 个比特的肩裙单元。#最普通的MBC闪存是每单元两个比特的,因此以下 的^HWM这样的MBC賴器。然而,应当鄉的是本发明同样适用于支持 ^^Mt^l过两个比特的闪^i更备。单个的务賭两比特信息的MBC单M于四 种不同状态中的-^t状态。因为单元的状态由单元的临界电vS^示,MBC单元 支持用于单元的临界电压的四种不同的有效范围。图1B (m^技术)显示了典 型的每单元两比特的MBC单元的临界电压的分布。正如所预料的,图1B有四 个波命,每个波一应于一个状态。至于SBC,每个状态实际上是一个电压的 范围而不是一个单独的电压。当读*元内容时,单元的临界电压必须在明确 的电压范围内祐J^地识别。MBC闪存设备的5^技术的实例参见Harari的 专利号为US5434825的美国专利申请,包括M部内容作为凑i考,其实际上如 同^X完全被阐述。
设计用于MBC操作的、例如处于四种状态的单元通常可如两种状态的 SBC单it^怍。例如,其实际上如同^ii里完全被阐述的,引用的Conley等 人在申请号为6,426,893的美国专利作为参考,公开了在同样设备中使用 MBC 与SBC模式,并选择设备的某一部分在MBC模式下进M高密度的操作, 而其他部分在SBC模式下使用以提供更好的性能。
MBC设备提供重要的成本优势。一个每单元两比特的MBC设备只需一个类似容量的SBC设备的硅晶片一半的空间。然而,MBC闪存存在故泉。 MBC絲器的平均读写时间长于SBC賴器,导致了》b^J:的性能。并且, MBC的可靠性W氐于SBC。 MBC的临界电压范围之间的差别比SBC要小很 多。从而,临界电压的干扰(例如,所存储的电荷的泄露导致临界电压的偏移 或者来自^Mt相々傳元的干扰)在SBC中是可以忽略的,因为两种状态的区别 非常大,但4FT以导致一个MBC单itA—种状态转移至另"-^状态,M致
麟的比特。最终的结果是,从数^f橫时间或^i殳备的擦、写循环的耐久性
的方面^i^兌,MBC单元的性肯W^b^1。 NAND (与非)闪^i殳备
闪存设备通常分为NOR (或非)设备和NAND (与非)设备,名字来源 于单独的^^单;^单元序列中的互联方式。NOR设备是随机访问的 -访问 NOR闪存设备的主计^^几可以提供给该设备在它的地址指针上的任意地址,并 且立即取回务賭于设^t据指针上的那个地址中的数据。这与SRAM或者 EPROM賴器的^^f財目似。另一方面,NAND设絲非随机访问的而力顿 序访问的。它不可能以上述用于NOR的方式去沐问任何随才Ai4Jt止-而^i4几 必须写入字节序列到设备中,其定义了所要求的指令的类型(如,读,写,擦 除,等等)和用于那个指令的舰。舰识别页面(单个辦中可以写入的闪
存设备的最小的块)或者块(单个操作中可以擦除的闪存设备的最小的块),而 并非单独的字节或单词。读和写指令序列的确含有单个字节或者单词的地Jt止, 但是事实上NAND闪存经常^##单元中读出完整的页面或者把完整的页面写 A^^"单元中。当页面的数据从队列中被渎出并;^Ji殳备内的緩冲区^,
i^可以通过^^i^i信号连续地时钟输出它们一个接一个地访问数据字节或单词。
由于NAND设备的非随机沐问,其不育fef皮用于直接从闪存中运行代码。这 与支持直#^^#^亍(通常称为"扭当的位Ii^亍(execution in place)"或者 "XIP,,)的NOR设备相反。因此NOR设备是通常用于^P(^^的。然而,NAND 设备的优^K吏其作为数据械非常有用。NAND设备比同样比特容量的NOR 设^^UC,或:^i兌—在同样的鉢下NAND设备比NOR设备提供更多的4# 的比特。而且,NAND^L备的写A^^除的性能比NORi更备决许多。这些优 点使得NAND闪存技术成为用于^^数据的a^i捧'
NAND接口协议
典型的SBC NAND设备是提供2G比特存储的东芝(Toshiba) TC58NVG1S3B。典型的MBC NAND设备是提供4G比特賴的东芝(Toshiba) TC58NVG2D4B。引用两种设备的数据单作为参考,其实际上如同^E完全 被阐述。
正如可以从前面殿ij的数据单中看出的,那两种NAND设备有着类似的接
口 。这些NAND设备利用同样的电信号进行NAND闪存设备和主设备之间的命令协调和数据传输。那些信号包括数据线和一些控制信号_~ALE(允许地址锁存),CLE(允许命令锁存),WE\(允许写入)等等。SBC设备和MBC设备在 它们的性能上并不是完全相同的——用于写MBC页所需要的时间远远多于用 于写SBC页的时间。然而,两种设备的使用的电信号和它们的功能是相同的。现 有技术中这种接口协议的类型是"NAND接口"。尽管到目前为止,标准化组织还没有对"NAND接口协议"制定正式标准化,但NAND闪存设备的生产商们 都遵循同样的协议以支持NAND闪存功能的基本子集。这样座就使用户在将 NAND设备应用到他们的电子产品时可以使用任何生厂商的NAND设备,而不 用因为使用个别厂家的设备修改他们的硬件或软件。需要注意的是,即使NAND 厂商提供出此功能基本子集的额外功能,为了与频厂商使用的协议相兼容也要确保提供了基本功能,至少是某种程度上。
本申请中的术洽'NAND接口协议"(或者是简写"NAND接口")是指发起设备和相应设备之间的接口协议,即使它不与定时参数完全兼容,不与NAND 设备支持的其他命令完全兼容,或者包括NAND设备不支持的额外命令,但它一般都遵循主机设备和NAND闪存设备之间的基本读、写和擦除操作协议。 换句话说,术语"NAND接口"是指任何可接口协议,其所4M的传输字节序列与 当接口连接于东芝(Toshiba) TC58NVG1S3B NAND设备时用悄(辦码 OOH)、写(,码80H)和擦除(,码60H)的字节序列功肯M目同,并且也 使用与上述NAND设备的CLE、 ALE、 CE、 WE和RE信号功負M目同的控制 信号。
需要注意的是,"NAND接口协议"不是相对称的。因此,经常是由主机设 备发起于NAND接口上的交互,而不是由闪存设备。
如给定设备包括用于支持NAND接口协议(例如,利用NAND接口协 议与其他设备交互)所需的元件(例如,硬件,软件,固件或者它们的任何形 式的结合),那么给定设备(例如,控制器,闪存设备,主机设备,等等)被称 为包含,包括或者具有一个'NAND接口"。
一个给定设备(如,控制器设备)的接口 (例如,NAND接口或者与M
协iM目关联的接口 )可以是个"主机端接口"(如给定设备适于利用主机端接口
与主机设备进行交互)或者给定设备的接口可以是"闪存设备接口"(如,给
定设备适于利用闪存设备端接口与闪存设备进行交互)。术语"闪存设备端接
口"、"闪设备微口"和'闪縱口,,^匕X^目交换iiMM。
这些术语(即"i^A^口"和'闪^i殳备驗口,,)不能与术if"^iMl型接 口"和'闪存类型接口"相4储,^iU/f^J该术语以区分NAND接口协议的两 侧,因为这个协议不是对称性的。W卜,由于经常^4;u^交互,我们需要 注意,如果一个给定设备包括用于实现NAND接口协议的主机端(即,用于标 识一个NANDli几,和;^NAND协议交互)的必要的硬"ff^/或者软件,则 该设备被称为具有"i^Ml型接口"。 ^fe^,由于闪^i殳备4不会狄交互, 我们需要注意,如果一个给定设备包括用于实现NAND接口协议的闪存端(即
用于表示NAND闪存设备)的必要的硬fHN或者软件,则该设备被称为具有"闪 存类型接口"。
通常,"i^Ml型接口"(即那些扮演i4几角色的)是"闪^i殳备縱口"(即 W门与闪存设备或者效仿闪存设备的硬件进行交互)而"闪存类型接口,,(即那 些扮演闪存设备角色的)通常是"^f贿接口"(即他们与主浙设备或者效仿主 机设备的硬件进行交互)。^feit种应用中的术洽'i^几设务,(或者简写为"i^几") 是指^f^具有处理能力并且有与闪存设备进行接口的能力的设备。主机设备可 以;l个人电脑、PDA、移动电话、游戏控制台等等。
通常,NAND设备相对^^接口和用其;J!U1作。 一个原因是如上述的用于 访问它们的相对复杂的协议(与NOR i殳4"相》嫩而言)。另一个难M当从 NAND设备,的数据存在i^。相反,NOR设备可以被假"^悉是返回iE^角的 数据。NAND设备与生俱来的不可靠性需要利用^J:侦查码(EDC) ^J^纠 銷(ECC)。
SBCNAND闪存的制造商通常建i^)户应用M纠JE^,其能够纠正每个 含有512字节数据的页面中1比#^差。扭是MBC NAND闪^i殳^t据单通 常建议应用能够修正每^H^有512字节数据的页面中的4个比#^差的ECC。 对于一个大小是2048字节的页面,如同在上述NSND设备中M的(即的"大 区块设备,),建i50i在页面的512字节的每个区域中应用误差纠正。扭匕应用 中,术洽'N-比特ECC"指能够在512字节数据中修正N比4WJ^的ECC方案, 而不考虑512字节是一页的大小、少于一页、a多于一页。
NAND控制器
由于NAM)设备的复杂性,通常^fM"NAND控制器,,用于控制电子系统 中的NAND设备的使用。确实可以通it 殳有插入NAND控制器的i^几i殳4"直 ^^ft和利用NAND设备,而JL4在如jtb^t的系统。但是,这种结构存拟艮 多弊病。第一,i^几必须单^^Mt NAND设备的每个控制信号(例如,CLE 或者ALE), iW于i^JM兌繁瑣并il^时。第二,支持EDC和ECC给i^几
带iM冗重的负担-i^必须为每个页面的写,计算奇偶比特,并且^fm^
检测计算(以及一些M纠正计算)。所有的这些使得这样的"无控制器"架构相 对緩慢和做。
NAND控制器^地简化当利用NAND i殳备时i^几的任务。处理器 与控制器通过^r便使用的协i^ii行交互——写入页面的请求可以作为单个多艮 絲^Jtjh^数据的命4^^拔出,而无需去为复杂的控制行序列和NAND命令 码烦恼。控制器然后将ii^制协议转妙等賴NAND协iX^列,当i^几无 需*{故郝的任务的时候(或者^l:等待着NAND辦结束,如果是这#^求 的)。
贿技术中有些现泉A^:于NAND控制器在系统中所处何处。第一种方法 如图2所示。图中NAND控制器114物^Ji被置于主机设备110A的主才;i^t理 器112A中。如^f成理器112A是通过单管芯实现的,则控制器114被iy^ 于同一管芯上。例如在一些由德克萨斯(Texas)工厂生产何肖售的OMAP处 理器的十姊中。利用这种结构的制造系统,^f成理器与NAND控制器通常使 用一些禾確协iJUi行交互。因为交互位于i^成理器中,^^1标准协议没有益 处。
第^t贿技术方勤口图3A-3B中所示。图中NAND控制器116是个分离 的物理元件,处于主才几110B的主^U1:理器112B和NAND设备120A之间。例 如一些便携USB闪存设备(UFDs)中的情形,例如DiskOnKey制造的并由 M-Systems闪存^^先辨g售的产品,其中有NAND控制器116被封装于UFD 中,并且^^]设备端NAND接口 124与在一端的NAND设备120A进行交互并 且与在另一端的i^成理器U2B进行交互H^I利用USB协i^f咸的USB 接口 122)。在^^l这种结构的系统中,iWt理器通常^^标准协议例如USB 或ATA与NAND控制器进行交互,由于交互是位于处理器外的,使用为M 目的由处理器支持的标准协议就非常方便。
需要注意的是,才娥之前定义的术语,NAND接口 124是一个'闪存没备端 NAND接口"(即适用于与NAND闪^i殳备120A交互)但是同时,NAND接 口 124也A^iMI型NAND接口 (即适用于狄NAND协议交互)。
第三个l^技术方'^t口图4所示。图中NAND控制器118物理上置于 NAND设备120B中。闪^i殳备和控制器甚至可以被封装于同一管芯上。例如 在一些由MDOC存^i殳^4'J造厂生产由M-system闪存^^先辨肖售的以^L 由三星电子销售及生产的OneNAND设备的情形中。在^^I这种结构架构的系 统中,^f成理器112B通常与NAND控制^f^)像USB的标准协"i咸者^^1 像上述MOC和OneNAND例子情形中的半标准协ii(Ji行交互。
我们可以从以上推论出iW技术中独立的NAND控制器(既不与NAND 设备HA也不与主机处理器集成)通常在它的^ 具有一些标准的接口,在 其闪^i殳备端具有NAND接口 (例如,参见图3B)。实际上,在市场上可以找 到输出多种接口类型—USB, SD (^^数码),MMC (多^^体卡)以狄多的 NAND控制器。但是目前还找不到向i^贿出NAND接口的独立的NAND控 制器。实际上,有理由期望——没有内建NAND支持并且为此目的需要夕MP 控制器的ii线理器,通常不具有NAND接口并且不能直接与输出NAND接 口的设"^相连,因此,控制器具有i^L^NAND接口没有用处。另一方面,具 有内建NAND支持的i^^t理器通常还包括内建的NAND控制器,并且可以 与NAND设备直接相连,因此不需^-"个夕h^ NAND控制器。
以上描述的S^技木逸留了一个iM醉决的问题。如图2所示,假设存在集 成内建NAND控制器和NAND接口的Ji成理器。该内建的控制器被设计与 在某种可靠级别上的NAND设#-^^工作。U因为NAND控制器提^-"定 级别的^t检测和纠正,因此不能支持低可靠性的NAND设备。例如,具有一 个比特ECC的NAND控制器可以与其生产厂家指定的仅要求该误差纠正船'J 的SBC NAND设^""^工作。这种控制器不能与每单元两个比特的MBC NANDi殳^^工作,因为它们需要4个比特ECC,因此一些数据可能不4^皮 正确地读咸理器中。同样,提供4比特ECC的NAND控制器可以与当前的 "^单元两比特的MBC NAND "^工作,但是不能与很可肯y^求更高船'j ECC 容量的下一代MBC NAND设#^工作。
i^A因为^L的MBC NAND设44皮期望具有比当前的MBC设备更低的
可靠性更强的ECC容量。减少可靠性和增加误差差率的原因有两部分
a. 制造NAND设备的流程的持续的改进以生产更小型的存储单元。;几年前 NAND设备吏用0.4賴沐流程,当前它们使用90纳米和70纳米技术,并且这种缩小的趋势可期望还在继续。随着存储单元尺寸的缩小带来的是低可靠性, 因为小尺寸使得单;W在以前是不重要的物理作用和现象更加敏感。
b. 当每个单元有多于两个比特每单元的MBC单;成为在商业上可用时,其 肯定比SBC单元和每单元两比特MBC单元有更低的可靠性。大量的状态必 须由阈值电压区代表,这意味着状态之间的余量更小,即使更小的干扰和偏移 导致数絲取的麟。当对ECC的要求从1比特ECC增至4比特ECC时, 在对MSLC 和每单元两比特MBC的tb2艮中这种影响已经被证明。
现在回到带有内建NAND控制器114的主机处理器112A,假定控制器114 只支持1比特ECC。那么这个处理器也许不能够使用MBCNAND,即使由于 MBC NAND的低价格这是非常值得的。假如MBC NAND被连接到处理器内 建的控制器的NAND接口,这可能是唯一连接到处理器的方法,那么MBC NAND给内建控制器有限容量的ECC产生了太多的误差以至于不能修正。
类似地,假如内建控制器支持4比特ECC,其可以利用SLC和每单元两 比特MBCNAND。但是当在市场上出现着低可靠性的NAND设备时,处理 器不能从它们的低僚格中受益,因为内建控制器不能够提供所要求的M修正
因减们可以了解,每当使用包括设计成支持上一代NAND设备的内建 NAND控制器的主机处理器的时候,现有技术的状态不能够为从新NAND设备 的成本优势中受益的问题提供一个很好的解决方案。
对提供具有机械 NAND控制器的主机设备和连续几代NAND闪存设备之间的,性的设备和方法有一个持续的需求。

发明内容
可以通过本发明的几个方面来满足前述的需求。
现在第一次公开用于连接主机设备和制作在闪存管芯上的闪存殳备(例如, NAND闪存殳备)的控制器。当前公开的控制器包括(a)制作綠制器管芯 上的电子电路,控制器的管芯与闪存管芯不同,(b)用于在电子电路和闪存设备之间连接(例如,NAND闪存设备)第一接口 (例如^i几类型接口 ),和(c)
用于在控制器和i4几设备之间连接第二接口 (例如闪存类型接口 ),其中第4 n是NAND接cr。
才W-"些实施例,第一接口是管芯之间接口, 才娘一些实施例,第一接口是NAND接口,
##-些实施例,当前^Hf的控制器还包括(d )用于提供4-"^第4 口中的一个接收的数据的^I修正的"^修jE^型。
才 —些实施例,本发明公开的控制器还包括(d)至少一个附加的用于与
i^儿设备交互的i^^口 。
!^第一次^Hf—种数据,系统,包括(a)制^闪存管芯上的闪^i殳 备,以及(b)当前/^Hf的NAND控制器,其中控制器通ii^一接口可以有效 地与闪械备通信。
才 ~些实施例,当前^Hf的系皿包括(c)共同的封装,其中闪^i殳备 和控制器都^it个共同的封装中提供。
才娥一些实施例,当前^Hf的系舰包括(c)甜的各自的封装,其中每 个闪^i殳备和控制器都在各自的封装中提供。
才N^"些实施例,当1tP^的系舰包括(c)印刷电^,其上安装闪存 设备和控制器,其中闪存管芯直^*#印刷电^^Ji而不需JW装。
才M^些实施例,当前^Hf的系统可以还包括(c)印刷电5^L,其上安装 有闪存4殳备和控制器,其中控制器管芯直^"装在印刷电^上而不需,装。
现在笫一次ziHf—种数据存储系统,包括(a)主机设备,(b)制作在闪存 管芯上的闪^i更备,以及(c)当前7iHf的NAND控制器可以通it^一接口有 皿与闪存设备通信,^itit^^^口与i^几i殳^"i^f言。
HU^^f—种^^f几i殳;^写/vlt据的方法,包括以下步骤 (a)提辦,j作在闪存管芯上的闪存设备和制作在控制器管芯上的控制器, 闪存管芯不同控制器管芯,(b )才娥NAND接口协"imi^几设备向控制器发布 写命令,以及(c)才娥NAND接口协im^制器向闪存设备发布写命令。
才W""些实施例,当前乂^f的方法还包括(d)通过控制器进^H"偶比4ti十 算的步骤。
5il^^—种向主机设备渎出数据的方法,包括以下步骤
(a)提辦'J作在闪存管芯上的闪^i殳备和制作綠制器管芯上的控制器, 闪存管芯不同于控制器管芯,(b )才娘NAND接口协im^i几设备向控制器发 布读命令,并且(c)條NAND接口协i5UM^制器向闪^^备发送读命令。
才W""些实施例,当前乂^的方法还包括以下步骤(d)扭教据从闪存设备 中取回到控制器,(e) M所取回的数据相关的奇偶比特从闪存设备中取回到 控制器,(f)才 所取回的奇偶比特修正所取回的数据,从而生成修正过的数 据,以及(g)^f务正过的数据^制器中取回到^i^L设备。
现在第一次^^一种创^t据务賭系统的方法,其包括以下步骤(a)提供 制作在闪存管芯上的闪^^殳备,(b)提供当前/^的NAND控制器,以及(c) 在闪存设备中配置闪存控制别吏得闪存控制器通it^一接口肯沐舰与闪存设 备进械信。
才Nt—些实施例,当前乂/Hf的方法还包括以下步骤(d)在单^J"装中封装 闪存控制器和闪存i殳备。
才娘一些实施例,闪^^备和闪存控制難于#的各自的封装中,并且 这种配置包括tob^接各自的封^
才W^"些实施例,当前^Hf的方法还包括以下步骤(d)安装闪存设备和控 制器到印刷电路^,其中安装包括直掩阵闪^i殳备管芯安装到印刷电5^Ji 而不经iW装。
才W—些实施例,当前公开的方法还包括以下步骤(d)安装闪^^殳备和控 制器到印刷电^上,其中安装包括直^P控制器管芯冲压到印刷电5^Ji而 不经ii^装。
才娥一些实施例,当前^Hf的方、^£包括以下步骤(d)将数据,系统配 置到^^设备上使得闪存控制器通it^^口食沐舰与i4几设备进^it信。 从下面的详细描述以及例子中,这些和其它的实施例将Jt知明显。


图1A-1B提供大量^#单元的阈值电压的分布的图7^兌明(贿技术)。 图2提供了包含i^几设备和NAND闪^i殳备的i^^t^的系统的冲匡图。 图3A提供了包含i^几设备、NAND控制器和NAND闪存设备的5^才i^ 的系统的框图。
图3B提供了包含具有^f咸USB接口和闪^i殳备端NAND接口的贿技 术的NAND控制器的框图。
图4提供了包含Ji^设备和NAND闪肩设备的JM^t^的系统的才匡图。
在闪^&备端的NAND接口的NAND控制器的框图。
图5B提供了才娘本发明示例性实施例的,包括ii/L设备、图5A的NAND 控制器以及NAND闪^i殳备的系统的框图。
图6A描述了图5B中描述的示例性系统的示例性管芯配置。
图6B描述了图5B中描述的示例性系统的示例性配置,其中NAND控制 器和NAND闪存设*于一个单独的多管芯封装中。
图6C描述了图5B中描述的示例性系统的示例性配置,其中NAND控制 器和NAND闪存设备处于分开的各自的封装中。
图7示出了描述其中i^ititr展NAND控制^4f数据写入NAND, i殳备的方法的流程图。
图8示出了描述其中J^UtitT展NAND控制^^数据从NAND ^i殳 备渎出的方法的流程图。
M实施方式
现在,本发明以特别的示例性实施例的方式进^^述。可以您眸的是本发 明不限于iifyiHf的示例性实施例。也可以衝眸的是,并不g—如^^T特别的一
条附加的权利要求中要求的控制器、包總制器的系统以;sj斤描述的,的方 法和所描述的数据的^H^^MF是对于实5t^发明必要的。描述设备的树 糾的元素和特征,以4议明完整。也可以理解的是贯穿整个z;Hh每当^^呈
或方法被示出或被描述时,可以任何次序或者同步的方式来^f亍方法的步骤, 除非^^上下文4tt楚^f^一个步骤,于M先^^^步骤。
本发明第一次^Hf了一种,的NAND控制器,^##于输出给^4诚 的接口是NAND接口。在一些实施例中,本发明〃^的控制器在闪^H殳备两端 #f NAND接口 ,其中控制器相对NAND设备扮演着主机的角色,而在i^ 设备端,其中控制器相对i^l^演NAND设备的角色。
为了4^Hf的目的,"NAND闪存设H议义为电子电路,包括多个NAND
如提供闪存类型接口的电路),其用于在闪存单元中存储数据。需要注意 "NAND闪存设备,不是必须有其自己专有的处所,其可以与其他"i殳务,例:ia^ 制^置在-^。在一些实例中,"NAND闪存设备,直^^装^印刷电i^Ji 而不经it〗^的封装。
此外,在一些实施例中,控制器包M差修正的能力,其可以充^^正 NAND设^f氐可靠性的许多错误。由于这些误差可以由控制器修正,控制器可 以向主j;u呈示完全没有误差的闪存设备,或者有极少数量的误差-少到足以由主 机的内置的NAND控制器的^I修正能力iM:理。
注意图5A,其提供了##本发明的一些实施例的控制器的示意性的框图。 控制器130包括用于连接到NAND闪^i殳备的闪^i殳备端NAND接口 142,。 jH^卜,需要注意闪^i殳备端NAND接口 142也^iiMI:型NAND接口 (即, 适合于在NAND接口i^A交互行为,并且向NAND闪存设备呈现一个^f几 设备)。
控制器130还包括用于连接到支持NAND接口协议的主机设备的ii^端的 NAND接口 144。这个i^L^的NAND接口也是闪存类型的NAND接口 (例 如,控制器130适用于为主机呈现一个NAND闪存^i殳备)。控制器可以选 棒f她包括一个或多个附加的^iM^口 146,用于利用非NAND接口连驗 制器到主机,例如USB或者MMC接口 。
如图5A所示,控制器还包括ECC微132,用于检测和纠Jtit过设备端 接口 142从NAND设备取回的数据中的所有或者一些"^。 ECC微132可 以包括硬件、软件、固件或者它们的组合。在NAND控制器130向^i^出无 M NAND设备的情况下,ECC微132可以纠正所有的"^J:。可选#^, ECC微132可以只修iEit过闪存设备端NAND接口 142从NAND设备取回 的数据中发现的一些"^!。
在一个例子中,NAND设备可以具有需要4比特ECC的可靠性,并且ECC 才狭142纠正了足够多的误差以^lt据的可靠性提高到"HS吏得絲的内建 NAND控制器中的1比特ECC才狭可以处理该数据的船ij。
需要注意NAND控制器130还可以选捧)4i^包括用于4^^,功能的一个 或多个模块134 (例如包括硬件、软件、固件或者它们的組合),如加密功肯诚
者地址映射,^te^f脉回的逻辑闪存^iil:ftyt到发^U闪^i殳备的物理闪 存舰。
注意图5B,其示出了图5A中描述的包^NPNAND控制器130 (例如从 i^L设转离出来的控制器)的示例性系统的示意'^匡图。通过设备端的NAND 接口 142,夕MP NAND控制器130与NAND闪^i史备120A连接。通iiiiM^ NAND接口 144, NAND控制器130与主4^殳备U0A连接。
需要注意的是,夕hW制器130接口通过两个NAND接口 142和144的连 接是不同的。NAND接口协i议不对称的——存^^,其狄交互(根 据之前定义术语的"i^U类"),和响应方,其只响应发^^言号(才娥之前定:M^ 语的"闪存类")。
利用设备端的NAND接口 142,夕MP NAND控制器130担当NAND接口 协议的^iMI部分,并且NAND设备130担当NAND接口协议的闪存类部分。 利用J^a^口 144,夕Ml^制器130担当NAND接口协议的闪存类的部分, 并JLJjf几110A担当NAND接口协议中的i^Ml部分。
注意图6A,其示出了图5A中描述的示例性系统的管芯的示例性配置。这 样,需要注意的是,NAND控制器130包辦'j作綠制器管芯131上的电子电 路135,而NAND闪^ H殳备120A包辦'J作在闪存管芯133上的电子电路137, 控制器管芯131和闪存管芯133是截然不同的管芯。
需要注意的是,如图5A中描述的在NAND控制器130中的元件(即ECC 才狭132、闪存类NAND接口 144、 i^Ml NAND接口 )至少-"^分是由位于 控制器管芯上的控制器电子电路135实现的。
位于控制器电子电路135和闪存电路137之间的接口 142是"管芯内,,接口 。 如^H^h用到的,"管芯间接口,,(例如管芯间NAND接口 )能够有皿与两个 处于不同管芯上的电子电路的不同的单元t间连接(如,为电子电路的不同的 单; L^供必要的物理以及逻辑构造以例如利用 一个或多^Nt殊的协i^i行X^目 通信)。这样,管芯间接口包括必要的物^L件(衰减器,输出输入驱动器等等), 用于在处于分开的管芯上的电子电路的两个不同单&间连接。
才娥一些实施例,管芯间接口可以在制作在两个不同的以共同封装包封装 中的管芯上的电子电路间连接。这^^子在图6B中说明,其中NAND控制器 130和NAND闪存设备120A ^M立于共同的多管芯封装包139中。可逸地,管芯间接口可以在制作在以不同的封装包封装的两个不同的管芯 的电子电路t间连接(例如,每个管芯,装在其自己的封装包中)。这个例子
在图6C说明,其中NAND控制器130和NAND闪4^殳备120A位于甜的各 自的封装包中。特别地,NAND控制器130处于控制器封装包141中,而NAND 闪存设备120A处于闪^J"装包143中。这样,如图6C中所说明的,接口 142 是"封装包间接口,,。
需要注意的是,处于共同封装包中的管芯(例如,如图6A中所示)以M 于分开的封装包中的管芯(例如,如图6B中所示)并非唯一可能的配置。
这样,可选地,在一些实例中,管芯间接口可以在制作在两个不同管芯上 的电子电t间连接,其中一个或者两个樹M^殳有封装。例如,在许多应用 中,由于需M存空间,主^Lh提供了 (如安装,例如直M装)完全^^封 装的絲管芯。这样在一核'j子中,需要注意是,在新一代电话的^^上, ^^管芯经常完全^封^^就安f^J^Lh。如jH^所用的,"直^^装"到印 刷电5^1上的管芯是事先^封装就安装到印刷电5^Lh的。
图7示出了描iiJ^几110A (例如在设备中包括NAND控制器U4的主机) 通it^Nj5 NAND控制器130向NAND ^i殳备120A写翁:据(例如 一页数據) 的方法的^^呈图。如图7所示,i^几110A发布写命令410粉W^制器130(例 如利用NAND接口协i^布的写命令,包^^令字节、iikiiL字节和数据字节)。 ^i几110A不必#^发布命令给控制器130的事实,并可以^i^JL与它有能 力处理的标准NAND闪^j^^i殳备的类型连接。
NAND控制器130 ^!^'ji^U^布的写命4k例力魂it^f诚NAND接口 144)。在接^t^了写命令^,控制器计算与数据字节相对应的ECC奇偶比特 420 (例如利用ECC模块132),并JL^布写命令430给NAND设备(例如, 通过闪械4-HK條口 142)。 #~"次,條NAND接口协狄布命令,包括含 有主才/Llt据字节辆目应的ECC奇偶比特的命令字节、地Jt止字节和数据字节。 NAND闪存设备不必^^其间接通过NAND控制器130而不^l接^Mvi^L设备 UOA中接收命令。在步骤440, NAND闪^i殳备120A^^接^)J的数据字节 的非易失'lt^^单元,这样实现了i^几UOA的请求。
图8示出描述其中i^L 110A (例如在设备中包括NAND控制器114的主 机)通必h^ NAND控制器130从NAND ^i殳备120A中^lt据(例如数据
页)的方法的^f呈图。这样^i几110A发布读命令410到夕W^制器130 (例如 利用NAND接口协^C^布的读命令,包^^令字节和地址字节)。如同上面的 写命4^-样,i^llOA不必參它发布命令^t^制器130的事实,并可以 ^i^/U正与它有能力处理的标准NAND设备类型连接。
夕MP NAND控制器130接Jli^fA^布的读命4K例:ft魂iti^诚的NAND 接口 144)。在接收了读命令^,夕Wt制器130发布读命令520 (例如,通 过设备端NAND接口 142)给NAND设备120A。还是才MtNAND接口协i议 布命令,包^4"令字节和iikJt止字节。在步骤530, NAND闪^i更备120A从非易 失性单;^f列中取回所请求的数据,其中当4^数据时,i^l^据伴絲计算 出来的ECC奇偶比特。在步骤540,将数据字节以及伴随的奇偶比特发it^卜 部NAND控制器。该发送才NtNAND接口1^说过一系列由控制器生成的一 系列该^it^t完成,每^l^读入控制器一个字节或者一个字(依^f^)的 NAND接口是8比特tiJL还是16比特^yl)。在步骤550,夕卜部NAND控制器 130利用奇偶比特纠iL^据字节中的误差(例^it过ECC模块132)。在步骤 560,所修正的数据字节通it^L端的NAND接口 144 ^J^i^^i^L。发舰 是才娥NAND接口协iiUa过一系列由i^生成的读i^i^t完成。i^几UOA #具有了原;^闪存中M的相同的数据字节。
贿可以看到,当利用ll^设计为支持上一代NAND设备的内建NAND 控制器的i^^t理器时,本发明允许从新的NAND设备的jM^优势中受益。
扭申请的说明书和^U'J要求中,每个^T^]"包食,"包括"和'具有"以及其
结合^^ia明动词的对^iUr对象们并不必A^员、组件、元件或动词的主
题或者iJH们的部分的完對i表。
现。本发明中的一些实施例只利用一些特M特征的可能的组合。已经描述了 本发明的实施例的变化,辆域技^A员可以想到,包括在描述的实施例中提 及特征的不同组合的本发明的实施例。
权利要求
1、一种用于在主机设备和制作在闪存管芯上的闪存设备之间连接的控制器,该控制器包括a)制作在控制器管芯上的电子电路,所述控制器的管芯与闪存管芯不同;b)用于在所述电子电路和所述闪存设备之间连接的第一接口;和c)用于在控制器和主机设备之间连接的第二接口,其中所述的第二接口是NAND接口。
2、 ^4又矛j^求l所迷的控制器,其中所述的第一接口是NAND接口。
3、 H又矛溪求1所述的控制器,还^:(d)^t修JE^型,用于提供^^斤錄一接口和第二接口中的一个处接收 的lt据的^J/fi务正。
4、 ^K矛J^求1所述的控制器,还包括d) 至少一个附加的主4;u^接口,用于与主i/L设M口连接。
5、 一种数据*系统,包括a) 制作在闪存管芯上的闪存设备;和b) 如权利要求1所述的控制器,所述控制器可以通it^斤i^一接口有皿 与所述闪存设备通信。
6、 如W'漆求5所迷的系统,还包括c) 共同的封装,其中所述的闪存设备和所述的控制器都在所述共同的封装 中提供。
7、 如 '^"求5所述的系统,还包括 c)^f的各自的封装,其中所述闪^i殳备的每传所述控制器都在各自所述的封装中提供。
8、 如权矛J^求5所述的系统,还包拾c)印刷电5^,其上安^^斤述的闪存i殳备和控制器,其中所迷闪存管芯直 ^"^t所述印刷电5^1Ji。
9、 如似']^求5所述的系统,还包括c)印刷电路&,其上安^^斤述闪存设备和控制器,其中所述的控制器管芯 直^^^所述印刷电^Ji。
10、 一种数据絲系统,包括a) 錄设备;b) 制作在闪存管芯上的闪^H殳备;以及c )权利要求1中所述的控制器通i^斤錄一接口有M与所述的闪存设备 通信,以及与所i^i^几设备通信。
11、 一种创建数据务賭系统的方法,该包括a) 提鹏'J作在闪存管芯上的闪存设备;b) 提粉喊利要求1所述的控制器;c )对所述闪存设辆己置所述的闪存控制l^f吏得所迷的闪存控制器通it^斤迷 第一接口育沐M与所述的闪^i殳备通信。
12、 力wM,j要求u所述的方法,还包拾d)在单^Nt^E封^^斤述闪存控制器和所述闪^i殳备。
13、 如4又利要求11所述的方法,其中所述的闪^i殳备和所述的闪存控制器 位于分开的各自的封装中,并JI^斤iii己置包^^接各自的封^^船匕。
14、 如权利要求ll所述的方法,还包括d)安^^斤述闪存设备和所述控制器到印刷电*上,其中所迷的安装包括 直痴阵闪^i殳备f芯安^^所述印刷电5^L。
15、 如权利^"求11所述的方法,还包括d)安^^斤述闪^i殳备和所述控制器到印刷电iWJi,其中所迷的安装包括 直4W所述控制器管芯安^i'J所述印刷电i^h。
16、 如;M,JJ^求U所述的方法,还包括d將数据^系统配置到i^设备上使得所述闪存控制器通ii^斤錄^" o肯沐舰与所ii^L设备通信。
17、 一种>^|^殳备中写数塘的方法,该方法包括a) 提#^作在闪存管芯上的闪存设备和制作#制器管芯上的控制器,所 述闪存管芯不同于所述控制器管芯;b) 才娥NAND接口协imi4几设备向控制器发布写命令;以及c) 才N^NAND接口协i!UMt制器向闪存设备发布写命令。
18、 如^5U'J要求17所述的方法,还包括d) 由控制器进^f传偶比^i十算。
19、 一^读|^据到^^^殳备的方法,该方法包括a) 提微,J作在闪存管芯上的闪存设备^RJ^制器管芯上的控制器,所 述闪存管芯不同于所述控制器管芯;b) 才娥NAND接口协议,^bL设备向控制器发布读命令;以及c) 才N^NAND接口i^i义,錄制器向闪^i殳^^发布读4^令。
20、 ^^权利要求19所述的方法,还包括d) >^斤述闪萄设备中^:据取回到所述控制器;e) 把A^斤述闪存设备中取回的数据相关的奇偶比特取回到所述控制器;f) 才娥所ii/斤取回的奇偶比特修正所ii;斤取回的数塘,从而生威J务正过的 数据;以及g) ^J斤述控制器中:fe^斤述修正过的数据取回到所i^^i殳备。
全文摘要
公开了一种制作在控制器管芯上的用于在主机设备和闪存设备(例如,NAND闪存设备)之间连接的NAND控制器(130)。在一些实施例中,当前公开的NAND控制器包括制作在控制器管芯上的电子电路,控制器管芯与闪存管芯是不同的,第一接口(例如主机类型接口,如NAND接口)(144,142)用于在电子电路和闪存设备之间连接,和第二接口(例如闪存类型接口)用于在控制器和主机设备之间连接,其中第二接口是NAND接口。根据一些实施例,第一接口是管芯间接口。根据一些实施例,第一接口是NAND接口。包括当前公开的NAND控制器的系统也被公开。组合上述系统和用于利用NAND控制器读写数据的方法也被公开。
文档编号G06F11/00GK101366182SQ200680035631
公开日2009年2月11日 申请日期2006年9月20日 优先权日2005年9月26日
发明者M·拉瑟 申请人:晟碟以色列有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1