日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]硬件原理1.1.NorFlash簡(jiǎn)介NORFlash是Intel在1988年推出的一款商業(yè)性閃存芯片,它需要很長(zhǎng)的時(shí)間進(jìn)行抹寫,大半生它能夠提供完整的尋址與數(shù)據(jù)總線,并允許隨機(jī)存取存儲(chǔ)器上的任何區(qū)域,而且它可以忍受一萬(wàn)次到一百萬(wàn)次


硬件原理

1.1.NorFlash簡(jiǎn)介

NORFlash是Intel在1988年推出的一款商業(yè)性閃存芯片,它需要很長(zhǎng)的時(shí)間進(jìn)行抹寫,大半生它能夠提供完整的尋址與數(shù)據(jù)總線,并允許隨機(jī)存取存儲(chǔ)器上的任何區(qū)域,而且它可以忍受一萬(wàn)次到一百萬(wàn)次擦寫,是早期的閃存媒體的基礎(chǔ)。

1.2.處理器連接

從處理器的角度來(lái)看,每個(gè)地址對(duì)應(yīng)的是一個(gè)BYTE的數(shù)據(jù)單元。而NorFlash的每個(gè)地址有可能對(duì)應(yīng)的是一個(gè)BYTE的數(shù)據(jù)單元,也有可能對(duì)應(yīng)的是一個(gè)HALF-WORD的數(shù)據(jù)單元。所以在硬件設(shè)計(jì)中,連接ARM處理器和NorFlash時(shí),必須根據(jù)實(shí)際情況對(duì)地址信號(hào)做特別的處理。如果ARM處理器外部擴(kuò)展的是8-BIT的NORFlash,數(shù)據(jù)線和地址線的連接應(yīng)該如圖1所示。從圖中我們可以看到,處理器的數(shù)據(jù)信號(hào)D0-D7和Flash的數(shù)據(jù)信號(hào)D0-D7是一一對(duì)應(yīng)連接的,處理器的地址信號(hào)A0-An和NORFlash的地址信號(hào)A0-An也是一一對(duì)應(yīng)連接的。

如果ARM處理器外部擴(kuò)展的是16-BIT的NorFlash,數(shù)據(jù)線必須要錯(cuò)位連接。圖2給了一個(gè)ARM處理器和16-BITNORFlash的連接示意圖。如圖2所示,ARM處理器的數(shù)據(jù)信號(hào)D0-D15和Flash的數(shù)據(jù)信號(hào)D0-D15是一一對(duì)應(yīng)的。而ARM處理器的地址信號(hào)和NorFlash的地址信號(hào)是錯(cuò)位連接的,ARM的A0懸空,ARM的A1連接Flash的A0,ARM的A2連接Flash的A1,依次類推。需要錯(cuò)位連接的原因是:ARM處理器的每個(gè)地址對(duì)應(yīng)的是一個(gè)BYTE的數(shù)據(jù)單元,而16-BIT的Flash的每個(gè)地址對(duì)應(yīng)的是一個(gè)HALF-WORD(16-BIT)的數(shù)據(jù)單元。為了保持匹配,所以必須錯(cuò)位連接。這樣,從ARM處理器發(fā)送出來(lái)的地址信號(hào)的最低位A0對(duì)16-BITFlash來(lái)說(shuō)就被屏蔽掉了。

補(bǔ)充說(shuō)明:

1、一般來(lái)說(shuō),ARM處理器內(nèi)部要設(shè)置相應(yīng)的寄存器,告訴處理器外部擴(kuò)展的Flash的位寬(8-BIT/16-BIT/32-BIT)。這樣,處理器才知道在訪問(wèn)的時(shí)候如何從Flash正確的讀取數(shù)據(jù)。

2、有些ARM處理器內(nèi)部可以設(shè)置地址的錯(cuò)位。對(duì)于支持軟件選擇地址錯(cuò)位的處理器,在連接16-BITFlash的時(shí)候,硬件上可以不需要把地址線錯(cuò)位。

