FPGA应用开发和仿真

FPGA应用开发和仿真

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

本书可作为电子工程师的技术参考书,也适合作为高校学生学习FPGA应用开发的教材和参考书。

内容简介

全书Verilog模块均从实际教学和工程应用中提炼而来,参考价值高,可重用性好。本书前四章首先讲述FPGA应用设计相关的数字电路基础知识,然后介绍SystemVerilog语法和常用测试平台语法,接着讲解常用基本数字逻辑功能的Verilog描述和仿真。后续章节更是层层递进,自成一体,第5章和第6章分别讲解常用外部总线功能和SoC内部互连功能的实现,第7章和第8章分别讨论数字信号处理应用和数字通信应用。

现代FPGA设计相关的数字电路基础和Verilog硬件描述语言开始,结合笔者多年的教学和实践经验,详细讲述了Verilog HDL及其仿真,业内常用IO规范和各种总线,数字逻辑在数字信号处理、数字通信和控制方向的典型功能单元,FPGA的常规结构,静态时序分析等。

作者简介

作者王贞炎,华中科技大学启明学院电工电子科技创新中心专职指导教师,长期从事大学生电子设计竞赛和大学生双创活动的指导工作,八年来指导学生荣获全国大学生电子设计竞赛一等奖二十余项。针对电工电子科技创新中心的学生讲述“电工电子工程基础”系列选修课中的“FPGA应用”“软核应用”和“信号调理”课程,相关课程广受学生好评。至今,已参与和主持FPGA相关项目与课题近十项。

章节目录

版权信息

前言

第1章 数字电路基础

1.1 模拟电路与数字电路

1.2 二进制相关知识

1.2.1 二进制和其他进制

1.2.2 进制间的相互转换

1.2.3 二进制的四则运算

1.3 二进制在电路中的表达

1.3.1 有限字长和补码

1.3.2 负数、有符号数和无符号数

1.4 门电路和基本逻辑运算

1.4.1 非门、与门和或门

1.4.2 与非门和或非门

1.4.3 异或门和同或门

1.4.4 三种表达形式的转换

1.4.5 基本门的电路实现

1.4.6 三态输出和漏极开路输出

1.4.7 波形图

1.4.8 门电路的一些非典型应用

1.5 逻辑代数

1.5.1 基本定律

1.5.2 表达式的代数化简法

1.5.3 卡诺图化简法

1.6 基本组合逻辑

1.6.1 编码器和译码器

1.6.2 未定义的输入状态

1.6.3 数据选择器

1.6.4 延迟和竞争冒险

1.6.5 加法器

1.6.6 乘法器

1.6.7 数值比较器

1.7 锁存器

1.7.1 SR锁存器

1.7.2 D锁存器

1.8 触发器

1.8.1 D触发器、时钟和使能

1.8.2 D触发器的异步和同步复位

1.8.3 D触发器的建立时间、保持时间和传输延迟

1.8.4 其他触发器

1.9 时序逻辑

1.9.1 移位寄存器和串-并互换

1.9.2 延迟链

1.9.3 分频器

1.9.4 计数器

1.9.5 同步时序逻辑

1.9.6 累加器

1.10 存储器

1.10.1 存储器容量和类型

1.10.2 SRAM

1.10.3 双端口SRAM

1.10.4 同步SRAM

1.11 小数

1.11.1 定点小数及其范围和误差

1.11.2 定点小数的运算

1.11.3 浮点小数

第2章 Verilog HDL和SystemVerilog

2.1 硬件描述语言简介

2.2 设计方法和流程

2.3 标识符和关键字

2.4 值、数和字面量

2.4.1 整型常数

2.4.2 浮点常数

2.4.3 时间常数和字符串常数

2.5 线网

2.6 变量

2.7 参数和常量

2.8 类型和位宽转换

2.9 操作符和表达式

2.9.1 位选取操作符

2.9.2 位拼接和流运算符

2.9.3 按位逻辑运算符

2.9.4 缩减运算符

2.9.5 移位

2.9.6 自增赋值和自减赋值

