当前位置:首页 > 工业技术
数字设计  原理与实践  第4版
数字设计  原理与实践  第4版

数字设计 原理与实践 第4版PDF电子书下载

工业技术

  • 电子书积分:23 积分如何计算积分?
  • 作 者:(美)韦克利(Wakerly,J.F.)著
  • 出 版 社:北京:高等教育出版社
  • 出版年份:2007
  • ISBN:7040213796
  • 页数:895 页
图书介绍:这本畅销书以其严谨的学术态度和实际经验讲述了板级和VLSI系统中的数字设计基本原理和实践需求。以作者在大学和工业界三十多年的经验,JohnWakerly直接指导了数千名电子工程的学生,通过他的书间接指导了数以万计的学生,并设计或管理了带来十亿美元以上收益的数字系统设计。第四版覆盖了所有通用的硬件描述语言,如ABEL、VHDL和Verilog。硬件描述语言几乎涵盖了所有的章节,但是都是以独立的节或小节的形式出现的。这使得学生和指导教师可以选择不学习或者学习其中的一种、多种或全部硬件描述语言。此外,新版本包含了大量新的练习,以及对基于硬件描述语言的设计的早期介绍。数百页的针对学生和教师的在线资源为《数字设计:原理与实践》一书提供了有力的支持。欲知更多信息,请访问:www.prenhall.com/wakerlyinfo。本书适用于作为一、二年级的数字逻辑设计课程教材。
《数字设计 原理与实践 第4版》目录

1 引论 1

1.1 关于数字设计 1

1.2 模拟与数字 3

1.3 数字器件 6

1.4 数字设计中的电子方面 7

1.5 数字设计中的软件方面 8

1.6 集成电路 11

1.7 编程逻辑器件 14

1.8 专用集成电路 16

1.9 印刷电路板 17

1.10 数字设计层次 18

1.11 以游戏之名 22

1.12 进一步探讨 23

练习题 23

2 数字系统和编码 25

2.1 进位计数制 26

2.2 八进制数和十六进制数 27

2.3 常见的进位计数制转换 29

2.4 非十进制数的加法和减法 32

2.5 负数的表示法 34

2.5.1 符号数值表示法 39

2.5.2 补码系统 39

2.5.3 基数补码表示法 39

2.5.4 二进制补码表示法 39

2.5.5 减1基补码表示法 39

2.5.6 反码表示法 39

2.5.7 余码表示法 39

2.6 二进制补码的加法和减法 39

2.6.1 加法法则 39

2.6.2 图形表示 40

2.6.3 溢出 41

2.6.4 减法法则 41

2.6.5 二进制补码和无符号二进制数 42

2.7 反码的加法和减法 44

2.8 二进制乘法 45

2.9 二进制除法 47

2.10 十进制数的二进制编码 48

2.11 格雷码 51

2.12 字符编码 53

2.13 行为、条件和状态的编码 53

2.14 n立方和距离 57

2.15 检错码和纠错码 58

2.15.1 检错码 58

2.15.2 纠错码和多重检错码 60

2.15.3 汉明码 61

2.15.4 CRC码 65

2.15.5 二维码 66

2.15.6 校验和码 68

2.15.7 n中取m码 68

2.16 用于串行数据传输和存储的编码 69

2.16.1 并行和串行数据 69

2.16.2 串行线路编码 70

参考文献 73

练习题 74

习题 76

3 数字电路 79

3.1 逻辑信号和门 80

3.2 逻辑系列 84

3.3 CMOS逻辑 86

3.3.1 CMOS逻辑电平 86

3.3.2 MOS晶体管 87

3.3.3 基本CMOS反相器电路 88

3.3.4 CMOS与非门和或非门 90

3.3.5 扇入 92

3.3.6 非反相门 93

3.3.7 CMOS与或非门和或与非门 94

3.4 CMOS电路的电气特性 96

3.4.1 概述 97

3.4.2 数据手册和规格 98

