当前位置:文档之家› 01实验一 伪随机码发生器实验

01实验一 伪随机码发生器实验

实验一 伪随机码发生器实验
一、实验目的
1、 掌握伪随机码的特性。

2、 掌握不同周期伪随机码设计。

3、 用基本元件库和74LS系列元件库设计伪随机码。

4、 了解ALTERA公司大规模可编程逻辑器件EPM7128SLC84内部结构和应用。

5、 学习FPGA开发软件MAXPLUSⅡ,学习开发系统软件中的各种元件库应用。

6、 熟悉通信原理实验板的结构。

二、实验仪器
1、 计算机 一台
2、 通信基础实验箱 一台
3、 100MHz 示波器 一台
三、实验原理
伪随机码是数字通信中重要信码之一,常作为数字通信中的基带信号源;扰码;误码测试;扩频通信;保密通信等领域。

伪随机码的特性包括四个方面:
1、 由n 级移位寄存器产生的伪随机序列,其周期为-1; n 2
2、 信码中“0”、“1” 出现次数大致相等,“1”码只比“0”码多一个;
3、 在周期内共有-1游程,长度为 i 的游程出现次数比长度为 i+1的 游程出现
次数多一倍;
n 24、 具有类似白噪声的自相关函数,其自相关函数为:
()()
⎩⎨

−≤≤=−−=2
210
12/11n n
τττρ
其中n 是伪随机序列的寄存器级数。

例如:四级伪码产生的本原多项式为X 4+X 3+1。

利用这个本原多项式构成的4级伪随机序列发生器产生的序列为:
1 1 1 1 0 0 0 1 0 0 1 1 0 1 0
相应的波形图如图1-1所示:
图1-1 四级伪随机序列波形图
用4个D 触发器和一个异或门构成的伪码发生器具有以下特性: 1、 周期为24-1=15;
2、 在周期内“0”出现24 -1-1=7次,“1”出现24 -1=8次;
3、 周期内共有24 -1 =8个游程;
4、 具有双值自相关特性,其自相关系数为:
⎩⎨⎧−≤≤−−==2
21)12(10
14
4τ / τ ρ(τ)
四、实验内容及步骤
1、在MAXPLUSⅡ设计平台下进行电路设计 1.1 四级伪随机码发生器电路设计
电路原理图如图1-2所示。

图1-2 四级伪随机码电路原理图
在MAXPLUS II 环境下输入上述电路,其中: dff ------ 单D触发器 xor ------ 二输入异或门 nor4 ------ 四输入或非门 not ------ 反相器
clk ------ 时钟输入引脚(16M时钟输入) 8M ------ 二分频输出测试点引脚 nrz ------ 伪随机码输出引脚 1.2 实验电路编译及FPGA 引脚定义
完成原理图输入后按以下步骤进行编译:
(1) 在Assign Device 菜单选择器件MAX7128SLC84。

(2)在Assign/Globl project device option菜单中选择 Enable JTAG
Support。

(3)第一次编译时一般采用让MaxplusII自动进行引脚分配。

注意,编译前
一定要确保所编译的文件是一个工程。

具体做法是:在菜单
File/Project下点击Set Project to Current File。

(4)编译后进行引脚回注,在Assign/Back-Annotate Projetc菜单中选择
Chip,Pin&Device,经过引脚回注后电路图上会显示自动分配的引脚
号。

(5)按照实验板所要求的输入时钟引脚和输出测试引脚号,进行引脚修
改,修改后必须编译,所做的修改才会生效。

引脚修改方法如下:双
击clk时钟输入引脚元件中的回注引脚号,MAXPLUS II会弹出一对话
框,可方便进行修改。

如图1-3所示。

图1-3 引脚修改界面
将电路图中所有引脚修改成实验板要求的引脚,然后再次进行编译。

要求的引脚配置如下:
CLK 83 脚 (CLK输入频率为16.9M,或经过2分频率后为8.46M)
8M 37 脚 (8M时钟输出)
NRZ 39 脚 (NRZ称不归零码,这时码率为8.46Mb/s)
NNRZ 40 脚 (反相输出)
1.3 在MAXPLUSⅡ环境下完成电路的仿真
(1)在MAX+plu sⅡ菜单下选择Waveform Editor,出现一波形编辑窗口。

波形编辑窗

(2)在Node菜单下选择Enter nodes from SNF,点击List,加入要仿真的所
有节点。

加入仿真节点
(3)加入时钟激励:在Option菜单下选Grid Size,出现对话框后键入相应
的纳秒(ns)数,例如10ns(对应周期为20ns,即50M)。

在File菜单下选End Time,键入仿真时间,例如10us。

选择输入时
钟信号clk 选择此图标
给时钟赋值
(4)在MUXPLU SⅡ菜单下选Simulator,出现仿真对话框后,点击
Start,开始仿真。

注意:进行仿真前一定要先保存。

得到的仿真波形和理论结果是一致的。

2、实验板设置
在进行不同实验时,首先要对实验板上硬件进行简单设置,以符合各种信号输入和各种实验结果测试要求。

(见跳线和开关设置表)
硬件实验步骤为:接通晶体振荡器电源----》将16.9M时钟连接到FPGA全局时钟脚----》将实验电路配置到FPGA芯片中----》进行实验测量。

实验原理图如图1-4所示:
FPGA内部T16 T17 T15
T8
FPGA83脚
图1-4 实验原理图
(1)接通SW_6(用短路块),晶体振荡器X1产生16.9344M时钟信号,T8为
该时钟频率的测试点。

(2)将拨动开关“K2”的“1”脚置“ON”,将16.9344Mc时钟信号送到了
FPGA第83脚(全局时钟脚)。

(3)将8.5V直流电源插入实验板PJ1接口,打开总开关K1,检查指示灯P1、
P2、P3是否亮,即电源工作正常。

实验板跳线和开关设置表:
3、将实验电路nrz.pof文件配置到FPGA芯片
(1) 将BYTBLASTER一端连接到计算机并行口,另一端连接到实验板BYTBLASTER口。

(2) 打开电源开关K1,注意SW_13为FPGA电源跳线,应接通。

(3) 在MAXPLUSⅡ菜单下选Programmer然后按Program开始下载。

4、实验测试
下载成功后,可用示波器测试各点波形(见照片)。

NRZ码实验测试点表
测试点名称测试点波形说 明
T8 16.9MC 晶体振荡器输出
T5 16.9MC 时钟选择开关输出
T15 8.45MC 二分频输出时钟信号
T16 NRZ码
T17 反相NRZ码
(1)先用示波器测T8(或T5)为 16.9M晶体振荡器输出时钟。

用20M示波器测试T8波形
(2)用示波器测T15为 8.4M输出时钟信号。

8M 时钟波形(用20M示波器测试T15)
(3)用示波器测T16为 NRZ输出信号
8Mb/S NRZ 码输出波形
注意:一般示波器只能观察到4级或5级伪随机码,对于更多级伪随机码由于普通示波器较难同步,很难看到完整信码序列,这时可以用MAXPLUSⅡ仿真器观察仿真波形 ,或用数字示波器观察伪随机码波形。

当伪码长度很长时示波器不能完全同步
五、实验报告内容要求
1、实验原理叙述
2、画出实验电路图
3、电路仿真结果记录和分析
4、实际测量数据记录,并结合理论进行分析
附录:
1、各级伪随机码(M序列)发生器反馈逻辑表
表1-1各种伪随机码发生器的反馈逻辑表
2、各级伪随机码发生器实验电路图
4级伪随机码电路
5级伪随机码电路
6级伪随机码电路
15级伪随机码电路
23级伪随机码电路。

相关主题