《基于FPGA的数字系统研究与设计》[80M]百度网盘|pdf下载|亲测有效
《基于FPGA的数字系统研究与设计》[80M]百度网盘|pdf下载|亲测有效

基于FPGA的数字系统研究与设计 pdf下载

出版社 科学出版社旗舰店
出版年 2016-05
页数 390页
装帧 精装
评分 9.4(豆瓣)
8.99¥ 10.99¥

内容简介

本篇主要提供基于FPGA的数字系统研究与设计电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com



商品参数

基于FPGA的数字系统研究与设计
曾用价 99.00
出版社 科学出版社
版次 1
出版时间 2016年05月
开本 16
作者 杨军,余江
装帧 平装
页数 304
字数 300
ISBN编码 9787030382931


内容介绍

本书主要介绍基于FPGA数字系统的设计原理、开发方法和仿真测试过程,并通过工程实例分析FPGA实现过程中的技术细节。在基础知识部分,主要介绍了开发语言和项目开发环境;在应用实例部分,分别详细地讲解了5个FPGA实例的设计方法和具体步骤,涉及OFDM系统基带传输、超声波测距系统、云存储架构等,由浅入深,力求使读者在较短的时间内掌握FPGA数字系统的设计过程。书中硬件和软件设计分别采用了硬件描述性语言和C语言,读者需要具有一定的编程开发基础。

目录

目录
前言
第1章 概述1
1.1CPLD/FPGA简介1
1.1.1CPLD/FPGA的结构与工作原理1
1.1.2CPLD/FPGA的发展趋势7
1.2CPLD/FPGA产品概述8
1.2.1Lattice公司的CPLD器件系列8
1.2.2Xilinx公司的CPLD/FPGA器件系列10
1.2.3Altera的CPLD/FPGA器件系列12
1.2.4Altera公司的FPGA配置方式与配置器件16
第2章 项目开发环境介绍18
2.1软件平台18
2.1.1硬件开发工具QuartusII12.018
2.1.2ModelSim仿真工具23
2.1.3NiosIIIDE8.0集成开发环境27
2.1.4Eclipse集成开发环境32
2.1.5数值计算与仿真测试工具MATLAB32
2.2硬件平台35
2.2.1DE2平台简介35
2.2.2DE2原理37
2.2.3DE2平台的开发环境41
2.2.4DE2开发板测试说明42
第3章 SOPC系统设计分析45
3.1SOPC技术简介45
3.1.1SOPC技术的主要特点45
3.1.2SOPC技术实现方式46
3.1.3SOPC系统的开发流程48
3.2NiosII概述48
3.2.1NiosII嵌入式处理器48
3.2.2NiosII处理器的特性49
3.3基于SOPC的NiosII处理器设计50
3.3.1SOPCBuilder功能51
3.3.2SOPCBuilder组成52
3.3.3SOPCBuilder组件57
3.4SOPC设计讲解59
3.4.1硬件部分设计59
3.4.2软件部分设计74
第4章 基于FPGA的OFDM系统基带数据传输部分的设计与实现82
4.1实例介绍82
4.2设计思路与原理83
4.2.1OFDM技术简介83
4.2.2OFDM系统基本原理87
4.2.3FFT算法原理96
4.2.4OFDM系统整体设计118
4.3硬件设计119
4.3.1逻辑模块设计119
4.3.2详细设计132
4.3.3OFDM系统的仿真及验证145
4.4实例总结146
第5章 一种基于FPGA的超声波测距系统的设计与实现147
5.1实例介绍147
5.2设计思路与原理147
5.2.1超声波测距原理简介147
5.2.2HC-SR04模块简介149
5.2.3超声波传感器工作原理152
5.2.4FFT算法原理153
5.2.52D-FFT简介157
5.2.6系统总体结构157
5.3硬件设计158
5.3.1时序发生器模块158
5.3.2回波识别模块159
5.3.3双核FFT计算模块161
5.3.4波形发生器模块163
5.3.5高速计数器模块163
5.4系统综合与测试164
5.5实例总结166
第6章 基于FPGA的云存储架构的设计与实现167
6.1实例介绍167
6.2设计思路与原理168
6.2.1云存储通信原理169
6.2.2FPGA集群技术的原理170
6.2.3基于FPGA分布式存储的原理171
6.3详细设计173
6.3.1云存储架构设计173
6.3.2云存储模块设计与集成179
6.3.3云存储架构交互软件184
6.4系统综合与仿真测试187
6.4.1FPGA模块测试188
6.4.2系统整体测试191
6.5实例总结194
第7章 基于FPGA的实时加/解密系统的设计与实现196
7.1实例介绍196
7.2设计思路与原理197
7.2.1AES算法简介197
7.2.2AES加/解密流程197
7.2.3系统整体结构203
7.3硬件设计204
7.3.1AESIP核设计204
7.3.2SOPC系统的创建234
7.4软件设计与综合测试245
7.4.1软件设计245
7.4.2系统综合与仿真测试253
7.5实例总结257
第8章 基于FPGA的蓝牙智能小车的设计与实现258
8.1实例介绍258
8.2设计思路与原理259
8.2.1控制平台和设计语言简介259
8.2.2蓝牙通信技术介绍261
8.2.3系统整体结构264
8.3硬件设计266
8.3.1电机驱动模块的设计266
8.3.2超声波测距模块的设计270
8.3.3蓝牙模块的设计274
8.4软件设计与综合测试284
8.4.1软件设计284
8.4.2系统综合与仿真测试289
8.5实例总结291
附录DE2平台上EP2C35F672的引脚分配表292
参考文献296

