您的位置 首页 国产IC

根据Cyclone系列FPGA器材和UART功用完成误码率测验仪器的规划

基于Cyclone系列FPGA器件和UART功能实现误码率测试仪器的设计-在通信系统的设计实现过程中,都需要测试系统的误码性能。而常见的误码率测试仪多数专用于测试各种标准高速信道,不便于测试实际应用中大量的专用信道,并且价格昂贵,搭建测试平台复杂。随着大规模集成电路的迅速发展,FPGA在保持其集成度高,体积小,功耗低,性价比高特性的同时,能够实现越来越复杂设计功能,日益广泛的应用于通信设备的设计实现。

1、概述

在通讯体系的规划完结过程中,都需求测验体系的误码功用。而常见的误码率测验仪大都专用于测验各种规范高速信道,不便于测验实践运用中许多的专用信道,而且价格昂贵,树立测验渠道杂乱。跟着大规模集成电路的迅速发展,FPGA在坚持其集成度高,体积小,功耗低,性价比高特性的一起,能够完结越来越杂乱规划功用,日益广泛的运用于通讯设备的规划完结。

本文提出了一种依据FPGA的误码率测验仪的计划,运用一片Altera公司的Cyclone系列的FPGA(EP1C6-144T)及相关的外围电路,完结误码测验功用,主控核算机能够经过FPGA内建的异步串行接口(UART)装备误码测验仪并读取误码信息,由核算机完结误码剖析。一起,该计划还供给了简易的数据显现,能够在脱离核算机的状况下,进行通讯体系作业功用的定性剖析。

2、体系构成和作业流程

依照完结的功用,整个体系能够分为测验码生成单元、误码测验单元、接口单元、显现单元和时钟生成单元以及主控核算机上运转的操控测验软件六个部分,详细框图如图1所示。

依据Cyclone系列FPGA器材和UART功用完结误码率测验仪器的规划

图1误码测验仪框图 运用误码率测验仪进行误码率测验的闭环测验渠道结构如图2所示。对照图1、图2,将体系的作业流程描绘如下。

图2 通讯体系误码测验框图

依据待测通讯体系的数据速率由核算机经过UART装备时钟生成单元,得到作业时钟和各使能计数器的参数,使得体系依照预订时钟作业;由测验码生成单元依照设置好的时钟将 测验码发送给待测体系的发送设备;发送信号经过信道仿真器后,由待测体系的接纳单元接纳、判定,再将接纳数据和康复的数据时钟送入误码测验仪;误码测验仪中的误码测验单元完结输入数据和本地数据的同步后,对输入数据同本地数据进行比较,核算误码数,每完结两个测验码周期的数据比较,就将误码信息经过UART发送给核算机,进行误码核算,一起将误码数传送给显现单元,进行处理后驱动外部的四个七段数码管,显现本测验码周期内的误码率。

3、关键技能及其完结

3.1 测验码的产生

本规划运用m序列作为测验码,m序列产生器依照CCITT主张,生成用于低速数据传输设备测验误码的m序列,其特征多项式为x9+x4+1,周期为512。运用m序列的伪随机特性,能够很好的测验在不同的输入组合下,体系的通讯功用,一起,m序列极强的自相关性,便于测验仪完结输入数据同本地测验码同步,以便进行误码计数。

3.2 误码测验单元的完结

误码测验单元是整个体系的中心单元,其功用框图如图3所示。序列同步盯梢单元的功用是运用m序列的自相关特性,将输入的数据同本地的m序列同步起来,并将同步信息传给码元比较单元。

咱们运用测验序列—m序列的自相关性完结接纳序列与本地序列的同步。m序列的捕获有许多办法,一般运用的有相关器法和循环累加法。相关器法的长处是捕获速度快,一般捕获时间不超越两个m序列的周期,可是相关器最大的问题便是所需的逻辑资源太多。相比之下,循环累加法所需的逻辑资源很少,尽管捕获时延较长,但在测验环境下,一般是能够忍耐的,别的,咱们还能够采纳必定的办法进一步削减捕获时延。循环累加器的作业原理如下,体系复位后,m序列产生器依照预设的参数生成m序列,存入m序列缓冲区,码元同步后,在地址产生器的操控下,将m序列从缓冲区中读出,同输入序列按位进行同或运算后进行算术加,相加得到的和经D触发器缓冲一个时钟周期后,输入加法器,作为下一次加法运算的一个加数,然后完结本地序列同输入序列的循环累加。累加和送入门限检测器同所设门限比较,如低于门限,则地址产生使能和同步指示输出均无效,为‘0’,假如高于所设门限,则两信号置高。后边的码元比较单元开端作业,进行输入序列和本地序列的比较。地址产生器产生的地址由两部分组成,即:

地址输出=累加地址+偏移地址

