论文部分内容阅读
本论文课题是以国家部委某DSP关键IP核研究项目为基础展开的,主要完成雷达信号处理器中的FFT处理模块的VLSI设计和物理实现。本文在研究各种FFT算法的基础上,选择按时间抽取的基-4算法作为处理器的实现算法,数据采用16位定点数格式顺序输入;并提出了一种基于存储器方式的流水线结构FFT硬件实现方法,硬件结构为5级流水线结构设计,数据位宽逐级扩展。硬件设计包含存储单元、蝶形运算单元、复数乘法器、地址产生及控制单元、旋转因子ROM和倒位序模块等多个子模块。设计采用数据位宽逐级扩展的方式,在同样运算量和复杂度条件下,DIT较DIF可以节省一定存储空间。存储单元的设计中将数据实部和虚部拼接存储,进一步减小存储单元面积。采用基于存储器方式的流水线结构硬件设计,每级仅包含一个蝶形运算模块和复数乘法器,改进的复数乘法器设计进一步减少硬件资源的消耗,具有面向高速、大容量数据流的实时处理能力。硬件流水级划分不同于算法流水级划分的设计,方便设计向其他点数扩展。旋转因子乘以214后以16位定点整数格式存储在ROM中。通过Modelsim和Matlab相结合的办法,分别采用正弦信号、扫频正弦信号和线性调频信号验证了电路功能的正确性,误差的量级为10-3。利用DC综合工具对FFT处理器进行了逻辑综合。处理器可工作在200MHz频率下。在初始状态下完成1024点的FFT运算,从输入第一个数据到输出最后一个计算结果需要3092个时钟周期,200MHz频率下所需时间为15.46μs;在正常流水工作状态下完成一个1024点FFT运算需要1024个时钟周期,所需时间为5.12μs。在SMIC CMOS0.13um标准工艺库下,采用SoC Encounter工具完成了物理实现。采用展平式物理设计方法,流水级宏模块按照数据流图的顺序进行放置,级内采用就近原则放置。先采用时序驱动自动布局,然后执行几次时序和拥塞兼顾的布局优化操作。采用插入天线二极管和跳层布线的方法来修复深亚微米尺寸下的天线问题。处理器核的功耗值为536mW,核面积为8208000μm2。