




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
計(jì)算機(jī)組成原理課程
設(shè)計(jì)報告實(shí)驗(yàn)名稱:硬布線控制器的設(shè)計(jì)
學(xué)院:計(jì)算機(jī)學(xué)院
班級:2010211301組員:張宇明,郭遜,諶惠民,廉鴻一
北京郵電大學(xué)課程設(shè)計(jì)報告課程設(shè)計(jì)名稱計(jì)算機(jī)組成原 學(xué)院理課程設(shè)計(jì)計(jì)算機(jī)指導(dǎo)教師 張杰班級班內(nèi)序號學(xué)號學(xué)生姓名成 績課程設(shè)計(jì)內(nèi)容教學(xué)目的:1)融會貫通計(jì)算機(jī)組成原理課程各章的教學(xué)內(nèi)容,通過知識的綜合運(yùn)用,加深對CPU各模塊工作原理和相互聯(lián)系的認(rèn)識。2)掌握硬連線控制器的設(shè)計(jì)方法。3)學(xué)習(xí)運(yùn)用大容量可編程器件的開發(fā)技術(shù),掌握設(shè)計(jì)和調(diào)試的基本步驟和方法,體會ISP技術(shù)的優(yōu)點(diǎn)。4)培養(yǎng)科學(xué)研究能力,取得設(shè)計(jì)與調(diào)試的實(shí)踐經(jīng)驗(yàn)?;緝?nèi)容:1)按給定的數(shù)據(jù)格式和指令系統(tǒng),利用大容量ISP可編程器件,設(shè)計(jì)一臺硬連線控制器組成的處理機(jī)。2)根據(jù)設(shè)計(jì),在TEC-5實(shí)驗(yàn)系統(tǒng)中進(jìn)行調(diào)試。3)在調(diào)試成功的基礎(chǔ)上,整理出設(shè)計(jì)圖紙和其他文件,包括:總框圖,硬連線控制器邏輯模塊圖,硬連線控制器指令周期流程圖,控制器模塊的VHDL語言源程序,設(shè)計(jì)說明說,調(diào)試總結(jié)。實(shí)驗(yàn)方法:分工合作,理論與實(shí)踐相結(jié)合。首先,在草稿紙上設(shè)計(jì)出硬布線控制器,根據(jù)每個微操作控制信號S是一系列輸入量的邏輯函數(shù),寫出控制信號表達(dá)式并用卡諾圖進(jìn)行化簡,據(jù)此寫出VHDL源程序。再把源程序下'載到isp1032器件中,進(jìn)行不斷的調(diào)試操作,直至程序能夠正確運(yùn)行得出正確結(jié)果為止。團(tuán)隊(duì)分工:郭遜VHDL語言的編寫實(shí)驗(yàn)調(diào)試實(shí)驗(yàn)報告書寫張宇明實(shí)驗(yàn)總體設(shè)計(jì)VHDL語言的測試實(shí)驗(yàn)臺連接和調(diào)試廉鴻一控制信號譯碼與分析器材調(diào)試諶惠民控制信號譯碼與分析VHDL語言的調(diào)試實(shí)驗(yàn)報告書寫學(xué)生課程設(shè)計(jì)報告(附頁)具體見附頁?
注:評語要體現(xiàn)每個學(xué)生的工作情〉兄,可以加頁。目錄本報告包括以下內(nèi)容:TOC\o"1-5"\h\z數(shù)據(jù)通路圖及其說明 P4硬布線控制器邏輯模塊圖及設(shè)計(jì) P5\o"CurrentDocument"硬布線控制器指令周期流程圖及設(shè)計(jì) P8控制模塊VHDL語言源程序/原理圖(包含說明和注釋) P9測試波形圖(以WRM為例) P15\o"CurrentDocument"控制模塊原理圖 P16設(shè)計(jì)說明書 P17\o"CurrentDocument"設(shè)計(jì)與調(diào)試小結(jié) P20\o"CurrentDocument"8.本組成員實(shí)驗(yàn)心得 P21數(shù)據(jù)通路圖CnUoIBUS1)BUSLDRi(T3)i.RW(T2)CER#CEL#PC+1AR+1LDDR,(T2)LDAR(T2)控制信號74LS273操作控制器|TdIR(T3)CSWCSWBSWA操作控制臺RAM-BUS#ALU74LS181AR74LS163TR7-IR4<—\——r-PCCnUoIBUS1)BUSLDRi(T3)i.RW(T2)CER#CEL#PC+1AR+1LDDR,(T2)LDAR(T2)控制信號74LS273操作控制器|TdIR(T3)CSWCSWBSWA操作控制臺RAM-BUS#ALU74LS181AR74LS163TR7-IR4<—\——r-PC74LSI63DR274LS273LDDR2(T2)DR,74LS273數(shù)據(jù)端口指令端口RAMIDT7132SW-RUS廿二^RS-BUS#-RSI-RSO-WKJ-WRO,ALU-BUS#希PC(T2)RD1——A端口B端口RDO—WR1—RFWR0—ispLSH016LDRi(T3)雙端口通用寄存器(RF)由一個ispLSI1016實(shí)現(xiàn),功能相當(dāng)于四個八位通用寄存器,用于保存參與運(yùn)算的數(shù)據(jù),運(yùn)算后的結(jié)果也要送到RF中保存。雙端口寄存器堆模塊的控制信號中,RS1、RS0用于選擇從右端口讀出的通用寄存器,RD1、RD0用于選擇從左端口讀出的通用寄存器。而WR1、WR0用于選擇寫入的通用寄存器。LDRi是寫入控制信號,當(dāng)LDRi=1時,數(shù)據(jù)總線DBUS上的數(shù)據(jù)在T3寫入由WR1、WR0指定的通用寄存器。左右端口分別與操作數(shù)暫存器DR1和DR2相連,RF的右端口通過三態(tài)門連接到數(shù)據(jù)總線DBUS上,因而RF中的數(shù)據(jù)可以直接通過右端口送到DBUS上。DR1和DR2各由一片74LS273構(gòu)成,用于暫存參與運(yùn)算的數(shù)據(jù)。ALU由兩片74LS181構(gòu)成,ALU的輸出通過一個三態(tài)門發(fā)送到數(shù)據(jù)通路DBUS上。雙端口寄存器使用一片IDT7132(2048X8位),兩個端口的地址輸入A8-A10引腳接地,因此實(shí)際使用的存儲容量為256字節(jié)。左端口的數(shù)據(jù)輸出端接在數(shù)據(jù)總線DBUS,右端口的數(shù)據(jù)輸出接指令總線IBUSoCEL#、LR/W#、OEL#控制左端口讀寫操作;CER#、RR/W#、OER#控制右端口讀寫操作。CEL#為左端口片選信號,低電平有效;當(dāng)CEL#=1時,禁止對左端口的讀寫操作;當(dāng)LR/W#=0時,左端口進(jìn)行讀寫。OEL#的作用等同于三態(tài)門,當(dāng)OEL#=0時,允許左端口讀出的數(shù)據(jù)送到數(shù)據(jù)總線DBUS上;當(dāng)OEL#=1時,禁止左端口的數(shù)據(jù)放到DBUS上。因此將OEL#寫作RAM-BUS#。右端口控制信號與左端口完全類似。左端口負(fù)責(zé)所有數(shù)據(jù)和指令的寫入,右端口作為指令端口,不需要進(jìn)行數(shù)據(jù)寫入,將右端口處理為只讀端口,RR/W#固定接高電平,OER#固定接地。存儲器左端口的地址寄存器AR和右端口的地址寄存器PC都是2片74LS163,具有地址遞增功能。同時,PC也起到程序計(jì)數(shù)器的功能。指令由雙端口寄存器的右端口送到指令總線IBUS,再送入指令寄存器IR,再通過操作控制器產(chǎn)生各控制信號從而實(shí)現(xiàn)程序運(yùn)行,本次實(shí)驗(yàn)編寫的控制器是硬布線控制器。
硬布線控制器邏輯模塊圖指令寄存器敝操作控制信號'- -::1指令寄存器敝操作控制信號'- -::1□ U□結(jié)果反慣信息組合謬輯線路 場LSI10321件;十 、節(jié)拍電位有拍豚沖發(fā)生器指令?譯瑪器硬布線控制器邏輯模塊圖據(jù)書本硬布線控制器結(jié)構(gòu)框圖可知:每一微操作控制信號C是指令操作碼譯碼器輸出Im、時序信號(節(jié)拍電位Mi,節(jié)拍脈沖Tk)和狀態(tài)條件信號Bj的函數(shù),即C=f(Im,Mi,Tk,Bj)其中,邏輯網(wǎng)絡(luò)的輸入信號來源有三個:(1) 來自指令操作碼譯碼器的輸出Im;(2) 來自執(zhí)行部件的反饋信息Bj;(3) 來自時序產(chǎn)生器的時序信號,包括節(jié)拍電位信號M和節(jié)拍脈沖信號T.其中節(jié)拍電位信號即機(jī)器周期(CPU周期)信號,節(jié)拍脈沖信號是時鐘周期信號。這個控制信號是用門電路、觸發(fā)器等許多器件采用組合邏輯設(shè)計(jì)方法來實(shí)現(xiàn)的當(dāng)機(jī)器加電工作時,某一操作控制信號C在某條特定指令和狀態(tài)條件下,在某一序號的特定節(jié)拍電位和節(jié)拍脈沖時間間隔中起作用,從而激活這條控制信號線,對執(zhí)行部件實(shí)施控制。所以我們可以:1-根據(jù)硬連線指令流程圖列出譯碼表,再設(shè)計(jì)出譯碼邏輯電路圖。下面給出本組的組合邏輯譯碼表:
狀加KRRKLDKWEKRBPR指金IRRKFRRF2._WRFWRF2._RRJfRRM2._W郎WRM2._RPRF2LDDR1LDDR2_LDRiwi'LDIRW2W2_W1GEL#W1W1W1W1CER#W2W2一W1SW-BUS-W3W1W3Wl,W3.W3W3W1W3W逐wixg)粗匝)W1LD^=W克W豆國LDPC-W3W3W3RS-BUS^迂.ALU-BUS-SHPW1HIW1W1W1W1W1TJW3_W3_帔甘W1W3_SSTOW3W3W3W3W3AR-1迂迂PC-1M而S3S2SISOC狀態(tài)STPR指令晅ADDSUBAMDSTALDAJCSTPOUTLDDR1W2W2W2W2LDDR2W2W2W2LDRiW3W3W3W3LDIRCE1=W3W3CER芹SW-BUS=]R/W#W3(0)W3(l)RAM-BUS芹W3]DgW2W2LDPC^W3RS-BUS=W2W2W3W3ALU-BUSmW3W3W3W3SKIPTJW3W3SSTQAK-1PC+1W3W3W3W3W3W2W3W3M0(裾#)0(裾#)1(W3)1(W3)cm1(W3)0(裾#)S31(W3)0(裾#)1(W3)1(W3)S20(W3#)1(W3)1(W3)1(W3)SI0(W3#)1(W3)1(W3)1(W3)SO1(裾)0(W3#)0(W3#)l(W3)CC說明:水平方向表示一個信號,縱向?yàn)槟骋粻顟B(tài)或指令,單元格中的內(nèi)容表示該控制信號在該指令中有效的條件,根據(jù)譯碼表可以寫出每個控制信號的邏輯表達(dá)式。2.按照上面的組合邏輯譯碼表寫出各信號的邏輯表達(dá)式:2.按照上面的組合邏輯譯碼表寫出各信號的邏輯表達(dá)式:LDDR1=ADD*W2+SUB*W2+AND*W2+STA*W2LDDR2=ADD*W2+SUB*W2+AND*W2CEL#=STA*W3+LDA*W3+RRF2*W1+WRF2*W1+RRM2*W1+WRM2*W1CER#=RP2*W1+RRF2*W2+WRF2*W2LDAR#=STA*W2+LDA*W2+RRF*W3+WRF*W3+RRM*W3+WRM*W3AR+1=RRM2*W3+WRM2*W3LDPC#=JC*W3*C+RRF*W3+WRF*W3+RP*W3PC+1=(ADD+SUB+AND+STA+LDA+STP+OUT)*W3+JC*W2LDRi=ADD*W3+SUB*W3+AND*W3+LDA*W3+WRF2*W3LR/W#=STA*W3#+LDA*W3+RRF2*W1#+WRF2*W1#+RRM2*W1+WRM2*W1#LDIR=RP2*W1+RRF2*W2+WRF2*W2SW-BUS#=RRF*W3+RRF2*W1+WRF*W3+WRF2*(W1+W3)+RRM*W3+WRM*W3+WRM2*W1+RP*W3RS-BUS#=STA*W2+LDA*W2+JC*W3*C+OUT*W3+RRF2*W3RAM-BUS#=LDA*W3+RRM2*W1ALU-BUS#=ADD*W3+SUB*W3+AND*W3+STA*W3TJ=STP*W3+OUT*W3+RRF*W3+RRF2*W3+WRF*W3+WRF2*(W2+W3)+RRM2*W1+WRM*W3+WRM2*W3SKIP=RRF*W1+WRF*W1+RRM*W1+WRM*W1+RP*W1S3=ADD*W3+SUB*W3#+AND*W3+STA*W3S2=ADD*W3#+SUB*W3+AND*W3+STA*W3S1=ADD*W3#+SUB*W3+AND*W3+STA*W3S0=ADD*W3+SUB*W3#+AND*W3#+STA*W3M=ADD*W3#+SUB*W3#+AND*W3+STA*W3Cn#=SUB*W3#其中,以上各式右側(cè)所用變量展開成輸入信號的對應(yīng)關(guān)系如下:RRF0((NOTSTO)ANDSWCAND(NOTSWB)AND(NOTSWA))RRF1(STOANDSWCAND(NOTSWB)AND(NOTSWA))WRF0((NOTSTO)AND(NOTSWC)ANDSWBANDSWA)WRF1(STOAND(NOTSWC)ANDSWBANDSWA)RRM0((NOTSTO)AND(NOTSWC)ANDSWBAND(NOTSWA))RRM1(STOAND(NOTSWC)ANDSWBAND(NOTSWA))WRM0((NOTSTO)AND(NOTSWC)AND(NOTSWB)ANDSWA)WRM1(STOAND(NOTSWC)AND(NOTSWB)ANDSWA)RP0((NOTSTO)AND(NOTSWC)AND(NOTSWB)AND(NOTSWA))RP1 (STOAND(NOTSWC)AND(NOTSWB)AND(NOTSWA))ADD((NOTIR7)AND(NOTIR6)AND(NOTIR5)AND(NOTIR4))SUB((NOTIR7)AND(NOTIR6)AND(NOTIR5)ANDIR4)AND((NOTIR7)AND(NOTIR6)ANDIR5AND(NOTIR4))STA((NOTIR7)AND(NOTIR6)ANDIR5ANDIR4)LDA((NOTIR7)ANDIR6AND(NOTIR5)AND(NOTIR4))JC((NOTIR7)ANDIR6AND(NOTIR5)ANDIR4)STP ((NOTIR7)ANDIR6ANDIR5AND(NOTIR4))OUT((NOTIR7)ANDIR6ANDIR5ANDIR4)硬布線控制器指令周期流程圖RP.IOOOADDtWOOfSURiOCiQl)AND(CfllO}STA(OQII}STP(OIIO)QIJT(OIIIiRP.IOOOADDtWOOfSURiOCiQl)AND(CfllO}STA(OQII}STP(OIIO)QIJT(OIIIi說明:上圖為PPT中給出的參考硬連線控制器的指令周期流程圖。在本次試驗(yàn)中,選用3個節(jié)拍電位對大多數(shù)指令就夠用,所以節(jié)拍電位發(fā)生器產(chǎn)生3個點(diǎn)位信號(W1?W3)。對于所需節(jié)拍電位時間較多的指令如何處理,這里采用的是將一條機(jī)器指令的執(zhí)行化為占用兩條(或者更多)機(jī)器指令的節(jié)拍,例如執(zhí)行一條指令可以占用W1、W2、W3、W1、W2、W3六拍時間。為了區(qū)分一條指令的兩個不同階段,可用某些特殊的寄存器標(biāo)志將其區(qū)分,例如,F(xiàn)LAG=0時,表示該指令執(zhí)行第一個W1、W2、W3;FLAG=1時,表示該指令執(zhí)行第二個W1、W2、W3。由于有些控制臺指令只需要4拍,占用2條機(jī)器指令周期(6拍)則浪費(fèi)了時間。為了減少浪費(fèi),在時序電路中加入了一個控制信號SKIP的輸入,該信號的作用是使節(jié)拍發(fā)生器在任意狀態(tài)下直接跳到最后1拍(W3)。這樣,設(shè)計(jì)控制流程時,在所需節(jié)拍較少的指令流程適當(dāng)?shù)奈恢檬筍KIP控制信號有效,多余的節(jié)拍就可以跳過,從而提高了性能。控制模塊VHDL語言源程序(含注釋)LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYcpuISport(SWC,SWB,SWA,W1,W2,W3,CLRJ,C:INstd_logic;IR:INstd_logic_vector(7downto4);SKIP,SW_BUSJ,LDPCJ,TJ,CELJ,LRWJ,CERJ,LDIR,RS_BUSJ,LDARJ,RAM_BUSJ,ARpp,LDDR1,LDDR2,ALU_BUSJ,LDRi,PCpp,S3,S2,S1,S0,M,CnJ:OUTstd_logic;qx:OUTstd_logic_vector(0TO3調(diào)試時觀察STO,SWC,SWB,SWA的信號-固定管腳,使得以后編輯時無需重新拔插導(dǎo)線attributeLOC:string;-輸入管腳-反饋輸入管腳attributeLOCofC:signalis"P76”;--CLR#輸入管腳,平時為1,按下為0attributeLOCofCLRJ:signalis"P81”;--IR高4位輸入管腳attributeLOCofIR:signalis"P60P15P57P69”;-控制臺輸入管腳attributeLOCofA:Wdgnalis"P16”;attributeLOCofSWB:signalis"P9”;attributeLOCofSWC:signalis"P49”;-節(jié)拍輸入管腳attributeLOCofW1:signalis"P70”;attributeLOCofW2:signalis"P14”;attributeLOCofW3:signalis"P37";--輸出管腳--4個數(shù)據(jù)總線開關(guān)輸出管腳attributeLOCofALU_BUSJ:signalis"P10";attributeLOCofRAM_BUSJ:signalis"P48";attributeLOCofRS_BUSJ:signalis"P47";attributeLOCofSW_BUSJ:signalis"P26";--四寄存器控制輸出管腳attributeLOCofLDRI:signalis"P3";--ALU控制信號輸出管腳attributeLOCofS0:signalis"P73";attributeLOCofS1:signalis"P72";attributeLOCofS2:signalis"P71";attributeLOCofS3:signalis"P68";attributeLOCofM:signalis"P6";attributeLOCofCNJ:signalis"P5";--ALU運(yùn)算鎖存器控制輸出管腳attributeLOCofLDDR1:signalis"P45";attributeLOCofLDDR2:signalis"P46";--雙端存儲器控制輸出管腳attributeLOCofCELJ:signalis"P56";attributeLOCofCERJ:signalis"P55”;attributeLOCofLRWJ:signalis"P75";--存儲器程序計(jì)數(shù)器和地址寄存器控制輸出管腳attributeLOCofLDARJ:signalis"P29";attributeLOCofARpp:signalis"P59";attributeLOCofLDPCJ:signalis"P27";attributeLOCofPCpp:signalis"P4";--指令寄存器控制輸出管腳attributeLOCofLDIR:signalis"P52";--時序節(jié)拍控制輸出管腳attributeLOCofSKIP:signalis"P74";attributeLOCofTJ:signalis"P28";ENDcpu;--(實(shí)體)接口部分結(jié)束ARCHITECTUREinputoutput_signalofcpuIS--描述cpu功能signalssto:std_logic:='0';--sst0用來控制STO從0跳至1signalsto:std_logic:='0';--STO為0標(biāo)志在第1個W1W2W3,為1標(biāo)志為在第2個W1W2W3BEGINPROCESS(CLRJ,W3,W1,ssto)BEGINIF(CLRJ='0')THENsto<='0';ssto<='0';ELSIF(ssto='0'andW3'eventandW3='1')THENssto<='1';ELSIF(W1'eventandW1='1'andssto='1')THENsto<='1';ENDIF;ENDPROCESS;--qx(0?3)輸出管腳,用來查看STO,SWC,SWB,SWA,為便于調(diào)試。qx(0)<=sto;qx(1)<=SWC;qx(2)<=SWB;qx(3)<=SWA;SKIP<=(notstoor(SWBxorSWA))andW1;--SKIP有效時,跳至最后一拍,經(jīng)卡諾圖化簡后的表達(dá)式SW_BUSJ<=not((W1andstoand((SWCandnotSWBandnotSWA)or(notSWCandSWBandSWA)or(notSWCandnotSWBandSWA)))or(W3andnotstoand((SWCandnotSWBandnotSWA)or(notSWCandSWBandSWA)or(notSWCandSWBandnotSWA)or(notSWCandnotSWBandSWA)or(notSWCandnotSWBandnotSWA)))or(W3andstoandnotSWCandSWBandSWA));--SW-BUS狀態(tài)經(jīng)過大致化簡LDARJ<=not((((notstoandSWCandnotSWBandnotSWA)or(notstoandnotSWCandSWBandSWA)or(notstoandnotSWCandSWBandnotSWA)or(notstoandnotSWCandnotSWBandSWA))andW3)or(stoandnotSWCandnotSWBandnotSWAandnotIR(7)andIR(6)andnotIR(5)andnotIR(4)andW2)or(stoandnotSWCandnotSWBandnotSWAandnotIR(7)andnotIR(6)andIR(5)andIR(4)andW2));LDPCJ<=not((((notstoandSWCandnotSWBandnotSWA)or(notstoandnotSWCandSWBandSWA)or(notstoandnotSWCandnotSWBandnotSWA))andW3)or(stoandnotSWCandnotSWBandnotSWAandnotIR(7)andIR(6)andnotIR(5)andIR(4)andCandW3));TJ<=(W1andstoandnotSWCandSWBandnotSWA)or(W2andstoandnotSWCandSWBandSWA)or(W3andnotstoandSWCandnotSWBandnotSWA)or(W3andstoandSWCandnotSWBandnotSWA)or(W3andnotstoandnotSWCandSWBandSWA)or(W3andstoandnotSWCandSWBandSWA)or(W3andnotstoandnotSWCandnotSWBandSWA)or(W3andstoandnotSWCandnotSWBandSWA)or(W3andstoandnotSWCandnotSWBandnotSWAandnotIR(7)andIR(6)andIR(5));CELJ<=not((((stoandSWCandnotSWBandnotSWA)or(stoandnotSWCandSWBandSWA)or(stoandnotSWCandSWBandnotSWA)or(stoandnotSWCandnotSWBandSWA))andW1)or(stoandnotSWCandnotSWBandnotSWAandW3and((notIR(7)andIR(6)andnotIR(5)andnotIR(4))or(notIR(7)andnotIR(6)andIR(5)andIR(4)))));LRWJ<=(stoandnotSWCandSWBandnotSWAandW1)or(stoandnotSWCandnotSWBandnotSWAandW3andnotIR(7)andIR(6)andnotIR(5)andnotIR(4));CERJ<=not((((stoandSWCandnotSWBandnotSWA)or(stoandnotSWCandSWBandSWA))andW2)or(stoandnotSWCandnotSWBandnotSWAandW1));LDRi<=(stoandnotSWCandSWBandSWAandW3)or(stoandnotSWCandnotSWBandnotSWAandW3and((notIR(7)andnotIR(6)andnotIR(5)andnotIR(4))or(notIR(7)andnotIR(6)andnotIR(5)andIR(4))or(notIR(7)andnotIR(6)andIR(5)andnotIR(4))or(notIR(7)andIR(6)andnotIR(5)andnotIR(4))));LDIR<=(((stoandSWCandnotSWBandnotSWA)or(stoandnotSWCandSWBandSWA))andW2)or(stoandnotSWCandnotSWBandnotSWAandW1);RS_BUSJ<=not((stoandSWCandnotSWBandnotSWAandW3)or(stoandnotSWCandnotSWBandnotSWAand((notIR(7)andnotIR(6)andIR(5)andIR(4)andW2)or(notIR(7)andIR(6)andnotIR(5)andnotIR(4)andW2)or(W3andCandnotIR(7)andIR(6)andnotIR(5)andIR(4))or(notIR(7)andIR(6)andIR(5)andIR(4)andW3))));RAM_BUSJ<=not((stoandnotSWCandSWBandnotSWAandW1)or(stoandnotSWCandnotSWBandnotSWAandnotIR(7)andIR(6)andnotIR(5)andnotIR(4)andW3));ARpp<=W3andstoandnotSWCand(SWBxorSWA);LDDR1<=stoandnotSWCandnotSWBandnotSWAandW2andnotIR(7)andnotIR(6);LDDR2<=stoandnotSWCandnotSWBandnotSWAandW2and((notIR(7)andnotIR(6)andnotIR(5))or(notIR(7)andnotIR(6)andnotIR(5)andIR(4)));ALU_BUSJ<=not(stoandnotSWCandnotSWBandnotSWAandW3andnotIR(7)andnotIR(6));PCpp<=stoandnotSWCandnotSWBandnotSWAand((notIR(7)andnotIR(6)andW3)or(notIR(7)andIR(6)andIR(5)andW3)or(notIR(7)andIR(6)andnotIR(5)andnotIR(4)andW3)or(notIR(7)andIR(6)andnotIR(5)andIR(4)andW2));S0 <=W3andstoandnotSWCandnotSWBandnotSWAandnotIR(7)andnotIR(6)andnotIR(4);<=W3andstoandnotSWCandnotSWBandnotSWAand((notIR(7)andnotIR(6)andnotIR(5)andIR(4))or(notIR(7)andnotIR(6)andIR(5)andnotIR(4)));<=W3andstoandnotSWCandnotSWBandnotSWAandnotIR(7)andnotIR(6)andnotIR(5)andIR(4);<=W3andstoandnotSWCandnotSWBandnotSWAandnotIR(7)andnotIR(6)andnotIR(4);M<=W3andstoandnotSWCandnotSWBandnotSWAandnotIR(7)andnotIR(6)andIR(5)andnotIR(4);CnJ<=not(W3andstoandnotSWCandnotSWBandnotSWAandnotIR(7)andnotIR(6)andnotIR(5)andIR(4));ENDinputoutput_signal;
I=J模擬向量測試方程/測試波形圖/testbenchI=J進(jìn)行波形測試,以WRM(寫存儲器STO,SWC,SWB,SWA起始分別為0001)為例,結(jié)果如下:注意:W2時序由于SKIP的存在并沒有真正利用,而是直接跳過,但圖示中給出其應(yīng)出現(xiàn)的電平信號控制模塊原理圖硬布線控制器的基本原理:每個微操作控制信號都是一系列輸入量的邏輯函數(shù),即用組合邏輯電路來實(shí)現(xiàn),S=f(Im,Mi,Tk,Bj)其中Im是來自機(jī)器指令操作碼譯碼器的輸出信號,Mi是節(jié)拍點(diǎn)位信號,Tk是節(jié)拍脈沖信號,Bj是狀態(tài)條件判斷信號。在TEC-5實(shí)驗(yàn)系統(tǒng)中,Tk(T1~T4)已經(jīng)直接輸送給數(shù)據(jù)通路,Im即為指令系統(tǒng)的IR7~IR4信號,Mi即為節(jié)拍點(diǎn)位信號(W廣W3),Bj信號包括:來自數(shù)據(jù)通路中運(yùn)算器的僅為信號C;來自控制臺的開關(guān)信號SWC,SWB,SWA;每個控制信號都是上述輸入信號的邏輯表達(dá)式,所以可用組合邏輯構(gòu)造電路,對所有控制信號設(shè)計(jì)邏輯函數(shù)表達(dá)式即可。如CEL#=STA*W3+LDA*W3+RRF2*W1+WRF2*W1+RRM2*W1+WRM2*W1寫成VHDL語句即為CEL<=NOT(((((NOTIR7)AND(NOTIR6)ANDIR5ANDIR4)ANDW3)AND(STOAND(NOTSWC)AND(NOTSWB)AND(NOTSWA)))OR((((NOTIR7)ANDIR6AND(NOTIR5)AND(NOTIR4))ANDW3)AND(STOAND(NOTSWC)AND(NOTSWB)AND(NOTSWA)))TOC\o"1-5"\h\zOR((STOAND SWCAND(NOTSWB) AND (NOTSWA))AND W1)OR((STOAND (NOT SWC) AND SWB AND SWA)ANDW1)OR((STOAND (NOT SWC) AND SWB AND (NOTSWA))AND W1)OR((STOAND (NOT SWC) AND (NOTSWB)ANDSWA)AND W1));控制程序總圖設(shè)計(jì)說明書一、設(shè)計(jì)與調(diào)試任務(wù):設(shè)計(jì)并實(shí)現(xiàn)一臺具有9條指令的模型計(jì)算機(jī),其數(shù)據(jù)通路與TEC-5實(shí)驗(yàn)機(jī)的微程序控制器方案相同,但控制器要采用硬布線控制器。由于硬布線控制器大部分線路連線都在ispLSI1032芯片內(nèi)部,因此設(shè)計(jì)方案的優(yōu)劣主要取決于設(shè)計(jì)的思路和質(zhì)量。二、設(shè)計(jì)步驟:硬布線控制器的設(shè)計(jì)思路硬布線控制器要實(shí)現(xiàn)指令的控制功能,關(guān)鍵在于它的組合邏輯譯碼電路。譯碼電路的任務(wù)是將一系列有關(guān)指令、時序等的輸入信號,轉(zhuǎn)換為一個個控制信號,輸入到各執(zhí)行部件中。根據(jù)硬布線控制器的基本原理,針對每個信號S,可以列出它的譯碼函數(shù)S=f(Im,Mi,Tk,Bj)其中是機(jī)器指令I(lǐng)m機(jī)器指令操作譯碼的輸出信號,Mi是節(jié)拍信號發(fā)生器的節(jié)拍電位信號,Tk是時序信號發(fā)生器的時序脈沖信號,Bj是狀態(tài)條件判斷信號。在TEC-5計(jì)算機(jī)組成原理實(shí)驗(yàn)系統(tǒng)中,因?yàn)闀r序脈沖信號Tk(T1-T4)已經(jīng)直接輸送給數(shù)據(jù)通路,所以譯碼電路不需Tk作為輸入。又因?yàn)橹噶钕到y(tǒng)比較簡單,操作碼只有4位,不需要專門的操作碼譯碼器,因此Im直接就是操作碼,即指令寄存器的IR4-IR7信號。Mi就是時序模塊的節(jié)拍電位信號W1-W3。Bj包括:來自數(shù)據(jù)通路中的運(yùn)算器ALU的進(jìn)位信號C;來自控制臺的開關(guān)信號SWC,SWB,SWA;其他信號。每個控制信號的函數(shù)式都是上述輸入信號的邏輯表達(dá)式,因此可以用各種組合邏輯構(gòu)造電路網(wǎng)絡(luò),實(shí)現(xiàn)這些表達(dá)式的邏輯功能。理論上,只要所有控制信號都設(shè)計(jì)出譯碼函數(shù),這個硬布線控制器的方案也就得到了。指令周期流程圖設(shè)計(jì)硬布線控制器的設(shè)計(jì)流程就是解決Im,Mi,Bj如何起作用的問題,可以使用流程圖的方法。硬布線控制器以節(jié)拍為時間單位,一拍是從時序T1的上升沿到T4的下降沿的一段時間。在流程圖中一個執(zhí)行框就代表一拍。但相較于微程序設(shè)計(jì),還有一些需要考慮的因素。⑴執(zhí)行一條機(jī)器指令的節(jié)拍數(shù)執(zhí)行一條機(jī)器指令所需要的微指令數(shù)目在硬布線控制器中相當(dāng)于機(jī)器指令所需的節(jié)拍數(shù)。決定執(zhí)行一條指令需要的節(jié)拍數(shù)要根據(jù)所有指令而定,在本實(shí)驗(yàn)中,由于選用4拍對大多數(shù)指令就夠了,所以節(jié)拍發(fā)生器產(chǎn)生3個節(jié)拍信號(W1-W3)。對于需要節(jié)拍少的指令,在設(shè)計(jì)控制流程,對于所需節(jié)拍較少的指令流程的適當(dāng)位置使SKIP控制信號有效,那么對于的節(jié)拍可以跳過,提高的性能。對于需要節(jié)拍多的指令,可以有兩種方法,一是修改時序電路,采用變節(jié)拍的方式實(shí)現(xiàn),二是將一條機(jī)器指令的執(zhí)行化為占用兩條或更多的機(jī)器指令節(jié)拍。⑵控制臺操作的問題機(jī)器指令的執(zhí)行流程設(shè)計(jì)出來后,還要有控制臺操作。這部分屬于機(jī)器指令系統(tǒng),而又要完成機(jī)器指令那樣以不超過3拍的時間來執(zhí)行,以便與機(jī)器指令的執(zhí)行方式統(tǒng)一起來。不同于微程序通過微程序地址記住處于控制臺狀態(tài)還是程序運(yùn)行狀態(tài),在硬布線控制器中就要設(shè)置一個或幾個標(biāo)志來記錄當(dāng)前狀態(tài)。根據(jù)這個標(biāo)志可以區(qū)分控制臺初始狀態(tài)、控制臺讀內(nèi)存、控制臺寫內(nèi)存、程序運(yùn)行狀態(tài)。硬布線控制器使用ISP技術(shù),則控制器的電路設(shè)計(jì)完全是在開發(fā)軟件上進(jìn)行的,只要在計(jì)算機(jī)上面畫出電路的原理圖,編寫好必要的程序,軟件會自動完成控制器內(nèi)部的聯(lián)線控制,無需自己去接線。設(shè)計(jì)出硬布線控制流程圖后,就可以據(jù)此設(shè)計(jì)出譯碼邏輯電路。先根據(jù)流程圖列出譯碼表,作為邏輯設(shè)計(jì)的依據(jù)。根據(jù)譯碼表可以寫出每個控制信號的邏輯表達(dá)式,這個表達(dá)式就是它所在的行各乘積項(xiàng)相加。在編寫譯碼表的過程中要注意綜合和化簡,可以考慮增加冗余項(xiàng)將相似信號合并為一個信號。三、實(shí)驗(yàn)過程:在準(zhǔn)備好數(shù)據(jù)通路圖和指令周期流程圖后,做出組合邏輯譯碼表,接著在編程軟件中根據(jù)譯碼表寫出每個控制信號的邏輯表達(dá)式,本次試驗(yàn)比較重點(diǎn)的地方在于信號變量SST0的變化控制,當(dāng)按下CLEAR時,此時要保證STO為0,而在程序連續(xù)運(yùn)行的過程中,要保證在SST0控制下,STO可以在多于三拍的控制命令的后期變化為1。在解決了上述兩個方面問題(即每個控制信號的邏輯表達(dá)式的寫法和SST0控制部分)后,編譯程序,下載程序到TEC-5系統(tǒng)中,按照管腳分配進(jìn)行連線并開始測試,對出現(xiàn)的時序問題和錯誤管腳電平信號進(jìn)行檢查和修改,并再次編譯下載程序直至調(diào)試過程無錯誤產(chǎn)生,保證全部控制流程圖檢查完畢并保證數(shù)據(jù)通路的執(zhí)行部件功能正確。接著編寫一段包括有全部指令系統(tǒng)的測試程序并將程序和有關(guān)數(shù)據(jù)寫入TEC-5系統(tǒng),分別用連續(xù)和DB方式運(yùn)行,對出現(xiàn)的結(jié)果進(jìn)行檢查,以驗(yàn)證機(jī)器執(zhí)行指令的正確性。最后編寫一段表演程序,令機(jī)器執(zhí)行并接受驗(yàn)收。在整個編寫程序、下載調(diào)試、檢查驗(yàn)收過程中,隨時記錄出現(xiàn)的問題和存在的疑問并著手解決,最終寫入相應(yīng)文檔中。對應(yīng)的操作指令系統(tǒng)如下:算邏運(yùn)算R-R訪存
R-S法法輯數(shù)數(shù)
加減邏存取其他停機(jī)輸出助記符ADDRbjRsSUBRd.RsANDRd,RsSTARd.[Rs]UJARd,[Rs]JCR3STPOUT算邏運(yùn)算R-R訪存
R-S法法輯數(shù)數(shù)
加減邏存取其他停機(jī)輸出助記符ADDRbjRsSUBRd.RsANDRd,RsSTARd.[Rs]UJARd,[Rs]JCR3STPOUTRs功能Rd+Rs*>RdRd-Rs今RdRd&Rs今RdRd今[Rs][Rs]今Rd若SI則R3今FC
暫停運(yùn)行Rs-^DBUSR700000R600001R500110R401010指令格式R2RSIRSIRSIRSIRSIR3RSORSORSORSORSOR1ran皿iran皿iR0RD。RDORDORDORDOXRSIXRSO操作流程為:地址指令功能機(jī)器代碼寄存器內(nèi)容內(nèi)存單元R0R1R2R360H61H83H00HLDAR0,[R2][R2]一R00100100024HX60H61H24H83HX01HLDAR1,[R3][R3]一R10100110124H83H60H61H24H83HX02HADDR0,R1R0+R1-R000000100A7H83H60H61H24H83HX03HJCR2若C=1,則R3一PC01011000A7H83H60H61H24H83HX04HANDR1,R0R1&R0一R100100001A7H83H60H61H24H83HX05HSUBR0,R3R0-R3一R00001110046H83H60H61H24H83HX06HSTAR0,[R1]R0TR1]0011010046H83H60H61H24H83H46H07HOUTR0R0—DBUS0111000046H83H60H61H24H83H46H08HOUTR1R1一DBUS0111010046H83H60H61H24H83H46H09HSTP暫停執(zhí)行0110000046H83H60H61H24H83H46H實(shí)驗(yàn)結(jié)果:(R0)=46H,(R1)=83H,(R2)=60H,(R3)=61H,[83H]=46H。四、實(shí)驗(yàn)結(jié)論和總結(jié):根據(jù)硬連線控制器的相關(guān)理論基礎(chǔ),通過將程序控制器流程圖編寫為相應(yīng)的VHDL程序并下載到TEC-5系統(tǒng)中正確運(yùn)行,實(shí)現(xiàn)了硬連線控制器的控制功能,完成了實(shí)驗(yàn)任務(wù)。證明了硬連線控制器理論的正確性,提高了動手操作能力和解決問題的能力,增加了相關(guān)實(shí)驗(yàn)經(jīng)驗(yàn)。設(shè)計(jì)與調(diào)試小結(jié)設(shè)計(jì)硬布線控制器,先根據(jù)設(shè)計(jì)好的硬布線控制器的指令周期流程圖,分別列出每條控制信號的邏輯表達(dá)式,這部分設(shè)計(jì)主要是和時序中的W1-W3有關(guān)。在列寫邏輯表達(dá)式及編程下載調(diào)試過程的出現(xiàn)的問題:在JC跳轉(zhuǎn)指令中,需要通過C進(jìn)位來判斷下一條指令是跳轉(zhuǎn)還是順序執(zhí)行,這個C應(yīng)該如何編寫?解決方案:C是ALU的運(yùn)算進(jìn)位信號,在編碼時候要考慮進(jìn)去,就像時序W一樣與在邏輯表達(dá)式中,就和IR7-4和SW3-0一樣是多路選擇的條件。在ALU功能表中沒有A-B運(yùn)算,應(yīng)該如何處理?解決方案:ALU的邏輯功能表中算術(shù)運(yùn)算部分又分為兩行,一行是Cn#=0,另一行是Cn#=1,Cn#是一個強(qiáng)制進(jìn)位,低電平有效,當(dāng)Cn#=1時,產(chǎn)生強(qiáng)制進(jìn)位,則運(yùn)算出的A-B-1再加上末位的強(qiáng)制進(jìn)位之后正好輸出的就是A-B,而在編寫其他功能比如A+B時,則還是讓Cn#=0不產(chǎn)生強(qiáng)制進(jìn)位。即Cn#也是一控制信號,需要編寫到程序當(dāng)中。對于像LR/W#之類的信號,高低電平代表不同的意思時怎么編邏輯表達(dá)式?解決方案:還是只看為1有效的情況,為0的情況不用寫入邏輯表達(dá)式的或中,否則會出現(xiàn)只有在全部都為0有效時結(jié)果才會為0,而這種情況是不可能出現(xiàn)的,導(dǎo)致LR/W
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 11-1《諫逐客書》教學(xué)設(shè)計(jì) 2023-2024學(xué)年統(tǒng)編版高中語文必修下冊
- 吉林省四平市普通高中2023-2024學(xué)年高二上學(xué)期期中考試地理試題(解析版)
- 2024業(yè)務(wù)員的個人工作計(jì)劃(34篇)
- 2025至2030年中國提花搖粒布數(shù)據(jù)監(jiān)測研究報告
- 2025屆高考生物備考教學(xué)設(shè)計(jì):第三章 細(xì)胞代謝之光合作用與呼吸作用的關(guān)系
- 太陽能熱電聯(lián)產(chǎn)經(jīng)濟(jì)效益分析
- 商務(wù)英語閱讀第一單元
- 陜西食品保健食品
- MiniLED與傳統(tǒng)LED技術(shù)對比
- Module 12 Save our world Unit 1 教學(xué)設(shè)計(jì) 2024-2025學(xué)年外研版九年級英語上冊
- 《養(yǎng)老保險的理念》課件
- LY/T 3400-2024荒漠與荒漠化防治術(shù)語
- 2024-2025學(xué)年第二學(xué)期英語教研組工作計(jì)劃
- 2025年往年教師職稱考試試題
- 山東省海洋知識競賽(初中組)考試題庫500題(含答案)
- 幼兒園開學(xué)前的廚房人員培訓(xùn)
- 《幼兒教育政策與法規(guī)》教案-單元6 幼兒園的工作人員
- 虛擬制片技術(shù)在VRAR應(yīng)用中的角色建模與渲染-洞察分析
- 2024年山東商務(wù)職業(yè)學(xué)院高職單招語文歷年參考題庫含答案解析
- GB/T 45167-2024熔模鑄鋼件、鎳合金鑄件和鈷合金鑄件表面質(zhì)量目視檢測方法
- 2023年東北公司加油站賬務(wù)人員考試題庫
評論
0/150
提交評論