控制存儲(chǔ)器操作的方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本公開通常涉及控制存儲(chǔ)器操作的方法和裝置,更具體地說,涉及通過選擇存儲(chǔ) 在調(diào)度緩沖器中的請(qǐng)求以產(chǎn)生命令來控制存儲(chǔ)器操作的方法和裝置。
【背景技術(shù)】
[0002] 通常,由于其特性,動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)應(yīng)當(dāng)打開針對(duì)每一存儲(chǔ)體(bank) 的行來使用。當(dāng)與命令相對(duì)應(yīng)的行地址不同于當(dāng)前正在使用的行地址時(shí),DRAM應(yīng)當(dāng)關(guān)閉相 應(yīng)行,然后重新打開與命令的行地址相對(duì)應(yīng)的行以使用它。
[0003] 此時(shí),各個(gè)DRAM存儲(chǔ)器具有它們的執(zhí)行針對(duì)存儲(chǔ)器行的開、關(guān)、讀和寫命令的等 待時(shí)間。已經(jīng)提出了行局部性技術(shù)以解決上述問題并且對(duì)應(yīng)于其中存儲(chǔ)控制器首先處理與 存儲(chǔ)器的打開行具有相同行地址的請(qǐng)求的方案。就是說,根據(jù)行局部性技術(shù),通過打開具體 行地址然后處理具有相同行地址的請(qǐng)求,有可能減少關(guān)閉和重新打開行的時(shí)間,從而提高 利用率。
【發(fā)明內(nèi)容】
[0004] 技術(shù)問題
[0005] 由于片上系統(tǒng)(SoC)結(jié)構(gòu)的特點(diǎn),存儲(chǔ)控制器僅能夠使用具有有限尺寸的調(diào)度緩 沖器。調(diào)度緩沖器的尺寸在確定利用率的過程中是非常重要的因素。因此,在通過具有有限 尺寸的調(diào)度緩沖器提高利用率的方法中,存儲(chǔ)控制器通過調(diào)度緩沖器執(zhí)行調(diào)度可以接收具 有高行緩沖器局部性的請(qǐng)求的輸入,或者可以增加有限的緩沖器尺寸以允許各種選擇。增 加緩沖器尺寸導(dǎo)致較大成本。
[0006] 進(jìn)一步,作為提高利用率的另一方法,有一種減少讀/寫切換的方法。特定地,在 存儲(chǔ)器中在執(zhí)行讀命令之后有等待時(shí)間以執(zhí)行寫命令,并且在執(zhí)行寫命令之后有等待時(shí)間 以執(zhí)行讀命令。因此,根據(jù)存儲(chǔ)器命令(開、關(guān)、讀和寫)的執(zhí)行順序,所述利用率可以變化 50%或更多。
[0007] 另一方法通過針對(duì)各個(gè)存儲(chǔ)體保護(hù)各種請(qǐng)求并且根據(jù)每個(gè)存儲(chǔ)體處理所述請(qǐng)求 可以提高效率。特定地,通過向接口緩沖器要求針對(duì)存在于調(diào)度緩沖器的各個(gè)存儲(chǔ)體的最 小請(qǐng)求數(shù)量使得針對(duì)各個(gè)存儲(chǔ)體的請(qǐng)求最大化。
[0008] 為了解決以上所討論的缺陷,本發(fā)明的主要目標(biāo)是提供通過基于存儲(chǔ)在緩沖器中 的請(qǐng)求信息動(dòng)態(tài)地控制調(diào)度緩沖器來提高利用率的方法和裝置。
[0009] 根據(jù)本公開的一方面,提供控制存儲(chǔ)器操作的方法。所述方法包括:基于存儲(chǔ)在接 口緩沖器和調(diào)度緩沖器中的請(qǐng)求信息確定針對(duì)每個(gè)存儲(chǔ)器地址的命令數(shù);根據(jù)具有最大命 令數(shù)量的命令類型確定存儲(chǔ)器操作的控制狀態(tài);以及根據(jù)存儲(chǔ)器操作的控制狀態(tài)確定從接 口緩沖器被發(fā)送到調(diào)度緩沖器的請(qǐng)求和從調(diào)度緩沖器輸出的請(qǐng)求的類型。
[0010] 根據(jù)本公開的另一方面,提供控制存儲(chǔ)器的裝置。所述裝置包括:狀態(tài)預(yù)測(cè)器,基 于存儲(chǔ)在接口緩沖器和調(diào)度緩沖器中的請(qǐng)求信息確定針對(duì)每個(gè)存儲(chǔ)器地址的命令數(shù),并且 根據(jù)具有最大命令數(shù)的命令類型確定存儲(chǔ)器操作的控制狀態(tài);以及選擇器,根據(jù)存儲(chǔ)器操 作的控制狀態(tài)確定從接口緩沖器被發(fā)送到調(diào)度緩沖器的請(qǐng)求和從調(diào)度緩沖器輸出的請(qǐng)求 的類型。
[0011] 基于根據(jù)本公開的控制存儲(chǔ)器操作的方法和裝置,通過根據(jù)存儲(chǔ)在接口緩沖器和 調(diào)度緩沖器中的請(qǐng)求信息自適應(yīng)地控制調(diào)度緩沖器的讀請(qǐng)求和寫請(qǐng)求的比例,有可能提高 利用率。
[0012] 在進(jìn)行以下詳細(xì)描述之前,闡明在本文檔全文中所使用的某些單詞和短語的定義 可能是有益的。術(shù)語"包括"和"包含"及其變形意味著沒有限制地包含;術(shù)語"或者"是包 含的,意味著和/或;短語"與…相關(guān)聯(lián)"和"與其相關(guān)聯(lián)"及其變形可以意味著包括、被包括 在內(nèi)、與之交聯(lián)、包容、被包容在內(nèi)、連接到或與之連接、耦接到或與之耦接、與之傳達(dá)、與之 合作、交叉、并列、與之鄰近、被綁定到或與之綁定、具有、具有屬性等;并且術(shù)語"控制器"意 味著控制至少一個(gè)操作的任何設(shè)備、系統(tǒng)或其部件,可以在硬件、固件或軟件或其至少兩種 的一些組合中實(shí)現(xiàn)這種設(shè)備。應(yīng)當(dāng)注意到,可以集中化或分布化(或者本地或者遠(yuǎn)程)與 任意具體控制器相關(guān)聯(lián)的功能。在本專利文檔的全文中提供針對(duì)某些單詞和短語的定義, 本領(lǐng)域普通技術(shù)人員應(yīng)當(dāng)理解,在許多(如果不是大部分)情形中,這種定義適用于被如此 定義的單詞和短語的之前以及未來的使用。
【附圖說明】
[0013] 為了更全面地理解本公開及其優(yōu)點(diǎn),現(xiàn)在參照結(jié)合附圖的以下描述,其中,相似的 參照編號(hào)代表相似的部件:
[0014] 圖1A和1B示出根據(jù)存儲(chǔ)器控制方法的緩沖器結(jié)構(gòu)的實(shí)例;
[0015] 圖2示出緩沖器結(jié)構(gòu)的實(shí)例;
[0016] 圖3示出緩沖器結(jié)構(gòu)的另一實(shí)例;
[0017] 圖4A至4C示出用于切換讀/寫存儲(chǔ)器的控制方案;
[0018] 圖5示出包含根據(jù)本公開實(shí)施例的存儲(chǔ)控制器的系統(tǒng)的配置;
[0019] 圖6示出指示存儲(chǔ)控制器的四個(gè)狀態(tài)的狀態(tài)機(jī);
[0020] 圖7是示出根據(jù)本公開實(shí)施例的存儲(chǔ)器控制方法的過程的流程圖;以及
[0021] 圖8示出根據(jù)本公開實(shí)施例的控制讀和寫請(qǐng)求數(shù)的實(shí)例;
【具體實(shí)施方式】
[0022] 以下所討論的圖1A至8以及在本專利文檔中被用于描述本公開原理的各種實(shí)施 例僅僅是用于說明,絕不應(yīng)當(dāng)將其理解為限制本公開的范圍。本領(lǐng)域技術(shù)人員將理解到,可 以以任何適當(dāng)安排的計(jì)算機(jī)技術(shù)實(shí)現(xiàn)本公開的原理。此后將參照附圖描述本公開的示例實(shí) 施例。應(yīng)當(dāng)注意到,相同的參考編號(hào)將指示相同的元件,盡管它們?cè)诓煌母綀D中示出。進(jìn) 一步,將省略涉及能夠使本公開的主題不必要地模糊的眾所周知功能或配置的詳細(xì)描述。
[0023] 圖1A和1B示出根據(jù)一種存儲(chǔ)器控制方案的實(shí)例緩沖器結(jié)構(gòu)。參照?qǐng)D1A,輸入緩 沖器110具有包含彼此獨(dú)立的存儲(chǔ)讀請(qǐng)求的讀隊(duì)列112和存儲(chǔ)寫請(qǐng)求的寫隊(duì)列114的先入 先出(FIFO)類型的結(jié)構(gòu),而調(diào)度緩沖器120具有包含一個(gè)隊(duì)列的結(jié)構(gòu)。
[0024] 當(dāng)所述讀和寫請(qǐng)求從輸入緩沖器110同時(shí)輸入到調(diào)度緩沖器并且調(diào)度器如圖1B 的參考編號(hào)142、144和146所指示的在每個(gè)周期僅僅連續(xù)地選擇讀請(qǐng)求并且發(fā)送輸出命 令130到存儲(chǔ)器時(shí),如參考編號(hào)148所指示,沒有被選擇的寫請(qǐng)求占據(jù)調(diào)度緩沖器120。因 此,即使當(dāng)存儲(chǔ)器處于讀操作狀態(tài)時(shí),調(diào)度器也只能選擇寫請(qǐng)求,從而產(chǎn)生讀/寫切換或者 讀請(qǐng)求的行局部性變低。結(jié)果會(huì)降低調(diào)度緩沖器120的利用率。
[0025] 圖2示出一個(gè)緩沖器結(jié)構(gòu)的另一實(shí)例。參照?qǐng)D2,輸入緩沖器210具有包含彼此獨(dú) 立的存儲(chǔ)讀請(qǐng)求的讀隊(duì)列212和存儲(chǔ)寫請(qǐng)求的寫隊(duì)列214的先入先出(FIFO)型的結(jié)構(gòu),而 調(diào)度緩沖器220包含具有固定尺寸的讀隊(duì)列222和寫隊(duì)列224。
[0026] 因?yàn)樵趫D2所示的結(jié)構(gòu)中調(diào)度緩沖器具有針對(duì)讀和寫請(qǐng)求的固定尺寸,即使寫隊(duì) 列224為空,調(diào)度器也不能從輸入緩沖器210加載行擊中讀請(qǐng)求,如果讀隊(duì)列222為滿,從 而調(diào)度器應(yīng)當(dāng)關(guān)閉當(dāng)前打開的存儲(chǔ)器行然后重新打開存儲(chǔ)器行,如參考編號(hào)230所指示, 這引發(fā)低效的操作。
[0027] 圖3示出另一實(shí)例緩沖器結(jié)構(gòu)。參照?qǐng)D3,與圖2類似,輸入緩沖器310具有包含 彼此獨(dú)立的存儲(chǔ)讀請(qǐng)求的讀隊(duì)列312和存儲(chǔ)寫請(qǐng)求的寫隊(duì)列314的先入先出(FIFO)類型 的結(jié)構(gòu),而調(diào)度緩沖器320包含具有固定尺寸的讀隊(duì)列322和寫隊(duì)列324。
[0028] 當(dāng)存儲(chǔ)器在圖3中所示的結(jié)構(gòu)中以只讀模式操作時(shí),根本不使用寫隊(duì)列324,從而 減少了調(diào)度緩沖器使用,因此難以增加行局部性。進(jìn)一步,由于不能像在圖2中那樣處理行 擊中讀請(qǐng)求,如參考編號(hào)330所指示的關(guān)閉然后重新打開行的所述問題出現(xiàn)。
[0029] 圖4A至4C示出切換讀/寫存儲(chǔ)器的控制方案。
[0030] 首先參照?qǐng)D4A能夠注意到,將存儲(chǔ)器從寫操作切換到讀操作花費(fèi)大量時(shí)間。作為 一個(gè)實(shí)例將描述執(zhí)行三次讀操作和三次寫操作的情形。當(dāng)如圖4B中所示在讀操作之后產(chǎn) 生讀/寫切換并且然后產(chǎn)生寫/讀切換時(shí),總共花費(fèi)57個(gè)時(shí)鐘(CK)。當(dāng)執(zhí)行所有被請(qǐng)求的 讀操作然后通過讀/寫切換執(zhí)行寫操作時(shí),總共花費(fèi)49個(gè)時(shí)鐘(CK),從而減少了所需總時(shí) 間。
[0031] 已經(jīng)做出本公開以解決如上所述的傳統(tǒng)調(diào)度緩沖器的結(jié)構(gòu)問題和調(diào)度效率問題, 并且本公開具有根據(jù)當(dāng)前存儲(chǔ)器操作狀態(tài)以及狀態(tài)切換的存在與否自適應(yīng)地控制存儲(chǔ)在 調(diào)度緩沖器中的讀和寫請(qǐng)求的數(shù)量的配置。
當(dāng)前第1頁
1 
2 
3