EDA技术与Verilog HDL

出版社:清华大学出版社
出版日期:2013-4
ISBN:9787302315513
作者:潘松 陈龙 黄继业
页数:368页

书籍目录

目    录
第1章 EDA技术概述
1
1.1 EDA技术
1
1.2 EDA技术应用对象
2
1.3 常用HDL和Verilog HDL
3
1.4 EDA技术的优势
5
1.5 面向FPGA的EDA开发流程
6
1.5.1 设计输入
6
1.5.2 综合
7
1.5.3 适配(布线布局)
9
1.5.4 仿真
10
1.5.5 RTL描述
10
1.6 可编程逻辑器件
11
1.6.1 PLD的分类
11
1.6.2 PROM可编程原理
12
1.6.3 GAL
14
1.7 CPLD的结构与可编程原理
15
1.8 FPGA的结构与工作原理
18
1.8.1 查找表逻辑结构
18
1.8.2 Cyclone III系列器件的结构原理
19
1.9 硬件测试技术
22
1.9.1 内部逻辑测试
22
1.9.2 JTAG边界扫描测试
22
1.10 编程与配置
23
1.11 Quartus II
24
1.12 IP核
25
1.13 EDA的发展趋势
26
习题
27
第2章 Verilog程序结构与数据类型
29
2.1 Verilog程序结构
29
2.1.1 Verilog的模块的表达方式
30
2.1.2 Verilog模块的端口信号名和端口模式
30
2.1.3 Verilog信号类型定义
31
2.1.4 Verilog模块功能描述
32
2.2 Verilog数据类型
32
2.2.1 net网线类型
33
2.2.2 wire网线型变量的定义方法
33
2.2.3 register寄存器类型
34
2.2.4 reg寄存器型变量的定义方法
34
2.2.5 integer整数型寄存器类型变量定义方法
35
2.2.6 存储器类型
35
2.3 Verilog基本要素与文字规则
37
2.3.1 Verilog的4种逻辑状态
37
2.3.2 Verilog的数字表达形式
37
2.3.3 数据类型表示方式
38
2.3.4 常量
39
2.3.5 标识符、关键词及其他文字规则
40
2.3.6 参数定义关键词parameter和localparam的用法
42
习题
42
第3章 Verilog行为语句
44
3.1 过程语句
44
3.1.1 always语句
44
3.1.2 always语句在D触发器设计中的应用
46
3.1.3 多过程应用与异步时序电路设计
47
3.1.4 简单加法计数器及其Verilog表述
47
3.1.5 initial语句
48
3.2 块语句
50
3.3 case条件语句
50
3.4 if条件语句
52
3.4.1 if语句的一般表述形式
52
3.4.2 基于if语句的组合电路设计
53
3.4.3 基于if语句的时序电路设计
55
3.4.4 含异步复位和时钟使能的D触发器的设计
56
3.4.5 含同步复位控制的D触发器的设计
57
3.4.6 含清零控制的锁存器的设计
58
3.4.7 时钟过程表述的特点和规律
59
3.4.8 实用加法计数器设计
60
3.4.9 含同步预置功能的移位寄存器设计
62
3.4.10 关注if语句中的条件指示
63
3.5 过程赋值语句
64
3.6 循环语句
65
3.6.1 for语句
65
3.6.2 while语句
66
3.6.3 repeat语句
67
3.6.4 forever语句
67
3.7 任务与函数语句
68
习题
70
第4章 时序仿真与硬件实现
72
4.1 Verilog程序输入与仿真测试
72
4.1.1 编辑和输入设计文件
72
4.1.2 创建工程
73
4.1.3 全程编译前约束项目设置
74
4.1.4 全程综合与编译
75
4.1.5 仿真测试
77
4.1.6 RTL图观察器应用
79
4.2 引脚锁定与硬件测试
79
4.2.1 引脚锁定
79
4.2.2 编译文件下载
81
4.2.3 JTAG间接编程模式
82
4.2.4 USB-Blaster驱动程序安装方法
83
4.3 电路原理图设计流程
83
4.3.1 用原理图输入方式设计半加器
84
4.3.2 完成全加器顶层设计
85
4.3.3 对全加器进行时序仿真和硬件测试
86
4.4 利用属性表述实现引脚锁定
87
4.5 宏模块逻辑功能查询
88
4.6 SignalTap II的使用方法
88
4.7 编辑SignalTap II的触发信号
93
习题
94
实验与设计
95
实验4-1 多路选择器设计实验
95
实验4-2 十六进制7段数码显示译码器设计
95
实验4-3 8位硬件乘法器设计实验
97
实验4-4 应用宏模块设计数字频率计
97
实验4-5 计数器设计实验
101
实验4-6 数码扫描显示电路设计
101
实验4-7 半整数与奇数分频器设计
102
实验4-8 串行静态显示控制电路设计
104
第5章 Verilog运算符与结构描述语句
105
5.1 运算操作符
105
5.1.1 按位逻辑操作符
105
5.1.2 逻辑运算操作符
106
5.1.3 算术运算操作符
106
5.1.4 关系运算操作符
107
5.1.5 BCD码加法器设计示例
108
5.1.6 缩位操作符
109
5.1.7 并位操作符
110
5.1.8 移位操作符应用法
110
5.1.9 使用移位操作符的设计示例
110
5.1.10 条件操作符
111
5.2 连续赋值语句
112
5.3 例化语句
113
5.3.1 半加器设计
113
5.3.2 全加器设计
114
5.3.3 Verilog例化语句及其用法
114
5.4 参数传递语句应用
116
5.5 用库元件实现结构描述
117
5.6 用户自定义元件(UDP)
119
5.6.1 UDP组合元件设计
119
5.6.2 UDP时序元件设计
120
5.7 编译指示语句
123
5.7.1 宏定义命令语句
123
5.7.2 文件包含语句'include
124
5.7.3 条件编译命令语句'ifdef、'else、'endif
124
5.8 keep属性应用
125
5.9 SignalProbe使用方法
126
习题
128
实验与设计
130
实验5-1 高速硬件除法器设计实验
130
实验5-2 不同类型的移位寄存器设计实验
130
实验5-3 基于Verilog代码的频率计设计
130
实验5-4 8位加法器设计实验
132
实验5-5 VGA彩条信号显示控制电路设计
132
实验5-6 移位相加型8位硬件乘法器设计
135
第6章 LPM宏模块的应用
137
6.1 计数器LPM宏模块调用
137
6.1.1 计数器LPM模块文本代码的调用
137
6.1.2 LPM计数器代码与参数传递语句应用
138
6.1.3 创建工程与仿真测试
140
6.2 利用属性控制乘法器的构建
141
6.3 LPM_RAM宏模块的设置与使用
142
6.3.1 初始化文件及其生成
142
6.3.2 以原理图方式对LPM_RAM进行设置和调用
144
6.3.3 测试LPM_RAM
146
6.3.4 Verilog代码描述的存储器初始化文件加载表述
147
6.3.5 存储器设计的结构控制
148
6.4 LPM_ROM的定制和使用示例
150
6.4.1 简易正弦信号发生器设计
150
6.4.2 正弦信号发生器硬件实现和测试
151
6.5 在系统存储器数据读写编辑器应用
152
6.6 LPM嵌入式锁相环调用
153
6.6.1 建立嵌入式锁相环元件
154
6.6.2 测试锁相环
156
6.7 In-System Sources and Probes Editor使用方法
156
6.8 数控振荡器核使用方法
159
6.9 FIR核使用方法
161
6.10 DDS实现原理与应用
162
6.10.1 DDS原理
163
6.10.2 DDS信号发生器设计示例
165
习题
166
实验与设计
166
实验6-1 查表式硬件运算器设计
166
实验6-2 正弦信号发生器设计
167
实验6-3 简易逻辑分析仪设计
167
实验6-4 DDS正弦信号发生器设计
169
实验6-5 移相信号发生器设计
169
实验6-6 AM幅度调制信号发生器设计
170
实验6-7 硬件消抖动电路设计
171
第7章 Verilog设计深入
173
7.1 过程中的两类赋值语句
173
7.1.1 未指定延时的阻塞式赋值语句
173
7.1.2 指定了延时的阻塞式赋值
174
7.1.3 未指定延时的非阻塞式赋值
175
7.1.4 指定了延时的非阻塞式赋值
176
7.1.5 深入认识阻塞式与非阻塞式赋值的特点
177
7.1.6 不同的赋初值方式导致不同综合结果的示例
179
7.2 过程语句深入探讨
181
7.2.1 过程语句应用总结
181
7.2.2 深入认识不完整条件语句与时序电路的关系
182
7.3 三态与双向端口设计
183
7.3.1 三态控制电路设计
184
7.3.2 双向端口设计
184
7.3.3 三态总线控制电路设计
186
7.4 资源优化
188
7.4.1 资源共享
188
7.4.2 逻辑优化
189
7.4.3 串行化
190
7.5 速度优化
191
7.5.1 流水线设计
191
7.5.2 关键路径法
193
7.5.3 乒乓操作法
194
7.5.4 加法树法
194
习题
195
实验与设计
197
实验7-1 4×4阵列键盘键信号检测电路设计
197
实验7-2 直流电机综合测控系统设计
198
实验7-3 VGA简单图像显示控制模块设计
199
实验7-4 乐曲硬件演奏电路设计
200
实验7-5 PS2键盘控制模型电子琴电路设计
204
实验7-6 SPWM脉宽调制控制系统设计
207
第8章 Verilog状态机设计技术
210
8.1 Verilog状态机的一般形式
210
8.1.1 状态机的特点与优势
211
8.1.2 状态机的一般结构
212
8.1.3 初始控制与表述
215
8.2 Moore型状态机及其设计
216
8.2.1 多过程结构状态机
216
8.2.2 序列检测器及其状态机设计
220
8.3 Mealy型状态机设计
221
8.4 不同编码类型状态机
224
8.4.1 直接输出型编码
224
8.4.2 用宏定义语句定义状态编码
226
8.4.3 顺序编码
227
8.4.4 一位热码编码
228
8.4.5 状态编码设置
228
8.5 异步状态机设计
230
8.6 安全状态机设计
233
8.6.1 状态导引法
233
8.6.2 状态编码监测法
234
8.6.3 借助EDA工具自动生成安全状态机
235
习题
235
实验与设计
236
实验8-1 序列检测器设计
236
实验8-2 ADC采样控制电路设计
236
实验8-3 数据采集模块设计
237
实验8-4 五功能智能逻辑笔设计
239
第9章 基于Verilog的实用CPU创新设计
241
9.1 KX9016的结构与特色
241
9.2 KX9016基本硬件系统设计
244
9.2.1 单步节拍发生模块
244
9.2.2 ALU模块
245
9.2.3 比较器模块
245
9.2.4 基本寄存器与寄存器阵列组
246
9.2.5 移位器模块
248
9.2.6 程序与数据存储器模块
249
9.3 KX9016v1指令系统设计
249
9.3.1 指令格式
250
9.3.2 指令操作码
251
9.3.3 软件程序设计示例
252
9.3.4 KX9016v1控制器设计
254
9.3.5 指令设计示例详解
258
9.4 KX9016的时序仿真与硬件测试
259
9.4.1 时序仿真与指令执行波形分析
259
9.4.2 CPU工作情况的硬件测试
261
9.5 KX9016应用程序设计示例和系统优化
263
9.5.1 除法算法及其硬件实现
263
9.5.2 乘法算法及其硬件实现
264
9.5.3 KX9016v1的硬件系统优化
265
习题
266
实验与设计
267
实验9-1 16位CPU验证性设计综合实验
267
实验9-2 新指令设计及程序测试实验
267
实验9-3 16位CPU的优化设计与创新
268
实验9-4 CPU创新设计竞赛
269
第10章 Verilog Test Bench仿真
271
10.1 Verilog行为仿真流程
272
10.2 Verilog测试基准示例
274
10.3 Verilog Test Bench测试流程
276
10.4 Verilog系统任务和系统函数
279
10.4.1 系统任务和系统函数
279
10.4.2 预编译语句
285
10.5 延时模型
285
10.5.1 #延时和门延时
286
10.5.2 延时说明块
286
10.6 其他仿真语句
287
10.6.1 fork-join块语句
287
10.6.2 wait语句
288
10.6.3 force、release语句
288
10.6.4 deassign语句
289
10.7 仿真激励信号的产生
289
10.8 Verilog数字系统仿真
291
习题
292
实验
292
实验10-1 在ModelSim上对计数器的Test Bench进行仿真
292
实验10-2 在ModelSim上进行16位累加器设计仿真
292
第11章 DSP Builder设计初步
294
11.1 MATLAB/DSP Builder及其设计流程
294
11.2 正弦信号发生器设计
297
11.2.1 建立设计模型
297
11.2.2 Simulink模型仿真
303
11.2.3 SignalCompiler使用方法
307
11.2.4 使用ModelSim进行RTL级仿真
308
11.2.5 使用Quartus II实现时序仿真
310
11.2.6 硬件测试与硬件实现
310
11.3 DSP Builder层次化设计
311
11.4 基于DSP Builder的DDS设计
314
11.4.1 DDS模块设计
314
11.4.2 FSK调制器设计
316
11.4.3 正交信号发生器设计
318
11.4.4 数控移相信号发生器设计
319
11.4.5 幅度调制信号发生器设计
320
11.5 数字编码与译码器设计
321
11.5.1 伪随机序列
321
11.5.2 帧同步检出
323
11.6 HIL硬件仿真
325
习题
329
实验与设计
329
实验11-1 利用MATLAB/DSP Builder设计基本电路模块
329
实验11-2 基于DSP Builder的DDS应用模型设计
330
实验11-3 编译码器设计实验
332
实验11-4 HIL硬件环仿真实验
332
实验11-5 DSP Builder状态机应用实验
333
第12章 DSP Builder设计深入
335
12.1 FIR数字滤波器设计
335
12.1.1 FIR滤波器原理
335
12.1.2 使用DSP Builder设计FIR滤波器
336
12.1.3 使用MATLAB的滤波器设计工具
341
12.1.4 使用FIR IP Core设计FIR滤波器
346
12.2 HDL模块插入仿真与设计
350
12.3 正交幅度调制与解调模型设计
351
12.4 NCO IP核应用
354
12.5 基于IP的数字编译码器设计
356
习题
358
实验与设计
359
实验12-1 FIR数字滤波器设计实验
359
实验12-2 编译码器与调制解调模块设计实验
360
实验12-3 HDL Import模块应用实验
360
参考文献
361
附录A EDA开发系统及相关软硬件
362
A.1 KX_DN8系列EDA/SOPC系统
363
A.2 部分实验扩展模块
365
A.3 .mif文件生成器使用方法
366

