計算機組成原理 唐朔飛 習題解答 - 下載本文

(2) 見下圖

5、答:

中斷周期前是執行階段,后是取指階段。中斷周期中,由中斷隱指令完成: ① 保存程序斷點 ② 硬件關中斷

③ 將向量地址送至程序計數器(硬件向量法)或將中斷識別程序入口地址送至程序計數器(軟件查詢法)。

6、答:

所謂并行包含同時性合并發性兩個方面。前者是指兩個或多個事件在同一時刻發生,后者是指兩個或多個事件在同一時間段發生。也就是說,在同一時刻或同一時間段內完成良種或兩種以上性質相同或不同的功能,只要在時間上互相重疊,就存在并行性。

從計算機體系上看,粗粒度并行性是在多個處理機上分別運行多個進程,由多臺處理機合作完成一個程序,一般用算法(軟件)實現。細粒度并行性是指在處理及的操作級和指令級的并行性,一般用硬件實現。指令流水就是一項重要技術。

8、答:

影響流水線性能的因素主要反映在兩方面:訪存沖突和相關問題。

① 訪存沖突:取指令、取操作數和存結果都要訪問存儲器,若在某一時間,前后流水的若干條指令同時訪存,則產生訪存沖突。

② 相關問題:指程序的相近指令之間出現某種關聯,使指令流水線出現停頓。例如:

當下一條指令需用前一條指令的結果時,必須待前面的指令流出流水線后才能執行,包括控制相關和數據相關。

9、答:

超長指令字(VLIW)技術和超標量技術都是采用多條指令在多個處理部件中并行處理的體系結構,在一個時鐘周期內能流出多條指令。但超標量的指令來自同一標準的指令流,超長指令字則是由編譯程序在編譯時挖掘指令間潛在的并行性后,把多條能并行操作的指令組合成一條具有多個操作碼字段的超長指令(指令字長可達幾百位),由這條超長指令控制VLIW機中多個獨立工作的功能部件,由每一個操作碼字段控制一個功能部件,相當于同時執行多條指令。

10、答:

指令流水線和運算流水線的共同點是由于相鄰兩段在執行不同的操作,因此在相鄰兩段之間必須設置鎖存器或寄存器,以保證在一個周期內流水線的輸出信號不便。

第九章 思考題與習題

1.設CPU內有下列部件:PC、IR、MAR、MDR、AC、CU。 (1)寫出取指周期的全部微操作;

(2)寫出加法指令ADD X,取數指令LDA X,存數指令STA X在執行階段所需

的全部微操作;

(3)當上述指令為間接尋址時,寫出運行這些指令所需的全部微操作;

(4)寫出無條件轉移指令JMP Y和結果為零則轉指令BAZ Y在執行階段所需的全部

微操作。

2.控制單元的功能是什么?其輸入受什么控制?

3.什么是指令周期、機器周期和時鐘周期?三者有何關系? 4.能不能說機器的主頻越快,機器的速度就越快,為什么?

5.設機器A的主頻為8MHz,機器周期含4個時鐘周期,且該機的平均指令執行速度是0.4MIPS,試求該機的平均指令周期和機器周期,每個指令周期中含幾個機器周期?如果機器B的主頻為12MHz,且機器周期也含4個時鐘周期,試問B機的平均指令執行速度為多少MIPS?

6.設某機主頻為8MHz,每個機器周期平均含2個時鐘周期,每條指令平均有2.5個機器周期,試問該機的平均指令執行速度為多MIPS?若機器主頻不變,但每個機器周期平均含4個時鐘周期,每條指令平均有5個機器周期,則該機的平均指令執行速度又是多MIPS?由此可得出什么結論?

7.某CPU的主頻為8MHz,若已知每個機器周期平均包含4個時鐘周期,該機的平均指令執行速度為0.8MIPS,試求該機的平均指令周期及每個指令周期含幾個機器周期?若改用時鐘周期為0.4μs的CPU芯片,則計算機的平均指令執行速度為多少MIPS?若要得到平均每秒40萬次的指令執行速度,則應采用主頻為多少的CPU芯片?

