第3章 微型計算機的基本工作原理——鄭學堅、周斌《微型計算機原理及應用》_第1頁
第3章 微型計算機的基本工作原理——鄭學堅、周斌《微型計算機原理及應用》_第2頁
第3章 微型計算機的基本工作原理——鄭學堅、周斌《微型計算機原理及應用》_第3頁
第3章 微型計算機的基本工作原理——鄭學堅、周斌《微型計算機原理及應用》_第4頁
第3章 微型計算機的基本工作原理——鄭學堅、周斌《微型計算機原理及應用》_第5頁
已閱讀5頁,還剩70頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、11第三章 微型計算機的基本工作原理2第3章 微型計算機的基本工作原理章節(jié)目錄微型計算機微型計算機結構的簡化形式結構的簡化形式指令系統(tǒng)指令系統(tǒng)123程序設計程序設計4執(zhí)行指令的例行程序執(zhí)行指令的例行程序5控制部件控制部件6微型計算機功能的擴展微型計算機功能的擴展7初級程序設計舉例初級程序設計舉例8控制部件的擴展控制部件的擴展9現(xiàn)代技術在微型計算機中的應用現(xiàn)代技術在微型計算機中的應用31 微型計算機結構的簡化形式n簡化了的微型計算機簡化了的微型計算機(1) (1) 功能簡單:只能做功能簡單:只能做兩個數(shù)的加減法。兩個數(shù)的加減法。(2) (2) 內存量?。褐挥幸粌却媪啃。褐挥幸粋€個16168 PR

2、OM(8 PROM(可編程序可編程序只讀存儲器只讀存儲器) )。(3) (3) 字長字長8 8位:二進制位:二進制8 8位顯示。位顯示。(4) (4) 手動輸入:用撥動手動輸入:用撥動開關輸入程序和數(shù)據(jù)。開關輸入程序和數(shù)據(jù)。41 微型計算機結構的簡化形式1. 程序計數(shù)器程序計數(shù)器PC計數(shù)范圍由計數(shù)范圍由00001111(用十六用十六進制可記作由進制可記作由0F)。每次運行之前,先復位至每次運行之前,先復位至0000。當取出一條指令后,當取出一條指令后,PC應加應加1。2. 存儲地址寄存器存儲地址寄存器MAR接收來自接收來自PC的二進制程序號,的二進制程序號,作為地址碼送至作為地址碼送至PROM

3、去。去。n簡化了的微型計算機簡化了的微型計算機PC4 CPCLKCLR EPPCMAR4 LMCLKMAR168PROM8ER168PROM51 微型計算機結構的簡化形式結構:結構:每條橫線與豎線都有每條橫線與豎線都有一條由開關和二極管串聯(lián)的一條由開關和二極管串聯(lián)的電路將它們連接起來。電路將它們連接起來。操作:操作:撥動開關,即可使該撥動開關,即可使該數(shù)據(jù)位置數(shù)據(jù)位置1或置或置0,從而達到,從而達到使每個存儲單元使每個存儲單元“寫入寫入”數(shù)數(shù)據(jù)的目的。據(jù)的目的。功能:功能:實際上同時具有實際上同時具有RAM和和ROM的功能。的功能。n簡化了的微型計算機簡化了的微型計算機3. 可編程序只讀存儲器

4、可編程序只讀存儲器PROM61 微型計算機結構的簡化形式作用:作用:從從PROM接收到指令字接收到指令字(當當LI=1,ER=1),同時將指令字,同時將指令字分送到控制部件分送到控制部件CON和和W總線總線上去。上去。指令字是指令字是8位的:位的: MSBLSB最高有效位最高有效位 最低有效位最低有效位左左4位為最高有效位位為最高有效位(高高4位位),稱為稱為指令字段指令字段;右;右4位為最低有位為最低有效位效位(低低4位位),稱為,稱為地址字段地址字段。4. 指令寄存器指令寄存器IRIRCON48412 LICLKCLR EICLKCLRCP EP LM ER LI EI LA EA SU

5、EU LB LOIRCON71 微型計算機結構的簡化形式(2) CON(2) CON有一個有一個同步時鐘同步時鐘,能發(fā)出脈沖能發(fā)出脈沖CLKCLK到各個到各個部件部件去,使它們去,使它們同步運行同步運行。(3) (3) 在在CONCON中有一個中有一個控制矩陣控制矩陣CMCM,能根據(jù),能根據(jù)IRIR送來的送來的指令發(fā)指令發(fā)出出1212位的控制字位的控制字:CON=CCON=CP PE EP PL LM ME ER RL LI IE EI IL LA AE EA AS SU UE EU UL LB BL LO O根據(jù)控制字中各位的置根據(jù)控制字中各位的置1 1或置或置0 0情況,計算機就能自動地情

6、況,計算機就能自動地按指令程序而有秩序地運行。按指令程序而有秩序地運行。5. 5. 控制部件控制部件CONCON(1) (1) 每次運行之前,每次運行之前,CONCON先先發(fā)出發(fā)出CLR=1CLR=1,使有關的部件,使有關的部件清清0 0。此時:。此時:PC=0000PC=0000IR=0000IR=000000000000IRCON48412 LICLKCLR EICLKCLRCP EP LM ER LI EI LA EA SU EU LB LOIRCON81 微型計算機結構的簡化形式作用:作用:儲存計算機運行期間的中間結果。儲存計算機運行期間的中間結果。它能它能接收接收W總線送來的數(shù)據(jù)總線

7、送來的數(shù)據(jù)(LA=1),也能將數(shù)據(jù),也能將數(shù)據(jù)送送到到W總線上去總線上去(EA=1)。它還有一個它還有一個數(shù)據(jù)輸出端數(shù)據(jù)輸出端,將數(shù)據(jù)送至,將數(shù)據(jù)送至ALU去進行去進行算術運算算術運算。注意:注意:這個輸出是這個輸出是雙態(tài)雙態(tài)的,即是立即地送去,而的,即是立即地送去,而不受不受E門的控制。門的控制。6. 累加器累加器AA888 LA CLKEAA8891 微型計算機結構的簡化形式7. 算術邏輯部件算術邏輯部件ALU它只是一個二進制它只是一個二進制補碼補碼加法器加法器減法器減法器。當當SU=0,ALU,進行,進行加法加法A+B;當;當SU=1,ALU,進行,進行減法減法A-B,即,即(A+B)。

