EEPROM原理與應(yīng)用.ppt_第1頁
EEPROM原理與應(yīng)用.ppt_第2頁
EEPROM原理與應(yīng)用.ppt_第3頁
EEPROM原理與應(yīng)用.ppt_第4頁
EEPROM原理與應(yīng)用.ppt_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、EEPROM Introduction,AR硬件 李東 00176431,Page 2,目錄,EEPROM器件簡介 I2C EEPROM器件介紹 SPI EEPROM器件介紹,Page 3,EEPROM是Electrically-Erasable Programmable Read Only Memory的簡稱,中文意為:電可擦可編程只讀存儲器。所謂只讀存儲器是因?yàn)榭梢杂霉苣_設(shè)置或軟件命令方式設(shè)置其工作于只讀方式,并沒有和可擦可編程的說法矛盾。可以支持100萬次擦寫,數(shù)據(jù)保存100年以上。一般來說,EEPROM適用于存儲諸如初始化配置數(shù)據(jù)、單板重要信息等場合,這種場合的要求是:數(shù)據(jù)存儲量比較少

2、、訪問速率要求不高、掉電后數(shù)據(jù)不丟失。因此EEPROM,特別是串行EEPROM是最佳選擇,它還能節(jié)省單板的空間,我們公司用的都是串行EEPROM。串行EEPROM按照硬件接口的不同可以分為兩種: 1、I2C接口EEPROM; 2、SPI接口EEPROM。 以下對這兩種串行EEPROM分開來做介紹。,EEPROM 器件簡介,Page 4,8PIN的I2C接口EEPROM的管腳圖如圖所示: 8PIN的I2C接口EEPROM管腳,I2C接口EEPROM管腳說明,Page 5,14PIN-EEPROM比8PIN-EEPROM多出來的管腳都是NC腳,并且不常用,所以此處就不介紹。 I2C接口EEPROM

3、使用兩根線進(jìn)行讀寫操作,一根為時鐘線(SCL)、另一根為數(shù)據(jù)線(SDA)。SDA為雙向信號,同時由于EEPROM只能是I2C總線中的Slave,所以SCL為輸入信號。和標(biāo)準(zhǔn)的I2C總線一樣,SDA的輸出為Open-drain方式。 WP為寫保護(hù)管腳,高電平使能。 A2:0為地址輸入管腳,用來作為EEPROM地址識別位,不同的EEPROM使用的位數(shù)不同。 VCC為電源管腳,不同的EEPROM有不同的電源電壓要求。同時,不同的供電電壓支持的最高時鐘頻率也不同,電壓越高支持的時鐘頻率也越高。I2C接口EEPROM支持的最高時鐘頻率一般為100KHz400KHz。 GND為地管腳。,I2C接口EEPR

4、OM管腳說明,Page 6,I2C接口EEPROM操作分析,控制字節(jié)格式,Page 7,I2C接口EEPROM操作分析,I2C接口EEPROM傳輸控制字節(jié)格式見上圖。 S:開始傳輸指示。 Control Code:所有I2C接口EEPROM統(tǒng)一的控制碼,4位組成“1010”。 Chip Select Bits:EEPROM地址識別位,3位組成A2:0,分別對應(yīng)器件管腳A2:0的輸入電平,當(dāng)Master器件的I2C總線上掛接多片EEPROM時,可以由此做片選。但是有的EEPROM A2:0這3個管腳未用或者用了12個,那么此處地址識別位中,多余的位可以用來做EEPROM內(nèi)部存儲Block選擇(如

5、果需要的話)。 R/W:讀寫命令,“1”為讀;“0”為寫。 ACK:Acknowledge bit。,Page 8,I2C接口EEPROM寫操作,字節(jié)寫操作(Byte Write): 字節(jié)寫操作序列見上圖。 一次只寫1個字節(jié)。 Master先發(fā)出Start指令,接著是控制字節(jié)EEPROM正常響應(yīng),發(fā)出Acknowledge bit然后Master再送出要寫入的EEPROM存儲單元地址EEPROM正常響應(yīng),發(fā)出Acknowledge bitMaster再送出數(shù)據(jù)EEPROM正常響應(yīng),發(fā)出Acknowledge bitMaster發(fā)出Stop指令,結(jié)束本次寫操作。 其中地址位長度視EEPROM容量

