标题：FPGA权威指南
基本信息
  作者：Clive "Max" Maxfield(作者), 杜生海(译者)
出版社:人民邮电出版社; 第1版 (2012年1月1日) 
丛书名: 图灵电子与电气工程丛书 
平装:320页 
正文语种:简体中文 
开本:16 
ISBN:9787115267412 
条形码:9787115267412 
商品尺寸: 25.8 x 18.2 x 1.6 cm 
商品重量: 522 g
内容简介
《FPGA权威指南》是目前最实用的FPGA 类图书的精华集粹，全书共12 章，内容涵盖FPGA 设计基础知识以及FPGA 设计全流程。《FPGA权威指南》重点突出，实用性强，所列实例均经过验证。
《FPGA权威指南》适合电子工程师阅读，也可作为高等院校相关专业师生的参考指南。 
目录
目　录
第1章　FPGA结构比较　1
1.1　一点提醒　1
1.2　一些背景信息　2
1.3　反熔丝、SRAM与其他　3
1.3.1　基于SRAM的器件　3
1.3.2　基于SRAM器件的安全问题和解决方案　3
1.3.3　基于反熔丝的器件　4
1.3.4　基于EPROM的器件　5
1.3.5　基于E2PROM/FLASH的器件　5
1.3.6　FLASH-SRAM混合器件　6
1.3.7　小结　6
1.4　细粒度、中等粒度和粗粒度体系结构　6
1.5　基于MUX与基于LUT的逻辑块　8
1.5.1　基于MUX的体系结构　8
1.5.2　基于LUT的体系结构　8
1.5.3　基于MUX还是基于LUT　10
1.5.4　3、4、5或6输入LUT　10
1.5.5　LUT、分布式RAM与移位寄存器　10
1.6　CLB、LAB与slice　11
1.6.1　Xilinx逻辑单元　12
1.6.2　Altera逻辑部件　12
1.6.3　slicing和dicing　12
1.6.4　CLB和LAB　13
1.6.5　分布式RAM和移位寄存器　14
1.7　快速进位链　14
1.8　嵌入式RAM　15
1.9　嵌入式乘法器、加法器和MAC等　15
1.10　嵌入式处理器核(硬核与软核)　16
1.10.1　微处理器硬核　17
1.10.2　微处理器软核　18
1.11　时钟树和时间管理器　19
1.11.1　时钟树　19
1.11.2　时钟管理器　19
1.12　通用I/O　22
1.12.1　可配置I/O标准　22
1.12.2　可配置I/O阻抗　23
1.12.3　核电压与I/O电压　23
1.13　吉比特收发器　24
1.14　IP硬核、IP软核与IP固核　25
1.15　系统门与实际门　25
1.16　FPGA年龄　27
第2章　设计技巧、原则与指导　28
2.1　硬件描述语言　29
2.2　自顶向下设计　37
2.2.1　使用HDL　38
2.2.2　书面设计规范　38
2.2.3　分配资源　38
2.2.4　设计划分　38
2.2.5　设计灵活性与优化　38
2.2.6　可重用性　38
2.2.7　布局规划　39
2.2.8　验证　39
2.2.9　了解体系结构　39
2.3　同步设计　40
2.3.1　同步设计五原则　40
2.3.2　竞争条件　41
2.3.3　延迟相关逻辑　43
2.3.4　保持时间违例　44
2.3.5　毛刺　45
2.3.6　门控时钟　47
2.3.7　异步信号与亚稳态　47
2.3.8　允许使用异步逻辑的情况　51
2.4　浮动节点　52
2.5　总线竞争　53
2.6　独热状态编码　54
2.7　可测性设计　55
2.8　测试冗余逻辑　56
2.8.1　什么是冗余逻辑　56
2.8.2　怎样测试冗余逻辑　57
2.9　初始化状态机　58
2.10　可观测节点　58
2.11　扫描技术　59
2.12　内建自测试　60
2.13　特征分析　61
2.14　小结　62
第3章　VHDL基础　64
3.1　引言　64
3.2　实体：模型接口　65
3.2.1　实体定义　65
3.2.2　端口　66
3.2.3　通用属性语句　66
3.2.4　常数　66
3.2.5　实体举例　67
3.3　构造体：模型行为　67
3.3.1　构造体的基本定义　67
3.3.2　构造体声明　67
3.3.3　构造体语句　68
3.4　进程：VHDL中的基本功能单元　68
3.5　基本变量类型和操作符　69
3.5.1　常数　69
3.5.2　信号　69
3.5.3　变量　69
3.5.4　布尔操作符　69
3.5.5　算术操作符　70
3.5.6　比较操作符　70
3.5.7　移位函数　70
3.5.8　拼接　70
3.6　判断与循环　71
3.6.1　if-then-else语句　71
3.6.2　case语句　72
3.6.3　for语句　72
3.6.4　while循环　72
3.6.5　exit语句　73
3.6.6　next语句　73
3.7　层次化设计　73
3.7.1　函数　73
3.7.2　包　73
3.7.3　元件　74
3.7.4　过程　75
3.8　调试模型　75
3.9　基本数据类型　75
3.9.1　基本类型　75
3.9.2　数据类型: bit　76
3.9.3　数据类型: Boolean　76
3.9.4　数据类型: 整数　76
3.9.5　数据类型: 字符型　77
3.9.6　数据类型: 实数　77
3.9.7　数据类型: 时间　77
3.10　小结　77
第4章　存储器建模　78
4.1　存储器阵列　78
4.1.1　Shelor方法　79
4.1.2　VITAL_Memory包　80
4.2　存储器功能建模　80
4.2.1　使用行为模型方法　80
4.2.2　使用VITAL2000方法　89
4.3　VITAL_Memory路径延迟　95
4.4　VITAL_Memory时序约束　97
4.5　预加载存储器　97
4.5.1　行为存储器预加载　98
4.5.2　VITAL_Memory预加载　100
4.6　其他类型存储器的建模　100
4.6.1　同步静态RAM　100
4.6.2　DRAM　103
4.6.3　SDRAM　104
4.7　小结　109
第5章　同步状态机设计与分析　110
5.1　引言　110
5.2　时序状态机模型　112
5.3　全记录状态图　115
5.4　基本记忆单元　118
5.4.1　置位优先基本单元　118
5.4.2　复位优先基本单元　120
5.4.3　激励表组合形式　121
5.4.4　基本单元的混合输出　122
5.4.5　基本单元的混合输出响应　123
5.5　触发器简介　124
5.5.1　触发机制　125
5.5.2　触发器类型　126
5.5.3　触发器设计的层次化流程图和模型　126
5.6　FSM(触发器)设计步骤及映射算法　127
5.7　D触发器：通用型　128
5.7.1　D锁存器　128
5.7.2　上升沿触发D触发器　131
5.7.3　主从式D触发器　134
5.8　触发器的转换：T、JK触发器以及其他触发器　136
5.8.1　T触发器及其从D触发器的转换方法　137
5.8.2　JK触发器及其从D触发器转换的方法　138
5.8.3　用JK触发器设计T触发器和D触发器　140
5.8.4　激励表回顾　141
5.8.5　专用触发器和锁存器的设计　142
5.9　锁存器和触发器中的严重时序问题：警告　145
5.10　异步预置位和复位　146
5.11　触发器的建立时间和保持时间要求　147
5.12　使用边缘触发器设计简单的同步状态机：映射转换　149
5.12.1　三比特二进制加减计数器设计：D到T的卡诺图转换　149
5.12.2　序列检测器的设计：D到JK卡诺图的转换　152
5.13　简单状态机分析　156
5.14　简单状态机的VHDL描述　159
5.14.1　上升沿D触发器的VHDL行为级描述　160
5.14.2　简单状态机的VHDL行为级描述　160
参考文献　161
第6章　嵌入式处理器　163
6.1　引言　163
6.2　简单的嵌入式处理器　164
6.2.1　嵌入式处理器体系结构　164
6.2.2　基本指令　165
6.2.3　取指执行周期　166
6.2.4　嵌入式处理器的寄存器分配　166
6.2.5　基本指令集　167
6.2.6　结构级还是行为级　168
6.2.7　机器码指令集　168
6.2.8　微处理器的结构单元　169
6.2.9　处理器函数包　169
6.2.10　程序计数器　170
6.2.11　指令寄存器　171
6.2.12　算术逻辑单元　172
6.2.13　存储器　173
6.2.14　微控制器　175
6.2.15　简单微处理器总结　178
6.3　FPGA中的软核处理器　178
6.4　小结　178
第7章　数字信号处理　179
7.1　概述　179
7.2　基本DSP系统　180
7.3　基本DSP术语　181
7.4　DSP体系结构　182
7.5　DSP元件中的并行执行　183
7.6　FPGA中的并行执行　184
7.7　何时使用FPGA实现DSP功能　185
7.8　FPGA的DSP设计考虑　186
7.8.1　时钟与信号的布线　186
7.8.2　流水线　187
7.8.3　算法实现的选择　187
7.8.4　DSP知识产权　187
7.9　FIR滤波器概念举例　188
7.10　小结　189
第8章　嵌入式音频处理基础　191
8.1　引言　191
8.1.1　声音是什么　192
8.1.2　音频信号　193
8.1.3　语音处理　193
8.2　音频信源与音频信宿　194
8.2.1　在模拟与数字音频信号之间转换　194
8.2.2　音频转换器背景知识　195
8.2.3　连接到音频转换器　196
8.3　互连　199
8.3.1　连接器　199
8.3.2　数字连接　200
8.4　动态范围与精度　200
8.5　音频处理方法　207
8.5.1　如何将数据输入到处理器内核　207
8.5.2　块处理与采样处理　207
8.5.3　双缓存　207
8.5.4　二维DMA　208
8.5.5　基本操作　208
8.5.6　信号生成　210
8.5.7　滤波与算法　210
8.5.8　采样率变换　211
8.5.9　音频压缩　212
8.5.10　语音压缩　214
参考文献　216
第9章　嵌入式视频与图像处理基础　217
9.1　引言　217
9.1.1　人类视觉感知　218
9.1.2　什么是视频信号　219
9.2　广播电视系统——NTSC和PAL制式　220
9.2.1　视频分辨率　220
9.2.2　隔行扫描和逐行扫描　221
9.3　颜色空间　222
9.3.1　伽马校正　222
9.3.2　色度下采样　224
9.4　数字视频　226
9.4.1　ITU-R BT.601(前称为CCIR-601)　226
9.4.2　ITU-R BT.656(前称为CCIR-656)　227
9.5　从系统角度看视频　230
9.5.1　视频源　230
9.5.2　视频显示　235
9.6　嵌入式视频处理考虑　238
9.6.1　视频端口特性　238
9.6.2　视频ALU　240
9.6.3　DMA考虑　242
9.6.4　视频算法分类　244
9.6.5　带宽计算　244
9.6.6　去隔行处理　246
9.6.7　扫描速率转换　246
9.6.8　像素处理　247
9.6.9　处理图像边界　248
9.6.10　色度重采样、伽马校正和颜色转换　249
9.6.11　缩放与剪切　249
9.6.12　显示处理　250
9.7　压缩和解压缩　251
9.7.1　无损和有损压缩　252
9.7.2　图像压缩　253
9.7.3　视频压缩　254
9.7.4　EMP中的编码与解码　257
参考文献　259
第10章　利用Simulink中的框图设计流式FPGA应用　261
10.1　使用基于流的操作符设计高性能数据路径　262
10.2　图像处理设计引擎　263
10.2.1　将RGB视频转换为灰度视频　263
10.2.2　二维视频滤波　265
10.2.3　将视频滤波器映射到BEE2FPGA开发平台　268
10.3　在Simulink中加入控制　269
10.3.1　使用Simulink块设计控制器　270
10.3.2　使用Matlab M语言设计控制器　270
10.3.3　使用VHDL或Verilog设计控制器　272
10.3.4　使用嵌入式微处理器设计控制器　272
10.4　组件重用：简单与复杂子系统库　273
10.4.1　信号处理元件　273
10.4.2　瓦片式子系统　273
10.5　小结　275
致谢　276
参考文献　276
第11章　梯形图与功能框图编程　278
11.1　梯形图　279
11.2　逻辑功能　281
11.2.1　与　282
11.2.2　或　283
11.2.3　非　283
11.2.4　与非　284
11.2.5　或非　285
11.2.6　异或　286
11.3　锁存器　286
11.4　多路输出　287
11.5　输入程序　289
11.6　功能框图　290
11.6.1　逻辑门　291
11.6.2　布尔代数　293
11.7　编程举例　295
第12章　定时器　298
12.1　定时器类型　298
12.2　对定时器编程　299
12.2.1　序列　299
12.2.2　级联定时器　301
12.2.3　循环开关定时器　302
12.3　延迟关定时器　302
12.4　脉冲定时器　303
12.5　编程实例　305
索引　306