色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 模擬技術 > 設計應用 > 基于SST25VF020的數(shù)據(jù)存儲系統(tǒng)設計

          基于SST25VF020的數(shù)據(jù)存儲系統(tǒng)設計

          作者: 時間:2013-05-21 來源:網(wǎng)絡 收藏
          前言

            近年來,閃速存儲器已應用在數(shù)以千計的產(chǎn)品中,特別是移動通信、MP3音樂播放器、手持PC管理器、數(shù)碼相機、網(wǎng)絡路由器、艙內(nèi)錄音機等工業(yè)產(chǎn)品。閃速存儲器由于具有非易失性和電可編程擦除性,從而具有半導體存儲器的讀取速度快、存儲容量大等優(yōu)點,同時又克服了DRAM及SRAM斷電丟失所存數(shù)據(jù)的缺陷。與EPROM相比較,閃速存儲器的優(yōu)勢在于系統(tǒng)電可擦除和可重復編程,且不需要特殊的高電壓,此外,它還有成本低,密度大的特點。

            閃速存儲器由于各自技術架構(gòu)的不同,又可分為NOR技術、NAND技術、AND技術和由EEPROM派生的閃速存儲器。以EEPROM做閃速存儲陣列的Flash Memory,如SST的小扇區(qū)結(jié)構(gòu)閃速存儲器具有EEPROM與NOR技術Flash Memory二者折中的性能特點:(1)讀寫的靈活性遜于EEPROM,但與NOR技術Flash Memory的塊結(jié)構(gòu)相比,其頁尺寸小,具有快速隨機讀取和快編程、快擦除的特點。(2)與EEPROM比較,具有明顯的成本優(yōu)勢。

            SST25VF系列產(chǎn)品,是業(yè)界第一個完整的串行閃存產(chǎn)品系列,其記憶容量包含512Kbit至16Mbit,且采用產(chǎn)業(yè)標準的8接腳SOIC封裝及超薄型WSON封裝技術。此外,SST最新串行閃存提供最新自動地址增值(AAI)資料寫入模式,與單一字節(jié)資料寫入模式相比,該資料寫入模式能夠?qū)⒄麄€閃存的資料寫入時間減少50%。SST25VF系列是以高效能超快閃技術為基礎,加上四線及串行外圍界面(SPI),相對平行EEPROM等非揮發(fā)性內(nèi)存解決方案而言,SST的串行式閃存產(chǎn)品使用較少的接腳,將資料往返于系統(tǒng)CPU,因此可減少電路板空間、耗能及成本。

            芯片介紹

            芯片引腳介紹

            是SST25VF系列產(chǎn)品中的一員,其芯片具有以下特點:總?cè)萘繛?M;單電源讀和寫操作,工作電壓為2.7-3.3V;低功耗,工作電流為7mA,等待電流為3μA;時鐘頻率高達33MHz,快速編程、快速擦除、快速讀取;小型一致閃區(qū)尺寸4KB;數(shù)據(jù)保存100年;CMOS I/O兼容等。

            狀態(tài)寄存器

            狀態(tài)寄存器用來對芯片的工作模式進行設定,在工作過程中,可以提供芯片的工作狀態(tài),比如讀、寫、寫保護等。

            工作過程

            首先設置狀態(tài)寄存器,對FLASH的工作模式、寫使能以及寫保護區(qū)域進行設定。在讀寫的過程中,還可以通過讀寄存器內(nèi)容來判斷FLASH當前的工作狀態(tài)。設定結(jié)束后,可以開始讀寫操作。

            寫操作

            選用自動地址增值寫入(AAI)模式,這種模式在寫入大量數(shù)據(jù)時可以縮短程序運行時間。在寫操作中,首先寫入寫使能命令字(0x06),AAI模式以AF為寫命令,順序?qū)懭氪鎯ζ鹗嫉刂泛痛鎯?shù)據(jù),每傳送完一字節(jié)的數(shù)據(jù)時,時鐘位置高,為寫下一字節(jié)數(shù)據(jù)做準備。當數(shù)據(jù)全部寫入時,寫終止寫使能命令字(0x04),寫操作結(jié)束。在整個寫過程中,狀態(tài)寄存器中的BUSY位始終為1,寫操作結(jié)束后,BUSY自動復位。

            讀操作

            在讀操作中,首先寫入讀命令字(0x03),然后寫入讀取數(shù)據(jù)的起始地址,數(shù)據(jù)會順序讀出,直至讀完。如果地址累加至7FFFF,下次數(shù)據(jù)讀取會從00000地址開始。在整個讀過程中,狀態(tài)寄存器中的BUSY位始終為1,寫操作結(jié)束后,BUSY自動復位。

            擦除操作

            提供3種芯片擦除方式:扇區(qū)擦除、塊擦除和全擦除。命令字分別為0x20、0x52、0x60,可分別實現(xiàn)不同范圍的擦除。在整個擦除過程中,狀態(tài)寄存器中的BUSY位始終為1,擦除操作結(jié)束后,BUSY自動復位。

            硬件電路

            系統(tǒng)控制器選用MSP430F149單片機,對溫度傳感器信號進行模數(shù)轉(zhuǎn)換后采樣,將采集到的數(shù)據(jù)通過SPI串行通信存儲到FLASH中。當系統(tǒng)通過異步串口和PC機相連時,通過SPI串行通信將儲存到FLASH中的數(shù)據(jù)讀到PC機中,從而對采集的數(shù)據(jù)進行分析、處理。將采集到的數(shù)據(jù)保存后,即可擦除FLASH,為下一次采集做準備。存儲電路連接如圖4所示。通過上拉電阻將CE#、SO端的初始狀態(tài)置為高電平,寫保護端始終為高電平。相應的輸入輸出端、時鐘信號端和使能端分別和單片機接口相連。

            關鍵源程序

            case 0x03: /* 讀數(shù)據(jù) */

            TXBUF1 =0x03; // 發(fā)讀命令字

            while (IFG20x20==0x00); // 發(fā)送完否?

            for(i=0;i《=2;i++) /* 發(fā)送地址 */

            {TXBUF1=addr[i];

            while (IFG20x20==0x00);}//發(fā)送完否?

            for(i=0;i《=19;i++) /* 讀取數(shù)據(jù) */

            { TXBUF1=0X33 ; // 發(fā)送偽數(shù)據(jù)用于產(chǎn)生接收數(shù)據(jù)CLK

            while (IFG20x20==0x00); // 發(fā)送完否?

            while( IFG20x10==0x00) ;

            backdata1[i]=RXBUF1 ;} //存放讀取的數(shù)據(jù)

            delay(2) ;

            P5OUT |=0X01 ; // 拉高 STE1

            delay(200) ;

            break;

            case 0xaf: /* AAI 模式 寫數(shù)據(jù) */

            P5OUT =~0X01 ; // 拉 底 STE1

            delay(2) ;

            TXBUF1 =0X06 ; /* write enable */

            while (IFG20x20==0x00); // 發(fā)送完否?

            delay(2) ;

            P5OUT |=0x01 ; // 拉高 STE1

            delay(12);

            P5OUT =~0x01 ; // 拉底 STE1

            delay(2) ;

            TXBUF1 =0xaf; // 發(fā)寫命令字

            while (IFG20x20==0x00); // 發(fā)送完否?

            for(i=0;i《=2;i++) /* 發(fā)送地址 */

            { TXBUF1=addr[i];

            while (IFG20x20==0x00); }//發(fā)送完否?

            for(i=0;i《=19;i++)

            { TXBUF1=data1[i] ; // 連續(xù)寫20字節(jié)的數(shù)據(jù)

            while (IFG20x20==0x00) ; // 發(fā)送完否?

            if(i==19) break ;

            delay(2) ;

            P5OUT |=0X01 ; // 拉高 STE1

            delay(12) ;

            P5OUT =~0X01 ; // 拉底 STE1

            delay(2) ;

            TXBUF1 =0xaf ;

            while (IFG20x20==0x00); } // 發(fā)送完否?

            delay(2) ;

            P5OUT |=0X01 ; // 拉高 STE1

            delay(12);

            P5OUT =~0X01 ; // 拉底 STE1

            delay(2) ;

            TXBUF1 =0X04 ; // /* 結(jié)束AAI模式*/

            while (IFG20x20==0x00); // 發(fā)送完否?

            delay(2) ;

            P5OUT |=0X01 ; // 拉高 STE1

            break;

            總結(jié)

            S ST串行式閃存因具備低耗能與小型接腳的特色,可作為硬盤、繪圖卡、電子玩具、智能卡、MP3播放器、無線電話、藍牙模塊及GPS模塊等裝置比較理想的存儲解決方案。由于SST串行式閃存的容量從512Kbit至16Mbit不等,因此適用于從低階智能卡至高容量的聲音檔案存儲,如電話錄音機等各類資料存儲 應用裝置。



          評論


          相關推薦

          技術專區(qū)

          關閉