第1章频率计设计 1
1.1频率计原理 1
1.1.1直接测频法 2
1.1.2同步测频法 2
1.1.3测周期法 3
1.2原理构架 4
1.3硬件组成 4
1.3.1总体硬件图 4
1.3.2 FPGA硬件设计 4
1.3.3前端调理电路设计 4
1.3.4方波生成电路设计 6
1.3.5 LCD 1602电路设计 7
1.4 FPGA设计 7
1.4.1顶层设计图 7
1.4.2 LCD 1602控制器 8
1.4.3产生方波信号 11
1.4.4计数器模块 12
1.5本章小结 13
第2章人机界面设计 14
2.1原理构架 14
2.2硬件组成 16
2.2.1总体硬件图 16
2.2.2 FPGA部分 16
2.2.3 PS2键盘部分 19
2.2.4液晶模块 20
2.2.5 VGA模块 20
2.2.6蜂鸣器模块 21
2.3 FPGA设计 21
2.3.1 PS2控制模块 21
2.3.2液晶控制模块 22
2.3.3 VGA驱动模块 27
2.3.4蜂鸣器驱动模块 30
2.4改进要点 34
2.4.1添加触摸屏模块 34
2.4.2 VGA模块的改进方法 35
2.4.3其他模块的改进方法 35
2.5本章小结 36
第3章信号源设计 37
3.1信号发生原理 37
3.1.1信号的产生 37
3.1.2 DDS原理 38
3.1.3 DDS的优点 39
3.1.4 DDS参数 40
3.1.5 DDS实现方法 42
3.2原理构架 43
3.3硬件组成 44
3.3.1总体硬件图 44
3.3.2人机交互部分 46
3.3.3 DAC部分 47
3.3.4信号调理设计 47
3.3.5晶振输入部分 48
3.4 FPGA设计 48
3.4.1相位累加器模块 48
3.4.2 ROM模块 50
3.4.3人机交互模块 55
3.4.4波形选择模块 58
3.5改进要点 58
3.5.1压缩ROM表 58
3.5.2更换DAC 59
3.5.3改进构架 60
3.6本章小结 60
第4章高速数据采集系统设计 61
4.1数据采集方法 61
4.2数据采集设计思路 62
4.2.1传统数据采集模型 62
4.2.2高速数据采集模型 62
4.2.3基于FPGA数据采集原理 63
4.3原理构架 64
4.4硬件组成 65
4.4.1硬件总体框架 65
4.4.2高速A/D 65
4.4.3信号调理电路 68
4.4.4后端CPU 68
4.4.5 PCB布线注意事项 70
4.5 FPGA设计 70
4.6后端处理设计 76
4.6.1软件流程图 76
4.6.2读取FIFO 76
4.6.3数据处理和显示 77
4.7改进要点 77
4.7.1提高采样率 77
4.7.2提高分辨率 78
4.7.3其他改进要点 78
4.8本章小结 80
第5章FPGA的SOPC及嵌入式智能设计 81
5.1嵌入式应用程序开发 81
5.1.1创建一个嵌入式项目 81
5.1.2代码编辑基本知识及通用设置 81
5.1.3编辑器 87
5.2 TASKING工具链 88
5.2.1嵌入式软件构建流程 88
5.2.2绑定目标项目 89
5.2.3处理器选项 89
5.2.4 C编译器选项 90
5.2.5汇编语言编译器选项 98
5.2.6链接选项 99
5.2.7编译器输出 100
5.2.8第一次编译 100
5.3利用微处理器软核 101
5.3.1在FPGA原理图中使用微处理器软核 101
5.3.2片上调试功能 101
5.3.3放置一个软核到FPGA原理图 102
5.4连接一个嵌入式项目到硬件设计 105
5.4.1连接一个嵌入式项目到FPGA项目 105
5.4.2连接程序存储器到处理器核 106
5.4.3连接项目 107
第6章LiveDesign实时设计及嵌入式软件调试 109
6.1初始化LCD 109
6.1.1使用提供的LCD控制模块 110
6.1.2开发一个自定义的LCD软件模块 110
6.2使用LiveDesign初始化LCD 110
6.2.1调整软件定时环路 110
6.2.2校验LCD写操作 118
6.2.3校验LCD读操作 120
6.2.4 LCD指令定义 121
6.3调试设计 122
6.3.1调试菜单 122
6.3.2嵌入式控制面板 123
6.3.3代码调试 129
第7章FPGA设计提高——Wishbone 130
7.1设计一个视频显示系统 130
7.1.1视频捕获具体细节 130
7.1.2在触摸屏上显示视频的具体细节 131
7.1.3系统的高层次观察 131
7.2使用微处理器软核 131
7.2.1在FPGA原理图中使用软核 132
7.2.2访问软核使用资料 133
7.2.3 TSK3000处理器 133
7.2.4放置一个软核到FPGA原理图 135
7.3 Wishbone互联架构 135
7.3.1 Wishbone兼容的核 135
7.3.2 Wishbone界面信号描述 136
7.3.3 Wishbone信号管脚命名原则 137
7.4放置FPGA外设 138
7.5总线互联和仲裁 140
7.5.1 Wishbone互联器件WB _INTERCON 141
7.5.2配置Wishbone互联元件 141
7.5.3连接外设 143
7.5.4管理存储器访问 144
7.5.5多主公用一从的仲裁方法 144
7.5.6 Wishbone双主或多主器件 145
7.5.7配置Wishbone多主器件 146
7.5.8多主器件的定义 147
7.6与外部存储器接口连接 148
7.6.1配置SRAM控制器 148
7.6.2布局和配置存储器控制器 149
7.6.3从器件的多个存储器 150
7.6.4放置元件的端口接插件 151
7.6.5连接FPGA设计 153
7.7配置处理器存储器 153
7.7.1处理器存储器的划分 154
7.7.2配置处理器存储器 155
7.7.3配置处理器外设 155
7.7.4定义处理器外设 156
7.8确定设计、编译和错误处理 157
7.9新建FPGA项目的嵌入式系统 157
7.9.1编辑基础 157
7.9.2绑定目标项目 158
7.9.3项目选项 158
7.9.4链接嵌入式项目到FPGA项目 165
7.9.5链接嵌入式项目到FPGA项目 167
7.9.6构建整个设计并查看实时更新软件的效果 167
7.10更新设计以显示视频 170
7.10.1定义段 170
7.10.2实时更新软件 171
7.10.3更新软件以显示视频 172
7.10.4更新 Wishbone端口I/O 174
7.10.5使用虚拟仪器 175
7.10.6添加虚拟仪器 176
7.10.7重新构建带有虚拟仪器的项目 178
7.10.8更新嵌入式项目以使用虚拟仪器 178
7.10.9添加附加的源文件 178
7.10.10更新mam.c主函数 180
7.10.11用虚拟仪器来监控设计 185
第8章嵌入式软件代码调试及C到硬件 188
8.1处理器核实时调试 188
8.1.1片上调试 188
8.1.2仿真 188
8.1.3嵌入式控制面板 189
8.1.4 Nexus调试器 194
8.2 C到硬件 195
8.2.1 C到硬件编译器的优点 196
8.2.2使用CHC编译器 196
8.2.3 C到硬件的实现 197
8.2.4为C到硬件提供空间 197
8.2.5添加特殊应用处理器ASP 197
8.2.6给ASP访问到存储器 198
8.2.7配置ASP 201
8.2.8通过ASP完善性能 202
第9章虚拟仪器调试及JTAG边界扫描 204
9.1虚拟仪器简介 204
9.2使能嵌入式虚拟仪器 209
9.3使用嵌入式虚拟仪器 209
9.4 FPGA项目与试验板交互 213
9.4.1 Nanoboard通信 213
9.4.2技术背景 214
9.4.3 FPGA 1/O状态实时显示 216
9.4.4实时交叉探针 218
9.4.5在Nanoboard上观察PWM项目 218
第10章FPGA到PCB转换及同步更新 219
10.1移植设计到预备的FPGA器件 219
10.1.1选择适合该设计的FPGA器件 219
10.1.2绑定为一个新的 FPGA器件 220
10.1.3灵活配置 222
10.1.4绑定设计到一个新的FPGA器件 225
10.1.5压缩设计 225
10.2从FPGA到PCB项目 227
10.2.1各文档间的关系 227
10.2.2 FPGA到PCB向导的应用 229
10.2.3 FPGA配置 229
10.2.4 FPGA管脚分配 230
10.2.5选择目标PCB项目 232
10.2.6配置FPGA器件原理图 232
10.2.7配置顶层原理图及其方框图 232
10.2.8运行FPGA到PCB向导 233
10.2.9修改自动生成的原理图 235
10.2.10关于FPGA特殊用途的管脚 235
10.2.11重新创建自动生成的原理图 236
10.3保持项目间同步 236
10.3.1 FPGA工作区映射图Workspace Map 236
10.3.2同步对话框 238
10.3.3同步匹配信号 239
10.3.4同步未匹配信号 240
10.4配置FPGA I/O 243
10.4.1 配置I/O标准 243
10.4.2使用FPGA信号管理器 244
10.5手动链接FPGA和PCB项目 245
10.5.1支持器件 246
10.5.2创建链接 247
10.5.3链接自动生成的原理图到现有PCB项目 249
10.5.4手动连接PCB到FPGA项目 249
10.6管脚交换 250
10.6.1 PCB文档中管脚交换 250
10.6.2 FPGA项目中管脚交换 256
10.6.3在PCB和FPGA项目中同步管脚交换 257
10.6.4管脚交换和同步更新 257
第11章测量仪器平台系统设计 259
11.1平台设计思路及框架 259
11.1.1原理框架 260
11.1.2模块划分 260
11.1.3模拟电路模块 260
11.1.4高速ADC模块 262
11.2硬件组成 267
11.2.1硬件总体框架 267
11.2.2模拟前端 268
11.2.3高速A/D 269
11.2.4 FPGA芯片 275
11.2.5后端CPU 276
11.2.6辅助电路 280
11.3 FPGA设计 281
11.4后端处理设计 291
11.4.1读取FIFO 292
11.4.2数据处理算法——FIR 292
11.4.3数据处理算法——IIR 293
11.4.4数据处理算法——卷积 293
11.4.5数据处理算法——傅里叶变换 295
11.4.6数据处理算法——A律 298
11.5误差分析 300
11.6应用实例 300
11.6.1超声测量 300
11.6.2数字示波器 301
11.7改进要点 301
11.8本章小结 302
参考文献 303