新闻中心

EEPW首页>EDA/PCB>设计应用> OBS核心控制器结构设计与硬件化实现

OBS核心控制器结构设计与硬件化实现

作者: 时间:2009-05-18 来源:网络 收藏

帧解析模块的状态转移图如图2所示。上电后首先进入Idle状态,在Idle状态下检查接收缓存是否有新的数据包,有的话则进入ReadMAC状态,读取MAC头信息,判断MAC帧类型,非IP数据包则将其丢弃,否则进入ReadIP状态,这个状态下读取IP数据包的长度,以及类型,TTL等信息,如果是不是BCP包,进入Route状态,进行路由选择,如果是本地包,则上传到网管模块中,否则进入Update状态;如果是BCP包,则进入RouteSchedule状态,启动路由和调度模块的工作。如果调度不成功,则要将该BCP包丢弃,如果成功,也进入Update状态;在Update状态下,对TTL进行更新,如果调度出来的波长号发生改变,也要更新相应信息。之后,就进入Forward状态,将已更新好的数据包发送到输出缓存中,进行下一帧的处理。
1.2.2 路由和调度模块
图3所示为路由表和信道资源库的结构示意图。路由表包含多条路由表项,每条表项包括目的网络地址及输出端口号两部分信息。查找路由的过程为:从首条表项开始,将目的网络地址依次与各表项中网络地址进行匹配,匹配成功即输出端口号。Ptr用来指向当前的匹配表项,如需二次查找,只需从Ptr指向的表项开始继续查找。

信道资源库包含所有端口的信道分配信息,每个端口作为一组,包含一个控制单元CU及一组定时器,每个定时器对应于一个信道。信道空闲时定时器也处于空闲状态,每次为BCP成功分配信道以后,就需要打开光开关控制信号,同时肩动相应定时器,时间设置为偏置时间+预留时间,定时结束,关闭光开关控制信号。控制单元可根据各定时器的工作状态确定各信道的使用状态,进行信道分配。
图3路由表和信道资源库的结构示意图路由和调度功能的实现过程如下:首先检测各帧解析模块的调度请求信号,如果有效,读取目的网络地址,同时启动路由和调度过程,先到路由表查找到第一个与目的网络地址匹配的路由表项,得到输出端口;再到信道资源库里检查该端口是否有空闲的数据信道,有的话预留该信道,设置光开关矩阵,启动相应定时器,调度成功,返回给帧解析模块输出端口和数据信道的信息;如果不存在空闲信道,则需要继续到路由表中查找匹配表项,找到后再次到信道资源库中搜索空闲信道,如此继续;如果搜索完路由表中所有表项后仍无法找到空闲信道,则返回调度失败信号给帧解析模块。


2 实验测试
我们对本设计进行了硬件化实现。图4为用QuartusII工具得到的电路时序仿真图。图中1、2、3、4、5为状态指示信号,依次对应帧接收完成信号、读取状态信号,协议处理状态信号,路由和调度状态信号,转发状态信号;6,7为输出信号,分别对应调度完成信号和光开关设置信号。

图2 BCP包接收处理过程的工作时序(参见结尾)由图4可见,在一个包的处理过程中,依次经历了帧数据的读取、协议处理、路由和调度、转发等多个状态,其中从BCP包接收完成到发出光开关设置信号仅用了lOOns,相比于现有的实现方案,有了很大的提高。完全可以满足现有网络对节点开关速度的要求。


3 总结
本文提出了一种将路由选择和信道调度整合在一个模块中处理的节点控制系统的结构,并在FPGA平台上验证了本设计的可行性和有效性。测试结果表明:接收完BCP包到发出光开关设置信号的最短时间为lOOns。显著缩短了控制包在节点的处理时间。

电子镇流器相关文章:电子镇流器工作原理


电子镇流器相关文章:



上一页 1 2 下一页

评论


相关推荐

技术专区

关闭