工學計算機組成原理課程設計_第1頁
工學計算機組成原理課程設計_第2頁
工學計算機組成原理課程設計_第3頁
工學計算機組成原理課程設計_第4頁
工學計算機組成原理課程設計_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1 需求分析1.1 課程設計目的本課程設計是計算機科學與技術專業(yè)重要的實踐性教學環(huán)節(jié)之一,是在學生學習完計算機組成原理課程后進行的一次全面的綜合設計。目的是通過一個完整的8位指令系統(tǒng)結構(ISA)的設計和實現(xiàn),加深對計算機組成原理課程內容的理解,建立起整機系統(tǒng)的概念,掌握計算機設計的基本方法,培養(yǎng)學生科學的工作作風和分析、解決實際問題的工作能力。1.2 課程設計內容及要求基于TDN-CM+計算機組成原理實驗教學系統(tǒng),設計和實現(xiàn)一個8位指令系統(tǒng)結構(ISA),通過調試和運行,使設計的計算機系統(tǒng)能夠完成指定的功能。設計過程中要求考慮到以下各方面的問題:(1)指令系統(tǒng)風格(寄存器-寄存器,寄存器-存

2、儲器,存儲器-存儲器);(2)數(shù)據(jù)類型(無符號數(shù),有符號數(shù),整型,浮點型);(3)存儲器劃分(指令,數(shù)據(jù));(4)尋址方式(立即數(shù)尋址,寄存器尋址,直接尋址等);(5)指令格式(單字節(jié),雙字節(jié),多字節(jié));(6)指令功能類別(算術邏輯運算,存儲器訪問,寄存器操作,程序流控制,輸入輸出)。要求學生綜合運用計算機組成原理、數(shù)字邏輯和匯編語言等相關課程的知識,理解和熟悉計算機系統(tǒng)的組成原理,掌握計算機主要功能部件的工作原理和設計方法,掌握指令系統(tǒng)結構設計的一般方法,掌握并運用微程序設計(Microprogramming)思想,在設計過程中能夠發(fā)現(xiàn)、分析和解決各種問題,自行設計自己的指令系統(tǒng)結構(ISA

3、)。1.3 TDN-CM+計算機組成原理實驗教學系統(tǒng)特點TDN-CM+計算機組成原理實驗教學系統(tǒng),由西安唐都科教儀器公司生產,具備支持開放式實驗教學方法的結構特點。實驗采用負邏輯模式,即燈亮為“0”,燈滅為“1”。系統(tǒng)采用部件單元式結構,包括運算器、存儲器、控制器、信號及時序控制、內總線、外總線、外圍接口及輸入輸出設備、大規(guī)??删幊踢壿嬈骷扔嬎銠C功能部件的單元電路。系統(tǒng)所具有的軟硬件結構對用戶的實驗設計具有完全的開放性,其數(shù)據(jù)線、地址線、控制線都是由用戶來實施連接,系統(tǒng)中的運算器結構、控制器結構及微程序指令的格式及定義均可由用戶根據(jù)教學需要來靈活改變或重新設計。1.4 微指令格式分析微指令格

4、式如下表:表1-1 微代碼定義S3 S2 S1 S0 M CN WEA9 A8ABCA5A024 23 22 21 20 191817 1615 14 1312 11 109 8 76 5 4 3 2 1每個字段的具體含義如下:(1)字段2419控制運算器的控制端,通過改變S3CN來決定對數(shù)據(jù)進行何種算術或邏輯運算。本設計中全部為正邏輯運算。算術運算邏輯運算無進位有進位M001CN10(2)字段18為控制對主存W/R的開關A9A8WE說明010對主存進行對操作011對主存進行寫操作(3)字段17、16控制24譯碼器的輸出端,對Y0、Y1、Y2進行選擇。A9A8Yi操作說明00Y0選中SW-BI

