完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1 个讨论
|
|
作者:不懂不问
链接:https://www.zhihu.com/question/20022319/answer/2485300537 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 1 什么是硬件?硬件(英文名Hardware)是计算机硬件的简称,是指计算机系统中由电子,机械和光电元件等组成的各种物理装置的总称。这些物理装置按系统结构的要求构成一个有机整体为计算机软件运行提供物质基础。软件代码也是人编写的,我们所熟知的语言比如C、C++等都是通过编译器翻译成汇编语言,然后汇编语言通过汇编器翻译成二进制机器语言,机器语言操控门电路完成相应的动作。个人觉得,没有硬件,软件就没有存在的意义,硬件是一切的基础,这里可以看出硬件设计是多重要。但软件和硬件又有明显的区分,至少工作内容区别很大。按照行业内描述硬件属于底层(一般称为底层硬件),软件称为上层(软件又分为:底层驱动、上层业务以及应用层等)。如果非要举个例子来说明软件和硬件, 那最好的例子就是人,硬件指人的躯体,而软件指人的思维。2 什么是硬件设计?一般来说硬件设计指的是电路设计,这样说是没问题的,因为你所有的工作都是围绕电路设计,最终的目标也是产出一个优秀的电路,能够满足各种要求,经历各种考验。但实际上我们要求的是产品,而不是单板。网上有一篇文章讲的挺好:"硬件设计就是根据产品经理的需求PRS(Product Requirement Specification),在COGS(Cost of Goods Sale)的要求下,利用目前业界成熟的芯片方案或者技术,在规定时间内完成符合: ☑ PRS功能(Function) ☑ 性能(perrformance) ☑ 电源设计(power Supply) ☑ 功耗(power Consumption) ☑ 散热(Thermal/Cooling) ☑ 噪音(Noise) ☑ 信号完整性(Signal Integrity), ☑ 电磁辐射(EMC/EMI) ☑ 安规(Safet) ☑ 器件采购(Component Sourcing) ☑ 可靠性(Reliability) ☑ 可测试性(DFT: design for test) ☑ 可生产性(DFM:design for manufacture)等上述要求的硬件产品(注意:是产品不是开发板)。可以看到,一个成功的硬件设计,主要功能的实现只是所有环节中的一小部分。刚开始工作的时候,觉得板子电路设计完就完成了50%工作,PCB回板主要功能都能实现了,那就完成了80%的工作。实际上不是的,PCB回板主要功能都实现了,连30%工作都没有。所以不管是时间上,还是阶段上,产品的硬件设计是一个漫长过程。而且你在一个公司做产品硬件设计,一般情况下都是参考成熟的方案,主芯片CPU主要功能的实现最终还是依靠芯片厂商提供的套片方案。一般来说为了降低风险,主要是参考套片方案的参考设计完成,芯片厂商也会提供包括器件封装,参考设计,仿真模型,PCB参考等等全部资料,在芯片功能越来越复杂的今天,一个片子动不动就几百上千个PIN,对于一个新项目来说,是没有时间一页页去吃透每个PIN,每个输入输出的具体功能,电气参数的,尤其是对于高速设计,比如DDR3接口,XAUI接口等等。一般来说芯片厂商提供的参考设计就是他们经过开发,验证,测试的最佳方案了,很多情况就是你必须按照参考设计来做,否则硬件可能就有问题,一般来说就是信号完整性问题或者EMC问题。"那有的人就说了,硬件电路设计谈不上设计,都是copy成熟电路。芯片厂商提供越来越周到的服务,再加上公司沉淀的技术积累,硬件设计工程师可以完全不动脑子进行电路设计。看起来硬件工程师HWE(Hardware Engineer)的价值越来越低了,毕竟一个产品的核心功能或者技术一般都在IC或者FPGA里面了,HWE一般没有能力进行核心逻辑设计IC design。那如果按照这个逻辑软件设计也谈不上设计,都是copy成熟代码。试问有几个软件开发人员不移植别人的代码?再深入点,有几个软件工程师能随意更改uboot、kernel,不百度C语言语法,不移植业务程序,不去问芯片厂商的技术支持? 即使都是成熟的东西,实际上工作过程中我并没有发现哪个项目做得很快,同样一套电路和代码,成熟产品没问题,新产品为什么就有问题?最后还是是硬件设计去解决。对于这上述问题,我也曾经困惑过,总是感觉硬件设计没有什么好搞的了,不就是抄抄参考设计,就跟组装一台电脑一样组装一个单板嘛。当然随着项目经验的增多,尤其从事现在硬件系统级设计的角色,感觉原来自己考虑更多是从一名原理图设计工程师的角度考虑问题,看问题总是很片面。就像开始说的,一个成功的硬件设计,功能Function只是一小部分,至于其他的因素和能力,一个HWE的能力取决于能考虑因素越多,越深入,就越是一个优秀的HWE工程师。所以HWE是吃经验的,对公司来说培养一个HWE成本很高,硬件不会像软件一样代码错了修改一下几分钟就可以搞定,硬件设计错了,那有可能全部都要重来,整个项目周期可能就要延迟3周甚至一个月以上。比如最近遇到的SENSOR出图像,效果不好,亮坏点比较多,硬件电路这边没法跳线,这和布局布线有关,只有改板。有个观点需要说明一下,啥都不懂也可以做出事情,但对个人来说会有发展天花板。硬件方面就像参考电路一样,你不知道电路怎么工作的也能把他用起来,软件方面就像uboot和kernel一样你看不懂也能用起来,但一旦你懂,那就不一样了。就像一谈到硬件设计,大家都认为是电路设计,好简单,没什么难度,但实际上不是的,越到底层越难,责任越大,部门交流越多。懂得越多,学的越容易,就能够走的越远。3 什么是硬件电路设计?顾名思义,硬件电路设计就是设计电路的,能够熟练使用cadence绘制电路与查看PCB。硬件设计中的电路设计是HWE最重要的职责。电路设计考验的是HWE的设计基本功,即对一些硬件器件的理解以及灵活应用,比如: ☑ CPU ☑ 电阻,电容,电感, ☑ 二极管,三极管, ☑ 保护器件,接口器件, ☑ 逻辑芯片,逻辑功能, ☑ 小芯片 ☑ 电源因为本人是EMC专业毕业,所以对设计时考虑的东西深有感触,我们上述讨论的硬件设计的13条东西都应该在设计时候考虑,目前大公司的各种流程保证了设计时各部门的联动,还是很好的。每个公司都会有自己的硬件电路设计规范,这个需要自己好好去看一下,并用在实践中。硬件电路设计主要针对电路设计,里面涉及的东西比较多,对电路模块的设计后面会有单独的章节讨论。硬件电路设计需要足够的经验与理论知识。4 硬件设计开发流程硬件部门开发流程指定后,需要硬件部门人员严格按照开发流程完成开发工作。硬件部开发流程主要分为如下几个步骤:1) 市场调研 对即将进行的项目,需要进行市场调研。 2) 立项 市场调研完成后后,首先需要进行立项工作。3) 硬件总体设计 项目立项后,需要进行硬件总体设计。4) 核心器件的实验及分模块的详细设计 总体设计完成后,需要对核心器件进行实验并且开始进行分模块的设计方案。5) 电路、程序及外壳设计 核心器件的实验及分模块的详细设计完成后,进行电路、程序及外壳设计。电路、程序及外壳设计按照项目设。6) 系统联调 每个分块部分调试完成后,即可进行系统联调。7) 内部审核、项目验收 系统联调完成后,项目即可进行内部审核、项目验收。5 什么是硬件工程师? 硬件工程师负责整个产品的硬件设计。硬件工程师的职责 |
|
|
|
|
|
你正在撰写讨论
如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。
38 浏览 0 评论
1834 浏览 1 评论
反激电源模块输出电压稳定,但输出电流不稳定,从0跳变到1A,这是怎么回事?
1903 浏览 1 评论
1358 浏览 0 评论
1207 浏览 1 评论
浏览过的版块 |
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-4 03:21 , Processed in 0.532529 second(s), Total 40, Slave 31 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号