CS成帧芯片API介绍.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CS成帧芯片API介绍.doc

CS6001成帧芯片API介绍 为了方便使用,CORTINA提供了一整套API接口来支持CS6001芯片的配置,基本上包含了芯片所能实现的全部功能,用来避免对芯片寄存器的直接操作。我们在单板软件中也大量使用了这些API。本文介绍了一些API的使用方法并举例说明 API简介 CS6001的软件架构分为三个部分,驱动(driver)、设备(Device)和模块(Module),通过上文可以看出软件的构建也是根据CS6001的硬件设计而制定的。每个部分都有相应的API来支持实现不同的功能。这三个部分的具体功能如下。 在使用任何API之前必须先要生成一个Driver的实例,Driver只能有一个,通过函数ten_drvr_load()函数来调用,该函数将为整个framer的控制功能申请内存单元,只能产生一个。如果用户希望关闭整个framer的驱动,可以调用ten_drvr_unload()函数。 这里需要注意的是,如果在ten_drvr_load()函数之前调用芯片的API,可能会使单板软件跑死,因此在编写软件初始化代码时要避免这种情况。另外,在软件运行过程中也不能执行ten_drvr_unload()函数,也有可能让软件跑死。 Device是指实际应用中的CS6001芯片,Device可以有很多实例,也就是说1个Driver可以管理多个CS6001芯片,通过1个device_id来区别,在LS3/CS3单板的应用中,板上只有一个CS6001芯片,因此只有一个device_id=0。如上文所述,每个CS6001芯片上都有2个相同的功能模块A和B,在软件中以module_id来区分,一般情况下Module A的id为0,Module B的id为1。 整个CS6001的API通过函数名的drvr、dev、mod来区分是驱动、设备、和模块的API,几乎每个API都需要将device_id 和 module_id作为输入的参数,如果芯片需要有10G的功能,则相关的10G的API 还需要一个slice_id(0~4)来作为输入参数,对应不同的10G的通道。图1是整个CS6001软件的架构图。 图1 CS6001的软件架构 API的使用举例 在我们LS3/CS3单板的应用中,使用很多的API来实现一些复杂的功能,如Framer内部的环回,告警的插入和提取等。下面就以这些功能的实现作为例子来说明API使用。 2.1 CS6001的环回功能的实现 在调试LS3/CS3单板的过程中,经常需要将framer进行环回,同时环回功能也是网管上需要实现的功能,CS6001提供了多种的环回方式,如图2所示,以模块B为例: 首先先介绍framer内部可以可以支持的环回类型,CS6001芯片总共可以支持5个大类的环回,这5种环回发生在A、B模块中的不同位置(图4中所示),环回的方向也不一样,使用时注意区别。下面就这5种环回进行简单的介绍。 图2 CS6001的环回方式 (B侧) 1、Facility 环回,在芯片的处理器接口处发生,将信号从解码器直接环回到编码器,即信号绕过了模块内部的处理器单元。是Rx到Tx的环回。 2、Far End 环回,在芯片的处理器接口处发生,将信号从发送端处理器环回到接收处理器,是Tx到Rx的环回。 3、Parallel环回(Rx到Tx),在串并转换器外发生,将信号重新环回到串并转换器,从Rx到Tx方向。 4、Parallel环回(Tx到Rx),在串并转换器外发生,将信号重新环回到串并转换器,从Tx到Rx方向。 5、Serial环回,发生在串并转换器内部,直接将信号环回,是Tx到Rx的环回。 所有以上的环回,都可以调用API ten_hl_hsif_control_loopback( module_id slice loopback ctl) 设置不同的参数来实现,其中,slice参数决定不同的10G的通道,对于40G的信号,slice参数设置为0xff;loopback参数是选择不同的环回类型,如图4中绿色数字标识,如loopback = 9对应的是Serial环回。ctl是环回的使能开关,1是打开环回,2是关闭环回。 40GLS3/CS3单板支持光口环回和背板环回,其中网管上的光口的外环和内环功能是在Framer芯片中实现的,对于光口内环,我们采用的是B侧(B侧与光口连接)的Serial环回;对于光口的外环,我们采用的是A侧的Serial环回。 总结 API的使用可以极大减轻软件人员配置成帧芯片的工作量,但需要注意的是这些API的设计是通用的,对于不同的单板,需求是不一样的,这就要求我们在使用API时需要谨慎,必要时还需查看芯片的寄存器手册。

文档评论(0)

000 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档