專利名稱::一種存儲器容量檢測方法和裝置的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明屬于存儲器領(lǐng)域,尤其涉及一種存儲器容量檢測方法和裝置。-
背景技術(shù):
:為了更好對外接的存儲器,如同步動(dòng)態(tài)隨機(jī)存儲器(SynchronousDRAM,SDRAM)、靜態(tài)隨機(jī)存儲器(StaticRAM,SRAM)等,進(jìn)行訪問,需要預(yù)先對外接的存儲器的容量進(jìn)行檢測?,F(xiàn)有技術(shù)提供了多種存儲器容量檢測方法,如通過向待測存儲器的2N+'地址中寫入數(shù)據(jù),再從待測存儲器的2"+|地址中讀取數(shù)據(jù),并將讀取的數(shù)據(jù)與O地址中的數(shù)據(jù)進(jìn)行比較,如果相同,則待測存儲器的容量為2N。這種存儲器容量檢測方法可以快速的檢測靜態(tài)隨機(jī)存儲器(StaticRAM,SRAM)的容量。由于SDRAM的內(nèi)部結(jié)構(gòu)與SRAM不同,不同容量的SDRAM的內(nèi)部行列地址的長度均不一樣,同時(shí)SDRAM控制器在訪問外接的SDRAM時(shí),根據(jù)預(yù)先配置的SDRAM控制器的容量信息,將總線傳輸?shù)淖x/寫地址分割成兩部分,分別為Bank地址和行地址部分以及列地址部分,從而相對于配置的SDRAM控制器的容量信息,不同容量SDRAM的行地址和列地址之間有效位和無效位均不相同,因此當(dāng)采用上述存儲器容量才企測方法斥企測SDRAM或者與SDRAM具有相似內(nèi)部行列結(jié)構(gòu)的存儲器的容量時(shí),難以達(dá)到預(yù)期的檢測效果。行列結(jié)構(gòu)的存儲器的容量。由于遍歷的方法需要對整個(gè)存儲器的地址空間進(jìn)行遍歷,才能檢測出存儲器的容量大小,隨著存儲器的容量的增大,存儲器容量檢測所耗費(fèi)的時(shí)間將增加,因此不適用于對系統(tǒng)啟動(dòng)時(shí)間要求較高的嵌入式應(yīng)用中。
發(fā)明內(nèi)容本發(fā)明的目的在于提供一種存儲器容量檢測方法,旨在提高容量檢測方法的檢測效率以及提高檢測速度。本發(fā)明是這樣實(shí)現(xiàn)的,一種存儲器容量檢測方法,所述容量檢測的裝置包括存儲控制器,存儲控制器對所述存儲器的地址進(jìn)行讀寫控制,所述存儲器的地址包括行地址和列地址,存儲控制器準(zhǔn)備控制的地址為目標(biāo)地址,實(shí)際控制的地址為實(shí)際i也址,所述方法包括配置存儲控制器的容量;在預(yù)先選4^的多個(gè)不同目標(biāo)地址中寫入不同的數(shù)據(jù),所述多個(gè)不同目標(biāo)地址中N個(gè)目標(biāo)地址對應(yīng)存儲器的同一實(shí)際地址,且不同容量的存儲器,N的值均不相同;從所述多個(gè)不同目標(biāo)地址中讀取數(shù)據(jù);根據(jù)從所述多個(gè)不同目標(biāo)地址中讀取的數(shù)據(jù)是否等于寫入所述多個(gè)不同目標(biāo)地址中的數(shù)據(jù)來檢測待測存儲器的容量。進(jìn)一步的,所述預(yù)先選擇的多個(gè)不同目標(biāo)地址的步驟進(jìn)一步包括根據(jù)配置的存儲控制器的容量以及不同容量存儲器之間的內(nèi)部行列結(jié)構(gòu)的差異,得到不同容量存儲器的行列地址與配置容量的存儲器的行列地址之間的有,i^立和無刻^立的^t應(yīng)關(guān)系;根據(jù)不同容量存儲器的行列地址與配置容量存儲器的行列地址之間的有效位和無效位的對應(yīng)關(guān)系,得到不同容量存儲器的同一實(shí)際地址組;根據(jù)不同容量存儲器的同一實(shí)際地址組選擇多個(gè)目標(biāo)地址,所述多個(gè)不同目標(biāo)地址中N個(gè)目標(biāo)地址對應(yīng)存儲器的同一實(shí)際地址,且不同容量的存儲器,N的值均不相同。進(jìn)一步的,所述多個(gè)不同目標(biāo)地址的個(gè)數(shù)至少為待測存儲器的容量級別的個(gè)數(shù),至多為2、所述M為待測的最小容量存儲器相對于配置容量的存儲器8的地址的無效位數(shù)。進(jìn)一步的,所述方法還包括在預(yù)先選擇的參考地址中寫入不同的數(shù)據(jù),所述參考地址均對應(yīng)不同容量存儲器的不同實(shí)際地址,且所述參考地址與所述目標(biāo)地址不重復(fù),其所述參考地址與所述目標(biāo)地址——對應(yīng),寫入所述參考地址中的數(shù)據(jù)與寫入對應(yīng)目標(biāo)地址中的數(shù)據(jù)相同。本發(fā)明的另一目的在于提供一種存儲器容量檢測裝置,旨在提高容量檢測方法的檢測效率以及提高檢測速度;所述裝置包括存儲控制器,存儲控制器對所述存儲器的地址進(jìn)行讀寫控制,存儲控制器準(zhǔn)備控制的地址為目標(biāo)地址,實(shí)際控制的地址為實(shí)際地址,所述裝置包括容量配置單元,用于配置存儲控制器的容量;目標(biāo)地址寫入單元,用于在預(yù)先選擇的多個(gè)不同目標(biāo)地址中寫入不同的數(shù)據(jù),所述多個(gè)不同目標(biāo)地址中N個(gè)目標(biāo)地址對應(yīng)存儲器的同一實(shí)際地址,且不同容量的存儲器,N的值均不相同;目標(biāo)地址讀取單元,用于從所述多個(gè)不同目標(biāo)地址中讀取數(shù)據(jù);容量檢測單元,用于根據(jù)所述目標(biāo)地址讀取單元從所述多個(gè)不同目標(biāo)地址數(shù)據(jù)來檢測待測存儲器的容量。在本發(fā)明實(shí)施例中,根據(jù)不同容量存儲器的內(nèi)部行列結(jié)構(gòu)的差別,通過在多個(gè)不同的目標(biāo)地址中寫入不同的數(shù)據(jù),再從上述目標(biāo)地址中讀取數(shù)據(jù),判斷效的檢測待測存儲器的容量,且本方法利用不同容量存儲器的內(nèi)部行列結(jié)構(gòu)進(jìn)行容量檢測,便于移植,適用于各種不同應(yīng)用場合。圖1是本發(fā)明實(shí)施例提供在嵌入式系統(tǒng)中SDRAM的訪問示意圖;圖2是本發(fā)明實(shí)施例提供的存儲器容量檢測方法的實(shí)現(xiàn)流程圖;圖3是本發(fā)明實(shí)施例提供的SDRAM容量檢測方法的實(shí)現(xiàn)流程圖;圖4是本發(fā)明實(shí)施例提供的存儲器容量檢測裝置的結(jié)構(gòu)框圖。具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。在本發(fā)明實(shí)施例中,對艮據(jù)不同容量SDRAM的內(nèi)部行列結(jié)構(gòu)的差別,通過在多個(gè)不同的目標(biāo)地址中寫入不同的數(shù)據(jù),再從上述目標(biāo)地址中讀取數(shù)據(jù),判斷從目標(biāo)地址中讀取的數(shù)據(jù)與寫入目標(biāo)地址中的數(shù)據(jù)是否相等,來檢測待測SDRAM的容量。其中多個(gè)不同的目標(biāo)地址中的N個(gè)地址對應(yīng)待測SDRAM的同一實(shí)際地址,且對于不同容量的SDRAM,N的值均不相同。其中不同容量SDRAM的內(nèi)部行列結(jié)構(gòu)的差別在于,不同容量的SDRAM的行和列的大小是不一樣的,表1.1示出了不同容量的8bit位寬和16bit位寬的SDRAM的內(nèi)部行列結(jié)構(gòu)表1,1<table>tableseeoriginaldocumentpage10</column></row><table>從表1.1可以得出,對于不同容量的SDRAM,其行地址或者列地址的長度均不相同,同時(shí),請參閱圖1,為嵌入式應(yīng)用系統(tǒng)中SDRAM的訪問示意圖。在嵌入式應(yīng)用系統(tǒng)中,需要通過SDRAM控制器才能對外部的SDRAM進(jìn)行訪問。其中通過SDRAM控制器訪問SDRAM的過程簡述如下CPU通過總線將對SDRAM的讀/寫命令傳輸至SDRAM控制器,SDRAM控制器對總線傳輸?shù)膶DRAM的讀/寫命令進(jìn)行譯碼,將對SDRAM的讀/寫命令轉(zhuǎn)化為對SDRAM的讀寫時(shí)序。在將對SDRAM的讀/寫命令轉(zhuǎn)化為對SDRAM的讀寫時(shí)序時(shí),預(yù)先在SDRAM控制器的相應(yīng)寄存器中配置SDRAM的容量信息,再才艮據(jù)預(yù)先配置的SDRAM的容量信息以及該容量的SDRAM的內(nèi)部行列結(jié)構(gòu),將總線傳輸?shù)淖x/寫地址分割成兩部分,一部分作為Bank地址和行地址,另一部分作為列地址,同時(shí)發(fā)出相應(yīng)的時(shí)序?qū)DRAM進(jìn)行訪問。在對SDRAM進(jìn)行讀寫操作時(shí),需要先發(fā)送激活命令以及需要激活的Bank和行地址,然后才可以發(fā)送針對該行的讀寫命令和列地址。根據(jù)表1.1所示的不同容量的SDRAM存儲的行列地址之間的差別以及SDRAM控制器訪問SDRAM的方式可以得出,當(dāng)預(yù)先在SDRAM控制器中相應(yīng)寄存器中配置好SDRAM的容量信息后,即可根據(jù)SDRAM控制器對總線傳輸?shù)牡刂返姆指罘绞揭约氨?.1所示的不同容量的SDRAM存儲的行列地址之間的差別,得到不同容量的SDRAM的行列地址與配置容量的SDRAM的行列地址之間的有效位和無效位的對應(yīng)關(guān)系。以128Mbit、16bit位寬的SDRAM為例它的行地址為A0AU,列地址為A0A8,如果將SDRAM控制器中的容量信息配置為521Mbit,則在輸入4亍地址時(shí),對于128Mbit容量的SDRAM來說,A12pin腳是無效的輸入pin腳,在輸入列地址時(shí),A9A12pin腳是無效的輸入pin腳,因此對于不同容量的SDRAM,可能出現(xiàn)多個(gè)不同地址對應(yīng)同一個(gè)存儲單元的情況。如假設(shè)將SDRAM控制器中的容量信息配置為512Mbit,由于256Mbit容量、128Mbit、64Mbit、16Mbit等小容量SDRAM的行列地址的長度比512Mbit容量的SDRAM的行列地址的長度短,從而使某些pin腳的輸入對于不同容量的liSDRAM來說,是無效的。因此,存在地址不相同,但在SDRAM里面實(shí)際對應(yīng)的是同一個(gè)存儲單元。其中不同容量SDRAM相對于預(yù)先配置容量的SDRAM的行列地址有效位和無效位的對應(yīng)關(guān)系如表1.2所示,其中"*,,表示該位輸入為無效,"x"表示該位輸入為有效表1.2<table>tableseeoriginaldocumentpage12</column></row><table>以下以外接128Mbit容量的SDRAM為例,對上面表格的信息進(jìn)行說明,假設(shè)預(yù)先將SDRAM控制器的容量信息配置為512Mbit,此時(shí)假設(shè)總線上發(fā)生的讀/寫地址為0x03800400,二進(jìn)制為11100000000000010000000000。此時(shí),根據(jù)表1.2中所示的行列地址有效位和無效位的對應(yīng)關(guān)系,得到如下SDRAM的響應(yīng)信息<table>tableseeoriginaldocumentpage12</column></row><table>無論"*"表示的位的輸入為1還是O,均對應(yīng)該128Mbit容量的SDRAM的同一地址,采用二進(jìn)制的地址來表示如下11*000000000000*0000000000=11000000000000000000000000=11100000000000000000000000=11000000000000010000000000=11100000000000010000000000采用十六進(jìn)制的地址來表示如下0x30000000=0x38000000=0x30000400=0x38000400也就是說,當(dāng)將SDRAM控制器中的容量配置為512Mbit時(shí),對于外接128Mbit容量的SDRAM來說,對地址0x03800400進(jìn)行讀/寫操作等于對地址0x03000000或者0x38000000或者0x30000400進(jìn)行讀/寫操作。綜上所述,當(dāng)預(yù)先將SDRAM控制器的容量信息配置好之后,根據(jù)表1.2所示的不同容量的SDRAM的地址有效位對應(yīng)關(guān)系,即可得到SDRAM控制器不同輸出地址與每一容量級別的SDRAM的同一實(shí)際地址之間的對應(yīng)關(guān)系。如當(dāng)預(yù)先將SDRAM控制器的容量信息配置為512Mbit時(shí),根據(jù)表1.2所示的不同容量的SDRAM的地址有效位對應(yīng)關(guān)系,可以得到對于256Mbit容量的SDRAM來說,SDRAM控制器的兩個(gè)不同輸出地址OOxxxxxxxxxxxOOxxxxxxxxx和OOxxxxxxxxxxxlOxxxxxxxxx只十應(yīng)256Mbit容量的SDRAM的同一實(shí)際地址,其中兩個(gè)地址中相同位的x取相同的值,不同位的x可以取相同的值,也可以取不同的值。依此類推,根據(jù)表1.2所示的不同容量的SDRAM的地址有效位對應(yīng)關(guān)系,均可以得到SDRAM控制器的不同輸入地址與每一容量級別的SDRAM的同一實(shí)際地址之間的對應(yīng)關(guān)系,詳見下表1.3。表1.3SDRAM控制器的不同輸出地址SDRAM的同一實(shí)際地址256MbitO()xxxxxxxxxxxOOxxxxxxxxx()Oxxxxxxxxxxx〗Oxxxxxxxxx0OxxxxxxxxxxxO0xxxxxxxxx01xxxxxxxxxxxOOxxxxxxxxx0ixxxxxxxxxxx1OxxxxxxxxxO一鹿x函xx雄腿1OxxxxxxxxxxxOOxxxxxxxxx■1()xxxxxxxxxxxlOxxxxxxxxx販萌獄x函x皿xxx11xxxxxxxxxxxOOxxxxxxxxxJ.〗xxxxxxxxxxxlOxxxxxxxxx11xxxxxxxxxxxOOxxxxxxxxx0OxxxxxxxxxxxO1xxxxxxxxx0OxxxxxxxxxxxO1xxxxxxxxx01.xxxxxxxxxxxO1xxxxxxxxx01xxxxxxxxxxx!■1xxxxxxxxx01.xxxxxxxxxxxO:!xxxxxxxxx■1(.)xxxxxxxxxxx;!■xxxxxxxxx1OxxxxxxxxxxxO1xxxxxxxxx〗1xxxxxxxxxxxO1xxxxxxxxx11xxxxxxxxxxxO!xxxxxxxxx<table>tableseeoriginaldocumentpage14</column></row><table><table>tableseeoriginaldocumentpage15</column></row><table>該表1.3中,對于256Mbit容量的SDRAM來說,每一組SDRAM控制器的兩個(gè)不同輸出地址對應(yīng)256Mbit容量的SDRAM的同一實(shí)際地址,且這樣的地址組有8組;對于128Mbit容量的SDRAM來說,每一組SDRAM控制器的四個(gè)不同輸出地址對應(yīng)128Mbit容量的SDRAM的同一實(shí)際地址,且這樣的地址組有4組;對于64Mbit容量的SDRAM來說,每一組SDRAM控制器的八個(gè)不同輸出地址對應(yīng)64Mbit容量的SDRAM的同一實(shí)際地址,且這樣的地址組有2組;對于16Mbit容量的SDRAM來說,每一組SDRAM控制器的十六個(gè)不同輸出地址對應(yīng)16Mbit容量的SDRAM的同一實(shí)際地址,且這樣的地址組有1組。為了便于說明,在本發(fā)明實(shí)施例中,將SDRAM控制器的不同輸出地址對應(yīng)某容量SDRAM的同一實(shí)際地址的地址組稱為同一實(shí)際地址組。對于不同容量的SDRAM來說,同一實(shí)際地址組中每個(gè)地址的相同地址位中的x取相同的值,不同地址位中的x可以取相同值,也可以取不同值。當(dāng)SDRAM控制器對同一實(shí)際地址組中的其中一個(gè)地址進(jìn)行讀寫操作時(shí),相當(dāng)于對同一實(shí)際地址組中的其他地址進(jìn)行讀寫操作。由于對于不同容量SDRAM來說,同一實(shí)際地址組中的地址均不完全相同,因此可以通過在這些地址中寫入數(shù)據(jù),再從這些地址中讀取數(shù)據(jù),根據(jù)讀取的數(shù)據(jù)是否等于寫入的數(shù)據(jù)來檢測SDRAM的容量。本發(fā)明正是利用了嵌入式應(yīng)用中SDRAM的訪問特性和內(nèi)部行列結(jié)構(gòu),從上述同一實(shí)際地址組中選擇多個(gè)目標(biāo)地址,通過在選擇的目標(biāo)地址中寫入數(shù)據(jù),再從目標(biāo)地址中讀取數(shù)據(jù),判斷讀取的數(shù)據(jù)是否等于寫入的數(shù)據(jù)來快速4全測SDRAM的容量的。其中多個(gè)目標(biāo)地址的選擇標(biāo)準(zhǔn)如下多個(gè)目標(biāo)地址中的N個(gè)地址對應(yīng)SDRAM的同一實(shí)際地址,且對于不同容量的SDRAM,N的值均不相同。其中目標(biāo)地址的個(gè)數(shù)最少為待測SDRAM的容量級別數(shù),最多為2M個(gè),其中M為待測最小容量的SDRAM相對于配置容量的SDRAM的地址的無效位數(shù)。如當(dāng)SDRAM控制器中配置的容量為512Mbit時(shí),'如果待測SDRAM的容量級別包括5個(gè)容量級別,分別為512Mbit、256Mbit、128Mbit、64Mbit和16Mbit,則至少選擇5個(gè)不同的目標(biāo)地址,根據(jù)表1.2所示的不同容量SDRAM的地址有效位對應(yīng)關(guān)系,由于16Mbit容量的SDRAM與512Mbit容量存^f諸器之間的地址無效位為4位,因此,至多可以選4奪24=16個(gè)不同的目標(biāo)地址。在本示例中,以選擇5個(gè)不同的目標(biāo)地址為例,進(jìn)行說明,選擇的5個(gè)目標(biāo)地址中每一個(gè)目標(biāo)地址均對應(yīng)512Mbit容量的SDRAM的不同實(shí)際地址,且5個(gè)目標(biāo)地址中兩個(gè)目標(biāo)地址對應(yīng)256Mbit容量的SDRAM的同一實(shí)際地址,其余目標(biāo)地址均對應(yīng)256Mbit容量的SDRAM的不同實(shí)際地址,且5個(gè)目標(biāo)地址中三個(gè)目標(biāo)地址對應(yīng)128Mbit容量的SDRAM的同一實(shí)際地址,其余目標(biāo)地址均對應(yīng)128Mbit容量的SDRAM的不同實(shí)際地址,且5個(gè)目標(biāo)地址中四個(gè)目標(biāo)地址對應(yīng)64Mbit容量的SDRAM的同一實(shí)際地址,其余目標(biāo)地址均對應(yīng)64Mbit容量的SDRAM的不同實(shí)際地址,且5個(gè)目標(biāo)地址中五個(gè)目標(biāo)地址均對應(yīng)16Mbit容量的SDRAM的同一實(shí)際地址。根據(jù)上述示例以及表1.3所示的不同容量的SDRAM的同一實(shí)際地址組,該5個(gè)目標(biāo)地址可以根據(jù)如下標(biāo)準(zhǔn)進(jìn)行選擇,選擇256Mbit容量的SDRAM的其中一組同一實(shí)際地址組,包括兩個(gè)不同地址,再從128Mbit容量的SDRAM的包括已選擇的兩個(gè)地址的同一實(shí)際地址組中選擇一個(gè)地址,此時(shí),已選擇了三個(gè)目標(biāo)地址,接著從64Mbit容量的SDRAM的包括已選擇的三個(gè)地址的同一實(shí)際地址組中選擇一個(gè)地址,此時(shí),已選擇四個(gè)目標(biāo)地址表1.4或者表1.5中的地址,最后在16Mbit容量的SDRAM的包括已選4奪的四個(gè)目標(biāo)地址的同一實(shí)際地址組中選擇一個(gè)地址,此時(shí),5個(gè)目標(biāo)地址選擇完畢。按照上述選擇標(biāo)準(zhǔn)選擇的5個(gè)目標(biāo)地址可以如表1.4和表1.5所示,當(dāng)然該5個(gè)目標(biāo)地址不以表1.416和表1.5所示的為限,可以根據(jù)表1.3以及上述的選擇標(biāo)準(zhǔn)任意選擇。表].4<table>tableseeoriginaldocumentpage17</column></row><table>其中表1.4和表1.5中的五個(gè)目標(biāo)地址中相同地址位的x取相同的值(均為0或者均為1),不同地址位的x可以取相同的值,也可以取不同的值。圖2示出了本發(fā)明實(shí)施例提供的存儲器容量檢測方法的實(shí)現(xiàn)流程,詳述如下在步驟S201中,配置存儲控制器的容量。在本發(fā)明實(shí)施例中,在配置存儲控制器的容量時(shí),可以將存儲控制器的容量配置成任何容量,如512Mbit、256Mbit等。由于存儲控制器在對總線傳輸?shù)淖x/寫地址進(jìn)行譯碼時(shí),是根據(jù)預(yù)先配置的存儲控制器的容量的內(nèi)部行列結(jié)構(gòu)進(jìn)行的,根據(jù)表1.2所示的不同容量的SDRAM的地址有效位的對應(yīng)關(guān)系,當(dāng)將SDRAM控制器的容量配置為512Mbit時(shí),只能檢測出容量小于或者等于512Mbit的SDRAM的容量,因此,在配置SDRAM控制器的容量時(shí),可以根據(jù)SDRAM容量檢測的需要,合理的配置。在步驟S202中,在預(yù)先選擇的多個(gè)不同目標(biāo)地址中寫入不同的數(shù)據(jù)。預(yù)先選擇多個(gè)目標(biāo)地址的標(biāo)準(zhǔn)和依據(jù)如上所述,在此不再贅述。其中預(yù)先選擇的多個(gè)不同目標(biāo)地址中N個(gè)目標(biāo)地址對應(yīng)SDRAM的同一實(shí)際地址,且對于不同容量的SDRAM,N的值均不相同。其中多個(gè)不同的目標(biāo)地址的個(gè)數(shù)最少為待測SDRAM的容量級別數(shù),最多為2M個(gè),其中M為待測最小容量的SDRAM與配置容量的SDRAM的地址的無效位數(shù)。在本發(fā)明實(shí)施例中,為了便于比較寫入的同一地址中的數(shù)據(jù)是否等于從同一地址中讀取的數(shù)據(jù),預(yù)先在參考地址中寫入與目標(biāo)地址中相同的數(shù)據(jù),其中參考地址的個(gè)數(shù)與選擇的多個(gè)不同目標(biāo)地址的個(gè)數(shù)相同,且參考地址對應(yīng)不同容量SDRAM的不同目標(biāo)地址,且參考地址與多個(gè)不同目標(biāo)地址均不相同。在步驟S203中,從上述多個(gè)不同目標(biāo)地址中讀取數(shù)據(jù)。在步驟S204中,根據(jù)讀取的數(shù)據(jù)是否等于寫入的數(shù)據(jù)來檢測存儲器的容量。在本發(fā)明實(shí)施例中,由于多個(gè)不同目標(biāo)地址中N個(gè)目標(biāo)地址對應(yīng)SDRAM的同一實(shí)際地址,且對于不同容量的SDRAM,N的值均不相同,.因此,對該N個(gè)目標(biāo)地址的讀取和寫入操作均是對SDRAM的同一實(shí)際地址進(jìn)行讀取和寫入操作,從而通過判斷多個(gè)目標(biāo)地址中哪些地址中讀取與寫入的數(shù)據(jù)相同,哪些地址中讀取與寫入數(shù)據(jù)不相同,即可判斷SDRAM的容量。在本發(fā)明另一實(shí)施例中,該方法還包括下述步驟才艮據(jù)從多個(gè)目標(biāo)地址中讀取的數(shù)據(jù)與寫入多個(gè)目標(biāo)地址中的數(shù)據(jù)之間的相等關(guān)系判斷SDRAM容量檢測是否出錯(cuò)。明,如果待測SDRAM的容量包括512Mbit、256Mbit、128Mbit、64Mbit和16Mbit,則根據(jù)以上描述可知,需要將SDRAM控制器的容量信息配置為512Mbit或者更大容量,至少選擇五個(gè)目標(biāo)地址,且對于每個(gè)容量級別的SDRAM來說,五個(gè)目標(biāo)地址中對應(yīng)每個(gè)容量級別的SDRAM的同一實(shí)際地址的地址個(gè)數(shù)均不相同。在本示例中,選擇的參考地址為0x00000000、0x00000002、0x00000004、0x00000006和0x00000008,選擇的五個(gè)目標(biāo)地址分別為0x003ff9fe、0x007ff9fe、0x007ffbfe、OxOOfffbfe和OxOOfffffe,其中五個(gè)目標(biāo)地址均對應(yīng)16Mbit容量的SDRAM的同一實(shí)際地址,且五個(gè)目標(biāo)地址中0x007ff9fe、0x007ffbfe、OxOOfffbfe和OxOOfffffe均對應(yīng)64Mbit容量的SDRAM的同一實(shí)際地址,且五個(gè)目標(biāo)地址中0x007ffbfe、OxOOfffbfe和OxOOfffffe均對應(yīng)128Mbit容量的SDRAM的同一實(shí)際地址,且五個(gè)目標(biāo)地址中OxOOfffbfe和OxOOfffffe均對應(yīng)256Mbit容量的SDRAM的同一實(shí)際地址,且五個(gè)目標(biāo)地址均對應(yīng)512Mbit容量的SDRAM的不同實(shí)際地址。圖3示出了本發(fā)明實(shí)施例提供的SDRAM容量檢測方法的實(shí)現(xiàn)流程,詳述如下在步驟S301中,將SDRAM控制器的容量信息配置為5l2Mbit,并向待測SDRAM的參考地址中分別寫入不同的數(shù)據(jù)。在本發(fā)明實(shí)施例中,先將SDRAM控制器的容量信息配置為512Mbit,再向預(yù)先選擇的參考地址0x00000000中寫入1,在參考地址0x00000002中寫入2,在參考地址0x00000004中寫入3,在參考地址OxOOOOOOO6中寫入4在參考地址0x00000008中寫入5。在步驟S302中,在待測SDRAM的目標(biāo)地址中寫入與參考地址對應(yīng)的數(shù)據(jù)。在本發(fā)明實(shí)施例中,在待測SDRAM的目標(biāo)地址0x003ff9fe中寫入1,在0x007ff9fe中寫入2,在0x007ffbfe中寫入3,在OxOOfffbfe中寫入4,在OxOOfffffe中寫入5。當(dāng)待測SDRAM的容量為16Mbit時(shí),由于五個(gè)目標(biāo)地址0x003ff9fe、0x007ff9fe、0x007ffbfe、OxOOfffbfe和OxOOfffffe均對應(yīng)16Mbit容量的SDRAM的同一實(shí)際地址,,人而經(jīng)步驟S302后,待測SDRAM的0x003ff9fe、0x007ff9fe、0x007ffbfe、0x00fffbfe和0x00fffffe五個(gè)地址中的數(shù)據(jù)均為5;當(dāng)待測SDRAM的容量為64Mbit時(shí),由于五個(gè)目標(biāo)地址中0x007ff9fe、0x007ffbfe、0x00fffbfe和0x00fffffe均對應(yīng)64Mbit容量的SDRAM的同一實(shí)際地址,從而經(jīng)步驟S302后,待測SDRAM的0x003ff9fe地址中的數(shù)據(jù)為1,0x007ffe、0x007ffbfe、0x00fffbfe和0x00fffffe地址中的數(shù)據(jù)均為5;當(dāng)待測SDRAM的容量為128Mbit時(shí),由于五個(gè)目標(biāo)地址中0x007ffbfe、0x00fffbfe和0x00fffffe均對應(yīng)128Mbit容量的SDRAM的同一實(shí)際地址,從而經(jīng)步驟S302后,待測SDRAM的0x003ff9fe地址中的數(shù)據(jù)為1,0x007ff9fe地址中的數(shù)據(jù)為2,0x007ffbfe、0x00fffbfe和0x00fffffe地址中的數(shù)據(jù)均為5;當(dāng)待測SDRAM的容量為256Mbit時(shí),由于五個(gè)目標(biāo)地址中0x00fffbfe和0x00fffffe均對應(yīng)256Mbit容量的SDRAM的同一實(shí)際地址,從而經(jīng)步驟S302后,待測SDRAM的0x003ff9fe地址中的數(shù)據(jù)為1,0x00"f9fe地址中的數(shù)據(jù)為2,0x007ffbfe地址中的數(shù)據(jù)為3,0x00fffbfe和0x00fffffe地址中的數(shù)據(jù)均為當(dāng)待測SDRAM的容量為512Mbit時(shí),由于五個(gè)目標(biāo)地址均對應(yīng)512Mbit容量的SDRAM的不同實(shí)際地址,從而經(jīng)步驟S302后,待測SDRAM的0x003ff9fe地址中的數(shù)據(jù)為1,0x007ff9fe地址中的H據(jù)為2,0x0(T7ffbfe地址中的數(shù)據(jù)為3,OxOOfffbfe地址中的數(shù)據(jù)為4,0x00fffffe地址中的數(shù)據(jù)均為5。在步驟S303中,從待測SDRAM的目標(biāo)地址0x003ff9fe中讀取數(shù)據(jù)并將讀取的數(shù)據(jù)賦給A,同時(shí)從待測SDRAM的參考地址0x00000000中讀取數(shù)據(jù),并將讀取的數(shù)據(jù)賦給B。在本發(fā)明實(shí)施例中,如果待測SDRAM的容量為16Mbit,則經(jīng)步驟S303后,A的值為5,B的值為l;如果待測SDRAM的容量為64Mbit、128Mbit、256Mbit或者512Mbit。則經(jīng)步驟S303后,A的值為l,B的值為1。在步驟S304中,判斷A是否等于B,如果是,則執(zhí)行步驟S305,如果否,則判定待測SDRAM的容量為16Mbit。在本發(fā)明實(shí)施例中,在從讀舉4寺測SDRAM的目標(biāo)地址0x003ff9fe中讀取數(shù)據(jù)時(shí),同時(shí)分別從待測SDRAM的目標(biāo)地址0x007ff9fe、0x007ffbfe、0x00fffbfe和0x00fffffe中讀取數(shù)據(jù),同時(shí)從待測SDRAM的參考地址0x00000008中讀取數(shù)據(jù),并判斷從待測SDRAM的目標(biāo)地址0x007ff9fe、0x007ffbfe、0x00fffbfe和0x00fffffe中讀:f又?jǐn)?shù)據(jù)是否均等于從待測SDRAM的參考地址0x00000008中讀取數(shù)據(jù),如果是,則SDRAM檢測未出錯(cuò),如果否,則SDRAM容量檢測出錯(cuò),提示用戶檢查SDRAM的PCB連接是否正?;蛘咛崾居脩魴z查其他引起SDRAM訪問出4晉的因素。在步驟S305中,從待測SDRAM的目標(biāo)地址0x007ff9fe中讀取數(shù)據(jù)并將讀取的數(shù)據(jù)賦給A,同時(shí)從待測SDRAM的參考地址0x00000002中讀取數(shù)據(jù),并將讀取的數(shù)據(jù)賦給B。在本發(fā)明實(shí)施例中,如果待測SDRAM的容量為16Mbit、或6々Mbit,則經(jīng)步驟S305后,A的值為5,B的值為2;如果待測SDRAM的容量為l"Mbit、256Mbit或者512Mbit。則經(jīng)步驟S305后,A的值為2,B的值為2。在步驟S306中,判斷A是否等于B,如果是,則執(zhí)行步驟S307,如果否,則判定待測SDRAM的容量為64Mbit。在本發(fā)明實(shí)施例中,在從讀取待測SDRAM的目標(biāo)地址0x007ff9fe中讀取數(shù)據(jù)時(shí),同時(shí)分別從待測SDRAM的目標(biāo)地址0x007ffbfe、0x00fffbfe和0x00fffffe中讀取數(shù)據(jù),同時(shí)從待測SDRAM的參考地址0x00000008中讀取數(shù)據(jù),并判斷從待測SDRAM的目標(biāo)地址0x007ffbfe、0x00fffbfe和0x00fffffe中讀取數(shù)據(jù)是否均等于從待測SDRAM的參考地址0x00000008中讀取數(shù)據(jù),如果是,則SDRAM檢測未出錯(cuò),如果否,則SDRAM容量沖企測出錯(cuò),提示用戶檢查SDRAM的PCB連接是否正?;蛘咛崾居脩魴z查其他引起SDRAM訪問出錯(cuò)的因素。在步驟S307中,從待測SDRAM的目標(biāo)地址0x007ffbfe中讀取數(shù)據(jù)并將讀取的數(shù)據(jù)賦給A,同時(shí)從待測SDRAM的參考地址0x00000004中讀取數(shù)據(jù),并將讀取的數(shù)據(jù)賦給B。在本發(fā)明實(shí)施例中,如果待測SDRAM的容量為16Mbit、64Mbit、128Mbit,則經(jīng)步驟S307后,A的值為5,B的值為3;如果待測SDRAM的容量為256Mbit或者512Mbit。則經(jīng)步驟S307后,A的值為3,B的值為3。在步驟S308中,判斷A是否等于B,如果是,則4丸行步驟S309,如果否,則判定待測SDRAM的容量為128Mbit。在本發(fā)明實(shí)施例中,在從讀取待測SDRAM的目標(biāo)地址0x007ffbfe中讀取數(shù)據(jù)時(shí),同時(shí)分別從待測SDRAM的目標(biāo)地址OxOOfffbfe和OxOOfffffe中讀取數(shù)據(jù),同時(shí)從待測SDRAM的參考地址0x00000008中讀取^數(shù)據(jù),并判斷從待測SDRAM的目標(biāo)地址OxOOfffbfe和OxOOfffffe中讀:f又?jǐn)?shù)據(jù)是否均等于從待測SDRAM的參考地址0x00000008中讀取數(shù)據(jù),如果是,則SDRAM檢測未出錯(cuò),如果否,則SDRAM容量檢測出錯(cuò),提示用戶檢查SDRAM的PCB連接是否正?;蛘咛崾居脩魴z查其他S1起SDRAM訪問出錯(cuò)的因素。在步驟S309中,從待測SDRAM的目標(biāo)地址OxOOfffbfe中讀取數(shù)據(jù)并將讀取的數(shù)據(jù)賦給A,同時(shí)從待測SDRAM的參考地址0x00000006中讀取數(shù)據(jù),并將讀取的數(shù)據(jù)賦給B。在本發(fā)明實(shí)施例中,如果待測SDRAM的容量為16Mbit、64Mbit、128Mbit或256Mbit,則經(jīng)步驟S309后,A的值為5,B的值為4;如果待測SDRAM的容量為512Mbit。則經(jīng)步驟S309后,A的值為4,B的值為4。在步驟S3010中,判斷A是否等于B,如果是,則執(zhí)行步驟S3011,如果否,則判定待測SDRAM的容量為256Mbit。在本發(fā)明實(shí)施例中,在從讀取待測SDRAM的目標(biāo)地址OxOOfffbfe中讀取數(shù)據(jù)時(shí),同時(shí)從待測SDRAM的目標(biāo)地址OxOOfffffe中讀取數(shù)據(jù),同時(shí)從待測SDRAM的參考地址0x00000008中讀取數(shù)據(jù),并判斷從待測SDRAM的目標(biāo)地址OxOOfffffe中讀取數(shù)據(jù)是否等于從待測SDRAM的參考地址OxOOOOOOO8中讀取數(shù)據(jù),如果是,則SDRAM檢測未出錯(cuò),如果否,則SDRAM容量檢測出錯(cuò),提示用戶檢查SDRAM的PCB連接是否正?;蛘咛崾居脩魴z查其他引起SDRAM訪問出錯(cuò)的因素。在步驟S3011中,從待測SDRAM的目標(biāo)地址0x00fffffe中讀取數(shù)據(jù)并將讀取的數(shù)據(jù)賦給A,同時(shí)從待測SDRAM的參考地址0x00000008中讀取數(shù)據(jù),并將讀取的數(shù)據(jù)賦給B。在步驟S3012中,判斷A是否等于B,如果是,則判定待測SDRAM的容量為512Mbit,如果不是,則判定SDRAM容量纟全測出錯(cuò)j是示用戶檢查SDRAM的PCB連接是否正常或者提示用戶檢查其他引起SDRAM訪問出錯(cuò)的因素。圖4示出了本發(fā)明實(shí)施例提供的存儲器容量檢測裝置的結(jié)構(gòu),為了便于說明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。該存儲器容量檢測裝置可以是內(nèi)置于控制器中的軟件單元、硬件單元或者軟硬件相結(jié)合的單元,也可以作為獨(dú)立的桂件集成到存儲控制器中或者存儲控制器的應(yīng)用系統(tǒng)中。其中容量配置單元41配置存儲控制器的容量。在本發(fā)明實(shí)施例中,以SDRAM控制器為例進(jìn)行說明。在配置SDRAM控制器的容量時(shí),可以將SDRAM控制器的容量配置成任何容量,如512Mbit、256Mbit等。由于SDRAM控制器在對總線傳輸?shù)淖x/寫地址進(jìn)行譯碼時(shí),是根據(jù)預(yù)先配置的SDRAM控制器的容量的內(nèi)部行列結(jié)構(gòu)進(jìn)行的,根據(jù)表1.2所示的不同容量的SDRAM的地址有效位的對應(yīng)關(guān)系,當(dāng)將SDRAM控制器的容量配置為512Mbit時(shí),只能檢測出容量小于或者等于512Mbit的SDRAM的容量,因此,在配置SDRAM控制器的容量時(shí),可以根據(jù)SDRAM容量檢測的需要,合理的配置。目標(biāo)地址寫入單元42在預(yù)先選擇的多個(gè)不同目標(biāo)地址中寫入不同的數(shù)據(jù)。其中多個(gè)不同的目標(biāo)地址中N個(gè)目標(biāo)地址對應(yīng)SDRAM的同一實(shí)際地址,且對于不同容量的SDRAM,N的值均不相同。其中多個(gè)不同的目標(biāo)地址的個(gè)數(shù)最少為待測SDRAM的容量級別數(shù),最多為2M個(gè),其中M為待測最小容量的SDRAM與配置容量的SDRAM的地址的無效位凄丈。目標(biāo)地址讀取單元43從上述多個(gè)不同目標(biāo)地址中讀取數(shù)據(jù)。容量檢測單元44根據(jù)目標(biāo)地址讀取單元43讀取的數(shù)據(jù)是否等于目標(biāo)地址寫入單元42寫入的數(shù)據(jù)來檢測SDRAM的容量。在本發(fā)明實(shí)施例中,由于多個(gè)不同目標(biāo)地址中N個(gè)目標(biāo)地址對應(yīng)SDRAM的同一實(shí)際地址,且對于不同容量的SDRAM,N的值均不相同,因此,對該N個(gè)目標(biāo)地址的讀取和寫入操作均是對SDRAM的同一實(shí)際地址進(jìn)行讀耳又和寫入操作,/人而通過判斷多個(gè)目標(biāo)地址中哪些地址中讀取與寫入的數(shù)據(jù)相同,哪些地址中讀取與寫入數(shù)據(jù)不相同,即可判斷SDRAM的容量。在本發(fā)明另一實(shí)施例中,該裝置還包括檢測出錯(cuò)判斷單元45根據(jù)目標(biāo)地址讀取單元43從多個(gè)目標(biāo)地址中讀取的數(shù)據(jù)與目標(biāo)地址寫入單元42寫入多個(gè)目標(biāo)地址中的數(shù)據(jù)之間的相等關(guān)系判斷SDRAM容量檢測是否出錯(cuò)??梢岳斫?,上述SDRAM容量檢測方法和SDRAM容量4全測裝置可用于4企測任何與SDRAM具有相同或者相似內(nèi)部行列結(jié)構(gòu)的其他存儲器(如DDR、DDR2、DDR3等)的容量,由于采用上述SDRAM容量檢測方法和SDRAM容量檢測裝置檢測與SDRAM具有相同或者相似內(nèi)部行列結(jié)構(gòu)的其他存儲器的容量的過程與檢測SDRAM的容量的過程一致,在此不再贅述。在本發(fā)明實(shí)施例中,利用不同容量SDRAM的內(nèi)部行列結(jié)構(gòu)的差異,在多個(gè)不同的目標(biāo)地址中寫入不同的數(shù)據(jù),再從上述目標(biāo)地址中讀取數(shù)據(jù),判斷從目標(biāo)地址中讀取的數(shù)據(jù)與寫入目標(biāo)地址中的數(shù)據(jù)是否相等,來^r測待測SDRAM的容量,從而可以方便的移植到各種不同應(yīng)用場合來檢測SDRAM的容量。由于需要訪問的目標(biāo)地址的數(shù)量較少,從而提高了SDRAM的容量檢測速度和效率。同時(shí)通過根據(jù)從目標(biāo)地址中讀取的數(shù)據(jù)與寫入目標(biāo)地址中的數(shù)據(jù)之間的相等關(guān)系,可以快速的判斷容量檢測是否出錯(cuò)。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。權(quán)利要求1、一種存儲器容量檢測方法,所述容量檢測的裝置包括存儲控制器,存儲控制器對所述存儲器的地址進(jìn)行讀寫控制,所述存儲器的地址包括行地址和列地址,存儲控制器準(zhǔn)備控制的地址為目標(biāo)地址,實(shí)際控制的地址為實(shí)際地址,其特征在于,所述方法包括配置存儲控制器的容量;在預(yù)先選擇的多個(gè)不同目標(biāo)地址中寫入不同的數(shù)據(jù),所述多個(gè)不同目標(biāo)地址中N個(gè)目標(biāo)地址對應(yīng)存儲器的同一實(shí)際地址,且不同容量的存儲器,N的值均不相同;從所述多個(gè)不同目標(biāo)地址中讀取數(shù)據(jù);根據(jù)從所述多個(gè)不同目標(biāo)地址中讀取的數(shù)據(jù)是否等于寫入所述多個(gè)不同目標(biāo)地址中的數(shù)據(jù)來檢測待測存儲器的容量。2、如權(quán)利要求l所述的方法,其特征在于,預(yù)先選擇的多個(gè)不同目標(biāo)地址的步驟進(jìn)一步包括根據(jù)配置的存儲控制器的容量以及不同容量存儲器之間的內(nèi)部行列結(jié)構(gòu)的差異,得到不同容量存儲器的行列地址與配置容量的存儲器的行列地址之間的有效^立和無歲文^i的^f應(yīng)關(guān)系;根據(jù)不同容量存儲器的行列地址與配置容量存儲器的行列地址之間的有效位和無效位的對應(yīng)關(guān)系,得到不同容量存儲器的同一實(shí)際地址組;根據(jù)不同容量存儲器的同一實(shí)際地址組選擇多個(gè)目標(biāo)地址,所述多個(gè)不同目標(biāo)地址中N個(gè)目標(biāo)地址對應(yīng)存儲器的同一實(shí)際地址,且不同容量的存儲器,N的值均不相同。3、如權(quán)利要求2所述的方法,其特征在于,所述多個(gè)不同目標(biāo)地址的個(gè)數(shù)至少為待測存儲器的容量級別的個(gè)數(shù),至多為2、所述M為待測的最小容量存儲器相對于配置容量的存儲器的地址的無效位數(shù)。4、如權(quán)利要求l所述的方法,其特征在于,所述方法還包括在預(yù)先選擇的參考地址中寫入不同的數(shù)據(jù),所述參考地址均對應(yīng)不同容量存儲器的不同實(shí)際地址,且所述參考地址與所述目標(biāo)地址不重復(fù),其所述參考址中的數(shù)據(jù)相同。5、如權(quán)利要求4所述的方法,其特征在于,在配置存儲控制器的容量時(shí),將存儲控制器的容量配置為512Mbit。6、如權(quán)利要求5所述的方法,其特征在于,所述預(yù)先選擇的多個(gè)不同目標(biāo)地址的個(gè)數(shù)為五個(gè),所述五個(gè)目標(biāo)地址均對應(yīng)16Mbit容量的存儲器的同一實(shí)際地址,且所述五個(gè)目標(biāo)地址中四個(gè)目標(biāo)地址對應(yīng)64Mbit容量的存J諸器的同一實(shí)際地址,且所述五個(gè)目標(biāo)地址中三個(gè)目標(biāo)地址對應(yīng)128Mbit容量的存儲器的同一實(shí)際地址,且所述五個(gè)目標(biāo)地址中兩個(gè)目標(biāo)地址對應(yīng)256Mbit容量的存4諸器的同一實(shí)際地址,且所述五個(gè)目標(biāo)地址均對應(yīng)512Mbit容量的不同實(shí)際地址。7、如權(quán)利要求6所述的方法,其特征在于,所述五個(gè)目標(biāo)地址分別為OOxxxxxxxxxxxOOxxxxxxxx、OlxxxxxxxxxxxOOxxxxxxxx、OlxxxxxxxxxxxOlxxxxxxxx、1lxxxxxxxxxxx01xxxxxxxx、1lxxxxxxxxxxxllxxxxxxxx,所述五個(gè)目標(biāo)地址中相同地址位的X取相同的值,不同地址位的x取相同的值或者不同的值。8、如權(quán)利要求7所述的方法,其特征在于,所述步驟從所述多個(gè)不同目標(biāo)地址中讀取數(shù)據(jù),根據(jù)從所述多個(gè)不同目標(biāo)地址中讀取的數(shù)據(jù)是否等于寫入所述多個(gè)不同目標(biāo)地址中的數(shù)據(jù)來檢測待測存儲器的容量的步驟進(jìn)一步包括從所述目標(biāo)地址OOxxxxxxxxxxxOOxxxxxxxx中讀耳又?jǐn)?shù)據(jù);當(dāng)從所述目標(biāo)地址OOxxxxxxxxxxxOOxxxxxxxx中讀取的數(shù)據(jù)與寫入所述目標(biāo)地址OOxxxxxxxxxxxOOxxxxxxxx中的數(shù)據(jù)不相同時(shí),則判定待測存儲器的容量為16Mbit;當(dāng)從所述目標(biāo)地址OOxxxxxxxxxxxOOxxxxxxxx中讀取的數(shù)據(jù)與寫入所述目標(biāo)地址OOxxxxxxxxxxxOOxxxxxxxx中的數(shù)據(jù)相同時(shí),從所述目標(biāo)地址01xxxxxxxxxxx00xxxxxxxx讀耳又?jǐn)?shù)據(jù);當(dāng)從所述目標(biāo)地址01xxxxxxxxxxx00xxxxxxxx讀取的數(shù)據(jù)與寫入所述目標(biāo)地址01xxxxxxxxxxx00xxxxxxxx不相同時(shí),判定待測存儲器的容量為64Mbit;地址01xxxxxxxxxxx00xxxxxxxx相同時(shí),/人所述目標(biāo)地址01xxxxxxxxxxxO1xxxxxxxx讀耳又?jǐn)?shù)據(jù);當(dāng)從所述目標(biāo)地址01xxxxxxxxxxxOlxxxxxxxx讀取的數(shù)據(jù)與寫入所述目標(biāo)地址01xxxxxxxxxxxOlxxxxxxxx不相同時(shí),判定待測存儲器的容量為128Mbit;當(dāng)從所述目標(biāo)地址01xxxxxxxxxxxOlxxxxxxxx讀取的數(shù)據(jù)與寫入所述目標(biāo)地址01xxxxxxxxxxxOlxxxxxxxx相同時(shí),從所述目標(biāo)地址11xxxxxxxxxxxOlxxxxxxxx讀取數(shù)據(jù);當(dāng)從所述目標(biāo)地址1lxxxxxxxxxxx01xxxxxxxx讀取的數(shù)據(jù)與寫入所述目標(biāo)地址llxxxxxxxxxxxOlxxxxxxxx不相同時(shí),判定待測存儲器的容量為256Mbit;當(dāng)乂人所述目才示i也址11xxxxxxxxxxxOlxxxxxxxx讀耳又的凄t4居與寫入所述目才示地址11xxxxxxxxxxxOlxxxxxxxx相同時(shí),從所述目標(biāo)地址Ilxxxxxxxxxxxllxxxxxxxx讀耳又?jǐn)?shù)振;當(dāng)從所述目標(biāo)地址1lxxxxxxxxxxxllxxxxxxxx讀耳又的數(shù)據(jù)與寫入所述目標(biāo)地址1lxxxxxxxxxxxllxxxxxxxx相同時(shí),判定待測存儲器的容量為512Mbit。9、如權(quán)利要求8所述的方法,其特征在于,在從所述目標(biāo)地址OOxxxxxxxxxxxOOxxxxxxxx中讀取數(shù)據(jù)時(shí),從所述目標(biāo)地址OlxxxxxxxxxxxOOxxxxxxxx、01xxxxxxxxxxxOlxxxxxxxx、IIxxxxxxxxxxxO1xxxxxxxx、11xxxxxxxxxxx11xxxxxxxx中讀耳又?jǐn)?shù)據(jù),當(dāng)從所述目標(biāo)地址OlxxxxxxxxxxxOOxxxxxxxx、01xxxxxxxxxxxOlxxxxxxxx、等于寫入所述目標(biāo)地址1lxxxxxxxxxxxllxxxxxxxx中的數(shù)據(jù)時(shí),判定存儲器容量檢測出錯(cuò)。10、如權(quán)利要求8所述的方法,其特征在于,在從所述目標(biāo)地址01xxxxxxxxxxx00xxxxxxxx讀取數(shù)據(jù)日于,從所述目標(biāo)地址OlxxxxxxxxxxxOlxxxxxxxx、1lxxxxxxxxxxxOlxxxxxxxx、11xxxxxxxxxxx11xxxxxxxx中讀耳又?jǐn)?shù)據(jù),當(dāng)Z人/人所述目標(biāo)地址OlxxxxxxxxxxxOlxxxxxxxx、1lxxxxxxxxxxxOlxxxxxxxx、11xxxxxxxxxxx11xxxxxxxx中讀耳又的數(shù)據(jù)中存在不等于寫入所述目標(biāo)地址11xxxxxxxxxxx11xxxxxxxx中的數(shù)據(jù)時(shí),判定存儲器容量檢測出錯(cuò)。11、如4又利要求8所述的方法,其特征在于,在從所述目標(biāo)地址OlxxxxxxxxxxxOlxxxxxxxx中讀取數(shù)據(jù),當(dāng)從/人所述目標(biāo)地址11xxxxxxxxxxxO1xxxxxxxx、11xxxxxxxxxxx11xxxxxxxx中讀耳又的數(shù)據(jù)中存在不等于寫入所述目標(biāo)地址1lxxxxxxxxxxxllxxxxxxxx中的數(shù)據(jù)時(shí),判定存儲器容量檢測出錯(cuò)。12、如權(quán)利要求8所述的方法,其特征在于,在從所述目標(biāo)地址11xxxxxxxxxxxOlxxxxxxxx中讀耳又據(jù),當(dāng),人乂人所述目標(biāo)i也址1lxxxxxxxxxxxllxxxxxxxx中讀耳又的數(shù)據(jù)中不等于寫入所述目標(biāo)地址1lxxxxxxxxxxxllxxxxxxxx中的數(shù)據(jù)時(shí),判定存儲器容量檢測出錯(cuò)。13、如權(quán)利要求8所述的方法,其特征在于,當(dāng)從所述目標(biāo)地址1lxxxxxxxxxxxllxxxxxxxx讀耳又的凄丈氺居與寫入所述目才示;也i止1lxxxxxxxxxxxllxxxxxxxx不相同時(shí),判定存儲器容量檢測出錯(cuò)。14、如權(quán)利要求6所述的方法,其特征在于,所述五個(gè)目標(biāo)地址分別為OOxxxxxxxxxxxOlxxxxxxxx、OOxxxxxxxxxxxlOxxxxxxxx、OOxxxxxxxxxxxllxxxxxxxx、10xxxxxxxxxxxOIxxxxxxxx、15、一種存儲器容量檢測裝置,所述裝置包括存儲控制器,存儲控制器對所述存儲器的地址進(jìn)行讀寫控制,存儲控制器準(zhǔn)備控制的地址為目標(biāo)地址,實(shí)際控制的地址為實(shí)際地址,其特征在于,所述裝置還包括容量配置單元,用于配置存儲控制器的容量;目標(biāo)地址寫入單元,用于在預(yù)先選擇的多個(gè)不同目標(biāo)地址中寫入不同的數(shù)據(jù),所述多個(gè)不同目標(biāo)地址中N個(gè)目標(biāo)地址對應(yīng)存^^器的同一實(shí)際地址,且不同容量的存儲器,N的值均不相同;目標(biāo)地址讀取單元,用于從所述多個(gè)不同目標(biāo)地址中讀取數(shù)據(jù);中讀取的數(shù)據(jù)是否等于所述目標(biāo)地址寫入單元寫入所述多個(gè)不同目標(biāo)地址中的數(shù)據(jù)來檢測待測存儲器的容量。16、如權(quán)利要求15所述的裝置,其特征在于,所述裝置進(jìn)一步包括檢測出錯(cuò)判斷單元,用于根據(jù)所述目標(biāo)地址讀取單元從多個(gè)目標(biāo)地址中讀取的數(shù)據(jù)與所述目標(biāo)地址寫入單元寫入多個(gè)目標(biāo)地址中的數(shù)據(jù)之間的相等關(guān)系判斷SDRAM容量檢測是否出錯(cuò)。全文摘要本發(fā)明適用于存儲器領(lǐng)域,提供了一種存儲器容量檢測方法、裝置及存儲控制器,該方法包括下述步驟配置存儲控制器的容量;在預(yù)先選擇的多個(gè)不同目標(biāo)地址中寫入不同的數(shù)據(jù),多個(gè)不同目標(biāo)地址中N個(gè)目標(biāo)地址對應(yīng)存儲器的同一實(shí)際地址,且不同容量的存儲器,N的值均不相同;從多個(gè)不同目標(biāo)地址中讀取數(shù)據(jù);根據(jù)從多個(gè)不同目標(biāo)地址中讀取的數(shù)據(jù)是否等于寫入多個(gè)不同目標(biāo)地址中的數(shù)據(jù)來檢測待測存儲器的容量。本發(fā)明實(shí)施例只需要判斷寫入多個(gè)不同目標(biāo)地址和從這些地址中讀取的數(shù)據(jù)是否相等即可檢測待測存儲器的容量,從而提高了存儲器容量檢測速度和效率,同時(shí)本方法利用不同容量存儲器的內(nèi)部行列結(jié)構(gòu)進(jìn)行容量檢測,便于移植,適用于各種不同應(yīng)用場合。文檔編號G11C29/00GK101477837SQ20091010518公開日2009年7月8日申請日期2009年1月21日優(yōu)先權(quán)日2009年1月21日發(fā)明者陳銳鋒申請人:炬力集成電路設(shè)計(jì)有限公司