MPSK调制解调.docx
- 文档编号:17927538
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:10
- 大小:258.65KB
MPSK调制解调.docx
《MPSK调制解调.docx》由会员分享,可在线阅读,更多相关《MPSK调制解调.docx(10页珍藏版)》请在冰点文库上搜索。
MPSK调制解调
MPSK调制解调
多进制数字相位调制(MPSK)
1前言:
VHDL主要用于描述数字系统的结构,行为,功能和接口。
除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。
VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。
在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。
这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。
2设计主题
2.1设计目的
(1).掌握MPSK的设计原理
(2).掌握MPSK的VHDL设计
(
系统信号的产生原理框图)
因为4PSK信号是两个正交的2PSK信号的合成,所以可仿照2PSK信号的相平解调方法,用两个正交的相干载波分别检测A和B两个分量,然后还原成串行二进制数字信号,即可完成4PSK信号的解调。
此法是一种正交相平解调法,又称极性比较法,原理图在下。
(
系统PSK信号解调原理框图)
根据π/4移相系统PSK信号的相位配置规定,抽样判决器的判决准则表在下页。
当判决器按极性判决时,若正抽样值判为1,负抽样值判为0,则可将调相信号解调为相应的数字信号。
解调出的A和B再经并/串变换,就可还原出原调制信号。
若解调π/2移相系统的PSK信号,需改变移相网络及判决准则。
MPSK调制器方框图
注:
电路符号图中没有包含模拟电路部分,输出信号为数字信号。
基带信号通过串/并转换器xx得到2位并行信号yy;四选一开关
根据yy的数据,选择载波对应的相位进行输出,即得调制信号y。
MPSK调制器建模符号图
--文件名:
MPSK
--功能:
基于VHDL硬件描述语言,对基带信号进行MPSK调制(这里
--M=4)
--说明:
调制信号说明如下表所示。
MPSK调制VHDL程序仿真图
3总结
通过这次设计,让我学到了很多知识,也获得很多体会,这是自己将平日学的理论知识应用到实际操作中的一次很好的实践。
同时,也是通过自己不断学习和努力,才明白:
实际操作和设计,并不是像学习理论知识那么简单,会理论不等于就会应用,很多都是经验的东西,需要在自己的努力设计中才能慢慢体会到,设计多了,才会经验中找到设计自如的感觉。
参考文献
(1)邬春明《通信原理实验与课程设计》.北京大学出版社.2013;
(2)赵全利著《EAD技术及应用》.机械工业出版社.2012;
(3)全国大学生电子设计组委会著《电子系统设计实践》.2005;
(4)林明权著《VHDL数字控制系统设计范例》.电子工业出版社.
调制程序:
libraryieee;
useieee.std_logic_arith.all;
useieee.std_logic_1164.all;
useieee.std_logic_unsigned.all;
entityMPSKis
port(clk:
instd_logic;--系统时钟
start:
instd_logic;--开始调制信号
x:
instd_logic;--基带信号
y:
outstd_logic);--调制信号
endMPSK;
architecturebehavofMPSKis
signalq:
integerrange0to7;--计数器
signalxx:
std_logic_vector(1downto0);--中间寄存器
signalyy:
std_logic_vector(1downto0);--2位并行码寄存器
signalf:
std_logic_vector(3downto0);--载波f
begin
process(clk)--通过对clk分频,得到4种相位;并完成基带信号的串并转换
begin
ifclk'eventandclk='1'then
ifstart='0'thenq<=0;
elsifq=0thenq<=1;f(3)<='1';f
(1)<='0';xx
(1)<=x;yy<=xx;
elsifq=2thenq<=3;f
(2)<='0';f(0)<='1';
elsifq=4thenq<=5;f(3)<='0';f
(1)<='1';xx(0)<=x;
elsifq=6thenq<=7;f
(2)<='1';f(0)<='0';
elseq<=q+1;
endif;
endif;
endprocess;
y<=f(0)whenyy="11"else
f
(1)whenyy="10"else
f
(2)whenyy="01"else
f(3);--根据yy寄存器数据,输出对应的载波
endbehav;
解调程序:
libraryieee;
useieee.std_logic_arith.all;
useieee.std_logic_1164.all;
useieee.std_logic_unsigned.all;
entityMPSK2is
port(clk:
instd_logic;--系统时钟
start:
instd_logic;--同步信号
x:
instd_logic;--调制信号
y:
outstd_logic);--基带信号
endMPSK2;
architecturebehavofMPSK2is
signalq:
integerrange0to7;--计数器
signalxx:
std_logic_vector(2downto0);--加法器
signalyyy:
std_logic_vector(1downto0);--2位并行基代信号寄存器
signalyy:
std_logic_vector(2downto0);--寄存xx数据
begin
process(clk)
begin
ifclk'eventandclk='1'then
ifstart='0'thenq<=0;
elsifq=0thenq<=1;yy<=xx;y<=yyy(0);
--把加法计数器的数据送入yy寄存器
ifx='0'thenxx<="001";
--调制信号x为低电平时,送入加法器的数据“001”
elsexx<="000";
endif;
elsifq=2thenq<=3;
ifx='0'thenxx<=xx+"001";
--调制信号x为低电平时,送入加法器的数据“001”
endif;
elsifq=4thenq<=5;y<=yyy
(1);
ifx='0'thenxx<=xx+"010";
--调制信号x为低电平时,送入加法器的数据“010”
endif;
elsifq=6thenq<=7;
ifx='0'thenxx<=xx+"011";
--调制信号x为低电平时,送入加法器的数据“011”
endif;
elseq<=q+1;
endif;
endif;
endprocess;
process(yy)--此进程根据yy寄存器里的数据进行译码
begin
ifclk='1'andclk'eventthen
ifyy="101"thenyyy<="00";--yy寄存器“101”对应基带码“00”
elsifyy="011"thenyyy<="01";--yy寄存器“011”对应基带码“01”
elsifyy="010"thenyyy<="10";--yy寄存器“010”对应基带码“10”
elsifyy="100"thenyyy<="11";--yy寄存器“100”对应基带码“11”
elseyyy<="00";
endif;
endif;
endprocess;
endbehav;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MPSK 调制 解调