0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一种关于FPGA的两种误码仪实现方法设计

电子工程师 来源:微型机与应用 作者:刘浩,刘睿强,卢 2021-04-07 11:10 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

摘 要: 设计了一种基于EPF10KRC208-4的误码仪,该设计充分利用了FPGA强大的可编程能力和丰富的资源,以及软件开发平台Quartus Ⅱ的完备功能,具有体积小巧、携带方便、测量精确等优点。其核心部分分别采用了逐位比较法和移位寄存器法,并在仿真过程中设置了多种误码情况进行对比。最后,根据仿真结果分析了方案的可行性和两种方法的优缺点。

自20世纪下半叶以来,信息技术的飞速发展在军事领域掀起了军事变革的浪潮,使武器装备、作战模式和作战理论的本质发生了深刻变化。信息技术促进了卫星通信、光纤通信等现代通信手段与现代侦查监视系统、计算机网络和武器控制的结合,实现了情报、通信、指挥与控制一体化的情报指挥控制系统(C3I系统)正改变着传统的作战模式,使战争形态由机械化战争转变为信息化战争。

随着通信技术的不断发展,数字通信正在逐步取代模拟通信成为主要的通信方式。而误码是影响数字通信系统最重要的因素,因为误码直接破坏了信息传递的正确性。然而在信息化战场上,存在各种各样复杂的干扰,人为干扰如雷达波、各种电器开关通断产生的短脉冲等的电磁波,敌方的电子干扰、各种干扰弹、机动马达和炮击爆炸等电磁辐射,还有非人为的雷电、宇宙辐射、邻近通信系统等的干扰,这些干扰往往是导致信道产生误码的最重要因素。

为了正确地评估战场环境下通信系统的性能,本文研究了基于FPGA的误码仪设计,采用FPGA使设计具有结构小巧,携带方便等优点,其核心部分的设计分别采用了逐位比较法和移位寄存器法。

1 基本原理

设计过程中FPGA开发环境采用Altera公司的开发软件Quartus Ⅱ 9.0,它集成逻辑分析、功率分析、时序优化和EDA工具等功能,使设计变得十分简洁。

1.1 逐位比较法的基本原理

pIYBAGBtIXOAfoOlAABRX60W9z8252.png

逐位比较法误码仪示意图如图1所示,误码仪由发送和接收两部分组成[3]。发送部分由码型发生器组成,Select为测试码类型选择输入,接收部分由时钟同步器、本地码产生器、逐位比较器和误码统计模块组成。

其原理为:在低频时钟CLK1的驱动下,将码型发生器生成的测试码m序列输入到被测信道,然后由接收端接收,并提取时钟同步器进行时钟同步。在8倍高频时钟CLK8的驱动下,提取数据流的时钟信号。时钟同步完成后,位同步器输出频率同CLK1的同步时钟CLK一致,其上升沿对准接收数据的中间部分,以保证接收数据的正确性。

m序列经过被测信道后,进入接收端的本地码产生器和逐位比较器。接收端把接收到的m序列前N个码元(N为m序列发生器级数)对本地码产生器进行灌码,并把所灌码作为本地产生器的初值。本地码产生器的结构与发送端的码型发生器结构相同,因此,如果所灌码正确,就可以产生与发送端完全一致的m序列,该序列与接收到的数据在逐位比较器中进行逐位比较。

如果测试数据在传输中有误码,则在逐位比较过程中可以检测出来。逐位比较器将检测到的误码信号传输给误码统计模块,该模块的功能是进行误码数累计,累计的数据传送给计算显示模块。当一段时间内误码数量超过所设上限,则该模块给出失步信号LostSyn,说明此时系统失步,统计的误码数据无效,需重新同步。失步信号LostSyn使本地码产生器重新进行灌码,并产生新的本地序列。后续步骤同上。

1.2 移位寄存器法的基本原理

o4YBAGBtIL-Ae-sRAABPriSgetI558.png

