亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種訪問外部存儲(chǔ)器的方法

文檔序號:6464091閱讀:163來源:國知局
專利名稱:一種訪問外部存儲(chǔ)器的方法
技術(shù)領(lǐng)域
本發(fā)明涉及存儲(chǔ)器處理技術(shù),尤指 一種訪問外部存儲(chǔ)器的方法。
技術(shù)背景在片上集成系統(tǒng)(SoC)中,包括如處理器、DMA、硬件加速器、外設(shè) 等多個(gè)并行處理功能模塊,這些功能模塊會(huì)根據(jù)需要訪問片外存儲(chǔ)器如 SDRAM、 DDR存儲(chǔ)器等。由于處理器、DMA、硬件加速器等功能模塊各自獨(dú)立運(yùn)行,因此在實(shí) 際應(yīng)用中,SDRAM存儲(chǔ)器有可能被多個(gè)功能模塊同時(shí)訪問,但是,根據(jù) SDRAM存儲(chǔ)器的物理特性,在同一時(shí)刻,SDRAM存儲(chǔ)器只允許存在一個(gè) 讀寫訪問。為了解決這個(gè)問題,對外部存儲(chǔ)器的訪問需要通過總線仲裁單元 根據(jù)一定的選擇策略,將外部存儲(chǔ)器訪問權(quán)限授予某一個(gè)功能模塊的訪問請 求,同時(shí)臨時(shí)掛起其他功能模塊的訪問請求,直到處理完所有訪問請求。顯 然,SDRAM的這種小系統(tǒng)帶寬的工作方式,影響了存儲(chǔ)器的存儲(chǔ)效率。在復(fù)雜的SoC芯片中,并行處理功能模塊越來越多,功能模塊的運(yùn)算 處理能力越來越強(qiáng),SDRAM存儲(chǔ)器存儲(chǔ)效率和系統(tǒng)帶寬漸漸成為SoC芯片 性能的瓶頸。SDRAM存儲(chǔ)器總線分為數(shù)據(jù)總線和地址總線,其中,數(shù)據(jù)總線用于傳 輸訪問的數(shù)據(jù);地址總線用于傳輸訪問的地址和向SDRAM存儲(chǔ)器發(fā)出的命 令。對SDRAM存儲(chǔ)器的訪問特點(diǎn)是SDRAM存儲(chǔ)器將訪問的地址分為塊 (Bank)地址,4亍(row);也址和歹'J (column)地址。每次訪問SDRAM存 儲(chǔ)器時(shí),需要先對訪問地址所在的塊預(yù)充電(precharge),再激活(active) 訪問地址所在的行,然后才能根據(jù)列地址訪問出該訪問地址所在存儲(chǔ)單元。也就是說,每次訪問SDRAM存儲(chǔ)器時(shí),如果沒有預(yù)充電bank和激活row, 必須通過地址總線上發(fā)命令處理,然后再通過地址總線發(fā)出列地址,等待一 定時(shí)間后,再通過數(shù)據(jù)總線傳輸數(shù)據(jù)。如果訪問地址所在的Bank已^皮充電且沒有關(guān)閉,可以省去塊pre charge 步驟,>A而節(jié)省塊pre charge的時(shí)間。如果訪問地址所在的Bank已4皮充電 且該地址所在的row 已被激活,可以節(jié)省行active的時(shí)間。而且,SDRAM存儲(chǔ)器的輸入和輸出一般復(fù)用同一數(shù)據(jù)總線,即數(shù)據(jù)總 線是雙向的。當(dāng)執(zhí)行間隔讀寫操作時(shí),SDRAM需要額外的時(shí)間開銷來切換 總線。綜上所述,由于SDRAM存儲(chǔ)器的器件物理特性,訪問SDRAM存儲(chǔ)器 的延遲除了 SDRAM內(nèi)部數(shù)據(jù)傳輸延遲,還包含塊pre charge,行active和 總線雙向切換延遲。目前, 一般SoC中的總線仲裁單元是根據(jù)先后請求順序或主設(shè)備的模 塊優(yōu)先級,從多個(gè)主設(shè)備的請求中仲裁出某一請求直接送給SDRAM存儲(chǔ) 器,沒有考慮SDRAM存儲(chǔ)器自身特有的延遲特性。而在外部設(shè)備如復(fù)雜的 SoC芯片中并行功能模塊越來越多,功能模塊的運(yùn)算處理能力越來越強(qiáng)的情 況下,SDRAM存儲(chǔ)器自身的低存儲(chǔ)效率直接嚴(yán)重降低了外部設(shè)備的訪問效 率。發(fā)明內(nèi)容有鑒于此,本發(fā)明的主要目的在于提供一種訪問外部存儲(chǔ)器的方法,能 夠通過改善外部存儲(chǔ)器自身的存儲(chǔ)效率,提高設(shè)備訪問外部存儲(chǔ)器的效率。 為達(dá)到上述目的,本發(fā)明的技術(shù)方案具體是這樣實(shí)現(xiàn)的 一種訪問外部存儲(chǔ)器的方法,包括A.設(shè)置體現(xiàn)外部存儲(chǔ)器自身物理特性的帶寬優(yōu)先級屬性,和模塊優(yōu)先 級屬性;判斷當(dāng)前訪問請求中是否存在滿足帶寬優(yōu)先級屬性的訪問請求,如 果存在,則進(jìn)入步驟B;否則進(jìn)入步驟C;B. 按照帶寬優(yōu)先級屬性設(shè)置訪問優(yōu)先級,并授予訪問優(yōu)先級最高的訪 問請求訪問權(quán)限,結(jié)束本流程;C. 按照模塊優(yōu)先級屬性設(shè)置訪問優(yōu)先級,并授予訪問優(yōu)先級最高的請 求訪問權(quán)限。所述帶寬優(yōu)先級屬性包括激活地址屬性,用于表示外部存儲(chǔ)器已完成預(yù)充電的塊地址,以及其已 被激活的行地址的;和/或塊地址屬性,用于表示上一次訪問請求所訪問的塊地址; 和/或讀寫狀態(tài)屬性,用于表示上一次訪問請求所訪問的讀寫狀態(tài)。當(dāng)所述帶寬優(yōu)先級屬性包括有激活地址屬性時(shí),步驟A中所述判斷的 方法為判斷當(dāng)前訪問請求中是否存在與當(dāng)前外部存儲(chǔ)器已預(yù)充電的塊地址、以 及已激活的行地址相同的請求,如果有,則判定該訪問請求為滿足帶寬優(yōu)先 級屬性的訪問請求。當(dāng)所述帶寬優(yōu)先級屬性包括有塊地址屬性時(shí),步驟A中所述判斷的方 法為判斷當(dāng)前訪問請求中是否存在與前一次訪問的塊地址不同的請求,如果 有,則判定該訪問請求為滿足帶寬優(yōu)先級屬'性的訪問請求。當(dāng)所述帶寬優(yōu)先級屬性包括有讀寫狀態(tài)屬性時(shí),步驟A中所述判斷的 方法為判斷當(dāng)前訪問請求中是否存在與前一訪問的讀寫狀態(tài)相同的請求,如果 有,則判定該訪問請求為滿足帶寬優(yōu)先級屬性的訪問請求。所述帶寬優(yōu)先級屬性包括激活地址屬性、塊地址屬性和讀寫狀態(tài)屬性, 步驟A中所述判斷的方法為Al.判斷當(dāng)前訪問請求中是否存在與當(dāng)前外部存儲(chǔ)器已預(yù)充電的塊地 址、以及已激活的行地址相同的請求,如果有,則進(jìn)入步驟B;否則,進(jìn)入 步驟A2;A2.判斷當(dāng)前訪問請求中是否存在與前一次訪問的塊地址不同的請求, 如果有,則進(jìn)入步驟B;否則進(jìn)入步驟A3;A3.判斷當(dāng)前訪問請求中是否存在與前一訪問的讀寫狀態(tài)相同的請求, 如果有,則進(jìn)入步驟B;否則進(jìn)入步驟C。所述步驟B具體包括將滿足帶寬優(yōu)先級屬性的訪問請求設(shè)置為最高訪 問優(yōu)先級,獲得訪問權(quán)限。所述步驟C具體包括將模塊優(yōu)先級最高的訪問請求設(shè)置為最高訪問優(yōu) 先級,獲得訪問權(quán)限。該方法還包括保存當(dāng)前未能獲得訪問權(quán)限的訪問請求。所述保存的方法為為所述未能獲得訪問權(quán)限的各訪問請求調(diào)整存儲(chǔ)優(yōu) 先級并存儲(chǔ);當(dāng)外部存儲(chǔ)器空閑時(shí),根據(jù)經(jīng)過調(diào)整后的各個(gè)訪問請求的存儲(chǔ)優(yōu)先級, 選擇存儲(chǔ)優(yōu)先級最高的訪問請求獲得訪問權(quán)限。 所述存儲(chǔ)優(yōu)先級設(shè)置在存儲(chǔ)優(yōu)先級寄存器中;所述存儲(chǔ)優(yōu)先級寄存器包括同塊同行域、不同快域、同讀寫狀態(tài)域和模 塊優(yōu)先級域;其中,同塊同行域,用于表示訪問請求與當(dāng)前外部存儲(chǔ)器已預(yù)充電的塊地址以 及已激活的行地址是否都相同;不同塊域,用于表示訪問請求的塊地址與前一次訪問的塊地址是否不同;同讀寫狀態(tài)域,用于表示訪問請求的的讀寫狀態(tài)與前一訪問的讀寫狀態(tài) 是否相同。當(dāng)存在多個(gè)所述存儲(chǔ)優(yōu)先級相等且都處在當(dāng)前最高優(yōu)先級時(shí),通過硬件 連線位置選擇其中的 一 個(gè)訪問請求獲得訪問權(quán)限。由上述技術(shù)方案可見,本發(fā)明通過設(shè)置體現(xiàn)外部存儲(chǔ)器自身物理特性的 帶寬優(yōu)先級屬性,并根據(jù)體現(xiàn)了外部存儲(chǔ)器自身物理特性的帶寬優(yōu)先級屬性 判斷決定是否賦予當(dāng)前訪問請求的訪問權(quán)P艮,提高了設(shè)備訪問外部存儲(chǔ)器的效率最大可能地使得連續(xù)的數(shù)據(jù)訪問盡量落在了同 一個(gè)塊的同 一個(gè)行上, 極大提高了連續(xù)訪問外部存儲(chǔ)器的效率;在上一請求執(zhí)行數(shù)據(jù)傳輸時(shí),并行 發(fā)出當(dāng)前訪問請求的命令和地址,減少了傳輸?shù)拿钛舆t時(shí)間開銷;通過保 證連續(xù)的數(shù)據(jù)訪問都是讀或者寫,減少了總線切換的時(shí)間開銷。


