本文针对100 Gbps CFP提出了一种固件设计方案。使用FPGA方法来集成CFP通信接口和寄存器结构,并使用MCU来实现CFP光收发器的操作。为了确保所实现的固件满足建议的设计方案,构建了一个真实的测试平台并评估了固件的性能。(讨论FW的文章几乎没有,这里大概了解下吧)

第一节    介绍

光学收发器是一个模块,可将通过路由器接收的电信号转换为光纤的光信号,进行传输,然后再将其转换回电信号。在光传输网络中商业使用的光收发器,正在使用10或25 Gbps传输速率信道支持100Gbps,并且正在为下一代光通信支持高达400 Gbps的光收发器正在开发中。C型可插拔(CFP)光收发器是一种光收发器,用于100 Gbps以上的长距离数据传输。CFP-多源协议(MSA)标准是物理/电气规范,质量保证控制和管理实践以及CFP制造商节省成本的行业标准。

现有CFP制造商设计的固件基于行业标准,但制造商未透露其设计技术。(这个文章只是文章,实际是不是这么回事,笔者也不知道,笔者不是做FW的)。同时,微控制器单元(MCU)的IC制造商已经推出了一种具有用于设计CFP固件的基本接口的IC,但它仅提供CFP和主机接口功能,而不是光收发器整个操作的设计方法。。因此,新制造商在开发光收发器时必须投入成本和开发时间来设计固件。在本文中,提出了一种基于MSA标准的CFP固件设计方法。通过使用建议的设计方法实施CFP固件,可以确保质量,并可以减少成本和开发时间。

第二节    相关工作

MSA标准包括一个CFP管理界面,一个CFP寄存器以及CFP控制和监视。图1显示了CFP管理界面架构。CFP管理接口包括三个接口:主机与CFP之间的管理数据输入输出(MDIO)接口,MDIO接口模块与CFP寄存器之间的接口以及CFP寄存器与非易失性存储器(NVM)之间的接口和数字诊断监视(DDM)。CFP寄存器的非易失性寄存器(NVR)连接到作为非易失性存储器的ROM,并存储CFP固定数据。CFP通过内部总线执行来自外部主机的请求,并更新DDM数据。控制逻辑设备控制所有操作。

CFP寄存器的空间具有十六进制寻址,范围从0x8000到0xFFFF,并且分为八个部分,用于CFP寄存器空间分配和访问控制。八个表分配给NVR,表1-4分别存储基本ID信息,扩展ID信息,网络通道特定信息和主机通道特定信息。表5–6存储CFP制造商所需的信息,表7–8允许用户存储必要的信息。其余表分配给易失性寄存器(VR),并配置为存储CFP配置,控制,状态和DDM信息。

对于CFP的操作和终止,MSA标准定义了与CFP状态转换有关的信号。初始操作,常规操作和终止有10种状态。在这10个状态中,五个状态是瞬态,五个状态是连续状态。当施加相应的信号时,每个状态都转换为下一个状态。MSA标准中详细定义了状态转换信号。

第三节    CFP固件设计架构

图2是其中将移植固件的整个硬件架构的框图。建议的固件设计技术将FPGA用于CFP的MDIO接口和标准存储器配置。使用FPGA,可通过在单个芯片上实现多个子模块来最小化设计空间。还将低成本,可靠的MCU用于CFP的操作和管理功能。光学驱动器IC是光学收发器中高速数据的光电和电子转换所需的IC。光学驱动器IC监视的状态信号被设计为可通过FPGA进行高速处理,而无需通过CPU,因为它们需要快速更新到CFP标准存储器。

设计的CFP固件中的FPGA功能包括与主机通信的MDIO接口,CFP标准存储器配置和访问功能,CFP硬件引脚控制功能以及CFP电源控制功能。FPGA中的MDIO接口允许CFP与主机进行通信。FPGA的寄存器由两个主要寄存器组成。第一个寄存器是CFP寄存器,它代表CFP标准存储器。它是根据CFP-MSA标准内存映射实现的,并且外部主机使用MDIO接口访问CFP寄存器。第二个寄存器是一个MCU接口寄存器,它与MCU进行通信以配置控制CFP所需的其他内存映射。此外,FPGA模块内存在MCU接口模块,以处理来自MCU的请求。

