- ISBN:9787302666165
- 装帧:平装-胶订
- 册数:暂无
- 重量:暂无
- 开本:16开
- 页数:暂无
- 出版时间:2024-06-01
- 条形码:9787302666165 ; 978-7-302-66616-5
本书特色
《EDA技术与Verilog HDL(第4版)》拥有多年教学经验的高校教授编写;内容知识前沿,实验规范,案例丰富,解析深刻,可以帮助学生进行有效学习。
内容简介
《EDA技术与Verilog HDL(第4版)》系统地介绍了EDA技术和Verilog HDL硬件描述语言,将Verilog HDL的基础知识、编程技巧和实用方法与实际工程开发技术在Quartus/Vivado上很好地结合起来,使读者通过《EDA技术与Verilog HDL(第4版)》的学习能迅速了解并掌握EDA技术的基本理论和工程开发实用技术,为后续的深入学习和发展打下坚实的理论与实践基础。
依据高校课堂教学和实验操作的规律与要求,并以提高学生的实际工程设计能力和自主创新能力为目的,合理编排全书内容。全书共分为7个部分:EDA技术的概述、VHDL语法知识及其实用技术、Quartus/Vivado及IP模块的详细使用方法、有限状态机设计技术、16/32位实用CPU设计技术及创新实践项目、基于ModelSim的Test Bench仿真技术、以及基于MATLAB和DSP Builder平台的EDA设计技术及大量实用系统设计示例。除个别章节外,大多数章节都安排了相应的习题和大量针对性强的实验与设计项目。书中列举的VHDL示例都经编译通过或经硬件测试通过。
本书主要面向高等院校本、专科的EDA技术和VHDL语言基础课,推荐作为电子信息类、通信、自动化、计算机类、电子对抗、仪器仪表、人工智能等学科专业和相关实验指导课的教材用书或主要参考书,同时也可作为电子设计竞赛、FPGA开发应用的自学参考书。
目录
1.1 EDA技术 1
1.2 EDA技术应用对象 3
1.3 常用的硬件描述语言 4
1.4 EDA技术的优势 6
1.5 面向FPGA的开发流程 7
1.5.1 设计输入 7
1.5.2 综合 8
1.5.3 适配(布局布线) 10
1.5.4 仿真与时序分析 10
1.5.5 RTL描述 11
1.6 可编程逻辑器件 11
1.6.1 PLD的分类 11
1.6.2 PROM可编程原理 12
1.6.3 GAL 14
1.7 CPLD的结构与可编程原理 16
1.8 FPGA的结构与工作原理 18
1.8.1 查找表逻辑结构 18
1.8.2 Cyclone 4E/10 LP系列器件的结构原理 19
1.8.3 内嵌Flash的FPGA器件 22
1.8.4 Artix-7系列FPGA的基本结构 22
1.8.5 主要FPGA生产厂商 25
1.9 硬件测试技术 26
1.9.1 内部逻辑测试 26
1.9.2 JTAG边界扫描测试 27
1.10 编程与配置 28
1.11 Quartus 29
1.12 IP核 30
1.13 主要EDA软件公司 31
1.14 EDA的发展趋势 31
习题 33 第2章 程序结构与数据类型 34
2.1 Verilog程序结构 34
2.1.1 Verilog模块的表达方式 35
2.1.2 Verilog模块的端口信号名和端口模式 35
2.1.3 Verilog信号类型定义 36
2.1.4 Verilog模块功能描述 37
2.2 Verilog的数据类型 37
2.2.1 net线网类型 37
2.2.2 wire线网型变量的定义方法 38
2.2.3 register寄存器类型 38
2.2.4 reg寄存器型变量的定义方法 39
2.2.5 integer类型变量的定义方法 40
2.2.6 存储器类型 40
2.3 Verilog文字规则 42
2.3.1 Verilog的4种逻辑状态 42
2.3.2 Verilog的数字表达形式 42
2.3.3 数据类型表示方式 43
2.3.4 常量 43
2.3.5 标识符、关键词及其他文字规则 45
2.3.6 参数定义关键词parameter和localparam的用法 46
习题 47
第3章 行为语句 48
3.1 过程语句 48
3.1.1 always语句 48
3.1.2 always语句在D触发器设计中的应用 50
3.1.3 多过程应用与异步时序电路设计 50
3.1.4 简单加法计数器的Verilog表述 51
3.1.5 initial语句 52
3.2 块语句 53
3.3 case条件语句 54
3.4 if条件语句 55
3.4.1 if语句的一般表述形式 55
3.4.2 基于if语句的组合电路设计 56
3.4.3 基于if语句的时序电路设计 58
3.4.4 含异步复位和时钟使能的D触发器的设计 59
3.4.5 含同步复位控制的D触发器的设计 60
3.4.6 含清零控制的锁存器的设计 61
3.4.7 时钟过程表述的特点和规律 62
3.4.8 实用加法计数器设计 64
3.4.9 含同步预置功能的移位寄存器设计 65
3.4.10 关注if语句中的条件指示 66
3.5 过程赋值语句 67
3.6 循环语句 68
3.6.1 for语句 68
3.6.2 while语句 69
3.6.3 repeat语句 70
3.6.4 forever语句 71
3.7 任务与函数语句 71
习题 73
第4章 FPGA仿真与硬件实现 75
4.1 代码编辑输入和系统编译 75
4.1.1 编辑和输入设计文件 75
4.1.2 创建工程 76
4.1.3 约束项目设置 77
4.1.4 全程综合与编译 79
4.1.5 RTL图观察器应用 80
4.2 仿真测试 81
4.3 硬件测试 84
4.3.1 引脚锁定 84
4.3.2 编译文件下载 86
4.3.3 通过JTAG口对配置芯片进行间接编程 87
4.4 电路原理图设计流程 89
4.4.1 设计一个半加器 89
4.4.2 完成全加器顶层设计 90
4.4.3 对全加器进行时序仿真和硬件测试 91
4.5 利用属性表述实现引脚锁定 92
4.6 Signal Tap的用法 93
4.7 编辑Signal Tap的触发信号 98
4.8 USB-Blaster驱动程序安装方法 98
4.9 Vivado平台仿真与硬件实现 99
4.9.1 创建工程 99
4.9.2 编辑和输入设计文件 101
4.9.3 全程综合编译与实现 102
4.9.4 RTL图观察器应用 105
4.9.5 仿真 105
4.9.6 硬件测试 107
习题 107
实验与设计 108
实验4-1 多路选择器设计实验 108
实验4-2 十六进制7段数码显示译码器设计 108
实验4-3 8位硬件乘法器设计实验 110
实验4-4 应用宏模块设计数字频率计 110
实验4-5 计数器设计实验 114
实验4-6 数码扫描显示电路设计 115
实验4-7 半整数与奇数分频器设计 115
第5章 运算符与结构描述语句 118
5.1 运算操作符 118
5.1.1 按位逻辑操作符 118
5.1.2 逻辑运算操作符 119
5.1.3 算术运算操作符 119
5.1.4 关系运算操作符 120
5.1.5 BCD码加法器设计示例 121
5.1.6 缩位操作符 122
5.1.7 并位操作符 122
5.1.8 移位操作符 123
5.1.9 移位操作符用法示例 123
5.1.10 条件操作符 124
5.2 连续赋值语句 125
5.3 例化语句 126
5.3.1 半加器设计 126
5.3.2 全加器设计 126
5.3.3 Verilog例化语句及其用法 127
5.4 参数传递语句应用 129
5.5 用库元件实现结构描述 130
5.6 编译指示语句 131
5.6.1 宏定义命令语句 132
5.6.2 文件包含语句 'include 132
5.6.3 条件编译命令语句'ifdef、'else、'endif 133
5.7 keep属性应用 134
5.8 SignalProbe使用方法 135
习题 137
实验与设计 138
实验5-1 高速硬件除法器设计实验 138
实验5-2 不同类型的移位寄存器设计实验 139
实验5-3 基于Verilog代码的频率计设计 139
实验5-4 8位加法器设计实验 141
实验5-5 VGA彩条信号显示控制电路设计 141
第6章 IP核的应用 145
6.1 调用计数器宏模块示例 145
6.1.1 计数器LPM模块文本代码的调用 145
6.1.2 LPM计数器代码与参数传递语句应用 146
6.1.3 创建工程与仿真测试 148
6.2 利用属性控制乘法器构建的示例 149
6.3 LPM_RAM宏模块用法 150
6.3.1 初始化文件及其生成 150
6.3.2 以原理图方式对LPM_RAM进行调用 152
6.3.3 测试LPM_RAM 154
6.3.4 Verilog代码描述的存储器初始化文件加载表述 154
6.3.5 存储器设计的结构控制 155
6.4 LPM_ROM使用示例 156
6.4.1 简易正弦信号发生器设计 156
6.4.2 正弦信号发生器硬件实现和测试 158
6.5 存储器内容在系统编辑器应用 159
6.6 嵌入式锁相环调用 161
6.6.1 建立嵌入式锁相环元件 161
6.6.2 测试锁相环 163
6.7 In-System Sources and Probes Editor用法 164
6.8 DDS实现原理与应用 166
6.8.1 DDS原理 166
6.8.2 DDS信号发生器设计示例 168
习题 169
实验与设计 170
实验6-1 查表式硬件运算器设计 170
实验6-2 正弦信号发生器设计 171
实验6-3 简易逻辑分析仪设计 171
实验6-4 DDS正弦信号发生器设计 172
实验6-5 移相信号发生器设计 173
实验6-6 AM幅度调制信号发生器设计 174
实验6-7 硬件消抖动电路设计 174
第7章 Verilog HDL深入 176
7.1 过程中的两类赋值语句 176
7.1.1 未指定延时的阻塞式赋值 176
7.1.2 指定了延时的阻塞式赋值 177
7.1.3 未指定延时的非阻塞式赋值 177
7.1.4 指定了延时的非阻塞式赋值 179
7.1.5 深入认识阻塞式与非阻塞式赋值的特点 180
7.1.6 对不同的赋初值方式的进一步探讨 182
7.2 过程语句讨论 184
7.2.1 过程语句应用总结 184
7.2.2 不完整条件语句与时序电路的关系 185
7.3 三态与双向端口设计 186
7.3.1 三态控制电路设计 186
7.3.2 双向端口设计 187
7.3.3 三态总线控制电路设计 189
7.4 资源优化 190
7.4.1 资源共享 191
7.4.2 逻辑优化 192
7.4.3 串行化 192
7.5 速度优化 193
习题 195
实验与设计 197
实验7-1 4×4阵列键盘按键信号检测电路设计 197
实验7-2 直流电机综合测控系统设计 198
实验7-3 VGA简单图像显示控制模块设计 200
实验7-4 硬件乐曲演奏电路设计 201
实验7-5 PS/2键盘控制模型电子琴电路设计 204
实验7-6 FIR数字滤波器设计实验 207
第8章 状态机设计技术 208
8.1 Verilog状态机的一般形式 208
8.1.1 状态机的特点与优势 208
8.1.2 状态机的一般结构 209
8.1.3 初始控制与表述 212
8.2 Moore型状态机 213
8.2.1 多过程结构状态机 214
8.2.2 序列检测器及其状态机设计 218
8.3 Mealy型状态机 219
8.4 不同编码类型状态机 222
8.4.1 直接输出型编码 222
8.4.2 用宏定义语句定义状态编码 224
8.4.3 顺序编码 225
8.4.4 一位热码编码 225
8.4.5 状态编码设置 226
8.5 安全状态机设计 227
8.5.1 状态导引法 228
8.5.2 状态编码监测法 228
8.5.3 借助EDA工具自动生成安全状态机 229
习题 229
实验与设计 230
实验8-1 序列检测器设计 230
实验8-2 ADC采样控制电路设计 230
实验8-3 五功能智能逻辑笔设计 232
实验8-4 数据采集模块设计 233
第9章 16/32位CPU创新设计 235
9.1 KX9016的结构与特色 235
9.2 KX9016基本硬件系统设计 238
9.2.1 单步节拍发生模块 238
9.2.2 ALU模块 239
9.2.3 比较器模块 239
9.2.4 基本寄存器与寄存器阵列组 240
9.2.5 移位器模块 242
9.2.6 程序与数据存储器模块 243
9.3 KX9016指令系统设计 243
9.3.1 指令格式 243
9.3.2 指令操作码 245
9.3.3 软件程序设计示例 246
9.3.4 KX9016控制器设计 247
9.3.5 指令设计示例 251
9.4 KX9016的时序仿真与硬件测试 252
9.4.1 时序仿真与指令执行波形分析 252
9.4.2 CPU工作情况的硬件测试 254
9.5 KX9016应用程序设计示例和系统优化 256
9.5.1 乘法算法及其硬件实现 257
9.5.2 除法算法及其硬件实现 258
9.5.3 KX9016的硬件系统优化 258
9.6 32位RISC-V处理器设计 259
9.6.1 RISC-V基本结构与基本整数指令集RV32I 260
9.6.2 32位乘法指令集RV32M 263
9.6.3 16位压缩指令集RVC 263
习题 264
实验与设计 265
实验9-1 16位CPU设计综合实验 265
实验9-2 新指令设计及程序测试实验 265
实验9-3 16位CPU的优化设计与创新 266
第10章 Verilog HDL仿真 268
10.1 Verilog HDL仿真流程 269
10.2 Verilog 测试基准示例 271
10.3 Verilog Test Bench测试流程 272
10.4 Verilog系统任务和系统函数 275
10.4.1 系统任务和系统函数 275
10.4.2 预编译语句 281
10.5 延时模型 282
10.5.1 # 延时和门延时 282
10.5.2 延时说明块 283
10.6 其他仿真语句 283
10.6.1 fork-join块语句 283
10.6.2 wait语句 284
10.6.3 force、release语句 285
10.6.4 deassign语句 285
10.7 仿真激励信号的产生 286
10.8 数字系统仿真 287
习题 288
实验与设计 288
实验10-1 在ModelSim上对计数器的Test Bench进行仿真 288
实验10-2 在ModelSim上进行16位累加器设计仿真 288
补充实验列表 289
附录A EDA教学实验平台系统及相关软件 290
A.1 KX系列EDA-FPGA教学综合实验平台 291
A.1.1 模块化自主创新实验设计结构 291
A.1.2 动态配置I/O高效实验控制系统 292
A.1.3 不同厂家不同功能类型的FPGA核心板 293
A.1.4 引脚对照表 295
A.2 部分实验扩展模块 295
A.3 mif文件生成器使用方法 296
A.4 HX1006A及其引脚锁定工具软件 297
参考文献 299
作者简介
黄继业,杭州电子科技大学教授,国家级一流本科课程负责人(2门),多年从事EDA技术、FPGA与嵌入式系统方面的科研与教学工作。作为第2完成人获省科学技术奖二三等奖各1项,参与获得国家级教学成果奖二等奖2项、省教学成果特等一二等奖各1项,主编参编教材十余部。指导学生参加全国大学生电子设计竞赛/智能汽车竞赛获全国一等奖超30项。
黄汐威,新加坡南洋理工大学电路与系统专业博士,美国麻省理工学院访问学者,现任杭州电子科技大学电子信息学院教授、博导、国家一流专业集成电路设计与集成系统系主任,主要从事生物医疗传感检测电路与系统相关研究,近年来主持多个国家和省部级项目。
潘松,在杭州电子科技大学(原杭州电子工业学院)任教30多年直至退休。长期致力于“EDA技术”课程的教学研究与教学改革,是国内*早在本科教学中引入 “EDA技术”课程的课程创建者之一,也是较早把“EDA技术”教学引入高等职业教育的先行者。在国内“EDA技术”教学领域有加大的知名度与影响力。黄继业,杭州电子科技大学教授,国家级一流本科课程负责人(2门),多年从事EDA技术、FPGA与嵌入式系统方面的科研与教学工作。作为第2完成人获省科学技术奖二三等奖各1项,参与获得国家级教学成果奖二等奖2项、省教学成果特等一二等奖各1项,主编参编教材十余部。指导学生参加全国大学生电子设计竞赛/智能汽车竞赛获全国一等奖超30项。
黄汐威,新加坡南洋理工大学电路与系统专业博士,美国麻省理工学院访问学者,现任杭州电子科技大学电子信息学院教授、博导、国家一流专业集成电路设计与集成系统系主任,主要从事生物医疗传感检测电路与系统相关研究,近年来主持多个国家和省部级项目。
潘松,在杭州电子科技大学(原杭州电子工业学院)任教30多年直至退休。长期致力于“EDA技术”课程的教学研究与教学改革,是国内*早在本科教学中引入 “EDA技术”课程的课程创建者之一,也是较早把“EDA技术”教学引入高等职业教育的先行者。在国内“EDA技术”教学领域有加大的知名度与影响力。
陈龙,杭州电子科技大学教书,博导,主编参编教材7部,获国家级教学成果二等奖2项,浙江省教学成果特等奖1项、一等奖1项、二等奖1项。指导学生全国大学生智能汽车竞赛、全国大学生电子设计竞赛获国家级奖项40余项。获浙江省“万人计划”教学名师、浙江省高校“优秀共产党员”、浙江省“教坛新秀”、浙江省“五星级青年教师”。
-
当代中国政府与政治(新编21世纪公共管理系列教材)
¥33.6¥48.0 -
落洼物语
¥8.7¥28.0 -
中国当代文学名篇选读
¥19.1¥53.0 -
中医基础理论
¥50.7¥59.0 -
北大人文课(平装)
¥13.9¥45.0 -
外国教育史-第2版
¥24.4¥40.0 -
宪法-第二版
¥12.2¥29.0 -
当代中国政府与政治 第二版
¥57.8¥68.0 -
EPLAN电气设计
¥29.9¥39.8 -
闯进数学世界――探秘历史名题
¥21.3¥32.8 -
企业法务教程
¥34.8¥49.0 -
习近平新时代中国特色社会主义思想概论
¥18.2¥26.0 -
金融学
¥29.9¥49.0 -
计算机操作系统教程(第4版)(清华大学计算机系列教材)
¥31.9¥49.0 -
三国史
¥27.5¥50.0 -
飞机总体设计
¥46.8¥78.0 -
古代汉语(第四册)
¥16.1¥35.0 -
编辑审稿实务教程
¥35.1¥45.0 -
管理学:原理与方法(第7版)(博学.大学管理类)/周三多
¥30.9¥49.0 -
(平装)北大必修课:北大口才课
¥12.2¥45.0