專利名稱:具有低密度奇偶校驗(yàn)碼譯碼能力的存儲(chǔ)器控制裝置及方法
具有低密度奇偶校驗(yàn)碼譯碼能力的存儲(chǔ)器控制裝置及方法技術(shù)領(lǐng)域
本發(fā)明有關(guān)于一種存儲(chǔ)器控制裝置,尤指一種具有低密度奇偶校驗(yàn)碼譯碼能力的存儲(chǔ)器控制裝置。
背景技術(shù):
在各種需要進(jìn)行信號傳輸?shù)膽?yīng)用中,常會(huì)采用錯(cuò)誤更正碼(error correctingcode),以便于信號傳輸錯(cuò)誤時(shí),能讓接收端得以更正錯(cuò)誤而獲得正確的信號。例如,在儲(chǔ)存裝置中,存儲(chǔ)器控制裝置會(huì)將數(shù)據(jù)經(jīng)過錯(cuò)誤更正碼編碼裝置(encoder)編碼后再寫入存儲(chǔ)器,待嗣后讀取該些數(shù)據(jù)時(shí),若有錯(cuò)誤的情形發(fā)生,即可藉由錯(cuò)誤更正碼譯碼裝置(decoder)修正錯(cuò)誤而獲得正確的數(shù)據(jù)。
雖然錯(cuò)誤更正碼可應(yīng)用于許多的系統(tǒng)應(yīng)用中,但是在各種系統(tǒng)應(yīng)用間仍有些許的差別。例如,在通訊系統(tǒng)中,當(dāng)通訊信道的狀況太差而使錯(cuò)誤更正碼譯碼裝置無法正確譯碼時(shí),接收端會(huì)要求發(fā)送端重新發(fā)送同樣的正確數(shù)據(jù),希望能藉由在另一時(shí)間傳輸及/或配合較強(qiáng)的錯(cuò)誤更正碼編碼,而使接收端獲得正確的數(shù)據(jù)。
然而,在儲(chǔ)存裝置的應(yīng)用中,不但信號傳輸時(shí)可能會(huì)受到信道效應(yīng)及噪聲的干擾,還可能因?yàn)閿?shù)據(jù)衰減(data rot)或噪聲等因素而造成儲(chǔ)存裝置中所儲(chǔ)存的數(shù)據(jù)已經(jīng)不正確。此外,儲(chǔ)存裝置中所儲(chǔ)存的是經(jīng)由錯(cuò)誤更正碼編碼裝置編碼后的數(shù)據(jù),因而通訊系統(tǒng)中改用較強(qiáng)的錯(cuò)誤更正碼將數(shù)據(jù)重新進(jìn)行編碼后再傳輸?shù)姆绞?,并無法適用于儲(chǔ)存裝置的應(yīng)用。因此,針對儲(chǔ)存裝置的特性,而采用合適的錯(cuò)誤更正碼譯碼機(jī)制,實(shí)有其必要性。
此外,在儲(chǔ)存裝置這類大量生產(chǎn)制造的產(chǎn)品中,質(zhì)量的控管(quality control)常僅能藉由在一批產(chǎn)品中抽驗(yàn)數(shù)個(gè)樣本,而藉由抽驗(yàn)樣本的效能來判斷這批產(chǎn)品是否合格。尤其當(dāng)存儲(chǔ)器的制程越先進(jìn),存儲(chǔ)器的存儲(chǔ)單元不但體積縮小,并且存儲(chǔ)單元所儲(chǔ)存的數(shù)據(jù)也增加,造成存取存儲(chǔ)器時(shí)產(chǎn)生的錯(cuò)誤機(jī)率不斷升高。因此,存儲(chǔ)器控制裝置的錯(cuò)誤更正碼譯碼能力常是決定儲(chǔ)存裝置是否合格的重要因素。然而,在儲(chǔ)存裝置中采用較強(qiáng)的錯(cuò)誤更正碼譯碼能力需要較高的運(yùn)算量及較長的運(yùn)算時(shí)間,高運(yùn)算量會(huì)消耗較多的能源,因而會(huì)使儲(chǔ)存裝置的應(yīng)用受限。例如,在日常生活中逐漸扮演重要角色的可攜式設(shè)備,即需要采用能源消耗量較低的儲(chǔ)存裝置。另一方面,存儲(chǔ)器控制裝置存取存儲(chǔ)器常會(huì)搭配直接存儲(chǔ)器存取(direct memory access)及/或加倍傳輸(double pumping)等技術(shù)以縮短存儲(chǔ)器存取時(shí)間,使存取存儲(chǔ)器的時(shí)間通常已低于錯(cuò)誤更正碼譯碼運(yùn)算的時(shí)間。因此,若譯碼運(yùn)算的時(shí)間無法降低時(shí),將會(huì)造成儲(chǔ)存裝置的數(shù)據(jù)輸出速率降低而影響效能。發(fā)明內(nèi)容
有鑒于此,如何提升存儲(chǔ)器控制裝置的錯(cuò)誤更正碼譯碼能力以提供正確的數(shù)據(jù)輸出,并且能夠適當(dāng)?shù)鼐S持運(yùn)算量及數(shù)據(jù)輸出速率,實(shí)為業(yè)界有待解決的問題。
本說明書提供了一種存儲(chǔ)器控制裝置,包含有:一存儲(chǔ)器存取電路,用以讀取一第一碼字的硬信息及一第二碼字的硬信息;以及一低密度奇偶校驗(yàn)碼譯碼電路,用以依據(jù)該第一碼字的硬信息進(jìn)行譯碼運(yùn)算,并將依據(jù)該第一碼字的硬信息所產(chǎn)生的一檢測值與一譯碼指針進(jìn)行比對;其中,該低密度奇偶校驗(yàn)碼譯碼電路會(huì)依據(jù)該檢測值與該譯碼指針判斷該第一碼字的硬信息是否通過該譯碼指針,若未通過則設(shè)置該存儲(chǔ)器存取電路讀取該第一碼字的軟信息,并且以該第一碼字的軟信息進(jìn)行譯碼運(yùn)算。
本說明書另提供了一種存儲(chǔ)器控制裝置,包含有:一存儲(chǔ)器存取電路,用以自一個(gè)或多個(gè)存儲(chǔ)器讀取一第一碼字及一第二碼字,該第一碼字及該第二碼字分別包含有多個(gè)編碼位的硬信息;以及一低密度奇偶校驗(yàn)碼譯碼電路,用以依據(jù)該第一碼字的該多個(gè)編碼位的硬信息進(jìn)行譯碼運(yùn)算;其中當(dāng)該低密度奇偶校驗(yàn)碼譯碼電路對該第一碼字未能成功譯碼時(shí),該低密度奇偶校驗(yàn)碼譯碼電路會(huì)設(shè)置該存儲(chǔ)器存取電路讀取該第一碼字及該第二碼字的該多個(gè)編碼位的軟信息,并且會(huì)設(shè)置該低密度奇偶校驗(yàn)碼譯碼電路以該第一碼字及該第二碼字的該多個(gè)編碼位的軟 信息、或者以該第一碼字及該第二碼字的該多個(gè)編碼位的硬信息及軟信息進(jìn)行譯碼運(yùn)算。
本說明書另提供了一種存儲(chǔ)器控制方法,包含有:讀取一第一碼字的硬信息及一第二碼字的硬信息;依據(jù)該第一碼字的硬信息進(jìn)行譯碼運(yùn)算;依據(jù)該第一碼字的硬信息所產(chǎn)生的一檢測值,并將該檢測值與一譯碼指針進(jìn)行比對;以及依據(jù)該檢測值與該譯碼指針判斷該第一碼字的硬信息是否通過該譯碼指針,若未通過則讀取該第一碼字的軟信息,并且以該第一碼字的軟信息進(jìn)行譯碼運(yùn)算。
本說明書另提供了一種存儲(chǔ)器控制方法,包含有:自一個(gè)或多個(gè)存儲(chǔ)器讀取一第一碼字及一第二碼字,該第一碼字及該第二碼字分別包含有多個(gè)編碼位的硬信息;依據(jù)該第一碼字的該多個(gè)編碼位的硬信息進(jìn)行低密度奇偶校驗(yàn)碼的譯碼運(yùn)算;以及當(dāng)該第一碼字未能成功譯碼時(shí),讀取該第一碼字及該第二碼字的該多個(gè)編碼位的軟信息,并且以該第一碼字及該第二碼字的該多個(gè)編碼位的軟信息、或者以該第一碼字及該第二碼字的該多個(gè)編碼位的硬信息及軟信息進(jìn)行低密度奇偶校驗(yàn)碼的譯碼運(yùn)算。
上述實(shí)施例的優(yōu)點(diǎn)之一在于存儲(chǔ)器控制裝置能依據(jù)數(shù)據(jù)錯(cuò)誤的情形而采用適當(dāng)?shù)挠沧g碼搭配軟譯碼的方式以兼顧譯碼能力、能源消耗及數(shù)據(jù)輸出速率。本發(fā)明的其它優(yōu)點(diǎn)將藉由以下的說明和附圖進(jìn)行更詳細(xì)的說明。
圖1為本發(fā)明的存儲(chǔ)器控制裝置的一實(shí)施例簡化后的功能方塊圖。
圖2為圖1中存儲(chǔ)器的存儲(chǔ)單元儲(chǔ)存數(shù)據(jù)時(shí)的一實(shí)施例簡化后的狀態(tài)圖。
圖3為圖1中低密度奇偶校驗(yàn)碼譯碼電路的一實(shí)施例簡化后的功能方塊圖。
圖4為低密度奇偶校驗(yàn)碼譯碼電路進(jìn)行譯碼運(yùn)算時(shí)所產(chǎn)生的檢測值的一實(shí)施例的示意圖。
圖5為低密度奇偶校驗(yàn)碼譯碼電路進(jìn)行譯碼運(yùn)算時(shí)所產(chǎn)生的檢測值的另一實(shí)施例的示意圖。
圖6為圖1中的存儲(chǔ)器控制裝置的運(yùn)作流程的一實(shí)施例簡化后的流程圖。
圖7至圖9為圖1中的存儲(chǔ)器控制裝置的運(yùn)作時(shí)的三個(gè)實(shí)施例簡化后的時(shí)序圖。
主要元件符號說明
100存儲(chǔ)器控制裝置
11存儲(chǔ)器存取電路
13低密度奇偶校驗(yàn)碼譯碼電路
15輸出電路
31檢查點(diǎn)處理電路
33變動(dòng)點(diǎn)處理電路
35排序電路
37控制電路具體實(shí)施方式
以下將配合相關(guān)圖式來說明本發(fā)明的實(shí)施例。在圖式中,相同的標(biāo)號表示相同或類似的元件或流程步驟。
圖1顯示本發(fā)明一實(shí)施例的存儲(chǔ)器控制裝置100簡化后的功能方塊圖。存儲(chǔ)器控制裝置100包含有存儲(chǔ)器存取電路11、低密度奇偶校驗(yàn)碼譯碼電路13、及輸出電路15。圖1中的存儲(chǔ)器為閃存(flash memory),在其它的實(shí)施例中,存儲(chǔ)器也可以采用其它易失性(volatile)或非易失性的儲(chǔ)存裝置。
存儲(chǔ)器控制裝置100藉由存儲(chǔ)器存取電路11自存儲(chǔ)器讀取編碼數(shù)據(jù)(encodeddata),圖1中僅繪示一個(gè)存儲(chǔ)器存取電路11及一個(gè)存儲(chǔ)器以便于說明,在其它的實(shí)施例中,也可以采用一個(gè)或多個(gè)存儲(chǔ)器存取電路,對一個(gè)或多個(gè)存儲(chǔ)器進(jìn)行存取。編碼數(shù)據(jù)可由存儲(chǔ)器控制裝置100或其它裝置中的編碼裝置(圖中未繪示)將數(shù)據(jù)進(jìn)行低密度奇偶校驗(yàn)碼(low density parity check code,LDPC)的編碼運(yùn)算而產(chǎn)生,并且由存儲(chǔ)器存取電路11或其它存儲(chǔ)器存取電路將編碼數(shù)據(jù)寫入存儲(chǔ)器。此外,可以依據(jù)存儲(chǔ)器控制裝置100的架構(gòu)、存儲(chǔ)器的種類以及其它的設(shè)計(jì)考慮而采用適當(dāng)?shù)牡兔芏绕媾夹r?yàn)碼的編碼方式。例如,采用適當(dāng)大小的編碼區(qū)塊(block size)、奇偶校驗(yàn)矩陣(parity check matrix)或產(chǎn)生矩陣(generator matrix)等。
低密度奇偶校驗(yàn)碼譯碼電路13會(huì)控制存儲(chǔ)器存取電路11,使控制存儲(chǔ)器存取電路11能適時(shí)地讀取存儲(chǔ)器中的編碼數(shù)據(jù),并傳送至低密度奇偶校驗(yàn)碼譯碼電路13。低密度奇偶校驗(yàn)碼譯碼電路13接收存儲(chǔ)器存取電路11所讀取的編碼數(shù)據(jù)后,會(huì)對編碼數(shù)據(jù)進(jìn)行低密度奇偶校驗(yàn)碼的譯碼運(yùn)算。
輸出電路15會(huì)將低密度奇偶校驗(yàn)碼譯碼電路13譯碼運(yùn)算后的數(shù)據(jù)輸出至另一裝置(圖中未繪示,例如,輸出至計(jì)算機(jī)或可攜式設(shè)備等)。
圖2為數(shù)據(jù)儲(chǔ)存于圖1中存儲(chǔ)器的存儲(chǔ)單元(memory cell)時(shí)的一實(shí)施例簡化后的狀態(tài)圖。在本實(shí)施例中,每個(gè)存儲(chǔ)單元用以儲(chǔ)存I個(gè)位的數(shù)據(jù),當(dāng)存儲(chǔ)器存取電路11讀取存儲(chǔ)單元時(shí),即可依據(jù)存儲(chǔ)單元的所儲(chǔ)存的電壓狀態(tài)而讀取出硬信息(hard information)或軟信息(soft information)。
例如,在一實(shí)施例中,若僅需以I位的硬信息來代表存儲(chǔ)單元中所儲(chǔ)存的I位數(shù)據(jù)時(shí),當(dāng)存儲(chǔ)單元所儲(chǔ)存的電壓狀態(tài)大于Vb時(shí),存儲(chǔ)器存取電路11讀取出I位的數(shù)值1,而存儲(chǔ)單元所儲(chǔ)存的電壓狀態(tài)小于Vb時(shí),存儲(chǔ)器存取電路11讀取出I位的數(shù)值O。若以2位的軟信息來代表存儲(chǔ)單元中所儲(chǔ)存 的I位數(shù)據(jù)時(shí),當(dāng)存儲(chǔ)單元所儲(chǔ)存的電壓狀態(tài)大于Vc時(shí),存儲(chǔ)器存取電路11讀取出2位的數(shù)值11,存儲(chǔ)單元所儲(chǔ)存的電壓狀態(tài)位于Vb及Vc之間時(shí),存儲(chǔ)器存取電路11讀取出2位的數(shù)值10,存儲(chǔ)單元所儲(chǔ)存的電壓狀態(tài)位于Va及Vb之間時(shí),存儲(chǔ)器存取電路11讀取出2位的數(shù)值01,而當(dāng)存儲(chǔ)單元所儲(chǔ)存的電壓狀態(tài)小于Va時(shí),存儲(chǔ)器存取電路11讀取出2位的數(shù)值00。
在此實(shí)施例中,存儲(chǔ)器存取電路11可設(shè)置存儲(chǔ)器輸出硬信息或軟信息,由存儲(chǔ)器內(nèi)部的電路自行設(shè)置讀取數(shù)據(jù)單元時(shí)的閾值電壓(threshold voltage),以輸出數(shù)據(jù)單元的硬信息或軟信息。
在另一實(shí)施例中,也可以由存儲(chǔ)器存取電路11改變讀取存儲(chǔ)單元時(shí)的閾值電壓,而由存儲(chǔ)單元中讀取出所需的硬信息及軟信息。
在另一實(shí)施例中,存儲(chǔ)單元可用以儲(chǔ)存多個(gè)位的數(shù)據(jù),例如,多階存儲(chǔ)單元(mult1-level cell)及三階存儲(chǔ)單元(triple-level cell)可分別用以儲(chǔ)存2位和3位的數(shù)據(jù)。此時(shí),多階存儲(chǔ)單元所儲(chǔ)存的數(shù)據(jù)的硬信息為2位,而軟信息則以3位以上的輸出表示。而三階存儲(chǔ)單元所儲(chǔ)存的數(shù)據(jù)的硬信息為3位,而軟信息則以4位以上的輸出表示
在另一實(shí)施例中,存儲(chǔ)器存取電路11讀取存儲(chǔ)單元所儲(chǔ)存的數(shù)據(jù)時(shí),所讀取的數(shù)據(jù)是以電壓值、電流值、電荷值或其它數(shù)值的方式表示,而由存儲(chǔ)器存取電路11將該些數(shù)值轉(zhuǎn)換為適當(dāng)?shù)挠残畔⒓?或軟信息。
存儲(chǔ)單元所儲(chǔ)存的數(shù)據(jù)的軟信息可以包含或不包含該數(shù)據(jù)的硬信息。例如,在一實(shí)施例中,存儲(chǔ)單元所儲(chǔ)存的數(shù)據(jù)的軟信息為該數(shù)據(jù)的硬信息加上一個(gè)或多個(gè)位所組成。在另一實(shí)施例中,存儲(chǔ)單元所儲(chǔ)存的數(shù)據(jù)的軟信息中不包含該數(shù)據(jù)的硬信息。在另一實(shí)施例中,存儲(chǔ)單元所儲(chǔ)存的數(shù)據(jù)的硬信息和軟信息也可以采用不同的編碼規(guī)則,使該數(shù)據(jù)的軟信息中并未包含有硬信息的一個(gè)或多個(gè)位的數(shù)據(jù)。
在另一實(shí)施例中,存儲(chǔ)單元所儲(chǔ)存的數(shù)據(jù)輸出的硬信息及軟信息,也可以采用不同的編碼方式。例如,在圖2中,可依據(jù)存儲(chǔ)器所儲(chǔ)存的電壓狀態(tài)而輸出00、01、10及11的各種2位的組合。
在另一實(shí)施例中,存儲(chǔ)單元所儲(chǔ)存的數(shù)據(jù)的硬信息及軟信息具有同樣的位數(shù),但軟信息可使用的數(shù)值的數(shù)目多于硬信息可使用的數(shù)值的數(shù)目。例如,在圖2的實(shí)施例中,可依據(jù)存儲(chǔ)器所儲(chǔ)存的電壓狀態(tài)可產(chǎn)生O或I的硬信息,以及產(chǎn)生00、01、10或11的軟信息。因此,雖然數(shù)據(jù)的硬信息與軟信息具有相同的位數(shù),但硬信息僅有兩種可能的數(shù)值,而軟信息可以有四種可能的數(shù)值。
圖1中的低密度奇偶校驗(yàn)碼譯碼電路13可以采用各種算法及軟硬件架構(gòu)的譯碼裝置實(shí)現(xiàn),而都能夠達(dá)成本發(fā)明之功效。例如,低密度奇偶校驗(yàn)碼譯碼電路13可以采用信任值傳遞法(beliefpropagation approach)、最大似然譯石馬法(maximum likelihooddecoding approach)、總和-乘積算法(sum-product algorithm)、最小總和算法(minimum-sum algorithm)、平行處理(parallel)的譯碼架構(gòu)、反復(fù)(iterative)的譯碼架構(gòu)、以硬件電路實(shí)現(xiàn)的譯碼架構(gòu)、以軟件、韌體及/或硬件搭配處理器(processor)實(shí)現(xiàn)的譯碼架構(gòu)等方式實(shí)現(xiàn)。
圖3為圖1中的低密度奇偶校驗(yàn)碼譯碼電路13的一實(shí)施例簡化后的功能方塊圖,以下將以圖3說明低密度奇偶校驗(yàn)碼譯碼電路13如何進(jìn)行譯碼運(yùn)算。低密度奇偶校驗(yàn)碼譯碼電路13包含有檢查點(diǎn)處理電路31、變動(dòng)點(diǎn)處理電路33、排序電路35及控制電路37。
檢查點(diǎn)處理電路31用以計(jì)算檢查點(diǎn)(check node)的檢查點(diǎn)信息(check nodemessage),變動(dòng)點(diǎn)處理電路33用以計(jì)算變動(dòng)點(diǎn)(variable node,或稱為位點(diǎn)bit node等名稱)的變動(dòng)點(diǎn)信息(variable node message),排序電路35用以適當(dāng)?shù)胤Q接檢查點(diǎn)處理電路31及變動(dòng)點(diǎn)處理電路33,使檢查點(diǎn)信息及變動(dòng)點(diǎn)信息可以分別傳送至適當(dāng)?shù)淖儎?dòng)點(diǎn)和檢查點(diǎn),以使檢查點(diǎn)處理電路31及變動(dòng)點(diǎn)處理電路33可以繼續(xù)計(jì)算(當(dāng)有需要時(shí))檢查點(diǎn)信息及變動(dòng)點(diǎn)信息而進(jìn)行譯碼。
檢查點(diǎn)信息及變動(dòng)點(diǎn)信息可以采用對數(shù)領(lǐng)域(log domain)、線性領(lǐng)域(lineardomain)及/或其它合適的記載方式所表示的機(jī)率值(probability)、似然性值(likelihood)、及/或后驗(yàn)機(jī)率(a posteriori probability)等,以代表檢查點(diǎn)或變動(dòng)點(diǎn)所儲(chǔ)存的可能數(shù)值、所儲(chǔ)存的數(shù)值為O或I的機(jī)率值、似然性值、及/或后驗(yàn)機(jī)率等。
控制電路37用以設(shè)置檢查點(diǎn)處理電路31、變動(dòng)點(diǎn)處理電路33及排序電路35等元件,依據(jù)編碼數(shù)據(jù)的硬信息或軟信息,經(jīng)由變動(dòng)點(diǎn)處理電路33計(jì)算出變動(dòng)點(diǎn)信息,并使變動(dòng)點(diǎn)信息經(jīng)由排序電路35而傳遞至適當(dāng)?shù)臋z查點(diǎn)處理電路31進(jìn)行運(yùn)算而產(chǎn)生檢查點(diǎn)信息,再將檢查點(diǎn)信息經(jīng)由排序電路35回傳至適當(dāng)?shù)淖儎?dòng)點(diǎn)處理電路33進(jìn)行反復(fù)地譯碼運(yùn)算,并且控制電路37可藉由檢查點(diǎn)信息及/或變動(dòng)點(diǎn)信息判斷是否對編碼數(shù)據(jù)成功地進(jìn)行譯碼。
例如,控制電路37可藉由檢查點(diǎn)信息產(chǎn)生譯碼數(shù)據(jù)預(yù)估值,并將譯碼數(shù)據(jù)預(yù)估值與奇偶校驗(yàn)矩陣進(jìn)行內(nèi)積(inner product)或乘加運(yùn)算等而產(chǎn)生校驗(yàn)值,當(dāng)校驗(yàn)值等于O時(shí)即表示譯碼成功。
此外,低密度奇偶校驗(yàn)碼譯碼電路13可以進(jìn)行一預(yù)設(shè)循環(huán)數(shù)(iteration)的譯碼運(yùn)算,并且在譯碼運(yùn)算中,控制電路37會(huì)依據(jù)檢查點(diǎn)信息及/或變動(dòng)點(diǎn)信息判斷是否已經(jīng)譯碼成功。例如,在一實(shí)施例中,低密度奇偶校驗(yàn)碼譯碼電路13可以設(shè)置為進(jìn)行最多20個(gè)循環(huán)的譯碼運(yùn)算,若執(zhí)行了 20個(gè)循環(huán)的譯碼運(yùn)算仍無法產(chǎn)生校驗(yàn)值等于O的檢查點(diǎn)信息時(shí),則控制電路37會(huì)判斷未譯碼成功。然而,當(dāng)控制電路37判斷未譯碼成功并不代表低密度奇偶校驗(yàn)碼譯碼電路13 —定無法譯碼該編碼數(shù)據(jù),而是表示低密度奇偶校驗(yàn)碼譯碼電路13無法在預(yù)定的循環(huán)數(shù)內(nèi)成功譯碼該編碼數(shù)據(jù)。
低密度奇偶校驗(yàn)碼譯碼電路13可以由存儲(chǔ)器存取電路11接收編碼數(shù)據(jù)的硬信息而進(jìn)行譯碼運(yùn)算,也可接收編碼數(shù)據(jù)的軟信息而進(jìn)行譯碼運(yùn)算(在說明書及申請專利范圍中,將分別簡稱為硬譯碼及軟譯碼)。
大部分的編碼數(shù)據(jù)以硬譯碼方式即可譯碼成功,并且低密度奇偶校驗(yàn)碼譯碼電路13進(jìn)行硬譯碼所需的時(shí)間及所消耗的能源,通常會(huì)低于進(jìn)行軟譯碼所需的時(shí)間及所消耗的能源,但是軟譯碼運(yùn)算比硬譯碼運(yùn)算具有較高的錯(cuò)誤更正能力。
因此,在一實(shí)施例中,低密度奇偶校驗(yàn)碼譯碼電路13可以預(yù)設(shè)先使用編碼數(shù)據(jù)的硬信息進(jìn)行譯碼,以降低譯碼所需的時(shí)間及能源,當(dāng)硬譯碼未成功時(shí),低密度奇偶校驗(yàn)碼譯碼電路13再使用該編碼數(shù)據(jù)的軟信息進(jìn)行譯碼。如此一來,低密度奇偶校驗(yàn)碼譯碼電路13即可兼顧譯碼速度及所需的能源,并且仍然保有所需的錯(cuò)誤更正能力。
由于譯碼運(yùn)算所需要的時(shí)間以及消耗的能源皆相當(dāng)多,若低密度奇偶校驗(yàn)碼譯碼電路13能夠及早發(fā)現(xiàn)無法譯碼成功,而進(jìn)行相應(yīng)的動(dòng)作,則可更加節(jié)省譯碼所需的時(shí)間及能源。因此,當(dāng)?shù)兔芏绕媾夹r?yàn)碼譯碼電路13進(jìn)行譯碼運(yùn)算時(shí),還可以采用一個(gè)或多個(gè)譯碼指針,作為是否會(huì)譯碼成功的預(yù)測。
例如,控制電路37可以將檢查點(diǎn)信息、變動(dòng)點(diǎn)信息、及/或依據(jù)檢查點(diǎn)信息及/或變動(dòng)點(diǎn)信息運(yùn)算后所產(chǎn)生的數(shù)值作為檢測值,并將檢測值與譯碼指針進(jìn)行比對。依據(jù)檢測值的定義的不同,控制電路37可以將檢測值大于或等于譯碼指針,作為低密度奇偶校驗(yàn)碼譯碼電路13無法譯碼成功的預(yù)測,或者控制電路37也可以將檢測值小于或等于譯碼指針時(shí),作為低密度奇偶校驗(yàn)碼譯碼電路13無法譯碼成功的預(yù)測。
控制電路37可以在進(jìn)行過一個(gè)或多個(gè)循環(huán)的譯碼運(yùn)算后,將檢測值與譯碼指針進(jìn)行一次或多次的比對,以作為低密度奇偶校驗(yàn)碼譯碼電路13是否會(huì)譯碼成功的預(yù)測。例如,控制電路37于第10循環(huán)后、或者于第5循環(huán)及第10循環(huán)后、或者于每次循環(huán)的譯碼運(yùn)算后,將檢測值與譯碼指針進(jìn)行比對,以進(jìn)行是否會(huì)譯碼成功的預(yù)測。
在一實(shí)施例中,當(dāng)?shù)兔芏绕媾夹r?yàn)碼譯碼電路13會(huì)預(yù)設(shè)先進(jìn)行硬譯碼,當(dāng)硬譯碼未成功時(shí),再進(jìn)行軟譯碼。此時(shí),低密度奇偶校驗(yàn)碼譯碼電路13可搭配使用譯碼指針的方式,而更加節(jié)省譯碼所需的時(shí)間及能源。例如,低密度奇偶校驗(yàn)碼譯碼電路13會(huì)預(yù)設(shè)進(jìn)行最多20個(gè)循環(huán)的硬譯碼運(yùn)算,并在第5個(gè)循環(huán)的硬譯碼運(yùn)算后,將檢測值與譯碼指針進(jìn)行比對,以作出是否譯碼成功的預(yù)測。當(dāng)控制電路37作出無法譯碼成功的預(yù)測時(shí),表示低密度奇偶校驗(yàn)碼譯碼電路13可能無法于20個(gè)循環(huán)時(shí),以硬譯碼方式譯碼成功。因此,控制電路37可以于第5個(gè)循環(huán)運(yùn)算后,即停止硬譯碼運(yùn)算,并且改以編碼數(shù)據(jù)的軟信息進(jìn)行譯碼運(yùn)算。否則,控制電路37會(huì)設(shè)置檢查點(diǎn)處理電路31、變動(dòng)點(diǎn)處理電路33及排序電路35繼續(xù)進(jìn)行硬譯碼運(yùn)算至譯碼成功、至預(yù)設(shè)的循環(huán)運(yùn)算執(zhí)行完畢、或者至下次控制電路37作出無法譯碼成功的預(yù)測時(shí)。
在圖4的實(shí)施例中,控制電路37可以將檢查點(diǎn)信息與奇偶校驗(yàn)矩陣進(jìn)行內(nèi)積、或?qū)z查點(diǎn)信息進(jìn)行運(yùn)算后的數(shù)值做為檢測值,以與譯碼指針進(jìn)行比對。例如,使用檢查點(diǎn)信息運(yùn)算后所產(chǎn)生的校驗(yàn)方程式數(shù)值(check equation number)做為檢測值。
圖4的線段41和42表示當(dāng)?shù)兔芏绕媾夹r?yàn)碼譯碼電路13進(jìn)行不同的譯碼運(yùn)算時(shí),在每個(gè)循環(huán)的譯碼運(yùn)算后所對應(yīng)的檢測值。線段41表示低密度奇偶校驗(yàn)碼譯碼電路13譯碼成功的一個(gè)例子,而線段42表示低密度奇偶校驗(yàn)碼譯碼電路13未譯碼成功的一個(gè)例子。經(jīng)過數(shù)個(gè)循環(huán)的譯碼運(yùn)算后,譯碼成功的線段41的檢測值會(huì)下降至數(shù)值Ne以下,然而未譯碼成功的線段42的檢測值仍然會(huì)大于數(shù)值Ne。
若經(jīng)過若干循環(huán)的譯碼運(yùn)算后,檢測值仍然大于或等于Ne時(shí),代表有很高的機(jī)率低密度奇偶校驗(yàn)碼譯碼電路13無法譯碼成功,或者無法在預(yù)定的循環(huán)數(shù)內(nèi)譯碼成功。因此,可以將譯碼指針設(shè)置為Ne,由控制電路37將檢測值與譯碼指針進(jìn)行比對,做出無法譯碼成功的預(yù)測,而能及早停止譯碼運(yùn)算而進(jìn)行相應(yīng)的動(dòng)作。例如,在上述的實(shí)施例中,控制電路37在經(jīng)過5個(gè)循環(huán)的硬譯碼運(yùn)算時(shí),發(fā)現(xiàn)校驗(yàn)值仍然大于或等于譯碼指針Ne,控制電路37會(huì)作出無法譯碼成功的預(yù)測,因此停止后續(xù)的硬譯碼運(yùn)算,而改以編碼數(shù)據(jù)的軟信息進(jìn)行譯碼運(yùn)算。
在圖5的實(shí)施例中,控制電路37將變動(dòng)點(diǎn)信息進(jìn)行運(yùn)算后的數(shù)值做為檢測值,以與譯碼指針進(jìn)行比對。例如,使用全部或部分的變動(dòng)點(diǎn)信息的總合、最大的幾個(gè)變動(dòng)點(diǎn)信息的總合、最小的幾個(gè)變動(dòng)點(diǎn)信息的總合、及/或全部或部分變動(dòng)點(diǎn)信息經(jīng)運(yùn)算后所產(chǎn)生的次序組數(shù)值(order set value)的總合等做為檢測值。
線段51和52表示當(dāng)?shù)兔芏绕媾夹r?yàn)碼譯碼電路13進(jìn)行不同的譯碼運(yùn)算時(shí),在每個(gè)循環(huán)的譯碼運(yùn)算后所對應(yīng)的檢測值。線段51表示低密度奇偶校驗(yàn)碼譯碼電路13譯碼成功的一個(gè)例子,而線段52表示低密度奇偶校驗(yàn)碼譯碼電路13未譯碼成功的一個(gè)例子。經(jīng)過數(shù)個(gè)循環(huán)的譯碼運(yùn)算后,譯碼成功的線段51的檢測值會(huì)上升至數(shù)值Nv以上,然而未譯碼成功的線段52的檢測值仍然會(huì)小于數(shù)值Nv。
若經(jīng)過若干循環(huán)的譯碼運(yùn)算后,檢測值仍然小于或等于Nv時(shí),代表有很高的機(jī)率低密度奇偶校驗(yàn)碼譯碼電路13無法譯碼成功,或者無法在預(yù)定的循環(huán)數(shù)內(nèi)譯碼成功。因此,可以將譯碼指針設(shè)置為Νν,由控制電路37將檢測值與譯碼指針進(jìn)行比對,做出無法譯碼成功的預(yù)測,而能及早停止譯碼運(yùn)算而進(jìn)行相應(yīng)的動(dòng)作。例如,在上述的實(shí)施例中,控制電路37在經(jīng)過5個(gè)循環(huán)的硬譯碼運(yùn)算時(shí),發(fā)現(xiàn)校驗(yàn)值仍然小于或等于譯碼指針Νν,控制電路37會(huì)作出無法譯碼成功的預(yù)測,因此停止后續(xù)的硬譯碼運(yùn)算,而改以編碼數(shù)據(jù)的軟信息進(jìn)行譯碼運(yùn)算。
在上述的實(shí)施例中,也可以將譯碼指針設(shè)置為一段時(shí)間之前的檢測值,并且當(dāng)檢測值與譯碼指針之間的差距小于或等于默認(rèn)值時(shí)、或者當(dāng)差距大于或等于默認(rèn)值時(shí),控制電路37會(huì)做出無法譯碼成功的預(yù)測。
在上述的實(shí)施例中,控制電路37也可以同時(shí)采用多個(gè)檢測值與多個(gè)譯碼指針進(jìn)行比對,以作出低密度奇偶校驗(yàn)碼譯碼電路13是否譯碼成功的預(yù)測。
圖6的存儲(chǔ)器控制裝置100的運(yùn)作時(shí)的一實(shí)施例簡化后的流程600,以下將以圖6搭配圖1和圖3進(jìn)一步說明存儲(chǔ)器控制裝置100的運(yùn)作方式。
在流程61中,低密度奇偶校驗(yàn)碼譯碼電路13會(huì)設(shè)置存儲(chǔ)器存取電路11會(huì)自存儲(chǔ)器讀取多個(gè)碼字(code word)的硬信息,亦即讀取碼字中多個(gè)經(jīng)低密度奇偶校驗(yàn)碼編碼的編碼位(encoded bit)的硬信息,每個(gè)編碼位的硬信息可以包含有一個(gè)或多個(gè)位的信息。
在流程62中,低密度奇偶校驗(yàn)碼譯碼電路13會(huì)以碼字的硬信息進(jìn)行譯碼運(yùn)算,并進(jìn)入流程63。
在流程63中,低密度奇偶校驗(yàn)碼譯碼電路13會(huì)判斷是否譯碼成功,若譯碼成功則進(jìn)行流程64,若未能成功譯碼則進(jìn)行流程65。
在流程64,低密度奇偶校驗(yàn)碼譯碼電路13會(huì)判斷是否仍有碼字需要進(jìn)行譯碼,若有則回到流程62,由低密度奇偶校驗(yàn)碼譯碼電路13以下一個(gè)碼字的硬信息進(jìn)行譯碼運(yùn)算。若無,則結(jié)束譯碼運(yùn)算。
在流程65中,低密度奇偶校驗(yàn)碼譯碼電路13會(huì)設(shè)置存儲(chǔ)器存取電路11自存儲(chǔ)器讀取該未硬譯碼成功的碼字的軟信息,并進(jìn)入流程66。
在流程66中,低密度奇偶校驗(yàn)碼譯碼電路13以碼字的軟信息進(jìn)行譯碼運(yùn)算、或者以碼字的硬信息和軟信息進(jìn)行譯碼運(yùn)算(依據(jù)硬信息和軟信息的定義方式而定)。
在流程67中,低密度奇偶校驗(yàn)碼譯碼電路13會(huì)判斷是否仍有碼字需要進(jìn)行譯碼,若有則回到流程66,由低密度奇偶校驗(yàn)碼譯碼電路13以下一個(gè)碼字的軟信息進(jìn)行譯碼運(yùn)算。若無,則結(jié)束譯碼運(yùn)算。
在另一實(shí)施例的流程67中,低密度奇偶校驗(yàn)碼譯碼電路13若判斷仍有碼字需要進(jìn)行譯碼,則回到流程63,由低密度奇偶校驗(yàn)碼譯碼電路13以下一個(gè)碼字的硬信息進(jìn)行譯碼運(yùn)算。若無,則結(jié)束譯碼運(yùn)算。
在另一實(shí)施例中,若低密度奇偶校驗(yàn)碼譯碼電路13于流程66未能譯碼成功,則低密度奇偶校驗(yàn)碼譯碼電路13會(huì)產(chǎn)生無法對碼字成功譯碼的信息。
在上述的實(shí)施例中,存儲(chǔ)器存取電路11和低密度奇偶校驗(yàn)碼譯碼電路13也可分別獨(dú)立運(yùn)作,而增加處理速度。例如,當(dāng)?shù)兔芏绕媾夹r?yàn)碼譯碼電路13進(jìn)行一碼字的譯碼運(yùn)算時(shí),存儲(chǔ)器存取電路11可進(jìn)行另一個(gè)碼字的存取動(dòng)作。
圖7至圖9為存儲(chǔ)器控制裝置100依據(jù)流程600運(yùn)作時(shí)的三個(gè)實(shí)施例簡化后的時(shí)序圖,以下將搭配圖1和圖3進(jìn)一步說明存儲(chǔ)器控制裝置100的運(yùn)作方式。
在圖7的時(shí)段Pl時(shí),存儲(chǔ)器控制裝置100會(huì)進(jìn)行流程61的運(yùn)作,低密度奇偶校驗(yàn)碼譯碼電路13設(shè)置存儲(chǔ)器存取電路11自存儲(chǔ)器讀取4個(gè)以低密度奇偶校驗(yàn)碼編碼的碼字Wl至W4的硬信息,每個(gè)碼字包含有多個(gè)編碼位,每個(gè)編碼位的可包含有I個(gè)或多個(gè)位的硬信息。
為了縮短存儲(chǔ)器控制裝置100處理數(shù)據(jù)所占用的時(shí)間,當(dāng)存儲(chǔ)器存取電路11接收完的第一個(gè)碼字Wl后,存儲(chǔ)器控制裝置100即可開始進(jìn)行流程62和63的運(yùn)作。
于時(shí)段P2時(shí),低密度奇偶校驗(yàn)碼譯碼電路13會(huì)對碼字Wl進(jìn)行譯碼并且判斷譯碼是否成功,并且于時(shí)段P3至P5時(shí)分別對碼字W2至W4進(jìn)行譯碼并且判斷是否譯碼成功。
此外,低密度奇偶校驗(yàn)碼譯碼電路13可設(shè)置輸出電路15輸出譯碼成功的碼字Wl至W40
在圖8的時(shí)段Ql時(shí),存儲(chǔ)器控制裝置100會(huì)進(jìn)行流程61的運(yùn)作。低密度奇偶校驗(yàn)碼譯碼電路13設(shè)置存儲(chǔ)器存取電路11自存儲(chǔ)器讀取4個(gè)以低密度奇偶校驗(yàn)碼編碼的碼字W1至W4的硬信息,每個(gè)碼字包含有多個(gè)編碼位。
為了縮短存儲(chǔ)器控制裝置100處理數(shù)據(jù)所占用的時(shí)間,當(dāng)存儲(chǔ)器存取電路11接收完的第一個(gè)碼字Wl后,存儲(chǔ)器控制裝置100即可開始進(jìn)行流程62和63的運(yùn)作。
于時(shí)段Q2時(shí),低密度奇偶校驗(yàn)碼譯碼電路13會(huì)對碼字Wl進(jìn)行譯碼并且判斷是否譯碼成功,并且于時(shí)段Q4至Q6時(shí)陸續(xù)地對碼字W2至W4進(jìn)行譯碼并且判斷是否譯碼成功。
然而,在此實(shí)施例的時(shí)段Q2中,低密度奇偶校驗(yàn)碼譯碼電路13無法以碼字Wl的硬信息進(jìn)行成功的譯碼,而僅于時(shí)段Q4至Q6成功譯碼碼字W2至W4。
因此,于時(shí)段Q3時(shí),存儲(chǔ)器控制裝置100進(jìn)行流程65的運(yùn)作,由低密度奇偶校驗(yàn)碼譯碼電路13設(shè)置存儲(chǔ)器存取電路11自存儲(chǔ)器讀取碼字Wl的軟信息。
于時(shí)段Q7時(shí),低密度奇偶校驗(yàn)碼譯碼電路13會(huì)進(jìn)行流程66,以碼字Wl的軟信息進(jìn)行譯碼。
在圖8的實(shí)施例中,當(dāng)?shù)兔芏绕媾夹r?yàn)碼譯碼電路13無法成功譯碼一碼字時(shí),低密度奇偶校驗(yàn)碼譯碼電路13仍會(huì)繼續(xù)對進(jìn)行尚未完成譯碼的其它碼字,以硬信息進(jìn)行譯碼運(yùn)算,并且設(shè)置存儲(chǔ)器存取電路11讀取未成功譯碼的碼字的軟信息,使低密度奇偶校驗(yàn)碼譯碼電路13能以碼字的軟信息進(jìn)行譯碼運(yùn)算。
在圖9的時(shí)段Tl時(shí),存儲(chǔ)器控制裝置100會(huì)進(jìn)行流程61的運(yùn)作。低密度奇偶校驗(yàn)碼13設(shè)置存儲(chǔ)器存取電路11自存儲(chǔ)器讀取4個(gè)以低密度奇偶校驗(yàn)碼編碼的碼字Wl至W4的硬信息,每個(gè)碼字包含有多個(gè)編碼位。
為了縮短存儲(chǔ)器控制裝置100處理數(shù)據(jù)所占用的時(shí)間,當(dāng)存儲(chǔ)器存取電路11接收完的第一個(gè)碼字Wl后,存儲(chǔ)器控制裝置100即可開始進(jìn)行流程62和63的運(yùn)作。
于時(shí)段T2,低密度奇偶校驗(yàn)碼譯碼電路13會(huì)對碼字Wl進(jìn)行譯碼并且判斷是否譯碼成功。
在此實(shí)施例時(shí)段T2中,低密度奇偶校驗(yàn)碼譯碼電路13無法以碼字Wl的硬信息進(jìn)行成功的譯碼。
因此,于時(shí)段T3時(shí),存儲(chǔ)器控制裝置100進(jìn)行流程65的運(yùn)作,由低密度奇偶校驗(yàn)碼13設(shè)置存儲(chǔ)器存取電路11自存儲(chǔ)器讀取碼字Wl至W4的軟信息。
于時(shí)段T4至T7時(shí),低密度奇偶校驗(yàn)碼譯碼電路13會(huì)進(jìn)行流程66和67,以碼字Wl至W4的軟信息進(jìn)行譯碼運(yùn)算。
在圖9的實(shí)施例中,當(dāng)?shù)兔芏绕媾夹r?yàn)碼13判斷先進(jìn)行硬譯碼運(yùn)算的碼字無法正確譯碼時(shí),低密度奇偶校驗(yàn)碼譯碼電路13會(huì)停止對后續(xù)的碼字進(jìn)行硬譯碼運(yùn)算,并且設(shè)置存儲(chǔ)器存取電路11讀取尚未成功譯碼的碼字的軟信息,使低密度奇偶校驗(yàn)碼譯碼電路13能以碼字的軟信息進(jìn)行譯碼運(yùn)算。
在上述的實(shí)施例的流程63或者軟譯碼運(yùn)算中,低密度奇偶校驗(yàn)碼13的控制電路37可以采用譯碼指針,以盡早判斷未能成功譯碼的情形。
例如,在圖9的實(shí)施例中,當(dāng)?shù)兔芏绕媾夹r?yàn)碼譯碼電路13進(jìn)行碼字Wl的硬譯碼運(yùn)算時(shí),控制電路37可以采用上述的一個(gè)或多個(gè)檢測值與譯碼指針進(jìn)行比對,做出無法譯碼成功的預(yù)測,而能以比時(shí)段T2更短的時(shí)間即可進(jìn)入流程65,讀取碼字的軟信息而進(jìn)行軟譯碼運(yùn)算。因此,能更加快譯碼的速度與降低所耗費(fèi)的能源。
在上述的實(shí)施例中,存儲(chǔ)器可以采用NAND閃存,并且存儲(chǔ)器存取電路11可以采用頁(Page)為基本讀取單位存取NAND閃存的數(shù)據(jù)。例如,目前常見的規(guī)格中,I頁包含有八個(gè)扇區(qū)(sector),此外,I頁也可以包含有16個(gè)扇區(qū)或24個(gè)扇區(qū)等規(guī)格。而I個(gè)扇區(qū)可包含有一個(gè)或多個(gè)經(jīng)低密度奇偶校驗(yàn)碼編碼的碼字。
當(dāng)存儲(chǔ)器存取電路11讀取NAND閃存中的數(shù)據(jù)時(shí),NAND閃存I頁中各個(gè)扇區(qū)的數(shù)據(jù)皆儲(chǔ)存于物理位置鄰近的地方,而容易受到類似的噪聲的影響或是有類似數(shù)據(jù)衰減。因此,在上述實(shí)施例中,當(dāng)?shù)兔芏绕媾夹r?yàn)碼13對I頁中的某一碼字進(jìn)行硬譯碼時(shí),若該碼字未能硬譯碼成功,則有很高的機(jī)率后續(xù)的碼字也無法硬譯碼成功。此時(shí),低密度奇偶校驗(yàn)碼13停止對后續(xù)的碼字進(jìn)行硬譯碼運(yùn)算,改進(jìn)行軟譯碼運(yùn)算,則可加快整體的譯碼速度與降低所耗費(fèi)的能源。
在上述的實(shí)施例中,碼字的數(shù)量只是用以說明。實(shí)作上,可以據(jù)系統(tǒng)應(yīng)用的需求,而適當(dāng)?shù)卦O(shè)置進(jìn)行存儲(chǔ)器存取和進(jìn)行譯碼運(yùn)算的碼字?jǐn)?shù)量。
在上述的實(shí)施例中,低密度奇偶校驗(yàn)碼譯碼電路13也可設(shè)置低密度奇偶校驗(yàn)碼譯碼電路13,于接收完所有的碼字Wl至W4后,才開始對碼字Wl至W4進(jìn)行譯碼。
在上述的實(shí)施例中,低密度奇偶校驗(yàn)碼譯碼電路13也可以設(shè)置輸出電路15于同一時(shí)段,連續(xù)地將譯碼后的碼字Wl至W4輸出至另一裝置?;蛘撸兔芏绕媾夹r?yàn)碼譯碼電路13也可以設(shè)置輸出電路15于同一時(shí)段,同時(shí)地將譯碼后的碼字Wl至W4輸出至另一裝置?;蛘撸兔芏绕媾夹r?yàn)碼譯碼電路13也可以設(shè)置輸出電路15于多個(gè)時(shí)段,分別輸出一個(gè)或多個(gè)碼字Wl至W4。
在上述的實(shí)施例中,存儲(chǔ)器存取電路11與輸出電路15分別使用不同的信道,由存儲(chǔ)器讀取編碼數(shù)據(jù)及輸出經(jīng)譯碼的數(shù)據(jù)。在另一實(shí)施例中,存儲(chǔ)器存取電路11與輸出電路15使用相同的信道,而由存儲(chǔ)器讀取編碼數(shù)據(jù)及輸出經(jīng)譯碼的數(shù)據(jù)。
在上述的實(shí)施例中,存儲(chǔ)器存取電路11也可以于一個(gè)或多個(gè)時(shí)段,由一個(gè)或多個(gè)存儲(chǔ)器讀取多個(gè)碼字,而每個(gè)碼字的編碼位也可以依據(jù)設(shè)計(jì)考慮而設(shè)置為適當(dāng)?shù)臄?shù)目。
在上述的實(shí)施例中,存儲(chǔ)器存取電路11由存儲(chǔ)單元所讀取的硬信息也可以多于一個(gè)位、或者硬信息及軟信息也可以具有同樣的位數(shù)。
在上述的實(shí)施例中,可依據(jù)設(shè)計(jì)考慮而將碼字設(shè)置為具有順序關(guān)系或者沒有順序關(guān)系,并且可將碼字依順序或不依順序進(jìn)行譯碼。
在流程65中,存儲(chǔ)器存取電路11可于一時(shí)段內(nèi)讀取碼字中編碼位的軟信息的所有位,或者,存儲(chǔ)器存取電路11也可于多個(gè)時(shí)段內(nèi),分次讀取碼字中編碼位的軟信息的各個(gè)位。例如,存儲(chǔ)器存取電路11以流程61所讀取的硬信息做為碼字Wl中編碼位的軟信息的第一位,并于流程65中的一時(shí)段讀取碼字Wl中編碼位的軟信息的第二位,于另一時(shí)段讀取碼字Wl中編碼位的軟信息的第三位。
說明書及圖式中的元件的數(shù)量、位置和連接關(guān)系等僅為示意性的敘述與繪制,以簡化說明。說明書中各個(gè)元件能以一個(gè)或多個(gè)的元件實(shí)施,或者說明書中多個(gè)元件的功能也可由同一元件實(shí)施,而皆屬本發(fā)明的涵蓋范圍。例如,存儲(chǔ)器存取電路11和輸出電路可以設(shè)置為同一元件等。而上述的實(shí)施例中的存儲(chǔ)器控制裝置100、存儲(chǔ)器存取電路11、低密度奇偶校驗(yàn)碼譯碼電路13、輸出電路15、及/或流程600的功能,皆可分別地或搭配地采用軟件、韌體、及/或硬件的方式實(shí)施。例如,低密度奇偶校驗(yàn)碼譯碼電路13可以采用專門的硬件電路,也可以采用軟件搭配處理器進(jìn)行的譯碼運(yùn)算。
在上述的實(shí)施例中,藉由將存儲(chǔ)器控制裝置100設(shè)置為先使用低密度奇偶校驗(yàn)碼譯碼電路13以碼字的硬信息進(jìn)行譯碼,而具有較低的運(yùn)算量,并且大部分的數(shù)據(jù)錯(cuò)誤皆能使用硬譯碼而修正。當(dāng)?shù)兔芏绕媾夹r?yàn)碼譯碼電路13無法藉由硬譯碼的方式成功地譯碼時(shí),始采用低密度奇偶校驗(yàn)碼譯碼電路13以碼字的軟信息進(jìn)行譯碼,因此對于少數(shù)數(shù)據(jù)錯(cuò)誤的情形非常嚴(yán)重時(shí),也能藉由軟譯碼的方式修正錯(cuò)誤,而維持存儲(chǔ)器控制裝置100的譯碼效能。因此,存儲(chǔ)器控制裝置100不但能具有較低的運(yùn)算量,也能維持譯碼效能。
此外,某些存儲(chǔ)器中所儲(chǔ)存的數(shù)據(jù)容易受到相同的數(shù)據(jù)衰減,因此,存儲(chǔ)器控制裝置100在低密度奇偶校驗(yàn)碼譯碼電路13進(jìn)行硬譯碼時(shí),可以采用譯碼指針與檢測值進(jìn)行比較,以提早判斷低密度奇偶校驗(yàn)碼譯碼電路是否會(huì)發(fā)生無法譯碼成功的情形,若有碼字無法硬譯碼成功時(shí),表示后續(xù)相同區(qū)塊的碼字也很可能無法硬譯碼成功。因此,存儲(chǔ)器控制裝置100會(huì)停止后續(xù)的硬譯碼運(yùn)算,以節(jié)省譯碼運(yùn)算所消耗的能源,并且及早設(shè)置存儲(chǔ)器存取電路11讀取軟信息,使低密度奇偶校驗(yàn)碼譯碼電路13能及早進(jìn)行軟譯碼。因此,在此些實(shí)施例中,存儲(chǔ)器控制裝置100也能夠降低譯碼運(yùn)算所占用的時(shí)間和能源,而能維持存儲(chǔ)器控制裝置100輸出數(shù)據(jù)的速率。
說明書及申請專利范圍中的某些詞匯被用來指稱特定的元件,所屬技術(shù)領(lǐng)域的技術(shù)人員應(yīng)可理解,同樣的元件可能會(huì)用不同的名詞來稱呼。本說明書及申請專利范圍并不以名稱的差異作為區(qū)分元件的方式,而是以元件在功能上的差異來為區(qū)分的基準(zhǔn)。在說明書及申請專利范圍中所提及的「包含」為一開放式的用語,故應(yīng)解釋成「包含但不限定于」。另外,「耦接」一詞包含任何直接及間接的連接手段。因此,當(dāng)文中描述第一裝置耦接于第二裝置,則代表第一裝置可通過電性連接、有線傳輸、無線傳輸、或光學(xué)傳輸?shù)刃盘栠B接方式而直接連接于第二裝置,或通過其它裝置或連接手段間接的電性或信號連接至該第二裝置。
以上所述僅為本發(fā)明的較佳實(shí)施例,各個(gè)實(shí)施例問皆能適當(dāng)?shù)慕Y(jié)合而不互斥,凡依本發(fā)明申請專利范圍所做的均等變化、修飾與組合,皆屬本發(fā)明的涵蓋范圍。
權(quán)利要求
1.一種存儲(chǔ)器控制裝置,包含有: 一存儲(chǔ)器存取電路,用以讀取一第一碼字的硬信息及一第二碼字的硬信息;以及 一低密度奇偶校驗(yàn)碼譯碼電路,用以依據(jù)該第一碼字的硬信息進(jìn)行譯碼運(yùn)算,并將依據(jù)該第一碼字的硬信息所產(chǎn)生的一檢測值與一譯碼指針進(jìn)行比對; 其中,該低密度奇偶校驗(yàn)碼譯碼電路會(huì)依據(jù)該檢測值與該譯碼指針判斷該第一碼字的硬信息是否通過該譯碼指針,若未通過則設(shè)置該存儲(chǔ)器存取電路讀取該第一碼字的軟信息,并且以該第一碼字的軟信息進(jìn)行譯碼運(yùn)算。
2.如權(quán)利要求1所述的存儲(chǔ)器控制裝置,其中當(dāng)?shù)谝淮a字的硬信息未通過該譯碼指針時(shí),該低密度奇偶校驗(yàn)碼譯碼電路會(huì)設(shè)置該存儲(chǔ)器存取電路讀取該第二碼字的軟信息,并且以該第二碼字的軟信息進(jìn)行譯碼運(yùn)算。
3.如權(quán)利要求1或2所述的存儲(chǔ)器控制裝置,其中該低密度奇偶校驗(yàn)碼譯碼電路會(huì)依據(jù)該第一碼字的硬信息所產(chǎn)生的多個(gè)檢查點(diǎn)信息而產(chǎn)生該檢測值。
4.如權(quán)利要求3所述的存儲(chǔ)器控制裝置,其中該低密度奇偶校驗(yàn)碼譯碼電路會(huì)依據(jù)該多個(gè)檢查點(diǎn)信息與一奇偶校驗(yàn)矩陣進(jìn)行運(yùn)算而產(chǎn)生該檢測值。
5.如權(quán)利要求3所述的存儲(chǔ)器控制裝置,其中當(dāng)該檢測值大于或等于該譯碼指針時(shí),該低密度奇偶校驗(yàn)碼譯碼電路會(huì)設(shè)置該存儲(chǔ)器存取電路讀取該第一碼字的軟信息,并且以該第一碼字的軟信息進(jìn)行譯碼運(yùn)算。
6.如權(quán)利要求3所述的存儲(chǔ)器控制裝置,其中該多個(gè)檢查點(diǎn)信息包含有機(jī)率值、似然性值、及/或后驗(yàn)機(jī)率的至少其中之一。
7.如權(quán)利要求1或2所述的存儲(chǔ)器控制裝置,其中該低密度奇偶校驗(yàn)碼譯碼電路會(huì)依據(jù)該第一碼字的硬信息所產(chǎn)生的多個(gè)變動(dòng)點(diǎn)信息而產(chǎn)生該檢測值。
8.如權(quán)利要求7所述的存儲(chǔ)器控制裝置,其中該低密度奇偶校驗(yàn)碼譯碼電路會(huì)依據(jù)該多個(gè)變動(dòng)點(diǎn)信息的至少部分的總合、該多個(gè)變動(dòng)點(diǎn)信息中最大的一第一個(gè)數(shù)的總合、該多個(gè)變動(dòng)點(diǎn)信息中最小的一第二個(gè)數(shù)的總合、及/或該多個(gè)變動(dòng)點(diǎn)信息運(yùn)算后所產(chǎn)生的一次序組數(shù)值的總合做為檢測值。
9.如權(quán)利要求7所述的存儲(chǔ)器控制裝置,其中該多個(gè)變動(dòng)點(diǎn)信息包含有機(jī)率值、似然性值、及/或后驗(yàn)機(jī)率的至少其中之一。
10.如權(quán)利要求7所述的存儲(chǔ)器控制裝置,其中當(dāng)該檢測值大于或等于該譯碼指針時(shí),該低密度奇偶校驗(yàn)碼譯碼電 路會(huì)設(shè)置該存儲(chǔ)器存取電路讀取該第一碼字的軟信息,并且以該第一碼字的軟信息進(jìn)行譯碼運(yùn)算。
11.一種存儲(chǔ)器控制裝置,包含有: 一存儲(chǔ)器存取電路,用以自一個(gè)或多個(gè)存儲(chǔ)器讀取一第一碼字及一第二碼字,該第一碼字及該第二碼字分別包含有多個(gè)編碼位的硬信息;以及 一低密度奇偶校驗(yàn)碼譯碼電路,用以依據(jù)該第一碼字的該多個(gè)編碼位的硬信息進(jìn)行譯碼運(yùn)算; 其中當(dāng)該低密度奇偶校驗(yàn)碼譯碼電路對該第一碼字未能成功譯碼時(shí),該低密度奇偶校驗(yàn)碼譯碼電路會(huì)設(shè)置該存儲(chǔ)器存取電路讀取該第一碼字及該第二碼字的該多個(gè)編碼位的軟信息,并且會(huì)設(shè)置該低密度奇偶校驗(yàn)碼譯碼電路以該第一碼字及該第二碼字的該多個(gè)編碼位的軟信息、或者以該第一碼字及該第二碼字的該多個(gè)編碼位的硬信息及軟信息進(jìn)行譯碼運(yùn)算。
12.如權(quán)利要求11所述的存儲(chǔ)器控制裝置,其中該低密度奇偶校驗(yàn)碼譯碼電路會(huì)依據(jù)該第一碼字的該多個(gè)編碼位的硬信息產(chǎn)生多個(gè)檢查點(diǎn)信息及/或多個(gè)變動(dòng)點(diǎn)信息,以判斷該低密度奇偶校驗(yàn)碼譯碼電路是否譯碼成功。
13.如權(quán)利要求12所述的存儲(chǔ)器控制裝置,其中當(dāng)該多個(gè)變動(dòng)點(diǎn)信息的總和大于一第一默認(rèn)值、該多個(gè)變動(dòng)點(diǎn)信息的總和小于一第二默認(rèn)值、及/或該多個(gè)變動(dòng)點(diǎn)信息的總和與前一段時(shí)間的一變動(dòng)點(diǎn)信息總和之間的差距小于一第三默認(rèn)值時(shí),該低密度奇偶校驗(yàn)碼譯碼電路會(huì)判斷該第一碼字未能成功譯碼。
14.如權(quán)利要求12或13所述的存儲(chǔ)器控制裝置,其中該低密度奇偶校驗(yàn)碼譯碼電路會(huì)依據(jù)該檢查點(diǎn)信息與一奇偶校驗(yàn)矩陣產(chǎn)生一檢測值,當(dāng)該檢測值大于一第四默認(rèn)值時(shí),該低密度奇偶校驗(yàn)碼譯碼電路會(huì)判斷該第一碼字未能成功譯碼。
15.如權(quán)利要求 11所述的存儲(chǔ)器控制裝置,其中該存儲(chǔ)器存取電路讀該第二碼字的時(shí)間與該低密度奇偶校驗(yàn)碼譯碼電路對該第一碼字進(jìn)行譯碼運(yùn)算的時(shí)間至少部分重迭。
16.如權(quán)利要求11所述的存儲(chǔ)器控制裝置,其中該低密度奇偶校驗(yàn)碼譯碼電路會(huì)依據(jù)該第二碼字的該多個(gè)編碼位的硬信息進(jìn)行譯碼運(yùn)算。
17.—種存儲(chǔ)器控制方法,包含有: 讀取一第一碼字的硬信息及一第二碼字的硬信息; 依據(jù)該第一碼字的硬信息進(jìn)行譯碼運(yùn)算; 依據(jù)該第一碼字的硬信息所產(chǎn)生的一檢測值,并將該檢測值與一譯碼指針進(jìn)行比對;以及 依據(jù)該檢測值與該譯碼指針判斷該第一碼字的硬信息是否通過該譯碼指針,若未通過則讀取該第一碼字的軟信息,并且以該第一碼字的軟信息進(jìn)行譯碼運(yùn)算。
18.—種存儲(chǔ)器控制方法,包含有: 自一個(gè)或多個(gè)存儲(chǔ)器讀取一第一碼字及一第二碼字,該第一碼字及該第二碼字分別包含有多個(gè)編碼位的硬信息; 依據(jù)該第一碼字的該多個(gè)編碼位的硬信息進(jìn)行低密度奇偶校驗(yàn)碼的譯碼運(yùn)算;以及 當(dāng)該第一碼字未能成功譯碼時(shí),讀取該第一碼字及該第二碼字的該多個(gè)編碼位的軟信息,并且以該第一碼字及該第二碼字的該多個(gè)編碼位的軟信息、或者以該第一碼字及該第二碼字的該多個(gè)編碼位的硬信息及軟信息進(jìn)行低密度奇偶校驗(yàn)碼的譯碼運(yùn)算。
19.如權(quán)利要求18所述的存儲(chǔ)器控制方法,其中當(dāng)進(jìn)行低密度奇偶校驗(yàn)碼譯碼運(yùn)算時(shí),會(huì)產(chǎn)生多個(gè)檢查點(diǎn)信息及/或多個(gè)變動(dòng)點(diǎn)信息,當(dāng)該多個(gè)變動(dòng)點(diǎn)信息的總和大于一第一默認(rèn)值、該多個(gè)變動(dòng)點(diǎn)信息的總和小于一第二默認(rèn)值、該多個(gè)變動(dòng)點(diǎn)信息的總和與前一段時(shí)間的一變動(dòng)點(diǎn)信息總和之間的差距小于一第三默認(rèn)值、及/或依據(jù)該多個(gè)檢查點(diǎn)信息與一奇偶校驗(yàn)矩陣所產(chǎn)生的一校驗(yàn)值大于一第四默認(rèn)值時(shí),該低密度奇偶校驗(yàn)碼譯碼運(yùn)算會(huì)被判斷為未能成功譯碼。
20.如權(quán)利要求18所述的存儲(chǔ)器控制方法,另包含依據(jù)該第二碼字的該多個(gè)編碼位的硬信息進(jìn)行低密度奇偶校驗(yàn)碼的譯碼運(yùn)算。
全文摘要
本案提出的存儲(chǔ)器控制裝置的實(shí)施例之一,包含有存儲(chǔ)器存取電路及低密度奇偶校驗(yàn)碼譯碼電路。存儲(chǔ)器存取電路會(huì)自存儲(chǔ)器讀取第一碼字及第二碼字的硬信息。低密度奇偶校驗(yàn)碼譯碼電路會(huì)依據(jù)第一碼字的硬信息進(jìn)行譯碼運(yùn)算,當(dāng)?shù)兔芏绕媾夹r?yàn)碼譯碼電路對第一碼字未能成功譯碼時(shí),低密度奇偶校驗(yàn)碼譯碼電路會(huì)設(shè)置存儲(chǔ)器存取電路讀取第一碼字及第二碼字的軟信息,并且會(huì)設(shè)置低密度奇偶校驗(yàn)碼譯碼電路以第一碼字及第二碼字的軟信息進(jìn)行譯碼運(yùn)算。因此,上述的存儲(chǔ)器控制裝置能依據(jù)數(shù)據(jù)錯(cuò)誤的情形而采用適當(dāng)?shù)挠沧g碼搭配軟譯碼的方式以兼顧譯碼能力、能源消耗及數(shù)據(jù)輸出速率。
文檔編號G11C29/42GK103137213SQ20111039363
公開日2013年6月5日 申請日期2011年12月1日 優(yōu)先權(quán)日2011年12月1日
發(fā)明者楊宗杰 申請人:慧榮科技股份有限公司