ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:816.58KB ,
资源ID:1023884      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-1023884.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基带传输系统位同步器的设计.docx)为本站会员(龙***)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

基带传输系统位同步器的设计.docx

1、1简介:码元同步又称时钟同步或时钟恢复。在接收数字信号时,为了对接收码元积分以求得码元的能量以及对每个接收码元抽样判决,必须知道每个接收码元准确的起止时刻。这就是说,在接收端需要产生与接收码元严格同步的时钟脉冲序列,用它来确定每个码元的积分区间和抽样判决时刻。时钟脉冲序列是周期性的归零脉冲序列,其周期与接收码元周期相同,且相位和接收码元的起止时刻对正。当码元同步时此时钟脉冲序列和接收码元起止时刻保持着正确的时间关系。码元同步技术则是从接收信号中获取同步信息,使此时钟脉冲序列和接收码元起止时刻保持着正确关系的技术。对于二进制而言,码元同步又叫位同步。一、设计任务设计一个基带传输系统的位同步器,要

2、求自己生成基带信号 m(t),m(t)为 15 位或者31 位的伪随机序列,然后根据此基带信号将位同步信号提取出来。1、基带信号(伪随机序列)产生一个 15 或 31 位的伪随机序列,因为 m 序列实现简单且研究广泛,故本文的基带信号用 m 序列。15 位的 m 序列连续的“1”码最长有 4 个,连续的“0”码最长有 3 个,不需要波形变换,故本文使用 15 位的 m 序列。2、提取同步根据输入的基带信号 m(t)将位同步信号提取出来,即判断最佳抽样时刻,使之能够准确无误地将基带信号恢复出来。二、功能指标下面讨论本设计各部分的指标。1、基带信号m 序列的性质一般包含均衡性、游程分布和自相关函数

3、等。(1)均衡性在 m 序列的一个周期中, “1”和“0”的数目基本相等。准确地说, “1”的个数比“0”的个数多一个。(2)游程分布我们把一个序列中取值相同的那些相继的(连在一起的)元素合称为一个“游程(run) ”。在一个游程中元素的个数称为游程长度。严格讲,长度为 k 的游程数目占游程总数的 2-k,其中 1k(n-1) 。而且在长度为 k 的游程中(其中 1k(n-2) ) ,连“1”的游程和连“0”的游程各占一半。2(3)自相关函数m 序列的自相关函数可以定义为:(j)=(A-D)/(A+D)=(A-D)/m式中:A 为 m 序列与其 j 次移位序列一个周期中对应元素相同的数目;D

4、为 m 序列与其 j 次移位序列一个周期中对应元素不同的数目;m 为 m 序列的周期。m 序列的自相关函数还可以写成如下形式:(j)=(a ia i+j=0的数目-a ia i+j=1的数目)/m由 m 序列的移位相加特性可知,上式分子中的 aia i+j仍为 m 序列的一个元素。所以上式分子就等于 m 序列一个周期中“0”的数目与“1”的数目之差。另外,由 m 序列的均衡性可知,m 序列一个周期中“0”的数目比“1”的数目少一个。所以上式分子等于-1。故有:(j)=-1/m j=1,2,m-1当 j=0 时,显然 (0)=1。所以,我们最后写成:(j)=1 j=0; (j)=-1/m j=1

5、,2,m-1不难看出,由于 m 序列有周期性,故其自相关函数也有周期性,周期也是 m,即(j)=(j-km) jkm,k=1,2,而且 (j)是偶函数,即有:(j)=(-j) j=整数2、同步信号位同步系统的性能指标通常是用相位误差、建立时间、保持时间等指标来衡量。(1)相位误差 e相位误差主要是由于位同步脉冲的相位在离散地调整所引起的。因为每调整一步,相位改变 2/n(n 是分频器的分频次数) ,故最大的相位误差为 2/n。用这个最大的相位误差来表示 e,可得 e=360/n有时不用相位差而用时间差 Te来表示相位误差。因为码元周期为 T,故得Te=T/n本文中 n=282,故 e=1.28

