專利名稱:具有共享存儲(chǔ)器判優(yōu)的多處理器移動(dòng)終端的制作方法
相關(guān)申請(qǐng)本申請(qǐng)基于35 U.S.C.§119(e)要求以下美國(guó)臨時(shí)申請(qǐng)的優(yōu)先權(quán)2003年12月30日提交的申請(qǐng)序號(hào)No.60/533,158。通過(guò)參考將該申請(qǐng)全部在此并入。
背景技術(shù):
本發(fā)明一般涉及無(wú)線通信領(lǐng)域,尤其是涉及具有共享訪問(wèn)存儲(chǔ)器資源的多CPU的移動(dòng)終端。
在早期的無(wú)線通信系統(tǒng)中,移動(dòng)終端穿過(guò)模擬空中接口發(fā)送和接收音頻通信。數(shù)字無(wú)線通信系統(tǒng)的發(fā)展和使用增加了DAC和ADC操作、糾錯(cuò)、卷積編碼等。之后最近的工業(yè)標(biāo)準(zhǔn)增加了移動(dòng)終端和一個(gè)或多個(gè)基站之間的附加或控制通信,包括速率控制、功率控制、輔助移動(dòng)的硬和軟手動(dòng)切斷等。所有的這些操作和通信都需要實(shí)時(shí)控制,一般通過(guò)在存儲(chǔ)程序的微處理器或數(shù)字信號(hào)處理器上執(zhí)行的實(shí)時(shí)軟件來(lái)實(shí)施,在此共同地稱為CPU(中央處理單元)。實(shí)時(shí)軟件的特征是時(shí)間關(guān)鍵的、確定性的和對(duì)等待時(shí)間高度敏感的。
現(xiàn)代的無(wú)線通信系統(tǒng)提供過(guò)多的服務(wù)和性能,能夠通過(guò)穿過(guò)空中接口的非語(yǔ)音數(shù)字?jǐn)?shù)據(jù)通信的能力來(lái)實(shí)現(xiàn),以及增加了移動(dòng)終端中的計(jì)算功率。這種服務(wù)包括預(yù)訂數(shù)據(jù)廣播服務(wù),如實(shí)時(shí)股票報(bào)價(jià)或體育比分;因特網(wǎng)瀏覽;合作計(jì)算;游戲;電子郵件;和數(shù)據(jù)、圖像和視頻文件的傳輸和顯示。移動(dòng)終端能力包括個(gè)人效率軟件,如日歷、計(jì)算器、地址薄等。在它們需要實(shí)時(shí)軟件以足夠主觀地響應(yīng)性能來(lái)執(zhí)行的意義上說(shuō),盡管本質(zhì)上是交互的,但這些服務(wù)和性能中的許多不是實(shí)時(shí)的。這些服務(wù)和性能可通過(guò)移動(dòng)終端內(nèi)的CPU上執(zhí)行的非實(shí)時(shí)軟件來(lái)實(shí)施。非實(shí)時(shí)軟件的特征在于具有相對(duì)靈活性的期限,經(jīng)常是非確定性的,并且容許一定程度的等待時(shí)間。
為了以成本有效的方式提供足夠的計(jì)算功率,許多移動(dòng)終端設(shè)計(jì)者利用兩個(gè)或更多的并發(fā)執(zhí)行CPU。這些多個(gè)CPU通常共享存儲(chǔ)器資源以便易于代碼開(kāi)發(fā)和管理、最大操作靈活性和減小成本。在任何時(shí)候當(dāng)多個(gè)CPU訪問(wèn)共享的存儲(chǔ)器時(shí),則需要一些判優(yōu)系統(tǒng)來(lái)確保數(shù)據(jù)完整。在本領(lǐng)域中公知幾個(gè)這種判優(yōu)策略。
前后緊接(lockstep)的判優(yōu)在具有若干同樣的CPU的對(duì)稱處理的情況下是有用的。為了并行計(jì)算或冗余,每個(gè)CPU都以“前后緊接的”的方式執(zhí)行相同指令。
信號(hào)標(biāo)(semaphore)或“標(biāo)記位”判優(yōu)對(duì)多個(gè)異步的處理裝置是有用的。典型地,具體的存儲(chǔ)器位置被指定為信號(hào)標(biāo)位置。一旦訪問(wèn)了共享的存儲(chǔ)器資源,則第一CPU設(shè)定信號(hào)標(biāo)位。其它的CPU存儲(chǔ)器訪問(wèn)限制于該位的讀取,并且它們沒(méi)有試圖訪問(wèn)被設(shè)置時(shí)的存儲(chǔ)器。一旦完成了其存儲(chǔ)器操作,第一CPU則清除信號(hào)標(biāo)位作為其最后的存儲(chǔ)器操作。一旦隨后讀取了信號(hào)標(biāo)位并發(fā)現(xiàn)它是清除的,第二CPU則可訪問(wèn)存儲(chǔ)器,將該信號(hào)標(biāo)位設(shè)定為其第一存儲(chǔ)器操作以在其存儲(chǔ)器訪問(wèn)期間將其它CPU“關(guān)在外邊”。當(dāng)單獨(dú)的CPU能夠高速緩存指令和數(shù)據(jù)時(shí),和/或當(dāng)訪問(wèn)共享存儲(chǔ)器資源的請(qǐng)求是偶發(fā)性的時(shí),該判優(yōu)策略工作地很好。
通過(guò)將存儲(chǔ)器依次授權(quán)給每個(gè)請(qǐng)求CPU,在所有CPU中循環(huán)賽式判優(yōu)相等地共享所有的存儲(chǔ)器訪問(wèn)。沒(méi)有CPU被給予高于任何其它請(qǐng)求CPU的訪問(wèn)存儲(chǔ)器的優(yōu)先級(jí)。
在移動(dòng)終端中的一個(gè)或多個(gè)CPU在執(zhí)行實(shí)時(shí)代碼的情況下,通過(guò)實(shí)時(shí)CPU被給予高于執(zhí)行非實(shí)時(shí)軟件的任意CPU的優(yōu)先級(jí)訪問(wèn)的要求,而使判優(yōu)任務(wù)復(fù)雜化。現(xiàn)有技術(shù)的判優(yōu)策略中沒(méi)有任何一個(gè)解決了這一優(yōu)先級(jí)訪問(wèn)的需要。
發(fā)明內(nèi)容
本發(fā)明涉及一種在移動(dòng)終端中的至少兩個(gè)CPU之間對(duì)訪問(wèn)存儲(chǔ)器資源進(jìn)行判優(yōu)的方法。在包括至少兩個(gè)CPU和共享的存儲(chǔ)器資源的移動(dòng)終端中,該方法包括接收來(lái)自每個(gè)所述的CPU的請(qǐng)求和優(yōu)先級(jí)指示,識(shí)別所有請(qǐng)求CPU當(dāng)中的最高優(yōu)先級(jí)請(qǐng)求。如果所述的存儲(chǔ)器資源是可用的,則將訪問(wèn)所述存儲(chǔ)器資源授權(quán)給最高優(yōu)先級(jí)的請(qǐng)求所述CPU。如果訪問(wèn)所述的存儲(chǔ)器資源被授權(quán)給相等的或更高優(yōu)先級(jí)的另一CPU,則允許所述另外的CPU完成其訪問(wèn)所述的存儲(chǔ)器資源。如果訪問(wèn)所述的存儲(chǔ)器資源被授權(quán)給較低優(yōu)先級(jí)的另一CPU,則中斷所述另外的CPU訪問(wèn),并且將訪問(wèn)所述存儲(chǔ)器資源授權(quán)給最高優(yōu)先級(jí)的請(qǐng)求所述CPU。
優(yōu)先級(jí)指示可以是一個(gè)或多個(gè)位的信號(hào),具有在其中編碼的請(qǐng)求優(yōu)先級(jí)??蛇x地,優(yōu)先級(jí)指示可以是由CPU提供的地址連同共享的存儲(chǔ)器訪問(wèn)請(qǐng)求,其中請(qǐng)求CPU當(dāng)中的優(yōu)先級(jí)由存儲(chǔ)器映射確定。
圖1是代表性的移動(dòng)終端的功能框圖。
圖2是根據(jù)本發(fā)明一個(gè)實(shí)施例的多CPU、共享的存儲(chǔ)器控制單元的功能框圖。
圖3是代表性的存儲(chǔ)器示意圖。
圖4是根據(jù)本發(fā)明第二實(shí)施例的多CPU、共享存儲(chǔ)器控制單元的功能框圖。
具體實(shí)施例方式
本發(fā)明涉及在移動(dòng)終端內(nèi)多個(gè)處理器中的共享存儲(chǔ)器資源的訪問(wèn)控制。如在此所使用的,術(shù)語(yǔ)“移動(dòng)終端”可包括具有或不具有多線顯示的蜂窩無(wú)線電話;可組合蜂窩無(wú)線電話與數(shù)據(jù)處理、傳真和數(shù)據(jù)通信能力的個(gè)人通信系統(tǒng)(PCS)終端;可以包括無(wú)線電話、尋呼機(jī)、因特網(wǎng)/內(nèi)聯(lián)網(wǎng)訪問(wèn)、網(wǎng)絡(luò)瀏覽器、管理器、日歷和/或全球定位系統(tǒng)(GPS)接收器的個(gè)人數(shù)字助理(PDA);和包括無(wú)線電話收發(fā)器的常規(guī)膝上型電腦和/或掌上型電腦接收器或其它裝置。移動(dòng)終端還可稱作為“普及計(jì)算”裝置。
圖1是代表性的移動(dòng)終端10的框圖,示出了操作者接口12和通信電子裝置30的一個(gè)實(shí)施例。操作者接口12包含用戶利用移動(dòng)終端10從事語(yǔ)音通信所必需的設(shè)備和功能,以及用戶控制所述功能和利用移動(dòng)終端10的數(shù)據(jù)通信能力所必需的輸入和顯示器。通信電子設(shè)備30包含移動(dòng)終端10形成能夠發(fā)送和接收數(shù)字或模擬語(yǔ)音和/或數(shù)據(jù)通信信號(hào)的全部功能性無(wú)線電收發(fā)器所必需的電路和設(shè)備。具體地,通信電子設(shè)備30連接至天線32,并且可包括具有存儲(chǔ)器70的控制單元40、發(fā)射器80和接收器90。
操作者接口12包括顯示器14、鍵盤(pán)16、接口控制單元18、麥克風(fēng)20、揚(yáng)聲器22和揚(yáng)聲器控制器24。顯示器14能夠使用戶看到撥號(hào)數(shù)字和呼叫狀態(tài)信息、用戶通過(guò)其選擇模式和特征的顯示菜單,并且一般可顯示包括文本、圖像、圖形、視頻等的各種內(nèi)容。輸入16包括操作者通過(guò)其撥數(shù)字的鍵盤(pán),且可另外包括按鍵、按鈕和一種或多個(gè)操縱桿、觸敏墊或觸控筆輸入?yún)^(qū),操作者通過(guò)它們輸入命令、選擇選項(xiàng),或與移動(dòng)終端交互。輸入16可另外包括來(lái)自顯示器14的輸入,其中該顯示器14具有觸摸屏能力。任選地,照相機(jī)輸入17可從與移動(dòng)終端整體形成的照相機(jī)或連接外部照相機(jī)的連接器來(lái)提供圖像或視頻輸入。麥克風(fēng)20從用戶接收音頻信號(hào)并且將所述音頻信號(hào)轉(zhuǎn)換成傳遞到發(fā)射器80的模擬信號(hào)。揚(yáng)聲器22將來(lái)自接收器90和/或接口控制單元18的模擬信號(hào)轉(zhuǎn)換成可以被用戶聽(tīng)到的音頻信號(hào)。接口控制單元18將顯示器14、輸入16、麥克風(fēng)20和揚(yáng)聲器22接口至控制單元40。如本領(lǐng)域技術(shù)人員容易理解的,接口控制單元18可實(shí)現(xiàn)為由控制單元40執(zhí)行的軟件模塊。
觀察通信電子設(shè)備30,如圖1所示,來(lái)自麥克風(fēng)20的模擬信號(hào)被指向發(fā)射器80。發(fā)射器80包括模數(shù)轉(zhuǎn)換器82、數(shù)字信號(hào)處理器84、調(diào)制器86和放大器88。模數(shù)轉(zhuǎn)換器82將來(lái)自麥克風(fēng)20的模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)。數(shù)字信號(hào)被傳遞給數(shù)字信號(hào)處理器(DSP)84。數(shù)字信號(hào)處理器84壓縮該數(shù)字信號(hào)并且插入檢錯(cuò)、糾錯(cuò)和信令信息。來(lái)自數(shù)字信號(hào)處理器84的被壓縮和編碼的信號(hào)傳遞給調(diào)制器86。RF頻率發(fā)生器87產(chǎn)生基準(zhǔn)載波頻率,并且將它傳遞給調(diào)制器86。調(diào)制器86將數(shù)字信號(hào)轉(zhuǎn)換成適合于在RF載波上傳輸?shù)男问?。放大?8則放大了經(jīng)由天線32發(fā)射的調(diào)制器86的輸出。
接收器90包括低噪聲放大器92、接收信號(hào)處理器94和數(shù)模轉(zhuǎn)換器96。接收的信號(hào)傳遞給低噪聲放大器92,該低噪聲放大器92將低水平RF數(shù)字信號(hào)放大至適合于輸入至數(shù)字信號(hào)處理器94的水平。數(shù)字信號(hào)處理器94包括解調(diào)器和信道解碼器。解調(diào)器從所接收的信號(hào)中提取所發(fā)送的位序列。信道解碼器檢測(cè)和校正所接收信號(hào)中的信道錯(cuò)誤。信道解碼器還將控制和信令數(shù)據(jù)與語(yǔ)音數(shù)據(jù)分離。數(shù)字信號(hào)處理器94還可包括均衡器來(lái)補(bǔ)償所發(fā)送信號(hào)的相位和幅度畸變??刂坪托帕顢?shù)據(jù)傳遞給控制單元40。語(yǔ)音數(shù)據(jù)由語(yǔ)音解碼器處理并且傳遞給數(shù)模轉(zhuǎn)換器96。數(shù)模轉(zhuǎn)換器96將所述的語(yǔ)音數(shù)據(jù)轉(zhuǎn)換成施加到揚(yáng)聲器22以產(chǎn)生能夠被用戶聽(tīng)到的音頻信號(hào)的模擬信號(hào)。發(fā)射器80和接收器90耦接至天線32。天線32用于發(fā)射和接收。
控制單元40用于協(xié)調(diào)發(fā)射器80和接收器90的操作。這些功能包括功率控制、信道選擇、定時(shí)以及許多其它的功能??刂茊卧?0將信令消息插入到發(fā)送的信號(hào)中并且從所接收的信號(hào)中提取信令消息。在移動(dòng)終端10中,控制單元40響應(yīng)于包含在信令消息中的任意基站命令,并且執(zhí)行這些命令。當(dāng)用戶經(jīng)輸入16如鍵盤(pán)輸入命令時(shí),將所述命令轉(zhuǎn)移給控制單元40用于動(dòng)作。這些任務(wù)一般由在控制單元40內(nèi)的所存儲(chǔ)的程序處理器上執(zhí)行的實(shí)時(shí)軟件來(lái)進(jìn)行。
逐漸增加地,控制單元40還進(jìn)行各種數(shù)據(jù)處理任務(wù),如壓縮和解壓縮圖像、音頻和視頻數(shù)據(jù);執(zhí)行用戶程序,如日歷、游戲等;執(zhí)行用戶與因特網(wǎng)交互的瀏覽器軟件;和類似的計(jì)算任務(wù),其可由在控制單元40內(nèi)所存儲(chǔ)的程序處理器上執(zhí)行的非實(shí)時(shí)軟件來(lái)進(jìn)行。
由于在許多情況下需要以上所描述的實(shí)時(shí)和非實(shí)時(shí)軟件同時(shí)執(zhí)行,以及處理增加的計(jì)算載荷,因此控制單元40可包括多個(gè)處理器,如圖1、2和4所描繪的以及在此更詳細(xì)描述的。
控制單元40操作性地連接至存儲(chǔ)器70,其可包括如本領(lǐng)域技術(shù)人員公知的RAM、ROM、EEPROM等的任意混合。存儲(chǔ)器70可用于存儲(chǔ)經(jīng)顯示器14上顯示的菜單所訪問(wèn)和控制的各種程序化的特征和功能,并且控制從輸入16接收的輸入。存儲(chǔ)器70還可存儲(chǔ)實(shí)時(shí)和非實(shí)時(shí)代碼,并且動(dòng)態(tài)地用于控制單元40中的這種代碼的執(zhí)行。根據(jù)本發(fā)明,存儲(chǔ)器70是經(jīng)由執(zhí)行所有請(qǐng)求CPU當(dāng)中的優(yōu)先級(jí)化判優(yōu)的存儲(chǔ)器管理單元來(lái)由兩個(gè)或更多的CPU訪問(wèn)的共享資源。
圖2描繪了用于移動(dòng)終端的多CPU、共享的存儲(chǔ)器控制單元40的一個(gè)實(shí)施例??刂茊卧?0包括CPU 42和44,其兩個(gè)都經(jīng)由存儲(chǔ)器管理單元(MMU)46訪問(wèn)共享的存儲(chǔ)器資源47。存儲(chǔ)器資源47還經(jīng)由數(shù)據(jù)總線56連接至兩個(gè)CPU 42、44。
具體地,每個(gè)CPU 42、44經(jīng)由地址總線48和握手信號(hào)REQUEST 50和WAIT 52來(lái)訪問(wèn)MMU 46。當(dāng)CPU 42、44希望訪問(wèn)存儲(chǔ)器資源47時(shí),其將地址放置在地址總線48上并且聲明它的REQUEST信號(hào)50。MMU 46通過(guò)不聲明(deasserting)適當(dāng)?shù)腤AIT信號(hào)52來(lái)授權(quán)訪問(wèn)CPU 42、44。MMU 46則從相關(guān)的地址總線46取得地址,任選地執(zhí)行地址空間翻譯(例如,對(duì)物理地址的虛擬),并且在地址總線54上輸出地址至存儲(chǔ)器資源47。為了清楚起見(jiàn),省略了與本發(fā)明不直接相關(guān)的另外的控制,如本領(lǐng)域技術(shù)人員公知的存儲(chǔ)體或芯片選擇、讀/寫(xiě)信號(hào)、行和列刷新信號(hào)等。
根據(jù)本發(fā)明,執(zhí)行實(shí)時(shí)代碼的CPU 42、44通過(guò)MMU 46通過(guò)存儲(chǔ)器映射來(lái)授權(quán)優(yōu)先訪問(wèn)共享的存儲(chǔ)器資源47。如圖3所描繪的,將邏輯地址范圍的代碼部分分成至少兩個(gè)分立的范圍。例如,地址范圍60可分成第一非實(shí)時(shí)地址范圍62;第二實(shí)時(shí)地址范圍64;第三非實(shí)時(shí)地址范圍66;和第四實(shí)時(shí)地址范圍68。在軟件鏈接處理期間,包含實(shí)時(shí)代碼的軟件模塊定位在實(shí)時(shí)地址范圍64、68的一個(gè)中。僅包含非實(shí)時(shí)代碼的軟件模塊定位在非實(shí)時(shí)地址范圍62、66的一個(gè)中。這可在ROM或快閃存儲(chǔ)器的情況下通過(guò)靜態(tài)連接器或者在來(lái)自RAM的代碼執(zhí)行的情況下通過(guò)動(dòng)態(tài)裝入程序來(lái)完成。
一旦檢測(cè)了來(lái)自一個(gè)或多個(gè)CPU 42、44的REQUEST信號(hào)50的聲明,MMU 46就部分地解碼請(qǐng)求CPU 42、44的地址總線48上的地址,并且確定每個(gè)訪問(wèn)請(qǐng)求落入范圍62、64、66、68的哪一個(gè)內(nèi)?;谥付ńo各個(gè)范圍的實(shí)時(shí)或非實(shí)時(shí)性質(zhì),MMU 46根據(jù)以下的規(guī)則確定請(qǐng)求CPU 42、44當(dāng)中的存儲(chǔ)器訪問(wèn)優(yōu)先級(jí)。當(dāng)任意的CPU 42、44請(qǐng)求訪問(wèn)存儲(chǔ)器47時(shí)如果存儲(chǔ)器47當(dāng)前不被另外的CPU 42、44訪問(wèn),則MMU 46將通過(guò)不聲明與請(qǐng)求CPU 42、44相關(guān)的WAIT信號(hào)52通過(guò)請(qǐng)求CPU 42、44來(lái)允許訪問(wèn)。
如果另外的CPU 42、44當(dāng)前訪問(wèn)實(shí)時(shí)地址范圍64、68內(nèi)的存儲(chǔ)器47,則MMU 46將通過(guò)聲明與請(qǐng)求的CPU 42、44相關(guān)的WAIT信號(hào)52推遲所請(qǐng)求的訪問(wèn)。
如果另外的CPU 42、44當(dāng)前訪問(wèn)非實(shí)時(shí)地址范圍62、66內(nèi)的存儲(chǔ)器47,并且所請(qǐng)求的訪問(wèn)落入實(shí)時(shí)地址范圍64、68內(nèi),則通過(guò)聲明與當(dāng)前訪問(wèn)CPU 42、44有關(guān)的WAIT信號(hào)52,MMU 46將迫使非實(shí)時(shí)CPU 42、43為等待狀態(tài),并且MMU 46將通過(guò)不聲明與請(qǐng)求CPU 42、44相關(guān)的WAIT信號(hào)52通過(guò)實(shí)時(shí)請(qǐng)求CPU 42、44來(lái)允許訪問(wèn)。
如果另外的CPU 42、44當(dāng)前訪問(wèn)實(shí)時(shí)地址范圍64、68內(nèi)的存儲(chǔ)器47,并且所請(qǐng)求的訪問(wèn)落入實(shí)時(shí)地址范圍64、68內(nèi),MMU 46將允許在循環(huán)賽(round-robin)方式基礎(chǔ)上訪問(wèn)請(qǐng)求的CPU 42、44。
以該方式,執(zhí)行實(shí)時(shí)軟件的CPU 42、44被授權(quán)優(yōu)先于執(zhí)行非實(shí)時(shí)軟件的CPU 42、44訪問(wèn)共享存儲(chǔ)器資源47。這減小了由實(shí)時(shí)CPU 42、44訪問(wèn)的存儲(chǔ)器47的等待時(shí)間。MMU 46確定基于存儲(chǔ)器管理的訪問(wèn)優(yōu)先級(jí)。該方法具有能夠?qū)崿F(xiàn)系統(tǒng)設(shè)計(jì)的更大靈活性,通過(guò)共享資源節(jié)省成本,降低軟件復(fù)雜性,并且確保了實(shí)時(shí)代碼的確定性執(zhí)行的潛能。
圖3描繪了根據(jù)本發(fā)明另一實(shí)施例的以共享存儲(chǔ)器資源訪問(wèn)為特征的系統(tǒng)。每個(gè)CPU 42、44執(zhí)行操作系統(tǒng)軟件72和多個(gè)處理74、76、78。每個(gè)處理74、76、78可以是實(shí)時(shí)的或非實(shí)時(shí)的,并且可以以由操作系統(tǒng)72指定的變化優(yōu)先級(jí)P1、P2、P3來(lái)執(zhí)行。每個(gè)CPU 42、44都包括總線接口70和至如上所述的MMU 46的相同接口信號(hào),另外具有PRIORITY信號(hào)49。PRIORITY信號(hào)49可包括單個(gè)位,其例如可由“1”表示實(shí)時(shí)代碼或由“0”表示非實(shí)時(shí)代碼。可選地,PRIORITY信號(hào)49可包括多個(gè)位,具有以信號(hào)位的狀態(tài)編碼的優(yōu)先級(jí)范圍。
總線接口70將運(yùn)行在各個(gè)CPU 42、44上的處理的優(yōu)先級(jí)P1、P2、P3翻譯成PRIORITY信號(hào)49,如果需要?jiǎng)t將處理優(yōu)先級(jí)縮放成用于PRIORITY信號(hào)49的適當(dāng)范圍。PRIORITY信號(hào)49提供了無(wú)論何時(shí)聲明了相關(guān)的REQUEST信號(hào)50時(shí)CPU 42、44存儲(chǔ)器訪問(wèn)請(qǐng)求的優(yōu)先級(jí)。如果多個(gè)CPU 42、44同時(shí)請(qǐng)求訪問(wèn)共享的存儲(chǔ)器資源47,則具有在其各個(gè)PRIORITY信號(hào)50上編碼的最高優(yōu)先級(jí)的CPU 42、44被授權(quán)訪問(wèn)存儲(chǔ)器資源47。如果兩個(gè)或更多的具有相同優(yōu)先級(jí)的CPU 42、44同時(shí)請(qǐng)求訪問(wèn)(比任意其它請(qǐng)求CPU 42、44更高),則高優(yōu)先級(jí)請(qǐng)求CPU 42、44被授權(quán)在循環(huán)賽方式基礎(chǔ)上訪問(wèn)。
由于對(duì)軟件模塊不強(qiáng)加任何的鏈接要求(例如,將它們定位在邏輯存儲(chǔ)器的專用實(shí)時(shí)或非實(shí)時(shí)的區(qū)域中),使用PRIORITY信號(hào)49可提供比存儲(chǔ)器映射判優(yōu)策略更大的靈活性。由于軟件處理可獨(dú)立于它們以實(shí)時(shí)或非實(shí)時(shí)執(zhí)行而被指定不同的優(yōu)先級(jí)水平,因此該判優(yōu)系統(tǒng)還提供另外的靈活性。另外,MMU 46硬件可被重新用于不同的軟件配置。
盡管在此已關(guān)于本發(fā)明的具體特征、方面和實(shí)施例描述了本發(fā)明,但顯而易見(jiàn)的是,許多改變、修改和/或其它實(shí)施例可以在本發(fā)明廣闊的范圍內(nèi),因此,所有的改變、修改和實(shí)施例都認(rèn)為在本發(fā)明的范圍內(nèi)。因此本實(shí)施例構(gòu)造在如所示例的且不限制的所有方面中,并且落入所附加的權(quán)利要求的意思和等效范圍內(nèi)的所有改變都指的是包含于其中。
權(quán)利要求
1.一種在移動(dòng)終端中的至少兩個(gè)CPU之間對(duì)訪問(wèn)存儲(chǔ)器資源進(jìn)行判優(yōu)的方法,包括提供包括至少兩個(gè)CPU(42、44)和共享的存儲(chǔ)器資源(47)的移動(dòng)終端(10);接收來(lái)自每個(gè)所述的CPU(42、44)的請(qǐng)求和優(yōu)先級(jí)指示;識(shí)別所有請(qǐng)求CPU當(dāng)中的最高優(yōu)先級(jí)請(qǐng)求;如果所述的存儲(chǔ)器資源(47)是可用的,則將訪問(wèn)所述存儲(chǔ)器資源(47)授權(quán)給最高優(yōu)先級(jí)的請(qǐng)求所述CPU;如果訪問(wèn)所述的存儲(chǔ)器資源(47)被授權(quán)給相等的或更高優(yōu)先級(jí)的另一CPU,則允許所述另外的CPU完成其訪問(wèn)所述的存儲(chǔ)器資源(47);以及如果訪問(wèn)所述的存儲(chǔ)器資源(47)被授權(quán)給較低優(yōu)先級(jí)的另一CPU,則中斷所述另外的CPU訪問(wèn)并且將訪問(wèn)所述存儲(chǔ)器資源(47)授權(quán)給最高優(yōu)先級(jí)的請(qǐng)求所述CPU。
2.如權(quán)利要求1的方法,其中所述的優(yōu)先級(jí)指示包括二進(jìn)制信號(hào)。
3.如權(quán)利要求2的方法,其中所述二進(jìn)制信號(hào)的狀態(tài)指示了在相關(guān)CPU上執(zhí)行的實(shí)時(shí)或非實(shí)時(shí)處理。
4.如權(quán)利要求3的方法,其中所述的實(shí)時(shí)處理具有比所述的非實(shí)時(shí)處理更高的優(yōu)先級(jí)。
5.如權(quán)利要求2的方法,其中所述的優(yōu)先級(jí)指示包括多個(gè)二進(jìn)制信號(hào),且其中相應(yīng)的多個(gè)優(yōu)先級(jí)水平以所述二進(jìn)制信號(hào)的狀態(tài)進(jìn)行編碼。
6.如權(quán)利要求1的方法,其中所述的優(yōu)先級(jí)指示包括與所述請(qǐng)求相關(guān)的地址。
7.如權(quán)利要求6的方法,其中識(shí)別所有請(qǐng)求CPU當(dāng)中的最高優(yōu)先級(jí)請(qǐng)求包括部分地解碼所述地址和識(shí)別包含存儲(chǔ)器映射中的所述地址的范圍(60)。
8.如權(quán)利要求7的方法,其中所述的存儲(chǔ)器映射包括實(shí)時(shí)范圍(64、68)和非實(shí)時(shí)范圍(62、66)。
9.如權(quán)利要求8的方法,其中在軟件鏈接處理期間,包含實(shí)時(shí)代碼的軟件模塊定位在所述的實(shí)時(shí)范圍(64、68)中,包含非實(shí)時(shí)代碼的軟件模塊定位在所述的非實(shí)時(shí)范圍(62、66)中。
10.如權(quán)利要求7的方法,其中在所述的實(shí)時(shí)范圍(64、68)中的地址具有比所述非實(shí)時(shí)范圍(62、66)中的地址更高的優(yōu)先級(jí)。
11.如權(quán)利要求1的方法,進(jìn)一步包括如果訪問(wèn)所述的存儲(chǔ)器資源(47)被授權(quán)給相等的或更高優(yōu)先級(jí)的另一CPU,則在完成所述另外的CPU訪問(wèn)之后,將訪問(wèn)所述的存儲(chǔ)器資源(47)授權(quán)給最高請(qǐng)求的所述CPU。
12.如權(quán)利要求1的方法,進(jìn)一步包括如果由兩個(gè)或更多的請(qǐng)求CPU共享所述的最高優(yōu)先級(jí)請(qǐng)求,則在循環(huán)賽方式基礎(chǔ)上順序地將訪問(wèn)所述的存儲(chǔ)器資源(47)授權(quán)給所述最高請(qǐng)求CPU。
13.一種包括至少兩個(gè)CPU和共享存儲(chǔ)器資源的移動(dòng)終端,包括移動(dòng)終端(10);在所述移動(dòng)終端(10)中的至少兩個(gè)CPU(42、44),每個(gè)都可操作以執(zhí)行實(shí)時(shí)和非實(shí)時(shí)軟件模塊;在所述移動(dòng)終端(10)中的共享存儲(chǔ)器資源(47);以及在所述移動(dòng)終端(10)中的存儲(chǔ)器管理單元(46),可操作以在所述至少兩個(gè)CPU(42、44)當(dāng)中對(duì)訪問(wèn)所述共享存儲(chǔ)器資源(47)進(jìn)行判優(yōu),其中執(zhí)行實(shí)時(shí)軟件模塊的CPU具有比執(zhí)行非實(shí)時(shí)軟件模塊的CPU更高的訪問(wèn)優(yōu)先級(jí)。
14.如權(quán)利要求13的移動(dòng)終端,其中所述的CPU(42、44)將訪問(wèn)所述共享存儲(chǔ)器資源(47)的請(qǐng)求和地址傳輸至所述存儲(chǔ)器管理單元(46)。
15.如權(quán)利要求14的移動(dòng)終端,其中所述的存儲(chǔ)器管理單元(46)為每個(gè)請(qǐng)求CPU部分地解碼所述地址,以確定所述的CPU是執(zhí)行實(shí)時(shí)還是非實(shí)時(shí)軟件模塊。
16.如權(quán)利要求15的移動(dòng)終端,其中所述的存儲(chǔ)器管理單元(46)保持具有實(shí)時(shí)(64、68)和非實(shí)時(shí)范圍(62、66)的存儲(chǔ)器映射,以及其中基于所述部分解碼的地址所落入的范圍來(lái)確定每個(gè)所述請(qǐng)求CPU執(zhí)行實(shí)時(shí)或非實(shí)時(shí)軟件模塊。
17.如權(quán)利要求13的移動(dòng)終端,其中所述的CPU(42、44)將訪問(wèn)所述共享存儲(chǔ)器資源(47)的請(qǐng)求和優(yōu)先級(jí)信號(hào)(49)傳輸給所述存儲(chǔ)器管理單元(46)。
18.如權(quán)利要求17的移動(dòng)終端,其中所述的優(yōu)先級(jí)信號(hào)(49)指示了相關(guān)的CPU是執(zhí)行實(shí)時(shí)還是非實(shí)時(shí)軟件模塊。
19.如權(quán)利要求17的移動(dòng)終端,其中所述的優(yōu)先級(jí)信號(hào)(49)是多位信號(hào),并且其中優(yōu)先級(jí)水平以所述信號(hào)(49)的位模式進(jìn)行編碼。
全文摘要
在包括至少兩個(gè)CPU(42、44)和共享的存儲(chǔ)器資源(47)的移動(dòng)終端(10)中,執(zhí)行實(shí)時(shí)代碼的CPU具有執(zhí)行非實(shí)時(shí)代碼的CPU上方的存儲(chǔ)器(47)的訪問(wèn)優(yōu)先級(jí)。在一個(gè)實(shí)施例中,實(shí)時(shí)代碼和非實(shí)時(shí)代碼定位在邏輯存儲(chǔ)器的分別的區(qū)域中,并且CPU(42、44)和共享存儲(chǔ)器資源(47)之間的存儲(chǔ)器管理單元(46)部分地解碼存儲(chǔ)器訪問(wèn)請(qǐng)求的地址,將更高優(yōu)先級(jí)訪問(wèn)授權(quán)給執(zhí)行實(shí)時(shí)代碼的CPU。在另一實(shí)施例中,一旦請(qǐng)求訪問(wèn)共享存儲(chǔ)器資源(47),每個(gè)CPU(42、44)都提供優(yōu)先級(jí)信號(hào)(49),并且根據(jù)所請(qǐng)求的優(yōu)先級(jí)授權(quán)訪問(wèn)。
文檔編號(hào)G06F13/18GK1922597SQ200480039350
公開(kāi)日2007年2月28日 申請(qǐng)日期2004年6月24日 優(yōu)先權(quán)日2003年12月30日
發(fā)明者D·P·霍米勒, B·A·潘塔龍 申請(qǐng)人:索尼愛(ài)立信移動(dòng)通訊股份有限公司