我的理解:硬件设计就是根据产品经理的需求PRS(ProductRequirementSpecification),在COGS(CostofGoodsSale)的要求下,利用目前业界成熟的芯片方案或者技术,在规定时间内完成符合PRS功能(Function),性能(Performance),电源设计(PowerSupply),功耗(PowerConsumption),散热(Thermal/Cooling),噪音(Noise),信号完整性(SignalIntegrity),电磁辐射(EMC/EMI),安规(Safety),器件采购(ComponentSourcing),可靠性(Reliability),可测试性(DFT:designfortest),可生产性(DFM:designformanufacture)等要求的硬件产品(注意:是产品不是开发板)。
可以看到,一个成功的硬件设计,主要功能的实现只是所有环节中的一小部分,而且基本来说,主要功能的实现主要是依靠芯片厂商提供的套片方案,一般来说为了降低风险,主要是参考套片方案的参考设计完成,芯片厂商也会提供包括器件封装,参考设计,仿真模型,PCB参考等等全部资料,在芯片功能越来越复杂的今天,一个片子动不动就几百上千个PIN,对于一个新项目来说,是没有时间一页页去吃透每个PIN,每个输入输出的具体功能,电气参数的,尤其是对于高速设计,比如DDR3接口,XAUI接口等等。一般来说芯片厂商提供的参考设计就是他们经过开发,验证,测试的最佳方案了,很多情况就是你必须按照参考设计来做,否则硬件可能就有问题,一般来说就是信号完整性问题或者EMC问题。
芯片厂商提供越来越周到的服务,看起来硬件工程师HW(HardwareEngineer)的价值越来越低了,毕竟一个产品的核心功能或者技术一般都在ASIC或者FPGA里面了,HW一般没有能力进行核心逻辑设计ICdesign,毕竟这是跟HW设计并行的另一项工作,另一项也很复杂的工作。对于这个问题,我也曾经困惑过,总是感觉硬件设计没有什么好搞的了,不就是抄抄参考设计,就跟组装一台电脑一样组装一个单板嘛。当然随着项目经验的增多,尤其从事现在硬件系统级设计的角色,感觉原来自己考虑更多是从一名原理图设计工程师的角度考虑问题。就像开始说的,一个成功的硬件设计,功能Function只是一小部分,至于其他的因素和能力,一个HW的能力取决于能考虑因素越多,越深入,就越是一个优秀的HW工程师。
1、成本Cost:
任何一个卖硬件产品的公司的主要盈利一般来说就是销售价格-COGS,而COGS90%取决于设计,剩下就是生产成本了,这个价格一般来说比较透明,代工厂也很多,竞争激烈。虽然说设计成本60%也取决于主要芯片的价格(这个主要要靠公司高层跟芯片厂商谈判的结果了,HW的作用有限,更多是系统工程师做决策用什么芯片能符合产品需求和软件功能需求),但是剩下的电阻,电容,电感,二极管,三极管,保护器件,接口器件,逻辑芯片,逻辑功能,小芯片,电源电路全都是HW做主了,当然有参考设计,不过一般来说参考设计为了更好体现芯片的良好性能,一般会选用比较贵的,性能更好的器件,这就要结合公司的器件库进行取舍了。我的经验是多看看公司的同类产品设计,看看大家主流是用什么器件,毕竟对于元器件来说,价格跟购买量有很大关系,不同的采购量导致的价格可能相差几倍。
2、信号完整性SignalIntegrity:
主要影响两方面:EMC和时序Timing,不好的SI设计会有很强的过冲over/undershoot,尖峰Spike,这会造成对应频率N谐振频率的发射;不好的SI设计会导致High/low不稳定,或者上升时间/下降时间RisingTime/FallingTime占数据周期过长,或者时钟不稳定,都会导致在接收端采样Sample时出现误判断,实际上,接收端不会出错,出错的只是信号。SI设计在原理图设计来说,主要从阻抗匹配(串行电阻)上来解决,辅以适当的退耦滤波电容;跟主要是在PCB上,一般来说PCB层数越多,SI会更好,当然这里要跟Cost进行一个取舍了。
3、电源设计PowerSupply:
虽然一般大些的公司都有专门的电源设计工程师,不过对于HW来说,基本的Power设计能力还是很重要的,从道理上来说,任何电路都是一种电源,任何电路问题都可以归结于一种电源问题,只有对于电源电路理解深入了,才能对于电路板理解跟深入,尤其是对于模拟电路问题,才能想到用模拟电路来设计一些简单电路,而不是费力用逻辑电路来搭。
4、安规Safety:
对于接口电路来说,主要成本都在与安规器件,这个接口究竟要抗多大的电压,电流打击?这就要好好考虑用什么器件了,fuse?PTC?TVS?高压电容?
5、电磁兼容EMC/EMI:
主要是针对各个国家的相应规范(安规也是),对于各种可能产生辐射的信号都充分考虑好退耦,滤波,对于欧盟来说一般是EN55022/EN55024,对于美国一般是FCCPart15,欧盟和美国的辐射标准略有不同,欧盟的标准稍微严格一些。
6、功耗(PowerConsumption):
现在都提倡环保,运营商也是,HW也必须考虑省电,比如用效率更高的电源电路,用PWM替代LDO,效率更高的转换拓扑。
7、散热(Thermal/Cooling):
芯片集成度越来越高,单芯片的功耗从几瓦到现在的几十瓦,散热就是一个大问题,而且伴随着接口的速率提高,接口芯片的功耗也在提高,造成整个系统就是:热!这就需要好好考虑散热问题,从PCB的布局,到散热片Heatsink的使用,到风扇的使用,都有很多考虑。
8、噪音(Noise):
风扇是散热最好的办法,但是带来的问题就是噪声,ITU对于通信设备的噪声也有明确的规范,这就需要平衡风扇数量,转速,风向,控制等因素。
9、器件采购(ComponentSourcing):
HW选用的器件必须得是Sourcing部门能够采购到的,而且一般也要考虑secondsource的问题,和leadtime的问题,不能说选用一个只有一个小公司生产的稀有器件,万一这个器件EoL了,你是怎么办?只能修改设计了,这就损失大了!
10、可靠性(Reliability):
整个系统MTBF的数值多少?风险最大的器件是什么?每个器件的工作Margin是百分之多少?
11、可测试性(DFT:designfortest)/可生产性(DFM:designformanufacture):
主要针对于工厂的考虑,必须考虑到方便工厂的生产测试,方便生产,如果你的测试很复杂,会大大降低生产线的产能和良率,进而影响供货以及生产成品。
对于参考设计,我感觉最有用的地方主要是供电电路,退耦滤波电路以及Layout设计,至于总线连接,复位电路,时钟电路,接口电路等等,一般来说都需要根据公司器件库,设计案例以及业界主流器件/方案进行修改。所以千万不要迷信参考电路,那只是参考,过分迷信参考设计,自己还没搞清楚芯片具体功能/参数呢,就COPY过来,即使能够工作,肯定在成本方面,生产方面有很多问题。