6、來定,按目前公司使用的EEPROM容量來看,地址不超過2個字節(jié)。,Page 9,I2C接口EEPROM寫操作,頁寫操作(Page Write): EEPROM內(nèi)有Page Write Buffer,不同容量EEPROM的Page Write Buffer大小不同(可參見表1)。Page寫時,數(shù)據(jù)先寫入Page Write Buffer,等到Master發(fā)出Stop指令后才往存儲單元寫。 頁寫操作序列見上圖。 跟字節(jié)寫不同的是:Master寫完1個字節(jié)后不發(fā)Stop指令,繼續(xù)送出數(shù)據(jù),直到寫滿EEPROM的Page Write Buffer為止。 EEPROM內(nèi)部有地址循環(huán)計數(shù)器,每寫入1個字節(jié)

7、地址加1,當(dāng)?shù)刂芳拥疆?dāng)前Page的上界時,如果還繼續(xù)寫的話,地址就會回到當(dāng)前Page的下界。,Page 10,I2C接口EEPROM寫操作,頁寫操作(Page Write): 以24LC08為例,它的存儲結(jié)構(gòu)為:4(block)2568(bit) ,Page Write Buffer大小為16bytes。那么Page Write時,在Control Byte指定Block選擇位“B1B0”,在Word Address指定8位地址“A7A6A5A4A3A2A1A0”。那樣“B1B0”和“A7A6A5A4”就指定了當(dāng)前Page Write是哪個Page,“B1B0A7A6A5A40000”為當(dāng)前P

8、age的下界,“B1B0A7 A6A5A41111”為當(dāng)前Page的上界,而“A3A2A1A0”指定了從當(dāng)前Page的哪個單元開始寫。內(nèi)部地址循環(huán)計數(shù)器就從“A3A2A1A0”開始計數(shù),每寫1次加1,當(dāng)計數(shù)值為“1111”時,如果繼續(xù)寫的話,計數(shù)值就回到“0000”。 所以一次Page Write操作時,數(shù)據(jù)不要超過1個Page的長度,否則會造成數(shù)據(jù)覆蓋。,Page 11,I2C接口EEPROM讀操作,當(dāng)前地址讀操作: 當(dāng)前地址讀操作序列見上圖。 Master每對EEPROM進(jìn)行一次讀/寫操作,EEPROM內(nèi)部地址計數(shù)器就會加1,因此當(dāng)前地址單元為前一次訪問的下一個地址單元。 Current

9、Read方式就利用這個原則省略了地址,Master只需送出包含讀命令的控制字節(jié)就行。 Master接收1個字節(jié)后,無效Acknowledge bit,并送出Stop指令,結(jié)束當(dāng)前讀操作。,Page 12,I2C接口EEPROM讀操作,任意讀操作: 任意讀操作序列見上圖。 Master要先送出寫操作命令,并且送出地址,地址可以是任意的。 Master要重新發(fā)出開始指令來結(jié)束寫操作,然后再送出包含讀命令的控制字節(jié)。 Master接收1個字節(jié)后,無效Acknowledge bit,并送出Stop指令,結(jié)束當(dāng)前讀操作。,Page 13,I2C接口EEPROM讀操作,連續(xù)讀操作: 連續(xù)讀操作序列見上圖。