2.9.7 条件判断相关运算符

2.9.8 条件运算符

2.9.9 let语句

2.10 结构和联合

2.11 数组

2.12 赋值、过程和块

2.12.1 赋值的延迟

2.12.2 赋值的强度

2.12.3 流程控制语句

2.12.4 always过程

2.12.5 阻塞和非阻塞赋值

2.13 模块

2.14 接口

2.15 生成块

2.16 任务和函数

2.17 包

2.18 系统任务和函数

2.18.1 显示相关

2.18.2 文件相关

2.18.3 存储器相关

2.18.4 仿真相关

2.18.5 错误和信息

2.18.6 类型转换和数学函数

2.19 编译指令

第3章 ModelSim和仿真

3.1 仿真和测试的相关概念

3.2 测试代码编写

3.2.1 时钟的产生

3.2.2 复位的产生

3.2.3 一般输入的产生

3.3 ModelSim软件仿真流程

3.3.1 主界面简介

3.3.2 创建工程

3.3.3 向工程中添加文件

3.3.4 开始仿真

3.3.5 带有信号和波形的例子

3.4 波形和格式

第4章 Verilog基本应用

4.1 代码风格

4.2 常用组合逻辑单元的描述

4.2.1 编码器和译码器

4.2.2 数据选择器

4.3 常用时序逻辑单元的描述

4.3.1 移位寄存器

4.3.2 延迟链

4.3.3 计数器

4.3.4 累加器

4.4 时钟域和使能

4.5 跨时钟域问题

4.5.1 域外慢速跳沿

4.5.2 域间状态传递

4.5.3 域间事件传递

4.5.4 域间数据传递

4.6 存储器及其初始化

4.6.1 各种模式的存储器描述

4.6.2 存储器的初始化

4.7 用存储器实现延迟链

4.8 单时钟FIFO

4.9 双时钟FIFO

4.10 用户按键和数码LED

4.10.1 用户按键处理

4.10.2 数码LED

4.11 PWM和死区

4.11.1 单端PWM

4.11.2 差分PWM

4.11.3 死区

4.12 正交增量编码器接口

4.13 有限状态机

4.13.1 秒表例子

4.13.2 数字示波器触发采样例子

第5章 IO规范与外部总线

5.1 单端信号和地

5.2 传输线与端接

5.3 差分信号

5.4 高速串行接口

5.5 UART

5.5.1 UART规范介绍

5.5.2 发送器的设计

5.5.3 接收器的设计

5.5.4 UART收发仿真

5.6 SPI

5.6.1 SPI规范介绍

5.6.2 通用SPI主机设计

5.6.3 通用SPI从机设计

5.6.4 通用SPI主从机仿真

5.7 I2C

5.7.1 I2C规范介绍

5.7.2 通用I2C主机设计

5.7.3 通用I2C从机设计

5.7.4 通用I2C主从机仿真

5.8 I2S

5.8.1 I2S接口介绍

5.8.2 I2S收发器设计和仿真

第6章 片上系统的内部互连

6.1 简单存储器映射接口

6.1.1 从接口

6.1.2 与主机互连

6.1.3 主接口与仿真

6.2 流水线与流式数据

6.3 等待、延迟和握手

6.3.1 等待和延迟

6.3.2 握手

6.4 AXI4-Lite接口

6.4.1 AXI4-Lite接口介绍

6.4.2 从机范例

6.4.3 主机范例

6.4.4 主从机仿真

6.5 AXI4接口

6.6 AXI4-Stream接口

6.6.1 AXI4-Stream接口介绍

6.6.2 范例和仿真

第7章 数字信号处理应用

7.1 基础知识简介

7.1.1 信号、系统和传输函数

7.1.2 基本元件的传输函数

7.1.3 采样率和采样定律

7.1.4 离散量化信号的信噪比

7.2 数值计算

7.2.1 乘法

7.2.2 除法

7.2.3 平方根

7.2.4 定点小数

7.3 数字频率合成

7.3.1 DDS

7.3.2 坐标旋转机

