论文部分内容阅读
FPGA的迅速发展,使得其在航天领域的应用越来越广泛,有关航天系统中FPGA方面的诸多研究也更加深入。FPGA的代价是衡量FPGA设计综合特性的重要指标,也是后期针对太空中FPGA器件防护方法选择的重要参考指标。但是,目前针对航天组件中FPGA设计代价问题的研究较少,严重阻碍了FPGA技术在航天领域的进一步发展。 为了解决获取FPGA工程总体代价的问题,本文系统的提出了一整套便捷、高效地获取FPGA工程代价的解决方案。给出了一种快速有效的FPGA模块划分及获取模块间拓扑关系的方法,创造性地构建出了基于模块的功耗、面积和速度模型,并且提出了一种基于模块代价指标求取工程总体代价的高效算法,对航天领域FPGA设计代价的评估与降低具有重要的意义。本文的主要工作如下: (1)提出了一种快速有效的基于FPGA工程的模块划分方案。通过分析VHDL语言的语法结构和特点,将对原工程复杂模块进行划分,这样就使得复杂模块的结构相对简单,一定程度上缓解了由于FPGA工程模块结构冗杂而导致的研究的效率低下问题。通过研究划分好的所有模块的VHD文件内容,找出模块间的内在联系,获取到模块间的拓扑关系,并对特定模块进行逻辑封装操作,为之后工程代价的求取做好准备。 (2)分别研究出了新型、有效的基于FPGA工程模块的功耗估算模型、面积估算模型和速度估算模型。对于功耗估算模型,它包括静态功耗和动态功耗两部分。借助XPE功耗估算表格采取样本数据,然后进行数据拟合得到的功耗模型,不仅将温度、电源电压、开关频率以及平均扇出对功耗的影响考虑进去,还重点考虑了资源的使用情况对功耗的影响。对于面积估算模型,它主要包括逻辑资源所占的面积和布线资源所占的面积两部分。通过分析模块的资源消耗,以及所消耗资源中LUT和BRAM的配置比特位的个数,得到了逻辑资源所占面积的计算模型,在此基础上根据布线资源与逻辑资源在面积中的相互关系,得到了布线资源的面积模型,最终得到了总的面积估算模型。对于速度估算模型,它是用来评估模块在特定芯片上所能达到的最大速度。借助ISE综合工具对VHD文件进行综合产生SYR文件,在该文件中查找到该模块的最小时钟周期,将最小时钟周期求倒得到理论上的最大速度值。最后,通过实际工程模块对所构建的模型进行了实验验证,结果表明所建模型都具有较高的准确性。 (3)提出了一种由模块的代价指标获取整个工程代价的高效算法。通过将封装后的所有叶子节点模块的功耗相加得到工程总功耗。大量实验获取工程面积与工程所有封装好的叶子节点模块的面积和之间的线性关系,得到工程面积的获取算法。将工程中所有封装好的叶子节点模块的最小速度作为工程速度。并在此基础上根据三项指标在代价中的重要程度设定各自的权重因子,并最终获取整个FPGA工程的确切代价值。此算法的准确性很高,并且实现过程较为简单。 (4)给出了程序自动化实现从模块划分到最终获取代价值的完整流程。通过一个具体的实际工程样例展示了完整实现过程,并且给出了每个过程的具体实现结果,体现出了程序实现具有很高的效率。 综上,本文给出了求取大型FPGA工程代价值的一套完整的方法,此方法不仅具有很高的效率,并且具有较高的准确性和工程实用性。最后,对本文所做的工作进行总结,并明确下一步工作方向和计划。