2011年全国电赛E题解析课件_第1页
2011年全国电赛E题解析课件_第2页
2011年全国电赛E题解析课件_第3页
2011年全国电赛E题解析课件_第4页
2011年全国电赛E题解析课件_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2011年全国电赛E题解析,2011年全国电赛E题解析,华中科技大学电工电子科技创新中心 王贞炎, 2012年7月,湖北黄石,2011年全国电赛E题解析,内容,1 一些概念 2 题目解析 3 典型方案 4 题目和测评中的问题,2011年全国电赛E题解析,1 一些概念内容,1.1 眼图 1.2 数字信号的带宽 1.3 m序列,伪随机序列 1.4 白噪声的特点,2011年全国电赛E题解析,1 一些概念1.1 眼图,眼图 在示波器上,以数字信号的同步信号作触发,数字信号被重复采样,叠加显示在屏幕上。 因形似“眼睛”,而成为眼图。 眼图的一些重要特征被用来描述数字信号的传输性能。,2011年全国电赛E

2、题解析,1. 一些概念1.2 数字信号的带宽,理想的二进制数字信号是理想的矩形波。 上升(下降)时间无穷小 带宽无穷大 实际传输数字信号需要的带宽,根据电平上升(下降)至90%(10%)的时间tr定义: 0.35/tr,根据单极点低通特性定义; 0.5/tr,根据多种情况下等效噪声带宽折中; 当tr接近码元周期时,0.5/tr等于码率的一半,这是一个通常的参考值。,2011年全国电赛E题解析,1. 一些概念1.3 m序列,最长线性反馈移位寄存器序列 当线性反馈移位寄存器(LFSR)的特征多项式为本原多项式时,方可产生周期为2n-1的二进制序列,即m序列。 一定位数的m多项式的数量是有限的。 m

3、序列具有尖锐的自相关特性和平坦的功率谱密度,可近似为白噪声。,2011年全国电赛E题解析,1 一些概念1.4 白噪声的特点,白噪声的频谱 功率谱密度分布均匀,功率谱平坦; 白噪声的功率(有效值的平方)与其带宽成正比; 限制其带宽可降低其有效值; 白噪声的瞬时值符合高斯分布,以有效值为标准差。 m序列的频谱 在远低于序列循环频率的地方,与白噪声近似。,2011年全国电赛E题解析,1 一些概念1.4 白噪声的特点,滤波器下的噪声 等效噪声带宽,如果一个实际滤波器对噪声功率的影响等效于一个带宽为fb的理想滤波器对噪声功率的影响,fb称为滤波器的等效噪声带宽。 实际低通滤波器的等效噪声带宽与其截止频率

