張羽豐,熊蔚明1,王竹剛1,史毅龍,李炯卉
(1.中國(guó)科學(xué)院 國(guó)家空間科學(xué)中心復(fù)雜航天系統(tǒng)電子信息技術(shù)重點(diǎn)實(shí)驗(yàn)室,北京 101400;2.中國(guó)科學(xué)院大學(xué),北京 101400)
目前,隨著探測(cè)設(shè)備的精度越來(lái)越高,對(duì)大量數(shù)據(jù)實(shí)時(shí)傳輸?shù)囊笠苍絹?lái)越高,通常數(shù)據(jù)量級(jí)在Gbit/s。換句話說(shuō),在有限的帶寬內(nèi),需要更高的信息傳輸速率。然而傳統(tǒng)的單載波系統(tǒng)已經(jīng)無(wú)法滿(mǎn)足這種要求,所以正交頻分復(fù)用(Orthogonal Frequency Division Multiplexing,OFDM)技術(shù)被越來(lái)越多人所關(guān)注。
OFDM技術(shù)的主要思想是將一定帶寬的信道劃分成若干個(gè)相互正交的子信道,每個(gè)子信道可以使用不同的基帶調(diào)制方式,然后將攜帶數(shù)據(jù)的子載波疊加在一起,這樣一個(gè)高速的串行數(shù)據(jù)就轉(zhuǎn)變成了一個(gè)低速的并行數(shù)據(jù)流[1],并能獲得非常高的頻譜利用率和抗頻率選擇性衰落能力[2]。再者,由于在每個(gè)OFDM符號(hào)之前都有一段循環(huán)前綴,只要循環(huán)前綴的持續(xù)時(shí)間長(zhǎng)度大于最大時(shí)延擴(kuò)展,那么就能夠?qū)褂啥鄰皆斐傻姆?hào)間干擾(Inter-symbol Interference,ISI)[3]。所以,利用OFDM技術(shù)來(lái)解決高速傳輸問(wèn)題是一個(gè)非常好的選擇。
針對(duì)OFDM系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)問(wèn)題,文獻(xiàn)[4]以圖像數(shù)據(jù)傳輸為應(yīng)用背景給出了OFDM系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),但是文獻(xiàn)中的設(shè)計(jì)并沒(méi)有對(duì)幀結(jié)構(gòu)和某些功能模塊等進(jìn)行簡(jiǎn)化,而且16正交幅相調(diào)制(16 Quadrature Amplitude Modulation,16QAM)與四相相移鍵控(Quadrature Phase Shift Keying,QPSK)相比而言,實(shí)現(xiàn)起來(lái)也較復(fù)雜;文獻(xiàn)[5]給出了速率可變的OFDM收發(fā)系統(tǒng)的簡(jiǎn)單設(shè)計(jì),也給出了硬件資源的利用率,但是并沒(méi)有給出具體的頻譜利用率和OFDM信號(hào)的頻譜;文獻(xiàn)[6]給出了一個(gè)可重構(gòu)的OFDM系統(tǒng)發(fā)射機(jī)設(shè)計(jì);文獻(xiàn)[7]給出了OFDM基帶處理器的現(xiàn)場(chǎng)可編程門(mén)陣列(Field Programmable Gate Array,FPGA)設(shè)計(jì),但都未給出詳細(xì)的系統(tǒng)設(shè)計(jì)方案。
OFDM系統(tǒng)有著較多的參數(shù),使得OFDM符號(hào)和傳輸幀的設(shè)計(jì)復(fù)雜多樣,訓(xùn)練序列的設(shè)計(jì)更是決定著同步系統(tǒng)的結(jié)構(gòu)。因此,本文提出了一種結(jié)構(gòu)精簡(jiǎn)、復(fù)雜度低、頻譜利用率高且通用性好的OFDM發(fā)射機(jī),并給出了詳細(xì)的設(shè)計(jì)方案。
假定一個(gè)OFDM系統(tǒng)是由N點(diǎn)的快速傅里葉逆變換(Inverse Fast Fourier Transform,IFFT)生成的,則發(fā)送的OFDM時(shí)域的連續(xù)信號(hào)可以表示為
(1)
式中:fc為載波頻率,Δf為子載波間隔。
由此,可以得到OFDM信號(hào)的帶寬為
B=(N+1)·Δf,
(2)
OFDM信號(hào)的持續(xù)時(shí)間為
(3)
為了方便闡述,不妨以傳輸高清圖像為背景來(lái)設(shè)計(jì)OFDM系統(tǒng)。在H.264壓縮標(biāo)準(zhǔn)下,480P、720P和1 080P傳輸速率分別是1.8 Mbit/s、3.5 Mbit/s和8.5 Mbit/s[8],再加上其他冗余等,目標(biāo)信息傳輸速率定為9 Mbit/s。同時(shí),眾多研究證明了LDPC的優(yōu)勢(shì),所以本文所述的設(shè)計(jì)中不妨采用速率為7/8的LDPC編碼,但編碼并不是本文重點(diǎn),所以在這里不詳細(xì)闡述。
OFDM系統(tǒng)的子載波間隔選擇取決于頻譜效率、抗頻偏能力和峰均比的折中。在一定的循環(huán)前綴長(zhǎng)度下,子載波間隔越小,OFDM符號(hào)周期越長(zhǎng),系統(tǒng)頻譜效率越高。但同時(shí),過(guò)小的子載波間隔對(duì)多普勒頻移和相位噪聲過(guò)于敏感,會(huì)影響系統(tǒng)性能。而且,當(dāng)帶寬一定時(shí),如果子載波間隔較小,那么子載波數(shù)量就會(huì)變多,這會(huì)導(dǎo)致大峰均比出現(xiàn)概率增大的問(wèn)題。因此,如果不考慮快速傅里葉變換(Fast Fourier Transform,F(xiàn)FT)的復(fù)雜度,那么子載波間隔的選擇原則應(yīng)該是,在保持足夠的抗頻偏能力的條件下,采用盡可能小的子載波間隔,且大峰均比出現(xiàn)概率可以容忍。所以為了頻譜效率盡可能高,同時(shí)要考慮峰均比的問(wèn)題,本設(shè)計(jì)選取子載波數(shù)量為256。
設(shè)循環(huán)前綴長(zhǎng)度為OFDM符號(hào)長(zhǎng)度的1/M,并且循環(huán)前綴的長(zhǎng)度需要大于多徑時(shí)延的最大值2 μs,再結(jié)合公式(2)和公式(3),所以有下面關(guān)系式:
(4)
當(dāng)M=16時(shí),將N=256代入可以得到B<8.031 25 MHz,考慮到FPGA時(shí)鐘分頻的精度和實(shí)現(xiàn)難度,將帶寬定為B=6 MHz;當(dāng)M=8時(shí),B<16.062 5 MHz,帶寬太大,頻譜利用率不高;當(dāng)M=32時(shí),B<4.015 625 MHz,子載波間隔又太小,所以循環(huán)前綴長(zhǎng)度取1/16較為合適。
由上面的推導(dǎo),OFDM信號(hào)的子載波間隔為
(5)
每個(gè)子載波的帶寬則為
ΔB=2·Δf≈0.046 69 MHz 。
(6)
又因?yàn)樵趲ㄏ到y(tǒng)中每個(gè)子載波的碼元速率為帶寬的一半,所以每個(gè)子載波的碼元速率為
ΔRB=0.023 35 Mbit/s 。
(7)
為了降低接收端判決的復(fù)雜度,本設(shè)計(jì)采用了QPSK調(diào)制,所以每個(gè)子載波的信息傳輸速率為碼元素率的2倍,為
ΔRb=2·ΔRB=0.046 69 Mbit/s 。
(8)
為了滿(mǎn)足接收端內(nèi)采樣頻率同步和剩余相位跟蹤,設(shè)計(jì)有4個(gè)導(dǎo)頻均勻地插在OFDM符號(hào)上。并且,為了減小OFDM信號(hào)對(duì)帶外的干擾和降低后續(xù)數(shù)字濾波的難度,在OFDM符號(hào)的兩端設(shè)置了各6個(gè)空載波。同時(shí),由于信號(hào)需要調(diào)制到高頻上,載波對(duì)應(yīng)的位置上相當(dāng)于一個(gè)直流的影響,不能傳輸信息,所以總共有239個(gè)子載波在傳輸信息。239個(gè)子載波可以獲得的信息傳輸速率為
Rb=239·ΔRb=11.160 Mbit/s ,
(9)
再把循環(huán)前綴、短訓(xùn)練序列和長(zhǎng)訓(xùn)練序列的時(shí)間去掉,則
(10)
最后再乘以LDPC編碼速率7/8,最終能獲得的信息傳輸速率為
(11)
可以滿(mǎn)足要求。
由此可以得到OFDM符號(hào)結(jié)構(gòu),如圖1(a)所示。
圖1 OFDM符號(hào)與傳輸幀結(jié)構(gòu)Fig.1 The OFDM symbol structure and the OFDM transmission frame structure
在硬件實(shí)現(xiàn)過(guò)程中,直接將數(shù)據(jù)拼接成圖1(a)的結(jié)構(gòu)送進(jìn)IFFT運(yùn)算模塊,可以避免重新排序這一步,從而節(jié)省了資源開(kāi)銷(xiāo)。
為了滿(mǎn)足接收端中各個(gè)同步的需求,例如幀檢測(cè)、符號(hào)定時(shí)同步和載波頻率同步,需要在OFDM符號(hào)前插入前導(dǎo)結(jié)構(gòu),這個(gè)前導(dǎo)結(jié)構(gòu)與OFDM符號(hào)就組成了一個(gè)OFDM傳輸幀。本方案設(shè)計(jì)的前導(dǎo)結(jié)構(gòu)為17個(gè)短訓(xùn)練序列和2個(gè)長(zhǎng)訓(xùn)練序列,且它們的持續(xù)時(shí)間總和為3個(gè)OFDM符號(hào)持續(xù)時(shí)間。假設(shè)接收端的移動(dòng)速度并不是很大,那么沒(méi)有必要在每一個(gè)OFDM符號(hào)前插入前導(dǎo)結(jié)構(gòu)。所以,在本方案中選取了160個(gè)OFDM符號(hào)作為數(shù)據(jù)幀,那么OFDM傳輸幀結(jié)構(gòu)如圖1(b)所示。
綜上所述,OFDM系統(tǒng)的主要參數(shù)如表1所示。
表1 OFDM系統(tǒng)的主要參數(shù)Tab.1 The main parameters of the OFDM system
OFDM系統(tǒng)的頂層結(jié)構(gòu)如圖2所示,在這里只詳細(xì)闡述OFDM數(shù)字基帶調(diào)制的實(shí)現(xiàn)方案。
圖2 數(shù)據(jù)傳輸系統(tǒng)的頂層結(jié)構(gòu)Fig.2 The top-level structure of the data transmission system
在OFDM調(diào)制之前,采用QPSK映射將2 bit數(shù)據(jù)映射成各10 bit的I-Q兩路。
OFDM發(fā)射機(jī)的FPGA設(shè)計(jì)框圖如圖3所示。
圖3 OFDM發(fā)射機(jī)的FPGA設(shè)計(jì)框圖Fig.3 The FPGA design diagram of the OFDM transmitter
OFDM調(diào)制模塊如圖4所示。添加訓(xùn)練序列后的I-Q兩路數(shù)據(jù)經(jīng)上變頻后輸出到信道中。其中,I-Q兩路輸出的時(shí)鐘頻率決定了OFDM信號(hào)的帶寬,即時(shí)鐘頻率f2,所以I-Q兩路輸出一組值的時(shí)間是1/f2。又因?yàn)镺FDM符號(hào)由256組數(shù)組成,所以O(shè)FDM符號(hào)持續(xù)時(shí)間為256/f2。由此可以得到OFDM的子載波間隔是f2/256,從而得到OFDM信號(hào)的帶寬為(257×f2)/256≈f2。因?yàn)镺FDM信號(hào)帶寬為6 MHz,所以f2=6 MHz,即圖4中的I-Q兩路輸出的時(shí)鐘頻率。
圖4 OFDM數(shù)字基帶調(diào)制模塊Fig.4 The OFDM digital baseband modulator model
接下來(lái),本文提供了一種等效信源法來(lái)計(jì)算通信系統(tǒng)的信息傳輸速率。在圖5(a)中,F(xiàn)為目標(biāo)信息傳輸速率,即為9 Mbit/s。
首先,計(jì)算編碼的輸出速率。編碼每幀是7 136個(gè)樣本,輸出則為8 192個(gè)樣本,那么等效信源需要加快速率才能使輸出的速率等效于F,需滿(mǎn)足
(12)
相當(dāng)于等效信源以F′速率輸出,每輸出7 136個(gè)時(shí)鐘,斷1 056個(gè)時(shí)鐘,平均輸出速率為F。然后把信源和編碼組合看成一個(gè)等效信源,即圖5(b)。
接著計(jì)算QPSK映射模塊。由于插入空載波、導(dǎo)頻和訓(xùn)練序列需要等待,所以輸入是239個(gè)樣值,輸出是272個(gè)樣值。等效信源的輸出速率需滿(mǎn)足
(13)
因?yàn)榫幋a的輸出是1 bit位寬,而QPSK輸入是2 bit位寬,所以需要再除以2,等效速率
(14)
等效信源如圖5(c)。
對(duì)于經(jīng)過(guò)α=1的成型濾波器的單載波通信系統(tǒng)而言,其頻譜利用率最高為
(15)
式中:M為數(shù)字基帶調(diào)制階數(shù)。相比之下,QPSK的最高頻譜利用率為本設(shè)計(jì)的2/3,再加上同步的需求,頻譜利用率遠(yuǎn)低于本文設(shè)計(jì)的系統(tǒng)。
而在IEEE 802.11a中,QPSK作為數(shù)字基帶調(diào)制的OFDM系統(tǒng),在卷積碼編碼速率為3/4的情況下,頻譜利用率為18 Mbit/s/20 MHz=0.9 bit/s/Hz,可以看出本設(shè)計(jì)的頻譜利用率有了較顯著的提升。
硬件編譯軟件為ISE14.7,仿真軟件為ISIM,硬件平臺(tái)為KC705。由于時(shí)鐘、信源和先進(jìn)先出(First Input First Output,FIFO)模塊的時(shí)序圖相對(duì)簡(jiǎn)單,所以只需要文字闡述即可。
當(dāng)RESET信號(hào)置0時(shí),時(shí)鐘模塊開(kāi)始工作。直到LOCKED信號(hào)拉高時(shí),后面的時(shí)鐘信號(hào)才有效,并且LOCKED信號(hào)當(dāng)作以下所有模塊的復(fù)位信號(hào)。
在初始狀態(tài)下,當(dāng)FIFO中可讀數(shù)據(jù)個(gè)數(shù)大于等于255時(shí)(此處仿真時(shí)設(shè)置為255),QPSK映射模塊開(kāi)始工作,如圖6(a)所示。因?yàn)樾枰粘鲇?xùn)練序列的時(shí)間,所以FIFO的讀使能,即FIFOIP_RDEN信號(hào)為0,且從FIFOIP_RDEN信號(hào)的間隙就可以看出在OFDM信號(hào)中插了4個(gè)導(dǎo)頻和中間16個(gè)空載波。QPSKM_VALID信號(hào)為QPSK的輸出使能,也是IFFT模塊的工作使能輸入。QPSKM_REOUT和QPSKM_IMOUT就是QPSK映射的輸出。
IFFTC_REOUT和IFFTC_IMOUT信號(hào)為IFFT的輸出,ITS_REOUT和ITS_IMOUT信號(hào)是最終的輸出。從圖中可以看到在插入了1組短訓(xùn)練序列和2個(gè)長(zhǎng)訓(xùn)練序列后,數(shù)據(jù)幀開(kāi)始插入。ITS_FRAME信號(hào)是計(jì)算插入短訓(xùn)練序列后OFDM符號(hào)的數(shù)量,當(dāng)有160個(gè)OFDM符號(hào)時(shí),重啟插入訓(xùn)練序列模塊,如圖6(b)所示。
(a)添加訓(xùn)練序列模塊的仿真時(shí)序圖A
(b)添加訓(xùn)練序列模塊的仿真時(shí)序圖B圖6 添加訓(xùn)練序列模塊的仿真時(shí)序圖Fig.6 The sequence diagram after adding training sequence model
圖7為OFDM調(diào)制模塊的資源占用率,可見(jiàn)資源的占用率是非常少的。
圖7 OFDM模塊資源占用率Fig.7 The resource utilization rate of the OFDM model
上板測(cè)試輸出的信號(hào)頻譜見(jiàn)圖8。從圖中可以看出,由于OFDM信號(hào)經(jīng)過(guò)了射頻前的濾波,所以其旁瓣衰減得很快。設(shè)定OFDM信號(hào)頻譜旁瓣下降到較平穩(wěn)的情況下是-30 dB,那么-30 dB帶寬為6 MHz符合本文的設(shè)計(jì)。
圖8 OFDM信號(hào)實(shí)測(cè)頻譜Fig.8 The measured spectrum of the OFDM signal
在加性高斯白噪聲(Additive White Gaussian Noise,AWGN)信道下,使用Matlab2017b對(duì)接收到的OFDM信號(hào)進(jìn)行解調(diào),誤比特率曲線如圖9所示。由圖可見(jiàn),本文設(shè)計(jì)的OFDM系統(tǒng)誤比特率在15 dB處降至10-5。
圖9 在AWGN信道下,OFDM系統(tǒng)誤比特率Fig.9 The BER of the OFDM system under AWGN channel
本文從性能和指標(biāo)出發(fā),設(shè)計(jì)了全新的OFDM符號(hào)結(jié)構(gòu)和傳輸幀結(jié)構(gòu),又通過(guò)框圖的形式給出了OFDM數(shù)字基帶調(diào)制模塊的設(shè)計(jì)過(guò)程,最終得到了ISE14.7軟件的仿真結(jié)果,即上板調(diào)試后輸出的OFDM信號(hào)頻譜和AWGN信道下的誤比特率曲線。該設(shè)計(jì)去掉了重新排序模塊,最大程度上降低了系統(tǒng)的復(fù)雜度。同時(shí),采用QPSK映射降低了接收端的判決復(fù)雜度。在傳輸效率方面,獲得了頻譜利用率為1.5 bit/s/Hz的性能,遠(yuǎn)高于傳統(tǒng)的QPSK單載波系統(tǒng)。因此,本文設(shè)計(jì)的OFDM發(fā)射機(jī)結(jié)構(gòu)精簡(jiǎn),復(fù)雜度低,傳輸效率高,且通用性好。
接收端的設(shè)計(jì)是由各個(gè)同步算法來(lái)決定的。然而OFDM同步算法分時(shí)域和頻域,是由在OFDM解調(diào)前完成還是解調(diào)后完成來(lái)定義的,有的算法在時(shí)域中完成很復(fù)雜,有的卻在頻域中很復(fù)雜。例如符號(hào)定時(shí)同步算法,其目的是為了獲取OFDM解調(diào)中FFT的起始時(shí)刻,如果在頻域中實(shí)現(xiàn)的話,需要多做一次FFT運(yùn)算,不僅增加了計(jì)算量,而且輸出的延遲也會(huì)增大,導(dǎo)致浪費(fèi)很多的硬件資源。所以在設(shè)計(jì)接收端時(shí),將會(huì)按照這樣的思路來(lái)簡(jiǎn)化各個(gè)同步模塊,以達(dá)到降低復(fù)雜度的目的。同時(shí),再對(duì)公式進(jìn)行變換與簡(jiǎn)化,以減少乘法與除法運(yùn)算次數(shù),減少硬件資源的開(kāi)銷(xiāo)。