对于CFP的MCU,选择了8051 Silicon Labs芯片。8051在工业领域广泛可用,并提供可靠的库。8051 MCU具有内置的SPI和SMbus,用于与外部芯片进行通信,并支持高达256kB的闪存。

图3给出了所建议的MCU的内部功能框图和外部接口。CFP具有由“ CFP NVR”,“VENDOR NVR”和“ USER NVR”等区域组成的非易失性存储器。MCU的一部分闪存分配给NVR内存,并存储该值。DDM功能监视从外部ADC芯片读取的CFP光学组件的状态以及MCU内部传感器读取的硬件状态。CFP Status Management是根据MSA标准中描述的CFP状态转换来操作模块的功能。IC通信接口是用于MCU与外部芯片之间通信的驱动程序功能。MCU控制ADC,DAC,FPGA和光学组件IC。

图4显示了MCU程序流程图。首先,MCU初始化过程会初始化MCU系统时钟设置和MCU外围设备,例如SMbus,SPI,UART和计时器。ADC / DAC初始化过程会初始化外部ADC / DAC芯片。初始化CFP控制变量时,将初始化固件所需的所有全局变量,并且固件会进入轮询循环。在轮询循环中,CFP处理进入UART的外部请求。在MDIO指令过程中,MCU访问FPGA的内部状态寄存器,并检查当前主机是否存在MDIO请求。如果有请求,MCU会读取相应的地址和值并进行相应处理。在CFP状态流程中,状态转换的管理方式与MSA标准相同。CFP DDM进程监视来自ADC的值,并更新CFP标准寄存器中的DDM值。FAWS流程用于根据CFP状态指示故障,警报和警告条件。

第四节    实验评估

使用Xilinx Spartan-6系列作为FPGA,MCU移植的固件是使用8051系列实现的。ONT-606是一种光网络测试设备。图5显示了测试台的配置。具有实现的固件的CFP安装在VIAVI的ONT-606上,并使用40公里的光缆进行了自环回。通过测试,评估了固件是否可以可靠地运行CFP硬件并符合标准。

图6显示了从基于FPGA的CFP存储器映射中读取的值。地址从0x8000开始。结果表明,MDIO接口工作正常。

图7显示了阻塞接收器的光输入以检查警报是否根据标准要求显示的结果。

第五节    结论

在本文中,提出了一种基于MSA标准的100Gbps CFP固件设计,并通过评估测试平台中实际实现的固件来验证其实用性。所提出的方法使用外部主机来实现通信接口,并使用FPGA和MCU来实现CFP的内部操作,并将其移植到实际的CFP硬件上。根据MSA操作管理标准,通过CFP的正确操作,可以验证所提出的固件设计技术的有效性。此外,测试台结果通过比较建议固件与现有产品CFP的性能,证实了DDM的准确性非常好。提出的固件方法满足标准的要求,但未实现可选条件,例如固件远程更新。此外,随着数据传输速率提高到200G / 400 Gbps,各种数据驱动器IC均已发布。计划相应地设计和实现接口驱动程序。

需要原文的请自行搜索下载,或发邮件至 ocband@126.com,邮件请注明所需文章是哪天在公众号发送的。

