读书频道 > 系统 > 其他综合 > 嵌入式系统设计与实践
3.2.3 用数据表评估元器件
2013-06-21 09:07:19     我来说两句 
收藏    我要投稿   

本文所属图书 > 嵌入式系统设计与实践

O’Reilly Media通过图书、杂志、在线服务、调查研究和会议等方式传播创新知识。自1978年开始,O’Reilly一直都是前沿发展的见证者和推动者。超级极客们正在开创着未来,而我们关注真正重要的技术趋势...  立即去当当网订购

在本节中讨论评估一个实现后的元器件,可能看起来有些奇怪。在项目中,通常不需要这么做。然而,在工程开发周期中却需要这么做。一般说来,在选取系统元器件之前,你必须首先从别人设计的系统中去学习如何实现一些部件。所以,与阅读数据表相比,评估元器件是一个高级技能,电气工程师要先于软件工程师掌握这个技能。

在评估元器件的时候,目标应该是尽可能快地剔除那些不能用的器件。例如,某个器件需要120V的交流电,而系统却只有5V的直流电,那么就没有必要把宝贵的时间浪费在准确地定义如何基于该器件去实现特征X。从一个必须具备的列表和一个期望的列表开始,在此基础上,就可以生成一个备选的元器件池,再对其做进一步的调查评估。

在没有更深入地进行这个调查评估之前,我们先来看看数据表上没有提到的东西。数据表通常不包含价格信息,因为价格依赖于多重因素,特别是计划订购量。数据表也不会说明交货期(所以,请小心设计完美器件,它可能要在等待6个月之后才可用)。除非在线订购,否则我们就必须和供应商或者经销商进行沟通。

这也是一个向他们询问是否有该器件的使用指南、初始化代码、应用说明、白皮书、论坛,或者任何可以让我们深入了解问题的好机会。供应商也意识到这些都可能是卖点,他们的应用工程师一般都乐意提供帮助。经销商也会帮助我们对不同的方案进行比较和对比。

注意: 即使是在与某个经销商沟通的过程中,Digikey(http://www.digikey.com)也常常是获取价格和交货期信息的非常有用的渠道。

再回到数据表,这一次那些被跳过的部分成为最重要的部分了。从最大额定值和电气特性开始(见图3-8)。如果它们与期望的标准不匹配,那么把数据表丢在一边。现在的目标是快速地浏览这些数据表。如果一个器件不能满足最基本的要求,记下哪些没有满足,然后继续往下看(保持记笔记是有用的,否则最终会重复地拒绝同一份数据表)。也可以对数据表按照超出标准的范围进行排序。如果最后发现没有任何数据表可以满足我们的标准,那么可以再去检查最接近的那个,看看是不是可以用它。

当基本电气特性和机械要求满足后,下一步就是考虑典型特性,以决定这个器件是否是所需要的。在规格要求上,我帮不了什么忙,因为这些依赖于具体的系统需求和具体的元器件。这里有一些通用的关于功能参数的问题:器件是否足够快?输出是满足还是超出具体的系统要求?对于一个传感器或者模数转换器,噪声是不是可以接受的?

当有一个或者两个数据表通过首轮筛选之后,就可以对它们进一步深入研究。如果有一个应用章节,那就是个不错的出发点。这些应用是不是和我们的系统比较接近?如果是,那么就继续;如果不是,那么就要稍微有点担心了。将一个外部器件第一次使用在特定的场合可能是可以的,但是,如果这个器件是特定地用于水下传感器网络的,而现在想把它用在超级智能烤面包机上,我们可能就会感到很奇怪,为什么把该应用定义得如此狭窄。更严重的是,总有个理由可以解释为什么建议的应用不能覆盖所有的使用情形。比如,特定用于汽车上的芯片,在数量较少时,可能没有办法获取。数据表的目的是为了将产品卖给那些使用类似器件的人,所以给出的使用范围比较有限是有理由的。

下一步,看看性能特征并决定它们是否满足要求。通常,在这部分会发现新的需求,比如,意识到系统需要在A部分有温度响应,在B部分有供电电压响应,在C部分需要有噪声阻抗等。将所有的这些需求整理为标准并将那些不满足要求的去掉(同样需要对标准进行排序,以免将自己陷入困境)。

此时,应该至少有两个但不超过四个数据表。如果有多于四个数据表,那么了解一下看看是不是某个供应商在你的采购部门有比较好的信誉、比较短的供货周期,或者比较优惠的价格。可能还会回来看看那些多出的供应商,但选出其中四个是个不错的做法。

如果将所有的数据表都剔除了,或者只剩下一个,那么不要就此停住。这并不是说所有的东西都是没有用的(或者只有一个有用)。而是说,我们定义的标准可能太严格了,需要对可选方案进一步研究。因此选择最好的两个器件,即使一个或者全部都不满足所有这些最挑剔的标准。

对于剩下的数据表,我们希望能找出对实现来说最棘手的部分以及看看这个器件是否能很好地应用于系统中。这就是类似器件使用经验起作用的地方。在读数据表的时候,就想象如何去实现相应的代码。事实上,如果你没有类似的使用经验,那么就可能要写代码以便将这一切变成现实。如果可以将这些器件和真实的硬件做成原型,那么非常好!如果不能,我们也可以做个心理原型,在心里演练一下那些实现步骤并预计会发生什么。

即使在针对2~4个器件做了以上的事情之后,也可能只使用其中一个,这也会在最终选择这个器件后能够非常快地开始代码工作。

这样一个深入分析的过程需要很多时间,但会排除掉器件可能不工作的风险。原型做到何种程度取决于不同的人(和具体的日程计划)。如果仍然面临多个选择,那么不妨看看这个系列的器件。如果有些东西不够用(如空间、引脚或者范围),那么在同一个系列中是不是有引脚到引脚(pin for pin)兼容的其他器件呢(理想情况是相同的软件接口)?这样留有一定的余地会容易很多。

最后,有了选定的器件后,特征总结部分就是一个练习比较文学的地方。既然已经阅读类似的器件好几份数据表,数据表的概述部分对我们来说就没有问题了。如果还有数据表需要评估,那么就从这里开始吧。将已经评估完和和待评估的进行对比,就对每个芯片可以做什么以及不同的参数如何相互作用(例如,速度可能与成本成正比)有一个快速的了解。

点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:3.2.2 对软件开发者比较重要的内容
下一篇:3.3 处理器是一门语言
相关文章
图文推荐
2.7.12 使用仿真器查
2.7.11 栈和寄存器组
2.7.8 出栈
2.7.7 压栈
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站