《数字系统设计与VHDL 第2版》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:(美)Charles H. Roth,(美)Lizy Kurian John著,金明录,刘倩译
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2008
  • ISBN:9787121067280
  • 页数:453 页
图书介绍:本书将工业标准硬件描述语言VHDL和数字系统设计融为一体。首先回顾数字系统设计的基本原理,然后从VHDL语言的基础知识开始覆盖许多基于VHDL语言的数字系统设计高级专题。学生了解基本原理之后,学习数字系统设计的最好方法是通过实例,因此书中详细介绍了丰富的设计实例,从简单的二进制加法器讲起,直到复杂的微处理机设计。本书的最大特点不是把VHDL语言作为单纯的程序语言,而是重点放在VHDL语言在数字系统设计中的实际应用。

第1章 逻辑设计基本原理简介 1

1.1组合逻辑电路 1

1.2布尔代数与代数式的化简 2

1.3卡诺图 5

1.3.1用卡诺图中嵌入的变量进行化简 7

1.4用与非门和或非门进行设计 8

1.5组合电路中的冒险 10

1.6 触发器和锁存器 11

1.7 Mealy时序电路设计 12

1.7.1 Mealy时序电路设计例子1:序列检测器 13

1.7.2 Mealy时序电路设计例子2:BCD码-余3码转换器 15

1.8 Moore时序电路设计 19

1.8.1 Moore电路例子1:序列检测器 19

1.8.2 Moore电路设计例子2:非归零码-曼彻斯特码转换器 20

1.9等价状态和状态表化简 21

1.10时序电路的时序 23

1.10.1传输延迟、建立时间和保持时间 23

1.10.2最大时钟工作频率 23

1.10.3时序条件 24

1.10.4时序电路中的毛刺 26

1.10.5同步设计 27

1.11三态逻辑和总线 31

习题 32

第2章 VHDL简介 38

2.1计算机辅助设计 38

2.2硬件描述语言 40

2.2.1如何学习一种语言 41

2.3组合逻辑电路的VHDL描述 42

2.4 VHDL模块 44

2.4.1四位全加器 46

2.4.2 buffer模式的使用 49

2.5顺序语句和进程语句 49

2.6用进程语句模拟触发器 51

2.7含有Wait语句的进程 54

2.8两种VHDL延迟:传输延迟和惯性延迟 56

2.9 VHDL代码的编译、仿真与综合 57

2.9.1多进程仿真 58

2.10 VHDL数据类型和运算符 60

2.10.1数据类型 60

2.10.2 VHDL语言的运算符 61

2.11简单综合示例 62

2.12多路选择器的VHDL设计 64

2.12.1并发语句的使用 64

2.12.2进程的使用 66

2.13 VHDL语言的库 67

2.14用VHDL进程语句模拟寄存器和计数器 70

2.15 VHDL的行为和结构描述方式 75

2.15.1时序机建模 76

2.16变量、信号和常数 82

2.16.1常数 85

2.17数组 85

2.17.1矩阵 86

2.18 VHDL中的循环语句 88

2.19 Assert和Report语句 90

习题 92

第3章 可编程逻辑器件简介 105

3.1可编程逻辑器件简介 105

3.2简单可编程逻辑器件 107

3.2.1只读存储器 107

3.2.2可编程逻辑阵列 111

3.2.3可编程阵列逻辑 115

3.2.4可编程逻辑器件/通用阵列逻辑 117

3.3复杂可编程逻辑器件 119

3.3.1 CPLD示例:Xilinx公司的CoolRunner系列芯片 120

3.4现场可编程门阵列 122

3.4.1 FPGA的结构 124

3.4.2 FPGA编程技术 126

3.4.3可编程逻辑模块的结构 129

3.4.4可编程互联 131

3.4.5 FPGA中的可编程I/O模块 134

3.4.6 FPGA中的专用元件 136

3.4.7 FPGA的应用 138

3.4.8 FPGA设计流程 139

习题 140

第4章 设计举例 144

4.1 BCD码-七段显示译码器 144

4.2 BCD加法器 146

4.3 32位加法器 147

4.3.1先行进位加法器 148

4.4交通灯控制器 153

4.5控制电路状态图 155

4.6记分板和控制器 156

4.6.1数据通道 156

4.6.2控制器 156

4.6.3 VHLD模型 157

4.7同步与去抖动 159

4.7.1单脉冲发生器 159

