通信报告FSK自行设计实验报告.docx
- 文档编号:16406051
- 上传时间:2023-07-13
- 格式:DOCX
- 页数:18
- 大小:538.19KB
通信报告FSK自行设计实验报告.docx
《通信报告FSK自行设计实验报告.docx》由会员分享,可在线阅读,更多相关《通信报告FSK自行设计实验报告.docx(18页珍藏版)》请在冰点文库上搜索。
通信报告FSK自行设计实验报告
FSK编码实验
一、实验目的
1、掌握FSK调制和解调原理;
2、熟悉2FSK相干解调和非相干解调的波形、频谱和框图;
3、学会Verilog编程产生正弦波、双通道正交波形;
4、在芯片alteraCycloneII上用Verilog编程实现FSK调制
二、实验仪器
1、JH5001(Ⅲ)通信原理基础实验箱一台
2、20MHz双踪示波器一台
三、实验原理
1、目前较常用产生FSK信号的方法是,首先产生FSK基带信号,利用基带信号对单一载波振荡器进行频率调制。
因此,FSK可表示如下:
其中,
,
大致波形如下图所示:
2、实验原理框图
,
,
,
得到,
,
3、正交调制
,是恒包络,幅度不变为1。
若不采用正交调制,只用一路信号调制,则出现双边带情况。
采用正弦波、余弦波得到的频谱是单边带,如下:
+
单边带的带宽为
。
四、程序设计
电路分析:
根据原理图所示,若
,当调制信号为1时,开关打到上边,
,此时相邻采样点相位相差:
,
当调制信号为0时,开关打到下边,
,相邻采样点相位差
,
采用连续相位调制,故需要对相位进行求和(积分)。
即有:
,
此后调制信号经过D/A转换,并经过低通滤波器输出。
可以再TPi03口观察A通道调制输出,TPi04口观察B通道调制输出。
此时,A、B通道输出再经过正交调制,于TPk03口输出。
由于正交调制信号为单边带信号,在传输时能节省一半带宽,故较实用、经济。
编程思路:
首先,需要产生8kbps的M序列,采样频率256kHz,因此需要将14.336MHz的时钟频率经过分频,分别产生256kHz(spab)及8kHz(clk_m)的时钟信号。
每次采样都需要输出,因此需要2倍于采样频率的时钟作为D/A转换器的信号输入clk_out。
(1)产生正弦波
要要产生32kHz与16kHz正弦波信号,一个周期内,256kHz采样信号需分别采样8点与16点。
对sin函数进行PAM采样(假设周期为
),再进行8bit编码,
,若
,则
,
,
可建立如下表格:
n
0
1
2
3
4
5
6
…
S
…
由于寄存器存放数据类型为正整数,故需要将(-1,1)的值进行量化处理,+1变为非负数,乘上127,以扩展到8位寄存器,范围(0,255)。
Matlab计算一周期内的16点信号:
x=1:
16;y=round((sin(pi/8*x)+1)*127);
运行结果如下:
A=
1762172442542442171761277837100103778127
将以上各数据制表以供查询。
采样的时候固定采样时钟不变,当调制信号为传号“1”时,每次时钟上升沿到来,采样值遍历表中数据;当调制信号为空号“0”时,每次时钟上升沿到来,采样值相隔一个取表中数据,这样就实现了16kHz调制和32kHz调制:
256kHz在1个信号周期内输出16点,则信号f=256/16=16kHz,
256kHz在2个信号周期内输出16点,则信号f=256/8=32kHz。
(2)双通道输出的实现
如图为采样信号和D/A转换器的wr写入端输入信号示意图:
Spab
Clk_out
当spab为高电平的时候,选择A通道(sin信号);当spab为低电平的时候,选择B通道(cos信号),这样一个spab内采样了2个点,分别送给A、B通道,实现了双通道输出。
B通道制表所有值比A通道提前4个(
),这样就实现了正交调制。
(3)考虑相位差
由于B通道比A通道落后一个clk_out时钟,相位差增加
,而B通道每次运算又是在A通道之后的一次,相位差减小
,两项叠加,刚好抵消,依然是将B通道制表所有值比A通道提前4个实现
相位差。
实现正交。
据以上分析得到如下的程序:
程序清单:
moduleFSK2(clk,m_out,wr,spab,Sig);
inputclk;//14.336MHz时钟
outputwr;//ModDACLK读写管脚输出
outputregm_out;//m序列输出
outputSig;//正交调制信号输出
outputregspab;//ModDASPAB通道选择管脚输出
reg[7:
0]Sig;//正交调制信号8位寄存器
regclk_wr;//中间分频时钟128kHz
regclk_out;//输出时钟256kHz
regclk_m;//m序列输出时钟8kHz
reg[5:
0]wr_cnt;//128kHz分频寄存器
reg[4:
0]out_cnt;//256kHz分频寄存器
reg[3:
0]count;//16次抽样计数器
reg[9:
0]m_cnt;//8kHz分频寄存器
reg[3:
0]m;//m序列寄存器
//assignspab=0;//单通道时将其置0,wire类型
assignwr=0;
//采样时钟clk_wr=128kHz
always@(posedgeclk)
begin
if(wr_cnt==6'd55)
begin
spab<=~spab;
clk_wr<=~clk_wr;
wr_cnt<=6'd0;
end
else
wr_cnt<=wr_cnt+6'd1;
end
//输出时钟clk_out=256kHz
always@(posedgeclk)
begin
if(out_cnt==5'd27)
begin
clk_out<=~clk_out;
out_cnt<=5'd0;
end
else
out_cnt<=out_cnt+5'd1;
end
//m序列输出时钟8kHz
always@(posedgeclk)
begin
if(m_cnt==10'd895)
begin
clk_m<=~clk_m;
m_cnt<=10'd0;
end
else
m_cnt<=m_cnt+10'd1;
end
//m序列产生
always@(posedgeclk_m)
begin
if(m==4'b0000)
m=4'b1111;
else
begin
m[0]<=m[0]^m[3];
m[3:
1]<=m[2:
0];
m_out<=m[3];
end
end
always@(negedgeclk_out)
begin
if(m_out==0)
count<=count+4'b0001;//空号"0"时频率为16kHz
else
count<=count+4'b0010;//传号"1"时频率为32kHz
if(spab==1)//通道选择,与ModDASPAB管脚有关
begin
case(count)//查表得到sin正弦波
4'b0000:
Sig<=8'd176;
4'b0001:
Sig<=8'd217;
4'b0010:
Sig<=8'd244;
4'b0011:
Sig<=8'd254;
4'b0100:
Sig<=8'd244;
4'b0101:
Sig<=8'd217;
4'b0110:
Sig<=8'd176;
4'b0111:
Sig<=8'd127;
4'b1000:
Sig<=8'd78;
4'b1001:
Sig<=8'd37;
4'b1010:
Sig<=8'd10;
4'b1011:
Sig<=8'd0;
4'b1100:
Sig<=8'd10;
4'b1101:
Sig<=8'd37;
4'b1110:
Sig<=8'd78;
4'b1111:
Sig<=8'd127;
default:
Sig<=8'd0;
endcase
end
else
begin
case(count)//查表得到cos余弦波,偏移pi/16后
4'b0000:
Sig<=8'd233;
4'b0001:
Sig<=8'd198;
4'b0010:
Sig<=8'd152;
4'b0011:
Sig<=8'd102;
4'b0100:
Sig<=8'd56;
4'b0101:
Sig<=8'd21;
4'b0110:
Sig<=8'd2;
4'b0111:
Sig<=8'd2;
4'b1000:
Sig<=8'd21;
4'b1001:
Sig<=8'd56;
4'b1010:
Sig<=8'd102;
4'b1011:
Sig<=8'd152;
4'b1100:
Sig<=8'd198;
4'b1101:
Sig<=8'd233;
4'b1110:
Sig<=8'd252;
4'b1111:
Sig<=8'd252;
default:
Sig<=8'd0;
endcase
end
end
endmodule
五、实验过程记录与分析
1、产生正弦信号
现象:
图18kHz正弦信号波形
分析:
对128kHz进行16次采样得到的采样点,经过芯片AD7528变成模拟信号输出,并经过低通滤波器得到8kHz正弦信号,从它的频谱图中可以清晰地看到只有8kHz一种频率,说明产生的正弦信号很纯。
如果减少采样点,比如说只进行4次,那么并不能很好的恢复出原始的正弦波信号。
同时,还需考虑到低通滤波器的截止频率,本实验中硬件电路部分的低通滤波器截止频率是56kHz,要获得8kHz的正弦波,则采样频率必须大于56kHz-8kHz=48kHz。
2、产生完全正交的两路信号
现象:
正弦和余弦信号李沙育图形(非正交)
改进相位后正、余弦李沙育图形(正交)
分析:
为了产生8kHz的正交的正弦波和余弦波,要考虑到A/B通道之间的相位差,由于是对128kHz进行的16次抽样,故A/B通道相位差为1/2*2pi/16=pi/16,对cos信号进行pi/16的左移即可。
抽样点如下表所示:
count
下一个count
A通道
B通道(相移前后)
0000
0001
176
0001
0010
217→198
0010
0011
244
0011
0100
127→102
0100
0101
244
0101
0110
37→21
0110
0111
176
0111
1000
0→2
1000
1001
78
1001
1010
37→56
1010
1011
10
1011
1100
127→152
1100
1101
10
1101
1110
217→233
1110
1111
78
1111
0000
254→252
由此实现了正交。
3、整体仿真波形
现象:
图7
(1)抽样与输出时钟
图7
(2)m序列及其抽样
分析:
从图7
(1)中可以看出,输出时钟和抽样时钟之间的关系,输出时钟clk_out是256kHz,spab是128kHz,spab是A/B通道的选通时钟,在一个spab时钟内可以有两个clk_out,也就是说可以将正弦、余弦相间隔抽样。
从图7
(2)中可以清晰地观察到m序列,以及选通抽样时钟spab和输出时钟clk_out之间的关系,一个码元对应着8次抽样。
4、m序列的FSK调制波形
现象:
图8m序列与其FSK调制波形
分析:
图8中可以对应观察m序列和FSK调制波形。
理论上m序列输出时钟是8kHz,传号频率是32kHz,空号频率是16kHz。
观察上图,当m序列码元为“0”
时,一个码元对应了两周期的正弦波,而当m序列码元为“1”时,一个码元对应了四周期的正弦波,满足这其中的比例关系。
与此同时,可以观察到在考虑了相位之间的差值之后,FSK调制所采用的不同频率
和
,波形连续。
5、相位调制前后李沙育图形
现象:
相位微调前的李沙育图
相位调整后的李沙育图
分析:
以上两个李沙育图是未考虑相位差之前和之后分别得到的李沙育图,明显看出后者正交。
波形失真很小。
在李沙育图上得到了较正的圆,说明最后的调制频谱呈单边带。
仔细地可观察到,圆形有些许重影,这是因为经过低通滤波器16kHz和32kHz的波形幅值不一样。
六、实验心得
本次FSK自行设计实验持续时间较长,大概3周的样子,我从本次实验中学习并掌握了FSK调制和解调原理,认识并分析了2FSK相干解调和非相干解调的波形、频谱和框图。
在实验中有一些难点,比如,如何保证A/B通道正交,通道选择的过程中有一定时差,而且由于
和
不同,A/B通道的相位差不定。
我经过仔细的分析,在matlab中寻找合适的抽样点,进行了多次的尝试才得到了实验最终的结果。
另外,本次实验给我比较深的体会就是时序非常重要,在编程之前要一定要将各个时钟之间的关系搞清楚,否则就会导致程序混乱没有调理。
最后,在实验结果出现问题时要勇敢多做尝试,和其他同学讨论商量以及在关键地方请教老师都是不错的解决问题方式。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通信 报告 FSK 自行设计 实验