100g光模块厂家排名_100G光模块固件设计示例相关推荐

  1. 100g光模块厂家排名_100G光模块主流标准都有哪些

    今天跟大家谈谈数据中心100G光模块主流标准,传统数据中心主要基于10G网络架构,为了适应AI.深度学习.大数据计算等业务的规模部署,下一代数据中心架构正在向25G/100G网络架构演进,在国内已经看 ...

  2. 100g光模块厂家排名_【第十一期】浅谈数据中心100G光模块

    传统数据中心主要基于10G网络架构,为了适应AI.深度学习.大数据计算等业务的规模部署,下一代数据中心架构正在向25G/100G网络架构演进,在国内已经看到BAT等互联网巨头都实现了规模部署. 建设2 ...

  3. community 计算模块度_光模块深度:国内光模块企业快速崛起

    一.核心观点 二.发展追溯:技术是底蕴.创新是动力 1 光通信发展:技术迭代加快,国产替代是前进的方向 依据摩尔定律,光模块的小型化.低成本以及高速率是产品迭代的主要方向. 2 竞争格局:市场集中度高 ...

  4. 【光通信-1】根据光模块拉环颜色区分光模块

    1. 通过光模块的拉环颜色来分辨波长 1.1 常用的光模颜色区分: 常用的光模块有四种波长,850nm,1310nm,1490nm,1550nm.其中千兆SPF光模块850nm对应的拉环颜色为黑色,1 ...

  5. m6000路由器产品介绍与基本操作_交换机与路由器的区别及光模块搭配方案_光模块吧...

    我们都知道交换机是一种用于电(光)信号转发的网络设备,而路由器是连接两个或多个网络的硬件设备,在网络间起网关的作用,是读取每一个数据包中的地址然后决定如何传送的专用智能性的网络设备.接下来易天光通信( ...

  6. 华为光模块,华为光纤模块,华为单模光模块,华为多模光模块,华为千兆光模块

    SFP-FE-SX-MM1310-A 华为光模块-SFP 100M/155M-华为多模模块-(1310nm,2km,LC) SFP-FE-LX-SM1310-A 华为光模块-SFP 100M/155M ...

  7. 什么是电口模块?它和光模块有什么区别?

    1. 什么是电口模块? 电口模块又称光口转电口模块,光电转换光模块,也是光通信中会使用到的模块种类.具有功耗低.性能高.设计紧凑的特点,主要应用于短距离数据传输.电口模块也是光模块的一种类型,也叫光电 ...

  8. 千兆光模块和万兆光模块的区别

    众所周知千兆光模块和万兆光模块的主要区别是它们的传输速率不一样,千兆光模块的传输速率是1000Mbps,而万兆光模块的传输速率是10Gbps.除了传输速率有差异以外,你知道千兆光模块和万兆光模块的其它 ...

  9. linux下光模块参数如何查找,光模块介绍以及常用接口参数查询

    外观结构图 (以SFP封装举例说明) 一 二 三 四 1.拉手扣 2.接收接口 3.发送接口 4.壳体 5.标签 6.防尘帽 7.裙片 8.接头 外观图(SFP/SFP+封装光模块的外观) 封装类型 ...

最新文章

  1. 网吧电影客户端Realplayer的装配问题
  2. 整理了近500篇的AI论文,我发现了一个问题……
  3. 企业网络推广——企业网络推广出于四大目的旨在做好网站营销
  4. 3Animation动画的创建,CCSpeed,CCFollow
  5. Struts2理解——转发和重定向
  6. linux docker导入镜像,Docker镜像的导入和导出
  7. 以太网,局域网,万维网
  8. 编译rocksdb源码导致的部署失败
  9. 群晖远程访问服务器,如何通过远程访问访问Synology中的所有数据
  10. s5原生android 5.0,三星Galaxy S5/S4吃上原生安卓5.0棒棒糖
  11. 【Robot Framework】字符串判断,if语句多执行条件,多执行语句
  12. weblogic调整多个服务启动顺序方法
  13. 【转载】架构师的行为准则(三)
  14. 八大主流浏览器自动填表功能大比拼
  15. VBS让室友成为你儿子
  16. Win10 重装系统 (iso方式)(超详细)
  17. MP4文件格式详解——元数据moov(一)mvhd box
  18. LabView---信号发生器
  19. macbook蓝牙pan未连接_macOS Catalina 10.15.1 连接iPad 13.2.2 分屏失败的解决办法
  20. python笔记6-python官方文档之format()格式化详解

热门文章

  1. app服务器不运行了,springmvc app URL在本地运行,但不在服务器上运行
  2. 中如何移动物体在画面中的位置_如何在弱光环境中拍摄运动物体
  3. Delphi面向对象的可见性表示符
  4. 忍不住跟着吐槽 —“当你辛辛苦苦写的博客文章被无情复制,成为了他的原创,你作何感想?”...
  5. JS实现下一天的显示
  6. Nginx之rewrite配置
  7. DataStorage分析
  8. (7)Xilinx PCIE 接口调试总结(学无止境)
  9. (88)FPGA乘法器设计(移位相加乘法器)
  10. (01)FPGA时序分析概念