7.4 FIR滤波器

7.5 IIR滤波器

7.6 采样率变换

7.6.1 升采样

7.6.2 降采样

7.6.3 插零和抽取器

7.6.4 CIC滤波器

7.6.5 采样率变换范例

7.7 快速傅里叶变换

7.7.1 多周期实现

7.7.2 流水线实现

7.8 PID控制器

第8章 数字通信应用

8.1 线性反馈移位寄存器

8.2 循环冗余校验

8.3 基带编解码

8.4 基带通道的范例和仿真

8.5 混频和相干解调

8.6 AM和ASK

8.6.1 调制

8.6.2 解调

8.6.3 调制解调仿真

8.7 PM和PSK

8.7.1 调制

8.7.2 解调

8.7.3 调制解调仿真

8.8 FM和FSK

8.8.1 调制

8.8.2 解调

8.8.3 调制解调仿真

8.9 QPSK和QAM

8.9.1 QAM调制

8.9.2 QAM解调

8.9.3 位同步和判决

8.9.4 调制解调仿真

8.10 载波同步和数字锁相环

8.10.1 数字锁相环恢复载波

8.10.2 QAM载波恢复仿真

附录A System Verilog关键字

附录B 全书模块依赖关系

FPGA应用开发和仿真是2017年由机械工业出版社华章分社出版,作者王贞炎。

得书感谢您对《FPGA应用开发和仿真》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Java Web应用开发 电子书
本书将JavaWeb开发的基础知识与实例有机地结合在一起,系统地介绍JavaWeb应用开发过程中的一些实用技术、系统设计与编程思想。本书主要内容包括JavaWeb开发基础、Servlet入门、Servlet应用、JSP应用开发、JDBC数据库应用开发、EL表达式与JSTL标签、基于WebMVC框架的项目实践。全书不仅介绍理论基础,更强调实际应用。本书可作为普通高等院校计算机相关专业的教材,也可作为
Hadoop应用开发基础 电子书
Hadoop是一个分布式系统的基础架构,支持对大量数据进行分布式处理,能以高效、可靠的方式完成数据处理。本书围绕Hadoop生态圈技术进行讲解,主要包括Hadoop环境配置、Hadoop分布式文件系统(HDFS)、Hadoop分布式计算框架MapReduce、Hadoop资源调度框架YARN与Hadoop新特性、Hadoop分布式数据库HBase、Oozie工作流调度系统等内容。本书以Linux操
Android 移动应用开发 电子书
本书由浅入深、系统全面地讲解了Android软件开发的基本方法和常用技能。全书分为11章,首先概述Android系统的特点和架构,并带领读者搭建Android开发环境,完成第一个Android程序;第3到10章完整地讲解了Android开发中的各种基本知识和关键技术,包括四大组件、界面布局、UI控件与事件响应、组件通信、广播机制、线程与UI通信、服务、数据存储、网络开发、传感器以及地图的使用等,通
单片机原理、应用与Proteus仿真 电子书
本书以Intel8051单片机为例,介绍了单片机的硬件结构和工作原理(定时/计数器、中断系统、串行通信)、指令系统以及单片机和外围器件的硬件扩展和接口程序设计。随着EDA技术和C语言在单片机系统设计中的广泛应用,为了增强本书的应用性和实用性,还特别介绍了KeilC51程序设计方法和基于Proteus软件的单片机虚拟仿真技术,给出了大量的应用实例。本书内容精练,实例丰富,所有的应用实例都配有详细的硬
Flask Web应用开发项目实战 基于Python和统信UOS 电子书
本书通过一个完整的项目开发案例,系统介绍在统信UOS操作系统上进行FlaskWeb应用开发的过程。本书从项目功能、环境配置开始介绍,详细分析用户功能、管理功能、数据分析与可视化、数据库管理的代码实现,最后还介绍了搭建服务器的流程与模块化编程。为了方便学习,本书提供完整的项目源码。虽然所有代码的开发调试在统信UOS上进行,但在Windows、macOS和Linux系统上均可以运行。本书可作为高校计算