版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、ARM嵌入式體系結構與接口技術嵌入式體系結構與接口技術第第9章章 存儲器接口存儲器接口第1頁/共46頁2 9.1 Flash ROM介紹 9.2 Nor Flash操作 9.3 NAND Flash操作 9.4 S3C2410X中Nand Flash控制器的操作 9.5 S3C2410X Nand Flash接口電路與程序設計 9.6 SDRAM芯片介紹 9.7 小結 9.8 思考與練習本章課程:本章課程:第2頁/共46頁3 Falsh器件的主要特點是在不加電的情況下能長期保持存儲的信息。Flash Memory屬于EEPROM(電擦除可編程只讀存儲器)類型。它既有ROM的特點,又有很高的存取
2、速度,而且易于擦除和重寫,功耗很小。 Flash主要有兩種類型:“或非NOR”和“與非NAND” Intel于1988年首先開發(fā)出NOR Flash技術 東芝公司1989年發(fā)表了NAND Flash結構 Nand Flash與Nor Flash對比: 1、接口對比 NOR Flash帶有通用的SRAM接口,可以輕松地掛接在CPU的地址、數(shù)據(jù)總線上,對CPU的接口要求低。NOR Flash的特點是芯片內(nèi)執(zhí)行(XIP,eXecute In Place),這樣應用程序可以直接在Flash閃存內(nèi)運行,不必再把代碼讀到系統(tǒng)RAM中。NAND Flash器件使用復雜的I/O口來串行地存取數(shù)據(jù),8個引腳用來
3、傳送控制、地址和數(shù)據(jù)信息。 9.1 Flash ROM介紹第3頁/共46頁4 2、容量和成本對比相比起NAND Flash來說,NOR Flash的容量要小,一般在132MByte左右 3、可靠性性對比NAND器件中的壞塊是隨機分布的,而壞塊問題在NOR Flash上是不存在的 4、壽命對比NAND閃存中每個塊的最大擦寫次數(shù)是一百萬次,而NOR的擦寫次數(shù)是十萬次 5、升級對比NOR Flash的升級較為麻煩,因為不同容量的NOR Flash的地址線需求不一樣不同容量的NAND Flash的接口是固定的,所以升級簡單 6、讀寫性能對比擦除NOR器件時是以64128KB的塊進行的,執(zhí)行一個寫入/擦
4、除操作的時間約為為5s。擦除NAND器件是以832KB的塊進行的,執(zhí)行相同的操作最多只需要4ms。NOR的讀速度比NAND稍快一些。9.1 Flash ROM介紹第4頁/共46頁5 9.2.1 SST39VF160芯片介紹 SST39VF160是一個1M16的CMOS多功能Flash器件 SST39VF160的工作電壓為.7,單片存儲容量為M字節(jié),采用48腳TSOP封裝,16位數(shù)據(jù)寬度。 SST39VF160引腳圖 9.2 Nor Flash操作第5頁/共46頁6 SST39VF160的引腳功能描述如下表 9.2 Nor Flash操作第6頁/共46頁7 9.2.2 SST39VF160字編程
5、操作 1、執(zhí)行3字節(jié)裝載時序,用于解除軟件數(shù)據(jù)保護 2、裝載字地址和字數(shù)據(jù) 在字編程操作中,地址在CE#或WE#的下升沿(后產(chǎn)生下降沿的那個)鎖存,數(shù)據(jù)在CE#或WE#的上升沿(先產(chǎn)生上升沿的那個)鎖存。 3、執(zhí)行內(nèi)部編程操作該操作 在第4個WE#或CE#的上升沿出現(xiàn)(先產(chǎn)生上升沿的那個)之后啟動編程操作。一旦啟動將在20ms內(nèi)完成。 9.2 Nor Flash操作第7頁/共46頁8 9.2.3 SST39VF160扇區(qū)/塊擦除操作 扇區(qū)操作通過在最新一個總線周期內(nèi)執(zhí)行一個6字節(jié)的命令時序(扇區(qū)擦除命令30H和扇區(qū)地址SA)來啟動。塊擦除操作通過在最新一個總線周期內(nèi)執(zhí)行一個6字節(jié)的命令時序(塊
6、擦除命令50H和塊地址BA)來啟動。 9.2 Nor Flash操作第8頁/共46頁9 9.2.4 SST39VF160芯片擦除操作 芯片擦除操作通過在最新一個總線周期內(nèi)執(zhí)行一個6字節(jié)的命令5555H地址處的芯片擦除命令10H時序來啟動在第6個WE#或CE#的上升沿(先出現(xiàn)上升沿的那個)開始執(zhí)行擦除操作,擦除過程中只有觸發(fā)位或數(shù)據(jù)查詢位的讀操作有效 9.2 Nor Flash操作第9頁/共46頁10 9.2.5 SST39VF160與S3C2410X的接口電路 一片SST39VF160以16位的方式和S3C2410的接口電路: 9.2 Nor Flash操作第10頁/共46頁11 9.2.6
7、SST39VF160存儲器的程序設計 1、字編程操作 從內(nèi)存“DataPtr”地址的連續(xù)“WordCnt”個16位的數(shù)據(jù)寫入SST39VF160的“ProgStart”地址 利用了數(shù)據(jù)查詢位(DQ7)和查詢位(DQ6)來判斷編程操作是否完成 函數(shù)中用到的幾個宏的定義如下: #define ROM_BASE 0 x00000000 #define CMD_ADDR0 *(volatile U16 *)(0 x5555*2+ROM_BASE) #define CMD_ADDR1 *(volatile U16 *)(0 x2aaa*2+ROM_BASE)9.2 Nor Flash操作第11頁/共46
8、頁12 9.2.6 SST39VF160存儲器的程序設計 2、扇區(qū)擦除操作 SectorErase函數(shù)實現(xiàn)了一個扇區(qū)(扇區(qū)的開始地址為“sector”)的擦除工作 注意數(shù)據(jù)查詢位(DQ7)在編程函數(shù)和擦除函數(shù)中的使用差別 9.2 Nor Flash操作第12頁/共46頁13 9.2.6 SST39VF160存儲器的程序設計 3、讀操作 FlashRead函數(shù)實現(xiàn)了從“ReadStart”位置,讀取“Size”個字節(jié)的數(shù)據(jù)到“DataPtr”中。 void FlashRead(unsigned int ReadStart, unsigned short *DataPtr, unsigned in
9、t Size) int i;ReadStart += ROM_BASE;for(i=0; iSize/2; i+)*(DataPtr+i) = *(unsigned short *)ReadStart+i); 9.2 Nor Flash操作第13頁/共46頁14 9.3.1 K9F1280芯片介紹 常見的8位Nand Flash有三星公司的K9F1208、K9F1G08、K9F2G08等,K9F1208、K9F1G08、K9F2G08的數(shù)據(jù)頁大小分別為512B、2kB、2kB。 K9F1208存儲容量為64M字節(jié),除此之外還有2048K字節(jié)的spare存儲區(qū)。該器件采用TSSOP48封裝,工作
10、電壓。 K9F1208對528字節(jié)一頁的寫操作所需時間典型值是200s,而對16K字節(jié)一塊的擦除操作典型僅需2ms。8位I/O端口采用地址、數(shù)據(jù)和命令復用的方法。這樣既可減少引腳數(shù),還可使接口電路簡潔。 9.3 NAND Flash操作第14頁/共46頁15 9.3.1 K9F1280芯片介紹 管腳名稱 描述I/O0 I/O7 數(shù)據(jù)輸入輸出 CLE命令鎖存使能 ALE地址鎖存使能CE#片選 RE#讀使能 WE#寫使能WP#寫保護R/B#準備好/忙碌 輸出 VCC電源(+2.7V3.6V) VSS地 N.C空管腳9.3 NAND Flash操作第15頁/共46頁16 9.3.1 K9F1280芯
11、片介紹 1block = 32page;1page = 528byte = 512byte(Main Area) + 16byte(Spare Area) 總容量為 = 4 096(block數(shù)量) 32(page/block) 512(byte/page) = 64MB Nand Flash以頁為單位讀寫數(shù)據(jù),而以塊為單位擦除數(shù)據(jù)。 對Nand Flash的操作主要包括:讀操作、擦除操作、寫操作、壞塊設別、壞塊標識等。 9.3 NAND Flash操作第16頁/共46頁17 9.3.2 讀操作過程 K9F1208的尋址分為4個cycle,分別是A0:7、A9:16、A17:24、A25 讀操
12、作的過程為: 發(fā)送讀取指令; 發(fā)送第1個cycle地址; 發(fā)送第2個cycle地址; 發(fā)送第3個cycle地址; 發(fā)送第4個cycle地址; 讀取數(shù)據(jù)至頁末 K9F1208提供了兩個讀指令:“0 x00”、“0 x01”。這兩個指令區(qū)別在于“0 x00”可以將A8置為0,選中上半頁;而“0 x01”可以將A8置為1,選中下半頁 讀操作的對象為一個頁面,建議從頁邊界開始讀寫至頁結束 9.3 NAND Flash操作第17頁/共46頁18 9.3.2 讀操作過程 K9F1208讀操作流程如圖 9.3 NAND Flash操作第18頁/共46頁19 9.3.3 擦除操作過程 擦除的操作過程為: 發(fā)送
13、擦除指令“0 x60”; 發(fā)送第1個cycle地址(A9A16); 發(fā)送第2個cycle地址(A17A24); 發(fā)送第3個cycle地址(A25); 發(fā)送擦除指令“0 xD0”; 發(fā)送查詢狀態(tài)命令字“0 x70”; 讀取K9F1208的數(shù)據(jù)總線,判斷I/O 6上的值或判斷R/B線上的值,直到I/O 6 = 1或R/ = 1; 判斷I/O 0是否為0,從而確定操作是否成功。0表示成功,1表示失敗。 擦除的對象是一個數(shù)據(jù)塊,即32個頁面。 9.3 NAND Flash操作第19頁/共46頁20 9.3.3 擦除操作過程 K9F1208擦除操作流程圖9.3 NAND Flash操作第20頁/共46頁
14、21 9.3.4 寫操作過程 寫入的操作過程為: 發(fā)送編程指令“0 x80”; 發(fā)送第1個cycle地址(A0A7); 發(fā)送第2個cycle地址(A9A16); 發(fā)送第3個cycle地址(A17A24); 發(fā)送第4個cycle地址(A25); 向K9F1208的數(shù)據(jù)總線發(fā)送一個扇區(qū)的數(shù)據(jù); 發(fā)送編程指令“0 x10”; 發(fā)送查詢狀態(tài)命令字“0 x70”; 讀取K9F1208的數(shù)據(jù)總線,判斷I/O 6上的值或判斷R/線上的值,直到I/O 6=1或R/ =1; 判斷I/O 0是否為0,從而確定操作是否成功。0表示成功,1表示失敗。 注意:寫入的操作對象是一個頁面。 9.3 NAND Flash操作
15、第21頁/共46頁22 9.3.4 寫操作過程 K9F1208寫操作流程圖 9.3 NAND Flash操作第22頁/共46頁23 9.4.1 S3C2410X Nand Flash控制器概述 S3C2410 x 可以實現(xiàn)從NAND Flash啟動和引導系統(tǒng),在SDRAM上執(zhí)行主程序代碼。 S3C2410 x中的NAND Flash的特性有: 支持讀/擦/編程NAND Flash存儲器 支持自動引導模式:復位后,引導代碼被送入Steppingstone,傳送后,引導代碼在Setppingstone中運行 具備硬件ECC產(chǎn)出模塊 NAND Flash控制器工作機制9.4 S3C2410X中Nan
16、d Flash控制器的操作第23頁/共46頁24 9.4.2 S3C2410X Nand Flash控制器寄存器詳解 配置寄存器NFCONF (地址0 x4E000000) 9.4 S3C2410X中Nand Flash控制器的操作第24頁/共46頁25 9.4.2 S3C2410X Nand Flash控制器寄存器詳解 命令寄存器NFCMD(地址:0 x4e000004) 地址寄存器NFADDR(地址:0 x4E000008) 9.4 S3C2410X中Nand Flash控制器的操作第25頁/共46頁26 9.4.2 S3C2410X Nand Flash控制器寄存器詳解 數(shù)據(jù)寄存器NFD
17、ATA(地址:0 x4E00000C) 狀態(tài)寄存器NFSTAT(地址:0 x4E000010) 9.4 S3C2410X中Nand Flash控制器的操作第26頁/共46頁27 9.5.1 K9F1208和S3C2410X的接口電路 K9F1208和S3C2410X 的接口電路 9.5 S3C2410X Nand Flash接口電路與程序設計第27頁/共46頁28 9.5.2 S3C2410X NAND Flash寄存器設置 (1)控制器初始化時,需要使能控制器 設置UFCON的15為“1”。 (2)使能NAND Flash芯片 設置UFCON的11為“0”。 (3)通過NAND控制器向NAN
18、D Flash寫入命令 設置NFCMD為要發(fā)送的命令。 (4)通過NAND控制器向NAND Flash寫入地址 設置NFADDR為要發(fā)送的地址。 (5)通過NAND控制器向NAND Flash寫入數(shù)據(jù) 設置NFDATA為要寫入的數(shù)據(jù)。9.5 S3C2410X Nand Flash接口電路與程序設計第28頁/共46頁29 9.5.3 S3C2410X控制K9F1208的程序設計 實現(xiàn)向K9F1208的一個頁面中寫入0,1,2,3,4,5,6,7,8,9。然后讀出數(shù)據(jù),打印到串口終端。程序設計如下: 1、NAND Flash控制器相關寄存器及宏定義 2、主測試程序 3、K9F1208初始化函數(shù) 4
19、、K9F1208頁面讀函數(shù) 5、K9F1208頁面寫函數(shù) 6、K9F1208塊擦除函數(shù) 7、調試與運行結果9.5 S3C2410X Nand Flash接口電路與程序設計第29頁/共46頁30 9.6.1 SDRAM介紹 SDRAM存儲一個位的消息只需要一只晶體管,但是需要周期性地充電,才能使保存的信息不消失。 SDRAM的一個存儲位單元結構如圖 電容器的狀態(tài)決定了這個 SDRAM單位的邏輯狀態(tài)是 1還是0。一個充電的電容 器被認為是邏輯上的1, 而“空”的電容器則是0 。9.6 SDRAM芯片介紹第30頁/共46頁31 9.6.1 SDRAM介紹 SDRAM內(nèi)部結構 示意圖 9.6 SDRA
20、M芯片介紹第31頁/共46頁32 9.6.1 SDRAM介紹 SDRAM的讀取過程: SDRAM的寫入過程和讀取過程基本一樣,這里就不再詳細介紹了 在SDRAM讀取方式中,當一個讀取周期結束后,和都必須失效,然后再進行一個回寫過程才能進入到下一次的讀取周期中。9.6 SDRAM芯片介紹第32頁/共46頁33 9.6.1 SDRAM介紹 與Flash存儲器相比較,SDRAM不具有掉電保持數(shù)據(jù)的特性,但其存取速度大大高于Flash存儲器,且具有讀/寫的屬性,因此,SDRAM在系統(tǒng)中主要用作程序的運行空間,數(shù)據(jù)及堆棧區(qū)。當系統(tǒng)啟動時,CPU首先從復位地址0 x0處讀取啟動代碼,在完成系統(tǒng)的初始化后,
21、程序代碼一般應調入SDRAM中運行,以提高系統(tǒng)的運行速度,同時,系統(tǒng)及用戶堆棧、運行數(shù)據(jù)也都放在SDRAM中。 SDRAM的存儲單元可以理解為一個電容,總是傾向于放電,為避免數(shù)據(jù)丟失,必須定時刷新(充電) 目前常用的SDRAM為8位/16位的數(shù)據(jù)寬度,工作電壓一般為。主要的生產(chǎn)廠商為HYUNDAI、Winbond等9.6 SDRAM芯片介紹第33頁/共46頁34 9.6.2 HY57V561620的結構 HY57V561620存儲容量為4M4bank16位(32M字節(jié)),工作電壓為,常見封裝為54腳TSOP,兼容LVTTL接口,支持自動刷新(Auto-Refresh)和自刷新(Self-Ref
22、resh),16位數(shù)據(jù)寬度9.6 SDRAM芯片介紹第34頁/共46頁35 9.6.2 HY57V561620的結構引腳名稱CLK時鐘CKE時鐘使能 /CS片選 BA0,BA1組地址選擇 A12A0地址總線/RAS行地址鎖 /CAS存列地址鎖/WE存寫使能LDQM,UDQM數(shù)據(jù)I/O屏蔽DQ15DQ0數(shù)據(jù)總線VDD/VSS電源/地 VDDQ/VSSQ電源/地 NC未連接9.6 SDRAM芯片介紹第35頁/共46頁36 9.6.3 接口電路 采用的是利用兩片16位的SDRAM構造成一片32位的SDRAM存儲系統(tǒng)。9.6 SDRAM芯片介紹第36頁/共46頁37 9.6.3 接口電路 引腳描述如下
23、: nSRAS:SDRAM行地址選通信號 nSCAS:SDRAM列地址選通信號 nGCS6:SDRAM芯片選擇信號 nWBE3:0:SDRAM數(shù)據(jù)屏蔽信號 SCLK01:SDRAM時鐘信號 SCKE:SDRAM時鐘允許信號 DATA0:31:32位數(shù)據(jù)信號 ADDR2:14:行列地址信號 ADDR25:24:bank選擇線9.6 SDRAM芯片介紹第37頁/共46頁38 9.6.3 接口電路 HY57V561620的Bank選擇線BAn與S3C2410X地址線的對應關系,依照表9-12選擇連接。HY57V561620的Bank大小位64MB,總線寬度位16位,單個器件容量為256MB,存儲空間配置為(4MB164BANK)2片。所以BANK地址對應A25:24 SDRAM Bank地址配置表 9.6 SDRAM芯片介紹第38頁/共46頁39 9.6.4 寄存器設置 1BWSCON寄存器 BWSCON寄存器主要用來設置外接存儲器的總線寬度和等待狀態(tài) BWSCON寄存器在Bank6上的位定義 SDRAM(Bank6)采用32位總線寬度,因此,DW6=10,其他2位采用缺省值 9.6 SDRAM芯片介
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版農(nóng)機零部件供應合同協(xié)議范本4篇
- 二零二五年度沐足行業(yè)員工薪酬福利合同范本4篇
- 2025年度南匯農(nóng)業(yè)志數(shù)據(jù)庫建設合同3篇
- 二零二五版泥水工程勞務分包合同范本(含保險)4篇
- 2025年度綠色環(huán)?;彝凉こ陶型稑撕贤瑯颖?篇
- 2025年獼猴桃樹種子種質資源保護與利用合同4篇
- 二零二五年度面包磚市場推廣與銷售渠道建設合同4篇
- 二零二五年度環(huán)保設備技術改造與維護合同4篇
- 二零二五年度乘風破浪或有事的動態(tài)環(huán)保技術開發(fā)合同4篇
- 2025年度面包磚生產(chǎn)線自動化改造合同范本3篇
- 2024年公證遺產(chǎn)繼承分配協(xié)議書模板
- 燃氣經(jīng)營安全重大隱患判定標準課件
- JB-T 8532-2023 脈沖噴吹類袋式除塵器
- 深圳小學英語單詞表(中英文)
- 護理質量反饋內(nèi)容
- 山東省濟寧市2023年中考數(shù)學試題(附真題答案)
- 抖音搜索用戶分析報告
- 鉆孔灌注樁技術規(guī)范
- 2023-2024學年北師大版必修二unit 5 humans and nature lesson 3 Race to the pole 教學設計
- 供貨進度計劃
- 彌漫大B細胞淋巴瘤護理查房
評論
0/150
提交評論