FPGA设计实战


请输入要查询的词条内容:

FPGA设计实战




基本信息


书名: FPGA设计实战书号: 978-7-115-20810-1

原书名: Design Recipes for FPGAs

原出版社: Newnes

丛书名: 图灵电子与电气工程丛书

分类: 电子电气 >> 电力电子

作者: Peter R.Wilson

译者: 杜生海 等

出版日期: 2009-06-16

语种: 简体中文

开本: 16开

页数: 240

摘要


本书是为FPGA工程师量身定制的设计参考指南,不仅介绍了FPGA基本概念,还介绍了设计逻辑和技巧,使读者能够开发出实际高效的代码。

本书适用于电子工程师阅读,也可作为高等院校相关专业师生的参考指南。

目录


第一部分 概述

第1章 绪论 2

第2章 FPGA基础知识 3

2.1 引言 3

2.2 FPGA的发展 3

2.3 可编程逻辑器件 3

2.4 现场可编程门阵列 6

2.5 FPGA设计技术 7

2.6 FPGA的设计约束 7

2.7 小结 8

第3章 VHDL基础 9

3.1 引言 9

3.2 实体:模型接口 10

3.2.1 实体定义 10

3.2.2 端口 10

3.2.3 通用属性语句 10

3.2.4 常数 11

3.2.5 实体举例 11

3.3 构造体:模型的行为 11

3.3.1 构造体的基本定义 11

3.3.2 构造体声明 12

3.3.3 构造体语句 12

3.4 进程:VHDL中的基本功能单元 12

3.5 基本的变量类型和操作符 13

3.5.1 常数 13

3.5.2 信号 13

3.5.3 变量 14

3.5.4 布尔操作符 14

3.5.5 算术操作符 14

3.5.6 比较操作符 15

3.5.7 移位函数 15

3.5.8 拼接 15

3.6 判断与循环 15

3.6.1 if-then-else语句 15

3.6.2 case语句 16

3.6.3 for语句 17

3.6.4 While循环 17

3.6.5 exit语句 17

3.6.6 next语句 17

3.7 层次化设计 18

3.7.1 函数 18

3.7.2 包 18

3.7.3 元件 19

3.7.4 过程 20

3.8 调试模型 20

3.9 基本数据类型 20

3.9.1 基本类型 20

3.9.2 数据类型:bit 20

3.9.3 数据类型:boolean 21

3.9.4 数据类型:integer 21

3.9.5 数据类型:字符型 21

3.9.6 数据类型:实数 21

3.9.7 数据类型:时间 22

3.10 小结 22

第4章 设计自动化与FPGA测试 23

4.1 仿真 23

4.1.1 测试平台 23

4.1.2 测试平台的目标 23

4.1.3 简单的测试平台:实例化元件 23

4.1.4 增加测试激励 24

4.2 库 25

4.2.1 引言 25

4.2.2 库的使用 26

4.2.3 标准逻辑库 26

4.2.4 std_logic类型定义 27

4.3 综合 28

4.3.1 综合设计流程 28

4.3.2 综合相关事项 28

4.3.3 RTL设计流程 29

4.4 物理设计流程 29

4.5 布局布线 30

4.6 时序分析 30

4.7 设计缺陷 30

4.8 FPGA设计中的VHDL问题 31

4.8.1 初始化 31

4.8.2 浮点数及其操作 31

4.9 小结 31

第二部分 应用

第5章图像与高速处理 34

5.1 引言 34

5.2 摄像头接口 35

5.2.1 硬件接口 35

5.2.2 数据率 35

5.2.3 拜尔模式 35

5.2.4 存储器需求 35

5.3 开始 37

5.4 确定接口 38

5.5 定义顶层设计 38

5.6 系统模块定义与接口 38

5.6.1 系统分解 38

5.6.2 鼠标和键盘接口 39

5.6.3 存储器接口 39

5.6.4 显示接口:VGA 39

5.7 摄像头连接接口 40

5.8 PC接口 40

5.9 小结 41

第6章 嵌入式处理器 42

6.1 引言 42

6.2 一个简单的嵌入式处理器 42

6.2.1 嵌入式处理器架构 42

6.2.2 基本指令 43

6.2.3 取指执行周期 44

6.2.4 嵌入式处理器的寄存器分配 45

6.2.5 一个基本的指令集 45

6.2.6 结构级还是行为级 46

6.2.7 机器码指令集 47

6.2.8 微处理器的结构单元 47

6.2.9 处理器函数包 48

6.2.10 程序计数器 49

6.2.11 指令寄存器 50

6.2.12 算术和逻辑单元 51

6.2.13 存储器 52

6.2.14 微控制器 54

6.2.15 简单微处理器总结 58

6.3 FPGA中的软核处理器 58

6.4 小结 58

第三部分 设计工具箱

第7章 串行通信 60

7.1 引言 60

7.2 曼彻斯特编解码 60

7.3 不归零编解码 63

7.4 不归零反转编解码 63

7.5 RS-232 65

7.5.1 引言 65

7.5.2 RS-232波特率产生器 65

7.5.3 RS-232接收器 66

7.6 通用串行总线 69

7.7 小结 71

第8章 数字滤波器 72

8.1 引言 72

8.2 S域到Z域的变换 72

8.3 用VHDL实现Z域的函数 74

8.3.1 引言 74

8.3.2 增益模块 74

8.3.3 和与差 75

8.3.4 除法模型 76

8.3.5 单位延迟模型 77

8.4 基本低通滤波器模型 78

8.5 FIR滤波器 81

8.6 IIR滤波器 82

8.7 小结 82

