新書推薦:
《
不挨饿快速瘦的减脂餐
》
售價:HK$
67.0
《
形而上学与存在论之间:费希特知识学研究(守望者)(德国古典哲学研究译丛)
》
售價:HK$
110.7
《
卫宫家今天的饭9 附画集特装版(含漫画1本+画集1本+卫宫士郎购物清单2张+特制相卡1张)
》
售價:HK$
132.2
《
万千教育学前·与幼儿一起解决问题:捕捉幼儿园一日生活中的教育契机
》
售價:HK$
47.0
《
史铁生:听风八百遍,才知是人间(2)
》
售價:HK$
55.8
《
量子网络的构建与应用
》
售價:HK$
109.8
《
拍电影的热知识:126部影片里的创作技巧(全彩插图版)
》
售價:HK$
109.8
《
大唐名城:长安风华冠天下
》
售價:HK$
87.4
|
內容簡介: |
本书从简单的数字逻辑电路设计基础开始,由浅入深,讲解组合逻辑和时序逻辑电路的设计技术、计算机组成的基本原理和计算机体系结构的相关概念,后深入探讨了现代计算机系统如何利用硬件支持安全的体系结构。书中通过大量实例揭示作者对现代计算机设计目标的理解,展示如何应用流水线和并行化技术提升并发处理能力,并阐述了处理器体系结构与编译器、编程方法和性能之间的关系。本书可作为高等院校“数字逻辑与计算机组成”相关课程本科生、研究生教材,也可作为电子信息类相关专业人士完整理解计算机系统的整体组成和硬件工作原理的参考书。
|
關於作者: |
Nikrouz Faroughi,加利福尼亚州立大学萨克拉门托分校教授、计算机科学系研究生专员和计算机工程专业教师。从密西根州立大学获得计算机工程学士学位、计算机科学硕士学位、电子工程硕士学位和计算机工程方向的电子工程博士学位。曾任职系统分析师,并曾作为顾问和技术经理在英特尔公司工作,目前在该公司兼职。
|
目錄:
|
目 录
Digital Logic Design and Computer Organization with Computer Architecture for Security
出版者的话
译者序
前言
致谢
第1章 导论1
1.1 简介1
1.1.1 数据表示1
1.1.2 数据通路5
1.1.3 计算机系统5
1.1.4 嵌入式系统7
1.2 逻辑设计7
1.2.1 电路最小化8
1.2.2 实现9
1.2.3 电路类型10
1.2.4 计算机辅助设计工具12
1.3 计算机组成13
1.4 计算机体系结构13
1.4.1 流水线14
1.4.2 并行性15
1.5 计算机安全19
参考文献19
练习19
第2章 组合电路:小型设计22
2.1 简介22
2.2 逻辑表达式24
2.2.1 乘积的和表达式25
2.2.2 和的乘积表达式27
2.3 规范表达式29
2.3.1 极小项29
2.3.2 极大项30
2.4 逻辑化简30
2.4.1 卡诺图31
2.4.2 K图化简33
2.5 逻辑化简算法37
2.6 电路时序图43
2.6.1 信号传播延迟45
2.6.2 扇入和扇出45
2.7 其他逻辑门46
2.7.1 缓存46
2.7.2 集电极开路缓冲区46
2.7.3 三态缓存48
2.8 设计实例50
2.8.1 全加器50
2.8.2 多路选择器52
2.8.3 译码器54
2.8.4 编码器55
2.9 实现57
2.9.1 可编程逻辑器件57
2.9.2 设计流程58
2.10 硬件描述语言60
2.10.1 结构模型60
2.10.2 传输延迟仿真63
2.10.3 行为建模65
2.10.4 综合与仿真67
参考文献69
练习69
第3章 组合电路:大型设计72
3.1 简介72
3.2 算术函数74
3.3 加法器74
3.3.1 进位传输加法器74
3.3.2 先行进位加法器75
3.4 减法器81
3.5 2的补码加法减法器83
3.6 算术逻辑单元86
3.6.1 设计部分:位并行87
3.6.2 设计部分:位串行91
3.7 设计实例93
3.7.1 乘法器93
3.7.2 除法器95
3.8 实数算术96
3.8.1 浮点数标准97
3.8.2 浮点数据空间98
3.8.3 浮点运算100
3.8.4 浮点单元104
参考文献105
练习105
第4章 时序电路:核心模块109
4.1 简介109
4.2 SR锁存器110
4.3 D锁存器113
4.4 锁存器的缺陷114
4.5 D触发器115
4.5.1 选择电路116
4.5.2 操作规范116
4.5.3 建立和保持时间116
4.6 无相位差的时钟频率估计120
4.7 触发器使能120
4.8 其他触发器121
4.9 硬件描述语言模型122
参考文献124
练习125
第5章 时序电路:小型设计127
5.1 简介127
5.2 状态机介绍:寄存器设计128
5.2.1 寄存器模型129
5.2.2 多功能寄存器130
5.3 FSM设计132
5.3.1 二进制编码状态134
5.3.2 独热码状态137
5.4 计数器142
5.5 容错FSM149
5.6 时序电路的时序154
5.6.1 带有时钟相位差的时钟频率评估157
5.6.2 异步接口157
5.7 硬件描述语言模型159
参考文献164
练习164
第6章 时序电路:大型设计168
6.1 简介168
6.2 数据通路设计169
6.2.1 单周期170
6.2.2 多周期171
6.2.3 流水线171
6.3 控制单元设计技术175
6.3.1 硬件控制单元:FSD176
6.3.2 微程序控制176
6.3.3 硬件控制:流水线180
6.4 能源和功率消耗181
6.5 设计实例183
6.5.1 无符号串行乘法器184
6.5.2 带符号串行乘法器192
6.5.3 计算机图形学:旋转199
参考文献211
练习211
第7章 存储器214
7.1 简介214
7.2 存储技术215
7.2.1 只读存储器215
7.2.2 随机存取存储器215
7.2.3 应用217
7.3 存储单元阵列217
7.3.1 字存取218
7.3.2 突发访问218
7.4 存储器组织结构220
7.4.1 现代DRAM221
7.4.2 SRAM存储单元模型223
7.4.3 SRAM芯片内部组织结构223
7.4.4 存储单元设计225
7.5 存储时序228
7.5.1 SRAM228
7.5.2 DRAM230
7.5.3 SDRAM231
7.5.4 DDR SDRAM232
7.6 存储器体系结构232
7.6.1 高位交叉存储233
7.6.2 低位交叉存储233
7.6.3 多通道234
7.7 设计实例:多处理器存储结构236
7.7.1 UMA与NUMA236
7.7.2 NUMA应用236
7.8 HDL模型237
参考文献240
练习240
第8章 指令集体系结构243
8.1 简介243
8.1.1 指令类型244
8.1.2 程序翻译244
8.1.3 指令周期244
8.2 指令集体系结构的类型246
8.2.1 寻址模式246
8.2.2 指令格式247
8.2.3 堆栈ISA247
8.2.4 累加器ISA249
8.2.5 CISC-ISA249
8.2.6 RISC-ISA250
8.3 设计示例250
8.3.1 累加器ISA指令集设计250
8.3.2 累加器ISA处理器:单周期255
8.3.3 累加器ISA处理器:流水线259
8.3.4 RISC-ISA处理器266
8.4 先进的处理器架构269
8.4.1 深度流水线269
8.4.2 分支预测技术271
8.4.3 指令级并行278
8.4.4 多线程284
参考文献288
练习288
第9章 计算机体系结构:互连293
9.1 简介293
9.2 存储器控制器298
9.2.1
|
內容試閱:
|
前 言Digital Logic Design and Computer Organization with Computer Architecture for Security编写本书的目的是让读者通过一本教科书全面理解数字逻辑设计和计算机组成。此外,本书还有独立的一章介绍安全的计算机体系结构。
本书涵盖数字逻辑设计的基本原理和Verilog硬件描述语言设计。各个章节分别讨论简单和复杂的组合电路和时序电路的设计方法。本书概述了电路设计的现代工具和方法,而Verilog实例仅用于展示该语言的基本特性和可综合特性。如有需要,教师可以选择用VHDL替代。不过,本书并不要求使用硬件描述语言。
本书内容包括存储器组织、处理器核心和处理器组织结构,以及硬件支持的计算机安全等。由于技术的进步以及对高速和低功耗设计的需求改变了计算机组织结构的基础,因此本书尝试不仅提供简单的实例用于展示基本的设计概念,而且揭示对现代计算机设计目标的理解。
本书还从指令集体系结构角度讨论了计算机体系结构的概念,包括支持安全指令执行的架构、流水线和并行化,以及存储器层次结构。本书尝试提供大量实例来展示如何应用流水线和并行化技术来提升并发处理能力并降低或隐藏延迟(这是两个影响性能的因素)。程序代码实例也用于展示CPU体系结构与编译器、编程方法和性能之间的关系。
各章节概述本书一共有11章。第1章概述了数字系统、计算创新、数码系统、数字逻辑设计和计算机组成体系结构及安全。
第2章和第3章涵盖简单和复杂的组合电路,包括整型和浮点算术运算。在第2章讨论小型电路的设计方法时,假定若需要化简超过4个输入变量的真值表,学生可以利用逻辑化简软件,例如从互联网上免费下载的Espresso。这一章还介绍了设计工具、结构级和行为级设计模型,以及利用可编程逻辑器件的电路设计,也包括Verilog设计实例及其综合和仿真结果。第3章涵盖设计大型组合电路的方法和整型及浮点数计算机算术运算,同样给出了设计实例。
第4~6章涵盖了简单和复杂的时序电路,从基本模型到复杂的数据通路与控制,再到时序约束、设计效率和功耗利用。第4章介绍了锁存器、触发器及其时序要求。第5章介绍了有限状态机(FSM)设计及其时序要求和异步输入的处理。第6章介绍了单周期、多周期和流水线数据通路与控制。设计实例展示了数据通路和基于FSM、微程序及流水线的三种控制单元组织,此外还给出了几个数据通路设计实例,包括无符号和带符号乘法运算以及二维虚拟目标旋转。
第7章专注于存储器,包括SDRAM技术,以及包括交叉和多通道在内的存储器设计。这一章也介绍了存储器通信协议、性能,以及均匀存储器存取(UMA)和非均匀存储器存取(NUMA)组织;还讨论了一些编程方法实例,这些实例可以利用NUMA组织结构的优势来提高性能。
第8章讲解CPU设计,从单周期和流水线到精简指令集计算机(RISC)、深度流水和分支预测,再到静态和动态指令集并行(ILP),直到多线程。章中包括CPU数据通路实例的设计和仿真,并给出了编程代码实例来说明通过编译器优化改进性能、分支预测、ILP和多线程。
第9章专注于微型计算机体系结构,内容从简单的总线结构到集成结构再到现代点到点结构的历史脉络,也包括IO端口寻址、中断驱动IO和直接存储器访问(DMA),以及现代“即插即用”设备控制器接口,例如USB主机控制器接口。这一章还讨论了中断和相关操作系统任务,中断处理CPU的数据通路和指令集也被用作实例来解释简单计算机的体系结构和操作。
第10章涵盖存储器层次结构的原理及其组织。这一章还讨论了单处理器系统中的cache一致性,也介绍了共享存储器多处理器系统中的cache一致性问题,通过实例从缺失率、硬件数量和功耗等方面说明不同的cache映射技术的优势,还介绍了虚地址转换、页表管理和用于转换虚地址的可选处理器的组织结构。
第11章从应用在计算机体系结构中的安全工程方法的基本概念入手,接着引出访问控制、安全策略模型、硬件安全策略机制和软件物理攻击机制,并介绍了加密技术。这一章还介绍了基于安全协处理器(用于实现安全数据存储和通信等)或者安全通用处理器实现的可信计算基(TCB)架构,也详细介绍了实现程序(指令和数据)机密性和完整性的安全处理器的体系结构。
虽然第11章的内容被编排在一起以方便读者阅读,但其内容也同时包含在其他章节中。例如,当学到时序电路设计技术时,学生就可以设计简单的加密电路。还有一些该章涉及的内容也在其他章节中出现过,包括硬件木马和硬件安全策略机制、存储器认证、中断的安全处理、安全协处理器和安全处理器架构等。为了给出第11章内容与其他章节相关内容的关联,第1章、第3章、第5~10章的练习部分都列出了第11章的练习,并加注说明为“计算机安全”。教师在这些章节中可以选择所列的习题。
为便于参考,关键字在第一次出现时会加粗显示。缩写的关键字不加粗,但少数会标出完整术语,便于读者阅读。选择本书为其课程必修教材的学术机构的教师可获得练习答案和PowerPoint幻灯片。
如何阅读本书大多数人认为,本书对于数字设计和计算机组成的讨论深度明显高于市面上相似的教材。对于这两个主题,本教材的目标是在覆盖的广度和深度方面更加平衡。在一个学期中,教师既能审慎地选择知识点,也可以选择其课程中需要强调的每个知识点的深度和广度。本教材也包含了足够的内容来适应两个季度或两个学期的课程安排,以便深入讲授数字逻辑设计和计算机组成体系结构两部分内容,也使学生有更多的时间来深入理解设计练习。下面是对读者阅读本书的方式的几点建议:
1.对于没有或只有有限的数字逻辑基础的本科生,课程内容可以包括第1~5章和第6~9章的部分知识点,以及其余章节中的典型知识点。某些章节和设计实例可以跳过。
2.对于具备一些数字逻辑基础的计算机科学和计算机工程的本科生,课程内容可以包括第1章、复习或选讲第2~5章中的部分知识点、第6~10章全部知识点和第11章的部分知识点。
3.对于那些向没有或只有有限的数字逻辑设计和计算机组成基础的研究生授予学位的学术机构,本书是一本理想的教科书,因为其将数字逻辑设计和计算机组成及体系结构整合到了一本书中。
4.希望更新其数字逻辑和计算机组成及体系结构知识以及希望学习安全相关的计算机体系结构概念的专业人士可以从本书中获益。
致 谢Digital Logic Design and Computer Organization with Computer Architecture for Security许多人都对本书做出了宝贵的贡献。我要特别感谢同事Isaac Ghansah和Thomas Mathews,他们对本书内容做出了重要贡献并提出了宝贵的建议。我也要感谢Martin Nicholes(现在英特尔工作),他对第11章的内容提出了有见地的参考意见。我还要感谢审稿人给出的深思熟虑的意见,本书终稿的部分内容根据他们的建议做了修改。
我的许多学生也对本书的初稿提供了有价值的反馈,并帮助找出了文中的一些错误。他们对本书中某些实例的详尽分析为发现书中的文字和拼写错误帮助颇多。我要特别感谢Kevin Schultz、Andrew Larsen、Branden Garner、Chris Dalisay、Thomas Lee、Robert Carreras、Ian Reif和Matt Larsen,也欢迎大家帮助找出书中未修正的错误并提出任何改进本书的建议。我还要感谢McGraw-Hill出版社的赞助编辑Michael McCabe、编辑主管Donna Martone、著作监督Lynn Messina、文字编辑Lisa McCoy、美术指导Jeff Weeks,以及项目经理Dheeraj Chahal和MPS公司的Surendra Shivam,他们提供了大力支持,为本书设计了封面并完成了最后加工。
最后但同样重要的是,我要感谢妻子Gita和儿子Kian与Ryon的耐心和支持,特别是忍受我长时间忘我地投入本书的写作。
|
|