3、如果處理器支持內(nèi)部設(shè)置地址錯(cuò)位,在實(shí)際訪問(wèn)的時(shí)候,送出的地址實(shí)際上是在MCU內(nèi)部做了錯(cuò)位處理,其作用是等效于硬件連接上的錯(cuò)位的。

2.芯片手冊(cè)

2.1.特性

容量2MB

扇區(qū)分布

一個(gè)16K,兩個(gè)8K,一個(gè)32K,31個(gè)64K(BoottomBootDevice

2.2.引腳描述

2.3.邏輯圖

2.4.設(shè)備總線操作

字節(jié)還是半字選擇,BYET#引腳高,半字;低,字節(jié)。

開機(jī)或復(fù)位自動(dòng)進(jìn)入讀狀態(tài)。

寫命令序列,繞過(guò)解鎖模式UnlockBypass只需要2個(gè)周期,而不是4個(gè)周期

編程和擦除需要輪詢狀態(tài)位。

自動(dòng)選擇模式:讀ID,扇區(qū)組保護(hù),硅扇區(qū)。兩種方法進(jìn)入自動(dòng)選擇模式,編程器電壓方式,寫命令方式。

2.5.CFI

2.6.指令集

見數(shù)據(jù)手冊(cè)

2.7.讀

NorFlash上電后處于數(shù)據(jù)讀取狀態(tài)(ReadingArrayData)。此狀態(tài)可以進(jìn)行正常的讀,這和讀取SDRAM/SRAM/ROM一樣。(要是不一樣的話,芯片上電后如何從NorFlash中讀取啟動(dòng)代碼)。

2.8.讀ID

一般再對(duì)Flash進(jìn)行操作前都要讀取芯片信息比如設(shè)備ID號(hào)。這樣做的主要目的是為了判斷自己寫的程序是否支持該設(shè)備。NorFlash支持2種方式獲取ID號(hào):一種是編程器所用的方法需要高電壓(8.5V-12.5V);另一種方法就是所謂的in-system方法,就是在系統(tǒng)中通過(guò)NorFlash的命令寄存器來(lái)完成。本文中只對(duì)in-system方法進(jìn)行說(shuō)明,此時(shí)需要切換到自動(dòng)選擇(AutoselectCommand),這要通過(guò)發(fā)送命令來(lái)完成。注意:進(jìn)入自動(dòng)選擇(AutoselectCommand)模式后需要發(fā)送復(fù)位命令才能回到數(shù)據(jù)讀取狀態(tài)(ReadingArrayData)。

2.9.擦除

在完成信息獲取后一般就要擦除數(shù)據(jù)。NorFlash支持扇區(qū)擦除(SectorErase)和整片擦除(ChipErase),這2種模式都有對(duì)應(yīng)的命令序列,在完成擦除命令后會(huì)自動(dòng)返回到數(shù)據(jù)讀取(ReadingArrayData)狀態(tài),在返回前可查詢編程的狀態(tài)。

2.10.編程

完成擦除后就需要對(duì)芯片進(jìn)行寫入操作也就是編程,這就需要進(jìn)入編程(Program)狀態(tài)。在完成編程命令后會(huì)自動(dòng)返回到數(shù)據(jù)讀取(ReadingArrayData)狀態(tài),在返回前可查詢編程的狀態(tài),注意:編程前一定要先擦除.因?yàn)榫幊讨荒軐?#39;1'改寫為'0',通過(guò)擦寫可以將數(shù)據(jù)全部擦寫為'1'。

2.11.等待操作

