【硬件工程师话家常】认识硬件工程师-不为人知的多面手

一、什么是硬件工程师?

如果学的是电子想关专业,首先要明确倾向是做硬件还是软件,如果对编程有兴趣,对代码有兴趣,就建议去软件相关工作;如果对硬件实物感兴趣,就做硬件或者通信相关工作。

说了这么多,那么,什么是硬件工程师?

从事硬件设计相关工作的工程师,称之为“硬件工程师”。

二、硬件工程师的定位

硬件的范畴非常广,从技术角度可以分为嵌入式、射频天线、底层驱动、EMC安规、PCBlanout等。从应用角度又可以分为:消费类电子、汽车电子、工控电子、精密仪器等。研发类硬件工程师既要懂得技术、又要和各个环节的人员打交道、协调工作,所以,研发类岗位硬件工程师既要有丰富的知识面,又要有强大的协调沟通能力。

那硬件工程师该如何定位自己?如下:

∵产品由硬件、软件、机构组成。

∴硬件工程师串接硬件、软件、外壳机构、品质、工程、生产,从而形成批量产品。

∴硬件工程师是整个研发流程间的关键衔接

三、硬件工程师是做什么的?

大家普遍对硬件工程师的工作职责有不同的理解,有人认为硬件工程师就是测试的、做工艺的,也有人人为硬件工程师就是搞售后维修、出差做工程的,还有的认为硬件工程师就是画板子。其实硬件工程师的范畴比较广。简单说来,硬件工程师的职责就是根据用户的需求,提出技术方案、设计技术原理,并最终拿出可测试的样品,并能改进测试过程中出现的问题,最终交出可量产的产品。

对于一些小公司,可能为了节省人员成本,硬件工程师一人干了很多事情,如产品测试、售后维修、现场问题解决等。而且在小公司硬件和编程都是在一起的;在大公司,硬件设计和程序设计都是分开的,各个环节都有人配合,研发效率提高很多。

总的来说,硬件工程师就是一个多面手。我的理解如下:

1、宏观层面:提供一个硬件载体,也就是眼睛能够看到的实物。

2、微观层面:

1)依据客户规格,评估规格可实现性

2)依据筛选出的规格,评估设计方案,包括软件、硬件、机构、交期(制板、SMT、BOM元器件)

3)依据方案,确立电路功能模块

4)依据功能模块确定元器件

5)综合上面4个步骤,绘制电路设计原理图(功耗、噪声、EMI、EMS、PI、SI、安规、可靠性)

6)原理图Layout处理,并制板、SMT(噪声、EMI、EMS、PI、SI、安规、可靠性、可生产性)

7)调试硬件电路

8)和软件工程师一起联合,软硬件调试,软件工程师给硬件载体注入灵魂

9)和机构工程师一起确立外壳(散热通风:导热硅胶、散热片、风扇、连接器等)

10)电路和外壳的组装成为产品,总体测试

11)小批量试产

12)大批量试产

四、硬件工程师的分级

硬件工程师根据经验和技术水平一般分为:初级硬件工程师、中级硬件工程师、高级硬件工程师、资深专家级硬件工程师等,每个层级的要求不一样。

初级硬件工程师:能在别人的指导下完成设计工作,主要针对应届毕业生;

中级硬件工程师:能独立完成产品的硬件设计,毕业1-3年可以实现;

高级硬件工程师:能主导产品的设计,并能带领团队解决技术难题;

