作者:杜成涛 , 汪安民 , 刘德保
本文以DSP芯片C6455为应用平台,介绍了一种自适应的光纤和网络接口通信设计方法。系统具有两个光纤和网络接口,可以自动识别所插入的设备,在不断电情况下可以任意交换接口,无须用户参与。文中详细介绍了该系统的软硬件设计方法。
引言
遵循IEEE802.3标准的网络通信已经应用到较广泛的场合。其具有连接方便、即插即用的特点。网线物理结构一般使用五类或者六类屏蔽双绞线,在由金属制作的物体上传递信号,存在线缆衰减、串扰,受环境影响较大。在高速千兆长距离传输速度下,网络传输的误码率增加,传输性能下降较快,所以基于网线的传输距离一般不大于100 m。为了实现长距离通信,使用光作为传输媒介的光纤通信得到应用和发展。光纤通信可以长距离进行,光信号衰减小,抗串扰能力强。在使用10 μm的单模光纤时,传输距离高达5 000 m,满足大部分应用场合。
DSP(数字信号处理器)具有较高的工作频率,其内部集成硬件网络MAC接口,外接一个物理层芯片就可以方便地实现千兆网络通信。可以通过硬件或者软件配置方法实现千兆网络和光纤接口的在线切换。本文介绍一种基于高速数字信号处理器TMS320C6455的嵌入式千兆网接口设计,并通过软硬件自适应配置网络或光纤接口。
1 C6455及其结构
C6455是TI公司功能较强的定点DSP之一,其最高工作频率达到1.25 GHz,单个指令周期可以运行8条32位指令。全速运行可以提供9 600 MIPS定点计算能力。C6455的内部结构如图1所示。
C6455具有32 KB的一级数据Cache(L1D)、32 KB的一级程序Cache(L1P)以及较大容量的2 MB的2级存储空间,芯片片内有一个32 KB的ROM。C6455具有DDR2控制器接口,可以外接DDR2,直接寻址范围达到512 MB。C6455的片内外设有RapidIO、PCI、EMIF、千兆网口以及SPI、I2C总线、GPIO等接口。这些接口通过片内的高速互联总线和CPU处理器交互数据。千兆网口片内集成MlAC层芯片,该MAC层芯片具有EMAC模块和MDIO模块。所以,C6455用于网络通信,只需要外接一个物理层芯片就可以了。其中的MDIO模块用于和物理层芯片建立连接,如果出现接口切换、掉电等情况,都可以通过MDIO接口获得相应信息。EMAC模块用于数据的收发,C6455片内集成8个8K的收发缓冲区。使用TI公司免费提供的NDK(Net Development Kit)软件,可以很方便地建立网络通信。
2 88E1111及其结构
能够和C6455连接的物理层芯片很多,基本上大部分公司的物理层芯片都可以和C6455连接,但不同公司的芯片需要改变NDK软件中的部分寄存器设置。本文使用Marvell公司的88E1111物理层芯片进行光纤和千兆网络的连接。88E1111的片内结构如图2所示。
网络RJ45接口发送过来的数据经过A/D转换器转换,数字信号经过译码滤波和均衡后由接收单元传输到MAC芯片,实现了数据的接收。 MAC发送的数据经过整形滤波后由D/A转换器变换成模拟信号发送到RJ45接口。为了降低误码,88E1111内部具有PLL锁相环、增益控制、时序控制和相位控制、回音抵消等模块,这些模块都是为了提高数据传输的可靠性,在不同环境或者不同外接设备下,都可以高速、可靠地通信。
图2中的LED控制模块实现数据传输时的灯光显示,MDIO模块建立链接,JTAG用于芯片仿真测试,时钟模块提供工作时钟,电源复位用于启动工作。
3 硬件设计
硬件设计主要包括C6455和88E1111的接口设计、88E1111和RJ45的接口设计、88E1111和光纤的接口设计、88E1111的硬件配置设计等几个部分。
C6455和88E1111的接口电路如图3所示。C6455采用RGMII(RedtJced Gigabit Media Independent Interface)接口,兼容10/100M工作方式。其中,RGTXC和RGRXC为发送和接收时钟,在时钟的上升和下降沿都可以传输数据,收发均采用4线,如图3中的RGTXD[3:0]和RGRXD[3:0]引脚。RGTXCTL为发送使能引脚,RGRXCTL为接收控制引脚,该引脚电平出现上升沿时,表示接收数据有效。RGMDIO和RGMDCLK为MDIO模块的数据和时钟信号,用于C6455和88E1111建立连接。C6455可以通过该接口配置88E1111,或者读取88E1111的信息。由于88E1111的MDIO模块输出为2.5 V电压,而C6455采用1.5 V电压,所以两者之间需要增加电压转换芯片,本设计采用SN74TVC3306实现电压转换,接口电路如图4所示。
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』