本文主要是關(guān)于NOR Flash的相關(guān)介紹,并著重對(duì)NOR Flash原理及其燒寫(xiě)進(jìn)行了詳盡的闡述。
NOR Flash
NOR Flash是現(xiàn)在市場(chǎng)上兩種主要的非易失閃存技術(shù)之一。Intel于1988年首先開(kāi)發(fā)出NOR Flash 技術(shù),徹底改變了原先由EPROM(Erasable Programmable Read-Only-Memory電可編程序只讀存儲(chǔ)器)和EEPROM(電可擦只讀存儲(chǔ)器Electrically Erasable Programmable Read - Only Memory)一統(tǒng)天下的局面。緊接著,1989年,東芝公司發(fā)表了NAND Flash 結(jié)構(gòu),強(qiáng)調(diào)降低每比特的成本,有更高的性能,并且像磁盤(pán)一樣可以通過(guò)接口輕松升級(jí)。NOR Flash 的特點(diǎn)是芯片內(nèi)執(zhí)行(XIP ,eXecute In Place),這樣應(yīng)用程序可以直接在Flash閃存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中。NOR 的傳輸效率很高,在1~4MB的小容量時(shí)具有很高的成本效益,但是很低的寫(xiě)入和擦除速度大大影響到它的性能。NAND的結(jié)構(gòu)能提供極高的單元密度,可以達(dá)到高存儲(chǔ)密度,并且寫(xiě)入和擦除的速度也很快。應(yīng)用NAND的困難在于Flash的管理需要特殊的系統(tǒng)接口。通常讀取NOR的速度比NAND稍快一些,而NAND的寫(xiě)入速度比NOR快很多,在設(shè)計(jì)中應(yīng)該考慮這些情況?!?a target="_blank">ARM嵌入式Linux系統(tǒng)開(kāi)發(fā)從入門(mén)到精通》 李亞峰 歐文盛 等編著 清華大學(xué)出版社 P52 注釋 API Key
flash閃存是非易失存儲(chǔ)器,可以對(duì)稱(chēng)為塊的存儲(chǔ)器單元塊進(jìn)行擦寫(xiě)和再編程。任何flash器件的寫(xiě)入操作只能在空或已擦除的單元內(nèi)進(jìn)行,所以大多數(shù)情況下,在進(jìn)行寫(xiě)入操作之前必須先執(zhí)行擦除。NAND器件執(zhí)行擦除操作是十分簡(jiǎn)單的,而NOR則要求在進(jìn)行擦除前先要將目標(biāo)塊內(nèi)所有的位都寫(xiě)為0。由于擦除NOR器件時(shí)是以64~128KB的塊進(jìn)行的,執(zhí)行一個(gè)寫(xiě)入/擦除操作的時(shí)間為5s,與此相反,擦除NAND器件是以8~32KB的塊進(jìn)行的,執(zhí)行相同的操作最多只需要4ms。執(zhí)行擦除時(shí)塊尺寸的不同進(jìn)一步拉大了NOR和NAND之間的性能差距,統(tǒng)計(jì)表明,對(duì)于給定的一套寫(xiě)入操作(尤其是更新小文件時(shí)),更多的擦除操作必須在基于NOR的單元中進(jìn)行。這樣,當(dāng)選擇存儲(chǔ)解決方案時(shí),設(shè)計(jì)師必須權(quán)衡以下的各項(xiàng)因素。l 、NOR的讀速度比NAND稍快一些。2、 NAND的寫(xiě)入速度比NOR快很多。3 、NAND的4ms擦除速度遠(yuǎn)比NOR的5s快。4 、大多數(shù)寫(xiě)入操作需要先進(jìn)行擦除操作。5 、NAND的擦除單元更小,相應(yīng)的擦除電路更少。此外,NAND的實(shí)際應(yīng)用方式要比NOR復(fù)雜的多。NOR可以直接使用,并可在上面直接運(yùn)行代碼;而NAND需要I/O接口,因此使用時(shí)需要驅(qū)動(dòng)程序。不過(guò)當(dāng)今流行的操作系統(tǒng)對(duì)NAND結(jié)構(gòu)的Flash都有支持。此外,Linux內(nèi)核也提供了對(duì)NAND結(jié)構(gòu)的Flash的支持。
J-Link
J-Link是SEGGER公司為支持仿真ARM內(nèi)核芯片推出的JTAG仿真器。配合IAR EWAR,ADS,KEIL,WINARM,RealView等集成開(kāi)發(fā)環(huán)境支持所有ARM7/ARM9/ARM11,Cortex M0/M1/M3/M4, Cortex A5/A8/A9等內(nèi)核芯片的仿真,與IAR,Keil等編譯環(huán)境無(wú)縫連接,操作方便、連接方便、簡(jiǎn)單易學(xué),是學(xué)習(xí)開(kāi)發(fā)ARM最好最實(shí)用的開(kāi)發(fā)工具。產(chǎn)品規(guī)格:電源USB供電,整機(jī)電流 《50mA 支持的目標(biāo)板電壓 1.2 ~ 3.3V,5V兼容 目標(biāo)板供電電壓 4.5 ~ 5V (由USB提供5V) 目標(biāo)板供電電流 最大300mA,具有過(guò)流保護(hù)功能 工作環(huán)境溫度 +5℃~ +60℃ 存儲(chǔ)溫度 -20℃ ~ +65℃ 濕度 《90%尺寸(不含電纜) 100mm x 53mm x 27mm 重量(不含電纜)70g 電磁兼容 EN 55022, EN 5502 。
主要特點(diǎn)
* IAR EWARM集成開(kāi)發(fā)環(huán)境無(wú)縫連接的JTAG仿真器。
*支持CPUs: Any ARM7/9/11, Cortex-A5/A8/A9, Cortex-M0/M1/M3/M4, Cortex-R4, RX610, RX621, RX62N, RX62T, RX630, RX631, RX63N。
*下載速度高達(dá)1 MByte/s。
*最高JTAG速度15 MHz。
*目標(biāo)板電壓范圍1.2V –3.3V,5V兼容。
*自動(dòng)速度識(shí)別功能。
*監(jiān)測(cè)所有JTAG信號(hào)和目標(biāo)板電壓。
*完全即插即用。
*使用USB電源(但不對(duì)目標(biāo)板供電)
*帶USB連接線和20芯扁平電纜。
*支持多JTAG器件串行連接。
*標(biāo)準(zhǔn)20芯JTAG仿真插頭。
*選配14芯JTAG仿真插頭。
*選配用于5V目標(biāo)板的適配器。
*帶J-Link TCP/IP server,允許通過(guò)TCP/ IP網(wǎng)絡(luò)使用J-Link。
產(chǎn)品規(guī)格
電源: USB供電,整機(jī)電流《 50mA 。
USB接口: USB 2.0全速12Mbps。
目標(biāo)板接口: JTAG (20P)
支持的目標(biāo)板電壓: 1.2 – 3.3V,5V兼容。
目標(biāo)板供電電壓: 4.5 – 5V (由USB提供5V)
目標(biāo)板供電電流: 最大300mA,具有過(guò)流保護(hù)功能。
工作環(huán)境溫度: +5°C 。。. +60°C。
存儲(chǔ)溫度: -20°C 。。. +65 °C。
濕度: 《90%
尺寸(不含電纜): 100mm x 53mm x 27mm。
重量(不含電纜): 80g。
電磁兼容: EN 55022, EN 55024。
基于J-Link直接燒寫(xiě)NOR Flash的辦法
本步驟適合Mini 2440 / micro 2440 / TQ 2440 / OK 2440-Ⅲ / FL 2440開(kāi)發(fā)板燒寫(xiě)Nor Flash。
一、確認(rèn)J-Link能否識(shí)別ARM核
(1)開(kāi)發(fā)板斷電
(2)將J-Link通過(guò)JTAG排線插在開(kāi)發(fā)板的JTAG接口座上,另外一頭插在筆記本的USB口
(3)開(kāi)發(fā)板上電
(4)運(yùn)行J-Link Commander程序
(5)輸入usb并回車(chē)
如上圖所示,代表能識(shí)別ARM核。
如果上述窗口顯示的信息是:Could not find supported CPU core on JTAG chain,說(shuō)明當(dāng)前的操作J-Link不能識(shí)別CPU??梢酝ㄟ^(guò)下面三種情況來(lái)依次排除問(wèn)題:
(1)轉(zhuǎn)接板的插針沒(méi)有對(duì)齊J-Link的20針。重新拔插轉(zhuǎn)接板,并嚴(yán)格對(duì)齊每一針,重新插好,然后再測(cè)試
(2)換一根USB延長(zhǎng)線,可以直接用2440開(kāi)發(fā)板盒子里白色的USB線,替換掉黑色的USB線,插在J-Link上連接筆記本的USB口,然后重新測(cè)試
(3)替換JTAG排線,可以直接用2440開(kāi)發(fā)板盒子里的JTAG排線,然后重新測(cè)試
二、燒寫(xiě)Nor Flash
(1)將開(kāi)發(fā)板S1跳線打到Nor,然后接上J-Link,一頭插在底板的JTAG插座上,J-Link另一頭接PC的USB口,然后給開(kāi)發(fā)板上電
(2)打開(kāi)J-Flash ARM工具(開(kāi)始 -》 SEGGER -》 J-Link ARM V4.40 -》 J-Flash ARM)
(3)File -》 Open project,打開(kāi)s3c2440a_embedclub.jflash
(4)Options -》 Project settings,選擇Flash,點(diǎn)擊Select flash device,選中開(kāi)發(fā)板對(duì)應(yīng)的Nor Flash芯片型號(hào)。例如S29AL016JXXXXXX2(此型號(hào)標(biāo)注在開(kāi)發(fā)板的Nor Flash芯片上)
(5)Target -》 Connect
(6)File -》 Open data file,打開(kāi)需要下載的映像文件,例如Superboot2440.bin或者u-boot.bin
注意:這里支持的格式為.bin,如果下載的是supervivi-128M的話,需要修改后綴為supervivi-128M.bin
文件打開(kāi)后,會(huì)彈出下載地址對(duì)話框,直接輸入0即可。
點(diǎn)擊OK后如下圖所示
開(kāi)發(fā)板斷電,拔掉J-Link,再重新上電,此時(shí)在SecureCRT中將顯示Superboot啟動(dòng)的消息
結(jié)語(yǔ)
關(guān)于NOR Flash的相關(guān)介紹就到這了,如有不足之處歡迎指正。
-
J-Link
+關(guān)注
關(guān)注
0文章
84瀏覽量
22137
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論