《Verilog HDL与数字电路设计》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:王冠,黄熙,王鹰编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2006
  • ISBN:7111173910
  • 页数:330 页
图书介绍:本书介绍了Verilog HDL与数字电路设计的相关知识。

目录 1

丛书序 1

前言 1

第1章 概述 1

1.1 什么是HDL 1

1.2 Verilog HDL概述 1

1.2.1 什么是Verilog HDL 1

1.2.2 Verilog HDL的历史 1

1.3 Verilog HDL与VHDL的比较 2

1.4 System Verilog 3

1.5 小结 3

第2章 初识Verilog HDL 4

2.1 自顶向下的设计和自底向上的实现 4

2.2 不同抽象级别的Verilog HDL模型 6

2.3 描述数字电路系统的行为 7

2.4 设计数字电路系统 7

2.5 Verilog HDL的基本单元——模块 8

2.6 逻辑功能描述的3种方法 12

2.6.1 用assign描述逻辑功能 12

2.6.2 用always描述逻辑功能 13

2.6.3 利用创建实例来描述逻辑功能 15

2.6.4 多个assign、always和实例间的关系 16

2.7 块语句 18

2.7.1 begin…end块 18

2.7.2 for k…join块 19

2.8 initial语句 21

2.9 小结 22

第3章 Veriilog HDL基本语法 24

3.1 词法约定 24

3.1.1 注释 24

3.1.2 数字声明 25

3.1.3 操作符 27

3.1.5 关键字 29

3.1.4 字符串 29

3.1.7 空白符 30

3.2 数据类型 30

3.1.6 标识符 30

3.2.1 线网型 31

3.2.2 寄存器型 32

3.2.3 参数型 32

3.2.4 数组 33

3.3 赋值语句 34

3.3.1 连续赋值 34

3.3.2 过程赋值 34

3.4 条件结构 40

3.4.1 if…else 40

3.4.2 ease语句 41

3.4.3 if…else嵌套与case的比较 43

3.4.4 使用条件操作符实现条件结构 44

3.5.2 while语句 45

3.5 循环结构 45

3.5.1 repeat语句 45

3.5.3 for语句 46

3.5.4 forever语句 46

3.5.5 disable语句 47

3.6 任务和函数 47

3.6.1 任务 48

3.6.2 函数 50

3.7 预编译指令 52

3.7.1 宏定义语句`define 52

3.7.2 文件包含语句`inelude 55

3.7.3 条件编译指令`ifdef、`else、`endif 58

3.7.4 时间尺度`timescale 60

3.8 小结 62

标准 64

4.1.1 对敏感列表所作的增强 64

第4章高级语法 64

4.1.2 对端口声明所作的增强 66

4.1.3 对有符号型变量所作的增强 67

4.1.4 增加乘方操作符“**” 67

4.1.5 对给寄存器型变量赋初值所作的增强 68

4.1.6 对自动位宽扩展所作的增强 68

4.2 门级建模 69

4.3 用户自定义原语 71

4.3.1 用户自定义原语简介 71

4.3.2 使用三值逻辑描述组合逻辑电路 73

4.3.3 使用用户自定义原语描述时序逻辑电路 74

4.4 系统任务和函数 77

4.4.1 用于暂停和退出仿真的系统任务 77

4.4.2 用于监测信号的系统任务 78

4.4.3 用于写文件的系统任务 81

4.4.4 用于读文件的系统任务 82

4.4.5 用于获取仿真时间的系统函数 83

4.4.6 用于产生随机数的系统任务 84

4.4.7 用于转换有符号数和无符号数的系统任务 85

4.5 逻辑验证 86

4.6 小结 91

第5章 组合逻辑电路 92

5.1 组合逻辑电路简介 92

5.2 使用Verilog HDL描述组合逻辑电路 93

5.3 常用组合逻辑的Verilog描述 93

5.3.1 基本门电路 94

5.3.2 三态门 97

5.3.3 加法器 98

5.3.4 比较器 102

5.3.5 编码器 104

5.3.6 译码器 106

5.3.7 多路选择器 108

5.4 简单运算单元 109

5.5 小结 111

第6章 时序逻辑电路 112

6.1 时序逻辑电路简介 112

