芯片与软件的接口

  做过一段时间芯片验证,之后从事研发,大大小小的坑踩了,宽宽窄窄的沟过了,之后留下了一点点回味与怅然,于是写下来,同大家一起分享。

  回想前些年做验证时的生活,痛并快乐着。痛在对每个寄存器功能的调试与BUG定位,乐在与软件最底层的亲密接触。

  芯片验证,简单的说就是使用仅限的几个寄存器完成固定的功能,并通过信号波型和协议执行结果对芯片功能的正确性进行判断,并对芯片内部逻辑中出现的问题进行快速定位。表面上看去是一件十分枯燥无味的事情,因为缺少了创意,任何一件事情都可能会让人失去激情。但事实上,每件事情都可以做深做精,只要理解它存在的意义,工作中就不会感到迷茫,创意随手可得。

  芯片验证在芯片设计过程中扮演着一个重要的角色。看上去很像测试,其实同一般的测试有很大的不同。芯片验证的成果是面向研发的。换句话说,任何一个方案,都是在验证人员所做的工作基础之上展开的。研发需要的DATASHEET、DEMO代码、基本开发环境的搭建说明,几乎全部从芯片验证人员手中产生。DATASHEET文档的清晰度、芯片寄存器使用起来的方便程度、芯片运行时的稳定性,无一不牵扯到验证人员的整日辛勤工作。

  本着守正出奇的原则,芯片验证人员首先会做好自身的本职工作。验证人员会为芯片各个功能点的实现进行确认工作,保证芯片的每一个功能都可以正常的运行,并且稳定的互相组合。再进一步,验证人员会合理的向芯片设计人员提交寄存器的功能配置列表,以使软件开发过程中的寄存器操作过程更加的人性化,合理化。

  对于研发人员来讲,当只关心芯片的逻辑功能时,可以简单的将芯片设计当成一种软件设计。就像一般的软件设计协作方式一样,底层的模块会通过函数接口的形式提供给上层调用。在这个接口在芯片中,其表现形式就是寄存器。通过对相关寄存器的读写,就可以调用底层硬件模块的功能。而Datasheet中的寄存器列表,也就像是软件架够设计中的接口部分一样,其好坏可以直接影响到后期代码编写的质量。

  先简单的回味一下,要去吃饭,哈...回头再改

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值