移位寄存器法误码仪的示意图如图2所示,误码仪的设计也包括发送部分和接收部分。发送部分由码型发生器组成,接收部分由时钟同步器、误码检测器和误码统计模块组成。码型发生器与上一种方法工作方式不同,在同一次测试中要先后产生两种码型,先产生时钟同步码,再产生m序列。时钟同步码只用于接收端时钟提取,时钟同步器工作原理与第一种方法相同。时钟同步后时钟同步器发出Syn信号通知码型发生器产生m序列,这样可以避免测试数据的丢失,保证误码检测的正确性。

该方法的最大特点是用一个误码检测器代替了上一种方法的本地码产生器和逐位比较器。当时钟同步后,m序列经过被测信道直接进入接收端的误码检测模块进行误码检测,而不需要再产生本地码,这种设计方法的优点是抗干扰能力更强,设计也简单;缺点是占用FPGA资源多,耗用83%的逻辑单元,设计多种码型时占用资源更是明显增多。而逐位比较法对FPGA资源要求不高,仅占13%的逻辑单元,容易实现多种码型测试。误码统计模块的工作原理与前一种方法相同。

2 设计方法

2.1 逐位比较法的设计方法

pIYBAGBtIN-AUNCMAAAOvFQ38IY627.png

码型发生器模型图如图3所示,其核心为m序列发生器。其中,CLK1为产生测试数据的基准时钟;Select为码型选择输入端,在这里设计了两种码型,通过控制Select端状态来实现测试码型的切换;ErrorIN为手动误码输入端,该端连接一个按钮,按一次按钮产生一个误码;DATA为数据输出端口

pIYBAGBtIPiALRXwAAAO6zfCLpA500.png

图4为时钟同步器模型,其核心为一个抽样电路。CLK8为8倍高频时钟输入端,DataIN为数据输入端,SynCLK为同步时钟输出端,Syn为时钟同步标志位。设计的方法为:数据输入端DataIN作为抽样电路的控制端,高电平时抽样电路工作,在一个周期内抽样电路需进行3点抽样,当输入数据的宽度无法满足3点抽样时,视为干扰,继续进行时钟同步搜索。当3点抽样皆为高电平时,才视为正常数据,使该模块输出同步时钟和时钟同步标志位。该同步时钟作为接收端后续电路的时钟信号。

o4YBAGBtIQiAIfmcAAAOpZPrDg0253.png

图5为本地码产生模块模型图,其核心为灌码电路设计和m序列发生器。CLK为时钟输入端(后续模块相同),DataIN为数据输入端,Reset为复位端,DATA为本地码输出端。灌码电路设计的关键是,在进行灌码时,将m序列发生器(最长线型反馈移位寄存器)的循环回路断开,使其成线性移位寄存器;当灌码完成后,将m序列发生器循环回路接通,此后,DataIN输入的数据无效,即可按照所灌初值自行产生m序列。当出现失步或者手动复位时,复位信号从Reset端输入使该模块重新进行灌码操作。

pIYBAGBtIR2AEPiMAAALu1BeI5I739.png

图6所示为逐位比较器模型图,其核心为一个异或门和相应的时延电路。其中A为本地码输入端;B为接收数据的输入端,其在内部需要经过一定的时延,再跟A端数据接到异或门;EN为使能端。若出现误码,则在某时刻B端的码元跟A端的码元相异,经过异或门后输出一个高电平,其他相同的码元经过异或运算后输出为低电平,这样就能判别误码的情况了。Q即为误码输出端,高电平表示有误码,一个时钟的高电平表示有一个误码。

pIYBAGBtIS6AW6YFAAAPD6d3hZ0284.png

图7为误码统计模块模型图,其核心为高电平到窄脉冲的转换电路和误码计数电路。其中ErrorIN为误码信号输入端,其在内部经过转换电路转换为窄脉冲信号;LostSyn为失步信号输出端;Z[16..1]为误码统计数据输出端。在给定时间内误码数量达到上限,则给出失步信号。失步信号通过一个8位计数器给出,该计数器8位输出连接到一个8位与非门,通过改变连接方法可以设置0~255的任何一个定时值。另外,在其内部设计一个清零电路,清零周期即为所设时间段,每个周期结束时的一个时钟清零电平将计数器清零,以保证每个周期从零计数。误码数据统计器为16位计数器。