6.2 使用Verilog HDL设计时序逻辑电路 113

6.3 常用时序逻辑电路 115

6.3.1 锁存器 115

6.3.2 触发器 118

6.3.3 寄存器 122

6.3.4 移位寄存器 124

6.3.5 计数器 128

6.4 用流水线改善电路性能 131

6.5 控制信号和数据信号的配合 134

6.6 同步复位与异步复位 135

6.7 小结 139

7.2 设计有限状态机电路 140

7.1 有限状态机简介 140

7.2.1 设计流程 140

第7章 有限状态机 140

7.2.2 使用Verilog HDL设计有限状态机 143

7.2.3 有限状态机的复位和无效状态的恢复 147

7.3 有限状态机的设计 156

7.3.1 序列检测器 156

7.3.2 密码锁 159

7.4 小结 166

第8章 Verilog HDL的综合 166

8.2 综合的概念 167

8.3 逻辑综合的优点 167

8.1 概述 167

8.4 逻辑综合的一般流程 168

8.4.1 Verilog HDL的综合过程 168

8.4.2 综合过程的设计 169

8.5 可综合风格设计的一般原则 170

8.6 可综合风格的组合逻辑电路设计 172

8.7 简单的可综合时序逻辑电路设计 181

设计 184

8.8.1 有限状态机的结构与原理 184

8.8 具有可综合风格的有限状态机的 184

8.8.2 有限状态机的一般设计步骤 185

8.8.3 具有可综合风格的Moore型有限状态机的设计 186

8.8.4 具有可综合风格的Mealy型有限状态机的设计 193

8.8.5 可综合风格有限状态机的同步与复位 203

8.9 小结 204

第9章 常用典型模块的设计 205

9.1 计数器的设计 205

9.2 时序信号的检测模型的设计 218

9.3 简化的交通信号灯控制模块的设计 224

9.4 简单的UART的设计 231

9.5 小结 242

第10章 SPI总线及设计 243

10.1 SPI总线概述 243

10.2 SPI控制模块的设计 244

10.2.1 SCK时钟逻辑模块的设计 245

10.2.2 SPI状态控制模块的设计 248

10.2.3 SPI接收数据模块的设计 254

10.2.4 SPI发送数据模块的设计 256

10.2.5 SPI控制模块的生成 257

10.3 CPU/MCU接口模块设计 260

10.4 SPI总线系统的设计 267

10.5 SPI模块的仿真 268

10.6 小结 271

11.2 SDR SDRAM控制器的原理 273

11.1 虚拟器件与IP核 273

11.2.1 SDRAM概述 273

第11章 SDRAM控制器设计 273

11.2.2 SDR SDRAM控制器的结构 274

11.3 SDR SDRAM控制器的设计 276

11.4 小结 300

12.1.1 软件要求 301

12.1 设计准备 301

12.1.2 ISE软件的运行和ModelSim的配置 301

第12章 开发工具入门 301

12.2 用Verilog HDL设计输入 302

12.2.1 创建一个新的工程项目 302

12.2.2 创建设计模块的源文件 303

12.2.3 利用模板向导生成设计 305

12.3 对设计的模块进行仿真 306

12.3.1 测试平台波形源文件的创建 306

12.3.2 初始化输入波形 308

12.3.3 仿真输出 308

12.3.4 调用ModelSim对设计进行仿真 310

12.4 设计模块的综合 313

12.4.1 利用ISE开发环境对设计进行综合 313

12.4.2 综合结果报表分析 314

12.4.3 综合输出的原理网 318

12.5.1 运行Implement Design(设计实现) 319

12.5.2 利用资源分配器(Floorplanner)查看布局布线结果 319

12.5 设计的实现 319

12.6 原理图输入的设计方法 320

12.6.1 利用创建的Verilog HDL模块生成原理图模块 320

12.6.2 创建一个新的原理图文件 321

12.6.3 例化六十进制计数器模块 322

12.6.4 为原理图添加连线 323

12.6.5 为连线添加网络名 324

12.6.6 为各引脚添加输入输出标记 325

12.6.7 由原理图文件生成Verilog HDL文件 326

12.7 用EDIF方式输入的设计 327

12.8 小结 329

参考文献 330

4.1 Verilog IEEE 1364- 2001