8、8. 寄存器寄存器B將要將要與與A相加減的數(shù)據(jù)相加減的數(shù)據(jù)暫存暫存于于此寄存器。它到此寄存器。它到ALU的輸出也的輸出也是雙態(tài)的,即無是雙態(tài)的,即無E門控制。門控制。AALUB88888 LA CLKEA SU EULBCLK8A88ALUB101 微型計算機結構的簡化形式作用:作用:計算機運行結束時,累加器計算機運行結束時,累加器A中存有中存有答案答案。如要。如要輸出輸出此答案,就得送入此答案,就得送入O。此時。此時EA=1,LO=1,則,則O=A。典型的計算機具有若干個輸出寄存器,稱為典型的計算機具有若干個輸出寄存器,稱為輸出接口輸出接口電路電路。這樣就可以。這樣就可以驅動不同的外圍設備驅

9、動不同的外圍設備,如打印機、,如打印機、顯示器等。顯示器等。9. 輸出寄存器輸出寄存器OOD88 LO CLKOD這是用發(fā)光二極管這是用發(fā)光二極管(LED)組成的組成的顯示器顯示器。每一個每一個LED接到寄存器接到寄存器O的一位上去。當某位為的一位上去。當某位為高電位高電位時,則該時,則該LED發(fā)光發(fā)光。因為寄存器。因為寄存器O是是8位的,所以這里也位的,所以這里也由由8個個LED組成顯示器。組成顯示器。10. 二進制顯示器二進制顯示器D11(1) 中央處理器中央處理器CPU(包括包括PC,IR,CON,ALU,A及及B);(2) 記憶裝置記憶裝置M(MAR及及PROM);(3) 輸入輸入/輸

10、出輸出I/O(包括包括O及及D,D也可稱為其外圍也可稱為其外圍設備設備)。n簡化了的微型計算機簡化了的微型計算機分成分成3大部分:大部分:121 微型計算機結構的簡化形式中央處理器中央處理器(central processing unit,縮寫為縮寫為CPU)是將程序是將程序計數(shù)功能計數(shù)功能(PC)、指令寄存功能、指令寄存功能(IR)、控制功能、控制功能(CON)、算術邏、算術邏輯功能輯功能(ALU)以及暫存中間數(shù)據(jù)功能以及暫存中間數(shù)據(jù)功能(A及及B)集成在一塊電路器集成在一塊電路器件上的集成電路件上的集成電路(IC)。實用上的。實用上的CPU要比這里的圖例更為復雜要比這里的圖例更為復雜些,但

11、其主要功能是基本一樣的。些,但其主要功能是基本一樣的。存儲器存儲器M(memory)在此圖例中只包括存儲地址寄存器在此圖例中只包括存儲地址寄存器(MAR)及可編程存儲器及可編程存儲器(實際還包括了實際還包括了地址譯碼地址譯碼功能功能),這就是微型計,這就是微型計算機的算機的“內存內存”。實際的。實際的“內存內存”要包括更多的內容要包括更多的內容(如如ROM,RAM及及EPROM等等)和更大的存儲容量。和更大的存儲容量。輸入及輸出接口輸入及輸出接口(IO)是計算機實行人機對話的重要部件。本是計算機實行人機對話的重要部件。本簡例中的輸入將是人工設定簡例中的輸入將是人工設定PROM而沒有輸入電路接口

12、只有輸而沒有輸入電路接口只有輸出有接口出有接口(O)。實際微型計算機的輸入設備多為鍵盤,輸出則為。實際微型計算機的輸入設備多為鍵盤,輸出則為監(jiān)視器監(jiān)視器(即電視屏顯示器即電視屏顯示器),因而必須有專用的輸出接口電路。,因而必須有專用的輸出接口電路。3大部分功能:大部分功能:13指令系統(tǒng)LDA將數(shù)據(jù)裝入累加器將數(shù)據(jù)裝入累加器A;ADD進行加法運算;進行加法運算;SUB進行減法運算;進行減法運算;OUT輸出結果;輸出結果;HLT停機。停機。n簡化微機的指令簡化微機的指令5條指令:條指令:控制部件能完成一系列例行程序控制部件能完成一系列例行程序14指令系統(tǒng)助記符助記符 操作數(shù)注釋操作數(shù)注釋LDAR9

13、;把;把R9中的數(shù)據(jù)存入中的數(shù)據(jù)存入AADDRA;把;把RA中的數(shù)據(jù)與中的數(shù)據(jù)與A的相加的相加ADDRB;把;把RB中的數(shù)據(jù)與中的數(shù)據(jù)與A的相加的相加ADDRC;把;把RC中的數(shù)據(jù)與中的數(shù)據(jù)與A的相加的相加SUBRD;把;把A中的數(shù)據(jù)與中的數(shù)據(jù)與RD的相減的相減OUT;輸出;輸出A中的數(shù)據(jù),即結果中的數(shù)據(jù),即結果HLT;停機;停機例如例如一個計算程序的格式如下:一個計算程序的格式如下:15程序設計(1)編制匯編語言寫的程序;)編制匯編語言寫的程序;(2)助記符的翻譯;)助記符的翻譯;(3)存儲器的分配。)存儲器的分配。將指令清單中每一條指令都翻譯成二進制碼將指令清單中每一條指令都翻譯成二進制碼

