控制非易失性存儲器件的控制器以及控制器的操作方法
【專利摘要】一種控制器的操作方法包括:選擇碼字的要打孔的位;根據(jù)要打孔的位的位置和生成矩陣計(jì)算單元的結(jié)構(gòu),檢測輸入字的無用位的位置;重新凍結(jié)輸入字以便使凍結(jié)位和輸入字的無用位重疊;通過根據(jù)重新凍結(jié)結(jié)果用凍結(jié)位取代信息字位來生成輸入字位;通過對輸入字位進(jìn)行生成矩陣計(jì)算來生成碼字;通過根據(jù)要打孔的位的位置對碼字打孔來生成輸出位;以及將輸出位發(fā)送給非易失性存儲器件。
【專利說明】控制非易失性存儲器件的控制器以及控制器的操作方法
[0001]相關(guān)申請的交叉引用
[0002]本申請要求2012年10月17日向韓國知識產(chǎn)權(quán)局提交的韓國專利申請第10-2012-0115557號的優(yōu)先權(quán),通過引用并入其全部內(nèi)容。
【技術(shù)領(lǐng)域】
[0003]本文所述的發(fā)明構(gòu)思的示范性實(shí)施例涉及半導(dǎo)體器件,例如,控制非易失性存儲器件的控制器以及控制器的操作方法。
【背景技術(shù)】
[0004]半導(dǎo)體存儲器件是使用像硅(Si )、鍺(Ge)、砷化鎵(GaAs)、磷化銦(InP)等那樣的半導(dǎo)體制造的存儲器件。半導(dǎo)體存儲器件被分類成易失性存儲器件和非易失性存儲器件。
[0005]易失性存儲器件在斷電時(shí)可能丟失存儲的內(nèi)容。易失性存儲器件包括靜態(tài)RAM(SRAM)、動態(tài)RAM (DRAM)、同步DRAM (SDRAM)等。非易失性存儲器件即使在斷電時(shí)也可以保留存儲的內(nèi)容。非易失性存儲器件包括只讀存儲器(ROM)、可編程ROM (PR0M)、電可編程ROM (EPROM)、電可擦除可編程ROM (EEPR0M)、閃速存儲器件、相變RAM (PRAM)、磁性RAM(MRAM)、電阻性 RAM (RRAM)、鐵電 RAM (FRAM)等。
[0006]在數(shù)據(jù)寫入和讀取操作中可能產(chǎn)生錯(cuò)誤。可以將多種糾錯(cuò)碼應(yīng)用于存儲器控制器來檢測和糾正錯(cuò)誤。糾錯(cuò)碼可以包括RS (里德-索羅門)碼、BCH (博斯-喬赫里-霍克文黑姆)碼、和LDPC (低密度奇偶校驗(yàn))碼等等。
[0007]近年來,已經(jīng)作出了使用通道計(jì)算和分割對極化碼的研究。
【發(fā)明內(nèi)容】
[0008]本發(fā)明構(gòu)思的至少一個(gè)示范性實(shí)施例旨在提供一種配置成控制非易失性存儲器件的控制器的操作方法。該操作方法包括:選擇極性編碼的碼字的要打孔的位;根據(jù)要打孔的位的位置和與極性碼編碼相關(guān)聯(lián)的生成矩陣的結(jié)構(gòu),檢測極性碼編碼的輸入字的由于打孔損失的無用位的位置;重新凍結(jié)輸入字以便使凍結(jié)位和輸入字的無用位重疊;通過根據(jù)重新凍結(jié)結(jié)果用凍結(jié)位取代信息字位來生成輸入字位;通過對輸入字位進(jìn)行生成矩陣計(jì)算來生成碼字位;通過根據(jù)要打孔位的位置將碼字位打孔來生成輸出位;以及將輸出位發(fā)送給該非易失性存儲器件。
[0009]本發(fā)明構(gòu)思的至少一個(gè)其他示范性實(shí)施例旨在提供一種操作用于非易失性存儲器件的控制器的方法,該方法包括:選擇極性編碼的碼字的要打孔的位;根據(jù)極性編碼的碼字的被選位確定與輸入字的位相關(guān)聯(lián)的出錯(cuò)概率;根據(jù)所確定的出錯(cuò)概率識別要用靜態(tài)位值取代的輸入字的位;通過用靜態(tài)位值取代識別出的輸入字的位來生成修改的輸入字;根據(jù)修改的輸入字生成極性編碼的碼字;將極性編碼的碼字打孔以生成輸出碼字;以及將輸出碼字發(fā)送給該非易失性存儲器件。
[0010]在至少一些示范性實(shí)施例中,選擇了要打孔的位時(shí)凍結(jié)位的位置不同于未選擇要打孔的位時(shí)凍結(jié)位的位置。
[0011]在至少一些示范性實(shí)施例中,當(dāng)要打孔的位的位置發(fā)生變化時(shí),無用位的位置也發(fā)生變化。
[0012]在至少一些示范性實(shí)施例中,選擇要打孔的位包括:在改變要打孔的位的位置的同時(shí)計(jì)算生成矩陣計(jì)算單元的極化指數(shù);以及選擇具有較高極化指數(shù)的極性編碼的碼字的位的位置。
[0013]在至少一些示范性實(shí)施例中,選擇要打孔的位包括:將生成矩陣劃分成多個(gè)部分;在改變要打孔的至少一個(gè)位的位置的同時(shí)計(jì)算生成矩陣的至少一個(gè)部分的極化指數(shù);以及在生成矩陣的至少一個(gè)部分上選擇具有較高極化指數(shù)的要打孔的至少一個(gè)位的位置。
[0014]在至少一些示范性實(shí)施例中,沿著從輸入到輸出的方向?qū)⑸删仃噭澐殖芍辽賰蓚€(gè)級,將至少兩個(gè)級的每一個(gè)劃分成多個(gè)方矩陣,以及生成矩陣的至少一個(gè)部分對應(yīng)于與輸出相鄰的級的至少一個(gè)方矩陣。
[0015]在至少一些示范性實(shí)施例中,選擇與要打孔的至少一個(gè)位的位置相對應(yīng)的生成矩陣的剩余部分的位置作為要打孔的位的位置。
[0016]在至少一些示范性實(shí)施例中,使要打孔的位周期性地分布在碼字位上,以及使無用位在輸入字位上按塊集中。
[0017]在至少一些示范性實(shí)施例中,重新凍結(jié)輸入字包括:將無用位選作凍結(jié)位;以及如果在選擇了無用位之后存在剩余凍結(jié)位,則計(jì)算碼字位的密度演化,并按照計(jì)算出的密度演化選擇具有較高可靠性的剩余凍結(jié)位的位置。
[0018]本發(fā)明構(gòu)思的至少一個(gè)其他實(shí)施例旨在提供一種控制器,其包括:打孔位寄存器,配置成存儲與極性編碼的碼字的要打孔的位相關(guān)聯(lián)的信息;位置提供單元,配置成根據(jù)存儲在該打孔位寄存器中的與要打孔的位相關(guān)聯(lián)的信息提供要打孔的位和凍結(jié)位的位置;凍結(jié)位插入單元,配置成接收信息字位,以及通過根據(jù)來自該位置提供單元的凍結(jié)位的位置將凍結(jié)位插入信息字位中來生成輸入字位;生成矩陣計(jì)算單元,配置成通過利用輸入字位計(jì)算生成矩陣來生成碼字位;以及打孔單元,配置成通過根據(jù)從該位置提供單元提供的要打孔的位的位置將碼字位打孔來生成輸出位。
[0019]本發(fā)明構(gòu)思的至少一個(gè)其他示范性實(shí)施例旨在提供一種控制器,其包括:打孔位寄存器,配置成存儲有關(guān)極性編碼的碼字的要打孔的位的信息;位置提供電路,配置成根據(jù)與輸入字的位相關(guān)聯(lián)的出錯(cuò)概率識別要用靜態(tài)位值取代的輸入字的位,該出錯(cuò)概率基于存儲的信息;凍結(jié)位插入電路,配置成通過用靜態(tài)位值取代識別出的輸入字的位來生成修改的輸入字;生成矩陣計(jì)算電路,配置成根據(jù)修改的輸入字生成極性編碼的碼字;打孔電路,配置成對極性編碼的碼字打孔以生成輸出碼字;以及發(fā)送電路,配置成將輸出碼字發(fā)送給該非易失性存儲器件。
[0020]在至少一些示范性實(shí)施例中,可以將輸出位發(fā)送給該控制器控制的非易失性存儲器件。
[0021]在至少一些示范性實(shí)施例中,該位置提供單元可以進(jìn)一步配置成根據(jù)要打孔的位的信息和該生成矩陣和/或該生成矩陣計(jì)算單元的結(jié)構(gòu)來計(jì)算要打孔的位和凍結(jié)位的位置。
[0022]在至少一些示范性實(shí)施例中,該位置提供單元被進(jìn)一步配置成存儲位置表并且參考要打孔的位的信息和該位置表來檢測要打孔的位和凍結(jié)位的位置。
[0023]在至少一些示范性實(shí)施例中,該控制器可以進(jìn)一步包括:解碼單元,配置成從該控制器控制的非易失性存儲器接收數(shù)據(jù),并對接收的數(shù)據(jù)進(jìn)行連續(xù)消除解碼、消息傳遞解碼或列表解碼。
[0024]在至少一些示范性實(shí)施例中,該控制器形成存儲卡或帶有非易失性存儲器的固態(tài)驅(qū)動器。
【專利附圖】
【附圖說明】
[0025]上面和其他目的和特征將從如下參考附圖的描述中明顯看出,其中相同標(biāo)號在各附圖中自始至終表示相同部分,除非另有規(guī)定,以及在附圖中:
[0026]圖1是示意性例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的存儲系統(tǒng)的方塊圖;
[0027]圖2是示意性例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的非易失性存儲器件的方塊圖;
[0028]圖3是示意性例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的存儲單元陣列的電路圖;
[0029]圖4是示意性例示按照本發(fā)明構(gòu)思的另一個(gè)示范性實(shí)施例的存儲單元陣列的電路圖;
[0030]圖5是示意性例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的控制器的方塊圖;
[0031]圖6是示意性例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的極性碼編碼器/解碼器的方塊圖;
[0032]圖7是示意性例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的極性碼編碼單元的方塊圖;
[0033]圖8A和SB示出了生成矩陣計(jì)算單元的例子;
[0034]圖9還示出了生成矩陣計(jì)算單元的另一個(gè)例子;
[0035]圖10示出了將打孔應(yīng)用于圖9的生成矩陣計(jì)算單元的例子;
[0036]圖11是示意性例示按照本發(fā)明構(gòu)思的另一個(gè)示范性實(shí)施例的極性碼編碼單元的方塊圖;
[0037]圖12是示意性例示極性碼編碼單元的操作的流程圖;
[0038]圖13示出了圖10的生成矩陣計(jì)算單元的重新凍結(jié)結(jié)果;
[0039]圖14是示意性例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的圖12的打孔位選擇操作的流程圖;
[0040]圖15是示意性例示按照本發(fā)明構(gòu)思的另一個(gè)示范性實(shí)施例的圖12的打孔位選擇操作的流程圖;
[0041]圖16示出了生成矩陣計(jì)算單元的劃分的例子;
[0042]圖17示出了打孔位的選擇的第一例子;
[0043]圖18示出了打孔位的選擇的第二例子;
[0044]圖19是示意性例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的重新凍結(jié)執(zhí)行方法的流程圖;
[0045]圖20是示意性例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的極性碼編碼單元的方塊圖;
[0046]圖21是示意性例示圖20中的極性碼編碼單元的操作的流程圖;
[0047]圖22是例示圖1中的存儲系統(tǒng)的應(yīng)用的方塊圖;
[0048]圖23是例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的存儲卡的示圖;
[0049]圖24是例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的固態(tài)驅(qū)動器的示圖;以及
[0050]圖25是示意性例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的計(jì)算系統(tǒng)的方塊圖。
【具體實(shí)施方式】
[0051]下面將參考附圖詳細(xì)描述示范性實(shí)施例。但是,本發(fā)明構(gòu)思可以以各種不同形式實(shí)施,不應(yīng)該理解為只局限于所例示的實(shí)施例。而是,提供這些實(shí)施例作為例子,以便使本公開是透徹的和完整的,充分地向本領(lǐng)域的普通技術(shù)人員傳達(dá)本發(fā)明構(gòu)思的思想。于是,對于本發(fā)明構(gòu)思的一些實(shí)施例未描述已知的過程、元件、和技術(shù)。除非另有說明,相同的標(biāo)號在附圖和書面描述中自始至終表示相同的元件,因此不重復(fù)描述。在附圖中,為了清楚起見,可能夸大了層和區(qū)域的大小和相對大小。
[0052]應(yīng)當(dāng)明白的是,盡管術(shù)語“第一”、“第二”、“第三”等在本文中可能用于描述各種元件、部件、區(qū)域、層和/或分區(qū),但這些元件、部件、區(qū)域、層和/或分區(qū)不應(yīng)該受這些術(shù)語限制。這些術(shù)語只用于將一個(gè)元件、部件、區(qū)域、層或分區(qū)與另一個(gè)元件、部件、區(qū)域、層或分區(qū)區(qū)分開。因此,下面討論的第一元件、部件、區(qū)域、層或分區(qū)可以不偏離本發(fā)明構(gòu)思的教導(dǎo)地命名為第二元件、部件、區(qū)域、層或分區(qū)。
[0053]為了易于描述起見,本文可能使用像“在...下方”、“在...下面”、“低于”、“在...下”、“在...上”、“在...上面”等那樣的空間相對術(shù)語來描述如圖所例示一個(gè)元件或特征與另一個(gè)元件或特征的關(guān)系。但應(yīng)當(dāng)明白,除了描繪在圖中的取向之外,該空間相對術(shù)語有意包含正在使用或操作的設(shè)備的不同取向。例如,如果將圖中的設(shè)備翻過來,則描述成“在”其他元件或特征“下面”,“下方”或“下”的元件或特征的取向變成“在”其他元件或特征“上”。因此,示范性術(shù)語“在...下面”或“在...下”可以包含在...上和在...下的取向。設(shè)備可以另有取向(旋轉(zhuǎn)90°或在其他取向上),并相應(yīng)地解釋本文使用的空間相對描述符。另外,還應(yīng)當(dāng)明白,當(dāng)一個(gè)層被稱為“在”兩個(gè)層“之間”時(shí),它可以是兩個(gè)層之間的唯一一個(gè)層,也可能存在一個(gè)或多個(gè)中間層。
[0054]本文使用的術(shù)語只是為了描述特定實(shí)施例的目的,而無意限制本發(fā)明構(gòu)思。如本文所使用,單數(shù)形式“一個(gè)”、“一種”、“該”也有意包括復(fù)數(shù)形式,除非上下文另有明確指示。應(yīng)該進(jìn)一步明白,術(shù)語“包含”當(dāng)用在本說明書中時(shí),規(guī)定存在所述的特征、整數(shù)、步驟、操作、元件、和/或部件,但不排除存在或附加一個(gè)或多個(gè)其他特征、整數(shù)、步驟、操作、元件、部件、和/或它們的群體。如本文所使用,術(shù)語“和/或”包括兩個(gè)或更多個(gè)所列相關(guān)項(xiàng)目的任何和所有組合。此外,術(shù)語“示范性”有意指例子或例示。
[0055]應(yīng)該明白,當(dāng)一個(gè)元件或?qū)颖环Q為“在”另一個(gè)元件或?qū)印吧稀保芭c”另一個(gè)元件或?qū)印斑B接”,“與”另一個(gè)元件或?qū)印榜詈稀?,或“與”另一個(gè)元件或?qū)印跋噜彙睍r(shí),它可以直接在其他元件或?qū)由?,直接與其他元件或?qū)舆B接,直接與其他元件或?qū)玉詈希蛑苯优c其他元件或?qū)酉噜?,也可能存在中間元件或?qū)?。相比之下,?dāng)一個(gè)元件或?qū)颖环Q為“直接在”另一個(gè)元件或?qū)印吧稀保爸苯优c”另一個(gè)元件或?qū)印斑B接”,“直接與”另一個(gè)元件或?qū)印榜詈稀?,或“直接與”另一個(gè)元件或?qū)印跋噜彙睍r(shí),就不存在中間元件或?qū)印?br>
[0056]除非另有定義,本文使用的所有術(shù)語(包括科學(xué)和技術(shù)術(shù)語)具有與本發(fā)明構(gòu)思所屬的【技術(shù)領(lǐng)域】的普通技術(shù)人員通常所理解相同的含義。還應(yīng)當(dāng)明白,像定義在常用詞典中的那些那樣的術(shù)語應(yīng)當(dāng)解釋為具有與它們在相關(guān)【技術(shù)領(lǐng)域】和/或本說明書的背景下的含義一致的含義,而不應(yīng)當(dāng)從理想化的或過于正式的意義上來解釋,除非本文明確地如此定義。
[0057]圖1是示意性例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的存儲系統(tǒng)的方塊圖。參照圖1,存儲系統(tǒng)1000可以包括非易失性存儲器件1100和控制器1200。
[0058]非易失性存儲器件1100可以配置成按照控制器1200的控制進(jìn)行寫入、讀取、和擦除操作。
[0059]控制器1200可以與主機(jī)和非易失性存儲器件1100連接??刂破?200可以響應(yīng)于來自主機(jī)的請求而訪問非易失性存儲器件1100。例如,控制器1200可以配置成控制非易失性存儲器件1100的寫入、讀取、和擦除操作??刂破?200可以配置成提供非易失性存儲器件1100與主機(jī)的接口。控制器1200可以配置成驅(qū)動控制非易失性存儲器件1100的固件。
[0060]控制器1200可以接收來自主機(jī)的數(shù)據(jù)??刂破?200可以編碼輸入數(shù)據(jù)以生成編碼數(shù)據(jù)DATA_C??刂破?200可以配置成將控制信號CTRL和地址ADDR提供給非易失性存儲器件1100??刂破?200可以配置成與非易失性存儲器件1100交換編碼數(shù)據(jù)DATA_C??刂破?200可以接收來自非易失性存儲器件1100的編碼數(shù)據(jù)DATA_C以便將編碼數(shù)據(jù)DATA_C解碼??刂破?200可以將解碼數(shù)據(jù)傳送給主機(jī)。
[0061]圖2是示意性例示按照本發(fā)明構(gòu)思的一個(gè)示范性實(shí)施例的非易失性存儲器件的方塊圖。參照圖2,非易失性存儲器件1100可以包括存儲單元(memory cell)陣列1110、地址解碼器1120、讀/寫電路1130、和控制邏輯1140。
[0062]存儲單元陣列1110可以經(jīng)由字線WL與地址解碼器1120連接和經(jīng)由位線BL與讀寫電路130連接。存儲單元陣列1110可以包括多個(gè)存儲單元。沿著行方向排列的存儲單元可以與字線連接,沿著列方向排列的存儲單元可以與位線連接。例如,沿著列方向排列的存儲單元可以形成多個(gè)單元組(例如,串)。多個(gè)單元組可以分別與位線連接。在示范性實(shí)施例中,每個(gè)存儲單元可以存儲數(shù)據(jù)的一個(gè)或多個(gè)位。
[0063]地址解碼器1120可以通過字線WL與存儲單元陣列1110連接。地址解碼器1120可以響應(yīng)控制邏輯1140的控制地操作。地址解碼器1120可以接收來自外部設(shè)備的地址M)DR。
[0064]地址解碼器1120可以配置成解碼輸入地址ADDR的行地址。地址解碼器1120可以使用解碼的行地址來選擇字線WL。地址解碼器1120可以配置成解碼輸入地址ADDR的列地址??梢詫⒔獯a的列地址DCA傳送給讀/寫電路1130。例如,地址解碼器1120可以包括像行解碼器、列解碼器、地址緩沖器等那樣的部件。
[0065]讀/寫電路1130可以通過位線BL與存儲單元陣列1110連接,并且可以與外部設(shè)備交換編碼數(shù)據(jù)DATA_C。讀/寫電路1130可以響應(yīng)于控制邏輯1140的控制而操作。讀/寫電路1130可以響應(yīng)于解碼的列地址DCA來選擇位線BL。
[0066]讀/寫電路1130可以接收來自外部設(shè)備的編碼數(shù)據(jù)DATA_C以便將它寫在存儲單元陣列1110上。讀/寫電路1130可以從存儲單元陣列1110中讀取編碼數(shù)據(jù)DATA_C以便將它傳送給外部設(shè)備。讀/寫電路1130可以從存儲單元陣列1110的第一存儲區(qū)中讀取數(shù)據(jù),以便將它寫在存儲單元陣列1110的第二存儲區(qū)上。例如,讀/寫電路1130可以配置成進(jìn)行回拷(copy-back)操作。
[0067]在示范性實(shí)施例中,讀/寫電路1130可以包括像頁面緩沖器(或頁面寄存器)、列選擇電路、數(shù)據(jù)緩沖器等那樣的組成元件。在其他示范性實(shí)施例中,讀/寫電路1130可以包括像讀出放大器(sense amplifier)、寫入驅(qū)動器、列選擇電路、數(shù)據(jù)緩沖器等那樣的組成元件。
[0068]控制邏輯1140可以與地址解碼器1120和讀/寫電路1130連接??刂七壿?140可以配置成控制非易失性存儲器件1100的整體操作。
[0069]圖3是示意性例示按照本發(fā)明構(gòu)思的示范性實(shí)施例的存儲單元陣列的電路圖。參照圖3,沿著行方向配備的存儲單元MCl到MCm可以與字線WLl到WLm連接。同一行中的存儲單元可以與同一字線WL連接。
[0070]沿著列方向配備的存儲單元MCl到MCm可以分別對應(yīng)于位線BLl到BLn。同一列中的存儲單元MCl到MCm可以對應(yīng)于同一位線BL。
[0071]串選擇晶體管SST可以連接在位線BLl到BLn與存儲單元MCl到MCm之間。串選擇晶體管SST可以與串選擇線SSL連接。地選擇晶體管GST可以連接在存儲單元MCl到MCm與公用源極線CSL之間。地選擇晶體管GST可以與地選擇線GSL連接。
[0072]存儲單元陣列11 IOa可以是平面NAND閃速存儲器陣列。
[0073]圖4是示意性例示按照本發(fā)明構(gòu)思的另一個(gè)示范性實(shí)施例的存儲單元陣列的電路圖。參照圖4,單元串CSlI,CS12,CS21,和CS22可以配備在位線BLl和BL2與公用源極線CSL之間。單元串CSlI和CS21可以連接在第一位線BLl與公用源極線CSL之間。單元串CS12和CS22可以連接在第二位線BL2與公用源極線CSL之間。
[0074]在相同高度上的存儲單元可以共同與字線(或偽字線)連接。因此,當(dāng)在特定字線上將電壓施加于字線(或偽字線)時(shí),該電壓可以被施加于所有單元串CSlI,CS12,CS21,和CS22。
[0075]不同行上的單元串可以分別與不同的串選擇線SSLl和SSL2連接??梢酝ㄟ^選擇或不選擇第一和第二串選擇線SSLl和SSL2,以行為單位來選擇或不選擇單元串CS11,CS12, CS21,和CS22。例如,與未選串選擇線SSLl或SSL2連接的單元串CSll和CS12或CS21和CS22可以與位線BLl和BL2電隔離。與被選串選擇線SSL2或SSLl連接的單元串CS21和CS22或CSll和CS12可以與位線BLl和BL2電連接。
[0076]單元串CS11,CS12,CS21,和CS22可以以列為單位與位線BLl和BL2連接。單元串CSll和CS21可以與第一位線BLl連接,單元串CS12和CS22可以與第二位線BLl連接。通過選擇或不選擇位線BLl和BL2,以列為單位來選擇或不選擇單元串CS 11,CS 12,CS21,和CS22。
[0077]存儲單元陣列11 IOb可以是垂直NAND閃速存儲器陣列。
[0078]如參考圖3和4所述,非易失性存儲器件1100可以包括NAND閃速存儲器件。但是,本發(fā)明構(gòu)思不局限于此。非易失性存儲器件1100可以包括需要糾錯(cuò)的多種非易失性存儲器件。例如,非易失性存儲器件1100可以包括相變RAM (PRAM)、磁性RAM (MRAM)、電阻性 RAM (RRAM)、和鐵電 RAM (FRAM)等等。
[0079]圖5是示意性例示按照本發(fā)明構(gòu)思的示范性實(shí)施例的控制器的方塊圖。參照圖5,控制器1200可以包括系統(tǒng)總線1210、處理器1220、RAM1230、主機(jī)接口 1240、存儲器接口1250、和極性碼編碼器/解碼器1260。
[0080]系統(tǒng)總線1210可以提供控制器1200的部件1220到1260之間的通道。
[0081]處理器1220可以控制控制器1200的整體操作。
[0082]RAM1230可以用作工作存儲器、高速緩沖存儲器、和緩沖存儲器中的至少一種。
[0083]主機(jī)接口 1240可以經(jīng)由像USB (通用串行總線)、MMC (多媒體卡)、PCI (外圍部件互連)、PC1-E (快速PCI)、ATA (高級技術(shù)附件)、串行ΑΤΑ、并行ATA、SCSI (小型計(jì)算機(jī)小接口)、ESDI (增強(qiáng)型小盤接口)、IDE (集成驅(qū)動電子設(shè)備)JPFirewire (火線)那樣的各種通信標(biāo)準(zhǔn)中的至少一種與外部設(shè)備(例如,主機(jī))通信。
[0084]存儲器接口 1250可以與非易失性存儲器件1100 (參照圖1)接口。存儲器接口1250可以包括NAND接口或NOR接口。
[0085]極性碼(polar code)編碼器/解碼器1260可以對從外部主機(jī)接收的數(shù)據(jù)進(jìn)行極性碼編碼以及對從非易失性存儲器件1100接收的數(shù)據(jù)進(jìn)行極性碼解碼。
[0086]圖6是示意性例示按照本發(fā)明構(gòu)思的示范性實(shí)施例的極性碼編碼器/解碼器的方塊圖。參照圖1和6,極性碼編碼器/解碼器1260可以包括極性碼編碼單元1261和連續(xù)消除單兀(successive canceling unit) 1267。
[0087]極性碼編碼單元1261可以接收k個(gè)信息字位(information word bit) I (k) (k是正整數(shù))。信息字位I (k)可以從主機(jī)接收。
[0088]極性碼編碼單元1261可以對信息字位I (k)進(jìn)行極性碼編碼以生成η個(gè)碼字位(code word bit)C(n) (η 是大于 k 的整數(shù))。
[0089]可以在非易失性存儲器件1100中編程碼字位C (η)。在非易失性存儲器件1100中編程的數(shù)據(jù)可以被讀取作為η個(gè)讀取位Y (η)。
[0090]連續(xù)消除單元1267可以對讀取位Y (η)進(jìn)行連續(xù)消除解碼以生成k個(gè)信息字位0(k)。
[0091]非易失性存儲器件100可以理解為在其中傳送極性碼編碼單元1261編碼的碼字位C (η)的通道。
[0092]在示范性實(shí)施例中,極性碼編碼器/解碼器1260可以包括連續(xù)消除單元1267。但是,本發(fā)明構(gòu)思不局限于此。可以用使用各種解碼算法(比如,消息傳遞解碼、列表解碼,等等)之一執(zhí)行解碼的功能塊來取代連續(xù)消除單元1267。
[0093]圖7是示意性例示按照本發(fā)明構(gòu)思的示范性實(shí)施例的極性碼編碼單元的方塊圖。參照圖7,極性碼編碼單元1261可以包括凍結(jié)位(frozen bit)插入單元1262和生成矩陣計(jì)算單元1263。
[0094]凍結(jié)位插入單元1262可以接收信息字位I (k)。凍結(jié)位插入單元1262可以將凍結(jié)位插入信息字位I(k)中。凍結(jié)位可以是被固定為像“I”或“O”那樣的邏輯值的靜態(tài)位。也就是說,凍結(jié)位可以是具有固定邏輯值(例如,“O”或“I”)的位。在一個(gè)例子中,凍結(jié)位插入單元1262可以將凍結(jié)位插入信息字位I (k)的頭部或尾部中,或插入信息字位I (k)的頭部或尾部之間的給定的、期望的或預(yù)定的位置中。插入凍結(jié)位的位置可以是被判定為使極性碼編碼器/解碼器1260的防錯(cuò)功能最佳的位置。凍結(jié)位插入單元1262可以通過將凍結(jié)位插入信息字位I (k)中生成輸入字位(input word bit)U(n)。
[0095]生成矩陣計(jì)算單元1263可以接收來自凍結(jié)位插入單元1262的輸入字位U (η)。生成矩陣計(jì)算單元1263可以通過根據(jù)給定的、期望的或預(yù)定的生成矩陣對輸入字位U(n)進(jìn)行生成矩陣計(jì)算來生成碼字位(code word bit)C(n)。
[0096]圖8A和SB示出了生成矩陣計(jì)算單元1263的例子。參照圖8A,所例示的是基于2X2生成矩陣的生成矩陣計(jì)算單元1263_1。第一碼字位C(I)可以是第一和第二輸入字位U(I)和U(2)之和。第二碼字位C(2)可以是第二輸入字位U(2)。
[0097]參照圖SB,所例示的是基于3X3生成矩陣的生成矩陣計(jì)算單元1263_2。第一碼字位C(I)可以是第一和第二輸入字位U(I)和U (2)之和。第二碼字位C (2)可以是第二和第三輸入字位U (2)和U (3)之和。第三碼字位C (3)可以是第三輸入字位U (3)。
[0098]生成矩陣可以如圖8A和SB所例示通過組合具有給定的、期望的或預(yù)定的大小的單位矩陣來生成。例如,生成矩陣可以根據(jù)單位矩陣的克羅內(nèi)克(Kronecker )乘積來生成。因此,生成矩陣計(jì)算單元1262支持的碼字位C(η)或輸入字位U(n)的長度可以受單位矩陣的組合的限制。
[0099]可以應(yīng)用打孔(puncturing)來支持具有某種長度的碼字位C(n)或輸入字位U (η)。該打孔可以是將碼字位C (η)的一些位打孔的方法??梢詫⒈淮蚩椎奈徊粋魉徒o通道,而可以將未被打孔的位傳送給通道。也就是說,如果使用打孔,則可以在保證糾錯(cuò)的可靠性的范圍內(nèi)調(diào)整碼字位C(n)或輸入字位U(n)的長度。
[0100]但是,由于固有特性,難以將打孔應(yīng)用于極性編碼。
[0101]圖9還示出了生成矩陣計(jì)算單元的另一個(gè)例子。參照圖9,所例示的是基于8X8生成矩陣的生成矩陣計(jì)算單元1263_3。8X8生成矩陣可以通過2X2單位矩陣的克羅內(nèi)克乘積來生成。生成矩陣計(jì)算單元1263_3可以接收第一到第八輸入字位U(I)到U(S)以便輸出第一到第八碼字位C(I)到C(8)。
[0102]在示范性實(shí)施例中,第三到第六輸入字位U(3)到U(6)可以是凍結(jié)位。由于第三到第六輸入字位U (3)到U (6)的位錯(cuò)率(bit error rate, BER)可能高于第一、第二、第七、和第八輸入字位U(l),U(2),U(7),和U(8)的位錯(cuò)率(BER),所以可以將第三到第六輸入字位U (3)到U (6)選作凍結(jié)位。
[0103]圖10示出了將打孔應(yīng)用于圖9的生成矩陣計(jì)算單元的例子。參照圖10,可以將第一、第三、第四、和第八碼字位C(l),C(3), C(4),和C(8)打孔。如果決定了打孔位PUNC的位置,貝1J可以決定無用位(incapable bit) INC的位置。無用位INC可以是由于打孔在傳輸之后具有相對較高出錯(cuò)概率的輸入字位。例如,無用位INC可以是由于打孔而未通過通道傳送的輸入字位。
[0104]在碼字C(n)或輸入字U(n)的長度是2~P的情況下,可以通過如下計(jì)算決定無用位 INC。
[0105]首先,可以定義指示碼字C(n)的每個(gè)位是打孔位PUNC的打孔變量Ι0(η)。當(dāng)?shù)趇碼字位C(i)是打孔位PUNC時(shí),打孔變量IO(η)可以是“O”。當(dāng)?shù)趇碼字位C(i)不是打孔位PUNC時(shí),打孔變量IO(η)可以是“I”。
[0106]可以定義指示輸入字位U (η)的位置的位置變量L(n)。與第i輸入字位U(i)相對應(yīng)的位置變量L(i)可以具有通過二進(jìn)制數(shù)字表達(dá)的值。位置變量L(i)的值可以通過二進(jìn)制位表達(dá)。位置變量L(i)的各個(gè)位可以通過從最高有效位(MSB)到最低有效位(LSB)的bO, bl, b2,..., bn 來定義。
[0107]可以根據(jù)位置變量L(i)和打孔變量Ι0(η)進(jìn)行如下方程I的計(jì)算。
[0108][方程I]
[0109]
【權(quán)利要求】
1.一種操作用于非易失性存儲器件的控制器的方法,該方法包含: 選擇極性編碼的碼字的要打孔的位; 根據(jù)要打孔的位的位置和與極性碼編碼相關(guān)聯(lián)的生成矩陣的結(jié)構(gòu),檢測由于打孔損失的輸入字的位的位置; 重新凍結(jié)輸入字以便使凍結(jié)位和輸入字的無用位重疊; 通過根據(jù)重新凍結(jié)的輸入字用凍結(jié)位取代輸入字的信息字位,來生成修改的輸入字; 根據(jù)修改的輸入字生成極性編碼的碼字; 將極性編碼的碼字打孔以生成輸出位;以及 將輸出位發(fā)送給該非易失性存儲器件。
2.如權(quán)利要求1所述的操作方法,其中當(dāng)選擇了要打孔的位時(shí)凍結(jié)位的位置不同于未選擇要打孔的位時(shí)凍結(jié)位的位置。
3.如權(quán)利要求1所述的操作方法,其中當(dāng)要打孔的位的位置發(fā)生變化時(shí),無用位的位置也發(fā)生變化。
4.如權(quán)利要求1所述的操作方法,其中選擇極性編碼的碼字的要打孔的位包含: 在改變要打孔的位的位置的同時(shí),計(jì)算生成矩陣的極化指數(shù);以及 選擇極性編碼的碼字的具有較高極化指數(shù)的位的位置。
5.如權(quán)利要求1所述的操作方法,其中選擇極性編碼的碼字的要打孔的位包含: 將生成矩陣劃分成多個(gè)部分; 在改變極性編碼的碼字的要打孔`的至少一個(gè)位的位置的同時(shí),計(jì)算生成矩陣的至少一個(gè)部分的極化指數(shù);以及 選擇具有較高極化指數(shù)的要打孔的至少一個(gè)位的位置。
6.如權(quán)利要求5所述的操作方法,其中沿著從輸入到輸出的方向?qū)⑸删仃噭澐殖芍辽賰蓚€(gè)級,將至少兩個(gè)級的每一個(gè)劃分成多個(gè)方矩陣,以及生成矩陣的至少一個(gè)部分對應(yīng)于與輸出相鄰的級的至少一個(gè)方矩陣。
7.如權(quán)利要求6所述的操作方法,其中選擇與要打孔的至少一個(gè)位的位置相對應(yīng)的生成矩陣的剩余部分的位置作為要打孔的位的位置。
8.如權(quán)利要求1所述的操作方法,其中使要打孔的位的位置周期性地分布,以及使無用位在輸入字位中按塊來集中。
9.如權(quán)利要求1所述的操作方法,其中重新凍結(jié)輸入字包含: 將無用位選作凍結(jié)位;以及 如果在選擇了無用位之后存在剩余凍結(jié)位,則計(jì)算碼字的密度演化,并且按照計(jì)算的密度演化來選擇具有較高可靠性的剩余凍結(jié)位的位置。
10.一種控制器,其包含: 打孔位寄存器,配置成存儲與極性編碼碼字的要打孔的位相關(guān)聯(lián)的信息; 位置提供單元,配置成根據(jù)所存儲的與要打孔的位相關(guān)聯(lián)的信息提供要打孔的位和凍結(jié)位的位置; 凍結(jié)位插入單元,配置成接收信息字位,并且通過根據(jù)來自該位置提供單元的凍結(jié)位的位置將凍結(jié)位插入信息字位中來生成輸入字位; 生成矩陣計(jì)算單元,配置成通過使用輸入字位計(jì)算生成矩陣來生成碼字位;以及打孔單元,配置成通過根據(jù)來自該位置提供單元的要打孔的位的位置將碼字位打孔來生成輸出位。
11.如權(quán)利要求10所述的控制器,其中將輸出位發(fā)送給該控制器控制的非易失性存儲器。
12.如權(quán)利要求10所述的控制器,其中該位置提供單元被進(jìn)一步配置成:根據(jù)所存儲的與要打孔的位相關(guān)聯(lián)的信息和該生成矩陣的結(jié)構(gòu),計(jì)算要打孔的位和凍結(jié)位的位置。
13.如權(quán)利要求10所述的控制器,其中該位置提供單元被進(jìn)一步配置成:存儲位置表,并且根據(jù)與要打孔的位相關(guān)聯(lián)的信息和該位置表檢測要打孔的位和凍結(jié)位的位置。
14.如權(quán)利要求10所述的控制器,進(jìn)一步包含: 解碼單元,配置成從該控制器控制的非易失性存儲器接收數(shù)據(jù),并對接收的數(shù)據(jù)進(jìn)行連續(xù)消除解碼、消息傳遞解碼或列表解碼。
15.如權(quán)利要求10所述的控制器,其中該控制器形成存儲卡或帶有非易失性存儲器的固態(tài)驅(qū)動器。
16.一種操作用于非易失性存儲器件的控制器的方法,該方法包含: 選擇極性編碼的碼字的要打孔的位; 根據(jù)極性編碼的碼字的被選位確定與輸入字的位相關(guān)聯(lián)的出錯(cuò)概率; 根據(jù)所確定的出錯(cuò)概率識別要用靜態(tài)位值取代的輸入字的位; 通過用靜態(tài)位值取代識別出的輸入字的位來生成修改的輸入字; 根據(jù)修改的輸入字生成極性編碼的碼字; 將極性編碼的碼字打孔以生成輸出碼字;以及 將輸出碼字發(fā)送給該非易失性存儲器件。
17.如權(quán)利要求16所述的方法,其中根據(jù)與極性碼編碼相關(guān)聯(lián)的生成矩陣的結(jié)構(gòu)檢測識別出的輸入字的位的位置。
18.如權(quán)利要求16所述的方法,其中根據(jù)要打孔的被選位確定識別出的輸入字的位的位置。
19.一種控制器,其包含: 打孔位寄存器,配置成存儲與極性編碼的碼字的要打孔的位相關(guān)聯(lián)的信息; 位置提供電路,配置成根據(jù)與輸入字的位相關(guān)聯(lián)的出錯(cuò)概率識別要用靜態(tài)位值取代的輸入字的位,該出錯(cuò)概率基于所存儲的信息; 凍結(jié)位插入電路,配置成通過用靜態(tài)位值取代識別出的輸入字的位來生成修改的輸入字; 生成矩陣計(jì)算電路,配置成根據(jù)修改的輸入字生成極性編碼的碼字; 打孔電路,配置成將極性編碼的碼字打孔以生成輸出碼字;以及 發(fā)送電路,配置成將輸出碼字發(fā)送給該非易失性存儲器件。
20.如權(quán)利要求19所述的控制器,其中該位置提供電路被配置成根據(jù)生成矩陣計(jì)算電路的結(jié)構(gòu)確定識別出的位的位置。
【文檔編號】G11C16/02GK103778958SQ201310487893
【公開日】2014年5月7日 申請日期:2013年10月17日 優(yōu)先權(quán)日:2012年10月17日
【發(fā)明者】申東旻, 梁景喆, 任勝燦, 李起準(zhǔn), 孔駿鎮(zhèn) 申請人:三星電子株式會社, 浦項(xiàng)工科大學(xué)校產(chǎn)學(xué)協(xié)力團(tuán)