给硬件工程师的入门课-硬件开发流程
矩不正,不可为方;规不正,不可为圆。——淮南子
成功开发一款电子产品,最重要的是什么?为什么华为涉足哪个领域,(计算、光伏、汽车、手机、手表等),都能做的很强呢?
我认为重要的一点是流程。华为很早就向IBM学习引入了IPD流程,后来很多公司仿效。至于详细的流程,大家可以参考网上关于IPD流程的资料。流程把整个产品的开发做了详细的分工,这道菜分几个阶段,每个阶段都有谁来,怎么过度。我认为一个硬件工程师首先要敬畏流程,做好流程中自己的角色,对交付物负责。然后可以向成为流程中的技术专家,或是管理者努力。
本文主要介绍相对简洁的硬件开发流程,目的是让新手能直观的了解产品是怎样开发的,需要着重注意什么。
如上图,形成一个V型开发模型,先进行需求分析,然后进行设计,再进行测试验证,之后生产。硬件测试映射到原理图设计是否OK,系统测试能看出是否完全满足了需求的功能。
当然其中还可能涉及到但没提到的,系统架构设计,SI仿真,采购,DFX评估,机构设计,固件设计,联调,认证等,这里不做详细介绍。
1.需求分析
需求分析,非常重要,做得产品再牛逼,不满足客户需求还是白搭(这里想起了老罗的TNT)硬件需求分析还可以明确硬件开发任务,大致有下列内容。
硬件整体系统的基本功能和主要性能指标
硬件分系统的基本功能和主要功能指标
功能模块的划分
关键技术的攻关
外购硬件的名称型号、生产单位、主要技术指标
主要仪器设备
国内外同类产品硬件技术介绍
可靠性、稳定性、电磁兼容讨论
电源、工艺结构设计
硬件测试方案
这里,再强调一点,关于需求变更,需求变更会涉及到方案的重新评估和新的人力投入,EE需要为自己争取时间,以免造成项目延期。
2.原理图设计
原理图设计中要有“拿来主义”,尽量复用公司已经验证过的线路,现在的芯片厂家一般都可以提供参考设计的原理图,所以要尽量的借助这些资源,在充分理解参考设计的基础上,做一些自己的发挥。当主要的芯片选定以后,最关键的外围设计包括了电源,时钟和芯片间的互连。
原理图要满足设计规范,最好有checklist,如下图我之前整理汇总的一小部分
3.Layout
PCB 设计中重要的信号线要非常严格遵守规则(Layout Guide),而对于低速和不重要的信号线就可以放在稍低的布线优先级上。重要的部分包括:电源的分割;时钟线,控制线和数据线的长度要求;高速差分线的布线等等。
如下图,是PCIe总线的布线要求
自我介绍:B站资深恰饭Up,双985通信专业毕业,擅长高速数字电路设计(X86/FPGA/ARM等)。不定期分享硬件电路设计干货,知识体系,有趣专业实验。包括但不仅限于学习方法、模电、FPGA、小信号、高速电路、信号完整性、Layout、嵌入式、学习方法。已帮助成千上万电子专业学生和初级工程师入门成长。技术交流群集合了众多经验丰富的技术大牛,交流氛围极佳。我的宝藏都在这了。
给硬件工程师的入门课-硬件开发流程相关推荐
- 给硬件工程师的入门课-电子工程师常用网站
自井中视星,所见不过数星-战国·尸佼 硬件工程师的入门和提高,除了项目上的磨砺,也需要自己的摄取和琢磨.然后经过自己的思考加工实践,成为自己内化的知识体系的一部分. 这里介绍几个我们这行可能常用的基本 ...
- 给硬件工程师的入门课-做硬件还有前途吗?聊聊一些机遇
正确的选择,或许比努力更重要. 先回答两个问题. 1.做硬件还有前途吗? 行业有没有前途,往往就看这个行业的普通人的状况就好了. 看只前10%的人没有意义,因为绝大多数人,都是普通人.在我看来,硬件这 ...
- 如何成为一个合格的硬件工程师,如何学习硬件设计?
如何成为一个合格的硬件工程师,如何学习硬件设计? 现在很多准备毕业的大学生或是毕业刚出来没多久的大学生,会发现自己从事的岗位所用的知识跟自己在学校学的东西很多都搭不上,在学校各种专业课各种优秀,但是到 ...
- 从硬件工程师转到纯软件开发,回顾那些岁月
1. 序 前段时间,我写了很多关于js的文章,分享的乐趣使我决定继续写下去.在接下来的时间,我计划也开始写关于Java的内容. 其实我很早以前就想写了,Java是我毕业后学的第一门语言,准确来说,如果 ...
- 三年硬件工程师薪水_关于“硬件工程师工资不高”的几个真相
原标题:关于"硬件工程师工资不高"的几个真相 你们认为,硬件工程师薪资不高,到底是什么导致的呢?网络上总是不乏"硬件不如软件吃香"."硬件干活多.待遇 ...
- 硬件工程师c语言编程,硬件工程师:单片机编程,我用C语言
首先解释一下什么是单片机. 单片机也被称为微控制器,英文为Microcontroler,它最早被用在工业控制领域."单片机由芯片内仅有CPU的专用处理器发展而来.最早的设计理念是通过将大量外 ...
- 嵌入式软件工程师和嵌入式硬件工程师有什么区别
什么是嵌入式硬件工程师 随着嵌入式技术的普及,硬件工程师的性质也有所改变.嵌入式硬件工程师与我们平常所说的硬件工程师不同.嵌入式硬件工程不但要求具备硬件工程师的基本技能,还必须完成部分软件工程师的工作 ...
- 硬件工程师前途到底怎样?看看大佬怎么说,看完跪了
点击上方"大鱼机器人",选择"置顶/星标公众号" 福利干货,第一时间送达 一位项目经理带着一名硬件工程师和一名软件工程师一同坐车去参加研讨会,结果汽车在半路抛锚 ...
- 硬件比软件难,那为什么硬件工程师待遇还不如软件?
大家好,我是张巧龙,今天看知乎,有一个很有意思的问题. 硬件明明比软件更难,国内的硬件技术也不如软件,为什么硬件工程师待遇还不如软件? 在这里分享几个回答,有一定的参考价值,欢迎留言讨论! 01 回 ...
最新文章
- Snagit9-12注册码
- SpringMVC 学习-异常处理 SimpleMappingExceptionResolver 类
- 实现全屏轮播,并且轮播div中的文字盒子一直自动垂直居中
- 分公司访问列表(ACL)
- php 自带sql防注入函数,php 最简单sql防注入函数与方法_PHP教程
- Java集合(六):专用集合和遗留类
- Maven打包时抛出should not point at files within the project directory …异常
- android 拼接参数,Android 多参数多文件同时上传
- java 反射 对象的方法_Java通过反射调用对象的方法
- 操作系统原理、实现与实践课后习题参考答案(已完结)
- NTSC、PAL、SECAM三大制式简介
- C语言int类型转换为char类型
- 12306网站专家:拟采取办法应对抢票软件
- js实现form的submit请求
- java语言相比于c,【多选题】Java 语言相比于C,C++的不同之处在于:( )
A. 不支持指针 B. Java...
- STM32F103 485通信开发实例
- 怎样用计算机计算度分秒的计算器,如何用计算器把角度换成度分秒??
- 红米k40和红米k40pro的区别 哪个好
- 卸载后依然无法安装签名不一致的APP
- 【Android】字体设置 Text font