在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 12597|回复: 23

[原创] 赛灵思FPGA初学者必备图书 特权同学新书《勇敢的芯伴你玩转赛灵思 FPGA》

[复制链接]
发表于 2017-11-27 12:21:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x


                              

1.jpg


电子设计与嵌入式开发实践丛书

073303

勇敢的芯伴你玩转Xilinx FPGA

吴厚航
编著

宣传语:

Xilinx大学计划经理作序推荐,Xilinx FPGA零基础快速入门,基础概念阐释、板级设计解析、丰富的Verilog例程讲解

编辑推荐:

1)本书基于Xilinx公司的Spartan6 FPGA器件,“理论+实践”的学习方式。

2)丰富的例程讲解:基础入门实例、基于FPGA片上资源的应用实例、综合进阶实例。、

3)提供Xilinx FPGA的一站式入门学习方案:基础概念阐释、板级电路解析、开发工具安装配置、丰富的Verilog例程讲解。


作者简介

吴厚航[网名:特权同学]
有近10年的FPGA工程实践经历,擅长记录、分析并总结FPGA开发中的经验与技巧,也非常乐于分享。活跃于各大电子技术网站的FPGA社区或版块,多年来笔耕不辍、风雨无阻,不断地发表FPGA相关文章,其总点击量超过300万。著有多本FPGA技术相关图书,其诙谐的文字、贴近读者实际需求的知识点与经验技巧分享,赢得了广大读者的一致认可。



本书使用Xilinx公司的Spartan 6FPGA器件,由浅入深地引领读者从板级设计、基础入门实例、FPGA片内资源应用实例和综合进阶实例等方面,玩转FPGA逻辑设计。本书基于特定的FPGA实验平台,既有足够的理论知识深度作支撑,也有丰富的例程进行实践学习,并且穿插着笔者多年FPGA学习和开发过程中的经验和技巧。

无论对于希望快速掌握Verilog语言进行FPGA开发的初学者,还是希望快速掌握基于Xilinx Spartan 6 FPGA进行开发的设计者,本书都是很好的选择。


序言

经历了三十多年的发展,FPGA在人工智能、嵌入式视觉这些新兴的领域又一次展示了其可重构、可并行计算的魅力。例如Xilinx最新推出的面向平台、算法及应用开发的 reVISION 堆栈。该堆栈支持OpenCV等计算机视觉处理,还包括对最广泛神经网络的支持(如AlexNetGoogLeNetSqueezeNetSSD FCN),可构建定制神经网络 (CNN/DNN) 并利用各网络层预定义优化 CNN 实现方案所需的功能。

而相比于其他技术,FPGA始终被认为是一个入门门槛比较高的技术,为了让FPGA被更多的开发者使用,Xilinx陆续推出了高层次综合HLxSDAccelSDSoC等开发工具套件,以便让更多软件工程师从软件高层对FPGA进行编程。与此同时,作为全可编程技术的引领者,Xilinx倡导软件定义、硬件优化的设计理念。通过软件的方法快速完成原型设计,但在追求差异化时,往往需要在底层硬件上完成独门设计和优化以获取更高的性能,更低的资源占用、功耗等。这就需要工程师自底向上,对底层架构、时序优化、接口类型等方面有深入的理解。

自顶向下还是自底向上,在如此多的新技术中,作为新入门者,该从何入手?如果你是软件爱好者,可以试试高层综合;如果你是电子爱好者,那可以从硬件底层做起。不论是哪个切入点,千里之行,始于足下,最好的办法是动手做起来。

Spartan系列作为Xilinx低成本的平台,非常适合作为入门首选平台。著名众筹网站KickstarterFPGA项目中选用最多的芯片就是Spartan系列。而对于愿意从底层硬件入手,从底层逻辑门开始搭建整个电子系统的爱好者来讲,也属于电子设计行业中的“斯巴达勇士”。

本书正是一本不可多得的从底层入手的图书,手把手地从FPGA原理开始介绍,到基本逻辑门设计再到常用的接口设计,通过对这些基础案例的讲解以及设计体会的分享,让读者快速掌握Xilinx FPGA开发流程。吴厚航在FPGA领域有多年的开发经验,同时也是一位非常乐于分享的工程师。与厚航认识很多年,很荣幸他能将其Xilinx的使用经验进行分享。对于勇于接受挑战的爱好者,那就随着厚航的分享,一起来发现底层硬件设计和优化的乐趣吧!


