欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

具有指令預(yù)解碼器的直接存儲器訪問單元的制作方法

文檔序號:6502758閱讀:427來源:國知局
專利名稱:具有指令預(yù)解碼器的直接存儲器訪問單元的制作方法
背景處理器可使用指令管線來執(zhí)行指令。處理器管線可包括例如取指、對指令解碼、以及執(zhí)行指令的級。盡管處理器是在執(zhí)行級中執(zhí)行指令的,但是下一個(gè)順序的指令可同時(shí)在解碼級中解碼(并且再下一個(gè)指令可同時(shí)在取指級中取回)。注意,每一級可與一個(gè)以上的時(shí)鐘周期相關(guān)聯(lián)(例如,解碼級可包括預(yù)解碼級和解碼級,這些級中的每一個(gè)都與一個(gè)時(shí)鐘周期相關(guān)聯(lián))。因?yàn)椴煌墓芫€級可同時(shí)在不同的指令上工作,所以能夠提高處理器的性能。
但是,在指令被解碼之后,處理器可能會確定下一個(gè)順序的指令不應(yīng)被執(zhí)行(例如,當(dāng)已解碼的指令與跳轉(zhuǎn)或分支指令相關(guān)聯(lián)時(shí))。在此情形中,當(dāng)前在解碼和取指級中的指令可從管線中移除。這一稱為“分支誤預(yù)測損失”的情況會降低處理器的性能。
附圖簡述

