亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

用于處理器中的算術(shù)邏輯和移位裝置的制作方法

文檔序號:6435689閱讀:263來源:國知局
專利名稱:用于處理器中的算術(shù)邏輯和移位裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明大體上涉及一種用于處理器中的組合型算術(shù)邏輯和移位裝置。更特定來說,本發(fā)明涉及一種包括具有算術(shù)邏輯單元和移位裝置的地址產(chǎn)生單元的載入/存儲單
J Li ο
背景技術(shù)
技術(shù)上的進步已產(chǎn)生了更小且功能更強大的個人計算裝置。舉例來說,現(xiàn)存在各種便攜式個人計算裝置,包括無線計算裝置,例如便攜式無線電話、個人數(shù)字助理(PDA)和尋呼裝置,其小巧、輕便且可易于由用戶攜帶。更特定來說,便攜式無線電話(例如蜂窩式電話和IP電話)可在無線網(wǎng)絡(luò)上傳送語音和數(shù)據(jù)分組。此外,許多此類無線電話包括并入其中的其它類型的裝置。舉例來說,無線電話也可包括數(shù)碼相機、數(shù)字攝影機、數(shù)字記錄器和音頻文件播放器。而且,此類無線電話可包括可用于接入因特網(wǎng)的網(wǎng)絡(luò)界面。因而,這些無線電話包括顯著的計算能力。通常,隨著這些裝置包括更大的功能性,可需要更多內(nèi)部組件來支持所述裝置的各種功能。此外,隨著內(nèi)部組件的數(shù)目增加,與制造所述裝置相關(guān)聯(lián)的成本增加。舉例來說,特定裝置內(nèi)的處理器可執(zhí)行各種計算機執(zhí)行指令以便提供與所述特定裝置相關(guān)聯(lián)的功能性。一些指令(例如,載入/存儲指令)可利用地址產(chǎn)生單元以便產(chǎn)生用于載入或存儲數(shù)據(jù)的數(shù)據(jù)高速緩沖存儲器地址。其它指令可由執(zhí)行單元(例如乘法器或算術(shù)邏輯單元) 執(zhí)行。因此,在處理器內(nèi)提供改進的載入/存儲單元和增強的地址產(chǎn)生單元將是有利的。

發(fā)明內(nèi)容
揭示一種算術(shù)邏輯和移位裝置,且其包括算術(shù)邏輯單元,所述算術(shù)邏輯單元具有 第一輸入,其用以從第一寄存器接收第一操作數(shù);第二輸入,其用以從第二寄存器接收第二操作數(shù);和輸出,其用以在第一操作模式中將存儲器地址選擇性地提供到存儲器單元和在第二操作模式中選擇性地提供算術(shù)輸出。此外,所述算術(shù)邏輯和移位裝置包括可編程移位器裝置,所述可編程移位器裝置具有第一輸入,其用以從存儲器單元接收數(shù)據(jù);第二輸入,其用以從所述算術(shù)邏輯單元接收數(shù)據(jù);第三輸入,其用以接收包括控制信息(其包括移位量和計算機執(zhí)行指令的操作碼)的控制信號;和移位輸出,其用以提供移位數(shù)據(jù)。在特定實施例中,所述可編程移位器裝置在第一操作模式中從存儲器單元接收數(shù)據(jù)。此外,在特定實施例中,所述可編程移位器裝置在第二操作模式中從算術(shù)邏輯單元接收算術(shù)輸出。在另一特定實施例中,所述算術(shù)邏輯單元選自加法器、減法器、比較器或其組合的群組。在特定實施例中,所述可編程移位器裝置是載入對準器。而且,在另一特定實施例中,所述算術(shù)邏輯和移位裝置包括存儲器單元且所述存儲器單元包括耦合到算術(shù)邏輯單元的數(shù)據(jù)高速緩沖存儲器。在又一特定實施例中,所述第一操作數(shù)是基址且所述第二操作數(shù)是地址偏移值。在特定實施例中,所述計算機執(zhí)行指令是載入指令。在另一特定實施例中,所述計算機執(zhí)行指令是存儲指令。此外,在特定實施例中,每一輸入和每一輸出的長度為六十四個位。在另一實施例中,揭示一種處理計算機執(zhí)行指令的方法且所述方法包括接收與計算機執(zhí)行指令相關(guān)聯(lián)的第一操作數(shù);接收與所述計算機執(zhí)行指令相關(guān)聯(lián)的第二操作數(shù); 和使用所述第一操作數(shù)和所述第二操作數(shù)來執(zhí)行算術(shù)運算以產(chǎn)生算術(shù)結(jié)果。另外,所述方法包括接收與所述計算機執(zhí)行指令相關(guān)聯(lián)的操作碼。所述操作碼指示是將算術(shù)結(jié)果提供到存儲器單元還是提供到可編程移位器裝置。在又一實施例中,揭示一種處理器裝置且所述處理器裝置包括具有第一操作模式和第二操作模式的地址產(chǎn)生單元。所述地址產(chǎn)生單元在所述第一操作模式中產(chǎn)生存儲器地址。所述地址產(chǎn)生單元在所述第二操作模式中執(zhí)行算術(shù)指令。在又一實施例中,揭示一種多線程處理器裝置且所述多線程處理器裝置包括多個獨立程序線程和可存取所述多個獨立程序線程的地址產(chǎn)生單元。所述地址產(chǎn)生單元包括第一操作模式,其中所述地址產(chǎn)生單元可選擇性地產(chǎn)生存儲器地址。此外,所述地址產(chǎn)生單元包括第二操作模式,其中所述地址產(chǎn)生單元可執(zhí)行算術(shù)指令和邏輯指令。在又一實施例中,揭示一種便攜式通信裝置且所述便攜式通信裝置包括數(shù)字信號處理器。所述數(shù)字信號處理器包括具有第一操作模式和第二操作模式的地址產(chǎn)生單元。在所述第一操作模式中,所述地址產(chǎn)生單元可選擇性地產(chǎn)生存儲器地址。在所述第二操作模式中,所述地址產(chǎn)生單元可選擇性地執(zhí)行算術(shù)指令和邏輯指令。在另一實施例中,揭示一種音頻文件播放器且所述音頻文件播放器包括音頻編碼器/解碼器(CODEC)和耦合到所述CODEC的數(shù)字信號處理器。所述數(shù)字信號處理器包括具有第一操作模式和第二操作模式的地址產(chǎn)生單元。所述地址產(chǎn)生單元可在所述第一操作模式中選擇性地產(chǎn)生存儲器地址且在所述第二操作模式中選擇性地執(zhí)行算術(shù)指令和邏輯指令。在又一實施例中,揭示一種地址產(chǎn)生單元且所述地址產(chǎn)生單元包括用于在第一操作模式中產(chǎn)生存儲器地址的裝置和用于在第二操作模式中執(zhí)行算術(shù)運算的裝置。在又一實施例中,揭示一種地址產(chǎn)生單元且所述地址產(chǎn)生單元包括用于接收與計算機執(zhí)行指令相關(guān)聯(lián)的第一操作數(shù)的裝置;用于接收與所述計算機執(zhí)行指令相關(guān)聯(lián)的第二操作數(shù)的裝置;用于使用所述第一操作數(shù)和所述第二操作數(shù)來執(zhí)行算術(shù)運算以產(chǎn)生算術(shù)結(jié)果的裝置;和用于接收與所述計算機執(zhí)行指令相關(guān)聯(lián)的操作碼的裝置,其中所述操作碼指示是將所述算術(shù)結(jié)果提供到存儲器單元還是提供到可編程移位器裝置。在另一實施例中,揭示一種處理器裝置且所述處理器裝置包括用于接收與計算機執(zhí)行指令相關(guān)聯(lián)的第一操作數(shù)的裝置;用于接收與所述計算機執(zhí)行指令相關(guān)聯(lián)的第二操作數(shù)的裝置;用于使用所述第一操作數(shù)和所述第二操作數(shù)來執(zhí)行算術(shù)運算以產(chǎn)生算術(shù)結(jié)果的裝置;和用于接收與所述計算機執(zhí)行指令相關(guān)聯(lián)的操作碼的裝置。所述操作碼指示是將所述算術(shù)結(jié)果提供到存儲器單元還是提供到可編程移位器裝置。本文所揭示的一個或一個以上實施例的優(yōu)點可包括在第一操作模式中使用地址產(chǎn)生單元以產(chǎn)生存儲器地址。本文所揭示的一個或一個以上實施例的另一優(yōu)點可包括在第二操作模式中使用地址產(chǎn)生單元以執(zhí)行算術(shù)指令。本文所揭示的一個或一個以上實施例的又一優(yōu)點可包括在第二操作模式中使用地址產(chǎn)生單元以執(zhí)行邏輯指令。本發(fā)明的其它方面、優(yōu)點和特征在檢閱整個申請案(包括以下部分圖式簡單說明、實施方式和權(quán)利要求書)后將變得顯而易見。


