国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      閃存及閃存內(nèi)部數(shù)據(jù)的存取控制方法與流程

      文檔序號:12597082閱讀:474來源:國知局
      閃存及閃存內(nèi)部數(shù)據(jù)的存取控制方法與流程

      本發(fā)明涉及數(shù)據(jù)存取領(lǐng)域,更具體而言,涉及一種閃存及一種閃存內(nèi)部數(shù)據(jù)的存取控制方法。



      背景技術(shù):

      嵌入式系統(tǒng)的內(nèi)部閃存的存取速度和存取空間利用率往往限制了嵌入式系統(tǒng)的性能和效率,高效的閃存數(shù)據(jù)存取控制方法能夠大幅提高系統(tǒng)程序運(yùn)行和數(shù)據(jù)處理的效率指標(biāo)。當(dāng)前嵌入式系統(tǒng)中閃存的數(shù)據(jù)存取控制方法普遍統(tǒng)一,即依據(jù)閃存存儲器本身的存取時(shí)序特性,設(shè)計(jì)相應(yīng)的存儲器存取時(shí)序控制邏輯,進(jìn)行一般的存取讀寫操作;該數(shù)據(jù)存取時(shí)序盡量設(shè)計(jì)為存儲器要求的時(shí)序時(shí)間花費(fèi)的最小值,以提高存儲器訪問效率?;蛘?,在相對存取速度較低的閃存存儲器外部增加緩存邏輯,使一次閃存數(shù)據(jù)的存取操作能存取多筆數(shù)據(jù),使得該筆數(shù)據(jù)之后的多筆存取操作僅借助緩存快速實(shí)現(xiàn),已達(dá)到提高閃存存取效率的目的。

      但是,上述閃存數(shù)據(jù)的存取控制方式,具有一定的不足之處:其中當(dāng)前控制方式的效率依賴于閃存存儲器本體的時(shí)序控制特性,最快訪問速度也必須滿足存儲器本身的最小訪問時(shí)間要求;同時(shí),使用緩存方式來提高系統(tǒng)的存取速度,需要額外的數(shù)據(jù)緩存控制算法和額外的緩存存儲空間,而且緩存控制算法的不當(dāng)反而會(huì)有存取效率降低的可能。進(jìn)一步地,上述控制方法在一定程度上限制了閃存存儲器存儲空間的有效利用,并沒有根據(jù)閃存數(shù)據(jù)的存儲特性高效地利用閃存存儲空間。



      技術(shù)實(shí)現(xiàn)要素:

      本發(fā)明旨在至少解決現(xiàn)有技術(shù)中存在的技術(shù)問題之一。為此,本發(fā)明需要提供一種閃存及一種閃存內(nèi)部數(shù)據(jù)的存取控制方法。

      一種閃存,包括存儲器本體、地址表單元、數(shù)據(jù)組單元及控制模塊,該存儲器本體用于存儲第一數(shù)據(jù)及該第一數(shù)據(jù)的第一地址,該數(shù)據(jù)組單元用于存儲第二數(shù)據(jù),該地址表單元存儲該第二數(shù)據(jù)在該存儲器本體的第二地址;

      該控制模塊用于判斷訪問地址是匹配該第一地址還是該第二地址,若該訪問地址匹配該第一地址,該控制模塊用于根據(jù)存儲器存取控制邏輯讀取該第一數(shù)據(jù)。若該訪問地址匹配該第二地址,該控制模塊用于直接讀取該第二數(shù)據(jù)。

      上述閃存中,對于第二數(shù)據(jù),控制模塊能夠快速讀取,不僅使嵌入式系統(tǒng)讀取閃存數(shù)據(jù)的速度得到提升,同時(shí),還能減少外部系統(tǒng)和存儲器本體的直接交互,減少數(shù)據(jù)中轉(zhuǎn)次數(shù)和過程長度,減少數(shù)據(jù)傳輸?shù)某鲥e(cuò)概率。

      在一個(gè)實(shí)施方式中,該控制模塊包括地址判斷單元及數(shù)據(jù)導(dǎo)出控制單元,該地址判斷單元用于接收該訪問地址及判斷該訪問地址是匹配該第一地址還是該第二地址。該數(shù)據(jù)導(dǎo)出控制單元用于直接讀取該第二數(shù)據(jù)及根據(jù)該存儲器存取控制邏輯讀取該第一數(shù)據(jù)。

      在一個(gè)實(shí)施方式中,該存儲器本體用于存儲第三數(shù)據(jù)及該第三數(shù)據(jù)的第三地址,該第三地址為該第二地址的鏡像地址,該第三數(shù)據(jù)是該存儲器本體釋放該第二數(shù)據(jù)后的存儲空間所存儲的數(shù)據(jù)。該控制模塊用于判斷該訪問地址是否匹配該第三地址。若是,該控制模塊用于根據(jù)該存儲器存取控制邏輯存儲或讀取該第三數(shù)據(jù)。

      在一個(gè)實(shí)施方式中,該第二數(shù)據(jù)的數(shù)量大于該第一數(shù)據(jù)的數(shù)量,及大于該第三數(shù)據(jù)的數(shù)量。

      在一個(gè)實(shí)施方式中,該第二數(shù)據(jù)為數(shù)據(jù)值出現(xiàn)次數(shù)最多的數(shù)據(jù)。

      一種閃存內(nèi)部數(shù)據(jù)的存取控制方法,該內(nèi)存包括存儲器本體、地址表單元、數(shù)據(jù)組單元及控制模塊,該存儲器本體用于存儲第一數(shù)據(jù)及該第一數(shù)據(jù)的第一地址,該數(shù)據(jù)組單元用于存儲第二數(shù)據(jù),該地址表單元存儲該第二數(shù)據(jù)在該存儲器本體的第二地址。該閃存內(nèi)部數(shù)據(jù)的存取控制方法包括以下步驟:

      S1:該控制模塊判斷訪問地址是匹配該第一地址還是該第二地址,若該訪問地址匹配該第一地址,進(jìn)入步驟S2,若該訪問地址匹配該第二地址,進(jìn)入步驟S3;

      S2:該控制模塊根據(jù)存儲器存取控制邏輯讀取該第一數(shù)據(jù);

      S3:該控制模塊直接讀取該第二數(shù)據(jù)。

      上述控制方法中,對于第二數(shù)據(jù),控制模塊能夠快速讀取,不僅使嵌入式系統(tǒng)讀取閃存數(shù)據(jù)的速度得到提升,同時(shí),還能減少外部系統(tǒng)和存儲器本體的直接交互,減少數(shù)據(jù)中轉(zhuǎn)次數(shù)和過程長度,減少數(shù)據(jù)傳輸?shù)某鲥e(cuò)概率。

      在一個(gè)實(shí)施方式中,該控制模塊包括地址判斷單元及數(shù)據(jù)導(dǎo)出控制單元,步驟S1包括:該地址判斷單元接收該訪問地址及判斷該訪問地址是匹配該第一地址還是該第二地址;

      步驟S2包括:該數(shù)據(jù)導(dǎo)出控制單元根據(jù)該存儲器存取控制邏輯讀取該第一數(shù)據(jù);

      步驟S3包括:該數(shù)據(jù)導(dǎo)出控制單元直接讀取該第二數(shù)據(jù)。

      在一個(gè)實(shí)施方式中,該存儲器本體用于存儲第三數(shù)據(jù)及該第三數(shù)據(jù)的第三地址,該第三地址為該第二地址的鏡像地址,該第三數(shù)據(jù)是該存儲器本體釋放該第二數(shù)據(jù)后的存儲空間所存儲的數(shù)據(jù)。

      步驟S1包括:該控制模塊判斷該訪問地址是否匹配該第三地址,若該訪問地址匹配該第三地址,進(jìn)入步驟S4;

      S4:該控制模塊根據(jù)該存儲器存取控制邏輯存儲或讀取該第三數(shù)據(jù)。

      在一個(gè)實(shí)施方式中,該第二數(shù)據(jù)的數(shù)量大于該第一數(shù)據(jù)的數(shù)量,及大于該第三數(shù)據(jù)的數(shù)量。

      在一個(gè)實(shí)施方式中,該第二數(shù)據(jù)為數(shù)據(jù)值出現(xiàn)次數(shù)最多的數(shù)據(jù)。

      本發(fā)明的附加方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實(shí)踐了解到。

      附圖說明

      本發(fā)明的上述和/或附加的方面和優(yōu)點(diǎn)從結(jié)合下面附圖對實(shí)施方式的描述中將變得明顯和容易理解,其中:

      圖1是本發(fā)明較佳實(shí)施方式的內(nèi)存的模塊示意圖;及

      圖2是本發(fā)明較佳實(shí)施方式的內(nèi)存內(nèi)部數(shù)據(jù)的存取控制方法的流程示意圖。

      具體實(shí)施方式

      下面詳細(xì)描述本發(fā)明的實(shí)施方式,所述實(shí)施方式的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實(shí)施方式是示例性的,僅用于解釋本發(fā)明,而不能理解為對本發(fā)明的限制。

      在本發(fā)明的描述中,需要理解的是,術(shù)語″第一″、″第二″僅用于描述目的,而不能理解為指示或暗示相對重要性或者隱含指明所指示的技術(shù)特征的數(shù)量。由此,限定有″第一″、″第二″的特征可以明示或者隱含地包括一個(gè)或者更多個(gè)所述特征。在本發(fā)明的描述中,″多個(gè)″的含義是兩個(gè)或兩個(gè)以上,除非另有明確具體的限定。

      在本發(fā)明的描述中,需要說明的是,除非另有明確的規(guī)定和限定,術(shù)語″安裝″、″相連″、″連接″應(yīng)做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機(jī)械連接,也可以是電連接或可以相互通信;可以是直接相連,也可以通過中間媒介間接相連,可以是兩個(gè)元件內(nèi)部的連通或兩個(gè)元件的相互作用關(guān)系。對于本領(lǐng)域的普通技術(shù)人員而言,可以根據(jù)具體情況理解上述術(shù)語在本發(fā)明中的具體含義。

      下文的公開提供了許多不同的實(shí)施方式或例子用來實(shí)現(xiàn)本發(fā)明的不同結(jié)構(gòu)。為了簡化本發(fā)明的公開,下文中對特定例子的部件和設(shè)定進(jìn)行描述。當(dāng)然,它們僅僅為示例,并且目的不在于限制本發(fā)明。此外,本發(fā)明可以在不同例子中重復(fù)參考數(shù)字和/或參考字母,這種重復(fù)是為了簡化和清楚的目的,其本身不指示所討論各種實(shí)施方式和/或設(shè)定之間的關(guān)系。此外,本發(fā)明提供了的各種特定的工藝和材料的例子,但是本領(lǐng)域普通技術(shù)人員可以意識到其他工藝的應(yīng)用和/或其他材料的使用。

      請參圖1,本發(fā)明較佳實(shí)施方式的閃存100包括存儲器本體102、地址表單元104、數(shù)據(jù)組單元106及控制模塊108。

      該存儲器本體102用于存儲第一數(shù)據(jù)及該第一數(shù)據(jù)的第一地址,該數(shù)據(jù)組單元106用于存儲第二數(shù)據(jù),該地址表單元104存儲該第二數(shù)據(jù)在該存儲器本體102的第二地址。

      具體地,對于基于嵌入式系統(tǒng)的內(nèi)部閃存數(shù)據(jù)存取和地址訪問特性的分析,閃存的存儲器本體102的內(nèi)部數(shù)據(jù)每8位組成一個(gè)字節(jié)(Byte),該字節(jié) 對應(yīng)嵌入式系統(tǒng)內(nèi)部的一個(gè)訪問地址。對于8位的數(shù)據(jù)存取,其數(shù)據(jù)值范圍為0~255,共256個(gè)數(shù)值,即該256個(gè)數(shù)值構(gòu)成256Bytes的存儲空間。故當(dāng)閃存100的存儲空間大于256Bytes時(shí),其內(nèi)部存取的8位數(shù)據(jù)中,必有相同的數(shù)據(jù)。而目前嵌入式系統(tǒng)的閃存100的存儲空間遠(yuǎn)遠(yuǎn)大于256Bytes,故在該情況下,存儲器本體102每一個(gè)地址對應(yīng)的存儲空間中必然存在著許多相同的數(shù)據(jù)(一般來說,存儲空間大小為8Kbytes、16Kbytes、32KBytes或1MBytes等等)。

      當(dāng)存儲至存儲器本體102中的軟件程序確定后,其中的二進(jìn)制數(shù)據(jù)也隨之確定。根據(jù)上述特性,外部控制器(如單片機(jī))則將存儲器本體102中所有存在的Byte數(shù)據(jù)進(jìn)行比較判斷,將Byte數(shù)據(jù)進(jìn)行統(tǒng)計(jì),得出存儲至存儲器本體102中的Byte數(shù)據(jù)相同的數(shù)據(jù)值及所對應(yīng)的數(shù)量,并將該相同數(shù)據(jù)值數(shù)量最多的Byte數(shù)據(jù)存儲在數(shù)據(jù)組單元106。同時(shí)對于該Byte數(shù)據(jù)所對應(yīng)的存取地址進(jìn)行記錄,并存儲在地址表單元104。此時(shí),本實(shí)施方式的內(nèi)存100建立了一個(gè)對應(yīng)關(guān)系,即地址表單元104中的一個(gè)存取地址對應(yīng)的存儲器本體102中的Byte數(shù)據(jù)均相同,并且等于該存取地址對應(yīng)的數(shù)據(jù)組單元106中的數(shù)據(jù)值。

      例如,當(dāng)外部系統(tǒng)發(fā)出對地址表單元104中的任意一個(gè)存取地址進(jìn)行讀取訪問時(shí),控制模塊108將立即把數(shù)據(jù)組單元106中的數(shù)據(jù)值發(fā)送至外部系統(tǒng),控制模塊108并不需要通過存儲器存取控制邏輯讀取數(shù)據(jù)而是直接讀取數(shù)據(jù)組單元106,控制模塊108以較快速度得到所需要讀取的數(shù)據(jù)。

      因此,第二數(shù)據(jù)可為數(shù)據(jù)值出現(xiàn)次數(shù)最多的數(shù)據(jù),第一數(shù)據(jù)為其它數(shù)據(jù)。

      該控制模塊108用于判斷訪問地址是匹配該第一地址還是該第二地址,若該訪問地址匹配該第一地址,該控制模塊108用于根據(jù)存儲器存取控制邏輯讀取該第一數(shù)據(jù)。若該訪問地址匹配該第二地址,該控制模塊108用于直接讀取該第二數(shù)據(jù)。

      具體地,該控制模塊108包括地址判斷單元110及數(shù)據(jù)導(dǎo)出控制單元112,該地址判斷單元110用于接收訪問地址及判斷該訪問地址是匹配該第一地址還是該第二地址。該數(shù)據(jù)導(dǎo)出控制單元112用于直接讀取該第二數(shù)據(jù)及根據(jù)該存儲器存取控制邏輯讀取該第一數(shù)據(jù)。

      由上可知,由于本實(shí)施方式中,第二數(shù)據(jù)是數(shù)據(jù)值數(shù)量最多的數(shù)據(jù),比第 一數(shù)據(jù)的數(shù)量要多,讀取第二數(shù)據(jù)的發(fā)生概率大于讀取第一數(shù)據(jù)的發(fā)生概論。也就是說,相同數(shù)據(jù)越多,直接讀取越有可能發(fā)生,讀取效率越會(huì)相對提高。

      進(jìn)一步地,該存儲器本體102用于存儲第三數(shù)據(jù)及該第三數(shù)據(jù)的第三地址,該第三地址為該第二地址的鏡像地址,該第三數(shù)據(jù)是該存儲器本體102釋放該第二數(shù)據(jù)后的存儲空間所存儲的數(shù)據(jù)。該控制模塊108用于判斷該訪問地址是否匹配該第三地址。若是,該數(shù)據(jù)導(dǎo)出控制單元112用于根據(jù)該存儲器存取控制邏輯存儲或讀取該第三數(shù)據(jù)。第二數(shù)據(jù)的數(shù)量大于第三數(shù)據(jù)的數(shù)量。

      具體地,第三地址為第二地址的鏡像地址,鏡像地址由第二地址與鏡像偏移量的地址組成。由于地址表單元104中的一個(gè)存取地址所對應(yīng)的數(shù)據(jù)均相同,并且這些數(shù)據(jù)(第二數(shù)據(jù))已經(jīng)保存至數(shù)據(jù)組單元106中。故此時(shí),存儲器本體102的實(shí)際存儲空間均可被釋放用于其它數(shù)據(jù)(第三數(shù)據(jù))的保存,有效提供了存儲器的可用空間。

      同時(shí),由于這些實(shí)際的存儲空間對應(yīng)的存取地址已經(jīng)被包含在地址表單元104中,故需要使用鏡像地址才能訪問到這些實(shí)際的閃存存儲空間。故,本實(shí)施方式的存儲器本體102包括與實(shí)際存儲地址空間相匹配的鏡像地址空間,當(dāng)外部系統(tǒng)需要對這些釋放后的存取空間進(jìn)行操作時(shí),例如從存儲器本體102讀取第三數(shù)據(jù)或?qū)⒌谌龜?shù)據(jù)存儲在存儲器本體中,發(fā)出第三地址(即實(shí)際地址+鏡像偏移量的地址)命令即可完成存取操作。如此,可使得閃存存儲空間得以有效的利用,擴(kuò)大了閃存的可用空間。

      例如,對于如圖1所示的內(nèi)存中,存儲器本體102的存儲空間大小遠(yuǎn)遠(yuǎn)大于256Bytes,存儲器本體102由8位數(shù)據(jù)的數(shù)據(jù)單位組成,即Byte格式。每一個(gè)本體地址對應(yīng)存儲空間的一個(gè)Byte,對于本體地址對應(yīng)的數(shù)據(jù)存儲在數(shù)據(jù)組單元106來說,該本體地址為第二地址;對于本體地址對應(yīng)的數(shù)據(jù)存儲在存儲器本體102來說,該本體地址為第一地址。同時(shí),由于地址表單元104存儲第二地址,故需要利用鏡像地址對釋放的存儲空間進(jìn)行相應(yīng)操作,每一個(gè)鏡像地址也對應(yīng)存儲空間的一個(gè)Byte,鏡像地址=本體地址+鏡像偏移量的地址。

      當(dāng)所需存儲的軟件程序確定后,相應(yīng)的存至內(nèi)存中的二進(jìn)制代碼隨之確定。此時(shí)外部控制器(如單片機(jī))可分析其中存儲的二進(jìn)制數(shù)據(jù),以8位數(shù)據(jù)為一組數(shù)據(jù)單位,即Byte,統(tǒng)計(jì)存儲器本體102中所有Byte,得出出現(xiàn)數(shù)據(jù)值最 多的幾種數(shù)據(jù)(例如3種數(shù)據(jù):0x28、0xa1和0x0f),并將這3種數(shù)據(jù)存儲在數(shù)據(jù)組單元106中,其分別為數(shù)據(jù)1(例如0x28)、數(shù)據(jù)2(例如0xa1)和數(shù)據(jù)3(例如0x0f)。同時(shí),外部控制器在內(nèi)存的地址表單元104中存儲3組地址表,分別為地址表1、地址表2和地址表3;地址表1保存存儲器本體102的存取地址空間中數(shù)據(jù)1出現(xiàn)的地址,地址表2保存存儲器本體102的存取地址空間中數(shù)據(jù)2出現(xiàn)的地址,地址表3保存存儲器本體102的存取地址空間中數(shù)據(jù)3出現(xiàn)的地址。至此,完成數(shù)據(jù)統(tǒng)計(jì)。

      當(dāng)外部系統(tǒng)發(fā)出訪問地址需要讀取內(nèi)存中與訪問地址對應(yīng)的數(shù)據(jù)時(shí),地址判斷單元110接收到該訪問地址,并做出判斷:

      1.當(dāng)訪問地址匹配第一地址時(shí),數(shù)據(jù)導(dǎo)出控制單元112根據(jù)存儲器存取控制邏輯進(jìn)行讀取操作,如通過正常的存儲器存取時(shí)序進(jìn)行讀取操作,將訪問地址進(jìn)行譯碼,生成相應(yīng)的存儲器控制命令,調(diào)出存儲至存儲器本體102中的相應(yīng)地址對應(yīng)的數(shù)據(jù)并送出。訪問時(shí)間滿足存儲器本體102的操作時(shí)間要求;

      2.當(dāng)訪問地址匹配第二地址中的地址表1的地址時(shí),地址判斷單元110將立即發(fā)出第一直接數(shù)據(jù)導(dǎo)出控制信號到數(shù)據(jù)組單元106,數(shù)據(jù)導(dǎo)出控制單元112立即送出數(shù)據(jù)1至外部系統(tǒng),此過程不經(jīng)過任何存儲器控制流程,大幅節(jié)省數(shù)據(jù)讀取時(shí)間;

      3.當(dāng)訪問地址匹配第二地址的地址表2的地址時(shí),地址判斷單元110將立即發(fā)出第二直接數(shù)據(jù)導(dǎo)出控制信號到數(shù)據(jù)組單元106,數(shù)據(jù)導(dǎo)出控制單元112立即送出數(shù)據(jù)2至外部系統(tǒng),此過程不經(jīng)過任何存儲器控制流程,大幅節(jié)省數(shù)據(jù)讀取時(shí)間;

      4.當(dāng)訪問地址匹配第二地址的地址表3中的地址時(shí),地址判斷單元110將立即發(fā)出第三直接數(shù)據(jù)導(dǎo)出控制信號到數(shù)據(jù)組單元106,數(shù)據(jù)導(dǎo)出控制單元112立即送出數(shù)據(jù)3至外部系統(tǒng),此過程不經(jīng)過任何存儲器控制流程,大幅節(jié)省數(shù)據(jù)讀取時(shí)間;

      上述2至4共3種情況的發(fā)生概率取決于數(shù)據(jù)1、數(shù)據(jù)2和數(shù)據(jù)3占整個(gè)存儲器本體102存儲空間多少的比例,相同數(shù)據(jù)越多,直接讀取越有可能發(fā)生,讀取效率越會(huì)相比提高。

      因此,當(dāng)內(nèi)存運(yùn)作時(shí),數(shù)據(jù)1、數(shù)據(jù)2和數(shù)據(jù)3的讀取完全通過地址表單元104和數(shù)據(jù)組單元106完成;故存儲器本體102中實(shí)際存儲數(shù)據(jù)1、數(shù)據(jù)2 和數(shù)據(jù)3的存儲空間(即地址表1、地址表2和地址表3中保存的所有地址組成的空間)均可被釋放用于其它數(shù)據(jù)(包括功能指令)的存儲。

      訪問這些存儲空間時(shí)需要另外的地址指向,即鏡像地址(第三地址),外部系統(tǒng)發(fā)出的訪問地址匹配鏡像地址時(shí),數(shù)據(jù)導(dǎo)出控制單元112根據(jù)存儲器存取控制邏輯,將訪問地址譯碼自動(dòng)指向原先實(shí)際本體地址指向的存儲空間,并可完成存取操作。如此,能夠擴(kuò)大了內(nèi)存的可用空間,將用于地址表單元104的地址表1、地址表2和地址表3的地址所對應(yīng)的存儲空間進(jìn)行再次數(shù)據(jù)存取,提高內(nèi)存100的空間利用率。

      例如當(dāng)存儲器本體102的本地地址為0x1、0x7和0xf的存儲空間中數(shù)據(jù)相同,并為數(shù)據(jù)1。此時(shí)的本體地址為第二地址;

      1.存儲器本體102的0x1、0x7和0xf的存儲空間將被釋放,其數(shù)據(jù)已經(jīng)保存在數(shù)據(jù)組單元106的數(shù)據(jù)1中,并用于直接讀取操作;

      2.鏡像地址偏移量如為0xF000,則當(dāng)前本體地址為0x1、0x7和0xf的存儲空間,鏡像地址分別為:0xF001、0xF007和0xF00f;

      3.若利用本體地址0x1的存儲空間,用于存儲新數(shù)據(jù)A(第三數(shù)據(jù)),則外部控制器發(fā)出寫命令至地址0xF001,即實(shí)現(xiàn)新數(shù)據(jù)A在本體地址0x1的存儲;同時(shí)若要讀取本體地址0x1的數(shù)據(jù)A,外部控制器發(fā)出讀命令至地址0xF001,即實(shí)現(xiàn)新對本體地址0x1的數(shù)據(jù)A讀??;

      4.若利用本體地址0x7的存儲空間,用于存儲新數(shù)據(jù)B,則外部控制器發(fā)出寫命令至地址0xF007,即實(shí)現(xiàn)新數(shù)據(jù)B在本體地址0x7的存儲;同時(shí)若要讀取本體地址0x7的數(shù)據(jù)B,外部控制器發(fā)出讀命令至地址0xF007,即實(shí)現(xiàn)新對本體地址0x7的數(shù)據(jù)B讀取;

      5.對于0xf的存儲空間操作可參以上說明。

      因此,這樣能擴(kuò)大了內(nèi)存的可用空間,將用于地址表單元104的地址表1、地址表2和地址表3的地址所對應(yīng)的存儲空間進(jìn)行再次數(shù)據(jù)存取,提高內(nèi)存的空間利用率。

      綜上所述,上述閃存100中,對于第二數(shù)據(jù),控制模塊108能夠直接讀取,不僅使嵌入式系統(tǒng)讀取閃存數(shù)據(jù)的速度得到提升,同時(shí),還能減少外部系統(tǒng)和存儲器本體102的直接交互,減少數(shù)據(jù)中轉(zhuǎn)次數(shù)和過程長度,減少數(shù)據(jù)傳輸?shù)某鲥e(cuò)概率。

      進(jìn)一步地,由于內(nèi)存100利用鏡像地址來存儲更多數(shù)據(jù),因此這樣能夠使得閃存100存儲空間得以有效的利用,擴(kuò)大了閃存的可用空間。

      請參圖2,本發(fā)明較佳實(shí)施方式提供一種閃存內(nèi)部數(shù)據(jù)的存取控制方法。本實(shí)施方式的內(nèi)存內(nèi)部數(shù)據(jù)的存取控制方法可由以上實(shí)施方式的內(nèi)存100實(shí)現(xiàn)。

      該閃存內(nèi)部數(shù)據(jù)的存取控制方法包括以下步驟:

      S1:該控制模塊108判斷訪問地址是匹配該第一地址還是該第二地址,若該訪問地址匹配該第一地址,進(jìn)入步驟S2,若該訪問地址匹配該第二地址,進(jìn)入步驟S3;

      S2:該控制模塊108根據(jù)存儲器存取控制邏輯讀取該第一數(shù)據(jù);

      S3:該控制模塊108直接讀取該第二數(shù)據(jù)。

      在步驟S1中,本實(shí)施方式中,控制模塊108包括地址判斷單元110及數(shù)據(jù)導(dǎo)出控制單元112。當(dāng)外部系統(tǒng)發(fā)送訪問地址時(shí),地址判斷單元110接收訪問地址并判斷訪問地址是匹配第一地址還是第二地址。

      在步驟S2中,當(dāng)訪問地址匹配第一地址時(shí),數(shù)據(jù)導(dǎo)出控制單元112根據(jù)存儲器存取控制邏輯進(jìn)行讀取操作,如通過正常的存儲器存取時(shí)序進(jìn)行讀取操作,將訪問地址進(jìn)行譯碼,生成相應(yīng)的存儲器控制命令,調(diào)出存儲至存儲器本體102中的相應(yīng)地址對應(yīng)的數(shù)據(jù)并送出。訪問時(shí)間滿足存儲器本體102的操作時(shí)間要求。

      在步驟S3中,當(dāng)訪問地址匹配第二地址時(shí),地址判斷單元110將立即發(fā)出直接數(shù)據(jù)導(dǎo)出控制信號到數(shù)據(jù)組單元106,數(shù)據(jù)導(dǎo)出控制單元112立即送出第二地址對應(yīng)的數(shù)據(jù)至外部系統(tǒng),此過程不經(jīng)過任何存儲器控制流程,大幅節(jié)省數(shù)據(jù)讀取時(shí)間。

      進(jìn)一步地,步驟S1包括:該控制模塊108判斷該訪問地址是否匹配第三地址,若該訪問地址匹配該第三地址,進(jìn)入步驟S4;

      S4:該控制模塊108根據(jù)該存儲器存取控制邏輯存儲或讀取該第三數(shù)據(jù)。

      具體地,第三地址為第二地址的鏡像地址,鏡像地址由第二地址與鏡像偏移量的地址組成。由于地址表單元104中的一個(gè)存取地址所對應(yīng)的數(shù)據(jù)均相同,并且這些數(shù)據(jù)(第二數(shù)據(jù))已經(jīng)保存至數(shù)據(jù)組單元106中,故此時(shí),存 儲器本體102的實(shí)際閃存存儲空間均可被釋放用于其它數(shù)據(jù)(第三數(shù)據(jù))的保存,有效提供了存儲器的可用空間。同時(shí),由于這些實(shí)際的存儲空間對應(yīng)的存取地址已經(jīng)被包含在地址表單元104中,故需要使用鏡像地址才能訪問到這些實(shí)際的閃存存儲空間。本實(shí)施方式的存儲器本體102包括與實(shí)際存儲地址空間相匹配的鏡像地址空間,當(dāng)外部系統(tǒng)需要對這些釋放后的存儲器存取空間進(jìn)行操作時(shí),例如從存儲器本體102讀取第三數(shù)據(jù)或?qū)⒌谌龜?shù)據(jù)存儲在存儲器本體中,發(fā)出第三地址(即實(shí)際地址+鏡像偏移量的地址)命令即可完成訪問操作。如此,可使得閃存的存儲空間得以有效的利用,擴(kuò)大了閃存的可用空間。

      本實(shí)施方式的內(nèi)存內(nèi)部數(shù)據(jù)的存取控制方法未展開的其它部分,可參考以上實(shí)施方式的內(nèi)存100相關(guān)部分的說明,在此不再詳細(xì)展開。

      綜上所述,上述閃存內(nèi)部數(shù)據(jù)的存取控制方法中,對于第二數(shù)據(jù),控制模塊108能夠直接讀取,不僅使嵌入式系統(tǒng)讀取閃存數(shù)據(jù)的速度得到提升,同時(shí),還能減少外部系統(tǒng)和存儲器本體的直接交互,減少數(shù)據(jù)中轉(zhuǎn)次數(shù)和過程長度,減少數(shù)據(jù)傳輸?shù)某鲥e(cuò)概率。

      進(jìn)一步地,由于該控制方法利用鏡像地址來存儲更多數(shù)據(jù),因此這樣能夠使得閃存的存儲空間得以有效的利用,擴(kuò)大了閃存的可用空間。

      在本說明書的描述中,參考術(shù)語″一個(gè)實(shí)施方式″、″一些實(shí)施方式″、″示意性實(shí)施方式″、″示例″、″具體示例″、或″一些示例″等的描述意指結(jié)合所述實(shí)施方式或示例描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)包含于本發(fā)明的至少一個(gè)實(shí)施方式或示例中。在本說明書中,對上述術(shù)語的示意性表述不一定指的是相同的實(shí)施方式或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)可以在任何的一個(gè)或多個(gè)實(shí)施方式或示例中以合適的方式結(jié)合。

      此外,術(shù)語″第一″、″第二″僅用于描述目的,而不能理解為指示或暗示相對重要性或者隱含指明所指示的技術(shù)特征的數(shù)量。由此,限定有″第一″、″第二″的特征可以明示或者隱含地包括至少一個(gè)該特征。在本發(fā)明的描述中,″多個(gè)″的含義是至少兩個(gè),例如兩個(gè),三個(gè)等,除非另有明確具體的限定。

      流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個(gè)或更多個(gè)用于實(shí)現(xiàn)特定邏輯功能或過程的步驟的可執(zhí)行指令 的代碼的模塊、片段或部分,并且本發(fā)明的優(yōu)選實(shí)施方式的范圍包括另外的實(shí)現(xiàn),其中可以不按所示出或討論的順序,包括根據(jù)所涉及的功能按基本同時(shí)的方式或按相反的順序,來執(zhí)行功能,這應(yīng)被本發(fā)明的實(shí)施例所屬技術(shù)領(lǐng)域的技術(shù)人員所理解。

      在流程圖中表示或在此以其他方式描述的邏輯和/或步驟,例如,可以被認(rèn)為是用于實(shí)現(xiàn)邏輯功能的可執(zhí)行指令的定序列表,可以具體實(shí)現(xiàn)在任何計(jì)算機(jī)可讀介質(zhì)中,以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備(如基于計(jì)算機(jī)的系統(tǒng)、包括處理器的系統(tǒng)或其他可以從指令執(zhí)行系統(tǒng)、裝置或設(shè)備取指令并執(zhí)行指令的系統(tǒng))使用,或結(jié)合這些指令執(zhí)行系統(tǒng)、裝置或設(shè)備而使用。就本說明書而言,″計(jì)算機(jī)可讀介質(zhì)″可以是任何可以包含、存儲、通信、傳播或傳輸程序以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備或結(jié)合這些指令執(zhí)行系統(tǒng)、裝置或設(shè)備而使用的裝置。計(jì)算機(jī)可讀介質(zhì)的更具體的示例(非窮盡性列表)包括以下:具有一個(gè)或多個(gè)布線的電連接部(電子裝置),便攜式計(jì)算機(jī)盤盒(磁裝置),隨機(jī)存取存儲器(RAM),只讀存儲器(ROM),可擦除可編輯只讀存儲器(EPROM或閃速存儲器),光纖裝置,以及便攜式光盤只讀存儲器(CDROM)。另外,計(jì)算機(jī)可讀介質(zhì)甚至可以是可在其上打印所述程序的紙或其他合適的介質(zhì),因?yàn)榭梢岳缤ㄟ^對紙或其他介質(zhì)進(jìn)行光學(xué)掃描,接著進(jìn)行編輯、解譯或必要時(shí)以其他合適方式進(jìn)行處理來以電子方式獲得所述程序,然后將其存儲在計(jì)算機(jī)存儲器中。

      應(yīng)當(dāng)理解,本發(fā)明的各部分可以用硬件、軟件、固件或它們的組合來實(shí)現(xiàn)。在上述實(shí)施方式中,多個(gè)步驟或方法可以用存儲在存儲器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來實(shí)現(xiàn)。例如,如果用硬件來實(shí)現(xiàn),和在另一實(shí)施方式中一樣,可用本領(lǐng)域公知的下列技術(shù)中的任一項(xiàng)或他們的組合來實(shí)現(xiàn):具有用于對數(shù)據(jù)信號實(shí)現(xiàn)邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(PGA),現(xiàn)場可編程門陣列(FPGA)等。

      本技術(shù)領(lǐng)域的普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法攜帶的全部或部分步驟是可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計(jì)算機(jī)可讀存儲介質(zhì)中,該程序在執(zhí)行時(shí),包括方法實(shí)施例的步驟之一或其組合。

      此外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理模塊中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)模塊中。上述集成的模塊既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能模塊的形式實(shí)現(xiàn)。所述集成的模塊如果以軟件功能模塊的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),也可以存儲在一個(gè)計(jì)算機(jī)可讀取存儲介質(zhì)中。

      上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。盡管上面已經(jīng)示出和描述了本發(fā)明的實(shí)施例,可以理解的是,上述實(shí)施例是示例性的,不能理解為對本發(fā)明的限制,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的范圍內(nèi)可以對上述實(shí)施例進(jìn)行變化、修改、替換和變型。

      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
      1