動(dòng)態(tài)的存儲(chǔ)器控制方法及其系統(tǒng)的制作方法
【專利說明】動(dòng)態(tài)的存儲(chǔ)器控制方法及其系統(tǒng)
[0001]相關(guān)申請(qǐng)的交叉引用
[0002]本申請(qǐng)要求美國(guó)臨時(shí)申請(qǐng)?zhí)枮?2/035,627,申請(qǐng)日為2014年8月11日的優(yōu)先權(quán),其全部?jī)?nèi)容被合并引用到該申請(qǐng)中。
技術(shù)領(lǐng)域
[0003]本發(fā)明實(shí)施例一般涉及動(dòng)態(tài)存儲(chǔ)器控制方法及其系統(tǒng),以及更具體地,涉及一種動(dòng)態(tài)的存儲(chǔ)器控制方法,用以在一個(gè)運(yùn)行時(shí)間(in a run time)借用及歸還高速緩存存儲(chǔ)器(cache memory)。
【背景技術(shù)】
[0004]—般地,在系統(tǒng)中存儲(chǔ)器被很多不同的硬件或模塊使用。例如,硬件或模塊設(shè)置在一個(gè)芯片上,以及存儲(chǔ)器設(shè)置在另一芯片上。這樣,硬件或模塊經(jīng)由外部存儲(chǔ)器接口(External Memory Interface,EMI)存取存儲(chǔ)器。然而,如果很多硬件或模塊同時(shí)使用存儲(chǔ)器,EMI的帶寬將被占用,這將導(dǎo)致系統(tǒng)的高時(shí)延。另外,系統(tǒng)的性能也會(huì)變得惡化。
[0005]提供內(nèi)部存儲(chǔ)器以解決上述問題。內(nèi)部存儲(chǔ)器設(shè)置在與硬件及模塊相同的芯片上,以及內(nèi)部存儲(chǔ)器作為共享緩存,以便于很多硬件可不經(jīng)過EMI而存取該內(nèi)部存儲(chǔ)器。換句話說,硬件與存儲(chǔ)器之間的數(shù)據(jù)傳輸保持在同一個(gè)芯片上以節(jié)約EMI的帶寬、降低時(shí)延以及提升系統(tǒng)系能。然而,內(nèi)部存儲(chǔ)器的價(jià)格很高,以及由于其為片上系統(tǒng)(system-on-chip,S0C)的設(shè)計(jì),內(nèi)部存儲(chǔ)器的尺寸也被限制。另外,如果在一些時(shí)段僅有一個(gè)或幾個(gè)硬件設(shè)備需要內(nèi)部存儲(chǔ)器,設(shè)置內(nèi)部存儲(chǔ)器是浪費(fèi)或低效的。
[0006]因而,需要一種動(dòng)態(tài)的存儲(chǔ)器控制方法,用以在一個(gè)運(yùn)行時(shí)間借用及歸還高速緩存存儲(chǔ)器。
【發(fā)明內(nèi)容】
[0007]提出一種動(dòng)態(tài)的存儲(chǔ)器控制方法,該方法用于包括多個(gè)群集的系統(tǒng)及多個(gè)高速緩存存儲(chǔ)器,多個(gè)群集中的每個(gè)群集分別包含至少一個(gè)處理器內(nèi)核,多個(gè)高速緩存存儲(chǔ)器的每個(gè)高速緩存存儲(chǔ)器屬于多個(gè)群集中的一個(gè)對(duì)應(yīng)群集。該動(dòng)態(tài)的存儲(chǔ)器控制方法包括:從多個(gè)高速緩存存儲(chǔ)器中的第一高速緩存存儲(chǔ)器借用高速緩存存儲(chǔ)器的第一部分和/或從多個(gè)高速緩存存儲(chǔ)器中的第二高速緩存存儲(chǔ)器借用高速緩存存儲(chǔ)器的第二部分,以允許高速緩存存儲(chǔ)器的第一部分和/或高速緩存存儲(chǔ)器的第二部分被用作臨時(shí)內(nèi)部隨機(jī)存取存儲(chǔ)器(Random Access Memory,RAM),以及向第一高速緩存存儲(chǔ)器歸還高速緩存存儲(chǔ)器的第一部分和/或向第二高速緩存存儲(chǔ)器歸還高速緩存存儲(chǔ)器的第二部分,以便于高速緩存存儲(chǔ)器的第一部分和/或高速緩存存儲(chǔ)器的第二部分中的每一個(gè)可由第一群集中的至少一個(gè)處理器內(nèi)核和/或由第二群集中的至少一個(gè)處理器內(nèi)核獨(dú)占使用。第一高速緩存存儲(chǔ)器屬于多個(gè)群集中的第一群集,以及第二高速緩存存儲(chǔ)器屬于多個(gè)群集中的第二群集。
[0008]在本發(fā)明的一個(gè)新穎方面,當(dāng)高速緩存存儲(chǔ)器的第一部分和/或高速緩存存儲(chǔ)器的第二部分被用作臨時(shí)內(nèi)部RAM時(shí),臨時(shí)內(nèi)部RAM由第一群集中的至少一個(gè)處理器內(nèi)核和/或第二群集中的至少一個(gè)處理器內(nèi)核,與多個(gè)群集中的至少一個(gè)處理器內(nèi)核共享,或與一個(gè)或多個(gè)其它模塊共享,或與多個(gè)群集中的至少一個(gè)處理器內(nèi)核以及一個(gè)或多個(gè)其它模塊共享,其中多個(gè)群集中的至少一個(gè)處理器內(nèi)核以及一個(gè)或多個(gè)其它模塊不同于第一群集中的至少一個(gè)處理器內(nèi)核及第二群集中的至少一個(gè)處理器內(nèi)核。在將高速緩存存儲(chǔ)器的第一部分和/或高速緩存存儲(chǔ)器的第二部分用作臨時(shí)內(nèi)部RAM的步驟中,在臨時(shí)內(nèi)部RAM中執(zhí)行啟動(dòng)加載器,以初始化外部RAM。另外,動(dòng)態(tài)的存儲(chǔ)器控制方法包括將臨時(shí)內(nèi)部RAM的存儲(chǔ)器存取請(qǐng)求轉(zhuǎn)譯為高速緩存存儲(chǔ)器的第一部分的第一存儲(chǔ)器存取請(qǐng)求和/或高速緩存存儲(chǔ)器的第二部分的第二存儲(chǔ)器存取請(qǐng)求。當(dāng)高速緩存存儲(chǔ)器的第一部分及高速緩存存儲(chǔ)器的第二部分都被借用時(shí),高速緩存存儲(chǔ)器的第一部分及高速緩存存儲(chǔ)器的第二部分被用作一個(gè)連續(xù)的臨時(shí)內(nèi)部RAM。
[0009]在本發(fā)明的另一方面中,執(zhí)行歸還步驟時(shí),不斷電第一群集及第二群集,以及由第一群集中的第一處理器內(nèi)核執(zhí)行借用步驟及歸還步驟。另外,禁止不同于第一處理器內(nèi)核的處理器內(nèi)核的熱插拔機(jī)制。在禁止不同于第一處理器內(nèi)核的處理器內(nèi)核的熱插拔機(jī)制的步驟之后,動(dòng)態(tài)的存儲(chǔ)器控制方法包括清空屬于不同于第一群集的群集所對(duì)應(yīng)的高速緩存存儲(chǔ)器,以及禁止屬于不同于第一群集的群集中的高速緩存存儲(chǔ)器所對(duì)應(yīng)的指令高速緩存存儲(chǔ)器及所對(duì)應(yīng)的數(shù)據(jù)高速緩存存儲(chǔ)器,清空屬于第一群集的第一高速緩存存儲(chǔ)器,禁止屬于第一群集的第一高速緩存存儲(chǔ)器的指令高速緩存存儲(chǔ)器及數(shù)據(jù)高速緩存存儲(chǔ)器,將至少一個(gè)處理器內(nèi)核的架構(gòu)切換為單核架構(gòu),以及使能第二群集以使第二高速緩存存儲(chǔ)器通電。在借用步驟或歸還步驟之后,動(dòng)態(tài)的存儲(chǔ)器控制方法包括使能屬于第一群集的第一高速緩存存儲(chǔ)器,將至少一個(gè)處理器內(nèi)核的架構(gòu)切換為多核架構(gòu),以及使能不同于第一處理器內(nèi)核的處理器內(nèi)核的熱插拔機(jī)制。
[0010]在本發(fā)明的另一方面,動(dòng)態(tài)的存儲(chǔ)器控制方法包括識(shí)別當(dāng)前場(chǎng)景及確定當(dāng)前場(chǎng)景是否與記錄在場(chǎng)景表格中的任一場(chǎng)景匹配。場(chǎng)景表格記錄多個(gè)場(chǎng)景,多個(gè)場(chǎng)景中的每個(gè)場(chǎng)景對(duì)應(yīng)于待借用的高速緩存存儲(chǔ)器的不同的容量組合。當(dāng)前場(chǎng)景與記錄在場(chǎng)景表格中的場(chǎng)景匹配時(shí),根據(jù)對(duì)應(yīng)于當(dāng)前場(chǎng)景的待借用的高速緩存存儲(chǔ)器的容量組合,確定高速緩存的借用。動(dòng)態(tài)的存儲(chǔ)器控制方法也包括獲取臨時(shí)內(nèi)部RAM的所需容量;以及根據(jù)臨時(shí)內(nèi)部RAM的所需容量,獲取從第一高速緩存存儲(chǔ)器借用的高速緩存存儲(chǔ)器的第一部分的第一所需容量和/或從第二高速緩存存儲(chǔ)器借用的高速緩存存儲(chǔ)器的第二部分的第二所需容量。
[0011]在本發(fā)明的又一方面中,提出一種動(dòng)態(tài)的存儲(chǔ)器控制方法,用于借用高速緩存存儲(chǔ)器。該動(dòng)態(tài)的存儲(chǔ)器控制方法包括:識(shí)別當(dāng)前場(chǎng)景;確定當(dāng)前場(chǎng)景是否與記錄在場(chǎng)景表格中的任一場(chǎng)景匹配;如果匹配,根據(jù)對(duì)應(yīng)于當(dāng)前場(chǎng)景的待借用的高速緩存存儲(chǔ)器的容量組合,確定高速緩存的借用;將該配置綁定到第一處理器內(nèi)核;禁止不同于第一處理器內(nèi)核的處理器內(nèi)核的熱插拔機(jī)制;清空不同于第一群集的群集所對(duì)應(yīng)的高速緩存存儲(chǔ)器,以及禁止屬于第一群集的第一高速緩存存儲(chǔ)器的指令高速緩存存儲(chǔ)器及數(shù)據(jù)高速緩存存儲(chǔ)器及將至少一個(gè)處理器內(nèi)核的架構(gòu)切換為單核架構(gòu);使能第二群集以使第二高速緩存存儲(chǔ)器通電;從第一高速緩存存儲(chǔ)器借用高速緩存存儲(chǔ)器的第一部分和/或從第二高速緩存存儲(chǔ)器借用高速緩存存儲(chǔ)器的第二部分;以及將至少一個(gè)處理器內(nèi)核的架構(gòu)切換為多核架構(gòu);建立高速緩存借用標(biāo)記及使能不同于第一處理器內(nèi)核的處理器內(nèi)核的熱插拔機(jī)制。
[0012]在本發(fā)明的又一實(shí)施例中,提供一種動(dòng)態(tài)的存儲(chǔ)器控制方法,用于歸還高速緩存存儲(chǔ)器。該動(dòng)態(tài)的存儲(chǔ)器控制方法包括:識(shí)別當(dāng)前場(chǎng)景;確定當(dāng)前場(chǎng)景是否與記錄在場(chǎng)景表格中的任一場(chǎng)景匹配;如果匹配,根據(jù)對(duì)應(yīng)于當(dāng)前場(chǎng)景的待歸還的高速緩存存儲(chǔ)器的容量組合,確定高速緩存的歸還;將該配置綁定到第一處理器內(nèi)核;禁止不同于第一處理器內(nèi)核的處理器內(nèi)核的熱插拔機(jī)制;清空不同于第一群集的群集所對(duì)應(yīng)的高速緩存存儲(chǔ)器,以及禁止屬于不同于第一群集的群集中的高速緩存存儲(chǔ)器的所對(duì)應(yīng)的指令高速緩存存儲(chǔ)器及所對(duì)應(yīng)的數(shù)據(jù)高速緩存存儲(chǔ)器;清空屬于第一群集的第一高速緩存存儲(chǔ)器,及禁止屬于第一群集的第一高速緩存存儲(chǔ)器的指令高速緩存存儲(chǔ)器及數(shù)據(jù)高速緩存存儲(chǔ)器,及將至少一個(gè)處理器內(nèi)核的架構(gòu)切換為單核架構(gòu);使能第二群集以使第二高速緩存存儲(chǔ)器通電;向第一高速緩存存儲(chǔ)器歸還高速緩存存儲(chǔ)器的第一部分和/或向第二高速緩存存儲(chǔ)器歸還高速緩存存儲(chǔ)器的第二部分;使能屬于第一群集的第一高速緩存存儲(chǔ)器,以及將至少一個(gè)處理器內(nèi)核的架構(gòu)切換為多核架構(gòu);釋放高速緩存借用標(biāo)記及使第二群集斷電,以及使能不同于第一處理器內(nèi)核的處理器內(nèi)核的熱插拔機(jī)制。
[0013]在實(shí)施例中,高速緩存存儲(chǔ)器的靈活使用可節(jié)約EMI帶寬,而不需要預(yù)先設(shè)置特定的內(nèi)部RAM,因而降低了制造成本。另外,也可降低存取臨時(shí)RAM的時(shí)延。
[0014]在閱讀下面的動(dòng)態(tài)的存儲(chǔ)器控制方法及動(dòng)態(tài)的存儲(chǔ)器控制系統(tǒng)的一些實(shí)施例的描述后,對(duì)于本領(lǐng)域普通技術(shù)人員來說,本發(fā)明的其它方面及功能將變得顯而易見。
【附圖說明】
[0015]通過閱讀隨后的詳細(xì)描述及結(jié)合附圖描述的例子,可以更全面地理解本發(fā)明,其中:
[0016]圖1A是根據(jù)本發(fā)明一個(gè)實(shí)施例的動(dòng)態(tài)的存儲(chǔ)器控制系統(tǒng)的概要示意圖;
[0017]圖1B是根據(jù)本發(fā)明一個(gè)實(shí)施例的動(dòng)態(tài)的存儲(chǔ)器控制系統(tǒng)10的另一概要示意圖;
[0018]圖2是根據(jù)本發(fā)明一個(gè)實(shí)施例的動(dòng)態(tài)的存儲(chǔ)器控制系統(tǒng)10的另一概要示意圖;
[0019]圖3A-1&3A-2是根據(jù)本發(fā)明一個(gè)實(shí)施例的動(dòng)態(tài)的存儲(chǔ)器控制方法的借用高速緩存存儲(chǔ)器的示意流程圖;
[0020]圖3B-1&3B-2是根據(jù)本發(fā)明一個(gè)實(shí)施例的動(dòng)態(tài)的存儲(chǔ)器控制方法的歸還高速緩存存儲(chǔ)器的示意流程圖;
[0021]圖3C-1&3C-2是根據(jù)本發(fā)明另一實(shí)施例的動(dòng)態(tài)的存儲(chǔ)器控制方法的借用高速緩存存儲(chǔ)器的示意流程圖;
[0022]圖3D-1&3D-2是根據(jù)本發(fā)明另一實(shí)施例的動(dòng)態(tài)的存儲(chǔ)器控制方法的歸還高速緩存存儲(chǔ)器的示意流程圖。
[0023]除非另有說明,不同附圖中相同的數(shù)字及符號(hào)一般是指相同的部分。繪制附圖是為了清楚地描述實(shí)施例的相關(guān)方面以及不需按比例繪制附圖。
【具體實(shí)施方式】
[0024]為了描述本發(fā)明的目的、功能以及有益效果,如下詳細(xì)示出了本發(fā)明實(shí)施例及附圖。此描述是為了說明本發(fā)明一般原理的目的,以及不應(yīng)該理解為具有限制性的意義。應(yīng)該理解的是,可以通過軟件、硬件、固件或其任意組合實(shí)現(xiàn)本發(fā)明實(shí)施例。
[0025]另外,應(yīng)注意根據(jù)實(shí)際設(shè)計(jì),術(shù)語“多