專利名稱:在sdram存儲(chǔ)若干數(shù)據(jù)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種在SDRAM中存儲(chǔ)數(shù)據(jù)的方法,尤其是在其中存儲(chǔ)若干圖 片數(shù)據(jù)的方法。
背景技術(shù):
隨著信息技術(shù)的發(fā)展與廣泛應(yīng)用,使用SDRAM進(jìn)行數(shù)據(jù)的存儲(chǔ)和讀取也 越來越廣泛。
如圖1所示,目前在各個(gè)MASTER對多塊數(shù)據(jù)包以相似偏移量并發(fā)訪問 的概率比較大的SOC ( system on chip)系統(tǒng)設(shè)計(jì)中,其并沒有對存儲(chǔ)的數(shù)據(jù) 在SDRAM中的存儲(chǔ)位置有所要求。如圖2所示,這些數(shù)據(jù)在SDRAM中的 存儲(chǔ)方式也就是順序存儲(chǔ),即在存完一個(gè)數(shù)據(jù)后,在進(jìn)行下一個(gè)數(shù)據(jù)的存儲(chǔ), 直到存儲(chǔ)完畢所有的數(shù)據(jù)。假設(shè)數(shù)據(jù)讀取的burst長度為4word,那么其數(shù)據(jù) 讀取方式請參閱圖3所示。由于數(shù)據(jù)存儲(chǔ)的方式并不與數(shù)據(jù)讀取的方式對應(yīng), 因此在圖3中可以看出,每讀一個(gè)burst長度的數(shù)據(jù),就會(huì)發(fā)生一次page miss
(即前后兩次burst婆t據(jù)讀取是發(fā)生在不同的page中,這種讀取方式被稱作 page miss),這樣就使得數(shù)據(jù)讀取時(shí)間加長。
如此,這種存儲(chǔ)方式使得提高SDRAM的訪問帶寬,純粹是依靠SDRC
(同步動(dòng)態(tài)隨機(jī)存儲(chǔ)控制器)這個(gè)模塊本身的性能。其性能好時(shí),數(shù)據(jù)的存 儲(chǔ)效率就高;反之,則效率低下。但是就目前而言,即使是一個(gè)性能最優(yōu)秀 的SDRC,其對SDRAM的訪問帶寬的提高也是有限的。
因此,亟待提出一種新的可用于SDRAM存儲(chǔ)數(shù)據(jù)的方法,以解決現(xiàn)有 技術(shù)中的缺點(diǎn)。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的一個(gè)目的在于提供一種SDRAM中數(shù)據(jù)存儲(chǔ)方法, 其對存儲(chǔ)數(shù)據(jù)在SDRAM中的存儲(chǔ)位置有所安排,以提高其被訪問的效率, 進(jìn)而提高整個(gè)系統(tǒng)的性能。
為了達(dá)到上述目的,本發(fā)明的一個(gè)實(shí)施方式提供了一種在SDRAM中存 儲(chǔ)若干數(shù)據(jù)的方法,其中該使用的SDRAM包括有若干存儲(chǔ)陣列(bank), 每個(gè)存儲(chǔ)陣列中包括有若干存儲(chǔ)單元(page),其包括有以下步驟。將每份數(shù) 據(jù)劃分為若干大小相同的數(shù)據(jù)塊,每個(gè)數(shù)據(jù)塊的大小等于讀取SDRAM內(nèi)存 儲(chǔ)數(shù)據(jù)的BURST長度;將相鄰的預(yù)定份數(shù)據(jù)的數(shù)據(jù)塊依次交錯(cuò)存儲(chǔ)于 SDRAM的存儲(chǔ)陣列的存儲(chǔ)單元內(nèi)。
進(jìn)一步的,在不同實(shí)施方式中,其中將數(shù)據(jù)包括的數(shù)據(jù)塊交錯(cuò)存儲(chǔ)于 SDRAM的存儲(chǔ)陣列的存儲(chǔ)單元內(nèi)的方式為,依次存儲(chǔ)各數(shù)據(jù)包括的第一個(gè) 數(shù)據(jù)塊,當(dāng)全部要存儲(chǔ)的數(shù)據(jù)的第一個(gè)數(shù)據(jù)塊依次存儲(chǔ)完畢后,在按第一次 若干數(shù)據(jù)的存儲(chǔ)順序繼續(xù)存儲(chǔ)各數(shù)據(jù)的第二個(gè)數(shù)據(jù)塊,直到最后將所有數(shù)據(jù) 的數(shù)據(jù)塊存儲(chǔ)完畢。
進(jìn)一步的,在不同實(shí)施方式中,其中在將數(shù)據(jù)包括的數(shù)據(jù)塊交錯(cuò)存儲(chǔ)于 SDRAM的存儲(chǔ)陣列的存儲(chǔ)單元內(nèi)的方式中,SDRAM內(nèi)包括的存儲(chǔ)陣列及 其內(nèi)包括的存儲(chǔ)單元是按照邏輯結(jié)構(gòu)上的先后順序來依次存儲(chǔ)這些數(shù)據(jù)的數(shù) 據(jù)塊。
進(jìn)一步的,在不同實(shí)施方式中,其中在SDRAM中存儲(chǔ)的這些數(shù)據(jù),其 大小是完全一樣的。
進(jìn)一步的,在不同實(shí)施方式中,其中SDRAM中數(shù)據(jù)讀取的BURST長 度大小包括1、 2、 4、 8words,相應(yīng)的,存儲(chǔ)的數(shù)據(jù)所分成的數(shù)據(jù)塊,其相 應(yīng)大小也包4舌1、 2、 4、 8words。進(jìn)一步的,在不同實(shí)施方式中,其中存儲(chǔ)的數(shù)據(jù)為圖片數(shù)據(jù)。 進(jìn)一步的,在不同實(shí)施方式中,其中存儲(chǔ)的若干圖片數(shù)據(jù)最好為同樣大
進(jìn)一步的,在不同實(shí)施方式中,本發(fā)明SDRAM數(shù)據(jù)存儲(chǔ)方法用于各個(gè) MASTER對多塊數(shù)據(jù)包以相似偏移量并發(fā)訪問的概率比較大的SOC系統(tǒng)中, 以^是高其SDRAM的訪問效率。
相對于現(xiàn)有技術(shù),本發(fā)明通過對存儲(chǔ)數(shù)據(jù)在SDRAM中的存儲(chǔ)位置的安 排,使得其可以被更有效率的訪問,節(jié)省了讀取時(shí)間,從而達(dá)到提高SDRAM 的訪問帶寬,進(jìn)而提高整個(gè)系統(tǒng)性能的目的。
圖1為現(xiàn)有技術(shù)中SOC系統(tǒng)的簡化結(jié)構(gòu)示意圖2為圖1中所示的SDRAM數(shù)據(jù)存儲(chǔ)方式示意圖3為圖2中SDRAM中存儲(chǔ)的數(shù)據(jù)的讀取方式示意圖4是本發(fā)明的 一個(gè)實(shí)施方式涉及的數(shù)據(jù)存儲(chǔ)方法的流程圖5為本發(fā)明的一個(gè)實(shí)施方式中數(shù)據(jù)存儲(chǔ)在SDRAM中的存儲(chǔ)位置示意
圖6為本發(fā)明的一個(gè)實(shí)施方式中在SDRAM中存儲(chǔ)的數(shù)據(jù)讀取方式的示 意圖。
具體實(shí)施例方式
請參閱圖4所示,本發(fā)明的一個(gè)實(shí)施方式中涉及的在SDRAM中存儲(chǔ) 數(shù)據(jù)的方法100,其包括有以下步驟,確定要使用存儲(chǔ)數(shù)據(jù)的SDRAM的數(shù) 據(jù)讀取BURST的長度信息110。然后根據(jù)BURST長度對存儲(chǔ)數(shù)據(jù)進(jìn)行分割, 使其包括若干BURST長度大小的數(shù)據(jù)塊120,最后將各數(shù)據(jù)交錯(cuò)存儲(chǔ)于 SDRAM中130。
其中,在SDRAM中,其是由若干存儲(chǔ)陣列(bank)組成,每個(gè)bank又是由若干存儲(chǔ)單元(page)組成。其讀取其中存儲(chǔ)的數(shù)據(jù)通常是BURST 模式(BURST MODE )。不同規(guī)格的SDRAM包括的bank的數(shù)量不同,而 且讀取數(shù)據(jù)的BURST長度(BURST LENGTH)也是不同的,其可以是1、 2、 4或8words 。
因此在確定了選用的SDRAM后,才可進(jìn)行各份數(shù)據(jù)的數(shù)據(jù)塊劃分,使 數(shù)據(jù)塊的大小對應(yīng)于選用SDRAM的BURST長度大小。那么相應(yīng)的,數(shù)據(jù) 塊的大小也包括l、 2、 4或8words。另外,這些要存儲(chǔ)的數(shù)據(jù)最好是大小完 全一致的,如此,可以更好的體現(xiàn)本發(fā)明涉及方法的優(yōu)勢。
當(dāng)各份數(shù)據(jù)已分成了若干個(gè)大小相同的數(shù)據(jù)塊后,開始交錯(cuò)存儲(chǔ)于 SDRAM中的存儲(chǔ)位置中時(shí),SDRAM接收數(shù)據(jù)的方式,是按照其自身的邏 輯結(jié)構(gòu)順序開始存儲(chǔ)的。例如,SDRAM中包括有4個(gè)bank: bank0 、 bank 1 、 bank2及bank3。每個(gè)bank中包括4個(gè)page: page0、 pagel 、 page2及page3。 那么依次接收要存儲(chǔ)的數(shù)據(jù)從bank0的page0開始,直到page3。當(dāng)bank0 的存儲(chǔ)空間使用完,則由bankl的page0開始繼續(xù)存儲(chǔ)。
而各份數(shù)據(jù)所包括的數(shù)據(jù)塊交錯(cuò)存儲(chǔ)的具體方式為,先進(jìn)行各數(shù)據(jù)所包 括的第一個(gè)數(shù)據(jù)塊的依次存儲(chǔ),例如,從數(shù)據(jù)1的第一數(shù)據(jù)塊開始存儲(chǔ),其 后是數(shù)據(jù)2的第一數(shù)據(jù)塊。當(dāng)所有數(shù)據(jù)的第一個(gè)數(shù)據(jù)塊被存儲(chǔ)完畢后,則繼 續(xù)進(jìn)行各數(shù)據(jù)的第二數(shù)據(jù)塊的存儲(chǔ),其存儲(chǔ)順序?yàn)榈?一數(shù)據(jù)塊的存儲(chǔ)順序, 依此類推,直到存儲(chǔ)完畢各數(shù)據(jù)的全部數(shù)據(jù)塊。
在一個(gè)將四份大小為1M words的圖片數(shù)據(jù)存儲(chǔ)于一個(gè)容量為8M的 SDRAM的具體的實(shí)施方式中,其中用于存儲(chǔ)數(shù)據(jù)的SDRAM包括有4個(gè) bank,每個(gè)bank包4舌有8個(gè)page,每個(gè)page的容量為256words,且用于i賣 取其內(nèi)存儲(chǔ)數(shù)據(jù)的BURST長度為4words。
具體四份圖片數(shù)據(jù)所包括的各數(shù)據(jù)塊在SDRAM中的存儲(chǔ)位置的示意 圖,請參閱圖5所示。根據(jù)BURST傳輸?shù)臄?shù)據(jù)長度為4words。將四個(gè)圖片
7數(shù)據(jù)Pl、 P2、 P3、 P4分為256個(gè)大小為4words的數(shù)據(jù)塊,具體分別為Pl-l、 Pl-2……Pl- 256; P2-l、P2-2……P2國256; P3陽1、P3-2……P3畫256;以及P4-1、 P4-2 P4-256,以進(jìn)行后續(xù)的交錯(cuò)存儲(chǔ)操作。將這些數(shù)據(jù)塊交錯(cuò)存儲(chǔ)于該
SDRAM的存儲(chǔ)區(qū)域中,具體為,按照該SDRAM內(nèi)部邏輯結(jié)構(gòu)順序,最先 用于存儲(chǔ)的空間為bank0的page0區(qū)域,先將Pl-l存儲(chǔ)于SDRAM的bank0 的page0內(nèi),然后是P2-1、 P3-l、 P4-1,再然后是Pl-2、 P2-2、 P3-2、 P4-2、 Pl-3、 P2-3、 P3-3、 P4-3、 Pl-4、 P2-4、 P3-4、 P4-4等等交替存儲(chǔ)于pageO 內(nèi),直到Pl-16、 P2-16、 P3-16、 P4-16, pageO的存儲(chǔ)空間用完,則繼續(xù)在 其后的pagel上繼續(xù)這些圖片數(shù)據(jù)所包括的后續(xù)數(shù)據(jù)塊的存儲(chǔ)。當(dāng)bank0的 存儲(chǔ)空間用完后,則使用順序下一個(gè)bankl的存儲(chǔ)空間繼續(xù)存儲(chǔ),直到最終, 將四個(gè)圖片數(shù)據(jù)包括的全部數(shù)據(jù)塊存儲(chǔ)完畢。
在各個(gè)MASTER對多塊數(shù)據(jù)包以相似偏移量并發(fā)訪問的概率比較大的 SOC系統(tǒng)中,我們希望從SDRAM中讀取數(shù)據(jù)的順序是Pl-l, P2-1, P3-1, P4-1; Pl-2, P2-2, P3-2, P4-2直到數(shù)據(jù)被讀取完。因此對于如圖5所示的數(shù)據(jù) 存儲(chǔ)格式,如圖6所示,可以得到這樣一個(gè)訪問時(shí)序圖。相對于現(xiàn)有技術(shù)中 圖3所示的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu),其會(huì)在每讀一個(gè)burst長度的數(shù)據(jù)時(shí),就會(huì)發(fā)生 一次pagemiss。而采用本發(fā)明涉及的存儲(chǔ)方式存儲(chǔ)的數(shù)據(jù)在讀取時(shí),如圖6 所示,其只在每讀完一個(gè)page長度(64個(gè)burst長度)的數(shù)據(jù)后,才會(huì)發(fā)生一 次pagemiss。因而采用本發(fā)明涉及的數(shù)據(jù)存儲(chǔ)方式,其數(shù)據(jù)讀取速度明顯快 于現(xiàn)有技術(shù)所采用的數(shù)據(jù)存儲(chǔ)方式。且其并不是特別需要采用更好的SDRC (同步動(dòng)態(tài)隨機(jī)存儲(chǔ)控制器)模塊性能。
進(jìn)一步的,對于兩份數(shù)據(jù)、三份數(shù)據(jù)以及更多數(shù)量的數(shù)據(jù)的存儲(chǔ)方式, 可參閱上述四份數(shù)據(jù)的存儲(chǔ)方式,均是依次存完各份數(shù)據(jù)所包括的第 一 個(gè)數(shù) 據(jù)塊后,在進(jìn)行各份數(shù)據(jù)的第二數(shù)據(jù)塊的存儲(chǔ),直到最后。
進(jìn)一步的,對于各份數(shù)據(jù)的數(shù)據(jù)塊在不同bank的不同page中的存儲(chǔ)順序可以隨實(shí)際情況而定。例如,其可以是在page0中存完后,隔一個(gè)pagel, 在page2中在繼續(xù)存儲(chǔ)。對于存儲(chǔ)bank也是類似。在存完bankO后,可以是 隔一個(gè)bankl ,在bank2中在繼續(xù)存儲(chǔ)。
權(quán)利要求
1. 一種SDRAM的存儲(chǔ)數(shù)據(jù)的方法,其中所述SDRAM包括有若干存儲(chǔ)陣列,每個(gè)存儲(chǔ)陣列中包括有若干存儲(chǔ)單元,其特征在于,其包括有以下步驟將每份數(shù)據(jù)劃分為若干大小相同的數(shù)據(jù)塊,每個(gè)數(shù)據(jù)塊的大小等于讀取所述SDRAM內(nèi)存儲(chǔ)數(shù)據(jù)的BURST長度;將相鄰的預(yù)定份數(shù)據(jù)的數(shù)據(jù)塊依次交錯(cuò)存儲(chǔ)于所述SDRAM的存儲(chǔ)陣列的存儲(chǔ)單元內(nèi)。
2. 根據(jù)權(quán)利要求1所述的存儲(chǔ)若干數(shù)據(jù)的方法,其特征在于,其中所述 將數(shù)據(jù)包括的數(shù)據(jù)塊交錯(cuò)存儲(chǔ)于SDRAM的存儲(chǔ)陣列的存儲(chǔ)單元內(nèi)的方式 為,依次存儲(chǔ)各數(shù)據(jù)包括的第一個(gè)數(shù)據(jù)塊,當(dāng)全部要存儲(chǔ)數(shù)據(jù)的第一個(gè)數(shù)據(jù) 塊依次存儲(chǔ)完畢后,再按第一次所述若干數(shù)據(jù)的存儲(chǔ)順序繼續(xù)存儲(chǔ)所述各數(shù) 據(jù)的第二個(gè)數(shù)據(jù)塊,直到最后將所有數(shù)據(jù)的數(shù)據(jù)塊存儲(chǔ)完畢。
3. 根據(jù)權(quán)利要求1所述的存儲(chǔ)若干數(shù)據(jù)的方法,其特征在于,其中在所 述將數(shù)據(jù)包括的數(shù)據(jù)塊交錯(cuò)存儲(chǔ)于SDRAM的存儲(chǔ)陣列的存儲(chǔ)單元內(nèi)的方式 中,其中所述SDRAM內(nèi)包括的存儲(chǔ)陣列及其內(nèi)包括的存儲(chǔ)單元是按照邏輯 結(jié)構(gòu)上的先后順序來依次接收將要存儲(chǔ)的這些數(shù)據(jù)的數(shù)據(jù)塊。
4. 根據(jù)權(quán)利要求1所述的存儲(chǔ)若干數(shù)據(jù)的方法,其特征在于,其中所述 存儲(chǔ)的若干數(shù)據(jù)的大小是完全一樣的。
5. 根據(jù)權(quán)利要求1所述的存儲(chǔ)若千數(shù)據(jù)的方法,其特征在于,其中所述 BURST長度大小包括1、 2、 4、 8words,相應(yīng)的,所述存儲(chǔ)的數(shù)據(jù)包括的數(shù) 據(jù)塊的大小也相應(yīng)包括l、 2、 4、 8words。
6. 根據(jù)權(quán)利要求1所述的存儲(chǔ)若干數(shù)據(jù)的方法,其特征在于,其中所述存儲(chǔ)的數(shù)據(jù)為圖片數(shù)據(jù)。
7. 根據(jù)權(quán)利要求6所述的存儲(chǔ)若干數(shù)據(jù)的方法,其特征在于,其中所述 存儲(chǔ)的若干圖片數(shù)據(jù)為同樣大小。
8. 根據(jù)權(quán)利要求1所述的存儲(chǔ)若干數(shù)據(jù)的方法,其特征在于,其用于各 個(gè)MASTER對多塊數(shù)據(jù)包以相似偏移量并發(fā)訪問的概率比較大的SOC系統(tǒng) 中,以提高其SDRAM的訪問效率。
全文摘要
本發(fā)明公開了一種在SDRAM中存儲(chǔ)若干數(shù)據(jù)的方法,其包括有以下步驟。將每份數(shù)據(jù)劃分為若干大小相同的數(shù)據(jù)塊,每個(gè)數(shù)據(jù)塊的大小等于讀取SDRAM內(nèi)存儲(chǔ)數(shù)據(jù)的BURST長度;將相鄰的預(yù)定份數(shù)據(jù)的數(shù)據(jù)塊依次交錯(cuò)存儲(chǔ)于SDRAM的存儲(chǔ)陣列的存儲(chǔ)單元內(nèi)。本發(fā)明通過對存儲(chǔ)數(shù)據(jù)在SDRAM中的存儲(chǔ)位置的排列,使得在各個(gè)MASTER對多塊數(shù)據(jù)包以相似偏移量并發(fā)訪問的概率比較大的SOC系統(tǒng)中,其可以被更有效率的訪問,節(jié)省了讀取時(shí)間,從而達(dá)到提高SDRAM的訪問帶寬,進(jìn)而提高整個(gè)系統(tǒng)性能的目的。
文檔編號(hào)G06F12/02GK101520750SQ20091008110
公開日2009年9月2日 申請日期2009年4月2日 優(yōu)先權(quán)日2009年4月2日
發(fā)明者軍 付, 李建軍 申請人:北京中星微電子有限公司