Xilinx大学计划经理陆佳华

20179


Foreword

前言


FPGA技术在当前的电子设计领域越来越火热,虽然它的成本还是高高在上,但是它给电子系统所带来的不可限量的速度和带宽以及在灵活性、小型性方面的优势,越来越为对性能要求高、偏重定制化需求的开发者所青睐。因此,越来越多的电子工程师和电子专业在校学生希望能够掌握这门技术。而一门电子技能的掌握,单凭几本初级入门教材是很困难的。笔者结合自身的学习经历,为广大学习者量身打造了基于低成本、高性价比的Xilinx Spartan 6 FPGA器件的硬件开发学习平台。基于这个平台,配套本教材的各种基础概念阐释和例程讲解,相信可以帮助读者快速掌握这一门新技术。

本书共分为以下9章。

1章是基础中的基础,讲述可编程器件的一些基本概念及其主要应用领域、相比于传统技术的优势和开发流程。

2章从FPGA开发平台的电路板设计入手,介绍FPGA板级硬件电路设计要点,以及本书配套开发平台的周边外围电路的设计。

3章从最基础的01开始回顾数字电路的基础,也会深入探讨读者所关心的可编程器件的内部架构和原理。

4章讲述开发环境的搭建,包括Xilinx FPGA集成开发环境ISE、仿真工具Modelsim、文本编辑器Notepad++以及下载器驱动和UART驱动安装,帮助读者快速搞定学习路上遇到的最棘手的“软”问题。

5章和第6章完成最基本的工程创建、语法检查、仿真验证以及编译,甚至在线板级调试和代码固化,带领学习者初步掌握基于Xilinx ISEFPGA开发流程。

7章手把手带领读者完成12个最基本的入门实例。

8章用6个实例帮助读者熟悉FPGA除了逻辑资源以外的丰富资源,如PLL,可配置为ROMRAMFIFO的内嵌存储器,在线逻辑分析仪ChipScope

9章的15个例程,是对前面一些例程的集成整合,力图通过大量例程实践,帮助读者熟练掌握FPGA的基本开发设计。

本书既有对基础理论知识专门的讲解,也有非常详细的实例演练和讲解,更多的是在实践中传递实用的设计技巧和方法,非常适合初学者。

本书配套例程下载链接: http://pan.baidu.com/s/1jGjAhEm

本书配套开发平台淘宝链接: http://myfpga.taobao.com/

吴厚航(网名: 特权同学)

20178月于上海


Contents

目录

1FPGA开发入门

1.1FPGA基础入门

1.2FPGA的优势在哪里

1.3FPGA应用领域

1.4FPGA开发流程

2章实验平台“勇敢的芯”板级电路详解

2.1板级电路整体架构

2.2电源电路

2.3复位与时钟电路

2.3.1关于FPGA器件的时钟

2.3.2关于FPGA器件的复位

2.3.3实验平台电路解析

2.4FPGA下载配置电路

2.5SRAM接口电路

2.6ADC/DAC芯片电路

2.7UART接口电路

2.8RTC接口电路

2.9导航按键电路

2.10VGA显示接口电路

2.11蜂鸣器、数码管、流水灯、拨码开关电路

2.12超声波接口、外扩LCD接口电路

3章逻辑设计基础

3.101——精彩世界由此开始

3.2表面现象揭秘——逻辑关系

3.3内里本质探索——器件结构

4章软件安装与配置

4.1ISE14.6软件安装

4.1.1安装文件复制与解压缩

4.1.2虚拟光驱或解压缩安装

4.1.3ISE14.6安装

4.2ModelsimSE 10.1安装

4.2.1安装文件复制与解压缩

4.2.2ModelsimSE安装

4.3文本编辑器Notepad++安装

4.4ISE中使用Notepad++的关联设置

4.5ISEModelsim联合仿真库编译

4.5.1操作系统确认

4.5.2Xilinx库编译

4.6ISEModelsim联合仿真关联设置

4.6.1modelsim.ini内容复制与粘贴

