FPGA设计技巧与案例开发详解(第3版)

FPGA设计技巧与案例开发详解(第3版)

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

FPGA技术探索与实践,全面介绍Altera FPGA开发流程。

内容简介

本书由浅入深、由表及里,从FPGA技术的探索到资源的发现与利用,从硬件版图规划与设计到逻辑电路验证与实现,从模块化功能的研究与积累到系统集成的综合与Timingquest时序优化,系统、全面地介绍Altera FPGA的开发流程。本书的所有例程均经过千锤百炼,相关FPGA设计的资源均由笔者多年整理归纳,希望读者能够妥善利用。

章节目录

封面

作者简介

版权页

序一:夏老的激励

第3版序:走在风口浪尖

前言

目录

第一部分 FPGA基础理论

第1章 浅谈FPGA技术、优势、学习途径

1.1 FPGA的诞生、发展与未来

1.1.1 FPGA的诞生

1.1.2 FPGA的发展与未来

1.1.3 博弈,在入门之前

1.2 Altera FPGA介绍及其发展、应用

1.2.1 Altera公司介绍

1.2.2 Altera公司产品介绍

1.2.3 Altera FPGA的开发平台

1.2.4 Altera FPGA的动态与应用

1.2.5 Altera FPGA的应用

1.2.6 对比ARM与DSP,认清FPGA

1.3 善用网络资源,不断总结自我

第2章 MAX II CPLD/Cyclone IV FPGA PCB硬件设计

2.1 浅谈PCB Layout

2.2 MAX II CPLD核心电路设计

2.2.1 MAX II CPLD背景及简介

2.2.2 EPM240T100C5N设计需求研究分析

2.2.3 EPM240T100C5N核心板原理图设计

2.2.4 EPM240T100C5N核心板布局布线

2.3 Cyclone IV FPGA核心电路设计

2.3.1 Cyclone IV FPGA简介

2.3.2 EP4CE15F12C8N设计需求研究分析

2.3.3 Cyclone IV FPGA核心原理图设计

2.3.4 FPGA核心板Layout注意事项

2.4 FPGA/CPLD电路焊接、调试经验总结

2.5 本书配套FPGA开发平台硬件介绍

2.5.1 VIP_Board硬件资源介绍

2.5.2 VIP_Board相关外设实物介绍

第3章 QuartusII软件安装与VerilogHDL简介

3.1 Quartus II软件安装

3.1.1 写在前面的话

3.1.2 Quartus II 18.0软件下载

3.1.3 Quartus II 18.0软件安装

3.1.4 USB Blaster下载器驱动程序的安装

3.2 Verilog HDL设计

3.2.1 Verilog HDL与VHDL的对比

3.2.2 Verilog HDL的发展

3.2.3 Verilog HDL的应用

3.3 Testbench文件架构

3.3.1 Testbench的介绍

3.3.2 Testbench代码设计风格

3.4 Quartus II工程目录定义约定

第二部分 FPGA初级入门

第4章 4位计数器的设计与仿真验证

4.1 写在前面的话

4.2 FPGA/CPLD开发流程

4.3 基于Quartus II 18.0的4位计数器设计流程

4.3.1 Quartus II工程的创建

4.3.2 4位计数器的逻辑电路设计

4.3.3 Quartus II编译流程与工程设置分析

4.4 基于Modelsim-Intel 10.5b的4位计数器仿真验证流程

4.4.1 关于FPGA设计的各种仿真概念分析

4.4.2 Modelsim版本的简要介绍

4.4.3 Modelsim工程的创建

4.4.4 Testbench激励文件的编写

4.4.5 Modelsim波形的仿真与分析

4.5 设计思路的验证与总结

第5章 LED驱动电路设计

5.1 LED驱动电路设计方案1—入门

5.1.1 LED驱动电路设计方案

5.1.2 8位LED的自加显示实验

5.2 LED驱动电路设计方案2—升级

5.2.1 LED驱动电路设计方案

5.2.2 74HC595驱动分析与实现

5.3 8位LED跑马灯显示实验

5.4 LED特效呼吸灯的设计

5.4.1 PWM协议的基本介绍

5.4.2 LED呼吸灯的设计

第6章 独立按键与矩阵键盘的FPGA驱动电路实现

6.1 按键及其工作模式介绍

6.1.1 按键抖动原理分析

6.1.2 硬件消抖动

6.1.3 软件消抖动

6.2 独立按键的FPGA驱动电路设计