4、是不同的,但它们有一定的关系,计算滤波器对噪声功率的衰减需要依据其等效噪声带宽。,面积相同,2011年全国电赛E题解析,2 题目解析内容,2.1 基本部分要求 数字信号发生器 低通滤波器 伪随机信号发生器 眼图显示 2.2 发挥部分要求 曼彻斯特编码 提取同步信号(时钟) 增大噪声幅度 2.3 整体框图,2011年全国电赛E题解析,2 题目解析2.1 基本部分要求,数字信号发生器 m序列,本原多项式:f1(x)=1+x2+x3+x4+x8 可由CPLD/FPGA数字逻辑实现; 也可由单片机用C语言实现(性能?)。,LFSR结构,if(lfsr ,lfsr = (lfsr 1) (-(lfsr

5、,2011年全国电赛E题解析,2 题目解析2.1 基本部分要求,数字信号发生器 码率10100kpbs,10kpbs步进,误差不大于1% 采用性能较好的单片机,如Cortex-M3,用定时器做10us、11.1us、12.5us、14.3us的定时中断,在中断服务函数里做移位、异或运算,可以实现题目要求,但性能稍显勉强。 后文有伪随机噪声10Mbps的码率要求,故均采用CPLD/FPGA比较合适。 允许的码元周期的最大误差:1/100k 1/101k = 99ns,1/99ns = 10.1MHz,因此CPLD/FPGA的工作时钟大于10.1MHz即可保证1%的码率误差。,2011年全国电赛E

6、题解析,2 题目解析2.1 基本部分要求,数字信号发生器 输出电平为TTL电平 TTL电平要求,输出高电平2.45V,输出低电平00.4V。 目前大部分主流的单片机、CPLD、FPGA的IO电平为3.3V-LVCMOS,或3.3V-LVTTL,其输出特性是可以满足TTL电平输出要求的。 但如果信号发生器的输出电平越高,对后面发挥部分恢复时钟越有利,所以最好将输出高电平调整为5V。,2011年全国电赛E题解析,2 题目解析2.1 基本部分要求,低通滤波器 带外衰减不小于40dB/Dec 至少采用2阶及以上的滤波器,因实际滤波器可能不够精准,为求稳妥,最好采用3阶滤波器(60dB/Dec)。 可采

7、用3阶无源滤波器,电路简单,但需匹配输入、输出阻抗,误差也不易做小; 采用运放做有源滤波器,12个运放完成; 采用通用滤波器芯片。,2011年全国电赛E题解析,2 题目解析2.1 基本部分要求,低通滤波器 截止频率100kHz、200kHz、500kHz,误差不大于10% 在100kbps的码率下,数百kHz的截止频率已比较接近传输带宽要求,用于模拟非理想信道的传输特性。 10%的误差要求并不算高,但如果采用运放做有源滤波器,应考虑运放的非理想特性,设计电路后,可采用具体的仿真模型仿真整个电路,修调R、C值,以达到要求。 通带增益0.24.0可调 滤波与4倍增益可同时完成,然后通过电位器分压;

8、 也可电位器分压后在经过4倍同相放大。,2011年全国电赛E题解析,2 题目解析2.1 基本部分要求,伪随机信号发生器 与数字信号发生器相似 本原多项式f2(x)=1+x+x4+x5+x12 码率10Mbps 必须采用CPLD或FPGA; 10Mbps的码率下,该伪噪声的功率谱密度在数百kHz处已非常平坦,完全可当做白噪声处理。 输出峰峰值100mV,误差不大于10% CPLD/FPGA输出后通过电位器分压并调整准确,但最好后面做电压跟随(运放)。,lfsr = (lfsr 1) (-(lfsr ,2011年全国电赛E题解析,2 题目解析2.1 基本部分要求,眼图显示 显示可采用示波器的YT模

9、式,外部触发 测试眼幅度 题目中对眼幅度的测试没有提出任何具体要求,让人难以捉摸,甚至有部分参赛队认为不是需要在作品中做自动测量,只是需要在示波器,或在自制显示器上使用光标进行手动测量。 如果要做自动测量,模拟方案可能比较复杂,因为需要避开跳沿附近测特定时间的峰值/谷值;用数字方案较合适,一般可交流耦合后,用高速AD(或短采样时间的AD)采集码元中央附近的多个瞬时电压,然后找到最小正值和最大负值做差。,2011年全国电赛E题解析,2 题目解析2.2 发挥部分要求,曼彻斯特编码 码率增倍(“1”“10”、“0”“01”); 无直流成分,包含位同步信息(为后面恢复时钟的要求做铺垫); 可由原码(N

10、RZ码)与时钟异或得到,在实现时应注意竞争冒险,采取同步方式。,2011年全国电赛E题解析,2 题目解析2.2 发挥部分要求,提取同步信号(恢复时钟) 本题的编码信号(数字基带)的码率是不确定的(11种可能值),为恢复时钟增加难度。 恢复时钟的方法有滤波法、锁相环法、直接测周/测频法。 滤波法: 将基带信号进行波形变换后使用窄带滤波器提取其中的时钟频率成分,但本题基带码率不确定,不宜采用; 如果穷举11种码率需要11个窄带滤波器,太复杂。,2011年全国电赛E题解析,2 题目解析2.2 发挥部分要求,提取同步信号(恢复时钟) 锁相环 采用异或门鉴相器的锁相环,锁定范围有限(90相差,两倍频以内

11、),对于本题不太实用,采用11种不同的初始频率去穷举或许可以,但没有仿真或实验验证。,典型的加减脉冲锁相环,本振频率为 工作时钟/H/N,锁定状态为恒定相差90 当输入信号相位超前时,异或门输出较 多高电平,在可逆计数器中累积加计数, 直至产生进位信号,控制加脉冲,导致 输出同步信号频率增加。,2011年全国电赛E题解析,2 题目解析2.2 发挥部分要求,提取同步信号(恢复时钟) 锁相环 采用双触发器鉴频,锁定范围大,编码输入相位超前时,环路滤波计数器 加计数,数控振荡器计数步进(相角步 进)增加,输出频率增加。 NCO初始化频率取决于环路滤波计数器 的初始值。,曼彻斯特编码的“频率”?,NR

12、Z中的“0”曼码码元中央的上跳沿 NRZ中的“11”曼码码元边缘的上跳沿 “0”的出现概率:50% “11”的出现概率:25% 曼码的频率 = 码率75% 要还原同步信号,需要做4/3倍频,2011年全国电赛E题解析,2 题目解析2.2 发挥部分要求,提取同步信号(恢复时钟) 直接测周并同步 检测一小段时间内曼码的最大/最小跳沿间隔(码元周期/周期的一半),让计数器以此为模循环计数,并在合适地跳沿出现时清零。 直接测频并同步 在一小段时间内计曼码的跳沿个数,根据4/3的关系确定码率,确定码元周期,让计数器以此循环周期计数,并由曼码的跳沿清零。,2011年全国电赛E题解析,2 题目解析2.2 发

13、挥部分要求,增大噪声幅度 CPLD/FPGA输出后变换为5V,再用电位器分压,输出需要电压跟随。 尽量低的信噪比下恢复时钟 噪声增大使得电路对曼码的识别(比较整形)变得困难。 滤波限制噪声功率 根据噪声的特点,在对曼码比较整形之前,可以对被噪声干扰的信号进行滤波,滤除有效频带外的噪声,降低噪声能量(有效值)。 使用滤波器衰减噪声,10Mbps的m序列的能量谱密度呈sinc2函数:,2011年全国电赛E题解析,2 题目解析2.2 发挥部分要求,尽量低的信噪比下恢复时钟 滤波限制噪声功率 100kbps的数据经曼彻斯特编码后,数据率为200kbps,可取最小传输带宽100kHz; 如果使用100k

14、Hz低通滤波器对受干扰的信号进行滤波,假定滤波器为二阶(等效噪声带宽为截止频率的1.22倍),此时可算得噪声功率减小为原来的0.027倍; 噪声有效值被滤到原值的约0.16倍,可有效提高曼码识别的准确性。,2011年全国电赛E题解析,2 题目解析2.3 整体框图,题目中的图,2011年全国电赛E题解析,2 题目解析2.3 整体框图,整体设计 两个序列产生、曼彻斯特编码、同步信号提取均采用FPGA实现,配合适当的按键显示控制码率。 TTL电平变换可采用74HCT244等芯片、增益控制均由电位器完成。 预留测试点!,2011年全国电赛E题解析,3 典型方案内容,3.1 m序列的产生 数据率控制 L

15、FSR TTL电平和幅度控制 3.2 曼彻斯特编码 编码的实现 同步问题 3.3 滤波器 运放方案 专用芯片方案 增益级和增益控制 3.4 同步信号提取 锁相环方案 测周方案 其它方案与思路 3.5 眼幅度测量,2011年全国电赛E题解析,3 典型方案3.1 m序列的产生,数据率控制 在FPGA中,应该使用同步逻辑,工作频率的控制不应采用“时钟分频”,而应使用“时钟使能”,并尽量让所有模块使用同一个时钟。 为了产生10kHz,20kHz100kHz的使能信号,可采用一个模可设置的计数器对时钟计数,进位输出即为使能。,2011年全国电赛E题解析,3 典型方案3.1 m序列的产生,数据率控制 Ve

16、rilog描述 如果时钟50MHz,计数产生10kHz使能需要ceil(log2(50M/10k)=13位。 其中en1和en2恰好错开180相位,其“或”为两倍频使能,用于后续产生曼码。,module datarate_ctrl ( input clk, input 12:0 div, output en1, output en2 ); reg 12:0 cnt; always(posedge clk) begin if(cnt 1) - 1b1); endmodule,2011年全国电赛E题解析,3 典型方案3.1 m序列的产生,LFSR Verilog描述 对位宽和多项式参数化,数据和伪

17、噪声用同一模块。,module lfsr #( parameter W = 8, parameter POLY = 9h11D) ( input clk, input arst, input en, output out ); reg W-1:0 sreg; assign out = sreg0; always(posedge clk or posedge arst) begin if(arst) sreg 1) (POLY 1); else sreg 1; end end end endmodule,lfsr #(8, 9h11D) data_lfsr(clk, arst, en1, dat

18、a_seq); lfsr #(12, 13h1033) data_lfsr(clk, arst, en1, noise_seq);,2011年全国电赛E题解析,3 典型方案3.1 m序列的产生,TTL电平和幅度控制 根据前面所述,希望TTL输出高电平接近上限5V,可采用5V供电的74HCT244作缓冲输出,其输入高电平仅要求2V以上,可接受FPGA的输出,而输出可以很接近电源轨。 74HCT244输出后经过电位器控制衰减后在经过运放电压跟随。,2011年全国电赛E题解析,3 典型方案3.2 曼彻斯特编码,编码的实现 VerilogHDL描述 其中“ck”模拟原码的同步时钟,module man

19、_coder ( input clk, input en1, input en2, input in, output reg out ); reg ck; always(posedge clk) begin if(en1) ck = 1b0; else if(en2) ck = 1b1; end always(posedge clk) begin out = in ck; end endmodule,2011年全国电赛E题解析,3 典型方案3.2 曼彻斯特编码,同步问题 有参赛队没有使用“使能”做码率控制,而采用时钟分频方式 使用分频之后的时钟驱动曼码生成,使用原码的时钟与原码相异或,而原码的

20、时钟和原码的跳沿不可能严格对齐,因而出现竞争冒险; 为了避免出现竞争冒险的毛刺,可使用“clk_2x”(两倍时钟,曼码的同步时钟)将输出再同步一次,而且这个clk_2x时钟的相位要求严格; 但这样造成了曼码输出延迟了一个或半个周期(取决于两倍时钟的相位),原则上这没有问题,但在测试时会给专家们识别比对造成麻烦。,module man_coder ( input clk, input in, output out); assing out = in clk; endmodule,module man_coder ( input clk, input clk_2x, input in, outpu

21、t reg out); always(posedge clk_2x) out = in clk; endmodule,2011年全国电赛E题解析,3 典型方案3.3 滤波器,运放方案 可采用Filter Solution,TI-TINA等软件设计滤波器; 运放可采用TL081(082, 084)等常见运放芯片,其带宽增益积3MHz,满足这里的滤波器要求。 最大增益时输出信号电压0V20V,因一般运放最大供电电压约30V,可采用同相滤波放大配合不对称电源供电(25V, -5V); 如果要在滤波同时做放大,不宜做反相放大,否则电源供电难于处理。,2011年全国电赛E题解析,3 典型方案3.3 滤波

22、器,运放方案 100kHz滤波器 增益12.04dB,-3dB截止频率约97.6kHz,增益峰12.3dB。 用TL082模型仿真得到的RC参数与用理想运放模型得到的RC参数有一定出入。 实际制作时还需根据测试结果进行微调。,2011年全国电赛E题解析,3 典型方案3.3 滤波器,运放方案 200kHz滤波器 增益12.04dB,-3dB截止频率约194.4kHz,增益峰12.1dB。 用TL082模型仿真得到的RC参数与用理想运放模型得到的RC参数有一定出入。 实际制作时还需根据测试结果进行微调。,2011年全国电赛E题解析,3 典型方案3.3 滤波器,运放方案 500kHz滤波器 增益12

23、.04dB,-3dB截止频率约507.4kHz,增益峰12.4dB。 在500kHz时,用TL082模型仿真得到的RC参数与用理想运放模型得到的RC参数出入很大。 实际制作时还需要根据测试结果进行微调。,2011年全国电赛E题解析,3 典型方案3.3 滤波器,专用芯片方案 例如LT1562-2和LT1568 外部仅需使用电阻配置截止频率; LT1562-2,四个2阶单元,可配置为两个4阶滤波器,20kHz300kHz; LT1568,两个2阶单元,可配置为一个4阶滤波器,200kHz5MHz; 但是它们的供电电压最大为双5V,不能提供增益,若用于此题,必须另外在后级做4倍增益。,2011年全国

24、电赛E题解析,3 典型方案3.3 滤波器,增益控制 如果滤波器上做了4倍增益,后级可用电位器衰减和电压跟随。 如果滤波器未做4倍增益,后级可用电位器衰减和4倍同相放大。,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,数字锁相环方案 采用寄存器鉴频鉴相器的数字锁相环方案经过仿真验证证明可行,但在我校参赛队中无人采用。 在数字锁相环方案中,鉴频鉴相器输入和同步信号输出均为使能脉冲形式,即为单周期高电平。 因原码码率 = 4/3 曼码“频率”,为得到曼码的同步脉冲,应将曼码“频率”作“8/3”倍频。,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,数字锁相环方案 鉴频鉴

25、相部分的Verilog描述 其中in_pulse由曼码的上跳沿转换而来,module dual_ff_pfd ( input clk, input in_pulse, input ref_pulse, output reg faster, output reg slower ); always(posedge clk) begin if(in_pulse end end endmodule,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,数字锁相环方案 环路滤波计数器部分的Verilog描述 其输出为将送给NCO的频率控制字,与输出脉冲频率成正比。 参数ACC为计数器的步进值,控

26、制环路滤波的时间常数,在ACC=4的时候,整个PLL从输出脉冲频率0到跟踪到200kbps的曼码码率,大约需要200ms。,module loop_filter #( parameter ACC = 1) ( input clk, input faster, input slower, output reg 31 : 0 out ); initial begin out = 32d0; end always(posedge clk) begin if(faster end endmodule,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,数字锁相环方案 NCO部分的Verilo

27、g描述 类似于DDS相位累加的方式,32位计数器循环累加,过零时输出脉冲。 累加的步进值决定了输出频率,fout = 50MHz * 步进 / 232。,module digi_vco ( input clk, input 31:0 vin, output pulse ); reg 31:0 cnt; initial begin cnt cnt + vin); endmodule,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,数字锁相环方案 分频器的Verilog描述 对使能脉冲的频率进行分频,module pulse_freq_div #( parameter DIV = 4

28、) ( input clk, input in_pulse, output out_pulse ); reg 7:0 cnt; initial begin cnt = 1b0; end always(posedge clk) begin if(in_pulse) begin if(cnt DIV - 1b1) cnt = cnt + 1b1; else cnt = 1b0; end end assign out_pulse = (cnt = 1b0) endmodule,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,数字锁相环方案 整体,module digital_pll #

29、( parameter MUL = 8, parameter DIV = 3, parameter ACC = 1) ( input clk, input in_pulse, output out_pulse, output 31:0 vco_vctrl); wire vco_out_pulse; wire pfd_ref_pulse; pulse_freq_div#(.DIV(MUL) inst_vco_out_div ( .clk(clk), .in_pulse(vco_out_pulse), .out_pulse(pfd_ref_pulse); pulse_freq_div #(.DIV

30、(DIV) inst_output_div ( .clk(clk), .in_pulse(vco_out_pulse), .out_pulse(out_pulse); wire faster, slower; dual_ff_pfd inst_pfd ( .clk(clk), .in_pulse(in_pulse), .ref_pulse(pfd_ref_pulse), .faster(faster), .slower(slower); loop_filter #(.ACC(ACC) inst_loop_fiter ( .clk(clk), .faster(faster), .slower(s

31、lower), .out(vco_vctrl); digi_vco inst_vco ( .clk(clk), .vin(vco_vctrl), .pulse(vco_out_pulse); endmodule,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,数字锁相环方案 相位问题 虽然曼码的“频率”在长期是稳定的,但是在一两个码元周期内上跳沿的相位变化非常大,导致恢复的时钟输出也有一定的相位抖动。 为了解决这个问题,改进的方案使用另外一个NCO产生同步脉冲,该NCO与原PLL中的NCO的步进控制字一致,模为3倍(对应于原NCO的三分频输出),但在每个码元的合适上跳沿(与自己的

32、计数相位差不大时,即计数值在0附近时),相位清零。 而实际输出的同步脉冲,在计数中值输出,使得输出位于码元中央。,module digi_vco_srst ( input clk, input srst, input 31:0 vin, output pulse); reg 33:0 cnt, last_cnt; initial begin cnt =3b011); endmodule,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,数字锁相环方案 整体仿真结果 0150ms,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,数字锁相环方案 整体仿真结果 250ms处

33、的细节,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,测周方案 直接短时测周/测频方案是我校参赛队中采用最广泛的方案,三支全国一等奖参赛队均采用直接测周或测频的方案 方案思路简单,代码简单,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,测周方案 测周模块 测周模块用于测量(计数)短时(如100ms)内曼码的两个间隔最大的相邻跳沿(上或下)间的时间,这个时间即为曼码码元周期的两倍。,module max_period_mea ( input clk, input code_edge, output reg 15:0 period); reg 15:0 cnt, p

34、_temp; reg 23:0 cnt_for_100ms; initial begin cnt p_temp) p_temp = cnt; end end endmodule,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,测周方案 同步脉冲生成 以测周模块测得的周期为模计数 在曼码的适当跳沿(即计数值在0附近)清零,module man_clk_rec_easy ( input clk, input man_code, output man_sync); reg 1:0 man_code_dly; wire man_code_edge = man_code_dly; alwa

35、ys(posedge clk) begin man_code_dly = man_code_dly0, man_code; end wire 15:0 prd; max_period_mea inst_p_mea ( .clk(clk), .code_edge(man_code_edge), .period(prd); reg 15:0 cnt; always(posedge clk) begin if(man_code_edge) begin if(cnt (prd - (prd 2) endmodule,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,测周方案 整体仿真结果 100ms附近,第一次测周完成,2011年全国电赛E题解析,3 典型方案3.4 同步信号提取,其它思路 FFT测频,直接对被噪声干扰的曼彻斯特编码进行频谱分析,对频谱进行滑动平均滤波,求得频谱包络,根据包络的峰值或谷值确定码率;得到同步信号频率后,再用与前面类似的方法同步相位。 充分利用题目已知条件,因曼码率是固定的11种整20kbps,各种测频/测周方法不必测准,大致测得后可直接按最接近整20kHz输出频率,而再跟据码的跳沿校正相位(晶振频率误差数十ppm)。 自相关法,使用高速AD(10Msps)采集包含噪声的信号,连

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论