




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 *實踐教學* 計算機與通信學院2011年春季學期計算機組成原理課程設計題 目: 模型機設計5 專業(yè)班級: 08級計算機科學與技術(5)班 姓 名: 學 號: 08240539 指導教師: 成 績: 前 言通過對計算機組成原理及實驗的學習,設計14條機器指令,并編寫相應的微程序,完成由基本單元電路構成一臺基本模型機,再經(jīng)過調試指令和模型機使其在微程序的控制下自動產(chǎn)生各部件單元的正常工作控制信號。在設計基本模型機5的實驗過程中,個別部件單元的控制信號是人為模擬產(chǎn)生的,而本課程設計將能在微程序控制下自動產(chǎn)生各部件單元控制信號,實現(xiàn)特定指令的功能。這里,計算機數(shù)據(jù)通路的控制將由微程序控制器來完成,c
2、pu從內存中取出一條機器指令到指令執(zhí)行結束的一個指令周期,全部由微指令組成的序列來完成,即一條機器指令對應一條微程序。本課程設計以dvcc計算機組成原理教學實驗系統(tǒng)為平臺設計完成。1、 根據(jù)任務要求設計整機系統(tǒng)的方案。2、 存儲系統(tǒng):使用模型機的存儲模塊,說明存儲器的輸入輸出時序,模塊連接方式等。3、 運算器:使用模型機的器件,組成帶有片間串行進位8位移位運算功能的運算器。4、 微程序控制器模塊:使用教學機的系統(tǒng),設計微程序控制器。5、 設計模型機指令系統(tǒng):(含設計微指令格式、微程序流程圖,每條指令所對應的微程序等)。6、 了解并說明教學模型機的輸入輸出模塊。7、 在自己設計的指令系統(tǒng)基礎上,
3、編制一個匯編語言小程序并進行調試通過。8、 整機設計分模塊進行,說明模塊中數(shù)據(jù)和控制信號的來源、去向、功能、時序,以及模塊間數(shù)據(jù)和控制信號的來源、去向、功能、時序等。本設計的規(guī)定項目采用14條機器指令:in.out.sta.lda.jmp.bzc.clr.mov.cmp.sub.dec.hlt.rrc.rlc。摘 要本次課程設計課題是基本模型機的設計與實現(xiàn),該設計要求根據(jù)計算機組成原理課程所學知識,設計、開發(fā)一套簡單的模型計算機。通過對一個簡單計算機的設計,以達到對計算機的基本組成、部件的功能與設計、微程序控制器的設計、微指令和微程序的編制與調試等過程有更深的了解,加深對理論課程的理解。通過模
4、型機的設計和調試,連貫運用計算機組成原理課程學到的知識,建立計算機整機概念,加深計算機時間和空間概念的理解。部件實驗過程中,本課程設計將能在微程序控制下自動產(chǎn)生各部件單元的控制信號,實現(xiàn)特定指令的功能,通過設計流程圖,編寫機器指令,微指令和控制信號程序。首先向存儲器中裝入數(shù)據(jù)和程序,然后檢查寫入是否正確,啟動程序執(zhí)行,并將實驗結果顯示輸出。關鍵詞:模型機 運算器 存儲系統(tǒng) 指令系統(tǒng) 微程序指令目錄前 言2摘 要3一 設計的目的及設計原理41 設計的目的42 設計的原理5二 總體設計9三 詳細設計131 運算器的物理結構132 存儲器的組成與說明143 指令系統(tǒng)的設計與格式分析154 微程序控制
5、器的邏輯機構及功能255 微程序的設計與實現(xiàn)27四.系統(tǒng)調試報告33五 設計總結36六 設計(論文)的主要參考文獻37七 致謝38一 設計的目的及設計原理1 設計的目的計算機組成原理課程設計是“計算機組成原理”課程的后續(xù)設計性課程,通過設計一臺模型計算機,可更好地理解計算機組成原理課程的基本內容,掌握模型計算機設計與實現(xiàn)的基本方法,培養(yǎng)實驗動手能力和創(chuàng)新意識,為以后進行計算機應用系統(tǒng)的設計與開發(fā)奠定基礎。設計一個8位模型計算機系統(tǒng),包括運算器,微程序控制器,存儲器,簡單輸入輸出接口和設備,時序和啟??刂频入娐?。定義一套簡單的指令系統(tǒng),制定系統(tǒng)的設計方案和實現(xiàn)方法,畫出所設計的模型機系統(tǒng)的電路原
6、理圖。在計算機組成原理與系統(tǒng)結構實驗系統(tǒng)上搭建模型計算機系統(tǒng),完成微程序控制器的實驗調試過程,并用所設計的指令系統(tǒng)編寫一個實現(xiàn)簡單功能的程序,在搭建的模型機系統(tǒng)上輸入、調試和運行程序。最后總結實驗結果,完善所設計的模型機系統(tǒng)方案和電路圖,寫出設計報告。2 設計的原理(1)基本模型機的設計與實現(xiàn)部件實驗過程中,各部件單元的控制信號是人為模擬產(chǎn)生的,而本次實驗將能在微程序控制下自動產(chǎn)生各部件單元控制信號,實現(xiàn)特定指令的功能。這里,計算機數(shù)據(jù)通路的控制將由微程序控制器來完成,cpu從內存中取出一條機器指令到指令執(zhí)行結束的一個指令周期全部由微指令組成的序列來完成,即一條機器指令對應一個微程序。此基本模
7、型機的設計主要包括存儲器、運算器、輸入/輸出設備、微控器和指令系統(tǒng)五個模塊組成。其中運算器主要由運算器u3、u4(74ls181)、暫存器u1、u2(74ls273)、輸出緩沖器u5(74ls245)、移位器(74ls299)以及進位控制和判零標志控制電路等構成。存儲器存儲該主存儲器采用一級cache-存儲器結構。輸入/輸出設備主要有兩種外部i/o設備,一種是鍵盤,它作為輸入設備input;另一種是字符顯示塊,它作為輸出設備output??刂破魉饕煽刂拼鎯ζ鳌⑽⒅噶罴拇嫫骱偷刂忿D移邏輯三大部分組成,其中微指令寄存器分為微地址寄存器和微命令寄存器兩部分。一臺計算機中所有機器指令的集合,成為這
8、臺計算機的指令系統(tǒng),它是計算機系統(tǒng)設計的一個核心問題,它不僅與計算機的硬件結構緊密相關,而且直接關系到用戶的使用需要。指令從內存中讀出,首先放到ir指令寄存器中,再送入到微控器中進行譯碼,再由微控器輸出各種控制信號給各功能部件,執(zhí)行相應的操作。指令和數(shù)據(jù)統(tǒng)統(tǒng)放在內存中,從形式上看,它們都是二進制代碼,。一般來講,取值周期從內存中讀出的信息流是指令流,它指向控制器;而在執(zhí)行周期中從內存中讀出的信息流是數(shù)據(jù)流,它由內存流向運算器。指令從存儲器中得到,送到指令寄存器中。由指令得到相應的控制信號,從控制器輸出控制信號來控制計算機的運行。(2)各模塊功能為:a.存儲器存儲器的功能是保存或“記憶”各種數(shù)據(jù)
9、。在存放到存儲器以前,他們全部變成0或1表示的二進制代碼。采用半導體器件來存放大量的0,1.一個半導體觸發(fā)器由于有0和1兩種狀態(tài),可以記憶一個二進制代碼。一個數(shù)據(jù)假定用8位二進制代碼來表示,那么就需要8各觸發(fā)器來保存這些代碼。通常,在存儲器中保存一個數(shù)的8個觸發(fā)器稱為一個存儲單元。存儲器是由許多存儲單元組成的,每一個存儲單元都有編號,稱為地址。存儲器的所有存儲單元的總數(shù)稱為存儲器的存儲容量。b.運算器運算器就好像是一個由電子線路構成的算盤,它的主要功能就是進行加、減、乘、除等運算。還可以進行邏輯運算。電子器件的特性,計算機中通常采用二進制數(shù)。其運算規(guī)律非常簡單。0+0+0,0+1=1,1+0=
10、1,1+1=10,00=0,01=0,10=0,11=1。該模塊中算術運算是由2片74ls181構成,是運算器的核心。74ls181功能表如表1-1所示 表1-1 74ls181功能表4位alus3 s2 s1 s0m0(算術運算)m1 (邏輯運算)cn=1 無進位cn=0 有進位l l l ll l l hl l h ll l h hl h l ll h l hl h h ll h h hh l l lh l l hh l h lh l h hh h l lfafa+bfa+/bf2的補fa加(a*/b)f(a+b)加(a*/b)fa減b減1f(a*/b)減1fa加a*bfa加bf(a+/b
11、)加a*bfa*b減1fa加afa加1f(a+b)加1f(a+/b)加1f0 fa加(a*/b)加1f(a+b)加(a*/b)加1 fa減b f(a*/b) fa加ab加1fa加b加1f(a+/b)加a*b加1fab fa加a加1 f/af/(a+b) f/a*b f0 f/(a*b) f/b f(a b) f(a*/b) f/a+b f/(a b) fbfab f=1 進位輸入信號來自于兩個方面:其一對運算器74ls181的進位輸出/cn+4進位倒相所得cn4;其二由移位寄存器74ls299的選擇參數(shù)s0、s1、aq0、aq7決定所得,移位寄存器74ls299主要用于帶進位左、右移位操作。c
12、.控制器控制器是計算機中發(fā)號施令的部件,它控制計算機的各部件有條不紊的進行工作。更具體地講,控制器的任務就是從內存中取出解題步驟加以分析,然后執(zhí)行某種操作。d.輸入/輸出設備 本系統(tǒng)有兩種外部i/o設備,一種是鍵盤,它作為輸入設備input;另一種是字符顯示塊,它作為輸出設備output。e.指令系統(tǒng)指令系統(tǒng)控制計算機系統(tǒng)有條不紊的工作f.寄存器介紹 指令寄存器用來保存當前正在執(zhí)行的一條指令。當執(zhí)行一條指令時,先把它從內存取到緩沖寄存器中,然后再傳送到指令寄存器。指令劃分為操作碼和地址碼字段,由二進制構成,為了執(zhí)行任何一條給定的指令,必須對操作碼進行測試p(1),通過節(jié)拍脈沖t4的控制以便識別
13、所要求的操作。“指令譯碼器”根據(jù)指令中的操作碼進行譯碼,強置微控器單元的微地址,使下一條微指令指向相應的微程序首地址。數(shù)據(jù)寄存器用來存放從內存中讀出的數(shù)據(jù)或是從輸入設備輸入的數(shù)據(jù),然后將數(shù)據(jù)送到運算器等功能部件,起了暫存的作用。pc為指令指針計數(shù)寄存器,用來存放下一條將要執(zhí)行指令的地址。sp為堆棧指針計數(shù)寄存器,用來在堆棧尋址方式中指示棧頂指針的位置。(3)帶移位運算的模型機的設計與實現(xiàn) 在基本模型機的基礎上搭接移位控制電路,實現(xiàn)移位控制運算。實驗中新增4條移位運算指令:rl(左環(huán)移)、rlc(帶進位左環(huán)移)、rr(右環(huán)移)、rrc(帶進位右環(huán)移),其指令格式如下: 操作碼 rr 010100
14、00 rrc 01100000 rl 01110000 rlc 10000000以上4條指令都為單字長(8位)。rr為將r0寄存器中的內容循環(huán)右移1位。rrc為將r0寄存器中的內容帶進位右移1位,它將r0寄存器中的數(shù)據(jù)右邊第1位移入進位,同時將進位寄存器的數(shù)移至r0寄存器的最左位。rl為將r0寄存器中的數(shù)據(jù)循環(huán)左移1位。 rlc為將r0寄存器中的數(shù)據(jù)帶進位循環(huán)左移1位。為了向ram中裝入程序和數(shù)據(jù),檢查寫入是否正確,并能啟動程序執(zhí)行,還設計了3個控制臺操作微程序。存儲器讀操作(krd):撥動總清開關clr后,控制臺開關swb,swa為“00”時,按start啟動紐,可對ram連續(xù)手動讀操作。存
15、儲器寫操作(kwe):撥動總清開關clr后,控制臺開關swb,swa置為“01”時,按動start啟動紐可對ram進行連續(xù)手動寫入。啟動程序:撥動總清開關clr后控制臺開關swb,swa置為“11”時,按動啟動鍵,即可轉入到第01號“取址”微指令上述三條控制臺指令用兩個開關swb、swa的狀態(tài)來設置,其定義如下表1-2: 表1-2swb swa 控制臺指令001011讀內存(krd)寫內存(kwe)啟動程序(rp) 二 總體設計本次實驗將能在微程序控制下自動產(chǎn)生各部件單元的控制信號,實驗特定指令的功能。在制定設計方案的時候,首先要理解所設計的模擬機各個部件的作用及功效,弄清楚他們可以干什么,怎
16、么樣去干。這樣才能更好的完成設計達到我們設計的目的和通過實驗所要繼續(xù)深化的知識點。計算機數(shù)據(jù)通路的控制是由微程序控制器來實現(xiàn)的,cpu從內存中取出一條機器指令到指令執(zhí)行結束的一個指令周期全部由微指令組成的序列來完成,即一條機器指令對應一個微程序。而每一條微指令都是由我們自己根據(jù)cpu要完成的功能設計的。總體設計框圖如下:實驗儀的總體結構框圖(圖1-1)(1)控制信號說明:1s3,s2,s1,s0 有微程序控制器輸出的alu操作選擇信號,以控制執(zhí)行16種算術操作或16種邏輯操作中的一種操作。2m 微程序控制器輸出的alu操作方式選擇信號端,m0執(zhí)行算術操作;m1執(zhí)行邏輯操作。3/cn 微程序控制
17、器輸出的進位標志信號。/cn0表示alu運算時最低位加進位1;/cn1則表示無進位。4alubus 微程序控制器的輸出信號,控制運算器的運算結果是否送到總線bus,低電平有效。5lddr1 微程序控制器的輸出信號,控制把總線上的數(shù)據(jù)打入運算暫存器dr1。6lddr2 微程序控制器的輸出信號,控制把總線上的數(shù)據(jù)打入運算暫存器dr2。7rbus 微程序控制器的輸出信號,控制寄存器r0的內容是否送到總線bus,低電平有效。8ldr 微程序控制器的輸出信號,控制把總線上的數(shù)據(jù)打入寄存器r0。9pcbus 微程序控制器的輸出信號,控制程序計數(shù)器的內容是否送到總線bus,低電平有效。10ldpc 微程序控
18、制器的輸出信號,控制pc加1。11ldar 微程序控制器的輸入信號,將程序計數(shù)器的內容打入到地址寄存器ar中,產(chǎn)生ram的地址。12ldir 微程序控制器的輸出信號,控制把總線上的數(shù)據(jù)(指令)輸入到指令寄存器ir中。13swbus 微程序控制器的輸出信號,控制8位數(shù)據(jù)開關sw7sw0的開關量是否送到總線,低電平有效。14out 微程序控制器的輸出信號,控制和數(shù)據(jù)總線上的數(shù)據(jù)是否送到發(fā)光二極管上,低電平有效。(2)框圖部件概述:1.運算器(使用可編程器件74ls181實現(xiàn)):運算器是用來完成各種運算的部件,通常將運算分成算術運算和邏輯運算兩大類:算術運算是指需要考慮進位的加、減、乘、除運算。邏輯
19、運算是指位對位的運算。運算器中除了包含一個能完成算術和邏輯運算功能的算術邏輯運算單元(alu)之外,還要有可存放參加運算的操作數(shù)和運算結果的寄存器,以及在它們之間傳送數(shù)據(jù)的通道。2.微程序控制器:控制器是整個系統(tǒng)的指揮中心,由它向系統(tǒng)內的各個部件發(fā)出各種控制命令,使系統(tǒng)構成一個有機的整體。通常將運算器和控制器合起來稱之為“中央處理器”簡稱cpu。3.存儲器:存儲器主要由6116芯片及相應的緩沖芯片和控制線路實現(xiàn)的。存儲器是用來存放各類信息的部件,所有能在機內運行的程序和所需的數(shù)據(jù)都要存放在存儲器中,通常被稱作主存儲器或內存儲器。一般說來,主存儲器的容量越大,計算機功能越強。通常將cpu和主存儲
20、器合起來稱之為計算機的“主機”。4.簡單輸入輸出設備:輸入由鉛筆開關實現(xiàn),輸出由發(fā)光晶體管組成。輸入設備是用來完成輸入功能的部件。所有需要輸入到機內的程序或數(shù)據(jù),都是經(jīng)輸入設備輸入的。輸出設備是用來完成輸出功能的部件,所有需要從計算機內輸出的運算結果或在機內運行的程序、數(shù)據(jù)均可通過輸出設備輸出。 三 詳細設計1 運算器的物理結構運算器模塊主要由運算器u31、u32(74ls181)、暫存器u29、u30(74ls273)、輸出緩沖器u33(74ls245)以及進位控制和判零標志控制電路等構成。 運算器物理結構(圖3-1)下面以8位機為例說明運算器模塊的工作原理:該模塊中算術運算是由2片74ls
21、181(u31、u32)構成,它是運算器的核心。它可以對兩個8位的二進制數(shù)進行多種算術或邏輯運算,具體由74ls181的功能控制條件m、cn、s3、s2、s1、s0來決定,詳見表11。兩個參加運算的數(shù)分別來自于暫存器u29和u30,運算結果直接輸出到輸出緩沖器u33,由輸出緩沖器發(fā)送到系統(tǒng)的數(shù)據(jù)總線上,以便進行移位操作或參加下一次運算。運算器是在 alu unit 單元電路上進行 ,控制信號、數(shù)據(jù)、時序信號由實驗儀的邏輯開關電路和時序發(fā)生器提供。 sw7sw0 八個邏輯開關用于產(chǎn)生數(shù)據(jù),由bussw控制發(fā)送到總線上。dr1,dr2 為運算暫存器 ,lddr1,lddr2為運算暫存器的輸入控制信
22、號,將總線上的數(shù)據(jù)輸入到暫存器 drl,dr2;通過 s3、s2、sl、s0、m、/cn 的選擇,可實現(xiàn)對 alu 算術操作和邏輯操作。在busalu控制信號作用下將運算結果送到總線 bus上。s3、s2、s1、s0、m、/cn、lddr1、 lddr2、busalu信號、bussw信號,本次實驗中這些控制信號與對應邏輯開關都已接好,由邏輯開關模擬這些控制信號 。 lddr1、lddr2由t4 信號進行定時。當t4信號上升沿到來時 lddr1、lddr2 才起作用。2 存儲器的組成與說明主存儲器單元電路主要用于存放實驗機指令,它的數(shù)據(jù)總線掛在外部數(shù)據(jù)總線exd0exd7上。它的地址總線由地址寄
23、存器單元的地址寄存器74ls245(u37)給出,地址值由8個led燈lad0lad7顯示,高電平亮,低電平滅;在手動方式下,輸入數(shù)據(jù)由8位數(shù)據(jù)開關kd0kd7提供,并進一三態(tài)門74ls245(u51)連至外部數(shù)據(jù)總線exd0exd7,實驗時將外部數(shù)據(jù)總線的exd0exd7用8芯排線練到內部數(shù)據(jù)總線busd0busd7,分時給出地址和數(shù)據(jù)。它的讀信號直接就地;它的寫信號和片選信號由寫入方式確定。該存儲器中機器指令的讀寫分別控制cpu的p1.2提供,片選信號由控制cpu的p1.1提供。由于地址寄存器為8位,故接入6264的地址為a0a7,而高4位a8a12接地,所以其實際使用容量為256字節(jié)。6
24、264有控制線:cs1 第一片選線,cs2第二片選線,oe 讀線,we 寫線。cs1 片選線由w/r控制,cs2直接+5v.信號線ldar由開關ldar提供,手動方式實驗時,跳線器ldar撥在左邊,脈沖信號t3由實驗機上時序電路模式ts3提供,實驗時只需j22跳線器連上即可,t3的脈沖寬度可調。原理圖如下: (圖3-2) 存儲器原理圖3 指令系統(tǒng)的設計與格式分析1 指令系統(tǒng)的設計與格式:(1)數(shù)據(jù)格式 模型機規(guī)定采用定點補碼表示法表示數(shù)據(jù),且字長為8位,其格式如下: 表3-1 d7 d6 d0符號尾數(shù)其中第7位為符號位,數(shù)值表示范圍是:1x1。 (2)指令格式 本模型機共有13條基本指令,其中
25、算術運算類指令4條(add、sub、move、clr),訪問內存指令和程序控制指令4條(sta、lda、jmp、bzc),i / o指令2條(in、out),位操作指令3條(and、or、xor),各指令格式如下所示。1) 算術邏輯指令 設計4條算術運算指令(add、sub、move、clr)并用單字節(jié)表示,尋址方式采用寄存器直接尋址,其格式如下: 表3-2 d7 d4 d3 d2 d1 d0 op-codersrd其中,opcode為操作碼,rs為源寄存器,rd為目的寄存器,并規(guī)定: 表3-3 rs或rd選定的寄存器000110r0r1r22) 訪問內存指令和程序控制指令 模型機設計訪問內存
26、指令和程序控制指令4條(存數(shù)sta、取數(shù)lda、無條件轉移jmp、有進位轉移指令bzc)。指令格式為: 表3-4 d7 d6 d5 d4 d3 d2 d1 d00 0mop-coderdd其中,opcode 為操作碼,rd為目的寄存器地址(lda、sta 指令使用)。d為位移量(正負均可),m為尋址模式,其定義如下: 表3-5 m有效地址說明00011011e=de=(d)e=(ri)+de=(pc)+d直接尋址間接尋址ri變址尋址相對尋址 本模型機規(guī)定變址ri指定為寄存器r2。 3) i / o指令 輸入in和輸出out指令采用單字節(jié)指令,其格式如下:表3-6 d7 d4 d3 d2 d1
27、d0op-codeaddrrdaddr=01時,選中鍵盤作為輸入設備;addr=10時,選中字符顯示器作為輸出設備。(3)預設指令:a: in為單字節(jié)長指令,含義是將輸入設備輸入的數(shù)據(jù)放入r0中 指令格式: in r0, inputdevice 指令功能:“inputdevice”-r0b: out為單字節(jié)長指令,含義是根據(jù)指令提供的地址,將內存中的數(shù)據(jù)取出由數(shù)碼管進行顯示。指令格式:out bus,(add)指令功能:將內存中的add為地址的數(shù)據(jù)讀到總線上。c:sta為雙字節(jié)長指令,第二個字節(jié)是要存放的地址,含義是將r0中的內容存儲到第二字為地址的內存單元中。指令格式:sta(add),r0
28、指令功能:將r0寄存器的內容存到以add為地址的內存單元中。d:lda為雙字節(jié)指令,含義是將內存單元的地址存儲于r0中。指令格式:lda 指令功能:ram-r0e: jmp為雙字節(jié)長指令,含義是使程序跳轉到指定的地址執(zhí)行。 指令格式:jmp (jmp) 指令功能:ram-pcf:bzc為單字長指令,其中m為尋址模式字段,d為偏移地址。 指令格式:bzc m,d指令功能:當cy=1或zi=1,e-pcg:clr系統(tǒng)總清開關,低電平有效。 指令格式:clr r0 指令功能:r0=0 h:mov是雙字節(jié)長指令,第二字節(jié)是要存放的間接地址,含義是將r0中的內容存儲到第二字為間接地址的內存單元中。 指令
29、格式:mov ax,r0 指令功能:(ax)=r0i:cmp比較指令,與sub指令一樣執(zhí)行減法操作,但不保存結果,只是根據(jù)結果設置條件標志位。 指令格式:cmp opr1,opr2 指令功能:(opr1)-(opr2)j:sub指令(subtract byte or word)字節(jié)或字相減.指令格式:sub dst,src指令功能:(dst)(src)=(dst) 將內存中的dst為地址單元內數(shù)與src的內容相減結果送dst。k:dec減1指令。 指令格式:dec opr 指令功能:(opr)-1=(opr)l:hlt為空轉指令,保持執(zhí)行結束狀態(tài),并不在執(zhí)行任何操作。m:rl是左移指令,參加左
30、移的數(shù)是8個位。 指令格式:rl al,cl 指令功能:將al中的數(shù)左移(cl)位n:rlc是帶進位位的左移,參加左移的共有9個位 指令格式:rlc al,cl 指令功能:將al中的數(shù)帶進位左移(cl)位(4)指令系統(tǒng)是設計計算機的依據(jù) ,擬訂指令系統(tǒng)將涉及基本字長、指令格式、指令種類、尋址方式等內容?;咀珠L:程序設計平臺中配置的存儲器容量為256*8,可知道基本字長定為8位。指令格式:指令格式可有單字長和雙字長指令兩種,在雙字長格式中,第二字節(jié)一般定義為操作數(shù)或操作數(shù)地址。14條指令用單字節(jié)表示,尋址方式采用寄存器直接尋址,其格式如表3-7所示:表3-7 算數(shù)邏輯指令格式 d7 d6 d5
31、 d4 d3 d2 d1 d0 op-codersrd對于預設指令可設計操作碼如下:表3-8 指令格式和功能 指令類型匯編符號指令格式功能訪問指令及轉移指令sta m,d,rd1 1m0 1rdrdedlda m,d,rd1 1m1 0rderddjmp m,d0 0m1 0rdepcdbzc m,d0 1m1 1rd當cy=1時epcdi / o指令in addr,rdout addr,rd000001rdaddrrdrdaddr111110rd移位操作指令rl rs,rd0111rsrd rl rs,rdrlc rs,rd1110rdrd rlc rs,rd算術運算指令cmp rs,rd0
32、100rsrdcmp rs,rdsub rs,rd0011rsrdsub rs,rdmov rs,rd1001rsrdmov rs,rdclr rd011000rdclr rddec rd 100000rdsub rd,1 (5)微指令流程圖:運行:pc-arpc+1ram-busbus-irp(1)sw-busbus-rdpc-arpc+1pc-arpc+1pc-arpc+1pc-arpc+1rd-arram-busbus-arram-busbus-arram-busbus-pcr0-busbus-ramram-busbus-r0dr1-mram-busbus-arram-busbus-dr
33、1 01 02 10 in out sta lda jmp bzc 10 11 12 13 14 15 01 01 01 01 01 01 0-r0stoppc-arpc+1rd-busbus-dr22r0-busbus-ramram-busbus-arrd-busbus-dr2rd-busbus-dr1r0-busbus-dr2dr1-1-r0r0-dr1dr1-dr2-r0dr1-ledr0-dr1dr1-ledr0-dr1dr1-dr2-r0 clr mov cmp sub dec hlt 16 17 18 19 20 21 01 01 01 01 01r0-299r0-299不帶進位左
34、移dr1-leddr1-led299-r0r0-dr1帶進位循環(huán)左移299-r0r0-dr1 rl rlc 22 23 01 01 2指令格式分析:(1)微指令格式表表3-9:微指令格式表23222120191817161514131211s3s2s1s0m/cnloadceweldrolddr1lddr2ldir選擇運算器運算模式打入pcram片選ram寫打入r0打入dr1打入dr2打入ir109876543210ldpcldaralubuspcbusr0busswbusp(1)ua待添加的隱藏文字內容24ua3ua2ua1ua0pc1打入ar運算器結果送總線pc內容送總線r0內容送總線開關
35、內容送總線判別字下一微指令地址24位代碼的含義:s3,s2,s1,s0,m,cn: 為運算器74ls181芯片的控制信號,詳見74ls181功能表1-1。 we :為w/r信號對ram和out進行寫操作,高電平為寫有效。 b1,b0 : 為對外部設備(ram,output,input)地址進行譯碼,b1b0=00時,input(即swb)選中;b1b0=01時,ram(即ce)選中;b1b0=10時, output(即ledb)選中,b1b0=11時,外部設備都不選中。a字段: 表3-10151413選擇000001ldri 010lddr1011lddr2100ldir101load110l
36、darldri:寄存器輸入選中,具體選擇同指令寄存器(ir)的最低2位(i1,i0)配合,當i1,i0=00時為輸入到r0寄存器;i1,i0=01時為r1;i1,i0=10時為r2。 lddr1:暫存器dr1選中。 lddr2:暫存器dr2選中。 ldir:指令寄存器ir選中。 load:總線數(shù)據(jù)直接裝載到pc計數(shù)器。 ldar:地址寄存器ar選中。 b字段: 表3-11121110選擇000001rs-b 010rd-b011ri-b100299-b101alu-b110pc-brs-b:為源寄存器輸出選中。具體選擇同指令寄存器(ir)的3,4位(i3,i2)配合,當i3,i2=00時為輸入
37、到r0寄存器;i3,i2=01時為r1;i3,i2=10時為r2。 rd-b:為目的寄存器輸出選中。具體選擇同指令寄存器(ir)的最低2位(i1,i0)配合,當i1,i0=00時為輸入到r0寄存器;i1,i0=01時為r1;i1,i0=10時為r2。 ri-b:為變址寄存器選中。本機定固定為r2 。 299-b:移位寄存器輸出選中。 alu-b:邏輯運算單元結果輸出。 pc-b :pc計數(shù)器輸出。 c字段: 表3-12987選擇000001p(1) 010p(2)011p(3)100p(4)101ar110ldpcp(1):分支判斷1,和指令寄存器(ir)的高四位(ir7-ir4)作為測試條件
38、。可分16個分支。 p(2):分支判斷2,和指令寄存器(ir)的三四位(ir3,ir2)作為測試條件,有4個分支。 p(3):分支判斷3,和cy或zi作為測試條件,有兩個分支。 p(4):分支判斷4,和開關swb,sba作為測試條件,有4個分支。用于控制臺控制區(qū) (讀程序,寫程序,和運行程序) ar:進行算術運算時是否影響進位和判零標志的控制位。 選中時進行帶進位運算。 ldpc:為pc計數(shù)信號選中。 ua5ua0: 為下一步微地址。4 微程序控制器的邏輯機構及功能(1)邏輯結構:采用微程序控制方式的控制器稱為微程序控制器。所謂微程序控制方式是指微命令不是由組合邏輯電路產(chǎn)生的,而是由微指令譯碼
39、產(chǎn)生。一條機器指令往往分成幾步執(zhí)行,將每一步操作所需的若干位命令以代碼形式編寫在一條微指令中,若干條微指令組成一端微程序,對應一條及其指令。在設計cpu時,根據(jù)指令系統(tǒng)的需要,事先編制好各段微程序 ,且將它們存入一個專用存儲器中。微程序控制器由指令寄存器ir、程序計數(shù)器pc、程序狀態(tài)字寄存器psw、時序系統(tǒng)、控制存儲器cm、微指令寄存器以及微地址形成電路。微地址寄存器等部件組成。執(zhí)行指令時,從控制存儲器中找到相應的微程序段,逐次取出微指令,送入微指令寄存器,譯碼后產(chǎn)生所需微命令,控制各步操作完成。微控制器結構框圖如下:它由控制存儲器、微地址寄存器、微命令寄存器和地址轉移邏輯幾部分組成。微地址寄
40、存器和微命令寄存器兩者的總長度即為一條微指令的長 度,二者合在一起稱為微指令寄存器。 圖3-3 微程序控制器原理圖(2)微程序控制器功能:a控制存儲器(rom):rom中存放微程序,也就是全部的微指令。rom的容量取決于微指令的總數(shù)。假如控制器需要128條微指令,則微地址寄存器長度為7位。rom的字長取決于微指令長度。 如果微指令為32位,則rom的字長就是32位。實際應用中rom可采用eprom或e2prom、 earom,用戶寫入和修改微程序比較方便。b微命令寄存器:微命令寄存器暫存由控制存儲器中讀出的當前微指令中控制字段與測試判別字段信息可由8d寄存器組成。c微地址寄存器:微地址寄存器暫存由控制存儲器讀出的當前微指令的下址字段信息。它可由帶rd、sd強置端的d觸發(fā)器組成。其中時鐘端和d端配合用做rom的讀出打入,用sd進行下址修改。d地址轉移邏輯:微指令由rom讀出后直接給出下一條微指令的地址,這個地址就放在微地址寄存器中。 當微程序出現(xiàn)分支時通過地址轉移邏輯去修改微地址寄存器內容,并按修改好的微地址讀出 下條微指令。地址轉移邏輯是一個組合邏輯電路,其輸入是當前微指令的判別測試字段pi、 執(zhí)行部件反饋的“狀態(tài)條件”及時間因素t4。e控制時序信號:上圖中標明了一個基本機器周期中的控制時序信號。例如用上一周期的t4時間按微地址寄存器內容
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 項目進度管理與風險控制的工作計劃
- 三農產(chǎn)品三農村市場風險防控方案
- 消防中級監(jiān)控練習試題及答案
- 中級養(yǎng)老護理練習試題
- 游泳救生員復習測試卷附答案
- 三農田灌溉設計規(guī)劃指南
- 文化旅游產(chǎn)品開發(fā)與設計指南
- 博物館展覽策劃與實施方案
- 公司股份制改革方案解讀
- 智慧倉儲系統(tǒng)建設方案
- 2024年AI大模型場景探索及產(chǎn)業(yè)應用調研報告-前瞻
- 學術論文的撰寫方法與規(guī)范
- 建設工程施工合同農民工工資補充協(xié)議
- 智研咨詢發(fā)布:汽車雨刮器總成產(chǎn)業(yè)百科(附行業(yè)現(xiàn)狀、相關政策及發(fā)展驅動因素分析)
- DL∕T 2577-2022 軸流轉漿式水輪發(fā)電機組檢修規(guī)程
- 2023年四川省綿陽市中考數(shù)學試卷
- 《統(tǒng)編教材背景下小學語文整本書閱讀策略的研究》中期報告
- (正式版)JBT 2930-2024 低壓電器產(chǎn)品型號編制方法
- 【課件】2024屆新高考英語語法填空專項.解題技巧課件
- 九年級物理《第5節(jié) 磁生電》課件(三套)
- 腎上腺腺瘤切除術的圍術期護理
評論
0/150
提交評論