4.8相加-移位结构乘法器 160

4.9阵列结构乘法器 164

4.9.1 VHDL编程 166

4.10有符号整数/分数的乘法 167

4.11键盘扫描器 176

4.11.1扫描器 177

4.11.2去抖动器 177

4.11.3译码器 178

4.11.4控制器 178

4.11.5 VHDL代码 179

4.11.6键盘扫描器的测试平台 180

4.12二进制除法器的设计 182

4.12.1无符号数除法器 182

4.12.2有符号数除法器 185

习题 190

第5章 SM图与微程序 199

5.1状态机流程图 199

5.2 SM图的推导 202

5.2.1二进制乘法器 203

5.2.2掷骰子游戏 204

5.3 SM图的实现 210

5.3.1二进制乘法器控制器的实现 211

5.4掷骰子游戏的实现 213

5.5微程序 216

5.5.1双地址微代码 218

5.5.2单限制量、单地址微代码 220

5.5.3掷骰子游戏控制器的微程序实现 223

5.6链接状态机 225

习题 227

第6章 FPGA设计实例 236

6.1 FPGA中的函数实现 236

6.2基于香农分解的函数实现 240

6.3 FPGA的进位链 245

6.4 FPGA中的级联链 246

6.5商用FPGA的逻辑模块举例 246

6.5.1 Xilinx可配置逻辑模块 246

6.5.2 Altera逻辑单元 247

6.5.3 Actel Fusion逻辑单元 248

6.6 FPGA中的专用存储器 248

6.6.1 FPGA存储器的VHDL模型 250

6.7 FPGA中的专用乘法器 252

6.8可编程能力的代价 253

6.9 FPGA和单热状态赋值 255

6.10 FPGA的容量:门的最大个数和门的可用个数 256

6.11设计综合 257

6.11.1 case语句的综合 258

6.11.2 if语句的综合 260

6.11.3算术单元的综合 262

6.11.4面积、功耗和延迟的优化 263

6.12映射、布局和布线 264

6.12.1映射 264

6.12.2布局和布线 265

习题 267

第7章 浮点数算数 273

7.1浮点数的表示 273

7.1.1浮点数的二进制补码表示 273

7.1.2 IEEE 754浮点数格式 274

7.2浮点数乘法 278

7.3浮点数加法 284

7.4浮点数的其他运算 289

7.4.1减法 289

7.4.2除法 289

习题 290

第8章 VHDL语言的高级议题 294

8.1函数语句 294

8.2过程语句 296

8.3属性语句 298

8.3.1信号属性语句 298

8.3.2数组属性语句 299

8.3.3属性语句的使用 300

8.4重载操作符的生成 301

8.5多值逻辑和信号分辨 302

8.5.1 4值逻辑系统 302

8.5.2信号分辨函数 303

8.6 IEEE 9值逻辑系统 306

8.7基于IEEE 1164的SRAM模型 308

8.8 SRAM读/写系统模块 309

8.9类属语句 312

8.10命名关联 313

8.11生成语句 313

8.11.1条件生成语句 314

8.12文件和文本输入输出 315

习题 318

第9章 RISC微处理器设计 324

9.1 RISC 324

9.2 MIPS ISA 326

9.2.1算术指令 326

9.2.2逻辑指令 327

9.2.3存储器访问指令 328

9.2.4控制转移指令 328

9.3 MIPS指令编码 330

9.4 MIPS指令子集的实现 333

9.4.1数据通道设计 333

9.4.2指令执行流程 337

9.5 VHDL模块 338

9.5.1寄存器文件的VHDL模块 338

9.5.2内存的VHDL模块 339

9.5.3处理器CPU的VHDL代码 340

9.5.4完整的MIPS模块 344

9.5.5处理器模块测试 345

习题 349

第10章 硬件测试和可测试性设计 353

10.1组合逻辑电路的测试 353

10.2时序逻辑电路的测试 356

10.3扫描测试 359

10.4边界扫描 361

10.5内嵌自测试 370

习题 377

第11章 设计实例补充 382

11.1手表设计 382

11.1.1规格说明 382

11.1.2设计的实现 382

11.1.3手表模块的测试 388

11.2存储器时序模型 390

11.3通用异步收发机 396

习题 406

附录A VHDL语言小结 410

附录B IEEE标准库 418

附录C TEXTIO包集合 420

附录D 专题设计项目 422

索引 431

参考文献 451