基于FPGA的MFSK調制电路设计与仿真69350.doc

基于FPGA的MFSK調制电路设计与仿真69350.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于FPGA的MFSK調制电路设计与仿真69350

基于FPGA的MFSK调制电路设计与仿真 [日期:2007-9-10] 来源:微计算机信息 ? 作者: [字体:大 中 小]   摘要:数字调制解调技术在数字通信中占有非常重要的地位,数字通信技术与FPGA的结合是现代通信系统发展的一个必然趋势。文中介绍了MFSK调制解调的原理,并基于FPGA实现了MFSK调制电路,仿真结果表明了该设计的正确性。 关键词:MFSK;FPGA;调制;解调 数字信号传输系统分为基带传输系统和频带传输系统.频带传输系统也叫数字调制系统。数字调制信号又称为键控信号,数字调制过程中处理的是数字信号,而载波有振幅、频率和相位3个变量,且二进制的信号只有高低电平两个逻辑量1和0,所以调制的过程可用键控的方法由基带信号对载频信号的振幅、频率及相位进行调制,最基本的方法有3种:正交幅度调制(QAM)、频移键控(FSK)、相移键控(PSK).根据所处理的基带信号的进制不同分为二进制和多进制调制(M 进制).多进制数字调制与二进制相比,其频谱利用率更高。本文研究了基于FPGA的MFSK(多频键控)调制电路的实现方法,并给出了MAX+PLUSII环境下的仿真结果。 1???????? MFSK简介 MFSK系统是2FSK(二频键控)系统的推广,该系统有M个不同的载波频率可供选择,每一个载波频率对应一个M进制码元信息,即用多个频率不同的正弦波分别代表不同的数字信号,在某一码元时间内只发送其中一个频率。MFSK信号可表示为: ? 为载波角频率,通常采用相位不连续的振荡频率,这样便于利用合成器来提供稳定的信号频率。图1 为MFSK系统的原理框图。在发送端,输入的二进制码元经过逻辑电路和串/并变换电路转换为M进制码元,每k位二进制码分为一组,用来选择不同的发送频率。在接收端,当某一载波频率到来时,只有相应频率的带通滤波器能收到信号,其它带通滤波器输出的都是噪声。抽样判决器的任务就是在某一时刻比较所有包络检波器的输出电压,通过选择最大值来进行判决。将最大值输出就得到一个M进制码元,然后,再经过逻辑电路转换成k位二进制并行码,再经过并/串变换电路转换成串行二进制码,从而完成解调过程。 图1? MFSK系统原理框图 ? 2??????? MFSK调制电路的FPGA实现 2.1????? 基于FPGA的MFSK调制电路方框图 ?? 调制电路方框图如图2所示。基带信号通过串/并转换得到2位并行信号;四选一开关根据两位并行信号选择相应的载波输出(例中M取4)。 图2?? MFSK调制电路方框图 ? 2.2??????? MFSK调制电路VHDL程序 调制电路VHDL关键代码如下: entity MFSK is port(clk?????? :in std_logic;??? ????????--系统时钟 ???? start???? :in std_logic;??????????? --开始调制信号 ???? x?????? :in std_logic;???????????? --基带信号 ???? y?????? :out std_logic);?????????? --调制信号 end MFSK; architecture behav of MFSK is signal q :integer range 0 to 15;?????????? --计数器 signal f :std_logic_vector(3 downto 0);??? --分频器 signal xx:std_logic_vector(1 downto 0);?? --寄存输入信号x的2位寄存器 signal yy:std_logic_vector(1 downto 0);?? --寄存xx信号的寄存器 begin process(clk)? --此进程过对clk进行分频,得到4种载波信号f3、f2、 f1、f0。 begin if clkevent and clk=1 then ?? if start=0 then f=0000; ?? elsif f=1111 then f=0000; ?? else f=f+1; ?? end if; end if; end process; process(clk)????????????? --对输入的基带信号x进行串/并转换,得到2位并行信号的yy begin if clkevent and clk=1 then ?? if start=0 then q=0; ?? elsif q=0 then q=1;xx(1)=x;yy=xx; ?? elsif q=8 then q=9;xx(0)=x; ?? else? q=q+1; ?? end if; end if; end process; pro

文档评论(0)

fglgf11gf21gI + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档