电子信息系统综合实验Word文件下载.docx
- 文档编号:21048853
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:84
- 大小:1.74MB
电子信息系统综合实验Word文件下载.docx
《电子信息系统综合实验Word文件下载.docx》由会员分享,可在线阅读,更多相关《电子信息系统综合实验Word文件下载.docx(84页珍藏版)》请在冰豆网上搜索。
利用FPGA控制电路,在DSP的IRQ2终端输入引脚上产生1ms的周期中断信号。
8.DSP实验——二相编码信号产生
本实验要求学生掌握用AD9854模式控制字、频率控制字和相位寄存器的设置方法,利用信号产生板产生一个由13位巴克码调制的二相脉冲信号,脉冲信号的重频周期为1ms,频率为10MHZ,码片宽度1us,脉冲信号的宽度为13us,并用示波器对波形进行观察分析。
9.DSP实验——线性调频信号产生
学会利用DPS软件产生线性调频信号,掌握线性调频原理。
10.FPGA实验——数字下变频实验
学习FFT、滤波器设计、匹配滤波等数字信号处理流程和设计方法,利用FPGA实现对模拟I、Q两路回波信号的匹配滤波,并对实验结果进行分析。
11.DSP实验——链路口测试实验
在DSP1的数据存储区放置一些数,通过链路口将其传送到DSP2。
三、实验步骤
1.FPGA实验——流水灯
新建工厂文件:
分配引脚:
根据相关原理图,对管脚进行分配,详细分配如下表所示:
属性
连接到FPGA上的管脚
实际电路
led[3]
Output
PIN_126
连接到HL5
led[2]
PIN_127
连接到HL4
led[1]
PIN_128
连接到HL3
led[0]
PIN_129
连接到HL2
rst_n
Input
接高电平
sw1
PIN_47
连接到拨码开关
sys_clk
PIN_16
接40M时钟
按照如上所示的连接:
编译程序,连接下载器到电路板,将程序烧写进FPGA中。
1.服从高斯(Guass)分布的热噪声(随机序列)
Matlab7.0本身自带了标准高斯分布的内部函数randn,调用格式如下:
Y=randn(n)
Y=randn(m,n)
Y=randn([mn])
Y=randn(size(A))
s=randn('
state'
)
randn函数产生的随机序列服从均值为m=0,方差σ2=1的高斯分布。
Y=randn(n)产生的是一个n×
n的随机序列矩阵,而Y=randn(m,n)和Y=randn([mn])产生的m×
n的随机序列矩阵,Y=randn(size(A))产生的是大小与矩阵A同样大小的随机序列矩阵。
)返回的是一个具有两个元素的向量,该向量显示的是当前正态随机数产生器的状态。
randn('
s)指令可以将产生器的状态设置到s,而randn('
0)则可以将正态随机数产生器的状态恢复到初始状态。
2.服从均匀分布的热噪声(随机序列)
可以先产生一个服从(0-1)单位均匀分布的信号,然后再将其经过上式的变换,就可以得到一个服从(a-b)均匀分布的信号了。
同样Matlab本身也自带了(0-1)单位均匀分布的内部函数rand,格式如下:
Y=rand(n)
Y=rand(m,n)
Y=rand([mn])
Y=rand(size(A))
s=rand('
rand函数产生的随机序列服从(0-1)单位均匀分布。
Y=rand(n)产生的是一个n×
n的随机序列矩阵,而Y=rand(m,n)和Y=rand([mn])产生的m×
n的随机序列矩阵,Y=rand(size(A))产生的是大小与矩阵A同样大小的随机序列矩阵。
)返回的是一个具有两个元素的向量,该向量显示的是当前(0-1)单位均匀随机数产生器的状态。
rand('
s)指令可以将产生器的状态设置到s,而rand('
0)则可以将(0-1)单位均匀分布随机数产生器的状态恢复到初始状态。
可以写出服从(a-b)均匀分布的随机序列的产生程序,如下:
a=2;
%(a-b)均匀分布下限
b=3;
%(a-b)均匀分布上限
fs=1e7;
%采样率,单位:
Hz
t=1e-3;
%随机序列长度,单位:
s
n=t*fs;
0);
%把均匀分布伪随机发生器置为0状态
u=rand(1,n);
%产生(0-1)单位均匀信号
x=(b-a)*u+a;
%广义均匀分布与单位均匀分布之间的关系
subplot(2,1,1),plot(x),title('
均匀分布信号'
);
%输出信号图
subplot(2,1,2),hist(x,a:
0.02:
b),title('
均匀分布信号直方图'
%输出信号的直方图
3.服从指数分布的热噪声(随机序列)
先产生一个服从(0-1)单位分布的信号,然后再将其经过指数变换,就可以得到一个服从参数为λ的指数分布的信号了。
4.服从瑞利(Rayleigh)分布的热噪声(随机序列)
先产生一个服从(0-1)分布的信号,然后再经过变换,可以得到一个服从瑞利(Rayleigh)分布的信号了。
产生瑞利分布的热噪声实现程序如下
sigma=2;
%瑞利分布参数sigma;
%杂波时间长度
%采样率
t1=0:
1/fs:
t-1/fs;
n=length(t1);
x=sqrt(2*log2(1./u))*sigma;
%产生瑞利分布信号1
瑞利分布噪声'
),xlabel('
t(单位:
s)'
%输出信号图
subplot(2,1,2),hist(x,0:
0.1:
10),title('
瑞利分布信号直方图'
管脚
在FPGA上的分配
FPGA上的连接
管脚说明
clk
40M2
系统时钟40M
da_clk
PIN_79
DACLK
DA的工作时钟一般为60M
out[0]
PIN_69
DATA0
需DA转换的10位数字信号的第0位
out[1]
PIN_70
DATA1
需DA转换的10位数字信号的第1位
out[2]
PIN_71
DATA2
需DA转换的10位数字信号的第2位
out[3]
PIN_72
DATA3
需DA转换的10位数字信号的第3位
out[4]
PIN_73
DATA4
需DA转换的10位数字信号的第4位
out[5]
PIN_74
DATA5
需DA转换的10位数字信号的第5位
out[6]
PIN_75
DATA6
需DA转换的10位数字信号的第6位
out[7]
PIN_76
DATA7
需DA转换的10位数字信号的第7位
out[8]
PIN_77
DATA8
需DA转换的10位数字信号的第8位
out[9]
PIN_78
DATA9
需DA转换的10位数字信号的第9位
计数器模块:
Rom模块:
选中信号q,右击鼠标,弹出下拉列表DisplayFormat->
AnalogWaveform选中后,弹出对话框:
将其值改为5后即可得到下图
1.用波形产生板产生一个重频周期为1ms,中心频率为10M,带宽为200k—2M,时宽为60us的线性调频脉冲信号;
2.用MATLAB语言产生高斯白噪声信号;
3.利用信号处理板对波形产生板产生的信号进行实时采集,并与前面产生的噪声数据进行叠加后,用数字信号处理算法进行处理,并将处理结果实时输出到D/A,在示波器上查看处理结果;
4.调解波形产生电路板所产生信号的幅度,连续运行,利用示波器查看不同输入信噪比情况下系统的输出
用MATLAB中产生适当的的线性调频信号,并对其进行数字正交解调,得到I,Q两路数据,同时生成匹配滤波器系数、FFT和IFFT蝶形运算系数,并将这些数据和系数保存为dat数据文件。
在DSP程序中加载I,Q两路数据,并对其进行匹配滤波,利用集成开发环境提供的画图功能观察匹配滤波的结果。
具体实验步骤如下:
(1)用MATLAB产生中心频率为10MHz,带宽为200KHz,脉冲宽度为60us的线性调频信号,对其进行正交解调,采样频率为8MHz,得到I,Q两路数据,并将数据保存为idata.dat和qdata.dat;
(2)利用MATLAB生成FFT和IFFT的蝶形运算系数,分别保存为twid1k.dat和itwid1k.dat;
(3)由I,Q两路数据生成复信号,在MATLAB中对其进行Fourier变换,再进行共轭和数据反转,得到匹配滤波器系数并保存为LFM_para.dat;
(4)按照图5.22所示匹配滤波器实现方案,在MATLAB中对上述信号进行匹配滤波,并对结果进行分析;
具体目标:
(1)结合实验,对雷达回波的匹配滤波算法原理有进一步的了解和认识;
(2)掌握数字滤波器、FFT、相关处理、匹配滤波等数字信号处理的DSP实现方法。
特别是通过实验,掌握FFT算法是如何实时快速,加强对蝶形结构的理解。
并利用DSP平台,用ADSP-TS101汇编语言实现这些处理算法;
(3)通过实验,进一步加强对这些常用的数字信号处理算法的理解和认识,并与数字信号处理理论课程的讲解进行对比,从感性上进一步熟悉这些算法的本质和对不同信号的处理结果;
(4)通过实验,进一步熟悉DSP(TS101)的DMA数据传输和链路口通信方式,并能有效的对其外部接口进行控制设计;
(5)进一步熟悉TS101的指令系统,能对处理算法进行修改。
匹配滤波器是指滤波器的性能与信号的频率特性相一致,使滤波器输出端的信号瞬时功率与噪声平均功率的比值最大。
即当信号与噪声同时进入滤波器时,它使信号成分在某一瞬间出现尖峰值,而噪声成分受到抑制。
假设雷达发射信号(基带信号)为
,其频谱为
,那么匹配滤波器的频率响应和冲激响应分别可表示为:
可见,匹配滤波器只与发射信号本身有关,可以最大程度地提高信噪比。
匹配滤波的实现方案如图5.23所示。
输入信号为模拟I,Q两路复信号,对其进行FFT,得到频率复信号,再与匹配滤波器系统相乘,最后进行IFFT,得到匹配滤波结果。
图5.23匹配滤波的实现方案
(5)编写FPGA程序,配置DSP工作所需的信号,参考5.3节图5.18;
(6)在VisualDSP++中,新建工程TSdsp1,选择session:
ADSP-TS101TigherSharcCycleaccurateSimulatorplatform,编写DSP1程序:
开辟存储区加载滤波器系数和蝶形系数(例如加载蝶形系数.vartwidik[1024]=”twid1k.dat”),注意各子程序的入口及出口寄存器。
主程序的流程为:
先把I,Q两路信号组成一个复信号,进行FFT变换,然后与匹配滤波系数相乘,然后进行IFFT变换,最后对匹配滤波结果求模。
(7)编译工程文件,在idle处设置断点,运行至断点处,观察匹配滤波的结果。
在VisualDSP++中,新建工程TSdsp1,编写DSP程序,并将上述五个dat数据文件保存在工程TSdsp1的根目录下。
6.DSP实验——中端闪灯
利用波形产生信号板,结合FPGA编程技术和程序编程器,编写测试ADSP21065L和FPGA之间硬件连接的应用程序,同时完成应用程序的加载和脱机操作,在信号指示灯“HL2”上产生可调周期的脉冲信号,“点亮”与“熄灭”指示灯HL2。
实验步骤:
1.熟悉电路图,清楚波形产生电路板ADSP21065L与可编程FPGA器件之间的连接关系。
2.编写FPGA程序(内部已编好)。
在FPGA内部将ADSP21065L的标志引脚FLAG11(引脚号26)设置为输出,作为FPGA的输入信号,在FPGA内部编程将该信号直接输出在发FPGA的37引脚号上,设置37引脚为输出信号,驱动板上的HL2LED指示灯;
3.启动VisualDsp++4.5,选择project工程选项菜单,创建一个名称为Test.dpj的工程文件,选择处理器的型号为ADSP-21065L;
4.新建一个源文件,将程序复制进去,然后保存,文件的后缀名为.asm。
5.添加刚刚保存的源文件。
点击AddFile(s)toFolder...,将.asm文件添加进去。
6.产生链接文件。
之后会出现下面的窗口:
7.点击编译按钮进行编译。
发现编译失败,通过修改程序使得最后编译成功。
8.编译成功后,进行编程器设置。
点击session里的newsession,
出来下图的窗口:
Processor类型为SHARC,处理器为ADSP-21065L。
然后next
选择Emulator硬件仿真,next,下面要特别注意:
如果你的编程器接口是usb类型的请选择HPUSB-ICE
如果你的编程器接口是pci类型的请选择HPPCI-ICE
选完后完成。
此时SelectSession会出现ADSP-21065LviaHPUSB-ICE的选择项。
9.将编程器与板子连接,进行加电。
给板子加电,打开电源。
然后将编程器选通,如果编程器是usb的,则选择Session---SelectSession---ADSP-21065LviaHPUSB-ICE的选择项。
然后进行编译,编译完成后运行,会发现HL2灯的闪动。
10.实验完成后,应该先将仿真模式切换成软件仿真,如图,然后再将编程器的接口拔出板子。
7.DSP实验——单频信号产生
实验要求:
1.产生一重频周期为1ms,频率为10MHz,脉冲宽度为5us的单频正弦脉冲信号,并掌握利用AD9854实现单频正弦脉冲的产生;
2.掌握AD9854模式控制字和频率控制字的设置方法;
3.利用FPGA控制电路,在DSP的IRQ2中断输入引脚上产生1ms的周期中断信号;
1.步骤如第一个实验(指示灯的产生),编译成功后。
运行!
利用示波器测量波形发生板右上角的R19测试点,可以观测所产生的波形,如图9.3所示。
说明:
利用DSP程序设置AD9854的模式控制字和频率字,此处的模式选择为单频模式(000),模式字保存在寄存器r0中,所占用的外部地址为0x100001f。
频率字的计算方法为:
频率字=希望输出频率×
248/系统时钟,得到12位十六进制的频率字码,分别保存到寄存器r1~r6中,分别输出到AD9854寄存器地址0x1000004,0x1000005,0x1000006,0x1000007,0x1000008,0x1000009中。
本系统的系统时钟为200MHz。
本实验要求学生掌握用AD9854模式控制字、频率控制字和相位寄存器的设置方法,利用信号产生板产生一个由13位巴克码调制的二相脉冲信号,脉冲信号的重频周期为1ms,频率为10MHZ,码片宽度1us,脉冲信号的宽度为13us,并用示波器对波形进行观察分析。
实验中需要编程设置AD9854的模式字、频率字、相位调节字等。
(1)用FPGA产生周期为1ms的信号,控制输出信号的脉冲重复周期;
(2)用FPGA产生ADSP和AD9854的复位信号,以及其他时钟和控制信号;
(3)利用DSP程序设置AD9854的模式控制字和频率字,此处的模式选择二相编码模式,模式值为0x08,所占用的外部地址为0x100001F;
频率字设置方法为:
频率字(FTW)=希望输出频率×
248/系统时钟,得到12位十六进制的频率字码,分6段分别设置到AD9854寄存器偏移地址0x0000004,0x0000005,0x0000006,0x0000007,0x0000008,0x0000009中。
需要注意的是,这里的频率指的是线性调频信号的起始频率。
AD9854系统时钟设为200M。
(4)设置相位调节字:
相位调节字1为0°
,相位调节字2为180°
,地址分别为0x0000000和0x0000002。
(5)程序编译成功后,点击运行,利用示波器观测所产生的波形。
本实验的解决思路如下:
(1)用FPGA产生周期为1ms的周期信号,输出到FPGA的11引脚上,作为ADSP的外部中断2中断信号,控制脉冲重复周期;
(2)设计FPGA程序,产生ADSP和AD9854的复位信号,以及其他信号产生板所需的时钟和控制信号;
注意:
信号处理板上电后,由EPC2LC20加载烧写在其中的FPGA程序,产生需要的各种时序和控制信号。
(3)利用DSP程序设置AD9854的模式控制字和频率字,此处的模式选择线性调频脉冲模式(011),模式值为0x06,所占用的外部地址为0x100001F;
AD9854系统时钟设为200M,对输入40M信号进行5倍增频。
(4)设置频率频率增量字(DFW),其计算方法为:
频率字(FTW)=希望输出频率×
248/系统时钟,需要注意此处希望增长的频率不是一般理解的(11MHz-9MHz),而是通过公式:
(11MHz-9MHz)/脉冲宽度=希望的增长频率/(步长*时钟周期),此处步长的值为40。
占用AD9854的寄存器地址偏移量为0x0000010,0x0000011,0x0000012,0x0000013,0x0000014,0x0000015。
其中0x0000010为频率增量字的高位地址;
对于AD9854产生线性调频信号的ADSP程序设计,AD21065L的寄存器、中断、初始化等设置,以及AD9854初始化等均与单频信号产生均与单频信号产生相同,这里仅给出AD9854产生线性调频脉冲信号的频率字、频率增量等、脉冲宽度等参数设计程序。
实验中,在模拟中频信号输入的基础上,需要分别设计实现FPGA和DSP两种数字正交解调方法。
实验步骤如下:
(1)利用MATLAB仿真产生10MHz中频信号,信号调制方式采用调幅或线性调频,通过RAM输入到FPGA内存中。
(2)设计FPGA程序模块,配置模拟数据读取时钟,即信号采样速率;
(3)设计FGPA程序模块,为EP1C3T144配置工作时钟,实现基于4阶Bessel插值的正交解调算法,将结果通过D/A输出,由示波器观察结果;
(4)设计FPGA程序,为DSP101配置工作时钟、复位、读写信号等,将需要处理信号据通过RAM发送到DSP101;
数字正交解调实现电路组成框图(虚线部分)
首先,设计FPGA程序模块,产生处理系统所需各种时钟信号。
输入时钟为40MHz,需要产生100MHz(D/A时钟)、8MHz
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子信息 系统 综合 实验