6.2.1 独立按键电路设计

6.2.2 FSM状态机的Verilog HDL介绍

6.2.3 FPGA按键驱动电路设计方案1

6.2.4 FPGA按键驱动电路设计方案2

6.3 矩阵键盘的FPGA驱动电路设计

6.3.1 工作原理及电路设计

6.3.2 FPGA矩阵键盘驱动电路设计

第7章 “Hello World”的LCD1602显示驱动电路实现

7.1 LCD1602介绍及硬件设计

7.1.1 LCD1602字符液晶介绍

7.1.2 LCD1602硬件电路设计

7.1.3 LCD1602的时序及初始化分析

7.2 LCD1602的FPGA驱动电路实现

7.2.1 LCD1602的C语言实现方案

7.2.2 LCD1602的Verilog HDL实现方案

第8章 优化设计FPGA全局时钟管理模块

8.1 异步复位,同步释放机制

8.1.1 组合电路中的竞争—冒险

8.1.2 时序电路中的竞争—冒险

8.2 无PLL的全局时钟管理模块设计

8.3 Quartus II IP核介绍及PLL的定制

8.3.1 Quartus II IP核的介绍

8.3.2 PLL IP核的定制与分析

8.4 带PLL的全局时钟管理模块设计

第9章 基于FPGA与MCU通信的SPI总线协议设计

9.1 SPI总线协议介绍及硬件的设计

9.1.1 SPI总线协议介绍

9.1.2 STM8的硬件电路设计

9.1.3 SPI总线协议时序分析

9.2 SPI总线协议的通信实现

9.2.1 STM8的SPI总线收发设计

9.2.2 边沿检测电路的FPGA实现

9.2.3 SPI通信的数据接收模块设计

9.2.4 SPI通信的数据发送模块设计

第10章 基于FPGA与PC通信的UART串口设计

10.1 追根溯源解析串口通信

10.1.1 串口通信简介

10.1.2 串口波特率

10.1.3 串口协议分析

10.2 串口电路的设计

10.2.1 TTL转RS-232电路的设计

10.2.2 USB转UART电路的设计

10.2.3 UART电路的调试

10.3 细说真正的任意分频

10.3.1 分频电路的重要性

10.3.2 任意频率发生器的原理

10.3.3 任意频率发生器的验证

10.4 串口通信的硬件实现

10.4.1 uart_receiver接收模块的设计

10.4.2 uart_transfer发送模块的设计

10.4.3 PC2FPGA UART联调测试

第11章 基于FPGA的VGA驱动显示设计

11.1 VGA接口、时序及驱动电路设计

11.1.1 VGA接口介绍

11.1.2 VGA时序分析

11.1.3 RGB三原色模型

11.1.4 VGA驱动电路设计

11.2 VGA驱动的FPGA实现

11.2.1 VGA驱动时序电路的设计

11.2.2 任意分辨率的VGA显示控制器设计

11.3 “Hello World”的VGA显示驱动实现

11.3.1 “Hello World”字模的提取

11.3.2 C2Mif软件的介绍与Mif文件的生成

11.3.3 VGA字符显示的FPGA实现

11.4 彩色图像的VGA显示驱动电路

11.4.1 彩色图像显示的理论分析

11.4.2 彩色图像的数据提取

11.4.3 VGA彩色图像显示的FPGA实现

第三部分 FPGA高级进阶

第12章 基于SDRAM的VGA显示控制器的设计与实现

12.1 跨时钟域数据交互

12.2 SDRAM的介绍及其控制器的移植与优化

12.2.1 SDRAM的特性及时序驱动介绍

12.2.2 SDRAM的硬件驱动电路设计

12.2.3 SDRAM控制器的移植与优化

12.2.4 Sdram_Control_2Port的封装与协议制定

12.3 基于SDRAM的VGA显示控制器的实现

第13章 基于OV7725的摄像头视频图像采集系统

13.1 系统框架设计思路分析

13.1.1 系统框架分析

13.1.2 算法的实现流程

13.2 OV7725摄像头介绍与视频采集实现

13.2.1 CMOS摄像头的简介

13.2.2 OV7725的特性介绍及驱动电路设计

13.2.3 OV7725 SCCB接口及寄存器介绍

13.2.4 OV7725感光阵列与视频时序分析

13.2.5 OV7725寄存器I2C初始化设计

13.2.6 OV7725的视频采集模块设计

13.3 OV7725视频图像显示的实现

13.4 本章小结

