nor flash启动与nand flash启动的区别
NOR FLASH地址線和數據線分開,來了地址和控制信號,數據就出來。類似于memory的隨機訪問方式,在nor flash上可以直接運行程序,
NAND Flash地址線和數據線在一起,需要用程序來控制,才能出數據。?Nand flash是IO設備,數據、地址、控制線都是共用的,需要軟件區控制讀取時序,所以不能像nor flash、內存一樣隨機訪問,不能EIP(片上運行),因此不能直接作為boot。
 
結論是:ARM無法從NAND直接啟動。除非裝載完程序,才能使用NAND Flash.
 
 
2)性能區別
NOR的傳輸效率很高,在1~4MB的小容量時具有很高的成本效益,但是很低的寫入和擦除速度大大影響了它的性能。 NAND結構能提供極高的單元密度,可以達到高存儲密度,并且寫入和擦除的速度也很快。應用NAND的困難在于flash的管理和需要特殊的系統接口。● NOR的讀速度比NAND稍快一些。
● NAND的寫入速度比NOR快很多。
● NAND的4ms擦除速度遠比NOR的5s快。
● 大多數寫入操作需要先進行擦除操作。
● NAND的擦除單元更小,相應的擦除電路更少。
===========================================
ARM的nor flash與nand flash啟動過程區別
B,s3c2440啟動過程詳解
1 :地址空間的分配
2 :開發板上一般都用SDRAM做內存,flash(nor、nand)來當做ROM。其中nand flash沒有地址線,一次至少要讀一頁(512B).其他兩個有地址線
3 :nandflash不用來運行代碼,只用來存儲代碼,NORflash,SDRAM可以直接運行代碼)
4 :s3c2440總共有8個內存banks
? 6個內存bank可以當作ROM或者SRAM來使用
? 留下的2個bank除了當作ROM 或者SRAM,還可以用SDRAM(各種內存的讀寫方式不一樣)
? 7個bank的起始地址是固定的,還有一個靈活的bank的內存地址,并且bank大小也可以改變
5 :s3c2440支持兩種啟動模式:NAND和非NAND(這里是nor flash)。
具體采用的方式取決于OM0、OM1兩個引腳
OM[1:0所決定的啟動方式
OM[1:0]=00時,處理器從NAND Flash啟動
OM[1:0]=01時,處理器從16位寬度的ROM啟動
OM[1:0]=10時,處理器從32位寬度的ROM啟動。
OM[1:0]=11時,處理器從Test Mode啟動。
當從NAND啟動時
? ? cpu會自動從NAND flash中 讀取前4KB 的數據放置在 片內SRAM里 (s3c2440是soc), 同時把這段片內SRAM映射到nGCS0片選的空間(即0x00000000) 。cpu是從0x00000000開始執行,也就是NAND flash里的前4KB內容。因為NAND FLASH連地址線都沒有,不能直接把NAND映射到0x00000000,只好使用片內SRAM做一個載體。通過這個載體把nandflash中大代碼復制到RAM(一般是SDRAM)中去執行。
當從非NAND flash啟動時
? ? nor flash被映射到0x00000000地址(就是nGCS0,這里就不需要片內SRAM來輔助了,所以片內SRAM的起始地址還是0x40000000). 然后cpu從0x00000000開始執行(也就是在Norfalsh中執行)。
 
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1.S3C2440的啟動時讀取的第一條指令是在0x00上,分為成nand flash和nor flash上啟動
2.nand flash:適合大容量數據存儲,類似硬盤;
? nor flash:適合小容量的程序或數據存儲,類似小硬盤;
?sdram:主要用于程序執行時的程序存儲、執行或計算,類似內存。
3.Nor flash的有自己的地址線和數據線,可以采用類似于memory的隨機訪問方式,在nor flash上可以直接運行程序,所以nor flash可以直接用來做boot,采用nor flash啟動的時候會把地址映射到0x00上。
?Nand flash是IO設備,數據、地址、控制線都是共用的,需要軟件區控制讀取時序,所以不能像nor flash、內存一樣隨機訪問,不能EIP(片上運行),因此不能直接作為boot。
?NANDFlash啟動: NANDFlash存儲器的前4K將被自動加載到Steppingstone(內部SRAM緩沖器),然后系統自動執行這些載入的啟動代碼,這4K的啟動代碼需要將NANDFlash中的內容復制到SDRAM中執行。NANDFlash的前4K空間放啟動代碼,SDRAM速度較快,用來執行主程序的代碼。
總結
以上是生活随笔為你收集整理的nor flash启动与nand flash启动的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 程序员生存定律--程序人生的出口
- 下一篇: 修改Xmodem/Zmodem上传下载路
