1.  项目介绍

在NINJA设备上支持RTM-ISDN卡
RTM-ISDN卡硬件组成


主要组成单元
C6415: DSP
PEB383(上图中的PEX8112改为PEB383,由于后者具有NT功能): PCIE2PCI bridge
PEF22554: FALC E1/T1 framer
LC4256V: CPLD

2. 完毕情况及时间
number item class status date used
1 RTM-ISDN study design finished 9 9
2 RTM-ISDN card platform software design design finished 5 5
3 RTM-ISDN setup development environment coding finished 1.5 1.5
4 RTM-ISDN card PCIE bridge setting coding finished 2 2
5 RTM-ISDN card RTM-DSP loading coding coding finished 4 4
6 RTM-ISDN card PCIE bridge bring up debug finished 2.5 2.5
7 RTM-ISDN card RTM-DSP loading bring up debug finished 2 2
8 RTM-ISDN card host communicate coding coding finished 5.5 5.5
9 RTM-ISDN card host communicate debug debug finished 8 8
10 RTM-ISDN card new feature for HQA coding finished 2 2
11 RTM-ISDN setup DSP Debug environment debug finished 2 2
12 RTM-ISDN QuadFALC HQA PRBS test support support finished 6 6
13 RTM-ISDN diag and monitor coding finished 12 12
14 RTM-ISDN diag and monitor debug support support ongoing 5 0
15 RTM-ISDN code rebase support finished 3 3
16 RTM-ISDN FCT coding finished 12 12
17 NINJA FCT V3.5 debug debug ongoing 3 0
18 RTM-ISDN hardware debugging support support suspend 10 6
19 RTM-ISDN software debugging support support ongoing 10 8

3. 项目总结
3.1 统计
Row Labels Sum of date
coding 39
debug 17.5
design 14
support 34
Grand Total 104.5




3.2 项目中做的好的地方
3.2.1 design部分
前期design工作非常有效果,后期工作都採用design的预设方案。
coding部分和debug部分工作量对照37:17说明了预设方案的成熟与可靠。

架构设计採用五视图方法
系统架构设计中五视图的功能

逻辑架构:关注功能。不仅包含用户可见的功能。也包含一些基础模块以及辅助模块。

开发架构:关注程序包,不仅包含要编写的程序,还包含能够直接使用的第三方SDK或者现成的框架、类库以及开发的系统将执行于其上的系统软件或者中间件。

执行架构:关注进程、线程、对象等执行时概念。以及相关的并发、同步、通信等问题。

物理架构:关注‘目标程序及其依赖的执行库和系统软件’终于怎样安装或部署到物理机器,以及怎样部署机器和网络来配合软件系统的可靠性、可伸缩性等要求。

数据架构:关注持久化数据的存储方案。不仅包含实体及事实上体关系的数据存储格式,还包含数据传递、数据复制和数据同步等策略。

平台软件架构中五视图的功能

逻辑架构:关注功能。

从需求提炼出平台软件功能,注重功能的逻辑性和完整性。

开发架构:关注模块。分解组合平台软件功能到各个功能模块。注重功能模块间关系,确定开发顺序。

执行架构:关注平台层机制执行时逻辑。

物理架构:关注功能模块和功能模块组成程序包的部署。

数据架构:关注数据的存储方案。

物理架构图,体现功能模块在各个子系统中的部署情况。


RTM-DSP时钟同步机制执行架构



RTM-DSP stream 通信数据架构



RTM-DSP系统的bootup,recover和upgrade逻辑架构



RTM-DSP平台软件开发架构




3.2.2 需求部分
对硬件project师提出需求
提供硬件信息,包含芯片所需电源,时钟,控制总线和数据总线信息
避免软件和硬件设计不匹配,方便排查低级错误。

对于FCT需求
帮助MFGproject师确定FCT需求。
提供FCT设计草案。并提供每一个測试环节数据流图,使MFGproject师在了解系统的情况下合理确定FCT需求。

    
3.3 项目中做的不好的地方
3.3.1 support部分
support花费时间较多,眼下已占33%。
个人觉得原因是架构设计时将RTM-DSP定位为黑盒系统,导致没有安排DSPproject师负责。
尽管,以色列执行RTM-DSP系统7年时间,说明其足够稳定和可靠。

可是。硬件和APP都有修改。硬件和APP对自己的部分也不是非常熟。出问题后都想从RTM-DSP系统获取信息。
还有,RTM-DSP缺乏对应的測试工具证明自己工作正常。
不应该将RTM-DSP定位为黑盒系统。应该安排DSPproject师负责,降低对RTM-DSP系统猜疑。节省时间和精力,加快进度。
3.3.2 设计部分
尽管和硬件相关项目不太适合使用敏捷开发,可是需求不会100%完整,也不会没有需求变更。
须要借鉴敏捷开发。灵活应对需求变化。

3.3.3 debug部分
缺乏各层通信验证工具
此次因为底层通信涉及L3 L4。验证工具开发平台project师无法独立完毕。
假设可以尽早开发出合适的验证工具,一旦验证通过,一方面能排除平台软件问题,给予APP信心。定位问题时不走错方向,还有一方面平台软件project师可尽早抽出精力做其它部分工作。