6、,T e=2.0810-8(秒)。(2)建立时间 ts同步建立时间即为失去同步后重建同步所需的最长时间。为了求这个最长时间,令位同步脉冲的相位与输入信号码元的相位相差 T/2 秒,而相位每调整一步仅能调整 T/n 秒,故所需最大调整次数为N=(T/2)/(T/n)=n/2接收随机数字信号时,可近似地认为两相邻码元中出现 0、1 的概率相等。由于本设计中,每 15 个码元周期中有 8 个跳变边沿,因此平均来说,每 2T 秒可调整一次相位,故同步建立时间为Ts=2T*N=nT=1.6310-3 (秒)(3)保持时间 tc当同步建立后,一旦输入信号中断,由于收发双方的固有频率之间总存在频差 F,收端

7、同步信号的相位就会逐渐发生漂移,时间越长,相位漂移量越大,直至漂移量达到某一准许的最大值,就算失步了。设收发两端固有码元周期分别为 T1=1/F1和 T2=1/F2,则3|T1-T2|=|1/F1-1/F2|=|F2-F1|/(F1F2)=F/F 02式中的 F0为收发两端固有码元频率的几何平均值,且有T0=1/F0可得F0|T1-T2|=F/F 0即|T1-T2|/T0=F/F 0上式说明了当有频差 F 存在时,每经过 T0时间,收发两端就会产生|T 1-T2|的时间漂移。反过来,若规定两端允许的最大时间漂移为 T0/K 秒(K 为一常数) ,经过 tc秒就会到达此值。这样求出的时间就是同步

8、保持时间 tc。即(T0/K)/tc=F/F 0解得tc=1/(F*K)若同步保持时间 tc的指标给定,也可求出收发两端振荡器的频率稳定度的要求为F=1/(t cK)此频率误差是由收发两端振荡器造成的。若两振荡器的频率稳定度相同,则要求每个振荡器的频率稳定度不能低于F/(2F 0)=1/(2tcF0K)本设计中,收发两端允许的最大时间漂移小于半个码元周期,即 1/170.5kHz,所以K=3.510-3。三、原理本设计中,基带信号采用 m 序列,位同步使用 Gardner 算法的思想。1、基带信号(伪随机序列)m 序列是最长线性反馈移位寄存器序列的简称。它是由带线性反馈的移位寄存器产生的周期最

9、长的序列。n 级线性反馈移存器可产生 2n-1 位伪随机序列,产生 15 位伪随机序列需要 4 级移存器。图 3.1.0 为一般的线性反馈网络移存器原理方框图。图 3.1.0 线性反馈移位寄存器原理方框图根据本原多项式表,4 级移存器的本原多项式代数式为 f(x)=x4+x+1,八进制表示为23,即 010011,故 c4=1,c 1=1,c 0=1,其余均为 0。故 15 位伪随机序列可由图 3.1.1 所示方框图给出。4图 3.1.1 4 级线性反馈移存器原理方框图此移存器产生的伪随机序列的一个周期为 1111,0101,1001,000。2、位同步原理本地通过 48MHz 的时钟 N 分

10、频产生于发送端频率相同但是相位随机的时钟脉冲。m 序列输入到同步器中,鉴相器判断当前的本地时钟超前还是滞后,去调整分频器的分频次数N,从而改变本地时钟的频率。因为相位 =t+,所以本地时钟的相位也随之改变。通过不断地调整分频次数 N 可以达到位同步的功能。图 3.2.0 是本设计中位同步的原理框图。图 3.2.0 位同步原理框图位同步使用的是 Gardner 算法。Gardner 算法要求每个码元周期至少有 2 个采样点,且它在进行位同步提取时对载波相位不敏感。用 x(k)表示接收机对于某时刻码元的采样值,由于该时刻与理想的码元采样时刻可能有偏差,即它未必准确对应眼图张开最大时刻,故称其为准采

