發表於2024-12-13
數字邏輯設計與計算機組成 pdf epub mobi txt 電子書 下載
本書從簡單的數字邏輯電路設計基礎開始,由淺入深,講解組閤邏輯和時序邏輯電路的設計技術、計算機組成的基本原理和計算機體係結構的相關概念,後深入探討瞭現代計算機係統如何利用硬件支持安全的體係結構。書中通過大量實例揭示作者對現代計算機設計目標的理解,展示如何應用流水綫和並行化技術提升並發處理能力,並闡述瞭處理器體係結構與編譯器、編程方法和性能之間的關係。本書可作為高等院校“數字邏輯與計算機組成”相關課程本科生、研究生教材,也可作為電子信息類相關專業人士完整理解計算機係統的整體組成和硬件工作原理的參考書。
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 容錯FSM 149
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 硬件控製單元:FSD 176
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 現代DRAM 221
7.4.2 SRAM存儲單元模型 223
7.4.3 SRAM芯片內部組織結構 223
7.4.4 存儲單元設計 225
7.5 存儲時序 228
7.5.1 SRAM 228
7.5.2 DRAM 230
7.5.3 SDRAM 231
7.5.4 DDR SDRAM 232
7.6 存儲器體係結構 232
7.6.1 高位交叉存儲 233
7.6.2 低位交叉存儲 233
7.6.3 多通道 234
7.7 設計實例:多處理器存儲結構 236
7.7.1 UMA與NUMA 236
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 堆棧ISA 247
8.2.4 纍加器ISA 249
8.2.5 CISC-ISA 249
8.2.6 RISC-ISA 250
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章專注於微型計算機體係結構,內容從簡單的總綫結構到集成結構再到現代點到點結構的曆史脈絡,也包括I/O端口尋址、中斷驅動I/O和直接存儲器訪問(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的耐心和支持,特彆是忍受我長時間忘我地投入本書的寫作。
譯者序Digital Logic Design and Computer Organization with Computer Architecture for Security信息技術發展和應用的速度如此之快,以至於層齣不窮的新概念和新技術使人眼花繚亂、應接不暇。無論是物聯網、移動互聯網、雲計算、大數據,還是人工智能、智能硬件、機器學習、智能人機交互,這些熱點應用領域都要依靠計算機係統硬件提供的強大計算能力。因此,不僅是計算機專業,越來越多的各領域的專業人士都需要理解計算機係統硬件的完整組成和基本工作原理,進而在係統層麵掌握計算機工作的全貌。
我在北京郵電大學從事“計算機組成原理”課程教學二十餘年,深刻感覺到,計算機係統硬件課程對教和學雙方而言難度都非常大。開設“計算機組成原理”課程的目的是:幫助學生理解構成計算機硬件的基本電路的特性和設計方法;使學生瞭解計算機係統整體概念,理解指令在計算機硬件上的執行過程;理解計算機係統層次結構,理解高級語言程序、指令係統體係結構、編譯器、操作係統和硬件部件之間的關係;讓學生站在係統的高度考慮和解決問題,培養具有係統觀的軟件/硬件貫通人纔。因此,就教師而言,如果自身沒有對計算機係統硬件設計的深入體會,也就不可能讓學生深入地理解計算機係統的整體組成和工作原理。
本書在計算機係統硬件教學方麵做瞭非常有益的探索。作者Nikrouz Faroughi教授從密歇根州立大學獲得計算機科學碩士學位、電子工程碩士學位和計算機工程方嚮的電子工程博士學位,並曾作為顧問和技術經理在英特爾公司工作,擁有豐富的工程經驗,對計算機係統硬件有深入的瞭解。
本書是一部從專業角度討論計算機係統硬件技術的完整教材。通讀本書可以看齣,本書與其他教科書相比具有鮮明的特色。
第一個特色是深入淺齣、循序漸進,並帶有豐富的教學實例。作者從簡單的數字邏輯電路設計基礎開始,由淺入深,講解瞭組閤邏輯和時序邏輯電路的設計技術、計算機組成的基本原理和計算機體係結構的相關概念。全書共11章。第1章是計算機係統相關概念的概述;第2~5章分彆討論組閤邏輯電路和數字邏輯電路的設計;第6章則從大型時序電路設計過渡到計算機係統控製器的設計;第7~9章分彆討論存儲器、指令集體係結構和係統互連(總綫與輸入/輸齣係統);第10章討論多級存儲體係。
第二個特色是把計算機體係結構與係統安全問題相關聯。安全問題是現代信息係統麵臨的重大挑戰,如何在計算機係統硬件層麵支持係統安全是在當今網絡互連時代必須麵對的問題。第11章用較大篇幅深入探討瞭現代計算機係統如何利用硬件支持安全的體係結構。這一章從安全工程的基本概念入手,引齣訪問控製、硬件安全策略機製和軟件/物理攻擊機製,並介紹瞭加密技術、安全協處理器及安全通用處理器等諸多安全計算機體係結構的相關概念與方法。
第三個特色是突齣現代計算機的設計理念。由於移動計算和高性能計算對係統性能和功耗的要求,以及現代半導體技術進步和信息技術發展提供的可能性,計算機組織結構的 數字邏輯設計與計算機組成 下載 mobi epub pdf txt 電子書
數字邏輯設計與計算機組成 pdf epub mobi txt 電子書 下載