论文部分内容阅读
相对ASIC而言,FPGA已经转变为系统的核心并且其市场份额持续增长。其基本原因在于两个方面。首先,由于ASIC开发成本不断上升,对许多市场而言,判断ASIC的开发成本是很困难的,这完全是因为不能满足投资回报率(ROI)。其次,目前FPGA的性能和密度水平满足了许多更高端应用的要求,同时低成本的FPGA满足了许多对成本敏感的应用。通过用性能和价格等吸引工程师,FPGA将进一步蚕食DSP的领域,特别是那些处理高速数据的多通道应用:每时钟周期数百浮点乘法,这比最快的DSP快数倍(纯硬件与纯软件实现进行比较)。这使得某些应用一旦可以被DSP处理,那么理论上最新FPGA所提供的功能也可以处理。
本论文对FPGA布线结构进行了研究,布线结构包括局部布线结构和全局布线结构两部分。采用数据统计的方法对局部布线结构中各个管脚的使用情况进行分析,根据分析结果安排局部布线结构的互连模式,并采用实验的方法分析互连模式的性能表现。采用实验的方法对多种MUX结构进行分析,选择二级多路复用器作为局部布线结构中的开关单元。全局布线结构研究包括缓冲开关设计以及输出管脚合并问题。在所分析的四种缓冲开关结构中,bufm具有最佳的面积优势和时序优势,特别对于高扇入的情况,输出管脚合并正是充分利用了bufm的这一特点。
本论文自主实现了一个完整的FPGA前端设计工具流程,其中包括FPGA集成开发环境、综合、网表转换、装箱、布局与布线、配置文件生成和FPGA下载。
本论文对FPGA设计工具的实现算法进行了优化。采用最大势匹配算法对逻辑映射算法进行了优化,最大限度地发挥了4输入2输出LUT结构的优势。提出了网络流规划和贪婪算法相结合的装箱算法,充分发挥了组合优化的最优值求解优势和贪婪算法的快速计算优势,提高了逻辑块的使用率。
针对FPGA自动化设计工具难以验证的问题,本论文提出了一种迭代性的形式化验证方法。详细介绍了这种验证方法的具体流程以及相关实现,包括迭代性的验证流程、增量验证模型、基准电路设计以及如何生成与Formality兼容的Verilog网表。相对于Xilinx的NetGen验证流程,本验证流程补充了对配置文件的验证。