5、NPUT UNIT的開關01Y1選中CEMAIN MEN 的控制片選開關10Y2選中LED-BOUTPUT UNIT 的開關11NULL(4)字段157為A、B、C三個開關控制端。A字段151413開關說明001LDDRi控制寄存器Ri的寫入010LDDR1暫存器DR1的控制開關011LDDR2暫存器DR2的控制開關100LDIR指令寄存器IR的控制開關101LOAD非自動輸入的數(shù)據(jù)裝載入PC計數(shù)器的控制開關110LDAR地址寄存器AR的控制開關000NULL空操作B字段121110開關說明001RS-B寄存器R0、R1、R2的輸出開關010RD-B寄存器R0、R1、R2的輸出開關011RI-

6、B寄存器R0、R1、R2的輸出開關101ALU-B運算器ALU的輸出開關110PC-BPC計數(shù)器的輸出開關100299-B本設計中不涉及001NULL空操作C字段987開關說明001P(1)指令譯碼器中的P(1)為低電平有效010P(2)指令譯碼器中的P(2)為低電平有效011P(3)指令譯碼器中的P(3)為低電平有效100P(4)指令譯碼器中的P(4)為低電平有效110LDPC將自動輸入的數(shù)據(jù)加1后輸入到PC計數(shù)器中的控制開關101AR本設計中不涉及001NULL空操作(5)字段61為該條微程序的八位二進制后繼地址,其決定順序執(zhí)行哪條微程序。1.5 指令譯碼電路分析指令譯碼原理工作圖如下:圖

7、1.1 指令譯碼原理圖P(1) P(4)為低電平有效,當選用時該信號為零;I7 I2表示機器指令前六位;SE5 SE1表示能夠強置改變入口地址的后五位。根據(jù)上圖得出指令譯碼器的邏輯表達式如下:擬定機器指令通過上式即可算出每條子程序的入口地址。1.6 寄存器譯碼電路分析寄存器譯碼原理圖如下:圖1.2 寄存器譯碼原理圖寄存器的輸入、輸出不僅決定于輸入、輸出開關,還與機器指令的后四位(即I3I0)有關,由其決定哪個寄存器被選中。1.6.1 寄存器的輸入LDRi為寄存器的輸入開關,且為低電平有效(即LDRi=0),I1、I0對寄存器進行選擇,決定數(shù)據(jù)進入哪個寄存器。LDRiI1I0LDR0000LDR

8、1001LDR20101.6.2 寄存器的輸出RS-B、RD-B、RI-B為寄存器的輸出開關,且為低電平有效。I3I0對寄存器進行選擇,決定從哪個寄存器輸出指令。R0-BRS-BRI-BI3I2I1I0R0-B011XX0010100XXR1-B011XX0110101XXR2-B011XX1010110XX110XXXX1.7 時序分析T1、T2、T3、T4為節(jié)拍控制端,本設計用了T4節(jié)拍控制端,當指令通過譯碼器P(1)時,P(1)對操作碼進行測試,通過節(jié)拍脈沖T4的控制,以便識別所要求的操作。TS1時進行微程序控制器控制,TS2時進行微指令寄存器控制,TS時控制LDIR、LDAR,TS4時

9、對P(1)、P(2)、P(3)、P(4)、AR、LOPC、LDRi、LDDR1、LDDR2進行控制。圖1.3 時序信號圖2 總體設計2.1 數(shù)據(jù)格式和機器指令描述2.1.1 數(shù)據(jù)格式本設計中所有需要處理的數(shù)據(jù)全部采用定點無符號整數(shù)表示,8個bit位,格式如下:76543210數(shù)值數(shù)據(jù)的范圍是028,即0255。2.1.2機器指令描述機器指令描述見下表:表2-1 機器指令描述指令類別指令名稱指令格式助記符尋址方式說明輸入輸出類指令輸入指令76543210OPR2IN R2寄存器尋址INR2輸出指令76543210OPOUT Addr直接尋址AddrLED-B存儲器訪問指令取數(shù)指令76543210