4.6.2ISE设置

4.7PlatformCable USB驱动安装

4.8串口芯片驱动安装

4.8.1驱动安装

4.8.2设备识别

勇敢的芯伴你玩转Xilinx FPGA

5章基于仿真的第一个工程实例

5.1新建工程

5.2Verilog源码文件创建与编辑

5.2.1Verilog源码文件创建

5.2.2Verilog源码文件编辑

5.3Verilog语法检查

5.4Modelsim仿真验证

5.4.1ISE基本设置

5.4.2测试脚本创建与编辑

5.4.3调用Modelsim仿真

6章基于板级调试的第二个工程实例

6.1PWM蜂鸣器驱动之功能概述

6.1.1功能概述

6.1.2设计源码

6.2PWM蜂鸣器驱动之引脚分配

6.2.1工程移植

6.2.2PlanAhead引脚分配

6.2.3脚本直接引脚分配

6.3PWM蜂鸣器驱动之综合、实现与配置文件产生

6.4PWM蜂鸣器驱动之FPGA在线下载配置

6.4.1开启iMPACT

6.4.2初始化下载线缆

6.4.3下载配置

6.5PWM蜂鸣器驱动之FPGA配置芯片固化

6.5.1PROM烧录文件生成

6.5.2固化PROM

6.6PWM蜂鸣器驱动之复位与FPGA重配置功能

6.6.1复位功能

6.6.2在线重配置功能

6.6.3配置状态指示灯

7章基础入门实例

7.1蜂鸣器开关实例

7.1.1功能简介

7.1.2代码解析

7.1.3打开工程

7.1.4下载配置操作

7.2流水灯实例

7.2.1功能简介

7.2.2代码解析

7.2.3下载配置

7.33?8译码器实验

7.3.1功能简介

7.3.2代码解析

7.3.3板级调试

7.4按键消抖与LED开关实例

7.4.1按键消抖原理

7.4.2功能简介

7.4.3代码解析

7.4.4板级调试

7.5经典模式流水灯实验

7.5.1功能简介

7.5.2代码解析

7.5.3板级调试

7.6基于PLL分频计数的LED闪烁实例

7.6.1PLL概述

7.6.2功能简介

7.6.3新建IP核文件

7.6.4PLL配置

7.6.5模块化设计概述

7.6.6模块化设计实践

7.6.7代码解析

7.6.8板级调试

7.7数码管驱动实例

7.7.1数码管驱动原理

7.7.2功能概述

7.7.3代码解析

7.7.4板级调试

7.8SRAM读写测试

7.8.1SRAM读写时序解读

7.8.2功能简介

7.8.3代码解析

7.8.4Xilinx库设置

7.8.5功能仿真

7.8.6FPGA在线配置

7.8.7触发采样波形

7.9UARTloopback测试

7.9.1功能概述

7.9.2代码解析

7.9.3板级调试

7.10VGA驱动ColorBar显示

7.10.1VGA概述

7.10.2功能简介

7.10.3代码解析

7.10.4板级调试

7.11LCD基本驱动实例

7.11.1LCD驱动时序

7.11.2功能简介

7.11.3代码解析

7.11.4装配

7.11.5板级调试

7.12LCD字符显示驱动

7.12.1字符取模

7.12.2ROM初始化文档创建

7.12.3新建源文件

7.12.4IP选择

7.12.5ROM配置

7.12.6功能简介

7.12.7代码解析

7.12.8板级调试

8FPGA片内资源应用实例

8.1基于ChipScope的超声波测距调试

8.1.1超声波测距原理

8.1.2功能简介

8.1.3代码解析

8.1.4硬件装配

8.1.5ChipScope源文件创建

8.1.6ChipScope配置

8.1.7ChipScope调试

8.2FPGA片内ROM实例

8.2.1功能概述

8.2.2代码解析

8.2.3ROM初始化文档创建

8.2.4新建源文件

8.2.5IP选择

8.2.6ROM配置

8.2.7Xilinx库设置

8.2.8功能仿真

8.2.9FPGA在线调试

8.2.10触发采样波形

8.3FPGA片内RAM实例

8.3.1功能概述

8.3.2代码解析

8.3.3新建源文件

8.3.4IP选择

8.3.5RAM配置

