用于提供多用戶節(jié)電碼本優(yōu)化的系統(tǒng)和方法
【專利說明】用于提供多用戶節(jié)電碼本優(yōu)化的系統(tǒng)和方法
[0001 ]相關申請聲明
[0002]本申請涉及于2013年10月24日遞交的名為“SYSTEM AND METHOD FOR CONSERVINGPOWER CONSUMPT1N IN A MEMORY SYSTEM”(高通案號133990U1)的共同未決美國專利申請序列號 14/062,859。
【背景技術】
[0003]動態(tài)隨機存取存儲器(DRAM)被用在各種計算設備(例如,個人計算機、膝上型計算機、筆記本計算機、視頻游戲控制臺、便攜式計算設備、移動電話等)中。DRAM是一種類型的易失性存儲器,其將數(shù)據(jù)的每個比特存儲在集成電路內(nèi)的單獨的電容器中。電容器可以被充電或放電。采用這兩個狀態(tài)來表示比特的兩個值,常規(guī)上被稱為O和I。因為電容器漏電,所以信息最終漸弱,除非電容器電荷被周期性地得到補充。因為這個更新要求,所以與SRAM和其它靜態(tài)存儲器相反,DRAM被稱為動態(tài)存儲器。
[0004]DRAM的優(yōu)勢是其結構的簡易(每比特僅需要一個晶體管和一個電容器),這允許DRAM達到非常高的密度。然而,隨著DRAM密度和速度要求持續(xù)增長,存儲器功耗正成為重要的問題。
[0005]DRAM內(nèi)的功率通常被分類為內(nèi)核存儲器陣列功率和非內(nèi)核功率。內(nèi)核存儲器陣列功率指代用于保留比特單元/陣列中的所有數(shù)據(jù)并且管理泄露和更新操作的功率。非內(nèi)核功率指代用于將所有數(shù)據(jù)傳入或傳出存儲器設備、感測放大器并且管理外圍邏輯單元、復用器、內(nèi)部總線、緩沖器、輸入/輸出(1/0)驅動器和接收機的功率。降低非內(nèi)核功率是重要的問題。
[0006]用于降低非內(nèi)核功率的現(xiàn)有的解決辦法典型地涉及減小操作電壓、減小負載電容或每當不要求性能時暫時地降低操作頻率。然而,這些解決辦法未能解決要求很高的帶寬密集型使用情況。其它解決辦法嘗試減小與存儲器系統(tǒng)相關聯(lián)的數(shù)據(jù)活動因子。數(shù)據(jù)活動因子k指代在固定時段內(nèi)存儲器訪問系統(tǒng)中的O到I的切換或轉變的數(shù)量。例如,在下面的單個導線上的8節(jié)拍序列0、1、0、1、0、1、0、1中,k = 0.5。已經(jīng)針對特定類型的數(shù)據(jù)(諸如使用圖像壓縮的顯示幀緩沖器)提出了對減小數(shù)據(jù)活動因子的嘗試。這典型地在源(即,顯示硬件引擎)處執(zhí)行。然而,這樣的解決辦法是非常專用的并且受限于這種類型的顯示數(shù)據(jù),這種類型的顯示數(shù)據(jù)典型地占總DRAM使用的相對小的百分比。因此,在本領域中仍然存在對用于節(jié)省DRAM存儲器系統(tǒng)中的功耗的改進的系統(tǒng)和方法的需求。
【發(fā)明內(nèi)容】
[0007]公開了用于提供多用戶功率節(jié)省碼本優(yōu)化的系統(tǒng)和方法。一種這樣的方法包括:生成針對多個計算設備的唯一的碼本,每個唯一的碼本被配置用于編碼相應的計算設備中的存儲器數(shù)據(jù);將所述唯一的碼本經(jīng)由通信網(wǎng)絡提供給相應的計算設備;經(jīng)由所述通信網(wǎng)絡從所述計算設備中的一個或多個計算設備接收壓縮統(tǒng)計,所述壓縮統(tǒng)計與相應的唯一的碼本有關;以及基于所接收的壓縮統(tǒng)計來生成針對所述計算設備中的至少一個計算設備的經(jīng)優(yōu)化的碼本。
[0008]另一個實施例是一種包括服務器的計算機系統(tǒng),所述服務器經(jīng)由通信網(wǎng)絡與多個計算設備相通信。所述服務器包括編碼器優(yōu)化模塊,所述編碼器優(yōu)化模塊被配置為優(yōu)化由所述計算設備執(zhí)行的存儲器數(shù)據(jù)編碼。所述編碼器優(yōu)化模塊包括:被配置為生成針對所述多個計算設備中的每個計算設備的唯一的碼本的邏輯單元,所述唯一的碼本用于編碼相應的計算設備中的存儲器數(shù)據(jù);被配置為將所述唯一的碼本經(jīng)由所述通信網(wǎng)絡提供給所述計算設備的邏輯單元;被配置為經(jīng)由所述通信網(wǎng)絡從所述計算設備中的一個或多個計算設備接收壓縮統(tǒng)計的邏輯單元,所述壓縮統(tǒng)計與相應的唯一的碼本有關;以及被配置為基于所接收的壓縮統(tǒng)計來生成針對所述計算設備中的至少一個計算設備的經(jīng)優(yōu)化的碼本的邏輯單元。
【附圖說明】
[0009]在附圖中,除非另外指示,否則遍及各個視圖,相似的附圖標記指代相似的部分。對于具有諸如“102A”或“102B”的字母字符標記的附圖標記,字母字符標記可以區(qū)分出現(xiàn)在同一附圖中的兩個相似的部分或元素。當旨在使附圖標記涵蓋在所有附圖中具有相同附圖標記的所有部分時,可以省略附圖標記的字母字符標記。
[0010]圖1是用于節(jié)省耦合到SoC的DRAM存儲器系統(tǒng)中的功耗的系統(tǒng)的實施例的框圖。
[0011]圖2是示出了將圖1的SoC與DRAM存儲器系統(tǒng)耦合的數(shù)據(jù)總線的示例性實施例的圖。
[0012]圖3是示出了針對由DRAM存儲器系統(tǒng)定義的示例性最小訪問長度(MAL)事務的到圖1的編碼器的未經(jīng)壓縮的數(shù)據(jù)輸入和從圖1的編碼器的經(jīng)壓縮的數(shù)據(jù)輸出的數(shù)據(jù)圖。
[0013]圖4是示出了在圖1的系統(tǒng)中實現(xiàn)的用于節(jié)省功耗的方法的實施例的流程圖。
[0014]圖5是用于實現(xiàn)用于減小圖1的系統(tǒng)的數(shù)據(jù)活動因子的壓縮算法的實施例的簡化霍夫曼樹。
[0015]圖6示出了針對圖1的DRAM存儲器系統(tǒng)的示例性MAL事務的第一壓縮使用情況。
[0016]圖7示出了針對圖1的DRAM存儲器系統(tǒng)的示例性MAL事務的第二壓縮使用情況。
[0017]圖8是示出了圖1的SoC中的編碼器的實施例的框圖。
[0018]圖9是示出了圖1的DRAM存儲器系統(tǒng)中的解碼器的實施例的框圖。
[0019]圖10是示出了圖8的編碼器中的3比特大小輸出的示例性值的表。
[0020]圖11是用于跟蹤針對圖1的系統(tǒng)的壓縮統(tǒng)計的表的實施例。
[0021]圖12是包括圖1的系統(tǒng)的便攜式計算機設備的實施例的框圖。
[0022]圖13是用于優(yōu)化多個用戶的編碼器壓縮性能的系統(tǒng)的實施例的框圖。
[0023]圖14是示出了由圖13的系統(tǒng)中的編碼器優(yōu)化模塊生成的服務器數(shù)據(jù)庫的實施例的數(shù)據(jù)圖。
[0024]圖15示出了與計算設備的存儲器圖像相關聯(lián)的示例性碼本的實施例。
[0025]圖16是示出了圖13的系統(tǒng)中的服務器編碼器優(yōu)化模塊的實施例的架構、操作和/或功能的流程圖。
[0026]圖17是示出了用于生成針對圖13的系統(tǒng)中的一個或多個用戶的經(jīng)優(yōu)化的碼本的各種不例性設備度量的表。
【具體實施方式】
[0027]本文使用的詞語“示例性”意味著“作為示例、實例或說明”。本文中描述為“示例性”的任何方面不必被解釋為優(yōu)選于其它方面或比其它方面有優(yōu)勢。
[0028]在本描述中,術語“應用”還可以包括具有可執(zhí)行內(nèi)容(諸如:對象代碼、腳本、字節(jié)代碼、標記語言文件以及補丁)的文件。另外,本文中所引用的“應用”還可以包括本質上不可執(zhí)行的文件(諸如可能需要被打開的文檔或需要被訪問的其它數(shù)據(jù)文件)。
[0029]術語“內(nèi)容”還可以包括具有可執(zhí)行內(nèi)容(諸如:對象代碼、腳本、字節(jié)代碼、標記語言文件以及補丁)的文件。另外,本文中所引用的“內(nèi)容”還可以包括本質上不可執(zhí)行的文件(諸如可能需要被打開的文檔或需要被訪問的其它數(shù)據(jù)文件)。
[0030]如在本描述中使用的,術語“組件”、“數(shù)據(jù)庫”、“模塊”、“系統(tǒng)”等等旨在指代與計算機相關的實體,要么是硬件、固件、硬件和軟件的組合、軟件,要么是執(zhí)行中的軟件。例如,組件可以是,但不限于是:在處理器上運行的過程、處理器、對象、可執(zhí)行文件、執(zhí)行的線程、程序和/或計算機。通過說明的方式,在計算設備上運行的應用和計算設備二者可以是組件。一個或多個組件可以存在于過程和/或執(zhí)行的線程中,以及組件可以位于一個計算機中和/或分布在兩個或更多個計算機之間。另外,這些組件可以從具有存儲在其上的各種數(shù)據(jù)結構的各種計算機可讀介質中執(zhí)行。組件可以諸如根據(jù)具有一個或多個數(shù)據(jù)分組(例如,來自與本地系統(tǒng)、分布式系統(tǒng)中的另一個組件進行交互,和/或跨諸如互聯(lián)網(wǎng)的網(wǎng)絡通過信號的方式與其它系統(tǒng)進行交互的一個組件的數(shù)據(jù))的信號,通過本地和/或遠程過程的方式進行通信。
[0031 ]在本描述中,術語“通信設備”、“無線設備”、“無線電話”、“無線通信設備”和“無線手持機”被可互換地使用。隨著第三代(“3G”)無線技術和第四代(“4G”)的出現(xiàn),更大的帶寬可用性已經(jīng)實現(xiàn)了具有更多種類的無線能力的更加便攜的計算設備。因此,便攜式計算設備可以包括蜂窩電話、尋呼機、PDA、智能電話、導航設備或具有無線連接或鏈路的手持計算機。
[0032]圖1示出了用于節(jié)省DRAM存儲器系統(tǒng)104中的功耗的系統(tǒng)100。系統(tǒng)100可以實現(xiàn)在任何計算設備中,包括個人計算機、工作站、服務器、便攜式計算設備(PCD)(諸如蜂窩電話、便攜式數(shù)字助理(PDA)、便攜式游戲控制臺、掌上型計算機或平板計算機)。如圖1的實施例所示,系統(tǒng)100包括耦合到DRAM存儲器系統(tǒng)104的片上系統(tǒng)(SoC) 102 AoC 102包括各種片上組件,所述各種片上組件包括向DRAM存儲器系統(tǒng)104請求存儲器資源的一個或多個存儲器客戶端106。存儲器客戶端106可以包括一個或多個處理器單元(例如,中央處理單元(CPU)、圖形處理單元(GPU)、數(shù)字信號處理器(DSP)、顯示處理器等)、視頻編碼器、或請求到DRAM存儲器系統(tǒng)104的讀取/寫入訪問的其它客戶端。存儲器客戶端106經(jīng)由SoC總線105連接到編碼器108。
[0033]如下文更加詳細的描述的,編碼器108被配置為通過減小到DRAM存儲器系統(tǒng)104的數(shù)據(jù)輸入的數(shù)據(jù)活動因子k,來降低DRAM存儲器系統(tǒng)104的功耗。DRAM存儲器系統(tǒng)104內(nèi)的功率可以被分類為內(nèi)核存儲器陣列功率和