圖1是本發(fā)明訪問外部存儲(chǔ)器的流程圖;圖2是本發(fā)明訪問外部存儲(chǔ)器的實(shí)施例的流程圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下參照附圖并舉 較佳實(shí)施例,對本發(fā)明進(jìn)一步詳細(xì)說明??偩€仲裁單元隨時(shí)保存當(dāng)前外部存儲(chǔ)器已預(yù)充電的塊、已激活的行、前 一次訪問的塊地址,以及前一次訪問的讀寫狀態(tài)等帶寬優(yōu)先級屬性。這些帶 寬優(yōu)先級屬性體現(xiàn)了外部存儲(chǔ)器自身物理特性。為描述方便,以下以外部存 儲(chǔ)器為SDRAM為例進(jìn)行描述。其中,當(dāng)前SDRAM已預(yù)充電的塊,表示當(dāng)前SDRAM塊已經(jīng)處于預(yù)充 電完畢的狀態(tài)。如果當(dāng)前訪問請求是訪問該塊,可以節(jié)省預(yù)充電時(shí)間開銷;當(dāng)前SDRAM已激活的行,表示當(dāng)前SDRAM行已經(jīng)處于激活的狀態(tài), 該行所在的塊也處于預(yù)充電完畢的狀態(tài)。如果當(dāng)前訪問請求是訪問該行,可 以節(jié)省預(yù)充電時(shí)間和行激活時(shí)間開銷;前一次訪問的塊地址,表示上一訪問請求訪問的塊地址。如果當(dāng)前訪問 請求訪問的塊地址與上一請求訪問的不同,可以在上一請求執(zhí)行數(shù)據(jù)傳輸 時(shí),并行發(fā)出當(dāng)前訪問請求的命令和地址,這樣,可以節(jié)省預(yù)充電時(shí)間、行 激活和發(fā)地址的時(shí)間開銷;前一次訪問的讀寫狀態(tài),表示上一訪問請求是讀操作或?qū)懖僮?。如果?dāng)前訪問請求的讀寫要求與上一 次訪問請求相同,即比如上一次訪問請求是讀 操作,那么要求當(dāng)前的訪問請求也是讀操作。那么可以節(jié)省雙向總線切換的 時(shí)間開銷。此外,總線仲裁單元還設(shè)置模塊優(yōu)先級屬性,該模塊優(yōu)先級屬性用于表 示模塊本身的優(yōu)先級,比如當(dāng)執(zhí)行運(yùn)算任務(wù)時(shí),可以將處理器的模塊優(yōu)先級屬性設(shè)置為最高優(yōu)先級;當(dāng)執(zhí)行數(shù)據(jù)存儲(chǔ)時(shí),可以將外設(shè)的模塊優(yōu)先級屬性設(shè)置 為最高優(yōu)先級等,模塊優(yōu)先級屬性可通過軟件配置。需要說明的是,上述帶寬優(yōu)先級屬性可以只記錄一個(gè),或者記錄任意組 合個(gè),或者全部記錄。圖1是本發(fā)明訪問外部存儲(chǔ)器的流程圖,如圖1所示,包括以下步驟步驟100:設(shè)置帶寬優(yōu)先級屬性和模塊優(yōu)先級屬性。在總線仲裁單元中,對應(yīng)每個(gè)訪問外部存儲(chǔ)器的功能模塊都有各自的配 置寄存器,可以通過軟件配置各功能模塊的模塊優(yōu)先級屬性;此外,總線仲裁單元中,預(yù)先設(shè)置有一組激活地址(Active Address )寄 存器、 一個(gè)塊地址(Last Bank)寄存器和一個(gè)讀寫狀態(tài)(Last Write)寄存 器,分別用于存儲(chǔ)體現(xiàn)外部存儲(chǔ)器自身物理特性的帶寬優(yōu)先級屬性。同,每個(gè)激活地址寄存器用于保存某一個(gè)外部存儲(chǔ)器如SDRAM的已完成預(yù) 充電的塊地址,以及其已被激活的行地址,本文中將激活地址寄存器中存儲(chǔ) 的帶寬優(yōu)先級屬性稱為激活地址屬性;塊地址寄存器,用于保存上一次訪問請求所訪問的塊地址;本文中將塊 地址寄存器中存儲(chǔ)的帶寬優(yōu)先級屬性稱為塊地址屬性;讀寫狀態(tài)寄存器,用于保存上一次訪問請求所訪問的讀寫狀態(tài),本文中 將讀寫狀態(tài)寄存器中存儲(chǔ)的帶寬優(yōu)先級屬性稱為讀寫狀態(tài)屬性;步驟101:判斷當(dāng)前的訪問請求中是否存在滿足帶寬優(yōu)先級屬性的訪問 請求,如果存在,則進(jìn)入步驟102;否則進(jìn)入步驟103。判斷是否滿足帶寬優(yōu)先級屬性的方法包括(1) 首先判斷當(dāng)前訪問請求中是否存在與當(dāng)前外部存儲(chǔ)器如SDRAM已 預(yù)充電的塊地址、以及已激活的行地址相同的請求,如果有,則判定該請求 為滿足帶寬優(yōu)先級屬性的訪問請求;(2) 如果條件(l)不滿足,判斷當(dāng)前訪問請求中是否存在與前一次訪問的 塊地址不同的請求,如果有,則判定該請求為滿足帶寬優(yōu)先級屬性的訪問請求;(3) 如果條件(1)和條件(2)均不滿足,判斷當(dāng)前訪問請求中是否存在與前 一訪問的讀寫狀態(tài)相同的請求,如果有,則判定該請求為滿足帶寬優(yōu)先級屬 性的訪問請求。從步驟101中第(1)點(diǎn)的實(shí)現(xiàn)容易看出,本發(fā)明方法最大可能地使得連續(xù) 的數(shù)據(jù)訪問盡量落在了同 一個(gè)塊的同 一個(gè)行上,極大提高了連續(xù)訪問外部存 儲(chǔ)器如SDRAM的效率。通過第(2)點(diǎn)的實(shí)現(xiàn)容易看出,在當(dāng)前訪問請求訪問的塊地址與上一請求 訪問的不同時(shí),通過在上一請求執(zhí)行數(shù)據(jù)傳輸時(shí),提前激活下一次訪問請求 的塊和行即并行發(fā)出當(dāng)前訪問請求的命令和地址,節(jié)省預(yù)充電時(shí)間、行激活 和發(fā)地址的時(shí)間開銷,也就是減少了傳輸?shù)拿钛舆t時(shí)間開銷。通過第(3)點(diǎn)的實(shí)現(xiàn)容易看出,使得連續(xù)的數(shù)據(jù)訪問都是讀或者寫,減少 了總線切換的時(shí)間開銷。步驟102:按照帶寬優(yōu)先級屬性設(shè)置訪問優(yōu)先級,并授予訪問優(yōu)先級最 高的請求訪問權(quán)限,結(jié)束本流程。將步驟101中滿足帶寬優(yōu)先級屬性的訪問請求設(shè)置為最高訪問優(yōu)先級, 獲得訪問權(quán)限,也就是說該請求將立馬申請到訪問SDRAM。步驟103:按照模塊優(yōu)先級屬性設(shè)置訪問優(yōu)先級,并授予訪問優(yōu)先級最 高的請求訪問權(quán)限,具體為將模塊優(yōu)先級最高的訪問請求設(shè)置為最高訪問優(yōu) 先級,獲得訪問權(quán)限。如果步驟101中(1) (3)的條件都不滿足,則根據(jù)模塊優(yōu)先級屬性,選擇模塊優(yōu)先級最高的訪問請求獲得訪問權(quán)限,即可申請到訪問SDRAM。其它不滿足帶寬優(yōu)先級屬性和模塊優(yōu)先級屬性的訪問請求將被保存在 總線仲裁單元中,具體實(shí)現(xiàn)請參見下文。需要強(qiáng)調(diào)的是,步驟101中,只要存在任一條件判斷,都能達(dá)到本發(fā)明 通過改善外部存儲(chǔ)器自身的存儲(chǔ)效率,提高設(shè)備訪問外部存儲(chǔ)器的效率的目的,而且步驟101中個(gè)判斷條件的任意組合也能實(shí)現(xiàn)本發(fā)明目的,當(dāng)步驟 101中的三個(gè)判斷條件都存在時(shí),能達(dá)到最好的效果。圖2是本發(fā)明訪問外部存儲(chǔ)器的實(shí)施例的流程圖,假設(shè)外部存儲(chǔ)器為 SDRAM,帶寬優(yōu)先級屬性包括當(dāng)前SDRAM已預(yù)充電的塊、已激活的行、 前一次訪問的塊地址,以及前一次訪問的讀寫狀態(tài),如圖2所示,包括以下 步驟步驟200:判斷當(dāng)前的訪問請求中是否存在與預(yù)充電塊和已激活行相同 地址的請求,如果是,則滿足條件,進(jìn)入步驟203;否則,進(jìn)入步驟204。步驟201:判斷當(dāng)前的訪問請求中是否存在與前一次訪問的塊地址不相 同的請求,如果是,則滿足條件,進(jìn)入步驟203;否則,進(jìn)入步驟204。步驟202:判斷當(dāng)前的訪問請求中是否存在與前一次訪問的讀寫狀態(tài)相 同的請求,如果是,則滿足條件,進(jìn)入步驟203;否則,進(jìn)入步驟204。步驟203:將滿足條件的訪問請求設(shè)置為最高訪問優(yōu)先級,并授予該訪 問請求訪問權(quán)限,結(jié)束本流程。步驟204:按照訪問請求的模塊的模塊優(yōu)先級授予訪問權(quán)限。本發(fā)明通過設(shè)置體現(xiàn)外部存儲(chǔ)器自身物理特性的帶寬優(yōu)先級屬性,并根 據(jù)帶寬優(yōu)先級屬性判斷決定是否賦予當(dāng)前訪問請求的訪問權(quán)限,提高了設(shè)備 訪問外部存儲(chǔ)器的效率最大可能地使得連續(xù)的數(shù)據(jù)訪問盡量落在了同一個(gè) 塊的同一個(gè)行上,極大提高了連續(xù)訪問外部存儲(chǔ)器的效率;在上一請求執(zhí)行 數(shù)據(jù)傳輸時(shí),并行發(fā)出當(dāng)前訪問請求的命令和地址,減少了傳輸?shù)拿钛舆t 時(shí)間開銷;通過保證連續(xù)的數(shù)據(jù)訪問都是讀或者寫,減少了總線切換的時(shí)間 開銷。如果功能模塊的訪問請求無法在當(dāng)前時(shí)刻獲得訪問權(quán)限,這些此次不能獲得訪問權(quán)的請求將被保存在總線仲裁單元中,以便在下次仲裁時(shí)發(fā)出申請。其存儲(chǔ)優(yōu)先級根據(jù)下面的方法進(jìn)行調(diào)整和排隊(duì)每個(gè)模塊的優(yōu)先級采用一個(gè)多位存儲(chǔ)優(yōu)先級寄存器表示,其數(shù)值越大, 代表其優(yōu)先級越大。優(yōu)先級由4個(gè)域組成,即同塊同行域、不同快域、同讀 寫狀態(tài)域和模塊優(yōu)先級域,如表1所示。同塊同行不同塊同讀寫狀態(tài)模塊優(yōu)先級表1其中,同塊同行域,用于表示訪問請求與當(dāng)前外部存儲(chǔ)器已預(yù)充電的塊 地址以及已激活的行地址是否都相同,當(dāng)某激活地址寄存器中保存有當(dāng)訪問請求的塊地址和行地址時(shí),該域?yàn)?,否則為0。該域處于調(diào)整后存儲(chǔ)優(yōu)先級的最高位,當(dāng)其為1時(shí),該訪問請求調(diào)整后的存儲(chǔ)優(yōu)先級最高。不同塊域,用于表示訪問請求的塊地址與前 一 次訪問的塊地址是否不 同,當(dāng)訪問請求的塊地址與塊地址寄存器中保存的值不同時(shí),該域?yàn)?,否則為o。不同塊域處于調(diào)整后優(yōu)先級的次高位,當(dāng)所有訪問請求的同塊同行域都相同,而某一訪問請求的不同塊域?yàn)?,則該訪問請求調(diào)整后的存儲(chǔ)優(yōu) 先級最高。同讀寫狀態(tài)域,用于表示訪問請求的的讀寫狀態(tài)與前一訪問的讀寫狀態(tài) 是否相同,當(dāng)訪問請求的讀寫狀態(tài)與讀寫狀態(tài)寄存器中保存的值相同時(shí),該域?yàn)?,否則為0。同讀寫狀態(tài)域處于調(diào)整后優(yōu)先級的第三高位,當(dāng)所有訪問請求的同塊同行域和不同塊域的值都相同,而某一訪問請求的同讀寫狀態(tài) 域?yàn)?,則該訪問請求調(diào)整后的存儲(chǔ)優(yōu)先級最高。模塊優(yōu)先級域,用于表示模塊本身的優(yōu)先級,模塊優(yōu)先級域的值越大表 示該模塊的模塊優(yōu)先級越高。在同塊同行域、不同塊域和同讀寫狀態(tài)域均相 同的條件下,訪問請求所在模塊的模塊優(yōu)先級域值越大,則該模塊的訪問請 求的優(yōu)先級最高,該模塊對應(yīng)的訪問請求調(diào)整后的存儲(chǔ)優(yōu)先級最高??偩€仲裁單元在外部存儲(chǔ)器訪問期間不處理新的訪問請求,當(dāng)外部存儲(chǔ) 器空閑時(shí),根據(jù)經(jīng)過調(diào)整后的各個(gè)訪問請求的存儲(chǔ)優(yōu)先級進(jìn)行仲裁,存儲(chǔ)優(yōu)先級寄存器的數(shù)值最高的模塊的訪問請求獲得訪問權(quán)限,如果有多個(gè)模塊的 存儲(chǔ)優(yōu)先級相等且都處在當(dāng)前最高優(yōu)先級,則通過硬件連線位置選擇其中的 一個(gè),即可以預(yù)先按照帶寬使用情況、對外部存儲(chǔ)器的訪問頻繁度等設(shè)置模塊在存儲(chǔ)優(yōu)先級相同下優(yōu)先級更高。比如,對于SoC中的CPU、解碼器和外 設(shè)如USB,針對視頻處理應(yīng)用來講,解碼器需要的帶寬最大,會(huì)經(jīng)常訪問外 部存儲(chǔ)器,CPU次之,USB相比對最少,因此,可以預(yù)先設(shè)置在CPU、解碼 器和USB存儲(chǔ)優(yōu)先級相同的情況下,解碼器獲取訪問權(quán)限的優(yōu)先級最高, CPU次之,最后是USB。以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù) 范圍,凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進(jìn)等, 均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1. 一種訪問外部存儲(chǔ)器的方法,其特征在于,包括A.設(shè)置體現(xiàn)外部存儲(chǔ)器自身物理特性的帶寬優(yōu)先級屬性,和模塊優(yōu)先級屬性;判斷當(dāng)前訪問請求中是否存在滿足帶寬優(yōu)先級屬性的訪問請求,如果存在,則進(jìn)入步驟B;否則進(jìn)入步驟C;B.按照帶寬優(yōu)先級屬性設(shè)置訪問優(yōu)先級,并授予訪問優(yōu)先級最高的訪問請求訪問權(quán)限,結(jié)束本流程;C.按照模塊優(yōu)先級屬性設(shè)置訪問優(yōu)先級,并授予訪問優(yōu)先級最高的請求訪問權(quán)限。
2. 根據(jù)l所述的方法,其特征在于,所述帶寬優(yōu)先級屬性包括 激活地址屬性,用于表示外部存儲(chǔ)器已完成預(yù)充電的塊地址,以及其已4皮激活的4于地址;和/或塊地址屬性,用于表示上一次訪問請求所訪問的塊地址;和/或讀寫狀態(tài)屬性,用于表示上 一 次訪問請求所訪問的讀寫狀態(tài)。
3. 根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)所述帶寬優(yōu)先級屬性 包括有激活地址屬性時(shí),步驟A中所述判斷的方法為判斷當(dāng)前訪問請求中是否存在與當(dāng)前外部存儲(chǔ)器已預(yù)充電的塊地址、以 及已激活的行地址相同的請求,如果有,則判定該訪問請求為滿足帶寬優(yōu)先 級屬性的訪問請求。
4. 根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)所述帶寬優(yōu)先級屬性 包括有塊地址屬性時(shí),步驟A中所述判斷的方法為判斷當(dāng)前訪問請求中是否存在與前一次訪問的塊地址不同的請求,如果 有,則判定該訪問請求為滿足帶寬優(yōu)先級屬性的訪問請求。
5. 根據(jù)權(quán)利要求其所述的方法,其特征在于,當(dāng)所述帶寬優(yōu)先級屬性 包括有讀寫狀態(tài)屬性時(shí),步驟A中所述判斷的方法為判斷當(dāng)前訪問請求中是否存在與前一訪問的讀寫狀態(tài)相同的請求,如果有,則判定該訪問請求為滿足帶寬優(yōu)先級屬性的訪問請求。
6. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述帶寬優(yōu)先級屬性包 括激活地址屬性、塊地址屬性和讀寫狀態(tài)屬性,步驟A中所述判斷的方法 為Al.判斷當(dāng)前訪問請求中是否存在與當(dāng)前外部存儲(chǔ)器已預(yù)充電的塊地 址、以及已激活的行地址相同的請求,如果有,則進(jìn)入步驟B;否則,進(jìn)入 步驟A2;A2.判斷當(dāng)前訪問請求中是否存在與前一次訪問的塊地址不同的請求, 如果有,則進(jìn)入步驟B;否則進(jìn)入步驟A3;A3.判斷當(dāng)前訪問請求中是否存在與前一訪問的讀寫狀態(tài)相同的請求, 如果有,則進(jìn)入步驟B;否則進(jìn)入步驟C。
7. 根據(jù)權(quán)利要求l、 3、 4、 5或6所述的方法,其特征在于,所述步驟 B具體包括將滿足帶寬優(yōu)先級屬性的訪問請求設(shè)置為最高訪問優(yōu)先級,獲 得訪問權(quán)限。
8. 根據(jù)權(quán)利要求l、 3、 4、 5或6所述的方法,其特征在于,所述步驟 C具體包括將模塊優(yōu)先級最高的訪問請求設(shè)置為最高訪問優(yōu)先級,獲得訪 問權(quán)限。
9. 根據(jù)權(quán)利要求1所述的方法,其特征在于,該方法還包括保存當(dāng) 前未能獲得訪問權(quán)限的訪問請求。
10. 根據(jù)權(quán)利要求9所述的方法,其特征在于,所述保存的方法為 為所述未能獲得訪問權(quán)限的各訪問請求調(diào)整存儲(chǔ)優(yōu)先級并存儲(chǔ);當(dāng)外部存儲(chǔ)器空閑時(shí),根據(jù)經(jīng)過調(diào)整后的各個(gè)訪問請求的存儲(chǔ)優(yōu)先級, 選擇存儲(chǔ)優(yōu)先級最高的訪問請求獲得訪問權(quán)限。
11. 根據(jù)10所述的方法,其特征在于,所述存儲(chǔ)優(yōu)先級設(shè)置在存儲(chǔ)優(yōu) 先級寄存器中;所述存儲(chǔ)優(yōu)先級寄存器包括同塊同行域、不同塊域、同讀寫狀態(tài)域和模 塊優(yōu)先級域;其中,同塊同行域,用于表示訪問請求與當(dāng)前外部存儲(chǔ)器已預(yù)充電的塊地址以及已激活的行地址是否都相同;不同塊域,用于表示訪問請求的塊地址與前 一 次訪問的塊地址是否不同;同讀寫狀態(tài)域,用于表示訪問請求的的讀寫狀態(tài)與前一訪問的讀寫狀態(tài) 是否相同。
12. 根據(jù)權(quán)利要求IO所述的方法,其特征在于,當(dāng)存在多個(gè)所述存儲(chǔ)優(yōu)先級相等且都處在當(dāng)前最高優(yōu)先級時(shí),通過硬件連線位置選擇其中的一個(gè) 訪問請求獲得訪問權(quán)限。
全文摘要
本發(fā)明公開了一種訪問外部存儲(chǔ)器的方法,本發(fā)明通過設(shè)置體現(xiàn)外部存儲(chǔ)器自身物理特性的帶寬優(yōu)先級屬性,并根據(jù)體現(xiàn)外部存儲(chǔ)器自身物理特性的帶寬優(yōu)先級屬性判斷決定是否賦予當(dāng)前訪問請求的訪問權(quán)限,提高了設(shè)備訪問外部存儲(chǔ)器的效率最大可能地使得連續(xù)的數(shù)據(jù)訪問盡量落在了同一個(gè)塊的同一個(gè)行上,極大提高了連續(xù)訪問外部存儲(chǔ)器的效率;在上一請求執(zhí)行數(shù)據(jù)傳輸時(shí),并行發(fā)出當(dāng)前訪問請求的命令和地址,減少了傳輸?shù)拿钛舆t時(shí)間開銷;通過保證連續(xù)的數(shù)據(jù)訪問都是讀或者寫,減少了總線切換的時(shí)間開銷。
文檔編號G06F13/16GK101271435SQ20081011198
公開日2008年9月24日 申請日期2008年5月20日 優(yōu)先權(quán)日2008年5月20日
發(fā)明者川 林 申請人:北京中星微電子有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1