火辣的七月,是实战的七月,在交付的压力下,遇到不少clock方面棘手的调试问题,有本身的调试经验问题也有些代码上的客观问题,在FPGA上和emulator上的代码调试经历以及同事的指导让我收获颇多,遇到问题不再茫然和盲目,更重要的是从心理上树立了攻克棘手问题的信心,从而提高工作效率。这个月的主要工作总结如下,请大家多多指教。
主要工作及输出
Ø emulator平台clock代码接口验证
Ø K3V3 CLOCK DTS编码及emulator测试
Ø LINUX内核基础与高质量C++/C编程学习
Ø 交付k3v3 clock代码及相关检视表单
Ø 输出时钟维护透视表和时钟树
主要培训及考试
Ø K3&BSP技术交流培训
Ø K3V3方案案例问题总结培训
Ø K3编程规范考试
主要学习文档资料
Ø 高质量C++/C编程指南
Ø C&C++语言安全编程规范_V1[1]
Ø K3 V300R001 编程规范
Ø K3 V300R001 软件编码红线
Ø K3V2与竞争对手的时钟方案对比分析
Ø 深刻理解Linux进程间通信
Ø Android启动过程分析
Ø Linux SMP时间管理及K3V2平台应用v1.3
Ø patch包制作及codestyle检查工具使用
Ø 代码上库规范流程
Ø 用GDB 查看内核对应C代码
Ø K3V2低功耗调试完全手册
OJ练习
Ø 在字符串中找出连续最长的数字串、判断2的次幂、2009年10月无线底软技能鉴定试题初级、字符串左补齐、字符逆序
工作内容解析及心得
Ø emulator平台clock代码接口验证主要由于FPGA时钟寄存器操
Ø 内核CLK的Kconfig & Makefile的编写主要采用了菜单属性的
Ø K3V3 CLOCK DTS的编码环节主要依赖与寄存器手册与时钟复位
Ø CLOCK流程分析输出主要从DTS的解析、注册过程出发,从流程上分析了clock架构的来龙去脉,介绍了clock标准接口及其调用方法。
痛点及可能的改进办法
Ø 对LINUX内核理解不深刻的时候,容易忽略问题真正的影响点,从而导致问题的定位不迅速;加深对LINUX内核整体架构的理解及其相关模块子系统的内在关联。
Ø 单板调试经验和技术积累不够丰富的时候,容易导致生产效率低下,影响项目进度;多向经验丰富的同事请教,多虚心沟通,多动手实践并将相关信息分享给经验和技术积累丰富的同事。
Ø 编程基础和技术规范性还不够强大的时候,容易导致代码调试过程中问题定位不够充分;加强编程基础的积累,对C编程中易错易混的难点进行集中攻关,加强对编程规范的理解并将其投入到平时的工作中。
下一步工作计划
Ø 加强业务工作能力以及业务流程的规范性,多向同事学习,多问多沟通、积累经验,持续改进。
Ø 努力将敏捷开发、TDD等开发技术融入到平时的开发中,做好项目的UT工作。
Ø 加强项目经验和技术的积累,进一步学习LINUX内核及驱动开发技术、C编程基础及编程规范
Ø 做好当前k3v3的clock模块工作,在保证模块的正确性与稳定性的前提下为项目组承担更多任务。
本文总结了作者在七月期间解决复杂时钟调试问题的经验,包括emulator平台clock代码接口验证、K3V3CLOCKDTS编码及测试等工作内容,并分享了LINUX内核基础与高质量C/C++编程的学习心得。
966

被折叠的 条评论
为什么被折叠?