10、 跟當(dāng)前地址讀/任意讀不同的是:Master接收到1個字節(jié)后,不發(fā)出Stop指令,而是繼續(xù)送出Acknowledge bit,繼續(xù)接收。 每讀1次EEPROM地址計數(shù)器加1;同樣是循環(huán)計數(shù),讀操作地址計數(shù)邊界為整片EEPROM地址邊界,不同于Page Write地址計數(shù)邊界。因此連續(xù)讀方式可以讀完整片EEPROM。,Page 14,I2C接口EEPROM讀操作,Acknowledge bit檢測: 執(zhí)行寫操作時,不論是Byte Write還是Page Write,EEPROM只有接收到Master發(fā)出的Stop指令后,才觸發(fā)內(nèi)部的寫周期。 在內(nèi)部寫周期內(nèi),EEPROM不會響應(yīng)Master的指令

11、。所以Master要檢測內(nèi)部寫周期什么時候結(jié)束。Master寫操作和EEPROM內(nèi)部寫周期檢測流程如下圖:,Page 15,I2C接口EEPROM讀操作,Acknowledge bit檢測: 第1步:Master往EEPROM寫數(shù)據(jù)。 第2步:Master結(jié)束寫操作,并觸發(fā)EEPROM內(nèi)部寫周期。 第3步:檢測開始,Master發(fā)出開始指令。 第4步:Master發(fā)送包含寫命令的控制字節(jié)。 第5步:Master檢測EEPROM送出的Acknowledge bit:如果是“0”,表示EEPROM內(nèi)部寫周期已結(jié)束,可以進(jìn)行后續(xù)的操作;如果是“1”,則表示EEPROM內(nèi)部寫周期還沒有結(jié)束,這時候應(yīng)該

12、跳回到第3步,進(jìn)行循環(huán)檢測。,Page 16,不同I2C接口EEPROM之間區(qū)別,目前,公司使用Microchip公司、Atmel公司的I2C接口EEPROM。它們之間的主要區(qū)別見下表:,Page 17,SPI接口EEPROM管腳說明,SPI接口EEPROM的管腳圖如圖所示:,Page 18,SPI接口EEPROM管腳說明,S:片選輸入,高電平有效。 C:時鐘輸入。 D:串行數(shù)據(jù)輸入。 Q:串行數(shù)據(jù)輸出。 ORG:存儲結(jié)構(gòu)選擇,上拉或懸空時選擇為16-bit方式,下拉時選擇為8-bit方式。 Vcc/Vss:電源/地。不同的EEPROM有不同的電源電壓要求,同時,不同的供電電壓支持的最高時鐘頻

13、率也不同,電壓越高支持的時鐘頻率也越高。Microchip公司的SPI接口EEPROM最高時鐘頻率能達(dá)到3MHz,Atmel公司的最高能達(dá)到2MHz,ST公司的最高能達(dá)到1MHz。 PE:Program Enable,寫保護(hù)輸入,只有Microchip公司的SPI接口EEPROM才有,上拉或懸空時可以正常寫,下拉時寫保護(hù)。Atmel、ST公司的SPI接口EEPROM中該管腳為NC腳。,Page 19,SPI接口EEPROM操作分析,不同容量的SPI接口EEPROM操作指令中的地址碼長度不同,并且同樣的EEPROM在8-bit方式時,地址碼長度比16-bit方式時多一位。下表列出的是93LC76

14、的操作指令集,以供參考。其中各指令的含義如下: READ:讀。 EWEN:擦除、寫使能。 ERASE:擦除。 ERAL:全擦除。 WRITE:寫。 WRAL:全寫。 EWDS:擦除、寫禁止。,Page 20,SPI接口EEPROM操作分析,93LC76指令集ORG=1(16-bit) 93LC76指令集ORG=0(8-bit),Page 21,擦除、寫禁止/使能操作指令序列 擦除、寫使能指令序列如上圖左,擦除、寫禁止指令序列如上圖右。 時鐘未畫,后續(xù)的圖中一樣。 此時數(shù)據(jù)輸出管腳為高阻態(tài),也未畫出。 當(dāng)EEPROM上電后或者執(zhí)行了擦除、寫禁止指令后,處于擦除、寫禁止?fàn)顟B(tài),此時禁止擦除、寫操作,

