最高境界系列!成功的硬件电路设计心得

硬件设计就是根据产品经理的需求PRS(Product Requirement Specification),在COGS(Cost of Goods Sale)的要求下,利用目前业界成熟的芯片方案或者技术,在规定时间内完成符合PRS功能(Function),性能(Performance),电源设计(Power Supply), 功耗(Power Consumption),散热(Thermal/Cooling),噪音(Noise),信号完整性(Signal Integrity), 电磁辐射(EMC/EMI),安规(Safety),器件采购(Component Sourcing),可靠性(Reliability),可测试性(DFT: design for test),可生产性(DFM:design for manufacture)等要求的硬件产品(注意:是产品不是开发板)。

可以看到,一个成功的硬件设计,主要功能的实现只是所有环节中的一小部分,而且基本来说,主要功能的实现主要是依靠芯片厂商提供的套片方案,一般来说为了降低风险,主要是参考套片方案的参考设计完成,芯片厂商也会提供包括器件封装,参考设计,仿真模型,PCB参考等等全部资料,在芯片功能越来越复杂的今天,一个片子动不动就几百上千个PIN,对于一个新项目来说,是没有时间一页页去吃透每个PIN,每个输入输出的具体功能,电气参数的,尤其是对于高速设计,比如DDR3接口,XAUI接口等等。 一般来说芯片厂商提供的参考设计就是他们经过开发,验证,测试的最佳方案了,很多情况就是你必须按照参考设计来做,否则硬件可能就有问题,一般来说就是信号完整性问题或者EMC问题。

芯片厂商提供越来越周到的服务,看起来硬件工程师HW(Hardware Engineer)的价值越来越低了,毕竟一个产品的核心功能或者技术一般都在ASIC或者FPGA里面了,HW一般没有能力进行核心逻辑设计IC design, 毕竟这是跟HW设计并行的另一项工作,另一项也很复杂的工作。 对于这个问题,我也曾经困惑过,总是感觉硬件设计没有什么好搞的了,不就是抄抄参考设计,就跟组装一台电脑一样组装一个单板嘛。

当然随着项目经验的增多,尤其从事现在硬件系统级设计的角色,感觉原来自己考虑更多是从一名原理图设计工程师的角度考虑问题。 就像开始说的,一个成功的硬件设计,功能Function只是一小部分,至于其他的因素和能力,一个HW的能力取决于能考虑因素越多,越深入,就越是一个优秀的HW工程师。