3.5 CMOS的静态电气特性 101

3.5.1 逻辑电平和噪声容限 101

3.5.2 带有电阻负载时的电路特性 103

3.5.3 非理想输入时的电路特性 108

3.5.4 扇出 111

3.5.5 负载效应 111

3.5.6 无用输入 112

3.5.7 CMOS器件的失效 113

3.6 CMOS的动态电气特性 114

3.6.1 转换时间 115

3.6.2 传输延迟 120

3.6.3 功耗 122

3.6.4 电流尖峰和去耦电容 124

3.6.5 感应效应 124

3.6.6 同步转换和接地反弹 126

3.7 其他CMOS输入输出结构 129

3.7.1 传输门 129

3.7.2 施密特触发输入 130

3.7.3 三态输出 132

3.7.4 漏极开路输出 133

3.7.5 驱动LED 135

3.7.6 多源总线 137

3.7.7 线连逻辑 138

3.7.8 上拉电阻 139

3.8 CMOS逻辑系列 141

3.8.1 HC和HCT 142

3.8.2 AHC和AHCT 143

3.8.3 HC、HCT、AHC和AHCT的电气特性 143

3.8.4 AC和ACT 148

3.8.5 FCT和FCT-T 149

3.8.6 FCT-T的电气特性 149

3.9 低压CMOS逻辑和接口 151

3.9.1 3.3VLVTTL和LVCMOS逻辑 152

3.9.2 5V容许输入 153

3.9.3 5V容许输出 154

3.9.4 TTL/LVTTL接口小结 155

3.9.5 低于3.3V的逻辑电平 155

3.10 双极逻辑 155

3.10.1 二极管逻辑 156

3.10.2 双极晶体管 158

3.10.3 晶体管-晶体管逻辑 160

3.10.4 TTL逻辑电平和噪声容限 162

3.10.5 TTL扇出 164

3.10.6 TTL逻辑系列 166

3.10.7 一个TTL数据手册 166

3.10.8 CMOS/TTL接口 169

3.10.9 发射极耦合逻辑 170

参考文献 174

练习题 175

习题 179

4 组合逻辑的设计原理 183

4.1 开关代数 184

4.1.1 公理 185

4.1.2 单变量定理 188

4.1.3 二变量定理和三变量定理 188

4.1.4 n变量定理 190

4.1.5 对偶性 193

4.1.6 逻辑函数的标准表示 196

4.2 组合电路分析 199

4.3 组合电路综合 205

4.3.1 电路描述和设计 205

4.3.2 电路操作 208

4.3.3 组合电路最小化 210

4.3.4 卡诺图 212

4.3.5 最小化“积之和” 214

4.3.6 其他的最小化方法 222

4.3.7 程序化的最小化方法 223

4.4 时序冒险 224

4.4.1 静态冒险 225

4.4.2 利用卡诺图发现静态冒险 226

4.4.3 动态冒险 227

4.4.4 设计无冒险电路 228

参考文献 229

练习题 230

习题 232

5 硬件描述语言 237

5.1 基于硬件描述语言的数字设计 238

5.1.1 什么是硬件描述语言 238

5.1.2 硬件描述语言工具包 239

5.1.3 基于硬件描述语言的设计流程 241

5.2 硬件描述语言ABEL 243

5.2.1 ABEL程序结构 244

5.2.2 ABEL编译器操作 246

5.2.3 WHEN语句和等式模块 248

5.2.4 真值表 250

5.2.5 范围、集合和关系 251

5.2.6 测试向量 253

5.2.7 其他ABEL特性 255

5.3 硬件描述语言VHDL 256

5.3.1 程序结构 256

5.3.2 类型、常数和数组 260

5.3.3 函数和过程 265

5.3.4 库和包 269

5.3.5 结构化设计要素 271

5.3.6 数据流的设计要素 275

5.3.7 行为的设计要素 278

5.3.8 时间尺度 284

5.3.9 模拟 285

5.3.10 测试平台 287

