硬件研发工程师通常负责硬件产品,一般是硬件设备的一部分的设计与开发,一般要求应聘者熟悉数字电路和模拟电路设计及相关的设计工具的使用,精通单片机,可编程逻辑器件的开发,精通汇编语言,对各种设备接口熟悉,有时还要求应聘者熟悉C/C++语言开发,熟悉移动设备的应用开发,精通嵌入式系统原理和开发。
硬件研发工程师一般是电子类相关专业,主干课程有电子科学与技术,计算机科学与技术,电路分析原理,电子线路,数字电路,算法与数据结构等等!
硬件编程有两个层次:一个是指令系统的设计,另一个是应用系统的设计。
不同的硬件有着不同的指令系统,如果要从事这方面的职业,还是需要在电子技术方面有扎实的基础,如果要做应用系统的设计(使用指令实现某些功能)比如单片机的应用程序设计,则需要对该硬件指令熟悉,再懂得一定的汇编基础。
![0ffeb83f3bae10a8cf2bbd39eb6c0ef3.png](https://i-blog.csdnimg.cn/blog_migrate/04022486601c0417603a8da36aedf6c4.jpeg)
一定程度上,通过高级语言控制硬件也算硬件编程,比如使用C语言编写驱动程序,虽然属于软件范畴,但仍然需要熟悉硬件及相关语言。
下面总结一下硬件开发的基本过程:
(1)主动了解各方面的需求,并综合起来;明确功能与设计的特点,如CPU处理能力,存储容量及速度,I/O端口的分配方案,接口要求,电平要求和特殊电路要求等。
(2)根据需求分析制定硬件总体设计方案,寻求关键器件及相关技术材料,技术途径和技术支持,充分考虑技术可行性,可靠性和成本控制,并对开发调试工具提出明确要求。
对于关键器件,可以去索取样品。
(3)总体方案确定后,开始进行软件和硬件的详细设计,包括绘制硬件原理图,软件功能框图和PCB设计,同时完成开发元件清单,还需要与软件设计者深入交流,以确定内存大小,内部结构,对外接口的数量以及类型。
(4)做好硬件背板后,对原理图实际中的各个功能单元进行焊接调试,必要修改原理图并做记录。
(5)软硬件系统联调。一般情况下,经过调试后,原理及硬件设计上有所调整,需要二次投板。
(6)可靠性,稳定性测试,然后通过验收,完成项目。
硬件工程师的基本技能如下:
(1)由需求分析至总体方案,详细设计的规划创造能力。
(2)熟练运用设计工具设计原理图和PCB板的能力。
(3)有数字和模拟电路基础,懂得常用的AD、DA接口电路设计。
(4)各种计算机接口的电气特性,如USB,RS232和CAN等。
(5)熟悉使用一套ECAD工具,熟悉电路仿真,验证。做电路板要懂得混合信号设计,EMC及高速电路设计方面的知识。
(6)了解各种可编程逻辑器件结构,懂得VHDL,Verilog之类的硬件描述语言,懂得可编程器件的实现算法。
(7)熟练运用单片机,DSP,PLD,FPGA进行软硬件开发,具备调试能力。
(8)熟练运用仿真工具,示波器,信号发生器,逻辑分析仪等具备调试的能力。
(9)具备常用电路的设计能力,如复位电路,常用滤波电路,功放电路,高速信号传输线的匹配电路等。
(10)具备设计文档的组织编写能力。
(11)具备故障定位,解决问题的能力。