8.某計算機的主頻為4MHz,各類指令的平均執行時間和使用頻度如下表所示,試計算該機的速度(單位用MIPS表示),若上述CPU芯片升檔為6MHz,則該機的速度又為多少?

指令類別 存取 加、減、比較、轉乘除 其他 移 平均指令執行時間 使用頻度 9.試比較同步控制、異步控制和聯合控制的區別。

10.什么是典型的同步控制?為了提高CPU的效率,在同步控制方式中又有哪些方式?以

8085的輸出指令為例,說明它屬哪種控制方式?

11.設CPU內部結構如圖9.4所示,此外還設有B、C、D、E、H、L六個寄存器,它們各

自的輸入和輸出端都與內部總線相通,并分別受控制信號控制(如Bi為寄存器B的輸入控制;Bo為寄存器B的輸出控制)。要求從取指令開始,寫出完成下列指令所需的控制信號。

(1)ADD B,C ((B) – (C)→B); (2)SUB A,H ((AC) – (H) →AC)。

12.CPU結構同上題,寫出完成下列指令所需的控制信號(包括取指令)。 (1)寄存器間址的無條件轉移指令JMP @ B; (2)間接尋址的存數指令STA @ X。

第九章 控制單元的功能習題部分答案

1、答:

(1) 寫出取指周期的全部微操作; ① PC→MAR ② 1→R

③ M(MAR)→MDR ④ MDR→IR ⑤ (PC)+1→PC

(2) 寫出加法指令ADD X,取數指令LDA X,存數指令STA X在執行階段所需的全部微操作。

答: ADD X LDA X STA X ①Ad(IR) →MAR ①Ad(IR) →MAR ①Ad(IR) →MAR ②1→R ②1→R ②1→W ③M(MAR)→MDR ③M(MAR)→MDR ③ACC→MDR ④(ACC)+(MDR) →ACC ④MDR →ACC ④MDR →M(MAR) (3) 當上述指令為間接尋址時,寫出運行這些指令所需的全部微操作。 答: ADD X LDA X STA X ①Ad(IR) →MAR,1→R ②M(MAR)→MDR ③MDR→Ad(IR) ①Ad(IR) →MAR,1→R ②M(MAR)→MDR ③(ACC)+(MDR) →ACC ①Ad(IR) →MAR,1→R ②M(MAR)→MDR ③MDR→Ad(IR) ①Ad(IR) →MAR,1→R ②M(MAR)→MDR ③MDR →ACC ①Ad(IR) →MAR,1→R ②M(MAR)→MDR ③MDR→Ad(IR) ①Ad(IR) →MAR,1→R ②M(MAR)→MDR ③MDR →M(MAR) 0.6?s 35% 0.8?s 50% 10?s 5% 1.4?s 10% (4) 寫出無條件轉移指令JMP Y和結果為零則轉指令BAZ Y在執行階段所需的全部微操作。

答: JMP Y Ad(IR) →PC BAZ Y 設Z為標記觸發器,結果為0時,Z=1 BAZ Y指令執行階段的微操作為 Z·Ad(IR) →PC 2、答:

控制單元具有發出各種微操作命令(即控制信號)序列的功能。 在執行程序的過程中,控制單元要發出各種微操作命令,而且不同的指令對應不同的命令。其輸入必須受時鐘控制,即每一個時鐘脈沖使控制單元發一個操作命令,或發一組需同時執行的操作命令。

3、答:

指令周期:CPU取出并執行一條指令所需的全部時間,即完成一條指令的時間。

機器周期:所有指令執行過程中的一個基準時間,取決于指令的功能及其間的速度。 時鐘周期:用時鐘信號來控制產生每一個微操作命令。一個機器周期內包含了若干個時鐘周期,又稱節拍或狀態。在每個節拍內機器可完成一個或幾個同時執行的操作。