2.2 移位寄存器法的设计方法

移位寄存器法的时钟同步器和误码统计模块的设计方法与上一种方法相同。下面仅介绍一下码型发生器和误码检测器的设计。

pIYBAGBtITuAZarJAAAOaMXwKKs456.png

图8为码型发生器模型图,其核心为m序列发生器和方波发生器。其模型图跟逐位比较法的不同之处在于输入端没有Select端,而有Syn端。Syn信号来自时钟同步器的同步标志位Syn。该输入通过控制一个开关电路来达到切换方波发生器和m序列发生器的目的。由于移位寄存器设计方法耗用资源多,不适合设计多种码型,这里仅设计了一种m序列发生器,所以没有Select端。当然,如果不考虑成本,也可以设计多种码型。

pIYBAGBtIUqAbV8fAAATieXjF70419.png

图9为误码检测器模型图,其核心为一个串入并出移位寄存器和一个并入串出移位寄存器。其中,DataIN为数据输入端,STLD为并入串出移位寄存器的移位加载端,Error为误码输出端。

pIYBAGBtIVeAXGH-AABBXPWP2zg312.png

图10为误码检测器设计思路示意图。m序列每一周期的排列规则是固定不变的,即每个周期中的对应位都是相同的。移位寄存器法就是利用了这种周期性。假设该方法设计的码型为511码,又设每个周期的第20~24位的排列是“11001”,则移位寄存器对应位设计如图10所示。按照这种设计方法,当一个周期的511个码元正好出现在SREG1的输出端口上时,如果传输的码元无误码,则SREG2的输入端口全是低电平,否则,对应的高电平即为误码,此时给STLD端口一个低电平,则将SREG1的511个输出数据经过上述处理后加载到SREG2。SREG2在CLK的驱动下,将加载进来的数据从Error端口串行输出,高电平即代表误码。

3 仿真分析

下面利用Quartus Ⅱ开发平台对上述两种方法在给定多种条件下进行时序仿真,并进行分析。

pIYBAGBtIAGASL0-AAHRGQ9qJb0408.png

图11、图12所示是在没有手动加入误码的情况下(即ErrorIN为低电平)两种方法的仿真截图,所用码型皆为511码,所用时钟频率相同,分别在两个不同的时间段进行了截取。从图11、图12可以看出,逐位比较法在时间t=499.0 ns处完成了时钟同步,移位寄存器法在时间t=500 ns处完成了时钟同步,在所给时间段内,两种方法的误码输出皆为低电平。对于移位寄存器法,在时间t=205.275 ?滋s处移位加载端STLD加载有效,把一个周期的511个码元经过处理后同时加载到SREG2,此后每隔一个周期就给出一个加载有效信号。

o4YBAGBtH-yARenXAAHXkbnqlFA545.png

图13、图14所示是手动加了一个误码的情况下两种方法的仿真截图,码型和频率同前,分别在3个不同时间段进行了截取。由图13、图14可以看出,在时钟同步之后,ErrorIN有一段高电平,此操作即给测试码手动加入了一个误码。在此必须注意,加入的误码是落在测试码的前9个码元之内的。对于逐位比较法,这种误码将会使逐位比较法灌码码元出现误码。如图13所示,在时间t=10.45 ?滋s之后连续出现了误码,直到t=108.85 ?滋s误码数在设定时间内达到了上限,系统判断为失步并给出LostSyn信号后,又重新进行灌码等一序列操作,才使误码数归零,继续进行测试。而逐位比较法则可以正确地检测出误码。

o4YBAGBtH7eAGmceAAHMiCV1xF0877.png

