專(zhuān)利名稱(chēng):存儲(chǔ)器共享方法
技術(shù)領(lǐng)域:
本發(fā)明是有關(guān)于存儲(chǔ)器共享技術(shù),特別指 一 種在片上系統(tǒng)(system-on-chip, SOC)裝置中讓多個(gè)功能模塊可以共享靜態(tài)隨機(jī)存取存儲(chǔ) 器的存儲(chǔ)器共享方法。
背景技術(shù):
一般而言,雖然片上系統(tǒng)裝置的發(fā)展己經(jīng)大幅地降低了電子裝置的制造 成本,然而,由于片上系統(tǒng)裝置包含有多個(gè)功能模塊(flmctional module),并 且這些功能模塊各自包含有相對(duì)應(yīng)的存儲(chǔ)器,因此片上系統(tǒng)裝置的制造成本 仍然居高不下。此外,在片上系統(tǒng)裝置中,全部存儲(chǔ)器占據(jù)了大部分芯片面 積,舉例來(lái)說(shuō),片上系統(tǒng)裝置內(nèi)部的存儲(chǔ)器區(qū)塊可能會(huì)占據(jù)大約百分之七十 的芯片面積。在片上系統(tǒng)裝置的相關(guān)技術(shù)中, 一般都是將一個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器 (static random access memory, SRAM)分配給一個(gè)片上系統(tǒng)裝置中的一個(gè)功 能模塊,并且存儲(chǔ)器的分配是根據(jù)這些功能模塊的特性(例如所需的存儲(chǔ)器 大小以及數(shù)據(jù)位長(zhǎng)度)來(lái)完成,此外,每一個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器都包含有 多個(gè)存儲(chǔ)器單元(memory cell),其中每一個(gè)存儲(chǔ)器單元一般都僅儲(chǔ)存有一位的 信息。上述這種片上系統(tǒng)裝置會(huì)出現(xiàn)一種問(wèn)題,就是分布于不同功能模塊中的 多個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器一般來(lái)說(shuō)并非同時(shí)會(huì)被存取,因此造成一些閑置的 靜態(tài)隨機(jī)存取存儲(chǔ)器維持在未被使用的狀態(tài)。發(fā)明內(nèi)容為減少存儲(chǔ)器在片上系統(tǒng)裝置中占據(jù)的面積,本發(fā)明提供了一種存儲(chǔ)器 共享方法。依據(jù)本發(fā)明的權(quán)利要求,其是揭示一種用于目標(biāo)模塊與至少一功能模塊 的存儲(chǔ)器共享方法,其中功能模塊包含有至少一靜態(tài)隨機(jī)存取存儲(chǔ)器,該存 儲(chǔ)器共享方法包含有計(jì)算功能模塊的存儲(chǔ)器容量;如果模塊群組的總存儲(chǔ)器容量滿(mǎn)足目標(biāo)模塊的存儲(chǔ)器容量需求,則分配模塊群組的靜態(tài)隨機(jī)存取存儲(chǔ)器,其中模塊群組包含有至少一功能模塊;利用目標(biāo)模塊來(lái)存取模塊群組 的功能模塊的靜態(tài)隨機(jī)存取存儲(chǔ)器。本發(fā)明提供一種應(yīng)用于片上系統(tǒng)裝置的存儲(chǔ)器共享方法,該方法使系統(tǒng) 中多個(gè)模塊共用靜態(tài)隨機(jī)存取存儲(chǔ)器,減少片上系統(tǒng)裝置中所需要配置的靜 態(tài)隨機(jī)存取存儲(chǔ)器的數(shù)量,從而減小存儲(chǔ)器區(qū)塊占據(jù)的片上系統(tǒng)裝置的面積, 并降低生產(chǎn)成本。
圖1所示為依據(jù)本發(fā)明的第一實(shí)施例說(shuō)明在片上系統(tǒng)裝置中用于目標(biāo)模塊與至少一功能模塊的存儲(chǔ)器共享系統(tǒng)。圖2所示為舉例說(shuō)明圖1中的目標(biāo)模塊的存儲(chǔ)器共享配置設(shè)定的示意圖。 圖3所示為概述本發(fā)明提供圖1所示的存儲(chǔ)器共享系統(tǒng)的方法流程圖。 圖4所示的為依據(jù)本發(fā)明的第二實(shí)施例說(shuō)明在片上系統(tǒng)裝置中用于目標(biāo)模塊與至少一功能模塊的存儲(chǔ)器共享系統(tǒng)。圖5所示為舉例說(shuō)明圖4中的目標(biāo)模塊的存儲(chǔ)器共享配置設(shè)定的示意圖。 圖6所示為概述本發(fā)明提供圖4所示的存儲(chǔ)器共享系統(tǒng)的方法流程圖。 圖7所示為依據(jù)本發(fā)明的第三實(shí)施例說(shuō)明在片上系統(tǒng)裝置中用于目標(biāo)模塊與至少一功能模塊的存儲(chǔ)器共享系統(tǒng)。 圖8所示為圖7中屏蔽裝置的示意圖。圖9所示為利用本發(fā)明的寫(xiě)入屏蔽裝置來(lái)舉例說(shuō)明第一功能模塊的數(shù)據(jù)寫(xiě)入操作的示意圖。圖IO所示為利用本發(fā)明的讀取屏蔽裝置來(lái)舉例說(shuō)明第一功能模塊的數(shù)據(jù) 讀取操作的示意圖。圖11所示為概述利用本發(fā)明的屏蔽裝置來(lái)存取第一功能模塊中的第一靜 態(tài)隨機(jī)存取存儲(chǔ)器的方法流程圖。
具體實(shí)施方式
在本說(shuō)明書(shū)以及權(quán)利要求書(shū)當(dāng)中使用了某些詞匯來(lái)指稱(chēng)特定的系統(tǒng)組 件,而所屬領(lǐng)域中的相關(guān)技術(shù)人員應(yīng)可理解,消費(fèi)電子設(shè)備制造商可能會(huì)用 不同的名詞來(lái)稱(chēng)呼同一個(gè)組件,本說(shuō)明書(shū)及權(quán)利要求書(shū)并不以名稱(chēng)的差異來(lái) 作為區(qū)分組件的方式,而是以組件在功能上的差異來(lái)作為區(qū)分的準(zhǔn)則,在通 篇說(shuō)明書(shū)及后續(xù)的請(qǐng)求項(xiàng)當(dāng)中所提及的"包含有"為一個(gè)開(kāi)放式的用語(yǔ),故 應(yīng)解釋成"包含有但不限定于",此外,"耦接" 一詞在此表示任何直接及間 接的電氣連接手段,因此,若文中描述第一裝置耦接于第二裝置,則代表第 一裝置可以直接電氣連接于第二裝置,或通過(guò)其它裝置或連接手段間接地電 氣連接至第二裝置。請(qǐng)參考圖1,圖1所示為依據(jù)本發(fā)明的第一實(shí)施例說(shuō)明在片上系統(tǒng)裝置中用于目標(biāo)模塊102與至少一功能模塊(即本實(shí)施例中的兩個(gè)功能模塊104、106) 的存儲(chǔ)器共享系統(tǒng)100。第一功能模塊104包含有第一靜態(tài)隨機(jī)存取存儲(chǔ)器 110,第二功能模塊106包含有第二靜態(tài)隨機(jī)存取存儲(chǔ)器112,存儲(chǔ)器共享系 統(tǒng)IOO包含有計(jì)算裝置114、存儲(chǔ)器分配裝置116以及存儲(chǔ)器控制裝置101。 其中,計(jì)算裝置114用于計(jì)算功能模塊104、 106的存儲(chǔ)器容量;而如果模塊 群組(module group)的總存儲(chǔ)器容量滿(mǎn)足目標(biāo)模塊102的存儲(chǔ)器容量需求,則 存儲(chǔ)器分配裝置116會(huì)分配模塊群組的靜態(tài)隨機(jī)存取存儲(chǔ)器,其中模塊群組 包含有至少一功能模塊;存儲(chǔ)器控制裝置101用于存取模塊群組中功能模塊 的靜態(tài)隨機(jī)存取存儲(chǔ)器。在此請(qǐng)注意,為了能夠更清楚地描述本發(fā)明的精神,在本實(shí)施例中,模塊群組僅包含有上述的第一功能模塊104以及第二功能模 塊106,然而,在另一實(shí)施例中,模塊群組則可以包含有目標(biāo)模塊102、第一 功能模塊104以及第二功能模塊106。每一靜態(tài)隨機(jī)存取存儲(chǔ)器的容量等于地 址的數(shù)量與數(shù)據(jù)位的數(shù)量的乘積。在本實(shí)施例中,目標(biāo)模塊102本身沒(méi)有配 置任何內(nèi)部的靜態(tài)隨機(jī)存取存儲(chǔ)器,并且存儲(chǔ)器控制裝置101用來(lái)讓目標(biāo)模 塊102可以共享分別被分配給第一功能模塊104以及第二功能模塊106的第 一靜態(tài)隨機(jī)存取存儲(chǔ)器110以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器112。另外,在此請(qǐng) 注意,上述的實(shí)施例中所設(shè)置的模塊的數(shù)量以及靜態(tài)隨機(jī)存取存儲(chǔ)器的數(shù)量 僅作為本發(fā)明的范例說(shuō)明,更明確地來(lái)說(shuō), 一個(gè)目標(biāo)模塊僅共享兩個(gè)靜態(tài)隨 機(jī)存取存儲(chǔ)器并不是本發(fā)明的限制條件。接著,本說(shuō)明書(shū)將在以下段落中利 用一個(gè)范例來(lái)說(shuō)明共享存儲(chǔ)器的操作細(xì)節(jié)。請(qǐng)?jiān)賲⒖紙Dl,在片上系統(tǒng)裝置的正常操作模式中,目標(biāo)模塊102需要一 個(gè)大小為(110X20)的存儲(chǔ)器容量,第一功能模塊104需要一個(gè)大小為(162 X12)的存儲(chǔ)器容量,第二功能模塊106需要一個(gè)大小為(128X9)的存儲(chǔ) 器容量,其中,上述數(shù)值IIO、 162以及128分別為地址的數(shù)量,數(shù)值20、 12 以及9分別為數(shù)據(jù)位的數(shù)量。此外,目標(biāo)模塊102、第一功能模塊104以及第 二功能模塊106并不是同時(shí)被啟動(dòng)。為了確認(rèn)在第一功能模塊104以及第二功能模塊106中的總存儲(chǔ)器容量 符合目標(biāo)模塊102的存儲(chǔ)器容量需求,計(jì)算裝置114會(huì)計(jì)算第一靜態(tài)隨機(jī)存 取存儲(chǔ)器110以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器112的存儲(chǔ)器容量,其分別為162 X12以及128X9,并且得到總存儲(chǔ)器容量為162X12+128X9。接著,計(jì)算 裝置114會(huì)將目標(biāo)模塊102所需要的存儲(chǔ)器容量110X20與總存儲(chǔ)器容量162 X 12 + 128X9進(jìn)行比較,并且得知總存儲(chǔ)器容量162X12 + 128X9不小于目 標(biāo)模塊102所需要的存儲(chǔ)器容量110X20,即(162X12+128X9) ^110X20。 因此,由于第一功能模塊104以及第二功能模塊106中的總存儲(chǔ)器容量符合 目標(biāo)模塊102的存儲(chǔ)器容量需求,所以本發(fā)明的存儲(chǔ)器共享方法便可以在存儲(chǔ)器共享系統(tǒng)100中進(jìn)行操作。接著,計(jì)算裝置114會(huì)進(jìn)一步分別計(jì)算第一靜態(tài)隨機(jī)存取存儲(chǔ)器110以 及第二靜態(tài)隨機(jī)存取存儲(chǔ)器112的地址的數(shù)量與數(shù)據(jù)位的數(shù)量,以決定本發(fā) 明用于存儲(chǔ)器共享系統(tǒng)100中的存儲(chǔ)器共享機(jī)制。由于第一功能模塊104以 及第二功能模塊106的地址的數(shù)量均大于110,并且上述兩個(gè)功能模塊的數(shù)據(jù) 位的數(shù)量均小于20,而上述兩個(gè)功能模塊的數(shù)據(jù)位的數(shù)量的總和(即12+9 =21)并不小于20,這意味著當(dāng)?shù)谝还δ苣K104以及第二功能模塊106還 沒(méi)被啟動(dòng)時(shí),目標(biāo)模塊102的數(shù)據(jù)可以被直接存取到第一靜態(tài)隨機(jī)存取存儲(chǔ) 器110以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器112。因此,存儲(chǔ)器分配裝置116將第一 靜態(tài)隨機(jī)存取存儲(chǔ)器110 (即具有大小為(162X12)的存儲(chǔ)器容量的單一存 儲(chǔ)器芯片)分配到第一功能模塊104,以及將第二靜態(tài)隨機(jī)存取存儲(chǔ)器112(即 具有大小為(128X9)的存儲(chǔ)器容量的單一存儲(chǔ)器芯片)分配到第二功能模 塊106。當(dāng)?shù)谝还δ苣K104以及第二功能模塊106還沒(méi)被啟動(dòng)時(shí),片上系統(tǒng)裝 置先啟動(dòng)目標(biāo)模塊102以及存儲(chǔ)器控制裝置101,然后再啟動(dòng)該存儲(chǔ)器共享機(jī) 制。請(qǐng)參考圖2,圖2所示為舉例說(shuō)明圖1中的目標(biāo)模塊102的存儲(chǔ)器共享機(jī) 制配置設(shè)定的示意圖。如前所述,目標(biāo)模塊102的操作需要一個(gè)大小為(110 X20)的存儲(chǔ)器容量,其中110個(gè)地址中的每一個(gè)地址均對(duì)應(yīng)于20個(gè)數(shù)據(jù)位。 如圖2所示,存儲(chǔ)器控制裝置101將第一靜態(tài)隨機(jī)存取存儲(chǔ)器110以及第二 靜態(tài)隨機(jī)存取存儲(chǔ)器112虛擬合并來(lái)提供目標(biāo)模塊102所需的適合的存儲(chǔ)器 容量。在本實(shí)施例中,存儲(chǔ)器控制裝置101直接將目標(biāo)模塊102所請(qǐng)求的地 址傳送給第一靜態(tài)隨機(jī)存取存儲(chǔ)器110以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器112,來(lái) 分別存取Ml個(gè)數(shù)據(jù)位(例如12個(gè)數(shù)據(jù)位)以及Nl個(gè)數(shù)據(jù)位(例如8個(gè)數(shù) 據(jù)位)。在此請(qǐng)注意,Ml以及N1的總和(即M1+N1)等于20,此外,根 據(jù)各種不同的設(shè)計(jì)需求,Ml以及N1的數(shù)值為可彈性設(shè)定的,同時(shí)被選擇用來(lái)跟目標(biāo)模塊102—起共享的數(shù)據(jù)位也是可彈性設(shè)定的。換句話(huà)說(shuō),在M1十 Nl=20的情況下,任何Ml個(gè)數(shù)據(jù)位都可以從第一功能模塊104的第一靜態(tài) 隨機(jī)存取存儲(chǔ)器110中選出,任何N1個(gè)數(shù)據(jù)位都可以從第二功能模塊106的 第二靜態(tài)隨機(jī)存取存儲(chǔ)器112中選出,舉例來(lái)說(shuō),ll個(gè)數(shù)據(jù)位可以從第一功 能模塊104的第一靜態(tài)隨機(jī)存取存儲(chǔ)器110的任一部分中選出,以及另外9 個(gè)數(shù)據(jù)位可以從第二功能模塊106的第二靜態(tài)隨機(jī)存取存儲(chǔ)器112的任一部 分中選出,以響應(yīng)由目標(biāo)模塊102所傳送出的特定地址的請(qǐng)求,如此一來(lái), 沒(méi)有配置內(nèi)部靜態(tài)隨機(jī)存取存儲(chǔ)器的目標(biāo)模塊102便可以通過(guò)該存儲(chǔ)器共享 機(jī)制來(lái)正常地操作。請(qǐng)參考圖3,圖3所示為概述本發(fā)明提供圖1所示的存儲(chǔ)器共享系統(tǒng)100 的方法流程圖。假如實(shí)質(zhì)上可以得到相同的結(jié)果,則流程中的步驟不一定需 要照?qǐng)D3所示的順序來(lái)執(zhí)行,該步驟也不一定需要是連續(xù)的,也就是說(shuō),這 些步驟之間可以插入其它的步驟。本發(fā)明的方法包含有下列步驟步驟302:決定需要進(jìn)行存儲(chǔ)器共享操作的目標(biāo)模塊102,其中目標(biāo)模塊102需要大小為(110X20)的存儲(chǔ)器容量。步驟304:定義包含有至少第一功能模塊104以及第二功能模塊106的模 塊群組,其中第一功能模塊104具有大小為(162X12)的存儲(chǔ)器容量,以及 第二功能模塊106具有大小為(128X9)的存儲(chǔ)器容量。步驟306:計(jì)算第一功能模塊104以及第二功能模塊106的存儲(chǔ)器容量, 以確認(rèn)該存儲(chǔ)器容量符合目標(biāo)模塊102的存儲(chǔ)器容量需求,即(162X12 + 128 X9) ^110X20。步驟308:檢査第一功能模塊104以及第二功能模塊106的地址數(shù)量是否 均大于110,以及第一功能模塊104以及第二功能模塊106的數(shù)據(jù)位數(shù)量是否 均小于20,以及第一功能模塊104以及第二功能模塊106的數(shù)據(jù)位數(shù)量的總 和是否不小于20。步驟310:分別將第一靜態(tài)隨機(jī)存取存儲(chǔ)器110以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器112分配給第一功能模塊104以及第二功能模塊106,其中第一靜態(tài)隨機(jī) 存取存儲(chǔ)器110的存儲(chǔ)器容量為(162X12),以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器 112的存儲(chǔ)器容量為(128X9)。步驟312:當(dāng)?shù)谝还δ苣K104以及第二功能模塊106都還沒(méi)被啟動(dòng)時(shí), 啟動(dòng)目標(biāo)模塊102。步驟314:當(dāng)?shù)谝还δ苣K104以及第二功能模塊106都還沒(méi)被啟動(dòng)時(shí), 分別將Ml個(gè)數(shù)據(jù)位(即12個(gè)數(shù)據(jù)位)以及Nl個(gè)數(shù)據(jù)位(即8個(gè)數(shù)據(jù)位) 分配給分別被分配到第一功能模塊104以及第二功能模塊106的第一靜態(tài)隨 機(jī)存取存儲(chǔ)器110以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器112。步驟316:參考由目標(biāo)模塊102所請(qǐng)求的特定地址來(lái)相應(yīng)地存取分別被分 配到第一功能模塊104以及第二功能模塊106的第一靜態(tài)隨機(jī)存取存儲(chǔ)器110 以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器112中的M1個(gè)數(shù)據(jù)位以及N1個(gè)數(shù)據(jù)位。請(qǐng)參考圖4,圖4所示為依據(jù)本發(fā)明的第二實(shí)施例說(shuō)明在片上系統(tǒng)裝置中 用于目標(biāo)模塊402與至少一功能模塊(即本實(shí)施例中的兩個(gè)功能模塊404、406) 的存儲(chǔ)器共享系統(tǒng)400。與第一實(shí)施例相似,其中第一功能模塊404包含有第 一靜態(tài)隨機(jī)存取存儲(chǔ)器410,第二功能模塊406包含有第二靜態(tài)隨機(jī)存取存儲(chǔ) 器412。存儲(chǔ)器共享系統(tǒng)400包含有計(jì)算裝置414、存儲(chǔ)器分配裝置416以及 存儲(chǔ)器控制裝置401。由于計(jì)算裝置414、存儲(chǔ)器分配裝置416以及存儲(chǔ)器控 制裝置401分別具有與第一實(shí)施例中的計(jì)算裝置114、存儲(chǔ)器分配裝置116以 及存儲(chǔ)器控制裝置101相同的功能,所以就不在多加贅述其詳細(xì)內(nèi)容。在本 實(shí)施例中,目標(biāo)模塊402中沒(méi)有配置任何內(nèi)部的靜態(tài)隨機(jī)存取存儲(chǔ)器,并且 存儲(chǔ)器控制裝置401用來(lái)讓目標(biāo)模塊402可以共享分別被分配到第一功能模 塊404以及第二功能模塊406的第一靜態(tài)隨機(jī)存取存儲(chǔ)器410以及第二靜態(tài) 隨機(jī)存取存儲(chǔ)器412。另外,在此請(qǐng)注意,上述的實(shí)施例中所設(shè)置的模塊的數(shù) 量以及靜態(tài)隨機(jī)存取存儲(chǔ)器的數(shù)量?jī)H作為本發(fā)明的范例說(shuō)明,更明確地來(lái)說(shuō), 一個(gè)目標(biāo)模塊僅共享兩個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器并不是本發(fā)明的限制條件,接著,本說(shuō)明書(shū)將在以下段落中利用一個(gè)范例來(lái)說(shuō)明共享存儲(chǔ)器的操作細(xì)節(jié)。請(qǐng)?jiān)賲⒖紙D4,在該片上系統(tǒng)裝置的正常操作模式中,目標(biāo)模塊402需要 一個(gè)大小為(110X24)的存儲(chǔ)器容量,并且第一功能模塊404需要一個(gè)大小 為(162X12)的存儲(chǔ)器容量,以及第二功能模塊406需要一個(gè)大小為(128 X9)的存儲(chǔ)器容量,其中,上述數(shù)值IIO、 162以及128分別為地址的數(shù)量, 而數(shù)值24、 12以及9則分別為數(shù)據(jù)位的數(shù)量,此外,目標(biāo)模塊402、第一功 能模塊404以及第二功能模塊406并非同時(shí)被啟動(dòng)。與第一實(shí)施例相似,計(jì)算裝置414會(huì)將目標(biāo)模塊402所需要的存儲(chǔ)器容 量110X24與第一功能模塊404以及第二功能模塊406的總存儲(chǔ)器容量162 X 12+128X9進(jìn)行比較,并且得到總存儲(chǔ)器容量162X 12+128X9不小于目 標(biāo)模塊402所需要的存儲(chǔ)器容量110X24,即(162X12 + 128X9) ^110X24。接著,計(jì)算裝置414會(huì)進(jìn)一步分別計(jì)算第一靜態(tài)隨機(jī)存取存儲(chǔ)器410以 及第二靜態(tài)隨機(jī)存取存儲(chǔ)器412的地址的數(shù)量與數(shù)據(jù)位的數(shù)量,以決定本發(fā) 明用于存儲(chǔ)器共享系統(tǒng)400中的存儲(chǔ)器共享機(jī)制。由于第一功能模塊404以 及第二功能模塊406的地址的數(shù)量均大于110,并且上述兩個(gè)功能模塊404、 406的數(shù)據(jù)位的數(shù)量均小于24,上述兩個(gè)功能模塊的數(shù)據(jù)位的數(shù)量的總和(即 21)也小于24,這意味著當(dāng)?shù)谝还δ苣K404以及第二功能模塊406還沒(méi)被 啟動(dòng)時(shí),目標(biāo)模塊402的數(shù)據(jù)并無(wú)法被直接存取到第一靜態(tài)隨機(jī)存取存儲(chǔ)器 410以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器412。然而,由于在第一功能模塊404以及 第二功能模塊406中的總存儲(chǔ)器容量符合目標(biāo)模塊402的存儲(chǔ)器容量需求, 即(162X12+128X9) ^110X24,因此,存儲(chǔ)器分配裝置416將第一靜態(tài) 隨機(jī)存取存儲(chǔ)器410(其是由實(shí)體上各自獨(dú)立的多個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器芯片 所構(gòu)成,且具有大小為(162X 12)的總存儲(chǔ)器容量)分配到第一功能模塊404, 以及將第二靜態(tài)隨機(jī)存取存儲(chǔ)器412(其是由實(shí)體上各自獨(dú)立的多個(gè)靜態(tài)隨機(jī) 存取存儲(chǔ)器芯片所構(gòu)成,且具有大小為(128X9)的總存儲(chǔ)器容量)分配到 第二功能模塊406。用來(lái)組成第一靜態(tài)隨機(jī)存取存儲(chǔ)器410的靜態(tài)隨機(jī)存取存儲(chǔ)器芯片的數(shù) 量通過(guò)進(jìn)行無(wú)條件進(jìn)位(roundup)操作來(lái)決定,也就是由計(jì)算裝置414來(lái)計(jì) 算一個(gè)大于但最接近的整數(shù)。該無(wú)條件進(jìn)位操作根據(jù)等于目標(biāo)模塊402所需 要的存儲(chǔ)器容量的數(shù)據(jù)位數(shù)量(即24)除以第一功能模塊404所需要的存儲(chǔ) 器容量的數(shù)據(jù)位數(shù)量(即12)的數(shù)值來(lái)進(jìn)行。用于組成第二靜態(tài)隨機(jī)存取存 儲(chǔ)器412的靜態(tài)隨機(jī)存取存儲(chǔ)器芯片的數(shù)量通過(guò)進(jìn)行根據(jù)等于目標(biāo)模塊402 所需要的存儲(chǔ)器容量的數(shù)據(jù)位數(shù)量(即24)除以第二功能模塊406所需要的 存儲(chǔ)器容量的數(shù)據(jù)位數(shù)量(即9)的數(shù)值的無(wú)條件進(jìn)位操作來(lái)決定。因此第一靜態(tài)隨機(jī)存取存儲(chǔ)器410便可以具有一個(gè)大小為(162X12)的 總存儲(chǔ)器容量,并且這是由兩個(gè)分別具有大小為(81X12)的存儲(chǔ)器容量的 獨(dú)立靜態(tài)隨機(jī)存取存儲(chǔ)器芯片所構(gòu)成,而這些存儲(chǔ)器被分配到第一功能模塊 404。此外,具有大小為(128X9)的總存儲(chǔ)器容量,并且由三個(gè)分別具有大 小為(43X9)的存儲(chǔ)器容量的獨(dú)立靜態(tài)隨機(jī)存取存儲(chǔ)器芯片所構(gòu)成的第二靜 態(tài)隨機(jī)存取存儲(chǔ)器412被分配到第二功能模塊406。在此請(qǐng)注意,在第一靜態(tài) 隨機(jī)存取存儲(chǔ)器410中,每一存儲(chǔ)器芯片的地址數(shù)量(即81)以及在第二靜 態(tài)隨機(jī)存取存儲(chǔ)器412中每一存儲(chǔ)器芯片的地址數(shù)量(即43)的總和不應(yīng)該 小于目標(biāo)模塊402所需要的地址數(shù)量。另外,請(qǐng)注意,在本發(fā)明中,第一靜 態(tài)隨機(jī)存取存儲(chǔ)器410以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器412并不限制于使用實(shí) 體上各自獨(dú)立的多個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器芯片,本領(lǐng)域的相關(guān)技術(shù)人員應(yīng)該 能了解在這方面也可以利用存儲(chǔ)器分配裝置416來(lái)將第一靜態(tài)隨機(jī)存取存儲(chǔ) 器410程序化分割為多個(gè)虛擬獨(dú)立的靜態(tài)隨機(jī)存取存儲(chǔ)器芯片,并且同樣具 有上述的存儲(chǔ)器容量,另外,第二靜態(tài)隨機(jī)存取存儲(chǔ)器412也同樣可以進(jìn)行 如此處理。當(dāng)?shù)谝还δ苣K404以及第二功能模塊406還沒(méi)被啟動(dòng)時(shí),片上系統(tǒng)裝 置啟動(dòng)目標(biāo)模塊402,存儲(chǔ)器控制裝置401開(kāi)始使能存儲(chǔ)器共享機(jī)制。請(qǐng)參考圖5,圖5所示為舉例說(shuō)明圖4中目標(biāo)模塊402的存儲(chǔ)器共享機(jī)制配置設(shè)定的示意圖。第一靜態(tài)隨機(jī)存取存儲(chǔ)器410以及第二靜態(tài)隨機(jī)存取存 儲(chǔ)器412分別具有實(shí)體上各自獨(dú)立的多個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器芯片,并且這 些靜態(tài)隨機(jī)存取存儲(chǔ)器芯片可以被重新排列以組成如圖5所示的存儲(chǔ)器配置 設(shè)定。換句話(huà)說(shuō),第一靜態(tài)隨機(jī)存取存儲(chǔ)器410對(duì)應(yīng)于大小為(81X24)的 存儲(chǔ)器容量,以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器412對(duì)應(yīng)于大小為(43X27)的 存儲(chǔ)器容量。因此,存儲(chǔ)器控制裝置401將第一靜態(tài)隨機(jī)存取存儲(chǔ)器410以 及第二靜態(tài)隨機(jī)存取存儲(chǔ)器412虛擬合并來(lái)提供目標(biāo)模塊402所需的適合的 存儲(chǔ)器容量。在本實(shí)施例中,存儲(chǔ)器控制裝置401直接將M3個(gè)地址(例如 81個(gè)地址)分配給第一靜態(tài)隨機(jī)存取存儲(chǔ)器410以及將N3個(gè)地址(例如29 個(gè)地址)分配給第二靜態(tài)隨機(jī)存取存儲(chǔ)器412,其中M3以及N3的總和(即 M3+N3)等于110。在此請(qǐng)注意,M3以及N3的數(shù)值能夠根據(jù)各種不同的設(shè) 計(jì)需求而彈性地設(shè)定,同時(shí)被選擇用來(lái)與目標(biāo)模塊402 —起共享的地址也是 可彈性地設(shè)定的。換句話(huà)說(shuō),在M3+N3二110的情況下,任何M3個(gè)地址都 可以從第一功能模塊404的第一靜態(tài)隨機(jī)存取存儲(chǔ)器410中選出,以及任何 N3個(gè)地址都可以從第二功能模塊406的第二靜態(tài)隨機(jī)存取存儲(chǔ)器412中選出, 如圖5所示,并且當(dāng)接收到由目標(biāo)模塊402所請(qǐng)求的特定地址時(shí),存儲(chǔ)器控 制裝置401參考該特定地址來(lái)存取第一靜態(tài)隨機(jī)存取存儲(chǔ)器410或是第二靜 態(tài)隨機(jī)存取存儲(chǔ)器412以處理所要的24個(gè)數(shù)據(jù)位。如此一來(lái),盡管目標(biāo)模塊 402本身不具有任何內(nèi)部靜態(tài)隨機(jī)存取存儲(chǔ)器,目標(biāo)模塊402仍然可以通過(guò)存 儲(chǔ)器共享機(jī)制來(lái)進(jìn)行正常的操作。請(qǐng)參考圖6,圖6所示為概述本發(fā)明提供圖4所示的存儲(chǔ)器共享系統(tǒng)400 的方法流程圖。假如實(shí)質(zhì)上可以得到相同的結(jié)果,則流程中的步驟不一定需 要照?qǐng)D6所示的順序來(lái)執(zhí)行,也不一定需要是連續(xù)的,也就是說(shuō),這些步驟 之間可以插入其它的步驟。本發(fā)明的方法包含有下列步驟步驟602:決定需要進(jìn)行存儲(chǔ)器共享操作的目標(biāo)模塊402,其中目標(biāo)模塊 402需要大小為(110X24)的存儲(chǔ)器容量。步驟604:定義包含有至少第一功能模塊404以及第二功能模塊406的模 塊群組,其中第一功能模塊404需要大小為(162X12)的存儲(chǔ)器容量,以及 第二功能模塊406需要大小為(128X9)的存儲(chǔ)器容量。步驟606:計(jì)算第一功能模塊404以及第二功能模塊406的存儲(chǔ)器容量, 以確認(rèn)該存儲(chǔ)器容量符合目標(biāo)模塊402的存儲(chǔ)器容量需求,即(162X12+128 X9) ^110X24。步驟608:檢查第一功能模塊404和第二功能模塊406的地址數(shù)量是否均 大于110,以及第一功能模塊404和第二功能模塊406的數(shù)據(jù)位數(shù)量是否均小 于24,還有第一功能模塊404和第二功能模塊406的數(shù)據(jù)位數(shù)量的總和是否 也小于24。步驟610:進(jìn)行無(wú)條件進(jìn)位(roundup)操作,以分別將第一靜態(tài)隨機(jī)存 取存儲(chǔ)器410以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器412分配給第一功能模塊404以 及第二功能模塊406,其中第一靜態(tài)隨機(jī)存取存儲(chǔ)器410的存儲(chǔ)器容量由兩個(gè) 分別具有大小為(81X12)的存儲(chǔ)器容量的實(shí)體上彼此獨(dú)立的靜態(tài)隨機(jī)存取 存儲(chǔ)器芯片所構(gòu)成,以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器412的存儲(chǔ)器容量由三個(gè) 分別具有大小為(43X9)的存儲(chǔ)器容量的實(shí)體上彼此獨(dú)立的靜態(tài)隨機(jī)存取存 儲(chǔ)器芯片所構(gòu)成,此外,目標(biāo)模塊402需要一個(gè)大小為(110X24)的存儲(chǔ)器 容量,并且第一功能模塊404需要一個(gè)大小為(162X12)的存儲(chǔ)器容量,以 及第二功能模塊406需要一個(gè)大小為(128X9)的存儲(chǔ)器容量。步驟612:當(dāng)?shù)谝还δ苣K404以及第二功能模塊406都還沒(méi)被啟動(dòng)時(shí), 啟動(dòng)目標(biāo)模塊402。步驟614:當(dāng)?shù)谝还δ苣K404以及第二功能模塊406都還沒(méi)被啟動(dòng)時(shí), 重新設(shè)定這些存儲(chǔ)器芯片的組態(tài),并且分別將M3個(gè)地址以及N3個(gè)地址分配 給分別被分配到第一功能模塊404以及第二功能模塊406的第一靜態(tài)隨機(jī)存 取存儲(chǔ)器410以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器412。步驟616:參考由目標(biāo)模塊402所請(qǐng)求的特定地址來(lái)相對(duì)應(yīng)地存取被分配到第一功能模塊404的第一靜態(tài)隨機(jī)存取存儲(chǔ)器410或是被分配到第二功能 模塊406的第二靜態(tài)隨機(jī)存取存儲(chǔ)器412。當(dāng)與該存儲(chǔ)器容量中特定地址相關(guān)的目標(biāo)數(shù)據(jù)由目標(biāo)模塊402所請(qǐng)求, 并且目標(biāo)模塊402被設(shè)計(jì)為具有較為寬松的數(shù)據(jù)存取時(shí)間限制時(shí),存儲(chǔ)器控 制裝置401就可允許在多個(gè)頻率周期循環(huán)內(nèi)通過(guò)參考特定地址來(lái)完成存取與 特定地址相關(guān)的靜態(tài)隨機(jī)存取存儲(chǔ)器裝置,舉例來(lái)說(shuō),在響應(yīng)目標(biāo)模塊402 的請(qǐng)求時(shí),存儲(chǔ)器控制裝置401可以在兩個(gè)頻率周期循環(huán)存取第一靜態(tài)隨機(jī) 存取存儲(chǔ)器410以獲得前面81個(gè)地址中所需要的24個(gè)數(shù)據(jù)位,以及可以在 三個(gè)頻率周期循環(huán)存取第二靜態(tài)隨機(jī)存取存儲(chǔ)器412以獲得剩下29個(gè)地址中 所需要的24個(gè)數(shù)據(jù)位。請(qǐng)參考圖7,圖7所示為依據(jù)本發(fā)明的第三實(shí)施例說(shuō)明在片上系統(tǒng)裝置中 用于目標(biāo)模塊702與至少一功能模塊(即本實(shí)施例中的兩個(gè)功能模塊704、706) 的存儲(chǔ)器共享系統(tǒng)700。第一功能模塊704包含有第一靜態(tài)隨機(jī)存取存儲(chǔ)器 710,并且第二功能模塊706包含有第二靜態(tài)隨機(jī)存取存儲(chǔ)器712,存儲(chǔ)器共 享系統(tǒng)700包含有計(jì)算裝置715、存儲(chǔ)器分配裝置716以及存儲(chǔ)器控制裝置 701。由于計(jì)算裝置715、存儲(chǔ)器分配裝置716以及存儲(chǔ)器控制裝置701分別 具有與第一實(shí)施例中的計(jì)算裝置114、存儲(chǔ)器分配裝置116以及存儲(chǔ)器控制裝 置101相同的功能,所以就不再贅述其詳細(xì)內(nèi)容。在本實(shí)施例中,目標(biāo)模塊 702并沒(méi)有配置任何內(nèi)部的靜態(tài)隨機(jī)存取存儲(chǔ)器,存儲(chǔ)器控制裝置701用來(lái)讓 目標(biāo)模塊702可以共享分別被分配到第一功能模塊704以及第二功能模塊706 的第一靜態(tài)隨機(jī)存取存儲(chǔ)器710以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器712。另外,在 此請(qǐng)注意,上述的實(shí)施例中所設(shè)置的模塊的數(shù)量以及靜態(tài)隨機(jī)存取存儲(chǔ)器的 數(shù)量?jī)H作為本發(fā)明的范例說(shuō)明,更明確地來(lái)說(shuō), 一個(gè)目標(biāo)模塊僅共享兩個(gè)靜 態(tài)隨機(jī)存取存儲(chǔ)器并不是本發(fā)明的限制條件,接著,本說(shuō)明書(shū)將在以下段落 中利用一個(gè)范例來(lái)說(shuō)明共享存儲(chǔ)器的操作細(xì)節(jié)。該片上系統(tǒng)裝置的存儲(chǔ)器容量需求與上述的圖4中的第二實(shí)施例實(shí)質(zhì)上相同,所以就不在多加贅述關(guān)于計(jì)算裝置715所執(zhí)行的計(jì)算操作的詳細(xì)內(nèi)容, 然而,在本實(shí)施例中,存儲(chǔ)器分配裝置716僅分配單一存儲(chǔ)器芯片來(lái)建立第 一靜態(tài)隨機(jī)存取存儲(chǔ)器710,以及分配另一個(gè)單一存儲(chǔ)器芯片來(lái)建立第二靜態(tài) 隨機(jī)存取存儲(chǔ)器712。對(duì)于第一靜態(tài)隨機(jī)存取存儲(chǔ)器710而言,具有大小為(81 X24)的存儲(chǔ)器容量的單一存儲(chǔ)器芯片被視為分別具有大小為(81X12)的 存儲(chǔ)器容量的兩個(gè)讀/寫(xiě)區(qū)塊,其中,在目標(biāo)模塊702共享第一功能模塊704 的靜態(tài)隨機(jī)存取存儲(chǔ)器時(shí),這兩個(gè)讀/寫(xiě)區(qū)塊的采用依循應(yīng)用于上述第二實(shí)施 例的規(guī)則。同樣地,對(duì)于第二靜態(tài)隨機(jī)存取存儲(chǔ)器712而言,具有大小為(43 X27)的存儲(chǔ)器容量的單一存儲(chǔ)器芯片被視為分別具有大小(43X9)的存儲(chǔ) 器容量的三個(gè)讀/寫(xiě)區(qū)塊。第一靜態(tài)隨機(jī)存取存儲(chǔ)器710的數(shù)據(jù)位的總數(shù)以及 第二靜態(tài)隨機(jī)存取存儲(chǔ)器712的數(shù)據(jù)位的總數(shù)分別為24與27,如圖7所示, 這等于或大于目標(biāo)模塊702所需要的數(shù)據(jù)位的總數(shù)24。此外,第一靜態(tài)隨機(jī) 存取存儲(chǔ)器710以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器712的地址的總數(shù)為124,其大 于目標(biāo)模塊702所需要的地址的總數(shù)110,而兩個(gè)分別具有大小為(81X12) 的存儲(chǔ)器容量的存儲(chǔ)器芯片的整體芯片面積大于具有大小為(81X24)的存 儲(chǔ)器容量的單一存儲(chǔ)器芯片的整體芯片面積,因此,相較于第二實(shí)施例,本 發(fā)明的第三實(shí)施例提供一個(gè)成本較低的解決方案。另一方面,當(dāng)目標(biāo)模塊702還沒(méi)被啟動(dòng),而第一功能模塊704或第二功 能模塊706被啟動(dòng)時(shí)(例如第一功能模塊704被啟動(dòng)時(shí)),在第一功能模塊704 中的第一靜態(tài)隨機(jī)存取存儲(chǔ)器710需要被第一功能模塊704所存取,然而, 由于第一靜態(tài)隨機(jī)存取存儲(chǔ)器710的存儲(chǔ)器容量為(81X24),而不是(162 X12),所以應(yīng)該在存儲(chǔ)器共享系統(tǒng)700中使用一種屏蔽機(jī)制(masking mechanism),如此一來(lái),為了使得第一功能模塊704以及第二功能模塊706 能夠分別正確地存取第一靜態(tài)隨機(jī)存取存儲(chǔ)器710以及第二靜態(tài)隨機(jī)存取存 儲(chǔ)器712,屏蔽裝置714被使用。圖8所示為圖7中的屏蔽裝置714的示意圖, 在此請(qǐng)注意,雖然圖7中的屏蔽裝置714屏蔽了第一功能模塊704,但是這僅作為本發(fā)明的范例說(shuō)明,而不是本發(fā)明的限制條件,換句話(huà)說(shuō),當(dāng)具有特定地址的所要的數(shù)據(jù)位分別被第一功能模塊704與第二功能模塊706所請(qǐng)求時(shí), 屏蔽裝置714用于分別參考第一功能模塊704以及第二功能模塊706中的第 一靜態(tài)隨機(jī)存取存儲(chǔ)器710以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器712。屏蔽裝置714 包含有寫(xiě)入屏蔽裝置714a以及讀取屏蔽裝置714b,其中寫(xiě)入屏蔽裝置714a 用于利用特定地址的至少一最低位來(lái)屏蔽第一靜態(tài)隨機(jī)存取存儲(chǔ)器710及/或 第二靜態(tài)隨機(jī)存取存儲(chǔ)器712,以寫(xiě)入所需要的數(shù)據(jù)位到第一靜態(tài)隨機(jī)存取存 儲(chǔ)器710以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器712;而讀取屏蔽裝置714b用于利用 特定地址的至少一最低位來(lái)屏蔽第一靜態(tài)隨機(jī)存取存儲(chǔ)器710及/或第二靜態(tài) 隨機(jī)存取存儲(chǔ)器712,以使存儲(chǔ)器控制裝置701從第一靜態(tài)隨機(jī)存取存儲(chǔ)器 710以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器712中讀取所需要的數(shù)據(jù)位。本說(shuō)明書(shū)將在 以下段落中詳細(xì)說(shuō)明關(guān)于這部分的實(shí)施方式。在實(shí)施例中,兩個(gè)與門(mén)(AND gate) 720與722用來(lái)作為寫(xiě)入屏蔽裝置 714a, 2對(duì)1多任務(wù)器(2-to-l multiplexer)724用來(lái)作為讀取屏蔽裝置714b,其 中第一與門(mén)720的第一輸入端耦接于特定地址的最低位,第二輸入端耦接于 所需要的數(shù)據(jù)位,輸出端耦接于第一靜態(tài)隨機(jī)存取存儲(chǔ)器710以及第二靜態(tài) 隨機(jī)存取存儲(chǔ)器712;而第二與門(mén)722的第一輸入端耦接于特定地址中最低位 的反相,第二輸入端耦接于所需要的數(shù)據(jù)位,輸出端耦接于第一靜態(tài)隨機(jī)存 取存儲(chǔ)器710以及第二靜態(tài)隨機(jī)存取存儲(chǔ)器712。當(dāng)?shù)谝还δ苣K704將數(shù)據(jù)DATAin寫(xiě)入第一靜態(tài)隨機(jī)存取存儲(chǔ)器710 時(shí),其中數(shù)據(jù)DATAin為12位的數(shù)據(jù)并且具有地址ADR,則地址ADR的最 低位ADR—A[O]會(huì)被輸入到第一與門(mén)720的第一輸入端,反相的最低位 ~ADR—A[O]會(huì)被輸入到第二與門(mén)722的第一輸入端,因此,當(dāng)數(shù)據(jù)DATAin 被寫(xiě)入第一靜態(tài)隨機(jī)存取存儲(chǔ)器710時(shí),第一與門(mén)720以及第二與門(mén)722的 其中之一就會(huì)被開(kāi)啟。請(qǐng)參考圖9,圖9所示為利用本發(fā)明的寫(xiě)入屏蔽裝置 714a來(lái)舉例說(shuō)明第一功能模塊704的數(shù)據(jù)寫(xiě)入操作的示意圖。為了簡(jiǎn)單說(shuō)明起見(jiàn),圖8與圖9中只有顯示應(yīng)用于第一功能模塊704的電路組件,然而, 屏蔽裝置714另包含有其它類(lèi)似的電路組件(未顯示)應(yīng)用于第二功能模塊 706。其中,當(dāng)?shù)谝还δ苣K704在操作時(shí),其相對(duì)應(yīng)的寫(xiě)入屏蔽裝置714a 依據(jù)最低地址位ADR—A[O]來(lái)屏蔽24個(gè)數(shù)據(jù)位的前半部分或后半部分(即如 圖9中所示的710a或710b的部分),以將數(shù)據(jù)DATAin寫(xiě)入第一靜態(tài)隨機(jī)存 取存儲(chǔ)器710,因此,從第一功能模塊704的方面來(lái)看,通過(guò)寫(xiě)入屏蔽裝置的 幫助,第一靜態(tài)隨機(jī)存取存儲(chǔ)器710等于具有存儲(chǔ)器容量(162X12)的靜態(tài) 隨機(jī)存取存儲(chǔ)器。舉例來(lái)說(shuō),請(qǐng)參考圖9,當(dāng)?shù)谝还δ苣K704將數(shù)據(jù)寫(xiě)入第 一靜態(tài)隨機(jī)存取存儲(chǔ)器710時(shí),如果與寫(xiě)入請(qǐng)求相關(guān)的地址ADR—A[O]的最低 位為1,則與24個(gè)數(shù)據(jù)位的前半部分的相對(duì)應(yīng)的12位數(shù)據(jù)就會(huì)被寫(xiě)入到對(duì)應(yīng) 于該地址的前面12個(gè)數(shù)據(jù)位(即710a的部分);然而,當(dāng)?shù)谝还δ苣K704 將數(shù)據(jù)寫(xiě)入第一靜態(tài)隨機(jī)存取存儲(chǔ)器710時(shí),如果該地址的最低位為O,則與 24個(gè)數(shù)據(jù)位的后半部分的相對(duì)應(yīng)的12位數(shù)據(jù)就會(huì)被寫(xiě)入到對(duì)應(yīng)于該地址的后 面12個(gè)數(shù)據(jù)位(即710b的部分)。另一方面,當(dāng)?shù)谝还δ苣K704從第一靜態(tài)隨機(jī)存取存儲(chǔ)器710中讀取 數(shù)據(jù)DATAout時(shí),其中數(shù)據(jù)DATAout為12位的數(shù)據(jù)并且具有地址ADR,但 是第一靜態(tài)隨機(jī)存取存儲(chǔ)器710所輸出的數(shù)據(jù)為24個(gè)位,所以地址ADR的 最低位ADR—A[O]'被輸入到多任務(wù)器724中,并且最低位ADR一A[O]'決定多 任務(wù)器724要輸出數(shù)據(jù)DATAout中所需的12個(gè)位數(shù)據(jù)。如圖10所示,圖10 所示為利用本發(fā)明的讀取屏蔽裝置714b來(lái)舉例說(shuō)明第一功能模塊704的數(shù)據(jù) 讀取操作的示意圖。對(duì)于讀取屏蔽裝置714b而言,讀取屏蔽裝置714b用于 依據(jù)與讀取請(qǐng)求相關(guān)的最低地址位ADI^A
'來(lái)屏蔽24個(gè)數(shù)據(jù)位的前半部分 或后半部分以作為輸出數(shù)據(jù)DATAout。請(qǐng)參考圖IO,當(dāng)?shù)谝还δ苣K704讀 取第一靜態(tài)隨機(jī)存取存儲(chǔ)器710時(shí),對(duì)應(yīng)于與讀取請(qǐng)求相關(guān)的地址704c的全 部24個(gè)數(shù)據(jù)位會(huì)從第一靜態(tài)隨機(jī)存取存儲(chǔ)器710中讀取出來(lái),同樣地,全部 24個(gè)數(shù)據(jù)位是從圖10中所示的710a與710b的部分輸出。如果該相關(guān)地址的最低位ADR一A
'為1,則多任務(wù)器724就會(huì)依據(jù)710a的部分中24個(gè)數(shù)據(jù)位 的前半部分的地址來(lái)輸出前面的12個(gè)數(shù)據(jù)位,而如果該相關(guān)地址的最低位 ADI^A
'為0,則多任務(wù)器724就會(huì)依據(jù)710b的部分中24個(gè)數(shù)據(jù)位的后半 部分的地址來(lái)輸出后面的12個(gè)數(shù)據(jù)位。在此請(qǐng)注意,本發(fā)明并不限制利用相 關(guān)地址的最低位來(lái)判斷哪個(gè)部分會(huì)被存取。同樣地,第二功能模塊706也是 利用寫(xiě)入屏蔽裝置714a以及讀取屏蔽裝置714b來(lái)存取第二靜態(tài)隨機(jī)存取存 儲(chǔ)器712,其中,寫(xiě)入屏蔽裝置714a是參考最低的兩個(gè)地址位來(lái)將9位數(shù)據(jù) 寫(xiě)入到高、中、低各9個(gè)數(shù)據(jù)位其中之一,并且讀取屏蔽裝置714b是參考最 低的兩個(gè)地址位來(lái)從高、中、低各9個(gè)數(shù)據(jù)位中選擇其中之一來(lái)輸出數(shù)據(jù)。 然而,當(dāng)?shù)谝还δ苣K704以及第二功能模塊706還沒(méi)被啟動(dòng)時(shí),片上系統(tǒng) 裝置先啟動(dòng)目標(biāo)模塊702以及存儲(chǔ)器控制裝置701,然后再使能存儲(chǔ)器共享機(jī) 制,同樣地,本發(fā)明并不限制利用相關(guān)地址的最低兩個(gè)位來(lái)判斷哪個(gè)部分會(huì) 被存取。
請(qǐng)參考圖11,圖11所示為概述利用本發(fā)明的屏蔽裝置714來(lái)存取第一功 能模塊704中的第一靜態(tài)隨機(jī)存取存儲(chǔ)器710的方法流程圖。為了簡(jiǎn)單說(shuō)明 起見(jiàn),在圖11中所示的方法僅用于存取第一功能模塊704中的第一靜態(tài)隨機(jī) 存取存儲(chǔ)器710,然而,本領(lǐng)域的相關(guān)技術(shù)人員在閱讀上述說(shuō)明內(nèi)容之后應(yīng)該 可以了解該方法通過(guò)適當(dāng)?shù)匦薷闹笠部梢詰?yīng)用于第二功能模塊706。假如實(shí) 質(zhì)上可以得到相同的結(jié)果,則流程中的步驟不一定需要照?qǐng)Dll所示的順序來(lái) 執(zhí)行,也不一定需要是連續(xù)的,也就是說(shuō),這些步驟之間可以插入其它的步 驟。本發(fā)明的方法包含有下列步驟
步驟802:不啟動(dòng)目標(biāo)模塊702。
步驟804:當(dāng)特定地址被分配到第一功能模塊704時(shí),啟動(dòng)第一功能模塊 704中的第一靜態(tài)隨機(jī)存取存儲(chǔ)器710。
步驟806:決定第一功能模塊704中的第一靜態(tài)隨機(jī)存取存儲(chǔ)器710的操 作,如果該特定地址所需要的數(shù)據(jù)位需要被寫(xiě)入到第一靜態(tài)隨機(jī)存取存儲(chǔ)器710中,則進(jìn)行步驟808;如果對(duì)應(yīng)于該特定地址的數(shù)據(jù)位需要被從第一靜態(tài) 隨機(jī)存取存儲(chǔ)器710中讀取出來(lái),則進(jìn)行步驟812。
步驟808:利用該特定地址的最低位ADR^A
來(lái)決定與該特定地址相關(guān) 的哪一部分的12個(gè)數(shù)據(jù)位中會(huì)被存取。
步驟810:如果最低位ADR一A[O]為1,則將12個(gè)數(shù)據(jù)位寫(xiě)入到24個(gè)數(shù) 據(jù)位的前半部分(即710a的部分);如果最低位ADI^A
為0,則將12個(gè) 數(shù)據(jù)位寫(xiě)入到24個(gè)數(shù)據(jù)位的后半部分(即710b的部分)。
步驟812:利用該特定地址的最低位ADR—A[O]'來(lái)決定與該特定地址相關(guān) 的哪一部分的12個(gè)數(shù)據(jù)位會(huì)被選取。
步驟814:如果最低位^尺_(dá)八
'為1,則從24個(gè)數(shù)據(jù)位的前半部分(即 710a的部分)中選取12個(gè)數(shù)據(jù)位;如果最低位ADR—A[O]'為0,則從24個(gè) 數(shù)據(jù)位的后半部分(即710b的部分)中選取12個(gè)數(shù)據(jù)位。
同樣地,對(duì)于存取第二功能模塊706的情況,本發(fā)明方法是參考最低的 兩個(gè)地址位來(lái)將9位數(shù)據(jù)輸入到高、中、低各9個(gè)數(shù)據(jù)位其中之一,并且讀 取屏蔽裝置714b參考最低的兩個(gè)地址位來(lái)從高、中、低各9個(gè)數(shù)據(jù)位中選擇 其中之一來(lái)輸出數(shù)據(jù)。
在此請(qǐng)注意,雖然在上述的實(shí)施例中,目標(biāo)模塊與功能模塊不是同時(shí)被 啟動(dòng),但這并不是本發(fā)明的限制條件,換句話(huà)說(shuō),目標(biāo)模塊與功能模塊的其 中 一些功能模塊是可以同時(shí)被啟動(dòng)的。
以上所述僅為本發(fā)明的較佳實(shí)施例,凡依本發(fā)明權(quán)利要求范圍所做的均 等變化與修飾,皆應(yīng)屬本發(fā)明的涵蓋范圍。
權(quán)利要求
1.一種存儲(chǔ)器共享方法,適用于目標(biāo)模塊與至少一功能模塊,該功能模塊包含有至少一靜態(tài)隨機(jī)存取存儲(chǔ)器,該存儲(chǔ)器共享方法包含有a、計(jì)算該功能模塊的存儲(chǔ)器容量;b、如果模塊群組的總存儲(chǔ)器容量滿(mǎn)足該目標(biāo)模塊的存儲(chǔ)器容量需求,則分配該模塊群組的靜態(tài)隨機(jī)存取存儲(chǔ)器,其中該模塊群組包含有至少一功能模塊;以及c、利用該目標(biāo)模塊來(lái)存取該模塊群組的功能模塊中的該靜態(tài)隨機(jī)存取存儲(chǔ)器。
2. 如權(quán)利要求1所述的存儲(chǔ)器共享方法,其特征在于,該目標(biāo)模塊與該 功能模塊不是同時(shí)被啟動(dòng)。
3. 如權(quán)利要求1所述的存儲(chǔ)器共享方法,其特征在于,該模塊群組另包 含有該目標(biāo)模塊。
4. 如權(quán)利要求1所述的存儲(chǔ)器共享方法,其特征在于,該目標(biāo)模塊的該 存儲(chǔ)器容量需求為地址數(shù)X與位數(shù)Y的乘積,而在該模塊群組中的功能模塊 數(shù)量為m,且在該模塊群組中實(shí)體上彼此獨(dú)立的靜態(tài)隨機(jī)存取存儲(chǔ)器數(shù)量為 n,而第i個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器具有地址數(shù)Xi與位數(shù)Yi,該第i個(gè)靜態(tài)隨機(jī) 存取存儲(chǔ)器的容量為Xi與Yj的乘積,并且i不大于n。
5. 如權(quán)利要求4所述的存儲(chǔ)器共享方法,其特征在于,當(dāng)每一個(gè)該地址 數(shù)Xi不小于X,以及每一個(gè)該位數(shù)Yi的總和不小于Y時(shí),其中i二l n,步驟 b包含有將至少一個(gè)該第i個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器的一部分設(shè)定為被分配的靜態(tài) 隨機(jī)存取存儲(chǔ)器,其具有位數(shù)Yj—fcst以及該地址數(shù)X,以滿(mǎn)足該目標(biāo)模塊的該 存儲(chǔ)器容量需求,其中每一該位數(shù)Yj—f^的總和等于Y,并且i不大于n。
6. 如權(quán)利要求5所述的存儲(chǔ)器共享方法,其特征在于,當(dāng)具有特定地址的目標(biāo)數(shù)據(jù)被該目標(biāo)模塊所選擇時(shí),對(duì)應(yīng)于該特定地址的被分配的靜態(tài)隨機(jī) 存取存儲(chǔ)器被選擇。
7. 如權(quán)利要求4所述的存儲(chǔ)器共享方法,其特征在于,步驟b包含有 將每一第i個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器重新分配為ni個(gè)被分配的靜態(tài)隨機(jī)存取存儲(chǔ)器,而每一該ni個(gè)被分配的靜態(tài)隨機(jī)存取存儲(chǔ)器均具有位數(shù)Yy以及地 址數(shù)Xi—fct,且該地址數(shù)Xj—fet等于X/ni,其中i二l n, j = l ni,而至少其 中一個(gè)ni大于2,且每一第i個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器的每一該位數(shù)Yjj的總和 不小于Y,以及每一該地址數(shù)Xi—fRSt總和不小于X。
8. 如權(quán)利要求7所述的存儲(chǔ)器共享方法,其特征在于,每一該地址數(shù)Xi 不小于X,以及每一該位數(shù)Yj的總和不小于Y。
9. 如權(quán)利要求7所述的存儲(chǔ)器共享方法,其特征在于,該ni個(gè)被分配的 靜態(tài)隨機(jī)存取存儲(chǔ)器的每一該位數(shù)Yij具有相同的數(shù)值。
10. 如權(quán)利要求7所述的存儲(chǔ)器共享方法,其特征在于,該iii個(gè)被分配的 靜態(tài)隨機(jī)存取存儲(chǔ)器實(shí)體上彼此獨(dú)立。
11. 如權(quán)利要求4所述的存儲(chǔ)器共享方法,其特征在于,步驟b包含有 將每一第i個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器分配為iii個(gè)被分配的靜態(tài)隨機(jī)存取存儲(chǔ)器,而每一該ni個(gè)被分配的靜態(tài)隨機(jī)存取存儲(chǔ)器具有位數(shù)Yjj以及地址數(shù) XLfiret,且該地址數(shù)Xi—fet等于X/rii,其中i = l n, j = l ni,而至少其中一 個(gè)ni大于2,且每一該第i個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器的每一該位數(shù)Yij的總和不 小于Y,以及每一該地址數(shù)Xi—firet的總和不小于X。
12. 如權(quán)利要求11所述的存儲(chǔ)器共享方法,其特征在于,當(dāng)具有該位數(shù)Y 以及特定地址的目標(biāo)數(shù)據(jù)被該目標(biāo)模塊所選擇時(shí),在特定靜態(tài)隨機(jī)存取存儲(chǔ) 器中的被分配的靜態(tài)隨機(jī)存取存儲(chǔ)器是依據(jù)該特定地址而被選擇,該目標(biāo)數(shù) 據(jù)是在頻率周期循環(huán)內(nèi)被讀取。
13. 如權(quán)利要求11所述的存儲(chǔ)器共享方法,其特征在于,當(dāng)具有該位數(shù)Y 以及特定地址的目標(biāo)數(shù)據(jù)被該目標(biāo)模塊所選擇時(shí),在特定靜態(tài)隨機(jī)存取存儲(chǔ)器中的至少一被分配的靜態(tài)隨機(jī)存取存儲(chǔ)器是依據(jù)該特定地址而被選擇,且 該目標(biāo)數(shù)據(jù)的一部分是在頻率周期循環(huán)中被讀取,該目標(biāo)數(shù)據(jù)是利用將在多 個(gè)頻率周期循環(huán)中分別被讀取的該目標(biāo)數(shù)據(jù)的多個(gè)部分結(jié)合后而得到。
14. 如權(quán)利要求1所述的存儲(chǔ)器共享方法,其特征在于,該目標(biāo)模塊的該存儲(chǔ)器容量需求為地址數(shù)X與位數(shù)Y的乘積,而在該模塊群組中的功能模塊 數(shù)量為m,且在每一功能模塊中的每一靜態(tài)隨機(jī)存取存儲(chǔ)器都是實(shí)體上彼此 獨(dú)立的,而第i個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器具有地址數(shù)Xi與位數(shù)Yi,以及該第i 個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器的該存儲(chǔ)器容量為Xj與Yj的乘積,并且Yj不小于Y, Xi小于X,而該模塊群組的所有被分配的靜態(tài)隨機(jī)存取存儲(chǔ)器的存儲(chǔ)器容量 的總和不小于該目標(biāo)模塊的該存儲(chǔ)器容量需求,以及步驟b包含有將每一該第i個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器分配為A個(gè)被分配的靜態(tài)隨機(jī)存取 存儲(chǔ)器,而每一該ni個(gè)被分配的靜態(tài)隨機(jī)存取存儲(chǔ)器具有位數(shù)Y以及地址數(shù) Xi—used,并且每一該第i個(gè)靜態(tài)隨機(jī)存取存儲(chǔ)器的每一該地址數(shù)Xi_used的總和 不小于X。
15. 如權(quán)利要求14所述的存儲(chǔ)器共享方法,其特征在于,該Hi個(gè)被分配的 靜態(tài)隨機(jī)存取存儲(chǔ)器是集成于單一靜態(tài)隨機(jī)存取存儲(chǔ)器中。
16. 如權(quán)利要求14所述的存儲(chǔ)器共享方法,其特征在于,當(dāng)具有特定地址 的目標(biāo)數(shù)據(jù)被該目標(biāo)模塊所選擇時(shí),對(duì)應(yīng)于該特定地址的被分配的靜態(tài)隨機(jī) 存取存儲(chǔ)器被選擇,并且這些被選擇到的被分配的靜態(tài)隨機(jī)存取存儲(chǔ)器是依 據(jù)各自目標(biāo)的位數(shù)而被存取。
17. 如權(quán)利要求16所述的存儲(chǔ)器共享方法,其特征在于,另包含有 將該模塊群組中的至少一功能模塊的靜態(tài)隨機(jī)存取存儲(chǔ)器啟動(dòng);以及 當(dāng)該已啟動(dòng)的功能模塊請(qǐng)求具有特定地址的所需要的數(shù)據(jù)位時(shí),參考該特定地址來(lái)存取該已啟動(dòng)的功能模塊中的已啟動(dòng)的靜態(tài)隨機(jī)存取存儲(chǔ)器。
18. 如權(quán)利要求17所述的存儲(chǔ)器共享方法,其特征在于,參考該特定地址 來(lái)存取該已啟動(dòng)的功能模塊中的該已啟動(dòng)的靜態(tài)隨機(jī)存取存儲(chǔ)器的步驟包含有利用該特定地址的至少一最低位來(lái)決定要存取與該特定地址相關(guān)的數(shù)據(jù)
全文摘要
本發(fā)明提供一種用于目標(biāo)模塊以及至少一功能模塊的存儲(chǔ)器共享方法,其中功能模塊包含有至少一靜態(tài)隨機(jī)存取存儲(chǔ)器。存儲(chǔ)器共享方法包含有計(jì)算功能模塊的存儲(chǔ)器容量;如果模塊群組的總存儲(chǔ)器容量滿(mǎn)足目標(biāo)模塊的存儲(chǔ)器容量需求,則分配模塊群組的靜態(tài)隨機(jī)存取存儲(chǔ)器,其中模塊群組包含有至少一功能模塊;利用目標(biāo)模塊來(lái)存取模塊群組的功能模塊的靜態(tài)隨機(jī)存取存儲(chǔ)器。本發(fā)明提供的存儲(chǔ)器共享方法,可減少片上系統(tǒng)裝置中所需要配置的靜態(tài)隨機(jī)存取存儲(chǔ)器的數(shù)量,從而減小存儲(chǔ)器區(qū)塊占據(jù)的片上系統(tǒng)裝置的面積,并降低生產(chǎn)成本。
文檔編號(hào)G06F12/02GK101231616SQ200710180370
公開(kāi)日2008年7月30日 申請(qǐng)日期2007年10月23日 優(yōu)先權(quán)日2007年1月22日
發(fā)明者杜立群, 陳志卿 申請(qǐng)人:聯(lián)發(fā)科技股份有限公司