SST28SF040與高速數(shù)字處理器的接口設(shè)計(jì)及編程技巧
出處:computer00 發(fā)布于:2007-04-29 02:37:54
SST28SF040與高速數(shù)字處理器的接口設(shè)計(jì)及編程技巧
武漢高壓研究所華電公司 張蓬鶴
湖南大學(xué)電氣與信息工程學(xué)院 邵 霞
DSP具有先進(jìn)的并行處理結(jié)構(gòu),特別適合于信號(hào)處理,已經(jīng)越來越多的應(yīng)用于工業(yè)控制領(lǐng)域和各類儀器儀表的開發(fā)設(shè)計(jì)。TMS320F206是TI公司生產(chǎn)的16位定點(diǎn)DSP,它有1條程序總線和3條數(shù)據(jù)總線,采用了改進(jìn)的哈佛結(jié)構(gòu),內(nèi)含高度并行的32位算術(shù)邏輯單元、16 16位并行硬件乘法器、片內(nèi)存儲(chǔ)器、片內(nèi)外設(shè),并配備了高度化的指令集,而且功耗相當(dāng)?shù)?,特別適合于信號(hào)處理。由于閃存能在不脫離系統(tǒng)的情況下修改其存儲(chǔ)單元中的內(nèi)容,且斷電后仍能保持存儲(chǔ)的片內(nèi)信息,故在DSP處理器中的應(yīng)用愈來愈廣泛。本文即結(jié)合DSP處理器的特點(diǎn),詳細(xì)介紹SST公司的SuperFlashEEPROM的硬件電路設(shè)計(jì)方法及編程技巧。
SST28SF040是SST公司(Silicon Storage Technology)推出的高速可編程閃存。它具有512K 8的存儲(chǔ)結(jié)構(gòu);芯片擦除及寫入的時(shí)間快,整片擦除只需20秒,段擦除只需2毫秒,字編程寫入時(shí)間僅為35微秒;可靠性高,能夠重復(fù)寫100,000次,數(shù)據(jù)可以保存100年不丟失;低功耗,在激活狀態(tài)下僅需15mA的電流(5V工作電壓),備用狀態(tài)時(shí)僅需5uA的電流;具有32腳的PLCC/TSOP封裝和PDIP封裝SOI封裝,在多功能的精密測試儀中具有廣闊的前途。
引腳及功能
引腳分配情況如圖1所示
引腳功能
(1)A18-A8:行地址輸入引腳。行地址決定每個(gè)段的地址。
(2)A7-A0:列地址輸入引腳。用列地址來選擇在每個(gè)段內(nèi)的具體地址。
(3)DQ7-DQ0:數(shù)據(jù)輸入/輸出引腳。
(4)CE:使能信號(hào)輸入端,低電平有效。
(5)OE:輸出使能信號(hào),低電平有效。
(6)WE:寫使能信號(hào),控制芯片的寫入。
(7)VDD:工作電源,接5V。
(8)VSS:工作地。
操作命令序列概要介紹
SST28SF040操作指令序列的具體情況如表1所示
在表1中,PA為要寫入數(shù)據(jù)信息的存儲(chǔ)器地址,PD為要在地址PA處寫入的數(shù)據(jù)信息。
操作命令及時(shí)序詳解
字節(jié)編程命令
編程命令要以一個(gè)建立命令來開始,一旦建立命令被執(zhí)行,則在下一個(gè)WE信號(hào)脈沖到來時(shí),就執(zhí)行編程命令,該命令僅占用2個(gè)總線操作周期。采用WE信號(hào)控制的編程命令的時(shí)序圖如圖2所示。
復(fù)位命令
復(fù)位命令使存儲(chǔ)器復(fù)位,且進(jìn)入讀數(shù)據(jù)狀態(tài)。向任何一個(gè)的地址寫入FFH就能使存儲(chǔ)器復(fù)位,該命令占有1個(gè)總線操作周期。
擦除命令
擦除命令包括段擦除命令和整片擦除。段擦除命令將擦除整個(gè)段內(nèi)的所有字節(jié)(一個(gè)段包含256個(gè)字節(jié)),需要用一個(gè)建立命令和一個(gè)執(zhí)行命令來初始化,占有2總線周期的操作。整片擦除命令同段擦除命令基本相似。
讀命令
當(dāng)CE、OE信號(hào)為低電平,WE信號(hào)為高電平時(shí),芯片就進(jìn)入讀狀態(tài),并不需要特定的操作命令代碼,只需給出要讀取的地址,即可迅速讀出該地址的內(nèi)容。
讀ID號(hào)命令
當(dāng)向器件寫控制字90H時(shí),讀地址0000H將輸出廠家編號(hào)“BFH”;讀地址0001H將輸出器件編號(hào)04H。任何一個(gè)有效的命令都將終止這種操作。
應(yīng)用舉例
硬件接口
利用閃存在線可編程的特點(diǎn),筆者在開發(fā)基于DSP的信號(hào)處理板時(shí),在存儲(chǔ)采樣數(shù)據(jù)時(shí)用了一片SST28SF040,并利用這套硬件系統(tǒng)和仿真軟件直接對(duì)SST28SF040進(jìn)行了在線編程,具體的硬件接口電路圖如圖3所示。
在該系統(tǒng)中采用TMS320F206作為中央信號(hào)處理器,用74LS245實(shí)現(xiàn)對(duì)超過64K的存儲(chǔ)器地址空間進(jìn)行選擇。
軟件程序
TMS320F206的用戶可以用匯編語言或C語言進(jìn)行源程序的編寫,而C語言開發(fā)出的系統(tǒng)易于維護(hù),可靠性高,可移植性好,故下面介紹用C語言編寫的SST28SF04的開發(fā)程序。這里僅給出段擦除和字節(jié)編程程序,對(duì)于整片擦除的程序可以參看段擦除程序。
ioportunsigned intport1823; #defineioadr0port1823
ioportunsigned intport1820; #defineioadr1port1820
ioportunsigned intport1822; #defineioadr2port1822
ioportunsigned intport0418; #defineioadr3port0418
ioportunsigned intport041b; #defineioadr4port041b
ioportunsigned intport0419; #defineioadr5port0419
ioportunsigned intport040a; #defineioadr6port040a
ioportunsigned intport041a; #defineioadr7port041a
ioportunsigned intporta000; #defineRegCsporta000
void FlashSDP()/*存儲(chǔ)器軟件數(shù)據(jù)保護(hù)程序*/
{ioadr0=0; ioadr1=0; ioadr2=0;
ioadr3=0; ioadr4=0; ioadr5=0;ioadr6=0;
} /*共需7個(gè)總線操作周期*/
void UnFlashSDP() /*存儲(chǔ)器軟件數(shù)據(jù)不保護(hù)程序*/
{ ioadr0=0; ioadr1=0; ioadr2=0;
ioadr3=0; ioadr4=0; ioadr5=0;ioadr7=0;
} /*共需7個(gè)總線操作周期*/
int EraseFlashSector(int Cs,unsigned int *Adr)
{ int m; /*開始段擦除程序*/
for(m=0;m<3;m++)
{*Adr=0xffff;
UnFlashSDP();
RegCs=Cs; *Adr=0x20; *Adr=0xd0;
}
FlashSDP(); *Adr=0xffff;
} /*段擦除程序結(jié)束*/
int WrFlashByte(int *DataIn,int Cs,int *AdrIn,int Len)
{inti; int b; int *Data,*Adr; /*寫入字節(jié)編程程序開始*/
Data=DataIn;Adr=AdrIn; *Adr=0xffff;
UnFlashSDP(); RegCs=Cs;
for(i=0;i<Len;i++,Adr++,Data++)
{ if(*Data==0xffff)continue;
*Adr=0x1010; *Adr=*Data;
}
FlashSDP();
*(int *)0xffff=0xffff; RegCs=Cs;
}/*寫入字編程程序結(jié)束*/
結(jié)束語
本文詳細(xì)論述了SST28SF040的引腳功能、操作命令和使用方法,這些同樣可以作為單片機(jī)、微處理器及PC機(jī)等其他應(yīng)用系統(tǒng)對(duì)于閃存編程的直接參考。筆者在GKNDC-H型高壓開關(guān)特性精密測量儀中就使用了SST28SF040,并取得了很好的存儲(chǔ)效果。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 什么是氫氧燃料電池,氫氧燃料電池的知識(shí)介紹2025/8/29 16:58:56
- SQL核心知識(shí)點(diǎn)總結(jié)2025/8/11 16:51:36
- 等電位端子箱是什么_等電位端子箱的作用2025/8/1 11:36:41
- 基于PID控制和重復(fù)控制的復(fù)合控制策略2025/7/29 16:58:24
- 什么是樹莓派?一文快速了解樹莓派基礎(chǔ)知識(shí)2025/6/18 16:30:52









