書主要介紹計(jì)算機(jī)的基本組成原理及內(nèi)部工作機(jī)制,全書共9章,分別介紹計(jì)算機(jī)系統(tǒng)概論、計(jì)算機(jī)中的數(shù)據(jù)表示、運(yùn)算方法及運(yùn)算器設(shè)計(jì)、存儲(chǔ)系統(tǒng)、指令系統(tǒng)、中央處理器的工作原理和設(shè)計(jì)方法、指令流水線的實(shí)現(xiàn)機(jī)理、總線系統(tǒng)、輸入輸出系統(tǒng)。
本書嘗試站在硬件工程師的視角,利用數(shù)字邏輯課程中組合邏輯、同步時(shí)序邏輯電路設(shè)計(jì)的相關(guān)知識(shí),從邏輯門開始逐步構(gòu)建運(yùn)算器、存儲(chǔ)器、數(shù)據(jù)通路和控制器,設(shè)計(jì)流水線沖突冒險(xiǎn)機(jī)制直至完整的MIPS流水CPU,讓學(xué)生從設(shè)計(jì)者的角度體會(huì)計(jì)算機(jī)部件構(gòu)成以及運(yùn)行的基本原理,努力幫助學(xué)生從程序運(yùn)行的角度深入理解計(jì)算機(jī)硬件系統(tǒng),掌握軟硬件協(xié)同的概念。
立足經(jīng)典知識(shí)體系,注重系統(tǒng)性與完整性,培養(yǎng)計(jì)算機(jī)系統(tǒng)能力
理論實(shí)踐一體化,游戲闖關(guān)式在線虛擬仿真實(shí)驗(yàn),輕松破解實(shí)驗(yàn)難題
緊扣考研大綱,精品慕課、微課同步導(dǎo)學(xué),優(yōu)質(zhì)教輔資源助力教學(xué)
譚志虎,博士,華中科技大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院教授,副院長,開設(shè)有“計(jì)算
機(jī)組成原理”(國家級(jí)線上一流課程)、“計(jì)算機(jī)硬件系統(tǒng)設(shè)計(jì)”慕課課程,以及“自己動(dòng)手畫 CPU”在線實(shí)訓(xùn)課程。榮獲 2019 年度高校計(jì)算機(jī)專業(yè)優(yōu)秀教師、華中科技大學(xué)教學(xué)名師、寶鋼優(yōu)秀教師獎(jiǎng)、湖北省教學(xué)成果一等獎(jiǎng)、華中科技大學(xué)課堂教學(xué)卓越獎(jiǎng)和教學(xué)質(zhì)量一等獎(jiǎng)等。
第 1章 計(jì)算機(jī)系統(tǒng)概論
1.1 計(jì)算機(jī)的發(fā)展
1.1.1 計(jì)算機(jī)發(fā)展概況
1.1.2 摩爾定律
1.1.3 集成電路工藝發(fā)展
1.1.4 我國計(jì)算機(jī)發(fā)展
1.1.5 后PC時(shí)代
1.2 計(jì)算機(jī)系統(tǒng)的組成
1.2.1 計(jì)算機(jī)硬件系統(tǒng)
1.2.2 計(jì)算機(jī)的軟件系統(tǒng)
1.2.2 計(jì)算機(jī)系統(tǒng)的工作過程
1.3 計(jì)算機(jī)系統(tǒng)性能評(píng)價(jià)
1.3.1 基本性能指標(biāo)
1.3.2 與時(shí)間有關(guān)的性能指標(biāo)
1.3.3 CPU性能公式及其應(yīng)用
1.3.4 性能測試及其工具
1.4 計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)
1.4.1 計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)
1.4.3 硬件和軟件邏輯功能的等價(jià)性
1.5 課程導(dǎo)學(xué)
本章小結(jié)
習(xí)題1
實(shí)踐訓(xùn)練
第 2章 數(shù)據(jù)信息的表示
2.1 數(shù)據(jù)表示關(guān)鍵因素
2.2 數(shù)值數(shù)據(jù)的表示
2.2.1 機(jī)器碼表示
2.2.2 定點(diǎn)數(shù)表示
2.2.3 浮點(diǎn)數(shù)表示
2.3 非數(shù)值數(shù)據(jù)的表示
2.3.1 字符的表示
2.3.2 漢字編碼方法
2.4 數(shù)據(jù)信息的校驗(yàn)
2.4.1 碼距與數(shù)據(jù)校驗(yàn)
2.4.2 奇偶校驗(yàn)
2.4.3 海明校驗(yàn)
2.4.4 循環(huán)冗余校驗(yàn)
本章小結(jié)
習(xí)題2
實(shí)踐訓(xùn)練
第3章 運(yùn)算方法與運(yùn)算器
3.1 定點(diǎn)數(shù)加減法運(yùn)算
3.1.1 補(bǔ)碼加減法運(yùn)算方法
3.1.2 溢出及檢測
3.1.3 補(bǔ)碼加減法的邏輯實(shí)現(xiàn)
3.1.3 快速加法器實(shí)現(xiàn)
3.2.1 機(jī)器數(shù)的移位操作
3.2.2 補(bǔ)碼一位乘法
3.2.3 陣列乘法器
3.4 定點(diǎn)數(shù)除法運(yùn)算
3.4.1 原碼一位除法
3.4.2 補(bǔ)碼一位除法
3.4.3 陣列除法器
3.5 浮點(diǎn)數(shù)運(yùn)算
3.5.1 浮點(diǎn)數(shù)加減運(yùn)算
3.5.2 浮點(diǎn)乘法運(yùn)算
3.6 邏輯與移位運(yùn)算
3.7 運(yùn)算器設(shè)計(jì)
3.7.1 定點(diǎn)運(yùn)算器
3.7.2 浮點(diǎn)運(yùn)算器
3.7.3 ALU設(shè)計(jì)
本章小結(jié)
習(xí)題3
實(shí)踐訓(xùn)練
第4章 存儲(chǔ)系統(tǒng)
4.1 存儲(chǔ)器概述
4.1.1 存儲(chǔ)器分類
4.1.2 存儲(chǔ)器主要技術(shù)指標(biāo)
4.1.3 主存中數(shù)據(jù)的存放
4.1.4 主存的基本結(jié)構(gòu)和工作過程
4.1.5 存儲(chǔ)系統(tǒng)層次結(jié)構(gòu)
4.2 半導(dǎo)體存儲(chǔ)器
4.2.1 靜態(tài) MOS存儲(chǔ)器(SRAM)
4.2.2 動(dòng)態(tài)MOS存儲(chǔ)器(DRAM)
4.2.3 只讀存儲(chǔ)器
4.2.4 新型存儲(chǔ)器
4.3 主存與CPU 的連接
4.3.1 存儲(chǔ)器的擴(kuò)展
4.3.2 存儲(chǔ)器接口
4.4 并行主存系統(tǒng)
4.5 高速緩沖存儲(chǔ)器(cache)
4.5.1 局部性原理
4.5.2 cache的工作原理
4.5.3 相聯(lián)存儲(chǔ)器
4.5.4 地址映射
4.5.5 替換算法
4.5.6 cache寫策略
4.5.7 多cache結(jié)構(gòu)
4.6 虛擬存儲(chǔ)器
4.6.1 虛擬存儲(chǔ)器的工作原理
4.6.3 頁式虛擬存儲(chǔ)器
4.6.4 段式虛擬存儲(chǔ)器
4.6.4 段頁式虛擬存儲(chǔ)器
4.6.5 存儲(chǔ)保護(hù)
4.8 輔助存儲(chǔ)器
4.8.1 磁表面存儲(chǔ)器
4.8.2 光盤存儲(chǔ)器
4.8.3 冗余磁盤陣列
本章小結(jié)
習(xí)題4
實(shí)踐訓(xùn)練
第5章 指 令 系 統(tǒng)
5.1 指令系統(tǒng)概述
5.2 指令格式
5.2.1 操作碼
5.2.2 地址碼
5.2.3 定長與變長指令
5.3 指令和操作數(shù)的尋址方式
5.3.1 指令尋址
5.3.2 數(shù)據(jù)尋址
5.3.3 常見尋址方式
5.4 指令類型
5.5 指令格式設(shè)計(jì)及優(yōu)化
5.5.1 指令格式的設(shè)計(jì)
5.5.2 指令格式的優(yōu)化
5.6 CISC和 RISC 的基本概念
5.6.1 復(fù)雜指令系統(tǒng)計(jì)算機(jī)(CISC)
5.6.2 精簡指令系統(tǒng)計(jì)算機(jī)(RISC)
5.7 指令系統(tǒng)舉例
5.7.1 8O88/8O86指令系統(tǒng)
5.7.2 MIPS指令系統(tǒng)
5.7.3 RISC-V指令系統(tǒng)
第6章 中央處理器
6.1 中央處理器概述
6.1.1 中央處理器的功能
6.1.2 中央處理器的組成
6.2 指令周期
6.2.1 指令執(zhí)行的一般流程
6.2.2 指令周期的基本概念
6.2.3 寄存器傳送語言
6.3 數(shù)據(jù)通路及指令操作流程
6.3.1 數(shù)據(jù)通路模型與定時(shí)
6.3.2 基于單總線結(jié)構(gòu)的數(shù)據(jù)通路
6.3.3 基于專用通路結(jié)構(gòu)的數(shù)據(jù)通路
6.4 時(shí)序與控制
6.4.1 中央處理器的時(shí)序
6.4.2 控制方式
6.4.3 時(shí)序發(fā)生器
6.5 硬布線控制器
6.5.1 三級(jí)時(shí)序硬布線控制器
6.5.2 三級(jí)時(shí)序硬布線控制器設(shè)計(jì)
6.5.3 現(xiàn)代時(shí)序硬布線控制器
6.5.4 現(xiàn)代時(shí)序硬布線控制器設(shè)計(jì)
6.6 微程序控制器
6.6.1 微程序控制的基本概念
6.6.2 微程序控制器組成原理
6.6.3 微程序控制器設(shè)計(jì)
6.6.4 微指令及其編碼方法
6.7 異常與中斷處理
6.7.1 異常與中斷概念
6.7.2 異常與中斷處理過程
6.7.3 支持中斷的CPU設(shè)計(jì)
本章小結(jié)
習(xí)題6
實(shí)踐訓(xùn)練
第7章 指令流水線
7.1 流水線概述
7.1.1 流水線的概念
7.1.2 MIPS指令流水線
7.1.3 流水線的時(shí)空?qǐng)D表示
7.2 流水線數(shù)據(jù)通路
7.2.1 單周期數(shù)據(jù)通路流水改造
7.2.2 流水?dāng)?shù)據(jù)通路中的控制信號(hào)及傳遞
7.2.3 指令在流水線中的執(zhí)行過程
7.3 流水線沖突與處理
7.3.1 流水線沖突
7.3.2 結(jié)構(gòu)沖突處理
7.3.3 控制沖突處理
7.3.4 插入氣泡解決數(shù)據(jù)沖突
7.3.5 使用重定向解決沖突
7.3.6 動(dòng)態(tài)分支預(yù)測技術(shù)
7.3.7 流水線性能分析
7.4 流水線異常與中斷
7.5 指令級(jí)并行技術(shù)
本章小結(jié)
習(xí)題7
實(shí)踐訓(xùn)練
第8章 系統(tǒng)總線
8.1 總線基本概念
8.1.1 總線分類
8.1.2 總線組成
8.1.3 總線標(biāo)準(zhǔn)
8.1.4 總線與三態(tài)門
8.1.5 總線性能指標(biāo)
8.2 總線傳輸機(jī)制
8.2.1 總線傳輸過程
8.2.2 總線的信息傳送
8.2.3 總線仲裁
8.2.4 總線定時(shí)
8.3 總線結(jié)構(gòu)
8.3.1 單總線結(jié)構(gòu)
8.3.2 雙總線結(jié)構(gòu)
8.3.3 三總線結(jié)構(gòu)
8.3.4 高性能總線
8.4 常用總線
8.4.1 常用片內(nèi)總線
8.4.2 常用系統(tǒng)總線
8.4.3 常用I/O總線
8.4.4 常用外部總線
本章小結(jié)
習(xí)題8
第9章 輸入輸出系統(tǒng)
9.1 輸入輸出特性
9.2 I/O接口
9.2.1 I/O接口的功能
9.2.2 I/O接口的結(jié)構(gòu)
9.2.3 接口的分類
9.2.4 I/O的連接方式
9.2.5 I/O設(shè)備的編址
9.3 輸入輸出數(shù)據(jù)傳輸控制方式概述
9.4 程序查詢控制方式
9.4.1 程序查詢控制方式的接口
9.4.2 設(shè)備狀態(tài)寄存器的格式
9.4.3 程序查詢方式數(shù)據(jù)輸入輸出流程
9.5 程序中斷控制方式
9.5.1 中斷基本概念
9.5.2 中斷響應(yīng)過程
9.5.4 中斷源識(shí)別
9.5.5 中斷處理流程
9.6 DMA方式
9.6.1 DMA的基本概念
9.6.2 DMA傳送過程
9.6.3 DMA控制器的基本組成
9.7 通道方式
9.7.1 通道概念
9.7.2 通道的類型
9.7.3 CPU對(duì)通道的控制
9.7.4 通道結(jié)構(gòu)的發(fā)展
9.8 輸入輸出設(shè)備
9.7.1 輸入設(shè)備(鍵盤、鼠標(biāo))
9.7.2 輸出設(shè)備(打印機(jī)、顯示器)
本章小結(jié)
習(xí)題9
實(shí)踐訓(xùn)練