1/9/2019 4:08:50 PM :添加選擇 1/9/2019 10:15:35 AM : 添加部分簡答題html
1、選擇題(20*2分)
1.下面哪種閘述是計算機系統結構的經典定義(D)
A. 是計算機機箱的結構 B. 是處理器的結構 C. 是外存情的結構 D. 程序員所看到的計算機屬性,即概念性結構與功能特性程序員
2.下列關於計算機系統結構、 計算機組成、 和計算機實現的說法正確的是(A)
A. 計算機系統結構着眼於彙編語言程序員看到的機器屬性 B. 計算機組成着限於機器結構 C. 計算機實現着眼於機器的邏輯實現 D. 計算機實現和組成都着眼於機器的物理實現後端
3.指令集是(A)
A.處理器硬件和軟件的接口 B.處理器性能指標的集合 C.處理器寄存器的集合 D.計算機的內存接口緩存
4.下述哪些指令集屬於 CISC 指令集(B)
A. Alpha. B. X86, C. MIPS D. PowerPC性能優化
5.下述哪種指令集結構不屬於通用寄存器結構(C)
A. 寄存器寄存器型 B. 寄存器存儲器型 C. 堆棧型 D. 存儲器-存儲器型多線程
6.對指令集的基本要求是(B)
A.靈活性、 完整性、 高效率、 兼容性 B.完整性、 規整性、 高效率、 兼容性 C.可靠性、 完整性、 規整性、 高效率 D.完整性、 規整性、 髙效率、 可用性架構
7. 下面關於流水線技術正確的描述是(A)
A.流水線經過指令級的並行來提升性能 B.流水線經過任務級的並行來提升性能 C.流水線經過線程級的並行來提升性能 D.流水線經過進程級的並行來提升性能app
八、 哪些相關會引發流水線衝突(A)
A.數據相關、 名字相關、 控制相關 B.控制相關、 結果相關、 數據相關 C.名字相關、 控制相關、 指令相關 D.指令相關、 數據相關、 控制相關dom
- 第三講PPT,P93
九、 記分牌用於解決(B)依賴
A.控制依賴 B.數據依賴 C.結構依賴 D.名字依賴ide
- 記分牌的目的: 經過儘量早地執行指令在沒有結構相關的狀況下維持CPI爲1。第四講PPT,P15
- 記分牌是一集中控制部件,其功能是控制數據寄存器與處理部件之間的數據傳送。在記分牌中保存有與各個處理部件相聯繫的寄存器中的數據裝載狀況。當一個處理部件所要求的數據都已就緒(裝載完畢),記分牌容許處理部件開始執行。當執行完成後,處理部件通知記分牌釋放相關資源。因此在記分牌中記錄了數據寄存器和多個處理部件狀態的變化狀況,經過它來檢測和消除或減小數據相關性,加快程序執行速度。
十、 下述問題中,哪一項不是 Cache 設計應考慮的基本問題(CCC)
A.數據塊在上一級 Cahe 中的位置 B.如何在上一級 Cache 中找到一個給定的數據塊 C.當 Cache 缺失時如何複製數據塊 D.爲了保持數據一致性,如何將數據寫入 Cache
十一、 下列哪一組全是馮洛伊曼體系結構的特色:(B)
A. 以運算器爲中心、 內存中指令和數據區別對待、 內存按地址訪問(錯誤:同等對待) B. 指令通常按順序執行、 指令由操做碼和地址碼組成、 指令和數據用二進制表示 C. 之內存爲中心、 內存按地址訪問、 指令通常按順序執行(錯誤:以運算器爲中心) D. 內存中指令和數據同等對待、 內存按數據內容訪問、 以運算器爲中心(錯誤:內存是按地址訪問)
十二、 關於系統結構的生命週期,下列說法正確的是:(D)
A. 從硬件成熟到系統軟件成熟大約須要 1 年時間 B. 從系統軟件成熟到應用軟件成熟大約須要半年時間 C. 再過兩年,這種系統結構就不是主流了 D. 從硬件成熟到系統軟件成熟大約須要 5-7 年時間
1三、 關於不一樣類型的處理器,下列說法正確的是(B)
A. Google 的 TPU 指 Thread Processing Unit(錯誤:Tensor Processing Unit,張量處理單元) B. GPGPU是General Purpose Graphic Processing UInit C. CMP 是多處理器(錯誤:Chip multiprocessors,單芯片多處理器) D. SMT 是共享內存處理器(錯誤:同時多線程(Simultaneous Multi-Threading,SMT)把兩個(或多個)CPU當作是一個處理器)
1四、下列關於 MIPS 指令集的寄存器說法正確的是:(A)
A.有 32 個 64 位的通用寄存器 B.有 32 個 32 位的通用寄存器 C.有 64 個 64 位的浮點寄存器 D.有 64 個 32 位的浮點寄存器
- MIPS的寄存器:32個64位通用寄存器(GPRs)+32個64位浮點數寄存器(FPRs)(MIPS64的一個子集, 簡稱爲MIPS)
1五、 RISC-V是(B)
A.一種新型的處理器 B.一種徹底開放的指令集,屬於 RISC 但指令長度可變(正確:RISC-V is a new instruction set architecture;Optional variable-length instructions ) C.一種爲某種微體系結構定製的指令集 D.一種部分支持虛擬化的指令集(錯誤: A fully virtualizable ISA to ease hypervisor development)
1六、 RISC-V 基本指令集的數據在內存中的存放方式是(C)
A. Big-Endian B. Big- Endian 和 Little- Endian 均可以 C. Little-Endian D. 其餘方式
-
The base RISC-V ISA has a little-endian memory system, but non-standard variants can provide a big-endian or bi-endian memory system.
1七、 NVIDIA CUDA 程序線程的組織方式是(B)
A.按順序線性組織 B.按兩層層次化組織 C.按三層層次化組織 D.按四層層次化組織
1八、 使用 CUDA 的 GPU 程序在調用 Kernel 函數時,調用形式正確的是(D)
A. kernel 名(A)(實參列表); B. kene 名(A,B)(實參列表); C. keme 名<<< A >>>(實參列表); D. kernel 名<<<A,B>>>(實參列表);
1九、 下哪一項不屬於倉庫線計算機( Warhouse Neale Campu)的第三代?(A)
A.1900 年先後,使用小型機構建 B.2000 年先後,使用商業標準計算機、 存儲,和網設備構建 C.2010 年先後,使用訂製的計算機、 存儲,和網設備構建,但芯片依然是標準的 D.2020 年先後,使用訂製的芯片構建
20. DRAM 和 SRAM 比較,下列哪一種說法是正確的(C)
A.DRAM 邊問速度快,SRAM 訪問速度慢 B.DRAM 存儲密度低,SRAM 存儲密度高 C.DRAM 成本低,SRAM 成本高 D.DRAM 不須要刷新,SRAM 須要刷新
- D是動態,S是靜態;DRAM(Dynamic Random Access Memory),即動態隨機存取存儲器,動態的須要刷新,速度慢,但成本低,存儲密度高。二者掉電後,數據都會丟失,ROM掉電後數據不丟失。
2、簡述題(30分)
1. 請簡述指令尋址方式的種類,對每一種給出一條僞指令做爲例子進行說明。(8分)
- 知識點內容參考PPT第二講:計算機指令集結構(P19)
2. 請解釋爲何流水線技術均可以提升處理器的性能?請結合一個例子進行說明。(7分)
- 知識點內容參考PPT第三講:流水線技術(P27)
- 流水線技術把多個處理過程在時間上錯開,依次經過各功能段,這樣每一個子過程就能夠與其餘的子過程並行進行。
- 流水線的三個性能指標:吞吐率TP,加速比S,效率E。
- 若是取指令、 指令分析和指令執行的時間相等,都是t,則串行執行時間爲T=3nt,使用一次重疊執行方式,並行執行n條指令所花的時間爲T=(1+2n)t,程序的執行時間減小了近1/3;使用二次重疊執行方式,並行執行n條指令所花的時間爲T=(2+n)t,程序的執行時間減小了近2/3。
3. 請解釋SISD,SIMD,MIMD,SMT(同時多線程),CMP(多核體系結構)。請指出SMT和CMP最大的差別在哪裏。(7分)
- 知識點參考PPT第一講:計算機體系結構的概念(P27)
- Flynn分類法,主要根據指令流和數據流來分類,共分爲四種類型的計算平臺。
- SISD(單指令流單數據流):SISD機器是一種傳統的串行計算機,它的硬件不支持任何形式的並行計算,全部的指令都是串行執行。而且在某個時鐘週期內,CPU只能處理一個數據流。所以這種機器被稱做單指令流單數據流機器。早期的計算機都是SISD機器,如馮諾.依曼架構,如IBM PC機,早期的巨型機和許多8位的家用機等。
- SIMD(單指令流多數據流):採用一個指令流處理多個數據流。這類機器在數字信號處理、圖像處理、以及多媒體信息處理等領域很是有效。咱們如今用的單核計算機基本上都屬於SIMD機器。
- MISD(多指令流單數據流機器):採用多個指令流來處理單個數據流。因爲實際狀況中,採用多指令流處理多數據流纔是更有效的方法,所以MISD只是做爲理論模型出現,沒有投入到實際應用之中 。
- MIMD(多指令流多數據流):能夠同時執行多個指令流,這些指令流分別對不一樣數據流進行操做。最新的多核計算平臺就屬於MIMD的範疇,例如Intel和AMD的雙核處理器等都屬於MIMD。
- SMT(同時多線程):一種在一個CPU的時鐘週期內可以執行來自多個線程的指令的硬件多線程技術。本質上,同步多線程是一種將線程級並行處理(多CPU)轉化爲指令級並行處理(同一CPU)的方法。SMT對於商業事務處理負載的性能優化可達30%。在更加註重系統的總體吞吐量而非單獨線程的吞吐量時,SMT是一個很好地選擇。
- CMP(多核體系結構):是將多個計算內核集成在一個片處理器芯片中,從而提升計算能力。每一個微處理器核心實質上都是一個相對簡單的單線程微處理器或者比較簡單的多線程微處理器,這樣多個微處理器核心就能夠並行地執行程序代碼,於是具備了較高的線程級並行性。CMP具備高主頻、設計和驗證週期短、控制邏輯簡單、擴展性好、易於實現、功耗低、通訊延遲低等優勢。
- SMT和CMP最大的差別:與CMP比較, SMT處理器結構的靈活性比較突出。SMT最具吸引力的是隻需小規模改變處理器核心的設計,幾乎不用增長額外的成本就能夠顯著地提高效能。CMP結構被劃分紅多個處理器核來設計。
4. 請解釋Cache的三种放置方式:Fully associative,Direct mapped,Set associative,請給出示意圖說明。(8分)
- CSDN連接
- Fully associative(全相聯):全相映射,主存某一數據塊能夠跟任意的cache塊映射。
- Direct mapped(直接映像):直接映射,主存某一數據塊只有一個cache塊與之對應。
- Set associative(組相聯):組相聯映射,主存某一數據塊有2^i個cache塊與之對應,又稱爲2^i路組相聯映射。
5. 請解釋 Cache 的兩種寫策略 Write back 和 Write Through,並比較各自的優缺點。
- 第五講PPT,P11
- Write-through(直寫模式):在數據更新時,同時寫入緩存Cache和後端存儲。
- 此模式的優勢是操做簡單;缺點是由於數據修改須要同時寫入內存,總線工做繁忙,內存的帶寬被大大佔用,所以運行速度會受到影響數據。 假設一段程序在頻繁地修改一個局部變量,局部變量生存週期很短,並且其餘進程/線程也用不到它,CPU依然會頻繁地在Cache和內存之間交換數據,形成沒必要要的帶寬損失。
- Write-back(回寫模式):在數據更新時只寫入緩存Cache,而不是當即寫入內存。只在數據被替換出緩存時,被修改的緩存數據纔會被寫到後端存儲。
- 此模式的優勢是數據寫入速度快,由於不須要寫存儲;缺點是一旦更新後的數據未被寫入存儲時出現系統掉電的狀況,數據將沒法找回。 對一行cache的屢次寫命中都在cache中快速完成修改,只是需被替換時才寫回速度較慢的主存,減小了訪問主的次數從而提升了效率。爲支持這種策略,每一個cache行必須配置一個修改位,以反映此行是否被CPU修改過。
6. 在指令級並行中,會碰到各類依賴而影響並行化,請簡述有哪幾種依賴,並簡述每一種依賴。
- 數據相關:對於兩條指令i(在前,下同)和j(在後,下同),若是下述條件之一成立,則稱指令j與指令i數據相關。指令j使用指令i產生的結果;指令j與指令k數據相關,而指令k又與指令i數據相關。
- 名相關:名指令所訪問的寄存器或存儲器單元的名稱。若是兩條指令使用相同的名,可是它們之間並無數據流動,則稱這兩條指令存在名相關。
- 控制相關:指由分支指令引發的相關。爲了保證程序應有的執行順序,必須嚴格按控制相關肯定的順序執行。與一條分支指令控制相關的指令不能被移到該分支以前,不然這些指令就不受該分支控制了。
3、設計圖(共14分)
1.設計題(共 10 分)假設一個 DLX 處理器的簡單設計以下圖所示,如今要設計一個基於該設計的流水線處理器,請給出你的設計。 (能夠在圖上進行修改)圖 1DLX 處理器結構。)
4、計算題(共36分,每題12分)
1. 對於一臺400MHz計算機執行標準測試程序,程序中指令類型,執行數量和平均時鐘週期數以下
指令類型 | 指令執行數量 | 平均時鐘週期數 |
---|---|---|
整數 | 45000 | 1 |
數據傳送 | 75000 | 2 |
浮點 | 8000 | 4 |
分支 | 1500 | 2 |
求該計算機的有效CPI,MIPS和程序執行時間。
- CSDN連接
- CPI(每條指令執行的平均時鐘週期數)=(45000*1+7500*2+8000*4+1500*2)/(45000+7500+8000+1500)= 1.776
- MIPS(每秒百萬條指令 MillionInstructions Per Second)= 1M/(CPI×時鐘週期)= 主頻/CPI=400/1.77=225.2
- 程序執行時間=(1/(400*10^6))*(45000*1+75000*2+8000*4+1500*2)=5.75*10^(-4)秒
- 另:MFLOPS(每秒百萬浮點運算次數),1MHz是一百萬赫茲。
2. 計算機系統有三個部件能夠改進,這三個部件的加速好比下:??????
部件1加速比=30;部件2加速比=20;部件3加速比=10; (1) 若是部件1和部件2的可改進比例爲30%,那麼當部件3的可改進比例爲多少時,系統的加速比才能夠達到10?
- 1/(0.3/30+0.3/20+X/10+(1-0.3-0.3-X))=10,解得X=0.3611
(2)若是三個部件的可改進比例爲30%,30%,20%,三個部件同時改進,那麼系統中不可加速部分的執行時間在總執行時間中佔的比例是多少?
- 設未加速前總的執行時間爲1,則
- 不可加速部分用時=(1-0.3-0.3-0.2)*1=0.2
- 可加速部分用時=0.3/30+0.3/20+0.2/10=0.025
- 所求比例=0.2/(0.2+0.025)=0.8163
3. 有一條動態多功能流水線有…………