《CPLD/FPGA应用开发技术与工程实践》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:求是科技编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2005
  • ISBN:7115127204
  • 页数:446 页
图书介绍:本书以当前流行的可编程器件为例,包括Altera公司的CPLD以及Xilinx公司的FPGA产品,完整地阐述了可编程逻辑器件开发的整个流程。

第1章 PLD、CPLD与FPGA概述 1

1.1 可编程逻辑器件的发展进程 1

目录 1

1.2 可编程逻辑器件的分类 2

1.2.1 按集成度分类 2

1.2.2 按可编程原理分类 2

1.2.3 按结构特点分类 3

1.3 CPLD的基本结构 3

1.3.1 CPLD的基本结构 4

1.3.2 CPLD的编程工艺 8

1.4 FPGA简介 10

1.4.1 什么是门阵列 10

1.4.2 FPGA的基本结构与设计工艺 11

1.4.3 Xilinx公司的FPGA简介 12

1.4.4 FPGA的编程 17

1.5.1 逻辑单元比较 18

1.5 CPLD与FPGA的比较 18

1.5.2 互连资源 19

1.5.3 编程工艺 19

1.5.4 开发应用选择 19

1.6 器件厂商及其产品 21

1.6.1 Altera公司 21

1.6.2 Xilinx公司 21

1.6.3 其他公司 21

第2章 逻辑器件 23

2.1 Altera器件综述 23

2.2 Altera MAX7000系列CPLD/FPGA芯片 24

2.2.1 MAX7000系列器件简介 24

2.2.2 结构特点与功能描述 26

2.2.3 器件特性配置 32

2.2.4 器件编程特征 34

2.2.6 定时模型 35

2.2.5 器件测试 35

2.3.1 FLEX 10K系列器件简介 36

2.3 Altera FLEX10K系列CPLD/FPGA芯片 36

2.3.2 结构特点与功能描述 38

2.3.3 器件特性设定 53

2.3.4 器件配置与测试 55

2.3.5 定时模型 56

2.4 Altera APEX20K系列FPGA芯片 58

2.4.1 APEX系列器件简介 58

2.4.2 APEX20K系列概述 59

2.4.3 APEX20K系列的特点 59

2.4.4 APEX20K系列的结构描述 60

2.5 Xilinx XC9500系列FPGA芯片 73

2.5.1 XC9500系列CPLD器件 73

2.5.2 系列器件的结构 75

3.1.1 MAX+PLUS Ⅱ的功能和特点 83

第3章 初探CPLD/FPGA设计工具——MAX+PLUS Ⅱ 83

3.1 MAX+PLUS Ⅱ简介 83

3.1.2 软件的版本 85

3.1.3 系统要求 85

3.1.4 软件的安装 85

3.1.5 MAX+PLUS Ⅱ的操作环境 86

3.1.6 MAX+PLUS Ⅱ的设计方法 87

3.2 图形输入的设计过程 90

3.2.1 项目建立与图形输入 90

3.2.2 项目编译 95

3.2.3 项目检验 96

3.2.4 目标器件选择与管脚锁定 101

3.2.5 器件编程/配置 104

3.3 工具条和常用菜单选项说明 105

3.3.1 菜单栏 105

3.3.2 工具栏 110

3.3.3 状态栏 112

第4章 深入了解CPLD/FPGA设计工具——MAX+PLUS Ⅱ 113

4.1 图形的层次化设计和BUS使用 113

4.1.1 层次化设计 113

4.1.2 BUS使用 115

4.2 语言描述输入法 117

4.3 混合设计输入 120

4.4 使用LPM及FLEX10K中的RAM 121

4.4.1 LPM的使用 121

4.4.2 FLEX10K中的RAM 123

4.5 创建用户符号库 126

4.5.1 制作兆功能模块(Mega_Function)符号 126

4.6 编译控制 131

4.6.1 编译顶层系统文件 131

4.6.2 启用设计规则检查工具 136

4.6.3 编译后生成的报告文件 140

4.6.4 分析资源占用情况 142

第5章 VHDL硬件描述语言(一) 146

5.1 常用硬件描述语言 147

5.2 VHDL基本结构 148

5.2.1 实体说明 149

5.2.2 构造体 153

5.3 VHDL语言要素 156

5.3.1 VHDL文字规则 156

5.3.2 VHDL数据对象 157

5.3.3 VHDL数据类型 163

5.3.4 VHDL运算符 170

5.4 VHDL顺序语句 176

5.4.1 赋值语句 176

5.4.2 分支控制语句 176

5.4.3 循环控制语句 183

5.4.4 同步控制语句 187

5.4.5 其他语句 189

5.5 VHDL并发语句 190

5.5.1 并行信号赋值语句 191

5.5.2 进程语句 193

5.5.3 元件例化语句 194

5.5.4 并发过程调用语句 197

5.5.5 块语句 197

5.5.6 生成语句 199

第6章 VHDL硬件描述语言(二) 201

6.1 子程序 201

6.1.1 函数 201

6.1.2 过程 205

6.1.3 子程序重载 206

6.2 库、程序包、配置及其他 207

6.2.1 库 207

6.2.2 程序包 209

6.2.3 配置 211

6.2.4 属性描述 215

6.3 VHDL构造体的描述风格 222

6.3.1 行为描述 222

6.3.2 数据流描述 223

6.3.3 结构描述 228

6.4 VHDL语言的仿真与逻辑综合 231

6.4.1 VHDL语言的仿真 231

6.4.2 VHDL语言的逻辑综合 234

6.5 VHDL语言93版与87版的区别 236

