产品分类
Product Categories
服务热线:0769-82310580
{dede:field.seotitle /}
您的位置:和记娱乐->->基于FPGA实现UTOPIA LEVEL2接口时序的的发送和接收模

基于FPGA实现UTOPIA LEVEL2接口时序的的发送和接收模

作者:和记娱乐   发布时间:2020-07-25 07:59

  在ADSL系统中,由DSLAM(数字用户接入复用器)完成ATM的终结和路由。该模型分为4层,自上而下分为高层、从AAL层、ATM层和物理层。这里高层是指RFCl483及其以上各层,AAL层(ATM适配层)又分为拆分与组装子层(SAR)和汇聚子层(CS)两个子层,ATM层主要完成信元复用、解复用、有关信元头的操作以及流控等功能,物理层的主要任务是物理线路编码和信息传输。UTOPIA接口(ATM的通用测试和操作物理接口)位于ATM层和物理层之间,规范ATM层和物理层之问的信号电平和时序定义;作为一种标准的高速接口,UTOPIA接口是连接物理层和ATM层的纽带,共分为LEVELl、2、3、4四级,每一级都是在前一级的基础上加强了某些功能,使得这四级分别应用于芯片级、板级、设备级和系统级连接。

  目前,在国内外的应用系统中,ATM功能和UTOPIA接口都由一些技术成熟的专用通信处理芯片来完成,如Motorola公司MPC866系列处理器等,成本较高,功能固定,灵活性较差;国外一些FPGA芯片设计厂商,如美国的Ahera公司逐渐设计出了一些这方面的megafunctions(兆功能函数库),支持在一些新型号的FPGA芯片应用,但是不像Ahera提供的一些常用函数库,这些专用函数库是要付费的。

  本课题来源于学校和公司合作课题,采用Altera公司Cyclom系列FPGA来实现ATM层UTOPIA LEVEL2主接口,与物理层UTOPIA从接口连接。FPGA较高的性价比、开发周期短和功能灵活等优势使本课题的实现具有较大的实际意义。

  UTOPIA接口是连接ATM层和物理层的接口,允许物理层以不同的速度在不同的媒质上进行数据传输,它包括收发数据端口、控制信号和地址信号。UTOPIA LEVELI和LEVEL2主要在地址信号的定义上有所不同,其中LEVELl未定义地址信号,主要针对Single-PHY的情况,最大工作频率25MHz,支持物理层传输速率达到155Mbps,能够很好地支持OC-1、OC-3等同步数字网的典型传输速率;LEVEL2针对Multi-PHY的情况,比LEVELI多了两组地址信号,最多支持31个PHY端口(地址0-30,地址3l起端口分隔作用),最大工作频率50MHz,支持物理层传输速率达到622Mbps,能够很好地支持OC-12、OC-12c等同步数字网的典型传输速率。

  ATM论坛UTOPIA LEVEL2接口规范的ATM层和物理层连接参考结构如图1。本课题采用的是B类连接结构,即1个AIM层连接多个物理层端口。

  UTOPIA LEVEL2接口分为发送(TX)和接收(RX)两两组接口,参考点为ATM层,其中TX的方向为ATM层到物理层.RX方向为物理层到ATM层。接口支持两种传输方式。第一种是字节级握手传输方式,它是以字节为基本单位进行传输的,控制信号是以字节和ATM信元为基础的;第二种是信元级握手传输方式,它是以信元为基础的。本设计当中采用了只有1个TxClav信号和1个RxClav信号的接13方式和基于信元级的握手传输方式,8位数据总线发送接口时序

  Txsoc:信元起始信号,当TxData上出现信元的第一个有效字节时,由ATM层把TxSoc置为高电平。

  TxEnb*:传输使能信号,TxData上包含有效信元数据时,由ATM层把TxEnb*置为低电平。

  TxFull*/TxClav:满/信元可用信号,对于字节级流控制,TxFull*是物理层发向ATM层的低电平信号,表明物理层最多还能接纳4个字节。对于信元级流控制,TxCIav由物理层发向ATM层,置高表示物理层可以接收一个完整的信元。

  TxAddr[4..0]:地址信号,是ATM层发向MPHY层的5位信号,用以选择MPHY端口。

  另外还有两个可选信号:TxPrty用于奇偶校验,TxRef*为同步设置。

  如图2,N-3、N-2、N-1、N、N+1、N+2、N+3为已配置的物理层端口地址,ATM层通过TxAddr[4..0]发出地址轮询信号:N-3,1F,N-2.1F,N-1,1F,N,1F,⋯,如果某一个端口的物理地址在被轮询到时,恰好有空闲的接收缓存,则向ATM层发出一个有效的TxClav信号;如果此时ATM层有信元要发送,将有效的端13地址送上地址线],在下一个周期置TxEnb信号有效,同时发出TxSoc信号,表示信元开始发送,在TxData[7..0]上发送信元数据。在发送信元过程中,继续轮询物理层端口,但对当前正在发送的端口在数据P44之前检测到的Txclav信号无效。

  RxEnb*:传输使能信号,RxData上包含有效数据时,由AIM层把TxErib*置为低电平。

  RxEmpry*/RxClav:空/信元可用信号,对于字节级流控制,RxEmpty*是物理层发向ATM层的低电平信号,表明物理层已经没有有效数据发送。对于信元级流控制,RxClav由物理层发向ATM层.置高表示物理层有个完整吲高元传输给A1M层。

  RxAddr[4..0]:地址信号,是ATM层发向MPHY层的5位信号,用以选择MPHY端口。

  另外还有两个可选信号:RxPrty用于奇偶校验,RxRef*为同步设置。

  如图3,ATM层通过RxAddr[4..0]发出地址轮询信号:N-3,1F,N-2,1F,N-1,lF,N,lF,⋯,当被轮询的物理层端口有信元要发时,向ATM层发出一个有效的RxClav信号;如果此时ATM层有空闲的缓存时,将有效的端口地址送上地址线],并置RxEnb信号为有效,在此有效期间,物理层有效端口发出RxSoc信号表示信元开始发送,信元数据开始在RxData[7..0]数据线上传输。在接收信元过程中,继续轮询其他物理层端口,RxClav在本端口接收过程中不被轮询,因为RxClav一直有效至当前信元接收结束。

  在以上对UTOPIA LEVEL2接口信号的功能描述和时序分析的基础上,本设计采用FPGA通过VHDL编程来实现,开发平台为Altera公司的Quartus II 5.1。

  首先利用Altera公司megafunctions生成一个发送FIFO,缓存ATM层需要发送的信元;然后用VHDL编程设计发送控制模块,通过地址信号轮询PHY层状态,根据ATM层的UTOPIA控制信号、物理层的控制信号以及发送FTF0的状态信号,控制信元一个一个地从ATM层发送到物理层,该模块仿线的时序要求。最后将仿真通过的控制逻辑模块工程生成符号文件和发送FIFO对接起来,完成发送模块的设计。

  首先利用Altera公司megafunctiotts生成一个接收FIFO,缓存从PHY层接收来的信元;然后用VHDL编程设计接收控制模块,通过地址信号轮询PHY层状态,根据ATM层的UTOPIA控制信号、物理层的控制信号以及接收FIFO的状态信号,控制信元一个一个地从物理层传送到ATM的FIFO中,该模块仿线的时序要求。最后将仿真通过的控制逻辑模块工程生成符号文件和接收FIFO对接起来,完成接收模块的设计

  本文作者创新点在于通过详细分析ATM层和物理层之间UTOPIA LEVEL2接口时序后,采用FPGA实现了该接口的发送和接收模块,具有开发周期短、灵活性好、性价比高等优点。设计好的FPGA芯片在实际的硬件平台与物理层设备对接测试中,数据收发正确,工作稳定,证明FPGA实现的UTOPIA LEVEL2接口是正确的,为替代专用的通信处理芯片迈出了成功的一步。

和记娱乐
[返回]