NorFlash提供幾個(gè)數(shù)據(jù)位來(lái)確定一個(gè)寫操作的狀態(tài),它們分別是:DQ2、DQ3、DQ5、DQ6、DQ7、andRY/BY#。如上圖所示。其中DQ7,RY/BY#引腳,和DQ6中的每一個(gè)都提供了一種方法來(lái)判斷一個(gè)編程或者擦除操作是否已經(jīng)完成或正在進(jìn)行中。實(shí)際編程中只需要使用其中的一種。
DQ7:Data#Pollingbit,DQ7在編程時(shí)的狀態(tài)變化。在編程過(guò)程中從正在編程的地址中讀出的數(shù)據(jù)的DQ7為要寫入數(shù)據(jù)的補(bǔ)碼。比如寫入的數(shù)據(jù)為0x0000,及輸入的DQ7為'0',則在編程中讀出的數(shù)據(jù)為'1';當(dāng)編程完成時(shí)讀出的數(shù)據(jù)又變回輸入的數(shù)據(jù)即'0'。在擦除過(guò)程中DQ7輸出為'0';擦除完成后輸出為'1';注意讀取的地址必須是擦除范圍內(nèi)的地址。
RY/BY#:高電平表示'就緒',低電平表示'忙'。
DQ6:輪轉(zhuǎn)位1(ToggleBit1)。
在編程和擦除期間,讀任意地址都會(huì)導(dǎo)致DQ6的輪轉(zhuǎn)(0,1間相互變換)當(dāng)操作完成后,DQ6停止轉(zhuǎn)換。
DQ2:輪轉(zhuǎn)位2(ToggleBit2)。當(dāng)某個(gè)扇區(qū)被選中擦除時(shí),讀有效地址(地址都在擦除的扇區(qū)范圍內(nèi))會(huì)導(dǎo)致DQ2的輪轉(zhuǎn)。
注意:DQ2只能判斷一個(gè)特定的扇區(qū)是否被選中擦除。但不能區(qū)分這個(gè)快是否正在擦除中或者正處于擦除暫停狀態(tài)。相比之下,DQ6可以區(qū)分NorFlash是否處于擦除中或者擦除狀態(tài),但不能區(qū)分哪個(gè)快被選中擦除。因此需要這2個(gè)位來(lái)確定扇區(qū)和模式狀態(tài)信息。
DQ5:超時(shí)位(ExceededTimingLimits),當(dāng)編程或擦除操作超過(guò)了一個(gè)特定內(nèi)部脈沖計(jì)數(shù)是DQ5=1,這表明操作失敗。當(dāng)編程時(shí)把'0'改為'1'就會(huì)導(dǎo)致DQ5=1,因?yàn)橹挥胁脸磷霾拍馨?#39;0'改為'1'。當(dāng)錯(cuò)誤發(fā)生后需要執(zhí)行復(fù)位命令(見圖1-1)才能返回到讀數(shù)據(jù)狀態(tài)。
DQ3:(扇區(qū)擦除計(jì)時(shí)位)SectorEraseTimer,只在扇區(qū)擦除指令時(shí)起作用。當(dāng)擦除指令真正開始工作是DQ3=1,此時(shí)輸入的命令(除擦除暫停命令外)都被忽略。DQ3=0,是可以添加附加的扇區(qū)用于多扇區(qū)擦除。
以上講了這些狀態(tài)為,實(shí)際只需要使用幾個(gè)就行,比較簡(jiǎn)單的就是選擇DQ5,DQ6/DQ2。

3.mini2440電路圖

4.S3C2440寄存器


/*******************************************************************

*Copyright(C),2011-2012,XXX.

*FileName:nand.h

*Author:HuangYinqing

*Version:1.0

*Date::2012-04-22

*Description:norflash驅(qū)動(dòng).

*FunctionList:

*History:

******************************************************************/

#ifndef__NOR_H__

#define__NOR_H__

/*norflash調(diào)試等級(jí)*/

#defineDBG_NOR_LEVEL1

#defineNOR_TYPE_S29AL016J0x00012249

/*norflash信息*/

#defineNOR_MAIN_SECT_SIZE(64*1024)//==1頁(yè)2k

#defineNOR_SIZE(2*1024*1024)//==容量256M

#defineNOR_FLASH_BASE0x00000000//==nor基地址0

/*命令地址*/

#defineNOR_CMD_ADDR1(*(volatileunsignedshort*)(NOR_FLASH_BASE+(0x00000555<<1)))

#defineNOR_CMD_ADDR2(*(volatileunsignedshort*)(NOR_FLASH_BASE+(0x000002AA<<1)))

/*操作命令*/

#defineNOR_CMD_UNLOCK10x000000AA

#defineNOR_CMD_UNLOCK20x00000055

#defineNOR_CMD_RESET0xF0

#defineNOR_CMD_AUTOSELECT0x90