14、機器碼機器碼,稱作操作碼表,稱作操作碼表存儲器中既要寫入計算程序,也要存放參與運算的數(shù)據(jù),因存儲器中既要寫入計算程序,也要存放參與運算的數(shù)據(jù),因此,還得決定存儲器中的存儲單元應如何分配,這稱為此,還得決定存儲器中的存儲單元應如何分配,這稱為存儲存儲空間分配空間分配。在本微型機中就是要把。在本微型機中就是要把PROM中的中的16個存儲單元個存儲單元分配成兩個區(qū):分配成兩個區(qū):程序存放區(qū)程序存放區(qū)(指令區(qū)指令區(qū))和和數(shù)據(jù)存放區(qū)數(shù)據(jù)存放區(qū)(數(shù)據(jù)區(qū)數(shù)據(jù)區(qū))。n程序設計的步驟程序設計的步驟16程序設計n操作碼表操作碼表由計算機制造廠提供的由計算機制造廠提供的翻譯表,它是每個翻譯表,它是每個助記助記符符與

15、與二進制碼二進制碼的相應的相應對對照照表。表。助記符助記符 操作碼操作碼LDA 0 0 0 0ADD 0 0 0 1SUB 0 0 1 0OUT 1 1 1 0HLT 1 1 1 1助記符與操作碼助記符與操作碼17程序設計n存儲器分配存儲器分配PROM中的中的16個存儲單個存儲單元分配成兩個區(qū):元分配成兩個區(qū):程序存放區(qū)程序存放區(qū)(指令區(qū)指令區(qū))和和數(shù)數(shù)據(jù)存放區(qū)據(jù)存放區(qū)(數(shù)據(jù)區(qū)數(shù)據(jù)區(qū))。問題:問題:如何根據(jù)助記符與二如何根據(jù)助記符與二進制的進制的對照表對照表(操作碼表操作碼表)將將上節(jié)例題中的每條指令的上節(jié)例題中的每條指令的助助記符記符譯成譯成二進制碼二進制碼,并將存,并將存儲單元符號寫成地址

16、碼儲單元符號寫成地址碼(即即R00000,R10001,R91001) ? 01H00H0FH0EH0DH0CH0BH0AH 09H 08H 07H 06H 05H 04H 03H 02HRFRERDRCRBRAR9R8R7R6R5R4R3R2R1R0數(shù)據(jù)區(qū)數(shù)據(jù)區(qū)指令區(qū)指令區(qū)18程序設計n將源程序翻譯成目的程序將源程序翻譯成目的程序助記符助記符 操作碼操作碼LDA0000ADD0001SUB0010OUT1110HLT1111數(shù)據(jù)區(qū)數(shù)據(jù)區(qū)存儲單元存儲單元R8RF二進制地址二進制地址10001111LDA R9ADD RAADD RBSUB RCOUT HLT源程序源程序0 0 0 00 0 0

17、 10 0 0 10 0 1 01 1 1 01 1 1 1操作碼操作碼1 0 0 11 0 1 01 0 1 11 1 0 0操作數(shù)地址操作數(shù)地址目的程序目的程序程序和數(shù)據(jù)都寫到了存儲器中程序和數(shù)據(jù)都寫到了存儲器中01H00H0FH0EH0DH0CH0BH0AH 09H 08H 07H 06H 05H 04H 03H 02HRFRERDRCRBRAR9R8R7R6R5R4R3R2R1R01CH18H14H10HF0HE0H2CH1BH1AH 09H該程序的功能是計算:該程序的功能是計算:16+20+24-28指令區(qū)指令區(qū)存儲單元存儲單元R0R7二進制地址二進制地址0000011119程序設計

18、n程序及數(shù)據(jù)的輸入方法程序及數(shù)據(jù)的輸入方法20執(zhí)行指令的例行程序 取指令取指令執(zhí)行指令執(zhí)行指令取指令取指令執(zhí)行指令執(zhí)行指令 振蕩周期振蕩周期主頻的倒數(shù)主頻的倒數(shù) 狀態(tài)周期(節(jié)拍)狀態(tài)周期(節(jié)拍)若干個振蕩周期若干個振蕩周期 CPU周期周期若干個狀態(tài)周期若干個狀態(tài)周期 指令周期指令周期若干個若干個CPU周期周期(這里的指令周期對應課本上(這里的指令周期對應課本上“機器周期機器周期”的概念,但一般的概念,但一般的教科書上的教科書上“機器周期機器周期”是和是和“CPU周期周期”為同一個概念)為同一個概念)(讀取并執(zhí)行完成一條指令的時間)(讀取并執(zhí)行完成一條指令的時間)(一個(一個CPU周期取指令,若

19、干個周期取指令,若干個CPU周期執(zhí)行指令)周期執(zhí)行指令)21執(zhí)行指令的例行程序指令周期指令周期CPU周期周期狀態(tài)周期狀態(tài)周期/節(jié)拍節(jié)拍執(zhí)行一條指令的時間為一個執(zhí)行一條指令的時間為一個機器周期機器周期。機器周期機器周期又可分為又可分為取指周期取指周期和和執(zhí)行周期執(zhí)行周期。取指過程和執(zhí)行過程機器都得通過不同的取指過程和執(zhí)行過程機器都得通過不同的機器節(jié)拍機器節(jié)拍。22執(zhí)行指令的例行程序 每一節(jié)相當于一條指令,每一節(jié)的時間即為指令周期每一節(jié)相當于一條指令,每一節(jié)的時間即為指令周期 體操中每一節(jié)是等長的,而實際指令周期可以是不等長的,但體操中每一節(jié)是等長的,而實際指令周期可以是不等長的,但均為均為CPU

20、周期的整數(shù)倍周期的整數(shù)倍 每節(jié)的每一小節(jié)(一個每節(jié)的每一小節(jié)(一個1、2、3、4),相當與一個),相當與一個CPU周期周期 一節(jié)體操通常分一節(jié)體操通常分4小節(jié),取指令需要小節(jié),取指令需要1個小節(jié)即個小節(jié)即1個個CPU周期,執(zhí)周期,執(zhí)行這條指令一般需要行這條指令一般需要1至至3個個CPU周期周期 每一小節(jié)的一個口令(每一小節(jié)的一個口令( 1、2、3、4 ),相當于一個節(jié)拍),相當于一個節(jié)拍 每聽到一個數(shù)完成一個分解動作,計算機則在每個節(jié)拍完成一每聽到一個數(shù)完成一個分解動作,計算機則在每個節(jié)拍完成一個個CPU周期的任務的一個步驟周期的任務的一個步驟23執(zhí)行指令的例行程序各位輸出端各位輸出端Q0Q5

