新書推薦:
《
沈括的知识世界:一种闻见主义的实践(中华学术译丛)
》
售價:NT$
398.0
《
大思维:哥伦比亚商学院六步创新思维模型
》
售價:NT$
332.0
《
宏观经济学(第三版)【2024诺贝尔经济学奖获奖者作品】
》
售價:NT$
709.0
《
UE5虚幻引擎必修课(视频教学版)
》
售價:NT$
505.0
《
真需求
》
售價:NT$
505.0
《
阿勒泰的春天
》
售價:NT$
230.0
《
如见你
》
售價:NT$
234.0
《
人格阴影 全新修订版,更正旧版多处问题。国际分析心理学协会(IAAP)主席力作
》
售價:NT$
305.0
|
內容簡介: |
《FPGA深度解析》是一本FPGA开发经验总结式的书籍,以实例讲解的方式详细介绍了FPGA的概念、使用场景及开发流程,对FPGA的芯片架构做了详细说明;同时,对FPGA的开发流程,包括可综合RTL代码的编写及验证、工具的综合及布局布线、静态时序分析等概念做了详细分析。在此基础上,还详细介绍了FPGA常用处理模块的设计,对重要的基础性设计模块,例如异步FIFO、高速SerDes接口以及高速LVDS的接收、抽取滤波器的设计等也进行了深入讲解。
《FPGA深度解析》的内容全面、实用,讲解通俗易懂,适合没有形成FPGA设计思想概念但是有一定FPGA开发基础的设计人员或者是对FPGA设计感兴趣的读者参考。
|
關於作者: |
樊继明 [网名jimfan],长期从事数字逻辑设计,有丰富的实践经验,曾经从事过通讯设备ASIC设计以及FPGA原型机开发工作、超声诊断系统设计等工作。
陆锦宏,曾就职于中兴通讯微电子研究院,从事过通讯设备算法的ASIC实现、原型机的开发以及广播监视器领域FPGA设计的总体框架以及算法实现等工作。
|
目錄:
|
第1章 FPGA简介
1.1什么是FPGA
1.1.1FPGA简述
1.1.2FPGA与MCU芯片的区别
1.2FPGA的应用场景
1.3FPGA现状
1.4开发FPGA需要的HDL语言
1.5FPGA设计流程
1.6一个使用FPGA的经典实例
小结
第2章 FPGA结构与片上资源
2.1FPGA主要厂商
2.2FPGA的结构
2.3基于LUT的设计方法
2.4LE与LAB
2.5全局网络
2.6可配置IO
2.7内部存储资源
2.8实例:FPGA是如何实现用户设计的
2.9其他资源
小结
第3章 可综合设计与仿真验证
3.1RTL
3.2可综合设计
3.2.1整体结构
3.2.2变量类型、时序逻辑与组合逻辑
3.2.3运算符和条件语句
3.2.4例化
3.2.5parameter与define
3.3仿真验证
3.3.1一个最简单的Testbench验证平台实例
3.3.2带有比对功能和参考模型的验证模型
3.4与Verilog仿真器有关的一点知识
小结
第4章 综合、布局与布线
4.1工作流程
4.2综合以及优化
4.2.1综合优化的概念
4.2.2RTL代码综合优化思想
4.3布局与布线
小结
第5章 静态时序分析
5.1什么叫做静态时序分析
5.2时序分析模型
5.2.1时序分析最基础模型
5.2.2芯片外部输入输出时序分析模型
5.3时序分析中的各项参数
5.3.1概述
5.3.2时序分析公式的推导
5.4时序约束文件的编写
5.5实例:基于Timequest的时序约束和分析
5.5.1Timequest使用简介
5.5.2如何阅读时序报告
小结
第6章 功耗控制
6.1CMOS门电路简介
6.2FPGA功耗的构成
6.3时钟网络及其功耗
6.4门控时钟
6.5划分时钟区域
6.6RAM的时钟使能
6.7使用双沿触发器
6.8CMOS导通电流
6.9减少供电电压
6.10改变IO的终端方式
6.11实例:FPGA低功耗设计
小结
第7章 跨时钟域传输
7.1实例:跨时钟域处理
7.2跨时钟域的亚稳态现象
7.3亚稳态的多径传输
7.4两级触发器同步器
7.5多径与多级寄存器同步链
7.6组合逻辑信号的同步化
7.7快时钟域信号的同步化
7.8多位信号的跨时钟域处理
7.9实际设计中规划跨时钟方案的重要性
小结
第8章 复位电路
8.1复位的用途
8.2无复位电路
8.3异步复位
8.4实例:异步复位测试
8.5同步复位
8.6异步复位与同步撤离
8.7复位网络
8.8多时钟域复位方案
小结
第9章 异步FIFO原理及使用
9.1实例:异步FIFO的应用
9.2同步FIFO与异步FIFO
9.3异步FIFO设计思想
9.4异步FIFO设计中的关键技术
9.4.1异步FIFO读写地址采样
9.4.2FIFO的深度
9.5异步FIFO逻辑实现代码
9.5.1信号定义
9.5.2RTL代码
9.6异步FIFO的读写时钟差别对格雷码的影响
9.7FIFO的应用注意事项
小结
第10章 高效SDRAM控制器的设计
10.1SDRAM简介
10.1.1SDRAM特点及其编址方式
10.1.2SDRAM原理
10.2SDRAM时序及操作特性
10.3实例:高效SDRAM控制器设计
10.3.1SDRAM控制器的设计思想
10.3.2SDRAM控制器内部模块设计
10.3.3SDRAM控制器与SDRAM之间的芯片接口时序问题
小结
第11章 高速SerDes接口设计
11.1高速SerDes接口的原理及其系统组成
11.1.1SerDes概述
11.1.2Cyclone IV GX高速收发器系统框架
11.1.3高速收发器时钟架构
11.2高速SerDes接口的电气特性
11.3动态可重配IP
11.4实例:高速SerDes接口逻辑设计
11.4.1设计需求
11.4.2设计具体实现
小结
第12章 常用数字信号处理的FPGA实现
12.1模拟信号与数字信号
12.2数字信号的定点表示方式
12.2.1有符号和无符号的表示方法
12.2.2定点化运算法则
12.3实例:FFT处理器在FPGA上的实现
12.3.1FFT基本原理
12.3.2FFT的信号流图
12.4FFT在FPGA中的实现
12.4.1FFT的定点化
12.4.2FFT的实现细节
12.5实例:多速率抽取插值滤波器在FPGA上的实现
12.5.1多速率抽取滤波器的优化电路
12.5.2多速率抽取滤波器的实现
小结
第13章 高速LVDS信号的接收
13.1什么是LVDS信号
13.2实例:使用FPGA接收LVDS信号
13.3采用input delay约束保证源同步接收的正确性
13.3.1源同步输入时序分析
13.3.2使用input delay约束实现时序收敛
13.4使用iserdes及调整采样时钟方式来接收高速LVDS信号
13.4.1使用iserdes和idelay部件来接收高速LVDS信号的电路
13.4.2具体实现结构
小结
第14章 布局布线失败怎么办
14.1布局布线失败
14.2找到设计的hot spot
14.3解决布线拥塞问题
小结
参考文献
|
內容試閱:
|
1.1.1 FPGA简述
FPGAField Programble Gate Array是一种完成通用功能的可编程逻辑芯片,即可以对其进行编程实现某种逻辑处理功能。它集成了大量的原始逻辑资源触发器、查找表LUT和布线,并且提供了可配置的I/O口及硬IPBlock RAM、PLL、DSP、Serdes等,依赖于工程师采用HDLHardware Description Language,硬件描述语言语言进行编码,各逻辑并行工作来实现指定的功能。它是基于硬件描述的芯片。
通俗来说,FPGA就像一块面包板。还有一种可编程逻辑芯片CPLDComplexProgrammable Logic Device,复杂可编程逻辑器件,其与FPGA一样具有“面包板”的属性。但是,FPGA与CPLD又有区别:FPGA的逻辑规模比CPl。D大得多,拥有更丰富的触发器资源、DSP单元以及支持更加丰富的I/数量与类型。简单地说,FPGA是一块规模极大、复杂度极高的“面包板”,而CPLD则是一块规模很小、复杂度低得多的“面包板”。
FPGA芯片上有许多门电路器件和少量的I/、IP专用电路,以及许多待连接的走线。没进行编码之前,这些电路只有本身的基本功能,并不具备系统级的功能。编码之后,这块面包板上门和门之间被连接起来,I/O、IP按照设计进行配置和连接,最后形成一块连接了的、具有特定功能的电路板。就像一些与非门和触发器在面包板上按照累加器的功能进行连接,并用来点亮七段数码管一样,只不过很多基于FPGA设计的逻辑电路规模非常大,大到难以手工连接这块“面包板”,所以需要通过编写HDL代码从而借助IDE自动完成这些工作。
……
|
|