基于以太网的串行数字语音通信系统
钟斌 黄玉水 周明建
关键词: W7500P; VS1063; CAN总线; TCP/IP协议; 语音编解码; 以太网
中图分类号: TN915?34; TP399 ? ? ? ? ? ? ? ? ? ? ?文献标识码: A ? ? ? ? ? ? ? ? ? 文章编号: 1004?373X(2019)03?0028?03
Abstract: Since the available broadcast intercom system has the problems of limited communication bandwidth, poor tone quality and scalability, a serial digital voice communication system based on Ethernet is designed on the basis of analysis and comparison of available broadcast intercom systems. The structure, software and hardware design of the system are described. The Ethernet controller W7500P embedded in ARM core is taken as the main control chip of the system. The dual?network interface structure is composed of W5500 and main control chip of the system. The voice codec chip VS1063 is used to realize the conversion of analog voice signal to digital audio signal, and codec function of MP3 digital audio signal, so as to reduce the requirements of voice signal on communication bandwidth while ensuring the voice quality, and realize the efficient transmission of voice signal. The system has the advantages of simple connection, convenient wiring and low cost. The experimental results show that the voice quality, real?time performance and reliability of the system can meet the requirements of the field use.
Keywords: W7500P; VS1063; CAN bus; TCP/IP protocol; speech coding and decoding; Ethernet0 ?引 ?言
近年来,数字语音通信系统开始被应用到煤炭、电力、化工及安防等行业。在文献[1]中提出一种用排队论指导的适用于工业现场的CAN总线语音通信系统。文献[2]将CAN总线和以太网结合起来设计了一种煤矿语音广播系统。基于CAN总线的数字语音系统具有成本低、易于扩展的优点[3]。但CAN总线的实际传输速率有限,尽管采用适合低波特率下传输的语音编码算法,其语音音质依然不是很理想,这是文献[1?2]提出的数字语音系统的共性。因以太网的传输速率远高于CAN总线,具有良好的互通性,传输稳定可靠,在通信领域得到广泛应用[4]。文献[5]提出一种完全基于以太网的煤矿数字语音系统,该系统可以采用MP3编码,其音质远好于前者,但它的可扩展性远不如CAN总线系统。本文提出一种基于以太网的串行数字语音通信系统。该系统除了可以构建常见的树型和星型结构网络,还可以根据实际应用情况灵活地组成链型、环型网络及多种结构混合的网络。该系统克服了CAN总线带宽窄导致音质不高的缺点,又具有CAN总线系统成本低,易于扩展的优点,支持调度通信、多路对讲以及语音广播等业务功能。1 ?系统总体结构
基于以太网的串行数字语音通信系统的网络结构如图1所示。由图1可知,基于以太网的串行数字语音系统每个节点机具备两个网络接口,节点机上的两个网络接口通过标准网线分别与前后端节点机或者路由器连接[6]。由于两个网络接口的特殊设计,该系统具有组网灵活的特点。扩展时只要用一条网线顺序连接新的节点机即可,操作极为方便。
当以太网处于全双工传输模式下,使用双绞线中两对独立线路,发送数据和接收数据在不同的电缆上完成。环型的网络结构更大大增强了串行结构网络的可靠性,同时有利于提高传输速率。2 ?节点机硬件设计
节点机是构建整个系统的核心部分。节点机主要由以太网控制器W7500P,W5500以及音频编解码芯片VS1063构成。硬件连接原理如图2所示。
VS1063包含一个高性能、专用的低功耗DSP核VS_DSP4。VS1063可以同时作为“MP3解码芯片”和“MP3编码芯片”,在一个从动系统上与微控制器一起工作,或作为一个独立的电路,由外部SPI存储器启动。MP3格式的语音文件具有音质高、压缩比高、占用存储容量小等特点,有利于在网络上传输,同时有广泛的用户端软件和硬件支持。
W5500集成了全硬件TCP/IP协议栈,10/100M以太网数据链路层(MAC)及物理层(PHY)[7]。
W7500P不仅包含全硬件TCP/IP协议栈内核,还内嵌128 KB FLASH的ARM Coretex?M0内核,实现了“MCU+全硬件TCP/IP协议栈+MAC+PHY”,支持TCP,UDP,IPv4,ICMP以及PPPoE协议,除用作以太网控制器外,还作为主控芯片。
两款以太网控制芯片都使用了新的高效SPI协议支持80 MHz速率,从而能够更好地实现高速网络通信。W7500P有两个SPI接口(SPI0和SPI1),通过SPI1接口和VS1063语音芯片连接,实现语音数据的传输。W7500P和W5500的数据交互通过SPI0完成[8]。
当VS1063接收到来自麦克风的信号后,先通过一个10 Hz的亚音速高通滤波器对语音信号进行滤波处理。根据用户要求的采样率,再从模拟?数字转换器读出12 kHz,24 kHz或48 kHz采样率的数据。这里的音频数据被分成两条路径:一条到监测,另一条到编码器。 进到编码器的一路根据该信号是否需要被重新采样,它可以被馈送到一个重采样的采样率转换器进行微调,或者直接被馈送到软件抽取器。抽取阶段结束以后,音频被传送到FIFO单元,编码器从中读出样品并进行编码,产生的比特流被馈送到比特流输出FIFO。最后,完成编码的数据通过SPI1传输给以太网控制芯片W7500P。
节点机的数据流向有两个方向,W7500P通过IP判断数据传递方向,分别通过RJ45接口1和RJ45接口2完成[9]。与W7500P直接连接的RJ45接口1执行其中一个方向的数据接收和发送。当接收到数据时,如果检测到目的节点是本节点,则由VS1063解码播放,否则由W5500转发给下一节点。向另一个方向发送数据时,数据先通过SPI0接口发送给W5500,然后由W5500执行发送;同时,W5500接收到的数据也通过SPI0传递给W7500P进行处理,如果目的节点是本节点则由VS1063解码播放,否则通过RJ45接口1转发。3 ?节点机软件设计
系统网络结构有星型、树型、链型和环型。树型和星型结构使用标准的TCP/IP协议。链型结构是环型结构未闭合的特例,在此着重介绍环型结构的软件设计。环型结构系统通过令牌实现信息的调度,使用令牌作为站点是否有发送信息包的权限标志[10]。令牌分左令牌、右令牌、双向令牌三种。获得左令牌的节点只能使用节点左侧的网口向上游传输信息。获得右令牌的节点只能使用节点右侧的网口向下游传输信息。如果节点获得双向令牌则需要交替地从两个方向向目的节点传输数据,提高网络的利用效率。环上有一个节点作为控制节点,负责令牌的调度。环路中的节点机IP地址是连续的,并且按顺序连接,当控制节点收到从节点的请求帧后,根据请求帧的源地址和目的地址信息确定数据传输方向(向左或向右)。例如,环路上有[M]个节点,假设[i]节点向[j]节点传送数据帧,顺时针方向上传输需要经过的节点数为[j-i],逆时针方向上需要经过的节点数为[M-j+i](假设[j>i]),根据最短路径选择原则,就会很容易判断出最佳通道。各节点既可以请求与控制节点通信,也可以请求与其他节点通信。针对此环型结构设计了三种帧类型,分别是令牌帧(主控帧)、请求帧、数据帧(信息帧),这些帧的格式如图3所示。在上述三种帧类型中,令牌帧只由控制节点产生,用于控制各节点间的通信调度。请求帧是各节点需要与其他节点建立通信连接时由各节点发送给控制节点的,需要连接的节点IP被填充到该环网帧的数据部分。数据帧是各节点建立连接之后进行数据交换的载运工具。三种帧类型封装完成后再填充到TCP报文的应用数据部分,封装成以太网数据帧发送到环上。完成封装在环网中傳输的帧结构如图4所示。特定的环型结构中,每个节点的上下游节点固定,因此以太网首部的目的地址固定,即为与其相连的节点的IP地址。在初始化完成后,节点机如果需要与某节点通信则向控制节点发送请求。主节点接收到请求后根据两通信节点的关系为其规划通信路径,并分别向两节点发送令牌帧。令牌指定节点数据传送的方向和接收数据的地址信息。收到令牌帧的两节点依据令牌帧确定的路径分别向左或向右节点机发送数据,同时对令牌帧指定节点的数据进行处理,对非令牌指定节点的数据进行传递转发。节点软件程序流程图如图5所示。
通信过程中通信双方任何一方需要结束通信都要向控制节点发送结束请求。主节点收到结束请求后置位相应的标志位以释放相关节点。两节点通信过程中如果收到主节点的强制终止命令,则立刻结束通信。
4 ?结 ?论
本文利用以太网控制器W7500P,W5500与语音编解码芯片VS1063设计了基于以太网的串行数字语音系统。该系统组网灵活,而且成本低,布线方便。通过实验测试证明系统能够提供高质量的语音效果,传输距离远,可靠性强,符合现场使用的要求。参考文献
[1] 但成福,刘晓明.一种用排队论指导的CAN总线语音通信系统设计[J].电子技术应用,2013,39(2):22?25.
DAN Chengfu, LIU Xiaoming. Design of voice communication system on CAN bus based on queuing theory [J]. Application of electronic technique, 2013, 39(2): 22?25.
[2] 卫文慧,魏免.基于以太网和CAN总线的煤矿语音广播系统设计[J].工矿自动化,2015,41(2):103?106.
WEI Wenhui, WEI Mian. Design of voice broadcasting system of coal mine based on Ethernet and CAN bus [J]. Industry and mine automation, 2015, 41(2): 103?106.
[3] ZUBERI K M, KANG G S. Design and implementation of efficient message scheduling for controller area network [J]. IEEE transactions on computers, 2000, 49(2): 182?188.
[4] WALKER G K, STOCKHAMMER T, MANDYAM G, et al. OUTE/DASH IP streaming? based system for delivery of broadcast, broadband, and hybrid services [J]. IEEE transactions on broadcasting, 2016, 62(1): 328?337.
[5] 王树强,江云,徐炜,等.矿用IP广播对讲系统的设计[J].工矿自动化,2011,37(11):4?6.
WANG Shuqiang, JIANG Yun, XU Wei, et al. Design of mine?used IP broadcast and talkback system [J]. Industry and mine automation, 2011, 37(11): 4?6.
[6] 付良瑞,陈耀宏,胡祥超,等.基于嵌入式以太网的分布式数据采集系统[J].电子技术应用,2017,43(8):58?61.
FU Liangrui, CHEN Yaohong, HU Xiangchao, et al. A distri?buted data acquisition system based on embedded Ethernet [J]. Application of electronic technique, 2017, 43(8): 58?61.
[7] 朱静,韩云飞,龚红琴,等.基于以太网维吾尔语家电控制系统设计[J].现代电子技术,2015,38(18):141?143.
ZHU Jing, HAN Yunfei, GONG Hongqin, et al. Design of Ethernet?based Uyghur control system for household appliances [J]. Modern electronics technique, 2015, 38(18): 141?143.
[8] 孙继平.现代化矿井通信技术与系统[J].工矿自动化,2013,39(3):1?5.
SUN Jiping. Modern mine communication technology and system [J]. Industry and mine automation, 2013, 39(3): 1?5.
[9] 徐炜.矿用IP网络广播终端硬件设计[J].工矿自动化,2014,40(7):16?18.
XU Wei. Design of hardware of terminal of mine?used IP network broadcast [J]. Industry and mine automation, 2014, 40(7): 16?18.
[10] 贺骁,李曼,白翔,等.短波令牌环协议的研究现状与发展[J].通信技术,2014,47(10):1167?1172.
HE Xiao, LI Man, BAI Xiang, et al. Status quo and development of HF token ring protocol [J]. Communications technology, 2014, 47(10): 1167?1172.
关键词: W7500P; VS1063; CAN总线; TCP/IP协议; 语音编解码; 以太网
中图分类号: TN915?34; TP399 ? ? ? ? ? ? ? ? ? ? ?文献标识码: A ? ? ? ? ? ? ? ? ? 文章编号: 1004?373X(2019)03?0028?03
Abstract: Since the available broadcast intercom system has the problems of limited communication bandwidth, poor tone quality and scalability, a serial digital voice communication system based on Ethernet is designed on the basis of analysis and comparison of available broadcast intercom systems. The structure, software and hardware design of the system are described. The Ethernet controller W7500P embedded in ARM core is taken as the main control chip of the system. The dual?network interface structure is composed of W5500 and main control chip of the system. The voice codec chip VS1063 is used to realize the conversion of analog voice signal to digital audio signal, and codec function of MP3 digital audio signal, so as to reduce the requirements of voice signal on communication bandwidth while ensuring the voice quality, and realize the efficient transmission of voice signal. The system has the advantages of simple connection, convenient wiring and low cost. The experimental results show that the voice quality, real?time performance and reliability of the system can meet the requirements of the field use.
Keywords: W7500P; VS1063; CAN bus; TCP/IP protocol; speech coding and decoding; Ethernet0 ?引 ?言
近年来,数字语音通信系统开始被应用到煤炭、电力、化工及安防等行业。在文献[1]中提出一种用排队论指导的适用于工业现场的CAN总线语音通信系统。文献[2]将CAN总线和以太网结合起来设计了一种煤矿语音广播系统。基于CAN总线的数字语音系统具有成本低、易于扩展的优点[3]。但CAN总线的实际传输速率有限,尽管采用适合低波特率下传输的语音编码算法,其语音音质依然不是很理想,这是文献[1?2]提出的数字语音系统的共性。因以太网的传输速率远高于CAN总线,具有良好的互通性,传输稳定可靠,在通信领域得到广泛应用[4]。文献[5]提出一种完全基于以太网的煤矿数字语音系统,该系统可以采用MP3编码,其音质远好于前者,但它的可扩展性远不如CAN总线系统。本文提出一种基于以太网的串行数字语音通信系统。该系统除了可以构建常见的树型和星型结构网络,还可以根据实际应用情况灵活地组成链型、环型网络及多种结构混合的网络。该系统克服了CAN总线带宽窄导致音质不高的缺点,又具有CAN总线系统成本低,易于扩展的优点,支持调度通信、多路对讲以及语音广播等业务功能。1 ?系统总体结构
基于以太网的串行数字语音通信系统的网络结构如图1所示。由图1可知,基于以太网的串行数字语音系统每个节点机具备两个网络接口,节点机上的两个网络接口通过标准网线分别与前后端节点机或者路由器连接[6]。由于两个网络接口的特殊设计,该系统具有组网灵活的特点。扩展时只要用一条网线顺序连接新的节点机即可,操作极为方便。
当以太网处于全双工传输模式下,使用双绞线中两对独立线路,发送数据和接收数据在不同的电缆上完成。环型的网络结构更大大增强了串行结构网络的可靠性,同时有利于提高传输速率。2 ?节点机硬件设计
节点机是构建整个系统的核心部分。节点机主要由以太网控制器W7500P,W5500以及音频编解码芯片VS1063构成。硬件连接原理如图2所示。
VS1063包含一个高性能、专用的低功耗DSP核VS_DSP4。VS1063可以同时作为“MP3解码芯片”和“MP3编码芯片”,在一个从动系统上与微控制器一起工作,或作为一个独立的电路,由外部SPI存储器启动。MP3格式的语音文件具有音质高、压缩比高、占用存储容量小等特点,有利于在网络上传输,同时有广泛的用户端软件和硬件支持。
W5500集成了全硬件TCP/IP协议栈,10/100M以太网数据链路层(MAC)及物理层(PHY)[7]。
W7500P不仅包含全硬件TCP/IP协议栈内核,还内嵌128 KB FLASH的ARM Coretex?M0内核,实现了“MCU+全硬件TCP/IP协议栈+MAC+PHY”,支持TCP,UDP,IPv4,ICMP以及PPPoE协议,除用作以太网控制器外,还作为主控芯片。
两款以太网控制芯片都使用了新的高效SPI协议支持80 MHz速率,从而能够更好地实现高速网络通信。W7500P有两个SPI接口(SPI0和SPI1),通过SPI1接口和VS1063语音芯片连接,实现语音数据的传输。W7500P和W5500的数据交互通过SPI0完成[8]。
当VS1063接收到来自麦克风的信号后,先通过一个10 Hz的亚音速高通滤波器对语音信号进行滤波处理。根据用户要求的采样率,再从模拟?数字转换器读出12 kHz,24 kHz或48 kHz采样率的数据。这里的音频数据被分成两条路径:一条到监测,另一条到编码器。 进到编码器的一路根据该信号是否需要被重新采样,它可以被馈送到一个重采样的采样率转换器进行微调,或者直接被馈送到软件抽取器。抽取阶段结束以后,音频被传送到FIFO单元,编码器从中读出样品并进行编码,产生的比特流被馈送到比特流输出FIFO。最后,完成编码的数据通过SPI1传输给以太网控制芯片W7500P。
节点机的数据流向有两个方向,W7500P通过IP判断数据传递方向,分别通过RJ45接口1和RJ45接口2完成[9]。与W7500P直接连接的RJ45接口1执行其中一个方向的数据接收和发送。当接收到数据时,如果检测到目的节点是本节点,则由VS1063解码播放,否则由W5500转发给下一节点。向另一个方向发送数据时,数据先通过SPI0接口发送给W5500,然后由W5500执行发送;同时,W5500接收到的数据也通过SPI0传递给W7500P进行处理,如果目的节点是本节点则由VS1063解码播放,否则通过RJ45接口1转发。3 ?节点机软件设计
系统网络结构有星型、树型、链型和环型。树型和星型结构使用标准的TCP/IP协议。链型结构是环型结构未闭合的特例,在此着重介绍环型结构的软件设计。环型结构系统通过令牌实现信息的调度,使用令牌作为站点是否有发送信息包的权限标志[10]。令牌分左令牌、右令牌、双向令牌三种。获得左令牌的节点只能使用节点左侧的网口向上游传输信息。获得右令牌的节点只能使用节点右侧的网口向下游传输信息。如果节点获得双向令牌则需要交替地从两个方向向目的节点传输数据,提高网络的利用效率。环上有一个节点作为控制节点,负责令牌的调度。环路中的节点机IP地址是连续的,并且按顺序连接,当控制节点收到从节点的请求帧后,根据请求帧的源地址和目的地址信息确定数据传输方向(向左或向右)。例如,环路上有[M]个节点,假设[i]节点向[j]节点传送数据帧,顺时针方向上传输需要经过的节点数为[j-i],逆时针方向上需要经过的节点数为[M-j+i](假设[j>i]),根据最短路径选择原则,就会很容易判断出最佳通道。各节点既可以请求与控制节点通信,也可以请求与其他节点通信。针对此环型结构设计了三种帧类型,分别是令牌帧(主控帧)、请求帧、数据帧(信息帧),这些帧的格式如图3所示。在上述三种帧类型中,令牌帧只由控制节点产生,用于控制各节点间的通信调度。请求帧是各节点需要与其他节点建立通信连接时由各节点发送给控制节点的,需要连接的节点IP被填充到该环网帧的数据部分。数据帧是各节点建立连接之后进行数据交换的载运工具。三种帧类型封装完成后再填充到TCP报文的应用数据部分,封装成以太网数据帧发送到环上。完成封装在环网中傳输的帧结构如图4所示。特定的环型结构中,每个节点的上下游节点固定,因此以太网首部的目的地址固定,即为与其相连的节点的IP地址。在初始化完成后,节点机如果需要与某节点通信则向控制节点发送请求。主节点接收到请求后根据两通信节点的关系为其规划通信路径,并分别向两节点发送令牌帧。令牌指定节点数据传送的方向和接收数据的地址信息。收到令牌帧的两节点依据令牌帧确定的路径分别向左或向右节点机发送数据,同时对令牌帧指定节点的数据进行处理,对非令牌指定节点的数据进行传递转发。节点软件程序流程图如图5所示。
通信过程中通信双方任何一方需要结束通信都要向控制节点发送结束请求。主节点收到结束请求后置位相应的标志位以释放相关节点。两节点通信过程中如果收到主节点的强制终止命令,则立刻结束通信。
4 ?结 ?论
本文利用以太网控制器W7500P,W5500与语音编解码芯片VS1063设计了基于以太网的串行数字语音系统。该系统组网灵活,而且成本低,布线方便。通过实验测试证明系统能够提供高质量的语音效果,传输距离远,可靠性强,符合现场使用的要求。参考文献
[1] 但成福,刘晓明.一种用排队论指导的CAN总线语音通信系统设计[J].电子技术应用,2013,39(2):22?25.
DAN Chengfu, LIU Xiaoming. Design of voice communication system on CAN bus based on queuing theory [J]. Application of electronic technique, 2013, 39(2): 22?25.
[2] 卫文慧,魏免.基于以太网和CAN总线的煤矿语音广播系统设计[J].工矿自动化,2015,41(2):103?106.
WEI Wenhui, WEI Mian. Design of voice broadcasting system of coal mine based on Ethernet and CAN bus [J]. Industry and mine automation, 2015, 41(2): 103?106.
[3] ZUBERI K M, KANG G S. Design and implementation of efficient message scheduling for controller area network [J]. IEEE transactions on computers, 2000, 49(2): 182?188.
[4] WALKER G K, STOCKHAMMER T, MANDYAM G, et al. OUTE/DASH IP streaming? based system for delivery of broadcast, broadband, and hybrid services [J]. IEEE transactions on broadcasting, 2016, 62(1): 328?337.
[5] 王树强,江云,徐炜,等.矿用IP广播对讲系统的设计[J].工矿自动化,2011,37(11):4?6.
WANG Shuqiang, JIANG Yun, XU Wei, et al. Design of mine?used IP broadcast and talkback system [J]. Industry and mine automation, 2011, 37(11): 4?6.
[6] 付良瑞,陈耀宏,胡祥超,等.基于嵌入式以太网的分布式数据采集系统[J].电子技术应用,2017,43(8):58?61.
FU Liangrui, CHEN Yaohong, HU Xiangchao, et al. A distri?buted data acquisition system based on embedded Ethernet [J]. Application of electronic technique, 2017, 43(8): 58?61.
[7] 朱静,韩云飞,龚红琴,等.基于以太网维吾尔语家电控制系统设计[J].现代电子技术,2015,38(18):141?143.
ZHU Jing, HAN Yunfei, GONG Hongqin, et al. Design of Ethernet?based Uyghur control system for household appliances [J]. Modern electronics technique, 2015, 38(18): 141?143.
[8] 孙继平.现代化矿井通信技术与系统[J].工矿自动化,2013,39(3):1?5.
SUN Jiping. Modern mine communication technology and system [J]. Industry and mine automation, 2013, 39(3): 1?5.
[9] 徐炜.矿用IP网络广播终端硬件设计[J].工矿自动化,2014,40(7):16?18.
XU Wei. Design of hardware of terminal of mine?used IP network broadcast [J]. Industry and mine automation, 2014, 40(7): 16?18.
[10] 贺骁,李曼,白翔,等.短波令牌环协议的研究现状与发展[J].通信技术,2014,47(10):1167?1172.
HE Xiao, LI Man, BAI Xiang, et al. Status quo and development of HF token ring protocol [J]. Communications technology, 2014, 47(10): 1167?1172.