| 作者 |
| 王金明 |
| 丛书名 |
| 出版社 |
| 电子工业出版社 |
| ISBN |
| 9787121356148 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 本书根据EDA课程教学要求,以提高数字系统设计能力为目的,系统阐述FPGA数字系统开发的相关知识,主要内容包括EDA技术概述、FPGA/CPLD器件、Verilog硬件描述语言等。全书以Quartus Prime、ModelSim软件为平台,以Verilog-1995和Verilog-2001语言标准为依据,以可综合的设计为重点,通过大量经过验证的数字设计实例,阐述数字系统设计的方法与技术,由浅入深地介绍Verilog工程开发的知识与技能。本书着眼于实用,紧密联系教学实际,实例丰富。全书深入浅出,概念清晰,语言流畅。本书可作为电子、通信、微电子、信息、电路与系统、通信与信息系统及测控技术与仪器等专业本科生和研究生的教学用书,也可供从事电路设计和系统开发的工程技术人员阅读参考。本书配有教学课件,可从华信教育资源网(www.hxedu.com.cn)免费下载。 |
| 目录 |
| 第1章 EDA技术概述 1 1.1 EDA技术及其发展 1 1.2 Top-down设计与IP核复用 4 1.2.1 Top-down设计 4 1.2.2 Bottom-up设计 5 1.2.3 IP复用技术与SoC 5 1.3 数字设计的流程 7 1.3.1 设计输入 8 1.3.2 综合 9 1.3.3 布局布线 9 1.3.4 仿真 10 1.3.5 编程配置 10 1.4 常用的EDA工具软件 10 1.5 EDA技术的发展趋势 14 习题1 15 第2章 FPGA/CPLD器件 16 2.1 PLD器件概述 16 2.1.1 PLD器件的发展历程 16 2.1.2 PLD器件的分类 17 2.2 PLD的基本原理与结构 19 2.2.1 PLD器件的基本结构 19 2.2.2 PLD电路的表示方法 20 2.3 低密度PLD的原理与结构 21 2.4 CPLD的原理与结构 25 2.4.1 宏单元结构 25 2.4.2 典型CPLD的结构 26 2.5 FPGA的原理与结构 29 2.5.1 查找表结构 29 2.5.2 典型FPGA的结构 32 2.5.3 Cyclone IV器件结构 35 2.6 FPGA/CPLD的编程元件 38 2.7 边界扫描测试技术 42 2.8 FPGA/CPLD的编程与配置 43 2.8.1 在系统可编程 43 2.8.2 FPGA器件的配置 45 2.8.3 Cyclone IV器件的编程 45 2.9 FPGA/CPLD器件概述 48 2.10 FPGA/CPLD的发展趋势 52 习题2 53 第3章 Quartus Prime使用指南 54 3.1 Quartus Prime原理图设计 55 3.1.1 半加器原理图设计输入 55 3.1.2 1位全加器设计输入 59 3.1.3 1位全加器的编译 61 3.1.4 1位全加器的仿真 63 3.1.5 1位全加器的下载 67 3.2 基于IP核的设计 70 3.2.1 模24方向可控计数器 71 3.2.2 4×4无符号数乘法器 78 3.3 SignalTap II的使用方法 84 3.4 Quartus Prime的优化设置与时序分析 89 习题3 93 实验与设计 95 3-1 8位带符号乘法器 95 3-2 补码转换幅度码电路 98 第4章 Verilog设计初步 100 4.1 Verilog的历史 100 4.2 Verilog模块的结构 101 4.3 Verilog基本组合电路设计 105 4.3.1 用Verilog设计基本组合电路 105 4.3.2 用Verilog设计加法器 105 4.4 Verilog基本时序电路设计 108 4.4.1 用Verilog设计触发器 108 4.4.2 用Verilog设计计数器 109 习题4 111 实验与设计 111 4-1 Synplify Pro综合器的使用方法 111 4-2 Synplify综合器的使用方法 115 第5章 Verilog语言要素 117 5.1 概述 117 5.2 常量 118 5.2.1 整数(Integer) 118 5.2.2 实数(Real) 120 5.2.3 字符串(Strings) 120 5.3 数据类型 121 5.3.1 net型 122 5.3.2 variable型 123 5.4 参数 124 5.4.1 参数parameter 124 5.4.2 Verilog-2001中的参数声明 125 5.4.3 参数的传递 126 5.4.4 localparam 126 5.5 向量 127 5.6 运算符 129 习题5 133 实验与设计 134 5-1 用altpll锁相环宏模块实现倍频和分频 134 5-2 消抖动电路 139 第6章 Verilog语句语法 141 6.1 过程语句 141 6.1.1 always过程语句 142 6.1.2 initial过程语句 145 6.2 块语句 146 6.2.1 串行块begin-end 146 6.2.2 并行块fork-join 147 6.3 赋值语句 148 6.3.1 持续赋值与过程赋值 148 6.3.2 阻塞赋值与非阻塞赋值 149 6.4 条件语句 151 6.4.1 if-else语句 151 6.4.2 case语句 152 6.5 循环语句 157 6.5.1 for语句 157 6.5.2 repeat、while、forever语句 158 6.6 编译指示语句 160 6.7 任务与函数 161 6.7.1 任务(task) 162 6.7.2 函数(function) 163 6.8 顺序执行与并发执行 167 6.9 Verilog-2001语言标准 168 6.9.1 Verilog-2001改进和增强的语法结构 168 6.9.2 属性及PLI接口 177 习题6 179 实验与设计 180 6-1 FIFO缓存器设计 180 第7章 Verilog设计的层次与风格 184 7.1 Verilog设计的层次 184 7.2 门级结构描述 184 7.2.1 Verilog门元件 185 7.2.2 门级结构描述 187 7.3 行为描述 188 7.4 数据流描述 189 7.5 不同描述风格的设计 190 7.5.1 半加器设计 190 7.5.2 1位全加器设计 191 7.5.3 加法器的级连 193 7.6 多层次结构电路的设计 194 7.6.1 模块例化 194 7.6.2 用parameter进行参数传递 196 7.6.3 用defparam进行参数重载 198 7.7 基本组合电路设计 198 7.7.1 门电路 198 7.7.2 编译码器 199 7.8 基本时序电路设计 201 7.8.1 触发器 201 7.8.2 锁存器与寄存器 202 7.8.3 计数器与串并转换器 203 7.8.4 简易微处理器 204 7.9 三态逻辑设计 206 习题7 208 实验与设计 208 7-1 数字表决器 208 第8章 Verilog有限状态机设计 212 8.1 有限状态机 212 8.2 有限状态机的Verilog描述 214 8.2.1 用三个always块描述 215 8.2.2 用两个过程描述 216 8.2.3 单过程描述方式 218 8.3 状态编码 219 8.3.1 常用的编码方式 219 8.3.2 状态编码的定义 221 8.3.3 用属性指定状态编码方式 224 8.4 有限状态机设计要点 225 8.4.1 复位和起始状态的选择 225 8.4.2 多余状态的处理 228 习题8 229 实验与设计 229 8-1 流水灯控制器 229 8-2 汽车尾灯控制器 231 第9章 Verilog驱动常用I/O外设 234 9.1 4×4矩阵键盘 234 9.2 标准PS/2键盘 236 9.3 字符液晶 243 9.4 汉字图形点阵液晶 248 9.5 VGA显示器 254 9.5.1 VGA显示原理与时序 254 9.5.2 VGA彩条信号发生器 258 9.5.3 VGA图像显示与控制 260 9.6 乐曲演奏电路 266 习题9 271 实验与设计 273 9-1 实用多功能数字钟 273 第10章 Verilog设计进阶 282 10.1 设计的可综合性 282 10.2 流水线设计技术 285 10.3 资源共享 288 10.4 阻塞赋值与非阻塞赋值 290 10.5 加法器设计 294 10.5.1 行波进位加法器 294 10.5.2 超前进位加法器 295 10.5.3 数据流描述的加法器 299 10.5.4 流水线加法器 300 10.6 乘法器设计 300 10.6.1 并行乘法器 300 10.6.2 移位相加乘法器 302 10.6.3 布斯乘法器 305 10.6.4 查找表乘法器 307 10.7 奇数分频与小数分频 308 10.7.1 奇数分频 308 10.7.2 半整数分频与小数分频 309 习题10 311 实验与设计 312 10-1 小数分频 312 10-2 如何在FPGA设计中消除毛刺 314 第11章 Verilog Test Bench仿真 317 11.1 系统任务与系统函数 317 11.2 用户自定义元件 321 11.2.1 组合电路UDP元件 322 11.2.2 时序逻辑UDP元件 323 11.3 延时模型的表示 325 11.3.1 时间标尺定义`timescale 325 11.3.2 延时的表示与延时说明块 326 11.4 Test Bench测试平台 327 11.5 组合和时序电路的仿真 330 11.5.1 组合电路的仿真 330 11.5.2 时序电路的仿真 332 习题11 333 实验与设计 333 11-1 用ModelSim SE仿真8位二进制加法器 333 11-2 用ModelSim SE仿真乘累加器 340 第12章 Verilog设计实例 343 12.1 m序列产生器 343 12.1.1 m序列的原理与性质 343 12.1.2 m序列产生器设计 345 12.2 Gold码 347 12.2.1 Gold码的原理与性质 348 12.2.2 Gold码产生器设计 349 12.3 CRC校验码 350 12.4 数字过零检测与等精度频率测量 352 12.4.1 数字过零检测 352 12.4.2 等精度频率测量 354 12.4.3 数字频率测量系统顶层设计及仿真 355 12.5 QPSK调制器 360 12.5.1 QPSK调制原理 360 12.5.2 QPSK调制器的设计实现 361 12.5.3 QPSK调制器的仿真 369 12.6 小型神经网络 370 12.6.1 人工神经网络 370 12.6.2 设计实现与仿真 371 12.7 数字AGC 374 12.7.1 数字AGC技术的原理 375 12.7.2 数字AGC的实现与仿真 376 习题12 383 实验与设计 383 12-1 异步串行接口(UART) 383 附录A Verilog HDL(IEEE Std 1364-1995)关键字 389 附录B Verilog HDL(IEEE Std 1364-2001)关键字 390 附录C DE2-115介绍 391 附录D 有关术语与缩略语 393 参考文献 398 |