10、OPR076543210AddrLDA addr,R0直接尋址addrR0存數(shù)指令76543210OPR076543210AddrSTAR0,addr直接尋址R0addr寄存器間傳送指令76543210OPR2R0MOV R2,R0寄存器尋址R2 R0無條件轉移76543210OP76543210AddrJMP addr立即尋址Addr PC停機指令76543210OPSTP程序到此處終止算術加法指令76543210OPR0R076543210AddrADD R0,Addr,R0直接尋址R0+Addr R0邏輯與運算指令76543210OPR0R076543210AddrAND Rs,Addr

11、,Rd直接尋址R0*Addr R02.2 機器指令設計2.2.1 控制臺指令PC計數(shù)器在用清零開關CLR清零后,通過控制臺開始進行機器指令的讀寫和執(zhí)行,此處將00Q的后繼地址設為20(即010000)。此時只有P(4)有效,即P(4)=0,P(1)=P(2)=P(3)=1。強置改變有一個特點,當SEi為1時無效,不能改變;只有SEi為0時,才能對該位上的數(shù)進行改變;但只能由0變成1,而不能逆轉。(1) 強置寫指令當進行機器指令寫入時,將SWB,SWA置成01狀態(tài),通過指令譯碼器的邏輯表達式即可算出入口地址。SE5=1SE4=1SE3=1SE2=1SE1=0SE5SE2均無效,只有SE1有效,即

12、可得出100000改變?yōu)?00001,即強置寫的入口地址為41。(2)強制寫指令當進行機器指令寫入時,將SWB,SWA置成00狀態(tài),通過指令譯碼器的邏輯表達式即可算出入口地址。SE5=1SE4=1SE3=1SE2=1SE1=1SE5SE1均無效,不能對 100000進行改變,即強置寫的入口地址為40。(3) 程序執(zhí)行指令當進行機器指令寫入時,將SWB,SWA置成11狀態(tài),通過指令譯碼器的邏輯表達式即可算出入口地址。SE5=1SE4=1SE3=1SE2=0SE1=0SE5SE3均無效,SE2和SE1有效,即可得出100000改變?yōu)?00011,即強置寫的入口地址為43。2.2.2 運行微程序機器

13、指令PC計數(shù)器在用清零開關CLR清零后,通過控制臺進入機器指令執(zhí)行狀態(tài),然后開始運行微程序。此時只有P(1)有效,即P(1)=0,P(2)=P(3)=P(4)=1,且SWB,SWA仍為11。此處將運行P(1)的上一步微指令的后繼地址設為20(即010000),應用指令譯碼器的邏輯表達式對其進行改變得出微程序入口地址。由于決定入口地址的只有機器指令的前四位(即I7I4),則通過擬定其先得出入口地址,并檢驗擬定的前四位是否合理,如下表所示。表2-2 機器指令前四位機器指令名稱指令前四位SE5SE1入口地址備注IN000011111010000即20根據(jù)機器指令前四位得出的入口地址沒有重復,說明機器

14、指令前四位擬定合理。ADD000111110010001即21STA001011101010010即22LDA001111100010011即23AND010011011010100即24MOV010111010010101即25OUT011111000010011即27JMP100010111011000即30STP100110110011001即31根據(jù)寄存器譯碼分析可以得出機器指令的后四位。指令名稱指令后四位說明IN0010“INPUT DEVICE”R0ADD0000R0+AddrR0STAR0AddrLDAAddrR0ANDR0*AddrR0MOV1000R2R0OUT0000指令執(zhí)

15、行時不涉及寄存器的訪問JMPSTP通過以上可得出完整的機器指令,如下表所示。表2-3 機器指令碼助記符機器指令碼說明IN R200000010INR2ADD R0,Addr,R000010000R0+Addr R0xxxxxxxxSTAR0,addr00100000R0addrxxxxxxxxLDA addr,R000110000addrR0xxxxxxxxAND Rs,Addr,Rd01000000R0*Addr R0xxxxxxxxMOV R2,R001011000R2 R0OUT Addr01110000AddrLED-BxxxxxxxxJMP addr10000000Addr PCxx

