UA MATH636 信息论9 Reed-Solomon Code
UA MATH636 信息論9 Reed-Solomon Code
- Reed-Solomon Code的構(gòu)造
- 一個(gè)例子
先介紹一類code,maximum distance separable code (MDS code)。考慮一個(gè)(n,k,d)(n,k,d)(n,k,d)-code,之前我們討論的都是ddd最小能是多少,下面來討論一下給定(n,k)(n,k)(n,k)最大的distance能有多少?之所以想要最大的ddd是因?yàn)?span id="ze8trgl8bvbq" class="katex--inline">ddd越大能correct的error就越多。
Singleton Bound給出了線性碼的ddd的上界:d≤n?k+1d \le n-k+1d≤n?k+1
證明
假設(shè)codebook的alphabet size為qqq,則一共有qkq^kqk中不同的code。刪除每一個(gè)code的前d?1d-1d?1個(gè)符號(hào),則剩下的code長(zhǎng)度為n?(d?1)n-(d-1)n?(d?1),根據(jù)ddd的含義,剩下的這個(gè)codebook每?jī)蓚€(gè)code至少也有一個(gè)符號(hào)不同,而長(zhǎng)度為n?(d?1)n-(d-1)n?(d?1)的code最多有qn?(d?1)q^{n-(d-1)}qn?(d?1)種,因此
qk≤qn?(d?1)q^k \le q^{n-(d-1)}qk≤qn?(d?1)
根據(jù)這個(gè)關(guān)系可以得到Singleton Bound。
MDS code就是d=n?k+1d=n-k+1d=n?k+1的code system。
Reed-Solomon Code的構(gòu)造
考慮MDS code (n,k,n?k+1)(n,k,n-k+1)(n,k,n?k+1),滿足k≤n≤pk \le n \le pk≤n≤p。則message vector為
m=[x1,?,xk],xi∈GF(p),i=1,?,km = [x_1,\cdots,x_k],x_i \in GF(p),i=1,\cdots,km=[x1?,?,xk?],xi?∈GF(p),i=1,?,k
我們可以用定義在Galois域上的多項(xiàng)式來表示這個(gè)message:
P(t)=∑i=1kxiti?1P(t) = \sum_{i=1}^k x_i t^{i-1}P(t)=i=1∑k?xi?ti?1
然后我們用這個(gè)多項(xiàng)式來編碼:
c=[c1,?,cn]=[P(0),P(1),?,P(n?1)]c = [c_1,\cdots,c_n] = [P(0),P(1),\cdots,P(n-1)]c=[c1?,?,cn?]=[P(0),P(1),?,P(n?1)]
其實(shí)更一般的,只需要選擇nnn個(gè)不同的數(shù)值就可以了,比如α0,?,αn?1∈GF(p)\alpha_0,\cdots,\alpha_{n-1} \in GF(p)α0?,?,αn?1?∈GF(p)
c=[c1,?,cn]=[P(α0),P(α1),?,P(αn?1)]c = [c_1,\cdots,c_n] = [P(\alpha_0),P(\alpha_1),\cdots,P(\alpha_{n-1})]c=[c1?,?,cn?]=[P(α0?),P(α1?),?,P(αn?1?)]
性質(zhì)1 RS code是線性碼
[P(0),P(1),?,P(n?1)][P(0),P(1),\cdots,P(n-1)][P(0),P(1),?,P(n?1)]可以用message vector乘以Vandermonde矩陣來表示,定義生成矩陣為
G=V(0,1,2,?,n)TG = V(0,1,2,\cdots,n)^TG=V(0,1,2,?,n)T
則
c=mGc = mGc=mG
性質(zhì)2 RS code是MDS code
假設(shè)aaa是P(t)P(t)P(t)的一個(gè)根,則t?at-at?a是P(t)P(t)P(t)的一個(gè)因式。如果P(t)P(t)P(t)有k?1k-1k?1個(gè)根,則P(t)P(t)P(t)的階至少為k?1k-1k?1。現(xiàn)在考慮ddd,它是所有code的Hamming weight的最小值。所以我們要考慮的是c=[P(α0),P(α1),?,P(αn?1)]c=[P(\alpha_0),P(\alpha_1),\cdots,P(\alpha_{n-1})]c=[P(α0?),P(α1?),?,P(αn?1?)]中能有幾個(gè)數(shù)字不為0。因?yàn)?span id="ze8trgl8bvbq" class="katex--inline">P(t)P(t)P(t)的階數(shù)是k?1k-1k?1,也就是說ccc中最多有k?1k-1k?1個(gè)零,也就是說最小的Hamming weight是n?(k?1)n-(k-1)n?(k?1)。
一個(gè)例子
考慮GF(7)GF(7)GF(7)上的(4,2)-RS code,這種code一共有72=497^2 = 4972=49種,它們的生成矩陣是
G=[11110123]G = \left[ \begin{matrix} 1 & 1 & 1 & 1 \\ 0& 1 & 2 & 3 \\ \end{matrix} \right] G=[10?11?12?13?]
假設(shè)message vector是[1,2][1,2][1,2](信源編碼器的輸出),它的RS-code就是
mG=[1350]mG=[1\ 3\ 5\ 0]mG=[1?3?5?0](噪聲信道的輸入)。假設(shè)噪聲信道的輸出為R=[2,3,4,0]R=[2,3,4,0]R=[2,3,4,0],因?yàn)?span id="ze8trgl8bvbq" class="katex--inline">d=n?k+1=3d=n-k+1=3d=n?k+1=3,所以這個(gè)RS-code最多可以改掉(d?1)/2=1(d-1)/2=1(d?1)/2=1個(gè)error,經(jīng)過噪聲信道傳輸后正好出現(xiàn)了一個(gè)error,所以在解碼的時(shí)候這個(gè)error可以被改掉。
總結(jié)
以上是生活随笔為你收集整理的UA MATH636 信息论9 Reed-Solomon Code的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: UA MATH565C 随机微分方程II
- 下一篇: UA MATH636 信息论9 Berl