【正文】
常成功,基帶信號的調(diào)制很理想,其解調(diào)也 很完美,調(diào)制前與解調(diào)后波形完全一致。 至此,基于 FPGA 的 2FSK 調(diào)制解調(diào)設計全部結束。 24 參 考 文 獻 [1]徐志軍,徐光輝 CPLD/FPGA 的開發(fā)與應用 電子工業(yè)出版社, 2021 [2]劉凌 胡永生 數(shù)字信號處理的 FPGA 實現(xiàn) 清華大學出版社, 2021 25 [3]Hans Gustat . Frank Herzel Integrated FSK demodulator with very high sensitivity 2021 [4]周 昊,宋文濤,羅漢文 一種基于DDS的軟件無線電調(diào)制方案 清華大學出版社 2021 [5]褚振勇,翁木云 FPGA 設計及應用 西安電子科大出版社 2021 [6]羅衛(wèi)兵、孫樺、張捷,通信系統(tǒng)仿真設計,西安電子科技大學出版社, 2021 [7]郝莉、賈蓓莉,現(xiàn)代通信原理, 2021 [8]隗永安 現(xiàn)代通信原理 西南交通大學出版社 2021 [9]丁玉美 高西全,數(shù)字信號處理,西安電子科大出版社, 2021 [10]樊昌信等,通信原理(第 5 版)哈爾濱工業(yè)出版社, 2021 [11]黃再銀 . FPGA 的工作原理及其應用 .電子 世界, 2021 [12]Michael Digital Design With the Verilog HDL,Publishing house of electronics industry 2021 [13]王金明 .數(shù)字系統(tǒng)設計與 Verilog HDL. 電子工業(yè)出版社, 2021 [14]譚會生,張昌凡 .EDA 技術及應用 . 西安電子科技大學出版社, 2021 [15]PAN Song Application foreground of CPLD/FPGA in electron designon technology apply Publishing house of electronics industry 2021 [16]LU will gradualy replace ASICand ASSP[J].Electron production world, 2021 [17]楊守良 .Matlab/Simulink 在 FPGA 設計中的應用 .微計算機信息報 2021 [18]陳華鴻頻移鍵控 (FSK)及其最新應用 2021 [19]段吉海 .黃智偉基于 CPLD/FPGA 的數(shù)字通信系統(tǒng)建模與設計 2021 [20]徐慧 .徐鋒 2FSK 信號產(chǎn)生器的 FPGA 設計 [期刊論文 ]現(xiàn)代電子技術 2021 [21]尹常永 EDA 技術與數(shù)字系統(tǒng)設計 2021 [22]劉愛榮, 王振成 . EDA 與 CPLD 開發(fā)應用簡明教程 北京 清華大學出版社 2021 [23] 吳海濤, 梁迎春, 陳英俊 .基于 FPGA 的全數(shù)字 FSK 調(diào)制解調(diào)器設計 .現(xiàn)代通信技術, 2021 [24] 隗永安著, 現(xiàn)代通信理論 . 成都: 西南交通大學出版社, 2021 [25] 張毅剛 . 單片機應 用設計 . 哈爾濱:哈爾濱工業(yè)大學出版社 2021 [26] 梅燦華, 張潛 . 基于 FPGA 的鍵控移頻調(diào)制解調(diào)器的設計與實現(xiàn) . 安徽大學學報, 2021 附錄Ⅰ m 序列生成 VHDL 程序: LIBRARY IEEE。 產(chǎn)生“ 1110010” m 序列 26 USE 。 USE 。 USE 。 ENTITY m_pn IS PORT(start : IN STD_LOGIC。 同步信號 y : buffer std_logic )。 m序列輸出端 END m_pn。 ARCHITECTURE m_pn_arch OF m_pn IS signal a : std_logic_vector(2 downto 0)。 BEGIN process(start) begin if ( start39。event and start = 39。139。) then 上升沿檢測 a(0) = a(1)。 a(1) = a(2)。 end if。 end process。 process(start) begin if ( start39。event and start=39。139。) then a(2)=(a(1) xor a(0)) or (not (a(0) or a(1) or a(2)))。 end if。 end process。 y=a(0)。 把 a 的最低位給 y end m_pn_arch。 附錄Ⅱ 分頻器 VHDL 程序: LIBRARY IEEE。 27 USE 。 USE 。 USE 。 ENTITY clkdiv IS PORT(clk : IN STD_LOGIC。 時鐘信號 f16 : OUT STD_LOGIC。 16分頻輸出端 f4 : OUT STD_LOGIC)。 4分頻輸出端 END clkdiv。 ARCHITECTURE rtl OF clkdiv IS SIGNAL count1 : STD_LOGIC_VECTOR(3 DOWNTO 0)。 16分頻計數(shù)器 SIGNAL count2 : STD_LOGIC_VECTOR(1 DOWNTO 0)。 4 分頻計數(shù)器 BEGIN PROCESS(clk) BEGIN IF (clk39。event AND clk = 39。139。)then IF (count1 = 1111) then 4位二進制計數(shù)器 count1 = (OTHERS = 39。039。)。 計數(shù)清零 ELSE count1 = count1 + 1。 END IF 。 END IF 。 END PROCESS。 PROCESS(clk) BEGIN 占空比 1/16 IF (clk39。event AND clk=39。139。 ) THEN IF(count1 = 1111) THEN 滿足條件給 f16賦值 f16 = 39。139。 。 ELSE f16 = 39。039。 。 END IF 。 END IF 。 END PROCESS。 28 PROCESS(clk) BEGIN IF (clk39。event AND clk=39。139。 ) THEN IF(count2 = 11) THEN 2位二進制計數(shù)器 count2 = (OTHERS =39。039。 )。 計數(shù)清零 ELSE Count2 = count2 +1。 END IF 。 END IF 。 END PROCESS。 PROCESS(clk) BEGIN 占空比 1/4 IF (clk39。event AND clk=39。139。) THEN IF(count2 = 11) THEN 滿足條件給 f4 賦值 f4 = 39。139。 。 ELSE f4 = 39。039。 。 END IF 。 END IF 。 END PROCESS。 END rtl。 附錄Ⅲ 數(shù)據(jù)選擇器 VHDL 程序: LIBRARY IEEE。 USE 。 29 USE 。 USE 。 ENTITY choose IS PORT( f16 : IN STD_LOGIC。 16分頻輸入 f4 : in std_logic。 4分頻輸入 Y : in std_logic。 輸入基帶信號 Z : buffer STD_LOGIC)。 輸出調(diào)制信號 END choose。 ARCHITECTURE choose_archi OF choose IS BEGIN process(f16, f4, y) begin if(y=39。039。) then z=f4 。 頻率選擇 else z=f16。 end if。 end process。 end choose_archi。 附錄Ⅳ 解調(diào)模塊 VHDL 程序: library ieee。 use 。 LIBRARY IEEE。 30 USE 。 USE 。 USE 。 ENTITY FSK IS PORT(start : IN STD_LOGIC。 輸入同步信號 z : IN STD_LOGIC。 輸入調(diào)制信號 y : OUT STD_LOGIC)。 輸出解調(diào)信號 END FSK。 ARCHITECTURE behav OF FSK IS SIGNAL ca: INTEGER RANGE 0 TO 5。 SIGNAL cb: INTEGER RANGE 0 TO 5。 BEGIN PROCESS(start) BEGIN IF start39。event and start = 39。139。 THEN ca = 0。 END IF。 END PROCESS。 PROCESS(z) BEGIN IF z39。event and z = 39。139。 THEN ca = ca + 1。 END IF。 END PROCESS。 PROCESS(start) BEGIN IF start39。event and start = 39。039。 THEN cb = ca。 END IF。 END PROCESS。 PROCESS(cb) 判斷 cb 值的大小 BEGIN CASE cb IS cb 決定 y的賦值大小 WHEN 3 = y = 39。139。 WHEN 4 = y = 39。139。 WHEN 5 = Y = 39。139。 WHEN OTHERS = y = 39。039。 31 END CASE。 END PROCESS。 END behav。