许多工程师认为,只要定义了FPGA的功能,工作就算完成了。但实际上将FPGA插入PCB时也会面临一系列挑战。
对于许多工程师和项目经理来说,在FPGA中实现功能并实现时序收敛是主要目标,但实际上在印刷电路板上设计FPGA的硬件级工作也会出现很多有趣的挑战,只有解决了这些挑战才能实现成功设计。
一切的起点均在于架构。硬件开发第一步就是定义解决方案的架构。架构应该对应于系统要求,并具体明确它们如何在硬件中得到实现。虽然不同系统的架构各有差异,而且每个系统的具体应用也大相径庭,但很多系统均包含类似的架构模块。您能够同时也应该对经常需要的硬件模块进行重复利用,就好像您重利用常用的HDL模块一样。
图1和图2分别给出了整体架构和电源架构的实例,而两侧则列出了设计FPGA系统时通常需要考虑的问题。
器件选择您一开始面临最重要的选择就是在大量可用FPGA中找到最合适的。FPGA器件的选择涉及许多因素。首要因素就是该FPGA提供什么可用资源,是否足够用来以所需的工作频率实现您想要的功能。
根据这些参数,您可以很快将选择范围细化到有限数量的器件,这样您就能再进一步细化选择标准,找到适当的FPGA。另一个重要因素就是您系统可能需要的其它资源,比方说DSP slice或乘法器、嵌入式处理器或高速串行链路等。是否提供这些资源,可以进一步缩小器件选择的范围。在许多情况下,根据具体资源需求,您会进一步寻找器件的子系列,比方说如果需要逻辑或高速串行链路,则应选择赛灵思Spartan®-6 LX或Spartan-6 LXT。
此外,选择器件时您还应考虑工作环境。举例来说,是不是商业组件就够了,是否需要工业、医疗或汽车级的部件?某些情况下您的系统可能需要军用或航天级的组件。
此外,您还必须要考虑到配置架构问题。基于SRAM的FPGA能否满足应用需求?或者说赛灵思Spartan-3AN系列这样的非易失性解决方案是否更好一些?设计的安全性同样也是一大重要考虑因素。如果应用需要设计安全性,就应考虑避免读回并对数据流进行加密。
无论应用是进行量产或是作为一次性的定制航天设计,组件成本当然也始终是一个重要因素。您应制定目标成本预算,并努力确保在成本限度内完成任务。
上述许多参数在系统中其它器件的选择上也很重要。特别重要的一个标准就是选择的组件要能够在相同的电压轨上工作,这样就能简化电源架构。
您还应考虑在设计中是否有组件标准降低的问题。所有制造商的组件数据手册都给出了器件的最大额定值和最大工作电应力。如果我们选用的器件刚好在最大额定值以下的电应力工作,那么设计的可靠性就会大幅下降,因为系统一直是在推荐工作条件以外工作的。根据最终应用的不同,故障可能会导致各种后果,包括导致人员伤亡,破坏工作任务,公司质量声誉下挫等。为了生产出可靠的设备,您必须在设计中减少电应力。因此在选择应用器件时,您必须考虑到器件所承受的电应力。
电源架构
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)