版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> 畢業(yè)設(shè)計(論文)外文文獻翻譯</p><p> 譯文: (中央處理器設(shè)計) </p><p> 原文出處:Madden S,Frankin M,Hellerstein J,et al.TinyDB:an acquisitional query processing system for sensor networks.</p><p>&l
2、t;b> 中央處理器設(shè)計</b></p><p><b> 摘要</b></p><p> CPU(中央處理單元)是數(shù)字計算機的重要組成部分, 其目的是對從內(nèi)存中接收的指令進行譯碼,同時對存儲于內(nèi)部寄存器、存儲器或輸入輸出接口單元的數(shù)據(jù)執(zhí)行傳輸、算術(shù)運算、邏輯運算以及控制操作。在外部,CPU為轉(zhuǎn)換指令數(shù)據(jù)和控制信息提供一個或多個總線并從組件連接
3、到它。在通用計算機開始的第一章,CPU作為處理器的一部分被屏蔽了。但是CPU有可能出現(xiàn)在很多電腦之間,小,相對簡單的所謂微控制器的計算機被用在電腦和其他數(shù)字化系統(tǒng)中,以執(zhí)行限制或?qū)iT任務(wù)。例如,一個微控制器出現(xiàn)在普通電腦的鍵盤和檢測器中,但是這些組件也被屏蔽。在這種微控制器中,與我們在這一章中所討論的CPU可能十分不同。字長也許更短,(或者說4或8個字節(jié)),編制數(shù)量少,指令集有限。相對而言,性能差,但對完成任務(wù)來說足夠了。最重要的是它的
4、微控制器的成本很低,符合成本效益。</p><p> 在接下去的幾頁里,我考慮的是兩個計算機的CPU,一個是一個復(fù)雜指令集計算機( CISC),另一個是精簡指令集計算機(RISC)。在詳細的設(shè)計檢查之后,我們比較了兩個CPU的性能,并提交了用來提高性能的一些方法的簡要概述。最后,我們討論了關(guān)于一般數(shù)字系統(tǒng)設(shè)計的設(shè)計思路。</p><p><b> 1.雙CPU的設(shè)計</
5、b></p><p> 正如我們前一章提到的,一個典型的CPU通常被分成兩部分:數(shù)據(jù)路徑和控制單元。該數(shù)據(jù)路徑由一個功能單元、登記冊和內(nèi)部總線組成,為在功能單元、存儲器以及其他計算機組件之間提供轉(zhuǎn)移信息的途徑。這個數(shù)據(jù)途徑有可能是流水線,也有可能不是。控制單元由一個程序計數(shù)器,一個指令寄存器,控制邏輯,和可能有其他硬或微程序組成。如果數(shù)據(jù)途徑是流水線那么控制單元也有可能是流水線。電腦的CPU是一個部分,要
6、么是復(fù)雜指令集計算機( CISC),要么是精簡指令集計算機(RISC),有自己的指令集架構(gòu)。</p><p> 本章的目的是提交兩個CPU的設(shè)計,用來說明指令集,數(shù)據(jù)路徑,和控制單元的構(gòu)造特征的合并。該設(shè)計將自上而下,但隨著先前組件設(shè)計的重新使用,來說明指令集構(gòu)架在數(shù)據(jù)路徑和控制單元上的影響,數(shù)據(jù)路徑上的單元的影響力。這些材料廣泛使用了表格和圖表。</p><p> 雖然我們重用和改變
7、部分來自其他國家的設(shè)計,其他章節(jié)的背景信息,此處不再重復(fù)。但是,參考資料可以在這本書的前幾節(jié)里找到詳細的信息。</p><p> 這兩個CPU是為了一個帶有微程序控制單元的使用非流水線數(shù)據(jù)路徑的復(fù)雜指令集計算機( CISC)和一個帶有硬控制單元的使用流水線數(shù)據(jù)路徑的精簡指令集計算機(RISC)而提出的。這些是兩個截然不同指令集架構(gòu),數(shù)據(jù)路徑和控制單元的組合。</p><p> 2.復(fù)雜
8、指令集計算機</p><p> 我們提交的第一個設(shè)計就是為一個帶有非流水線數(shù)據(jù)路徑和微程序的控制單元的</p><p> 復(fù)雜指令集計算機而設(shè)計的。我們以介紹指令集構(gòu)架為開端,它包括CPU的注冊設(shè)置,教學(xué)形式,和處理方式。復(fù)雜指令集計算機( CISC)的指令集構(gòu)架的性質(zhì)是通過它的內(nèi)存到內(nèi)存進行數(shù)據(jù)存取操作指示8個處理模式,兩長指令格式和指令集,來為它們的執(zhí)行獲得重要的運行序列。<
9、/p><p> 我們?yōu)閷嵤?fù)雜指令集計算機( CISC)構(gòu)架而設(shè)計一個數(shù)據(jù)路徑。這個數(shù)據(jù)路徑是基于最初描述的7-9節(jié)里,并納入了8-10節(jié)里的CPU中。對登記檔案,功能單元以及總線進行修改來支持現(xiàn)有的指令集構(gòu)架。</p><p> 一旦數(shù)據(jù)路徑被明確,被設(shè)計的一個控制單元就去完成指令集構(gòu)架的執(zhí)行??刂茊卧脑O(shè)計必須涉及硬件組織和微程序組織的一個協(xié)調(diào)的定義。特別是把微程序分成微線路,然而同時
10、也設(shè)計了它們相互影響的音序器,這是設(shè)計的關(guān)鍵部分。即使是指令集領(lǐng)域和有聯(lián)系的同代碼的這種協(xié)調(diào)一致的努力。以下是硬件和微代碼組織的定義,我們詳細描述的是為運行代表的微型代碼個微型線路的基本部分。</p><p><b> 2.1指令集構(gòu)架</b></p><p> 圖1顯示了程序員獲得的一套復(fù)雜指令集計算機( CISC)的寄存器。所有的注冊有16位。這個注冊文件有8
11、個寄存器,從R0到R7。R0是一個寄存器,當(dāng)它被作為目的來使用,作為來源和拋棄的結(jié)果來使用時她總是提供零價值。</p><p> 除了注冊文件,還有一個程序計數(shù)器pc和堆棧指針SP。堆棧指針的出現(xiàn)的情況表明內(nèi)存堆棧是構(gòu)架的一部分。最后登記的是處理器狀態(tài)寄存器PSR,它包括最右邊的五個位的信息;剩下的都被假定包含0.該處理器狀態(tài)寄存器包含四個存儲狀態(tài)位值Z,N,C,和V,他們分別位于0-3之間。另外,一個存儲中斷
12、使得EI處在4的位置上。</p><p> 圖1包含了42個通過指令集進行的操作。每個操作都一個記憶和精心挑選的同位代碼。根據(jù)一些明確的操作和是否分開操作,將這些操作分成4組。另外,這些狀態(tài)位受到被列開的操作的影響。</p><p><b> 圖1</b></p><p> 圖2給出了CPU的指令格式。通用指令格式的有五個領(lǐng)域。首先,OP
13、CODE是指定的操作。接下去的兩個是MODE 和 S,是被用來確定運算的地址。最后兩個領(lǐng)域是SRC和DST,分別是3位的來源登記和目的地登記領(lǐng)域。此外,還有一個可選的第二個字母W,隨著一些作為一個操作或一個地址的指示而出現(xiàn)的,而不是隨著其他出現(xiàn)的。</p><p><b> 圖2</b></p><p> OPCODE的前兩位,IR(15:14),確定了一些明確的
14、操作和格式領(lǐng)域的如何使用。當(dāng)這些位是00時 ,要么是沒有被要求的操作要么是被OPCODE隱含的操作的位置。正如圖2(b)顯示的,只有OPCODE領(lǐng)域的是需要的。右邊的4個OPCODE位可以指定多達16個操作或帶有暗示的操作地址。</p><p> 如果IR是(15:14)是01,指令有一個操作,且是數(shù)據(jù)傳輸或數(shù)據(jù)操作指令。因為有了一個操作,MODE領(lǐng)域就會為獲得它而指定處理方式。單處理可能會涉及DST格式里的注
15、冊地址,所以DST領(lǐng)域也會被引出。S領(lǐng)域和SRC領(lǐng)域涉及到兩個運算的同時出現(xiàn),因此不被用于典型的單一的操作指示。但是,切換指令要求有一個切換數(shù)額來只是到底切換多少位。為獲得最大的靈活性,這個切換數(shù)額是只針對像來源運算一樣的的運算。因此,SAH領(lǐng)域和S領(lǐng)域是一個完整的16位運算,但它們的值只有0-15是有意義的。對帶有單一運算的16位指令來說有足夠的OPCODE位。</p><p> 圖2給出了指定通過MODE領(lǐng)
16、域的處理方式。MODE的前兩位指定了4中不同的處理類型:注冊、立即、索引以及相關(guān)的程序計數(shù)器PC。MODE的第三位明確是否地址是通過這些被用作間接處理的模式而形成。一個例外就是直接處理,它是通過運用間接立即類型而獲得的。否則,如果第三位等于0的,間接處理就不適用,而如果等于1 ,間接處理就適用。對指令的注冊類型來說,MONE(2:1)=00和這個W字母是不需要的。因為運算或處理是來自注冊。表格的第三欄提供了注冊轉(zhuǎn)換為針對一個操作指令的每
17、個處理模式的聲明。</p><p> 如果IR(15:14) 等于10,然后有兩個地址被用來正確的指令。通用指令的所有領(lǐng)域,其中包括S和SRC,被用于為所有指令的案件。其中一個地址,無論是來源或目的地,都使用處理模式。如果S等于0,那么來源使用被MODE指定的處理模式,且來源是注冊的。如果S等于1那么目的地使用處理方式,且來源是注冊的。注冊轉(zhuǎn)換為處理結(jié)果的描述在在表2第四次和第五次欄已給出了。此外,根據(jù)MODE
18、領(lǐng)域的內(nèi)容,第二個指令字母W是一個地址或立即操作,有可能存在,也有可能不存在。</p><p> 帶有IR(15:14)=11的指令是分流的。對切換來說除了S領(lǐng)域和SHA領(lǐng)域,它的格式和IR(15:14)=01一樣的。對于這個類型的所有指令,目的地的地址(而不是操作)成為新的地址放置程序計數(shù)器PC里。因此,注冊模式對分支指令是無效的。</p><p> 在進行下一步之前,明確數(shù)據(jù)路徑來
19、支持指令集構(gòu)架,我們將簡要的說明構(gòu)架的特征來界定是復(fù)雜指令集計算機( CISC)或是精簡指令集計算機(RISC)。在第9章里給出的大部分操作都被包括在指令集里。一些不會顯示的操作是多余的。同樣的動作可以通過使用帶有顯示指令的適當(dāng)?shù)奶幚砟J絹韺崿F(xiàn)。例如,LD, ST, IN, 和 OUT都可以通過使用在內(nèi)存映射結(jié)構(gòu)里的MOVE指令來實現(xiàn)。通過查看指令的格式,我們發(fā)現(xiàn)大部分指令可以從來自內(nèi)存的操作上進行直接操作。有8個處理模式和兩種不同長度
20、的指令格式。此外,有些的指示執(zhí)行復(fù)雜的行動可被視為很可能會超過一個時鐘周期執(zhí)行的步驟的行動。這些特征明確指出這是一個復(fù)雜指令集計算機( CISC)的架構(gòu)。</p><p><b> 2.2數(shù)據(jù)路徑組織</b></p><p> 不是從頭開始,我們將重新使用非流水線數(shù)據(jù)路徑被雇用在第8-10節(jié)里的微程序控制器,并進行修改。該數(shù)據(jù)路徑顯示在第8-10節(jié),和新的數(shù)據(jù)路徑
21、,是給出的圖10-6的基礎(chǔ)上進行修改的。我們對待每個反復(fù)修改的數(shù)據(jù)路徑,都是以注冊文件為開端的。</p><p> 在第8-10節(jié)里,注冊R8是被作為臨時的存儲位置。在新的微程序的架構(gòu),有復(fù)雜的指示要跨越許多時鐘周期和執(zhí)行復(fù)雜的動作。因此,更多的臨時存儲需要通過微程序來使用。為了滿足這個需要,我們擴展了注冊文件從9登記到16.前8個登記,R0-R7,對計算機程序員來說是可見的。接下去的8個登記,R8-R15,是
22、被用來作為微程序的臨時存儲,并從程序員那就被隱藏。圖3提供了一個帶有臨時登記屏蔽的擴展注冊文件的地圖。如前所述,編程R0提供的是一個常數(shù)0.編程R1到R7可提供給程序員使用,編程R8到R15提供通用的臨時存儲被微程序使用,最后4個編程,R12到R15具有特殊的用途:保持簡單的微型代碼,標(biāo)準(zhǔn)的位置對存儲的操作和被為大多數(shù)指令而執(zhí)行的微代碼所使用的地址來說是必不可少的。因此,R12是源地址SA,R13是源數(shù)據(jù)SD,R14是目的地地址DA,R
23、15是目的地數(shù)據(jù)DD。</p><p> 我們不能進入8個基于在指令集內(nèi)可用3位登記地址的臨時登記冊。為了解決這個問題,首先,我們提供了來自微指令的4位注冊地址,其次,選擇來自這些地址和微指令集的指令之間的微指令位。此外,允許注冊地址的靈活性通過DST成為來源和通過SRC成為目的地,他們是需要操作結(jié)果的允可來直接存放在內(nèi)存中。為了完成這個目標(biāo),我們通過增加圖4所示的邏輯來修改登記檔案。該指令集架構(gòu)使用兩個地址,
24、一個</p><p><b> 圖3</b></p><p> 是來源操作,一個是像目的地一樣的其他來源。該登記冊檔案使用B地址的來源,以及A和D處理的文件連接在一起,從而使其他來源和目的地使用同一個地址。雖然在微指令水平上的地址從3個減少到2個是沒必要的,但對在微指令中的注冊地址和指令格式中的匹配使用的登記領(lǐng)域的位的數(shù)量的減少還是必要的。</p>
25、<p> 一個四倍的2比1的多路復(fù)用器附屬在兩個地址一個一個的輸入到注冊文件中,在來自微指令的地址和指令的地址之間進行選擇。在微指令中有5位的空間是用來合并目的地和來源地址的DSA,再增加5位空間給B地址SB。每個領(lǐng)域的第一個位是在微指令(0)中的登記地址和指令(0)中的登記地址之間進行選擇的。如果一個指令地址被選定了,不管它是被增加的4倍2比1多功能器確定的DST還是 SRC。這個多路復(fù)用器是被第二位的DST或是 SRC控
26、制的,取決于它們之間的一個在任何一個微指令中的第一位一個1,從而確保正確的第二位是用來確定注冊地址的。0被附加到DST 和 SRC的這個三位領(lǐng)域的左邊致使它們能狗處理RO到R7.加上其中選擇來源地址的第一位,是來自包括四個位的的微指令的地址以致所有的17個編程都能被達到。對注冊文檔最后的改變就是取代在帶有在線上他們輸入的開放的集成電路和帶有在線上他們輸出的不變的0值的文件中的存儲元素R0。登記檔案結(jié)果的一個特征顯示在圖10-4( b)中
27、。</p><p> 在8個被提供的切換指令的基礎(chǔ)上,我們發(fā)現(xiàn)來自第8-10節(jié)的切換器我們需要進行修改。這個修改涉及到切換邏輯的最終的位。對于合乎邏輯的切換,0要向前面一樣被插入。對于右邊的算術(shù)轉(zhuǎn)變,她寫的位是即將來的位,對于左邊算術(shù)的轉(zhuǎn)變,0是即將來的位。旋轉(zhuǎn)切換要求來自與被給定的切換器的終端相反的位。最后,隨著執(zhí)行要的旋轉(zhuǎn)是作為切換器的兩端的一個輸入而提供執(zhí)行觸發(fā)器的輸出。</p><p
28、> 這些輸入是由兩個4比1多路復(fù)用器提供的,它們是MUX R 和MUX L,添加到一個基本的16位切換器中,所有這些都顯示在圖5(a)。同時,來自輸入操作的適當(dāng)?shù)倪@些輸入是由兩個4比1多路復(fù)用器提供的,它們是MUX R 和MUX L,添加到一個基本的16位切換器中,所有這些都顯示在圖5(a)。同時,來自輸入操作的適當(dāng)?shù)慕Y(jié)束位必須送交執(zhí)行觸發(fā)器。一個2比1多路復(fù)用器MUX SO選擇的結(jié)束位來傳遞到執(zhí)行觸發(fā)器。新的切換器的特征是在第
29、8-10部分上代替了原來的切換器,看在圖5(b)。</p><p> 對最初的數(shù)據(jù)路徑的所有修改都顯示在圖5上。作為設(shè)計過程的一個部分,新的數(shù)據(jù)路徑需要進行檢查,以確保它具有執(zhí)行指令集和處理方式的所有必要的能力。當(dāng)然,一些已經(jīng)做出的決定就不需要再進行討論了。例如,沒有專門的乘法和部分硬件,這些操作必須被微程序執(zhí)行從而控制數(shù)據(jù)路徑。</p><p> 2.3微程序控制組織</p&g
30、t;<p> 微程序控制單元伴隨著圖4和圖5的數(shù)據(jù)路徑。這個控制由四個主要部分組成。其中之一是控制單元登記:指令登記IR,程序計數(shù)器PC和堆棧指針度SP。 在一些設(shè)計PC和SP是邏輯的,它們包含在注冊文件中,因此是數(shù)據(jù)路徑的一部分。這里,因為它們被注冊文件分開了,被并最初的程序控制使用,我們已用控制來包含他們。在控制范圍內(nèi)的次序是由微型程序裝置提供的,它包括兩個登記:控制處理登記CAR和副程式分支機構(gòu)登記SBR。微程序的
31、程序計數(shù)器,控制處理登記CAR按順序的到達下一個地址或者平行登錄。隨著平行登錄,地址可以被設(shè)置成任何值和下一個地址,她來自包括在微</p><p><b> 圖4</b></p><p> 指令里的下一地址領(lǐng)域的三個來源。</p><p> 微線路有子線路,就像程序。為了區(qū)分它們,我們把微線路叫做微程序微子線路。SBR被用來存儲關(guān)于CAR
32、的下一代地址,同時一個微子線路是在微路線的要求下為了使微程序執(zhí)行轉(zhuǎn)向下一個微指令??刂茊卧淖詈笠徊糠质侵噶罱獯a器,它由組合邏輯組成,它也是CAR的下一個地址的來源。</p><p><b> 2.4微程序結(jié)構(gòu)</b></p><p> 我們對微程序進行了自上而下的設(shè)計。最高一層由一個像ASM的圖組成,給出了一個流動的微線路。這些線路有跟在第8-10部分中流水線C
33、PU階段相似的標(biāo)簽。但是,在這種情況下,不是表現(xiàn)單一的帶有組合邏輯的計數(shù)器,路線要求在多個周期上使用相同的硬件。在某種程度上,流動之間和路線范圍內(nèi)跟指令和他們的解碼器是密切相關(guān)的。由于測繪光盤可用來分流的同時帶有一種格式一個數(shù)據(jù)傳輸和操作動作,它可以通過使用測繪光盤方便的控制整個微線路之間的流動。這個流動顯示在圖10-8中,這個圖表并不是嚴格的ASM圖,因為每個矩形框?qū)?yīng)的微線路代表了不同的國家而不是一個單一的國家以及對應(yīng)的是多計時周期
34、而不是單一的周期。</p><p> 每個指令的執(zhí)行都以指令獲取微指令為開端的。PC提供了地址以及已經(jīng)更新的下一個地址。獲取的指令被放置在IR中。指令解碼過程是以使用MUX M和測繪光盤為開始的。當(dāng)MM等于0時,只有前三個OPCODE的位被使用,其余的位都設(shè)置為0。此外,除非前兩個等于01,否則從左邊起的第三位被忽視。一個五條分支的結(jié)果。這個分支被圖中的五個二進制決策框代替。由于OPCODE的位是被用來指指令正
35、在被解碼的運算,在三種情況下,這個分支的目的是微線路去獲取運算。在另一種情況下,程序分支地址被獲取。在最后的情況下,圖中的分支直接去執(zhí)行。有三條途徑去解除障礙取決于決策框制定的決策。這些途徑維護來自在指令獲取中的操作碼(OPCODE)的三個位的解碼,以獲得轉(zhuǎn)化數(shù)額參數(shù)。在兩個操作擷取的最后有一個額外的決策要求。</p><p> 在我五個決策中的四個,一個獲取操作路線是要進行的。根據(jù)操作碼(OPCODE)的前三
36、個位,要么一個單一的操作,兩個操作(或者一個操作加一個參數(shù)),要么一個分支地址,這二者選其一。一個操作地址和參數(shù)值被放在登記的R12到R15 (SA, SD, DA, and DD)中的為它們保留的位置。這四個執(zhí)行路線表明操作在這些標(biāo)準(zhǔn)的注冊位置里,以及在大多情況下,利用它們產(chǎn)生一個留在標(biāo)準(zhǔn)位置DD的結(jié)果。反饋路線也是使用這個標(biāo)準(zhǔn)登記位置來發(fā)現(xiàn)結(jié)果和它的地址。</p><p> 繼其執(zhí)行,在目的地中,大部分操作
37、去存放結(jié)果是必要的。這個是被反饋微線路完成的。但是,一些操作沒有結(jié)果寫入程序中。這些操作的存在明顯領(lǐng)先于直接引導(dǎo)的路徑,這些路徑從零操作執(zhí)行,程序分支和兩個操作執(zhí)行到中斷處理。在每個執(zhí)行微線路之后,在獲取下一個指令之前該程序進入了中斷。</p><p><b> 3.綜述</b></p><p> 在這篇文章中,我們檢查了兩個CPU的設(shè)計:復(fù)雜指令集計算機( CI
38、SC)或是精簡指令集計算機(RISC)。</p><p> 復(fù)雜指令集計算機( CISC)控制單元包括一個堆棧指針除了程序計數(shù)器??刂莆⒊绦蛭挥诠獗PROM中,以及一個多路復(fù)用器的組合和一個光盤ROM提供快速的指令解碼。</p><p> 控制單元還具有廣泛的跳躍和有條件的分支能力,包括微型子路線的一個層次。關(guān)于控制的微程序被模塊化以致在執(zhí)行關(guān)于指令的微程序中共享許多微型子路線。<
39、/p><p> 精簡指令集計算機(RISC)控制單元是流水線的,以及已添加專門的硬件去處理分支。流水線的CPU都有數(shù)據(jù)和控制風(fēng)險問題能力。我們研究任何形式的風(fēng)險,像軟件和硬件一頁提出每個解決方案。</p><p> 在討論了復(fù)雜指令集計算機( CISC)或是精簡指令集計算機(RISC)的性能之后,我們談到了一些先進的概念,包括并行執(zhí)行單位,帶有流水線的微程序控制器組合,超流水線處理器,超標(biāo)
40、量處理器,以及高性能的預(yù)測和投機技術(shù)。最后,我們把本文中的設(shè)計技術(shù)和廣泛的數(shù)字系統(tǒng)設(shè)計聯(lián)系起來。</p><p><b> 圖5</b></p><p><b> 參考文獻</b></p><p> [1].DIETMEYER,D.L.,Logic Design ofDigital Systems,3rd ed.Bo
41、ston,MA:</p><p> Allvn.Bacon,1988.</p><p> [2].MANO,M.M.Computer Engineering:Hardware Design.Englewood Cliffs,NJ:</p><p> Prentice Hall,1988.</p><p> [3].HAMACHER,V
42、 C.,VRANESIC,Z.G,AND ZAKY’S.G.Computer Organization,</p><p> 3rd ed.New York,Ny.-McGraw—Hill,1990.</p><p> [4].HENNESSY-工L.,AND PATTERSON,D.A.Computer Architecture:A</p><p> Quan
43、titative Approach,2nd ed.San Francisco,CA:Morgan Kaufmann,1996.</p><p> [5].KANE.G..AND HEINRICH,1.MIPS RISc Architecture.Englewood Cliffs,NJ:</p><p> Prentice Hall,1992.</p><p>
44、 [6].SPARC INTERNATIONAL.INC.The SP4尺C Architecture Manual:Version&</p><p> Englewood Clifts,NJ:Prentice Hall.1992.</p><p> [7].MANO.M.M.Computer System Architecture,3rd ed.Englewood Cliffs,NJ
45、:</p><p> Prentice Hall.1993.</p><p> CENTROL PROCESSING</p><p> UNIT DESIGNS</p><p><b> ABSTRACT</b></p><p> The CPU is the key component
46、 of a digital computer. Its purpose is to decode instruction receied from memory and perform transfers, arithmetic, logic, and control operations with data stored in internal registers, memory, or I/O interface units. Ex
47、ternally, the CPU provides one or more buses for transferring instructions, data, and control information to and from components connected to it. In the generic computer at the beginning of chapter 1, the CPU is a part o
48、f the processor and is heavily s</p><p> In the following pages, we consider two computer CPUs, one for a complex instruction set computer (CISC) and the other for a reduced instruction set computer (RISC).
49、 After a detailed examination of the designs, we compare the performance of the two CPUs and present a brief overview of some methods used to enhance that performance. Finally, we relate the design ideas discussed to gen
50、eral digital system design.</p><p> Two CPU designs </p><p> As mentioned in previous chapters, atypical CPU is usually divided into two parts: the datapath and the control unit. The datap
51、ath consists of a function unit, registers, and internal buses that provide pathways for the transfer of information between the registers, the function unit, and other computer components. The datapath may or may not be
52、 pipelined. The control unit consists of a program counter, an instruction register, and control logic, and may be other hardwired or microprogrammed. If</p><p> The purposes of this chapter is to present t
53、wo CPU designs that illustrate combinations of architectural characteristics of the instruction set, the datapath, and the control unit. The designs will be top down, but with the reuse of prior component designs, illust
54、rating the influence of the instruction set architecture on the datapath and control units, and the influence of the datapath on the unit. The material makes extensive use of tables and diagrams. Although we reuse and mo
55、dify component d</p><p> References, however, are given to earlier sections of the book, where detailed information can be found. </p><p> The two CPUs presented are for a CISC using a non-pip
56、elined datapath with a microprogrammed control unit and a RICS using a pipelined datapath with a hardwired pipelined control unit. These represent two quite distinct combinations of instruction set architecture, datapath
57、, and control unit.</p><p> The complex instruction set computer</p><p> The first design we present is for a complex instruction set computer with a non-pipelined datapath and microprogrammed
58、 control unit. We begin by describing the instruction set architecture, including the CPU register set, instruction formats, and addressing modes. The CISC nature of the instruction set architecture is demonstrated by it
59、s memory-to-memory access for data manipulation instructions, eight addressing modes, two instruction format lengths, and instructions that require significant s</p><p> We design a datapath for implementin
60、g the CISC architecture. The datapath is based on the one initially described in Section 7-9 and incorporated into a CPU in section 8-10. modifications are made to the register file, the function unit, and the buses to s
61、upport the present instruction set architecture.</p><p> Once the datapath has been specified, a control unit is designed to complete the implementation of the instruction set architecture. The design of th
62、e control unit must involve a coordinated definition of both the hardware organization and the microprogram organization. In particular , dividing the microprogram into microroutines, while at the same time designing the
63、 sequencer with which they interact, is a key part of the design. Even the instruction fields and opcodes are tied to this coordina</p><p> Instruction set architecture</p><p> Figure 10-1 sho
64、ws the CISC register set accessible to the programmer. All registers have 16 bits. The register file has eight registers, R0 though R7.R0 is a special register that always supplies the value zero when it is used as a sou
65、rce and discards the result when it is used as a destination.</p><p> In additional to the register file, there is a program counter PC and stack pointer SP. The presence of a stack pointer indicates that a
66、 memory stack is a part of the architecture . the final register is the processor status register PSR, which contains information only in its rightmost the five bits; the remainder of the register is assumed to contain z
67、ero. The PSR contains the four stored status bit values Z,N,C,and V in positions 3 through 0, respectively. In additional, a stored interrupt en</p><p> Table 10-1 contains the 42 operations performed by th
68、e instructions. Each operation has a mnemonic and a carefully selected opcode. The operations are divided into four groups based on the number of explicit operands and whether the operation is branch. In addition, the st
69、atus bits affected by the operation are listed.</p><p> Figure 10-2 gives the instruction formats for the CPU. The generic instruction format has five fields. The first, OPCODE, specifies of the operation.
70、The next two, MODE and S , are used to determine the addresses of the operands. The last two fields, SRC and DST, are the 3-bit source register and destination register address fields, respectively. In addition, there i
71、s an optional second word W that appears with some instructions as an operand or an address, but not with others.</p><p> The first two bits of OPCODE, IR(15:14), determine the number of explicit operands a
72、nd how the fields of the format are used. When these bits are 00,either no operand is required or the location of the operand is implied by OPCODE. Only the OPCODE field is needed, as shown in figure 2(b).the four rightm
73、ost OPCODE bits can specify up to 16 operands or with implied operand addresses.</p><p> If IR(15:14) is 01, the instruction has one operand and is a data transfer or data manipulation instruction. Since th
74、ere is an operand, the MODE field specifies the addressing mode for obtaining it. The single address may involve the DST register address in its formation, so the DST field is also present. The S field and SRC field rela
75、te to the presence of two operands and so are not used for the typical single operand instructions. but, the shift instructions require a shift amount to indicate </p><p> Table 10-2 gives the addressing mo
76、des specified by the MODE field. The first two bits of MODE specify four different types of addressing: register, immediate, indexed, and relative to the PC. The third bit of MODE specifies whether the address generated
77、by these modes is used as an indirect address. The one exception to this is direct addressing, which is obtained by applying indirection to the immediate type. Otherwise, if the third bit equals 0, indirect addressing do
78、es not apply whereas, if i</p><p> If IR(15:14) is equal to 10, then the instruction has two addresses used for true operands. All fields of the generic instruction, including S and SRC, are used for this c
79、ase for all instructions. one of addresses, either the source or the destination, uses the addressing modes. If S=0, then the source uses the addressing mode specified by MODE, and the source is a register. If S=1, then
80、the destination uses the addressing mode, and the source is a register. Register transfer descriptions of the</p><p> Instructions with IR(15:14)=11 are branches. Aside form the S field and the SHA field fo
81、r shifts, the format is the same as for IR(15:14)=01. For all instructions of this type, the destination address (not the operand) becomes the new address placed in the program counter PC. As a consequence, the register
82、mode is invalid for branch instructions.</p><p> Before proceeding to the next step, which defines the datapath to support the instruction set architecture, we will briefly note the characteristics of the a
83、rchitecture that define it as CISC or RISC. Most of the operations given in Chapter 9 are included in the instruction set. A number of operations that do not appear are redundant. The same actions can be achieved by usin
84、g proper addressing modes with instructions that do appear. For example, LD, ST, IN, and OUT can all be achieved by using M</p><p> Datapath organization</p><p> Rather than beginning from scr
85、atch, we will reuse the non-pipelined datapath employed with the microprogrammed control in section 8-10, with modifications. That datapath was shown in section 8-10, and the new, modified datapath based on it is given i
86、n Figure 10-6. we treat each modification in turn, beginning with the register file.</p><p> In section 8-10, register R8 was used as a temporary storage location. In the new microprogrammed architecture, t
87、here are complex instructions spanning many clock cycles and performing complicated operations. Thus, more temporary storage is needed for use by the microprograms. To meet this need, we expand the register file from 9 r
88、egisters to 16. the first 8 registers, R0 through R7, are visible to the computer programmer. The second 8 registers, R8 though R15 , are used as temporary storage for</p><p> We cannot access the eight tem
89、porary registers based on the 3-bit register address available in the instruction. To deal with this problem, we provide, first, 4-bit register address from the microinstruction, and second, a microinstruction bit to cho
90、ose between these addresses and those from the instruction. In addition, the flexibility to allow the register addressed by DST to be a source and by SRC to be a destination is needed to permit results of operations to b
91、e placed directly in memory. T</p><p> A quad 2-to-1 multiplexer is attached to each of the two address inputs to the register file, to select between an address from the microinstruction and an address fro
92、m the instruction. There is a 5-bit field in the microinstruction for the combined destination and source address DSA, in addition to a 5-bit field for the B address SB. The first bit of each of the these fields selects
93、between the register file address in the microinstruction(0) and the register file address in the instruction(1).</p><p> We find that, based on the eight shift instructions provided, the shifter from secti
94、on 8-10, needs to be modified. The modifications involve the end bits of the shift logic. For logical shifts, a 0 is inserted, as before. For the right arithmetic shift, she sign bit is the incoming bit, and for the left
95、 arithmetic shift, 0 is the incoming bit. Rotates require that the bit from the opposite end of the shifter be fed around. Finally, rotates with carry require that the carry flip-flop output be pr</p><p> T
96、he inputs are furnished by two 4-t0-1 multiplexers, MUX R and MUX L, added to a basic 16-bit shifter, all shown in Figure 10-5(a). also, the appropriate end bits from the input operand must be sent to the carry flip-flop
97、. A 2-to-1 multiplexer MUX SO selects the end bit to pass to the carry flip-flop C. the symbol for the new shifter, which replaces the basic shifter from section 8-10, appears in Figure 10-5(b), FS3, FS2, FS1, and FS0 fr
98、om the FS field drive the control inputs S3, S2, S1 and S0,</p><p> All modifications to the original datapath are represented in Figure 10-6. As a part of the design process, the new datapath needs to be c
99、hecked to make sure that it has all of the capabilities necessary for implementing the instruction set and addressing modes .Certainly ,some decisions have been made that have not been discussed. For example, there is no
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中央處理器設(shè)計 外文翻譯
- 中央處理器(cpu)模型設(shè)計課程設(shè)計
- 一類計算機中央處理器芯片布局工作的設(shè)計算法.pdf
- 移動式自動檢測系統(tǒng)中央處理器單元設(shè)計研究.pdf
- 基于奔騰4中央處理器的h.264解碼器的設(shè)計和優(yōu)化
- 計算機專業(yè)文獻翻譯---微處理器
- gb_t 20276-2016 信息安全技術(shù) 具有中央處理器的ic卡嵌入式軟件安全技術(shù)要求
- 計算機專業(yè)外文翻譯--計算機
- 計算機專業(yè)外文翻譯---事件處理基礎(chǔ)
- 計算機專業(yè)-外文翻譯
- 民航氣象自動觀測系統(tǒng)中央處理單元的設(shè)計與實現(xiàn).pdf
- 計算機專業(yè)外文翻譯(文獻翻譯)
- 計算機相關(guān)專業(yè)外文翻譯
- 計算機專業(yè)外文翻譯 9
- 計算機專業(yè)aspnet外文翻譯
- 計算機專業(yè)畢業(yè)設(shè)計外文翻譯
- 計算機專業(yè)畢業(yè)外文翻譯
- 計算機專業(yè) java外文翻譯
- (計算機與系統(tǒng)結(jié)構(gòu))arm處理器
- 計算機專業(yè)外文翻譯(文獻翻譯)
評論
0/150
提交評論