#defineNOR_CMD_PROGRAM0xA0

#defineNOR_CMD_ERASE_SETUP0x80

#defineNOR_CMD_CHIP_ERASE0x30

#defineNOR_CMD_SECTOR_ERASE0x10

/*函數(shù)*/

void NorTe

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

中國(guó)北京(2025年9月10日)—— 業(yè)界領(lǐng)先的半導(dǎo)體器件供應(yīng)商兆易創(chuàng)新GigaDevice(股票代碼 603986)亮相于深圳國(guó)際會(huì)展中心舉辦的第26屆中國(guó)國(guó)際光電博覽會(huì)(展位號(hào):12C12),全面展示GD25 SPI...

關(guān)鍵字: 光通信 MCU Flash

在嵌入式系統(tǒng)中,F(xiàn)lash存儲(chǔ)器因其非易失性、高密度和低成本特性,成為代碼存儲(chǔ)和關(guān)鍵數(shù)據(jù)保存的核心組件。然而,MCU驅(qū)動(dòng)Flash讀寫時(shí),開發(fā)者常因?qū)τ布匦岳斫獠蛔慊虿僮髁鞒淌韬?,陷入性能下降、?shù)據(jù)損壞甚至硬件損壞的陷...

關(guān)鍵字: MCU驅(qū)動(dòng) Flash

深圳2025年4月24日 /美通社/ -- 4月23日,2025上海國(guó)際車展盛大啟幕,全球汽車產(chǎn)業(yè)的目光聚焦于這場(chǎng)科技與創(chuàng)新的盛宴。在眾多展示亮點(diǎn)中,汽車AI+應(yīng)用無(wú)疑是最大的熱點(diǎn)之一,“駕控超級(jí)大腦”技術(shù)概念、車機(jī)交互...

關(guān)鍵字: GB EMMC Flash PS

在自動(dòng)駕駛、機(jī)器人與工業(yè)檢測(cè)領(lǐng)域,激光雷達(dá)作為環(huán)境感知的核心傳感器,其技術(shù)路線正從機(jī)械式向固態(tài)化演進(jìn)。MEMS、OPA與Flash作為固態(tài)激光雷達(dá)的三大主流架構(gòu),分別通過(guò)微機(jī)電系統(tǒng)、光學(xué)相控陣與泛光面陣技術(shù)實(shí)現(xiàn)掃描與探測(cè)...

關(guān)鍵字: MEMS OPA Flash

在嵌入式系統(tǒng)開發(fā)中,外部存儲(chǔ)介質(zhì)的選擇和管理至關(guān)重要。SPI Flash以其高容量、低功耗、高速率等特點(diǎn),成為眾多嵌入式設(shè)備的首選存儲(chǔ)方案。然而,如何高效管理SPI Flash存儲(chǔ),避免數(shù)據(jù)丟失、提高讀寫性能,是開發(fā)者必...

關(guān)鍵字: 嵌入式SPI Flash LittleFS

STM32單片機(jī)作為一種高性能、低功耗的嵌入式微控制器,廣泛應(yīng)用于各種電子設(shè)備中。在實(shí)際應(yīng)用中,為了擴(kuò)展存儲(chǔ)空間或?qū)崿F(xiàn)數(shù)據(jù)的持久化存儲(chǔ),經(jīng)常需要使用外部FLASH存儲(chǔ)器。本文將詳細(xì)介紹STM32單片機(jī)如何讀寫外部FLAS...

關(guān)鍵字: STM32 Flash

在嵌入式系統(tǒng)和存儲(chǔ)設(shè)備領(lǐng)域,F(xiàn)lash和EEPROM(電可擦可編程只讀存儲(chǔ)器)因其非易失性存儲(chǔ)特性而被廣泛應(yīng)用。這些存儲(chǔ)設(shè)備能夠在斷電后保持?jǐn)?shù)據(jù),對(duì)于需要長(zhǎng)期保存配置參數(shù)、程序代碼或用戶數(shù)據(jù)的應(yīng)用來(lái)說(shuō)至關(guān)重要。然而,關(guān)于...

關(guān)鍵字: Flash EEPROM
關(guān)閉