鐵電存儲器FM18L08在DSP系統(tǒng)中的應(yīng)用
出處:yangkui 發(fā)布于:2007-04-18 15:46:58
[關(guān)鍵詞] DSP;鐵電存儲器;并行引導(dǎo)裝載模式
1 引 言
鐵電存儲器(FRAM)是Ramtron公司近年推出的一款掉電不揮發(fā)存儲器,它結(jié)合了高性能和低功耗操作,能在沒有電源的情況下保存數(shù)據(jù)。FRAM克服了EEPROM和FLASH寫入時間長、擦寫次數(shù)低的缺點,其價格又比相同容量的不揮發(fā)鋰電SRAM低很多,已在地鐵系統(tǒng)、抄表系統(tǒng)及IT工業(yè)中得到了廣泛的應(yīng)用。
TMS320VC5402(以下簡稱C5402)是美國德州儀器公司(TI)推出的一款性價比極高的16bit定點數(shù)字信號處理器(DSP),操作速率可達100MIPS,它豐富的內(nèi)部資源配置為用戶構(gòu)造系統(tǒng)提供了很大便利,已經(jīng)在通信、電子、圖象處理等領(lǐng)域得到了廣泛的應(yīng)用。但是,C5402是RAM型器件,掉電后不能保持任何用戶信息,所以需要用戶把程序代碼放在不揮發(fā)的存儲器內(nèi),在系統(tǒng)上電時,通過執(zhí)行自行引導(dǎo)裝載(Bootloader)程序?qū)⒋鎯υ谕獠棵浇橹械拇a裝載到C5402高速的片內(nèi)存儲器或系統(tǒng)中的擴展存儲器內(nèi),裝載成功后自動去執(zhí)行代碼,完成自啟動。
基于實踐經(jīng)驗,本文介紹了一種并行接口鐵電存儲器FM18L08的特點,同時還分析了C5402 并行引導(dǎo)裝載模式的特點,給出了一種基于鐵電存儲器FM18L08和C5402接口的設(shè)計方案, 實現(xiàn)了基于并行引導(dǎo)裝載模式的DSP脫機獨立運行系統(tǒng)設(shè)計,并且該設(shè)計方案已成功的應(yīng)用到一種語音門鎖系統(tǒng)中。
2 FM18L08 FRAM的特點
Ramtron’s FRAM存儲器技術(shù)的是微小的鐵電晶體集成到記憶體單元,以至于它能象快速的不揮發(fā)RAM一樣操作。 當(dāng)一個電場被加到鐵電晶體,中心原子順著電場的方向移動。 移去電場,中心原子保持不動,保存記憶體的狀態(tài), FRAM 記憶體不需要定期刷新,掉電后立即保存數(shù)據(jù)。
FM18L08是Ramtron公司近年推出的一款存儲容量為32k╳8bits FRAM,其主要特點如下:3.0-3.65V單電源供電;并行接口;提供SOIC和DIP兩種封裝;功耗低,靜態(tài)電流小于15uA,讀寫電流小于10mA;非揮發(fā)性,掉電后數(shù)據(jù)能保存10年;讀寫無限次。
FM18L08引腳結(jié)構(gòu)如圖1:
/CE:片選
/WE:寫使能
/OE:輸出使能
A0-A14:地址端
DQ0-DQ7:數(shù)據(jù)端
VDD:電源
VSS:地
3 C5402并行引導(dǎo)裝載模式設(shè)計
3.1 C5402系統(tǒng)的程序引導(dǎo)裝載模式類型:
C5402提供以下幾種引導(dǎo)裝載模式類型:
① HPI(主機接口)引導(dǎo)裝載模式
欲執(zhí)行的程序代碼通過主機接口總線由外部處理器加載至DSP片內(nèi)存儲器中。當(dāng)外部處理器將被加載代碼的起始地址(C5402片內(nèi)地址007FH)的內(nèi)容改變,便開始執(zhí)行引導(dǎo)裝載程序。
② 8位/16位并行引導(dǎo)裝載模式
引導(dǎo)裝載程序通過外部并行接口總線讀取存放在外部數(shù)據(jù)存儲單元中的數(shù)據(jù)。外部數(shù)據(jù)單元中的數(shù)據(jù)是按照一定格式存儲的,其信息包括:欲加載的各段程序代碼、各段程序代碼長度、各段程序代碼存放的目標地址、程序代碼的入口地址以及其他配置信息。
③ 8位/16位標準串行口引導(dǎo)裝載模式
引導(dǎo)裝載程序通過被設(shè)置為標準模式的多通道緩沖串口(McBSP)讀取存放在外部數(shù)據(jù)存儲單元中的數(shù)據(jù)。多通道緩沖串口1(McBSP1)支持8位串行接收方式,多通道緩沖串口0(McBSP0)支持16位串行接收方式。
④ 8位串行EEPROM引導(dǎo)裝載模式
引導(dǎo)裝載程序通過一串聯(lián)的EEPROM讀取存放在外部數(shù)據(jù)存儲單元中的數(shù)據(jù)。在此種方式中,EEPROM與設(shè)置為SPI工作模式的McBSP1相連接。
⑤I/O引導(dǎo)裝載模式
引導(dǎo)裝載程序通過外部并行接口總線地址為00H的I/O口讀取數(shù)據(jù)。該外部并口接口總線使用異步握手協(xié)議(使用C5402的XF和BIO引腳),使數(shù)據(jù)傳輸速度可按外部存儲器設(shè)備的要求執(zhí)行。
3.2 C5402并行引導(dǎo)裝載模式設(shè)計
對于以C5402為的數(shù)字信號處理系統(tǒng)來說,并行引導(dǎo)裝載模式被認為是適用的。因為HPI引導(dǎo)裝載模式、標準串行口引導(dǎo)裝載模式和I/O口引導(dǎo)裝載模式只適用于由其它處理器為C5402提供運行代碼的多處理器系統(tǒng)中,串行EEPROM引導(dǎo)裝載模式只支持價格偏高的SPI端口EEPROM,而并行引導(dǎo)裝載模式可采用的并行EEPROM和Flash種類很多,有的價格比較低,操作起來比較簡單,因而并行引導(dǎo)加載方案是選擇。
為使C5402能有效地把外擴FRAM中的程序引導(dǎo)到芯片內(nèi)RAM,需要編制一個引導(dǎo)表。引導(dǎo)表定位于數(shù)據(jù)空間的4000h~FFFFh段,引導(dǎo)表的內(nèi)容包含如下幾個方面:(1)引導(dǎo)方式的標識;(2)程序存放的目標首地址;(3)程序執(zhí)行的入口址址;(4)用戶程序代碼;(5)用戶程序塊長度。引導(dǎo)表結(jié)構(gòu)如表1所示。
|
數(shù)據(jù)區(qū)地址(H) |
內(nèi)容(H) |
含義 |
|
8000,8001 8002,8003 8004,8005 8006,8007 8008,8009 800A,800B 800C,800D 800E,800F 8010,8011 8012,8013 …… 8030,8053 8054,8055 …… FFFE,FFFF |
08,AA 7F,FF 88,06 00,00 00,80 00,44 00,00 00,80 F6,BD F0,70 …… F4,95 00,00 …… 80,00 |
8位引導(dǎo)標志 SWWSR寄存器初值BSCR寄存器初值 程序入口XPC 程序入口地址 程序段長度 程序存放目標XPC 程序存放目標地址 程序代碼1 程序代碼2 …… 程序代碼N 程序塊結(jié)束標志 …… 程序存儲首地址 |
表1并行引導(dǎo)裝載模式引導(dǎo)表
片內(nèi)ROM的引導(dǎo)程序首先讀取I/O空間的FFFFh地址內(nèi)容(指定為8000h)作為引導(dǎo)表的起始地址,通過判別引導(dǎo)表起始地址內(nèi)的引導(dǎo)標識來確定是8位并行還是16位并行引導(dǎo)方式。若引導(dǎo)標識是10AAh,則是16位的并行引導(dǎo)方式;若引導(dǎo)標識是08AAh,則是8位的并行引導(dǎo)方式。當(dāng)從I/O空間FFFFh地址讀取不到有效的引導(dǎo)標識時,片內(nèi)ROM的引導(dǎo)程序即讀取數(shù)據(jù)空間FFFFh的內(nèi)容作為引導(dǎo)表的起始地址。同樣通過判別引導(dǎo)表起始地址內(nèi)的引導(dǎo)標識來確定是8位并行還是16位并行引導(dǎo)方式。當(dāng)EPROM數(shù)據(jù)位寬是8bit時,則要讀取數(shù)據(jù)空間FFFFh地址的內(nèi)容(低字節(jié))和FFFEh地址的內(nèi)容(高字節(jié))作為引導(dǎo)表的起始地址。
8bit 并行引導(dǎo)裝載的實現(xiàn)電路如圖1所示。其中A15經(jīng)過非門與/MSTRB相或是為了防止C5402的內(nèi)部16K DARAM(0000H-3FFFH)與外部FRAM沖突,同時,對應(yīng)上并行引導(dǎo)裝載模式的引導(dǎo)表設(shè)置相對應(yīng)。