圖1是一種裝置的框圖。
圖2示出指令管線級。
圖3是根據(jù)某些實(shí)施例的一種裝置的框圖。
圖4是根據(jù)某些實(shí)施例的一種方法。
圖5示出根據(jù)某些實(shí)施例的指令管線級。
圖6是根據(jù)某些實(shí)施例的一種裝置的示例。
圖7是根據(jù)某些實(shí)施例的一種系統(tǒng)的框圖。
詳細(xì)描述圖1是裝置100的框圖,該裝置包括全局存儲器110,用于存儲指令(例如,在引導(dǎo)過程期間被加載到全局存儲器110中的指令)。全局存儲器110可存儲例如m個(gè)字(例如,100,000個(gè)字),其中每個(gè)字有n位(例如,32位)。
直接存儲器訪問(DMA)引擎120可從全局存儲器110順序地檢索指令,并將指令傳送到處理元件處的本地存儲器130(例如,傳送到處理元件的高速緩沖存儲器)。例如,可使用到DMA引擎120的n位輸入路徑,來從全局存儲器110檢索指令。然后DMA引擎120可使用寫信號(WR)和寫地址(WR ADDRESS),經(jīng)由n位輸出路徑將指令傳送到本地存儲器130。
然后,處理器140可使用讀信號(RD)和讀地址(RD ADDRESS),經(jīng)由n位路徑從本地存儲器130檢索順序指令。處理器140隨即可執(zhí)行這些指令。為提高性能,處理器140可使用圖2中所示的指令管線200來執(zhí)行指令。當(dāng)處理器140在處理級230中執(zhí)行指令時(shí),下一個(gè)順序指令同時(shí)在解碼級220、222中被解碼(而再下一個(gè)指令同時(shí)在取指級210中被取回)。
注意,單個(gè)級可與一個(gè)以上的時(shí)鐘周期相關(guān)聯(lián),特別是以相對較高的時(shí)鐘頻率。例如,在圖2中所示的管線200中,需要兩個(gè)時(shí)鐘周期來取回一條指令(C0和C1)。類似地,對指令解碼需要一個(gè)時(shí)鐘周期(C2)來將指令部分地翻譯成“已預(yù)解碼”的指令,并需要另一個(gè)時(shí)鐘周期(C3)來將已預(yù)解碼的指令轉(zhuǎn)換為能被執(zhí)行的已完全解碼的指令。
在指令被解碼之后,處理器140可能會確定下一個(gè)順序指令將不會被執(zhí)行(例如,當(dāng)已解碼的指令與跳轉(zhuǎn)或分支指令相關(guān)聯(lián)時(shí))。在此情形中,當(dāng)前在解碼級220、222和取指級210中的指令可從管線200中移除。因取回和解碼不會被執(zhí)行的指令而浪費(fèi)的時(shí)鐘周期被稱為“分支延遲時(shí)隙”。
減少分支延遲時(shí)隙數(shù)可提高處理器140的性能。例如,如果已部分或完全解碼的指令被存儲在全局存儲器110中,則可將預(yù)解碼級220從管線200中移除,并減少分支延遲時(shí)隙數(shù)。但是,已預(yù)解碼的指令將會顯著地大于原始的指令。例如,一條32位指令在解碼之后可能具有100位。因此,將已解碼的指令存儲在全局存儲器110中可能是不切實(shí)際的(例如,因?yàn)樗璧拇鎯ζ鲄^(qū)域太大)。
圖3是根據(jù)某些實(shí)施例的裝置300的框圖。和以前一樣,DMA單元320經(jīng)由輸入路徑從存儲器單元310順序地檢索指令。但是,根據(jù)這一實(shí)施例,DMA單元320還包括指令預(yù)解碼器,用于對指令預(yù)解碼。
圖4是根據(jù)某些實(shí)施例的可由DMA單元320執(zhí)行的方法。注意,本文中所描述的任何方法都可由硬件、軟件(包括微碼)、或硬件和軟件的組合來執(zhí)行。例如,存儲介質(zhì)可在其上存儲當(dāng)由機(jī)器執(zhí)行時(shí)會產(chǎn)生根據(jù)本文中所描述的任何實(shí)施例的性能的指令。
在402,從存儲器單元310檢索指令。在404,DMA單元320隨即對該指令預(yù)解碼。DMA單元320可例如部分地或完全地對指令解碼。在406,將來自DMA單元320的已預(yù)解碼的指令提供給處理單元處的本地存儲器330。
再次參考圖3,處理器340隨即可從本地存儲器330檢索已預(yù)解碼的指令,并執(zhí)行該指令。圖5示出根據(jù)某些實(shí)施例的指令管線500。因?yàn)镈MA單元320已經(jīng)對指令預(yù)解碼,所以與圖2相比,可減少處理器340生成已完全解碼的指令所需的時(shí)鐘周期數(shù)(分支延遲時(shí)隙C0到C2),并可提高處理器340的性能。此外,因?yàn)橹挥斜镜卮鎯ζ?30才需要足夠大以存儲已預(yù)解碼的指令(而存儲器單元310仍然存儲較小的原始指令),所以可限制所導(dǎo)致的存儲器區(qū)域增長。如果DMA單元320完全解碼了指令,則甚至可進(jìn)一步減少分支延遲時(shí)隙數(shù)(盡管需要進(jìn)一步增加本地存儲器330的大小以存儲已完全解碼的指令)。
圖6是根據(jù)某些實(shí)施例的裝置600的示例,該裝置包括全局存儲器610,用于存儲n位的指令。DMA引擎620順序地檢索指令,而指令預(yù)解碼邏輯622對每條指令預(yù)解碼,以生成q位的已預(yù)解碼的指令(例如,在高速緩存未命中時(shí),或通過受軟件控制的DMA命令)。
DMA引擎620隨即可使用寫信號(WR)和p位寫地址(WR ADDRESS),經(jīng)由q位輸出路徑將已預(yù)解碼的指令傳送到本地存儲器630。本地存儲器630可以是例如,能夠存儲已被預(yù)解碼的2p個(gè)字的處理器高速緩存(例如,10位寫地址可訪問1,024條指令)。注意,因?yàn)橹噶钜驯活A(yù)解碼,所以q可能大于n(例如,因?yàn)橐杨A(yù)解碼的指令大于原始指令)。存儲在本地存儲器630中的已預(yù)解碼的指令可包括例如執(zhí)行單元控制信號和/或標(biāo)志。
處理器140隨即可使用讀信號(RD)和p位讀地址(RD ADDRESS),經(jīng)由q位路徑從本地存儲器630檢索已預(yù)解碼的指令。處理器640可包括例如與圖2相比使用較少管線級來執(zhí)行指令的精簡指令集計(jì)算機(jī)(RISC)設(shè)備等(例如,因?yàn)橹辽倥c解碼相關(guān)聯(lián)的某一部分分支延遲時(shí)隙不再是必需的)。
圖7是根據(jù)某些實(shí)施例的系統(tǒng)700的框圖。具體地,系統(tǒng)700是帶多向天線740的無線設(shè)備。系統(tǒng)700可以是例如碼分多址(CDMA)基站。
該無線設(shè)備包括片上系統(tǒng)(SOC)裝置710、同步動態(tài)隨機(jī)存取存儲器(SDRAM)單元720、以及外圍部件互連(PCI)接口單元730(諸如根據(jù)題為“PCIExpress 1.0”(2002)的PCI標(biāo)準(zhǔn)工業(yè)集團(tuán)(SIG)文獻(xiàn)操作的單元等)。SOC裝置710可以是例如帶有存儲數(shù)字信號處理器(DSP)指令和數(shù)據(jù)的全局存儲器的數(shù)字基帶處理器。此外,多個(gè)DMA引擎可根據(jù)本文中所描述的任何實(shí)施例,從全局存儲器檢索指令,對指令預(yù)解碼,并將已預(yù)解碼的指令提供給多個(gè)DSP(例如,DSP1到DSPN)。
以下示出各種其它實(shí)施例。這些實(shí)施例并不構(gòu)成對所有可能實(shí)施例的定義,并且本領(lǐng)域技術(shù)人員將會理解,許多其它實(shí)施例是可能的。此外,盡管為清楚起見簡單描述了以下實(shí)施例,但是本領(lǐng)域技術(shù)人員將會理解,在需要的情況下,如何對以上描述進(jìn)行任何修改來適應(yīng)這些及其它實(shí)施例和應(yīng)用。
盡管已描述了DMA單元包括內(nèi)置指令預(yù)解碼器的某些實(shí)施例,但是指令預(yù)解碼器可改為外置于DMA單元。例如,當(dāng)指令從外置于處理單元的存儲器被“傳入”時(shí),外置于DMA單元的單元可對指令部分地或完全地解碼。此外,盡管某些實(shí)施例是結(jié)合SOC實(shí)現(xiàn)來描述的,但是本文中所描述的部分或所有單元可使用多個(gè)集成電路來實(shí)現(xiàn)。
本文中所描述的數(shù)個(gè)實(shí)施例純粹是為說明的目的。本領(lǐng)域技術(shù)人員將會從此描述中認(rèn)識到,可實(shí)施經(jīng)修改和變更的其它實(shí)施例,而它們僅受所附權(quán)利要求書限定。
權(quán)利要求
1.一種方法,包括從存儲器單元檢索指令;在直接存儲器訪問單元對所述指令預(yù)解碼;以及將來自所述直接存儲器訪問單元的已預(yù)解碼的指令提供給處理元件。
2.如權(quán)利要求1所述的方法,其特征在于,所述提供包括,將所述已預(yù)解碼的指令存儲在所述處理元件本地的存儲器中。
3.如權(quán)利要求2所述的方法,其特征在于,所述已預(yù)解碼的指令是要由所述處理元件執(zhí)行的已完全解碼的指令。
4.如權(quán)利要求1所述的方法,其特征在于,還包括在所述處理元件處對所述已預(yù)解碼的指令解碼;以及經(jīng)由處理器管線執(zhí)行所述已解碼的指令。
5.如權(quán)利要求1所述的方法,其特征在于,還包括在引導(dǎo)過程期間,將指令加載到所述存儲器單元中。
6.如權(quán)利要求1所述的方法,其特征在于,所述處理元件是精簡指令集計(jì)算機(jī)設(shè)備。
7.如權(quán)利要求6所述的方法,其特征在于,所述已預(yù)解碼的指令包括執(zhí)行控制信號。
8.一種裝置,包括輸入路徑,用于從存儲器單元接收指令;直接存儲器訪問單元,包括用于對所述指令預(yù)解碼的指令預(yù)解碼器;以及輸出路徑,用于將來自所述直接存儲器訪問單元的已預(yù)解碼的指令提供給處理元件。
9.如權(quán)利要求8所述的裝置,其特征在于,還包括被耦合到所述輸入路徑的所述存儲單元。
10.如權(quán)利要求9所述的裝置,其特征在于,還包括被耦合到所述輸出路徑的所述處理元件。
11.如權(quán)利要求10所述的裝置,其特征在于,所述處理單元包括本地存儲器,用于存儲所述已預(yù)解碼的指令。
12.如權(quán)利要求10所述的裝置,其特征在于,包括多個(gè)處理元件,其中每個(gè)處理元件與一個(gè)包括指令預(yù)解碼器的直接存儲器訪問單元相關(guān)聯(lián)。
13.如權(quán)利要求10所述的裝置,其特征在于,所述輸入路徑有n位,所述輸出路徑有q位,并且n<q。
14.如權(quán)利要求10所述的裝置,其特征在于,所述直接存儲器訪問單元、所述存儲器單元和所述處理元件被構(gòu)造在集成電路上。
15.如權(quán)利要求10所述的裝置,其特征在于,所述處理元件是具有指令管線的精簡指令集計(jì)算機(jī)設(shè)備。
16.一種物品,包括其上存儲指令的存儲介質(zhì),當(dāng)所述指令被機(jī)器執(zhí)行時(shí),導(dǎo)致以下動作從存儲器單元檢索指令,在直接存儲器訪問單元處對所述指令預(yù)解碼,以及將來自所述直接存儲器訪問單元的已預(yù)解碼的指令提供給處理元件。
17.如權(quán)利要求16所述的物品,其特征在于,所述提供包括,將所述已預(yù)解碼的指令存儲在所述處理元件本地的存儲器中。
18.一種裝置,包括全局存儲器,用于存儲指令;指令預(yù)解碼器;以及處理器,其中所述指令預(yù)解碼器在指令從所述全局存儲器傳送到所述處理器時(shí)對所述指令預(yù)解碼。
19.如權(quán)利要求18所述的裝置,其特征在于,還包括直接存儲器訪問單元,用于安排要從所述全局存儲器單元檢索的指令,以及安排要向所述處理器提供的已預(yù)解碼的指令。
20.如權(quán)利要求18所述的裝置,其特征在于,已預(yù)解碼的指令包括執(zhí)行控制信號。
21.一種系統(tǒng),包括多向天線;以及具有直接存儲器訪問單元的裝置,所述直接存儲器訪問單元包括輸入路徑,用于從存儲器單元接收指令,指令預(yù)解碼器,用于對所述指令預(yù)解碼,以及輸出路徑,用于將已預(yù)解碼的指令提供給處理元件。
22.如權(quán)利要求21所述的系統(tǒng),其特征在于,所述裝置是數(shù)字基帶處理器。
23.如權(quán)利要求22所述的系統(tǒng),其特征在于,所述數(shù)字基帶處理器被構(gòu)成為片上系統(tǒng)。
24.如權(quán)利要求21所述的系統(tǒng),其特征在于,所述系統(tǒng)是碼分多址基站。
全文摘要
根據(jù)某些實(shí)施例,指令在直接存儲器訪問單元處被預(yù)解碼。
文檔編號G06F9/30GK1894660SQ200480037087
公開日2007年1月10日 申請日期2004年12月10日 優(yōu)先權(quán)日2003年12月22日
發(fā)明者C·阿爾博拉, A·古普塔, T-H·陸 申請人:英特爾公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
许昌市| 鹤庆县| 普定县| 梅州市| 定州市| 昆明市| 德化县| 泰兴市| 义马市| 曲阳县| 曲沃县| 独山县| 晴隆县| 文登市| 台湾省| 龙陵县| 秭归县| 河间市| 鹤峰县| 太谷县| 德州市| 彰化县| 望都县| 南郑县| 云霄县| 濮阳市| 新郑市| 二连浩特市| 惠州市| 札达县| 凤城市| 东阿县| 迭部县| 胶南市| 镇康县| 隆德县| 木里| 赤水市| 蓝山县| 富锦市| 曲靖市|