《計算機組成原理》典型例題講解.doc
分析設計計算:1.CPU結構如圖1所示,其中有一個累加寄存器AC,一個狀態(tài)條件寄存器,各部分之間的連線表示數據通路,箭頭表示信息傳送方向。(1) 標明圖中四個寄存器的名稱。(2) 簡述指令從主存取到控制器的數據通路。(3) 簡述數據在運算器和主存之間進行存 / 取訪問的數據通路。 圖1解:(1) a為數據緩沖寄存器 DR ,b為指令寄存器 IR ,c為主存地址寄存器,d為程序計數器PC。(2) 主存 M 緩沖寄存器 DR 指令寄存器 IR 操作控制器。(3) 存貯器讀 :M 緩沖寄存器DR ALU AC存貯器寫 :AC 緩沖寄存器DR M2. 某機器中,配有一個ROM芯片,地址空間0000H3FFFH?,F在再用幾個16K8的芯片構成一個32K8的RAM區(qū)域,使其地址空間為8000HFFFFH。假設此RAM芯片有/CS和/WE信號控制端。CPU地址總線為A15A0,數據總線為D7D0,控制信號為R/W,MREQ(存儲器請求),當且僅當MREQ和R/W同時有效時,CPU才能對有存儲器進行讀(或寫)。(1)滿足已知條件的存儲器,畫出地址碼方案。(2)畫出此CPU與上述ROM芯片和RAM芯片的連接圖。解:存儲器地址空間分布如圖1所示,分三組,每組16K8位。由此可得存儲器方案要點如下:(1) 用兩片16K*8 RAM芯片位進行串聯連接,構成32K*8的RAM區(qū)域。片內地址 :A0 A13 ,片選地址為:A14A15;(2) 譯碼使用2 :4 譯碼器;(3) 用 /MREQ 作為2 :4譯碼器使能控制端,該信號低電平(有效)時,譯碼器工作。(4) CPU的R / /W信 號與RAM的/WE端連接,當R / W = 1時存儲器執(zhí)行讀操作, 當R / W = 0時,存儲器執(zhí)行寫操作。如圖1ROM16K*8空RAM16K*8RAM16K*800003FFF 8000FFFF圖1CPU與芯片連接如圖2: 圖23. 某機器中,已知配有一個地址空間為(00001FFF)16的ROM區(qū)域,現在用一個SRAM芯片(8K8位)形成一個16K16位的ROM區(qū)域,起始地址為(2000)16 。假設SRAM芯片有/CS和/WE控制端,CPU地址總線A15A0 ,數據總線為D15D0 ,控制信號為R / /W(讀 / 寫),/MREQ(當存儲器讀或寫時,該信號指示地址總線上的地址是有效的)。要求:(1) 滿足已知條件的存儲器,畫出地址碼方案。(2) 畫出ROM與RAM同CPU連接圖。解 :存儲器地址空間分布如圖1所示,分三組,每組8K16位。由此可得存儲器方案要點如下:(5) 組內地址 :A12 A0 (A0為低位);(6) 組號譯碼使用2 :4 譯碼器;(7) RAM1 ,RAM 2 各用兩片SRAM芯片位進行并聯連接,其中一片組成高8位,另一片組成低8位。(8) 用 /MREQ 作為2 :4譯碼器使能控制端,該信號低電平(有效)時,譯碼器工作。(9) CPU的R / /W信 號與SRAM的/WE端連接,當R / W = 1時存儲器執(zhí)行讀操作, 當R / W = 0時,存儲器執(zhí)行寫操作。如圖2 圖1 圖24. 參見下圖數據通路,畫出數據指令“STA R1,(R2)”的指令周期流程圖,其含義是將寄存器R1的內容傳送至(R2)為地址的存貯單元中。標出各微操作信號序列。解: PCAR MDR DRIR DRM R1DR R2ARPCO ,G ,ARiR / /W = 1 (讀)R1O , G , DRiDRO ,G ,IRiR2O ,G ,ARiR / /W = 0 (寫) 5. 用16K1位的動態(tài)RAM芯片構成64K8位的存儲器,要求: (1)畫出該存儲器組成的邏輯框圖 (2)設存儲器的讀寫周期均為0.5s,CPU在1s 內至少要訪問內存一次。試問采用那種刷新方式比較合理?兩次刷新的最大時間間隔是多少?對全部存儲單元刷新一遍所需的實際刷新時間是多少?解:(1)根據題意,存儲器總容量為64KB,故地址線總需16位?,F使用16K1位的DRAM芯片,共需32片。芯片本身地址線占14位,所以采用位并聯與地址串聯相結合的方法來組成整個存儲器 ,其組成邏輯框圖如圖所示,其中使用一片2:4譯碼器(2) 根據已知條件,CPU在1s內至少需要訪存一次,所以整個存儲器的平均讀/寫周期與單個存儲器片的讀/寫周期相差不多,應采用異步式刷新方式比較合理。DRAM存儲器來講,兩次刷新的最大時間間隔是2ms. DRAM芯片讀/寫周期為0.5s。假定16K1位的RAM芯片由128128矩陣存儲元構成,刷新時只對128行進行異步式刷新,則刷新間隔為2ms/128 =15.6s,可取刷新信號周期為15s . 6.某16位機運算器框圖如圖所示,其中ALU為加法器,SA,SB為鎖存器,4個通用寄存器的讀/寫控制符號如下表所示:(1) 請設計微指令格式(具體考慮控制字段,順序控制字段只畫框圖)(2) “ADD R0,R1”指令完成(R0) + (R1) R1的操作,畫出微程序流程圖.解:(1)微指令格式如下: 1 2位 1 2位 1 1 1 1 1 1 RRA0RA1WWA0WA1 LDSALDSBLSBLSBresetIP字段下址字段 其中LDSA,LDSB為鎖存器打入信號, CLR為SB清零信號;LSB為SB送原碼控制信號, /LSB為SB送反碼控制信號; I為公共微程序信號(2)流程圖如圖: 7. 某計算機的數據通路如圖所示,其中M主存, MBR主存數據寄存器, MAR主存地址寄存器, R0-R3通用寄存器, IR指令寄存器, PC程序計數器(具有自增能力), C、D-暫存器, ALU算術邏輯單元(此處做加法器看待), 移位器左移、右移、直通傳送。所有雙向箭頭表示信息可以雙向傳送。請按數據通路圖畫出“ADD(R1),(R2)+”指令的指令周期流程圖。該指令的含義是兩個數進行求和操作。其中源操作地址在寄存器R1中,目的操作數尋址方式為自增型寄存器間接尋址(先取地址后加1)。解:“ADD (R1),(R2)+”指令是SS型指令,兩個操作數均在主存中。其中源操作數地址在R1中,所以是R1間接尋址。目的操作數地址在R2中,由R2間接尋址,但R2的內容在取出操作數以后要加1進行修改。指令周期流程圖如圖8. 下圖所示的處理機邏輯框圖中,有兩條獨立的總線和兩個獨立的存貯器。已知指令存貯器IM最大容量為16384字(字長18位),數據存貯器DM最大容量是65536字(字長16位)。 設處理機指令格式為: 17 10 9 0 OP X加法指令可寫為“ADD X(R1)”。其功能是(AC0) + (Ri)+ X)AC1,其中(Ri)+ X)部分通過尋址方式指向數據存貯器,現取Ri為R1。(1) 請寫出下列各寄存器的位數:程序計數器PC; 指令寄存器IR;累加寄存器 AC0和AC1;通用寄存器R0R3;指令存儲器的地址寄存器IAR;指令存儲器的數據緩沖寄存器IDR;數據存儲器的地址寄存器DAR;數據存儲器的數據緩沖寄存器DDR。(2) 試畫出ADD指令從取指令開始到執(zhí)行結束的指令周期流程圖。解:(1) PC=14位 IR=18位 AC0=AC1=16位 R0R3=16位 IAR=14位 IDR=18位 DAR=16位 DDR=16位(2) 加法指令“ADD X(Ri)”是一條隱含指令,其中一個操作數來自AC0,另一個操作數在數據存貯器中,地址由通用寄存器的內容(Ri)加上指令格式中的X量值決定,可認為這是一種變址尋址。指令周期流程圖如圖3。圖39.某計算機有8條微指令I1I8,每條微指令所包含的微命令控制信號見下表,aj 分別對應10種不同性質的微命令信號。假設一條微指令的控制字段僅限8位,請安排微指令的控制字段格式。解:(答案不唯一)為了壓縮指令字的長度,必須設法把一個微指令周期中的互斥性微命令信號組合在一個小組中,進行分組譯碼。經分析,(e ,f ,h)和(b, i, j)可分別組成兩個小組或兩個字段,然后進行譯碼,可得六個微命令信號,剩下的a, c, d, g 四個微命令信號可進行直接控制,其整個控制字段組成如下: 01 e 01 b 直接控制 10 f 10i a c d g 11 h 11j 4位 2位 2位 10.設有一運算器數據通路如圖2所示。假設操作數a和b(補碼)已分別放在通用寄存器R1和R2中,ALU有,M(傳送)三種操作功能。要求:(1) 指出相容性微操作和相斥性微操作。(2) 用字段直接譯碼法設計適用此運算器的微指令格式。圖2解: (1) 相斥性微操作有如下五組:移位器(R,L,V)ALU(+,-,M)A選通門的4個控制信號B選通門的7個控制信號 寄存器的4個輸入和輸出控制信號相容性微操作:A選通門的任一信號與B選通門控制信號B選通門的任一信號與A選通門控制信號ALU的任一信號與加1控制信號五組控制信號中組與組之間是相容性的(2)每一小組的控制信號由于是相斥性的,故可以采用字段直接譯碼法,微指令格式如下: abcdefX X XX X XX XX XXX X X X332214 001 MDRA 001 PCB 01 + 01 R 1+1 0001 Pcout010 R1A 010 R1B 10 - 10 L 0010 Pcin011 R2A 011 R1B 11 M 11 V 0011 R1out100 R3 A 100 R2B 0100 R1in101 R2B 0101 R2out110 R3B 0110 R2in111 R3B 0111 R3out 1000 R3in 【例】CPU的地址總線16根(A15A0,A0為低位),雙向數據總線8根(D7D0),控制總線中與主存有關的信號有MREQ(允許訪存, 低電平有效),R/W(高電平為讀命令,低電平為寫命令)。主存地址空間分配如下:08191為系統程序區(qū),由只讀存儲芯片組成;819232767為用戶程序區(qū);最后(最大地址)2K地址空間為系統程序工作區(qū)。上述地址為十進制,按字節(jié)編址?,F有如下存儲器芯片:EPROM:8K8位(控制端僅有CS);SRAM:16K1位,2K8位,4K8位,8K8位.請從上述芯片中選擇適當芯片設計該計算機主存儲器,畫出主存儲器邏輯框圖,注意畫出選片邏輯(可選用門電路及38譯碼器74LS138)與CPU 的連接,說明選哪些存儲器芯片,選多少片?!窘狻?主存地址空間分布如圖所示。根據給定條件,選用EPROM:8K8位芯片1片。SRAM:8K8位芯片3片,2K8位芯片1片。38譯碼器僅用Y0,Y1,Y2,Y3和Y7輸出端,且對最后的2K8位芯片還需加門電路譯碼。主存儲器的組成與CPU連接邏輯圖如圖所示: