1、DPSK解调器关键则是实现相对码到绝对码的转换,其结构图如图9所示,DPSK解调采用CPSK解调器与相对码到绝对码转换电路即可实现,其中,相对码到绝对码的转换是以在以计数器输出信号为时钟控制下完成的。三、原理图说明1、顶层模块的原理图利用选择译码器输出矢量的每一位分别作为调制解调器的工作使能输入信号,从而实现不同条件下多种调制解调方式间的选择,对于PSK调制与解调以CPSK为例来输入原理图。2、利用仿真程序生成2ASK调制器的RTL视图及电路符号3、利用仿真程序生成2ASK解调器的RTL视图及电路图4、利用仿真程序生成2FSK调制器的RTL视图及电路图5、利用仿真程序生成2FSK解调器的RTL
2、视图及电路图6、利用仿真程序生成2CPSK调制器的RTL视图及电路图7、利用仿真程序生成2CPSK解调器的RTL视图及电路图8、利用仿真程序生成2DPSK调制器绝对码转换为相对码的RTL视图及电路图9、利用仿真程序生成2DPSK解调器相对码转换为绝对码的RTL视图及电路图四、VHDL源代码的实现1、选择译码器的程序library ieee;use ieee.std_logic_1164.all;entity selecter is port( sel:in std_logic_vector(2 downto 0); Q:out std_logic_VECTOR(5 downto 0) );en
3、d selecter;architecture rtl of selecter is begin process(sel) case sel is when 000 = Qnull; end case; end process;end rtl; 2、2ASK调制器的程序use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity PL_ASK isport(clk :in std_logic; -系统时钟 start : -开始调制信号 x : -基带信号 y :out std_logic); -调制信号end PL_A
4、SK;architecture behav of PL_ASK issignal q:integer range 0 to 3; -分频计数器signal f :std_logic; -载波信号beginprocess(clk)if clkevent and clk=1 then if start=0 then q=0; elsif q=1 then f=q=q+1; -改变q后面数字的大小,就可以改变载波信号的占空比 elsif q=3 then f -改变q后面数字的大小,就可以改变载波信号的频率 else f end if;end if;end process;y=x and f; -对
5、基带码进行调制end behav;3、2ASK解调器的程序entity PL_ASK2 is -同步信号end PL_ASK2;architecture behav of PL_ASK2 isinteger range 0 to 11; -计数器signal xx: -寄存x信号signal m:integer range 0 to 5; -计xx的脉冲数process(clk) -对系统时钟进行q分频, then xx=x; -clk上升沿时,把x信号赋给中间信号xx -if语句完成q的循环计数 elsif q=11 then q else qprocess(xx,q) -此进程完成ASK解
6、调begin if q=11 then m -m计数器清零elsif q=10 then if m=3 then y -if语句通过对m大小,来判决y输出的电平 else yelsif xxevent and xx=then m=m+1; -计xx信号的脉冲个数4、2FSK调制器的程序entity PL_FSK is clk: -系统时钟 start: x: y:out std_logic -调制信号end PL_FSK;architecture rtl of PL_FSK issignal q1: -载波信号f1的分频计数器signal q2: -载波信号f2的分频计数器signal f1,
7、f2: -载波信号f1,f2 process(clk) -此进程通过对系统时钟clk的分频,得到载波f1 if clk then then q1 elsif q1=5 then f1 q1=q1+1; -改变q1后面的数字可以改变载波f1的占空比 elsif q1=11 then -改变q1后面的数字可以改变载波f1的频率 else process(clk) -此进程通过对系统时钟clk的分频,得到载波f2 then q2 elsif q2=0 then f2 q2=q2+1; -改变q2后面的数字可以改变载波f2的占空比=1 then -改变q2后面的数字可以改变载波f2的频率 proces
8、s(clk,x) -此进程完成对基带信号的FSK调制 if x= y=f1; -当输入的基带信号x=0时,输出的调制信号y为f1 else =f2; -当输入的基带信号x=1时,输出的调制信号y为f25、2FSK解调器的程序entity PL_FSK2 isout std_logic -基带信号end PL_FSK2;architecture behav of PL_FSK2 is -寄存器 process(clk) -对系统时钟进行q分频 xx -在clk信号上升沿时,x信号对中间信号xx赋值 q -if语句完成Q的循环计数 elsif q=11 then process(q,xx) -此进
9、程完成FSK解调 if q=11 then m elsif q=10 then=3 then elsif xx6、2CPSK调制器的程序entity PL_CPSK is -已调制输出信号end PL_CPSK;architecture behav of PL_CPSK isstd_logic_vector(1 downto 0); -2位计数器process(clk) -此进程主要是产生两重载波信号f1,f20001 then f1f2 elsif q=11 else f1process(clk,x) -此进程完成对基带信号x的调制 then -上升沿触发 if q(0)= then y -
10、基带信号x为1时,输出信号y为f1 -基带信号x为0时,输出信号y为f27、2CPSK解调器的程序entity PL_CPSK2 isend PL_CPSK2;architecture behav of PL_CPSK2 isprocess(clk) -此进程完成对CPSK调制信号的解调 elsif q=0 then q -在q=0时,根据输入信号x的电平来进行判决 elsif q=3 then q8、2DPSK调制器绝对码转换为相对码的程序entity PL_DPSK is -开始转换信号 -绝对码输入信号 -相对码输出信号end PL_DPSK;architecture behav of
11、PL_DPSK is -分频器 -中间寄存信号process(clk,x) -此进程完成绝对码到相对码的转换=1;=xx xor x; -输入信号与前一个输出信号进行异或9、2DPSK解调器相对码转换为绝对码的程序entity PL_DPSK2 is -相对码输入信号 -绝对码输出信号end PL_DPSK2;architecture behav of PL_DPSK2 is -分频 -寄存相对码process(clk,x) -此进程完成相对码到绝对码的转换 -输入信号x与前一输入信号xx进行异或五、仿真结果与说明1、选择译码器的仿真波形如下图所示对应于不同的输入选择信号,输出信号的特定输出高
12、电平,其余为低电平。2、2ASK调制器的仿真波形如下图所示当start信号为高电平时,进行ASK调制;载波信号f通过系统时钟进行4分频获得。3、2ASK解调器的仿真波形如下图所示当start信号为高电平时,进行ASK解调;在q=11时,m清零;根据m的大小,进行对输出基带信号y的电平的判决;在q为其他时,m计xx的脉冲数;输出的基带信号y滞后输入的调制信号x十个时钟周期。4、2FSK调制器的仿真波形如下图所示当start信号为高电平时,进行FSK调制;载波f1,f2分别是通过对clk信号进行12分频和2分频得到的;基带码长是载波信号f1的两个周期,载波信号f2的六个周期;输出的调制信号则在时间
13、上滞后于载波信号一个时钟周期,滞后于输入时钟脉冲两个周期。5、2FSK解调器的仿真波形如下图所示当start信号为高电平时,进行FSK解调;当q=11时,m清零;当q=10时,根据m的大小,进行对输出基带信号y的电平判决;当q为其他值是,计数器m记下xx的脉冲数;输出信号y滞后于输入信号x十个时钟周期。6、2CPSK调制器的仿真波形如下图所示当start信号为高电平时,进行CPSK调制;载波信号f1、f2是通过输入时钟脉冲clk 分频得到的,且滞后输入时钟一个时钟周期;调制输出信号y滞后载波一个时钟周期,滞后输入时钟两个时钟周期。7、2CPSK解调器的仿真波形如下图所示当start信号为高电平时,进行CPSK解调;当q=0时,根据x的电平来进行判决;输出信号y滞后输入信号x一个时钟周期。8、2DPSK调制器绝对码转换为相对码的仿真波形如下图所示当q=0时,输出信号y是输入信号x与中间寄存信号xx异或,输出信号y滞后于输入信号x一个时钟周期。9、2DPSK解调器相对码转换为绝对码的仿真波形如下图所示当q=3时,输出信号y是信号x与xx的异或;输出信号y滞后于输入信号x 一个基带码长即4个输入时钟周期。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1