图15、图16也是手动加了一个误码的情况下两种方法的仿真截图,截取了两个时间段。与前一仿真相比,所给条件唯一不同就是加入的误码落在测试码的前9个码元之外,即逐位比较法首次灌码码元正确。由图15、16中可以看出,在给定条件下,两种方法都没有出现失步现象,而且都能正确检测出误码信息。结果说明,逐位比较法能否正确检测出误码,取决于所灌码元正确与否,也即抗干扰能力差,如果出现连续的灌码码元误码,则也会连续出现失步现象。而移位寄存器法不会出现这个问题。

通过对误码仪两种实现方法的设计、仿真与分析可以看出,逐位比较法耗用逻辑单元少,扩展性能也好,适合设计多种PN码的测试。但它的抗干扰能力也相对较差,一旦灌码码元出现误码,则后续测试会出现一连串误码,导致测试结果错误,直到系统判断为失步,才能再次进行灌码操作,重新测试。而移位寄存器法的抗干扰能力好,但耗用资源多,不适合多种PN码测试的设计。结果表明,两种方法都是可行的,但各有优缺点,在实践中可以根据实际需求进行选择。

参考文献

[1] 樊昌信,曹丽娜。通信原理(第六版)[M]。北京:国防工业出版社,2006.

[2] 褚振勇,齐亮,田红心,等.FPGA设计及应用[M]。西安:西安电子科技大学,2006.

[3] 李斌。基于FPGA的误码仪的研究与设计[D]。武汉:武汉理工大学,2006.

