Xilinx FPGA应用开发(第2版)(高等院校电类专业应用型规划教材——微电子技术专业)
定 价:39 元
- 作者:贺敬凯
- 出版时间:2017/10/17
- ISBN:9787302477594
- 出 版 社:清华大学出版社
- 中图法分类:TP332.1
- 页码:235
- 纸张:胶纸版
- 版次:2
- 开本:16K
-
商品库位:
本书通过FPGA应用开发中的27个典型的实战项目及各个实战项目涉及的知识点来详细介绍FPGA应用开发技术。主要内容包括FPGA应用开发硬件平台、ISE集成开发环境、Vivado集成开发环境、Verilog HDL硬件描述语言、组合逻辑电路设计、时序逻辑电路设计、FPGA与外设接口的应用设计、一款CPU的设计。
本书以实战项目为主线编排教学内容; 配有电子教学课件、源代码和习题集,方便开展实践教学,可作为高等院校应用型本科、专科电子类专业EDA技术和FPGA应用开发等课程的教材。
本书基于Xilinx basys2开发板和basys3开发板、ISE集成开发环境和VIVADO集成开发环境。以27个来源于实践的实战项目为主线,知识点配套107个示例进行讲解。为了更加直观的了解实战项目要求的效果,配套项目描述视频,并且该视频既可以在电脑上观看,也可以用微信扫一扫功能直接观看。
第1章硬件平台及集成开发环境
实战项目1键控LED灯亮灭
1.1FPGA工作原理及芯片
1.1.1FPGA工作原理
1.1.2Xilinx FPGA芯片
1.2硬件开发平台
1.2.1开发板常用接口电路
1.2.2VGA接口电路
1.2.3时钟电路
1.2.4FPGA配置电路
1.2.5开发板引脚定义
1.3集成开发环境
1.3.1基于ISE的开发流程
1.3.2基于Vivado的开发流程
1.4小结
1.5习题
第2章HDL语言基础
实战项目2设计1位全加器
2.1Verilog HDL基本程序结构
实战项目3设计3位移位寄存器
2.2Verilog HDL语言的数据类型和运算符
2.2.1标识符
2.2.2数据类型
2.2.3常量
2.2.4运算符和表达式
实战项目4设计三人表决电路
2.3Verilog HDL语言的建模形式
2.3.1结构描述形式
2.3.2数据流描述形式
2.3.3行为描述形式
2.4Verilog代码书写规范
2.5小结
2.6习题
第3章组合逻辑电路设计与应用
实战项目5设计基本门电路
3.1基本门电路
3.1.1基本门电路设计
3.1.2约束文件
3.1.3使用ISim进行功能仿真
实战项目6设计比较器电路
3.2比较器电路
3.2.1比较器设计
3.2.2使用FPGA Editor查看细节
实战项目7设计多路选择器电路
3.3多路选择器
3.3.1多路选择器设计
3.3.2使用PlanAhead规划引脚
实战项目8设计编码器和译码器电路
3.4编码器和译码器
3.4.1编码器设计
3.4.2译码器设计
实战项目9设计ALU电路
3.5算术逻辑单元ALU
3.5.1ALU设计
3.5.2使用Design Summary工具
3.6小结
3.7习题
第4章时序逻辑电路设计与应用
实战项目10设计触发器电路
4.1触发器
4.1.1D触发器设计
4.1.2FPGA内部结构
实战项目11设计寄存器电路
4.2寄存器和移位寄存器
4.2.1寄存器设计
4.2.2移位寄存器设计
实战项目12设计计数器电路
4.3计数器
4.3.1十六进制计数器设计
4.3.2十进制计数器设计
实战项目13设计分频器电路
4.4分频器
4.4.1偶数分频
4.4.2奇数分频
4.4.32n分频
实战项目14设计秒表电路
4.5综合项目: 秒计数器
4.5.1秒计数器设计
4.5.2ISE schematic viewer工具的使用
4.5.3层次建模模块调用规范
4.6小结
4.7习题
第5章一般简单接口电路设计与应用
实战项目15控制LED灯亮灭
5.1LED显示电路设计与应用
5.1.1LED闪烁
5.1.2LED流水灯
5.1.3状态机编码
实战项目16控制数码管显示信息
5.2数码管显示电路设计与应用
5.2.1单数码管显示原理
5.2.2多数码管显示原理
5.2.3数码管显示IP核
5.2.4数码管显示应用实例1: 显示静态数据
5.2.5数码管显示应用实例2: 滚动显示信息
5.2.6把自己的模块封装成IP核
实战项目17键控显示信息
5.3按键电路设计与应用
5.3.1按键状态检测
5.3.2按键消抖基本原理
5.3.3按键应用1: 按键控制闪烁频率
5.3.4按键应用2: 按键次数显示电路
实战项目18控制VGA显示彩条和信息
5.4VGA显示电路设计与应用
5.4.1VGA显示原理
5.4.2VGA显示IP核
5.4.3VGA应用1: 显示四色条纹
5.4.4VGA应用2: 显示信息
实战项目19键控流水灯
5.5综合项目: 键控流水灯
5.6小结
5.7习题
第6章综合项目应用
实战项目20设计反应测量仪
6.1反应测量仪
实战项目21设计序列检测器
6.2序列检测器
6.2.1脉冲产生电路设计与应用
6.2.2Mealy状态机和Moore状态机
6.2.3“110”序列检测器设计
实战项目22设计密码锁
6.3密码锁
实战项目23设计交通灯控制器
6.4交通灯控制器
实战项目24设计数字钟
6.5数字钟设计
实战项目25设计频率计
6.6频率计设计
实战项目26设计信号发生器
6.7信号发生器设计
6.7.1正弦波信号发生器设计
6.7.2内嵌逻辑分析仪ChipScope的使用
6.8小结
6.9习题
第7章简易CPU设计
实战项目27设计简易处理器
7.1简易处理器的系统架构设计
7.1.1简易处理器的组成结构
7.1.2简易处理器的功能
7.1.3指令系统的设计
7.2简易处理器的设计实现
7.2.1顶层系统设计
7.2.2基本部件设计
7.3简易处理器的验证
7.3.1仿真验证
7.3.2FPGA验证
7.4小结
7.5习题
参考文献
第1章硬件平台及集成开发环境
本章首先介绍FPGA工作原理和Xilinx FPGA芯片,然后介绍本书所用的硬件平台,重点介绍硬件平台的硬件接口: 按键、拨码开关、LED灯、数码管、VGA等,最后介绍ISE和Vivado集成开发环境,以及基于ISE和Vivado的数字设计流程。
学习本章,主要目标有2个: ①通过FPGA软件开发流程,为后续应用项目的开发设计打下坚实的基础; ②通过学习硬件平台的原理图,为后续项目的开发设计提供参考依据。
实战项目1键控LED灯亮灭
【项目描述】通过一个拨码开关控制一个LED灯的亮灭。
要求拨码开关的两种状态与LED灯的两种状态一一对应。
实战项目1.mp4
(2.33MB)
【知识点】本项目需要学习以下知识点。
(1) FPGA的工作原理。
(2) FPGA硬件开发平台以及一些常用接口的电路原理图。
(3) ISE集成开发环境以及基于ISE的数字设计流程,包括设计输入编辑、分析与综合、适配以及编程下载几个步骤。
(4) Vivado集成开发环境以及基于Vivado的数字设计流程,包括设计输入编辑、分析与综合、实现以及编程下载几个步骤。
1.1FPGA工作原理及芯片
1.1.1FPGA工作原理
FPGA(FieldProgrammable Gate Array)即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数量有限的缺点。
以硬件描述语言(Verilog或VHDL)完成的电路设计,可以经过简单地综合与布局,快速地烧录到FPGA上进行测试,是现代IC设计验证的技术主流。这些可编辑元件可以用来实现一些基本的逻辑门电路(如AND、OR、NOT)或者更复杂的组合功能(如解码器或数学方程式)。在大多数FPGA里面,这些可编辑的元件里还包含记忆元件(如触发器、存储块)。
系统设计师可以根据需要,通过可编辑的连接把FPGA内部的逻辑块连接起来,就好像一块电路试验板被放在一个芯片里。一个出厂后的成品FPGA的逻辑块和连接可以按照设计者的意愿而改变,所以FPGA可以完成所需要的逻辑功能。