以太网到多路E1适配电路设计及FPGA实现
摘要:介绍了一种基于现场可编程门阵列(FPGA)的以太网数据-多路E1反向复用器同步电路设计,分析了FPGA具体实现过程中的一些常见问题。该设计采用VHDL硬件描述语言编程,可以实现以太网数据在多路E1信道中的透明传输,适配电路芯片内置HDB3编解码器和数字时钟提取电路。
关键词:FPGA反向复用以太网数据EI信道适配电路
伴随着Internet的迅速发展,IP已经成为综合业务通信的首选协议,其承载的信息量也在成倍增长,如何利用现有的电信资源组建宽带IP网络是近年来研究的热点。目前,比较成熟的技术主要有IPoverSDH(POS)和IPoverATM(POA)。POS将IP包直接装入SDH的虚容器中,通道开销少、实现简单,具有自动保护切换功能;POA的复接过程比较复杂,可以通过高系统开销提供较好的服务质量保证(QOS)。从目前的市场看,各大通信设备商都推出了基于POS/POA的产品,但总体成本较高,主要面向的是一些高端应用。对于带宽需求在十几兆以下的点对点通信而言,上述两种技术的优势并不明显。本文介绍的适配电路将以太网数据适配到E1信道传输,通过配置E1信道数量控制带宽,针对这类应用提供了一种经济灵活的解决方案。
适配电路的一侧为MII标准以太网MAC接口,采用100MHz/全双工模式,另一侧是8路E1(HDB3)差分接口。发送方向将以太网数据封装为HDLC帧,反向复用到1~8路可配E1信道传输,接收方向同步多路E1,还原出以太网数据。带宽从2MHz到16MHz(1~8路E1)可配,接收侧多路E1之间可以容纳16毫秒的延时。
鉴于目前国内类似产品较少,而ASIC开发成本较高,本电路采用VHDL编程→FPGA实现设计流程。
1反向复用定义
反向复用的基本概念就是把一路高速数据适配到多路低速信道中传输,提供相当于多路低速之和的传输带宽。对于点对点通信,主要关心以下几点性能。
1.1带宽利用率
低速信道在传输高速数据的同时,必然有附加的开销,会影响带宽利用率。在本设计中,以太网包进入适配电路后封装成HDLC帧需要四字节的附加信息。E1帧在传输HDLC数据的同时要携带的同步信息,占用6.25%带宽。综合上述两点,有效数据平均带宽利用率大约在90%。
1.2容纳延时
由于各路低速信道在传输过程中经历的路径不同,到达对端后各路间会有延时,设计中要考虑如何消除这部分延时。
1.3线路故障处理
算法设计中必需有同步保护状态机,保证传输信道出现错误时,算法不会产生过高的附加误码率,并且在信道错误恢复时,保证数据传输同步恢复。
1.4数据包突发性
以太网的满发送速率为100MHz,而低速信道的最大可配带宽为16MHz,这将导致即使平均流量小于配置带宽,一个短时间内,接收的数据量还有可能远大于传输带宽。所以在以太网数据的输入侧必须设计高容量的缓存队列以容纳一定的突发数据包。
2算法设计
以下就设计中一些核心电路的算法做具体说明。
2.1以太网数据→多路E1反向复用
数据反向适配一般可以采用三种方式:包间插、比特间插和字节间插。所谓包间插就是指数据包到达后,连续检测各个E1信道,在第一个查到的空闲信道上顺序传输整个数据包,下一包到达后再重复这一过程。这种方式的优点是设计简单,在对端也不需要对多路E1进行同步,各路数据可单独处理。缺点是由于各路E1传输过程中经历延时不同,导致对端接收数据包的顺序与发端顺序有较大差别。考虑到发包比较稀疏的情况,一个长包完全可以在一路E1中传递,而其它E1通道没有数据包传送。这样,一方面造成带宽浪费,另一方面也引入较大的转发延时。
比特间插在传输过程中没有包的概念,只是顺序从以太网数据输入缓存区内读出比特流并按1→n(n路E1)循环编号,编号为i的比特在第i路E1中传输。这种设计电路十分复杂,对端要对多路E1同步到比特单位才能还原出有效数据。其优点就是没有带宽的浪费和输入输出包顺序的变化,转发延时也是固定的。
本设计采用的字节间插是比较折中的解决方案。它的基本原理与比特间插类似,但从缓存区读出的数据和编号都是以字节为单位,每个字节经过串并转后在对应编号的E1信道中传输。它继承了比特间插的优点,同时由于对端只需同步到字节单位上,处理时钟较为宽裕,同步电路设计也就相对简单。其具体的算法实现如下:
以太网数据包进入适配电路后封装成HDLC帧存入缓存区Buff,Buff的出口侧速率与多路E1信道传输速率匹配,一个2MHz时钟周期内完成的操作如图1所示。
图中,
Fcnt:8比特帧计数(E1帧有256个bit);
MFcnt:8比特复帧计数;
L3:Fcnt的低三位比特;
《以太网到多路E1适配电路设计及FPGA实现》
本文链接地址:http://www.oyaya.net/fanwen/view/168416.html
关键词:FPGA反向复用以太网数据EI信道适配电路
伴随着Internet的迅速发展,IP已经成为综合业务通信的首选协议,其承载的信息量也在成倍增长,如何利用现有的电信资源组建宽带IP网络是近年来研究的热点。目前,比较成熟的技术主要有IPoverSDH(POS)和IPoverATM(POA)。POS将IP包直接装入SDH的虚容器中,通道开销少、实现简单,具有自动保护切换功能;POA的复接过程比较复杂,可以通过高系统开销提供较好的服务质量保证(QOS)。从目前的市场看,各大通信设备商都推出了基于POS/POA的产品,但总体成本较高,主要面向的是一些高端应用。对于带宽需求在十几兆以下的点对点通信而言,上述两种技术的优势并不明显。本文介绍的适配电路将以太网数据适配到E1信道传输,通过配置E1信道数量控制带宽,针对这类应用提供了一种经济灵活的解决方案。
适配电路的一侧为MII标准以太网MAC接口,采用100MHz/全双工模式,另一侧是8路E1(HDB3)差分接口。发送方向将以太网数据封装为HDLC帧,反向复用到1~8路可配E1信道传输,接收方向同步多路E1,还原出以太网数据。带宽从2MHz到16MHz(1~8路E1)可配,接收侧多路E1之间可以容纳16毫秒的延时。
鉴于目前国内类似产品较少,而ASIC开发成本较高,本电路采用VHDL编程→FPGA实现设计流程。
1反向复用定义
反向复用的基本概念就是把一路高速数据适配到多路低速信道中传输,提供相当于多路低速之和的传输带宽。对于点对点通信,主要关心以下几点性能。
1.1带宽利用率
低速信道在传输高速数据的同时,必然有附加的开销,会影响带宽利用率。在本设计中,以太网包进入适配电路后封装成HDLC帧需要四字节的附加信息。E1帧在传输HDLC数据的同时要携带的同步信息,占用6.25%带宽。综合上述两点,有效数据平均带宽利用率大约在90%。
1.2容纳延时
由于各路低速信道在传输过程中经历的路径不同,到达对端后各路间会有延时,设计中要考虑如何消除这部分延时。
1.3线路故障处理
算法设计中必需有同步保护状态机,保证传输信道出现错误时,算法不会产生过高的附加误码率,并且在信道错误恢复时,保证数据传输同步恢复。
1.4数据包突发性
以太网的满发送速率为100MHz,而低速信道的最大可配带宽为16MHz,这将导致即使平均流量小于配置带宽,一个短时间内,接收的数据量还有可能远大于传输带宽。所以在以太网数据的输入侧必须设计高容量的缓存队列以容纳一定的突发数据包。
2算法设计
以下就设计中一些核心电路的算法做具体说明。
2.1以太网数据→多路E1反向复用
数据反向适配一般可以采用三种方式:包间插、比特间插和字节间插。所谓包间插就是指数据包到达后,连续检测各个E1信道,在第一个查到的空闲信道上顺序传输整个数据包,下一包到达后再重复这一过程。这种方式的优点是设计简单,在对端也不需要对多路E1进行同步,各路数据可单独处理。缺点是由于各路E1传输过程中经历延时不同,导致对端接收数据包的顺序与发端顺序有较大差别。考虑到发包比较稀疏的情况,一个长包完全可以在一路E1中传递,而其它E1通道没有数据包传送。这样,一方面造成带宽浪费,另一方面也引入较大的转发延时。
比特间插在传输过程中没有包的概念,只是顺序从以太网数据输入缓存区内读出比特流并按1→n(n路E1)循环编号,编号为i的比特在第i路E1中传输。这种设计电路十分复杂,对端要对多路E1同步到比特单位才能还原出有效数据。其优点就是没有带宽的浪费和输入输出包顺序的变化,转发延时也是固定的。
本设计采用的字节间插是比较折中的解决方案。它的基本原理与比特间插类似,但从缓存区读出的数据和编号都是以字节为单位,每个字节经过串并转后在对应编号的E1信道中传输。它继承了比特间插的优点,同时由于对端只需同步到字节单位上,处理时钟较为宽裕,同步电路设计也就相对简单。其具体的算法实现如下:
以太网数据包进入适配电路后封装成HDLC帧存入缓存区Buff,Buff的出口侧速率与多路E1信道传输速率匹配,一个2MHz时钟周期内完成的操作如图1所示。
图中,
Fcnt:8比特帧计数(E1帧有256个bit);
MFcnt:8比特复帧计数;
L3:Fcnt的低三位比特;
《以太网到多路E1适配电路设计及FPGA实现》