16、xxxxxxSTP10010000程序到此處終止3 詳細設計3.1 控制臺微程序流程的詳細設計3.1.1公操作00對機器進行總清零CLR 1-0-1。40S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 001 10 0 00 0 01 0 0NULLP(4)選中P(4),通過譯碼形成入口地址。3.1.2 強置寫形成入口地址后,執(zhí)行寫操作。1.41S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 001 11 1 01 1 01 1 0NULLLDARPC-BLDPC44(1)打開PC-B將數(shù)據(jù)送到總線上;(2)打開LDAR將數(shù)據(jù)從總線流到AR中;4

17、6(3)打開LDPC,讓自動加1的數(shù)據(jù)進入PC中。2.S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 000 00 1 00 0 00 0 0NULLSW-BLDDR1NULL (1)打開SW-B將數(shù)據(jù)送到總線上,(2)打開LDDR1將數(shù)據(jù)從總線流到DR1中。3.S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 110 10 0 01 0 10 0 0F=AWECENULLALU-BNULL(1)打開ALU-B將數(shù)據(jù)送到總線上,其間DR1中的數(shù)據(jù)相當于在ALU中做F=A的運算;3.1.3 強置讀形成入口地址后,執(zhí)行寫操作。401.42S3 S2 S

18、1 S0 M CNWEA9 A8ABC0 0 0 0 0 001 11 1 01 1 01 1 0NULLLDARPC-BLDPC45(1)打開PC-B將數(shù)據(jù)送到總線上;(2)打開LDAR將數(shù)據(jù)從總線流到AR中;(3)打開LDPC,讓自動加1的數(shù)據(jù)進入PC中。2.S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 000 10 1 00 0 00 0 0NULLWECELDDR1NULL (1)打開CE、WE置成00狀態(tài),將數(shù)據(jù)從主存送到總線;(2)打開LDDR1將數(shù)據(jù)從總線流到DR1中。3S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 111 00

19、 0 01 0 10 0 0F=ANULLLED-BNULLALU-BNULL(1)打開ALU-B將數(shù)據(jù)送到總線上,其間DR1中的數(shù)據(jù)相當于在ALU中做F=A的運算;(2)打開LED-B,數(shù)據(jù)從總線流到輸出單元,在數(shù)碼管上顯示出來,完成數(shù)據(jù)讀操作。3.1.4 執(zhí)行程序形成入口地址后,開始執(zhí)行程序。43S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 001 10 0 00 0 00 0 0NULL所有都為空操作,只是要通過后繼地址轉入到運行微程 序的流程中。3.1.5 控制臺流程圖綜合以上所有操作,即可得出控制臺的總流程圖。圖3.1 控制臺流程圖3.2 運行微程序流程的詳

20、細設計3.2.1 公操作0201從控制臺強制執(zhí)行流程,開始運行微程序。對運行微程序來說,所有的子流程都要運行取指的公操作,然后才能進行各自的操作。1.20S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 001 11 1 01 1 01 1 0NULLLDARPC-BLDPC(1)打開PC-B,將PC中的數(shù)據(jù)(指令操作碼地址)送到 總線上;(2)打開LDAR將數(shù)據(jù)從總線流到AR中;(3)打開LDPC,讓自動加1的數(shù)據(jù)進入PC中。S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 000 11 0 00 0 00 0 1NULLWECELDIRNULL

21、P(1)2 (1)打開CE、WE置成00狀態(tài),對主存進行讀操作,訪問AR中保存地址的地址單元中指令;(2)打開LDIR,將主存中被訪問的地址單元中指令送到IR;(3)選中P(1),根據(jù)剛保存到IR中的指令,通過指令譯碼器,形成執(zhí)行該指令的微程序入口地址。3.2.2 IN指令操作完成公操作后,根據(jù)形成的入口地址運行IN指令操作。S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 000 00 0 1 0 0 00 0 0NULLSW-BLDRiNULL P(1)SWR2(1)打開SW-B,將“INPUT DEVICE”中輸入的數(shù)據(jù)流 到總線上;(2)打開LDRi,根據(jù)IN指令