5.3.11 用于时序逻辑设计的VHDL特性 289

5.3.12 综合 289

5.4 硬件描述语言Verilog 290

5.4.1 程序结构 291

5.4.2 逻辑系统、节点、变量和常数 295

5.4.3 向量和操作符 299

5.4.4 数组 302

5.4.5 逻辑操作符和表达式 303

5.4.6 编译器指引 305

5.4.7 结构化设计要素 306

5.4.8 数据流的设计要素 310

5.4.9 行为的设计要素(过程码) 312

5.4.10 函数和任务 326

5.4.11 时间尺度 330

5.4.12 模拟 331

5.4.13 测试平台 332

5.4.14 用于时序逻辑设计的Verilog特性 334

5.4.15 综合 335

参考文献 335

练习题 337

习题 338

6 组合逻辑的设计实践 341

6.1 文档标准 342

6.1.1 模块图 344

6.1.2 门的符号 346

6.1.3 信号名和有效电平 347

6.1.4 管脚的有效电平 349

6.1.5 “泡到泡”的逻辑设计 351

6.1.6 硬件描述语言程序中的信号命名 354

6.1.7 绘制版图 355

6.1.8 总线 358

6.1.9 附加的图示信息 360

6.2 电路时序 362

6.2.1 时序图 362

6.2.2 传输延迟 364

6.2.3 时序规格 365

6.2.4 时序分析 368

6.2.5 时序分析工具 369

6.3 组合型可编程逻辑阵列PLD 370

6.3.1 可编程逻辑阵列 370

6.3.2 可编程阵列逻辑器件 373

6.3.3 基本的阵列逻辑器件 376

6.3.4 复杂的可编程逻辑器件CPLD 378

6.3.5 CMOS可编程逻辑器件电路 380

6.3.6 器件的编程和测试 382

6.4 译码器 384

6.4.1 二进制译码器 384

6.4.2 大规模元件的逻辑符号 386

6.4.3 3线-8线的译码器74x 387

6.4.4 级联的二进制译码器 390

6.4.5 利用ABEL和PLD实现译码器 390

6.4.6 用VHDL实现译码器 398

6.4.7 用Verilog实现译码器 403

6.4.8 七段译码器 408

6.5 编码器 408

6.5.1 优先编码器 410

6.5.2 优先编码器74x 411

6.5.3 用ABEL和PLD实现编码器 412

6.5.4 用VHDL实现编码器 416

6.5.5 用Verilog实现编码器 417

6.6 三态器件 418

6.6.1 三态缓冲器 418

6.6.2 标准MSI三态缓冲器 420

6.6.3 用ABEL和PLD实现三态输出 424

6.6.4 用VHDL实现三态输出 427

6.6.5 用Verilog实现三态输出 430

6.7 多路复用器 432

6.7.1 标准MSI多路复用器 433

6.7.2 扩展多路复用器 436

6.7.3 多路复用器、多路分配器和总线 438

6.7.4 用ABEL和PLD实现多路复用器 440

6.7.5 用VHDL实现多路复用器 444

6.7.6 用Verilog实现多路复用器 445

6.8 异或门和奇偶校验电路 447

6.8.1 异或门和同或门 447

6.8.2 奇偶校验电路 448

6.8.3 9位奇偶发生器74x 449

6.8.4 奇偶校验的应用 449

6.8.5 用ABEL和PLD实现异或门和奇偶校验电路 452

6.8.6 用VHDL实现异或门和奇偶校验电路 452

6.8.7 用Verilog实现异或门和奇偶校验电路 454

6.9 比较器 458

6.9.1 比较器结构 458

6.9.2 迭代电路 459

6.9.3 一个迭代比较器电路 460

6.9.4 标准MSI数值比较器 461

6.9.5 用硬件描述语言实现比较器 463

6.9.6 用ABEL和PLD实现比较器 466

6.9.7 用VHDL实现比较器 466

6.9.8 用Verilog实现比较器 469

