零基础学FPGA设计:理解硬件编程思想9787121452154
正版图书,可开发票,请放心购买。
¥
66
7.5折
¥
88
全新
库存100件
作者杜勇编著
出版社电子工业出版社
ISBN9787121452154
出版时间2023-04
装帧平装
开本其他
定价88元
货号12309431
上书时间2024-12-23
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
杜勇,四川省广安市人,高级工程师。1999年于湖南大学获电子工程专业学士学位,2005年于国防科技大学获信息与通信工程专业硕士学位。主要从事数字信号处理、无线通信以及FPGA应用技术研究。发表学术论文十余篇,出版《数字滤波器的MATLAB与FPGA实现(第2版)》、《数字通信同步技术的MATLAB与FPGA实现》、《数字调制解调技术的MATLAB与FPGA实现》等多部著作。
目录
目录 第一篇 基础篇 第1章 推荐的数字逻辑电路知识 3 1.1 数字逻辑和逻辑电平 3 1.1.1 模拟器件构成的数字电路 3 1.1.2 TTL反相器电路 4 1.1.3 现实中的数字信号波形 5 1.1.4 了解常用的逻辑电平 6 1.2 布尔代数 7 1.2.1 布尔和几个基本运算规则 7 1.2.2 常用的布尔代数法则 8 1.3 组合逻辑电路基础 9 1.3.1 组合逻辑电路的表示方法 9 1.3.2 为什么会产生竞争冒险 10 1.4 时序逻辑电路基础 11 1.4.1 时序逻辑电路的结构 11 1.4.2 D触发器的工作波形 12 1.4.3 计数器与寄存器电路 13 1.5 小结 16 第2章 可编程逻辑器件基础 17 2.1 可编程逻辑器件的历史 17 2.1.1 PROM是可编程逻辑器件 17 2.1.2 从PROM到GAL 19 2.1.3 从SPLD到CPLD 21 2.1.4 FPGA的时代 22 2.2 FPGA的发展趋势 24 2.3 FPGA的结构 26 2.4 FPGA与其他处理平台的比较 28 2.4.1 ASIC、DSP、ARM的特点 29 2.4.2 FPGA的特点及优势 30 2.4.3 FPGA与CPLD的区别 31 2.5 工程中如何选择FPGA器件 31 2.6 小结 32 第3章 准备好开发环境 33 3.1 安装FPGA开发环境 33 3.1.1 安装高云云源软件 33 3.1.2 安装ModelSim软件 35 3.2 开发平台CGD100简介 38 3.3 Verilog HDL基本语法 39 3.3.1 Verilog HDL的程序结构 39 3.3.2 数据类型及基本运算符 42 3.3.3 运算符优先级及关键词 44 3.3.4 赋值语句与块语句 44 3.3.5 条件语句和分支语句 47 3.4 小结 48 第二篇 初识篇 第4章 FPGA设计流程―LED流水灯电路 51 4.1 FPGA设计流程 51 4.2 流水灯设计实例要求 54 4.3 读懂电路原理图 55 4.4 流水灯的设计输入 57 4.4.1 建立FPGA工程 57 4.4.2 Verilog HDL程序输入 59 4.5 程序文件下载 62 4.6 小结 64 第5章 从组合逻辑电路学起 65 5.1 从最简单的与非门电路开始 65 5.1.1 调用门级结构描述与非门 65 5.1.2 二合一的命名原则 66 5.1.3 用门级电路搭建一个投票电路 67 5.2 设计复杂一点的投票电路 68 5.2.1 门电路设计方法的短板 68 5.2.2 利用assign语句完成门电路功能 69 5.2.3 常用的if…else语句 71 5.2.4 reg与wire的用法区别 73 5.2.5 记住“<=”与“=”赋值的规则 74 5.2.6 非常重要的概念―信号位宽 75 5.2.7 行为级建模的5人投票电路 75 5.3 ModelSim仿真电路功能 76 5.3.1 4线-2线编码器设计 77 5.3.2 建立ModelSim工程 78 5.3.3 设计测试激励文件 79 5.3.4 查看ModelSim仿真波形 82 5.4 典型组合逻辑电路Verilog HDL设计 84 5.4.1 8421BCD编码器电路 85 5.4.2 8线-3线优先编码器电路 86 5.4.3 74LS138译码器电路 88 5.4.4 与if…else语句齐名的case语句 90 5.4.5 数据分配器与数据选择器电路 91 5.5 数码管静态显示电路设计 93 5.5.1 数码管的基本工作原理 93 5.5.2 实例需求及电路原理分析 94 5.5.3 数码管显示电路Verilog HDL设计 95 5.5.4 板载测试 97 5.6 小结 98 第6章 时序逻辑电路的灵魂―D触发器 101 6.1 深入理解D触发器 101 6.1.1 D触发器产生一个时钟周期的延时 101 6.1.2 D触发器能工作的优选时钟频率分析 102 6.2 D触发器的描述方法 104 6.2.1 单个D触发器的Verilog HDL设计 104 6.2.2 异步复位的D触发器 106 6.2.3 同步复位的D触发器 108 6.2.4 时钟使能的D触发器 109 6.2.5 D触发器的ModelSim仿真 111 6.2.6 其他形式的D触发器 112 6.3 初试牛刀―边沿检测电路设计 113 6.3.1 边沿检测电路的功能描述 113 6.3.2 边沿检测电路的Verilog HDL设计 114 6.3.3 改进的边沿检测电路 115 6.4 连续序列检测电路―边沿检测电路的升级 116 6.4.1 连续序列检测电路设计 116 6.4.2 分析Verilog HDL并行语句 118 6.4.3 再论“<=”与“=”赋值 119 6.4.4 序列检测电路的ModelSim仿真 121 6.5 任意序列检测器―感受D触发器的强大 124 6.5.1 完成饮料质量检测电路功能设计 124 6.5.2 优化检测电路的设计代码 128 6.6 小结 129 第7章 时序逻辑电路的精华―计数器 131 7.1 简单的十六进制计数器 131 7.1.1 计数器设计 131 7.1.2 计数器就是加法器和触发器 133 7.2 十进制计数器 134 7.2.1 具有复位及时钟使能功能的计数器 134 7.2.2 讨论计数器的进制 135 7.2.3 计数器代码的花式写法 136 7.3 计数器是流水灯的核心 137 7.3.1 设计一个秒信号 137 7.3.2 流水灯电路的设计方案 139 7.3.3 闪烁频率可控制的流水灯 140 7.3.4 采用移位运算设计流水灯电路 142 7.4 Verilog的本质是并行语言 142 7.4.1 典型的Verilog错误用法―同一信号重复赋值 142 7.4.2 并行语言与顺序语言 144 7.4.3 采用并行思维分析信号重复赋值问题 145 7.5 呼吸灯电路设计 146 7.5.1 呼吸灯的工作原理 146 7.5.2 设计思路分析 147 7.5.3 亮度实现模块Verilog HDL设计 147 7.5.4 亮度控制模块Verilog HDL设计 148 7.5.5 顶层模块Verilog HDL设计 150 7.6 小结 151 第三篇 入门篇 第8章 设计简洁美观的秒表电路 155 8.1 设定一个目标―4位秒表电路 155 8.1.1 明确功能需求 155 8.1.2 形成设计方案 156 8.2 顶层文件的Verilog HDL设计 157 8.3 设计一个完善的数码管显示模块 158 8.4 秒表计数模块的Verilog HDL设计 160 8.4.1 秒表计数电路设计 160 8.4.2 秒表计数电路的ModelSim仿真 162 8.4.3 简洁美观的秒表计数器设计 163 8.4.4 实现秒表的启停功能 166 8.5 按键消抖模块的Verilog HDL设计 166 8.5.1 按键消抖产生的原理 166 8.5.2 按键消抖模块Verilog HDL设计 167 8.5.3 将按键消抖模块集成到秒表电路中 169 8.6 小结 169 第9章 数字密码锁电路设计 171 9.1 数字密码锁的功能描述 171 9.2 规划好数字密码锁的功能模块 172 9.2.1 数字密码锁总体结构框图 172 9.2.2 数字密码锁的顶层模块设计 172 9.3 数字密码锁功能子模块设计 174 9.3.1 按键消抖模块Verilog HDL设计 174 9.3.2 计数模块Verilog HDL设计 175 9.3.3 密码设置模块才是核心模块 176 9.4 小结 178 第10章 简易电子琴电路设计 179 10.1 音符产生原理 179 10.2 琴键功能电路设计 180 10.2.1 顶层模块设计 180 10.2.2 琴键模块设计 182 10.2.3 音符产生模块设计 183 10.3 自动演奏乐曲《梁祝》 185 10.3.1 自动演奏乐曲的原理 185 10.3.2 自动演奏乐曲《梁祝》片段 186 10.4 完整的电子琴电路设计 189 10.5 小结 190 第11章 应用广泛的串口通信电路 191 11.1 RS-232串口通信的概念 191 11.2 串口硬件电路原理分析 192 11.3 串口通信电路Verilog HDL设计 193 11.3.1 顶层文件的Verilog HDL设计 193 11.3.2 时钟模块的Verilog HDL设计 195 11.3.3 接收模块的Verilog HDL设计 196 11.3.4 发送模块的Verilog HDL设计 198 11.3.5 FPGA实现及板载测试 199 11.4 采用串口控制秒表电路 201 11.4.1 设计需求分析 201 11.4.2 顶层文件的Verilog HDL设计 202 11.4.3 秒表时间获取模块Verilog HDL设计 204 11.4.4 完善秒表电路顶层模块Verilog HDL代码 205 11.4.5 完善秒表计数模块Verilog HDL代码 207 11.4.6 FPGA实现及板载测试 210 11.5 小结 210 第12章 对状态机的讨论 211 12.1 有限状态机的概念 211 12.2 状态机的Verilog设计方法 212 12.2.1 一段式状态机Verilog代码 212 12.2.2 二段式状态机Verilog代码 213 12.2.3 三段式状态机Verilog HDL代码 215 12.3 计数器电路的状态机描述方法 216 12.4 序列检测器的状态机描述方法 218 12.5 小结 221 第四篇 提高篇 第13章 基本的时序约束方法 225 13.1 电路的速度极限 225 13.2 时序约束方法 227 13.2.1 查看计数器的逻辑电路结构 227 13.2.2 计数器电路添加时钟周期约束 229 13.3 速度与面积的取舍 231 13.3.1 多路加法器电路的结构分析 231 13.3.2 流水线操作的本质―讨论多路加法器的运行速度 233 13.3.3 用一个加法器完成4路加法 235 13.3.4 串行加法器时序分析 238 13.4 小结 238 第14章 采用IP核设计 241 14.1 FPGA设计中的“拿来主义”―使用IP核 241 14.1.1 IP核的一般概念 241 14.1.2 FPGA设计中的IP核类型 242 14.2 时钟IP核 244 14.2.1 全局时钟资源 244 14.2.2 采用时钟IP核生成多路时钟信号 244 14.3 乘法器IP核 248 14.3.1 乘法器IP核参数的设置 248 14.3.2 乘法器IP核的功能仿真 250 14.4 存储器IP核 251 14.4.1 ROM核 251 14.4.2 RAM核 255 14.5 小结 260 第15章 采用在线逻辑分析仪调试程序 261 15.1 在线逻辑分析仪的优势 261 15.2 GAO的使用流程 262 15.3 采用GAO调试串口通信程序 263 15.3.1 调试目的 263 15.3.2 添加GAO到项目中 263 15.3.3 设置触发信号及触发条件 264 15.3.4 设置捕获信号参数 265 15.3.5 观察串口收发信号波形 267 15.4 小结 268 第16章 常用的FPGA设计技巧 269 16.1 默认引脚状态设置 269 16.2 复位信号的处理方法 271 16.3 合理利用时钟使能信号设计 272 16.4 利用移位相加实现乘法运算 273 16.5 根据芯片结构制定设计方案 274 16.6 浮点乘法器设计 275 16.6.1 单精度浮点数据格式 275 16.6.2 单精度浮点数乘法运算分析 276 16.6.3 自定义浮点数据格式 276 16.6.4 自定义浮点数据乘法算法设计 277 16.6.5 算法Verilog HDL实现 278 16.7 小结 284 参考文献 287
内容摘要
本书是针对FPGA初学者编著的入门级图书,以高云公司的FPGA和Verilog HDL为开发平台,详细阐述FPGA设计所需的基础知识、基本语法、设计流程、设计技巧,全面、细致、深刻地剖析了Verilog HDL与C语言等传统顺序语言的本质区别,使读者通过简单的实例逐步理解FPGA的硬件设计思想,实现快速掌握FPGA设计方法的目的。本书思路清晰、语言流畅、分析透彻,在简明阐述设计方法的基础上,重点辨析读者易于与常规顺序语言混淆的概念,力求使读者在较短的时间内理解硬件编程思想,掌握FPGA设计方法。
精彩内容
本书是针对FPGA初学者编著的入门级图书,以高云公司的FPGA和Verilog HDL为开发平台,详细阐述FPGA设计所需的基础知识、基本语法、设计流程、设计技巧,全面、细致、深刻地剖析了Verilog HDL与C语言等传统顺序语言的本质区别,使读者通过简单的实例逐步理解FPGA的硬件设计思想,实现快速掌握FPGA设计方法的目的。本书思路清晰、语言流畅、分析透彻,在简明阐述设计方法的基础上,重点辨析读者易于与常规顺序语言混淆的概念,力求使读者在较短的时间内理解硬件编程思想,掌握FPGA设计方法。
— 没有更多了 —
以下为对购买帮助不大的评价