资源预览内容
第1页 / 共19页
第2页 / 共19页
第3页 / 共19页
第4页 / 共19页
第5页 / 共19页
第6页 / 共19页
第7页 / 共19页
第8页 / 共19页
第9页 / 共19页
第10页 / 共19页
亲,该文档总共19页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
产品名称文档编号XXX-YYY/ZZZ-SSS版本V1.0密级xxx文档最新修改号 Doc-ID: XXX-YYY/ZZZ-SSS-001This document contains proprietary information which is the property of CNMP Networks Inc and is strictly confidential and shall not be disclosed to others in whole or in part, reproduced, copied, or used as basis for design, manufacturing or sale of apparatus without the written permission of CNMP Networks Inc.新普矽谷科技(北京)有限公司版权所有 侵权必究版本历史记录时间早节变化类型(init/add/modify /delete)具体变化描述作者2004-5-1031init初稿Xx2008-1-024.1, 5Modify增加新的对外接口yy目录版本历史记录21 引言 41.1 目标41.2 使用范围41.3 缩略语41.4 参考资料42需求描述 52.1 功能需求52.2 性能需求53 模块设计 63.1 模块结构视图63.2 模块内部调用63.3 模块 M1 73.3.1模块Ml介绍73.3.2 M1 对外接口 73.3.2.1 API for HWM Module73.3.2.2 API for CLI/SNMP Module83.3.3 M1 内部结构 83.3.4 M1 处理流程图 83.4 模块 M2 93.4.1模块M2介绍94 模块交互图 95 数据结构 115.15.1 常量定义115.25.2变量定义125.35.3 结构定义126调试需求 137 模块初始化 137.1 系统初始化阶段147.2 模块自身初始化148 外部接口要求 159 开发环境 15关键词:板间通讯概要:模块功能的简单描述。例如:本文档主要描述了在通信系统中数据存储的优化需求与设计实现、各个单板 db 模块之间的数据交互消息格式和交互流程仅作适应性调整,消息处理的具体实现根据优化后 的结构重新设计。1 引言1.1 目标简单介绍文档目标。例如: The purpose of the document is to provide high-level design information of PMC7367 driver which to be used in our system. It will be helpful for successive development and Maintenance on it.文档使用人员范围。例如: 本公司软件开发人员、操作维护人员1.3 缩略语1.4 参考资料列出相关参考资料。2 需求描述2.1 功能需求详细列出模块需要实现的功能。具体不同模块设计,有不同的要 求,比如 alarm,pm 模块,其所实现的需求就如我们的需求文档中 内容所诉;比如hdlc, uart驱动模块,其仅提供对外接口 api,则这 部分说明可以略例如:1. 对所有的子卡Port IF,如果Admin状态,FSR状态,Tx_Sync状态任何一个的状态为 “关”则Port IF的发射Laser状态也必须设定为“关”状态。2对所有的子卡Port IF,如果Admin状态,FSR状态,Tx_Sync状态的状态均为“开”, 则 Port IF 的发射 Laser 状态也必须设定为“开”状态。注意:Tx_Sync状态的“关”状态定义为DB设定特定Port IF的Tx_Sync为Enable并 且端口有LOS;否则Tx_Sync处于“开”状态。2.2 性能需求列出模块实现需要满足的性能。例如1要求整个系统PM功能运行平稳,提供的数据准确。2. 要求NC/SC/LC通信处理不能慢于5秒。3. 要求整个PM统计数据累加误差不能超过10秒。3 模块设计3.1 模块结构视图将模块内部结构图示化,同时描述出模块和系统其他模块的关系。例如:模块内部分成多个部分:M1,M2,M3,M4,.Mn3.2 模块内部调用描述模块内部各个部分之间的调用关系。可略。如果本模块细分为几个模块(如M1,M2,M3,M4),并且模块之间有较强的相互依存关 系,那么,需要在这里加以说明。3.3模块M13.3.1模块M1介绍描述模块M1完成的功能,主要是介绍其和其他功能或者模块的相互关系。例如:OAD-DRV的输入input module:完成OAD-DRV的输入处理。1来自DB的配置信息,保存到本地配置信息全局变量。2来自PEER的4路下拉光路的光功率值保存到PEER状态信息全局变量。结合自己的4 路上拉光路的光功率值和本卡配置信息,决定是否需要调节自己的某路或几路上拉光路的光 功率值,即调节 VOA。3.当调节VOA时,VOA不能正常工作,则向ALM发出VOA failure报警3.3.2 M1对外接口详细给出模块M1提供给其他外部模块的接口,非M1内部模块。可略,如果没有的话;。例如:3.3.2.1 API for HWM ModuleNC上HWM模块调用下面的回调函数来设置本shelf上各LC的当前插拔状态,当LC 处于拔状态后,需由NC PM模块作该LC PM统计数据无效处理。int pm_SetCardStatus(int ShelfID, int SlotID, int Status);ShelfID 取值范围1,4, SlotID 取值范围2,18。Status为特定(ShelfID, SlotID)上板卡的HW状态,0为拔出状态,1为插入状态。3.3.2.2 API for CLI/SNMP Module3.3.3 M1内部结构描述模块M1内部的结构,如果有设计上采用进一步的模块化功 能,给出内部模块化功能图的结构,类似模块结构视图。可略,如果没有进一步的模块化。一般而言,不需要。3.3.4 M1处理流程图描述模块M1处理流程图。例如:output module 每隔一秒查询一次本卡的 8 路光功率值,并保存到当前状态全局变量,同 时向 PEER 发送 4 路下拉光路光功率值,同时它还能进行 communication failure 报警。开始初始化计时变量为0是第8页共15页通知 ALM 报警:communication failure3.4模块M23.4.1模块M2介绍4 模块交互图描述模块和系统其他模块的交互关系,同时给出所有的模块交互图。如果交互图较少,直接在文档上完成;如果交互图很多,考虑用专门文档来描述交互图。有些比较复杂的事件,需要几个大模块协调共同完成,这样为了 将事件发生清楚地表达出来,就需要通过模块交互图的方式。例如:实时控制模块与系统中其它的相关模块交互关系如下图 4 所示;在该图中发生的场景 具体描叙如下: 对于LH Port IF其Laser On/Off的状态,受DB配置和PSW实时监控的影响; 当 DB 模块改变了 LH Port 的 Admin 状态, 它将调用 Subcard Driver 模块提供的 外部API,设置LH Port IF的Admin Status,实时控制MonitorTask定时检测LH Port IF 的 Admin Status,变化时,由该任务调用 Subcard Driver API 作 Laser On/Off控制。当PSW检测到有LH los等需要做端口 enable/disable动作时,将 调用本模块做类似处理。 对于SH Port IF其Laser On/Off的状态,将受到DB配置,FSR状态,Port LOS 状态的影响。当DB模块改变了 SH Port的Admin状态,或FSR状态或Port LOS 状态改变时,FSR模块,HWM模块分别调用实时控制模块提供的外部API设置 SH Port IF的当前状态,实时控制MonitorTask定时检测SH Port IF Status,变 化时,由该任务调用Subcard Driver API作Laser On/Off控制。Call Subcard Drv API 吗Call Subcard Drv APICall Subcard Drv APIReceivedModify SHCall Subcard Drv APIAdmin StatusCall Subcard Drv APITx_Sync &CallSHRTLCOtSrl API5 数据结构详细给出模块设计中使用到的数据结构,包括宏定义,枚举类型 定义。数据结构的定义需要包含详细的说明。列出的顺序可以按照数据结构用途分类列出,也可以按照数据结 构本身属性列出。例如:按照数据结构属性列出如下5.1 5.1常量定义#define ICC_MAX_MODULE 10#define ICC_SOCKET_PORT_NUM123455.2 5.2变量定义ICC_REG_STRUCICC_MODULE_REGICC_MAX_MODULE;ucharicc_has_been_init;/*ICC 模块已经初始化并启动*/5.3 5.3结构定义本节给出了 ICC模块中主要的数据结构,同时给出结构中每个域的详细说明。5.3.1 ICC的实体结构虽然对于 chassis 来说,实体结构可能需要很多信息,但对于 ICC 来说,只需要 shelf、slot即唯一标识出一块板卡,但为了扩充,可加入unit项。即可定义为:typedef struc _ICC_CHASSIS_ENTITY_UCAHR shelf;/* shelf ID */UCHAR slot;/* slot ID */UCHAR unit; /* unit number on a slot, for example, port number, fan unit or power unit number */UCHAR stuff;/*4 bytes alignment*/ICC_CHASSIS_ENTITY;也可以按照数据结构不同用途列出如下:5.1 alarm 模块存储结构#define MAX_ALARM_NAME 32typedef struct ALARM_Schar alarm_nameMAX_ALARM_NAME; /*alarm name*/ int alarm_sendflag;/*alarm send flag:0-not to send0x01-allowed send to snmp*/int alarm_status; /*0-OK;0x01-failure/absent/error/threshold overflow*/
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号