8.3.6功能仿真

8.3.7FPGA在线调试

8.4FPGA片内FIFO实例

8.4.1功能概述

8.4.2代码解析

8.4.3新建源文件

8.4.4IP选择

8.4.5FIFO配置

8.4.6功能仿真

8.4.7FPGA在线调试

8.5FPGA片内异步FIFO实例

8.5.1功能概述

8.5.2代码解析

8.5.3新建源文件

8.5.4IP选择

8.5.5FIFO配置

8.5.6功能仿真

8.5.7FPGA在线调试

8.6FPGA片内ROM FIFORAM联合实例之功能

8.6.1功能概述

8.6.2代码解析

8.6.3功能仿真

8.6.4FPGA在线调试

9章综合进阶实例

9.1基于数码管显示的超声波测距回响脉宽计数

9.1.1功能简介

9.1.2代码解析

9.1.3板级调试

9.2基于均值滤波处理的超声波测距回响脉宽计数

9.2.1功能简介

9.2.2滤波算法与实现

9.2.3代码解析

9.2.4板级调试

9.3基于进制换算的超声波测距结果显示

9.3.1功能简介

9.3.2距离计算公式实现

9.3.3进制换算实现

9.3.4代码解析

9.3.5乘法器IP核创建、配置与例化

9.3.6除法器IP核创建、配置与例化

9.3.7板级调试

9.4倒车雷达实例

9.4.1倒车雷达应用背景

9.4.2功能简介

9.4.3代码解析

9.4.4板级调试

9.5基于SRAM批量读写的UARTbulk测试

9.5.1功能概述

9.5.2代码解析

9.5.3板级调试

9.6基于数码管显示的RTC读取

9.6.1RTC芯片解析

9.6.2功能简介

9.6.3代码解析

9.6.4板级调试

9.7基于UART发送的RTC读取

9.7.1功能简介

9.7.2代码解析

9.7.3板级调试

9.8基于UART收发的RTC读写

9.8.1功能简介

9.8.2代码解析

9.8.3板级调试

9.9基于UART控制的VGA多模式显示

9.9.1功能简介

9.9.2代码解析

9.9.3板级调试

9.10基于LED显示的D/A输出驱动实例

9.10.1D/A芯片概述

9.10.2功能简介

9.10.3代码解析

9.10.4板级调试

9.11基于按键调整和数码管显示的D/A输出实例

9.11.1功能简介

9.11.2代码解析

9.11.3板级调试

9.12波形发生器

9.12.1功能简介

9.12.2代码解析

9.12.3IPCORDIC配置与例化

9.12.4Xilinx库设置

9.12.5功能仿真

9.12.6板级调试

9.13基于数码管显示的A/D采集实例

9.13.1A/D芯片接口概述

9.13.2功能简介

9.13.3代码解析

9.13.4板级调试

9.14A/DD/A联合测试

9.14.1功能简介

9.14.2代码解析

9.14.3板级调试

9.15RTC时间的LCD显示和UART设置

9.15.1功能简介

9.15.2代码解析

9.15.3板级调试

图书购买:

https://item.taobao.com/item.htm?spm=a230r.1.14.35.12193d41yiZwLP&id=561314127388&ns=1&abbucket=1#detail


发表于 2017-12-2 19:18:57 | 显示全部楼层
太感谢分享了。
发表于 2017-12-9 08:14:13 | 显示全部楼层
感谢分享!
发表于 2018-1-29 20:58:58 | 显示全部楼层
谢谢分享
发表于 2018-1-30 20:28:42 | 显示全部楼层
很实用,谢谢分享
发表于 2018-4-28 19:28:56 | 显示全部楼层
谢谢分享
发表于 2018-4-29 06:34:41 | 显示全部楼层
勇敢的芯伴你玩转赛灵思 FPGA
发表于 2018-5-6 20:52:49 | 显示全部楼层
这书现在有电子版的吗?呵呵
发表于 2018-5-8 21:37:00 | 显示全部楼层
回复 3# Anne_xiyuan


    非常感谢,呵呵。
发表于 2018-11-12 11:40:39 | 显示全部楼层
GOOOOOOOOOOOOOOOOD
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-22 14:50 , Processed in 0.041825 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表