第9章 安全系统 83

9.1 块加密简介 83

9.2 费斯特尔格子的结构 83

9.3 数据加密标准 85

9.3.1 引言 85

9.3.2 DES的VHDL实现 87

9.3.3 DES的验证 91

9.4 高级加密标准 92

9.5 小结 109

第10章 存储器 110

10.1 引言 110

10.2 用VHDL对存储器进行建模 110

10.3 只读存储器 111

10.4 随机存取存储器 112

10.5 SRAM 114

10.6 Flash存储器 115

10.7 小结 117

第11章PS/2鼠标接口 118

11.1 引言 118

11.2 PS/2鼠标基础 118

11.3 PS/2鼠标命令 118

11.4 PS/2鼠标数据包 118

11.5 PS/2操作模式 119

11.6 PS/2滚轮鼠标 119

11.7 基本PS/2鼠标处理模块VHDL代码.119

11.8 修改后的PS/2鼠标处理模块VHDL代码 120

11.9 小结 121

第12章 PS/2键盘接口 122

12.1 引言 122

12.2 PS/2键盘基础 122

12.3 PS/2键盘命令 122

12.4 PS/2键盘数据包 122

12.5 PS/2键盘操作模式 123

12.5.1 基本PS/2键盘处理模块VHDL代码 123

12.5.2 修改后的PS/2键盘处理模块VHDL代码 123

12.6 小结 125

第13章 一个简单的VGA接口 126

13.1 引言 126

13.2 基本像素时序 126

13.3 图像处理 126

13.4 VGA接口的VHDL实现 127

13.5 水平同步 128

13.6 垂直同步 129

13.7 水平和垂直消隐脉冲 130

13.8 计算正确的像素数据 131

13.9 小结 131

第四部分 优化设计

第14章 综合 134

14.1 引言 134

14.2 RTL综合支持的VHDL 134

14.2.1 初始条件 134

14.2.2 并发边沿 135

14.2.3 数字类型 135

14.2.4 wait语句 135

14.2.5 断言 136

14.2.6 循环 136

14.3 一些引起综合失败的情况 136

14.4 综合的内容 136

14.4.1 总体设计结构 136

14.4.2 控制器 137

14.4.3 数据路径 138

14.5 小结 139

第15章 VHDL行为建模 140

15.1 引言 140

15.2 怎样从RTL转向行为级 140

15.3 小结 143

第16章 设计优化 144

16.1 引言 144

16.2 逻辑优化技术 144

16.3 改善性能 145

16.4 关键路径分析 146

16.5 小结 147

第17章 VHDL-AMS 148

17.1 引言 148

17.2 VHDL-AMS简介 148

17.3 模拟引脚:TERMINAL 149

17.4 混合域建模 150

17.5 模拟变量:quantity 150

17.6 VHDL-AMS中的联立方程 151

17.7 一个VHDL-AMS的例子 151

17.7.1 直流电压源 151

17.7.2 电阻 152

17.8 VHDL-AMS中的微分方程 152

17.9 用VHDL-AMS进行混合信号建模.154

17.10 一个基本的开关模型 156

17.11 基本VHDL-AMS比较器模型 157

17.12 多领域建模 159

17.13 小结 160

第18章 设计优化举例:DES 161

18.1 引言 161

18.2 数据加密标准 161

18.3 MOODS 161

18.4 初始设计 161

18.4.1 简介 161

18.4.2 总体结构 162

18.4.3 数据转换 164

18.4.4 密钥转换 166

18.5 初始综合 167

18.6 优化数据路径 168

18.7 最终综合 170

18.8 结果 170

18.9 三重DES 171

18.9.1 引言 171

18.9.2 面积最小:迭代实现 171

18.9.3 延迟最小:流水线方式 173

18.10 方案比较 174

18.11 小结 175

第五部分 基本技术

第19章 计数器 178

19.1 引言 178

19.2 基本二进制计数器 178

19.3 综合简单的二进制计数器 180

19.4 移位寄存器 183

19.5 约翰逊计数器 184

19.6 BCD计数器 185

19.7 小结 186

第20章 锁存器、触发器和寄存器 187

20.1 引言 187

20.2 锁存器 187

20.3 触发器 188

20.4 寄存器 191

20.5 小结 192

第21章 串并转换与并串转换 193

21.1 串并转换 193

21.2 并串转换 194

21.3 小结 195

第22章 ALU功能 196

22.1 引言 196

22.2 逻辑功能 196

22.3 1位加法器 198

22.4 n位结构化加法器 200

22.5 n位可配置加法器 200

22.6 2的补码 201

22.7 小结 203

第23章 译码器与多路复用器 204

23.1 译码器 204

23.2 多路复用器 206

23.3 小结 208

第24章 VHDL中的有限状态机 209

24.1 引言 209

24.2 状态转移图 209

24.3 用VHDL实现有限状态机 210

24.4 小结 211

第25章 VHDL中的定点算法 212

25.1 引言 212

25.2 基本定点类型 213

25.3 定点函数 214

25.3.1 定点数向std_logic_vector的转换 214

25.3.2 定点数向实数的转换 215

25.4 测试定点数函数 216

25.5 小结 218

第26章 二进制乘法 219

26.1 引言 219

26.2 基本二进制乘法 219

26.3 VHDL无符号乘法器 220

26.4 乘法函数的综合 222

26.5 “简单的”乘法 223

26.6 小结 225

第27章 参考书目 226

27.1 引言 226

27.2 VHDL参考书 226

27.3 FPGA参考书 226

27.4 普通数字设计参考书 227

索引 228

相关分词: FPGA 设计 实战