![SC6800H平臺Bootloader和Nandflash學(xué)習(xí)交流ppt課件_第1頁](http://file4.renrendoc.com/view/d2860bd0b5257d4ac8d532bc351cf592/d2860bd0b5257d4ac8d532bc351cf5921.gif)
![SC6800H平臺Bootloader和Nandflash學(xué)習(xí)交流ppt課件_第2頁](http://file4.renrendoc.com/view/d2860bd0b5257d4ac8d532bc351cf592/d2860bd0b5257d4ac8d532bc351cf5922.gif)
![SC6800H平臺Bootloader和Nandflash學(xué)習(xí)交流ppt課件_第3頁](http://file4.renrendoc.com/view/d2860bd0b5257d4ac8d532bc351cf592/d2860bd0b5257d4ac8d532bc351cf5923.gif)
![SC6800H平臺Bootloader和Nandflash學(xué)習(xí)交流ppt課件_第4頁](http://file4.renrendoc.com/view/d2860bd0b5257d4ac8d532bc351cf592/d2860bd0b5257d4ac8d532bc351cf5924.gif)
![SC6800H平臺Bootloader和Nandflash學(xué)習(xí)交流ppt課件_第5頁](http://file4.renrendoc.com/view/d2860bd0b5257d4ac8d532bc351cf592/d2860bd0b5257d4ac8d532bc351cf5925.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、SC6800H平臺Bootloader和Nand flash學(xué)習(xí)交流Author:車國盛Date:2021.04.11.內(nèi)容提綱1. Bootloader簡介2. 為什么需求Bootloader?3. Bootloader存放在哪里?為什么?4. Bootloader運(yùn)轉(zhuǎn)在哪里?5. Bootloader代碼構(gòu)架是怎樣的?6. Boot parameter如何設(shè)定的?7. Bootloader代碼解讀8. Nand flash簡介9. Nand flash和Nor flash比較10. Nand flash任務(wù)原理11. Nand flash的ECC簡介12. Nand flash常用的軟件管
2、理方案13. 6800H平臺Nand Interface簡介14. 6800H平臺Nand flash驅(qū)動配置15. 6800H平臺Nand flash分區(qū).Bootloader簡介Bootloader就是一段小程序,它在系統(tǒng)上電時開場執(zhí)行,初始化硬件設(shè)備、預(yù)備好軟件環(huán)境,最后調(diào)用系統(tǒng)內(nèi)核。典型的嵌入式系統(tǒng)Bootloader有Blob (boot load object)和U-boot (universal boot loader),其中U-boot支持ARM,MIPS,X86,Nios,可啟動VxWorks,QNX,Linux什么是Bootloader?.為什么需求BootloaderNa
3、nd與Nor的區(qū)別 Nand不能run in place,Nand不支持即時的讀寫操作,需求將代碼拷貝到RAM執(zhí)行;Nand會有壞塊,需求一個壞塊管理模塊,這個模塊相對來說還是比較復(fù)雜的。Nand的壞塊特性決議了從Nand拷貝代碼到RAM是一個相對比較復(fù)雜的動作。SDRAM SDRAM需求初始化,這意味著最早的一些代碼不能在SDRAM中執(zhí)行,需求先在IRAM中運(yùn)轉(zhuǎn);IRAM很小。. Bootloader存放在哪里?為什么?在nand的第一個block NAND_PartTable_XXX.c配置文件NBL_OFFSET即是Bootloader的位置,可以看到是0。為什么在這里: Nand的第一
4、個block永遠(yuǎn)不會損壞的特性決議了可以很簡單的讀取這個塊。. Bootloader運(yùn)轉(zhuǎn)在哪里?boot0運(yùn)轉(zhuǎn)在IRAM,boot1運(yùn)轉(zhuǎn)在SDRAM。boot0的運(yùn)轉(zhuǎn)地址可以從scatter0.scf中找到如下:ROM_EXEC 0 x40000000 0 x8000 boot0_entry.o (Reset, +First) sdram_init.o (+RO,+RW,+ZI) prod_cfg.o (+RO,+RW,+ZI) *.o (+RO,+RW). Bootloader運(yùn)轉(zhuǎn)在哪里?boot1的運(yùn)轉(zhuǎn)地址可以從scatter1.scf中找到如下:ROM_EXEC 0 x1000000 0
5、 x14000 boot1_entry.o (Reset, +First) *.o (+RO,+RW). Bootloader代碼構(gòu)架是怎樣的?Bootloader分兩部分:boot0和boot1。boot0引導(dǎo)boot1,boot1引導(dǎo)EXEC_KERNEL_IMAGE.bin。boot0不超越16K,boot1不超越128K。boot0為什么不超越16K?(Nand第一個block永遠(yuǎn)不會壞,不做壞塊管理。一個block能夠是16K或者128K,為了一致處置,當(dāng)16K來運(yùn)用。)boot1為什么不超越128K?(暫時不確定)在scatter中boot0和boot1的大小設(shè)置為:scatter
6、0.scf: ROM_LOAD 0 x40000000 0 x4000 ;0 x4000 - 16Kscatter1.scf: ROM_LOAD 0 x1000000 0 x14000 ;0 x14000 - 80K. Bootloader代碼構(gòu)架是怎樣的?boot0入口地址:0 x40000000(IRAM起始地址) boot0主要任務(wù):boot0_entry.s : Remap - 初始化SDRAM - _main - 聲明boot parameter并分配空間boot0_main.c : 將boot1拷貝到SDRAM -set_pc到SDRAM執(zhí)行boot1。. Bootloader代碼
7、構(gòu)架是怎樣的?boot1入口地址:0 x01000000 (SDRAM) boot1主要任務(wù):boot1_entry.s _main - 聲明boot parameter并分配空間。boot1_main.c 將EXEC_KERNEL_IMAGE.bin拷貝到SDRAM,并set_pc到SDRAM執(zhí)行EXEC_KERNEL_IMAGE.bin。Kernel的運(yùn)轉(zhuǎn)地址:由函數(shù)PUBLIC void call_kernel (void) set_pc (SDRAM_BASE_ADDR);可以看出,SDRAM_BASE_ADDR為0地址,即EXEC_KERNEL_IMAGE.bin存放的起始地址。.B
8、oot parameter如何設(shè)定的?boot parameter(nand分區(qū)表等相關(guān)信息)的設(shè)定在fdl相關(guān)代碼中,該部分代碼已封裝。在函數(shù)BOOLEAN copyKernelImg(void)中,可以看出,從flash中讀取出來boot parameter存放在bootParam中。_copyImg(ftlHandle, SDRAM_BASE_ADDR, osInfo-offset, osInfo-size,ftlPartitionInfo.sctSize)這里可以看到一部分boot parameter參數(shù)。.Bootloader代碼解讀主要文件:目錄fdl_bootloaderboot
9、loadersrc boot0_entry.s boot0_main.c boot1_entry.s boot1_main.c.Nand Flash簡介Flash存儲器又稱閃存,是一種可在線多次擦除的非易失性存儲器,即掉電后數(shù)據(jù)不會喪失。Flash存儲器還具有體積小、功耗低、抗振性強(qiáng)等優(yōu)點。 Flash存儲器主要分為兩種:一種為Nor型Flash,另一種為Nand型Flash。Nand內(nèi)部采用非線性宏單元方式,為固態(tài)大容量內(nèi)存的實現(xiàn)提供了廉價有效的處理方案。Nand存儲器具有容量較大,改寫速度快等優(yōu)點,適用于大量數(shù)據(jù)的存儲,因此在業(yè)界得到了越來越廣泛的運(yùn)用。.Nand flash和Nor fl
10、ash比較接口比較:Nor帶有SRAM接口,有足夠的地址引腳來尋址,可以很容易地存取其內(nèi)部的每一個字節(jié)。Nor的特點是芯片內(nèi)執(zhí)行(XIP,eXecute In Place),這樣運(yùn)用程序可以直接在Nor flash內(nèi)運(yùn)轉(zhuǎn),可以不把代碼讀到系統(tǒng)RAM中。例如uboot中的ro段可以直接在Nor flash上運(yùn)轉(zhuǎn),只需求把rw和zi段拷貝到RAM中運(yùn)轉(zhuǎn)即可。Nand器件運(yùn)用復(fù)雜的I/O口來串行地存取數(shù)據(jù),I/O引腳用來傳送控制、地址和數(shù)據(jù)信息,由于時序較為復(fù)雜,所以普通CPU集成Nand控制器。Nand讀和寫操作采用512字節(jié)的塊,這一點有點像硬盤管理此類操作。Nand是非線性存儲器,不支持eXe
11、cute In Place。.Nand flash和Nor flash比較容量和本錢比較:相比起Nand來說,Nor的容量要小,普通在1-16MByte左右,一些新工藝采用了芯片疊加技術(shù)可以把Nor的容量做得大一些。在價錢方面,Nor相比Nand來說要高一些。Nand消費(fèi)過程更為簡單,構(gòu)造可以在給定的模具尺寸內(nèi)提供更高的容量,這樣也就相應(yīng)地降低了價錢。.Nand flash和Nor flash比較其他方面如可靠性,耐用性等方面的比較,在這里就不一一詳述了。.Nand flash任務(wù)原理-組成構(gòu)造Nand的數(shù)據(jù)是以bit的方式保管在memory cell,普通來說,一個cell 中只能存儲一個b
12、it。這些cell 以8個或者16個為單位,連成bit line,構(gòu)成所謂的byte(x8)/word(x16),這就是Nand Device的位寬(當(dāng)然還有32bit或更大的位寬的)。假設(shè)干個Line會再組成Page。假設(shè)干個Page組成block。假設(shè)干個block組成Plane。假設(shè)干個Plane組成Device。.Nand flash任務(wù)原理-組成構(gòu)造這里以三星的Nand型號K9F1208為例子闡明Nand的組成構(gòu)造。.Nand flash任務(wù)原理-組成構(gòu)造對于上圖的Nand芯片K9F1208:每頁528Bytes:512byte(Main Area)+16byte(Spare Are
13、a)。每32個page構(gòu)成一個Block(32*528B)。4096個block組成一片Nand芯片K9F1208。故總?cè)萘繛?096*(32*528B)=66MB,其中的2MB是用來保管ECC校驗碼等額外數(shù)據(jù) 的,實踐中可運(yùn)用的為64MB。闡明:這只是針對芯片K9F1208的組成構(gòu)造,不同的芯片可以根據(jù)datasheet確定。.Nand flash任務(wù)原理-組成構(gòu)造對于上圖的Nand芯片K9F1208:1 Page=528Byte,其中512byte為Main Area,16byte為Spare Area。1 Block=32 Page * 528Byte。1 Device = 4096(塊
14、)*32(頁)*528(字節(jié))*8(位)=528Mbit=66Mbyte總?cè)萘繛?6Mbyte,其中的2Mbyte是用來保管ECC校驗碼等額外數(shù)據(jù)的,實踐中可運(yùn)用的為64Mbyte。闡明:這只是針對芯片K9F1208的組成構(gòu)造,不同的芯片可以根據(jù)datasheet確定。.Nand flash任務(wù)原理-組成構(gòu)造Page分為main和spare區(qū)。main是用來保管數(shù)據(jù)的,spare區(qū)普通用來標(biāo)志壞塊以及保管對main區(qū)數(shù)據(jù)的ECC校驗碼等。spare區(qū)大小:(每512+16)byte就有16byte作為spare區(qū)。spare區(qū)這16byte格式:不同廠家的格式能夠有所區(qū)別,沒有一致的規(guī)范格式。
15、.Nand flash任務(wù)原理-組成構(gòu)造以下是spare區(qū)的一個例子:LSN0 LSN1 LSN2 RESERVED RESERVED BI ECC0 ECC1 ECC2 S-ECC0 S-ECC1 RESERVED RESERVED RESERVED RESERVED RESERVED其中:LSN:Logical Sector Number(跟壞塊管理有關(guān))ECCa,ECCb,ECCc:ECC code for Main area data(Error Checking and Correction)S_ECCa,S_ECCb:ECC code for LSN dataBI:Bad bloc
16、k Information.Nand flash任務(wù)原理-尋址剛剛算的容量是有64Mbyte的空間, 225bit 64Mbyte 226bit 也就是說需求26位地址傳送,可是看Nand的原理圖發(fā)現(xiàn)有IO0-IO7,它是怎樣尋址的呢?.Nand flash任務(wù)原理-尋址看看下面完好的Array Organization.Nand flash任務(wù)原理-尋址原來Nand并不是直接經(jīng)過里面的存儲物理層,而是有一個專門的頁存放器來管理的。不論是什么操作都要首先經(jīng)過page regsiter。從上圖來看,A0A7是頁內(nèi)尋址,也叫列尋址,也就是512尋址,不過A0A7才8位,最大也就尋址256?本質(zhì)上還
17、有一位A8,A8是由Nand里面的某個硬件電路根據(jù)相關(guān)的命令而置為1或者0,這不用軟件來操作。例如說要尋址0255字節(jié),這樣的話8位IO搞定了,這時候硬件電路就會把A8置為0;假設(shè)說要尋址第484字節(jié),8位就不夠了,硬件電路就會把A8置1,完成所謂的第484個字節(jié)尋址。484的二進(jìn)制是111100100,需求9位才行,A8此時就充任第9位,其他8位還是由IO完成的,這樣就可以完成512字節(jié)內(nèi)的任何尋址了。 .Nand flash任務(wù)原理-尋址A9A25是用來進(jìn)展頁尋址的,也叫行尋址,4096塊*32頁=131072頁,用A9A25就可以搞定這么多頁了?;谝陨峡芍?A9A25是進(jìn)展多達(dá)上萬頁尋
18、址的,其實還可以細(xì)分的,A9A13是塊內(nèi)的32頁尋址,正好5位,2的5次方=32,一塊由32頁組成,A14A25是用來進(jìn)展塊尋址的,4096塊,也足夠了。其實A14A25還可以細(xì)分,還有個叫“層的概念。Nand 還被組織成一種方式,就是把整個Nand分成假設(shè)干個層(plane),每層假設(shè)干塊,每層里還有個528字節(jié)的頁存放器。如以下圖: .Nand flash任務(wù)原理-尋址K9F1208分4個層,每層1024塊,所以說A14A15是用于plane尋址的,A16A25用于Block尋址。 .Nand flash任務(wù)原理-指令集這里簡單引見下Nand的指令操作:.Nand flash任務(wù)原理-壞塊
19、管理為什么會出現(xiàn)壞塊?由于Nand的工藝不能保證Nand的Memory Array在其生命周期中堅持性能的可靠,因此,在Nand的消費(fèi)中及運(yùn)用過程中會產(chǎn)生壞塊。闡明:Nand 的第一個Block經(jīng)特殊工藝處置,默許是不會成為壞塊的,常用于系統(tǒng)的引導(dǎo)。.Nand Flash任務(wù)原理-壞塊管理壞塊的詳細(xì)表現(xiàn):當(dāng)編程/擦除這個塊時,不能將某些位拉高,這會呵斥Page Program和Block Erase操作時的錯誤,相應(yīng)地反映到Status Register的相應(yīng)位。.Nand Flash任務(wù)原理-壞塊管理壞塊的種類:先天性壞塊 這種壞塊是在消費(fèi)過程中產(chǎn)生的,普通芯片原廠都會在出廠時都會將壞塊第一
20、個page的spare區(qū)的第6個byte標(biāo)志為非0 xff的值。后天性壞塊 這種壞塊是在Nand flash運(yùn)用過程中產(chǎn)生的,假設(shè)Block Erase或者Page Program錯誤,就可以簡單地將這個塊作為壞塊來處置,這個時候需求把壞塊標(biāo)志起來。為了和先天性壞塊信息堅持一致,將新發(fā)現(xiàn)的壞塊的第一個page的spare區(qū)的第6個Byte標(biāo)志為非0 xff的值。.Nand Flash任務(wù)原理-壞塊管理壞塊的處置:了解了先天性壞塊和后天性壞塊后,我們已明白Nand出廠時在spare區(qū)中曾經(jīng)反映出了壞塊信息,因此,假設(shè)在擦除一個塊之前,一定要先檢查spare區(qū)的第6個byte能否是0 xff,假設(shè)
21、是就證明這是一個好塊,可以擦除;假設(shè)是非0 xff,那么就不能擦除。不過,這樣處置能夠會錯殺偽壞塊,由于在芯片操作過程中能夠由于電壓不穩(wěn)定等偶爾要素會呵斥Nand操作的錯誤。但是,為了數(shù)據(jù)的可靠性及軟件設(shè)計的簡單化,壞塊一個也不能放過。.Nand Flash任務(wù)原理-壞塊管理錯殺壞塊的補(bǔ)救方法:假設(shè)在對一個塊的某個page進(jìn)展編程的時候發(fā)生了錯誤就要把這個塊標(biāo)志為壞塊,首先就要把其他好的page里面的內(nèi)容備份到另外一個空的好塊里面,然后,把這個塊標(biāo)志為壞塊。當(dāng)發(fā)生“錯殺之后,可以在進(jìn)展完頁備份之后,再將這個塊擦除一遍,假設(shè)Block Erase發(fā)生錯誤,那就證明這個塊是個真正的壞塊。.Nand
22、 flash的ECC簡介ECC的全稱是Error Checking and Correction,是一種用于Nand的過失檢測和修正算法。假設(shè)操作時序和電路穩(wěn)定性不存在問題的話,Nand Flash出錯的時候普通不會呵斥整個Block或是Page不能讀取或是全部出錯,而是整個Page例如512Bytes中只需一個或幾個bit出錯。ECC能糾正1個比特錯誤和檢測2個比特錯誤,而且計算速度很快,但對1比特以上的錯誤無法糾正,對2比特以上的錯誤不保證能檢測。.Nand flash的ECC簡介ECC校驗算法: ECC校驗每次對256字節(jié)的數(shù)據(jù)進(jìn)展操作,包含列校驗和行校驗。ECC糾錯算法: 當(dāng)往Nand
23、 Flash的page中寫入數(shù)據(jù)的時候,每256字節(jié)生成一個ECC校驗和,稱之為原ECC校驗和,保管到PAGE的OOBout-of-band數(shù)據(jù)區(qū)中。當(dāng)從Nand Flash中讀取數(shù)據(jù)的時候,每256字節(jié)我們生成一個ECC校驗和,稱之為新ECC校驗和。將從OOB區(qū)中讀出的原ECC校驗和新ECC校驗和按位異或,假設(shè)結(jié)果為0,那么表示不存在錯或是出現(xiàn)了 ECC無法檢測的錯誤;假設(shè)3個字節(jié)異或結(jié)果中存在11個比特位為1,表示存在一個比特錯誤,且可糾正;假設(shè)3個字節(jié)異或結(jié)果中只存在1個比特位為1,表示OOB區(qū)出錯;其他情況均表示出現(xiàn)了無法糾正的錯誤。.Nand flash常用的軟件管理方案Nand F
24、lash由于本身的緣由,會有一些限制:1 不能直接在數(shù)據(jù)上進(jìn)展覆蓋,必需先擦后寫。2 寫和擦有壽命。某些塊能夠會用的更頻繁從而導(dǎo)致壞塊。3 在出廠時會存在壞塊,在運(yùn)用過程中也會產(chǎn)生壞塊。4 會在讀取數(shù)據(jù)時產(chǎn)生錯誤或讀取失敗。正是由于這些限制,Nand Flash的操作相對比較復(fù)雜,因此需求經(jīng)過軟件將Nand Flash仿真為傳統(tǒng)的邏輯塊設(shè)備,便于讀擦寫等操作。SC6800H平臺目前支持FTL和XSR兩種軟件管理方案: 在PDA_V2.0之前,平臺運(yùn)用的是XSR處理方案,在PDA_V2.0平臺運(yùn)用的是FTL處理方案。.Nand flash常用的軟件管理方案FTL(Flash Translatio
25、n Layer) 傳統(tǒng)的嵌入式系統(tǒng)普通運(yùn)用FTL方案。FTL將Nand Flash仿真為一個塊設(shè)備使得Nand Flash與其他常規(guī)塊存儲設(shè)備一樣。FTL是處于文件系統(tǒng)和Nand Flash設(shè)備之間一個中間層。 FTL從文件系統(tǒng)層收到讀寫操作的邏輯地址。在FTL層把這些邏輯地址映射成真正的物理地址,從而正確的進(jìn)展相應(yīng)操作。由于FTL創(chuàng)建了虛擬塊進(jìn)展映射管理,所以對這些虛擬塊會有一些相應(yīng)的軟件算法,比如渣滓搜集(Garbage Collection),壞塊管理(Bad Block Management),寫平衡算法(Wear-Leveling)等。這些算法有助于管理塊構(gòu)造和延伸Nand Flas
26、h的壽命。.Nand flash常用的軟件管理方案FTL(Flash Translation Layer)渣滓搜集(Garbage Collection) 在對數(shù)據(jù)進(jìn)展修正的時候,由于沒有把原來的數(shù)據(jù)清空,這樣就會導(dǎo)致部分物理區(qū)域中的數(shù)據(jù)是無效的,即渣滓數(shù)據(jù)。經(jīng)過渣滓搜集技術(shù)(Garbage Collection),系統(tǒng)把要清零的塊中的有效數(shù)據(jù)先移動到其他區(qū)域,并且改動邏輯塊到物理塊的映射關(guān)系,然后對整塊進(jìn)展清零操作。 普通渣滓搜集遵照兩個原那么:渣滓最多(速度原那么);運(yùn)用的次數(shù)最少(平衡原那么)。.Nand flash常用的軟件管理方案FTL(Flash Translation Layer
27、)寫平衡算法(Wear-Leveling Algorithm) 普通的Nand Flash能保證每個塊可以擦寫10萬次。但是由于一些塊所運(yùn)用的次數(shù)會比其他塊頻繁,從而導(dǎo)致更容易出現(xiàn)壞塊。 寫平衡算法(Wear-Leveling Algorithm)就是用于保證每個塊都能得到比較平衡的運(yùn)用。由于在每個塊中都有一個計數(shù)器,用于記錄該塊被擦除的次數(shù),所以寫平衡算法會自動利用這個計數(shù)器,并將被擦除次數(shù)最少的塊用于新的操作中。.Nand flash常用的軟件管理方案FTL(Flash Translation Layer)Error Correction Code ECC分為硬件ECC和軟件ECC。ECC
28、運(yùn)用就是糾正偵測到的數(shù)據(jù)錯誤,它保證了Nand Flash的可靠性和數(shù)據(jù)完好性。而在Nand Flash中采取的是“先寫后去除的措施,假設(shè)出現(xiàn)錯誤,原始的數(shù)據(jù)還可以運(yùn)用,從而保證了數(shù)據(jù)的可恢復(fù)性。.Nand flash常用的軟件管理方案XSR(eXtended Sector Remapper) XSR是SAMSUNG推出的專門用于管理Nand Flash的軟件處理方案。XSR將Nand Flash看作常規(guī)的塊設(shè)備,其功能同傳統(tǒng)的FTL一樣。但XSR比FTL更加強(qiáng)大。 XSR處于文件系統(tǒng)和Nand Flash之間。它提供應(yīng)操作系統(tǒng)全部的塊設(shè)備功能,使得Nand Flash就像一個常規(guī)的硬盤一樣,
29、能更方便管理數(shù)據(jù)。.Nand flash常用的軟件管理方案XSR(eXtended Sector Remapper)XSR共分為五個主要部分:1 XSR中心層(XSR Core),其中XSR中心層又可分為兩個層次: 扇區(qū)轉(zhuǎn)換層STL(Sector Translation Layer) 塊管理層BML(Block Management Layer)2 操作系統(tǒng)適配模塊層OAM(OS Adaptation Module)3 平臺適配模塊層PAM(Platform Adaptation Module)4 底層設(shè)備驅(qū)動層LLD(Low Level Device Driver).Nand flash常用
30、的軟件管理方案XSR(eXtended Sector Remapper)扇區(qū)轉(zhuǎn)換層STL(Sector Translation Layer) STL(扇區(qū)轉(zhuǎn)換層)是XSR架構(gòu)中一個很重要的部分,它從事一些主要的管理義務(wù)。該層主要同扇區(qū)轉(zhuǎn)換相關(guān),將文件系統(tǒng)傳來的邏輯扇區(qū)地址(logical sector address)轉(zhuǎn)換為虛擬扇區(qū)地址(virtual sector address)。 STL主要包括:地址轉(zhuǎn)換(Address Translation),寫平衡算法(Natural Wear Leveling), 大塊優(yōu)化管理(Large Block Optimization), 斷電維護(hù)(Po
31、wer off Recovery),允許異步/同步操作, 支持多卷(Supporting Multiple Volume)等。.Nand flash常用的軟件管理方案XSR(eXtended Sector Remapper)BML(Block Management Layer) BML將從STL層傳來的虛擬地址轉(zhuǎn)換為詳細(xì)的物理地址。在對Nand Flash進(jìn)展讀/寫/擦除操作時。但有能夠會遇到錯誤或者失敗,而這些有錯誤或發(fā)生失敗的塊就叫做壞塊。BML專門用于管理這些壞塊,并且還可以對一些無效塊進(jìn)展管理. BML主要包括:分區(qū)信息管理(Partition Information Manageme
32、nt) ,交錯訪問Nand Flash設(shè)備(NAND Device Interleaving),壞塊管理(Bad Block Management),軟件ECC(Software ECC),多卷管理(Multiple Volume Management)等。.Nand flash常用的軟件管理方案XSR(eXtended Sector Remapper)LLD(Low Level Device Driver) LLD(底層設(shè)備驅(qū)動層)是一切XSR的構(gòu)造層中真正同物理層接觸的,即真正可以訪問物理設(shè)備的層次。經(jīng)過前面STL和BML的轉(zhuǎn)換,LLD運(yùn)用上面?zhèn)鱽淼恼嬲奈锢淼刂罚业叫枨蟮腘and Fl
33、ash空間,對它進(jìn)展所需的各種操作。.Nand flash常用的軟件管理方案XSR(eXtended Sector Remapper)OAM(OS Adaptation Module) OAM(操作系統(tǒng)適配模塊層)用于接納操作系統(tǒng)提供的效力,并將它們作用到XSR架構(gòu)中。OAM是一個相對獨(dú)立的層次,當(dāng)操作系統(tǒng)改動后,用戶只需求改動OAM的配置即可。OAM會提供一些中斷,時序,異步/同步標(biāo)志等功能函數(shù)。.Nand flash常用的軟件管理方案XSR(eXtended Sector Remapper)PAM(Platform Adaptation Module) PAM(平臺適配模塊層)用于將XSR
34、同詳細(xì)的平臺聯(lián)系在一同,用于獲取平臺的相關(guān)信息或者功能。PAM同樣也是獨(dú)立的層次,平臺改動后,用戶只需改動PAM相關(guān)配置即可。這里所指的平臺是由CPU,SDRAM,Nand Flash等組成的系統(tǒng)。.6800H平臺Nand Interface簡介支持8/16bit寬度。支持Nand的容量不大于2Gbyte,支持34地址序列,假設(shè)是每頁大小為2k byte,支持45地址序列。假設(shè)是每頁大小為512byte,硬件上支持4頁延續(xù)讀寫。支持硬件ECC校驗,但須由軟件來糾錯。支持Small Page(512byte)和Large Page(2K byte)。.6800H平臺Nand flash驅(qū)動配置6800H平臺引薦的memory方案是Nand+SDRAM(目前Nor+pSram方案還沒有做好)。其中完成一款新的Nand驅(qū)動普通是配置一張表,即NandSpec.c中的astNandSpec 表,對應(yīng)的構(gòu)造體為LLDSpec。.6800H平臺Nand flash驅(qū)動配置構(gòu)造體LLDSpec的定義為:.6800H平臺Nand flash驅(qū)動配置LLDSp
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度醫(yī)療健康行業(yè)醫(yī)護(hù)人員聘用合同
- 14保護(hù)呼吸器官(說課稿)-2024-2025學(xué)年科學(xué)三年級上冊人教鄂教版
- 1 多種多樣的食物 說課稿 -2023-2024學(xué)年科學(xué)三年級上冊人教鄂教版
- 2024年高中語文 第7課 李商隱詩兩首說課稿5 新人教版必修3001
- 2025大型房屋租賃合同「標(biāo)準(zhǔn)」
- 2025防水工程分包合同蘇州迎春路項目
- 2025關(guān)于勞動合同法中有關(guān)專業(yè)技術(shù)培訓(xùn)約定服務(wù)期條款的理解和運(yùn)用
- 2024秋一年級道德與法治上冊 第2課 拉拉手 交朋友說課稿 新人教版
- 2024-2025學(xué)年高中英語上學(xué)期第17周 省略句說課稿
- 2025年度醫(yī)療信息化安全保障與應(yīng)急響應(yīng)合同
- 中國儲備糧管理集團(tuán)有限公司蘭州分公司招聘筆試真題2024
- 第1課 隋朝統(tǒng)一與滅亡 課件(26張)2024-2025學(xué)年部編版七年級歷史下冊
- 提高金剛砂地坪施工一次合格率
- 【歷史】唐朝建立與“貞觀之治”課件-2024-2025學(xué)年統(tǒng)編版七年級歷史下冊
- 產(chǎn)業(yè)園區(qū)招商合作協(xié)議書
- 2024年廣東省公務(wù)員錄用考試《行測》真題及答案解析
- 2025新譯林版英語七年級下單詞默寫表
- 盾構(gòu)標(biāo)準(zhǔn)化施工手冊
- 天然氣脫硫完整版本
- 中歐班列課件
- 2025屆高三數(shù)學(xué)一輪復(fù)習(xí)備考經(jīng)驗交流
評論
0/150
提交評論