| 【中文题名】 | 典型数字信号处理应用中关键算法的硬件加速技术研究 |
| 【英文题名】 | Research of Hardware Acceleration Technique for Critical Algorithms of DSP Applications |
| 【学科专业】 | 计算机科学与技术 |
| 【论文级别】 | 硕士论文 |
| 【投稿时间】 | 2006-9-14 |
| 【中关键词】 | 硬件加速,现场可编程门阵列,快速傅里叶变换,矩阵乘,FIR滤波, |
| 【英关键词】 | Hardware Acceleration,Field Programmable Gate Array,Fast Fourier Transform,Matrix Multiplication,FIR Filter, |
| 【分类导航】 | 工业技术>无线电电子学、电信技术>通信>通信理论>信号处理>数字信号处理 |
| 【论文摘要】 | 随着半导体工艺技术的进步,体系结构设计技术也出现了新的局面和新的发展趋势。在一些对计算能力要求很高的实时处理系统中,将通用处理器和计算速度非常突出的协处理器相结合己成为体系结构的一个发展方向。本文在深入研究合成孔径雷达、软件无线电等一些典型应用的基础上,提取其中的关键算法作为硬件加速的主要研究对象,如:一维FFT、二维FFT、矩阵乘、FIR滤波、数字下变频等。根据数据传输方式的不同,本文提出了两种硬件加速系统结构——中断数据传输系统结构和DMA数据传输系统结构。
针对FFT算法中蝶形运算的特点设计了32位ANSI/IEEE Std 754-1985标准优化的浮点蝶形运算部件,并在FPGA上实现了FFT算法的两种并行结构。一是由数个双存储器结构的FFT模块组成的并行运算系统;二是流水线结构。在此基础上,分析了这两种结构作为协处理器时可满足的最大带宽及实现代价。根据某些特定应用的需要,本文又提出了超长FFT算法的一般实现结构。
实际应用中二维FFT算法数据量大、对存储容量要求高,根据算法的这个特点,本文提出了三种实现结构——硬件实现结构、软硬协同加速结构及软件调度实现结构,并采用其... |
| 【论文题纲】 |
|
图目录 |
8-10 |
|
表目录 |
10-11 |
|
摘要 |
11-12 |
|
ABSTRACT |
12-13 |
|
第一章 绪论 |
13-20 |
|
1.1 应用背景 |
13-16 |
|
1.1.1 合成孔径雷达(SAR) |
13-15 |
|
1.1.2 软件无线电(SR) |
15-16 |
|
1.1.2.1 软件无线电概述 |
15 |
|
1.1.2.2 软件无线电的应用 |
15-16 |
|
1.1.2.3 软件无线电的结构 |
16 |
|
1.1.2.4 软件无线电的瓶颈 |
16 |
|
1.2 技术背景 |
16-18 |
|
1.2.1 硬件加速概述 |
16-17 |
|
1.2.2 FPGA概述 |
17-18 |
|
1.2.2.1 FPGA的基本结构 |
17 |
|
1.2.2.2 FPGA的算法结构 |
17 |
|
1.2.2.3 FPGA的可重复配置特性 |
17 |
|
1.2.2.4 FPGA的局限性及解决办法 |
17-18 |
|
1.3 课题完成的工作 |
18 |
|
1.4 论文的组织结构 |
18-20 |
|
第二章 一维FFT的设计与实现 |
20-35 |
|
2.1 FFT算法概述 |
20-23 |
|
2.1.1 DFT与FFT概述 |
20-21 |
|
2.1.2 基2时间抽选FFT算法 |
21-22 |
|
2.1.2.1 基2时间抽选FFT算法简介 |
21-22 |
|
2.1.2.2 基2DIT-FFT运算程序的框图 |
22 |
|
2.1.3 FFT硬件实现算法的选择 |
22-23 |
|
2.2 并行结构FFT算法的实现 |
23-26 |
|
2.2.1 双存储器结构实现 |
23-24 |
|
2.2.1.1 双存储器结构框图 |
23 |
|
2.2.1.2 双存储系统结构及其时序图 |
23-24 |
|
2.2.2 流水线结构实现 |
24-25 |
|
2.2.2.1 流水线结构框图 |
24-25 |
|
2.2.2.2 流水线结构时序图 |
25 |
|
2.2.3 系统性能分析 |
25-26 |
|
2.2.3.1 双存储器结构性能分析 |
25-26 |
|
2.2.3.2 流水线结构性能分析 |
26 |
|
2.3 基于FPGA的设计与实现 |
26-32 |
|
2.3.1 实验环境简介 |
26-27 |
|
2.3.1.1 开发板ProcSuper-Star80-3B |
26-27 |
|
2.3.1.2 综合开发环境PROCWizard 5.8 |
27 |
|
2.3.2 FFT系统结构 |
27-28 |
|
2.3.2.1 中断数据传输系统结构 |
27 |
|
2.3.2.2 DMA数据传输系统结构 |
27-28 |
|
2.3.3 设计中的几个关键模块 |
28-32 |
|
2.3.3.1 存储器模块 |
28 |
|
2.3.3.2 倒位序模块 |
28-29 |
|
2.3.3.3 蝶形运算模块 |
29-32 |
|
2.4 超长一维FFT的实现 |
32-34 |
|
2.4.1 超长一维FFT的实现背景 |
32-33 |
|
2.4.2 超长一维FFT的实现算法及流程 |
33-34 |
|
2.4.3 超长一维FFT的实现结构 |
34 |
|
2.5 小结 |
34-35 |
|
第三章 基于FPGA二维FFT算法的研究与实现 |
35-54 |
|
3.1 二维FFT的应用 |
35-36 |
|
3.1.1 二维FFT在频率成分分析中的应用 |
35 |
|
3.1.2 二维FFT在多维滤波中的应用 |
35-36 |
|
3.2 多维快速傅利叶变换 |
36-38 |
|
3.2.1 基于直接计算的离散傅里叶变换 |
36-37 |
|
3.2.2 基于行列分解的离散傅里叶变换 |
37-38 |
|
3.2.3 基于行列分解的快速傅里叶变换 |
38 |
|
3.3 二维傅立叶变换硬件实现结构 |
38-44 |
|
3.3.1 硬件实现法 |
39-43 |
|
3.3.1.1 用双存储器结构实现FFT运算子系统 |
39-42 |
|
3.3.1.2 用流水线结构实现FFT子系统 |
42-43 |
|
3.3.2 软硬协同实现 |
43 |
|
3.3.3 软件调度实现 |
43-44 |
|
3.3.4 小结 |
44 |
|
3.4 基于PROCSupersStar-80开发板实现 |
44-53 |
|
3.4.1 实现结构选择 |
44-46 |
|
3.4.2 基于PROCSupersStar-80开发板软硬协同实现的分析 |
46-47 |
|
3.4.3 基于FPGA(2048,2048)点FFT算法的设计与实现 |
47-53 |
|
3.4.3.1 二维FFT运算系统结构 |
47-48 |
|
3.4.3.2 二维FFT计算阵列与多端口存控 |
48-49 |
|
3.4.3.3 系统中主要状态及简单说明 |
49-51 |
|
3.4.3.4 二维FFT运算单元综合结果 |
51-52 |
|
3.4.3.5 正确性及性能测试 |
52-53 |
|
3.5 小结 |
53-54 |
|
第四章 基于FPGA的矩阵乘设计与实现 |
54-67 |
|
4.1 矩阵划分及在矩阵乘中的应用 |
54-57 |
|
4.1.1 矩阵计算的一般划分法 |
54-56 |
|
4.1.1.1 带状划分 |
54-55 |
|
4.1.1.2 棋盘划分 |
55-56 |
|
4.1.2 矩阵乘运算 |
56-57 |
|
4.2 矩阵硬件实现设计 |
57-65 |
|
4.2.1 并行块调度 |
57-59 |
|
4.2.1.1 并行块调度算法 |
57-58 |
|
4.2.1.2 调度计算示例 |
58-59 |
|
4.2.2 线性阵列组织结构 |
59-62 |
|
4.2.2.1 系统结构及其运算方式 |
59-60 |
|
4.2.2.2 处理单元组织结构 |
60 |
|
4.2.2.3 局部存储容量需求 |
60-61 |
|
4.2.2.4 MAC单元结构 |
61-62 |
|
4.2.3 系统性能分析 |
62-65 |
|
4.2.3.1 系统的峰值性能 |
63-64 |
|
4.2.3.2 峰值性能所需带宽 |
64-65 |
|
4.2.3.3 峰值性能所需局部存储器的容量 |
65 |
|
4.2.3.4 数据相关性 |
65 |
|
4.3 基于FPGA的硬件实现 |
65-66 |
|
4.3.1 MAC单元实现 |
65 |
|
4.3.2 控制逻辑实现 |
65-66 |
|
4.3.3 PE综合结果 |
66 |
|
4.4 小结 |
66-67 |
|
第五章 FIR滤波与数字下变频 |
67-73 |
|
5.1 FIR滤波及其优缺点 |
67-68 |
|
5.2 FIR滤波硬件实现结构 |
68-70 |
|
5.2.1 直接型结构 |
68 |
|
5.2.2 级联型结构 |
68-69 |
|
5.2.3 快速卷积结构 |
69 |
|
5.2.4 三种实现结构比较 |
69-70 |
|
5.3 数字下变频及其实现结构 |
70-72 |
|
5.3.1 数字下变频概述 |
70 |
|
5.3.2 数字下变频实现结构 |
70-72 |
|
5.3.2.1 数字下变频的频谱搬移 |
71-72 |
|
5.3.2.2 抽取与抽取滤波 |
72 |
|
5.3.2.3 输出数据格式转化 |
72 |
|
5.4 小结 |
72-73 |
|
第六章 结束语 |
73-75 |
|
6.1 本课题的工作与贡献 |
73-74 |
|
6.2 未来的研究发展方向 |
74-75 |
|
致谢 |
75-76 |
|
攻读硕士期间发表的论文 |
76-77 |
|
攻读硕士期间参加的科研项目 |
77-78 |
|
参考文献 |
78-80 |
|
| 【DOI】 | LunWen.ID:2.2008.347740 |