- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
814mpsk调制与解调vhdl程序与仿真
8.14 MPSK调制与解调VHDL程序与仿真
2. MPSK调制程序及注释
--文件名:PL_MPSK
--功能:基于VHDL硬件描述语言,对基带信号进行MPSK调制(这里M=4)
--说明:调制信号说明如表8.14.2所示。
表8.14.2 调制信号说明
信号yy 载波相位 载波波形 载波符号 “00” 0° f3 “01” 90° f2 “10” 180° f1 “11” 270° f0
--最后修改日期:2004.2.14
library ieee;
use ieee.std_logic_arith.all;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity PL_MPSK is
port(clk :in std_logic; --系统时钟
start :in std_logic; --开始调制信号
x :in std_logic; --基带信号
y :out std_logic); --调制信号
end PL_MPSK;
architecture behav of PL_MPSK is
signal q:integer range 0 to 7; --计数器
signal xx:std_logic_vector(1 downto 0); --中间寄存器
signal yy:std_logic_vector(1 downto 0); --2位并行码寄存器
signal f:std_logic_vector(3 downto 0); --载波f
begin
process(clk) --通过对clk分频,得到4种相位;并完成基带信号的串并转换
begin
if clkevent and clk=1 then
if start=0 then q=0;
elsif q=0 then q=1;f(3)=1; f(1)=0; xx(1)=x;yy=xx;
elsif q=2 then q=3;f(2)=0; f(0)=1;
elsif q=4 then q=5;f(3)=0; f(1)=1; xx(0)=x;
elsif q=6 then q=7;f(2)=1; f(0)=0;
else q=q+1;
end if;
end if;
end process;
y=f(0) when yy=11 else
f(1) when yy=10 else
f(2) when yy=01 else
f(3); --根据yy寄存器数据,输出对应的载波
end behav;
3. MPSK调制程序仿真及注释
MPSK调制程序仿真及注释如图8.14.6所示。
(a)MPSK调制VHDL程序仿真全图
(b)MPSK调制VHDL程序仿真局部放大图1
(c)MPSK调制VHDL程序仿真局部放大图2
图8.14.6 MPSK调制VHDL程序仿真及注释
2. MPSK解调VHDL程序及注释
--文件名:PL_MPSK2。
--功能:基于VHDL硬件描述语言,完成对MPSK调制信号 的解调(这里M=4)。
--说明:解调信号说明如表8.14.3所示。将一个信号周期分成4份,高电平权值分别为0、0、0、0,低电平权值分别为1、1、2、3。
表8.14.3 解调信号说明
载波波形 载波相位 加法器xx 中间信号yyy 0° 0+0+2+3=5 “00” 90° 0+1+2+0=3 “01” 180° 1+1+0+0=2 “10” 270° 1+0+0+3=4 “11”
--最后修改日期:2004.2.14。
library ieee;
use ieee.std_logic_arith.all;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity PL_MPSK2 is
port(clk :in std_logic; --系统时钟
start :in std_logic; --同步信号
x :in std_logic; --调制信号
y :out std_logic);
文档评论(0)