nullnull7.1 二进制振幅键控(ASK)调制器与解调器设计
7.2 二进制频移键控(FSK)调制器与解调器设计
7.3 二进制相位键控(PSK)调制器与解调器设计
7.4 UART接口设计 第7章 FPGA在通信工程中实践应用 null教学目标
教学重点
教学过程
第7章 FPGA在通信工程中实践应用null第7章 FPGA在通信工程中实践应用教学目标了解 FPGA在数据通信领域的具体应用实例
掌握用VHDL语言设计二进制振幅键控(ASK)调制器与解调器
掌握用VHDL语言设计二进制频移键控(FSK)调制器与解调器
掌握用VHDL语言设计二进制相位键控(PSK)调制器与解调器
了解用VHDL语言设计UART接口
null教学重点
掌握用VHDL语言设计二进制振幅键控(ASK)调制器与解调器
掌握用VHDL语言设计二进制频移键控(FSK)调制器与解调器
掌握用VHDL语言设计二进制相位键控(PSK)调制器与解调器
第7章 FPGA在通信工程中实践应用7.1二进制振幅键控(ASK)调制器与解调器设计 7.1二进制振幅键控(ASK)调制器与解调器设计 数字信号对载波振幅调制称为振幅键控即 ASK(Amplitude-Shift Keying)。
ASK有两种实现方法:
1.相乘电路实现法
2.键控法 1.相乘电路实现法 1.相乘电路实现法 就是用乘法器基带信号与载波信号相乘就可以得到调制信号输出。
乘法器用来进行频谱搬移,相乘后的信号通过带通滤波器滤除高频谐波和低频干扰。
带通滤波器的输出是振幅键控信号。
2.键控法 2.键控法 键控法是产生ASK信号的另一种方法。二元制ASK又称为通断控制(OOK)。最典型的实现方法是用一个电键来控制载波振荡器的输出而获得。(键控法产生ASK信号原理框图 )ASK解调方法ASK解调方法1. 同步解调法
2. 包络解调法。 1.同步解调1.同步解调接下页null(设在一个码元持续时间T内,经过带通滤波后的接收信号和噪声电压为:
其中
是一个窄带高斯过程。根据窄带随机过程的性质,我们可以得到:
接下页null经过带通滤波器后的接收电压为:
若没有噪声,上式简化为:
ASK调制VHDL程序ASK调制VHDL程序ASK调制方框图ASK调制方框图ASK调制电路符号 ASK调制电路符号 ASK调制VHDL程序ASK调制VHDL程序library ieee;
use ieee.std_logic_arith.all;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity ASK is
port( clk:in std_logic; --系统时钟
start:in std_logic; --开始调制信号
x :in std_logic; --基带信号
y :out std_logic); --调制信号
end ASK;
architecture behav of ASK is接下页nullsignal q:integer range 0 to 3; --分频计数器
signal f :std_logic; --载波信号
begin
process(clk)
begin
if clk'event and clk='1' then
if start='0' then q<=0;
elsif q<=1 then f<='1';q<=q+1;
elsif q=3 then f<='0';q<=0;
else f<='0';q<=q+1;
end if; end if;
end process;
y<=x and f; --对基带码进行调制
end behav;ASK解调电路符号 ASK解调电路符号 ASK解调VHDL程序ASK解调VHDL程序library ieee;
use ieee.std_logic_arith.all;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity ASK2 is
port(clk :in std_logic; --系统时钟
start :in std_logic; --同步信号
x :in std_logic; --调制信号
y :out std_logic); --基带信号
end ASK2;
architecture behav of ASK2 is
signal q:integer range 0 to 11; --计数器
signal xx:std_logic; --寄存x信号电路符号接下页nullsignal m:integer range 0 to 5; --计xx的脉冲数
begin
process(clk) --对系统时钟进行q分频,
begin
if clk'event and clk='1' then xx<=x;
if start='0' then q<=0; --if语句完成q的循环计数
elsif q=11 then q<=0;
else q<=q+1;
end if;
end if;
end process;接下页nullprocess(xx,q) --此进程完成ASK解调
begin
if q=11 then m<=0; --m计数器清零
elsif q=10 then
if m<=3 then y<='0
else y<='1';
end if;
elsif xx'event and xx='1'then m<=m+1; --计xx信号的脉冲个数
end if;
end process;
end behav;
本文档为【7.1 二进制振幅键控(ASK)调制器与解调器设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。