RTM-DSP项目总结的更多相关文章

  1. 【DSP开发】mailbox的使用

    在DSP项目开发中,我用mailbox实现了进程间的通信,通过接收网络控制进程发来的mailbox,实现了云台的控制,其中需要学习的地方有两点:一是mailbox通信机制的学习,二是DSP时间管理机制 ...

  2. 如何用ATL创建ActiveX控件

    演示截图: 代码简介或代码解析: 如何用ATL创建ActiveX控件 实现了一个ActiveX控件,它在一个圆内部有个正多边形,当用户在多变形内部单击将会使多边形的边数在当前的基础上+1,在多变形外部 ...

  3. vc6.0批量编译

    一直想研究一下怎么让电脑批处理编译程序,今天就从vc6开始,做个记录,学习一下. VC可以生成make文件(Project->Export Makefile),在设置好环境变量下,执行NMAKE ...

  4. VC6.0 突然打不开dsw 工程文件的解决方案

    在vc编程中,经常遇到dsw工程文件无法打开,或者打开后看不到类和变量的问题.特别是把代码从一台电脑上copy到另一台电脑上以后,常常会碰到这种奇怪的问题.有时在编辑状态下也会发生成员变量或函数提示不 ...

  5. Visual Studio 2017 Enterprise (15.3)

    版本15.3更新在用户离线下载时更加人性化,包含了进度显示,下载出错可以输入R,进行下载的重新尝试,并在当前下载框下继续下载为完成的作业,结合 --layout 参数的离线文件的检查和修复,并且在下载 ...

  6. VC6工程因行尾格式无法转换到VS2015

    VC6工程因行尾格式无法转换到VS2015(金庆的专栏 2017.6)参考:https://connect.microsoft.com/VisualStudio/feedback/details/54 ...

  7. VC项目文件说明

    .dsp   项目参数配置文件,这个文件太重要,重点保护对象.. .dsw   工作区文件,重要性一般,因为它信息不我,容易恢复.   以下文件在项目中是可丢弃的,有些文件删除后,VC会自动生成的. ...

  8. VC6.0实用小技巧

    VC6.0的若干实用小技巧 .检测程序中的括号是否匹配 把光标移动到需要检测的括号(如大括号{}.方括号[].圆括号()和尖括号<>)前面,键入快捷键 “Ctrl+]”.如果括号匹配正确, ...

  9. vs2012 编译运行报 项目程序包Dsp.Bds.dll还原失败,找不到版本xxxxxx的程序包问题的解决方法

    原先vs2012程序运行项目是可以了,不会出现程序包Dsp.Bds.dll还原失败,找不到版本未2.0.1.0的程序包问题, 但是项目可以正常运行,每次调试看到下面一片红感觉不舒服 原因:可能当时我看 ...

  10. 【Win 10 应用开发】RTM版的UAP项目解剖

    Windows 10 发布后,其实SDK也偷偷地在VS的自定义安装列表中出现了,今天开发人员中心也更新了下载.正式版的SDK在API结构上和以前预览的时候是一样的,只是版本变成10240罢了,所以大家 ...

随机推荐

  1. JavaScript 开发者的 10 款必备工具

    JavaScript,一种所有主流浏览器都支持的语言,是开发基于浏览器的 Web 应用程序的主力,几乎每年都会受到来自众多开发人员的关注.自然地,框架和库的生态系统自然而然地围绕着 JavaScrip ...

  2. 扫面线+线段树(hdu1542)

    之前写过这个算法,时间长了就忘掉了,,现在不看书自己努力回想起来,对算法的理解,对线段树的理解感觉也更深了一点(可能心理作用,哈哈哈) 思路简单说一下吧 从做到右遍历每一条矩阵的边(左右边),看该边对 ...

  3. 数学【P2524】 Uim的情人节礼物·其之弐 (康托展开)

    因为某人@ZAGER挖坑让我讲一下康托展开,所以发现了这个题,顺便说一下康托展开是个什么东西 题目概括 给定n与一个数列,要求求出给定数列在n的全排列中的排名(按照字典序从小到大排列) 康托展开 先放 ...

  4. jcl sort comp3 to 表示型

    Lets say your packed data is at 10th column and is of length 6, S9(4)V99 You could try the following ...

  5. 物理像素,ppi,逻辑分辨率和物理分辨率

    1 明确几个概念: 物理像素:屏幕物理像素 屏幕像素密度ppi:pixels per inch,屏幕上每英寸可以显示的像素点的数量,即屏幕像素密度.顺便一提,ppi就是dpi,只不过有文章里说苹果喜欢 ...

  6. Struts2笔记--文件下载

    Struts2提供了stream结果类型,该结果类型是专门用于支持文件下载功能的.配置stream类型的结果需要指定以下4个属性. contentType:指定被下载文件的文件类型 inputName ...

  7. 四. Java继承和多态5. instanceof 运算符

    多态性带来了一个问题,就是如何判断一个变量所实际引用的对象的类型 . C++使用runtime-type information(RTTI),Java 使用 instanceof 操作符. insta ...

  8. 使用Jenkins搭建iOS开发的CI服务器

    目录 简介     下载并运行     Jenkins配置         安装git插件         E-mail设置     自动化构建         远程仓库设置         触发条件 ...

  9. 十步完全理解 SQL

    很多程序员视 SQL 为洪水猛兽.SQL 是一种为数不多的声明性语言,它的运行方式完全不同于我们所熟知的命令行语言.面向对象的程序语言.甚至是函数语言(尽管有些人认为 SQL 语言也是一种函数式语言) ...

  10. python 常用的模块(collections)转

    collections是Python内建的一个集合模块,提供了许多有用的集合类. namedtuple 我们知道tuple可以表示不变集合,例如,一个点的二维坐标就可以表示成: >>> ...