21、的電位就是機器節(jié)拍的電位就是機器節(jié)拍T0T5的電的電位,各節(jié)拍之間的轉換是在時鐘脈沖的負邊緣開始的位,各節(jié)拍之間的轉換是在時鐘脈沖的負邊緣開始的6位的環(huán)形字。它用以控制位的環(huán)形字。它用以控制6條電路,使它們依次輪流條電路,使它們依次輪流為高電位,為高電位,T0,T1,T2,T3,T4和和T5稱為機器的節(jié)拍。稱為機器的節(jié)拍。n環(huán)形計數(shù)器及機器節(jié)拍環(huán)形計數(shù)器及機器節(jié)拍24執(zhí)行指令的例行程序取出指令的過程需要取出指令的過程需要3個機器節(jié)拍,在清零和啟動之個機器節(jié)拍,在清零和啟動之后第后第1個節(jié)拍為個節(jié)拍為T0。(1) 地址節(jié)拍地址節(jié)拍(T0=1)在在T0=1時,應將時,應將PC的內容的內容(即第即第

22、1個地址碼個地址碼)送入送入MAR(并通過并通過MAR而達到而達到PROM)所以,此時應有:所以,此時應有:EP=1,即,即PC準備放出數(shù)據(jù)準備放出數(shù)據(jù)LM=1,即,即MAR準備接收數(shù)據(jù)準備接收數(shù)據(jù)控制部件發(fā)出的控制字控制部件發(fā)出的控制字CON:=CPEPLMERLIEILAEASUEULBLO=0 1 1 0 0 0 0 0 0 0 0 0n取指周期取指周期25執(zhí)行指令的例行程序(2) 儲存節(jié)拍儲存節(jié)拍(T1=1)在在T1=1時,應將時,應將PROM中由中由PC送來的地址碼所指定的存儲單送來的地址碼所指定的存儲單元中的內容送到元中的內容送到IR,同時,同時IR立立即將其高即將其高4位送至控制

23、部件。位送至控制部件。因此,在此節(jié)拍到來之前,即因此,在此節(jié)拍到來之前,即應準備好:應準備好:ER=1即即PROM準備放出數(shù)據(jù)準備放出數(shù)據(jù)LI=1即即IR準備接收數(shù)據(jù)準備接收數(shù)據(jù)所以:所以:CON=000110000000n 取指周期取指周期26執(zhí)行指令的例行程序(3) 增量節(jié)拍增量節(jié)拍(T2=1)在在T2=1時,應使時,應使PC加加1,做,做好下一條指令的取指準備。好下一條指令的取指準備。因此,因此,CP=1,即命令,即命令PC計計數(shù)。所以,此時:數(shù)。所以,此時:CON=100000000000這樣這樣3節(jié)拍的取指周期,對任何一條指令都是一樣的。節(jié)拍的取指周期,對任何一條指令都是一樣的。n

24、取指周期取指周期27執(zhí)行指令的例行程序指令取出來,再將其高指令取出來,再將其高4位送入控制部件去進行分析,位送入控制部件去進行分析,決定下面應如何執(zhí)行,下面的決定下面應如何執(zhí)行,下面的3節(jié)拍節(jié)拍(T3,T4,T5)就稱就稱為執(zhí)行周期。為執(zhí)行周期。(4) T3=1時時IR已將從已將從PROM來的指令碼的來的指令碼的高高4位送至控制部件進行分析。位送至控制部件進行分析。此高此高4位是與位是與LDA相應的二進制相應的二進制碼碼“0000”,控制部件經過分析,控制部件經過分析后就發(fā)出命令:后就發(fā)出命令:EI=1,將,將IR的低的低4位送至位送至W總線;總線;LM=1,MAR接收此低接收此低4位數(shù)作位數(shù)

25、作為地址并立即送至為地址并立即送至PROM;所以所以CON=001001000000n 執(zhí)行周期(執(zhí)行周期(LDA指令)指令)28執(zhí)行指令的例行程序(5) T4=1應將應將PROM的數(shù)據(jù)區(qū)的存儲的數(shù)據(jù)區(qū)的存儲單元單元(如如R9,即,即1001)的內容的內容送入累加器送入累加器A,即:,即:ER=1,PROM準備放出數(shù)據(jù);準備放出數(shù)據(jù);LA=1,A準備接收數(shù)據(jù);準備接收數(shù)據(jù);即即CON=000100100000n 執(zhí)行周期(執(zhí)行周期(LDA指令)指令)29執(zhí)行指令的例行程序(6) T5=1因為因為T4=1時,已將數(shù)據(jù)存放時,已將數(shù)據(jù)存放入入A中,所以,中,所以,LDA的例行的例行程序就已完成,程

26、序就已完成,T5節(jié)拍就節(jié)拍就變成空拍,即有:變成空拍,即有:CON=000000000000n 執(zhí)行周期(執(zhí)行周期(LDA指令)指令)30執(zhí)行指令的例行程序第第2、3、4的的ADD的指令,其的指令,其取指周期仍和取指周期仍和LDA 9H是一樣是一樣的,但的,但PC中的內容已不是中的內容已不是0000而是而是PC+1,即,即0001了;了;T4節(jié)拍從節(jié)拍從PROM中來的數(shù)據(jù)中來的數(shù)據(jù)不再送入累加器不再送入累加器A,而是送入,而是送入寄存器寄存器B,這樣,這樣A和和B的數(shù)據(jù)就的數(shù)據(jù)就能直接被送入能直接被送入ALU相加;相加;在在T5節(jié)拍,將節(jié)拍,將A和和B的內容相的內容相加的結果還要送回到加的結果

