1、实训设计说明书学院:信息工程学院 班级:08电信2班 姓名: 学号: 指导老师:目录1. 中英文摘要2. 关键词.3. 前言4. 设计原理、过程、内容5. 程序分析.6. 设计结果说明7. 设计总结8. 参考文献.9. 程序附录.一、 摘要:中文摘要:随着社会的不断发展,通信对我们来说越来越显得重要,对于通信技术来讲,通信的质量也就显的非常关键。通信的根本任务是如何保证远距离传输信息的正确性,由于信号是离散的,被噪声干扰后的信号只要没有超过门限,接收端就能够完全正确的判断出传输的信息;对于模拟传输系统,只要有稍微的干扰都会使传输的信息产生错误,也正是由于这样的原因,数字通信系统才能在各方面替代
2、模拟通信系统,成为现代通信的最基本方式。为了便于区别信号与噪声,使通信信号不失真和不受干扰,往往给测量信号赋予一定特征。这就是调制的主要功能。调制就是用一个信号去控制另一个作为载波的信号,让后者的某一特征参数按前一信号变化。再将测量信号调制,并将它和噪声分离,放大等处理后,还要从已经调制的信号中提取反应被测量的测量信号,这一过程通过解调为了更好的利用通信信道的带宽,并使信号能够传输更远的距离,在数字载波通信中,我们采用三种调制方式,ASK、FSK、PSK。调制信号为二进制信号的调制称为二进制数字调制。本课题主要是数字频率调制又称频移键控(FSK),同时利益能够ise软件来实现对FSK系统的仿真
3、和分析,从而通过运用模拟的视觉化得手段来实现达到调制解调的目的。英文摘要:With the continuous development of society, communication become more and more important for us, for communication technology, communication will tell the quality of the show is critical. The basic task of the communication is how to guarantee the correctness of
4、the long-distance transmission information, because the signal is discrete, after the signal noise as long as no more than threshold, the receiver can completely correct judgment out the information transmitted; For analog transmission system, as long as there is a little bit of interference can mak
5、e the information transmitted errors, it was also because of this reason, digital communication system in all aspects to replace analog communications system, become the most basic way of modern communications. To facilitate the difference between signal and noise, make the communications signals no
6、t distortion and not suffer interference, often to measure the signal characteristics to certain. This is the main functions of the modulation. Modulation is to use a signal to control the other as a carrier signal, let the latter a characteristic parameters according to a signal changes before. To
7、measure the signal will be, and will it and modulation separating noise, amplification, etc, but also from the treatment has the modulated signals measured response has been extracted to measure the signal, the process through the demodulation in order to make better use of communication channel ban
8、dwidth, and can be transmitted signal farther distances in digital carrier communication, we use three modulation mode, ASK, FSK, PSK. Modulation signal for binary signals of a binary number modulation is called. This topic is digital frequency modulation is also called FSK (FSK), and interests can
9、ise software to realize the system simulation and analysis of FSK, and through the use of visual simulation have the means to accomplish achieve the purpose of demodulation. 二、 关键词 数字通信、FSK信号、载波信号、系统时钟、调制信号、基带信号三、 前言系统仿真是20世纪40年代末以来伴随着计算机技术的发展而逐步形成的一门新兴学科。仿真(simulation)就是通过建立实际系统模型并利用所见模型对实际系统进行试验研究
10、的过程。最初,仿真技术主要用于航空、航天、原子反应堆等价格昂贵、周期长、危险性大、实际系统试验难以实现的少数领域。后来逐步发展到电力、石油、化工、冶金、机械等一些主要工业部门,并进一步扩大到社会系统、经济系统、交通运输系统、生态系统等一些非工程系统领域。可以说,现代系统仿真技术和综合性仿真系统已经成为任何复杂系统,特别是高技术产业不可缺少的分析、研究、设计、评价、决策和训练的重要手段。其应用范围在不断扩大,应用效益日益显著。通信技术的飞速发展使得通信系统日趋复杂,通信系统设计的EDA技术在研发阶段实现软件仿真已经成为时尚。电子设计自动化技术已经从单纯的性能模拟仿真、系统元件仿真发展到系统仿真,
11、直至指导系统设计,同时用ise也可以仿真。本课题研究的是用ise仿真设计FSK的调制过程。四、 实验目的、过程、内容1) 原理:FSK就是利用载波信号的频率变化来传递数字信息。 在2FSK中,载波的频率随二进制基带信号在f1和f2两个频率点之间变化。故其表达式为:也就是说,一个2FSK信号可以看成是两个不同载频的2ASK信号的叠加。因此,2FSK信号的时域表达式又可以写成:在移频键控中, 和 不携带信息,通常可以令和 为零。因此,2FSK信号的表达式可简化为:其中:2FSK信号的产生方法主要有两种。一种可以采用模拟调频电路来实现,另一种可以采用键控法来实现,即在二进制基带矩形脉冲序列的控制下通
12、过开关开关 开关是最常见的电子元件,功能就是电路的接通和断开。接通则电流可以通过,反之电流无法通过。在各种电子设备、家用电器中都可以见到开关。 全文电路对两个不同的独立频率源进行选通,使其在每个码元Ts期间输出f1或f2两个载波之一。这种方法产生2FSK信号的差异在于:由调频法产生的2FSK信号在相邻码元之间的相位是连续变化的。而键控法产生的2FSK信号,是由电子开关在两个独立的频率源之间转换形成,故相邻码元之间的相位不一定连续。 针对FSK信号的特点,我们可以提出基于FPGA的FSK调制器一种实现方法-分频法,这种方法是利用数字信号去控制可变分频器的分频比来改变输出载波频率,产生一种相位连续
13、的FSK信号,而且电路结构简单,容易实现。在2FSK信号中,载波频率随着二元数字基带信号(调制信号)的1或0而变化,1对应于频率为f1的载波,0对应于频率为f2的载波。2FSK的已调信号的时域表达式为: 2FSK信号的常用解调方法是采用非相干解调和相干解调。其解调原理是将2FSK信号分解为上下两路2ASK信号分别进行解调,然后进行判决。这里的抽样判决是直接比较两路信号抽样值的大小,可以不专门设置门限。判决规则应与调制规则相呼应,调制时若规定1符号对应载波频率f1,则接收时上支路的样值较大,应判为1,反之则判为0。键控法也常常利用数字基带信号去控制可变分频器的分频比来改变输出载波频率,从而实现F
14、SK的调制。实现2FSK调制的原理方框图如图1所示。图1 2FSK调制实现原理框图其中FSK调制的核心部分包括分频器、二选一选通开关等,图中的两个分频器分别产生两路数字载波信号;二选一选通开关的作用是以基带信号作为控制信号,当基带信号为0时,选通载波f1;当基带信号为1时,选通载波f2。从选通开关输出的信号就是数字FSK信号。这里的调制信号为数字信号。2) 设计过程打开ise软件,新建一个工程建立一个new sourse 中的vhdl module:建立波形仿真文件:程序结果仿真如下:五、 程序分析library ieee;use ieee.std_logic_arith.all;use ie
15、ee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity PL_FSK isport(clk :in std_logic; -系统时钟 start :in std_logic; -开始调制信号 x :in std_logic; -基带信号 y :out std_logic); -调制信号end PL_FSK;architecture behav of PL_FSK issignal q1:integer range 0 to 11; -载波信号f1的分频计数器signal q2:integer range 0 to 3; -载波信
16、号f2的分频计数器signal f1,f2:std_logic; -载波信号f1,f2beginprocess(clk) -此进程通过对系统时钟clk的分频,得到载波f1beginif clkevent and clk=1 then if start=0 then q1=0; elsif q1=5 then f1=1;q1=q1+1; -改变q1后面的数字可以改变,载波f1的占空比 elsif q1=11 then f1=0;q1=0; -改变q1后面的数字可以改变,载波f1的频率 else f1=0;q1=q1+1; end if;end if;end process;process(clk
17、) -此进程通过对系统时钟clk的分频,得到载波f2beginif clkevent and clk=1 then if start=0 then q2=0; elsif q2=0 then f2=1;q2=q2+1; -改变q2后面的数字可以改变,载波f2的占空比 elsif q2=1 then f2=0;q2=0; -改变q2后面的数字可以改变,载波f2的频率 else f2=0;q2=q2+1; end if;end if;end process;process(clk,x) -此进程完成对基带信号的FSK调制beginif clkevent and clk=1 then if x=0
18、then y=f1; -当输入的基带信号x=0时,输出的调制信号y为f1 else y=f2; -当输入的基带信号x=1时,输出的调制信号y为f2 end if;end if;end process;end behav;六、设计结果说明:同步信号start为高电平有效,当输入信号为高电平的时候,就是逻辑“1”时,输出信号y为频率为f1的fsk信号;当输入信号为 的时候,即输入是逻辑“0”时,输出信号y为频率为f2的fsk信号。七、 设计总结通过两周的基于FPGA的利用verilog/VHDL语言的实训,使我初步认识到FPGA的在现在通信中的应用。也初步学习了verilog/VHDL的基本知识,
19、掌握的简单程序的设计和分析,以及利用ise软件进行仿真,掌握了ise软件的使用,也进一步复习了通信原理中的学习知识。另外,通过这两周的实训,使我明白了只有通过认真的学习,才能真正的、熟练的掌握一个软件,掌握所学的新东西。最后感谢老师这两周来的悉心指导和苦心栽培,在以后的学习中,一定牢记老师的教诲,努力奋斗!八、 参考文献1 罗朝霞 高书莉 CPLD/FPGA设计及应用 人民邮电出版社2 黄志伟 王彦 FPGA系统设计与实践 电子工业出版社3 沈保锁 侯春萍 现代通信原理4 曹志刚 钱亚生 现代通信原理 九、 附录程序:library ieee;use ieee.std_logic_arith.
20、all;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity PL_FSK isport(clk :in std_logic; start :in std_logic; x :in std_logic; y :out std_logic); end PL_FSK;architecture behav of PL_FSK issignal q1:integer range 0 to 11; signal q2:integer range 0 to 3; signal f1,f2:std_logic; beginpro
21、cess(clk) beginif clkevent and clk=1 then if start=0 then q1=0; elsif q1=5 then f1=1;q1=q1+1; elsif q1=11 then f1=0;q1=0; else f1=0;q1=q1+1; end if;end if;end process;process(clk) beginif clkevent and clk=1 then if start=0 then q2=0; elsif q2=0 then f2=1;q2=q2+1; elsif q2=1 then f2=0;q2=0; else f2=0;q2=q2+1; end if;end if;end process;process(clk,x) beginif clkevent and clk=1 then if x=0 then y=f1; else y=f2; end if;end if;end process;end behav;