资深硬件工程师:能规划产品、制定产品的发展方向、制定技术路线。

  • 13
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在某网站上看到的某大神的经验之谈,特此分享给各位,你还在等什么,抓起青春的尾巴,向着自己目标迈进吧 一段 你刚开始进入这行,对PMOS/NMOS/BJT什么的只不过有个大概的了解,各种器件的特性你也不太清楚,具体设计成什么样的电路你也没什么主意,你的电路图主要看国内杂志上的文章,或者按照教科书上现成的电路,你总觉得他们说得都有道理。你做的电路主要是小规模的模块,做点差分运放,或者带隙基准的仿真什么的你就计算着发文章,生怕到时候论文凑不够。总的来说,基本上看见运放还是发怵。你觉得spice是一个非常难以使用而且古怪的东西。 二段 你开始知道什么叫电路设计,天天捧着本教科书在草稿纸上狂算一气。你也经常开始提起一些技术参数,Vdsat、lamda、early voltage、GWB、ft之类的。总觉得有时候电路和手算得差不多,有时候又觉得差别挺大。你也开始关心电压,温度和工艺的变化。例如低电压、低功耗系统什么的。或者是超高速高精度的什么东东,时不时也来上两句。你设计电路时开始计划着要去tape out,虽然tape out看起来还是挺遥远的。这个阶段中,你觉得spice很强大,但经常会因为AC仿真结果不对而大伤脑筋。 三段 你已经和PVT斗争了一段时间了,但总的来说基本上还是没有几次成功的设计经验。你觉得要设计出真正能用的电路真的很难,你急着想建立自己的信心,可你不知道该怎么办。你开始阅读一些JSSC或者博士论文什么的,可你觉得他们说的是一回事,真正的芯片或者又不是那么回事。你觉得Vdsat什么的指标实在不够精确,仿真器的缺省设置也不够满足你的要求,于是你试着仿真器调整参数,或者试着换一换仿真器,但是可它们给出的结果仍然是有时准有时不准。你上论坛,希望得到高手的指导。可他们也是语焉不详,说得东西有时对有时不对。这个阶段中,你觉得spice虽然很好,但是帮助手册写的太不清楚了。 四段 你有过比较重大的流片失败经历了。你知道要做好一个电路,需要精益求精,需要战战兢兢的仔细检查每一个细节。你发现在设计过程中有很多不曾设想过的问题,想要做好电路需要完整的把握每一个方面。于是你开始系统地重新学习在大学毕业时已经卖掉的课本。你把能能找到的相关资料都仔细的看了一遍,希望能从中找到一些更有启发性的想法。你已经清楚地知道了你需要达到的电路指标和性能,你也知道了电路设计本质上是需要做很多合理的折中。可你搞不清这个“合理” 是怎么确定的,不同指标之间的折中如何选择才好。你觉得要设计出一个适当的能够正常工作的电路真的太难了,你不相信在这个世界上有人可以做到他们宣称的那么好,因为聪明如你都觉得面对如此纷杂的选择束手无策,他们怎么可能做得到?这个阶段中,你觉得spice功能还是太有限了,而且经常对着"time step too small"的出错信息发呆,偶尔情况下你还会创造出巨大的仿真文件让所有人和电脑崩溃。 五段 你觉得很多竞争对手的东西不过如此而已。你开始有一套比较熟悉的设计方法。但是你不知道如何更加优化你手头的工具。你已经使用过一些别人编好的脚本语言,但经常碰到很多问题的时候不能想起来用awk或者perl搞定。你开始大量的占用服务器的仿真时间,你相信经过大量的仿真,你可以清楚地把你设计的模块调整到合适的样子。有时候你觉得做电路设计简直是太无聊了,实在不行的话,你在考虑是不是该放弃了。这个阶段中,你觉得spice好是好,但是比起 fast spice系列的仿真器来,还是差远了;你开始不相信AC仿真,取而代之的是大量的transient仿真。 六段 你开始明白在这个世界中只有最合适的设计,没有最好的设计。你开始有一套真正属于自己的设计方法,你会倾向于某一种或两种仿真工具,并能够熟练的使用他们评价你的设计。你开始在设计中考虑PVT的变化,你知道一个电路从开始到现在的演化过程,并能够针对不同的应用对他们进行裁减。你开始关注功耗和面积,你tape out的芯片开始有一些能够满足产品要求了。但是有时候你还是不能完全理解一些复杂系统的设计方法,并且犯下一些愚蠢的错误并导致灾难性后果。你开始阅读 JSSC时不只是挑一两片文章看看,或许把JSSC作为厕所读物对你来说是一个不错的选择。在这个阶段中,你觉得spice是一个很伟大的工具,你知道如何在spice中对精度和速度做合理的仿真,并随时做出最合适的选择。 七段 你开始真正理解模拟电路设计的本质,无论对于高精度系统还是高速度系统都有自己独有的看法和经验。你可以在系统级对不同的模块指标进行折中以换取最好的性能。你会了解一个潜在的市场并开始自己的产品定义,并且你知道只要方法正确,你设计出的产品会具有很好的竞争力。你可以从容的从头到脚进行整个电路的功能和指标划分,你了解里面的每一个技术细节和他们的折中会对于你的产
智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯
作为嵌入式工程师,面对各种问题是家常便饭。以下是一些常见问题以及解决方法: 1. 系统崩溃或死机 可能原因: - 软件错误,例如指针越界、内存泄漏等 - 硬件故障,例如电源问题、信号问题等 - 软硬件不匹配,例如驱动程序与硬件不兼容等 解决方法: - 使用调试工具,例如GDB、JTAG等,定位问题所在,并进行修正 - 分析崩溃信息,例如打印日志、生成内存转储等,找出错误原因 - 如果是硬件问题,需要进行硬件排查和修复 2. 性能问题 可能原因: - 程序设计不合理,例如算法效率低下、数据结构不当等 - 系统配置不合理,例如占用资源过多、任务调度策略不当等 解决方法: - 重新设计程序,优化算法、数据结构等 - 调整系统配置,例如调整任务优先级、优化资源使用等 3. 编译问题 可能原因: - 编译器版本不兼容 - 编译选项设置错误 - 代码中存在语法错误或语义错误 解决方法: - 更新编译器版本 - 检查编译选项是否正确 - 使用调试工具,查找代码中的错误 4. 硬件调试问题 可能原因: - 电路设计问题,例如电源不稳定、信号干扰等 - PCB设计问题,例如走线不当、接口不匹配等 - 其他硬件故障,例如元器件损坏、焊接问题等 解决方法: - 检查电路设计是否合理,例如是否存在电源冲突、信号干扰等 - 检查PCB设计是否合理,例如是否存在走线不当、接口不匹配等 - 使用仪器进行硬件排查,例如万用表、示波器等 总之,嵌入式工程师需要具备良好的问题分析和解决能力,同时熟练掌握调试工具和技巧。在实践中不断积累经验,才能更好地应对各种问题。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值