论文部分内容阅读
FDTD算法是计算电磁场的一种非常有效的算法。相对于其他算法来说,他算法简单,精度高,是目前使用比较多的数值模拟方法之一。目前很多方面都有他的应用,比如雷达散射截面计算,辐射天线分析,微波器件和导行波结构的研究。由于他计算量非常大,空间尺度上增大一倍,计算量就要增大八倍,因此,如何高速的计算是FDTD算法不可忽视的问题。相对于通常使用的电脑,由于通用性,计算速率不是很理想,稍微大一点的模型就要花费几天甚至一个星期的时间,因此专用的运算器件是高速运算的一种解决方法。FDTD算法的基本计算公式只包括四个乘除法和四个加减法步骤,不包括更复杂的步骤,所以我们使用FPGA这种能高速获取数据又有不错的简单运算的能力的器件作为我们高速运算的平台。由于FPGA拥有丰富的寄存器资源,选择FPGA进行高速运算的核心思想便是并行运算,在保证每一条运算模块的运算速率的同时,尽可能的增加同时处理数据的运算模块数量,已达到高速运算的目的。整体上来说,平台以FPGA为核心,利用PCI9054作为沟通电脑和FPGA的桥梁,用DDR2内存作为存储运算时所需要的数据的存储芯片就是我们所要构建的高速运算平台。细节上分为两个部分,在电脑方面,我们首先用XFDTD来进行建模操作,再用C语言编程获取FPGA计算所需的数据,通过WDM驱动控制PCI9054以数据传输,其次在FPGA方面我们通过NIOSII建立一个简单的控制平台,然后分别编写PCI9054驱动程序以便于PCI9054进行通信,编写FDTD计算模块,和控制模块以达到并行运算的目的,编写DDR2驱动模块存储和获取预算中要用到的数据。