碼率兼容rs碼譯碼器的制造方法
【專利摘要】本發(fā)明提出的一種碼率兼容RS碼譯碼器,旨在提供一種可節(jié)省大量硬件資源的RS碼譯碼器。本發(fā)明通過下述技術(shù)方案予以實(shí)現(xiàn):輸入緩存與控制電路根據(jù)譯碼器接收到的數(shù)據(jù)幀頭信號(hào)和1~8可選交織深度參數(shù)的控制,將接收到的一幀待譯碼數(shù)據(jù)存入到一個(gè)塊隨機(jī)存儲(chǔ)器BlockRAM1中,同時(shí)通過寫地址和讀地址將數(shù)據(jù)處理成適合碼字譯碼器需要的數(shù)據(jù)形式,輸出到兩個(gè)不同碼字譯碼器并聯(lián)組成的碼字譯碼器電路中,將兩種不同碼率的RS碼譯碼器兼容到一起,給出譯碼起始控制信號(hào)和解交織后的待譯碼數(shù)據(jù),碼字選擇器選擇其中一個(gè)碼字譯碼器的譯碼結(jié)果輸出到輸出緩存與控制電路,按一定的規(guī)則將譯碼后數(shù)據(jù)存入到另一個(gè)塊隨機(jī)存儲(chǔ)器BlockRAM2中,輸出交織后的譯碼數(shù)據(jù)和幀頭標(biāo)志信號(hào)。
【專利說明】碼率兼容RS碼譯碼器
[0001]【技術(shù)領(lǐng)域】
本發(fā)明涉及一種主要用于可靠數(shù)字傳輸空間信道糾錯(cuò)的碼率兼容RS譯碼器的硬件設(shè)計(jì)方法。
【背景技術(shù)】
[0002]R S碼是差錯(cuò)控制領(lǐng)域中一類重要的線性分組碼,由于具有很強(qiáng)的糾隨機(jī)錯(cuò)和突發(fā)錯(cuò)的能力,RS碼在糾正隨機(jī)符號(hào)錯(cuò)誤和隨機(jī)突發(fā)錯(cuò)誤方面非常有效,因而被廣泛應(yīng)用于各種差錯(cuò)控制系統(tǒng)中,在高可靠通信和數(shù)據(jù)存貯領(lǐng)域得到廣泛的應(yīng)用,以進(jìn)行差錯(cuò)控制,且已被NASA、ESA、CCSDS等空間組織接受,用于空間信道糾錯(cuò)。為了減小譯碼器的時(shí)延,提高了譯碼的速率,現(xiàn)有技術(shù)符合CCSDS標(biāo)準(zhǔn)的RS (255,223)碼譯碼器的硬件實(shí)現(xiàn)結(jié)構(gòu),使用了 Verilog語(yǔ)言,8位并行時(shí)域譯碼算法,無(wú)逆BM迭代譯碼算法,錢搜索算法和Fomey算法,采用三級(jí)流水線結(jié)構(gòu),將適合計(jì)算機(jī)仿真計(jì)算的算法轉(zhuǎn)換成適合硬件實(shí)現(xiàn)的結(jié)構(gòu),完成譯碼器的設(shè)計(jì)與實(shí)現(xiàn)。但現(xiàn)有RS碼譯碼器無(wú)法將多個(gè)不同碼率的譯碼器高效的兼容到一起,如圖2所示,對(duì)于每一個(gè)RS碼譯碼器,需要多個(gè)輸入輸出存儲(chǔ)器,且需要單獨(dú)的解交織和交織電路,浪費(fèi)了大量的硬件資源。
【發(fā)明內(nèi)容】
[0003]為了克服現(xiàn)有RS碼譯碼器電路存在的上述缺陷,本發(fā)明的目的是提供一種可節(jié)省大量硬件資源的碼率兼容RS碼譯碼器。該譯碼器電路能夠有效的將兩個(gè)RS碼譯碼器兼容到一起,巧妙地利用BlockRAM的讀寫地址進(jìn)行解交織和交織,且整個(gè)譯碼器僅需要兩個(gè)BlockRAM,以解決將多個(gè)不同碼率的譯碼器高效的兼容到一起的問題,使得硬件資源利用率大大提高。
[0004]本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:一種碼率兼容RS碼譯碼器,包括,輸入緩存與控制電路、碼字譯碼器電路和輸出緩存與控制電路,其特征在于:輸入緩存與控制電路根據(jù)譯碼器接收到的數(shù)據(jù)幀頭信號(hào)和I?8可選交織深度參數(shù)的控制,將接收到的一幀待譯碼數(shù)據(jù)存入到一個(gè)塊隨機(jī)存儲(chǔ)器BlockRAMl中,同時(shí)通過寫地址和讀地址將數(shù)據(jù)處理成適合碼字譯碼器需要的數(shù)據(jù)形式,輸出到兩個(gè)不同碼字譯碼器并聯(lián)組成的碼字譯碼器電路中,將兩種不同碼率的RS碼譯碼器兼容到一起,給出譯碼起始控制信號(hào)和解交織后的待譯碼數(shù)據(jù),碼字選擇器選擇其中一個(gè)碼字譯碼器的譯碼結(jié)果輸出到輸出緩存與控制電路,按一定的規(guī)則將譯碼后數(shù)據(jù)存入到另一個(gè)塊隨機(jī)存儲(chǔ)器BlockRAM2中,輸出交織后的譯碼數(shù)據(jù)和幀頭標(biāo)志信號(hào)。
[0005]本發(fā)明相比于現(xiàn)有技術(shù)具有如下有益效果:
本發(fā)明將CCSDS標(biāo)準(zhǔn)中RS (255,223),RS (255,239)兩種碼率的RS碼兼容到一起,通過輸入輸出控制部分結(jié)合存儲(chǔ)單元的巧妙利用,實(shí)現(xiàn)了解交織及交織的功能,且使得輸入緩存和輸出緩存分別只需要一個(gè)塊隨機(jī)存儲(chǔ)器BlockRAM。整個(gè)譯碼器僅需要兩個(gè)塊隨機(jī)存儲(chǔ)器BlockRAM,節(jié)省了大量存儲(chǔ)和邏輯資源,有效解決了多個(gè)RS碼譯碼器兼容到一起需要占用大量硬件資源的困難。
[0006]本發(fā)明利用BlockRAM的讀寫地址進(jìn)行解交織和交織,將兩個(gè)RS碼譯碼器兼容到一起,克服了現(xiàn)有技術(shù)RS碼譯碼器不能將多個(gè)不同碼率的譯碼器兼容到一起,需要多個(gè)輸入輸出存儲(chǔ)器,且需要單獨(dú)的解交織和交織電路,浪費(fèi)大量硬件資源的不足。
[0007]利用本發(fā)明,將輸入緩存和輸出緩存的BlockRAM存儲(chǔ)空間各增大一倍,利用乒乓操作的原理還可以實(shí)現(xiàn)RS碼的連續(xù)譯碼。
【專利附圖】
【附圖說明】
[0008]下面結(jié)合附圖和實(shí)施例對(duì)本專利進(jìn)一步說明。
[0009]圖1是本發(fā)明碼率兼容RS譯碼器組成框圖。
[0010]圖2是現(xiàn)有技術(shù)RS譯碼器的電路原理框圖。
【具體實(shí)施方式】
[0011]在圖1描述的碼率兼容RS碼譯碼器的實(shí)施例中,碼率兼容RS譯碼器硬件電路主要由3部分組成,輸入緩存與控制部分、碼字譯碼器部分、輸出緩存與控制部分。輸入緩存與控制部分實(shí)現(xiàn)輸入數(shù)據(jù)的緩存與解交織,并將數(shù)據(jù)處理成適合碼字譯碼器需要的數(shù)據(jù)形式輸出到碼字譯碼器,碼字譯碼器部分由不同碼字的譯碼器組成,輸出緩存與控制部分將譯碼器輸出的譯碼結(jié)果緩存并按要求輸出。具體地說,碼率兼容RS譯碼器主要由輸入緩存與控制電路、碼字譯碼器電路、輸出緩存與控制電路組成,其中,輸入緩存與控制電路根據(jù)接收到的數(shù)據(jù)幀頭信號(hào)和交織深度(I~8可選)參數(shù)的控制,將接收到的一幀待譯碼數(shù)據(jù)存入到一個(gè)塊隨機(jī)存儲(chǔ)器BlockRAMl中,通過寫地址和讀地址將CCSDS標(biāo)準(zhǔn)中RS(255,223),RS (255,239)兩種碼率兼容到一起,交織深度I~8可控,靈活應(yīng)用實(shí)現(xiàn)解交織,碼字選擇器選擇其中一個(gè)碼字譯碼器的譯碼結(jié)果輸出到輸出緩存與控制電路,按一定的規(guī)則將譯碼后數(shù)據(jù)存入到BlockRAM2中,將解交織后的待譯碼數(shù)據(jù)輸出并給出譯碼起始等控制信號(hào)。
[0012]碼字譯碼器電路由CCSDS標(biāo)準(zhǔn)中RS (255,223)和RS (255,239)兩個(gè)并聯(lián)譯碼器組成,每個(gè)譯碼器僅實(shí)現(xiàn)一個(gè)長(zhǎng)度為255字節(jié)的待譯碼數(shù)據(jù)的譯碼功能,這兩個(gè)譯碼器的實(shí)現(xiàn)可以調(diào)用FPGA中的IPcore,也可以自己編程實(shí)現(xiàn),兩個(gè)譯碼器譯碼完成后通過碼字選擇參數(shù)和相關(guān)控制信號(hào),選擇其中一個(gè)碼字譯碼器的譯碼結(jié)果輸出到輸出緩存與控制電路。
[0013]存儲(chǔ)待譯碼數(shù)據(jù)時(shí),存儲(chǔ)待譯碼數(shù)據(jù)的一個(gè)塊隨機(jī)存儲(chǔ)器BlockRAMl按最大支持交織深度(8)的幀長(zhǎng)長(zhǎng)度開辟存儲(chǔ)空間,輸入的待譯碼數(shù)據(jù)按0,I,…k,8,9,…
8+k, 16,17...16+k,......,254*8,254*8+1…254*8+k的寫地址順序進(jìn)行存儲(chǔ),在讀出譯碼數(shù)
據(jù)時(shí)按照O, 8,16,...254*8,I, 9,...254*8+1,……,k, k+8,…254*8+k的讀地址順序讀出待譯碼數(shù)據(jù)送到碼字譯碼器中,其中,k為實(shí)際交織深度。
[0014]在碼率兼容RS碼譯碼器中,碼字譯碼器電路由CCSDS標(biāo)準(zhǔn)中RS (255,223)和RS(255,239)譯碼器組成,每個(gè)譯碼器僅實(shí)現(xiàn)一個(gè)長(zhǎng)度為255字節(jié)的待譯碼數(shù)據(jù)的譯碼功能,這兩個(gè)碼字譯碼器可以調(diào)用FPGA中的IPcore,也可以自己編程實(shí)現(xiàn),兩個(gè)譯碼器譯碼結(jié)束后通過碼字選擇參數(shù)和相關(guān)控制信號(hào)將其中一個(gè)譯碼器的譯碼結(jié)果送出。[0015]碼率兼容RS碼譯碼器中,輸出緩存與控制電路接收到碼字譯碼器輸出的譯碼后數(shù)據(jù)及控制信號(hào)后,按一定的規(guī)則將譯碼后數(shù)據(jù)存入到BlockRAM2中,并通過寫地址和讀地址的靈活應(yīng)用實(shí)現(xiàn)交織功能,然后將交織后的譯碼后數(shù)據(jù)和幀頭等信號(hào)輸出。
[0016]存儲(chǔ)譯碼后的數(shù)據(jù)時(shí),存儲(chǔ)譯碼后數(shù)據(jù)的BlockRAM2按最大支持的交織深度的數(shù)據(jù)幀長(zhǎng)長(zhǎng)度開辟存儲(chǔ)空間,輸入的譯碼后數(shù)據(jù)按0,8,16,...254*8,1,9,...254*8+1,……,k, k+8,…254*8+k的寫地址順序進(jìn)行存儲(chǔ),在讀出譯碼數(shù)據(jù)時(shí)按照O, I,…k,8,9,...8+k, 16,17...16+k,......,254*8,254*8+1…254*8+k的讀地址順序讀出譯碼后數(shù)據(jù)輸出,其
中,k為交織深度。上述電路可以在可編程門陣列芯片F(xiàn)PGA芯片中實(shí)現(xiàn),也可在ASIC芯片中實(shí)現(xiàn),其結(jié)構(gòu)簡(jiǎn)單,占用硬件資源較少。
[0017]本發(fā)明 中包括但不限于CCSDS標(biāo)準(zhǔn)中RS (255,223),RS (255,239)兩種碼率的RS
碼譯碼器。
【權(quán)利要求】
1.一種碼率兼容RS碼譯碼器,包括,輸入緩存與控制電路、碼字譯碼器電路和輸出緩存與控制電路,其特征在于:輸入緩存與控制電路根據(jù)譯碼器接收到的數(shù)據(jù)幀頭信號(hào)和I~8可選交織深度參數(shù)的控制,將接收到的一幀待譯碼數(shù)據(jù)存入到一個(gè)塊隨機(jī)存儲(chǔ)器BlockRAMl中,同時(shí)通過寫地址和讀地址將數(shù)據(jù)處理成適合碼字譯碼器需要的數(shù)據(jù)形式,輸出到兩個(gè)不同碼字譯碼器并聯(lián)組成的碼字譯碼器電路中,將兩種不同碼率的RS碼譯碼器兼容到一起,給出譯碼起始控制信號(hào)和解交織后的待譯碼數(shù)據(jù),碼字選擇器選擇其中一個(gè)碼字譯碼器的譯碼結(jié)果輸出到輸出緩存與控制電路,按一定的規(guī)則將譯碼后數(shù)據(jù)存入到另一個(gè)塊隨機(jī)存儲(chǔ)器BlockRAM2中,輸出交織后的譯碼數(shù)據(jù)和幀頭標(biāo)志信號(hào)。
2.按權(quán)利要求1所述碼率兼容RS碼譯碼器,其特征在于:碼字譯碼器電路由CCSDS標(biāo)準(zhǔn)中RS (255,223)和RS (255,239)兩個(gè)并聯(lián)譯碼器組成,每個(gè)譯碼器僅實(shí)現(xiàn)一個(gè)長(zhǎng)度為.255字節(jié)的待譯碼數(shù)據(jù)的譯碼功能,兩個(gè)譯碼器譯碼完成后通過碼字選擇參數(shù)和相關(guān)控制信號(hào),選擇其中一個(gè)碼字譯碼器的譯碼結(jié)果輸出到輸出緩存與控制電路。
3.按權(quán)利要求1或2所述的碼率兼容RS碼譯碼器,其特征在于:存儲(chǔ)待譯碼數(shù)據(jù)時(shí),存儲(chǔ)待譯碼數(shù)據(jù)的一個(gè)塊隨機(jī)存儲(chǔ)器BlockRAMl按最大支持交織深度8的幀長(zhǎng)長(zhǎng)度開辟存儲(chǔ)空間,輸入的待譯碼數(shù)據(jù)按 O, I,…k,8,9,…8+k,16,17...16+k,......,254*8,254*8+1...254*8+k的寫地址順序進(jìn)行存儲(chǔ),在讀出譯碼數(shù)據(jù)時(shí)按照0,8,16,…254*8,I, 9,…254*8+1,……,k, k+8,…254*8+k的讀地址順序讀出待譯碼數(shù)據(jù)送到碼字譯碼器中,其中,k為交織深度。
4.權(quán)利要求1或2所述的輸入緩存與控制電路,其特征在于:存儲(chǔ)譯碼后的數(shù)據(jù)時(shí),存儲(chǔ)譯碼后數(shù)據(jù)的BlockR AM2按最大支持交織深度8的數(shù)據(jù)幀長(zhǎng)長(zhǎng)度開辟存儲(chǔ)空間,輸入譯碼后數(shù)據(jù)按 0,8,16,...254*8,1,9,...254*8+1,......,k, k+8,...254*8+k 寫地址的順序進(jìn)行存儲(chǔ),在讀出譯碼數(shù)據(jù)按照O, I,…k,8,9,- 8+k, .16,17-16+k,……,254*8,254*8+1...254*8+k的讀地址順序讀出譯碼后數(shù)據(jù)輸出。
5.按權(quán)利要求1或者2所述的碼率兼容RS碼譯碼器,其特征在于:將輸入緩存和輸出緩存的BlockRAM存儲(chǔ)空間各增大一倍,利用乒乓操作的原理實(shí)現(xiàn)RS碼的連續(xù)譯碼。
【文檔編號(hào)】H03M13/15GK103795425SQ201410040721
【公開日】2014年5月14日 申請(qǐng)日期:2014年1月27日 優(yōu)先權(quán)日:2014年1月27日
【發(fā)明者】薛麗 申請(qǐng)人:中國(guó)電子科技集團(tuán)公司第十研究所