• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于SPI接口和FIFO緩沖器的大容量高速實(shí)時(shí)數(shù)據(jù)存儲(chǔ)方案

      2010-09-30 02:57:26李明磊潘文亮
      海洋技術(shù)學(xué)報(bào) 2010年2期
      關(guān)鍵詞:存儲(chǔ)空間大容量緩沖器

      李明磊,潘文亮

      (中國(guó)科學(xué)院南海海洋研究所,廣東廣州510301)

      基于SPI接口和FIFO緩沖器的大容量高速實(shí)時(shí)數(shù)據(jù)存儲(chǔ)方案

      李明磊,潘文亮

      (中國(guó)科學(xué)院南海海洋研究所,廣東廣州510301)

      以海洋湍流觀測(cè)樣機(jī)中的數(shù)據(jù)存儲(chǔ)接口電路為例,介紹一種基于C8051單片機(jī)的SPI(串行外設(shè)接口)、FIFO(先入先出)緩沖器IDT72v01和閃存M25P64的大容量高速實(shí)時(shí)數(shù)據(jù)存儲(chǔ)方案。該方案具有簡(jiǎn)易實(shí)用、運(yùn)行穩(wěn)定、低功耗、易擴(kuò)展的特點(diǎn),已成功應(yīng)用于已開發(fā)的湍流監(jiān)測(cè)儀器樣機(jī)。

      大容量存儲(chǔ);高速;SPI;FIFO

      引言

      現(xiàn)代海洋儀器工作過程中,由于長(zhǎng)時(shí)間以及高速數(shù)據(jù)采集的工作配置,對(duì)存儲(chǔ)器容量、存取速度以及穩(wěn)定性都有了更高的要求。如果是以電池供電的自容式系統(tǒng),還常常需要降低系統(tǒng)功耗,延長(zhǎng)電池續(xù)航時(shí)間。隨著硬件技術(shù)的發(fā)展,出現(xiàn)了文件格式為FAT16或FAT32的微型移動(dòng)硬盤,CF卡、SD卡、TF卡等大容量微型存儲(chǔ)設(shè)備,嵌入式單片機(jī)技術(shù)也為這些設(shè)備的應(yīng)用提供了良好的硬件支持。但是這些設(shè)備要求的功耗相對(duì)比較大,適合于電池艙容量大或其他供電方式的儀器,并且電路、程序設(shè)計(jì)比較復(fù)雜,寫入速率低,僅適用采樣率比較低的海洋儀器。本文提出一種基于C8051單片機(jī)的SPI接口、FIFO緩沖器IDT72v01和大容量閃存M25P64的低功耗、大容量高速實(shí)時(shí)數(shù)據(jù)存儲(chǔ)方案。

      1 系統(tǒng)硬件結(jié)構(gòu)

      系統(tǒng)結(jié)構(gòu)圖如圖1所示,存儲(chǔ)部分硬件由FIFO芯片、大容量閃存M25P64和微處理器組成。FIFO緩存輸入端為A/D轉(zhuǎn)換模塊,它負(fù)責(zé)把A/D轉(zhuǎn)換后的數(shù)據(jù)寫入緩存。實(shí)際應(yīng)用中,這部分可根據(jù)需要(轉(zhuǎn)換精度,速率等)變更,本文不做詳細(xì)介紹。在本方案中,考慮到Flash芯片的性能,充分利用M25P64的頁(yè)編程(一次寫入256 byte數(shù)據(jù))特性,選用存儲(chǔ)空間為512*9 bit的FIFO芯片IDT72v01。數(shù)據(jù)轉(zhuǎn)換點(diǎn)按時(shí)間順序?qū)懭隖IFO,達(dá)到一定容量后以塊形式讀出。這有別于一般應(yīng)用中,通常通過485/232總線把數(shù)據(jù)發(fā)送到MCU再轉(zhuǎn)存。MCU頻繁進(jìn)入串口中斷,造成CPU使用效率低下。當(dāng)采樣率調(diào)高的時(shí)候,存儲(chǔ)容易出錯(cuò)。系統(tǒng)工作過程為:系統(tǒng)啟動(dòng)后,首先對(duì)硬件初始化,然后啟動(dòng)數(shù)據(jù)采集系統(tǒng)把數(shù)據(jù)存到IDT72v01,當(dāng)數(shù)據(jù)占據(jù)IDT72V01一半空間的時(shí)候,IDT72v01發(fā)出信號(hào)給單片機(jī),單片機(jī)把數(shù)據(jù)取出,通過SPI接口,存儲(chǔ)到閃存M25P64中。

      圖1 系統(tǒng)結(jié)構(gòu)圖

      1.1 海量存儲(chǔ)器M25P64的特性及硬件連接

      M25P64是意法ST公司生產(chǎn)的低功耗、用于嵌入式系統(tǒng)的大容量串行Flash存儲(chǔ)器。M25P64的存儲(chǔ)空間為64 Mbit,由32768個(gè)頁(yè)面組成,每個(gè)頁(yè)面為256字節(jié)。芯片支持頁(yè)編程(256 Bytes);支持扇區(qū)擦除(512 Kbit)和塊擦除(64 Mbit)。最高時(shí)鐘頻率50 MHz;可循環(huán)使用100 000次;保存數(shù)據(jù)年限超過20 a。功耗方面:2.7~3.6 V的工作電壓;15 mA典型編程/擦除電流;4 mA典型讀電流(20 mHz時(shí)鐘頻率);50 μA典型Standby電流。它具有超薄雙面封裝VDFPN8和貼片SO16兩種封裝。芯片引腳及說明見表1。工作方式上,芯片工作于3/4線串行總線方式,與同系列的芯片復(fù)用串行總線,可擴(kuò)展更大容量的存儲(chǔ)空間,芯片的讀寫電路接口見圖2所示。

      在本方案中,C8051F040片上集成SPI控制器,它的I/O口P0.2可復(fù)用為時(shí)鐘輸出連接到M25P64的時(shí)鐘輸入,P0.3復(fù)用為MISO(主控制器輸入)連接到M25P64的數(shù)據(jù)輸出,P0.4復(fù)用為MOSI(主控制器輸出)連接到M25P64的輸入端。然后使用其他I/O口控制M25P64的片選和通信狀態(tài)--為高阻態(tài)或正常工作狀態(tài)。筆者在實(shí)際設(shè)計(jì)中采用了一片C8051F040控制3片M25P64,總?cè)萘繑U(kuò)展到192 Mb。為簡(jiǎn)化起見,圖3給出與兩片M25P64之間的接口電路圖。

      表1 M25P64芯片引腳及說明

      圖2 M25P64與SPI總線控制器的接口電路圖

      圖3 C8051F040和M25P64接口電路圖

      1.2 FIFO芯片IDT72V01的硬件接口

      FIFO(First In First Out)簡(jiǎn)單說就是指先進(jìn)先出。作為一種新型大規(guī)模集成電路,F(xiàn)IFO芯片以其靈活、方便、高效的特性,逐漸在高速數(shù)據(jù)采集、高速數(shù)據(jù)處理、高速數(shù)據(jù)傳輸以及多機(jī)處理系統(tǒng)中得到越來越廣泛的應(yīng)用。IDT72v01是一種高速、低功耗、雙端口存儲(chǔ)器,它內(nèi)部存儲(chǔ)空間為512*9 bit。采用9 bit的數(shù)據(jù)格式,第9位為數(shù)據(jù)奇偶校驗(yàn)位,在數(shù)據(jù)通信的時(shí)候可以起到抗干擾的作用。芯片容量為l K×9 b,輸入/輸出端口由單獨(dú)的時(shí)鐘和使能信號(hào)控制,具有“空”、“滿”、“半滿”和“幾乎空、幾乎滿”標(biāo)志。IDT72v01的9位輸入/輸出端口由單獨(dú)的時(shí)鐘和使能信號(hào)控制。輸入端口由寫使能信號(hào)(W)控制,當(dāng)寫使能W為低時(shí),數(shù)據(jù)被連續(xù)寫入FIFO存儲(chǔ)器中。同樣,輸出端口由讀使能信號(hào)(R)控制。IDT72v01還有一個(gè)復(fù)位端(/RS),當(dāng)/RS為低時(shí),IDT72v01的各個(gè)標(biāo)志位全部回到原始狀態(tài)。

      圖4 C8051F040與IDT72v01硬件連接圖

      在本方案,把FIFO的“半滿”(/HF)接到單片機(jī)輸入引腳,這樣單片機(jī)可實(shí)時(shí)查詢FIFO緩沖器狀態(tài);把”R”和”RT”接到單片機(jī)輸出引腳,單片機(jī)通過設(shè)置輸出引腳電平時(shí)序?qū)崿F(xiàn)緩沖器讀操作。

      2 系統(tǒng)軟件設(shè)計(jì)

      系統(tǒng)軟件設(shè)計(jì)分為兩部分,AD存儲(chǔ)部分和海量存儲(chǔ)部分。AD存儲(chǔ)部分主要為FIFO寫入端操作流程(見圖5(a)),在“滿”標(biāo)志無效的情況下,A/D轉(zhuǎn)換完成后把數(shù)據(jù)存儲(chǔ)到FIFO緩存即可,相對(duì)比較簡(jiǎn)單。海量存儲(chǔ)部分則比較復(fù)雜,系統(tǒng)上電后,C8051F040對(duì)它集成的SPI控制器(如表2所示)進(jìn)行初始化,使它在電氣特性上與M25P64接口兼容—包括時(shí)鐘頻率、極性、工作方式等。對(duì)于M25P64的操作,實(shí)際應(yīng)用中將一些常用的操作編寫為子程序,在需要時(shí)調(diào)用。根據(jù)圖3接法和表3命令集,編寫扇區(qū)擦除子程序,讀操作子程序和頁(yè)編程操作子程序,限于篇幅,略去。如圖5(b)所示,單片機(jī)實(shí)時(shí)查詢/HF狀態(tài),當(dāng)它為低有效時(shí),把緩存FIFO數(shù)據(jù)讀出,以頁(yè)編程寫入M25P64。

      表2 C8051F040 SPI控制寄存器

      3 結(jié)語

      圖5 程序流程圖

      該方案充分利用單片機(jī)的SPI接口,在極少占用單片機(jī)引腳的情況下,實(shí)現(xiàn)了大容量數(shù)據(jù)存儲(chǔ)器的擴(kuò)展。利用FIFO緩沖器實(shí)現(xiàn)不同時(shí)鐘域傳輸?shù)臄?shù)據(jù)匹配,實(shí)現(xiàn)了高速傳輸,提高了系統(tǒng)性能。由于采用基于C8051單片機(jī)的SPI接口、FIFO緩沖器IDT72v01和大容量閃存M25P6的設(shè)計(jì),本方案可以滿足海洋環(huán)境監(jiān)測(cè)系統(tǒng)對(duì)于大容量高速實(shí)時(shí)數(shù)據(jù)存儲(chǔ)的要求,已成功應(yīng)用于湍流觀測(cè)儀器樣機(jī)。經(jīng)實(shí)驗(yàn)室多次實(shí)驗(yàn),數(shù)據(jù)存儲(chǔ)完整準(zhǔn)確。在容量要求方面,如果需要更大容量的存儲(chǔ)空間,在該系統(tǒng)基礎(chǔ)上略加改進(jìn),增加信號(hào)線,擴(kuò)展更多的M25P64芯片則可使該系統(tǒng)適用于有更大存儲(chǔ)空間要求的系統(tǒng)。

      表3 M25P32命令表

      [1]張培仁.基于C語言C8051F系列微控制器原理與應(yīng)用[M]北京:.清華大學(xué)出版社,2007.

      [2]潘琢金.C8051F040/1/2/3/4/5/6/7混合信號(hào)ISP FLASH微控制器數(shù)據(jù)手冊(cè).新華龍電子有限公司.

      [3]ST Microelectronics.M25P64 Datasheet,2008.

      [4]Integrated Device Technology.IDT72V01 Datasheet,2003.

      Abstract:Taking the data storage in the ocean turbulence surveying prototype for example,a large-capacity high-speed real-time data storage scheme is introduced,which is based on the SPI interface embedded in C8051 MCU,the dual-port FIFO buffer IDT72v01 and the large-capacity flash memory M25P64.This data storage scheme has the characteristics of easy configuration,low power consumption and high reliability.It has been used for ocean turbulence surveying prototype successfully.

      Key words:mass-storage;high-speed;serial peripheral interface;first-in first-out

      Real-time and Large-capability Storage Scheme Based on SPI Interface and FIFO Cache

      LI Ming-lei,PAN Wen-liang

      (South China Sea Institute of Oceanology,CAS,Guangzhou Guangdong 510301,China)

      P71,TP3

      B

      1003-2029(2010)02-0030-03

      2009-12-16

      國(guó)家高技術(shù)研究發(fā)展計(jì)劃(863計(jì)劃)“十一五”資助項(xiàng)目(2007AA09Z104)。

      李明磊(1981-),男,廣西容縣人,博士研究生,主要從事海洋監(jiān)測(cè)技術(shù)研究。

      猜你喜歡
      存儲(chǔ)空間大容量緩沖器
      更正
      輕兵器(2022年3期)2022-03-21 08:37:28
      基于多種群協(xié)同進(jìn)化算法的數(shù)據(jù)并行聚類算法
      重載貨車用緩沖器選型的研究及分析
      鐵道車輛(2021年4期)2021-08-30 02:07:14
      蘋果訂閱捆綁服務(wù)Apple One正式上線
      用好Windows 10保留的存儲(chǔ)空間
      12-20升大容量PET瓶裝式吹瓶機(jī)
      能變出雨衣的18升大容量背包
      基于大容量指紋識(shí)別的實(shí)時(shí)身份認(rèn)證系統(tǒng)
      大容量Flash在井下記錄儀中的應(yīng)用
      面向TIA和緩沖器應(yīng)用的毫微微安偏置電流運(yùn)放可實(shí)現(xiàn)500MHz增益帶寬
      宜丰县| 海原县| 贵德县| 莲花县| 延长县| 纳雍县| 四川省| 东平县| 东山县| 南澳县| 宝兴县| 奉节县| 鲁山县| 黑河市| 丘北县| 炉霍县| 思南县| 阳东县| 江西省| 扎鲁特旗| 加查县| 苏尼特左旗| 永昌县| 朝阳县| 凤冈县| 阿城市| 陆河县| 神木县| 霍邱县| 同心县| 任丘市| 永丰县| 重庆市| 玉树县| 玛多县| 晴隆县| 翁源县| 吉林市| 专栏| 竹北市| 汽车|