1.成本Cost任何一个卖硬件产品的公司的主要盈利一般来说就是销售价格-COGS,而COGS90%取决于设计,剩下就是生产成本了,这个价格一般来说比较透明,代工厂也很多,竞争激烈。虽然说设计成本60%也取决于主要芯片的价格(这个主要要靠公司高层跟芯片厂商谈判的结果了,HW的作用有限,更多是系统工程师做决策用什么芯片能符合产品需求和软件功能需求),但是剩下的电阻,电容,电感,二极管,三极管,保护器件,接口器件,逻辑芯片,逻辑功能,小芯片,电源电路全都是HW做主了,当然有参考设计,不过一般来说参考设计为了更好体现芯片的良好性能,一般会选用比较贵的,性能更好的器件,这就要结合公司的器件库进行取舍了。 我的经验是多看看公司的同类产品设计,看看大家主流是用什么器件,毕竟对于元器件来说,价格跟购买量有很大关系,不同的采购量导致的价格可能相差几倍。
2.2信号完整性Signal Integrity主要影响两方面:EMC和时序Timing,不好的SI设计会有很强的过冲over/undershoot,尖峰Spike,这会造成对应频率N谐振频率的发射;不好的SI设计会导致High/low不稳定,或者上升时间/下降时间Rising Time/Falling Time占数据周期过长,或者时钟不稳定,都会导致在接收端采样Sample时出现误判断,实际上,接收端不会出错,出错的只是信号。 SI设计在原理图设计来说,主要从阻抗匹配(串行电阻)上来解决,辅以适当的退耦滤波电容;跟主要是在PCB上,一般来说PCB层数越多,SI会更好,当然这里要跟Cost 进行一个取舍了。
3.3电源设计Power Supply虽然一般大些的公司都有专门的电源设计工程师,不过对于HW来说,基本的Power设计能力还是很重要的,从道理上来说,任何电路都是一种电源,任何电路问题都可以归结于一种电源问题,只有对于电源电路理解深入了,才能对于电路板理解跟深入,尤其是对于模拟电路问题,才能想到用模拟电路来设计一些简单电路,而不是费力用逻辑电路来搭。
4.4安规Safety对于接口电路来说,主要成本都在与安规器件,这个接口究竟要抗多大的电压,电流打击?这就要好好考虑用什么器件了,fuse? PTC? TVS?高压电容?
5.5电磁兼容EMC/EMI主要是针对各个国家的相应规范(安规也是),对于各种可能产生辐射的信号都充分考虑好退耦,滤波,对于欧盟来说一般是EN55022/EN55024,对于美国一般是FCC Part 15, 欧盟和美国的辐射标准略有不同,欧盟的标准稍微严格一些。
6.6功耗(Power Consumption)现在都提倡环保,运营商也是,HW也必须考虑省电,比如用效率更高的电源电路,用PWM替代LDO,效率更高的转换拓扑。
7.7散热(Thermal/Cooling)芯片集成度越来越高,单芯片的功耗从几瓦到现在的几十瓦,散热就是一个大问题,而且伴随着接口的速率提高,接口芯片的功耗也在提高,造成整个系统就是:热!这就需要好好考虑散热问题,从PCB的布局,到散热片Heatsink的使用,到风扇的使用,都有很多考虑。
8.8噪音(Noise)风扇是散热最好的办法,但是带来的问题就是噪声,ITU对于通信设备的噪声也有明确的规范,这就需要平衡风扇数量,转速,风向,控制等因素。
9.9器件采购(Component Sourcing)HW选用的器件必须得是Sourcing部门能够采购到的,而且一般也要考虑second source的问题,和lead time的问题,不能说选用一个只有一个小公司生产的稀有器件,万一这个器件EoL了,你是怎么办?只能修改设计了,这就损失大了!
10.10可靠性(Reliability)整个系统MTBF的数值多少?风险最大的器件是什么?每个器件的工作Margin是百分之多少? 
11.11可测试性(DFT: design for test)/可生产性(DFM:design for manufacture)主要针对于工厂的考虑,必须考虑到方便工厂的生产测试,方便生产,如果你的测试很复杂,会大大降低生产线的产能和良率,进而影响供货以及生产成品。  对于参考设计,我感觉最有用的地方主要是供电电路,退耦滤波电路以及Layout设计,至于总线连接,复位电路,时钟电路,接口电路等等,一般来说都需要根据公司器件库,设计案例以及业界主流器件/方案进行修改。所以千万不要迷信参考电路,那只是参考,过分迷信参考设计,自己还没搞清楚芯片具体功能/参数呢,就COPY过来,即使能够工作,肯定在成本方面,生产方面有很多问题。

原文地址:https://blog.51cto.com/14355585/2413973

时间: 2024-08-07 12:41:36

最高境界系列!成功的硬件电路设计心得的相关文章

开始写Effective系列总结一些前端的心得

确实是没有时间整理以及总结和发表自己的感慨.难得中秋银行的事情搞完了自己清闲3天,是时候总结一下从大公司做.NET PC 端网站的开发到现在做移动互联网的银行及政府微信公众号的开发的感触.当时自己的选择现在公司做移动互联网的部门,移动互联网就是比较忙和累.你知道的. 主要是上传成功之后返回的文件信息有细微差异.返回的都是一个包含上传文件的信息的二维数组(文件信息在内层数组中),只不过基本上传返回的二维数组只包含一个元素,而批量上传返回的二维数组包含多个元素!进而影响将上传的文件信息保存到数据库中

智能车学习(十九)——硬件电路设计

一.摘要 在华南赛之后,重新对车子进行布局,设计车模结构之后,实测一切OK,匀速可以达到3米2的水平.(直道少,连续弯居多),但需要驱动主板集成 二.板子展览

ARM Cortex-M 系列 MCU 错误追踪库 心得