6.10 加法器、减法器和算术逻辑部件 474

6.10.1 半加器和全加器 474

6.10.2 行波加法器 475

6.10.3 减法器 476

6.10.4 超前进位加法器 478

6.10.5 MSI加法器 479

6.10.6 MSI算术逻辑单元 482

6.10.7 组超前进位 484

6.10.8 用ABEL和PLDs实现加法器 487

6.10.9 用VHDL实现加法器 488

6.10.10 用Verilog实现加法器 490

6.11 组合乘法器 494

6.11.1 组合乘法器结构 494

6.11.2 用ABEL和PLD实现乘法 497

6.11.3 用VHDL实现乘法 497

6.11.4 用Verilog实现乘法 503

参考文献 508

练习题 509

习题 511

7 时序逻辑设计原 521

7.1 双稳态元件 523

7.1.1 数字分析 523

7.1.2 模拟分析 524

7.1.3 亚稳态行为 525

7.2 锁存器和触发器 526

7.2.1 S-R锁存器 527

7.2.2 S-R锁存器 529

7.2.3 带使能端的S-R锁存器 530

7.2.4 D锁存器 530

7.2.5 边沿触发D触发器 532

7.2.6 带使能端的边沿触发D触发器 534

7.2.7 扫描触发器 535

7.2.8 主/从S-R触发器 537

7.2.9 主/从J-K触发器 538

7.2.10 边沿触发J-K触发器 539

7.2.11 T触发器 541

7.3 时序同步状态机分析 542

7.3.1 状态机结构 542

7.3.2 输出逻辑 543

7.3.3 特征方程 544

7.3.4 使用D触发器的状态机分析 545

7.4 时序同步状态机设计 553

7.4.1 状态表设计实例 554

7.4.2 状态最小化 558

7.4.3 状态分配 560

7.4.4 采用D触发器的综合 563

7.4.5 采用J-K触发器的综合 566

7.4.6 采用D触发器的其他设计实例 566

7.5 用状态图设计状态机 570

7.6 用转换表综合状态机 577

7.6.1 转换方程 577

7.6.2 激励方程 578

7.6.3 方案变化 579

7.6.4 实现状态机 579

7.7 其他状态机设计实例 580

7.7.1 猜谜游戏 580

7.7.2 无用状态 582

7.7.3 输出编码状态分配 584

7.7.4 “无关”状态编码 584

7.8 分解状态机 587

7.9 反馈时序电路分析 590

7.9.1 基本分析 590

7.9.2 利用多反馈环路分析电路 594

7.9.3 竞争 596

7.9.4 状态表和流程表 597

7.9.5 CMOS D触发器分析 600

7.10 反馈时序电路设计 601

7.10.1 锁存器 601

7.10.2 设计基本模式流程表 603

7.10.3 流程表最小化 604

7.10.4 无竞争状态分配 605

7.10.5 激励方程 608

7.10.6 本质冒险 608

7.10.7 小结 611

7.11 ABEL时序电路设计特性 612

7.11.1 寄存型输出 612

7.11.2 状态图 613

7.11.3 外部状态存储器 618

7.11.4 定义Moore型输出 619

7.11.5 利用WITH语句定义Mealy型和流水型输出 620

7.11.6 测试向量 622

7.12 用VHDL实现时序电路设计 625

7.12.1 时钟电路 625

7.12.2 用VHDL设计状态机 628

7.12.3 一个VHDL状态机实例 630

7.12.4 VHDL中的状态分配 633

7.12.5 用VHDL实现流水型输出 634

7.12.6 无状态表时的直接VHDL编码 635

7.12.7 其他VHDL状态机实例 635

7.12.8 用VHDL描述触发器 639

7.12.9 VHDL状态机测试平台 641

7.12.10 反馈时序电路 645

7.13 用Verilog实现时序电路设计 646

7.13.1 时钟电路 646

7.13.2 用Verilog设计状态机 648

