论文部分内容阅读
浮点协处理器是现代微处理器体系结构中不可或缺的一部分,通常与主处理器相互配合完成某些高速度和高精度的数值计算。采用ASIC设计的浮点协处理器虽然具有很高的性能,但设计周期长、实现成本高、灵活性差,不适合于对成本控制严格和灵活性要求高的应用场合。而FPGA是一种半定制电路,它具有开发周期短、成本低、风险小、灵活性高、可在线编程等ASIC所没有的特点,同时又在规模上比其他可编程器件拥有更多的门电路数量。IP核是具有知识产权的集成电路芯核,是经过反复验证的、具有特定功能的宏模块,它与芯片制造工艺无关,可以移植到不同的半导体工艺中。集成电路技术的快速发展使得FPGA技术越来越成熟,基于FPGA的IP核应用越来越广泛。本文研究开发一种基于FPGA的浮点协处理器的IP核,能实现32位单精度浮点数的加法、减法、乘法、除法和平方根等浮点运算,支持四种舍入模式:向最近偶数舍入、向零舍入、向正无穷舍入和向负无穷舍入。采用三级流水线技术对设计进行优化,使加法运算性能由单周期的58.3MHz提高到流水线的131.5MHz,比文献中同类设计的性能高出79.8%,乘法运算性能由单周期的69.3MHz提高到流水线的123.8MHz,比文献中同类设计的性能高出54.7%。采用多周期算法完成除法和平方根运算的设计,性能分别达到100.0MHz和96.1MHz。对所有运算采用第三方浮点测试集生成的200万个测试向量进行仿真,仿真结果验证了其逻辑功能的正确性。在Virtex-5开发板上对设计进行FPGA原型验证,结果表明该IP核各运算模块功能与仿真结果一致,且达到了时序分析的性能。设计充分发挥了FPGA的优势,具有开发周期短、可移植性强等特点,可以应用于对设计灵活性要求高的实时数据处理领域。