2018年8月27日09:03:09303.8K5
数字设计和计算机体系结构(原书第2版) 内容简介
本书以一种流行的方式介绍了从计算机组织和设计到更细节层次的内容,涵盖了数字逻辑设计的主要内容,展示了使用VHDL和Verilog这两种主要硬件描述语言设计MIPS处理器的技术细节,并通过MIPS微处理器的设计强化数字逻辑的概念。本书的典型特色是将数字逻辑和计算机体系结构融合,教学内容反映了当前数字电路设计的主流方法,并突出计算机体系结构的工程特点,书中的大量示例及习题也可以加强读者对基本概念和技术的理解和记忆。
数字设计和计算机体系结构(原书第2版) 目录
第1章 二进制
1.1 课程计划
1.2 控制复杂性的艺术
1.2.1 抽象
1.2.2 约束
1.2.3 三Y原则
1.3 数字抽象
1.4 数制
1.4.1 十进制数
1.4.2 二进制数
1.4.3 十六进制数
1.4.4 字节、半字节和全字
1.4.5 二进制加法
1.4.6 有符号的二进制数
1.5 逻辑门
1.5.1 非门
1.5.2 缓冲器
1.5.3 与门
1.5.4 或门
1.5.5 其他两输入逻辑门
1.5.6 多输入门
1.6 数字抽象
1.6.1 电源电压
1.6.2 逻辑电平
1.6.3 噪声容限
1.6.4 直流电压传输特性
1.6.5 静态约束
1.7 CMOS晶体管
1.7.1 半导体
1.7.2 二极管
1.7.3 电容
1.7.4 nMOS和PMOS晶体管
1.7.5 CMOS非门
1.7.6 其他CMOS逻辑门
1.7.7 传输门
1.7.8 类nMOS逻辑
1.8 功耗
1.9 总结和展望
习题
面试问题
第2章 组合逻辑设计
2.1 引言
2.2 布尔表达式
2.2.1 术语
2.2.2 与或式
2.2.3 或与式
2.3 布尔代数
2.3.1 公理
2.3.2 单变量定理
2.3.3 多变量定理
2.3.4 定理的统一证明方法
2.3.5 等式化简
2.4 从逻辑到门
2.5 多级组合逻辑
2.5.1 减少硬件
2.5.2 推气泡
2.6 X和Z
2.6.1 非法值X
2.6.2 浮空值Z
2.7 卡诺图
2.7.1 画圈的原理
2.7.2 卡诺图化简逻辑
2.7.3 无关项
2.7.4 小结
2.8 组合逻辑模块
2.8.1 复用器
2.8.2 译码器
2.9 时序
2.9.1 传播延迟和最小延迟
2.9.2 毛刺
2.10 总结
习题
面试问题
第3章 时序逻辑设计
3.1 引言
3.2 锁存器和触发器
3.2.1 SR锁存器
3.2.2 D锁存器
3.2.3 D触发器
3.2.4 寄存器
3.2.5 带使能端的触发器
3.2.6 带复位功能的触发器
3.2.7 晶体管级锁存器和触发器的设计
3.2.8 小结
3.3 同步逻辑设计
3.3.1 一些有问题的电路
3.3.2 同步时序电路
3.3.3 同步电路和异步电路
3.4 有限状态机
3.4.1 有限状态机设计实例
3.4.2 状态编码
3.4.3 Moore型状态机和Mealy型状态机
3.4.4 状态机的分解
3.4.5 由电路图导出状态机
3.4.6 有限状态机小结
3.5 时序逻辑的时序
3.5.1 动态约束
3.5.2 系统时序
3.5.3 时钟偏移
3.5.4 亚稳态
3.5.5 同步器
3.5.6 分辨时间的推导
3.6 并行
3.7 总结
习题
面试问题
第4章 硬件描述语言
4.1 引言
4.1.1 模块
4.1.2 硬件描述语言的起源
4.1.3 模拟和综合
4.2 组合逻辑
4.2.1 位运算符
4.2.2 注释和空白
4.2.3 缩位运算符
4.2.4 条件赋值
4.2.5 内部变量
4.2.6 优先级
4.2.7 数字
4.2.8 Z和X
4.2.9 位混合
4.2.10 延迟
4.3 结构化建模
4.4 时序逻辑
4.4.1 寄存器
4.4.2 复位寄存器
4.4.3 带使能端的寄存器
4.4.4 多寄存器
4.4.5 锁存器
4.5 更多组合逻辑
4.5.1 case语句
4.5.2 if语句
4.5.3 带有无关项的真值表
4.5.4 阻塞赋值和非阻塞赋值
4.6 有限状态机
4.7 数据类型
4.7.1 SystemVerilog
4.7.2 VHDL
4.8 参数化模块
4.9 测试程序
4.10 总结
习题
面试问题
第5章 数字模块
5.1 引言
5.2 算术电路
5.2.1 加法
5.2.2 减法
5.2.3 比较器
5.2.4 算术逻辑单元
5.2.5 移位器和循环移位器
5.2.6 乘法
5.2.7 除法
5.2.8 补充阅读
5.3 数制
5.3.1 定点数
5.3.2 浮点数
5.4 时序电路模块
5.4.1 计数器
5.4.2 移位寄存器
5.5 存储器阵列
5.5.1 概述
5.5.2 动态随机访问存储器
5.5.3 静态随机访问存储器
5.5.4 面积和延迟
5.5.5 寄存器文件
5.5.6 只读存储器
5.5.7 使用存储器阵列的逻辑
5.5.8 存储器HDL
5.6 逻辑阵列
5.6.1 可编程逻辑阵列
5.6.2 现场可编程逻辑门阵列
5.6.3 阵列实现
5.7 总结
习题
面试问题
第6章 体系结构
6.1 引言
6.2 汇编语言
6.2.1 指令
6.2.2 操作数:寄存器、存储器和常数
6.3 机器语言
6.3.1 R类型指令
6.3.2 l类型指令
6.3.3 J类型指令
6.3.4 解释机器语言代码
6.3.5 存储程序
6.4 编程
6.4.1 算术/逻辑指令
6.4.2 分支
6.4.3 条件语句
6.4.4 循环
6.4.5 数组
6.4.6 函数调用
6.5 寻址方式
6.6 编译、汇编和装入
6.6.1 内存映射
6.6.2 转换成二进制代码和开始执行程序
6.7 其他主题
6.7.1 伪指令
6.7.2 异常
6.7.3 有符号指令和无符号指令
6.7.4 浮点指令
6.8 从现实世界看:x86结构
6.8.1 x86寄存器
6.8.2 x86操作数
6.8.3 状态标志
6.8.4 x86指令集
6.8.5 x86指令编码
6.8.6 x86的其他特性
6.8.7 小结
6.9 总结
习题
面试问题
第7章 微体系结构
7.1 引言
7.1.1 体系结构状态和指令集
7.1.2 设计过程
7.1.3 MIPS微体系结构
7.2 性能分析
7.3 单周期处理器
7.3.1 单周期数据路径
7.3.2 单周期控制
7.3.3 更多指令
7.3.4 性能分析
7.4 多周期处理器
7.4.1 多周期数据路径
7.4.2 多周期控制
7.4.3 更多指令
7.4.4 性能分析
7.5 流水线处理器
7.5.1 流水线数据路径
7.5.2 流水线控制
7.5.3 冲突
7.5.4 更多指令
7.5.5 性能分析
7.6 硬件描述语言表示
7.6.1 单周期处理器
7.6.2 通用模块
7.6.3 基准测试程序
7.7 异常
7.8 高级微体系结构
7.8.1 深流水线
7.8.2 分支预测
7.8.3 超标量处理器
7.8.4 乱序处理器
7.8.5 寄存器重命名
7.8.6 单指令流多数据
7.8.7 多线程
7.8.8 同构多处理器
7.8.9 异构多处理器
7.9 从现实世界看:x86微体系结构
7.10 总结
习题
面试问题
第8章 存储器和输入/输出系统
8.1 引言
8.2 存储器系统性能分析
8.3 高速缓存
8.3.1 高速缓存中存放的数据
8.3.2 高速缓存中的数据查找
8.3.3 数据的替换
8.3.4 高级高速缓存设计
8.3.5 MIPS高速缓存的发展
8.4 虚拟存储器
8.4.1 地址转换
8.4.2 页表
8.4.3 转换后备缓冲器
8.4.4 存储器保护
8.4.5 替换策略
8.4.6 多级页表
8.5 I/O简介
8.6 嵌入式I/O系统
8.6.1 PIC32MX675F512H微控制器
8.6.2 通用数字I/O
8.6.3 串行I/O
8.6.4 计时器
8.6.5 中断
8.6.6 模拟I/O
8.6.7 其他微控制器外设
8.7 PC I/O系统
8.7.1 USB
8.7.2 PCI和PCI Express
8.7.3 DDR3内存
8.7.4 网络
8.7.5 SATA
8.7.6 连接到PC
8.8 从现实世界看:x86存储器和I/O系统
8.8.1 x86高速缓存系统
8.8.2 x86虚拟存储器
8.8.3 x86可编程I/O
8.9 总结
后记
习题
面试问题
附录A数字系统实现
附录B MIPS指令
附录C C语言编程
附录D MIPS处理器的FPGA实现
补充阅读
索引
数字设计和计算机体系结构(原书第2版) 精彩文摘
1.2控制复杂性的艺术
与非专业人员相比,计算机科学家或工程师的一个重要特征是掌握了系统地控制复杂性的方法。现代数字系统由上百万,甚至数十亿的晶体管构成。没有人能通过为每个晶体管的电子运动建立并求解方程的方法来理解这样的系统。读者必须学会如何控制复杂性,从而理解如何在不陷入细节的情况下构造微处理器系统。
本文来自浅沫投稿,不代表电子书资源网立场,如若转载,请联系原作者获取。