硬件工程师的启蒙课程:探索硬件开发流程

发表时间: 2021-09-03 17:05

矩不正,不可为方;规不正,不可为圆。——淮南子

成功开发一款电子产品,最重要的是什么?为什么华为涉足哪个领域,(计算、光伏、汽车、手机、手表等),都能做的很强呢?

我认为重要的一点是流程。华为很早就向IBM学习引入了IPD流程,后来很多公司仿效。至于详细的流程,大家可以参考网上关于IPD流程的资料。流程把整个产品的开发做了详细的分工,这道菜分几个阶段,每个阶段都有谁来,怎么过度。我认为一个硬件工程师首先要敬畏流程,做好流程中自己的角色,对交付物负责。然后可以向成为流程中的技术专家,或是管理者努力。

本文主要介绍相对简洁的硬件开发流程,目的是让新手能直观的了解产品是怎样开发的,需要着重注意什么。

如上图,形成一个V型开发模型,先进行需求分析,然后进行设计,再进行测试验证,之后生产。硬件测试映射到原理图设计是否OK,系统测试能看出是否完全满足了需求的功能。


当然其中还可能涉及到但没提到的,系统架构设计,SI仿真,采购,DFX评估,机构设计,固件设计,联调,认证等,这里不做详细介绍。


1.需求分析

需求分析,非常重要,做得产品再牛逼,不满足客户需求还是白搭(这里想起了老罗的TNT)硬件需求分析还可以明确硬件开发任务,大致有下列内容。


硬件整体系统的基本功能和主要性能指标

硬件分系统的基本功能和主要功能指标

功能模块的划分

关键技术的攻关

外购硬件的名称型号、生产单位、主要技术指标

主要仪器设备

国内外同类产品硬件技术介绍

可靠性、稳定性、电磁兼容讨论

电源、工艺结构设计

硬件测试方案


这里,再强调一点,关于需求变更,需求变更会涉及到方案的重新评估和新的人力投入,EE需要为自己争取时间,以免造成项目延期。


2.原理图设计


原理图设计中要有“拿来主义”,尽量复用公司已经验证过的线路,现在的芯片厂家一般都可以提供参考设计的原理图,所以要尽量的借助这些资源,在充分理解参考设计的基础上,做一些自己的发挥。当主要的芯片选定以后,最关键的外围设计包括了电源,时钟和芯片间的互连。


原理图要满足设计规范,最好有checklist,如下图我之前整理汇总的一小部分


3.Layout

PCB 设计中重要的信号线要非常严格遵守规则(Layout Guide),而对于低速和不重要的信号线就可以放在稍低的布线优先级上。重要的部分包括:电源的分割;时钟线,控制线和数据线的长度要求;高速差分线的布线等等。

如下图,是PCIe总线的布线要求