书籍详情

FPGA设计与验证

FPGA设计与验证

作者:梅雪松,袁玉卓,曾凯锋 著

出版社:北京航空航天大学出版社

出版时间:2021-03-01

ISBN:9787512431294

定价:¥79.00

购买这本书可以去
内容简介
  本书以Intel CycloneⅣ E系列FPGA 为例,系统介绍了FPGA 的硬件结构、电路设计以及逻辑设计和验证流程。书中以若干个具有工程实用意义的案例为背景,详细介绍了FPGA 数字逻辑设计中常见的功能模块设计思路、FPGA 片上资源的使用方法、开发软件中各种调试工具的使用,包括SignaltapⅡ、In System Sources and Probes Editor、In System Memory Content Editor。本书最后通过若干个综合性实例,讲解了复杂数字系统的设计方法和验证思路。作为实用型FPGA 教程,本书的每一个实验都有完整的仿真和验证过程,即强调了仿真验证在FPGA设计中的重要作用。 本书可作为工程应用类、电子信息类专业本科生以及相关专业专科生的EDA 基础类课程的教材;也可作为FPGA自学人员,以及从事FPGA开发的工程技术人员的培训教材和参考用书。
作者简介
  梅雪松,网名“小梅哥”,拥有多年电子设计经验,擅长知识的总结和传播,有《小梅哥和你一起深入学习FPGA》、《小梅哥FPGA学习笔记》两个系列网络博文;并推出了手把手式视频教程《FPGA设计思想与验证方法视频教程》,该教程在各大视频点击平台备受好评,网友称其为学习FPGA基础与提高教学视频。同时,开设FPGA实地培训班,正式开始网络和实地FPGA培训,培训课程以其系统的知识讲解和生动的实例分析,得到了学员的一致肯定。 袁玉卓,山东大学博士,集成电路设计专业,知识面广,专业技术背景深厚。长期从事于FPGA技术的分享和交流,拥有丰富的项目科研和实践经验, 曾凯锋,杭州电子科技大学硕士,主要研究方向为FPGA与嵌入式系统设计,长期活跃于FPGA技术交流群,著有多篇FPGA设计和验证文章。
目录
第1章从头认识FPGA/1

1.1CycloneⅣEFPGA原理与应用/1

1.1.1CycloneⅣE概述/1

1.1.2CycloneⅣE扩展资源介绍/4

1.1.3重点电路设计/5

1.2IntelFPGA开发环境/17

1.2.1Quartus软件的发展史/18

1.2.2QuartusPrime的下载/18

1.2.3QuartusPrime的安装/21

1.2.4QuartusPrime软件的基本使用/27

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

2.1AC620开发套件/39

2.1.1AC620开发板的功能特点/39

2.1.2AC620开发板的使用/43

2.2IntelFPGA开发流程/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.7I/O分配以及生成配置文件/67

2.2.8配置FPGA下载/67

2.3FPGA设计的烧写与投产/68

2.3.1FPGA固件存储方案/68

2.3.2CycloneⅣEFPGA固件烧写方案/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.3IP核应用———计数器/85

3.3.1IP核创建流程/85

3.3.2仿真及板级验证/89

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

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

3.4BCD计数器设计与验证/95

3.4.1BCD码原理/95

3.4.2BCD计数器的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.98位7段数码管驱动设计与验证/134

3.9.1数码管驱动原理/134

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

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

3.9.4ISSP生成及使用/145

3.9.5板级调试与验证/149

3.9.6QuartusⅡ中ISSP的使用方法/…152

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

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

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

3.10.3激励创建及仿真测试/162

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

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

3.11.1串口接收原理分析/166

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

3.11.3仿真及板级验证/171

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

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

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

4.1.2IP核使用———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.1IP核使用———ROM/191

4.3.2激励创建及仿真测试/193

4.3.3SignaTapⅡ使用及板级验证/195

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

4.4.1FIFO的相关知识/202

4.4.2IP核的使用———FIFO/204

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

4.5.1PLL相关知识/213

4.5.2IP核使用———PLL/215

4.5.3仿真及板级验证/219

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

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

5.1.1无源蜂鸣器电路设计/223

5.1.2无源蜂鸣器驱动原理/224

5.1.3PWM发生器模块设计/225

5.1.4仿真及板级验证/227

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

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

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

5.2.3TLV5618型DAC接口时序/235

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

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

5.2.6仿真及板级测试/241

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

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

5.3.2ADC128S022型ADC接口时序/245

5.3.3ADC128S022接口时序设计/247

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

5.3.5仿真及板级测试/252

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

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

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

5.4.3红外解码模块设计/260

5.4.4仿真及板级验证/265

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

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

5.5.2RGB接口TFT屏扫描方式/270

5.5.3RGB接口TFT屏时序分析/271

5.5.4RGB接口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.4ADC控制模块———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.1DDS原理与实现/293

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

6.2.3串口命令接收与解析/303

6.2.4信号发生器顶层设计/315

6.2.5系统测试/316

6.3串口读/写EEPROM/317

6.3.1I2C基本概念/317

6.3.2I2C协议时序介绍/318

6.3.3I2C器件地址/319

6.3.4I2C存储器地址/320

6.3.5I2C写时序/321

6.3.6I2C单字节读时序/323

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

6.3.8I2C控制器仿真验证/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.5SDRAM控制器设计/391

6.5.1SDRAM基本概念/391

6.5.2SDRAM存取原理/392

6.5.3SDRAM器件引脚说明/394

6.5.4SDRAM特性/395

6.5.5SDRAM操作命令介绍/396

6.5.6SDRAM操作时序/403

6.5.7SDRAM控制器设计/418

6.5.8SDRAM控制器仿真验证/425

6.5.9SDRAM控制器设计优化/430

6.5.10优化控制器仿真验证/436

6.6串口传图帧缓存设计/440

6.6.1系统结构/440

6.6.2仿真验证/446

6.6.3板级验证/450

参考文献/454
猜您喜欢

读书导航