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. 利用NPOI组件产Excel完整操作

    最终还是要使用NPOi了.刚开始做的是用com组件,发现如果本机不按照excel就不能使用,后来把其中一支改为了用Itextsharp产生pdf,但是还有几支批次要产生Excel,只能改用NPOI了. ...

  2. HDU 6298.Maximum Multiple-数学思维题(脑子是个好东西,可惜我没有) (2018 Multi-University Training Contest 1 1001)

    暑假杭电多校第一场,这一场是贪心场,很多贪心的题目,但是自己太菜,姿势挫死了,把自己都写吐了... 2018 Multi-University Training Contest 1 HDU6298.M ...

  3. 51nod 1086 背包问题 V2 【二进制/多重背包】

    1086 背包问题 V2  基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题  收藏  关注 有N种物品,每种物品的数量为C1,C2......Cn.从中任选若干件放 ...

  4. Python与数据库[2] -> 关系对象映射/ORM[0] -> ORM 与 sqlalchemy 模块

    ORM 与 sqlalchemy 1 关于ORM / About ORM 1.1 ORM定义 / Definition of ORM ORM(Object Relational Mapping),即对 ...

  5. Python的并发并行[1] -> 线程[2] -> 锁与信号量

    锁与信号量 目录 添加线程锁 锁的本质 互斥锁与可重入锁 死锁的产生 锁的上下文管理 信号量与有界信号量 1 添加线程锁 由于多线程对资源的抢占顺序不同,可能会产生冲突,通过添加线程锁来对共有资源进行 ...

  6. MySql笔记之修改MySQL提示符

    首先,了解下MYSQL提示符是神马东东 就是每次登陆mysql后出现的提示符 如果我们不喜欢这个提示符呢,那我们就改成我们喜欢的样子. 系统参数提示符 举个栗子 就改成相应的提示符了,那么可否随意改名 ...

  7. 清北·NOIP2017济南考前冲刺班 DAY1 morning

    立方数(cubic) Time Limit:1000ms   Memory Limit:128MB 题目描述 LYK定义了一个数叫“立方数”,若一个数可以被写作是一个正整数的3次方,则这个数就是立方数 ...

  8. 理解boot.img与静态分析Android/linux内核

    一些尝试和理解. 1>提取boot.img: 其中,msm代表是高通的芯片,msm_sdcc.1是外接的SD卡挂载的目录,by-name指的是这个sd卡分区的名称.下面几行代表每个分区存储的东西 ...

  9. HTML表格基础详解

    在现在 div 大行其道的时代,table 这个标签似乎很少被人提及,到处都是 div+css 布局的书以及博客文章,但其实 table 以及连带的其他表格标签依然在网页中占很重要的地位,特别是后台展 ...

  10. [BZOJ 1037] 生日聚会Party

    Link: BZOJ 1037 传送门 Solution: 由于对任意一段都有要求,于是我们对于所有前缀考虑其后缀不超过$k $即可: 设$dp[i][j][x][y]$为前$i$个人中有$j$个男孩 ...