天天看點

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?
fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?

FPGA怎麼學?點選藍字關注我們

1

FSK信号的調制原理

數字頻率調制是利用載波的頻率傳輸資訊的一種調制方式,FSK是在ASK之後出現的一種調制方式,抗衰落能力較強,在一些衰落信道中應用廣泛。

數字頻移鍵控(FSK)是用載波的頻率來傳遞數字資訊,符号1對應某個載頻,符号0對應某個載頻,頻率之間的改變瞬間完成的,根據碼元轉換時刻的載波相位特征,可以分為連續相位FSK和非連續相位FSK,最簡單的是二進制頻移鍵控(2FSK),如下是連續相位的2FSK信号的波形。

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?

波形

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?

分别用來傳輸數字1和0,信号可以看成是載頻為f1和f2的兩個振幅鍵控信号的合成,2FSK信号可表示為:

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?

式中,A是載波的振幅,Tb為數字碼元的周期,{bn}為傳送的數字序列為bn的反碼.

2

FSK調制信号的MATLAB仿真

在matlab中仿真具有連續相位的2FSK調制信号:

調制指數為3.5。即兩個頻點以載波為中心,間隔為3.5*Rb=3.5MHz。

基帶信号符号速率Rb =1MHz。

 載波信号頻率fc =6MHz。

采樣頻率fs =32*Rb。

Matlab提供了專門的FSK信号調制函數fskmod(),隻需要設定幾個參數就可以産生所需排程以及相位特征的FSK信号。

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?

如下可以看到産生的FSK信号,并且兩個頻率确實相差3.5MHz,其中時域的波形隻截取了一部分顯示。

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?

3

FSK調制信号的FPGA實作

在matlab中可以使用。現成的FSK函數,快速産生FSK調制信号,在FPGA中卻不會有這樣友善的函數使用,如下是産生2FSK信号的原理框圖

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?

2FSK信号原理框圖

兩種方法都可以實作,但是第二種所需要更少的邏輯資源,更具有性能優勢,這裡采用一個DDS核實作連續相位的FSK,需要使得DDS輸出信号的頻率可以配置,是以需要将DDS的“Phase Increment Programmability”選中“Streaming”,輸出位寬選擇16bit。根據輸入資料data_in的高低電平狀态,分别設定DDS核的頻率調制輸入信号的相位增量值,得到需要的信号。

根據DDS工作原理

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?

式中fout為輸出頻率,fclk為系統時鐘頻率,

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?

為相位增量位寬,例如:

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?

計算得到相位增量,編寫完成整個系統的Verilog HDL代碼後,經測試,仿真如下:

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?

從圖中可以看到輸出信号在符号跳變時刻仍然保持了信号相位的連續性。

❤ -MYMINIEYE2015- 編輯 | GUOGUO 如涉及版權問題請及時聯系我們 |用溫暖和感動為你講述MYMINIEYE開發闆故事| 投稿郵箱 | [email protected]

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?
fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?

 點“在看”給小編加雞腿

fpga資料位寬截取_【通信篇】FPGA中FSK調制怎麼做?