7.13.3 一个Verilog状态机实例 650

7.13.4 用Verilog实现流水型输出 652

7.13.5 无状态表时的直接Verilog编码 654

7.13.6 其他Verilog状态机实例 655

7.13.7 用Verilog描述触发器 657

7.13.8 Verilog状态机测试平台 659

7.13.9 反馈时序电路 662

参考文献 663

练习题 664

习题 669

8 时序逻辑设计实践 679

8.1 时序电路的文档标准 680

8.1.1 通用标准 680

8.1.2 逻辑符号 680

8.1.3 状态机描述 681

8.1.4 时序图和规格 682

8.2 锁存器和触发器 686

8.2.1 SSI锁存器和触发器 686

8.2.2 开关去抖 687

8.2.3 最简单的开关去抖器 688

8.2.4 总线保持电路 690

8.2.5 多位寄存器和锁存器 691

8.2.6 用ABEL和PLD实现寄存器和锁存器 694

8.2.7 用VHDL实现寄存器和锁存器 697

8.2.8 用Verilog实现寄存器和锁存器 701

8.3 时序PLD 703

8.3.1 时序GAL器件 703

8.3.2 PLD电路的时序规格 708

8.4 计数器 710

8.4.1 行波计数器 711

8.4.2 同步计数器 711

8.4.3 MSI计数器及应用 713

8.4.4 二进制计数器状态的译码 717

8.4.5 用ABEL和PLD实现计数器 719

8.4.6 用VHDL实现计数器 721

8.4.7 用Verilog实现计数器 725

8.5 移位寄存器 727

8.5.1 移位寄存器结构 727

8.5.2 MSI移位寄存器 728

8.5.3 移位寄存器计数器 730

8.5.4 环形计数器 732

8.5.5 Johnson计数器 735

8.5.6 线性反馈移位寄存器计数器 737

8.5.7 用ABEL和PLD实现移位寄存器 740

8.5.8 用VHDL实现移位寄存器 748

8.5.9 用Verilog实现移位寄存器 752

8.6 迭代电路与时序电路 756

8.7 同步设计方法 758

8.7.1 同步系统结构 759

8.8 同步设计中的障碍 762

8.8.1 时钟歪斜 762

8.8.2 门控时钟 765

8.8.3 异步输入 767

8.9 同步器失败和亚稳态 769

8.9.1 同步器失败 770

8.9.2 亚稳态分辨时间 771

8.9.3 可靠的同步器设计 771

8.9.4 亚稳态时序分析 772

8.9.5 较好的同步器 774

8.9.6 其他的同步器设计 776

8.9.7 同步高速数据传输 778

参考文献 788

练习题 790

习题 792

9 存储器、CPLD和FPGA 799

9.1 只读存储器 800

9.1.1 利用ROM实现随机组合逻辑功能 801

9.1.2 ROM内部结构 804

9.1.3 二维译码 807

9.1.4 商业ROM类型 809

9.1.5 ROM控制输入和时序 813

9.1.6 ROM应用 816

9.2 读/写存储器 821

9.3 静态RAM 822

9.3.1 静态RAM的输入和输出 822

9.3.2 静态RAM的内部结构 823

9.3.3 静态RAM的时序 825

9.3.4 标准静态RAM 827

9.3.5 同步SRAM 829

9.4 动态RAM 833

9.4.1 动态RAM结构 833

9.4.2 SDRAM时序 836

9.4.3 DDR SDRAM 839

9.5 复杂可编程逻辑器件 840

9.5.1 Xilinx XC9500 CPLD系列 841

9.5.2 功能模块结构 843

9.5.3 输入输出模块结构 846

9.5.4 开关阵列 847

9.6 现场可编程门阵列 850

9.6.1 XilinxXC4000FPGA系列 850

9.6.2 可配置逻辑模块 852

9.6.3 输入输出模块 854

9.6.4 可编程互连 856

参考文献 859

练习题 859

习题 860

索引 863

返回顶部