27、還要送回到A去。所去。所以要求以要求LA=1,EU=1。由于。由于ALU在實行相加時,要求在實行相加時,要求SU=0,所以沒出現(xiàn),所以沒出現(xiàn)SU。n 執(zhí)行周期(執(zhí)行周期(ADD指令)指令)31執(zhí)行指令的例行程序第第5條是要求減法運算所以最后條是要求減法運算所以最后一個節(jié)拍中出現(xiàn)一個節(jié)拍中出現(xiàn)SU=1,因而控,因而控制字變成:制字變成:CON=000000101100第第6條指令要求將累加器的內容條指令要求將累加器的內容送入輸出寄存器,而與存儲器送入輸出寄存器,而與存儲器PROM無關,所以只在無關,所以只在T3節(jié)拍節(jié)拍要求要求LO=1,EA=1,而,而T4及及T5節(jié)節(jié)拍為空拍。拍為空拍。第第7

28、7條指令只要求不再運行下去,條指令只要求不再運行下去,即要求即要求CLKCLK時鐘停發(fā)脈沖。這便時鐘停發(fā)脈沖。這便是由控制器直接發(fā)出停止信號。是由控制器直接發(fā)出停止信號。所以在所以在T3T3節(jié)拍發(fā)出節(jié)拍發(fā)出HLT(HLT(停機信停機信號號) )后后T4T4及及T5T5節(jié)拍也是空拍。節(jié)拍也是空拍。n 執(zhí)行周期(減法及執(zhí)行周期(減法及HLT)32執(zhí)行指令的例行程序4PCIRCONMAR168PROMAALUBOD48888488888412 CPCLKCLR EP LICLKCLR EI LA CLKEA SU EULBCLK LO CLKCLKCLR LMCLKER8CP EP LM ER LI

29、 EI LA EA SU EU LB LO0 1 1 0 0 0 0 0 0 0 0 0T0=10H440執(zhí)行下面程序執(zhí)行下面程序LDA R9ADD RA注意觀察取指注意觀察取指周期和執(zhí)行周期周期和執(zhí)行周期33執(zhí)行指令的例行程序4PCIRCONMAR168PROMAALUBOD48888488888412 CPCLKCLR EP LICLKCLR EI LA CLKEA SU EULBCLK LO CLKCLKCLR LMCLKER8CP EP LM ER LI EI LA EA SU EU LB LO0 0 0 1 1 0 0 0 0 0 0 0T1=1809H8409HLDA R9的指令碼

30、的指令碼34執(zhí)行指令的例行程序4PCIRCONMAR168PROMAALUBOD48888488888412 CPCLKCLR EP LICLKCLR EI LA CLKEA SU EULBCLK LO CLKCLKCLR LMCLKER8CP EP LM ER LI EI LA EA SU EU LB LO0 0 1 0 0 1 0 0 0 0 0 0T3=194491 0 0 0 0 0 0 0 0 0 0 0T2=101H完成了取指完成了取指周期周期35執(zhí)行指令的例行程序4PCIRCONMAR168PROMAALUBOD48888488888412 CPCLKCLR EP LICLKCL

31、R EI LA CLKEA SU EULBCLK LO CLKCLKCLR LMCLKER8CP EP LM ER LI EI LA EA SU EU LB LO0 0 0 1 0 0 1 0 0 0 0 0T4=110H8810H36執(zhí)行指令的例行程序4PCIRCONMAR168PROMAALUBOD48888488888412 CPCLKCLR EP LICLKCLR EI LA CLKEA SU EULBCLK LO CLKCLKCLR LMCLKER810H0 0 0 0 0 0 0 0 0 0 0 0T5=1空節(jié)拍空節(jié)拍CP EP LM ER LI EI LA EA SU EU LB

32、 LO執(zhí)行完了執(zhí)行完了LDA R9指令指令將數(shù)據(jù)將數(shù)據(jù)裝入了裝入了累加器累加器A37執(zhí)行指令的例行程序4PCIRCONMAR168PROMAALUBOD48888488888412 CPCLKCLR EP LICLKCLR EI LA CLKEA SU EULBCLK LO CLKCLKCLR LMCLKER8CP EP LM ER LI EI LA EA SU EU LB LO0 1 1 0 0 0 0 0 0 0 0 0T0=11H441進入第二條指令進入第二條指令的取指周期的取指周期10H38執(zhí)行指令的例行程序4PCIRCONMAR168PROMAALUBOD48888488888412

33、 CPCLKCLR EP LICLKCLR EI LA CLKEA SU EULBCLK LO CLKCLKCLR LMCLKER8CP EP LM ER LI EI LA EA SU EU LB LO0 0 0 1 1 0 0 0 0 0 0 0T1=181AH841AH10HADD RA的指令碼的指令碼39執(zhí)行指令的例行程序4PCIRCONMAR168PROMAALUBOD48888488888412 CPCLKCLR EP LICLKCLR EI LA CLKEA SU EULBCLK LO CLKCLKCLR LMCLKER8CP EP LM ER LI EI LA EA SU EU

34、LB LO0 0 1 0 0 1 0 0 0 0 0 0T3=1A44A1 0 0 0 0 0 0 0 0 0 0 0T2=102H完成了完成了取指周期取指周期10H40執(zhí)行指令的例行程序4PCIRCONMAR168PROMAALUBOD48888488888412 CPCLKCLR EP LICLKCLR EI LA CLKEA SU EULBCLK LO CLKCLKCLR LMCLKER8CP EP LM ER LI EI LA EA SU EU LB LO0 0 0 1 0 0 0 0 0 0 1 0T4=1810H814H24H41執(zhí)行指令的例行程序4PCIRCONMAR168PRO

35、MAALUBOD48888488888412 CPCLKCLR EP LICLKCLR EI LA CLKEA SU EULBCLK LO CLKCLKCLR LMCLKER8CP EP LM ER LI EI LA EA SU EU LB LO0 0 0 0 0 0 1 0 0 1 0 0T5=124H8824H完成了完成了ADD RA指令指令的執(zhí)行的執(zhí)行相加的結果相加的結果裝入了裝入了累加器累加器A42控制部件它包括下列主要部件:它包括下列主要部件:(1) 環(huán)形計數(shù)器環(huán)形計數(shù)器(RC);(2) 指令譯碼器指令譯碼器(ID);(3) 控制矩陣控制矩陣(CM);(4) 其他控制電路。其他控制電

36、路。其中,其中,環(huán)形計數(shù)器、指令譯碼器、控制矩陣環(huán)形計數(shù)器、指令譯碼器、控制矩陣稱為稱為控制器控制器。n控制部件的構成控制部件的構成使計算機能夠成為自動機的關鍵部件。使計算機能夠成為自動機的關鍵部件。43控制部件n指令譯碼器指令譯碼器IR高高4位就是各種位就是各種控制動作的代碼控制動作的代碼I7 I6 I5 I4LDAADDSUBOUTHLT0 0 0 0110 0 0 110 0 1 011 1 1 011 1 1 1來自指來自指令寄存令寄存器的操器的操作碼作碼44控制部件n控制矩陣控制矩陣+T0T1T2T3T4T5+T5T4T3T2T1T0CPEP LM ER LI EI LA EA SU

37、 EU LB LOLDAADDSUBOUT45控制部件啟動和清除按鈕運行/停止觸發(fā)器時鐘震蕩器射極跟隨器環(huán)形環(huán)形計數(shù)器計數(shù)器指令指令譯碼器譯碼器控制控制矩陣矩陣 指令字段指令字段(高(高4位)位)HLTCONCLRCLK控控 制制 器器 控制部件結構圖控制部件結構圖CLRCLKCLRCLKCLRCLK時鐘時鐘震蕩器震蕩器射極射極跟隨器跟隨器啟動和啟動和清除按鈕清除按鈕運行運行/ /停止停止觸發(fā)器觸發(fā)器存儲程序,按地址順序執(zhí)行,存儲程序,按地址順序執(zhí)行,這就是馮這就是馮. .諾伊曼模型計算機的工作原理諾伊曼模型計算機的工作原理n其他控制電路其他控制電路46微型計算機功能的擴展 自動機自動機 高速

38、高速47子程序計數(shù)器SC88PC88MAR825612RAM12MDR1212IR128CON812輸入寄存器1212A12ALU12B變址寄存器12輸出寄存器12121212121228 LSCLKCSES LPCLK EP LICLRCLK EI LMCLKWEME AminusXminusLDEDCLKCLKCLRLNCLKENLACLKEAS3S1EUS2S0LBCLKLOCLRLXCLKEXINXDEX功能擴充后的微型計算機結構圖功能擴充后的微型計算機結構圖Xminus XzeroAnimus Azero AzeroXzero48微型計算機功能的擴展它本身也相當于一個程序計數(shù)器,不過

39、它不由它本身也相當于一個程序計數(shù)器,不過它不由CLR來來清零,而可由清零,而可由LS門來置數(shù)。一旦置數(shù),即為其子程序門來置數(shù)。一旦置數(shù),即為其子程序的開始地址。的開始地址。SC的位數(shù)為的位數(shù)為8位。位。LS“裝入裝入”的可控門;的可控門;ES“輸出輸出”的可控門,即的可控門,即3態(tài)門;態(tài)門;CS“計數(shù)計數(shù)”的控制端。的控制端。子程序計數(shù)器SC88 LSCLKCSESn擴展的功能擴展的功能1. 子程序計數(shù)器子程序計數(shù)器SC49微型計算機功能的擴展用用RAM作為主存儲器。作為主存儲器。RAM的的存儲單元為存儲單元為256個,字長為個,字長為12位。可以隨機存取,除位??梢噪S機存取,除MAR(存存儲

40、地址寄存器儲地址寄存器)外,還有一個外,還有一個MDR(存儲數(shù)據(jù)寄存器存儲數(shù)據(jù)寄存器)。n擴展的功能擴展的功能PC88 LPCLK EP2. 程序計數(shù)器程序計數(shù)器PCPC增加了一個增加了一個LP門,這就使得門,這就使得PC可以接收跳轉地址可以接收跳轉地址。換句話說,。換句話說,PC可以不從可以不從00H開始。開始。3. 隨機存取存儲器隨機存取存儲器RAMMAR825612RAM12MDR1212 LMCLKWEMELDEDCLK50微型計算機功能的擴展控制端改為控制端改為S=S3S2S1S0。4位位16種組合,只用其中的種組合,只用其中的10種,種,以得到以得到3種算術運算和種算術運算和7種邏

41、輯種邏輯運算。運算。4. 控制部件控制部件CONn擴展的功能擴展的功能此此CON將要產生一個將要產生一個28位的控制字:位的控制字:LSCSESLPCPEPLMWEMELDEDLIEILNENLAEAS3S2S1S0EULBLXINXDEXEXLO5. 算術邏輯部件算術邏輯部件ALU全加/減器ABSCiCi+1函數(shù)發(fā)生器XYS0SnCON28CLKCLR AzeroXzero51微型計算機功能的擴展新增加的一種寄存器,它可以用指令使其加新增加的一種寄存器,它可以用指令使其加1或減或減1:INX加加1指令助記符,其控制端符號為指令助記符,其控制端符號為INX;DEX減減1指令助記符,其控制端符號

42、為指令助記符,其控制端符號為DEX。n擴展的功能擴展的功能變址寄存器1212LXCLKEXINXDEXXminus Xzero6. 變址寄存器變址寄存器X52微型計算機功能的擴展在訪問存儲器指令在訪問存儲器指令(MRI)和轉移指令的執(zhí)行期間,高和轉移指令的執(zhí)行期間,高4位代表指令字段,低位代表指令字段,低8位代表地址字段。位代表地址字段。 (MSB4位位)(LSB8位位) CONW總線總線在運算指令執(zhí)行期間,高在運算指令執(zhí)行期間,高8位代表指令字段,而低位代表指令字段,而低4位位可為任意數(shù),因為它不代表任何意義:可為任意數(shù),因為它不代表任何意義: (MSB8位位)(LSB4位位) CON 不用

43、不用n擴展的功能擴展的功能IR1288 LICLRCLK EI7. 指令寄存器指令寄存器IR53微型計算機功能的擴展n指令的擴展指令的擴展 訪問存儲器類指令訪問存儲器類指令 指令中的操作數(shù)之一在存儲器中指令中的操作數(shù)之一在存儲器中 轉移指令轉移指令 可根據(jù)條件決定程序流程的跳轉可根據(jù)條件決定程序流程的跳轉 將指令地址段內容有條件地裝入將指令地址段內容有條件地裝入PC或或SC 邏輯運算指令邏輯運算指令 作用對象僅限于作用對象僅限于ALU、A和和B 各類邏輯運算以及子程序返回、輸入輸出、停機等各類邏輯運算以及子程序返回、輸入輸出、停機等54初級程序設計舉例初級程序是包括下列的程序模式:初級程序是包

44、括下列的程序模式:(1) 簡單程序簡單程序程序一統(tǒng)到底,中間沒有任何分支和跳轉。程序一統(tǒng)到底,中間沒有任何分支和跳轉。(2) 分支程序分支程序程序進行中,根據(jù)判斷程序執(zhí)行的不同結果而分程序進行中,根據(jù)判斷程序執(zhí)行的不同結果而分別跳轉至其他子程序去。別跳轉至其他子程序去。(3) 循環(huán)程序循環(huán)程序程序進行過程中,在某一循環(huán)體進行若干次循環(huán)程序進行過程中,在某一循環(huán)體進行若干次循環(huán)運行,然后再繼續(xù)前進。運行,然后再繼續(xù)前進。(4) (4) 調用子程序調用子程序程序進行至某一階段,調用存儲于某存儲區(qū)中程序進行至某一階段,調用存儲于某存儲區(qū)中的某個子程序,然后返回至主程序繼續(xù)運行下去。的某個子程序,然后

45、返回至主程序繼續(xù)運行下去。n程序模式程序模式55初級程序設計舉例【例例】跳轉指令及其如何形成循環(huán)程序的簡例跳轉指令及其如何形成循環(huán)程序的簡例 R0LDA6H把把(R6)裝入裝入A去去 R1SUB7H從從(A)減去減去(R7)指指 R2JAM5H(A)=負,則轉移至負,則轉移至R5令令R3JAZ5H(A)=0,則轉移至,則轉移至R5區(qū)區(qū)R4JMP1H無條件轉移至無條件轉移至R1R5HLT數(shù)數(shù)R625(10)據(jù)據(jù)區(qū)區(qū)R79(10)56初級程序設計舉例【例例】循環(huán)程序循環(huán)程序利用變址寄存器可以設計一個循環(huán)程序:利用變址寄存器可以設計一個循環(huán)程序:R0LDX5H將將(R5)裝入變址器裝入變址器XR1D

46、EX 命命(X)減減1R2JIZ 4H(X)=0,則轉移至,則轉移至R4R3JMP1H無條件轉移至無條件轉移至R1R4HLT 停機停機R53(10) (R5)=3(10)(數(shù)據(jù)數(shù)據(jù))57初級程序設計舉例【例例3.3】乘法計算的程序乘法計算的程序R0NOPR1LDXAHR2CLAR3DEXR4ADD9H7次返回次返回R5JIZ 7HR6JMP3HR7OUT轉出循環(huán)轉出循環(huán) R8HLT R912(10) RA8(10)利用循環(huán)程序可作乘法計算,例如要求12(10)8(10),就是要求將12(10)連加8次。這就可以利用循環(huán)程序,讓它進行8次循環(huán)。R0INP ;將外部數(shù)據(jù)裝入將外部數(shù)據(jù)裝入AR1XC

47、H;將將(A)和和(X)互換互換58初級程序設計舉例程序清單如下:R0INP ;將I0裝入累加器AR1LDB9H;將(R9)裝入寄存器BR2AND;將(B)與(A)進行“與”運算R3JAZ6H ;(A)=0,則轉移至R6R4LDAAH;將(RA)裝入累加器AR5JMP7H;無條件轉至R7R6LDABH;將(RB)裝入累加器AR7OUT ;輸出(A)至顯示器R8HLT ;停機R90 0 0 00 0 0 00 0 0 1(掩碼)RA1 1 1 11 1 1 11 1 1 1奇數(shù)標志RB0 0 0 00 0 0 00 0 0 0偶數(shù)標志【例】邏輯運算的例子設計一個程序,用以測試某個來自接口電路的輸

48、入數(shù)I0(12位),以確定該數(shù)是否為奇數(shù)。如I0為奇數(shù)(即最后一位為1),則顯示一個111111111111;如I0是偶數(shù)(最后一位為0),則顯示一個00000000 0000。59初級程序設計舉例【例例】子程序設計子程序設計設計一個計算設計一個計算x2+y2+z2=?的計算程序。由于的計算程序。由于x2,y2和和z2在形式上在形式上都是一樣的,是求一個數(shù)的平方值,這不但本題用得著,在做都是一樣的,是求一個數(shù)的平方值,這不但本題用得著,在做其他數(shù)學運算時也常用得著,因此可將其他數(shù)學運算時也常用得著,因此可將x2做成一個子程序而存做成一個子程序而存于存儲器中一個固定的區(qū)域中,用到時,即可將其調出

49、使用。于存儲器中一個固定的區(qū)域中,用到時,即可將其調出使用。60初級程序設計舉例RF2STACAH ;將;將(A)暫存于暫存于RCA RF3LDXCAH ;將;將(RCA)裝入裝入XRF4CLA ;累加器;累加器A清零清零循環(huán)程序循環(huán)程序RF5DEX ;(X)減減1循環(huán)體循環(huán)體RF6ADDCAH ;將;將(RCA)與與(A)相加相加x個個x相加的過程相加的過程RF7JIZF9H ;(X)=0,則轉移到則轉移到RF9RF8JMPF5H ;無條件轉移至;無條件轉移至RF5RF9BRB ;返回主程序;返回主程序RC6xRC7y ;被運算的數(shù)據(jù);被運算的數(shù)據(jù)RC8zRC9RCA ;運算過程暫存地址;運

50、算過程暫存地址將此子程序存于以將此子程序存于以RF2為起始地址為起始地址(其地址為其地址為F2H,即,即1111 0010的的存儲單元存儲單元)的一個區(qū)域中,則可設計其程序如下:的一個區(qū)域中,則可設計其程序如下:61初級程序設計舉例R00LDAC6H R01JMSF2HR02STAC9H R03LDA C7H R04JMSF2H R05ADDC9H R06STAC9H R07LDA C8H R08 JMSF2H R09ADD C9H R0AOUTR0B HLT主程序的運算:x2+y2+z2=42+62+82=?RC64(10)RC76(10)RC88(10)62控制部件的擴展控 制 矩 陣環(huán)

51、形 計 數(shù) 器T5T4T3T2T1T028CON(28位)指令譯碼827HLTCLKCLR一個具有27+6+4=37個輸入端28個輸出端的極其復雜的組合邏輯電路組合邏輯電路AminusAzeroXminusXzeron控制器的結構控制器的結構63控制部件的擴展 組合邏輯電路的缺點 不靈活、不規(guī)整、布線復雜 微程序控制 1951設計計算機的最好方法M.V.Wilkes 核心思想:用程序(軟件方式)產生控制字n控制部件實現(xiàn)技術的發(fā)展控制部件實現(xiàn)技術的發(fā)展64控制部件的擴展 將每條指令從取指令到執(zhí)行指令的過程,表示為若干小步驟(微操作)的序列 每個微操作對應的控制信號編碼為微指令微指令存儲在控制存儲

52、器中 取出對應的微指令就產生該微操作對應的控制信號 因此,一條指令的執(zhí)行過程就轉化為一系列的微指令的執(zhí)行過程 控制邏輯擺脫了復雜的組合邏輯電路改為存儲控制器和存儲在其中的微指令實現(xiàn)n微程序控制微程序控制65現(xiàn)代技術在微型計算機中的應用 一種具有存儲存儲(記憶)功能的 高速高速 自動自動 信息處理信息處理機增加地址線位數(shù)增加地址線位數(shù)(增加尋址空間)(增加尋址空間)虛擬存儲器技術虛擬存儲器技術(彌補物理內存(彌補物理內存的不足)的不足)增加寄存器數(shù)量增加寄存器數(shù)量更高的主頻更高的主頻流水線技術流水線技術高速緩存技術高速緩存技術雙核、多核雙核、多核更加豐富和更加豐富和強大的指令系統(tǒng)強大的指令系統(tǒng)物

53、質基礎:微電子技術、物質基礎:微電子技術、VLSI 技術的飛速發(fā)展技術的飛速發(fā)展n計算機的本質計算機的本質66現(xiàn)代技術在微型計算機中的應用與與8位機相比,除明顯的處理字長不同外,還有下述優(yōu)點:位機相比,除明顯的處理字長不同外,還有下述優(yōu)點:(1) 更多的寄存器:更多的寄存器: 可以減少可以減少CPU對存儲器訪問的次數(shù),提對存儲器訪問的次數(shù),提高處理速度。高處理速度。(2) 增加了存儲器尋址范圍:增加了存儲器尋址范圍: 1632位地址字允許位地址字允許CPU直接直接對幾百萬個地址進行尋址。對幾百萬個地址進行尋址。(3) 更大的指令系統(tǒng):更大的指令系統(tǒng): 包括包括16位乘法及除法指令,塊移動指位乘

54、法及除法指令,塊移動指令等,簡化了編程,從而加快了軟件的開發(fā)。令等,簡化了編程,從而加快了軟件的開發(fā)。n16/32位微型計算機的優(yōu)點位微型計算機的優(yōu)點67現(xiàn)代技術在微型計算機中的應用(4) 更高的速度:更高的速度: 采用了新型的半導體技術,時鐘頻率可以從過采用了新型的半導體技術,時鐘頻率可以從過去去8MHz提高到提高到33MHz至至1GHz,因此加快了微處理器的運算速度,因此加快了微處理器的運算速度。(5) 新的結構:新的結構: 微型計算機的內部組織管理采用微程序控制及流微型計算機的內部組織管理采用微程序控制及流水線技術,加快了取指周期和訪問存儲器操作。在某些情況下運水線技術,加快了取指周期和

55、訪問存儲器操作。在某些情況下運行的速度,達到數(shù)量級的增長。行的速度,達到數(shù)量級的增長。(6) 存儲器管理的改進:存儲器管理的改進: 在硬件上增添高速緩沖存儲器,而在軟在硬件上增添高速緩沖存儲器,而在軟件上采用虛擬存儲技術,使微型計算機中執(zhí)行最慢的存儲器存取件上采用虛擬存儲技術,使微型計算機中執(zhí)行最慢的存儲器存取速度得到很大的提高;也使微型計算機的主存儲器在不擴大容量速度得到很大的提高;也使微型計算機的主存儲器在不擴大容量的情況下達到成倍的增加。的情況下達到成倍的增加。68現(xiàn)代技術在微型計算機中的應用n 流水線技術是一種同時進行若干操作的并行處理方式。流水線技術是一種同時進行若干操作的并行處理方式。n 它把取操作和執(zhí)行操作重疊進行,在執(zhí)行一條指令的同它把取操作和執(zhí)行操作重疊進行,在執(zhí)行一條指令的同時,又取另一條或若干條指令。時,又取另一條或若干條指令。n 程序中的指令仍是

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論