计算机体系复习六
計算機體系結構試題庫
填空題 (100題)
| 項 ?????目 | Cache—主存層次 | 主存—輔存層次 |
| 目的 | 為了彌補主存速度的不足 | (為了彌補主存容量不足) |
| 存儲管理實現 | (主要由硬件實現) | 主要由軟件實現 |
| CPU對第二級的訪問方式 | 可直接訪問 | (通過主存訪問) |
| 失效時CPU是否切換 | (不切換) | (不切換) |
計算機體系結構試題庫
判斷題 (102題)
1.計算機體系結構:計算機體系結構包括指令集結構、計算機組成和計算機實現三個方面的內容。
?
?
?
2.透明性:在計算機技術中,對這種本來是存在的事物或屬性,但從某種角度看又好像不存在的概念稱為透明性(transparency)。
?
?
?
3.程序訪問的局部性原理:程序總是傾向于訪問最近剛訪問過的信息,或和當前所訪問的信息相近的信息,程序對信息的這一訪問特性就稱之為程序訪問的局部性原理。
?
?
?
4.RISC:精簡指令集計算機。
?
?
?
5.CPI——指令時鐘數(Cycles per Instruction)。
?
?
?
6.Amdahl定律——加快某部件執行速度所獲得的系統性能加速比,受限于該部件在系統中的所占的重要性。
?
?
?
7.系列機:在一個廠家內生產的具有相同的指令集結構,但具有不同組成和實現的一系列不同型號的機器。
?
?
?
8.軟件兼容:同一個軟件可以不加修改地運行于體系結構相同的各檔機器,而且它們所獲得的結果一樣,差別只在于有不同的運行時間。
?
?
?
9.基準程序:選擇一組各個方面有代表性的測試程序,組成的一個通用測試程序集合,用以測試計算機系統的性能。
?
?
?
10.合成測試程序:首先對大量的應用程序中的操作進行統計,得到各種操作的比例,再按照這個比例人為制造出的測試程序。
?
?
?
11.Benchmarks:測試程序包,選擇一組各個方面有代表性的測試程序,組成的一個通用測試程序集合。
?
?
?
12.核心程序:從真實程序提取出來的用于評價計算機性能的小的關鍵部分。
?
?
?
13.通用寄存器型機器:指令集結構中存儲操作數的存儲單元為通用寄存器的機器,稱之為通用寄存器型機器。
?
?
?
14.Load/Store型指令集結構:在指令集結構中,除了Load/Store指令訪問存儲器之外,其它所有指令的操作均是在寄存器之間進行,這種指令集結構稱之為Load/Store型指令集結構。
?
?
?
15.虛擬機器:(virtual machine),由軟件實現的機器。
?
?
?
16.操作系統虛擬機:直接管理傳統機器中軟硬件資源的機器抽象,提供了傳統機器所沒有的某些基本操作和數據結構,如文件系統、虛擬存儲系統、多道程序系統和多線程管理等。
?
?
?
17.并行性:是指在同一時刻或是同一時間間隔內完成兩種或兩種以上性質相同或不相同的工作。只要時間上互相重迭,就存在并行性。
?
?
?
18.時間局部性:程序即將用到的信息很可能就是目前正在使用的信息。
?
?
?
19.程序的空間局部性:程序即將用到的信息很可能與目前正在使用的信息在空間上相鄰或者臨近。
?
?
?
20.操作
?
????????????
????????????????
?????????????????????數表示:機器硬件能夠直接識別處理的數據結構。
?
?
?
21.指令周期:執行一條機器指令所用的時間,包括取指令、分析指令和執行指令的時間。
?
?
?
22.尋址技術:確定操作數地址的技術。
?
?
?
23.流水線:將一個重復的時序過程,分解為若干個子過程,而每一個子過程都可有效地在其專用功能段上與其他子過程同時執行。
?
?
?
24.單功能流水線:只能完成一種固定功能的流水線。
?
?
?
25.多功能流水線:流水線的各段可以進行不同的連接,從而使流水線在不同的時間,或者在同一時間完成不同的功能。
?
?
?
26.靜態流水線:同一時間內,流水線的各段只能按同一種功能的連接方式工作。
?
?
?
27.動態流水線:同一時間內,當某些段正在實現某種運算時,另一些段卻在實現另一種運算。
?
?
?
28.部件級流水線:(運算操作流水線)把處理機的算術邏輯部件分段,以便各種數據類型進行流水操作。
?
?
?
29.處理機型流水線:(指令流水線)把解釋指令的過程按照流水方式處理。
?
?
?
30.處理機間流水線:(宏流水線)由兩個以上的處理機串行地對同一數據流進行處理,每一個處理機完成一項任務。
?
?
?
31.線性流水線:指流水線的各段串行連接,沒有反饋回路。
?
?
?
32.非線性流水線:指流水線中除有串行連接的通路外,還有反饋回路。
?
?
?
33.標量流水處理機:處理機不具有向量數據表示,僅對標量數據進行流水處理。
?
?
?
34.流水線效率:流水線的設備利用率。
?
?
?
35.流水線寄存器文件:分割流水線各段邏輯的寄存器組。
?
?
?
36.指令發射:指令從流水線的譯碼段進入執行段的過程。
?
?
?
37.流水線定向技術:流水線中將計算結果從其產生的地方直接送到真正需要它的地方,而不是從寄存器文件讀出使用,它是一種解決數據相關,避免流水線暫停的技術。
?
?
?
38.向量處理機:處理機具有向量數據表示,并通過向量指令對向量的各元素進行處理。
?
?
?
39.結構相關:某些指令組合在流水線中重疊執行時,產生資源沖突,則稱該流水線有結構相關。
?
?
?
40.數據相關:當指令在流水線中重疊執行時,流水線有可能改變指令讀/寫操作的順序,使得讀/寫操作順序不同于它們非流水實現時的順序,將導致數據相關。
?
?
?
41.寫后寫相關——兩條指令i,j,i在j前進入流水線,j、i的操作數一樣,在流水線中重疊執行時,j可能在i寫入其結果之前就先行對保存該結果的寄存器進行寫操作,導致寫錯誤。
?
?
?
42.RAW相關:也
?
????????????
????????????????
?????????????????????即寫后讀相關(RAW:read after write ),j的執行要用到i的計算結果,但是當其在流水線中重疊執行時,j可能在i寫入其計算結果之前就先行對保存該結果的寄存器進行讀操作,所以j會讀到錯誤的值。這是最常見的一種數據相關。
?
?
?
43.WAR相關:也即讀后寫相關(WAR:write after read)兩條指令i,j,i在j前進入流水線,j可能在i讀某個寄存器之前對該寄存器進行寫操作,導致i讀出數據錯誤。
?
?
?
44.定向:將計算結果從其產生的地方直接送到其它指令需要它的地方,或所有需要它的功能單元,避免暫停。
?
?
?
45.向量流水處理機:具有向量數據表示、向量指令的流水線處理機叫向量流水處理機。
?
?
?
46.向量的鏈接:允許一個向量操作一旦它的向量源操作數的單個元素可用時就開始。
?
?
?
47.存儲層次——采用不同的技術實現的存儲器,處在離CPU不同距離的層次上,目標是達到離CPU最近的存儲器的速度,最遠的存儲器的容量。
?
?
?
48.全相聯映射策略:主存中的任意一塊均可被放置到Cache中任意一個位置的方法。
?
?
?
49.組相聯Cache映象:某一內存塊只能放入Cache的某一固定組中,同時該塊可以放入這一組中的任意一塊。
?
?
?
50.Cache替換算法——當Cache塊失效將主存塊裝入Cache又出現Cache塊沖突時,需要按照某種策略把Cache中的一塊替換出去,這種策略就稱為替換算法。
?
?
?
51.Cache并行查找算法:在組相聯或全相聯cache中并行訪問和比較多個tag,并行訪問數據體的查找模式。
?
?
?
52.Cache串行查找算法:cache中串行依次行訪問和比較多個tag,串行行訪問數據體的查找模式。
?
?
?
53.寫直達法:執行“寫”操作時,不僅寫入Cache,而且也寫入下一級存儲器。
?
?
?
54.寫回法:執行“寫”操作時,只寫入Cache。僅當Cache中相應的塊被替換時,才寫回主存。
?
?
?
55.按寫分配:寫失效時,先把所寫單元所在的塊調入Cache,再行寫入。
?
?
?
56.不按寫分配:寫失效時,直接寫入下一級存儲器而不調塊。
?
?
?
57.寫合并:當把數據寫入寫緩沖器時,判斷本次所寫入單元的塊地址是否與寫緩沖器中某個有效塊的地址相同,若是,則把新數據與該塊合并。
?
?
?
58.Victim Cache——位于Cache和存儲器之間的又一級Cache,容量小,采用全相聯策略。用于存放由于失效而被丟棄(替換)的那些塊。每當失效發生時,在訪問下一級存儲器之前,先檢查Victim Cache中是否含有所需塊。
?
?
?
59.按寫分配法:當Cache失效時,先將要寫的單元的相應的塊調入Cache,然后再進行寫操作。
?
?
?
?
?
????????????
????????????????
????????????????????? 60.Cache的強制性失效:當地一次訪問一個塊時,該塊不在Cache中,需要從下一級存儲器中調入Cache,這就是強制性失效。
?
?
?
61.TLB——轉換查找緩沖器,用其可以將地址轉換結果保存,這樣就可以減少主存讀寫操作中的地址轉換工作。
?
?
?
62.USB總線——通用串行總線。應用在PC領域的新型接口技術,USB 將取代當前PC上的串口和并口,目的是提供設備的熱插拔和即插即用的能力。
?
?
?
63.消息通過時間:消息的通過時間是指消息的第一位從發送端到接收端所需要的時間。
?
?
?
64.磁盤尋道時間:磁盤的尋道時間是指將磁頭從某一位置移動到所要訪問的信息所在的磁道所需要的時間。
?
?
?
65.同步總線:有統一的時鐘協調各個設備操作的總線。
?
?
?
66.故障性預取:是指在預取時,如果出現虛地址故障或違反保護權限,就會發生異常。
?
?
?
67.多處理機系統:由多個不同類型,至少擔負不同功能的處理機組成,按照作業要求的順序,利用時間重疊原理,依次對它們的多個任務進行處理,各自完成規定的功能動作。
?
?
?
68.并行處理機:重復設置多個同樣的處理單元(PE),按照一定的方式相互連接,在同一的控制部件(CU)作用下,各自對分配來的數據并行地完成同一條指令所規定的操作。
?
?
?
69.分布式共享多處理機——采用非集中式,存儲器分布到各個處理器上的多處理機。
?
?
?
70.同構型多處理機——由多個同種類型、至少同等功能的處理機組成、同時處理同一作業中能并行執行的多個任務的機器。
?
?
?
71.異構型多處理機:由多個不同類型,至少擔負不同功能的處理機組成,按照作業要求順序,利用時間重疊原理,依次對它們的多個任務加工,各自完成規定的功能動作。
?
?
?
72.結點度:互聯網絡終于結點相連結的邊的數目。
?
?
?
73.互連網絡的直徑:互連網絡中任意兩個結點之間最短路徑長度的最大值。
?
?
?
74.流水線吞吐率:是指單位時間內流水線所完成的任務數或輸出結果的數量。
?
?
?
75.流水線最大吞吐率:是指流水線在達到穩定狀態后所得到的吞吐率。
?
?
?
76.流水線實際吞吐率:是指m段流水線完成n個任務所達到的吞吐率。
?
?
?
77.流水線加速比:是指流水線速度與等功能的非流水線速度之比。
?
?
?
78.流水線暫停:流水線控制某條指令及其后面所有指令的執行,使該指令之前的所有指令繼續執行的技術。
?
?
?
79.強制性失效:當第一次訪問一個塊時,該塊不在Cache中,需從下一級存儲器中調入Cache,這就是強
?
????????????
????????????????
?????????????????????制性失效,也稱冷啟動失效或首次訪問失效。
?
?
?
80.容量失效:如果程序執行時所需的塊不能全部調入Cache中,則當某些塊被替換后,若又重新被訪問,就會發生失效。這種失效稱為容量失效。
?
?
?
81.沖突失效:在組相聯或直接映象Cache中,若太多的塊映象到同一組(塊)中,則會出現該組中某個塊被別的塊替換(即使別的組或塊有空閑位置),然后又被重新訪問的情況。這就是發生了沖突失效。(碰撞失效,干擾失效)
?
?
?
82.非阻塞Cache:Cache失效時仍允許CPU進行其它的命中訪問。即允許“失效下命中”
?
?
?
83.虛擬Cache:訪問Cache的索引以及Cache中的標識都是虛擬地址的一部分。
?
?
?
84.RAID:廉價磁盤冗余陣列,簡稱盤陣列技術。
?
?
?
85.RAID 1: 鏡像盤,使用雙備份磁盤。
?
?
?
86.RAID 2: 位交叉式海明編碼陣列。
?
?
?
87.RAID 3: 位交叉奇偶校驗盤陣列。
?
?
?
88.RAID 4: 專用奇偶校驗獨立存取盤陣列。
?
?
?
89.RAID 5: 塊交叉分布式奇偶校驗盤陣列。
?
?
?
90.RAID 6: 雙維奇偶校驗獨立存取盤陣列。
?
?
?
91.同步總線;同步總線上所有設備通過統一的總線系統時鐘進行同步。
?
?
?
92.異步總線:設備之間沒有統一的系統時鐘,設備自己內部定時。設備之間的信息傳送用總線發送器和接收器控制。但在傳輸時,異步總線需要額外的同步開銷。
?
?
?
93.I/O總線標準:定義設備連接規則的文件。
?
?
?
94.并行計算:指同時對多個任務或多條指令、或對多個數據項進行處理。
?
?
?
95.并行計算機系統:是將多個處理器通過網絡以一定的連接方式有序地組織起來,能夠完成并行計算的計算機系統。
?
?
?
96.同步消息傳遞:請求處理器發送一個請求后一直要等到應答結果才繼續運行。
?
?
?
97.異步消息傳遞:發送方不先經請求就直接把數據送往數據接收方。
?
?
?
98.集中式共享存儲器體系結構:多個處理器共享一個存儲器的多處理系統結構。
?
?
?
99.Cache一致性協議:對多個處理器維護一致性的協議。
?
?
?
100.分布式共享存儲器體系結構:存儲器分布于各結點中,所有的結點通過網絡互連。訪問可以是本地的,也可是遠程的。
?
?
?
計算機體系結構試題庫
簡答題 (100題)
?
答:
?
答:
?
答:線延遲、功耗。
?
答:固定長度編碼、可變長編和混合編碼)三種設計方法。
?
答:
(1)機器以運算器為中心。
(2)采用存儲程序原理。
(3)存儲器是按地址訪問的、線性編址的空間。
(4)控制流由指令流產生。
(5)指令由操作碼和地址碼組成。
(6)數據以二進制編碼表示,采用二進制運算。
?
答:
在進行計算機系統設計時,設計者應該考慮到如下三個方面因素的影響:
?
答:
翻譯技術是先把N+1級程序全部變換成N級程序后,再去執行新產生的N級程序,在執行過程中N+1級程序不再被訪問。
答:
解釋技術是每當一條N+1級指令被譯碼后,就直接去執行一串等效的N級指令,然后再去取下一條N+1級的指令,依此重復進行。
?
計算機體系結構是機器級程序員所看到的計算機的屬性,即概念性結構與功能特性。
?
隨著集成電路工藝的進步,芯片內晶體管大小不斷變小,其邏輯門延遲也隨之減小,而走線延遲所占的比重也隨之越來越大,導致電路頻率不能隨著工藝的減小而線性減小。
?
微處理器晶體管數目每18個月翻一倍。它揭示了集成電路工藝發展的規律。
?
響應時間也稱執行時間,是指從事件開始到結束之間的時間。
吞吐率(Throughput)指在單位時間內所能完成的工作量(任務)。
用戶以響應時間為標準,多道程序系統以吞吐率為標準。
?
程序在執行時所訪問地址的分布不是隨機的,而是相對地簇聚;這種簇聚包括指令和數據兩部分。程序局部性包括:
程序的時間局部性:程序即將用到的信息很可能就是目前正在使用的信息。
?
程序在執行時所訪問地址的分布不是隨機的,而是相對地簇聚;這種簇聚包括指令和數據兩部分。程序局部性包括:
程序的空間局部性:程序即將用到的信息很可能與目前正在使用的信息在空間上相鄰或者臨近。
?
答:
在進行指令機結構設計中,應該考慮如下主要問題:
?
答:
具有測試、分析、判斷能力,控制程序的運行順序和方向。
?
答:
有轉移指令、循環控制、子程序、過程調用等。
?
答:
在尋址方式設計時,首先對一些典型的基準程序進行分析,統計基準程序中使用各種尋址方式的頻率,然后根據所要設計的計算機系統所面向的應用領域,確定選擇哪些使用頻率高的尋址方式予以支持。對于一些特殊的尋址方式(如偏移尋址等),偏移量的確定也必須應用同樣的方法加以確定。
?
答:
表示尋址方式有兩種常用的方法:一種是將尋址方式編于操作碼中,由操作碼在描述指令的同時也描述了相應的尋址方式;另一種是為每個操作數設置一個地址描述苻,由該地址描述撫表示相應操作數的尋址方式。
?
答:
將尋址方式編于操作碼中的方式譯碼快,但操作碼和尋址方式的結合不僅增加了指令的條數,導致了指令的多樣性,而且增加了CPU對指令譯碼的難度。為每個操作數設置一個地址描述苻的方式譯碼較慢,但操作碼和尋址獨立,易于指令擴展。
?
?
答:
答: ?取指、譯碼、執行、訪存、寫回五個操作功能段。
?
答:
答:
在DLX中,由于ALU和數據存儲器都要接受操作數,設置從寄存器文件EX/MEM和MEM/WB到這兩個單元輸入的定向路徑,還有DLX的零監測單元在EX周期完成分支條件檢測操作,也設置到該單元的定向路徑,減少了數據相關帶來的暫停;但并不是所有數據相關帶來的暫停都可通過定向技術來消除,采用暫停技術,設置一個“流水線互鎖”的功能部件,一旦流水線互鎖檢測到數據相關,流水線暫停執行發生數據相關指令后續的所有指令,直到該數據相關解決為止。利用編譯器技術,重新組織代碼順序也可消除數據相關帶來的必然暫停。
?
答:
?
答:容量小、結構簡單的Cache;將寫操作流水化以加快寫命中
?
答:
?
答:
?
5、在單機系統中保持Cache一致性的措施有哪些?
答:
????采用寫穿透策略和寫回策略可以在單機系統中保持Cache一致性。
?
答:
????全相聯映象的特點:利用率最高,沖突概率最低,實現最復雜。
????直接映象的特點:利用率最低,沖突概率最高,實現最簡單。
?
答:“Cache-主存”層次和“主存-輔存”層次的區別見下表
| 比較項目 | “Cache-主存”層次 | “主存-輔存”層次 |
| 目的 | 為了彌補主存速度上的不足 | 為了彌補主存容量的不足 |
| 存儲管理實現 | 主要由專用硬件實現 | 主要由軟件實現 |
| 訪問速度的比值 (第一級比第二級) | 幾比一 | 幾萬比一 |
| 典型的塊(頁)大小 | 幾十個字節 | 幾百到幾千個字節 |
| CPU對第二級的訪問方式 | 可直接訪問 | 均通過第一級 |
| 失效時CPU是否切換 | 不切換 | 切換到其它進程 |
?
?
答:
????首先以CPU給出的地址中的高30位為虛擬也好,將其和TLB中的32個頁表項的Tag相比較,同時檢查訪問的合法性(由TLB中頁表項的高5位確定)。如果某一頁表項的Tag預虛擬也好相同,且訪問合法,那么由32:1多路選擇器讀出該頁表項的低21位,這21位就是所訪問頁的真實物理地址的高21位,最后將其和頁偏移量合并成34位物理地址。
?
答:
主要完成如下三項工作:
?
?
答:
首先某一設備發出讀請求,并將地址1提交給總線之后,不再占用總線,這時其它總線主設備也可發出讀請求,并將地址信號提交給總線(地址2、地址3)。總線根據所接受的地址進行存儲器訪問,讀出數據,將數據信息放在地址總線上。第一個總線主設備法出第之后,不斷“偵聽”總線,如果總線上不是其所請求讀出的數據,那么該總線主設備必須等待(等待1),只有當總線上出現了該總線主設備所請求讀出的數據后(數據1),那么該總線主設備取回數據,完成總線訪問(完成1)。由此可以看出,在有多個主設備時,總線就可以通過數據打包來提高總線帶寬,這樣可以不必在整個傳輸過程中都占有總線,這種技術叫做“分離處理(split transaction)”或者“流水處理”或者“包開關總線”等。值得注意的是:讀操作分為兩部分,一個是包含地址的讀請求和一個包含數據的存儲器應答,每個操作必須標記清楚,以便CPU和存儲器可以識別它們。當從所請求存儲器地址處讀一個字的時候,分離處理允許其它總線主設備使用總線,因此,CPU必須能夠識別總線上發來的數據,存儲器必須識別總線上返回的數據。分離處理總線有較高的帶寬,但是它的數據傳送延遲比獨占總線方法要大。
?
答:
?
答:
第一個問題可以用寫直達Cache解決。
第二個問題操作系統可以保證I/O操作的數據不在cache中。如果不能,就作廢Cache中相應的數據。
?
答:
優點是既能夠得到虛擬Cache的好處,又能夠得到物理Cache的優點。
缺點是直接映象Cache的容量不能夠超過頁的大小。
?
答:
ALU輸入端的兩個MUX由ID/EX.IR所指出的指令類型控制,IF段的MUX由EX/MEM.Cond域的值控制,WB段的MUX由當前指令類型(Load/ALU)控制。
答:
把指令存儲器和數據存儲器分開,使每個存儲器具有獨立的讀寫端口。
?
答:
可能存在RAW沖突,通過使寄存器文件支持“前半周期寫后半周期讀”來避免。
?
答:
效率指流水線的設備利用率。由于流水線有通過時間和排空時間,所以流水線的各段并非一直滿負荷工作,所以效率是小于1的數。
?
答:
三個指標是衡量流水線性能的三種度量,
效率E = n△t/T流水=mn△t/(T流水m)= S/m, 效率是實際加速比S與最大加速比m之比。
效率E = n△t/T流水= (n/T流水) ·△t=TP△t,當△t不變時,流水線的效率與吞吐率呈正比。
?
答:
定向技術是指流水線中將計算結果從其產生的地方直接送到真正需要它的地方,而不是從寄存器文件讀出使用,它是一種解決數據相關,避免流水線暫停的方法。
?
答:
兩條指令 i 和 j,都會訪問同一寄存器R,假設指令i在指令j 之前,指令i先寫寄存器R而指令j后讀寄存器R,稱兩條指令存在寫后讀相關。流水線中如果j 在i 完成寫之前從R 中讀出數據,將得到錯誤的結果。DLX中由于在ID段讀寄存器而在WB段寫寄存器,所以寫后讀相關可能引起執行錯誤或流水線暫停。
答:
兩條指令 i 和 j,都會訪問同一寄存器R,假設指令i在指令j 之前,指令i先寫寄存器R而指令j后寫寄存器R,稱兩條指令存在寫后寫相關。如果j 在i 之前完成寫操作,R中將保存錯誤的結果。DLX中由于只在WB段這唯一的一段寫寄存器,所以前后指令的寫后寫相關不會發生執行錯誤。
答:
兩條指令 i 和 j,都會訪問同一寄存器R,假設指令i在指令j 之前,指令i先讀寄存器R而指令j后寫寄存器R,稱兩條指令存在讀后寫相關。流水線中如果j 在i 完成讀之前向R 中寫入數據,將寫入錯誤的結果。DLX中由于在ID段讀寄存器而在WB段寫寄存器,ID段在WB段之前,所以前后指令的讀后寫相關不會發生執行錯誤。
?
答:
?
?
答:
(1) 凍結或排空流水線:在流水線中停住或刪除分支后的指令,直到知道轉移目標地址
(2) 預測分支轉移失敗:流水線繼續照常流動,如果分支轉移成功,將分支指令后的指令轉換為空操作,并從分支目標處開始取指令執行;否則照常執行
(3) 預測分支轉移成功:始終假設分支成功,直接從分支目標處取指令執行
(4) 延遲分支(delayed branch):分支開銷為n的分支指令后緊跟有n個延遲槽,流水線遇到分支指令時,按正常方式處理,順帶執行延遲槽中的指令,從而減少分支開銷。
?
答:
要求被調度的指令必須與分支結果無關,任何情況都能起作用。
答:
要求被調度的指令必須保證在分支失敗時執行被調度的指令不會導致錯誤,可能需要復制指令。該方法在分支成功時起作用。
答:
要求被調度的指令必須保證在分支成功時執行被調度的指令不會導致錯誤。該方法在分支失敗時起作用。
?
答:
一個向量功能部件得到的結果直接送入另一個向量功能部件的操作數寄存器時所發生的連接過程稱為鏈接。當兩條指令出現“寫后讀”相關時,若它們不存在功能部件沖突和向量寄存器(源或目的) 沖突,就有可能把它們所用的功能部件頭尾相接,形成一個鏈接流水線,進行流水處理。 ??鏈接特性實質上是把流水線“定向”的思想引入到向量執行過程的結果。
?
答:
容量越大價格越低,速度越快價格越高,容量越大速度越慢。
?
答:
?TA=TA1+(1-H )TM ?或 ?TA=TA1+FTM,H為命中率,F為失效率,TA1為高一級存儲層次的訪問時間,TM為失效開銷。
?
?
?
答:
映象規則:當把一個塊調入高一層(靠近CPU)存儲器時,可以放在哪些位置上?
查找算法:當所要訪問的塊在高一層存儲器中時,如何找到該塊?
替換算法:當發生失效時,應替換哪一塊?
寫策略:當進行寫訪問時,應進行哪些操作?
答:
并行查找速度快,但硬件代價大,順序查找速度慢,通常采用MRU策略提高速度,硬件代價相對小。
?
答:
方法一:利用相聯存儲器,速度較快,邏輯控制簡單,但需特殊器件支持。
方法二:利用單體多字存儲器+比較器,速度相對較慢,可利用一般SRAM等實現。
?
答:
隨機法:實現簡單
FIFO法:實現較為簡單,失效率與程序訪問特性有關。
LRU法:失效率低。
?
答:
寫直達法:執行“寫”操作時,不僅寫入Cache,而且也寫入下一級存儲器。
寫回法:執行“寫”操作時,只寫入Cache。僅當Cache中相應的塊被替換時,才寫回主存。需設置“污染位”來記錄數據塊是否被更新。
寫回法速度快,所使用的存儲器頻帶較低;寫直達法易于實現,一致性好。
按寫分配(寫時取):寫失效時,先把所寫單元所在的塊調入Cache,再行寫入。
不按寫分配(繞寫法):寫失效時,直接寫入下一級存儲器而不調塊。
?
當把數據寫入寫緩沖器時,判斷本次所寫入單元的塊地址是否與寫緩沖器中某個有效塊的地址相同,若是,則把新數據與該塊合并。這樣可提高寫緩沖的利用率。
?
答:
在Cache和它從下一級存儲器調數據的通路之間設置一個全相聯的小Cache,用于存放被替換出去的塊,以備重用。這些被保存的替換塊被稱為Victim塊,存放這些塊的緩沖稱為Victim cache。Victim cache對于減小沖突失效很有效,特別是對于小容量的直接映象數據Cache,作用尤其明顯。
?
答:
在邏輯上把直接映象Cache的空間上下平分為兩個區。對于任何一次訪問,偽相聯Cache先按直接映象Cache的方式去處理。若命中,則其訪問過程與直接映象Cache的情況一樣。若不命中,則再到另一區相應的位置去查找。若找到,則發生了偽命中,否則就只好訪問下一級存儲器。
?
答:
在編譯時,對程序中的指令和數據進行重新組織,是連續訪問的指令或數據能夠具有根號的時間和空間局部性,以降低Cache失效率。
?
答:
推遲對讀失效的處理;檢查寫緩沖器中的內容。
答:
編譯器把對數組的整行或整列訪問改為按塊進行,使得塊內的訪問具有較好的局部性,從而降低失效率。
?
答:
把Cache塊進一步劃分為更小的塊(子塊),并給每個子塊賦予一位有效位,用于指明該子塊中的數據是否有效。Cache與下一級存儲器之間以子塊為單位傳送數據。但標識仍以塊為單位。
?
答:
?局部失效率=該級Cache的失效次數/到達該級Cache的訪問次數,
?全局失效率=該級Cache的失效次數/CPU發出的訪存的總次數。
?
答:
在地址標識中增加PID字段(進程標識符)
?
答:
優點:兼得虛擬Cache和物理Cache的好處。
局限性:Cache容量受到限制?(頁內位移),Cache容量≤頁大小×相聯度。
?
答:
減少主存延遲,提高主存帶寬。
?
答:
增加存儲器的寬度;采用簡單的多體交叉存儲器;采用獨立存儲體;避免存儲體沖突。
?
答:
多個進程可以共享主存空間;程序員不必做存儲管理工作;采用動態再定位,簡化了程序的裝入。
?
答:
TLB是一個專用的高速緩沖器,用于存放近期經常使用的頁表項。
?
答:
大頁面的優點:
頁表的大小與頁面大小成反比。較大的頁面可以節省實現地址映象所需的存儲空間及其它資源;較大的頁面可以使快速Cache命中的實現更簡單;在主存和輔存之間傳送較大頁面比傳送較小的頁面更有效。TLB的項數有限,對于給定數目的項數,較大的頁面意味著可以高效地實現更多存儲空間的地址變換,從而減小TLB失效的次數。
小頁面的優點:可以減少空間的浪費。
?
答:
優點:系統可靠性好;設計簡單。缺點:硬件開銷大;效率低。
?
答:
塊交叉分布式奇偶校驗盤陣列,即數據以塊交叉的方式存于各盤,但無專用的校驗盤,而是把冗余的奇偶校驗信息均勻地分布在所有磁盤上。由于對數據塊每一行的相聯奇偶校驗不再限制在單一磁盤上,只要塊單元不位于同一個磁盤內,這種組織方法就可以支持多個寫同時執行。這種策略讀數據速率高;盤陣列利用率高,但設計復雜。
?
答:
CPU-存儲器總線:?CPU-存儲器總線則比較短,通常具有較高的速度,并且要和存儲器系統的速度匹配來優化帶寬。
I/O總線:由于要連接許多不同類型、不同帶寬的設備,因此I/O總線比較長,并且還應遵循總線標準。
?
答:
程序控制、中斷、DMA、I/O處理機。
?
答:
字節多路通道:簡單的共享通道,為多臺低速或中速的外圍設備服務。采用分時方式工作。
選擇通道:為高速外圍設備(如磁盤存儲器等)服務。在傳送數據期間,只能為一臺高速外圍設備服務,在不同的時間內可以選擇不同的設備。
數組多路通道:為高速設備服務。各臺高速設備重迭操作。
?
答:
同步總線所有的設備都有統一的時鐘。同步總線的成本低,因為它不需要設備之間互相確定時序的邏輯。缺點是總線操作的速度受時鐘的影響。由于設備都需要精確的以公共時鐘為定時參考,因此頻率一旦高,容易出現時鐘漂移錯誤。
異步總線沒有統一的時鐘,設備內部自己定時。設備之間的信息傳送由總線發送器和接收器控制。異步總線適用更加廣泛,擴充時不用擔心時鐘時序和時鐘同步的問題。但傳輸時異步總線要增加額外的同步開銷。
?
答:
1)存儲器中可能不是CPU產生的最新數據,所以I/O系統從存儲器中取得是舊數據;
2)I/O系統與存儲器交換數據之后,在Cache中,被CPU使用的可能會是舊數據。
答:
1)利用寫直達方法。但如果是寫回法,必須進行地址檢查,確保I/O使用的數據不在Cache中;
2)Cache中的數據在I/O操作之后能夠及時更新,保證I/O操作的數據不在Cache中,如果在需要作廢Cache中的相應數據。
?
?
答:
(1)計算密集型
(2)數據密集型
(3)網絡密集型
?
答:
把計算機分成單指令流單數據流(SISD)、 單指令流多數據流(SIMD)、 多指令流單數據流(MISD)、 多指令流多數據流(MIMD)四種處理模式機器。
?
答:
按照存儲器結構和互連策略的不同分為集中式共享存儲器結構和分布式存儲器結構。
?
答:
優點:(1) ?如果大多數的訪問是針對本結點的局部存儲器,則可降低對存儲器和互連網絡的帶寬要求;(2) ?對局部存儲器的訪問延遲低。
缺點:處理器之間的通信較為復雜,且各處理器之間訪問延遲較大。
?
答:
(1) 物理上分離的多個存儲器可作為一個邏輯上共享的存儲空間進行編址。這類機器的結構被稱為分布式共享存儲器(DSM)或可縮放共享存儲器體系結構。DSM機器被稱為NUMA(non-uniform memory access)機器。
(2) 整個地址空間由多個獨立的地址空間構成,它們在邏輯上也是獨立的,遠程的處理器不能對其直接尋址。
?
答:
共享地址空間的機器利用Load和Store指令中的地址隱含地進行數據通信。
多個地址空間的機器通過處理器間顯式地傳遞消息完成 (消息傳遞機器),消息傳遞機器根據簡單的網絡協議,通過傳遞消息來請求某些服務或傳輸數據,從而完成通信。
?
答:
通信帶寬、通信延遲、通訊延遲隱藏機制的效率。
答:
(1) 與常用的集中式多處理機使用的通信機制兼容。
(2) 當處理器通信方式復雜或程序執行動態變化時易于編程,同時在簡化編譯器設計方面也占有優勢。
(3) 當通信數據較小時,通信開銷較低,帶寬利用較好。
(4) 通過硬件控制的Cache減少了遠程通信的頻度,減少了通信延遲以及對共享數據的訪問沖突。
?
答:
?(1) 硬件較簡單。
?(2) 通信是顯式的,從而引起編程者和編譯程序的注意,著重處理開銷大的通信。
?
答:
I/O操作:Cache中的內容可能與由I/O子系統輸入輸出形成的存儲器對應部分的內容不同。
共享數據:不同處理器的Cache都保存有對應存儲器單元的內容。
?
答:
如果對某個數據項的任何讀操作均可得到其最新寫入的值,則認為這個存儲系統是一致的。
?
答:
共享數據的遷移:降低了對遠程共享數據的訪問延遲。
共享數據的復制:不僅降低了訪存的延遲,也減少了訪問共享數據所產生的沖突。
?
答:
目錄:物理存儲器中共享數據塊的狀態及相關信息均被保存在一個稱為目錄的地方。
監聽:每個Cache除了包含物理存儲器中塊的數據拷貝之外,也保存著各個塊的共享狀態信息。
?
答:
寫作廢協議:在一個處理器寫某個數據項之前保證它對該數據項有唯一的訪問權。
寫更新協議:當一個處理器寫某數據項時,通過廣播使其它Cache中所有對應的該數據項拷貝進行更新。
?
答:
1)對同一數據的多個寫而中間無讀操作的情況,寫更新協議需進行多次寫廣播操作,而在寫作廢協議下只需一次作廢操作。
2)對同一塊中多個字進行寫,寫更新協議對每個字的寫均要進行一次廣播,而在寫作廢協議下僅在對本塊第一次寫時進行作廢操作。
3)從一個處理器寫到另一個處理器讀之間的延遲通常在寫更新模式中較低。而在寫作廢協議中,需要讀一個新的拷貝。
?
?
?答:
一種專用的存儲器所記錄的數據結構,它記錄著可以進入Cache的每個數據塊的訪問狀態、該塊在各個處理器的共享狀態以及是否修改過等信息。
?
?
?
總結
- 上一篇: 前端学习(1953)vue之电商管理系统
- 下一篇: 计算机组成原理疑难知识点