两个地址的初值均为‘0’,累加地址计数规模同m序列的长度相同,每个时钟周期加1,第一个周期输出的m序列从第一个码元开端输出,加完一个m序列周期后,地址产生器查看由门限检测输入的地址产生操控信号,假如该信号为‘0’,那么表明输入序列同本地序列没有同步,存在相位差,此刻,偏移地址加1,累加地址重新开端累加计数,使得第二个周期输出的m序列从第二个码元开端输出,完结了本地m序列相对于输入序列的“滑动”。

经过本地码的滑动,同输入序列彻底同步,依据m序列的相关性,累加值会呈现相关峰,超越门限检测的门限值,此刻,门限检测单元就会将地址产生操控信号置‘1’,地址产生器的偏移地址不再改变,累加地址持续循环计数,m序列缓冲区依照输入的地址,将与输入序列同步的m序列输出至门限检测单元和码元比较单元,一起,经过UART向主控PC发送开端误码测验的音讯。

当序列同步完结之后,门限检测单元持续作业,查看序列的同步状况,当某一时间,相关峰值低于门限,则能够判别体系误码率过高,或许数据传输过程中呈现丢帧的状况。此刻,门限检测单元将同步指示和地址产生使能一起置为无效,开端新一轮捕获,一起经过UART向主控PC发送中止误码测验的报警,等候下一次核算的开端。能够看出,体系误码功用的规划目标同门限检测单元中的门限能够树立对应联系,便于测验前的参数设置。图4是测验码捕获的时序仿真图,为了测验误码核算功用,咱们将测验码的前三个码取反,以便构成误码。从图中能够看出,当累加器的和高于门限时,同步指示为高,当一个新的测验码周期开端时,误码计数开端,前三个测验码是错的,能够看到误码计数正确的核算了误码个数。

码元比较单元将接纳到的序列通本地产生的m序列按位作异或运算,每呈现一个误码,就会输出一个计数脉冲。误码计数单元依照预先设置好的参数,每检测完两个测验码周期,就经过UART向传送一次误码个数,便于主控核算机核算误码信息。

误码测验单元经过UART同PC机进行通讯,将误码信息发送给PC机,由PC机进行误码数据的剖析核算处理,并构成报表。UART?经过体系供给的10MHz的时钟分频得到57.6Kbps的波特率。

3.3 误码率实时显现的完结

误码率的实时显现是经过四个共阴极的七段数码管完结的,首要用于误码测验仪脱离主控核算机作业时,经过对每两个测验码周期的误码核算,将这一时段的实时误码率用科学计数法在七段数码管上显现出来,以便对通讯体系的运转状况进行定性的剖析。第一个数码管显现个位和小数点,第二个数码管显现小数点后第一位,第三个显现负号,第四个显现一位数字,表明科学计数法的负几次方。下面以两个测验码周期(1024个码)中核算到256个误码为例,阐明怎么得到实时显现。首要,将误码数送入比较器,别离同11、102进行比较,256大于102,阐明误码率在101数量级,第四个数码管显现1,再将 1/101×256=2560= (1010 0000 0000)2的第12位和第11位取出,即(10)2=2,作为第一个数码管显现的个位数,取出第10位、第9?位和第8?位,即(100)2按二进制小数核算为0.5,则第二个数码管显现5。核算小数部分时,可用查表法,直接得到输出数值,以简化核算。

3.4 软件测验渠道的规划

咱们选用Visual C++matlab混合编程来完结软件测验渠道。Visual C++是微软公司推出的功用强壮的软件开发调试东西,对核算机底层操作非常便利,经过API函数对串口进行编程更是一项非常老练的技能。matlab是Math Work公司发布的科学核算软件,具有功用很强的绘图功用和及其丰厚的函数库,给数据的剖析、图表的制造供给强壮的支撑。软件测验渠道的基本思想是运用Visual C++编制渠道的人机交互界面,以及完结同误码测验核的数据通讯,再调用matlab里的函数,对得到的测验数据进行剖析输出,一起在人机交互界面上显现误码事情及其产生时间。

4、结束语

本文提出了一种依据FPGA的误码率测验仪的规划完结计划,具有体积小,成本低,运用灵敏,经过内建的UART同主控核算机进行数据交换,一起发挥了FPGA速度快和核算机数据处理才能强的优势,获得了较好的体系功用,能够便利的运用于通讯设备的研发和测验。

一起,运用FPGA的在线可编程(ISP)才能,能够不断晋级、完善,完结更多的功用。在此基础上,还能够进一步的进行体系扩展,如运用参加单片机并移植嵌入式操作体系,将用点阵液晶替代数码管,添加外部存储(flash,RAM等),然后构成一个手持的误码测验体系,能够彻底脱离主控核算机作业。

责任编辑:gt

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/ic/95759.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部