background image

硬件工程师必看

---必杀技学习

1 充分了解各方的设计需求,确定合适的解决方案

启动一个硬件开发项目,原始的推动力会来自于很多方面,比如市场的需要,基于整个系
统架构的需要,应用软件部门的功能实现需要,提高系统某方面能力的需要等等,所以作
为一个硬件系统的设计者,要主动的去了解各个方面的需求,并且综合起来,提出最合适

的硬件解决方案。比如

A 项目的原始推动力来自于公司内部的一个高层软件小组,他们在

实际当中发现原有的处理器板

IP 转发能力不能满足要求,从而对于系统的配置和使用都会

造成很大的不便,所以他们提出了对新硬件的需求。根据这个目标,硬件方案中就针对性
的选用了两个高性能网络处理器,然后还需要深入的和软件设计者交流,以确定内存大小,
内部结构,对外接口和调试接口的数量及类型等等细节,比如软件人员喜欢将控制信令通
路和数据通路完全分开来,这样在确定内部数据走向的时候要慎重考虑。项目开始之初是
需要召开很多的讨论会议的,应该尽量邀请所有相关部门来参与,好处有三个,第一可以
充分了解大家的需要,以免在系统设计上遗漏重要的功能,第二是可以让各个部门了解这
个项目的情况,提早做好时间和人员上协作的准备,第三是从感情方面讲,在设计之初各
个部门就参与了进来,这个项目就变成了大家共同的一个心血结晶,会得到大家的呵护和

良好合作,对完成工作是很有帮助的。

2 原理图设计中要注意的问题

原理图设计中要有 拿来主义 ,现在的芯片厂家一般都可以提供参考设计的原理图,所以
要尽量的借助这些资源,在充分理解参考设计的基础上,做一些自己的发挥。当主要的芯

片选定以后,最关键的外围设计包括了电源,时钟和芯片间的互连。

电源是保证硬件系统正常工作的基础,设计中要详细的分析:系统能够提供的电源输入;
单板需要产生的电源输出;各个电源需要提供的电流大小;电源电路效率;各个电源能够

允许的波动范围;整个电源系统需要的上电顺序等等。比如

A 项目中的网络处理器需要

1.25V 作为核心电压,要求精度在+5%- -3%之间,电流需要 12A 左右,根据这些要求,

设计中采用

5V 的电源输入,利用 Linear 的开关电源控制器和 IR 的 MOSFET 搭建了合适

的电源供应电路,精度要求决定了输出电容的

ESR 选择,并且为防止电流过大造成的电压

跌落,加入了远端反馈的功能。

时钟电路的实现要考虑到目标电路的抖动等要求,

A 项目中用到了 GE 的 PHY 器件,刚开

始的时候使用一个内部带锁相环的零延时时钟分配芯片提供

100MHz 时钟,结果 GE 链路

上出现了丢包,后来换成简单的时钟

Buffer 器件就解决了丢包问题,分析起来就是内部的

锁相环引入了抖动。

芯片之间的互连要保证数据的无误传输,在这方面,高速的差分信号线具有速率高,好布

线,信号完整性好等特点,

A 项目中的多芯片间互连均采用了高速差分信号线,在调试和

测试中没有出现问题。

3 PCB 设计中要注意的问题

PCB 设计中要做到目的明确,对于重要的信号线要非常严格的要求布线的长度和处理地环

路,而对于低速和不重要的信号线就可以放在稍低的布线优先级上。重要的部分包括:电

源的分割;内存的时钟线,控制线和数据线的长度要求;高速差分线的布线等等。

A 项目中使用内存芯片实现了 1G 大小的 DDR memory,针对这个部分的布线是非常关

键的,要考虑到控制线和地址线的拓扑分布,数据线和时钟线的长度差别控制等方面,在
实现的过程中,根据芯片的数据手册和实际的工作频率可以得出具体的布线规则要求,比

如同一组内的数据线长度相差不能超过多少个

mil,每个通路之间的长度相差不能超过多

少个

mil 等等。当这些要求确定后就可以明确要求 PCB 设计人员来实现了,如果设计中所