在线试读

第1章概述
1.1CPLD/FPGA简介
复杂可编程逻辑器件(ComplexProgrammableLogicDevice,CPLD)和现场可编程门阵列(FieldProgrammableGateArray,FPGA)两者的功能基本相同,只是实现原理略有不同,所以有时可以忽略这两者的区别,统称为可编程逻辑器件或者CPLD/FPGA。
CPLD*早由Altera公司推出MAX系列,多为Flash架构、EEPROM架构或者乘积项(ProductTerm)架构的PLD。FPGA*早由Xilinx公司推出,多为SRAM架构或者查表(LookUpTable)架构,需外接配置用的EPROM下载。由于Altera的FELX/ACEX/APEX系列也是SRAM架构,所以通常把Altera的FELX/ACEX/APEX系列芯片也称FPGA。
1.1.1CPLD/FPGA的结构与工作原理
1.乘积项结构器件
简单PLD器件在实用中已经被淘汰,原因如下。
(1)阵列规模较小,资源不够用于数字系统。
(2)片内寄存器资源不足,且寄存器的结构限制较多,难以构成丰富的时序电路。I/O不够灵活,限制了片内资源的利用率。
(3)编程不便,需要专用的编程工具。取代的是CPLD/FPGA,以Altera的MAX3000A器件为例。MAX3000A有32~512个宏单元。单个宏单元的结构包括:可编程的与阵列和固定的或阵列,可配置寄存器。含共享扩展乘积项和高速并联扩展乘积项。MAX3000A的结构如图1.1所示。MAX3000A结构包括五个主要部分:逻辑阵列块、宏单元、扩展乘积项、可编程连线阵列和I/O控制块。
1)逻辑阵列块(LogicArrayBlock,LAB)
1个LAB由16个宏单元的阵列组成。多个LAB通过可编程连线阵PIA和全局总线连接在一起,如图1.2所示。
图1.1MAX3000A结构
2)宏单元
逻辑阵列实现组合逻辑,可实现逻辑函数及宏单元寄存器的辅助输入,可以被单独地配置为时序逻辑和组合逻辑工作方式。
3)扩展乘积项复杂的逻辑函数需要附加乘积项,可利用其他宏单元以提供逻辑资源,即扩展项。由每个宏单元提供一个单独的乘积项,通过一个非门取反后反馈到逻辑阵列中,可被LAB内任何一个或全部宏单元使用和共享,如图1.3所示。
图1.2逻辑阵列图1.3共享扩展乘积项结构
4)可编程连线阵列
不同的LAB通过在可编程连线阵列PIA上布线,以相互连接构成所需逻辑。MAX3000A的专用输入、I/O引脚和宏单元输出都连接到PIA,PIA可以把信号送到整个器件的各个地方,如图1.4所示。
图1.4PIA信号布线到LAB的方式
5)I/O控制块
I/O控制块允许每个I/O引脚单独被配置为输入、输出或双向工作模式。所有I/O引脚都有一个三态缓冲器,控制信号来自多路选择器,可以选择用信号、GND或VCC控制,如图1.5所示。
图1.5器件的I/O控制块
2.查找表结构器件
大部分FPGA采用基于SRAM的查找表结构,用SRAM来构成逻辑函数发生器。一个N输入的LUT可以实现N个输入变量的任何逻辑,如图1.6所示。
一个N输入的LUT,需要SRAM存储N个输入构成的真值表,需要2的N次幂个位的SRAM单元,如图1.7所示。
图1.6FPGA查找表单元
图1.7FPGA查找表单元内部结构
以Cyclone系列器件的结构与原理为例。
Cyclone主要由逻辑阵列块LAB、嵌入式存储器、嵌入式硬件乘法器、I/O单元、PLL等模块构成,各个模块之间存在丰富的互连线和时钟网络。
LAB由多个逻辑宏单元LE构成,LE是FPGA器件的*基本的可编程单元,LE主要由一个4输入的查找表LUT、进位链逻辑、寄存器链逻辑和一个可编程的寄存器构成,如图1.8所示。
图1.8CycloneLE结构图
4输入的LUT可完成所有的4输入1输出的组合逻辑功能。每个LE中的可编程寄存器可以配置成各种触发器形式,而且寄存器具有数据、时钟、时钟使能、清零输入信号等功能。寄存器可旁路。LE有三个输出驱动内部互连,一个驱动局部互连,另两个驱动行或列的互连,LUT和寄存器的输出可单独控制。
CycloneLE可工作在两种操作模式下。
(1)普通模式,LE适合通用逻辑应用和组合逻辑的实现,如图1.9所示。
(2)算术模式,可以更好地实现加法器、计数器、累加器和比较器,如图1.10所示。
图1.9CycloneLE普通模式
图1.10CycloneLE动态算术模式
LAB由一系列相邻的LE构成,如图1.11所示。CycloneII的每个LAB包含16个LE,LAB间存在行互连、列互连、直连通路互连、LAB局部互连、LE进位链和寄存器链,如图1.12所示。局部互连可以在同一个LAB的LE间传输信号;进位链用来连接LE的进位输出和下一个LE的进位输入;寄存器链用来连接下一个LE的寄存器数据输出和下一个LE的寄存器数据输入。
图1.11CycloneLAB结构
图1.12LAB阵列
控制信号生成:每个LAB都有专用的逻辑来生成LE的控制信号,LE的控制信号包括时钟信号、时钟使能信号、异步清零、同步清零、异步预置/装载信号、同步装载和加/减控制信号,如图1.13所示。