圖1 硬件系統(tǒng)原理圖
4系統(tǒng)軟件設(shè)計
這個系統(tǒng)中,軟件編程的在于按照特定的格式將數(shù)據(jù)寫到FM18L08 FRAM中,下面具體介紹軟件系統(tǒng)的設(shè)計方法。
在TI公司的軟件開發(fā)工具CCS(Code Composer Studio)中,匯編器和連接器創(chuàng)建的目標文件采用COFF(Common Object File Format)格式,代碼和數(shù)據(jù)都按段(Section)來組織設(shè)計。先通過CCS將程序到硬件系統(tǒng)的C5402的片內(nèi)DARAM中,再運行程序?qū)⑺钄?shù)據(jù)及程序按照表1的格式寫到FM18L08 FRAM(對應(yīng)于DSP數(shù)據(jù)尋址的08000h—0FFFFh)中,斷開硬件系統(tǒng)與CCS環(huán)境的聯(lián)系,重新上電或復(fù)位C5402,將看到燈在閃爍,此時硬件系統(tǒng)已經(jīng)可以脫機獨立運行了。
.mmregs
.data
table:.word 08aah ;16位引導(dǎo)標志
.word 7fffh,8806h ;SWWSR寄存器初值和BSCR寄存器初值
.word 0000h,080h,00044h ;程序入口XPC、程序入口地址和程序段長度
.word 0000h,080h ;存放目標XPC和存放目標地址
.global main
.text
main:
stm #07fh,sp
stm #0fffeh,ar1 ;向FRAM的07FFEh單元寫入80h
st #080h,*ar1+
nop
st #00h,*ar1 ;向FRAM的07FFFh單元寫入00h
nop
stm #table,ar1 ;向FRAM的0000h開始單元依次寫入引導(dǎo)表要求的內(nèi)容
stm #07h,brc
stm #8000h,ar2
rptb loopa
ld *ar1+,a
nop
stl a,*ar2+
ld a,-8,a
stl a,*ar2+
loopa: nop
nop
stm #start,ar1 ;向FRAM中寫入運行程序代碼
stm #21h,brc
nop
ld *ar1+,a
stl a,*ar2+
ld a,-8,a
stl a,*ar2+
loopb: nop
nop
ld #00h,a
nop
stl a,*ar2+
stl a,*ar2
b $
.sect "chengxu" ;脫機獨立運行系統(tǒng)程序
start: rsbx xf ;燈亮
……
ssbx xf ;燈滅
……
b start
ret
.end
主程序中,data段為上電引導(dǎo)程序提供了需要加載的各代碼段的長度、源地址和目的地址這幾個參數(shù)。其中,代碼段長度既可以根據(jù)載入DSP系統(tǒng)后在CCS反匯編窗口算得,也可以從連接生成的映像文件(后綴為.map)中得到。
5 結(jié)束語
本文介紹的基于鐵電存儲器FM18L08的DSP 并行引導(dǎo)裝載方案,可以在無需專用燒寫器的情況下,實現(xiàn)DSP脫機獨立運行系統(tǒng)的設(shè)計,并且該方案已成功的應(yīng)用到一種語音門鎖系統(tǒng)中。實驗結(jié)果表明,該方法具有簡化接口電路、節(jié)省系統(tǒng)資源、性價比高的優(yōu)點。
但是,如果脫機獨立運行系統(tǒng)程序超過了64K字節(jié),只能采用另外的替代方法,這是在一些電路設(shè)計方案論證時需要考慮的問題。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 什么是氫氧燃料電池,氫氧燃料電池的知識介紹2025/8/29 16:58:56
- SQL核心知識點總結(jié)2025/8/11 16:51:36
- 等電位端子箱是什么_等電位端子箱的作用2025/8/1 11:36:41
- 基于PID控制和重復(fù)控制的復(fù)合控制策略2025/7/29 16:58:24
- 什么是樹莓派?一文快速了解樹莓派基礎(chǔ)知識2025/6/18 16:30:52