[4] 吴继华,王诚.Altera FPGA/CPLD设计(初级篇)[M]。北京:人民邮电出版社,2005.

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1664

    文章

    22502

    浏览量

    639060
  • EDA工具
    +关注

    关注

    5

    文章

    276

    浏览量

    34122
  • 开发软件
    +关注

    关注

    1

    文章

    27

    浏览量

    13396
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    TVS vs TSS 两种保护机制的深度博弈

    在现代电子设备日益精密、工作环境愈发复杂的背景下,电路安全问题尤其是雷击和瞬态过压(Surge)防护,已成为产品设计中不可忽视的重要环节。其中,TVS(瞬态电压抑制器)与TSS(晶闸管浪涌抑制器)是两种广泛应用的浪涌保护器件。尽管二者均服务于同目标——保障电路
    的头像 发表于 02-12 15:23 2057次阅读
    TVS vs TSS <b class='flag-5'>两种</b>保护机制的深度博弈

    两种电流检测电路设计方案 高侧 低侧 最高耐压90V

    常用的电流检测电路有两种一种是低压侧电流检测,另一种是高压侧电流检测。 实现方法两种电流检
    的头像 发表于 11-24 16:16 1326次阅读
    <b class='flag-5'>两种</b>电流检测电路设计方案 高侧 低侧 最高耐压90V

    用PLC实现卷径计算的两种算法

    卷径计算,是动态计算如钢卷,纸卷等存料量的一种方法,它是实现张力控制和自动充放料、以及甩尾控制的重要前提。卷径计算目前主流的方法两种一种
    的头像 发表于 11-14 16:54 2525次阅读
    用PLC<b class='flag-5'>实现</b>卷径计算的<b class='flag-5'>两种</b>算法

    负压法 vs 正压法:手机外壳气密性检测两种核心技术

    的手机外壳气密性检测主要采用两种核心技术:负压法和正压法。二者各有优劣,适用于不同的生产需求和检测场景。正压法是通过向手机外壳内部充入定压力的气体(通常为洁净空
    的头像 发表于 11-05 16:19 595次阅读
    负压法 vs 正压法:手机外壳气密性检测<b class='flag-5'>仪</b>的<b class='flag-5'>两种</b>核心技术

    ADI GMSL技术两种视频数据传输模式的区别

    本文深入介绍GMSL技术,重点说明用于视频数据传输的像素模式和隧道模式之间的差异。文章将阐明这两种模式之间的主要区别,并探讨成功实施需要注意的具体事项。
    的头像 发表于 10-10 13:49 2619次阅读
    ADI GMSL技术<b class='flag-5'>两种</b>视频数据传输模式的区别

    两种TVS有啥不同?

    当我们查看TVS二极管的规格书,常会看到有以下两种种引脚功能标识图:对于初学者,看到感到疑惑,他们样吗?他们有啥区别?为啥有的个尖头往外,阳极连在起,有的
    的头像 发表于 09-15 20:27 967次阅读
    这<b class='flag-5'>两种</b>TVS有啥不同?

    两种散热路径的工艺与应用解析

    背景:两种常见的散热设计思路 在大电流或高功率器件应用中,散热和载流能力是PCB设计中必须解决的难题。常见的两种思路分别是: 厚铜板方案:通过整体增加铜箔厚度(如3oz、6oz甚至更高),增强导热
    的头像 发表于 09-15 14:50 970次阅读

    CMOS 2.0与Chiplet两种创新技术的区别

    摩尔定律正在减速。过去我们靠不断缩小晶体管尺寸提升芯片性能,但如今物理极限越来越近。在这样的背景下,两种创新技术站上舞台:CMOS 2.0 和 Chiplet(芯粒)。它们都在解决 “如何让芯片更强” 的问题,但思路却大相径庭。
    的头像 发表于 09-09 15:42 1192次阅读

    一种基于PWM的电压输出DAC电路设计

    误差的方法,论文给出了两种从PWM到0~5V电压输出的电路实现方法,第2电路具有很高的转换精度。 纯分享帖,点击下方附件免费获取完整资
    发表于 08-04 14:58

    贴片晶振中两种常见封装介绍

    贴片晶体振荡器作为关键的时钟频率元件,其性能直接关系到系统运行的稳定性。今天,凯擎小妹带大家聊聊贴片晶振中两种常见封装——金属面封装与陶瓷面封装。
    的头像 发表于 07-04 11:29 1491次阅读
    贴片晶振中<b class='flag-5'>两种</b>常见封装介绍

    汉思新材料取得一种PCB板封装胶及其制备方法的专利

    汉思新材料取得一种PCB板封装胶及其制备方法的专利汉思新材料(深圳市汉思新材料科技有限公司)于2023年取得了关于PCB板封装胶及其制备方法
    的头像 发表于 06-27 14:30 951次阅读
    汉思新材料取得<b class='flag-5'>一种</b>PCB板封装胶及其制备<b class='flag-5'>方法</b>的专利

    两种驱动方式下永磁直线开关磁链电机的研究

    方式。 纯分享帖,需要者可点击附件免费获取完整资料~~~*附件:两种驱动方式下永磁直线开关磁链电机的研究.pdf【免责声明】本文系网络转载,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请第时间告知,删除内容!
    发表于 06-09 16:18

    两种感应电机磁链观测器的参数敏感性研究

    (MRAS)转速估算对参数的敏感性。 纯分享帖,需要者可点击附件免费获取完整资料~~~*附件:两种感应电机磁链观测器的参数敏感性研究.pdf【免责声明】本文系网络转载,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请第时间告知,删除内容!
    发表于 06-09 16:16

    铷原子钟与CPT原子钟:两种时间标准的区别

    在物理学的世界中,精密的时间测量是至关重要的。这就需要个高度准确且稳定的时间标准,这就是原子钟。今天我们将探讨两种重要的原子钟:铷原子钟和CPT原子钟,以及它们之间的主要区别。首先,我们来了解
    的头像 发表于 05-22 15:49 897次阅读
    铷原子钟与CPT原子钟:<b class='flag-5'>两种</b>时间标准的区别

    UHV-312变压器绕组变形测试(二合)操作使用

    变压器绕组变形测试具有频率响应法和低电压短路阻抗法两种测试方法,用两种不同的方法对电力变压器绕组进行测量,全面反映变压器的绕组特性,更加准
    发表于 05-14 15:48 0次下载