一. 感谢CmBacktrace开源项目,git项目网站:https://github.com/armink/CmBacktrace 二. 移植CmBacktrace 2.1 准备好CmBacktrace源码 2.2. 准备自己的项目源码 1. 如果没有自己的项目,可以使用CmBacktrace的demos项目作为自己的项目 2. 我的项目代码是用cuteMX生成的project for NUCLEO-G431RB 2.3. 需要移植的文件 2.3.1. cmb_fault.S 1. 此文件很重

硬件和软件兼容i2c协议的24Cxx系列EEPROM存储器(转)

源:硬件和软件兼容i2c协议的24Cxx系列EEPROM存储器 硬件上由于24c01的A0A1A2管脚不允许悬空,故暂时的想法是兼容24c02 ---24c16 使用一个dip8封装的芯片插座,A0 A1 A2管脚都悬空即可,换芯片方便 软件上24c02地址只有8位,而其他型号是大于8位的,故地址参数使用16位 256个字节作为一个大页,即largePage,测试芯片24c04空间有512字节 上代码,求测试和讨论 #include "MY51.H" //转载请注明:http://xo

痞子衡嵌入式:飞思卡尔i.MX RT系列微控制器启动篇(9)- 从Parallel NOR启动

大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔i.MX RT系列MCU的Parallel NOR启动. 上一篇讲i.MXRT从Raw NAND启动的文章 飞思卡尔i.MX RT系列微控制器启动篇(8)- 从Raw NAND启动 一经放出,深入广大网友喜爱,短时间内阅读量飙升,这让痞子衡深入鼓舞,所以趁热打铁继续把从Parallel NOR启动也顺便一起讲了,为什么说是顺便呢?因为Parallel NOR与Raw NAND都是并行接口,属于同一门派,且这两种外存设备在i.

痞子衡嵌入式:飞思卡尔i.MX RT系列微控制器启动篇(13)- 从Serial(1-bit SPI) EEPROM/NOR恢复启动

大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔i.MX RT系列MCU的Serial EEPROM/NOR恢复启动. 在前几篇里痞子衡介绍的Boot Device都属于主动启动的Primary Boot Device(Serial NOR/NAND, Parallel NOR/NAND, SD/eMMC),试想一下如果遇到这样的情况,你选择启动的某个Primary Boot Device正常工作一段时间后某次开机突然因为某种未知原因无法启动了,此时系统无法正常工作,但如

痞子衡嵌入式:恩智浦i.MX RTxxx系列MCU启动那些事(8)- 从Serial(1-bit SPI) NOR恢复启动

大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是恩智浦i.MX RTxxx系列MCU的1-bit SPI NOR恢复启动. 在前几篇里痞子衡介绍的Boot Device都属于主动启动的Master Boot Device(Serial(Multi-IO) NOR, SD/eMMC),试想一下如果遇到这样的情况,你选择启动的某个Master Boot Device正常工作一段时间后某次开机突然因为某种未知原因无法启动了,此时系统无法正常工作,但如果你希望系统能够有一定的容错/鲁棒能

[转]手把手硬件电路详细设计过程

献给那些刚开始或即将开始设计硬件电路的人. 时光飞逝,离俺最初画第一块电路已有3年.刚刚开始接触电路板的时候,与你一样,俺充满了疑惑同时又带着些兴奋.在网上许多关于硬件电路的经验.知识让人目不暇接.像信号完整性,EMI,PS设计准会把你搞晕.别急,一切要慢慢来. 1)总体思路.设计硬件电路,大的框架和架构要搞清楚,但要做到这一点还真不容易.有些大框架也许自己的老板.老师已经想好,自己只是把思路具体实现:但也有些要自己设计框架的,那就要搞清楚要实现什么功能,然后找找有否能实现同样或相似功能的参考电

基于FPGA 的简化UART 电路设计【转载】

0 引言 随着嵌入式系统的广泛推广和应用,UART ( Universal Asynchronous Receiver Transmiller )作为一种串行数据传输方式也得到广泛的使用.UART 允许在串行链路上进行全双工通信.串行外设到RS 232-C 异步串行接口一般采用专用的集成电路即UART 实现.常见的串行接口芯片如8250 .8251 .NS16450 等,能够实现比较全面的串行通信功能.而在实际应用中,我们往往并不需要如此完整的功能,从而会造成资源的浪费和成本的提高.随着EDA