基于USB2.0的高性能移動存儲設(shè)備的設(shè)計
1.引言
本文引用地址:http://2s4d.com/article/202560.htm閃存盤(FLASH MEMORY)是USB接口的一種典型應(yīng)用,1999年朗科研發(fā)出全球第一款USB閃存盤,成功啟動了全球閃存盤行業(yè)。由于閃存是一種基于半導(dǎo)體的存儲器,信息在斷電后可以保存,并且還具有低功耗、速度快、可擦寫性、高可靠性、低成本等特點,是高數(shù)據(jù)存儲密度的最佳選擇,在外部存儲領(lǐng)域、嵌入式系統(tǒng)、工控行業(yè)和信息家電業(yè)得到廣泛使用,如手機(jī)、數(shù)碼相機(jī)、MP3等。市場上的FLASH有多種技術(shù)來實現(xiàn),其中最常用的有NAND(與非)和NOR(異或)兩種。
武漢電離層觀象臺的高頻多普勒與到達(dá)角探測分析系統(tǒng)在投入實際觀測后,獲得了一些很重要的觀測數(shù)據(jù)[1],該系統(tǒng)的數(shù)據(jù)采集單元采用閃存作為數(shù)據(jù)移動存儲設(shè)備,實現(xiàn)與計算機(jī)的信息交互,完成數(shù)據(jù)的分析與處理。本文所討論的NAND FLASH存儲器與USB2.0控制器的硬件連接和軟件編程方法,在研究開發(fā)USB移動存儲器使其更穩(wěn)定安全地工作,具有重要的價值。本文首先介紹移動存儲設(shè)備的硬件設(shè)計部分,重點討論了該移動存儲設(shè)備的硬件接口設(shè)計,繼而給出固件程序的編程方法。其中設(shè)備固件的編寫是本設(shè)計的重點。
2.硬件實現(xiàn)
本移動存儲設(shè)備的USB2.0控制器采用ATMEL公司的AT89C5131芯片,數(shù)據(jù)存儲介質(zhì)采用SAMSUNG公司的NAND FLASH 芯片K9K2G08U0A。
2.1 AT89C5131芯片特點
AT89C5131是ATMEL公司生產(chǎn)的基于80C52內(nèi)核的高性能內(nèi)置全速USB控制器的8位單CPU微處理芯片[2],直接與MCS-51系列兼容,其內(nèi)部集成了32KB的Flash存儲器,可用于IN- System Programming;內(nèi)置4KB EEPROM,其中的1KB用于用戶數(shù)據(jù)的存儲,具有1個控制端口和6個普通可編程端口,并且支持控制傳送、同步傳送、中斷傳送和批量傳送四種傳輸方式。該芯片的優(yōu)點是采用開發(fā)者熟悉的結(jié)構(gòu)和指令集,處理能力強(qiáng),構(gòu)成系統(tǒng)的電路簡單,調(diào)試方便。
2.2 K9K2G08U0A芯片特點
K9K2G08U0A存儲器芯片的總?cè)萘繛?256M +8192k)bit*8bit,分為2048扇區(qū),每扇區(qū)又分為64頁,每頁除了2k字節(jié)的主存儲區(qū)外,還包括64字節(jié)的備用[3]。它以200μs/ 頁完成2112個字節(jié)的編程操作;還可以在2ms內(nèi)完成128k字節(jié)的擦除操作;同時隨機(jī)讀數(shù)時間是25μs;數(shù)據(jù)線與地址線復(fù)用為I/O0-I/O7共 8根線;另外還分別提供了命令控制信號線;數(shù)據(jù)保存時間超過10年。NAND FLASH存儲器不會因為存儲容量的增加而增加引腳數(shù)目,從而極大方便了系統(tǒng)設(shè)計和產(chǎn)品升級,但芯片的連接方法與編程訪問同傳統(tǒng)存儲器相比仍有較大差異。
2.3 硬件原理圖
該系統(tǒng)的硬件部分由內(nèi)置USB控制器的單片機(jī)AT89C5131,SAMSUNG公司的NAND FLASH 芯片K9K2G08U0A組成,硬件原理圖如圖1所示。必須寫入相應(yīng)的命令才能順利執(zhí)行閃存的各種操作,由于數(shù)據(jù)線與地址線復(fù)用為8根線,因此地址、命令以及數(shù)據(jù)的輸入/輸出需要通過命令鎖存信號(CLE)和地址鎖存信號(ALE)共同控制從而分時復(fù)用。
I/O[7:0]:數(shù)據(jù)輸入/輸出端口,該信號與AT89C5131芯片的P0[7:0]連接。
評論