第1章 FPGA与数字系统设计 1
1.1 概述 1
1.2 可编程逻辑器件基础 1
1.2.1 可编程逻辑器件的发展历史 1
1.2.2 FPGA芯片的结构 2
1.3 基于FPGA的数字系统设计流程 5
1.4 基于FPGA的数字系统调试 8
1.4.1 数字系统的调试 8
1.4.2 选择合适的FPGA调试方法 10
1.5 实验平台开发的选择 11
1.5.1 实验硬件平台的选择 11
1.5.2 EDA软件的选择 12
1.6 小结 13
思考题1 13
第2章 数字系统设计方法 14
2.1 数字系统的基本组成 14
2.2 数字系统的结构化设计方法 14
2.2.1 自顶而下的设计方法 14
2.2.2 用ASM图设计控制器 15
2.3 数字系统设计实例 16
2.3.1 频率测量系统控制器的设计 16
2.3.2 简易交通信号灯控制系统的设计 18
2.4 小结 25
思考题2 26
第3章 testbench的编写 27
3.1 概述 27
3.2 testbench的结构形式 27
3.2.1 testbench的基本结构 27
3.2.2 testbench结构实例详解 28
3.3 常用的系统任务和系统函数 30
3.4 testbench的激励和响应 33
3.4.1 testbench的激励方式 33
3.4.2 仿真结果分析方式 34
3.5 常用激励信号的一些描述形式 34
3.6 testbench实例 37
3.6.1 组合乘法器实例 37
3.6.2 PS2键盘接口电路实例 39
3.6.3 SVGA显示接口电路实例 42
3.7 小结 44
思考题3 45
第4章 数字系统实验平台的使用 46
实验1 ModelSim仿真软件的使用 46
实验2 ISE软件的使用 52
实验3 ChipScope Pro的逻辑分析实验 62
实验4 ChipScope Pro的VIO实验 71
实验5 IP内核的使用实验 76
实验6 ModelSim、ISE的后仿真实验 86
第5章 数字系统设计的基础实验 91
实验7 快速加法器的设计和应用 91
实验8 浮点数加法器的设计 95
实验9 乘法器的设计 99
实验10 快速乘法器的设计 102
实验11 异步输入的同步器和开关防颤动电路的设计 108
实验12 SVGA显示接口实验 112
实验13 PS2键盘接口实验 119
实验14 PS2鼠标接口实验 127
第6章 数字系统综合设计实验 134
实验15 数字钟设计 134
实验16 数字式秒表 138
实验17 文本显示实验 141
实验18 SVGA动态显示实验 146
实验19 点灯游戏的设计 151
实验20 直接数字频率合成技术(DDS)的设计与实现 157
实验21 音乐播放实验 163
实验22 低频数字式相位测量仪的设计 173
实验23 全数字锁相环的设计 178
实验24 基于FPGA的FIR数字滤波器的设计 183
实验25 数字下变频器(DDC)的设计 188
实验26 I2C总线实验 192
第7章 CPU设计 198
实验27 多周期MIPS微处理器设计 198
实验28 流水线MIPS微处理器设计 216
附录A XUP Virtex-Ⅱ Pro开发系统的使用 230
A.1 Virtex-Ⅱ Pro FPGA主芯片介绍 231
A.2 电源供电模块 232
A.3 时钟电路 232
A.4 SVGA视频模块 233
A.5 AC97音频编解码系统 234
A.6 RS232串行接口模块 235
A.7 PS2接口模块 235
A.8 开关、按键和LED指示灯 236
A.9 下载配置模块 237
A.10 高速和低速的扩展连接器 238
附录B DigitlO型扩展板的使用 240
附录C ASCⅡ码表 243
附录D Xilinx仿真库的建立 245
参考文献 247