基于LABVIEW的8位数字通信系统设计

时间:2022-04-18 10:50:11

基于LABVIEW的8位数字通信系统设计

中北大学仪器科学与动态测试教育部重点实验室 中北大学电子测试技术重点实验室

【摘要】针对当今测试系统对通信传输系统高精度、高可靠性、低误码率等要求,设计了一种基于LABVIEW的8位数字通信系统。本设计采用NI7831FPGA板卡,构建了LABVIEW RIO平台,其继承了传统的LABVIEW图形化编程的特点又赋予FPGA的适时高速的特性,替代了传统硬件电路。测试结果表明,本系统数据传输速率高、误码率低、不易丢失,具有良好的可靠性,可交互范围广,具有广泛的应用空间。

【关键词】虚拟仪器;数字通信;LABVIEW RIO

随着科学技术的发展,计算机技术、数字存贮技术、数字交换技术以及数字处理技术等现代技术飞速发展,许多设备、终端接口均是数字信号,便捷有效灵活的数字通信系统往往是大多数电子设备或系统的不可或缺的一部分[1-2]。在数字通信中,传输信号是离散的,相比模拟通信中的连续信号具有良好的抗噪性。并可通过纠错编码技术来控制,以提高传输的可靠性。数字通信系统主要功能是与外设之间实现数据的收发。本文根据某科研项目中,通信系统维护困难、更新速度快、时间要求紧等特点,提出一种基于NI7831 FPGA的DIO与LABVIEW软件设计相结合的方法,替代传统的基于单片机或 FPGA 等自行设计的硬件电路所组成的数字通信系统, 提高了系统传输的可靠性。

1.数字通信系统硬件设计

数字通信系统主要由通信终端、8位数字通信系统、工控机及PXI总线构成。根据8位数字通信系统实验功能,欲实现8路并行数据的收发。因此,实验中需要选取另一个通信终端。两块板卡间并行收发数据,最终通过PXI总线与工控机NI1042实现通信。硬件示意图如图1所示。实验平台搭建如图2所示。

图1 8位数字通信系统硬件示意图

图2 8位数字通信平台硬件连接图

NI板卡的选择:

NI Compact RIO是可重新配置的嵌入式控制系统,包括一系列NI推出的RIO FPGA板卡(主要包括NI783X、NI781X、NI785X系列FPGA板卡)和RIO计算机等产品。

NI Compact RIO系统硬件架构中包含:I/O模块、可重新配置现场可编程门阵列(FPGA)机箱、嵌入式控制器。本测试系统采用的是NI7831FPGA采集卡,具有不低于32条数可重构DIO(数字信号输入/输出)字线,可配置为速率不低于40MHz的输入、输出、计时器或自定义逻辑[3]。

本文8位数字通信系统主要依托NI7831的DIO实现。在实验中,以HH-S2 FPGA板卡做另一通信终端,以验证数字通信系统数据。选定NI7831 FPGA 的Connector0/DIO0~DIO7 为8位数据发送端口,DIO8为发送写时钟发送端口,DIO9~DIO16为8位数据接收端口,DIO17为接收读时钟端口。选定另一通信终端HH-S2FPGA板卡的DIO0~DIO7 为数据接收端口,DIO8 为读取数据写时钟端口,DIO9~DIO16为数据发送端口,DIO17为发送写时钟端口。内部通信如图3所示。

图3 8位数字通信系统内部通信示意图

2.8位数字通信系统软件设计

本系统的核心部分是软件部分,针对选定板卡,软件开发平台选用NI公司针对NI Compact RIO推出的LabVIEW RIO[4-5]。其继承了LabVIEW图形化编程的特点。其软件本身基于FPGA的原理构架,包含对IO的配置、时钟管理、计数器设置、存储块设置、常用FIFO设置等功能[6]。根据8位数字通信系统功能,分别设计数据输入与数据输出两个工作流程。如图4所示为8位数据输出工作流程。第一步系统初始化,各个DO复位。第二步设置欲发送的8位数据和发送时钟脉宽。第三步判断如果发送通道使能则发送数据。第四步,判断是否发送完毕,如果发送完毕进入第五步判断是否终止输出,如果终止则退出。

图4 8位数字通信发送数据工作流程

如图5所示为数据接收工作流程。首先系统初始化,各个DI复位。第二步判断写信号时钟。第三步判断写时钟有效则写入数据。第四步,判断是否终止程序,如果终止则退出。

依据8位数字通信数据输出/接收工作流程图,8位数字通信系统发送数据FPGA程序如图6所示。如图7为8位数据通信系统实验数据接收FPGA程序。图8为8位数据通信系统实验上位机界面程序图。

图5 数据接收工作流程图

图6 8位数字通信系统发送数据FPGA程序

图7 8位数据通信系统实验数据接收FPGA程序

图8 8位数字通信系统上位机界面程序

3.数字通信系统实验数据分析

检测8为数字通信系统时,选用NI7854做另一通信终端。

表1 8位数字信号系统测试数据

发送数据

发送数据 循环发送次数 发送频率Hz 误码率

0~255 100万 100K 0

0~255 100万 200K 0

0~255 100万 500K 0

0~255 100万 1M 0

接收数据

发送数据 循环接收次数 接收频率Hz 误码率

0~255 100万 100K 0

0~255 100万 200K 0

0~255 100万 500K 0

0~255 100万 1M 0

当数字通信系统作为发送端时,发送n位数据时采用循环发送方式,每次循环发送数据从0开始发送,依次加1,直至发送至。当数字通信系统作为接收端时,数字通信系统做数据接收端,NI7854板卡做发送数据端,以同样的方式向数字通信系统循环发送数据。测试数据如表1所示。

可以看出8位数字通信系统各路DI口发送接收数据正确稳定,在发送/接收时钟速率增加至1MHz时仍然能够将误码率控制为0,性能可靠。

4.结语

提出并设计实现了一种具有应用价值的8位数字通信系统。实验结果表明,该设计误码率低、稳定性好,确保了硬件与软件设计的可行性。该系统还具有良好的通用性,由于NI Compact RIO的结构性,可以对本系统做一些修改,用来测试其他项目。本设计没有涉及数字信息的加密,有关通信加密技术的研究将在以后开展。

参考文献

[1]赵媛,侯晓.一种基于软件无线电的无交换式数字通信系统[J].电声技术,2002(03).

[2]张朝霞,禹思敏.基于数字信号处理器的语音无线混沌通信――系统设计与硬件实现[J].物理学报,2010(05).

[3](美)RichardG.Lyons著.朱光明,程建远,刘保童等译.数字信号处理[M].机械工业出版社,2006.

[4]蔡国英,张宏群.基于LabVIEW的信号产生与分析系统[J].国外电子测量技术,2007(07).

[5]段吉海,覃远年,田克纯,张德安.数字通信FPGA开发设计平台[J].桂林电子工业学院学报,2003(01).

[6]时信华,邬书跃,张尔扬,宋福晓.高速数字通信系统的设计、分析与评估[J].通信技术,2001(01).

作者简介:张韬(1989―),男,山西晋中人,中北大学硕士研究生在读,研究方向:通信与信息系统。

上一篇:浅析PPPoE技术在校园网中的应用 下一篇:Oracle数据库优化设计