基于FPGA的MFSK調(diào)制電路設計與仿真
摘要:數(shù)字調(diào)制解調(diào)技術(shù)在數(shù)字通信中占有非常重要的地位,數(shù)字通信技術(shù)與FPGA的結(jié)合是現(xiàn)代通信系統(tǒng)發(fā)展的一個必然趨勢。文中介紹了MFSK調(diào)制解調(diào)的原理,并基于FPGA實現(xiàn)了MFSK調(diào)制電路,仿真結(jié)果表明了該設計的正確性。
關鍵詞:MFSK;FPGA;調(diào)制;解調(diào)
數(shù)字信號傳輸系統(tǒng)分為基帶傳輸系統(tǒng)和頻帶傳輸系統(tǒng).頻帶傳輸系統(tǒng)也叫數(shù)字調(diào)制系統(tǒng)。數(shù)字調(diào)制信號又稱為鍵控信號,數(shù)字調(diào)制過程中處理的是數(shù)字信號,而載波有振幅、頻率和相位3個變量,且二進制的信號只有高低電平兩個邏輯量1和0,所以調(diào)制的過程可用鍵控的方法由基帶信號對載頻信號的振幅、頻率及相位進行調(diào)制,最基本的方法有3種:正交幅度調(diào)制(QAM)、頻移鍵控(FSK)、相移鍵控(PSK).根據(jù)所處理的基帶信號的進制不同分為二進制和多進制調(diào)制(M 進制).多進制數(shù)字調(diào)制與二進制相比,其頻譜利用率更高。本文研究了基于FPGA的MFSK(多頻鍵控)調(diào)制電路的實現(xiàn)方法,并給出了MAX+PLUSII環(huán)境下的仿真結(jié)果。
1 MFSK簡介
MFSK系統(tǒng)是2FSK(二頻鍵控)系統(tǒng)的推廣,該系統(tǒng)有M個不同的載波頻率可供選擇,每一個載波頻率對應一個M進制碼元信息,即用多個頻率不同的正弦波分別代表不同的數(shù)字信號,在某一碼元時間內(nèi)只發(fā)送其中一個頻率。MFSK信號可表示為:
為載波角頻率,通常采用相位不連續(xù)的振蕩頻率,這樣便于利用合成器來提供穩(wěn)定的信號頻率。圖1 為MFSK系統(tǒng)的原理框圖。在發(fā)送端,輸入的二進制碼元經(jīng)過邏輯電路和串/并變換電路轉(zhuǎn)換為M進制碼元,每k位二進制碼分為一組,用來選擇不同的發(fā)送頻率。在接收端,當某一載波頻率到來時,只有相應頻率的帶通濾波器能收到信號,其它帶通濾波器輸出的都是噪聲。抽樣判決器的任務就是在某一時刻比較所有包絡檢波器的輸出電壓,通過選擇最大值來進行判決。將最大值輸出就得到一個M進制碼元,然后,再經(jīng)過邏輯電路轉(zhuǎn)換成k位二進制并行碼,再經(jīng)過并/串變換電路轉(zhuǎn)換成串行二進制碼,從而完成解調(diào)過程。
圖1 MFSK系統(tǒng)原理框圖
2 MFSK調(diào)制電路的FPGA實現(xiàn)
2.1 基于FPGA的MFSK調(diào)制電路方框圖
調(diào)制電路方框圖如圖2所示。基帶信號通過串/并轉(zhuǎn)換得到2位并行信號;四選一開關根據(jù)兩位并行信號選擇相應的載波輸出(例中M取4)。
圖2 MFSK調(diào)制電路方框圖
2.2 MFSK調(diào)制電路VHDL程序
調(diào)制電路VHDL關鍵代碼如下:
entity MFSK is
port(clk :in std_logic; --系統(tǒng)時鐘
start :in std_logic; --開始調(diào)制信號
x :in std_logic; --基帶信號
y :out std_logic); --調(diào)制信號
end MFSK;
architecture behav of MFSK is
signal q :integer range 0 to 15; --計數(shù)器
signal f :std_logic_vector(3 downto 0); --分頻器
signal xx:std_logic_vector(1 downto 0); --寄存輸入信號x的2位寄存器
signal yy:std_logic_vector(1 downto 0); --寄存xx信號的寄存器
begin
process(clk) --此進程過對clk進行分頻,得到4種載波信號f3、f2、 f1、f0。
begin
if clk'event and clk='1' then
if start='0' then f="0000";
elsif f="1111" then f="0000";
else f=f+1;
end if;
end if;
end process;
process(clk) --對輸入的基帶信號x進行串/并轉(zhuǎn)換,得到2位并行信號的yy
begin
if clk'event and clk='1' then
if start='0' then q=0;
elsif q=0 then q=1;xx(1)=x;yy=xx;
elsif q=8 then q=9;xx(0)=x;
else q=q+1;
end if;
end if;
end process;
process(clk,yy) --此進程完成對輸入基帶信號x的MFSK調(diào)制
begin
if clk'event and clk='1' then
if start='0' then y='0'; -- if語句完成2位碼并行碼到4種載波的選通
elsif yy="00" then y=not f(3);
elsif yy="01" then y=not f(2);
elsif yy="10" then y=not f(1);
else y=not f(0);
end if;
end if;
end process;
end behav;
2.3 仿真結(jié)果
MAX+PLUSII環(huán)境下的仿真結(jié)果如圖3所示。
圖3 MFSK調(diào)制程序仿真結(jié)果
注:中間信號yy與輸出調(diào)制信號y的對應關系:“00”=f3;“01”=f2;“10”=f1;“11”=f0。
3 結(jié)束語
多進制數(shù)字調(diào)制技術(shù)與FPGA的結(jié)合使得通信系統(tǒng)的性能得到了迅速的提高。本文基于FPGA實現(xiàn)了MFSK調(diào)制電路部分,限于篇幅,沒有對解調(diào)部分的電路進行討論。在實際應用中,完全可以把調(diào)制部分和解調(diào)部分電路都集成到一片F(xiàn)PGA芯片內(nèi),這樣即提高了FPGA內(nèi)部結(jié)構(gòu)的利用率,又可以降低系統(tǒng)的成本。
參考文獻:
[1] 張學平,王應生等.基于FPGA的OQPSK解調(diào)器的設計與實現(xiàn)[J].微計算機信息,2006,第4-2期:155-157
[2] 黃智偉.FPGA系統(tǒng)設計與實踐[M].北京:電子工業(yè)出版社,2005
[3] 董在望.通信電路原理[M].北京:高等教育出版社,2002
評論