《FPGA自学笔记 设计与验证》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:袁玉卓,曾凯锋,梅雪松编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2017
  • ISBN:9787512424744
  • 页数:454 页
图书介绍:

第1章 从头认识FPGA 1

1.1 Cyclone Ⅳ E FPGA原理与应用 1

1.1.1 Cyclone Ⅳ E概述 1

1.1.2 Cyclone Ⅳ E扩展资源介绍 4

1.1.3 重点电路设计 5

1.2 Intel FPGA开发环境 17

1.2.1 Quartus软件的发展史 18

1.2.2 Quartus Prime的下载 18

1.2.3 Quartus Prime的安装 21

1.2.4 Quartus Prime软件的基本使用 27

第2章 FPGA开发软硬件平台介绍 39

2.1 AC620开发套件 39

2.1.1 AC620开发板的功能特点 39

2.1.2 AC620开发板的使用 43

2.2 Intel FPGA开发流程 57

2.2.1 建立工程 57

2.2.2 设计输入 61

2.2.3 分析和综合 61

2.2.4 功能仿真 62

2.2.5 综合与布局布线 66

2.2.6 时序仿真 66

2.2.7 I/O分配以及生成配置文件 67

2.2.8 配置FPGA下载 68

2.3 FPGA设计的烧写与投产 69

2.3.1 FPGA固件存储方案 69

2.3.2 Cyclone Ⅳ E FPGA固件烧写方案 69

2.3.3 烧写文件JIC的产生 70

第3章 FPGA基本数字逻辑设计 74

3.1 组合逻辑电路设计——译码器 74

3.1.1 译码器工作原理 74

3.1.2 译码器Verilog实现 75

3.1.3 激励创建及仿真测试 76

3.2 时序逻辑电路设计——计数器 79

3.2.1 计数器工作原理 80

3.2.2 计数器的Verilog实现 81

3.2.3 仿真及板级验证 82

3.3 IP核应用——计数器 85

3.3.1 IP核创建流程 85

3.3.2 仿真及板级验证 89

3.3.3 已生成IP核的参数修改 90

3.3.4 Quartus Ⅱ中IP核参数的修改 94

3.4 BCD计数器设计与验证 95

3.4.1 BCD码原理 95

3.4.2 BCD计数器的Verilog实现 96

3.4.3 激励创建及仿真测试 97

3.4.4 级联BCD计数器设计与仿真 98

3.5 阻塞赋值与非阻塞赋值原理分析 103

3.5.1 不同赋值方式的对比与实现 103

3.5.2 不同赋值方式的仿真及测试 105

3.6 状态机设计实例 108

3.6.1 状态机工作原理 108

3.6.2 字符串检测状态机实现 110

3.6.3 激励创建及仿真测试 113

3.7 独立按键消抖设计与验证 115

3.7.1 按键的物理结构及电路设计 115

3.7.2 硬件电路实现按键消抖 116

3.7.3 状态机实现按键消抖 118

3.7.4 激励创建及仿真测试 124

3.7.5 任务及随机函数的使用 125

3.8 模块化设计基础——加减法计数器 129

3.8.1 模块功能划分 129

3.8.2 模块功能设计 129

3.8.3 仿真及板级验证 132

3.9 8位七段数码管驱动设计与验证 134

3.9.1 数码管驱动原理 134

3.9.2 三线制数码管电路设计 137

3.9.3 数码管动态扫描驱动设计 138

3.9.4 ISSP生成及使用 145

3.9.5 板级调试与验证 149

3.9.6 Quartus Ⅱ中ISSP的使用方法 152

3.10 串口发送模块的设计与验证 153

3.10.1 异步串行通信原理及电路设计 154

3.10.2 UART异步串行通信发送模块的设计与实现 157

3.10.3 激励创建及仿真测试 162

3.10.4 按键控制串口发送设计 163

3.11 串口接收模块的设计与验证 165

3.11.1 串口接收原理分析 166

3.11.2 UART异步串行通信接收模块的设计与实现 167

3.11.3 仿真及板级验证 171

第4章 FPGA片上专用资源使用 176

4.1 嵌入式RAM的使用——双端口RAM 176

4.1.1 Cyclone Ⅳ体系结构及嵌入式存储器原理 176

4.1.2 IP核使用——dpram 178

4.1.3 激励创建及仿真测试 182

4.2 搭建串口收发与双口RAM存储的简易应用系统 185

4.2.1 系统模块功能划分及接口设计 185

4.2.2 顶层文件设计 185

4.2.3 控制模块设计 186