三者的關系:一個指令周期包含若干個機器周期,一個機器周期又包含若干個時鐘周期(節拍),每個指令周期內的機器周期數可以不等,每個機器周期內的節拍數也可以不等。機器周期、節拍組成了多級時序系統。

4、答:

不能說機器的主頻越快,機器的速度就越快。因為機器的速度不僅和主頻有關,還與機器周期中所包含的時鐘周期數有關。同樣主頻的機器,由于機器周期所含的時鐘周期數不同,機器的速度也不同。機器周期中所含的時鐘周期少的機器速度更快。

9、答:

同步控制方式:任何一條指令或指令中的任何一個微操作的執行,都由事先確定且有統一基準時標的時序信號所控制的方式叫做同步控制。如果機器內的存儲器其存取周期不統一,那么只有把最長的存取周期作為機器周期,才能采用同步控制,否則取指令和取數時間不同,無法用統一的基準。

異步控制方式:異步控制方式不存在基準時標信號,沒有固定的周期節拍和嚴格的時鐘同步,執行每條指令和每個操作需要多少時間就占用多少時間,這種方式微操作的時序由專門的應答線路控制,其結構比同步方式復雜。

聯合控制方式:是同步控制和異步控制的結合,對各種不同指令的微操作實行大部分統一,小部分區別對待的方法。

第十章 思考題與習題

1.假設響應中斷時,要求將程序斷點存在堆棧內,并且采用軟件辦法尋找中斷服務程序的入口地址,試寫出中斷隱指令的微操作及節拍安排。

2.寫出完成下列指令的微操作及節拍安排(包括取指操作)。 (1)指令ADD R1, X完成將R1寄存器的內容和主存X單元的內容相加結果存于R1的

操作。

(2)指令ISZ X完成將主存X單元的內容增1,并根據其結果若為0,則跳過下一條

指令執行。

3.按序寫出下列程序所需的全部微操作命令及節拍安排。

指令地址 指 令 LDA 206 ADD 207 BAN 204 STA 205 STP 200 201 202 203 204 4.已知帶返轉指令的含義如下圖所示,寫出機器在完成帶返轉指令時,取指階段和執行階段所需的全部微操作及節拍安排。

主程序KK+1M帶返轉KM+1JMPIK間址特征子程序

5.畫出組合邏輯控制單元的組成框圖,根據指令處理過程,結合有關部件說明其工作原理。 6.畫出微程序控制單元的組成框圖,根據指令處理過程,結合有關部件說明其工作原理。 7.試比較組合邏輯設計和微程序設計的設計步驟和硬件組成,說明哪一種控制速度更快,為什么?

8.微指令的操作控制有幾種編碼方式,各有何特點?哪一種控制速度最快? 9.什么是垂直型微指令?什么是水平型微指令?各有何特點? 10.能否說水平型微指令就是直接編碼的微指令,為什么? 11.微指令的地址有幾種形成方式?各有何特點?

12.微指令操作控制字段采用直接編碼或顯式編碼時,其微指令字長如何確定?

13.設控制存儲器的容量為512×48位,微程序可在整個控存空間實現轉移,而控制微程序

轉移的條件共有4個(采用直接控制),微指令格式如下:

轉移條件下地址操作控制順序控制

試問微指令中的三個字段分別為多少位? 14.試比較靜態微程序設計和動態微程序設計。

15.解釋機器指令、微指令、微程序、毫微指令和毫微程序,它們之間有什么對應關系? 16.毫微程序設計的特點是什么?與微程序設計相比,其硬件組成有何不同?

17.假設機器的主要部件有:程序計數器PC,指令寄存器IR,通用寄存器R0、R1、R2、

R3,暫存器C、D,ALU,移位器,存儲器地址寄存器MAR,存儲器數據寄存器MDR及存儲矩陣M。





陕西11选5五位走势图 内蒙古11选5官网 赌场玩法种类大全 广西快三购买 东北彩票网官方网站 2012豆豆网幸运28技巧 江西时时彩几点 广西股票融资 小赢理财 河南11选5奖金说明 辽宁11选五前三组走势图