通過結(jié)合附圖參考以下詳細描述將容易明白本文所描述的實施例的方面和附加優(yōu)點,附圖中圖I為示范性地址產(chǎn)生單元的總圖;圖2為說明一種在地址產(chǎn)生單元內(nèi)執(zhí)行計算機指令的方法的流程圖;圖3為并入數(shù)字信號處理器的便攜式通信裝置的總圖;圖4為并入數(shù)字信號處理器的示范性蜂窩式電話的總圖;圖5為并入數(shù)字信號處理器的示范性無線因特網(wǎng)協(xié)議電話的總圖;圖6為并入數(shù)字信號處理器的示范性便攜式數(shù)字助理的總圖;圖7為并入數(shù)字信號處理器的示范性音頻文件播放器的總圖;和圖8為示范性數(shù)字信號處理器的總圖。
具體實施例方式參看圖1,展示算術(shù)邏輯和移位裝置(例如,地址產(chǎn)生單元(AGU))且通常將其表示為100。如圖I中所描繪,所述AGU 100包括耦合到存儲器(例如,數(shù)據(jù)高速緩沖存儲器 104)的算術(shù)邏輯單元(ALU) 102。此外,第一可編程移位器裝置(例如,載入對準器106)耦合到ALU 102和數(shù)據(jù)高速緩沖存儲器104。圖I也展示耦合到數(shù)據(jù)高速緩沖存儲器104的第二可編程移位器裝置(例如,存儲對準器108)。ALU 102和存儲對準器108每一者接收包括操作碼的控制信號138。在說明性實施例中,所述ALU 102可為加法器、減法器、比較器或其組合。如圖I中所示,第一寄存器堆讀取端口 110耦合到ALU 102。此外,第二寄存器堆讀取端口 112耦合到所述存儲對準器。寄存器堆寫入端口 114和指令高速緩沖存儲器116 可耦合到載入對準器106。而且,如圖I中所指示,所述載入對準器106可包括多路復用器 (MUX)118。在特定實施例中,第一寄存器堆讀取端口 110可將第一操作數(shù)120和第二操作數(shù) 122提供到ALU 102。此外,如圖I中所示,所述ALU 102可輸出ALU結(jié)果124,所述ALU結(jié)果124可選擇性地被提供到到數(shù)據(jù)高速緩沖存儲器104的輸入126或在載入對準器106處的第一輸入128。在另一特定實施例中,數(shù)據(jù)高速緩沖存儲器104可基于來自ALU 102的 OP碼命令和存儲地址而從存儲對準器108接收待存儲的數(shù)據(jù)。圖I進一步指示數(shù)據(jù)高速緩沖存儲器104可輸出載入數(shù)據(jù)134,所述載入數(shù)據(jù)134 可經(jīng)由位于載入對準器106處的第二輸入136而被選擇性地提供到所述載入對準器106。 在示范性實施例中,所述指令高速緩沖存儲器116可將包括操作(OP)碼和其它控制信息的控制信號138提供到載入對準器106。所述OP碼可指示將要在AGU 100處執(zhí)行的一類型的指令?;谒鯫P碼,載入對準器106處的MUX 118可選擇性地允許ALU結(jié)果124或載入數(shù)據(jù)134被輸入到載入對準器106。控制信號138指示所述數(shù)據(jù)是有正負號還是無正負號。在說明性實施例中,對于載入操作來說,ALU結(jié)果124的三個最低有效位指示所需的移位量。在特定實施例中,載入對準器106可移位或?qū)蔄LU結(jié)果124或載入數(shù)據(jù)134。待移位的位量可基于OP碼。舉例來說,大小可為一字節(jié)、一半字、一字或一雙字。在基于所指示的字大小來執(zhí)行移位操作后,載入對準器106可將載入對準器輸出140輸出到第三寄存器堆寫入端口 114。圖I進一步展示載入對準器106內(nèi)的MUX 118可包括選擇器輸入142。 可將所述OP碼輸入到選擇器輸入142且指示MUX 118允許將ALU結(jié)果124或載入數(shù)據(jù)134 輸入到載入對準器106。圖2描繪一種使用地址產(chǎn)生單元(AGU)來執(zhí)行計算機指令的方法。在方框200中, AGU接收操作碼,所述操作碼界定與指令(其與第一操作數(shù)和第二操作數(shù)相關(guān)聯(lián))相關(guān)聯(lián)的操作模式。在特定實施例中,AGU包括第一操作模式(例如,AGU操作模式),其中AGU產(chǎn)生用于載入指令或存儲指令的存儲器地址;和第二操作模式(例如,ALU操作模式),其中 AGU執(zhí)行算術(shù)指令和邏輯指令。在方框202中,AGU (例如)從第一寄存器堆端口接收第一操作數(shù)。在方框204中, AGU(例如)從第二寄存器堆端口接收第二操作數(shù)。在特定實施例中,所述第一操作數(shù)是基址且所述第二操作數(shù)是地址偏移值。移動到方框206,AGU對操作數(shù)執(zhí)行算術(shù)運算。在說明性實施例中,AGU內(nèi)的算術(shù)邏輯單元(ALU)對操作數(shù)執(zhí)行算術(shù)運算。此外,在特定實施例中,所述算術(shù)運算是加法運算或減法運算。在另一實施例中,ALU可對操作數(shù)執(zhí)行邏輯運算。舉例來說,ALU可對操作數(shù)執(zhí)行比較操作。在決策步驟208中,AGU確定操作模式。當操作模式是ALU操作模式時,所述方法進行到方框210且將來自ALU的輸出數(shù)據(jù)提供到載入對準器。移動到?jīng)Q策步驟212,所述載入對準器確定是否對準來自ALU的數(shù)據(jù)。此決策是基于數(shù)據(jù)大小(例如,一字節(jié)、一半字、 一字或一雙字)和指令類型。在方框214中,所述載入對準器確定數(shù)據(jù)大小。在特定實施例中,所述載入對準器基于操作碼而確定數(shù)據(jù)大小。在方框216中,載入對準器基于數(shù)據(jù)的大小和位置而對準數(shù)據(jù)。通過AGU確定數(shù)據(jù)的位置。進行到方框218,將數(shù)據(jù)寫入到寄存器堆端口。所述方法接著在狀態(tài)220處結(jié)束。返回到?jīng)Q策步驟212,如果數(shù)據(jù)無需對準,則所述方法進行到方框218且將數(shù)據(jù)寫入到寄存器堆端口。所述方法接著在狀態(tài)220處結(jié)束。在特定實施例中,當高速緩沖存儲器讀取端口與載入讀取需求相同時,數(shù)據(jù)可無需對準。返回到?jīng)Q策步驟208,當操作模式為AGU操作模式時,所述方法進行到方框224。在方框224處,將來自ALU的數(shù)據(jù)作為存儲器地址而提供到存儲器單元(例如,數(shù)據(jù)高速緩沖存儲器)。進行到方框222,將來自所述存儲器單元的數(shù)據(jù)提供到載入對準器。所述方法接著繼續(xù)到?jīng)Q策步驟212且如圖2中所描繪而繼續(xù)下去。圖3說明一般表示為320的便攜式通信裝置的示范性、非限制性實施例。如圖3 中所說明,所述便攜式通信裝置包括芯片上系統(tǒng)322,所述芯片上系統(tǒng)322包括數(shù)字信號處理器324。在特定實施例中,所述數(shù)字信號處理器324為圖I中所展示和本文中所描述的數(shù)字信號處理器。圖3也展示耦合到數(shù)字信號處理器324和顯示器328的顯示器控制器326。 此外,輸入裝置330耦合到數(shù)字信號處理器324。如圖示,存儲器332耦合到數(shù)字信號處理器324。另外,編碼器/解碼器(CODEC) 334可耦合到數(shù)字信號處理器324。揚聲器336和麥克風338可耦合到CODEC 330。圖3也指示無線控制器340可耦合到數(shù)字信號處理器324和無線天線342。在特定實施例中,電源344耦合到芯片上系統(tǒng)322。此外,在特定實施例中,如圖3中所說明,顯示器328、輸入裝置330、揚聲器336、麥克風338、無線天線342和電源344都在芯片上系統(tǒng) 322的外部。然而,每一者都耦合到芯片上系統(tǒng)322的組件。在特定實施例中,數(shù)字信號處理器324利用交錯的多線程以處理與程序線程相關(guān)聯(lián)的指令,必需所述程序線程來執(zhí)行便攜式通信裝置320的各種組件所需的功能性和操作。舉例來說,當經(jīng)由無線天線建立無線通信會話時,用戶可向麥克風338講話??蓪⒈硎居脩粽Z音的電子信號發(fā)送到CODEC 334以待編碼。數(shù)字信號處理器324可為CODEC 334執(zhí)行數(shù)據(jù)處理以編碼來自麥克風的電子信號。此外,可通過無線控制器340將經(jīng)由無線天線 342而接收的傳入信號發(fā)送到CODEC 334以待解碼且發(fā)送到揚聲器336。當對經(jīng)由無線天線342接收的信號進行解碼時,數(shù)字信號處理器324也可為CODEC 334執(zhí)行數(shù)據(jù)處理。此外,在無線通信會話之前、期間或之后,數(shù)字信號處理器324可處理從輸入裝置 330接收的輸入。舉例來說,在無線通信會話期間,用戶可使用輸入裝置330和顯示器328, 以經(jīng)由嵌入在便攜式通信裝置320的存儲器332內(nèi)的網(wǎng)頁瀏覽器來瀏覽因特網(wǎng)。如本文中所描述,數(shù)字信號處理器324可交錯由輸入裝置330、顯示器控制器326、顯示器328、C0DEC 334和無線控制器340所使用的各種程序線程,以有效控制便攜式通信裝置320和其中的各種組件的操作。在一個或一個以上時鐘循環(huán)期間,同時執(zhí)行與各種程序線程相關(guān)聯(lián)的指令中的許多指令。因而,大體上減少歸因于浪費的時鐘循環(huán)的功率和能量消耗。圖3進一步指示DSP 324包括地址產(chǎn)生單元(AGU) 346。在特定實施例中,DSP 324 內(nèi)的AGU 346為上文結(jié)合圖I而描述的A⑶。參看圖4,展示蜂窩式電話的示范性、非限制性實施例,且通常將其表示為420。如圖不,蜂窩式電話420包括芯片上系統(tǒng)422,所述芯片上系統(tǒng)422包括稱合在一起的數(shù)子基帶處理器424和模擬基帶處理器426。如圖4中所說明,顯示器控制器428和觸控屏幕控制器430耦合到數(shù)字基帶處理器424。隨后,在芯片上系統(tǒng)422外部的觸控屏幕顯示器432 耦合到顯示器控制器428和觸控屏幕控制器430。圖4進一步指示視頻編碼器434 (例如,逐行倒相(PAL)編碼器、順序傳送彩色與存儲(SECAM)編碼器或國家電視系統(tǒng)委員會(NTSC)編碼器)耦合到數(shù)字基帶處理器424。 此外,視頻放大器436耦合到視頻編碼器434和觸控屏幕顯示器432。而且,視頻端口 438 耦合到視頻放大器436。如圖4中所描繪,通用串行總線(USB)控制器440耦合到數(shù)字基帶處理器424。而且,USB端口 442耦合到USB控制器440。存儲器444和訂戶身份模塊(SM) 卡446也可耦合到數(shù)字基帶處理器424。此外,如圖4中所示,數(shù)碼相機448可耦合到數(shù)字基帶處理器424。在示范性實施例中,所述數(shù)碼相機448為電荷耦合裝置(CCD)相機或互補金屬氧化物半導體(CMOS)相機。如圖4中進一步說明,立體聲音頻CODEC 450可耦合到模擬基帶處理器426。此外,音頻放大器452可耦合到所述立體聲音頻CODEC 450。在示范性實施例中,第一立體聲揚聲器454和第二立體聲揚聲器456稱合到音頻放大器452。圖4展不麥克風放大器458 也可耦合到立體聲音頻CODEC 450。另外,麥克風460可耦合到麥克風放大器458。在特定實施例中,調(diào)頻(FM)無線電調(diào)諧器462可耦合到立體聲音頻CODEC 450。而且,F(xiàn)M天線464 耦合到所述FM無線電調(diào)諧器462。此外,立體聲耳機466可耦合到立體聲音頻CODEC 450。
圖4進一步指示射頻(RF)收發(fā)器468可耦合到模擬基帶處理器426。RF開關(guān)470 可耦合到RF收發(fā)器468和RF天線472。如圖4中所示,鍵區(qū)474可耦合到模擬基帶處理器 426。而且,帶麥克風的單聲道送受話器476可耦合到模擬基帶處理器426。此外,振動器裝置478可耦合到模擬基帶處理器426。圖4也展示電源480可耦合到芯片上系統(tǒng)422。在特定實施例中,所述電源480為將功率提供到需要功率的蜂窩式電話420的各種組件的直流(DC)電源。此外,在特定實施例中,所述電源為可再充電DC電池或DC電源,所述DC電源得自連接到AC電源的交流(AC)到DC變壓器。在特定實施例中,如圖4中所描繪,觸控屏幕顯示器432、視頻端口 438、USB端口 442、相機448、第一立體聲揚聲器454、第二立體聲揚聲器456、麥克風460、FM天線464、立體聲耳機466、RF開關(guān)470、RF天線472、鍵區(qū)474、單聲道送受話器476、振動器478和電源480都在芯片上系統(tǒng)422的外部。此外,在特定實施例中,數(shù)字基帶處理器424和模擬基帶處理器426可使用本文中所描述的交錯的多線程,以便處理與一個或一個以上不同組件 (其與蜂窩式電話420相關(guān)聯(lián))相關(guān)聯(lián)的各種程序線程。圖4進一步指示DSP 424包括地址產(chǎn)生單元(AGU)480。在特定實施例中,DSP 424 內(nèi)的AGU 480為上文結(jié)合圖I所描述的A(iU。參看圖5,展示無線因特網(wǎng)協(xié)議(IP)電話的示范性、非限制性實施例,且一般將其表示為500。如圖示,無線IP電話500包括芯片上系統(tǒng)502,所述芯片上系統(tǒng)502包括數(shù)字信號處理器(DSP) 504。如圖5中所說明,顯示器控制器506耦合到DSP 504且顯示器508 耦合到顯示器控制器506。在示范性實施例中,顯示器508為液晶顯示器(IXD)。圖5進一步展示鍵區(qū)510可耦合到DSP 504。如圖5中進一步描繪,快閃存儲器512可耦合到DSP 504。同步動態(tài)隨機存取存儲器(SDRAM)514、靜態(tài)隨機存取存儲器(SRAM) 516和電可擦除可編程只讀存儲器 (EEPROM) 518也可耦合到DSP 504。圖5也展示發(fā)光二極管(LED) 520可耦合到DSP 504。 另外,在特定實施例中,語音CODEC 522可耦合到DSP 504。放大器524可耦合到語音CODEC 522且單聲道揚聲器526可耦合到所述放大器524。圖5進一步指示單聲道送受話器528 也可耦合到語音CODEC 522。在特定實施例中,所述單聲道送受話器528包括麥克風。圖5也說明無線局域網(wǎng)(WLAN)基帶處理器530可耦合到DSP 504。RF收發(fā)器532 可耦合到WLAN基帶處理器530且RF天線534可耦合到所述RF收發(fā)器532。在特定實施例中,藍牙控制器536也可耦合到DSP 504且藍牙天線538可耦合到所述控制器536。圖5也展示USB端口 540也可耦合到DSP 504。此外,電源542耦合到芯片上系統(tǒng)502且所述電源542經(jīng)由所述芯片上系統(tǒng)502而將功率提供到無線IP電話500的各種組件。在特定實施例中,如圖5中所指示,顯示器508、鍵區(qū)510、LED 520、單聲道揚聲器 526、單聲道送受話器528、RF天線534、藍牙天線538、USB端口 540和電源542都在芯片上系統(tǒng)502的外部。然而,這些組件中的每一者耦合到所述芯片上系統(tǒng)的一個或一個以上組件。此外,在特定實施例中,如本文中所描述,數(shù)字信號處理器504可使用交錯的多線程,以便處理與一個或一個以上不同組件(其與IP電話500相關(guān)聯(lián))相關(guān)聯(lián)的各種程序線程。圖5進一步指示DSP 504包括地址產(chǎn)生單元(AGU) 544。在特定實施例中,DSP 504 內(nèi)的AGU 544為上文結(jié)合圖I所描述的A⑶。圖6說明一般表示為600的便攜式數(shù)字助理(PDA)的示范性、非限制性實施例。如圖示,PDA 600包括芯片上系統(tǒng)602,所述芯片上系統(tǒng)602包括數(shù)字信號處理器(DSP) 604。 如圖6中所描繪,觸控屏幕控制器606和顯示器控制器608耦合到DSP 604。此外,觸控屏幕顯示器耦合到所述觸控屏幕控制器606和所述顯示器控制器608。圖6也指示鍵區(qū)612 可耦合到DSP 604。如圖6中進一步描繪,快閃存儲器614可耦合到DSP 604。而且,只讀存儲器 (ROM)616、動態(tài)隨機存取存儲器(DRAM)618和電子可擦除可編程只讀存儲器(EEPROM)620 可耦合到DSP 604。圖6也展示紅外數(shù)據(jù)協(xié)會(IrDA)端口 622可耦合到DSP604。另外,在特定實施例中,數(shù)碼相機624可耦合到DSP 604。如圖6中所示,在特定實施例中,立體聲音頻CODEC 626可耦合到DSP 604。第一立體聲放大器628可耦合到所述立體聲音頻CODEC 626且第一立體聲揚聲器630可耦合到所述第一立體聲放大器628。另外,麥克風放大器632可耦合到立體聲音頻CODEC 626且麥克風634可耦合到所述麥克風放大器632。圖6進一步展示第二立體聲放大器636可耦合到立體聲音頻CODEC 626且第二立體聲揚聲器638可耦合到所述第二立體聲放大器636。 在特定實施例中,立體聲耳機640也可耦合到立體聲音頻CODEC 626。圖6也說明802. 11控制器642可耦合到DSP 604且802. 11天線644可耦合到所述802. 11控制器642。此外,藍牙控制器646可耦合到DSP 604且藍牙天線648可耦合到所述藍牙控制器646。如圖6中所描繪,USB控制器650可耦合到DSP 604且USB端口 652可耦合到所述USB控制器650。另外,智能卡654 (例如,多媒體卡(MMC)或安全數(shù)字卡 (SD))可耦合到DSP 604。此外,如圖6中所示,電源656可耦合到芯片上系統(tǒng)602且所述電源656可經(jīng)由芯片上系統(tǒng)602將功率提供到PDA 600的各種組件。在特定實施例中,如圖6中所指示,顯示器610、鍵區(qū)612、IrDA端口 622、數(shù)碼相機 624、第一立體聲揚聲器630、麥克風634、第二立體聲揚聲器638、立體聲耳機640、802. 11天線644、藍牙天線648、USB端口 652和電源650都在芯片上系統(tǒng)602的外部。然而,這些組件中的每一者耦合到所述芯片上系統(tǒng)上的一個或一個以上組件。另外,在特定實施例中,數(shù)字信號處理器604可使用本文中所描述的交錯的多線程,以便處理與一個或一個以上不同組件(其與便攜式數(shù)字助理600相關(guān)聯(lián))相關(guān)聯(lián)的各種程序線程。圖6進一步指示DSP 604包括地址產(chǎn)生單元(AGU)658。在特定實施例中,DSP 604 內(nèi)的AGU 658為上文結(jié)合圖I所描述的A(iU。參看圖7,展示音頻文件播放器(例如運動圖片專家組音頻層3 (MP3)播放器)的示范性、非限制性實施例,且一般將其表示為700。如圖示,音頻文件播放器700包括芯片上系統(tǒng)702,所述芯片上系統(tǒng)702包括數(shù)字信號處理器(DSP)704。如圖7中所說明,顯示器控制器706耦合到DSP 704且顯示器708耦合到所述顯示器控制器706。在示范性實施例中,顯示器708為液晶顯示器(IXD)。圖7進一步展示鍵區(qū)710可耦合到DSP 704。如圖7中進一步描繪,快閃存儲器712和只讀存儲器(ROM) 714可耦合到DSP 704。 另外,在特定實施例中,音頻CODEC 716可耦合到DSP 704。放大器718可耦合到所述音頻 CODEC 716且單聲道揚聲器720可耦合到所述放大器718。圖7進一步指示麥克風輸入722 和立體聲輸入724也可耦合到音頻CODEC 716。在特定實施例中,立體聲耳機726也可耦合到音頻CODEC 716。圖7也指示USB端口 728和智能卡730可耦合到DSP 704。另外,電源732可耦合到芯片上系統(tǒng)702且所述電源可經(jīng)由芯片上系統(tǒng)702而將功率提供到音頻文件播放器700 的各種組件。在特定實施例中,如圖7中所指示,顯示器708、鍵區(qū)710、單聲道揚聲器720、麥克風輸入722、立體聲輸入724、立體聲耳機726、USB端口 728和電源732都在芯片上系統(tǒng)702 的外部。然而,這些組件中的每一者耦合到所述芯片上系統(tǒng)上的一個或一個以上組件。而且,在特定實施例中,數(shù)字信號處理器704可使用本文中所描述的交錯的多線程,以便處理與一個或一個以上不同組件(其與音頻文件播放器700相關(guān)聯(lián))相關(guān)聯(lián)的各種程序線程。圖7進一步指示DSP 704包括地址產(chǎn)生單元(AGU) 734。在特定實施例中,DSP 704 內(nèi)的AGU 734為上文結(jié)合圖I所描述的A⑶。圖8說明數(shù)字信號處理器(DSP)SOO的示范性、非限制性實施例的方框圖。如圖8 中所說明,DSP 800包括存儲器802,所述存儲器802經(jīng)由總線806耦合到序列器804。在特定實施例中,總線806為六十四(64)位總線且序列器804經(jīng)配置以從具有三十二(32) 位的長度的存儲器802檢索指令。總線806耦合到第一指令執(zhí)行單元808、第二指令執(zhí)行單元810、第三指令執(zhí)行單元812和第四指令執(zhí)行單元814。圖8指示每一指令執(zhí)行單元808、 810、812、814可經(jīng)由第一總線818耦合到通用寄存器堆816。通用寄存器堆816也可經(jīng)由第二總線820耦合到序列器804和存儲器802。在特定實施例中,存儲器802包括第一指令高速緩沖存儲器822、第二指令高速緩沖存儲器824、第三指令高速緩沖存儲器826、第四指令高速緩沖存儲器828、第五指令高速緩沖存儲器830和第六指令高速緩沖存儲器832。在操作期間,所述指令高速緩沖存儲器 822、824、826、828、830、832可彼此獨立地由序列器804存取。另外,在特定實施例中,每一指令高速緩沖存儲器822、824、826、828、830、832包括多個指令。如圖8中所說明,存儲器802可包括指令隊列834,所述指令隊列834包括耦合到每一指令高速緩沖存儲器822、824、826、828、830、832的指令隊列。具體來說,所述指令隊列834包括與第一指令高速緩沖存儲器822相關(guān)聯(lián)的第一指令隊列836、與第二指令高速緩沖存儲器824相關(guān)聯(lián)的第二指令隊列838、與第三指令高速緩沖存儲器826相關(guān)聯(lián)的第三指令隊列840、與第四指令高速緩沖存儲器828相關(guān)聯(lián)的第四指令隊列842、與第五指令高速緩沖存儲器830相關(guān)聯(lián)的第五指令隊列844和與第六指令高速緩沖存儲器832相關(guān)聯(lián)的第六指令隊列846。在操作期間,序列器804可經(jīng)由指令隊列834從每一指令高速緩沖存儲器822、824、826、828、830、832獲取指令。在特定實施例中,序列器804從指令隊列836、838、840、 842、844、846(以從第一指令隊列836到第六指令隊列846的次序)獲取指令。在從第六指令隊列846獲取指令后,序列器804返回到第一指令隊列836且繼續(xù)按次序從指令隊列 836、838、840、842、844、846 獲取指令。在特定實施例中,序列器804在第一模式中操作為支持超標量指令的雙向超標量序列器。此外,在特定實施例中,所述序列器也在支持超長指令字(VLIW)指令的第二模式中操作。具體來說,序列器可操作為四向VLIW序列器。在特定實施例中,第一指令執(zhí)行單元 808可執(zhí)行載入指令、存儲指令和算術(shù)邏輯單元(ALU)指令。此外,第一指令執(zhí)行單元808 可包括上文結(jié)合圖I所描述的A(iU。第二指令執(zhí)行單元810可執(zhí)行載入指令和ALU指令。 而且,第三指令執(zhí)行單元可執(zhí)行乘法指令、乘法-累加指令(MAC)、ALU指令、程序重新引導結(jié)構(gòu)和轉(zhuǎn)移寄存器(CR)指令。圖8進一步指示第四指令執(zhí)行單元814可執(zhí)行移位(S)指令、ALU指令、程序重新引導結(jié)構(gòu)和CR指令。在特定實施例中,所述程序重新引導結(jié)構(gòu)可為零額外開銷回路、分支指令、跳躍(J)指令等等。如圖8中所描繪,通用寄存器816包括第一統(tǒng)一寄存器堆848、第二統(tǒng)一寄存器堆 850、第三統(tǒng)一寄存器堆852、第四統(tǒng)一寄存器堆854、第五統(tǒng)一寄存器堆856和第六統(tǒng)一寄存器堆858。每一統(tǒng)一寄存器堆848、850、852、854、856、858對應于存儲器802內(nèi)的指令高速緩沖存儲器822、824、826、828、830、832。此外,在特定實施例中,每一統(tǒng)一寄存器堆848、 850、852、854、856、858具有相同指令且包括許多數(shù)據(jù)操作數(shù)和許多地址操作數(shù)。在數(shù)字信號處理器800的操作期間,通過序列器804從存儲器802獲取指令,且從寄存器堆848、850、852、854、856、858獲取操作數(shù)。此外,指令和操作數(shù)被發(fā)送到指定指令執(zhí)行單元808、810、812、814,且在所述指令執(zhí)行單元808、810、812、814處執(zhí)行。此外,從通用寄存器816 (例如,統(tǒng)一寄存器堆848、850、852、854、856、858中的一者)檢索一個或一個以上操作數(shù),且在指令執(zhí)行期間使用所述操作數(shù)??蓪⒚恳恢噶顖?zhí)行單元808、810、812、814 處的結(jié)果寫入到通用寄存器816(也即,寫入到統(tǒng)一寄存器堆848、850、852、854、856、858中的一者)。借助本文中所揭示的結(jié)構(gòu)配置,用于在交錯的多線程環(huán)境中操作的數(shù)字處理器的寄存器堆提供多個寄存器堆,所述寄存器堆中的每一者具有四個數(shù)據(jù)讀取端口和三個數(shù)據(jù)寫入端口。每一寄存器堆包括數(shù)據(jù)操作數(shù)和地址操作數(shù),且每一寄存器堆可用于支持特定程序線程。在操作期間,特定指令可經(jīng)由四個數(shù)據(jù)讀取端口存取高達六個操作數(shù)。舉例來說,可在一個時鐘循環(huán)期間檢索四個操作數(shù)且可在隨后的時鐘循環(huán)期間檢索兩個操作數(shù)。 僅使用四個數(shù)據(jù)讀取端口顯著減小了數(shù)字信號處理器所需的存儲器大小。因而,顯著降低了與制造數(shù)字信號處理器(包括本文所揭示的寄存器堆)相關(guān)聯(lián)的成本。此外,顯著降低了耦合到數(shù)字信號處理器的電源的功率消耗。所屬領(lǐng)域的技術(shù)人員將進一步了解,可將結(jié)合本文中所揭示的實施例而描述的各種說明性邏輯區(qū)塊、配置、模塊、電路和算法步驟實施為電子硬件、計算機軟件或兩者的組合。為清楚地說明硬件與軟件的此可互換性,在上文中已大致根據(jù)其功能性描述了各種說明性組件、區(qū)塊、配置、模塊、電路和步驟。將此功能性實施為硬件還是軟件取決于特定應用和強加于整個系統(tǒng)的設(shè)計限制。所屬領(lǐng)域的技術(shù)人員可針對每一特定應用以變化的方式實施所描述的功能性,但這些實施決策不應被解釋為導致背離本發(fā)明的范圍。
結(jié)合本文中所揭示的實施例而描述的方法或算法的步驟可直接實施在硬件中、由處理器執(zhí)行的軟件模塊中或兩者的組合中。軟件模塊可駐留在RAM存儲器、快閃存儲器、 ROM存儲器、PROM存儲器、EPROM存儲器、EEPROM存儲器、寄存器、硬盤、可移除盤、CD-ROM或此項技術(shù)中已知的任何其它形式的存儲媒體中。將示范性存儲媒體耦合到處理器,使得所述處理器可從所述存儲媒體讀取信息和將信息寫入到所述存儲媒體。在替代方案中,所述存儲媒體可與所述處理器形成一體。所述處理器和所述存儲媒體可駐留在ASIC中。所述 ASIC可駐留在計算裝置或用戶終端中。在替代方案中,所述處理器和所述存儲媒體可作為離散組件而駐留在計算裝置或用戶終端中。提供所揭示的實施例的先前描述以使得所屬領(lǐng)域的任何技術(shù)人員能夠制作或使用本發(fā)明。所屬領(lǐng)域的技術(shù)人員將容易明白對這些實施例的各種修改,且可在不背離本發(fā)明的精神或范圍的情況下將本文中所界定的一般原理應用于其它實施例。因此,并不期望本發(fā)明受限于本文所展示的實施例,而是賦予其與由所附權(quán)利要求書界定的原理和新穎特征一致的最廣泛的范圍。
權(quán)利要求
1.一種系統(tǒng),其包含第一數(shù)據(jù)通道,其包含算術(shù)邏輯單元、數(shù)據(jù)高速緩沖存儲器、多路復用器和可編程移位器裝置;第二數(shù)據(jù)通道,其包含所述算術(shù)邏輯單元、所述多路復用器和所述可編程移位器裝置;其中在地址產(chǎn)生模式中,數(shù)據(jù)經(jīng)由所述第一數(shù)據(jù)通道從所述算術(shù)邏輯單元通過所述數(shù)據(jù)高速緩沖存儲器、所述多路復用器和所述可編程移位器裝置流向寄存器堆;且其中在算術(shù)模式中,響應于由指令高速緩沖存儲器提供到所述算術(shù)邏輯單元、所述多路復用器和所述可編程移位器裝置的共用控制信號,數(shù)據(jù)經(jīng)由所述第二數(shù)據(jù)通道從所述算術(shù)邏輯單元通過所述多路復用器和所述可編程移位器裝置流向所述寄存器堆。
2.根據(jù)權(quán)利要求I所述的系統(tǒng),其中所述第一數(shù)據(jù)通道是無環(huán)路的。
3.根據(jù)權(quán)利要求I所述的系統(tǒng),其中所述算術(shù)邏輯單元選自減法器、加法器、比較器或其組合的群組。
4.根據(jù)權(quán)利要求I所述的系統(tǒng),其中所述可編程移位器裝置是載入對準器。
5.根據(jù)權(quán)利要求I所述的系統(tǒng),其中所述算術(shù)邏輯單元接收第一操作數(shù)和第二操作數(shù),其中所述第一操作數(shù)是基址,且所述第二操作數(shù)是地址偏移值。
6.根據(jù)權(quán)利要求I所述的系統(tǒng),其中所述多路復用器具有從所述算術(shù)邏輯單元接收算術(shù)輸出的第一多路復用器輸入、從所述數(shù)據(jù)高速緩沖存儲器接收數(shù)據(jù)的第二多路復用器輸入和接收所述共用控制信號的控制多路復用器輸入。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其中所述可編程移位器裝置在所述算術(shù)模式中接收和處理來自所述算術(shù)邏輯單元的所述算術(shù)輸出。
8.根據(jù)權(quán)利要求6所述的系統(tǒng),其中所述算術(shù)輸出的大小是一字節(jié)、一半字、一全字或一雙字中的一者。
9.根據(jù)權(quán)利要求6所述的系統(tǒng),其中所述算術(shù)輸出的長度是六十四個位。
10.根據(jù)權(quán)利要求6所述的系統(tǒng),其中在所述算術(shù)模式中接收的所述算術(shù)輸出包含由所述算術(shù)邏輯單元執(zhí)行的算術(shù)運算產(chǎn)生的數(shù)據(jù)和指示所述數(shù)據(jù)將被所述可編程移位器裝置移位的量的位。
11.根據(jù)權(quán)利要求10所述的系統(tǒng),其中所述位是所述算術(shù)輸出內(nèi)的一組三個最低有效位。
12.根據(jù)權(quán)利要求I所述的系統(tǒng),其中所述共用控制信號包含計算機執(zhí)行載入指令的操作碼。
13.根據(jù)權(quán)利要求I所述的系統(tǒng),其中所述共用控制信號包含計算機執(zhí)行存儲指令的操作碼。
14.根據(jù)權(quán)利要求I所述的系統(tǒng),其中所述第一數(shù)據(jù)通道和所述第二數(shù)據(jù)通道被包含在經(jīng)配置以執(zhí)行多個獨立程序線程的多線程處理器中。
15.根據(jù)權(quán)利要求I所述的系統(tǒng),其中所述系統(tǒng)是音頻文件播放器,且所述系統(tǒng)進一步包含音頻編碼器/解碼器CODEC、耦合到所述CODEC的數(shù)字信號處理器和耦合到所述數(shù)字信號處理器的多媒體卡。
16.根據(jù)權(quán)利要求I所述的系統(tǒng),其進一步包含地址產(chǎn)生單元,所述地址產(chǎn)生單元包含所述第一數(shù)據(jù)通道和所述第二數(shù)據(jù)通道,其中所述指令高速緩沖存儲器在所述地址產(chǎn)生單元的外部。
17.根據(jù)權(quán)利要求I所述的系統(tǒng),其中所述可編程移位器裝置包含所述多路復用器。
18.根據(jù)權(quán)利要求I所述的系統(tǒng),其中所述第一數(shù)據(jù)通道和所述第二數(shù)據(jù)通道共享一個多路復用器。
19.一種方法,其包含在地址產(chǎn)生模式中經(jīng)由第一數(shù)據(jù)通道傳送數(shù)據(jù),其中所述第一數(shù)據(jù)通道包含算術(shù)邏輯單元、數(shù)據(jù)高速緩沖存儲器、多路復用器和可編程移位器裝置,其中在所述地址產(chǎn)生模式中,數(shù)據(jù)經(jīng)由所述第一數(shù)據(jù)通道從所述算術(shù)邏輯單元通過所述數(shù)據(jù)高速緩沖存儲器、所述多路復用器和所述可編程移位器裝置流向寄存器堆;和在算術(shù)模式中經(jīng)由第二數(shù)據(jù)通道傳送數(shù)據(jù),其中所述第二數(shù)據(jù)通道包含所述算術(shù)邏輯單元、所述多路復用器和所述可編程移位器裝置,其中在所述算術(shù)模式中,響應于由指令高速緩沖存儲器提供到所述算術(shù)邏輯單元、所述多路復用器和所述可編程移位器裝置的共用控制信號,數(shù)據(jù)經(jīng)由所述第二數(shù)據(jù)通道從所述算術(shù)邏輯單元通過所述多路復用器和所述可編程移位器裝置流向所述寄存器堆。
20.根據(jù)權(quán)利要求19所述的方法,其進一步包含當所述共用控制信號指示所述算術(shù)模式時,在所述算術(shù)邏輯單元處產(chǎn)生算術(shù)輸出。
21.根據(jù)權(quán)利要求20所述的方法,其進一步包含當所述共用控制信號指示所述算術(shù)模式時,在所述多路復用器處接收所述算術(shù)輸出。
22.根據(jù)權(quán)利要求19所述的方法,其進一步包含當所述算術(shù)邏輯單元在所述地址產(chǎn)生模式中時,在所述算術(shù)邏輯單元處產(chǎn)生地址。
23.根據(jù)權(quán)利要求22所述的方法,其進一步包含響應于從所述算術(shù)邏輯單元接收所述地址,從所述數(shù)據(jù)高速緩沖存儲器檢索數(shù)據(jù)。
24.根據(jù)權(quán)利要求23所述的方法,其進一步包含在所述地址產(chǎn)生模式中,在所述可編程移位器裝置處接收檢索到的高速緩沖存儲器數(shù)據(jù)。
全文摘要
本發(fā)明揭示一種用于處理器中的算術(shù)邏輯和移位裝置,且其包括算術(shù)邏輯單元,所述算術(shù)邏輯單元具有第一輸入,其用以從第一寄存器端口接收第一操作數(shù);第二輸入,其用以從第二寄存器端口接收第二操作數(shù);和輸出,其用以在第一操作模式中將存儲器地址選擇性地提供到存儲器單元,且在第二模式中選擇性地提供算術(shù)輸出。此外,所述算術(shù)邏輯和移位裝置包括可編程移位器裝置,所述可編程移位器裝置具有第一輸入,其用以從所述存儲器單元接收數(shù)據(jù);第二輸入,其用以接收所述算術(shù)輸出;第三輸入,其用以接收計算機執(zhí)行指令的操作碼;和移位輸出,其用以提供移位數(shù)據(jù)。
文檔編號G06F9/38GK102591619SQ201110315069
公開日2012年7月18日 申請日期2006年11月2日 優(yōu)先權(quán)日2005年11月2日
發(fā)明者穆罕默德·艾哈邁德, 蘇賈特·賈米爾, 阿賈伊·阿南特·英格爾 申請人:高通股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1