11、样时刻。对应的 x(k)为原始码元的准采样值。则前一码元的准采样值应记为x(k-1)。在 Gardner 算法中,每个码元周期还需要一个采样值,其采样时刻在 x(k)和 x(k-1)的中间位置,可以称为半采样值,记作 x(k-1/2)。Gardner 算法给出的位同步鉴相误差为u(k)=x(k-1/2)x(k)-x(k-1)通过图 3.2.1 来感性地理解这个鉴相式。对于理想的双极性码元波形,若相邻码元之间产生跳变,即 x(k)-x(k-1)0,且相位已经锁定,则有 x(k-1/2)=0,所以 u(k)=0,如图 3.2.1(a)所示。若位同步信号超前于理想时钟,则有 u(k)0,如图 3.2

12、.1(c)所示。另外,若相邻码元之间未产生跳变,则 x(k)x(k-1),u(k)=0。虽然此时位同步信号存在超前或滞后现象,但算法无法进行判断。为了使接收码元序列中不会长时间地没有突变边沿,可以对基带码元的传输码型做某种变换,例如改用 HDB3码,或者使用扰乱技术,使发送码元序列不会长时间地没有突跳边沿。5图 3.2.1 Gardner 算法示意图以上讨论的是双极性信号,而 FPGA 产生出来的是单极性数字信号。考虑到只有在码元发生跳变的时刻才会有位同步信息,故而数字信号跳变前后的两个时刻电平不同,故可通过两个时刻的异或来实现对突跳边沿的识别。通过判断 x(k-1/2)和 x(k-1)判断本

13、地时钟相对于理想时钟的超前或滞后。通过图 3.2.2感性地理解一下。如果在码元跳变时刻相位超前,则 x(k-1)x(k-1/2),如图 3.2.2(a)所示。如果在码元时刻相位滞后,则 x(k-1)=x(k-1/2),如图 3.2.2(b)所示。因为数字信号在跳变边沿无定义,所以如果在码元跳变时刻相位正好锁定,则此时的 x(k-1/2)应无意义,但数字信号只有“0”和“1”两种状态,即 x(k-1/2)要么为“0”要么为“1” ,所以就算码元跳变时刻相位正好锁定,但是本设计的方法判断不出来,判断出来的本地时钟只能是要么超前要么滞后,在下个码元跳变时刻再进行调整,只要接收码元序列中不会长时间地没

14、有跳变边沿,则本地时钟的相位会不停地进行调整以保证相位误差在允许范围之内。图 3.2.2 数字信号 Gardner 算法示意图四、设计本设计基于 FPGA,设计了一个 FPGA 最小系统。采用如图 4.0 所示的结构框图。6图 4.0 FPGA 结构框图1、硬件设计本设计使用 Altium Designer 13 绘制原理图和 PCB。(1)原理图部分:本设计使用的 FPGA 是 Altera 的 Cyclone EP1C3T100C8N,包含 2910 个逻辑元件,封装为 100-PIN TQFP 封装。FPGA 的所有引脚均开放,使此 FPGA 不仅限于本设计。此 FPGA需要 3.3V

15、和 1.5V 供电,但是一般电源产生为 12V 或 5V,故需要 DC-DC 变换为 3.3V 和1.5V。本设计使用 DC-5V 供电,使用 AMS1117-3.3 将 5V 变换为 3.3V,使用 AMS1117-1.5将 5V 变换为 1.5V。本设计中,基带信号由 FPGA 产生,为单极性非归零信号,故没有电平抬升和电压保护电路。FPGA 的配置芯片使用 EPCS16SI16N。图 4.1.0 硬件原理图(2)PCB 部分:电源尽量远离其他器件以避免干扰;下载端口放置在 PCB 边缘方便使用;时钟尽量靠近 FPGA,并且输出接一个 50 电阻以减小时钟噪声。7图 4.1.1 硬件 PC