22、的后兩位決定讓數(shù)據(jù)從總 線上進入到目的寄存器R2中。3.2.3 MOV指令操作完成公操作后,根據(jù)形成的入口地址運行MOV指令操作。MOVP(1)R2R02501S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 001 10 0 10 1 10 0 0NULLLDRiRI-BNULL(1)打開RS-B,根據(jù)MOV指令的I3、I2打開原始寄 存器R2 輸出門讓其中保存的數(shù)據(jù),流到總線上;(2)打開LDRi,根據(jù)指令的后兩位打開目的寄存器R0 輸入門,讓數(shù)據(jù)從總線上進入到R0中。3.2.4 ADD指令操作完成公操作后,根據(jù)形成的入口微地址運行ADD指令操作。1S3 S2 S1

23、S0 M CNWEA9 A8ABC0 0 0 0 0 001 11 1 01 1 01 1 0NULLLDARPC-BLDPC(1)打開PC-B,將PC中的數(shù)據(jù)(指令地址碼 地址)送到總線上;(2)打開LDAR將數(shù)據(jù)從總線流到AR中;P(1)PCARPC+1RAMBUSBUSARRAMBUSBUSDRR0DR1(DR1)+(DR2)R0ADD210103040506(3)打開LDPC,讓自動加1的數(shù)據(jù)進入PC中。S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 000 11 1 00 0 00 0 0NULLWECELDARNULL 2(1)打開CE、WE置成00狀態(tài),將

24、數(shù)據(jù)(指令 地址碼)從主存送到總線上;(2)打開LDAR將數(shù)據(jù)從總線流到AR中。3S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 000 10 1 10 0 00 0 0NULLWECELDDR2NULL (1)打開CE、WE置成00狀態(tài),根據(jù)AR中保存 的指令地址碼,在主存相同地址單元中,讀出 其中保存的操作數(shù),并放置到總線上;(2)打開LDDR2將數(shù)據(jù)從總線流到DR2中。4S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 001 10 1 00 0 10 0 0NULLLDDR1RS-BNULL(1)打開RS-B,根據(jù)MOV指令的I3、I2決定

25、打開哪個原始寄存 Rs輸出門讓其中保存的操作數(shù),流到總線上;(2)打開LDDR1,讓操作數(shù)經由總線進入到DR1中5S3 S2 S1 S0 M CNWEA9 A8ABC1 0 0 1 0 1 01 10 0 11 0 10 0 0F=A+BNULLLDRiALU-BNULL(1) 將ALU的控制端S3CN置成F=A+B,對兩數(shù)進行運算,打開ALU-B將運算結果送到總線上;(2) 打開LDRi,根據(jù)指令的后兩位打開目的寄存器R0的輸入門,讓數(shù)據(jù)從總線上進入R0中。3.2.5 AND指令操作P(1)PCARPC+1RAMBUSBUSARRAMBUSBUSDR2R0DR1(DR1)*(DR2)RAND

26、241314151601 完成公操作后,根據(jù)形成的入口地址運行AND指令操作。1S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 001 11 1 01 1 01 1 0NULLLDARPC-BLDPC(1)打開PC-B,將PC中的數(shù)據(jù)(指令地址碼 地址)送到總線上;(2)打開LDAR將數(shù)據(jù)從總線流到AR中;(3)打開LDPC,讓自動加1的數(shù)據(jù)進入PC中。2S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 000 11 1 00 0 00 0 0NULLWECELDARNULL 打開CE、WE置成00狀態(tài),將數(shù)據(jù)(指令 地址碼)從主存 送到總線上;