作者简介

潘松、陈龙、黄继业编著的《EDA技术与VerilogHDL(第2版高等院校电子信息科学与工程规划教材)》系统地介绍了EDA技术和VerilogHDL硬件描述语言,将VerilogHDL的基础知识、编程技巧和实用方法与实际工程开发技术在先进的EDA设计平台――QuartusII上很好地结合起来,使读者通过《EDA技术与VerilogHDL(第2版高等院校电子信息科学与工程规划教材)》的学习能迅速了解并掌握EDA技术的基本理论和工程开发实用技术,为后续的深入学习和发展打下坚实的理论与实践基础。

作者依据高校课堂教学和实验操作的规律与要求,并以提高学生的实际工程设计能力和自主创新能力为目的,恰当编排了全书内容。全书共分为7个部分:EDA技术的概述、VerilogHDL语法知识及其实用技术、QuartusII及LPM宏模块的详细使用方法、基于Verilog的有限状态机设计技术、基于Verilog的16位实用CPU设计技术及创新实践项目、基于ModelSim的TestBench仿真技术,以及基于MATLAB和DSPBuilder平台的EDA设计技术及大量实用系统设计示例。除个别章节外,其余各章都安排了相应的习题和大量针对性强的实验与设计项目。书中列举的VerilogHDL示例都经编译通过或经硬件测试通过。

《EDA技术与VerilogHDL(第2版高等院校电子信息科学与工程规划教材)》主要面向高等院校本、专科的EDA技术和VerilogHDL语言基础课,推荐作为电子工程、通信、工业自动化、计算机应用技术、电子对抗、仪器仪表、数字信号或图像处理等学科专业和相关实验指导课的教材用书或主要参考书,同时也可作为电子设计竞赛、FPGA开发应用的自学参考书。

与此教材配套的还有CAI教学课件、实验指导课件、实验源程序和实验设计项目相关的详细技术资料等,读者都可免费索取。


 EDA技术与Verilog HDL下载



发布书评

 
 


 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024