專(zhuān)利名稱(chēng):動(dòng)態(tài)存儲(chǔ)器存取方法及存儲(chǔ)器控制器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種動(dòng)態(tài)存儲(chǔ)器存取方法及存儲(chǔ)器控制器,特別涉及一種使動(dòng)態(tài)存儲(chǔ) 器頻寬最佳化的動(dòng)態(tài)存儲(chǔ)器存取方法,以及一種以最佳化的頻寬使用方法來(lái)存取動(dòng)態(tài)存儲(chǔ) 器的存儲(chǔ)器控制器。
背景技術(shù):
隨著電子科技的進(jìn)步,電子產(chǎn)品的多功能化成為時(shí)代的一種趨勢(shì)。應(yīng)這種需求的 產(chǎn)生,設(shè)計(jì)者需要將不同功能的多個(gè)裝置,設(shè)置在同一個(gè)系統(tǒng)上。以電視系統(tǒng)為例子,電視 系統(tǒng)除了播放影像所必須使用到的顯示控制器、影像壓縮解壓縮控制器及音頻控制器外, 還需要提供周邊功能(例如即時(shí)或預(yù)約錄影)的中央處理器及相關(guān)的周邊控制器等。而上 述的電視系統(tǒng)中的多個(gè)裝置,都需要存取電視系統(tǒng)中的動(dòng)態(tài)存儲(chǔ)器。為使每一個(gè)裝置都可 以及時(shí)的存取其所需要的數(shù)據(jù),如何有效的使用動(dòng)態(tài)存儲(chǔ)器的有限頻寬就顯得非常重要。由于動(dòng)態(tài)存儲(chǔ)器若在存取時(shí)進(jìn)行更換頁(yè)位址的動(dòng)作時(shí),需要執(zhí)行換頁(yè)指令,因此, 當(dāng)多個(gè)客戶(hù)端同時(shí)對(duì)動(dòng)態(tài)存儲(chǔ)器進(jìn)行存取時(shí),就會(huì)發(fā)生針對(duì)動(dòng)態(tài)存儲(chǔ)器很多不同頁(yè)位址進(jìn) 行存取的情況,這會(huì)使得動(dòng)態(tài)存儲(chǔ)器的整體的存取動(dòng)作會(huì)因?yàn)轫?yè)位址更換指令持續(xù)的被執(zhí) 行而導(dǎo)致了頻寬的浪費(fèi)。如圖1所示,圖1為現(xiàn)有技術(shù)的動(dòng)態(tài)存儲(chǔ)器的存取波形圖。動(dòng)態(tài) 存儲(chǔ)器的存取動(dòng)作是依據(jù)時(shí)鐘信號(hào)CK來(lái)進(jìn)行,指令信號(hào)INS則用來(lái)控制動(dòng)態(tài)存儲(chǔ)器(例如 開(kāi)啟對(duì)應(yīng)的頁(yè)位址或庫(kù)位址),數(shù)據(jù)信號(hào)DATA則用來(lái)傳輸存取的數(shù)據(jù)。其中,指令信號(hào)INS 開(kāi)啟動(dòng)態(tài)存儲(chǔ)器的頁(yè)位址Al后,存取數(shù)據(jù)則可藉由數(shù)據(jù)信號(hào)DATA來(lái)傳輸,一但要進(jìn)行對(duì)動(dòng) 態(tài)存儲(chǔ)器的另一頁(yè)位址進(jìn)行存取時(shí),指令線INS必須藉由傳輸指令以開(kāi)啟庫(kù)位址ABl以及 開(kāi)啟新的頁(yè)位址Bi。而在開(kāi)啟庫(kù)位址ABl以及開(kāi)啟新的頁(yè)位址Bl的期間,數(shù)據(jù)信號(hào)DATA 上并不能傳輸信號(hào),而造成頻寬的浪費(fèi)。
發(fā)明內(nèi)容
本發(fā)明提供一種動(dòng)態(tài)存儲(chǔ)器存取方法,使動(dòng)態(tài)存儲(chǔ)器的頻寬使用最佳化。本發(fā)明還提供一種存儲(chǔ)器控制器,以最佳化的頻寬使用方法來(lái)存取動(dòng)態(tài)存儲(chǔ)器。本發(fā)明提出一種動(dòng)態(tài)存儲(chǔ)器存取方法,包括首先,接收多個(gè)數(shù)據(jù)存取命令,各數(shù) 據(jù)存取命令針對(duì)動(dòng)態(tài)存儲(chǔ)器的頁(yè)(page)位址及庫(kù)(bank)位址進(jìn)行存取。接著,判斷各數(shù) 據(jù)存取命令所要存取的存取數(shù)據(jù)為等時(shí)性數(shù)據(jù)或非等時(shí)性數(shù)據(jù)。并且,比較各數(shù)據(jù)存取命 令的頁(yè)位址及庫(kù)位址與前一次對(duì)動(dòng)態(tài)存儲(chǔ)器存取進(jìn)行存取的前次頁(yè)位址及前次庫(kù)位址,以 獲得各數(shù)據(jù)存取命令的位址碰撞狀態(tài)。然后,依據(jù)各數(shù)據(jù)存取命令的存取數(shù)據(jù)為等時(shí)性數(shù) 據(jù)或非等時(shí)性數(shù)據(jù)以及位址碰撞狀態(tài)來(lái)對(duì)應(yīng)產(chǎn)生服務(wù)順序,并依據(jù)各數(shù)據(jù)存取命令所對(duì)應(yīng) 的服務(wù)順序來(lái)依序進(jìn)行動(dòng)態(tài)存儲(chǔ)器的存取動(dòng)作。在本發(fā)明的一實(shí)施例中,當(dāng)各數(shù)據(jù)存取命令的存取數(shù)據(jù)為等時(shí)性數(shù)據(jù)時(shí),對(duì)應(yīng)產(chǎn) 生的服務(wù)順序優(yōu)先于當(dāng)各該數(shù)據(jù)存取命令的存取數(shù)據(jù)為非等時(shí)性數(shù)據(jù)時(shí)所對(duì)應(yīng)產(chǎn)生的服 務(wù)順序。
4
在本發(fā)明的一實(shí)施例中,上述的位址碰撞狀態(tài)包括頁(yè)位址與前次頁(yè)位址相同、頁(yè) 位址與前次頁(yè)位址不相同且?guī)煳恢放c前次庫(kù)位址不相同或頁(yè)位址與前次頁(yè)位址不相同且 庫(kù)位址與前次庫(kù)位址相同。在本發(fā)明的一實(shí)施例中,當(dāng)位址碰撞狀態(tài)為頁(yè)位址與前次頁(yè)位址相同時(shí)對(duì)應(yīng)產(chǎn)生 的服務(wù)順序優(yōu)先于當(dāng)頁(yè)位址與前次頁(yè)位址不相同且?guī)煳恢放c前次庫(kù)位址不相同時(shí)對(duì)應(yīng)產(chǎn) 生的服務(wù)順序。并且,當(dāng)頁(yè)位址與前次頁(yè)位址不相同且?guī)煳恢放c前次庫(kù)位址不相同時(shí)對(duì)應(yīng) 產(chǎn)生的服務(wù)順序優(yōu)先于當(dāng)頁(yè)位址與該前次頁(yè)位址不相同且?guī)煳恢放c前次庫(kù)位址相同對(duì)應(yīng) 產(chǎn)生的服務(wù)順序。在本發(fā)明的一實(shí)施例中,上述的動(dòng)態(tài)存儲(chǔ)器的存取方法還包括重新整理頁(yè)位址 與前次頁(yè)位址不相同且?guī)煳恢放c前次庫(kù)位址相同的數(shù)據(jù),其中存取命令中具有相同的頁(yè)位 址的依序執(zhí)行。在本發(fā)明的一實(shí)施例中,上述的動(dòng)態(tài)存儲(chǔ)器的存取方法還包括判斷各數(shù)據(jù)存取命 令的等待時(shí)間,且當(dāng)?shù)却龝r(shí)間超過(guò)預(yù)設(shè)最大等待時(shí)間時(shí),直接執(zhí)行對(duì)應(yīng)的各數(shù)據(jù)存取命令。在本發(fā)明的一實(shí)施例中,其中當(dāng)存取數(shù)據(jù)為等時(shí)性數(shù)據(jù)時(shí),對(duì)應(yīng)的各數(shù)據(jù)存取命 令即時(shí)且連續(xù)由動(dòng)態(tài)存儲(chǔ)器存取該存取數(shù)據(jù)。在本發(fā)明的一實(shí)施例中,上述的數(shù)據(jù)存取命令分別由多個(gè)客戶(hù)端所發(fā)送。在本發(fā)明的一實(shí)施例中,上述的客戶(hù)端包括顯示控制器、影像壓縮解壓縮控制器、 周邊控制器、中央處理器以及音頻控制器。本發(fā)明還提出一種存儲(chǔ)器控制器,用以存取一動(dòng)態(tài)存儲(chǔ)器,包括仲裁器、服務(wù)順序 產(chǎn)生器及存取控制器。仲裁器用以接收多個(gè)數(shù)據(jù)存取命令,其中各數(shù)據(jù)存取命令針對(duì)動(dòng)態(tài) 存儲(chǔ)器的頁(yè)位址及庫(kù)位址進(jìn)行存取。仲裁器并判斷各數(shù)據(jù)存取命令所要存取的存取數(shù)據(jù)為 等時(shí)性數(shù)據(jù)或非等時(shí)性數(shù)據(jù)。服務(wù)順序產(chǎn)生器連接仲裁器,用以比較各數(shù)據(jù)存取命令的頁(yè) 位址及庫(kù)位址與前次對(duì)動(dòng)態(tài)存儲(chǔ)器進(jìn)行存取的前次頁(yè)位址及前次庫(kù)位址,以獲得各數(shù)據(jù)存 取命令的位址碰撞狀態(tài)。服務(wù)順序產(chǎn)生器并依據(jù)各數(shù)據(jù)存取命令的存取數(shù)據(jù)為等時(shí)性數(shù)據(jù) 或非等時(shí)性數(shù)據(jù)以及位址碰撞狀態(tài)來(lái)對(duì)應(yīng)產(chǎn)生服務(wù)順序。存取控制器連接服務(wù)順序產(chǎn)生 器,依據(jù)各數(shù)據(jù)存取命令所對(duì)應(yīng)的服務(wù)順序來(lái)依序進(jìn)行動(dòng)態(tài)存儲(chǔ)器的存取動(dòng)作。在本發(fā)明的一實(shí)施例中,上述的服務(wù)順序產(chǎn)生器包括緩沖器,用以暫存尚未被執(zhí) 行的各數(shù)據(jù)存取命令的相關(guān)信息?;谏鲜?,本發(fā)明利用依據(jù)多個(gè)數(shù)據(jù)存取命令的等時(shí)性或非等時(shí)性的特性,并利 用各數(shù)據(jù)存取命令所要存取的存儲(chǔ)器的頁(yè)位址及庫(kù)位址與動(dòng)態(tài)存儲(chǔ)器前一次讀取的前次 頁(yè)位址及前次庫(kù)位址的位址碰撞狀態(tài),來(lái)排定數(shù)據(jù)存取命令的順序。進(jìn)而達(dá)成在最有效率 的情形下存取動(dòng)態(tài)存儲(chǔ)器。下面通過(guò)附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
圖1為現(xiàn)有技術(shù)中的動(dòng)態(tài)存儲(chǔ)器的存取波形圖。圖2為本發(fā)明的一實(shí)施例的存儲(chǔ)器控制器200的示意圖。圖3為本發(fā)明實(shí)施例的存儲(chǔ)器控制器200的示意圖。圖4A及圖4B為本發(fā)明的一實(shí)施例的動(dòng)態(tài)存儲(chǔ)器的存取方法流程圖。
主要元件符號(hào)說(shuō)明
200 存儲(chǔ)器控制器;210 仲裁器;
220 服務(wù)順序產(chǎn)生器; 230 存取控制器
240 存儲(chǔ)器;291 顯示控制器
292 影像壓縮解壓縮控制器;293 周邊控制器
294 中央處理器;295 音頻控制器
221 緩沖器;CK 時(shí)鐘信號(hào);
INS 指令信號(hào);DATA 數(shù)據(jù)信號(hào);
Al、Bl 頁(yè)位址;ABl 庫(kù)位址;
S410ι S4B0 動(dòng)態(tài)存儲(chǔ)器的存取方法步驟。
具體實(shí)施例方式如圖2所示,圖2為本發(fā)明的一實(shí)施例的存儲(chǔ)器控制器200的示意圖。存儲(chǔ)器控 制器200包括仲裁器210、服務(wù)順序產(chǎn)生器220以及存取控制器230。存儲(chǔ)器控制器200用 以存取存儲(chǔ)器240,而存儲(chǔ)器240為動(dòng)態(tài)存儲(chǔ)器。另外,對(duì)存儲(chǔ)器240發(fā)送出存取要求的數(shù) 據(jù)存取命令的則為顯示控制器291、影像壓縮解壓縮控制器292、周邊控制器293、中央處理 器294以及音頻控制器295等多個(gè)客戶(hù)端。仲裁器210接收來(lái)自客戶(hù)端的多個(gè)數(shù)據(jù)存取命令,其中的每一個(gè)數(shù)據(jù)存取命令皆 為針對(duì)動(dòng)態(tài)存儲(chǔ)器240的頁(yè)位址及庫(kù)位址進(jìn)行存取。仲裁器210并且判斷這些數(shù)據(jù)存取 命令所要存取的存取數(shù)據(jù)為等時(shí)性數(shù)據(jù)或是為非等時(shí)性數(shù)據(jù)。在此特別說(shuō)明,所謂的等時(shí) 性數(shù)據(jù)就是指存取數(shù)據(jù)必須要即時(shí)的且連續(xù)的被存入存儲(chǔ)器240或取出送至客戶(hù)端。相反 的,非等時(shí)性數(shù)據(jù)就是指存取數(shù)據(jù)并不一定要即時(shí)的且連續(xù)的被存入存儲(chǔ)器240或取出送 至客戶(hù)端,而是可以稍事等待的存取數(shù)據(jù)。在此,存取數(shù)據(jù)是為等時(shí)性數(shù)據(jù)或非等時(shí)性數(shù)據(jù)是依據(jù)存取數(shù)據(jù)的應(yīng)用范圍來(lái)決 定的。舉例來(lái)說(shuō),音頻控制器295所需要的存取數(shù)據(jù)就會(huì)是一個(gè)等時(shí)性數(shù)據(jù)。這是因?yàn)槿?果音頻的存取數(shù)據(jù)沒(méi)有被即時(shí)的存取,則音頻的播放就有可能因?yàn)闆](méi)有數(shù)據(jù)而產(chǎn)生沒(méi)有聲 音或甚至于爆音的情況發(fā)生。相對(duì)的,顯示控制器291所需要的存取數(shù)據(jù)就會(huì)是一個(gè)非等 時(shí)性數(shù)據(jù),這是因?yàn)橥ǔo@示器是一個(gè)畫(huà)框(frame)時(shí)間才更新一次數(shù)據(jù),這相對(duì)于高速 存取的動(dòng)態(tài)存儲(chǔ)器而言,并不是一個(gè)需要即時(shí)且連續(xù)存取的等時(shí)性數(shù)據(jù)。服務(wù)順序產(chǎn)生器220連接仲裁器210,在仲裁器210判斷出數(shù)據(jù)存取命令所要存取 的存取數(shù)據(jù)是為等時(shí)性數(shù)據(jù)或非等時(shí)性數(shù)據(jù)后,服務(wù)順序產(chǎn)生器220則針對(duì)數(shù)據(jù)存取命令 所要對(duì)存儲(chǔ)器240進(jìn)行存取的位址進(jìn)行判斷。在此,所謂的對(duì)存儲(chǔ)器240進(jìn)行存取的位址包 括有頁(yè)位址及庫(kù)位址。服務(wù)順序產(chǎn)生器220主要是針對(duì)各數(shù)據(jù)存取命令對(duì)存儲(chǔ)器240進(jìn)行 存取的頁(yè)位址及庫(kù)位址與前一次存儲(chǔ)器240被存取的前次頁(yè)位址及前次庫(kù)位址進(jìn)行比較, 并進(jìn)而獲得各數(shù)據(jù)存取命令的位址碰撞狀態(tài)。在此,位址碰撞狀態(tài)共可分為三種,一種是數(shù)據(jù)存取命令所要進(jìn)行存取的頁(yè)位址 與前次頁(yè)位址相同,另一種則是數(shù)據(jù)存取命令所要進(jìn)行存取的頁(yè)位址與前次頁(yè)位址不相同 且數(shù)據(jù)存取命令所要進(jìn)行存取的庫(kù)位址與前次庫(kù)位址不相同,第三種則是數(shù)據(jù)存取命令所 要進(jìn)行存取的頁(yè)位址與前次頁(yè)位址不相同且數(shù)據(jù)存取命令所要進(jìn)行存取的庫(kù)位址與前次庫(kù)位址相同。值得說(shuō)明的是,由于當(dāng)對(duì)動(dòng)態(tài)存儲(chǔ)器240進(jìn)行存取時(shí),若不必要更換頁(yè)位址時(shí),是 可以直接進(jìn)行存取動(dòng)作。而若是對(duì)動(dòng)態(tài)存儲(chǔ)器240進(jìn)行存取時(shí)需要更換頁(yè)位址但也同時(shí)需 要更換庫(kù)位址時(shí),則可以利用平行隱藏指令的方式,來(lái)避免掉頻寬的浪費(fèi)。再者,一但發(fā)生 要對(duì)存儲(chǔ)器240的不同頁(yè)同一個(gè)庫(kù)進(jìn)行存取時(shí),則無(wú)可避免要浪費(fèi)掉存儲(chǔ)器240的頻寬。而 上述的平行隱藏指令的動(dòng)態(tài)存儲(chǔ)器的存取方式為本領(lǐng)域技術(shù)人員的公知常識(shí),在此則不多 贅述。因此,服務(wù)順序產(chǎn)生器220針對(duì)所接收到的多個(gè)數(shù)據(jù)存取命令來(lái)分類(lèi),并訂出一 個(gè)服務(wù)順序,來(lái)針對(duì)存儲(chǔ)器240進(jìn)行最有效率的存取。其中,等時(shí)性數(shù)據(jù)的數(shù)據(jù)存取命令的 優(yōu)先度一定優(yōu)先于非等時(shí)性數(shù)據(jù)的數(shù)據(jù)存取命令。接著,再判斷等時(shí)性數(shù)據(jù)的數(shù)據(jù)存取命 令中,各數(shù)據(jù)存取命令的位址碰撞狀態(tài)。其中,各種碰撞狀態(tài)的優(yōu)先度分別為“頁(yè)位址與前 次頁(yè)位址相同”優(yōu)先于“頁(yè)位址與前次頁(yè)位址不相同且?guī)煳恢放c前次庫(kù)位址不相同”優(yōu)先于 “頁(yè)位址與前次頁(yè)位址不相同且?guī)煳恢放c前次庫(kù)位址相同”。此外,為了提升存儲(chǔ)器240的頻寬使用效率,服務(wù)順序產(chǎn)生器220還會(huì)針對(duì)發(fā)生 “頁(yè)位址與前次頁(yè)位址不相同且?guī)煳恢放c前次庫(kù)位址相同”碰撞狀態(tài)的數(shù)據(jù)存取命令進(jìn)行 整合,并分類(lèi)出存取相同頁(yè)位址的數(shù)據(jù)存取命令。如此一來(lái),這些最低優(yōu)先度的數(shù)據(jù)存取命 令也可以在最少的頁(yè)位址的更換情況下來(lái)分別的被執(zhí)行。接下來(lái),服務(wù)順序產(chǎn)生器220針對(duì)非等時(shí)性數(shù)據(jù)的各數(shù)據(jù)存取命令的位址碰撞狀 態(tài)來(lái)產(chǎn)生服務(wù)順序,而判斷的方法與上述的針對(duì)等時(shí)性數(shù)據(jù)的判斷方法相同,以下不多贅 述。但值得注意的是,非等時(shí)性數(shù)據(jù)的數(shù)據(jù)存取命令的優(yōu)先度一定低于等時(shí)性數(shù)據(jù)的數(shù)據(jù) 存取命令的優(yōu)先度。存取控制器230則連接服務(wù)順序產(chǎn)生器220,存取控制器230依據(jù)各數(shù)據(jù)存取命令 所對(duì)應(yīng)的服務(wù)順序來(lái)依序進(jìn)行動(dòng)態(tài)存儲(chǔ)器的存取動(dòng)作。也就是說(shuō),存取控制器230會(huì)依照 服務(wù)順序的優(yōu)先順序來(lái)依序讀或?qū)懘鎯?chǔ)器240。由于上述的服務(wù)順序經(jīng)過(guò)服務(wù)順序產(chǎn)生器 220準(zhǔn)確的排序過(guò),因此,對(duì)存儲(chǔ)器240所進(jìn)行的頁(yè)位址切換次數(shù)會(huì)是最少的,換句話(huà)說(shuō),存 儲(chǔ)器240的頻寬使用效率是最佳的。另外,為了避免服務(wù)順序較低的數(shù)據(jù)存取命令在不斷有高優(yōu)先的服務(wù)順序插入 (如等時(shí)性數(shù)據(jù)且不需切換頁(yè)位址)的情況下,而發(fā)生這個(gè)服務(wù)順序較低的數(shù)據(jù)存取命令 永遠(yuǎn)不會(huì)被執(zhí)行的狀況,本實(shí)施例的服務(wù)順序產(chǎn)生器220還會(huì)依據(jù)各數(shù)據(jù)存取命令的等待 時(shí)間來(lái)調(diào)整服務(wù)順序。一旦,服務(wù)順序產(chǎn)生器220偵測(cè)到數(shù)據(jù)存取命令的等待時(shí)間超過(guò)一 個(gè)預(yù)設(shè)最大等待時(shí)間時(shí),服務(wù)順序產(chǎn)生器220會(huì)提升這個(gè)數(shù)據(jù)存取命令的服務(wù)順序?yàn)樽顑?yōu) 先,并使存取控制器230直接執(zhí)行此數(shù)據(jù)存取命令。如圖3所示,圖3為本發(fā)明實(shí)施例的存儲(chǔ)器控制器200的示意圖。其中,服務(wù)順序 產(chǎn)生器220內(nèi)建了一個(gè)緩沖器221,緩沖器221是用以暫存尚未被執(zhí)行的各數(shù)據(jù)存取命令 的相關(guān)信息。在此,所謂的相關(guān)信息包括數(shù)據(jù)存取命令所要寫(xiě)入的存取數(shù)據(jù)、數(shù)據(jù)存取命令 要進(jìn)行的是存或是取的動(dòng)作標(biāo)志或是數(shù)據(jù)存取命令所要存取的頁(yè)位址及庫(kù)位址。上述的增 加緩沖器221的實(shí)施方式針對(duì)等時(shí)性數(shù)據(jù)的處理特別有幫助。一般而言,由于客戶(hù)端的時(shí) 鐘與存儲(chǔ)器控制器200的時(shí)鐘并不同步,因此在仲裁器210選取數(shù)據(jù)存取命令時(shí)必需要先 進(jìn)行時(shí)鐘同步的動(dòng)作。而最常見(jiàn)的時(shí)鐘同步的方式是利用兩級(jí)串接的D型正反器(D-type
7Flip Flop,DFF)來(lái)完成的。也就是說(shuō),在進(jìn)行時(shí)鐘同步的同時(shí),會(huì)使仲裁器210的動(dòng)作延 遲兩個(gè)時(shí)鐘。而在增加緩沖器221的情況下,數(shù)據(jù)存取命令可以先被儲(chǔ)存在緩沖器221中, 而上述時(shí)鐘同步的動(dòng)作就可以被避免,也因此緩沖器221還可以補(bǔ)償因頻率轉(zhuǎn)換造成的效 能損失。特別值得一提的是,緩沖器221并不一定要在服務(wù)順序產(chǎn)生器220中如圖2畫(huà)出 相同的內(nèi)建,也可以配置在存儲(chǔ)器控制器200中的任何位置,只要可以提供暫存的功能即可。如4A及圖4B圖所示,圖4A及圖4B為本發(fā)明的一實(shí)施例的動(dòng)態(tài)存儲(chǔ)器的存取 方法流程圖。首先,接收多個(gè)數(shù)據(jù)存取命令(S410),接著,判斷各數(shù)據(jù)存取命令等待時(shí)間 是否超過(guò)預(yù)設(shè)最大等待時(shí)間(S420),若判斷的結(jié)果為是,則直接執(zhí)行對(duì)應(yīng)的數(shù)據(jù)存取命令 (S421),而若判斷的結(jié)果為否,則判斷各數(shù)據(jù)存取命令所要存取的存取數(shù)據(jù)為等時(shí)性數(shù)據(jù) 或非等時(shí)性數(shù)據(jù)(S430)。若是步驟S430中的判斷結(jié)果為非等時(shí)性數(shù)據(jù),則在節(jié)點(diǎn)Tl進(jìn)行 等待。相反的,若是步驟S430中的判斷結(jié)果為等時(shí)性數(shù)據(jù)時(shí),則進(jìn)行步驟S440。步驟S440則比較數(shù)據(jù)存取命令的頁(yè)位址與前次頁(yè)位址,一旦比較的結(jié)果為不相 同時(shí),表示頁(yè)位址不需要被更換,并直接執(zhí)行對(duì)應(yīng)的數(shù)據(jù)存取命令(S441)。而若比較的結(jié)果 為相同時(shí),則繼續(xù)比較數(shù)據(jù)存取命令的庫(kù)位址與前次庫(kù)位址(S450),若是數(shù)據(jù)存取命令的 庫(kù)位址與前次庫(kù)位址不相同時(shí),則可以平行隱藏指令的方式來(lái)直接執(zhí)行對(duì)應(yīng)的數(shù)據(jù)存取命 令(S451),若是數(shù)據(jù)存取命令的庫(kù)位址與前次庫(kù)位址相同時(shí),則繼續(xù)進(jìn)行步驟S460。步驟S460則是重新整理各數(shù)據(jù)存取命令中頁(yè)位址與前次頁(yè)位址不相同且?guī)煳恢?與前次庫(kù)位址相同的多個(gè)數(shù)據(jù)存取命令,具有相同的頁(yè)位址的所述多個(gè)數(shù)據(jù)存取命令依序 執(zhí)行。在完成了步驟S460后,再針對(duì)剩余的等時(shí)性數(shù)據(jù)的數(shù)據(jù)存取命令進(jìn)行執(zhí)行(S470)。接著,在完成了步驟S470后繼續(xù)由節(jié)點(diǎn)Tl進(jìn)行接下來(lái)的步驟,參照?qǐng)D4B。其中, 圖4B中步驟S480 S4B0與圖4B中步驟440 470的步驟相同,以下不多贅述。所要注意 的是,步驟S480 S4B0針對(duì)的是非等時(shí)性數(shù)據(jù)的數(shù)據(jù)存取命令進(jìn)行處理,而步驟S440 S470針對(duì)的是等時(shí)性數(shù)據(jù)的數(shù)據(jù)存取命令進(jìn)行處理。綜上所述,本發(fā)明的存儲(chǔ)器控制及其存儲(chǔ)器的存取方法判斷數(shù)據(jù)存取命令所存取 的數(shù)據(jù)是等時(shí)性數(shù)據(jù)或非等時(shí)性數(shù)據(jù),來(lái)分類(lèi)數(shù)據(jù)存取命令,并依據(jù)數(shù)據(jù)存取命令所要存 取的存儲(chǔ)器的庫(kù)位址及頁(yè)位址與存儲(chǔ)器前一次存取的前次庫(kù)位址及前次頁(yè)位址來(lái)對(duì)應(yīng)產(chǎn) 生服務(wù)順序,并依序執(zhí)行各數(shù)據(jù)存取命令以存取存儲(chǔ)器。在此,本發(fā)明提出的存儲(chǔ)器控制及 其存儲(chǔ)器的存取方法有效的降低動(dòng)態(tài)存儲(chǔ)器被存取時(shí)頁(yè)位址的切換次數(shù),進(jìn)而提高動(dòng)態(tài)存 儲(chǔ)器的存取效率。最后應(yīng)說(shuō)明的是以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非對(duì)其進(jìn)行限制, 盡管參照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解其依 然可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而這些修改或者等同替換亦不能使修 改后的技術(shù)方案脫離本發(fā)明技術(shù)方案的精神和范圍。
權(quán)利要求
一種動(dòng)態(tài)存儲(chǔ)器存取方法,包括接收多個(gè)數(shù)據(jù)存取命令,各所述數(shù)據(jù)存取命令針對(duì)所述動(dòng)態(tài)存儲(chǔ)器的一頁(yè)位址及一庫(kù)位址進(jìn)行存??;判斷各所述數(shù)據(jù)存取命令所要存取的一存取數(shù)據(jù)為一等時(shí)性數(shù)據(jù)或一非等時(shí)性數(shù)據(jù);比較各所述數(shù)據(jù)存取命令的所述頁(yè)位址及所述庫(kù)位址與前一次對(duì)所述動(dòng)態(tài)存儲(chǔ)器進(jìn)行存取的一前次頁(yè)位址及一前次庫(kù)位址,以獲得各所述數(shù)據(jù)存取命令的一位址碰撞狀態(tài);依據(jù)各所述數(shù)據(jù)存取命令的所述存取數(shù)據(jù)為所述等時(shí)性數(shù)據(jù)或所述非等時(shí)性數(shù)據(jù)以及所述位址碰撞狀態(tài)來(lái)對(duì)應(yīng)產(chǎn)生一服務(wù)順序;依據(jù)各所述數(shù)據(jù)存取命令所對(duì)應(yīng)的所述服務(wù)順序來(lái)依序進(jìn)行所述動(dòng)態(tài)存儲(chǔ)器的存取動(dòng)作。
2.根據(jù)權(quán)利要求1所述的動(dòng)態(tài)存儲(chǔ)器存取方法,其中當(dāng)各所述數(shù)據(jù)存取命令的所述存取數(shù)據(jù)為所述等時(shí)性數(shù)據(jù)時(shí),對(duì)應(yīng)產(chǎn)生的所述服務(wù)順 序優(yōu)先于當(dāng)各所述數(shù)據(jù)存取命令的所述存取數(shù)據(jù)為所述非等時(shí)性數(shù)據(jù)時(shí)所對(duì)應(yīng)產(chǎn)生的所 述服務(wù)順序。
3.根據(jù)權(quán)利要求1所述的動(dòng)態(tài)存儲(chǔ)器存取方法,其中所述位址碰撞狀態(tài)包括 所述頁(yè)位址與所述前次頁(yè)位址相同、所述頁(yè)位址與所述前次頁(yè)位址不相同且所述庫(kù)位址與所述前次庫(kù)位址不相同或所述頁(yè)位址與所述前次頁(yè)位址不相同且所述庫(kù)位址與所述 前次庫(kù)位址相同。
4.根據(jù)權(quán)利要求3所述的動(dòng)態(tài)存儲(chǔ)器存取方法,其中當(dāng)所述位址碰撞狀態(tài)為所述頁(yè)位 址與所述前次頁(yè)位址相同時(shí)對(duì)應(yīng)產(chǎn)生的所述服務(wù)順序優(yōu)先于當(dāng)所述頁(yè)位址與所述前次頁(yè) 位址不相同且所述庫(kù)位址與所述前次庫(kù)位址不相同時(shí)對(duì)應(yīng)產(chǎn)生的所述服務(wù)順序,并且,當(dāng) 所述頁(yè)位址與所述前次頁(yè)位址不相同且所述庫(kù)位址與所述前次庫(kù)位址不相同時(shí)對(duì)應(yīng)產(chǎn)生 的所述服務(wù)順序優(yōu)先于當(dāng)所述頁(yè)位址與所述前次頁(yè)位址不相同且所述庫(kù)位址與所述前次 庫(kù)位址相同對(duì)應(yīng)產(chǎn)生的所述服務(wù)順序。
5.根據(jù)權(quán)利要求3所述的動(dòng)態(tài)存儲(chǔ)器存取方法,還包括重新整理所述頁(yè)位址與所述前次頁(yè)位址不相同且所述庫(kù)位址與所述前次庫(kù)位址相同 的所述多個(gè)數(shù)據(jù)存取命令,具有相同的所述頁(yè)位址的所述多個(gè)數(shù)據(jù)存取命令依序執(zhí)行。
6.根據(jù)權(quán)利要求1所述的動(dòng)態(tài)存儲(chǔ)器存取方法,還包括 判斷各所述數(shù)據(jù)存取命令的一等待時(shí)間;當(dāng)所述等待時(shí)間超過(guò)一預(yù)設(shè)最大等待時(shí)間時(shí),直接執(zhí)行對(duì)應(yīng)的各所述數(shù)據(jù)存取命令。
7.根據(jù)權(quán)利要求1所述的動(dòng)態(tài)存儲(chǔ)器存取方法,其中當(dāng)所述存取數(shù)據(jù)為所述等時(shí)性數(shù) 據(jù)時(shí),對(duì)應(yīng)的各所述數(shù)據(jù)存取命令即時(shí)且連續(xù)由所述動(dòng)態(tài)存儲(chǔ)器存取所述存取數(shù)據(jù)。
8.根據(jù)權(quán)利要求1所述的動(dòng)態(tài)存儲(chǔ)器存取方法,其中所述多個(gè)數(shù)據(jù)存取命令分別由多 個(gè)客戶(hù)端所發(fā)送。
9.根據(jù)權(quán)利要求8所述的動(dòng)態(tài)存儲(chǔ)器存取方法,其中所述多個(gè)客戶(hù)端包括顯示控制 器、影像壓縮解壓縮控制器、周邊控制器、中央處理器以及音頻控制器。
10.一種存儲(chǔ)器控制器,用以存取一動(dòng)態(tài)存儲(chǔ)器,包括一仲裁器,用以接收多個(gè)數(shù)據(jù)存取命令,其中各所述數(shù)據(jù)存取命令針對(duì)所述動(dòng)態(tài)存儲(chǔ)2器的一頁(yè)位址及一庫(kù)位址進(jìn)行存取,并判斷各所述數(shù)據(jù)存取命令所要存取的一存取數(shù)據(jù)為 一等時(shí)性數(shù)據(jù)或一非等時(shí)性數(shù)據(jù);一服務(wù)順序產(chǎn)生器,耦接所述仲裁器,比較各所述數(shù)據(jù)存取命令的所述頁(yè)位址及所述 庫(kù)位址與前一次對(duì)所述動(dòng)態(tài)存儲(chǔ)器進(jìn)行存取的一前次頁(yè)位址及一前次庫(kù)位址,以獲得各所 述數(shù)據(jù)存取命令的一位址碰撞狀態(tài),并依據(jù)各所述數(shù)據(jù)存取命令的所述存取數(shù)據(jù)為所述等 時(shí)性數(shù)據(jù)或所述非等時(shí)性數(shù)據(jù)以及所述位址碰撞狀態(tài)來(lái)對(duì)應(yīng)產(chǎn)生一服務(wù)順序;一存取控制器,耦接所述服務(wù)順序產(chǎn)生器,依據(jù)各所述數(shù)據(jù)存取命令所對(duì)應(yīng)的所述服 務(wù)順序來(lái)依序進(jìn)行所述動(dòng)態(tài)存儲(chǔ)器的存取動(dòng)作。
11.根據(jù)權(quán)利要求10所述的存儲(chǔ)器控制器,其中當(dāng)所述仲裁器判斷各所述數(shù)據(jù)存取命 令的所述存取數(shù)據(jù)為所述等時(shí)性數(shù)據(jù)時(shí),所述服務(wù)順序產(chǎn)生器對(duì)應(yīng)產(chǎn)生的所述服務(wù)順序優(yōu) 先于當(dāng)所述仲裁器判斷各所述數(shù)據(jù)存取命令的所述存取數(shù)據(jù)為所述非等時(shí)性數(shù)據(jù)時(shí)所述 服務(wù)順序產(chǎn)生器所對(duì)應(yīng)產(chǎn)生的所述服務(wù)順序。
12.根據(jù)權(quán)利要求10所述的存儲(chǔ)器控制器,其中所述服務(wù)順序產(chǎn)生器判斷所述位址碰 撞狀態(tài)包括所述頁(yè)位址與所述前次頁(yè)位址相同、所述頁(yè)位址與所述前次頁(yè)位址不相同且所 述庫(kù)位址與所述前次庫(kù)位址不相同,或所述頁(yè)位址與所述前次頁(yè)位址不相同且所述庫(kù)位址 與所述前次庫(kù)位址相同。
13.根據(jù)權(quán)利要求12所述的存儲(chǔ)器控制器,其中當(dāng)所述服務(wù)順序產(chǎn)生器判斷所述位址 碰撞狀態(tài)為所述頁(yè)位址與前次頁(yè)位址相同時(shí)所述服務(wù)順序產(chǎn)生器對(duì)應(yīng)產(chǎn)生的所述服務(wù)順 序優(yōu)先于當(dāng)所述服務(wù)順序產(chǎn)生器判斷所述頁(yè)位址與所述前次頁(yè)位址不相同且所述庫(kù)位址 與所述前次庫(kù)位址不相同時(shí),所述服務(wù)順序產(chǎn)生器應(yīng)產(chǎn)生的所述服務(wù)順序,并且,當(dāng)所述服 務(wù)順序產(chǎn)生器判斷所述頁(yè)位址與所述前次頁(yè)位址不相同且所述庫(kù)位址與所述前次庫(kù)位址 不相同時(shí)所述服務(wù)順序產(chǎn)生器對(duì)應(yīng)產(chǎn)生的所述服務(wù)順序優(yōu)先于當(dāng)所述服務(wù)順序產(chǎn)生器判 斷所述頁(yè)位址與所述前次頁(yè)位址不相同且所述庫(kù)位址與所述前次庫(kù)位址相同時(shí),所述服務(wù) 順序產(chǎn)生器對(duì)應(yīng)產(chǎn)生的所述服務(wù)順序。
14.根據(jù)權(quán)利要求13所述的存儲(chǔ)器控制器,其中所述服務(wù)順序產(chǎn)生器還重新整理各所 述數(shù)據(jù)存取命令中所述頁(yè)位址與所述前次頁(yè)位址不相同且所述庫(kù)位址與所述前次庫(kù)位址 相同,具有相同的所述頁(yè)位址的數(shù)據(jù)依序執(zhí)行。
15.根據(jù)權(quán)利要求10所述的存儲(chǔ)器控制器,其中所述服務(wù)順序產(chǎn)生器還判斷各所述數(shù) 據(jù)存取命令的一等待時(shí)間,并判斷當(dāng)所述等待時(shí)間超過(guò)一預(yù)設(shè)最大等待時(shí)間時(shí),所述服務(wù) 順序產(chǎn)生器藉由所述存取控制器直接執(zhí)行對(duì)應(yīng)所述等待時(shí)間的各所述數(shù)據(jù)存取命令。
16.根據(jù)權(quán)利要求10所述的存儲(chǔ)器控制器,其中當(dāng)所述存取數(shù)據(jù)為所述等時(shí)性數(shù)據(jù) 時(shí),表示對(duì)應(yīng)的各所述數(shù)據(jù)存取命令連續(xù)由所述動(dòng)態(tài)存儲(chǔ)器存取所述存取數(shù)據(jù)。
17.根據(jù)權(quán)利要求10所述的存儲(chǔ)器控制器,其中所述多個(gè)數(shù)據(jù)存取命令分別由多個(gè)客 戶(hù)端所發(fā)送。
18.根據(jù)權(quán)利要求17所述的存儲(chǔ)器控制器,其中所述多個(gè)客戶(hù)端包括顯示控制器、影 像壓縮解壓縮控制器、周邊控制器、中央處理器以及音頻控制器。
19.根據(jù)權(quán)利要求10所述的存儲(chǔ)器控制器,其中所述服務(wù)順序產(chǎn)生器包括一緩沖器, 用以暫存尚未被執(zhí)行的各所述數(shù)據(jù)存取命令的相關(guān)信息。
全文摘要
本發(fā)明公開(kāi)了一種動(dòng)態(tài)存儲(chǔ)器存取方法及存儲(chǔ)器控制器。該動(dòng)態(tài)存儲(chǔ)器存取方法包括首先,接收多個(gè)數(shù)據(jù)存取命令,各數(shù)據(jù)存取命令針對(duì)動(dòng)態(tài)存儲(chǔ)器的頁(yè)位址及庫(kù)位址進(jìn)行存取。并判斷各數(shù)據(jù)存取命令所要存取的存取數(shù)據(jù)為等時(shí)性數(shù)據(jù)或非等時(shí)性數(shù)據(jù)。接著,比較各數(shù)據(jù)存取命令的頁(yè)位址及庫(kù)位址與前一次對(duì)動(dòng)態(tài)存儲(chǔ)器進(jìn)行存取的前次頁(yè)位址及前次庫(kù)位址,以獲得各數(shù)據(jù)存取命令的位址碰撞狀態(tài)。然后,依據(jù)各數(shù)據(jù)存取命令的存取數(shù)據(jù)為等時(shí)性數(shù)據(jù)或非等時(shí)性數(shù)據(jù)以及位址碰撞狀態(tài)來(lái)對(duì)應(yīng)產(chǎn)生服務(wù)順序。最后,依據(jù)各數(shù)據(jù)存取命令所對(duì)應(yīng)的服務(wù)順序來(lái)依序進(jìn)行動(dòng)態(tài)存儲(chǔ)器的存取動(dòng)作。
文檔編號(hào)G06F13/16GK101908027SQ20091014720
公開(kāi)日2010年12月8日 申請(qǐng)日期2009年6月8日 優(yōu)先權(quán)日2009年6月8日
發(fā)明者平德林, 黃一桓 申請(qǐng)人:聯(lián)詠科技股份有限公司