27、3S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 000 10 1 10 0 00 0 0NULLWECELDDR2NULL (1) 打開CE、WE置成00狀態(tài),根據(jù)AR中保存的指令地址碼,在主存相同地址單元中,讀出其中保存的操作數(shù),并放置到總線上;(2) 打開LDDR2將數(shù)據(jù)從總線流到DR2中。S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 001 10 1 00 0 10 0 0NULLLDDR1RS-BNULL4 (1)打開RS-B,根據(jù)MOV指令的I3、I2決定打開哪個原始寄存器Rs輸出門讓其中保存的操作數(shù),流到總線上;(2)打開LDDR

28、1,讓操作數(shù)經由總線進入到DR中。5S3 S2 S1 S0 M CNWEA9 A8ABC1 0 1 1 1 0 01 10 0 11 0 10 0 0F=ABNULLLDRiALU-BNULL(1) 將ALU的控制端S3CN置成F=AB,對兩數(shù)進行運算,打開ALU-B將運算結果送到總線上;(2)打開LDRi,根據(jù)指令的后兩位打開目的寄存器R0的輸入門,讓數(shù)據(jù)從總線上進入Rd中。3.2.6 STA指令操作完成完成公操作后,根據(jù)形成的入口地址運行STA指令操作。S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 001 11 1 01 1 01 1 0NULLLDARPC-BL

29、DPCP(1)PCARPC+1RAMBUSBUSARR0BUSBUSRAMSTA220710011.(1)打開PC-B,將PC中的數(shù)據(jù)(指令地址碼地 址)送到總線上;(2)打開LDAR將數(shù)據(jù)從總線流到AR中;(3)打開LDPC,讓自動加1的數(shù)據(jù)進入PC中。2S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 000 11 1 00 0 00 0 0NULLWECELDARNULL (1)打開CE、WE置成00狀態(tài),將數(shù)據(jù)(指令地 址碼)從主存送到總線上;(2)打開LDAR將數(shù)據(jù)從總線流到AR中。S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 0001

30、0 0 00 0 10 0 0NULLWECENULLRS-BNULL3(1) 打開RS-B,根據(jù)指令的I3、I2決定打開哪個原始寄存器Rs 輸出門讓其中保存的數(shù)據(jù),流到總線上;(2) 打開CE、WE置成01狀態(tài),根據(jù)AR中保存的指令地址碼,讓總線上的數(shù)據(jù)流到主存相應地址單元中,完成數(shù)據(jù)寫操作。3.2.7 LDA指令操作完成公操作后,根據(jù)形成的入口地址運行LDA指令操作。S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 001 11 1 01 1 01 1 0NULLLDARPC-BLDPCP(1)PCARPC+1RAMBUSBUSARRAMBUSBUSR0LDA2311

31、12011(1)打開PC-B,將PC中的數(shù)據(jù)(指令地址碼地址) 送到總線上;(2)打開LDAR將數(shù)據(jù)從總線流到AR中;(3)打開LDPC,讓自動加1的數(shù)據(jù)進入PC中。2S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 000 11 1 00 0 00 0 0NULLWECELDARNULL (1)打開CE、WE置成00狀態(tài),將數(shù)據(jù)(指令地址 碼)從主存送到總線上;(2)打開LDAR將數(shù)據(jù)從總線流到AR中。3S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 000 10 0 1 0 0 00 0 0NULLWECELDRiNULL(1) 將該地址下的數(shù)

32、據(jù)存入R0中。3.2.8 OUT指令操作完成公操作后,根據(jù)形成的入口地址運行OUT指令操作。S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 011 00 0 00 0 10 0 0NULLNULLLED-BNULLRS-BNULLP(1)R0LEDOUT2701打開LED-B,結果從總線流到輸出單元,在數(shù)碼管 上顯示出來,完成數(shù)據(jù)讀操作。3.2.9 JMP指令操作完成公操作后,根據(jù)形成的入口地址運行JMP指令操作。130P(1)PCARPC+1RAMBUSBUSPCJMP0133S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 001 11 1 0