第14章 TimeQuest时序分析与实战演练

14.1 写在前面的话

14.2 保持裕量和建立裕量的深刻理解

14.3 时钟约束—内对内模型

14.3.1 内对内模型公式分析

14.3.2 约束时钟及PLL

14.4 output引脚约束—内对外模型

14.4.1 内对外模型公式分析

14.4.2 output引脚约束

14.5 input引脚约束—外对内模型

14.6 阶段性小总结

14.7 约束异常

14.7.1 Set Multicycle Path

14.7.2 Set False Path

14.8 决战SDRAM时序约束

14.9 Altium Designer查看走线报表

第四部分 FPGA终极修炼

第15章 基于FPGA的硬件系统设计

15.1 FPGA芯片选型

15.2 FPGA的与众不同—PCB布局在设计原理图之前

15.3 存储器的选型

15.4 FPGA外围器件的选择与设计

15.4.1 电阻

15.4.2 电容

15.4.3 磁珠

15.4.4 熔丝

15.5 基于核心板的系统设计

15.6 基于低功耗系统的电源选型

15.7 高速系统的PCB设计要点

15.7.1 结构布局

15.7.2 电路板的多层设计

15.7.3 过孔设计要点

15.7.4 防止串扰的布线原则

15.7.5 差分线布线原则

15.7.6 开关电源PCB设计要点

15.8 本章小结

第16章 FPGA与深度学习加速器

16.1 引言

16.2 AI兴起的背景与三要素

16.3 深度学习背后的技术—AI计算平台发展现状

16.3.1 算力需求的来源—深度学习中的训练与推断

16.3.2 深度学习中的计算平台

16.3.3 深度学习与FPGA

16.4 深度学习的FPGA设计导向

16.5 基于FPGA的深度学习加速器的优化要点

16.5.1 流式处理与构架优化对数据复用率的提升

16.5.2 CNN中的数据复用

16.5.3 片上存储

16.5.4 位宽压缩

16.5.5 基于稀疏的模型压缩与计算架构

16.6 CNN的FPGA加速器设计

16.6.1 CNN中的基本算子

16.6.2 CNN加速器中的卷积计算

16.6.3 CNN加速器中的存储器优化

16.6.4 CNN加速器中的非卷积运算单元

16.6.5 CNN加速器的数据依赖与任务并行

16.6.6 CNN加速器的设计——实例1

16.6.7 CNN加速器的设计——实例2

16.7 CNN设计思路的讨论

本章小结

本章参考文献

缩略语对照表

会议缩略语对照表

符号对照表

反侵权盗版声明

FPGA设计技巧与案例开发详解(第3版)是2019年由电子工业出版社出版,作者 林海全。

得书感谢您对《FPGA设计技巧与案例开发详解(第3版)》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Unity 3D ShaderLab 开发实战详解(第3版) 电子书
1.一本专一介绍底层渲染的图书 。对着色器的概念、渲染流水线以及图形存储器的解释,扩展了在阴影批处理和渲染优化方面的内容。同时,针对不好理解的体积阴影和体积光,改成了在世界坐标空间内实现的程序。 2.针对Unity 5.x全新改版,删减了一些第2版中难懂且没有实际意义的内容。 3.书中的彩图文件和工程文件全部提供给读者免费下载。
FPGA软件测试与评价技术 电子书
本书主要介绍了业内主流FPGA的结构及特点,基于开发流程,介绍了各种测试工具、第三方仿真工具,主要内容包括FPGA开发流程,FPGA软件测试标准、模型和方法,FPGA测试过程中要使用的工具,FPGA软件测试实例分析,以及FPGA软件测试过程与管理。
网页设计与制作教程:Web前端开发(第6版) 电子书
本书依据《Web前端开发职业技能等级标准(初级)》和部分示范院校的《Web前端技术课程教学标准》编写。
Web应用开发技术与案例教程 电子书
结合多个开发案例,详细介绍Web应用开发中多层次、多方面的内容,使你能够真正掌握系统开发中规律性的知识。
Android Studio应用开发实战详解 电子书
全书共分18章,依次讲解了Android开发基础、搭建Android开发环境、AndroidStudio集成开发环境介绍、AndroidStudio常见操作、分析Android应用程序文件的组成、Gradle技术基础、UI界面布局、MaterialDesign设计语言、核心组件介绍、Android事件处理、图形图像和动画处理、开发音频/视频应用程序、GPS地图定位、Android传感器应用开发、编