專利名稱:動態(tài)存儲緩沖器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及動態(tài)存儲緩沖器;本發(fā)明尤其涉及而并非僅僅涉及用于資源受約束的多應(yīng)用環(huán)境中的動態(tài)存儲緩沖器,其中有益地減少了功率耗散。此外,本發(fā)明還涉及一種用于在這種動態(tài)存儲緩沖器中減少功率耗散的方法。
例如輸入/輸出緩沖器(I/O緩沖器)之類的存儲緩沖器是公知的;這種緩沖器包括先進(jìn)先出(first-in first-out FIFO)寄存器和諸如靜態(tài)隨機(jī)存取存儲器(static random access memory SRAM)之類的存儲裝置,其被配置成依照類似于這種FIFO的方式執(zhí)行。這些緩沖器的應(yīng)用常常結(jié)合機(jī)械裝置,所述機(jī)械裝置諸如光文本/圖片掃描器、CCD成像裝置、打印機(jī)、磁盤驅(qū)動器和光盤驅(qū)動器。這種機(jī)械裝置常常能夠以明顯不同于基本電子裝置的速率來連續(xù)地接收和/或輸出數(shù)據(jù),所述電子裝置諸如微處理器和相關(guān)聯(lián)的外圍組件(諸如解碼器)。為了使機(jī)械裝置能有效地與基本電子裝置操作,這種緩沖器常常用于防止機(jī)械裝置和電子裝置在操作中延遲和/或彼此相對短暫停止。
當(dāng)設(shè)計包括基本電子裝置和機(jī)械裝置的組合的系統(tǒng)時,已知考慮到所述裝置的數(shù)據(jù)速率處理能力,來有利地選擇在所述電子和機(jī)械裝置之間對接所要求的存儲緩沖器大小。例如當(dāng)設(shè)計諸如便攜式膝上計算機(jī)之類的設(shè)備和諸如流行DVD和MP3播放器/記錄器之類的便攜式視聽設(shè)備時,考慮這種因素。
依照預(yù)期需求來動態(tài)地分配輸入/輸出緩沖器是已知的。為了互連的電子裝置和機(jī)械裝置不會由于相對不同的數(shù)據(jù)輸出/接收速率而彼此相互延遲,常規(guī)作法是提供相當(dāng)大于為防止這種延遲所要求的最小尺寸的緩沖器。
然而,在本領(lǐng)域中例如在公布的美國專利號US 5,951,658中已知的是在數(shù)據(jù)存儲系統(tǒng)內(nèi)管理緩沖。在所述系統(tǒng)中,產(chǎn)生I/O請求的用戶或/和應(yīng)用程序使所述系統(tǒng)把控制權(quán)傳遞給其所管理的緩沖設(shè)備。在所管理的緩沖設(shè)備操作期間,詢問用戶或應(yīng)用請求以便確定所述用戶/應(yīng)用將怎樣讀取或?qū)懭霐?shù)據(jù)。根據(jù)想要的使用,所述系統(tǒng)根據(jù)對相關(guān)聯(lián)數(shù)據(jù)所想要的訪問來向用戶/應(yīng)用分配其緩沖器,所述相關(guān)聯(lián)的數(shù)據(jù)例如文件大小和/或存儲裝置屬性。
發(fā)明人認(rèn)識到對于流行的多應(yīng)用和資源受約束的系統(tǒng),例如用戶交互計算裝置、便攜式計算機(jī)、消費者音頻和/或視頻設(shè)備等,在其中包括存儲緩沖器是有益的,優(yōu)選地是,關(guān)于在所述系統(tǒng)內(nèi)出現(xiàn)的功率耗散來管理所述存儲緩沖器。發(fā)現(xiàn)這種管理當(dāng)系統(tǒng)易于執(zhí)行具有相互不同的流送比特率需求的多個應(yīng)用時尤為有益。鑒于這種方法,發(fā)明人設(shè)計了本發(fā)明。
本發(fā)明尤其適用于這樣的便攜式裝置,其中例如來自可充電和/或一次性電池的可用功率是有限的和/或在這種裝置內(nèi)的功率耗散易于帶來熱載荷問題。
本發(fā)明的第一目的在于提供一種動態(tài)存儲緩沖器,所述動態(tài)存儲緩沖器結(jié)合多應(yīng)用的資源有限系統(tǒng)能夠提供功率的耗散減少。
本發(fā)明的第二目的在于提供一種動態(tài)存儲緩沖器,其大小可動態(tài)變化地依賴于對其的需求,同時試圖減少其中出現(xiàn)的功率耗散。
依照本發(fā)明的第一方面,提供了一種用于在計算裝置上執(zhí)行的一個或多個軟件應(yīng)用和一個或多個數(shù)據(jù)產(chǎn)生和/或接收裝置之間進(jìn)行緩沖的動態(tài)存儲緩沖器,所述一個或多個數(shù)據(jù)產(chǎn)生和/或接收裝置通過所述緩沖器與所述一個或多個應(yīng)用通信,所述緩沖器包括緩沖器管理裝置,用于控制把所述緩沖器的一個或多個部分分配給所述一個或多個應(yīng)用以減少在所述一個或多個裝置內(nèi)所出現(xiàn)的功率耗散。
由于本發(fā)明能夠?qū)崿F(xiàn)減少在一個或多個裝置中所出現(xiàn)的功率耗散以及確保更有效使用緩沖器中的至少一個,所以本發(fā)明是有利的。
優(yōu)選地是,在緩沖器中,管理裝置可操作來響應(yīng)于由一個或多個應(yīng)用對緩沖器的數(shù)據(jù)流送速率需求來控制所述緩沖器的一個或多個部分的分配。當(dāng)進(jìn)行數(shù)據(jù)流送時,緩沖器容量的分配尤其與減小功率耗散有關(guān)。
優(yōu)選地是,在緩沖器中,管理裝置可操作來響應(yīng)于接近一個或多個裝置的最大可允許功率耗散限值來控制對所述緩沖器的一個或多個部分的分配。根據(jù)最大功率閾值來確定緩沖器分配是管理裝置控制緩沖器的較直接的方式。
優(yōu)選地是,在緩沖器中,管理裝置可操作來響應(yīng)于一個或多個裝置中的分?jǐn)?shù)倍數(shù)功率耗散來對所述緩沖器的一個或多個部分的分配,所述分?jǐn)?shù)倍數(shù)功率耗散與一個或多個應(yīng)用出現(xiàn)的相應(yīng)潛在漸近功率耗散成比例,所述一個或多個應(yīng)用與基本上不受限的緩沖存儲器容量相關(guān)聯(lián)。更優(yōu)選地是,分?jǐn)?shù)倍數(shù)功率耗散在相應(yīng)潛在漸近功率耗散的105%到300%的范圍內(nèi)。更為優(yōu)選地是,分?jǐn)?shù)倍數(shù)功率耗散基本為相應(yīng)潛在漸近功率耗散的110%。
為了使緩沖器能夠更適應(yīng)對其的不可預(yù)測和/或新類型的需求,管理裝置被實現(xiàn)為神經(jīng)網(wǎng)絡(luò),所述神經(jīng)網(wǎng)絡(luò)可操作來通過導(dǎo)出在一個或多個裝置中所耗散的功率量度并且使用所述量度來控制對所述緩沖器的一個或多個部分的分配,從而迭代地減少在所述一個或多個裝置內(nèi)出現(xiàn)的功率耗散。
計算裝置、緩沖器和一個或多個裝置當(dāng)結(jié)合在所述計算裝置上執(zhí)行的一個或多個軟件應(yīng)用操作時相當(dāng)于多應(yīng)用資源受限的系統(tǒng)。有利地是,這種系統(tǒng)是能夠播放和/或記錄節(jié)目材料的音頻和視頻設(shè)備中的至少一個。
優(yōu)選地是,例如為了減少實現(xiàn)的成本和復(fù)雜性,在緩沖器中,用可在計算裝置和一個或多個裝置中的至少一個上執(zhí)行的軟件來實現(xiàn)管理裝置。
在緩沖器中,優(yōu)選地是,在管理裝置中包括預(yù)定數(shù)據(jù)陣列以用于響應(yīng)于一個或多個應(yīng)用所要求的數(shù)據(jù)速率和/或一個或多個裝置的預(yù)定功率耗散限值,來把緩沖器的一個或多個部分分配給所述一個或多個應(yīng)用。
在所述緩沖器中,優(yōu)選地是,至少部分緩沖器包括電子沖擊防護(hù)(electronic shock protection ESP)緩沖器。
優(yōu)選地是,為了在數(shù)據(jù)流送操作期間減少一個或多個裝置的耗散,至少一個裝置被配置成當(dāng)流送數(shù)據(jù)時在停止開始切換占空度模式中操作。
依照本發(fā)明的第二方面,提供了一種控制用于在計算裝置上執(zhí)行的一個或多個軟件應(yīng)用和一個或多個數(shù)據(jù)產(chǎn)生和/或接收裝置之間進(jìn)行緩沖的動態(tài)存儲緩沖器的方法,所述一個或多個數(shù)據(jù)產(chǎn)生和/或接收裝置通過所述緩沖器與所述一個或多個應(yīng)用通信,所述方法包括配置所述緩沖器以便包括緩沖器管理裝置的步驟,所述緩沖器管理裝置用于控制把所述緩沖器的一個或多個部分分配給所述一個或多個應(yīng)用以便減少在一個或多個裝置內(nèi)所出現(xiàn)的功率耗散。
所述方法易于解決本發(fā)明上述目的中的至少一個。
優(yōu)選地是,在所述方法中,管理裝置可操作來響應(yīng)于由一個或多個應(yīng)用對緩沖器的數(shù)據(jù)流送速率的需求來控制對所述緩沖器的一個或多個部分的分配。
優(yōu)選地是,在所述方法中,管理裝置可操作來響應(yīng)于接近一個或多個裝置的最大可允許功率耗散限值來控制對所述緩沖器的一個或多個部分的分配。
優(yōu)選地是,在所述方法中,管理裝置可操作來響應(yīng)于一個或多個裝置中的分?jǐn)?shù)倍數(shù)功率耗散來控制對緩沖器的一個或多個部分的分配,所述分?jǐn)?shù)倍數(shù)功率耗散與一個或多個應(yīng)用出現(xiàn)的相應(yīng)潛在漸近功率耗散成比例,所述一個或多個應(yīng)用與基本上不受限的緩沖存儲器容量相關(guān)聯(lián)。更優(yōu)選地是,在所述方法中,分?jǐn)?shù)倍數(shù)功率耗散在相應(yīng)潛在漸近功率耗散的105%到300%的范圍內(nèi)。更為優(yōu)選地是,分?jǐn)?shù)倍數(shù)功率耗散基本為相應(yīng)潛在漸近功率耗散的110%。
優(yōu)選地是,在所述方法中,管理裝置被實現(xiàn)為神經(jīng)網(wǎng)絡(luò),所述神經(jīng)網(wǎng)絡(luò)可操作來通過導(dǎo)出在一個或多個裝置中所耗散的功率量度并且使用所述量度來控制對緩沖器的一個或多個部分的分配,從而迭代地減少在所述一個或多個裝置內(nèi)出現(xiàn)的功率耗散。
優(yōu)選地是,在所述方法中,計算裝置、緩沖器和一個或多個裝置當(dāng)結(jié)合在所述計算裝置上執(zhí)行的一個或多個軟件應(yīng)用操作時相當(dāng)于多應(yīng)用資源受限的系統(tǒng)。
優(yōu)選地是,例如為了降低成本和/或簡化所述方法的應(yīng)用,用可在計算裝置和一個或多個裝置中的至少一個上執(zhí)行的軟件來實現(xiàn)管理裝置。
優(yōu)選地是,在所述方法中,在管理裝置中包括預(yù)定數(shù)據(jù)陣列以用于響應(yīng)于一個或多個應(yīng)用所需求的數(shù)據(jù)速率和/或一個或多個裝置的預(yù)定功率耗散限值,來把緩沖器的一個或多個部分分配到所述一個或多個應(yīng)用。
優(yōu)選地是,例如為了克服當(dāng)把所述方法應(yīng)用于諸如音頻CD播放器之類的便攜式裝置時的機(jī)械沖擊,至少部分緩沖器包括電子沖擊防護(hù)(ESP)緩沖器。
優(yōu)選地是,為了在數(shù)據(jù)流送期間使耗散潛在減少,至少一個裝置被配置成當(dāng)流送數(shù)據(jù)時依照停止開始切換占空度模式操作。
應(yīng)當(dāng)理解的是,在不脫離本發(fā)明范圍的情況下,易于依照任何組合來組合本發(fā)明的特征。
現(xiàn)在將僅以舉例形式,參考下列圖來描述本發(fā)明的實施例,其中
圖1是包括在機(jī)械裝置和在計算硬件上所執(zhí)行的軟件應(yīng)用之間所插入的存儲緩沖器的配置的示意圖,所述機(jī)械裝置例如磁和/或光盤驅(qū)動器之類的存儲裝置;圖2是圖示對于通過存儲緩沖器的512千比特/秒(512kbps)平均流送數(shù)據(jù)比率傳輸而言,作為緩沖器大小的函數(shù)的存儲緩沖器內(nèi)出現(xiàn)的功率耗散的第一圖;圖3是還包括用于控制在功率上有效使用緩沖器的緩沖器管理部件的圖1配置的示意圖;圖4是圖示對于通過圖3的存儲緩沖器的128千比特/秒(128kbps)直到1.44兆比特/秒(1.44Mbps)的范圍內(nèi)各種相互不同的平均傳輸數(shù)據(jù)速率而言,作為緩沖器大小的函數(shù)的圖3的存儲緩沖器內(nèi)功率耗散變化的第二圖;圖5是圖示作為緩沖器大小的函數(shù)的圖3的存儲緩沖器內(nèi)功率耗散的第三圖,所述第三圖具有對應(yīng)于各個平均傳輸數(shù)據(jù)速率實現(xiàn)所述緩沖器內(nèi)的給定功率耗散所要求的最小緩沖器大小的標(biāo)記;和圖6是圖示對于平均傳輸數(shù)據(jù)速率的范圍而言,作為緩沖器大小的函數(shù)的圖3的存儲緩沖器內(nèi)功率耗散的第四圖,所述第四圖具有對應(yīng)于分?jǐn)?shù)倍數(shù)最小漸近功率耗散的標(biāo)記和與其對應(yīng)的相應(yīng)緩沖器大小。
本發(fā)明基于存儲器裝置操作所采用的特定方式。在圖1中,示出了總體上用10來標(biāo)示的存儲裝置配置。配置10包括存儲裝置(存儲裝置)20、存儲緩沖器(緩沖器)30和包括在計算機(jī)硬件(未示出)上執(zhí)行的一個或多個單個軟件應(yīng)用的一個軟件應(yīng)用組(應(yīng)用)40。存儲裝置20經(jīng)由第一數(shù)據(jù)連接50耦合到存儲緩沖器30的第一端口。類似地是,軟件應(yīng)用組40通過其計算機(jī)硬件并且經(jīng)由第二數(shù)據(jù)連接60鏈接到緩沖器30的第二端口。
作為候選例子,緩沖器30易于配備有單個雙向端口,用于依照交錯方式處理向其輸入的數(shù)據(jù)和從其輸出的數(shù)據(jù),例如像芯片外(off-chip)動態(tài)隨機(jī)存取存儲器(DRAM)。
數(shù)據(jù)流易于通過緩沖器30單向或雙向操作地發(fā)生。優(yōu)選地是,緩沖器30由芯片上半導(dǎo)體靜態(tài)隨機(jī)存取存儲器(SRAM)和芯片外半導(dǎo)體靜態(tài)動態(tài)隨機(jī)存取存儲器(SDRAM)中的至少一個實現(xiàn)。另外或作為選擇,緩沖器30由DRAM實現(xiàn),不過其它技術(shù)也是可行的,例如磁存儲器。軟件應(yīng)用組40例如易于是音頻重放、視頻重放、音頻記錄和視頻記錄中的至少一個。
當(dāng)存儲裝置20被實現(xiàn)為一個或多個機(jī)械存儲驅(qū)動器(例如一個或多個磁硬盤部件和光盤部件)時,本發(fā)明是尤為適當(dāng)?shù)?。這種驅(qū)動器具有確定的最大比特率BRmax,所述驅(qū)動器能夠以所述比特率訪問在物理介質(zhì)中所存儲的數(shù)據(jù)和/或向所述介質(zhì)寫入數(shù)據(jù),所述介質(zhì)例如是在可磁化磁性層中的磁疇。此外,對于不同類型的存儲裝置,此最大比特率BRmax是不同的。此外,這些驅(qū)動器都具有相關(guān)聯(lián)的最小能量閾值功率Pmin,所述閾值功率Pmin為所述驅(qū)動器在操作中所耗散的功率。閾值功率Pmin例如包括機(jī)械致動和光激發(fā)中的一個或多個。機(jī)械致動包括用于相對于相關(guān)聯(lián)的讀取/寫入頭來旋轉(zhuǎn)磁或光盤的電機(jī)。類似地是,光激發(fā)包括使固態(tài)激光器依照穩(wěn)定方式進(jìn)行寫入數(shù)據(jù)和/或讀出數(shù)據(jù)所需要的激光電流,還包括光檢測器放大器偏置電流。最小功率Pmin基本上獨立于輸出的數(shù)據(jù)比特率或能夠由驅(qū)動器接收。
把這種驅(qū)動器修改成以更高比特率運行通常例如依照基本上如方程式1(Eq.1)所描述的方式來漸增地增加到最小功率PminPdrive=Pmin+(K0.BRmax)(Eq.1)其中Pdrive=驅(qū)動器在操作中所消耗的功率;和K0=比例系數(shù)。
對于確定類型的驅(qū)動器,由所述驅(qū)動器所消耗的功率Pdrive潛在地是最大比特率BRmax的高階多項式函數(shù)而不是如在方程式1中所提供的線性函數(shù)。此外,確定類型的驅(qū)動器會在相應(yīng)的功率消耗下要求一些初始時間來啟動;例如光盤驅(qū)動器包括電動機(jī),所述電機(jī)要求一定時間來把光盤加速到適當(dāng)?shù)慕撬俣纫员惴€(wěn)定地從光盤中獲取數(shù)據(jù)和/或向其可靠地寫入數(shù)據(jù)。由方程式1大體上所描述的適合恒定操作的專有驅(qū)動器的例子是基于固態(tài)藍(lán)激光技術(shù)的菲利浦專有“便攜式藍(lán)”驅(qū)動器,所述藍(lán)光技術(shù)是能夠最大讀出比特率為30兆比特/秒的“藍(lán)光”光驅(qū)動器配置的微型版本。這種讀出速率比諸如解碼器之類的許多電子裝置能夠處理的速率更快。
還結(jié)合對應(yīng)于圖1中的應(yīng)用組40的一個或多個軟件應(yīng)用來適當(dāng)?shù)乜紤]這種驅(qū)動器的操作,這種一個或多個應(yīng)用在計算硬件上執(zhí)行并且可操作來訪問一個或多個這種驅(qū)動器。當(dāng)所述應(yīng)用與一個或多個驅(qū)動器通信以便隨機(jī)訪問其中的數(shù)據(jù)和/或隨機(jī)向其寫入數(shù)據(jù)時,即在配置10的第一操作模式中,所述一個或多個驅(qū)動器有利地以最大速度操作,即以最大比特率BRmax操作,以便除非絕對必要否則不會延遲應(yīng)用;在這種第一操作模式中,緩沖器30的包括并不能減少所述配置10內(nèi)出現(xiàn)的功率消耗。
與之對比,即在第二操作模式中,一個或多個應(yīng)用可能要求依照“流送”方式來訪問一個或多個驅(qū)動器,其中從所述一個或多個驅(qū)動器讀出數(shù)據(jù)和/或向其寫入數(shù)據(jù)的平均速率比最大比特率BRmax要低。本發(fā)明尤其與第二操作模式有關(guān),這是因為包括緩沖器30易于減少在配置10內(nèi)所出現(xiàn)的功率消耗。
依照“流送”方式利用驅(qū)動器的實際例子處于諸如流行數(shù)字化視頻光盤(DVD)設(shè)備和光盤(CD)設(shè)備之類的視聽設(shè)備中。在音頻重放中,常常遇到在128到1440千比特/秒(kbps)范圍內(nèi)的平均“流送”數(shù)據(jù)速率。類似地是,在視頻重放中,常常遇到384kbps及以上的平均“流送”數(shù)據(jù)速率。
當(dāng)依照流送方式操作配置10時,發(fā)明人認(rèn)識到緩沖器30的包括避免了存儲裝置20連續(xù)地操作而為來自一個或多個應(yīng)用的最大比特率提供服務(wù)。換句話說,包括緩沖器30使裝置20能夠依照具有占空度D停止開始方式運行,所述占空度D如方程式2(Eq.2)提供D=(TONTOFF+TON)---(Eq.2)]]>其中TON是裝置20在流送期間以最大比特率BRmax操作的平均時間周期;并且
TOFF=裝置20在流送期間以斷電狀態(tài)操作的平均時間周期。
因而,緩沖器30接收和/或向裝置20遞送數(shù)據(jù)的峰值比特率是BRmax,而向和/或從裝置20遞送數(shù)據(jù)的平均速率是BRavr,所述BRavr由方程式3(Eq.3)提供BRavr=D.BRmax(Eq.3)平均功率消耗Pavr可近似地根據(jù)方程式4(Eq.4)計算Pavr=D.[Pmin+(K0.BRmax)]+(1-D).Poff(Eq.4)對于每個接通周期TON忽略在初次起動時的能量耗散;Poff是當(dāng)處于斷開狀態(tài)時在裝置20內(nèi)所出現(xiàn)的待機(jī)功率耗散。
如果裝置20被設(shè)計成用于以平均比特率BRavr連續(xù)地操作,并且以此速率連續(xù)地提供和/或接收數(shù)據(jù),那么如方程式5(Eq.5)所示可從方程式1計算其等效功率消耗PeqPeq=Pmin+(K0.BRavr)(Eq.5)與上述第二操作模式有關(guān)的本發(fā)明依賴于在數(shù)據(jù)經(jīng)由緩沖器30向和/或從應(yīng)用40流送期間功率Pavr小于功率Peq,所述功率Pavr為根據(jù)方程式4基于操作的開始停止模式時的功率,所述功率Peq為裝置20被設(shè)計成以平均比特率BRavr連續(xù)操作時的功率;換句話說,本發(fā)明依賴于Pavr<Peq。
本發(fā)明還基于發(fā)明人認(rèn)識到上述方程式4是在每個接通周期TON開始時忽略起始功率耗散Pstart的近似。在方程式6(Eq.6)中提供了在該裝置中平均功率使用Pavr的更準(zhǔn)確的指示Pavr=(PstartTON+TOFF)+D.[Pmin+K0.BRmax]+(1-D).Poff---(Eq.6)]]>方程式6描述了在圖2中可以看到的功率曲線形式,在圖2中用100來指示一個圖表。所述圖100包括表示緩沖器30大小的橫軸110,以及表示在裝置20內(nèi)出現(xiàn)的功率耗散的縱軸120。在實踐中,會涉及到稍微更復(fù)雜的模型,原因在于大小很大的緩沖器30也具有與其相關(guān)聯(lián)的更高功率消耗,不過這種消耗相對于在裝置20內(nèi)所出現(xiàn)的功率消耗被認(rèn)為是次要影響。功率曲線130對應(yīng)于從和/或向裝置20的512千比特/秒的平均比特率Bavr。從曲線130可以看出在配置10內(nèi)的功率耗散隨緩沖器30大小減少到2兆比特(Mb)以下而迅速增加。在2兆比特/秒以上,功率消耗漸近地降低到由Pas所標(biāo)示的最小功率消耗。
在配置10中,由于實際原因,例如出于成本考慮,配置20對應(yīng)于廉價大量生產(chǎn)的消費產(chǎn)品,所以緩沖器30的大小必須是有限的。一方面,有利地選擇緩沖器30的大小以便符合配置10的給定功率預(yù)算;稍后參考圖5還將闡明這種緩沖器大小的選擇。另一方面,發(fā)明人認(rèn)識到還可以依照幾種可選擇的方式來實現(xiàn)在配置10內(nèi)出現(xiàn)的緩沖器大小和功率耗散之間的折衷,例如(a)可以按照漸近值Pas的某一分?jǐn)?shù)倍數(shù)選擇折衷,諸如值Pas的1.3倍;或(b)可以在曲線130基本上與值Pas相似時選擇折衷。
發(fā)明人還認(rèn)識到在配置10對應(yīng)于多應(yīng)用環(huán)境的情況下曲線130過于簡化,所述多應(yīng)用環(huán)境即圖1中的應(yīng)用組40對應(yīng)于多個并發(fā)執(zhí)行的軟件應(yīng)用,其中多個應(yīng)用中的每一個要求經(jīng)由緩沖器30來訪問裝置20。在這種多應(yīng)用環(huán)境中,由于多個應(yīng)用潛在地可操作來以相互不同的平均比特率訪問裝置20,所以最優(yōu)緩沖器大小的計算更為復(fù)雜。如先前所描述,緩沖器30本身就占有很大的成本;把所述緩沖器30配置得非常大是不經(jīng)濟(jì)的,而把所述緩沖器30配置得太小又會使當(dāng)在配置10內(nèi)執(zhí)行多應(yīng)用時所述緩沖器30飽和。
因而,發(fā)明人認(rèn)識到執(zhí)行多個軟件應(yīng)用(用1到n標(biāo)示)的配置應(yīng)該被提供一中間緩沖器,所述多個軟件應(yīng)用相對于存儲裝置訪問具有相互不同的相關(guān)聯(lián)的比特率要求,所述中間緩沖器具有例如緩沖器大小B1、B2、...、Bn之類的最優(yōu)緩沖器大小,這些緩沖器對存儲裝置的功率耗散P1、P2、...、Pn的相應(yīng)貢獻(xiàn)對于為所述應(yīng)用提供服務(wù)所需要的總緩沖器大小而言是易于被分別且單獨計算出的,同時還能優(yōu)化存儲裝置20內(nèi)的功率耗散。為了進(jìn)一步闡明本發(fā)明,現(xiàn)在描述圖3。
在圖3中,示出了一個配置,包括圖1中圖示的配置10的裝置20、緩沖器30和應(yīng)用組40。配置200還包括耦合到裝置20、緩沖器30和計算硬件的緩沖器管理部件210,在所述計算硬件中執(zhí)行應(yīng)用組40。部件210可操作來管理分配給組40中每個應(yīng)用的緩沖器30的區(qū)域大小,以便試圖減少在裝置20內(nèi)出現(xiàn)的功率耗散。
部件210可操作來動態(tài)計算組40中的每個單個應(yīng)用所需要的、緩沖器30的大小,并且分配所述緩沖器30的一部分以便在數(shù)據(jù)通信開始之前在應(yīng)用和裝置20之間流送這種數(shù)據(jù)通信。因而,優(yōu)選地是,如果組40中的每個應(yīng)用的數(shù)據(jù)速率恒定的話,那么為流送目的而向組40中的每個應(yīng)用分配的緩沖器30部分保持不變;如果應(yīng)用數(shù)據(jù)速率改變,例如因應(yīng)用本身請求而改變,那么優(yōu)選地是,部件210可操作來重新計算所述緩沖器30的適當(dāng)部分繼而把此部分重新分配給所述應(yīng)用。為了確定緩沖器30的適當(dāng)分配,部件210使用作為主要參數(shù)的(a)所述應(yīng)用的比特率;和(b)所希望的裝置20的功率耗散。
通過使用這些主要參數(shù),依照本發(fā)明可以提供一種解決辦法,用于動態(tài)管理緩沖器30以便為所希望的數(shù)據(jù)流送目的來更好地優(yōu)化所述緩沖器的大小。這種動態(tài)管理涉及從裝置20讀取以及向所述裝置20寫入的數(shù)據(jù)。還應(yīng)當(dāng)理解,許多存儲裝置從裝置20讀取數(shù)據(jù)與向所述裝置20寫入數(shù)據(jù)相比表現(xiàn)出相互不同的速率;所述裝置20內(nèi)的這種讀取/寫入速度差異易于導(dǎo)致在操作中所述裝置20內(nèi)出現(xiàn)相互不同的功率耗散。
為了進(jìn)一步闡明管理部件210的操作,現(xiàn)在描述圖4。
在圖4中,示出了總體上用300所指示的圖。圖300包括用于標(biāo)示緩沖器30存儲容量的橫軸310,以及用于標(biāo)示在裝置20內(nèi)出現(xiàn)的功率耗散的縱軸320。圖300圖示了緩沖器30的大小和對于通過緩沖器幾個相互不同的平均數(shù)據(jù)流送速率(UDR)而言裝置20中相關(guān)聯(lián)的功率耗散之間的關(guān)系,所述不同的平均數(shù)據(jù)流送速率即128千比特/秒(kbps)、512kbps、1兆比特/秒(Mbps)和1.44Mbps。
從圖4中可以看出所述圖的曲線總體上隨緩沖器大小增加而具有降低的漸近形式。對于每個曲線,存在相關(guān)聯(lián)的漸近值;例如128kbps數(shù)據(jù)速率的曲線具有在數(shù)量級為10mW的漸近值Pas。此外,為了在Pas1的示例性功率限值(即16mW)實現(xiàn),要求提供緩沖器30的具有Ba比特容量的一部分,即例如1.3Mbit。在此例子中,功率限值Pas1認(rèn)為是漸近值Pas的分?jǐn)?shù)倍數(shù),即Pas1=1.6×Pas。如稍后更進(jìn)一步闡明,分?jǐn)?shù)倍數(shù)的其它例子也是可行的。
在配置200中,計算硬件并發(fā)執(zhí)行“n”個軟件應(yīng)用,所述“n”個軟件應(yīng)用要求相應(yīng)的緩沖器30部分,所述部分具有大小B1到Bn。對于“n”個應(yīng)用中的每個使用緩沖器30在裝置20中產(chǎn)生相應(yīng)的功率耗散P1到Pn。在配置200的簡單模型中,單個功率耗散P1和Pn的總和提供了在配置200內(nèi)所出現(xiàn)的總功率耗散Psum的非常近似的指示,如方程式7(Eq.7)所示Psum=Σi=1nPi---(Eq.7)]]>然而,在實踐中,為多個并發(fā)執(zhí)行的應(yīng)用計算在裝置20內(nèi)所出現(xiàn)的總耗散比在方程式7中所描述的復(fù)雜得多。
因而,管理部件210具有配置200的功率模型。此模型由部件210用來計算緩沖器30的最優(yōu)部分,即Bopt,Bopt是為應(yīng)用數(shù)據(jù)比率R提供服務(wù)所需要的。優(yōu)選地是,采用在管理部件210所執(zhí)行的軟件中嵌入的數(shù)學(xué)函數(shù)形式來實現(xiàn)功率模型,所述模型被配置成接收數(shù)據(jù)速率R作為輸入?yún)?shù)。作為選擇或另外,功率模型易于被實現(xiàn)為在配置200的初始設(shè)計期間所準(zhǔn)備的預(yù)先計算的表。優(yōu)選地是,這種表包括最優(yōu)緩沖器大小Bopt的幾個值,這幾個值對應(yīng)于確定的速率值R;這幾個值是優(yōu)選的離散值和/或范圍。更為優(yōu)選的是,這種功率模型易于駐留在裝置20本身中和/或用于執(zhí)行應(yīng)用組40的計算硬件中。有利地是,管理部件210易于作為在上述計算機(jī)硬件上所執(zhí)行的特定進(jìn)一步的軟件應(yīng)用提供。
在被配置成執(zhí)行軟件應(yīng)用的配置200中,所述軟件應(yīng)用的性質(zhì)和對裝置20的數(shù)據(jù)速率需求事先是未知的,所述管理部件210易于被實現(xiàn)為智能神經(jīng)網(wǎng)絡(luò)并且迭代地分配緩沖器容量以減小功率耗散,所述智能神經(jīng)網(wǎng)絡(luò)被配置成針對各個數(shù)據(jù)速率需求R來監(jiān)視所述裝置20內(nèi)的總功率耗散。優(yōu)選地是,這種神經(jīng)網(wǎng)絡(luò)用軟件來實現(xiàn)并且配備了在迭代最優(yōu)緩沖器分配以減少總功率耗散時使用的、近乎合適的緩沖器大小。
為確定的應(yīng)用數(shù)據(jù)速率計算最優(yōu)緩沖器大小Bopt,易于用軟件判定過程實現(xiàn),所述軟件判定過程由用于操作裝置20的文件系統(tǒng)緊密執(zhí)行。在這種安排中,優(yōu)選地是,在上述計算硬件上執(zhí)行的組40的一個或多個軟件應(yīng)用可操作來向判定過程發(fā)送信息表明對裝置20的訪問是否是流送要求,并且聲明組40中的相關(guān)聯(lián)應(yīng)用訪問所述裝置20所想要的一個或多個數(shù)據(jù)速率。該判定過程使用上述功率模型來計算最優(yōu)緩沖器大小Bopt繼而分配緩沖器30的適當(dāng)部分。優(yōu)選地是,一個或多個軟件應(yīng)用和裝置20都接收關(guān)于緩沖存儲器地址的信息,所述緩沖存儲器地址對應(yīng)于所分配的緩沖器30部分。
問題是判定過程起作用所采用的方式。可以依照幾種方法來解決對裝置20中所出現(xiàn)的功率耗散的優(yōu)化。有利地是,使由判定過程所進(jìn)行的功率計算與其中數(shù)據(jù)速率R不發(fā)生變化的靜態(tài)情形相同。然而,發(fā)明人確認(rèn)了兩種被認(rèn)為尤為優(yōu)選的方法,即第一功率預(yù)算方法和第二相互獨立分配方法?,F(xiàn)在參考圖5和6進(jìn)一步闡明這兩個過程中的每一個。
參照圖5,示出了總體上用400所指示的圖。圖400包括對應(yīng)于所分配緩沖器30大小的橫軸410。此外,圖400包括對應(yīng)于配置200的裝置20內(nèi)所出現(xiàn)的功率耗散的縱軸420。對應(yīng)于流送數(shù)據(jù)速率128千比特/秒(kbps)、512kbps、1兆比特/秒(Mbps)和1.44Mbps,分別給出了功率耗散曲線。在圖400中,還示出了由Pmax所表示的功率限值以及相應(yīng)的緩沖器大小B1、B2、Bn,所述緩沖器大小B1、B2、Bn是分別達(dá)到適合數(shù)據(jù)速率128kbps、512kbps和1.44Mbps的功率限值Pmax所需要的。
在第一方法中,功率預(yù)算Pmax被指派在會耗散掉但不會超過的優(yōu)選量值處。然后,對于正執(zhí)行的應(yīng)用組40,依照圖400計算相應(yīng)的最優(yōu)緩沖器大小B1、B2、Bn。
參照圖6,示出了總體上用500所表示的圖。采用與圖5類似的方式,圖6的圖500包括對應(yīng)于所分配的緩沖器30大小的橫軸510。此外,圖500包括對應(yīng)于配置200的裝置20內(nèi)所出現(xiàn)的功率耗散的縱軸520。對應(yīng)于流送數(shù)據(jù)速率128千比特/秒(kbps)、512kbps、1兆比特/秒(Mbps)和1.44Mbps,分別給出了功率耗散曲線。
由于緩沖器30的大小被做得非常大,所以圖500的曲線具有相關(guān)聯(lián)功率耗散的漸近值。例如分別對于數(shù)據(jù)速率128kbps、512kbps和1.44,用Pas1、Pas2、...、Pasn表示這種漸近值。第二方法涉及把相應(yīng)的緩沖器大小B1、B2、...、Bn選擇為這些漸近值的分?jǐn)?shù)倍數(shù),即Pas1、Pas12和Pas1n,以致如圖所示,它們分別基本上為分?jǐn)?shù)倍數(shù)200% Pas1、130% Pas2和130% Pasn。然而,應(yīng)當(dāng)理解,可以選擇其它分?jǐn)?shù)量,例如在105%到300%的范圍內(nèi)的分?jǐn)?shù)量。此外如果要求,如圖所示,對于不同的數(shù)據(jù)速率R,可以使分?jǐn)?shù)量互相不同。
在上文中,最優(yōu)緩沖器大小的選擇是基于缺少任何電子沖擊防護(hù)(ESP)緩沖器的配置200的。然而,當(dāng)包括ESP緩沖器時,可以采用類似于上述本發(fā)明的方式來把ESP緩沖器的各部分分配給軟件應(yīng)用。在由這種ESP緩沖器所提供的給定沖擊防護(hù)持續(xù)時間內(nèi),可以根據(jù)處理的數(shù)據(jù)速率R來產(chǎn)生所分配的ESP緩沖器大小。
應(yīng)當(dāng)理解的是,在不脫離本發(fā)明范圍的情況下,易于修改在上面所描述的本發(fā)明的實施例。
在上文中,使用了諸如“包括”、“包含”、“并入”、“具有”和“包含有”之類的表述,這種表達(dá)意在把本發(fā)明解釋為非排它性的,即還兼顧了存在一個或多個附加項的可能。對單個的引用也應(yīng)當(dāng)被解釋為包括多個,反之亦然。
權(quán)利要求
1.一種用于在計算裝置上執(zhí)行的一個或多個軟件應(yīng)用(40)和一個或多個數(shù)據(jù)產(chǎn)生和/或接收裝置(20)之間進(jìn)行緩沖的動態(tài)存儲緩沖器(30,210),所述一個或多個數(shù)據(jù)產(chǎn)生和/或接收裝置(20)通過所述緩沖器(30,210)與所述一個或多個應(yīng)用(40)通信,所述緩沖器(30,210)包括緩沖器管理裝置(210),所述緩沖器管理裝置(210)用于控制把所述緩沖器(30)的一個或多個部分分配給所述一個或多個應(yīng)用(40)以便減少在一個或多個裝置(20)內(nèi)所出現(xiàn)的功率耗散。
2.如權(quán)利要求1所述的緩沖器(30,210),其中所述管理裝置(210)可操作來響應(yīng)于由所述一個或多個應(yīng)用(40)對緩沖器(30)的數(shù)據(jù)流送速率需求來控制對所述緩沖器(30)的一個或多個部分的分配。
3.如權(quán)利要求1或2所述的緩沖器(30,210),其中所述管理裝置(210)可操作來響應(yīng)于接近一個或多個裝置(20)的最大可允許功率耗散限值來控制對所述緩沖器(30)的一個或多個部分的分配。
4.如權(quán)利要求1或2所述的緩沖器(30,210),其中所述管理裝置(210)可操作來響應(yīng)于在所述一個或多個裝置(20)中的分?jǐn)?shù)倍數(shù)功率耗散來控制對所述緩沖器(30)的一個或多個部分的分配,所述分?jǐn)?shù)倍數(shù)功率耗散與一個或多個應(yīng)用(40)所出現(xiàn)的相應(yīng)潛在漸近功率耗散成比例,所述一個或多個應(yīng)用(40)與基本上不受限的緩沖器(30)存儲容量相關(guān)聯(lián)。
5.如權(quán)利要求4所述的緩沖器(30,210),其中所述分?jǐn)?shù)倍數(shù)功率耗散在相應(yīng)潛在漸近功率耗散的105%到300%的范圍內(nèi)。
6.如權(quán)利要求5所述的緩沖器(30,210),其中所述分?jǐn)?shù)倍數(shù)功率耗散基本為相應(yīng)潛在漸近功率耗散的110%。
7.如權(quán)利要求1或2所述的緩沖器(30,210),其中所述管理裝置(210)被實現(xiàn)為神經(jīng)網(wǎng)絡(luò),所述神經(jīng)網(wǎng)絡(luò)可操作來通過導(dǎo)出在一個或多個裝置(20)中所耗散的功率量度并且使用所述量度來控制對所述緩沖器(30)的一個或多個部分的分配,從而迭代地減少在所述一個或多個裝置內(nèi)所出現(xiàn)的功率耗散。
8.如先前權(quán)利要求中任何一個所述的緩沖器(30,210),其中所述計算裝置、緩沖器(30)和一個或多個裝置(20)當(dāng)結(jié)合在所述計算裝置上執(zhí)行的一個或多個軟件應(yīng)用(40)操作時相當(dāng)于多應(yīng)用資源受限的系統(tǒng)。
9.如先前權(quán)利要求中任何一個所述的緩沖器(30,210),其中所述管理裝置(210)用可在所述計算裝置和一個或多個裝置(20)中至少一個上執(zhí)行的軟件實現(xiàn)。
10.如權(quán)利要求9所述的緩沖器(30,210),其中在所述管理裝置(210)中包括預(yù)定數(shù)據(jù)陣列以用于響應(yīng)于一個或多個應(yīng)用(40)所需求的數(shù)據(jù)速率和/或一個或多個裝置(20)的預(yù)定功率耗散限值,來把所述緩沖器(30)的一個或多個部分分配到所述一個或多個應(yīng)用(40)。
11.如先前權(quán)利要求中任何一個所述的緩沖器(30,210),其中至少部分緩沖器(30)包括電子沖擊防護(hù)(ESP)緩沖器。
12.如先前權(quán)利要求中任何一個所述的緩沖器(30,210),其中所述裝置(20)中的至少一個被配置成當(dāng)流送數(shù)據(jù)時依照停止開始切換占空度模式操作。
13.一種控制用于在計算裝置上執(zhí)行的一個或多個軟件應(yīng)用(40)和一個或多個數(shù)據(jù)產(chǎn)生和/或接收裝置(20)之間進(jìn)行緩沖的動態(tài)存儲緩沖器(30,210)的方法,所述一個或多個數(shù)據(jù)產(chǎn)生和/或接收裝置(20)通過所述緩沖器(30,210)與所述一個或多個應(yīng)用(40)通信,所述方法包括配置所述緩沖器(30,210)以便包括緩沖器管理裝置(210)的步驟,所述緩沖器管理裝置用于控制把所述緩沖器(30)的一個或多個部分分配給所述一個或多個應(yīng)用(40)以便減少在一個或多個裝置(20)內(nèi)所出現(xiàn)的功率耗散。
14.如權(quán)利要求13所述的方法,其中所述管理裝置(210)可操作來響應(yīng)于由一個或多個應(yīng)用(40)對緩沖器(30)的數(shù)據(jù)流送速率需求來控制對所述緩沖器(30)的一個或多個部分的分配。
15.如權(quán)利要求13或14所述的方法,其中所述管理裝置(210)可操作來響應(yīng)于接近一個或多個裝置(20)的最大可允許功率耗散限值來控制對所述緩沖器(30)的一個或多個部分的分配。
16.如權(quán)利要求13或14所述的方法,其中所述管理裝置(210)可操作來響應(yīng)于在所述一個或多個裝置(20)中的分?jǐn)?shù)倍數(shù)功率耗散來控制對所述緩沖器(30)的一個或多個部分的分配,所述分?jǐn)?shù)倍數(shù)功率耗散與一個或多個應(yīng)用(40)所出現(xiàn)的相應(yīng)潛在漸近功率耗散成比例,所述一個或多個應(yīng)用(40)與基本上不受限的緩沖器(30)存儲容量相關(guān)聯(lián)。
17.如權(quán)利要求16所述的方法,其中所述分?jǐn)?shù)倍數(shù)功率耗散在相應(yīng)潛在漸近功率耗散的105%到300%的范圍內(nèi)。
18.如權(quán)利要求17所述的方法,其中所述分?jǐn)?shù)倍數(shù)功率耗散基本為相應(yīng)潛在漸近功率耗散的110%。
19.如權(quán)利要求13或14所述的方法,其中所述管理裝置(210)被實現(xiàn)為神經(jīng)網(wǎng)絡(luò),所述神經(jīng)網(wǎng)絡(luò)可操作來通過導(dǎo)出在一個或多個裝置(20)中所耗散的功率量度并且使用所述量度來控制對所述緩沖器(30)的一個或多個部分的分配,從而迭代地減少在所述一個或多個裝置內(nèi)所出現(xiàn)的功率耗散。
20.如權(quán)利要求13到19中任何一個所述的方法,其中所述計算裝置、緩沖器(30)和一個或多個裝置(20)當(dāng)結(jié)合在所述計算裝置上執(zhí)行的一個或多個軟件應(yīng)用(40)操作時相當(dāng)于多應(yīng)用資源受限的系統(tǒng)。
21.如權(quán)利要求13到20中任何一個所述的方法,其中所述管理裝置(210)用可在所述計算裝置和一個或多個裝置(20)中至少一個上執(zhí)行的軟件來實現(xiàn)。
22.如權(quán)利要求21所述的方法,其中在所述管理裝置(210)中包括預(yù)定數(shù)據(jù)陣列以用于響應(yīng)于一個或多個應(yīng)用(40)所需求的數(shù)據(jù)速率和/或一個或多個裝置(20)的預(yù)定功率耗散限值,來把所述緩沖器(30)的一個或多個部分分配到所述一個或多個應(yīng)用(40)。
23.如權(quán)利要求13到22中任何一個所述的方法,其中至少部分緩沖器(30)包括電子沖擊防護(hù)(ESP)緩沖器。
24.如權(quán)利要求13到23中任何一個所述的方法,其中所述裝置(20)中的至少一個被配置成當(dāng)流送數(shù)據(jù)時依照停止開始切換占空度模式操作。
全文摘要
描述了一種用于在計算裝置上執(zhí)行的一個或多個軟件應(yīng)用(40)和一個或多個數(shù)據(jù)產(chǎn)生和/或接收裝置(20)之間進(jìn)行緩沖的動態(tài)存儲緩沖器(30,210),所述一個或多個數(shù)據(jù)產(chǎn)生和/或接收裝置(20)通過所述緩沖器(30,210)與所述一個或多個應(yīng)用(40)通信,所述緩沖器(30,210)包括緩沖器管理裝置(210),所述緩沖器管理裝置(210)用于控制把所述緩沖器(30)的一個或多個部分分配給所述一個或多個應(yīng)用(40)以便減少在一個或多個裝置(20)內(nèi)所發(fā)生的功率耗散。
文檔編號G06F5/10GK1839369SQ200480023832
公開日2006年9月27日 申請日期2004年8月5日 優(yōu)先權(quán)日2003年8月20日
發(fā)明者A·T·伯查德, S·B·盧特詹斯 申請人:皇家飛利浦電子股份有限公司