目录
作者有话说
项目的管理方式
develop分支管理
作者有话说
已经出了25期的文章了,一直没说过我在做个什么。相信大家也有这个以后,作者写了几M的代码到现在不会只是为了点个灯吧。要是这我几十行代码就能解决。
这是一个小故事,老粉丝都知道我大三在一个半导体相关的公司做过实习生。当时就再说那是一个美国人卡我们脖子的领域。我现在做的其实也差不多。正好要做毕设并且想做个狠的项目,于是它就来了。
在知网上搜索芯片自检系统等类似的关键字,你会惊奇的发现国外有三十多篇论文国内一篇没有,我猜测可能是半导体这个蛋糕太大了,国内就那几家公司,这种纯提高效率不赚钱的东西大家还没时间做。要么就是有,但是人家没说。加上现在鸿蒙很火,我就打算基于鸿蒙做个芯片自检系统。
什么是芯片自检系统呢。在说这个前先来说一下芯片测试是怎么做的,(不一定准确,我看到听到的加上一些个人猜测),晶圆在蚀刻后需要用芯测设备做一次全功能测试,测一次要好几天的那种。测试后做封装,封装完才是一个真正的芯片没封装的时候好像叫DUT。然后在做一次测试。然后一些开发板公司把各种芯片组合成核心板卡去出售,如果要具体引用的话还要在来个底板将核心板插入后去使用。这些测试都是有高精度电压电流芯片来做的。我们不用这种,我们用软件来测试。当然面向的对象也不同。那种测试还是必须要有的,只不过是芯片厂去用,那种设备都是千万美金级别的。我一个板卡公司没必要啊。这时候就可以用我们的程序,可以当成出厂自检程序。后面我会逐渐优化成SDK的样式。通过软件控制设备来反馈芯片某些功能是否完全。
项目的管理方式
项目在GITEE上,也就是码云。
CEBSS: Chip evaluation board self-test system based on OpenHamony
我已经将它开源了,暂时还没想好到底用什么开源协议所以只有一个免责声明。
linux用的是GPL协议具有传染性,harmonyOS用的BSD协议要求很低二次使用甚至可以闭源进行商业行为。
我觉得学术嘛应该是完全自由的,所以我打算用个限制很低的协议,只要保障大家用它做坏事的时候不会影响到开发者就好。但是不知道用哪个合适很纠结。以后1.0.0版本发布后再说吧。
因为我吧用repo管理的harmonyOS源码也放进去了所以
汇编成了最大的占比,后面我想就当单独维护一个harmonyOS的分支好了。harmonyOS支持三个内核Linxu、liteos-a和liteos-m。这里我先以linux-4.9.88做的开发,应用层也是基于ubuntu的。后面等我不忙了把应用层转到基于HarmonyOS,为鸿蒙生态发展添砖加瓦了。
我的框架还没完善后面完善了在开放开发者的接口。感兴趣的小伙伴可以一起开发。现在暂时只支持用和提出issue。有问题大家可以加群反馈:814096189
develop分支管理
开发者在个人分支开发后通过以下命令切换至develop分支
git log比对本地log和码云的是否一致
使用不带commit的方式合并代码或者直接新拉一个develop对每个新修改的文件做diff操作一点点合并过去。
当像上面那样遇到冲突时手动解决冲突
这种标志就是冲突所在
解决一个add一个
如果你用的是vscode的话可以直接观察到
有冲突的文件显示为红色,修改完变成黄色无冲突是绿色,无修改是白色
任何去每个对应的build目录编译并运行测试功能是否安全。
验证后添加并查看commit
最后上传