16、B2、软件设计本设计使用 Quartus II 13.0sp1 (64-bit)编译、下载程序,使用 Verilog 编写程序。(1)伪随机序列产生部分本部分产生四种码型,分别为全“0”码、全“1”码、 “0”“1”等间隔码和 m 序列,来分析不同码型下的同步情况。always(posedge clk1)num0 = num0 + 2d1; /由 num0 的四种状态来产生四种码型。/实现移位寄存always(posedge clk0)begincase(num0)2d0 : mcode = 0; /产生全“0”码。2d1 : mcode = 1; /产生全“1”码。2d2 : begin m

17、code = mcode; end /产生“0” “1”等间隔的码。2d3 : begin q0 = q1; q1 = q2; q2 = q3; q3 = q3 q0; 8mcode = q0; end /产生 m 序列。endcaseend(2)位同步及抽样判决部分本地时钟与发送端时钟同频不同相,当本地时钟与发送端时钟不同频率时,可将计数初值(counter)设置为不同值。在本设计中,当收发时钟频率相同时,计数初值 counter设为 140,频率不同时,计数初值 counter 设为 139。为了减小同步建立时间,本设计中对计数器调整的步进是动态调整的,通过增大调整步进来使同步更加迅速,即

18、当跳变边沿到来时,如果判断为本地时钟超前(滞后) ,则使计数初值加 1(减 1) ,下个跳变边沿到来时,如果本地时钟还是超前(滞后) ,则使计数初值加 2(减 2)/在本地时钟上升沿对输入伪随机序列进行抽样,用于判断抽样时刻的超前和滞后。always(posedge clk_out)q1 = mcode;/在本地时钟下降沿对输入伪随机序列进行抽样。always(negedge clk_out)beginq2 = q0;q0 = mcode;if(q2 q0) = 1) /判断伪随机序列跳变,如果两个时刻的抽样值不同,/则表示序列有跳变。beginif(q2 = q1) /相等表示滞后。begi

19、ncounter = counter - i; /本地时钟滞后,就在计数期间少计 i 个数,/使本地时钟相位增大;本地时钟超前时相反。i = i + 8d1;j = 8d1;endelsebegincounter = counter + j;j = j + 8d1;i = 8d1;endendelsecounter = 8d140; /没有跳变时计数值恢复为 140 以消除累积误差。9end/对输入的伪随机序列进行抽样判决,恢复伪随机序列。always(negedge clk_out)mdecode = mcode;3、实现结果本设计的实现基于 Altera Cyclone EP1C3T100

20、C8N,使用 SIGLENT 公司的 SDC3054 示波器观察各种波形,使用示波器的打印功能将波形存储下来。(1)伪随机序列15 位的 m 序列如图 3.1.0 所示。由图中可以看出,一个周期中的伪随机序列为 111101011001000。图 3.1.0 15 位伪随机序列用 MATLAB R2014a 分析随机序列的自相关函数,分析结果如图 3.1.1 所示。由图可得此序列自相关函数的周期为 15 且比较尖锐,自相关函数峰值下降是因为分析时的数据长度不是足够的长。10图 3.1.1 伪随机序列的自相关函数(2)位同步当 counter 为 140,即收发时钟同频不同相时的同步效果图如图

21、3.2.0(a)和图3.2.0(b)所示,其中,通道 1 为发送端的时钟,通道 2 为发送端 m 序列,通道 3 为同步时钟,通道 4 为恢复出来的 m 序列。本地时钟上升沿同步理想时钟的上升沿,故在位同步时钟的下降沿对码元抽样判决,恢复伪随机序列。由图中可以看出,位同步时钟信号和伪随机码恢复正确,且本地时钟相位一直在微调以保证相位锁定。图 3.2.0(a) counter 为 140 时的位同步效果图图 3.2.0(b) counter 为 140 时的位同步效果局部放大图当发送端发送的波形为方波,频率为时钟频率的 1/2 时,同步的效果如图 3.2.1 所示。从图中可以出,由于此方波的同步信息非常丰富,所以同步时钟的抖动比 m 序列要小很多。

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。