15、但允許讀操作。此時若要想進(jìn)行擦除或?qū)懖僮鳎仨毾葓?zhí)行擦除、寫使能指令。,SPI接口EEPROM擦除、寫禁止使能操作,Page 22,讀操作序列 讀操作序列見上圖。 數(shù)據(jù)輸出(Q)管腳先輸出1個“0”bit,然后再由高位到低位順序輸出數(shù)據(jù),如果是連續(xù)地讀,那么后續(xù)的輸出就沒有這個“0”Bit。 16-bit或8-bit方式由ORG引腳電平選擇。 只要片選(S)繼續(xù)為高,并且時鐘繼續(xù)提供,那么EEPROM地址指針會自動增加,就能連續(xù)地輸出數(shù)據(jù),這樣就能讀出整片EEPROM的數(shù)據(jù)。Atmel公司SPI接口EEPROM不支持連續(xù)讀操作。,SPI接口EEPROM讀操作,Page 23,寫操作序列 寫操作

16、序列見上圖。 只寫一個指定的存儲單元。 寫操作中已包含了自動擦除操作,所以不需要額外的擦除指令。 16-bit或8-bit方式由ORG引腳電平選擇。,SPI接口EEPROM寫操作,Page 24,SPI接口EEPROM觸發(fā)內(nèi)部Programming的條件: 1、ST公司的:當(dāng)EEPROM在時鐘的上升沿完成最后一位(寫和全寫操作時為數(shù)據(jù)位,擦除和全擦除時為地址位)的采樣,片選(S)必須在下一個時鐘上升沿之前拉低,以觸發(fā)EEPROM內(nèi)部的Programming。 2、Atmel公司的:EEPROM完成最后一位(寫和全寫操作時為數(shù)據(jù)位,擦除和全擦除時為地址位)的采樣后就觸發(fā)內(nèi)部Programming

17、。 3、Microchip公司的:EEPROM在時鐘上升沿完成最后一位(寫和全寫操作時為數(shù)據(jù)位,擦除和全擦除時為地址位)的采樣的同時觸發(fā)內(nèi)部Programming。 Master對SPI接口EEPROM是否完成內(nèi)部Programming的檢測: 1、ST、Atmel公司的要求Master在片選(S)低電平保持了至少TSLSH(見前面SPI接口EEPROM傳輸協(xié)議介紹)時間,但是在EEPROM完成Programming之前將其拉高,并通過EEPROM的數(shù)據(jù)輸出(Q)管腳電平來檢測是否完成Programming,Q=“0”表示Busy,Q=“1”表示Ready。 具體的片選(S)低電平時間長度可以

18、參見芯片手冊。 2、Microchip公司的在檢測EEPROM是否完成內(nèi)部Programming時,不需要Master將片選(S)拉低。,SPI接口EEPROM寫操作,Page 25,全寫操作序列 全寫操作序列見上圖。 往整片EEPROM里寫相同的數(shù),不需要指定具體的地址。 16-bit或8-bit方式由ORG引腳電平選擇。 全寫操作中已包含了自動擦除操作,所以不需要額外的擦除指令。 Microchip、Atmel、ST公司EEPROM觸發(fā)內(nèi)部Programming的條件、對是否完成Programming的狀態(tài)檢測方法,分別跟寫操作時一樣。,SPI接口EEPROM全寫操作,Page 26,擦除操作序列 擦除操作序列見上圖。 只擦除指定的一個存儲單元。 擦除操作使得存儲單元數(shù)據(jù)變成全“1”,不需要Master輸入數(shù)據(jù)。 16-bit或8-bit方式由ORG引腳電平選擇。 Microchip、Atmel、ST公司EEPROM觸發(fā)內(nèi)部Programming的條件、對是否完成Programming的狀態(tài)

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論