《計算機體系結構:量化研究方法》讀書筆記
Lecture 1: Quantitative Approach
1.計算機體系結構與計算機組成原理有什麼區別?
計算機的實現包括兩個方面:組成和硬體。組成一詞包含了計算機設計的高階內容,例如儲存器系統,儲存器互連,設計內部處理器 CPU (中央處理器——算術、邏輯、分支和資料傳送功能都在內部實現)。有時也用微體系結構一詞來代替“組成”。例如AMD Operon和Intel Core I7是兩個指令集體系結構相同但組成不同的處理器。這兩種處理器都實現X86指令集,但它們的流水線和快取組成有很大的不同。硬體指的是一個計算機的具體實現,包括計算機的詳盡邏輯設計和封裝技術。
真正的體系結構涵蓋了計算機設計的所有三個方面:指令集體系結構、組成或微體系結構、硬體。計算機架構師設計的計算機必須滿足功能需求,並達到價格、功耗、效能和可用性指標。
2.現如今的晶片設計趨勢或者現狀是怎樣的?
功率是現如今使用電晶體的主要限制,通過降低電壓可以大幅度降低動態功率和能耗,二十年來,電壓已經從最初的5V降低到1V以下,然而如果不能降低電壓或提高每個晶片的功率,那可能就要減緩時脈頻率的增長速度,這也是從2003年以來的主要趨勢。
3.怎樣設計出低成本的積體電路?
雖然積體電路的成本以指數形式下降,但基本的矽製造工藝沒有變化:仍需要對晶圓進行測試,切割成晶片進行封裝。對於計算機設計人員來講,由於製造工藝決定了晶圓的成本、晶圓成品率和單位面積上的缺陷數,設計人員唯一可控的就是晶片面積。
4.如何對計算機的效能進行評估?
使用量化的研究方法,從計算機的響應時間、執行時間、吞吐量來進行綜合評估。
主要通過基準測試來對計算機進行效能的測試與度量,包括:桌面基準測試、伺服器基準測試。要注意SPEC基準測試集,是一個使用相當廣泛的測試集。
5.如何理解程式區域性性?
區域性性原理指的是程式常常重複使用它們最近使用過的資料和指令。有一條廣泛使用的經驗規律:一個程式90%的執行時間花費在僅10%的程式碼中。充分利用時間區域性性和空間區域性性可以優化程式的執行時間。
處理器中指令的提取與譯碼器的使用可能比乘法器要繁瑣的多,所以應該優先對其進行優化。
6.設計多核晶片的意義何在?
2005年以來,之所以轉向一芯多核,並不是因為取得了什麼重大突破,顯著簡化了並行程式設計方式。而是因為ILP(指令級並行)壁壘和功率壁壘的存在存在而別無選擇。在一個晶片中設計多個處理器並不能保證功率較低。而的確有可能設計一種消耗更高功率的多核晶片。其潛力僅僅在於能夠用幾個低時脈頻率的高效核心代替高時脈頻率的低效核心,從而有可能提高整體效率。因此多核處理器並不是萬能的。
First Microprocessor Intel 4004, 1971
7.Amdahl 定理有何作用?
利用Amdahl 定理可以計算出通過改進計算機某一部分而能獲得的效能增益。
Lecture 2: Instruction Set Principles
指令集架構(Instruction Set Architecture, ISA)-組合語言程式設計師或編譯器編寫者可見
ISA包括:
- 1.程式設計暫存器
- 2.運算元訪問
- 2.運算元的型別和大小
- 4.指令集
- 5.定址模式
- 6.指令編碼
ISA 是硬體與軟體之間的連線點。任何在記憶體裡執行的程式都將通過 ISA 進行解耦從而能在底層架構上執行。
計算機體系結構和抽象層如下:
算術運算指令的執行主要分為以下幾種:
- Stack type:運算元隱含在棧頂指標
- R-R type:運算元都在暫存器中
- R-AC type:一個運算元隱含在 AC 計數器中
- R-M type:需要訪存操作去取運算元
相關文章
- MySQL 讀書筆記 (一) 體系結構MySql筆記
- 計算機體系結構計算機
- JVM讀書筆記之java記憶體結構JVM筆記Java記憶體
- 《軟體架構設計》讀書筆記架構筆記
- C語言程式設計讀書筆記:結構C語言程式設計筆記
- 計算機網路體系結構計算機網路
- (計算機體系結構)MIPS指令集結構計算機
- 瞭解計算機體系結構(4)計算機
- 計算機體系結構 - 作業1計算機
- 指令集體系結構_計算機體系結構:指令程式碼計算機
- 《重構》讀書筆記筆記
- 計算機網路體系結構劃分計算機網路
- 計算機組成結構與基本體系計算機
- 計算機組成與體系結構-cache計算機
- 計算機組成與設計 讀書筆記——第三章計算機筆記
- 第1章 計算機網路體系結構計算機網路
- 圖解計算機結構與體系分類!!圖解計算機
- 《計算機組成與體系結構》——8.2機器指令計算機
- 系統架構設計筆記(87)—— 計算機病毒與防治架構筆記計算機
- 《深入理解計算機系統》讀書筆記 —— 第三章 程式的機器級表示計算機筆記
- 計算機基礎——指令集體系結構ISA計算機
- 計算機組成與體系結構-CPU組成計算機
- 408-計算機網路-網路體系結構計算機網路
- Oracle體系結構學習筆記Oracle筆記
- 《Go 語言程式設計》讀書筆記 (三) 方法Go程式設計筆記
- 讀書筆記-我國弱勢群體犯罪問題研究筆記
- 今日隨筆-構建之法讀書筆記筆記
- [swift 進階]讀書筆記-第五章:結構體和類 C5P3_結構體(struct)Swift筆記結構體Struct
- 計算機組成與體系結構-浮點數表示計算機
- mysql鎖機制 讀書筆記MySql筆記
- MySQL 8.0 Reference Manual(讀書筆記19節-- 日期與計算)MySql筆記
- 《重構:改善既有程式碼的設計》讀書筆記筆記
- 《重構-改善既有程式碼的設計》讀書筆記筆記
- 《Python 簡明教程》讀書筆記系列四 —— 資料結構Python筆記資料結構
- 《深入理解計算機系統》讀書筆記 —— 第二章 資訊的表示和處理計算機筆記
- JVM讀書筆記之記憶體管理JVM筆記記憶體
- 計算機微機結構計算機
- 讀書筆記筆記