1.一種基于Nand Flash的LDPC獲取軟信息譯碼方法,其特征在于,包括以下步驟:
1)獲取K個(gè)信息比特cm,m=1,2,...,K,K為信息比特長度,K位信息比特cm經(jīng)LDPC編碼得到N位編碼后的碼字xi,
xi=cm×G
其中,G為K×N的LDPC生成矩陣,i=1,2,...,N;
2)確定檢錯(cuò)碼的維度w、檢錯(cuò)碼的類型,對N位的碼字xi進(jìn)行分行列分塊生成相應(yīng)的檢錯(cuò)碼p1,p2,...,pw;
3)將N位的LDPC編碼后的碼字xi和檢錯(cuò)碼pt,t=1,2,...,w整個(gè)比特序列{xi|p1|p2|...|pw}寫入Nand Flash;
4)從Nand Flash獲取經(jīng)過硬判決的N位碼字Yi={0,1},i=1,2,...,N和檢錯(cuò)碼pt,按照檢錯(cuò)碼的維度w、檢錯(cuò)碼的類型對Yi進(jìn)行分行列分塊檢錯(cuò),得到各維度的檢錯(cuò)信息Q1,Q2,...,Qw;
5)通過對各維度的檢錯(cuò)信息Q1,Q2,...,Qw進(jìn)行分析,對N位碼字Yi={0,1}的每一位比特按可靠程度Dj,j=1,2,3,...,2w進(jìn)行劃分,給予相應(yīng)的軟信息yi,i=1,2,...,N;不同可靠程度Dj都有一個(gè)相對應(yīng)的基準(zhǔn)值Drefj,j=1,2,3,...,2w;在基準(zhǔn)值基礎(chǔ)上再加上一個(gè)隨機(jī)偏移量Ri,i=1,2,...,N,模擬實(shí)際的軟信息輸入;其中,軟信息yi計(jì)算如下:
6)對N位的軟信息yi進(jìn)行軟判決迭代譯碼,每次迭代譯碼得到N位的譯碼結(jié)果zi,i=1,2,...,N,譯碼正確或者達(dá)到最大的迭代次數(shù)則跳到下面步驟7);若譯碼迭代次數(shù)達(dá)到預(yù)先設(shè)置的閾值f,則將N位zi替換Yi,回到上面步驟4),更新生成檢錯(cuò)信息Q1,Q2,...,Qw,進(jìn)而更新軟信息yi,重新迭代譯碼;
7)輸出譯碼結(jié)果zi,結(jié)束譯碼。
2.一種基于Nand Flash的編譯碼器,包括編碼部分和譯碼部分,其特征在于:
所述編碼部分包括:
LDPC編碼單元,將輸入的K位信息進(jìn)行編碼,得到包含檢驗(yàn)信息的N位碼字;
檢錯(cuò)碼生成單元,將N位的碼字按照選擇的維度w進(jìn)行分塊并生成相應(yīng)的檢錯(cuò)碼,然后將N位的碼字和檢錯(cuò)碼傳輸給Nand Flash;
所述譯碼部分包括:
檢錯(cuò)單元,將從Nand Flash得到的N位碼字和檢錯(cuò)碼按照選擇的維度w進(jìn)行相應(yīng)的檢錯(cuò),得到每個(gè)維度的檢錯(cuò)信息;
軟信息單元,通過多維檢錯(cuò)信息自適應(yīng)地對碼字的每一位產(chǎn)生相應(yīng)的軟信息以更新軟信息;
LDPC譯碼單元,接收軟信息單元的軟信息進(jìn)行軟判決迭代譯碼,并進(jìn)行校驗(yàn)判決輸出或者返回給檢錯(cuò)單元。