西北農(nóng)林科技大學(xué)TEC-XP實(shí)驗(yàn)指導(dǎo)書(shū)_第1頁(yè)
西北農(nóng)林科技大學(xué)TEC-XP實(shí)驗(yàn)指導(dǎo)書(shū)_第2頁(yè)
西北農(nóng)林科技大學(xué)TEC-XP實(shí)驗(yàn)指導(dǎo)書(shū)_第3頁(yè)
西北農(nóng)林科技大學(xué)TEC-XP實(shí)驗(yàn)指導(dǎo)書(shū)_第4頁(yè)
西北農(nóng)林科技大學(xué)TEC-XP實(shí)驗(yàn)指導(dǎo)書(shū)_第5頁(yè)
已閱讀5頁(yè),還剩154頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

計(jì)算機(jī)組成原理是計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)、信管、軟件工程的一門(mén)核課程之一,它在基礎(chǔ)課和專(zhuān)業(yè)課之間起著重要的銜接作用,通過(guò)本課程的掌握計(jì)算機(jī)中核心部件“運(yùn)算器、控制器、存儲(chǔ)器、外設(shè)”的硬件組成、功能、控制方法及工作原理。本課程主要特點(diǎn):知識(shí)面廣、內(nèi)容多、更新快,又加之教材不針對(duì)具體機(jī)型結(jié)構(gòu),學(xué)生學(xué)起來(lái)感覺(jué)空洞抽象、難以理整要素,通過(guò)這臺(tái)實(shí)驗(yàn)機(jī)的學(xué)習(xí),對(duì)掌握計(jì)算機(jī)的基本構(gòu)造、實(shí)現(xiàn)方法、 第1章TEC-XP實(shí)驗(yàn)系統(tǒng)簡(jiǎn)介T(mén)EC-XP由清華大學(xué)科教儀器廠和清華大學(xué)計(jì)算機(jī)系聯(lián)合研制。該實(shí)驗(yàn)系統(tǒng)重點(diǎn)用于計(jì)算機(jī)組成原理和計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)等課程的硬件教學(xué)實(shí)驗(yàn),還支持監(jiān)控程序、匯編語(yǔ)言程序設(shè)計(jì)、BASIC高級(jí)語(yǔ)言程序設(shè)計(jì)等軟件方面的教學(xué)實(shí)驗(yàn)。3.指令系統(tǒng)支持多種基本尋址方式。其中一部分指令已實(shí)現(xiàn),用于設(shè)計(jì)監(jiān)控程序和用戶(hù)的常規(guī)匯編程序,尚保留多條指令供實(shí)驗(yàn)者自己實(shí)現(xiàn)。位的字)的RAM存儲(chǔ)區(qū)域組成。還可以進(jìn)一步完成存儲(chǔ)器擴(kuò)展的教學(xué)實(shí)驗(yàn)。5.原理上講,主時(shí)鐘脈沖的頻率可在幾百KHz~近2MHz之間選擇。邏輯運(yùn)算功能,內(nèi)部包括16個(gè)雙端口讀出、單端口寫(xiě)入的通用寄存器,和一個(gè)能自行移位的乘商寄存器。設(shè)置C(進(jìn)位)、Z(結(jié)果為0)、V(溢出)和S(符號(hào)位)四個(gè)狀態(tài)標(biāo)志位。7.控制器采用微程序和硬布線兩種控制方案實(shí)現(xiàn),可由實(shí)驗(yàn)者自由選擇。實(shí)驗(yàn)人員可方便地修改已EL可以實(shí)現(xiàn)三級(jí)中斷和中斷嵌套。過(guò)數(shù)據(jù)開(kāi)關(guān)手動(dòng)置入的指令。11.主板上設(shè)置數(shù)據(jù)開(kāi)關(guān)和微型開(kāi)關(guān)、按鍵和指示燈,支持最低層的手工操作方式的輸入/輸出,通過(guò)指示燈來(lái)顯示重要的數(shù)據(jù)或控制信號(hào)的狀態(tài),可以完成機(jī)器調(diào)試和故障診斷。板上還有支持教學(xué)實(shí)驗(yàn)用的一定數(shù)量的跳線夾。所有器件都用插座插接在印制板上,便于更換器件。VA.5~2.5A之間。電源模塊安裝在水平電路板右上角位置,交流220V通過(guò)電源接線插到機(jī)箱后側(cè)板,經(jīng)保險(xiǎn)絲、開(kāi)關(guān)連接到電路板上,開(kāi)關(guān)安放在機(jī)箱右側(cè)靠后位置,方便操作且比較安全。13.兩路的串行接口的接插座安放在機(jī)箱后側(cè)板以方便接線插拔和機(jī)箱蓋的打開(kāi)關(guān)閉軟件:解釋BASIC語(yǔ)言匯軟件:解釋BASIC語(yǔ)言匯編語(yǔ)言支持監(jiān)控程序(指令)級(jí)模擬教學(xué)機(jī)模擬:運(yùn)算器、控制器模擬(微程序級(jí)或硬連線控制器級(jí)模擬)主存儲(chǔ)器模擬,總線、接口模擬輸入設(shè)備/輸出設(shè)備模擬軟軟件:解釋BASIC語(yǔ)言匯編語(yǔ)言支持監(jiān)控程序硬件:運(yùn)算器,控制器(多種實(shí)現(xiàn):微程序或硬連線控制器,中小主存儲(chǔ)器,總線,接口輸入設(shè)備,輸出設(shè)備硬件與電路:邏輯器件和設(shè)備圖1.2軟件實(shí)現(xiàn)的模擬計(jì)算機(jī)系統(tǒng)從圖1.1可以看到,該計(jì)算機(jī)硬件系統(tǒng)組成中,功能部件是完整齊備的,運(yùn)算器、控制器、存PC,同時(shí)實(shí)現(xiàn)了微程序和硬連線兩種方案控制器。從CPU的具體設(shè)計(jì)和實(shí)現(xiàn)技術(shù)來(lái)說(shuō),既支持用中小集成度從計(jì)算機(jī)組成原理課程教學(xué)實(shí)驗(yàn)的角度看,該計(jì)算機(jī)軟件系統(tǒng)組成也是完整的,支持簡(jiǎn)單的高級(jí)語(yǔ)言BASIC(包括浮點(diǎn)運(yùn)算指令和基本函數(shù)運(yùn)算功能),匯編語(yǔ)言(支持基本偽指令功能)和二進(jìn)碼是寶貴的教學(xué)參考資料。從圖1.2可以看到,軟件實(shí)現(xiàn)的計(jì)算機(jī)指令級(jí)模擬系統(tǒng),可以使實(shí)驗(yàn)人員脫離實(shí)際的教學(xué)計(jì)算調(diào)試教學(xué)機(jī)新的軟件或硬件功能提供重要的輔助作用。控制器(微程序或硬連線方案)輔助設(shè)計(jì)軟件,可以讓同學(xué)在PC機(jī)上使用該軟件直接設(shè)計(jì)該計(jì)制器需要提供的全部控制信號(hào)等全部過(guò)程,最后會(huì)自動(dòng)生成能裝入教學(xué)計(jì)算機(jī)硬件系統(tǒng)中實(shí)際應(yīng)用的最終結(jié)果文件。接下來(lái)還可以選用微程序級(jí)的模擬軟件系統(tǒng),或者硬連線控制器級(jí)的模擬軟件系統(tǒng),對(duì)經(jīng)過(guò)輔助設(shè)計(jì)軟件得到的設(shè)計(jì)結(jié)果進(jìn)行模擬運(yùn)行,計(jì)算機(jī)屏幕上會(huì)詳細(xì)顯示每一步的運(yùn)行結(jié)果,做等方面的理解深度也有益處。2路串行接口據(jù)數(shù)據(jù)總線FPGA/GAR地址寄存器雙線選通門(mén)控制總線/MIOREQWE/GAR/GIRY運(yùn)算器部件D內(nèi)部總線SWTOIB/YTOIB/IRLTOIB/FTOIB控制器部件CZVSA口B口I~I0譯從圖中可以看到TEC-XP教學(xué)計(jì)算機(jī)的總體組成。在圖的左部所表示的是選用中小規(guī)模器件實(shí)現(xiàn)的CPU系統(tǒng),由獨(dú)立的運(yùn)算器、控制器部件組成。圖的中間部分所表示的是內(nèi)存儲(chǔ)器、串行接兩個(gè)CPU系統(tǒng)都可以通過(guò)數(shù)據(jù)總線、地址總線和控制總線連接內(nèi)存儲(chǔ)器、串行接口線路,從而構(gòu)成一臺(tái)完整的計(jì)算機(jī)硬件系統(tǒng),安裝上必要的軟件就可以正常運(yùn)行,作為計(jì)算機(jī)組成原理課程內(nèi)容實(shí)例和教學(xué)實(shí)驗(yàn)設(shè)備具有很好的典型性。兩個(gè)CPU系統(tǒng)需要通過(guò)分時(shí)或者獨(dú)占的方式使用同一套存儲(chǔ)器部件和串行接口線路。一點(diǎn)是,堆棧指針SP和控制器中的程序計(jì)數(shù)器PC,都是用這里的幾個(gè)通用寄存器來(lái)實(shí)現(xiàn)的,以節(jié)省器件與簡(jiǎn)控制器分別用微程序方式與硬布線方式兩種方案實(shí)現(xiàn),實(shí)驗(yàn)者可以方便地選擇使用其中任何一種。這能方便地比較兩種控制器各自的優(yōu)缺點(diǎn),和設(shè)計(jì)過(guò)程的相同的、不同的步驟與方法。在選用器件時(shí),微程序方案中選用了美國(guó)AMD公司的微程序定序器Am2910芯片,保證微程序設(shè)計(jì)的規(guī)范與實(shí)用性;控存體選用唯讀存儲(chǔ)器(ROM)芯片,通過(guò)對(duì)該ROM的編程寫(xiě)入方式支持動(dòng)態(tài)微程序設(shè)計(jì)。硬布線方案中,節(jié)拍邏輯與時(shí)序控制信號(hào)形成部件(組合邏輯線路)選用了GAL20V8現(xiàn)場(chǎng)可編程器件和MacroArrayCMOSHighdensity(簡(jiǎn)寫(xiě)為MACH)器件,這對(duì)簡(jiǎn)化控制器的邏輯設(shè)計(jì)與實(shí)現(xiàn)至,也有利于進(jìn)一步掌握數(shù)字系統(tǒng)設(shè)計(jì)自動(dòng)化和邏輯模擬的新知識(shí)。主存儲(chǔ)器選用靜態(tài)存儲(chǔ)器芯片,配置了兩路各自由8K字節(jié)容量的ROM(放監(jiān)控程序)和2K字節(jié)RAM的器件插系列)或電擦除(28系列)的存儲(chǔ)器芯片實(shí)現(xiàn)。地址總線采用16位寬度,以便訪問(wèn)較大的主存空輸入/輸出接口及可接入的輸入/輸出設(shè)備,已配備了一路串行接口,可直接連接計(jì)算機(jī)終端,PCPC操作教學(xué)實(shí)驗(yàn)計(jì)算機(jī)方便直觀,為教學(xué)實(shí)驗(yàn)提供了非常先進(jìn)的實(shí)驗(yàn)手段。還提供了由學(xué)生自己通過(guò)擴(kuò)展實(shí)驗(yàn)實(shí)現(xiàn)另外一路串行接口的全部支持。作為最底層的輸入/輸出手段,開(kāi)關(guān)撥數(shù)輸入,指示燈顯示輸出的操作方式還是應(yīng)該有的。這是系統(tǒng)出現(xiàn)嚴(yán)重故障后(如器件失效等),完成故障定位與排除的最后一道防線,對(duì)提高學(xué)生的實(shí)驗(yàn)技連接插孔。同時(shí)還提供了完成中斷教學(xué)實(shí)驗(yàn)所需要的全部支持選用FPGA門(mén)陣列器件實(shí)現(xiàn)的單個(gè)芯片的CPU系統(tǒng)內(nèi)部組成如下:FLAGOUFLAGOUTALU_YARtimingOutDC_2MIOREQWEIRoutIRDC2RESETCLKFLAG(2)FLAGFLAG(3)二選一REQMIOWEWEMIOALUFLAGIRALU三選一IBOBQ寄存器ControlsignalsgeneratorDC1三選一RAM15Memory/SSTSSHSCISSTSSHSCIIBaddAaddIBaddCLKRESETCLKDIOPort標(biāo)志位寄存器timingtiming最低為進(jìn)位Aadd三選一三選一A鎖存B鎖存D數(shù)據(jù)RAM0RAMOBQ15ARQ0CYZU單元,數(shù)據(jù)總線的內(nèi)容被送到存儲(chǔ)器芯片和串行接口芯片的數(shù)據(jù)線引腳以提供讀寫(xiě)數(shù)據(jù)。內(nèi)存儲(chǔ)器和IO接口芯片的讀寫(xiě)命令也由該CPU提供。此時(shí)需要確保原來(lái)用中小規(guī)模器件構(gòu)建的CPU的地址總線和數(shù)據(jù)系統(tǒng)綜述2.1.1指令分類(lèi)1.從指令長(zhǎng)度區(qū)分,有單字指令和雙字指令。2.從操作數(shù)的個(gè)數(shù)區(qū)分,有三操作數(shù)指令、雙操作數(shù)指令、單操作數(shù)指令和無(wú)操作數(shù)指令。3.從使用的尋址方式區(qū)分,有寄存器尋址、寄存器間址、立即數(shù)尋址、直接地址、相對(duì)尋址等多4.從指令功能區(qū)分,給出了算術(shù)和邏輯運(yùn)算類(lèi)指令、讀寫(xiě)內(nèi)存類(lèi)指令、輸入/輸出類(lèi)指令、轉(zhuǎn)移指令、子程序調(diào)用和返回類(lèi)指令,還有傳送、移位、置進(jìn)位標(biāo)志和清進(jìn)位標(biāo)志等指令。5.按照指令的功能和它們的執(zhí)行步驟,可以把該機(jī)的指令劃分為如下4組。在后面幾節(jié)中給出的指令流程框圖、指令流程表都是以此為標(biāo)準(zhǔn)進(jìn)行指令劃分的。JRC、JRNC、JRZ、JRNZ擴(kuò)展指令A(yù)DC、SBB、RCL、RCR、ASR、NOT、CLC、STC、EI、DI、JRS、JRNS、JMPR1)A組指令完成的是通用寄存器之間的數(shù)據(jù)運(yùn)算或傳送,在取指之后可一步完成。器之間的數(shù)據(jù)傳送;而其它指令在第一步置地址寄存器ARH、ARL,第二步讀內(nèi)存(即取地址操作數(shù))、計(jì)算內(nèi)存地址、置地址寄存器ARH、ARL,第三步讀、寫(xiě)內(nèi)存。4)D組指令完成的是兩次讀、寫(xiě)內(nèi)存操作,在取指之后可四步完成。2.1.2指令格式TEC-XP教學(xué)機(jī)實(shí)現(xiàn)了29條基本指令,用于編寫(xiě)教學(xué)機(jī)的監(jiān)控程序和支持簡(jiǎn)單的匯編語(yǔ)言程序雙字指令的第二個(gè)指令字是操作數(shù)、地址字段,分別有3種用法,如下圖所示。DRDRSR/直接內(nèi)存地址/變址偏移量操作碼立即數(shù)1)單字、無(wú)操作數(shù)指令:操作操作碼00PSHF;POPF;TLCI2)單字、單操作數(shù)指令:狀態(tài)標(biāo)志(C、Z、V、S、P1、P0)入棧彈出棧頂數(shù)據(jù)送狀態(tài)標(biāo)志寄存器子程序返回DRDR00000000SROFFSET操作碼DECINCSHLSHRJRCJRNCJRZJRNZNOUTPUSHPOPDRDRDRDROFFSET;OFFSET;OFFSET;OFFSET;DRDR←DR-1DR←DR+1LDRRDRASRDRDR算術(shù)右移,最高位保持不變,最低位移入CNOTDRDR求反,即DR←/DRMPRCALROFFSET;RNSOFFSET;3)單字、雙操作數(shù)指令:DRDRSR操作碼ADDSUBANDCMPXORTESTORMVRRLDRRSTRRADCDR,SR;DR,SR;DR,SR;DR,SR;DR,SR;DR,SR;DR,SR;DR,SR;DR,SR;DR,SR;DR←DR+SRDR←DR-SRDR←DRandSRDR-SRDR←DRDRandDR←DRDR←SRxorSRorSRDR←DR+SR+CDR←DR-SR-C4)雙字、單操作數(shù)指令:操作碼00000000ADRCALA5)雙字、雙操作數(shù)指令:DR0000操作碼0000SRDATAMVRDDR,DATA;DR←DATA操作碼RADRLDRXRXDR,OFFSET[SR];DR,OFFSET[SR];本指令指令格式匯編語(yǔ)句00000000DRSR00000001DRSR00000010DRSR00000011DRSR00000100DRSR00000101DRSR00000110DRSR00000111DRSR00001000DR000000001001DR000000001010DR000000001011DR000001000001OFFSET01000100OFFSET01000101OFFSET01000110OFFSET01000111OFFSET1000000000000000000001DRSR0000011DRSR100001010000SR10000111DR000010001000DR0000ADDSUBANDCMPXORTESTORMVRRDECINCSHLSHRJRJRCJRNCJRZJRNZJMPALDRRINSTRRPSHFPUSHOUTPOPMVRDPOPFDR,SRDR,SRDR,SRDR,SRDR,SRDR,SRDR,SRDR,SRRRRROFFSETOFFSETOFFSETOFFSETOFFSETADRRDR,DATA操作數(shù)222數(shù)222222221111111111212011120CZVS***************************A令令功能說(shuō)明DR←DR+SRDR←DR-SRDR←DRandSRDR-SRDR←DRxorSRDRandSRDR←DRorSRDR←SRDR←DR-1DR←DR+1DR,C←DR/2DR,C←DR*2無(wú)條件跳轉(zhuǎn)DR←出棧DR←DATAFLAG←出棧子子程序返回調(diào)用首地址在ADR的子序ETCALAADR令0其余寄存器用作通用寄存器,即多數(shù)雙操作數(shù)指令和單操作數(shù)指令中的DR、SR;展指令功能功能說(shuō)明DR←DR+SR+CDR←DR-SR-CDR←/DRCC開(kāi)中斷關(guān)中斷匯編語(yǔ)句ADCDR,SRSBBDR,SRRCLDRRCRDRASRDRNOTDRJMPRSRJRSOFFSETJRNSOFFSETCICALRSRSTRA[ADR],SR指令格式00100000DRSR00100001DRSR00101010DR000000101011DR000000101100DR000000101101DR0000011000000000SR01100100OFFSET01100101OFFSET0110110000000000011011010000000001101110000000000110111100000000111000000000SR11100100DR0000100101DRSR100110DRSR111001110000SR1110111100000000CZVS*********類(lèi)型A組指令C組指令D組指令操作數(shù)2211111110000122210第3章TEC-XP教學(xué)計(jì)算機(jī)硬件系統(tǒng)TEC-XP是在原有TEC系列教學(xué)計(jì)算機(jī)系統(tǒng)的基礎(chǔ)上,重新設(shè)計(jì)的新一代產(chǎn)品,進(jìn)一步增加了下面對(duì)圖中給出的教學(xué)計(jì)算機(jī)硬件系統(tǒng)的具體線路進(jìn)行必要說(shuō)明。和/TxC引腳,用于驅(qū)動(dòng)串行接口正常運(yùn)行。還要送QC脈沖(頻率為307.2KHz)到啟??刂齐娐?,用以產(chǎn)生相位不同的兩路輸出脈沖,作為教學(xué)計(jì)算機(jī)的系統(tǒng)時(shí)鐘,驅(qū)動(dòng)計(jì)算機(jī)整機(jī)正常運(yùn)行。啟?;蛘咄V?停止送出脈沖)的操作功能。在這個(gè)線路的設(shè)計(jì)中,一定要確保任何一次手工啟停的操作都不會(huì)影響啟停線路輸出脈沖的完整性,它的實(shí)現(xiàn)原理和設(shè)計(jì)結(jié)果在教材中有詳細(xì)說(shuō)明,此處從A運(yùn)算器的輸出直接連接到地址寄存器AR的輸入引腳,用于提供地址總線的信息來(lái)源。運(yùn)算器的輸出還經(jīng)過(guò)兩個(gè)8位的244器件的控制(使用DCI譯碼器的/YTOIB信號(hào))被送到內(nèi)部總線IB,用于把運(yùn)算器中的數(shù)據(jù)或者運(yùn)算結(jié)果寫(xiě)入內(nèi)存儲(chǔ)器或者輸入輸出接口芯片。接收送給它的信息,需要使用控制器提供的SST2~SST0三位信號(hào)。運(yùn)算器還需要按照指令執(zhí)行的要求,正確地得到最低位的進(jìn)位輸入信號(hào),最低位和最高位的移三位信號(hào)的控制下,產(chǎn)生運(yùn)算器最低位的進(jìn)位輸入信號(hào),最低位和最高位的移位輸入信號(hào)。教學(xué)計(jì)算機(jī)的總線系統(tǒng)由數(shù)據(jù)總線、地址總線、控制總線和內(nèi)部總線共四部分組成。在圖中使表示。(1)內(nèi)部總線,在真正的商用計(jì)算機(jī)系統(tǒng)中用戶(hù)是見(jiàn)不到的,在我們這里,它是數(shù)據(jù)總線在號(hào)為高電平時(shí),245使內(nèi)部和外部總線處于斷開(kāi)狀態(tài),相互不能傳送數(shù)據(jù),僅在該控制信號(hào)為低電狀態(tài),可以傳送數(shù)據(jù)。此時(shí)數(shù)據(jù)的傳送方向受245的另外一個(gè)控制從外部總線傳送到內(nèi)部總線。在內(nèi)部總線和外部總線之間設(shè)置245器件,有利于防止在完成內(nèi)存儲(chǔ)器實(shí)驗(yàn)或者接口實(shí)驗(yàn)時(shí)損壞CPU的線路。在譯碼器DC1的譯碼信號(hào)的控制下,內(nèi)部總線可以從運(yùn)址、指令寄存器的低8位的輸出(此時(shí)高8位可能是符號(hào)位擴(kuò)展信息)、16位的手撥開(kāi)關(guān)輸入數(shù)據(jù)五路WE線引腳,用于通過(guò)內(nèi)部總線和CPU系統(tǒng)進(jìn)行通訊。做輸入輸出操作的教學(xué)實(shí)驗(yàn)或者內(nèi)存儲(chǔ)器的教學(xué)因此有效的IO端口地控制總線,用于給出總線周期的類(lèi)型和一次讀、寫(xiě)操作是否結(jié)束的信號(hào)。在教學(xué)計(jì)算機(jī)中,由用于保存用戶(hù)讀寫(xiě)的數(shù)據(jù)和作為監(jiān)控程序的系統(tǒng)工作區(qū),包括系統(tǒng)堆棧和用戶(hù)堆棧數(shù)據(jù)。這個(gè)存儲(chǔ)HCS。這兩個(gè)芯片的讀寫(xiě)控制信LK地址總線接串口設(shè)備MAX202/RD/WRC/地址總線接串口設(shè)備MAX202AR15~AR13AR6~AR4TxDAR/CEARCLKCLKTxC/MMREQ控制總線/MIOREQ/WE/MMREQ控制總線/MIOREQ/WED/GAR內(nèi)存芯片片選內(nèi)存芯片片選VccIO芯片片選/CE0,/CE1,...RAM0,RAM15,Q0IB7~IB4Q15Q0CinR/RYYYYFLAGFLAGY/MMREQ,/IOREQ/MRD,/WE,/RD,/WRDDDDY/CS?RAM0/YTOIBDD/WEDD/WE/FTOIBDB15~8數(shù)據(jù)總線DB/MIO245245/MAP/GIR//GIRMAPROMI8~I0數(shù)據(jù)244244PLCLKPLCLKT3~T0/SWTOIBT3~T0/SWTOIB開(kāi)關(guān)開(kāi)關(guān)TimingMTiming數(shù)據(jù)3數(shù)據(jù)SCCCI數(shù)據(jù)CLK2IR15~IR8數(shù)據(jù)RESETC_M#DCCKdQbQaCD161CKSCCMIOREQWECLK/GIRMIOREQWECLK/GIR/GAR…當(dāng)前微地址顯示CZSINT#VccGND/IRLTOIB/FTOIBP電平址總碼將產(chǎn)生存儲(chǔ)器請(qǐng)求(有存儲(chǔ)器讀寫(xiě)要求)信號(hào)/MMREQ和IO請(qǐng)求(有IO讀寫(xiě)要求)信號(hào)/IOREQ,g芯片)等組成。/OEF4Cn+4OVRFRA鎖存器ALUS三選一B鎖存器IIIIIIA地址4B地址4RAM3A16個(gè)B通用寄存器三選一RAM0Q器三選一IIIRSRSA號(hào))、B地址(寄存器編號(hào))指定被讀寫(xiě)的寄存器。兩路讀出數(shù)據(jù)分別用A、B標(biāo)記,經(jīng)鎖存器線路個(gè)數(shù)據(jù)位,通過(guò)它們,實(shí)現(xiàn)芯片內(nèi)部上述三個(gè)組成成分之間的聯(lián)系,也實(shí)現(xiàn)該芯片和其外界信息的據(jù))送出芯片,標(biāo)記為Y;果右移一位的值中選擇其一,作為通用寄存器的寫(xiě)入信息,實(shí)現(xiàn)的是通用接存器接收及移位功能。M;體規(guī)定如下表所示。LLLLLHLHHLHLHHHHLHLHLHLHR+SS-RR-SR∨SR∧SR∧SR⊕SR⊕SLLLLLHLHHLHLHHHH數(shù)據(jù)來(lái)源I0RSLAQHABL0QH0BL0AHDAHDQHD0結(jié)結(jié)果處理通用寄存器組FQQ→QFFAFFFFFLLLLLHLHLLHHHLLHLHHHLHHH關(guān)于該芯片的具體線路尚需說(shuō)明如下幾點(diǎn):EY③RAM3、RAM0、Q3、Q0均為雙向(入出)三態(tài)邏輯,一定要與外部電路正確連接。GP信號(hào)。其有關(guān)規(guī)定如下圖所示。注意兩個(gè)跳變沿和低電平所實(shí)現(xiàn)的不同控制功能。//G/PY3~Y0Am2901RAM0/OEA~A0B3~B0I8~I0OVRRAM3號(hào)(Cn),4個(gè)標(biāo)志位輸出信號(hào)(F3,OVR,F=0000,Cn+4),通用寄存器最高、最低位移位入出信號(hào) QGP屬于控制類(lèi)型的信號(hào)包括:主脈沖信號(hào)(CP),輸出使能信號(hào)(/OE),兩個(gè)4位的寄存器選擇信IY15-Y0。四個(gè)芯片的F=0000管腳(集電極開(kāi)路輸出)連接在一起,并經(jīng)一個(gè)電阻接到+5V電源以得到CP故應(yīng)將四個(gè)芯片的這些信號(hào)的各對(duì)應(yīng)管腳連接在一起。Cn+y/G/PCn+x/G/PCinCy低位RAM15/OEA地址B地址D15~D12RAM0I8~I0OVRR3.需要在Am2901芯片外部的處理的邏輯功能有一些功能(數(shù)據(jù))取決于如何使用Am2901,與指令和指令的執(zhí)行步驟有關(guān),必須用另外的線路來(lái)處理的,包括:選擇碼000001010例ADD,DECBINCADCSBB01C101111Q15說(shuō)明X用于邏輯移位指令RAM0原碼除(左移)乘(右移)RAM0用于算術(shù)右移指令A(yù)M0CFXX/F15X0CX輸入輸出管腳并寫(xiě)出對(duì)應(yīng)的邏輯表達(dá)式,經(jīng)過(guò)編譯以處理之后,把融絲圖文件的內(nèi)容通過(guò)編程器設(shè)位。2C0MI7最低位進(jìn)位信號(hào)和左/右移位信號(hào)的形成邏輯BIT8SCI1MI5MI4ZrH8CyOVRGNDZrL8CZEROQ7RAM15Q15RAM0Q0RAM7CINF3VCCQ0=SSH*SCI1*/SCI0*/F3*/BIT8ZERO=/BIT8*ZrH8*ZrL8+BIT8*ZrL8Q7=SSH*SCI1*/SCI0*RAM7*BIT8RAM7=SSH*SCI1*/SCI0*C*BIT8RAM15=SSH*/SCI1*SCI0*C*/BIT8Q15=SSH*SCI1*/SCI0*RAM0*/BIT8CIRAMBITRAM0=SSH*/SCI1*SCI0*CSST編碼恢復(fù)標(biāo)志位原來(lái)的現(xiàn)場(chǎng)值置"0"C,另三個(gè)標(biāo)志位不變置"1"C,另三個(gè)標(biāo)志位不變右移操作,另三個(gè)標(biāo)志位不變左移操作,另三個(gè)標(biāo)志位不變聯(lián)合右移,另三個(gè)標(biāo)志位不變01AMQ0狀態(tài)位輸入SSFZZFVVCCCYVVVVVZZZZZ明SSSSS狀態(tài)寄存器的實(shí)現(xiàn)邏輯FLAG123456789101112CLKSST2SST1SST0IB7IB6IB5IB4CYZrOVGNDOEF3MI5C0CZVSQ0RAM0RAM3VCCC0:=CY*/MI5值運(yùn)算符左邊符號(hào)表示的觸發(fā)器線路中。m來(lái)自?xún)?nèi)部總線SZVS信號(hào)0CYRAM0FLAGGAL右輸入GALY4片Am2901OVR運(yùn)算器RAM0/OEAB地/OEAB地地址址進(jìn)位GAL左輸入GAL01C信號(hào)0C指令寄存器IR(16位長(zhǎng)度),節(jié)拍發(fā)生器(4位觸發(fā)器的節(jié)拍狀態(tài))和時(shí)序控制信號(hào)形成部件(1CLKCLK......(由與_或兩級(jí)組合邏輯門(mén)電路組成)CZCLK程序計(jì)數(shù)器PC用于保存下一條將要執(zhí)行的指令在內(nèi)存中的單元地址,有增量功能(PC+1→指令寄存器IR用于保存當(dāng)前正在執(zhí)行的指令的主要內(nèi)容,在讀取指令的周期接收從內(nèi)存中讀出來(lái)的一條指令,以便提供本指令的操作碼和使用的數(shù)據(jù)或者數(shù)據(jù)地址。在教學(xué)計(jì)算機(jī)中,指令寄節(jié)拍發(fā)生器Timing用于使用幾個(gè)觸發(fā)器的不同的編碼狀態(tài)來(lái)區(qū)分和標(biāo)示指令的執(zhí)行步驟,指g時(shí)序控制信號(hào)產(chǎn)生部件用于產(chǎn)生并提供每一條指令的每一個(gè)執(zhí)行步驟使用的全部時(shí)序控制信位信號(hào)(C、Z、S)等,通過(guò)由與_或兩級(jí)門(mén)電路產(chǎn)生并提供出一條指令的一個(gè)執(zhí)行步驟使用的全部控制信號(hào),這些信號(hào)可以直接送到每個(gè)被控制對(duì)象,或者經(jīng)過(guò)譯碼器送到被控制對(duì)象。在教學(xué)計(jì)算機(jī)中,時(shí)序控制信號(hào)產(chǎn)生部件選用一片有100個(gè)引腳的CPLD器件實(shí)現(xiàn),兩個(gè)譯碼器選用三八譯3.3.2教學(xué)計(jì)算機(jī)的指令執(zhí)行流程B、寫(xiě)操作,或一次IO設(shè)備的讀、寫(xiě)操作,在讀取指令之后可二步完成,第一步用于向地址寄存器送入16位的(或8位的IO端口)地址,第二步完成內(nèi)存或外圍設(shè)為頭一次讀出的數(shù)據(jù)就是下一次讀寫(xiě)操作要使用的地址信息,讀出之后直接(或經(jīng)過(guò)一次加法運(yùn)算)。CALRPC容(子程序調(diào)用指令的后續(xù)指令地址)到堆棧,第3步把寄存器中全部指令又被劃分為基本指令(29條)和擴(kuò)展指令(19條)兩大類(lèi),兩類(lèi)指令合在一起才構(gòu)成一套比較完整的指令系統(tǒng)?;局噶钜呀?jīng)由生產(chǎn)廠家完成設(shè)計(jì)并實(shí)現(xiàn),被用來(lái)支持監(jiān)控程序和簡(jiǎn)單的匯編語(yǔ)言程序設(shè)計(jì),設(shè)計(jì)結(jié)果作為教學(xué)內(nèi)容的實(shí)例寫(xiě)進(jìn)了教材中。擴(kuò)展指令則保留給實(shí)驗(yàn)者在控制器部件的教學(xué)實(shí)驗(yàn)中自己動(dòng)手來(lái)設(shè)計(jì)和實(shí)現(xiàn),對(duì)擴(kuò)展指令的設(shè)計(jì)結(jié)果在教師用書(shū)中給出。在運(yùn)行H條指令。教學(xué)計(jì)算機(jī)的使用者還可以設(shè)計(jì)實(shí)現(xiàn)自己選擇的其他一些指令。執(zhí)行B組指令D組指令讀寫(xiě)內(nèi)存或寄存器間傳送ARPC,讀內(nèi)存,IR讀出指令A(yù)組指令寄存器之間的數(shù)據(jù)運(yùn)算或傳送D傳送地址AR地址傳送地址AR地址讀取指令無(wú)CD,即已經(jīng)得知指令操作碼的前提下,節(jié)教學(xué)計(jì)算機(jī)系統(tǒng)加電啟動(dòng)時(shí)被執(zhí)行一次,在教學(xué)計(jì)算機(jī)正常運(yùn)行的過(guò)程中不會(huì)進(jìn)入這個(gè)節(jié)拍。在相鄰兩條指令進(jìn)行切換的時(shí)刻,即前一條指令已經(jīng)結(jié)束、下一條指令尚未開(kāi)始的時(shí)刻,完成檢查等到講解中斷的時(shí)候再詳細(xì)說(shuō)明。指令的執(zhí)行流程的邏輯關(guān)系表現(xiàn)得更清晰通暢,更容易學(xué)習(xí)與理解,條件。節(jié)拍發(fā)生器的邏輯設(shè)計(jì)與線路實(shí)現(xiàn)身可以運(yùn)行在組合邏輯方式,也可以運(yùn)行于觸發(fā)器邏輯方式,并且實(shí)現(xiàn)的正好是與—或兩級(jí)邏輯關(guān)號(hào)(暫未用),C_M#是區(qū)分組合邏輯或微程序兩種控制器的一位控制信號(hào),高電平代表選用組合的邏輯表達(dá)式。123456789101112CLKIR15IR14IR13IR12IR11IR10IR9IR8RESETNCGNDOEC_M#NCT4T0T1T2T3NCNCINTVCCT4:=GNDT3:=C_M#*/RESETT2:=C_M#*RESET*/T3*/T2*T1*/T0*IR15+C_M#*RESET*/T3*T2*T1*/T0+C_M#*RESET*/T3*T2*/T1*/T0*IR15*IR14*IR11+C_M#*RESET*/T3*T2*T1*T0T1:=C_M#*RESET*/T3*/T2*/T1*/T0+C_M#*RESET*/T3*/T2*T1*/T0+C_M#*RESET*/T3*T2*T1*/T0*IR15*IR14*/IR11+C_M#*RESET*/T3*T2*/T1*/T0*IR15*IR14*IR11T0:=C_M#*RESET*/T3*/T2*T1*/T0*/IR15+C_M#*RESET*/T3*T2*T1*/T0*IR15*IR14*/IR11+C_M#*RESET*/T3*T2*/T1*/T0*IR15*IR14*IR11+C_M#*RESET*/T3*T2*T1*T0DESCREPTION3.3.3教學(xué)計(jì)算機(jī)的時(shí)序控制信號(hào)形成部件1.確定控制器應(yīng)提供的控制信號(hào)教學(xué)計(jì)算機(jī)的總體組成情況,部件之間的連接關(guān)系,即數(shù)據(jù)傳送的通路,如圖2-18所示??刂破鞯墓δ埽窍蛴?jì)算機(jī)各個(gè)功能部件提供它們協(xié)同運(yùn)行所需要的控制信號(hào)。應(yīng)該向各功能部件提供出哪一些控制信號(hào),是由被控制部件的組成情況和運(yùn)行原理所決定的。下面結(jié)合教學(xué)計(jì)算機(jī)的總體組成和部件之間的連接,從各個(gè)部件實(shí)際需求的角度,來(lái)分析并決定控制器部件需要為它們提供制作用。節(jié)拍狀態(tài)碼節(jié)拍狀態(tài)碼標(biāo)志位狀態(tài)MRWI2~0I8~6I5~3B口A口SSTSSHSCIDC2標(biāo)志位狀態(tài)連接設(shè)備開(kāi)關(guān)門(mén)雙向三態(tài)門(mén)最低位移位信號(hào)教學(xué)計(jì)算機(jī)的數(shù)據(jù)通路與微命令的控制作用開(kāi)關(guān)門(mén)中斷向量數(shù)據(jù)開(kāi)關(guān)2.教學(xué)計(jì)算機(jī)各部件的連接關(guān)系:的內(nèi)部總線。兩個(gè)需要控制其是否接受輸入的寄存器:進(jìn)行詳細(xì)的說(shuō)明。位(累加器和Q寄存器)的移位輸入信號(hào)②對(duì)內(nèi)存儲(chǔ)器和I/O接口部件,控制器主要向它們提供讀寫(xiě)操作用到的地址信息和全部控制存和接口的讀寫(xiě)操作。設(shè)計(jì)中一定不能忘記這一使用要求。/MIO01QWE01××操作功能I/O寫(xiě)I/O讀寫(xiě)CALU的輸出結(jié)果,將ALU的輸出送到內(nèi)部總線,主要目的是用于把累加器的內(nèi)容寫(xiě)進(jìn)內(nèi)存或ALU傳到地址寄存器;在相對(duì)轉(zhuǎn)移指令中,存放的是offset偏移值,需要送內(nèi)部總線經(jīng)ALU完成與程序計(jì)數(shù)器PC的內(nèi)容相加;此時(shí)有一個(gè)符號(hào)位擴(kuò)展支持的問(wèn)題,在計(jì)算相對(duì)轉(zhuǎn)移指令的轉(zhuǎn)移地16位的中斷向量,由2位的中斷優(yōu)先級(jí)拼接上確定的高12位數(shù)值(通過(guò)跳線給出)得到,最3碼信號(hào)操作說(shuō)明送開(kāi)關(guān)內(nèi)容到內(nèi)部總線010/ETOIB送IR低位字節(jié)內(nèi)容到內(nèi)部總線(可能含符號(hào)為擴(kuò)展)/INTVH送程序狀態(tài)到內(nèi)部總線110/INTV送中斷向量到內(nèi)部總線NC無(wú)操作功能,不向內(nèi)部總線發(fā)送數(shù)據(jù)其實(shí)還可以從外部總線向內(nèi)部總線傳送數(shù)據(jù)(或者相反方向),但這是通過(guò)另外的辦法處理的,④對(duì)幾個(gè)特定的寄存器接受輸入的控制,也要通過(guò)3位編碼(標(biāo)記為DC2),用來(lái)選擇允許碼信號(hào)操作說(shuō)明指令寄存器接收GAR存器接收INTR恢復(fù)原中斷優(yōu)先級(jí)/INTN接收新中斷優(yōu)先級(jí)/EI開(kāi)中斷/DI關(guān)中斷要EICPU用戶(hù)程序中執(zhí)行一條把上述全部?jī)?nèi)容歸納在一起,就得出需要控制器形成并提供給計(jì)算機(jī)各個(gè)功能部件的32位時(shí)3位用于內(nèi)部總線,3位用于幾個(gè)特定寄存器。2.設(shè)計(jì)指令流程中各時(shí)序控制信號(hào)的狀態(tài)值在劃分完指令執(zhí)行步驟(流程),確定好全部時(shí)序控制信號(hào)的組成之后,接下來(lái)的工作,是根據(jù)每條指令的每一個(gè)節(jié)拍所執(zhí)行的功能,設(shè)計(jì)要求它所提供的全部控制信號(hào)的狀態(tài)值。狀態(tài)、指令操作碼、標(biāo)志位的值)和32個(gè)輸出變量構(gòu)成的邏輯關(guān)系的真值表。標(biāo)志位(C、Z、V、S)組成時(shí)序控制信號(hào)產(chǎn)生部件的輸入信號(hào)。第2列和最右一列是注釋部分,分別標(biāo)明指令對(duì)應(yīng)的匯編語(yǔ)句名和本節(jié)拍完成的主要操作功能,為理解與閱讀指令流程表中的內(nèi)容提供幫助。這里要做的工作,就是依據(jù)已經(jīng)完成的指令執(zhí)行流程設(shè)計(jì)(指令節(jié)拍劃分與編碼,每一條指令的每中去。這基本上是一個(gè)查表(教學(xué)計(jì)算機(jī)簡(jiǎn)明操作卡上的內(nèi)容)并填寫(xiě)的過(guò)程,繁瑣而機(jī)械,卻容不得任何錯(cuò)誤。式。同一個(gè)節(jié)拍中的不同指令又依據(jù)指令操作碼排序。輸入邏輯變量中的狀態(tài)標(biāo)志位(C、/C、ZZI位置,條理更清晰。確定每一個(gè)(組)時(shí)序控制信號(hào)的編碼值的原理并不難理解,就是依據(jù)指令執(zhí)行流程中每一個(gè)節(jié)拍應(yīng)完成的操作功能,找出需要使用的各個(gè)(組)控制信號(hào)編碼值。例如,在0011節(jié)拍的實(shí)現(xiàn)對(duì)其他各個(gè)橫行的內(nèi)容都可以參照此辦法進(jìn)行填寫(xiě),每一個(gè)方格中的數(shù)值到底選擇哪一個(gè)編碼,要依據(jù)本橫應(yīng)完成的功能到教學(xué)計(jì)算機(jī)的簡(jiǎn)明操作卡中查找。表3-12基本指令執(zhí)行流程表節(jié)拍0000001000110110指令A(yù)DDSUBANDCMPXORTESTORMVRRDECSHLSHRJRJRCJRNCJRZJRNZJMPA編碼000000000000000100000010000000110000010000000101000001100000011100001000000010010000101000001011010000010100010001000101010001100100011110000000/MR/W001I2-0001011000001001001001001001001011011011011011I8-60110100010110110110010110010110110110110110C10/C10Z10/Z1010I5-3001000000000001001011000001000000000000000000000000000B010101010000DRDRDRDRDRDRDRDRDRDRDRDR010101010101010101010101A010101010000RRRRRRRR0000000000000000010101010101010101010101SST000000000001001001001001001001000001001000000000000000000SSHSCI001001000000001000001000000000000000001000000000000000001DC2011001000000000000000000000000000000000000000000000000000011DC1000000000000000000000000000000000000000000000010010010010010000注釋0→PC,DI#=0PC→AR,PC+1→PCDR+SR>DRDR-SR>DRDRorSR>DRDR-SRDRxorSR>DRDR^SRDRandSR>DRSR>DRDR-1>DRDR+1>DRSHLDRSHRDROffset+PC>PCOffset+PC>PCOffset+PC>PCOffset+PC>PCOffset+PC>PCPC>AR,PC+1>PCLDRR100000011001000010000000SR000000011000SR>AR0110IN1000001010011100100000000000000000011010IRL→ARL-32--33-STRR10000011011001000DR0000000000011000DR>ARPSHF1000010001101100101000000000000011000SP-1>SP、ARPUSH1000010101101100101000000000000011000SP-1>SP、AROUT1000011000100000000000000000011010IRL→ARLPOP1000011101101000001000100000001011000SP>AR,SP+1>SPMVRD1000100001101000001010101000001011000PC>AR,PC+1>PCPOPF1000110001101000001000100000001011000SP>AR,SP+1>SPRET1000111101101000001000100000001011000SP>AR,SP+1>SP0110CALA1100111001101000001010101000001011000PC→AR,PC+1→PC0100JMPA1000000000101100001010000000000000000MEM→PCLDRR10000001001011000DR0000000000000000MEM→DR1000001001101100000000000000000000000(PORT)→R0STRR100000110000010000000R000000000001SR→MEMPSHF1000010000000000100000000000000000000011FLAG→MEMPUSH100001010000010000000R000000000001SR→MEMOUT1000011001000100000000000000000000001R0→(PORT)POP10000111001011000DR0000000000000000MEM→DRMVRD10001000001011000DR0000000000000000MEM→DRPOPF1000110000100000100000000000010000000000MEM→FLAGRET1000111100101100001010000000000000000MEM→PCCALA1100111000100000000000000000000000000(AR)→Q0111CALA1100111000110110001010000000000000110101CALA1100111000001001000001010101000000000001PC→MEM,Q→PC表-34-3.用線路實(shí)現(xiàn)表3-12所確定的功能表2-12是體現(xiàn)教學(xué)機(jī)硬連線控制器的時(shí)序控制信號(hào)部件功能的一張真值表。由真值表出發(fā)設(shè)計(jì)其線路實(shí)現(xiàn)是數(shù)字電路的基本核心知識(shí),通常要經(jīng)過(guò)寫(xiě)出相應(yīng)的邏輯表達(dá)式,適當(dāng)化簡(jiǎn),再選用由與-或兩級(jí)邏輯關(guān)系實(shí)現(xiàn)的線路這樣3步來(lái)完成。在教學(xué)計(jì)算機(jī)中,這個(gè)線路使用的是由5000個(gè)門(mén)組成的MACH器件,內(nèi)部實(shí)現(xiàn)的正好就是與-或兩級(jí)邏輯關(guān)系,又可以現(xiàn)場(chǎng)編程,完全適用。在本小節(jié)的最后一段給出了實(shí)現(xiàn)表2-12所規(guī)定功能的邏輯表達(dá)式。寫(xiě)邏輯表達(dá)式時(shí),選用的是層次結(jié)構(gòu)的邏輯描述語(yǔ)言ABEL,用到的主要符號(hào)簡(jiǎn)單匯總″表示開(kāi)始單行注釋?zhuān)纾骸錍ontrollerofTec_2000UsingMacro4;是一個(gè)邏輯表達(dá)式或一個(gè)定義的結(jié)束符&是與運(yùn)算符#是或運(yùn)算符!是取反運(yùn)算符=是組合邏輯的賦值運(yùn)算符()ABEL語(yǔ)言中允許使用括號(hào),在邏輯表達(dá)式中可以靈活地定義運(yùn)算的優(yōu)先級(jí)。定義輸入引腳:變量名pin管腳號(hào),例如:Cpin4;前面已經(jīng)提到,輸入變量包括4個(gè)節(jié)拍狀態(tài)位,8位的指令操作碼,狀態(tài)標(biāo)志位C和Z。定義輸出引腳:變量名pin管腳號(hào)istype′com′,com表示是組合邏輯變量例如:REQpin58istype′com′;前面已經(jīng)提到,輸出變量主要是32位的控制信號(hào),還有一個(gè)NewIns,表示新指令(擴(kuò)展指令)。定義變量組合關(guān)系:變量名=[變量名1,變量名2,…];例如:T=[T3,T2,T1,T0];表明T3~T0組合為T(mén),在邏輯表達(dá)式中可以用(T==[0,0,1,1])取代/T3&/T2&T1&T0,可讀性更好。又如:IR=[IR15,IR14,IR13,IR12,IR11,IR10,IR9,IR8];表明IR為8位指令操作碼在后面可以用其定義宏,例如,ADD=(IR==[0,0,0,0,0,0,0,0]);為了實(shí)現(xiàn)擴(kuò)展指令,還在ABEL語(yǔ)言的程序中,說(shuō)明并使用了MACH芯片內(nèi)部的隱埋(buried)宏單元(Node),它與輸出宏單元的功能很類(lèi)似,只是不能直接連接輸出引腳??梢酝ㄟ^(guò)_MIO00,REQ00,_WE00Nodeistype'com';的方式說(shuō)明隱埋(buried)宏單元。4.擴(kuò)展指令及其實(shí)現(xiàn)在教學(xué)計(jì)算機(jī)完整的指令系統(tǒng)中,特意劃分出19條擴(kuò)展指令,在產(chǎn)品出廠時(shí),通常情況下,控制器中并沒(méi)有實(shí)現(xiàn)這19條指令,特意留給學(xué)生在完成控制器部件設(shè)計(jì)的教學(xué)實(shí)驗(yàn)中來(lái)實(shí)現(xiàn)?;局噶詈蛿U(kuò)展指令合在一起,才能構(gòu)成一套較為完整的指令系統(tǒng),這兩類(lèi)指令需要在指令格式、操作碼編碼及指令分組關(guān)系、使用的尋址方式、指令執(zhí)行步驟劃分等各個(gè)方面保持協(xié)調(diào)一致,以保證教學(xué)計(jì)算機(jī)系統(tǒng)的規(guī)范和易用性,還可以使擴(kuò)展指令的教學(xué)實(shí)驗(yàn)更簡(jiǎn)單易行。例如,可以在基本指令集的基礎(chǔ)上,把全部擴(kuò)展指令也添加進(jìn)去,包括指令流程設(shè)計(jì)、指令執(zhí)行的流程表的內(nèi)容設(shè)計(jì)等,設(shè)計(jì)結(jié)果如圖2-?所示。其中屬于A組、D組的擴(kuò)展指令使用與同組基本指令相同的執(zhí)行流程,擴(kuò)展指令中不含B組指令,C組指令中有4條是通過(guò)3步完成兩次內(nèi)存讀寫(xiě)操作,選用D組指令4個(gè)執(zhí)行步驟中的3個(gè)步驟來(lái)實(shí)現(xiàn),圖中通過(guò)從0110節(jié)拍到1110節(jié)拍添加一條連線來(lái)表示這一擴(kuò)展。擴(kuò)展指令的一個(gè)重要部分是實(shí)現(xiàn)了中斷隱指令,這是響應(yīng)中斷請(qǐng)求過(guò)程中必須完成的功能。需要對(duì)中斷隱指令有一個(gè)正確的理解,它并不是一條真正的指令,沒(méi)有自己的操作碼,-35-讀取指令讀內(nèi)存,IR讀出指寄存器之間的數(shù)據(jù)運(yùn)算或傳送不能被用于匯編程序設(shè)計(jì)中,更準(zhǔn)確一點(diǎn)的概念,應(yīng)該把它理解為計(jì)算機(jī)指令執(zhí)行步驟的特定延伸。在這個(gè)特定步驟中要做的第一個(gè)動(dòng)作是檢查有無(wú)中斷請(qǐng)求,在沒(méi)有中斷請(qǐng)求時(shí),一條指令結(jié)束后,計(jì)算機(jī)將自動(dòng)進(jìn)入下一條指令的執(zhí)行過(guò)程,在有中斷請(qǐng)求時(shí),需要停止主程序的運(yùn)行過(guò)程轉(zhuǎn)去響應(yīng)并處理中斷,中段處理完成之后還需要轉(zhuǎn)回主程序繼續(xù)執(zhí)行,為此有一些追加的操作功能需要完成。在本教學(xué)計(jì)算機(jī)的具體實(shí)現(xiàn)中,需要完成關(guān)中斷,把主調(diào)用程序的斷點(diǎn)和程序狀態(tài)字保存到系統(tǒng)堆棧中,并把子程序的入口地址傳送進(jìn)程序計(jì)數(shù)器PC這樣幾項(xiàng)功能,要經(jīng)過(guò)6個(gè)步驟才能實(shí)現(xiàn),要求劃分出讀取指令讀內(nèi)存,IR讀出指寄存器之間的數(shù)據(jù)運(yùn)算或傳送有ARARPC,PCPC+1無(wú)INT#?B0110010組指令B傳送地址AR地址讀、寫(xiě)內(nèi)存或讀、寫(xiě)外設(shè)A組指令C組指令DA組指令0101傳送地址AR地址讀寫(xiě)內(nèi)存INTN#,AR,SPSPINTN#,QSTRMEMQSTRARAR,SPSP-1INTV#,MEMINTV#,PCIB圖3-17教學(xué)計(jì)算機(jī)的指令執(zhí)行流程圖設(shè)計(jì)與實(shí)現(xiàn)擴(kuò)展指令的過(guò)程中,必須保證無(wú)論這部分的設(shè)計(jì)結(jié)果正確與否,都不會(huì)影響基本指令的正常運(yùn)行,否則教學(xué)計(jì)算機(jī)將進(jìn)入非預(yù)期狀態(tài),導(dǎo)致下一步的調(diào)試工作難以進(jìn)行。-36-為此,有必要對(duì)MACH器件內(nèi)部的邏輯線路的使用方式做出一點(diǎn)限制,把基本指令使用的、擴(kuò)展指令使用的兩路控制信號(hào)明確區(qū)分開(kāi)來(lái)。指定產(chǎn)生基本指令使用的控制信號(hào)的線路由I/O宏單元承擔(dān),將它們直接連接到器件的輸出引腳,指定產(chǎn)生全部擴(kuò)展指令使用的控制信號(hào)的線路改由器件內(nèi)部的隱埋(buried)宏單元(Node,不能直接連接輸出引腳)承擔(dān),再把隱埋宏產(chǎn)生的控制信號(hào)作為一個(gè)“或”項(xiàng)與I/O宏的信號(hào)歸并到一起,使其可以輸出。為此,在描述MACH器件內(nèi)部功能的ABEL語(yǔ)言的程序中,把產(chǎn)生基本指令使用的控制信號(hào)的表達(dá)式寫(xiě)在對(duì)應(yīng)的輸出引腳處,把產(chǎn)生擴(kuò)展指令使用的控制信號(hào)的表達(dá)式寫(xiě)在各自的內(nèi)部節(jié)點(diǎn)處,還要限制完成擴(kuò)展指令的過(guò)程中產(chǎn)生的設(shè)計(jì)錯(cuò)誤不會(huì)影響基本指令正常的運(yùn)行過(guò)程。例如:_MIO,REQ,_WEpin55,58,56istype'com';為3位控制信號(hào)分配3個(gè)輸出引腳_MIO00,REQ00,_WE00Nodeistype'com';為3位內(nèi)部信號(hào)分配3個(gè)內(nèi)部節(jié)點(diǎn)!_MIO=C_M&((T==[0,0,1,0])基本指令使用的控制信號(hào)由前4個(gè)或項(xiàng)產(chǎn)生#(T==[0,1,0,0])&(MVRD#LDRR#POP#JMPA#RETPOPFSTRRPUSHPSHFIN#OUT)#(T==[0,1,0,0])&(CALA)#(T==[0,1,0,1])&(CALA))#C_M&!_MIO00;!_MIO00=(T==[0,1,0,0])&IR13此或項(xiàng)把擴(kuò)展指令使用的控制信號(hào)歸并進(jìn)來(lái)產(chǎn)生全部擴(kuò)展指令使用的控制信號(hào)的表達(dá)式#(T==[0,1,1,1])&(CALR#LDRA#LDRX#STRX#STRA)&IR13#(T==[0,1,0,1])&(LDRA#LDRX#STRX#STRA#IRET)&IR13#(T==[1,1,0,0])#(T==[1,1,0,1]);在表達(dá)式中,把!_MIO00作為形成!_MIO信號(hào)的一個(gè)或項(xiàng),實(shí)現(xiàn)了兩路控制信號(hào)的歸并功能。在形成!_MIO00的表達(dá)式中的3個(gè)或項(xiàng)中,用到了IR13(擴(kuò)展指令該位為1,基本指令該位為0)作為一個(gè)“與”因子,可以使用于擴(kuò)展指令的微指令中的這一位控制信號(hào)設(shè)計(jì)錯(cuò)誤不影響基本指令的正常運(yùn)行。在形成!_MIO00的表達(dá)式中的最后2個(gè)或項(xiàng)中,用到的節(jié)拍只出現(xiàn)在擴(kuò)展指令的表達(dá)式中,通過(guò)節(jié)拍信號(hào)就已經(jīng)和基本指令區(qū)別開(kāi)來(lái)。下面給出擴(kuò)展EI、DI、IRET這3條指令和中斷隱指令的設(shè)計(jì)結(jié)果作為例子,說(shuō)明完成擴(kuò)展指令的工作步驟和操作技術(shù)。擴(kuò)展指令大體上可以分為定義指令格式和功能、劃分指令的執(zhí)行步驟、確定這些指令的執(zhí)行流程表的內(nèi)容,寫(xiě)出有關(guān)擴(kuò)展指令用到的32個(gè)控制信號(hào)的邏輯表達(dá)式,編譯之后將結(jié)果文件內(nèi)容下載到MACH芯片中,進(jìn)一步完成調(diào)試和試運(yùn)行這樣幾個(gè)步驟,與教材中講解基本指令的設(shè)計(jì)過(guò)程與實(shí)現(xiàn)技術(shù)很類(lèi)似。正如前面剛剛講到的,需要做到不使擴(kuò)展指令過(guò)程中出現(xiàn)的設(shè)計(jì)錯(cuò)誤影響基本指令的正常運(yùn)行,需要在不修改基本指令使用的控制信號(hào)的邏輯表達(dá)式的基礎(chǔ)上,把擴(kuò)展指令使用的控制信號(hào)的邏輯表達(dá)式添加進(jìn)去,并合理地把它們歸并到器件對(duì)應(yīng)的輸出引腳輸出出來(lái)。請(qǐng)務(wù)必注意,對(duì)擴(kuò)展指令只需設(shè)計(jì)實(shí)現(xiàn)它特定的操作步驟和處理功能就可以了,在需要讀取指令或者檢查中斷請(qǐng)求時(shí),直接進(jìn)入已經(jīng)在基本指令中實(shí)現(xiàn)了的這幾個(gè)操作步驟即可,無(wú)需另外設(shè)計(jì),這是所有指令(含基本和擴(kuò)展兩個(gè)部分)公用的操作步驟。-37-表3-12與中斷有關(guān)的擴(kuò)展指令執(zhí)行流程表節(jié)拍節(jié)拍指令編碼/MR/WI2-0I8-6I5-3BASSTSSHSCIDC2DC1注釋0011EI011011100000001000000000000000000000EI0011DI011011110000001000000000000000001000DI0110IRET11101111001101000001000100000001011000SP>AR,SP+1>SP0100IRET11101111001000001000000000000100000000MEM>FLAG0111IRET11101111001101000001000100000001011000SP>AR,SP+1>SP0101IRET11110111001101100001010000000000000101001000000000000000000001011STR→Q,DI#1110001101100101000000000000011000SP-1→SP,AR11000000001000000001010000001001PC→MEM,INTN#1111001101100101000000000000011000SP-1→SP,AR11010000100010000000000000000000010110101100001010000000000000101INTV#,IB→PC3.4微程序控制器部件的技術(shù)說(shuō)明現(xiàn),在圖中用虛線框表示),指令寄存器IR,控制存儲(chǔ)器,微指令寄存器,以及微指令下地址形成芯片Am2910(微程序定序器)、微指令轉(zhuǎn)移條件判斷線路、微地址映射部件組成。在具體實(shí)現(xiàn)中,為了方便調(diào)試,還安排了用于顯示的當(dāng)前微地址寄存器。微命令微下地址微命令CP微指令寄存器CP/PL//PLCI3~CI0/MAPCP微程序定序器/MAPCP微程序定序器Am2910控制存儲(chǔ)器微地址MAPROM指令操作碼指令寄存器IR/OE/指令操作碼指令寄存器IRCPCP當(dāng)前微地址寄存器CP條件判斷線路SCC指示燈程序計(jì)數(shù)器PC圖2-11微程序控制器的基本組成3.4.1Am2910芯片的內(nèi)部組成和功能說(shuō)明Am的器件,即它的輸入輸出的地址位數(shù)和器件內(nèi)的部件位內(nèi)部組成包括一個(gè)四輸入的多路地址選擇器,用來(lái)從寄存器/計(jì)數(shù)器(R/C),直接輸入(D),微程序計(jì)數(shù)器(PC)或微堆棧(F)四個(gè)輸入中,選擇其一作為下一條微指令的地址。寄存器/計(jì)數(shù)器用作寄存器時(shí),主要用于保存一個(gè)微地址,用以實(shí)現(xiàn)微程序轉(zhuǎn)移;當(dāng)它用作計(jì)數(shù)器時(shí),具有減一功能(何時(shí)減一,取決于Am2910的命令碼),主要用于控制微程序的循環(huán)次數(shù)。微程序計(jì)數(shù)器由增量器和寄存器PC組成。當(dāng)增量器的進(jìn)位輸入C1為高電平時(shí),多路器的輸出Y加1后裝入PC(即PC←Y+1),用于實(shí)現(xiàn)微程序的順序執(zhí)行;而當(dāng)C1為低電平時(shí),多路器的輸出Y直接裝入PC(即PC←Y),用于實(shí)現(xiàn)同一條微指令的多次執(zhí)行。SP用于保存微子程序調(diào)用時(shí)的返回地址和微程序循環(huán)的首地址。微堆棧指針SP總是指向最后一次壓入的數(shù)據(jù),因此,執(zhí)行微程序循棧已滿(mǎn)信號(hào)(/FULL=0),這時(shí),任何壓入操作都將覆蓋掉棧頂?shù)脑袛?shù)據(jù)。當(dāng)/PL有效時(shí)(即/PL=0),D來(lái)源于微指令的下地址字段,用于給出微程序轉(zhuǎn)移地址;當(dāng)/MAP有效時(shí)(即/MAP=0),D來(lái)源于MAPROM,用于實(shí)現(xiàn)從機(jī)器指令的操作碼找到相應(yīng)的微程當(dāng)/VECT有效時(shí),(即/VECT=0),選擇D的另一路來(lái)源,目前的系統(tǒng)中未使用。產(chǎn)生芯片內(nèi)工作需要的控制信號(hào)和外部要用的三個(gè)控制選擇信號(hào)/PL、/MAP和/VECT。D11~D0P寄存器/計(jì)數(shù)器R/CX微堆棧F出輸入減R為零微程序計(jì)數(shù)器命令譯碼器VECT量/保DRFuPC持裝零數(shù)/選擇壓入/彈出保持/清零/清多路地址選擇器微堆棧指零檢測(cè)增量器輸FULLIRLDY11~Y0圖2-12Am2910內(nèi)部結(jié)構(gòu)框圖(1)輸入信號(hào):D11-D0:外部直接輸入的數(shù)據(jù),既可作為寄存器/計(jì)數(shù)器的初值,也可以經(jīng)過(guò)地址多路選擇器直II微堆棧的操作。CI:增量器進(jìn)位輸入,當(dāng)其為高電平時(shí),控制微指令地址增量,即執(zhí)行PC←Y+1,當(dāng)其為低電CP:時(shí)鐘脈沖信號(hào),由低變高的上升邊沿觸發(fā)所有內(nèi)部狀態(tài)的變化。(2)輸出信號(hào):Y11-Y0:下一條微指令的地址,它直接被用作為讀控制存儲(chǔ)器的地址。/FULL:微堆棧滿(mǎn)信號(hào),低電平有效。器當(dāng)前值的組合結(jié)果來(lái)決定。//CCEN=0Y輸出堆棧Y輸出堆棧0清除0清除PC/D壓入D/D/PC/D/PC壓入PC壓入PC/D/F/F/PC彈出PC彈出PC/F彈出PC/PC/F/PC彈出D彈出PC彈出完成功能初始化條件轉(zhuǎn)微子程序指令功能分支條件轉(zhuǎn)移轉(zhuǎn)中斷向量C微子程序非零循環(huán)條件返回順序執(zhí)行三路轉(zhuǎn)移信號(hào)MAP/VECT操作///////零零0123468其中只有少數(shù)命令(如0,2和14號(hào)命令)的執(zhí)行結(jié)果僅由命令碼本身決定,大部分命令還都要受到測(cè)試條件(/CC和/CCEN)為真還是為假的控制,有些命令(如8,9和15號(hào)命令)的執(zhí)行結(jié)果,試條件是否通過(guò)的雙重控制,可以實(shí)現(xiàn)三路微程序轉(zhuǎn)移的功能。件)得到,并將其作為輸出微地址Y的值,實(shí)現(xiàn)用指令操作碼找到對(duì)應(yīng)該指令的微程序段的入口地址,從而開(kāi)始該條指令的特定執(zhí)行過(guò)程。令也可以用于實(shí)現(xiàn)無(wú)條件的微程序轉(zhuǎn)移來(lái)使用。14號(hào)命令:順序執(zhí)行,即下一條微指令是緊跟在本條微指令后面的那條微指令。2)把/CCEN接地,使Am2910的條件判斷結(jié)果只取決于/CC。3.4.2教學(xué)計(jì)算機(jī)的微程序控制器的設(shè)計(jì)和實(shí)現(xiàn)微微下地址/VECTCI3~CI0微程序定序器Am2910/CC/CCEN條件判斷線路微命令微指令寄存器控制存儲(chǔ)器16位32位程序計(jì)數(shù)器CP微地址映射部件MAPROM指令寄存器/MAPCPCP微地址/PL/OE圖2-10微程序控制器的基本組成微程序控制器的基本組包括:控制存儲(chǔ)器、微指令寄存器、微程序下地址形成芯片Am2910(微程序定序器)和配套線路(微指令轉(zhuǎn)移條件判斷線路、微指令地址映射部件),指令寄存器IR和程對(duì)每個(gè)子部件簡(jiǎn)要說(shuō)明如下。(1)控制存儲(chǔ)器指令寄存器IR微指令,包括16位的微指令下地址信息(來(lái)自CM1和CM0)和32位的微命令信號(hào)(來(lái)自MACH)。選指令寄存器IR片內(nèi)的邏輯電路如下圖所示。CLK微指令地址輯線路A、B口信號(hào)合成32位的微命令字段的信號(hào)內(nèi)容(見(jiàn)微指令執(zhí)行流程表)的邏輯表達(dá)式完成的。8位的微指令地址是邏輯表達(dá)式的輸入變量,控制存儲(chǔ)器中每位微碼的值用一個(gè)表達(dá)式描述。這些邏輯表達(dá)式給出在本節(jié)的最后部分。在把微指R產(chǎn)品出廠時(shí),全部基本指令的微程序已存放在里邊,且只提供讀操作功能。同時(shí),教學(xué)計(jì)算機(jī)需要把設(shè)計(jì)好的微指令寫(xiě)入相應(yīng)的控制存儲(chǔ)器中(控制信號(hào)與器件及其管腳的對(duì)應(yīng)關(guān)系在后面給出)。(8位)(8位)(8位)SSHSCI1~0DC2DC1(8位)OREQWEIII(8位)(8位)表AB用的寄存器的編的編碼(0000、0101、0100)不能由指令寄存器提供,只能在微指令的A口、B口字段直接給出,RAABB達(dá)式中的符號(hào),后跟下劃線的代表來(lái)自IRIRIRIRDR和SR字段的內(nèi)容,不跟下劃線代表產(chǎn)生之后送給運(yùn)算器的控制信號(hào)。A3=A3-&IR3A2=!A3-&A2-#A3-&IR2A1=!A3-&A1-#A3-&IR1A0=!A3-&A0-#A3-&IR0B3=B3-&IR7B2=!B3-&B2-#B3-&IR6B1=!B3-&B1-#B3-&IR5B0=!B3-&B0-#B3-&IR4(2)微指令寄存器S(3)微程序定序器和配套線路,用于形成下一條微指令的地址,具體由3部分組成:微程序定Am0芯片,微指令地址映射部件和微指令轉(zhuǎn)移的條件判斷線路。①微程序定序器Am2910芯片,其內(nèi)部組成、實(shí)現(xiàn)的功能和使用辦法已經(jīng)在前一節(jié)單獨(dú)講解過(guò),在此不再贅述。②微指令地址映射部件的8位指令操作碼,其輸出內(nèi)容為這條指令對(duì)應(yīng)的微程序段的入口地址。指令操作碼與相應(yīng)入口地址的對(duì)應(yīng)關(guān)系在下一節(jié)給出。腳與微程序定序器Am2910的/MAP引腳相連。③微指令轉(zhuǎn)移的條件判斷線路當(dāng)按下“RESET”按鍵時(shí),產(chǎn)生一清零信號(hào)CLR,使含有控制信號(hào)CI3~CI0的微指令寄存器開(kāi)始執(zhí)行微程序。需要判斷測(cè)試條件是否成立,教學(xué)機(jī)中根據(jù)由控制信號(hào)SCC3~SCC0規(guī)定的判斷條件,結(jié)合指令操作微程序定序器和配套線路,依據(jù)微指令的下地址字段的內(nèi)容形成下一條微指令的地址,在教學(xué)PL效時(shí),該值才有意義(被使用)。③微指令必定轉(zhuǎn)移時(shí),是8位的轉(zhuǎn)移地址拼接命令碼3再拼接必轉(zhuǎn)的條件編碼0000,例如表2-8條件微指令轉(zhuǎn)移所依據(jù)的判斷條件(下面的條件滿(mǎn)足時(shí),使/CC=0)JRC、JRNC、JRZ、JRNZ條件不滿(mǎn)足時(shí),轉(zhuǎn)IR10=0(IN指令)時(shí),轉(zhuǎn)IR8=1(寄存器出棧/入棧)時(shí),轉(zhuǎn)(CI3~CI0=0011)000101LVSCCGALC_M#是組合邏輯/微程序控制器選擇信號(hào),為低時(shí)是微程序方案,為高時(shí)是硬布線方案。V6789101112CKS3S2S1S0CZINT#SRST#NCGNDC_M#I0CK3I1I2I3CCMNRSTNCCC#I4VCC/CC#=/S3*/S2*/S1*/S0+/S3*S2*/S1*/S0*/I1*/I0*/C+/S3*S2*/S1*/S0*/I1*I0*C+/S3*S2*/S1*/S0*I1*/I0*/Z+/S3*S2*/S1*/S0*I1*I0*ZCCM=/S3*S2*S1*S0*I0/S3*S2*/S1*S0*/I1*/I0*/S/S3*S2*/S1*S0*/I1*I0*SCCM.OE=VCCCC#.OE=VCCNRST.OE=VCCCK3.OE=VCCDESCRIPTION(1)教學(xué)計(jì)算機(jī)的微程序控制器組成中還設(shè)置有一個(gè)當(dāng)前微指令地址寄存器,由1片74LS377。(2)指令寄存器IR、程序計(jì)數(shù)器PC的組成和作用,與硬連線控制器中的規(guī)定完全相同,在此(3)微指令字中32位的微命令字段用于控制運(yùn)算器部件、存儲(chǔ)器和接口部件、內(nèi)部總線和幾個(gè)特定的寄存器,與硬連線控制器中的規(guī)定完全相同,在此不再說(shuō)明。詳細(xì)內(nèi)容接下來(lái)把教學(xué)機(jī)微程序控制器的設(shè)計(jì)的幾個(gè)主要步驟及其設(shè)計(jì)結(jié)果匯總?cè)缦?。,框?nèi)的文字表明這條微指令實(shí)現(xiàn)的功能,方框外的2位十六進(jìn)制的數(shù)字表示這條微指令在控制存儲(chǔ)器中的單元地址,方框之間的帶箭頭的連線表示微指令之間執(zhí)行的次序關(guān)系,該連線旁邊無(wú)文字標(biāo)注的表示執(zhí)行過(guò)前一條微指令無(wú)條件地開(kāi)始下一條微指令的執(zhí)行步驟,有文字標(biāo)注的表示進(jìn)入下一對(duì)微程序的總體構(gòu)成及有關(guān)微程序段的功能說(shuō)明如下。寄存器之間運(yùn)算與傳送IR(AR)讀、寫(xiě)內(nèi)存CD擴(kuò)展指令執(zhí)行流程圖AR地址C讀、寫(xiě)內(nèi)存AR地址D組讀、寫(xiě)內(nèi)存PC地址ARPC/MAPA組B組地址為00的微指令用于給出監(jiān)控程序的首地址和禁止中斷,僅在教學(xué)機(jī)加電啟動(dòng)時(shí)被執(zhí)行一次,教學(xué)機(jī)在正常運(yùn)行的期間不再使用這條微指令。地址為03的微指令用于通過(guò)指令的操作碼映射出這條指令特定的執(zhí)行步驟的首條微指令的地址并讀出這條微指令,也公用于每條指令。只有條件相對(duì)轉(zhuǎn)移指令,需要通過(guò)一個(gè)步驟判斷轉(zhuǎn)移條件是否滿(mǎn)足,不滿(mǎn)足時(shí)則結(jié)束指令的執(zhí)行過(guò)程,本指令只用到一條微指令,條件滿(mǎn)足時(shí)則要轉(zhuǎn)移,需要順序進(jìn)到下一條,把指令的轉(zhuǎn)移地址微PC要無(wú)條件地轉(zhuǎn)向條指令可以合用的微指令盡可能地歸并為一條,以節(jié)省控制存儲(chǔ)器空間。執(zhí)行過(guò)后都要無(wú)條件地轉(zhuǎn)檢查中斷請(qǐng)求的那一條微指令。執(zhí)行過(guò)后要無(wú)條件地轉(zhuǎn)去執(zhí)行地址為30、用于檢查中斷請(qǐng)求的那一條微指令。地址為30的微指令,完成檢查中斷請(qǐng)求的功能(順便暫存程序狀態(tài)字到Q寄存器),無(wú)中斷請(qǐng)求時(shí),就進(jìn)入下一條指令的執(zhí)行過(guò)程,即開(kāi)始讀取指令的第一個(gè)操作步驟;有中斷請(qǐng)求時(shí),進(jìn)入響應(yīng)和處理中斷的過(guò)程,此處先用一條實(shí)現(xiàn)空操作的微指令替代,學(xué)習(xí)到中斷處理的內(nèi)容時(shí)再改寫(xiě)成真正的響應(yīng)中斷的幾條微指令。令字下地址字段的內(nèi)容和微指令地址映射直接相關(guān),在教學(xué)計(jì)算機(jī)中是按如下原則分配的。完成了關(guān)中斷),把這條微指令安排在控制存儲(chǔ)器的00單元。(2)接下來(lái)的3個(gè)控存單元(地址為00、01和02)用于保存所有指令公用的、實(shí)現(xiàn)讀取(3)再接下來(lái)的控制存儲(chǔ)器單元分配給解釋執(zhí)行全部指令的有關(guān)微程序。且將其安排在對(duì)應(yīng)JR指令的那條微指令(地址為11)之前更方便。對(duì)指令的第2條微指令將分別通過(guò)微指令的順序執(zhí)行和條件微轉(zhuǎn)移執(zhí)行與公用入口的微指令相銜中,在微指令的下地址字段中必須依此給出正確的信息。接下來(lái)可以把地址為1A、1B、1D、1E、1F、上面給出的只是分配控制存儲(chǔ)器地址的一種可行選擇,很容易選用另外的方案實(shí)現(xiàn)同樣的功能

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論