33、1 1 01 1 0NULLLDARPC-BLDPC(1)打開PC-B,將PC中的數(shù)據(jù)(指令地址碼地 址)送到總線上;(2)打開LDAR將數(shù)據(jù)從總線流到AR中;(3)打開LDPC,讓自動加1的數(shù)據(jù)進入PC中。2S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 000 110 1 0 0 01 1 0NULLWECELOADNULL LDPC(1)打開CE、WE置成00狀態(tài),將數(shù)據(jù)(指令 地址碼)從主存送到總線上;(2) 打開LOAD、LDPC,將數(shù)據(jù)經由總線流到PC中,由于不是自動輸入,因而不會產生自動加1的效果。3.2.10 STP指令操作完成公操作后,根據(jù)形成的入口地

34、址運行STP指令操作。S3 S2 S1 S0 M CNWEA9 A8ABC0 0 0 0 0 001 10 0 00 0 00 0 0NULLP(1)31所有字段為空操作,只是其后繼地址設為本身,進行死循環(huán)從而達到停機目的。3.3 運行微程序流程圖3.4 微程序二進制代碼表表4-1微程序二進制代碼表微地址S3 S2 S1 S0 M CN WE A9 A8 A B CuA5-uA0 000 0 0 0 0 0 0 1 10 0 00 0 01 0 01 0 0 0 0 0 010 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 0 0 1 0 020 0 0 0 0 0 0

35、0 11 0 00 0 00 0 10 1 0 0 0 0 03 0 0 0 0 0 0 0 0 11 1 00 0 0 0 0 00 0 0 1 0 0 040 0 0 0 0 0 0 0 10 1 10 0 00 0 0 0 0 0 1 0 1 050 0 0 0 0 0 0 1 10 1 00 0 10 0 0 0 0 0 1 1 0 061 0 0 1 0 1 0 1 10 0 11 0 10 0 0 0 0 0 0 0 1 070 0 0 0 0 0 0 0 11 1 00 0 00 0 0 0 0 1 0 0 0 100 0 0 0 0 0 0 0 10 0 00 0 10 0 0

36、 0 0 0 0 0 1 110 0 0 0 0 0 0 0 11 1 00 0 00 0 0 0 0 1 0 1 0 120 0 0 0 0 0 0 0 10 0 10 0 00 0 0 0 0 0 0 0 1 130 0 0 0 0 0 0 0 11 1 00 0 00 0 0 0 0 1 1 0 0 140 0 0 0 0 0 0 0 10 1 10 0 0 0 0 0 0 0 1 1 0 1 150 0 0 0 0 0 0 1 10 1 00 0 10 0 0 0 0 1 1 1 0 161 0 1 1 1 0 0 1 10 0 11 0 10 0 0 0 0 0 0 0 1 200

37、0 0 0 0 0 0 0 00 0 10 0 00 0 0 0 0 0 0 0 1 210 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 0 0 1 1 220 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 0 1 1 1 230 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 1 0 0 1 240 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 1 0 1 1 250 0 0 0 0 0 0 1 1 0 0 10 1 10 0 00 0 0 0 0 1 270 0 0 0 0 0 1 1 00 0 00

38、0 10 0 0 0 0 0 0 0 1 300 0 0 0 0 0 0 1 11 1 01 1 01 1 00 1 1 0 1 1 310 0 0 0 0 0 0 1 10 0 00 0 00 0 0 0 1 1 0 0 1 330 0 0 0 0 0 0 0 11 0 10 0 0 1 1 00 0 0 0 0 1 400 0 0 0 0 0 0 1 11 1 01 1 01 1 0 1 0 0 0 1 0 410 0 0 0 0 0 0 1 11 1 01 1 01 1 01 0 0 1 0 0 420 0 0 0 0 0 0 0 10 1 00 0 00 0 0 1 0 0 1 0 1 430 0 0 0 0 0 0 1 10 0 00 0 00 0 0 0 0 0 0 0 1 440 0 0 0 0 0 0 0 00 1 0 0 0 00 0 0 1 0 0 1 1 0

溫馨提示

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

評論

0/150

提交評論