System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 高性能FC协议处理引擎制造技术_技高网
当前位置: 首页 > 专利查询>浙江大学专利>正文

高性能FC协议处理引擎制造技术

技术编号:39955562 阅读:5 留言:0更新日期:2024-01-08 23:38
本发明专利技术公开了一种高性能FC协议处理引擎,包含:原语控制模块,解析接收的FC原语,基于原语序列进行FC链路初始化,基于流控原语进行FC链路流控管理;发送控制模块,根据原语发送使能信号选择发送FC原语,或是读取AXIS总线数据,发送FC帧;接收控制模块,根据帧定界符判断FC帧,完成每个FC帧的错误检测和数据对齐处理,通过AXIS总线输出;传输字编解码模块,对所有发送的FC传输字依次进行64b/66b编码、加扰和256b/257b编码,对接收的FC传输字依次进行256b/257b解码、解扰和64b/66b解码。本发明专利技术提供的高性能FC协议处理引擎,具有64b/66b编解码、256b/257b编解码功能,且具有支持未来更高速率FC标准的扩展空间。

【技术实现步骤摘要】

本专利技术属于网络,具体涉及一种高性能fc协议处理引擎。


技术介绍

1、光纤通道(fibre channel,简称fc)协议主要面向存储区域网络和航空电子环境应用,具有高带宽、低延迟、传输距离远、可靠性高、扩展性强、支持多种上层协议等优势。fc协议采用五层网络模型,自顶向下依次为协议映射层(fc-4)、公共服务层(fc-3)、帧与信令协议层(fc-2)、传输协议层(fc-1)和物理接口层(fc-0)。fc协议处理引擎实现fc-2层和fc-1层的部分功能,负责fc原语和帧的发送与接收,以及fc传输字的编解码,是所有fc设备不可或缺的一个模块。

2、随着技术的不断发展,光纤通道行业协会(fibre channel industryassociation,简称fcia)依次推出了1g、2g、4g、8g、16g、32g/128g、64g/256g速率的fc标准。但目前大多数仍处于fc协议的研究阶段,少数商用fc产品速率还是以4g、8g为主。


技术实现思路

1、本专利技术提供了一种高性能fc协议处理引擎解决上述提到的技术问题,具体采用如下的技术方案:

2、一种高性能fc协议处理引擎,包含:原语控制模块、发送控制模块、接收控制模块和传输字编解码模块;

3、所述原语控制模块用于解析接收的fc原语,基于原语序列进行fc链路初始化,基于流控原语进行fc链路流控管理;

4、所述发送控制模块用于根据原语发送使能信号选择发送fc原语,或是读取axis总线数据,发送fc帧;

5、所述接收控制模块用于根据帧定界符判断fc帧,完成每个fc帧的错误检测和数据对齐处理,通过axis总线输出;

6、所述传输字编解码模块用于对所有发送的fc传输字依次进行64b/66b编码、加扰和256b/257b编码,对所有接收的fc传输字依次进行256b/257b解码、解扰和64b/66b解码。

7、进一步地,所述原语控制模块包含:字有效判断与原语检测子模块、端口状态机子模块和缓存到缓存流控子模块;

8、所述字有效判断与原语检测子模块用于判断fc传输字的有效性,检测帧定界符、帧数据、原语和原语序列;所述端口状态机子模块用于根据接收的原语序列进行fc端口状态转换,在不同状态下指示所述发送控制模块发送相应的原语序列,完成相邻fc端口间的链路初始化;

9、所述缓存到缓存流控子模块用于根据接收的流控原语以及发送的fc帧管理当前可用信用量,并根据接收的fc帧指示所述发送控制模块发送流控原语。

10、进一步地,所述发送控制模块根据所述端口状态机子模块的指示发送原语序列,根据所述缓存到缓存流控子模块的指示发送流控原语,在fc链路有效、可用信用量不为零且axis总线上存在数据的情况下发送fc帧。

11、进一步地,所述发送控制模块的传输优先级为原语序列>最少填充字>流控原语>fc帧>空闲填充字。

12、进一步地,所述发送控制模块具有循环冗余校验码生成功能,在fc帧传输时,计算从帧起始定界符至最后4字节载荷的循环冗余校验码,并在帧结束定界符前插入循环冗余校验码;

13、所述发送控制模块具有异常处理机制,在fc帧传输时,一旦出现fc链路失效或axis总线数据中断的情况,立即插入帧异常结束定界符。

14、进一步地,所述接收控制模块根据帧定界符判断fc帧,依次进行帧结束定界符丢失检测、帧起始定界符对齐处理、超长/超短帧检测、循环冗余校验码错误检测和fc链路失效检测,通过axis总线输出fc帧,使用axis_user位标识不同类型的错误。

