|
FM18L08 |
![]() |
FM18L08 的PDF資料下載,82424K |
其他型號 |
FM18L08的供應(yīng)商: |
聯(lián)系人:詹小姐 電話:0755-83797351 |
聯(lián)系人:朱先生/李小姐 電話:0755-83325286/0755-83326422 |
聯(lián)系人:朱先生/周艷麗 電話:0755-83266687/0755-83265028 |
聯(lián)系人:楊先生/楊小姐 電話:0755-82544131/83205505 |
|
>>更多供應(yīng)商 |
鐵電存儲器FM18L08在DSP系統(tǒng)中的應(yīng)用
[關(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),操作速率可達(dá)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)中的擴(kuò)展存儲器內(nèi),裝載成功后自動去執(zhí)行代碼,完成自啟動。
基于實踐經(jīng)驗,本文介紹了一種并行接口鐵電存儲器FM18L08的特點,同時還分析了C5402 并行引導(dǎo)裝載模式的特點,給出了一種基于鐵電存儲器FM18L08和C5402接口的設(shè)計方案, 實現(xiàn)了基于并行引導(dǎo)裝載模式的DSP脫機(jī)獨立運行系統(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(主機(jī)接口)引導(dǎo)裝載模式
欲執(zhí)行的程序代碼通過主機(jī)接口總線由外部處理器加載至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ù)是按照一定格式存儲的,其信息包括:欲加載的各段程序代碼、各段程序代碼長度、各段程序代碼存放的目標(biāo)地址、程序代碼的入口地址以及其他配置信息。
③ 8位/16位標(biāo)準(zhǔn)串行口引導(dǎo)裝載模式
引導(dǎo)裝載程序通過被設(shè)置為標(biāo)準(zhǔn)模式的多通道緩沖串口(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)裝載模式被認(rèn)為是最適用的。因為HPI引導(dǎo)裝載模式、標(biāo)準(zhǔn)串行口引導(dǎo)裝載模式和I/O口引導(dǎo)裝載模式只適用于由其它處理器為C5402提供運行代碼的多處理器系統(tǒng)中,串行EEPROM引導(dǎo)裝載模式只支持價格偏高的SPI端口EEPROM,而并行引導(dǎo)裝載模式可采用的并行EEPROM和Flash種類很多,有的價格比較低,操作起來比較簡單,因而并行引導(dǎo)加載方案是最佳選擇。
為使C5402能有效地把外擴(kuò)FRAM中的程序引導(dǎo)到芯片內(nèi)RAM,需要編制一個引導(dǎo)表。引導(dǎo)表定位于數(shù)據(jù)空間的4000h~FFFFh段,引導(dǎo)表的內(nèi)容包含如下幾個方面:(1)引導(dǎo)方式的標(biāo)識;(2)程序存放的目標(biāo)首地址;(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)標(biāo)志 SWWSR寄存器初值BSCR寄存器初值 程序入口XPC 程序入口地址 程序段長度 程序存放目標(biāo)XPC 程序存放目標(biāo)地址 程序代碼1 程序代碼2 …… 程序代碼N 程序塊結(jié)束標(biāo)志 …… 程序存儲首地址 |
表1并行引導(dǎo)裝載模式引導(dǎo)表
片內(nèi)ROM的引導(dǎo)程序首先讀取I/O空間的FFFFh地址內(nèi)容(指定為8000h)作為引導(dǎo)表的起始地址,通過判別引導(dǎo)表起始地址內(nèi)的引導(dǎo)標(biāo)識來確定是8位并行還是16位并行引導(dǎo)方式。若引導(dǎo)標(biāo)識是10AAh,則是16位的并行引導(dǎo)方式;若引導(dǎo)標(biāo)識是08AAh,則是8位的并行引導(dǎo)方式。當(dāng)從I/O空間FFFFh地址讀取不到有效的引導(dǎo)標(biāo)識時,片內(nèi)ROM的引導(dǎo)程序即讀取數(shù)據(jù)空間FFFFh的內(nèi)容作為引導(dǎo)表的起始地址。同樣通過判別引導(dǎo)表起始地址內(nèi)的引導(dǎo)標(biā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)建的目標(biāo)文件采用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)可以脫機(jī)獨立運行了。
.mmregs
.data
table:.word 08aah ;16位引導(dǎo)標(biāo)志
.word 7fffh,8806h ;SWWSR寄存器初值和BSCR寄存器初值
.word 0000h,080h,00044h ;程序入口XPC、程序入口地址和程序段長度
.word 0000h,080h ;存放目標(biāo)XPC和存放目標(biāo)地址
.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" ;脫機(jī)獨立運行系統(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脫機(jī)獨立運行系統(tǒng)的設(shè)計,并且該方案已成功的應(yīng)用到一種語音門鎖系統(tǒng)中。實驗結(jié)果表明,該方法具有簡化接口電路、節(jié)省系統(tǒng)資源、性價比高的優(yōu)點。
但是,如果脫機(jī)獨立運行系統(tǒng)程序超過了64K字節(jié),只能采用另外的替代方法,這是在一些電路設(shè)計方案論證時需要考慮的問題。
|
|||
|
© 2025 維庫電子市場網(wǎng)(www.udpf.com.cn) 版權(quán)所有 經(jīng)營許可證編號:浙B2-20050339 版權(quán)聲明
二十一年專注打造優(yōu)質(zhì)電子元器件采購網(wǎng)、IC交易平臺。 |