中国传动网 - 中国传动网,传动行业门户网站 !

商业资讯: 业界动态 | 政策法规 | 行业视点 | 人物专访 | 走进企业 | 展会新闻 | 传动知识 | 传动百科 | 招标信息

你现在的位置: 首页 > 商业资讯 > 业界动态 > 如何发挥FPGA设计的无限潜力

如何发挥FPGA设计的无限潜力

信息来源:chuandong.biz  时间:2010-06-11  浏览次数:96

  尽管FPGA为嵌入式设计带来了强大的功能与灵活性,但额外的开发流程也给设计工作增加了新的复杂性和限制问题。整合传统的硬件-FPGA-软件设计流程并充分利用FPGA的可再编程功能是我们的一个解决之道。
  随着FPGA技术逐步延伸至军事电子系统以及嵌入式电子产业的几乎全部领域,能发挥可编程逻辑优势的应用已经占据主流地位。通信、机载和控制系统尤其受益于FPGA的设计灵活性、现场重构和并行处理功能。同时,较短的设计周期和更加简化的验证过程则有助于加快应用投入现场的进程。
  尽管FPGA无所不在,但能真正全面发挥FPGA灵活设计潜力的应用却很少。之所以存在这种局限性,原因在于FPGA开发很大程度上只是简单地叠加,或者最多也只是连接于传统的软硬件工作流程上。这个孤立的FPGA开发阶段会导致整个设计流程的复杂性大幅上升——并最终限制软硬件领域可用的设计选择范围。
  为了简化整体设计工作,并丰富设计选项,硬件设计、软件开发和可编程硬件设计等独立的设计过程需集成在一起,以作为一个整体的任务进行处理。只有在基础层面上让所有设计进程都能共享统一的设计数据库和通用的设计环境,FPGA的可再编程性这一最主要的独特优势才能得到充分发挥,从而将FPGA设计推向前所未有的水平。全面发挥FPGA灵活性优势的关键在于了解其发展趋势及所面临的设计挑战,并掌握如何让包含FPGA系统中的三大设计方面(硬件、可编程硬件和软件)实现协调整合。
  FPGA从胶合逻辑向SoC方向发展
  FPGA刚进入嵌入式市场领域时,被认为是用于实施大量简单胶合逻辑的方便而有效的替代技术。在这种应用中,嵌入式硬件是主要软硬件设计的附属部分,其开发过程不涉及其他组件的设计流程,也不需要与这些流程进行交互。
  不过,现在的FPGA器件及其使用方式已经在海量数字逻辑便捷容器概念的基础上发生了重大变化。大容量FPGA现在能承载整个SoC设计,其中处理器、内存以及高速数据处理等核心功能元素都在可编程领域实施。在军用嵌入式系统中,由于受产量相对较低的影响,很难采用ASIC设计方案,而FPGA则为充分发挥SoC设计方案的物理简单性和可靠性等优势提供了一条经济高效的可行之道。
  相对于简单的胶合逻辑设计而言,SoC实施的一个重大不同点在于,软硬件开发现在基本上都是关联于、且依赖于FPGA设计。这是因为FPGA器件和支持外设是物理设计的中心与核心元素,而嵌入式应用软件也要装载在FPGA上发挥作用。因此,FPGA域的任何更改都会对软硬件域造成显著影响。
  受限制的创新
  如果将硬件、软件乃至当前的嵌入式硬件等设计的各个部分视作是彼此分开、互不关联的任务,则无论设计域之间如何相互依存,FPGA产品设计的常规开发流程采用的仍然是传统方案。
  某个设计域的变动往往会对其他域造成具有破坏性影响且耗时巨大的重新设计。也就是说,必须在设计阶段早期就做出(并且锁定)软硬件分区等重大决策,这与传统的非FPGA嵌入式设计别无二致。实际上,FPGA器件和外设硬件等物理硬件和随后的可编程硬件元素在有意义的软件开发之前都被依次一一锁定了。
  这些最初的决策决定了后续开发流程的参数和限制,因此设计的可选项会随着流程的逐步推进而越来越少。例如,选定的FPGA器件(和硬件外设)将定义包括确定采用哪种嵌入式IP等在内的性能上限,嵌入式硬件设计进而定义软件可用的功能。或者说,FPGA器件只能支持该器件厂商提供的软处理器,这进而也定义了应用软件可用的编程选择。
  此外,要想微调设计方案的性能,比如将软件算法转移到嵌入式硬件中、或者从嵌入式处理器转为硬连接的处理器、抑或是选择不同的FPGA类型等,都会导致对硬件、可编程硬件和软件等所有域进行大规模重新设计。对开发时间紧迫的军事/航空系统而言,这种重新设计对设计周期造成的中断影响极大,因此大多数工程师都会全力避免这种设计风险的发生。不过,高性能和设计稳定性同样至关重要,因此检查处理器选项并充分利用软算法的优势来替代硬算法也是必不可少的。
  重建一体化
  如前所述,简单地在现有的设计工作流程中添加FPGA开发流程难以充分发挥FPGA的全部优势。对于需要降低NRE成本、加快设计速度的应用而言,传统设计方法所带来的局限性会抵消这种优势;而这正是FPGA应当发挥最大作用的地方。
  恢复设计选择和全面发挥FPGA优势的第一步就是让硬件设计、软件开发和可编程硬件设计等统一起来。通过使用来自整体设计统一数据模型中的一体化设计系统和应用,设计域可随各域中设计的变化而实现交互和及时响应。在实践中,各个域采用的都是同一设计和组件库数据中的子集。由于更改可以方便地(甚至是自动地)反映在所有设计领域中,因而可以显著简化设计更改,如在软件与硬件之间进行功能转移,或探索其他器件等。
  例如,在统一设计数据池中,针对选定FPGA器件的设计数据和配置文件可同时适用于硬件和FPGA设计领域。如果FPGA器件或其引脚配置在FPGA设计阶段进行了更改,该信息会立即用于硬件设计的实施。这样,我们探索不同设计选择就能变得更加有效,而且硬件和FPGA设计域之间的引脚交换等高级设计功能也得以简化。
  充分利用可再编程性
  

    ——本信息真实性未经中国传动网证实,仅供您参考