4.2.4 仿真及板级验证 187

4.3 嵌入式RAM的使用——ROM 190

4.3.1 IP核使用——ROM 191

4.3.2 激励创建及仿真测试 193

4.3.3 SignalTap Ⅱ使用及板级验证 195

4.4 嵌入式块RAM的使用——FIFO 201

4.4.1 FIFO的相关知识 202

4.4.2 IP核的使用——FIFO 204

4.5 PLL锁相环介绍与简单应用 213

4.5.1 PLL相关知识 213

4.5.2 IP核的使用——PLL 215

4.5.3 仿真及板级验证 219

第5章 FPGA进阶数字逻辑设计 223

5.1 无源蜂鸣器驱动设计与验证 223

5.1.1 无源蜂鸣器电路设计 223

5.1.2 无源蜂鸣器驱动原理 224

5.1.3 PWM发生器模块设计 225

5.1.4 仿真及板级验证 227

5.2 线性序列机与串行接口DAC驱动设计与验证 232

5.2.1 DAC芯片概述及电路设计 232

5.2.2 TLV5618型DAC芯片输出电压计算原理 234

5.2.3 TLV5618型DAC接口时序 235

5.2.4 线性序列机设计思想与接口时序设计 236

5.2.5 基于线性序列机的DAC驱动设计 238

5.2.6 仿真及板级测试 241

5.3 线性序列机与串行接口ADC驱动设计与验证 243

5.3.1 ADC芯片概述及电路设计 244

5.3.2 ADC128S022型ADC接口时序 245

5.3.3 ADC128S022接口时序设计 247

5.3.4 基于线性序列机的ADC驱动设计 249

5.3.5 仿真及板级测试 252

5.4 HT6221红外遥控解码设计与验证 257

5.4.1 红外遥控系统的组成及电路设计 257

5.4.2 红外遥控协议分析(NEC协议) 258

5.4.3 红外解码模块设计 260

5.4.4 仿真及板级验证 265

5.5 TFT显示屏驱动设计与验证 267

5.5.1 TFT触摸屏驱动电路设计 268

5.5.2 RGB接口TFT屏扫描方式 270

5.5.3 RGB接口TFT屏时序分析 271

5.5.4 RGB接口TFT屏驱动设计 272

5.5.5 仿真及板级验证 275

第6章 FPGA综合数字系统设计 280

6.1 八通道数字电压表 280

6.1.1 数字电压表功能划分 280

6.1.2 按键输入模块 281

6.1.3 通道选择模块 281

6.1.4 ADC控制模块——ADC128S022 282

6.1.5 数据预处理模块 282

6.1.6 码制转换模块 284

6.1.7 数码管驱动模块 287

6.1.8 顶层设计 288

6.1.9 基于查找表的数据电压换算 289

6.2 双通道幅频相可调DDS信号发生器 292

6.2.1 DDS原理与实现 293

6.2.2 数/模转换器(DAC)驱动模块设计 299

6.2.3 串口命令接收与解析 303

6.2.4 信号发生器顶层设计 315

6.2.5 系统测试 316

6.3 串口读/写EEPROM 317

6.3.1 I2C基本概念 317

6.3.2 I2C协议时序介绍 318

6.3.3 I2C器件地址 319

6.3.4 I2C存储器地址 320

6.3.5 I2C写时序 321

6.3.6 I2C读时序 323

6.3.7 I2C读/写器件控制器设计 325

6.3.8 I2C控制器仿真验证 335

6.3.9 串口读/写EEPROM系统设计 341

6.3.10 串口读/写EEPROM仿真验证 351

6.3.11 串口读/写EEPROM板级验证 355

6.4 基于串口猎人的虚拟示波器 359

6.4.1 系统结构 359

6.4.2 模块详解 361

6.4.3 仿真验证 375

6.4.4 基于串口猎人的板级验证 385

6.5 SDRAM控制器设计 391

6.5.1 SDRAM基本概念 391

6.5.2 SDRAM存取原理 392

6.5.3 SDRAM器件引脚说明 394

6.5.4 SDRAM特性 395

6.5.5 SDRAM操作命令介绍 396

6.5.6 SDRAM操作时序 403

6.5.7 SDRAM控制器设计 418

6.5.8 SDRAM控制器仿真验证 425

6.5.9 SDRAM控制器设计优化 430

6.5.10 优化控制器仿真验证 436

6.6 串口传图帧缓存设计 440

6.6.1 系统结构 440

6.6.2 仿真验证 446

6.6.3 板级验证 450

参考文献 454