1、不能相信“百度”
一些参考电路,我们往往通过百度搜索。但是百度到的内容,其实良莠不齐,很难辨别真伪。但是你不经过验证,或者,直接借用,导致的硬件错误,很可能导致你的电路改板,甚至导致长时间的问题攻关。
很多年轻的朋友习惯性的用百度直接搜索Datasheet,然后百度直接会引导到《百度文库》,而百度文库中有些datasheet翻译成中文,结果有些翻译不准确,甚至一些错误。如果你不辨真伪,直接参考,会后患无穷。
2、不能相信前人的设计
大家一般都喜欢用公司其他同事已经设计过的器件电路;如果我们选择某一款芯片,有同事设计过,那非常好,经过验证,我们心理也更有底;
但是,我们设计场景、工作环境、外围电路跟前人,很可能有比较大的差别。如果全盘照抄,一定会惹祸上身,带来后续不知道的麻烦。
例如:我们以前选择一款Netlogic(已经被Broadcom收购)的MIPS处理器,我们自己的产品使用的时候,碰到诸多问题,内存时序问题,Cache Error,焊盘开裂,等等一堆问题;而华为无线部门也选择这款器件,并且大规模出货,都没有类似的问题;后来分析,我们的整机的工作温度环境并没有无线部门的情况好,而且是很恶劣,把这颗器件很多边缘化的故障都测试出来了。
同样的设计、几乎一模一样的原理图、PCB,却会造成极大的差异现象。
所以我们在所设计的时候一定要考虑自己电路的工作环境和外围电路等。
3、不能完全相信FAE等厂家人员的表述,尤其是口述。
FAE是人,是人就会出错,就会记不清,就会传递信息偏差,就会不负责任,就会有水平的高低。
我们选择了一款ST的STM32F427,但是价格比较高,而且可供应性不好;所以我们很想切换为STM32F407。但是在项目的最早阶段,并没有做充足的评估,进度比较紧张的情况下,直接通过电话交流,咨询了两款芯片的差异。
考虑到担心主频不够,所以先选择427作为主芯片进行设计。
FAE表示,这两款器件除了主频不同,封装可以兼容,其他没有什么差异。
当我们切换的时候,发现:
1、主频不同,PLL设置差异。
2、内存少了64k(如果按照427设计,内存已经非常紧张;此时再想切换给软件带来非常大的麻烦。)
3、外挂一片SPI FLASH,好死不死在设计427选择接口SPI_5;结果,407把SPI_5给裁剪掉了。
在选型时,曾经跟原厂的Sales交流过,查询了STM32F427的价格:$6;但是实际上在真正量产的时候,发现这个价格根本买到这颗料。而且ST原厂并不对非代理的公司进行直接销售,只能干瞪眼,想杀人。
4、datasheet 可信了吧?
datasheet,也是人写的;刚刚已经说过了,是人做的,就有可能错误。但是基本是最可信的了。不过注意要看最新版本,而且要从官网下载。
但是,Datasheet也可能还有错误,所以我们要设计完成之前,检查datasheet的“勘误表”——errata。
5、datasheet+errata可信了吧?
也有些问题和错误,errata之外,也可能也有一些问题并没有被人发现过。我们曾经碰过一个案例,LSI的1064E,固件版本有一个BUG,其实是厂家已知的,但是由于设备厂家并没有出现类似的情况,所以LSI没有升级固件、也没有出errata。
直到我们出了这个问题,LSI才对华为发布新的版本。
好了,任何事情,都要相信自己。
作者: 朱晓明 来源:硬件十万个为什么