15、进一步地,所述帧结束定界符丢失检测解析“帧数据紧跟fc控制字/填充字(帧结束定界符除外)”这类异常情况,出现这类异常后立即插入帧异常结束定界符,并使用axis_user第1位标识;

16、所述超长/超短帧检测解析“帧总长度大于2148字节或小于36字节”这类异常情况,超长帧使用axis_user第3位标识,超短帧使用axis_user第2位标识;

17、所述循环冗余校验码错误检测解析“循环冗余校验码校验结果与理论值不匹配”这类异常情况,使用axis_user第0位标识;

18、所述fc链路失效检测解析“fc帧传输时链路断开”这类异常情况,出现这类异常后立即插入帧异常结束定界符,并使用axis_user第4位标识。

19、进一步地,所述帧起始定界符对齐处理将所有帧起始定界符对齐到512位数据总线的低32位,后面的数据随帧起始定界符整体移动;

20、所述帧起始起始定界符对齐处理对512位数据总线上的每个fc传输字分配一个fifo,共16个fifo,用于缓存fc传输字及相关类型标识;

21、所述帧起始起始定界符对齐处理设有一个循环指针rot_point,用于指示将哪个fifo的输出移动到512位数据总线的低32位;

22、所述帧起始起始定界符对齐处理使用一个状态机控制rot_point的下一位置、fifo的读使能信号以及输出数据的有效信号。

23、进一步地,所述传输字编解码模块包含:64b/66b编码子模块、64b/66b解码子模块、加扰子模块、解扰子模块、256b/257b编码子模块和256b/257b解码子模块;

24、所述64b/66b编码子模块用于将两个fc传输字划分为一组,新增两位同步头,对于fc控制字/填充字,舍弃k码,新增类型域、控制码和有序码,基于同步头、类型域、控制码、有序码和保留的d码进行64b/66b编码;

25、所述64b/66b解码子模块用于基于同步头、类型域、控制码和有序码还原fc传输字,完成64b/66b解码;

26、所述加扰子模块用于将输入和线性反馈移位寄存器的相应位进行异或操作,得到加扰结果;

27、所述解扰子模块用于根据相同的线性反馈移位寄存器再次进行相同的异或操作,得到解结果;

28、所述256b/257b编码子模块用于将四个加扰后的64b/66b编码划分为一组,将八位同步头压缩成一位,对于第一个含有fc控制字/填充字的64b/66b编码,压缩其类型域,新增四位控制字指示位,完成256b/257b编码;

29、所述256b/257b解码子模块用于基于一位同步头和四位控制字指示位还原压缩前的同步头和类型域,完成256b/257b解码。

30、进一步地,所述加扰子模块和所述解扰子模块根据多项式g(x)=x58+x39+1生成线性反馈移位寄存器。

31、本专利技术的有益之处在于所提供的高性能fc协议处理引擎,具有64b/66b编解码、256b/257b编解码功能,降低系统功耗,且具有支持未来更高速率fc标准的扩展空间。

32、本专利技术的有益之处还在于所提供的高性能fc协议处理引擎,支持32g fc标准,采用512位数据总线,33个时钟本文档来自技高网...

【技术保护点】

1.一种高性能FC协议处理引擎,其特征在于,包含:原语控制模块、发送控制模块、接收控制模块和传输字编解码模块;

2.根据权利要求1所述的高性能FC协议处理引擎,其特征在于,

3.根据权利要求2所述的高性能FC协议处理引擎,其特征在于,

4.根据权利要求3所述的发送控制模块,其特征在于,

5.根据权利要求3所述的发送控制模块,其特征在于,

6.根据权利要求1所述的高性能FC协议处理引擎,其特征在于,

7.根据权利要求6所述的接收控制模块,其特征在于,

8.根据权利要求6所述的接收控制模块,其特征在于,

9.根据权利要求1所述的高性能FC协议处理引擎,其特征在于,

10.根据权利要求9所述的高性能FC协议处理引擎,其特征在于,

【技术特征摘要】

1.一种高性能fc协议处理引擎,其特征在于,包含:原语控制模块、发送控制模块、接收控制模块和传输字编解码模块;

2.根据权利要求1所述的高性能fc协议处理引擎,其特征在于,

3.根据权利要求2所述的高性能fc协议处理引擎,其特征在于,

4.根据权利要求3所述的发送控制模块,其特征在于,

5.根据权利要求3所述的发送控制模...

【专利技术属性】
技术研发人员:邢钱舰余锋张博涵
申请(专利权)人:浙江大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1