6.5.1 93版对规范的修订 236

6.5.2 87版到93版的移植问题 244

第7章 基本逻辑单元的VHDL实现 245

7.1 组合逻辑电路的VHDL实现 245

7.1.1 简单门电路 245

7.1.2 译码器、编码器和选择器 251

7.1.3 三态门和总线缓冲器 257

7.1.4 组合逻辑电路VHDL实现的一般方法 259

7.2 时序逻辑电路的VHDL实现 260

7.2.1 锁存器 260

7.2.2 触发器 263

7.2.3 计数器 266

7.3 状态机 271

7.3.1 状态机的基本结构和功能 271

7.3.2 状态机的VHDL模型 271

7.3.3 状态机的应用举例 277

第8章 存储器实例设计 284

8.1 存储器原理 284

8.2 移位寄存器设计 285

8.2.1 双向移位寄存器 286

8.2.2 环形移位寄存器 287

8.2.3 M序列发生器 289

8.3.1 ROM 291

8.3 ROM和RAM 291

8.3.2 RAM 293

8.4 先进先出队列(FIFO) 296

第9章 算术运算电路设计 301

9.1 数值的表示 301

9.1.1 进位计数制 301

9.1.2 二进制表示 301

9.1.3 二—十进制编码 302

9.2 一位全加器和一位全减器 302

9.2.1 一位全加器 302

9.2.2 一位全减器 303

9.3 N位加法器 305

9.3.1 串行进位加法器 305

9.3.2 N位超前进位加法器 307

9.3.3 利用算术运算包实现加法 309

9.4.1 用加法器实现减法器 311

9.4 N位减法器 311

9.4.2 利用算术运算包实现减法 312

9.5 乘法器 313

9.5.1 组合逻辑乘法器 313

9.5.2 时序逻辑乘法器 314

9.5.3 混合逻辑乘法器 320

9.6 除法器 325

第10章 数字系统设计方法 329

10.1 概述 329

10.1.1 数字系统的基本概念 329

10.1.2 数字系统的基本模型 329

10.1.3 数字系统设计方法 330

10.2 数字系统设计的一般步骤 331

10.2.1 需求分析 332

10.2.3 子系统划分的原则 333

10.2.2 数字系统的设计任务 333

10.3 数字系统的描述方法 334

10.3.1 算法流程图 334

10.3.2 算法状态机(ASM图) 336

第11章 视频颜色空间转换芯片设计 338

11.1 视频颜色空间的转换原理 338

11.1.1 颜色空间的转换的基本概念 338

11.1.2 颜色空间转换的定点运算实现 340

11.2 系统设计 341

1 1.2.1 设计要求 341

11.2.2 系统结构和模块划分 341

11.2.3 流水线结构设计 342

11.3 系统实现 342

11.3.1 乘法器模块的实现 342

11.3.2 主体模块的实现 343

11.3.3 顶层模块设计 353

11.4.1 逻辑综合选项设定 355

11.4 逻辑综合选项设定和系统仿真 355

11.4.2 波形仿真 356

11.4.3 最高时钟频率仿真 357

11.4.4 提高系统速度的方法 357

第12章 键盘接口电路和LED显示电路设计 359

12.1 键盘接口电路 359

12.1.1 行列式键盘原理 359

12.1.2 系统结构和模块划分 360

12.1.3 键盘扫描电路 361

12.1.4 键盘译码电路和按键标志产生电路 362

12.1.5 时钟产生模块 368

12.1.6 键盘接口电路顶层电路实现 370

12.2 LED显示管理电路 372

12.2.1 LED显示管理电路原理 372

12.2.3 扫描信号发生器 373

12.2.2 系统结构和模块划分 373

12.2.4 显示缓存器 375

12.2.5 多路选通器 376

12.2.6 七段译码器 377

12.2.7 闪烁模块 378

12.2.8 时钟发生器 380

12.2.9 LED显示管理顶层电路实现 383

13.1.1 常用测频方法 387

13.1 频率测量方法和原理 387

第13章 数字频率计 387

13.1.2 直接计数测频法 388

13.2 系统分析和设计 388

13.2.1 设计要求 388

13.2.2 系统分析 389

13.2.3 系统结构和模块划分 390

13.3 量程估计模块 390

13.3.1 量程估计原理 390

13.3.2 7位BCD计数器 391

13.3.3 量程估计功能的实现 394

13.4 计数时钟和闸门产生模块 397

13.5 周期测量计数器模块 401

13.6 除法器模块 403

13.6.1 除法器原理 403

13.6.2 7位BCD减法器 404

13.6.3 7位BCD减法计数器 407

13.6.4 除法器实现 409

13.7 小数点产生模块 414

13.8 数字频率计的顶层电路实现 416

第14章 电子表 420

14.1 电子表的系统分析和设计 420

14.1.1 设计要求 420

14.1.2 用户界面设计 420

14.1.3 系统结构和模块划分 421

14.2.2 106分频计数器的实现和仿真 422

14.2 计时器 422

14.2.1 计时器电路结构 422

14.2.3 计时器的实现和仿真 423

14.3 状态机 426

14.3.1 状态机的模块分析 426

14.3.2 校时和设闹状态机 427

14.3.3 闹钟和整点报时状态机 435

14.4 闹钟寄存器 437

14.5 铃声管理模块 438

14.5.1 铃声管理模块分析 438

14.5.2 VHDL实现 439

14.5.3 仿真 442

14.6 电子表顶层电路的实现 442

14.6.1 顶层电路结构 442

14.6.2 VHDL实现 443

14.6.3 仿真 446