• 方案介紹
  • 附件下載
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

QPSK調(diào)制和解調(diào)VHDL代碼Quartus仿真

4小時前
101
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

2-240110102531233.doc

共1個文件

名稱:QPSK調(diào)制和解調(diào)VHDL代碼Quartus仿真

軟件:Quartus

語言:VHDL

代碼功能:

QPSK調(diào)制和解調(diào)

1、使用正弦波作為載波;

2、實現(xiàn)QPSK調(diào)制功能,輸出QPSK調(diào)制波形;

3、實現(xiàn)QPSK解調(diào)功能,將QPSK調(diào)制信號解調(diào)出數(shù)據(jù)。

FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com

演示視頻:

設(shè)計文檔:

1. 工程文件

2. 程序文件

3. 程序編譯

4. Testbench

5. 仿真圖

調(diào)制過程:首先通過m序列產(chǎn)生隨機信號,作為調(diào)制信號,再將改信號轉(zhuǎn)換為2為并行數(shù)據(jù),通過在正弦波基礎(chǔ)上改變相位得到QPSK信號。

5.1 QPSK調(diào)制部分

解調(diào)過程:將QPSK信號與sin和cos載波相乘,再對相乘的結(jié)果進行濾波,即可解調(diào)得到原信號。

5.2 QPSK解調(diào)部分

部分代碼展示:

LIBRARY?ieee;
???USE?ieee.std_logic_1164.all;
--QPSK調(diào)制模塊
ENTITY?QPSK_modulate?IS
???PORT?(
??????clk???:?IN?STD_LOGIC;
??????rst???:?IN?STD_LOGIC;
??????qout??:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0)
???);
END?QPSK_modulate;
ARCHITECTURE?behave?OF?QPSK_modulate?IS
???--串并轉(zhuǎn)換模塊
???COMPONENT?sipo?IS
??????PORT?(
?????????clk???:?IN?STD_LOGIC;
?????????dout??:?IN?STD_LOGIC;
?????????a?????:?OUT?STD_LOGIC;
?????????b?????:?OUT?STD_LOGIC
??????);
???END?COMPONENT;
???
--m序列,用于產(chǎn)生調(diào)制信號
???COMPONENT?m_code?IS
??????PORT?(
?????????clk???:?IN?STD_LOGIC;
?????????rst???:?IN?STD_LOGIC;
?????????dout??:?OUT?STD_LOGIC
??????);
???END?COMPONENT;
???
--調(diào)制載波
???COMPONENT?carrier_wave?IS
??????PORT?(
?????????clk???:?IN?STD_LOGIC;
?????????qout??:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0);
?????????a?????:?IN?STD_LOGIC;
?????????b?????:?IN?STD_LOGIC
??????);
???END?COMPONENT;
???
???
???SIGNAL?dout???????:?STD_LOGIC;
???SIGNAL?div2???????:?STD_LOGIC;
???SIGNAL?a??????????:?STD_LOGIC;
???SIGNAL?b??????????:?STD_LOGIC;
???SIGNAL?qout_buf?:?STD_LOGIC_VECTOR(7?DOWNTO?0);
BEGIN
--輸出調(diào)制信號
???qout?<=?qout_buf;
?????
???--調(diào)用m序列
???i_m_code?:?m_code
??????PORT?MAP?(
?????????clk???=>?clk,
?????????rst???=>?rst,
?????????dout??=>?dout--輸出m序列
??????);
???
--串并轉(zhuǎn)換
???i_sipo?:?sipo
??????PORT?MAP?(
?????????clk???=>?clk,
?????????dout??=>?dout,--串行輸入
?????????a?????=>?a,--輸出
?????????b?????=>?b?--輸出
??????);
???
???--載波模塊???
???i_carrier_wave?:?carrier_wave
??????PORT?MAP?(
?????????clk???=>?clk,
?????????qout??=>?qout_buf,--QPSK調(diào)制信號
?????????a?????=>?a,
?????????b?????=>?b
??????);
???
END?behave;

點擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=524

  • 2-240110102531233.doc
    下載

相關(guān)推薦